Table of Contents
Generic Pipeline to Create CMZ
The Visual3D Command Pipeline can accomplish nearly every step used in the application's user interface. The pipeline is essentially a set of commands/functions that allow you to streamline your data processing and reproducible for other subjects.
It's always recommended to learn the manual steps PRIOR to writing a pipeline command - learning the interface will help you build your pipeline. A full command pipeline tutorial is available as part of the Visual3D typical processing session: Command Pipeline tutorial.
Download the Create CMZ ZIP File which contains a sample pipeline script used to make CMZs.
When writing a pipeline to build a CMZ file, your script should follow the general procedure outlined below. Although not in order, the commands used in this sample pipeline are listed.
Load Static Trial
Command | Description |
Create_Hybrid_Model | Load static C3D file |
Apply_Model_Template | Apply model template (MDH File). - Tutorial to build a model template can be found here: Building a 6 DOF Model. |
Set_Subject_Height Set_Subject_Weight | Set necessary model metrics (most metrics should be calculated based on markers, but height and weight always need to be entered manually). |
Load Dynamic Trials
Command | Description |
File_Open | Load dynamic C3D Files. |
Assign_Model_File | Associated static trial with appropriate dynamic trials. - Note: If a marker falls off during data collection, you should re-take a static trial and associate the appropriate dynamic trials. |
Process Target and Analog Signals
Command | Description |
Select_Active_File | Set active file to ALL_FILES. |
Set_Use_Processed_Targets: Set to TRUE Set_Use_Processed_Analog: Set to TRUE | Set Use Processed: The PROCESSED folder should contain your interpolated or filtered data. If you tell Visual3D to use the PROCESSED folders, Visual3D will use the processed signals for kinetic/kinematic calculations. |
Set_Force_Platform_Threshold | Common minimum values are: - Overground plates: 20N - Treadmill: 50N |
Interpolate Lowpass_Filter | Gap fill and Filter Target Data, Low Pass Filter can be used to filter Analog data |
FP_Auto_Baseline Recalc | If using treadmill data, ONLY use FP_Auto_Baseline. |
Gait Events
Gait Events with Force Platforms
The following commands are involved in checking for clean force assignments. For example, refer to the Clean Foot Strike documentation. A “clean” foot strike indicates that measurements from the force platform are able to be used for analysis, and will not cause incorrect events to be created or produce “bad” kinetic calculations (GRF, Joint Moments, etc.).
Command | Description |
Interactive_Graph_Signals | Plot vertical component of KINETIC_KINEMATIC::LFT::FORCE_1 and KINETIC_KINEMATIC::RFT::FORCE_1 signals. |
Open_Force_Dialogs | Open force assignment dialog. |
Switch_Between_Tabs | Switch to Signals and Events tab. |
Pipeline_Breakpoint | Pause pipeline to manually check force assignments: a. Remove any force assignment that is not clean. b. Remove any partial force assignments (this includes force assignments at the start/end of the trial.) |
Select_Active_File | Set active file to ALL_FILES. |
Automatic_Gait_Events | Create gait events. |
Gait Events WITHOUT Force Platforms
When force data is not available, there are several methods for computing gait events using kinematic data, an overview of this process can be seen in Example - Kinematic Gait Events.
Report and Data Review
Command | Description |
Open_Report_Template | Load report template (RGT File). |
Switch_Between_Tabs Pipeline_Breakpoint | Stop pipeline to review data prior to export. |
NOTE:
- Many users are skipping report templates - but it's highly recommended to even create a simple report template to review data prior to export. No data collection is perfect, and reviewing the data prior to exporting ensures the data is a quality assurance step.
- Instructions to create a report template can be found here.
- The report template contains any signals defined using the Compute Model Based Function.
Signal Definitions and Processing
Command | Description |
Calculate Additional Signals | Signal math commands, allow you to create custom mathematical expressions. |
Calculate Metrics | Calculate Metrics, discrete quantitative values of signals such as maximum value, median value, value at a specified frame. |
Export & Save
Command | Description |
Export data to a text file | Converts data from the Data Tree into ASCII (plain text) data. |
Save CMZ | Saves Workspace file as CMZ. |