具有抗仿射性的局部特征点匹配方法

2020-06-01 10:54:40邱云飞
计算机应用 2020年4期
关键词:向量场内点图像匹配

邱云飞,刘 兴

(辽宁工程技术大学软件学院,辽宁葫芦岛125105)

(∗通信作者电子邮箱394970000@qq.com)

0 引言

基于局部特征点的图像匹配算法是三维重建、SLAM(Simultaneous Localization and Mapping)系统、图像拼接等的重要步骤,但由于待匹配图像可能是在不同平面拍摄得到的,致使待匹配图像具有一定的仿射性,导致局部色差和形变较大,很难高效精确地匹配。

针对具有仿射性图像匹配效果不佳、随机采样一致性(RANdom SAmple Consensus,RANSAC)算法对具有仿射性图像得不到较好的参数模型等问题,国内外学者提出了许多改进算法。如MSER(Maximally Stable Extremal Regions)算法[1]利用分水岭算法检测出最稳定区域,然后通过对极值区域进行旋转和归一化处理,从而实现仿射不变性。MSER 算法通过归一化的方法,把不规则的局部特征采样区域标准化,可消除仿射变化对描述符的影响,但对仿射性较大的图像鲁棒性欠佳。针对尺度不变特征转换(Scale-Invariant Feature Transform,SIFT)算法[2]对具有仿射性图像匹配效果较差提出了ASIFT(Affine SIFT)算法[3],该算法对描述符采样区域在经纬度上进行投影,从而模拟图像在不同方向上的仿射变换,该方法的鲁棒性较好;但是SIFT描述符为128维浮点型,在不同方向上的投影导致描述符的维度急剧增加,严重影响匹配算法 的 速 度。文 献[4]在ORB(Oriented FAST and Rotated BRIEF)算法[5]的基础上提出了AORB(Affine Oriented FAST and Rotated BRIEF)算法,该算法与ASIFT 算法相似,首先利用FAST(Features from Accelerated Segment Test)算法检测特征点,然后以特征点为中心选取合适的区域作为采样窗口并在不同方向上进行投影,最后在多个方向上建立BRIEF(Binary Robust Independent Elementary Features)描 述 符[6]。AORB 算法利用BRIEF 二进制描述符可快速计算汉明距离的特性,相较于ASIFT 算法匹配速度有很大的提升;但是BEIEF描述符的鲁棒性较差,严重影响匹配算法的性能。文献[7]提出了一种具有仿射不变的彩色图像配准算法,通过模拟仿射变换得到一系列模拟图像,对模拟得到的图像计算颜色不变量,再对其进行特征点的检测及特征点的匹配[8]。文献[7]算法相较于ASIFT 算法在匹配速度上有很大的提升,但是高维度的浮点型描述符依旧造成匹配速度较慢,对实时性要求较高的场景难以应用。

针对现有的算法对具有仿射性图像匹配速度较慢、鲁棒性欠佳等问题,本文提出一种基于非线性滤波[9]的仿射图像匹配算法:A-AKAZE(Affine Accelerated KAZE)算法。首先利用非线性滤波构建非线性金字塔;然后借助Hessian矩阵在非线性金字塔上检测特征点,再以特征点为中心选择合适的区域在不同经纬度上进行投影构建A-MLDB(Affine Modified-Local Difference Binary)描述符;随后利用汉明距离衡量不同描述符的相似性;为了得到更精确的成对匹配点,使用向量场一致性(Vector Field Consensus,VFC)算法筛选内点[10-11]。

1 A-AKAZE算法

对具有仿射性的图像匹配时,AKAZE(Accelerated KAZE)算法的匹配效果相较于ASIFT 算法较差,故在本章中提出A-AKAZE算法,旨在增强AKAZE算法[12]抗仿射鲁棒性。

1.1 非线性金字塔搭建

非线性扩散滤波算法[13]主要是将灰度图像L 在不同尺度上变化表示为流动函数的扩散过程,可用非线性偏微分方程表示为:

其中:L 表示图像的灰度信息;div 表示流动函数的扩散;∇表示图像的梯度;c(x,y,t)表示传导函数。c(x,y,t)可表示为:

其中:t为尺度参数;∇Lσ表示灰度图像L经过高斯滤波后的梯度图像。g()函数表示为:

其中:k为控制扩散度的对比因子。

AKAZE 算法采用FED(Fast Explicit Diffusion)算法[13],以求解非线性扩散滤波函数中的偏微分方程式。FED算法可表示为:

其中:I表示单位矩阵;A(Li)为图像Li的传导矩阵;n表示显性扩散步数;τj表示对应步长。τj可表示为:

其中:τmax为最大迭代步长。单个FED 算法周期的停止时间θn为:

在非线性尺度空间的组和层,用o 和s 来表示,则对应的尺度参数可以表示为:

其中:σ0为初始尺度参数;O × S 表示金字塔共有的层数。非线性尺度空间的尺度参数σ 转换到时间单位中,映射关系可表示为:

其中:ti表示非线性金字塔的进化时间。

1.2 特征点检测

