基于改进ORB和AKAZE的图像匹配算法*

2021-09-15 08:34赵柏山
计算机与数字工程 2021年8期
关键词:像素点正确率程度

赵柏山 张 楠

(沈阳工业大学信息科学与工程学院 沈阳 110870)

1 引言

图像匹配是指通过提取图像中比较显著的点形成数据信息,然后与其他图像的信息进行比对从而找到两幅或多幅图像的相关性。目前,在各领域中广泛使用基于互信息的图像配准,且出现了较多的优化算法[1]。在图像匹配方法中基于特征点的方法更受欢迎,因其在图像旋转和光照变化等方面的匹配性能更好。基于特征的影像匹配算法主要是提取图像的局部不变特征,如点特征、线特征等。其中,基于点特征的影像匹配算法以其稳定高效的优点而受到研究者的青睐。基于点特征的影像匹配算法由特征点提取、特征点描述以及特征点匹配三个步骤组成。

2 AKAZE算法

传统的特征匹配算法[2~5],因利用高斯滤波来消除噪声,会导致图像边界模糊和细节丢失[6]。为了解决这个问题,KAZE算法[7]采用基于非线性尺度空间的方法,即加性算子分裂(AOS)[8]算法来构造尺度空间,在非线性尺度空间完成特征点的检测。但该算法实现复杂,因此,提出了AKAZE算法[9~11],该算法在匹配精度和运算复杂度上都较KAZE算法有所优化。尽管如此,仍提高得不够理想。故此提出一种改进算法,利用FAST算法的高效提取对AKAZE算法的特征提取部分进行改善,使得算法在匹配速度及一些变换图像的鲁棒性方面[12~13]有进一步的提高。通过实验结果表明新算法的配准效果良好。

3改进的AKAZE算法

AKAZE算法虽然利用了二进制描述符,但由于特征点检测部分是用非线性滤波来构造尺度空间,因此匹配速度较慢。为提高匹配速度,现将ORB特征点检测与AKAZE算法的M-LDB描述符相结合,来实现图像特征匹配。

3.1 特征点检测

特征点检测部分使用改进的FAST算法[14],即拿一个点跟它周围的点比较,如果它和周围大部分的点都不一样就可以认为它是一个特征点。

首先定义一个阈值t,然后计算周围像素点与中心像素点的灰度差的绝对值,如果16个像素点中有N个点的绝对值大于等于t,则判定该检测点为特征点。为加快判定过程,先计算序号为1,5,9,13这4个像素点,其中至少有3个满足条件才进一步判断其它的像素点,否则丢弃P点。判定公式如下:

其中,I表示灰度值,N一般取9或者12。使用FAST算法找到的特征点如图1。

图1 FAST算法找到的特征点

为了弥补FAST算法的方向敏感性问题,ORB算法采用oFAST算法,即给FAST特征添加上方向信息。特征点方向的确定是在特征点邻域内找到特征点到质心的矢量方向以此方向来定义特征点的方向,邻域矩的公式可表示为

其中,S表示待测特征点的邻域,I表示灰度值。邻域的质心坐标可为

其中,m00,m01和m10分别为式(3)中p、q取值为0或1时的值。此时,可得到特征点的方向为

3.2 特征点描述与匹配

改进算法的特征点描述与匹配使用的是AKAZE算法的M-LDB[15]描述法。以任意给出的某图像为例,M-LDB描述符是根据特征点主方向,将LDB所划分的网格单元做相应旋转使其旋转到主方向上,然后计算每个网格的平均强度和梯度,各公式如下:

式中,m为网格i的总数,Iavg(i)为各网格单元的平均强度,dx(i)和dy(i)分别为网格i区域的x和y方向的梯度。然后,LDB分别比较成对网格单元之间的平均强度和梯度,根据比较结果,相应地设为0或者1。其公式如下:

对M-LDB算子生成的结果进行汉明距离匹配,生成匹配结果。用RANSAC[16~17]算法对匹配结果进行筛选,得到准确率较高的匹配图像。

4 实验与分析

4.1 实验设计

