Sale!

# EEL 3135 – Lab #04 solution

\$30.00

Full Name:
EEL 3135 – Lab #04
Submission Notes
• Your laboratory solutions should be submitted on Canvas as a single published MATLAB PDF.
• Use the provided skeleton code as the basis for your solutions (easier for you and the graders).
Question #1: (Convolution)
with the corresponding descriptions. This is designed to show you how to work with audio and
images using convolution in MATLAB.
comments. You will use elements of this MATLAB code in the rest of the lab assignment.
Question #2: (Echo and Tremolo)

Category:

## Description

Full Name:
EEL 3135 – Lab #04
Submission Notes
• Your laboratory solutions should be submitted on Canvas as a single published MATLAB PDF.
• Use the provided skeleton code as the basis for your solutions (easier for you and the graders).
Question #1: (Convolution)
with the corresponding descriptions. This is designed to show you how to work with audio and
images using convolution in MATLAB.
comments. You will use elements of this MATLAB code in the rest of the lab assignment.
Question #2: (Echo and Tremolo)
This question will implement both an echo effect and a tremolo effect on a song.
(a) Create a function y = echo(x, s, A) that outputs the following signal:
y[n] = x[n] + Ax[n − s] ,
where A is the echo amplitude and s is the echo delay. You may want to use the shift
function in Question #1. Include the echo function at the end of the skeleton file.
(b) Apply echo to your input x in the skeleton code to get output xr. Set the delay to s = 10000
samples and amplitude to A = 0.9. Use soundsc to play the output. Have this audio
checked off by a TA.
we are delaying by 10000 samples, how long is the delay on the signal in seconds?
(d) Create a function y = tremolo(x, m, A) that outputs the following signal:
y[n] = x[n] + A cos(2πmn)x[n] ,
where A is the tremolo amplitude and m is the tremolo modulation frequency (in normalized
angular frequency). Include the tremolo function at the end of the skeleton file.
(e) Apply tremolo to your input x in the skeleton code to get output xt. Set the amplitude
to A = 0.5 and modulation frequency to m = 20 / fs, where fs is the cyclic sampling
frequency. Use soundsc to play the output. Have this audio checked off by a TA.
(g) Again apply tremolo to your input x, but now with the amplitude A = 1 and modulation
frequency m = 1/(length(x)). Use soundsc to play the output. Answer in your
comments: Why does the signal strength decrease half-way through and then get loud?
1
(h) A system is time-varying if the system T {·} satisfies
T {x[n − N]} 6= y[n − N] such that T {x[n]} = y[n]
Use shift function in Question #1 to shift outputs from (b) and (g) by N = 220499 samples
(half the signal length). Use soundsc to play these outputs. Then shift your input x by N =
220499 samples to get xs. Input xs into echo and tremolo with the parameters from (b)
and (g). Use soundsc to play the new outputs. Have this audio checked off by a TA.
How do you know?
Question #3: (Image Filtering)
Spatial filtering is often used to modify images. We can regard the image as an input signal and
the spatial filter is our system. The output of this system is obtained by doing convolution between
the input image g[x, y] and the filter impulse response w[u, v]. The output pixel f[x, y] with 3 × 3
filter can be obtained by the 2-dimensional convolution
f[x, y] = X
1
s=−1
X
1
v=−1
w[u, v]g[x − u, y − v].
For this question, add all code into skeleton eel3135_lab04_skeleton.m from Canvas. Include
all code (and functions) in this one file so that everything is published to a single PDF.
(a) Consider the filter impulse response (also known as a kernel) below. Apply this filter to the
image img in the skeleton code. Use image and subplot to plot the image before and after
applying the filter. Use Question #1 as a guide.
w[−1, −1] w[−1, 0] w[−1, 1]
w[0, −1] w[0, 0] w[0, 1]
w[1, −1] w[1, 0] w[1, 1]
=
1/9 1/9 1/9
1/9 1/9 1/9
1/9 1/9 1/9
How / why do you know that from the impulse response / kernel?
(c) Consider the filter impulse response / kernel below. Apply this filter to the image img. Use
image and subplot to plot the image before and after applying the filter.
w[−1, −1] w[−1, 0] w[−1, 1]
w[0, −1] w[0, 0] w[0, 1]
w[1, −1] w[1, 0] w[1, 1]
=
1 1 1
1 −8 1
1 1 1