visual3d:documentation:pipeline:metric_commands:temporal_distance_calculations_for_gait
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
visual3d:documentation:pipeline:metric_commands:temporal_distance_calculations_for_gait [2024/11/04 19:47] – [Report TD Vertical Chart] wikisysop | visual3d:documentation:pipeline:metric_commands:temporal_distance_calculations_for_gait [2025/05/20 18:23] (current) – Linked to Metric_Compute_Temporal_Distance commmand page. wikisysop | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Temporal Distance Calculations for Gait ====== | ====== Temporal Distance Calculations for Gait ====== | ||
- | These spatiotemporal metrics are part of the common cohort of [[[https:// | + | Visual3D calculates a set of for temporal and distance information based on a set of 4 gait events (Right and Left Heel Strike and Toe Off). These spatiotemporal metrics are part of the common cohort of [[https:// |
- | + | ||
- | Visual3D | + | |
+ | **Notes**: | ||
* If the Events do not exist, the metrics will return values of zero. | * If the Events do not exist, the metrics will return values of zero. | ||
* If a Right and Left foot segment do not exist, stride length and stride width cannot be computed. | * If a Right and Left foot segment do not exist, stride length and stride width cannot be computed. | ||
+ | * The treadmill unit vector refers to the Anterior Direction of walking. | ||
- | **Note that the treadmill unit vector refers to the Anterior Direction of walking.** | + | ===== Temporal Distance Dialog |
- | + | ||
- | [[Visual3D: | + | |
- | + | ||
- | ==== Metric_Compute_Temporal_Distance ==== | + | |
- | + | ||
- | === Current Command === | + | |
- | + | ||
- | < | + | |
- | Metric_Compute_Temporal_Distance | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | / | + | |
- | / | + | |
- | / | + | |
- | / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | </ | + | |
- | + | ||
- | === Legacy Command === | + | |
- | + | ||
- | < | + | |
- | Metric_Compute_Temporal_Distance | + | |
- | ! / | + | |
- | / | + | |
- | / | + | |
- | / | + | |
- | / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | ; | + | |
- | </ | + | |
- | + | ||
- | ==== Temporal Distance Dialog ==== | + | |
+ | ^ Dialog ^ Description ^ | ||
|{{: | |{{: | ||
- | |||
- | \\ | ||
- | |||
- | |||
|{{: | |{{: | ||
- | + | |{{: | |
- | \\ | + | |
- | + | ||
- | + | ||
- | |{{: | + | |
- | + | ||
- | \\ | + | |
- | + | ||
|{{: | |{{: | ||
- | |||
- | \\ | ||
- | |||
- | |||
|{{: | |{{: | ||
- | |||
- | \\ | ||
- | |||
- | |||
|{{: | |{{: | ||
- | \\ | + | ===== Reporting Temporal Distance Metrics ===== |
+ | Two chart styles exist for reporting temporal distance metrics: horizontal and vertical. The latter allows the metrics to be compared against control data. | ||
==== Report TD Horizontal Chart ==== | ==== Report TD Horizontal Chart ==== | ||
- | {{:TemporalDistance.gif}}\\ | + | Temporal distance metrics can be reported graphically in the [[visual3d:documentation: |
+ | {{: | ||
==== Report TD Vertical Chart ==== | ==== Report TD Vertical Chart ==== | ||
- | This chart has the option of linking | + | Temporal distance metrics can also be reported vertically, which allows |
- | The name of the metric is the same as the Temporal Distance metric signal names created automatically for the report (only the suffix MEAN is removed) | + | {{: |
- | There are many ways to create these GLOBAL METRIC signals, but many labs have numbers hard coded. | + | The name of the metric is the same as the Temporal Distance metric signal names created automatically for the report (only the suffix MEAN is removed). |
- | + | ||
- | The following example | + | |
< | < | ||
Line 148: | Line 49: | ||
</ | </ | ||
- | {{: | + | ^ Dialog ^ Description ^ |
- | + | | {{: | |
- | **Note** the selection of the Global Control Data Folder near the top of the dialog\\ | + | |
- | **Note** the selection of the vertical bars at the bottom right of the dialog. | + | |
- | + | ||
- | {{: | + | |
- | ==== Explanation of the Metrics | + | ===== Metrics |
The temporal distance calculations use snippets of the gait cycle to compute averages for each part. If a range is missing, that part will not be calculated. | The temporal distance calculations use snippets of the gait cycle to compute averages for each part. If a range is missing, that part will not be calculated. | ||
- | === Stance Time === | + | ==== Stance Time ==== |
The stance time for a given side of the body is the portion of the gait cycle when that side's leg is in contact with the ground. It is calculated as the time from that foot's heel strike event to its toe off event. | The stance time for a given side of the body is the portion of the gait cycle when that side's leg is in contact with the ground. It is calculated as the time from that foot's heel strike event to its toe off event. | ||
+ | < | ||
Right Stance Time = RHS-RTO | Right Stance Time = RHS-RTO | ||
- | |||
Left Stance Time= LHS-LTO | Left Stance Time= LHS-LTO | ||
+ | </ | ||
- | === Swing Time === | + | ==== Swing Time ==== |
The swing time for a given side of the body is the portion of the gait cycle when that side's leg is not contacting the ground. It is calculated as the time from that foot's toe off event to its heel strike event. | The swing time for a given side of the body is the portion of the gait cycle when that side's leg is not contacting the ground. It is calculated as the time from that foot's toe off event to its heel strike event. | ||
+ | < | ||
Right Swing Time= RTO-RHS | Right Swing Time= RTO-RHS | ||
- | |||
Left Swing Time= LTO-LHS | Left Swing Time= LTO-LHS | ||
+ | </ | ||
- | === Step Time === | + | ==== Step Time ==== |
The step time for a given side of the body is the portion of the gait cycle between the opposite side's heel strike event and the given side's heel strike event. | The step time for a given side of the body is the portion of the gait cycle between the opposite side's heel strike event and the given side's heel strike event. | ||
+ | < | ||
Right Step Time= LHS-RHS | Right Step Time= LHS-RHS | ||
- | |||
Left Step Time= RHS-LHS | Left Step Time= RHS-LHS | ||
+ | </ | ||
- | === Double Limb Support Time === | + | ==== Double Limb Support Time ==== |
The double limb support time for a gait cycle is the total time where both feet are in contact with the ground. This is the sum of an initial double limb support phase and a terminal double limb support phase. | The double limb support time for a gait cycle is the total time where both feet are in contact with the ground. This is the sum of an initial double limb support phase and a terminal double limb support phase. | ||
+ | < | ||
+ | Right Cycle Double Limb Support = Right Initial Double Limb + Right Terminal Double Limb | ||
Right Initial Double Limb= RHS to LTO | Right Initial Double Limb= RHS to LTO | ||
Right Terminal Double Limb= LHS to RTO | Right Terminal Double Limb= LHS to RTO | ||
+ | </ | ||
+ | |||
The global mean double limb support time (stored in the global workspace as METRIC:: | The global mean double limb support time (stored in the global workspace as METRIC:: | ||
- | **Note:** | + | **Note**: the initial and terminal double limb support phases are inverted between the left and right sides of the body. |
+ | < | ||
Left Initial Double Limb Support (stance) = Right Terminal Double Limb Support (stance) | Left Initial Double Limb Support (stance) = Right Terminal Double Limb Support (stance) | ||
Left Terminal Double Limb Support (stance) = Right Initial Double Limb Support (stance) | Left Terminal Double Limb Support (stance) = Right Initial Double Limb Support (stance) | ||
- | === Cycle Time === | + | </ |
+ | |||
+ | ==== Cycle Time ==== | ||
Cycle time is computed as an actual and computed. Actual uses the actual stride length / stride time. Computed speed uses the average of all the parts of the gait cycle which are seen, and sums up the parts. This is more accurate since more parts are used in the computation, | Cycle time is computed as an actual and computed. Actual uses the actual stride length / stride time. Computed speed uses the average of all the parts of the gait cycle which are seen, and sums up the parts. This is more accurate since more parts are used in the computation, | ||
- | === Flight Time === | + | ==== Flight Time ==== |
Flight time is the average time from LTO to RHS (ensuring no LHS or RTO events occur between LTO and RHS) and RTO to LHS (ensuring no RHS or LTO events occur between RTO and LHS). | Flight time is the average time from LTO to RHS (ensuring no LHS or RTO events occur between LTO and RHS) and RTO to LHS (ensuring no RHS or LTO events occur between RTO and LHS). | ||
+ | * Left flight time is calculated from LTO to RHS. | ||
+ | * Right flight time is calculated from RTO to LHS. | ||
- | Left flight time is calculated from LTO to RHS. | + | ==== Stride Length |
- | + | ||
- | Right flight time is calculated from RTO to LHS. | + | |
- | + | ||
- | === Stride Length === | + | |
Stride length is the distance between proximal end position of the foot at ipsilateral heel strike to the proximal end position of the foot at the next ipsilateral heel strike. Stride length and width requires a walking direction to be computed, so at least 1 completed stride needs to be present. | Stride length is the distance between proximal end position of the foot at ipsilateral heel strike to the proximal end position of the foot at the next ipsilateral heel strike. Stride length and width requires a walking direction to be computed, so at least 1 completed stride needs to be present. | ||
- | == Right Stride Length == | + | === Right Stride Length === |
- | + | ||
- | Right Stride length is defined as the length of the Right Stride vector from the Proximal End of the Right Foot Segment at successive RHS events | + | |
- | + | ||
- | Right Stride Length Count is the number of Right Strides. | + | |
- | == Left Stride Length | + | Right Stride length is defined as the length of the Right Stride vector from the Proximal End of the Right Foot Segment at successive RHS events. Right Stride Length |
- | Left Stride | + | === Left Stride |
- | Left Stride Length Count is the number of Right Strides. | + | Left Stride length is defined as the length of the Left Stride vector from the Proximal End of the Left Foot Segment at successive LHS events. |
- | == Stride Length Count == | + | === Stride Length Count === |
- | Stride Length Count is the sum of Right Stride | + | Stride Length Count is the sum of Right Stride |
- | == Treadmill == | + | === Treadmill |
If the person is walking on a treadmill, the distance travelled by the belt is added to the measured distance. | If the person is walking on a treadmill, the distance travelled by the belt is added to the measured distance. | ||
- | === Stride Width === | + | ==== Stride Width ==== |
Stride width is the medio-lateral distance between proximal end position of the foot at ipsilateral heel strike to the proximal end position of the foot at the next contralateral heel strike. Calculated by taking a stride vector, and the step in between, and computing the cross product (distance between the stride vector and the opposing step (heel) position | Stride width is the medio-lateral distance between proximal end position of the foot at ipsilateral heel strike to the proximal end position of the foot at the next contralateral heel strike. Calculated by taking a stride vector, and the step in between, and computing the cross product (distance between the stride vector and the opposing step (heel) position | ||
- | Left Stride Width is the perpendicular distance from the proximal end of the Left foot segment to the Right Stride vector. | + | Left Stride Width is the perpendicular distance from the proximal end of the Left foot segment to the Right Stride vector while Right Stride Width is the perpendicular distance from the proximal end of the Right foot segment to the Left Stride vector. Visual3D doesn' |
- | Right Stride Width is the perpendicular distance from the proximal end of the Right foot segment to the Left Stride vector. | + | ==== Step Length ==== |
- | We don't actually report (or store) | + | Step length is the distance between proximal end position of the contralateral foot at the previous contralateral heel strike to the proximal end position of the ipsilateral foot at the ipsilateral heel strike. This is calculated as the distance in the walking path direction. If the person is walking on a treadmill, the distance travelled by the belt under the stance foot is added to the measured distance. |
- | === Step Length | + | ==== Speed ==== |
- | + | ||
- | Step length is the distance between proximal end position of the contralateral foot at the previous contralateral heel strike to the proximal end position of the ipsilateral foot at the ipsilateral heel strike. This is calculated as the distance in the walking path direction. | + | |
- | + | ||
- | If the person is walking on a treadmill, the distance traveled by the belt under the stance foot is added to the measured distance. | + | |
- | + | ||
- | === Speed === | + | |
Speed is computed using the actual stride length / actual stride time. If there are no completed strides, no speed can be computed since the stride distance can't be computed using parts. | Speed is computed using the actual stride length / actual stride time. If there are no completed strides, no speed can be computed since the stride distance can't be computed using parts. | ||
- | === Statures/ | + | ==== Statures/ |
Average speed divided by the subject height | Average speed divided by the subject height | ||
- | === Cadence === | + | ==== Cadence |
Cadence is the rate at which a person walks, expressed in steps per minute. | Cadence is the rate at which a person walks, expressed in steps per minute. | ||
- | In other words: | + | < |
Left Steps Per Minute = 60 / [[# | Left Steps Per Minute = 60 / [[# | ||
Right Steps Per Minute = 60 / [[# | Right Steps Per Minute = 60 / [[# | ||
- | ==== Changing the text in the temporal distance chart ==== | + | </ |
- | In the folder | + | ===== Changing |
- | The contents of this ini file containing a mapping from the text used internally | + | In the folder |
- | + | ||
- | The text appearing to the right of the " | + | |
- | The default config file looks like this. | + | The contents of this ini file containing a mapping from the text used internally in Visual3D to the text that appears in the report graph. The text appearing to the right of the " |
- | \\ | + | **Temporal Distance**\\ |
- | **[Temporal Distance]**\\ | + | |
**Step Length Prompt=**Left Step Length / Right Step Length\\ | **Step Length Prompt=**Left Step Length / Right Step Length\\ | ||
**Step Time Prompt=**Left Step Time / Right Step Time\\ | **Step Time Prompt=**Left Step Time / Right Step Time\\ | ||
Line 308: | Line 199: | ||
**Flight Time=**Flight Time\\ | **Flight Time=**Flight Time\\ | ||
+ | ===== Subject computation using subject name/prefix parameters ===== | ||
- | \\ | + | Versions of Visual3D |
- | \\ | + | |
- | + | ||
- | + | ||
- | ==== Subject computation using subject name/prefix parameters ==== | + | |
- | + | ||
- | Visual3D | + | |
- | \\ | + | |
- | When using a version of Visual3D prior to implementing multisubject support, Visual3D treats each CMO/Z file as a single subject. In this way, the temporal and distance metrics are computed in the CMO/Z GLOBAL for the subject processed within that CMO. In the same manner, when computing the temporal and distance metrics across a library of subjects, each CMO/Z is treated as a single subject and then the subject averages are computed across CMO/Z files and placed into the workspace GLOBAL for the overall mean values across subjects.\\ | + | |
- | \\ | + | |
- | Visual3D with multisubject support extends these metric calculations to be computed for each subject that is identified in the .C3D parameters SUBJECT section. In this way, the a single CMO/Z GLOBAL will contain the computed metrics for each subject within the CMO/Z file, prefixed with the subject' | + | |
- | \\ | + | |
- | When working across CMO/Z files in the CMO/Z library, multisubject support for this command will treat each subject mean in each CMO/Z file as separate subject averages to be included for calculating the temporal and distance metric averages across all the subjects in the CMO/Z library. | + | |
- | + | ||
- | \\ | + | |
- | \\ | + | |
+ | Older versions of Visual3D will not support the subject prefix extensions of this command and will treat each CMO/Z file as a single subject. In this way, the temporal and distance metrics are computed in the CMO/Z GLOBAL for the subject processed within that CMO. In the same manner, when computing the temporal and distance metrics across a library of subjects, each CMO/Z is treated as a single subject and then the subject averages are computed across CMO/Z files and placed into the workspace GLOBAL for the overall mean values across subjects. | ||
+ | ===== Mimicking the Command ===== | ||
+ | These calculations can be mimicked by implementing them manually using [[Visual3D: | ||
visual3d/documentation/pipeline/metric_commands/temporal_distance_calculations_for_gait.1730749675.txt.gz · Last modified: 2024/11/04 19:47 by wikisysop