首页> 中国专利> 一种基于深度值的单幅图像人脸姿态估计方法

一种基于深度值的单幅图像人脸姿态估计方法

摘要

本发明涉及一种基于深度值的单幅图像人脸姿态估计方法,包括以下步骤:获取待估计姿态人脸图像;将待估计姿态人脸图像转化成灰度图像,并进行去噪处理和标准化处理;引入仿射变换不变性初始化原则建立初始模型,改进传统的活动形状模型方法,提取十个人脸特征点的二维值;根据透视成像原理,利用迭代算法,求得所述十个人脸特征点的深度值;建立人脸姿态估计目标函数;利用四个人脸特征点进行人脸姿态一次估计,作为对目标函数进行最小二乘优化运算的输入值,输出二次估计的人脸姿态结果;利用M‑估计算法对最小二乘优化运算得到的结果作进一步优化,输出最终估计结果。本发明克服了姿态估计的病态化问题,且具有良好的姿态估计精度和鲁棒性。

著录项

  • 公开/公告号CN106570460A

    专利类型发明专利

  • 公开/公告日2017-04-19

    原文格式PDF

  • 申请/专利权人 三明学院;

    申请/专利号CN201610913988.X

  • 发明设计人 邱丽梅;吴龙;邱思杰;

    申请日2016-10-20

  • 分类号G06K9/00;

  • 代理机构福州元创专利商标代理有限公司;

  • 代理人蔡学俊

  • 地址 365004 福建省三明市三元区荆东路25号

  • 入库时间 2023-06-19 01:56:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-05-07

    授权

    授权

  • 2017-05-17

    实质审查的生效 IPC(主分类):G06K9/00 申请日:20161020

    实质审查的生效

  • 2017-04-19

    公开

    公开

说明书

技术领域

本发明涉及一种基于深度值的单幅图像人脸姿态估计方法。

背景技术

近年来,虽然随着深度摄像机技术的发展及微软Kinect的问世,打破了以往深度摄像头高昂价格的局面,人脸姿态估计领域也出现了ETH Face Pose和Biwi Kinect两个新的深度图像数据库,但在海关、机场、展览馆等公共场合及公安追捕罪犯系统等实际应用中,二维数据库向三维数据库采集更新仍需时间,因此,目前对于单幅二维人脸图像的多姿态识别仍居主流。目前,正面人脸识别系统已取得了较好的识别效果,但是多姿态人脸图像的有效识别,效果仍然欠佳。据统计大约75%的人脸图像为非正面的人脸图像,因此,人脸姿态估计对于多姿态人脸识别来说是非常重要的。除此以外,人脸姿态估计还在智慧城市、司机疲劳检测系统和智能轮椅等方面都有着广泛的应用。

根据实现原理和方式的不同,现有的人脸姿态估计方法大体上可以分为六类:⑴形状模板匹配的方法;⑵检测分类器的方法;⑶特征回归的方法;⑷流形嵌入的方法;⑸局部约束模型的方法;⑹脸部特征点几何关系的方法。其中,脸部特征点几何关系的方法具有简单、耗时短、效率高等优点,而且随着人脸特征点提取算法的日趋成熟,脸部关键特征点的检测和定位精度已逐渐获得保障。

依据以下几点:⑴多姿态二维人脸图像识别仍居主流;⑵脸部特征点几何关系方法具有简单、耗时短、效率高等优点;⑶现有的姿态估计方法大多存在缺乏人脸特征深度信息而造成姿态估计过程病态化的问题;⑷最小二乘法不能很好地区分内点和外点,从而存在影响估计精度和鲁棒性的问题。

发明内容

有鉴于此,本发明的目的在于提供一种基于深度值的单幅图像人脸姿态估计方法,用于克服姿态估计的病态化问题,且具有良好的姿态估计精度和鲁棒性。

为实现上述目的,本发明采用如下技术方案:一种基于深度值的单幅图像人脸姿态估计方法,其特征在于,包括以下步骤:

步骤S1:获取待估计姿态人脸图像;

步骤S2:预处理,将所述待估计姿态人脸图像转化成灰度图像,灰度值归一化为[0,1],并进行去噪处理和标准化处理;

步骤S3:对预处理后的灰度图像,利用改进的活动形状模型方法,提取十个人脸特征点的二维值;所述十个人脸特征点为左眼外角点、右眼外角点、左眼内角点、右眼内角点、左嘴角点、右嘴角点、鼻尖点、左鼻翼点、右鼻翼点和下巴顶点;

步骤S4:根据透视成像原理,利用迭代算法,求得所述十个人脸特征点的深度值;

步骤S5:根据所述深度值建立人脸姿态估计目标函数;

步骤S6:利用四个人脸特征点进行人脸姿态一次估计,作为对目标函数进行最小二乘优化运算的输入值,输出二次估计的人脸姿态结果,并将所述二次估计的人脸姿态结果作为下步M-估计算法的初始值,所述四个人脸特征点为左眼外角点、右眼外角点、鼻下点和嘴角点;

步骤S7:利用M-估计算法对最小二乘优化运算得到的结果作进一步优化,输出最终估计结果。

进一步的,所述步骤S3中提取十个人脸特征点的二维值的具体方法为:选取人脸的左眼外角点、右眼外角点、左眼内角点、右眼内角点、左嘴角点、右嘴角点、鼻尖点、左鼻翼点、右鼻翼点和下巴顶点为引导,并利用仿射变换不变性初始化原则来建立活动形状模型的初始模型,计算每个人脸特征点的局部灰度向量和经验灰度向量之间的马式距离之最小值,从而获得十个人脸特征点的二维值。

进一步的,所述步骤S4的具体内容如下:假设一特征点的3D空间坐标为yn=(yn1yn2>n3)T和相应的2D投影坐标为un=(un1>n2)T,旋转矩阵为R=(r1,r2,r3)T,平移矢量为t=(t1,t2,t3)T,f为像机焦距,则:

在相机坐标系中,根据透视成像有:

yn经过旋转R,平移t后得到xn,则:

在相机坐标系中,假设xn的深度值为dn,n=1,2,3,…,N,则:

步骤S41:选取xn的初始深度值为dn0,dn0是人脸特征点与透视中心的距离;

步骤S42:假设经过迭代,得到第k步的深度值dnk,那么第k+1步的深度值dnk+1,可通过使得式(4)最小化求得:

其中,ε2为方差,{wn|n=1,…,N}是非零因子,满足wn≥0,在此定义wn相等且Rk和tk分别是第k步时所对应的人脸旋转矩阵和平移矩阵,即人脸姿态值;

步骤S43:假设式(4)收敛,即有:证明如下:

可见,要使式(5)取得最小值,那么:

此时,式(5)就变成了:

显然,由式(7)可得,成立,所以:

把式(3)代入(8)式,可得:

对所述十个人脸特征点依次按照上述方法求得深度值。

进一步的,所述步骤S5的具体内容如下:

所述十个人脸特征点在相机坐标系中分别表示成:y1,y2,y3,…,y10

姿态估计问题可表述为:已知相机参数wn,模型点{yi,i=1,2,…,N}和其在相机中的像点{ui,i=1,2,…,N},求姿态参数(α,β,γ),其中α、β和γ是人脸绕X、Y、Z三轴的旋转角度;根据透视成像即式(1)和式(3)及式(4),可得人脸姿态估计的目标函数为:

其中,

t=(t1,t2,t3)T

进一步的,所述步骤S6的具体内容如下:

首先,利用所述四个人脸特征点进行姿态初值估计,得到人脸姿态初始值α000

然后,对式(10),求其最小二乘优化解,通过线性化调整最小二乘,过程如下:在检测图像坐标时总是存在误差的,则,

uni=uni0+vni,i=1,2,n=1,2,…,N(11)

其中,是被测图像点,(vn1,vn2)是相应的测量误差,类似的有:

α=α0+Δα;β=β0+Δβ;γ=γ0+Δγ(12)

其中,α000是近似值,Δα,Δβ,Δγ是它们相应的误差;

假设:

在此,不考虑平移量t,通过牛顿第一定律进行线性化得:

Fn1=Fn10+vn1+an11·Δα+an12·Δβ+an13·Δγ

Fn2=Fn20+vn2+an21·Δα+an22·Δβ+an23·Δγ

(14)

其中,

“0”上标表示(α000)所对应的函数值,当Fn1=Fn2=0,线性化方程可被表示成矩阵形式:

或简化成:BΔ=F-v

(15)

对式(15)采用奇异值分解来求解,计算Δ=(Δα,Δβ,Δγ)来更新Λ=(α000),直到误差达到设定的阈值,结束循环,输出二次估计的人脸姿态结果,并把它们作为下步M-估计的初始值。

进一步的,所述步骤S7的具体内容如下:

随机的估计值Tk,可由下式最小化形式表示:

或可通过下列隐式方程表示:

其中,ρ是原函数:

把式(18)写成以下等式形式:

