Python/C++ port of the ImageJ extension TurboReg/StackReg written by Philippe Thevenaz/EPFL.

A python extension for the automatic alignment of a source image or a stack (movie) to a target image/reference frame.

need a thumbnail

ANTs: Advanced Normalization Tools


ANTs computes high-dimensional mappings to capture the statistics of brain structure and function.

Image Registration

Diffeomorphisms: SyN, Independent Evaluation: Klein, Murphy, Template Construction (2004)(2010), Similarity Metrics, Multivariate registration, Multiple modality analysis and statistical bias

Image Segmentation

Atropos Multivar-EM Segmentation (link), Multi-atlas methods (link) and JLF, Bias Correction (link), DiReCT cortical thickness (link), DiReCT in chimpanzees


Advanced Normalization Tools



TeraStitcher is a free tool that enables the stitching of Teravoxel-sized tiled microscopy images even on workstations with relatively limited resources of memory (<8 GB) and processing power. It exploits the knowledge of approximate tile positions and uses ad-hoc strategies and algorithms designed for such very large datasets. The produced images can be saved into a multiresolution representation to be efficiently visualized (e.g. Vaa3D-TeraFly) and processed.

Multiview Reconstruction


The Multiview Reconstruction software package enables users to register, fuse, deconvolve and view multiview microscopy images. The software is designed for lightsheet fluorescence microscopy (LSFM), but is applicable to any form of three or higher dimensional imaging modalities like confocal timeseries or multicolor stacks. 

need a thumbnail



The BigDataViewer is a re-slicing browser for terabyte-sized multi-view image sequences. BigDataViewer was developed with multi-view light-sheet microscopy data in mind and integrates well with Fiji's SPIMage processing pipeline.



The BigStitcher is a software package that allows simple and efficient alignment of multi-tile and multi-angle image datasets, for example acquired by lightsheet, widefield or confocal microscopes. The software supports images of almost arbitrary size ranging from very small images up to volumes in the range of many terabytes, which are for example produced when acquiring cleared tissue samples with lightsheet microscopy.

performing automatic registration for CLEM


This is an example workflow of how to perform automatic registration by

- first detecting spots in both image using wavelet segmentation (with different scale according to the image scale)

- second using Ec-Clem autofinder to register both images

Click on a block to know more about a tool. Non referenced tools are non clickable.

testWorkflowtestWorkflowtestWorkflowimage map example
Workflow results




Elastix cite{Klein2010} is an open source, command-line program for intensity-based registration of medical images that allows the user to quickly configure, test, and compare different registration methods. SimpleElastix is an extension of SimpleITK cite{Lowekamp2013} that allows you to configure and run Elastix entirely in Python, Java, R, Octave, Ruby, Lua, Tcl and C# on Linux, Mac and Windows. The goal is to bring robust registration algorithms to a wider audience and make it easier to use elastix, e.g. for Java-based enterprise applications or rapid Python prototyping.

Python example

import SimpleITK as sitk
resultImage = sitk.Elastix(sitk.ReadImage("fixedImage.nii"), sitk.ReadImage("movingImage.nii"))

ec-clem autofinder


Automatic registration in 2D or 3D based on detection or binary mask. Takes images with detections already done on it.

logo autofinder

CellProfiler Align


Align aligns images relative to each other, for example, to correct shifts in the optical path of a microscope in each channel of a multi-channel set of images.

For two or more input images, this module determines the optimal alignment among them. Aligning images is useful to obtain proper measurements of the intensities in one channel based on objects identified in another channel, for example. Alignment is often needed when the microscope is not perfectly calibrated. It can also be useful to align images in a time-lapse series of images. The module stores the amount of shift between images as a measurement, which can be useful for quality control purposes.

Note that the second image (and others following) is always aligned with respect to the first image. That is, the X/Y offsets indicate how much the second image needs to be shifted by to match the first. This module does not perform warping or rotation, it simply shifts images in X and Y. For more complex registration tasks, you might preprocess images using a plugin for that purpose in FIJI/ImageJ.

Supports 2D? Supports 3D? Respects masks?
Yes No Yes

Measurements made by this module

  • Xshift, Yshift: The pixel shift in X and Y of the aligned image with respect to the original image.


  • Lewis JP. (1995) “Fast normalized cross-correlation.” Vision Interface, 1-7.
has function