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

Adding dog model? #7

Open
nro-bot opened this issue Dec 6, 2019 · 3 comments
Open

Adding dog model? #7

nro-bot opened this issue Dec 6, 2019 · 3 comments
Labels
enhancement New feature or request

Comments

@nro-bot
Copy link

nro-bot commented Dec 6, 2019

Hi!
The work in here sounds specific to the humanoid model, I'm wondering how difficult it would be to add the same functionality for the dog model? a BVHtoDogDeepMimic if you will.

https://github.com/xbpeng/DeepMimic/blob/master/data/characters/dog3d.txt

Thanks for the work on this repo, it actually really helped me understand how the DeepMimic repository works as well.

@nro-bot nro-bot added the enhancement New feature or request label Dec 6, 2019
@BartMoyaers
Copy link
Owner

Hi nouyang, writing the conversion code for the humanoid model took me quite a bit of hacking. (And still doesn't work 100% correctly, although it is usable for some cases.)

I was just looking at the DeepMimic "Lion" model:
DeepinScreenshot_select-area_20191217231907

It seems to have a lot of joints around the spine and the tail area. That might make it harder. But perhaps I just didn't come up with a correct conversion algorithm yet.

Out of curiosity: do you have example BVH files for the DeepMimic "Lion" or do you plan to make them yourself?

@nro-bot
Copy link
Author

nro-bot commented Dec 25, 2019

@BartMoyaers Hi!
Ah, hm, do you think the "dog" skeleton actually corresponds to the lion? I assumed it was something different, but admit I haven't run DeepMimic with that flag yet.

I planned on using the BVH files available from Mode Adaptive Neural Netowrk Quadraped Motion Control paper that the authors kindly shared. I imagine the number of joints and everything don't match, so honestly wasn't sure where to start; I was reading through this blog post.

To be honest, I even had difficulty playing the BVH file and relied on something online, and it's sub-optimal because I can't scroll through the mocap and just have to wait, if you have tips on that much appreciated.

I don't have DeepMimic running at the moment (this was for a class that ended) but if I have time I think my next step will be to run the

python DeepMimic.py --arg_file args/play_motion_dog3d_args.txt
python DeepMimic.py --arg_file args/run_dog3d_canter_args.txt 
(or pace or trot instead of canter)

and see what the DeepMimic dog model looks like.

(For what it's worth, the lion model comes from https://zivadynamics.com/promos/free where it is complementary mocap with purchase of software) .

It's a bit discouraging / impressive to hear that it took a lot of hacking to do this format conversion, my overall project goal had been to do something similar to SkillsFromVideo ( paper ) but with videos of dogs doing tricks instead of with human acrobats. I was going to use DeepLabCut, so I'd have another! conversion step from that dataformat to BVH in the first place... All really confusing since I'm new to the 3D animation world!

@BartMoyaers
Copy link
Owner

To be honest, I even had difficulty playing the BVH file and relied on something online, and it's sub-optimal because I can't scroll through the mocap and just have to wait, if you have tips on that much appreciated.

Blender can play BVH files really well out of the box, and allows scrolling through frame-by-frame.

I planned on using the BVH files available from Mode Adaptive Neural Netowrk Quadraped Motion Control paper that the authors kindly shared. I imagine the number of joints and everything don't match, so honestly wasn't sure where to start; I was reading through this blog post.

His work is super interesting and I plan to look into it more myself in the future. If the amount of joints don't match though, I recon that it will be quite hard to convert the files to fit the Lion model. Maybe it would make sense to just make a new model that corresponds to the amount of joints in the dog BVH files!
(For this purpose you could check out pybullet/bullet3 here. They have a re-implementation of DeepMimic that allows for models to be loaded in using the URDF format.)

I was going to use DeepLabCut, so I'd have another! conversion step from that dataformat to BVH in the first place... All really confusing since I'm new to the 3D animation world!

Everyone is a beginner at some point! (Including myself. ;) ) Best of luck!

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

No branches or pull requests

2 participants