In this lab, you will synthesize a sound or an image digitally, from scratch or by modifying
and combining existing signals, using at least three of the following EE341 concepts:
• simple signal synthesis (e.g. tones, random noise)
• time (or space) scaling, including reversal
• amplitude operations (e.g. multiplication or addition of signals)
• convolution (e.g. for simulating reverberration)
• frequency shifting or other types of modulation
You may concatenate different sounds/images together, but this doesn’t count as one of the
three EE341 concepts. You can reuse code that you developed in your earlier labs, but you
must change it in some way. For example, if you do multiplication, create a function different
from the ADSR envelope you used in lab 2. If you do filtering, use a filter that is different
from what you implemented in labs 3 and 5.
Do not use sounds or images that may be offensive, e.g., no profanity or pornography.
The class will vote for their favorites in each category, and the winner in each category
will get a bonus point. Participating in voting will be worth 2 points as a class assignment,
due in class, Friday 3/9.
You may do this lab in groups of 2-3 people, but only the submissions created by individuals will be eligible for winning a bonus point. Winners will be asked to explain to the
class how you created your sound or image.
Option A: Music or Sound Effect Synthesis
Compose a short piece of music or a sound effect. You can use any of the sound files
made available on the class web page or search the web for reusable sound files or record a
sound yourself. (Do not use recordings of others without their permission.) You can also
synthesize sounds using sinusoids or random noise (as in lab 2), square waves, etc. Apply
signal processing techniques to one or more component sounds, separately or in combination.
The final signal should be 10-20 seconds in length.
Each signal processing technique should have an audible effect. For example, if you
synthesize notes as in lab 2 and apply a filter the includes all notes, that would not have an
Make sure you pay attention to any differences between the sampling rates of the sound
files you use or generate, since the final output will be based on only a single sampling rate.
When you are satisfied with your composition, save it as a .wav file. It is a good idea to
check that there were no write problems by listening to that file.
Option B: Image Synthesis
Create a synthetic image, an image collage or modify a color image. You can use your
own images/photos or search the web for reusable images. (Do not use copyrighted images
without permission.) You can also synthesize images patterns using the same techniques
as for sounds above but with two dimensions, e.g. a square wave in two dimensions should
give you a checkerboard, and random noise in two dimensions will give you a speckled
pattern. Apply signal processing techniques to one or more component images, separately
or in combination. The final image should be a size that will be easily viewed on a laptop
It is fine to work with grayscale images, which you can get using the rgb2gray command
in Matlab. However, if you want to work with color images, you can do that by separately
processing each of the three color planes as its own image (see background discussion of lab
2). Remember that image pixels take values in the [0,255] range.
You may use code that you developed for lab 2, but you must also use some processing
beyond what was explored in that lab.
When you are satisfied with your creation, write it out to a .jpg or .png file using the
imwrite command. View the file to make sure it is your final version.
Occasionally, students are interested in combining image and audio processing. If you
would like to do this, please run your idea by the professor in advance. Any multimedia
submissions will be judged with the images.
Turn in to Canvas:
• Your image or sound file (give it a filename that does not include your name but is
more unique than “myimage” or “mysong”)
• A brief written description of the techniques and sounds/images used in your creation.
For example, if you use filtering, specify the filter design. If you use convolution,
describe how you generated (or found) the impulse response. If you use time scaling,
specify the scale factor(s).
• Zip file of MATLAB scripts used to generate your sound/image.