Segmentazione 3D della milza su volumi CT con MONAI e UNet

Segmentazione 3D della milza con MONAI e UNet su volumi CT medici

Questo tutorial mostra come costruire una pipeline di segmentazione 3D per immagini mediche usando MONAI e un modello 3D UNet, applicata alla segmentazione della milza sul dataset Medical Segmentation Decathlon Task09. Si parte da volumi CT grezzi e si arriva a un sistema completo di training, validazione e visualizzazione.

Il flusso di lavoro include trasformazioni specifiche per imaging medico: allineamento dell’orientamento, normalizzazione dello spaziatura dei voxel, windowing dell’intensità, cropping del foreground e campionamento a patch. Il modello viene addestrato con DiceCELoss, mixed precision training e sliding-window inference per la validazione.

Si utilizza il dataset DecathlonDataset di MONAI per caricare e suddividere i dati in training e validazione. Le trasformazioni per il training includono random crop con bilanciamento positivo/negativo, flip, rotazioni e shift di intensità. Il modello è un UNet 3D con 4 livelli di profondità, normalizzazione instance e attivazione LeakyReLU.

L’addestramento utilizza l’ottimizzatore AdamW con learning rate 1e-4 e cosine annealing scheduler. La metrica principale è il Dice score, calcolato escludendo lo sfondo. Il miglior checkpoint viene salvato in base al Dice score di validazione.

Alla fine, si visualizzano l’andamento della loss e del Dice score, e si confrontano le predizioni del modello con le ground truth su una slice rappresentativa del volume CT.

Articoli simili