69
Discrete Geometrical Image Processing using the Contourlet Transform Minh N. Do Department of Electrical and Computer Engineering University of Illinois at Urbana-Champaign Joint work with Martin Vetterli (EPFL and UC Berkeley), Arthur Cunha, Yue Lu, Jianping Zhou (UIUC), and Duncan Po (Mathworks).

Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Discrete Geometrical Image Processing

using the Contourlet Transform

Minh N. Do

Department of Electrical and Computer EngineeringUniversity of Illinois at Urbana-Champaign

Joint work with Martin Vetterli (EPFL and UC Berkeley),Arthur Cunha, Yue Lu, Jianping Zhou (UIUC), and

Duncan Po (Mathworks).

Page 2: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Outline

1. Motivation

2. Discrete-domain construction using filter banks

3. Contourlets and directional multiresolution analysis

4. Contourlet approximation and directional vanishing moments

5. Applications

1. Motivation 1

Page 3: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

What Do Image Processors Do for Living?

Compression: At 158:1 compression ratio...

1. Motivation 2

Page 4: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

What Do Image Processors Do for Living?

Denoising (restoration/filtering)

Noisy image Clean image

1. Motivation 3

Page 5: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

What Do Image Processors Do for Living?

Feature extraction (e.g. for content-based image retrieval)

Featureextraction

Featureextraction

Images

Query

Similarity Measurement

Signatures

N best matched images

1. Motivation 4

Page 6: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Fundamental Question: Efficient Representation of

Visual Information

A random image A natural image

Natural images live in a very tiny part of the huge “image space”(e.g. R

512×512×3)

1. Motivation 5

Page 7: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Mathematical Foundation: Sparse Representations

Fourier, Wavelets... = construction of bases for signal expansions:

f =∑

n

cnψn, where cn = 〈f, ψn〉.

Non-linear approximation:

fM =∑

n∈IM

cnψn, where IM = indexes of M most significant components.

Sparse (efficient) representation: f ∈ F can be (nonlinearly)

approximated with few components; e.g. ‖f − fM‖22 ∼M−α.

1. Motivation 6

Page 8: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Wavelets and Filter Banks

2

2

2

2x

analysis synthesis

H1

H0

G1

G0

y1

y0 x0

x1

+ xMallat

G12

G02

G12

G02

++ Daubechies

1. Motivation 7

Page 9: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

The Success of Wavelets

• Wavelets provide a sparse representation for piecewise smooth signals.

• Multiresolution, tree structures, fast transforms and algorithms, etc.

• Unifying theory ⇒ fruitful interaction between different fields.

1. Motivation 8

Page 10: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Fourier vs. Wavelets

Non-linear approximation: N = 1024 data samples; keep M = 128coefficients

0 100 200 300 400 500 600 700 800 900 1000−20

0

20

40

Original

0 100 200 300 400 500 600 700 800 900 1000−20

0

20

40

Using wavelets (Daubechies−4): SNR = 37.67 dB

0 100 200 300 400 500 600 700 800 900 1000−20

0

20

40

Using Fourier (of size 1024): SNR = 22.03 dB

1. Motivation 9

Page 11: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Is This the End of the Story?

1. Motivation 10

Page 12: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Wavelets in 2-D

• In 1-D: Wavelets are well adapted to abrupt changes or singularities.

• In 2-D: Separable wavelets are well adapted to point-singularities (only).

But, there are (mostly) line- and curve-singularities...

1. Motivation 11

Page 13: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

The Failure of Wavelets

Wavelets fail to capture the geometrical regularity in images.

1. Motivation 12

Page 14: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Edges vs. Contours

Wavelets cannot “see” the difference between the following two images:

• Edges: image points with discontinuity

• Contours: edges with localized and regular direction [Zucker et al.]

1. Motivation 13

Page 15: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Goal: Efficient Representation for Typical Images

with Smooth Contours

������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������regions

smooth

boundary

smooth

