CN116528016A - 音视频合成方法、服务器和可读存储介质 - Google Patents
音视频合成方法、服务器和可读存储介质 Download PDFInfo
- Publication number
- CN116528016A CN116528016A CN202310430441.4A CN202310430441A CN116528016A CN 116528016 A CN116528016 A CN 116528016A CN 202310430441 A CN202310430441 A CN 202310430441A CN 116528016 A CN116528016 A CN 116528016A
- Authority
- CN
- China
- Prior art keywords
- data
- virtual
- audio
- video
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001308 synthesis method Methods 0.000 title claims abstract description 22
- 230000006399 behavior Effects 0.000 claims abstract description 91
- 230000009471 action Effects 0.000 claims abstract description 81
- 238000000034 method Methods 0.000 claims abstract description 81
- 230000000877 morphologic effect Effects 0.000 claims abstract description 51
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 37
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 37
- 238000012545 processing Methods 0.000 claims description 69
- 230000001815 facial effect Effects 0.000 claims description 68
- 230000000875 corresponding effect Effects 0.000 claims description 56
- 230000008569 process Effects 0.000 claims description 40
- 230000004927 fusion Effects 0.000 claims description 39
- 230000033001 locomotion Effects 0.000 claims description 33
- 238000012952 Resampling Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 26
- 238000005452 bending Methods 0.000 claims description 24
- 230000008921 facial expression Effects 0.000 claims description 24
- 210000002478 hand joint Anatomy 0.000 claims description 19
- 230000002194 synthesizing effect Effects 0.000 claims description 12
- 210000000056 organ Anatomy 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 8
- 230000037237 body shape Effects 0.000 claims description 7
- 230000002596 correlated effect Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 2
- 230000004048 modification Effects 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 21
- 210000003811 finger Anatomy 0.000 description 15
- 238000004422 calculation algorithm Methods 0.000 description 14
- 230000008859 change Effects 0.000 description 12
- 239000013598 vector Substances 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 230000002441 reversible effect Effects 0.000 description 8
- 230000003068 static effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000009191 jumping Effects 0.000 description 6
- 238000002372 labelling Methods 0.000 description 6
- 239000000203 mixture Substances 0.000 description 6
- 210000000988 bone and bone Anatomy 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 239000003086 colorant Substances 0.000 description 4
- 210000002683 foot Anatomy 0.000 description 4
- 210000004247 hand Anatomy 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 241000239290 Araneae Species 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 210000003423 ankle Anatomy 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- HAORKNGNJCEJBX-UHFFFAOYSA-N cyprodinil Chemical compound N=1C(C)=CC(C2CC2)=NC=1NC1=CC=CC=C1 HAORKNGNJCEJBX-UHFFFAOYSA-N 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009432 framing Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 210000004394 hip joint Anatomy 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000036651 mood Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000033764 rhythmic process Effects 0.000 description 2
- 210000003813 thumb Anatomy 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 241001342895 Chorus Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000004566 building material Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 210000000697 sensory organ Anatomy 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请涉及一种音视频合成方法、服务器和存储介质。所述方法包括:获取目标用户在进行录唱行为时的音频数据和视频数据;其中,视频数据中包括目标用户的动作行为;然后,提取视频数据中目标用户的用户特征数据,并基于用户特征数据生成三维动画数据;其中,用户特征数据表征目标用户的外在形态特征;三维动画数据表征对应于目标用户的虚拟动画人物在模拟动作行为时的动画数据;最后,基于音频数据和三维动画数据进行音频‑视频合成,得到针对于录唱行为的音乐动画视频。采用本方法能够提升合成音视频的质量和降低音视频的制作成本。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种音视频合成方法、服务器和可读存储介质。
背景技术
随着互联网技术的发展,音视频合成技术在虚拟歌手、唱片制作、数字音乐创作等领域具有相当大的应用价值和前景。
在传统的音视频合成的方法中,一般先是由人工听录得到用户的语音音频,再通过动画师手动绘制出相应的动画视频,最后将语音音频和动画视频进行融合,以生成合成的音视频。
然而,目前的音视频的合成方法中,需要人工制作的动画视频,且人工制作的动画视频需要与语音音频之间的匹配程度较高,才能合成得到质量较高的音视频,从而导致目前的合成音视频的制作成本较高、质量不优。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升合成音视频质量和降低音视频制作成本的音视频合成方法、音视频合成装置、服务器、存储介质及计算机程序产品。
根据本公开实施例的第一方面,提供一种音视频合成方法,包括:
获取目标用户在进行录唱行为时的音频数据和视频数据;所述视频数据中包括所述目标用户的动作行为;
提取所述视频数据中所述目标用户的用户特征数据,并基于所述用户特征数据生成三维动画数据;所述用户特征数据表征所述目标用户的外在形态特征;所述三维动画数据表征对应于所述目标用户的虚拟动画人物在模拟所述动作行为时的动画数据;
基于所述音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频。
在一示例性实施例中,所述用户特征数据包括所述目标用户的人体特征、面部特征和手部特征;所述提取所述视频数据中所述目标用户的用户特征数据,并基于所述用户特征数据生成三维动画数据,包括:
在所述视频数据的多个视频帧中,提取所述目标用户的人体特征、面部特征和手部特征;
基于所述人体特征进行三维人体建模,得到针对所述虚拟动画人物的虚拟人体模型;所述虚拟人体模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的人体形态;以及
基于所述面部特征进行三维人脸建模,得到针对所述虚拟动画人物的虚拟人脸模型;所述虚拟人脸模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的面部形态;以及
基于所述手部特征进行三维手部建模,得到针对所述虚拟动画人物的虚拟手部模型;所述虚拟手部模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的手部形态;
对所述虚拟人体模型、所述虚拟人脸模型和所述虚拟手部模型进行模型融合,生成所述三维动画数据。
在一示例性实施例中,所述基于所述人体特征进行三维人体建模,得到针对所述虚拟动画人物的虚拟人体模型,包括:
基于所述人体特征对待建模的虚拟人体模型进行人体形态预测,得到预测人体形态序列;在所述预测人体形态序列中包括对应于所述多个视频帧的多个预测人体形态参数,所述预测人体形态参数包括预测形状参数和预测姿态参数;
基于预设的真实人体形态序列对所述预测人体形态序列进行调整,得到与所述真实人体形态序列之间的差异程度小于预设程度的修正人体形态序列;
基于所述修正预测人体形态序列生成所述虚拟人体模型。
在一示例性实施例中,所述面部特征包括人脸外轮廓特征和人脸五官特征;
所述基于所述面部特征进行三维人脸建模,得到针对所述虚拟动画人物的虚拟人脸模型,包括:
基于所述人脸外轮廓特征和所述人脸五官特征进行三维人脸重建,得到人脸形态序列;所述人脸姿态序列表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的人脸形状和人脸姿态;以及
基于所述人脸外轮廓特征和所述人脸五官特征对所述多个视频帧中所述目标用户的人脸图像进行融合形变处理,得到人脸表情序列;所述融合形变处理用于将所述目标用户的人脸表情改变为所述虚拟动画人物的人脸表情;
对所述人脸形态序列和所述人脸表情序列进行融合,并利用融合得到的人脸形态-人脸表情序列生成所述虚拟人脸模型。
在一示例性实施例中,所述基于所述手部特征进行三维手部建模,得到针对所述虚拟动画人物的虚拟手部模型,包括:
基于所述手部形态特征对所述多个视频帧中所述目标用户的手部图像进行手部节点定位,确定针对所述虚拟动画人物的手部主体坐标和手部关节坐标;
基于所述手部主体坐标和所述手部关节坐标,确定所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的手指弯曲程度;
基于所述手指弯曲程度对所述虚拟动画人物进行手势预测,得到预测手势序列,并利用所述预测手势序列生成所述虚拟手型模型。
在一示例性实施例中,所述对所述虚拟人体模型、所述虚拟人脸模型和所述虚拟手部模型进行模型融合,生成所述三维动画数据,包括:
对所述虚拟人体模型和所述虚拟手部模型进行模型融合,生成初始形体模型;所述初始形体模型用于表征对应于所述目标用户的虚拟动画人物在模拟所述动作行为时的人体动作和手部动作;
对所述初始形体模型依次进行逆向运动学处理和重定向处理,生成形体运动模型;所述逆向运动学处理用于对所述人体动作和所述手部动作的旋转角度进行调整,所述重定向处理用于对所述初始形体模型中的人体大小和手部大小进行调整;
对所述形体运动模型和所述虚拟人脸模型进行模型融合,生成所述三维动画数据。
在一示例性实施例中,所述基于所述音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频,包括:
获取所述音频数据对应的音频模板;
基于所述音频模板,对所述音频数据进行音调调整,得到音调调整后的音频数据;
基于所述音调调整后的音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频。
在一示例性实施例中,所述基于所述音频模板,对所述音频数据进行音调调整,得到音调调整后的音频数据,包括:
基于所述音频模板与所述音频数据之间的音调差异程度,对所述音频数据进行重采样处理,得到重采样后的音频数据;所述音调差异程度与所述重采样处理的采样倍数正相关,所述重采样处理用于调整音频数据的语速和音调,且所述重采样后的音频数据的音调与所述音频模板的音调相同;
对所述重采样后的音频数据进行变速不变调处理,得到变速处理后的音频数据,并将所述变速处理后的音频数据作为所述音调调整后的音频数据;所述变速不变调处理用于对所述重采样后的音频数据的语速进行恢复,使得所述变速处理后的音频数据的语速与所述重采样处理之前的音频数据的语速相同。
在一示例性实施例中,所述基于所述音调调整后的音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频,包括:
从所述音频模板中提取出乐理信息,以及从数据库中提取出预设的虚拟人物形象和虚拟装饰对象;
基于所述乐理信息和所述音调调整后的音频数据,生成针对于所述录唱行为的音频流数据;以及
基于所述虚拟人物形象、所述虚拟装饰对象和所述三维动画数据,生成针对于所述录唱行为的视频流数据;
对所述音频流数据和所述视频流数据进行音频-视频合成,得到所述语音动画视频。
根据本公开实施例的第二方面,提供一种音视频合成装置,包括:
数据获取单元,被配置为执行获取目标用户在进行录唱行为时的音频数据和视频数据;所述视频数据中包括所述目标用户的动作行为;
特征处理单元,被配置为执行提取所述视频数据中所述目标用户的用户特征数据,并基于所述用户特征数据生成三维动画数据;所述用户特征数据表征所述目标用户的外在形态特征;所述三维动画数据表征对应于所述目标用户的虚拟动画人物在模拟所述动作行为时的动画数据;
视频合成单元,被配置为执行基于所述音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频。
根据本公开实施例的第三方面,提供一种服务器,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如上述任一项所述的音视频合成方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中包括计算机程序,当所述计算机程序由服务器的处理器执行时,使得所述服务器能够执行如上述任一项所述的音视频合成方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品中包括程序指令,所述程序指令被服务器的处理器执行时,使得所述服务器能够执行如上述任一项所述的音视频合成方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
该方法先通过获取目标用户在进行录唱行为时的音频数据和视频数据;其中,视频数据中包括目标用户的动作行为;然后,提取视频数据中目标用户的用户特征数据,并基于用户特征数据生成三维动画数据;其中,用户特征数据表征目标用户的外在形态特征;三维动画数据表征对应于目标用户的虚拟动画人物在模拟动作行为时的动画数据;最后,基于音频数据和三维动画数据进行音频-视频合成,得到针对于录唱行为的音乐动画视频。这样,一方面,区别于现有技术的方式,通过目标用户的视频数据中的用户特征数据来生成对应于目标用户的虚拟动画人物的三维动画数据,从而优化了音视频制作的流程,降低了人力和时间成本的消耗;另一方面,利用关于虚拟动画人物在模拟目标用户的动作行为时的三维动画数据和目标用户的音频数据来合成对应的音乐动画视频,能够提升制作的音视频的自然度和表现力,使得音视频的质量和展示效果更优。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种音视频合成方法的应用环境图。
图2是根据一示例性实施例示出的一种音视频合成方法的流程图。
图3是根据一示例性实施例示出的一种生成三维动画数据步骤的流程图。
图4是根据一示例性实施例示出的另一种生成三维动画数据步骤的流程图。
图5是根据一示例性实施例示出的一种生成音乐动画视频步骤的流程示意图。
图6是根据另一示例性实施例示出的一种音视频合成方法的流程图。
图7是根据另一示例性实施例示出的一种音视频合成方法的模块图。
图8是根据一示例性实施例示出的一种制作虚拟动画数据步骤的模块图。
图9是根据一示例性实施例示出的一种笛卡尔坐标的示意图。
图10是根据一示例性实施例示出的一种音视频合成装置框图。
图11是根据一示例性实施例示出的一种用于音视频合成的服务器的框图。
图12是根据一示例性实施例示出的一种用于音视频合成的计算机可读存储介质的框图。
图13是根据一示例性实施例示出的一种用于音视频合成的计算机程序产品的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例中的术语“和/或”指的是包括相关联的列举项目中的一个或多个的任何和全部的可能组合。还要说明的是:当用在本说明书中时,“包括/包含”指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件和/或组件和/或它们的组群的存在或添加。
本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
另外,本申请中尽管多次采用术语“第一”、“第二”等来描述各种操作(或各种元件或各种应用或各种指令或各种数据)等,不过这些操作(或元件或应用或指令或数据)不应受这些术语的限制。这些术语只是用于区分一个操作(或元件或应用或指令或数据)和另一个操作(或元件或应用或指令或数据)。例如,第一视频帧中的动作行为可以被称为第二视频帧中的动作行为,第二视频帧中的动作行为也可以被称为第一视频帧中的动作行为,仅仅是其两者所包括的范围不同,而不脱离本申请的范围,第一视频帧中的动作行为和第二视频帧中的动作行为都是视频数据中的各视频帧所表达的动作行为的集合,只是二者并不是相同的视频帧所表达的动作行为的集合而已。
本申请实施例提供的音视频合成方法,可以应用于如图1所示的应用环境中。其中,终端102通过通信网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。
在一些实施例中,参考图1,服务器104首先获取目标用户在进行录唱行为时的音频数据和视频数据;其中,视频数据中包括目标用户的动作行为;然后,服务器104再提取视频数据中目标用户的用户特征数据,并基于用户特征数据生成三维动画数据;其中,用户特征数据表征目标用户的外在形态特征;三维动画数据表征对应于目标用户的虚拟动画人物在模拟动作行为时的动画数据;最后,服务器104再基于音频数据和三维动画数据进行音频-视频合成,得到针对于录唱行为的音乐动画视频。
在一些实施例中,终端102(如移动终端、固定终端)可以以各种形式来实施。其中,终端102可为包括诸如移动电话、智能电话、笔记本电脑、便携式手持式设备、个人数字助理(PDA,Personal Digital Assistant)、平板电脑(PAD)等等的能够从视频数据中提取出目标用户的用户特征数据,并基于用户特征数据生成三维动画数据的移动终端,终端102也可以是自动柜员机(Automated Teller Machine,ATM)、自动一体机、数字TV、台式计算机、固式计算机等等的能够从视频数据中提取出目标用户的用户特征数据,并基于用户特征数据生成三维动画数据的固定终端。
下面,假设终端102是固定终端。然而,本领域技术人员将理解的是,若有特别用于移动目的的操作或者元件,根据本申请公开的实施方式的构造也能够应用于移动类型的终端102。
在一些实施例中,服务器104运行的数据处理组件可以加载正在被执行的可以包括各种附加服务器应用和/或中间层应用中的任何一种,如包括HTTP(超文本传输协议)、FTP(文件传输协议)、CGI(通用网关界面)、RDBMS(关系型数据库管理系统)等。
在一些实施例中,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。服务器104可以适于运行提供前述公开中描述的终端102的一个或多个应用服务或软件组件。
在一些实施例中,应用服务可以包括向用户提供音频/舞蹈模板选择和虚拟动画人物/场景选择的服务界面,以及对应程序服务等等。其中,软件组件可以包括例如具有根据用户在进行录唱行为时的音频数据和视频数据,来生成针对于录唱行为的音乐动画视频功能的应用程序(SDK)或者客户端(APP)。
在一些实施例中,服务器104所提供的具有生成针对于录唱行为的音乐动画视频功能的应用程序或者客户端包括一个在前台向用户提供一对一应用服务的门户端口和多个位于后台进行数据处理的业务系统,以将在生成音乐动画视频过程中的相关功能应用扩展到APP或者客户端,从而用户能够在任何时间任何地点进行与生成音乐动画视频相关联功能的使用和访问。
在一些实施例中,APP或者客户端的资源转移功能可为运行在用户模式以完成某项或多项特定工作的计算机程序,其可以与用户进行交互,且具有可视的用户界面。其中,APP或者客户端可以包括两部分:图形用户接口(GUI)和引擎(engine),利用这两者能够以用户界面的形式向用户提供多种应用服务的数字化客户系统。
在一些实施例中,用户可以通过预设的输入装置或者自动控制程序向APP或者客户端输入相应的代码数据或者控制参数,以执行服务器104中的计算机程序的应用服务,以及显示用户界面中的应用服务。
作为一种示例,当用户在录制一段唱跳行为的时候,终端102中的麦克风实时的采集用户的音频数据,以及摄影机实时的采集用户的舞蹈视频,并用户通过输入装置向服务器104传入采集的音频数据、视频数据,以及选择对应的虚拟形象和装饰的参数,然后通过服务器104对音频数据和视频数据执行音视频的制作方法,从而服务器104根据输入的音频数据和视频数据得到针对用户唱跳行为的合成音视频,最后,服务器104向终端102发送关于合成音视频的信息数据,以使合成音视频在终端102所运行的APP或者客户端中进行展示。
在一些实施例中,APP或者客户端运行的操作系统可以包括各种版本的MicrosoftApple/>和/或Linux操作系统、各种商用或类/>操作系统(包括但不限于各种GNU/Linux操作系统、Google/>OS等)和/或移动操作系统,诸如/> Phone、/>OS、/>OS、/>OS操作系统,以及其它在线操作系统或者离线操作系统,在这里不做具体的限制。
在一些实施例中,如图2所示,提供了一种音视频合成方法,以该方法应用于图1中的服务器104为例进行说明,该方法包括以下步骤:
步骤S11,获取目标用户在进行录唱行为时的音频数据和视频数据。
在一些实施例中,服务器从终端应用(如手机、平板等)中实时的获取由音频采集设备(如,麦克风)采集的音频数据和由视频采集设备(如,摄影机)采集的视频数据。
在一些实施例中,录唱行为包括录制目标用户在同步进行演唱时的歌唱行为和舞蹈时的动作行为。即,音频数据中包括目标用户的演唱音频,视频数据中包括目标用户的动作行为。
作为示例,若目标用户正在进行关于“唱跳才艺”的网络直播,目标用户通过直播设备中的麦克风实时的采集演唱的歌曲音频和摄影机实时采集的舞蹈视频,并将歌曲音频作为音频数据和舞蹈视频作为视频数据发送至服务器,服务器以执行音视频的合成步骤,得到合成音视频,并将实时合成的音视频传输至播放设备进行直播。
在其他实施例中,目标用户的录唱行为可以为不同时空、不同人物分别进行录制的音频数据和视频数据。
作为示例,首先,用户A在第一时间录制了一段语音音频,用户B在第二时间录制了一段舞蹈视频,然后,服务器将语音音频作为音频数据和将舞蹈视频作为视频数据,以对音频数据和视频数据执行音视频的合成步骤,得到合成音视频,并将合成音视频进行保存。
步骤S12:提取视频数据中目标用户的用户特征数据,并基于用户特征数据生成三维动画数据。
在一实施例中,用户特征数据表征目标用户的外在形态特征。
在一些实施例中,目标用户的外在形态特征可通过人体形态、面部形态和手部形态进行表达。即,用户特征数据包括目标用户的人体特征、面部特征和手部特征。
在一些实施例中,人体特征可以为目标用户整个躯体上的人体躯干和躯干关节点,以能够通过人体躯干和躯干关节点来表示出目标用户的人体形态。
在一些实施例中,面部特征可以为目标用户整个面部上的面部轮廓和五官关键点,以能够通过面部轮廓和五官关键点来表示出目标用户的人脸形态。
在一些实施例中,手部特征可以为目标用户整个手部上的手部躯干和手部关节点,以能够通过手部躯干和手部关节点来表示出目标用户的手部形态。
在一些实施例中,服务器将用户特征数据应用在对应于目标用户的虚拟动画人物上,以使虚拟动画人物模拟目标用户的动作行为,并产生相同于目标用户的外在形态特征,从而得到虚拟动画人物在进行动作行为时的动画视频数据,即三维动画数据。
在一实施例中,三维动画数据表征对应于目标用户的虚拟动画人物在模拟动作行为时的动画数据。
在一些实施例中,对应于目标用户的虚拟动画人物为经过用户预设的具有相应虚拟人物形象和虚拟人物装扮的三维动画人物。
其中,虚拟人物形象可以为经由设计工程师制作的各种个性化形象(如,高、矮、胖、瘦等人物形象),虚拟人物装扮可以为经由设计工程师制作的各种个性化人物装饰(如,服饰、特效、装饰背景等)。
步骤S13:基于音频数据和三维动画数据进行音频-视频合成,得到针对于录唱行为的音乐动画视频。
在一些实施例中,服务器可以将音频数据和三维动画数据按照对应每个音频帧或视频帧的位次,将音频数据和三维动画数据整合为向量长度相同的且对齐的音频数据和三维动画数据。然后,再利用预设的音频-视频合成器,将对齐的音频数据和三维动画数据进行融合,以生成音乐动画视频。
其中,由于具有调节能力大、音视频可塑性强等优点,音视频合成技术在数据合成中得到了广泛的应用;在实际中,可以采用LPC(线性预测编码,linearpredictive coding)滤波器作为合成器,本申请对具体的合成器不加以限制。
其中,由于加入了向量长度相同的且对齐后的音频数据和三维动画数据,因而所述合成得到的音乐动画视频具有与节奏匹配度较高的音频-视频,以及与目标用户进行舞蹈动作相同的三维视频动画。
上述的音视频合成过程中,服务器首先获取目标用户在进行录唱行为时的音频数据和视频数据;其中,视频数据中包括目标用户的动作行为;然后,提取视频数据中目标用户的用户特征数据,并基于用户特征数据生成三维动画数据;其中,用户特征数据表征目标用户的外在形态特征;三维动画数据表征对应于目标用户的虚拟动画人物在模拟动作行为时的动画数据;最后,基于音频数据和三维动画数据进行音频-视频合成,得到针对于录唱行为的音乐动画视频。这样,一方面,区别于现有技术的方式,通过目标用户的视频数据中的用户特征数据来生成对应于目标用户的虚拟动画人物的三维动画数据,从而优化了音视频制作的流程,降低了人力和时间成本的消耗;从而另一方面,利用关于虚拟动画人物在模拟目标用户的动作行为时的三维动画数据和目标用户的音频数据来合成对应的音乐动画视频,能够提升制作的音视频的自然度和表现力,从而使得音视频的质量和展示效果更优。
本领域技术人员可以理解地,在具体实施方式的上述方法中,所揭露的方法可以通过更为具体的方式以实现。例如,以上所描述的服务器基于音频数据和三维动画数据进行音频-视频合成,得到针对于录唱行为的音乐动画视频的实施方式仅仅是示意性的。
示例性地,或者服务器提取视频数据中目标用户的用户特征数据的方式;服务器基于用户特征数据生成三维动画数据的方式等等,其仅仅为一种集合的方式,实际实现时可以有另外的划分方式,例如目标用户的用户特征数据、关于录唱行为时的音频数据之间可以结合或者可以集合到另一个系统中,或一些特征可以忽略,或不执行。
在一示例性实施例中,参阅图3,图3为本申请中生成三维动画数据一实施例的流程示意图。在步骤S12中,服务器提取视频数据中目标用户的用户特征数据,并基于用户特征数据生成三维动画数据的过程,可以通过以下方式实现:
步骤S121,在视频数据的多个视频帧中,提取目标用户的人体特征、面部特征和手部特征。
在一实施例中,服务器首先对视频数据进行分帧操作和筛选用户操作,得到多个视频帧;然后,再从各个视频帧中提取出关于目标用户的人体特征、面部特征和手部特征。
其中,分帧操作用于将视频数据所对应的视频画面中的各个视频解码帧进行分离抽取;筛选用户操作用于对各个视频解码帧进行用户识别吗,以将录制有关于目标用户形态的视频解码帧筛选出,并做为视频帧。
在一些实施例中,人体特征包括在各个视频帧中目标用户的人体形状和姿态;面部特征包括在各个视频帧中目标用户的面部形状和姿态;手部特征包括在各个视频帧中目标用户的手部形状和姿态。
在一些实施例中,人体形状和姿态可以通过各个视频帧中目标用户的人体躯干和躯干关节点来表达。
在一些实施例中,面部特征可以通过各个视频帧中目标用户的面部轮廓和五官关键点来表达。
在一些实施例中,手部特征可以通过各个视频帧中目标用户的手部躯干和手部关节点来表达。
步骤S122,基于人体特征进行三维人体建模,得到针对虚拟动画人物的虚拟人体模型。
在一实施例中,虚拟人体模型用于表征虚拟动画人物在模拟多个视频帧中的动作行为时的人体形态。
其中,虚拟人体模型为一个三维的人体模型,当该虚拟人体模型在模拟多个视频帧中的动作行为时,可以展现出对应于目标用户的人体形态。
在一种实现方式中,服务器得到针对虚拟动画人物的虚拟人体模型可以通过如下方式:
步骤一:基于人体特征对待建模的虚拟人体模型进行人体形态预测,得到预测人体形态序列。
在一些实施例中,服务器通过待建模的虚拟人体模型在模拟目标用户的动作行为(即作出相应的人体特征)时,对虚拟人体模型的人体形态进行预测,得到对应于各个视频帧的预测人体形态序列。
其中,在预测人体形态序列中包括对应于多个视频帧的多个预测人体形态参数,预测人体形态参数包括预测形状参数和预测姿态参数。
步骤二:基于预设的真实人体形态序列对预测人体形态序列进行调整,得到与真实人体形态序列之间的差异程度小于预设程度的修正人体形态序列。
在一些实施例中,服务器首先从预设的数据库中提取出与目标用户的动作行为相似的一组真实的人体形态序列;然后,再将真实的人体形态序列和预测的人体形态序列进行参数比对(包括预测形状参数和预测姿态参数的比对),以对预测人体形态序列中的各个预测人体形态参数进行预测分类和添加标签(标签包括表征预测准确的正标签和预测错误的负标签);然后,服务器在预测的人体形态序列中将具有负标签的预测人体形态参数替换为对应比对的真实人体形态参数,以得到与真实人体形态序列之间的差异程度小于预设程度的修正人体形态序列。
步骤三:基于修正预测人体形态序列生成虚拟人体模型。
在一些实施例中,服务器根据修正预测人体形态序列中的各预测形状参数和预测姿态参数生成虚拟人体模型。
步骤S123,基于面部特征进行三维人脸建模,得到针对虚拟动画人物的虚拟人脸模型。
在一实施例中,虚拟人脸模型用于表征虚拟动画人物在模拟多个视频帧中的动作行为时的面部形态。
其中,虚拟人脸模型为一个三维的人脸模型,当该虚拟人脸模型在模拟多个视频帧中的动作行为时,可以展现出对应于目标用户的人脸形态。
在一实施例中,面部特征包括关于多个视频帧中的人脸图像的人脸外轮廓特征和人脸五官特征。
在一种实现方式中,服务器得到针对虚拟动画人物的虚拟人脸模型可以通过如下方式:
步骤一:基于人脸外轮廓特征和人脸五官特征进行三维人脸重建,得到人脸形态序列。
其中,人脸姿态序列表征虚拟动画人物在模拟多个视频帧中的动作行为时的人脸形状和人脸姿态。
在一些实施例中,服务器通过虚拟动画人物在模拟目标用户的动作行为(即作出相应的人脸外轮廓特征和人脸五官特征)时,对虚拟动画人物的人脸形状和人脸姿态进行人脸重建,得到对应于各个视频帧的人脸形态序列。
其中,人脸重建的结果包含了人脸的Shape(形状)、Pose(姿势)、ID(身份标识)、Expression(表情)、Camera pose(摄像机姿态)等重要的信息。其中,重建后头模的Pose,用于提供精细化的头部旋转驱动。
步骤二:基于人脸外轮廓特征和人脸五官特征对多个视频帧中目标用户的人脸图像进行融合形变处理,得到人脸表情序列。
其中,融合形变处理用于将人脸图像中目标用户的人脸表情改变为虚拟动画人物中的人脸表情。
在一些实施例中,融合形变处理可以对基础形变对象(即视频帧中的人脸)的形状进行位置变换、旋转、缩放等处理,以改变成目标形变对象(即虚拟动画人物的人脸)的形状。
例如,视频帧中目标用户的人脸A是一张“不笑”的人脸表情,服务器通过对人脸A进行融合形变处理,以将人脸A逐渐过渡为一张“大笑”的人脸表情,从而视频帧中的人脸A转变为人脸B。
在一些实施例中,融合形变处理基于对应的融合形变系数表征其对基础形变对象的形状进行位置变换、旋转、缩放等处理的程度;若系数越大,基础形变对象的融合形变程度越大,若系数越小,基础形变对象的融合形变程度越小。
其中,步骤一和步骤二的执行顺序可以为同步执行,也可以为以任意顺序执行的方式,这里不作具体限定。
步骤三:对人脸形态序列和人脸表情序列进行融合,并利用融合得到的人脸形态-人脸表情序列生成虚拟人脸模型。
在一些实施例中,服务器可以将人脸形态序列和人脸表情序列按照对应每个序列中参数的位次,将人脸形态序列和人脸表情序列整合为向量长度相同的且对齐的人脸形态序列和人脸表情序列。然后,再对人脸形态序列和人脸表情序列进行融合,得到融合的人脸形态-人脸表情序列。最后,服务器根据融合的人脸形态-人脸表情序列中的各参数生成虚拟人脸模型。
步骤S124,基于手部特征进行三维手部建模,得到针对虚拟动画人物的虚拟手部模型。
在一实施例中,虚拟手部模型用于表征虚拟动画人物在模拟多个视频帧中的动作行为时的手部形态。
其中,虚拟手部模型为一个三维的手部模型,当该虚拟手部模型在模拟多个视频帧中的动作行为时,可以展现出对应于目标用户的手部形态。
在一种实现方式中,服务器得到针对虚拟动画人物的虚拟手部模型可以通过如下方式:
步骤一:基于手部形态特征对多个视频帧中目标用户的手部图像进行手部节点定位,确定针对虚拟动画人物的手部主体坐标和手部关节坐标。
在一些实施例中,服务器可以通过手掌识别模型来对手部图像进行手部节点定位,以确定手部图像中的手部主体坐标和手部关节坐标,然后,再将手部主体坐标和手部关节坐标应用到虚拟动画人物中。
其中,手掌识别模型为可识别单帧图像的模型,其可用于识别手掌初始位置,以及识别多种不同手掌大小。手掌识别模型通过对手部图像中的手臂、躯干或关节特征等的识别来准确定位手部主体坐标和手部关节坐标。
步骤二:基于手部主体坐标和手部关节坐标,确定虚拟动画人物在模拟多个视频帧中的动作行为时的手指弯曲程度。
在一些实施例中,服务器将手部主体坐标和手部关节坐标输入到标记模型中,以使虚拟动画人物模拟多个视频帧中的动作行为,然后,再计算这个过程中虚拟动画人物的手部关节的弯曲角度。
步骤三:基于手指弯曲程度对虚拟动画人物进行手势预测,得到预测手势序列,并利用预测手势序列生成虚拟手型模型。
在一些实施例中,服务器将手部关节的弯曲角度输入到手势识别模型中,以确定手部中各个手指的弯曲状态。
其中,手势识别模型可根据手部关节的弯曲角度识别每根手指的弯曲状态,如:弯曲状态或伸直状态。
在一些实施例中,手势识别模型将每根手指的弯曲状态映射到的预定义的静态手势上,以预测对应手指的的静态手势,从而确定各个手部的姿态数据。
其中,预定义的静态手势包括例如竖大拇指、握拳、OK、“蜘蛛侠”等手势。
步骤S125,对虚拟人体模型、虚拟人脸模型和虚拟手部模型进行模型融合,生成三维动画数据。
在一示例性实施例中,参阅图4,图4为本申请中生成三维动画数据一实施例的流程示意图。在步骤S125中,服务器对虚拟人体模型、虚拟人脸模型和虚拟手部模型进行模型融合,生成三维动画数据的过程,具体可以通过以下方式实现:
步骤a1,对虚拟人体模型和虚拟手部模型进行模型融合,生成初始形体模型。
在一实施例中,初始形体模型用于表征对应于目标用户的虚拟动画人物在模拟动作行为时的人体动作和手部动作。
步骤a2,对初始形体模型依次进行逆向运动学处理和重定向处理,生成形体运动模型。
在一实施例中,逆向运动学处理用于对人体动作和手部动作的旋转角度进行调整。
在一些实施例中,在逆向运动学处理过程中,在服务器获得了初始形体模型中的人体特征和手部特征后,通过FK-IK(Forward Kinematics-Inverse Kinematics)算法计算出人体特征和手部特征对应的特征旋转四元数,以进行躯体姿态的渲染引擎驱动。
其中,FK-IK算法包括FK算法(正向动力学,其根据父关节的旋转来计算得出每个子关节的位置)和IK算法(反向动力学,其根据末端子关节的位置移动来计算得出每个父关节的旋转)。
作为示例,在躯体姿态为脚部触地的情况下,服务器通过FK-IK算法进行IK反向推算,以实现躯体姿态的脚踝到髋关节的各个人体特征和手部特征的旋转,从而实现躯体姿态的脚部有“踩”在地上的感觉。
其中,服务器在IK反向推算中加入对人体特征和手部特征旋转的限制,使得人体特征和手部特征不至于发生不符合人体运动规律的扭曲。同时服务器在IK反向推算中会增加时序平滑策略,进一步降低视觉预测误差带来的影响。
在一实施例中,重定向处理用于对初始形体模型中的人体大小和手部大小进行调整。
其中,当初始形体模型中虚拟人物模型的尺寸与视频数据中目标用户的真实人物的尺寸存在较大的差异时,服务器通过重定向技术将真实人物的尺寸映射到虚拟人物模型的身上,以使虚拟人物模型的尺寸与目标用户的真实人物的尺寸相同。
步骤a3,对形体运动模型和虚拟人脸模型进行模型融合,生成三维动画数据。
在一些实施例中,服务器将形体运动模型和虚拟人脸模型整合为向量长度相同的且对齐的形体运动模型和虚拟人脸模型。然后,再对形体运动模型和虚拟人脸模型进行模型融合,得到融合的虚拟人物模型。最后,当该融合的虚拟人物模型在模拟多个视频帧中的动作行为时,即可生成对应于目标用户的三维动画数据。
在一示例性实施例中,参阅图5,图5为本申请中生成音乐动画视频一实施例的流程示意图。在步骤S13中,服务器基于音频数据和三维动画数据进行音频-视频合成,得到针对于录唱行为的音乐动画视频的过程,具体可以通过以下方式实现:
步骤S131,获取音频数据对应的音频模板。
其中,音频数据为目标用户于线上或者线下真实演唱的歌曲音频,而音频模板为对应于歌曲音频的标准音频(即原唱音频)。
步骤S132,基于音频模板,对音频数据进行音调调整,得到音调调整后的音频数据。
在一种实现方式中,服务器对音频数据进行音调调整可以通过如下方式:
步骤一:基于音频模板与音频数据之间的音调差异程度,对音频数据进行重采样处理,得到重采样后的音频数据。
在一些实施例中,音频模板与音频数据之间的音调差异程度可以通过计算两者之间的平均音调差异来确定。
例如,音频数据的平均音调为Q,音频模板的平均音调为P。则音频数据与音频模板之间的音调差异为Q/P。
在一些实施例中,重采样处理用于调整音频数据的语速和音调,且重采样后的音频数据的音调与音频模板的音调相同。其中,音调差异程度与重采样处理的采样倍数正相关。
作为一示例,音频数据的原始语速为X,音调为Y,配置重采样中的重采样因子为P/Q,其中,P为上采样因子,Q为下采样因子。因此,音频数据在经过重采样处理后的语速为Q/P×X,音调为P/Q×Y。
其中,上采样过程就是往原始信号相邻两点间内插P-1个采样点,这样使得基音周期变为原来的P倍,频谱压缩为原来的1/P倍,时长变为原来的P倍,即基频变为原来的1/P倍,音调降为原来的1/P倍,语速变为原来的1/P倍。
其中,下采样过程就是每隔Q-1个点进行抽取,这样会使得基音周期长度为原来的1/Q倍,频谱扩展为原来的Q倍,时长变为原来的1/Q倍,即基频变为原来的Q倍,音调升为原来的Q倍,语速变为原来的Q倍。
步骤二:对重采样后的音频数据进行变速不变调处理,得到变速处理后的音频数据,并将变速处理后的音频数据作为音调调整后的音频数据。
其中,变速不变调处理用于对重采样后的音频数据的语速进行恢复,使得变速处理后的音频数据的语速与重采样处理之前的音频数据的语速相同。
在一些实施例中,为了实现变调不变速,可以通过各种变速不变调处理与重采样相结合的方法。即可以在对音频数据进行重采样之后,对音频数据进行变速不变调处理;或者,在对音频数据进行变速不变调处理之后,对音频数据进行重采样,最终目的是使得音频数据的音调改变为期望音调,而语速不变。
步骤S133,基于音调调整后的音频数据和三维动画数据进行音频-视频合成,得到针对于录唱行为的音乐动画视频。
在一种实现方式中,服务器得到针对于录唱行为的音乐动画视频可以通过如下方式:
步骤一:从音频模板中提取出乐理信息,以及从数据库中提取出预设的虚拟人物形象和虚拟装饰对象。
在一些实施例中,从音频模板中提取出乐理信息的过程包括:对音频模板进行的音乐结构(主歌、副歌、主歌、副歌、桥段)分析,确定用于后续音乐动画视频中视觉布局的乐理数据(包括歌词、音调、时间信息、背景音轨等信息)。
在一些实施例中,在数据库中预先存储了由设计师提供了不同风格的多种虚拟人物形象和虚拟装饰对象,可以供用户进行选择和提取。
其中,在数据库中还预先存储了由设计师提供的多种虚拟环境,虚拟环境包括有背景板主色调和滤镜,不同的背景板主色调和滤镜用于表达不同的歌曲情绪(如,“忧郁”、“悲伤”,“欢快”)。
步骤二:基于乐理信息和音调调整后的音频数据,生成针对于录唱行为的音频流数据;以及,基于虚拟人物形象、虚拟装饰对象和三维动画数据,生成针对于录唱行为的视频流数据。
步骤三:对音频流数据和视频流数据进行音频-视频合成,得到语音动画视频。
在一些实施例中,服务器可以将音频流数据和视频流数据按照对应每个音频帧或视频帧的位次,将音频流数据和视频流数据整合为向量长度相同的且对齐的音频流数据和视频流数据。然后,再利用预设的音频-视频合成器,将对齐的音频流数据和视频流数据进行融合,以生成音乐动画视频。
其中,由于具有调节能力大、音视频可塑性强等优点,音视频合成可以采用LPC(线性预测编码,linearpredictive coding)滤波器作为合成器,本申请对具体的合成器不加以限制。
其中,由于加入了向量长度相同的且对齐的音频流数据和视频流数据,因而所述合成得到的音乐动画视频具有与节奏匹配度较高的音频-视频,以及与目标用户进行的舞蹈动作相同的音乐动画视频。
为了更清晰阐明本公开实施例提供的音视频合成方法,以下以一个具体的实施例对该音视频合成方法进行具体说明。在一示例性实施例中,参考图6和图7,图6为根据另一示例性实施例示出的一种音视频合成方法的流程图,图7为根据另一示例性实施例示出的一种音视频合成方法的模块图,该音视频合成方法用于服务器104中,具体包括如下内容:
步骤S21:获取用户在进行唱跳行为时的演唱音频和舞蹈视频。
其中,通过预先准备好的视听捕捉装置(包括麦克风和摄影机)实时的采集用户在进行音乐舞蹈唱跳时的演唱音频和舞蹈视频。
步骤S22:确定演唱音频与模板音频之间的音调差异。
其中,演唱音频与模板音频之间的音调差异可以通过计算两者之间的平均音调差异来确定。或者,演唱音频与模板音频之间的音调差异可以为音调差异序列,即通过计算每一音频帧中两者之间的音调差异来确定音调差异序列。
例如,演唱音频的平均音调为Q,模板音频的平均音调为P。则演唱音频与模板音频之间的音调差异为Q/P。
步骤S23:按照预设的Q/P倍数对将演唱音频进行变速不变调处理,得到第一处理音频。
步骤S24:按照预设的P/Q倍数对将第一处理音频进行重采样处理,得到第二处理音频。
其中,步骤S24和步骤S23之间的顺序可以改变,即步骤S24可以先于步骤S23执行。
其中,变速不变调处理用于将演唱音频的语速进行调整,并且演唱音频的音调不变。
其中,重采样处理用于将第一处理音频的音调和语速进行同步的调整,并且重采样处理和变速不变调处理对音频的语速调整大小相同且方向相反。
例如,演唱音频的原始语速为X,音调为Y;演唱音频在经过变速不变调处理后的语速为Q/P×X,音调为Y;第一处理音频在经过重采样处理后的语速为X,音调为P/Q×Y。其中,经过重采样处理后的语速:X即为演唱音频的原始语速,经过重采样处理后的音调:P/Q×Y即为模板音频的音调。
其中,假设重采样中的重采样因子为P/Q,其中,P为上采样因子,Q为下采样因子。
上采样过程就是往原始信号相邻两点间内插P-1个采样点,这样使得基音周期变为原来的P倍,频谱压缩为原来的1/P倍,时长变为原来的P倍,即基频变为原来的1/P倍,音调降为原来的1/P倍,语速变为原来的1/P倍。
下采样过程就是每隔Q-1个点进行抽取,这样会使得基音周期长度为原来的1/Q倍,频谱扩展为原来的Q倍,时长变为原来的1/Q倍,即基频变为原来的Q倍,音调升为原来的Q倍,语速变为原来的Q倍。
其中,为了实现变调不变速,可以通过各种变速不变调处理与重采样相结合的方法。
变速不变调处理使语速变为原来的P/Q倍,得到输出信号y(n),然后对y(n)进行P/Q倍重采样处理,这样就得到语速正常,音调变为原来Q/P倍的最终输出语音z(n)通过P/Q倍的重采样后,保持播放速率不变,重采样语音语速和音调都变为原来的Q/P倍。
其中,为保证变调的自然性,适应每个用户的音域,本申请只对用户所在八度内进行调整,且变调不变速。
步骤S25:对第二处理音频进行乐理分析,得到关于第二处理音频的乐理数据。
其中,乐理分析包括对第二处理音频进行基于歌词相似度分析的音乐结构分段算法(主歌、副歌、主歌、副歌、桥段),以确定用于约束视觉布局序列的乐理数据(包括歌词、音调、时间信息、背景音轨等信息)。
步骤S26:将第二处理音频和乐理数据进行数据融合,得到音频流数据。
其中,音频流数据为融合有进行音频调整后的演唱音频和关于演唱音频的乐理信息。
步骤S27,根据舞蹈视频,制作出关于用户舞蹈动作的虚拟动画数据。
步骤S28:从数据库中提取出预设的虚拟人模型和虚拟人模型服饰。
其中,在数据库中预先存储了由设计师提供了不同风格的多种虚拟人模型和虚拟人模型服饰,可以供用户选择提取。
其中,在数据库中还预先存储了由设计师提供的多种虚拟视频环境,虚拟视频环境包括有背景板主色调和滤镜,不同的背景板主色调和滤镜用于表达不同的歌曲情绪(如,“忧郁”、“悲伤”,“欢快”)。
步骤S29:将虚拟动画数据、虚拟人模型、虚拟视频环境和虚拟人模型服饰进行数据融合,得到视频流数据。
其中,将关于用户舞蹈动作的虚拟动画数据、虚拟人物的三维模型和虚拟服饰的三维模型进行融合,得到视频流数据。
步骤S30:将音频流数据和视频流数据进行数据融合,得到针对用户唱跳行为的音乐舞蹈动画。
其中,该音乐舞蹈动画可以基于二重唱式或合唱团式进行在线实时播放,并且在播放设备或者播放程序中,用户可以对该音乐舞蹈动画进行弹模评论和打分、对多个用户进行唱跳行为后得到的音乐舞蹈动画进行进行排名。
在一示例性实施例中,参考图8,图8为根据另一示例性实施例示出的一种制作虚拟动画数据步骤的模块图,在步骤S27中,即服务器根据舞蹈视频,制作出关于用户舞蹈动作的虚拟动画数据的过程,具有可以由如下步骤执行:
第一部分:人体姿态相关特征提取:
步骤一,对舞蹈视频中的人体进行检测和追踪,并对舞蹈视频中检测和追踪的人体进行矩形框标注。
其中,可以通过YOLOv5算法来探测人体所在的矩形框。
步骤二,从舞蹈视频中提取出每一视频帧中的矩形标注框图像,并将各张矩形标注框图像输入时序编码器中,得到关于人体图像的特征向量序列。
步骤三,将人体图像的特征向量序列输入人体参数回归器中进行SMPL预测,得到针对每一图像帧的预测人体形态参数。
其中,预测人体形态参数包括预测3D形状参数和预测3D姿态参数。
其中,服务器可以通过VIBE算法进行关于人体的3D形状参数和3D姿态参数的预测。
其中,VIBE算法首先通过卷积神经网络(CNN)、由双向门控制循环单元(bidirectional Gated Recurrent Units,GRU)组成的时序编码器、人体参数回归器(Generator)来进行SMPL预测,得到预测人体形态参数。
其中,VIBE算法训练了一个基于序列的生成对抗网络(Sequence-basedGenerative Adversarial Network),然后,根据给定的一个人体视频,首先训练一个时序模型来预测视频中每一帧的SMPL人体模型参数,同时有一个动作判别器尝试区分预测的和真实的人体姿态序列。这样的话,回归器通过极小化对抗损失倾向于生成合理的人体姿态,同时判别器通过真实的动捕数据学习人体运动的静态、物理和动力学特性。
步骤四,从AMASS数据集中随机提取出相同图像帧张数的真实人体图像,以及真实人体图像对应的真实人体形态参数。
其中,真实人体形态参数包括真实3D形状参数和真实3D姿态参数。
步骤五,将真实3D形状参数和真实3D姿态参数,与对应的预测3D形状参数和预测3D姿态参数进行比对,得到比对差异。
步骤六,根据比对差异,对预测3D形状参数和预测3D姿态参数进行调整,得到人体姿态数据。
其中,服务器通过动作判别器(Motion Discriminatior)将预测的人体形态参数和从AMASS数据集中随机采样的真实人体形态参数作为输入,预测每个预测的人体形态参数的真假标签。然后,再将预测的人体形态参数中属于假标签的参数替换为对应真实人体形态参数中的参数,得到最终的人体姿态数据。
第二部分:面部相关特征提取:
步骤一,对舞蹈视频中的人脸进行检测和追踪,并对舞蹈视频中检测和追踪的人脸进行矩形框标注。
其中,可以通过YOLOv5算法来探测人脸所在的矩形框。
步骤二,从舞蹈视频中提取出每一视频帧中的矩形标注框图像,并对各张矩形标注框图像进行面部关键特征点提取,得到各张矩形标注框图像中的人脸特征向量。
其中,面部关键特征点包括外轮廓点和五官特征点。
作为示例,服务器对矩形标注框图像进行特征定位和特征提取。其中,面部关键特征点提取可以包括提取面部130个重要的特征点,包括48个外轮廓点以及82个五官特征点。
步骤三,对各张矩形标注框图像中的人脸特征向量进行3D人脸重建,得到各张图像重建后的头部姿态参数。
其中,服务器将landmark(面部关键特征点的人脸特征向量)作为输入特征,通过拟合参数化人脸模型(如,face warehouse(人脸数据库)、flame模型等)得到关于对各张图像的3D头部姿态的粗略重建。
其中,人脸重建的结果包含了人脸的Shape(形状)、Pose(姿势)、ID(身份标识)、Expression(表情)、Camera pose(摄像机姿态)等重要的信息。其中,重建后头模的Pose,用于提供精细化的头部旋转驱动。
在一示例性实施例中,参考图9,图9为根据一示例性实施例示出的一种笛卡尔坐标图。其中,重建后头模的Pose可以通过三维空间的右手笛卡尔坐标来表征其精细化的头部旋转驱动。右手笛卡尔坐标即(Yaw、Roll、Pitch),其中,pitch是围绕X轴旋转,也叫做俯仰角;yaw是围绕Y轴旋转,也叫偏航角;roll是围绕Z轴旋转,也叫翻滚角。
步骤四,对各张矩形标注框图像以及对应的人脸特征向量进行融合形变,得到张矩形标注框图像的人脸表情参数。
其中,服务器将landmark、以及人脸部分的原始图像作为输入,预测人脸表情重要的Blend-shape(融合形变)系数,从而实现对表情的精细化捕捉。
其中,融合形变用于将基础形变对象的形状改变成目标形变对象的形状(位置、旋转、缩放);若其融合形变系数越大,则基础形变对象的融合形变程度越大。
例如,现有一张不笑的表情A,需要设计出一张大笑的表情B,可以通过Blend-shape让A表情逐渐过渡到B表情。
步骤六,融合张图像重建后的头部姿态参数与人脸表情参数,得到人脸重建数据。
第三部分:手部相关特征提取:
步骤一,对舞蹈视频中的手部进行检测和追踪,并对舞蹈视频中检测和追踪的手部进行矩形框标注。
其中,可以通过手掌识别模型Blaze Palm来探测手部人脸所在的矩形框。其中,Blaze Palm可用于识别手的整体框架和方向。
其中,Blaze Palm为可识别单帧图像的模型,主要用于识别手掌初始位置,与用于识别面部的Blaze Face模型相似,都对移动端的实时识别进行了优化。Blaze Palm可识别多种不同手掌大小,具备较大的缩放范围(~20倍),还能识别手部遮挡,并且能通过对手臂、躯干或个人特征等的识别来准确定位手部,弥补手部对于高对比度纹理特征的缺失。
步骤二,提取舞蹈视频中的每一视频帧的矩形标注框图像,得到多张手部图像。
步骤三,通过Blaze Palm模型对各张手部图像中的手臂、躯干或个人特征进行识别,以确定手部的位置坐标。
步骤四,通过Land mark模型对手部的位置坐标内的图像进行节点识别,确定手部中的各个立体节点坐标。
其中,Blaze Palm模型可为Land mark模型提供准确建材的手掌图像,大大降低了对旋转、转化和缩放等数据增强方式的依赖,让算法将更多计算能力用在提高预测准确性上。
其中,Land mark模型根据回归的方式,在Blaze Palm识别到的手掌范围内可识别到多个立体节点坐标,它的识别效果足够好,甚至可以识别部分可见或自我遮挡的手部。
步骤五,根据手部中的各个立体节点坐标,确定手部关节的弯曲角度,以得到手部中各个手指的弯曲状态。
其中,服务器将手部中的各个立体节点坐标输入到手势识别模型中,以计算出手部关节的弯曲角度,然后,服务器根据手部关节的弯曲角度,确定手部中各个手指的弯曲状态。
其中,手势识别模型可根据手部关节的弯曲角度识别每根手指的弯曲状态,如:弯曲状态或伸直状态。
步骤六,通过手势识别模型对各手指的弯曲状态进行手势映射,得到各个手部的姿态数据。
其中,手势识别模型将每根手指的弯曲状态映射到的预定义的手势上,并通过这种方法来预测基础的静态手势,以得到各个手部的姿态数据。预定义的静态手势包括例如美国、欧洲和中国三个国家的不同数数手势,以及竖大拇指、握拳、OK、“蜘蛛侠”等手势。
其中,上述的第一部分到第三部分的执行顺序可以为同时进行,也可以以任意的次序执行,这里不做具体限定。
第四部分:虚拟人物驱动模块:
步骤一:将人体姿态数据和各个手部的姿态数据进行融合,得到初始躯体姿态数据。
步骤二:对初始躯体姿态数据进行逆向运动学处理,得到第一躯体姿态数据。
其中,逆向运动学(Inverse Kinematics,IK)处理用于在给定躯体姿态的末端数据的空间位置的前提下,求解躯体中的各个关节的弯曲角度。
其中,在逆向运动学处理过程中,在服务器获得了初始躯体姿态数据中的3D姿态关键点后,通过FK-IK算法计算出3D姿态关键点对应的关键旋转四元数,以进行躯体姿态的渲染引擎驱动。
作为示例,在躯体姿态为脚部触地的情况下,服务器通过FK-IK算法进行IK反向推算,以实现躯体姿态的脚踝到髋关节的各个3D姿态关键点的旋转,从而实现躯体姿态的脚部有“踩”在地上的感觉。
其中,服务器在IK反向推算中加入对3D姿态关键点旋转的限制,使得3D姿态关键点不至于发生不符合人体运动规律的扭曲。同时服务器在IK反向推算中会增加时序平滑策略,进一步降低视觉预测误差带来的影响。
步骤三:对第一躯体姿态数据进行重定向处理,得到第二躯体姿态数据。
其中,当第二躯体姿态数据中关于虚拟人物的骨骼长度与舞蹈视频中的真实用户的骨骼长度存在较大的差异时,服务器通过重定向技术将舞蹈视频中真实用户的骨骼数据映射到虚拟人物的身上,以使虚拟人物的骨骼长度与真实用户的骨骼长度相同。
步骤四:对第二躯体姿态数据和人脸重建数据进行融合,得到关于用户舞蹈动作的虚拟动画数据。
其中,虚拟动画数据为对应于唱跳用户的虚拟人物模型的动画数据,该虚拟人物模型具有关于用户舞蹈动作的躯体姿态特征和人脸特征。
这样,一方面,区别于现有技术的方式,通过目标用户的视频数据中的用户特征数据来生成对应于目标用户的虚拟动画人物的三维动画数据,从而优化了音视频制作的流程,降低了人力和时间成本的消耗;从而另一方面,利用关于虚拟动画人物在模拟目标用户的动作行为时的三维动画数据和目标用户的音频数据来合成对应的音乐动画视频,能够提升制作的音视频的自然度和表现力,从而使得音视频的质量和展示效果更优。
应该理解的是,虽然图2-图9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图9中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。
图10是本申请实施例提供的一种音视频合成装置框图。参照图10,该音视频合成装置10包括:数据获取单元11、特征处理单元12、视频合成单元13。
其中,数据获取单元11,被配置为执行获取目标用户在进行录唱行为时的音频数据和视频数据;所述视频数据中包括所述目标用户的动作行为;
其中,特征处理单元12,被配置为执行提取所述视频数据中所述目标用户的用户特征数据,并基于所述用户特征数据生成三维动画数据;所述用户特征数据表征所述目标用户的外在形态特征;所述三维动画数据表征对应于所述目标用户的虚拟动画人物在模拟所述动作行为时的动画数据;
其中,视频合成单元13,被配置为执行基于所述音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频。
在一些实施例中,所述用户特征数据包括所述目标用户的人体特征、面部特征和手部特征;在所述提取所述视频数据中所述目标用户的用户特征数据,并基于所述用户特征数据生成三维动画数据的方面,该特征处理单元12具体还用于:
在所述视频数据的多个视频帧中,提取所述目标用户的人体特征、面部特征和手部特征;
基于所述人体特征进行三维人体建模,得到针对所述虚拟动画人物的虚拟人体模型;所述虚拟人体模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的人体形态;以及
基于所述面部特征进行三维人脸建模,得到针对所述虚拟动画人物的虚拟人脸模型;所述虚拟人脸模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的面部形态;以及
基于所述手部特征进行三维手部建模,得到针对所述虚拟动画人物的虚拟手部模型;所述虚拟手部模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的手部形态;
对所述虚拟人体模型、所述虚拟人脸模型和所述虚拟手部模型进行模型融合,生成所述三维动画数据。
在一些实施例中,在所述基于所述人体特征进行三维人体建模,得到针对所述虚拟动画人物的虚拟人体模型的方面,该特征处理单元12具体还用于:
基于所述人体特征对待建模的虚拟人体模型进行人体形态预测,得到预测人体形态序列;在所述预测人体形态序列中包括对应于所述多个视频帧的多个预测人体形态参数,所述预测人体形态参数包括预测形状参数和预测姿态参数;
基于预设的真实人体形态序列对所述预测人体形态序列进行调整,得到与所述真实人体形态序列之间的差异程度小于预设程度的修正人体形态序列;
基于修正预测人体形态序列生成所述虚拟人体模型。
在一些实施例中,所述面部特征包括人脸外轮廓特征和人脸五官特征;在所述基于所述面部特征进行三维人脸建模,得到针对所述虚拟动画人物的虚拟人脸模型的方面,该特征处理单元12具体还用于:
基于所述人脸外轮廓特征和所述人脸五官特征进行三维人脸重建,得到人脸形态序列;所述人脸姿态序列表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的人脸形状和人脸姿态;以及
基于所述人脸外轮廓特征和所述人脸五官特征对所述多个视频帧中所述目标用户的人脸图像进行融合形变处理,得到人脸表情序列;所述融合形变处理用于将所述目标用户的人脸表情改变为所述虚拟动画人物的人脸表情;
对所述人脸形态序列和所述人脸表情序列进行融合,并利用融合得到的人脸形态-人脸表情序列生成所述虚拟人脸模型。
在一些实施例中,在所述基于所述手部特征进行三维手部建模,得到针对所述虚拟动画人物的虚拟手部模型的方面,该特征处理单元12具体还用于:
基于所述手部形态特征对所述多个视频帧中所述目标用户的手部图像进行手部节点定位,确定针对所述虚拟动画人物的手部主体坐标和手部关节坐标;
基于所述手部主体坐标和所述手部关节坐标,确定所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的手指弯曲程度;
基于所述手指弯曲程度对所述虚拟动画人物进行手势预测,得到预测手势序列,并利用所述预测手势序列生成所述虚拟手型模型。
在一些实施例中,在所述对所述虚拟人体模型、所述虚拟人脸模型和所述虚拟手部模型进行模型融合,生成所述三维动画数据的方面,该特征处理单元12具体还用于:
对所述虚拟人体模型和所述虚拟手部模型进行模型融合,生成初始形体模型;所述初始形体模型用于表征对应于所述目标用户的虚拟动画人物在模拟所述动作行为时的人体动作和手部动作;
对所述初始形体模型依次进行逆向运动学处理和重定向处理,生成形体运动模型;所述逆向运动学处理用于对所述人体动作和所述手部动作的旋转角度进行调整,所述重定向处理用于对所述初始形体模型中的人体大小和手部大小进行调整;
对所述形体运动模型和所述虚拟人脸模型进行模型融合,生成所述三维动画数据。
在一些实施例中,在所述基于所述音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频的方面,该视频合成单元13具体还用于:
获取所述音频数据对应的音频模板;
基于所述音频模板,对所述音频数据进行音调调整,得到音调调整后的音频数据;
基于所述音调调整后的音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频。
在一些实施例中,在所述基于所述音频模板,对所述音频数据进行音调调整,得到音调调整后的音频数据的方面,该视频合成单元13具体还用于:
基于所述音频模板与所述音频数据之间的音调差异程度,对所述音频数据进行重采样处理,得到重采样后的音频数据;所述音调差异程度与所述重采样处理的采样倍数正相关,所述重采样处理用于调整音频数据的语速和音调,且所述重采样后的音频数据的音调与所述音频模板的音调相同;
对所述重采样后的音频数据进行变速不变调处理,得到变速处理后的音频数据,并将所述变速处理后的音频数据作为所述音调调整后的音频数据;所述变速不变调处理用于对所述重采样后的音频数据的语速进行恢复,使得所述变速处理后的音频数据的语速与所述重采样处理之前的音频数据的语速相同。
在一些实施例中,在所述基于所述音调调整后的音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频的方面,该视频合成单元13具体还用于:
从所述音频模板中提取出乐理信息,以及从数据库中提取出预设的虚拟人物形象和虚拟装饰对象;
基于所述乐理信息和所述音调调整后的音频数据,生成针对于所述录唱行为的音频流数据;以及
基于所述虚拟人物形象、所述虚拟装饰对象和所述三维动画数据,生成针对于所述录唱行为的视频流数据;
对所述音频流数据和所述视频流数据进行音频-视频合成,得到所述语音动画视频。
图11是本申请实施例提供的一种服务器20的框图。例如,服务器20可以为一种电子设备、电子组件或者服务器阵列等等。参照图11,服务器20包括处理器21,其进一步处理器21可以为处理器集合,其可以包括一个或多个处理器,以及服务器20包括由存储器22所代表的存储器资源,其中,存储器22上存储有计算机程序,例如应用程序。在存储器22中存储的计算机程序可以包括一个或一个以上的每一个对应于一组可执行指令的模块。此外,处理器21被配置为执行可执行指令时实现如上述的音视频合成方法。
在一些实施例中,服务器20为电子设备,该电子设备中的计算系统可以运行一个或多个操作系统,包括以上讨论的任何操作系统以及任何商用的服务器操作系统。该服务器20还可以运行各种附加服务器应用和/或中间层应用中的任何一种,包括HTTP(超文本传输协议)服务器、FTP(文件传输协议)服务器、CGI(通用网关界面)服务器、超级服务器、数据库服务器等。示例性数据库服务器包括但不限于可从(国际商业机器)等商购获得的数据库服务器。
在一些实施例中,处理器21通常控制服务器20的整体操作,诸如与显示、数据处理、数据通信和记录操作相关联的操作。处理器21可以包括一个或多个处理器组件来执行计算机程序,以完成上述的方法的全部或部分步骤。此外,处理器组件可以包括一个或多个模块,便于处理器组件和其他组件之间的交互。例如,处理器组件可以包括多媒体模块,以方便利用多媒体组件控制用户服务器20和处理器21之间的交互。
在一些实施例中,处理器21中的处理器组件还可以称为CPU(Central ProcessingUnit,中央处理单元)。处理器组件可能是一种电子芯片,具有信号的处理能力。处理器还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器组件等。另外,处理器组件可以由集成电路芯片共同实现。
在一些实施例中,存储器22被配置为存储各种类型的数据以支持在服务器20的操作。这些数据的示例包括用于在服务器20上操作的任何应用程序或方法的指令、采集数据、消息、图片、视频等。存储器22可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘、光盘或石墨烯存储器。
在一些实施例中,存储器22可以为内存条、TF卡等,可以存储服务器20中的全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器22中。在一些实施例中,它根据处理器指定的位置存入和取出信息。在一些实施例中,有了存储器22,服务器20才有记忆功能,才能保证正常工作。在一些实施例中,服务器20的存储器22按用途可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。
在一些实施例中,服务器20还可以包括:电源组件23被配置为执行服务器20的电源管理,有线或无线网络接口24被配置为将服务器20连接到网络,和输入输出(I/O)接口25。服务器20可以操作基于存储在存储器22的操作系统,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD或类似。
在一些实施例中,电源组件23为服务器20的各种组件提供电力。电源组件23可以包括电源管理系统,一个或多个电源,及其他与为服务器20生成、管理和分配电力相关联的组件。
在一些实施例中,有线或无线网络接口24被配置为便于服务器20和其他设备之间有线或无线方式的通信。服务器20可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。
在一些实施例中,有线或无线网络接口24经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,有线或无线网络接口24还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在一些实施例中,输入输出(I/O)接口25为处理器21和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
图12是本申请实施例提供的一种计算机可读存储介质30的框图。该计算机可读存储介质30上存储有计算机程序31,其中,计算机程序31被处理器执行时实现如上述的音视频合成方法。
在本申请各个实施例中的各功能单元集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在计算机可读存储介质30中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机可读存储介质30在一个计算机程序31中,包括若干指令用以使得一台计算机设备(可以是个人计算机,系统服务器,或者网络设备等)、电子设备(例如MP3、MP4等,也可以是手机、平板电脑、可穿戴设备等智能终端,也可以是台式电脑等)或者处理器(processor)以执行本申请各个实施方式方法的全部或部分步骤。
图13是本申请实施例提供的一种计算机程序产品40的框图。该计算机程序产品40中包括程序指令41,该程序指令41可由服务器20的处理器执行以实现如上述的音视频合成方法。
本领域内的技术人员应明白,本申请的实施例可提供有音视频合成方法、音视频合成装置10、服务器20、计算机可读存储介质30或计算机程序产品40。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机程序指令41(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品40的形式。
本申请是参照根据本申请实施例中音视频合成方法、音视频合成装置10、服务器20、计算机可读存储介质30或计算机程序产品40的流程图和/或方框图来描述的。应理解可由计算机程序产品40实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序产品40到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的程序指令41产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序产品40也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机程序产品40中的程序指令41产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些程序指令41也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的程序指令41提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的,上述的各种方法、装置、电子设备、计算机可读存储介质、计算机程序产品等根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (11)
1.一种音视频合成方法,其特征在于,所述方法包括:
获取目标用户在进行录唱行为时的音频数据和视频数据;所述视频数据中包括所述目标用户的动作行为;
提取所述视频数据中所述目标用户的用户特征数据,并基于所述用户特征数据生成三维动画数据;所述用户特征数据表征所述目标用户的外在形态特征;所述三维动画数据表征对应于所述目标用户的虚拟动画人物在模拟所述动作行为时的动画数据;
基于所述音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频。
2.根据权利要求1所述的方法,其特征在于,所述用户特征数据包括所述目标用户的人体特征、面部特征和手部特征;所述提取所述视频数据中所述目标用户的用户特征数据,并基于所述用户特征数据生成三维动画数据,包括:
在所述视频数据的多个视频帧中,提取所述目标用户的人体特征、面部特征和手部特征;
基于所述人体特征进行三维人体建模,得到针对所述虚拟动画人物的虚拟人体模型;所述虚拟人体模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的人体形态;以及
基于所述面部特征进行三维人脸建模,得到针对所述虚拟动画人物的虚拟人脸模型;所述虚拟人脸模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的面部形态;以及
基于所述手部特征进行三维手部建模,得到针对所述虚拟动画人物的虚拟手部模型;所述虚拟手部模型用于表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的手部形态;
对所述虚拟人体模型、所述虚拟人脸模型和所述虚拟手部模型进行模型融合,生成所述三维动画数据。
3.根据权利要求2所述的方法,其特征在于,所述基于所述人体特征进行三维人体建模,得到针对所述虚拟动画人物的虚拟人体模型,包括:
基于所述人体特征对待建模的虚拟人体模型进行人体形态预测,得到预测人体形态序列;在所述预测人体形态序列中包括对应于所述多个视频帧的多个预测人体形态参数,所述预测人体形态参数包括预测形状参数和预测姿态参数;
基于预设的真实人体形态序列对所述预测人体形态序列进行调整,得到与所述真实人体形态序列之间的差异程度小于预设程度的修正人体形态序列;
基于所述修正预测人体形态序列生成所述虚拟人体模型。
4.根据权利要求2所述的方法,其特征在于,所述面部特征包括人脸外轮廓特征和人脸五官特征;
所述基于所述面部特征进行三维人脸建模,得到针对所述虚拟动画人物的虚拟人脸模型,包括:
基于所述人脸外轮廓特征和所述人脸五官特征进行三维人脸重建,得到人脸形态序列;所述人脸姿态序列表征所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的人脸形状和人脸姿态;以及
基于所述人脸外轮廓特征和所述人脸五官特征对所述多个视频帧中所述目标用户的人脸图像进行融合形变处理,得到人脸表情序列;所述融合形变处理用于将所述目标用户的人脸表情改变为所述虚拟动画人物的人脸表情;
对所述人脸形态序列和所述人脸表情序列进行融合,并利用融合得到的人脸形态-人脸表情序列生成所述虚拟人脸模型。
5.根据权利要求2所述的方法,其特征在于,所述基于所述手部特征进行三维手部建模,得到针对所述虚拟动画人物的虚拟手部模型,包括:
基于所述手部形态特征对所述多个视频帧中所述目标用户的手部图像进行手部节点定位,确定针对所述虚拟动画人物的手部主体坐标和手部关节坐标;
基于所述手部主体坐标和所述手部关节坐标,确定所述虚拟动画人物在模拟所述多个视频帧中的所述动作行为时的手指弯曲程度;
基于所述手指弯曲程度对所述虚拟动画人物进行手势预测,得到预测手势序列,并利用所述预测手势序列生成所述虚拟手型模型。
6.根据权利要求2所述的方法,其特征在于,所述对所述虚拟人体模型、所述虚拟人脸模型和所述虚拟手部模型进行模型融合,生成所述三维动画数据,包括:
对所述虚拟人体模型和所述虚拟手部模型进行模型融合,生成初始形体模型;所述初始形体模型用于表征对应于所述目标用户的虚拟动画人物在模拟所述动作行为时的人体动作和手部动作;
对所述初始形体模型依次进行逆向运动学处理和重定向处理,生成形体运动模型;所述逆向运动学处理用于对所述人体动作和所述手部动作的旋转角度进行调整,所述重定向处理用于对所述初始形体模型中的人体大小和手部大小进行调整;
对所述形体运动模型和所述虚拟人脸模型进行模型融合,生成所述三维动画数据。
7.根据权利要求1所述的方法,其特征在于,所述基于所述音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频,包括:
获取所述音频数据对应的音频模板;
基于所述音频模板,对所述音频数据进行音调调整,得到音调调整后的音频数据;
基于所述音调调整后的音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频。
8.根据权利要求7所述的方法,其特征在于,所述基于所述音频模板,对所述音频数据进行音调调整,得到音调调整后的音频数据,包括:
基于所述音频模板与所述音频数据之间的音调差异程度,对所述音频数据进行重采样处理,得到重采样后的音频数据;所述音调差异程度与所述重采样处理的采样倍数正相关,所述重采样处理用于调整音频数据的语速和音调,且所述重采样后的音频数据的音调与所述音频模板的音调相同;
对所述重采样后的音频数据进行变速不变调处理,得到变速处理后的音频数据,并将所述变速处理后的音频数据作为所述音调调整后的音频数据;所述变速不变调处理用于对所述重采样后的音频数据的语速进行恢复,使得所述变速处理后的音频数据的语速与所述重采样处理之前的音频数据的语速相同。
9.根据权利要求7所述的方法,其特征在于,所述基于所述音调调整后的音频数据和所述三维动画数据进行音频-视频合成,得到针对于所述录唱行为的音乐动画视频,包括:
从所述音频模板中提取出乐理信息,以及从数据库中提取出预设的虚拟人物形象和虚拟装饰对象;
基于所述乐理信息和所述音调调整后的音频数据,生成针对于所述录唱行为的音频流数据;以及
基于所述虚拟人物形象、所述虚拟装饰对象和所述三维动画数据,生成针对于所述录唱行为的视频流数据;
对所述音频流数据和所述视频流数据进行音频-视频合成,得到所述语音动画视频。
10.一种服务器,其特征在于,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如权利要求1至9中任一项所述的音视频合成方法。
11.一种计算机可读存储介质,所述计算机可读存储介质中包括计算机程序,其特征在于,当所述计算机程序由服务器的处理器执行时,使得所述服务器能够执行如权利要求1至9中任一项所述的音视频合成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310430441.4A CN116528016A (zh) | 2023-04-13 | 2023-04-13 | 音视频合成方法、服务器和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310430441.4A CN116528016A (zh) | 2023-04-13 | 2023-04-13 | 音视频合成方法、服务器和可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116528016A true CN116528016A (zh) | 2023-08-01 |
Family
ID=87393404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310430441.4A Pending CN116528016A (zh) | 2023-04-13 | 2023-04-13 | 音视频合成方法、服务器和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116528016A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866802A (zh) * | 2022-04-14 | 2022-08-05 | 青岛海尔科技有限公司 | 视频流的发送方法和装置、存储介质及电子装置 |
CN117012198A (zh) * | 2023-09-28 | 2023-11-07 | 中影年年(北京)文化传媒有限公司 | 基于人工智能的语音交互方法及系统 |
-
2023
- 2023-04-13 CN CN202310430441.4A patent/CN116528016A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866802A (zh) * | 2022-04-14 | 2022-08-05 | 青岛海尔科技有限公司 | 视频流的发送方法和装置、存储介质及电子装置 |
CN114866802B (zh) * | 2022-04-14 | 2024-04-19 | 青岛海尔科技有限公司 | 视频流的发送方法和装置、存储介质及电子装置 |
CN117012198A (zh) * | 2023-09-28 | 2023-11-07 | 中影年年(北京)文化传媒有限公司 | 基于人工智能的语音交互方法及系统 |
CN117012198B (zh) * | 2023-09-28 | 2023-12-19 | 中影年年(北京)文化传媒有限公司 | 基于人工智能的语音交互方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shlizerman et al. | Audio to body dynamics | |
Smith et al. | Efficient neural networks for real-time motion style transfer | |
Wheatland et al. | State of the art in hand and finger modeling and animation | |
Li et al. | Motion texture: a two-level statistical model for character motion synthesis | |
Aristidou et al. | Rhythm is a dancer: Music-driven motion synthesis with global structure | |
Egges et al. | Personalised real-time idle motion synthesis | |
CN116528016A (zh) | 音视频合成方法、服务器和可读存储介质 | |
CN110390704A (zh) | 图像处理方法、装置、终端设备及存储介质 | |
Jörg et al. | Data-driven finger motion synthesis for gesturing characters | |
Wang et al. | 3D human motion editing and synthesis: A survey | |
Willett et al. | Pose2Pose: Pose selection and transfer for 2D character animation | |
CN114419205B (zh) | 虚拟数字人的驱动方法及位姿获取模型的训练方法 | |
Wang et al. | Alignnet: A unifying approach to audio-visual alignment | |
CN114144790A (zh) | 具有三维骨架正则化和表示性身体姿势的个性化语音到视频 | |
CN111986295B (zh) | 舞蹈合成方法、装置及电子设备 | |
US11887232B2 (en) | Enhanced system for generation of facial models and animation | |
Mousas et al. | Real-time performance-driven finger motion synthesis | |
KR20120038616A (ko) | 마커리스 실감형 증강현실 제공 방법 및 시스템 | |
US20230177755A1 (en) | Predicting facial expressions using character motion states | |
Chan et al. | Human motion classification using 2D stick-model matching regression coefficients | |
Wang et al. | Expression dynamic capture and 3D animation generation method based on deep learning | |
Wang et al. | Talking faces: Audio-to-video face generation | |
Ofli et al. | An audio-driven dancing avatar | |
Cai et al. | An automatic music-driven folk dance movements generation method based on sequence-to-sequence network | |
Yang et al. | An interactive facial expression generation system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |