一种交互式三维人脸表情动画编辑方法、系统及扩展方法与流程

文档序号:12064820阅读:435来源:国知局
一种交互式三维人脸表情动画编辑方法、系统及扩展方法与流程

本发明属于计算机图形学领域,尤其涉及一种交互式三维人脸表情动画编辑方法、系统及扩展方法。



背景技术:

近年来,三维人脸表情动画已被广泛应用于各个领域,如动漫、游戏和电影中虚拟角色的表情生成;远程网络会议、虚拟现实中的虚拟人物表情动画;医学美容、人脸识别中的表情模拟;辅助教育中的虚拟教师、娱乐节目中的虚拟主持人和虚拟偶像的表情模拟等。

随着三维人脸表情动画的广泛应用,如何给用户提供一个简单便捷的交互式编辑工具,并使其编辑生成的表情动画真实自然成为了学术界和工业界普遍关注的研究热点和难点问题。理想的交互式表情编辑工具必须具备两个要素:1)操作的直观性和便捷性。用户只需简单地控制人脸模型上的一些元素(如点、直线、曲线等)的位置和形状即可实现对表情的编辑,这个交互过程是直观可见的、且新表情的生成结果是实时显示的。2)表情合成的高真实感。要保证用户通过简单的交互编辑后生成的表情动画是真实自然、令人信服的。然而,要实现这样的交互式表情编辑工具是具有挑战性的,原因在于:1)用户编辑的人脸模型往往具有几千甚至几万个顶点,而用户交互控制的模型顶点数和曲线数只有几个最多十几个,利用如此低维的控制元素来控制高维模型的变形会导致欠约束问题,从而使得生成的表情不自然甚至错误。2)由于缺乏经验或专业水平不高,某些用户对人脸模型控制元素的交互编辑可能是不合适的甚至是错误的,这种不合适或错误的输入往往直接导致生成的表情不自然甚至是怪异的,从而无法达到用户预期的编辑效果。

目前关于交互式表情编辑的相关研究取得了较大进展,但仍存在着很多不足。形状融合变形是目前用于表情动画编辑的主流思路,它将人脸模型表示为若干个已知的拓扑一致的人脸网格模型(称为关键模型)的加权组合,通过修改关键模型的形状或调整各关键模型的融合权值可生成新的表情。这里,关键模型可以由动画师手工制作,也可以利用动态三维数据获取技术直接获取不同模样、不同表情的人脸网格样本作为关键模型。在估算融合权重时,早期的方法往往直接利用用户选中的模型控制点作为约束优化求解,这会导致欠约束问题进而难以生成真实自然的表情。后来的很多方法引入了主成分分析来避免欠约束的问题。主成分分析有效降低了关键模型空间的维度,但它运算花销大,且缺乏物理含义和语义信息,从而会导致不自然表情的产生。因此,引入主成分分析的表情编辑方法通常会采用对模型进行区域分割的方式以保证更好的表情编辑效果。近来,越来越多的表情编辑方法引入了区域分割的思想。它们通过将人脸模型分成多个区域,并分区域对已有的关键形状进行插值来产生新的表情。这些方法虽然克服了主成分分析的缺陷,但由于模型上的区域都是事先分割好的,与用户选择的控制元素无关,这种硬性的区域分割在一定程度上破环了人脸各部分之间的自然相关性,各区域变形的简单融合又使得人脸模型不同部位之间的运动相互独立、缺乏联系,因此很多情况下会导致不自然表情的产生。最新的一些方法开始探索对表情序列进行编辑,即,将用户对单帧网格模型的编辑效果在整个表情网格序列中进行传播,以产生连续渐变的表情动画效果。但这些方法都需要大量的离线处理和运算。

综上,如何为用户提供直观、简便的交互编辑方式,以及如何生成既符合用户要求、又真实自然的表情依然是三维人脸表情编辑研究中亟待解决的关键问题和难点问题。该问题的解决将进一步推动表情编辑技术在计算机动画、影视特效、虚拟现实、辅助教育等诸多领域的推广和应用。



技术实现要素:

为了解决现有技术中人脸表情动画编辑方法都需要大量的离线处理和运算的缺点,本发明的第一目的是提供一种交互式三维人脸表情动画编辑方法。该方法计算简单且能够保证各动态区域的变形既符合用户要求、又准确自然。

本发明的一种交互式三维人脸表情动画编辑方法,包括:

步骤1:将用户自由指定且移动至期望位置的人脸模型的二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点;

步骤2:建立由于用户的编辑操作引起的三维控制点变形的形变模型;

步骤3:分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数;

步骤4:依据相关性系数将人脸模型划分成不同的动态区域,每个动态区域包含一个三维控制点;

步骤5:构建三维控制点的贡献图,贡献图的节点与人脸模型的顶点一一对应,且节点内存储相应人脸模型的顶点与三维控制点之间的相关性系数;其中,贡献图反映三维控制点变形对人脸模型的其他顶点运动的影响程度;

