# Driving the model with markers

Hi,

I have been trying in vain to get a four-bone (humerus, radius, ulna,
hand) arm model to be driven by 3-dimensional marker trajectories. I
followed the sway practice model and tried to mimic mine after that,
and have also tried to troubleshoot using help from other models, but
with no luck. I can get the model to load, but I can’t run the
initial set-up or kinematics analysis yet. Right now, my kinematic
tolerance appears to be too small for the job, but I have checked my
model output and model is not overconstrained.

I have uploaded the model and would welcome any suggestions as to how
I can get this up and running (I think I’m so close!).

Thanks so much!
Sarah

Hi Sarah

I will try to help solve the problems

First of all the data from the motion markers are in mm. not in
meters
so this data has to be multiplied by 1/1000 otherwise there is no
chance for the model to assemble kinematically.

The next step was to impose a set of initial positions on the model
since this is needed to make the model assemble. This needed in cases
as this where the model forms a closed kinematical chain when the
markers are to be followed.

I also added the markers initial position since they are equally
important, I have used the first number from the data set for each of
the markers.

This was not enough to solve the problem.

I then looked more into detail of the model and there are a few
problems which need to be solved before the model will work.

1 . There seem to be no joint between radius and ulna ?
2. In the file Drivers.any where the drivers are made you attempt to
drive in total 13 dof. this is too many. Your model should have the
following dof.
GH =3 dof
FE=1 dof
PS=1 dof
Wrist =2 dof
This gives in total 7 dof which can be driven by the markers. So you
need to remove six of the dof in the Drivers.any file, before it can
work otherwise the model is over constrained a can not assemble.

1. The graphic representation of the bones that you use is not
representative with the nodes on your segments. This is in principle
not a problem you should just be aware that the bones you see in the
modelview do not represented how the model really looks. The reason
is
probably, that you have inserted new values for the node locations
and
maybe used the AnySurf files from the BRep. These AnySurf files
correspond to a specific person and the when the coordinate system of
the bones is changed (this is the case when you use new values for
sRel for the nodes defining the joints locations) you will need to
change the origin of the their insertation point on the bone and
possible also their orientation to make them fit your new points. In
the zipped file I have uploaded I the actual geometry of the bones
are
visible, since I have added a AnyDrawSeg line in each of the segments
in the Segs.any file.

I will suggest the following two steps procedure to resolve the
problem. I think it is important to break the problem down into
smaller parts

1.Make a model which is not driven by marker data, but by drivers on
the GH, FE, PS and writs joint.
1.2 Change the location of the AnySurf files so that they represents
the actual model
1.3 Add drivers for the GH, FE, PS and wrist joint
1.4 Make sure this model assemble kinematically

2 Make the marker driven model.
2.1 Add the markers to the previous model by using the
MotionTracker.any file do not add the drivers between the markers and
the arm yet
2.2 Make sure that this model run kinematically
2.3 Change the location of the GH joint so that the location of the
arm fits in the best way with your marker data.
2.4 Remove the drivers for GH, FE, PS and wrist joint
2.5 Add the drivers between the arm and the markers, but the numbers
of drivers should be limited to 7 dof. since this is the number of
dof
in the arm. It is important to select the dof form the markerset
carefully so that descriptive dof are chosen.

again if you have further questions

I have uploaded the file NewApproach2.zip

Best regards
AnyBody Support

— In anyscript@yahoogroups.com, “Sarah R. Sullivan” <sarsulli@e…>
wrote:
> Hi,
>
> I have been trying in vain to get a four-bone (humerus, radius,
ulna,
> hand) arm model to be driven by 3-dimensional marker trajectories.
I
> followed the sway practice model and tried to mimic mine after that,
> and have also tried to troubleshoot using help from other models,
but
> with no luck. I can get the model to load, but I can’t run the
> initial set-up or kinematics analysis yet. Right now, my kinematic
> tolerance appears to be too small for the job, but I have checked my
> model output and model is not overconstrained.
>
> I have uploaded the model and would welcome any suggestions as to
how
> I can get this up and running (I think I’m so close!).
>
> Thanks so much!
> Sarah

Thank you for your quick response. I will try your approaches to starting
smaller with joint drivers and adding complexity. I will start working on
this and let you know how things fare.

Thank you again for your help!
Sarah

