visual3d:documentation:pipeline:meta_commands:meta_commands_overview
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
visual3d:documentation:pipeline:meta_commands:meta_commands_overview [2024/06/26 20:05] – removed sgranger | visual3d:documentation:pipeline:meta_commands:meta_commands_overview [2025/04/28 17:38] (current) – Cleaned up formatting and removed references to 3DSSPP. wikisysop | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Meta Commands Overview ====== | ||
+ | |||
+ | A meta-command is a Visual3D [[visual3d: | ||
+ | |||
+ | When Visual3D starts, it scans the meta-command directory (identified in the Edit-> | ||
+ | |||
+ | ===== Meta-Command Header Syntax ===== | ||
+ | |||
+ | < | ||
+ | ! BEGIN_META //- This line is a mandatory identifier to signal Visual3D | ||
+ | ! META_CMD_NAME = x //- Where x is the name you want your new command to have | ||
+ | </ | ||
+ | |||
+ | A meta-command can have multiple parameter specifications. Each one formatted: | ||
+ | < | ||
+ | ! META_PARAM = param_name: type : default_parameter : | ||
+ | </ | ||
+ | |||
+ | - **Param_Name**: | ||
+ | - **Type**: either integer, string, float, or signal | ||
+ | - For signal type parameters the signal type, name, and folder are needed in the [: | ||
+ | - **Default_Parameter**: | ||
+ | - **Optionality**: | ||
+ | |||
+ | < | ||
+ | ! END_META //- The mandatory end identifier | ||
+ | </ | ||
+ | |||
+ | For example: | ||
+ | < | ||
+ | ! BEGIN_META | ||
+ | ! META_CMD_NAME=Terry_Rt_Plantar_Flexors_Group | ||
+ | ! META_PARAM= MODEL_NAME : | ||
+ | ! META_PARAM= RIGHT_THIGH_MARKERS : | ||
+ | ! META_PARAM= RIGHT_SHANK_MARKERS: | ||
+ | ! META_PARAM= RIGHT_FOOT_MARKERS: | ||
+ | ! END_META | ||
+ | </ | ||
+ | |||
+ | This command will appear in the [[visual3d: | ||
+ | |||
+ | < | ||
+ | Terry_Rt_Plantar_Flexors_Group | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | ==== Editing a Meta-Command ==== | ||
+ | |||
+ | Meta-commands are stored on the disk, not in the workspace. In order to edit a meta-command it is necessary to open the file in a text editor such as [[visual3d: | ||
+ | |||
+ | ===== Meta-Command Examples ===== | ||
+ | |||
+ | Following is a list of Meta-Command Examples: | ||
+ | |||
+ | ==== EMG ==== | ||
+ | |||
+ | **1. Basic_EMG_Filters** - Basic filtering of EMG signals. A series of band-stop (notch) filter for filtering 60 Hz noise, followed by a high pass filter at 10 Hz and a low pass filter at 350 Hz. Click [[Visual3D: | ||
+ | |||
+ | **2. EMG_Resting_Background and Madonna_EMG_Remove Background** - To Offset trial data to accommodate for any DC shift by quantifying the EMG Background noise based on a " | ||
+ | |||
+ | **3. EMG_Compute_Normalization_Factors** - Compute the normalization factor for greatest ½ second activity during 5 second trial. A window of twenty-five .02 second intervals of integrated EMG is moved one interval at a time across the 5 seconds of data to find the greatest EMG. The average integrated EMG during the ½ second is used to compute the normalization factor. Click [[Visual3D: | ||
+ | |||
+ | **4. EMG_Normalize** - Typically the Scaling factors for EMG signals are the result of other data trials. Individual files in Visual3D cannot access the data from other files, so they only way signals can be shared is through the Global Workspace. For the sake of this example, we will assume that the scale factors already exist in the Global Workspace. Click [[Visual3D: | ||
+ | |||
+ | ==== Events ==== | ||
+ | |||
+ | **1. Copy_Events_Between_Files** - Copy Event Labels from the motion capture c3d file into the analog c3d file. One set of analog signals are collected with the motion capture system at 1000 Hz. One set of analog signals are collected with different software at 1500 Hz (frame 1 is synchronized). Click [[Visual3D: | ||
+ | |||
+ | **2. Compute_Events_Without_GRF** - Computing gait events from only kinematic data. The following example is based on the following article published in 2008. Zeni JA, Richards JG, Higginson JS (2008) Two simple methods for determining gait events during treadmill and overground walking using kinematic data. Gait & Posture 27, 710-714. Click [[Visual3D: | ||
+ | |||
+ | **3. Sit_To_Stand_Events** - Computing events for sit to stand from vertical height of the Center of Mass. The subject stands then sits and stands again. Click [[Visual3D: | ||
+ | |||
+ | **4. Number_Events_Sequentially** - This meta-command will rename an event sequentially across files. There are two examples. One that renames an Event_label sequentially and the other example uses this meta-command to find complete cycles across a series of trials. Click [[Visual3D: | ||
+ | |||
+ | ==== Metrics ==== | ||
+ | |||
+ | **1. Concatenate_Gait_Metrics** - This meta-command will create the gait metrics for each TAG, labeling the GLOBAL Metrics folder by this TAG, then concatenated the metrics from all TAGS into one signal and store it in a GLOBAL METRICS folder labelled ALL_TAGS. Click [[Visual3D: | ||
+ | |||
+ | **2. Add_Index_Column_To_Metric** - Visual3D cannot plot an array of metric values since the METRIC signals have no time base. This meta-command will create a new column of data containing index numbers, so that we can plot column1 against column2. Essentially it creates an array for the metric signal which will have the additional index column. Click [[|Metrics Example 3]] for details. | ||
+ | |||
+ | ==== Other ==== | ||
+ | |||
+ | **1. Create_Global_Means_For_Left_Right** - Creates a Global_Normalized_Signal_Mean event for left and right sides with common labels (e.g. RHS and LHS). Click [[Visual3D: | ||
+ | |||
+ | **2. Set_Corners** - Creates landmarks from Targets in a movement trial but not in the standing trial. The movement trial contains 4 markers that have been placed on the corners of an object. The standing trial does not contain these markers, but needs the corner locations for defining an object (segment). Click [[Visual3D: | ||
+ | |||
+ | **3. FP_Shift** - Meta-command example to shift force platform corners. Click [[Visual3D: | ||
+ | |||
+ | **4. Add_Sequential_Tags** - Given a set of C3D files opened in the Workspace, TAG files in numerical order regardless of their filenames. The purpose is to have a series of TAGS Trial1, Trial2, Trial 3,,..., etc for reporting. The order of the files is based on their internal order in Visual3D and may appear random to the user. Click [[Visual3D: | ||
+ | |||
+ | **5. Example_Meta** - This is an example of using a meta-command to process differing experimental protocols, models, metrics, and reports. The specifics for each experimental protocol can be passed as meta-command parameters. This could be used to standardize scripts and protocols within a lab. Click [[Visual3D: | ||
+ | |||
+ | **6. Linear_Regression_Explicit** - This is an example of using a meta-command to perform a linear regression of data that is passed as meta-command parameters. Click [[Visual3D: | ||
+ | |||
+ | **7. Linear_Regression_Events** - This is an example of using a meta-command to perform a linear regression between an event range for data that is passed as meta-command parameters. Click [[Visual3D: | ||
+ | |||
+ | |||
visual3d/documentation/pipeline/meta_commands/meta_commands_overview.1719432357.txt.gz · Last modified: 2024/06/26 20:05 by sgranger