Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用额外bvh文件进行retargeting #213

Open
Mrcaoyu1 opened this issue Oct 13, 2022 · 6 comments
Open

使用额外bvh文件进行retargeting #213

Mrcaoyu1 opened this issue Oct 13, 2022 · 6 comments

Comments

@Mrcaoyu1
Copy link

李老师:
您好,感谢你们在重定向方面开源了这么棒的工作,受益匪浅。我在你们的数据集上实验均没有问题,但是使用自己的数据集bvh进行训练时发现效果不佳,我用的数据集是Trinity Speech-Gesture dataset,在blender中打开具有这样的特点:正常动作面朝的方向与Tpose相反,如下图
image
image

针对该数据集新定义了简化后的骨骼
corps_name_trinity = ['Hips', "LeftUpLeg", "LeftLeg", "LeftFoot", "LeftForeFoot", "LeftToeBase", "RightUpLeg", "RightLeg", "RightFoot", "RightForeFoot", "RightToeBase", 'Spine', 'Spine1', 'Spine2', "Spine3", 'Neck', 'Neck1', 'Head', 'LeftShoulder', 'LeftArm', 'LeftForeArm', 'LeftHand', 'RightShoulder', 'RightArm', 'RightForeArm', 'RightHand'] 共26个
并以此进行preprocess,构建完数据集后将其作为groupA,原数据集中xxx-m依然作为groupB,训练了1w多epoch,测试后发现骨骼的朝向好像有问题,导致整个骨骼很扭曲,但是大致动作能看出与输入动作的一致性
image
image
希望李老师能给个大概思路,可能是哪里存在问题,谢谢~期待您的回复

@PeizhuoLi
Copy link
Collaborator

您好,根据你的描述我猜测这里的问题有可能是你所使用的数据集在“正面”上的定义和Mixamo不太一样导致的。也许可以尝试一下对这个问题进行修正过后(即将正常动作的正面也换到T-pose的正面)再进行retargeting。

@Mrcaoyu1
Copy link
Author

您好,根据你的描述我猜测这里的问题有可能是你所使用的数据集在“正面”上的定义和Mixamo不太一样导致的。也许可以尝试一下对这个问题进行修正过后(即将正常动作的正面也换到T-pose的正面)再进行retargeting。

感谢回复~ 我把数据集修正了一下重新训练模型产出的结果确实正常了很多
我还有个困扰很久的问题,我注意到您的数据集是从mixamo上下载的fbx再转成bvh,我在尝试时发现将fbx转成bvh后,骨骼中关节的局部坐标系轴向都发生了变化,如下图
image
这样一来模型最终重定向出来的某个角色的骨骼轴向跟bvh的轴向一致,但是不同于该角色原始fbx中的关节轴向,那么如何跟角色的蒙皮对应呢,比如您这个重定向gif,我理解用的是您生成的bvh文件,但是这个蒙皮是怎么出现的呢,还望指教

@PeizhuoLi
Copy link
Collaborator

您好,这个章节介绍了生成蒙皮的脚本

@PerhapsThat
Copy link

如果只有一个静态的bvh文件,骨骼是T-pose姿态 怎么得到正确的mean 和 var 尼 ,我用preprocess.py跑出来的数据,去跑预训练模型,得到的结果 是错误的
image

@PeizhuoLi
Copy link
Collaborator

目前没有mean和var是用不了预训练模型的

@zzk88862
Copy link

如果只有一个静态的bvh文件,骨骼是T-pose姿态 怎么得到正确的mean 和 var 尼 ,我用preprocess.py跑出来的数据,去跑预训练模型,得到的结果 是错误的 image

你好,很认真看了你的问题,我也有同样的疑问,
1、如果只是一个静态的bvh文件,跑preprocess.py会直接报错,你也有这样的问题吗
2、静态的bvh文件,你跑通了demo.py 中的retargting过程吗

期待你的回复

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants