AortaExplorer can segment and analyse the human aorta in CT scans.
Project description
AortaExplorer
UNDER CONSTRUCTION
An open source tool for accurate segmentation of the aorta in 3D computed tomography scans.
Highlights:
- Based on the excellent work of the TotalSegmentator team.
- Supports contrast-enhanced CT scans with a variety of scan field-of-views (FOV).
- Automatically computes the following measurements of the aorta:
- Cross sectional lumen areas in aorta segments defined by the European society of cardiology (ESC).
- Vessel tortuosity of the different aorta segments.
- Diameter measurements
- Aorta diameters have been validated against a large (10.000+) population with manual annotations.
- Tortuosity measures on a large population (10.000+) are consistent with previously reported results.
- Automatically determines scan field-of-view (FOV)
- Has been validated on a series of open source data sets
- Provides an experimental and non-validated calcification visualization.
- Generates visualizations for easy validation of outputs.
- Designed as a research tool for population studies.
Note: This is not a medical device and is not intended for clinical usage. It is meant for research purposes and explorative analysis of the human aorta.
It is based on work done at DTU Compute and the Cardiovascular Research Unit, Rigshospitalet, Copenhagen, Denmark
Please cite this paper if you use AortaExplorer (coming, in revision)
@article{tbd25,
author = "Rasmus R. Paulsen and Linnea Hjordt Juul and Michael Huy Cuong Pham and J{\o}rgen Tobias K{\"u}hl and Klaus Fuglsang Kofoed and Kristine Aavild S{\o}rensen and Josefine Vilsb{\o}ll Sundgaard",
title = "AortaExplorer: AI-driven analysis of the aorta in CT images",
journal = "TBD",
year = 2025,
volume = "TBD",
number = "TBD",
pages = "1--10"
}
Please also cite the TotalSegmentator paper since AortaExplorer is heavily dependent on it.
Installation
AortaExplorer has been tested on Ubuntu Linux and Windows but should work on most systems. The GPU usage is limited to the TotalSegmentator segmentation tasks and you can see the requirements here.
The installation requires a few steps:
- Create and activate an environment. e.g a conda environment
conda create -n AortaExplorerEnv python=3.13
conda activate AortaExplorerEnv
-
Install PyTorch. Choose the cuda version that matches with what you have available for your GPU
-
Install AortaExplorer
pip install AortaExplorer
- Install the TotalSegmentator license. AortaExplorer is dependent on the
heartchambers_highressubtask and you need to obtain the license and install the license key.
Usage
AortaExplorer can process:
- single NIFTI files
- a folder with NIFTI files
- a text file with NIFTI file names.
- single NRRD files
- a folder with NRRD files
- a text file with NRRD file names.
- single DICOM folders
- folder with DICOM folders
- a text file with DICOM folder names (full path needed)
AortaExplorer -i /data/aorta/aorta_scan.nii.gz -o /data/aorta/AortaExplorerOutput/
Will process the NIFTI file aorta_scan.nii.gz and create a sub-folder with results in the specified output folder /data/aorta/AortaExplorerOutput/.
If the input is a folder, it will process all .nii.gz and .nii files in that folder. If the input is the name of a text file, it will process all files (specified with full path names) listed in the text file. Note when processing several files, they all need to have unique base names, since the output will named according to this.
Expected processing time: AortaExplore is not optimized for speed. On a standard PC (October 2025) the processing time is between 5 and 15 minutes per scan. However, it can process several scans simultanously using multiprocessing and it scales well with the number of cores. The main speed bottleneck is our heavy use of Euclidean Distance Functions (EDT) that might be optimized quite a lot.
Outputs
AortaExplorer main outputs are:
- CSV file with the aortic measurements. It is called
AortaExplorer_measurements.csvand will be placed in the specified output folder. One row per input file. - Visualizations of the results placed in a sub-folder called
all_visualizations. - A log file with potential errors and warnings placed in the specified output folder.
If you can not find your expected measurements in the CSV file, you should check the log file to see if there are any reported errors.
NOTE: AortaExplorer is not a diagnostic tool and does not check for aortic pathologies like aneurysms.
Advanced settings
The AortaExplorer commandline accept a set of arguments:
--device: Choosecpuorgpuorgpu:X (e.g., gpu:1 -> cuda:1)see TotalSegmentor for details--image-x-size: Visualization image x-side length (default 1920).--image-y-size: Visualization image y-side length (default 1080).
See here for the total set of command line parameters.
Python API
AortaExplorer can be used as a Python API. For Example:
from aortaexplorer.python_api import aortaexplorer, get_default_parameters
def test_aortaexplorer():
params = get_default_parameters()
input_file = "/data/aorta/aorta_scan.nii.gz"
output_folder = "/data/aorta/AortaExplorerOutput/"
device = "gpu"
verbose = True
quiet = False
success = aortaexplorer(input_file, output_folder, params, device=device, verbose=verbose, quiet=quiet)
assert success, "AortaExplorer failed to run successfully"
if __name__ == "__main__":
test_aortaexplorer()
The params is a dictionary, where the individual values can be changed before the call to aortaexplorer. The parameters can be seen here.
Aortic segments and measurements
AortaExplorer computes aortic segments based on the ESC standard. This is illustrated here:
From these, the following cross sectional areas and diameters are computed:
TotalSegmentator aorta segmentations and lumen segmentations
TotalSegmentor has been trained on a CT dataset with 1228 cases. It seems that the aorta groundtruth annotations cover both lumen (the part of the aorta where blood flows), the aortic wall and also potentioal aortic aneurysmic sacs. For population studies, it is valuable to have the diameters of the pure lumen. AortaExplorer computes exactly that. Having both the TotalSegmentator segmentation and the AortaExplorer lumen segmentations potentially opens up for identification of pathological cases.
Scan FOV cases and handling
CT scanning protocols are typically tailored to clinical examination or research protocols. It is common that the aorta might be cropped due to limited field-of-view (FOV) of the scan protocol. We provide a description of FOV cases that we have encountered.
AortaExplorer automatically detects a majority of these FOV cases. Currently, we only do full analysis of these cases:
- CASE 1: Full aorta : The entire aorta can be seen in the scan.
- CASE 2: Abdominal : The lower part of the aorta and the top of the iliac arteries are visible.
- CASE 5: Cardiac: A typical cardiac scan, where the aorta is split into an ascending and a descending part.
If need arises, we might extend the analysis to other scan FOV cases.
Error handling and pathological cases
AortaExplorer includes a large range of checks for the validity and type of scan. It tries to determine the scan FOV case and only continues on the cases described above. There is also a range of checks on Hounsfield value distributions. If the processing fails, the log file should be inspected for the cause.
Example visualizations
Visualization of a full (type 1) aorta:
Visualization of an abdominal (type 2) aorta:
Visualization of cardiac (type 5) aorta:
AortaExplorer on public datasets
If you want to try the tool, there are some public data sets available, with aorta ground truth labels.
- AortaSeg24 Contains 100 cases where many have aortic dissections
- The Aortic Vessel Tree (AVT) CTA Datasets Contains 56 mostly healthy cases
- CIS-UNet Contains 59 cases where many have aortic dissections
- TotalSegmentator The training data for TotalSegmentator
Relevant references
- 2014 ESC Guidelines on the diagnosis and treatment of aortic diseases. European Heart Journal (2014) 35, 2873–2926
- MHC Pham et al. Normal values of aortic dimensions assessed by multidetector computed tomography in the Copenhagen General Population Study. European Heart Journal-Cardiovascular Imaging, 2019.
- Goldstein, Steven A., et al. Multimodality imaging of diseases of the thoracic aorta in adults: from the American Society of Echocardiography and the European Association of Cardiovascular Imaging: endorsed by the Society of Cardiovascular Computed Tomography and Society for Cardiovascular Magnetic Resonance. Journal of the American Society of Echocardiography 28.2 (2015): 119-182.
Project details
Release history Release notifications | RSS feed
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aortaexplorer-0.1.6.tar.gz.
File metadata
- Download URL: aortaexplorer-0.1.6.tar.gz
- Upload date:
- Size: 88.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc313f001046913e22cf15bba6e0c4a4a2e1d35b5abb5482b5d4a64873d9d350
|
|
| MD5 |
3f511301017a3220f6e7cf9d80da89a7
|
|
| BLAKE2b-256 |
03c16bb76b9303f96aa5c96937327724141af11319c55b9aa048e7906848bb87
|
File details
Details for the file aortaexplorer-0.1.6-py3-none-any.whl.
File metadata
- Download URL: aortaexplorer-0.1.6-py3-none-any.whl
- Upload date:
- Size: 90.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69e7f2aa54d81a809b1155a1372402327e0d841e127991c7a0495c0184b90bd6
|
|
| MD5 |
b0044bd3534bc68e570eb36f9fd33536
|
|
| BLAKE2b-256 |
479d361571e28f166b9188a6362072e9fdeb37011254484c21aeece2a383004b
|