APP下载

融合颜色与光照信息的改进AKAZE 图像匹配算法

2021-06-18胡立坤

计算机工程 2021年6期
关键词:尺度空间图像匹配正确率

张 宇,胡立坤,黄 彬

(广西大学 电气工程学院,南宁 530004)

0 概述

目前,图像匹配算法已广泛应用于计算机视觉、模式识别、自动驾驶和图像拼接等领域[1-2]。基于特征的匹配算法是最常用的图像匹配算法,大致分为基于特征点、基于特征线和基于特征区域的三类匹配算法[3-4]。基于特征的匹配算法仅针对像素点进行运算,执行效率高且对图像的亮度、尺度和旋转等变化具有较强的鲁棒性[5-6]。

常用的特征点图像匹配算法SIFT(Scale Invariant Feature Transform)[7-8]利用高斯核函数构造线性尺度空间,保证特征点具备尺度不变性。SURF(Speed-Up Robust Features)算法[9]采用Hessian 矩阵构建尺度空间,能够降低特征点描述符的维度,相较SIFT算法缩短了整体运行时间。文献[10]提出一种ORB(Oriented Fast and Rotated BRIEF)算法,其采用FAST(Feature from Accelerated Segment Test)算法[11]快速提取特征点,在进行特征点描述时利用二进制描述子BRIEF(Binary Robust Independent Elementary Features)[12]。ORB 算法虽然提高了运算效率,但特征点定位精度不高,对图像旋转变化和尺度变化比较敏感。KAZE算法[13]和AKAZE(Accelerated-KAZE)算法[14]通 过构造非线性尺度空间,有效保留了图像的边缘与细节。AKAZE 算法利用快速显示扩散FED(Fast Explicit Diffusion)算法构造非线性尺度空间,其运算量低于KAZE 使用的AOS(Additive Operator Splitting)算法,且运行时间更短。AKAZE 算法使用的二进制描述符M-LDB(Modified-Local Difference Binary)对旋转和尺度变化具有很好的鲁棒性。文献[15]采用二进制特征描述子FREAK 代替M-LDB描述符进行特征点描述,利用Grid-KNN 算法对特征点实现粗匹配,能够兼顾匹配效率和匹配精度。

传统的AKZE 算法仅利用图像的灰度信息作为输入,未考虑图像中的颜色与光照信息。文献[16]采用颜色不变量的灰度级变换代替传统灰度影像作为算法输入,虽然其增加了图像匹配彩色信息,但灰度变换的范围参数只能根据经验值确定。文献[17]通过在传统灰度信息上增加颜色补偿量与光照补偿量,从而克服图像缺少颜色信息的缺点,但与图像相应的预处理操作也会延长算法的总体运行时间。尺度空间使得同一个局部结构会存在多个特征点表示,文献[18]提出一种聚类方法以删除冗余点,通过遍历所有尺度空间,将距离相近的特征点归为一类并保留响应值最大的特征点,但该方法与文献[19]方法相同,都仅利用距离作为判别标准,容易删除稳定的特征点。文献[20]提出一种基于距离的冗余点删除方法,通过欧式距离确定相邻特征点,将每个特征点与其余特征点的距离作为约束条件以删除冗余点,但是,该方法的计算时间过长。

AKAZE 算法在传统的灰度信息上引入颜色补偿量和光照补偿量,能够提高匹配精度但同时增加了冗余点。为了解决算法中存在过多冗余点的问题,本文对AKAZE 算法进行改进,结合特征点间的距离和区域重复率快速精确地识别冗余点,比较冗余点间的响应强度,删除响应强度值较小的冗余点,同时利用并行运算进行加速,从而保证算法的实时性。

1 AKAZE 算法分析及改进策略

AKAZE 算法利用非线性扩散滤波器构建尺度空间,在尺度空间中,图像的灰度在平缓区域以较快的速度扩散,边缘处扩散速度较慢,从而很好地保留图像边缘信息与局部细节。AKAZE 算法主要包括以下5 个步骤:

