boa-contrast
Science Score: 57.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.3%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: UMEssen
- License: mit
- Language: Python
- Default Branch: main
- Size: 84.3 MB
Statistics
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 5
- Releases: 5
Metadata Files
README.md
# BOA::Contrast
Package to compute contrast information from a CT image, part of the BOA. The package uses the open-source software TotalSegmentator to compute segmentations of important anatomical landmarks, which are then used to create features for a machine learning model to predict the contrast information.
Citation
If you use this package, please cite the following paper:
Baldini G, Hosch R, Schmidt CS, et al. Addressing the Contrast Media Recognition Challenge: A Fully Automated Machine Learning Approach for Predicting Contrast Phases in CT Imaging. Invest Radiol. Published online March 4, 2024. doi:10.1097/RLI.0000000000001071
Install
bash
pip install boa-contrast
will install only the basic package (without the TotalSegmentator), if you also want to install the TotalSegmentator you can
bash
pip install "boa-contrast[totalsegmentator]"
However, the TotalSegmentator can also be used together with docker, and in such case it is not needed to install it.
Command Line
constrast-recognition --help
Once a CT and a folder where to store the TotalSegmentator segmentations is given, you can run it using the following command
contrast-recognition [-h] --ct-path CT_PATH --segmentation-folder SEGMENTATION_FOLDER [--docker] [--user-id USER_ID] [--device-id DEVICE_ID] [-v]
You can run it using docker by using the --docker flag. If you are using docker, you need to specify your user ID using the --user-id flag, otherwise you will have to change the ownership of the segmentations afterwards.
If you are using a GPU, you can specify the device ID using the --device-id flag.
You can enable verbosity with the -v flag.
To not download the TotalSegmentator weights all the time, you can specify their location using the TOTALSEG_WEIGHTS_PATH environment variable.
A sample output looks as follows:
IV Phase: NON_CONTRAST
Contrast in GIT: NO_CONTRAST_IN_GI_TRACT
From Python
Compute the segmentation with the TotalSegmentator with docker
```python from boacontrast import computesegmentation
computesegmentation( ctpath=..., # The path to the CT segmentationfolder=..., # The root where the segmentation should be stored deviceid=..., # The ID of the GPU device or -1 userid=..., # Your user ID for docker to run in user mode computewith_docker=False, # Whether to use docker or not ) ```
Once the segmentation is computed
```python from boa_contrast import predict
predict( ctpath=..., # path to the CT segmentationfolder=..., # path to this CT's segmentation ) ```
Output:
{
"phase_ensemble_prediction": 0,
"phase_ensemble_predicted_class": "NON_CONTRAST",
"phase_ensemble_probas": array(
[
9.89733540e-01,
3.60637282e-04,
4.79974664e-04,
5.55973168e-04,
8.86987492e-03,
]
),
"git_ensemble_prediction": 0,
"git_ensemble_predicted_class": "NO_CONTRAST_IN_GI_TRACT",
"git_ensemble_probas": array(
[
9.99951577e-01,
4.84187825e-05,
]
),
}
Owner
- Name: University Medicine Essen
- Login: UMEssen
- Kind: organization
- Repositories: 13
- Profile: https://github.com/UMEssen
Citation (CITATION.cff)
cff-version: 1.2.0
title: >-
BOA-Contrast: Contrast agent phase recognition in CT imaging using ML on generated features from public segmentation networks
message: 'If you use BOA-Contrast, please cite it as below.'
type: software
authors:
- family-names: Baldini
given-names: Giulia
orcid: 'https://orcid.org/0000-0002-5929-0271'
- family-names: Schmidt
given-names: Cynthia Sabrina
- family-names: Borys
given-names: Katarzyna
orcid: 'https://orcid.org/0000-0001-6987-6041'
- family-names: Kroll
given-names: Lennard
orcid: 'https://orcid.org/0000-0001-8102-6146'
- family-names: Koitka
given-names: Sven
orcid: 'https://orcid.org/0000-0001-9704-1180'
- family-names: Nensa
given-names: Felix
orcid: 'https://orcid.org/0000-0002-5811-7100'
- family-names: Hosch
given-names: René
orcid: 'https://orcid.org/0000-0003-1760-2342'
- family-names: Haubold
given-names: Johannes
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 5
- Total pull requests: 11
- Average time to close issues: 1 day
- Average time to close pull requests: 6 days
- Total issue authors: 1
- Total pull request authors: 2
- Average comments per issue: 0.2
- Average comments per pull request: 0.27
- Merged pull requests: 5
- Bot issues: 0
- Bot pull requests: 8
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- giuliabaldini (4)
Pull Request Authors
- dependabot[bot] (8)
- giuliabaldini (3)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 232 last-month
- Total dependent packages: 1
- Total dependent repositories: 0
- Total versions: 5
- Total maintainers: 2
pypi.org: boa-contrast
- Homepage: https://github.com/UMEssen/BOA-Contrast
- Documentation: https://boa-contrast.readthedocs.io/
- License: MIT
-
Latest release: 0.1.4
published over 2 years ago
Rankings
Maintainers (2)
Dependencies
- actions/checkout v3 composite
- actions/setup-python v3 composite
- actions/checkout v3 composite
- actions/setup-python v3 composite
- 114 dependencies
- black ^22.3.0 develop
- flake8 ^3.9.2 develop
- mypy ^0.981 develop
- pre-commit ^2.14.0 develop
- connected-components-3d ^3.10.2
- opencv-python ^4.5.5.64
- pandas ^1.5.2
- python ^3.8,<3.11
- scikit-image ^0.19.3
- scikit-learn ^1.1.2
- simpleitk ^2.2.0
- threadpoolctl ^3.1.0
- totalsegmentator 1.5.5