Key: Exploring the intrinsic geometrical structure in natural images.

⇒ Action is at the edges!

1. Motivation 14

Page 16: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

And What The Nature Tells Us...

• Human visual system:

– Extremely efficient: 107 bits −→ 20-40 bits (per second).– Receptive fields are characterized as localized, multiscale and oriented.

• Sparse components of natural images (Olshausen and Field, 1996):

16 x 16 patches

from natural images

Search forSparse Code

1. Motivation 15

Page 17: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Wavelet vs. New Scheme

Wavelets New scheme

For images:

• Wavelet scheme... see edges but not smooth contours.

• New scheme... requires challenging non-separable constructions.

1. Motivation 16

Page 18: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Recent Breakthrough from Harmonic Analysis:

Curvelets [Candes and Donoho, 1999]

• Optimal representation for functions in R2 with curved singularities.

For f ∈ C2/C2 : ‖f − fM‖22 ∼ (logM)3M−2

• Key idea: parabolic scaling relation for C2 curves:

width ∝ length2

uv

l

w

u = u(v)

1. Motivation 17

Page 19: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

“Wish List” for New Image Representations

• Multiresolution ... successive refinement

• Localization ... both space and frequency

• Critical sampling ... correct joint sampling

• Directionality ... more directions

• Anisotropy ... more shapes

Our emphasis is on discrete framework that leads toalgorithmic implementations.

1. Motivation 18

Page 20: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Outline

1. Motivation

2. Discrete-domain construction using filter banks

3. Contourlets and directional multiresolution analysis

4. Contourlet approximation and directional vanishing moments

5. Applications

2. Discrete-domain construction using filter banks 19

Page 21: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Challenge: Being Digital!

Pixelization:

Digital directions:

2. Discrete-domain construction using filter banks 20

Page 22: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Proposed Computational Framework: Contourlets

In a nutshell: contourlet transform is an efficient directional multiresolutionexpansion that is digital friendly!

contourlets = multiscale, local and directional contour segments

• Contourlets are constructed via filter banks and can be viewed as anextension of wavelets with directionality⇒ Inherit the rich wavelet theory and algorithms.

• Starts with a discrete-domain construction that is amenable to efficientalgorithms, and then investigates its convergence to a continuous-domainexpansion.

• The expansion is defined on rectangular grids⇒ Seamless transition between the continuous and discrete worlds.

2. Discrete-domain construction using filter banks 21

Page 23: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Discrete-Domain Construction using Filter Banks

Idea: Multiscale and Directional Decomposition

• Multiscale step: capture point discontinuities, followed by...

• Directional step: link point discontinuities into linear structures.

2. Discrete-domain construction using filter banks 22

Page 24: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Analogy: Hough Transform in Computer Vision

Input image Edge image “Hough” image

=⇒ =⇒

Challenges:

• Perfect reconstruction.

• Fixed transform with low redundancy.

• Sparse representation for images with smooth contours.

2. Discrete-domain construction using filter banks 23

Page 25: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Multiscale Decomposition using Laplacian Pyramids

decomposition reconstruction

• Reason: avoid “frequency scrambling” due to (↓) of the HP channel.

• Laplacian pyramid as a frame operator → tight frame exists.

• New reconstruction: efficient filter bank for dual frame (pseudo-inverse).

2. Discrete-domain construction using filter banks 24

Page 26: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Directional Filter Banks (DFB)

• Feature: division of 2-D spectrum into fine slices using tree-structuredfilter banks.

37

6

5

4 7

6

5

4

0123

0 1 2

ω1

ω2 (π, π)

(−π,−π)

• Background: Bamberger and Smith (’92) cleverly used quincunx FB’s,modulation and shearing.

• We propose:

– a simplified DFB with fan FB’s and shearing– using DFB to construct directional bases

2. Discrete-domain construction using filter banks 25

Page 27: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Multidimensional Sampling

Example. Downsampling by M : xd[n] = x[Mn]

