基于APAP模型的大视差图像拼接算法

2021-02-03 02:44屈玳辉谢益武
测控技术 2021年1期
关键词:内点描述符鲁棒性

屈玳辉, 谢益武

(大连海事大学 信息科学技术学院,辽宁 大连 116033)

限于相机的画幅,很难一次拍摄得到全景图像,此时需要多次拍摄然后拼接得到全景图像。在拍摄时,由于拍摄平面不同,将会导致相邻待拼接图像具有视差,在配准拼接时会出现重影,严重影响感官[1-4]。

国内外许多学者对具有视差的图像拼接算法进行了研究。例如,张朝伟等[5]提出使用优化SIFT算法[6](Scale Invariant Feature Transform)实现特征匹配,然后使用随机采样一致性算法得到内点,以此计算出相邻图像的变换参数,然后完成融合。该算法对视差较小的图像拼接效果较好,但是对具有大视差的图像拼接效果较差,会出现严重重影;而且SIFT算法匹配速度较慢,严重影响拼接效率。谢雨来等[7]提出使用SURF(Speeded Up Robust Feature)算法[8]完成特征匹配,得到形变参数后,使用双线性差值算法配准图像,最后使用加权平均法融合。SURF算法特征匹配速度远超过SIFT算法,可加速拼接算法;得到形变参数后对待拼接图像重采样,从而使配准精度增加。为了得到更好的拼接图像,有学者提出首先使用SIFT算法完成特征匹配,然后把拼接图像划分为前后景,分别计算前后景图像的变换参数,分别配准融合[9]。该算法相较前两种算法配准精度较高,对视差较小的图像配准效果较好,但是对大视差图像拼接效果不佳。文献[10]提出APAP(As-Projective-As-Possible Image Stitching)模型,先使用SIFT算法完成特征匹配,再用随机采样一致性算法(Random Sample Consensus,RANSAC)筛选内点,然后对目标图像网格划分建立Moving_DLT(Moving Direct Linear Transform)方程,根据特征点分布解Moving_DLT方程,并对每个网格形变矩阵高斯加权,最后配准图像,对重叠区域加权融合。在APAP模型的基础上,有学者提出尽可能投影算法(Adaptive As-Natural-As-possible,AANAP)[11],该算法对目标图像和待匹配图像同时形变配准,并且借助随机采样一致性算法得到全局最优相似变换矩阵,最大限度地减小拼接图像的旋转角度,使拼接效果更佳自然。Chen等[12]提出使用APAP模型初始化拼接图像,然后对多张拼接图像构建局部相似项和全局相似项约束形变网格,尽可能减小全局投影失真。Lin等[13]提出内容保护的视差拼接算法,先对待拼接图像的轮廓线和直线检测,然后加入曲线和直线结构保持约束项,尽可能地保护图像结构信息。樊逸清等[14]提出基于线约束运动最小二乘法的拼接方法,首先借助SIFT算法完成特征匹配,然后使用RANSAC算法筛选内点并计算得到参考图像的最佳单应变换矩阵,最后在重叠区域利用最大流最小割算法寻找最优拼接缝完成拼接。薛佳乐等[15]提出对目标图像聚类划分出多个子平面,然后利用APAP模型实现高精度配准拼接。张冬梅等[16]提出一种改进的APAP模型,先使用SIFT算法匹配特征点,然后借助APAP模型计算网格单应性矩阵,最后线性化处理单应性矩阵完成拼接。

综上所述,现有基于APAP模型拼接算法均未改变特征匹配和内点筛选方法,而APAP模型对特征匹配的数量和质量要求很高,随机采样一致性算法迭代的参数模型易把正确匹配点误判为外点,严重影响拼接质量;SIFT算法特征匹配速度较慢,严重影响拼接效率。

针对APAP模型中SIFT算法效率较低、RANSAC算法鲁棒性较差等问题,本文提出一种改进的APAP模型拼接方法。首先对匹配效率较高但稳定性较差的ORB(Oriented FAST and Rotated BRIEF)算法[17]进行改进,使用MLDB(Modified-Local Difference Binary)描述符[18]代替BRIEF(Binary Robust Independent Elementary Features)描述符[19];然后通过向量场一致性算法[20](Vector Field Consensus,VFC)筛选内点;最后借助APAP模型配准拼接图像。

