客户需求:

使用AI/数字人技术,让公司CEO和历史人物对话。
参考样式:

初步计划:

开始制作前,根据已知的工具/网站计划如下:
人物形象生成:使用的AI画图生成静态图片(Midjourney、stable diffusion、ChatGPT等)。
CEO声音:根据提供的CEO日常声音素材,训练出模型之后进行推理,文字转语音生成CEO的声音音色(开源项目 Bert-Vits2)。
历史人物的声音:使用网络声音素材训练,或者使用文字转语音技术生成想要的音频(微软的 Azure AI ,Speech Studio中的有声内容创作)。
视频合成:使用其他网站工具,根据素材生成数字人,或者把生成好的音频和照片导入进去,对口型生成视频(Heygen、D-ID、Runway、stable diffusion的动画插件)。

具体实施过程:

CEO人物形象:
stable diffusion对人物的生成比较依赖模型,且对本地配置要求高,未尝试。选定使用Midjourney生成。
Midjourney中发送CEO照片进去,进行创作生成,但是在没有提示词的情况下和真人差距比较大,甚至性别都不对,需要多次尝试添加关键词,才有比较接近的效果。
但是甲方看过之后反馈和CEO不像,后改成Midjourney生图+Photoshop修图,根据照片素材五官轮廓特征去人为修图。最终形象通过。
历史人物形象:
三个历史人物,其中有两位比较出名,网上也有明确的照片,使用提示词+Photoshop修图,成功通过。
另外一位历史人物网络检索之后只有极少的信息,没有找到图片信息。并且Midjourney和ChatGPT也没办法直接生成这个人的形象,最后是生成对应时期画风的环境和符合对应职业风格的人物,最终甲方通过。

CEO声音:

由于最初不确定使用中文对话还是英文对话,需要两手准备。
使用 Bert-Vits2 项目 ,按照步骤切分、标注、重采样等,然后进行训练推理。
初步使用CEO的采访素材(9分钟左右),训练之后生成的声音可以音色接近,但是断句有问题,会话赶话,有种喘不过来气的感觉。并且语气音调没办法控制,例如该一声的地方读成了四声。
后面换了一些素材,好了一点,还是很明显。多次尝试也不能生成理想中的状态。只能一句一句单独生成,然后再去拼接,手动调整气口。如果有读音问题,尝试换一个同音字再试试。多次尝试之后甲方还是不太满意,只能在训练推理走不通之后更换思路。
又尝试使用变声的开源方案RVC。先根据声音素材训练模型,然后让其他人根据文案录制音频,再上传音频推理变声为CEO音色的语音。
使用音频素材9分钟左右的,3060 Ti 显卡训练一小时半,尝试发现效果不错,解决了语气和断句的问题(语气声调取决于其他人的录音,如果不行可以多次尝试更换情绪录音),最终通过。
该方案优势是可以控制语气声调,但是在音色上只能做到“像”,转换之后的音频听得多了之后还是会觉得不太像。
【需要注意的点】原始素材的质量会严重影响最终的效果,会影响语气。需要用接近实际使用的语气训练。
踩过的坑1:
  • Bert-Vits2 训练之后只能进行中文的推理,英文和数字会直接勿略掉(可以用中文同音字凑合,但是效果不好)。
  • Bert-Vits2 原项目操作麻烦,B站会有一些分享一键整合包的,但是分支很多,文件很大,文档也不全,会有各种报错,需要多尝试。
  • Bert-Vits2 对电脑配置要求高,3060 Ti 显卡训练需要半天左右才可以训练好第一个模型。可以按时按量租用GPU云服务器训练,例如阿里云、腾讯云,可以是Windows Sever系统,有可视化界面,或者AutoDL之类的,使用的ipynb笔记本的形式,没有图形界面,只能按步操作。4090、V100、T4之类的服务器可以在配置完环境之后半小时左右跑完训练,只需要把模型文件下载即可。【提示1】Windows服务器需要手动安装显卡驱动才行。【提示2】按时按量的可以选择停机不收费,能节省很多钱。
尝试过的另外的方案:小蜗:可视化界面,可以多个语音一起训练,但是同样素材量的情况下,一股子日本味儿完全没法用,也可能是素材量不够。
历史人物的声音:
初步给的需求是历史人物说中文,后又确定历史人物说英文。
开始的时候试图用语音训练的形式,但是根据提供的历史人物名称搜索发现,没有找到对应的视频音频素材(人物太早了)。发现训练推理的方案走不通之后又尝试文本生语音的方案,尝试找一个符合年龄的声音。
  • 微软的 Azure Speech Studio(免费)有多种语言可以选择,也是比较自然一点的方案,但是音色不多(需要找三个),特别是历史人物又年龄比较大,需要中老年的音色。
  • 魔音工坊(有免费额度和免费音色,超出之后收费,VIP音色需要收费),音色比较多,效果还不错。多次尝试之后选出了三个音色,手动调整气口之后,甲方通过。
尝试过的其他方案:
  • 把国外纪录片中的声音扒下来,人生分离去掉背景音乐之后使用 Bert-Vits2 训练模拟。但是机器感比较强,还不能说中文。尝试 Bert-Vits2 训练英文的素材失败,可能需要使用原版开源项目才可以(未尝试)。
  • audiobox,可以根据描述词生成不同音色的声音,但是不太能控制,随机性比较大。如果克隆声音音色需要录制一句特定的话,放弃。
  • https://huggingface.co/spaces/coqui/xtts(免费),但是和原始音色关系不大, 有种机器感觉, 优势是可以说不用的语言
  • Heygen视频翻译(收费) ,上传视频之后可以翻译成其他语言,并且对上口型。但是翻译之后的内容属于机翻,不是很确定。如果尝试heygen的数字人,则需要录一段授权视频(没办法提供)。
  • 百度飞浆(有一定免费积分):音色不够像,机器感和电流声比较明显

视频合成:

根据需求,需要把做好的照片配合音频动起来,对上口型。
    • Heygen(收费):
导入照片、导入其他地方生成的音频(也可以系统内生成,内置Speech Studio),提交之后等待生成。
可调整参数:面部风格、风格,其他没有更多参数。
收费情况:30秒对应0.5积分,不足30秒按30秒计算。
最终效果:头在动的时候会扭曲变形,还挺严重。有些地方还会抽搐。如果是没有说话的画面,则会非常不可控,嘴型抽风。(可以加一些话,让他说完话再闭嘴,会好一点点。用的时候切掉不需要的内容)
暂时无法在飞书文档外展示此内容
    • D-ID(收费):
Heygen扭曲变形严重之后尝试了D-ID的方案,发现对口型不如Heygen自然(相对的),会比较夸张。
但是头在运动的时候没有变形的那么厉害,各有优缺。
其中一个历史人物伽利略有长胡子,D-ID生成的视频会有明显的拼接感(相对的)。
D-ID可调参数为零,上传照片、上传视频,没有风格选择。
    • Runway(免费+收费):
尝试了Runway把背景动起来,再给合到一起,但是效果不佳,最终没用。
踩过的坑:
  • Heygen国内网络不可直连,但是挂梯子又提示注册不了。
  • 解决方案:在阿里云租一个按时按量的境外的有图形界面的 Windows sever 系统的服务器,远程过去,用服务器操作注册。便宜的一小时不到1块钱,但是就是卡。

未尝试的方案:

  • AI换脸
  • SD动画、SD对口型、SD生成人物形象
-----------END-----------
未经允许,禁止转载