Anyway to determine STA metrics in OpenSim

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
User avatar
Mohammadreza Rezaie
Posts: 366
Joined: Fri Nov 24, 2017 12:48 am

Re: Anyway to determine STA metrics in OpenSim

Post by Mohammadreza Rezaie » Sun Apr 23, 2023 2:31 am

Yes, it changes relative to global reference frame (ground) during motion at each time frame. For example, you can get the 3*3 rotation matrix of pelvis in global reference frame:

Code: Select all

model.getBodySet().get('pelvis').getTransformInGround(state).R().asMat33()
or as angle:

Code: Select all

model.getBodySet().get('pelvis').getRotationInGround(state).convertRotationToBodyFixedXYZ()
and you will see that it changes over IK time.

Similarly, the position of markers changes in global reference frame:

Code: Select all

marker.getLocationInGround(state)
But it is steady in local reference frame.

Is that what you are asking?

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

Re: Anyway to determine STA metrics in OpenSim

Post by Radhakrishnan Vignesh » Sun Apr 23, 2023 3:14 am

Hi,

Yes thank you. I wanted to determine how much each marker moves in their respective body reference frame (definition of STA) but in OpenSim it remains the same ( I assume due to rigid body assumption).

Is there a way to check which transformation matrix is bad? For example, residual error is higher for one marker compared to another. Is there a way to relate it to how much the skin moves or how much the segment moves ?

POST REPLY