User Tools

Site Tools


visual3d:tutorials:events:kinematic_event_detection

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:tutorials:events:kinematic_event_detection [2025/06/02 20:25] – [Introduction] wikisysopvisual3d:tutorials:events:kinematic_event_detection [2025/07/16 16:29] (current) wikisysop
Line 3: Line 3:
 ===== Overview ===== ===== Overview =====
  
-This tutorial is a comprehensive walkthrough of a research investigation presented at the Ontario Biomechanics Conference (OBC) 2025.  +This tutorial is a comprehensive walkthrough of a research investigation presented at the Ontario Biomechanics Conference (OBC) 2025. The study, titled "Assessing Different Kinematic Methods of Structuring Gait", explores how gait events can be reliably detected using only kinematic data, without access to lab-based kinetic systems such as force plates or instrumented treadmills. 
- +
-The study, titled "Assessing Different Kinematic Methods of Structuring Gait", explores how gait events can be reliably detected using only kinematic data, without access to lab-based kinetic systems such as force plates or instrumented treadmills.  +
  
 **Research Question: Are kinematic event detection methods able to reliably structure biomechanical waveforms in the gait cycle?** **Research Question: Are kinematic event detection methods able to reliably structure biomechanical waveforms in the gait cycle?**
Line 14: Line 11:
 ===== Introduction ====== ===== Introduction ======
  
-In gait analysis, the ability to structure biomechanical waveforms into gait cycles is needed for analyzing different kinematic signals and calculating various gait measures. +In gait analysis, the ability to structure biomechanical waveforms into gait cycles is needed for analyzing different kinematic signals and calculating various gait measures. Traditionally, gait cycles are structured using kinetic event detection methods based on force thresholds, which provide an objective and reliable signal for detecting ON (HS) and OFF(TO). However, kinetic data acquisition is not always available and with more in-field data collection it is not feasible.
- +
-Traditionally, gait cycles are structured using kinetic event detection methods based on force thresholds, which provide an objective and reliable signal for detecting ON (HS) and OFF(TO). However, kinetic data acquisition is not always available and with more in-field data collection it is not feasible.+
  
 Given these limitations, researchers have developed a range of kinematic event detection algorithms that rely on marker trajectories or derived joint kinematics to infer gait events. While these methods are promising, their accuracy and robustness - especially under varying walking speeds and among diverse populations- needs validation. Given these limitations, researchers have developed a range of kinematic event detection algorithms that rely on marker trajectories or derived joint kinematics to infer gait events. While these methods are promising, their accuracy and robustness - especially under varying walking speeds and among diverse populations- needs validation.
Line 22: Line 17:
 The aim of this tutorial is to present a step-by-step guide for using HAS-Motion software tools, specifically Visual3D, to process gait data and compare several kinematic-based methods against the kinetic-based gold standard. The aim of this tutorial is to present a step-by-step guide for using HAS-Motion software tools, specifically Visual3D, to process gait data and compare several kinematic-based methods against the kinetic-based gold standard.
  
-===== Dataset Description =====+===== Data =====
  
 {{:visual3d:tutorials:events:fukuchi_dataset_article_image.png?600|}} {{:visual3d:tutorials:events:fukuchi_dataset_article_image.png?600|}}
Line 33: Line 28:
 This tutorial focuses exclusively on **treadmill trials** and analyzes only **left-side events** (LHS and LTO). This simplifies gait cycle definitions to the interval between two identical events on the same foot, which is essential for consistent waveform normalization.  This tutorial focuses exclusively on **treadmill trials** and analyzes only **left-side events** (LHS and LTO). This simplifies gait cycle definitions to the interval between two identical events on the same foot, which is essential for consistent waveform normalization. 
  
-===== Sample Data Download and Contents ======+===== Sample Files ======
  
