d-acharya / OnlineDictionaryLearning

Fast Implementation of Online Dictionary Learning for Sparse Coding Algorithm

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fast Implementation of Online Dictionary Learning for Sparse Coding

Usage

To clone the project and all submodules:

git clone --recursive https://github.com/d-acharya/OnlineDictionaryLearning.git

To update all submodules:

git submodule foreach git pull origin master

To compile:

mkdir build
cd build 
cmake ..
make
./test_odl

Existing Implementations

C++ Implementation SPAM Webpage

Java Implementation Github

Matlab Implementation Github

C++ LARS Implementation Github

ToDos

  • Test Script:
    • For testing, see python implementation dictionary learnning and image denoising. We still need to create a wrapper to call our C implementation of dictionary learning from above python scripts.
  • Complete Implementation:
    • Implementation of LARS (Check FISTA implementation in above matlab implementation). Possibly replace LARS with FISTA as done in the matlab implementation.

Denoising Demonstration

  • After compilation, to test denoising.cpp:
    • ./applicationName Lenna256.png Lenna256Noisy.png

About

Fast Implementation of Online Dictionary Learning for Sparse Coding Algorithm


Languages

Language:Jupyter Notebook 88.0%Language:Python 9.2%Language:C++ 2.5%Language:CMake 0.1%Language:C 0.1%