Git Product home page Git Product logo

pyvsnr_cuda's Introduction

- This repository has been replaced by 'pyvsnr' in: https://github.com/CEA-MetroCarac/pyvnsr

pyVSNR

VSNR (Variational Stationary Noise Remover) algorithm in python

Description

This repository contains the python sources of the 2D-GPU based denoising code of the VSNR algorithm issued from the CUDA implementation given in https://github.com/pierre-weiss/VSNR_2D-3D_GPU.

It completes the 2D-CPU/GPU port from MATLAB to python realized in https://github.com/patquem/pyvsnr

Installation

$ pip install git+https://github.com/CEA-MetroCarac/pyVSNR.git

In case of problem during CUDA execution (typically 'access memory error'), it may be necessary to recompile the .dll. See the README.txt file for more details.

Requirements

  • numpy
  • matplotlib, skimage (for examples and tests execution only)

Usage

from pyVSNR import vsnr2d
from skimage import io

# read the image to correct
img = io.imread('image.tif')

# filters definition (Gabor and Dirac filters combination)
filter1 = {'name':'Gabor', 'noise_level':20, 'sigma':(3, 40), 'theta':210}
filter2 = {'name':'Dirac', 'noise_level':10}
filters = [filter1, filter2]

# image processing
img_corr = vsnr2d(img, filters, nite=20, nblocks='auto')

...

For more details concerning usage and parameters, refer to the Pierre Weiss website.

Examples

Some applicative examples are given in examples.py. Operating mode and results are reproduced hereafter.

Gaussian noise removal example :

from pyVSNR.examples import ex_camera_gaussian_noise 
ex_camera_gaussian_noise() 

Stripes removal example :

from pyVSNR.examples import ex_camera_stripes 
ex_camera_stripes()

Curtains removal example :

from pyVSNR.examples import ex_camera_curtains 
ex_camera_curtains()

Curtains removal example on real image (FIB-SEM) :

from pyVSNR.examples import ex_fib_sem
ex_fib_sem(show_plot=True)

Authors informations

This is a port to python of the original code developed by Jean EYMERIE and Pierre WEISS.

All credit goes to the original authors.

In case you use the results of this code with your article, please don't forget to cite:

  • Fehrenbach, Jérôme, Pierre Weiss, and Corinne Lorenzo. "Variational algorithms to remove stationary noise: applications to microscopy imaging." IEEE Transactions on Image Processing 21.10 (2012): 4420-4430.
  • Fehrenbach, Jérôme, and Pierre Weiss. "Processing stationary noise: model and parameter selection in variational methods." SIAM Journal on Imaging Sciences 7.2 (2014): 613-640.
  • Escande, Paul, Pierre Weiss, and Wenxing Zhang. "A variational model for multiplicative structured noise removal." Journal of Mathematical Imaging and Vision 57.1 (2017): 43-55.

pyvsnr_cuda's People

Contributors

patquem avatar

Stargazers

Jaesung Rim avatar

Watchers

 avatar

Forkers

matbryan52

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.