Spots colocalization (ComDet)


Quote " finding and/or analyzing colocalization of bright intensity spots (cells, particles, vesicles, comets, dots, etc) in images with heterogeneous background (microscopy, astronomy, engineering, etc). "

Uses Gaussian-Mexican hat convolution for preprocessing.



h-Dome transformation, useful for spot detection.

Jython code example:

from de.unihalle.informatik.MiToBo.core.datatypes.images import MTBImage
from de.unihalle.informatik.MiToBo.morphology import HDomeTransform3D
from ij import IJ

imp = IJ.getImage()
mtb = MTBImage.createMTBImage( imp.duplicate() )
hdome = HDomeTransform3D(mtb, 10.0)
mtbdone = hdome.getResultImage()
imp2 = mtbdone.getImagePlus()



Nessys: Nuclear Envelope Segmentation System


Nessys is a software written in Java for the automated identification of cell nuclei in biological images (3D + time). It is designed to perform well in complex samples, i.e when cells are particularly crowded and heterogeneous such as in embryos or in 3D cell cultures. Nessys is also fast and will work on large images which do not fit in memory.

Nessys also offers an interactive user interface for the curation and validation of segmentation results. Think of this as a 3D painter / editor. This editor can also be used to generate manually segmented images to use as ground truth for testing the accuracy of the automated segmentation method.

Finally Nessys, contains a utility for assessing the accuracy of the automated segmentation method. It works by comparing the result of the automated method to a manually generated ground truth. This utility will provide two types of output: a table with a number of metrics about the accuracy and an image representing a map of the mismatch between the result of the automated method and the ground truth.

has function



InspectJ is a free ImageJ/FIJI tool to inspect digital image integrity.

InspectJ_v2 is a newer version for advanced users. It applies additional features like histogram equalization and gamma correction for improved image inspections.

need a thumbnail

TTK the Topology Toolkit


The Topology ToolKit (TTK) is an open-source library and software collection for topological data analysis in scientific visualization.

TTK can handle scalar data defined either on regular grids or triangulations, either in 2D or in 3D. It provides a substantial collection of generic, efficient and robust implementations of key algorithms in topological data analysis. It includes:
 · For scalar data: critical points, integral lines, persistence diagrams, persistence curves, merge trees, contour trees, Morse-Smale complexes, topological simplification;
 · For bivariate scalar data: fibers, fiber surfaces, continuous scatterplots, Jacobi sets, Reeb spaces;
 · For uncertain scalar data: mandatory critical points;
 · For time-varying scalar data: critical point tracking;
 · For high-dimensional / point cloud data: dimension reduction;
 · and more!


TTK makes topological data analysis accessible to end users thanks to easy-to-use plugins for the visualization front end ParaView. Thanks to ParaView, TTK supports a variety of input data formats.

TTK is written in C++ but comes with a variety of bindings (VTK/C++, Python) and standalone command-line programs. It is modular and easy to extend. We have specifically developed it such that you can easily write your own data analysis tools as TTK modules.

has topic



The software FishInspector provides automatic feature detections in images of zebrafish embryos (body size, eye size, pigmentation). It is Matlab-based and provided as a Windows executable (no matlab installation needed).

The recent version requires images of a lateral position. It is important that the position is precise since deviation may confound with feature annotations. Images from any source can be used. However, depending on the image properties parameters may have to be adjusted. Furthermore, images obtained with normal microscope and not using an automated position system with embryos in glass capillaries require conversion using a KNIME workflow (the workflow is available as well). As a result of the analysis the software provides JSON files that contain the coordinates of the features. Coordinates are provided for eye, fish contour, notochord , otoliths, yolk sac, pericard and swimbladder. Furthermore, pigment cells in the notochord area are detected. Additional features can be manually annotated. It is the aim of the software to provide the coordinates, which may then be analysed subsequently to identify and quantify changes in the morphology of zebrafish embryos.

FishInspector Logo



This is a classical workflow for spot detection or blob like structures (vesicules, melanosomes,...)

Step 1 Laplacian of Gaussian to enhance spots . Paraeters= radius, about the average spot radius

Step 2 Detect minima (using Find Maxima with light background option to get minima). Parameter : Tolerance to Noise: to be tested, hard to predict. About the height of the enhanced feautures peaks

has topic
has function
spot detection

Creating an ImageJ plugin / command


The best way to start writing an ImageJ2 plugin (ImageJ2 developers call it command and not plugin) is to download the example command from github and modify it. There is a video tutorial on the whole workflow on how to do this on youtube.

has function

Microscope autopilot


AutoPilot is the open source project that hosts the general algorithm for fast and robust assessment of local image quality, an automated computational method for image-based mapping of the three-dimensional light-sheet geometry inside a fluorescently labeled biological specimen, and a general algorithm for data-driven optimization of the system state of light-sheet microscopes capable of multi-color imaging with multiple illumination and detection arms.

has function



SIMPLETRACKER a simple particle tracking algorithm that can deal with gaps.

Tracking , or particle linking, consist in re-building the trajectories of one or several particles as they move along time. Their position is reported at each frame, but their identity is yet unknown: we do not know what particle in one frame corresponding to a particle in the previous frame. Tracking algorithms aim at providing a solution for this problem. 

simpletracker.m is - as the name says - a simple implementation of a tracking algorithm, that can deal with gaps. A gap happens when one particle that was detected in one frame is not detected in the subsequent one. If not dealt with, this generates a track break, or a gap, in the frame where the particle disappear, and a false new track in the frame where it re-appear. 

need a thumbnail