MuseTalk:具有 潜在空间修复 的 实时高质量唇部同步
作者:Yue Zhang , Minhao Liu, Zhaokang Chen, Bin Wu†, Yingjie He, Chao Zhan, Wenjiang Zhou (*Equal Contribution, †Corresponding Author, benbinwu@tencent.com)
由 腾讯音乐娱乐Lyra Lab 发布。
ai浮世绘 : 4090 MuseTalk实测 | 来看看开源方案距离实时唇纹合成还有多远
https://www.bilibili.com/video/BV13T42117uM/
我们介绍MuseTalk,一种实时的高质量对口型模型(NVIDIA特斯拉V100上的30fps+)。MuseTalk可以应用于输入视频,例如,由MuseV生成的,作为一个完整的虚拟人解决方案。
🆕更新:我们很高兴地宣布MusePose 已经发布。MusePose是一个图像到视频生成框架,用于控制信号下的虚拟人,如姿势。与MuseV和MuseTalk一起,我们希望社区能够加入我们,朝着能够生成具有全身运动和交互能力的end2end虚拟人的愿景前进。
MuseTalk是一个实时高质量的音频驱动唇同步模型,在ft-mse-vae的潜在空间中训练
256 x 256。
MuseTalk在潜在空间中进行训练,图像由冻结的VAE编码。音频是由一个冻结的 whisper-tiny 模型编码的。
生成网络的架构借鉴了 stable-diffusion-v1-4,其中音频嵌入通过交叉关注融合到图像嵌入中。
请注意,尽管我们使用与 Stable Diffusion, 非常相似的架构,但MuseTalk的不同之处在于它不是扩散模型。相反,MuseTalk通过一步在潜在空间中修复来运行。
详见:https://github.com/TMElyralab/MuseTalk?tab=readme-ov-file#cases
感谢第三方集成,让大家安装使用更加方便,我们也希望大家注意,我们没有验证、维护、更新第三方,具体结果请参考本项目。
ComfyUI : https://github.com/chaojie/ComfyUI-MuseTalk
要准备Python环境并安装其他软件包,如opencv、扩散器、mmcv等,请按照以下步骤操作:
我们推荐python版本>=3.10和cuda版本=11.7。然后构建环境如下:
pip install -r requirements.txt pip install --no-cache-dir -U openmim mim install mmengine mim install "mmcv>=2.0.1" mim install "mmdet>=3.1.0" mim install "mmpose>=1.1.0" 下载 ffmpeg-static 和
export FFMPEG_PATH=/path/to/ffmpeg 例如:
export FFMPEG_PATH=/musetalk/ffmpeg-4.4-amd64-static 您可以手动下载权重,如下所示:
最后,这些权重应按以下models组织:
./models/ ├── musetalk │ └── musetalk.json │ └── pytorch_model.bin ├── dwpose │ └── dw-ll_ucoco_384.pth ├── face-parse-bisent │ ├── 79999_iter.pth │ └── resnet18-5c106cde.pth ├── sd-vae-ft-mse │ ├── config.json │ └── diffusion_pytorch_model.bin └── whisper └── tiny.pt 在这里,我们提供了推理脚本。
python -m scripts.inference --inference_config configs/inference/test.yaml configs/inect/test. yaml 是推理配置文件的路径,包括 video_path 和 audio_path。video_path 应该是视频文件、图像文件或图像目录。
建议您输入25fps的视频,与训练模型时使用的fps相同。如果您的视频远低于25fps,建议您应用插帧或直接使用 ffmpeg 将视频转换为25fps。
🔎我们发现掩膜的上界对张口有重要影响。因此,为了控制掩膜区域,我们建议使用bbox_shift参数。正值(向下半部分移动)增加张口,而负值(向上半部分移动)减少张口。
您可以首先使用默认配置运行以获取可调整的值范围,然后在此范围内重新运行脚本。
例如,在Xinying Sun的情况下,运行默认配置后,它显示可调值愤怒是[-9,9]。然后,为了减少嘴张开,我们将值设置为-7。
python -m scripts.inference --inference_config configs/inference/test.yaml --bbox_shift -7 📌更多技术细节可以在bbox_shift中找到。
作为虚拟人生成的完整解决方案,建议您首先应用MuseV通过引用此生成视频(文本到视频、图像到视频或姿势到视频)。帧插值建议增加帧率。然后,您可以使用MuseTalk通过引用此生成唇同步视频。
在这里,我们提供了推理脚本。该脚本首先应用必要的预处理,如人脸检测、人脸解析和VAE预先编码。在推理过程中,只涉及UNet和VAE解码器,这使得MuseTalk是实时的。
python -m scripts.realtime_inference --inference_config configs/inference/realtime.yaml --batch_size 4 configs/inference/realtime.yaml 是实时推理配置文件的路径,包括preparation、video_path、bbox_shift和audio_clips。
realtime.yaml中将preparation设置为True以准备新avatar的材料。(如果bbox_shift发生了变化,您还需要重新准备材料。)avatar 将使用从 audio_clips 中选择的音频剪辑 来生成视频。Inferring using: data/audio/yongen.wav preparation设置为False 并运行此脚本,如果您想使用相同的头像生成更多视频。python -m scripts.realtime_inference --inference_config configs/inference/realtime.yaml --skip_save_images 感谢开源!
@article{musetalk, title={MuseTalk: Real-Time High Quality Lip Synchorization with Latent Space Inpainting}, author={Zhang, Yue and Liu, Minhao and Chen, Zhaokang and Wu, Bin and He, Yingjie and Zhan, Chao and Zhou, Wenjiang}, journal={arxiv}, year={2024} } code:MuseTalk的代码是在MIT许可证下发布的。学术和商业用途没有限制。model:经过训练的模型可用于任何目的,甚至商业用途。other opensource model:使用的其他开源模型必须符合其许可,如whisper、ft-mse-vae、dwpose、S3FD等。AIGC:这个项目致力于对人工智能驱动的视频生成领域产生积极影响。用户被授予使用这个工具创建视频的自由,但他们应该遵守当地法律并负责任地使用它。开发人员不承担用户潜在滥用的任何责任。2024-08-03(六)
上一篇:最简单的方式解决android studio 模拟器无法联网的问题
下一篇:为什么相比直接使用new和std::shared_ptr构造函数,make_shared在内存分配和管理方面更为高效。