实现器官动画的方法和系统转让专利

申请号 : CN200710117625.6

文献号 : CN100593175C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 谢东海黄英王浩

申请人 : 北京中星微电子有限公司

摘要 :

本发明公开了一种实现器官动画的方法和系统,其利用ASM技术确定出器官轮廓,并将所述器官轮廓映射到PCA模型中的不同状态对应的主特征分量上,得到相应的投影值;然后根据所述投影值获得驱动三维器官的运动参数;利用所述运动参数驱动器官运动,因此,当本发明实施例能够驱动嘴巴器官运动;另外本发明实施例还可以确定所述控制点的运动方向;利用驱动器官模型的运动参数,驱动所述控制点沿着所述运动方向运动,因此能够反映嘴巴的微笑、愤怒、惊讶和害怕等表情,因此用这种方法来驱动嘴巴可以得到和实际嘴形更加吻合的效果。

权利要求 :

1、一种实现器官动画的方法,其特征在于,包括:

利用活动形状模型确定出器官模型轮廓;

根据多张不同图片上或者视频中的器官模型的标记在器官模型轮廓上的 特征分量的分布规律,利用主分量分析模型,提取出反映器官轮廓变化情况的 主特征分量;将所述器官模型轮廓映射到主分量分析模型中不同状态对应的主 特征分量上,得到相应的投影值;根据所述投影值获得驱动器官模型的运动参 数;

利用所述运动参数驱动所述器官模型运动。

2、如权利要求1所述的方法,其特征在于,所述确定器官模型轮廓的过 程,具体包括:利用人脸检测技术对图片或者视频中的器官模型进行精确的定位;

搜索所定位到的器官模型的轮廓候选点,利用活动形状模型根据所述轮廓 候选点,得到所述器官模型的轮廓。

3、如权利要求1所述的方法,其特征在于,所述根据所述投影值获得驱 动器官模型的运动参数的过程,具体包括:根据所述投影值的变化范围,器官模型中器官轮廓的高度,将所计算出来 的投影值,转换为驱动器官模型的运动参数。

4、如权利要求1所述的方法,其特征在于,所述利用所述运动参数驱动 所述器官模型运动的过程,具体包括:在器官模型上选取需要驱动的点,并从中确定出控制器官形状变化的控制 点;计算所述控制点与所述控制点周围的邻域点之间的距离;

利用所述驱动器官模型的运动参数,控制所述控制点运动,并根据所述控 制点与所述邻域点之间的距离,控制所述邻域点运动。

5、如权利要求4所述的方法,其特征在于,

还包括:确定所述控制点的运动方向;

所述利用所述运动参数,控制所述控制点运动的过程,包括:利用驱动器 官模型的运动参数,驱动所述控制点沿着所述运动方向运动。

6、如权利要求5所述的方法,其特征在于,所述确定所述控制点的运动 方向的过程,包括:将器官模型中的器官控制点和没有表情的标准人脸轮廓中的器官控制点, 分别对应到器官模型的坐标轴方向上,然后对同一坐标轴上的数据进行相减, 得到控制点的运动方向对应的矢量。

7、一种实现器官动画的系统,其特征在于,包括:

轮廓确定单元,用于利用活动形状模型确定出器官模型轮廓;

主分量分析模型主特征分量确定单元,用于根据多张不同图片上或者视频 中的器官模型的标记在器官模型轮廓上的特征分量的分布规律,利用主分量分 析模型,提取出反映器官轮廓变化情况的主特征分量;

运动参数确定单元,用于将所述器官模型轮廓映射到主分量分析模型中的 不同状态对应的主特征分量上,得到相应的投影值;根据所述投影值获得驱动 器官模型的运动参数;

驱动单元,用于利用所述运动参数驱动所述器官模型运动。

8、如权利要求7所述的系统,其特征在于,所述轮廓确定单元包括:定位子单元,用于利用人脸检测技术对图片或者视频中的器官模型进行精 确的定位;

轮廓确定子单元,用于搜索所述定位子单元所定位到的器官模型的轮廓候 选点,利用活动形状模型根据所述轮廓候选点,得到所述器官模型的轮廓。

9、如权利要求7所述的系统,其特征在于,所述运动参数确定单元包括:映射子单元,用于将所述器官模型轮廓映射到主分量分析模型中的不同状 态对应的主特征分量上,得到相应的投影值;

运动参数确定子单元,用于根据所述定位子单元得到的投影值的变化范 围,器官模型中器官轮廓的高度,将所述定位子单元所计算出来的投影值,转 换为驱动器官模型的运动参数。

