Skip to main content

Deep Quality Estimation

Python Versions Stable Version Documentation Status tests codecov License

Quality prediction for brain tumor segmentation on a scale ranging from ⭐ 1 star to ⭐⭐⭐⭐⭐⭐ 6 stars inspired by the paper Deep Quality Estimation: Creating Surrogate Models for Human Quality Ratings.
This can be used to estimate the quality of a BraTS glioma segmentation for evaluation purposes or, e.g., as part of a loss function during model training.

Important notes

[!IMPORTANT]
This package expects images in atlas space and segmentation labels in brats style, i.e.

  • label 1 is the necrotic and non-enhancing tumor core
  • label 2 is the peritumoral edema
  • label 3 is the GD-enhancing tumor (used to be label 4 in older data; both are supported)

[!NOTE] The model in this package differs from the one presented in the paper.
Unlike the original model it is trained based on individual radiologists' ratings enabling it to learn the variance between radiologists' estimates.
It outperforms the model presented in the paper on the test set.

[!CAUTION] The model is biased to overestimate segmentation quality as it was mainly trained on high-quality segmentations and was exposed to only a few bad samples. We still argue that high scores can be useful.

Installation

With a Python 3.9+ environment, you can install deep_quality_estimation directly from PyPI:

pip install deep_quality_estimation

Use Cases and Tutorials

A minimal example to predict the quality of a segmentation could look like this:

from deep_quality_estimation import DQE

# shown parameters are default values but can be adapted to usecase
dqe = DQE(device="cuda", cuda_devices="0") 

# inputs can be Paths (str or pathlib.Path object), NumPy NDArrays or a mix
mean_score, scores_per_view = dqe.predict(
    t1c="t1c.nii.gz",
    t1="t1.nii.gz",
    t2="t2.nii.gz",
    flair="flair.nii.gz",
    segmentation="segmentation.nii.gz",
)

Citation

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

https://arxiv.org/abs/2205.10355

@misc{kofler2022deepqualityestimationcreating,
      title={Deep Quality Estimation: Creating Surrogate Models for Human Quality Ratings}, 
      author={Florian Kofler and Ivan Ezhov and Lucas Fidon and Izabela Horvath and Ezequiel de la Rosa and John LaMaster and Hongwei Li and Tom Finck and Suprosanna Shit and Johannes Paetzold and Spyridon Bakas and Marie Piraud and Jan Kirschke and Tom Vercauteren and Claus Zimmer and Benedikt Wiestler and Bjoern Menze},
      year={2022},
      eprint={2205.10355},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2205.10355}, 
}

Contributing

We welcome all kinds of contributions from the community!

Reporting Bugs, Feature Requests and Questions

Please open a new issue here.

Code contributions

Nice to have you on board! Please have a look at our CONTRIBUTING.md file.

Metadata

Release files for deep-quality-estimation 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for deep-quality-estimation 0.0.3
File Interpreter ABI Platform
deep_quality_estimation-0.0.3-py3-none-any.whl Python 3 none any Details

Release files / deep_quality_estimation-0.0.3-py3-none-any.whl

Download URL deep_quality_estimation-0.0.3-py3-none-any.whl
Size 26.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
af8b01ca3c1cc49d6ed56a2698635ada54023578621534d57b94269d68d5255f
BLAKE2b-256 checksum
How to use checksums
f192460b3ce6751a3703bef421d72489bc4f0d556e9f1a129b6441df0bf73a44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release history Release notifications | RSS feed

This release

0.0.3 This release

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page