Beijing Dublin International College

EEEN3004J Digital Signal Processing

Spring 2020

Assignment 3

Digital filters and Gibbs ringing

John Healy and Wang Yue

Work individually.

You are to solve the problems given below, and to submit your report on Brightspace. See

Brightspace for the submission deadline. Late reports will be penalized according to UCD policy.

Gibb’s Phenomenon should be familiar to you. It’s the ringing or oscillation that happens when we

try to reconstruct a signal with a discontinuity from its Fourier coefficients.

Fig. 1. The signal in red has a discontinuity at t = π and, because it is periodic, also at t = 0 = 2π. The

four subfigures show a reconstruction (the blue curve) which uses the lowest 16, 32, 64, or 128

Fourier coefficients to reconstruct the signal. Notice the oscillations near the boundary, which are

inevitable because of the reconstruction from Fourier coefficients.

A popular method to suppress Gibbs’ phenomenon is called filtered Fourier reconstruction. In this

approach, we multiply the truncated Fourier coefficients by the transfer function of a low pass filter

with a more graduate transition into the stopband. This approach is illustrated in Fig. 2.

Fig. 2. The filtered Fourier reconstruction (1st column, 4th row) shows none of the ringing of the

Fourier reconstruction (1st column, 2nd row). However, this filter, a Gaussian (2nd column, 3rd row), has

also noticeably altered the shape of the signal.

Your task in this assignment is to find the best filter you can to meet two conflicting goals:

1. Reduce the Gibbs’ ringing.

2. Change the signal as little as possible.

Problems

1. Each student has been assigned a particular type of filter. See Appendix 1 for the

assignments. You will find some helpful information about the filters in a document my phd

student prepared for you that is also included on Brightspace. For your type of filter, design

and implement the filter. For any parameters that the filter has, find the best parameters

you can. (E.g. in the example above, the width of the Gaussian window is a parameter.)

2. You may then freely explore any other filter types you wish to.

Some filter types you are assigned may be difficult to implement. Those students will receive a lot of

marks for part 1 and don’t need to do as much work on part 2. Other filter types are really easy

because they are implemented in MATLAB. Those students will receive more marks for part 2.

The MATLAB file included in the assignment will call a MATLAB function called myfilter, use it on

four test examples, and calculate some metrics for how well those examples were reconstructed.

You should write your own myfilter. You should use those test examples and those metrics to

evaluate any filters you design.

There are four metrics in the test:

• The Mean Squared Error (MSE) provides a measure of the distortion introduced in an image.

A good reconstruction will have low MSE.

• PSNR is a ratio of the maximum sample power to the power of the reconstruction error. A

good reconstruction will have high PSNR.

• Entropy is a measure of the information content in an image, and the reduction in entropy

introduced by a filter is therefore a proxy measure of the loss of fidelity. For example, the

entropy of a signal will decrease with blurring. A good reconstruction will have high entropy.

• The variance of a signal is a measure of the difference between the samples and the signal

mean; the variance of the reconstruction error will increase if it is corrupted with noise. A

good reconstruction will have low variance.

You are welcome to search websites and research journal papers for advice about the best filter

design. You should reference any information you find in your report.

You will submit two files:

• a report detailing your investigation, and

• a copy of your best myfilter file to support your claims.

You don’t need to zip them together, but name them myfilter1234 and report1234, where 1234 is

the last four digits of your UCD student number. Include your name and student number at the

beginning of the report and the code.