Octpus
Octpus
MuseTalk is one of video dubbing techniques, like wav2lip and video-retalking. These methods are primarily designed for human faces and may not perform well with animals or highly animated images.
> 基于MuseTalk项目介绍,实现了一版训练代码。然后与train_codes分支进行对比,大体上是一致。然后也是基于约350条hdtf数据,训练出的模型合成效果出现了如下两个明显问题: (1)上半张脸和下半张脸,不协调,能看出色调不一致。(有些case还是比较明显的) (2)视频下半张脸抖动特别明显,视频播放看出是不连贯的。 请问,问题出现在什么地方?有什么建议吗?怎么才能复现当前项目开源的模型效果 > > 原始视频: > > out.mp4 > 合成后视频: https://github.com/TMElyralab/MuseTalk/assets/23277618/df55aa88-c007-454d-92fc-9c0dc6d51504 想确认一下,是只用了HDTF数据集训练的吗?如果掺杂一些质量不好的数据集,可能会导致问题。 可以参照这里的代码下载HDTF。 https://github.com/universome/HDTF/blob/main/download.py 以及训练之前要将视频重采样到25FPS。
多轮对话的数据再在训练的时候,是只有最后一个回复会被用来计算loss吗?
目前的模型确实会把人脸平滑掉,目前没有参数可以调节这个。
> 是不是在这里下采样时丢失的: crop_frame = cv2.resize(crop_frame,(256,256),interpolation = cv2.INTER_LANCZOS4) #raymond > > 不下采样,怎么做,必须下采样吗? 这里是因为模型的输入必须是一个固定的size,在目前开源的模型中是256X256。
> > > 是不是在这里下采样时丢失的: crop_frame = cv2.resize(crop_frame,(256,256),interpolation = cv2.INTER_LANCZOS4) #raymond > > > 不下采样,怎么做,必须下采样吗? > > > > > > 这里是因为模型的输入必须是一个固定的size,在目前开源的模型中是256X256。 > > 谢谢,大佬回复,我尝试了各种图像增强方法,没有办法恢复丢失的信息,是否可以使用一种下采样保留图像细节的算法,有什么建议? 人脸处理过程中丢失细节特征,如胡子等问题,这确实是目前通用口型生成模型的一个普遍现象。造成这一问题的原因是模型在生成过程会针对训练集中的数据拟合出一个平滑的中间状态,对于细节特征的捕捉+保持能力有限。 您可以考虑选择使用定制化的口型生成模型,来追求更好的细节保持。
MuseTalk是一种inpating生成嘴型的方案,这一类方案生成的嘴型与数据强相关。 我们的训练数据只有真人,所以无法动物的口型生成。即使用在动物身上,大概率会给动物生成一个像人的嘴型。 可以考虑试SadTalker/ LivePortrait这一类基于warping的方案。
看起来bbox用的默认参数0,嘴张得有些大。 在这个形象上bbox用-7效果更佳。
在musetalk模型中,可以通过调节bbox参数来微调嘴巴的张开幅度。您可以先试下效果。 较大范围的改动,当前模型还不支持。
这个应该属于另一个研究领域了。 可以考虑从音频识别的角度把视频分段。 但是影视剧场景中,经常会出现A说话但是画面中的人却是B,这种场景似乎很难自动识别。