对不同模糊程度图像(blurbikes)、不同程度的JPEG压缩图像(JPEGubc)、不同光照强度图像(light.Leuven)、不同旋转角度的图像(viewpoint.graf)分别选取四张图片组成实验数据,通过第一张图片与其后的三张图片匹配得出匹配结果,把它们定义为第1~3组,对比它们的匹配时间与正确率。其中匹配时间是通过取30次匹配时间的平均值得出的,匹配正确率是取30次匹配正确率的平均值得出的。

实验中,所用的电脑为Windows7系统,64位的操作系统,并使用Visual Stdio 2017进行实验。

4.2 各变化条件下图像匹配结果及分析

不同模糊程度的图像如图2所示,将后三幅图片分别与第一幅图进行匹配,记录不同算法所用的匹配时间及正确率。图2(a)与图2(d)在改进算法下的匹配结果如图3。

图2 不同模糊程度的图像

图3 改进算法的匹配结果

不同模糊程度的图像的匹配时间与正确率的对比情况见表1(表中单位为百分比和微秒(ms))。

表1 不同模糊程度图像匹配时间与正确率

从表1可以看出,对于不同模糊程度的图像在匹配速度方面,本算法比AKAZE算法的匹配速度快了近4倍;在匹配准确率方面,比ORB算法准确率高,比AKAZE算法略低。

对原图片进行不同程度的JPEG压缩后如图4所示与原图像图4(a)进行匹配,改进算法的匹配结果如图5。匹配时间与正确率对比情况见表2。

图4 不同程度的JPEG压缩图像

图5 改进算法的匹配结果

表2 不同JPEG压缩图像的匹配时间与正确率

从表2可以看出,在不同程度的压缩图像在匹配速度方面,本算法比AKAZE的匹配速度平均快了两倍多;在匹配准确率方面,本算法比ORB算法和AKAZE算法都要高。

不同光照强度图像如图6所示,图6(a)与图6(d)在改进算法下的匹配结果如图7。相应的匹配时间与匹配正确率对比情况见表3。

图6 不同光照强度图像

图7 改进算法的匹配结果

表3 不同光照强度图像的匹配时间与正确率

从表3可以看出,在不同光照强度时,匹配速度方面,本算法比AKAZE算法快了近五倍;在匹配正确率方面,本算法在光照强度变化较小时,比ORB算法和AKAZE算法都高,但是在光照较暗时,正确率还有待提高。

不同旋转角度的图像如图8,图8(a)与图8(d)在改进算法下的匹配结果如图9。匹配的时间与正确率对比情况见表4。

图8 不同选转角度图像

图9 改进算法的匹配结果

表4 不同旋转角度图像的匹配时间与正确率

从表4可以看出,在图像的旋转角度变化中,在匹配速度方面,本算法比AKAZE算法快了五倍多;在匹配正确率方面,本算法在角度变化较小时,比ORB算法和AKAZE算法都高,但是在角度变化较大时,比ORB算法高比,AKAZE算法低,正确率还有待提高。

5 结语

文中提出的改进算法是将ORB算法与AKAZE算法相结合,采用ORB的FAST角点检测,提高了特征点检测速度。采用AKAZE的特征点描述部分保留了其鲁棒性强的特点,匹配时使用汉明距离,速度比欧式距离快。由此可见,两者结合后,算法的匹配速度比AKAZE算法提高很多。在不同JPEG压缩的图像、不同的光照强度图像匹配中,改进后的算法的匹配精度也比ORB算法与AKAZE算法更高。目前还存在着在不同模糊程度、不同旋转角度时匹配精度较AKAZE算法差的问题,对此如何解决,也将成为后续研究的重点。

猜你喜欢
像素点正确率程度
个性化护理干预对提高住院患者留取痰标本正确率的影响
课程设置对大学生近视认知的影响
男女身高受欢迎程度表
日语程度的类型与程度副词的对应关系
一种X射线图像白点噪声去除算法
基于灰度直方图的单一图像噪声类型识别研究
基于canvas的前端数据加密
图像采集过程中基于肤色理论的采集框自动定位
生意
生意