Image Denoising with K-SVD

1 / 17

# Image Denoising with K-SVD - PowerPoint PPT Presentation

Image Denoising with K-SVD. Priyam Chatterjee EE 264 – Image Processing &amp; Reconstruction Instructor : Prof. Peyman Milanfar Spring 2007. Sparseland Model. Defined as a set {D,X,Y} such that. t. Y. D. X. Figure courtesy Michael Elad. Sparse Coding.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Image Denoising with K-SVD' - mala

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Image Denoising with K-SVD

Priyam Chatterjee

EE 264 – Image Processing & Reconstruction

Instructor : Prof. Peyman Milanfar

Spring 2007

Sparseland Model

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

t

Y

D

X

Sparse Coding
• Given a D and yi, how to find xi
• Constraint : xiis sufficiently sparse
• Finding exact solution difficult
• Approximate solution good enough ?
Orthogonal Matching Pursuit

Select dkwith max

projection on residue

xk = arg min ||y-Dkxk||

D, y

x

Check terminating

condition

Update residue

r = y - Dkxk

OMP : features
• Greedy algorithm
• Can find approximate solution
• Close solution if T is small enough
• Simplistic in nature
Dictionary Selection
• What D to use ?
• A fixed overcomplete set of basis :
• Steerable wavelet
• Contourlet
• DCT Basis
• ….
• Data Adaptive Dictionary – learn from data
Select atoms from input

Atoms can be patches from the image

Patches are overlapping

K-SVD Algorithm

Initialize Dictionary

Sparse Coding

(OMP)

Update Dictionary

One atom at a time

Use OMP or any other fast method

Output gives sparse code for all signals

Minimize error in representation

K-SVD Algorithm

Initialize Dictionary

Sparse Coding

(OMP)

Update Dictionary

One atom at a time

Replace unused atom with minimally represented signal

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

K-SVD Algorithm

Initialize Dictionary

Sparse Coding

(OMP)

Update Dictionary

One atom at a time

Deselect k-th atom from dictionary

Find coding error matrix of these signals

Minimize this error matrix with rank-1 approx from SVD

K-SVD Algorithm

Initialize Dictionary

Sparse Coding

(OMP)

Update Dictionary

One atom at a time

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

Replace coeff of atom dk in X with entries of s1v1

dk = u1/||u1||2

K-SVD Algorithm

Initialize Dictionary

Sparse Coding

(OMP)

Update Dictionary

One atom at a time

Denoising framework
• A cost function for : Y = Z + n
• Solve for

Prior term

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

Denoising Framework
• Solution :
• Denoising by normalized weighted averaging

Initialize Dictionary

Sparse Coding

(OMP)

Update Dictionary

One atom at a time

Averaging of patches

Proof of the pudding – low noise

PSNR 28.12 dB

PSNR 34.16 dB

Denoising under presence of AWGN of std. dev 10

High noise case – std dev 50

PSNR 24.93 dB

PSNR 14.75 dB

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