====== Integrate EMG ====== ===== Linear Envelope ===== === Computing the EMG Envelope using rectify and lowpass filter === This section will compute the EMG Envelope using rectify and lowpass filter. Rectify takes the absolute value of every element of a signal. Visual3D calculates signal rectification using the following formula: x(ti)= abs(x(ti)) === Lowpass Filter Cutoff === The default lowpass filter in Visual3D is a fourth order butterworth filter. Butterworth filters have an upper limit on the magnitude of the cutoff frequency. The maximum theoretical cutoff frequency is (sampling_rate*0.802/2). VIsual3D is a little more conservative than that because we have found the filter to be unreliable at the theoretical limits. The highest cutoff frequency that VIsual3D will allow you is 0.393* sampling-rate. If your EMG signals are sampled at 1000 Hz, the highest cutoff frequency is 393 Hz. === Example Script === The highpass filter is not part of the linear envelope, but is used to remove the [[Visual3D:Documentation:EMG:Processing:Detecting_Muscle_Onset|DC offset]]. ! Apply high pass filter with 50 hz cutoff Highpass_Filter /Signal_Types=ANALOG /SIgnal_Names=EMG1+EMG2+EMG3 /Signal_Folder=ORIGINAL ! /Result_Suffix= /Result_Folder=HIGHPASS ! /Filter_Class=BUTTERWORTH /Frequency_Cutoff=50 /Num_Reflected= 0 /Total_Buffer_Size=100 /Num_Bidirectional_Passes=1 ; ! Rectify the signals Rectify /SIGNAL_TYPES=ANALOG /SIGNAL_NAMES=EMG1+EMG2+EMG3 /SIGNAL_FOLDER=HIGHPASS ! /RESULT_NAMES= ! /RESULT_TYPES= /RESULT_FOLDER=RECTIFY ! /RESULT_SUFFIX= ; ! Apply a low pass filter Lowpass_Filter /Signal_Types= ANALOG /Signal_Names= EMG1+EMG2+EMG3 /Signal_Folder= RECTIFY ! /Result_Suffix= /Result_Folder=LOWPASS /Frequency_Cutoff=10 /Num_Reflected=50 ;