1 / 17

Image Denoising with K-SVD

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. Figure courtesy Michael Elad. Sparse Coding.

dee
Télécharger la présentation

Image Denoising with K-SVD

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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 t Y D X Figure courtesy Michael Elad

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

  4. 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

  5. OMP : features • Greedy algorithm • Can find approximate solution • Close solution if T is small enough • Simplistic in nature

  6. Dictionary Selection • What D to use ? • A fixed overcomplete set of basis : • Steerable wavelet • Contourlet • DCT Basis • …. • Data Adaptive Dictionary – learn from data

  7. 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

  8. 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

  9. 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

  10. 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

  11. [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

  12. Denoising framework • A cost function for : Y = Z + n • Solve for Prior term

  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

  14. Denoising Framework • Solution : • Denoising by normalized weighted averaging Initialize Dictionary Sparse Coding (OMP) Update Dictionary One atom at a time Averaging of patches

  15. Proof of the pudding – low noise PSNR 28.12 dB PSNR 34.16 dB Denoising under presence of AWGN of std. dev 10

  16. High noise case – std dev 50 PSNR 24.93 dB PSNR 14.75 dB

  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

More Related