User Tools

Site Tools


visual3d:documentation:pipeline:metric_commands:metric_frames_between_events

This is an old revision of the document!


Metric Frames Between Events

Overview

The Metric Frames Between Events computes the number of frames between events (or start and end of a sequence of events) as a metric. This can be useful in determining time between events when frame rate is known. The Metric Event Count command can be found in the Pipeline Workshop under the Metric folder.

Note that the frames will be at the POINT RATE because Visual3D computes Events at POINT RATE.

Pipeline Command

The command can be found in the workshop as so:

Metric_Frames_Between_Events
! /RESULT_METRIC_FOLDER=PROCESSED
/RESULT_METRIC_NAME=
/EVENT_SEQUENCE=
/EXCLUDE_EVENTS=
! /GENERATE_MEAN_AND_STDDEV=TRUE
! /APPEND_TO_EXISTING_VALUES=FALSE
;

Command Parameters

The following table shows the command parameters seen above and their descriptions:

RESULT_METRIC_FOLDERThe name of the result signal folder
RESULT_METRIC_NAMEThe name of the result signal
EVENT_SEQUENCE A list of events (separated by “+” signs). For example, LHS+RTO
EXCLUDE_EVENTSThis Event Sequence must not be during the sequence requested. For example, LTO_RHS
GENERATE_MEAN_AND_STDDEV(True or False)Generate the mean and standard deviation for all of the metrics created
APPEND_TO_EXISTING_VALUES(True or False)Append this list of metrics to an existing metric of the same result name

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.

metrictimebtwneventsdlg.jpg

The dialog box allows you to assign values to the command parameters outlined above.

Simple Example: Frames between steps

If you are conducting analysis on a gait trial with gait events that have been defined, you can use Metric Frames Between Events to find the number of frames between each stride and compare. The number of frames separating one stride from another can be an indication of stride length and/or walking speed. Use the pipeline command below to perform the operation.

Metric_Frames_Between_Events
! /RESULT_METRIC_FOLDER=PROCESSED
/RESULT_METRIC_NAME=Frames_Between_Strides
/EVENT_SEQUENCE=LTO+RHS
/EXCLUDE_EVENTS=
/GENERATE_MEAN_AND_STDDEV=TRUE
! /APPEND_TO_EXISTING_VALUES=FALSE
;

A new metric folder containing the following data can be seen:

Complex Example: Finding time between events using frame rate

Most movement trials will provide important trial information, like capture rate, along with the data. Using this data we can calculate important values, like stride time, if they aren't already available. Here we will use Automatic Gait Events, Metric Frames Between Events, and Divide Signals by Constant to calculate the average time between heel strikes in a gait trial.

First, we will use the automatic gait events command to add tags to events in the trial like heel strikes and toe offs.

Automatic_Gait_Events
! /FRAME_WINDOW=8
! /USE_TPR=TRUE
! /TPR_EVENT_INSTANCE=1
;

Now that these events have been defined we can use Metric Frames Between Events to determine how many frames pass between each left toe off and the next heel strike, as well as the mean.

Metric_Frames_Between_Events
! /RESULT_METRIC_FOLDER=PROCESSED
/RESULT_METRIC_NAME=Frames_Between_Strides
/EVENT_SEQUENCE=LTO+LHS
/EXCLUDE_EVENTS=
! /GENERATE_MEAN_AND_STDDEV=TRUE
! /APPEND_TO_EXISTING_VALUES=FALSE
;

Using the capture rate of 150 frames/second for this trial (often found in the parameters folder) we can now calculate the time between each frame using *Divide Signal By Constant. By dividing the time between each event by the capture rate (constant) we can calculate the time. This will be done for each stride as well as for the mean stride time. <code> Divide_Signal_By_Constant /SIGNAL_TYPES=METRIC /SIGNAL_FOLDER=PROCESSED /SIGNAL_NAMES=Frames_Between_Strides_MEAN /SIGNAL_COMPONENTS=ALL ! /RESULT_TYPES= /RESULT_FOLDERS=Stride_Calculation /RESULT_NAME=Stride_Time_MEAN /APPLY_AS_SUFFIX_TO_SIGNAL_NAME=FALSE /CONSTANT=150 ; </code> <code> Divide_Signal_By_Constant /SIGNAL_TYPES=METRIC /SIGNAL_FOLDER=PROCESSED /SIGNAL_NAMES=Frames_Between_Strides /SIGNAL_COMPONENTS=ALL ! /RESULT_TYPES= /RESULT_FOLDERS=Stride_Calculation /RESULT_NAME=Stride_Time /APPLY_AS_SUFFIX_TO_SIGNAL_NAME=FALSE /CONSTANT=150 ; </code> You should now see two new folders named Stride_Time and Stride_Time_MEAN** containing stride time data for each trial.

Visual3D Versions supporting Subject Prefixes

NOTE: When using events in a command, the commands will iterate across subjects contained in the current workspace. As such, events and sequences listed as command parameters should NOT contain a prefix. As each subject is processed, the event range/sequence specified will automatically use the specific events prefixed for each subject as they are processed.

visual3d/documentation/pipeline/metric_commands/metric_frames_between_events.1758721404.txt.gz · Last modified: 2025/09/24 13:43 by wikisysop