基于改进的加速鲁棒特征的目标识别

2017-12-13 07:16龙思源孙保基
中国光学 2017年6期
关键词:实时性特征向量尺度

龙思源,张 葆,宋 策,孙保基

(1.中国科学院 长春光学精密机械与物理研究所 航测部重点实验室,吉林 长春 130033;2.中国科学院大学,北京 100049)

基于改进的加速鲁棒特征的目标识别

龙思源1,2,张 葆1*,宋 策1,孙保基1,2

(1.中国科学院 长春光学精密机械与物理研究所 航测部重点实验室,吉林 长春 130033;2.中国科学院大学,北京 100049)

为了提高加速鲁棒特征(SURF)算法的实时性和准确性,本文提出了一种结合AGAST角点检测和改进的SURF特征描绘算法。首先利用AGAST角点检测模板检测特征点,再使用增加对角信息的哈尔小波响应来生成特征点的描述子,之后利用特征袋对产生的描述子进行编码并生成新的特征向量,最后利用支持向量机(SVM)对特征向量进行分类,完成识别。本文以SIFT和SURF算法为对照,分别进行不同视角、光照和尺度的识别实验。实验结果表明,本文算法的平均识别率为98.0%、96.9%、97.1%,平均时间分别为66.1 ms、79.3 ms、41.0 ms,在识别率上较优于SURF算法,所耗时间约是SURF算法的1/3。

图像处理;目标识别;加速鲁棒特征;AGAST角点检测

1 引 言

近年来,目标自动识别已经成为图像处理领域的热门方向,其核心是利用计算机视觉技术,对图像或视频中的内容进行识别和描述。它在人机交互、武器自动跟踪、智能视频监控等领域有着很好的应用前景和潜在的经济价值。然而,在图像或视频的采集过程中,经常会受到环境影响,例如光照变化、视角变化、目标尺度变化等,使得待检测目标发生光照、尺度和形状上的变化,从而导致识别失败[1]。

普遍来说,目标的自动识别主要分为两个步骤:(1)目标图像的特征向量提取;(2)训练分类器。由于局部特征往往都具有亮度、旋转和尺度不变性,因此,在目标识别和图像匹配中有着极为广泛的应用[2]。所选取的目标特征的稳定与否,决定了该自动识别方法的优劣。

2004年,加拿大学者David Lowe首次提出尺度不变特征变换(Scale Invariant Feature Transform,SIFT)算法[3]。该算法先利用高斯差分(Difference of Gaussian,DoG)算子找到图像的特征关键点,再在关键点的4×4邻域的每个小块中计算其8个方向的灰度梯度方向直方图。这样就在每个关键点上构建了一个128维的特征向量。SIFT特征算法具有较好的视角、尺度、亮度不变性,但是由于DoG算子的特性和特征向量的维数较高[4],该算法的实时性能较差。在SIFT的基础上,2006年Herbert Bay提出了加速鲁棒特征(Speeded-up Robust Feature,SURF)算法[5],其用快速海森矩阵为模板提取关键点,并利用Haar小波特征生成64维的特征向量,从而大大提高了算法的实时性[6]。2011年,Stefan Leutenegger等人提出的BRISK(Binary Robust In variant Scalable Keypoints,BRISK)算法和2012年Alexandre Alahi等人提出的FREAK(Fast Retina Keypoint,FREAK)算法都是基于二值化特征提取的算法。这两种算法大大提高了特征提取的时间效率。然而,由于使用的是二值特征,丢失了很多图片原有信息,它的识别效果远不如SIFT和SURF[7-8]。所以,目前世界上广泛研究和使用的算法仍是SURF算法。

为了进一步提高SURF算法的实时性和稳定性[9],本文以AGAST(Adaptive and Generic Accelerated Segment Test,AGAST)角点提取方法代替快速海森矩阵模板法,并对SURF特征描述子加以改进,此外还加入了特征袋编码,最后使用支持向量机(Support Vector Machine,SVM)进行特征分类,最终实现目标识别。实验证明,该算法在实时性和不同尺度下的识别率都要高于原来的SURF算法。

2 SURF算法简介

2.1 特征点检测

