一种基于区域分割和分段学习的三维人脸动画制作的方法

文档序号:6460359阅读:478来源:国知局
专利名称:一种基于区域分割和分段学习的三维人脸动画制作的方法
技术领域
本发明涉及三维人脸网格的区域划分的方法,涉及人脸表情运动和三维人脸网格变形的方法,属于计算机三维动画技术领域。

背景技术
三维人脸动画技术最早的工作开始于1972年。其后的学者做了很多工作,以期能够生成逼真生动的三维人脸动画。但由于人脸的解剖学结构非常复杂,细微的非刚性运动难以用数学建模,同时,人们对人脸外观的敏感性,使得这一课题非常困难。目前真实感三维人脸动画的工作取得了一些进展,基本上可以分为如下几类 基于插值的方法最早的人脸动画是基于插值的方法。首先由动画师制作一些特定的人脸表情关键帧,然后用线性插值在这些关键帧之间建立光滑的过渡。这种方法主要依靠动画师的个人能力,而且比较耗时。
基于自由变形的方法自由变形的方法把三维人脸动画转化为一个曲面变形的问题。由若干控制点组成了一个包围体,包围体的运动直接驱动人脸网格的变形。这种方法输入限制少,但往往需要对人脸进行区域划分,这个过程对一般用户来说比较困难和繁琐;而且由于变形体没有考虑人脸网格本身的拓扑结构,所以变形往往会产生一些瑕疵。
基于物理建模的方法首先对人脸的解剖学结构,如肌肉、头骨和皮肤进行建模,然后运动捕获数据则可以转化为肌肉收缩的参数,驱动模型的人脸动画。这种方法产生的符合人脸的运动特性,比较真实,但计算代价比较高,且难以快速对新角色建立物理模型。
基于例子的方法三维人脸动画被看作是一些特定实例的线性组合。运动捕获数据中的运动向量,直接被用来估计线性组合的参数和插值系数。预先定义的实例则通过这些参数和系数被混合在一起。这类方法比较稳定和准确,但建立实例的过程比较昂贵和繁琐。
表情克隆的方法为了将已有的三维网格运动数据应用到新的三维人脸模上,运动位移需要针对网格的局部几何特征进行旋转和缩放。表情克隆可以解决不同三维人脸曲面网格之间的运动重定向问题。
实时人脸动画捕获通过计算机视觉算法,视频中的角色的三维形状和彩色纹理被实时重建。这种方法可以对特定角色进行逼真生动的动画创作,但产生的动画难以转移到其他角色上。


发明内容
本发明的目的在于提供一种基于区域分割和分段学习的三维人脸动画制作的方法。此方法可以对单个人脸模型进行自动区域分割,并通过分段径向基函数对人脸非刚性运动进行建模,从而生成具有真实感的人脸动画;同时避免了对人脸功能区域进行手工划分的繁琐,具有较好的实时性和可扩展性。
为实现上述发明目的,本发明采用下述的技术方案 基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于该方法包括如下步骤首先获取稀疏的三维运动捕获数据和三维人脸曲面网格;然后在三维人脸网格上标定运动捕获数据的对应控制点;采用聚类算法对三维人脸模型进行区域分割;分割得到的曲面片来训练分段径向基函数,控制三维人脸曲面网格的变形;对边缘运动采用改进的Voronoi-Cell算法进行融合。
所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的获取稀疏三维运动捕获数据在人面部的关键运动部位粘贴反光标记点,采用三维运动捕获设备,对反光标记点进行视觉跟踪,对面部标记点的三维空间位置进行三维重建,然后用文件的方式记录。
所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的获取三维人脸曲面网格数据采用光学三维扫描仪,获取人脸的三维几何信息和彩色纹理信息,并用三维绘图软件包绘制在显示器上。
所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的在三维人脸网格上标定运动捕获数据的对应控制点对于已经获取的人脸的三维模型,采用三维绘图软件包绘制在显示器上,用计算机鼠标交互方法,对人脸模型上的关键运动部位进行选取,所选取的特征点与所获取的运动数据对应的特征点一致,建立运动捕获数据和三维曲面网格特征点的对应关系。
所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的采用聚类算法对三维人脸模型进行区域分割基于运动捕获数据的位移向量的余弦距离和三维人脸网格顶点的短程距离对运动捕获数据标记点进行聚类;采用短程距离,即三维曲面上的最短路径,采用图论中的最短路径算法,将两点之间的最短路径作为距离度量,用来表达三维曲面上的拓扑结构;把输入的人脸网格看作一个无向图,其中无向图的结点和弧由人脸网格的顶点和边表示,由人脸网格构造的无向图构造一个邻接矩阵,无向图上结点