1)非线性尺度空间构造。非线性扩散滤波是一种各向异性的滤波方法,可以用非线性偏微分方程表示,如下:

其中,L为图像亮度,div 和∇分别表示散度和梯度,c为传导函数,其依赖于图像局部差分结构,可以自适应于图像局部结构特性进行扩散,t为时间参数。传导函数定义如下:

其中,函数g为传导核函数,如式(3)所示,其可以优先保留宽度较大的区域。

其中,参数λ用来控制扩散程度。

非线性偏微分方程可以利用FED 方法计算出近似解,通过不断循环构造出具有O组、每组有S层的非线性尺度空间。将式(1)进行离散化可得到如下形式:

其中,I是单位矩阵,A(Li)是图像Li的传导矩阵,τ为时间步长。为了保证所构造尺度空间的稳定性,τ的值要小于τmax,τmax表示不破坏显示方程稳定性的最大迭代步长。

2)特征点检测。AKAZE 算法在尺度空间的每一层中利用Hessian 矩阵寻找局部极大值点,Hessian矩阵的计算公式如式(5)所示:

其中,σ为尺度参数,Lxx与Lyy分别为二阶横向微分和二阶纵向微分,Lxy为二阶交叉微分。

找到局部极大值点后,会出现位置相差不大、代表同一局部结构的冗余点,为剔除冗余点,通常将每个点的响应值与本层的8 个邻域点以及上下相邻层的18 个点相比较,以求出极值,但是该方法不能完全删除冗余点。在求出特征点的位置之后,根据泰勒展开式求解亚像素的精确位置,如下:

其中,x为特征点的位置坐标,特征点亚像素坐标的解为:

3)特征点主方向求解。AKAZE 算法以特征点为中心,以6σ为半径确定圆形区域,分别求取特征点邻域内点的一阶微分值Lx和Ly并进行高斯赋权运算,以角度为60°的扇形窗口旋转,叠加邻域中点的向量,主方向选取单位向量和中的最长矢量方向。

4)特征向量描述。M-LDB 算法针对LDB(Local Difference Binary)算法的图像旋转与缩放性能进行改进。M-LDB 算法并不使用所有划分网格的像素,而是在划分好的网格中进行以尺度σ为间隔的重采样以得到离散点,使用采样值代替该网格的梯度与强度信息,从而提高计算效率。

5)特征点匹配。特征点描述向量为二进制描述符,通过异或操作计算特征向量间的汉明距离,比较汉明距离与预设的阈值大小以判断特征点的相似程度。匹配完成后通过RANSAC 算法剔除误匹配点,以保证匹配精度。

为了克服AKAZE 算法忽略图像颜色和光照信息以及存在过多冗余点的缺点,本文提出一种融合颜色和光照信息的改进AKAZE 图像匹配算法,该算法通过OpenMP(Open Multi-Processing)[21]并行运算对待匹配的图像进行颜色与光照补偿、特征点提取以及冗余特征点删除,算法流程如图1 所示。

图1 改进AKAZE 图像匹配算法流程Fig.1 Procedure of improved AKAZE image matching algorithm

2 颜色光照补偿

本文通过在图像的灰度变换中增加颜色补偿量,使灰度图像包含更多的颜色信息,通过增加光照补偿量,以解决图像匹配时忽略颜色信息以及图像成像时存在欠曝光或过曝光的问题,从而降低环境光照变化对算法性能的影响。

2.1 颜色补偿量计算

YCBCR颜色空间可以准确表示颜色变化特性,本文选择YCBCR颜色空间来计算颜色补偿量和光照补偿量,YCBCR可以通过RGB 颜色空间变换得到,变换公式如式(8)所示:

其中,Y表示亮度分量,CB与CR分别代表蓝色色度分量与红色色度分量。

通过比较输入图像的平均蓝色色度分量mB与平均红色色度分量mR确定图像的颜色特征。综合考虑图像整体色度特征与单个像素的颜色差异,得到颜色补偿量YC如下:

其中,k是对比度参数,取值范围为[1,4],本文中取值为3,α是范围参数,取值范围为[0.4,0.6],本文中取值为0.5。增加了颜色补偿量的灰度值P如式(10)所示:

2.2 光照补偿量计算

光照补偿量以增加了颜色补偿量的灰度值P为基础进行计算,如下:

其中,i是灰度值P的归一化值,σ取值为0.2,mP为灰度均值,因为曝光良好的图像的灰度均值在127.5 左右,所以通过减少或增加像素灰度值可以使图像灰度均值更接近127.5。为保留图像更多细节并提升对比度,本文采用高斯权重函数调整图像光照强度,使接近于0.5 的归一化灰度值得到的权重系数更大。最终灰度值由原始亮度、颜色补偿量和光照补偿量3 个部分组成,如下:

颜色光照补偿前后的图像对比结果如图2 所示,彩色效果见《计算机工程》官网HTML 版。其中,图2(c)为增加了颜色光照补偿后的灰度图,对比原始灰度图,可以看到图像局部细节得到保留和增强,灰度级相似但色调不同的区域区别度更高。由图2(d)和图2(e)对比可知,增加了颜色和光照补偿的图像,其检测到的特征点数量更多。

图2 颜色光照补偿前后的图像对比结果Fig.2 Image comparison results before and after color and illumination compensation

3 冗余点检测与删除

本文提出一种冗余点检测与删除方法,冗余点删除前后的图像对比结果如图3 所示。

图3 冗余点删除前后的图像对比结果Fig.3 Image comparison results before and after redundant points deletion

AKAZE 算法在进行特征点提取时,同一个局部结构会检测到多个冗余点,如图3(a)所示,图中仅标出了部分冗余点,图像结构越复杂的地方出现冗余点的概率越高。冗余点的存在不仅提高了算法的运算量,而且会影响匹配精度。本文冗余点检测与删除方法主要包括以下4 个步骤:

步骤1利用AKAZE 算法对输入图像构建非线性尺度空间,在尺度空间内检测特征点,确定特征点的具体位置。

人文精神关注对个体的自我关怀,也关注对人类集体精神的继承和发展。在初中政治教学中,很多章节都与自我关怀以及认同社会精神文明相关,但是,无论书本阐释得多么清楚,都离不开学生的亲自体验和实践。因此,需要组织相应的教学活动以凸显人文精神。

步骤2假设输入图像有M个特征点,搜寻每个特征点n×n邻域内的相邻特征点,计算该特征点与相邻特征点的欧式距离,如下:

其中,pm为输入图像中提取的第m个特征点,pn为pm邻域内的一个特征点,l为特征点的维度。

设定距离阈值Tdis,由式(14)计算出特征点pm的内点和外点。若S(pm,pn)等于1,则pn为pm的内点;若S(pm,pn)等于0,则pn为pm的外点。

步骤3设特征点pm的内点集合为:

利用式(16)分别求取特征点pm及其内点集合Xm中的特征点所代表的局部区域:

其中,σ为特征点pm所在尺度空间层的尺度因子,t为pm所在层数。

步骤4由式(17)求出2 个特征点的区域重复率εt,若区域重复率小于所设定的阈值,则认定2 个特征点相似,比较特征点间的响应强度,将响应强度值较小的特征点认定为冗余点并删除。

从图3(d)可以看出,图像中距离相近并且重叠程度较高的位置,在经过算法删除后只保留了响应强度值较高的特征点。冗余点的删除能够为后续特征点描述和特征点匹配减少计算量,从而提高算法的运行效率。

4 实验结果与分析

4.1 图像匹配结果对比及分析

衡量一种图像匹配算法性能的重要指标包括图像的匹配时间以及匹配正确率。本文分别从图像光照变化、视点变化、模糊变化和旋转放大变化4 个方面进行实验。用于匹配实验的图像选自标准测试库,测试库中的部分图像如图4 所示,每个图像集包含6 个图像序列,第1 幅为参考图像,剩余5 幅为待匹配图像。实现所用的编程软件平台为Visual Studio 2017,编程语言为C++,实验平台基于OpenCV3.5.10 实现。

