基于非线性最小乘的人脸姿态估计算法

2016-03-23 03:23张美玉侯向辉任炜彬徐锦婷王嗣钧
浙江工业大学学报 2016年1期
关键词:三维建模主成分分析

张美玉,侯向辉,任炜彬,徐锦婷,王嗣钧

(1.浙江工业大学 计算机科学与技术学院,浙江 杭州 310023;

2.浙江省可视媒体智能处理技术研究重点实验室,浙江 杭州 310023;

3.南京航空航天大学 计算机学院,江苏 南京 210016)



基于非线性最小乘的人脸姿态估计算法

张美玉1,2,侯向辉1,2,任炜彬1,徐锦婷1,王嗣钧3

(1.浙江工业大学 计算机科学与技术学院,浙江 杭州 310023;

2.浙江省可视媒体智能处理技术研究重点实验室,浙江 杭州 310023;

3.南京航空航天大学 计算机学院,江苏 南京 210016)

摘要:为提高人脸姿态估计的精确度和鲁棒性,提出了一种结合多特征点三维建模与抗表情干扰策略的姿态估计算法.该算法将3D通用标准模型与输入的人脸特征点进行拟合,进一步将问题抽象成为非线性最小二乘问题.为解决此问题,提出了一种新颖的粗估计方法,并利用搜索类算法进行迭代求精,最终得到最优解.实验结果分析表明: 该算法具有鲁棒性,对人脸表情具有抗干扰能力.

关键词:非线性最小二乘;人脸姿态估计;三维建模;迭代搜索;主成分分析

人脸姿态估计是指从输入的单幅图像或视频中确定人脸在3D空间中姿态的过程[1-2],其不仅在人机交互、智能监控、虚拟现实、计算机游戏等诸多领域有着重要的应用[3-4],同时还是多姿态人脸识别的前提条件[5-6],是计算机视觉领域一个重要的研究课题.人脸姿态估计的方法大致可以分为两类[7]:基于外观的方法和基于模型的方法.基于外观的方法是在假设人脸姿态与人脸外观特征(如图像灰度、色彩、梯度等)之间,存在着某种特定关系这一前提下,通过滤波后图像比较以及神经网络、支持向量机、核子空间等统计学习工具训练大量已知姿态的人脸外观图像来建立这种关系.此类方法严重依赖样本数量和划分策略,当样本数量不足或划分策略不够详尽时,结果往往也不够理想.基于模型的方法[5]将人脸的几何结构通过投影模型表示出三维人脸模型和二维人脸图像之间的关联,继而可以把人脸姿态估计算法归结为某一准则下的多参数最优化问题.而非线性最小二乘则是解决此类问题的最简单高效的方法之一, 其思想是通过旋转3D通用模型,然后投影至图像平面,与测试人脸特进行最小二乘拟合,在最小误差约束下,拟合出人脸姿态,从而达到姿态估计的目标.

鉴于上述分析,笔者给出一种基于非线性最小二乘的人脸姿态估计算法.该算法主要做了如下工作:1) 利用主成分分析(Principal component analysis, PCA),对人脸特征点进行重构,克服表情对姿态估计的不良影响;2) 证明问题隶属于非线性最小二乘问题,建立对应的数学模型,并利用马夸尔特算法(Levenberg-marquard,LM)对粗估计姿态进行迭代求精.

1人脸3D通用模型表达

1.1 特征点标定

通常,在能够获得高精度人脸特征点的前提下,基于模型的人脸姿态估计算法一般具有易实施、结果准确等优点.特征点的选择对算法的精确度起着关键的作用.故此,特征点的标定应遵循以下原则:

1) 选取对应于某种意义的特征点,比如眼睛的边角或鼻子的中心.

2) 选取最大曲率点和最高点作为特征点.

3) 选取以上两步的特征点连线的中间点,作为新的特征点.

在此需要说明的是,通常手工标定的特征点相对稳定且有效,当然也可以使用已有的自动标定算法,自动标定算法会标定纹理信息丰富的点作为特征点,适合进行跟踪.

基于上述原则,选取眉毛、鼻子、嘴巴、下巴等纹理信息丰富的N处特征点来构成脸的模型.这N个特征点可以表示成一个具有3n个元素的向量,其表达式为

M=(x1,y1,z1,x2,…,zn)T

(1)

其中:xi为特征点i在X轴坐标;yi为特征点i在Y轴坐标;zi为特征点i在Z轴坐标.故此,M也可以表示为

M3×N=(x1,x2,…,xn),Xi=(xi,yi,zi)T

(2)

1.2 通用模型生成表达

经过标定后,可以得到若干张3D人脸图片,每张3D人脸上有N个标定的特征点,而且每个特征点包含着3个坐标信息.首先通过平移、缩放和旋转等处理后,得到目标人脸的基本几何信息[6],主要进行以下操作:确立每张人脸的中心坐标;通过平移,对人脸中心坐标进行对齐;通过缩放,对人脸的大小进行统一;通过选择,对人脸的角度进行校准,从而从式(2)得到M0.

1) 计算样本的预估3D通用模型,即

(3)

