【MOSSE】对相关与卷积的理解
在数字信号处理中,相关是表征两个信号之间(互相关)或者一个信号相隔一定时间的两点之间(自相关)相互关联的程度。对于机器视觉领域来说就是指两个图像块的互相匹配程度。
相关和卷积不能混为一谈!二者从概念上没有联系!
1.相关
在图像处理中,相关的公式为:,h称为相关核(kernel),对于每个像素来说,
图1 相关过程(注:此图为网上转载)
如图1所示,计算像素点(3,3)的输出值,
2.卷积
在图像处理中,卷积的公式为:,h称为卷积核,对于每个像素来说,
图2 卷积过程(注:此图为网上转载)
步骤:
先将卷积核围绕中心旋转180°,再按上式进行计算。
如图2所示,计算像素点(3,3)的输出值,
3.区别
(1)卷积将kernel旋转了180°。
(2)物理意义:相关可以反应两个信号相似程度,卷积不可以。
(3)卷积满足交换律,,相关不可以。
(4)卷积可以直接通过卷积定理(时域上的卷积等于频域上的点乘)来加速运算,相关不可以。
4.相关滤波跟踪器
相关滤波跟踪器就是通过互相关(cross-correlation)来定位当前帧目标所在位置的。响应图中最大值对应的位置即为当前时刻预测的目标位置。
在时域内计算响应图,运算量巨大,那么如何利用卷积定理将其转换到频域进行计算呢?
用卷积来表示相关就是:
利用卷积定理转换到频域为:
简写为:
其中,,
表示点乘。所以将输入图像和滤波器变换到频域后,进行点乘,然后再变换回时域(也就是图像的空域),就可以得到响应图。
几点重要的解释:
(1)输入的图像是指目标检测区域(MOSSE的检测区域就是目标所在区域),可能是像素值也可能是提取的特征(Hog,CN,DeepFeatures等)。
(2)滤波器(或者叫目标模板)的大小和检测区域的大小一样。因为相同大小的矩阵在频率域才可以点乘计算。
(3)当滤波器在输入图像边缘时可能会超出输入图像的范围,此时则需要进行边缘填充(这就是卷积的边界效应)。然而在实际的相关滤波跟踪算法中,因为代码中直接就写的是频域的计算公式,所以我们不知道是如何填充边界的。常用的有三种填充方法:补零、补边界像素、循环图像,matlab中fft默认的是第三种。
图3 边界填充