signal processing course : orthogonal bases
DESCRIPTION
Slides for a course on signal and image processing.TRANSCRIPT
Signal and Image Processing
with Orthogonal Decompositions
Gabriel Peyréwww.numerical-tours.com
Signals, Images and MoreContinuous signal: f 2 L
2([0, 1]).
Continuous image: f 2 L
2([0, 1]2).
Signals, Images and MoreContinuous signal: f 2 L
2([0, 1]).
Continuous image: f 2 L
2([0, 1]2).
General setting: f : [0, 1]d ! Rs
Videos: d = 3, s = 1.
Signals, Images and MoreContinuous signal: f 2 L
2([0, 1]).
Continuous image: f 2 L
2([0, 1]2).
General setting: f : [0, 1]d ! Rs
Videos: d = 3, s = 1.
Color image: d = 2, s = 3.
Signals, Images and MoreContinuous signal: f 2 L
2([0, 1]).
Continuous image: f 2 L
2([0, 1]2).
General setting: f : [0, 1]d ! Rs
Videos: d = 3, s = 1.
Color image: d = 2, s = 3.
Multi-spectral: d = 2, s � 3.
Signals, Images and MoreContinuous signal: f 2 L
2([0, 1]).
Overview
•Orthogonal Representations
•Linear and Non-linear Approximations
•Compression and Denoising
Orthogonal basis {�m}m of L2([0, 1]d)
Continuous signal/image f � L2([0, 1]d).
Orthogonal Decompositions
Orthogonal basis {�m}m of L2([0, 1]d)
f =�
m
�f, �m��m
||f || =�
|f(x)|2dx =�
m
|�f, �m⇥|2
Continuous signal/image f � L2([0, 1]d).
Orthogonal Decompositions
Orthogonal basis {�m}m of L2([0, 1]d)
f =�
m
�f, �m��m
||f || =�
|f(x)|2dx =�
m
|�f, �m⇥|2
Continuous signal/image f � L2([0, 1]d).
Orthogonal Decompositions
�m
1-D Wavelet Basis
Wavelets:�j,n(x) =
12j/2
�
�x� 2jn
2j
�
� Position n, scale 2j , m = (n, j).
1-D Wavelet Basis
Wavelets:�j,n(x) =
12j/2
�
�x� 2jn
2j
�
� Position n, scale 2j , m = (n, j).
�m1,m2
Basis {�m1,m2(x1, x2)}m1,m2 of L2([0, 1]2)
�m1,m2(x1, x2) = �m1(x1)�m2(x2)
tensorproduct
2-D Fourier Basis
Basis {�m(x)}m of L2([0, 1])m1
m2
�m1,m2
Basis {�m1,m2(x1, x2)}m1,m2 of L2([0, 1]2)
�m1,m2(x1, x2) = �m1(x1)�m2(x2)
tensorproduct
f(x) �f, �m1,m2�
Fourier
transform
2-D Fourier Basis
Basis {�m(x)}m of L2([0, 1])m1
m2
x m
3 elementary wavelets {�H ,�V ,�D}.
Orthogonal basis of L2([0, 1]2):�
�kj,n(x) = 2�j�(2�jx� n)
�k=H,V,D
j<0,2jn�[0,1]2
2-D Wavelet Basis
�V (x)�H(x) �D(x)
3 elementary wavelets {�H ,�V ,�D}.
Orthogonal basis of L2([0, 1]2):�
�kj,n(x) = 2�j�(2�jx� n)
�k=H,V,D
j<0,2jn�[0,1]2
2-D Wavelet Basis
�V (x)�H(x) �D(x)
wavelet
�f, �kj,n�
Example of Wavelet Decomposition
f(x)
transform
x
(j, n, k)
Discrete Computations
Discrete orthogonal basis {�m} of CN .
f =�
m
�f, �m��m
�� Fast Fourier Transform (FFT), O(N log(N)) operations.
Discrete Computations
Discrete orthogonal basis {�m} of CN .
�m[n] =1�N
e2i�N nm
f =�
m
�f, �m��m
�� Fast Fourier Transform (FFT), O(N log(N)) operations.
�� Fast Wavelet Transform, O(N) operations.
Discrete Wavelet basis: no closed-form expression.
Discrete Computations
Discrete orthogonal basis {�m} of CN .
�m[n] =1�N
e2i�N nm
f =�
m
�f, �m��m
Overview
•Orthogonal Representations
•Linear and Non-linear Approximations
•Compression and Denoising
Linear Approximation
Linear Approximation
Linear Approximation
Non-Linear Approximation
Coe�cients
Non-Linear Approximation
Coe�cients
Non-Linear Approximation
Best basis �� Fastest error decay ||f � fM ||2
log(||f � fM ||)
log(M)
Efficiency of Transforms
Fourier DCT
Local DCT Wavelets
Efficient Approximation
Efficient Approximation
Efficient Approximation
Efficient Approximation
Efficient Approximation
Efficient Approximation
Efficient Approximation
Overview
•Orthogonal Representations
•Linear and Non-linear Approximations
•Compression and Denoising
JPEG-2000 vs. JPEG, 0.2bit/pixel
Compression by Transform-coding
Image f Zoom on f
fforward
a[m] = ⇥f, �m⇤ � Rtransform
Compression by Transform-coding
Image f Zoom on f
fforward
a[m] = ⇥f, �m⇤ � Rtransform
Quantization: q[m] = sign(a[m])�
|a[m]|T
⇥� Z
a[m]
�T T 2T�2T a[m]
Quantized q[m]
bin Tq[m] � Z
Compression by Transform-coding
Image f Zoom on f
fforward
a[m] = ⇥f, �m⇤ � R codingtransform
Entropic coding: use statistical redundancy (many 0’s).
Quantization: q[m] = sign(a[m])�
|a[m]|T
⇥� Z
a[m]
�T T 2T�2T a[m]
Quantized q[m]
bin Tq[m] � Z
Compression by Transform-coding
Image f Zoom on f
fforward
a[m] = ⇥f, �m⇤ � R coding
decoding
q[m] � Z
transform
Entropic coding: use statistical redundancy (many 0’s).
Quantization: q[m] = sign(a[m])�
|a[m]|T
⇥� Z
a[m]
�T T 2T�2T a[m]
Quantized q[m]
bin Tq[m] � Z
Compression by Transform-coding
Image f Zoom on f
fforward
Dequantization: a[m] = sign(q[m])�
|q[m] +12
⇥T
a[m] = ⇥f, �m⇤ � R coding
decoding
q[m] � Za[m] dequantization
transform
Entropic coding: use statistical redundancy (many 0’s).
Quantization: q[m] = sign(a[m])�
|a[m]|T
⇥� Z
a[m]
�T T 2T�2T a[m]
Quantized q[m]
bin Tq[m] � Z
Compression by Transform-coding
Image f Zoom on f fR, R =0.2 bit/pixel
fforward
Dequantization: a[m] = sign(q[m])�
|q[m] +12
⇥T
a[m] = ⇥f, �m⇤ � R coding
decoding
q[m] � Za[m] dequantizationtransform
backwardfR =
�
m�IT
a[m]�m
transform
Entropic coding: use statistical redundancy (many 0’s).
Quantization: q[m] = sign(a[m])�
|a[m]|T
⇥� Z
a[m]
�T T 2T�2T a[m]
Quantized q[m]
bin Tq[m] � Z
Compression by Transform-coding
Image f Zoom on f fR, R =0.2 bit/pixel
fforward
Dequantization: a[m] = sign(q[m])�
|q[m] +12
⇥T
a[m] = ⇥f, �m⇤ � R coding
decoding
q[m] � Za[m] dequantizationtransform
backwardfR =
�
m�IT
a[m]�m
transform
Entropic coding: use statistical redundancy (many 0’s).
Quantization: q[m] = sign(a[m])�
|a[m]|T
⇥� Z
a[m]
�T T 2T�2T a[m]
Quantized q[m]
bin Tq[m] � Z
||f � fM ||2 = O(M��) =⇥ ||f � fR||2 = O(log�(R)R��)Theorem:
Noise in Images
Denoising
Denoising
thresh.f =
N�1�
m=0
�f, �m⇥�m f =�
|�f, �m⇥|>T
�f, �m⇥�m
Denoising
thresh.f =
N�1�
m=0
�f, �m⇥�m f =�
|�f, �m⇥|>T
�f, �m⇥�m
In practice:T � 3�for T =
�2 log(N)�
Theorem: if ||f0 � f0,M ||2 = O(M��),
E(||f � f0||2) = O(�2�
�+1 )
Inverse Problems
Inverse Problems
Inverse Problems
Inverse Problems
Inverse Problems
Restoration with Sparsity
Restoration with Sparsity
Restoration with Sparsity
Conclusion
Conclusion
Conclusion