visual3d:tutorials:kinematics_and_kinetics:foot_and_ankle_angles
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
visual3d:tutorials:kinematics_and_kinetics:foot_and_ankle_angles [2024/06/19 14:05] – created sgranger | visual3d:tutorials:kinematics_and_kinetics:foot_and_ankle_angles [2025/03/04 19:06] (current) – [Create 3 projected landmarks] wikisysop | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Foot and Ankle Angles | ||
+ | |||
[[Visual3D: | [[Visual3D: | ||
Line 7: | Line 9: | ||
It seems intuitively clear that there must be a standard choice of the correct sequence for a given anatomical joint, but unfortunately, | It seems intuitively clear that there must be a standard choice of the correct sequence for a given anatomical joint, but unfortunately, | ||
- | ====== Preparing for the Tutorial | + | ===== Preparing for the Tutorial ===== |
1) Ensure that version 3.0 or later of Visual3D has been downloaded and installed.\\ | 1) Ensure that version 3.0 or later of Visual3D has been downloaded and installed.\\ | ||
Line 15: | Line 17: | ||
- | ====== Purpose | + | ===== Purpose ===== |
- | 1. Discuss the minimal marker placement for a single segment foot\\ | + | 1. Discuss the minimal marker placement for a single segment foot: **[[# |
+ | 2. Discuss the right-hand rule and its application to defining joint angles: **[[# | ||
- | **[[#Foot_Segment_-_Marker_Placement|Foot Segment | + | 3. Create a simple foot definition which can be used for kinetic calculations: |
- | 2. Discuss the right-hand rule and its application | + | 3. Use three different methods |
+ | **[[# | ||
- | **[[#Ankle_Angle_Explained|Ankle Angle Explained]]**\\ | + | **[[#Virtual_Foot_Method_2_-_Normalize_to_Proximal_Segment|Method 2 - Normalized to proximal segment]]** |
- | 3. Create a simple foot definition which can be used for kinetic calculations\\ | + | **[[# |
+ | ===== Discussion ===== | ||
- | **[[# | + | There are many ways to define the foot. With a simple single segment foot, two feet are often used: |
- | + | ||
- | 3. Use three different methods to define the foot for kinematic calculations: | + | |
- | + | ||
- | + | ||
- | [[# | + | |
- | + | ||
- | [[# | + | |
- | + | ||
- | [[# | + | |
- | + | ||
- | ====== Discussion ====== | + | |
- | + | ||
- | There are many ways to define the foot. With a simple single segment foot, two feet are often used.\\ | + | |
1) The first foot is used for kinetic calculations, | 1) The first foot is used for kinetic calculations, | ||
2) The second foot (often referred to as Virtual Foot) is used for kinematic calculations. The segment coordinate system of the kinematic foot is defined in such a way that the joint angle has a more clinically relevant meaning.\\ | 2) The second foot (often referred to as Virtual Foot) is used for kinematic calculations. The segment coordinate system of the kinematic foot is defined in such a way that the joint angle has a more clinically relevant meaning.\\ | ||
- | |||
There is no set definition of neutral ankle angle, but neutral is approximately when the foot is flat on the floor and the shank segment is vertical. Since the angle joint and toe target are not parallel to the floor, an initial offset is introduced in the ankle angle. The segment coordinate system of the kinematic foot is defined to remove this initial offset and create a more clinically relevant ankle joint angle. | There is no set definition of neutral ankle angle, but neutral is approximately when the foot is flat on the floor and the shank segment is vertical. Since the angle joint and toe target are not parallel to the floor, an initial offset is introduced in the ankle angle. The segment coordinate system of the kinematic foot is defined to remove this initial offset and create a more clinically relevant ankle joint angle. | ||
- | This tutorial will explain 3 ways to define a kinematic only foot. Keep in mind, there is no default Visual3D foot definition, and the correct definition is dependent on your laboratory' | + | This tutorial will explain 3 ways to define a kinematic only foot. Keep in mind, there is no default Visual3D foot definition, and the correct definition is dependent on your laboratory' |
Note that although segments are defined using different proximal and distal landmarks, all segments are tracked using the same targets (RFT1, RFT2, RFT3). Also, since these feet are kinematic only, the radius is irrelevant and can be set to 0.1. | Note that although segments are defined using different proximal and distal landmarks, all segments are tracked using the same targets (RFT1, RFT2, RFT3). Also, since these feet are kinematic only, the radius is irrelevant and can be set to 0.1. | ||
- | ====== Foot Segment - Marker Placement | + | ===== Foot Segment - Marker Placement ===== |
- | | | + | |__**The minimal useful marker set is as follows: |
The **placement of the calcaneous marker** is then very important. The height of the calcaneous marker relative to the height of the toe marker defines dorsi-plantar flexion in the standing posture. Medial lateral placement of the calcaneous marker is important because the sagittal plane of the foot is defined by the calcaneous marker, the toe marker, and the virtual ankle center. | The **placement of the calcaneous marker** is then very important. The height of the calcaneous marker relative to the height of the toe marker defines dorsi-plantar flexion in the standing posture. Medial lateral placement of the calcaneous marker is important because the sagittal plane of the foot is defined by the calcaneous marker, the toe marker, and the virtual ankle center. | ||
- | \\ | ||
+ | CA< | ||
+ | ST< | ||
+ | SMH< | ||
+ | VMH< | ||
+ | VMB< | ||
+ | PM< | ||
+ | FMB< | ||
+ | SMB< | ||
- | CA< | ||
- | ST< | ||
- | SMH< | ||
- | VMH< | ||
- | VMB< | ||
- | PM< | ||
- | FMB< | ||
- | SMB< | ||
* As previously mentioned, Visual3D does not have a default marker set or segment definition. It is therefore important to keep in mind that the marker set and segment definitions described in this tutorial as solely provided as an example. There are a number of alternatives for marker placement and segment definition. | * As previously mentioned, Visual3D does not have a default marker set or segment definition. It is therefore important to keep in mind that the marker set and segment definitions described in this tutorial as solely provided as an example. There are a number of alternatives for marker placement and segment definition. | ||
- | ===== Create a Kinetic Right Foot Segment ===== | + | ==== Create a Kinetic Right Foot Segment ==== |
+ | This is a simple representation of the foot that is adequate for many of the Kinematic and Kinetic calculations in Visual3D. It is not, however, adequate for the calculation of the ankle joint angle. | ||
- | This is a simple representation of the foot that is adequate for many of the Kinematic and Kinetic calculations in Visual3D. It is not, however, adequate for the calculation of the ankle joint angle. | + | If using the **Sample Data** |
- | |**1. Create the Right Foot Segment:**\\ \\ < | + | |**1. Create the Right Foot Segment:**|In the **Segments** tab, select //Right Foot// in the Segment Name box.\\ Click on the **Create Segment** button| |
+ | |**2. In the Right Foot tab, Enter these values**|**Define Proximal Joint and Radius | ||
+ | |**3. Click on Build Model and Close Tab before proceeding**|A 3D image of a foot will appear distal to the shank.| | ||
+ | |{{:tutorial1_16.jpg?600}}| | ||
- | ====== Virtual Foot Method 1 - Heel to Toe ====== | + | ===== Virtual Foot Method 1 - Heel to Toe ===== |
This method will use the heel and toe targets to define the proximal and distal ends of the foot. | This method will use the heel and toe targets to define the proximal and distal ends of the foot. | ||
- | ===== Creating the Ankle and Toe Joint Centers | + | ==== Creating the Ankle and Toe Joint Centers ==== |
In this tutorial we consider the Ankle Joint Center to be the distal end of the shank segment: | In this tutorial we consider the Ankle Joint Center to be the distal end of the shank segment: | ||
- | |**1. Create Right Ankle Joint Center (RAJC):**\\ \\ < | + | |**Create Right Ankle Joint Center (RAJC):**| |
- | + | |Click the **Landmarks** | |
- | |**2. Create Right Toe Joint Center (RTOE) at the same height as the heel marker:**\\ \\ < | + | |{{:RAJC.jpg}}| |
+ | |**Create Right Toe Joint Center (RTOE) at the same height as the heel marker:**| | ||
+ | |Click **Landmarks** button and then select **Add New Landmark**|**Landmark Name:** RTOE\\ **Define Orientation Using: | ||
+ | |{{: | ||
\\ | \\ | ||
Once the Ankle Joint Centers have been created, the Foot segments can now be defined. | Once the Ankle Joint Centers have been created, the Foot segments can now be defined. | ||
- | ===== Defining the Virtual Foot Segments | + | ==== Defining the Virtual Foot Segments ==== |
Note: This definition assumes that the heel, toe, and ankle center define the sagittal plane of the foot. Care must be taken to place the heel marker carefully. Any medial/ | Note: This definition assumes that the heel, toe, and ankle center define the sagittal plane of the foot. Care must be taken to place the heel marker carefully. Any medial/ | ||
- | |**3. Create Right Virtual Foot Segment: | + | |**3. Create Right Virtual Foot Segment: |
- | ===== Rotating the Virtual Foot Segments | + | ==== Rotating the Virtual Foot Segments ==== |
- | |\\ **4. Rotate the Segment Coordinate System of the Right Virtual Foot Segment: | + | |\\ **4. Rotate the Segment Coordinate System of the Right Virtual Foot Segment: |
- | ====== Virtual Foot Method 2 - Normalize to Proximal Segment | + | ===== Virtual Foot Method 2 - Normalize to Proximal Segment ===== |
One method for setting the Ankle Joint Angle to Zero degrees in the standing trial is to define the Segment Coordinate System for the Virtual Foot Segment to be aligned precisely with the Segment Coordinate System for the Shank. | One method for setting the Ankle Joint Angle to Zero degrees in the standing trial is to define the Segment Coordinate System for the Virtual Foot Segment to be aligned precisely with the Segment Coordinate System for the Shank. | ||
Line 114: | Line 109: | ||
Note: this definition assumes that the posture in the standing trial is to be considered an ankle angle of zero degrees regardless of the actual posture. | Note: this definition assumes that the posture in the standing trial is to be considered an ankle angle of zero degrees regardless of the actual posture. | ||
- | |**6. Create Right Virtual Foot Segment: | + | |**6. Create Right Virtual Foot Segment: |
**NOTE** Since the two segment coordinate systems are perfectly aligned the segments have identical orientation in the standing trial and hence have a joint angle of zero degrees.\\ | **NOTE** Since the two segment coordinate systems are perfectly aligned the segments have identical orientation in the standing trial and hence have a joint angle of zero degrees.\\ | ||
Line 120: | Line 115: | ||
(The segment coordinate system in this section will **not** need to be rotated to follow the convention in the rest of the tutorial) | (The segment coordinate system in this section will **not** need to be rotated to follow the convention in the rest of the tutorial) | ||
- | ====== Virtual Foot Method 3 - Projected landmarks | + | ===== Virtual Foot Method 3 - Projected landmarks ===== |
Note: This definition assumes that the foot segment is parallel to the floor regardless of the actual posture in the standing trial. | Note: This definition assumes that the foot segment is parallel to the floor regardless of the actual posture in the standing trial. | ||
- | ===== Create 3 Laboratory Landmarks | + | ==== Create 3 Laboratory Landmarks ==== |
Create 3 landmarks (Lab_Origin, | Create 3 landmarks (Lab_Origin, | ||
- | |**1. Create Lab_Origin: | + | |**1. Create Lab_Origin: |
- | |**2. Create Lab_X:**\\ \\ < | + | |**2. Create Lab_X:**\\ \\ < |
- | |**3. Create Lab_Y:**\\ \\ < | + | |**3. Create Lab_Y:**\\ \\ < |
- | ===== Create 3 projected landmarks | + | ==== Create 3 projected landmarks ==== |
Create 3 landmarks (RLA_Floor, RMA_Floor, RFT1_Floor) that are the projection of the 3 markers used to define the foot onto the floor. | Create 3 landmarks (RLA_Floor, RMA_Floor, RFT1_Floor) that are the projection of the 3 markers used to define the foot onto the floor. | ||
- | |**1. Create RLA_Floor: | + | |**1. Create RLA_Floor: |
- | |**2. Create RMA_Floor: | + | |**2. Create RMA_Floor: |
- | |**3. Create RFT1_Floor: | + | |**3. Create RFT1_Floor: |
- | ===== Create the Virtual Foot Segment | + | ==== Create the Virtual Foot Segment ==== |
The following method creates a foot coordinate system that is aligned with the laboratory coordinate system (as established by the 3 landmarks created above). Since the landmarks are projected onto the floor, the Segment Coordinate System for the Virtual Foot will be parallel to the floor. | The following method creates a foot coordinate system that is aligned with the laboratory coordinate system (as established by the 3 landmarks created above). Since the landmarks are projected onto the floor, the Segment Coordinate System for the Virtual Foot will be parallel to the floor. | ||
Line 150: | Line 145: | ||
This orientation is convenient for describing the angle of the foot segment relative to a surface. In this example, the ankle joint angle will be close to zero in the standing posture (if the shank is vertical, the angle will be zero). | This orientation is convenient for describing the angle of the foot segment relative to a surface. In this example, the ankle joint angle will be close to zero in the standing posture (if the shank is vertical, the angle will be zero). | ||
- | |**1. Create the Right Virtual Foot Segment: | + | |**1. Create the Right Virtual Foot Segment: |
- | ===== Rotate the Virtual Foot Segments | + | ==== Rotate the Virtual Foot Segments ==== |
|\\ **2. Rotate the Segment Coordinate System of the Right Virtual Foot Segment: | |\\ **2. Rotate the Segment Coordinate System of the Right Virtual Foot Segment: | ||
- | ====== Rotate Segment Coordinate System | + | ===== Rotate Segment Coordinate System ===== |
Note that the segment coordinate system is parallel to the floor but the z-axis lies in the plane of the floor rather than vertical (e.g. aligned more-or-less with the shank coordinate system). To resolve this: | Note that the segment coordinate system is parallel to the floor but the z-axis lies in the plane of the floor rather than vertical (e.g. aligned more-or-less with the shank coordinate system). To resolve this: | ||
Line 163: | Line 158: | ||
- | |**Rotate the foot coordinate system:**\\ \\ 1. In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ \\ 2. Click the **Modify Segment Coordinate System** button. | + | |**Rotate the foot coordinate system:**\\ \\ 1. In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ \\ 2. Click the **Modify Segment Coordinate System** button. |
\\ | \\ | ||
- | |3. In the **Segment Orientation** dialog box, enter these values:\\ \\ | **A/ | + | |3. In the **Segment Orientation** dialog box, enter these values:\\ \\ | **A/ |
- | ====== Ankle Joint Angle ====== | + | ===== Ankle Joint Angle ===== |
A final example of this tutorial can be seen in this [[https:// | A final example of this tutorial can be seen in this [[https:// | ||
Line 186: | Line 181: | ||
The Ankle Joint Angle can be defined using the Virtual Foot relative the Shank segment. The joint angle created by each foot definition can be plotted and compared to see which is the most ideal definition for your specific task. | The Ankle Joint Angle can be defined using the Virtual Foot relative the Shank segment. The joint angle created by each foot definition can be plotted and compared to see which is the most ideal definition for your specific task. | ||
- | ====== Ankle Angle Explained | + | ===== Ankle Angle Explained ===== |
- | ==== Understanding the Ankle Angle Signal | + | === Understanding the Ankle Angle Signal === |
This section will explain a little more about the definition of the ankle and the right hand rule.\\ | This section will explain a little more about the definition of the ankle and the right hand rule.\\ | ||
Line 194: | Line 189: | ||
- | ==== Right Hand Rule ==== | + | === Right Hand Rule === |
- | |{{tutorial8_7.gif}}\\ | + | |{{:tutorial8_7.gif}}\\ |
- | ==== Define the Ankle Angle (Following the Right Hand Rule for both sides) | + | === Define the Ankle Angle (Following the Right Hand Rule for both sides) === |
**Define the Left and Right Ankle Angles in Compute Model Based:**\\ | **Define the Left and Right Ankle Angles in Compute Model Based:**\\ | ||
Line 209: | Line 204: | ||
3. Define the ankle angle using the following convention\\ | 3. Define the ankle angle using the following convention\\ | ||
- | | {{LeftAnkleAngle.jpg}} | + | | {{:LeftAnkleAngle.jpg}} |
**NOTE:** RFT_2 and LFT_2 are virtual feet which were created using [[# | **NOTE:** RFT_2 and LFT_2 are virtual feet which were created using [[# | ||
Line 215: | Line 210: | ||
- | ==== Graph the Ankle Angle (without consistent sign convention) | + | === Graph the Ankle Angle (without consistent sign convention) === |
**Graph the X Y and Z components of the Ankle Angle:**\\ | **Graph the X Y and Z components of the Ankle Angle:**\\ | ||
Line 222: | Line 217: | ||
- | | {{DorsiPlantarflexion.jpg}}\\ **Left:** + Dorsiflexion\\ **Right:** + Dorsiflexion\\ | + | | {{:DorsiPlantarflexion.jpg}}\\ **Left:** + Dorsiflexion\\ **Right:** + Dorsiflexion\\ |
**As per the above description, | **As per the above description, | ||
- | ==== Define the Ankle Angle (Sign convention using the Right Hand Rule from the Right side only) ==== | + | === Define the Ankle Angle (Sign convention using the Right Hand Rule from the Right side only) === |
Define the Left and Right Ankle Angles in Compute Model Based: | Define the Left and Right Ankle Angles in Compute Model Based: | ||
- | | **Negate the Y and Z components of the Left Ankle Angle**\\ {{LeftAnkleAngle_negated.jpg}} | + | | **Negate the Y and Z components of the Left Ankle Angle**\\ {{:LeftAnkleAngle_negated.jpg}} |
**Negating a component simply multiplies the signal by -1, to change its sign convention.** | **Negating a component simply multiplies the signal by -1, to change its sign convention.** | ||
- | ==== Graph the Ankle Angle (with consistent sign convention) | + | === Graph the Ankle Angle (with consistent sign convention) === |
\\ | \\ | ||
Line 240: | Line 235: | ||
- | | {{DorsiPlantarflexion.jpg}}\\ **Left:** + Dorsiflexion\\ **Right:** + Dorsiflexion\\ | + | | {{:DorsiPlantarflexion.jpg}}\\ **Left:** + Dorsiflexion\\ **Right:** + Dorsiflexion\\ |
\\ | \\ | ||
Line 247: | Line 242: | ||
- | ====== Foot Progression Angle ====== | + | ===== Foot Progression Angle ===== |
The foot progression angle is a measure often used in clinical settings, to assess toe-in/ | The foot progression angle is a measure often used in clinical settings, to assess toe-in/ | ||
Line 253: | Line 248: | ||
Please note that neither of the proposed methods in this tutorial is the method used by Vicon in Nexus and referred as Foot Progression Angle. | Please note that neither of the proposed methods in this tutorial is the method used by Vicon in Nexus and referred as Foot Progression Angle. | ||
- | ===== Using a Virtual Lab ===== | + | ==== Using a Virtual Lab ==== |
When using a model that includes a Pelvis segment, it is recommended to create a Virtual Laboratory that will change with the direction of walking. This allows to compute consistent Pelvic angle, without being affected by the direction of walking. | When using a model that includes a Pelvis segment, it is recommended to create a Virtual Laboratory that will change with the direction of walking. This allows to compute consistent Pelvic angle, without being affected by the direction of walking. | ||
Line 259: | Line 254: | ||
The same also applies to the Foot Progression Angle. To compute the progression angle relative to the lab, it is important that the reference coordinate system used is consistent with the direction of walking. | The same also applies to the Foot Progression Angle. To compute the progression angle relative to the lab, it is important that the reference coordinate system used is consistent with the direction of walking. | ||
- | ==== Create a Virtual Lab ==== | + | === Create a Virtual Lab === |
First, create a [[Visual3D: | First, create a [[Visual3D: | ||
- | ==== Define the Foot Progression Angle ==== | + | === Define the Foot Progression Angle === |
Compute the Foot Progression Angle using Compute Model Based Data: | Compute the Foot Progression Angle using Compute Model Based Data: | ||
- | | {{LFT_Prog_Angle.png}}\\ **Negate the Y and Z components for the Left Foot Progression Angle** | + | | {{:LFT_Prog_Angle.png}}\\ **Negate the Y and Z components for the Left Foot Progression Angle** |
- | ==== Graph the Foot Progression Angles | + | === Graph the Foot Progression Angles === |
Considering that the Foot Progression Angle is a measure of Toe-In/ | Considering that the Foot Progression Angle is a measure of Toe-In/ | ||
- | {{FT_Prog_Angle_Graph.png}} | + | {{:FT_Prog_Angle_Graph.png}} |
- | ===== Using the General Pelvis Direction | + | ==== Using the General Pelvis Direction ==== |
Another method to compute Foot Progression Angle is to use the general direction of the pelvis as the main direction of progression. | Another method to compute Foot Progression Angle is to use the general direction of the pelvis as the main direction of progression. | ||
Line 281: | Line 276: | ||
A vector is created using the position of the Pelvis' | A vector is created using the position of the Pelvis' | ||
- | ==== Pipeline Script | + | === Pipeline Script === |
This pipeline script is markerset dependent. The user will need to modify the marker names accordingly in order for it to work correctly. The changes should be made in the Evaluate_Expression, | This pipeline script is markerset dependent. The user will need to modify the marker names accordingly in order for it to work correctly. The changes should be made in the Evaluate_Expression, | ||
Line 533: | Line 528: | ||
</ | </ | ||
- | ==== Graph the Foot Progression Angles | + | === Graph the Foot Progression Angles === |
This method created a derived signal, make sure to select DERIVED in the Signal Type dropdown list, in the Y Axis Properties in the Add / Modify Graph window. | This method created a derived signal, make sure to select DERIVED in the Signal Type dropdown list, in the Y Axis Properties in the Add / Modify Graph window. | ||
- | {{FT_Prog_Angle_Graph2.png}} | + | {{:FT_Prog_Angle_Graph2.png}} |
- | ====== References | + | ===== References ===== |
- ↑ < | - ↑ < |
visual3d/tutorials/kinematics_and_kinetics/foot_and_ankle_angles.1718805915.txt.gz · Last modified: 2024/06/19 14:05 by sgranger