我的函数输出与conv2()输出不同

时间:2014-04-09 22:00:30

标签: matlab image-processing computer-vision mask convolution

以下是我用x方向Sobel模板对图像进行卷积所编写的代码。该函数输入灰度图像以及要与其进行卷积的内核。但是,与我从内置的conv2()函数得到的结果相比,我得到的结果是不同的。这是为什么?我做错了什么?

这是我的功能输出:

enter image description here

这里的conv2()输出:

enter image description here

1 个答案:

答案 0 :(得分:2)

您正在计算相关性。 2D卷积是内核的180度旋转(翻转两个轴)。

h = rot90(h,2);

您不会注意到对称滤波器的差异,如高斯或平均内核,但衍生物将在两个方向上反转。