# How to construct your own directional wavelet frame ?

```How to construct your own directional
wavelet frame ?
Gerlind Plonka
Institute for Numerical and Applied Mathematics
University of Göttingen
in collaboration with Jianwei Ma
Dolomites Research Week on Approximation
September, 2014
How to construct your own directional wavelet frame ?
Outline
•
Introduction: well-known wavelet constructions
•
Wanted properties of a directional wavelet system
•
What can be learned from the one-dimensional case ?
•
How to construct curvelets ?
•
What are α-molecules ?
•
References
1
Introduction
Many wavelet (frame) constructions for image analysis
1) Tensor product wavelets
2) steerable wavelets [Freeman and Adelson ’91]
3) curvelets [Candes, Donoho ’03]
4) shearlets [Labate, Lim, Kutyniok, Weiss ’05]
5) contourlets [Do, Vetterli ’05]
6) Gabor wavelets [Lee ’08]
7) α-molecules [Grohs, Keiper, Kutyniok, Schäfer ’14]
2
Wanted properties of a new wavelet system
What is the purpose of the wavelet system?
We want a representation system (ψλ )λ∈Λ for images f ∈
f=
X
2
2
L (R )
cλ ψ λ
λ∈Λ
that allows a “sparse representation” of the image f .
Best N -term approximation fN ≈ f
fN
X
= argmin f
−
c
ψ
λ
λ
λ∈ΛN
where ΛN ⊂ Λ, |ΛN | = N.
How to model the image data?
3
How
totomodel
data?
How
model image
the image
data ?
2 2
β
E (R ) [Donoho
Image model:
functions
’01 (β2001
= 2)]( = 2))
Image
model:Cartoon-like
Cartoon-like
functions E (R ) (Donoho;
2
β
E (R ),
class
functions
β ∈ (1,by
2],
2 ), The
TheGrohs
class et
E al(R’14:
2 (1,
2],ofofcartoon-like
cartoon-like
functions is defined
is defined by
n
o
2
2 2 2
2
β
2
(R ))== f f∈2LL(R(R) :) f f= =
EE (R
f0 f+
f1 f&middot;1χ&middot;B B, ,
0+
β -curve, f , f ∈ C β ([0, 1])2 ).
where B ⊂ [0, 1]2 , ∂B
a
closed
C
0
1
0
2
where
B ⇢ [0, 1] , @B a closed C -curve, f0 , f1 2 C0 ([0, 1]2 ).
[Reprinted figure with permission of G. Kutyniok]
4
Wanted properties of a new wavelet system
•
•
•
Good space-frequency localization
“Simple structure” of the wavelet system {ψλ }λ∈Λ
(multiscale approach)
Orthonormal basis or Parseval frame of L2 (R2 ), i.e.,
X
hf, ψλ iψλ
f=
λ∈Λ
and
X
λ∈Λ
•
|hf, ψλ i|2 = kf k2L2 (R2 )
for all f ∈ L2 (R2 )
(Parseval equation)
Good approximation properties: If f is in a certain smoothness
class, then f can be well approximated by a sparse wavelet frame
expansion, such that e.g.
kf − fN k22 ≤ C N −β
for (piecewise) Hölder smooth functions of order β.
5
Sparse approximation benchmark
Theorem (Donoho ’01)
Allowing only polynomial depth search in a dictionary, the approxi2
β
mation rate of the best N -term approximation for E (R ), β ∈ (1, 2],
cannot exceed
2
−β
kf − fN k2 ∼ N .
Question: Can this bound be reached?
•
•
•
Classical wavelet systems achieve kf − fN k22 ∼ N −1 .
Specifically designed directional representation systems can reach
this bound up to log-factors.
Adaptive wavelet frames can reach this bound.
6
What can be learned from R1 ?
•
“Simple structure” of the wavelet system:
use translations and dilations of only on “mother-wavelet” ψ.
ψj,k = 2j/2 ψ(2j &middot; −k),
j, k ∈ Z.
•
Good space-frequency localization:
ψ should have compact support or fast decay outside in space and
frequency domain.
•
How to ensure that {ψj,k : j, k ∈ Z} is an orthonormal basis
or a (Parseval) frame in L2 (R) ?
Try to achieve that
∞
X
j=−∞
P∞
|ψ̂(2j ω)|2 = 1
ω ∈ R a.e.
(or 0 &lt; A ≤ j=−∞ |ψ̂(2j ω)|2 ≤ B &lt; ∞)
and has a good frequency localization.
7
Example: Meyer wavelets
Choose ψ̂ with supp ψ̂ ⊂ [−2, −1/2] ∪ [1/2, 2] Hence supp ψ̂(2−j ω) has
support [−2j+1 , −2j−1 , ∪[2j−1 , 2j+1 ].
Choose e.g. for ω &gt; 0

π
cos[

2 ν(5 − 6ω)]


1
ψ̂(ω) =
π

cos[

2 ν(3ω − 4)]

0
2
3
5
6
4
3
≤ω≤
≤ω≤
≤ω≤
else
5
6
4
3
5
3
where ν is smooth and ν(x) = 0 for x ≤ 0, ν(x) = 1 for x ≥ 1 and
ν(x) + ν(1 − x) = 1 for x ∈ [0, 1].
1
Choose e.g. ν(x) = x &middot; χ[0,1] (x)
or ν(x) = (3x2 − 2x3 ) &middot; χ[0,1] etc.
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
8
ψ e = φe1 ⊗ φe2 .
Corresponding tiling of the frequency domain
se functions serve as the generators for the wavelet system defined below.
he frequency plane is illustrated in Figure 1.
one-dimensional case:
finition 2.1. Let φ0 , φ1 ∈ L2 (R) and ψ e ∈ L2 (R2 ), e ∈ E, be defined
as a
#
0
2
4
8
16
0 be fixed sampling parameters. The associated wavelet system W φ0 , φ1 ; σ
&amp; %
# 0 1
\$ % (0,0)
W φ , φ ; σ, τ = ψ
(&middot; − τ k) : k ∈ Z2 ∪ σ j ψ e (σ j &middot; −τ k) : e ∈ E\{(0
two-dimensional case: tensor-product wavelets
three types of wavelet functions
φ̂(ω1 )ψ̂(ω2 )
ψ̂(ω1 )φ̂(ω2 )
ψ̂(ω1 )ψ̂(ω2 )
9
How to construct directional wavelet frames ?
Idea. use translations, dilations and rotations of one “basic function”
ψ.
Curvelet construction.
1. Consider polar coordinates in frequency domain
2. Construct curvelet element being locally supported near a wedge.
10
Curvelet constructionq
Let ω = (ω1 , ω2 )T , r := ω12 + ω22 and σ := arctan(ω1 /ω2 ).
Ansatz for the dilated basic curvelet:
ψ̂j,0,0 (r, σ) = 2−3j/4 W (2−j r) VNj (σ),
r ≥ 0, σ ∈ [0, 2π), j ∈ N0
with suitable window functions W and VNj , where Nj = 4 &middot; 2dj/2e
indicates the number of wedges in the circular ring at scale 2−j .
We need:
a) W (r) and VNj (σ) = Vper (2−dj/2e σ) should have compact support or
exponential decay.
b) Partition of frequency domain:
∞
X
j=−∞
Nj −1
X
l=0
VN2j (σ
|W (2j r)|2 = 1
2πl
−
)=1
Nj
for all σ ∈ [0, 2π).
11
Indeed we then have
Nj −1
X
l=0
Nj −1
X
2πl
2πl
3j/4
2
−j
2
2
|2
ψ̂j,0,0 (r, σ −
)| = |W (2 r)|
VNj (ω −
)
Nj
Nj
l=0
= |W (2−j r)|2
Examples for Window functions.

1

V (σ) = cos( π2 ν(3|σ| − 1))

0

π
cos[

2 ν(5 − 6r)]


1
W (r) =
π

cos[
ν(3r
−
4)]

2

0
1
3
2
3
5
6
4
3
|σ| ≤ 31
≤ |σ| ≤ 23 ,
else
≤r≤
≤r≤
≤r≤
else
5
6
4
3
5
3
with ν as before.
12
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
-2
-1.5
-1
-0.5
0
0.5
1
1.5
0
0
2
window V
0.5
1
1.5
2
window W
2
1.5
1
1
0.8
0.5
0.6
0
0.4
-0.5
0.2
-1
0
2
1
2
1.5
0
-1.5
1
-1
0.5
-2
0
-2
0
0.5
1
1.5
2
basic curvelet ψ̂0,0,0 in
support of ψ̂0,0,0
frequency domain
The window VN is obtained by 2π-periodization of V (N σ/2π).
13
With the windows taken above, we have only a small overlap of supports.
Maximal supports of ψ̂2,k,0 and ψ̂2,k,5 (dark grey); of ψ̂3,k,6 and ψ̂3,k,13
(light grey); and of ψ̂4,k,0 and ψ̂4,k,11 (grey). The translation k ∈ Z 2
doe not influence the support of the curve let elements.
ξ2
32
16
8
−16
−4
32 ξ1
14
Can we do something else ?
•
The window VN is a low-pass-filter. Any one-dimensional scaling
function φ (being suitable localized in time and frequency) can
serve as the window V and leads to VNj by 2π-periodization of
φ(Nj σ/2π).
•
The window W is a high-pass filter. Any one-dimensional wavelet
function ψ (being suitable localized in time and frequency) can serve
as the window W .
15
How many wedges should be taken in one circular ring ?
•
•
•
•
For curvelet construction, choose Nj = 4 &middot; 2dj/2e wedges in the
circular ring with 2j−1/2 ≤ r ≤ 2j+1/2 (scale 2−j ).
If the number of wedges in a fixed way leads to steerable wavelets.
If the number of wedges increases like 1/scale (like 2j ), we obtain
ridgelets.
p
If the number of wedges increases like 1/scale, we obtain curvelets.
16
The complete set of curvelet elements
We employ rotations and translations of the dilated basic curvelet
ψj,0,0 . We choose
a) Nj = 4 &middot; 2dj/2e equidistant rotation angles at level j
θj,l
2πl
,
:=
Nj
l = 0, . . . , Nj − 1.
b) the positions
−1 k1
Rθj,l ( j ,
2
k2 T
bk =
:=
)
2j/2
with k1 , k2 ∈ Z, Rθ rotation matrix with angle θ. Then the family of
curvelet functions is given by
j,l
bj,l
k1 ,k2
j
))
=
ψ
(A
ψj,k,l (x) := ψj,0,0 (Rθj,l (x − bj,l
0,0,0
k
2,2 Rθj,l x − k)
with
j
A2,2
=
2j
0
0
2dj/2e
.
17
General
directional representation systems (Grohs et al. ’14)
↵-Scaling
✓
◆
s
0
• α-scaling matrix: Aα,s =
s α0 ,
s
∈
R
,
α
∈
[0,
1]
+
↵-Scaling Matrix: A↵,s = 0 s ↵ , s 2 R+ , ↵ 2 [0, 1]
0 s
•
α =↵1 = 1:
•
α =↵21 = 1 :
2
•
α =↵0 = 0:
(Foo and Bar)
↵-Molecules
GAMM 2014
5 / 20
18
Directional Representation Systems
Basic ingredients. Take a “mother wavelet” g ∈ L2 (R2 ) and consider
•
Translation
p ∈ Λ ⊂ R2
g → g(&middot; − p),
•
Scaling
g → g(Aα,s &middot;),
•
Orientation
Rotation: g → g(Rθ &middot;),
Shears:
We obtain
g → g(Sa &middot;),
Aα,s =
s 0
0 sα
,
s ∈ R+
cos θ − sin θ
Rθ =
, θ ∈ [0, 2π).
sin θ cos θ
1 a
1 0
Sa =
or Sa =
a ∈ R.
0 1
a 1
ψs,θ,p (x) = s(1+α)/2 g(Aα,s Rθ (x − p)).
19
Directional Representation Systems
•
Ridgelets (Candes, Donoho ’99): Rotations, s = 2, α = 0
•
Curvelets (Candes, Donoho ’03): Rotations, s = 2 α = 1/2
•
Shearlets (Kutyniok, Labate ’06): Shearings, s = 2, α = 1/2
•
α-Shearlets (Kutyniok et al. ’12): Shearings s &gt; 0, α ∈ [0, 1]
•
α-Curvelets (Grohs et al. ’14): Rotations s &gt; 0, α ∈ [0, 1]
Common framework → α-Molecules (Grohs et al. ’14)
20
Our publications
• Jianwei Ma, Gerlind Plonka.
The curvelet transform: A review of recent applications.
IEEE Signal Processing Magazine 27(2) (March 2010), 118-133.
• Jianwei Ma, Gerlind Plonka.
Computing with Curvelets: From Image Processing to Turbulent
Flows.
Computing in Science and Engineering 11(2) (2009), 72-80.
21
\thankyou
22
```