一种语音动画生成方法及系统的制作方法

文档序号:6582441阅读:199来源:国知局
专利名称:一种语音动画生成方法及系统的制作方法
技术领域
本发明涉及图像处理技术领域,特别涉及一种语音动画生成方法及系统。
背景技术
自然语言和肢体语言是人类相互交流的主要方式。在肢体语言中,人脸是人类相 互交流的重要渠道,因此语音和人脸是人类相互交流的两种最重要的渠道。语音动画技术 就是将人脸动画技术与语音处理技术相结合,用计算机生成语音与口型同步播出的动画技 术,也称为“说话的头像”或“对口型”。语音动画技术包括基于单幅图像的语音动画技术。基于单幅图像的语音动画技术 的工作流程为输入一张人脸图像,在所述人脸图像上自动或手工标记特征点,保存成面部 特征点的位置数据文件;输入语音文件,对所述语音文件进行语音识别,生成音素_时间戳 文件并保存;根据所述语音文件的音素_时间戳文件对所述人脸图像采用图像变形技术实 现人脸图像的变形,达到变形图像与语音文件的同步,使得一边播放语音,一边驱动图像上 的人脸进行动画。基于单幅图像的语音动画技术还可应用于动物脸图像或卡通形象的脸图 像。在基于单幅图像的语音动画技术中,图像变形技术是其核心技术。现有的图像变 形技术一般采用基于网格扭曲的图像变形算法。基于网格扭曲的图像变形算法通过对面部图像进行网格划分,形成一张网状的面 罩,再对面部图像进行图像变形,产生人脸动画。基于网格扭曲的图像变形算法主要用于两 张面部图像之间的形状变形,两张面部图像分别为源图像Is和目标图像Ιτ。其中,源图像 Is与网格Ms相对应,目标图像It与网格Mt相对应;如图1所述,网格Ms指定了控制点的坐 标,网格Mt指定了网格Ms中控制点在目标图像It中的对应位置。网格Ms和网格Mt —起用 于定义空间转变,所述空间转变将源图像Is中所有控制点映射到目标图像It上去,实现源 图像Is到目标图像It的图像变形。基于网格扭曲的图像变形算法中,人脸图像的动画效果是通过一帧一帧的中间帧 图像连贯在一起表现出来的。所述中间帧图像If可以通过执行以下步骤得到(1)在网格Mt和网格Ms之间线性插值网格M ;(2)利用网格Ms和网格M将源图像Is变形到I1 ;(3)利用网格Mt和网格M将目标图像It变形到I2 ;(4)在I1和I2之间线性插值图像Ipo如果13和If是同一幅图像,网格Mt和网格Ms不同,就可以实现源图像Is的动画。 其中,基于网格扭曲的图像变形算法中的线性插值方法为三次样条插值法,所述三次样条 插值法计算量大,增加了图像变形算法的运算复杂性,使得图像变形时间增加,使得语音动 画技术中语音与变形图像之间同步性降低。从上面可以看出,现有语音动画技术中的基于网格扭曲的图像变形算法的运算复 杂性高,计算量大,增加了图像变形的时间,使得语音动画技术中语音控制动画生成的实时性降低。

