基于动态模板与活动轮廓的人脸正面自动模式识别系统研究
周激流张晔朱辉郭晶龙建忠
摘要:研究了基于动态模板与活动轮廓的人脸正面自动模式识别方法.用基于先验知识的积分投影提取人脸特征大致位置,给出针对人脸具体几何特征的动态模板(DeformableTemplate)与活动轮廓(ActiveContour)的数学模型及改进的能量函数.该模型能提取出人脸特征的精确轮廓,将特征输入B-P网络进行训练.实验证明,系统识别率高,且对于光照、倾斜等具有一定的不敏感性.
关键词:人脸正面自动识别;动态模板;活动轮廓;特征提取;B-P网络
中图分类号:TP392文献标识码:A
ZHOU Ji-liu, ZHANG Ye, ZHU Hui, GUO Jing, LONG Jian-zhong
(Dept.of Radio & Electronics Engineering,Sichuan University,Chengdu 610064)
Abstract:An automatic front-view face recognition system is studied:First,coarse facial features are extracted by knowledge-based integral projection.Then,mathematical models and energy functions of deformable template and active contour,which can extract the fine contour of each facial component,are introduced.B-P neural network techniques are employed to construct a classifier.Through experiment,this system is proved to have a high recognition accuracy,and work well regardless of the variations in scale,tilt and rotation of head.
Key words:automatic front-view face recognition;deformable template;active contour;feature extraction;B-P neural network
人脸图象的自动识别是一个饶有趣味而又充满挑战的研究课题,其广泛的应用前景包括:信用卡验证、工业安全核对、档案管理、公安侦察、医学和视频会议等.这方面的研究始于60年代.W.Bledsoe首先提出人脸的半自动识别系统[1].T.Kanad创造性地运用积分投影从单幅图象上计算出脸部特征参数用于模式分类[2].目前国内外的研究方法主要包括:(1)基于几何特征的固定模板匹配法[3,4];(2)基于代数特征的识别法[5~7];(3)基于连接机制的神经网络学习法[8,9].我们利用多分辨率的思想,在二值图象上根据积分投影法获得人脸的面部关键点,根据这些关键点的位置信息,在原始灰度图象上利用改进的动态模板(DeformableTemplate)和活动轮廓(ActiveContour)等方法提取人脸特殊部位精确的几何轮廓形状,在此基础上,采用神经网络作分类器,取得了较好的识别结果.
1算法原理
1.1系统框图
识别系统框图如图1所示.其中,图象预处理包括了噪声去除、对比度调节及灰度归一等算法.特征粗提取是通过基于先验知识的积分投影得到人脸几何特征的大致位置,而特征细提取则是用动态模板与活动轮廓提取特征的精确轮廓形状.
图1识别系统框图
1.2图象预处理及边界提取
用3×3模板对人脸原始图象进行中值滤波以去除点噪声,再做灰度拉伸以调节图象的对比度,然后用直方图均衡法调节图象灰度的均值和方差,达到灰度归一的目的.这样就消除了图象摄影时不同照明度而造成的影响,从而得到了人脸标准灰度图.
为了有效地使用积分投影提取粗特征,必须先提取人脸图象的边界.利用四个方向上的Sobel算子及LAT[10,11]提取二值边界图.
首先计算
(1)
式中,Sobelk(x,y)表示第k方向上的Sobel算子(见图2);g(x,y)为低通滤波处理后的图象.低通滤波器可表示为3×3掩模.
图2各sobel及掩模算子
其次,根据文[10]的规则得到二值边界图.
(2)
实验中,我们发现利用该规则判断得到的二值图象孤立点较多,特别是在下列情况将更容易导致误判:
(1)连续低灰度区:此时g(x,y)很小,导致非边界点误判为边界点.
(2)连续高灰度区:此时g(x,y)很大,导致边界点误判点非边界点.
由于这种误判将直接导致下一阶段的特征粗提取的耗时过多甚至失败,为此,提出了修正规则.
(3)
式中,thereshold1,thereshold2,const1,const2均可由灰度直方图分析得到.最后,去掉边界图的孤立点.若边界点(x,y)的8邻域中,边界点的数目小于3,则认为点(x,y)是噪声,去除;否则予以保留.
边界提取算法与S.Y.Lee及Y.K.Ham[10]的算法结果比较如图3所示.
图3预处理算法实例比较
每幅上面的二值图象是本文算法处理结果,下面的二值图象则是文献[10]的处理结果
1.3基于先验知识的特征粗提取
为方便讨论,假定所研究的人脸图象满足三个条件:(1)人脸位于图象中心;(2)旋转角度较小;(3)脸部无眼镜及浓密胡须.
由此,根据人脸面部的生理结构特征,我们有如下先验知识(如图4).
图4人脸先验知识示意图
知识1:如果对人脸二值图象进行积分投影的话,则积分投影曲线的最大水平投影值对应眼睛、眉毛或前额发线.
知识2:
知识3:
知识4:
知识5:x1<x2<x3<x4<x5
知识6:y1<y2<y3<y4<y5
知识1表明可以通过计算二值边界图的水平投影确定眼睛及眉毛的纵坐标.知识2~6则进一步指导各脸部几何特征的粗提取.
首先,利用积分投影法[18]计算二值边界图的水平投影.由上可知投影最大值对应眼、眉或发线,通常假定其对应眼部.然后在眼部以下找到另外两个波峰,分别对应鼻和嘴,若眼与鼻之间的垂直距离小于鼻与嘴之间的垂直距离,则为误判.删除此最大值及其邻域值,重新确定眼部位置,直至满足知识2~6,这样,得到了各几何特征的y坐标值.
然后,确定特征的x坐标值,以眼部为例:置水平剖面(以眼部y坐标为中心,±δ象素宽)于标准图象上,在此剖面上做垂直投影,左右两个连续大投影区对应眼部的x坐标值.同理可得其余各特征的x坐标.
最后检测所得各坐标是否满足先验知识.若满足,则粗提取完成,否则删除误差值及其邻域,重复粗提取过程.
1.4基于动态模板与活动轮廓的特征细提取
特征粗提取已抽出了人脸结构的几个关键点,但仅靠这些点来表征人脸是很不充分的,因此,我们还要精确的提取人脸五官部位的连续的轮廓形状.动态模板是参数化的简单图元模型,根据先验知识定义的能量函数指导其收敛过程.而活动轮廓则是能量最小化的曲线,由能量函数使其收敛到局部边界.Yuilleetal[16,17]首先利用动态模板进行特征提取.C.L.Huang在文[12]中进一步提出了用动态模板与活动轮廓进行特征细提取的算法.为减轻计算量,我们在此算法基础上设计出了改进的动态模板与活动轮廓模型.其中,动态模板用于眼部、嘴部的精确提取,活动轮廓用于眉毛的精确提取.
1.4.1眼部和嘴部形状的提取提取的目的是在给定粗区域内提取出眼睛和嘴巴的精确轮廓.其模型如图5所示.
图5(a)倾斜角度为A的眼睛轮廓模型
图5(b)倾斜角度为A的嘴巴轮廓型
眼睛部位的能量函数定义为
(4)
(5)
(6)
式中,Upper-Parabola和LowerParabola为眼部上下边界,用标准抛物线参数拟合;Shade-Area表示图中的阴影部分,对应于眼球的瞳仁部分.当倾斜角度较大时,w1应取较小值,g(x,y)代表象素(x,y)的灰度值,?φedge(x,y)为其边界响应,有
(7)
(8)
式中,h1,h2,L,A的取值范围为:(1)h1∈(h1-α,h1+α);2)h2∈(h2-β,h2+β);3)L∈(L-λ,L+λ);4)A∈(A-σ,A+σ).
在此范围计算Etotal,当Etotal达到极小时,由此时的各参数确定的曲线即为眼睛的精确轮廓.类似地,嘴巴轮廓处的能量函数定义为
(9)
(10)
(11)
(12)
式中,Upper-Parabola,Middle-Parabola和Lower-parabola分别代表嘴部上中下三个边界.同样用标准抛物线参数拟合,g(x,y)代表象素(x,y)的灰度值,?φedge(x,y)为其边界响应
(13)
(14)
(15)
同样,h1,h2,h3,L,A的取值范围为:(1)h1∈(h1-α,h1+α);2)h2∈(h2-β,h2+β);3)h3∈(h3-β,h3+β);4)L∈(L-λ,L+λ);5)A∈(A-σ,A+σ).
在此范围内计算Etotal,当Etotal达到极小时,得到嘴部精确轮廓.
1.4.2眉毛细提取
通常,活动轮廓模型能量函数可定义如下[12~14]
(16)
式中,v(s)代表活动轮廓的位置;Eint是使轮廓趋向平滑化的能量;Eimage表示与图象的局部特征吻合的能量;Econ表示外部约束能量.
在眉毛形状的提取中,考察每个候选点的3×3邻域,有
(17)
式中,Econtinuity表示该点的连续性的贡献,而Ecurvature表示该点的弯曲程度的贡献.考虑Econtinuity和Ecurvature的物理含义,有以下方程近似成立。
(18)
(19)
由于一阶微分将导致曲线点间距缩小,从而导致高曲率部分点的堆积,故可用代替,dmean为每次迭代的平均距离,在中,点间距接近平均距离的将有较小能量值,从而更好地满足一阶连续.dmean将在每次迭代后重新计算.为加快收敛,Econtinuity和Ecurvature均用邻域内最大值归一化.由于采用3×3掩模,可获得8个方向上的能量测度.Eimage可定义为
于是得到能量函数的离散形式
(20)
在迭代过程中,为了加快收敛速度,我们提出如下算法(n代表总点数;初始化αi=βi=σi=1)
do//looptolocksnakeonthefeaturecontour
{
Move_Number=0;//initializationthenumberofpointsmovedinaiterationprocess
fori=0ton//0,1,2,…,n-1,0closedcurve
Emin=Big_Const//initializationofenergyfunctionvalue
forj=0to7//evaluatein8-neighborhood
Ej=αiEcontinuity,j+βiEcurvature,j+δiEimages,j
ifEj<Eminthen
{Emin=Ej
j_min=j
}
Movepointvitoj_min
ifj_min≠Current_Location
{
Move_Number++
}
}While(Move_Number>threshold)
当能量函数达到极小时,可得到眉毛精确轮廓.
用类似方法还可以提取鼻孔及脸部轮廓(如下颌).考虑到提取这些轮廓收敛时间长,且大部分信息在自动识别及表情分析中用处不大,我
们只用积分投影法提取轮廓上的几个关键点.
2实验结果及讨论
利用各种特征提取方法实验结果如图6.1] Bledsoe W.Man-machine facial recognition.Panoramik Research Inc.,Palo Alto,CA,1996,Rep.PRI:22.
[2] Kanad T.Picture Processing by Computer Complex and Human Faces.Tech Rep.,KYOTO Univ.,Dept.Sci.,1973.
[3] Sama A,Iyengar P A.Automatic Recognition and Analysis for Human Faces and Facial Expressions:A Survey[J].Pattern Recognition,1992,25:65~77.
[4] Brunelli R,Poggio T.Feature Recognition:Features versus Templates[J].IEEE on PAMI,1993,15(10):1042~1052.
[5] 彭辉,张长水,荣钢等.基于K-L变换的人脸自动识别方法[J].清华大学学报,1997,37(3):67~70.
[6] 程永清,庄永明,汪华峰等.一种有效的人脸识别方法[J].自动化学报,1993,19(1):54~61.
[7] Ziquan Hong.Algebric Feature Extraction fo Image for Recognition[J].Pattern Recognition,1991,24(3):211~219.
[8] Valentin D,Abdi H,Toole A J O,et al.Connectionist Models of Face Processing[J].Pattern Rocognition,1994,27:1209~1230.
[9] Cottrell G W,Munro P,Zipser D.Learning internal Representations of Gray Scale Image:An Example of Extentional Programming[M].1987,Proc.9th.Annual Cognitive Sci.Soc.Conf.,Erlbaum Hillsdale,1987,462~473.
[10] Lee S Y,Ham Y K,Park R H.Recognition of Human Front Faces Using Knowledge-based Feature Extraction and Neuro-Fuzzy Algorithm[J].Pattern Recognition,1996,29(11):1863~1876.
[11] Robinson G S.Edge Detection by Compass Gradient Masks[J].Comput.Graph.Image Process.1977,6:492~501.
[12] Huang C L,Chen C W.Human Facial Feature Extraction for Face Interpretation and Recognition[J].Pattern Recognition,1992,25(12):1435~1444.
[13] Olstad B,Torp A H.Encoding of a Priori Information in Active Contour Models[J].IEEE on PAMI,1996,18(9):863~872.
[14] Kass M,Witkin A,Terzopoulos D.Snakes:Active Contour Models[J].Computer Vision,1988,1(4):321~331.
[15] Williams D J,Shah M.A Fast Algorithm for Active Contour and Curvature Estimation[J].CVGIP:Image Understanding,1992,55(1):14~26.
[16] Yuille A,Cohen D,Hallian P.Facial Feature Extraction by Deformable Templates.Technical Report 88-2,Harvard Robotics,Lab.,1988.
[17] Yuille A L.Deformable Templates for Face Recognition[J].Cognitive Neruroscience,1991,3(1):59~70.
[18] 周激流.人脸正面模式自动识别方法研究
收稿日期:1998-11-09
图6人脸面部特征提取实例
其中,眼睛和嘴巴轮廓用动态模板法获得,眉毛轮廓用活动轮廓方法得到,下巴轮廓用先验模板(详见另文)获得,鼻子的MBR用积分投影法获得实验证明,在不增加运算量的条件下,动态模板与活动轮廓能较为精确地提取出人脸特征的连续轮廓,在一定程度上提高了识别率.而且,提取出的精确特征有利于进一步地描述人脸的表情.同时,该算法对光照,倾斜等也具有一定的不敏感性.
识别系统的分类器采用非线性变换单元组成的前馈型神经网络(BP网),采用的实验图象是256×256×8bits灰度图.对12个不同的人(每人4张照片,2张为训练样本,2张为测试样本)进行了识别,识别率为95.8%(24幅测试图,有1幅误识).而纯粹靠几个关键点及由此构成的诸如长度、面积、角度等几何特征[18]来对同样的图象进行识别,其准确率仅为79.2%.
基金项目:
作者单位:
参考文献
[
国家自然科学基金项目
作者简介:周激流(1963),男,教授,感兴趣的研究方向有图象图形处理、模式识别与人工智能等四川大学无线电系,成都610064A STUDY ON AUTOMATIC FRONT-VIEW FACE RECOGNITION BASED
ON DEFORMABLE TEMPLATE AND ACTIVE CONTOUR |