得到尺度空间后,利用Hessian 矩阵在每一层上提取特征点,如式(9)所示:

其中:σi为尺度因子初始值;Lxx为x 方向的2 阶导数;Lxy和Lyy类似。利用式(9)对尺度空间中的像素处理,然后对每个像素的相邻层中σi× σi区域以及所在层中σi× σi区域的像素值进行比较,当像素点为极值时,该点为特征点。

检测到特征点后,以特征点为中心画出半径为σi的圆,并把圆分为6 个部分,计算每个部分内所有像素点在横纵方向一阶导数的高斯加权值,高斯加权值最大方向为特征点主方向θ。

1.3 A-MLDB描述符

1.1节和1.2节分别构建尺度空间和检测特征点,为了增强AKAZE 算法的抗仿射变换,本节提出A-MLDB 描述符。具体构建方式如下:

1)以特征点为中心选取合适的采样区域P 构建MLDB(Modified-Local Difference Binary)描述符[14],并将采样区域P划分为n × n个网格。计算n × n单个网格内像所有像素值的平均值,表示为:

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

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

其中:

3)由式(11)可得,构建出MLDB 描述符,为每一对网格进行比较,得到3位二进制,可用式(12)表示:

则MLDB描述符可表示为:

如图1的仿射相机模型,A-MLDB描述符在多个角度上对匹配图像进行仿射变换,对经度φ和纬度θ进行采样实现。

首先,对纬度θ采样,采样比例为:1,a,a2,…,an,其中a >1,在本文中a = 2,n 取值为6。在对待匹配图像采样前,为防止出现混叠,需先借助标准差为c t2- 1 的高斯核函数对图像进行滤波,在本文中c = 0.8,t表示为倾斜参数。

图1 仿射相机几何模型Fig.1 Geometric model of affine camera

2 向量场一致性算法

得到A-MLDB 描述符后,利用汉明距离衡量不同描述符的相似性,完成具有仿射性图像的粗匹配。在传统方法中,使用随机采样一致性算法(RANSAC)对粗匹配点筛选,然而对于具有仿射性的图像很难得到鲁棒性较强参数模型,这导致粗匹配中的正确匹配点被误判为外点。

本文提出使用向量场一致性算法对具有仿射性匹配图像的粗匹配点筛选,得到匹配内点。当特征点完成粗匹配后,需要对成对特征点进行筛选,假如正确匹配点为内点,错误匹配点为离群点,可通过插值向量场f:χ →y 拟合成对匹配点集合中的内点[15]。经过A-AKAZE 算法完成图像的粗匹配后,可得到一个粗匹配的成对特征点点集(un,vn),其中un、vn为匹配图像成对匹配点的位置。然后对成对匹配点的坐标进行归一化处理为,通过变换得到运动场样本[16],其中xn=,yn=对于每一对匹配点(xn,yn)均有一个隐变量zn∈{0,1},若zn= 1则代表成对匹配点为内点,zn= 0表示为外点。

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

式(15)可利用期望最大化算法求解[16]。当期望最大化算法收敛时,可得到向量场f,然后通过预设定一个阈值τ,可以得到成对特征点的内点集合m,表示为:

3 实验与结果分析

为了验证本文算法对具有仿射图像匹配的优越性,选择Oxford和Fisher数据集提供的具有仿射变换的待匹配图像,分别 使 用ASIFT 算 法、ASIFT+RANSAC 算 法、AKAZE 算 法、AKAZE+RANSAC 算法进行对比实验。

本实验的硬件平台为个人笔记本,CPU 为Inter Core i7-6700,8 GB 内存,操作系统为Windows 10,编译环境为Visual Studio2013,基于Opencv3.1库进行实验。

在对比实验中ASIFT 算法的SIFT 描述符为128 维浮点型,在经度φ和纬度θ投影得到具有抗仿射性ASIFT描述符的参数设置分别为n = 6,c = 0.8,b= 72°。RANSAC 算法使用Opencv3.1 提供的开源findHomography()函数,RANSAC 算法的置信度p = 0.995,最大迭代次数为2 000。在本文中,AKAZE 算法的MLDB 二进制描述符为维度为256 bit。本文所提的A-AKAZE 算法的MLDB 二进制描述符维度为256 bit,在经纬度投影参数分别为n = 6,c = 0.8,b= 72°,向量场一致性算法的阈值τ = 0.5。

3.1 匹配标准

本文使用精确率判断不同算法的稳定性[17],精确率为待匹配图像的正确匹配点数n 与特征匹配算法匹配数N 的比值,如式(17)所示:

为了反映匹配算法的速度,本文使用每个特征匹配平均时间进行衡量,若两幅图像匹配耗时为Time,匹配点数为Num,则平均时间point_time可表示为:

3.2 实验结果与分析

实验图像如图2 所示,Oxford 数据集中Wall 和Graf 组图像,每组图像共有6张,第一张为目标图像,并分别与剩余的5张进行匹配,随着图像编号的增加仿射性逐渐增加。Fisher数据库中Freiburg_munster 和Autumntrees 组具有仿射性的图像,每组共有6张,第一张为基准图像,分别与剩余的5张进行匹配。

