No project description provided
Project description
BOA::Contrast
Package to compute contrast information from a CT image, part of the BOA (soon online!). 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.
Install
pip install boa-contrast
will install only the basic package (without the TotalSegmentator), if you also want to install the TotalSegmentator you can
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
from boa_contrast import compute_segmentation
compute_segmentation(
ct_path=..., # The path to the CT
segmentation_folder=..., # The root where the segmentation should be stored
device_id=..., # The ID of the GPU device or -1
user_id=..., # Your user ID for docker to run in user mode
compute_with_docker=False, # Whether to use docker or not
)
Once the segmentation is computed
from boa_contrast import predict
predict(
ct_path=..., # path to the CT
segmentation_folder=..., # 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,
]
),
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for boa_contrast-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2334601cb86237335fa3ca6d2ded75aaf925f0f08149c7d39e7d649dbab8203 |
|
MD5 | ff232bb6023a7459504fac95cbca5cda |
|
BLAKE2b-256 | 4d8bdf399a0983064af964bef16026d17ac1dd4d17990494689d0b38906520db |