AnyGait application with FullBody

Hi everyone,

I have been proceeding my own *.c3d files with the AnyGait application from the AMMR.
I encountered no problems for plotting the desired output, given that information and explanations were clear.

Nevertheless, now I would like to run the model in FullBody because I would like to include additional muscles from the trunk.
Is there a way to do so?

Thank you in advance for your help,

Hi

The short answer is that this will be much more difficult to make the AnyGait model working for the upper body than using the stanard MocapModel in the repository.

The AnyGait model relies on a specific marker protocol to be present and the model has been derived around this protocol, this has not been done for the upper body.

We also have a new version of the mocap available please see https://github.com/AnyBody/anymocap

This model will replace the MocapModel in AMMR at some point, it contains many improvements compared to the old model, and is better suited for running multiple trials.

Best regards
Søren

Hi,

Thank you for your quick answer.

Allright, I installed the new version of the Mocap and had a look at it.
Nevertheless, it is less intuitive than the AnyGait because of no graphic interface / menu.
In my opinion, running an analysis with AnyGait is rather easy.

Where could I foud a detailled tutorial to applied this Fullbody Model to my own C3D static and dynamics files from trials?

Hi

Please have a look at this webcast

https://www.youtube.com/watch?v=CdEIDH0jLu4

It displays a few features in the model, please view from around 19 min into the video.

For the standard mocap model available in AMMR we have a detailed description availble for how to use the model, it can be see here
https://github.com/AnyBody/support/wiki/New-How-to-setup-your-own-MoCap-driven-Model

Unfortunately we do not have a similar document for the new model yet, we are working on that. Many of the elements will be somewhat similar like how to add a marker e.g. or defining forceplates, but the structure of the models are different.

Which type of motion are you trying to model?

Best regards
Søren

Thank you for your reply, concise and to the point as usual.

I already ran into this github link with detailled description and I already defined the correct markers names in my C3D file and linked it with the Anymocap.
In addition, I also input anthropometrics data of my subject and tried to manually match the markers of the model to my own (shoulders, pelvis, knees and feet).
However, I still have the following error message:
Kinematic analysis failed in time step0: Indefinite positions
If I’m not wrong it should be a problem with the initial position.

By the way, isn’t it necessary to provide also static C3D file for analysis?

The motion I am trying to model is a normal gait movement.
Nevertheless, I will maybe find an information I am missing in the webcast you advised, let’s see.

Hi

I think this error relates to DOF’s in the model which are not driven by either a marker or an extra driver or other constraints. So please ensure you have markers enough to cover all DOF’s in the model, you would get this error is you have no markers on the head e.g. There is a file named “extraDrivers.any” in the model, in this file you can enable default drivers joint by joint using BM statements. Typically having a default driver for the SC can be a good idea depending on the number of markers you have on the arm.

This model does not make use of a static trial, in contrast to the AnyGait model it does a paramerter optimization step where the size of the subject and some marker locations (if OptX, OptY or OptZ is set to On in the marker definition) are being optimized to fit in the best way the marker trajectory.

Best regards
Søren

All right, because I used to work with the LowerBody rather than the FullBody I totally forgot the extraDrivers for the parts of the model I do not have motion information about … thank you for this reminder.

Therefore, I managed to Run “Analysis” under “ParameterIdentification”.
However, “Optimization” under the same folder gives me an error message: Optimization failed: zero step length.

Sorry once again for disturbing, but I unfortunately found no information on both the forum and the github link regarding this result.

Hi

I think this might relate to that you may have design variables in the model with no senstivity, this would happen e.g. if you tried to optimize the length of the upper arm but had no markers on the arm.

If you go in the “labspecific.any” file you can change which of the segments are being optimzed in size.

Best regards
Søren

I thought this could have been the reason, but no changes.

Maybe the attached image of the model with the markers could give ou a clue.

Hi

Ok so please confirm that all arms are not being optimized and same for head height?

Please also try to set the markers to not optimized their position, this can be essentially same issue. Imagine optimizing foot length and all markers on foot are free to change location. This would also create an unbounded solution.

Best regards
Søren

In LabSpecificData.any, only the following segments are optimized: PelvisWidth, ThighLength, ShankLength, FootLength and TrunkHeight.
I also tried defining everything on “Off” but nothing new.

In addition, I switched in MarkerProtocal.any for every marker OptX, OptY and OptZ to “Off” and I did not see any difference, still getting "zero step length".

I hope I am not making you losing your mind …

Hi

I am sorry, but i think the only way to move on would be if you can upload the model, is this possible?

Best regards
Søren

Hi,

Obviously it is possible, please find attached my project (Plug-in-gait-FullBody folder).
For information, my AMMR is v1.6.6 and software version is 7.0.

Thanks again for your kind support.

Hi

This is bit strange the model seems to run ok here…

I have been running the RunParamerterIdentification study+ RunAnalysis… and is appears ok…

Please provide the dump from the log window, so we can see the full history from load + analysis

Any chance you have modifed the body model… i am running on the installed AMMR with 7.0

Best regards
Søren

I don’t understand …

You will find attached the log file of the Analysis sequence performing fine and the Optimization sequence leading to “zero step length”.

I don’t think I changed something in the body model, nevertheless I will check to be sure.

Hi

Problem is solved… you are running the wrong operation sorry about the confusion.

Please run “Main.RunParameterIdentification”

Then “Main.RunAnalysis”

We will try in a future release to hide away these other operations you ended up trying out.

Best regards
Søren

Great, InverseDynamics ran without any problem, thank you very much for your precious help !
As you said, it seems like the problem was that I was running the sequences in tab “Operations” rather than in tab “Model”.

However, I am a bit confused because I should be able to run “Optimization” and “Parameter Optimization”, don’t you think ?
Otherwise, I don’t know how relevant could be the results.

This is what I thought, I’m having abnormal results for hip joints reaction forces.
It has certainly something to do with those messages I get:
Problem with file : C:[…]-euler-trunk.txt : Reloading data from file, a different number of elements on data lines was found. Data in file is ignored.

The same for both legs and arms, inducing surely “Overloaded muscle configuration” and those abnormal reaction forces.

Hi

The model has been made in a way so that it should only be necessary to run the two operation sequences

“Main.RunParameterIdentification”

“Main.RunAnalysis”

these operation sequences automatically includes all the operations needed, like the parameter operation etc.

To run the steps manually, please identify the operation sequence above and follow the sequence listed there.

Concerning the error message you get, it may not necessarily be a real issue it depends on at which instance of the analysis you get it? there is an issue in AMS at the moment which triggers this message to appear even though it may not be a real issue.

You should also be able to see both markers (body and free floating) while running the inverse analysis, check that they match up ok? if they do it indicates that the error you got is not a real issue.

Concerning the high forces reasons can be:
[ul]
[li] direction of gravity please check
[/li][li] force plate data issues, verify that forces are transmitted correctly to the legs.
[/li][/ul]

Best regards
Søren

Hi,

All right, now I understand in a better way, you message gave me a clue.
Once again, thank you very much.

Gravity was OK, but the problem seems to come from the force plates: I noticed on Mokka that local landmarks of plates were rotated 180° horizontally (vertical direction is OK) between both.
The first one is correct, but the second one should be rotated front-back.

I would like not to change values in the C3D file as I will have to proceed with others, I would rather rotate the second plate I have, but how to do that ?