基于特征点的图像匹配技术研究与应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于特征点的图像匹配技术研究及应用
文献综述
1. 图像匹配的概念
图像匹配[1]是指通过一定的匹配算法在两幅或多幅图像之间识别同名点,如二维图像匹配中通过比较目标区和搜索区中相同大小的窗口的相关系数,取搜索区中相关系数最大所对应的窗口中心点作为同名点。
其实质是在基元相似性的条件下,运用匹配准则的最佳搜索问题。
图像匹配中事先获得的图像称为基准图像(base image ),在匹配过程中在线或者实时获得的图像称为实时图像(real time image )。
基准图像可以比实时图像大也可以比实时图像小。
当基准图像比实时图像大时,匹配过程就是在基准图像中搜寻实时图像位置的过程;当实时图像比基准图像大时,匹配过程就是在实时图像中寻找作为目标的基准图像的过程。
在地图导航系统[2]中,基准图像比实时图像大。
如图1.1所示。
基准图像实时图像待匹配区域dx dy
搜索区域M1N1
N2
M2
图1.1 地图导航系统中的图像匹配示意图
基准图像和实时图像是对同一对象有差别的近似描述,设和分别为基准图像和实时图像的灰度分布,在不考虑关照变换等影响下,两者存在如下关系:
其中是高斯白噪声,可以通过一定的滤波方法滤除。
是上的点在X 和Y 方向上的位置偏差,称为定位噪声。
位置偏差往往是因为图像的几何形变造成的。
实际上利用计算机进行处理的并不是连续图像,图像的位置和灰度都被划分为离散的值,常用像素矩阵来表示一副图像。
在地图匹配导航中,通常基准图像比实时图像大。
直接进行相关匹配的两幅图像应该是大小一样的,为了确定实时图像在基准图像中的位置,就必
须在基准图像中提出与实时图像大小相等的基准子图,并逐个与实时图像进行比较,以便找出与实时图像匹配的那个基本子图,从而确定实时图像在基准图像中的位置。
所以一般图像匹配的过程就是不断从基准图像中提取基准子图与实时图像进行相关运算的过程,这个过程可以是线性遍历式的,也可以是非线性随机的搜索过程。
在本课题中,我们选取左上角为原点作为坐标基准。
如图1.1所示,大方框为基准图像,小方框代表实时图像,虚线方框内事待选的实验匹配位置区域,也就是进行匹配的搜索区域。
如果顺序匹配(即试验所有的搜索区域)的话,易知总共有个试验位置,其中只有一个是我们要找的匹配位置,即实时图像坐标原点在基准图像中的坐标:
,称为匹配点。
2.图像匹配的方法
[3]图像匹配的方法有很多,由已知模式,也就是模板图(如实时图像,到另一幅图像(如基准图)中搜索相匹配的子图像的过程,称为模板匹配。
一般地,图像的模板匹配分为两大类:基于灰度值的方法和基于特征提取的方法。
2.1灰度匹配
灰度匹配的基本思想:以统计的观点将图像看成是二维信号,采用统计相关的方法寻找信号间的相关匹配。
利用两个信号的相关函数,评价它们的相似性以确定同名点。
灰度匹配通过利用某种相似性度量,如相关函数、协方差函数、差平方和、差绝对值和等测度极值,判定两幅图像中的对应关系。
2.1.1 ABS算法
[4]最基本的灰度匹配方法为ABS(Absolute Balance Search)算法,它用模板图像和待匹配图像上的搜索窗口间的像素灰度值的差别来表示两者的相关性。
这个差别值有三种计算方法:
其中MAD为平均绝对误差(Mean of Absolute Differences),SAD为绝对误差和(Sum of Absolute Differences),SSD为平方误差和(Sum of squared Differences),匹配时选择最大值处
的为匹配点。
这种方法简单,但一旦图像灰度值发生线性变换,就无所适从了;而
且不同的基准图像阈值也各不相同,很难事先确定,误匹配率较高。
这种方法只能用于模板图像是基准图像中一部分的情况。
2.1.2 归一化互相关算法
归一化互相关(Normalized Correlation)匹配算法是对ABS算法的改进,其基本原理是逐像素的把一个以一定大小的实时图像窗口的灰度矩阵,与参考图像的所有可能的窗口灰度阵列,计算互相关值,按互相关值的最大值来确定匹配位置,从理论上说就是采用图像相关技术。
这种方法对图像灰度值的线性变换具有“免疫性”,不受灰度值的线性变换的影响。
但这种方法在每一个像素点上都要计算互相关值,计算量太大,实际应用很难,只能作为理论分析。
2.1.3 幅度排序相关算法[2]
其主要思想为:首先把模板图像中德所有灰度值按幅度大小排成列的形式,然后对它进行二进制编码,最后根据二进制排序的结果,把模板图像转化为二进制阵列的一个有序组合;然后顺序地将这些二进制排列与实时图像进行由粗到细的相关计算,直到确定出匹配点位置。
以模板为例,如图2.1所示,对模板中的数值按照二进制大小编码,若为奇数,则中间不编码。
图2.1 幅度排序预处理
由图2.1中的①、②、③三列及其在模板图像中的位置,可以构成如图2.2所示的C1、C2、C3三个二进制阵列。
这样匹配过程中,从左向右可以实现由粗到细的相关匹配。
图2.2 二进制阵列
2.1.3 序列相似性检测算法[5]
序列相似性检测算法(Sequential Similarity Detection Algorithms, SSDA)是一种快速的模板匹配算法,它是1972年Bamea和Silverman首先提出来的。
该算法能很快丢弃不匹配的点,减少花在不匹配点上的计算量,从而提高匹配速度,算法比较简单,易于实现。
SSDA是对公式2.1所示MAD算法的一种优化,MAD在计算时,要顺序地在匹配检测区域内计算有关各个的差别值,然后找出最小值。
而在SSDA中只计算局部匹配值,而
不是每次匹配时都计算出模板图像中全部像素灰度绝对值,这样就可以大大节省计算量。
SSDA计算时:
a.定义绝对误差:
其中为基准图像,为模板图像,
b.取阈值T;
c.在中随机选取像素点,计算它同对应点的误差值,然后把误差求和,
当累积到r次后误差超过固定阈值T,停止累加,记录上次数r,定义SSDA检测曲
面:
d.把值最大的点作为匹配点,因为这点上需要很多次累加才能使总误差超
过T。
图2.3给出了三条不同的误差积累曲线,其中A,B不是匹配点。
图2.3 固定门限T误差积累曲线
2004年米长伟等人改进了SSDA,使门限T变为平行于图2.3中C的自适应值;并且把匹配过程分为粗匹配和精匹配两步,大大简化了计算量[6]。
2009年胡凯等人把改进的SSDA用并行化实现,进一步降低了时间开销[7]。
综上所述,利用灰度信息匹配方法的主要缺陷是计算量大,对各种图像的变换较为敏感(如光照变化、角度旋转等),所以这些方法较少被用于实际。
2.2特征匹配
特征匹配是指通过分别提取两个或多个图像的特征(点、线、面等特征),对特征进行参数描述,然后运用所描述的参数来进行匹配的一种算法[1]。
基于特征的匹配所处理的图像一般包含的特征有颜色特征、纹理特征、形状特征、空间位置特征等。
特征匹配首先对图像进行预处理来提取其高层次的特征,然后建立两幅图像之间特征的匹配对应关系,通常使用的特征基元有点特征、边缘特征和区域特征。
特征匹配需要用到许多诸如矩阵的运算、梯度的求解、还有傅立叶变换和Taylor展开等数学运算。
基于图像特征的匹配方法可以克服利用图像灰度信息进行匹配的缺点,由于图像的特征点比较像素点要少很多,大大减少了匹配过程的计算量;同时,特征点的匹配度量值对位置的变化比较敏感,可以大大提高匹配的精确程度;而且,特征点的提取过程可以减少噪声的影响,对灰度变化,图像形变以及遮挡等都有较好的适应能力。
所以基于图像特征的匹配在实际中的应用越来越广泛。
所使用的特征基元有点特征(明显点,角点,边缘点,高曲率点等),边缘轮廓等。
由于图像的边缘提取比较困难,而且其定位不好界定,故现在特征匹配中使用最多是特征点的匹配。
它有以下优点[8]:
1)图像的特征点比图像的像素点要少很多,从而大大减少了匹配的计算量;
2)特征点的相似度量值对位置变化比较敏感,可以大大提高匹配的精度;
3)特征点的提取过程可以减少噪声的影响,对灰度变化、图像形变以及遮挡等都有较好的适应能力;
4)匹配后的特征点坐标可以直接用来估计图像之间的空间变换关系。
因此,基于特征点的图像匹配方法是实现高精度、快速有效和适用性广的匹配算法比较好的选择
3.基于特征点的图像匹配研究现状
特征点是图像灰度在x和y轴方向上都有很大变化的一类局部点特征。
它包含角点、拐点以及T-交叉点等,其中主要应用的是图像的角点。
角点是图像的一种重要局部特征,他在图像匹配、目标描述与识别以及运动估计、目标跟踪等领域具有十分重要的作用。
它是图像上灰度变换剧烈且和周围的邻点有显著差异的像素点。
如图3.1所示,有L型、T型、X型和Y型等。
图3.1 角点示例
图3.2 Harris角点检测结果
3.1 角点检测
角点检测的算法有很多,对不同类型的角点检测效果也有差异。
目前角点检测算法主要分为两大类:一类是基于边缘图像的角点检测算法,这类算法需要对图像边缘惊醒编码,很大程度上依赖于图像的分割和边缘提取,而图像的分割和边缘提取本身具有相当大的难度和计算量,况且一旦边缘线发生中断,对角点的提取结果影响较大,所以这类算法有一定的局限性;第二类是基于图像灰度的角点检测,避开了上述的缺陷,直接考虑像素点领域的灰度变化,而不是整个目标的角点检测,这类算法主要通过计算曲率及梯度来达到检测监角点的目的。
3.1.1 Moravec角点检测算子[9]
该方法的计算过程为:计算四个方向上的局部自相关,,选取最小值作为对应像素点的角点响应函数,对这个响应取门限,超过门限的为特征点。
设图像灰度函数为I,在一定窗口上的灰度变化函数定义如下:
其中表示当前图像窗口。
Moravec算法响应时各项异性的,而且由于响应值是自相关的最小值,而不是自相关的差值,所以Moravec算法对强边界敏感,实现简单快速。
3.1.2 Harris角点检测算子[10]
Harris使用自相关矩阵A改进了Moravec的方法。
这种方法避免了使用离散的方向和偏移,它在窗口内使用高斯函数加权导数,取代了简单的求和。
如果自相关矩阵A有两个大的特征值就表示该点为检测到的特征点。
图3.3为Harris角点检测的示意图。
在平滑区域窗口沿着各个方向移动均无灰度变化;边缘区域沿着边缘方向移动无灰度变化;角点区域沿着各个方向移动都有灰度变化。
a.平滑区域
b.边缘区域
c.角点
图3.3 角点检测示意图
将图像窗口平移[u,v]产生的灰度变化定义为:
[]2
,),(),(),(),(y x I v y u x I y x w v u E y
x -++=∑ 公式3.2 对图像灰度函数Taylor 展开:),(),(),(22v u O v I u I y x I v y u x I y x +++=++
去掉高阶小量,得:
[]⎥⎥⎦
⎤⎢⎢
⎣⎡=⎥⎦⎤⎢⎣⎡=∑22,),(,,),(y y x y x x y x I I I I I I y x w M v u M v u v u E 公式3.3 对于实对称矩阵M 有两个特征值:λmax ,λmin 。
两个特征值正好对应于),(v u E 变化最明显和最不明显的两个方向。
由角点的定义可知:
a. 两特征值都很小,则对应平滑区域
b. 两特征值都很大且相当,则对应角点位置
c. 两特征值λmax >>λmin ,则对应边缘区域
构造角点响应函数:2
)(det traceM k M R -= 公式3.4
其中21det λλ=M ,21λλ+=traceM ,这样当R 大于某个阈值的时候,则判断为角点。
由于M det 和traceM 对于矩阵M 来说都很容易计算,故简化了计算量。
该方法的缺点是对尺度变化敏感,如图3.4所示,左图检测为边缘,而缩小后的右图则检测为角点
图3.4 尺度变化的敏感性
2010年,Jiguang Dai [18]等把小波变换的方法应用到了Harris 角点检测中,他们在相同的小波系数约束下计算不同尺度的Harris 角点。
根据Low/High 小波系数强调垂直特征,High/Low 小波系数强调水平特征的特点,可以去除Harris 检测中的部分错误点,使特征点匹配率更高了。
3.1.3 SIFT 方法[11]
SIFT(Scale Invariant Feature Transform)算法是Lowe 在2004年总结了现有的基于不变量技术的特征检测方法,并提出的一种基于尺度空间的图像局部特征描述算子,即尺度不变特征变换。
该方法包括基于高斯差分尺度空间的特征点检测和特征点的描述与匹配两部分。
特征点检测分为三步。
第一步:建立高斯差分(Difference of Gaussian, DOG )尺度空间 高斯核函数222()/221
(,,)2x
y G x y e σσπσ-+=,这里(,)x y 是图像平面中的坐标,σ是尺
度参数。
令(,)I x y 表示一张图像,则图像的尺度空间可以表示为:(,,)(,,)(,)L x y G x y I x y σσ=*,即图像与高斯核函数的卷积。
Lowe 总结Lindeberg(1994)和Mikolajczyk(2002)的研究成果,得出22G σ∇中的最大最小点可以提取出尺度空间中最稳定的特征点。
由热传导方程:
2G G σσ
∂=∇∂,利用相邻尺度k σ和σ的差分算子来逼近G σ∂∂,可得到 2(,,)(,,)G G x y k G x y G k σσσσσσ∂-∇=
=∂- 由此可得:
(,,)((,,)(,,))(,) (,,)(,,)
D x y G x y k G x y I x y L x y k L x y σσσσσ=-*=- 22(,,)(,,)(1)G x y k G x y k G σσσ-≈-∇
图3.5描述了高斯差分空间的建立过程。
图3.5 尺度空间图
第二步:极值点检测
为了检测图像高斯差分空间的局部极大值和极小值,每一个采样点与当前图片中8个邻点和上下两个相邻尺度中各9个邻点总共26个像素相比较,如图3.6,极值点是比所有这些
邻点大或者小的点。
图3.6 极值点的选择
第三步:边缘像素剔除
高斯差分函数在图像边缘也会产生很强的响应,因此必须去除图像中检测出的边缘像素点。
Lowe 采用和Harris 相似的方法,在极值点位置计算Hessian 矩阵
⎥⎥⎦
⎤⎢⎢⎣⎡=22y y x y x x I I I I I I D 当两个特征值相当时为特征点,否则为边缘点,详见参考文献[11]。
总之,特征点的检测方法有很多,目前研究也比较成熟。
对特定问题选择合适的特征点检测方法,或者是多种方法组合使用,来达到一定的要求。
3.2 特征点相似性度量与对应
通过特征点检测,可以得到待匹配图像的两个特征点集。
假设两个点集为1P 和2P ,它们的特征点数目分别为1n 和2n ,并且有21n n ≤。
如果不加任何约束,则这连个特征点集中所有可能的对应为21n n ⨯对。
理想情况下,完全匹配上的特征点数目最多为1n 个,只占全部的2/1n 。
按上述分析,穷举搜索特征点对应的方法不可行。
解决这一问题可以分为两个方面:特征点相似性度量和特征点对应搜索策略。
3.2.1 特征点相似性度量
特征点相似性度量主要有两类方法[8]:
1) 基于特征点局部图像灰度的方法
这类方法直接用特征点附近区域灰度来进行相似度计算。
常用的是归一化互相关方法,这种方法速度快,但是无法处理存在较大空间变换的特征点局部图像,也无法处理存在非线性灰度变化的特征点局部图像。
2) 基于特征点局部图像结构特征的相似度量方法
这种方法分析特征点局部图像的灰度结构,计算特征点局部图像的结构特征,然后通过局部图像规整化或者计算特征点局部图像的不变特征来完成特征点相似性度量。
Mikolajczyk [12]利用Lindeberg [13]的图像尺度空间理论和自动尺度选择技术来得到多尺度特征点与特征点局部图像的特征尺度;然后计算特征点局部图像的二阶矩矩阵,这个二阶矩矩阵的两个特征值描述了特征点局部图像的结构;接着通过迭代获得最终特征点的结构特征;最后使用归一化互相关对规整后的特征点进行相似度量。
Lowe [14]通过寻找高斯差分尺度空间的极值来得到尺度不变特征点的候选点及其相应的特征尺度;然后利用候选点局部图像的Hessian 矩阵来排除图像边缘点;对得到的特征点计算特征尺度上的旋转不变描述;最后利用特征点特征描述之间的欧式距离来进行特征点相似度量。
具体如下[11]:
以特征点为中心,在周围88 领域内采样,如图3.7所示。
左部分中每个小格代表关键点邻域所在尺度空间的一个像素,箭头方向代表该像素的梯度方向,箭头长度代表梯度模值,圆圈为高斯加权的半径范围。
然后在每的小块上计算8个方向的梯度直方图,绘制每个梯度方向的累加值,即可形成一个种子点,如右部分所示。
一个关键点由4个种子点组成,每个种子点有8个方向向量信息。
图3.7 由特征点邻域梯度信息生成的特征向量
实际计算中,Lowe 建议对每个特征点使用共16个种子点来描述,这样对于一个关键点就可以产生128个数据,形成一个128维的特征向量,有很好的抗噪声能力,对于尺度变换和旋转变换都有不变性。
3.2.1 特征点对应
设两个特征点集1P 和2P ,特征点对应策略有两种:双向最大相似度特征点对应策略和单向最大相似度特征点对应策略。
前者要求1P 中的第i 个特征点和2P 中相似度最大值所对应的特征点为第j 个特征点,同时要满足2P 中的第j 个特征点和1P 中相似度最大值所对应的特征点为第i 个特征点;后者只要求较小点集中的特征点和较大点集中的特征点按照最大相似度量对应即可[8]。
另外还有一种不利用点点匹配度量的方法,而是直接搜索对应。
如利用Hausdorff 距离度量准则[15],这种方法不需要点点精确相关,对局部非相似变形不敏感。
但这种方法对噪声点非常敏感,Dubussion.M.P [16],Hutternlocher [17]等对Hausdorff 距离进行了改进,平均、加权等方法去除噪声点的影响。
[1]网址:/view/1293997.htm
[2]陈浩. 图像制导系统图像匹配算法研究. 南京理工大学硕士学位论文,2008.6
[3]王星. 目标图像匹配算法研究. 中北大学硕士论文,2009.5
[4]熊凌. 计算机视觉中的图像匹配综述. 湖北大学学报,Vol.21,3:171~173
[5]Barnea DI, Silverman HF. A class algorithms for fast digital image registration. Computers, IEEE Transactions on. 1972, C-21(2):179~186.
[6] 米长伟,刘晓利,徐明友. 基于SSDA的改进算法. 弹箭与制导学报,第24卷第1期,2004
[7]胡凯,张新宇,杨锐,刘德卿. 改进的SSDA并行算法及其在TEM中的应用. 北京航空航天大学学报,Vol.35, 10: 1224-1227, 2009.
[8]基于特征点的图像配准技术研究
[9]Moravec HP. Towards automatic visual obstacle avoidance [C]. Proceeding of the 5th International Joint Conference on Artificial Intelligence, 1977, 584.
[10]Harris C, Stephens MA. Combined corner and edge detector [C]. Proceeding of the 4th Alvey Vision Conference, 1988.
[11]Davaid G Lowe. Distinctive Image Features from Scale-Invariant Keypoints [J]. International Journal of Computer Vision, Vol.60(2): 91~110, 2004
[12]K.Mikolajczyk and C. Schmid, Indexing Based on Scale Invariant Interest Points [C], Proc. Eighth Int’l Conf. Computer Vision, Vol.1, 525-531, 2001
[13]T. Lindeberg. Feature detection with automatic scale selection [J]. International Journal of
Computer Vision, 30(2):79-116, 1998
[14]D.G.Lowe. Object recognition from local scale-invariant features [J]. In ICCV, 1999, 1150-1157
[15]胡志萍. 图像特征提取、匹配和新视点图像生成技术研究. 大连理工大学博士论文,2005.4.
[16]Marie-Pierre Dubuisson, Anil K.Jain. A Modified Hausdorff Distance for Object Matching. Proc of 12th International conference on Pattern Recognition. 1994:566~568
[17]Kwon Oh Kyu, Sim Dong Gyu, Park Rae Hong. Robust Hausdorff distance matching algorithms using pyramidal structures. Pattern Recognition, 2001, 34(7):2005~2013
[18]Jiguang Dai, Weidong Song, Jichao Zhang. Remote Sensing Image Matching via Harris Detector and Wavelet Domain. Geoinformatics 18th International Conference on Digital Object Identifier, 2010.。