User Tools

Site Tools


visual3d:documentation:pipeline:metric_commands:metric_time_of_minimum_from_event

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:metric_commands:metric_time_of_minimum_from_event [2024/06/19 12:51] sgrangervisual3d:documentation:pipeline:metric_commands:metric_time_of_minimum_from_event [2025/09/25 14:36] (current) – [Examples] wikisysop
Line 1: Line 1:
-{{event_labels are defined by the c3d format. event_labels exist only at motion capture frames (e.g. at point rate). for model based kinematic and kinetic calculations this is finebecause these signals only exist at motion capture frames.+====== Metric Time of Minimum from Event ====== 
 +====Overview==== 
 +The **Metric Time of Minimum from Event** command can be used to compute the time between an event and a minimum signal. For examplethis command could be used to determine the time between initial foot contact with the ground and minimum grf. The command can be found in the **Pipeline Workshop** under **Metric**.
  
-for measures of timing that involve signals that are at analog rate (e.g. force platform data) the motion capture rate isn't sufficient.+====Pipeline Command====
  
-in version 5 a series of metric commands were introduced to identify the time of a threshold crossing or maximum at the analog rate.+The command syntax is as follows:
  
-metrictimeofminimumfromevent.png+<code> 
 +Metric_Time_Of_Minimum_From_Event 
 +! /RESULT_METRIC_TIME= 
 +! /RESULT_METRIC_VALUE= 
 +! /RESULT_FOLDER=PROCESSED 
 +! /RESULT_COMPONENTS=ALL 
 +! /SIGNAL_TYPES= 
 +! /SIGNAL_FOLDER=ORIGINAL 
 +! /SIGNAL_NAMES= 
 +! /SIGNAL_COMPONENTS= 
 +! /FRAME_OFFSET=0 
 +! /TIME_OFFSET= 
 +! /EVENT_SEQUENCE= 
 +! /EXCLUDE_EVENTS= 
 +! /EVENT_SEQUENCE_INSTANCE=0 
 +! /EVENT_SUBSEQUENCE= 
 +! /SUBSEQUENCE_EXCLUDE_EVENTS= 
 +! /EVENT_SUBSEQUENCE_INSTANCE=0 
 +! /EVENT_INSTANCE=0 
 +! /FRAME_WINDOW=8 
 +! /THRESHOLD= 
 +
 +</code>
  
-**metric_time_of_minimum_from_event** +====Command Parameters====
-/result_event_name= +
-! /signal_types= +
-! /signal_names= +
-! /signal_folder=original +
-! /signal_components= +
-! /frame_offset=+
-! /time_offset= +
-! /event_sequence= +
-! /exclude_events= +
-! /event_sequence_instance=0 +
-! /event_subsequence= +
-! /subsequence_exclude_events= +
-! /event_subsequence_instance=0 +
-! /event_instance=0 +
-! /select_x= +
-! /select_y= +
-! /select_z= +
-! /select_residual= +
-! /start_at_event= +
-! /end_at_event= +
-! /frame_window=8 +
-**;**+
  
-}}+The following table shows the command parameters seen above and their descriptions: 
 +|**/RESULT_METRIC_TIME=**                                                                               |Time of minimum from event.                                                                      | 
 +|**/RESULT_METRIC_VALUE=**                                                                              |Value of minimum after event.                                                                    | 
 +|**/RESULT_FOLDER=**                                                                                    |Name of folder designated for results.                                                           | 
 +|**/RESULT_COMPONENTS=**                                                                                |Components to be included in results.                                                            | 
 +|**/SIGNAL_TYPES=**                                                                                     |The type of signal to be processed                                                               | 
 +|**/SIGNAL_NAMES=**                                                                                     |The name of the signal to be processed                                                           | 
 +|**/SIGNAL_FOLDER**                                                                                     |The folder of the signal to be processed                                                         | 
 +|**/SIGNAL_COMPONENTS=**                                                                                |The component of the signal to be processed                                                      | 
 +|**/FRAME_OFFSET=**                                                                                     |The offset (in frames) to apply to the event.                                                    | 
 +|**/TIME_OFFSET=**                                                                                      |The time offset (in seconds) to apply to the event.                                              | 
 +|**/EVENT_SEQUENCE=**                                                                                   |A list of events (separated by “+” signs).                                                       | 
 +|**/EXCLUDE_EVENTS=**                                                                                   |This Event_Sequence must not be during the sequence requested.                                   | 
 +|**/EVENT_SEQUENCE_INSTANCE=**                                                                          |Index of the sequence instance to evaluate (0 = all, 1 = first, etc.).                           | 
 +|**/EVENT_SUBSEQUENCE=**                                                                                |Optional inner event window within a broader sequence.                                           | 
 +|**/SUBSEQUENCE_EXCLUDE_EVENTS=**                                                                       |This Event subsequence must not be during the sequence requested.                                | 
 +|**/EVENT_SUBSEQUENCE_INSTANCE=**                                                                       |Index of the subsequence instance to evaluate (0 = all, 1 = first, etc.).                        | 
 +|**/EVENT_INSTANCE=**                                                                                   |Defines how many event occurrences to consider.                                                  | 
 +|**FRAME_WINDOW**                                                                                       |Size of the frame window to search around each point.                                            | 
 +|**THRESHOLD**                                                                                          |Threshold value to trigger event detection.                                                      | 
 + 
 + 
 +====Dialog==== 
 + 
 +The command can be edited in a text editor or in a dialog form. To edit in the dialog pop up form either click on the **Edit** button in the pipeline workshop or double-click on the pipeline command. The dialog is shown below. 
 + 
 +{{:MetricTimeofMinimumfromEvent.png}} 
 + 
 + 
 +The dialog box allows you to assign values to the command parameters outlined above. 
 + 
 +====Notes==== 
 + 
 +Event_Labels are defined by the c3d format. Event_Labels exist only at Motion Capture frames (e.g. at Point Rate). For model based kinematic and kinetic calculations this is fine, because these signals only exist at Motion Capture frames. 
 + 
 +For measures of timing that involve signals that are at ANALOG rate (e.g. Force Platform data) the motion capture rate isn't sufficient. 
 + 
 +In Version 5 a series of metric commands were introduced to identify the time of a threshold crossing or maximum at the analog rate. 
 + 
 +====Example: Timing of knee extension==== 
 +Here we will use **Metric Time of Minimum from Event** to find the time it takes a subject to reach a local minimum knee extension value (most knee bend) after each toe off. 
 + 
 +Pipeline Command: 
 +<code> 
 +Metric_Time_Of_Minimum_From_Event 
 + /RESULT_METRIC_TIME=R_Knee_ext_time 
 + /RESULT_METRIC_VALUE=R_knee_ext_val 
 + /RESULT_FOLDER=PROCESSED 
 + /RESULT_COMPONENTS=ALL 
 +/SIGNAL_TYPES=LINK_MODEL_BASED 
 + /SIGNAL_FOLDER=ORIGINAL 
 + /SIGNAL_NAMES=RKneeAngle 
 + /SIGNAL_COMPONENTS=X 
 +! /FRAME_OFFSET=0 
 +! /TIME_OFFSET= 
 + /EVENT_SEQUENCE=RTO+RHS 
 +! /EXCLUDE_EVENTS= 
 +! /EVENT_SEQUENCE_INSTANCE=0 
 +! /EVENT_SUBSEQUENCE= 
 +! /SUBSEQUENCE_EXCLUDE_EVENTS= 
 +! /EVENT_SUBSEQUENCE_INSTANCE=0 
 +! /EVENT_INSTANCE=0 
 +! /FRAME_WINDOW=8 
 +! /THRESHOLD= 
 +
 +</code> 
 + 
 +====Complex Example: Comparing Time to Minimum Ankle Moment and Time to Minimum Ankle Power==== 
 +Here we will build on the example above and use the **Metric Time of Minimum From Event** command along with the **Automatic Gait Signals** command to compare the time it takes to reach minimum ankle moment after a heel strike with the time it takes the reach the minimum ankle power on the same side and identify a relationship. 
 + 
 +Start by defining key gait events for the trial using **Automatic Gait Events**: 
 + 
 +<code> 
 +Automatic_Gait_Events 
 +! /FRAME_WINDOW=8 
 +! /USE_TPR=TRUE 
 +! /TPR_EVENT_INSTANCE=1 
 +
 +</code> 
 + 
 +Next we will compute the value and time to minimum value after heel strike of the ankle power and ankle moment for the right leg: 
 + 
 +<code> 
 +Metric_Time_Of_Minimum_From_Event 
 + /RESULT_METRIC_TIME=R_Ankle_Power_time 
 + /RESULT_METRIC_VALUE=R_Ankle_Power_val 
 + /RESULT_FOLDER=PROCESSED 
 + /RESULT_COMPONENTS=X 
 +/SIGNAL_TYPES=LINK_MODEL_BASED 
 + /SIGNAL_FOLDER=ORIGINAL 
 + /SIGNAL_NAMES=RAnklePower 
 + /SIGNAL_COMPONENTS=X 
 +! /FRAME_OFFSET=0 
 +! /TIME_OFFSET= 
 + /EVENT_SEQUENCE=RHS+RTO 
 +! /EXCLUDE_EVENTS= 
 +! /EVENT_SEQUENCE_INSTANCE=0 
 +! /EVENT_SUBSEQUENCE= 
 +! /SUBSEQUENCE_EXCLUDE_EVENTS= 
 +! /EVENT_SUBSEQUENCE_INSTANCE=0 
 +! /EVENT_INSTANCE=0 
 +! /FRAME_WINDOW=8 
 +! /THRESHOLD= 
 +
 +</code> 
 + 
 +<code> 
 +Metric_Time_Of_Minimum_From_Event 
 + /RESULT_METRIC_TIME=R_GRF_time 
 + /RESULT_METRIC_VALUE=R_GRF_val 
 + /RESULT_FOLDER=PROCESSED 
 + /RESULT_COMPONENTS=X 
 +/SIGNAL_TYPES=LINK_MODEL_BASED 
 + /SIGNAL_FOLDER=ORIGINAL 
 + /SIGNAL_NAMES=RGRF 
 + /SIGNAL_COMPONENTS=X 
 +! /FRAME_OFFSET=0 
 +! /TIME_OFFSET= 
 + /EVENT_SEQUENCE=RHS+RTO 
 +! /EXCLUDE_EVENTS= 
 +! /EVENT_SEQUENCE_INSTANCE=0 
 +! /EVENT_SUBSEQUENCE= 
 +! /SUBSEQUENCE_EXCLUDE_EVENTS= 
 +! /EVENT_SUBSEQUENCE_INSTANCE=0 
 +! /EVENT_INSTANCE=0 
 +! /FRAME_WINDOW=8 
 +! /THRESHOLD= 
 +
 +</code> 
 + 
 +Four new folders within **PROCESSED** in the **METRIC** folder tell us how long it takes to reach the minimum right ankle power and right GRF values as well as the time it takes to reach those values.  
 + 
 +{{:visual3d:documentation:pipeline:metric_commands:rankle_val_2.png?400|}}{{:visual3d:documentation:pipeline:metric_commands:rankle_time_2.png?400|}} 
 + 
 +{{:visual3d:documentation:pipeline:metric_commands:moment_time.png?400|}}{{:visual3d:documentation:pipeline:metric_commands:moment_value.png?400|}}
visual3d/documentation/pipeline/metric_commands/metric_time_of_minimum_from_event.1718801491.txt.gz · Last modified: 2024/06/19 12:51 by sgranger