从图3 所示的不同组图像的匹配正确率折线图可看出,随着待匹配图像仿射性的增加,匹配正确率逐渐下降。

ASIFT 算法对描述符采样区域在经纬度上投影,模拟具有不同角度仿射性的图像,然后提取每个投影区域的SIFT 描述符,增加了描述符的抗仿射性;ASIFT+RANSAC算法先使用ASIFT 算法进行匹配,再借助RANSAC 筛选匹配的内点,RANSAC 算法是一个不断迭代的过程,对所有的匹配点进行估计得到参数化模型,但对具有仿射性的图像很难得到一个合适的参数化模型;AKAZE 算法借助非线性滤波构建金字塔,可以保留更多采样区域的边缘信息,然后使用MLDB 算法对采样区域的像素梯度和强度信息进行编码,该算法未对抗仿射性进行特殊处理。本文算法首先借助非线性滤波函数构建尺度空间;之后利用Hessian矩阵提取特征点并依次为中心选择合适的区域作为描述符的采样区域;然后再把采样区域在不同方向上进行投影,提取每个投影的MLDB 描述符;最后由于RANSAC 算法对仿射图像匹配的鲁棒性较差,采用VFC算法筛选正确匹配点。

图2 实验图像Fig.2 Experimental images

图3 不同算法的正确匹配率Fig.3 Correct matching rates of different algorithms

ASIFT 算法是在SIFT 算法基础上改进得到的,主要是对匹配算法的抗仿射性进行优化,故对具有仿射性的待匹配图像具有较好的鲁棒性;但是ASIFT 算法并未对匹配点的内点进行筛选,故匹配正确率相较ASIFT+RANSAC 算法较差。AKAZE 算法相较ASIFT 算法未对算法的抗仿射性进行增强,故匹配正确率较低。AKAZE+RANSAC 算法先用AKAZE算法进行匹配,再使用RANSAC算法有效地选择匹配内点,故匹配正确率远高于AKAZE 算法。本文的A-AKAZE+VFC 算法首先对采样区域在经纬度上进行投影,然后提取具有抗仿射性的A-MLDB 描述符,极大地增强了AKAZE 算法的抗仿射性;最后提出借助向量场一致性算法筛选内点,有效地克服RANSAC 算法了难以计算出具有仿射性参数模型的缺点,故本文算法的匹配正确率最高。

ASIFT 算法的采样区域在不同的经纬度上投影以模拟图像的仿射性,然后提取不同经纬度的浮点型梯度描述符,多次提取梯度描述符耗时较大,并且所得到的ASIFT 描述符的维度较高,在衡量不同描述符的相似性时耗时巨大,故单个匹配点耗时较长。RANSAC 算法根据成对匹配点的分布,不断地优化迭代参数模型,但对于具有仿射性图像很难得到较好的参数模型,故造成内点数较少,从而致使单个匹配点耗时很长,严重影响匹配算法的效率。本文算法虽也在不同的经纬度中提取描述符,但MLDB 描述符构建方式相较ASIFT 描述符简单,仅对相邻像素块的梯度和强度编码,而且MLDB 描述符为二进制,利用汉明距离衡量不同描述符的相似性速度较快;向量场一致性算法对匹配点进行建模,然后利用梯度下降法求解最小化能量函数,相较于RANSAC 算法具有更强的鲁棒性,故匹配点数量较多,单个匹配点的耗时较少。对图2(a)提供的Wall 组待匹配图像进行多次实验,得到运行时间和匹配点数,再用式(18)得到单个点匹配时间,结果如表1 所示,组号为Wall组中与第一张目标图像匹配的其余5张待匹配图像的序号。

表1 各种算法单个点匹配时间Tab.1 Single point matching time of various algorithms

4 结语

针对现有基于特征匹配算法对具有仿射性图像匹配效果较差的问题,本文提出一种改进的A-AKAZE 算法,首先利用非线性滤波构建尺度空间,然后借助Hessian矩阵提取特征点并以特征点为中心选择描述符采样区域,随后把采样区域在不同的经纬度上投影,再在采样区域上构建具有抗仿射性的A-MLDB 描述符,最后利用向量场一致性算法对成对匹配点进行筛选。经实验验证得:本文算法与ASIFT 算法、ASIFT+RANSAC 算法、AKAZE 算法、AKAZE+RANSAC 算法相比具有更强的抗仿射鲁棒性,单个匹配点所需的时间较短。

猜你喜欢
向量场内点图像匹配
具有射影向量场的近Ricci-Bourguignon孤立子
关于共形向量场的Ricci平均值及应用
一种用于光照变化图像匹配的改进KAZE算法
基于罚函数内点法的泄露积分型回声状态网的参数优化
自动化学报(2017年7期)2017-04-18 13:41:04
Hörmander 向量场上散度型抛物方程弱解的Orlicz估计
基于内点方法的DSD算法与列生成算法
挖掘机器人图像匹配算法研究
基于SIFT和LTP的图像匹配方法
由Hörmander向量场构成的抛物方程的正则性
一个新的求解半正定规划问题的原始对偶内点算法