1 算法设计

APAP模型对特征匹配算法要求较高,故在本文中提出了改进ORB算法,在尽可能不降低匹配效率的情况下提高鲁棒性,并用向量场一致性算法筛选内点,最后完成配准拼接,具体流程如图1所示。

图1 拼接算法流程图

1.1 FAST特征点检测

ORB算法首先需要构建高斯金字塔,然后在金字塔中进行特征点检测和描述符建立。ORB算法借助FAST算法[21]在金字塔上提取特征点,具体过程如下。

① 灰度图像I(x,y)上像素点为p,以像素点p为中心选择半径为3个像素的圆,则圆上的像素点集合表示为{p1,p2,…,p16}。

② 设FAST算法的阈值t。

③ 计算集合{p1,p2,…,p16}中点p1、p9与圆心p的像素差,若绝对值皆大于阈值t,则保留像素p。

④ 集合{p1,p2,…,p16}中1、5、9、13等像素点与p计算像素值差,若任意3个值大于阈值t,则继续判断。

⑤ 将圆上的16个像素点分别与圆心p计算像素值差,若是有n个像素点差值的绝对值均大于阈值t,则圆心p为特征点,n一般取12。

1.2 MLDB描述符

得到特征点后,以特征点为中心选择合适的区域作为特征采样区域。由于MLDB算法不具有方向不变性,故计算特征采样区域矩的质心方向作为MLDB描述符的主方向。

矩定义为

(1)

矩的质心为

(2)

特征点的主方向可定义为

(3)

得到主方向后,提取特征采样区域的MLDB描述符,具体构建方式如下。

① 以特征点为中心选取合适的采样区域P构建MLDB描述符,采样区域P划分n×n个网格。计算n×n单个网格内像所有像素值的平均值,表示为

(4)

式中,I(k)为灰度图像的像素值;m为每个划分网格内的像素点的个数;i为采样区域一共被划分网格的数量。

② 需要计算每个网格内像素点在x和y方向上的梯度,根据每个网格平均像素值和网格像素的梯度值进行编码,可表示为

Func(·)={Funcintensity(i),Funcdx(i),Funcdy(i)}

(5)

式中,Funcintensity(i)=Iavg(i);Funcdx(i)=Gradientx(i)=dx;Funcdy(i)=Gradienty(i)=dy。

③ 由式(5)可得,构建出MLDB描述符每一对网格比较得到的二进制为3位,可用公式表示为

(6)

则MLDB描述符可表示为

(7)

得到MLDD描述符后,把描述符旋转至主方向位置。式(3)中描述符主方向为θ,则对应的旋转矩阵Rθ为

(8)

则旋转后的MLDB描述符可表示为

gN(p,θ):=fN×Rθ

(9)

MLDB描述符类型为二进制,故可用汉明距离衡量不同描述符的相似性。

1.3 向量场一致性算法内点筛选

(10)

式中,γ为混合系数,表示隐变量zn的边缘分布,即∀zn,p(zn=1)=γ;θ={f,σ2,γ}包含所有的未知变量。对θ借助贝叶斯准则估计最大后验解,可把p(Y|X,θ)等价转化为最小化能量函数:

(11)

式(11)可采用期望最大化算法(EM算法)求解。对式(11)使用EM算法求解,需先对θ参数项省略,然后可得到完全数据对数后验:

(12)

E步:式(12)中使用θold表示当前参数值,然后用来求解隐变量的后验分布。若是P=diag(p1,p2,…,pn)为对角阵,则pn=P(zn=1|xn,yn,θold)可用贝叶斯算法求得:

(13)

后验概率pn为一个软指派,它表示第n个样本与当前估计出向量场f的相似程度。

M步:通过式θnew=argmaxxθQ(θ,θold)来确定修正参数θnew。因为P表示为对角阵,则可对Q(θ)分别计算σ2和γ的导数并令为0,可得到式(14)和式(15):

(14)

γ=tr(P)/N

(15)