10、如权利要求7所述的系统,其特征在于,所述驱动单元包括:驱动点选取子单元,用于在器官模型上选取需要驱动的点,并从中确定出 控制器官形状变化的控制点;计算所述控制点与所述控制点周围的邻域点之间 的距离;

第一驱动子单元,用于利用所述运动参数,控制所述驱动点选取子单元所 确定的控制点运动,并根据所述驱动点选取子单元所计算出的控制点与所述邻 域点之间的距离,控制所述邻域点运动。

11、如权利要求7所述的系统,其特征在于,所述驱动单元包括:驱动点选取子单元,用于在器官模型上选取需要驱动的点,并从中确定出 控制器官形状变化的控制点;计算所述控制点与所述控制点周围的邻域点之间 的距离;

运动方向确定子单元,用于确定所述控制点的运动方向;

第二驱动子单元,用于利用驱动器官模型的运动参数,驱动所述控制点沿 着所述运动方向确定子单元所确定的运动方向运动,并根据所述驱动点选取子 单元所计算出的控制点与所述邻域点之间的距离,控制所述邻域点运动。

说明书 :

技术领域

本发明涉及统计数据处理领域,尤其涉及实现器官动画的技术。

背景技术

ASM(Active Shape Model,活动形状模型)是一种强大的物体形状描述 方法,其利用PCA(Principal Components Analysis,主分量分析)技术,来统 计形状特征,并利用所统计的形状特征来研究相似物体的轮廓变化规律。
目前,ASM技术被广泛应用于人脸轮廓定位。基于ASM技术进行人脸轮 廓定位时,一般首先给出人脸器官轮廓的初始位置;然后在初始位置附近,搜 索最合适的器官轮廓候选点,并将所述候选点组织为一个新的轮廓投影到PCA 空间中,得到一个形状上被约束的轮廓,最后不断迭代就可以定位出最终的人 脸器官轮廓。
三维人脸动画在人机交互、娱乐、虚拟直播领域有着广泛的应用,基于行 为的人脸动画(Performance-Driven Face Animation)则是其中一项非常困难和 有挑战性的研究方向。因为人的嘴巴是整个人脸区域中变化最为复杂的部位, 所以人脸动画中最复杂的则是嘴巴的驱动。
与本发明有关的现有技术提供了一种确定嘴巴的张开与闭合的方法,其基 于视频中人脸特征信息,通过计算上下嘴唇的距离来判断嘴巴的张开和闭合。
现有技术仅仅能够确定出嘴巴的张开与闭合,但不能实现对嘴巴器官的驱 动。

发明内容

本发明的实施例提供一种实现器官动画的方法和系统,其能够驱动嘴巴器 官运动。
本发明的实施例通过如下技术方案实现:
本发明的实施例提供一种实现器官动画的方法,其包括:
利用活动形状模型ASM技术确定出器官模型轮廓;
根据多张不同图片上或者视频中的器官模型的标记在器官模型轮廓上的 特征分量的分布规律,利用主分量分析模型,提取出反映器官轮廓变化情况的 主特征分量;
将所述器官模型轮廓映射到主分量分析PCA模型中的不同状态对应的主 特征分量上,得到相应的投影值;根据所述投影值获得驱动器官模型的运动参 数;
利用所述运动参数驱动所述器官模型运动。
其中,所述利用ASM技术确定出器官模型轮廓的过程,具体包括:
利用人脸检测技术对图片或者视频中的器官模型进行精确的定位;
搜索所定位到的器官模型的轮廓候选点,并利用ASM技术,根据所述轮 廓候选点,得到所述器官模型的轮廓。
其中,所述根据所述投影值获得驱动器官模型的运动参数的过程,具体包 括:
根据所述投影值的变化范围,器官模型中器官轮廓的高度,将所计算出来 的投影值,转换为驱动器官模型的运动参数。
其中,所述利用所述运动参数驱动所述器官模型运动的过程,具体包括:
利用开放式图形库OpenGL编程技术,或通过三维造型软件,在器官模型 上选取需要驱动的点,并从中确定出控制器官形状变化的控制点;计算所述控 制点与所述控制点周围的邻域点之间的距离;
利用所述运动参数,控制所述控制点运动,并根据所述控制点与所述邻域 点之间的距离,控制所述邻域点运动。
本发明实施例还提供一种实现器官动画的系统,其包括:
轮廓确定单元,用于利用活动形状模型ASM技术确定出器官模型轮廓;
PCA模型主特征分量确定单元,用于根据多张不同图片上或者视频中的器 官模型的标记在器官模型轮廓上的特征分量的分布规律,利用ASM技术中的 PCA模型,提取出PCA模型中反映器官轮廓变化情况的主特征分量;
运动参数确定单元,用于将所述器官模型轮廓映射到主分量分析PCA模 型中的不同状态对应的主特征分量上,得到相应的投影值;根据所述投影值获 得驱动器官模型的运动参数;
驱动单元,用于利用所述运动参数驱动所述器官模型运动。
其中,所述轮廓确定单元包括:
定位子单元,用于利用人脸检测技术对图片或者视频中的器官模型进行精 确的定位;
轮廓确定子单元,用于搜索所定位到的器官模型的轮廓候选点,并利用 ASM技术,根据所述轮廓候选点,得到所述器官模型的轮廓。
其中,所述运动参数确定单元包括:
映射子单元,用于将所述器官模型轮廓映射到PCA模型中的不同状态对 应的主特征分量上,得到相应的投影值;
运动参数确定子单元,用于根据所述投影值的变化范围,器官模型中器官 轮廓的高度,将所计算出来的投影值,转换为驱动器官模型的运动参数。
其中,所述驱动单元包括:
驱动点选取子单元,用于利用开放式图形库OpenGL编程技术,或通过三 维造型软件,在器官模型上选取需要驱动的点,并从中确定出控制器官形状变 化的控制点;计算所述控制点与所述控制点周围的邻域点之间的距离;
驱动子单元,用于利用所述运动参数,控制所述控制点运动,并根据所述 控制点与所述邻域点之间的距离,控制所述邻域点运动。
由上述本发明的实施例提供的具体实施方案可以看出,其利用ASM技术 确定出器官轮廓,并将所述器官的轮廓映射到PCA模型中的不同状态对应的 主特征分量上,得到相应的投影值;然后根据所述投影值获得驱动器官的运动 参数;利用所述运动参数驱动器官运动,因此,当本发明实施例能够驱动嘴巴 器官运动。

