Error Encountered while Using addbiomechanics for IK Generation

Upload mocap files and get an optimally scaled OpenSim model and IK back in minutes. Share your data with the community. Browse and download biomechanics data. Hosted by Stanford University.

Available at https://addbiomechanics.org
POST REPLY
User avatar
Sheeba Davis
Posts: 16
Joined: Wed Oct 27, 2021 5:21 am

Error Encountered while Using addbiomechanics for IK Generation

Post by Sheeba Davis » Tue Oct 03, 2023 3:45 pm

Hi,

I recently used addbiomechanics to generate IK for my walking data using a custom model (modified Rajagopal model) and i encountered the following error. It appears that the model I used may not be compatible with the algorithm. Can you please provide guidance on how to resolve this issue?


Thanks in advance,
Sheeba
Processing Server Encountered Error
['/app/../engine/engine.py', '/tmp/tmpi90subt4/', 'Pilot_test_1', 'https://app.addbiomechanics.org/data/30 ... ot_test_1/']
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
WARNING! Creating a WeldJoint as an intermediate (non-root) joint. This will cause the gradient computations to run with slower algorithms. If you find a way to remove this WeldJoint, things should run faster.
Reading new GRF column prefixSuffix: ground_1_
Reading new GRF column prefixSuffix: ground_2_
Checking trial "Walk_Speed_1.0_markers_Wen" for non-zero segments...
Reading new GRF column prefixSuffix: ground_1_
Reading new GRF column prefixSuffix: ground_2_
Checking trial "Walk_Speed_1.3_markers_Wen" for non-zero segments...
Reading new GRF column prefixSuffix: ground_1_
Reading new GRF column prefixSuffix: ground_2_
Checking trial "Walk_Speed_1.5_markers_Wen" for non-zero segments...
Reading new GRF column prefixSuffix: ground_1_
Reading new GRF column prefixSuffix: ground_2_
Checking trial "Walk_Speed_1.8_markers_Wen" for non-zero segments...
Fitting trials ['Walk_Speed_1.0_markers_Wen', 'Walk_Speed_1.3_markers_Wen', 'Walk_Speed_1.5_markers_Wen', 'Walk_Speed_1.8_markers_Wen']
Checking and repairing marker data quality on trial Walk_Speed_1.0_markers_Wen. This can take a while, depending on trial length...
Checking and repairing marker data quality on trial Walk_Speed_1.3_markers_Wen. This can take a while, depending on trial length...
Checking and repairing marker data quality on trial Walk_Speed_1.5_markers_Wen. This can take a while, depending on trial length...
Checking and repairing marker data quality on trial Walk_Speed_1.8_markers_Wen. This can take a while, depending on trial length...
All trial markers have been cleaned up!
Coniditioning Multivariate Gaussion on:
stature (mu=1.62847): 1.64
weightkg (mu=0.677582): 0.587
Running joint init pipeline for trial 0/4
Running joint init pipeline for trial 1/4
Running joint init pipeline for trial 2/4
Running joint init pipeline for trial 3/4
Sorted trials by the variation of markers around the joints:
0: 2 marker variability norm = 8362.68
1: 1 marker variability norm = 7837.97
2: 0 marker variability norm = 6815.76
3: 3 marker variability norm = 5756.95
Downsampling the input for scaling performance!
Sampling 4/4
Trial 2 length 3590
Trial 1 length 3590
Trial 0 length 3598
Trial 3 length 1505
Total timesteps to use for scaling: 12283
Unobserved Joint: radioulnar_r
Unobserved Joint: wrist_r
Unobserved Joint: radioulnar_l
Unobserved Joint: wrist_l
Size of observed joints: 16
Size of unobserved joints: 4
joints: 0
ERROR: getHeight() computed a height of 0. Exiting...
exit: 1

User avatar
Nicholas Bianco
Posts: 992
Joined: Thu Oct 04, 2012 8:09 pm

Re: Error Encountered while Using addbiomechanics for IK Generation

Post by Nicholas Bianco » Mon Oct 09, 2023 9:52 am

Hi Sheeba,

There indeed seems to be a bug somewhere here. Could you test a few things to help me debug?

1) Try loading the model in the OpenSim GUI to double check that has a valid topology.
2) Try replacing the weld joints in the model with non-weld joints.

The pipeline should be able to run with weld joints (just with reduced performance), but there might be a bug with the height computation.

Best,
Nick

User avatar
Sheeba Davis
Posts: 16
Joined: Wed Oct 27, 2021 5:21 am

Re: Error Encountered while Using addbiomechanics for IK Generation

Post by Sheeba Davis » Tue Oct 17, 2023 12:22 pm

Hi Nick

Thank you for your response.

I checked the topology and looks fine. This time I tried running addbiomechanics with the same model but removed the joints that are welded (radioulnar and wrist) and i get the following error:
['/app/../engine/engine.py', '/tmp/tmp5c4peohz/', 'Pilot_test_1', 'https://app.addbiomechanics.org/data/30 ... ot_test_1/']
Reading new GRF column prefixSuffix: ground_1_
Reading new GRF column prefixSuffix: ground_2_
Checking trial "Walk_Speed_1.8_markers_Wen" for non-zero segments...
Fitting trials ['Walk_Speed_1.8_markers_Wen']
Checking and repairing marker data quality on trial Walk_Speed_1.8_markers_Wen. This can take a while, depending on trial length...
All trial markers have been cleaned up!
Coniditioning Multivariate Gaussion on:
stature (mu=1.62847): 1.64
weightkg (mu=0.677582): 0.587
Size of observed joints: 14
Size of unobserved joints: 0
joints: 0
ERROR: getHeight() computed a height of 0. Exiting...
exit: 1
Best,
Sheeba

User avatar
Nicholas Bianco
Posts: 992
Joined: Thu Oct 04, 2012 8:09 pm

Re: Error Encountered while Using addbiomechanics for IK Generation

Post by Nicholas Bianco » Thu Oct 19, 2023 9:28 am

Hi Sheeba,

Thanks for the information. Could you describe how exactly you modified the Rajagopal model? In addition, do the processing work if you use the original Rajagopal model with your data?

Best,
Nick

POST REPLY