User Tools

Site Tools


visual3d:documentation:modeling:segments:segment_overview

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
visual3d:documentation:modeling:segments:segment_overview [2025/04/03 12:29] – Cleaned up the Foot section. wikisysopvisual3d:documentation:modeling:segments:segment_overview [2025/05/16 13:03] (current) – Added section for shadow segments. wikisysop
Line 43: Line 43:
 Kinematic-only segments are also called [[visual3d:documentation:modeling:segments:virtual_segments|virtual segments]]. The defining criterion for distinguishing a virtual segment from other segments in Visual3D is that these segments do not get included in the [[visual3d:documentation:kinematics_and_kinetics:inverse_dynamics|Inverse Dynamics]] calculations. These segments can not be [[visual3d:documentation:kinematics_and_kinetics:external_forces:force_assignment|assigned external forces]] and will not have [[visual3d:documentation:kinematics_and_kinetics:joint|joints]] created at their proximal end points. Kinematic-only segments are also called [[visual3d:documentation:modeling:segments:virtual_segments|virtual segments]]. The defining criterion for distinguishing a virtual segment from other segments in Visual3D is that these segments do not get included in the [[visual3d:documentation:kinematics_and_kinetics:inverse_dynamics|Inverse Dynamics]] calculations. These segments can not be [[visual3d:documentation:kinematics_and_kinetics:external_forces:force_assignment|assigned external forces]] and will not have [[visual3d:documentation:kinematics_and_kinetics:joint|joints]] created at their proximal end points.
  
-===== The Pelvis =====+==== Shadow Segments ==== 
 + 
 +Virtual segments provide a convenient way to include multiple definitions for a segment within a single model, but these multiple definitions do not easily allow for external constraints (like an [[visual3d:documentation:kinematics_and_kinetics:inverse_kinematics|Inverse Kinematic]] chain) to be applied consistently across all segment definitions. For example, if a Virtual Segment is defined with relation to a segment and then an Inverse Kinematics constraint is applied to the original segment, the changes in the original segment's pose estimation do not propagate to the Virtual Segment. 
 + 
 +Shadow segments resolve this issue by allowing that segment's pose to be defined as a transformation of the original segment's pose estimation. Users can use the [[visual3d:documentation:pipeline:expressions:expressions_overview|Expression]] function [[=visual3d:documentation:pipeline:expressions:array_and_matrix_functions#pose_4x4|Pose_4x4]] when defining their own shadow segments. 
 + 
 +Shadow segments were introduced in Visual3D with v2023.11.1. As of v2024.05.1, Visual3D adds shadow segments for the thorax and feet in the automatic models built from Theia3D and [[visual3d:documentation:third-party:xsens:xsens|XSens]] data. 
 + 
 +===== Segment Definitions ===== 
 + 
 +There are many ways to define the segments of the human body in Visual3D. The definitions and comments provided below are intended to get you thinking about the variety of definitions available. They should be thought of as a starting point for your own analysis and not iron-clad rules. 
 + 
 +==== Pelvis ====
  
 There are many ways to define a segment in Visual3D, which means there are many ways to define the Pelvis segment. There are many ways to define a segment in Visual3D, which means there are many ways to define the Pelvis segment.
Line 55: Line 67:
 **NOTE**: the segment coordinate system for the CODA pelvis is the mid-point between the ASIS markers. The anatomical landmarks are actually posterior to the ASIS markers because the motion capture system tracks the center of the marker. This is a modest error, but it can be corrected by [[visual3d:documentation:modeling:segments:create_coda_pelvis_relative_to_anatomical_landmarks|creating landmarks that are posterior to the ASIS markers by the radius of the motion capture marker]]. **NOTE**: the segment coordinate system for the CODA pelvis is the mid-point between the ASIS markers. The anatomical landmarks are actually posterior to the ASIS markers because the motion capture system tracks the center of the marker. This is a modest error, but it can be corrected by [[visual3d:documentation:modeling:segments:create_coda_pelvis_relative_to_anatomical_landmarks|creating landmarks that are posterior to the ASIS markers by the radius of the motion capture marker]].
  
-==== Hip Joint Landmarks ====+=== Hip Joint Landmarks ===
  
 [[visual3d:documentation:modeling:segments:hip_joint_landmarks|Regression equations]] have been estimated for calculating the position of common hip joint landmarks relative to the pelvis segment coordinate system. [[visual3d:documentation:modeling:segments:hip_joint_landmarks|Regression equations]] have been estimated for calculating the position of common hip joint landmarks relative to the pelvis segment coordinate system.
  
-==== Pelvis Animation Models (obj, v3g, wrl) ====+=== Pelvis Animation Models (obj, v3g, wrl) ===
  
 There are two common obj files used to animate the bones of the pelvis. There are two common obj files used to animate the bones of the pelvis.
  
-==== Normalizing the Pelvis Angle ====+=== Normalizing the Pelvis Angle ===
  
 The CODA and Helen Hayes pelvis models are tilted forward approximately 20 degrees from the horizontal. In describing the orientation of the pelvis or for describing the hip joint angle, it is often convenient to define a pelvis angle that has a coronal plane parallel to the floor, e.g. a vertical segment with zero tilt. The CODA and Helen Hayes pelvis models are tilted forward approximately 20 degrees from the horizontal. In describing the orientation of the pelvis or for describing the hip joint angle, it is often convenient to define a pelvis angle that has a coronal plane parallel to the floor, e.g. a vertical segment with zero tilt.
Line 69: Line 81:
 A demonstration of this is provided in our example of [[visual3d:documentation:modeling:segments:normalizing_the_pelvis_segment_angle_example|normalizing the pelvis segment angle]]. A demonstration of this is provided in our example of [[visual3d:documentation:modeling:segments:normalizing_the_pelvis_segment_angle_example|normalizing the pelvis segment angle]].
  
-===== Thigh =====+==== Thigh ====
  
 There are several approaches to create a thigh segment in Visual3D, a few are outlined below. There are several approaches to create a thigh segment in Visual3D, a few are outlined below.
Line 78: Line 90:
 | Using the Knee Alignment Device | A thigh can be [[visual3d:documentation:modeling:segments:knee_alignment_device#step_5create_a_right_thigh_segment|modelled]] using the Knee Alignment Device (KAD) manufactured by Motion Lab Systems. This approach uses the KAD to assist in defining the front plane of the thigh segment. | | Using the Knee Alignment Device | A thigh can be [[visual3d:documentation:modeling:segments:knee_alignment_device#step_5create_a_right_thigh_segment|modelled]] using the Knee Alignment Device (KAD) manufactured by Motion Lab Systems. This approach uses the KAD to assist in defining the front plane of the thigh segment. |
  
-===== Shank ===== +==== Shank ==== 
  
 When modelling the shank it is possible to encounter difficulties related to tibial torsion. This can be [[[[Visual3D:Documentation:Modeling:Segments:Modeling_the_Shank|accomodated]] by defining two shank segments: When modelling the shank it is possible to encounter difficulties related to tibial torsion. This can be [[[[Visual3D:Documentation:Modeling:Segments:Modeling_the_Shank|accomodated]] by defining two shank segments:
Line 84: Line 96:
   - the other to calculate the ankle joint angles.   - the other to calculate the ankle joint angles.
  
-===== Foot ===== +==== Foot ==== 
  
 There are several approaches to creating segments at the foot. There are several approaches to creating segments at the foot.
Line 100: Line 112:
   - using projected landmarks.   - using projected landmarks.
  
-==== Skeleton doesn't look right? ====+=== Skeleton doesn't look right? ===
  
 I am guessing that you are estimating where the surface of the force platform should be based on the wire frame bones of the foot segment; you shouldn’t rely on the bones. The bones are defined relative to the segment coordinate system and scaled uniformly in all directions to the length of the segment. I am guessing that you are estimating where the surface of the force platform should be based on the wire frame bones of the foot segment; you shouldn’t rely on the bones. The bones are defined relative to the segment coordinate system and scaled uniformly in all directions to the length of the segment.
Line 106: Line 118:
 For segment coordinate systems that are collinear with the long axis of the segment, the scaling works quite well. For the foot, however, the segment coordinate system is usually defined from the mid point of the ankle markers to the mid point of the distal metatarsals. As the length of the segment changes the orientation of the foot model will change, so that the model looks good for some subjects and not good for other subjects. The wireframe model is not data, so you can modify the orientation of the wire frame model, so that the animation "looks better" without affecting the data. For segment coordinate systems that are collinear with the long axis of the segment, the scaling works quite well. For the foot, however, the segment coordinate system is usually defined from the mid point of the ankle markers to the mid point of the distal metatarsals. As the length of the segment changes the orientation of the foot model will change, so that the model looks good for some subjects and not good for other subjects. The wireframe model is not data, so you can modify the orientation of the wire frame model, so that the animation "looks better" without affecting the data.
  
-===== Trunk ===== +==== Trunk ==== 
  
-The [[Visual3D:Documentation:Modeling:Segments:Modeling_the_Trunk|Example: Trunk]] discusses what to do if the trunk animation graphic is upside down and how one might approach modeling the thorax separate from the abdomen.+The torso presents a challenge for modelling because of the choice in defining which end is considered proximal and which end is considered distal. It is straightforward to decide that the feet are distal to the pelvis and the hands are distal to the pelvis. The trunk is less clear. In order to have a “joint” created at the shoulders it is necessary to define the trunk to have the proximal end at the pelvis and the distal end at the shoulders.
  
-===== Upper Arm ===== +The [[Visual3D:Documentation:Modeling:Segments:Modeling_the_Trunk|Modelling the Trunk]] example suggests some solutions to these difficulties depending on the question being asked.
  
-Defining the segment coordinate system for the humerus is particularly difficult because there are no bony landmarks to assist in determining the glenohumeral joint center, and medial and lateral markers on the epicondyles are close together and often do not represent the axis of rotation of the elbow. The explanation on [[Visual3D:Documentation:Modeling:Segments:Upper_Arm_And_Forearm|Upper_Arm_And_Forearm]] is personal opinion and users should not accept this as a recommendation, rather as one plausible approach. Further work needs to be done in this area and users must decide for themselves.+==== Upper Arm ==== 
  
-===== Forearm ===== +Defining the segment coordinate system for the humerus is particularly difficult because there are no bony landmarks to assist in determining the glenohumeral joint center, and medial and lateral markers on the epicondyles are close together and often do not represent the axis of rotation of the elbow. The [[Visual3D:Documentation:Modeling:Segments:Upper_Arm_And_Forearm|Upper Arm and Forearm]] example provides a personal opinion on how to model the upper arm and related shoulder joint.
  
-There are several challenges to defining the Forearm segment coordinate system because the Forearm is treated as a rigid segment model; supination/pronation of the forearm sometimes causes the segment coordinate system to be quite strange. On the [[Visual3D:Documentation:Modeling:Segments:Upper_Arm_And_Forearm|Upper Arm And Forearm]] page, we lay out recommendations for a static standing pose (anatomical position) and a recommendation if the static pose is the T-pose.+==== Forearm ==== 
  
-===== Other Objects =====  +There are several challenges to defining the Forearm segment coordinate system because the Forearm is treated as a rigid segment model; supination/pronation of the forearm sometimes causes the segment coordinate system to be quite strangeThe [[Visual3D:Documentation:Modeling:Segments:Upper_Arm_And_Forearm|Upper Arm And Forearm]] examples lays out recommendations for a static standing pose (anatomical position) and a recommendation if the static pose is the T-pose.
- +
-==== Construct a Box ==== +
- +
-  - one motion tracking marker has been attached to a box. +
-  - the box will not rotate when it is raised by the subject. +
-  - the box was omitted from the standing trial+
  
 ===== Examples =====  ===== Examples ===== 
  
-==== Rotate a segment coordinate system ==== +  - Rotating a segment coordinate system about its long axis (under construction) 
- +  [[visual3d:tutorials:modeling:introduce_missing_digitizing_pointer_markers|Introduce missing digitizing pointer markers]] 
-Rotating a segment coordinate system about its long axis+  - [[visual3d:documentation:modeling:segments:example_-_missing_tracking_marker_in_static_trial|Missing Tracking Marker in Static Trial]] (under construction)
- +
-==== Example: Missing Digitizing Pointer Markers==== +
-[[visual3d:tutorials:modeling:introduce_missing_digitizing_pointer_markers]] +
- +
-==== Example: Missing Tracking Marker in Static Trial ==== +
- +
-The following example is contrived, but it does happen. +
-Consider the following right thigh segment constructed using static markers RPPT, RAPT, RPDT, RADT. These tracking markers are saved to a model template, but for the next subject the static trial is missing the RAPT marker. If the model template is applied to this trial, the right thigh segment cannot be built. +
-The obvious solution to this problem is to simply remove the RAPT marker as a tracking marker, but there may be an occasion where one of the remaining 3 markers is missing for much of the movement trials because of occlusion. The solution is to replace the missing tracking target with a landmark that is placed at the expected location. +
- +
visual3d/documentation/modeling/segments/segment_overview.1743683384.txt.gz · Last modified: 2025/04/03 12:29 by wikisysop