## Description

1) Generate a 4-level Gaussian pyramid (original image is level-1) and the corresponding

Laplacian pyramid of an image (select one from the web). Use the formula in the notes

to first determine a viable image size, and crop the image (if needed) to test the

pyramid code. Use a=0.4 for the Gaussian mask – use separable masks! Write/use

functions for properly reducing and expanding an image. Write your own interpolation

function – do not use Matlab in-built interpolation functions (e.g., interp2). [7 pts]

2) Using the grayscale images (walk.bmp, bg000.bmp) provided on the WWW site,

perform background subtraction 1 to identify the object. Make sure your image is of

type double! Experiment with thresholds and discuss. [2 pts]

3) Using the grayscale images (walk.bmp, bg[000-029].bmp) provided on the WWW

site, perform background subtraction 2 using statistical distances. Experiment with

thresholds and discuss. [5 pts]

4) Dilate the best binary image resulting from problem 3) using: [1 pt]

d_bsIm = bwmorph(bsIm, ‘dilate’);

5) Next perform a connected components algorithm, and keep only the largest region in

L (save/display as an image). [1 pt]

[L, num] = bwlabel(d_bsIm, 8);

Turn in all code, printouts of images, and discussion of results. Make a

“Name_Surname_dotnumber_HW3.fileformat” script to do all tasks and call needed functions.

Upload your code and selected images to Carmen. [2 pts]

MATLAB help: Loading several ordered grayscale images:

for i=1:N

filename = sprintf(‘myimage_%03d.bmp’, i-1); % if starts with 000

Im(:,:,i) = double(imread(filename));

end

The %03d gives a zero-padded number (e.g., 001), and the image storage is now a 3-D cube. To get image 3 from

the cube, use myIm = Im(:,:,3). With such a cube, MATLAB operations such as ‘mean’ can be told to work along

certain dimensions of the cube.