/sparse

Sparse encoding testbed

Primary LanguageCMIT LicenseMIT

sparse

A sparse encoding testbed.

Current Features

  • BOMP: Batch Orthogonal Matching Pursuit [1]
  • KSVD: Approximate K-SVD dictionary training algorithm [1]

Examples

ksvd_image: a simple test app demonstrating how to use the BOMP and KSVD functions, with the syntax:

ksvd_image <input image> <output image> atoms error steps

For instance:

ksvd_image data/barbara.png babs_out.png 4 0.01 10

Building

Use premake to generate the appropriate files for your system:

premake4 gmake    # for GNU makefiles using GCC
premake4 vs2010   # for a Visual Studio 2010 solution

Acknowledgements

Robin Green and Manny Ko for their GDC presentation [2] and helpful correspondence.
Ron Rubinstein for OMP-Box and KSVD-Box.
Sean Barrett for stblib.

References

[1] Rubinstein, R., Zibulevsky, M. and Elad, M. "Efficient Implementation of the K-SVD Algorithm using Batch Orthogonal Matching Pursuit". Technical Report - CS Technion, April 2008.
[2] Green, R., Ko, M. "Orthogonal Matching Pursuit and K-SVD for Sparse Encoding". Game Developer's Conference, March 2013.