Skip to main content

a phenotyping pipeline for python

Project description

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

Documentation

The full Documentation can be found here: https://mluerig.github.io/phenopype/

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

@UNPUBLISHED{Lurig2021-ff,
  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"
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

phenopype-2.1.0-py3-none-any.whl (78.2 kB view details)

Uploaded Python 3

File details

Details for the file phenopype-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: phenopype-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 78.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

File hashes

Hashes for phenopype-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9550c7a9d174e5d0efd3c89b11ef95caa408e2c8ea096f2632cee3ec5ae364da
MD5 165177ec2c0d06cf4b31f2334591b7b8
BLAKE2b-256 6f89e7f48e59672f747e0d83abcac4f4c77b785dcb001da788fc7e70cdf1512c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page