步骤6:依据贡献图以及形变模型对动态区域进行变形融合,最终得到人脸模型的整体变形,即人脸模型上的新表情。

本发明根据相关性系数为每个控制点建立一张贡献图。其中,贡献图的数据存储方式为图结构、表格结构、数组结构或其他数据存储结构形式。在进行动态区域变形的融合时,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

进一步的,在所述步骤1中,利用光线跟踪算法将二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点。本发明的该方法利用光线跟踪能够准确得到与二维控制点象素对应的三维点。

进一步的,在所述步骤2中,形变模型为关键模型序列的线性组合,也就是各个关键模型与相应权重系数相乘后的累加和;所述关键模型序列为已知的一系列表情变化网格模型。

本发明对动态区域变形进行建模时,区域内的变形由用户对控制点的操作和已有的关键模型数据共同约束决定。这里的关键模型序列可以是利用三维数据获取技术得到的真人的一系列表情网格模型,也可以是对人脸模型人工编辑得到的一系列表情变化网格模型,这些模型的表情都是真实自然的。

进一步的,关键模型的权重系数由两项约束项构成的目标函数求解得到,其中,第一项约束项用来衡量利用关键模型序列的线性组合表示的三维控制点新位置映射到二维屏幕上后与用户指定的二维控制点象素新位置的接近程度;第二项约束项用以衡量每帧关键模型与用户移动二维控制点象素所期望产生的新表情之间的相似程度,越相似,表明该帧关键模型对三维控制点最终变形的贡献应该越大,则该帧关键模型的权值越大。

本发明提出了估算各关键模型的融合权值的目标函数,该目标函数既考虑对用户输入的控制点约束条件的满足,又考虑各关键模型与用户期望编辑生成的表情之间的相似程度,越相似,其权值越大,从而保证各动态区域的变形既符合用户要求、又准确自然。

进一步的,在所述步骤3中,利用顶点的相关性准则分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数;其中,相关性准则由三项叠加而成,第一项用来衡量顶点与三维控制点之间的空间距离;第二项用来衡量顶点与三维控制点沿着关键模型序列运动时方向的相似性;第三项用来衡量顶点与三维控制点沿着关键模型序列运动时速率的接近性。

本发明提出顶点的相关性准则来计算贡献图,该准则即考虑顶点之间的空间邻近性、又考虑顶点在整个关键模型序列上的运动一致性,因此可真实准确地反映顶点之间的时空关系和相互影响,从而保证合理准确地将各个动态区域的变形传播到整个人脸模型上,得到最终的真实自然的新表情。

进一步的,在所述步骤6中,依据贡献图进行动态区域变形的融合,每个动态区域内的变形对整个人脸模型变形的影响将随着该动态区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加取平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

本发明的第二目的是提供一种交互式三维人脸表情动画编辑系统。

本发明的一种交互式三维人脸表情动画编辑系统,包括:

控制点映射模块,其用于将用户自由指定且移动至期望位置的人脸模型的二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点;

形变模型建立模块,其用于建立由于用户的编辑操作引起的三维控制点变形的形变模型;

相关性系数计算模块,其用于分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数;

动态区域划分模块,其用于依据相关性系数将人脸模型划分成不同的动态区域,每个动态区域包含一个三维控制点;

贡献图建立模块,其用于构建三维控制点的贡献图,贡献图的节点与人脸模型的顶点一一对应,且节点内存储相应人脸模型的顶点与三维控制点之间的相关性系数;其中,贡献图反映三维控制点变形对人脸模型的其他顶点运动的影响程度;

变形融合模块,其用于依据贡献图以及形变模型对动态区域进行变形融合,最终得到人脸模型的整体变形,即人脸模型上的新表情。

本发明根据相关性系数为每个控制点建立一张贡献图。其中,贡献图的数据存储方式为图结构、表格结构、数组结构或其他数据存储结构形式。在进行动态区域变形的融合时,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

进一步的,在所述控制点映射模块中,利用光线跟踪算法将二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点。本发明的该方法利用光线跟踪能够准确得到与二维控制点象素对应的三维点。

进一步的,在形变模型建立模块中,形变模型为关键模型序列的线性组合,也就是各个关键模型与相应权重系数相乘后的累加和;所述关键模型序列为已知的一系列表情变化网格模型。

本发明对动态区域变形进行建模时,区域内的变形由用户对控制点的操作和已有的关键模型数据共同约束决定。这里的关键模型序列可以是利用三维数据获取技术得到的真人的一系列表情网格模型,也可以是对人脸模型人工编辑得到的一系列表情变化网格模型,这些模型的表情都是真实自然的。

进一步的,关键模型的权重系数由两项约束项构成的目标函数求解得到,其中,第一项约束项用来衡量利用关键模型序列的线性组合表示的三维控制点新位置映射到二维屏幕上后与用户指定的二维控制点象素新位置的接近程度;第二项约束项用以衡量每帧关键模型与用户移动二维控制点象素所期望产生的新表情之间的相似程度,越相似,表明该帧关键模型对三维控制点最终变形的贡献应该越大,则该帧关键模型的权值越大。

