Bioimage analysis

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

2D Gaussian fitting macro (Fiji/ImageJ) for multiple signals.


This script includes a rough feature detection and then fine 2D Gaussian algorithm to fit Gaussians within detected regions. This macro is unique because the ImageJ/Fiji curve fitting API only supports 1-D curve. I get around this by linearising the equation. This implementation is for isotropic (spherical) or anistropic (longer in x/y) diagonally covariant Gaussians but not fully covariant Gaussians (anisotropic and rotated). 



R wrapper around the OMERO Java Gateway, to enable access to OMERO via R using rJava

has function
need a thumbnail



OpenImadis stands for Open Image Discovery: A platform for Image Life Cycle Management. It was previously called CID iManage (for Curie Image Database).

No image data conversions, no duplication.

- Uploads data to a secure server in the original format

- Unique id for data

Supports sharing and collaboration with access control

- Allows users to upload, view, update or download data based on their access privileges

Supports multiple ways of attaching meta-information

- Annotations, comments and file attachments

-Analysis results as query-able visual objects

Supports Archiving (data moving to another long-term storage but still searchable)

Facilitates custom visualization and analysis

- Access data from preferred analysis and visualization tools

- Access relevant bits of data to build efficient web and mobile application

Facilitate easy access to analysis and visualization applications hosted on other servers

- Run analysis on dedicated compute clusters

- Access applications hosted and published by other users

Highly Scalable

- Supports on-the-fly addition of server nodes to scale concurrent usage




Cell or particle Counting and scoring stained objects using CellProfiler


This is a Jupyter notebook demonstrating the run of a code from IDR data sets by loading a CellProfiler Pipeline 

The example here is applied on real data set, but does not correspond to a biological question. It aims to demonstrate how to create a jupyter notebook to process online plates hosted in the IDR.

It reads the plate images from the IDR.

It loads the CellProfiler Pipeline and replace the reading modules used to read local files from this defaults pipeline by module allowing to read data remotely accessible.

It creates a CSV file and displays it in the notebook.

It makes some plot with Matplotlib.





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.



Bioconductor provides tools for the analysis and comprehension of high-throughput genomic data. Bioconductor uses the R statistical programming language, and is open source and open development. It has two releases each year, 1560 software packages, and an active user community. Bioconductor is also available as an AMI (Amazon Machine Image) and a series of Docker images.

has function



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

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

has function
Galaxy imaging workflow