Skip to main content

An image processing framework created for Ex-FAB NSF BioFoundry that aims to streamline the development of image processing pipelines for images analysis of phenotypes.

Project description

Phenotypic Logo

PhenoTypic: A Python Framework for Bio-Image Analysis

Development Status

A modular image processing framework developed at the NSF Ex-FAB BioFoundry, focused on arrayed colony phenotyping on solid media.


Links:

docs

exfab

Overview

PhenoTypic provides a modular toolkit designed to simplify and accelerate the development of reusable bio-image analysis pipelines. PhenoTypic provides bio-image analysis tools built-in, but has a streamlined development method to integrate new tools.

Installation

uv (recommended)

See more on installing uv

Regular Install (recommended when deploying on a cluster)

uv pip install phenotypic

Interactive / GUI Install (napari viewer, Panel dashboards, Jupyter)

uv pip install "phenotypic[gui]"

Pip

Regular Install

pip install phenotypic

Interactive / GUI Install

pip install "phenotypic[gui]"

Note: may not always be the latest version. Install from repo when latest update is needed

Manual Installation (For latest updates)

git clone https://github.com/exfab/PhenoTypic.git
cd PhenoTypic
uv sync

Dev Installation

For extending PhenoTypic.

git clone https://github.com/exfab/PhenoTypic.git
cd PhenoTypic
uv sync --group dev

GPU-Accelerated Detection (SAM2, micro-sam)

PhenoTypic ships optional deep-learning detectors backed by Meta's Segment Anything Model 2 and micro-sam.

  • SAM2 is available on PyPI and ships in the torch extra:

    uv pip install "phenotypic[torch]"   # Linux/macOS only
    
  • micro-sam is only published on conda-forge (not PyPI), so it is not bundled with any phenotypic extra. If you need MicroSamDetector, see the "Enabling micro_sam" section of the GPU Detection Setup guide for a user-side pixi.toml that installs phenotypic and micro_sam together in a single environment. MicroSamDetector remains importable without micro_sam installed; the ImportError is deferred to the first apply() call.

See GPU Detection Setup for model downloads and SLURM deployment instructions.

Optional Installation

To extract metadata from raw images, PhenoTypic uses the PyExifTool module. This requires an external software called ExifTool. You can install ExifTool here: https://exiftool.org/install.html. If you don't use it, some metadata from raw files may not be able to be imported. Read more here: https://pypi.org/project/PyExifTool/#pyexiftool-dependencies

Module Overview

Module Description
phenotypic.analysis Tools for downstream analysis of the data from phenotypic in various ways such as growth modeling or statistical filtering
phenotypic.correction Different methods to improve the data quality of an image such as rotation to improve grid finding
phenotypic.data Sample images to experiment your workflow with
phenotypic.detect A suite of operations to automatically detect objects in your images
phenotypic.enhance Preprocessing tools that alter a copy of your image and can improve the results of the detection algorithms
phenotypic.grid Modules that rely on grid and object information to function
phenotypic.measure The various measurements PhenoTypic is capable of extracting from objects
phenotypic.nn GPU-accelerated detectors (SAM2, micro-sam) with checkpoint management — see setup guide
phenotypic.refine Different tools to edit the detected objects such as morphology, relabeling, joining, or removing
phenotypic.prefab Various premade image processing pipelines that are in use at ExFAB

Sponsors

Phenotypic Logo

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

phenotypic-0.14.0b4.tar.gz (3.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phenotypic-0.14.0b4-py3-none-any.whl (3.2 MB view details)

Uploaded Python 3

File details

Details for the file phenotypic-0.14.0b4.tar.gz.

File metadata

  • Download URL: phenotypic-0.14.0b4.tar.gz
  • Upload date:
  • Size: 3.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for phenotypic-0.14.0b4.tar.gz
Algorithm Hash digest
SHA256 5bd01bac23889de1d1d7a25a03acddfc99aed0a6cd6b7fb2175c5ce4123b6b3e
MD5 779bc96843cb4acd668a5a03ba9bb368
BLAKE2b-256 62aa33aaf71bdf0284d45987ea016d5f6a3568057964b2d9bfec5b2360b22e5f

See more details on using hashes here.

File details

Details for the file phenotypic-0.14.0b4-py3-none-any.whl.

File metadata

  • Download URL: phenotypic-0.14.0b4-py3-none-any.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for phenotypic-0.14.0b4-py3-none-any.whl
Algorithm Hash digest
SHA256 fcbdff9db132915e701d62656133773c5b97a304c679e1b8e407234fcb1919d0
MD5 4b1e77ff766bdcd9c8fd4cd79ddce0c1
BLAKE2b-256 81bf5552085e16a9482ecd3f32b9d0d9832917ae1c6eb9b0de56ff6d5fc5bf89

See more details on using hashes here.

Supported by

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