Skip to main content

A phenotyping pipeline for python

Project description

Code review Windows Linux OSX Code coverage Code Style
pyOpenSci Build status soon to come none Coverage Status Code style

Author: Moritz Lürig
License: LGPL
Homepage www.phenopype.org
Publication https://doi.org/10.1111/2041-210x.13771


What is phenopype?

phenopype is a Python package to rapidly extract high dimensional phenotypic data from digital images. At the core, phenopype provides a project management ecosystem for large image datasets, signal processing based segmentation and data extraction routines, and the possibility to export the processed data in various formats - e.g. for direct analysis (csv - e.g. landmarks, coordinates, etc.), or for further processing in other machine learning pipelines (json - e.g. segmentation masks).

Why phenopype

phenopype is aiming to augment, rather than replace the utility of existing CV low level libraries for scientists who want to extract phenotypic data from images. 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.

Who uses phenopype?

phenopype is intended for ecologists and evolutionary biologists with "laboratory grade" images, which, for example, contain specimens that have been photographed against a standardized background. It is also useful for anyone interested in building a robust training dataset for deep learning models: with phenopype segmentation masks can be created semi-automatically (instead of annotating the images by hand), and, in the process, phenotypic data can already by extracted and evaluated.


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 (various options) and export (csv, json, ROI images, ...)
    • 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).


Quickstart

https://www.phenopype.org/docs/quickstart/

Documentation

https://www.phenopype.org/docs/

Vignette gallery

https://www.phenopype.org/gallery/

Contributions and feedback

phenopype development is ongoing and contributions towards making it more broadly applicable and user-friendly 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 would like to contribute code - in that case, please have a look at the API.

How to cite phenopype

Lürig, M. D. (2021). phenopype : A phenotyping pipeline for Python. Methods in Ecology and Evolution. https://doi.org/10.1111/2041-210x.13771

@ARTICLE{Lurig2022-pb,
  title     = "phenopype : A phenotyping pipeline for Python",
  author    = "L{\"u}rig, Moritz D",
  journal   = "Methods in ecology and evolution / British Ecological Society",
  publisher = "Wiley",
  volume    =  13,
  number    =  3,
  pages     = "569--576",
  month     =  mar,
  year      =  2022,
  copyright = "http://creativecommons.org/licenses/by-nc/4.0/",
  language  = "en",
  issn      = "2041-210X",
  doi       = "10.1111/2041-210x.13771"
}

Project details


Download files

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

Source Distribution

phenopype-5.0.3.tar.gz (115.2 kB view details)

Uploaded Source

Built Distribution

phenopype-5.0.3-py3-none-any.whl (123.3 kB view details)

Uploaded Python 3

File details

Details for the file phenopype-5.0.3.tar.gz.

File metadata

  • Download URL: phenopype-5.0.3.tar.gz
  • Upload date:
  • Size: 115.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for phenopype-5.0.3.tar.gz
Algorithm Hash digest
SHA256 e15e9faceca9d7da1a236c5ec6ab30e9ed0ccad61fe4217105e81a9183109704
MD5 40542cfe945c0cd62cc5d306e8e5ce40
BLAKE2b-256 6654308c9bfd73dc3f414e25563b24e67c6ac0cfe850fcb18568515dbb08f5d7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: phenopype-5.0.3-py3-none-any.whl
  • Upload date:
  • Size: 123.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for phenopype-5.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 032b0b35f8731285361a5617b17f7d71c8e496b6c0bb872533d3216fa427c8e4
MD5 fab161641bd67d474a24fa9dc982b96e
BLAKE2b-256 f5dd32bc8a2cf9f8f6d5ca72174f2a2ba7e123c947e1a9313ab438769e436f76

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