注:友情提示,在没有矩阵的情况下,数字相乘,其实点乘和×乘一样
后面写式子有时候忘了统一,大家当作一个就行,因为我写完了才看见!!抱歉了
归一化互相关 NCC (normalized cross correlation)
到底啥事NCC一直比较困惑我,之前导师教过我,但是当时我才接触图像,不会复现,不会深入
参考博客:
【图像配准】基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA、SATD算法
【图像配准】基于灰度的模板匹配算法(二):局部灰度值编码
【图像配准】基于互信息的图像配准算法:MI、EMI、ECC算法
【图像配准】基于灰度的模板匹配算法(三):划分强度一致法(PIU)
NCC使用了积分图加速,积分图有很多应用:
图像处理之积分图算法 - CSDN博客
图像处理之积分图应用二(快速边缘保留滤波算法) - CSDN博客
图像处理之积分图应用一(半径无关的快速模糊算法) - CSDN博客
图像处理之积分图应用四(基于局部均值的图像二值化算法) - CSDN博客
图像处理之积分图应用三(基于NCC快速相似度匹配算法) - CSDN博客
NCC是一种基于统计学计算两组样本数据相关性的算法,其取值范围为[-1, 1]之间,而对图像来说,每个像素点都可以看出是RGB数值,这样整幅图像就可以看成是一个样本数据的集合,如果它有一个子集与另外一个样本数据相互匹配则它的ncc值为1,表示相关性很高,如果是-1则表示完全不相关,基于这个原理,实现图像基于模板匹配识别算法。
公式:
当模板与原图找到最佳匹配部分时,NCC值最大,原理类似于:
把上述公式展开
其中均值计算如下:
当a,b越接近时,R值越大,趋近于1
博客写到这里时候,我脑子有点大,md,这不是概率论的知识点吗?马上翻书,哎自己不会学以致用
当然NCC和我们学的相关系数还是有点不一样
注:图像一上传就这样,下载下来看吧大家
至于博客:https://blog.csdn.net/jia20003/article/details/53021614
博客:https://blog.csdn.net/jia20003/article/details/53021614中的公式推导如下:
由于协方差公式:
公式可以变成:
这里我接着找了几个博客:
这里我没有推导出博客:https://blog.csdn.net/jia20003/article/details/53021614的公式
只能继续讲,这个过,因为大多数博客都没有那么写
接下来说一下关于积分图的加速,在公式中:
如果提前建立好了原图像与模板图像的积分图,就可以快速的通过公式
计算出给定的区域,或者点
上图中的1,2,可以通过积分图快速计算 u = 积分图结果 / (m*n) ;
这里我们将原始公式中的分子:
前面乘一个(1/m*n)就能凑成
就直接把前面的拿过来:
5这一块,其实就是模板之间的相关运算
(模板的相关运算和卷积相似,只是不翻转,按位相乘再相加,具体参考博客:图像卷积-图像相关的区别)
NCC的基本运算已经完全写好可,但是为了用积分图加速,写到现在虽然还是有点迷糊,但是大致知道什么情况了,这里我们直接把
博客:https://blog.csdn.net/jia20003/article/details/53021614的公式拿过来
这里我们提前创建两种积分图,P原始积分图,Q平方积分图,然后图像和模板都有,一共四个
3,4的加速是通过创建一个,像素点值的平方和的一个积分图,每个位置的值,是原像素点的值平方 u = Q(积分公式) ;
1,2是通过积分图快速计算 u = P(积分公式) / (m*n) ;
5 模板相关操作(类卷积操作),或者建立像博客中的模板乘积积分图,但是我觉得有点浪费时间,直接模板相关很简单
现在已经理清楚了,就剩分母的推导了
拿出刚开始博客写的公式对比一下:
这里在我冥思苦想的时候,看到方差的定义,才恍然大悟,哎数学忘得差不多了:
同理,分母的第二个也这么推导
才想起来分子那里推导错了,也应该像这么一步一步,告诉大家提出什么,凑出什么,不过看到这里你肯定已经明白了
因此,推导完毕。!!!
算了还是写吧,分子再推(正确的):
擦,心累,一早上,一篇博客,这效率