CSE 490 G Introduction to Data Compression Wavelet Transform ...

5 downloads 74 Views 4MB Size Report
1. CSE 490 G. Introduction to Data Compression. Winter 2006. Wavelet Transform Coding. PACW. CSE 490g - Lecture 12 - Winter 2006. 2. Wavelet Transform.
Wavelet Transform • Wavelet Transform – A family of transformations that filters the data into low resolution data plus detail data.

CSE 490 G Introduction to Data Compression

low pass filter

Winter 2006

image

Wavelet Transform Coding PACW

L

L

H

H

wavelet transformed image

high pass filter detail subbands CSE 490g - Lecture 12 - Winter 2006

Wavelet Transformed Barbara (Enhanced)

Wavelet Transformed Barbara (Actual)

Low resolution subband

most of the details are small so they are very dark.

Detail subbands

CSE 490g - Lecture 12 - Winter 2006

3

CSE 490g - Lecture 12 - Winter 2006

Wavelet Transform Compression wavelet transform

transformed image (coefficients)

wavelet coding

sign plane

bit stream

+-+++

1 Decoder wavelet decoding

2 transformed image (approx coefficients)

inverse wavelet transform

distorted image

Wavelet coder transmits wavelet transformed image in bit plane order with the most significant bits first. CSE 490g - Lecture 12 - Winter 2006

4

Bit Planes of Coefficients

Encoder image (pixels)

2

5

3 4 . . .

00011 00001 01000 10100

. . . Coefficients are normalized between –1 and 1 CSE 490g - Lecture 12 - Winter 2006

6

1

Rate-Fidelity Curve

Why Wavelet Compression Works

PSNR

– In most significant bit planes most coefficients are 0 so they can be coded efficiently. – Only some of the bit planes are transmitted. This is where fidelity is lost when compression is gained.

• Natural progressive transmission compressed bit planes

...

38 36 34 32 30 28 26 24 22 20

SPIHT coded Barbara

0. 02 0. 13 0. 23 0. 33 0. 42 0. 52 0. 65 0. 73 0. 83 0. 92

• Wavelet coefficients are transmitted in bit-plane order.

bits per pixel

truncated compressed bit planes More bit planes of the wavelet transformed image that is sent the higher the fidelity. CSE 490g - Lecture 12 - Winter 2006

7

CSE 490g - Lecture 12 - Winter 2006

Wavelet Coding Methods

Wavelet Transform

• EZW - Shapiro, 1993

Encoder

– Embedded Zerotree coding.

image (pixels)

• SPIHT - Said and Pearlman, 1996 – Set Partitioning in Hierarchical Trees coding. Also uses “zerotrees”.

• ECECOW - Wu, 1997

wavelet transform

transformed image wavelet (approx coefficients) decoding

– Uses arithmetic coding with different context.

• JPEG 2000 – new standard based largely on EBCOT • GTW – Hong, Ladner 2000 – Uses group testing which is closely related to Golomb codes – Like GTW but uses arithmetic coding CSE 490g - Lecture 12 - Winter 2006

9

One-Dimensional Average Transform (1)

(x+y)/2

detail y x

inverse wavelet transform

distorted image

10

One-Dimensional Average Transform (2)

x

y

(x+y)/2 = L

L

low pass filter

x

(y-x)/2 (y-x)/2 = H

x=L-H y=L+H

high pass filter

How do we represent two data points at lower resolution?

H Transform

CSE 490g - Lecture 12 - Winter 2006

bit stream

CSE 490g - Lecture 12 - Winter 2006

y y

wavelet coding

A wavelet transform decomposes the image into a low resolution version and details. The details are typically very small so they can be coded in very few bits.

• PACW - Ladner, Askew, Barney 2003

average

transformed image (coefficients)

Decoder

– Uses arithmetic coding with context.

• EBCOT – Taubman, 2000

x

8

11

detail

CSE 490g - Lecture 12 - Winter 2006

Inverse Transform

12

2

One-Dimensional Average Transform (3)

One-Dimensional Average Transform (4)

Low Resolution Version

L

A

B

L

H

H Note that the low resolution version and the detail together have the same number of values as the original.

Detail

CSE 490g - Lecture 12 - Winter 2006

1 1 n B[i] = A[2i] + A[2i + 1], 0 ≤ i < 2 2 2 1 1 n B[n/2 + i] = − A[2i] + A[2i + 1], 0 ≤ i < 2 2 2

13

One-Dimensional Average Inverse Transform

L = B[0..n/2-1] H = B[n/2..n-1]

CSE 490g - Lecture 12 - Winter 2006

14

Two Dimensional Transform (1) low resolution subband horizontal transform

B

L

L

H

vertical transform

A

H

A[2i] = B[i] − B[n/2 + i], 0 ≤ i

Suggest Documents