图4 仿真图像Fig.4 Simulation images

实验对比算法包括本文增加颜色光照补偿的冗余点删除算法、SIFT 算法、SURF 算法、AKAZE 算法和RKEM-AKAZE 算法,RKEM 冗余点删除方法来自于文献[20]。选取不同的εt值进行实验,可以得出,当εt取值为0.6 时,匹配时间和匹配精度取得最佳结果。若εt阈值设置偏大而不能获得足够多的正确匹配点对,则阈值自动减少0.1 再进行特征点提取与匹配。n取值为5,欧式距离d2的阈值设为3。

表1 所示为光照变化下5 种算法对图像的匹配正确率与匹配时间统计结果,从表1 可以看出,5 种算法的正确率相差不大,但本文算法在光照变化时正确率均保持在98% 以上,有较好的稳定性。SURF 算法相较其他算法所用时间最长。本文算法用时最短,效率比AKAZE 算法大约提高10%,该算法不仅使特征点具备几何和颜色的双重特征,能够在不同光照条件下检测到足够多的特征点,而且删除了重复率高、稳定性低的冗余点,有效缩短了算法执行时间。图5 所示为光照因素对AKAZE 算法与本文算法图像匹配效果的影响。

表1 不同光照条件下5 种算法的匹配性能对比Table 1 Comparison of matching performance of five algorithms under different illumination conditions

图5 光照因素对匹配结果的影响Fig.5 Influence of illumination factor on matching results

从表2 和表3 可以看出,在模糊因素、视角因素的影响下,本文算法与RKEM-AKAZE 算法、SURF 算法的配准精度基本相同,优于AKAZE 与SIFT 算法。随着图像模糊程度的提高,SIFT 算法、SURF 算法失效,无法获得正确的匹配点对。特征点数量较多时RKEMAKAZE 算法与SURF 算法执行时间较长,而本文算法所用时间比较稳定,与其他算法相比耗时最少。综上,本文算法对图像模糊和视角变化的鲁棒性更强。图6所示为AKAZE 算法与本文算法在模糊、视角因素影响下的部分图像匹配结果。

表2 不同模糊条件下5 种算法的匹配性能对比Table 2 Comparison of matching performance of five algorithms under different fuzzy conditions

表3 不同视角条件下5 种算法的匹配性能对比Table 3 Comparison of matching performance of five algorithms under different perspective conditions

图6 部分图像的仿真结果Fig.6 Simulation results of some images

图7 所示为JPEG 压缩影响下5 种算法的匹配时间和匹配正确率对比结果,图8 所示为AKAZE算法与本文算法在JPEG 因素影响下的部分图像匹配结果。从图7 可以看出,本文算法与SURF 算法匹配正确率略优于其他算法,SURF 算法牺牲一定的匹配速度从而保证匹配正确率。本文算法的匹配正确率均保持在98.5%以上,同时保证了一定的匹配速度,匹配时间优于SURF 算法、SIFT 算法、AKAZE 算法与RKEM-AKAZE 算法,相 较AKAZE算法,本文算法的平均匹配效率大约提高25%,由以上分析可知,本文算法能够较好地适应图像的JPEG 压缩变化。

图7 JPEG 压缩情况下5 种算法的匹配正确率与匹配时间对比结果Fig.7 Comparison of matching accuracy and matching time of five algorithms under JPEG compression

图8 JPEG 因素对匹配结果的影响Fig.8 Influence of JPEG factor on matching results

表4 的数据由图4(e)图像仿真得到,从表4可以看出,本文算法与RKEM-AKAZE 算法在旋转缩放变化下匹配正确率明显优于其他算法,SIFT算法匹配正确率最低。在算法运行时间方面,SIFT 算法与SURF 算法所用时间较长,本文算法用时最少。综上,本文算法在旋转缩放条件下能够保证匹配精度,同时兼顾算法的执行效率,具备良好的可区分性。图9 所示为旋转缩放因素影响下AKAZE 算法与本文算法的部分图像匹配结果。

