470,826 Members | 2,090 Online

# FIR filtering

Hi all,
i'm looking for a module to implement a digital FIR filter!
Can anyone help me?

Thanks,

Vincent

Mar 15 '06 #1
16 13687
LabWINC wrote:
i'm looking for a module to implement a digital FIR filter!
Can anyone help me?

Is this for homework, for academic interest, for a control system
problem, or what? Some context would be useful in helping us answer.

(The first thing that occurs to me, for example, is "why don't you just
write it yourself? ...it's not like they're a complicated equation and
if you have the coefficients, you practically have the code already."
But that might not be the best approach if this is a real-world situation.)

-Peter

Mar 15 '06 #2
It's for research work. I'm implementing an algorithm from a matlab
one.
It could be very difficult to find the fir coefficients because i have
lot of fileters to implement.

Vincent

Mar 15 '06 #3
LabWINC wrote:
Hi all,
i'm looking for a module to implement a digital FIR filter!
Can anyone help me?

Thanks,

Vincent

Hans Georg
Mar 15 '06 #4

Mar 15 '06 #5
LabWINC wrote:

It's a c++ lib with a python wrapper.

BTW, thats the first hit in google ...

Hans Georg
Mar 15 '06 #6
LabWINC wrote:

Diez
Mar 15 '06 #7
I can't understand how gnuradio can help me...
I find scipy is the only way to implement a good FIR.

Thanks,

Vincent

Mar 15 '06 #8
>>>>> "LabWINC" == LabWINC <vi*****************@gmail.com> writes:

LabWINC> Hi all, i'm looking for a module to implement a digital
LabWINC> FIR filter! Can anyone help me?

scipy.org

Between scipy and matplotlib, you'll feel quite comfortable with
python as a former matlab user

help scipy.filter (see FIR filter design below)

DESCRIPTION
Signal Processing Tools
=======================

Convolution:

convolve -- N-dimensional convolution.
correlate -- N-dimensional correlation.
fftconvolve -- N-dimensional convolution using the FFT.
convolve2d -- 2-dimensional convolution (more options).
correlate2d -- 2-dimensional correlation (more options).
sepfir2d -- Convolve with a 2-D separable FIR filter.
B-splines:

bspline -- B-spline basis function of order n.
gauss_spline -- Gaussian approximation to the B-spline basis
function.
cspline1d -- Coefficients for 1-D cubic (3rd order)
B-spline.
qspline1d -- Coefficients for 1-D quadratic (2nd order)
B-spline.
cspline2d -- Coefficients for 2-D cubic (3rd order)
B-spline.
qspline2d -- Coefficients for 2-D quadratic (2nd order)
B-spline.

Filtering:

order_filter -- N-dimensional order filter.
medfilt -- N-dimensional median filter.
medfilt2 -- 2-dimensional median filter (faster).
wiener -- N-dimensional wiener filter.

symiirorder1 -- 2nd-order IIR filter (cascade of first-order
systems).
symiirorder2 -- 4th-order IIR filter (cascade of
second-order systems).
lfilter -- 1-dimensional FIR and IIR digital linear
filtering.

deconvolve -- 1-d deconvolution using lfilter.

hilbert --- Compute the analytic signal of a 1-d signal.
get_window --- Create FIR window.

detrend --- Remove linear and/or constant trends from
data.
Filter design:

remez -- Optimal FIR filter design.
firwin --- Windowed FIR filter design.
iirdesign --- IIR filter design given bands and gains
iirfilter --- IIR filter design given order and critical
frequencies
freqs --- Analog filter frequency response
freqz --- Digital filter frequency response

Matlab-style IIR filter design:

butter (buttord) -- Butterworth
cheby1 (cheb1ord) -- Chebyshev Type I
cheby2 (cheb2ord) -- Chebyshev Type II
ellip (ellipord) -- Elliptic (Cauer)
bessel -- Bessel (no order selection available --
try butterod)

Linear Systems:

lti -- linear time invariant system object.
lsim -- continuous-time simulation of output to linear system.
impulse -- impulse response of linear, time-invariant (LTI)
system.
step -- step response of continous-time LTI system.

LTI Reresentations:

tf2zpk -- transfer function to zero-pole-gain.
zpk2tf -- zero-pole-gain to transfer function.
tf2ss -- transfer function to state-space.
ss2tf -- state-pace to transfer function.
zpk2ss -- zero-pole-gain to state-space.
ss2zpk -- state-space to pole-zero-gain.

Waveforms:

sawtooth -- Periodic sawtooth
square -- Square wave
gausspulse -- Gaussian modulated sinusoid
chirp -- Frequency swept cosine signal

Wavelets:

daub -- return low-pass filter for daubechies wavelets
qmf -- return quadrature mirror filter from low-pass
cascade -- compute scaling function and wavelet from
coefficients
Mar 15 '06 #9
LabWINC wrote:
I can't understand how gnuradio can help me...
I find scipy is the only way to implement a good FIR.

Well, then do it with scipy...
gnuradio has a module for FIR. I never used it. I just wanted to share
that information.

Hans Georg
Mar 15 '06 #10
Thank you too Georg

Mar 15 '06 #11
LabWINC wrote:
It's for research work. I'm implementing an algorithm from a matlab
one.
It could be very difficult to find the fir coefficients because i have
lot of fileters to implement.

Oh, you mean you need to find the coefficients, not just implement the
FIR filter itself. (Perhaps to some these describe the same thing, but
I would call the former "designing the filter".)

I see John Hunter's post shows scipy probably has what you need.

-Peter

Mar 15 '06 #12
I'm interested in finding coefficient and implementig the filter as
well.
John's post is what i need.

John Hunter wrote:
help scipy.filter (see FIR filter design below)

How can i get the help like yours?

If i type help scipy.filter it give me an error

help scipy.filter
File "<input>", line 1
help scipy.filter
^
SyntaxError: invalid syntax

I'm sorry but i'm new of python,

Vincent

Mar 15 '06 #13
LabWINC wrote:
If i type help scipy.filter it give me an error

help scipy.filter
File "<input>", line 1
help scipy.filter
^
SyntaxError: invalid syntax

You need parentheses:

help(scipy.filter)

--
Steve Juranich
Tucson, AZ
USA

Mar 15 '06 #14

"LabWINC" <vi*****************@gmail.com> wrote in message
If i type help scipy.filter it give me an error

help scipy.filter
File "<input>", line 1
help scipy.filter
^
SyntaxError: invalid syntax

The respondant left out parens. At interactive prompt:
help(scipy.filter)
or, in general
help(someobject)

Mar 15 '06 #15
>>>>> "Terry" == Terry Reedy <tj*****@udel.edu> writes:

Terry> "LabWINC" <vi*****************@gmail.com> wrote in message
If i type help scipy.filter it give me an error

help scipy.filter File "<input>", line 1 help scipy.filter ^
SyntaxError: invalid syntax

Terry> The respondant left out parens. At interactive prompt:
Terry> help(scipy.filter) or, in general help(someobject)

Sorry, ipython user here -- http://ipython.scipy.org

ipython supports autoparens....

JDH

Mar 15 '06 #16
Mar 15 '06 #17

### This discussion thread is closed

Replies have been disabled for this discussion.