This note presents the design of a scalable software package named ImagePy for analysing biological images. Our contribution is concentrated on facilitating extensibility and interoperability of the software through decoupling the data model from the user interface. Especially with assistance from the Python ecosystem, this software framework makes modern computer algorithms easier to be applied in bioimage analysis.



It implements the template matching function from the OpenCV library. The java interface of OpenCV was done through the javacv library. It is quite similar as the existing template matching plugin but runs much faster and users could choose among six matching methods: 

1.Squared difference

2.Normalized squared difference


4.Normalized cross-correlation

5.Correlation coefficient

6.Normalized correlation coefficient

The detailed algorithms could be found here.

The cvMatch_Template will search a specific object (image pattern) over an image of interest by the user-specified method. 

Template Matching and Slice Alignment--- ImageJ Plugins


This ImageJ plugin contains two functions. The first one is the cvMatch_Template. It implements the template matching function from the OpenCV library. The second function Align_slices in stack utilized the previous matching function to do slice registration(alignment) based on a selected landmark. 

For more details, refer to the page of each component. 


Align Slices in Stack

has function

CSBDeep, a toolbox for Content-aware Image Restoration (CARE) in Knime


Deep learning based restoration, with guidelines for training. See also the Fiji plugin.

CSBDeep, a toolbox for Content-aware Image Restoration (CARE) in Fiji


Deep learning for fluorescence image restoration (denoising, deconvolution). Requires training on your data set but the procedure is described.




Neuroconductor is an open-source platform for rapid testing and dissemination of reproducible computational imaging software, specialized in brain medical imaging (MRI, fMRI, DTI, etc...) but that could be used on a wider range of images. The goals of the project are to:

  • provide a centralized repository of R software dedicated to image analysis;
  • disseminate quickly software updates;
  • educate a large, diverse community of scientists using detailed tutorials and short courses;
  • ensure quality via automatic and manual quality controls; and
  • promote reproducibility of image data analysis.


Based on the programming language R, Neuroconductor starts with 68 inter-operable packages that cover multiple areas of imaging including visualization, data processing and storage, and statistical inference. Neuroconductor accepts new R package submissions, which are subject to a formal review and continuous automated testing.

has function



Elastix is a toolbox for rigid and nonrigid registration of (medical) images.

Elastix is based on the ITK library, and provides additional algorithms for image registration. 

The software can be run as a single-line command, making it easy to include in larger scripts or workflows. The user needs to edit a configuration file that contains all relevant parameters for registration: transformation model, metric used to comapre images, optimization algorithm, mutliscale pyramidal representation of images...

Nowadays elastix is accompanied by SimpleElastix, making it available in other languages like C++, Python, Java, R, Ruby, C# and Lua.

elastix logo

Cancer Imaging Phenomics Toolkit (CaPTk)


CaPTk is a software platform for analysis of radiographic cancer images, currently focusing on brain, breast, and lung cancer. CaPTk integrates advanced, validated tools performing various aspects of medical image analysis, that have been developed in the context of active clinical research studies and collaborations toward addressing real clinical needs. With emphasis given in its use as a very lightweight and efficient viewer, and with no prerequisites for substantial computational background, CaPTk aims to facilitate the swift translation of advanced computational algorithms into routine clinical quantification, analysis, decision making, and reporting workflow. Its long-term goal is providing widely used technology that leverages the value of advanced imaging analytics in cancer prediction, diagnosis and prognosis, as well as in better understanding the biological mechanisms of cancer development.


Docker ParaViewWeb


This ParaViewWeb Docker container is used by the Galaxy Project.  Paraview is an VTK based visualization server, for 3D.

ParaViewWeb in Galaxy

Galaxy Image Analysis Tools


Image analysis tools to be used within Galaxy

Galaxy imaging workflow