CoSaMP and OMP for sparse recovery

Orthogonal Matching Pursuit (OMP) and Compressive Sampling Matched Pursuit (CoSaMP).
10,2K download
Aggiornato 5 ago 2016

Visualizza la licenza

Orthogonal matching Pursuit (OMP) and Compressive Sampling Matched Pursuit (CoSaMP) algorithm (see Needell and Tropp's 2008 paper ). 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:
(Updated, March 2012: SPAMS now has python and R bindings as well)

And a CoSaMP implementation (I haven't tested):
Edit: that CoSaMP implementation mentioned above is buggy. Read this:

Update, Feb 2012: for a blog discussion of several way to implement CoSaMP, see this website:

Cita come

Stephen Becker (2024). CoSaMP and OMP for sparse recovery (, MATLAB Central File Exchange. Recuperato .

Compatibilità della release di MATLAB
Creato con R2010a
Compatibile con qualsiasi release
Compatibilità della piattaforma
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Versione Pubblicato Note della release

Fixed bug with complex numbers (Aug 2016)

Fixing the bug for complex mode. Minor changes to the solvers. Added complex data test mode to the test script.

Fixing a bug that affected versions of Matlab prior to 2009b. See

editing description text a bit

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