↓ R3 ↓ Q1

R3 =

(1 0−1 1

)

Q1 =

(1 1−1 1

)

= R0D0R3

2. Discrete-domain construction using filter banks 26

Page 28: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Simplified DFB: Two Building Blocks

• Frequency splitting by the quincunx filter banks (Vetterli’84).

+x

y0

y1

x

Q

Q

Q

Q

• Shearing by resampling

2. Discrete-domain construction using filter banks 27

Page 29: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Multichannel View of the Directional Filter Bank

+x

H0

H1

H2l−1

G0

G1

G2l−1

S0S0

S1S1

S2l−1S2l−1

y0

y1

y2l−1

x

Use two separable sampling matrices:

Sk =

[

2l−1 0

0 2

]

0 ≤ k < 2l−1 (“near horizontal” direction)

[

2 0

0 2l−1

]

2l−1 ≤ k < 2l (“near vertical” direction)

2. Discrete-domain construction using filter banks 28

Page 30: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

General Bases from the DFB

An l-levels DFB creates a local directional basis of l2(Z2):

{

g(l)k [· − S

(l)k n]

}

0≤k<2l, n∈Z2

• G(l)k are directional filters:

• Sampling lattices (spatial tiling):

2

2

2l−1

2l−1

2. Discrete-domain construction using filter banks 29

Page 31: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Discrete Contourlet Transform

Combination of the Laplacian pyramid (multiscale) and directional filterbanks (multidirection)

image

subbandsdirectionalbandpass

directionalsubbands

bandpass

(2,2) ω1

ω2 (π, π)

(−π,−π)

Properties: + Flexible multiscale and directional representation for images(can have different number of directions at each scale!)

+ Tight frame with small redundancy (< 33%)

+ Computational complexity: O(N) for N pixelsthanks to the iterated filter bank structures

2. Discrete-domain construction using filter banks 30

Page 32: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Wavelets vs. Contourlets

50 100 150 200 250

50

100

150

200

250

50 100 150 200 250

50

100

150

200

250

2. Discrete-domain construction using filter banks 31

Page 33: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Examples of Discrete Contourlet Transform

2. Discrete-domain construction using filter banks 32

Page 34: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Critically Sampled (CRISP) Contourlet Transform

[LuD:03]

9

9 8 67 5 4

1 3

5 64 7 8

2

13 2

0

ω1

ω2 (π, π)

(−π,−π)

M

D

D

D

D

A

B

• Directional bandpass: 3 × 2n (n = 1, 2, . . .) directions at each level.

• Refinement of directionality is achieved via iteration of two filter banks.

2. Discrete-domain construction using filter banks 33

Page 35: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Contourlet Packets

• Adaptive scheme to select the “best” tree for directional decomposition.

ω1

ω2 (π, π)

(−π,−π)

• Contourlet packets: obtained by altering the depth of the DFBdecomposition tree at different scales and orientations

– Allow different angular resolution at different scale and direction– Rich set of contourlets with variety of support sizes and aspect ratios– Include wavelet(-like) transform

2. Discrete-domain construction using filter banks 34

Page 36: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Nonsubsampled Contourlet Transform [Zhou, Cunha, ...]H0(z)

H1(z)

G0(z)

G1(z)

H0(z)

H1(z)

G0(z)

G1(z)

Less stringent filter bank condition → design better filters.

(z^D)

(z^D)

(z^D)

(z^D)

H0

H0

H0

H1

H1

H1

X

Key: “a trous” algorithm = efficient filtering “with holes” using theequivalent sampling matrices

2. Discrete-domain construction using filter banks 35

Page 37: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Outline

1. Motivation

2. Discrete-domain construction using filter banks

3. Contourlets and directional multiresolution analysis

4. Contourlet approximation and directional vanishing moments

5. Applications

3. Contourlets and directional multiresolution analysis 36

Page 38: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Multiresolution Analysis

w1

w2

Vj

