TheoryTo be expanded sometime in the future.
Joint time-frequency analysis
What is a spectrogram?
- Horizontal is time-axis; Vertical is frequency axis; Graph intensity is signal power
- Similar to musical score
- The Discrete Fourier Transform (DFT) and the Fast Fourier Transform (FFT): basically the same, but the latter is much faster to calculate
- Short-term Fourier transform (STFT)
Trade-off between time resolution and frequency resolution
- Uncertainty principle
- Window functions for the STFT : Gaussian window offers lowest uncertainty product
- Choosing the length of the FFT : as big as possible!
- Choosing the window width :
appropriate to screen dimensions and sample length
Make the uncertainty expressed in number of pixels the same in both time and frequency
Time resolution vs. frequency resolutionBelow I've shown the spectrogram of a single call from one of my own recordings. The program used is CoolEdit.
To illustrate the effect of varying window size, it plotted the spectrogram for various FFT sizes, using a Gaussian window:
The spectrograms for 32 and 64 bands give the best of both worlds, fair time and fair frequency resolution, but are still quite blocky.
How do we remove the blockiness?The answer is simple: use a bigger FFT, but keep the window size small !!!
Fortunately, Cooledit allows us to use a window function that is smaller than the FFT size. For example, a 256-band spectogram with a 25% window size has the same time and frequency resolution as a 64-band spectrogram with a 100% window size, but it is not blocky at all!
Two conclusions can be drawn from these pictures:
- The FFT size determines the number of pixels in the vertical direction
- The window size determines the trade-off between horizontal and vertical resolution
free bat call analysis softwareThere's a lot of places on the net about sound analysis, here are just a few of them:
- Spectrogram by R.S. Horne, who also has a lot of links to other sound analysis software
- Lots of links at Steven L. Hopp's page about sound analysis software for bioacoustics
- A 'light' version of AviSoft SASLab
- A demo version of CoolEdit Pro, a very powerful sound editor, that also has a versatile spectral viewing mode
This page was last updated August 7th, 2005