Software tools and algorithms for biological imaging

In time-lapse microscopy, images of growing cells are captured over a period of time, allowing biological systems to be observed. Additionally, molecular biology can be used to fluorescently label subcellular components such as proteins and genes, allowing their function to be quantified. This results in data-rich images that contain information at multiple resolution levels (subcellular, single cells, to whole colonies or tissue structure). The challenge faced by most biology researchers is to extract this information in an accurate and efficient manner. This usually requires time-intensive manual annotation, which can be affected by experimenter bias, or requires technical programming knowledge, which is often not acquired in biology programs.

The solution

Example of cell tracking. (Left) Brightfield image formed by light transmitted through the sample. (Right) Output of the cell tracking algorithm. Pixels which belong within a cell are labeled white. Individual numbers indicate the unique IDs used to identify cells in further analysis.

My research aims to solve these issues by developing software for biological image analysis. I have worked with scientists and engineers working on projects which require custom analysis pipelines to be developed, for example to identify complicated cell shapes, parse through complex data, or to develop visualizations that effectively describe the data. Most of these software tools are available here.


One of my current goals is to build software that is easily usable by biology and biomedical researchers, without the need for extensive computing knowledge. Doing so, I hope to enable new biological discoveries, while tackling contemporary issues such as reproducibility of scientific analysis and big data analysis.

Research interests

  • Machine learning approaches for object identification and data classification
  • Large-scale data analysis of imaging datasets
  • Reproducibility and documentation of image analysis pipelines
  • Combining data from different experiments into multi-dimensional databases