基于对数极坐标的图像匹配综述

2020-03-15 10:15冉洪成
现代计算机 2020年4期
关键词:极坐标笛卡尔对数

冉洪成

(四川大学计算机学院,成都 610065)

0 引言

在计算机视觉中,图像匹配的研究是一个非常重要和基础的方面。图像匹配就是将不同时间、不同传感器(成像设备)或不同条件下(天候、照度、摄像位置和角度等)获取的两幅或多幅图像进行匹配、叠加的过程[1]。图像匹配在目标检测、模型重建、运动估计、特征匹配,肿瘤检测、病变定位、血管造影、地质勘探、航空侦察等领域都有着重要的意义,广泛的应用于交通、医学、服务等各个行业。例如,通过图像匹配可以观察医学图像中,病灶随时间呈现出来的不同形态,帮助医生掌握病情变化;通过多张图片的共同点匹配也可以实现三维模型重建;图像匹配也可以通过找到图像之间的相同点或者变换关系,在航空领域中,图像匹配也可以帮助高空精准定位。

尽管在有些应用上图像匹配算法[2-5]已经比较成熟,但是由于视点变化、光照差异、背景复杂等不可预估的因素,目前的匹配算法还没有一个通用的解决方案。所以,如何获得一个鲁棒、高精度、高效、适用于复杂场景的图像匹配算法仍然是目前的研究方向。

1 匹配原理

在计算机系统中,图像可以看成是一个二维矩阵f(x,y),每个坐标对(x,y)表示图像所对应的灰度值。因此,图像可以表示为:

如果用I1表示原图像,I2表示待匹配的图像,则图像匹配具体可以表示为:

其中,g表示一维的灰度变换函数。f代表二维的几何变换函数,即原始图像和待匹配图像的变换关系。

匹配的主要目的是找到I1和I2的变换关系g和f(g表示灰度变换关系,f表示空间变换关系)。而且有些情况下灰度变换关系的求解并不是必需的,所以寻找空间几何变换关系就成了配准的关键,于是式(2)可以改写为:

2 笛卡尔坐标系

现阶段图像匹配主要在笛卡尔坐标系进行,例如边缘检测中的Robert算子、Prewitt算子、Sobel算子、LOG算子和Canny算子等;基于特征点的Harris角点检测、SIFT特征提取算子等。

笛卡尔坐标平面表示如下:

笛卡尔坐标平面示意图如图1。

图1 笛卡尔坐标系

3 对数极坐标系

由于存储分辨率和拍摄角度等原因的影响,会使图片产生尺度变化和旋转等问题,让图像在笛卡尔坐标系下匹配变得困难。随着研究的深入,出现了一种基于对数极坐标的匹配方法[8]。该方法将图像放在对数极坐标下进行匹配,使图像的尺度变换和旋转变换转化为对数极坐标下的平移变换,减少了匹配难度,提高了匹配精度,能够较好地处理刚体变换、图像遮挡、亮度变换等问题。

然而在图像匹配的过程中,往往会遇到放缩和旋转变化。与笛卡尔坐标系相比,对数极坐标在处理这类变换具有较好的优势。

对数极坐标平面表示如下:

对数极坐标平面示意图如图2。

图2 对数极坐标系

图像f(x,y)到g(ρ,θ)的对数极坐标变换为:

ρ表示对数极坐标的极径,θ表示角度,(x0,y0)表示笛卡尔坐标系的变换中心,(x,y)表示笛卡尔坐标系像素点。对数极坐标系中图像分辨率为:δρ×δθ。

旋转不变性和尺度不变性是图像在对数极坐标中的两个重要性质。图像在笛卡尔坐标系下的旋转变化会转换为对数极坐标系下沿角度方向的平移变化;同样,图像在笛卡尔坐标系下的尺度变化会转换为对数极坐标下沿极径方向的平移变化。

例如:当图像旋转θ0弧度时,则有:

其中,旋转前对数极坐标系中的角度轴为θ,旋转后所对应的角度轴为θ',因此具有旋转不变性。当目标图像放大k倍尺度时,则有:

其中,尺度变换前对数极坐标系中的距离轴为ρ,尺度变换后所对应的距离轴为ρ',因此对数极坐标具有尺度不变性。

这一变化大大减少了计算复杂度,加大了算法效率。

4 Fourier-Mellin变换图像匹配算法

Fourier-Mellin变换(Fourier-Mellin Transform,FMT)[6]的基础是相位相关匹配算法,它利用对数极坐标旋转不变和尺度不变两大特性,对原本只适用于平移变换匹配的相位相关算法加以改造,使其在旋转和尺度变换条件下也能使用。

FMT算法不仅可以匹配存在平移的图像,也能对存在旋转和尺度变换的图像实现匹配。FMT是由经典的二维离散傅立叶变换加上梅林变换组合而成,梅林变换是它的核心部分,而梅林变换实质是一种对数极坐标变换。基于对对数极坐标变换的分析可得出,FMT匹配算法有如下特点:(1)算法适应性好,能够匹配旋转、尺度、平移等多种变换;(2)由于对数极坐标采样集中于中心区域,边缘采样较少,所以该算法计算量小,匹配速度快。

下面介绍该算法的主要原理

