How to design a FIR filter without the signal processing toolbox
12 views (last 30 days)
Show older comments
I have a wave file with which I need to apply the FIR filter to. However I do not have the toolbox which gives you functions such as 'fir1' or 'filter'.
Does anyone know how to write the transfer function and how to calculate the constants required?
0 Comments
Answers (1)
Star Strider
on 16 Aug 2016
You can always code it yourself (as we had to do when I took my last signal processing course since we were told we could not use the Toolbox for our assignments).
York University (UK) has provided a filter design site that I’ve recommended in the past and that others have found helpful: Butterworth / Bessel / Chebyshev Filters. These are IIR — not FIR — filters, and should work for you.
Note that the filter function introduces a phase delay, and only coding the filtfilt function yourself will eliminate the phase distortion in the filtered signal. (Bessel filters, that are phase-neutral as continuous filters in hardware, lose that characteristic in their discrete transformations.)
2 Comments
Star Strider
on 17 Aug 2016
I just checked it to be sure it still existed. I didn’t try to design a filter with it this time, because I have the Signal Processing Toolbox. You can try emailing ‘anthony’ to see if it can be restored, since it’s a useful site.
The only other possibility I was able to find is Digital Filter Design on the Maple site. There’s a Maple Player that you can download that will let you interact with it, but I don’t know if it will let you actually design the filter and get the coefficients. I usually depend on the Wolfram site, but they don’t have anything on filter design that’s interactive. I can’t find any other sites.
That said, filters aren’t that difficult to design. It’s just inconvenient to write the code. The usual procedure is to design the continuous-time analogue version, then use the bilinear transform to do the discrete conversion.
See Also
Categories
Find more on Frequency Transformations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!