本发明提出了估算各关键模型的融合权值的目标函数,该目标函数既考虑对用户输入的控制点约束条件的满足,又考虑各关键模型与用户期望编辑生成的表情之间的相似程度,越相似,其权值越大,从而保证各动态区域的变形既符合用户要求、又准确自然。

进一步的,在所述相关性系数计算模块中,利用顶点的相关性准则分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数;其中,相关性准则由三项叠加而成,第一项用来衡量顶点与三维控制点之间的空间距离;第二项用来衡量顶点与三维控制点沿着关键模型序列运动时方向的相似性;第三项用来衡量顶点与三维控制点沿着关键模型序列运动时速率的接近性。

本发明提出顶点的相关性准则来计算贡献图,该准则即考虑顶点之间的空间邻近性、又考虑顶点在整个关键模型序列上的运动一致性,因此可真实准确地反映顶点之间的时空关系和相互影响,从而保证合理准确地将各个动态区域的变形传播到整个人脸模型上,得到最终的真实自然的新表情。

本发明依据贡献图进行动态区域变形的融合,每个动态区域内的变形对整个人脸模型变形的影响将随着该动态区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加取平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

本发明还提供了另一种交互式三维人脸表情动画编辑系统。

本发明的一种交互式三维人脸表情动画编辑系统,包括服务器和客户端;所述服务器,其被配置为:

将用户自由指定且移动至期望位置的人脸模型的二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点;

建立由于用户的编辑操作引起的三维控制点变形的形变模型;

分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数;

依据相关性系数将人脸模型划分成不同的动态区域,每个动态区域包含一个三维控制点;

构建三维控制点的贡献图,贡献图的节点与人脸模型的顶点一一对应,且节点内存储相应人脸模型的顶点与三维控制点之间的相关性系数;其中,贡献图反映三维控制点变形对人脸模型的其他顶点运动的影响程度;

依据贡献图以及形变模型对动态区域进行变形融合,最终得到新表情的人脸模型并输出;

客户端,其被配置为接收用户的编辑输入以及显示输出的人脸模型的新表情。

本发明根据相关性系数为每个控制点建立一张贡献图。其中,贡献图的数据存储方式为图结构、表格结构、数组结构或其他数据存储结构形式。在进行动态区域变形的融合时,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

本发明的第三目的是提供一种交互式三维人脸表情动画编辑的扩展方法。

本发明的该交互式三维人脸表情动画编辑的扩展方法,包括:

将无对应关键模型序列的人脸模型标记为目标模型,将有对应关键模型序列的人脸模型标记为模板模型;

将在目标模型上指定的编辑约束条件映射到模板模型上;

然后,利用上述所述的交互式三维人脸表情动画编辑方法生成人脸模型上的新表情;

将具有新表情的人脸模型作为新的模板模型,最后,利用表情克隆方法将新的模板模型上的表情传递到新的目标模型上,从而实现三维人脸表情动画编辑的扩展。

本发明的有益效果为:

(1)本发明根据用户指定的控制点对模型进行实时的动态区域划分,每个控制点确定一个动态区域,并对每个动态区域的变形分别建模,然后将所有动态区域的变形进行融合得到最终的新表情。其中,对动态区域变形进行建模时,区域内的变形由用户对控制点的操作和已有的关键模型数据共同约束决定。并提出了估算各关键模型的融合权值的目标函数,该目标函数既考虑对用户输入的控制点约束条件的满足,又考虑各关键模型与用户期望编辑生成的表情之间的相似程度,越相似,其权值越大,从而保证各动态区域的变形既符合用户要求、又准确自然。

(2)本发明在进行动态区域融合时,提出为每个控制点定义一个贡献图的概念,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。并提出顶点的相关性准则来计算贡献图,该准则即考虑顶点之间的空间邻近性、又考虑顶点在整个关键模型序列上的运动一致性,因此可真实准确地反映顶点之间的时空关系和相互影响,从而保证合理准确地将各个动态区域的变形传播到整个人脸模型上,得到最终的真实自然的新表情。

(3)本发明采用与表情克隆相结合的思路对方法进行了扩展,扩展后的方法可在无需增大已有关键模型数据库规模的情况下,支持用户对任意模样和拓扑结构的人脸模型进行交互编辑,并生成真实自然的表情。整个方法允许用户对任意形状和拓扑结构的模型进行交互编辑,交互方式直观、简捷、交互结果实时可见。并且方法在生成新表情时,不仅满足了用户输入的编辑约束条件、而且充分利用了关键模型自身已有的自然表情信息和模型间的时空连续性来保证表情生成的真实感,因此本发明方法可编辑生成既符合用户需求、又真实自然的表情动画。

附图说明

图1是本发明的一种交互式三维人脸表情动画编辑方法流程图;

