基于点特征的图像配准研究
与系统设计实现
重庆大学硕士学位论文
学生姓名:王宇琛
指导教师:杨 丹 教 授 副 导 师:张小洪 副教授 专 业:计算机软件与理论 (软件工程领域)
重庆大学软件工程学院
二OO九年五月
The Research and Implementation of Image
Registration System
Based on Feature Point Matching
A Thesis Submitted to Chongqing University in Partial Fulfillment of the Requirement for the Degree of Master of Software Engineering
By
Wang Yuchen
Supervisor: Prof. Yang Dan
Ass. Supervised by Ass. Prof. Zhang Xiaohong Major: Soft Engineering
School of Software Engineering of Chongqing University,
Chongqing, China
May, 2009
摘 要
图像配准是指找出场景中同一物体表面的结构点在不同图像上的投影像素点之间的对应关系。目前图像配准广泛应用于虚拟现实、视频压缩、图像复原、图像数据库检索等技术中。图像配准的研究是计算机视觉中最困难也是最重要的任务之一。
不同的图像配准方法总是对应于某种适用的图像变换模型,总体可以分为三类方法:直接像素亮度差优化方法、基于特征匹配的方法和变换域求解的方法。图像配准算法研究的核心问题是提高配准的速度、精度和算法的稳健度。
本文针对同一场景情况下,对基于点特征的图像配准问题进行了研究,具体工作如下:
① 阐述了基于点特征图像配准的定义、方法和流程,分析了其关键步骤对最终配准效果的影响,归纳了当前的主要图像配准方法的原理和缺点。分析了提取点特征的优势,并采用了SIFT算法提取特征点,具有配准效果好,计算量不大等特点。在匹配阶段基于SIFT思想改进了算法,提高了特征匹配的运行效率,使其在图像配准工作中更具实时性。
② 介绍了基础矩阵的概念,比较了多种特征匹配的鲁棒算法。建立了与基础矩阵相关的目标函数,进一步提高了配准的精度,避免了使用欧式距离中阈值难以确定的问题。
③ 对现有的RANSAC算法进行了深入的分析和改进。提出了一种基于灰度的加权鲁棒估计算法,极大地提高了特征匹配的精度。在初始参数估计问题上,提出并采用分层渐进匹配的机制,从而有效地解决了方位变动较大的图像带来的初始参数估计的困难,同时有效地提高了计算效率。
④ 用“模块化”思想设计图像配准系统,有针对性地把软件工程领域较为流行的“插件式”结构引入系统当中,使系统变得更加灵活,可扩展性更强,算法验证的效率也大大提高。
通过大量实验和分析,对提出的多种算法进行了验证,基于基础矩阵的改进算法以及加权鲁棒据算法均提高了配准精度,达到了更好的配准效果。对改进的RANSAC算法的数据与一般方法的计算时间进行了比较,改进算法缩减了30%-60%特征匹配时间。
关键词:图像配准,基础矩阵,RANSAC,鲁棒
ABSTRACT
Image Registration is a technique that relates or aligns different images taken from different viewpoints, at different times, or by different image sensing devices. Till now, image registration technology is widely used in the field of virtual reality(VR), video compression, image super-resolution, intelligent surveillance system, etc, which came to be an active research area in computer vision during recent years.
Feature-based,direct pixel difference optimization based, and Fourier based method are three typical ways of image registration, which have its own appropriate application area separately. The key problem focus on how to increase the algorithm speed, to increase the registration precision and to enhance the robustness of these registration methods.
This paper did research on overlayed image registration in the same scene.The main works are detailed as followed:
① The meaning, methods, flow of feature-based image registration are disserted. The effect of ths critical process is analysed and compared.The current image registration methods are introduced and their advantages and disadvantages are analysed.The advantage of key points is analysed. SIFT algorithm is improved and used, which is of better results and less calculation. Compare with the original algorithm, the new algorithm increases real-time performance.
② The meaning of fundamental matrix is introduced and the advantage of fundamental matrix using in the correspondence establishment is analysed. Some robust algorithm of estimating the fundamental are reviewed. A cost function related to fundamental matrix is introduced so that the threshold value problem in Euclidean distance could be solved.
③ This thesis did in-depth study in RANSAC algorithm, and proposed a weighted robust algorithm based on gray level to make the registration more efficiency.At the same time, a robust estimating method base on layered progressively is presented to employed in the initial parameter estimation when orientation of the images is great.
④ \"Modularization\"thought is used to designed the registration system.Plug-in unit type structure makes the system flexible and extendible.
At last, experiments and analysis are given to show the new algorithms we proposed have a good stabilization, robustness and application performance.
Key words: Image Registration, Fundamental Matrix, RANSAC, Robustness
目 录
摘 要 ABSTRACT
1 绪 论............................................................................................................................................1 1.1 课题背景介绍...........................................................................................................................1 1.1.1 图像配准技术简介............................................................................................................2 1.1.2 图像配准系统流程............................................................................................................3 1.2 图像配准的关键问题...............................................................................................................4 1.3 本文主要工作...........................................................................................................................5 2 特征点的提取与匹配....................................................................................................................6 2.1 图像特征概述...........................................................................................................................6 2.1.1 边缘特征............................................................................................................................6 2.1.2 角点特征............................................................................................................................6 2.2 SIFT特征匹配方法...................................................................................................................7 2.2.1 宽基线条件下点特征匹配................................................................................................7 2.2.2 图像多尺度表示................................................................................................................8 2.2.3 SIFT特征提取算法............................................................................................................8 2.3 改进的特征检测算法.............................................................................................................11 2.3.1 改进的SIFT算法............................................................................................................11 2.3.2 实验效果分析..................................................................................................................12 3 基于基础矩阵的配准算法..........................................................................................................14 3.1 基础矩阵的概念.....................................................................................................................14 3.1.1 参考坐标系......................................................................................................................15 3.1.2 摄像机模型......................................................................................................................16 3.1.3 基础矩阵..........................................................................................................................17 3.2 基于基础矩阵的配准算法.....................................................................................................19 3.2.1 基础矩阵的一般解法......................................................................................................19 3.2.2 鲁棒求解方法..................................................................................................................20 3.2.3 基于基础矩阵的配准算法..............................................................................................22 3.2.4 实验效果与分析..............................................................................................................24 4 基于当前内点的改进算法..........................................................................................................25 4.1 RANSAC 的详细分析及改进................................................................................................25 4.1.1 算法分析..........................................................................................................................25 4.1.2 第一次成功的时间..........................................................................................................27 4.1.3 算法所需时间..................................................................................................................28 4.1.4 算法改进..........................................................................................................................29 4.1.5 实验结果..........................................................................................................................30 4.2 加权鲁棒算法.........................................................................................................................33 4.2.1 几何变换关系..................................................................................................................33 4.2.2 算法改进..........................................................................................................................34 4.2.3 实验结果..........................................................................................................................36 4.3 分层鲁棒估计算法.................................................................................................................38
4.3.1 分层鲁棒估计算法..........................................................................................................38 4.3.2 实验分析..........................................................................................................................40 5 图像配准系统的设计与实现......................................................................................................42 5.1 系统的设计思想.....................................................................................................................42 5.2 系统技术流程介绍.................................................................................................................42 5.2.1 图像采集..........................................................................................................................42 5.2.2 特征提取..........................................................................................................................42 5.2.3 特征匹配..........................................................................................................................43 5.2.4 去噪处理..........................................................................................................................43 5.2.5 变换关系的参数计算......................................................................................................43 5.2.6 图像融合..........................................................................................................................43 5.3 系统软件设计与架构.............................................................................................................44 5.3.1 系统软件架构介绍..........................................................................................................44 5.3.2 “插件式”结构..............................................................................................................45 5.3.3 系统实现..........................................................................................................................45 5.4 图像配准系统运行评测分析.................................................................................................46 6 总结与展望..................................................................................................................................48 6.1 论文总结.................................................................................................................................48 6.2 未来工作展望.........................................................................................................................49 致 谢............................................................................................................................................50 参考文献............................................................................................................................................51 附 录............................................................................................................................................55
1 绪 论
本章首先阐述了图像配准[1]的概念和图像配准的几类方法,然后分析了图像配准技术的应用领域及国内外研究现状,最后对本文的研究内容、研究重点和全文安排予以介绍。
1.1 课题背景介绍
近年来,随着数字化技术的不断发展,计算机处理能力不断提高、硬件装置价格的不断下降,各种先进实用的图像图形算法层出不穷,这使得计算机视觉[2][3]技术变得更加切实可行。虚拟现实、模式识别、视频压缩等实用技术得到了广泛的关注。更多的算法开始由实验室走向市场。我们使用光学成像系统可以从三维世界获得数字化的图像序列。对同一场景拍摄的图像序列实际上视真实的三维世界在不同时间向成像平面的一系列投影,图像帧与帧之间具有较大的相关性和信息冗余。这是图像配准研究的理论依据。
国外具有代表性的是基于运动的全景图像配准模型[4],由Richard Szeliski 在1996年提出,采用Levenberg-Marquardt迭代非线性最小化方法(简称LM算法),通过求出图像间的几何变换关系来进行图像配准,由于此方法效果较好,且可处理具有平移、旋转、仿射等多种变换的待配准图像,因此也成为图像配准领域的经典算法。而Richard Szeliski也从此成为图像配准领域的奠基人,他所提出的理论己经成为一种经典理论体系,直到今天仍然有很多人在研究他的拼接理论。2000年,Shmuel Peleg,Benny Rousso,Alex Rav—Acha和 Assaf Zomet在拓展Richard Szeliski方法的基础上做了进一步的改进,提出了自适应的图像配准模型,它是根据相机的不同运动,自适应选择拼接模型,通过把图像分成狭条进行多重投影来完成图像的配准。这一研究成果无疑推动了图像配准技术的进一步发展,自适应问题也从此成为图像配准领域研究的新热点。M.Brown在2003年ICCV大会上发表了一篇名为Recognising Panoramas的文章,文中使用了基于不变量技术的SIFT算法[7-9]进行图像特征匹配,算法完全自动完成且拼接效果较好。M.Brown的大会发言再一次掀起了全景图像配准技术研究的热潮。
在国内,图像配准技术也迅速发展了起来。1997年,王小睿等提出并实现了一种自动图像配准方法[10],用于图像的高精度配准,但实际上它只是一种使用互相关系数作为相似性测度的半自动的图像配准方法。1998年,张祖勋等提出了采用多级影像概率松弛整体匹配技术[11],用于不同传感器、不同空间分辨率的遥感影像的快速配准。2001年,清华大学的研究人员提出了一种针对图像配准过程中
1
[6]
计算量与拼接精度之间进行折衷的方案,该方案用三角架保证摄像机基本绕垂直轴旋转,但是不对摄像机的旋转角度作严格限制[12]。同年,华中科技大学的研究人员提出了依据变形图像推导出相邻两幅变形图像间的数学关系,用相关法识别特征点,经过几何变形校正以构成大图像的算法[13]。
1.1.1 图像配准技术简介
Barbara Zitova[14]从应用的角度将图像配准问题概括为下面四类情况: ① 同一场景从不同角度拍摄形成的不同图像的配准问题。其研究目的是获得更宽阔视野的图片,获得立体信息、进行三维建模等。
② 不同时间拍摄的不同图像的配准问题。其研究目的是检测并定位场景中的变化部分,比如在遥感图像处理技术中检测地理环境是否发生变化,在医学图像处理技术中检测患者的局部部位是否发生病变,在自动视频监控系统中智能化得检测是否有入侵等。
③ 不同传感器所拍摄图像配准与融合问题,比如在CT、SPECT、MRS等医学图像系统中的应用。
④ 二维场景的图像跟三维模型的配准问题,比如在GIS系统、目标辨识、图像数据库检索系统中的应用。
无论所处理的图像是发生何种形式的变化、是用何种传感器去拍摄,我们总是力求使用不变的部分、共性的信息区完成配准,然后再根据需要去处理变化的部分。这就是图像配准技术的核心思想。
图像配准(Image Registration)是图像处理的一个基本问题,它源于多个领域的很多实际问题,如不同传感器获得的融合;不同时间、不同条件下获得的图像差异检测;成像系统和物体场景变化情况下获得图像的三维信息获取;图像中的目标识别;多媒体数据库的检索等等。
简单来说,图像配准是将同一场景拍摄的不同图像进行对齐的技术,即找到图像之间的点对点映射关系,或者对某种感兴趣的特征建立关联。在中文文献中,图像配准也常被翻译作图像对齐、图像注册。
以同一场拍摄而成的两幅图像为例。假如实际的三维世界点P在两幅图像中分别对应着p1和p2两个二维图像点。图像配准要做的就是找到p1和p2的映射关系,或者p1、p2跟P的关系。p1和p2被称为对应点(Correspondece Points)、匹配点(Matching Points)或控制点(Control Points)。
目前两类主流的图像配准算法是Szeliski[15]基于最小像素亮度差优化的方法和赵向阳[16]基于特征的方法。Szeliski算法中,假设图像P(x1i,y1i)其在图像P21中的点中的对应点为(x2i,y2i),设E来表示两幅图像对应点像素的亮度差,如式(1.1)所示:
2
2
E=∑[P2(x2i,y2i)−P1(x1i,y1i)]=∑ei (1.1)
2
i
i
Szeliski使用了高斯金字塔和Levenberg-Marquardt非线性优化算法(建成LM[17]
优化)将式(1.1)最小化处理,就可以得到变换关系参数。该方法的本质是使用非线性优化方法对一个全局能量代价函数进行处理,其优越目标是全部像素。该方法的优点是不需要提取特征点,且配准精度较高。但其缺点也是致命的,比如LM优化算法收敛速度慢,通常需要有良好的初始值并经过多次迭代才能得到一个趋于稳定的解,在很多时候还面临陷入局部极值的危险,Szeliski建议通过手工选取一系列匹配点来确定初始值,这就更加加重了算法的整体时间开销。另外该算法无法处理遮挡、几何形变、较多的运动物体等等复杂情况。
国内赵向阳算法属于基于点匹配的图像配准方法。这种方法的典型思路为:提取特征点;通过特征点邻域的灰度互相关进行匹配;利用图像之间的几何限制拒绝错误匹配;使用最小二乘法估算变换模型参数。
赵向阳的算法在一定程度上提高了以往配准算法的稳健性,但其仅针对重叠区域较大、易产生较多角点[18]的静止建筑图像作了研究,算法整体速度一般,而且在处理重叠区域较小、含运动物体、含重复性纹理的图像配准时往往会失败。同时赵的算法提取出匹配角点的数目不多,配准精度也不是很理想。
1.1.2 图像配准系统流程
目前对于不同类型的图像和数据存在很多种图像配准的方法,也相应地形成了很多种对方法进行分类的准则。常见的分类准则将图像配准方法分为两类:基于图像灰度的方法[19]和基于点特征的方法。
基于图像灰度的配准方法不需要对图像做特征提取,而是直接利用全部可用的图像灰度信息,因此能提高估计的精度和鲁棒性。但由于在基于图像灰度的算法(如互相关算法)中,把匹配点周围区域的点的灰度都考虑进来进行计算,因此其计算量很大,速度较慢。
基于点特征的配准方法提取了图像的显著特征,大大压缩了图像的信息量,使得计算量小,速度较快,而且它对图像灰度的变化具有鲁棒性。为了适应更快速更高效的未来配准领域的要求,我们以下讨论的方法都是基于点特征的方法。
由于待配准图像的多样性,我们不可能设计出一种适合所有图像的通用的配准方法。每种配准方法不仅要考虑图像之间几何畸变假定的类型,而且还要考虑图像退化的影响、需要的配准精度等。配准方法包含以下四个主要步骤:
① 特征提取。从参考和输入图像中提取共有的点特征,如边缘、重心、线交叉点和端点等。
② 特征匹配[20]。对两幅图像中的所提取的特征点(控制点)进行匹配。
3
③ 变换模型参数估计。选择几何变换模型并且根据匹配特征对估计出变换参数。
④ 图像重采样和变换。根据估计出的变换参数对输入图像实行坐标变换。由于图像变换[21][22]后的坐标不为整数,还必须选择适当的插值技术进行灰度插值。
图1.1 图像配准方法的一般步骤 Fig.1.1 The step of image registration
1.2 图像配准的关键问题
图像配准的每一个步骤都有自己需要解决的难题。
首先,我们应该确定哪种特征适合于待配准的图像。而这种特征应该是在图像中稳定的且易于提取,并且有一定的区分度。特征提取的方法应该有好的定位精度,并且对图像变化具有鲁棒性。
特征匹配遇到的问题一般是由特征提取或图像退化影响引起的。由于不同的成像条件和传感器的光学敏感性,相关的特征可能不是完全相同的。我们在选择
4
特征提取算法和相似性度量准则时必须考虑到这些因素。我们所选择的特征描述算法对于不同的特征必须要有足够的可分辨性,并且不受图像细节轻微变化和图像退化的影响。只有这样,特征匹配算法的健壮性和有效性才能得到保证。
在变换模型参数估计时,应该根据具体情况选择适当的几何变换模型,然后根据匹配特征对估计出变换参数。对于图像配准技术最根本的问题是找出适当的图像转换或映射类型以正确匹配两幅图像。当图像特征的一致性建立之后,匹配的函数也随之建立。我们希望变换观察图像以使它与参考图像配准。因此,在映射函数的设计中,应尽量考虑到变换后的观察图像与参考图像的一致的控制点,应尽可能相近。
因此,特征点的提取与匹配与变换模型参数的估计是重点要考虑的问题,也是图像配准中的关键。在图像变换的时候,我们选择既要考虑需要的精度,又要考虑计算的复杂度。
1.3 本文主要工作
本文按照图像配准技术处理过程的步骤,图文并茂地阐述了本研究课题的研究工作情况,文章组织如下:
第2章在总结当前的主要图像配准方法的原理和缺点的基础上,分析和比较了多种特征点提取方法,并采用了SIFT算法提取特征点,提高了特征点的稳定性和图像配准的整体速度。
第3章在估算内点的过程中,引入了基础矩阵[23][24]来估算残差。简要的介绍了RANSAC[25][26]算法的一些扩展算法。提出了基于基础矩阵的鲁棒估计算法通过实验证明得到了缩短配准时间和增强配准精度的效果。
第4章根据当前内点集合计算的思想,并在这一思想指导下,改进了 RANSAC 算法。通过构造与灰度有关的目标函数,给出了一种高精度估计内点的鲁棒算法—加权鲁棒估计算法。算法首先对原始数据进行计算并得出图像间几何变换关系矩阵,再利用特征点周围的灰度信息进行权值计算。在求解基础矩阵的过程中,寻找目标函数最小内点集,从而对两幅图像进行精确配准。最后,针对复杂的变换参数模型,提出了分层鲁棒估计的思想并通过实验证明得到了良好的效果。
第5章对图像配准系统的设计思想、技术流程、软件体系的设计与架构做了简要的介绍。
第6章是论文的总结和对未来工作的展望。
5
2 特征点的提取与匹配
2.1 图像特征概述
图像特征包括像素灰度特征、色彩特征、区域特征、纹理特征、轮廓特征、边缘特征[27]、角点特征等。其中,边缘特征和角点特征是两种较常用的特征。
2.1.1 边缘特征
边缘指的是图像中在且仅在某个方向上灰度急剧变化、而在另一个与其正交方向灰度变化平缓的像素[28-30]。边缘特征可以更好的保持图像的结构信息,同时很多角点提取算法也是基于边缘轮廓特征的。
在一维连续信号中,边缘定义为一阶导数最大或者二阶导数为零的地方。在二维连续图像f中,边缘是用图像梯度来定义的。梯度公式如式(2.1)所示。
⎡∂f∂f⎤
Δf=⎢,⎥ (2.1)
⎣∂x∂y⎦
边缘的方向与梯度方向垂直,边缘的强度决定于梯度的模值。
而在数字图像中,像素是离散的,此时我们使用两种思路来求梯度。第一种思路是用具有差分性质的算子来近似代替求导运算,如Sobel、Prewitt、Roberts边缘检测算子。第二种方法是使用参数化模型方法,拟合一个连续图像进而求梯度,进而求边缘位置所在。
下面介绍一下目前常用的Canny边缘检测算法。Canny提出了著名的边缘检测三大评判标准,同时推导出在连续信号情况下边缘检测的最优解,并开发了一种实用的算法。该算法大体思想是:先对图像进行高斯平滑以滤除噪声,然后沿着梯度方向进行非极大值抑制,并使用累计直方图计算两个阈值。边缘的最终判定:凡是大于高阈值的则认为是边缘;凡是小于低阈值的则认为不是边缘;如果大于低阈值但又小于高阈值,那就要看这个像素的邻接像素中有没有超过高阈值的边缘像素:如果有的话那么就认为是边缘,否则就不是边缘。通过修改高斯平滑窗口的大小和更改两个阈值可以实现不同的边缘检测和噪声抑制能力。当高斯平滑窗口较大时,噪声被较大程度上抑制,检测出的边缘较纯净,噪声少,但定位不准,同时损伤了细节信息;而当高斯平滑窗口较小时正相反。
2.1.2 角点特征
角点是图像的另一个重要的局部特征,其直观定义是指至少两个方向上图像灰度变化均较大的点。在实际图像中,轮廓的拐角、线段的末端等都是角点。其中比较著名的有Harris角点[31-35]检测方法。
角点检测方法分为基于直接像素灰度比较的方法和求轮廓弧度极值的方法。
6
Smith于1995年提出了一种非线性的边缘、角点提取方法—SUSAN算法(Smallest Univalue Segment Assimilating Nucleus)。SUSAN算法[36]对噪声不敏感,但其计算较复杂。
角点检测的第二类方法是,首先对图像求边缘或轮廓,比如使用Canny算法,然后求该轮廓上的局部弧度最大值就可以确定角点的位置[37]。但这种方法往往具有定位不准的弊端,其角点定位能力非常依赖于边缘检测的结果。
点特征因具有信息量丰富、便于测量和表示、能够适应环境光照变化、尤其适用于处理遮挡和几何变形问题等优点而成为许多特征匹配算法的首选[38]。因此本文采用了SIFT特征点提取与匹配方法,下节将主要该方法。
2.2 SIFT特征匹配方法
2.2.1 宽基线条件下点特征匹配
宽基线条件下点特征匹配的首要任务就是提取稳定的特征,并进行描述。这里稳定一词的含义指的是希望该特征能对旋转、尺度缩放、仿射变换、视角变化、光照变化等图像变化因素保持一定得不变性,而对物体运动、遮挡、噪声等因素也保持较好的可匹配性,从而可以实现差异较大的两幅图像之间特征的匹配。
对图像变化保持稳定的特征描述符称为不变量,比如对图像的旋转保持稳定的不变量称为旋转不变量(Rotation Invariant),对尺度缩放保持稳定的不变量则称为尺度不变量(Scale Invariant)。
特征描述符(Featrue Descriptors)指的是检测图像的局部特征(比如边缘、角点、轮廓等),然后根据匹配目标的需要进行特征的组合、变换,以形成易于匹配、稳定性好的特征向量,从而把图像匹配问题转化为特征的匹配问题,进而将特征的匹配问题转化为特征空间特征向量的聚类问题[39]。
宽基线条件下的点特征匹配一般包括下面四个步骤[40]:
① 特征点检测。这些特征点一般是灰度变化的局部极值点,含有显著的结构性信息,甚至这些点也可以没有实际的直观视觉意义,但却在某种角度、某个尺度上含有丰富的易于匹配的信息。
② 特征点描述,即建立特征向量。这是各匹配算法主要的不同所在。特征空间的选择决定了图像的哪些特性参与匹配,哪些特性将忽略。特征点的特征描述符应是不变量,以确保最低限度的受摄像机的运动或光照变化等因素的影响。选择合理的特征空间可以降低各类图像变化因素对匹配算法速度、稳健性的影响。
③ 进行特征匹配以获得候选匹配点。这一步根据特征向量的相似性来进行匹配,一般采用各种距离函数作为特征的相似性度量,如欧式距离、街区距离、马氏距离等。
7
④ 消除错配。无论采用何种特征描述符和相似判断度量,错配难以避免。这一步主要做的就是根据几何或光度的约束信息去除候选匹配点中的错配。
2.2.2 图像多尺度表示
尺度空间理论最早出现于计算机视觉领域时其目的是模拟图像数据的多尺度特征。Koendetink证明了高斯卷积核是实现尺度变换的唯一变换核,而Lindeberg等人则进一步证明高斯核实唯一的线性核。
二维高斯函数定义如下:
G(x,y,σ)=
12πσ2
e−(x
2
+y2)/2σ2
(2.2)
式(2.2)中,(x,y)代表图像的像素位置,σ称为尺度空间因子,其值越小则表示该图像被平滑的越少,相应的尺度也就越小。大尺度对应于图像的概貌特征,小尺度对应于图像的细节特征。L代表了图像的尺度空间。
2.2.3 SIFT特征提取算法
David G.Lowe在2004年总结了现有的基于不变量技术的特征检测方法,并正式提出了一种基于尺度空间的、对图像缩放、旋转甚至仿射变换保持不变性的图像局部特征描述算子---SIFT算子,其全称是Scale Invariant Feature Transform,即尺度不变特征变换。
SIFT算法首先在尺度空间进行特征检测,并确定关键点(Keypoints)的位置和关键点所处的尺度,然后使用关键点领域梯度的主方向作为该点的方向特征,以实现算子对尺度和方向的无关性。
SIFT算法提取的SIFT特征向量具有如下特性:
① SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性。
② 独特性(Distinctiveness)好,信息量丰富,适用于再海量特征数据库中进行快速、准确的匹配[41]。
③ 多量性,即使少数的几个物体也可以产生大量SIFT特征向量。 ④ 高速性,经优化的SIFT匹配算法甚至可以达到实时的要求。 ⑤ 可扩展性,可以很方便的与其他形式的特征向量进行联合。
Lowe在图像二维平面空间和DoG(Different-of-Gaussian)尺度空间中同时检测局部极值作为特征点,使特征具备良好的独特性和稳定性,是归一化LoG(Laplacian-of-Gaussian)算子的近似。DoG算子如式(2.3)所示: D(x,y,σ)=(G(x,y,kσ)−G(x,y,σ))*I(x,y)
(2.3)
=L(x,y,kσ)−L(x,y,σ)
对于图像上的点,计算其在每一尺度下DoG算子的相应值,这些值连起来得到特征尺度轨迹曲线。特征尺度曲线的局部极值点即为该特征的尺度。尺度轨迹
8
曲线上完全可能存在多个局部极值点,这时可认为该点有多个特征尺度。
SIFT特征匹配算法包括两个阶段,第一阶段是SIFT特征的生成,即从多幅待匹配图像中提取出对尺度缩放、旋转、亮度变化无关的特征向量;第二阶段是SIFT特征向量的匹配。
下面本文来具体介绍一下SIFT特征匹配算法。
首先,一幅图像SIFT特征向量的生成算法总共包括4步: ① 尺度空间极值检测,以初步确定关键点位置和所在尺度。 图2.1为DoG尺度空间的三个相邻尺度。
尺度
图2.1 DoG尺度空间的三个尺度 Fig. 2.1 Detection local extremum in scale space
在检测尺度空间极值时,图中标记为叉号的像素需要跟包括同一尺度的周围领域8个像素和相邻尺度对应位置的周围领域9×2个像素总共26个像素进行比较,以确保在尺度空间和二维图像空间都检测到局部极值。一个点如果在DoG尺度空间本层以及上下两层的26个邻域中是最大或最小值时,就认为该点是图像在该尺度下的一个特征点,同时去除低对比度的关键点和不稳定点的边缘响应点(因为DoG算子会产生较强的边缘响应),以增强匹配稳定性、提高噪声能力。
② 利用关键点邻域像素的梯度方向分布特性为每个关键点指定方向参数,使算子具有旋转不变性。
m(x,y)=(L(x+1,y)−L(x−1,y))2+(L(x,y+1)−L(x,y−1))2
θ(x,y)=arctan((L(x,y+1)−L(x,y−1))/(L(x+1,y)−L(x−1,y)))
9
(2.4)
式(2.4)为(x,y)处梯度的模值和方向公式。其中L所用的尺度为每个关键点各自所在的尺度。
在实际计算时,我们在以关键点为中心的邻域窗口内采样,并用直方图统计邻域像素的梯度方向。梯度直方图的范围是0~360度,其中10度一个柱,总共36个柱。直方图的峰值则代表了该关键点处邻域梯度的主方向,即作为该关键点的方向。图2.2是采用7个柱时使用梯度直方图为关键点确定主方向的示例。
方向直方图0主方向图2.2 由梯度方向直方图确定主梯度方向
2π
Fig.2.2 Gradient histogram decides the direction of main gradient
在梯度方向直方图上,当存在另一个相当于主峰值80%能量的峰值时,则将这个方向认为是该关键点的辅方向。一个关键点可能会被指定具有多个方向(一个主方向,一个以上辅方向),这可以增强匹配的鲁棒性。
至此,图像关键点已检测完毕,每个关键点有三个信息:位置、所处尺度、方向。由此可以确定一个SIFT特征区域。
③ 生成SIFT特征向量。首先将坐标轴旋转为关键点的方向,以确保旋转不变性。
图 2.3 SIFT 的描述符 Fig.2.3 SIFT keypoint descriptor
10
接下来以关键点为中心取8×8的窗口。图2-5左部分的中央黑点为当前关键点的位置,每个小格代表关键点邻域所在尺度空间的一个像素,箭头方向代表该像素的梯度方向,箭头长度代表梯度模值,图中蓝色的圈代表高斯加权的范围(越靠近关键点像素梯度方向信息贡献越大)。然后在每4×4的小块上计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,即可形成一个种子点,如图2.3右部分所示。此图中一个关键点由2×2共4个种子点组成,每个种子点有 8个方向向量信息。这种邻域方向信息联合的思想增强了算法抗噪声的能力,同时对于含有定位误差的特征匹配也提供了较好的容错性。
实际计算过程中,为了增强匹配的稳健性,Lowe建议每个关键点使用4×4共16个种子点来描述,这样对于一个关键点就可以产生128个数据,即最终形成128维的SIFT特征向量。此时SIFT特征向量已经去除了尺度变化、旋转等几何变形因素的影响,再继续将特征向量的长度归一化,则可以进一步去除光照变化的影响。
④ 当两幅图像的SIFT特征向量生成后,我们采用关键点特征向量的欧式距离来作为两幅图像中关键点的相似性判定度量。取图像1中某个关键点,并找出其与图像2中欧式距离最近的前两个关键点,在这两个关键点中,如果最近的距离初一次近的距离少于某个比例阈值,则接受这一对匹配点。降低这个比例阈值,SIFT匹配点数目会减少,但更加稳定。
2.3 改进的特征检测算法
2.3.1 改进的SIFT算法
本特征点检测算法基于SIFT算法,并在其基础上做了改进工作,目的在于提高SIFT算法的运行速度,使其在图像配准工作中更具实用性。
通过实验我们得出,SIFT算法中的步骤3在整个算法中占用80%以上的计算时间,严重影响算法的实时性。同时在步骤2和步骤3中做了类似的方向直方图统计工作,为了提高算法的实时性,将这两个步骤合并,并只采用12维向量表征点。具体改动如下:
① 尺度空间极值检测(同原算法) ② 形成特征向量
1) 在多尺度空间特征点形成之后,以特征点为中心采用圆形窗体来确定需要统计的邻域范围(见图2.4)窗口尺寸采用Lowe推荐的9σ×9σ,因此圆形窗口半径取4.5σ,在该圆形窗体内统计12个梯度方向。
11
图2.4 圆形统计窗口 Fig.2.4 Circular statistics window
2) 将这12个梯度方向归一化,这样就保证了光照不变性。假设D是特征点的特征向量,即D=(d1,d2,…,d12),通过式(2.5)进行归一化:
D
D==(d1,d2,…,d12) (2.5)
∑d
i=1
12
2i
3) 查找最大的梯度方向统计量,如果该统计量元素位于12维向量的头部则向量最终形成,即若d1=max{di,di∈D}最终特征向量为
D=(d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12),否则转4)
4) 向左循环移动整个向量序列,知道最大的梯度方向统计量移动到向量的第一个元素,以保证旋转不变性。假设d5是向量的最大元素,则最终特征向量为:
D=(d5,d6,d7,d8,d9,d10,d11,d12,d1,d2,d3,d4)。
③ 特征匹配
为了保证稳定的匹配效果,在原算法上增加一次匹配,第一次匹配时总记录下匹配的坐标对,然后交换匹配的图像顺序,再匹配一次,当两次匹配的坐标相同时完成匹配,实验表明两次匹配能较大地提高匹配的稳定性。
2.3.2 实验效果分析
本算法中最关键的参数就是圆形统计窗口中向量的维数n。对50幅不同类型的图像进行统计,发现随着n的增大匹配效率增加,但运算时间也大大增加,同时,当n>12时匹配效率并无明显提高,如图2.5所示,通过选取最大匹配效率来决定维数。匹配效率定义为:
匹配效率=
正确匹配时间
(2.6)
计算时间
12
10.8正确匹配率0.60.40.200510维数152025
141210864200510152025
0.30.25平均用时(单位秒)维数匹配效率0.20.150.10.0500510维数152025
图2.5 维数设定图
Fig. 2.5 Dimension hypothesis chart
从图中2.5的曲线中可以看出,当n=12时获得最大匹配效率。
13
3 基于基础矩阵的配准算法
图像配准重点讨论的问题是如何寻找空间中同一点在多幅图像中的对应点,并建立它们的匹配关系。原始的方法是在两幅图像中寻找对应点,并计算几何关系H。在内点集合与几何变换关系模型的求解中,每步都需要求解残差来确定内点。这样就造成了两种难以避免的弊端:
① 最终找出的对应点,可能不是空间中同一点的投影。
② 在拟合几何变换关系的过程中,用欧式距离来确定内点集合并不准确。 (规定内点为残差εi=|Hx−x'|2小于给定阈值的点)
本章主要介绍同一三维场景在两个不同视点处得到的两幅二维图像之间的几何关系——极几何以及极几何的代数表示——基础矩阵,并归纳了一般的基础矩阵求解算法。
2
3.1 基础矩阵的概念
图3.1 两幅图像间的对极几何
Fig. 3.1 Epipolar geometries between two images
假设在一个立体视觉系统中,有两个摄像机,如图3.1所示,设C和C'分别为两个摄像机的光心,两个摄像机获得的图像分别为I和I',M为三维空间中的任意一点,m和m'是点M在两个图像上的像点(投影点)。连接光心c和c'的直线称为基线(baseline)[42][43]。空间点M 和两个光心C和C'共面,设它们所在的平面为
14
π,该面称为极平面(epipolar plane)。极平面与图像平面的交线l和l'称为极线
(epipolar line)。因为m(m')也同时在平面
π和像平面I(I)上,因此l(l)必然过
'
'
m(m')点,也就是说m'(m)的对应点m(m')必然在I(I')上。从这里可以看出,寻
找m(m')的对应点m'(m)时,不必在整幅图像I(I')中寻找,只需在极线上寻找即可。这就提供了一个重要的极线约束,将对应点的搜索空间从二维降到了一维。当三维空间点M 移动时,产生的所有极线都穿过极点(epipole)e(e'),极点是极线与图像平面的交点。
接下来我们具体介绍参考坐标系和摄像机模型,由此可以推导出基础矩阵的表示公式。
3.1.1 参考坐标系
为了描述基础矩阵,首先需要定义四个参考坐标系:图像坐标系、成像平面坐标系、摄像机坐标系和世界坐标系。摄像机采集的数字图像在计算机内可以存储为数组,数组中的每一个元素(称为像素,pixel)的值即是图像点的亮度。在图像上定义直角坐标系u−v,那么(u,v)是以像素为单位的图像坐标系坐标,如图3.2所示。
图3.2 图像坐标系和成像平面坐标系 Fig.3.2 Image coordinate and Image plane coordinate
图像坐标系表示像素位于数字图像中的列数和行数,而成像坐标系用物理单位(例如毫米)表示出该像素在图像中的物理位置。如图3.2所示,在x−y坐标系中,原点O1定义在摄像机光轴和图像平面的交点处,称为图像的主点(principal point),该点一般位于图像中心处。若O1在u−v坐标系中的坐标为(u0,v0),每个像素在x轴和y轴方向上的物理尺寸为dx,dy,则两个坐标系的关系如下:
15
1⎡u⎤⎡dx⎢⎢⎥ v=⎢0⎢⎥⎢⎢⎥10⎣⎦⎢⎣
0u0⎤⎡x⎤
⎥⎢⎥
1⎢y⎥ (3.1) dyv0⎥⎥⎥101⎥⎢⎦⎣⎦
摄像机成像几何关系可由图3.3表示,其中C点称为摄像机光心,XC轴和YC
轴与成像平面坐标系的X轴和Y轴平行,ZC轴与成像平面垂直,称为摄像机的光轴。光轴与成像平面的交点为图像主点C1,由点C与XC,YC,ZC轴组成的直角坐标系称为摄像机坐标系。CC1为摄像机焦距。
我们用世界坐标系来描述真实世界环境中摄像机和物体的位置。摄像机坐标系和世界坐标系之间的关系可用旋转矩阵R与平移向量t来描述。由此,空间点M在世界坐标系和摄像机坐标系下的齐次坐标(XW,YW,ZW,1)T与(XC,YC,ZC,1)T存在
T
如式(2.2)的关系,其中R是3×3旋转矩阵,t是3维平移向量,0=,P(0,0,0)
是两个坐标系之间的变换矩阵。
图3.3 摄像成像几何模型 Fig.3.3 Camera geometry model
⎡Xc⎤⎡Xw⎤⎡Xw⎤
⎢⎥⎢⎥⎢⎥YYRt⎡⎤Ycww⎥=⎢⎥=P⎢⎥ (3.2) ⎢⎢⎥⎢Zc⎥⎣0T1⎦⎢Zw⎥⎢Zw⎥⎢⎥⎢⎥⎢⎥
111⎢⎦⎥⎢⎥⎣⎦⎣⎣⎦
3.1.2 摄像机模型
摄像机模型给出三维空间点与它在图像平面上的成像点之间的关系。在针孔摄像机模型下,空间点M 在图像中的像是M 点与摄像机光心的连线与成像平面的交点m ,如图3.3所示。因此,摄像机坐标系与成像平面坐标系之间的关系为: fXcfYc x= (3.3) ,y=
ZcZc
16
其中,(x,y) 为点m在成像平面坐标系下的非齐次坐标,(XC,YC,ZC)为空间点M在摄像机坐标系下的非齐次坐标,f 为摄像机焦距。使用齐次坐标与矩阵形式,式(3.3)可表示为:
⎡x⎤⎡f⎢⎥⎢Zc⎢y⎥=⎢0⎢⎣1⎥⎦⎢⎣0
0f
0
⎡Xc⎤00⎤⎢⎥
⎢Yc⎥ (3.4) 00⎥⎥⎢Zc⎥10⎥⎦⎢1⎥
⎢⎣⎥⎦
将(3.1)与(3.2)代入(3.4)式,我们可以得到图像坐标系和世界坐标系之间的关系:
⎡
⎡u⎤⎢⎢⎥Zc⎢v⎥=⎢
⎢⎢⎥1⎣⎦⎢
⎣⎡fu=⎢⎢0⎢⎣0
1dx
00
u0⎤⎡f⎥⎢1v0⎥⎢0
dy⎥
⎣001⎥⎢⎦0
0f0
⎡Xw⎤
00⎤⎢⎥
YRt⎡⎤⎢w⎥00⎥⎥⎢0T1⎥⎢Zw⎥
⎣⎦10⎥⎢⎥⎦
⎢1⎦⎥⎣
⎡Xw⎤
0u0⎤⎢⎥
Y⎢w⎥=K[Rt]M=PM[]Rtfvv0⎥⎥⎢Zw⎥
01⎥⎢⎥⎦
⎢1⎦⎥⎣
(3.5)
其中P 为3×4矩阵,通常称为摄像机矩阵或投影矩阵,M 表示M点在世界坐标系下的齐次坐标。
3.1.3 基础矩阵
基础矩阵是对极几何的代数表示。设两个摄像机的投影矩阵分别为P1和P2,则两个摄像机的投影方程如下:
ZCm=P1M=[P1A,P1B]M (3.6)
ZCm'=P2M=[P2A,P2B]M (3.7)
其中,M为三维空间点M 在世界坐标系下的齐次坐标;m、m'分别是投影点m、m'在图像坐标系下的齐次坐标;将投影矩阵P1和P2中左面的3×3部分记为
T
P2A和P2B,右边的3×1部分记为P1B和P1B。如 果 将M=(XW,YW,ZW,1)记为
T
(MT,1)T,其中MT=(Xw,Yw,Zw)则式(3.6)、(3.7)可展开为
ZCm=P1AM+P1B (3.8) ZCm'=P2AM+P2B (3.9)
将上式消去M 得
ZCm'−ZCP2AP1Am=P2B−P2AP1AP1B (3.10)
−1
−1
17
T
定义 2.1 如果t为三维向量,t=(tx,ty,tz),称下列矩阵为由t定义的反
对称矩阵,记为[t]。
x
⎡0−tzty⎤⎢⎥
[t]x=⎢tz0−tx⎥
⎢−t0⎥tyx⎣⎦
令 p等于式(3.10)右端的向量,即
p=P2B−P2BP−P1A1B (3.11)
−1
用[p]x左乘式(3.10)两边,则由[p]•p=0 可得
x
−1
[p]x(ZCm'−ZCP2AP1Am)=0 (3.12)
将式(3.12)两边除以ZC',并令Z=Z/ZC',得
[p]xZP2AP1Am=[p]xm' (3.13)
−1
式(2.13)右边向量为[p]m'=p×m',可见该向量与m'正交,将m'T 左乘 x上式两边,并将所得两边除以Z 后得到下式:
−1
m'T[p]xP2AP1Am=0 (3.14) 令F=[p]xP2AP1A,则式(3.14)可以改写成:
m'TFm=0 (3.15) 矩阵F是立体视觉与运动视觉中一个非常重要的矩阵,称为基本矩阵。式(3.15)的重要性在于它给出了一个描述基本矩阵的方法:不需要摄像机的投影矩阵,而仅需两幅图像间的对应点。这就使得我们可以利用对应点的关系恢复出基本矩阵
F。
−1
基础矩阵的基本性质如下: 基础矩阵F的自由度为7。
对极几何约束可以由基础矩阵代数表示m'TFm=0。
设左图像中点映射到右图像上对应点m'的矩阵为F,将右图像上点m'映射到左图像上的对应点m的矩阵为F',则有F'=F'T。
对极线可以由基础矩阵代数表示为:
点m在另一幅图像上的极线为
l'=Fm
点m'在另一幅图像上的极线为
l=F'm'=FTm'
18
极点可利用基础矩阵表示为
Fe=0;FTe'=0
上面的五条性质给出了对极几何的主要几何关系表达式,其中最为核心的是等式(3.15),它代表着所有匹配点所应遵循的约束方程。
3.2 基于基础矩阵的配准算法
在特征匹配的过程中,不可避免地会受到异常数据(outliers)[44][45]的干扰。 针对该问题,普遍的做法是选用鲁棒方法对初始匹配的点进行筛选从而达到配准的目的。但是,这样做存在着不可避免的弊端:
① 原有的初始匹配中可能对应的两点,不是来自于空间中同一点的映射。 ② 每次筛选内点的步骤中需要计算每一对匹配点的欧式距离残差
222'=。筛选出残差ε i i 的条件下,会存在这样的情况:一些精确匹配的点残差比较大,而一些异常数据的残差比较小,致使最后的匹配效果严重受到影响。 由于求解基础矩阵本身就是在筛选和去除错误匹配点的影响。针对以上这两个问题,提出了将特征点的去错匹配问题归结为拟合基础矩阵的问题,得到了良好的效果。 在过去的三十年中,人们提出了很多鲁棒性的技术来求解基础矩阵。 3.2.1 基础矩阵的一般解法 所有估计基础矩阵的方法都是基于求解一个齐次方程组。假设给定一个对应 T'' 点的集合mi=(ui,vi,1)T,其中 mi=(ui,vi,1)T,mi=(ui,vi,1)T,n≥7,当使用n对对应点时,方程(2.15)可以改写成如下形式: Unf=0 (3.16) 其中 T f=⎡⎣F11,F12,F13,F21,F22,F23,F24,F25,F24⎤⎦ (3.18) ⎡u1u1'v1u1'u1'u1v1'v1v1'v1'u1v11⎤ ⎢⎥''''''1uuvuuuvvvvuv222222222222⎥ (3.19) Un=⎢⎢⎥⎢⎥ ''''''1uuvuuuvvvvuvnnnnnnnnnn⎦⎣nn 方程(3.18)是一个齐次方程组。需要注意的是,F在相差一个比例因子的情况下,应该有8个独立变量,但是因为F还满足det(F)=0,因此在F的9个未知变量中只有7个独立变量。 19 如果系数矩阵Un的秩正好为8,则解是唯一的,这样我们可以通过8对匹配点来线性求解F。在实际中,由于匹配点存在误差,系数矩阵的秩可能大于8,所以通常选取多于8对匹配点,此时要求最小二乘解: min∑(mi'TFmi)2 (3.20) F i f的最小解是对应于U的最小奇异值的奇异向量,即是U的SVD分解U=USVT中矩阵V的最后一列矢量。以上即求解基本矩阵的8点算法[46-49]。 如果匹配点选取得准确的话,8点算法的效果是很好的,然而大多数情况下由于噪声的影响而导致数据不准确。所以我们常常用鲁棒方法来求解基础矩阵。 3.2.2 鲁棒求解方法 ① RANSAC算法 1981年由Fischler和Bolles提出的RANSAC算法已经成为计算机视觉领域最流行的鲁棒估计算法。 RANSAC算法的输入是一个数据点的集合U。其中一部分数据点和一个模型相一致,这个模型具有来自参数空间Θ的一些未知参数。这些数据点叫做内点。其余的数据点是不正确的(外点)。目的就是从参数空间Θ找到使代价方程 Js(θ,U,Δ)达到最大值的模型参数θ*。在标准的公式中,代价方程Js是支持以θ 为参数的模型的集合大小,具体说就是U中多少数据点是和它一致的。认为残差小于Δ的数据点是和模型一致的,或者说支持模型。另一个残差方程ρ(θ,x)表示一个数据点到一个模型的距离。阈值Δ是RANSAC的一个输入参数。 RANSAC算法: 输入:U,Δ,η0 输出:θ*,I* * 重复,直到在第k步所得模型的支持大于Ik−1的概率η(式(2.24))小于阈值η0: 1. 假定产生 a 从U中随机选择大小为m的随机样本 b 估算适合样本的模型参数θk 2. 检验 a 计算模型的支持Ik=J(θk) **** b 令Ik=max(Ik−1,Ik),并且如果Ik>Ik−1(也就是找到一个新的最大值),然后存储当前模型参数θk RANSA算法如下实现Js的最大化。重复执行两个步骤:(i)一个假定产生步骤和(ii)检验步骤。在假定产生步骤(i),从子集合Sk(所谓的样本)中计算模型参数的假定θk。其中Sk是从输入数据点U中随机选择的。一个样本包括至少一个外点的概率根据样本的大小成指数增加。因此,样本的大小m=s要选得尽量小以便可以 20 求出唯一的模型参数。也就是说,通过两个不同点(m=2)来定义一条直线,一般一个基础矩阵由七或八对对应点来定义(m=7/8)。在检验步骤(ii)计算假定模型参代价方程的最大值数。代价方程Js是支持(与之一致)以θk为参数的模型的集合势。由一个预先定义的概率(置信度)1−η0(一般设为95%)来恢复,其中η0是返回一个不好解的概率。 ② MLESAC 由Torr和Zisserman[50-52]提出,并由Tordoff和Murray[53]作进一步改进的 MLESAC算法是RANSAC的一个特例,该方法使用其它的代价方程代替支持的基数,并且以求模型似然值的最大值代替求模型支持的最大值,其误差分布是内点 与外点分布的混合。假定残差ri服从高斯分布N(0,σ),σ对于内点是已知的,对于外点均匀分布在0,Z上。 p(ri|θ)=ε(1eσ2π−ri22σ2)+(1−ε) 1 (3.21) Z 假定产生阶段和 RANSAC 算法是相同的。在此假设下,在检验步骤所估算的代价方程是 JMLE(θ)=∑logp(ri|θ) i=1 N 可以通过EM算法[54][55]计算得到混合参数ε,继而得出JMLE(θ)。混合参数ε代表内点比率,也就是内点比率的估计值。这个估计值与标准RANSAC 算法中的一样,用来决定样本数目。 一方面,当模型参数的似然方程的极大值很大的时候,比如大基线的匹配时,代价方程JS和JMLE是紧密联系的。由于在执行 RANSAC(MLESAC 也是一样)时,平均只取到三个没被污染样本,这两个代价方程可能会选择同一个模型作为结果。另一方面,MLESAC 算法在似然值是平缓的并且不能明显区分内点和外点的时候是有优势的,典型的例子就是小基线的匹配。 当期望得到很高比例的正确匹配时,MLESAC为小基线匹配提出了一些其它的变量。随机采样产生一定数目的假定,这个数目必须足够大,才可以在参数空间内围绕最优模型参数,以足够的密度采样。因此样本的数目相对内点的比例必须符合一定的限制。检验步骤中用JMLE代价方程来评估每个假定模型,选择能够使似然值取到最大值的模型作为算法的结果。实验证明这个方法是成功的,并且适合于实时小基线匹配[56]。 ③ PROSAC Ondrej Chum和Jiri Matas2005年提出一个新的算法PROSAC(PRO-gressive Sample Consensus)[57][58]。 21 RANSAC算法平等对待所有对应点并且均一地从所有的集合中采样,PROSAC算法和它不同,是从逐渐增多的有序的对应点集合中采样。 PROSAC算法的结构和RANSAC相似。首先,通过随机采样产生假定(hypothesis)。但是区别于RANSAC算法的是,这里的采样不是从所有的数据中抽取,而是从具有最高品质方程的数据子集中抽取。假定集合(hypothesis generation set)的大小逐渐增大,因此更早检验那些更有可能没被污染的样本。事实上PROSAC和RANSAC取同样的样本,只是采样的顺序不同。和RANSAC算法一样,PROSAC算法也在所有的数据点上验证这些假定,当存在更好解的概率过低(低于5%)的时候算法终止。 3.2.3 基于基础矩阵的配准算法 根据RANSAC的思想,提出了用基础矩阵估计残差和判定内点的算法,并对 RANSAC算法的随机选取匹配点步骤做了改进。算法的核心思想是找出目标函数的最优解。 w*=min* Ik ∑|m' i=1 k T Fm|2 (3.22) k 算法的输入是:经过SIFT特征提取和匹配了的特征点对和残差阈值Δ以及随机采样次数K。算法的输出是:匹配精度较高的内点集合和该内点集合支持的基础矩阵模型。和RANSAC算法不同的是,没有使用置信度这一个概念,而是不断扩充内点集合的到不能扩大为止。 这里需要提到的一个很重要的步骤是归一化。如3.2.1中提到的使用8点法来拟合基础矩阵时,如果8对匹配点选取得准确的话,8点算法的效果是很好的,然而大多数情况下由于噪声的影响而导致数据不准确,所以我们常常预先对数据进行处理,即对数据进行归一化,其原理为平移数据点使数据点的质心移动到原点,然后再做比例变换,使各点与原点的距离均值为2。 对数据归一化不仅提高了结果的精度,它还提供了一个好处,就是对初始数据归一化得算法将任何尺度缩放和坐标原点的选择不变。因为归一化步骤通过对测量数据选择有效地标准标系,先消除了坐标变换的影响。 假设带配准的两幅图像是图1和图2,将图1分为32×32个一系列子块。 算法的具体步骤如下: ① 首先对图像做归一化处理。然后对图像1分割的子快中随机抽取其中的8个子块,并在每个子块总随机抽取一个特征点,就得到了8个初始点,这样做可以在一定程度上降低取到共线点的风险,同时也避免了取得的8个点过于临近,提高了随机抽样的效率。 22 ② 根据这初始的8个点用最小二乘法计算基础矩阵并进入3)迭代。 ③ 根据当前内点集计算第i次采样的基础矩阵Fi的参数,同时计算目标函数 wi。 若wn ⑤ 当n>K时,退出;否则,若返回2)。 算法流程图如下: 将图像1分为32×32个一系列小块,随机从这些小块中随机抽取8个作为初始值由当前内点计算出Fi,Ii,wi否wi 23 3.2.4 实验效果与分析 图3.5 SIFT 描述符的匹配结果 Fig.3.5 Match result by SIFT 图3.6 图3.5的对应极线,中间的白色星点为极点 Fig.3.6 Epipolar line in Fig3.5 黑心白边点为匹配的对应点。 此图为前 11 个匹配点对,其中包括一对误匹配。 从图3.6中可以明显的看到,右上角的一对匹配点是错误的。在一般的方法中,若将误差值设定比较大是很难去除这对匹配点的。基于基础基础矩阵的算法将对极几何的概念引入了残差的计算范畴,更不用考虑设定欧式距离阈值的问题。所以,图中的错误匹配点的计算误差会较大,在结果中将被有效地排除。 24 4 基于当前内点的改进算法 由3.2.2可以知道,要提高 RANSAC 算法速度,主要从这两个方面入手:想办法减少抽样数kη0,或者减少模型参数检验需要的时间。本章中详细分析讨论 RANSAC算法并且对其进行了改进。为了保证解的置信度需要一定的迭代次数。我们的算法在保证置信度的前提下减少了这个迭代次数,也就是说同时减少了抽样数和模型参数检验的时间。 在基于 RANSAC 求解基础矩阵的过程中,我们用当前取得的内点数量来更 新试验循环次数,可是却没有使用这个内点集合中的元素,不得不说是一种浪费。本章在基于当前内点集的前提下,提出了加权鲁棒估计算法来提高估计的精度。针对复杂的模型参数,提出了分层鲁棒估计算法,解决了方位变动较大的图像带来大的初始参数估计的困难,同时有效地提高了计算效率。 4.1 RANSAC 的详细分析及改进 4.1.1 算法分析 计算试验次数时有两个默许的假设,用这两个假设来保证 RANSAC 解的置信度为1−η0。 假设 1(A1)一个全是内点的样本所产生的模型和所有内点相一致。 假设 2(A2)至少被一个外点所污染的样本得出的模型有比较小的支持。 设P是大小为m的没被污染样本随机从N个数据点的集合U中被选择的概率 ⎛I⎞⎜⎟m−1I−j⎜m⎟⎠=⎝m ≤ε (4.1) P(I)=∏⎛N⎞j=0N−j ⎜⎟⎜m⎟⎝⎠其中ε是内点率ε=I/N。内点数目I是预先不知道的。设Γk是第k个样本得到的假定模型的最大支持,Ik=|Γk|。当找到一个更好模型的可能性在一个阈值之下时,也就是错一个大小为|Γ*|≥Ik的内点集合Γ*的概率 * * * * η=(1−P(Ik))k (4.2) 小于一个预先定于阈值η0时,采样过程就终止[59]。为了满足η≤η0所需要的样本数目为 * kη0(Ik)= * ln(η0) (4.3) * ln(1−P(Ik)) 假设 A1 用于式(4.2)。根据这个式子,一个好模型没有被找到,一个完全由 25 内点组成的样本没有被取到的概率为1−P(I)。假设 A2 保证了基于支持的大小来区分正确解和错误解是可行的。 如果A1和A2有效,RANSAC算法将根据等式(4.3)的预测来运行。如果其中一个或者是两个假设不成立,解的质量就会受到影响而且运行时间会增加。上述的假设不仅仅是理论情况,图4.1展示了线的估计情况,其中分别假设A1或A2不成立。 假设A1在图4.1(a)中不成立。由于被测量数据的噪声,即使一些全是内点的样本所得出的模型也不能和所有的内点一致。这就减少了所得内点数目I*,并根据式(4.2)和(4.3)导致样本的数目增加(运行时间更长)。 (a) (b) 图4.1 点的格局的两个例子,导致 RANSAC 输出非最优解 Fig.4.1 Two situation examples in RANSAC 在图4.1(b)中,数据点集合包括一片彼此很接近的点。这样的一群点和无限个模型(此处为直线)都一致,叫做退化结构(degenerate configuration)。由一个外点和一个退化结构(如图4.1(b))中的点所确定的直线是条件很好的并且有很多数据点支持。这样的采样不符合假设A2。此外,由于解的条件很好,因此也很难识别这种情况。同样,由于图4.1(b)中退化结构的存在,假设A1也不成立。退化结构中的两个点确定的直线是病态的并且方向任意,结果导致RANSAC输出了一个包括退化结构的错误的模型(一条直线)。 为了让RANSAC对于不成立的假设更加鲁棒,在这里提出并讨论两个方法。并不是完全抛弃以前的假设,而是用两个弱化的假设来代替。 假设3(A1')即使存在噪声,由所有内点组成的样本得到的模型和最优模型接近。对模型参数进行局部优化,可以得到被所有内点支持的最优模型。 由于退化结构导致假设A2不成立。数据点的维数增加时,退化结构和不正确模型相一致的可能性会变小,除了样本中所包括的退化结构中的数据点。但增加 26 维数也会导致计算量加大。 假设4(A2')至少包括一个外点且其中没有退化结构中的点,这样的样本得出的模型有比较小的支持。 4.1.2 第一次成功的时间 取到一个没被污染样本的概率即等式(4.1),经常近似用P(I)=εm来代替它。如果有放回地做采样,或者是数据点无限多(也就是limN→∞P(εN)=εm),这个近似就是精确的。N很大时,等式P(I)=εm是一个很好的近似。 在假设A1下,找到与所有内点相一致的最优模型参数的概率和取到没被污染样本的概率P(I)相等。由于样本是互相独立的,在第k次取样得到第一个没被污染样本的概率符合几何分布 Pk=P(I)(1−P(I))k−1 (4.4) 在取到第一个没被污染样本之前所取随机样本的平均数目,也就是平均值 [31] E(k)=∑∞ k=1kPk,为 11k=≈m (4.5) P(I)ε符号kη0表示当I个内点在U中时,保证解的置信度为1−η0所需样本数目,也就是说kη0(I)=ln(η0)/ln(1−P(I))。在第一个没被污染样本之前取得的样本平均数为k,保证解的置信度为1−η0所需要的样本个数为kη0,观察k和kη0之间的联系是一件很有趣的事情。由不等式e−x≥1−x得到−x≥ln(1−x),代入上面的式子可以得到 kη0≤ 最终得到 ln(η0) (4.6) −P(I) k≤kη0≤−ln(η0)k (4.7) 需要指出的是,−x≈ln(1−x)在x是小正数时成立。由于P(I)≈εm,近似等式 kη0≈−ln(η0)k (4.8) 对于小的εm是成立的。 接下来讨论的问题是:在RANSAC算法终止之前所取的好样本平均个数是多少?在概率1−η0下,直到第kη0个样本,平均才第一次找到正确的内点集合。我们假设任何和内点集合Γ不一致的模型都有相对小的支持,因此不会终止算法。那么,在kη0个步骤平均k个样本之后,当取到没被污染样本时,算法立刻终止。实际上是: 在算法终止之前所取得样本平均数目k =(1−η)k+η(k+k)=k+ηk≈(η−ln(η))k (4.9) k0η00η0η0000 27 我们从中可以看出,对于η0=0.05,在解达到95%置信度之前,平均可以得到少于3个没被污染样本。 4.1.3 算法所需时间 设从原始数据中随机抽取一组抽样需要的时间为ts,由一组抽样数据计算模型参数需要的时间为tc,用一个数据检验一个模型参数需要的平均时间为t,则用N个数据检验需要的时间为Nt。则 RANSAC 算法所需计算时间为: T=kη0(ts+tc)+kη0Nt (4.10) 其中kη0(ts+tc)为抽取M组抽样并计算模型参数需要的时间,kη0Nt为kη0个模型参数检验需要的时间。从上式中可以看出 RANSAC 算法的速度主要取决于两个因素: ① 要选择的抽样数kη0,而kη0和模型复杂度(计算模型参数需要的最少数据量)、数据错误率、置信概率有关。 ② 模型参数检验需要的时间,这和参与检验的模型参数数量以及总的数据量 N有关。 表4.1 RANSAC 算法的计算时间分布 Table4.1 Computing time in RANSAC MNt M(ts+tc)均值 M=20 0.07 M=32 0.11 M=54 0.175 M=92 0.295 N=25 0.131 0.160 0.281 0.491 N=40 N=99 0.16 0.39 0.25 0.591 0.43 1.072 0.731 1.853 N=125 N=156 0.461 0.611 0.761 1.12 1.231 1.532 2.183 2.573 N=237 N=347 0.882 1.592 2.274 4.156 1.32 2.133 3.285 5.649 在RANSAC算法中,ts和tc一般都是比较小的,而一个模型参数的检验需要计算每一个原始数据对该模型参数的误差,并计算误差的方差,因此,Nt是一个相当长的时间,将占用RANSAC算法的大部分计算时间。由于ts、tc和Nt都与具体的模型参数估计有关,在不同的模型参数估算中,这些值都不一样。下面以基础矩阵估计为例,测量RANSAC算法的时间分布。如表4.1所示,实际测量了基础矩阵估计中,不同的M和N下MNt和M(ts+tc)的值(表中时间单位为秒)。从表 4.1中我们可以看出,当N较小时,用于模型参数检验的时间MNt是抽样抽取和模型参数估计时间M(ts+tc)的1.6倍,当N比较大时,MNt是M(ts+tc)的18倍,模型参数的检验过程占据了RANSAC算法中大部分的计算时间。 从上面分析可以得出,要提高RANSAC算法速度,主要从这两个方面入手: 28 想办法减少抽样数kη0,或者减少模型参数检验需要的时间。 4.1.4 算法改进 如果我们能够利用当前内点集合进行抽样,尽快得到最优解,找到最大内点集合,那么,就有可能减少抽样数。事实上,这个问题的本质是:能够更快找到更多内点的算法就是更优的算法。 所谓当前内点集合,指的是这样一个集合,它记录着支持当前最好模型的那些对应点。当然,它是根据结果常常在更新的。 主要思想是,利用当前内点集合,在对整个数据集进行采样的过程中,穿插进行对当前内点集合的采样,换句话说就是有的时候仅仅从当前内点集合中获取样本,有的时候从整个数据集中获取样本。我们对当前内点集合取多次而不是只取一次,是因为在实际中常常不符合RANSAC的假设A1,因此提出A1’。基于A1’,我们可以对当前内点集合取多次样本选择最优的,以此优化最终解。 直到当前内点集合中的内点概率大于整个数据集合的内点比率ε时,这个当前内点集合才能算有意义。 在4.1.2节的最后我们得出结论,对于η0=0.05,在解的置信度达到95%之前,平均可以得到少于3个没被污染样本。那么在kη0/3的时候,平均应该取得接近一个没被污染的样本,也就是说近似k=kη0/3。这个时候,根据RANSAC的假设,当前内点集合中的每个点是内点的概率为1−η0。其实并不需要这么高的概率,它只需要大于ε即可。但是由于ε是不可事先预知的,我们需要寻找一个替代品。而当前内点比率(内点集合大小/总数据集中数据点的数量)又常常过小。由于 RANSAC算法在内点比率太少的时候,不能够得出正确的结果,所以如果ε太小,是没有意义的。那么,我用50%来代替这里的ε。 所得的内点比率是随着计算逐渐增大的,选择一个可能比当前ε大的50%,是因为所谓的“kη0的1/3”这里的kη0在计算的过程中逐渐减小,所以最初所取得的kη0通常都会大于最后的kη0。 因此得到 kη0×ε3(1−η0) 时,当前内点集合优于整个数据集。用50%代替ε可得 kη0 (4.8) 6(1−η0)这是理论上当前内点集合较优的实验次数,但是并不能完全保证它的优秀性,为了减小RANSAC的假设不成立的情况以及小概率事件对本算法造成的影响,在整个数据集和当前内点集合中交替进行选择,而不是完全依赖当前内点集合。 29 算法如下,和原始的RANSAC算法相比,修改了假定产生步骤中的a,加入a'以及检验步骤b中Ik的存储。 RANSAC改进算法 输入:U,Δ,η0 **输出:θ,I *重复,直到在第k步所得模型的支持大于Ik−1的概率η(式(2.24))小于阈值η0: 1. 假定产生 如果k>kη06(1−η0) '则交替做a和a: a 从BIk中随机选择大小为m的随机样本 a' 从U中随机选择大小为m的随机样本 否则 a 从U中随机选择大小为m的随机样本 b 估算适合样本的模型参数θk 2. 检验 a 计算模型的支持Ik=J(θk) b 令Ik=max(Ik−1,Ik),并且如果Ik>Ik−1(也就是找到一个新的最大值),然后存储当前模型参数θk及Ik,Ik存为BIk ****4.1.5 实验结果 图4.2(a) SIFT求出的两幅图像中的对应点,内点率为52% Fig.4.2(a) keypoints worked out by SIFT, correct rate 52% 30 图4.2(b) Harris角点提出,灰度相关匹配得到的对应点,内点率为 52% Fig.4.2(b) keypoints worked out by Harris, correct rate 52% (a) 本算法采样统计图 200150采样次数100500159131721252933374145内点比率 (b)RANSAC 算法所得采样次数统计图。 图 4.3 图4.2两幅图在实验中——采样次数统计图, 横坐标为内点比率(%),纵坐标为采样次数 Fig4.3 Samples cartograms in two experiment 31 可以看到在图4.3中,所采样本得到的模型支持率为 10%(图中横坐标)的,一共有大约108(图中纵坐标)次。图4.3(b)中,所取样本得到的模型支持率为10%的,一共有大约165次。 图 4.4 视角有较大变化的两幅图匹配结果,使用SIFT描述符,剔除外点 Fig.4.4 Correspondence result by SIFT 图4.5 变化较小的两幅图片,使用Harris提点,灰度相关匹配,剔除外点 Fig.4.5 Correspondence result by Harris 表4.2 图 4.2(a)和4.2(b)的实验结果,运行程序 100 次取平均值 Table4.2 100 experiment results of Fig4.2(a) and Fig4.2(b) 所用方法 平均采样次数 最大采样次数 最小采样次数 内点比率 RANSAC 425 867 235 55% 本节算法 302 504 235 56% 对于图4.2和图4.5,灰度相关比SIFT的效果好,因为SIFT对于整幅图像中的兴趣点相匹配,这点对于变化大的图像对来说非常必要,但是对于变化小的图片却是画蛇添足。SIFT算法抗缩放、抗旋转等特性在这类图像中不能得到表现, 32 它在抗视角变换方面却很薄弱。灰度相关只在一个小窗口内搜索匹配点,因此对于变化比较小的图片表现很好。从图4.3可见,原始的RANSAC算法由于完全随机取样,在内点比率很低的部分做了很多次采样,而在30%以上的部分却做的非常少。本节算法对好样本进行多次采样,更容易找到最优解。表4.2给出对于图 4.2的采样结果,表4.3给出其余图的改进结果。其中图4.4用SIFT,图4.5用Harris提点以及灰度相关匹配。 表4.3 其它图片的实验结果,运行程序 100 次取平均值 Table4.3 100 experiment results of other images 图片 图4.4 所用算法 平均采样次数最大采样次数最小采样次数 5596 内点比率 35% RANSAC 14751 23749 本节算法 9274 16774 5596 36% 图4.5 RANSAC 34 84 18 76% 本节算法 30 78 16 77% 从表中可以看出对于不同内点比率不同的匹配方式,本节算法均有良好表现。保证正确率的同时,能够有效缩短运算时间。在内点比率较小,需要采样次数较多的情况下表现尤其优秀,其运算时间缩短为原来的63%,采样次数减少了5477次。 4.2 加权鲁棒算法 图像配准可以分为基于灰度特征和基于特征点匹配两种基本方法。前者主要取决于图像的灰度统计特征,将图像的局部相互关联,适用于在灰度分布上有明显线性特征的图像。后者主要研究图像的点特征,适用于具有明显特征的图像。传统的图像配准方法将以上两种基本方法分裂开来,基于灰度统计特征的方法加大了算法的计算量,基于特征点匹配的方法忽视了特征提取过程中的误匹配,而单纯的采用RANSAC算法去除噪声点,不能使得精确的匹配点在配准过程中发挥显著作用,且去噪效果并不是很理想。本算法将二者有效地结合起来,通过当前内点得到两幅图像之间的几何变换关系,并通过比较特征点邻域内的图像灰度信息在迭代过程中不断修改误差权值,求出与灰度和余差有关的目标函数,从而极大地减少外点对最终配准效果的影响。 4.2.1 几何变换关系 为了实现同一场景的图像配准,首先必须确定图像之间的空间对应关系,即几何变换关系。所以,图像之间的配准问题就转化成了确定该模型的参数问题。 33 目前常用的投影变换关系模型有平移变换模型、刚性变换模型、仿射变换模型及投影变换模型等。八参数投影变换模型是图像变换的一般表达模型,如式(1)所示。其中,m2和m5表示两图的平移量,m0,m1,m3,m4表示尺度和旋转量,m6和m7表示水平和垂直方向的变形量。(ui,vi,1)T和(ui,vi,1)T分别表示两幅图中的特征点,一般采用非线性最小二乘法来拟合该参数模型。 ⎛ui'⎞⎛m0m1m2⎞⎛ui⎞⎜'⎟⎜⎟⎜⎟ ⎜vi⎟=⎜m3m4m5⎟⎜vi⎟ (4.9) ⎜⎟⎜1⎟⎜1⎟⎟⎜1mm67⎝⎠⎝⎠⎝⎠ ' ' 4.2.2 算法改进 通过SIFT算子确定了初试匹配点以后,由于噪声点的存在不能得出最佳的内点集。然而采用RANSAC算法只是在一定的匹配误差范围以内选出内点从而去除噪声点,却不能使得精确的匹配点发挥显著作用。而同一个场景中,从不同角度采集的两幅图像在灰度值的变化上差异很小,所以本文提出了一种新的鲁棒估计算法。假设图a经过某一几何变换,变成了图a',如图4.6所示。 (a) 图a (b) 图a' 图4.6 两幅场景图像 Fig.4.6 Two scene images (c)图 b (d) 图a’和图b的对应特征点 34 图4.6(a)中与图4.6(b) 中的特征点虽然不是同一坐标,实则为同一组点,如图 4.6(d)所示。如果是匹配点对是正确的且几何变换关系参数能够满足两幅图像的配准,则特征点周围的信息应该相近。将这些点与图b中的特征点对应,分别取图 a'和图b中对应点周围的一个小邻域,取各自邻域内各像素的灰度值做一个差,得出的结果取绝对值。比如取点周围的3*3的正方形邻域,如图4.7所示。 图4.7 3×3的正方形邻域 Fig.4.7 3×3square neighborhood 分层鲁棒估计算法 输入:U,Δ,η0 输出:θ,Ibest 重复,直到在第k步所得模型的支持大于Ik−1的概率η(式(2.24))小于阈值η0: 1. 假定产生 **a 从U中随机选择大小为m的随机样本 b 估算适合样本的模型参数θk 2. 检验 Q*εia 计算模型的支持Ik=J(θk),并记录下目标函数dk=∑的值 Iki=1c 令dk=min(dk−1,dk)****Ik2, Ibest=Ik **b 令Ik=max(Ik−1,Ik),如果Ik>Ik−1(也就是找到一个新的最大值),然后存储当前模型参数θk及Ik,Ik存为BIk L=∑|aij−bij|,(i=1,2,…9) (4.10) 将两个邻域内对应的像素的灰度值一一做差。其中,必定有最小的差和最大的差,我们认定最小的那个点或者那几对点是最有效的点,并定义一个阈值T,如果大于T则认为含有不是相交区域的匹配点。权值的定义 35 Q= M−N (4.11) M−L 其中,M为差异最大的绝对值之和,N为差异最小的绝对值之和,L为任一对点的领域像素灰度值差异。定义目标函数 Q×εi∑ i=1k (4.12) k 2 在迭代过程中求出使目标函数最小的内点集,则图像匹配效果最佳。其中, εi2=|mi'TFmi|2为当前内点集合中各点残差。这样做的目的是使不准确点对基础矩阵估计的影响效果小,而准确点的影响效果大。 4.2.3 实验结果 用本文的算法对实际场图像进行处理。图4.8(b)是两幅航拍图像初始特征点匹配效果,从图中可以看出有很多噪声点对存在。图4.9为这两幅航拍图用RANSAC算法和用本算法得出的最终匹特征点的匹配效果,可以明显地看出RANSAC得出的内点对中有些匹配是错误的,这是由于RANSAC算法根据阈值来确定是否为内点。在规定相同内点情况下,本算法极大地消除了错误点对图像的影响。从实验结果可以看出,该算法得出的内点更少,说明找到了一组更为精确的匹配点对,排除了不精确匹配点对估计基础矩阵的影响。从式(4.9),可以知道,只要给出足够的匹配点对,少量的点便可以得出最终的几何变换关系参数,所以少而精确的内点集是得出精确变换关系的关键。由于算法的步骤是随机的从初始匹配点对中并选出目标函数最小的内点集,所以得出的最最终结果会有不同的结果,但总体比较稳定。图4.10给出本算法用于图4.8的两幅航拍图片配准的一百次实验结果概率分布。图4.11和图4.12为采用本算法图像配准的最终效果。从实验结果中可以明显得看出在场景相同的、光照效果变化较小的情况下,该算法具有良好的鲁棒性。 (a)两幅航拍图像原始图片 (b)两幅航拍图像特征点匹配 图4.8 两幅航拍图像初始特征点匹配效果 Fig.4.8 Initial matching of two aerial images 36 (a)用RANSAC算法得出的最终匹配结果 (b)算法得出的最终匹配结果 图4.9 经典RANSAC算法与本算法得出的最终匹配效果 Fig.4.9 Results of RANSAC and improved weighted estimating algorithm 图4.10 加权鲁棒算法一百次实验的结果概率分布 Fig.4.10 Cartogram of 100 times experiment 图4.11 两幅场景图的配准效果 Fig.4.11 Registration of Fig4.7 37 图4.12 图像配准的最终效果 Fig.4.12 Registration of Fig4.10 表4.2 内点个数结果比较(括号内是该数目发生的概率) Table4.2 Comparison of RANSAC and weighted estimating algorithm 航拍图片实验比较 SIFT初始匹配点对数 采用灰度比较的鲁棒估计算法 一般的RANSAC去噪声点算法 117 117 不同去噪算法获得的内点个数 (百分率) 6(60%) 27(53%) 4.3 分层鲁棒估计算法 本算法使用了改进的RANSAC算法来消除局外点对全局变换参数估计的影响,而在初始参数估计问题上,则采用分层渐进匹配的机制及梅林变换,从而有效地解决了方位变动较大的图像带来大的初始参数估计的困难,同时有效地提高了计算效率。 4.3.1 分层鲁棒估计算法 对于数值计算而言,几乎所有的非线性最优化问题都面临初始值的估计问题。由于待估计的参数个数为8,即使可以给出一个合理的参数集范围,并可对其采用启发式搜索算法(例如遗传算法)进行估计,其运算量也将是十分惊人的,而且极易陷入局部最优。本文采用一种新的分层渐进方法来解决此问题。 由(4.9)可知,在参数集m={m0,m1,m2,m3,m4,m5,m6,m7}中m2和m5参数体现平移变化,m0,m1,m3,m4参数反映了水平和垂直尺度以及旋转因子,m6和m7体现了投影变换在水平和垂直方向的变形因子。对于实际拍摄的图像来说,通常由于图像的m6和m7参数贡献较小,其在初始值的估计中可以忽略,即m6=m7=0, 38 因此,模型可以简化为 ⎡m0 g1(m)=⎢⎢m3 ⎢⎣0 m1m4 0 m2⎤m5⎥⎥ (4.10) 1⎥⎦ 该变换为6参数的仿射变换模型,由于其忽略了水平和垂直尺度变化因子的差别,对于初始值估计不会带来太大的影响,因此,对g1做进一步的简化和近似,即得到如下相似变换模型 ⎡hcosθ g2(h,θ,a,b)=⎢⎢hsinθ⎢⎣0 −hsinθhcosθ0 a⎤ b⎥⎥ (4.11) 1⎥⎦ 式(4.10)的4参数全局变换模型包含了尺度因子、旋转因子和平移变换因子,对于初始值估计来说,已具有足够的近似精度。为了得到式(4.10)的4个参数,可以采用鲁棒性较高的梅林变换来估计。梅林变换实际上是相位相关法的扩展,设两幅图像f1,f2满足平移变化,即f1(x,y)=f2(x−a,y−b),其傅立叶变换F1和F2满足如下关系: F(u,v)*F2(u,v) 1=e−j2π(ua+vb) (4.12) |F1(u,v)*F2(u,v)| * 其中符号“*”表示复数共轭,对式(4.12)右边进行傅立叶反变换即可得到一个在 (a,b)处的冲击函数,由此可以方便地获得平移值。如果两幅图像之间满足式(4.12) 给出的变换,则它们傅立叶变换的幅度M1和M2满足如下关系: M1(logρ,θ)=M2(logρ−logh,θ−θ0) (4.13) 221/2−1 ρ=(x+y),θ=tan(x/y) 对M1和M2实施式(4.12)中的相位相关法,而根据式(4.13)可获得参数h和θ0,然后对原始目标图像进行反向尺度和旋转变换,即可得到一幅新的图像f2,最后对f1和此新图像f2进行相位相关,即可获得参数a和b。 为了进一步提高算法的效率和精度,可引用多分辨率参数估计策略,即首先对原始图像采用高斯平滑和亚采样进行多分辨率金子塔分解,对于金子塔的最高层,可采用彷射变化模型式(4.10),其初始参数估计可用上面的梅林变换来获得;然后用L-M算法来获得收敛参数集m(0)={m0,m1,m2,m3,m4,m5};在金字塔的中间层,可仍然采用仿射变化模型,其初始参数为上一层计算出的更新参数集 (k−1)(k−1)(k−1)(k−1)(k−1)(k−1) m(k)={m0,m1,m2,m3,m4,m5} 然后同样采用L-M算法来获得收敛参数集;在金字塔的最底层,即最高分辨率一层,则采用投影变换模型,其初始参数中m0,m1,m2,m3,m4,m5的更新规则和中 ∧ ∧ 39 间层一样,而m6=m7=0,同样使用L-M算法来获得特定精度要求的参数集。通过上述方法计算出图像之间的全局变换参数后,就可以以其中一幅图像作为参考图像,将另一幅图像通过变换式(4.9)得到一幅新的变换图,然后对这两幅图像进行配准。 4.3.2 实验分析 (a) 原始图像1 (b)原始图像2 (c)拼接效果 图4.13 城市房屋航拍原始图及其拼接效果 Fig.4.13 Aerial images and stitching image 为了验证本文算法的效果,用一些典型的航空图片进行了测试。图4.13是城市公路线航拍图像的拼接。原始图像由于在不同的时间段拍摄,因此在重叠区的某些位置存在着教强的局部噪声和内容变化,若采用传统的基于特征点的匹配方法,将会产生较大的瑕疵,并且要引入适当的初始参数估计方法,而采用本文的算法,则可得到清晰的配准效果图(见图4.13(c)),运算时间大约为2S。图2为城市房屋航拍图,两幅原始图像在尺度上有一定的差异,如果采用传统方法将不能 40 获得正确的结果,而采用本文提出的算法,可在4S左右,使全局参数获得收敛。一系列的实验表明,采用本文算法能够支持在重合区域内有50%左右的局外点以及两幅图像尺度变动较大的情况下,也能得到较好的效果。对于空间位置变化较大的图像来说,则首先采用了分层渐进的方法进行了合理的降维处理,然后利用 Mellion相位匹配法来获得初始估计值,在此基础上再利用L-M非线性最小化方法来求得精确的几何变换关系,从而获得了高精度的拼接图。 41 5 图像配准系统的设计与实现 5.1 系统的设计思想 系统设计作为软件工程领域的关键性步骤,它的作用非常突出,良好的系统设计可能起到事半功倍的效果,而明确系统设计的主要知道思想,将是需要首先解决的关键性问题。 在图像配准技术尚未达到完全成熟阶段的今天,算法的改进与创新仍旧是科学研究的主要方向,而算法的“改进创新——测试验证——改进创新”是一个反复迭代的过程,这中间存在大量的机械的重复工作。在改进与创新的过程中需要对算法的源代码作大量的修改与调整,这会使整个软件始终处于迭代开发的过程中,这就对软件的设计提出了很高的要求,针对此类问题,本文将图像配准系统定位与实验室的图像拼接研发使用,可作为算法验证的自动测试平台。在深入挖掘软件工程思想的前提下,将“模块化”思想贯彻始终,有针对性的把软件工程领域较为流行的“插件式”结构引入系统当中,使系统变得更加灵活,可扩展性更强,算法验证的效率也大大提高。 5.2 系统技术流程介绍 开始图像采集特征提取特征匹配去噪处理几何变换关系估计图像融合结束 图5.1 系统技术流程框图 Figure 5.1 System flow diagram 5.2.1 图像采集 图像可以通过特殊的摄影设备(全景照相机,带鱼眼镜头的相机)直接获得,也可通过普通相机、数码相机拍摄多个图像序列进行制作。由于全景照相机和带鱼眼镜头的相机价格相当昂贵,故本文中主要采用普通的数码相机作为拍摄工具。 通过接口程序将照相机拍摄的图片导入,并在用户界面上进行动态显示。用户人工把导入的图片进行编号排序,采集模块则把多张图片的灰度信息、像素信息、格式信息依次反馈给用户。同时,将这些信息传送给特征提取模块。 5.2.2 特征提取 将从图像采集模块得到的图像数据作为原始图像数据,利用改进的SIFT算子对该图像数据进行特征提取,将多幅图像的特征点位置信息、尺度信息、方向信 42 息以及模值信息保留,并传送给特征匹配模块,为特征匹配做准备。 特征提取是图像配准技术中的关键步骤,且要求较高,不仅要求有较高的检测效率也要求有良好的仿射不变性。 5.2.3 特征匹配 将从特征提取模块得到的特征点信息进行保存,利用编号顺序将图片两两进行初始匹配.。我们在原有的SIFT匹配算法上进行改进,使图像的特征提取时间大幅度的缩短,在第二章第三节中有详细的说明。 在系统中,初始匹配的结果存放至一个2×n的矩阵(如式5.1),矩阵中保留了特征点的位置信息。 ⎢ ⎡m1m2…mn−1mn⎤ (5.1) ⎥ ⎣m1'm2'…mn−1'mn'⎦ 特征的初始匹配过程结束时,将每组匹配耗时显示给用户,以便达到检验算法的效果,同时将匹配结果传入去噪处理模块。 5.2.4 去噪处理 由于噪声的存在,在特征点初始匹配结果中仍然有错误匹配的现象,这将极大影响图像配准的效果。为此,我们添加去噪处理模块来减少噪声点影响。 将从特征初始匹配模块传入的数据进行处理。本文使用基于基础矩阵的图像配准算法,目的是为了去除匹配中的异常数据和避免阈值难以确定的问题。在去除异常数据之后将匹配点保留为式5.1的形式,再对其进行加权鲁棒估计算法,是精确的点能发挥更大的作用。在加权鲁棒估计的迭代过程中,利用改进的RANSAC算法可以使采样次数大大的减少,达到了匹配精确并且耗时少的双重效果。 去噪处理模块将将匹配点在两幅图像之间用红色的线连接,同时将迭代次数显示出来,方便用户观察算法效果。最后,把结果传输给变换关系参数计算模块。 5.2.5 变换关系的参数计算 将从去噪处理模块得到的匹配结果进行计算已得到各种变换参数。我们使用 SVD分解可以方便地得到两幅图像的平移变换关系参数、刚性变换关系参数、仿射变换关系参数以及投影变换关系参数。 为了在方位变动较大的情况下达到配准的目的,我们使用分层鲁棒估计算法来解决初始参数估计难的问题。 该模块可以输出各种变换模型的参数值,并将最终的投影模型参数传入图像融合模块。 5.2.6 图像融合 图像融合模块通过得到投影变换参数,将一幅图像的坐标变换到另一幅图像中进行融合。 43 图像融合是图像拼接中调整配准后图像的像素值的处理过程,它使图像在拼接后不能看出拼接的痕迹,同时融合后的图像要尽可能地保持图像的质量不被改变。 也就是说通过图像融合,必须达到两个目的: ① 使图像间的接缝在视觉上不可觉察; ② 尽可能地保持图像的质量。 为消除接缝,图像融合必须调整输入图像像素的亮度值。就受影响的输入图像像素范围而言,图像融合算法可分为两类:一类是局部亮度调整的图像融合,只在接缝的邻接区域内进行亮度的局部调整,这样只有与接缝相邻区域的像素的亮度在调整中受到了影响。另一类是对图像的整体进行亮度调整,不仅重叠区域的像素需要调整亮度值,重叠区域以外的区域的像素也需要进行亮度调整。本文主要考虑局部亮度调整的图像融合算法,其中常用的有线性插值的图像平滑融合算法。 5.3 系统软件设计与架构 5.3.1 系统软件架构介绍 架构上分为三个层次:算法层,控制层和表示层。算法层与系统各自独立,在使用系统时动态加入到系统中来;控制层是对算法层的一些处理,如图片的导入、删除等等;表示层是通过一些窗体来展示一些数据。 主要的类有: Common类:提供特征提取算法的常用函数; Algorithm类:各种具体算法的基类; Open类:从硬盘中导入相应的图片; Reader类:把导入的图片进行读取操作,获得图片的一些进本信息; Macthing类:对特征点进行匹配; Stitch类:把图片进行拼接; Delete类:将导入的图片删除; Mainwindow类:系统的主界面类 TestResultDlg类:显示算法的测试结果,包括时间和特征匹配效果图。 44 ReaderMainwindowTestResultDlg表示层OpenMacthingStitchDelete控制层CommonAlgorithm 算法层图5.2 系统层次结构图 Figure 5.2 System architeture diagram 5.3.2 “插件式”结构 随着计算机技术的发展,软件体系结构正在发生着重大的变化,传统单一执行程序的体系结构已经不能适应当前软件产业大规模生产的需要。如何解决当前系统设计越来越复杂,对系统升级、更新要求越来越频繁的问题已成为当务之急。 插件式设计近年来非常流行,基于插件的设计好处很多:把扩展功能从框架中剥离出来,减低了框架的复杂度,让框架更容易实现。 纯虚基类AlgorithmSIFTRANSACimproved SIFTimproved RANSAClayered robustweighted robust 图5.3 “插件式”算法类图 Figure 5.3 Class graph of “plug-in” algorithm 5.3.3 系统实现 本文的实验是利用开源计算机视觉库LTI为基础进行开发的。它由一系列C函数和C++类构成,实现了图像处理和计算机视觉方面的很多基础性通用算法。而且源代码的编写简洁高效。 对于大多数的主流处理器而言,LTI的代码执行效率是非常高的,所以近年来在国外的图像处理相关邻域中被广泛使用,成为一种流行的图像处理工具。 本文系统的运行环境为:Pentium-4,3.0G CPU, 512M内存,操作系统为XP。 45 5.4 图像配准系统运行评测分析 图5.4 图像配准效果图 Fig. 5.4 Image registration results 在已经完成的图像配准原形系统上,按照系统的结构化要求,编码完成以往的经典的图像配准算法,并逐一进行测试,与本文提出的基于点特征的图像配准方法进行对比,即在相同的实验条件下,验证识别精度,速度等技术指标。以下为实验设计及结果。 在具体实验中,本文选取了图像配准中最主要的两个部分与经典的算法进行性能比较。 实验一:特征点初始匹配 将改进的配准算法与应用SIFT算法的配准算法进行比较,选取了30幅不同图像,针对不同的情况进行实验,部分效果及运算时间如下图表所示(匹配效率通过式2.6计算得出)。 匹配点对 匹配效率(SIFT) 匹配效率(改进算法) 完成用时(SIFT) 完成用时(改进算法) 校园图像 48 山脉图像 132 航拍图像 61 83.4% 91.4% 11.4s 2.1s 45.7% 36.1% 26.3s 3.7s 34.6% 51.4% 11.7s 2.4s 实验表明,改进算法在复杂环境下匹配效率不如SIFT算法, 但匹配时间大大缩 46 短, 有利于视觉处理的实时性, 同时在目标旋转不变性上具有一定的优势。对于视角变化不大、匹配数量要求不高的场合的实时性特点比较突出。 实验二:去噪算法 匹配点对 采样次数 (RANSAC) 采样次数 (改进算法) 平均内点比率 (RANSAC) 平均内点比率 (改进算法) 校园图像 48 56 42 80% 90% 山脉图像 132 140 108 84% 92% 航拍图像 61 79 53 87% 91% 在这个实验中我们将加权鲁棒估计的思想与该进的RANSAC算法结合使用。可以看出,改进的RANSAC算法可以大大缩短去噪过程的采样时间,同时加权鲁棒算法使得每次采样能迅速地获得内点,使得正确的匹配点能被容易地找到。 同样的,我们也分别对改进的RANSAC算法和经典RANSAC算法进行了单独比较测试实验。实验的对比结果已在4.1节给出。本文所提出的图像配准系统为算法测试提供了有效的平台,达到了对比效率的目的。 47 6 总结与展望 6.1 论文总结 图像配准是图像处理领域的一个基本问题,它是同场景的多图像分析比如信息综合、数据融合、三维信息获取以及差异检测等应用的基础。最早从70年代以来,人们就开始了图像配准方面的研究。进入新世纪以后,更是有了突飞猛进的发展,这期间也产生了大量的相关研究报道,也解决了不少实际问题。 基于特征的图像配准方法是图像配准方法中的一大类。通过对各类图像配准方法的研究,我们可以看到图像配准方法是依赖于图像本身的。也就是说,往往不同的图像配准方法都是针对不同类型的图像配准问题。到目前为止,尚不存在任何一种图像配准方法能适用于各种图像配准问题。而基于特征的图像配准方法相对来说往往是具有最强适用性的方法。尽管如此,许多基于特征的图像配准方法都需要一些附加的条件,这就大大降低了这些方法的适用性。另外,大多数基于特征的图像配准方法都具有较大的计算量,也使得他们很难应用于需要实时配准的领域。 因此,基于特征的图像配准方法研究的两个重要的目标是:一方面提高其有效性、快速性;另一方面也提高其匹配速度与鲁棒性。通过分析可以得出要达到以上两个目的关键是解决特征提取和特征匹配的问题,因此本文做了主要工作有以下几个方面: 主要工作有以下几方面: ① 总结当前的主要图像配准方法的原理和缺点的基础上,分析和比较了多种特征点提取方法,改进了SIFT算法提取特征点,提高了特征点的稳定性和图像配准的整体速度。 ② 在估算内点的过程中,引入了基础矩阵来估算残差。简要的介绍了 RANSAC算法的一些扩展算法。提出了基于基础矩阵的鲁棒估计算法通过实验证明得到了缩短配准时间和增强配准精度的效果。 ③ 根据当前内点集合计算的思想,并在这一思想指导下,改进了RANSAC算法。通过构造与灰度有关的目标函数,给出了一种高精度估计内点的鲁棒算法 —加权鲁棒估计算法。 ④ 针对复杂的变换参数模型,提出了分层鲁棒估计的思想,有效地解决了方位变动较大的图像带来的初始参数估计的困难,同时有效地提高了计算效率。 48 6.2 未来工作展望 图像配准是一个非常广泛的图像处理问题,它涉及到很多方面的技术。针对不同领域的应用,图像配准有着不尽相同的要求和处理方法。在这种情况下,对配准过程进行稳定性评估就变得比较困难,目前很多算法的优劣都是用目测评估的方式,只是定性的判定它的表现,条件数所具有的定量方式,使得稳定性评估成为可能。不变特征的研究已经相对成熟,本文转变思路从匹配阶段的不变性进行考虑,也为往后的不变性研究提供了一种思路。另外,随着更复杂问题的出现,对配准精度的要求越来越高,这就需要更优良的匹配准则,能适应多种错误匹配对的存在。 下一步的工作可以在以下几个方面展开: ① 算法的适用性:本文提出的基于当前内点灰度的加权算法对光照很敏感,在不同光照强度下采集的两幅图像效果不理想。针对各种不同类型的图像,如何提出一种适用性强的算法,是图像处理领域面临的挑战之一。 ② 评估特征点的准则:目前,各类特征点提取算法已经层出不穷,如何更有效的利用起这些算法,就要对所提取的特征点进行一个稳定性评估,特征点提取算法的千差万别也使得稳定性评估成为一个比较困难的问题,建立一个统一的框架是目前急需的。 ③ 改进后的RANSAC算法在效率上仍有很大的可为空间。可以考虑与 PROSAC算法结合,将效率进一步提高。 49 致 谢 在此论文完成之际,首先向我的导师杨丹教授致以最衷心的感谢和深深的敬意!感谢他在我三年硕士学习期间对我学习和研究上的悉心指导、亲切关怀和热情帮助!杨老师严谨的治学态度、渊博的知识、无私的奉献精神给我留下了深刻的印象。所有这些将让我终身受益 在多年的学习生活中,还得到了许多领导和老师的热情关心和帮助,在这里向他们致以衷心的感谢。 感谢张小洪老师在学习和研究上对我的无私帮助,张老师认真负责的工作态度给我留下了深刻的印象,他对我的教诲使我受益匪浅。 感谢实验室的每一位师兄、师姐、师弟、师妹,他们是:李博、葛永新、徐晓明、孙向南、廖勇军、雷明、游磊、张莹、孙丽娟等等。在实验室里,大家互相帮助,互相学习,能与他们相识,是我一生的荣幸。实验室的每周讨论班,是我硕士学习生活的最重要组成部分。 感谢我的朋友们,是你们陪我在学校里度过了最快乐的时光。 感谢我的家人多年来对我学业的支持,是你们在我身后默默地奉献和支持着我,我才得以顺利完成学业。 最后衷心地感谢在百忙之中评阅论文和参加答辩的各位专家、教授! 王宇琛 二OO九年四月 于重庆 50 参考文献 [1] 倪国强, 刘琼. 多源图像配准技术分析与展望[J]. 光电工程. 2004.9, No.9:1-5. [2] 马颂德, 张正友. 计算机视觉—计算理论与算法基础(第一版)[M]. 北京:科学出版社, 1997. [3] 吴立德. 计算机视觉[M], 复旦大学出版社, 1993, 16-86. [4] Richard Szeliski. Video mosaics for virtual environments. IEEE Computer Graphics and Applications, 1996.16(2):22-30. [5] Brown, DG lowe. Recongnising Panoramas. Proceedings of IEEE International Conference on Computer Vision 2003.1218-1225. [6] David. G. Lowe. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004, 60(2):91-110. [7] J. L. Mundy, A. Zisserman. Geometric Invariance in Computer Vision[M]. Cambridge, MA: MIT Press, 1992. [8] Khalil. M. I, Bayoumi. M. M. A dyadic wavelet affine invariant function for 2D shape recognition[J]. IEEE Transaction Pattern Analysis and machine Intelligence. 2001, 23(10): 1152-1164. [9] 王小睿, 吴信才.遥感多图像的自动配准方法[J].中国图像图形学报, 1997.2(10):735-739. [10] 张祖勋, 张剑清.遥感影像的高精度自动配准[J].武汉测绘科技大学学报, 1998.23(4): 320-323. [11] 漆驰, 刘强, 孙家广. 摄像机图像序列的全景图拼接[J]. 计算机辅助设计与图形学报, 2001.13(7):605-609. [12] 陈永强, 王启付. 虚拟环境中变形图像拼接技术研究[J]. 华中科技大学学报, 2001. 29(1): 14-16. [13] Barbara Zitova, Jan Flusser. Image registration methods: a survey[J]. Image and Vision Computing 21(2003), 977-1000. [14] Richard Szeliski and Heung-Yeung Shun. Creating Full View Panoramic Imaga Mosaics and Environment Maps[C]. In Proc. Of SIGGRAPH 97, page 251-258. [15] 赵向阳, 独立民. 一种全自动稳健的图像自动拼接融合算法[J]. 中国图像图形学报, 2004, 9(4):417-422. [16] Richard.Hartley. Geometric Optimization Problems in Computer Vision[R]. Syseng, Australian National University. [17] C.J. Harris and M. Stephens. A combined corner and edge detector. In Proc. Of Alvey Vision 51 Conference, 1988, 147-151. [18] Z. Zhang, R. Deriche, O. Faugeras and Q-T. Luong. A robust technique for matching two uncalibrated images through the recover of the unknown epipolar geometry, Artificial Intelligence. Journal, Vol. 78, Oct 1995, 87-119. [19] Rousseeuw. PJ. Robust Regression and Outlier Detection[R]. New York: John Wiley & Sons, 1987. [20] G.W. Stewart. Error and Perturbation Bounds for Subspaces Associated with Certain Eigenvalue Problems[J]. SIAM J. Num. Anal. 1973, 15:727-764. [21] Ardeshir. Goshtasky, George. C. Stockman. Point Pattern Matching Using Convex Hull Edges[J]. IEEE Transaction on Systems. 1985, 15(5):631-637. [22] Faugeras.O.What can be seen in three dimensions with an uncalibrated stereo rig, Computer Vision-ECCV'92, Lecture Notes in Computer Science, Vol.588, Springer-Verlag, 1992:563-578. [23] Hartley.R.Estimation of relative camera positions for uncalibrated cameras, Compute Vision-ECCV'97, Lecture Notes in Computer Science, Vol. 588, Springer-Verlag, 1992: 579-587. [24] M.Fischler and R.Bolles. Random sample consensus: A paradigm for model fitting with applications to image analysis and automated cartography. CACM, June 1981, 24(6):381-395. [25] 曾庆业. 基于小波的特征提取及其在遥感图像配准中的应用[D]. 中国科学院遥感应用 研究所博士论文. 2004. [26] 葛永新, 杨丹, 张小洪. 基于小波多尺度积的图像配准算法[J]. 计算机科学, 2006, 33(2): 242-245. [27] Steve Seitz. Computer Vision :Edge Detection[R]. University of Washington 2002. [28] CANNY J. A Computational approach to edge detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1986, 8(6):679-698. [29] Haralick, R.M.Edge and Region Analysis for Digital Image Data[C]. Computer Graphic and ImageProcTT(T8, Vol. 12, No.1 , pp60 January.1980). [30] Harris C, Stephens M. A combined corner and edge detector[C], Fourth Alvey Vision Conference, 1981:147-151. [31] Xiaohong Zhang, Ming Lei, Dan Yang, Yuzhu Wang, Litao Ma. Multi-scale Curvature Product for Robust Image Corner Detection Curvature Scale Space[J]. Pattern Recognition Letters, 2007, 28:545-554. [32] Kitchen L, Rosenfeld A. Grey-level corner detection[J]. Pattern Recognition Letters, 1982, 52 3(1): 95-102. [33] 王玉珠, 杨丹, 张小洪. 基于B样条的改进型Harris角点检测算法[J]. 计算机应用研 究,2007,No.2:192-193,205. [34] WANG Yu-Zhu, YANG Dan, ZHANG Xiao-Hong. Robust Corner Detection Based on Multi-scale Curvature Product in B-spline Scale Space[J]. ACTA AUTOMATICA SINICA, 2007, 33(4):414-417. [35] SM Smith. SUSAN-A New Approach to Low Level Image Processing[R]. TR95Sms1c. [36] Dmitry Chetverikov. IPAN99 method[P]. Image and Patter Analysis Group, 1999. [37] Cordelia Schmid, Roger Mohr and Christian Bauchage. Comparing and Evaluating Interest Points[C]. In Proc. of the 6th International Coference on Computer Vision, pages 230-235, Bombay, 1988. [38] Koenderink. The structure of images[J]. Biological Cybernetics, 1984, 63-396. [39] 胡志萍. 图像特征提取、匹配和新视点图像生成技术研究[D].博士学位论文.大连理工大 学2005年. [40] D.Lowe. Object Recognition from Local Scale-Invariant Features[C]. In Procs of the International Conference on Computer Vision, pages 1150-1157, Corfu, Greece, September 1999. [41] P. Pritchett, A. Zisserman. Wide Baseline Stereo Matching. In Proc. 6th International Conference on Computer Vision, Bombay India[C], 1989, 754-760. [42] T. Tuytelaars, L. Van. Gool. Wide baseline stereo matching based on local, affinely invariant regions[C]. In The 11th British Machine Vision Conference, University of Bristol, UK, 2000, 412-425. [43] Haralick, R. Computer vision theory[J]: The lack thereof, Computer Vision, Graphics, and Image-Processing, 1986, 36, 372-386. [44] Zhuang, X, Wang, T. and Zhang, P. A highly robust estimator through partially likelihood function modeling and its application in computer vision[C], IEEE Transactions on Pattern. Analysis and Machine Inteligence, 1992,14(I): 19-34. [45] Hartley,R.I. In defence of the 8-point algorithm, Proceedings of the International Conference on Computer Vision[C], IEEE Computer Society Press, Boston, 1995, 1064-1070. [46] Huber, P.J, John Wiley & Sons, New York. Robust Statistics[C]. 1981, 30-320. [47] Chum, O. Two-view Geometry Estimation by Random Sample and Consensus.[PhD thesis]. Prague: CTU, Faculty of Electrical Engineering, Center for Machine Perception[J], 2005, 92-192. [48] 杨敏, 沈春林, 基于对极几何约束的景象匹配研究[J], 南京航空航天大学学报, 2004, 53 36(2), 235-239. [49] P.H.S.Torr and A. Zisserman. MLESAC: A new robust estimator with applicaion to estimating image geometry[J]. CVIU, 78, 2000, 138-156. [50] Chum.O and J.Matas.“Matching with PROSAC: Progressive Sample Consensus,” in CVPR, 2005, Vol(I):220-226. [51] Charles V. Stewart. MINPRAN: a new robust estimator for computer vision[J]. PAMI, 17(10), October 1995, 925-938. [52] B.Tordoff and D.W.Murray. Guided sampling and consensus for motion estimation. In Proc.7th ECCV, volume 1, Springer-verlag[J], 2002, 82-96. [53] A.P. Dempster, N.M. Laird, and D.B. Rubin. Maximum likelihood from incomplete data via the EM algorithm. Jounal of the Royal Statictical Society[J], 39, 1977, 185-197. [54] M.I. Schlesinger. A connection between learning and self-learning in the pattern recognition. Kibemetika[J], 2, 1986, 81-88. [55] D.Nister. An efficient solution to the five-point relative pose problem[J]. In Proc. Of CVPR, volume II, 2003, 195-202. [56] O. Chum and J. Matas. “Matching with PROSAC-. Progressive Sample Consensus,” in CVPR[J], 2005, Vol. I, 220- 226. [57] J.Matas and O.Chum. Randomized RANSAC with “T_d,d” Test Image and Vision Computing[J], 22(10), September 2004, 837-842. [58] D.R. Myatt, P.H.S. Torr, S.J. Nasuto, J.M. Bishop, and R. Craddock. Napsac: High noise, high dimensional robust estimation[J]. In BMVC02, volume 2, 2002, 458-467. 54 附 录 作者在攻读硕士学位期间发表的论文 [1] 杨丹, 王宇琛, 张小洪.计算机应用, 2009, 29(02): 427-429. 55 因篇幅问题不能全部显示,请点此查看更多更全内容