bm3d-amp: a new image recovery algorithm based on bm3d ...cam6.web.rice.edu/talks/icip_v15.pdf ·...

39
BM3D-AMP: A New Image Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard Baraniuk Rice University Arian Maleki Columbia University

Upload: others

Post on 16-Apr-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

BM3D-AMP: A New Image

Recovery Algorithm Based on

BM3D Denoising

Chris Metzler, Richard Baraniuk

Rice University

Arian Maleki

Columbia University

Page 2: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Compressive Sensing Problem

Page 3: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Solution: Assume Structure

• Sparse: OMP [Tropp 04], IST [Figueiredo et al 07], AMP [Donoho et al 09]

• Minimal Total Variation: TVAL3 [Li et al 09]

• Tree-Sparse: Model-CoSaMP [Baraniuk et al 10],Turbo-AMP [Som and Schniter 12]

• Group-Sparse: NLR-CS [Dong et al 14]

Page 4: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Using Structure is Hard

• Write as penalty or constraint

• How to efficiently solve for non-convex R(x)?

• What is R(x) for natural images?

• What is R(x) for RF, microscopy, and other applications?

Page 5: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

This Talk

• Develop algorithm that can easily use almost any structure

• Predict performance with accurate state evolution

• Derive theoretical guarantees• Measurements required

• Robust to noise

• Demonstrate state-of-the-art performance• 10dB better than wavelet sparsity

• 50x faster than group-sparsity

Page 6: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Insight: Denoisers Use Structure

• Gaussian Kernel• Smooth

• Soft Wavelet Thresholding [Donoho and Johnstone 94]

• Sparse wavelet representation

• BLS-GSM [Portilla et al 03]

• Coefficients follow Gaussian Mixture Model

• NLM [Baudes et al 05]

• Correlated structures

• BM3D [Dabov et al 07]

• Group-sparse in DCT/Wavelet representation

• BM3D-SAPCA [Dabov et al 09]

• Group-sparse in adaptive basis

Page 7: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Denoisers as Black Boxes

Denoiser

Page 8: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Denoisers as Projections

C

Page 9: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Naïve Algorithm: Denoising-based

Iterative Thresholding (D-IT)

Page 10: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Naïve Algorithm: D-IT

Page 11: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Naïve Algorithm: D-IT

Page 12: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Naïve Algorithm: D-IT

Page 13: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Naïve Algorithm: D-IT

Page 14: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Naïve Algorithm: D-IT

Page 15: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Failure of D-IT: Systematic Errors

Page 16: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Systematic Errors: Overshooting

Page 17: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Systematic Errors: Overshooting

Too High

Page 18: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Systematic Errors: Overshooting

Too High Too Low

Too High Too Low

Page 19: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Systematic Errors: Overshooting

Too High Too Low

Too High Too Low

Page 20: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Systematic Errors: Overshooting

Too High Too Low

Too High Too Low

Page 21: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Systematic Errors: Overshooting

Too High Too Low

Too High Too Low

Use residuals from

previous iterations to

avoid overshooting

Page 22: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

New Algorithm: D-AMP

Onsager Correction

Page 23: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

D-AMP Benefits

D-IT

• Updates proportional to residual (P controller).

• 5dB improvement over L1

D-AMP

• Updates use rate residuals change (PD controller).

• 10dB improvement over L1

(state-of-the-art)

• Onsager Correction

Page 24: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Onsager Correction:

• Where did it come from?• Approximation of message passing algorithm

Page 25: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Onsager Correction:

• Where did it come from?• Approximation of message passing algorithm

• Why does it help?• zt stores residuals over many iterations (momentum)

• Corrects for bias in denoiser solutions

• Makes errors uncorrelated (Gaussian) and thus easy to remove

Page 26: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Onsager Correction:

• Where did it come from?• Approximation of message passing algorithm

• Why does it help?• zt stores residuals over many iterations (momentum)

• Corrects for bias in denoiser solutions

• Makes errors uncorrelated (Gaussian) and thus easy to remove

• How is it calculated?• Approximation from Monte Carlo SURE [Ramani et al 08]

Page 27: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

D-AMP Avoids Systematic Errors

Page 28: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

D-AMP Theoretical Properties

• Predictable performance

• Denoiser determines phase transition

• Robust to noise

• Easy to tune

Page 29: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

State Evolution

• Errors are uncorrelated → Gaussian noise at each iteration

• Variance of noise determines MSE

• State evolution predicts noise variance

Page 30: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

State Evolution of D-IT and D-AMP

Page 31: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Main Theoretical Results

• Denoiser Performance

• Phase Transition: Determined by denoiser

• Noise Sensitivity: Graceful failure

Page 32: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Parameter Tuning

• Denoiser parameters

• Problem: Tune denoiser parameters over multiple iterations

• Result: Greedy parameter selection is optimal

Page 33: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

3x Under-Sampling

Page 34: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

20x Under-Sampling

Wavelet Sparse (L1) BM3D-AMP (our algorithm)

Page 35: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

10x Under-Sampling with Noise

NLR-CS BM3D-AMP

Page 36: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Performance without Noise

Page 37: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Computation Time

30x Faster

70x Faster

Page 38: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

Performance with Noise

Page 39: BM3D-AMP: A New Image Recovery Algorithm Based on BM3D ...cam6.web.rice.edu/talks/ICIP_v15.pdf · Recovery Algorithm Based on BM3D Denoising Chris Metzler, Richard ... 10x Under-Sampling

D-AMP Summary

• Arbitrary denoiser• NLM

• BM3D

• Useful state evolution

• State-of-the-art performance

• Resilient to noise

• >97% reduction in average computation time