图2是相关性准则计算示意图;

图3是本发明的该方法扩展的基本思路流程图;

图4(a)是该方法扩展后的交互编辑生成表情动画的第一组效果图;

图4(b)是该方法扩展后的交互编辑生成表情动画的第二组效果图;

图4(c)是该方法扩展后的交互编辑生成表情动画的第三组效果图;

图4(d)是该方法扩展后的交互编辑生成表情动画的第四组效果图;

图5是本发明的一种交互式三维人脸表情动画编辑系统结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

图1是本发明的一种交互式三维人脸表情动画编辑方法流程图。如图所示的交互式三维人脸表情动画编辑方法,该方法在服务器内完成,具体包括:

步骤1:将用户自由指定且移动至期望位置的人脸模型的二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点。

具体地,为给用户提供直观便捷的交互方式,本发明允许用户在二维屏幕上任意选择人脸模型上的点作为二维控制点,并通过拖动二维控制点来控制模型的表情变化。用户指定的这些二维控制点及其位置变化信息将作为编辑约束条件用于后续步骤中人脸模型变形的求解。

假设用户在二维屏幕选定L个二维控制点象素{sl|l=1,2,...,L},并指定这些二维控制点象素移动到的新位置为{pl|l=1,2,...,L},本发明利用光线跟踪算法将这些选定的二维象素点映射到人脸模型所在的三维空间,得到与这L个二维象素点对应的模型顶点作为三维控制点。二维象素点和三维空间点之间的映射关系如公式(1)所示

其中,p为二维象素点,q为三维空间点,为相机旋转矩阵的行向量,ti为相机平移向量的元素,f是相机的焦距,sw和sh分别为二维屏幕的宽和高。

利用公式(1)可将二维象素点表示为三维空间点的非线性函数,表达式如下

步骤2:建立由于用户的编辑操作引起的三维控制点变形的形变模型。

在具体实施过程中,用户对控制点的编辑操作会带动模型的变形,对每一个控制点所引起的变形,将其表示为已知关键模型的线性组合,并求出各关键模型的权重系数。这里的关键模型序列可以是利用三维数据获取技术得到的真人的一系列表情网格模型,也可以是对人脸模型人工编辑得到的一系列表情变化网格模型,这些模型的表情都是真实自然的。设关键模型序列共有M帧,每帧具有N个顶点,其中,第m帧记为Tm={vi,m},i=1,...,N,这里{vi,m}为顶点集合。不失一般性,可将关键模型序列的第一帧T1提供给用户作为交互编辑的模型,称为中性模型。设{vl|l=1,...,L}是经光线跟踪得到的与用户指定的二维象素点对应的中性模型上的三维控制点,假设这些控制点经过用户编辑后移动到的新位置为{ql|l=1,...,L}。

则对每个vl,其变形表示为已知关键模型的线性组合形式如下

ql=w1vl,1+w2vl,2+...+wMvl,M (3)

其中,wm为待求的关键模型Tm的权值,m=1,...,M。

估算权值wm,m=1,...,M的目标函数由两项约束项构成。其中,第一项约束项用来衡量利用关键模型的线性组合表示的控制点vl的新位置与用户指定的新位置ql的接近程度,显然,越接近越好。该约束项用以保证对用户编辑约束条件的满足。具体表示形式为

其中,W=[w1w2...wM]T,||·||为欧几里得距离。

第二项约束项用以衡量每帧关键模型与用户移动控制点所期望产生的新表情之间的相似程度,显然,越相似,表明该帧关键模型对控制点最终变形的贡献应该越大,则该帧的权值越大。具体表示形式为

则目标函数表示为

E(W)=θ1E1(W)+θ2E2(W) (4)

其中,θ1和θ2为调和系数。

目标函数(4)中的控制点是在三维空间中定义的,而本发明允许用户在二维屏幕上操作控制点象素,因此结合公式(2),将公式(4)映射成二维空间中的目标函数,设用户将选定的控制点象素移动到的新位置为{pl|l=1,2,...,L},则公式(4)转化为如下目标函数

对每一个三维控制点vl,通过优化目标函数(5)得到一组用于表示vl变形的关键模型的权值,记为Wl,然后由公式(3)即可得到vl的形变模型。由公式(3)和目标函数(5)可见,本发明在对每个控制点的变形进行建模时,既尽可能地满足了用户指定的编辑要求,又充分利用了已知的关键模型序列信息。由于关键模型的表情都是正确自然的,对这些关键模型数据的利用不仅能够有效地保证新表情的真实自然,而且提供了很好的对用户错误输入的容错能力,避免了传统方法中仅考虑用户编辑要求而用户的输入又不恰当时所导致的不自然甚至错误表情的问题。