-To facilitate learning and application, we provide a premade ZIP archive containing all required files.+To facilitate learning and application, we provide a premade ZIP archive containing all required files which can be downloaded [[https://has-motion.com/download/YouTubeTutorial/OBC_Sample_Data.zip|here.]]
   * Includes a Visual3D preprocessing pipeline (**Preprocessing_Pipeline**) that performs kinetic event detection and computes the necessary joint kinematics.   * Includes a Visual3D preprocessing pipeline (**Preprocessing_Pipeline**) that performs kinetic event detection and computes the necessary joint kinematics.
   * **PREPROCESSED_PARTICIPANTS**: Preprocessed CMZ files for all 42 participants with the preprocessing pipelines applied.   * **PREPROCESSED_PARTICIPANTS**: Preprocessed CMZ files for all 42 participants with the preprocessing pipelines applied.
Line 43: Line 38:
   * **AutoFormatted_Gait_Data_Final**: Excel sheet containing resultant exported data from processing - listing method, trial and cycle instance+duration. This format is used for more accessible manipulation during analysis in Python.   * **AutoFormatted_Gait_Data_Final**: Excel sheet containing resultant exported data from processing - listing method, trial and cycle instance+duration. This format is used for more accessible manipulation during analysis in Python.
  
-Copies of the literature for the various kinematic methods used are also included in the ZIP archive: +
-  * {{ :visual3d:tutorials:events:copy_of_zeni_richards_and_higginson_-_2008_-_two_simple_methods_for_determining_gait_events_during_treadmill_and_overground_walking_using_kinematic_data.pdf |Zeni et al. (2018) Method 1 and 2}} +
-  * {{ :visual3d:tutorials:events:copy_of_de_asha_robinson_and_barton_-_2012_-_a_marker_based_kinematic_method_of_identifying_initial_contact_during_gait_suitable_for_use_in_real-time_visual_feedback_applications.pdf |DeAsha et al. (2012)}} +
-  * {{ :visual3d:tutorials:events:copy_of_hreljac_and_marshall_-_2000_-_algorithms_to_determine_event_timing_during_normal_walking_using_kinematic_data.pdf |Hreljac & Marshall (2000)}} +
-  * {{ :visual3d:tutorials:events:copy_of_o_connor_et_al_-_2007_-_automatic_detection_of_gait_events_using_kinematic_data_1_.pdf |OConnor et al. (2007)}}+
  
 ===== Workflow Outline ====== ===== Workflow Outline ======
  
-1. **Preprocessing in Visual3D**+====1. Preprocessing in Visual3D ====
  
 The first stage involves preprocessing all participant data using the **Preprocessing_Pipeline.v3s** script. This step takes treadmill-only trials for each participant and puts them into a single CMZ file and computes joint kinematic data. The first stage involves preprocessing all participant data using the **Preprocessing_Pipeline.v3s** script. This step takes treadmill-only trials for each participant and puts them into a single CMZ file and computes joint kinematic data.
Line 57: Line 48:
 During this stage, ground reaction force (GRF) data is used to automatically detect kinetic gait events, establishing a **baseline** for later comparison. Subject-specific anthropometric data (height and weight) are manually input from the provided spreadsheet. During this stage, ground reaction force (GRF) data is used to automatically detect kinetic gait events, establishing a **baseline** for later comparison. Subject-specific anthropometric data (height and weight) are manually input from the provided spreadsheet.
  
-2. **Understanding and Applying Kinematic Method Pipelines**+==== 2. Understanding and Applying Kinematic Method Pipelines ====
  
 The next phase involves applying several published and custom kinematic methods to detect gait events without relying on kinetic data.  The next phase involves applying several published and custom kinematic methods to detect gait events without relying on kinetic data. 
Line 68: Line 59:
  
  
-3. **Apply and Generate Measures to Compare all Methods**+==== 3. Apply and Generate Measures to Compare all Methods ====
  
 Once individual method pipelines were validated, they were consolidated into a master script (**FinalPipeline_ALL_METHODS_SEQUENCES.v3s**). This pipeline computes all gait event across all methods simultaneously and then defines gait cycles based on those events. Once individual method pipelines were validated, they were consolidated into a master script (**FinalPipeline_ALL_METHODS_SEQUENCES.v3s**). This pipeline computes all gait event across all methods simultaneously and then defines gait cycles based on those events.
Line 74: Line 65:
 These durations are stored under the METRIC::PROCESSED:: folder in the application. These durations are stored under the METRIC::PROCESSED:: folder in the application.
  
-4. **Exporting to Python for Statistical Evaluation**+==== 4. Exporting to Python for Statistical Evaluation ====
  
 Finally, the computed cycle durations are exported to an Excel file where each row represents one gait cycle instance. Finally, the computed cycle durations are exported to an Excel file where each row represents one gait cycle instance.
visual3d/tutorials/events/kinematic_event_detection.1748895939.txt.gz · Last modified: 2025/06/02 20:25 by wikisysop