Sunteți pe pagina 1din 26

Introduction to the

Curvelet Transform
By

Zvi Devir and Yanai Shpinner

Introduction
Curvelet Transform is a new multi-scale
representation most suitable for objects with
curves.
Developed by Cands and Donoho (1999).
Still not fully matured.
Seems promising, however.

Approximation Rates
Having an object in the domain [0,1][0,1],
how fast can we approximate it using certain
system of functions?
Using the Fourier Transform:
~
f fm

2
2

O m

12

Using the Wavelet Transform:


~
f fm

2
2

O m1

Using the Curvelet Transform:


~
f fm

2
2

O m2 log 3 m O m2

Point and Curve Discontinuities


A discontinuity point affects all the Fourier
coefficients in the domain.

Hence the FT doesnt handle points discontinuities well.

Using wavelets, it affects only a limited number of


coefficients.

Hence the WT handles point discontinuities well.

Discontinuities across a simple curve affect all the


wavelets coefficients on the curve.

Hence the WT doesnt handle curves discontinuities well.

Curvelets are designed to handle curves using only a


small number of coefficients.

Hence the CvT handles curve discontinuities well.

Curvelet Transform
The Curvelet Transform includes four stages:
Sub-band decomposition
Smooth partitioning
Renormalization
Ridgelet analysis

Sub-band Decomposition
f P0 f , 1 f , 2 f ,
Dividing the image into resolution layers.
Each layer contains details of different
frequencies:

P0 Low-pass filter.
1, 2, Band-pass (high-pass) filters.

The original image can be reconstructed from


the sub-bands:
f P0 P0 f s s f
s
Energy preservation
2
2
2
f 2 P0 f 2 s f 2
s

Sub-band
Decomposition

f P0 f , 1 f , 2 f ,

P0 f

1 f

2 f

Sub-band Decomposition
Low-pass filter 0 deals with low frequencies
near ||1.
Band-pass filters 2s deals with frequencies
near domain ||[22s, 22s+2].

Recursive construction 2s(x) = 24s (22sx).

The sub-band decomposition is simply


applying a convolution operator:
P0 f 0 f

s f 2 s f

Sub-band Decomposition
The sub-band decomposition can be
approximated using the well known wavelet
transform:

Using wavelet transform, f is decomposed into S0,


D1, D2, D3, etc.
P0 f is partially constructed from S0 and D1,
and may include also D2 and D3.
s f is constructed from D2s and D2s+1.

Sub-band Decomposition
P0 f is smooth (low-pass), and can be
efficiently represented using wavelet base.
The discontinuity curves effect the high-pass
layers s f. Can they be represented
efficiently?

Looking at a small fragment of the curve, it appears


as a relatively straight ridge.
We will dissect the layer into small partitions.

Smooth Partitioning

Smooth Partitioning
A grid of dyadic squares is defined:

Q s ,k1 ,k2

k1

k1 1
2

k2

k 2 1
2

Qs all the dyadic squares of the grid.


Let w be a smooth windowing function with
main support of size 2-s2-s.
For each square, wQ is a displacement of w
localized near Q.
Multiplying s f with wQ (QQs) produces a
smooth dissection of the function into
squares.
h w f
Q

Smooth Partitioning
The windowing function w is a nonnegative
smooth function.
Partition of the energy:

The energy of certain pixel (x1,x2) is divided


between all sampling windows of the grid.
2
w
x1 k1, x2 k2 1

Example:

k1 , k 2

An indicator of the dyadic square


(but not smooth!!).
Smooth window function with
an extended compact support:

Expands the number of coefficients.

Smooth Partitioning
Partition of the energy:

2
w
x1 k1, x2 k2 1

k1 , k 2

2
w
Q 1

QQ s

Reconstruction:

wQ hQ

QQ s

2
w
Q h h

QQ s

Parserval relation:

QQ s

Q 2

QQ s

2
Q

h
2

QQ s

2
Q

h h h 2
2

Renormalization
Renormalization is centering each dyadic
square to the unit square [0,1][0,1].
For each Q, the operator TQ is defined as:

T f x , x 2 f 2 x k , 2 x
s

Each square is renormalized:


1

g Q TQ hQ

k2

Before the Ridgelet Transform


The s f layer contains objects with
frequencies near domain ||[22s, 22s+2].

We expect to find ridges with width 2-2s.

Windowing creates ridges of width 2-2s and


length 2-s.
The renormalized ridges has an aspect ratio
of width length2.
We would like to encode those ridges
efficiently

Using the Ridgelet Transform.

The Ridgelet Transform


Ridgelet are an orthonormal set {} for L2(2).
Developed by Cands and Donoho (1998).
radius 2s
-s
22-2s

21-s
Ridge in Square

2s
Its Fourier Transform

2s
divisions
Ridgelet Tiling

Fourier Transform
within Tiling

Divides the frequency domain to dyadic coronae


||[2s, 2s+1].
In the angular direction, samples the s-th corona at
least 2s times.
In the radial direction, samples using local wavelets.

The Ridgelet Transform


The ridgelet element has a formula in the
frequency domain:

j ,k i,l j ,k i,l
where,
i,l are periodic wavelets for [-, ).
i is the angular scale and l[0, 2i-11] is the
angular location.
j,k are Meyer wavelets for .
j is the ridgelet scale and k is the ridgelet location.
1
2

12

Ridgelet Analysis
Each normalized square is analyzed in the
ridgelet system:
Q, g Q ,

The ridge fragment has an aspect ratio


of 2-2s2-s.
After the renormalization, it has localized
frequency in band ||[2s, 2s+1].
A ridge fragment needs only a very few ridgelet
coefficients to represent it.

Digital Ridgelet Transform (DRT)


Unfortunately, the (current) DRT is not truly
orthonormal.
An array of nn elements cannot be fully
reconstructed from nn coefficients.
The DRT uses n2n coefficients for almost
perfect reconstruction
Still a lot of research need to be done

Curvelet Transform
The four stages of the Curvelet Transform were:
Sub-band decomposition
f P0 f , 1 f , 2 f ,

Smooth partitioning

hQ wQ s f

Renormalization

g Q TQ hQ

Ridgelet analysis

Q, g Q ,

Image Reconstruction
The Inverse of the Curvelet Transform:
Ridgelet Synthesis
g Q Q,

Renormalization

hQ TQ g Q

Smooth Integration
s f

QQ s

hQ

Sub-band Recomposition

f P0 P0 f s s f
s

Example:
Roy Lichtenstein: In The Car 1963

Original Image
(256256)

Approximation with only


64 wavelets and 256 curvelets
(about 0.5% of the coefficients)

Example:

Original

Adding Gaussian Noise

Noise Reduction
using Curvelet
transform.

WT + Thresholding

WT + k- Thresholding

Curvelet Transform

Example:

Original

Adding Gaussian Noise

Noise Reduction
using Curvelet
transform.

WT + Thresholding

WT + k- Thresholding

Curvelet Transform

References
[1] D.L. Donoho and M.R. Duncan. Digital Curvelet Transform:
Strategy, Implementation and Experiments; Technical Report,
Stanford University 1999
[2] E.J. Cands and D.L. Donoho. Curvelets A Surprisingly
Effective Non-adaptive Representation for Objects with Edges;
Curve and Surface Fitting: Saint Malo 1999
[3] Lenna examples from
http://www-stat.stanford.edu/~jstarck/comp.html

S-ar putea să vă placă și