Presentation is loading. Please wait.

Presentation is loading. Please wait.

Wavelets and Filter Banks

Similar presentations


Presentation on theme: "Wavelets and Filter Banks"— Presentation transcript:

1 Wavelets and Filter Banks
4C8 Integrated Systems Design

2 Recall the 1D Haar Xform

3 Now consider as filtering
b a b FIR Filter H0 FIR Filter H1 Downsample by 2

4 Hence Analysis Filter Bank
Low Pass Filter Only keep signal at even values of n High Pass Filter

5 Reconstruction – Inverse Transform
To do the inverse transform to apply the stages in reverse Upsampling Filtering (the filters are not necessarily the same as before) Upsampling means that there are zeros at odd n when compared to their values before downsampling in the analysis stage.

6 Upsampling What is the relationship between Z-tranforms of the signals before and after the downsampling/upsampling stages?

7 To estimate 𝑥 from 𝑦 0 and 𝑦 1 (Haar Transform)
𝑥 𝑛 = 𝑦 0 𝑛+1 + 𝑦 1 (𝑛+1) for odd n 𝑥 𝑛 = 𝑦 0 𝑛 − 𝑦 1 (𝑛) for even n 𝑦 0 and 𝑦 1 are zero at odd n Not the same as y0 and y1 output from analysis stage Because they have 0’s in them!

8 To estimate 𝑥 from 𝑦 0 and 𝑦 1 (Haar Transform)
Because 𝑦 0 and 𝑦 1 are zero at odd n we can write a single equation for 𝑥 𝑛 for all values of n 𝑥 𝑛 = 𝑦 0 𝑛 + 𝑦 0 𝑛 𝑦 1 𝑛+1 − 𝑦 1 𝑛 Taking Z transforms we get 𝑋 𝑧 = 𝐺 0 𝑧 𝑌 0 𝑧 + 𝐺 1 𝑧 𝑌 1 𝑧 where 𝐺 0 𝑧 = 𝑧 and 𝐺 1 𝑧 = 𝑧−1

9 Hence 2 band filter bank Normal filter outputs
Downsample by 2 then upsample by 2 by putting 0’s inbetween

10 The Wavelet Transform We are not restricted to using the Haar filters
it is possible to get better compression with more elaborate filters. Need to choose 2 low pass filters ( 𝐻 0 (𝑧) and 𝐺 0 (𝑧) ) and 2 high pass filters ( 𝐻 1 (𝑧) and 𝐺 1 (𝑧) ) but the reconstruction filters must give exactly the same signal as the input to the analysis filter bank this is known as perfect reconstruction

11 Perfect Reconstruction
We want the output from the reconstruction to be the same as the input i.e. a Perfect Reconstruction Filterbank so …

12 PR

13 PR H are analysis filters G are synthesis/reconstruction filters

14 Can now extend analysis to more stages .. A binary tree
Lo Not that Hi Quite Hi Not quite so Hi Level 1 Hi Level 2 Level 3 Level 4

15 2D Wavelet Transform LoLo LoHi HiLo HiHi Downsample Rows
Downsample Columns

16 The Multilevel 2D Discrete Wavelet Xform
Downsample Rows Downsample Columns Downsample Rows Downsample Columns

17 2D DWT of Lena COARSE Levels Fine Levels

18 What does this do to a signal?
Need to work out the impulse response of each equivalent filter output Can do this by shifting the downsample operation to the output of each stage Lo Not that Hi Quite Hi Not quite so Hi Hi Level 1 Level 2 Level 3 Level 4

19 Multirate Theory 𝐻 𝑧 2 =1+ 𝑧 −2 + 𝑧 −4 𝐻 𝑧 =1+ 𝑧 −1 + 𝑧 −2

20 What does this do to a signal?

21 So now we can examine impulse responses
Process of creating y1, y01 etc is the Wavelet Transform “Wavelet” refers to the impulse response of the cascade of filters Shape of impulse response similar at each level .. Derived from something called a “Mother wavelet” Low pass Impulse response to level k is called the “scaling function at level k”

22 Good wavelets for compression
There are better filters than the “haar” filters Want PR because energy compaction stages should be reversible Wavelet filter design is art and science Won’t go into this at all in this course You will just be exposed to a couple of wavelets that are used in the literature There are very many wavelets! Only some are good for compression and others for analysis

