NetEase-GameAI / Face2FaceRHO

The Official PyTorch Implementation for Face2Face^ρ (ECCV2022)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

您好,我准备训练256*256的模型,但是在数据处理上有一些问题如下

Luh1124 opened this issue · comments

1.首先fitting代码里面的PoseLandmarkExtractor函数下有一个参数:
image
tx_scale是否需要修改为256/2000?2000是怎么得到的呢?
2.src/external/data下的pose_transform_config.json的物理含义是什么呢?这些是怎么得到的?
{
"scale_transform": 4122.399989645386,
"tx_transform": 0.2582781138863169,
"ty_transform": -0.26074984122168304
}

感谢作者的工作!

首先要明确一点儿,为什么会出现这些奇怪的参数,本质原因是我在训练模型的时候用的3DMM模型不是DECA所基于的FLAME模型,而是我们自己的模型。所以在运行的时候,要把DECA拟合的参数变换到我们这个模型下面,所以会存在一些奇怪的参数。。。这些参数我只在512的分辨率上对齐了,其他的分辨率我没有试。至于你说的问题1和问题2,我觉得这些参数是不用改的,你只要保证你通过这种方式获取到的特征点,你在投影回原图上位置是对的就行。至于headpose其实没有必要完全理解他的物理含义,因为我们那个模型headpose定义的方式有点儿奇怪。你可以直接用DECA提取出来的应该也没有问题。

好的~了解了,如果我是自己训练,只需要定义好相关的landmarks和headpose即可,3DMM模型也不限于DECA、3DDFA或者deep3d。headpose也可以不是六维(如您的3个旋转角,相对于中性脸的二维位移和缩放),也可以加一维z维度的偏移吧。对于landmarks,也可以是68个关键点或者更多?

是的

好的,十分感谢!

好的~了解了,如果我是自己训练,只需要定义好相关的landmarks和headpose即可,3DMM模型也不限于DECA、3DDFA或者deep3d。headpose也可以不是六维(如您的3个旋转角,相对于中性脸的二维位移和缩放),也可以加一维z维度的偏移吧。对于landmarks,也可以是68个关键点或者更多?

您好,我看到您在尝试使用256分辨率训练,目前我想使用3ddfa模型训练,其中产生的landmark(68点)和headpose(3个旋转角,相对于中性脸的二维位移和缩放)可以直接导入到face2face项目中去吗?