Wavelets and Multiresolution Processing Thinh Nguyen
Multiresolution Analysis (MRA) A scaling function is used to create a series of approximations of a function or image, each differing by a factor of 2 from its neighboring approximations. Additional functions called wavelets are then used to encode the difference in information between adjacent approximations.
Series Expansions f( x) Express a signal as f( x) = α ϕ ( x) If the expansion is unique, the are called basis functions, and the expansion set is called a basis ϕ ( x) { } expansion coefficients expansion functions ϕ ( x)
Series Expansions All the functions expressible with this basis form a function space which is referred to as the closed span of the expansion set V = Span ϕ ( x) f( x) V f( x) ϕ ( x) { } If, then is in the closed span of and can be expressed as { } f( x) = α ϕ ( x)
Orthonormal Basis The expansion functions form an orthonormal basis for V ϕ j( x), ϕ( x) = δ j = The basis and its dual are equivalent, i.e., and ϕ ( x) = ϕ% ( x) α ϕ ( x), f( x) ϕ ( x) f( x) dx = = j j =
Scaling Functions Consider the set of expansion functions composed of integer translations and binary scalings of the real square-integrable function for all and defined by By choosing the scaling function wisely, can be made to span ϕ( x) { } { j/2 j } ϕ j, ( x) = 2 ϕ(2 x ) j, { ϕ } j, ( x) 2 ϕ( x) L ( ) ϕ( x) L 2 ( )
{ } { j/2 j } ϕ j, ( x) = 2 ϕ(2 x ) Index determines the position of ϕ j, ( x) along the x-axis, index j determines its width; 2 j /2 controls its height or amplitude. j = j o By restricting j to a specific value the resulting expansion set is a subset of { ϕ } j, ( x) { ϕ } j, ( x) o One can write { }, ( ) V = Span ϕ x jo jo
Example: The Haar Scaling Function x < ϕ( x) = otherwise f( x) =.5 ϕ,( x) + ϕ, ( x).25 ϕ,4( x) ϕ, ( x) = ϕ,2 ( x) + ϕ,2+ ( x) 2 2 V V
MRA Requirements. The scaling function is orthogonal to its integer translates 2. The subspaces spanned by the scaling function at low scales are nested within those spanned at higher scales: V L V V V V L V 2
Wavelet Functions Given a scaling function which satisfies the MRA requirements, one can define a wavelet function ψ ( x) which, together with its integer translates and binary scalings, spans the difference between any two adjacent scaling subspaces V j and V j +
Wavelet Functions Define the wavelet set for all that spans the We write { } { j/2 j } ψ j, ( x) = 2 ψ(2 x ) W j spaces and, if j { } j, ( ) W = Span ψ x f( x) Wj f( x) = α ψ ( x) j,
Orthogonality: V + = V W j j j This implies that for all appropriate We can write 2 2 and also ϕ j, ( x), ψ jl, ( x) = jl,, L ( ) = V W W L L ( ) = L W W W W W L 2 2 (no need for scaling functions, only wavelets!)
Example: Haar Wavelet Functions in W and W f ( x) = f ( x) + f ( x) a low frequencies high frequencies d
Wavelet Series Expansions A function can be expressed as = j j, x + 2 f( x) L ( ) f( x) c ( ) ϕ ( ) d ( ) ψ ( x) j= j approximation or scaling coefficients detail or wavelet coefficients j ( ) = ( ), j, ( x ) dj = f x ψ j, x c f x ϕ j j, ( ) ( ), ( ) 2 L ( ) V j W j W j + = L
Example: The Haar Wavelet Series Expansion of y=x 2 2 x x< Consider y = otherwise If j =, the expansion coefficients are 2 2 () ϕ, ( x) () c = x dx = d = x ψ,( x) dx = 3 4 2 2 () ψ, x () 32 2 3 2 d = x ( ) dx= d = x ψ, ( x) dx= 32 2 3 2 y = ϕ, ( x) +,( ), ( ),( ) 3 ψ x ψ x ψ x 4 + + L 4243 42443 32 32 444442444443 V W 4444244443 W V = V W 4444444444244444444443 V = V W = V W W 2
Example: The Haar Wavelet Series Expansion of y=x 2
The Discrete Wavelet Transform (DWT) f ( x), x=,, K, M Let denote a discrete function Its DWT is defined as approximation coefficients detail coefficients W ( j, ) = f( x) ϕ ϕ j, M x Wψ ( j, ) = f( x x M Let and so that ( x) ) ψ j, ( ) j j x ( ) = ϕ(, ) ϕ j ( ) (, ) x + ψ ψ j, M M j= j f x W j, W j ( x) j = o M = 2 J x=,, K, M, j =,, K, J, j =,, K,2
Example: Computing the DWT Consider the discrete function f() =, f() = 4, f(2) = 3, f(3) = It is M 2 = 4= 2 J = 2 The summations are performed over x =,, 2,3 and = for j = and =, for j = Use the Haar scaling and wavelet functions
Example: Computing the DWT W W W ϕ ψ ψ 3 (,) = f ( x) ϕ, ( x) = [ + 4 3 + ] = 2 2 x= 3 (,) = f ( x) ψ,( x) = [ + 4 3 ( ) + ( ) ] = 4 2 2 x= 3 (, ) = f ( x) ψ, ( x) = 2+ 4( 2) 3 + =.5 2 2 2 x= 3 Wψ (,) = f ( x) ψ, ( x) = + 4 3 2+ ( 2 ) =.5 2 2 2 x=
Example: Computing the DWT The DWT of the 4-sample function relative to the Haar wavelet and scaling functions thus is {, 4,.5 2,.5 2} The original function can be reconstructed as f( x) = (,), (,),( ) 2 Wϕ ϕ ( x) + Wψ ψ x + for Wψ(,) ψ, ( x) + Wψ(, ) ψ,( x) x =,,2,3
Wavelet Transform in 2-D2 In 2-D, one needs one scaling function ϕ( xy, ) = ϕ( x) ϕ( y) and three wavelets H ψ ( xy, ) = ψ( x) ϕ( y) V ψ ( xy, ) = ϕ( x) ψ( y) D ψ ( xy, ) = ψ( x) ψ( y) ϕ(.) is a -D scaling function and is its corresponding wavelet ψ (.) detects horizontal details detects vertical details detects diagonal details
2-D D DWT: Definition Define the scaled and translated basis functions ϕ ψ jmn,, i jmn,, j/2 j j ( xy, ) = 2 ϕ(2 x m,2 y n) j/ 2 i j { } ( x, y) = 2 ψ (2 x m,2 y n), i = H, V, D Then M N Wϕ ( j, mn, ) = f( x, y) ϕ MN x= y= M N j j, m, n i i Wψ ( j, mn, ) = f( xy, ) ψ j, m, n ( xy, ), i = H, V, D MN x= y= f( x, y) = Wϕ ( j, m, n) ϕ j, m, n( xy, ) MN + MN m n i= HV,, D j= j m n W i ψ ( xy, ) ( j, m, n) ψ i j, m, n { } ( x, y)
Filter ban implementation of 2-D 2 wavelet analysis FB f ( x, y) HH HL LH LL resulting decomposition LL HL LH HH synthesis FB
Example: A Three-Scale FWT
Analysis and Synthesis Filters analysis filters synthesis filters wavelet function scaling function
Want to Learn More About Wavelets? An Introduction to Wavelets, by Amara Graps Amara s Wavelet Page (with many lins to other resources) http://www.amara.com/current/wavelet.html Wavelets for Kids, (A Tutorial Introduction), by B. Vidaovic and P. Mueller Gilbert Strang s tutorial papers from his MIT webpage http://www-math.mit.edu/~gs/ Wavelets and Subband Coding, by Jelena Kovacevic and Martin Vetterli, Prentice Hall, 2.