Taking the Log Power Spectrum of a given frame of a time-domain signal

4 views (last 30 days)
I need to take a log power spectrum of each DFD frame (positive values only), but I am unsure how to do this. I would also like the option to plot each frame as a function of time. Each frame will subsequently be passed to a Spectral Flux function within my short-term analysis function.
I've searched the documentation and there seems to be a few permutations of the term 'Power Spectrum' including Power Spectrum 'Density' 'Estimator', which has confused me even more.
Is there an equation I can follow to do this, or a Matlab function, but not a function that does all the FFT, windowing, etc. for you.

Answers (1)

Salaheddin Hosseinzadeh
Salaheddin Hosseinzadeh on 10 May 2015
Dear Darryl,
I think you're looking for something called Short-Time Fourier transform. Which as you said applies a moving window to the time signal and only calculates the windows FFT at each given time.
MATLAB has a specific function that handles this task and thats spectrogram
Please look at the MATLAB documentation about spectrogram
Good Luck ;)

Community Treasure Hunt

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

Start Hunting!