Learn the fundamentals of digital signal processing theory and discover the myriad ways DSP makes everyday life more productive and fun.

Loading...

來自 École Polytechnique Fédérale de Lausanne 的課程

数字信号处理

285 個評分

Learn the fundamentals of digital signal processing theory and discover the myriad ways DSP makes everyday life more productive and fun.

從本節課中

Module 4: Part 1 Introduction to Filtering

- Paolo PrandoniLecturer

School of Computer and Communication Science - Martin VetterliProfessor

School of Computer and Communication Sciences

So what is the best lowpass filter that we can think of?

Well as we said a lowpass filter lets low frequencies go through and

attenuates, or kills, high frequencies.

So an ideal version of the lowpass filter would leave,

Frequencies in the low band, untouched, and would completely attenuate,

completely kill, frequencies in the higher band.

So the magnitude would be 1 over the passband,

and identically 0 over what we call the stopband.

To make matters even better we would require the magnitude response to be

a real function so that the filter has zero phase and

therefore introduces no delay.

So if we call omega c the cut off frequency, where the frequency

response transitions from 1 to 0, we can say that the ideal low

pass has a band width of omega B which is equal to twice omega C.

Formally we can write the frequency response of the ideal low pass

big H of e to the j omega is equal to one for omega between

minus omega c and plus omega c and 0 otherwise.

And remember whenever we write a specification like this, we tacitly imply

the 2 pi periodicity of any frequency response of any Fourier transform.

So this mean that the ideal lowpass has a perfectly flat passband which,

is identical to 1.

Has infinite attenuation in the stopband and again has zero-phase and no delay.

Let's try and compute the impulse response from the frequency response by

taking the inverse Fourier transform of big H of e to the j omega.

So We can write the inverse DTFT formula, which we know by heart,

and since big H is a 0 from omega C to pi and

from minus pi to minus omega C, we can change the integration limits and

just integrate from minus omega C to plus omega C,

incidentally over that interval, big H is equal to 1.

So this simplifies to just the integral of e to the j omega n.

Between minus omega c and omega c.

And if you solve that integral, which is rather easy to do, we get one over pi n.

That multi Multiplies e to the j omega cn minus e to the minus j omega cn,

divided by 2j.

We know from Mueller's formula that this is equal to the sine of omega cn.

And we are left also with pi n at the denominator.

So we plot this impulse response and

we find out that it has a nice oscillatory shape.

We also notice that it is an infinite support impulse response and

as opposed to the other infinite support impulse responses we've seen so far.

Now the support is infinite both to the right and to the left.

Now this is a problem because it means that no matter how we compute

the convolution we will always have an infinite number of operation to compute.

So this lowpass filter cannot be exactly implemented in practice, and

we will spend quite some time in the rest of the module to find ways

to approximate this ideal behavior with computable filters.

Another problem with the impulse response is that it decays very slowly in time

as 1 over n in as a matter of fact.

And so we need a lot of samples to get a good approximation

of the impulse response if we were to implement the filter directly.

In spite of the shortcomings, the ideal low pass filter is so

important that we use two special functions to describe

its impulse response and its frequency response.

So we start with a rect function that has name suggests, looks like a rectangle.

And it is indeed the indicator function

on the real line from one-half to minus one-half.

The sinc function, in this particular case it's a normalized sinc function.

Is simply the ratio between that sine of pi of x,

divided by pi of x for all real numbers other than zero.

And it is prolonged by continuity in zero to the value of one.

Note that the sinc function is equal to zero

whenever its argument is a null zero integer.

Because in that case the sign of pi x becomes zero.

With this notation in place we can express the ideal lowpass filter in

canonical form.

The frequency response, H of e to the j omega

will be simple the rect of omega divided by 2 omega c,

where omega c is the cutoff frequency of the filter.

So it will look like that.

The impulse response will be the sinc function, normalized by omega c over pi,

both in terms of its argument and in terms of managing it.

So here's an example with omega c equal to pi over 3,

we have a low pass characteristic with cutoff frequency pi over 3.

And in the time domain, we have sinc(n/3).

Multiply by one-third.

Which means every third sample, as we said, is going to be 0, because

every time n is a multiple of 3, the argument to the sinc will be an integer.

So here's a little known fact about the sinc function.

The sinc function is not absolutely summable.

The proof is not too complicated, it only involves basic calculus, and

you can find it in the references.

As a consequence, the ideal lowpass is not BIBO stable.

We can use a technique that we developed in the proof of the stability theorem.

And so for instance if we take omega c equal to pi over 3 The impulse

response of the ideal filter will be one-third sinc of n over 3.

We build an artificial bounded input signal,

which is simply the sine of sinc of minus n over 3.

And so if we compute the convolution in n equal to 0,

so we have the convolution product here.

And it is one-third, sum from minus infinity to plus infinity,

of the absolute value of sinc of k over 3, which

because of the non absolute summability of the sinc diverges to infinity.

The divergence, however, is very, very slow.

You can see here a plot that shows that for

10,000 samples we're still below 4 in terms of the value of the sum.