Top Banner
Sparse Regularization Of Inverse Problems Gabriel Peyré www.numerical-tours.com
70

Signal Processing Course : Sparse Regularization of Inverse Problems

Jun 21, 2015

Download

Documents

Gabriel Peyré

Slides for a course on signal and image processing.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Signal Processing Course : Sparse Regularization of Inverse Problems

Sparse Regularization

Of Inverse Problems

Gabriel Peyré

www.numerical-tours.com

Page 2: Signal Processing Course : Sparse Regularization of Inverse Problems

Overview

• Inverse Problems Regularization

• Sparse Synthesis Regularization

• Examples: Sparse Wavelet Regularizations

• Iterative Soft Thresholding

• Sparse Seismic Deconvolution

Page 3: Signal Processing Course : Sparse Regularization of Inverse Problems

Forward model:

Observations Operator Noise(Unknown)Input� : RQ � RP

Inverse Problems

y = K f0 + w � RP

Page 4: Signal Processing Course : Sparse Regularization of Inverse Problems

Forward model:

Observations Operator Noise(Unknown)Input� : RQ � RP

Denoising: K = IdQ, P = Q.

Inverse Problems

y = K f0 + w � RP

Page 5: Signal Processing Course : Sparse Regularization of Inverse Problems

Forward model:

Observations Operator Noise(Unknown)Input

(Kf)(x) =�

0 if x � �,f(x) if x /� �.

K

� : RQ � RP

Denoising: K = IdQ, P = Q.

Inpainting: set � of missing pixels, P = Q� |�|.

Inverse Problems

y = K f0 + w � RP

Page 6: Signal Processing Course : Sparse Regularization of Inverse Problems

Forward model:

Observations Operator Noise(Unknown)Input

(Kf)(x) =�

0 if x � �,f(x) if x /� �.

K

� : RQ � RP

Denoising: K = IdQ, P = Q.

Inpainting: set � of missing pixels, P = Q� |�|.

Super-resolution: Kf = (f � k) �� , P = Q/� .

Inverse Problems

K

y = K f0 + w � RP

Page 7: Signal Processing Course : Sparse Regularization of Inverse Problems

Kf = (p�k)1�k�K

Inverse Problem in Medical Imaging

Page 8: Signal Processing Course : Sparse Regularization of Inverse Problems

Magnetic resonance imaging (MRI):

Kf = (p�k)1�k�K

Kf = (f(�))���

Inverse Problem in Medical Imaging

f

Page 9: Signal Processing Course : Sparse Regularization of Inverse Problems

Magnetic resonance imaging (MRI):

Other examples: MEG, EEG, . . .

Kf = (p�k)1�k�K

Kf = (f(�))���

Inverse Problem in Medical Imaging

f

Page 10: Signal Processing Course : Sparse Regularization of Inverse Problems

Noisy measurements: y = Kf0 + w.

Prior model: J : RQ � R assigns a score to images.

Inverse Problem Regularization

Page 11: Signal Processing Course : Sparse Regularization of Inverse Problems

Noisy measurements: y = Kf0 + w.

f� � argminf�RQ

12||y �Kf ||2 + � J(f)

Prior model: J : RQ � R assigns a score to images.

Inverse Problem Regularization

Data fidelity Regularity

Page 12: Signal Processing Course : Sparse Regularization of Inverse Problems

Noisy measurements: y = Kf0 + w.

Choice of �: tradeo�

||w||Regularity of f0

J(f0)Noise level

f� � argminf�RQ

12||y �Kf ||2 + � J(f)

Prior model: J : RQ � R assigns a score to images.

Inverse Problem Regularization

Data fidelity Regularity

Page 13: Signal Processing Course : Sparse Regularization of Inverse Problems

Noisy measurements: y = Kf0 + w.

No noise: �� 0+, minimize

Choice of �: tradeo�

||w||Regularity of f0

J(f0)Noise level

f� � argminf�RQ

12||y �Kf ||2 + � J(f)

Prior model: J : RQ � R assigns a score to images.

f� � argminf�RQ,Kf=y

J(f)

Inverse Problem Regularization

Data fidelity Regularity

Page 14: Signal Processing Course : Sparse Regularization of Inverse Problems

J(f) =�

||�f(x)||2dx

Smooth and Cartoon Priors

�|�f |2

Page 15: Signal Processing Course : Sparse Regularization of Inverse Problems

J(f) =�

||�f(x)||2dx

J(f) =�

||�f(x)||dx

J(f) =�

Rlength(Ct)dt

