基于特征的图像拼接算法 .doc
文本预览下载声明
基于特征的图像拼接算法
封靖波 秦磊 苏志勋
(大连理工大学应用数学系)
摘要 本文提出一种基于特征的方法,通过特征点的梯度方向等信息,确定一组最佳的特征匹配,利用这一组数据给出两幅图像间变换矩阵的估计初值,再利用递归算法找到最终的精确变换关系,实验结果验证了算法的有效性。
简介
图像拼接是计算机视觉中的重要分支,它是将两幅以上的具有部分重叠的图像进行无缝拼接从而得到较高分辨率或宽视角的图像,这一技术首先应用于卫星照片的合成[1]。
应用最广泛的一类拼接算法是柱面与球面图像的拼接[4,5],经过球面与柱面变换后,问题就归结为确定每幅图像的平移量。但这一类图像对相机运动要求较为严格,即要求相机绕光轴旋转拍摄。对手持相机拍摄得到的照片,即相机运动不受限制,两幅图像的关系可近似归结为初等坐标变换,即平移、旋转和缩放的组合。设,为两幅图像的对应点,则二者关系由下式确定 (1)
其中是两点的齐次坐标,M是两图像间的变换矩阵,含有八个参数。一旦M确定,则两幅图像的变换关系即可确定。
本文给出了一种确定参数矩阵的方法。首先确定一定数量的特征点,利用特征点的匹配给出图像变换的估计初值,最后通过递归算法得到最后的变换。
1.特征提取
图像中的边缘和拐点是图像中显著的特征,其中包含了许多重要的信息。准确的提取图像中的特征是算法鲁棒性的前提和保障。本文首先提取图像的边缘信息,再从边缘点中抽取特征较强的点,即拐点,作为最后的特征点。
1.1边缘信息提取
本文需要用到的边缘信息包括,边缘点的位置、梯度方向及梯度值。首先利用Canny算法[6]提取图像的边缘。
对图像中任一点,规定向左和向下为正方向,则梯度方向由下式得到
其中,为适当整数,使落在区间内。
梯度值-由下式给出
1.2 边缘方向分类
上面得到的在内,取值复杂且不是整数,不利于进一步的处理。因此,将按为区间长度进行归类,即,当,则为整数且,这样,我们就将边缘点的方向归为8类,便于计算和节省时间。
1.3 提取拐点
拐点是图像边缘中的点,在它的邻域内,图像的边缘方向发生较大的变化,如边缘上的折点和三叉点等。
根据上面计算出的边缘点的梯度方向,可以从图像的边缘点中提取出拐点。
2 计算匹配的特征
2.1 可能的匹配点
得到了两幅图像的拐点,我们就拥有了两组待匹配的特征点,每一特征点包含梯度方向和梯度值的信息。
对于分别属于两幅图像中的两点,他们的相似程度由二者的梯度方向和梯度值的相似度共同决定。分别记二者为,则,
其中分别为两点的梯度方向的归类值,见1.2。,分别为两点的梯度值,与越小则表明和的匹配程度越高。一般不超过1,对取一适当阈值,可对匹配标准加以控制。
2.2 消除误匹配
我们消除误匹配的操作基于以下的假设:相机的旋转和缩放运动相对平移运动来说比较小。这样,连接两对匹配点的两个向量间的差别应很小。也就是说,如果两对匹配点和是正确的匹配,那么,向量与间的差别应很小,如图1所示。 图1 消除误匹配
若和是正确的匹配,则与应很相似
因此,向量与所有向量之期望相比较,即可判定与是否为正确的匹配点。这样,可有效消除误匹配的可能性,确保所估计初值与真实值尽量靠近。
3 确定变换参数
为得到两图像间的变换参数,需要利用递归的方法计算特征点与其匹配点变换后点距离的最小值,为此,本文使用Levenberg-Marquardt方法[2]。为减小计算量,我们只对匹配点对进行计算。
若是匹配的特征点对,则首先,从所有匹配的特征对中取四对相似性最好的匹配,由(1)式计算出参数矩阵的八个参数,并以此作为初值。变换后为
然后,用递归的方法计算所有点对和间距离之和的最小值,即求和式的最小值,其中,我们需要计算变换参数的偏导数
并在每次循环中更新[3]。
这一过程会在很少的步数内即收敛到真实值,从而确定两幅图像间的变换参数。用这一方法对多幅图像进行了实验,结果如图2,3所示,说明了算法是行之有效的。
4 实验结果 a b c
图2 (a),(b)左右两幅图像,(c)拼接图像 a b ?
图3 (a),(b)待拼接图像,(c)拼接后图像,图像的
变形是由于相机的倾斜与旋转造成的
5 总结 实验表明,本文的方法在相机的旋转与缩放不是很大的情况下,是行之有效的。由于给出了初值的很好的估计,因而避免了迭代算法收敛到局部最小值而不是全局最优结果。
6 参考文献
[1] F.H. Moffitt and E.M. Mikhail. Photogrammetry. Harper Row,New York, 3 edition,1980.
[2] W.H.Press et al, Numerical Recipes in C: the Atr of Scientific Computing, 2nd ed, C
显示全部