Timeline for Easy Filter with FFT and Convolution
Current License: CC BY-SA 3.0
7 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Jan 25, 2014 at 17:19 | comment | added | hotpaw2 | Note that you have to use an FFT that is longer than the sum of the length of your samples and the length of the impulse response of your filter. Just zeroing bins can cause ringing artifacts. See: dsp.stackexchange.com/questions/6220/… If you have more than 1 second of data, you will have to use overlap-add or overlap save fast convolution to combine your 1 second frames. | |
Jan 25, 2014 at 16:04 | vote | accept | ShuftY | ||
Jan 25, 2014 at 15:54 | comment | added | user7358 | No. You would multiply the transformed of the signal you want to filter with that box function. You could also convolve the signal with the inverse transform of the box function instead. | |
Jan 25, 2014 at 15:53 | comment | added | ShuftY | Okay just to get it right. Lets say i want to boost all above 100Hz. I got 44100 samplepoints. I make a new vector with vector[0] to[99] and [44099] to[43999] = 0 an the rest is set to 1. This is my "Box" function. Then i inverse Transform this vector and then multiply it with my Fouriertransformed vector of samplingpoints and denn inverse transform it? | |
Jan 25, 2014 at 15:17 | comment | added | user7358 | I didn't notice you are asking for that. The signal you mean depends on the situation. Eg. if you want to have a highpass, you should set the "low" Fourier coefficients (The ones with low indices and their symmetry partners with high indices) to zero. You would then multiply with a "box" function. The signal you would be convolving with then is the inverse transform of that box function. | |
Jan 25, 2014 at 15:10 | comment | added | ShuftY | Well thank you =) But can you give me an equation to campute the signal to convolute with? | |
Jan 25, 2014 at 15:01 | history | answered | user7358 | CC BY-SA 3.0 |