发明内容
本发明实施例的目的是提供一种语音动画生成方法及系统,以降低语音技术中图 像变形算法的运算复杂性,使得语音动画技术中语音控制动画生成的实时性增强。为解决上述技术问题,本发明实施例提供的一种语音动画生成方法及系统是这样 实现的一种语音动画生成方法,包括在面部图像上生成面部图像特征点;根据所述面部图像特征点独立构造变形前面部图像的横向样条和纵向样条;从音频数据中获取语音动画参数;根据所述语音动画参数获取变形后面部图像的横向样条和纵向样条;根据所述变形前的横向样条和所述变形后的横向样条通过扫描线计算所述变形 前的横向样条间像素点移动的第一位移以及根据所述变形前的纵向样条和所述变形后的 纵向样条通过扫描线计算所述变形前的纵向样条间像素点移动的第二位移,根据所述第一 位移和所述第二位移生成变形后的面部图像。一种语音动画生成系统,包括预处理单元,用于在面部图像上生成面部图像特征点;样条构造单元,用于根据所述面部图像特征点独立构造变形前面部图像的横向样 条和纵向样条;语音动画参数获取单元,用于从音频数据中获取语音动画参数;样条处理单元,用于根据所述语音动画参数获取变形后面部图像的横向样条和纵 向样条;图像处理单元,用于根据所述变形前的横向样条和所述变形后的横向样条通过扫 描线计算所述变形前的横向样条间像素点移动的第一位移以及根据所述变形前的纵向样 条和所述变形后的纵向样条通过扫描线计算所述变形前的纵向样条间像素点移动的第二 位移,根据所述第一位移和所述第二位移生成变形后的面部图像。由以上本发明实施例提供的技术方案可见,本发明实施例采用基于扫描线的图像 变形算法,将传统的样条插值方法简化为分段线性插值方法,使得语音动画技术中的图像 变形算法的运算复杂性降低,计算量减小,图像变形时间减小,使得本发明实施例在普通台 式机上就可满足语音动画技术中语音控制动画生成实时性的要求,使得语音动画技术中语 音控制动画生成的实时性增强。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述 中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅表明本发明的一 些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些 附图获得其他实施例的附图。图1是现有技术提供的基于网格扭曲的图像变形算法的网格扭曲示意图2是本发明实施例提供的语音动画生成方法流程图;图3是本发明实施例提供的人脸图像特征点位置分布示意图;图4为本发明实施例提供的横向样条计算示意图;图5是本发明实施例提供的嘴部纵向样条示意图;图6是本发明实施例提供的眼眉部纵向样条示意图;图7是本发明实施例提供的脸部纵向样条示意图;图8是本发明实施例提供的脸部横向样条示意图;图9是本发明实施例提供的人脸动画参数示意图;图10是本发明实施例提供的面部图像特征点位移计算流程图;图11是本发明实施例提供的眨眼随机控制流程图;图12是本发明实施例提供的横向样条变形示意图;图13是本发明实施例提供的纵向样条变形示意图;图14是本发明实施例提供的头部上下摇动随机控制流程图;图15是本发明实施例提供的口腔涂黑操作流程图;图16是本发明实施例提供的语音动画生成系统框图;图17是本发明实施例提供的样条构造单元框图;图18是本发明实施例提供的语音动画参数获取单元框图;图19是本发明实施例提供的样条处理单元框图;图20是本发明实施例提供的图像处理单元框图。
具体实施例方式本发明实施例提供一种语音动画生成方法及系统。为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的 附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。图2为本发明实施例提供的语音动画生成方法流程图,如图2所示,包括五个步 骤,分别为S201 在面部图像上生成面部图像特征点;输入面部图像后,将面部图像根据面部图像特征点提取算法进行相应处理,生成 面部图像特征点,具体为输入面部图像后,根据缺省特征点位置在所述面部图像上定位所 述嘴部、眼眉部和脸部特征点的位置,且将所述特征点的位置保存成输入图像的特征点位 置文件。所述面部图像特征点包括嘴部特征点、眼眉部特征点和脸部特征点。所述面部图像特征点的选取应该具有代表性,能代表一个人的面部特征且唯一标 识该个体。通常选取眼角点、鼻翼点、嘴角点等标识眼、耳、口、鼻及脸部轮廓的特征点,本发 明实施例中还选取了眼眉点来标识眼眉的特征点。其中,所述面部图像包括人脸图像、动物脸图像或卡通形象脸图像;所述定位所述 嘴部、眼眉部和脸部特征点的位置采用自动定位的方法,此外还可以在自动定位的基础上采用手工调整特征点的方法,在采用手工调整特征点时可以采用单个特征点调整、图像放 大或操作后退等操作手法。图3为本发明实施例提供的人脸图像特征点位置分布示意图,如图3所示, 4. 1-4. 6标注的是人脸图像的眉部特征点,3. 1-3. 16标注的是人脸图像的眼部特征点, 2. 1-2. 4和8. 1-8. 4标注的是人脸图像嘴部的特征点,9. 4-9. 6标注的是人脸图像鼻部特征 点,11. 1-11. 5和10. 7-10. 10和2. 10-2. 12标注的是人脸图像脸部轮廓的特征点。S202:根据所述面部图像特征点独立构造变形前面部图像的横向样条和纵向样 条;根据S201中所述面部图像特征点独立构造变形前面部图像的横向样条和纵向样 条。具体包括在任意两个面部图像特征点之间通过线性插值法生成样点,连接面部图像特 征点和相应样点独立构造变形前面部图像的横向样条和纵向样条,其中,所述线性插值法 的计算量小。图4为本发明实施例提供的横向样条计算示意图,其中,图4中仅以一条横向样 条为例,如图4所示,实线1表示某条横向样条,所述横向样条由面部图像特征点A、B、C和 D顺序用线段连接构成,所述横向样条上任意相邻的两个图像特征点之间的点称为样点,所 述样点的位置可以通过线性插值法计算。所述横向样条的计算过程就是计算所述横向样条上每个χ对应的y值,假设面部 图像特征点A和B的坐标分别为(Xa, Ya)和(Xb,Yb),那么,面部图像特征点A和B之间的 样点的计算公式为y = Ya + (x-Xa)* Yb Ya(1) 少 V ‘ Xb-Xa面部图像特征点B和C之间以及面部图像特征点C和D之间的样点的计算公式与 式⑴类似,只是相应的替换A点和B点的坐标值。所述横向样条包括脸部横向样条,所述脸部横向样条用于面部图像脸部的纵向变 形;所述纵向样条包括嘴部纵向样条、眼眉部纵向样条和脸部纵向样条,所述嘴部纵向样 条、眼眉部纵向样条分别用于面部图像嘴部、眼眉部的横向变形,所述脸部纵向样条用于实 现头部的摇动效果。图5-图8分别为本发明实施例提供的嘴部、眼眉部和脸部纵向样条以及脸部横向 样条示意图。其中,在图5-图8中,“ ”表示面部图像特征点,“·”表示样点。所述嘴部、 眼眉部和脸部纵向样条以及脸部横向样条都是由面部图像特征点和样点构成的。所述面部图像的横向样条和纵向样条采用独立构造的方法,只需要根据面部图像 特征点就可以独立构造横向样条和纵向样条,并且独立构造的横向样条和纵向样条可以不 需要共享某些面部图像特征点而形成样条网格,降低了样条构造的难度,并且独立构造的 横向样条和纵向样条可以独立用于下面的面部图像变形中,独立地实现横向样条的变形和 纵向样条的变形,以便最终实现整个面部图像的整体变形。S203 从音频数据中获取语音动画参数;处理语音文件的音频数据,从所述语音文件的音频数据中获取音素和音素_时间 戳流。人说话时的声音由若干单个的读音组成,即使是一个很短的字、词也是由一定的读音组成,英语中把组成一个读音的最小单位称为音素。所述音素_时间戳流反映的是所述音素的持续时间。将所述音素和音素-时间戳流根据MPEG-4标准分别转换成可视音素和可视音 素_时间戳流。其中,在MPEG-4标准中,将可明显区分的音素分组,即可将某些对应人脸 口型相同的音素划分为一组,每一组音素为一种可视音素且每一组音素都对应一种可视音 素的基本口型。可视音素-时间戳流表示可视音素在语音动画中持续的时间,所述可视音 素_时间戳流中可以包含表情时间戳标签,当在可视音素_时间戳中遇到表情时间戳标签 时就可以在此时读入表情参数。根据所述可视音素查找预先设置的可视音素_人脸动画参数关系表获取语音动 画参数,其中语音动画参数属于人脸动画参数(FAP,Facial AnimationParameter),语音动 画参数强调的是在可视音素存在下影响人脸特征点移动的人脸动画参数。每个可视音素对应一组人脸动画参数的最大值,可视音素以及人脸动画参数的设 计可以参考MPEG-4标准。图9为本发明实施例提供的人脸动画参数的示意图,如图9所示,图中圆圈表示的 是面部图像特征点,数字表示的是人脸动画参数编号,箭头表示该人脸动画参数所影响的 面部图像特征点的运动方向。由图9可以看出,本发明实施例使用了编号为3-60的人脸动 画参数,但是本发明实施例并不局限于此,还可以使用其他编号的人脸动画参数。所述可视音素-人脸动画参数关系表定义了可视音素与人脸动画参数之间的关 系,如表1所示,其可以进行预先设置,但是并不局限于表1。表1中共有68个人脸动画参 数,但是本发明实施例只使用了编号为3-60的人脸动画参数,其中表1只是列举了可视音
素-人脸动画参数对照表中的一组作 荀要说明。
表1
# aeax ah aaay0
0 011 111001100 0000 000 0 0
0 000 000000000 0000 000 0 1
0 100 001111001 1000 000 0 0
0 0
-18060-350303000-407-10860-4703030 0 0
其中,aeax ahaaay表示—-种可视 樣,艮aeaxahaa ay的发音都对应
种人脸的基本口型;紧跟ae ax ah aa ay后的“0”表示可视音素的标号为0 ;
表1中的68个人脸动画参数中的“0”或“1”为人脸动画参数的掩码,“0”或“1” 掩码代表了某个编号的人脸动画参数是否在这个可视音素中起作用,其中,“0”代表不起作 用,“1”代表起作用,例如在68个人脸动画参数中编号为3的人脸动画参数对应的掩码为 “1”,就表示编号为3的人脸动画参数在这个可视音素中起作用;因为语音动画参数强调的 是在可视音素存在下影响人脸特征点移动的人脸动画参数,所以上述人脸动画参数的掩码 为“1”的人脸动画参数就为ae ax ah aa ay的语音动画参数。人脸动画参数掩码后的数 字表示对应掩码为1的人脸动画参数(即语音动画参数)的系数,值的大小代表位移幅度, 值的正负代表位移方向,其中向上或向左为正,向下或向右为负;所述系数表示对应掩码为 1的人脸动画参数在某个位移方向上的变化幅度。
其余的可视音素与人脸动画参数的对应关系与表1类似,在此不做过多赘述。表 情与人脸动画参数的对应关系与可视音素与人脸的对应关系类似,在此也不做过多赘述, 其中表情与人脸动画参数的设计也参考MPEG-4标准。S204 根据所述语音动画参数获取变形后面部图像的横向样条和纵向样条;根据所述语音动画参数计算所述面部图像的横向样条和纵向样条上特征点的位 移;根据所述面部图像特征点的位移获取变形后的面部图像特征点;根据所述变形后的面部图像特征点获取变形后面部图像的横向样条和纵向样条。所述根据所述语音动画参数计算所述面部图像的横向样条和纵向样条上特征点 的位移的计算流程可以参照图10所示,其中图10为本发明实施例提供的面部图像特征点 位移计算流程图,包括S301 恢复中性面部图像;所述中性面部图像为无表情和发音口型的面部图像或者为原始输入状态下的面 部图像。S302 载入当前时刻可视音素的时间参数和表情参数;所述可视音素的时间参数可以同步语音和动画的播放,也可以确定特征点的位移 随时间变化的幅度,因为每个可视音素的动画过程是持续一段时间的变化过程。根据所述 可视音素_时间戳流中的表情标签读入表情的表情参数,所述表情的表情参数可以反映人 脸的表情运动。S303 根据所述语音动画参数计算可视音素帧的FAP ;所述语音动画参数为在可视音素存在下影响人脸特征点移动的人脸动画参数。—个可视音素有一组预定义的最大人脸动画参数值,一个可视音素一般会持续数 帧,连续的数帧显示出可视音素口型“闭合_>张开_>闭合”的连续过程,根据所述语音动 画参数计算可视音素帧的FAP。S304 根据所述表情参数计算表情帧的FAP ;同可视音素类似,一个表情也具有一组预定义的最大人脸动画参数值,一个表情 一般也会持续数帧,连续的数帧可以显示表情运动的一个连续过程,根据所述表情参数计 算表情帧的FAP。S305 融合表情帧和可视音素帧的FAP ;所述融合表情帧和可视音素帧的FAP就是将可视音素帧涉及的人脸动画参数和 表情帧涉及的人脸动画参数合并到一起,在动画中的表现就是既有口型的运动也同时有表 情的运动。具体为Sl 将可视音素帧对应的人脸动画参数的掩码和表情帧对应的人脸动画参数的掩 码进行“逻辑或”运算;S2 将可视音素帧对应的人脸动画参数值和表情帧对应的人脸动画参数值进行 “算数加”运算;经过Sl和S2运算后得到的特征点的运动将是可视音素和表情的运动叠加。S306 根据所述融合后的FAP和所述可视音素的时间参数计算每个特征点的位移。
在计算每个特征点的位移时还应考虑是否随机晃动头部,头部的晃动包括上下晃 动和左右晃动,所述头部的晃动对应脸部纵向样条的变形。其中,在S304中,还可以在计算表情帧FAP的基础上计算眨眼的FAP。因为眨眼运 动将涉及到眼睛运动的四个人脸动画参数(左右眼的上下眼皮的竖向运动),这四个人脸 动画参数在表情运动中也涉及到,所以将眨眼也定义为一种单独的表情,可以在表情帧的 FAP的基础上计算眨眼的FAP。当眨眼运动发生时,将会覆盖掉当前表情帧中眼睛部分的人 脸动画参数(左右眼的上下眼皮的竖向运动)。因为眨眼和其他的表情运动是随机发生的,所以对眨眼和其他的表情运动可以进 行随机控制,图11为本发明实施例提供的眨眼随机控制流程图,如图11所示,包括S401 开始,进入 S402 ;S402 判断当前时刻是否在眨眼周期内,如果是,进入S403 ;如果否,进入S406 ;S403 判断当前帧图像是否要求结束眨眼,如果是,进入S404 ;如果否,进入 S405 ;S404:取消眨眼标志,进入S408;S405 计算当前眨眼的FAP,进入S408 ;S406 计算随机数,判断是否允许当前帧图像眨眼,如果是,进入S407 ;如果否,进 入 S408 ;S407 设置眨眼标志,开始眨眼周期,进入S402 ;S408:结束。其他表情的随机控制流程与眨眼的随机控制流程类似,在此不做过多赘述。S205:通过扫描线计算所述变形前的横向样条间像素点移动的第一位移以及所述 变形前的纵向样条间像素点移动的第二位移,根据所述第一位移和所述第二位移生成变形 后的面部图像。所述横向样条包括脸部横向样条,所述纵向样条包括嘴部纵向样条、眼眉部纵向 样条和脸部纵向样条,其中所述脸部纵向样条用于实现头部的摇动效果。图12为本发明实施例提供的横向样条变形示意图,其中,图12中仅以两条相邻的 横向样条为例,实线ι表示变形前的横向样条1,实线2表示变形前的横向样条2,虚线1表 示变形后的横向样条1,虚线2表示变形后的横向样条2,竖线表示竖直扫描线,所述竖直扫 描线与所述变形前的横向样条1、所述变形前的横向样条2、所述变形后的横向样条1和所 述变形后的横向样条2的交点分别为A、B、A'和B',C点为变形前的横向样条1和变形前 的横向样条2之间的像素点,C'为C点变形后的对应点。根据所述变形前的横向样条和所述变形后的横向样条,通过扫描线计算所述变形 前的横向样条ι和所述变形前的横向样条2间像素点C移动的第一位移包括竖直扫描线逐列对变形前和变形后的横向样条进行扫描,某竖直扫描线与相邻的 两条变形前的横向样条相交,交点为A和B,且所述某竖直扫描线与相邻的两条变形后的横 向样条也相交,交点为A'和B';获取变形前第一横向样条、第二横向样条与所述某竖直扫描线的交点A和B的纵 坐标分别为si和s2 ;获取变形后第一横向样条、第二横向样条与所述竖直扫描线的交点A'和B'的纵坐标分别为dl和d2 ;对所述变形后第一横向样条和第二横向样条之间的像素点C'进行纵向的分段线 性插值,通过分段线性插值计算得到像素点C'的纵坐标为y + (2)
^2-Λ 其中,y为所述变形前第一横向样条和第二横向样条之间的像素点C的纵坐标,点 A、B、A'、B'、(和('在同一条竖直扫描线上;计算所述变形前的横向样条1和所述变形前的横向样条2间像素点C移动的第一 位移为Ay = y' -y(3)图13为本发明实施例提供的纵向样条变形示意图,其中,图13仅以两条相邻的纵 向样条为例,实线3表示变形前的纵向样条1,实线4表示变形前的纵向样条2,虚线3表示 变形后的纵向样条1,虚线4表示变形后的纵向样条2,横线表示水平扫描线,所述水平扫描 线与所述变形前的纵向样条1、所述变形前的纵向样条2、所述变形后的纵向样条1和所述 变形后的纵向样条2的交点分别为D、E、D'和E',F点为变形前的横向样条1和变形前的 纵向样条2之间的像素点,F'为F点变形后的对应点。根据所述变形前的纵向样条和所述变形后的纵向样条,所述通过扫描线计算所述 变形前的纵向样条1和所述变形前的纵向样条2间像素点F移动的第二位移包括水平扫描线逐行对变形前和变形后的纵向样条进行扫描,某水平扫描线与相邻的 两条变形前的纵向样条相交,交点为D和E,且所述某水平扫描线与相邻的两条变形后的纵 向样条也相交,交点为D'和E';获取变形前第一纵向样条、第二纵向样条与所述某水平扫描线的交点D和E的横 坐标分别为s3和s4 ;获取变形后第一纵向样条、第二纵向样条与所述某竖直扫描线的交点D'和E' 的横坐标分别为d3和d4 ;对所述变形后第一纵向样条和第二纵向样条之间的像素点F'进行横向的分段线 性插值,通过分段线性插值计算得到像素点F'的横坐标为X, 二 <^3 + (Χ-5·3)*(4)其中,χ为所述变形前第一纵向样条和第二纵向样条之间的像素点F的横坐标,点 D、E、D'、E' ,F^PF'在同一条水平扫描线上;计算所述变形前的纵向样条1和所述变形前的纵向样条2间像素点F移动的第二 位移为Δ χ = χ ‘ -χ(5)根据所述第一位移Ay和所述第二位移Δ χ生成变形后的面部图像。所述脸部纵向样条用于实现头部的摇动效果,所述头部的摇动包括头部的上下摇 动和左右摇动,头部的摇动是随机进行的且头部的上下摇动和左右摇动不能同时进行。其 中头部的上下摇动时将所有控制点的纵坐标都加上一个相同的值,运动的效果是头部整体 的上下移动;头部的左右移动时,脸部纵向样条中的三根样条运动幅度不相同,中间的纵向样条移动的幅度要比两边的纵向样条的运动幅度摇大很多,运动时的效果为头部整体的转动。图14为本发明实施例提供的头部上下摇动随机控制流程图,如图14所示,包括S501 开始,进入 S502。S502 判断当前时刻是否在摇头周期,如果是,进入S503 ;如果否,进入508。S503 判断头部是否正在上下摇动,如果是,进入S504 ;如果否,进入S514。S504 判断头部是否结束上下摇动,如果是,进入S505 ;如果否,进入S507。S505 取消头部摇动标志,进入S506。S506 取消头部上下摇动标志,进入S514。S507 计算当前帧图像控制点的位移,进入S514。S508 计算随机数,判断当前帧图像是否允许做头部摇动,如果是,进入S509 ;如 果否,进入S512。S509 设置头部摇动标志,进入S510。S510 设置头部上下摇动标志,进入S511。S511 开始摇动周期计数,计入S514。S512 取消头部摇动标志,进入S513。S513 取消头部上下摇动标志,进入S514。S514:结束。头部左右摇动的随机控制流程与所述头部上下摇动的随机控制流程类似,在此不 做过多赘述。为了优化人脸图像变形时口部张开时的效果,在面部图像的变形过程中还可以包 括口腔部分图像填充处理。所述口腔部分图像填充处理包括口腔涂黑处理,所述口腔涂黑就是对内嘴唇进行 着色。图15为本发明实施例提供的口腔涂黑操作流程图,如图15所示,包括S601 开始,进入 S602。S602 确定内嘴唇的最小矩形包络,进入S603。S603 将内嘴角控制点旋转到正方向,进入S604。S604 根据拉格朗日插值得到内嘴唇的上下弧线,进入S605。S605 遍历矩形包络内的每一点A,判断是否遍历完毕,如果是,进入S609 ;如果 否,进入S606。S606 判断点A的纵坐标是否在内嘴唇的上下弧线之间,如果是,进入S607 ;如果 否,进入S605。S607 根据点A到内嘴唇上下弧线的距离确定点A的涂黑因子,进入S608。根据点A到内嘴唇上下弧线的距离获得一个W,l]的分数,使得越靠近边缘,所述 分数越接近1 ;越靠近中间,所述分数越接近0,其中所述分数为涂黑因子,这样便可实现渐 近式涂黑。S608 涂黑因子乘以点A对应的灰度值,得到点A对应的新灰度值,进入S605。S609:结束。本发明实施例提供的语音动画生成方法采用运算复杂性低的基于扫描线的图像变形算法,在普通的台式机上就可满足语音动画技术中语音与变形图像之间实时性的要 求。传统的图像变形算法采用各种样条插值法(如三次样条插值法),计算量较大,会产生 差指点“越界”的现象,即插值点的值不位于控制点的值之间;本发明实施例的基于扫描线 的图像变形算法采用分段线性插值法代替传统的样条插值法,使得线性插值计算量小,运 算复杂性降低,有利于减小图像变形时间,使得语音动画技术中语音控制动画生成的实时 性增强,且不会发生“越界”现象,避免了不合理变形图像的产生。其次,本发明实施例提供的语音动画生成方法采用独立构造面部图像上的横向样 条和纵向样条的方法,不需要共享某些面部图像的特征点而形成样条网格,降低了样条构 造的难度,使得样条构造简单,便于用户交互。本发明实施例也适用于三维人脸动画,还可用于离线制作语音动画视频;如果用 歌曲驱动时,本发明实施例还可实现人脸唱歌效果。基于上述语音动画生成方法,本发明实施例还提供了一种语音动画生成系统,下 面结合具体实施例来详细说明其组成部分。图16为本发明实施例提供的语音动画生成系统框图,如图16所述,语音动画生成 系统包括预处理单元1,用于在面部图像上生成面部图像特征点。所述面部图像特征点包括嘴部特征点、眼眉部特征点和脸部特征点。样条构造单元2,用于根据面部图像特征点独立构造变形前面部图像的横向样条 和纵向样条。所述根据面部图像特征点独立构造变形前面部图像的横向样条和纵向样条具体 包括在任意两个面部图像特征点之间通过线性插值法生成样点,连接面部图像特征点和 相应样点独立构造变形前面部图像的横向样条和纵向样条。语音动画参数获取单元3,用于根据音频数据获取语音动画参数。样条处理单元4,用于根据所述语音动画参数获取变形后面部图像的横向样条和 纵向样条。图像处理单元5,用于根据所述变形前的横向样条和所述变形后的横向样条通过 扫描线计算所述变形前的横向样条间像素点移动的第一位移以及根据所述变形前的纵向 样条和所述变形后的纵向样条通过扫描线计算所述变形前的纵向样条间像素点移动的第 二位移,根据所述第一位移和所述第二位移生成变形后的面部图像。图17为本发明实施例提供的样条构造单元框图,如图17所示,样条构造单元包 括嘴部样条构造子单元101,用于构造嘴部纵向样条。所述嘴部纵向样条用于嘴部的横向变形。眼眉部样条构造子单元102,用于构造眼眉部纵向样条。所述眼眉部纵向样条用于眼眉部的横向变形。脸部样条构造子单元103,用于构造脸部横向样条和脸部纵向样条。所述脸部横向样条用于脸部纵向变形,所述脸部纵向样条用于实现头部摇动效^ ο图18为本发明实施例提供的语音动画参数获取单元框图,如图18所示,语音动画参数获取单元包括可视音素获取子单元201,用于处理语音文件的音频数据,获取可视音素;查表子单元202,用于根据所述可视音素查找预先设置的可视音素-人脸动画参 数关系表获取语音动画参数。图19为本发明实施例提供的样条处理单元框图,如图19所示,样条处理单元包 括位移计算子单元301,用于根据所述语音动画参数计算所述面部图像的横向样条 和纵向样条上特征点的位移;特征点获取子单元302,用于根据所述面部图像特征点的位移获取变形后的面部 图像特征点;样条获取子单元303,用于根据所述变形后的面部图像特征点获取变形后面部图 像的横向样条和纵向样条。图20为本发明实施例提供的图像处理单元框图,如图20所示,图像处理单元包 括第一位移计算子单元401,用于根据所述变形前的横向样条和所述变形后的横向 样条通过扫描线计算所述变形前的横向样条间像素点移动的第一位移;其中所述第一位移计算子单元401包括第一获取子单元4011,用于获取变形前第一横向样条、第二横向样条与竖直扫描 线的交点纵坐标分别为si和s2 ;第二获取子单元4012,用于获取变形后第一横向样条、第二横向样条与所述竖直 扫描线的交点的纵坐标分别为dl和d2 ;第一计算子单元4013,用于计算竖直扫描线上所述变形后第一横向样条和第二横 向样条间的像素点的纵坐标为y =d\ + (y- 51) * —~—
v ,si-s\其中,y为所述变形前第一横向样条和第二横向样条间像素点的纵坐标;第二计算子单元4014,用于计算所述变形前的横向样条间像素点移动的第一位移 为Ay = y' -y。第二位移计算子单元402,用于根据所述变形前纵向样条和所述变形后纵向样条 通过扫描线计算所述变形前的纵向样条间像素点移动的第二位移;其中,所述第二位移计算子单元402包括第三获取子单元4021,用于获取变形前第一纵向样条、第二纵向样条与水平扫描 线的交点横坐标分别为s3和s4 ;第四获取子单元4022,用于获取变形后第一纵向样条、第二纵向样条与所述竖直 扫描线的交点的横坐标分别为d3和d4 ;第三计算子单元4023,用于计算竖直扫描线上所述变形后第一纵向样条和第二纵 向样条间像素点的横坐标为x' = d3 + (x-s3)*—~—
s4-s3
其中,χ为所述变形前第一纵向样条和第二纵向样条间像素点的横坐标;第四计算子单元4024,用于计算所述变形前的纵向样条间像素点移动的第二位移 为Δ χ = χ ‘ -X0生成子单元403,用于根据所述第一位移和所述第二位移生成变形后的面部图像。本发明实施例提供的语音动画生成系统,采用分段线性插值法的扫描线图像变形 算法,降低了运算复杂性,使得语音动画生成系统中语音与变形图像之间实时性增强。此外,本发明实施例提供的语音动画生成系统的样条构造单元采用独立构造面部 图像横向样条和纵向样条的方法,降低了样条构造的难度,便于用户交互。以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制。虽 然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何熟悉本领域的技术人 员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明 技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离 本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同 变化及修饰,均仍属于本发明技术方案保护的范围内。
权利要求
一种语音动画生成方法,其特征在于,包括在面部图像上生成面部图像特征点;根据所述面部图像特征点独立构造变形前面部图像的横向样条和纵向样条;从音频数据中获取语音动画参数;根据所述语音动画参数获取变形后面部图像的横向样条和纵向样条;根据所述变形前的横向样条和所述变形后的横向样条通过扫描线计算所述变形前的横向样条间像素点移动的第一位移,根据所述变形前的纵向样条和所述变形后的纵向样条通过扫描线计算所述变形前的纵向样条间像素点移动的第二位移,根据所述第一位移和所述第二位移生成变形后的面部图像。
2.根据权利要求1所述的语音动画生成方法,其特征在于,所述面部图像特征点包括 嘴部特征点、眼眉部特征点和脸部特征点。
3.根据权利要求2所述的语音动画生成方法,其特征在于,所述横向样条包括脸部横 向样条,所述纵向样条包括嘴部纵向样条、眼眉部纵向样条和脸部纵向样条。
4.根据权利要求1-3任一项所述的语音动画生成方法,其特征在于,所述根据所述面 部图像特征点独立构造变形前面部图像的横向样条和纵向样条包括在任意两个所述面部图像特征点之间通过线性插值法生成样点; 连接所述面部图像特征点和相应所述样点独立构造变形前面部图像的横向样条和纵 向样条。
5.根据权利要求1-3任一项所述的语音动画生成方法,其特征在于,所述从音频数据 获取语音动画参数包括从音频数据中获取可视音素;根据可视音素查找预先设置的可视音素_人脸动画参数关系表获取语音动画参数。
6.根据权利要求1-3任一项所述的语音动画生成方法,其特征在于,所述根据所述语 音动画参数获取变形后面部图像的横向样条和纵向样条包括根据所述语音动画参数计算所述面部图像的横向样条和纵向样条上特征点的位移;根据所述面部图像特征点的位移获取变形后的面部图像特征点;根据所述变形后的面部图像特征点获取变形后面部图像的横向样条和纵向样条。
7.根据权利要求1-3任一项所述的语音动画生成方法,其特征在于,所述根据所述变 形前的横向样条和所述变形后的横向样条通过扫描线计算所述变形前的横向样条间像素 点移动的第一位移包括获取变形前第一横向样条、第二横向样条与竖直扫描线的交点纵坐标分别为si和s2 ; 获取变形后第一横向样条、第二横向样条与所述竖直扫描线的交点的纵坐标分别为dl 和d2 ;计算竖直扫描线上所述变形后第一横向样条和第二横向样条间像素点的纵坐标为 s2-s\其中,y为所述变形前第一横向样条和第二横向样条间像素点的纵坐标; 计算所述变形前的横向样条间像素点移动的第一位移为Ay = y' -y。
8.根据权利要求1-3任一项所述的语音动画生成方法,其特征在于,所述根据所述变形前的纵向样条和所述变形后的纵向样条通过扫描线计算所述变形前的纵向样条间像素 点移动的第二位移包括获取变形前第一纵向样条、第二纵向样条与水平扫描线的交点横坐标分别为S3和s4 ; 获取变形后第一纵向样条、第二纵向样条与所述竖直扫描线的交点的横坐标分别为d3 和d4 ;计算竖直扫描线上所述变形后第一纵向样条和第二纵向样条间像素点的横坐标为 s4-s3其中,χ为所述变形前第一纵向样条和第二纵向样条间像素点的横坐标; 计算所述变形前的纵向样条间像素点移动的第二位移为ΔΧ = χ' -χ0
9.一种语音动画生成系统,其特征在于,包括预处理单元,用于在面部图像上生成面部图像特征点;样条构造单元,用于根据所述面部图像特征点独立构造变形前面部图像的横向样条和 纵向样条;语音动画参数获取单元,用于从音频数据中获取语音动画参数; 样条处理单元,用于根据所述语音动画参数获取变形后面部图像的横向样条和纵向样条;图像处理单元,用于根据所述变形前的横向样条和所述变形后的横向样条通过扫描线 计算所述变形前的横向样条间像素点移动的第一位移,根据所述变形前的纵向样条和所述 变形后的纵向样条通过扫描线计算所述变形前的纵向样条间像素点移动的第二位移,根据 所述第一位移和所述第二位移生成变形后的面部图像。
10.根据权利要求9所述的语音动画生成系统,其特征在于,所述样条构造单元包括 嘴部样条构造子单元,用于构造嘴部纵向样条;眼眉部样条构造子单元,用于构造眼眉部纵向样条; 脸部样条构造子单元,用于构造脸部横向样条和脸部纵向样条。
11.根据权利要求9或10所述的语音动画生成系统,其特征在于,所述语音动画参数获 取单元包括可视音素获取子单元,用于从语音文件的音频数据中获取可视音素; 查表子单元,用于根据所述可视音素查找预先设置的可视音素-人脸动画参数关系表 获取语音动画参数。
12.根据权利要求9或10所述的语音动画生成系统,其特征在于,所述样条处理单元包括位移计算子单元,用于根据所述语音动画参数计算所述面部图像的横向样条和纵向样 条上特征点的位移;特征点获取子单元,用于根据所述面部图像特征点的位移获取变形后的面部图像特征占.^ w\ 样条获取子单元,用于根据所述变形后的面部图像特征点获取变形后面部图像的横向 样条和纵向样条。
13.根据权利要求9或10所述的语音动画生成系统,其特征在于,所述图像处理单元包括第一位移计算子单元,用于根据所述变形前的横向样条和所述变形后的横向样条通过 扫描线计算所述变形前的横向样条间像素点移动的第一位移;第二位移计算子单元,用于根据所述变形前的纵向样条和所述变形后的纵向样条通过 扫描线计算所述变形前的纵向样条间像素点移动的第二位移;生成子单元,用于根据所述第一位移和所述第二位移生成变形后的面部图像。
14.根据权利要求13所述的语音动画生成系统,其特征在于,所述第一位移计算子单 元包括第一获取子单元,用于获取变形前第一横向样条、第二横向样条与竖直扫描线的交点 纵坐标分别为si和s2 ;第二获取子单元,用于获取变形后第一横向样条、第二横向样条与所述竖直扫描线的 交点的纵坐标分别为dl和d2 ;第一计算子单元,用于计算竖直扫描线上所述变形后第一横向样条和第二横向样条间 像素点的纵坐标为, J1 ι λ d2-d\其中,y为所述变形前第一横向样条和第二横向样条间像素点的纵坐标; 第二计算子单元,用于计算所述变形前的横向样条间像素点移动的第一位移为Ay =y' —ι。
15.根据权利要求13所述的语音生成系统,其特征在于,所述第二位移计算子单元包括第三获取子单元,用于获取变形前第一纵向样条、第二纵向样条与水平扫描线的交点 横坐标分别为S3和S4 ;第四获取子单元,用于获取变形后第一纵向样条、第二纵向样条与所述竖直扫描线的 交点的横坐标分别为d3和d4 ;第三计算子单元,用于计算竖直扫描线上所述变形后第一纵向样条和第二纵向样条间 像素点的横坐标为 其中,χ为所述变形前第一纵向样条和第二纵向样条间像素点的横坐标; 第四计算子单元,用于计算所述变形前的纵向样条间像素点移动的第二位移为Δχ=Xf -Xo
全文摘要
本发明实施例提供一种语音动画生成方法及系统。一种语音动画生成方法的实施例,包括在面部图像上生成面部图像特征点;根据面部图像特征点独立构造变形前面部图像的横向样条和纵向样条;从音频数据中获取语音动画参数;根据语音动画参数获取变形后面部图像的横向样条和纵向样条;根据变形前的横向样条和变形后的横向样条通过扫描线计算变形前的横向样条间像素点移动的第一位移以及根据变形前的纵向样条和变形后的纵向样条通过扫描线计算变形前的纵向样条间像素点的第二位移,根据所述第一位移和所述第二位移生成变形后的面部图像。本发明实施例降低语音动画技术中图像变形算法的运算复杂性,使得语音动画技术中语音控制动画生成的实时性增强。
文档编号G06T13/00GK101923726SQ200910203660
公开日2010年12月22日 申请日期2009年6月9日 优先权日2009年6月9日
发明者倪奎, 王亚涛, 董兰芳, 覃景繁 申请人:华为技术有限公司;中国科学技术大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1