附图说明

图1为本发明提供的第一实施例的流程图;
图2为控制嘴巴器官轮廓形状整体变化的第一个主特征分量;
图3为控制嘴巴器官的张开和紧闭的第二主特征分量;
图4为控制嘴巴器官的嘴角扩张和收缩的第三特征分量;
图5为利用OpenGL技术,或通过三维造型软件,在待驱动嘴巴器官上选 取的需要驱动的点的示意图;
图6为控制上嘴唇运动的点的示意图;
图7为控制下嘴唇运动的点的示意图;
图8为控制左嘴角运动的点的示意图;
图9为通过运动参数组合控制控制点,并进行组合后,得到的一种驱动效 果示意图;
图10为通过运动参数组合控制控制点,并进行组合后,得到的第二种驱 动效果示意图;
图11为通过运动参数组合控制控制点,并进行组合后,得到的第三种驱 动效果示意图;
图12为通过运动参数组合控制控制点,并精确设定控制点运动方向得到 的微笑效果示意图;
图13为本发明提供的第二实施例的结构原理图。

具体实施方式

本发明提供的第一实施例是一种实现器官动画的方法,其利用ASM技术 获取图片或者视频中的器官轮廓,并利用所获取的器官轮廓来驱动器官动画, 其实现流程如图1所示,包括:
步骤S101,利用人脸检测技术对图片或者视频中的器官模型进行精确的定 位。
以人脸器官为例,步骤S101中,首先获取包含正面人脸的静态图像或者 视频流图像;然后利用人脸检测技术从所获取的图像中找出人脸的区域;
然后进行特征点定位:在检测到的人脸的区域中找出几个明显特征点的初 始位置,所述特征点如眼角点和嘴角点。
步骤S102,搜索所定位到的器官模型的轮廓候选点,并利用ASM技术, 根据所述轮廓候选点,得到所述器官模型的轮廓。
对器官进行精确的定位后,得到器官的初始位置,然后在所述初始位置附 近,搜索最合适的器官轮廓候选点,并将所述候选点组织为一个新的轮廓投影 到ASM模型中的PCA空间,得到一个形状上被约束的轮廓,最后不断迭代就 可以定位出最终的人脸器官轮廓。
步骤S103,将所述器官模型的轮廓映射到ASM技术中的PCA模型中的 不同状态对应的主特征分量上,得到相应的投影值。
下面以嘴巴器官为例,对步骤S103进行说明:
根据多张不同图片或者视频中的器官模型上的标记在嘴巴器官轮廓上的 特征分量的分布规律,利用ASM技术中的PCA模型,提取出与嘴巴运动有联 系的主特征分量,即反映所述新的嘴巴器官轮廓变化情况的主特征分量,包括: 如图2所示的控制嘴巴器官轮廓形状整体变化的第一个主特征分量,其是PCA 变换中最大的特征值对应的特征分量;如图3所示的控制嘴巴器官的张开和紧 闭的第二主特征分量,设为pm;如图4所示的控制嘴巴器官的嘴角扩张和收缩 的第三特征分量,设为pc。
利用PCA模型,将实际得到的新的嘴巴器官轮廓映射到控制嘴巴器官形 状变化的第二主特征分量pm、第三主特征分量pc上,分别得到反映新的嘴巴器 官轮廓的投影值:Am和Ac。
利用ASM技术的PCA模型,计算Am的变化范围[-ml,mr](ml和mr都为正 数),并令M=mr+ml。当Am为0时,嘴巴是自然闭合的;当mr>Am>0时,嘴 巴就张开,-ml<Am<0,嘴巴就紧闭。
同理,利用ASM技术的PCA模型,计算Ac的变化范围[-nl,nr],(nl,nr都 为正数),并令N=nr+nl。当Ac为0时,嘴巴是自然收缩的;当N>Ac>0,嘴 巴就扩张,Am<0,嘴巴就紧收缩。
步骤S104,根据所述投影值的变化范围,器官模型中器官轮廓的高度,将 所计算出来的投影值,转换为驱动器官模型的运动参数。
所述运动参数包括:嘴巴张开和紧闭的参数,嘴角扩张和收缩的参数。
以反映嘴巴器官的张开和紧闭的投影值Am为例,由步骤S103,可以看出, ASM模型计算出的Am的变化范围为M。假设三维器官模型中嘴巴器官的高度 为H,那么驱动嘴巴器官张开和闭合的运动参数就为:同理可以计算出 嘴角扩张和收缩的运动参数。
步骤S105,利用所述运动参数驱动所述器官模型的运动。
利用OpenGL(Open Graphics Library,开放式图形库)编程技术,或通过 三维造型软件,在器官模型上选取需要驱动的点,并从中确定控制器官形状变 化的控制点,其它点被看作所述控制点的邻域点;计算所述控制点与所述邻域 点之间的距离。利用所述运动参数,控制所述控制点运动,并根据所述控制点 与所述邻域点之间的距离,控制所述邻域点运动。
以嘴巴器官为例,对步骤S105进行详细描述:
首先,利用OpenGL技术,或通过三维造型软件,在待驱动嘴巴器官上选 取需要驱动的点,如图5中的2.1~2.9点;从中确定出控制嘴巴器官形状变化 的控制点,如控制嘴巴器官张开和闭合的控制点2.2或2.3,控制嘴巴器官嘴角 扩张和收缩的控制点2.4或2.5等。将其它点看作所述控制点的邻域点。并计 算所述控制点与所述邻域点之间的距离。
接下来,通过控制嘴巴器官张开和闭合的运动参数,驱动所述控制点2.2 或2.3运动;通过控制嘴巴器官嘴角扩张和收缩的运动参数,驱动所述控制点 2.4或2.5运动;并通过所述控制点与其领域点之间的距离,带动所述邻域点运 动,从而达到驱动所述嘴巴器官运动的目的。
假设选取待驱动嘴巴器官在不同表情状态下需要驱动的点,如图6中的控 制上嘴唇运动的黑色点,并从其中选取与图5中点2.2最接近的一个点作为控 制点;如图7中的控制下嘴唇运动的黑色点,并从其中选取与图5中点2.3最 接近的一个点作为控制点;如图8中的控制左嘴角运动的黑色点,并从其中选 取与图5中点2.4最接近的一个点作为控制点。通过这些控制点对应的运动参 数控制这些控制点,并进行组合,可以达到不同的动画驱动效果,如图9、图 10或图11。
通过上述步骤,能够反映出嘴巴器官的张开或闭合等状态信息。
为了进一步达到逼真的动画效果,反映出嘴巴的微笑、愤怒、惊讶和害怕 等表情信息,还需要进一步确定控制器官形状变形的控制点的运动方向,然后 利用计算得到器官控制点的运动参数,驱动所述控制点沿着所述运动方向运 动。具体如下:
将ASM得到的人脸器官模型中的器官控制点和没有表情的标准人脸轮廓 中的器官控制点,分别对应到ASM模型的坐标轴方向上,然后对同一坐标轴 上的数据进行相减,得到的矢量就是器官控制点的运动方向。然后利用计算得 到器官控制点的运动参数,驱动所述控制点沿着所述运动方向运动。
例如,根据步骤S104计算得到的器官控制点的运动参数,和器官控制点 的方向分别为如下数据:器官控制点2.2的运动参数为0.2,方向为(0,1,0); 器官控制点2.3的运动参数为0.3,方向为(0,-1,0);器官控制点2.4的运 动参数为0.25,方向为(0.9798,0.2,0);器官控制点2.5为的运动参数0.25, 方向为(-0.9798,0.2,0)。通过这些器官控制点的运动参数驱动对应的器官 控制点沿着运动方向运动,可以得到如图12所示的微笑效果示意图,其与实 际嘴形更加吻合。
本发明的第二实施例提供了一种实现器官动画的系统,其结构如图13所 示,包括:轮廓确定单元、运动参数确定单元和驱动单元。
其中,所述轮廓确定单元包括:定位子单元和轮廓确定子单元。所述运动 参数确定单元包括:映射子单元和运动参数确定子单元。所述驱动单元包括: 驱动点选取子单元和第一驱动子单元。
所述系统还包括PCA模型主特征分量确定单元。
系统中各个单元之间的信号传递关系如下:
轮廓确定单元,利用ASM技术确定出器官模型轮廓。具体处理时,定位 子单元,利用人脸检测技术对图片或者视频中的器官模型进行精确的定位;轮 廓确定子单元,搜索定位子单元所定位到的器官模型的轮廓候选点,并利用 ASM技术,根据所述轮廓候选点,得到所述器官模型的轮廓。具体实现与方 法实施例中的相关描述雷同,这里不再详细描述。
PCA模型主特征分量确定单元,根据多张不同图片上或者视频中的器官模 型的标记在器官模型轮廓上的特征分量的分布规律,利用ASM技术中的PCA 模型,提取出PCA模型中反映器官轮廓变化情况的主特征分量。具体实现与 方法实施例中的相关描述雷同,这里不再详细描述。
运动参数确定单元,将所述器官模型轮廓映射到PCA模型中的不同状态 对应的主特征分量上,得到相应的投影值;根据所述投影值获得驱动器官模型 的运动参数。具体处理时,映射子单元,将所述器官模型轮廓映射到PCA模 型中的不同状态对应的主特征分量上,得到相应的投影值。具体实现与方法实 施例中的相关描述雷同,这里不再详细描述。运动参数确定子单元,根据所述 映射子单元得到的投影值的变化范围,以及器官模型中器官轮廓的高度,将所 计算出来的投影值,转换为驱动器官模型的运动参数。具体实现与方法实施例 中的相关描述雷同,这里不再详细描述。
驱动单元,利用所述运动参数驱动所述器官模型运动。具体处理情况如下: 驱动点选取子单元,利用开放式图形库OpenGL编程技术,或通过三维造型软 件,在器官模型上选取需要驱动的点,并从中确定出控制器官形状变化的控制 点;计算所述控制点与所述控制点周围的邻域点之间的距离;具体实现与方法 实施例中的相关描述雷同,这里不再详细描述。第一驱动子单元,利用所述运 动参数,控制所述控制点运动,并根据所述控制点与所述邻域点之间的距离, 控制所述邻域点运动。具体实现与方法实施例中的相关描述雷同,这里不再详 细描述。
上述实施例中,所述驱动单元可以不包括第一驱动子单元,而包括运动方 向确定子单元和第二驱动子单元。该驱动单元的处理情况如下:
驱动点选取子单元,在器官模型上选取需要驱动的点,并从中确定出控制 器官形状变化的控制点;计算所述控制点与所述控制点周围的邻域点之间的距 离。
运动方向确定子单元,确定所述控制点的运动方向。具体处理与方法实施 例中的相关描述雷同,这里不再详细描述。
第二驱动子单元,利用驱动器官模型的运动参数,驱动所述控制点沿着所 述运动方向确定子单元所确定的运动方向运动,并根据所述驱动点选取子单元 所计算出的控制点与所述邻域点之间的距离,控制所述邻域点运动。具体处理 与方法实施例中的相关描述雷同,这里不再详细描述。由上述本发明的实施例 提供的具体实施方案可以看出,其利用ASM技术确定出器官轮廓,将所述器 官轮廓映射PCA模型中的不同状态对应的主特征分量上,得到相应的投影值; 然后根据所述投影值获得驱动三维器官的运动参数;利用所述运动参数驱动器 官运动,因此,当本发明实施例能够驱动嘴巴器官运动。
另外,本发明实施例还可以确定所述控制点的运动方向;利用驱动器官模 型的运动参数,驱动所述控制点沿着所述运动方向运动,因此,能够反映嘴巴 的微笑、愤怒、惊讶和害怕等表情,因此用这种方法来驱动嘴巴可以得到和实 际嘴形更加吻合的效果。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发 明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。