Metadata-Version: 2.4
Name: zedprofiler
Version: 0.0.1
Summary: CPU-first handcrafted 3D featurization toolkit for high-throughput profiling
Author: Your NameWay Lab
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.13
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: beartype>=0.19
Requires-Dist: bioio>=3.3
Requires-Dist: bioio-tifffile>=1.3
Requires-Dist: fire>=0.7.1
Requires-Dist: jinja2>=3.1.6
Requires-Dist: mahotas>=1.4.18
Requires-Dist: matplotlib>=3.10.9
Requires-Dist: pandas>=3.0.2
Requires-Dist: pandera>=0.31.1
Requires-Dist: pyarrow>=23.0.1
Requires-Dist: pydantic>=2.10
Requires-Dist: scikit-image>=0.26
Requires-Dist: sphinx-conestack-theme>=1.1.1
Requires-Dist: sphinx-rtd-theme>=3.1
Requires-Dist: tomli>=2.4.1
Dynamic: license-file

# ZEDprofiler [![Documentation](https://img.shields.io/badge/documentation-available-brightgreen)](https://zedprofiler.readthedocs.io/en/latest/) ![License](https://img.shields.io/badge/license-BSD%203--Clause-blue)[![Coverage](https://img.shields.io/badge/coverage-92%25-brightgreen)](#quality-gates)

[![ZEDprofiler](https://github.com/WayScience/ZEDprofiler/raw/main/logo/with-text-for-dark-bg.png)](https://github.com/WayScience/ZEDprofiler)

CPU-first 3D image feature extraction toolkit for high-content and high-throughput image-based profiling.

This repository is used for image-based feature extraction of objects in 3D microscopy images.
In this use case we extract features from single cells in 3D volumetric microscopy images.
We developed ZEDprofiler to be used on high-content and high-throughput microscopy images, which are often large in size and require efficient processing.
ZEDprofiler is extensible to any fluorescence microscopy image modality, and is designed to be modular.

## Install environment

```bash
just env
```

## Data Contract

Where:

- `x` is the width of the image in pixels
- `y` is the height of the image in pixels
- `z` is the depth of the image in pixels

Though I have reservations about width, height, and depth being used to describe the dimensions of an image.
Different fields use different dimensions for different meanings.
We use `x` and `y` to refer to the same dimensions captured in a 2D image, and `z` to refer to the "depth" dimension in a 3D image if looking down into the image stack.
The `x`, `y`, and `z` dimensions are less description and more absolute while `depth` is relative to angle of observation.

Accepted image formats (order matters):

- Single channel: `(z, y, x)`

## Quality Gates

We lint and format code with our pre-commit configuration.
