SyncTalk是一种基于NeRF的高同步性说话人合成方法,专门针对提升说话人视频真实感和同步性而设计,克服了以往在同步性方面遇到的挑战,仅使用5分钟的说话视频即可生成高真实感的人物形象。目前该工作已入选CVPR 2024
神经辐射场(NeRF)是一种神经网络,可以从部分二维图像中重建复杂的三维场景。各种模拟、游戏、媒体和物联网(IoT)应用程序都需要三维图像,以使数字交互更加逼真和准确。NeRF 可学习特定场景的几何形状、物体和角度。然后,它可以从新的视角呈现逼真的三维视图,自动生成合成数据以填补空白。
baidu网盘下载
https://pan.baidu.com/share/init ... PHjrRg&pwd=6666
双击inference.bat即可运行演示。
首次运行"inference.bat"时,需要自动下载几个文件,如果联网下载过慢,可以执行如下操作:
将checkpoints目录下的文件移动到C:\Users\Administrator\.cache\torch\hub\checkpoints目录
例如:C:\Users\Administrator\.cache\torch\hub\checkpoints\alexnet-owt-7be5be79.pth
注意:Administrator是windows的用户名,这里改成自己的用户即可。
看效果
SyncTalk3d数字人
定制自己的模型
更新代码:
SyncTalk项目地址:https://github.com/ZiqiaoPeng/SyncTalk
数据预处理
1、准备视频
视频要求,帧速率 :25FPS,帧宽高:512*512,每帧画面必须有说话的人,视频长度建议在4分02秒内,多于此时间会报错,需要调整代码。
如果你视频中声音质量比较差的话,效果大概率不会好。声音质量比较差指的是:1)存在难以忽略的噪声。2)在空旷的房间里录制的视频有回音。3)视频人声不清楚。建议录制视频时候使用外接麦克风,不用拍摄设备自带的麦克风。
视频需要高分辨率,低分辨率的视频训练出来效果较差。
视频放入目录 SyncTalk-Windows\face-SyncTalk\SyncTalk\data\<ID>\<ID>.mp4
预处理命令:
python data_utils/process.py data/<ID>/<ID>.mp4 --asr ave
预处理一共分10个步骤,可以单独运行每一步:
例如单独运行第三步:
python data_utils/process.py data/meimei/meimei.mp4 --task 3
每一步都会生成相应文件,如下:
1.生成aud.wav
2.生成ori_imgs
3.生成parsing
4.生成bc.jpg
5.生成face_mask、torso_imgs
6.生成ori_imgs/*.lms
7.生成track_params.pt
8.生成flow_result、flow_list.txt、keypts.jpg、keypoints.txt、bundle_adjustment.pt、rigid_flow.jpg、track_xys.npy
9.生成bs.npy
10.生成transforms_train.json、transforms_val.json
可以使用最新版的AD-NeRF做预处理,AD_NeRF官网地址:https://github.com/YudongGuo/AD-NeRF/tree/master
开始训练
python.exe data_utils/process.py data/Mymay/Mymay.mp4 --asr ave
头部训练:
python main.py data/vrhm/ --workspace trial_vrhm/ -O --iters 200000
唇部微调
python main.py data/vrhm/ --workspace trial_vrhm/ -O --iters 500000 --finetune_lips
身体部分训练
python main.py data/vrhm/ --workspace trial_vrhm_torso/ -O --torso --head_ckpt <trial_ID>/checkpoints/npg_xxx.pth> --iters 200000 --preload 2
参考:
SyncTalk模型的安装、训练和推理方法-CSDN博客
什么是 NeRF?– 神经辐射场简介 – AWS
高真实感的人物形象SyncTalk
https://www.jinshuangshi.com/forum.php?mod=viewthread&tid=885
(出处: 金双石科技)