No project description provided
Project description
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.
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.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6963608840c81c913d1f8d78a209be8f44d9c0f870a368a6f89706ebd7dcf4d |
|
MD5 | ddcb3d148290c8ba274fff318e61b604 |
|
BLAKE2b-256 | 10a9473030adf023015c6dd2e620c0e345718f62a717581188f889388930e06d |