GithubHelp home page GithubHelp logo

cuplgb / softx_2018_19 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from elseviersoftwarex/softx_2018_19

0.0 2.0 0.0 6.4 MB

Software to generate 2D/3D/4D analytical phantoms and their Radon transforms for image processing. To cite this software publication: https://www.sciencedirect.com/science/article/pii/S2352711018300335

License: Apache License 2.0

C 67.19% MATLAB 11.22% Python 21.46% Batchfile 0.08% Shell 0.05%

softx_2018_19's Introduction




TomoPhantom [1] is a toolbox to generate customisable 2D-4D phantoms (with a temporal capability) and their analytical projection data for various image processing tasks (reconstruction, denoising, deblurring, etc.).

DOI


About TomoPhantom

TomoPhantom is recommended for various image processing tasks that require extensive numerical testing: image reconstruction, denoising, deblurring, etc. Specifically,TomoPhantom is best-suited for testing various tomographic image reconstruction (TIR) methods. For TIR algorithms testing, the popular Shepp-Logan phantom is not always a good choice due to its piecewise-constant nature. This toolbox provides a simple modular approach to efficently build customisable 2D-4D phantoms consisting of piecewise-constant, piecewise-smooth, and smooth analytical objects. The objects include: Gaussians, parabolas, ellipses, cones, rectangulars. The exact tomographic projections (analytical sinograms) can be also obtained. The sinograms can be used for TIR benchmarking purposes, which enables reconstruction without so-called 'Inverse Crime'. TomoPhantom is also compatable with ASTRA-toolbox and TomoPy packages. Generated data can be directly reconstructed using the toolboxes (see examples). Additionally, TomoPhantom provides a simple temporal extension, i.e. a capability of creating 2D+time and 3D+time models.

TomoPhantom prerequisites:

  • MATLAB OR
  • Python (tested ver. 3.5); Cython
  • C compilers: GCC/MinGW/TDM-GCC/Visual Studio

Other dependencies (reconstruction):

Installation:

Python (conda-build preferrable)

	conda build conda-recipe --numpy 1.12 --python 3.5
	conda install tomophantom --use-local --force

Matlab

	run compile_mex_linux.m % to compile CPU modules on linux
	run compile_mex_windows.m % to compile CPU modules on Windows

Package modules:

  • Phantom2DLibrary.dat and Phantom3DLibrary.dat are editable text files with parametrised models (2D/3D versions of Shepp-Logan, Defrise, and QRM phantoms are included). The generation of new phantoms is highly encouraged, please submit them through pull requests or via e-mail bellow.
  • See MATLAB and Python demos

License:

Related software projects on GitHub:

  • xdesign XDesign is an open-source Python package for generating configurable simulation phantoms for benchmarking tomographic image reconstruction.
  • syris Syris (synchrotron radiation imaging simulation) is a framework for simulations of X-ray absorption and phase contrast dynamic imaging experiments, like time-resolved radiography, tomography or laminography.

References:

[1] D. Kazantsev et al. 2018, TomoPhantom, a software package to generate 2D-4D analytical phantoms for CT image reconstruction algorithm benchmarks, Software X, Volume 7, January–June 2018, Pages 150–155

[2] D. Kazantsev, V. Pickalov "New iterative reconstruction methods for fan-beam tomography", IPSE, 2017

Applications:

Software related questions/comments please e-mail to Daniil Kazantsev at [email protected]

softx_2018_19's People

Contributors

dkazanc avatar paskino avatar srikanthnagella avatar decarlof avatar

Watchers

James Cloos avatar  avatar

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.