两个卷积滤波器的组合

ish*_*ali 4 matlab convolution

什么是一个滤镜矩阵相当于使用参数'full'的imfilter在图像上应用[1 1 1]两次?它仍然是1x3矩阵吗?

Cav*_*vaz 8

卷积是联想的,这意味着(f*g)*h = f*(g*h).而不是

r = conv(conv(x, [1,1,1]), [1,1,1])
Run Code Online (Sandbox Code Playgroud)

您可以预先计算两个过滤器的卷积,然后仅将其应用于每个图像一次:

tmp_filter = conv([1,1,1], [1,1,1]);
...
r1 = conv(x1, tmp_filter)
r2 = conv(x2, tmp_filter)
Run Code Online (Sandbox Code Playgroud)

新过滤器的位置[1 2 3 2 1],但是与原始过滤器的大小不同.