Metadata-Version: 2.5
Name: bioimageflow-measurement-tools
Version: 0.2.0
Summary: Lightweight measurement tools for BioImageFlow
Project-URL: Homepage, https://github.com/Inria-SAIRPICO/bioimageflow
Project-URL: Documentation, https://bioimageflow.readthedocs.io/latest/
Project-URL: Repository, https://github.com/Inria-SAIRPICO/bioimageflow
Project-URL: Issues, https://github.com/Inria-SAIRPICO/bioimageflow/issues
Author: BioImageFlow Contributors
License-Expression: BSD-4-Clause
License-File: LICENSE
Keywords: bioimage-analysis,bioimageflow,microscopy,workflow
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Image Processing
Requires-Python: >=3.10
Requires-Dist: bioimageflow-core<0.4,>=0.3.0
Requires-Dist: bioimageflow<1,>=0.1.6
Requires-Dist: imageio>=2.31.0
Requires-Dist: numpy>=1.23.5
Requires-Dist: pandas>=2.0.0
Description-Content-Type: text/markdown

# bioimageflow-measurement-tools

Optional BioImageFlow package for object measurements, label counting, table summaries, and segmentation benchmark metrics.

Worker-side image tools use imageio, NumPy, and scikit-image through BioImageFlow's general environment.
Main-process table tools use pandas and the `DataFrameTool` API.
The two tool families live in separate modules so worker imports never depend on the orchestrator package.

Label inputs must be finite, non-negative, integer-valued 2D rasters; `0` is background.
Table tools reject empty or duplicate selections, nonnumeric selected values, and output-name collisions.

## Tools

- `RegionProperties`
- `ShapeProperties`
- `IntensityProperties`
- `CountLabels`
- `SummarizeTable`
- `LabelBenchmark`
- `ObjectMatchingMetrics`
- `DiceIoU`
- `AggregatePerImage`
- `NormalizeFeatures`

## Tests

Run package tests with:

```bash
uv run pytest packages/bioimageflow-measurement-tools/tests
```

The tests use generated label images, intensity images, and tables with exact expected values.
Public-data workflow tests should assert stable ranges rather than commit large datasets.
