1 of 52

TEMA D’ANNO IN �SISTEMI DIAGNOSTICI TERAPEUTICI ASSISTENZIALI

Segmentazione semiautomatica di sotto-regioni tumorali nel

Neuroimaging strutturale

Docenti:

Prof. Ing. Vitoantonio BEVILACQUA, Ph.D.

Ing. Antonio BRUNETTI, Ph.D.

​

Studentesse:

Chiara Bungaro

Alessandra Algieri

​

Dipartimento di Ingegneria Elettrica e dell’Informazione

�CORSO DI LAUREA MAGISTRALE IN INGEGNERIA DEI SISTEMI MEDICALI

Politecnico di Bari

Anno Accademico 2020/2021

2 of 52

Introduction

  • Un tumore cerebrale è sostanzialmente la crescita di una massa di cellule anomale nel cervello. Questi tumori possono essere benigni, ovvero non cancerosi, o maligni, contenenti cellule cancerogene con una crescita molto rapida.
  • Alcuni tumori sono primari, vale a dire che hanno origine proprio nel cervello; altri, invece, compaiono originariamente in un’altra zona del corpo e per metastasi arrivano al cervello.
  • La velocità con la quale un tumore cerebrale cresce e progredisce varia in funzione del tipo e della persona. La sua velocità di crescita e ubicazione, inoltre, determinano in che modo esso colpirà il sistema nervoso.

3 of 52

Glioblastoma Multiforme

  • Il glioblastoma multiforme (GBM) è il tumore cerebrale primitivo più comune e porta alla morte di più della metà dei pazienti entro 2 anni nonostante gli approcci multimodali che prevedono la massima resezione chirurgica, seguita da radioterapia e chemioterapia.