本发明与传统表情编辑方法相比:在用户的编辑操作不恰当,明显对表情变化的引导是错误的情况下,传统方法仅考虑对用户编辑条件的满足,所以产生了特别怪异的、真实人类无法做出的表情。而本发明除了考虑用户的编辑要求,还会利用已有关键模型序列来约束中性模型的变形,所以最终产生的新表情虽然跟用户的编辑要求有一定误差,但却是真实自然的。可见,本发明方法具有较好的容错能力和更高的真实感。

步骤3:分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数。

在具体实施过程中,根据用户指定的控制点,本发明自动、实时地将中性模型分割成多个动态区域,每个动态区域包含一个三维控制点,不同的动态区域之间允许重合。这种自适应的、动态的区域划分可有效避免传统方法中的过约束或欠约束问题。进行动态区域的变形融合时,本发明抛弃传统方法中将各个区域的变形简单相加平均的方式,而是采用更合理的将区域变形对整个中性模型变形的贡献随区域的扩散而逐渐减弱的思路,即,每个区域内的三维控制点所引起的变形对整个模型变形的带动效果会随着其在模型上的传播而减弱。该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。为衡量这种贡献,本发明为每个三维控制点定义了一个贡献图,该贡献图反映了控制点的变形对整个中性模型最终变形效果的影响程度的大小,贡献值越大,影响程度越强。

本发明利用顶点与三维控制点之间的相关性来计算三维控制点的贡献图,显然,顶点与控制点的相关性越高,其运动受到该控制点变形的影响就越大。与传统方法中衡量两个顶点间的相关性时仅考虑物理距离不同,本发明中三维顶点的相关性准则不仅考虑到中性模型上顶点与三维控制点之间的空间邻近性,还考虑到顶点与三维控制点沿着时间轴在关键模型序列上运动的一致性。相关性准则的具体表示形式如下

其中,

其中,vi,1和vl分别为中性模型T1上的顶点和控制点,为vi,1和vl在第m帧关键模型Tm上的相关性值。

如附图2所示,相关性准则中的第一项用来衡量顶点vi,1与三维控制点vl之间的空间距离,距离越小,说明相关性越高。第二项用来衡量顶点vi,1与三维控制点vl沿着关键模型序列运动时方向的相似性,运动方向越接近,说明相关性越高。第三项用来衡量顶点vi,1与三维控制点vl沿着关键模型序列运动时速率的接近性,运动速率越相近,说明相关性越高。和直观地反映了顶点与控制点在关键模型序列上运动时的时空一致性。和的取值范围均为[0,1]。

利用公式(6)计算得到顶点vi,1与三维控制点vl相对于每一帧关键模型的相关性值后,对所有值取平均,如公式(7)所示,即得到vi,1相对于vl的最终的相关性系数。

与传统方法中衡量两个顶点间的相关性时仅考虑物理距离不同,本发明中顶点的相关性准则不仅考虑到中性模型上顶点与三维控制点之间的空间邻近性,还考虑到顶点与三维控制点沿着时间轴在关键模型序列上运动的一致性。

在另一实施例中,除了利用上述顶点的相关性准则分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数之外,还可以采用其他相关性准则来计算人脸模型上每一个顶点与三维控制点之间的相关性系数,比如:

相关性准则只考虑顶点与三维控制点之间的空间距离、顶点与三维控制点沿着关键模型序列运动时方向的相似性或顶点与三维控制点沿着关键模型序列运动时速率的接近性任一项参数;

或者,相关性准则考虑上述三项参数中任意两项参数的组合。

步骤4:依据相关性系数将人脸模型划分成不同的动态区域,每个动态区域包含一个三维控制点。

具体地,利用相关性公式(7)获得模型上每个顶点与各个三维控制点的相关性系数后,依据这些相关性系数将模型自动划分成L个动态区域,每个区域包含一个控制点。这些区域允许部分重合,因为同一个顶点跟多个控制点具有相关性,受多个控制点变形的影响是合理的。

本发明根据用户指定的控制点数目和位置自动实时地进行动态区域划分,并根据各区域变形对整个模型变形的贡献将它们加权融合生成新表情的方式,可有效克服传统方法中硬性分区带来的表情不自然、尤其是无法生成不对称表情的缺陷。

步骤5:构建三维控制点的贡献图,贡献图的节点与人脸模型的顶点一一对应,且节点内存储相应人脸模型的顶点与三维控制点之间的相关性系数;其中,贡献图反映三维控制点变形对人脸模型的其他顶点运动的影响程度。

在模型的变形过程中,模型上的顶点受其所在区域内三维控制点的驱动而产生变形,但对于同一区域内的不同顶点,其受到三维控制点的影响是不同的。显然,三维控制点与顶点的相关性越高,三维控制点对顶点的影响应该越大,即对顶点变形所起的作用越大。因此,本发明根据公式(7)计算出的三维控制点与各个顶点的相关性系数,为每个三维控制点建立了一张贡献图。贡献图中的贡献值就是相关性系数,反映了三维控制点变形对其他顶点运动的影响程度。