> Hi Sarah
>
> I will try to help solve the problems
>
> First of all the data from the motion markers are in mm. not in
> meters
> so this data has to be multiplied by 1/1000 otherwise there is no
> chance for the model to assemble kinematically.
>
> The next step was to impose a set of initial positions on the model
> since this is needed to make the model assemble. This needed in cases
> as this where the model forms a closed kinematical chain when the
> markers are to be followed.
>
> I also added the markers initial position since they are equally
> important, I have used the first number from the data set for each of
> the markers.
>
> This was not enough to solve the problem.
>
> I then looked more into detail of the model and there are a few
> problems which need to be solved before the model will work.
>
> 1 . There seem to be no joint between radius and ulna ?
> 2. In the file Drivers.any where the drivers are made you attempt to
> drive in total 13 dof. this is too many. Your model should have the
> following dof.
> GH =3 dof
> FE=1 dof
> PS=1 dof
> Wrist =2 dof
> This gives in total 7 dof which can be driven by the markers. So you
> need to remove six of the dof in the Drivers.any file, before it can
> work otherwise the model is over constrained a can not assemble.
>
> 3. The graphic representation of the bones that you use is not
> representative with the nodes on your segments. This is in principle
> not a problem you should just be aware that the bones you see in the
> modelview do not represented how the model really looks. The reason
> is
> probably, that you have inserted new values for the node locations
> and
> maybe used the AnySurf files from the BRep. These AnySurf files
> correspond to a specific person and the when the coordinate system of
> the bones is changed (this is the case when you use new values for
> sRel for the nodes defining the joints locations) you will need to
> change the origin of the their insertation point on the bone and
> possible also their orientation to make them fit your new points. In
> the zipped file I have uploaded I the actual geometry of the bones
> are
> visible, since I have added a AnyDrawSeg line in each of the segments
> in the Segs.any file.
>
>
> I will suggest the following two steps procedure to resolve the
> problem. I think it is important to break the problem down into
> smaller parts
>
> 1.Make a model which is not driven by marker data, but by drivers on
> the GH, FE, PS and writs joint.
> 1.1 Add the PS joint
> 1.2 Change the location of the AnySurf files so that they represents
> the actual model
> 1.3 Add drivers for the GH, FE, PS and wrist joint
> 1.4 Make sure this model assemble kinematically
>
> 2 Make the marker driven model.
> 2.1 Add the markers to the previous model by using the
> MotionTracker.any file do not add the drivers between the markers and
> the arm yet
> 2.2 Make sure that this model run kinematically
> 2.3 Change the location of the GH joint so that the location of the
> arm fits in the best way with your marker data.
> 2.4 Remove the drivers for GH, FE, PS and wrist joint
> 2.5 Add the drivers between the arm and the markers, but the numbers
> of drivers should be limited to 7 dof. since this is the number of
> dof
> in the arm. It is important to select the dof form the markerset
> carefully so that descriptive dof are chosen.
>
> again if you have further questions
>
> I have uploaded the file NewApproach2.zip
>
> Best regards
> AnyBody Support
>
>
>
>
>
> — In anyscript@yahoogroups.com, “Sarah R. Sullivan”
> wrote:
> > Hi,
> >
> > I have been trying in vain to get a four-bone (humerus, radius,
> ulna,
> > hand) arm model to be driven by 3-dimensional marker trajectories.
> I
> > followed the sway practice model and tried to mimic mine after that,
> > and have also tried to troubleshoot using help from other models,
> but
> > with no luck. I can get the model to load, but I can’t run the
> > initial set-up or kinematics analysis yet. Right now, my kinematic
> > tolerance appears to be too small for the job, but I have checked my
> > model output and model is not overconstrained.
> >
> > I have uploaded the model and would welcome any suggestions as to
> how
> > I can get this up and running (I think I’m so close!).
> >
> > Thanks so much!
> > Sarah
>
>
>
>
> AnyBody Technology provides free support on the use of the AnyBody
> Modeling System and the Scripting language AnyScript. Other users are
> welcome to join the discussions.
>
>
>
> Biomedical engineering degree
> Biomedical engineering career
> Biomedical engineering program
> Biomedical engineering
> schools Biomedical
> engineering jobs Biomedical
> engineering
> Visit your group “anyscript” on the web.
> To unsubscribe from this group, send an email to:
> anyscript-unsubscribe@yahoogroups.com
>

Sarah R. Sullivan
PhD Candidate, Biomedical Engineering
Rutgers, The State University of New Jersey
Piscataway, NJ 08854
sarsulli@eden.rutgers.edu
908-420-3371

I am trying to drive my model using markers, but I am running into
some problems. Looking at the Gait 3D model, in the MarkerPosOnBody
folder, markers are placed on RAsis, LAsis, Sacrum, TrochanterMajorL,
etc to act as a connection between the model and the environment along
with the motion drivers. I am unclear, however, where the sRel values
are coming from? I can not see how, looking for example at the Pelvis
Segment, the sRel values are connected to the PelvisSeg? There is
nothing in PelvisSeg that gives any indication of where to place the
markers so that they coincide with the appropriate place on the model.

Any help on this would be appreciated!

Thanks,
Sarah

Hi Sarah

The aRel values in the MarkerOnPosBody has been fitted “manually” to
macth the right locations on the bones.

The easiest way to do this to write something like this

AnyBodyRefNode node ={
sRel={x,y,z};
AnyDrawRefFrame drw={ScaleXYZ={0.1,0.1,0.1};}; //create a small
coordinatesystem
};

this will make a visible coordinate system at the node location.
Looking at the orientation of the coordinate system it is easier to
adjust the location of the node to match the right location on the
bone.

Best regards
AnyBody support

— In anyscript@yahoogroups.com, “Sarah R. Sullivan”
<sarsulli@e…> wrote:
>
> I am trying to drive my model using markers, but I am running into
> some problems. Looking at the Gait 3D model, in the
MarkerPosOnBody
> folder, markers are placed on RAsis, LAsis, Sacrum,
TrochanterMajorL,
> etc to act as a connection between the model and the environment
along
> with the motion drivers. I am unclear, however, where the sRel
values
> are coming from? I can not see how, looking for example at the
Pelvis
> Segment, the sRel values are connected to the PelvisSeg? There is
> nothing in PelvisSeg that gives any indication of where to place
the
> markers so that they coincide with the appropriate place on the
model.
>
> Any help on this would be appreciated!
>
> Thanks,
> Sarah
>