Wj

Vj−1

Vj−1 = Vj ⊕Wj,

L2(R2) =⊕

j∈Z

Wj.

Vj has an orthogonal basis {φj,n}n∈Z2, where

φj,n(t) = 2−jφ(2−jt − n).

Wj has a tight frame {µj−1,n}n∈Z2 where

µj−1,2n+ki= ψ

(i)j,n, i = 0, . . . , 3.

3. Contourlets and directional multiresolution analysis 37

Page 39: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Directional Multiresolution Analysis

Wj =L2

lj−1k=0 W

(lj)

j,k

������������������������������������������������

������������������������������������������������

������������������������������������������������������

������������������������������������������������������

Vj

Wj

Vj−1

W(lj)

j,k

ω1

ω2

2j

2j+lj−2

ρ(lj)

j,k,n

W(lj)

j,k has a tight frame{

ρ(l)j,k,n

}

n∈Z2where

ρ(l)j,k,n(t) =

m∈Z2

g(l)k [m − S

(l)k n]

︸ ︷︷ ︸DFB basis

µj−1,m(t)︸ ︷︷ ︸

LP frame

= ρ(l)j,k(t − 2j−1S

(l)k n).

Theorem (Contourlet Frames) [DoV:03].{

ρ(lj)

j,k,n

}

j∈Z, 0≤k<2lj , n∈Z2

is a tight frame of L2(R2) for finite lj.

3. Contourlets and directional multiresolution analysis 38

Page 40: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Sampling Grids of Contourlets

(a) (b)

(c) (d)

w

w

l

l

w/4

w/4

l/2

l/2

3. Contourlets and directional multiresolution analysis 39

Page 41: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Connection between Continuous and Discrete Domains

Theorem [DoV:04] Suppose x[n] = 〈f, φL,n〉, for an f ∈ L2(R2), and

xdiscrete contourlet transform

−→ (aJ , d(lj)

j,k )j=1,...,J; k=0,...,2

lj−1

ThenaJ [n] = 〈f, φL+J,n〉 and d

(lj)

j,k [n] = 〈f, ρ(lj)

L+j,k,n〉

Digital images are obtained by:

x[n] = (f∗ϕ)(Tn) = 〈f, ϕ(·−Tn)〉

For T = 2L, with prefiltering wecan get x[n] from x[n]

3. Contourlets and directional multiresolution analysis 40

Page 42: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Contourlet Features

• Defined via iterated filter banks ⇒ fast algorithms, tree structures, etc.

• Defined on rectangular grids ⇒ seamless translation between continuousand discrete worlds.

• Different contourlet kernel functions (ρj,k) for different directions.

• These functions are defined iteratively via filter banks.

• With FIR filters ⇒ compactly supported contourlet functions.

3. Contourlets and directional multiresolution analysis 41

Page 43: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Outline

1. Motivation

2. Discrete-domain construction using filter banks

3. Contourlets and directional multiresolution analysis

4. Contourlet approximation and directional vanishing moments

5. Applications

4. Contourlet approximation and directional vanishing moments 42

Page 44: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Contourlets with Parabolic Scaling

Support size of the contourlet function ρljj,k: width ≈ 2j and length ≈ 2lj+j

To satisfy the parabolic scaling: width ∝ length2, simply set:the number of directions is doubled at every other finer scale.

uv

l

w

u = u(v)

ω1

ω2 (π, π)

(−π,−π)

4. Contourlet approximation and directional vanishing moments 43

Page 45: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Supports of Contourlet Functions

*

Contourlet

=*

DFBLP

=

Key point: Each generation doubles spatial resolutionas well as angular resolution.

4. Contourlet approximation and directional vanishing moments 44

Page 46: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Contourlet Approximation

see a wavelet

ΠLΠL

Desire: Fast decay as contourlets turn away from the discontinuity direction

Key: Directional vanishing moments (DVMs)

4. Contourlet approximation and directional vanishing moments 45

