Skip to content
Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time

Project status pyOpenSci Windows build Linux build OSX build Coverage Style
Project Status: Active pyOpenSci Build status Build Status none Coverage Status Code style

Author: Moritz Lürig
License: LGPL
Citation: Lürig, M. D. (2021). phenopype: a phenotyping pipeline for Python. bioRxiv, 2021.03.17.435781. doi:10.1101/2021.03.17.435781.

What is phenopype?

phenopype is a high throughput phenotyping pipeline for Python to support ecologists and evolutionary biologists in extracting high dimensional phenotypic data from digital images. phenopype integrates state-of-the-art computer vision functions (using opencv-python as the main backbone), the possibility for GUI-based interactions and a project management ecosystem to facilitate rapid data collection and reproducibility.

Why phenopype

phenopype is aiming to augment, rather than replace the utility of existing CV libraries for scientists measuring phenotypes. Put differently, phenopype does not intend to be an exhaustive library of granular image processing functions, like OpenCV, scikit-image or ImageJ, but instead, it is a set of wrappers and convenient management tools to allow biologists to get their data fast without having to fiddle with too much code.

Main features

(For a complete list check the API reference)

  • image analysis workflow:
    • preprocessing (automatic reference detection, colour and size correction, morphology operations)
    • segmentation (thresholding, watershed, contour-filtering, foreground-background subtraction)
    • measurement (pixel intensities, landmarks, shape features, texture features)
    • visualization and export
    • video analysis module for object tracking
  • project management tools to organize images and data (automatic creation of project directory tree)
  • customizable analysis-templates that allow anyone to reproduce all collected data with only a few lines of code (suitable for repositories like Dryad or OSF).

Getting started

  1. Read the Installation Instructions
  2. Download and run the Tutorials
  3. Have a look at the Examples

Important information

  • phenopype currently does not work on macOS, as there are several issues with OpenCV's HighGUI module, as documented here and here - any help in making phenopype usable for macOS is most welcome !
  • phenopype is currently undergoing review at pyOpenSci. In the process, phenopype was updated to version 2 which is not compatible with previous versions - read the instructions for installing past versions


The full Documentation can be found here:

Contributions and feedback

Phenopype development is an ongoing process and contributions towards making it a more broadly applicable and user-friendly tool are most welcome. This can be in the form of feature requests (e.g. more functions from the OpenCV library) or by reporting bugs via the issue tracker. You can also get in touch with me directly if you have any suggestions for improvement.

How to cite phenopype

  title    = "phenopype: a phenotyping pipeline for Python",
  author   = "L{\"u}rig, Moritz D",
  journal  = "bioRxiv",
  pages    = "2021.03.17.435781",
  month    =  mar,
  year     =  2021,
  language = "en",
  doi      = "10.1101/2021.03.17.435781"


a phenotyping pipeline for Python




No packages published