Digital Image Processing

Similar documents
Digital Image Processing

Digital Image Processing

Chapter 7 Wavelets and Multiresolution Processing. Subband coding Quadrature mirror filtering Pyramid image processing

Wavelets and Multiresolution Processing. Thinh Nguyen

Module 4. Multi-Resolution Analysis. Version 2 ECE IIT, Kharagpur

Chapter 7 Wavelets and Multiresolution Processing

Introduction to Discrete-Time Wavelet Transform

Wavelets and Multiresolution Processing

Multiresolution image processing

Multiresolution analysis & wavelets (quick tutorial)

Module 4 MULTI- RESOLUTION ANALYSIS. Version 2 ECE IIT, Kharagpur

Lecture 16: Multiresolution Image Analysis

An Introduction to Wavelets and some Applications

2D Wavelets. Hints on advanced Concepts

INTRODUCTION TO. Adapted from CS474/674 Prof. George Bebis Department of Computer Science & Engineering University of Nevada (UNR)

MULTIRATE DIGITAL SIGNAL PROCESSING

1 The Continuous Wavelet Transform The continuous wavelet transform (CWT) Discretisation of the CWT... 2

Wavelets and multiresolution representations. Time meets frequency

Wavelet Transform. Figure 1: Non stationary signal f(t) = sin(100 t 2 ).

Multiresolution schemes

EE67I Multimedia Communication Systems

Multiresolution schemes

Digital Image Processing Lectures 15 & 16

Ch. 15 Wavelet-Based Compression

Problem with Fourier. Wavelets: a preview. Fourier Gabor Wavelet. Gabor s proposal. in the transform domain. Sinusoid with a small discontinuity

Wavelets: a preview. February 6, 2003 Acknowledgements: Material compiled from the MATLAB Wavelet Toolbox UG.

Let p 2 ( t), (2 t k), we have the scaling relation,

Wavelets in Pattern Recognition

COMPLEX WAVELET TRANSFORM IN SIGNAL AND IMAGE ANALYSIS

<Outline> JPEG 2000 Standard - Overview. Modes of current JPEG. JPEG Part I. JPEG 2000 Standard

EE123 Digital Signal Processing

Defining the Discrete Wavelet Transform (DWT)

Satellite image deconvolution using complex wavelet packets

Sparse linear models

A Novel Fast Computing Method for Framelet Coefficients

Module 4 MULTI- RESOLUTION ANALYSIS. Version 2 ECE IIT, Kharagpur

Course and Wavelets and Filter Banks

ECE472/572 - Lecture 13. Roadmap. Questions. Wavelets and Multiresolution Processing 11/15/11

Wavelet Analysis for Nanoscopic TEM Biomedical Images with Effective Weiner Filter

Introduction to Wavelet. Based on A. Mukherjee s lecture notes

A Tutorial on Wavelets and their Applications. Martin J. Mohlenkamp

Lecture Notes 5: Multiresolution Analysis

Contents. Acknowledgments

Signal Analysis. Multi resolution Analysis (II)

Discrete Wavelet Transform

ECE533 Digital Image Processing. Embedded Zerotree Wavelet Image Codec

A NEW BASIS SELECTION PARADIGM FOR WAVELET PACKET IMAGE CODING

Denoising and Compression Using Wavelets

Multiresolution Analysis

Machine Learning: Basis and Wavelet 김화평 (CSE ) Medical Image computing lab 서진근교수연구실 Haar DWT in 2 levels

From Fourier to Wavelets in 60 Slides

MGA Tutorial, September 08, 2004 Construction of Wavelets. Jan-Olov Strömberg

Harmonic Analysis: from Fourier to Haar. María Cristina Pereyra Lesley A. Ward

Two Channel Subband Coding

Subband Coding and Wavelets. National Chiao Tung University Chun-Jen Tsai 12/04/2014

SIGNAL COMPRESSION. 8. Lossy image compression: Principle of embedding

1 Introduction to Wavelet Analysis

ECG782: Multidimensional Digital Signal Processing

Boundary functions for wavelets and their properties

Introduction to Wavelets and Wavelet Transforms

MR IMAGE COMPRESSION BY HAAR WAVELET TRANSFORM

Sparse linear models and denoising

A Tutorial of the Wavelet Transform. Chun-Lin, Liu

Wavelets Marialuce Graziadei

Wavelets and Signal Processing

Module 7:Data Representation Lecture 35: Wavelets. The Lecture Contains: Wavelets. Discrete Wavelet Transform (DWT) Haar wavelets: Example

4.1 Haar Wavelets. Haar Wavelet. The Haar Scaling Function

