Fictionarry / TalkingGaussian

[ECCV'24] TalkingGaussian: Structure-Persistent 3D Talking Head Synthesis via Gaussian Splatting
https://fictionarry.github.io/TalkingGaussian/
261 stars 33 forks source link

牙齿区域检测不准问题 #4

Open yulj21 opened 4 months ago

yulj21 commented 4 months ago

牙齿区域检测不准(多联通区域),导致生成结果出现跳变怪异的像素。这块是否可以改成上嘴唇+下嘴唇+牙齿区域。

Fictionarry commented 4 months ago

您好,我们有时在一些特定的训练素材上也会看到这种小像素点,根据观察推测是因为在训练末期时由于Gaussian的随机分裂而生成了一些未除干净的杂点,不完全是mask的问题,通过从某个checkpoint开始(比如40000步)多训几遍face通常能够解决掉。后续会看看能否通过手动裁剪去掉嘴部区域的点

anliyuan commented 4 months ago

您好,我们有时在一些特定的训练素材上也会看到这种小像素点,根据观察推测是因为在训练末期时由于Gaussian的随机分裂而生成了一些未除干净的杂点,不完全是mask的问题,通过从某个checkpoint开始(比如40000步)多训几遍face通常能够解决掉。后续会看看能否通过手动裁剪去掉嘴部区域的点

face训练到50000步然后接着训练fuse,重复几遍是吗?

Fictionarry commented 4 months ago

face训练到50000步然后接着训练fuse,重复几遍是吗?

根据我们自己的经验看,少量噪声点的出现是偶然的,训完face可以通过tensorboard看一下是否还有这种噪声点,没有的话就没必要重新训了。如果一直有,或者有很多噪声点的话就要考虑是不是素材或者mask的问题

anliyuan commented 4 months ago

face训练到50000步然后接着训练fuse,重复几遍是吗?

根据我们自己的经验看,少量噪声点的出现是偶然的,训完face可以通过tensorboard看一下是否还有这种噪声点,没有的话就没必要重新训了。如果一直有,或者有很多噪声点的话就要考虑是不是素材或者mask的问题

目前我把face训练的步数设置到10w,感觉这种情况有所减轻,但还是出现了一些。

Fictionarry commented 4 months ago

我们更新了一个版本,您可以尝试一下是否可以缓解问题

yulj21 commented 4 months ago

版本更新后,嘴唇区域还是出现杂点

yulj21 commented 4 months ago

1 图中嘴巴内部的杂点很怪异,嘴巴内部为啥会出现杂点呢@Fictionarry

Fictionarry commented 4 months ago

图中嘴巴内部的杂点很怪异,嘴巴内部为啥会出现杂点呢

杂点主要是在最后lpips细化的过程里产生的,你放的这种程度的杂点我感觉做一些很简单的后处理就能去掉,或者可以试着把下面这行的lpips的系数调小或者直接改成0 https://github.com/Fictionarry/TalkingGaussian/blob/447724eb3901510325d253edfa3f52cafe42a2e7/train_face.py#L217

yulj21 commented 4 months ago

我先改系数试下吧

yulj21 commented 4 months ago

图中嘴巴内部的杂点很怪异,嘴巴内部为啥会出现杂点呢

杂点主要是在最后lpips细化的过程里产生的,你放的这种程度的杂点我感觉做一些很简单的后处理就能去掉,或者可以试着把下面这行的lpips的系数调小或者直接改成0

https://github.com/Fictionarry/TalkingGaussian/blob/447724eb3901510325d253edfa3f52cafe42a2e7/train_face.py#L217

改完后,嘴巴内部的杂点没有了 但是还有个问题 看下图 2 这个应该是train_fuse这块出问题了,单独看out_face.mp4和out_mouth.mp4没有问题,合成以后出现这种状况

Fictionarry commented 4 months ago

改完后,嘴巴内部的杂点没有了 但是还有个问题 看下图 这个应该是train_fuse这块出问题了,单独看out_face.mp4和out_mouth.mp4没有问题,合成以后出现这种状况

应该是face和mouth之间有空隙,可以试一下用新传的这版synthesize里的--dilate,看看能否解决

yulj21 commented 4 months ago

改完后,嘴巴内部的杂点没有了 但是还有个问题 看下图 这个应该是train_fuse这块出问题了,单独看out_face.mp4和out_mouth.mp4没有问题,合成以后出现这种状况

应该是face和mouth之间有空隙,可以试一下用新传的这版synthesize里的--dilate,看看能否解决

解决了,感谢感谢

zhouzhenneng commented 4 months ago

@Fictionarry 我试了一下synthesize里的--dilate参数,有好转,但是没有完全消失,下面是加了参数前后两个视频对比, 有什么方法可以完全消除空隙: without --dilate

https://github.com/user-attachments/assets/b98da429-8656-4374-b37e-2766473bb4e4

with --dilate

https://github.com/user-attachments/assets/4e5b56ee-79fb-4ad5-9ee5-d8a1b8e5c9ff

decajcd commented 2 months ago

请问这个解决了吗

decajcd commented 2 months ago

@Fictionarry 我试了一下synthesize里的--dilate参数,有好转,但是没有完全消失,下面是加了参数前后两个视频对比, 有什么方法可以完全消除空隙: without --dilate

without--dilate.mp4 with --dilate

with--dilate.mp4

请问这个解决了吗