23 Le Gall 3,5 Tap Filter Set A TRICKY THING! Note how filter outputs (H1,G1) shifted by z, z-1 So implement by filtering without shift but select ODD outputs (H0,G0) select EVEN outputs

24 Le Gall 3,5 Tap Filter Set

25 Le Gall Filters Pretty good for image processing because of the smooth nature of the analysis filters and they are symmetric But reconstruction filters not smooth .. bummer It turns out that you can swap the analysis and reconstruction filters around Known as the LeGall 5,3 wavelet or inverse LeGall wavelet

26 Near-Balanced Wavelets (5,7)
Analysis Filters Reconstruction Filters

27 Near-Balanced Wavelets (13,19)
Analysis Filters Reconstruction Filters

28 2D Impulse responses of the separable filters

29 Coding with Wavelets So we have free choice over what wavelet filters to use. How do they compare with the DCT? To compare we must look at which filters give the best compromise between quality and compression efficiency. rate distortion curves. We should use some kind of subjectively weighted quantisation. lower Qstep for low frequency bands (higher level number) and higher Qstep for high frequency bands.

30 Coding with Wavelets 4 level transforms Bands Qstep
All level 3 and Level 4 bands 50 Hi-Lo and Lo-Hi bands at Level 2 Hi-Hi band at Level 2 100 Hi-Lo and Lo-Hi bands at Level 1 Hi-Hi band at Level 1 200

31 Entropies with RLC

32 Rate-Distortion Curves
Improving Performance Increasing Quality Decreasing File Size Method 1 Method 2 compares performance of different compression methods (eg. different wavelet filters) each curve is parametric plot of entropy v quality we measure entropy and compression for a set of parameter values the parameter in this case will a scaling factor of the quantisation step sizes So for the different wavelet filters we scale the quantisation step sizes listed earlier and measure entropy and quality

33 Rate-Distortion Curves
Decreasing File Size Increasing Quality Improving Performance

34 Wavelets for Analysis: Data Copying
Degraded View Reference View

35 Copy and Paste of Wavelet Coefficients
Data Interpolation Direct Copy and Paste Copy and Paste of Wavelet Coefficients

36 Wavelets for Analysis: Noise Reduction

37 Wavelets for Analysis: Noise Reduction
Note that true image detail is represented by Large value Coefficients So perform noise reduction by setting small coefficients to 0. What is small? Wavelet Coring

38 Wavelets for Analysis: Coring

39 Wavelet Noise Reduction

40 Noise Reduction Important in video for compression efficiency
Important for image quality SONY, Philips, Snell and Wilcox, Foundry, Digital Vision all use wavelet noise reduction of some kind

41 The price for decimation
Is aliasing Wavelets work because of the very clever filter frequency response designs that cancel aliasing by the end of reconstruction. BUT THE COEFFICIENTS THEMSELVES ARE ALIASED. High Pass output is aliased!

42 Shift Variant Wavelets
This means that decimated wavelets are shift variant! If you move the signal the DWT coefficients change! This means that they are not so good for analysis .. And definitely not good for motion estimation It doesn’t matter for compression

43 A tricky example..

44 #𝑐𝑜𝑒𝑓𝑓𝑠= 4×#𝑙𝑒𝑣𝑒𝑙𝑠×#𝑝𝑖𝑥𝑒𝑙𝑠
Can get around this … By NOT downsampling .. “Algorithme a-trous” huge data redundancy #𝑐𝑜𝑒𝑓𝑓𝑠= 4×#𝑙𝑒𝑣𝑒𝑙𝑠×#𝑝𝑖𝑥𝑒𝑙𝑠 huge filter lengths for high levels – computation is an issue. OR use Nick Kingsbury’s Complex Wavelets approximate shift invariance computationally close to normal DWT limited redundancy #𝑐𝑜𝑒𝑓𝑓𝑠=4×#𝑝𝑖𝑥𝑒𝑙𝑠

45 Summary Matlab has a good wavelet package .. Useful for development
Wavelets have made their way into compression Powerful idea for analysis but shift variance and data explosion is a problem JPEG2000, MPEG4 define methods for using DWT in compression


Download ppt "Wavelets and Filter Banks"

Similar presentations


Ads by Google