View Single Post
  #2 (permalink)  
Old 03-24-2009, 12:32 PM
SG
Guest
 
Posts: n/a
Default Re: Knowledge help: How to create own filter if I know frequencyresponse?

On 24 Mrz., 11:22, "fittipaldi" <em.fittipa...@abv.bg> wrote:
> Let's assume I have an idea for a 1024 point filter. I know how the
> frequency response should be: all points between 100 and 924 are 0 and all
> other 1 (I think this should be a perfect low-pass (or maybe not?). So I
> know the f.response. Now how to filter my signal? What I think is
> following:
>
> 1.) IFFT convert the frequency response to impulse response (from
> frequency to time domain);
> 2.) apply some kind of window (hamming for example) by multiplying all the
> points after the IFFT with the formula of the window;
> 3.) now convolute with the signal I receive in time domain (by multiplying
> and summing all the signal's points from 1024 upwards with every point from
> the filter).
> 4.) What I received is the filtered signal ...
>
> Is this true?


You can use the FFT to design filters and also to apply them
efficiently. For designing I would use a larger "FFT size" (for
example 8192) and reasonably smooth magnitude response (no quick
jumps) to fight wrap-around errors, apply the iFFT, apply window
function (now of length 1024). Et voila!

But in your case (lowpass filter) you should use the "windowed sinc"
design method. It's "equivalent" to the procedure above for "FFT-size
= infinity". ( http://www.dspguide.com/ch16.htm )

You may also be interested in the properties of various window
functions
( http://en.wikipedia.org/wiki/Window_function )

Cheers!
SG

Reply With Quote