在SURF算法中,图像的显著度由该像素点的Gaussian-Hessian矩阵行列式的值决定。图像的不同尺度需要利用高斯核G(t)卷积得到,再与Hessian矩阵结合,这样就可以得到x(x,y),外尺度为σ的高斯海森矩阵,如式(1):

式中,与图像卷积的矩阵即为高斯海森矩阵。其中Lxx(x,σ)、Lxy(x,σ)、Lyy(x,σ)表示高斯函数的二阶微商。

为了进一步加快运算速度,SURF算法将Lxx(x,σ)、Lxy(x,σ)、Lyy(x,σ) 3种模板进行近似处理,将原先的模板变换为Dxx(x,σ)、Dxy(x,σ)、Dyy(x,σ),如图1所示。

加入补偿系数之后,其行列式如公式(2)所示:

其中0.9是Bay给出的一个经验值。利用该行列式的值,同时结合非极大值抑制方法,就可以得到一系列特征点的位置和尺度。

2.2 特征描述

检测出关键点之后,在生成描述向量之前需要确定主方向。SURF算法中,主方向的选取方法是统计特征点邻域内的Haar小波响应。具体方法是:在尺度s下,在特征点附近半径为6s的圆内,统计圆心角为60°的扇形内所有点的水平、垂直Haar小波响应并进行加权求和,然后以一定的角度旋转扇形重复上述操作,最终得到一系列的模值,模值最大的方向即为该关键点的主方向。

图1 高斯海森矩阵中的Lyy积分模板的近似DYYFig.1 Approximate DYY of Lyy integral template in Gaussian-Hessian matrix

确定关键点的主方向之后,在特征点周围取一个4×4的正方形邻域,每一个正方形小邻域包含有5×5个像素,在每个小邻域中统计25个像素的水平方向和垂直方向的Haar小波响应,将它们作为特征描述(这里,水平和垂直均是相对于主方向)。这些Haar小波特征描述值为:水平方向值的和Σdx,水平方向绝对值的和Σ|dx|,垂直方向的和Σdy,垂直方向绝对值的和Σ|dy|。

图2 SURF描述子的生成示意图Fig.2 Schematic diagram of SURF descriptors generating

这样,每个小区域就有4个值,而4×4个小邻域内共有64个值,即生成了该特征点的64维的描述向量。如图2所示。

SURF算法在保证特征鲁棒性和灰度变化信息的同时,将SIFT的128维描述向量减少到64维,大大缩短了特征向量的生成时间,相对于SIFT算法,极大地提高了实时性。

3 结合AGAST的改进SURF算法

3.1 特征点检测

SURF算法在特征点检测中使用近似的快速海森矩阵模板进行检测,虽然速度比SIFT的Harris模板有了显著的提高,但是实时性并不是很好。在尺度不变要求下,AGAST算法有着更高的计算效率和实时性[11]。

对于AGAST算法,为了较好实现尺度不变要求,需构建尺度空间金字塔。它由n个octave层ci和n个中间层di组成(i=0,1,…,n-1)。ci是通过对原始图像c0的依次半采样得到的,而中间层di位于ci和ci+1之间,第一个内层d0是对原始图像c0的1.5倍下采样得到的,其他内层是依次对d0半采样得到的。

图3 AGAST在不同尺度下的层和内层Fig.3 Octaves and intra-octaves of AGAST algorithm in different scales

完成尺度空间金字塔构建后,可以进行关键点的检测。用FAST9-16模板分别作用于每个层和每个内层,用于找到潜在的感兴趣区域。使用该模板的前提是,在周围16个像素的圆周上至少需要有9个连续的像素点比圆心像素充分亮或者充分暗。之后进行非极大值抑制,非极大值抑制:(1)该点的FAST模板积分s须大于同一层周围邻域中8个点的积分s;(2)该点积分s必须大于相邻层同一点的积分。满足以上两个条件的点才能被检测为关键点。经实验证明利用该方法检测出的关键点,有着较好的尺度不变性,同时,较SURF具有更好的实时性,大大缩短了关键点的检测时间[12]。

3.2 特征描述

在主方向确定后,SURF算法利用Haar小波特征的水平和垂直模板对正方形小邻域进行卷积和加权求和,构造了64维向量对关键点进行描述。但是,仅仅采用水平方向和垂直方向这两个方向的Haar小波响应统计量过于简单。为了进一步提高识别准确率,本文加入了对角特征的采样模板[13],如图4所示。

