什么是卷积?什么是相关?什么是中值滤波?
看下例子吧。
有如下输入
模板为
这怎样计算卷积呢?
首先将模板旋转180度如下:
然后将上图这个3*3的矩阵与输入的矩阵的左上角
对齐,然后对应元素相乘再相加,如下:
得1
然后将模板,向右移动一个单位与
对齐,然后对应元素相乘再相加,如下:
得2;
然后将模板,再向右移动一个单位与
再对应元素相乘再相加得:
3
模板到头了,将模板放到下一行的最左边与
对齐,再计算得:4
如此往复得到卷积后的结果:
输出的与输入的阶数不同,那输出阶数怎么计算呢?
w为输入阶数,f为模板阶数,p为补0的层数(后面会讲到,不要急),s为移动的步长,那么输出的阶数为:
上例子为,输入为5*5的矩阵,阶数为5,模板为
3*3的矩阵,阶数为3,补0层数为0,s为1,那么输出为(5-3+0*2)/1 + 1 = 3
是3*3的矩阵。
为了输出与输入的阶数相同,通常会在卷积前做padding(看题目要求);
在输入矩阵上下左右均补0,
f为输入的卷积核的阶数
补0的层数为
那么此时的补0层数为(3-1)/2 = 1层
得到:
先把上下左右添上一层0,再把空出来的角添上0.
然后再做卷积
得到
此时的输出阶数,自己用这个公式算吧
(5-3+1*2)/1 + 1 =5
那么移动步数是什么呢?
看图吧:
如果输入为5*5矩阵,模板为3*3,不做padding
步长为1,怎么移动呢?
步长为2的自己画图就可以了。
那么相关怎么算呢?
就不用旋转180度就可以了。
中值滤波怎么算呢?
看下面的链接就可以了。
https://m.baidu.com/sf_edu_wenku/view/106d989750e2524de5187ec5
欢迎关注微信公众号 code随笔