Multirate signal processing

Optimization of biorthogonal wavelet filters for signal and image compression. Jabran Akhtar

Niklas Grip, Department of Mathematics, Luleå University of Technology. Last update:

A WAVELET BASED CODING SCHEME VIA ATOMIC APPROXIMATION AND ADAPTIVE SAMPLING OF THE LOWEST FREQUENCY BAND

2D Wavelets for Different Sampling Grids and the Lifting Scheme

- An Image Coding Algorithm

Basic Multi-rate Operations: Decimation and Interpolation

Wavelets, Filter Banks and Multiresolution Signal Processing

Wavelets and Image Compression. Bradley J. Lucier

L. Yaroslavsky. Fundamentals of Digital Image Processing. Course

Wavelet Bi-frames with Uniform Symmetry for Curve Multiresolution Processing

( nonlinear constraints)

The New Graphic Description of the Haar Wavelet Transform

A new class of morphological pyramids for multiresolution image analysis

BOOK CORRECTIONS, CLARIFICATIONS, AND CORRECTIONS TO PROBLEM SOLUTIONS

Introduction p. 1 Compression Techniques p. 3 Lossless Compression p. 4 Lossy Compression p. 5 Measures of Performance p. 5 Modeling and Coding p.

Design and Implementation of Multistage Vector Quantization Algorithm of Image compression assistant by Multiwavelet Transform

Invariant Scattering Convolution Networks

MLISP: Machine Learning in Signal Processing Spring Lecture 8-9 May 4-7

Study of Wavelet Functions of Discrete Wavelet Transformation in Image Watermarking

c 2010 Melody I. Bonham

We have to prove now that (3.38) defines an orthonormal wavelet. It belongs to W 0 by Lemma and (3.55) with j = 1. We can write any f W 1 as

Comparison of Wavelet Families with Application to WiMAX Traffic Forecasting

Lecture 27. Wavelets and multiresolution analysis (cont d) Analysis and synthesis algorithms for wavelet expansions

An Introduction to Filterbank Frames

Elec4621 Advanced Digital Signal Processing Chapter 11: Time-Frequency Analysis

Fast Wavelet/Framelet Transform for Signal/Image Processing.

arxiv: v1 [cs.oh] 3 Oct 2014

ECE 634: Digital Video Systems Wavelets: 2/21/17

Scientific Computing: An Introductory Survey

