Automatische detectie van longnodules aan de hand van PET...

94
Faculteit Ingenieurswetenschappen Vakgroep Elektronica en informatiesystemen Voorzitter: Prof. dr. ir. J. Van Campenhout Automatische detectie van longnodules aan de hand van PET/CT pati ¨ entdata door Leen Van Looveren Promotor: prof. dr. ir. Y. D’Asseler, prof. dr. I. Lemahieu Thesisbegeleider: S. De Clercq In samenwerking met het UZ Gent Afstudeerwerk ingediend tot het behalen van de graad van licentiaat in de informatica, optie: toepassingsgerichte informatica Academiejaar 2005-2006

Transcript of Automatische detectie van longnodules aan de hand van PET...

Page 1: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Faculteit Ingenieurswetenschappen

Vakgroep Elektronica en informatiesystemen

Voorzitter: Prof. dr. ir. J. Van Campenhout

Automatische detectie van

longnodules aan de hand van

PET/CT patientdata

door Leen Van Looveren

Promotor: prof. dr. ir. Y. D’Asseler, prof. dr. I. Lemahieu

Thesisbegeleider: S. De Clercq

In samenwerking met het UZ Gent

Afstudeerwerk ingediend tot het behalen van de graad van

licentiaat in de informatica, optie: toepassingsgerichte

informatica

Academiejaar 2005-2006

Page 2: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Toelating tot bruikleen

De auteur geeft de toelating dit afstudeerwerk voor consultatie beschikbaar te stel-len en delen van het afstudeerwerk te copieren voor persoonlijk gebruik. Elk andergebruik valt onder de beperkingen van het auteursrecht, in het bijzonder met be-trekking tot de verplichting de bron uitdrukkelijk te vermelden bij het aanhalen vanresultaten uit dit afstudeerwerk.

Leen Van Looveren 6 juni 2006

i

Page 3: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Dankwoord

Graag zou ik iedereen willen bedanken die heeft bijgedragen tot de verwezenlijkingvan dit eindwerk, in het bijzonder dank ik:

• Mijn promotoren prof. dr. ir. Y. D’Asseler, prof. dr. I. Lemahieu en begeleiderS. De Clercq voor het scheppen van de mogelijkheid dit onderzoek te verrichtenen de goede begeleiding;

• Dr. Ingeborg Goethals (UZ Gent) voor het selecteren en scoren van de pa-tientdata;

• Jeroen Verhaeghe (UGent) voor de technische hulp bij het bekomen van dePET en CT data;

• Mijn ouders om mij de kans te geven te studeren en hun jarenlange begrip ensteun;

• Mijn vriend Vik voor zijn steun, hulp en nuttige feed-back.

ii

Page 4: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Automatische detectie van longnodules aan de hand van PET/CTpatientdata

doorLeen Van Looveren

Afstudeerwerk ingediend tot het behalen van de graad van licentiaat in de informa-tica, optie: toepassingsgerichte informatica

Academiejaar 2005-2006

Universiteit GentFaculteit Ingenieurswetenschappen

Promotor: prof. dr. ir. Y. D’Asseler, prof. dr. I. Lemahieu

Samenvatting

Longkanker is tegenwoordig de kanker die de meeste sterfgevallen veroorzaakt. Hoevroeger de kanker wordt vastgesteld, hoe kleiner de kans op uitzaaiingen en hoe gro-ter de overlevingskansen. Daarom is het belangrijk om methodes te ontwikkelen diekanker in een zo vroeg mogelijk stadium kunnen opsporen zonder daarbij nodeloosalarm te slaan. Er zijn verschillende manieren om longkanker te kunnen detecterenmaar slechts enkele zijn geschikt om dit in een vroeg stadium te doen.Er wordt in deze thesis eerst gezocht naar performante CAD technieken op CT-beelden. Dit zijn CAD technieken die gevoelig genoeg zijn om verdachte gebiedenin de longen aan te duiden, maar niet overgevoelig zijn zodanig dat gezonde zo-nes niet verkeerdelijk worden aangeduid. Vervolgens wordt er gezocht naar perfor-mante CAD technieken op PET-beelden. Daarna wordt een CAD op CT-beeldengeımplementeerd (in Matlab). Hier zal tot slot PET-informatie worden aan toe-gevoegd. Vergelijkende tests zullen uitwijzen dat de geımplementeerde CAD metPET-informatie betere resultaten oplevert t.o.v. de CT-gebaseerde CAD techniekenuit de literatuur.

Trefwoorden: Computer-gestuurde diagnose (CAD), PET-beelden, CT-beelden,longkanker detectie

iii

Page 5: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Abstract

Lung cancer is nowadays the type of cancer that causes most deaths. The earlierthe cancer is detected, the smaller the probability of metastases and the higher theprobability of survival. Therefore, it is crucial to develop methods that are able todetect cancer in an early stage.

This thesis starts with a general introduction on the most commonly used typesof scanners that are used to detect lung cancer: the CT scanner and the PETscanner. We also point out that both types of scans deliver in fact complementaryinformation as CT scans give anatomical information while PET scans metabolic.CT scans deliver more information on location and size of possible cancer noduleswhile PET scans are able to indicate the existence of cancer nodules with morecertainty. As is implemented later in the thesis, this natural complementarity istranslated into an algorithm based on CT detection and PET classification of thedetected nodules.

As hybrid CT/PET CAD techniques are only recently studied focus is first onexisting performent CAD techniques on CT lung images. Different detection al-gorithms are explained of which the most important are segmentation, templatematching and the use of neural networks. The segmentation/template matchingmethodology is a relatively simple algorithm to understand and implement but de-livers good results when combined with a classification methodology based on fea-ture detection. Therefore this methodology has been selected for further use in thedetection part of the hybrid CAD technique that will be developed.

Next, some existing CAD techniques for PET images are investigated. The mostimportant algorithms are segmentation and watershed. Segmentation algorithms areeasier to implement but the watershed methodology has proven better performanceand is the preferred methodology to complement the CT detection.

Finally, an implementation in Matlab is developed of a CAD hybrid techniquebased on CT/PET information. The image data of 12 patients with lung cancer ofthe University Hospital Ghent have been used as dataset. Even though the algorithmshould in the end be optimised for early detection, this dataset contained a widevariety of nodules.

In the first phase, a detection algorithm on CT images has been implementedwhich starts with the preparation of the images via binary classification of the pixels,color inversion and background clearance, dilation, filling and erosion techniques.The lungs are isolated and the edges are detected via contour tracking and optimisedwith a rolling ball algorithm to avoid missing juxtaplural nodules. Then the actualnodule detection has been implemented using a template matching technique viaDiscrete Fourier Transform. A Gaussion template nodule has been used to calculatecross-correlation with the dataset CT images. Using a treshold value for this cross-correlation realises the actual detection. The performance of the detection algorithmon an individual basis has been evaluated using FROC/AFROC curves and we

Page 6: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

obtained an acceptable 90% sensitivity while around 2,25 false positives were foundper CT slice or around 24% specificity.

In the second phase, the detection algorithm was improved by adding PET in-formation. As a preparatory step the PET and CT images were registered. Then,using the watershed algorithm, the lungs were segmented into regions based on pixelintensity. The different regions were then classified as ’suspicious’ or ’non-suspicious’based on a hot spot detection treshold for each region. The nodules that were de-tected on the CT images were then matched with the corresponding region on thePET image and classified as true positive in case the region is suspicious on thePET image and as false positive in case the region is non-suspicious.

The performance of the final CT/PET hybrid algorithm was again evaluatedusing a FROC/AFROC analysis. Roughly speaking, with the same sensitivity, thespecificity increased with a factor 4 to 5, which would result into a 90% sensitivitywith 0,6 false positives per image or around 75% specificity. However, due to somespecific issues (noise caused by heart motion on PET image, PET treshold cali-bration,) certain obvious cancer nodules were wrongly classified as false positives.Some extensions are proposed as additions to the algorithm. The realised sensitivitywithout optimisation was around 80% with 0,3 false positives or 84% specificity. Itcan be concluded that the implemented CT/PET hybrid CAD is very performantwhile there is still room to further optimise the used techniques.

ii

Page 7: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Inhoudsopgave

1 Inleiding 11.1 Doelstelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 PET/CT-scanner 32.1 CT-Scanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 PET Scanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.3 PET/CT-Scanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3 Computergestuurde diagnose op CT-beelden 93.1 Detectiemethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.1.1 Twee detectiemethoden m.b.v. segmentatie . . . . . . . . . . . 103.1.2 Detectiemethode m.b.v. Template Matching (TM) . . . . . . . 163.1.3 Detectie methode m.b.v. Neurale Netwerken (NN) . . . . . . . 18

3.2 Classificatiemethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.2.1 Classificatie d.m.v. Neurale Netwerken (NN) . . . . . . . . . . 203.2.2 Classificatie d.m.v. Support Vector Machine (SVM) . . . . . . 213.2.3 Classificatie d.m.v. Data Mining . . . . . . . . . . . . . . . . . 23

3.3 Heropbouw van de longbloedvaten . . . . . . . . . . . . . . . . . . . . 24

4 Computergestuurde diagnose op PET-beelden 274.1 Segmentatie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.2 Het Watershedalgoritme . . . . . . . . . . . . . . . . . . . . . . . . . 29

5 Ontwikkeling van een automatisch detectiealgoritme van longno-dules a.d.h.v PET/CT patientdata 335.1 Detectiemethode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.1.1 Longsegmentatie . . . . . . . . . . . . . . . . . . . . . . . . . 345.1.2 Detectie kandidaat longnodules op CT-beelden . . . . . . . . . 435.1.3 Evaluatie van de detectiemethode . . . . . . . . . . . . . . . . 46

5.2 Classificatiemethode . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.2.1 Registratie PET/CT . . . . . . . . . . . . . . . . . . . . . . . 495.2.2 Watershedalgoritme . . . . . . . . . . . . . . . . . . . . . . . . 515.2.3 Evaluatie classificatiemethode . . . . . . . . . . . . . . . . . . 555.2.4 Vergelijkende studie . . . . . . . . . . . . . . . . . . . . . . . . 57

i

Page 8: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

5.3 Besluit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

6 Mogelijke uitbreidingen 596.1 Scheiding van de linker- en rechterlong . . . . . . . . . . . . . . . . . 596.2 Hot spot detectie op de longranden . . . . . . . . . . . . . . . . . . . 60

A Matlab Code 63A.1 Hoofdprogramma - kankerdetectie PET/CT . . . . . . . . . . . . . . 63A.2 Bepaling optimale drempelwaarde (Shiying Hu [12]) . . . . . . . . . . 70A.3 Zoek vastgehechte nodules . . . . . . . . . . . . . . . . . . . . . . . . 71A.4 Template Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

B Patientmeetwaarden 76

ii

Page 9: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Lijst van figuren

2.1 De Philips Gemini Hybride PET/CT-scanner. [1] . . . . . . . . . . . 32.2 De werking van een CT-scanner: de bron van X-stralen draait rond

een lichaamsdeel van de patient en bestraalt zo een dwarsdoorsnedevan dit lichaamsdeel. Detectoren draaien tevens rond dit bestraaldelichaamsdeel en vangen de stralen weer op nadat deze dit lichaamsdeeldoorkruisten. De gemotoriseerde tafel schuift wat op om de volgendedwarsdoorsnede te nemen. [19] . . . . . . . . . . . . . . . . . . . . . . 4

2.3 Werking van een PET-scanner: de patient krijgt een injectie metglucose waar een radioactieve atoom aanhangt. Tumoren zijn snel-groeiend weefsel en zullen op korte tijd veel glucose opnemen. Bijverval van de radioactieve atomen wordt een positron geproduceerd.Wanneer de positron met een elektron van het weefsel annihileertworden twee gammastralen tegelijkertijd en in tegengestelde richtinguitgezonden en opgevangen door de detectoren. Dit laat toe het me-tabolisme van de patient op een beeld weer te geven. [15] . . . . . . . 6

2.4 Een CT-beeld (links), het corresponderende PET-beeld (midden) ende combinatie van beide (rechts) van een axiale dwarsdoorsnede vande longen ter hoogte van een longtumor in de rechter-long. . . . . . . 7

2.5 Een CT-beeld (links), het corresponderende PET-beeld (midden) ende combinatie van beide (rechts) van een sagitale doorsnede van delongen ter hoogte van een longtumor in de rechter-long. . . . . . . . . 7

2.6 Een CT-beeld (links), het corresponderende PET-beeld (midden) ende combinatie van beide (rechts) van een coronale doorsnede van delongen ter hoogte van een longtumor in de rechter-long. . . . . . . . . 8

3.1 Een CT-scanner. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.2 borstsnede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.3 borstsnede zonder weefsel . . . . . . . . . . . . . . . . . . . . . . . . 113.4 longomtrek inclusief vastgehechte nodules . . . . . . . . . . . . . . . . 113.5 de gevonden solitaire en vastgehechte nodules . . . . . . . . . . . . . 113.6 Thorax Segmentatie. . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.7 Longsegmentatie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.8 Rollende Bal Algoritme. . . . . . . . . . . . . . . . . . . . . . . . . . 143.9 Long Volumes met een bepaalde drempelwaarde. . . . . . . . . . . . . 143.10 Een 10-punt verbindingsschema. . . . . . . . . . . . . . . . . . . . . . 15

iii

Page 10: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

3.11 (a) Relatie tussen de bolvormigheid en de maximale cirkelvormigheidvan de kandidaat nodules. De stipjes staan voor nodules geselec-teerd als vals-positieven, de bolletjes voor de werkelijke-positieven.(2) Longbeeld met aangeduide kandidaat nodules na eleminatie vande geselecteerde vals-positieven. . . . . . . . . . . . . . . . . . . . . . 16

3.12 Vier gesimuleerde referentiebeelden . . . . . . . . . . . . . . . . . . . 173.13 Gesimuleerd referentiebeeld . . . . . . . . . . . . . . . . . . . . . . . 183.14 Het NN voor de detectie van nodules . . . . . . . . . . . . . . . . . . 193.15 Het gegenereerde gewenste output beeld voor het input beeld op fi-

guur 3.14. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.16 Het NN voor de classificatie van nodules. . . . . . . . . . . . . . . . . 213.17 Kenmerkenvectoren met twee kenmerken onderverdeeld in twee klassen. 223.18 Kenmerkenvectoren met twee kenmerken onderverdeeld in twee klas-

sen. Een kenmerkenvector werd verkeerd ingedeeld. . . . . . . . . . . 223.19 Test Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.20 (a) Beslissingsregels per patient met minimaal aantal kenmerken. (b)

Voorbeeld beslissingstabel. . . . . . . . . . . . . . . . . . . . . . . . . 243.21 Versterkte bloedvaten, verbindingspunten van bloedvaten en nodules

d.m.v. correlatiegebaseerde filters. (a) Het oorspronkelijk kunstmatigvervaardigd beeld. (b) Versterkte verbindingspunten van bloedvaten.(c) Versterkte bloedvaten en verbindingspunten van bloedvaten. (d)Versterkte nodules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.22 heropgebouwde bloedvatenboom . . . . . . . . . . . . . . . . . . . . . 25

4.1 SUV (Standard Uptake Value) in een ROI (Region Of Interest) vooren na de behandeling van de patient met chemotherapie [22] . . . . . 29

4.2 PET-snede met een tumor als hot spot. . . . . . . . . . . . . . . . . . 304.3 Het watershedalgoritme toegepast op het PET-beeld. . . . . . . . . . 304.4 Lokatie van de scanlijn door de hartkamer (links) en scanlijn door het

hart in coronale richting (rechts). [6] . . . . . . . . . . . . . . . . . . 314.5 Hot spots gevonden in het PET-beeld (links), nodules gevonden in

het CT-beeld (rechts) en de gevonden tumor, aangeduid met een on-onderbroken cirkel. [6] . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.1 Het oorspronkelijke CT-beeld. . . . . . . . . . . . . . . . . . . . . . . 345.2 Optimale drempelwaarde. . . . . . . . . . . . . . . . . . . . . . . . . 355.3 Een binaire classificatie d.m.v. een optimale segmentatiedrempelwaarde. 365.4 Kleureninversie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365.5 Verwijderen van de achtergrond door de rand van de figuur te zuiveren

van rakende objecten. . . . . . . . . . . . . . . . . . . . . . . . . . . . 375.6 Dilatatie van figuur 5.5. . . . . . . . . . . . . . . . . . . . . . . . . . 375.7 Opvullen van de gaten omsloten door objecten van figuur 5.6. . . . . 385.8 Erosie van figuur 5.7. . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

iv

Page 11: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

5.9 Links: gebied en ovaal met dezelfde genormaliseerde tweede momen-ten. Rechts: grootste as van de ovaal en de orientatie. . . . . . . . . . 39

5.10 Isolatie van de longen toegepast op figuur 5.8. . . . . . . . . . . . . . 395.11 Contour Tracking: detectie van de opeenvolgende pixels van de longran-

den. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405.12 Gedetecteerde opeenvolgende pixels van de longranden uitgetekend

op het oorspronkelijke beeld . . . . . . . . . . . . . . . . . . . . . . . 415.13 Drie mogelijke vastgehechte longnodules werden gevonden waarvan

een werkelijke-positieve nodule, aangeduid met de pijl. . . . . . . . . 425.14 Links: CT-beeld met gesegmenteerde longen voor de detectie van

vastgehechte nodules. Rechts: CT-beeld met gesegmenteerde longenna de detectie van vastgehechte nodules. . . . . . . . . . . . . . . . . 42

5.15 Gesegmenteerde longen. . . . . . . . . . . . . . . . . . . . . . . . . . 435.16 Gesimuleerde nodule opgebouwd d.m.v. de Gaussiaanse distributie. . 435.17 Resulterend beeld na toepassing van de convolutie-eigenschap van de

Fouriertransformatie, of nog de kruiscorrelatie. Hoe hoger de intensi-teit van een pixel, hoe groter de correlatie met de gesimuleerde nodule. 45

5.18 Drie gedetecteerde kandidaatnodules waarvan een werkelijke-positievenodule aangeduid met de pijl. . . . . . . . . . . . . . . . . . . . . . . 45

5.19 FROC curve: sensitiviteit uitgezet tegen het gemiddeld aantal vals-positieven per CT-snede. Deze geeft een indicatie van ’1-specificiteit’. 48

5.20 AFROC curve: sensitiviteit uitgezet tegen ’1-pecificiteit’, d.i. bepaaldals de fractie snedes waar minstens een valse positieve nodule werdgedetecteerd. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.21 PET/CT synchronisatie. De sneden bevatten twee kankergezwellen. . 505.22 Verschil in lokatie tussen de nodule gedetecteerd op het CT beeld

(witte homogene vlek, aangeduid door de witte pijl) en de hot spotgedetecteerd op het corresponderende PET-beeld (onderliggende wa-zige vlek, aangeduid door de gele pijl). . . . . . . . . . . . . . . . . . 51

5.23 Linksboven: watershedalgoritme toegepast op het PET-beeld rechts-boven met een hot spot die buiten het longgebied ligt. Linksonder:detectiealgoritme toegepast op het CT beeld rechtsonder, indelingvan de gebieden zoals bepaald op het PET-beeld rechtsboven en eennodule die op de scheidingslijn van twee gebieden valt. . . . . . . . . 52

5.24 PET-beeld met geınverteerde kleuren. . . . . . . . . . . . . . . . . . . 535.25 Boven: het watershedalgoritme toegepast op het hele PET-beeld. On-

der: de gebieden van het linkse beeldje beperkt tot de longrandengevonden door de detectiemethode. . . . . . . . . . . . . . . . . . . . 53

5.26 Aangeduid gebied bezit vele pixels met hoge intensiteit doordat heteen deel van het hart omsluit en geen hot spot. . . . . . . . . . . . . 55

5.27 FROC voor en na classificatie. . . . . . . . . . . . . . . . . . . . . . . 565.28 AFROC voor en na classificatie. . . . . . . . . . . . . . . . . . . . . . 56

v

Page 12: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

6.1 Samensmelting van de twee longkwabben tot een geheel na de dilatie-operatie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.2 Voorbeeld van een scheiding van de longkwabben. . . . . . . . . . . . 61

vi

Page 13: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Hoofdstuk 1

Inleiding

Longkanker is tegenwoordig de meest voorkomende kanker. Ongeveer 1,4 miljoen

nieuwe gevallen worden elk jaar vastgesteld. Longkanker komt voor onder de vorm

van nodules (gezwellen) of beschadigingen in de longen die ofwel afgezonderd (soli-

tair) ofwel vastgehecht zijn aan de longwand, bloedvaten of andere structuren.

Het aantal mensen dat nog vijf jaar overleeft na de diagnose longkanker is 50%

zolang de longkanker nog ’lokaal’ is, niet uitgezaaid. Is de longkanker echter wel

uitgezaaid, dan is het aantal mensen dat vijf jaar overleeft slechts tussen de 2%

en de 20%, afhankelijk van de plaats(en) van de uitzaaiingen. Helaas wordt maar

ongeveer 15% van de gevallen ontdekt in het vroege stadium waarin de kanker nog

niet is uitgezaaid. [18]

Als longkanker zoveel doden per jaar op zijn geweten heeft, waarom dan geen bevol-

kingsonderzoek? [2] De reden dat dit niet gebeurt is eenvoudig. Tot nu toe zijn er

nog geen methoden ontdekt die efficient genoeg zijn in het opsporen van longkanker

in een zo vroeg stadium om de sterftecijfers mogelijk te doen dalen.

In het verleden zijn er onderzoeken gedaan met rontgenfoto’s als opsporingsmetho-

de. Helaas missen rontgenfoto’s nog veel gevallen van longkanker, vooral longkanker

in een vroeg stadium. Om op een foto een tumor te kunnen zien, moet deze een

bepaalde grootte hebben. Er werden wel meer gevallen ontdekt, maar dat had niet

tot gevolg dat er minder mensen overleden omdat de gedetecteerde tumor vaak reeds

uitgezaaid was.

Een betere methode is de CT-scan. Het gaat dan om een scan met een lage stra-

lingsdosis (X-stralen) die weinig tijd kost (10 tot 15 minuten) en nauwelijks duurder

is dan een rontgenfoto. De stralingsdosis is ongeveer gelijk aan deze gebruikt bij

de rontgenfoto en dus niet schadelijk. Met behulp van deze CT-scans werden in

1

Page 14: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

onderzoeken meer gevallen van longkanker ontdekt en ook in een vroeger stadium.

Maar screening heeft ook nadelen: het kost geld en tijd en het levert in sommige

gevallen ook onterechte verdenking van longkanker op.

Tegenwoordig wordt er ook gebruik gemaakt van de PET-scan indien er reeds een

vermoeden op longkanker bestaat, doch niet voor screening. Patienten krijgen een

injectie van glucose waar een radioactief atoom Fluor (18F om precies te zijn) aan

is gebonden. Na drie kwartier inwerking is op de scan te zien welke cellen veel

actiever zijn en de meeste glucose opnemen. Een plaatselijk verhoogd verbuik van

energie vormt een indicatie voor de aanwezigheid van tumorcellen. De PET-scan

techniek wordt in Nederland en Belgie steeds vaker toegepast voor onderzoek bij de

verdenking van onder andere longkanker.

1.1 Doelstelling

CAD (Computer-Aided Diagnosis) technieken zijn computerprogramma’s die wor-

den gebruikt voor het (semi-)automatisch verwerken van de grote hoeveelheid data

die bijvoorbeeld de CT- en PET-beelden weergeven om uiteindelijk tot een besluit te

komen of de patient al dan niet lijdt aan longkanker. De doelstelling van deze thesis

is een literatuurstudie uitvoeren over PET- en CT-algoritmes die automatisch long-

nodules kunnen detecteren. Vervolgens zal in deze thesis een automatische CAD op

CT-beelden worden geımplementeerd. Daarna zal er PET-informatie in deze CAD

worden verwerkt. Uiteindelijk zullen de resultaten van de CAD met en zonder bij-

komende PET-informatie worden vergeleken d.m.v. de FROC en AFROC curves.

6 mSv(milisivert)

2

Page 15: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Hoofdstuk 2

PET/CT-scanner

Figuur 2.1: De Philips Gemini Hybride PET/CT-scanner. [1]

2.1 CT-Scanner

Een computertomografie (CT) apparaat (zie figuur 2.1) kan een rontgenfoto

maken van hele dunne dwarsdoorsneden van de longen (of andere lichaamsdelen).

De werking gaat als volgt (zie figuur 2.2): de patient ligt op de tafel en wordt in

de scanbuis geschoven. Een doorsnede van het lichaamsdeel in de scanbuis wordt

bestraald met een dunne rontgenstraal (X-straal) vanuit verschillende richtingen

3

Page 16: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 2.2: De werking van een CT-scanner: de bron van X-stralen draait rond eenlichaamsdeel van de patient en bestraalt zo een dwarsdoorsnede van dit lichaamsdeel.Detectoren draaien tevens rond dit bestraalde lichaamsdeel en vangen de stralen weer opnadat deze dit lichaamsdeel doorkruisten. De gemotoriseerde tafel schuift wat op om devolgende dwarsdoorsnede te nemen. [19]

doordat de bron die de X-stralen uitzendt rond de patient draait. Nadat de stra-

len het lichaam hebben doorkruist worden deze gedetecteerd door de detectoren die

tevens rond de patient draaien en wordt de intensiteit van deze stralen gemeten (uit-

gedrukt in houndsfield units). Stralen die zich voortplantten doorheen ribben zullen

meer worden geattenueerd dan stralen die zacht weefsel doorboorden. De computer

kan door deze gegevens te verwerken een twee-dimensionaal beeld weergeven van de

verschillende soorten weefsel die werden doorkruist. De patient wordt vervolgens

doorheen de scanbuis verplaatst om zo opeenvolgende sneden te scannen.[19]

2.2 PET Scanner

Het belang van PET neemt de laatste tijd sterk toe in de klinische praktijk. Anders

dan bij rontgendiagnostiek komt de te meten straling niet van buiten maar van bin-

nenin het lichaam, meer in het bijzonder van radioactieve stoffen die snel vervallen.

Het principe is het volgende (zie figuur 2.3): de patient krijgt een stof, bijvoorbeeld,

glucose toegediend die een rol speelt bij de stofwisseling in de longen. Een van de

atomen in de verbinding is vervangen door een radioactieve isotoop (Fluor 18F ) die

na een korte tijd zal vervallen. Weefsels die veel energie verbruiken, zoals het hart,

maar ook tumoren die een snelgroeiend weefsel zijn, zullen snel veel glucose opne-

4

Page 17: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

men. Bij verval zullen de radioactieve isotopen een positron produceren, een positief

geladen deeltje met een lading gelijk, maar tegengesteld aan die van een elektron.

Het vrijkomende positron annihileert vrijwel onmiddellijk met een elektron uit het

weefsel. Daarbij komt energie vrij in de vorm van twee rug-aan-rug fotonen, gamma-

stralen genoemd, elk met 511 keV energie. Deze laatsten worden buiten het lichaam

opgemeten door de detectoren rond het lichaam van de patient. Men spreekt van

een geldige gebeurtenis als twee detectoren een foton meten binnen een tijdspanne

van een paar nanoseconden. De verbindingslijn tussen de twee detectoren geeft dan

informatie over de plaats binnen het orgaan waar de fotonen werden geproduceerd.

Als er genoeg radioactieve kernen vervallen kan er een tijdsopname worden gemaakt

van het verloop van de stofwisseling in een bepaald orgaan.[15]

2.3 PET/CT-Scanner

Bij computertomografie wordt een lichaamsdeel vanuit verschillende hoeken belicht

door rontgenstraling om een doorsnede van het lichaam te maken. Een CT-beeld

geeft anatomische informatie weer. PET wordt in de medische wereld gebruikt voor

het zichtbaar maken van stofwisselingsprocessen in het menselijk lichaam. De PET-

scan heeft een grotere gevoeligheid om tumoren in beeld te brengen dan een CT-scan.

De CT-scan geeft op zijn beurt echter weer meer informatie over de vorm en de plaats

van de tumor in het lichaam. Een CT- en een PET-beeld geven dus complementaire

informatie omtrent het gescande gebied. Daarom is de combinatie van beide beelden

te verkiezen voor de analyse van eenzelfde gebied en dit bij voorkeur d.m.v. beelden

afkomstig van een toestel dat de PET-en de CT-scanner combineert. Dit heeft

namelijk als voordeel dat de patient op de beide beelden in dezelfde positie ligt

waardoor de vergelijkende analyse met een hogere nauwkeurigheidsgraad kan worden

uitgevoerd. Het is van groot belang de juiste lokatie van de tumoren te vinden om

deze optimaal te kunnen behandelen d.m.v. bestraling en/of chirurgie. Figuren 2.4,

2.5 en 2.6 tonen respectievelijk axiale, sagitale en coronale dwarsdoorsnede van de

patient ter hoogte van een longtumor in de rechter-long, met telkens het CT-beeld,

het PET-beeld en de combinatie van beide.

5

Page 18: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 2.3: Werking van een PET-scanner: de patient krijgt een injectie met glucosewaar een radioactieve atoom aanhangt. Tumoren zijn snelgroeiend weefsel en zullen opkorte tijd veel glucose opnemen. Bij verval van de radioactieve atomen wordt een positrongeproduceerd. Wanneer de positron met een elektron van het weefsel annihileert wordentwee gammastralen tegelijkertijd en in tegengestelde richting uitgezonden en opgevangendoor de detectoren. Dit laat toe het metabolisme van de patient op een beeld weer tegeven. [15]

6

Page 19: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 2.4: Een CT-beeld (links), het corresponderende PET-beeld (midden) en de com-binatie van beide (rechts) van een axiale dwarsdoorsnede van de longen ter hoogte van eenlongtumor in de rechter-long.

Figuur 2.5: Een CT-beeld (links), het corresponderende PET-beeld (midden) en de com-binatie van beide (rechts) van een sagitale doorsnede van de longen ter hoogte van eenlongtumor in de rechter-long.

7

Page 20: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 2.6: Een CT-beeld (links), het corresponderende PET-beeld (midden) en de com-binatie van beide (rechts) van een coronale doorsnede van de longen ter hoogte van eenlongtumor in de rechter-long.

8

Page 21: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Hoofdstuk 3

Computergestuurde diagnose op

CT-beelden

Figuur 3.1: Een CT-scanner.

In dit hoofdstuk wordt een overzicht gegeven van bestaande CAD technieken

op CT-beelden die teruggevonden kunnen worden in de wetenschappelijke litera-

tuur zonder daarbij in detail te gaan op de technische uitwerking. De bestaande

CAD technieken kunnen allemaal in twee delen worden opgesplitst: een detectie-

methode en een classificatiemethode. De detectiemethode probeert alle nodules

(longknobbels) aan te duiden. Dit worden de kandidaatnodules genoemd. Vaak

zitten hier ook andere structuren tussen zoals weefsel of bloedvaten. Deze laatste

worden vals-positieven genoemd. De werkelijke tumorgebieden worden werkelijke-

positieven genoemd. Al de gevonden verdachte gebieden vereisen verder onderzoek

9

Page 22: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

door de radioloog. Opdat de CAD nuttig zou zijn moet het dus al de verdachte zones

in een CT-beeld van de longen aanduiden maar het mag de tijd van de radioloog

niet verkwisten door tevens veel gezonde gebieden als verdacht gebied te selecteren.

Daarom zal de classificatiemethode zoveel mogelijk vals-positieven verwijderen uit

de kandidaatnodules.

Eerst zullen de belangrijkste detectiemethoden uit de literatuur worden uiteengezet,

vervolgens de classificatiemethoden.

3.1 Detectiemethoden

3.1.1 Twee detectiemethoden m.b.v. segmentatie

Methode 1

Dit geautomatiseerd algoritme werd door Radhika Sivaramakrishna et al. [21] in

2002 ontwikkeld. Het baseert zich op een twee- en driedimensionale methodologie

van beeldverwerking en patroonherkenning voor het detecteren van longknobbels in

CT-beelden van de thorax.

Figuur 3.2 toont een typisch 2D CT-snede met vastgehechte en solitaire nodules.

Verder gebeurt de segmentatie voor elke snede als volgt:

Figuur 3.2: borstsnede

1. Verwijdering van het weefsel m.b.v. een grijs-niveau treshold (zie figuur 3.3).

2. Isolatie longomtrek inclusief vastgehechte nodules (zie figuur 3.4).

3. Detectie vastgehechte nodules door curve analyse uitgevoerd op de geısoleerde

longomtrek.

10

Page 23: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 3.3: borstsnede zonder weefsel

Figuur 3.4: longomtrek inclusief vastgehechte nodules

Detectie solitaire nodules: dit zijn de pixels die niet werden herkend als weefsel

en dus donkerder zijn dan het grijs-niveau treshold voor de detectie van het

weefsel. (zie figuur 3.5)

Figuur 3.5: de gevonden solitaire en vastgehechte nodules

4. Pas de euclidische afstand transform operator iteratief toe in 3-D voor het

opdelen van mogelijk aaneengeschakelde nodules. Bij een iteratie wordt, indien

mogelijk, een gebied opgesplitst. Zoniet wordt, als er nog een groot gebied is,

11

Page 24: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

de euclidische afstand transform treshold verhoogd. Stop wanneer er geen

groot gebied meer is of indien meer dan 10 iteraties plaatsvonden.

5. Verwijder d.m.v. een vaste treshold 3D-gebieden te groot om een nodule te

kunnen zijn.

Resultaten Methode 1

Dit algoritme behaalt een sensitiviteit van 90% en 2 vals-positieven per snede na een

classificatie waarbij de vals-positieven werden gedetecteerd a.d.h.v. een kwadratische

classificatie uitgevoerd met volgende kenmerken:

• de verhouding van minimum en maximum eigenwaarden van de covariantie

matrix van de pixels die elke kandidaat knoop vormen.

• de maximum eigenwaarde van de covariantie matrix

Deze twee kenmerken detecteren lange smalle structuren duidend op een luchtpijp.

• de gemiddelde grijswaarde van de pixels in de kandidaat knoop.

Dit kenmerk detecteert structuren die lichter of donkerder zijn dan een typische

knobbel.

Methode2

Deze CAD werd ontwikkeld door Armato III et al. in 1999 [4]. Zowel methodes met

een twee- als een drie-dimensionale analyse worden gebruikt. Voor elke snede:

1. Twee-dimensionale analyse: segmentatie.

• Segmentatie van de thorax: op figuur 3.6(a) is een diagonale lijn getrok-

ken van de links-boven kant naar het centrum van de snede. Met de pixels

langs deze lijn wordt een cumulatief grijs-niveau profiel opgebouwd (zie

figuur 3.6(b)). Door deze te analyseren wordt een drempelwaarde gekozen

(zie het pijltje op figuur 3.6(b)). Hiermede wordt een binair beeld voor

de thorax opgebouwd die het mogelijk maakt een onderscheid te maken

tussen de thorax en zijn achtergrond (figuur 3.6(c)). Figuur 3.6(d) toont

een afgebakende thorax.

12

Page 25: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

(a) (b)

(c) (d)

Figuur 3.6: Thorax Segmentatie.

• Segmentatie van de longen: de pixels van figuur 3.6(d) worden in een

grijs-niveau histogram gegoten (zie figuur 3.7(a)). Hieruit wordt de drem-

pelwaarde voor de longsegmentatie gehaald, zijnde het grijs-niveau dat

de twee hoogste pieken het meeste scheidt (zie de pijl op figuur 3.7(a)).

Met deze wordt weer een binair beeld opgebouwd waarmee de longen uit

de thorax kunnen worden gehaald (zie figuur 3.7(b)). Figuur 3.7(c) toont

de gevonden longomtrekken op het originele beeld.

(a) (b) (c)

Figuur 3.7: Longsegmentatie.

13

Page 26: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

• Detectie van vastgehechte nodules d.m.v. een rollende bal algoritme: een

twee-dimensionale filterbal zal opeenvolgend tangentieel aan elk punt van

de longomtrek worden geplaatst. Als de longomtrek de bal op meer dan

een plaats raakt is er sprake van een vastgehechte nodule (zie figuur

3.8(a)). De uiteinden worden met elkaar verbonden, de nodule wordt

opgevuld en zal verder deel uitmaken van de longen (zie figuur 3.8(b) en

(c)).

(a) (b) (c)

Figuur 3.8: Rollende Bal Algoritme.

2. Drie-dimensionale analyse: identificatie van de kandidaat nodules.

• De longgebieden worden samengesteld om long volumes te bekomen. Er

worden 36 grijs-niveaus gekozen op gelijke afstand van elkaar. Voor elk

van deze grijs-niveaus wordt een long volume gecreerd zodanig dat el-

ke pixel die een lagere grijs-waarde heeft dan de drempelwaarde zwart

zal worden gekleurd. Figuur 3.9 toont zo’n long bewerkte volumes. De

drempelwaarde bij figuur 3.9(a) ligt lager dan deze bij figuur 3.9(b).

(a) (b)

Figuur 3.9: Long Volumes met een bepaalde drempelwaarde.

14

Page 27: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

• Voor elk van de 36 drempelwaarden worden de overgebleven pixels in

een long volume samengenomen in een 10-punt verbindingsschema (zie

figuur 3.10), d.i. neem voor elk overgebleven pixel op een bepaalde CT-

snede (a) zijn acht direct-omringende buren die zich op dezelfde CT-snede

bevinden, (b) de pixel juist onder de besproken pixel en (c) de pixel juist

boven de besproken pixel. Hiermede worden alle individuele structuren

gevonden. Al de structuren kleiner dan 3cm zijn kandidaat nodules.

Figuur 3.10: Een 10-punt verbindingsschema.

Resultaten Methode 2

Deze CAD heeft 70% sensitiviteit en 3 vals-positieven per CT-snede na een classi-

ficatie gebaseerd op negen verschillende kenmerken die worden berekend voor elke

kandidaat nodule: volume, bolvormigheid, straal, maximale compactheid, maximale

cirkelvormigheid, maximale excentriciteit, gemiddeld grijs niveau, standaard afwij-

king van het grijs niveau en de grijs niveau drempelwaarde van het long volume

waarbij het volume van de beschouwde structuur kleiner wordt dan de volume bo-

vengrens. Een lineaire discriminant analyse wordt uitgevoerd op de waarden van

de kenmerken van al de kandidaat nodules waardoor veel vals-positieven worden

uitgesloten. Figuur 3.11 toont de distributies van twee van deze kenmerken en de

kandidaat nodules die overblijven na een discriminant analyse.

15

Page 28: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

(a) (b)

Figuur 3.11: (a) Relatie tussen de bolvormigheid en de maximale cirkelvormigheid vande kandidaat nodules. De stipjes staan voor nodules geselecteerd als vals-positieven, debolletjes voor de werkelijke-positieven. (2) Longbeeld met aangeduide kandidaat nodulesna eleminatie van de geselecteerde vals-positieven.

3.1.2 Detectiemethode m.b.v. Template Matching (TM)

Takeshi Hara et al. [11] hebben in 2001 een geautomatiseerd detectiesysteem ont-

wikkeld dat eerst een detectie uitvoert door 3D en 2D Template Matching en daarna

een detectie door Template Matching langs de longwanden.

• Detectie door 3D en 2D Template Matching:

Werking van GA (Genetisch Algoritme) Optimalisatieproblemen die

te kampen hebben met een immens grote oplossingsruimte zijn vaak niet een-

voudig op te lossen met een algoritmische methode. Een zeer goede, maar niet

gegarandeerd de beste, oplossing kan worden gevonden door een Genetisch Al-

goritme te gebruiken. Een Genetisch Algoritme is een simulatie van evolutie.

Oplossingen bestaan uit een rijtje parameters, ook wel genen genoemd, die

samen een chromosoom vormen. Er wordt een aantal kandidaat-oplossingen

in een ’pool’ gestopt en door middel van een fitness-functie wordt bepaald

welke individuen de beste oplossingen zijn. Deze individuen krijgen de groot-

ste voortplantingskans. Het voortplanten gebeurt door het combineren van de

genen van twee chromosomen. Er worden cross-overs en mutaties gedaan. Er

ontstaat zo een nieuwe pool met nakomelingen, waar weer dezelfde voortplan-

tingsmethoden op worden toegepast. Na een tijdje zijn de zwakste individuen

16

Page 29: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

uitgestorven en de sterksten hebben hun goede eigenschappen verfijnd. Op

deze manier ontstaat een redelijk goede oplossing voor het probleem, alleen

maar op basis van een fitness-functie. [9]

De GA techniek wordt hier gebruikt in het detectieproces als een methode voor

het herkennen van patronen in het te observeren CT-beeld. Het geobserveerd

beeld bestaat hier uit drie-dimensionale beelden (512*512 pixels en ongeveer 30

snedes) en de patronen zijn hier beelden met een gesimuleerde nodule: een bol

met drie-dimensionale Gaussiaanse verdeling (met een diameter van 10, 20, 30

en 40 pixels en 3 snedes, zie figuur 3.12). Het onbekend object is even groot als

het referentiebeeld. De fitness-functie zal het verschil berekenen tussen twee

drie-dimensionale beelden.

Figuur 3.12: Vier gesimuleerde referentiebeelden

De individuen hebben chromosomen met de positie van het onbekend object

in het geobserveerd beeld van de patient en het referentiebeeld dat het beste

past op het onbekend object. De chromosomen bepalen zelf het best passende

referentiebeeld van de vier referentiebeelden m.b.v. cross-correlatie. Als de

overeenkomst tussen een onbekend object van het geobserveerd beeld en een

referentiebeeld groot genoeg is, wordt het onbekend object beschouwd als het

te detecteren object.

• Detectie door Template Matching langs de longwanden: deze methode ver-

schilt met de vorige doordat hij slechts een referentiepatroon heeft: een beeld

met een semi-circulaire vorm (zie figuur 3.13).

Resultaten

Vals-positieven eliminatie werd uitgevoerd m.b.v. een textuur analyse dat gebruik

maakte van vier kenmerken, waaronder bijvoorbeeld verschillen in grijs-niveau en

17

Page 30: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 3.13: Gesimuleerd referentiebeeld

entropie. Gemiddeld werd een sensitiviteit van 77% bereikt met 2,6 vals-positieven

per CT snede.

3.1.3 Detectie methode m.b.v. Neurale Netwerken (NN)

Deze CAD techniek ontwikkeld door Manuel G. Penedo et al. [20] in 1998. Het

neuraal netwerk werd getraind, getest en geevalueerd met zowel werkelijke- als

gesimuleerde-beelden. Het algoritme bestaat uit een bewerkingsfase voor signaal-

versterking en een detectiefase.

Bewerkingsfase voor signaalversterking. Deze fase normaliseert de beelden

om enerzijds een beter verschil te verkrijgen tussen achtergrondstructuren van de

long en structuren die op nodules lijken en anderzijds om minder afhankelijk te zijn

van de kwaliteit van de beelden. Tegelijk met de normalisatie wordt het zoekgebied

begrensd door het beeld van de longen af te zonderen.

Architectuur van het netwerk. Neurale netwerken zijn in feite vereenvoudigde

modellen van de hersenen bestaande uit zeer veel eenheden (neuronen) met gewich-

ten die de sterkte van de verbanden tussen de eenheden meten.

Dit netwerk maakt gebruik van een twee-lagen architectuur (zie figuur 3.14). De in-

putlaag is opgebouwd uit M*M neuronen die overeenstemmen met een geselecteerde

vierkant van het bewerkte U*U beeld, met M de grootte van de gezochte structuren.

18

Page 31: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

De outputlaag en de twee verborgen lagen hebben respectievelijk een, n en m neu-

ronen en genereren hun output d.m.v. een sigmoid activatie functie. De output van

de outputlaag ligt in het interval [0, 1] en is de maat waarin de aangeduide structuur

inderdaad een nodule is.

Figuur 3.14: Het NN voor de detectie van nodules

Netwerktraining. Het netwerk wordt hier a.d.h.v. vier beelden getraind op de

detectie van zowel nodules als structuren die op nodules lijken omdat deze twee

niet van elkaar kunnen worden onderscheiden door enkel het grijs-niveau kenmerk.

Voor elk trainingsbeeld wordt d.m.v. een genormaliseerde kruiscorrelatie een gewenst

output beeld gegenereerd waarbij elke pixel een label toegekend krijgt die de mate

voorstelt waarin deze pixel tot een structuur behoort die op een nodule lijkt. Figuur

3.15 is zo een gewenst output beeld voor het input beeld op figuur 3.14. Vervolgens

worden de gewichten van het netwerk herzien door de totale fout (over al de trai-

ningspatronen) tussen de actuele output van het netwerk en de gewenste output te

minimaliseren via een kleinste kwadraten methode. Uiteindelijk worden de overige

beelden door dit neuraal netwerk geanalyseerd, wat resulteert in gelabelde beelden

waarop de gevonden kandidaat nodules staan aangeduid. Deze kandidaten zijn in

feite verbonden pixels met dezelfde afmeting en cirkelvorm als een nodule, bekomen

door de gelabelde pixels van het gegenereerde beeld.

19

Page 32: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 3.15: Het gegenereerde gewenste output beeld voor het input beeld op figuur 3.14.

3.2 Classificatiemethoden

3.2.1 Classificatie d.m.v. Neurale Netwerken (NN)

De CAD ontwikkeld door Manuel G. Penedo et al. in 1998 [20] bestond uit de detec-

tiemethode d.m.v. neurale netwerken zoals hierboven besproken en deze classificatie-

methode, tevens d.m.v. neurale netwerken. Dit neuraal netwerk werd ook getraind,

getest en geevalueerd met zowel werkelijke- als gesimuleerde-beelden. De CAD heeft

een sensitiviteit van 89% - 96% en 5 - 7 vals-positieven per snede, afhankelijk van

de grootte van de nodules

Kromming-piek oppervlakte. Voor het opdelen van de kandidaatnodules in

werkelijke- en vals-positieven wordt eerst elke kandidaat nodule omgevormd tot een

kromming-piek oppervlakte. Met kromming wordt hier de lokale kromming bedoeld

van het databeeld bezien als een intensiteitsoppervlakte. Het beeld wordt nu be-

zien als een topografische kaart. Het grijs-niveau van elke pixel stemt overeen met

een bepaald hoogtegebied. Door dit neuraal netwerk een analyse te laten uitvoeren

op de topografische kaart kunnen de werkelijke- en vals-positieve nodules van elkaar

worden onderscheiden. Zo zal bijvoorbeeld een geısoleerde piek met een bepaalde ra-

diale symmetrie overeenstemmen met een werkelijke-positieve, maar een ketting van

pieken waarbij geen enkele piek los staat van de andere, zal worden geınterpreteerd

als de rand van een rib.

Netwerk Architectuur. Dit neuraal netwerk heeft een twee-laags architectuur

(zie figuur 3.16). Elke laag is lokaal of volledig verbonden met zijn vorige laag. De

input laag bestaat uit Q*Q neuronen, het centrale gebied van een kandidaat-nodule

gegenereerd door het vorige netwerk. De twee verborgen lagen hebben respectievelijk

N*N en P*P neuronen. De k*k en j*j gebieden worden ontvankelijke gebieden

20

Page 33: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

genoemd. Al de outputs worden door een sigmoid activatie functie gegenereerd. De

output van de output laag geeft de mate waarin de kandidaat nodule tot de klasse

met werkelijke- of vals-positieven behoort.

Figuur 3.16: Het NN voor de classificatie van nodules.

Netwerktraining. Dit netwerk wordt getraind door twee algoritmes en tien trai-

ningsbeelden, waaronder de vier beelden die het neurale netwerk uit de detectie-

methode hebben getraind. De tien trainingsbeelden worden in het vorige neurale

netwerk ingevoerd die kandidaat-nodules genereert. Hieruit worden d.m.v. bepaalde

criteria nodules geselecteerd die dit neuraal netwerk zullen trainen.

3.2.2 Classificatie d.m.v. Support Vector Machine (SVM)

SVM is een zelf-lerend algoritme voor het oplossen van patroonherkenningsproble-

men. Een patroon heeft verschillende kenmerken. Als er slechts twee kenmerken

worden geselecteerd kan men deze in een 2D-schema voorstellen, het ene kenmerk

op de x-as, het andere op de y-as. Figuur 3.17 is hier een voorbeeld van. Op de-

ze figuur worden verschillende manieren getoond hoe de patronen in twee klassen

kunnen worden opgedeeld d.m.v. een rechte. Bij elk van deze scheidingslijnen horen

twee ’support vectoren’, een aan elke kant en op gelijke afstand van de rechte. Deze

laatsten worden voorgesteld door stippellijnen, zijn parallel aan de scheidingslijn en

ze gaan door de punten die het dichtst bij deze scheidingslijn liggen.

21

Page 34: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 3.17: Kenmerkenvectoren met twee kenmerken onderverdeeld in twee klassen.

De optimale scheidingslijn bij SVM is deze waarbij de support vectoren zo ver

mogelijk zijn verwijderd van de scheidingslijn. Als er nu meer dan twee kenmerken

worden onthouden dan zullen de klassen niet meer worden gescheiden door een rechte

maar door een hypervlak. De hypervlakken worden gevonden m.b.v. de Lagrange

optimalisatie methode. Niet-lineaire problemen kunnen worden omgevormd naar

lineaire problemen en worden verder opgelost als lineaire problemen.

Figuur 3.18: Kenmerkenvectoren met twee kenmerken onderverdeeld in twee klassen. Eenkenmerkenvector werd verkeerd ingedeeld.

SVM wordt hier gebruikt voor de kandidaat nodules gedetecteerd door een de-

tectiemethode in twee klassen onder te verdelen: de werkelijke- en vals-positieven.

De patronen zijn dus de kandidaat nodules. De kenmerken van de kandidaat nodu-

les, bijvoorbeeld hun grootte, hun rondvormigheid, hun kleur... , worden bekomen

door beeldverwerking. Vals-positieven bevinden zich aan de verkeerde kant van het

hypervlak zoals getoond in figuur 3.18. Campadelli et al. [8] maakten gebruik van

zestien kenmerken van de kandidaatnodules om deze classificatiemethode te illustre-

22

Page 35: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

ren. Bij grote sensitiviteit bereikten ze echter slechts een specificiteit van ongeveer

70%.

3.2.3 Classificatie d.m.v. Data Mining

Data Mining is een zelf-lerend analytisch proces dat enorm grote hoeveelheden data

kan verwerken. De gebruikte data zijn kenmerken van patienten zoals de diameter

van gevonden solitaire nodules, de leeftijd van de patient, zijn voorgeschiedenis

omtrent roken, enz. Telkens wordt ook de gemaakte diagnose opgeslagen. Figuur

3.19 toont een voorbeeld van opgeslagen data. K1, K2, K3 en K4 zijn vier kenmerken

van patient X en D is de gestelde diagnose. Als nu een groep patienten een unieke

subset van kenmerken K1, ..., Kn bezitten die alle dezelfde diagnose D hebben, dan

kan men hieruit een beslissingsregel afleiden: als K1, ..., Kn, dan D. Data Mining zal

zo een nog onbekende diagnose kunnen voorspellen voor een patient met bepaalde

kenmerken.

Figuur 3.19: Test Data.

Er kunnen diagnoses gemaakt worden zonder rekening te houden met al de ken-

merken. In figuur 3.19 is het bijvoorbeeld voldoende om voor kenmerk K1 de waarde

een te hebben om de diagnose D=2 te bekomen omdat er slechts een patient bestaat

waarbij K1=1. Verder kan de beslissingsregel

D = 0 als K1 = 0, K2 = 1 en K3 = 0

gesteld worden. Dit kan echter herleid worden naar

D = 0 als K1 = 0 en K3 = 0

omdat enkel patient een en patient drie de waarde nul voor de kenmerken K1 en

K3 hebben en ze allebei dezelfde diagnose D=0 bevatten. De waarden van de niet-

gebruikte kenmerken worden vervangen door een ’x’ omdat deze informatie niet

23

Page 36: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

nodig is voor een diagnose te stellen. De tabel in figuur 3.20 geeft een samenvatting

per patient van de kenmerken die nodig en voldoende zijn om de diagnose eenduidig

te kunnen stellen. Er zijn bij sommige patienten meerdere mogelijkheden afgebeeld

maar slechts een per patient moet worden onthouden. De tabel wordt een beslis-

singstabel genoemd en elke regel vormt een beslissingsregel.

(a) (b)

Figuur 3.20: (a) Beslissingsregels per patient met minimaal aantal kenmerken. (b) Voor-beeld beslissingstabel.

Andrew Kusiak et al. [14] ontwierpen twee algoritmes, een gebaseerd op Data

Mining voor het stellen van een diagnose en een ander, gebaseerd op sets van ken-

merken die bewezen hebben zeer nauwkeurige beslissingen te maken, om de gestelde

diagnose te bevestigen.

3.3 Heropbouw van de longbloedvaten

De bloedvaten in de longen hebben een boomstructuur die vertakt vanaf het cen-

trum tot de periferie van de long. Naast deze vertakking worden de bloedvaten ook

smaller naar de periferie toe. Hierdoor kan een CT-beeld onsamenhangende stukjes

bloedvaten vertonen. Dit heeft dan weer als gevolg dat dergelijke smalle en onsa-

menhangende bloedvatensegmenten op lokaal niveau verward kunnen worden met

nodules en als vals-positieven worden geklasseerd bij een detectiemethode. De glo-

bale structuur van een opnieuw opgebouwde bloedvatenboom kan dan continuıteits-

en collineariteitsrestricties opleggen om de dubbelzinnigheid op lokaal niveau op te

heffen en zo andere classificatiemethodes te verbeteren.

Gady Agam et al. [3] ontwikkelden een dergelijk algoritme waarmee ze 38% van

24

Page 37: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

de vals-positieven konden verwijderen uit de kandidaatnodules. De methode han-

teert eerst filters om een onderscheid te maken tussen bloedvaten, nodules en de

verbindingspunten van bloedvaten. Deze filters zijn gebaseerd op eigenwaardenver-

houdingen van een correlatiematrix van gradient-gerelateerde vectoren en leveren

goede resultaten op zoals afgebeeld in figuur 3.21. Figuur 3.21(a) is het oorspronke-

lijke kunstmatig vervaardigd beeld. Figuren 3.21(b), (c) en (d) tonen respectievelijk

de verbindingspunten van bloedvaten, de bloedvaten en de verbindingspunten van

bloedvaten en de nodules gedetecteerd door de filters.

Figuur 3.21: Versterkte bloedvaten, verbindingspunten van bloedvaten en nodules d.m.v.correlatiegebaseerde filters. (a) Het oorspronkelijk kunstmatig vervaardigd beeld. (b)Versterkte verbindingspunten van bloedvaten. (c) Versterkte bloedvaten en verbindings-punten van bloedvaten. (d) Versterkte nodules.

Figuur 3.22: heropgebouwde bloedvatenboom

25

Page 38: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

In een tweede instantie zullen de versterkte bloedvaten uit het oorspronkelijk

beeld worden gesegmenteerd en bewerkt met morfologische operaties om de bloed-

vatenboom opnieuw op te bouwen. Deze kan dan gebruikt worden om de beelddata

mee te helpen analyseren en interpreteren. Figuur 3.22 toont heropgebouwde bloed-

vatenbomen van de longen.

26

Page 39: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Hoofdstuk 4

Computergestuurde diagnose op

PET-beelden

In dit hoofdstuk worden bestaande CAD technieken op PET-beelden besproken.

Een PET-scan is een nucleair geneeskundig onderzoek waarbij een radioactief geken-

merkte speurstof wordt toegediend aan de patient. Meestal is dit fluorodeoxyglucose

(FDG). Glucose wordt in het lichaam vooral daar opgenomen waar veel delingsacti-

viteit plaatsvindt zoals in kwaadaardige tumoren. Op het PET-beeld zal t.o.v. ander

weefsel een lokaal verhoogde intensiteit worden weergegeven op de plaats waar de

glucose zich in het lichaam heeft geconcentreerd. Deze lokaal verhoogde intensiteit

beeld wordt een ’hot spot’ genoemd. Dit kan duiden op localisatie van tumorweef-

sel. Niet alle gevonden hot spots zijn tumoren. Ook het hart, ontstekingen en ruis

kunnen oorzaken zijn.

Bij een bestralingstherapie is de kennis van de exacte volume van de tumor van

groot belang. PET-beelden zijn echter onscherp en hebben een lage resolutie. Daar-

om wordt er onderzoek gedaan naar technieken die deze beelden scherper kunnen

maken. Naqa I. [17] bijvoorbeeld maakt hiervoor gebruik van deconvolutie. Hot

spots kunnen op PET-beelden worden gedetecteerd d.m.v. segmentatie of het wa-

tershedalgoritme. Deze laatste twee worden hieronder uitgelegd.

4.1 Segmentatie

De meest gebruikelijke methode voor het analyseren van PET-beelden is visuele

interpretatie. Zo een kwalitatieve visuele beeldinterpretatie is gebaseerd op het her-

kennen van gebieden met een verhoogde glucoseopname t.o.v. de achtergrond d.m.v.

27

Page 40: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

het blote oog. Een semikwantitatieve beeldanalyse daarentegen zal een concreet ge-

tal weergeven van de hoeveelheid opgenomen glucose in een vooraf afgebakende

verdachte zone, de ROI (Region Of Interest). Een genormaliseerde semikwanti-

tatieve beeldanalyse houdt rekening met een correctie op deze berekende activi-

teit. Standard Uptake Value (SUV) is hiervan het meest voorkomende voorbeeld.

Deze laatste wordt gedefinieerd als de deling van de weefselconcentratie door de

geınjecteerde activiteit, genormaliseerd door het lichaamsgewicht:

SUV = AT

V× Kg

A

waarbij:

AT = Activiteit in de ROI (µCi)

V = Volume van de ROI (gr)

Kg = Gewicht patient (gr)

A = Geınjecteerde activiteit (µCi)

Omdat FDG zich niet opstapelt in vet bestaat een andere correctie erin het

lichaamsgewicht te vervangen door het slank lichaamsgewicht (LBM - Lean Body

Mass). Het slank lichaamsgewicht wordt bekomen door het gewicht van de vette

onderdelen in het lichaam af te trekken van het totale lichaamsgewicht. Nog een

andere correctie is bijvoorbeeld nodig als een patient van nature uit een hoge glucose-

concentratie in zijn bloed heeft omdat deze concentratie dan wordt onderschat.

SUV analyse zou bepaald moeten worden omdat een hoge SUV gerelateerd is aan

een vergevorderd tumor stadium. Een pixel met een SUV van 1 heeft een gemiddelde

glucoseconcentratie. Een SUV groter dan 1 duidt op een lokale activiteitsconcentra-

tie. In de literatuur geeft een SUV groter dan 2.5 een longnodule aan. Dit is echter

maar een willekeurige drempelwaarde waar nooit een betrouwbare studie naar werd

gedaan. [5] Figuur 4.1 toont de berekende SUV voor een ROI. Voor meer informa-

tie over de verdiensten en de beperkingen van de SUV benadering verwijs ik naar

Anatomy of SUV van Sung-Cheng Huang [13].

Kwantitatieve analyse van PET-beelden kan worden uitgevoerd als er de mo-

gelijkheid is om de curve op te stellen waarbij de FDG concentratie in de slagader

uitgezet wordt t.o.v. de tijd. Dit laat toe om fysiologische parameters zoals de bloed-

stroom uit te drukken in absolute eenheden. Een dergelijke absolute kwantitatieve

analyse wordt doorgaans niet uitgevoerd tijdens klinische onderzoeken. [7]

28

Page 41: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Een vaak voorkomende segmentatietechniek is gebaseerd op het bepalen van een

globale drempelwaarde voor het opsporen van hot spots in PET-beelden. Deze

drempelwaarde kan worden bekomen door als drempelwaardeniveau 40% te nemen

van de maximale SUV. Na de hot spot detectie kan een klassificatie worden uitge-

voerd om goedaardige- van kwaadaardige weefselstructuren te onderscheiden d.m.v.

kenmerken zoals het aantal pixels in de hot spot of hun lokatie in het PET-beeld,

om ruis en hart te helpen opsporen.

De segmentatiemethode heeft ook zijn nadelen. De hot spots zullen niet worden

afgebakend en hun grootte niet worden gevonden. Deze twee elementen dragen bij

tot het bepalen van hoever de nodule al gevorderd is en het stellen van een juiste

diagnose. Ook de aanwezigheid van hot spots veroorzaakt door ruis zal hier volle-

dig van de drempelwaarde afhangen. Het komt zelfs voor dat een optimale globale

drempelwaarde niet bestaat. [6]

Figuur 4.1: SUV (Standard Uptake Value) in een ROI (Region Of Interest) voor en na debehandeling van de patient met chemotherapie [22]

4.2 Het Watershedalgoritme

Tumoren kunnen op PET-beelden veel gemakkelijker worden gevonden dan op CT-

beelden dankzij de hot spots die in contrast sterk verschillen van de achtergrond.

De hot spot detectie is hier dus minder belangrijk dan de noduledetectie bij CT,

maar wel de afbakening van de hot spots.

De hot spot detectie van Thomas Blaffert et al. [6] biedt een oplossing voor de na-

delen van de segmentatiemethode. Het algoritme zal een ROI detectie uitvoeren

d.m.v. watershed, een hartdetectie d.m.v. scanlijnen en de hot spots vergelijken met

de gedetecteerde kandidaatnodules op de corresponderende CT-beelden.

29

Page 42: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Hot Spot ROI detectie Bij het beschouwen van de grijswaarden op een PET-

beeld wordt het duidelijk dat hot spots altijd een lokaal maximum bezitten (zie figuur

4.2). Het watershedalgoritme werkt als volgt: beschouw de lokale maxima in het

PET-beeld. Elke van deze maxima wordt uitgebreid naar een gebied door af te dalen

naar lagere grijswaarden. Dit wordt het region-growing algoritme genoemd. Als een

drempelwaarde wordt ingesteld zodanig dat de gebieden stoppen met groeien vanaf

ze een grijswaarde tegenkomen gelijk aan de drempelwaarde, dan doet dit algoritme

net hetzelfde als de gewone segmentatie met een globale drempelwaarde. Hier wordt

echter geen drempelwaarde beschouwd en de gebieden zullen groeien tot ze een ander

gebied tegenkomen. Dit zal het volledige PET-beeld in gebieden segmenteren zoals

getoond in figuur 4.3. Een lokaal maxima kan hier nog gezien worden als een bergtop

en de rand van een gebied als een rivier tussen de bergen.

Figuur 4.2: PET-snede met een tumor als hot spot.

Figuur 4.3: Het watershedalgoritme toegepast op het PET-beeld.

De gevonden gebieden zijn ROI kandidaten. Verder onderzoek moet uitwijzen

30

Page 43: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

welke als hot spot worden beschouwd. Hiervoor wordt de gemiddelde en de maxi-

mum intensiteit van elk gebied berekend. Als deze hoger liggen dan een bepaalde

drempelwaarde is er sprake van een hot spot.

Uiteindelijk worden de gebieden die niet geselecteerd werden als hot spots sa-

mengevoegd tot een enkel gebied. Er moet tevens nagegaan worden of hot spots die

naast elkaar liggen nog moeten worden samengevoegd tot een enkele hot spot door

de grijswaarden op hun scheidingslijn te beschouwen.

Hartdetectie Voor de radioloog zou het interessant zijn een volledige analyse van

de gevonden hot spots weer te geven zoals bijvoorbeeld ”Deze hot spot heeft 70%

kans een tumor te zijn en 30% kans een letsel te zijn.” Bladdert beperkt zich echter

tot de hartdetectie.

Het hart is een spier dat meestal evenveel of meer glucose opneemt dan tumoren.

Deze wordt dus zo goed als altijd als kandidaat ROI geselecteerd maar kan op ver-

schillende manieren worden gevonden dankzij zijn unieke hoefijzervorm. Blaffert T.

beschouwt de grijswaarden op een scanlijn door de gevonden ROI. Als de corres-

ponderen grafiek twee pieken vertoont zoals getoond in figuur 4.4 dan wordt deze

als het hart geclassificeerd. Doorgaans heeft zo een grafiek voor een normale nodule

slechts een piek.

Figuur 4.4: Lokatie van de scanlijn door de hartkamer (links) en scanlijn door het hart incoronale richting (rechts). [6]

Vergelijking nodules PET/CT Nu de hot spots gevonden zijn op het PET-

beeld en de nodules op het corresponderende CT-beeld moeten deze nog met elkaar

vergeleken. Enkel een overeenkomst in lokatie tussen een nodule op een CT-beeld

31

Page 44: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

en een hot spot op het corresponderende PET-beeld zal leiden tot een werkelijke-

positieve. Dit is te zien in figuur 4.5 waar een gemeenschappelijke tumor werd

gevonden.

Figuur 4.5: Hot spots gevonden in het PET-beeld (links), nodules gevonden in het CT-beeld (rechts) en de gevonden tumor, aangeduid met een ononderbroken cirkel. [6]

32

Page 45: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Hoofdstuk 5

Ontwikkeling van een automatisch

detectiealgoritme van longnodules

a.d.h.v PET/CT patientdata

Matlab is een voor de hand liggende keuze voor het implementeren van de CAD

techniek. Deze programmeeromgeving bevat reeds vele functies die kunnen helpen

bij het opbouwen van een automatisch detectiealgoritme. PET- en CT-beelden

kunnen worden gelezen en eenvoudig worden bewerkt als een matrix van pixels.

In deze thesis wordt gebruik gemaakt van PET/CT patientdata afkomstig van 12

patienten. De beelden werden gelijktijdig geregistreerd door een Philips PET/CT-

scanner. Dit vergemakkelijkt het op een lijn brengen van de beelden omdat de

patient op beide beelden in dezelfde positie ligt. De dataset bevat zowel massa’s, dit

is nog een verder stadium dan grote nodules, als grote en kleine nodules gescoord

door dr. Ingeborg Goethals van het Universitair Ziekenhuis te Gent. Een dertigtal

snedes van de patientdata bevatten nodules. Elke tumor is zowel waarneembaar op

de PET- als op de CT-snede. In de literatuur wordt altijd gewerkt op CT- en PET-

beelden die een axiale dwarsdoorsnede van de longen weergeven. De implementatie

die volgt zal ook van deze beelden gebruik maken, en dus niet van de CT- en PET-

beelden met het sagittaal/coronaal beeld van de patient, omdat deze een betere

segmentatie toelaten. Bijlage A bevat de code van de implementatie.

33

Page 46: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

5.1 Detectiemethode

De detectiemethode die hier zal worden ontworpen zal kandidaatnodules zoeken aan

de hand van de CT-beelden van een patient door eerst de longen uit het beeld te

segmenteren, inclusief de vastgehechte longnodules. Vervolgens zal er gezocht wor-

den naar de kandidaatnodules binnen deze gesegmenteerde gebieden. Uiteindelijk

zullen een FROC en een AFROC curve worden opgesteld om de kwaliteit van deze

detectiemethode na te gaan.

5.1.1 Longsegmentatie

Bij de longsegmentatie worden de longgebieden uit het CT-beeld gesegmenteerd

omdat kandidaatnodules enkel voorkomen in deze longgebieden en zo het zoekgebied

kan beperkt worden. Er wordt vertrokken van figuur 5.1. In een eerste fase zullen

de longgebieden worden afgebakend zonder rekening te houden met de eventueel

aanwezige vastgehechte nodules. Hiervoor worden volgende stappen doorlopen:

Figuur 5.1: Het oorspronkelijke CT-beeld.

Binaire classificatie van de beeldpixels. De binaire classificatie van de beeld-

pixels maakt gebruik van de dichtheid van de verschillende weefsels (uitgedrukt in

Hounsfield units). Op de CT-snede zijn structuren met een kleine dichtheid aanwe-

zig, namelijk de longen en de lucht rond de thorax. Het overige lichaamsweefsel is

een structuur met grote dichtheid.

De bedoeling van deze classificatie is het opdelen van de beeldpixels van het CT-

34

Page 47: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

beeld in twee klassen: pixels die behoren tot weefsel met grote dichtheid worden

zwart gekleurd, pixels die behoren tot weefsel met kleine dichtheid worden wit ge-

kleurd. Omdat enkel de pixels van de lucht en de longen wit zullen worden gekleurd,

zullen duidelijk afgebakende longgebieden verschijnen.

Om dit te bereiken is er nood aan een drempelwaarde zodanig dat alle pixels don-

kerder dan deze drempelwaarde zwart worden gekleurd, de andere wit. Omdat

eenzelfde drempelwaarde niet noodzakelijk geschikt is voor elke dataset wordt hier

per CT-snede een optimale drempelwaarde berekend op iteratieve wijze zoals wordt

beschreven in een werk van Shiying Hu [12]. Zij Ti de segmentatiedrempelwaarde in

stap i. Een nieuwe segmentatiedrempelwaarde wordt gekozen door de huidige toe

te passen op het beeld. Zij µz en µw dan de gemiddelde grijswaarden van respec-

tievelijk de pixels behorende tot weefsel met grote dichtheid (en dus zwart werden

gekleurd) en de pixels behorende tot weefsel met kleine dichtheid (en dus wit werden

gekleurd). De nieuwe segmentatiedrempelwaarde wordt dan bekomen door

Ti+1 = µz+µw

2

Deze iteratieve drempelwaardeherziening wordt herhaald tot er deze niet meer ver-

andert, i.e., Ti+1 = Ti. De uiteindelijke drempelwaarde wordt getoond in figuur 5.2.

De initiele drempelwaarde wordt hier gekozen als de helft van de maximum grijs-

waarde van het CT-beeld. Figuur 5.3 toont een binaire classificatie van pixelwaarden

d.m.v. een optimale segmentatiedrempelwaarde.

Figuur 5.2: Optimale drempelwaarde.

Kleurinversie en verwijdering achtergrond De volgende stap bestaat erin

de lucht rond de thorax te verwijderen. Hiervoor wordt eerst een kleurinversie

35

Page 48: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.3: Een binaire classificatie d.m.v. een optimale segmentatiedrempelwaarde.

uitgevoerd zoals te zien op figuur 5.4. Matlab bevat een functie die elk object

verwijderd dat de rand van de figuur raakt. Omdat de achtergrond nu beschouwd

wordt als zo een object zal deze worden verwijderd zoals getoond op figuur 5.5.

Figuur 5.4: Kleureninversie.

Dilatatie, opvullen en erosie Tot nu toe werd een ruwe longsegmentatie op-

gebouwd. Bij deze segmentatie komt het echter voor dat de longkwabben worden

opgesplitst in meerdere delen. Dit kan bijvoorbeeld veroorzaakt worden door een

minder goede kwaliteit van het CT-beeld. Om de longkwabben terug samenhangend

te maken wordt hier gebruik gemaakt van dilatatie. Dilatatie is een morfologische

operator die bestaat uit het verwijden van elke rand van elk object op de figuur.

36

Page 49: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.5: Verwijderen van de achtergrond door de rand van de figuur te zuiveren vanrakende objecten.

Elk object wordt als het ware uitgezet, opgezwollen in alle richtingen. Figuur 5.6

toont een dilatatie van figuur 5.5. De volgende stap bestaat uit het opvullen van

elk resterend gaatje dat volledig vervat zit in een object zoals getoond in figuur 5.7.

Uiteindelijk zal erosie elk object terug een beetje doen krimpen. Erosie is tevens een

morfologische operator en is de inverse van dilatatie. Figuur 5.8 toont een erosie

van figuur 5.7.

Figuur 5.6: Dilatatie van figuur 5.5.

Isolatie van de longen Isolatie van de longen is de laatste stap in het segmenteren

van de longen zonder rekening te houden met de vastgehechte nodules en bestaat erin

37

Page 50: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.7: Opvullen van de gaten omsloten door objecten van figuur 5.6.

Figuur 5.8: Erosie van figuur 5.7.

de longkwabben te identificeren van de andere aanwezige objecten. De horizontale

lichtgebogen lijn is de motorische tafel waar de patient zich op bevindt. Armato III et

al. [4] concentreerde zich op de isolatie van de thorax, waarbij dus deze tafel van het

CT-beeld werd verwijderd, nog voordat hij begon aan de segmentatie. Maar omdat

deze tafel zo een opmerkelijk vorm heeft kan deze gemakkelijk bij deze stap worden

verwijderd. Er worden drie kenmerken van elk object in de figuur berekend, namelijk

de oppervlakte, de ’grootste as’ en de orientatie. Zo zal een object verwijderd worden

als zijn oppervlakte te groot of te klein is om een long te kunnen zijn. De oppervlakte

van de tafel is zeer groot, die van het kleinste object is zeer klein. Tevens, als de

lengte (in pixels) van de grootste as van de ovaal dat dezelfde genormaliseerde tweede

38

Page 51: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

momenten heeft dan het gebied, zoals getoond op figuur 5.9, te groot of te klein is,

zal dit object worden verwijderd. Ook de tafel zal een te grote grootste as hebben om

een longkwab te kunnen zijn. Als laatste wordt de orientatie berekend, dit is de hoek

(in graden) tussen de x-as en de grootste as. De tafel heeft een horizontale orientatie

waardoor deze ook hier kan worden geelimineerd. De orientatie wordt tevens getoond

op figuur 5.9. Deze drie kenmerken staan beschreven in de handleiding van Matlab.

De bekomen figuur na de isolatie van de longen wordt weergegeven in figuur 5.10.

Figuur 5.9: Links: gebied en ovaal met dezelfde genormaliseerde tweede momenten.Rechts: grootste as van de ovaal en de orientatie.

Figuur 5.10: Isolatie van de longen toegepast op figuur 5.8.

39

Page 52: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

De tweede fase bestaat erin de gesegmenteerde longkwabben zonder vastgehechte

nodules uit te breiden naar longkwabben met vastgehechte nodules. Hiervoor worden

twee stappen doorlopen, ’Contour Tracking’ [10] en een op het rollende bal gebaseerd

algoritme [4].

Contour Tracking Het doel van Contour Tracking is de opeenvolgende pixels

van de rand van een object opsporen en geordend in een rij opslaan. In dit geval

wordt dit twee keer toegepast, eenmaal voor elke longkwab. Figuur 5.11 toont deze

methode. Een eerste pixel p1 wordt gedetecteerd op de rand bovenaan de long.

Vervolgens wordt kloksgewijs gezocht in de negen omringende pixels van p1 naar

een pixel die ook tot de long behoort. De eerste keer wordt vertrokken van pixel

een zoals aangeduid in de roos. Eenmaal een volgende pixel p2 op de longrand

is gevonden wordt gekeken met welk getal g op de roos deze overeenstemt. De

volgende pixel p3 wordt gezocht tussen de negen omringende pixels van p2. Indien

g een oneven getal is zal de pixel waarvan wordt vertrokken worden berekend worden

door 45 graden terug te keren op de roos. Als daarentegen g een even getal is zal

de beginpixel worden berekend door 90 graden terug te keren op de roos. Op deze

manier zullen pixels die niet tot de long behoren slechts eenmaal worden onderzocht.

De gedetecteerde longranden zijn afgebeeld op figuur 5.12.

Figuur 5.11: Contour Tracking: detectie van de opeenvolgende pixels van de longranden.

40

Page 53: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.12: Gedetecteerde opeenvolgende pixels van de longranden uitgetekend op hetoorspronkelijke beeld

Longuitbreiding met vastgehechte nodules De twee rijen met de opeenvol-

gende pixels van de longranden van de longkwabben kunnen nu gebruikt worden

voor het detecteren van de vastgehechte nodules. Hiervoor wordt gebaseerd op het

rollende bal algoritme van Armato et al. [4] zoals hierboven reeds uitgelegd. Dit

algoritme zegt dat een twee-dimensionale filterbal opeenvolgend tangentieel aan elk

punt van de longomtrek zal worden geplaatst. Als de longomtrek de bal op meer

dan een plaats raakt is er mogelijk sprake van een vastgehechte nodule en zullen de

uiteinden met elkaar worden verbonden. In deze thesis worden de rijen met de pixels

van de longranden doorlopen op zoek naar vastgehechte nodules met een vooraf ge-

definieerde grootte. Hier wordt naar nodules van 50, 40, 30, 20 en 10 pixels groot

(in omtrek) gezocht omdat de dataset verkregen door het Universitair Ziekenhuis

een dergelijke variatie aan nodules bevat. Een opeenvolgende rij van pixels wordt

als vastgehechte nodule beschouwd indien de afstand tussen de uiteinden kleiner is

dan een tevens vooraf gedefineerde drempelwaarde. Figuur 5.13 toont het resultaat

van dit algoritme toegepast op de vorige figuur 5.12. Drie gebieden werden hierbij

gevonden als mogelijke vastgehechte nodules waarvan een werkelijk een kankerge-

zwel is. De longen werden dus uitgebreid met mogelijke vastgehechte nodules. Het

is de taak van de hierna volgende detectiemethode om structuren te detecteren die

lijken op een kankergezwel: de kandidaatnodules.

Een probleem bij de gebruikte patientdata als testdata is dat deze ook aangehechte

longmassa’s bevatten. De CAD die hier ontwikkeld wordt fungeert echter als basis

om longnodules in een vroegtijdig stadium te detecteren. De longuitbreiding werd

41

Page 54: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

niet voorzien op het detecteren van dergelijke massa’s. Deze zullen wel de uitein-

delijke cijfers kunnen beınvloeden. Figuur 5.14 toont twee CT-beelden, links de

gesegmenteerde longen voor de longuitbreiding en rechts erna. Slechts een deel van

de longmassa werd gedetecteerd als longnodule.

Figuur 5.13: Drie mogelijke vastgehechte longnodules werden gevonden waarvan eenwerkelijke-positieve nodule, aangeduid met de pijl.

Figuur 5.14: Links: CT-beeld met gesegmenteerde longen voor de detectie van vastgehech-te nodules. Rechts: CT-beeld met gesegmenteerde longen na de detectie van vastgehechtenodules.

42

Page 55: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

5.1.2 Detectie kandidaat longnodules op CT-beelden

Voor het detecteren van de kandidaat longnodules wordt hier gebruik gemaakt van

Template Matching. Hiervoor is een geobserveerd beeld en een referentiebeeld ver-

eist. Het geobserveerd beeld zijn de gesegmenteerde longen zoals geıllustreerd door

figuur 5.15 en werden bekomen in de bovenstaande segmentatiemethode. Het refe-

rentiebeeld is een gesimuleerde nodule waarmee gezocht zal worden naar kandidaat-

nodules in het geobserveerd beeld. Takeshi Hara et al. [11] constateerden dat hun

longnodules in het algemeen een schaduw vertoonden waarbij de CT-waarden een

Gaussiaanse distributie aannamen. Ze simuleerden daarom een nodule d.m.v. een

eenvoudige schijf met drie-dimensionale Gaussiaanse distributie. In deze thesis werd

een nodulemodel ontwikkeld met een twee-dimensionale Gaussiaanse distributie (zie

figuur 5.16) die hier verder zal worden gebruikt.

Figuur 5.15: Gesegmenteerde longen.

Figuur 5.16: Gesimuleerde nodule opgebouwd d.m.v. de Gaussiaanse distributie.

De Fouriertransformatie wordt aangewend voor de detectie van de kandidaat

43

Page 56: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

longnodules. Deze heeft namelijk een convolutie-eigenschap die toelaat de kruiscor-

relatie tussen twee beelden te berekenen. Dit kan worden gebruikt voor de detectie

van eigenschappen in een beeld, en dus voor Template Matching. Convolutie van

twee beelden in het 2D-ruimtedomein kan worden bekomen door van de twee beelden

de Fouriertransformatie te berekenen, deze te vermenigvuldigen in het frequentie-

domein en vervolgens dit product terug naar het ruimtedomein te brengen via een

inverse Fouriertransformatie. De convolutie van twee beelden wordt gedefinieerd

door onderstaande formule.

(f ∗ g)(m) =∑n

f(n)g(m− n),

met f en g de twee beelden.

Kruiscorrelatie is een meervoudige correlatie tussen twee beelden. Na elke correlatie

wordt het referentiebeeld telkens een eenheid in het 2D-ruimtedomein (pixel) ver-

schoven over het geobserveerd beeld. Het doel van correlatie is twee beelden met

elkaar te vergelijken: hoe hoger het correlatieresultaat, hoe meer de beelden overeen

komen. De kruiscorrelatiefunctie wordt gedefineerd door de volgende formule.

(f ∗ g)(m) =∑n

f(n)g(m + n),

Omdat hier wordt gewerkt met een reeel en sym metrisch referentiebeeld zal de

kruiscorrelatie hier gelijk zijn aan de convolutie. Deze zijn eenvoudig te implemen-

teren daar Matlab die eigenschap ondersteunt.

Figuur 5.17 toont het resultaat van de kruiscorrelatie. Hoe hoger de intensiteit

van de pixel, hoe beter de correlatie met het referentiebeeld. Toepassing van een

binaire classificatie op dit beeld met een gekozen drempelwaarde toont dan enkel

de pixels die het beste correleren met het referentiebeeld. De drempelwaarde zal

telkens een vaste percentage zijn, genomen van de hoogste correlatiewaarde. Figuur

5.18 is zo een binaire classificatie van figuur 5.17. Hier is een werkelijke-positieve

nodule aanwezig, aangeduid met de pijl, en twee valse positieven.

44

Page 57: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.17: Resulterend beeld na toepassing van de convolutie-eigenschap van de Fourier-transformatie, of nog de kruiscorrelatie. Hoe hoger de intensiteit van een pixel, hoe groterde correlatie met de gesimuleerde nodule.

Figuur 5.18: Drie gedetecteerde kandidaatnodules waarvan een werkelijke-positieve noduleaangeduid met de pijl.

45

Page 58: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

5.1.3 Evaluatie van de detectiemethode

De detectiemethode werd getest op de patientdata gescoord door dr. Ingeborg Goet-

hals van het Universitair Ziekenhuis van Gent. De meetwaarden zijn terug te vinden

in Bijlage B. De ontwikkelde computer-gestuurde diagnose zal na de classificatieme-

thode worden getoetst aan andere resultaten uit de literatuurstudie. Maar ze zal

ook worden vergeleken met de resultaten van de detectiemethode in afwezigheid van

de classificatiemethode zodat het verbeterende effect van de classificatiemethode op

de detectiemethode goed kan worden waargenomen.

Een evaluatie van de hier ontworpen detectiemethode kan worden uitgevoerd door

het opbouwen van twee grafieken, de FROC en de AFROC curve [16]. Ze geven een

diagnostische nauwkeurigheid, namelijk een overeenkomst tussen de gestelde dia-

gnoses en de ’echtheid’ van deze. Hierbij zijn sensitiviteit en specificiteit belangrijke

begrippen. De sensitiviteit is de fractie gedetecteerde longnodules van alle nodules

aanwezig in de beschouwde patientdata. De specificiteit daarentegen wordt gedefi-

nieerd als de fractie van de negatieve gevallen die ook werkelijk-negatief gevonden

wordt door de CAD.

De y-as van zowel de FROC curve (Free-responce Receiver Operating Characteristic

curve) als de AFROC curve (Alternative FROC) geeft de berekende sensitiviteit.

De FROC curve zet deze sensitiviteit uit tegenover 1-specificiteit, d.i. het gemiddeld

aantal vals-positieve nodules per CT-snede. De x-as van de AFROC curve daaren-

tegen geeft 1- de specificiteit, d.i. de fractie van de CT-snedes waarop minstens een

nodule aanwezig is die als vals-positieve werd geclassificeerd.

De FROC en de AFROC curve zijn alternatieven voor de ROC curve die tevens

gebruikt kunnen worden in het geval dat CT-snedes meer dan een kandidaatnodule

bevatten. De AFROC curve in het bijzonder zal een analyse kunnen geven van de

methode (analoog als bij een ROC curve), namelijk door de oppervlakte onder de

curve te berekenen. Dit is niet mogelijk bij een FROC curve daar een CT-snede een

onbekend aantal kandidaatnodules kan bevatten en een oppervlakte onder de curve

berekenen dus niet zinvol is.

De sensitiviteit en de specificiteit zijn afhankelijk van de drempelwaarde genoemd

bij de detectiemethode waarmee een binaire classificatie wordt uitgevoerd op het

resulterend beeld na de kruiscorrelatie. Hoe hoger deze drempelwaarde, hoe minder

kandidaatnodules er worden gedetecteerd, hoe hoger de specificiteit maar ook hoe

lager de sensitiviteit. Sensitiviteit en specificiteit worden uit de FROC afgeleid, de

oppervlakte onder de AFROC curve wordt berekend en deze resultaten kunnen dan

46

Page 59: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

worden getoetst aan andere resultaten.

De FROC en AFROC curves voor de detectiemethode zijn weergegeven in figuren

5.19 en 5.20. Bij een sensitiviteit van 90% werden ongeveer 2,25 vals-positieve

nodules per CT-snede gevonden, of nog 24% specificiteit. De oppervlakte onder de

AFROC curve bedraagt ongeveer 0,5. De PET- en CT-datasets van de patienten

werden in 2D overlopen. Elke corresponderend paar van CT- en PET-snedes werden

met elkaar vergeleken. Er werd daarbij dus geen rekening gehouden met hun buren.

Voor grote nodules of bij massa’s, nodules in een nog verder gevorderd stadium, is

het interessant de buursnedes in beschouwing te nemen mits deze gezwellen meerdere

snedes zullen bestrijken. Bij deze thesis is het echter de bedoeling een basis op te

bouwen om nodules in een vroeg stadium te detecteren. Deze zijn zo klein dat ze

maar op een enkele snede te zien zijn en de dataset dus slechts in 2D zal moeten

doorlopen worden.

47

Page 60: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.19: FROC curve: sensitiviteit uitgezet tegen het gemiddeld aantal vals-positievenper CT-snede. Deze geeft een indicatie van ’1-specificiteit’.

5.2 Classificatiemethode

De classificatie maakt gebruik van de informatie op de PET-beelden die samen met

de CT-beelden door de Philips gemini hybride PET/CT-scanner werden verworven.

Een eerste stap bestaat erin de PET- en de CT-beelden met elkaar te registreren.

Een tweede stap maakt gebruik van het watershedalgoritme voor het classificeren

van de kandidaatnodules als werkelijke- of vals-positieven aan de hand van de PET-

informatie. Vervolgens zullen de FROC en AFROC curve worden opgesteld en

worden vergeleken met deze uit de detectiemethode.

48

Page 61: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.20: AFROC curve: sensitiviteit uitgezet tegen ’1-pecificiteit’, d.i. bepaald als defractie snedes waar minstens een valse positieve nodule werd gedetecteerd.

5.2.1 Registratie PET/CT

De PET- en de CT beelden die voor de patienten werden verworven werden gemaakt

door een hybride PET/CT scanner die als voordeel biedt dat de patient in dezelfde

houding ligt bij de beide scans. In theorie is er dus een betere registratie mogelijk

tussen twee corresponderende PET- en CT beelden. In de praktijk is dit niet zo

triviaal. In het 3D-domein verschilde voor eenzelfde patient de PET- en de CT

dataset in elke dimensie. De CT beelden hebben een grootte van 512*512 pixels

tegenover 144*144 bij de PET-beelden. En elke PET-snede strekt zich uit over 4

mm dikte t.o.v. 5 mm bij de CT snedes. Dit werd opgelost door een herschaalfunctie

die ondersteund wordt door Matlab.

Na deze herschaling was nog onbekend welke PET-snede nu overeenkwam met welke

CT snede. Dit werd manueel opgelost door voor elke patient de PET- en CT snedes

op te sporen met de nodule/hot spot gescoord door dr. Ingeborg Goethals. Verder

werd nagegaan in welke richting de PET- en de CT scans werden uitgevoerd. Bij een

49

Page 62: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

deel van de patienten beginnen zowel de PET- en de CT datasets bij het hoofd of

bij de romp. Bij andere patienten begint de ene dataset bij het hoofd, de andere bij

de romp. Dit alles samengebracht leidt tot een goede registratie van beide datasets

zoals getoond in figuur 5.21.

Opmerking: elke CT dataset bevatte twee scans van de longen met een gelijk aantal

CT snedes. Er werd telkens gebruik gemaakt van de CT snedes van de eerste helft

van de datasets.

Figuur 5.21: PET/CT synchronisatie. De sneden bevatten twee kankergezwellen.

50

Page 63: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

5.2.2 Watershedalgoritme

Voor de classificatie van de CT kandidaatnodules werd gebruik gemaakt van infor-

matie op de PET-beelden. Er werd eerst gepoogd een globale drempelwaarde te

gebruiken voor de hot spot detectie op de PET-beelden. De CT kandidaatnodules

werden dan getoetst aan de waarden van de pixels op de overeenkomstige lokatie op

het corresponderende PET-beeld. Er werd echter toch geopteerd voor de watershed-

methode om verschillende redenen. Een eerste reden is dat de detectiemethode wel

kandidaatnodules zoekt, maar geen informatie geeft over de grootte van de gevonden

nodules. Het watershedalgoritme heeft als voordeel goed afgebakende gebieden weer

te geven die dan tevens als werkelijk- of vals-positief kunnen geclassificeerd worden

als er respectievelijk wel en geen hot spot in dit gebied werd gevonden.

Een tweede reden is dat, hoewel de PET- en CT beelden gesynchroniseerd werden,

eenzelfde nodule op een CT beeld niet per se op dezelfde plaats zal voorkomen op

het corresponderende PET-beeld. Figuur 5.22 toont dit voor twee corresponderende

PET/CT beelden van een van de patienten. Dit zou kunnen veroorzaakt worden

door het in- en uitademen van de patient tijdens de scan (een PET-scan duurt ge-

middeld 45 minuten tot een uur) of door bijvoorbeeld ruisfactoren. Ook hier wordt

dus het watershedalgoritme verkozen boven de segmentatie omdat een CT nodule,

die niet overlapt met de hot spot, wel kan overlappen met het gebied gevonden rond

de hot spot en dus wel juist kan worden geclassificeerd.

Figuur 5.22: Verschil in lokatie tussen de nodule gedetecteerd op het CT beeld (wittehomogene vlek, aangeduid door de witte pijl) en de hot spot gedetecteerd op het corres-ponderende PET-beeld (onderliggende wazige vlek, aangeduid door de gele pijl).

51

Page 64: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Een te groot plaatsverschil kan ook bij het watershedalgoritme problematisch

worden zoals getoond op de beelden in figuur 5.23. Hier valt de hot spot op het

PET-beeld buiten de longenrand en de CT nodule op de scheidingslijn tussen twee

gebieden. Deze laatste wordt aangeduid als vals-positieve mits hij niet in een gebied

valt.

Figuur 5.23: Linksboven: watershedalgoritme toegepast op het PET-beeld rechtsbovenmet een hot spot die buiten het longgebied ligt. Linksonder: detectiealgoritme toegepastop het CT beeld rechtsonder, indeling van de gebieden zoals bepaald op het PET-beeldrechtsboven en een nodule die op de scheidingslijn van twee gebieden valt.

Het watershedalgoritme is een ingebedde methode van Matlab, weliswaar met

geınverteerde intensiteiten (er wordt gezocht naar gebieden rond pixels met lage

intensiteiten, de scheidingslijnen zijn pixels met hoge intensiteiten). 5.24 toont het

PET-beeld met geınverteerde kleuren. Het algoritme wordt aanvankelijk op het hele

PET-beeld losgelaten. Vervolgens worden de longen uit het beeld gesegmenteerd

d.m.v. de omtrekken gevonden in de detectiemethode. Deze twee laatste, toegepast

op het vorig PET-beeld, worden getoond op figuur 5.25.

52

Page 65: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.24: PET-beeld met geınverteerde kleuren.

Figuur 5.25: Boven: het watershedalgoritme toegepast op het hele PET-beeld. Onder: degebieden van het linkse beeldje beperkt tot de longranden gevonden door de detectieme-thode.

53

Page 66: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Watershed heeft hier ook een nadeel. Het gebied rond de hot spot is nogal groot

waardoor de gemiddelde intensiteit van de pixels van dit gebied niet veel hoger ligt

dan bij de andere gebieden. Dit gemiddelde is hier dus niet bruikbaar voor het dui-

delijk onderscheiden van hot spots. Het onderscheid zal gemaakt worden op basis

van de maximum intensiteit uit dat gebied die hoger moet liggen dan een voorge-

definieerde drempelwaarde. Tevens moet het aantal pixels met een intensiteit hoger

dan 85% van dit maximum hoger zijn dan een gekozen drempelwaarde. Dit laatste

zorgt ervoor dat ruispixels met hoge intensiteit geen heel gebied als hot spot zouden

markeren. Ter verificatie dat de gevonden pixels geen ruispixels zouden zijn, kan

nagegaan worden of de gevonden pixels met hoge intensiteit wel samenhangend zijn.

Dat kan door bijvoorbeeld te controleren of elk van deze pixels bereikbaar is vanuit de

16 dichtstbijzijnde buren van de andere pixels. Dit werd hier niet geımplementeerd.

Gebieden bekomen d.m.v. het watershedalgoritme kunnen gedeeltelijk in en ge-

deeltelijk buiten de longen liggen zoals bekomen d.m.v. de detectiemethode. Deze

gebieden bezitten een lokaal maximum. Het komt echter voor dat dit lokaal maxi-

mum zich buiten de gesegmenteerde longen bevindt, tevens het gros (80%) van

de pixels met een intensiteit hoger dan 85% van het lokaal maximum. Indien dit

het geval is, wordt in deze classificatie het gebied beschouwd als niet-geınfecteerd.

Dankzij deze restrictie worden veel kandidaatnodules terecht als vals-positieven ge-

vonden. Figuur 5.26 is hier een voorbeeld van. Het bevat een gebied, aangeduid

door de pijl, waar duidelijk een stuk van het hart wordt ingesloten. Dit gebied

aanduiden als positief zou verkeerd zijn. Het nadeel van deze manier van werken is,

zoals reeds vermeld (zie figuur 5.23), dat hot spots bij PET-beelden zich soms juist

buiten de gesegmenteerde zone bevinden. Deze werkelijke-positieven zullen dan als

vals-positieven worden geclassificeerd.

54

Page 67: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.26: Aangeduid gebied bezit vele pixels met hoge intensiteit doordat het een deelvan het hart omsluit en geen hot spot.

5.2.3 Evaluatie classificatiemethode

Om de FROC en AFROC curves op te stellen werden de drempelwaarden bij het

bepalen of een watershedgebied al dan niet geınfecteerd is zodanig gekozen dat alle

werkelijke-positieve hot spots hier aan voldoen. De meetwaarden zijn terug te vin-

den in Bijlage B.

De FROC en AFROC curves afgebeeld in figuur 5.27 en 5.28 vergelijken de resulta-

ten van de detectiemethode zonder en met de classificatiemethode. De classificatie

vertoont in beide gevallen een sterke stijging van de specificiteit, maar ook een klei-

ne daling van het aantal gedetecteerde werkelijke-positieven. Dit laatste is vooral

te wijten aan de vastgehechte massa’s die slechts beperkt worden gedetecteert door

Contour Tracking en door hot spots waarbij het centrum buiten het gesegmenteerde

longengebied valt. Een uitbreiding (zie volgend hoofstuk) kan dit probleem oplossen

en de sensitiviteit aanzienlijk verbeteren.

Bij een sensitiviteit van 78% werden hier 0,3 vals-positieve nodules per CT plakje

gevonden, of 84% specificiteit. Het oppervlakte onder de AFROC curve ≈ 0, 7. Te-

genover de CAD zonder classificatie (90% sensitiviteit, 2,25 vals-positieve nodules

per CT snede en 24% specificiteit) is dit een aanzienlijke verbetering.

55

Page 68: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 5.27: FROC voor en na classificatie.

Figuur 5.28: AFROC voor en na classificatie.

56

Page 69: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

5.2.4 Vergelijkende studie

Een belangrijke opmerking bij een vergelijkende studie met functioneel gelijkaardige

algoritmes uit de literatuurstudie is dat de algoritmes niet met dezelfde patientdata

werden getest. In de literatuurstudie worden vaak datasets gebruikt die enkel no-

dules vertonen van een bepaalde grootte. De dataset gebruikt in deze thesis bevatte

nodules in een vroeg, middel en laat stadium waardoor methoden zoals Contour

Tracking moeilijk af te stemmen zijn. Deze is namelijk niet voorzien op het detecte-

ren van vastgehechte massa’s. De bekomen resultaten zijn dus moeilijk vergelijkbaar.

Ze geven enkel een indicatie. De dataset die in deze thesis werd gebruikt is ook vrij

beperkt, data van slechts twaalf patienten werd gebruikt.

De CAD ontworpen door Radhika Sivaramakrishna et al. [21] behaalde een sensi-

tiviteit van 90% en 2 vals-positieven per CT snede. Dit was het beste resultaat

tegengekomen in de literatuurstudie, namelijk met de hoogste sensitiviteit en het

laagste aantal vals-positieve nodules per CT snede. Andere resultaten hadden een

sensitiviteit en een aantal vals-positieven per CT snede van respectievelijk 77% en

2,6 door Takeshi Hara et al. [11] met Template Matching, 70% en 3 door Armato

III et al. [4] met een CAD gebaseerd op segmentatie, en 89% tot 96% en 5 tot 7

door Manuel G. Penedo et al. [20] met en CAD gebaseerd op classificatie. Het is

opvallend dat het aantal vals-positieven per CT snede niet daalt onder de 2, dit in

vergelijking met de bereikte 0,3 in dit algoritme. Ook de hier bereikte sensitiviteit

van 78% is reeds een goed resultaat in vergelijking met de andere sensitiviteiten die

varieren tussen 70 en 96%.

De AFROC curves waren in de literatuurstudie niet beschikbaar.

5.3 Besluit

In deze thesis werd een CAD techniek ontwikkeld met als doel na te gaan in hoeverre

bijkomende PET-informatie de CAD techniek gebaseerd op enkel CT beelden kan

verbeteren. De CAD werd opgesplitst in een detectie- en een classificatiemethode.

De detectiemethode voert een longsegmentatie uit en detecteert longnodules op

de CT dataset. De longsegmentatie zal achtereenvolgens de beeldpixels binair classi-

ficeren, daarna een kleurinversie, verwijdering van de achtergrond, dilatie, opvulling

en erosie uitvoeren, de longen isoleren, hier contour tracking op toepassen en de

longen uitbreiden met vastgehechte nodules. De kandidaat longnodules worden uit-

eindelijk gedetecteerd d.m.v. een kruiscorrelatie met een zelf-ontworpen template,

57

Page 70: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

namelijk een gesimuleerde nodule opgebouwd d.m.v. de Gaussiaanse distributie.

De classificatiemethode synchroniseert de PET-beelden met de CT beelden, past

het watershedalgoritme toe om het PET-beeld in gebieden op te splitsen, beslist

met drempelwaarden welke gebieden als geınfecteerd worden beschouwd en toetst

de kandidaatnodules, gevonden bij de detectiemethode, aan hun bijhorend gebied

op het corresponderende PET-beeld om te bepalen of deze als werkelijke- of vals-

positieve wordt geclassificeerd. Een belangrijke niet-geımplementeerde uitbreiding

bestaat erin hot spots tegen de longrand te detecteren en te onderscheiden van het

hart en ruis.

Voor de gebruikte patientdata zijn de bekomen resultaten veelbelovend. De

sensitiviteit, die mits uitbreidingen nog kan verbeterd worden, ligt in het gemiddelde

van deze uit de literatuurstudie. De specificiteit is aanzienlijk beter bij de hier

ontwikkelde CAD dan deze uit de literatuurstudie die enkel van CT beelden gebruik

maakten. Deze eerste resultaten wijzen erop dat het dus zeker zinvol is verder

onderzoek te doen naar deze techniek en een verder uitgewerkte CAD te ontwikkelen.

58

Page 71: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Hoofdstuk 6

Mogelijke uitbreidingen

Enkele mogelijke uitbreidingen op deze thesis besproken:

• Scheiding van de linker- en rechterlong;

• De detectiemethode tevens de omvang van de gevonden nodule laten bepalen;

• Automatisering van de registratie tussen PET- en CT-beelden;

• Hot spot detectie op de longranden.

6.1 Scheiding van de linker- en rechterlong

Bij CT-snedes, die een dwarsdoorsnede van het lichaam weergeven, kunnen de voor-

ste en achterste verbindingen tussen de linker- en de rechterlong zeer dun zijn met

maar weinig contrast. In de meeste gevallen zal dan een binaire classificatie d.m.v.

een gekozen grijsniveau als drempelwaarde er niet in slagen deze longen van elkaar

te scheiden. Voor deze snedes zal het vervolg van het vorig opgebouwd algoritme

falen. Voor het opstellen van de FROC en AFROC curves werden deze snedes auto-

matisch gedetecteerd en verwijderd uit de patientdata. Het ging bij deze patienten

om gemiddeld twee snedes per patient, wat niet erg veel is.

De uitbreiding bestaat er dus in de longen van elkaar te scheiden wanneer zij te dicht

tegen elkaar staan op de CT-snede. Figuur 6.1 toont dit voor een van de twaalf pa-

tienten. Het eerste beeld toont twee longen die bovenaan relatief dicht bijeenkomen.

Voor de binaire classificatie is dit geen probleem zoals te zien in het tweede beeld.

Maar wel voor de daarop volgende dilatie. Deze laatste werd ingevoerd opdat de

longkwabben die na de binaire classificatie in meerdere gebieden werden opgedeeld,

59

Page 72: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

terug verbonden zouden worden. In de hier ontworpen detectiemethode wordt na de

dilatie een erosie uitgevoerd. Deze is echter niet scherp genoeg om de longen terug

volledig te scheiden zoals getoond op het vierde beeld.

Het doel van een dergelijke scheiding van de longen is het opsporen van deze verbin-

dingen en de longen volledig van elkaar te scheiden. Hu S. et al. [12] gebruiken hier-

voor morfologische operaties. Zo zal eerst een erosie de longen van elkaar scheiden.

Een conditionele dilatie wordt dan gebruikt voor het herstellen van de benaderde

oorspronkelijke grenslijn, zonder dat de twee longen opnieuw worden verbonden.

Toegepast op het vorige CT-beeld zou dit eruit kunnen zien zoals in figuur 6.2.

Figuur 6.1: Samensmelting van de twee longkwabben tot een geheel na de dilatie-operatie.

6.2 Hot spot detectie op de longranden

Zoals besproken in het vorige hoofdstuk komt het bij PET-beelden voor dat hot

spots zich juist buiten het longengebied bevinden zoals gesegmenteerd in de de-

tectiemethode. Deze wordt verward met het hart of ruis waardoor het gebied als

60

Page 73: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Figuur 6.2: Voorbeeld van een scheiding van de longkwabben.

vals-negatief wordt beschouwd. Een uitbreiding hierop bestaat erin deze te onder-

scheiden van het hart en ruis door bijvoorbeeld de pixels met hoge intensiteit te

identificeren, hun samenhangendheid te bepalen, de omvang van het geheel en de

rondheid te achterhalen enz.

61

Page 74: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Appendices

62

Page 75: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Bijlage A

Matlab Code

A.1 Hoofdprogramma - kankerdetectie PET/CT

clear;

%%%%%%%%%%%%%%%%%%%%%%%%

%%% parameters %%%

%%%%%%%%%%%%%%%%%%%%%%%%

%Synchronisatieparameters PET/CT

DICOMnodule=86;

PETnodule=20;

%DICOM parameters

beginDicom=52;

eindDicom=89;

%Detectie

maxTM = 2.9006e+004;

percentage=88; %drempelwaarde op het resulterende beeld na kruiscorrelatie

FWHM = 5; %nodig voor de template

%PET parameters

aantalSnedes=108;

%Relatie PET/CT

omgekeerdEvenredig=true;

%Classificatie PET

threshPETnodule = 2350; %Lokale drempelwaarde voor de watershedgebieden van PET

63

Page 76: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%% inlezen PET/CT %%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Lees de dicoms in

aantalDicoms=eindDicom-beginDicom+1;

files=dir(’C:\...\*.dcm’);

dicoms = zeros(512,512,aantalDicoms,’uint32’);

for k=beginDicom:beginDicom+aantalDicoms-1

bestandsnaam=files(k).name;

bestand=[’C:\...\’ bestandsnaam];

dicoms(:,:,k-beginDicom+1) = dicomread(bestand);

end %for

%Lees PET bestanden in

bestand=’C:\...\name.flt’;

openbestand = fopen(bestand,’r’);

I=zeros(144,144);

PETs=zeros(144,144,aantalSnedes);

for (i=1:aantalSnedes)

for (j=1:144)

I(j,:)=fread(openbestand, 144,’float32’);

end %for

PETs(:, :, i)=I;

end %for

%Herdimensioneren PET beelden naar dezelfde dimensies als de CT beelden

PETsNew=imresize(permute(PETs, [3 1 2]), [4/5*aantalSnedes 144], ’bicubic’); %z-as

PETs=imresize(permute(PETsNew, [2 3 1]), [512 512], ’bicubic’); %x- en y-as

%synchroniseer de PET beelden met de dicoms

if (omgekeerdEvenredig==false)

beginPET = PETnodule - (DICOMnodule-beginDicom)

eindPET = PETnodule + (eindDicom - DICOMnodule)

else

beginPET = PETnodule - (eindDicom - DICOMnodule)

eindPET = PETnodule + (DICOMnodule-beginDicom)

end %if

PETs=PETs(:,:,beginPET:eindPET); %Selectie PET beelden behorend bij de CT beelden

if (omgekeerdEvenredig==true)

PETs=flipdim(PETs,3);

end %if

64

Page 77: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%% Detectie/Classificatie %%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

aantalKandidaatnodules=0;

aantalKandidaatnodulesFroc=0;

aantalKandidaatnodulesAfroc=0;

aantalGesegmenteerdeDicoms=aantalDicoms;

maxmax=0; %pixelwaarde met beste match met template (over alle dicoms)

%Opbouw template nodule a.h.v. de Gauss distributie

template = zeros(40, 40);

gaussigma=FWHM / sqrt(8*log(2));

for x=1:40

for y=1:40

template(x,y) = gaussmf(sqrt((x-20)^2 + (y-20)^2), [gaussigma 0]);

end

end

%Zoek kandidaatnodules voor volgende dicoms:

for k=1:aantalDicoms

I=dicoms(:,:,k);

[ITresh, thresh] = optimal_thresh( I );

%invert en clearborder

regionalminima = ones(size(ITresh))-ITresh; %inverteert zwart en wit

longen = imclearborder(regionalminima);

%dilation, fillen en erosion

se90 = strel(’disk’, 2);

BWsdil = imdilate(longen, se90);

BWdfill = imfill(BWsdil, ’holes’);

se90 = strel(’disk’, 1);

BWsem = imerode(BWdfill, se90);

% Verwijder de andere objecten rond de longen

[labeled,N] = bwlabel(BWsem,4); %4-connectivity voor detectie objecten

stats = regionprops(labeled, ’Area’, ’MajorAxisLength’, ’Orientation’);

remove_objs = [find([stats.Area] < 1500) find([stats.MajorAxisLength] > 250)

find(abs([stats.Orientation]) < 8)];

65

Page 78: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

for (n=1:length(remove_objs))

labeled(labeled==remove_objs(n)) = 0;

end

longen=labeled;

longen(find(labeled~=0)) = 1;

%Voor beide longen, begin bij een punt van de long, ga de omtrek van de

%long af, sla al de punten die je tegenkomt op je weg op in een array

%genaamd pixelsOmtrekLong1.

[labeled,aantalObjecten]=bwlabel(labeled,4);

labeled = labeled.’;

if(aantalObjecten~=2)

aantalGesegmenteerdeDicoms=aantalGesegmenteerdeDicoms-1;

continue

end %if

for s=1:2 %Doe voor beide longen

[j,i] = find(labeled==s,1); %Gaat de kolommen af van labeled & geeft positie

%v/d eerste 1 die hij tegenkomt terug.

pixelsOmtrekLong1=[i;j]; %Array die dynamisch wordt uitgebreidt

neighbourhoodTeller=0; %Modulo 8, houdt bij voor welke pixel moet

%onderzocht worden of deze tot longkwab behoort.

while true %Neighbourhood layout: %6 7 0

%5 1

%4 3 2

switch neighbourhoodTeller

case 0

iTemp=i-1; jTemp=j+1;

case 1

iTemp = i; jTemp=j+1;

case 2

iTemp=i+1; jTemp=j+1;

case 3

iTemp=i+1; jTemp = j;

case 4

iTemp=i+1; jTemp=j-1;

case 5

iTemp = i; jTemp=j-1;

case 6

iTemp=i-1; jTemp=j-1;

case 7

iTemp=i-1; jTemp = j;

end %switch

66

Page 79: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

if (longen(iTemp,jTemp)==0)

neighbourhoodTeller=mod(neighbourhoodTeller+1,8);

continue; %Geen longkwabpixel gevonden, keer terug naar het begin

end %if

%Een longkwabpixel werd gevonden. Draai de teller terug om de

%plaats van de volgende te zoeken pixel te bekomen

if (mod(neighbourhoodTeller, 2) == 1)

neighbourhoodTeller=mod(neighbourhoodTeller+6,8); %teller -90 graden

else

neighbourhoodTeller=mod(neighbourhoodTeller+7,8); %teller -45 graden

end %if

%Checkt of de longomtrek vervolledigd is

if (pixelsOmtrekLong1(1,1)==iTemp && pixelsOmtrekLong1(2,1)==jTemp)

if (s == 1)

pixelsOmtrekLong2 = pixelsOmtrekLong1;

end %if

break;

end %if

i=iTemp;j=jTemp;

pixelsOmtrekLong1 = [pixelsOmtrekLong1 [i;j]];

end %while

end %for

%De longomtrek uitbreiden met de gevonden juxtapleurale nodules

[pixelsOmtrekLong1,

pixelsOmtrekLong2]=searchJuxtapleuralNodules(circshift(pixelsOmtrekLong1,1),

circshift(pixelsOmtrekLong2,1));

pixelsOmtrekLong1=circshift(pixelsOmtrekLong1,-1);

pixelsOmtrekLong2=circshift(pixelsOmtrekLong2,-1);

%Haal de longen met de juxtapleurale nodules uit het originele CT beeld

longenMatrix=zeros(512,512);

longenCoord=[pixelsOmtrekLong1 pixelsOmtrekLong2];

for z=1:length(longenCoord)

longenMatrix(longenCoord(1,z),longenCoord(2,z))=1;

end %for

longenMatrix=imfill(longenMatrix, ’holes’);

I_longen = I;

I_longen(find((longenMatrix)==0)) = 0;

67

Page 80: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

%Template Matching

%TMconv is het product van de dicom en de template in de

%fourierruimte. maxm is de pixelwaarde van de pixel van de dicom die de

%grootste match heeft met de template.

[TMconv, maxm] = TM(I_longen, template);

%berekening globaal maximum over al de CT snedes

if (maxm>maxmax)

maxmax=maxm;

end %if

%nodules is de binaire classificatie van het beeld resulterend uit de

%kruiscorrelatie, met drempelwaarde = percentage.

nodules=TMconv > maxTM/100*percentage;

%bepaalt aantal kandidaatnodules op het CT beeld d.m.v. 4-connectivity

[labeled,aantalNodules] = bwlabel(nodules,4);

stat = regionprops(labeled,’Centroid’);

centraNodules = round([stat.Centroid]);

%watershed

PET=PETs(:,:,k);

%inverteer kleuren PET beeld

PETlongen=PET;

PETlongen=(max(max(PETlongen))*ones(size(PETlongen)))-PETlongen;

%Pas de watershedmethode toe

regionsWatershed=watershed(PETlongen);

%isoleer de longgebieden

regionsWatershedGeheel=regionsWatershed + 1;

regionsWatershed=regionsWatershedGeheel;

regionsWatershed(find((longenMatrix)==0))=0;

%Zoek maximumPETintensiteit en het aantal pixels van de hotspot met een

%drempelwaarde van 85%.

DICOM=dicoms(:,:,k);

68

Page 81: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

for kk=1:aantalNodules

regionNb=regionsWatershed(centraNodules(kk*2),centraNodules(kk*2-1));

%centrum nodule valt op de scheidingslijn van twee gebieden

if (regionNb == 0)

aantalNodules=aantalNodules - 1;

continue

end %if

%indices PETgebied (nt afgesneden door longranden) behorende bij CT nodule

[xRegionG,yRegionG]=find(regionsWatershedGeheel==regionNb);

%indices PETgebied (afgesneden door longranden) behorende bij de CT nodule

[xRegion,yRegion]=find(regionsWatershed==regionNb);

maxIntensiteit=0;

for ll=1:length(xRegion)

if (PET(xRegion(ll),yRegion(ll))>maxIntensiteit)

maxIntensiteit=PET(xRegion(ll),yRegion(ll));

end %if

end %for

maxIntensiteitG=0;

for ll=1:length(xRegionG)

if (PET(xRegionG(ll),yRegionG(ll))>maxIntensiteitG)

maxIntensiteitG=PET(xRegionG(ll),yRegionG(ll));

end %if

end %for

aantalPixelsHotSpot=0;

for ll=1:length(xRegion)

if (PET(xRegion(ll),yRegion(ll)) > (maxIntensiteitG/100*85))

aantalPixelsHotSpot=aantalPixelsHotSpot + 1;

end %if

end %for

aantalPixelsHotSpotG=0;

for ll=1:length(xRegionG)

if (PET(xRegionG(ll),yRegionG(ll)) > (maxIntensiteitG/100*85))

aantalPixelsHotSpotG=aantalPixelsHotSpotG + 1;

end %if

end %for

69

Page 82: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

%Als voldaan => kandidaatnodule geclassificeerd als verkeerdelijk pos.

if (maxIntensiteit < threshPETnodule || aantalPixelsHotSpot==0 ||

aantalPixelsHotSpot/aantalPixelsHotSpotG <= 0.8)

aantalNodules=aantalNodules - 1;

end %if

end %for

%Berekening aantal slides met minstens 1 gedetecteerde nodule

if (aantalNodules > 0)

aantalKandidaatnodulesAfroc = aantalKandidaatnodulesAfroc+1;

end %if

aantalKandidaatnodulesFroc=aantalKandidaatnodulesFroc+aantalNodules;

end %for

clear

A.2 Bepaling optimale drempelwaarde (Shiying

Hu [12])

%% img_in: het beeld dat binair moet worden geclassificeerd

%% thresh: de berekende optimale drempelwaarde voor deze binaire classificatie

%% img_out: thresh toegepast op img_in

function [img_out, thresh] = optimal_thresh( img_in )

classes = ones(size(img_in));

T = max(max(img_in))/2;

Told = 0;

while (true)

classes = img_in >= T; %huidige drempelwaarde wordt toegepast op het beeld.

mean_background = mean(img_in(classes==0));

mean_objects = mean(img_in(classes==1));

T = (mean_background+mean_objects)/2;

if (T==Told)

break

end

Told = T;

end

img_out = classes;

thresh = T;

70

Page 83: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

A.3 Zoek vastgehechte nodules

function [pixelsOmtrekLong1, pixelsOmtrekLong2] = searchJuxtapleuralNodules(

pixelsOmtrekLong1, pixelsOmtrekLong2)

%Vastgehechte nodules: afstand tussen twee pixels (dimNods) is kleiner

%dan een bepaalde drempelwaarde (tresholds).

tresholds=[14 9 8 15 7];

dimNods= [50 40 30 20 10];

%longenMatrix = binaire matrix: achtergrond=0, gesegmenteerd longengebied=1

longenMatrix=zeros(512,512);

longenCoord=[pixelsOmtrekLong1 pixelsOmtrekLong2];

for z=1:length(longenCoord)

longenMatrix(longenCoord(1,z),longenCoord(2,z))=1;

end %for

longenMatrix=imfill(longenMatrix, ’holes’);

for z=1:length(longenCoord)

longenMatrix(longenCoord(1,z),longenCoord(2,z))=0;

end %for

%Zoekt vastgehechte nodules

for h=1:length(dimNods)

for i=1:2

if (i==1)

pixelsOmtrekLong = pixelsOmtrekLong1;

else

pixelsOmtrekLong = pixelsOmtrekLong2;

end %if

lengteOmtrek=length(pixelsOmtrekLong);

j=1;

while (true)

lengteOmtrek=length(pixelsOmtrekLong);

if (j>lengteOmtrek)

break

end %if

%x- en y-indices van dimNods(h) opeenvolgende punten

if (j+dimNods(h)-1 <= lengteOmtrek)

x=pixelsOmtrekLong(1,j:j+dimNods(h)-1);

y=pixelsOmtrekLong(2,j:j+dimNods(h)-1);

else

x=[pixelsOmtrekLong(1,j:lengteOmtrek)

71

Page 84: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

pixelsOmtrekLong(1,1:(dimNods(h)-1-(lengteOmtrek-j)))];

y=[pixelsOmtrekLong(2,j:lengteOmtrek)

pixelsOmtrekLong(2,1:(dimNods(h)-1-(lengteOmtrek-j)))];

end %if

%Afstand(beginpt,eindpt) < tresholds?

if(sqrt((x(1)-x(dimNods(h)))^2+(y(1)-y(dimNods(h)))^2)<tresholds(h))

% Nagaan of deze reeks als juxtapleurale nodule wordt

% beschouwd, zoja de longomtrek hiermee uitbreiden.

x=[];

y=[];

k=j;

l=mod(j+dimNods(h)-2,length(pixelsOmtrekLong))+1;

%n==1: nodule links uitbreiden

%n==2: nodule rechts uitbreiden

%n==3: finale rechte trekken en uittekenen

for n=1:3

while (true)

x0=pixelsOmtrekLong(1,k);

y0=pixelsOmtrekLong(2,k);

x1=pixelsOmtrekLong(1,l);

y1=pixelsOmtrekLong(2,l);

%Beginpt en eindpt staan boven elkaar?

if (x0==x1)

if (y0>y1)

t0=y0;

y0=y1;

y1=t0;

end %if

x=x0;

y=y0;

for p=y0+1:y1 %berekend indices v/d te trekken lijn

x=[x x0];

y=[y p];

end %for

if (y0~=pixelsOmtrekLong(2,k))

x=fliplr(x);

y=fliplr(y);

end %if

72

Page 85: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

else

if (x0>x1)

t0=x0;

x0=x1;

x1=t0;

t0=y0;

y0=y1;

y1=t0;

end %if

x=x0;

y=y0;

xx=x0;

yyOld=y0;

while (x(length(x))~=x1 || y(length(y))~=y1)

xx=xx+1;

yyNew=round(y0+((y1-y0)/(x1-x0))*(xx-x0));

for p=1:(abs(yyNew-yyOld)-1)

if (y0>y1)

yy=(y(length(y))-1);

else

yy=(y(length(y))+1);

end %if

y=[y yy];

x=[x round((yy-y0)*(x1-x0)/(y1-y0)+x0)];

end %for

x=[x xx];

y=[y yyNew];

yyOld = yyNew;

end %while

if (x0~=pixelsOmtrekLong(1,k))

x=fliplr(x);

y=fliplr(y);

end %if

end %if

%Als de getrokken lijn een stuk van de long

%afsnijdt wordt deze niet getrokken

for m=2:length(x)-1

if (longenMatrix(x(m),y(m))==1)

break

73

Page 86: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

end %if

end %for

%Breidt nodule links of rechts uit zolang de berekende

%lijn < tresh en het longengebied niet snijdt.

if (length(m)==0) %x te kort => vorige lus nt betreden.

m=-2;

end %if

if (m~=length(x)-1 || length(x)>tresholds(h))

if (n==1 && k~=length(pixelsOmtrekLong))

k=k+1;

elseif (n==1)

k=1;

elseif (n==2 && l~=1)

l=l-1;

elseif (n==2)

l=length(pixelsOmtrekLong);

end %if

break

else

if (n==1)

if (k~=1)

k=k-1;

else

k=length(pixelsOmtrekLong);

end %if

elseif (n==2)

if (l~=length(pixelsOmtrekLong))

l=l+1;

else

l=1;

end %if

else

break

end %if

end %if

end %while

end %for

74

Page 87: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

%Vastgehechte nodule vervangen door berekende rechte lijn

if (m==length(x)-1)

if (k<l)

pixelsOmtrekLong=[pixelsOmtrekLong(:,1:(k-1)) [x;y]

pixelsOmtrekLong(:,(l+1):length(pixelsOmtrekLong))];

else

pixelsOmtrekLong=[[x;y] pixelsOmtrekLong(:,(l+1):(k-1))];

end %if

end %if

end %if

j=j+1;

end %while

if (i==1)

pixelsOmtrekLong1 = pixelsOmtrekLong;

else

pixelsOmtrekLong2 = pixelsOmtrekLong;

end %if

end %while

end %for

pixelsOmtrekLong1=pixelsOmtrekLong1(1:2,:);

pixelsOmtrekLong2=pixelsOmtrekLong2(1:2,:);

end %for

A.4 Template Matching

%%img_in: CT beeld met gesegmenteerde longen

%%template: matrix met de gesimuleerde nodule

%%img_out: resulterend beeld na de kruiscorrelatie

%%maxm: de maximum intensiteit van img_out (= grootste match)

function [img_out, maxm] = TM(img_in, template)

observedBeeld = circshift(img_in,[-20 -20]);

ff = fft2(single(observedBeeld));

wf = fft2(rot90(single(template),2),512,512);

img_out = real(ifft2(ff .* wf));

maxm = max(img_out(:));

75

Page 88: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Bijlage B

Patientmeetwaarden

76

Page 89: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

77

Page 90: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

78

Page 91: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

79

Page 92: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

Bibliography

[1] Dual open pet/ct scan, http://www.sjbhealth.org/body.cfm?id=510, 2003.

[2] Worldwide cancer cases ’double’, http://www.longkanker.info/Index.asp, 2005.

[3] G. Agam, S. Armate, and C. Wu, Vessel tree reconstruction in thoracic ct scans

with application to nodule detection, Tech. report, Department of Computer

Science, Illinois Institute of Technology, Chicago, 2004.

[4] S. Armato III, M. Giger, C. Moran, J. Blackburn, K. Doi, and H. MacMa-

hon, Computerized detection of pulmonary nodules on ct scans, Tech. report,

Department of Radiology, University of Chicago, 1999.

[5] MD Barry Siegel, Lung cancer. characterization of small pulmonary nodules

with pet and contrasted ct scanning, State Of The Science (Tuedsay, June 19).

[6] T. Blaffert and K. Meetz, Hot spot detection, segmentation, and identification

in pet images, Tech. report, Philips Research Laboratories, Hamburg, Germany,

2006.

[7] E. Bombardieri, Fdg-pet - procedures guidelines for tumour imaging, Tech.

report, EANM - European Association of Nuclear Medicine, http :

//www.eanm.org/scientificinfo/guidelines/gloncofdgpet.php?navId = 54,

September 2, 2003.

[8] P. Campadelli, E. Casiraghi, and G. Valentini, Support vector machines for can-

didate nodules classification, Tech. report, Department of Information Science,

University of Milan, Italy, 2005.

[9] L. Davis, Handbook of genetic algorithms, Van Notrad, R., 1991.

[10] J. De Bock, Computeralgoritmen voor het oplossen van legpuzzels, m.s. thesis,

Tech. report, Universiteit Gent, 2003.

80

Page 93: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

[11] T. Hara, H. Fujita, Y. Lee, H. Yoshimura, and S. Kido, Automated lesion

detection methods for 2d and 3d chest x-ray images.

[12] S. Hu, E. Hoffman, and J. Reinhardt, Automatic lung segmentation for accu-

rate quantitation of volumetric x-ray ct images, Tech. report, Department of

Biomedical Engineering, University of Iowa, 2001.

[13] S-C. Huang, Anatomy of suv, Tech. report, Department of Molecu-

lar and Medical Pharmacology, UCLA School of Medicine, Los Angeles,

http://clinicalcenter.nih.gov/drd/ftig/feb21b.pdf, 2000.

[14] A. Kusiak, J. Kern, K. Kernstine, and B. Tseng, Autonomous decision-making:

A data mining approach, Tech. report, Seamans Center for the Engineering Arts

and Sciences, The University of Iowa, 2000.

[15] Zerah Lurie, Looking inside the human body using positrons,

http://www.bioteach.ubc.ca/Biomedicine/LookingInsideTheBody/, 2006.

[16] C. Metz, Roc analysis: Methods and practical applications,

Tech. report, Department of Radiology, University of Chicago,

http://www.aapm.org/meetings/03AM/pdf/9850-28518.pdf.

[17] I. Naqa, J. Bradley, J. Deasy, K. Biehl, R. Laforest, and D. Low, Improved

analysis of pet images for radiation therapy, Tech. report, Departments of Ra-

diation Oncology and Radiology, Washington University School of Medicine,

2003.

[18] BBC news, Worldwide cancer cases ’double’,

http://news.bbc.co.uk/2/hi/health/4490271.stm, april 2005.

[19] DR. Marios Pattichis and Grant Martin, Introduction to computed tomogra-

phy using matlab image processing toolbox, http://www.eece.unm.edu/ nomar/,

2003.

[20] M. Penedo, M. Carreira, A. Mosquera, and D. Cabello, Computer-aided diag-

nosis: A neural-network-based approach to lung nodule detection, Tech. report,

Computing Department, A Coruna University, 1998.

[21] R. Sivaramakrishna, J. Birbeck, B. Higgs, and R. Cothren, Computer-aided

detection of lung cancer from computed tomography images, Tech. report.

81

Page 94: Automatische detectie van longnodules aan de hand van PET ...lib.ugent.be/fulltxt/RUG01/000/996/785/RUG01... · Automatische detectie van longnodules aan de hand van PET/CT pati¨entdata

[22] D. Wilson, Implementation of the bc cancer agency pet program, Tech.

report, BBCA Centre of Excellence for Functional Cancer Imaging,

http://www.surgery.ubc.ca/presentarch/GR06ja25.pdf, January 25, 2006.

82