fast external denoising using pre-learned transformations
TRANSCRIPT
Fast external denoising using pre-learned transformations
Shibin Parameswaran, Enming Luo, Charles-Alban Deledalle and Truong Nguyen
NTIRE 2017(in conjunction with CVPR 2017)
Image denoising
β’ Goal: Estimate the underlying clean image from the observed noisy image
β’ Patch-based Image denoising: Denoise an image patch-by-patch by leveraging information contained in similar patchesβ’ Patch to be denoised = Query patch
β’ Similar patches = Reference patches
π = π + πΌ where πΌ β π΅(π, πππ°π)
π = π½(π; ππ, ππ, β¦ππ)
πππ ππ
ππππ
π½: Some linear or non-linear function π: Estimate of clean patch π
2
Types of patch-based denoising
e.g. NLM, BM3D, LPG-PCADrawbacks: - Limited performance
[Chatterjee et al. `09, `11]- Rare patches
e.g. EPLL, eNLM, eBM3D, eLPG-PCADrawbacks:- Computational complexity- Marginal improvement
e.g. TID, tBM3D, tLPG-PCA, tEPLL- Smaller database can be used- Improved performanceDrawbacks:- Slower than internal methods- Database selection
External denoisingFrom an external database
Internal denoisingFrom the noisy image
Targeted denoisingFrom a domain specific database
3
: Noisy query patch : Reference patches : Rare patch
Related methods
β’ Expected patch log-likelihood (EPLL) [Zoran et al. 2011]β’ Learns patch priors using Gaussian Mixture Modelsβ’ One of the most efficient external denoising algorithmsβ’ Slow to converge to high quality solutions
β’ Many iterations involving Mahalanobis distance calculationsβ’ Heavily overlapped patches
β’ Targeted Image Denoising (TID) [Luo et al. 2015]β’ Powerful patch-specific denoising filtersβ’ Converges to high quality solution in 2 iterationsβ’ Computationally expensive
β’ Per-patch filter design
π
Training phase
π
Eig( )
= πΌπ¦πΌπ»π
π
π
k-NN
4
Design of a fast denoising algorithm
6
β’ Whole image denoising formulation
β’ Solve by alternating between optimal π and ππβ’ Fix {ππ}:
β’ Fix π :
minπ, {ππ}
1
2π2π β π 2
2 +π½
2
π=1
π
π·ππ β π¨ππ 22 + π ππ 2
2
Data fidelity term Patch reconstruction term
Notations:
π : Clean image
π : Noisy image (given)
π2 : Noise variance (given)
π·π : Patch extractor (π·ππ β βπ)
π¨ : Dictionary of patches
{ππ} : Coefficient vectors
π½, π : Optimization parameters
π =1
π2π°π + π½
π=1
π
π·πππ·π
β1
1
π2π + π½
π=1
π
π·πππ¨ππ
π¨ ππ = πΌπΊ
πΊ+ππ°π
πΌππ·ππ where EIG π¨π¨π = πΌ, πΊ
Choosing π¨ matrix
β’ The entire patch database β’ Bad choice with l2 norm
β’ Dictionaries tailored to each π·ππβ’ Similar to TID algorithm [Luo et al. 2015]
β’ Inefficient
β’ Identify and tailor the dictionaries to a set of anchor patchesβ’ Anchor patches {π1, β¦ , ππ} : Representatives of patch database
β’ Build {π¨1, β¦ , π¨π} using m nearest neighbors of {π1, β¦ , ππ} as:
π·ππ β π¨ππ 22 + π ππ 2
2
7
π¨π = π¨πΎππ.π where πΎπ =
π
πΆdiag ππ, β¦ ,ππ
and ππ = exp βππβππ
2
2π2
Fast external denoising (FED) algorithm
k-means clusteringOr
Dictionary learning
Database of Patches
Anchor Patches{π1, β¦ , ππ}
m-Nearest neighbors
Anchor Dictionaries
{π¨1πΎ10.5, β¦ , π¨ππΎπ
0.5}
πΌ1, πΊ10.5 = svd(π¨1πΎ1
0.5)
β¦
πΌπ , πΊπ0.5 = svd(π¨ππΎπ
0.5)
π
argminπ‘
π β ππ‘
π¦ = πΊπ‘ + π2π° β1 πΊπ‘πΌ = πΌπ
= πΌπ¦πΌπ»π
Training phase (offline) 88
Datasets
β’ Face image datasetβ’ 100 images of distinct individuals
β’ Test: 10 images
β’ Validation: 10 images
β’ Database: 80 images
β’ Size: 90x65
β’ License plate datasetβ’ 110 images of license plates
cropped from Caltech Cars datasetβ’ Test: 10 images
β’ Validation: 10 images
β’ Database: 90 images
β’ Avg. size: 44x92
Query image
Database
Query image
Database9
Conclusions
β’ Introduced a fast external denoising algorithmβ’ Orders of magnitude faster than TID
β’ Faster and better than EPLL with targeted database
β’ Speed can be further improved using approximate nearest neighbors
β’ Limitationsβ’ Database mismatch
13
2s 84s 9s321x481