本发明根据相关性系数为每个控制点建立一张贡献图。其中,贡献图的数据存储方式为图结构、表格结构、数组结构或其他数据存储结构形式。在进行动态区域变形的融合时,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

步骤6:依据贡献图以及形变模型对动态区域进行变形融合,最终得到人脸模型的整体变形,即人脸模型上的新表情。

融合各个动态区域的变形时,对于中性模型上的每一个顶点vi,1,i=1,...,N,由于其可能处于多个动态区域中,所以其最终的变形应该受到多个区域控制点的影响,且它与哪个控制点的相关性高,受该控制点引发变形的影响就越大,即,与该控制点相关的各帧关键模型的线性组合权值对它的变形所起的作用就越大。由此,得到顶点vi,1的变形表达式如下

其中,qi.1是顶点vi,1经过变形运动后到达的新位置,该位置用于形成中性模型上最终的新表情。Wl=[wl,1wl,2...wl,M]T是对每一个控制点vl,利用目标函数(5)得到的一组用于表示vl变形的关键模型的权值。Wi,1是用于表示顶点vi,1变形的各关键帧的最终权值,显然该最终权值的确定既考虑了各个控制点自身变形相关的权值,又考虑了各个控制点对顶点vi,1变形的贡献。Bi,l(vi,1,vl)是对顶点vi,1与所有控制点的相关性系数进行归一化后的结果,以保证其取值范围仍为[0,1]。

由公式(5)、(7)和(8)可见,人脸模型上每一个顶点的变形均表示为所有已知关键模型的线性组合,且估算各关键模型的权值时不仅满足了用户输入的编辑约束条件、而且充分利用了关键模型自身已有的自然表情信息和模型间的时空连续性来保证表情生成的真实感,因此本发明方法可编辑生成既符合用户需求、又真实自然的表情动画。另外,方法中根据用户指定的控制点数目和位置自动实时地进行动态区域划分,并根据各区域变形对整个模型变形的贡献将它们加权融合生成新表情的方式,可有效克服传统方法中硬性分区带来的表情不自然、尤其是无法生成不对称表情的缺陷。

本发明与传统的基于主成分分析的表情编辑方法相比:传统方法产生的新表情不自然,甚至有扭曲现象。这是由于传统方法事先将人脸硬性分割成固定的区域(如,眼睛区域、鼻子区域、嘴部区域等),这使得用户选定的控制点位于同一区域时无法分别对其进行控制,且传统方法在各个区域独立地进行主成分分析获取最相似的模型变形,这既割裂了区域之间运动的相关性,又在关键模型都是对称表情的情况下无法融合成不对称的表情,所以最终产生的表情是不自然甚至错误的。本发明产生的新表情自然且符合用户的编辑要求。这是由于本发明是根据用户选定的控制点来实时、自动地对模型进行动态区域分割,每个区域包含一个控制点,这使得对每个控制点可以按照用户的需求分别进行控制,并建立形变模型。另外,本发明对各个区域进行融合时,是根据贡献图计算每个区域对整个模型最终变形效果的影响,因此产生的表情更合理,且在关键模型都是对称表情的情况下也能融合出不对称的表情。可见,本发明相比传统的方法,不仅表情更加真实自然,而且可以生成不对称的表情。

本发明的该方法还可以作出如下扩展:

本发明的该方法将人脸模型的变形表示为已知关键模型的加权组合,这要求用户使用的人脸模型与已知的关键模型必须是拓扑一致的同一个人物的模型,这也是几乎所有基于形状融合思路的表情编辑方法的基本要求。而实际应用中,用户交互编辑的人脸模型是多种多样,千变万化的,必然存在着已知关键模型序列库中没有的人脸模型。传统方法处理这种问题的方式往往是增大人脸数据库,带来的弊端一是导致数据库过于庞大,二是新关键模型序列的获取需要花费技术人员较多的精力和时间,这些都影响了方法的实用性。

为克服传统方法的弊端,进一步提高本发明方法的实用性,本发明提出与表情克隆相结合的思路对方法进行了扩展,扩展后的方法可在无需增大数据库规模的情况下,支持用户对任意模样和拓扑结构的人脸模型进行交互编辑,并生成真实自然的表情。

方法扩展的基本思路是:对那些在已有数据库中无对应关键模型序列的人脸模型(称为目标模型),将用户在目标模型上指定的编辑约束条件映射到一个在数据库中有对应关键模型序列的人脸模型上(称为模板模型);然后利用本发明前述步骤控制模板模型的变形生成新表情;最后利用表情克隆方法将模板模型上的新表情传递到目标模型上,从而得到目标模型的新表情。

方法扩展的具体步骤如下:

(1)建立模板模型和目标模型之间的点对应关系

首先利用启发式原则自动搜索模板模型和目标模型上的特征点并建立特征点之间的对应关系,在此基础上再利用径向基函数建立起模型之间稠密的点对应关系,即,对模板模型上的每一个点vi,在目标网格都有一个与之距离最近的对应点v′i,反之亦然。