Fourier Transform. sin(n# x)), where! = 2" / L and

Sparse Directional Image Representations using the Discrete Shearlet Transform

Signal Analysis. Filter Banks and. One application for filter banks is to decompose the input signal into different bands or channels

Transcription:

Digital Image Processing Wavelets and Multiresolution Processing (Wavelet Transforms) Christophoros Nikou cnikou@cs.uoi.gr University of Ioannina - Department of Computer Science

2 Contents Image pyramids Subband coding The Haar transform Multiresolution analysis Series expansion Scaling functions Wavelet functions Wavelet series Discrete wavelet transform (DWT) Fast wavelet transform (FWT) Wavelet packets

3 The Wavelet Series A continuous signal may be represented by a scaling function in a subspace V j0 and some number of wavelet functions in subspaces W, W, W... f ( x) = c ( k) φ ( x) + d ( k) ψ ( x) j0 j0, k j j, k k j= j k 0 j j + 1 j + 2, 0 0 0 Scaling coefficients c ( k) f( x), φ ( x) f( x) φ ( x) dx = = j j, k j, k 0 0 0 Detail (wavelet) coefficients d ( k) f( x), ψ ( x) f( x) ψ ( x) dx = = j j, k j, k

4 The Wavelet Series (cont ) Example: using Haar wavelets and starting from j 0 =0, compute the wavelet series of f( x) x 2, 0 x 1 = 0, otherwise Scaling coefficients 1 1 2 2 0(0) φ0,0( ) 0 0 = = = c x x dx x dx 1 3 There is only one scaling coefficient for k=0. Integer translations of the scaling function do not overlap with the signal.

5 The Wavelet Series (cont ) Example (continued): Detail (wavelet) coefficients 1 0.5 1 2 2 2 0(0) ψ 0,0( ) 0 0 0.5 d = x x dx= x dx x dx= 1 4 1 0.25 0.5 2 2 2 1 ψ 1,0 0 0 0.25 d (0) = x ( x) dx= x 2dx x 2dx= 2 32 1 0.75 1 2 2 2 1 ψ 1,1 0 0.5 0.75 d (1) = x ( x) dx= x 2dx x 2dx= 3 2 32

6 The Wavelet Series (cont ) Example (continued): Substituting these values: 1 1 2 2 f( x) = φ0,0( x) + ψ0,0( x) ψ1,0( x) ψ1,1( x)... 3 4 + + 32 32 V0 W0 W1 V1= V0 W0 V = V W = V W W 2 1 1 0 0 1

7 The Wavelet Series (cont ) Example (continued): The scaling function approximates the signal by its average value. Each wavelet subspace adds a level of detail in the wavelet series representation of the signal.

8 The Discrete Wavelet Transform If the signal is discrete, of length M, we compute its DWT. 1 1 f ( n) = W ( j, k) φ ( n) + W ( j, k) ψ ( n) M φ 0 j0, k ψ j, k k M j= j k 0 Scaling coefficients M 1 1 Wφ ( j, k) = f ( n) φ ( n) 0 j0, k M n= 0 Detail coefficients M 1 1 Wψ ( j, k) = f ( n) ψ j ( n), for j j 0 M n= 0, k 0

9 The Discrete Wavelet Transform (cont ) 1 1 f ( n) = W ( j, k) φ ( n) + W ( j, k) ψ ( n) M φ 0 j0, k ψ j, k k M j= j k We take M equally spaced samples over the support of the scaling and wavelet functions. Normally, we let j 0 =0 and M=2 J. Therefore, the summations are performed over j n= 0, 1, 2,..., M 1, j = 0, 1, 2,..., J 1, k = 0, 1, 2,...,2 1 For Haar wavelets, the discretized scaling and wavelet functions correspond to the rows of the MxM Haar matrix. 0

10 The Discrete Wavelet Transform (cont ) Example: f(n)={1, 4, -3, 0}. We will compute the DWT of the signal using the Haar scaling function and the corresponding wavelet functions. Here, M=4=2 J, J=2 and with j 0 =0 the summations are performed over n=0, 1, 2, 3, j=0, 1 and k=0 for j=0 or k=0, 1 for j=1. The values of the sampled scaling and wavelet functions are the elements of the rows of H 4.

11 The Discrete Wavelet Transform (cont ) Example (continued): f(n)={1, 4, -3, 0}. M 1 3 1 1 W ( j, k) f( n) φ ( n) f( n) φ ( n) φ = = 0 j0, k 0,0 M j0 = 0, k= 0 n= 0 2 n= 0 1 W φ (0,0) = [1 1+ 4 1 3 1+ 0 1] = 1 2 1 W ψ (0,0) = [1 1+ 4 1 3 ( 1) + 0 ( 1)] = 4 2 1 W ψ (1,0) = [1 2+ 4( 2) 30 + 00] = 1.5 2 2 1 W ψ (1,1) = [10 + 40 3 2+ 0( 2)] = 1.5 2 2

12 The Discrete Wavelet Transform (cont ) Example (continued): f(n)={1, 4, -3, 0}. The DWT relative to the Haar scaling and wavelet functions is 1, 4, 1.5 2, 1.5 2 { } To reconstruct the signal, we compute 1 1 f( n) = Wφ( j0, k) φj 0, k( n) + Wψ( j, k) ψ j, k( n) M k M j= j0 k 1 = Wφ(0,0) φ0,0( n) + Wψ(0,0) ψ0,0( n) + Wψ(1,0) ψ1,0( n) + Wψ(1,1) ψ1,1( n) 2 for n=0, 1, 2, 3. Notice that we could have started from a different approximation level j 0 0.

13 The Fast Wavelet Transform A computationally efficient implementation of the DWT [Mallat 1989]. It resembles subband coding. Consider the multiresolution refinement equation φ( x) = hφ ( n) 2 φ(2 x n) n Scaling x by 2 j, translating it by k and letting m=2k+n: ( j ) j φ(2 x k) = hφ ( n) 2φ 2(2 x k) n = n = h n x k n n m j+ 1 φ ( ) 2 φ(2 2 ) = h m k x m j+ 1 φ ( 2 ) 2 φ(2 )

14 The Fast Wavelet Transform (cont ) φ = j j+ 1 (2 x k) hφ ( m 2 k) 2 φ(2 x m) m The scaling vector h φ may be considered as weights used to expand φ(2 j x-k) as a sum of scale j+1 scaling functions. A similar sequence of operations leads to ψ = j j+ 1 (2 x k) hψ ( m 2 k) 2 φ(2 x m) m

15 The Fast Wavelet Transform (cont ) Injecting these expressions into the DWT formulas M 1 1 Wφ ( j, k) = f ( n) φ jk, ( n) M n= 0 M 1 1 Wψ ( j, k) = f ( n) ψ j ( n), for j j 0 M n= 0, k 0 yields the following important equations relating the DWT coefficients of adjacent scales. Wφ( j, k) = hφ( m 2 k) Wφ( j + 1, m) m Wψ( j, k) = hψ( m 2 k) Wφ( j + 1, m) m

16 The Fast Wavelet Transform (cont ) Wφ( j, k) = hφ( m 2 k) Wφ( j + 1, m) m Wψ( j, k) = hψ( m 2 k) Wφ( j + 1, m) m Both the scaling and the wavelet coefficients of a certain scale j may be obtained by convolution of the scaling coefficients of the next scale j+1 (the finer detail scale), with the order-reversed scaling and wavelet vectors h φ (-n) and h ψ (-n). subsampling the result. The complexity is O(M).

17 The Fast Wavelet Transform (cont ) W ( j, k) = h ( n) W ( j+ 1, n) n k k φ φ φ = 2, 0 W ( j, k) = h ( n) W ( j+ 1, n) n k k ψ ψ φ = 2, 0 The convolutions are evaluated at non-negative even indices. This is equivalent to filtering and downsampling by 2.

18 The Fast Wavelet Transform (cont ) The procedure may be iterated to create multistage structures of more scales. The highest scale coefficients are assumed to be the values of the signal itself Wφ ( J, n) = f( n)

19 The Fast Wavelet Transform (cont ) The corresponding frequency splitting characteristics for the two-stage procedure.

20 The Fast Wavelet Transform (cont )

21 The Fast Wavelet Transform (cont ) Reconstruction may be obtained by the IFWT upsampling by 2 (inserting zeros). convolution of the scaling coefficients by h φ (n) and the wavelet coefficients by h ψ (n) and summation. W j k h k W j k h k W j k 2 2 φ( + 1, ) = φ( ) φ (, ) + ψ( ) ψ (, ) k 0

22 The Fast Wavelet Transform (cont ) It can also be extended to multiple stages.

23 The Fast Wavelet Transform (cont )

24 Relation to the Fourier Transform The Fourier basis functions guarantee the existence of the transform for energy signals. The wavelet transform depends upon the availability of scaling functions for a given wavelet function. The wavelet transform depends on the orthonormality (biorthogonality) of the scaling and wavelet functions. The F.T. informs us about the frequency content of a signal. It does not inform us on the specific time instant that a certain frequency occurs. The W.T. provides information on when the frequency occurs.

25 Relation to the Fourier Transform (cont ) Heisenberg cells. The width of each rectangle in (a) represents one time instant. The height of each rectangle in (b) represents a single frequency. Signal DFT DWT

26 Relation to the Fourier Transform (cont ) Time domain pinpoints the instance an event occurs but has no frequency information. DFT domain pinpoints the frequencies that are present in the events but provides no time resolution (when a certain frequency appears). Signal DFT DWT

27 Relation to the Fourier Transform (cont ) In DWT the time-frequency resolution varies but the area of each tile is the same. There is a compromise between time and frequency resolutions. At low frequencies the tiles are shorter (better frequency resolution, less ambiguity regarding frequency) but wider (more ambiguity regarding time). At high frequencies the opposite happens (time resolution is improved). Signal DFT DWT

28 2-D Discrete Wavelet Transform Extension from 1-D wavelet transforms. A 2-D scaling function and three 2-D wavelet functions are required. They are separable. They are the product of two 1-D functions. Variations along columns Variations along rows Variations along diagonals φ( xy, ) = φ( x) φ( y) H ψ ( x, y) = ψ( x) φ( y) V ψ ( x, y) = φ( x) ψ( y) D ψ ( x, y) = ψ( x) ψ( y)

29 2-D Discrete Wavelet Transform (cont ) Given separable scaling and wavelet functions the scaled and translated basis φ ψ j/2 j j jmn,,( xy, ) = 2 φ(2 x m,2 y n) i j/2 i j j ( xy, ) = 2 (2 x m,2 y n), i= { HV,, D} jmn,, ψ where i is an index and there are two translations m and n.

30 2-D Discrete Wavelet Transform (cont ) The DWT is given by M 1N 1 1 W ( j, m, n) f( m, n) φ ( m, n) φ = 0 j0, m, n MN m= 0 n= 0 M 1N 1 i 1 i Wψ ( j, m, n) = f( m, n) ψ ( m, n), i = { H, V, D} j0, m. n MN m= 0 n= 0 And the inverse transformation is 1 f ( m, n) = Wφ( j0, m, n) φ j0, m, n( m, n) MN m n 1 i i + Wψ ( j, m, n, k) ψ jmn,, ( m, n) MN i= H, V, D j= j m n 0

31 2-D Discrete Wavelet Transform (cont ) We take M equally spaced samples over the support of the scaling and wavelet functions. We normally, we let j 0 =0 and select N=M=2 J so that j m= n= 0, 1, 2,..., M 1, j = 0, 1, 2,..., J 1, k = 0, 1, 2,..., 2 1 Like the 1-D transform it can be implemented using filtering and downsampling. We take the 1-D FWT of the rows followed by the 1-D FWT of the resulting columns.

32 2-D Discrete Wavelet Transform (cont )

33 2-D Discrete Wavelet Transform (cont ) Reconstruction (inverse 2-D FWT)

34 2-D Discrete Wavelet Transform (cont )

35 2-D Discrete Wavelet Transform (cont )

36 2-D Discrete Wavelet Transform (cont ) a) Noisy CT image. We wish to remove the noise by manipulating the DWT. c) Zeroing the highest resolution detail coefficients (not thresholding the lowest resolution details). e) Zeroing all of the detail coefficients of the two scale DWT. b) Thresholding all of the detail coefficients of the two scale DWT. Significant edge information is eliminated. d) Information loss in c) with respect to the original image. The edges are slightly disturbed. d) Information loss in e) with respect to the original image. Significant edge information is removed.

