mohatagarvit / PNLM

Pruned Non-Local Means (PNLM)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pruned Non-Local Means (PNLM)

This is my Science Academies' Summer Research Fellowship Programme (SRFP) 2017 project done under Dr. K. N. Chaudhury, Dept. of Electrical Engineering, IISc Bengaluru based on the Pruned Non-Local Means (PNLM) paper.

Pruned Non-Local Means (PNLM) is a denoising algorithm that discards small weights below a certain threshold (computed using Golden Section Search) in the Non-local Means computation. This works well experimentally and the demo attached is a testament to that. The demo has been written in mex code and thus is much faster than the MATLAB code.

The details for using the demo have been attached in the readme file inside the demo folder.

About mex code

Mex codes are a mixture of C and MATLAB code. Here the variables are called from MATLAB but the operations are performed in C making it faster than its MATLAB version.

Running mex file

First, ensure that a MinGW compiler compatible with your MATLAB version is installed.

  • To install the compiler, use the Add-Ons menu described in Get Add-Ons. Search for MinGW or select from Features.
  • To choose between multiple C or C++ compilers, use mex -setup to choose MinGW.
    For more MinGW setup details, refer this.

Finally, compile the mex file. mex GUI_mex.c. It would look like this. Sample MATLAB GUI view

Links of the Complete Intern Report

About

Pruned Non-Local Means (PNLM)

License:MIT License


Languages

Language:Jupyter Notebook 53.2%Language:MATLAB 46.8%