sos boosting of image denoising algorithms
TRANSCRIPT
SOS Boosting of Image Denoising Algorithms
The research leading to these results has received funding from theEuropean Research Council under European Union's SeventhFramework Program, ERC Grant agreement no. 320649, and by theIntel Collaborative Research Institute for Computational Intelligence
Michael EladThe Computer Science DepartmentThe Technion – Israel Institute of technologyHaifa 32000, Israel
*
* Joint work with Yaniv Romano
Image Denoising
2
Probably the most popular and heavily studied problem in image processing …
Why is it so popular? Here are few explanations :(i) It does come up in many applications(ii) It is the simplest inverse problem, platform for new ideas(iii) Many other problems can be recast as an iterated denoising, and … (iv) It is misleadingly simple
Searchingimage and (denois*
or (noise and
removal))
in ISI Web-of-Science, leads to ~5000 journal papers
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Leading Image Denoising Methods
3
Are built upon powerful patch-based (local) image models:
▪ Non-Local Means (NLM): self-similarity within natural images
▪ K-SVD: sparse representation modeling of image patches
▪ BM3D: combines a sparsity prior and non local self-similarity
▪ Kernel-regression: offers a local directional filter
▪ EPLL: exploits a GMM model of the image patches
▪ …
Today we present a way to improve various such state-of-the-art image denoising methods, simply by applying
the original algorithm as a “black-box” several times
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Boosting Methods for Denoising
5
In image denoising, there are two sources of possible problems:
❑ Residual noise in the output image, and
❑ Residual content in the method noise
Noisy image
𝐲
Denoised image
ො𝐱 = 𝑓 𝐲
Method Noise
𝐲 − ො𝐱
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Denoise
Existing Boosting Algorithms
6
❑ Twicing [Tukey (’77), Charest et al. (’06)]
ො𝐱𝑘+1 = ො𝐱𝑘 + 𝑓 𝐲 − ො𝐱𝑖
❑ TV denoising using Bregman distance [Bregman (‘67), Osher et al. (’05)]
ො𝐱𝑘+1 = 𝑓 ො𝐱𝑘 +σ𝑖=1𝑘 𝐲 − ො𝐱𝑖
❑ Method noise whitening [Romano & Elad (‘13)]
❑ Diffusion [Perona-Malik (’90), Coifman (’06), Milanfar (’12)]
ො𝐱𝑘+1 = 𝑓 ො𝐱𝑘
❑ EPLL [Zoran & Weiss (’09), Sulam & Elad (‘14)]
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
SAIF [Talebi et al. (’12)] chooses automatically the local improvement mechanism: Diffusion or Twicing
Strengthen - Operate - Subtract Boosting
8
❑ Given any denoiser, how can we improve its performance?
Denoise
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Strengthen - Operate - Subtract Boosting
9
❑ Given any denoiser, how can we improve its performance?
Denoise
Previous Result
I. Strengthen the signal
II. Operate the denoiser
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Strengthen - Operate - Subtract Boosting
10
SOS formulation: ො𝐱𝑘+1 = 𝑓 𝐲 + ො𝐱𝑘 − ො𝐱𝑘
❑ Given any denoiser, how can we improve its performance?
Denoise
Previous Result
I. Strengthen the signal
II. Operate the denoiser
III. Subtract the previous estimation from the outcome
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Strengthen - Operate - Subtract Boosting
11
❑ An improvement is expected since SNR 𝐲 + ො𝐱 > SNR 𝐲
In the ideal case, where ො𝐱 = 𝐱 , we get
❑ We suggest strengthening the underlying signal, rather than
▪ Adding/filtering the method noise – which tends to converge to the noisy image, or
▪ Operating on the denoising output again and again – which tends to lead to over-smoothing
❑ SOS treats both sources of errors created in image denoising …
SNR 𝐲 + 𝐱 = 2 ⋅ SNR 𝐲
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Image Denoising – A Matrix Formulation
❑ Observation:
❑ We study the convergence of the SOS using only the linear part:
❑ What about sparsity-based denoising methods [Elad & Aharon (‘06)] ? We have shown that in this case that• 𝐖 is symmetric and positive definite, • and 𝜆𝑚𝑖𝑛 ≥ 𝑐 > 0, and 𝜆𝑚𝑎𝑥 = 1,
12
ො𝐱 = 𝑓 𝐲 = 𝐖 𝐲
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
𝐖− 𝐈 2 ≤ 1 − 𝑐 < 1
Denoising Algorithm
Non-Linear Part (decisions/switches)
Spatially adaptive weighted averages
True for NLM, Kernel-regression, BM3D, K-SVD, and many other methods
Convergence Study
❑ What about the non-linear part and its influence? More on this can be found in our paper …
13
For these denoising algorithms, the SOS boosting converges to
ොx∗ = 𝐈 + 𝐈 −𝐖−1𝐖y
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Theorem: The SOS converges if 𝐈 −𝐖 2 < 1, which holds true for kernel-based (Bilateral filter, NLM, Kernel Regression), and sparsity-based methods (K-SVD)
Generalization
❑ We introduce two parameters that modify
▪ The steady-state outcome
▪ The requirements for convergence (the eigenvalues range), and
▪ The rate of convergence
❑ The parameter , affects the steady-state outcome:
❑ The second parameter, , controls the rate-of-convergence, without affecting the steady-state:
14
ො𝐱𝑘+1 = 𝑓 𝐲 + 𝜌ො𝐱𝑘 − 𝜌ො𝐱𝑘𝜌
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
ො𝐱𝑘+1 = 𝜏𝑓 𝐲 + 𝜌ො𝐱𝑘 − 𝜏𝜌 + 𝜏 − 1 ො𝐱𝑘
Generalization
❑ By defining the error 𝑒𝑘 = ොx𝑘 − ොx∗, the SOS yields:
❑ We derived a closed-form expression for the optimal (𝜌, 𝜏) setting
▪ Given 𝜌, what is the best 𝜏, leading to the fastest convergence? This is depicted by the dashed curve
15
𝑒𝑘 = 𝜏𝜌𝐖− 𝜏𝜌 + 𝜏 − 1 𝐈 𝑒𝑘−1
𝜌
𝜏
Largest eigenvalue of the error’s transition matrix
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Graph Laplacian
❑ We can refer to the denoising matrix, 𝐖, as a spatially adaptive smoothing operator.
❑ A Graph Laplacian operator for an image can be defined asℒ = 𝐈 −𝐖
The intuition: The Laplacian computes the difference between a pixel and its neighborhood’s weighted average.
❑ The image content is expected to reside along the eigenvectors corresponding to the small eigenvalues of 𝐖, while the noise is spread uniformly over all the eigenspace.
❑ What can we do with ℒ? → Regularize inverse problems!
17Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Graph Laplacian Regularization
❑ The regularization can be defined as [Elmoataz et al. (’08), Bougleux et al. (‘09)]
❑ Another option is to integrate the filter also in the data fidelity term [Kheradmand and Milanfar (’13)]
18
ො𝐱 = min𝐱
𝐱 − 𝐲 22 + 𝜌𝐱𝑇ℒ𝐱
Seeks for an estimation that is close to the noisy version
While promoting similar pixels to remain similar
ො𝐱 = min𝐱
𝐱 − 𝐲 𝑻𝐖 𝐱− 𝐲 + 𝜌𝐱𝑇ℒ𝐱
Using the adaptive filter as a weight-matrix
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Graph Laplacian Regularization
❑ Another natural option is to minimize the following cost function
Its closed-form solution is the steady-state outcome of the SOS
❑ More on this topic can be found in our paper …
19
ො𝐱∗ = 𝐈 + 𝜌 𝐈 −𝐖−1𝐖𝐲 = 𝐈 + 𝜌ℒ −1𝐖𝐲
ො𝐱∗ = min𝐱
𝐱 −𝐖𝐲 22 + 𝜌𝐱𝑇ℒ𝐱
The SOS boosting acts as a graph Laplacian regularizer
Seeks for an estimation that is close to the denoised version
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Results
❑ We successfully boost several state-of-the-art denoising algorithms:
▪ K-SVD, NLM, BM3D, and EPLL
▪ Without any modifications, simply by applying the originalsoftware as a “black-box”
❑ We manually tuned two parameters
▪ – signal emphasis factor
▪ – noise level, which is an input to the denoiser
• Since the noise level of is higher than the one of
21
ො𝐱𝑘+1 = 𝑓𝜎 𝐲 + 𝜌ො𝐱𝑘 − 𝜌ො𝐱𝑘
𝜌
𝜎
𝐲 + 𝜌𝐱𝑘 𝐲
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Quantitative Comparison
❑ Average boosting in PSNR* over 5 images (higher is better):
22
*PSNR = 20log10 Τ255 MSE
Noise std Improved Methods
𝝈 K-SVD NLM BM3D EPLL
10 0.13 0.44 0.01 0.13
20 0.22 0.34 0.02 0.25
25 0.26 0.41 0.03 0.26
50 0.77 0.30 0.07 0.30
75 1.26 0.56 0.11 0.32
100 0.81 0.36 0.14 0.27
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Visual Comparison: K-SVD
23
❑ Original K-SVD results,
29.06dB
𝜎 = 25
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Visual Comparison: K-SVD
24
❑ SOS K-SVD results,
29.41dB
𝜎 = 25
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Visual Comparison: EPLL
25
❑ Original EPLL results,
Forman
32.44dB
House
32.07dB
𝜎 = 25
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Visual Comparison: EPLL
26
❑ SOS EPLL results,
Forman
32.78dB
House
32.38dB
𝜎 = 25
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Visual Comparison: All
27Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Noisy image KSVD (31.20) NLM (30.02) BM3D (31.88) EPLL (30.88)
SOS KSVD (31.91) SOS NLM (30.56) SOS BM3D (31.94) SOS EPLL (31.15)
Visual Comparison: All
28Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Noisy image KSVD (33.72) NLM (31.64) BM3D (34.66) EPLL (33.62)
SOS KSVD (34.4) SOS NLM (32.3) SOS BM3D (34.7) SOS EPLL (34.1)
Conclusions
The SOS boosting algorithm is:
✓ Easy to use - we simply treat the denoiser 𝑓 ⋅ as a “black-box”
✓ Applicable to a wide range of denoising algorithms 𝑓 ⋅
✓ Guaranteed to converge for many leading denoising algorithms
✓ Has a straightforward stopping criterion
✓ Acts as an interesting graph-Laplacian regularizer
✓ Reduces the local-global gap in patch-based methods
✓ Guaranteed to improve state-of-the-art methods
✓ Has an automatic parameter-settings based on MC-SURE
30Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
We are Done…
Thank you!
Questions?
31Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
❑ We assume the existence of a dictionary 𝐃 ∈ ℝ𝑑×𝑛 whose columns are the atom signals
❑ Signals are modeled as sparse linear
combinations of the dictionary atoms:
where 𝛼 is sparse, meaning that it is assumed to contain mostly zeros
❑ The computation of 𝛼 from x(or its or its noisy version) is called sparse-coding
❑ The OMP is a popular sparse-coding technique, especially for low dimensional signals
Sparsity Model – The Basics
D
…
D 𝛼=x
34
x = 𝐃𝛼
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
K-SVD Image Denoising [Elad & Aharon (‘06)]
35
Noisy Image
Using OMP
Initial Dictionary Using KSVD
Update the Dictionary
ෝ𝐩𝑖 = 𝐃𝑆𝑖𝛼𝒊
DenoisedPatch
A linear combination of few atoms
𝛼𝑖 = min𝑧
𝐃𝑆𝑖z − 𝐑𝒊𝐲 2
2 𝐑𝒊 extracts the 𝑖𝑡ℎ patch
from 𝐲
= 𝐃𝑆𝑖 𝐃𝑆𝑖T𝐃𝑆𝑖
−𝟏𝐃𝑆𝑖T𝐑𝒊𝐲
Denoiseeach patch
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
K-SVD Image Denoising [Elad & Aharon (‘06)]
36
Noisy Image Reconstructed Image
Denoiseeach patch
Using OMP
Initial Dictionary Using KSVD
Update the Dictionary
= 𝜇𝐈 + σ𝑖𝐑𝑖T𝐑𝑖
−1𝜇𝐈 + σ𝑖𝐑𝑖
T𝐃𝑆𝑖 𝐃𝑆𝑖T𝐃𝑆𝑖
−𝟏𝐃𝑆𝑖T𝐑𝒊 𝐲
= 𝐖𝐲
ො𝐱 = min𝐱
𝜇 𝐱 − 𝐲 22 + σ𝑖 ෝ𝐩𝑖 − 𝐑𝒊𝐱 2
2
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
❑ It turns out that the SOS boosting reduces the local/global gap, which is a shortcoming of many patch-based methods:
▪ Local processing of patches VS. the global need in a whole denoised result
❑ We define the local disagreements by
Reaching a Consensus
Local independent denoised patch
Disagreementpatch
❑ The disagreements
▪ Naturally exist since each noisy patch is denoised independently
▪ Are based on the intermediate results
Globally averaged patch
38Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
“Sharing the Disagreement”
39
❑ Inspired by the “Consensus and Sharing” problem from game-theory:
▪ There are several agents, each one of them aims to minimize its individual cost (i.e., representing the noisy patch sparsely)
▪ These agents affect a shared objective term, describing the overall goal (i.e., obtaining the globally denoised image)
❑ Imitating this concept, we suggest sharing the disagreements
Noisy image
Disagreement per-patch
Patch-based denoising
Est. Image
Noisy patches
Patch Avg.
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Connection to SOS Boosting
❑ Interestingly, for a fixed filter matrix , “sharing the disagreement” and the SOS boosting are equivalent
❑ The connection to the SOS is far from trivial because
▪ The SOS is blind to the intermediate results (the independent denoised patches, before patch-averaging)
▪ The intermediate results are crucial for “sharing the disagreement” approach
40
ො𝐱𝑘+1 = 𝐖 𝐲 + ො𝐱𝑘 − ො𝐱𝑘
The SOS boosting reduces the local-global gap
𝐖
Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
The General Case [Milanfar (’12)]
❑ Given any denoiser 𝐖, the MSE of ො𝐱 = 𝐖𝐲 can be expressed by
▪ 𝑏𝑖𝑎𝑠 ොx = Ε ො𝐱 − 𝐱 = 𝐖− 𝐈 𝐱
▪ 𝑣𝑎𝑟 ොx = Ε ො𝐱 − Ε ො𝐱 2 = 𝜎𝑣2 ⋅ Tr 𝐖𝐖𝑇
❑ We define the eigen-decomposition by
▪ 𝐕: orthogonal matrix, representing the “denoiser space”
▪ 𝚲: diagonal matrix, containing the eigenvalues 𝜆𝑖
42SOS Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
MSE ො𝐱 =1
𝑁𝐱 − ො𝐱 2
2 = 𝑏𝑖𝑎𝑠 ො𝐱 22 + 𝑣𝑎𝑟 ො𝐱
𝐖 = 𝐕𝚲𝐕𝐓
The General Case [Milanfar (’12)]
❑ Setting 𝐱 = 𝐕𝐛, we get
❑ Tradeoff: 𝜆 → 1 reduces the bias but increases the variance
❑ The optimal filter (𝛻𝜆𝑖MSE ොx = 0) is obtained for
which is the Wiener filter, but it requires knowledge of 𝑏𝑖2
43SOS Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
MSE ො𝐱 =
𝑖=1
𝑁
𝜆𝑖 − 1 2𝑏𝑖2 + 𝜎𝑣
2
𝑖=1
𝑁
𝜆𝑖2
𝑏𝑖𝑎𝑠 ො𝐱 22 𝑣𝑎𝑟 ො𝐱
𝜆𝑖𝑜𝑝𝑡
=𝑏𝑖2
𝑏𝑖2 + 𝜎𝑣
2
MSE of the SOS boosting
❑ In the case of the SOS boosting, the filter can be represented as
where ሚ𝜆𝑖 =1
1+𝜌 1−𝜆𝑖
❑ As a result, for 𝜌 > 0, we get
❑ A large 𝜌 reduces the variance of ො𝐱 but increases the bias of ො𝐱
44SOS Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
MSE 𝐱𝑠𝑜𝑠 =
𝑖=1
𝑁1 + 𝜌
1 + 𝜌 1 − 𝜆𝑖
2
𝑏𝑖𝑎𝑠𝑖2 ො𝐱 +
𝑖=1
𝑁1
1 + 𝜌 1 − 𝜆𝑖
2
𝑣𝑎𝑟𝑖 ො𝐱
𝐖𝑠𝑜𝑠 = 𝐈 + 𝜌 𝐈 −𝐖−1𝐖 = 𝐕෩𝚲𝐕𝐓
Larger than 1 Smaller than 1
Gaining Improvement
❑ Let us define an improvement function
▪ An improvement is obtained if Φ 𝜌 < 0
45SOS Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
Φ 𝜌 = MSE 𝐱𝜌𝑠𝑜𝑠 −MSE ො𝐱
The SOS boosting is always able to improve a suboptimal denoiser
Theorem: For any denoiser 𝐖 with 𝜆𝑖 ≠𝑏𝑖2
𝑏𝑖2+𝜎𝑣
2
(suboptimal eigenvalues), ∃𝜌∗ such that Φ 𝜌∗ < 0
Minimizing the MSE
❑ We don’t have the true MSE
❑ But we can estimate it using SURE [Stein (‘81)]
▪ Requires the analytical form of the divergence of 𝑓𝜌 𝐲
❑ Solution: Monte-Carlo SURE [Ramani et al. (‘08)]
▪ Treats the denoiser as a black-box
▪ Estimates the first order difference estimator of the divergence
46SOS Boosting of Image Denoising AlgorithmsBy Yaniv Romano and Michael Elad
MSE 𝑓𝜌 𝐲 ≈ 𝑓𝜌 𝐲2
2− 2𝑓𝜌 𝐲 T𝐲 + 2𝜎𝑣
2 ⋅ Tr 𝛻𝐲𝑓𝜌 𝐲