opencv with cvfilter2d。我变黑了

时间:2012-08-30 10:52:41

标签: c++ c opencv

我正在尝试使用cvfilter2d

复制图像过滤器
    cvmSet(kernel,0,0,5);
    cvmSet(kernel,0,1,5);
    cvmSet(kernel,0,2,5);   
    cvmSet(kernel,1,0,-3);
    cvmSet(kernel,1,1,0);
    cvmSet(kernel,1,2,-3);
    cvmSet(kernel,2,0,-3);
    cvmSet(kernel,2,1,-3);
    cvmSet(kernel,2,2,-3);

然后我批评了这个

cvFilter2D(imgMedia,imgRestitucion , kernel, cvPoint(-1,-1) );

但我的结果是黑色图像......我该怎么办?还有其他选择吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

最后我找到了解决方案。

您所要做的就是使用cvRealScalar数字初始化内核。

for(int y=0;y<9;y++) {
    for(int x=0; x<9; x++) {
        cvSet2D(kernel,x,y,cvRealScalar(-0.00132704 ));
    }
}

然后您可以将图像过滤器应用于ker,当您使用cvFilter2D时,您将无法获得黑色图像。