当期望最大化算法收敛时,可得到向量场f,然后通过预设定一个阈值τ,即可以得到成对特征点的内点集合I:

I={n:pn>τ,n∈NN}

(16)

1.4 APAP模型配准拼接

完成图像特征匹配和内点筛选后,需要通过APAP模型完成配准拼接。图像I和I′是一组待拼接图像,它们对应的匹配点为p=[x,y,1]T、p′=[x′,y′,1]。则对应的变换关系为p′=h(p),可以表示为

(17)

(18)

齐次坐标p=[x,y,1]T和p′=[x′,y′,1],对应的变换关系表示为

p′~Hp

(19)

(20)

把式(20)化为Ah=O,即

(21)

对于图像I和I′共有N组对应匹配点,则DLT算法单应性矩阵h可表示为

(22)

APAP算法中提出Moving DLT算法模型,对式(22)添加权值进行估计网格单应性矩阵。则网格pj的自适应矩阵表示为

(23)

式中,j=C1×C2,j为网格的数量,C1和C2为横纵网格数;Wj=diag(⎣ω1,j,ω1,j,…,ωN,j,ωN,j」),ω1,j=exp(-‖p-pj‖2/σ2),σ为高斯函数尺度因子,pj为网格内特征点。得到j单应性矩阵完成配准后,对待拼接图像的重叠区域加权融合得到拼接图像。

2 实验

本文实验主要分为两个部分,第一部分验证所提改进ORB算法和内点筛选算法稳定性;第二部分验证改进APAP模型是否可以得到质量更高的拼接图像。

本文实验平台为:Inel®CoreTMi7-8700 CPU @ 3.20 GHz,软件平台为Visual Studio 2015,并使用OpenCV 2.3视觉库。图2为文献[10]提供的公用图像拼接实验数据集,图像尺寸均为800像素×1000像素×3像素。

2.1 特征匹配算法评价

使用SIFT算法、AKAZE算法、ORB算法与本文所提匹配算法对比实验,如图2所示,SIFT算法、AKAZE

图2 实验图像

算法、ORB算法内点筛选均使用RANSAC算法,改进ORB算法使用VFC算法筛选内点。对SIFT和AKAZE算法均使用OpenCV 2.3默认参数;ORB算法中nfeatures设为10000,其他参数为默认值;RANSAC算法使用OpenCV 2.3中findHomography()函数,参数为默认值。改进ORB算法的nfeatures设为10000,VFC算法中阈值τ为0.2。OpenCV视觉库利用FAST算法提取特征点后,会对每个特征根据HarrisResponses值排序,nfeatures值过小会致使部分特征点丢失,影响匹配效果。

SIFT算法首先构建高斯金字塔,然后相邻高斯金字塔层相减做高斯差分金字塔并提取特征点,然后根据采样区域梯度建立主方向,最后提取128维浮点型描述符。该算法鲁棒性较强,但是特征点提取和描述符构建过程较为复杂,SIFT描述符为128维浮点型,计算欧式距离时速度较慢。AKAZE算法构建非线性尺度空间,其与高斯尺度空间相比,可更好地保护图像边缘信息;使用MLDB算法构建描述符,鲁棒性要比传统二进制描述符强;但解非线性函数,耗时较长,算法效率较低。ORB算法的特征点检测和描述符构建过程较为简单,BRIEF描述符为二进制,通过汉明距离衡量不同描述符相似性,计算速度较快;BRIEF描述符仅对两两像素值大小编码,所能表达的信息有限,故鲁棒性欠佳。随机采样一致性算法迭代计算参数模型,不仅耗时较长且易把正确匹配点误判为外点。

所提出的改进ORB算法,使用MLDB算法提取匹配算法描述符,MLDB描述符不仅可对特征采样区域内的像素值大小进行编码,还可对采样区域内梯度信息编码,故鲁棒性相较BRIEF描述符更强;VFC算法借助EM算法求解,内点筛选效率远高于RSNASC算法迭代求解,且鲁棒性更好。

