基于特征点匹配的图像拼接算法研究

更新时间:2023-05-21 02:12:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于特征点匹配的图像拼接算法研究

 第19卷 第4期   No.4海军工程大学学报   Vol.19  2007年8月 Aug.2007 JOURNALOFNAVALUNIVERSITYOFENGINEERING  

文章编号:1009-3486(2007)04-0094-04

基于特征点匹配的图像拼接算法研究

陈 虎

(海军工程大学船舶与动力学院,武汉430033)

摘 要:通过查找待拼接两幅图像的对应特征点以确定两幅图像的缝合点,进而确定两者的匹配位置,通过对图像的重叠区域进行平滑过渡处理,实现了待拼接图像的无缝拼接实验结果表明,,取得了良好的效果。

关键词:基于图像的绘制;全景图;图像拼接;中图分类号:TP391.41    :Rbasedonfeaturepointsmatching

CHEN2Hu

(CollegeofNavalArchitectureandPower,NavalUniv.ofEngineering,Wuhan430033,China)Abstract:Stichpointsaredeterminedthroughfindingcorrespondingfeaturepointsoftwoimagestodecideitsmatchingposition.Imagemosaicsisaccomplishedthroughfusingprocessinoverlappingare2a.Theresultofexperimentshowsthatthealgorithmproposedinthispaperisreasonableandeffec2tive.

Keywords:imagebasedrendering;panoramicimage;imagemosaic;featurepoint

基于图像的绘制(imagebasedrendering,IBR)技术具有建模容易、绘制快、真实感强等优点,可有效解决传统虚拟现实技术存在的问题,成为近年来的研究热点之一。

全景图的生成是基于图像绘制技术中的一项关键技术,全景图像拼接为其提供了良好的解决方案,它将一系列有重叠边界的普通图像进行无缝拼接,从而得到全景图,广泛应用于虚拟现实和计算机视觉等多个领域。

近年来,研究人员在图像拼接技术方面做了大量的工作,但都存在一定的局限性。钟力采用改进的基于模板匹配算法寻找匹配区域,并拼接图像[1],该算法计算量大,且应用中会产生延时;文献[2]提出了采用两幅图像特征点匹配,计算灰度直方图以解决误匹配[2],但也没有很好地解决误匹配问题。Stein提出了在相邻帧间进行纹理特征跟踪,求摄像机焦距和帧间偏移距离的算法[3],此算法精度高,但计算量大。

本文提出了一种新的基于特征点匹配的全景图像拼接方法:首先通过对待拼接图像进行边缘检测以自动提取图像特征点,然后通过对应特征点查找待拼接图像的缝合点,从而确定两者的匹配位置,最后,采用渐入渐出法对图像的重叠区域进行平滑过渡处理,实现了待拼接图像的无缝拼接。

1 特征点的自动提取

设待拼接的左、右两幅图像分别为I1,I2,宽和高分别为W1,W2和H1,H2,取图像的左上角作为图①收稿日期:2007202216;修回日期:2007205226。

作者简介:陈 虎(19652),男,讲师,硕士。

基于特征点匹配的图像拼接算法研究

 第4期 陈 虎:基于特征点匹配的图像拼接算法研究    95 像坐标的原点。为了保证特征点的准确提取和匹配,每幅图像都用一样的特征点提取算法。本文首先利用Canny边缘检测提取图像的边缘,并进一步提取图像的特征点。

1.1 Canny边缘检测

由于Canny边缘检测方法是针对一维信号表达的,必须将其扩展到二维。这样阶跃边缘将由位置、方向和强度来确定。

假设G为一个标准差为α的二维Gaussian算子:

22α)(1)G=exp(x/2

将图像I与Gn做卷积,Gn是G沿n方向的一阶方向导数。

Gn==n Gn

+,则对于图像Ixy

n ((边缘就位于Gn。其中: G=

G I=0n

将式(2)代入式(4)中,得:

2

G I=052n(5)(2)(3)(4)

满足式(5)的点被视为边缘,边缘强度为:

(6)| (Gn I)|=| (G I)|

Canny算子在使用不同的尺度下的高斯算子检测到的边缘信息是不相同的,确定合适的尺度取决于图像中所含的物体情况。要获得理想的边缘信息,需要使用多个尺度,将所得信息收集起来,不同尺度的Canny边缘检测器由Gaussian的不同的标准差来表示。有可能存在几个尺度的算子对边缘都给出突出的响应(即信噪比超过阈值),在这种情况下,选择具有最小尺度的算子,因为它定位最准确。获得多个尺度下的边缘信息后,使用特征综合处理(featuresynthesisapproach)来获取:①首先标记出所有由最小尺度算子得到的突出边缘。②具有较大尺度的算子产生的边缘根据它们(标记出的边缘)合成得到,即根据从较小的尺度收集到的证据来预测较大尺度应具有的作用效果。③然后将合成得到的边缘响应与较大尺度的实际边缘响应作比较。④仅当它们比通过合成预测的响应显著地强时,才将其标记为边缘。

这一过程可以对这个尺度序列(从小到大)重复进行,通过不断加入较小的尺度中没有的边缘点的方式累积起来生成边缘图,最终获得的边缘图中综合了不同尺度下的边缘信息,最能真实反应图像的边缘信息。

1.2 特征点提取

检测图像的边缘后,在每一列的边缘点中找出梯度值最大的一点,记录该点的纵坐标,若此列不存在边缘点,则直接找出该列的梯度值最大点。对于图像中任意一点(i,j),梯度值为:

Mag(i,j)={[(I(i+1,j)-I(i-1,j))/2)]+[(I(i,j+1)-I(i,j-1))/2]}221/2(7)其中:I(i,j)是点(i,j)的灰度值。

这样可得到两个长度分别为W1、W2的数组Mag1,Mag2,数组中的元素是图像中该列上梯度最大点的纵坐标,该数组反映了两幅图像中按列最大梯度特征点分布的情况。在确定每列梯度的最大点时,遵循以下原则:

(1)当该列中梯度最大值的点有两个或两个以上时,取距离图像水平中线距离最近的点作为该列的特征点;

基于特征点匹配的图像拼接算法研究

96 第19卷 海 军 工 程 大 学 学 报           

(2)当两个点距离图像水平中线相等时,取上方的点作为该列的特征点。

2 缝合点的确定

设m1,m2为图像I1和I2的一组对应特征点,投影变换后的图像为I′m′1和I′2,m′1、2分别为m1和m2变换后的对应点。由于匹配点存在误差,可能出现错误的匹配,如果将图像直接作平移使得m′2

[4](见图1)

。点移到m′1点,有时可能得不到正确的拼接结果

 图1 缝合点查找示意图

对于图像I1m′1,设其坐标为(x′1,y′1),并以该点为中心定义一个大小为(2n+1) (2m+1)的相关窗口,设m′大2的坐标为(x′2,y′2)选择第2幅图像I′2中的搜索窗口为以该点为中心、小为(2s+1)(2t+1)的窗口,然后用该区域中的点m′2与图像I′2中的特征m′1在给定的相关窗口中进行相关操作,并设m′2的坐标为(x′2,y′2),点m′1和m′2的相关值Score的定义为:

Score(m′1,m′2)=σ(m′σ(m′1),2)(8)

其中:Cov(m′1,m′2)表示点m′1和m′2在其相关窗口中的协方差,表达式为:

nm

Cov(m′1,m′2)=[I′(x′+i,y′+j)∑∑111-E(m′1)][I′1(x′2+i,y′2+j)-E(m′2)](9)(2n+1)(2m+1)

nmσ(m′)为图像I′)为中心、  在以点(x′,y′大小为(2n+1)(2m+1)的邻域内的标准偏差,表达式为:

σ(m′)=[I′(x′+i,y′+j)∑1)]-E(m′2(10)

-nj=-m

从式(8)可得出,相关值Score的取值范围从-1到1,点m′1和m′2越相似,相关值Score就越大。在实际匹配过程中,先确定一个有效的相关值的阈值,当用点m′2计算出来的相关值Score大于该阈值时,可认为该点是特征点m′缝合点查找的算法为:1的一个候选匹配点。

(1)随机选择一对匹配点m1和m2,投影变换后得到对应点m′1,m′2;

(2)在投影变换后的图像I′1和I′2上进行上面所述的相关匹配;

(3)若存在满足要求的匹配,从中选择一个最优的匹配作为结果,算法结束;否则,转到(1)。

通过上面的算法得到缝合点m′1和m′2后,让图像I′2直接作平移使得m′2移到图像I′1的m′1,即通过平移操作将两幅图像进行拼接。

3 图像间的平滑过渡

查找到缝合点之后,两幅图像的位置就得到了惟一确定,但是由于两幅图像间存在着亮度的差异,如果仅仅将两幅图像进行简单的叠加,在拼接处可能产生明显的边界(见图2)。为避免这种情况的发生,实现图像的无缝拼接,必须对图像的重叠部分进行平滑处理,以提高图像质量[5]。

本文采用渐入渐出法,将图像重叠区域的灰度值按一渐变系数相加合成全景图像,设两幅图像的灰

基于特征点匹配的图像拼接算法研究

 第4期 陈 虎:基于特征点匹配的图像拼接算法研究    97

图2 度值分别用g1(i,j)和g2(i,j)表示,gi,j)(11)(j)=(i,j+(,j其中:d,0时,图像灰度值从g1(i,j)慢慢过渡到了g2(i,j)。

,绝大多数采用的是彩色图像,此时,只需将R,G,B值按式(11)分开计算即可。4 实验结果

本文基于VC++6.0编程环境实现了本文算法,图3为4幅图像的拼接结果。在实验中,

为使缝合点查找更准确,使m=n=10。考虑到m′m′1、2分

别为m1和m2变换后的对应点,所以确定搜索窗口

很小,s=t=5,相关值的阈值为0.95。

由图3可以看出,文中算法在图像拼接中缝合

点查找精确,没有出现误匹配的情况,在重叠区域过

渡平滑,实现了无缝拼接,取得了良好的效果。

图3 图像无缝拼接结果

5 结束语

本文通过查找待拼接两幅图像的对应特征点以确定两幅图像的缝合点,进而确定两者的匹配位置,并采用渐入渐出法对图像的重叠区域进行平滑过渡处理,实现了待拼接图像的无缝拼接,最后,编程实现了文中所提算法。

实验结果表明,文中所提算法合理,实现了图像的无缝拼接,取得了良好的效果,为全景图的生成提供了一种新的思路。

参考文献:

[1] 钟 立,胡晓峰.重叠图象拼接算法[J].中国图象图形学报,1998,(5):22-27.

[2] 孙华燕,周道炳,李生良.一种序列图像的拼接方法[J].光学、精密工程,1999,(4):48-51.

[3] STEING.Accurateinternalcameracalibrationusingrotationwithanalysisofsourcesoferror[C]//Proceedingsof

the5thInternationalConferenceonComputerVision.CambridgeMA,1995.

[4] 蔺想红,王维盛.一种基于特征匹配的全景图自动拼接方法[J].西北师范大学学报.2005,(4):31-33.

[5] 侯舒维,郭宝龙.一种图像自动拼接的快速算法[J].计算机工程,2005,(8):70-72.

本文来源:https://www.bwwdw.com/article/2014.html

Top