(2)用户编辑约束条件的传递

本发明用模型上控制点的位移向量,即,用户选定的控制点的原始位置与用户为控制点指定的新位置之间的位移,来表示用户编辑约束条件。由于模板模型和目标模型表示的人脸的几何结构和比例等可能会相差较大,因此将目标模型上的控制点位移向量映射到模板模型上时需要对其进行方向和模长的调整,以适应模型脸部结构的变化。其中,对位移向量进行旋转以保证其映射到模板模型上后相对于所在的局部网格曲面的方向保持不变,对位移向量依据模板模型上其所在局部曲面的面积进行模长的放缩以保证其适应模板模型的脸部比例。

如附图3所示,假设用户在二维屏幕上选定目标模型上的控制点象素为sl,为其指定的新位置为pl,利用光线跟踪得到sl对应的目标模型上的三维控制点v′l,设其在产生新表情的过程中移动到的新位置为q′l,显然,q′l在当前视角下应该恰好投影到二维屏幕上用户指定的目标位置pl。利用步骤(1)中建立的模型之间的点对应关系,很容易得到v′l在模板模型上的对应点vl,该点即为模板模型的控制点,将v′l的位移向量传递给vl,并假设vl移动到的待求的新位置为ql

(3)新表情的生成和传递

对模板模型上的控制点vl,利用步骤(2)中传递到模板模型上的用户编辑条件,以及与模板模型对应的已知关键模型序列求解出它的变形。假设已利用公式(4)估算出各个关键模型的权值,并利用公式(3)线性组合各个关键模型得到了控制点vl的新位置ql,则接下来要将控制点vl的变形传递给目标模型上的对应控制点v′l。传递时,本发明用控制点的位移向量来表示其变形,且在传递位移向量时依然需要调整其方向和模长以适应模型之间在结构和比例上的差异。具体地,如附图3所示,假设控制点vl的位移向量为传递过程中经过旋转Rl和平移Sl后,即得到目标模型上对应控制点v′l的位移向量,而控制点v′l的位移向量又可以表示成基于此,将公式(5)修改成如下目标函数

其中,Rl是3×3的旋转矩阵,用于调整位移向量的方向。Sl是3×3的放缩矩阵,用于调整位移向量的模长。

利用目标函数(9),可对模板模型上的每一个控制点vl,计算出表示其变形的各关键模型的线性组合权值。然后利用公式(6)、(7)和(8)可得到模板模型上每一个顶点的新位置进而生成模板模型上的新表情。最后,将模板模型上每个顶点的位移向量传递给目标模型上的对应点(传递时仍需调整方向和模长),得到各对应点的位移,据此移动各对应点即可得到目标模型上的新表情。

附图4(a)-(d)展示了利用扩展后的方法对在数据库中没有对应关键模型序列的人脸模型进行交互编辑生成表情动画的效果图。图4(a)-(d)共给出四组示例。每一组中,左上角是目标模型以及用户给定的编辑条件,该目标模型在数据库中没有对应的关键模型序列;左下角是模板模型以及从目标模型映射到它上面的用户编辑条件,该模板模型在数据库中有对应的关键模型序列;右下角是利用本发明方法在模板模型上生成的新表情;右上角是利用表情传递在目标模型上生成的新表情。可见,新表情既符合用户的编辑要求,又真实自然。

本发明与表情克隆相结合的思路对方法进行了扩展,扩展后的方法可在无需增大已有关键模型数据库规模的情况下,支持用户对任意模样和拓扑结构的人脸模型进行交互编辑,并生成真实自然的表情。

整个方法允许用户对任意形状和拓扑结构的模型进行交互编辑,交互方式直观、简捷、交互结果实时可见。并且方法在生成新表情时,不仅满足了用户输入的编辑约束条件、而且充分利用了关键模型自身已有的自然表情信息和模型间的时空连续性来保证表情生成的真实感,因此本发明方法可编辑生成既符合用户需求、又真实自然的表情动画。

图5是本发明的一种交互式三维人脸表情动画编辑系统结构示意图。如图所示的本发明的一种交互式三维人脸表情动画编辑系统,包括:

(1)控制点映射模块,其用于将用户自由指定且移动至期望位置的人脸模型的二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点。

其中,在所述控制点映射模块中,利用光线跟踪算法将二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点。光线跟踪能够得到与二维控制点象素准确对应的三维点。

(2)形变模型建立模块,其用于建立由于用户的编辑操作引起的三维控制点变形的形变模型。

在形变模型建立模块中,形变模型为关键模型序列的线性组合,也就是各个关键模型与相应权重系数相乘后的累加和;所述关键模型序列为已知的一系列表情变化网格模型。本发明对动态区域变形进行建模时,区域内的变形由用户对控制点的操作和已有的关键模型数据共同约束决定。这里的关键模型序列可以是利用三维数据获取技术得到的真人的一系列表情网格模型,也可以是对人脸模型人工编辑得到的一系列表情变化网格模型,这些模型的表情都是真实自然的。

