visual3d:documentation:pipeline:signal_commands:signal_management_commands
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
visual3d:documentation:pipeline:signal_commands:signal_management_commands [2024/06/17 17:08] – removed sgranger | visual3d:documentation:pipeline:signal_commands:signal_management_commands [2024/07/17 15:46] (current) – created sgranger | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Signal Management Commands ====== | ||
+ | |||
+ | ==== Contents ==== | ||
+ | |||
+ | |||
+ | |||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | * [[# | ||
+ | |||
+ | |||
+ | ==== Signal Management ==== | ||
+ | |||
+ | === Global_Normalized_Signal_Mean === | ||
+ | |||
+ | Time normalize a signal (in this case Knee Flexion Angle) between events (RHS to RHS) for Right Knee angles and (LHS to LHS) for Left Knee angles, and compute a GLOBAL mean and Standard Deviation. Note: the Global_Normalized_Signal_Mean command only works on one component at at time for each signal. (You must select either Y, Y or Z as the SIGNAL_COMPONENTS.) | ||
+ | |||
+ | First add the Global_Normalized_Signal_Mean command to the pipeline. Double click on the command to launch the dialog. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | select the RKNEE_ANGLE Signal and the event sequence (e.g RHS to RHS) and select **Add A New Signal** | ||
+ | |||
+ | {{: | ||
+ | |||
+ | select the LKNEE_ANGLE Signal and the event sequence (e.g LHS to LHS) and select **Add A New Signal** | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Enter the **P2D Result Signal Name** and click **Create Standard Deviation** Button {{: | ||
+ | |||
+ | When you select **OK** the text representation of the command should be as follows: | ||
+ | |||
+ | < | ||
+ | Global_Normalized_Signal_Mean | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | /END_LABEL= | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | **Note:** If **CALCULATE_PER_FILE=FALSE** Signals from all active files are used to compute the mean. | ||
+ | |||
+ | **Note:** If **CALCULATE_PER_FILE=TRUE** The mean value is computed for Signals from each active files. The global mean value is then the mean value of the mean values. | ||
+ | |||
+ | **Note:** The Output signal is a P2D Signal, which is associated with every file. The resulting signal, therefore, is stored in the GLOBAL_WORKPACE | ||
+ | |||
+ | == Meta-Command - Create_Global_Means_For_Left_Right == | ||
+ | |||
+ | A Meta-Command can be created for processing all 3 components of a number of model based signals using one pipeline command. | ||
+ | |||
+ | Let the original cmo file contain the following signals: **RANKLE_ANGLE**, | ||
+ | |||
+ | Let the events for heel strike be labeled **LHS** and **RHS**. The mean signal should be computed from heel strike to heel strike. | ||
+ | |||
+ | The Pipeline call for the Meta-Command below is: | ||
+ | |||
+ | < | ||
+ | Create_Global_Means_For_Left_Right | ||
+ | |||
+ | /TYPE=ANGLE | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | The Meta-Command, | ||
+ | |||
+ | < | ||
+ | ! BEGIN_META | ||
+ | ! META_CMD_NAME=Create_Global_Means_For_Left_Right | ||
+ | ! META_PARAM= TYPE : string :: | ||
+ | ! META_PARAM= JOINTS : string :: | ||
+ | ! META_PARAM= START_EVENT : string :: | ||
+ | ! META_PARAM= END_EVENT : string :: | ||
+ | ! END_META | ||
+ | |||
+ | ! Create a Global_Normalized_Signal_Mean event for left and right sides with common labels (e.g.RHS and LHS) | ||
+ | |||
+ | For_Each / | ||
+ | / | ||
+ | ; | ||
+ | |||
+ | For_Each | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | |||
+ | Global_Normalized_Signal_Mean | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
+ | |||
+ | End_For_Each | ||
+ | / | ||
+ | ; | ||
+ | |||
+ | End_For_Each | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | === Find Representative Signal === | ||
+ | |||
+ | Find the signal that is most representative of a set of signals. This implementation is based on the following article: | ||
+ | |||
+ | Shadmehr R and Mussa-Ivaldi FA (1994) **Adaptive Representation of Dynamics during Learning of a Motor Task**. J. Neuroscience 14(5), pp 3208-3224. | ||
+ | |||
+ | **Note:** that there is an error in the appendix that we have accounted for. | ||
+ | |||
+ | For example, to find the representative Knee Flexion Angle over the range RHS to RHS. | ||
+ | |||
+ | < | ||
+ | Find_Representative_Signal | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | === Merge_Data === | ||
+ | |||
+ | Merges data from more than one data name into a single signal either by **APPEND_TO_END** (appending one signal to the end of another signal) or by **MERGE_AS_NEW_COMPONENTS** (treat each original signal as a component of the new signal) | ||
+ | |||
+ | For example, create a vector from 3 analog signals. | ||
+ | |||
+ | < | ||
+ | Merge_Data | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | **Note:** If the Signal_Components parameter is empty, all components of the signals will be used. | ||
+ | |||
+ | === Copy_Folder === | ||
+ | |||
+ | Makes a copy of an existing folder. If the new folder already exists, select whether these signals should be overwritten (replaced). | ||
+ | |||
+ | < | ||
+ | Copy_Folder | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | === Rename_Folder === | ||
+ | |||
+ | Rename the specified data tree folder. | ||
+ | |||
+ | < | ||
+ | Rename_Folder | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | === Delete_Folder === | ||
+ | |||
+ | Deletes the specified folder. **Note:** that ORIGINAL folders cannot be deleted. | ||
+ | |||
+ | < | ||
+ | Delete_Folder | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | === Remove_Signals === | ||
+ | |||
+ | Remove a signal from the Workspace. **Note:** that Visual3D will not allow the user to delete ORIGINAL signals. | ||
+ | |||
+ | < | ||
+ | Remove_Signals | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | For example, remove one Derived signal and one Metric | ||
+ | |||
+ | < | ||
+ | Remove_Signals | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | === Rename_Signals === | ||
+ | |||
+ | Rename a signal in the Workspace. | ||
+ | |||
+ | For example, rename a DERIVED signal in all of the ACTIVE files | ||
+ | |||
+ | < | ||
+ | Rename_Signals | ||
+ | ! /FILE_NAME= | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | |||
visual3d/documentation/pipeline/signal_commands/signal_management_commands.1718644114.txt.gz · Last modified: 2024/06/17 17:08 by sgranger