autods_pet.roi.aorta_mbp#
Aorta metabolic blood pool (MBP): mask refinement and PET statistics.
Extracts the aorta from TotalSegmentator, restricts it to a vertebral slab via slice gating, excludes heart spill-in, erodes intraluminally.
- class autods_pet.roi.aorta_mbp.AortaMBP(vertebra_labels=None, slab_axis=2, heart_exclusion_mode='dilate_intersection', heart_dilation_mm=6.0, heart_distance_mm=12.0, aorta_erosion_mm=4.0, stats=None)[source]#
Bases:
objectAorta metabolic blood pool (MBP) extraction and refinement.
- Parameters:
vertebra_labels (
list[int] |None(default:None)) – Labels for the vertebral slab. Defaults to T4-T8.slab_axis (
int(default:2)) – SimpleITK index axis for slice gating (0=x, 1=y, 2=z).heart_exclusion_mode (
str(default:'dilate_intersection')) –"dilate_intersection"or"distance".heart_dilation_mm (
float(default:6.0)) – Dilation radius for heart buffer (mode"dilate_intersection").heart_distance_mm (
float(default:12.0)) – Distance threshold (mode"distance").aorta_erosion_mm (
float(default:4.0)) – Intraluminal erosion radius in mm.stats (
list[str] |None(default:None)) – Statistics to compute. Defaults to["median"].
- refine(whole_seg)[source]#
Refine TotalSegmentator aorta into a thoracic intraluminal MBP mask.
Pipeline: extract aorta label -> slice-gate by T4-T8 vertebral slab -> exclude heart buffer -> erode intraluminally -> keep largest component.
- Parameters:
whole_seg (
Image) – TotalSegmentator multilabel segmentation (must include aorta, heart, and vertebra labels).- Returns:
Result with
refined_maskandshrinkagepopulated.- Return type:
- extract(whole_seg, pet)[source]#
Refine mask and compute PET statistics in one call.
- Parameters:
whole_seg (
Image) – TotalSegmentator multilabel segmentation.pet (
Image) – PET SUV image (must share geometry with whole_seg).
- Returns:
Result with
refined_mask,shrinkage, andstatspopulated.- Return type:
- Raises:
ValueError – If whole_seg and pet have mismatched geometry.