基于SURF算法和OpenCV的人脸特征检测技术研究
总第244期计算机与数字工程Vr01.38No.22010年第2期Computer&Digita{Engineering124
基于SURF算法和OpenCV的人脸特征检测技术研究‘
时磊谢晓方乔勇军
(海军航空工程学院兵器科学与技术系烟台264001)
摘要人脸检测和人脸跟踪Ⅲ技术已成为计算机视觉领域研究的热点。针对SURF算法的优点,首先将SURF算法应用于人脸特征枪测与跟踪,阐述了人脸跟踪系统设计方法,首先使用OpenCV技术实现了基于SURF算法的人脸特征跟踪系统。实验结果表明,基于SURF算法和OpenCV技术的人脸跟踪系统匹配识别效果和实时性较好,对人脸旋转、尺寸变化和环境光照变化具有较好鲁棒性[2|。
关键词快速鲁棒特征;OpenCV;人脸检测;人脸跟踪
中图分类号TP391.41
ResearchonFaceFeaturesDetectingTechnique
BasedOilSURFAlgorithmandOpenCV
ShiLeiXieXiaofangQiaoYongjun
(WeaponScienceandTechnologyDepartment,NavalAeronauticalandAstronauticalUniversity,Yantai264001)
AbstractFacedetectingandtrackingtechniquehasbecomepopularincomputervisionfield.BecauseSURFalgorithmhavemanygoodfeatures,SOtheexpirementmakeanapplicationofSURFalgorithmtOfacedetectingandfacetracking.E—
laboratedtOthedesignmethodoffacetrackingsystem,andmakeuseof
OpenCV
techniquecarriedouttheexperimentalsys-
ternoffacetrackingbasedonSURFalgorithmfirst.ExperimentresultexpressthatthefacetrackingsystembasedonSURFalgorithmandOpenCVtechniqueeffectiveinmatching,identifying,realtimeandrobustfeature,
KeyWordsSURF,OpenCV,facedetecting,facetracking
ClassNumberTP391.41
1引言
智能人机交互【3]技术和机器视觉领域中,人脸跟踪是一项十分重要的技术,它是指在视频流中提取人脸位置或角度变化信息。近年来,人脸跟踪已经成为机器视觉与模式识别领域的研究热点之一。目前,人脸检测的方法可以分为四类:基于知识的方法,特征不变方法,模板匹配方法和基于外貌的方法。在基于特征不变的方法中,由D.G.Lowe[4]提出的SIFT算法是目前效率较高的一种算法,在此基础上,HerbertBa产5J等人提出了SURF(Spee—ded.UpRobustFeatures)算法,该算法改进了SIFT算法,进一步提高了算法性能。本文提出基于SURF算法的人脸跟踪系统设计方法,在VC6.0中调用OpenCV图像处理库中的SURF函数实现人脸特征检测跟踪系统。
2SURF算法
2.1构建Hessian矩阵
Hessian矩阵是SURF算法的核心,为了方便运算,假设函数f(z,y),Hessian矩阵H是由函数,偏导数组成:
-收稿日期:2009年10月24日,修回日期:2009年11月27日作者简介:时磊,男,硕士研究生,研究方向:图像处理与模式识别。
万方数据
2010年第2期计算机与数字工程125w㈦州一匿所示的金字塔结构,图像的尺寸是变化的,并且运
(1)
算会反复使用高斯函数对子层进行平滑处理,图1
(b)说明SURF算法使原始图像保持不变而只改
变滤波器大小。
aetcH,一警雾一(籍)2㈣
判别式的值是H矩阵的特征值,可以利用判
定结果的符号将所有点分类,根据判别式取值正
负,来判别该点是或不是极值点。在SURF算法
中,用图像像素l(x,y)代替函数值f(x,y),选用二阶标准高斯函数作为滤波器,通过特定核间的卷积计算二阶偏导数,这样便能计算出H矩阵的三个矩阵元素L。、L。、k,从而计算出H矩阵:H(x,£):『-k‘x,‘)Lolx,‘’](3)
Lk(叉,£)L州LA,£)J
L(X,£)一G(t)。J(X)(4)L。(X,£)是一幅图像在不同解析度下的表示,可以利用高斯核G(£)与图像函数,(X)在点X一(z,y)的卷积来实现,核函数G(£)具体表示如式(5),g(£)为高斯函数,t为高斯方差,L。与L。同理。通过这种方法可以为图像中每个像素计算出其H行列式的决定值,并用这个值来判别特征点。为方便应用,HerbertBay提出用近似值现代替L。,为平衡准确值与近似值间的误差引入权值叫,权值硼随尺度变化,则H矩阵
判别式可表示为:
G(£)一掣(5)det(%加)一D二D圳~(讥%)2(6)2.2构建尺度空间
图像的尺度空间是这幅图像在不同解析度下的表示,由式(4)知,一幅图像j(X)在不同解析度下的表示可以利用高斯核G(£)的卷积来实现,图像的尺度大小一般用高斯标准差仃(口=tl/2)来表示[6]。在计算视觉领域,尺度空间被象征性的表述为一个图像金字塔,其中,输入图像函数反复与高斯函数的核卷积并反复对其进行二次抽样,这种方法主要用于sI盯73算法的实现,但每层图像依赖于前一层图像,并且图像需要重设尺寸,因此,这种计算方法运算量较大,而SURF算法申请增加图像核的尺寸,这也是SIFT算法与SURF算法在使用金字塔原理方面的不同。算法允许尺度空间多层图像同时被处理,不需对图像进行二次抽样,从而提高算法性能。图1(a)是传统方式建立一个如图
图1图像滤波金字塔
2.3精确定位特征点
所有小于预设极值的取值都被丢弃,增加极值使检测到的特征点数量减少,最终只有几个特征最
强点会被检测出来。检测过程
中使用与该尺度层图像解析度
相对应大小的滤波器进行检
测,以3×3的滤波器为例,该
尺度层图像中9个像素点之一图2检测特征点
与自身尺度层中其余8个点和在其之上及之下的两个尺度层9个点进行比较,共26个点,图2中标记‘x’的像素点的特征值若大于周围像素则可确定该点为该区域的特征点。
2.4主方向确定
为保证旋转不变性[8I,首先以特征点为中心,计算半径为6s(S为特征点所在的尺度值)的邻域内的点在z、y方向的Haar小波(Haar小波边长取4s)响应,并给这些响应值赋高斯权重系数,使得靠近特征点的响应贡献大,而远离特征点的响应贡献小,其次将60。范围内的响应相加以形成新的矢量,遍历整个圆形区域,选择最长矢量的方向为该特征点的主方向。这样,通过特征点逐个进行计算,得到每一个特征点的主方向。
3OpenCV图像开发库
OpenCV[9](OpenSourceComputerVisionLibrary)是一种用于数字图像处理和计算机视觉的函数库,由Intel微处理器研究实验室(Intel’sMicroprocessorResearchLab)的视觉交互组(TheVisualInteractivityGroup)开发。OpenCV由一系列C函数和少量C++类构成,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV也为Intel公司的IntegratedPer—formance
Primitives(IPP)提供了透明接口。这意
万方数据
126时磊等:基于SURF算法和OpenCV的人脸特征检测技术研究第38卷
味着如果有为Intel处理器优化的IPP库,OpenCV
将在运行时自动加载这些库。只需调用OpenCV
的基础函数库并添加自己编写的程序,即可完成十
分复杂的庞大的开发任务,达到事半功倍的效果。
4实验
系统首先提取模板图像,利用SURF算法检测
出模板图像的特征点,并记录特征点描述信息。通
璺
提取模板
二二[
开始视频捕捉
二二[
提取图像帧处理F帧If模板匹配
成功
标记人脸区域圈3系统流程图过摄像头捕捉视频帧,对提取的每一帧图像,使用SURF算法提取该帧图像特征点信息与模板图像相比较,得到最终匹配结果后用矩形窗表示人脸区域,图3给出该系统流程图。
验证系统以Mi—crosoftVisualC++
6。o为开发平台,调用OpenCV的Cvsurf.epp文件中的函数实现SURF算法,其中包括FastHessian检测、Haar小波变换等核心算法。系统通过在主程序main.cpp中调函数SURF—MATCH()实现模板匹配:
voidSURFMATCH(IplImage-R-frame)
{
Ipllmage*objeet=cvLoadlmage();//载入模板图像image一(IplImage*)cvCreatelmage();//载入搜索图像cvSetlmageROI()}//设置感兴趣区域
findPairs();//找到匹配对
cvLine(),//连接匹配的关键点
cvShowlmage();//显示综合图像
)
验证系统硬件设备使用IntelCore22.33GHzCPU,2Gb内存,ANC数字摄像头,进行一次匹配处
理的时间为130~150ms,
SⅥ冰算法是进行快速鲁棒
特征提取的有效方法,且正确
率高于90%,图4描述了通
过S1瓜F算法对模板图像进
行特征提取的结果,经计算共图4特征点检测效果提取309个特征描述信息。
通过实验,图5展示了人脸在不同角度变化下的匹配情况,实验通过不规则外接矩形表示头部的空间位置变化和人脸区域,具有良好透视效果,分别为人脸正面、俯视、左摆和左转的实验结果,结果显示SURF算法匹配效果良好,在±15。范围内变化中表现出良好的鲁棒性和较好实时性。图5从左到右分别为头部正面、俯视的、左摆、左转的SURF匹配效果。
图5匹配识别效果
5结语
本文提出了一种基于SURF算法和OpenCV的人脸跟踪技术,使用OpenCV函数库以提高编程效率。系统通过摄像头提取视频帧,对每一帧图像使用SURF算法进行快速鲁棒特征检测,再通过模板匹配技术找到特征点匹配对,在画面中用特征点的外接矩形表示人脸区域。实验结果表明,该方法具有复杂度低、实时性好和良好鲁棒性等特点。
参考文献
E12汪孑L桥。面向头肩序列图象的人脸检测、跟踪与编码技术的研究[D].中国科技大学博士论文,1999
[2]BastianLeibe,AlesLeonardis,BeretSchiele.RobustObjectDetectionwithInterleavedCategorizationandSegmentation[J].UcvSpecialIssueonLearningforVisionandVisionforLearning,2005,9revisedver—sion,2007,8
E3]李华胜.人机交互中人脸识别系统的研究[D].北京:北方交通大学硕士学位论文,2001
[43DavidGLowe.ObjectRecognitionfromLocalScale-InvariantFeatures[J].Pme.oftheInternationalCon—ferenceonComputerVision,1999(9)
[53HerbertBay,AndreasEss,TinneTuytelaars,etaLSpeeded-UpRobustFeatures(SURF)[J].PreprintsubmittedtOElsevier。2008(9)
[6]高健,黄一I淑,彭刚,等.一种简化的SIFT图像特征点提取算法[J].计算机应用研究,2008,25(7):2213~2215[7]周志铭,余松煜,张瑞,等一种基于SIFT算子的人脸识别方法[J].中国图象图形学报,2008,13(10):1882~1885[8]张锐娟,张建奇,杨翠.基于SUP,.F的图像配准方法研究[J].红外与激光工程,2009,38(1):160~165
[9]黎松,平西建,丁益洪.开放源代码的计算机视觉类库OpenCv的应用[J].计算机应用与软件,2005,22(8):
】34~】36万方数据
基于SURF算法和OpenCV的人脸特征检测技术研究
作者:时磊, 谢晓方, 乔勇军
作者单位:海军航空工程学院兵器科学与技术系,烟台,264001
刊名:
计算机与数字工程
英文刊名:COMPUTER AND DIGITAL ENGINEERING
年,卷(期):2010,38(2)
被引用次数:0次
参考文献(9条)
1.汪孔桥.面向头肩序列图象的人脸检测、跟踪与编码技术的研究[D].中国科技大学博士论文,1999
2.Bastian Leibe,Ales Leonardis,Bernt Schiele.Robust Object Detection with Interleaved Categorization and Segmentation[J].IJCV Special Issue on Learning for Vision and Vision for Learning,2005,9 revised version,2007,8
3.李华胜.人机交互中人脸识别系统的研究[D].北京:北方交通大学硕士学位论文,2001
4.David G.Lowe.Object Recognition from Local Scale-Invariant Features[J].Proc.of the International Conference on Computer Vision,1999(9)
5.Herbert Bay,Andreas Ess,Tinne Tuytelaars,et al.Speeded-Up Robust Features (SURF)[J].Preprint submitted to Elsevier,2008(9)
6.高健,黄心汉,彭刚,等.一种简化的SIFT图像特征点提取算法[J].计算机应用研究,2008,25(7):2213~2215
7.周志铭,余松煜,张瑞,等.一种基于SIFT算子的人脸识别方法[J].中国图象图形学报,2008,13(10):1882~1885
8.张锐娟,张建奇,杨翠.基于SURF的图像配准方法研究[J].红外与激光工程,2009,38(1):160~165
9.黎松,平西建,丁益洪.开放源代码的计算机视觉类库OpenCv的应用[J].计算机应用与软件,2005,22(8):134~136
本文链接:https://www.360docs.net/doc/232390524.html,/Periodical_jsjyszgc201002035.aspx
授权使用:中科院对地观测与数字地球中心(中科院遥感卫星地面站)(中科院遥感卫星地面站),授权号
:eeeb6d15-5c78-492f-b8ab-9e62009a3776
下载时间:2011年1月5日