​

  • Gli sforzi curativi della modalità di trattamento primaria, la chirurgia, sono limitati dalla natura altamente infiltrativa del GBM (una proprietà fenotipica che contribuisce all'esito sfavorevole in molti carcinomi).

​

  • Una caratteristica del GBM è l'alto grado di eterogeneità intra-tumorale.

4 of 52

Brain Tumors

5 of 52

Sub-Regions of Brain Tumors

  • Nel glioblastoma è possibile individuare due sotto-regioni principali:
    • Una resecabile, il tumor core, costituito principalmente da regioni necrotiche grigiastre, ma anche da regioni iper-vascolarizzate con cellule tumorali densamente ammassate in rapida proliferazione;
    • Una inaccessibile chirurgicamente, l’edema, caratterizzata dalla presenza di cellule tumorali infiltranti sparse all'interno di un parenchima cerebrale in gran parte normale con poche aree di gliosi reattiva. �L’ecosistema di queste cellule tumorali è supportato dalle cellule del tumor core attraverso la trasmissione di segnali extracellulari, che ne favoriscono la crescita e la radioresistenza.

6 of 52

Neuroimaging

  • Il Neuroimaging, o imaging cerebrale, è l'uso di varie tecniche per la mappatura diretta o indiretta della struttura, della funzione o della farmacologia del sistema nervoso. È una disciplina relativamente nuova in medicina, neuroscienze e psicologia.
  • Il Neuroimaging rientra in due grandi categorie:
    • Neuroimaging strutturale, che si occupa della struttura del sistema nervoso e della diagnosi di malattie intracraniche gravi (su larga scala), come un tumore o una lesione.
    • Neuroimaging funzionale, che viene utilizzato per diagnosticare malattie e lesioni metaboliche su scala più fine (come la malattia di Alzheimer) e anche per la ricerca psicologica, neurologica e cognitiva e la costruzione di interfacce cervello-computer.

7 of 52

Neuroimaging

  • Il neuroimaging del tumore al cervello può essere suddiviso in tre ulteriori categorie, al servizio di tre quesiti clinici specifici:
    1. diagnosi
    2. pianificazione preoperatoria o terapeutica
    3. valutazione post-trattamento.
  • Il tipo di imaging acquisito dipende dal particolare contesto clinico e dalle informazioni di cui il medico necessita per prendere decisioni sulla terapia.
  • Attualmente, la Risonanza Magnetica (MRI) è la migliore modalità di imaging disponibile in quanto per­mette di ottenere immagini dettagliate della struttura cerebrale.

​

8 of 52

Magnetic Resonance Imaging (MRI)

  • La scoperta e la successiva introduzione nella pratica clinica dell’imaging con Risonanza Magnetica (MRI) ha profondamente modificato e ampliato la diagnostica neurologica.
  • L’MRI rappresenta una metodica innocua poiché utilizza campi magnetici senza radiazioni ionizzanti e si basa sul principio di Risonanza Magnetica Nucleare (RMN), ossia sfrutta le proprietà fisiche dell’atomo di idrogeno sottoposto a campi magnetici ed impulsi a radio-frequenza.
  • È inoltre adatta per una diagnosi precoce e differenziale di tumori o metastasi cerebrali e nella maggior parte dei casi viene eseguita per confermarne o escluderne la presenza in caso di sintomi sospetti.

9 of 52

Magnetic Resonance Imaging (MRI)

  • Per le sue caratteristiche intrinseche, non invasività e sensibilità diagnostica, la MRI è considerata il gold standard tra le metodiche diagnostiche per lo studio di una vasta gamma di patologie cerebrali, incluse quelle tumorali.

10 of 52

Aim of The Project

  • Il nostro studio è partito dalla raccolta dei file NIfTI relativi alla Multimodal Brain Tumor Segmentation Challenge 2020 (BraTS’20).

​

​

​

​

  • Questa challenge mette a disposizione dei partecipanti scansioni MRI preoperatorie affinché si concentrino su alcuni task, tra cui la segmentazione di tumori cerebrali intrinsecamente eterogenei (nell'aspetto, nella forma e nell'istologia).

​

​

11 of 52

Aim of The Project

  • L’obiettivo del lavoro è quello di proporre un workflow per la segmentazione semi-automatica di due sotto-regioni tumorali, tumor core ed edema, e la successiva generazione di mesh per rendering ed estrazione di feature, utilizzando toolkit, applicazioni e librerie software appositi.

​

  • Le maschere estratte per 14 pazienti sono state confrontate con le corrispondenti presenti nel dataset (ottenute tramite segmentazione manuale), le cui annotazioni sono state precedentemente approvate da esperti neuro-radiologi.

​

  • Infine, la valutazione del task di segmentazione è avvenuta mediante metriche comunemente utilizzate nel medical imaging.

12 of 52

Tools

13 of 52

BraTS Dataset

  • Tutte le scansioni multimodali BraTS sono scaricabili come file NIfTI (.nii.gz) e, per ciascuno dei 369 pazienti coinvolti, includono i seguenti volumi:
    • native (T1)
    • post-contrast T1-weighted (T1Gd)
    • T2-weighted (T2)
    • T2 Fluid Attenuated Inversion Recovery (T2-FLAIR)
    • manual-segmentation mask with labels.

​

    • I file hanno tutti dimensioni 240 × 240 × 155 e sono stati acquisiti con diversi protocolli clinici e vari scanner da 19 istituzioni.

14 of 52

T1-Weighted MRI

  • Basso segnale proveniente dall'acqua (come nel caso di edema, tumori, ischemia, infiammazione, infezione, emorragie croniche o acute).
  • Alto segnale proveniente dal grasso.

T1 039 patient CORONAL SLICE

T1 039 patient SAGITTAL SLICE

T1 039 patient AXIAL SLICE

15 of 52

T1-Weighted MRI with gadolinium contrast (T1Gd)

  • Alto segnale proveniente dalle sostanze paramagnetiche come il gadolinio (utilizzato come mezzo di contrasto in risonanza magnetica).

T1Gd 039 patient CORONAL SLICE

T1Gd 039 patient SAGITTAL SLICE

T1Gd 039 patient AXIAL SLICE

16 of 52

T2-Weighted MRI

  • Alto segnale proveniente da tessuti ricchi di acqua.
  • Basso segnale del grasso.
  • Basso segnale per le sostanze paramagnetiche.

T2 039 patient CORONAL SLICE

T2 039 patient SAGITTAL SLICE

T2 039 patient AXIAL SLICE

17 of 52

T2 Fluid Attenuated Inversion Recovery (T2-FLAIR)

  • È un tipo di sequenza utilizzata nell'imaging a risonanza magnetica che permette di visualizzare l'encefalo con una pesatura ponderata in T2 e soppressione del segnale del liquido cefalorachidiano.

T2-FLAIR patient CORONAL SLICE

T2-FLAIR 039 patient SAGITTAL SLICE

T2-FLAIR 039 patient AXIAL SLICE

18 of 52

BraTS Annotations and Structures

  • Le annotazioni che caratterizzano le maschere di segmentazione comprendono:
    • GD-enhancing tumor (ET — label 4)
    • peritumoral edema (ED — label 2)
    • necrotic and non-enhancing tumor core (NCR/NET — label 1)

19 of 52

NIfTI

  • Il Neuroimaging Informatics Technology Initiative (NIfTI) è un open format comunemente utilizzato per memorizzare i dati di imaging cerebrale ottenuti utilizzando metodi di risonanza magnetica.

​

  • Il formato NIfTI è stato sviluppato grazie al supporto del National Institute of Mental Health e del National Institute of Neurological Disorders and Stroke.

​

  • È stato possibile leggere e scrivere file di questo tipo su Visual Studio utilizzando la class reference NiftiImageIO prevista da itk.

20 of 52

3D Visualization with VTK

using PixelType = signed short;

const int Dimension3D = 3;

using ImageType = itk::Image<PixelType, Dimension3D>;

using ReaderType = itk::ImageFileReader<ImageType>;

using ImageIOType = itk::NiftiImageIO;

ImageIOType::Pointer niftiImageIO = ImageIOType::New();

ReaderType::Pointer niftiReader = ReaderType::New();

niftiReader->SetFileName("BraTS20_Training_002_t1_resized.nii");

niftiReader->SetImageIO(niftiImageIO);

niftiReader->Update();

itk::ViewImage<ImageType>::View(niftiReader->GetOutput());

21 of 52

Conversion to 2D slices

using WriterType = itk::ImageFileWriter<SliceImageType>;

using FilterType = itk::ExtractImageFilter<ImageType, SliceImageType>;

using RescaleFilterType = itk::RescaleIntensityImageFilter< SliceImageType, SliceImageType >;

ImageType::RegionType Region = orienter->GetLargestPossibleRegion();

ImageType::SizeType size = Region.GetSize();

itk::Size<3U> regionSize = size;

​

// CREAZIONE SLICE 2D ASSIALI

for (int i = 0; i < 232; i++) {

​

std::string sAX = std::to_string(i + 1);

string outputFilenameAX = "./sliceFolderAxialFLAIR/" + sAX + "_BraTS20_slice_axial.nii";

std::string seriesPathAX = "./sliceFolderAxialFLAIR/";

WriterType::Pointer niftiWriterAX = WriterType::New();

itksys::SystemTools::MakeDirectory(seriesPathAX);

SetCurrentDirectory(seriesPathAX);

ImageIOType::Pointer niftiImageIOAX = ImageIOType::New();

niftiWriterAX->SetFileName(outputFilenameAX);

niftiWriterAX->SetImageIO(niftiImageIOAX);

​

​

FilterType::Pointer FilterAX = FilterType::New();

FilterAX->InPlaceOn();

FilterAX->SetDirectionCollapseToSubmatrix();

orienter->UpdateOutputInformation();

ImageType::RegionType inputRegionAX = oAX->GetLargestPossibleRegion();

ImageType::SizeType sizeAX = inputRegionAX.GetSize();

sizeAX[2] = 0;

ImageType::IndexType startAX = inputRegionAX.GetIndex();

const unsigned int sliceNumberAX = i;

startAX[2] = sliceNumberAX;

ImageType::RegionType desiredRegionAX;

desiredRegionAX.SetSize(sizeAX);

desiredRegionAX.SetIndex(startAX);

FilterAX->SetExtractionRegion(desiredRegionAX);

FilterAX->SetInput(oAX);

​

RescaleFilterType::Pointer rescalefilterAX = RescaleFilterType::New();

rescalefilterAX->SetInput(FilterAX->GetOutput());

niftiWriterAX->SetInput(rescalefilterAX->GetOutput());

niftiWriterAX->Update();

}

22 of 52

Conversion to 2D slices

T1 002 patient AXIAL SLICES

T1 002 patient SAGITTAL SLICES

T1 002 patient CORONAL SLICES

23 of 52

Proposed Workflow

MRI T2-FLAIR scans

Contrast Enhancement

Region Growing

Dilation and Filling

Mesh Generation

Volume Rendering

Feature Extraction

Segmentation Evaluation

Adaptive Histogram Equalization

Connected Threshold / Neighborhood Connected

Sørensen similarity index / Jaccard index

Area / Volume / Compactness

24 of 52

Contrast Enhancement

  • Il Contrast Enhancement gioca un ruolo importante nel design di molte applicazioni basate sulla computer vision, come la diagnosi medica. Esso migliora la percezione e la qualità visiva dell'immagine, rivelando dettagli nascosti e feature meno evidenti.

​

  • È possibile ottenerlo in due modi:
    • somministrando al paziente, prima dell’esecuzione dell’esame diagnostico, mezzi di contrasto contenenti gadolinio, i quali migliorano l’impregnazione contrastografica nell’MRI;
    • in seguito all’acquisizione delle scansioni di MRI, utilizzando specifiche tecniche di image processing.

25 of 52

Contrast Enhancement

  • Nell’image processing, il contrast enhancement migliora la visibilità di un'immagine esaltando la differenza di luminosità tra gli oggetti e i loro background.

​

  • È ottenuto facendo uno "stretching" del contrasto, ovvero le intensità vengono distribuite su tutta la gamma di intensità. Pertanto, amplia le differenze di luminosità e utilizza quasi l'intera gamma dei livelli di grigio dell'immagine.

26 of 52

Adaptive Histogram Equalization

  • L’Adaptive Histogram Equalization (AHE) è una tecnica di elaborazione delle immagini computerizzata utilizzata per migliorare il loro contrasto. Si differenzia dalla normale equalizzazione dell'istogramma in quanto il metodo adaptive calcola diversi istogrammi, ciascuno corrispondente a una porzione distinta dell'immagine, e li usa per ridistribuire i valori di luminosità dell'immagine stessa.

​

  • È quindi adatto per migliorare il contrasto locale e le definizioni dei contorni in ogni regione di un'immagine.

​

27 of 52

Adaptive Histogram Equalization

  • ITK mette a disposizione l’AdaptiveHistogramEqualizationImageFilter, il cui parametro radius controlla la dimensione della regione su cui vengono calcolate le statistiche locali.

​

002 FLAIR

002 FLAIR Histogram

002 FLAIR Equalized

002 FLAIR Equalized Histogram

28 of 52

Region Growing

  • Il region growing è un metodo di segmentazione delle immagini e si basa sulla selezione (manuale o dal computer) di un pixel casuale (seed point), la cui regione circostante viene confrontata con i rispettivi vicini. Pixel simili sono, poi, raggruppati in base ad alcuni parametri man mano che la regione "cresce" a partire da quel seed.

​

  • Sono stati utilizzati due algoritmi di region growing, implementati in ITK rispettivamente con:
    • ConnectedThresholdImageFilter
    • NeighborhoodConnectedImageFilter

29 of 52

Connected Threshold

  • Il thresholding trasforma un'immagine in scala di grigi in una in bianco e nero, cambiando ogni pixel in bianco o in nero a seconda di un valore di grigio di cutoff specificato.
  • Il metodo del Connected Threshold in ITK prende in input dall'utente diversi parametri: le coordinate casuali (seed) e i limiti superiore e inferiore per le intensità dell'algoritmo di region growing. Pertanto, è un processo semi-automatico.

// CONNECTED THRESHOLD IMAGE FILTER

using RegionGrowingFilterType = itk::ConnectedThresholdImageFilter<ImageType, ImageType>;

RegionGrowingFilterType::Pointer rgfilterTC = RegionGrowingFilterType::New();

rgfilterTC->SetInput(sliceReaderTC->GetOutput());

rgfilterTC->SetLower(0);

rgfilterTC->SetUpper(460);

rgfilterTC->SetReplaceValue(1);

seedTC[0] = 117;

seedTC[1] = 155;

seedTC[2] = 83;

rgfilterTC->SetSeed(seedTC);

rgfilterTC->Update();

tc = rgfilterTC->GetOutput();

30 of 52

Connected Threshold

  • I limiti Lower e Upper dell’intervallo di intensità sono stati determinati considerando i range di livelli di grigio delle regioni di interesse, ottenibili attraverso la sezione Segmentation-Volumes and Statistics di ITK-SNAP.

31 of 52

Neighborhood Connected

  • Il metodo Neighbordhood Connected è simile al precedente. La principale differenza risiede nel fatto che, invece di considerare solo il pixel adiacente a quello corrente, l'algoritmo valuta un "vicinato" di pixel e le loro intensità, proprio come un kernel.

// NEIGHBORDHOOD CONNECTED IMAGE FILTER

using RegionGrowingFilterType2 = itk::NeighborhoodConnectedImageFilter<ImageType, ImageType>;

RegionGrowingFilterType2::Pointer rgfilterED = RegionGrowingFilterType2::New();

rgfilterED->SetInput(sliceReaderED->GetOutput());

rgfilterED->SetLower(450);

rgfilterED->SetUpper(1001);

rgfilterED->SetReplaceValue(2);

seedED[0] = 133;

seedED[1] = 196;

seedED[2] = 91;

rgfilterED->SetSeed(seedED);

ImageType::SizeType indexRadiusED;

indexRadiusED[0] = 2; // radius along x

indexRadiusED[1] = 2; // radius along y

indexRadiusED[2] = 2; // radius along z

rgfilterED->SetRadius(indexRadiusED);

rgfilterED->Update();

ed = rgfilterED->GetOutput();

  • In ITK, il NeighbordhoodConnectedImageFilter prende in input dall'utente come ulteriore parametro il radius del vicinato da utilizzare per la creazione della maschera.

32 of 52

Dilation and Filling

  • La dilatazione è un’operazione morfologica che consiste nell’aggiungere pixel ai contorni di un oggetto. Il numero di pixel aggiunti dipende dalla forma e dalla dimensione dell’elemento strutturante, che in questo caso è un oggetto di tipo Ball creato come istanza della classe FlatStructuringElement di ITK.
  • L'operatore di dilatazione utilizzato è il GrayscaleDilateImageFilter, che accetta due argomenti in input: la maschera e l’elemento strutturante.

​

  • L’hole filling nell’elaborazione delle immagini è un'operazione morfologica che riempie zone di pixel neri circondati da pixel bianchi ed è stato implementato utilizzando il BinaryFillholeImageFilter di ITK.

33 of 52

Segmentation Results

002 tumor core

002 edema

34 of 52

Segmentation Results

002 equalized

002 edema

002 tumor core

023 equalized

023 edema

023 tumor core

039 equalized

039 edema

039 tumor core

042 equalized

042 edema

042 tumor core

35 of 52

Segmentation Results

048 equalized

048 edema

048 tumor core

053 equalized

053 edema

053 tumor core

061 equalized

061 edema

061 tumor core

115 equalized

115 edema

115 tumor core

36 of 52

Segmentation Results

117 equalized

117 edema

117 tumor core

121 equalized

121 edema

121 tumor core

192 equalized

192 edema

192 tumor core

219 equalized

219 edema

219 tumor core

37 of 52

Segmentation Results

285 equalized

285 edema

285 tumor core

366 equalized

366 edema

366 tumor core

38 of 52

Contour Extraction

  • Dalle maschere ottenute sono stati estratti i contorni mediante il BinaryContourImageFilter di ITK.
  • Il filtro accetta in input una maschera binaria i cui oggetti hanno valore dei pixel pari a quello definito dal metodo SetForegroundValue.
  • In output vengono mantenuti solamente i pixel sui contorni degli oggetti.

002 tumor core contour

002 edema contour

//ESTRAZIONE CONTORNI

using BinaryContourFilterType = itk::BinaryContourImageFilter<ImageType, ImageType>;

BinaryContourFilterType::Pointer bcfilterTC = BinaryContourFilterType::New();

bcfilterTC->SetInput(orienterTC->GetOutput());

bcfilterTC->SetFullyConnected(true);

bcfilterTC->SetForegroundValue(1);

bcfilterTC->SetBackgroundValue(0);

bcfilterTC->Update();

contourTC = bcfilterTC->GetOutput();

itk::ViewImage<ImageType>::View(contourTC);

39 of 52

Mesh Generation

  • La generazione di mesh consiste nella suddivisione di uno spazio di input geometrico continuo in celle geometriche e topologiche discrete.

​

  • Le mesh vengono utilizzate per il rendering e per simulazioni fisiche e sono composte da celle semplici (triangoli in questo caso) su cui è possibile eseguire operazioni.

​

  • È stata realizzata una mesh come istanza della classe BinaryMask3DMeshSource e, successivamente, convertita in una 2-simplex mesh utilizzando il TriangleMeshToSimplexMeshFilter.

40 of 52

Mesh Generation

  • Dopo aver creato un’istanza della classe SimplexMeshVolumeCalculator (Calculator), cui è stata data in input la mesh, sono stati calcolati volume e area di quest’ultima utilizzando i metodi GetVolume() e GetArea() rispettivamente.

//MESH TUMOR CORE

using MeshTrait = itk::DefaultDynamicMeshTraits<PixelType>;

typedef itk::Mesh<PixelType, 3, MeshTrait> MeshType;

using MeshSourceType = itk::BinaryMask3DMeshSource<ImageType, MeshType>;

MeshSourceType::Pointer meshSource = MeshSourceType::New();

meshSource->SetInput(tc);

meshSource->SetObjectValue(1);

meshSource->Update();

typedef itk::SimplexMesh<PixelType, 3, MeshTrait> SimplexMeshType;

using CalculatorType = itk::SimplexMeshVolumeCalculator<SimplexMeshType>;

typedef itk::TriangleMeshToSimplexMeshFilter<MeshType, SimplexMeshType> TriangleToSimplexFilter;

TriangleToSimplexFilter::Pointer Transform = TriangleToSimplexFilter::New();

Transform->SetInput(meshSource->GetOutput());

Transform->Update();

CalculatorType::Pointer Calculator = CalculatorType::New();

Calculator->SetSimplexMesh(Transform->GetOutput());

Calculator->Compute();

std::cout << "Volume TUMORE CORE = " << Calculator->GetVolume() <<" mm^3"<< std::endl;

std::cout << "Area TUMOR CORE = " << Calculator->GetArea() << " mm^2" << std::endl;

41 of 52

Compactness 3D

  • Volume e superficie sono shape feature che, a loro volta, permettono di calcolare un’ulteriore feature radiomica, definita compactness.

​

​

​

​

​

​

  • È stata, quindi, determinata la compactness del whole tumor (edema + tumor core).

 

002 whole tumor

42 of 52

Compactness 3D: Results

43 of 52

Volume Rendering

  • Il volume rendering è una tecnica per visualizzare set di dati volumetrici 3D generati da tecniche di imaging medico, tra cui la risonanza magnetica (MRI).
  • Per renderizzare il risultato della segmentazione, ciascuna maschera è stata dapprima convertita in un’immagine 3D VTK utilizzando l’ImageToVTKImageFilter.
  • Con il filtro vtkMarchingCubes, che prende in input il volume ottenuto, è stata estratta una isosuperficie, a sua volta mappata a primitive grafiche con un’istanza della classe vtkPolyDataMapper.
  • La classe vtkActor permette di rappresentare l’istanza in una rendering scene.
  • Dopo aver istanziato il renderer è, quindi, possibile passargli come argomento ciascun actor da visualizzare nella rendering window.

44 of 52

Volume Rendering: Results

002 volume rendering

002 ground truth

45 of 52

Volume Rendering: Results

002

023

039

042

048

053

061

115

117

121

46 of 52

Volume Rendering: Results

192

219

285

366

47 of 52

Segmentation Evaluation

  • La performance di segmentazione del workflow proposto è stata valutata su 14 pazienti utilizzando le seguenti metriche:
    • Sørensen similarity index (Dice coefficient)

​

​

​

    • Jaccard Index

​

​

calcolate, ripettivamente, mediante il SimilarityIndexImageFilter e il LabelOverlapMeasuresImageFilter di ITK.

 

 

48 of 52

Segmentation Evaluation

// SIMILARITY INDEX TUMOR CORE

using SimilarityIndexImageFilterType = itk::SimilarityIndexImageFilter<ImageType, ImageType>;

SimilarityIndexImageFilterType::Pointer similarity_filter = SimilarityIndexImageFilterType::New();

similarity_filter->SetInput1(tc_seg);

similarity_filter->SetInput2(readerTC3->GetOutput());

similarity_filter->Update();

cout << "SIMILARITY INDEX TUMOR CORE: " << similarity_filter->GetSimilarityIndex() << endl;

// JACCARD TUMOR CORE

using LabelOverlapMeasuresImageFilterType = itk::LabelOverlapMeasuresImageFilter<ImageType>;

typename LabelOverlapMeasuresImageFilterType::Pointer LabelOverlapfilter = LabelOverlapMeasuresImageFilterType::New();

LabelOverlapfilter->SetSourceImage(readerTC3->GetOutput());

LabelOverlapfilter->SetTargetImage(tc_seg);

LabelOverlapfilter->Update();

cout << "JACCARD TUMOR CORE: " << LabelOverlapfilter->GetJaccardCoefficient() << endl;

49 of 52

Segmentation Evaluation: Results

50 of 52

Conclusions and Clinical Applications

  • Il workflow di segmentazione semi-automatica proposto permette di ottenere buoni risultati preliminari.

​

  • La perfomance media sul tumor core è pari al 73.6% per il Similarity Index e al 59% per il Jaccard Index.

​

  • La perfomance media sull’edema è pari al 66% per il Similarity Index e al 44.4% per il Jaccard Index.

​

51 of 52

Conclusions and Clinical Applications

  • La segmentazione ottimale di queste sotto-regioni è importante per la corretta pianificazione del trattamento chirurgico e di una terapia personalizzata, volta ad aggredire solamente le porzioni del tumore che risultano essere particolarmente attive.

​

  • Con un intervento mirato è, infatti, possibile arrestare la proliferazione di queste cellule tumorali, ostacolando il conseguente fenomeno di diffusione verso l’edema, principale causa di recidiva in pazienti affetti da tumore al cervello.

​

52 of 52

Grazie per l’attenzione