元宇宙概念在时下极为火热,其中虚拟人则被认为是现实与元宇宙交互的重要途径,而且很多虚拟人已经活跃在各种平台上,如AYAYI被阿里聘请为头号数字人员工,并发行了中秋元宇宙的NFT。抖音上的虚拟明星“柳夜熙”,粉丝量则已达到近900万人,总点赞量3500多万(图1)。
当然虚拟人的制作并不简单,涉及了人工智能、大数据,还要有超高性能的计算机,不过随着各种和元宇宙相关的开源技术的普及,现在借助百度提供的“飞桨”平台,任何人都可以轻松制作出属于自己的“虚拟人”,让普通人也可以在短视频平台上一展风采!
虚拟人制作原理
本文介绍虚拟人制作项目是基于网友制作的开源项目(地址github.com/JiehangXie/PaddleBoBo),我们只要在“飞桨”平台注册一个用户,然后克隆该项目并运行即可。它的原理是先生成一个虚拟人视频(视频已经通过深度学习完成面部表情迁移),然后将合成的语音和视频合成,最终生成可以朗读任何文章的虚拟人播报视频(图2)。它可以用在短视频平台上的视频解说、课程讲解、新闻播报等场景中,用来替代真人出镜。
生成默认虚拟人
1.注册用户
这个项目可以借助“飞桨”平台免费提供的虚拟环境运行和生成虚拟人,因此大家首先要登录aistudio.baidu.com/aistudio/index,按提示注册一个用户。
2.运行项目
登录“飞桨”平台后打开“项目”页面,接着输入“paddlebobo”搜索,找到其中的“PaddleBoBo,有手就能用飞桨造一个虚拟主播(人)”项目并点击打开。接着在打开的页面点击“运行一下”,在弹出的页面选择“V100 32GB”运行环境(图3)。
小提示:注册“飞桨”平台并运行项目后,平台每天会赠送8个点的免费算力(每天都有),足够大家体验和生成虚拟人操作了。
3.使用环境
按提示启动选择的环境后,在虚拟运行环境中依次运行“1.克隆项目”、“2.安装PaddleGAN和PaddleSpeech依赖”、“3.静态图像转虚拟主播动画”,在第三步完成后确保页面提示“已成功创建虚拟人,文件保存在.file/input/test.mp4”,同时展开左侧窗格路径,在指定文件夹中看到“test.mp4”文件(图4)。
切换到“4.让虚拟主播说话”,在“--text”后的代码输入需要转换为语音的文本,可以将自己需要让主播说的内容都放置在这段代码中,文本不要分行(可以预先将文本复制到Word,然后使用查找替换将段落标记替换为空),最后点击“运行”,运行成功后会在左侧窗格根目录下可以看到“out.mp4”,这个就是最终生成的虚拟人视频(图5)。
4.查看视频效果
在左侧窗格选中“out.mp4”,右击选择“下载”,将下载到本地后就可以使用系统自带的播放器播放了,可以看到生成的虚拟人会自动朗读在图4的“--text”后设置的文本转语音的内容(图6)。
生成自定义主播形象
当然在这个讲究个性的时代,使用千篇一律的虚拟人主播形象和没有个性的机器语音,显然无法满足大家的需求。接下来就介绍如何对项目代码进行稍加更改,让它可以生成更有个性地虚拟人。
1.制作虚拟人图片
接着再打开,按提示将下载好的头像上传到该网站,并进行抠图处理,接着将抠图下载到本地备用(图8)。
打开PPT新建一个空白版式的幻灯片,接着根据自己的需要添加合适的背景。同时准备一张主持人照片(可以使用上面方法抠图后插入PPT),然后将图8处理好的照片叠加到原来主持人的头部上方,生成自己的虚拟人形象和背景图,最后将PPT导出为“test.png”备用(图9)。当然使用同样的方法,大家可以制作更多的虚拟人形象,每个虚拟人都是世界上并不存在的AI人像,而且每个虚拟形象都可以制作得美轮美奂。
2.生成新的虚拟人视频
返回图4所示的窗口,在左侧窗格将原来“test.png”重命名为“test1.png”。接着点击“上传”,将上述准备好的照片上传到“/home/aistudio/PaddleBoBo/file/input”,最后同图4操作,再次创建虚拟人视频备用。
3.生成语音
项目默认使用的是百度的语音转换服务,转换的语音机器化的痕迹比较明显。如果想让自己声音更有磁性,可以自行使用“智影”(https://zenvideo.qq.com/)的语音转换服务。
打开上述网站后点击“新建文本配音”,然后在将需要转换的视频脚本文本粘贴到文本框。这里可以根据实际需要对文本进行设置,比如在长句之间插入停顿,或者点击多音字设置正确的读音,还可以为句子指定读音人、音效、语速、背景音乐等,完成后点击“生成音频素材”,将语音文件下载为“1001.mp3”备用(图10)。这样即使你的普通话再不标准,都可以生成字正腔圆的解说文本语音了。
返回图4所示窗口,在左侧窗格展开“/home/aistudio/PaddleBoBo/file/output/audio”。然后将“1001.mp3”上传到该目录下备用。在图4的左侧窗格继续展开“/home/aistudio/PaddleBoBo/general_demo.py”,在右侧窗格将第7行删除,将第17行代码改为“wavfile = '.file/output/audio/1001.mp3'”,即使用自己生成的语音文件合成到视频中(图11)。接着在返回图5所示的窗口,将“--text”代码删除,其他同步运行即可生成新的虚拟人视频了。
为视频添加字幕
启动“剪映”后新建项目,导入“out.mp4”视频到下方的时间线。继续切换到“文本智能字幕开始匹配”,在打开的字幕窗口按下Ctrl+V快捷键粘贴上述复制的字幕,这样每条字幕的长度是上图设置的字数,点击“开始匹配”(图13)。完成字幕的匹配后,最后点击“导出”将视频导出保存即可。
OK,完成上述的设置后,一条自制虚拟人短视频就制作完成了(图14)。怎么样,这就是我们制作的虚拟人了,这下大家不要再为自己形象不够出众无法真人出镜而烦恼,也不要再为自己普通话不够标准开不了口发愁,因为虚拟人可以代你出镜,并且帮你朗读各种文本。从此,你在网上就是美少女、俊小伙的形象了。赶快去制作属于你的虚拟代言人吧。