I am trying to use the Gaitfulbody in Version 4.2 to analyze some motion capture data. We are only interested in upper body motion analysis (jont angles, acceleration, etc.). I am able to load the model. But I am not able to run the initial condition and so the kinamatic analysis. can you please check the attachment and see what I need to do for kinamatic analysis.
I have tried to run you model and discovered the following:
When the model is load it can be seen that the initial position of model is far away from the recorded markers.
To correct this please modify these lines in the TrialSpecific.any file:
AnyVar PelvisRotY = 90;
AnyFolder Right={
…
AnyVar GlenohumeralAbduction =80;
};
AnyFolder Left ={
…
AnyVar GlenohumeralAbduction = 80;
…
this will create a posture which is much closer to the first frame of the recorded markers…
This is however not enough to make it run…
Please try to click the marker named LHAN in the modelview and you will see that the marker is high lighted also the matching recorded marker is high lighted. On this particular marker you will notice that it has been placed on the wrong arm, or alternatively the marker has the wrong label.
This error will make it very difficult for the solver to find an solution. Please go through all makers one by one and make sure they are parred correctly. Once such errors has been removed there is a good chance the model will run.
thanks for your quick reply. I have done all modification as you suggested. I have also checked each markers. but something wring which I am not able to figure out. for example, I have placed the marked “MIDB_1” on scapula, but the driver is too far from the scapula. Could you please suggest me what should need to do to make the model run.
There are still a lot of markers misplaced like the LHAN marker that Søren previously pointed at.
I can see that at least the following markers are not placed correctly: MIDB_1, MIDB, LTPH, RFRO, LTPS, RTPS. There may be more of them. What you have to do is adjust their location in the ModelSetup file so that they are correctly placed on the bones.
You can just delete all the force plate section in the Environment file. As your model only consist of trunk and arms, what you can do is add a reaction force and moment between pelvis and global ref.
Then to add a load on the hand you can create a segment with the desired weight and attached it to the hand. There is an example of how to do it in the tutorials with the simple arm. You can also apply an AnyForce3D directly to the hand.
I am facing problem to move the guy from its original position. I have changed the mannequin file as follows, but the body is in it’s original position. Could you please tell me how to move this guy.
AnyFolder PostureVel={
//This controls the position of the pelvi wrt. to the global reference frame
AnyVar PelvisPosX=-2.0;
AnyVar PelvisPosY=-1.0;
AnyVar PelvisPosZ=1.0;
…
Hi,
The PostureVel folder gives the velocity of the motion, which will not be used in your case. Please alter the PelvisPos values in the Posture folder.
Best regards,
Sebastian
Dear Sebastian, Thanks a lot for your quick reply. I have two more questions if you could answers I will highly appreciate your time and effort.
First Question:
It is my understanding from the codes in the Posture folder that the pelvis should take the posture based on pelvis marker position automatically once the initial condition is updated after loading the model. If it’s not the case then how can I modify the following codes so that the pelvis markers matched with pelvis position?:
Second Question:
We are only interested in the range of motion (e.g. joint angles, flexion, extion, etc. for shoulder, elbow and wrist) for right arm only. We have a very good marker on Should Acromion and another good marker on the right scapula. And of course we have one marker on bicept, two markers on the elbow, one on the foramr and four markers on the hand and another good marker on the C7. Will it be simpler if we make the shoulder acromion as the base instead of the pelvis markers. some pelvis markers are missing for long time for some of our subjects. It would be really great if we could make anybody model based on the acromion, c7, or scapula markers.
please have a look at your LASI marker this is placed somewhere in space an this causes the trouble.
yes this should be possible. You have to place the pelvis in relation to the the upper markers you have, similar to the expression given in the Mannequin now.
Or maybe the better solution is to simply add drivers to the trunkmotion and kick the markers for pelvis out. This means you should add three drivers which basically keep the pelvis- trunk angle constant. With this the position of the pelvis is determined.
Best regards,
Sebastian
I think I am going to use only the markers on the right arm (8 markers total), and 3 markers on the shoulder (Aromion, C7 and Scapula). and I also want the initial position based on the Aromion, C7, and scapula. Could you please help me regarding the drivers you have mentioned. I am not really sure where to put those drivers and how to put them. I am also facing some problem to fix the initial position of the model. I really want to have the initial position based on the Acromion, C7 or Scapula.
Hi,
you have to use some vector algebra to do this. I inserted a start on this in the Mannequin. I also added Drivers for the Trunk. With this you can get rid of the plevis markers. But you may need one or two to fix the body in space. It depends.
Btw it is not very important that it loads in the perfect position. It just has to be able to resolve the inital conditions. And as you can see in the model the body model can be quite far away.
Best regards,
Sebastian