Mean and Median Frequency, Total Power ,Peak Frequency

56 visualizaciones (últimos 30 días)
C PRASAD
C PRASAD el 26 de Jun. de 2022
Respondida: Ishaan Mehta el 26 de Jun. de 2022
I have three EMG signals, I found Time Doamin Features like RMS,Mean,STD etc..of that signal.Now I wolud like to find its Frequecy Doamin Fatures of those signal.
  1 comentario
dpb
dpb el 26 de Jun. de 2022
Well, you'll have to start by defining what those domain features are...I would presume there are definitions in the literature on the subject matter, but you can't presume anybody else here is expert in the area.

Iniciar sesión para comentar.

Respuestas (1)

Ishaan Mehta
Ishaan Mehta el 26 de Jun. de 2022
Hi C PRASAD
I understand that you want to convert a time-domain signal to its frequency-domain form and analyze its properties.
You can use fast-fourier transform (fft) technique to convert your signal to frequency-domain.
Please refer to Fourier transform documentation for the same.
For finding mean and median frequency, total power and peak power, I believe you can use MATLAB's meanfreq, medfreq, sum and max functions respectively.
You can refer to this MATLAB answers post for calculating power of the signal.
Here is a code snippet for the same:
% generating a basic time-domain signal
Ts = 1/50;
t = 0:Ts:10-Ts;
x = sin(10*pi*t);
plot(t,x);
% converting to frequency domain using fft
y = fft(x);
fs = 1/Ts;
f = (0:length(y)-1)*fs/length(y);
plot(f,abs(y));
% power at each frequency
pow = y.*conj(y);
% mean and median frequency
meanFreq = meanfreq(y);
medianFreq = medfreq(y);
% total power
totalPower = sum(pow);
% peak frequency i.e. frequency at highest amplitude
[maxAmp, maxAmpIdx] = max(abs(y));
peakFreq = f(maxAmpIdx);
Hope it helps
Ishaan Mehta

Categorías

Más información sobre Spectral Measurements en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by