Strange accelerations

Hi

Could there be something strange with the AnyBody acceleration
calculations? I MoCapped a jump (please see shippen_jump.avi) but an
external force was required on the CoM during free-fall to attain g.

I extracted the vertical displacement, velocity and acceleration of
the CoM. I calculated and overlaid plots of d(displacement)/dt on
Velocity which showed a good agreement

I then calculated and plotted d(velocity)/dt on Acceleration which
showed poor correlation.

I repeated this procedure with a physical location on the model
(happened to be the origin of the right scapula) and found a similar
disagreement between dV/dt and the Acceleration from AnyBody. All
plots are shown in shippen_acc.doc.

Am I missing something?

Ta!

James

PS Many thanks for the tips on scaling - if only it were that easy
to decreased my mass in real life!

Hi James,

It really looks strange indeed.

The only thing, I can think, that may do something like this, is if
you are using PiecewiseLinear interpolation of you motion data.

The PiecewiseLinear interpolation is really a linear function between
the data points. This implies that velocities is kind of average
velocities between data points and (very important) accelerations are
zero.

Could this be the case?

Please get back to me - I really want to get to the bottom of this.

Michael
AnyBody Support

— In anyscript@yahoogroups.com, “jamesshippen” <jamesshippen@…>
wrote:
>
> Hi
>
> Could there be something strange with the AnyBody acceleration
> calculations? I MoCapped a jump (please see shippen_jump.avi) but
an
> external force was required on the CoM during free-fall to attain g.
>
> I extracted the vertical displacement, velocity and acceleration of
> the CoM. I calculated and overlaid plots of d(displacement)/dt on
> Velocity which showed a good agreement
>
> I then calculated and plotted d(velocity)/dt on Acceleration which
> showed poor correlation.
>
> I repeated this procedure with a physical location on the model
> (happened to be the origin of the right scapula) and found a
similar
> disagreement between dV/dt and the Acceleration from AnyBody. All
> plots are shown in shippen_acc.doc.
>
> Am I missing something?
>
> Ta!
>
> James
>
> PS Many thanks for the tips on scaling - if only it were that easy
> to decreased my mass in real life!
>

Hi Michael

You were correct in your suggestion that the interpolation function
of the MoCap data in AnyKinEqInterPolDriver was affecting the applied
accelerations.

I plotted the vertical acceleration of the centre of mass for
PiecewiseLinear, Bezier and Bspline (orders 4 and 10) as shown in
uploaded file shippen_ acc_interpolation.jpg. As can be seen the
acceleration of the CoM is greatly modified by the interpolation
function and varies considerably from –g during the free fall period.

Could this explain the external force acting on the model during free
fall? And if so, can you think of an approach which would correct
the situation?

Many thanks

James

— In anyscript@yahoogroups.com, “AnyBody Support” <support@…>
wrote:
>
> Hi James,
>
> It really looks strange indeed.
>
> The only thing, I can think, that may do something like this, is if
> you are using PiecewiseLinear interpolation of you motion data.
>
> The PiecewiseLinear interpolation is really a linear function
between
> the data points. This implies that velocities is kind of average
> velocities between data points and (very important) accelerations
are
> zero.
>
> Could this be the case?
>
> Please get back to me - I really want to get to the bottom of this.
>
> Michael
> AnyBody Support
>
>
>
> — In anyscript@yahoogroups.com, “jamesshippen” <jamesshippen@>
> wrote:
> >
> > Hi
> >
> > Could there be something strange with the AnyBody acceleration
> > calculations? I MoCapped a jump (please see shippen_jump.avi)
but
> an
> > external force was required on the CoM during free-fall to attain
g.
> >
> > I extracted the vertical displacement, velocity and acceleration
of
> > the CoM. I calculated and overlaid plots of d(displacement)/dt
on
> > Velocity which showed a good agreement
> >
> > I then calculated and plotted d(velocity)/dt on Acceleration
which
> > showed poor correlation.
> >
> > I repeated this procedure with a physical location on the model
> > (happened to be the origin of the right scapula) and found a
> similar
> > disagreement between dV/dt and the Acceleration from AnyBody.
All
> > plots are shown in shippen_acc.doc.
> >
> > Am I missing something?
> >
> > Ta!
> >
> > James
> >
> > PS Many thanks for the tips on scaling - if only it were that
easy
> > to decreased my mass in real life!
> >
>

Hi James,

I am glad it was the driver issue.

I have not looked at your model in details, but, as far as I understand, it
is a person jumping, motion recorded by MOCAP, and the model has “a hand of
God” to account for the reactions to the environment needed in the Inverse
dynamic analysis. These reactions are what you refer to as the external
forces.

If so, I think you are right that CoM acceleration not being equal to -g is
the same as external forces during the free fall period. Of course the
external forces are not real; they come as an artifact of other
inaccuracies/errors in the model.

