Skip to content

Fix kinematic tree bug that breaks SMPLH loading#80

Open
MarilynKeller wants to merge 50 commits into
eth-ait:mainfrom
MarilynKeller:main
Open

Fix kinematic tree bug that breaks SMPLH loading#80
MarilynKeller wants to merge 50 commits into
eth-ait:mainfrom
MarilynKeller:main

Conversation

@MarilynKeller

@MarilynKeller MarilynKeller commented Aug 15, 2025

Copy link
Copy Markdown
Contributor

In the current version, the SMPLH model is not loading anymore. This is caused by a change hat was made in the MANO commit:
https://github.com/MarilynKeller/aitviewer/blob/8fb6d4661303579ef04b3bf63ac907dbaecff2ff/aitviewer/renderables/smpl.py#L162C71-L162C86

In the previous version, only the body pose parameters would be passed here, not the hands. skeleton only contains the body skeleton, hence the crash.

I reverted this change such that only the root orientation and the body pose are passed.

The propose fix does not change the behavior with MANO.

Also, note that I am on python 3.12.3 and it is running with "moderngl-window==2.4.6". Setup.py currently limits the python version to < 3.11.

@MarilynKeller

Copy link
Copy Markdown
Contributor Author

It seems like the workflow is failing because Python 3.7 is not available on Ubuntu 24.04, which is used by ubuntu-latest runners. I believe the workflow should be upgraded to at least python 3.8. (which my last commit do)

@ptrvilya

Copy link
Copy Markdown

Hey @MarilynKeller I've also faced the same issue, and I tried to fix it with this. It is similar in essence, but also fixes the skeleton loading and keeps the option to use smplx or smplh model with articulated hands.

@MarilynKeller

Copy link
Copy Markdown
Contributor Author

I think your version results in displaying the SMPLH joints for each hand joint right? I was hesitant to do so as well as the result visual is a bit cluttered. Maybe ideal would be an additional parameter to the sequence to control or not to display the hands.

@kaufManu kaufManu self-requested a review April 27, 2026 21:05
Comment thread aitviewer/utils/mocap.py

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MarilynKeller Is the license comment at the very top a remnant or should it stay? If it can be changed, can we change it to be compatible with the remaining files that you are checking in?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @kaufManu, you can change it to be compatible with the remaining files.

@kaufManu

kaufManu commented Apr 27, 2026

Copy link
Copy Markdown
Contributor

@MarilynKeller Thank you so much for the PR! I would like to merge it as it contains many useful features, however, I noticed that some of your contributions come with custom license, mostly the new files and utilities for SKEL etc. For aitviewer to remain cleanly MIT-licensed, we'd require all contributions to be under MIT. Could you clarify whether your contributions can be licensed under MIT? This would be the easiest way forward. If this is not possible, aitviewer would essentially become MIT-licensed with a star, i.e. the MIT license does not apply to some specific files, which I'd like to avoid as it gets more complicated for users to decide whether they can use the repo.

One possible solution would be to just merge the portion of your aitviewer-skel fork that can be MIT. Hopefully this makes the next release of aitviewer compatible with your fork. I.e., your fork would be kind of an easy-to-install extension to aitviewer that has its own licensing.

Let me know how you'd like to proceed. If not everything can be MIT, could you list which files can be, so that I can adjust the merge accordingly.

Thanks!

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

Successfully merging this pull request may close these issues.

4 participants