专利名称:视频序列中的三维人脸位置和姿态跟踪的方法
技术领域:
本发明涉及人脸检测、定位和跟踪领域,尤其是指一种在视频流中对人脸的三维
位置和姿态参数进行跟踪的方法。
背景技术:
人脸是每个人都具有的重要特征,是最自然、最常用的交互手段之一,在计算机视 觉和图形学等领域具有相当广泛的应用,例如人机交互,安全监控,游戏娱乐,计算机动画 等。对人脸进行准确的检测和跟踪,在理论上和实际中都具有重要的意义。如何建立有效 的模型,选择最具表达能力的特征,构造准确的分类器,实现高效稳定的跟踪算法,都是人 们关心的理论问题。如果能够得到对人脸及人脸动作的准确的检测和跟踪结果,就可以用 来控制电脑中的对象或角色,或者用来辅助生成具有真实感的人脸动画,或者从中获得表 情信息。 常用的跟踪方法可以分为确定性的方法和随机的方法。随机的跟踪方法通常基于 贝叶斯框架,即根据一系列对历史状态的观测获得某种当前状态的概率。粒子滤波算法就 是这样的一种跟踪方法,通过大量粒子代表的假设,可以用来对非线性系统的状态进行跟 踪,噪声也不需要满足高斯分布,所以具有非常广泛的应用。在基于粒子滤波的跟踪算法 中,粒子状态转移模型和观测模型两个重要的方面。在头部跟踪问题中,跟踪的精度依赖于 粒子的数量。在给定误差的条件下,所需的粒子的数量取决于状态的维数和状态空间的结 构。 一个典型的6自由度头部姿态跟踪问题大约需要使用数千个粒子进行跟踪,所以,粒子 滤波算法往往具有较大的计算量。为了减少粒子数量,需要使用较高精度的动态模型。
从跟踪过程中使用的信息区分,常用的跟踪方法可以分为基于外观的方法、基于 特征的方法,以及同时使用这两类信息的方法。在基于外观的跟踪方法中,模型和输入图像 中被跟踪目标的整个外观纹理图像都参与匹配过程,通过最小化二者之间的差距搜索状态 参数。在这类方法中,为了最小化模型与输入图像之间的差距,通常需要解决高维非线性代 价函数的优化问题,当参数的初值与目标值距离较大时容易陷入局部极小值,导致跟踪中 断。基于特征的方法通常选择一些容易跟踪,且对光照、姿态、表情等比较鲁棒的图像特征, 如颜色、边缘、角点等。当使用这类方法对头部的三维姿态进行跟踪时,往往需要根据从图 像中跟踪得到的二维特征的对应关系估计头部的三维姿态。为了实现三维姿态估计,也有 很多不同的方法可以使用,例如使用扩展的卡尔曼滤波更新头部姿态,使用迭代的基于正 交投景邻尺度变换的姿态估计(Pose fromOrthography and Scaling with ITerations) 算法根据三维模型和二维关键点的分布计算出姿态参数,或使用弱透视投影模型,直接用 线性代数的方法计算出姿态参数。基于特征的跟踪方法由于能够在一定程度上减少局部极 小值问题的发生,所以通常能够得到更加鲁棒的三维头部跟踪结果。 在对视频序列进行处理和分析的过程中,算法的准确性常常受到很多干扰因素的 影响,例如光照条件的变化,人脸区域受到遮挡等。另外,当人脸位置、姿态或动作参数变化 比较剧烈时,检测和跟踪的结果往往也会产生较大的误差。这些都是设计人脸跟踪方法需要考虑的问题。
发明内容
本发明的目的在于提供一种视频序列中的三维人脸位置和姿态跟踪的方法。三维 可变形人脸网格的位置、姿态、形状参数用来描述头部动作。本发明提供的方法不需要对特 定的使用者进行训练,不需要使用者手工参与,可以实现自动从视频流中检测出人脸及人 脸关键点的位置,然后就可以在头部存在较大范围的转动,较高速度的运动,以及在较大程 度的表情变化的情况下,进行头部位置、姿态的跟踪。唯一的限制是用户在视频流的起始阶 段为正面姿态和中性表情。本发明提供的方法具有检测和跟踪准确,稳定性高的优点。
本发明提供的一种视频序列中的三维人脸位置和姿态跟踪的方法,包括以下步 骤 步骤Sl :对输入视频序列图像上人脸及人脸关键点位置进行自动检测和定位,使 用检测和定位得到的每个关键点在图像中的位置,对三维可变形人脸网格模型的形状、位 置和姿态参数进行初始化; 步骤S2 :在对三维可变形人脸网格模型的形状、位置和姿态参数进行初始化的同
时获得人脸纹理为人脸正面纹理,在跟踪过程中获得人脸纹理为人脸侧面纹理; 步骤S3 :使用三维可变形人脸网格模型和人脸纹理渲染出不同姿态参数条件下
的头部外观图像,在头部外观图像上选择角点特征,并将角点特征与输入视频序列图像进
行特征匹配,得到每帧图像中的每个特征点在后一帧图像中的位置; 步骤S4 :根据前后连续两帧间特征点位置匹配的结果计算头部位置和姿态变化; 在所有的特征匹配结果中,使用随机采样方式产生不同位置和姿态变化假设,并对假设进 行选择,从而去除可能存在的误匹配;然后,采用加入不同的随机噪声的方法,获得大量头 部位置和姿态参数的假设; 步骤S5 :使用基于外观的方法对各种头部位置和姿态参数假设进行评价,获得具 有最大后验概率的参数; 步骤S6 :对各种头部位置和姿态参数假设,根据评价的具有最大后验概率的参数 进行重采样,去掉后验概率较低的假设,增加后验概率较高的假设的个数,完成三维人脸位 置和姿态跟踪。 优选地,所述三维可变形人脸网格模型由顶点坐标及顶点与三角形面的对应关系 构成,顶点坐标确定了模型形状,模型形状由平均形状和若干彼此正交的变化分量组成,平 均形状和变化分量都通过对三维人脸训练样本进行主成份分析得到。 优选地,所述三维可变形人脸网格模型的形状、位置和姿态参数进行初始化是首 先判断输入视频序列图像中的人脸是否处于正面状态,如果处于正面状态,则根据人脸关 键点位置在图像中进行定位的结果,采用最大化后验概率的方法,调整三维可变形人脸网 格模型的形状、位置和姿态参数。 优选地,在判断人脸是否处于正面状态时,综合使用如下几种判据正面人脸检测 分类器的评分大于检测器阈值,主动表观模型方法中纹理匹配的误差小于纹理匹配阈值, 关键点分布的对称性大于对称性阈值。 优选地,在选择角点特征时,采用首先对头部外观图像进行平滑去噪声处理,然后计算像素亮度分布和像素位置综合特征的方式实现;像素亮度分布和像素位置综合特征采 用如下方式获得计算每个像素点哈森矩阵的行列式的值,再与像素所在位置的可靠性指 标加权,作为特征选择的依据;像素所在位置的可靠性指标包含两个成分,第一部分由像素 所在三角形面片在三维空间中的方向确定,第二部分由像素是否处于人脸正面纹理与侧面 纹理的分界线确定。 优选地,所述特征匹配采用最小化头部外观图像上特征点所在矩形区域与输入图 像上同样尺寸区域之间的归一化互相关特征的原理进行特征匹配。 优选地,所述使用随机采样方式产生不同位置和姿态变化假设,并对假设进行选 择的过程包括如下步骤 步骤41 :从对应的特征匹配结果中随机选择出四组,选择时保证特征彼此距离大 于特征距离阈值,并保证特征为非共面特征; 步骤42 :根据选择出的四组特征解线性方程组,求出投影矩阵; 步骤43 :对于每次随机选择特征计算出的投影矩阵计算出所有特征在此投影矩 阵作用下变换到的位置坐标,与这些特征的实际位置进行比较,记录距离小于特征匹配误 差阈值的特征个数; 步骤44 :通过对距离小于特征匹配误差阈值的特征个数进行排序,找到使个数值 最大的投影矩阵; 步骤45 :使用个数值最大的投影矩阵,计算出当前帧中头部位置和姿态参数相对
于上一帧中位置和姿态参数的变化量,作为位置和姿态变化假设的选择结果。 优选地,所述使用基于外观的方法对各种头部位置和姿态参数假设进行评价的步
骤包括如下 步骤51 :对每一个头部位置和姿态参数假设,使用三维可变形人脸网格模型及面 部纹理,渲染出一幅头部外观图像; 步骤52 :将头部外观图像与输入视频序列图像分割成若干对应的矩形小区域,对 每个对应的分别来自头部外观图像与输入图像的矩形小区域,计算归一化互相关系数,并 进一步得到子区域的距离; 步骤53 :对所有矩形小区域,计算距离的平均值,得到头部外观图像与输入图像 的纹理距离,假设以纹理距离来衡量的跟踪误差为高斯分布,分布的形状与纹理距离的最 小值及均值有关,则可以据此计算每种假设的可靠性,作为对各种头部位置和姿态参数假 设进行评价的结果。 本发明的有益效果通过采用上述步骤,可以实现对视频流中的人脸进行检测、定 位和跟踪。通过对面部形状数据样本进行主成份分析,得到可变形三维人脸网格模型。最 小化模型上的关键点与从输入人脸图像中定位得到的关键点之间的距离,对被跟踪的目标 建立具有个性化形状的人脸模型,既可以实现全自动的人脸检测、定位和跟踪,又使跟踪算 法不依赖于使用者,具有更高的应用灵活性。整个跟踪方法基于贝叶斯框架,即对大量假设 通过观测进行验证,具有较高的跟踪精度和稳定性。人脸纹理来自初始化和跟踪过程不同 的阶段,提高了跟踪算法的精度和姿态变化条件下的跟踪能力。特征选择的过程中,使用了 像素亮度分布和像素所在位置的可靠性指标,提高了特征匹配成功的可能性。根据特征匹 配估计姿态变化时,使用了随即采样的方式,可以去除特征误匹配和面部动作引起的特征位置变化带来的错误,提高跟踪方法的准确性。对假设进行评估的时候,使用了基于外观的方法,具有较高的精度,同时,使用了对图像分块分别计算相关度,再进行融合的方式,使这种方法在非均匀光照及光照条件发生变化的条件下,仍然可以对头部动作进行准确跟踪。
图1为本发明的人脸跟踪方法的流程图; 图2为本发明使用的三维可变形人脸网格模型的平均形状;
图3为主动表观模型中的关键点定义;
图4为特征选择结果示例;
图5为头部跟踪结果示例。
具体实施例方式
下面结合附图详细说明本发明技术方案中所涉及的各个细节问题。应指出的是,
所描述的实施例仅旨在便于对本发明的理解,而对其不起任何限定作用。 为了跟踪头部在视频序列中的运动,本发明的方法使用三维可变形人脸网格模
型。在跟踪的起始阶段,所述三维可变形人脸网格模型的形状根据定位到的人脸上关键点
的位置进行调整,形成一个具有个性化形状的人脸模型。在跟踪过程中,用模型的位置和姿
态参数作为对人脸位置和姿态跟踪的结果,即状态向量中包含三维模型的旋转角度和平移参数。 使用弱透视投影模型,即假设人脸本身的深度相对于人脸到摄像头的距离很小,忽略透视变形。这种假设的优点为,模型上三维顶点与图像中二维投影之间的关系可以用一个与摄像头参数无关的矩阵表达,在绝大部分应用中,这一假设不会对跟踪结果产生很大影响。在这一假设之下,状态向量中的深度参数可以用投影过程中模型的縮放系数代替,则状态向量b表示为 b= (ex, ey, ez,tx,ty,s)T (l) 其中,e x为俯仰角,e y为偏转角,e z为倾斜角,tx为水平方向位移,ty为垂直方
向位移,s为縮放系数,T表示向量的转置。 图1给出了本发明跟踪方法的流程图。按照流程顺序主要包括如下几个方面的内容 (1)跟踪初始化阶段,从第一帧图像中根据人脸检测和关键点定位的结果调整模
型的形状,同时得到模型的初始位置和姿态。 (2)使用第一帧图像内容作为模型的纹理,形成一个具有个性化形状和纹理信息的三维人脸模型,用于整个跟踪过程。当跟踪目标的姿态满足一定条件时,对模型侧面的纹理进行更新,以更好地跟踪具有较大姿态变化条件下的头部。对所述人脸正面纹理和人脸侧面纹理采用不同的处理方式人脸正面纹理在初始化三维可变形人脸网格模型的同时,从输入视频序列图像中获得;人脸侧面纹理在跟踪过程中,当头部姿态参数第一次满足条件时,从输入视频序列图像中获得;正面纹理和侧面纹理分别对应三维可变形人脸网格模型上的正面部分和侧面部分共同组成了完整的人脸纹理。
(3)根据前一帧假设参数计算模型顶点在图像中的投影,进行纹理映射,形成与假
7设姿态参数一致的头部图像,作为特征选择、匹配和姿态估计的依据。为了获得姿态变化条件下较好的跟踪稳定性,采用基于特征的跟踪方法。在三维人脸模型依据前一帧姿态参数生成的图像中,选择适合跟踪的特征点,并根据特征点周围区域像素亮度分布,在输入图像中寻找匹配的位置。 (4)根据特征匹配的结果估计头部状态参数,对假设状态进行更新,同时需要考虑对特征匹配错误情况的处理,其中包括头部运动引起的匹配错误,也包括由于遮挡、表情变化等引起的匹配错误。 (5)使用基于纹理的方法对姿态参数假设进行评价,为了对光照变化及头部运动引起的亮度分布变化具有更好的稳定性,使用了分片计算归一化互相关的方式。然后根据最大后验概率原则获得跟踪结果。
(6)对参数假设进行重采样,去掉低概率假设,增加高概率假设的数量。
下面对实施方式进行具体说明。 为了使根据前一帧迭代后姿态参数渲染出的头部图像与当前帧输入图像中头部部分具有尽可能高的相似性,需要三维人脸模型与实际使用者的面部形状尽可能接近。为了达到这一 目的,使用采集到的三维人脸形状数据,建立基于主成份分解的可变形三维网格模型。在跟踪的起始阶段,算法判断使用者为正面姿态时,根据从图像中定位到关键点位置,调整三维网格模型的形状,形成具有个性化形状的三维人脸模型。 三维网格模型顶点在每个样本中具有相同的相对位置,即为一一对应的。每个样本的形状用顶点坐标表示为S("";cf),rf),^),x ),;^,^,…,^,rf),^f (2)其中k为样本序号,n为模型顶点个数,x、 y、 z为顶点的三维坐标。 对所有人脸样本进行主成份分解,可以得到用平均形状S。和主成份Si的线性组合
表示的可变形三维人脸模型 iS二S。+Z"A (3)
,=1 其中m为使用的主成份个数,即形状分量个数,i为从1到m的自然数,a i为第i个形状系数,Si为第i个人脸形状主成份。对(3)式中的cii取不同的值,就可以产生出不同形状的人脸模型。在图2中画出了平均形状S。。 为了对人脸三维可变形网格模型的形状进行初始化,采用人脸检测算法从输入图像中找到人脸的大致位置,使用基于主动表观模型的定位算法对人脸上定义的关键点进行定位。图3为本发明使用的主动表观模型中人脸关键点的定义,图3中有人脸关键点数字为0-86,其中0-7为一只眼睛,8-15为另一只眼睛;16-25为一条眉毛,26_35为另一条眉毛;36-47为鼻子;48-59为外唇线,60-67为内唇线;68-86为人脸的轮廓线。
在对人脸三维可变形网格模型的形状进行初始化前,首先判断人脸是否处于正面状态。判断人脸是否处于正面状态,综合使用如下几种判据正面人脸检测分类器的评分大于检测器阈值,主动表观模型方法中纹理匹配的误差小于纹理匹配阈值,关键点分布的对称性大于对称性阈值。其中,检测器阈值根据正面人脸检测分类器输出的评分的分布选择。纹理匹配阈值根据主动表观模型方法中合成纹理与输入图像中面部纹理的误差的分布选择。对称性阈值根据面部左右部分对应于对称特征的关键点(如左眼外点4与右眼外点
812,左嘴角点48与右嘴角点54等)与面部中线上的关键点(如51,77等)距离差的分布选择。 在三维人脸模型上选择0、2、4、6、8、10、12、14、16、19、20、26、29、30、39、44、48、51、54、57、68-72、74、76、78、80、82-86数字为34个的顶点(Xi, yi, Zi)t,包括眉毛端点、目艮角、嘴角、鼻翼外点,以及人脸轮廓上的一些点,其表示的意义与图3关键点中用黑体标示出的34个点(Si,ti)t是相同的。通过调整(3)式中的系数cii以及三维模型到图像平面进行投影的参数,可以改变模型上34个顶点(Xi, yi, Zi)t投影到图像上的位置,如果能够将(Xi, yi,Zi)t在图像平面上的投影的位置与(Si, ti)t对齐,便实现了三维可变形人脸模型对图像中人脸的拟合。 在将三维可变形人脸模型顶点投影到图像平面时,使用弱透视投影变换,人脸模型顶点(Xi,yi,Zi)t与其在图像平面上的投影(Ui,Vi)t的变换关系可以用一个2X4的矩阵M描述 (Ui, Vi)1 = M(Xi, yi, Zi, I)1 (4) 其中变换矩阵M由模型相对三条坐标轴的旋转角度e x, e y, e ,,縮放系数s,以及在水平和垂直方向上的位移tx, ty决定
<formula>formula see original document page 9</formula>(5) 为了使用三维可变形人脸模型对图像中的人脸进行拟合,需要最小化如下代价函数Ef(P):
w
J]<formula>formula see original document page 9</formula> 其中M = 34为要对齐的关键点的个数,i为从1到M的自然数,p为要优化的参数,Ui,Vi为通过(4)式计算得到的模型顶点在图像平面上投影的二维坐标,Si,ti为定位得到的图像中人脸关键点的位置坐标。在搜索最优参数的时候,使用了一种分阶段分别优化
形状系数和投影系数的方式,即令p分别为形状系数a i和投影变换的系数(e x, e y, e z,
tx, ty, s)t,人脸形状调整与人脸姿态调整交替进行。 当求出可以使三维人脸模型与第一帧图像中的人脸对齐的形状系数a ,和投影变
换系数(^, ey, ez, tx, ty, s)t后,在后面的跟踪过程中,人脸的形状系数不再改变,只需
对姿态进行跟踪。 另外,用于模型形状初始化的第一帧图像也被保留下来,作为个性化三维人脸模
型中的纹理部分,用于在跟踪过程中产生出各种不同姿态参数下的人脸图像。 在跟踪过程中,使用前面建立起来的三维人脸个性化形状模型和保存下来的第一帧中的正面人脸纹理,根据前一帧迭代后的姿态参数,可以产生相应姿态下的头部外观图像。 使用从第一帧图像中获得的面部纹理,只有人脸正面部分具有比较准确的信息。当被跟踪的头部发生左右比较大角度的转动时,为了能够提取到有效的特征进行匹配,需要对模型中左右两侧的纹理进行补充。在跟踪过程中,当头部姿态第一次满足左(或右)转动角度大于一定偏转角度阈值(例如30度)且上下转动角度小于一定俯仰角度阈值时
(例如io度),便将这时的输入图像的面部纹理保存下来,以后再根据姿态参数产生头部外
观图像时,模型左右两侧的像素来自更新了的纹理。 对于跟踪过程中使用的每个参数假设,根据其产生头部外观图像后,在头部外观图像中选择特征,并在输入图像内找到这些特征对应的位置。如果姿态参数准确,那么头部外观图像与输入图像中互相匹配的特征位置的偏差只是由于两帧之间的头部运动引起的,可以通过位置偏差估计出两帧之间的头部运动信息。 在选择特征时,首先对头部外观图像进行高斯平滑处理,减少噪声带来的干扰,然后计算每个像素点哈森矩阵的行列式的值D(u, v):
m… W、 (",v) ~("'v)
D(w,v)= ""
~(叫 其中(U,V)为像素点的坐标,ln为原始图像在水平方向上的二次梯度图像,lyy为
原始图像在垂直方向上的二次梯度图像,Ixy为原始图像先在水平方向上求一次梯度,再在
垂直方向上求一次梯度得到的梯度图像。为了选择出变形较小、可靠性较高的特征,计算头部外观图像上每个像素点对应三维模型上的点所属三角形法线方向与摄像头光轴的夹角
l的余弦值,用它对上面的D(u, v)进行加权。为了去除头部外观图像前景与背景之间边缘的干扰,还需要将边缘附近的虚假特征去除。设置与头部外观图像同样尺寸的标识矩阵M(u, v),从前面产生头部外观图像时记录的每个像素所属三角形的信息得到头部外观图像前景区域的范围,设置M(u,v)中对应像素为l,其他背景部分为O,再对M(u,v)做形态学腐蚀,得到不含边缘的前景范围。另外,由于三维模型左右两侧的部分纹理是跟踪过程中添加获得的,如果添加时的姿态参数存在偏差,新的纹理与原来人脸正面部分不能很好地对齐,则在过渡线上可能出现亮度突变引起的D(u, v)值较大的像素,在实际输入的图像中是无法找到对应特征的,所以,过渡线附近的像素也不应该参与特征选择,在M(u, v)将这部分像素置为0。最终得到的头部外观图像上每个像素的评分score (u, v)为
score(w, v) = cos(puv )M(w, v)D(w, v) (8)
其中^^为头部外观图像上每个像素点对应三维模型上的点所属三角形法线方向与摄像头光轴的夹角,M(u,v)为上文介绍的标识矩阵,D(u,v)为通过(7)式计算得到的每个像素点哈森矩阵的行列式的值。根据score(u,v)的值,按照从大到小的顺序选择一定数量的特征点,图4为分别在两幅头部外观图像上按照上述方法选择特征的结果示例。为了使选择出的特征点相互之间保持一定的距离,根据三维模型上眼睛的宽度设置距离阈值,如果某个位置(u, v)到已经选出的任意一个特征的距离小于眼睛宽度的一半,则丢弃这个位置。 对于每个选出的特征点,在头部外观图像中以它为中心取出一个第一方形区域,在输入图像中,也以特征点的位置为中心选择一个第二方形区域,第二方形区域的尺寸大于第一方形区域。当第一方形区域在第二方形区域的内部移动时,计算重叠部分的归一化互相关系数,使归一化互相关系数最大的位置即为在输入图像中进行特征点匹配的结果。第一方形区域和第二方形区域的尺寸根据当时被跟踪人脸的大小确定,人脸大小可以通过在三维模型上计算两眼间距得到。
參特征选择之后,形成了若干组特征点对应关系,从中任意取出4组,都可以计算出一个投影变换矩阵。实际上,考虑到特征匹配的过程中可能存在一定误差,对有些特征点可能存在错误匹配,另外,面部表情的变化会引起眼睛、眉毛、嘴巴附近的特征点位置产生偏移,遮挡也会使部分特征在输入图像中找不到正确的对应位置。为了尽可能解决这些问题,使用如下方式处理根据前一帧跟踪后的参数假设,计算三维模型各个顶点坐标,并产生头部外观图像; 參在头部外观图像中选择特征点,计算其在模型上的三维坐标Pi,并在输入图像中进行特征匹配,结果坐标为Pi ;
參随机采样过程 令从所有的对应特征中随机选取四组,选取时保证彼此距离大于特征距离阈值
(例如双眼间距的一半),并检查是否共面; 令根据选取出的对应特征计算投影矩阵M ;
令对于每次随机选取对应特征计算出的M,计算所有Pi与MPi之间的距离,记使距离小于特征匹配误差阈值(例如双眼间距的十分之一)的特征的个数为riM;
令排序找到nM值最大投影矩阵; 參根据上述随机采样过程得到的投影矩阵,计算出当前帧中头部相对于上一帧的
位置和姿态变化量; 根据上述化量,计算新的位置和姿态参数,并加入随机分布的误差,形成大量参数假设。 如果参数假设接近实际值,那么产生的头部外观图像应该能够与输入图像中的头部较好地重合,二者具有较高的相关度。考虑到当头部发生姿态变化时,面部的亮度分布常常会改变,而使用三维头部模型生成的图像中面部的亮度是不会改变的,这样就会产生误差,在本发明中,采用了分块计算的方法进行处理这种误差。 首先,将头部外观图像划分为一些面积相等的子区域,计算每个子区域与跟它重合的输入图像中的子区域之间的归一化互相关度ri。在头部图像前景部分的边缘附近,存在一些子区域,不包含完整的前景图像,则只对其中的前景部分及其在输入图像中的对应像素进行计算,记子区域中参与计算的像素个数为Ci。定义这两个子区域的距离&为
& = l-r丄 (9) 其中下标i为子区域的索引,A为每个子区域与跟它重合的输入图像中的子区域之间的归一化互相关度。对所有子区域计算距离的平均值,得到参数假设对应的纹理距离
》,《 ,)=^~ (10) 其中上标j为参数假设的索弓l,下标i为子区域的索引,Ci为子区域中参与计算的像素个数,di为通过(9)计算得到的两个子区域的距离。假设参数假设总数为N,则根据(10)式可以计算出相应的N个纹理距离W(勺j^w,记其中的最小值为cT。假设以纹理距离来衡量的跟踪误差为高斯分布,则可以据此计算每个参数假设的权重:
;r,(乂) = exp〗-^———2 ^ (11) 其中d(i)为通过(10)式计算得到的第j个参数假设对应的纹理距离,d*为所有参数假设对应纹理距离的最小值,o d为分布的标准差,可以直接由d*决定
o d = kd* (12) 其中k为适当系数。按照最大后验概率原则,选择权重最大的参数作为跟踪结果输出,完成对当前帧图像中头部的跟踪。 本发明提供的人脸动作自动检测和跟踪方法,可以在视频中自动检测人脸位置,并对人脸位置和姿态参数进行准确的跟踪。可以稳定跟踪头部在面内任意角度转动,面外左右方向转动士45度以上,面外上下方向转动士30度以上。图5是对一段视频中的人脸动作进行跟踪的截图。本发明方法中的检测、定位和跟踪可以对任何使用者进行,不需要针对特定使用者的训练过程。检测和定位快速,对光照和遮挡等具有一定的鲁棒性。此方法在人机交互,表情分析,游戏娱乐等领域具有较高的实用价值和广泛的应用前景。
以上所述,仅为本发明中的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内。
1权利要求
一种视频序列中的三维人脸位置和姿态跟踪的方法,其特征在于,包括以下步骤步骤S1对输入视频序列图像上人脸及人脸关键点位置进行自动检测和定位,使用检测和定位得到的每个关键点在图像中的位置,对三维可变形人脸网格模型的形状、位置和姿态参数进行初始化;步骤S2在对三维可变形人脸网格模型的形状、位置和姿态参数进行初始化的同时获得人脸纹理为人脸正面纹理,在跟踪过程中获得人脸纹理为人脸侧面纹理;步骤S3使用三维可变形人脸网格模型和人脸纹理渲染出不同姿态参数条件下的头部外观图像,在头部外观图像上选择角点特征,并将角点特征与输入视频序列图像进行特征匹配,得到每帧图像中的每个特征点在后一帧图像中的位置;步骤S4根据前后连续两帧间特征点位置匹配的结果计算头部位置和姿态变化;在所有的特征匹配结果中,使用随机采样方式产生不同位置和姿态变化假设,并对假设进行选择,从而去除可能存在的误匹配;然后,采用加入不同的随机噪声的方法,获得大量头部位置和姿态参数的假设;步骤S5使用基于外观的方法对各种头部位置和姿态参数假设进行评价,获得具有最大后验概率的参数;步骤S6对各种头部位置和姿态参数假设,根据评价的具有最大后验概率的参数进行重采样,去掉后验概率较低的假设,增加后验概率较高的假设的个数,完成三维人脸位置和姿态跟踪。
2. 如权利要求1所述的方法,其特征在于,所述三维可变形人脸网格模型由顶点坐标 及顶点与三角形面的对应关系构成,顶点坐标确定了模型形状,模型形状由平均形状和若 干彼此正交的变化分量组成,平均形状和变化分量都通过对三维人脸训练样本进行主成份 分析得到。
3. 如权利要求1所述的方法,其特征在于,所述三维可变形人脸网格模型的形状、位置 和姿态参数进行初始化是首先判断输入视频序列图像中的人脸是否处于正面状态,如果处 于正面状态,则根据人脸关键点位置在图像中进行定位的结果,采用最大化后验概率的方 法,调整三维可变形人脸网格模型的形状、位置和姿态参数。
4. 如权利要求3所述的方法,其特征在于,在判断人脸是否处于正面状态时,综合使用 如下几种判据正面人脸检测分类器的评分大于检测器阈值,主动表观模型方法中纹理匹 配的误差小于纹理匹配阈值,关键点分布的对称性大于对称性阈值。
5. 如权利要求1所述的方法,其特征在于,在选择角点特征时,采用首先对头部外观图 像进行平滑去噪声处理,然后计算像素亮度分布和像素位置综合特征的方式实现;像素亮 度分布和像素位置综合特征采用如下方式获得计算每个像素点哈森矩阵的行列式的值, 再与像素所在位置的可靠性指标加权,作为特征选择的依据;像素所在位置的可靠性指标 包含两个成分,第一部分由像素所在三角形面片在三维空间中的方向确定,第二部分由像 素是否处于人脸正面纹理与侧面纹理的分界线确定。
6. 如权利要求1所述的方法,其特征在于,所述特征匹配采用最小化头部外观图像上 特征点所在矩形区域与输入图像上同样尺寸区域之间的归一化互相关特征的原理进行特 征匹配。
7. 如权利要求1所述的方法,其特征在于,所述使用随机采样方式产生不同位置和姿态变化假设,并对假设进行选择的过程包括如下步骤步骤41 :从对应的特征匹配结果中随机选择出四组,选择时保证特征彼此距离大于特 征距离阈值,并保证特征为非共面特征;步骤42 :根据选择出的四组特征解线性方程组,求出投影矩阵;步骤43 :对于每次随机选择特征计算出的投影矩阵计算出所有特征在此投影矩阵作 用下变换到的位置坐标,与这些特征的实际位置进行比较,记录距离小于特征匹配误差阈 值的特征个数;步骤44 :通过对距离小于特征匹配误差阈值的特征个数进行排序,找到使个数值最大 的投影矩阵;步骤45 :使用个数值最大的投影矩阵,计算出当前帧中头部位置和姿态参数相对于上 一帧中位置和姿态参数的变化量,作为位置和姿态变化假设的选择结果。
8.如权利要求1所述的方法,其特征在于,所述使用基于外观的方法对各种头部位置 和姿态参数假设进行评价的步骤包括如下步骤51 :对每一个头部位置和姿态参数假设,使用三维可变形人脸网格模型及面部纹 理,渲染出一幅头部外观图像;步骤52 :将头部外观图像与输入视频序列图像分割成若干对应的矩形小区域,对每个 对应的分别来自头部外观图像与输入图像的矩形小区域,计算归一化互相关系数,并进一 步得到子区域的距离;步骤53:对所有矩形小区域,计算距离的平均值,得到头部外观图像与输入图像的纹 理距离,假设以纹理距离来衡量的跟踪误差为高斯分布,分布的形状与纹理距离的最小值 及均值有关,则可以据此计算每种假设的可靠性,作为对各种头部位置和姿态参数假设进 行评价的结果。
全文摘要
本发明提出了一种视频序列中的三维人脸位置和姿态跟踪的方法,该方法使用基于主成份分析的可变形三维网格模型,通过最小化网格模型上的关键点与输入图像上的对应关键点的距离,使模型拟合使用者的头部形状。利用三维模型以及初始化阶段获得的人脸纹理,可以渲染出不同姿态下的人脸图像。在渲染出的图像中选择特征点,并在输入图像上搜索对应位置,使用随机采样方式去除特征匹配错误,然后根据特征点之间的对应关系估计模型姿态变化参数,实现假设的状态更新。使用平均归一化互相关计算渲染图像与实际图像的距离,实现假设权重的计算,获得跟踪结果。实验表明,这种跟踪方法可以有效地对视频中的三维头部姿态进行跟踪。
文档编号G06T7/00GK101763636SQ20091009389
公开日2010年6月30日 申请日期2009年9月23日 优先权日2009年9月23日
发明者丁宾, 冯雪涛, 周明才, 汪晓妍, 王阳生 申请人:中国科学院自动化研究所;北京盛开互动科技有限公司