本周主要实现了英语口语助手数字人模型的实现和优化
我选用的是CVPR2023的SadTalker模型,论文地址为:
https://arxiv.org/abs/2211.12194
项目地址为
https://github.com/OpenTalker/SadTalker
在HuggingFace上也有演示,不过资源排的较紧张,在线演示成功率比较低
首先下载模型:
bash scripts/download_models.sh
直接用命令行演示:
python inference.py --driven_audio <audio.wav> \
--source_image <video.mp4 or picture.png> \
--enhancer gfpgan
其中增加了enhancer选项能以提高生成的视频的质量,这里采用了对抗生成网络GFGAN进行视频清晰度增强,但是会增加推理的时间,实际在Intern Studio上跑运行显存不大,可以接受
推理时间有较大部分花在了为图像提取特征的阶段,所以后续考虑使用固定的输入人脸图像,提前提取特征,避免每次读取;同时可以考虑只保存最终视频输出,不保存中间结果,提高性能。
运行结果展示:
这里结合上周实现的微软TTS,将以下文本转为音频再转为视频:
Absolutely. Take traffic as an example. The most common transport facility used to be buses. It could be really crowded sometimes since people didn't have any other options. However, today, BRT and subway systems have made people's lives easier than ever.
原始输入图片:
这里选择没有用到对抗生成网络增强视频质量,输出视频:
SadTalker模型生成的视频