之间的短程距离δij由邻接矩阵的最短路径算法,即Dijkstra算法得到在三维人脸网格上的控制点到其他所有点的短程距离,并以矩阵的形式存储起来; 将余弦距离和短程距离的复合相似度函数嵌入到单连接阶层聚类算法包括如下 1)在一个特征帧Ei,0≤i≤NF′,其中E0是带有中立表情的初始帧,对两个标记点mki,mji,1≤k,j≤NM,其相似度量函数为1≤i≤NF′1≤k,j≤NM。其中pki,pji是mki,mji在人脸网格上的对应特征点。对所有特征帧计算S(mki,mji)取最大值作为mk,mj的相似度1≤i≤NF′。
2)将每一个标记点分为一个类别,类之间的相似度定义为其包含的标记点之间的相似度; 3)找到最大相似度的两个类并将其合并为一类; 4)计算新产生的类与其他类的相似度,类之间的相似度定义为一个类中的任意标记点与另一类中的任意标记点之间的最大相似度; 5)重复步骤2和3直到类之间的最大相似度小于某个阈值θ。所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的分割得到的曲面片来训练分段径向基函数,控制三维人脸曲面网格的变形在分割后的人脸曲面片中中,学习分段径向基函数作为能量优化的映射函数,径向基函数有多种形式,采用多二次径向基函数,其形式如下其中

是输入数据的向量表示,即三维人脸网格顶点的初始位置,W=[w1,w2,...wn]T是权值参数,其中n是控制点的个数,γji是输入顶点j和第i个控制点之间的距离,σi是松弛系数。
所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的对边缘运动采用改进的Voronoi-Cell算法进行融合对于曲面片没有覆盖到的边缘顶点运动,把聚类后的标记点作为虚拟质心,对人脸网格上的顶点进行分类,为了判断某一个顶点是否属于某一个虚拟质心,首先计算这个顶点到每一个质心的距离,对每组标记点的对应特征点计算最小包围盒,然后采用启发式规则判定一个顶点是否属于一个或多个标记点组; 条件1顶点位于此标记点类的最小包围盒内; 条件2顶点到此标记点类的距离相比其他类的距离为最短; 启发式规则1如果顶点和一个标记点类同时满足以上两个条件,顶点属于此标记点类; 启发式规则2如果顶点和一个标记点类不能同时满足以上两个条件,顶点被认为是边缘顶点并被归类到满足Dist(Ci,vj)≤α·si的一个或多个组,其中,Dist是距离函数,Ci是质心,vj是顶点坐标,α>0是放大因数,si是松弛系数; 假设A={Ci|Dist(Ci,vj)≤α·si}是顶点vj的相邻质心的集合,为vj分别分配一组权重wi,j表示vj属于Ci的程度,作为加权计算的权重。
本发明的有益效果 1、三维运动捕获数据给三维人脸动画提供准确的时序保证,三维人脸网格数据则提供了准确的空间保证。三维运动捕获数据和三维人脸网格数据的结合,可以得到时空上高精度的三维人脸动画; 2、引入两层聚类算法对人脸网格数据进行区域划分,避免了自由变形方法中的人脸功能区域划分的复杂和繁琐,提高了人脸动画的制作效率; 3、以区域分割后的曲面片学习分段函数,运动捕获数据中的控制点位移作为参数,对人脸曲面进行变形,并对曲面片没有覆盖的边缘区域进行融合处理,可以实时生成具有真实感的三维人脸动画,同时保证了人脸肌肉运动属性的正确性和变形处理的实时性要求。