I think there are the following two important sources of these errors:

  1. The MOCAP experiment is not accurate, i.e., you will have inaccuracies on
    your marker positions, maybe in the transformation to the model input (e.g.
    joint angles). Interpolation and differentiation may also contribute to
    these errors.

  2. The model does not have exactly the mass distribution of the person you
    have in your lab. Segment masses, centers of masses, moments of inertia,
    etc. are not accurate and on top of this the possible movements of the
    masses are idealized to a rigid-body system. These things together will also
    have an effect on the model’s CoM.

When I look at your graph, I think it is a very interesting case. The small
oscillations in the middle of the free fall are probably what you can expect
due to the errors mentioned above, but the peeks at the start and end of the
free fall are rather high, I think (-16m/s^2 instead of -g). Though, it is
not so strange that the error is higher in the beginning and the end,
because this is probably where the faster relative motion of the segments
occur. This implies of course that the sources of error (both 1 and 2) will
have greater significance.

Another thing, that caught my eye, is the Bezier curve that shows less
oscillation (understandable) but it also from a certain point of view fits
better (or just as good) as the more exact interpolations. The Bezier cuts
many corners; it smoothen the curves. It is like the “correct result” lies
somewhere in between Bezier and your BSplines orders.

You could in principle try with higher order BSplines, but you may end up
with numerical problems.

Could it be that you have lost important dynamics in the MOCAP data during
data filtering and down-sampling or the like?

These two suggestions target the kinematic data you input, but there is also
the mass distribution. If we for a moment assume the masses to be the source
of error, it is indeed an interesting case because you sort of know what the
result should be, i.e., CoM acc = -g: Maybe you could use your experiment to
adjust the model mass distribution to fit the real person better?

Essentially this could be formulated as an optimization problem, e.g.,
minimize the error on the CoM acceleration with respect to mass properties.

We have considered doing things like this for some time and actually we have
a Ph.D. project (done by Michael Skipper Andersen) aimed at making smoother
integration between models and MOCAP data, but this project is so far only
considering kinematical data, not inertia data. However I think this could
be the next extension.

Well, this was a long talk without many accurate answers.

I am very interested in what your next steps will be.

Best regards,

Michael

AnyBody Support

PS. Michael Skipper Andersen will present his project in a webcast soon.


From: anyscript@yahoogroups.com [mailto:anyscript@yahoogroups.com] On Behalf
Of jamesshippen
Sent: Monday, February 05, 2007 13:10 PM
To: anyscript@yahoogroups.com
Subject: [!! SPAM] [anyscript] Re: Strange accelerations

Hi Michael

You were correct in your suggestion that the interpolation function
of the MoCap data in AnyKinEqInterPolDriver was affecting the applied
accelerations.

I plotted the vertical acceleration of the centre of mass for
PiecewiseLinear, Bezier and Bspline (orders 4 and 10) as shown in
uploaded file shippen_ acc_interpolation.jpg. As can be seen the
acceleration of the CoM is greatly modified by the interpolation
function and varies considerably from -g during the free fall period.

Could this explain the external force acting on the model during free
fall? And if so, can you think of an approach which would correct
the situation?

Many thanks

James

— In anyscript@yahoogrou <mailto:anyscript%40yahoogroups.com> ps.com,
“AnyBody Support” <support@…>
wrote:
>
> Hi James,
>
> It really looks strange indeed.
>
> The only thing, I can think, that may do something like this, is if
> you are using PiecewiseLinear interpolation of you motion data.
>
> The PiecewiseLinear interpolation is really a linear function
between
> the data points. This implies that velocities is kind of average
> velocities between data points and (very important) accelerations
are
> zero.
>
> Could this be the case?
>
> Please get back to me - I really want to get to the bottom of this.
>
> Michael
> AnyBody Support
>
>
>
> — In anyscript@yahoogrou <mailto:anyscript%40yahoogroups.com> ps.com,
“jamesshippen” <jamesshippen@>
> wrote:
> >
> > Hi
> >
> > Could there be something strange with the AnyBody acceleration
> > calculations? I MoCapped a jump (please see shippen_jump.avi)
but
> an
> > external force was required on the CoM during free-fall to attain
g.
> >
> > I extracted the vertical displacement, velocity and acceleration
of
> > the CoM. I calculated and overlaid plots of d(displacement)/dt
on
> > Velocity which showed a good agreement
> >
> > I then calculated and plotted d(velocity)/dt on Acceleration
which
> > showed poor correlation.
> >
> > I repeated this procedure with a physical location on the model
> > (happened to be the origin of the right scapula) and found a
> similar
> > disagreement between dV/dt and the Acceleration from AnyBody.
All
> > plots are shown in shippen_acc.doc.
> >
> > Am I missing something?
> >
> > Ta!
> >
> > James
> >
> > PS Many thanks for the tips on scaling - if only it were that
easy
> > to decreased my mass in real life!
> >
>

[Non-text portions of this message have been removed]