Different results from Force Plate GRF prediction and MOCAP Force plate file

Hi everyone,

I want to use AnyBody to calculate the muscle force and Joint moments from subjects walking at preferred speed using different shoes on a treadmill.

After setting up the necessary marker protocol and defining other parameters, using TLEM 2.0 and data from our lab's force plate, i was able to get results which have similar profiles with already published papers for a successful gait cycle for kinetics and kinematic studies.

The challenge is that i am unable to get successful gait cycle where a foot doesn't contact two force plates at instances of foot contact for some trials and subjects. With this challenge, it became imperative to rely on the Force plate GRF prediction, giving that i have seen a previous video where it was demonstrated to be acurate, upon a colleague's suggestion.

I followed the steps in the tutorial, set up my Normal direction as Z, according to our laboratory coordinate system. I decided to compare the results of the predicted forces with results of my simulation with our MOCAP Force plate data, then i realized differences in the graph profile.

I tried to upload my folder as zip, but it appears that new users are not allowed to. Therefore, i have uploaded the file on my OneDrive account for easy access. Here is the link: https://1drv.ms/u/s!Ag-WNImfEu3LhGA6aQ3ASw0Os0Fw?e=51n0e8

The bulk of the differences are seen at the initial contact phase. for example, the period beyond time 30.2 seems to be same. However, it is different before 30.2 (for Hip flexion moment).

I will attach screenshots here for your reference and quick look.

Does anyone know why it is so and how can i fix it?

Thank you for your anticipated suggestions.


1 Like

Hi Kachi,

Welcome to the forum,

I think there could different reason to this behavior for a start please see
GRF prediction trouble shooting · AnyBody/support Wiki (github.com)

Please ensure the distance limits are correctly adjusted. Secondly since this is a treadmill you will need to adjust the ground speed to be the speed of the band. This can be done with in the file setting up the GRF prediction here you can set the property " GroundVelocity " to a vector with the speed in x,y,z....

So the code may look like this.

  FootPlateConditionalContact GRF_Prediction_Right(
  NODES_FOLDER = FootNodes,
  PLATE_BASE_FRAME = Main.EnvironmentModel.GlobalRef) =
    CreateFootContactNodes25 FootNodes(foot_ref = 
    Main.HumanModel.BodyModel.Right.Leg.Seg.Foot) = {};
    // Additional force plate settings
    Settings = 
      LimitDistHigh = 0.015; // Vertical height
GroundVelocity ={1,0,0};  //example 1 m/s in x direction 

Hope it helps otherwise please write again.

Best regards

1 Like

Hi Søren,

Thank you for your response.

I implemented your suggestion, using Z as my normal direction according to our Lab's coordinate system. It improved the profile of the hip flexion moment. as shown below.

However, other outcomes like Knee flexion moment, hip abduction moment e.t.c. are not similar. I'd share a picture of the knee flexion moment here for your reference.

I used:
LimitDistHigh = 0.03
LimitVelHigh = 1.2;

My trial speed was 1.2m/s.

Main.Studies.InverseDynamicStudy.InverseDynamics.Criterion.Power = 2;
Main.ModelSetup.LabSpecificData.LowPassFilterSettings.MarkerFilterCutOffFrequency = 7;
Main.ModelSetup.LabSpecificData.LowPassFilterSettings.MarkerFilterOrder = 4;

I have also adjusted checked cut of frequencies at 6 and 15 without good improvement.

what do you think might have gone wrong?

Hi Kachi,

Did you adjust the groundspeed vector? in the sample code i showed earlier i used a sample vector of {1,0,0} this needs adjustment.

Please also look at the coloring of the spheres on the feet contacts... they change color when they are in contact, check that this looks correct.

Best regards

This topic was automatically closed 125 days after the last reply. New replies are no longer allowed.