基于相关运算的图像匹配技术可以直接用于在一幅图像中寻找某个子图,并确定子图的位置。对于大小为 M × N 的图像 f ( x , y )和大小为 J × K 的子图模板 w ( x , y ), f ( x , y )与 w ( x , y )的相关运算可以表示为:
其中, x =1,2,…, N - K +1, y =1,2,…, M - J +1。子图模板 w ( x , y )的原点设置在子图像的左上角。
计算相关 c ( x , y )的过程就是在图像 f ( x , y )中逐点地移动子图像 w ( x , y ),使 w ( x , y )的原点和图像 f ( x , y )中点( x , y )重合,然后计算 w ( x , y )与 f ( x , y )中被 w ( x , y )覆盖的图像区域对应像素的乘积之和,以此计算结果作为相关图像 c ( x , y )在点( x , y )处的响应。
相关可用于在图像 f ( x , y )中找到与子图像 w ( x , y )匹配的所有位置。实际上,当 w ( x , y )按照上述描述的过程移过整幅图像 f ( x , y )之后,最大的响应点( x 0 , y 0 )即为最佳匹配的左上角点。也可以设定一个阈值 T ,认为响应值大于该阈值点的均是可能匹配的位置。
相关的计算是通过将图像元素和子模式图像元素联系起来获得的,将相关元素相乘后再累加。完全可以将子图像 w ( x , y )视为一个按行或按列存储的向量 ,将计算过程中被 w ( x , y )覆盖的图像区域视为另一个按照同样方式存储的向量 。这样一来,相关运算就成了向量之间的点积运算。
两个向量的点积为:
其中, θ 为向量 之间的夹角。显然,当 和 具有完全相同的方向(平行)时,cos θ =1,从而式(1.2.1)取得其最大值 ,这就意味着当图像的局部区域类似于子图像模式时,相关运算产生最大的响应。然而,式(1.2.1)最终的取值还与 自身的模有关,这将导致式(1.2.1)计算的相关响应存在着对 f ( x , y )和 w ( x , y )的灰度幅值比较敏感的缺陷。这样一来,在 f ( x , y )的高灰度区,可能其内容与子图像 w ( x , y )的内容并不相近,但由于 自身较大而产生一个很高的响应。可通过对向量以其模值来归一化解决这个问题,即通过式(1.2.2)来计算。
【例1.2.1】 实现基于向量相关的图像匹配。