User Tools

Site Tools


visual3d:documentation:pipeline:signal_commands:signal_management_commands

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:documentation:pipeline:signal_commands:signal_management_commands [2024/06/19 12:53] sgrangervisual3d:documentation:pipeline:signal_commands:signal_management_commands [2024/07/17 15:46] (current) – created sgranger
Line 1: Line 1:
-{{{{{{{{===== contents =====+====== Signal Management Commands ======
  
 +==== Contents ====
  
  
-  * [[#signal_management|1 signal management]] 
-    * [[#global_normalized_signal_mean|1.1 global_normalized_signal_mean]] 
-      * [[#meta-command_-_create_global_means_for_left_right|1.1.1 meta-command - create_global_means_for_left_right]] 
-    * [[#find_representative_signal|1.2 find representative signal]] 
-    * [[#merge_data|1.3 merge_data]] 
-    * [[#copy_folder|1.4 copy_folder]] 
-    * [[#rename_folder|1.5 rename_folder]] 
-    * [[#delete_folder|1.6 delete_folder]] 
-    * [[#remove_signals|1.7 remove_signals]] 
-    * [[#rename_signals|1.8 rename_signals]] 
  
 +  * [[#Signal_Management|1 Signal Management]]
 +    * [[#Global_Normalized_Signal_Mean|1.1 Global_Normalized_Signal_Mean]]
 +      * [[#Meta-Command_-_Create_Global_Means_For_Left_Right|1.1.1 Meta-Command - Create_Global_Means_For_Left_Right]]
 +    * [[#Find_Representative_Signal|1.2 Find Representative Signal]]
 +    * [[#Merge_Data|1.3 Merge_Data]]
 +    * [[#Copy_Folder|1.4 Copy_Folder]]
 +    * [[#Rename_Folder|1.5 Rename_Folder]]
 +    * [[#Delete_Folder|1.6 Delete_Folder]]
 +    * [[#Remove_Signals|1.7 Remove_Signals]]
 +    * [[#Rename_Signals|1.8 Rename_Signals]]
  
-===== signal management ===== 
  
-==== global_normalized_signal_mean ====+==== Signal Management ====
  
-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.)+=== Global_Normalized_Signal_Mean ===
  
-first add the global_normalized_signal_mean command to the pipelinedouble click on the command to launch the dialog.+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 DeviationNote: 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.)
  
-gmsm_1.jpg+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**+{{:GMSM_1.jpg}}
  
-gnsm_2.jpg+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**+{{:GNSM_2.jpg}}
  
-gnsm_3.jpg+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 gnsm_4.jpg+{{:GNSM_3.jpg}}
  
-when you select **ok** the text representation of the command should be as follows:+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:
  
 <code> <code>
-global_normalized_signal_mean +Global_Normalized_Signal_Mean 
-/signal_types=link_model_based+link_model_based  +/SIGNAL_TYPES=LINK_MODEL_BASED+LINK_MODEL_BASED  
-/signal_names=rknee_angle+lknee_angle  +/SIGNAL_NAMES=RKNEE_ANGLE+LKNEE_ANGLE  
-/signal_folder=original+original  +/SIGNAL_FOLDER=ORIGINAL+ORIGINAL  
-/signal_components=x+ +/SIGNAL_COMPONENTS=X+ 
-/start_label=  +/START_LABEL=  
-/end_label+/END_LABEL
-/event_sequencerhs+rhs++lhs+lhs +/EVENT_SEQUENCERHS+RHS++LHS+LHS 
-! /exclude_events=  +! /EXCLUDE_EVENTS=  
-/result_name=knee_flexion  +/RESULT_NAME=KNEE_FLEXION  
-! /result_folder=original  +! /RESULT_FOLDER=ORIGINAL  
-/normalize_points=101  +/NORMALIZE_POINTS=101  
-/create_standard_deviation=true  +/CREATE_STANDARD_DEVIATION=TRUE  
-! /calculate_per_file=false +! /CALCULATE_PER_FILE=FALSE 
 ; ;
 </code> </code>
  
-**note:** if **calculate_per_file=false** signals from all active files are used to compute the mean.+**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:** 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+**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 ===+== 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.+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 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.+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:+The Pipeline call for the Meta-Command below is:
  
 <code> <code>
-create_global_means_for_left_right+Create_Global_Means_For_Left_Right
  
-/type=angle +/TYPE=ANGLE 
-/joints=ankle+knee+hip +/JOINTS=ANKLE+KNEE+HIP 
-/start_event=hs +/START_EVENT=HS 
-/end_event=hs+/END_EVENT=HS
 ; ;
 </code> </code>
  
-the meta-command, which should be placed in the meta_command folder within the plugins folder is as follows:+The Meta-Command, which should be placed in the Meta_Command folder within the Plugins folder is as follows:
  
 <code> <code>
-begin_meta +BEGIN_META 
-meta_cmd_name=create_global_means_for_left_right +META_CMD_NAME=Create_Global_Means_For_Left_Right 
-meta_paramtype  : string ::yes  +META_PARAMTYPE  : string ::yes  
-meta_paramjoints  : string ::yes  +META_PARAMJOINTS  : string ::yes  
-meta_paramstart_event  : string ::yes  +META_PARAMSTART_EVENT  : string ::yes  
-meta_paramend_event  : string ::yes  +META_PARAMEND_EVENT  : string ::yes  
-end_meta +END_META 
  
-create global_normalized_signal_mean event for left and right sides with common labels (e.g.rhs and lhs+Create Global_Normalized_Signal_Mean event for left and right sides with common labels (e.g.RHS and LHS
  
-for_each /iteration_parameter_name=index1  +For_Each /ITERATION_PARAMETER_NAME=INDEX1  
-/items=::joints+/ITEMS=::JOINTS
  
  
-for_each  +For_Each  
-/iteration_parameter_name=index2  +/ITERATION_PARAMETER_NAME=INDEX2  
-/items=x+y++/ITEMS=X+Y+
  
  
-global_normalized_signal_mean  +Global_Normalized_Signal_Mean  
-/signal_types=link_model_based+link_model_based  +/SIGNAL_TYPES=LINK_MODEL_BASED+LINK_MODEL_BASED  
-/signal_names=r&::index1&_&::type+l&::index1&_&::type  +/SIGNAL_NAMES=R&::INDEX1&_&::TYPE+L&::INDEX1&_&::TYPE  
-/signal_folder=original+original  +/SIGNAL_FOLDER=ORIGINAL+ORIGINAL  
-/signal_components=::index2+::index2  +/SIGNAL_COMPONENTS=::INDEX2+::INDEX2  
-/start_label=r&::start_event+l&::end_event  +/START_LABEL=R&::START_EVENT+L&::END_EVENT  
-/end_label=r&::start_event+l&::end_event  +/END_LABEL=R&::START_EVENT+L&::END_EVENT  
-! /event_sequence=  +! /EVENT_SEQUENCE=  
-! /exclude_events=  +! /EXCLUDE_EVENTS=  
-/result_name=::index1&_&::type&_&::index2  +/RESULT_NAME=::INDEX1&_&::TYPE&_&::INDEX2  
-! /result_folder=original  +! /RESULT_FOLDER=ORIGINAL  
-! /normalize_points=101  +! /NORMALIZE_POINTS=101  
-! /create_standard_deviation=false  +! /CREATE_STANDARD_DEVIATION=FALSE  
-! /calculate_per_file=false +! /CALCULATE_PER_FILE=FALSE 
  
  
-end_for_each  +End_For_Each  
-/iteration_parameter_name=index2 +/ITERATION_PARAMETER_NAME=INDEX2 
  
  
-end_for_each  +End_For_Each  
-/iteration_parameter_name=index1 +/ITERATION_PARAMETER_NAME=INDEX1 
 ; ;
 </code> </code>
  
-==== find representative signal ====+=== Find Representative Signal ===
  
-find the signal that is most representative of a set of signals. this implementation is based on the following article:+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**. jneuroscience 14(5), pp 3208-3224.+Shadmehr R and Mussa-Ivaldi FA (1994) **Adaptive Representation of Dynamics during Learning of a Motor Task**. JNeuroscience 14(5), pp 3208-3224.
  
-**note:** that there is an error in the appendix that we have accounted for.+**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.+For example, to find the representative Knee Flexion Angle over the range RHS to RHS.
  
 <code> <code>
-find_representative_signal +Find_Representative_Signal 
-/signal_types=link_model_based  +/SIGNAL_TYPES=LINK_MODEL_BASED  
-/signal_names=rknee_angle  +/SIGNAL_NAMES=RKNEE_ANGLE  
-/signal_folder=original  +/SIGNAL_FOLDER=ORIGINAL  
-/signal_components= +/SIGNAL_COMPONENTS= 
-/event_sequence=rhs+rhs  +/EVENT_SEQUENCE=RHS+RHS  
-! /exclude_events=  +! /EXCLUDE_EVENTS=  
-! /normalize_result_points=  +! /NORMALIZE_RESULT_POINTS=  
-/result_name=rknee_angle_rep  +/RESULT_NAME=RKNEE_ANGLE_REP  
-! /result_folder=original +! /RESULT_FOLDER=ORIGINAL 
 ; ;
 </code> </code>
  
-==== merge_data ====+=== 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)+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.+For example, create a vector from 3 analog signals.
  
 <code> <code>
-merge_data +Merge_Data 
-/signal_names=analog1+analog2+analog3 +/SIGNAL_NAMES=Analog1+Analog2+Analog3 
-/signal_types=analog+analog+analog  +/SIGNAL_TYPES=ANALOG+ANALOG+ANALOG  
-/signal_folder=original+original+original  +/SIGNAL_FOLDER=ORIGINAL+ORIGINAL+ORIGINAL  
-/signal_components=0+0+0  +/SIGNAL_COMPONENTS=0+0+0  
-/result_name=vector  +/RESULT_NAME=Vector  
-/result_type=derived  +/RESULT_TYPE=DERIVED  
-/result_folder=processed  +/RESULT_FOLDER=PROCESSED  
-/merge_type=merge_as_new_components +/MERGE_TYPE=MERGE_AS_NEW_COMPONENTS 
 ; ;
 </code> </code>
  
-**note:** if the signal_components parameter is empty, all components of the signals will be used.+**Note:** If the Signal_Components parameter is empty, all components of the signals will be used.
  
-==== copy_folder ====+=== Copy_Folder ===
  
-makes a copy of an existing folder. if the new folder already exists, select whether these signals should be overwritten (replaced).+Makes a copy of an existing folder. If the new folder already exists, select whether these signals should be overwritten (replaced).
  
 <code> <code>
-copy_folder  +Copy_Folder  
-/signal_type=  +/SIGNAL_TYPE=  
-/existing_folder=  +/EXISTING_FOLDER=  
-/new_folder_name=  +/NEW_FOLDER_NAME=  
-/overwrite_existing_signals=false +/OVERWRITE_EXISTING_SIGNALS=FALSE 
 ; ;
 </code> </code>
  
-==== rename_folder ====+=== Rename_Folder ===
  
-rename the specified data tree folder.+Rename the specified data tree folder.
  
 <code> <code>
-rename_folder  +Rename_Folder  
-/signal_type=  +/SIGNAL_TYPE=  
-/existing_folder=  +/EXISTING_FOLDER=  
-/new_folder_name+/NEW_FOLDER_NAME
 ; ;
 </code> </code>
  
-==== delete_folder ====+=== Delete_Folder ===
  
-deletes the specified folder. **note:** that original folders cannot be deleted.+Deletes the specified folder. **Note:** that ORIGINAL folders cannot be deleted.
  
 <code> <code>
-delete_folder  +Delete_Folder  
-/signal_type=  +/SIGNAL_TYPE=  
-/folder+/FOLDER
 ; ;
 </code> </code>
  
-==== remove_signals ====+=== Remove_Signals ===
  
-remove a signal from the workspace. **note:** that visual3d will not allow the user to delete original signals.+Remove a signal from the Workspace. **Note:** that Visual3D will not allow the user to delete ORIGINAL signals.
  
 <code> <code>
-remove_signals  +Remove_Signals  
-/signal_types=  +/SIGNAL_TYPES=  
-/signal_names=   +/SIGNAL_NAMES=   
-! /signal_folder=original  +! /SIGNAL_FOLDER=ORIGINAL  
 ; ;
 </code> </code>
  
-for example, remove one derived signal and one metric+For example, remove one Derived signal and one Metric
  
 <code> <code>
-remove_signals +Remove_Signals 
-/signal_types=derived+metric  +/SIGNAL_TYPES=DERIVED+METRIC  
-/signal_names=  derived1+metric1 +/SIGNAL_NAMES=  DERIVED1+METRIC1 
-! /signal_folder=processed+processed+! /SIGNAL_FOLDER=PROCESSED+PROCESSED
 ; ;
 </code> </code>
  
-==== rename_signals ====+=== Rename_Signals ===
  
-rename a signal in the workspace.+Rename a signal in the Workspace.
  
-for example, rename a derived signal in all of the active files+For example, rename a DERIVED signal in all of the ACTIVE files
  
 <code> <code>
-rename_signals +Rename_Signals 
-! /file_name+! /FILE_NAME
-/signal_types=derived  +/SIGNAL_TYPES=DERIVED  
-/signal_names=derived1 +/SIGNAL_NAMES=Derived1 
-/signal_folder=processed  +/SIGNAL_FOLDER=PROCESSED  
-/new_signal_name=derived2  +/NEW_SIGNAL_NAME=Derived2  
-! /append_to_old_signal_name=false+! /APPEND_TO_OLD_SIGNAL_NAME=FALSE
 ; ;
 </code> </code>
  
  
-}}}}}}}}+
visual3d/documentation/pipeline/signal_commands/signal_management_commands.1718801603.txt.gz · Last modified: 2024/06/19 12:53 by sgranger