图像匹配数据统计如表1所示。由表1可知,所提算法匹配点数不是最多的,但内点数和匹配正确率是最高的,可表明所提方法鲁棒性最佳。除Park组外,SIFT算法虽匹配点数最多,但是匹配正确率却远小于所提出的方法。AKAZE算法非线性尺度空间可更好地保护图像边缘信息,MLDB描述符鲁棒性较好,故AKAZE算法鲁棒性要优于ORB算法。ORB算法特征点和描述符鲁棒性都较差,故匹配正确率最低。

表1 图像匹配数据统计

SIFT算法构建的描述符为128维浮点型,利用欧氏距离衡量不同描述符相似性时,耗时较长,故SIFT算法匹配时间最长。ORB算法构建256-bit二进制描述符,通过汉明距离衡量不同描述符的相似性,故匹配速度最快。改进ORB算法的MLDB描述符需计算像素梯度,故提取速度低于BRIEF描述符,因此所提出的算法速度不及ORB算法。AKAZE算法构建尺度空间时,需解非线性方程,迭代计算耗时较长,故匹配速度不及所提出的算法。RANSAC算法需迭代计算参数模型,耗时较长;本文所用的VFC算法,效率远超过RANSAC算法。

2.2 拼接算法评价

使用GlobalHomography算法、APAP模型、AANAP模型与本文算法进行对比实验,GlobalHomography算法、APAP模型和AANAP模型均使用SIFT算法特征匹配,APAP模型、AANAP模型和本文改进APAP模型网格数量均为100×100。网格数量越多,重叠区域配准精度越高,但会导致效率降低。

通过计算重叠区域对应拼接像素点的误差均方根(Root Mean Squared Error,RMSE)判定拼接质量[22],计算公式为

(24)

表2 不同算法的RMSE值

GlobalHomography算法仅计算单个形变参数进行配准,对于具有视差的拼接图像配准效果较差,故误差均方根最大。APAP模型通过匹配特征分布得到网格单应性矩阵,由表1可知,原APAP模型中SIFT+RANSAC算法得到的内点数不及所提出的算法,故与所提出的算法相比,网格单应性矩阵对齐精度较低、重叠区域误差均方根较高。AANAP模型虽借助APAP模型初始化网格单应性矩阵,但需要与全局最优相似变换矩阵加权叠加,从而导致重叠区域配准精度下降,故AANAP模型的RMSE值高于APAP模型。

GlobalHomography算法、APAP模型和AANAP模型使用SIFT算法完成特征匹配,SIFT算法鲁棒性较好,但匹配速度较慢。APAP模型解Moving DLT方程得到多个网格单应性矩阵,故配准速度不及GlobalHomography算法。AANAP模型不仅需要解Moving DLT方程,还需要迭代计算全局最优相似变换矩阵,故匹配效率低于APAP模型。所提出的拼接算法使用改进ORB算法匹配速度远超过SIFT算法,故拼接速度较快,具体拼接时间如表3所示。

表3 不同算法的拼接时间 单位:s

应用所提出的拼接模型对图2所示的图像进行拼接,拼接效果如图3所示,从视觉角度判断,无明显差异,重叠区域融合效果较好,符合审美要求。

图3 实验图像拼接效果

3 结束语

针对相机画幅限制,一次拍摄得不到场景全局图像,提出一种基于改进ORB算法的大视差图像拼接模型。首先使用FAST算法提取局部特征并特征采样区域建立主方向,然后建立MLDB描述符并通过汉明距离衡量不同描述符的相似性完成匹配,再使用VFC算法筛选内点,最后借助APAP模型完成配准融合。与现有算法相比,所提出的算法对重叠区域配准精度较高,拼接效果较好,拼接效率较高。

猜你喜欢
内点描述符鲁棒性
基于结构信息的异源遥感图像局部特征描述符研究
基于AKAZE的BOLD掩码描述符的匹配算法的研究
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
基于确定性指标的弦支结构鲁棒性评价
Linux单线程并发服务器探索
基于罚函数内点法的泄露积分型回声状态网的参数优化
特征联合和旋转不变空间分割联合的局部图像描述符
基于非支配解集的多模式装备项目群调度鲁棒性优化
非接触移动供电系统不同补偿拓扑下的鲁棒性分析
基于内点方法的DSD算法与列生成算法