nghorbani / soma

Solving Optical MoCap Automatically
Other
185 stars 36 forks source link

Question about marker layout file #20

Open aric0103 opened 1 year ago

aric0103 commented 1 year ago

Hi,

Thank you for your excellent work! I would like to convert our labeled mocap data to SMPL format using SOMA. When I run Solving Bodies with MoSh++ part in Run SOMA On MoCap Point Cloud Data. The layout file "SOMA_unlabeled_mpc_smplx.json" is created. Both subject 1 and 2 got the same JSON file, and I also found a fine-tuned layout file at support_files/marker_layouts/SOMA/soma_subject1/clap_001_smplx_finetuned.json, which has different vertices numbers(vids). I have some questions about the layout JSON files:

  1. Are all the subjects using the same layout files?
  2. How did you get the fine-tuned layout or how to update the vertices id of every key point label in the JSON file? Is there any rules to find more accurate vids of the different joint labels?

Thank you!

GaigeY commented 10 months ago

I guess the target of SOMA is to give the correct labels of the point markers, so the initially created .json files are not important. The SOMA scripts would label the markers automatically (into xxx_finetuned.json), following the vid configure of MoSh++.

aric0103 commented 10 months ago

I found some labels were not correct using SOMA, so I decided to manually label the marker names and run just Mosh++. I am using the Optitrack system and the label names are not compatible with the name in vid configure of Mosh++, do you know how to convert the label names?

GaigeY commented 10 months ago

I found some labels were not correct using SOMA, so I decided to manually label the marker names and run just Mosh++. I am using the Optitrack system and the label names are not compatible with the name in vid configure of Mosh++, do you know how to convert the label names?

Of course. I debuged the MoSh++ line by line, and found that the MoSh++ support 199 marker locations for SMPL. You can find the configure file at moshpp.marker_layout.marker_vids.py, which offered the label names and the corresponding vids.

You can check if marker_vids module support your marker configuration. If it doesn't support, maybe you can set a marker vid manually? I'm also curious how it works. If you could archieve any progress, I would be glad to hear from you.