Discrete Wavelets

Final Projects

Helmut  Knaust - Department of Mathematical Sciences, University of Texas at El Paso, hknaust@utep.edu
11/21/2017. Last edits: 12/1/2017

Final Project presentations will take place during final exam time on Thursday December 14, 17:00-19:45 in BELL 143.

Each student group will give a 20 minute presentation.  The presentation needs to include a Mathematica notebook. You will be graded on the mathematical correctness of the presentation,  the quality and completeness of  the notebook and other material you prepare, and the quality of your oral presentation. All group members must participate equally in the preparation and the presentation. Include references if you are using resources other than the ones listed below.

All electronic material  presented has to be turned in to the instructor by Sunday, December 17.

Final project selection will take place on Tuesday, November 28, during class time.

Project 1 - Mahmut, Richard
RGB vs. YCbCr

1. Take a color picture of your choice, and extract the Red, Green and Blue channels. 
2. Apply the Daubechies - 6 Filter three times to each of the color channels. 
3. Quantize the three results by keeping 99.99 % of the energy of each of the three channels.
4. Compute the entropy of each of the three quantized channels, and then compute the theoretical bitsize needed to encode the quantized color image.
5. Apply the inverse transform three times to each of the channels.
6. Reassemble and display the quantized color image.
7. Compute the PSNR of the original color image and the quantized version.
8. Take the color picture of your choice, and extract the Y, Cb, and Cr channels. 
9. Repeat Steps 2-7 for the YCbCr channels.
10. Compare the two methods.

Project 2
Cascade Algorithms

Cascade Algorithms can be used to construct approximations to the scaling and wavelet functions using the coefficients of the discrete wavelet algorithm.

1. Implement the continuous algorithm described in Ruch and van Fleet’s book for the scaling and wavelet functions for D6 and D8. 
(A copy of the book is available for your perusal.)
2. Implement the algorithm “Construction 3” described in Gilbert Strang: Wavelets and Dilation Equations. SIAM Review, Vol. 31, No. 4. (1989), pp. 614-627, on pages 0-3 and 0-4. Again, do this for D6 and D8. 

Below are pictures of the scaling function (blue) and wavelet function (red) for D6.

Project 3 - Blanca, Maria, Prameela
Matrix Completion

1. Explain the procedure outlined in Problem 7.19 in the textbook, then use Mathematica to present the solution.
2. Write commands similar to “D4” (see DW.m) for the Matrix Completion of the Daubechies-4 Filter developed in Problem 7.19.
3. Check that the matrix generated by your commands in Step 2 is orthogonal.
4. Take a grayscale picture of your choice, apply your transform once (and twice) to the image, and check on artifacts at the edges of the blur portion of the transformed image. 
5. Implement a similar procedure for the D6 filter. The instructions in D6c may be helpful.

Project 4 - Candelario, Christian, Stephen
Huffman Trees

Write a program to display a Huffman Coding Tree for a given vector of symbols.

The output should look something remotely similar to the tree below (This command will not run on your computer since you don't have 'DW1.m'):

HuffmanTree[{t,w,o,t,w,o,s,t,o,t,o,u,l,o,u,s,e}]

An intermediate solution is to display the information step - by - step :

?HuffmanTreeStep

HuffmanTreeStep[{t,w,o,t,w,o,s,t,o,t,o,u,l,o,u,s,e},1]

The basic command to plot trees is 'TreePlot' :

TreePlot[{1->2,1->3,1->4,3->5,6->7},VertexLabeling->True]

Project 5 - David, Estefania, Hassan
JPEG Algorithm

Explain and implement the JPEG algorithm for grayscale images (see Section 12.1 in the textbook). Research whether there are other normalization matrices, and explain their significance

Project 6 - Janet, Mandy, Stephanie
Zooming in on a Region of Interest in a Transformed Image

Problem

Given an image transformed by k iterations of a wavelet transform, write an algorithm that finds the inverse of a sub - matrix in the blur portion without inverting the entire matrix.  This is known in the medical field as "region of interest". 

This exploits the fact that wavelet transforms - unlike the Fourier transform - are localized in the time (space) domain.

Procedure

We wish to partially invert the Haar Wavelet Transform of an image:

This represents the transformed Image.

Below is the blurred portion of the image that corresponds to B above.

The red rectangle (the chair) is the region of interest in the transformed image and corresponds to the blue rectangle b in the image above in the blur.
Below are the 4 corresponding areas b, v, h, d assembled into one image.

The Inverse Haar Wavelet Transform is applied to this to obtain the following “Zoom” below.  

Project Outline:

1.  Given a matrix transformed by one iteration (k = 1) of the Haar WT, define and identify where in the transformed matrix you want to obtain the "region of interest". Decide what other portions of the transformed matrix will be needed to invert “the region of interest”.
2.  Write code to obtain the inverse.
3.  Test it! (This can only be done if the original matrix is known.)  
4.  Repeat Steps 1 - 3 for k = 2, and k=3.
5.  Write a module for arbitrary k.
6.  Modify the code replacing the Haar filter by the Daubechies-4 filter.  What problem occurs when you attempt to invert the region of interest of the given image transformed with the D4 filter? Any ideas how to fix this? (No coding required.)

Acknowledgement:

This project was jointly developed by Caroline Haddad (SUNY Geneseo), Dawit Haile (Virginia State University), and Helmut Knaust (University of Texas at El Paso)

Project 7
Fusing grayscale and color images

In remote sensing, the transmission channel can be very "narrow". To conserve bandwidth, the sender may transmit a detailed grayscale image and a small color image of the same scene. It is then up to the sender to fuse the image to obtain a detailed color image. One such fusing procedure is described in Shutao Li, James T. Kwok, Yaonan Wang: Using the discrete wavelet frame transform to merge Landsat TM and SPOT panchromatic images.

+=?