# Image Reconstruction with Biorthogonal Wavelets

This example shows how applying the order biorthogonal wavelet filters can affect image reconstruction.

Generate the analysis and synthesis filters for the `bior3.5` wavelet. Load in and display an image.

```[LoD,HiD,LoR,HiR] = wfilters('bior3.5'); load woman imagesc(X) colormap gray``` The analysis filters, `LoD` and `HiD`, have 5 vanishing moments. The synthesis filters, `LoR` and `HiR`, have 3 vanishing moments. Do a five-level wavelet decomposition of the image using the analysis filters.

`[c1,s1] = wavedec2(X,5,LoD,HiD);`

Find the threshold that keeps only those wavelet coefficients with magnitudes in the top 10 percent. Use the threshold to set the bottom 90 percent of coefficients to 0.

```frac = 0.1; c1sort = sort(abs(c1),'desc'); num = numel(c1); thr = c1sort(floor(num*frac)); c1new = c1.*(abs(c1)>=thr);```

Reconstruct the image using the synthesis filters and the thresholded coefficients. Display the reconstruction.

```X1 = waverec2(c1new,s1,LoR,HiR); figure imagesc(X1) colormap gray``` Do a five-level wavelet decomposition of the image using the synthesis filters.

`[c2,s2] = wavedec2(X,5,LoR,HiR);`

Find the threshold that keeps only those wavelet coefficients with magnitudes in the top 10 percent. Use the threshold to set the bottom 90 percent of coefficients to 0

```frac = 0.1; c2sort = sort(abs(c2),'desc'); num = numel(c2sort); thr = c2sort(floor(num*frac)); c2new = c2.*(abs(c2)>=thr);```

Reconstruct the image using the synthesis filters and the thresholded coefficients. Display the reconstruction. Decomposing with a filter that has 3 vanishing moments and reconstructing with a filter that has 5 vanishing moments results in poor reconstruction.

```X2 = waverec2(c2new,s2,LoD,HiD); figure imagesc(X2) colormap gray``` 