visual3d:documentation:emg:processing:normalize_emg_to_maximum_30_second_interval
Table of Contents
Normalize EMG to Maximum 30 second interval
This page shows an example of processing EMG data using the Root Mean Square (RMS) Amplitude Method.
Using the Moving_RMS Command
Moving RMS using Frame Window
For example the command below applies the moving RMS with a 51 frame window:
Moving_RMS /Signal_Types=ANALOG /Signal_Names=EMG1+EMG2+EMG3 /Signal_Folder=PROCESSED /Num_Window_Frames= 51 ;
Moving RMS using Time Window
When reporting RMS, it's typically stated as an RMS window over a specified time interval of T.
An example of running an RMS over a 100 ms (0.1 seconds) window is achieved as:
! Moving RMS with 100ms window Moving_RMS /SIGNAL_TYPES=ANALOG /SIGNAL_NAMES=EMG1+EMG2+EMG3 /SIGNAL_FOLDER=PROCESSED ! /RESULT_SUFFIX= /RESULT_FOLDER=RMS /NUM_WINDOW_FRAMES= ( 0.1*PARAMETER::ANALOG::RATE ) + 1 ;
Using the Moving_RMS Command to Process EMG Data
An example of “putting it all together”. First the signal is Highpass filtered to remove the DC offset, then lowpass filtered and finally rectified:
! Apply a high pass filter with 50 Hz cutoff Highpass_Filter /Signal_Types=ANALOG /SIgnal_Names=EMG1+EMG2+EMG3 /Signal_Folder=ORIGINAL ! /Result_Suffix= ! /Result_Folder=PROCESSED ! /Filter_Class=BUTTERWORTH /Frequency_Cutoff= 50 /Num_Reflected= 0 /Total_Buffer_Size=100 /Num_Bidirectional_Passes=1 ; ! Apply a low pass filter with 500 Hz cutoff Lowpass_Filter /Signal_Types=ANALOG /SIgnal_Names=EMG1+EMG2+EMG3 /Signal_Folder=PROCESSED ! /Result_Suffix= ! /Result_Folder=PROCESSED ! /Filter_Class=BUTTERWORTH /Frequency_Cutoff= 500 /Num_Reflected= 0 /Total_Buffer_Size=100 /Num_Bidirectional_Passes=1 ; ! Moving RMS with 100ms window Moving_RMS /SIGNAL_TYPES=ANALOG /SIGNAL_NAMES=EMG1+EMG2+EMG3 /SIGNAL_FOLDER=PROCESSED ! /RESULT_SUFFIX= /RESULT_FOLDER=RMS /NUM_WINDOW_FRAMES= ( 0.1*PARAMETER::ANALOG::RATE ) + 1 ;
If you are using a version of Visual3D older than 4.94, you can use the example here.
visual3d/documentation/emg/processing/normalize_emg_to_maximum_30_second_interval.txt · Last modified: 2024/07/17 11:45 by sgranger