2) 计算每张3D人脸与预估3D通用模型的Procrustes距离Pd,即

(4)

3) 运用广义Procrustes分析法对3D通用进行归一化处理.

4) 重复步骤2)和3),当Procrustes距离小于设定阈值ε,从而得到算法所需的3D通用模型,如图1所示.

图1 3D通用模型Fig.1 3D general model

2特定人脸模型构建与姿态估计

人脸的姿态有三个自由度,分别为上下摆动(pitch),左右摆动(yaw)和平面内旋转(roll)[1],相应地,我们定义空间旋转矩阵分别为

(5)

(6)

(7)

给定目标图像G,对其进行姿态估计,等价于计算其自由度向量(α,β,γ).普遍采用的姿态估计算法思想是,将3D通用模型在空间中旋转角度(α,β,γ),使得其在某一基准二维坐标系中的投影,与目标图像G尽可能吻合.

为减少计算量,假定目标图像所在坐标系为基准坐标系.根据算法思想,很容易得到

sW(RM+T)=G

(8)

其中:s为伸缩因子;T3×1=(tx,ty,tz)为空间平移向

量;M3×N为3D通用模型;G2×N为估计目标(输入人脸特征点集);R3×3为空间旋转矩阵;N为标定特征点总数;W2×3为投影矩阵,具体形式为

(9)

对式(9)进行化简,根据广义矩阵变换原理,将旋转矩阵R,空间偏移向量T,伸缩因子合并成为一个矩阵,更新数学模型为

(10)

(11)

3非线性最小二乘算法的人脸姿态求解

由于求解模型存在旋转矩阵,造成了方程非线性,从而将姿态估计问题转换为求解非线性最小二乘问题.目前解决非线性最小二乘问题有多种算法,如梯度下降法,高斯-牛顿法,阻尼牛顿法以及莱文伯格-马夸特(Levenberg-marquardt,LM)算法等等.我们采用LM算法,因其结合了梯度下降法和高斯牛顿法的优点,迭代速度快,而且能够克服模型求解过程中的病态性,成为目前解决非线性最小二乘问题应用最广泛的算法之一.

3.1 通过估算求解参数

定理1不相容线性方程组Ax=b的最小二乘解必为相容线性方程组ATAx=ATb的解,反之亦然.

(12)

应用定理1,将P视为求解参数,得到

(13)

(14)

(15)

进一步,根据P的参数形式,求解(α,β,γ,tx,ty,s),即

γ=arctan(P(1,2)/P(1,1))

(16)

(17)

(18)

s=P(1,3)/sinβ

(19)

tx=P(1,4)/s,ty=P(2,4)/s

(20)

3.2 调整参数迭代求精

由3.1给定的参数解不够精确,从式(10)的建立可以看出:其求解实际上是一个非线性拟合同时推求参数的过程,设参数J,可表述为

(21)

其中:Mi和Gi分别为模型M与估计目标G的第i个列向量.

设Xk表示第k次迭代的解向量,则迭代求解的规则为

(22)

式中:Sk为误差指标函数,其Hessian矩阵为(▽2Sk),梯度向量为▽Sk.

对于LM算法,其误差指标函数[6]为

Sk=VkTVk

(23)

其中Vk为误差向量,抗差解为

ΔX=-[JTJ+μI]-1JTV

(24)

其中:阻尼系数μ>0;I为单位矩阵.

(25)

(26)

4实验结果分析

4.1 鲁棒性分析

人脸姿态估计受表情因素影响较大,含有表情因素的实验数据的特征点自动标定往往会出现误差,从而影响对姿态的估计.含有表情因素的数据选取自LFW数据库,并手动标定特征点作为其真值,如图2所示.从图3,4可以看出:按改进算法标定的特征点和真值点的基本吻合,而按SDM[7]标定的特征点和真值点

则出现了严重的误差,其中,黑色的点代表特征点真值,红色的点代表两种算法自动标定的点.我们计算特征点与其真值距离的归一化误差值,结果如图5所示.

图2 含有特征点真值的图片Fig.2 A picture containing the true value of the feature points

图3 改进算法特征点对比图Fig.3 The feature points of the the improved algorithm

图4 SDM算法特征点对比图Fig.4 The feature points of the SDM algorithm

图5 特征点与其真值距离的归一化误差值Fig.5 Normalized error values of feature points and their true values

为了能够更加全面的分析算法的鲁棒性,我们对LFW数据库中的人脸图片进行了测试实验.由于数据库较为庞大,本次实验主要测试的是LFW数据库原图中名字为A开头的人脸图片,总共1 036个样本.具体的实验数据分析如表1所示.

表1 鲁棒性实验结果

实验数据分别从平均值、最大值和最小值三个方面进行分析对比,从表1中可以很明显的发现,改进算法在克服表情的鲁棒性方面要优于SDM算法.

4.2 精确度分析

我们实验选择的人脸姿态图片集为point-04,point-04图片集包含带有姿态真值的各种人脸图片共1 956张.实验发现,改进算法在姿态角度大于60°时,误差大于5°.表2给出了改进算法和SDM算法在60°以内的平均误差.

表2 平均误差