关键模型的权重系数由两项约束项构成的目标函数求解得到,其中,第一项约束项用来衡量利用关键模型序列的线性组合表示的三维控制点新位置映射到二维屏幕上后与用户指定的二维控制点象素新位置的接近程度;第二项约束项用以衡量每帧关键模型与用户移动二维控制点象素所期望产生的新表情之间的相似程度,越相似,表明该帧关键模型对三维控制点最终变形的贡献应该越大,则该帧的权值越大。

本发明提出了估算各关键模型的融合权值的目标函数,该目标函数既考虑对用户输入的控制点约束条件的满足,又考虑各关键模型与用户期望编辑生成的表情之间的相似程度,越相似,其权值越大,从而保证各动态区域的变形既符合用户要求、又准确自然。

(3)相关性系数计算模块,其用于分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数。

在所述相关性系数计算模块中,利用顶点的相关性准则分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数;其中,相关性准则由三项叠加而成,第一项用来衡量顶点与三维控制点之间的空间距离;第二项用来衡量顶点与三维控制点沿着关键模型序列运动时方向的相似性;第三项用来衡量顶点与三维控制点沿着关键模型序列运动时速率的接近性。

本发明提出顶点的相关性准则来计算贡献图,该准则即考虑顶点之间的空间邻近性、又考虑顶点在整个关键模型序列上的运动一致性,因此可真实准确地反映顶点之间的时空关系和相互影响,从而保证合理准确地将各个动态区域的变形传播到整个人脸模型上,得到最终的真实自然的新表情。

(4)动态区域划分模块,其用于依据相关性系数将人脸模型划分成不同的动态区域,每个动态区域包含一个三维控制点。

(5)贡献图建立模块,其用于构建三维控制点的贡献图,贡献图的节点与人脸模型的顶点一一对应,且节点内存储相应人脸模型的顶点与三维控制点之间的相关性系数;其中,贡献图反映三维控制点变形对人脸模型的其他顶点运动的影响程度。

(6)变形融合模块,其用于依据贡献图以及形变模型对动态区域进行变形融合,最终得到新表情的人脸模型并输出。

本发明根据相关性系数为每个控制点建立一张贡献图。其中,贡献图的数据存储方式为图结构、表格结构、数组结构或其他数据存储结构形式。在进行动态区域变形的融合时,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

本发明的另一种交互式三维人脸表情动画编辑系统,包括服务器和客户端。

其中,客户端为与服务器相互通信的客户端,包括移动终端,比如手机或Ipad。

所述服务器,其被配置为:

将用户自由指定且移动至期望位置的人脸模型的二维控制点象素映射到三维空间,得到人脸模型上对应的三维控制点;

建立由于用户的编辑操作引起的三维控制点变形的形变模型;

分别计算人脸模型上每一个顶点与三维控制点之间的相关性系数;

依据相关性系数将人脸模型划分成不同的动态区域,每个动态区域包含一个三维控制点;

构建三维控制点的贡献图,贡献图的节点与人脸模型的顶点一一对应,且节点内存储相应人脸模型的顶点与三维控制点之间的相关性系数;其中,贡献图反映三维控制点变形对人脸模型的其他顶点运动的影响程度;

依据贡献图以及形变模型对动态区域进行变形融合,最终得到新表情的人脸模型并输出;

客户端,其被配置为接收用户的编辑输入以及显示输出的人脸模型的新表情。

本发明根据相关性系数为每个控制点建立一张贡献图。其中,贡献图的数据存储方式为图结构、表格结构、数组结构或其他数据存储结构形式。在进行动态区域变形的融合时,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。与传统方法中将各个区域的变形简单相加平均的方式,该思路更符合人类脸部运动的规律,可生成更加真实自然的表情。

本发明根据用户指定的控制点对模型进行实时的动态区域划分,每个控制点确定一个动态区域,并对每个动态区域的变形分别建模,然后将所有动态区域的变形进行融合得到最终的新表情。其中,对动态区域变形进行建模时,区域内的变形由用户对控制点的操作和已有的关键模型数据共同约束决定。并提出了估算各关键模型的融合权值的目标函数,该目标函数既考虑对用户输入的控制点约束条件的满足,又考虑各关键模型与用户期望编辑生成的表情之间的相似程度,越相似,其权值越大,从而保证各动态区域的变形既符合用户要求、又准确自然。

本发明在进行动态区域融合时,提出为每个控制点定义一个贡献图的概念,依据贡献图每个区域内的变形对整个人脸模型变形的贡献将随着该区域的扩散而逐渐减弱。并提出顶点的相关性准则来计算贡献图,该准则即考虑顶点之间的空间邻近性、又考虑顶点在整个关键模型序列上的运动一致性,因此可真实准确地反映顶点之间的时空关系和相互影响,从而保证合理准确地将各个动态区域的变形传播到整个人脸模型上,得到最终的真实自然的新表情。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1