设f1(x,y)和f2(x,y)是两幅待匹配的图像,两幅图像的平移变量为(x0,y0),则:

f1(x,y)和f2(x,y)的傅里叶变换,F2(u,v)满足下列条件:

从公式可以看出,夫图像的傅里叶变换相同,但是相位不同,相位关系是由平移量决定的。

如果两幅图只有平移变换,则:

对上面的式子做反傅里叶变换,得到冲击函数,冲击函数除平移位置外的值都为零,由此可以得到平移量。

假设f1(x,y)和f2(x,y)是两幅待匹配的图像,两幅图像的平移变量为(x0,y0),旋转角度为θ,尺度变换为k,则:

上述傅里叶变换为:

当k=1时,f1(x,y)和f2(x,y)只存在平移和旋转变换。两幅图的的频谱幅度一样,通过对其中一个进行旋转,找到最佳匹配点,即可确定旋转角度。

当k≠1时,对式子(15)做对数极坐标变换可以得到:

其中,ω=logθ,φ=logk,由此得到旋转角度θ和尺度因子k,对图像进行矫正,达到匹配目的。

5 基于对数极坐标变换的特征匹配算法[7]

该算法主要是在SUSAN[8]算子的基础上,使用对数极坐标变换实现特征点匹配,并结合亚像素定位技术,提高算法精度。该算法具有精度高,运算量小,算法速度快、抗噪声能力强等特点。

下面介绍算法主要原理。

SUSAN算法选用的模板为圆形模板,将位于圆形模板中心里等待检测的像素点称为核心点。核心点的相邻域被划分为两个:一个是亮度值相似于核心点亮度的区域,称为核值相似区(Univalue SegmentAs-similatingNueleus,USAN)[8];另一个是亮度值不相似于核心点亮度的区域,即非相似区。

如图3所示,这几种情况为USAN的典型区域。圆形模板在图像上移动,当模板完全在背景中或者目标区域时,其USAN区域最大,如(a);当核心在边缘时,USAN区域减少一半,如(c);当核心在角点时,USAN区域最小,如(d)。基于这一原理,Smith提出了最小核值相似区角点检测算法。

图3 典型区域

该算法主要分为特征角点提取、对数极坐标变换和特征匹配三部分。特征角点采用的是SUSAN算法。SUSAN算法主要包括以下几个步骤。

(1)在图像上放置一个37个像素的圆形模板,模板在图像上滑动,依次比较模板内各个像素点的灰度与模板核的灰度,判断是否属于USAN区域。判别函数如下:

(2)统计圆形模板中和核心点有相似亮度值的像素个数n(r0)。

(3)使用如下角点响应函数。若某个像素点的USAN值小于某一特定阈值,则该点被认为是初始角点,其中g可以设定为USAN的最大面积的一半。

(4)对初始的角点区域进行非极值抑制来求得最后的角点。

对数极坐标变换和前文方法相同,不再赘述。

特征匹配主要分为以下几个步骤:

(1)对原始图中的每个以特征点为中心的圆形区域进行对数极坐标变换,得到模板图T1( )i1,j1。

(2)在待匹配图中的每个特征点取相同大小的区域,也对其作对数极坐标变换,记为T2( )i2,j2,然后与T1( )

i1,j1做归一化运算。找到相关系数峰值最大的特征点。若峰值大于域值t1,则该点是T1正确的特征匹配点;若其峰值小于域值t2,则认为没有与T1相匹配的特征点。在进行相关运算时,可采用坐标轴投影相关匹配算法,以减少相关运算的计算量。

(3)亚像素定位。对于已经匹配好的特征点,记录其相关峰值最大处的坐标值,采用相关函数拟合极值法,修正坐标系的值。

(4)去除误匹配和假匹配的特征点,统计匹配参数,取匹配参数的平均值作为图像匹配的最终参数。

旋转和尺度变换是匹配问题中的难点,该方法结合SUSAN算子、对数极坐标系的优点,在图像匹配中速度快、精度高,具有良好的表现,是一个较为优秀的匹配算法。

6 结语

经过几十年的发展,图像匹配算法已经取得了很大的进展,但是由于实际环境的复杂多变,采样不稳定,图像混叠现象等因素的影响,还未有一个能够同时解决全部问题的算法。本文主要介绍了图像匹配的原理和基于对数极坐标的算法。从算法的性能来看,基于对数极坐标的匹配方法由于旋转不变和尺度不变两大特性,在针对旋转和尺度变换上具有很强的优势。主要有计算量小、速度快、精度高等优点。但是,上述算法并不能适用仿射性变换的图像,而且由于对数极坐标中心区域进行超采样,边缘区域进行欠采样这一特性,容易产生图像混叠现象,影响匹配结果。所以,针对这几大不足,如何创造出一个全面、系统且健壮的匹配算法,还需继续研究。

猜你喜欢
极坐标笛卡尔对数
笛卡尔的解释
笛卡尔浮沉子
明晰底数间的区别,比较对数式的大小
极坐标系中的奇妙曲线
比较底数不同的两个对数式大小的方法
数学
二重积分的极坐标计算法探讨
活用对数换底公式及推论
神奇的对数换底公式
《极坐标与参数方程》过关测试卷