OpenSim Inverse kinematics equations

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
POST REPLY
User avatar
Radhakrishnan Vignesh
Posts: 104
Joined: Tue Jun 01, 2021 8:09 am

OpenSim Inverse kinematics equations

Post by Radhakrishnan Vignesh » Wed Jul 12, 2023 8:25 am

Hello,

I would like to understand the implementation of OpenSim's Inverse kinematics. I have looked at the doxygen page :https://simtk.org/api_docs/opensim/api_ ... ml#details and the SimBody theory manual, but I do not completely understand how the optimisation function works and the code is hard to follow.

1) While the optimisation function, reduction of marker errors subject to constraints, is easy to understand, how does this work with mobilizers? Since the joint definition works on providing degrees of freedom through mobilizers, where does this fall in the optimisation function?

2) Are there any rigid body constraints? For example, ensuring segment length is fixed, joint centre location etc? How is this accounted for and where in the code can this be studied? Does scaling of the model play into rigid body constraints?

3) If I use a free joint between all models (indicating 6DoF), marker residual should be almost 0. Or would any other constraints (such as the potential rigid body constraint) affect this?

Thanks
Vignesh

User avatar
Nicos Haralabidis
Posts: 193
Joined: Tue Aug 16, 2016 1:46 am

Re: OpenSim Inverse kinematics equations

Post by Nicos Haralabidis » Fri Jul 14, 2023 9:58 am

Hello Vignesh,

1) To help with this question I recommend diving into this article by Seth et al. - Minimal formulation of joint motion for biomechanisms, section 2 especially.

2) I believe the segment lengths would remain the same, but translation between two bodies could occur if you modelled translational motion. For example, the hip joint is usually modelled as a ball-and-socket (3 rotations) but you could also model the 3 translations - in which case the femur would not only rotate but also translate with respect to the pelvis.

3) For this question I'd recommend the third chapter of Research Methods in Biomechanics by Robertson et al. - it provides a great overview of the benefits/cons of different approaches to kinematics modelling/pose estimation. One thing to remember is that although you may have zero marker residuals with 6 DoFs the translations to achieve this may not be realistic.

Hope that helps!

Nicos

User avatar
Radhakrishnan Vignesh
Posts: 104
Joined: Tue Jun 01, 2021 8:09 am

Re: OpenSim Inverse kinematics equations

Post by Radhakrishnan Vignesh » Fri Jul 14, 2023 10:05 am

Hello Nicos,

Thanks. I shall look them up. I have one additional question:

1) Does the algorithm ensure that the calculated leg segment remains constant at all frames? For example, if translations are not allowed, to ensure that segment length remains constant, would be greater residual and joint angle error?
I would like to check if the optimisation matches the algorithms proposed in papers like "Global sensitivity analysis of the joint kinematics during gait to the parameters of a lower limb model" or "kinematic analysis of over-determinate biomechanicsl system"

Thanks,
Vignesh

POST REPLY