Benutzer-Werkzeuge

Webseiten-Werkzeuge


modellingcomponents:elements:functionalmethods

Functional joint center/axes estimation methods

The calculation of a functional joint is based on the movement of one segment relative to another segment. This allows to estimate knee- and elbow joint axes, hip- and glenohumeral joint centers.

The calibrations movements should have sufficient range of motion that the computation statistics produce a reasonable stationary point, but the range of motion should not be too large because soft tissue artifact (e.g. movement of markers relative to the underlying skeleton) should be minimized.

Typically specific calibration trials have to be executed.

Several cycles of movement should be included, but there is no study which analyses how many cycles is best. We recommend more than 3 cycles, others recomment a minimum of 5. The optimal number may depend on many issues, including the joint and the amount of soft tissue artfeacts. Each user should experiment with his own measurement procedure.

A special feature of the Upperlimb software is flexibility in defining cycles. You can use events, if you want to explicitly define the cycles or you can use automatic algorithm based on a first estimation of joint-centers/axes.

References

Centre of rotation estimation

References

A survey of formal methods for determining the centre of rotation of ball joints.
Ehrig RM, Taylor WR, Duda GN, Heller MO
J Biomech39p2798-809(2006)

CoRGamage2002

Attributes

Attribute Default Description Required
name name of the element Yes
coordinateSystem The name of the base coordinates system the moving marker is defined in. Yes
biasCompensation false Switch bias compensation on or off. No
biasCompensationIterations 3 If bias compensation is used with this attribute the number of iterations can be defined. No
biasCompensationMaximumChange 10 If bias compensation is used and the different between the last two iteration is bigger than the given value in at least one component a warning is given. No
Condition A formula, which defines which frames are included in the functional calibration. If the formula value is 1 the frame is used. No
phase The name of the phases used for functional calibration. If this and the attribute Condtion are both not used the complete trials are used. No

Generated trajectories

Name Type
<name>Origin 3d vector

Generated parameters

Name Type Description
<name>OriginLocal 3d vector CoR in local coordinates of the parent system.
<name>Radius Double Radius of the estimated sphere.
<name>FramesCount Integer Number of frames used for calibration.
<name>RadiusStd Double Std of the estimated radius of the sphere.

Comments

  • The current implementation is limited to cosider only one „moving“ marker.

References

Examples

<Phase name="RAbduk" startEvent="RHS" endEvent="RTO" process="post" 
       calibrateIncludes="dynamic_calibrate_right_shoulder"
       includes="dummy"/>
<CoRGamage2002 name="RGHJC"
               coordinateSystem="Right_Acromion"
               phase="RAbduk"
               biasCompensation="true"
               biasCompensationIterations="5"
               calibrateIncludes="dynamic_calibrate_right_shoulder"
               includes="dynamic,static">RHUMS</CoRGamage2002>
 

SCoRE - symmetrical centre of rotation estimation

Attributes

Attribute Description Required
name name of the element Yes
parentCoordinateSystem The name of the base coordinates system. Yes
childCoordinateSystem The name of the moving coordinate system. Yes
Condition As an alternative to phases or events with this attributes a formula can be defined to be used to descide if a frame should be includes or excluded to the input data. If the value of the formula is bigger than zero than the frame is included. No
phase phase name, used if the phases are calculated elsewhere No

Generated trajectories

Name Type
<name>Origin 3d vector

Generated parameters

Name Type Description
<name>OriginLocal 3d vector CoR in local coordinates of the parent system
<name>FramesCount double count of frames used for the estimation
<name>Radius double radius of the sphere around the origin of the parent coordinate system on which the origin of the child coordinate system is assumed to move around.
<name>RadiusStd double standard deviation of the radien

References

A survey of formal methods for determining the centre of rotation of ball joints.
Ehrig RM, Taylor WR, Duda GN, Heller MO
J Biomech39p2798-809(2006)

Examples

   <CoRSCoRE name="RGHJC"
             condition="RAbdukAngle<30.0"
             parentCoordinateSystem="RClavicle"
             childCoordinateSystem="RHumerus"/>

Notes

A warining is given, if the count of frames selected by the defined phases is smaller than 30. Keep in mind that even 30 frames typically are too less to get a „good“ estimation of a center of rotation. In this case the frames of the complete trial are used, which also typically does not result in an good estimation.

CoRChang2006

Attributes

Attribute Default Description Required
name name of the element Yes
coordinateSystem The name of the base coordinates system the moving marker is defined in. Yes

CoRNewton

Attributes

Attribute Default Description Required
name name of the element Yes
coordinateSystem The name of the base coordinates system the moving marker is defined in. Yes

Axis of rotation estimation

Attributes available for all axis of rotation estimation elements

