17
Image Denoising with K- SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

Image Denoising with K-SVD

Priyam Chatterjee

EE 264 – Image Processing & ReconstructionInstructor : Prof. Peyman MilanfarSpring 2007

Page 2: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

2

Sparseland Model

Defined as a set {D,X,Y} such that

DY t X

Figure courtesy Michael Elad

Page 3: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

3

Sparse Coding

Given a D and yi, how to find xi

Constraint : xi is sufficiently sparse

Finding exact solution difficult

Approximate solution good enough ?

Page 4: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

4

Orthogonal Matching Pursuit

Select dk with maxprojection on residue

xk = arg min ||y-Dkxk||

Update residue

r = y - Dkxk

Check terminating condition

D, y x

Page 5: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

5

OMP : features

Greedy algorithm

Can find approximate solution

Close solution if T is small enough

Simplistic in nature

Page 6: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

6

Dictionary Selection What D to use ?

A fixed overcomplete set of basis : Steerable wavelet Contourlet DCT Basis ….

Data Adaptive Dictionary – learn from data

Page 7: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

7

K-SVD Algorithm

Select atoms from input

Atoms can be patches from the image

Patches are overlapping

Initialize Dictionary

Sparse Coding(OMP)

Update Dictionary

One atom at a time

Page 8: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

8

K-SVD Algorithm

Use OMP or any other fast method

Output gives sparse code for all signals

Minimize error in representation

Initialize Dictionary

Sparse Coding(OMP)

Update Dictionary

One atom at a time

Page 9: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

9

K-SVD Algorithm

Replace unused atom with minimally represented signal

Identify signals that use k-th atom (non zero entries in rows of X)

Initialize Dictionary

Sparse Coding(OMP)

Update Dictionary

One atom at a time

Page 10: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

10

K-SVD Algorithm

Deselect k-th atom from dictionary

Find coding error matrix of these signals

Minimize this error matrix with rank-1 approx from SVD

Initialize Dictionary

Sparse Coding(OMP)

Update Dictionary

One atom at a time

Page 11: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

11

K-SVD Algorithm

[U,S,V] = svd(Ek)

Replace coeff of atom dk in X with entries of s1v1

dk = u1/||u1||2

Initialize Dictionary

Sparse Coding(OMP)

Update Dictionary

One atom at a time

Page 12: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

12

Denoising framework

A cost function for : Y = Z + n

Solve forPrior term

Page 13: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

13

Denoising Framework

Break problem into smaller problems

Aim at minimization at the patch level

Select i-th patch of Z accounted for

implicitly by OMP

Page 14: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

14

Denoising Framework

Solution :

Denoising by normalized weighted averaging

Initialize Dictionary

Sparse Coding(OMP)

Update Dictionary

One atom at a time

Averaging of patches

Page 15: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

15

Proof of the pudding – low noise

Denoising under presence of AWGN of std. dev 10

PSNR 28.12 dB PSNR 34.16 dB

Page 16: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

16

High noise case – std dev 50

PSNR 14.75 dB PSNR 24.93 dB

Page 17: Image Denoising with K-SVD Priyam Chatterjee EE 264 – Image Processing & Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007

17

Outside the math :

Similar atoms in dictionary should be replaced with signals that are least represented

Atoms which are least used should be replaced by signals that are least represented