Limits of pitch and time resolution in signal analysis (FFT/SFTF)

In summary, there is always a trade off between frequency and time resolution when using DFT/FFT/SFTF or similar Fourier transforms. With a theoretical infinitely fast processor, it is possible to obtain both good time and frequency resolution by increasing the number of samples and floating point precision. Wavelets may offer better precision in measuring a specific frequency, but at the expense of precision elsewhere. It is also possible to use a lossy or lossless frequency-domain compression for signal analysis. The difference between DFT and SFTF is unclear, and it is unknown how SFTF is effective in pitch shifting.
  • #1
Twinbee
117
0
With DFT/FFT/SFTF or similar Fourier transforms, there's always a trade off between frequency and time resolution. It's like the 'uncertainty principle' for signal analysis.

I have a few questions regarding this:

1: With a theoretical infinitely fast processor, is it possible to obtain both good time AND frequency resolution? Which algorithm may help here?

2: How much better are wavelets for this sort of thing? If wavelets are better than FFT/SFTF, then could there be something better than even wavelets? What's the ceiling theoretically?

3: With the help of an incredibly fast CPU, one idea I thought of would be to analyze all possible sets of frequencies, amplitudes, and offsets of individual sine waves, mix them, and see which combination produces a result closest to a given window. Some signals/sounds may require one or two sine waves to come close, whilst others may require hundreds or even thousands of mixed sine waves (each with their own amplitudes, phase and frequency) to come close. Would this whole idea get close to perfection for signal analysis?

4: What's the difference between DFT of a given window length and SFTF?

5: Since the SFTF introduces only a rough approximation of the original signal (with 'blurring' around each frequency found), how can it be so effective with pitch shifting which it is commonly used for?

The reason for asking all this is because I'd love a spectragram VST in the future to display a more accurate analysis of any sound.
 
Last edited:
Physics news on Phys.org
  • #2
1: With a theoretical infinitely fast processor, is it possible to obtain both good time AND frequency resolution? Which algorithm may help here?
The FFT is good. It only has log linear complexity

2: How much better are wavelets for this sort of thing? If wavelets are better than FFT/SFTF, then could there be something better than even wavelets? What's the ceiling theoretically?
I'm going to have to read up on this but I don't think that wavelets will give good frequency resolution because there amplitude envelope should increase there bandwidth from over that of a pure sinusoidal signal.

3: With the help of an incredibly fast CPU, one idea I thought of would be to analyze all possible sets of frequencies, amplitudes, and offsets of individual sine waves, mix them, and see which combination produces a result closest to a given window. Some signals/sounds may require one or two sine waves to come close, whilst others may require hundreds or even thousands of mixed sine waves (each with their own amplitudes, phase and frequency) to come close. Would this whole idea get close to perfection for signal analysis?
If you know "a priori" that you have a small bias to describe the signal then there is no need to use an FFT and of course you can find a more efficient algorithm. Perhaps, fitting the signal to an ARMA model might be more appropriate.

4: What's the difference between DFT of a given window length and SFTF?

5: Since the SFTF introduces only a rough approximation of the original signal (with 'blurring' around each frequency found), how can it be so effective with pitch shifting which it is commonly used for?

The reason for asking all this is because I'd love a spectragram VST in the future to display a more accurate analysis of any sound.

I've never heard of the SFTF, do you have any references? Preferably with links I can read for free:)
 
  • #3
Twinbee said:
With DFT/FFT/SFTF or similar Fourier transforms, there's always a trade off between frequency and time resolution. It's like the 'uncertainty principle' for signal analysis.

I have a few questions regarding this:

1: With a theoretical infinitely fast processor, is it possible to obtain both good time AND frequency resolution? Which algorithm may help here?

First, no information is lost in a DFT / IDFT transform, except for the effects of floating point precision. So for a given data set and resolution, they have the same "resolution" in this sense (except for losses from limited floating point precision).

The resolution in this sense is simply the number of samples and the floating point precision of each sample (whether its the number of frequencies in the frequency domain or number of time samples in the time domain). So you just need both more CPU and more memory (for more samples and more floating point precision). So yes, you can get any resolution you want given enough CPU and memory.

Twinbee said:
2: How much better are wavelets for this sort of thing? If wavelets are better than FFT/SFTF, then could there be something better than even wavelets? What's the ceiling theoretically?

