Coding wavelets the easy way

Linear time invariant filters


Linear time invariant (LTI) filters are linear applications that transform a signal into another signal, as such that the application commutes with time shifts. Since we are working with discrete time signals, we can be more precise:
A discrete LTI filter is a linear application application L that map a discrete signal x into a discrete signal y, and such that, if we define the shift filter S by

(Sx)[k] = x[k+1]

then

LSx = SLx = Sy

The discrete Dirac is the signal D such that

D[0] = 1 and D[k] = 0 if k ≠ 0

The impulse response h of a discrete LTI filter is defined by

h = LD

It is a discrete signal. We have the following result:
Define the convolution z = x*y of two discrete signals by

z[n] = ∑x[n-k]y[k] where k spans the set of signed integers.

Then the output y = Lx of a discrete LTI filter is equal to the convolution of x with the impulse response h of the filter:

y = Lx = h*x = x*h

since the convolution operator is symmetric.

As a result, a discrete LTI filter is entirely characterized by its impulse response. We shall say that discrete LTI filter L has a Finite Impulse Response (FIR) h if only a finite number of indices k satisfy x[k] ≠ 0. To make it short, we shall say that L is a FIR filter. Observe that, if L is a FIR filter and if a signal x has a bounded support then it take only a finite number of products and multiplication to compute the output y by using the convolution formula.

Summary


Linear time invariant filters are characterized by their impulse response. Indeed, the output of a filter can be computed by convolving the input with the impulse response.
Matlab keyword: conv