37 Wavelet Packets The DWT, as it was defined, decomposes a signal into a sum of scaling and wavelet functions whose bandwidths are logarithmically related. low frequencies use narrow bandwidths. high frequencies use wider bandwidths. For greater flexibility of the partitioning of the timefrequency plane the DWT must be generalized. Signal DFT DWT

38 Wavelet Packets (cont ) Coefficient tree and subspace analysis tree for the two-scale (three levels) FWT filter bank. The subspace analysis tree provides a more compact representation of the decomposition in terms of subspaces. VJ = VJ 1 W J 1

39 Wavelet Packets (cont ) Subspace analysis tree and spectrum splitting for the three-scale (four levels) FWT filter bank. Here, we have three options for the expansion: V = V W J J 1 J 1 V = V W W J J 2 J 1 J 2 V = V W W W J J 3 J 2 J 1 J 3

40 Wavelet Packets (cont ) Wavelet packets are conventional wavelet transforms in which the details are filtered iteratively. For example, the three scale wavelet packet tree is Indices A (approximation) and D (detail) denote the path from the parent to the node.

41 Wavelet Packets (cont ) Filter bank and spectrum (three scale wavelet packet).

42 Wavelet Packets (cont ) The cost of this generalization increases the computational complexity of the transform from O(M) to O(MlogM). Also, the three scale packet almost triples the number of decompositions available from the three low pass bands.

