====== Onepass Filter ======
Instead of Visual3D's default bidirectional filter, it is possible to filter a signal with a one-pass filter using the Onepass_Filter command. This type of filter will introduce a delay in the resulting signal, but is often used for EMG signals because the latency reflects the elctro-mechanical delay. This filter may also be used for impact situations, such as hitting a stationary ball.
===== Pipeline Command =====
Onepass_Filter
! /SIGNAL_TYPES=
! /SIGNAL_FOLDER=ORIGINAL
! /SIGNAL_NAMES=
! /SIGNAL_COMPONENTS=
! /RESULT_FOLDER=PROCESSED
! /EVENT_SEQUENCE=
! /EXCLUDE_EVENTS=
! /CUTOFF_FREQUENCY=6
! /NUM_REFLECTED_FRAMES=0
! /NUM_EXTRAPOLATED_FRAMES=0
! /NUM_BUFFERED_FRAMES=0
! /FILTER_CLASS=BUTTERWORTH
! /ADD_EXTRA_FRAMES=FALSE
;
**Note**: the FILTER_CLASS can be BUTTERWORTH or CRITICALLY_DAMPED
==== Num_Reflected_Frames ====
{{:NumReflected.jpg}}
Filters are not particularly effective near the ends of the signal, so it is often useful to add an artificial buffer. Frames can be reflected about the endpoints.
==== Num_Extrapolate_Frames ====
{{:NumExtrapolated.jpg}}
==== Num_Buffered_Frames ====
{{:NumBufferedFrames.jpg}}
The signal can be buffered beyond the reflection or extrapolation.
{{:NumExtrapolatedAndBuffered.jpg}}
==== Add_Extra_Frames ====
{{:OnePassFilteredSignalWithExtraFrames.jpg}}
The one pass filter adds a delay to the signals and truncates the end of the signal.
{{:OnePassFilteredSignalWithExtraFrames.jpg}}
A Onepass filter is often used as an attempt to preserve an impact condition (or sudden discontinuity in the signal). An example might be a golf club immediately before impact. In an attempt to estimate the velocity of the club immediately impact two more frames of artificial data can be added by extrapolating the signal beyond the point of impact. see the circles in the above figures.
===== Command Dialog =====
{{:Onepass_Dlg.jpg}}
===== Legacy Command Name =====
This command replaces the legacy Butterworth_Filter_Onepass command:
Butterworth_Filter_Onepass
! /SIGNAL_TYPES=
! /SIGNAL_NAMES=
! /SIGNAL_FOLDER=ORIGINAL
! /SIGNAL_COMPONENTS=
! /RESULT_FOLDER=PROCESSED
! /EVENT_SEQUENCE=
! /EXCLUDE_EVENTS=
! /CUTOFF_FREQUENCY=6
! /NUM_REFLECTED_FRAMES=0
! /NUM_BUFFERED_FRAMES=0
;