https://github.com/guanjz20/StyleSync_PyTorch
这个是号称最强的模型. 说百分之99拟合真人. 我们赶紧来学习.
首先权重和训练是不开源的. 我也只能尽可能的根据发布的代码来看能学到什么.
先说结论: 整体跟wav2lip百分之90相似. 都是视频—>图片—>抽取人脸landmark->每个图片根据音频生成新的图片->ffmpeg把图片变成视频即可.
==========首先我们看inference.py
parser.add_argument(‘–img_size’, type=int, default=256)======这里跟wav2lip 的96比变大了. 所以结果demo看得出来明显比wav2lip生成的分辨率高很多 face, affine_matrix = restorer.align_warp_face(img.copy(), lmks3=lmk3_, smooth=True) ==========这里进行了人脸变形. face = cv2.resize(face, (args.img_size, args.img_size), interpolation=cv2.INTER_CUBIC)然后人脸resize 然后他还使用了mask face_masked = face.copy() * img_mask 对人脸以外部分进行了保护. pred = model(img_batch, mel_batch) # 预测新脸 pred = cv2.resize(pred, (x2 – x1, y2 – y1), interpolation=cv2.INTER_CUBIC) # resize回去 out_img = restorer.restore_img(img, pred, affine_matrix) # 逆仿射把人脸变回去. #最后ffmpeg写入视频. 总结确实比wav2lip 加入很多细节处理. 预处理和后处理!!!!!可以借鉴!!!!!!!!!! ================stylesync_model.py 下面我们分析这个文件 audioConv2d audio也用了conv计算.加入了一些噪音好像 mask_n_noise. 后续的有时间看论文再找找有用的吸收洗手. ======================结束======================