随机选择2组真值为β=0°,±15°,±30°,±45°这4种姿态图片,如图6所示.图6中第一组数据为改进算法估计得出姿态,第二组数据为SDM算法估计得出的姿态,单位为度.

图6 部分估计结果Fig.6 Some estimated results

通过对比图6可以发现:两种算法的姿态估计误差随着角度的增加而增大,其中真值为0°~15°时,改进算法和SDM算法估计误差相差不大,都控制在3°以内的高精度水平;真值为30°的情况下,改进算法误差控制在3°以内的高精度水平,而SDM算法则误差较大,但也控制在5°以内的有效估计;在真值等于45°的情况下,改进算法依旧能够保证在5°以内,而SDM算法则误差超过5°.

5结论

我们通过对比样本的标定特征点与其真值得归

一化方差数据来分析,通过对比经典特征点标定算法SDM,可以得出改进算法的克服表情的鲁棒性方面优于SDM算法.在一般应用系统中对左右摆动(yaw)图像的识别应用较多,一般误差在5°以内,认为是有效估计.由表2可以看出:估计误差随着角度的增加而增大,改进算法在60°以内,平均误差在4°以内,单个样本误差控制在5°以内,能够满足一般应用的精度需求.

参考文献:

[1]梁国远,查红彬,刘宏.基于三维模型和仿射对应原理的人脸姿态估计方法[J].计算机学报,2005,28(5):792-800.

[2]胡同森,周维,蒋成成.一种基于DCT系数和Fourier描述子的人脸识别方法[J].浙江工业大学学报,2010,38(5):557-560.

[3]PIGHIN F, HECKER J, LISCHINSKI D, et al. Synthesizing realistic facial expressions from photographs[C]//ACM SIGGRAPH 2006 Courses. Boston: ACM,2006:19.

[4]汤一平,严海东.非约束环境下人脸识别技术的研究[J].浙江工业大学学报,2010,38(2):155-161.

[5]PRINCE S J D, WARRELL J, ELDER J H, et al. Tied factor analysis for face recognition across large pose differences[J]. IEEE transactions on pattern analysis and machine intelligence,2008,30(6):970-984.

[6]郑博,毛剑飞,梁荣华.基于纹理权重的AAM人脸特征点检测方法[J].浙江工业大学学报,2012,40(6):661-665.

[7]MURPHYCHUTORIAN E, TRIVEDI M M. Head pose estimation in computer vision: a survey[J]. IEEE transactions on pattern analysis and machine isntelligence,2009,31(4):607-626.

[8]CHOI K N, CARCASSONI M, HANCOCK E R. Recovering facial pose with the EM algorithm[J]. Pattern recognition,2002,35(10):2073-2093.

[9]SOLLOWAY S, TAYLOR C J, HUTCHINSON C E, et al. Quantification of articular cartilage from MR images using active shape models[C]//Computer Vision-ECCV′96. Berlin: Springer,1996:400-411.

[10]XIONG X, DE-LA-TORRE F. Supervised descent method and its applications to face alignment[C]//Computer Vision and Pattern Recognition (CVPR), 2013 IEEE Conference on. Portland: IEEE,2013:532-539.

(责任编辑:刘岩)

A face pose estimation algorithm based on nonlinear least square

ZHANG Meiyu1,2, HOU Xianghui1,2, REN Weibin1, XU Jinting1, WANG Sijun3

(1.College of Computer Science and Technology,Zhejiang University of Technology, Hangzhou 310023,China;2.Visual Media, Zhejiang Province Key Laboratory of Intelligent Processing Technology Research, Hangzhou 310023, China;

3.Nanjing University of Aeronautics and Astronautics Institute of Computer, Nanjing 210016, China)

Abstract:In order to improve the accuracy and robustness of face pose estimation, this paper proposes a combination of multiple feature points 3D modeling method and face pose estimation algorithm with an anti-interference policy. In this algorithm, the 3D general standard model can are fitted with the inputed facial feature points. Then the problem can be transformed into nonlinear least squares problems. To solve this problem, this paper proposes a novel rough estimation method, and the use of search algorithms for iterative refinement,. Finally, the optimal solution can be gotten. Experimental results show that algorithm has robustness, and has anti-interference ability to the facial expression.

Keywords:the nonlinear least squares; face pose estimation; 3D modeling; iterative search; principal component analysis

中图分类号:TP391

文献标志码:A

文章编号:1006-4303(2016)01-0034-05

作者简介:张美玉(1965—),女,浙江浦江人,教授,研究方向为图形图像处理、信息可视化,E-mail:zmy@zjut.edu.cn.

基金项目:浙江省自然科学基金资助项目(X105731)

收稿日期:2015-09-10

猜你喜欢
三维建模主成分分析
农用风力发电机叶片设计
数控仿真系统三维建模技术研究
基于NAR模型的上海市房产税规模预测
主成分分析法在大学英语写作评价中的应用
江苏省客源市场影响因素研究
基于GIS的网络三维系统的构建及应用
SPSS在环境地球化学中的应用
服务贸易结构优化路径研究
三维建模技术在家畜器官建模中的应用
基于CATIA的多功能运动轮椅三维数字化建模及其优化设计