图9 旋转缩放因素对匹配结果的影响Fig.9 Influence of rotation and scaling factors on matching results

表4 不同旋转缩放条件下5 种算法的匹配性能对比Table 4 Comparison of matching performance of five algorithms under different rotation and scaling conditions

4.2 时间效率分析

本文算法在匹配图像中增加了颜色光照信息,使提取的同名点更具区分度,利用区域重复率删除冗余特征点,将并行运算应用于算法的特征提取与特征描述阶段。在相同的实验环境中,分别统计本文算法、KAZE 算法与SIFT 算法在特征点提取、特征点描述与特征点匹配3 个阶段的耗时,结果如表5所示。

表5 3 种算法的效率对比结果Table 5 Efficiency comparison results of three algorithms s

从表5 可以看出,本文算法利用快速显示扩散FED 算法构造非线性尺度空间,相较KAZE 使用的可变传导扩散算法和加性算子分裂算法AOS 减少了运算量,并且本文算法利用局部区域特征点信息代替RKEM[20]全局特征点信息作为冗余点判断依据,有效节省了算法运行时间,冗余点删除也相应减少了后续特征点描述与特征点匹配的用时。SIFT 算法与KAZE 算法均采用浮点型描述子描述特征,本文算法采用二进制描述子描述特征,其运行速度得到大幅提升。综上,本文算法在特征点提取、特征点描述与特征点匹配阶段的时间效率更具优势。

4.3 航拍图像拼接

图10 所示为无人机航拍图像,利用本文算法对航拍图像进行匹配,采用加权平均法融合图像重叠区域以实现图像拼接。

图10 实验图像Fig.10 Experimental images

均方根误差(Root Mean Square Error,RMSE)为图像拼接结果的重要评价指标之一,RMSE 越低,说明匹配精度越高,拼接效果越好。RMSE 的计算公式如下:

其中,(xi,yi)为图像2 中的特征点坐标,()为图像1中的特征点经过单应性矩阵变换得到的坐标,M为匹配的特征点对数量。

从表6 可以看出,本文算法在保证匹配精度的同时可以有效提升匹配速度。图像匹配结果如图11所示,拼接结果如图12 所示,从图12 可以看出,拼接后的图像无明显重影,整体色度变化均匀,拼接处没有缝隙,即本文算法较好地实现了图像拼接。

表6 4 种算法的RMSE 比较Table 6 RMSE comparison of four algorithms

图11 图像匹配结果Fig.11 Image matching results

图12 图像拼接结果Fig.12 Image mosaic results

5 结束语

本文在图像的灰度信息中增加颜色补偿量和光照补偿量,克服传统图像匹配算法忽略颜色信息和光照信息的缺点。针对图像同一局部结构存在多个特征点的情况,提出一种基于欧式距离和区域重复率的冗余点删除算法,在特征提取阶段删除冗余点。图像匹配完成后利用RANSAC 算法删除误匹配点对,通过OpenMP 并行运算进行加速。分别针对图像模糊、旋转、光照、视点和压缩等变化因素进行仿真验证,结果表明,与SIFT、SURF、AKAZE 和RKEMAKAZE 等算法相比,该算法可以有效识别同名点,剔除图像冗余点,缩短图像匹配时间,在保证图像匹配精度的同时高效实现无人机图像的无缝拼接。下一步考虑将图像匹配算法与神经网络相结合,以提高匹配算法的精度、实时性和通用性。

猜你喜欢

尺度空间图像匹配正确率
基于AHP的大尺度空间域矿山地质环境评价研究
门诊分诊服务态度与正确率对护患关系的影响
基于图像匹配和小波神经网络的RFID标签三维位置坐标测量法
居住区园林空间尺度研究
一种用于光照变化图像匹配的改进KAZE算法
生意
品管圈活动在提高介入手术安全核查正确率中的应用
生意
基于降采样归一化割的多尺度分层分割方法研究
基于尺度空间的体数据边界不确定性可视化研究