y(n) = SUM[ x(n-T)h(T) ]
where h(T) is the "impulse response" of the system H. Another
way to think about the impulse response, and convolution, is
that h(T) is just the response y(n) for a special type of x(n).
called an impulse. That special impulse signal has value 1.0
at time zero, and value 0.0 all other times. This then means
that convolution is just the impulse responses of the system
to a train of weighted impulses (the individual samples of an
arbitrary x are viewed as just weighted impulses at different
times). Since the system is assumed to be LTI, we know that
the weighting (homogeneity) and delaying (time invariance) and
adding up (superposition) is legal.
y(n) = g[x(n) + a1 x(n-1) + a2 x(n-2) + ... + aN x(n-N)
+ b1 y(n-1) + b2 y(n-2) + ... + bM y(n-M)]
Linearity is obvious above, and if the coefficients ai and bj are constant, then the filter is also time- invariant. The figure below shows a generic linear time invariant digital filter. The Z-1 blocks represent a unit sample of delay.
y(n) = g (x(n) + a1 x(n-1))
The frequency response of these two filters is shown here:
It's pretty easy to see that the moving average filter is a simple low-pass filter which blocks signals at 1/2 sampling rate entirely (that's the zero), and the differentiater is the complimentary high-pass filter. The signal processing block diagram of a one-zero filter is shown below.
y(n) = (g x(n)) + (b1 y(n-1))
The frequency response of these two filters is shown here, with b1 = 0.9 on the left, and b1 = -0.9 on the right:
a/b_1 = 2 r cos(2 * PI * freq / SRATE)
a/b_2 = - r*r
where 0 < r < 1.0 is a resonance parameter
freq is the resonant or antiresonant frequency in Hz.
and SRATE is the sampling rate in Hz.
y(n) = x(n) - 2*0.9*cos(60.0*2PI/8000)*x(n-1) + 0.90*0.90*x(n-2)
Back to Princeton HCI Page