Smooth and Cartoon Priors

�|�f |2 �

|�f |

Page 16: Signal Processing Course : Sparse Regularization of Inverse Problems

Inpainting Example

Input y = Kf0 + w Sobolev Total variation

Page 17: Signal Processing Course : Sparse Regularization of Inverse Problems

Overview

• Inverse Problems Regularization

• Sparse Synthesis Regularization

• Examples: Sparse Wavelet Regularizations

• Iterative Soft Thresholding

• Sparse Seismic Deconvolution

Page 18: Signal Processing Course : Sparse Regularization of Inverse Problems

Q

N

Dictionary � = (�m)m � RQ�N , N � Q.

Redundant Dictionaries

Page 19: Signal Processing Course : Sparse Regularization of Inverse Problems

�m = ei�·, m�

frequencyFourier:

Q

N

Dictionary � = (�m)m � RQ�N , N � Q.

Redundant Dictionaries

Page 20: Signal Processing Course : Sparse Regularization of Inverse Problems

Wavelets:�m = �(2�jR��x� n)

m = (j, �, n)

scale

orientation

position

�m = ei�·, m�

frequencyFourier:

Q

N

Dictionary � = (�m)m � RQ�N , N � Q.

Redundant Dictionaries

� = 2� = 1

Page 21: Signal Processing Course : Sparse Regularization of Inverse Problems

Wavelets:�m = �(2�jR��x� n)

m = (j, �, n)

scale

orientation

position

�m = ei�·, m�

frequencyFourier:

DCT, Curvelets, bandlets, . . .

Q

N

Dictionary � = (�m)m � RQ�N , N � Q.

Redundant Dictionaries

� = 2� = 1

Page 22: Signal Processing Course : Sparse Regularization of Inverse Problems

Synthesis: f =�

m xm�m = �x.

xf

Image f = �xCoe�cients x

Wavelets:�m = �(2�jR��x� n)

m = (j, �, n)

scale

orientation

position

�m = ei�·, m�

frequencyFourier:

DCT, Curvelets, bandlets, . . .

Q

N

Dictionary � = (�m)m � RQ�N , N � Q.

Redundant Dictionaries

� =�

� = 2� = 1

Page 23: Signal Processing Course : Sparse Regularization of Inverse Problems

Ideal sparsity: for most m, xm = 0.

J0(x) = # {m \ xm �= 0}

Sparse Priors

Image f0

Coe�cients x

Page 24: Signal Processing Course : Sparse Regularization of Inverse Problems

Ideal sparsity: for most m, xm = 0.

J0(x) = # {m \ xm �= 0}

Sparse approximation: f = �x whereargminx2RN

||f0 � x||2 + T

2J0(x)

Sparse Priors

Image f0

Coe�cients x

Page 25: Signal Processing Course : Sparse Regularization of Inverse Problems

Ideal sparsity: for most m, xm = 0.

J0(x) = # {m \ xm �= 0}

Sparse approximation: f = �x where

Orthogonal �: ��� = ��� = IdN

xm =�

�f0, �m� if |�f0, �m�| > T,0 otherwise.

��

ST

f = � � ST � ��(f0)

argminx2RN

||f0 � x||2 + T

2J0(x)

Sparse Priors

Image f0

Coe�cients x

Page 26: Signal Processing Course : Sparse Regularization of Inverse Problems

Ideal sparsity: for most m, xm = 0.

J0(x) = # {m \ xm �= 0}

Sparse approximation: f = �x where

Orthogonal �: ��� = ��� = IdN

xm =�

�f0, �m� if |�f0, �m�| > T,0 otherwise.

��

ST

Non-orthogonal �:�� NP-hard.

f = � � ST � ��(f0)

argminx2RN

||f0 � x||2 + T

2J0(x)

Sparse Priors

Image f0

Coe�cients x

Page 27: Signal Processing Course : Sparse Regularization of Inverse Problems

Image with 2 pixels:

q = 0

J0(x) = # {m \ xm �= 0}J0(x) = 0 �� null image.J0(x) = 1 �� sparse image.J0(x) = 2 �� non-sparse image.

x2

Convex Relaxation: L1 Prior

x1

Page 28: Signal Processing Course : Sparse Regularization of Inverse Problems

Image with 2 pixels:

q = 0 q = 1 q = 2q = 3/2q = 1/2

Jq(x) =�

m

|xm|q

J0(x) = # {m \ xm �= 0}J0(x) = 0 �� null image.J0(x) = 1 �� sparse image.J0(x) = 2 �� non-sparse image.

