gpt4 book ai didi

c++ - 用 OpenCV 反卷积?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:04:57 24 4
gpt4 key购买 nike

有没有办法用 OpenCV 进行反卷积?

这里显示的改进给我留下了深刻的印象

from https://web.archive.org/web/20160402174700/http://www.olympusmicro.com/primer/digitalimaging/deconvolution/images/deconalgorithmsfigure1.jpg

并希望将此功能也添加到我的软件中。

编辑(赏金的附加信息。)

我还没有弄清楚如何实现反卷积。此代码帮助我锐化图像,但我认为反卷积可以做得更好。

void ImageProcessing::sharpen(QImage & img)
{
IplImage* cvimg = createGreyFromQImage( img );
if ( !cvimg ) return;

IplImage* gsimg = cvCloneImage(cvimg );
IplImage* dimg = cvCreateImage( cvGetSize(cvimg), IPL_DEPTH_8U, 1 );
IplImage* outgreen = cvCreateImage( cvGetSize(cvimg), IPL_DEPTH_8U, 3 );
IplImage* zeroChan = cvCreateImage( cvGetSize(cvimg), IPL_DEPTH_8U, 1 );
cvZero(zeroChan);

cv::Mat smat( gsimg, false );
cv::Mat dmat( dimg, false );

cv::GaussianBlur(smat, dmat, cv::Size(0, 0), 3);
cv::addWeighted(smat, 1.5, dmat, -0.5 ,0, dmat);
cvMerge( zeroChan, dimg, zeroChan, NULL, outgreen);

img = IplImage2QImage( outgreen );
cvReleaseImage( &gsimg );
cvReleaseImage( &cvimg );
cvReleaseImage( &dimg );
cvReleaseImage( &outgreen );
cvReleaseImage( &zeroChan );
}

希望得到有用的提示!

最佳答案

当然,您可以使用 OpenCV 编写反卷积代码。但是还没有准备好使用的函数。

要开始,您可以查看 this Example展示了使用 OpenCV 在 Python 中实现 Wiener Deconvolution。

这里是 another Example使用 C,但这是 2012 年的,所以可能已经过时了。

关于c++ - 用 OpenCV 反卷积?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20266825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com