其中:

所以,Tk可以被表示成:

采用Huber的ρ和ψ算子,表示如下:

其中,a是调整常数,取残差绝对值的常数倍,在此去a=1.5;

非线性回归问题可以描述如下:

假设函数fi:Em→E,i=1,2,…,n;θ=(θ12,…,θm)T∈Em是未知的m维向量,则:

fi(θ)=yi,i=1,2,…n(24)

求解方程式(24),即最小化式(25)

有数种不同的方法,为了构造一种呈比例变化的M-估计,估计比例因子取值如下:

通过修正残差值的方法来解式(25)最小问题,确定θ的步骤如下:

步骤S71:选择初始的θ0

步骤S72:假设第k步的迭代值是θk,则θk+1按以下步骤来解决:

步骤S721:计算残差值ri*,i=1,2,…n,则:

其中:

ri=yi-fik)

步骤S722:求解最小二乘问题Xδ=r*,其中,是梯度矩阵,即:

采用一般的最小二乘法便可求解此方程;如果采用奇异值分解法,则X=UΣVT,那么其解为

步骤S723:

进一步的,所述标准化处理为将灰度图像大小统一为64×64。

本发明与现有技术相比具有以下有益效果:本发明克服了现有的姿态估计方法大多存在缺乏人脸特征深度信息而造成姿态估计过程病态化的缺陷,解决了最小二乘法不能很好地区分内点和外点的问题,保证了估计精度和鲁棒性。

附图说明

图1是本发明的方法流程图。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

请参照图1,本发明提供一种基于深度值的单幅图像人脸姿态估计方法,其特征在于,包括以下步骤:

步骤S1:获取待估计姿态人脸图像;

步骤S2:预处理,将所述待估计姿态人脸图像转化成灰度图像,灰度值归一化为[0,1],并进行去噪处理和标准化处理,将处理后的灰度图像大小统一为64×64;

步骤S3:对预处理后的灰度图像,引入仿射变换不变性初始化原则(ATIIA)建立初始模型,改进传统的活动形状模型(ASM)方法,提取十个人脸特征点的二维值。所述十个人脸特征点为左眼外角点、右眼外角点、左眼内角点、右眼内角点、左嘴角点、右嘴角点、鼻尖点、左鼻翼点、右鼻翼点和下巴顶点。提取特征点的具体做法如下:选取人脸的左眼外角点、右眼外角点、左眼内角点、右眼内角点、左嘴角点、右嘴角点、鼻尖点、左鼻翼点、右鼻翼点和下巴顶点为引导,并利用仿射变换不变性初始化原则来建立活动形状模型的初始模型,计算每个人脸特征点的局部灰度向量和经验灰度向量之间的马式距离之最小值,从而获得十个人脸特征点的二维值。该算法不仅速度快、精度高,且能适应一定的“自遮挡”情况(如,眼镜及头发小面积的局部遮挡等)和表情变化,准确地提取到所需要的特征点(如两眼、嘴和鼻子等)。

步骤S4:根据透视成像原理,利用迭代算法,求得所述十个人脸特征点的深度值。对于单张照片在不知道人脸特征点深度值及其它信息的前提下,只利用脸部特征点几何关系估计人脸空间姿态是不易实现的。若能得知人脸特征点的深度值,就能丰富人脸预知信息,精准实现对单张照片中人脸的姿态估计,其具体内容如下:

假设一特征点的3D空间坐标为yn=(yn1>n2>n3)T和相应的2D投影坐标为un=(un1un2)T,旋转矩阵为R=(r1,r2,r3)T,平移矢量为t=(t1,t2,t3)T,f为像机焦距,则:

在相机坐标系中,根据透视成像有:

yn经过旋转R,平移t后得到xn,则:

在相机坐标系中,假设xn的深度值为dn,n=1,2,3,…,N,则:

步骤S41:选取xn的初始深度值为dn0,dn0是人脸特征点与透视中心的距离;

步骤S42:假设经过迭代,得到第k步的深度值dnk,那么第k+1步的深度值dnk+1,可通过使得式(4)最小化求得:

其中,ε2为方差,{wn|n=1,…,N}是非零因子,满足wn≥0,在此定义wn相等且Rk和tk分别是第k步时所对应的人脸旋转矩阵和平移矩阵,即人脸姿态值;

步骤S43:假设式(4)收敛,即有:证明如下:

可见,要使式(5)取得最小值,那么:

此时,式(5)就变成了:

显然,由式(7)可得,成立,所以:

把式(3)代入(8)式,可得:

