二维矩阵与二维矩阵之间的卷积
·
最近在学习数字图像处理(Digital Image Processing,DIP)这门课,感觉有些吃力。由于在数字信号处理(Digital Singal Processing, DSP)这门课中只学了一维矩阵之间的卷积运算。
一维卷积与相关计算 关系详见下面这篇博客:一维卷积及相关运算
在查阅matlab 函数conv2代码与阅读有关卷积的博客,下面为个人总结部分:
假设我们的卷积核h为kernel矩阵(33):
待处理矩阵f(x,y)为:(55)
h*x的计算过程分为三步:
第一步,需要将卷积核翻转180°,kernel矩阵 也就变成了
第二步,需要将卷积核h的中心对准f(0,0),然后对应元素相乘后相加,没有元素的地方补0。
即公式为:
因此最后的结果中的第一个元素值为**Y11=10+20+10+00+01+02±1*0+(-2)6+(-1)7=-19
第三步每个元素都像这样计算出来就可以得到一个输出矩阵,就是卷积结果
一定要主要conv2中A,B矩阵的顺序!!!
代码块
A=[-1 -2 -1; 0 0 0;1 2 1];
B=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15;16 17 18 19 20; 21 22 23 24 25];
C=conv2(B,A,'same')
C =
-19 -28 -32 -36 -29
-30 -40 -40 -40 -30
-30 -40 -40 -40 -30
-30 -40 -40 -40 -30
49 68 72 76 59
如果需要计算/了解多维的卷积,可看下面链接的博客。
多维卷积
更多推荐
已为社区贡献2条内容
所有评论(0)