Attribute Description Required
name name of the element Yes
coordinateSystem The name of the base coordinates system the moving marker is defined in. Yes
includes No
calibrateIncludes Yes
startEvent Event type name to be used to defined the start position of phases to limit the frames for the estimation. No
endEvent Event type name to be used to defined the endposition of phases to limit the frames for the estimation. No
phase Phase type name to define phase to limit the frames for the estimation. No
Condition As an alternative to phases or events with this attributes a formula can be defined to be used to descide if a frame should be includes or excluded to the input data. If the value of the formula is bigger than zero than the frame is included. No
ReferencePoint Typically a marker trajectory which is used to define a „joint center“ on the estimated axis. This joint center is determined by the point on the axis which has the smallest distance to the given reference point. No

Bug: It it seems that the current implementation of the ReferencePoint functionality does not work properly, if the reference point is a parameter or constant formula.

Generated trajectories for all axis of rotation estimation elements

Name Type Description
<name>Axis 3d vector Estimated axis direction.
<name>Origin 3d vector Estimated axis origin.
<name>ReferencePoint 3d vector The trajectory of the optional given reference point
<name>Condition double values of the condition formula to include/exclude input frames

Generated parameters for all axis of rotation estimation elements

Name Type Description
<name>AxisLocal 3d vector Estimated axis in coordinates of the base/local coordinate system.
<name>OriginLocal 3d vector Origin of the axis.
<name>Radius Double Radius of the estimated sphere.
<name>RadiusStd Double Std of the estimated radius of the sphere.
<name>MeanPlaneDist double Mean distance of the plane the estimated circle lays in to a plane through the projection of the reference point into the estimated axis.
<name>PlaneDistStd double Standard deviation of the distance described in the parameter above (meanPlaneDist)

AoRGamage2002

Specific Attributes

Attribute Default Description Required
ReferencePoint Typically the estimated axis is the rotation axis of a joint. If this attribute defines a point the joint center is defined by the point on the estimated axis which is as close as possible to the given point. No
SignAxis The functional method determines a line in space but not the sign needed to define an axis. If this attribute is set to a vector, the orientation of the estimated directions is defined to be as close a possible to this vector/orientation. No
biasCompensationMaximumChange 10.0 If bias compensation is used, the value of this attributes defines a maximum difference between two iterations. No
biasCompensation false If set to true, than bias compensation is used No
biasCompensationInterations 3 Number of iterations for the bias compensation No

Generated specific trajectories

Name Type Description
<name> 3d vector Points which are used as input for the estimation
<name>SignAxis 3d vector The given axis to define the sign of the estimated axis

Generated specific parameters

Name Type Description
<name>SignAxisLocal 3d vector Sign axis in coordinates of the base/local coordinate systen, if the sign axis attribute is used.

Comments

  • The current implementation is limited to cosider only one „moving“ marker.

Examples

<AoRGamage2002 name="Global2BaseAxisBig"
               coordinateSystem="Global"
               biasCompensation="true"
               biasCompensationIterations="5"
               calibrateIncludes="calibrate_urbasebig"
               includes="kirkdefault">BASEP</AoRGamage2002>

References

AoRSARA

Least square optimization of an axis of rotation, based on symmetrical center of rotation estimation, solved with SVD decomposition.

Specific Attributes

Attribute Default Description Required
ReferencePoint Typically the estimated axis is the rotation axis of a joint. If this attribute defines a point the joint center is defined by the point on the estimated axis which is as close as possible to the given point. Yes
movingCoordinateSystem The name of the base coordinates system the moving marker is defined in. Yes
considerSymmetricSolution false If this attribute is set to true, than the symmetric solution with the moving coordinate as a reference is calculated and the corresponsing parameters are saved. No
SignAxis The functional method determines a line in space but not the sign needed to define an axis. If this attribute is set to a vector, the orientation of the estimated directions is defined to be as close a possible to this vector/orientation. No

Generated specific trajectories

Name Type Description
<name>SignAxis 3d vector The given axis to define the sign of the estimated axis

Generated specific parameters

Name Type Description
<name>SignAxisLocal 3d vector Sign axis in coordinates of the base/local coordinate systen, if the sign axis attribute is used.
<name>AxisLocal2 3d vector Estimated axis in coordinates of the moving coordinate system, if the corresponding attribute is set to true.
<name>OriginLocal2 3d vector Origin of the axis in the coordinate of the moving coordinate systen, if the corresponding attribute is set to true.

Examples

<AoRSARA name="Global2BaseAxisBig"
               coordinateSystem="Global"
               movingCoordinateSystem="Base"
               biasCompensation="true"
               biasCompensationIterations="5"
               calibrateIncludes="calibrate_urbasebig"
               includes="kirkdefault"/>

AoRChang2007

Attributes

Attribute Default Description Required
name name of the element Yes
coordinateSystem The name of the base coordinates system the moving marker is defined in. Yes
modellingcomponents/elements/functionalmethods.txt · Zuletzt geändert: 2020/10/28 07:53 von oliver