Skip to main content

Panoptic Quality (PQ) computation for binary masks.

Project description

PyPI version panoptica Documentation Status tests

panoptica

Computing instance-wise segmentation quality metrics for 2D and 3D semantic- and instance segmentation maps.

Features

The package provides three core modules:

  1. Instance Approximator: instance approximation algorithms to extract instances from semantic segmentation maps/model outputs.
  2. Instance Matcher: matches predicted instances with reference instances.
  3. Instance Evaluator: computes segmentation and detection quality metrics for pairs of predicted - and reference segmentation maps.

workflow_figure

Installation

With a Python 3.10+ environment, you can install panoptica from pypi.org

pip install panoptica

Use cases and tutorials

For tutorials featuring various use cases, see: BrainLesion/tutorials/panoptica

Semantic Segmentation Input

semantic_figure

Jupyter notebook tutorial

Although an instance-wise evaluation is highly relevant and desirable for many biomedical segmentation problems, they are still addressed as semantic segmentation problems due to the lack of appropriate instance labels.

This tutorial leverages all three modules of panoptica: instance approximation, -matching and -evaluation.

Unmatched Instances Input

unmatched_instance_figure

Jupyter notebook tutorial

It is a common issue that instance segmentation outputs feature good outlines but mismatched instance labels. For this case, the matcher module can be utilized to match instances and the evaluator to report metrics.

Matched Instances Input

matched_instance_figure

Jupyter notebook tutorial

If your predicted instances already match the reference instances, you can directly compute metrics using the evaluator module.

Citation

If you use panoptica in your research, please cite it to support the development!

Kofler, F., Möller, H., Buchner, J. A., de la Rosa, E., Ezhov, I., Rosier, M., Mekki, I., Shit, S., Negwer, M., Al-Maskari, R., Ertürk, A., Vinayahalingam, S., Isensee, F., Pati, S., Rueckert, D., Kirschke, J. S., Ehrlich, S. K., Reinke, A., Menze, B., Wiestler, B., & Piraud, M. (2023). Panoptica -- instance-wise evaluation of 3D semantic and instance segmentation maps. arXiv preprint arXiv:2312.02608.

@misc{kofler2023panoptica,
      title={Panoptica -- instance-wise evaluation of 3D semantic and instance segmentation maps}, 
      author={Florian Kofler and Hendrik Möller and Josef A. Buchner and Ezequiel de la Rosa and Ivan Ezhov and Marcel Rosier and Isra Mekki and Suprosanna Shit and Moritz Negwer and Rami Al-Maskari and Ali Ertürk and Shankeeth Vinayahalingam and Fabian Isensee and Sarthak Pati and Daniel Rueckert and Jan S. Kirschke and Stefan K. Ehrlich and Annika Reinke and Bjoern Menze and Benedikt Wiestler and Marie Piraud},
      year={2023},
      eprint={2312.02608},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

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

panoptica-0.6.4-py3-none-any.whl (32.2 kB view details)

Uploaded Python 3

File details

Details for the file panoptica-0.6.4-py3-none-any.whl.

File metadata

  • Download URL: panoptica-0.6.4-py3-none-any.whl
  • Upload date:
  • Size: 32.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for panoptica-0.6.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2d940bceba78b61f2c5a26a7c5ef7653a01d832be5d43548fffb421a5a73e0f2
MD5 2564ed6f48c060ac727018b1f4993c4b
BLAKE2b-256 ceaac3da4ceb9b33acc2f6fff9f6a59de46093242e9e70056072bd3f65b05897

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 Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page