Questions tagged [fft]

The fast Fourier transform is an efficient algorithm to compute the discrete Fourier transform (DFT) and its inverse.

Filter by
Sorted by
Tagged with
8
votes
1answer
2k views

Coloring a waveform with spectral centroid or by other means

Update 8 Unhappy of having to upload tracks to the service and looking at the new release of RekordBox 3 I've decided to take another look for an offline approach and a finer resolution :D Sounds ...
7
votes
5answers
2k views

Can someone help explain what this FFT workflow is doing to my signal, and why it works?

I am working with a piece of equipment that does acoustic analysis. It does this by acquiring a time domain signal and performing an FFT on it to extract the amplitude and phase at a single desired ...
7
votes
1answer
852 views

Does our brain constantly ifft to hear?

From my understanding our ears have hairs/cilia in the cochlea that resonate at frequencies within our hearing range. To me this means we are hearing in the frequency domain as opposed to the time ...
7
votes
3answers
7k views

Why does a narrower window in a Fourier transform or STFT give poor frequency resolution?

In theory of FT(Fourier transform) and STFT(Short Time Fourier Transform) it is said that "A wide window gives better frequency resolution but poor time resolution. A narrower window gives good time ...
7
votes
1answer
3k views

MFCC feature extraction

I have a block of audio and I have performed an FFT on it. Now what I want to do is convert this FFT into a set of MFCCs, however while I know I need to do something with weighting the FFT samples ...
7
votes
1answer
2k views

Do FFT-based filtering methods add intrinsic latency to a real time algorithm?

In a current audio processing application, I am working entirely in the time domain using IIR filters. This is so I can use an audio buffer of just 3 or 4 samples and can guarantee that there will be ...
7
votes
3answers
572 views

FFT on non-rectangular part of image

I need to do a FFT on an image for noise reduction, but the problem is that I do not need the complete image, but only a circle in the middle. The borders are a fixed rig, thus I am not interested in ...
7
votes
3answers
11k views

What are high frequencies and low frequencies in a signal?

I'm new to signal processing. I'm plotting a signal in the time-domain in matlab. I don't understand which parts of the signal are high frequencies and low frequencies, can someone explain what a high ...
7
votes
1answer
1k views

Good Heuristic Point Where Sending FFT to GPU is Computationally Worth It?

This is a rather simple question, but I haven't found much posted within the last 5 years or so regarding a good rule of thumb for computing an FFT on the GPU vs the CPU. I know that most of the ...
7
votes
2answers
4k views

Filtering - multiplication in frequency domain

I am trying to create a simple low pass filter, but I have got what I consider a surprising result when looking at the frequency response of a simple Butterworth filter. I have copied much of the ...
7
votes
2answers
922 views

DFT and multiplication/convolution equivalence

Is there a simple or potentially intuitive explanation for, with the DFT, vector multiplication in one domain being equivalent to circular convolution of the transforms of the vectors in the other ...
7
votes
1answer
2k views

Failed to implement Goertzel algorithm in Python

After some questioning on stackoverflow, I tried to implement a Goertzel algorithm in Python. But it doesn't work : https://gist.github.com/4128537 ...
7
votes
5answers
11k views

FFT Processing Gain

When transforming a noisy signal via Fast Fourier Transform from time to frequency domain there is a "Processing gain" of the FFT which increases as number of bins increases. I.e. the more bins I have ...
7
votes
2answers
19k views

How to shift the frequency spectrum?