x2

Convex Relaxation: L1 Prior

�q priors: (convex for q � 1)

x1

Page 29: Signal Processing Course : Sparse Regularization of Inverse Problems

Image with 2 pixels:

q = 0 q = 1 q = 2q = 3/2q = 1/2

Jq(x) =�

m

|xm|q

J0(x) = # {m \ xm �= 0}J0(x) = 0 �� null image.J0(x) = 1 �� sparse image.J0(x) = 2 �� non-sparse image.

x2

J1(x) =�

m

|xm|

Convex Relaxation: L1 Prior

Sparse �1 prior:

�q priors: (convex for q � 1)

x1

Page 30: Signal Processing Course : Sparse Regularization of Inverse Problems

L1 Regularization

coe�cientsx0 � RN

Page 31: Signal Processing Course : Sparse Regularization of Inverse Problems

L1 Regularization

coe�cients image�

x0 � RN f0 = �x0 � RQ

Page 32: Signal Processing Course : Sparse Regularization of Inverse Problems

L1 Regularization

observations

w

coe�cients image� K

x0 � RN f0 = �x0 � RQ y = Kf0 + w � RP

Page 33: Signal Processing Course : Sparse Regularization of Inverse Problems

L1 Regularization

observations

� = K �⇥ ⇥ RP�N

w

coe�cients image� K

x0 � RN f0 = �x0 � RQ y = Kf0 + w � RP

Page 34: Signal Processing Course : Sparse Regularization of Inverse Problems

Fidelity Regularization

minx�RN

12

||y � �x||2 + �||x||1

L1 Regularization

Sparse recovery: f� = �x� where x� solves

observations

� = K �⇥ ⇥ RP�N

w

coe�cients image� K

x0 � RN f0 = �x0 � RQ y = Kf0 + w � RP

Page 35: Signal Processing Course : Sparse Regularization of Inverse Problems

x� � argmin�x=y

m

|xm|

x�

�x = y

Noiseless Sparse Regularization

Noiseless measurements: y = �x0

Page 36: Signal Processing Course : Sparse Regularization of Inverse Problems

x� � argmin�x=y

m

|xm|

x�

�x = y

x� � argmin�x=y

m

|xm|2

Noiseless Sparse Regularization

x�

�x = y

Noiseless measurements: y = �x0

Page 37: Signal Processing Course : Sparse Regularization of Inverse Problems

x� � argmin�x=y

m

|xm|

x�

�x = y

x� � argmin�x=y

m

|xm|2

Noiseless Sparse Regularization

Convex linear program.Interior points, cf. [Chen, Donoho, Saunders] “basis pursuit”.

Douglas-Rachford splitting, see [Combettes, Pesquet].

x�

�x = y

Noiseless measurements: y = �x0

Page 38: Signal Processing Course : Sparse Regularization of Inverse Problems

RegularizationData fidelity

y = �x0 + wNoisy measurements:

x� � argminx�RQ

12

||y � �x||2 + � ||x||1

Noisy Sparse Regularization

Page 39: Signal Processing Course : Sparse Regularization of Inverse Problems

�� �RegularizationData fidelityEquivalence

||�x =y|| �

y = �x0 + wNoisy measurements:

x� � argminx�RQ

12

||y � �x||2 + � ||x||1

x� � argmin||�x�y||��

||x||1

Noisy Sparse Regularization

x�

Page 40: Signal Processing Course : Sparse Regularization of Inverse Problems

Iterative soft thresholdingForward-backward splitting

Algorithms:

�� �RegularizationData fidelityEquivalence

||�x =y|| �

y = �x0 + wNoisy measurements:

x� � argminx�RQ

12

||y � �x||2 + � ||x||1

x� � argmin||�x�y||��

||x||1

Noisy Sparse Regularization

Nesterov multi-steps schemes.

see [Daubechies et al], [Pesquet et al], etc

��

x�

Page 41: Signal Processing Course : Sparse Regularization of Inverse Problems

Overview

• Inverse Problems Regularization

• Sparse Synthesis Regularization

• Examples: Sparse Wavelet Regularizations

• Iterative Soft Thresholding

• Sparse Seismic Deconvolution

Page 42: Signal Processing Course : Sparse Regularization of Inverse Problems

Image De-blurring

Original f0 y = h � f0 + w

Page 43: Signal Processing Course : Sparse Regularization of Inverse Problems

f� = argminf�RN

||f ⇥ h� y||2 + �||⇥f ||2

f�(⇥) =h(⇥)