图4(c)即为对角Haar小波响应的模板,黑色块的值为-1,白色块的值为1,采用与SURF算法类似的方法进行加权求和,在SURF向量中加入对角向量的和值以及对角向量的绝对值的和值。这样改进后的SURF描述子就变为(Σdx,Σ|dx|,Σdy,Σ|dy|,Σdd,Σ|dd|,描述关键点的特征向量相应地变为96维。虽然特征向量的维数有一定提高,但是得到的描述子包含更多的图像信息,使得图像的区分度更高。

3.3 特征袋编码

为了进一步提高算法的鲁棒性,减少分类器的学习和分类时间,需对大量的特征向量进行特征袋(Bag of Features,BoF)编码。BoF的原理是利用已提取的全部局部特征的统计信息,对特征向量重新编码,然后生成新的描述向量[14]。对特征进行BoF编码不仅不会丢失原有的图像信息,而且会进一步提高算法的实时性。

具体过程是,首先,对所有训练样本中的局部特征向量进行K-均值分类,把k个聚类中心{α1,…,αk}作为视觉词汇构成编码本(k是人为选取);然后,找到与待检测图片样本中每一个局部特征向量最接近的视觉词汇αi,并以αi代替该特征向量;再统计{α1,…,αk}在该图片样本中出现的频率直方图,以该频率直方图为基础,即可生成该图片新的描述向量。

虽然选取的编码本视觉词汇数量远大于特征向量维数,例如选取1 000个词汇数量远大于SURF的向量维数64,但是一个图像的所有特征向量经编码后就是一个1 000维的带有图像局部特征统计信息的向量。而如果直接使用SURF,每个特征点均有一个64维向量,对于一幅分辨率为384×288的图像,则会检测出150~180个特征点,那么待处理的数值就有上万个,不仅时间性能较差,而且不利于后面学习分类的数据使用。

3.4 特征分类

特征分类的方法有很多,如最近邻分类器、神经网络分类器、Adaboosting分类器、支持向量机等。

SVM是一种二类分类模型,基本模型定义为特征空间上间隔最大的线性分类器,其是基于机器学习的分类算法,学习的策略即算法的核心是间隔最大化,即先将样本通过一个变换核映射到更高维度的空间,然后在该空间中找到一个超平面将其分为两类。

由于SVM有着较好的精确性和较低的时间复杂度,而且根据文献,SVM对SIFT/SURF特征的分类效果较好,故本文选用SVM分类器对样本进行训练和分类[15]。

综上所述,整个识别算法分为两部分,首先进行样本的训练和BoF字典的生成,再利用SVM对特征向量进行识别分类,整个识别过程如图5所示。

图5 识别算法流程Fig.5 Flowchart of proposed detection algorithm

4 实验与结果

为了检验本文提出的目标自动识别算法的性能,在Visual Studio 2012的软件平台上,分别使用SIFT特征、SURF特征和本文提出的特征算法对仿真图像进行目标识别实验,使用识别率、识别时间两种定量指标对算法性能进行评价。本文选取ALOI数据库中的图像进行目标识别,分别使用3种算法,对不同光照、视角和尺度的目标图像进行识别。

4.1 不同视角实验

首先,每隔5°拍摄一幅物体的照片,每隔45°视角选取一个正样本,共7个正样本,进行训练,其他的作为检测样本,如图6所示。

图6 不同角度的样本目标Fig.6 Objects of different vew-points

分别使用SIFT、SURF和本文提出的算法对102个检测样本进行识别,正确数、正确率和平均识别时间见表1。

由表1可以看出,本文算法在正确率上高于SURF算法,但是略低于SIFT算法。在时间性能上,本文算法远高于SIFT和SURF算法,平均所需时间接近SURF算法的1/3;SIFT算子由于特征描述复杂度更高,其平均耗时远大于SURF算子,是本文算法的近9倍。

表1 不同视角下3种算法的性能比较Tab.1 Performances comparison of three algorithms under different view-points

4.2 不同光照实验

本实验中选取光照均匀亮度适中的图像作为训练样本,然后改变光照的角度和强度,作为待检测样本,如图7所示。

图7 不同光照的样本目标Fig.7 Objects of different illumination

同样使用3种算法对49幅图像进行识别检测,得到结果见表2。

表2 不同光照下3种算法的性能比较Tab.2 Performances comparison of three algorithms under different illumination

从表2可以看出,在光照变化的条件下,SIFT算子的识别率大幅降低,而本文算法和SURF算法仍然保持较高的识别率,同时,相对于SURF算法,时间性能仍可大幅提高。

4.3 不同尺度实验

下面,将视角和尺度相结合进行检测。训练样本均选取不同视角实验中的训练样本,对不同视角实验中的待检测样本进行下采样,将分辨率由384×288降为192×144,将这些下采样图片作为待检测样本,然后再使用3种算法对102幅图像进行识别检测,结果如表3所示。

表3 不同尺度下3种算法的性能比较Tab.3 Performances comparison of three algorithms under different scales

在不同视角条件下,由于图像被降采样,可能会丢失一些特征,导致同种算法识别率有一定程度降低。但是横向比较可发现,本文算法在保持了SIFT算子的高识别率下,大幅缩短了所需处理时间。

由上述3个对不同视角、不同光照、不同尺度的目标进行的识别实验结果可以看出,本文的改进SURF算法,由于在描述子中加入了新的特征,识别率相对于原SURF算法略有提高,但在尺度和视角的鲁棒性上比SIFT算法略低。本文提出的算法的最大优势是所需的平均时间相对于SURF算法缩短了近60%,是SIFT算法所需时间的近1/9,算法的实时性有了极大地提高。

5 结 论

本文在SURF算法的基础上,对其特征点的检测和特征点的描述进行了改进;使用速度更快的AGAST特征点检测算法,大大提高了算法的实时性;而在特征点的描述中,在Haar小波特征的垂直和水平特征基础上增加了对角特征以提高描述子的信息量、保证识别算法的鲁棒性和准确率。然后再配合特征袋编码算法和支持向量机分类器完成识别。对ALOI数据库图像的实验结果显示,在不同视角、光照、尺度的情况下,本文算法的识别率均能保持在95%以上,总体上优于SIFT和SURF算法,而其平均时间约为SURF算法的1/3,SIFT算法处理时间的1/9,实时性有了极大地提高。本文算法相对于SURF算法有很好的实时性,同时对于视角和尺度的变化也保持了较高的鲁棒性,在实际工程应用中具有重要意义。

[1] 贾平,徐宁,张叶.基于局部特征提取的目标自动识别[J].光学 精密工程,2013,21(7):1898-1905.

JIA P,XU N,ZHANG Y.Automatic target recognition based on local feature extraction[J].Opt.PrecisionEng.,2013,21(7):1898-1905.(in Chinese)

[2] 赵春阳,赵怀慈.多模态鲁棒的局部特征描述符[J].光学 精密工程,2015,23(5):1474-1483.

ZHAO CH Y,ZHAO H C.Multimodality robust local feature descriptors[J].Opt.PrecisionEng.,2015,23(5):1474-1483.(in Chinse)

[3] LOWE D.Distinctive image features from scale-invariant keypoints[J].InternationalJ.ComputerVision,2004,60(2):91-110.

[4] HARRIS C,STEPHENS M.A combined corner and edge detector[J].AlveyVisionConference,1988(3):147-151.

[5] BAY H,TUYTELAARS T,VAN GOOL L.SURF:speeded-up robust features[J].ComputerVisionamp;ImageUnderstanding,2006,110(3):404-417.

[6] MIKOLAJCZYK K,SCHMID C.A performance evaluation of local descriptors[J].IEEETransactionsonPatternAnalysisandMachineIntelligence,2005,27(10):1615-1630.

[7] 王飞宇,邸男,贾平.结合尺度空间FAST角点检测器和SURF描绘器的图像特征[J].液晶与显示,2014,29(4):598-604.

WANG F Y,DI N,JIA P.Image features using scale-space FAST corner detector and SURF descriptor[J].ChineseJ.LiquidCrystalsandDisplays,2014,29(4):598-604.(in Chinese)

[8] 成培瑞,王建立,王斌,等.基于多尺度区域对比的显著目标识别[J].中国光学,2016,9(1):97-105.

CHENG P R,WANG J L,WANG B,etal..Salient object detection based on multi-scale region contrast[J].ChineseOptics,2016,9(1):97-105.(in Chinese)

[9] 武治国,李桂菊.动态目标识别中的实时复杂巡航场景运动检测[J].液晶与显示,2014,29(5):844-849.

WU ZH G,LI G J.Real-time complex cruise scene detection technology in target recognition[J].ChineseJ.LiquidCrystalsandDisplays,2014,29(5):844-849.(in Chinese)

[10] MAIR E,HAGER G,BURSCHKA D,etal..Adaptive and generic corner detection based on the accelerated segment test[J].ComputerVision-ECCV,2010,2010:183-196.

[11] 王丽.融合底层和中层字典特征的行人重识别[J].中国光学,2016,9(5):540-546.

WANG L.Pedestrian re-identification based on fusing low-level and mid-level features[J].ChineseOptics,2016,9(5):540-546.(in Chinese)

[12] ZHANG H,HU Q.Fast image matching based-on improved SURF algorithm[C].International Conference on Electronics,Communications and Automation Control,IEEE,2011:1460-1463.

[13] ROSTEN E,PORTER R B,DRUMMOND T,etal..Faster and better:a machine learning approach to corner detection[J].IEEETransactionsonPatternAnalysisandMachineIntelligence,2010,32(1):105-119.

[14] CSURKA G,DANCE C,FAN L,etal..Visual categorization with bags of keypoints[C].8th European Conference on Computer Vision,Progue,Czech Republic,2004:1-22.

[15] DONGHOON K,ROZENN D.Face components detection using SURF descriptors and SVMs[C].IEEE International Machine Vision and Image Processing Conference,IEEE,2008:51-56.

龙思源(1992—),男,湖北襄阳人,硕士研究生,主要从事图像处理和目标识别方面的研究。E-mail:Alfred_lsy@163.com

张 葆(1966—),男,吉林磐石人,博士,研究员,博士生导师,主要从事航空光电成像技术方面的研究。E-mail:cleresky@vip.sina.com

Objectdetectionbasedonimprovedspeeded-uprobustfeatures

LONG Si-yuan1,2,ZHANG Bao1*,SONG Ce1,SUN Bao-ji1,2

(1.KeyLaboratoryofAirborneOpticalImagingandMeasurement,ChangchunInstituteofOptics,FineMechanicsandPhysics,ChineseAcademyofSciences,Changchun130033,China; 2.UniversityofChineseAcademyofSciences,Beijing100049,China)

*Correspondingauthor,E-mail:alfred_lsy@163.com

To improve the real-time performance and the accuracy of the SURF algorithm,an algorithm combined with AGAST corner detector and improved SURF feature descriptor is proposed.Firstly,feature points are detected by using AGAST corner detection template.Secondly,the Haar wavelet response with increased diagonal information is used to generate descriptor of feature points.Then,the generated descriptor is encoded by the feature bag and a new feature vector is generated.At last,the classification is fulfilled by Support Vector Machine(SVM).Finally,SVM is used to classify the feature vectors to complete the detection.Detection experiments for different view-points,illumination and scales are conducted respectively using SIFT and SURF algorithm as a control.The results show that the average detection rate of this algorithm is 98.0%,96.9% and 97.1%,and the average time is 66.1 ms,79.3 ms and 41.0 ms,respectively,which is better than that of SURF algorithm,and the time consumption is about 1/3 of the SURF algorithm.

image processing;object detection;Speeded-Up Robust Features;AGAST corner detection

2017-05-11;

2017-07-13

中国科学院长春光学精密机械与物理研究所重大创新资助项目(No.Y3CX1SS14C)

Supported by Major Innovation Project of CIOMP,CAS,China(No.Y3CX1SS14C)

2095-1531(2017)06-0719-07

TP391.4

A

10.3788/CO.20171006.0719

猜你喜欢
实时性特征向量尺度
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
克罗内克积的特征向量
财产的五大尺度和五重应对
一类三阶矩阵特征向量的特殊求法
EXCEL表格计算判断矩阵近似特征向量在AHP法检验上的应用
航空电子AFDX与AVB传输实时性抗干扰对比
计算机控制系统实时性的提高策略
可编程控制器的实时处理器的研究
宇宙的尺度
9