下面结合附图和具体实施对本发明作进一步的说明; 图1(a)为本发明的三维运动捕获数据; 图1(b)为本发明的三维人脸模型; 图2为本发明的Voronoi-Cell融合算法的示意图边缘顶点的运动由相邻单元的运动加权计算。

具体实施例方式 基于区域分割和分段学习的三维人脸动画制作的方法,可以对单个人脸模型进行自动区域分割,并通过分段径向基函数对人脸非刚性运动进行建模,从而生成具有真实感的人脸动画。首先获取稀疏的三维运动捕获数据和三维人脸曲面网格;然后在三维人脸网格上标定运动捕获数据的对应控制点;采用双层聚类算法对三维人脸模型进行区域分割;分割得到的曲面片来训练分段径向基函数;边缘运动采用改进的Voronoi-Cell算法进行融合。该方法包括如下步骤 (1)获取稀疏三维运动捕获数据通过快速光学摄像机,将绑有反光标记的人脸运动采集,然后用文件的方式记录。
(2)获取三维人脸曲面网格数据采用光学三维扫描仪,将特定人脸的三维信息和彩色纹理信息记录,并用三维绘图软件包绘制在显示器上。
(3)在三维人脸网格上标定运动捕获数据的对应控制点将运动捕获数据中的全部或者部分标记点对应的在三维人脸曲面网格上指名,建立运动捕获数据和三维曲面网格的对应关系。
(4)采用双层聚类算法对三维人脸模型进行区域划分基于运动捕获数据的位移向量的余弦距离和三维人脸网格顶点的流形距离对运动捕获数据标记点进行聚类,通过聚类后的标记点组对人脸模型的顶点进行分割;所述的采用短程距离,即三维曲面上的最短路径对三维曲面上的拓扑结构和缝隙进行建模采用图论中的最短路径算法,将两点之间的最短路径作为它们之间的距离度量。
(5)分割得到的曲面片所覆盖的运动捕获标记点作为控制顶点,用来训练分段径向基函数,指导曲面片上其他三维人脸网格顶点运动;曲面片没有覆盖到的边缘顶点运动采用改进的Voronoi-Cell算法进行融合。
实施例 首先可通过美国MotionAnalysis公式的Hawk三维运动数据捕获设备采集人脸的运动数据,表演者的面部主要特征点用反光材料做标记,如图1(左)所示,或者从计算机存储设备中读取已经捕获的三维运动数据;另外,通过3DCamega三维扫描仪建立三维人脸网格模型,或者从计算机存储设备中读取已有的三维人脸网格模型,采用三维软件包将三维人脸网格模型绘制在显示器上。通过计算机输入设备在三维人脸网格上标定运动捕获数据的对应控制点,即将运动捕获数据中的全部或者部分标记点对应的在三维人脸曲面网格上标明,建立运动捕获数据和三维曲面网格的对应关系,如图1(右)所示。
在建立了三维人脸网格以后,我们用短程距离来对人脸的拓扑结构进行建模。我们把输入的人脸网格看作一个无向图,其中无向图的结点和弧由人脸网格的顶点和边表示。根据图论,由人脸网格构造的无向图可以构造一个邻接矩阵。由图1(b)所示的三维人脸网格构造的邻接矩阵由5832行和5832列构成,只有22984个非零元素,即,非零元素只有0.068%。无向图上结点