43 Wavelet Packets (cont ) The subspace of the signal may be expanded as V = V W W W W W W W J J 3 J 2, A J 2, D J 1, AA J 1, AD J 1, DA J 1, DD J 3 with spectrum:

44 Wavelet Packets (cont ) It can also be expanded as V = V W W W J J 1 J 1, A J 1, DA J 1, DD with spectrum:

45 Wavelet Packets (cont ) In general, a P-scale 1-D wavelet packet (associated with P+1 level analysis trees) supports [ DP] 2 DP ( + 1) = ( ) + 1 unique decompositions, where D(1)=1 is the initial signal. For instance, D(4)=26 and D(5)=677.

46 Wavelet Packets (cont ) The problem increases dramatically in 2-D. a P-scale 2-D wavelet packet (associated with P+1 level analysis trees) supports [ DP] 4 DP ( + 1) = ( ) + 1 unique decompositions, where D(1)=1 is the initial signal. For instance, D(4)=83.522 possible decompositions. How do we select among them? Impractical to examine each one of them for a given application.

47 Wavelet Packets (cont ) A common application of wavelets is image compression. Here we will examine a simplified example. We seek to compress the fingerprint image by selecting the best three-scale wavelet packet decomposition.

48 Wavelet Packets (cont ) A criterion for the decomposition is the image energy E( f) f( mn, ) = m n Algorithm For each node of the analysis tree, from the root to the leaves: Step 1: Compute the energy of the node (E P ) and the energy of its offsprings (E A, E H, E V, E D ). Step 2: If E A +E H +E V +E D <E P include the offsprings in the analysis tree as they reduce the initial energy. Otherwise, keep only the parent which is a leaf of the tree. 2

49 Wavelet Packets (cont ) Many of the 64 initial subbands are eliminated.