Lets say we have a spectrum ranging from -X MHz to +X MHz. I would need to correct the frequency error in the spectrum by shifting the zero component to the middle (0 Hz). If the output (the ...
7
votes
2answers
986 views

Sense of zeropadding in a time domain

I have the task related to Radon transform which contains a subtask which uses resampling by means of DFT. Let's consider the non-periodical discretized signal (Fig.1) (for example the string of ...
6
votes
2answers
3k views

Setup frequency array properly

I've just stepped into the FFT's world since the last weeks, therefore I still don't have an clear overall idea of how to setup the frequency array. In case of even...
6
votes
2answers
41k views

Power spectral density vs. FFT bin magnitude

What's the difference between these? Both are measurements of some form of signal power, but surely there's some difference between the power they are measuring?
6
votes
2answers
1k views

Does down-mixing a signal before taking the fourier transform aid in signal detection?

Let us assume that we have a narrowband signal $s[n]$, at frequency $f_1$, and let us further assume that this $f_1$ is just below $\frac{f_s}{2}$, where $f_s$ is the sampling rate. Furthermore, let ...
6
votes
1answer
229 views

Morphing between two FFTs

I'm a musician and I'm making a script that takes a wave file and snaps each of its frequencies from the fourier transforms to the nearest musical harmonic. Thanks to help from another question I ...
6
votes
3answers
7k views

RMS calculation in frequency domain after windowing

I can calculate RMS in frequency domain as derived from Parseval's Theorem. But what if I have applied a windowing function before doing the FFT (in my case a Hann window)?. Now the RMS values are ...
6
votes
2answers
352 views

Can you quarter the processing time for real, symmetric FFTs?

The DFT of a real signal is Hermite-symmetric, so you can roughly halve the computation time/memory by not bothering to calculate half the values of the spectrum (and complex conjugating the existing ...
6
votes
1answer
4k views

SPL values from FFT of microphone signal

I am trying to get a frequency response vs dB SPL plot for recorded sounds. I have a microphone with a flat response, a sensitivity of 4mV/Pa, and 1 Pa = 94dB. To get the dB SPL, I have the following ...
6
votes
2answers
440 views

Efficient calculation of correlation function every $N^{\rm th}$ point

I would like to calculate a long correlation function of length say, 1e6 points. I have a prior knowledge that the correlation peak will be in point k*1000. Is there an efficient way to apply this ...
6
votes
1answer
791 views

How to choose a windowing function when performing a Chirp $\mathcal Z$-transform?

I've got some data sampled at 32 Hz. The only interesting stuff is happening between about 0-8 Hz and I've got to do real time batch processing and detect events with a delay of no more than a second. ...
5
votes
3answers
7k views

Effect of windowing on FFT magnitude

I have 2 sin waves: Fs = 1500; N = 100; t = (0:N-1)'/Fs; sinwave = sin(2*pi*15*t); sinwaveshifted = sin(2*pi*15*t + 1.3); If I get the magnitude at 15Hz using ...
5
votes
5answers
8k views

Fastest implementation of fft in C++?

I have a MATLAB program that uses fft and ifft a lot. Now I want to translate it to C++ for production. I used OpenCV but I ...
5
votes
3answers
13k views

Beginner Attempting FFT Signal Filtering With Numpy

I've tried looking around for information on this, but I'm really out of my league here. I'm a guy who likes to fool around with Python, and I wanted to make a program that would filter an audio file. ...
5
votes
3answers
4k views

I need advice about how to make an audio frequency analyzer

I just need some clarification of some very basic aspects of creating a frequency analyzer. I am writing a c++ program, so far it is just a media player, with a custom explorer. You can make ...
5
votes
3answers
1k views

How large FFTs can pull signals out of the noise floor?

I am trying to detect unknown RF tones around -140 dBm and my scan BW is 5 MHz, going through the Noise power calculations the signal is below the thermal noise based on the scan BW. I read that using ...
5
votes
5answers
3k views

Effects of linear interpolation of a time series on its frequency spectrum

Situation In order to synchonisize different time series i have to apply linear interpolation on them. After the interpolation and synchronization the signal is transferred into its frequency domain ...
5
votes
2answers
367 views

What is the uHz-rotator algorithm?

According to this page, the Baudline software tool implements ...the uHz-rotator algorithm that operates in the complex domain to calculate an extremely accurate estimate of the frequency. ...
5
votes
1answer
21k views

Why should one use windowing functions for FFT?

So I just revised my pitch calculation algorithm using a harmonic product spectrum algorithm. I was just curious about why this explanation of Harmonic Product Spectrum states that you need to ...
5
votes
2answers
6k views

breaking the input signal into segments while calculating DFT

Im reading a book about DSP and there is an example about investigating the sound that travel through the ocean. The sound was recorded as the time-domain signal and they tried to analyze it in ...
5
votes
2answers
26k views

Amplitude of the Signal in Frequency Domain different from Time Domain

How does the Amplitude of the Signal is changed when taking the FFT of a Signal, Have a look, The amplitude had changed from 2 to 30, and Here is my code for generating the above output, ...
5
votes
2answers
266 views

Is there any way to make a sampling rate reduction in the frequency domain?

Is there any way to take advantage of the frequency domain to make a clean/nice sampling rate reduction effect ? and how ? Basically, deducted from my tests: if I set to 0 the magnitude uppon a ...
5
votes
3answers
21k views

Number of DFT (FFT) Points Required for a Specific Frequency Resolution for an Oversampled Signal

I have a bandpass signal centered at 2 MHz and bandwidth of 50 kHz (the signal frequency varies from 2 MHz - 25 kHz to 2 MHz + 25 kHz). This signal is being sampled at 10 MHz. I want a frequency ...
5
votes
3answers
23k views

FFT to spectrum in decibel

Here is a 10 seconds-long 440hz sine wave normalized at $0\textrm{ dBFS}$. When computing the STFT (with the code below) of this audio file, I noticed that ...
5
votes
2answers
1k views

Question about convolution in time and frequency domain

My question is about the number of data points when doing a convolution (or correlation) in the the time or frequency domain. let's say we have two signals, $a(t)$ and $b(t)$ each of length $16$. When ...
5
votes
2answers
3k views

Simulating analog filter using convolution or converting with fft

My task is simple; I want to simulate analog low-pass filtering of an input signal, using Python. Note that the input signal is an array of values, not an analytical function. My first question is if ...
5
votes
5answers
2k views

Vertical lines noise in spectrogram

I have started looking into DSP and made an implementation of short-time fourier transform, using kissFFT to perform the FFT. I then render a spectrogram. An example image that I have generated can ...
5
votes
2answers
227 views

Why this two ways of FFT are different?

I have a small question that I am confused. N=16; x=[-pi:2*pi/N:pi-2*pi/N]; y=1.5*cos(x) z=fft(y)/N we will get negtive Fourier coefficients, however when we do ...
5
votes
1answer
2k views

Audio fingerprint questions

I am developing an application that requires audio fingerprints. I have been reading a lot of articles and PDFs, now i think i have gotten myself confused. Based on my present understanding, I have ...
5
votes
5answers
271 views

Remove a known wav file from recorded file

I looked at many similar questions but still cannot find an answer to my problem. I'm playing an audio file N, while recording a man talking (b). The problem is that the microphone gets the played ...
5
votes
1answer
7k views

Is it only me or matlab's periodogram's function is confusing?

I am really confused with matlab's periodogram. First of all, it says in the documentation that its unit is "dB per unit frequency". What does that really mean? I just don't quite get it. Second of ...
5
votes
1answer
579 views

My vocoder sounds bad

I'm writing a program to emulate a vocoder and it obviously works, but any speech that comes through is very difficult to understand. I'm going to explain exactly how my implementation works and then ...
5
votes
2answers
721 views

How to deal with signal not equally spaced in time when performing FFT?

I wonder to know what is the best way to handle not equally spaced in time signal when performing FFT ? I guess it depends on the signal itself. I work with signal with about 1000 - 5000 samples and ...
5
votes
1answer
2k views

Common Use Cases for 2D Non Separable Convolution Filters

In the image processing world, I've noticed that a lot of the popular convolution filters are separable. Here's a quick list of common separable filters: Sobel Gaussian blur Box filter (all ones, for ...
5
votes
1answer
2k views

Difference between a digital lock-in amplifier and a FFT when extracting phase of a signal?

I am trying to measure the relative phase of a sine wave fixed at a particular frequency in a noisy environment. My initial approach is to simply collect $N$ samples, take an FFT, and then just ...
5
votes
3answers
950 views

Determining the mean of of a sampled signal (improvements to time averaging method)

I am sampling a signal at 1kHz, which is essentially a single-frequency sinusoid with a DC offset (and a small amount of noise). I don't know the precise frequency of the sinusoid (it is at most 10Hz),...
5
votes
2answers
571 views

Autocorrelation Jitter

I'm doing autocorrelation (via fft) on pure, synthetic generated sinusoids and getting unexpected jitter in the results. The jitter depend on where in the sine the signal buffer is started. I get ...