Be the first to rate this file! 105 Downloads (last 30 days) File Size: 10.24 KB File ID: #32402
image thumbnail

CoSaMP and OMP for sparse recovery

by Stephen Becker

 

01 Aug 2011 (Updated 20 Apr 2012)

Orthogonal Matching Pursuit (OMP) and Compressive Sampling Matched Pursuit (CoSaMP).

| Watch this File

File Information
Description

Orthogonal matching Pursuit (OMP) and Compressive Sampling Matched Pursuit (CoSaMP) algorithm (see Needell and Tropp's 2008 paper http://arxiv.org/abs/0803.2392 ). This implementation allows several variants, and it also allows you to specify a matrix via function handles (useful if your matrix represents an FFT or similar).

A demo code shows how to use both the OMP.m and CoSaMP.m functions.

OMP and CoSaMP are useful for sparse recovery problems; in particular, they can be used for compressed sensing (aka compressive sampling), image denoising and deblurring, seismic tomography problems, MRI, etc.

Another good OMP implementation (C++, Matlab) is here:
http://www.di.ens.fr/willow/SPAMS/
(Updated, March 2012: SPAMS now has python and R bindings as well)

And a CoSaMP implementation (I haven't tested):
http://media.aau.dk/null_space_pursuits/2011/07/a-few-corrections-to-cosamp-and-sp-matlab.html
Edit: that CoSaMP implementation mentioned above is buggy. Read this:
http://media.aau.dk/null_space_pursuits/2011/08/cosamp-and-cosaomp.html

Update, Feb 2012: for a blog discussion of several way to implement CoSaMP, see this website:
http://media.aau.dk/null_space_pursuits/2012/02/speedups-in-omp-implementations.html

Acknowledgements

The author wishes to acknowledge the following in the creation of this submission:
Toolbox Sparse Optmization, Greedy Algorithms promoting Group Sparsity, Orthogonal Least Squares Algorithms for Sparse Signal Reconstruction

Required Products MATLAB
MATLAB release MATLAB 7.10 (2010a)
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (1)
20 Mar 2012 Arunima c.v.

HELPFUL

Please login to add a comment or rating.
Updates
07 Oct 2011

Adding new links in the description, and updated the demo file slightly.

21 Mar 2012

editing description text a bit

20 Apr 2012

Fixing a bug that affected versions of Matlab prior to 2009b. See http://blogs.mathworks.com/loren/2009/09/11/matlab-release-2009b-best-new-feature-or/

Tag Activity for this File
Tag Applied By Date/Time
omp Stephen Becker 02 Aug 2011 11:03:15
cosamp Stephen Becker 02 Aug 2011 11:03:15
compressed sensing Stephen Becker 02 Aug 2011 11:03:15
compressive sampling Stephen Becker 02 Aug 2011 11:03:15
signal processing Stephen Becker 02 Aug 2011 11:03:15
sparse recovery Stephen Becker 02 Aug 2011 11:03:15
image processing Stephen Becker 02 Aug 2011 11:03:15
sparse Stephen Becker 02 Aug 2011 11:03:15
compressed sensing falgun thakkar 19 Aug 2011 15:32:03

Contact us at files@mathworks.com