Page 47: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Geometrical Intuition

At scale 2j (j ≪ 0):

width ≈ 2j

length ≈ 2j/2

#directions ≈ 2−j/2

���������������

���������������

2j

2j/2 dj,k,n

d2j,k,n

θj,k,n

|〈f, ρj,k,n〉| ∼ 2−3j/4 · d3j,k,n

dj,k,n ∼ 2j/ sin θj,k,n ∼ 2j/2k−1 for k = 1, . . . , 2−j/2

=⇒ |〈f, ρj,k,n〉| ∼ 23j/4k−3

4. Contourlet approximation and directional vanishing moments 46

Page 48: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

How Many DVMs Are Sufficient?

������������������������

������������������������

α

d

d2

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

ω1

ω2

Sufficient if the gap to a direction with DVM:

α . d ∼ 2j/2k−1 for k = 1, . . . , 2−j/2

This condition can be replaced with fast decay in frequency across directions.

It is still an open question if there is an FIR filter bank that satisfies thesufficient DVM condition

4. Contourlet approximation and directional vanishing moments 47

Page 49: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Examples of Frequency Responses

8 directions: along the line ω2 = π/2

16 directions: along the line ω2 = π/2

Left: PKVA filters (size 41×41). Middle: New filters (size 11×11). Right:CD filters (size 9 × 9)

4. Contourlet approximation and directional vanishing moments 48

Page 50: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Experiments with Decay Across Directions using

Near Ideal Frequency Filters

slope = −3slope = −3

4. Contourlet approximation and directional vanishing moments 49

Page 51: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Nonlinear Approximation Rates

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������C2 regions C2 boundary

Under the (ideal) sufficient DVM condition

|〈f, ρj,k,n〉| ∼ 23j/4k−3

with number of coefficients Nj,k ∼ 2−j/2k. Then

‖f − f(contourlet)M ‖2 ∼ (logM)3M−2

Note: ‖f − f(Fourier)M ‖2 ∼ O(M−1/2) and ‖f − f

(wavelet)M ‖2 ∼ O(M−1)

4. Contourlet approximation and directional vanishing moments 50

Page 52: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Non-linear Approximation Experiments

Image size = 512 × 512. Keep M = 4096 coefficients.

Original image Wavelets: Contourlets:PSNR = 24.34 dB PSNR = 25.70 dB

4. Contourlet approximation and directional vanishing moments 51

Page 53: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Detailed Non-linear Approximations

Wavelets

M = 4 M = 16 M = 64 M = 256

Contourlets

M = 4 M = 16 M = 64 M = 256

4. Contourlet approximation and directional vanishing moments 52

Page 54: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Filter Bank Design Problem

ρ(l)j,k(t) =

m∈Z2

c(l)k [m]φj−1,m(t)

ρ(l)j,k(t) has an L-order DVM along direction (u1, u2)

⇔ C(l)k (z1, z2) = (1 − zu2

1 z−u12 )LR(z1, z2)

So far: Use good frequency selectivityto approximate DVMs.

Draw back: long filters...

������������������������������������������������������

������������������������������������������������������

������������������������������������������������

������������������������������������������������

ω1

ω2

Next: Design short filters that lead to many DVMs as possible.

4. Contourlet approximation and directional vanishing moments 53

Page 55: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Filters with DVMs = Directional Annihilating Filters

Input image and after being filtered by a directional annihilating filter

4. Contourlet approximation and directional vanishing moments 54

Page 56: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Two-Channel Filter Banks with DVMs

Filter bank with order-L horizontal or vertical DVM:

T0

Q

Q

Q

Q

T1

Filters have a factor (1 − z1)L or (1 − z2)

L

To get DVMs at other directions: Shearing or change of variables

H0(ω) H0(RT0 ω)

R0 R1

4. Contourlet approximation and directional vanishing moments 55

Page 57: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Design Example [CunhaD:04]

“Extended” 9-7 filters:

|H0(ejw)| |G0(e

jw)|

-2

0

2

-2

0

2

0

0.5

1

1.5

-2

0

2

-2

0

2

-2

0

2

0

0.5

1

-2

0

2

|H1(ejw)| |G1(e

jw)|

-2

0

2

-2

0

2

0

0.5

1

1.5

-2

0

2

-2

0

2

-2

0

2

0

0.5

1

-2

0

2

4. Contourlet approximation and directional vanishing moments 56

Page 58: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Directional Vanishing Moments Generated in Directional

Filter Banks

Different expanding rules lead to different set of directions with DVMs.

4. Contourlet approximation and directional vanishing moments 57

Page 59: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Gain by using Filters with DVMs

0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.160

2

4

6

8

10

12

Percentage of coefficients retained (%)

SN

R (

dB)

DVMPKVAWAVELET

Using PKVA filters Using DVM filters

4. Contourlet approximation and directional vanishing moments 58

Page 60: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Outline

1. Motivation

2. Discrete-domain construction using filter banks

3. Contourlets and directional multiresolution analysis

4. Contourlet approximation and directional vanishing moments

5. Applications

5. Applications 59

Page 61: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Contourlet Embedded Tree Structure

• Embedded tree data structure for contourlet coefficients:successively locate the position and direction of image contours.

• Contourlet tree approximation: significant contourlet coefficients areorganized in trees −→ low indexing cost for compression.

5. Applications 60

Page 62: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Contourlet-domain Hidden Markov Tree Models

[PoD:04]

Direction

1

2

3

4S

cale

Contourlet HMT models all inter-scale, inter-direction, and inter-locationindependencies.

5. Applications 61

Page 63: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Texture Retrieval Results: Brodatz Database

Average retrieval rateswavelet HMT contourlet HMT

90.87% 93.29%

Top: Wavelets do better (> 5%).Bottom: Contourlets do better(> 5%).

5. Applications 62

Page 64: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Denoising using Nonsubsampled Contourlet Transform

(NSCT) [Cunha]:

“Hat Zoom”

Comparison against SI-Wavelet (nonsubsampled wavelet transform)methods using Bayes shrink with adaptive soft thresholding

Noisy Lena SI-Wavelet NSCT DenPSNR 22.13db PSNR 31.82dB PSNR 32.14dB

5. Applications 63

Page 65: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Denoising Result: “Peppers”

Noisy Lena SI-Wavelet NSCT DenPSNR 22.14db PSNR 31.38dB PSNR 31.53dB

5. Applications 64

Page 66: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Image Enhancement [Zhou]

Image Enhancement Algorithm

• Nonsubsampled contourlet decomposition

• Nonlinear mapping on the coefficients

– Zero-out noises– Keep strong edges or features– Enhance weak edges or features

• Nonsubsampled contourlet reconstruction

5. Applications 65

Page 67: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Image Enhancement Result: Barbara

(a)

(b) (c)

(a) Original image. (b) Enhanced by DWT. (c) Enhanced by NSCT.

5. Applications 66

Page 68: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Image Enhancement Result: OCT Image

(a)

(b) (c)

(a) Original OCT image. (b) Enhanced by DWT. (c) Enhanced by NSCT.

67

Page 69: Discrete Geometrical Image Processing using the Contourlet ...helper.ipam.ucla.edu/publications/mgaws1/mgaws1_5055.pdfDiscrete Geometrical Image Processing using the Contourlet Transform

Summary

• Image processing relies on prior information about images.

– Geometrical structure is the key!– New desideratum beyond wavelets: directionality

• New two-dimensional discrete framework and algorithms:

– Flexible directional and multiresolution image representation.

– Effective for images with smooth contours ⇒ contourlets.– Front-end for hierarchical geometrical image representation.

• Dream: Another fruitful interaction between harmonic analysis, vision,and signal processing.

• Software and papers: www.ifp.uiuc.edu/∼minhdo

68