之间的短程距离δij可以由邻接矩阵的最短路径算法,即Dijkstra算法得到我们计算了在三维人脸网格上的控制点到其他所有点的短程距离,并以矩阵的形式存储起来。
本文将余弦距离和短程距离的复合相似度函数嵌入到单连接阶层聚类算法,其流程如下 6)将每一个标记点分为一个类别,类之间的相似度定义为其包含的标记点之间的相似度; 7)找到最接近(最大相似度)的两个类并将其合并为一类; 8)计算新产生的类与其他类的相似度,类之间的相似度定义为一个类中的任意标记点与另一类中的任意标记点之间的最大相似度; 9)重复步骤2和3直到类之间的最大相似度小于某个阈值θ。阈值θ经过实验确定为0.75。
把聚类后的标记点作为虚拟质心,对人脸网格上的顶点进行分类。为了判断某一个顶点是否属于某一个虚拟质心,首先计算这个顶点到每一个质心的距离。同时,我们对每组标记点的对应特征点计算最小包围盒。然后采用启发式规则判定一个顶点是否属于一个或多个标记点组。
条件1顶点位于此标记点类的最小包围盒内; 条件2顶点到此标记点类的距离相比其他类的距离为最短; 启发式规则1如果顶点和一个标记点类同时满足以上两个条件,顶点属于此标记点类; 启发式规则2如果顶点和一个标记点类不能同时满足以上两个条件,顶点被认为是边缘顶点并被归类到满足Dist(Ci,vj)≤α·si的一个或多个组,其中α>0是放大因数,可以用来控制单元边缘的宽度。本实施例中α=1。
假设A={Ci|Dist(Ci,vj)≤α·si}是顶点vj的相邻质心的集合,为vj分别分配一组权重 表示vj属于Ci的程度。
在分割后的人脸曲面片中中,学习分段径向基函数作为能量优化的映射函数。径向基函数有多种形式,我们采用了多二次径向基函数(Multi-quadricsRBF),其形式如下 其中

是输入数据的向量表示,即三维人脸网格顶点的初始位置,W=[w1,w2,...wn]T是权值参数,其中n是控制点的个数,γji是输入顶点j和第i个控制点之间的距离,σi是松弛系数。对于边缘顶点,采用公式1中计算的权重,通过Voronoi-Cell算法进行加权计算。
本实施例通过三维运动捕获数据给三维人脸动画提供准确的时序保证,通过三维人脸网格数据则提供了准确的空间保证。三维运动捕获数据和三维人脸网格数据的结合,可以得到时空上高精度的三维人脸动画;引入两层聚类算法对人脸网格数据进行区域划分,避免了自由变形方法中的人脸功能区域划分的复杂和繁琐,提高了人脸动画的制作效率;以区域分割后的曲面片学习分段函数,运动捕获数据中的控制点位移作为参数,对人脸曲面进行变形,并对曲面片没有覆盖的边缘区域进行融合处理,可以实时生成具有真实感的三维人脸动画,同时保证了人脸肌肉运动属性的正确性和变形处理的实时性要求。
权利要求
1.一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于该方法包括如下步骤
1)首先获取稀疏的三维运动捕获数据和三维人脸曲面网格;
2)然后在三维人脸网格上标定运动捕获数据的对应控制点;
3)采用聚类算法对三维人脸模型进行区域分割;
4)分割得到的曲面片来训练分段径向基函数,控制三维人脸曲面网格的变形;
5)对边缘运动采用改进的Voronoi-Cell算法进行融合。
2.根据权利要求1所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的获取稀疏三维运动捕获数据在人面部的关键运动部位粘贴反光标记点,采用三维运动捕获设备,对反光标记点进行视觉跟踪,对面部标记点的三维空间位置进行三维重建,然后用文件的方式记录。
3.根据权利要求1所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的获取三维人脸曲面网格数据采用光学三维扫描仪,获取人脸的三维几何信息和彩色纹理信息,并用三维绘图软件包绘制在显示器上。
4.根据权利要求1所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的在三维人脸网格上标定运动捕获数据的对应控制点对于已经获取的人脸的三维模型,采用三维绘图软件包绘制在显示器上,用计算机鼠标交互方法,对人脸模型上的关键运动部位进行选取,所选取的特征点与所获取的运动数据对应的特征点一致,建立运动捕获数据和三维曲面网格特征点的对应关系。
5.根据权利要求1所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的采用聚类算法对三维人脸模型进行区域分割基于运动捕获数据的位移向量的余弦距离和三维人脸网格顶点的短程距离对运动捕获数据标记点进行聚类;采用短程距离,即三维曲面上的最短路径,采用图论中的最短路径算法,将两点之间的最短路径作为距离度量,用来表达三维曲面上的拓扑结构;把输入的人脸网格看作一个无向图,其中无向图的结点和弧由人脸网格的顶点和边表示,由人脸网格构造的无向图构造一个邻接矩阵,无向图上结点

