Page 1 of 1

Kinematic data

Posted: Mon Apr 22, 2024 3:57 pm
by yanxx
Hi,
Hope everything is going well with you.

When I analyzed the hip joint angle during a crouch gait, I encountered a discrepancy of 40 degrees between two calculations. Using the locally deployed OpenCap with IKCoordinateTask, where there are no restrictions on the hip, knee, and ankle joints, but the lumbar spine settings are maintained, the maximum flexion angle of the hip joint reached 80 degrees. However, when I calculated the same marker data through OpenSim with no restrictions in IKCoordinate, the maximum flexion angle was only 40 degrees.

I suspect this result is related to the methods used to calculate kinematics. Could you provide more information about this?

Best regards,
Xiaoxia

Re: Kinematic data

Posted: Wed Apr 24, 2024 10:16 am
by antoinefalisse
Hey,

Do you mean IKCoordinateTasks during scaling? https://github.com/stanfordnmbl/opencap ... #L620-L729

If the subject cannot perform a neutral pose that meets the IKCoordinateTasks, then I would suggest to re-do scaling after removing these tasks from the scaling setup.

here is our setup for IK: https://github.com/stanfordnmbl/opencap ... tup_IK.xml

Let us know if it helps,
Antoine

Re: Kinematic data

Posted: Thu Apr 25, 2024 2:43 pm
by yanxx
Hi Antoine,

Thanks for your reply.

I've noticed that in the setup for inverse kinematics (IK), the weights assigned to various MarkerTasks vary from 5 to 30. Could you please explain the reasons for these differences? What factors should be considered when resetting the IK setup?

Moreover, I can't find methods on how to calculate joint angles based on markers on OpenCap. Could you help me with this?

Best regards,
Xiaoxia

Re: Kinematic data

Posted: Mon Apr 29, 2024 11:54 am
by antoinefalisse
Hey,

The marker weights generally depend on how much you "trust" these markers. The higher the more importance that marker has in the least-squares problem. Markers positioned on anatomical markers typically have higher weights.

We run inverse kinematics to compute joint angles: https://github.com/stanfordnmbl/opencap ... in.py#L494

Some of these steps are well documented in the OpenSim documentation: https://opensimconfluence.atlassian.net ... er+s+Guide

Best,
Antoine