原创 图像匹配-相关系数的计算

2010-11-28 21:45 4803 6 6 分类: 软件与OS

最近做的项目设计到图像匹配的知识,用vc编程后,发现相关系数的计算量很大。一开始模板的大小为51*51,搜索范围12*12,计算点数为900,vc运行时间为7s。经过不断地优化,现在模板的大小为51*51,搜索范围256*256,计算点数4000,vc运行时间大概为1.1s。性能大大提高。


想要提高运行时间可以从两方面着手,即减少运算的点数和充分运用上次搜索的信息,减少不必要的重复计算。具体的优化策略分为三个方面:(1)算法优化;(2)代码优化;(3)搜索策略的选择;


个人目前运用了方法(1)和(3)。


算法的优化主要是利用上次搜索的信息,减少重复计算。


搜索策略有很多,常用的有两种:十字搜索法和爬山法;其实十字搜索法和爬山法都有梯度的思想在里面,即搜索路径往自相关系数大的方向移动。


另外在搜索过程中如何避免局部最优。这也是自己在实验中遇到的一个问题。具体的解决方法是选用单峰性质更好的相关系数计算公式。目前大多数文献中,认为较好的相关系数的计算公式为归一化计算公式


025b9a3e-8904-4b48-bc6b-ba223644a1df.JPG


   用matlab仿真


b28b3476-d0e6-4601-bdf6-1f03c1bea96e.JPG


如果换用公式


7ea0093c-eb77-46e1-9fad-f7db32fe1ae0.JPG


用matlab仿真


1823be28-8274-4973-a333-efeb01d6e3ae.JPG


从上面相关系数的分布图看出,显然用第二种相关系数的定义方法,具体表现在:单峰区域的峰值更加尖锐,相关系数小于0.4的可以直接认为不在寻找的区域内,这样可以很好的避免局部最优结果的出现。另外第二个相关系数的计算公式只是把开根号变成平方,在数学可能没有什么区别,但对于计算机运行速度而言,计算平方的计算开根号要快得多。


相关系数的良好分布十分有利于搜索策略的选择,能够满足计算的结果速度和精度的要求。


 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条