Wavelets only give you more precision in measuring a specific frequency at the expense (assuming limited CPU and memory resources) of precision elsewhere. Also, to truly take advantage of those benefits, the wavelet correlation should be done before the signal is digitized (in the front-end analog circuitry). The other advantage of wavelet analysis, which is the case even when implemented after digitization, is that you can effectively shorten buffer lengths, which is useful in real-time applications so that buffering delay is reduced.

Twinbee said:
3: With the help of an incredibly fast CPU, one idea I thought of would be to analyze all possible sets of frequencies, amplitudes, and offsets of individual sine waves, mix them, and see which combination produces a result closest to a given window. Some signals/sounds may require one or two sine waves to come close, whilst others may require hundreds or even thousands of mixed sine waves (each with their own amplitudes, phase and frequency) to come close. Would this whole idea get close to perfection for signal analysis?

I think you are simply describing a lossy or lossless frequency-domain compression, which does have its merits. For example, it saves memory.

Twinbee said:
4: What's the difference between DFT of a given window length and SFTF?

5: Since the SFTF introduces only a rough approximation of the original signal (with 'blurring' around each frequency found), how can it be so effective with pitch shifting which it is commonly used for?

Sorry, I don't know enough about SFTF.

Twinbee said:
The reason for asking all this is because I'd love a spectragram VST in the future to display a more accurate analysis of any sound.
 
Last edited:
  • #4
fleem said:
First, no information is lost in a DFT / IDFT transform, except for the effects of floating point precision. So for a given data set and resolution, they have the same "resolution" in this sense (except for losses from limited floating point precision).

Edit: Seems I said bellow what you wrote above but I'll say it anyway.

If you are using a DFT to approximate a Fourier transform, then increasing the number of time steps increases the frequency resolution well, increasing while increasing the sampling rate increases the highest frequency you can estimate. Given a fixed computation time this might be what the original poster meant by the trade off.

However, I don't think this is the uncertainty principle with regards to some kind of frequency transform. I know that the wider a rect function is the narrower it is in the frequency domain. I think this might be what be related to the uncertainty principle but it has been a while since I took a DSP course. I remember getting some question on a test before that had to do with DSP and an uncertainty principle and I'm not sure if anyone in the class new how to solve it.
 

Related to Limits of pitch and time resolution in signal analysis (FFT/SFTF)

What is the difference between FFT and SFTF?

The FFT (Fast Fourier Transform) and SFTF (Short-Time Fourier Transform) are both methods used in signal analysis to convert a signal from the time domain to the frequency domain. The main difference between the two is that FFT analyzes the entire signal at once, while SFTF divides the signal into shorter segments and analyzes each segment separately. This allows for a higher time resolution in SFTF, but a lower frequency resolution compared to FFT.

What is the limit of pitch resolution in signal analysis?

The limit of pitch resolution in signal analysis depends on the length of the analyzed signal and the chosen analysis method. In general, the shorter the signal and the higher the frequency, the lower the pitch resolution. This is due to the uncertainty principle, which states that it is impossible to have perfect time and frequency resolution simultaneously.

How does windowing affect time resolution in SFTF?

Windowing is a technique used in SFTF to reduce spectral leakage and improve frequency resolution. However, it also affects the time resolution by introducing a trade-off between time and frequency resolution. A longer window can improve frequency resolution, but at the cost of reduced time resolution.

What is the Nyquist-Shannon sampling theorem?

The Nyquist-Shannon sampling theorem states that in order to accurately reconstruct a signal, it must be sampled at a rate that is at least twice the highest frequency present in the signal. This means that the maximum frequency that can be analyzed is limited by the sampling rate, and exceeding this limit can result in aliasing and inaccurate analysis results.

How can I improve the time and frequency resolution in signal analysis?

To improve the time resolution, you can use a shorter window size in SFTF or use a different analysis method such as the Wavelet transform. To improve frequency resolution, you can increase the length of the analyzed signal or use a more specialized analysis method such as the Wigner-Ville distribution. However, it is important to note that there is always a trade-off between time and frequency resolution, so improving one will often result in a decrease in the other.

Similar threads

  • Biology and Medical
Replies
6
Views
472
Replies
1
Views
1K
  • Calculus
Replies
1
Views
1K
Replies
22
Views
2K
  • General Math
Replies
1
Views
763
Replies
1
Views
1K
Replies
3
Views
4K
Replies
11
Views
888
Replies
9
Views
1K
Back
Top