之间的短程距离δij由邻接矩阵的最短路径算法,即Dijkstra算法得到在三维人脸网格上的控制点到其他所有点的短程距离,并以矩阵的形式存储起来;
将余弦距离和短程距离的复合相似度函数嵌入到单连接阶层聚类算法包括如下
1)在一个特征帧Ei,0≤i≤NF′,其中E0是带有中立表情的初始帧,对两个标记点mki,mji,1≤k,j≤NM,其相似度量函数为1≤i≤NF′,1≤k,j≤NM。其中
pki,pji是mki,mji在人脸网格上的对应特征点。对所有特征帧计算S(mki,mji)取最大值作为mk,mj的相似度
2)将每一个标记点分为一个类别,类之间的相似度定义为其包含的标记点之间的相似度;
3)找到最大相似度的两个类并将其合并为一类;
4)计算新产生的类与其他类的相似度,类之间的相似度定义为一个类中的任意标记点与另一类中的任意标记点之间的最大相似度;
5)重复步骤2和3直到类之间的最大相似度小于某个阈值θ。
6.根据权利要求1所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的分割得到的曲面片来训练分段径向基函数,控制三维人脸曲面网格的变形在分割后的人脸曲面片中中,学习分段径向基函数作为能量优化的映射函数,径向基函数有多种形式,采用多二次径向基函数,其形式如下其中
是输入数据的向量表示,即三维人脸网格顶点的初始位置,W=[w1,w2,...wn]T是权值参数,其中n是控制点的个数,γji是输入顶点j和第i个控制点之间的距离,σi是松弛系数。
7.根据权利要求1所述的一种基于区域分割和分段学习的三维人脸动画制作的方法,其特征在于,所述的对边缘运动采用改进的Voronoi-Cell算法进行融合对于曲面片没有覆盖到的边缘顶点运动,把聚类后的标记点作为虚拟质心,对人脸网格上的顶点进行分类,为了判断某一个顶点是否属于某一个虚拟质心,首先计算这个顶点到每一个质心的距离,对每组标记点的对应特征点计算最小包围盒,然后采用启发式规则判定一个顶点是否属于一个或多个标记点组;
条件1顶点位于此标记点类的最小包围盒内;
条件2顶点到此标记点类的距离相比其他类的距离为最短;
启发式规则1如果顶点和一个标记点类同时满足以上两个条件,顶点属于此标记点类;
启发式规则2如果顶点和一个标记点类不能同时满足以上两个条件,顶点被认为是边缘顶点并被归类到满足Dist(Ci,vj)≤α·si的一个或多个组,其中,Dist是距离函数,Ci是质心,vj是顶点坐标,α>0是放大因数,si是松弛系数;
假设A={Ci|Dist(Ci,vj)≤α·si}是顶点vj的相邻质心的集合,为vj分别分配一组权重表示vj属于Ci的程度,作为加权计算的权重。
全文摘要
本发明公开了一种基于区域分割和分段学习的三维人脸动画制作的方法。它首先获取稀疏的三维运动捕获数据和三维人脸曲面网格;然后在三维人脸网格上标定运动捕获数据的对应控制点;分离运动捕获数据中的刚性和非刚性运动,并对齐运动捕获数据和静态人脸模型;基于运动捕获数据的位移向量的余弦距离和三维人脸网格顶点的流形距离对人脸模型的顶点进行聚类;对分割得到的曲面片训练分段径向基函数;边缘运动采用改进的Voronoi-Cell算法进行融合。本发明可以对单个人脸模型进行自动区域分割,并通过分段径向基函数对人脸非刚性运动进行建模,从而生成具有真实感的人脸动画。
文档编号G06T15/00GK101216949SQ20081005912
公开日2008年7月9日 申请日期2008年1月14日 优先权日2008年1月14日
发明者庄越挺, 王玉顺, 俊 肖, 飞 吴 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1