4 ms·
What always bothered me when trying to "feel" Fourier transforms is that to compute the oscillations, you need to wait some time. Mathematically, the transforma
by eric-burel 1y ago
What always bothered me when trying to "feel" Fourier transforms is that to compute the oscillations, you need to wait some time. Mathematically, the transformation includes computing integrals.
So it's tricky to understand how you compute the Fourier decomposition for a stream.
Illustrations always show the whole signal over time but in real life you get the signal progressively.
I'd be eager to read more on this.
- yobbo 1y agoAs I remember intuitively, it's a convolution over a time window. The size of the time window limits the frequencies that can be detected.
- thyristan 1y agoFor a stream, you use a sliding window to compute the FFT. The size of the window of course limits the lowest frequency range that you can 'see', same for the highest frequency through the time quantization that digital data usually has. So there will be an upper and lower frequency limit, beyond those limits the results are meaningless. And the window of course creates a latency, which is sometimes relevant for realtime audio filtering by FFT.
- dsego 1y agoYou do it in short windows, so you get eg. 512 samples and then run a short FFT. Or you can do longer windows that overlap, so e.g. hop by 512 but take 1024, more samples gives you more accurate results.
- jeremyscanvic 1y agoThe keyword you're looking for is time-frequency analysis and the main associated tool is the short-time Fourier transform(s). This is the theory underlying spectrograms and all those niceties!
- acjohnson55 1y agoCheck out https://en.m.wikipedia.org/wiki/Short-time_Fourier_transform https://en.m.wikipedia.org/wiki/Short-time_Fourier_transform This is the "Fourier transform" that is most often used, in practice in computing. A longer window length gives lower frequency resolution, but longer latency.