基于ORB+GMS算法的航拍图像匹配方法的研究

2021-05-07 01:43雷远华曾德培
矿山测量 2021年2期
关键词:描述符图像匹配点数

雷远华,曾德培

(中国能源建设集团湖南省电力设计院有限公司,湖南 长沙 410007)

随着无人机技术的快速发展,借助无人机航拍进行地面测量、局部地图制作、三维重建等已被越来越多的学者注意[1-3]。限于无人机机载相机的画幅,将多次连续拍摄图像匹配操作是航拍图像处理的重要过程。

基于局部特征点的图像匹配算法是无人机航拍图像匹配方法的重要研究方向,例如:耿娟等人提出基于CSIFT算法[4]的无人机图像匹配[5],首先构建彩色尺度空间,然后利用彩色空间的尺度不变性提取特征点和描述符并完成匹配,最后借助随机采样一致性算法完成内点筛选,该方法鲁棒性虽好,但是匹配效率较低。故高俊强等人提出基于SURF算法[6]的航拍图像匹配[7],该方法有效地提高了图像匹配速度。为了更进一步加速匹配算法,宋伟等人提出了一种改进AKAZE算法[8-9]进行航拍图像匹配,该方法效率虽高,但借助随机采样一致性算法迭代计算单应性矩阵模型耗时较长。曹留霞等人[10]提出BRISK-DAISY算法进行无人机影像匹配,首先利用BRISK算法进行特征点提取,然后使用DAISY算法提取局部特征描述符并匹配,最后借助RANSAC算法完成内点筛选,该方法匹配效果较好,但DAISY描述符匹配效率较低、RANSAC迭代计算最佳模型耗时较长。

为了解决上述算法的不足,本文提出借助ORB+GMS算法[11-12]匹配航拍图像,首先构建高斯尺度空间,然后借助FAST算法[11]提取特征点,随后使用BRIEF算法[11]构建描述符并借助汉明距离匹配,最后通过网格运动统计算法[12]筛选内点。

1 ORB特征提取算法

ORB匹配算法[11]主要分为三个步骤:尺度空间构建、特征点检测、描述符构建,主要过程如下:

第一步:尺度空间构建

借助式(1)的高斯核函数对原图像I(x,y)滤波和降采样,可得到高斯尺度空间,则高斯核函数为:

(1)

构建的高斯尺度空间可用公式:

L(x,y,σ,ρ)=ρ·I(x,y)·G(x,y,σ)

(2)

式中,I(x,y)为灰度图像;σ为尺度因子;ρ为缩放因子。

第二步:特征点检测

ORB算法使用加速分割测试算法快速提取特征点,尺度空间上每一个像素点为圆心,画半径为3的圆,圆上共有16个像素点,若连续n个像素值与中心点的差异绝对值大于阈值t,则该圆心点为特征点。得到特征点后,再计算特征点的Harris响应值并排序,为了防止特征点积聚出现,通过非极大值抑制算法筛选特征点。

第三步:描述符构建

特征匹配算法需要具有方向不变性,故首先需要对特征点建立主方向。ORB算法计算特征点到特征采样区域质心的方向作为特征点主方向,则特征采样区域的质心计算方法为:

(3)

矩的质心为:

(4)

特征点的主方向可定义为:

(5)

构建主方向后,以特征点为中心S×S区域随机抽出像素点两两比较编码,两两像素值大小可以建立τ:

(6)

式中,p(x)和p(y)为特征采样区域内像素点。若有N对像素点比较,则得到N维二进制描述符fN:

(7)

若N对像素点(Xi,Yi),(i=1,2,…,N),对式(7)转换为矩阵:

(8)

式(5)旋转角度θ可得到旋转矩阵Rθ,则得到旋转后的矩阵为Sθ=RθS。

则BRIEF描述符经过旋转得到ORB算法的描述符,可表示为:

gN(p,θ):=fN(p)|(xi,yi)∈Sθ

(9)

2 GMS内点筛选算法

网格运动统计算法筛选内点主要基于一个假设:匹配图像中每个像素点都具有运动平滑性,正确匹配点周围存在较多的匹配点,错误点周围多是错误匹配点。基于这一假设,网格运动统计算法主要过程如下:

首先把匹配图像划分为多个网格,任意网格内匹配点数为Si,Si服从二项分布可表示为:

(10)

式中,xi为网格内匹配点;K为匹配点xi周围网格数量;n为网格内匹配点数的数量;pt表示匹配点xi为正确匹配点的概率;pf表示匹配点xi为错误匹配点的概率;T表示xi为正确匹配点;F表示xi为错误匹配点。

Si的分布如图1所示,错误匹配点与正确匹配点的Si分布是有很大差异的,通过设定阈值,可以借助Si的均值和方差区分正确和错误匹配点。可把Si的均值和方差整合为P,通过设定不同的P可对粗匹配特征点筛选,则P可用公式写成:

图1 Si的分布

(11)

为了增加内点筛选算法的精度,将正确匹配点筛选问题转化为数值优化问题,即最优化P。则对式(11)变换为:

(12)

式(12)表明最优化函数P正比于网格数K和网格内特征点数量。

可通过式(13)判断当前网格区域内匹配点是否为正确匹配点:

(13)

式中,Sij为网格区域{ik,jk}和该网格周围八个网格内匹配点的总数,如图2所示;τi为阈值;α为常数因子;Ni为K个匹配网格区域的总特征数。

图2 9个匹配网格区域

3 实验

3.1 实验方案

选择两组尺寸为1 024×588的航拍图像作为实验图像,如图3所示;使用AKAZE+RANSAC算法、ORB+RANSAC算法与本文算法对比实验。统计匹配算法的耗时,衡量不同算法的匹配效率、匹配点数、内点数、内点比例,衡量不同方法的优劣。本文主要实验环境为:Inter(R) Core(TM) i7-8700 CPU,8 G-RAM,win10系统。

图3 实验图像

3.2 实验结果及分析

AKAZE+RANSAC算法、ORB+RANSAC算法与本文算法在图3(a)匹配点数、内点数和时间统计如表1所示。由表1可知,本文所提ORB+GMS算法得到内点数最多,内点比也是最高的,耗时最短。本文所提ORB+GMS算法与ORB+RANSAC算法相比,匹配点数相同,ORB+GMS算法的内点数是ORB+RANSAC算法的二倍,耗时减少0.3 s。

表1 多种算法匹配数据统计

图4为多种算法在道路航拍图像匹配效果图,图中线条连接了一对匹配点。表1中AKAZE+RANSAC算法匹配点数最少,故在图4(a)匹配效果图上,连接线的数量最少。ORB_RANSAC算法匹配点数高于AKAZE+RANSAC算法,故在图4(b)匹配效果图中,连接线密度高于AKAZE+RANSAC算法;但该算法的内点比较低,表明算法鲁棒性较差。表1中,ORB+GMS算法内点数最多,故匹配效果图中连接线数量最多;ORB+GMS算法内点比相较ORB+RANSAC算法提高13.04%,相较AKAZE+RANSAC算法提高8.29%,故ORB+GMS算法鲁棒性最佳。

图4 道路航拍图像在多种算法匹配效果

上述三种算法在图3(b)山野航拍图像匹配数据统计如表2所示。由表2可知,AKAZE+RANSAC算法的匹配点数和内点数都是最少,而内点比AKAZE+RANSAC算法优于ORB+RANSAC算法。本文所提ORB+GMS算法的内点数远超过AKAZE+RANSAC和ORB+RANSAC算法,内点比也远超另外两种算法。与ORB+RANSAC算法相比,所提算法耗时减少0.24 s,与AKAZE+RANSAC算法相比效率提高60%左右。

表2 多种算法匹配数据统计

山野航拍匹配效果如图5所示,表2中,AKAZE+RANSAC算法内点数量最少,故5(a)匹配效果图连接线数量最少;该算法内点比高于ORB+RANSAC算法,由此知AKAZE+RANSAC算法鲁棒性较好。ORB+RANSAC算法匹配点数较多,但保留的内点数较少,故在5(b)匹配效果图中连接线数量较少。ORB_GMS算法匹配点数和ORB+RANSAC算法相同,但保留内点数远远大于ORB+RANSAC算法,内点比相较ORB+RANSAC算法提高了9.77%,故ORB_GMS算法稳定性最好,图5(c)匹配效果图中连接线数量最多。

图5 山野航拍图像在多种算法匹配效果

综合道路和山野航拍图像实验效果,可知ORB+RANSAC算法鲁棒性最差,平均内点比仅为7.9%;AKAZE+RANSAC算法鲁棒性次之,平均内点比为11.4%;ORB+GMS算法稳定性最佳,平均内点比为19.3%,相较ORB+RANSAC算法、AKAZE+RANSAC算法分别提高了11.4%、7.9%。由表1和表2匹配时间知,AKAZE+RANSAC算法效率最低,ORB+RANSAC算法次之,ORB+GMS算法效率最高。

4 结 论

航拍图像匹配是地图建立、目标检测、三维重建的重要组成部分,为了更高效、更稳定地得到成对匹配点,本文提出使用ORB+GMS算法完成航拍图像匹配。使用AKAZE+RANSAC算法、ORB+RANSAC算法和ORB+GMS算法在具有代表性的道路和山野航拍图像上对比实验,可知ORB+GMS算法稳定性最好、效率最高。由此验证,对特征点质量和算法效率要求较高的航拍场景,ORB+GMS算法可很好地应用。

猜你喜欢
描述符图像匹配点数
基于多特征融合的图像匹配研究
基于AKAZE的BOLD掩码描述符的匹配算法的研究
图像匹配及其应用
欧洲共同语言参考标准在中国高校学术英语写作教学适用性的研究:可理解性,可行性和有用性
基于深度学习的局部描述符
基于SVM的化合物分类综述
画点数
基于机器视觉的液晶屏字符缺陷检测系统设计
破解心灵感应
基于Harris角点和改进SURF描述子的图像快速拼接