h-h wrote:Do you agree that there might be a larger number of users wanting to have some blurring in spectrograms that doesn't destroy information?
I don't think that "blurring" is the correct approach.
Let's say (using simple numbers for clarity), that the FFT analysis provides the following amplitudes for frequency bands centred on these values:
Code: Select all
Freq (Hz) Amplitude (dB)
1000 -40
2000 -20
4000 -20
8000 -40
What is the likely amplitude between 2000 Hz and 4000 Hz?
If you look at "Plot Spectrum", you may notice that what this tool does is to interpolate between the available values to produce a smooth curve. The curve is produced by cubic interpolation. If we used this approach, then we would see a rising amplitude as the frequency rises above 2000 Hz and then gradually reduce down to meet the data point at 4000 Hz -20 dB. Of course we cannot absolutely know the exact amplitude at say 3000 Hz unless we have a sufficiently large window size to give us a data point at 3000 Hz, but it will almost certainly be above -20 dB. With a good choice of the type of windowing used for the FFT analysis and a good choice of interpolation, we are able to calculate a close approximation of amplitude values between 2000 Hz and 4000 Hz.
On the other hand, if we "blur" the spectrogram, then we would show a constant - 20 dB between 2000 Hz and 4000 Hz, which is lower than the actual amplitude, so not only are we making up amplitude values, but we are making up incorrect amplitude values. Simple interpolation between adjacent values (blurring) will almost always produce incorrect values, but unfortunately, more accurate forms of interpolation (such as cubic interpolation) are too costly in CPU cycles and would make drawing the spectrogram unacceptably slow,