|h(⇥)|2 + �|⇥|2y(⇥)

Sobolev regularization:

Image De-blurring

Original f0 y = h � f0 + w SobolevSNR=22.7dB

Page 44: Signal Processing Course : Sparse Regularization of Inverse Problems

f� = argminf�RN

||f ⇥ h� y||2 + �||⇥f ||2

f�(⇥) =h(⇥)

|h(⇥)|2 + �|⇥|2y(⇥)

Sobolev regularization:

� = translation invariant wavelets.

x� � argminx

12

||h � (�x)� y||2 + �||x||1f� = �x� where

Sparsity

Image De-blurring

Original f0 y = h � f0 + w

Sparsity regularization:

SNR=24.7dBSobolev

SNR=22.7dB

Page 45: Signal Processing Course : Sparse Regularization of Inverse Problems

SNR=23.7dB SNR=24.7dBL2 Sobolev Sparsity Invariant

Comparison of RegularizationsSN

R

SNR

SNR

� � ��opt �opt �opt

Sparsity regularizationSobolev regularizationL2 regularization

SNR=21.7dB SNR=22.7dB

Page 46: Signal Processing Course : Sparse Regularization of Inverse Problems

K

y = Kf0 + wMeasures:

Inpainting Problem

(Kf)(x) =�

0 if x � �,f(x) if x /� �.

Page 47: Signal Processing Course : Sparse Regularization of Inverse Problems

Image SeparationModel: f = f1 + f2 + w, (f1, f2) components, w noise.

Page 48: Signal Processing Course : Sparse Regularization of Inverse Problems

Image SeparationModel: f = f1 + f2 + w, (f1, f2) components, w noise.

Page 49: Signal Processing Course : Sparse Regularization of Inverse Problems

Union dictionary:

(x�1, x

�2) � argmin

x=(x1,x2)�RN

12

||f ��x||2 + �||x||1

� = [�1,�2] � RQ�(N1+N2)

Image Separation

Recovered component: f�i = �ix�

i .

Model: f = f1 + f2 + w, (f1, f2) components, w noise.

Page 50: Signal Processing Course : Sparse Regularization of Inverse Problems

Examples of Decompositions

Page 51: Signal Processing Course : Sparse Regularization of Inverse Problems

Cartoon+Texture Separation

Page 52: Signal Processing Course : Sparse Regularization of Inverse Problems

Overview

• Inverse Problems Regularization

• Sparse Synthesis Regularization

• Examples: Sparse Wavelet Regularizations

• Iterative Soft Thresholding

• Sparse Seismic Deconvolution

Page 53: Signal Processing Course : Sparse Regularization of Inverse Problems

Orthogonal-basis: ⇤ = IdN , x = ⇤f .

Regularization-based denoising:

x

? = argminx2RN

1

2||x� y||2 + �J(x)

Denoising: y = x0 + w 2 RN, K = Id.

Sparse regularization: J(x) =P

m |xm|q(where |a|0 = �(a))

Sparse Regularization Denoising

Page 54: Signal Processing Course : Sparse Regularization of Inverse Problems

Orthogonal-basis: ⇤ = IdN , x = ⇤f .

Regularization-based denoising:

x

? = argminx2RN

1

2||x� y||2 + �J(x)

Denoising: y = x0 + w 2 RN, K = Id.

Sparse regularization: J(x) =P

m |xm|q

x

?m = S

qT (xm)

(where |a|0 = �(a))

Sparse Regularization Denoising

Page 55: Signal Processing Course : Sparse Regularization of Inverse Problems

Sparse regularization:

x

? 2 argminx2RN

E(x) =1

2||y � �x||2 + �||x||1

E(x, x) = E(x)� 1

2||�(x� x)||2 + 1

2⌧||x� x||2

E(·, x)

x

xS�⌧ (u)

⌧ < 1/||�⇤�||

Surrogate Functionals

Surrogate functional:

E(·)

Page 56: Signal Processing Course : Sparse Regularization of Inverse Problems

Sparse regularization:

x

? 2 argminx2RN

E(x) =1

2||y � �x||2 + �||x||1

E(x, x) = E(x)� 1

2||�(x� x)||2 + 1

2⌧||x� x||2

Proof: E(x, x) / 12 ||u� x||2 + �||x||1+ cst.

argminx

E(x, x) = S

�⌧

(u)Theorem:

where u = x� ⌧�⇤(�x� x)

E(·, x)

x

xS�⌧ (u)

⌧ < 1/||�⇤�||

Surrogate Functionals

Surrogate functional:

E(·)

Page 57: Signal Processing Course : Sparse Regularization of Inverse Problems

Algorithm:

x

(`+1) = argminx

E(x, x(`))

x

(`+1) = S

1�⌧ (u

(`))

u

(`) = x

(`) � ⌧�⇤(�x(`) � ⌧y)

Initialize x

(0), set ` = 0.

x

(0)x

(1)x

(2)

Iterative Thresholding

x

E(·)

Page 58: Signal Processing Course : Sparse Regularization of Inverse Problems

Algorithm:

x

(`+1) = argminx

E(x, x(`))

x

(`+1) = S

1�⌧ (u

(`))

u

(`) = x

(`) � ⌧�⇤(�x(`) � ⌧y)

Remark:

x

(`) 7! u

(`)is a gradient descent of ||�x� y||2.

S

1`⌧ is the proximal step of associated to ||x||1.

Initialize x

(0), set ` = 0.

x

(0)x

(1)x

(2)

Iterative Thresholding

x

E(·)

Page 59: Signal Processing Course : Sparse Regularization of Inverse Problems

Theorem: if ⌧ < 2/||�⇤�||, then x

(`) ! x

?.

Algorithm:

x

(`+1) = argminx

E(x, x(`))

x

(`+1) = S

1�⌧ (u

(`))

u

(`) = x

(`) � ⌧�⇤(�x(`) � ⌧y)

Remark:

x

(`) 7! u

(`)is a gradient descent of ||�x� y||2.

S

1`⌧ is the proximal step of associated to ||x||1.

Initialize x

(0), set ` = 0.

x

(0)x

(1)x

(2)

Iterative Thresholding

x

E(·)

Page 60: Signal Processing Course : Sparse Regularization of Inverse Problems

Overview

• Inverse Problems Regularization

• Sparse Synthesis Regularization

• Examples: Sparse Wavelet Regularizations

• Iterative Soft Thresholding

• Sparse Seismic Deconvolution

Page 61: Signal Processing Course : Sparse Regularization of Inverse Problems

Seismic Imaging

Page 62: Signal Processing Course : Sparse Regularization of Inverse Problems

1D propagation � convolution

P

1D Idealization

Initial condition: “wavelet”

f

�f = h � f

= band pass filter h

h(x)

h(�)

y = f0 � h + w

Page 63: Signal Processing Course : Sparse Regularization of Inverse Problems

Pseudo-inverse:

Stabilization: h+(⇥) = 0 if |h(⇥)| � �

Pseudo Inverse

f+(�) =y(�)h(�)

=� f+ = h+ ⇥ y = f0 + h+ ⇥ w

where h+(�) = h(�)�1

h(�)

1/h(�)

y = h � f0 + w

f+

Page 64: Signal Processing Course : Sparse Regularization of Inverse Problems

f with small ||f ||0

Sparse Spikes Deconvolution

⇥m[x] = �[x�m]Sparsity basis: Diracs

y = f � h + w

f� = argminf�RN

12

||f ⇥ h� y||2 + ��

m

|f [m]|.

Page 65: Signal Processing Course : Sparse Regularization of Inverse Problems

f with small ||f ||0

Sparse Spikes Deconvolution

⇥m[x] = �[x�m]Sparsity basis: Diracs

y = f � h + w

Algorithm:

• Inversion: f (k) = f (k) � �h ⇥ (h ⇥ f (k) � y).

f (k+1)[m] = S1�⇥ (f (k)[m])

� < 2/||���|| = 2/max�

|h(⇥)|2

f� = argminf�RN

12

||f ⇥ h� y||2 + ��

m

|f [m]|.

Page 66: Signal Processing Course : Sparse Regularization of Inverse Problems

oracle, minimize ||f0 � f�||

Numerical Example

y = f � h + w

f�

SNR(f0, f�)

f0

Choosing optimal �:

Page 67: Signal Processing Course : Sparse Regularization of Inverse Problems

log10(E(f (k))/E(f�)� 1) log10(||f (k) � f�||/||f0||)

k

Not strictly convex =� no convergence speed.

Convergence Study

k

Energy: E(f) =12

||h ⇥ f � y||2 + ��

m

|f [m]|.

Sparse deconvolution: f� = argminf�RN

E(f).

Page 68: Signal Processing Course : Sparse Regularization of Inverse Problems

Conclusion

Page 69: Signal Processing Course : Sparse Regularization of Inverse Problems

Conclusion

Page 70: Signal Processing Course : Sparse Regularization of Inverse Problems

Conclusion