User Tools

Site Tools


visual3d:documentation:pipeline:signal_commands:signal_management_commands

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.

gmsm_1.jpg

select the RKNEE_ANGLE Signal and the event sequence (e.g RHS to RHS) and select Add A New Signal

gnsm_2.jpg

select the LKNEE_ANGLE Signal and the event sequence (e.g LHS to LHS) and select Add A New Signal

gnsm_3.jpg

Enter the P2D Result Signal Name and click Create Standard Deviation Button gnsm_4.jpg

When you select OK the text representation of the command should be as follows:

Global_Normalized_Signal_Mean
/SIGNAL_TYPES=LINK_MODEL_BASED+LINK_MODEL_BASED 
/SIGNAL_NAMES=RKNEE_ANGLE+LKNEE_ANGLE 
/SIGNAL_FOLDER=ORIGINAL+ORIGINAL 
/SIGNAL_COMPONENTS=X+X 
/START_LABEL= 
/END_LABEL=
/EVENT_SEQUENCE= RHS+RHS++LHS+LHS
! /EXCLUDE_EVENTS= 
/RESULT_NAME=KNEE_FLEXION 
! /RESULT_FOLDER=ORIGINAL 
/NORMALIZE_POINTS=101 
/CREATE_STANDARD_DEVIATION=TRUE 
! /CALCULATE_PER_FILE=FALSE 
;

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, RKNEE_ANGLE, RHIP_ANGLE, LANKLE_ANGLE, LKNEE_ANGLE, and LHIP_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
/JOINTS=ANKLE+KNEE+HIP
/START_EVENT=HS
/END_EVENT=HS
;

The Meta-Command, which should be placed in the Meta_Command folder within the Plugins folder is as follows:

! BEGIN_META
! META_CMD_NAME=Create_Global_Means_For_Left_Right
! META_PARAM= TYPE  : string ::yes 
! META_PARAM= JOINTS  : string ::yes 
! META_PARAM= START_EVENT  : string ::yes 
! META_PARAM= END_EVENT  : string ::yes 
! END_META 

! Create a Global_Normalized_Signal_Mean event for left and right sides with common labels (e.g.RHS and LHS) 

For_Each /ITERATION_PARAMETER_NAME=INDEX1 
/ITEMS=::JOINTS
; 

For_Each 
/ITERATION_PARAMETER_NAME=INDEX2 
/ITEMS=X+Y+Z 
; 

Global_Normalized_Signal_Mean 
/SIGNAL_TYPES=LINK_MODEL_BASED+LINK_MODEL_BASED 
/SIGNAL_NAMES=R&::INDEX1&_&::TYPE+L&::INDEX1&_&::TYPE 
/SIGNAL_FOLDER=ORIGINAL+ORIGINAL 
/SIGNAL_COMPONENTS=::INDEX2+::INDEX2 
/START_LABEL=R&::START_EVENT+L&::END_EVENT 
/END_LABEL=R&::START_EVENT+L&::END_EVENT 
! /EVENT_SEQUENCE= 
! /EXCLUDE_EVENTS= 
/RESULT_NAME=::INDEX1&_&::TYPE&_&::INDEX2 
! /RESULT_FOLDER=ORIGINAL 
! /NORMALIZE_POINTS=101 
! /CREATE_STANDARD_DEVIATION=FALSE 
! /CALCULATE_PER_FILE=FALSE 
; 

End_For_Each 
/ITERATION_PARAMETER_NAME=INDEX2 
; 

End_For_Each 
/ITERATION_PARAMETER_NAME=INDEX1 
;

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
/SIGNAL_TYPES=LINK_MODEL_BASED 
/SIGNAL_NAMES=RKNEE_ANGLE 
/SIGNAL_FOLDER=ORIGINAL 
/SIGNAL_COMPONENTS=X 
/EVENT_SEQUENCE=RHS+RHS 
! /EXCLUDE_EVENTS= 
! /NORMALIZE_RESULT_POINTS= 
/RESULT_NAME=RKNEE_ANGLE_REP 
! /RESULT_FOLDER=ORIGINAL 
;

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
/SIGNAL_NAMES=Analog1+Analog2+Analog3
/SIGNAL_TYPES=ANALOG+ANALOG+ANALOG 
/SIGNAL_FOLDER=ORIGINAL+ORIGINAL+ORIGINAL 
/SIGNAL_COMPONENTS=0+0+0 
/RESULT_NAME=Vector 
/RESULT_TYPE=DERIVED 
/RESULT_FOLDER=PROCESSED 
/MERGE_TYPE=MERGE_AS_NEW_COMPONENTS 
;

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 
/SIGNAL_TYPE= 
/EXISTING_FOLDER= 
/NEW_FOLDER_NAME= 
/OVERWRITE_EXISTING_SIGNALS=FALSE 
;

Rename_Folder

Rename the specified data tree folder.

Rename_Folder 
/SIGNAL_TYPE= 
/EXISTING_FOLDER= 
/NEW_FOLDER_NAME= 
;

Delete_Folder

Deletes the specified folder. Note: that ORIGINAL folders cannot be deleted.

Delete_Folder 
/SIGNAL_TYPE= 
/FOLDER= 
;

Remove_Signals

Remove a signal from the Workspace. Note: that Visual3D will not allow the user to delete ORIGINAL signals.

Remove_Signals 
/SIGNAL_TYPES= 
/SIGNAL_NAMES=  
! /SIGNAL_FOLDER=ORIGINAL  
;

For example, remove one Derived signal and one Metric

Remove_Signals
/SIGNAL_TYPES=DERIVED+METRIC 
/SIGNAL_NAMES=  DERIVED1+METRIC1
! /SIGNAL_FOLDER=PROCESSED+PROCESSED
;

Rename_Signals

Rename a signal in the Workspace.

For example, rename a DERIVED signal in all of the ACTIVE files

Rename_Signals
! /FILE_NAME=
/SIGNAL_TYPES=DERIVED 
/SIGNAL_NAMES=Derived1
/SIGNAL_FOLDER=PROCESSED 
/NEW_SIGNAL_NAME=Derived2 
! /APPEND_TO_OLD_SIGNAL_NAME=FALSE
;
visual3d/documentation/pipeline/signal_commands/signal_management_commands.txt · Last modified: 2024/07/17 11:46 by sgranger