对所述十个人脸特征点依次按照上述方法求得深度值。

步骤S5:根据所述深度值建立人脸姿态估计目标函数,具体内容如下:

所述十个人脸特征点在相机坐标系中分别表示成:y1,y2,y3,…,y10

姿态估计问题可表述为:已知相机参数wn,模型点{yi,i=1,2,…,N}和其在相机中的像点{ui,i=1,2,…,N},求姿态参数(α,β,γ),其中α、β和γ是人脸绕X、Y、Z三轴的旋转角度;根据透视成像即式(1)和式(3)及式(4),可得人脸姿态估计的目标函数为:

其中,

t=(t1,t2,t3)T

步骤S6:利用四个人脸特征点进行人脸姿态一次估计,作为对目标函数进行最小二乘优化运算的输入值,输出二次估计的人脸姿态结果,并将所述二次估计的人脸姿态结果作为下步M-估计算法的初始值,所述四个人脸特征点为左眼外角点、右眼外角点、鼻下点和嘴角点,具体内容如下:

首先,利用所述四个人脸特征点进行姿态初值估计,得到人脸姿态初始值α000

然后,对式(10),求其最小二乘优化解,通过线性化调整最小二乘,过程如下:在检测图像坐标时总是存在误差的,则,

uni=uni0+vni,i=1,2,n=1,2,…,N(11)

其中,是被测图像点,(vn1,vn2)是相应的测量误差,类似的有:

α=α0+Δα;β=β0+Δβ;γ=γ0+Δγ(12)

其中,α000是近似值,Δα,Δβ,Δγ是它们相应的误差;

假设:

在此,不考虑平移量t,通过牛顿第一定律进行线性化得:

Fn1=Fn10+vn1+an11·Δα+an12·Δβ+an13·Δγ

Fn2=Fn20+vn2+an21·Δα+an22·Δβ+an23·Δγ

(14)

其中,

“0”上标表示(α000)所对应的函数值,当Fn1=Fn2=0,线性化方程可被表示成矩阵形式:

或简化成:BΔ=F-v

(15)

对式(15)采用奇异值分解来求解,计算Δ=(Δα,Δβ,Δγ)来更新Λ=(α000),直到误差达到设定的阈值,结束循环,输出二次估计的人脸姿态结果,并把它们作为下步M-估计的初始值。

步骤S7:利用M-估计算法对最小二乘优化运算得到的结果作进一步优化,输出最终估计结果,由于特征点提取误差不可避免的产生个别误差较大的外点,最小二乘法不能很好地区分内点和外点,从而影响估计精度和鲁棒性,因此,提出采用M-估计算法进一步优化。并把由最小二乘法得到的估计值作为M-估计的初始值。其具体内容如下:

随机的估计值Tk,可由下式最小化形式表示:

或可通过下列隐式方程表示:

其中,ρ是原函数:

把式(18)写成以下等式形式:

其中:

所以,Tk可以被表示成:

采用Huber的ρ和ψ算子,表示如下:

其中,a是调整常数,取残差绝对值的常数倍,在此去a=1.5;

非线性回归问题可以描述如下:

假设函数fi:Em→E,i=1,2,…,n;θ=(θ12,…,θm)T∈Em是未知的m维向量,则:

fi(θ)=yi,i=1,2,…n(24)

求解方程式(24),即最小化式(25)

有数种不同的方法,为了构造一种呈比例变化的M-估计,估计比例因子取值如下:

通过修正残差值的方法来解式(25)最小问题,确定θ的步骤如下:步骤S71:选择初始的θ0

步骤S72:假设第k步的迭代值是θk,则θk+1按以下步骤来解决:

步骤S721:计算残差值ri*,i=1,2,…n,则:

其中:

ri=yi-fik)

步骤S722:求解最小二乘问题Xδ=r*,其中,是梯度矩阵,即:

采用一般的最小二乘法便可求解此方程;如果采用奇异值分解法,则X=U∑VT,那么其解为

步骤S723:

本发明提出的基于深度值的单幅图像人脸姿态估计系统,利用了透视原理和迭代算法计算出特征点的深度值,克服了现有姿态估计方法大多存在缺乏人脸特征深度信息而造成姿态估计过程病态化的缺陷;利用M-估计算法解决了最小二乘法不能很好地区分内点和外点的问题,保证了估计精度和鲁棒性。通过CMU PIE人脸数据库进行实验,结果表明:对于β=-45°~+45°的单幅二维人脸图像,本系统具有良好的估计精度和鲁棒性。

以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号