CS 143 / Project 1 / Image Filtering and Hybrid Images
Filter Implementation
My implementation of my_imfilter.m is pretty straightforward and works just how imfilter does. I dealt with boundaries using imfilter's default behavior by padding the edges of the input image with zeros. The algorithm is also fairly straightforward. I take in my input image, pad it, and then iterate over all the non-padded rows/columns in the padded image. At each location in the image, I iterate through the filter and simply calculate the value the output image should have at this position.
My implementation seems to work properly as it produces the expected output images. Below are the results of my filtering algorithm when run through the test filtering script. In order, they are: identity image, blur image, large blur image, sobel image, laplacian image, high pass image.
Hybrid Images
Finally, here are the results of using my_imfilter to construct a hybrid images. In every set, first is the high pass image, second is the low pass image, and third is the hybrid. Below that is progressive downsampling of the constructed hybrid image.