APP下载

一种自适应阈值分块BRISK的图像配准方法

2014-08-29石祥滨张德园

沈阳航空航天大学学报 2014年3期
关键词:关键点复杂度阈值

石祥滨,孙 奇,张德园,刘 芳

(沈阳航空航天大学 计算机学院,沈阳 110136)

计算机工程

一种自适应阈值分块BRISK的图像配准方法

石祥滨,孙 奇,张德园,刘 芳

(沈阳航空航天大学 计算机学院,沈阳 110136)

提出一种基于自适应阈值BRISK的图像配准方法。首先,根据图像复杂度设置全局初始阈值,并检测图像关键点;然后将图像划分为若干均匀的子图像块,设置子图像块关键点数量范围,根据每个子图像块的关键点数量增加或删除关键点,并对关键点间距离进行约束,使关键点均匀化;最后匹配关键点,使用RANSAC算法剔除误匹配并估算变换模型参数。实验结果表明,本文提出的方法能够自适应地设定阈值,并获得分布均匀的关键点,从而提高图像配准的自动化程度。

BRISK;关键点;自适应阈值;图像配准

图像配准是指对两幅或多幅有重叠区域的图像进行匹配和变换的过程,使图像在空间位置上对齐。图像配准是图像拼接、全景图生成、图像超分辨率重建等任务的基础,配准结果的好坏对后续处理有着重要影响,因此一直是各个领域的研究热点。自动的图像配准能在没有人为参与或较少人为参与的情况下实现,可以在保证一定速度的条件下,达到亚像素级精度。本文重点研究如何实现自动配准。

基于特征的方法是图像配准中的常用方法,该方法通过提取图像中的显著特征(如边缘、轮廓、直线、关键点等),并利用特征间的匹配关系估计图像间的变换关系。因此,特征提取是图像配准中的关键环节。近年来,文献中出现大量特征提取算法,如SIFT[1]、SURF[2]、HARRIS[3]、FAST[4]、ORB[5]等,其中SIFT、SURF精度高、鲁棒性强,但算法效率不尽人意。HARRIS、FAST、ORB三种算法在速度上有较大优势,但应对尺度、视角等图像变化的鲁棒性不理想。

Leutenegger于2011年提出了二进制鲁棒尺度不变关键点提取算法BRISK[6](Binary robust invariant scalable keypoints),该算法因具有适应性强、能够达到亚像素定位精度、运行速度快的优点得到了广泛研究与应用。如:文献[7]将BRISK算法用于对红外视频序列间的运动估计中,得到了高精度的全局运动矢量。文献[8]将BRISK算法应用于惯性组合导航系统中,取得了较好的景象匹配效果。文献[9]首先检测BRISK关键点,然后对BRISK关键点描述方式及匹配方法进行了改进,实现了视频序列目标的快速识别与跟踪。本文考虑到BRISK算法的优点,试图将其应用于图像配准中,但经研究与实验,发现BRISK算法仍存在需手动设置阈值和关键点分布不均匀的问题。

针对以上两点问题,本文提出了一种基于自适应阈值分块BRISK的自动图像配准方法。该方法根据图像复杂度自适应地设置全局初始阈值,对图像分块并以子块为单位增加或删除关键点、限制关键点距离使关键点均匀化,进而实现图像自动配准。

1 基于BRISK的图像配准方法

基于BRISK的图像配准方法主要包括BRISK关键点检测、生成BRISK描述符、关键点匹配、删除误匹配、变换模型参数估计、图像变换与插值六个环节。

在检测环节,BRISK算法首先使用高斯差分滤波器DOG(Difference of Gaussian)构建N组S层的高斯差分金字塔,如图1(a)所示。然后在尺度空间金字塔的每一层执行AGAST[10]角点检测,对检测的AGAST关键点,根据响应值大小进行尺度空间非极大值抑制,并使用曲线拟合方法计算亚像素精度位置,如图1(b)所示。

图1 BRISK算法关键点检测与描述

在描述环节,BRISK采用如图1(c)所示的固定采样模式对关键点周围像素采样,使用标准差为σ的高斯函数平滑采样点,σ与采样点到关键点的距离成正比,根据采样点间的灰度关系将采样点对划分为短距离点对集合S和长距离点对集合L两类,利用长距离点对集合L计算关键点方向,将采样点对旋转到关键点方向,利用短距离点对间的亮度比较生成二进制描述符。

在生成BRISK描述符后,可以使用Hamming距离来衡量二进制描述符的相似性,从而实现关键点匹配。然后使用RANSAC[11]剔除误匹配,利用正确匹配关键点间的对应关系估计变换模型参数,最后使用变换矩阵对图像进行变换与插值。

2 自适应阈值分块BRISK关键点检测

