Multi-resolution image processing & Wavelet Multi-resolution Analysis (MRA) - An image can be structured by a series images with different resolutions Image pyramids -- collection of decreasing resolution images arranged in the shape of a pyramid N/2*N/2 Level j-1 Level j (base) N*N
Multi-resolution analysis Coarse to fine analysis - Low –resolution levels in a pyramid structure can be used to analyze the overall image context or large structures - High-resolution levels can be used for analyzing individual object characteristics Approximate pyramid (AP) & prediction residual pyramids (PRP) - The approximation images in multiple levels construct an “AP” - Prediction residual image is the difference of neighbor levels of images - Encoding the PRP is more efficient than encoding the AP.
Sub-band representation Sub-band coding A filter band can be used for a multi-band representation of images. E.g., a low-pass filter will produce an approximation of the original image, a high-pass filter will keep the high frequency details of the image. An image can be constructed by combining a few of band-limited components (called sub-band) E.g., a two-band filter bank |H0(w)| |H1(w)| Low-band High-band w /2
Harr transform Harr transform matrix T = H F H F: N by N image H: N*N transform matrix (whose basis is called orthonormal wavelet) E.g.,
Harr transform (cont’d) Harr basis function: ( - can be used for discrete wavelet transform)
Multi-resolution representation Scaling function – series of approximations of image Wavelets – encode the difference in information between adjacent approximation Series expansion concept: Expansion coefficient expansion function (basis) Dual function of e.g., Fourier transform, DCT transform, etc
Multi-resolution representation (cont’d) Scaling function Determines the width Position Nested function spaces spanned by a scaling function Function space: V0 V0 V1V2 j increases size of Vj increases
Multi-resolution representation (cont’d) Example of Scaling function V0 V0 V1
Multi-resolution representation (cont’d) Example of expansion function: Expansion function of subspace Vj can be represented by expansion function of subspace Vj+1 Define: Scaling function coefficient
Multi-resolution representation (cont’d) Example of expansion function: (cont’d) In Harr function: Therefore:
Wavelet function Relationship between scaling and wavelet function spaces V2 = V1W1= V0 W0 W1 W1 W0 V0 V1 = V0 W0 Wavelet function (x) spans the difference between any two adjacent scaling subspaces Vj and Vj+1
Wavelet function (cont’d) Wj space:
Wavelet function (cont’d) If f(x) Wj, then: Vj+1 = VjWj Union of spaces Vj and Wj are orthogonal each other: wavelet Scaling function Function space = V0W0 W1 … = V1W1 W2 …
Wavelet function (cont’d) If f(x) V1, then: F(x) = approximation of f(x) + details of f(x) fa(x) fd(x) V0 scaling function Wavelets from W0 Note: - wavelets encode the difference between the approximation and the actual function - wavelet function can be expressed as a weighted sum of shifted, double-resolution scaling functions.
Wavelet function (cont’d) Example: Haar wavelet function: Haar scaling vector: Wavelet vector: f(x) = fa(x) + fd(x) Where:
Wavelet transform Definition: Scaling coefficient Wavelet coefficient (approximation) Wavelet coefficient (details) Where:
Wavelet transform (cont’d) 1-D discrete wavelet transform (DWT) - Definition: Where: jj0 Where: M = 2J x=0,1,…, M-1 j=0,1, …, J-1 k=0,1, …, 2j-1
Wavelet transform (cont’d) Example of DWT using Haar scaling and wavelet functions Given f(x), x=0,1,2,3; M=4 = 2J; J=2; j0=0 f(x) k=0 for j=0 k=0,1 for j=1 4 1 x 0 1 2 3 -3 Based on Haar transform matrix H4and f(x), we obtain:
Wavelet transform (cont’d) 2-D discrete wavelet transform of f(x,y) (size: M*N) - Definition: where i={H,V,D} Normally: j0 = 0; N=M = 2J j=0,1, …, J-1 m,n = 0,1, …, 2j-1
Wavelet transform (cont’d) 2-D discrete wavelet transform of f(x,y) (size: M*N) - Definition: where i={H,V,D} - 2D scaling function: -2D wavelets: -2D functions:
Wavelet transform (cont’d) 2-D discrete wavelet transform of f(x,y) (cont’d) - Decomposition of 2D wavelet transform:
Wavelet transform (cont’d) 2-D discrete wavelet transform of f(x,y) (cont’d) - analysis filter bank for the decomposition of 2D wavelet transform: Columns (along n) Rows (along m)
Wavelet transform (cont’d) 2-D discrete wavelet transform of f(x,y) (cont’d) - synthesis filter bank of 2D wavelet transform: Columns (along n) Rows (along m)
Wavelet transform (cont’d) Other wavelets family: - Example: Fohen-Daubechies-Feauveau biorthogonal wavelet family