虽然BRISK算法鲁棒性强、具备亚像素精度、效率高,但存在需手动设置检测阈值和关键点分布不均匀的问题。一方面,手动设置阈值将无法实现自动配准;另一方面,关键点分布不均匀不利于后续配准变换模型的计算,有时甚至导致配准失败。因此,本文对BRISK关键点检测方法进行改进,提出了自适应阈值分块BRISK的图像配准方法。首先根据图像复杂度设置全局初始阈值,检测关键点,对图像分块并以子块为单位增加或删除关键点、限制关键点距离使关键点均匀化,下面对其关键环节进行详细论述。

2.1 初始全局阈值的设置

理想情况下,关键点检测算法提取的关键点应该随着图像复杂度的增加而增加,并且在整幅图像中均匀分布。针对不同的图像,BRISK需手动设定检测阈值。采用BRISK提取特征点时,对于同一幅图像,阈值大则关键点数量少,阈值小则关键点多;在阈值相同的情况下,复杂度低的图像检测到的关键点少,而复杂度高的图像检测到的关键点多。可见,阈值的选择应充分考虑图像的复杂程度。为了提高算法的自适应性,本文根据图像复杂度自动设置图像的全局初始阈值。

图像的复杂度是指图像包含客观信息量的大小[12]。文献[12-15]分别使用不同的方法对图像的整体(或局部)复杂度进行了表示。本文使用信息熵(Entropy)和灰度共生矩阵((Grey Level Co-occurrence Matrix,GLCM)[16]的三个常用特征参数(对比度、能量、相关度)综合描述图像的整体复杂度。

图像的信息熵能够客观反映图像包含信息量的大小,信息熵越大,图像包含信息量越大。假设一幅大小为M×N、灰度级为L的图像,灰度级为I∈L的像素在图像中出现的概率为pl,图像整体信息熵为各个灰度级的信息熵的累加:

(1)

灰度级为L的图像GLCM共有L阶,如公式(2)所示。矩阵元素p(i,j)为像素灰度为i,与该像素空间位置关系为D、灰度为j的像素出现的次数。计算出GLCM后,可分别根据公式(3)、(4)、(5)提取图像的对比度、能量、相关性三个纹理特征。

PD(i,j)(i,j=0,1,2,…L-1)

(2)

对比度CON反映了图像的清晰度和纹理沟纹深浅的程度,清晰度越高、纹理沟纹越深,则对比度越大。

(3)

能量J是灰度共生矩阵的元素值的平方和,反映了图像灰度分布的均匀性和纹理粗细程度,分布均匀、纹理粗、能量大;反之,能量小。

(4)

相关性COV用来度量GLCM元素在行、列方向上的相似度。当GLCM矩阵元素值均等时,相关性大;相反,相关性小。

(5)

Complex=Entropy+Constract-Energy-Correlation

(6)

其中,Entropy、Contrast分别代表归一化后的信息熵和对比度,两者的权值设为1,Energy、Correlation分别代表归一化的能量和相关性,二者的权值设为-1。

图2 实验所用部分图像

本文使用公式(6)对大量图像的复杂度进行了计算及统计,图2展示了所测试的部分图像,其复杂度见表1,其中复杂度为各因子归一化后的加权结果。可见,本文所设计复杂度计算公式可客观地描述图像的复杂程度,无需人为参与且结果符合人类的视觉效果。

表1 部分图像复杂度

本文通过实验对图像复杂度、BRISK关键点阈值及检测结果进行分析后,根据图像复杂度将阈值划分为5个等级,设计了自适应全局初始阈值计算函数Threshold,如公式(7)所示,计算机可根据图像复杂度自动设定初始阈值,无需人工参与。在不同的应用背景下,可适当调整公式(7)中的阈值及划分等级,以适合实际需要。

(7)

2.2 关键点均匀化

使用全局初始阈值进行关键点检测,可有效解决人为设定阈值工作量大、阈值难以确定的问题,但在图像纹理分布不均匀的图像中,所检测关键点多聚簇于纹理复杂区域而在较平坦区域只有较少关键点,甚至没有。针对这一问题,本文提出了分块增加或删除关键点方法,并通过关键点间距离约束消除关键点聚簇现象,使得关键点均匀化。具体步骤如下:

(1)初始化处理,设置图像块内关键点数量理想范围,局部阈值下限、局部阈值降低步长,将图像划分为N×N个子图像块;

(2)依次对每个图像块进行判断,若图像块内关键点个数在理想范围内,则结束当前图像块处理,对下一个图像块进行判断;

(3)若图像块内关键点数量小于理想范围的下限,则进行增点处理,具体过程如下:

(a)计算子图像块复杂度,并根据子图像块复杂度设置局部初始阈值,对图像块进行检测;

(b)再次对关键点数量进行判断,若关键点数量已大于理想范围的下限或当前局部阈值已小于局部阈值下限,则结束当前图像块处理,进行下一个图像块处理,否则,继续步骤(c);

(c)按设定步长降低局部阈值,重新检测,重复步骤(b),直至完成该图像块处理;

(4)若图像块内关键点数量大于理想范围的上限,则进行删点处理:根据响应值对关键点排序,只保留规定范围内响应值较大的关键点,删除其余关键点;

(5)限制关键点间距离。将所有关键点按响应值大小降序排列,并保存到初始集合I{k1,k2,…kn},依次取出关键点ki,i∈[1,n]判断最终关键点集合F中是否存在关键点与ki的距离大于预先设定距离,若是,则舍弃ki,否则,将ki存入最终关键点集合F。

3 实验结果分析

本文实验平台为:3.00 GHz CPU和1.00 GHz内存的PC机,采用VS2008程序开发环境和OpenCV库编程实现。为验证本文算法的有效性,本文使用分别包含视角、尺度和旋转、光照、模糊变换的四组图像进行实验。四组图像如图3所示,前两组图像来自牛津大学视觉几何实验室,后两组图像由手持照相机于沈阳航空航天大学拍摄获得。使用本文算法对这四组图像进行配准,并将配准结果与阈值为40和70的原算法(分别用BRISK-40和BRISK-70表示)的配准结果进行比较。

已知图3(a)中的两幅图像的真实变换矩阵

图3 实验所用图像

表2为三种算法在视角变换下的实验结果,其中keynum1和keynum2分别为在参考图像和待配准图像中所检测到的关键点数,allmatches为两幅图像的所有匹配点数,inliers为正确匹配点数,precision为正确匹配率,precision越高,说明匹配结果越准确,RMSE为配准精度评价指标,RMSE越小,说明配准精度越高。

从表2可以明显看出,BRISK-40所检测出的关键点过多,这是由阈值设置过小造成的。本文算法和BRISK-70所检测的关键点数量适中,均在2000以内,本文算法匹配率达到100%,RMSE值与其他两种算法的值较接近。可见,在视角变换下本文算法与原算法均具有较高的配准精度。

表2 视角变换实验结果

表3 旋转和尺度变换实验结果

从表3可以明显看出,在匹配准确率和配准精度方面,本文算法性能较高,BRISK-40算法性能适中,BRISK-70,检测到的关键点数量较少,且在所检测到的关键点中是两幅图像的同名点的更少,因此无法实现正确匹配,进而导致配准失败。

表4 光照变换实验结果

表5 模糊变换实验结果

表5为三种算法在模糊变换下的实验结果。三个矩阵的元素值均与真实变换矩阵的元素值非常接近,同时,三种算法的匹配正确率和配准精度均较高,即三种算法均对本组图像达到了理想的配准结果。

综合分析以上四组实验,三种算法在光照变换和模糊变换下的配准精度较高,明显高于视角、旋转和尺度变换。由于原算法需根据不同的情况手动设置阈值,若使用固定阈值,则在某些情况下容易导致配准失败(如在旋转和尺度变换实验中BRISK-70配准失败)。本文算法自适应地设置阈值,对环境的适应性更强,且配准精度与原算法配准精度相当甚至高于原算法。典型的本文算法配准实例如图4所示。

图4 Boat配准实例

本文为解决BRISK关键点检测需手动设置阈值的问题,首先计算图像复杂度,设置初始全局阈值,并根据在图像块的关键点进行动态调整。因此,与原算法相比,本文算法的复杂度相对较高。本文算法与BRISK-40,BRISK-70在四种情况下的耗时比较结果如表6所示,可见,在光照变换和模糊变换情况下,本文算法均比BRISK-40,BRISK-70耗时长,在视角变换下,本文算法比BRISK-70耗时长,但BRISK-40耗时远远高于本文算法及BRISK-70,这是由BRISK-40阈值设置过小,所检测到的关键点过多所导致,而在尺度和旋转变换情况下,本文算法耗时比BRISK-40长,但BRISK-70配准失败,这是由BRISK-70阈值取值过大,所检测到的关键点较少所导致。

表6 三种算法的耗时结果 s

综上所述,本文算法能够自适应地设置阈值,因此对环境的适应能力更强,可以实现自动配准,同时具有较高的配准精度和较好的稳定性。但本文算法也存在一些缺陷:复杂度较高,与阈值较大的原算法相比,耗时较长。

4 结论

本文对BRISK关键点检测方法进行改进,提出了自适应阈值分块BRISK的图像配准方法。首先,根据图像复杂度设置全局初始阈值,并检测图像关键点;然后根据每个子图像块的关键点数量增加或删除关键点,并对关键点间距离进行约束,从而提取分布均匀关键点;最后匹配关键点,使用RANSAC算法剔除误匹配并估算变换模型参数。实验结果表明,本文提出的方法能够自适应地设定阈值,并获得分布均匀的关键点,在保证一定精度的情况下,提高了图像配准的自动化程度。但本文算法运行效率不理想,需采取一些行之有效的措施进行加速处理,有待进一步研究。

[1]Lowe D G.Distinctive image features from scale-invariant key-points[J].International Journal of Computer Vision,2004,60(2):91-110.

[2]Bay H,Tuytelaars T,Van Gool L.Surf:Speeded up robust features[C]//Computer Vision-ECCV 2006.Springer Berlin Heidelberg,2006:404-417.

[3]Harris C,Stephens M.A combined corner and edge detector[C]//Alvey vision conference.1988,15:50.

[4]Rosten,Drummond T.Machine Learning for High speed Corner Detection[C]//European Conference on Computer Vision,Graz,Austria,2006:430-443.

[5]ETHAN R,VINCENT R,KURT K,et al.Bradski.ORB:an efficient alternative to SIFT or SURF[J].International Conference on Computer Vision,2011.

[6]Leutenegger S,Chli M,Siegwart R Y.BRISK:Binary robust invariant scalable keypoints[C]//Computer Vision(ICCV),2011 IEEE International Conference on.IEEE,2011:2548-2555.

[7]张勇,王新赛,李明明,等.鲁棒的车载红外视频电子稳像算法[J].强激光与粒子束,2013,4(4):853-857.

[8]许允喜,蒋云良,陈方.惯性组合导航系统中基于 BRISK 的快速景象匹配算法[J].光电子.激光,2012(8):1559-1596.

[9]曹建,谢晓方,付霖宇,等.基于两步位操作匹配的实时目标识别跟踪算法[J].弹箭与制导学报,2013,33(2):125-128.

[10]Mair E,Hager G D,Burschka D,et al.Adaptive and generic corner detection based on the accelerated segment test[C]//Computer Vision-ECCV 2010.Springer Berlin Heidelberg,2010:183-196.

[11]Fischler M A,Bolles R C.Random sample consensus:a paradigm for model fitting with applications to image analysis and automated cartography[J].Communications of the ACM,1981,24(6):381-395.

[12]高振宇,杨晓梅,龚剑明,等.图像复杂度描述方法研究[J].中国图象图形学报,2010,1:129-135.

[13]李欣,赵亦工,郭伟.基于复杂度的自适应门限弱小目标检测方法[J].光子学报,2009,38(8):2144-2149.

[14]闫成新,桑农,张天序,等.基于局部复杂度的图像过渡区提取与分割[J].红外与毫米波学报,2005,24(4):312-316.

[15]郭云彪,尤新刚,张春田,等.面向信息隐藏的图像复杂度研究[J].电子学报,2006,34(6):1048-1052.

[16]Wu C M,Chen Y C,Hsieh K S.Texture features for classification of ultrasonic liver images[J].Medical Imaging,IEEE Transactions on,1992,11(2):141-152.

(责任编辑:刘划 英文审校:刘敬钰)

MethodofimageregistrationbasedonadaptivethresholdandblockBRISKalgorithm

SHI Xiang-bin,SUN Qi,ZHANG De-yuan,LIU Fang

(College of Computer Science and Engineering,Shenyang Aerospace University,Shenyang 110136,China)

An image registration method based on the adaptive threshold BRISK is proposed.Firstly,global initial threshold is set according to image complexity and image keypoints are detected.Then,image is divided into a number of uniform sub-image blocks,the ranges of keypoints of sub-image blocks are set,keypoints are added or deleted based on each sub-image block′s keypoints number,and the distance between keypoints is limited.Finally,we match the extracted keypoints and use RANSAC to remove the mismatches,and calculate the transformation matrix.Experimental results show that the proposed method can adaptively set thresholds and get keypoints with even distribution,and increase the automation degree of image registration.

BRISK;keypoint;adaptive threshold;image registration

2013-11-18

国家自然科学基金(项目编号:61170185)

石祥滨(1963-),男,辽宁大连人,教授,主要研究方向:分布式操作系统、虚拟现实、网络游戏,E-mail:sxb@sau.edu.cn。

2095-1248(2014)03-0065-08

TP391.4

A

10.3969/j.issn.2095-1248.2014.03.013

猜你喜欢

关键点复杂度阈值
聚焦金属关键点
肉兔育肥抓好七个关键点
小波阈值去噪在深小孔钻削声发射信号处理中的应用
一种低复杂度的惯性/GNSS矢量深组合方法
基于自适应阈值和连通域的隧道裂缝提取
比值遥感蚀变信息提取及阈值确定(插图)
求图上广探树的时间复杂度
室内表面平均氡析出率阈值探讨
某雷达导51 头中心控制软件圈复杂度分析与改进
出口技术复杂度研究回顾与评述