Home
Computertomographie Bildbetrachtungs- und
Contents
1. Beispielprojektmain cxx TARGET_LINK_LIBRARIES Beispielprojekt vtkCommon vtkFiltering vtkGraphics vtkHybrid vtkImaging vtkIO vtkjpeg vtkRendering vtkzlib 14 3 4 Betriebssystem CTTranslator ist so realisiert dass es derzeit auf dem Betriebssystem Linux angewendet werden kann Der mit FLTK und VTK entwickelte CTTranslator ist unter Linux Fedora zu GCC Version 4 1 2 System Compiler 22 mit C Programmierungssprache geschrieben und kann sp ter durch Integrierung von bestimmten VTK und FLTK Bibliotheken auch unter Windows Mac OS X Unix usw implementiert und benutzt werden Bei der Implementierung des Programms werden folgende VTK Klassen verwendet 3 5 vtkDICOMImageReader Die DICOM Schichtbilder werden durch vtkDICOMImageReader eingelesen DICOM ist ein medizinisches Bild Datei Format weit verbreitet zum Austausch von Daten die aus verschiedenen Modalit ten bestehen Der vtkDICOMImageReader k nnte auch die ACR NEMA Vorg nger des DICOM Format f r medizinische Bilder Dateien lesen Datens tze im gekapseltem Format und Multi Frames DICOM Datens tze werden nicht behandelt 3 6 vtkRenderer vtkRenderWindow Ein vtkRenderer setzt eine Szene aus Lichtquellen Kameras Hintergrund und den erzeugten Grafikpipelines zusammen Dabei referenziert der vtkRenderer ein vtkRenderWindow welches im Programm einen Bereich bereitstellt in dem der Renderer die Szene darstellt Der Renderer wird auch benutzt u
2. irgendeiner Ansicht k nnen durch den Screenshot Button die angezeigten Bilder als Bildschirmfotos gespeichert werden li Hinweis Wenn im Hauptfenster kein 3D Bild dargestellt ist bevor das Larger View Fenster gedffnet wird ist in der Combobox Change View ein Wechsel zur 3D Ansicht nicht m glich Bei der automatischen Filmvorf hrung werden die Buttons wiederholtes Bl ttern Sprung zum Anfang r ckw rts vorw rts Sprung zum Ende Screenshot und die Combobox Change View deaktiviert Nach dem anhalten der Vorf hrung werden sie wieder aktiviert 8 7 Toolbereich ffnen Tool Load Reload ear 3D Move Save Help 250 mage Info Patient Name CAVE PHANTOM Descriptive Name DICOM File Extension dom Image Size 512 x 512 Number of Images 278 gt 250 0 139 r Image Spacing delta x 1 delta y 0 4 delta z 0 4 m Directory home csad651 7 Desktop hno CT_Bilder Color Screenshot Opacit A y Sagittal y 07 General Info gt gt Images are successfully read and displayed as gt gt 4ll views and funtions are successfully cleared gt gt Images are successfully loaded gt gt lmages are successfully read and displayed as 2 gt gt Properties area is successfully opened gt gt lmage color is changed gt gt Abbildung 17 Hauptfen
3. Der Benutzer klickt im Hauptfenster oder im Larger View Fenster mit mittlerer Maustaste auf angezeigtes Bild w hrend der Mauszeiger auf irgendeinem Anzeigefenster Axial Sagittal Coronal CAS Plane oder Display 3D steht und bewegt die Maus gedr ckt haltend nach rechts links hinten und vorn oder der Benutzer bestimmt im Anzeigefenster einen Bereich Punkt f hrt die Maus hin und klickt auf mittlere Maustaste Das Bild wird dann auf diesem Bereich Punkt positioniert erwarteter Im Fenster wird eine Bewegung der Bilder erzielt wenn Ergebniszustand der Benutzer die Maus nach rechts links hinten und vorn bewegt oder auf den vorher bestimmten Bereich klickt Die Beendigung der Positionierung wird durch Freilassen der mittleren Maustaste abgeschlossen beobachtete Abweichung D OK _ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 57 Testfall Punkt wird selektiert 22 eed Punkt selektieren ee Punkt selektieren Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen Der Benutzer selektiert klickt im Hauptfenster mit linker Maustaste auf angezeigtes Bild wahrend der Mauszeiger auf irgendeinem Anzeigefenster Axial Sagittal Coronal steht erwarteter Nachdem der Benutzer irgendeinen Punkt selektiert hat Ergebniszustand z B linkes Auge bei der Axial Ansicht wird der gleiche Pun
4. Toolbereich 6ffnen schliessen Toolbereich ffnen Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen Der Benutzer klickt auf dem Tool Button oder dr ckt auf die T Taste Es wird ein Bereich im Hauptfenster sichtbar gemacht auf dem sich Comboboxen Screenschot Opacity und Color befinden um manche nderungen der geladenen Bilder vornehmen zu k nnen Es ist jetzt m glich nderungen f r angezeigte Bilder ber diese Combobox durchzuf hren und die Ergebnisse auf den angezeigten Bildern zu sehen Auf dem Informationsfeld steht Properties area is successfully opened oder Properties area is successfully closed beobachtete Abweichung x OK L_ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 41 Testfall Bilder werden segmentiert 06 red Segmentierung der geladenen Bilder als 3D Modell Pe Bilder segmentieren Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen Der Benutzer klickt auf dem 3D Button oder dr ckt auf die 3 Taste erwarteter Es erscheint auf dem Anzeigefenster Display 3D ein 3D Ergebniszustand Modell das durch 2D Bildern und nderungen der Grauwerte entsteht Auf dem Informationsfeld steht Images are successfully displayed as 3D beobachtete Abweichung x OK L_ kosmetische Abweichungen _ mittlere Abweichungen _ gro e
5. ndert die Farbe der dargestellten Bilder Vorbedingung Der Toolbereich ist ge ffnet und unter dem Men Color wird irgendeine Ansicht und Farbe ausgew hlt Nachbedingung Durch die nderung der Farben erhalten die Bilder gew nschte Farben Basisablauf Der Benutzer w hlt unter dem Men Color irgendeine Ansicht und Farbe aus 5 13 Bildschirmfoto speichern Kurzbeschreibung Der Benutzer speichert ein Bildschirmfoto von irgendeiner Ansicht Akteure Ausl ser Benutzer Benutzer Vorbedingung Der Toolbereich ist ge ffnet und unter der Combobox screenshot wird irgendeine Ansicht ausgew hlt oder das Larger View Fenster ist ge ffnet und der screenshot Button ist aktiv Nachbedingung Durch die Speicherung irgendeiner Ansicht wird ein jpg Bild 300x300 oder 500x500 Pixel erhalten Basisablauf Der Benutzer w hlt unter der Combobox Screenshot irgendeine Ansicht und gibt beim ge ffneten Chooser einen Dateiname ein und dr ckt auf den OK Button 5 14 Bilder automatisch bl ttern Kurzbeschreibung Der Benutzer bl ttert irgendeine Ansicht automatisch Filmvorf hrung Animation Vorbedingung Das Larger View Fenster ist ge ffnet Nachbedingung Es wird eine Serie von irgendeiner Ansicht durch gebl ttert Basisablauf Der Benutzer w hlt im Larger View Fenster unter Change View irgendeine Ansicht und benutzt die unterschiedlichen Buttons vorw rts r ckw rts repe
6. schen Bilder segmentieren Bilder gr er darstellen oder der Toolbereich ffnen schlie en Nachdem der Benutzer die geladenen Bilder vom Programm gel scht bzw entfernt hat k nnen diese Bilder neu geladen oder andere CT Bilder eingelesen werden Die eingelesenen 2D Bilder k nnen auch als 3D Modell segmentiert werden Vor der Segmentation wird mit der nderung des Grauwertes bei den als 2D dargestellten Bilder die gew nschten Ansichten durch den Benutzer eingestellt z B Knochenstruktur oder Weichgewebe und dann segmentiert Nach der Segmentierung kann der Benutzer ein segmentiertes 3D Modell als vtkData speichern wieder zur Segmentierungsphase zur ckkehren und das 3D Modell wieder als vtkData speichern Nachdem der Benutzer den Toolbereich ge ffnet hat k nnen die Aktionen nderung der Bildfarbe nderung der Bildopazit t oder Speicherung der gew nschten Bilder als Bildschirmfoto erm glicht werden Die geladenen Bilder k nnen in einem gr eren Fenster einzeln dargestellt werden Die gr ere Darstellung erm glicht dem Benutzer die Aktionen nderung der Ansicht Bl ttern der Bilder Durchf hrung des Filmview Animation nderung der Filmview Geschwindigkeit oder Speicherung der gew nschten Bilder als Bildschirmfoto Beim automatischen Bl ttern der Bilder kann der Benutzer die Animationsgeschwindigkeit ndern oder sie stoppen 22 5 Use Case Diagramm Anwendungsfalle In diesem Abschnitt werden die
7. Abweichungen _ gro e Abweichungen _ System unbenutzbar Testfall Filmvorf hrung wird gestartet r ckw rts 14 Pe Filmvorf hrung Animation r ckw rts starten oe _ Bilder automatisch bl ttern Larger View Fenster ist ge ffnet Der Benutzer klickt auf r ckw rts Button der mit dem Symbol lt gekennzeichnet ist erwarteter Der Value Slider wird gleich bis zum Ende seines ergebniszustand Wertes letztes Bild angebracht und es wird gleich angefangen jedes Bild zu zeigen Bei der Vorf hrung des x ten Bildes bewegt sich der Slider immer ein Wert ruckwarts dabei wird sein Wert um 1 gesenkt Der Slider geht bis zum Anfang des Bildes auf Wert 0 Wenn der Slider bis zum Anfang gekommen ist wird die Animation angehalten Beim Lauf der Filmansicht werden die Combobox Change View die Buttons repeat r ckw rts vorw rts und Screenshot deaktiviert Auf dem Informationsfeld steht Filmview is successfully launched beobachtete Abweichung D OK _ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar Testfall Filmvorf hrung wird gestartet wiederholtes Bl ttern 15 Ausgangszustand erwarteter Ergebniszustand Filmvorf hrung Animation vorw rts und r ckw rts starten Bilder automatisch bl ttern Larger View Fenster ist ge ffnet Der Benutzer klickt auf repeat Button der mit d
8. Hauptprogramm zu Clear entfernen und alle vorher bernommenen Einstellungen oder Ver nderungen zur ck zu setzen klicken Sie auf den Clear Button oder dr cken Sie auf die C Taste il Hinweis Wenn das Larger View Fenster auch ge ffnet ist wird es durch den Klick auf den Clear Button geschlossen Sie k nnen gleiche Bilder wieder mit dem Reload Button aufrufen oder mit dem Load Button neue Bilder laden und anzeigen lassen Nach dem Klick auf den Reload Button wird das geschlossene Larger View Fenster nicht ge ffnet 85 Bilder neu laden Das neue Laden von entfernten Bildern erfolgt durch den Klick auf den Reload Reload Button oder Druck auf die R Taste Nach dem neuen Laden werden alle bernommenen Einstellungen und Ver nderungen zur ckgesetzt 62 8 6 Bilder gr er darstellen Axial Sagittal Coronal Charca tee ss JR 260 250 Screenshot Screenshot Abbildung 16 LargerView Fenster Die im Hauptfenster angezeigten Bilder Axial Sagittal Coronal CAS Movie Plane und 3D k nnen auch gr er dargestellt werden Daf r klicken Sie auf den Movie Button oder dr cken Sie auf die M Taste Larger View kann auch genutzt werden um schnell durch eine Serie von Bildern zu bl ttern 63 0 o Es kann der im Hauptfenster oder im Larger View Fenster unter
9. OK _ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 37 AAA an AAA E Die Entfernung von Bildern und Zur cksetzung aller ver nderten Einstellungen wird mit Klick auf den Clear Button oder Druck auf die C Taste abgeschlossen erwarteter Es werden im Hauptfenster alle Ansichten entfernt und Ergebniszustand ale Einstellungen und nderungen werden zur ckgesetzt Der Benutzer kann wieder mit dem Load Button neue Bilder lesen oder mit dem Reload Button zuletzt gelesene und angezeigte Bilder wieder aufrufen Die Buttons Reload 3D und Tool werden wieder deaktiviert Auf dem Informationsfeld steht All views and functions are successfully cleared beobachtete Abweichung DT OK L_ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 38 AAA E A AAA Nachdem der Benutzer die Bilder erfolgreich geladen und oder die Bilder vom Hauptfenster entfernt hat wird das Neuladen von Bildern mit dem Button Reload oder mit dem Druck auf die R Taste erzielt erwarteter Der Benutzer erh lt im Hauptfenster wieder zuletzt Ergebniszustand eingelesene Bilder Es werden alle Darstellungen Axial Sagittal Coronal CAS Plane 3D wieder aufgerufen die der Benutzer mit denen geeignete Ver nderungen und Einstellungen bernehmen kann Bei der neuen Ladung werden a
10. Taste Das Programm erlaubt dem Benutzer nur CT Bilder fortlaufend nummeriert und mit dcm Endung einzulesen 23 5 3 Bilder entfernen Kurzbeschreibung Der Benutzer entfernt vom Hauptfenster die angezeigten Bilder Vorbedingung Bilder werden erfolgreich geladen Nachbedingung Alle Anzeigefenster werden geleert und alle ver nderten Einstellungen werden zur ckgesetzt Basisablauf Der Benutzer klickt auf den Clear Button der mit dem Laden der Bilder aktiviert ist Alternative Ablaufe Dr cken auf die C Taste 5 4 Bilder erneut laden Kurzbeschreibung Der Benutzer l dt die vom Hauptfenster entfernten Bilder neu srl balas Vorbedingung Bilder werden vom Hauptfenster entfernt Nachbedingung Die vom Hauptfenster entfernten Bilder werden erneut aufgerufen und angezeigt Basisablauf Der Benutzer klickt auf den Reload Button der mit dem Laden und der Entfernung der Bilder aktiviert ist Alternative Abl ufe Dr cken auf die R Taste 24 5 5 Bilder gr er darstellen Kurzbeschreibung Der Benutzer stellt die im Hauptfenster angezeigten Bilder gr er dar Vorbedingung Bilder werden erfolgreich eingelesen und dargestellt Nachbedingung Die im Hauptfenster angezeigten Bilder werden im Larger View Fenster gr er dargestellt Basisablauf Der Benutzer klickt auf den Movie Button der mit dem Laden der Bilder aktiviert ist Alternative Abl ufe Dr cken au
11. _ System unbenutzbar 46 Testfall Bildfarbe wird ge ndert 11 Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und der Toolbereich ist gedffnet sichtbar Der Benutzer klickt auf Color und w hlt aus der Liste die gew nschte Ansicht und Farbe aus erwarteter Nachdem der Benutzer eine Ansicht und Farbe im Men Ergebniszustand Color ausgew hlt hat wird das angezeigte Bild in die gewunschten Farbe gef rbt beobachtete Abweichung PQ OK _ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 47 Testfall Bildschirmfoto wird gespeichert 12 Ba Bildschirmfoto speichern Per Bildschirmfoto speichern Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und der Toolbereich ist sichtbar und oder das Larger View Fenster ist ge ffnet Der Benutzer klickt auf Tool und w hlt bei der Combobox Screenshot irgendeine Ansicht z B Axial aus oder der Benutzer klickt im Larger View Fenster auf den Screenshot Button erwarteter Nachdem der Benutzer im Hauptfenster eine Ansicht bei ergebniszustand der Combobox Screenshot ausgew hlt hat oder im Larger View Fenster auf dem Screenshot Button geklickt hat wird ein Fenster File Chooser ge ffnet Die Speicherung des Bildschirmfotos ist mit der Wahl des Speicherortes z B in einen Ordner in dem das Bildsch
12. den Anzeigefenstern liegende Slider benutzt werden um die angezeigten Bilder Axial Sagittal und Coronal durch die Bewegung der Slider vorw rts oder r ckw rts manuell per Hand zu bl ttern ea Mit der Combobox Change View k nnen im Larger View Fenster Sagittal x dargestellte Ansichten gewechselt werden 4 Der Automatischer vorw rts r ckw rts Vorf hrungsmodus repeat Button erm glicht das vorw rts r ckw rts wiederholende Bl ttern endlose Schleife der Bilder in gleicher Ansicht H Der Sprung zum Anfang Button erm glicht den Slider schnell zum Anfang zu f hren 4 Der Automatischer r ckw rts Vorf hrungsmodus Button erm glicht das R ckw rtsbl ttern der Bilder in gleicher Ansicht gg Der Stop Button erm glicht die Filmvorf hrung anzuhalten Kl Der Automatischer vorw rts Vorf hrungsmodus Button erm glicht das Vorw rtsbl ttern der Bilder in gleicher Ansicht M Der Sprung zum Ende Button erm glicht den Slider schnell zum Ende zu f hren Speed Durch Speed Combobox kann bei der automatischen Vorf hrung L y Blattern der Bilder die Geschwindigkeit geregelt werden Damit wird die Zwischenzeit beim Bl ttern k rzer oder l nger eingestellt 64 Screenshot Nach ffnung des Larger View Fensters oder nach Wechseln zu
13. unterschiedlichen Bereichen ab und erm glichen so eine schnelle bersicht auch ber komplexere Sachverhalte Auf dem Pipelineprinzip aufbauend wird ein softwaretechnischer Entwurf eines Ablaufdiagramms erstellt um zu zeigen wie das zu entwickelnde Programm funktionieren soll und wie die Daten darin flie en Programm starten Bilder laden GE Tool ffnen Grauwert ndern ee Bilder gr er darstellen Bildgr e ndern Bilder Bilder drehen segmentieren Bildposition ndern Bilder l schen Punktselektion durchf hren Bilder bl ttern Bilder neu laden Bildfarbe ndern Opazit t ndern Bildschirmfoto speichern Ansicht ndern Bilder bl ttern Filmview mit bestimmten Geschwindigkeit Bildschirmfoto Eigenschaften starten ndern speichern Filmview stoppen Abbildung 11 Ablaufdiagramm 21 Der Ablauf des Programms kann grob unter neun Einheiten unterteilt werden Nach erfolgreichem Start des Programms werden als erstes die gew nschten CT Bilder eingelesen Nachdem der Benutzer die Bilder erfolgreich geladen hat k nnen mit Hilfe der Mausoptionen die Aktionen Anderung des Grauwertes Anderung der Bildgr fe Umdrehung der Bilder nderung der Bildposition Durchf hrung der Punktselektion zustande gebracht werden Der Benutzer kann dabei Bilder f r jede Ansicht vorw rts oder r ckw rts bl ttern gleiche Bilder neu laden Bilder l
14. 3D klicken und ein 3D Bild mit vordefinierten Grauwerten zwischen 250 und 1200 im Anzeigefenster Display 3D darstellen lassen oder zuerst den Grauwert ndern und wieder auf 3D klicken Bei der Phase Bilder einlesen und anzeigen wird im Anzeigefenster CAS Plane auch ein 3D Modell zwischen Grauwerten 500 und 1000 auf 2D Multiplanaransicht dargestellt Fi Hinweis Wenn Sie in einem anderen Programm ein 3D Modell darstellen und mit dem 3D Modell von CTTranslator vergleichen m chten ber cksichtigen Sie die Scann Richtung der Segmentierung und das Koordinatensystem der Bilder Drei Finger Regel Rechte Hand Regel oder Linke Hand Regel ablesbar in der Headerdatei der CT Bilder 67 8 9 3D Modell speichern Ein als 3D dargestelltes Modell kann durch den Klick auf den Save Button oder ave Druck auf die S Taste als vtkData gespeichert werden Nachdem Sie auf den save Button geklickt haben wird ein File Chooser ge ffnet Um die Speicherung der Datei abzuschlie en w hlen Sie einen Ort Ordner in den die Datei gespeichert werden soll geben Sie einen Name ein und klicken Sie auf den OK Button 8 10 Hilfefenster ffnen Um bestimmte Funktionsinformationen ber das Programm erhalten zu k nnen H g klicken Sie auf den Help Button oder dr cken Sie auf die H Taste 8 11 Allgemeine Informationsfenster Piers Alle Aktionen die bei der Benutzung des Programms durchgef hrt gt All vie
15. 6 ge ndert Der Benutzer f hrt den Mauszeiger auf irgendein Anzeigefenster Axial Sagittal Coronal und dr ckt auf die linke Maustaste bewegt die Maus gedr ckt haltend nach rechts links hinten und vorn Die Grauwert nderungen sind nur auf den Anzeigefenstern Display Axial Display Sagittal und Display Coronal erlaubt Kurzbeschreibung Der Benutzer dreht irgendeine Ansicht E Vorbedingung Die Bilder werden geladen und oder Larger View Fenster ist ge ffnet Der Sichtwinkel einer Ansicht Bild ist ge ndert Basisablauf Der Benutzer f hrt den Mauszeiger auf irgendein Anzeigefenster Display CAS Plane oder Display 3D und dr ckt auf die linke Maustaste bewegt die Maus gedr ckt haltend nach rechts links hinten und vorn Die Umdrehungen sind nur auf den Anzeigefenstern Display CAS Plane und Display 3D erlaubt 31 5 19 Bildgr e ndern Kurzbeschreibung Der Benutzer ndert die Gr e eines dargestellten Bildes ne Vorbedingung Die Bilder werden geladen und oder Larger View Fenster ist ge ffnet Nachbedingung Bilder werden auf den Anzeigefenstern kleiner oder co gr er dargestellt Basisablauf Der Benutzer f hrt den Mauszeiger auf irgendein Anzeigefenster Display Axial Display Sagittal Display Coronal Display CAS Plane Display 3D oder Larger View und dr ckt auf die rechte Maustaste bewegt d
16. 8 Abbildung 9 Abbildung 10 Abbildung 11 Abbildung 12 Abbildung 13 Abbildung 14 Abbildung 15 Abbildung 16 Abbildung 17 Abbildung 18 Abbildung 19 Computertomographie Hounsfield Skala FLTK Beispiel VTK Beispiel Schnittbilder einlesen Marching Cubes Grundfunktionen Marching Cubes Beispiel Schnittbilder segmentieren 3D Modell speichern Bilder als Bildschirmfoto speichern Ablaufdiagramm Use Case Diagramm Klassendiagramm CTTranslator Hauptfenster 2D Bilder Larger View Fenster Hauptfenster und Toolbereich Knochenstruktur und Weichgewebe als 3D CTTranslator Beendigungsfenster 11 1 2 3 4 5 6 7 8 9 10 75 Literaturverzeichnis Will Schroeder Ken Martin Bill Lorensen VTK Users Guide VTK 4 4 Install Use and Extend The Visualization Toolkit ISBN 1930934130 2005 Kitware Inc The Visualization ToolKit http www vtk org 2008 Kitware Inc The Visualization Toolkit Class List http www vtk org doc nightly html classes html 2008 Michael Bender Manfred Brill Computergrafik Ein anwendungsorientiertes Lehrbuch 2 Auflage Hanser Wirtschaft ISBN 3446404341 2005 Fast Light Toolkit http www fltk org 2008 Michael Sweet Craig P Earls and Bill Spitzak FLTK 1 1 7 Programming Manual Revision 7 By Bill Spitzak and Others 1998 2006 Xenophon Papademetris An Introduction to Programming for Medical
17. Abweichungen _ System unbenutzbar 42 Testfall 3D Modell wird als vtkData gespeichert 07 3D Modell als vtkData speichern Pe 3D Modell speichern Ausgangszustand 2D Bilder werden segmentiert und der Button Save ist aktiv Der Benutzer klickt auf dem Save Button oder dr ckt auf die S Taste erwarteter Es wird ein Fenster File Chooser ge ffnet Die Ergebniscustand Speicherung ist mit der Eingabe des Dateinamens und Druck auf dem OK Button abgeschlossen Auf dem Informationsfeld steht 3D image is successfully saved as vtkData beobachtete Abweichung x OK L_ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 43 A E AAA Der Benutzer klickt auf dem Help Button oder dr ckt auf die H Taste erwarteter Es wird ein Fenster ge ffnet in dem sich alle Ergebniszustand Informationen und Hinweise ber die Benutzung des Programmes befinden Auf dem Informationsfeld steht Help View is successfully displayed beobachtete Abweichung D OK kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 44 Testfall Bildansicht wird geblattert 09 Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und oder Larger View Fenster wird ge ffnet Der Benutzer bewegt mit linker Maustaste oder mit rechten linken Richtungstasten unter d
18. Bildbearbeitungsalgorithmen direkt integriert so dass 2D Bilder und 3D Graphikalgorithmen gemischt verwendet werden k nnen Das Toolkit VTK arbeitet nach dem Pipelineprinzip Es Ubergibt also das Ergebnis des einen Arbeitsschrittes an den n chsten weiter Ein VTK Beispiel k nnte folgenderma en aussehen include CTTranslator h include lt vtkImageMapToColors h gt include lt vtkRenderWindow h gt include lt vtkRenderer h gt include lt vtkDICOMImageReader h gt include lt vtkImageActor h gt E Er H include lt vtkLookupTable h gt CTTranslator CTTranslator Abbildung 4 VTK Beispiel reader2D vtkDICOMImageReader New reader2D gt SetDirectoryName images reader2D gt UpdateWholeExtent this gt DisplaylImageAxial gt show this gt DisplaylmageAxial gt redraw renAxial vtkRenderer New renWindowAxial vtkRenderWindow New renWindowAxial gt AddRenderer renAxial 12 DisplaylmageAxial gt SetRenderWindow renWindowAxial Displ ayImageAxial gt Initialize hueLut vtkLookupTable New hueLut tTableRange 500 1000 hueLut gt SetSaturationRange 0 0 hueLut tHueRange 0 0 hueLut tValueRang 0 1 hueLut gt Build axialColors vtkImageMapToColors New axialColors gt SetInput reader2D gt GetOutput axialColors gt Se
19. Descriptive Name DICOM File Extension dem Image Size 512 x 512 Number of Images 110 Image Spacing delta x 2 delta y 0 3 delta z 0 3 m Directory home csad651 7 Desktop hno CT_Bildert Display 3D General Info gt gt CTTranslator is started Please go to Load button and choose a DICOM image Folder gt gt Images are successfully loaded gt gt Images are successfully read and displayed as 2 gt gt Abbildung 15 2D Bilder Nachdem Sie das Programm gestartet haben gehen sie auf den Load Button toas und klicken Sie darauf oder dr cken Sie auf die L Taste In der Folge dieser Aktionen ffnet sich ein File Chooser W hlen Sie dort einen Ordner aus in dem sich nur DICOM dcm formatierte Computer Tomographie CT Bilder befinden Um das Laden der Bilder abzuschlie en klicken sie auf dem File Chooser Fenster auf OK i Hinweis Das Programm akzeptiert nur CT Bilder die mit dcm Endung formatiert und fortlaufend nummeriert sind Die geladenen Bilder werden in den Anzeigefenster Display Axial Display Sagittal Display Coronal und Display CAS Plane als 2D in den Ansichten Axial Sagittal Coronal und Multiplanar angezeigt Die Buttons Reload Clear 3D Movie Tool die Progress Bar und alle Slider werden aktiviert 61 8 4 Bilder entfernen Um auf dem Anzeigefenster dargestellte Bilder vom
20. Gui CTTranslator implementiert das Benutzerinterface nimmt alle Benutzereingaben transformiert Ereignisse in Aufrufe der Klasse vtkFiRenderWindowInteractor oder in Anfragen an die Klasse CTTranslatorGui Die Eingaben der Benutzer werden von der Klasse CTTranslator verwaltet und auf die entsprechende Methoden der Klassen CTTranslatorGui oder vtkFlRenderWindowinteractor abgebildet Bei der Instanziierung wird die Klasse CTTranslator von der Klasse CTTranslatorGui geerbt und die Definitionen der Funktionen werden in der Klasse CT Translator implementiert CTTranslatorGui Die Klasse CTTranslatorGui stellt fur den Benutzer alle Benutzeroberflachenkomponenten Buttons Boxes Slider Input Output Felder Tastatureingaben usw und Methodendefinitionen dar die die Klasse CTTranslator von der Klasse CTTranslatorGui erbt vtkFlRenderWindowInteractor Die Klasse vtkFlRenderWindowInteractor ist zust ndig fur alle Mausoptionen Mausereignisse Umdrehen Positionieren Vergr Bern Verkleinern Koordinaten usw die der Benutzer f r das Programm braucht 36 7 Testdrehbuch In diesem Abschnitt wird eine Anzahl von Testf llen beschrieben welche durch unterschiedliche Bilddarstellung im allt glichen Programmablauf auftreten werden k nnen Die Testf lle k nnen im Groben unter folgende Kategorien unterteilt werden 1 Bilder als 2D einlesen und darstellen 2 Bilder betrachten und verarbeiten geeignete nderungen an den Bildern vorneh
21. Image Analysis with the Visualization Toolkit http www bioimagesuite org 2006 Erco s FLTK Cheat Page http www seriss com people erco fltk 2008 Kitware Inc Cross Platform Open Source Build System http www cmake org 2008 Klinik fur Epileptologie Universitat Bonn R ntgen Computertomographie CT Hounsfield 1969 Lehrnetz CTI http www meb uni bonn de epileptologie cms upload homepage lehnertz CT1 pdf 2008 11 12 13 14 15 16 17 18 19 20 21 22 76 William E Lorensen Harvey E Cline Marching Cubes A high resolution 2D surace construction algorithm General Electric Company Corporate Research and Development Schenectady Computer Graphics Volume 21 Number 4 New York 12301 1987 DICOM Digital Imaging and Communications in Medicine http dicom nema org http de wikipedia org wiki DICOM 2008 Prof Dr Olaf D ssel Bildgebende Verfahren in der Medizin Von der Technik zur medizinischen Anwendung Universitat Karlsruhe Institut fur Biomedizinische Technik Springer Verlag ISBN 3540660143 Seite 140 141 2000 Uwe J rg Rother Moderne bildgebende Diagnostik in der Zahn Mund und Kieferheilkunde Grundlagen Strahlenschutz Befunde Urban amp Fischer in Elsevier Verlag 2 Auflage ISBN 9783437055508 Seite 166 2006 Tcl Developer Xchange http www tcl tk 2008 Sun Microsystems http java sun co
22. Leopold Franzens Universitat Innsbruck Institut fur Informatik Medizinische Universitat Innsbruck Universitatsklinik fur HNO CTTranslator Computertomographie Bildbetrachtungs und Segmentierungsprogramm Version 1 0 Bakkalaureatsarbeit Yusuf OZBEK Innsbruck 26 11 2008 Inhaltsverzeichnis Inhaltsverzeichnis T 2 1 Einleitung uu u A A 6 1 1 Aufgabenbeschreibung 2 ccxsavanecauayanteunevanstac c AR ren 6 2 GrUMAIAGED PERPFPFPFFFFFFFFFFFFFFFEFFFEFEREEREERFEFEFEFEEEEEEEEEFEEEFEEFFEEERRERRRERRRERRRRRRRRRRREFFFEEFFFEFEFEEERERERRERERFRERRRRRRRRRRRERRRRRRRRRR 7 2 1 Computertomographle ss scsi man Hanke nl 7 2 2 AFUNKUIONSPNINZIp us sg l ea 7 2 3 H unstield Skala nn 3 a SSS eg dee ee Ee aaa kuy ka s 8 2 4 DICOM FOrMat ve sicciescsciavsianccsvetacciaeavastectascnchcnavancvauevacsiavatacssavavandiavavanchcuanansdahabandeahanonscavadaasssvavaascavavan 9 3 Material und Methoden 10 3 2 FLTK Fast Light ToolKit ssiri rinni s guns aee A 10 3 2 VTK Visualization ToolKit ee cccccteeccaeriendenee cececevecesecneateeddnerenedeserenedcxerenedcneetecddneernedeneecedeeteretessdeedaetenere 11 3 3 CMa Ke Su A ege Gu Sum Q ua ec 13 3 4 EE 14 3 5 VEKDICOMImageReader n ca dd LO ta
23. RC 14 3 6 vtkRenderer vtkRenderWindow n nrnna 14 37 VtKL00KUPTable u en AA rated aan linearer 15 3 8 VtKImageMapToColors ssh L do na Side Deeg OEA 15 3 9 vik Actorivtkbroperb coi EE EE EENS dE ES EES e a le Ee den 15 3 10 MtkCamera ii OO 16 3 11 Marching CUDCSicssececcecetieecccvetesegeesenadetnavenetenennadeagetsscuansthesecveyestigeaten drames ceeds E qaqa asa asas q gas 16 3 12 MET ann an a st reines san 18 3 13 VIKPOlyYDataW E 18 3 14 vtkWwindowTolmagebilter AAA 19 3 15 VtKEIWindoWRenderInteracton ri a 19 3 16 VtkPolntPiCke cuicos man A edad du sed 19 4 Ablaufdiagramm I UU U u u u uu u uuu uuu Q Q J J J 20 5 Use Case Diagramm WPRPFPFFFFFFFFFFFFFFEFFEFEFFFFFFFFFEFFFFFFEFERREREEEREEREERRRRRRRRRERRRRRRRRRRRRRFEFFFFERFEFEREERERFRERERERRRRRRRRRRRRRRRR 22 5 1 Programm starten aeiia eee EEE nn rre rre 23 5 2 Bilder AE 23 5 37 BISRENtERMEN ats s A lt iii tetes 24 EE el EE EE 24 5 5 Bilder gr er d rfstellen 2 22H ai 25 5 6 Toolbereich ffnen schlieBen A 25 5 7 Bilder SEGMENTO a nn ha En ara haare nee era 26 5 8 3D Modell speicherni r 0 27200 n 26 5 9 HilfefenSter e uu una nie ee ehe aa een a 27 5 10 Bilder di ei 27 5 11 Opazit t A sabe S S eV da ce a dante idee dee 28 5 12 Bildfarbe Md Mii ua ese ete a ios sio 28 5 13 Bildschirmfoto Speichern E 29 5 14 Bilder automatisch bl tternis sise a
24. TTranslator mit textuellen Beschreibungen und mit einem Klassendiagramm vorgestellt Die Klassendiagramme sind eine graphische Darstellungsart um die Programmklassen und Objekte eines Bereiches die Eigenschaften Attribute Methoden usw das Verhalten Operationen und die Beziehungen zwischen den Klassen deutlich zu modellieren CTTranslator vtkFiRenderWindowinteractor CTTranslatorGui CTTranslator imageReading generallnfoLogger imagelnfoLogger reloadCallback clearButtonCallback toolButtonCallback imageDisplayingCallback2D imageDisplayAxial2D imageDisplaySagittal2D imageDisplayCoronal2D imageDisplayingCallback3D helpviewCallback requestReslicelmageAxial requestReslicelmageSagittal requestReslicelmageCoronal changeRangeMinCallback imageExportCallback imageLargerExportCallback imageSaveCallback largerViewCallback requestResliceLargerlmage mousetester coordinatesViewCallback imageColormenuButtonCallback opacityCallback filmViewRepeatButtonCallback filmViewToStartButtonCallbackQ filmViewF orwardButtonCallback filmViewBackwardButtonCallback filmViewStopButtonCallback filmViewToEndButtonCallback filmViewSpeedChoiceCallback inProgressCallbackStarter setNewSliceAtPicked filmViewButtonController pickerStart filmViewF orwardPlay filmViewBackwardPlayQ filmViewRepeatPlayQ inProgressCallback mousePositiontem
25. Use Cases mit ausf hrlicher textueller Beschreibung und Use Case Diagramme vorgestellt Use Cases definieren eine Interaktion zwischen Akteuren und dem betrachteten System die stattfindet um ein bestimmtes fachliches 21 darstellen 3D Modell speichern Hilfsfenster ffnen Bilder blattern Opazitat andern Bildfarbe ndern Benutzer Bildschirmfoto speichern Bilder automatisch blattern Ziel zu erreichen Automatisches Blattern stoppen Geschwindigkeit andern Bilder drehen Bildgr Be ndern Bilder positionieren Punkt selektieren Abbildung 12 Use Case Diagramm 5 1 5 2 Programm starten S ARA PAE A Es ffnet sich die Benutzeroberfl che Hauptfenster Basisablauf Der Benutzer wechselt mit cd CTTranslator in das Verzeichnis CTTranslator und gibt in der Konsole oder im Terminal den Befehl CTTranslator ein Vor dem Start des Programms m ssen die Grundvoraussetzungen erf llt werden siehe Benutzerhandbuch und Installations CD unter LIESMICH txt Datei Bilder laden auf d Nachbedingung Bilder werden en Anzeigefenstern in unterschiedlichen Ansichten als 2D angezeigt und geeignete Funktionen Buttons Slider usw werden aktiviert Basisablauf Der Benutzer klickt auf den Load Button und w hlt von dem ge ffneten File Chooser einen Ordner aus in dem sich fortlaufend nummerierte CT Bilder befinden Alternative Abl ufe Dr cken auf die L
26. ader Datei von der Klasse CT TranslatorGui cpp 72 CTTranslatorGui fl Enth lt alle Benutzeroberfl chenelemente Buttons Outputfelder Slider Boxes usw des Programms vtkFlRenderWindowInteractor cpp Enthalt alle Praprozessoren Funktionen Variablen Konstruktoren Konstanten Anweisungen Objekte Zeiger usw die der Benutzter bei den Mausoptionen braucht Steuerung fiir Bildpositionierung Bildumdrehung Anderung der Bildgr Be usw vtkFIRenderWindowInteractor h Die Header Datei von der Klasse vtkFIRenderWindowInteractor cpp CmakeLists txt Enthalt die Bibliotheknamen und denen Pfade und die Dateinamen die bei der Konfigurierung und Kompilierung des Programms n tig sind info cpp In dieser Klasse werden alle Informations und Warnungsnachrichten Konstanten definiert die im Gebrauch von der Klasse CT Translator cpp aufgerufen werden main cpp Die Hauptklasse 10 1 3 Bibliothekdateien iostream FL FI_Progress H FL FI_File_Chooser H vtkFlRenderWindowInteractor h vtkMarchingCubes h vtkPointPicker h vtkPolyDataWriter h vtkPolyDataMapper h vtkImageToImageFilter h vtkImageMapToColors h vtkProperty h vtkRenderWindow h vtkRenderer h vtkDICOMImageReader h vtkActor h vtkImageActor h vtkLookupTable h vtkJPEGWriter h vtkCallbackCommand h vtkCamera h 73 74 10 2 Abbildungsverzeichnis Abbildung 1 Abbildung 2 Abbildung 3 Abbildung 4 Abbildung 5 Abbildung 6 Abbildung 7 Abbildung
27. arger View Fenster mit linker Maustaste auf angezeigtes Bild w hrend der Mauszeiger auf einer Bildansicht steht z B Axial Und bewegt die Maus gedr ckt haltend nach rechts links hinten und vorn erwarteter Die Bilder werden am Anfang zwischen den Grauwerten Ergebniszustand 250 bis 1200 gelesen und dargestellt Wenn der Benutzer den Grauwert ndert wird das Ergebnis auf den Ansichten Axial Sagittal Coronal und CAS Plane angezeigt Auf dem Progress bar werden auch Koordinaten vom Mauszeiger und momentanes Grauwertintervall angezeigt Die nderung des Grauwertes erfolgt im Hauptfenster oder im Larger View Fenster nur in Ansichten Axia Sagittal und Coronal Die Beendigung der Grauwert nderung wird durch Freilassen der linken Maustaste abgeschlossen beobachtete Abweichung D OK kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar Testfall Bilder werden gedreht 19 Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und oder das Larger View Fenster wird geoffnet Der Benutzer klickt im Hauptfenster oder im Larger View Fenster mit linker Maustaste auf angezeigtes Bild w hrend der Mauszeiger auf einem Anzeigefenster CAS Plane oder Display 3D steht Und bewegt die Maus gedr ckt haltend nach rechts links hinten und vorn erwarteter Die Bildansichten werden im Rahmen der 3D Er
28. at usw die f r das automatische Bl ttern geeignet ist 29 30 5 15 Automatisches Blattern stoppen Kurzbeschreibung Der Benutzer stoppt das automatischen Blattern Ee Vorbedingung Das Larger View Fenster ist ge ffnet und automatisches Bl ttern von irgendeinem Ansicht ist gestartet Nachbedingung Das Bl ttern wird angehalten und zum ersten Bild der Ansicht gewechselt Basisablauf Der Benutzer dr ckt im Larger View Fenster auf den Stop Button der mit einem Symbol gekennzeichnet ist 5 16 Geschwindigkeit ndern Der Benutzer ndert die Geschwindigkeit der Animation Vorbedingung as Larger View Fenster ist ge ffnet und oder automatisches Bl ttern von irgendeiner Ansicht ist gestartet Nachbedingung Die Zwischenzeit des Bl tterns ist ge ndert Die Animation wird langsamer oder schneller abgespielt Basisablauf Der Benutzer w hlt unter der Combobox Speed irgendeine Geschwindigkeitskategorie und wechselt zu denen Geschwindigkeitsgrad 5 17 Grauwert ndern Der Benutzer ndert den Grauwert der dargestellten 2D Bilder Akteure Ausl ser Benutzer Benutzer Die Bilder werden geladen und oder Larger View Vorbedingung Nachbedingung Basisablauf 5 18 Bilder drehen Fenster ist ge ffnet Der Grauwert eines Bildes bei den Ansichten Axial Sagittal Coronal ist nach Wahl f r Level von 1000 bis 3000 und f r Width von 0 bis 409
29. dd Ad e des 29 5 15 Automatisches Bl ttern stoppen 30 5 16 Geschwindigkeit MO vis cise sive eine BE RnB trin 30 5 17 Grauwert O u u heen cubes dias N apay a dus Qa aa n e dede Rage Na 31 5 18 Bilder dreben iii sise ins rer A A AA Free rer ara 31 5 19 BildgroB EE 32 5 20 Bilder positione eMas irsinin een nr nr 32 5 21 Ponkt SAO ias 33 6 ERSI THTelETe 15 11 111 PPEPFPPPFFFFFFFFFFFFFEFFFFFFFEFEFFEFFFFFFFEFEFEFEEREREREREERRERRRERRRRRERRRRRRRRRRRFFFEFEFRERFEFEREERERERERRRRRRRRRRRRRRRRRRRR 34 62 Ei RECETTE 35 6 2 en WR E GET TEE 35 6 3 vtkFlRenderWindowInteractor NNN 35 7 Testdrehbuch 36 7 1 Referenzierte Dokumente na rn cea dive Eege 36 7 2 Beschreibung der TeSttalle ccccceiccccacccecccacedeeecdcececcceeedansedeveceneseceseneacbecenceeedencdacececdeaeedeneeaeueseresesdeceed ee 37 Testfall Bilder laden und anzeigen 01 i lll lll ln nn nnn nnn nnn nn nnn nnn nnn nn nn ee 37 Testfall Bilder werden entfernt 072 seen 38 Testfall Bilder werden neu geladen 03 jj lll ll i lll nln nnn nn nn nnn nn nnn nnn nn nnn ne 39 Testfall Bilder werden gr er dargestellt 04 0 0 i lll lll ln nln nln ENNEN i iii 40 Testfall Toolbereich wird ge ffnet geschlossen Op ji lll nn 41 Testfall Bilder werden segmentiert 06 ENNEN lll nnn nnn nnn nn nn nn nnn nn n
30. em Symbol lt gt gekennzeichnet ist Der Value Slider wird gleich auf den Wert O erstes Bild angebracht und es wird gleich angefangen jedes Schnittbild vorw rts zu zeigen Bei der Vorf hrung des x ten Bildes bewegt sich der Slider immer vorw rts und dabei wird sein Wert um 1 erh ht Der Slider geht bis zum Ende seines Wertes Wenn der Slider bis zum Ende gekommen ist alle Bilder werden in gleicher Ansicht angezeigt z B Axial werden die gleiche Bilder im angegebenen Zeitintervall r ckw rts angezeigt dabei bewegt sich der Sleider r ckw rts und sein Wert wird um 1 gesenkt endlose Schleife Beim Lauf der repeat Animation werden die Combobox Change View die Buttons repeat r ckw rts vorw rts und screenshot deaktiviert Auf dem Informationsfeld steht IN Filmview is successfully launched beobachtete Abweichung D OK kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 51 52 Testfall Geschwindigkeit wird geandert 16 O Animationsgeschwindigkeit ndern A Geschwindigkeit andern Ausgangszustand Larger View Fenster ist ge ffnet oder es wird eine Filmvorf hrung von irgendeiner Ansicht Axial Sagittal oder Coronal in Lauf gesetzt Der Benutzer w hlt aus der Combobox irgendeinen Geschwindigkeitsregler Low Normal High erwarteter Es wird die Laufgeschwindigkeit der Film
31. en dargestellten Bildern liegenden Value Slider erwarteter Die Ansichten von den dargestellten Bildern werden per Ergebniszustand Bewegung von Value Slider vorw rts oder r ckw rts gebl ttert und jedes Mal wird eine andere Ansicht von den gleichen Bildern die vom ausgew hlten Ordner eingelesen wurde dargestellt und angezeigt Die Werte von Value Slider liegen f r Axial zwischen O und den Anzahl der Bilder die sich im eingelesenen Ordner befinden f r Sagittal zwischen 0 und den Bildgr en Bildaufl sung z B 512 f r Coronal zwischen 0 und den Bildgr en beobachtete Abweichung x OK L kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 45 Testfall Opazit t wird ge ndert 10 Ausgangszustand erwarteter Ergebniszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und der Toolbereich ist ge ffnet sichtbar Der Benutzer klickt auf Tool und w hlt bei der Combobox Opacity irgendeine Ansicht z B Axial aus Nachdem der Benutzer eine Ansicht bei der Combobox Opacity ausgew hlt hat wird der darunter liegende Value Slider aktiviert Der Benutzer kann nun den Slider zwischen den Werten 0 2 1 0 bewegen und die Opazit t von dem ausgew hlten Bild ndern beobachtete Abweichung x OK L kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen
32. erfahren Mit der CT k nnen die zu untersuchenden K rper in Schichten K rperabschnitte aufgenommen am Computer zu 3D Volumendatens tzen zusammengesetzt und schlie lich betrachtet werden So kann man z B Knochen Luft in der Lunge Wasseransammlungen im K rper und Weichgewebe unterscheiden da sie in CT Bildern unterschiedliche Graut ne haben 2 2 Funktionsprinzip Bei der Computertomographie werden R ntgenstrahlen durch die zu untersuchenden Objekte K rper geschickt und auf der anderen Seite von mehreren Detektoren wieder aufgefangen Aus dem Unterschied von ausgestrahlter zu aufgefangener Strahlung k nnen R ckschl sse auf das untersuchte Gewebe gezogen werden Daraus errechnet ein Computer ein Schichtbild Das nun vorliegende 2D Schichtbild ist abh ngig vom Ger tetyp eine Aufl sung Messmatrix von 1282 2562 512 oder 10242 Pixel Je nachdem welches Ziel man mit der Untersuchung verfolgt kann der Detailgrad der Aufnahmen durch Verringerung der Abst nde der einzelnen Schichtbilder erh ht werden Die Schichtbilder werden meist im Abstand von 0 5 mm bis 10 mm aufgenommen Um einen Volumendatensatz zu erhalten ist es n tig viele einzelne Schichten aufzunehmen und zu einem Volumen zusammenzusetzen Um das Verfahren der Aufnahme zu beschleunigen werden Mehrschicht Spiral Computertomographien eingesetzt die zum einen die R ntgenr hre um den Patienten drehen und gleichzeitig den Patienten schrittweise durch die R hre hi
33. f die M Taste Das Larger View Fenster kann auch genutzt werden um schnell durch eine Serie von Bildern zu bl ttern 5 6 Toolbereich ffnen schliessen Kurzbeschreibung Der Benutzer macht den Toolbereich auf dem Hauptfenster sichtbar unsichtbar Vorbedingung Bilder werden erfolgreich geladen Nachbedingung Es wird rechts unten vom Hauptfenster ein Bereich ge ffnet der unterschiedliche Buttons und die Combobox enth lt um geeignete nderungen ber die dargestellte Bilder erm glichen zu k nnen Basisablauf Der Benutzer klickt auf den Tool Button der mit dem Laden der Bilder aktiviert ist Alternative Abl ufe Dr cken auf die T Taste 25 5 7 Bilder segmentieren Kurzbeschreibung Der Benutzer segmentiert die geladenen 2D Bilder Vorbedingung Bilder werden erfolgreich geladen Nachbedingung Es wird ein 3D Modell Bild erzeugt das durch die eingelesenen 2D Bilder und durch die Anderung der Grauwerte entsteht Basisablauf Der Benutzer klickt auf den 3D Button der mit dem Laden der Bilder aktiviert ist Alternative Ablaufe Dr cken auf die 3 Taste 5 8 3D Modell speichern Der Benutzer speichert das 3D Modell als vtkData Vorbedingung Bilder werden erfolgreich geladen und ein 3D Modell wird ee Nachbedingung Das 3D Modell wird als vtkData mit txt Endung in einen OT ana ovoow met Basisablauf Der Benutzer klickt auf den Save Button der mit der Segmentierung de
34. fenster oben rechts auf den A Button oder dr cken auf die Esc Taste und klicken Sie im ge ffneten Popup Fenester auf den Yes Button il Hinweis Wenn beim Verlassen des Programms die Larger View und Help Fesnter auch ge ffnet sind werden auch diese geschlo en 70 9 Danksagung Zum Schluss m chte ich mich bei Herrn Prof Wolfgang Freysinger f r die Uberlassung des Themas und die freundliche Unterst tzung und Betreuung der Arbeit bedanken Weiters m chte ich mich bei den Herren Dipl Ing zg r G ler und Abdullatif Yesil f r ihre Betreuungen bedanken Sie standen mir immer mit Rat Verbesserungsvorschl gen zur Seite und 71 10 Anhang 10 1 Dateien Das Programm besteht aus folgenden Dateien 10 1 1 Ausf hrbare Dateien CTTranslator 10 1 2 Programmdateien CTTranslator cpp Enth lt alle Ressourcen Pr prozessoren Funktionen Variablen Instanzen Zugriffskontrolle Konstruktoren Konstanten Anweisungen Schleifen Objekte Zeiger usw die f r das Programm n tig sind CTTranslator h Die Header Datei von der Klasse CTTranslator cpp enth lt alle Deklarationen von inline und statische Funktionen virtuelle Funktionendeklarationen Pr prozessoren die in der Klasse CTTranslator cpp benutzt und aufgerufen werden CTTranslatorGui cpp Enth lt alle Ressourcen Funktionen Deklarationen usw die f r die Benutzeroberfl che des Programms n tig sind CTTranslatorGui h Die He
35. gebniszustand Koordinatenrichtungen gedreht und nach Wahl zu gew nschten Sichtwinkeln gebracht Die Beendigung der Umdrehung wird durch Freilassen der linken Maustaste abgeschlossen beobachtete Abweichung x OK L kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar Testfall Bildgr e wird ge ndert 20 Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und oder Larger View Fenster wird ge ffnet Der Benutzer klickt im Hauptfenster oder im Larger View Fenster mit rechter Maustaste auf angezeigtes Bild w hrend der Mauszeiger auf einem Anzeigefenster Axia Sagittal Coronal CAS Plane oder Display 3D steht Und schiebt die Maus gedr ckt haltend nach vorn und hinten erwarteter Es wird eine Vergr erung erzielt wenn der Benutzer die Ergebniszustand Maus nach hinten bewegt schiebt und eine Verkleinerung wenn der Benutzer die Maus nach vorn schiebt Die Beendigung der Vergr erung oder Verkleinerung wird durch Freilassen der rechten Maustaste abgeschlossen beobachtete Abweichung D OK _ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar Testfall Bilder werden positioniert 21 Bilder positionieren Bilder positionieren Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und oder Larger View Fenster wird geoffnet
36. h der Skalarwerte O entspricht einem minimalen Skalarwert 1 entspricht einem maximalen Skalarwert 3 8 vtklmageMapToColors Der vtkImageMapToColors Filter nimmt das Eingangsbild das vom Reader gelesen wird und bildet den ersten Bestandteil des Bildes durch eine vtkLookupTable ab Das Resultat ist ein VTK_UNSIGNED_CHAR artiges Bild Wenn die vtkLookupTable nicht definiert ist oder auf NULL ersetzt wird dann werden die Eingangsdaten bermittelt wenn sie bereit von der VTK_UNSIGNED_CHAR Art sind 16 3 9 vtkActor vtkProprety Actors vtkActor vtkImageActor erben von der Klasse vtkProp3D welche fur die 3D Eigenschaften eines Objektes zustandig sind Alle Bewegungen des Objektes werden in der vtkActor Klasse behandelt und ein Object in einer Render Szene repr sentiert Ein vtkActor bietet Eigenschaften f r Oberfl chen eines Objektes z B Ambient Diffus oder Specular durch eine assoziierte Klasse vtkProperty an vtkProperty ist ein Objekt das fur Beleuchtung und andere Oberflacheneigenschaften Opacitiy Specular Color usw eines geometrischen Objekts zustandig ist 3 10 vtkCamera vtkCamera ist eine virtuelle Kamera die fur Rendering zust ndig ist Es bietet Methoden um die Positionen Orientierungen Punkt und Kontaktstelle Blickrichtung der Ansicht zu definieren Reader Renderer RenderWindow CT Bilder auswahlen LookupTable Hounsfield Skala 2D Bild gt ImageMapToColors Actor Camera Abb
37. ichte Entwicklung von grafischen Oberfl chen Ein FLTK Beispiel k nnte folgenderma en aussehen include lt FL F1 H gt include lt FL F1_Window H gt include lt FL F1_Box H gt Hello World int main int argc char argv Abbildung 3 FLTK Beispiel Fl Window window new Fl_Window 300 180 Fl Box box new F1_Box 20 40 260 100 Hello World box gt box FL_UP_BOX 6 box gt labelsize 3 box gt labelfont FL_BOLD FL_ITALIC F box gt labeltype FL_SHADOW_LABEL window gt end window gt show argc argv return Fl run 11 3 2 VTK Das Visualization ToolKit VTK ist ein Open Source Softwaresystem f r 3D Computergraphik Bildverarbeitung und Visualisierung VTK enth lt eine C Klassenbibliothek und verschiedene Schnittstellen z B TT javalt 17 und Python Das Graphikmodel in VTK hat einen h heren Abstraktionsgrad als OpenGL oder PEX Das hei t es ist einfacher Graphik und Visualisierungsapplikationen zu erstellen In VTK k nnen Applikationen in C Tcl Java oder Python geschrieben werden Mit Tcl oder Python und Tk aber auch mit Java und seinen GUI Klassenbibliotheken sind n tzliche Programme schnell erstellt VTK ist ein echtes Visualisierungssystem und unterst tzt eine groBe Zahl von Visualisierungsalgorithmen wie z B scalar vector texture und volumetric methods Ferner sind viele
38. ie Maus gedr ckt haltend nach vorn und hinten 5 20 Bilder positionieren Kurzbeschreibung Der Benutzer ndert die Position eines dargestellten Bildes Akteure Ausl ser Benutzer Benutzer Vorbedingung Die Bilder werden geladen und oder Larger View Fenster ist ge ffnet Nachbedingung Die Standposition eines dargestellten Bildes wird Basisablauf Der Benutzer f hrt den Mauszeiger auf irgendein Anzeigefenster Display Axial Display Sagittal Display Coronal Display CAS Plane Display 3D oder Larger View und dr ckt auf die mittlere Maustaste bewegt die Maus gedr ckt haltend nach rechts links hinten und vorn 32 5 21 Punkt selektieren Kurzbeschreibung Der Benutzer selektiert bei irgendeiner Ansicht Axial Sagittal Coronal einen Punkt Bereich und alle anderen Ansichten zeigen dann denselben Punkt Bereich Vorbedingung Bilder werden erfolgreich geladen Nachbedingung Die Ansichten und Sichtwinkel aller dargestellten 2D Bilder werden zur gleichen Ansicht und Sichtwinkel gebracht Basisablauf Der Benutzer f hrt den Mauszeiger auf irgendein Anzeigefenster Display Axial Display Sagittal Display Coronal und dr ckt auf die linke Maustaste Die Punktselektion ist nur bei den Ansichten Display MN Axial Display Sagittal und Display Coronal erlaubt 33 34 6 Klassendiagramm In diesem Abschnitt wird das Klassendiagramm von C
39. ildung 5 Schnittbilder einlesen 3 11 vtkMarchingCubes Marching Cubes wurde 1987 von William E Lorensen und Harvey E Cline entwickelt und ist ein Algorithmus zur Berechnung von Isosurfaces in der 3D Computergrafik Die dazugeh rige vtkMarchingCubes Klasse enth lt diesen Algorithmus Aus einem 3D Raster ergeben sich W rfel welche individuell betrachtet werden um eine Oberfl che zu ermitteln die den W rfel teilen soll Ein W rfel besitzt durch Querbildung acht Eckpunkte die sich entweder innerhalb oder au erhalb der Kontur befinden und jeweils einen Index v1 v2 v3 v4 v5 v6 v7 v8 besitzen Somit ergeben sich 2 256 m glichen Zust nden f r den W rfel Durch die Symmetrie des W rfels lassen sich die Zust nde mit Hilfe der Rotation Spiegelung und Inversion auf 15 reduzieren In einer Triangle Lookup Table sind die 15 unterschiedlichen Polygone zur Teilung des W rfels 17 gespeichert Die Polygone werden nach dem gleichen Muster der Eckpunkte welche nach Innen und Au enbereich aufgeteilt wurden dem W rfel des Rasters zugewiesen Anschlie end wird sukzessiv zum n chsten marschiert Der Algorithmus terminiert wenn der Anfangspunkt wieder erreicht wurde Im Gesamtbild ergibt sich dann eine Oberfl che vtkMarchingCubes ist ein Filter der als Eingabe ein Volumen nimmt und eine oder mehrere Isofl chen erzeugt Um eine Isofl che erhalten zu k nnen m ssen als Eingabe ein oder mehrere Konturwerte angegebe
40. irmfoto gespeichert werden soll mit der Eingabe des Dateinamens und Druck auf dem OK Button abgeschlossen Auf dem Informationsfeld steht Image is successfully exported as jpg 300x300 oder Image is successfully exported as jpg 500x500 beobachtete Abweichung XJ OK L_ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 48 Testfall Filmvorf hrung wird gestartet vorw rts 13 r l Filmvorf hrung Animation vorw rts starten F Bilder automatisch bl ttern Larger View Fenster ist ge ffnet Der Benutzer klickt auf vorw rts Button der mit dem Symbol gt gekennzeichnet ist erwarteter Der Wert von Value Slider wird gleich auf den Wert 0 Ergebniszustand erstes Bild angebracht und es wird gleich angefangen jedes Bild vorwarts zu zeigen Bei der Vorf hrung des x ten Bildes bewegt sich der Slider immer vorwarts und dabei wird sein Wert um 1 erh ht Der Slider geht bis zum Ende seines Wertes Wenn der Slider bis zum Ende gekommen ist alle Bilder werden in gleicher Ansicht angezeigt z B Axial wird die Animation angehalten Beim Lauf der Animation werden die Combobox Change View die Buttons repeat r ckw rts vorw rts und Screenshot deaktiviert Auf dem Informationsfeld steht Filmview is successfully launched beobachtete Abweichung DG OK L_ kosmetische Abweichungen _ mittlere
41. kt bei den Sagittal und Coronal Ansichten seitlich und von vorne angezeigt Die Beendigung der Punktselektion wird durch Freilassen der linken Maustaste abgeschlossen beobachtete Abweichung x OK L_ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 59 8 Benutzerhandbuch 8 1 Installation Vor Installation des Programms m ssen die VTK FLTK und CMake Bibliotheken installiert werden genauere Erkl rung finden Sie unter LIESMICH txt Datei auf der Installations CD Nachdem alle Grundvoraussetzungen am System erfullt sind kann der CTTranslator konfiguriert kompiliert und gestartet werden 8 2 Programm starten Auf der Installations CD befindet sich das Verzeichnis CTTranslator Kopieren Sie dieses von der CD in Ihr Homeverzeichnis Starten sie unter Linux eine Konsole oder ein Terminal und wechseln Sie z B mit cd Desktop CTTranslator in dieses Verzeichnis Um das Programm zu starten geben sie CT Translator ein Display Axial Display Sagittal Display Coronal Display CAS Plane Display 3D General Info gt gt CTTranslator is started Please go to Load buttonl and choose a DICOM image Folder gt gt Abbildung 14 CTTranslator Hauptfenster 60 8 3 Bilder einlesen und anzeigen Load Road Clear 3D Movie Tool 250 Image Info Patient Name Meck_4445943 CT
42. linken Maustaste auf den gew nschten Bereich beim Axial Anzeigefenster Somit sehen Sie den gleichen Punkt den Sie bei der Axial Ansicht selektiert haben auch in den Sagittal und Coronal Ansichten seitlich und von vorne X 66 Y 268 L 288 W 756 Bei der Verwendung der linken Maustaste werden auf dem Progress Bar aktuelle Koordinaten und Grauwertintervall angezeigt 8 13 2 Rechte Maustaste Die angezeigten Bilder k nnen vergr ert oder verkleinert werden F r die Vergr erung dr cken Sie auf die rechte Maustaste und bewegen Sie die Maus gedr ckt haltend nach hinten F r die Verkleinerung bewegen Sie die Maus gedr ckt haltend nach vorn 69 8 13 3 Mittlere Maustaste KA Die Position von einem dargestellten Bild kann im Rahmen des Anzeigefensters ge ndert verschiebt werden W hrend der Mauszeiger auf irgendeinem Anzeigefenster steht dr cken Sie auf die mittlere Maustaste und bewegen Sie die Maus gedr ckt haltend rechts links hinten und vorne oder bestimmen Sie einen Ort im Anzeigefenster f hren Sie den Mauszeiger hin und dr cken Sie auf die mittlere Maustaste E Hinweis Alle Mausoptionen auBer Punktselektion k nnen auch im Larger View Fenster angewendet werden 8 14 Programm beenden Are you sure CTTranslator to quit Abbildung 19 CTTranslator Beendigungsfenster Wenn Sie das Programm verlassen m chten klicken Sie im Haupt
43. lle zuletzt ver nderten Einstellungen zur ckgesetzt Die Buttons Clear 3D Movie und Tool werden wieder aktiviert Auf dem Informationsfeld steht Images are successfully reloaded beobachtete Abweichung D OK kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 39 Testfall Bilder werden gr er dargestellt 04 Ausgangszustand erwarteter Ergebniszustand Bilder gr Ber darstellen Bilder gr Ber darstellen Bilder sind geladen und Button Movie ist aktiv Nachdem der Benutzer die Bilder erfolgreich geladen hat klickt auf dem Movie Button oder dr ckt auf die M Taste Es wird ein neues Fenster ge ffnet auf dem am Anfang nur die Axial Ansicht dargestellt ist Der Benutzer kann auf diesem Fenster nach Wahl zu anderen Ansichten wechseln Der Benutzer enth lt auf dem LargerView Fenster gr ere Ansichten von gleichen Bildern die im Hauptfenster dargestellt sind Auf dem LargerView k nnen wieder alle Ver nderungen von einer Ansicht und vorgenommene Einstellungen bernommen werden Auf dem Informationsfeld steht Image is successfully larger displayed beobachtete Abweichung DT OK _ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 40 Testfall Toolbereich wird ge ffnet geschlossen 05 Ausgangszustand erwarteter Ergebniszustand
44. m 2008 Python Software Foundation http www python org 2008 Kitware Inc http www kitware com 2008 Fedora Projekt http fedoraproject org http docs fedoraproject org release notes f7 en_US 2007 Dan Pilone amp Neil Pitman UML 2 0 in a Nutshell O Reilly Verlag GmbH amp Co KG 1 Auflage ISBN 9783897213425 Seite 12 35 2006 August Wilhelm Scheer ARIS Modellierungsmethoden Metamodelle Anwendungen Springer Verlag 4 Auflage ISBN 3540416013 Seite 106 2001 GCC the GNU Compiler Collection http gcc gnu org 2008
45. m ein Objekt welches aus mehreren Teilen besteht zu einem Szenegraphen zusammenzuf gen vtkRenderer f hrt auch Koordinatentransformation zwischen Weltkoordinaten Ansichtskoordinaten Computer Grafik Rendering Koordinatensystem durch und Displaykoordinaten die tats chliche Bildschirmkoordinaten auf dem Bildschirm VtkRendererWindow ist ein abstraktes Objekt um das Verhalten eines Renderings Fensters zu spezifizieren Es erstellt ein Fenster in dem vtkRenderer eine Szene setzt und die geladenen Bilder darstellt 15 3 7 vtkLookupTable Die Farben werden durch eine Farbtabelle vtkLookupTable definiert und vom Mapper verwaltet vtkLookupTable bildet RGBA Rot Gr n Blau Alpha Transparent Farbspezifikationen und Skalarwerte ab Die Farbtabelle kann auch fur die Generierung der Farbwerte oder Erzeugung von Farben Sattigung Alpha Bereich oder einer Tabelle genutzt werden e SetHueRange double min double max min max e 0 1 definiert den Farbbereich der Farbt ne 0 entspricht 0 1 entspricht 360 e SetSaturationRange double min double max min max 0 1 definiert den Bereich der Sattigung des Farbtons 0 entspricht der Kreismitte 1 entspricht dem Kreisrand e SetValueRange double min double max min max 0 1 definiert den Bereich der Helligkeit der Farbe 0 entspricht Schwarz 1 entspricht einem sehr hellen Farbton e SetTableRange double min double max min max 0 1 definiert den Bereic
46. men 3 Bilder als 3D darstellen Segmentation 4 Filmvorf hrung Animation durchf hren 5 3D Modell speichern Es wurden so viele Testf lle wie m glich abgehandelt aber es versteht sich dass hier nur die wichtigsten und am h ufigsten auftretenden F lle betrachtet werden k nnen 7 1 Referenzierte Dokumente e Pflichtenheft Use Case Diagramm e GUI Prototyp 7 2 Beschreibung der Testfalle Testfall Bilder werden geladen und angezeigt 01 ee Bilder laden und zeigen Ausgangszustand erwarteter Ergebniszustand Programm ist bereit gestartet und Load Button ist aktiv Der Benutzer startet das Programm klickt auf den Load Button oder dr ckt auf die L Taste w hlt einen Ordner in dem sich CT Bilder befinden aus und liest sie ein Nachdem der Benutzer einen Ordner ausgew hlt hat wird das Laden von Bildern mit Klick auf den OK Button abgeschlossen Im Hauptfenster werden die eingelesenen Bilder in den Anzeigefenstern Display Axial Display Sagittal Display Coronal und Display CAS Plane als Axia Sagittal Coronal und Planer Ansichten als 2D dargestellt Die Buttons Reload Clear 3D Movie Tool Help und unter den Anzeigefenstern liegende Slider werden aktiviert Auf dem Informationsfeld steht Images are successfully read and loaded und Images are successfully displayed as 2D beobachtete Abweichung x
47. n werden Als zus tzliche Alternative k nnen ein min max skalarer Bildbereich z B der Bildbereich von irgendeinem Grauwert und die Anzahl der Konturen eingegeben werden Es gibt also folgende 15 Grundkonfigurationen 12 13 14 Abbildung 6 Marching Cubes Grundfunktionen 18 ang 5 Ir P EE Abbildung 7 Marching Cubes Beispiel 3 12 vtkMapper Die Abbildung zwischen den Visualisierungsdaten und den grafischen Daten wird von Mappern vtkMapper vtkPolyDataMapper bernommen Er liest Daten aus dem Datenobjekt und macht sie f r das Grafikmodell verf gbar erstellt also geometrische Primitive Ein Mapper ist gleichzeitig die geometrische Repr sentation f r einen vtkActor 2D Bilder Reader S Renderer RenderWindow Marching Cubes 3D Bild PolyDataMapper Actor Camera Hounsfield Skala gt Abbildung 8 Schnittbilder segmentieren 3 13 vtkPolyDataWriter vtkPolyDataWriter ist ein Objekt das z B ein 3D Objekt als Eingabe nimmt und sie als ASCII oder bin r in VTK Format schreibt Aber die Bin rdateien die auf ein System geschrieben werden k nnen m glicherweise nicht auf anderen Systemen lesbar sein 3D Bild vtkData ASCII PolyDataWriter Zielordner Abbildung 9 3D Modell speichern 19 3 14 vtkWindowTolmageFilter vtkWindowToImageFilter bietet notwendige Methoden an um die Daten Bilder Objekte usw von einem vtkRenderWindow ode
48. ndurch schieben sog Spiral CT HS Detektoren 14 Abbildung 1 Computertomographie Mit Hilfe dieses Verfahrens ist es m glich 300 und mehr Schichtbilder in nur wenigen Sekunden aufzunehmen wahrend der Patient regungslos und mit angehaltenem Atem durch die R hre geschoben wird 2 3 Hounsfield Skala Die Absorptionswerte des aufgenommenen Gewebes werden in Hounsfield Units HU angegeben Die Einheit wurde nach dem Nobelpreistr ger Godfrey Hounsfield benannt der als Vater der Computertomographie gilt Es wurde eine Skala angelegt bei welcher den unterschiedlichen Grauwertstufen unterschiedliche Gewebestrukturen zugeordnet werden k nnen Als Referenz dient Wasser mit einem Wert von 0 HU welche den Ausgangswert f r die Skala bildet Durch Angabe eines bestimmten Grauwertes ist es allerdings noch nicht m glich eine bestimmte Struktur zu extrahieren da die unterschiedlichen Gewebestrukturen teils sehr hnliche oder gar gleiche Grauwerte aufweisen Schw chungswerte von Gewebe bezogen auf Wasser Knochen 3000 Blut Leber T i Tumor ig wier Niere Herz 40 one Pankreas Neben Darm Harnblase T my niere Wasser L 0 graue Hirnsub 100 Mamma 200 Fett 900 e args 100 E Luft 2 4 DICOM Format Die Grauwertbilder die ein Computertomograph liefert werden in der Medizin in einem Abbildung 2 Hounsfield Skala 10 speziellen Format ge
49. nn nn i ieee 42 Testfall 3D Modell wird als vtkData gespeichert 07 rr 43 Testfall Hilfefenster wird ge ffnet 08 i lll lll ln NENNEN ENNEN nn nn nie 44 Testfall Bildansicht wird gebl ttert 0971 jj jj lll ll ln nln nnn nnn nnn nnn nnn nn nn nn nn ieee 45 Testfall Opazit t wird ge ndert 10 seen 46 Testfall S ttigung wird ge ndert 11 ee 47 Testfall Bildschirmfoto wird gespeichert 12 lll lll nnn nln nn nnn nn nnn ln nn ni ieee 48 Testfall Filmvorf hrung wird gestartet vorw rts 13 sisi 49 Testfall Filmvorf hrung wird gestartet r ckw rts 14 ill lll lll lll lll i lll ili i i ieee 50 Testfall Filmvorf hrung wird gestartet wiederholtes Bl ttern 15 51 Testfall Geschwindigkeit wird ge ndert 16 i lll lll ll nnn nnn nnn nnn nnn nln nn i ee 52 Testfall Filmvorf hrung wird gestoppt 17 i lll lll nnn nnn nn nn nnn nn nn nn nn nn nie 53 Testfall Grauwert wird ge ndert 18 l nnn nnn nnn nn nn nnn nnn nnn nnn nn nn i eee 54 Testfall Bilder werden gedreht 191 seEEKERERKEREEEKREEEREEEEEEEEEEEEEEEEEEEEEEEEKEERERKER ENEE EEN 55 Testfall Bildgr e wird ge ndert 20 lll nln nnn nnn nnn nn nn nnn nnn nn nnn nee 56 Testfall Bilder werden positioniert 21 nln nnn nn nn nn nn nnn nn nnn nn ne 57 Testfall Punkt wird selektiert 22 icniciinnniai ENEE nn nn 58 8 Benu
50. p_x int mousePositiontemp_y int vtkF IRenderWindowinteractor vtkFlRenderWindowinteractor vtkFlRenderWindowinteractor Abbildung 13 Klassendiagramm CTTranslatorGui imageReading reloadCallback clearButtonCallback toolButtonCallback imageDisplayingCallback2D imageDisplayAxial2D imageDisplaySagittal2D imageDisplayCoronal2D imageDisplayingCallback3DStarter imageDisplayingCallback3D requestReslicelmageAxial requestReslicelmageSagittal requestReslicelmageCoronal requestResliceLargerlmage changeRangeMinCallback changeRangeMaxCallback imageExportCallback imageColormenuButtonCallback imageSaveCallbackStarter imageSaveCallback imageLargerExportCallback helpViewCallback largerViewCallback opacityCallback filmViewSpeedChoiceCallback filmViewRepeatButtonCallback filmviewToStartButtonCallback filmViewF orwardButtonCallback filmViewBackwardButtonCallback filmViewStopButtonCallback filmViewToEndButtonCallback mousetester coordinatesViewCallback QuitLargerWindow HasQuittedLarger QuitHelpWindow HasQuittedHelp 6 1 6 2 6 3 35 CTTranslator Die Klasse CTTranslator ist zust ndig f r alle Operationen die oben im Klassendiagramm dargestellt sind Die Klasse bezieht die Daten Methodendefinitionen FLTK Widgets usw die in der Klasse CTTranslatorGui vordefiniert sind ber die Klasse CTTranslator
51. r vtkWindow zu lesen und sie zur Imaging Pipeline als Eingabe zu bergeben Damit k nnen die Fensterinhalte als RGB oder RGBA Pixel gelesen und in eine Datei als Bild z B jpg png usw gespeichert werden 2D Bild RenderWindow gt 7 3D Bild RenderWindow WindowTolmagerilter P9 Bild JPEGWriter Zielordner Abbildung 10 Bilder als Bildschirmfoto speichern 3 15 vtkFlRenderWindowlnteractor vtkFlRenderWindowiInteractor ist eine Klasse mit der VTK und FLTK Anwendungen miteinander integriert und interagiert werden k nnen Sie stellt einen plattformunabh ngigen Interaktionsmechanismus f r Maus Tastatur Zeitereignisse usw zur Verf gung vtkFIRenderWindowInteractor reagiert auf die Bewegungen des Input Devices Buttons des Input Devices und Tastatureingaben 3 16 vtkPointPicker Die Klasse vtkPointPicker erlaubt durch Positionierung der Maus und durch Dr cken der linken Maustaste das Picken eines Punktes Dabei wird von der Position der Maus ein Strahl weggeschickt der mit der Sphere geschnitten wird Durch Picking erh lt man x y z Koordinaten Identifikation eines Punktes welche dem gepickten Punkt entsprechen 20 4 Ablaufdiagramm In diesem Abschnitt wird der Ablauf des Programms mit textueller Beschreibung des Ablaufdiagramms vorgestellt Ablaufdiagramme werden verwendet um die Funktionsweise eines Computerprogramms oder eines Algorithmus zu veranschaulichen Ablaufdiagramme bilden Prozesse aus
52. rena 74 11 Literaturver e chh eege Ve dE E NEE ge ef GE dE Ed Nee EE EE 75 1 Einleitung 1 1 Aufgabenbeschreibung Im Rahmen dieser Bakkalaureatsarbeit sollen CT Bilder eingelesen als 3D Bild segmentiert und das segmentierte 3D Modell als vtkDatal l gespeichert werden Dabei sollen ber eingelesene 2D oder segmentierte 3D Modelle verschiedene Bearbeitungen und Betrachtungen durchgef hrt werden Als Grundlage dienen reale CT Bilder in denen die Knochen oder Weichgewebestrukturen zun chst identifiziert und ber die Hounsfield Skalal als 2D dargestellt werden In einem anderen Schritt sollen diese Schnittbilder durch den Algorithmus Marching Cubes als 3D in geeigneter Weise dargestellt werden und zuletzt sollen die dargestellten 3D Modelle gespeichert werden Vor der Segmentierung bzw Speicherung der Bilder k nnen verschiedene Bildbearbeitungsoperationen und Bildbetrachtungsaufgaben vorgenommen werden Hierf r wird ein Programm entwickelt das die CT Bilder einlesen kann und dem Benutzer die erw hnten Aufgaben erm glicht Da es sich bei diesem Programm um ein Segmentierungs und Betrachtungsprogramm von CT Bildern handelt wird das Programm CTTranslator genannt 2 Grundlagen 2 1 Computertomographie Computertomographie cT ist eine rechnerbasierte Analyse von verschiedenen Richtungen aufgenommener R ntgenaufnahmen eines Objektes um ein dreidimensionales Bild zu erzeugen CT ist ein schnittbildgebendes V
53. s 3D Modells aktiviert ist Es ffnet sich ein Chooser Benutzer gibt den Dateiname ein und klickt auf den OK Button Alternative Abl ufe Dr cken auf die S Taste 26 5 9 Hilfefenster ffnen Vorbedingung Das Programm ist bereit gestartet Nachbedingung Das Benutzerhandbuch wird im Help View Fenster Kurzbeschreibung Der Benutzer ffnet das Hilfefenster bereit gestellt Der Benutzer klickt auf den Help Button Alternative Abl ufe Dr cken auf die H Taste 5 10 Bilder bl ttern Basisablauf Der Benutzer h lt mit der linken Maustaste den unter dem Anzeigefenster liegenden Value Slider und bewegt ihn zwischen seinen Grenzen z B von 0 bis 70 Alternative Abl ufe Statt Mausbewegung k nnen linke und oder rechte Richtungstasten benutzt werden 27 28 5 11 Opazitat ndern Der Benutzer ndert die Opazit t der dargestellten Bilder Vorbedingung Der Toolbereich ist ge ffnet und unter der Combobox Opacity wird irgendeine Ansicht ausgew hlt Nachbedingung Durch die nderung des Opazit tswertes enth lt die Ansicht unterschiedliche Undurchsichtigkeiten Basisablauf Der Benutzer w hlt unter der Combobox Opacity irgendeine Ansicht und bewegt den unter der Combobox liegenden Value Slider Alternative Abl ufe Statt Mausbewegung k nnen linke und oder rechte Richtungstasten benutzt werden 5 12 Bildfarbe ndern Kurzbeschreibung Der Benutzer
54. speichert das mittlerweile zum Standard f r medizinische Aufnahmen geworden ist Dieses Format nennt sich DICOM Digital Imaging and Communications in Medicine Das DICOM Format beschreibt wie die digitalen Bilder und Informationen gespeichert werden und wie medizinische Aufnahmeger te miteinander kommunizieren k nnen Das Besondere ist hierbei dass die Bilder einen Header vor dem eigentlichen Bild enthalten in dem zus tzlich Informationen wie Patientenname Aufnahmeger t Bildeigenschaften Bildgr e Bildabstande usw dokumentiert werden k nnen und nicht wie bei anderen Formaten bei denen die Zusatzinformationen in separaten Dateien gespeichert sind 10 3 Material und Methoden 3 1 FLTK Das Fast Light ToolKit FLTK SEI ist Open Source Software und enth lt einen eigenen GUI Designer fluid FLTK User Interface Designer FLTK ist ein GUI Toolkit fur 3D Grafikprogrammierung Es ist eine sogenannte Cross Plattform C Applikation Diese erlaubt es ein Programm mit nur einem Quellcode f r verschiedene Betriebsplattformen wie Linux Unix Mac OS X und Windows zu entwickeln Die FLTK Bibliotheken liefern plattformunabh ngige Schnittstellen f r alle Arten von C Programmen FLTK bietet auch eine gro e Zahl vorgefertigter grafischer Kontrollelemente Widgets wie Inputs und Outputsfelder Buttons Textfelder usw die nach den eigenen Bed rfnissen angepasst werden k nnen Ein Layout Manager erlaubt eine le
55. ster und Toolbereich 65 Nachdem Bilder geladen oder neu geladen sind kann der Toolbereich durch Tool einen Klick auf den Tool Button oder Druck auf die T Taste ge ffnet werden um bestimmte Anderungen und Bearbeitungen tibernehmen zu k nnen Screenshot sl Nach ffnung des Toolbereichs kann durch die Schreenshot Combobox irgendeine Ansicht der angezeigten Bildern ausgewahlt und als Bildschirmfoto gespeichert werden Opacity Um die Opazitat irgendeiner Ansicht zu ndern wahlen Sie in der Liste aie eine Ansicht und bewegen Sie die unten stehenden und nach dem 05 it Auswahl aktivierten Slider zwischen Werten 0 2 und 1 0 Color Y Um die Farbe von irgendeiner Ansicht zu ndern w hlen Sie unter dem Color Men eine Ansicht und die gew nschte Farbe aus D Hinweis Wenn die Bilder durch Clear im Hauptfenster entfernt sind w hrend der Toolbereich ge ffnet war wird der Bereich nach dem neuen Laden durch Reload wieder nicht ge ffnet 8 8 66 Bilder segmentieren Abbildung 18 Knochenstruktur und Weichgewebe als 3D Als 2D angezeigte Bilder k nnen durch einen Klick auf den 3D Button oder KA Druck auf die 3 Taste 3 Dimensional dargestellt werden Die verschiedenen Ansichten Knochenstruktur Weichgewebe oder beide eines 3D Bildes erfolgt durch die nderung des Grauwertes Sie k nnen gleich nach dem Darstellung der 2D Bilder auf
56. tLookupTable huelut axial vtkImageActor New axial gt Se axial gt Se axial gt Se t Input axialColors gt GetOutput tOpacity 1 0 tDisplayExtent 0 511 0 511 30 30 renAxial gt AddActor axial 13 3 3 CMake CMakel ist eine plattformunabh ngige in C geschriebene Open Source Software die 18 entwickelt wurde Es erstellt aus einer CMakeLists txt Datei von der Firma Kitware plattformabh ngige bersetzbare Dateien zur Ausf hrung von Programmen Das Ziel dieser Software ist unter anderem den Erstellungsprozess von Software zu managen um Compiler und Systeme benutzen zu k nnen die dem Programmierer bekannt sind Eine einfache CMakeLists txt Datei k nnte folgenderma en aussehen PROJECT Beispielprojekt FIND VTK FIND_PACKAGE VTK H Hj Wei E_VTK_FILE INCLUDE USE_VTK_FILE ELSE USE_VTK_FILE ESSAGE FATAL ERROR VTK not found Please set VTK_DIR ENDIF USE_VTK_FILE FIND FLTK FIND_PACKAGE FLTK IF USE_VTK_FILE INCLUDE FLTK_INCLUDE_DIR LINK_LIBRARIES FLTK_LIBRARIES OPENGL_LIBRARIES ELSE FLTK_FOUND ESSAGE FATAL ERROR FLTK not found Please set FLTK_DIR ENDIF FLTK_FOUND ADD_EXECUTABLE Beispielprojekt Beispielprojektl cxx
57. tzerhandbuch 59 8 1 Installations u O 59 8 2 eelef 59 8 3 Bilder einlesen und anzeigen seen 60 SA ON 61 Bh Bilder UN cional A lia 61 8 6 Bilder gr er darstellen ua dd be a EENS EEN needed tn 62 8 7 Keel len Re 64 8 8 SEGMENTELUNG ccoo rr il a A A di dc e eines 66 8 9 3D M dell SpeiChe M ET 67 8 10 Hilfefenster EE 67 8 11 Allgemeine Informationsfenster see 67 8 12 Bildinformatlonstenster r sis N t San ii 67 8 13 MaUsfunktionen uy O S vide cn A aa tata rs a de aaa aaa aq dua uapa saus Ns 68 8 13 1 Linke EE 68 8 13 2 Rechte Maui a 68 8 13 3 Mittlere M ust ste ersehen ci n 69 8 14 Programm beenden e Denen ana leer EEE 69 9 Danksagunmg BARRRRRRRRRRRRRRRRRRRERRRRRRRRRRRRRRRRRFFEFEFEFERERERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRFRFRFRFEFRRRFERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR 70 T0 VALLE Le ERP 71 10 1 Dateien ses divas civnevaa cca vavasesevancncsauabanssataNancvawabanseanetacadavabandsdvaNandvtvananenatanandsesevandiswatanavavavascsatan 71 10 2 Ausf hrbare Dateien iscrisicdcsceteentsatunedeoeegedeaiveccedeniagyessancnedeserdersdsareledeniedostsdietyaedeavsgibuedurstededevSentedtte 71 10 3 ProgrAMMAAtCIN s u u aasawa A lea 71 10 4 Bibliothekdateien 2 en He HB D s dat den Eee 73 10 5 Abbildungsv rzeichnis i cscecdieccveeacecavedecavsiandectsvenavasetacaeasaearseeedcataivsd a
58. vorf hrung Ergebniscustand ge ndert Somit werden die Zeitintervalle bei der Wartezeit der Darstellung von Bildern k rzer oder langer eingestellt Die Wartezeit bei der Darstellung f r die Geschwindigkeitskategorien betragen Low 5 ms Normal 3 ms High 1 ms beobachtete Abweichung D OK _ kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar 53 Testfall Filmvorf hrung wird gestoppt 17 A Benutzer stoppt die Animation Ausgangszustand Larger View Fenster ist ge ffnet und es wird eine Filmvorf hrung von irgendeiner Ansicht Axial Sagittal oder Coronal in Lauf gesetzt Der Benutzer klickt auf den stop Button der mit dem Symbol m gekennzeichnet ist erwarteter Die Filmvorf hrung wird angehalten und der Slider wird Ergebnlszustand auf den Wert O gebracht Nach dem Abstellung der Filmvorf hrung werden die Combobox Change View die Buttons vorw rts und r ckw rts r ckw rts Vorw rts und Screenshot wieder aktiviert beobachtete Abweichung PQ OK kosmetische Abweichungen _ mittlere Abweichungen _ gro e Abweichungen _ System unbenutzbar Testfall Grauwert wird ge ndert 18 ro a casas i C Ausgangszustand Das Laden oder Neuladen von Bildern ist erfolgreich abgeschlossen und oder das Larger View Fenster ist ge ffnet Der Benutzer klickt im Hauptfenster oder im L
59. ws and wurden werden in dem General Info Fenster als Text protokolliert 8 12 Bildinformationsfenster Patient Name CAVE Descriptive Name D Bildformat Dateiendung Bildgr e Bildanzahl Abst nde zwischen den E Info Nach dem Laden der CT Bilder werden in diesem Fenster Patient Name Bildern und den Pfad wo sich die Bilder befinden aufgelistet 8 13 Mausfunktionen 68 8 13 1 Linke Maustaste CE Durch die Anderung des Grauwertes k nnen unterschiedliche Ergebnisse von dargestellten Bildern erhalten werden Um das zu erm glichen f hren Sie den Mauszeiger auf irgendein Anzeigefenster Axial Sagittal oder Coronal dr cken Sie auf die linke Maustaste und bewegen Sie die Maus gedr ckt haltend nach rechts links hinten und vorn Die Ergebnisse der nderungen sind in den Bereichen Display Axial Display Sagittal Display Coronal und Display CAS Plane sichtbar O Um das Bild zur gew nschten Position bringen zu k nnen kann eine Ansicht gedreht werden Daf r f hren Sie den Mauszeiger auf das Anzeigefenster Display CAS Plane oder auf Display 3D dr cken sie auf die linke Maustaste und bewegen Sie die Maus gedr ckt haltend nach rechts links hinten und vorn Um einen gew nschten Punkt in irgendeiner Ansicht z B bei der Axial Ansicht auch in anderen Ansichten Sagittal und Coronal sehen zu k nnen klicken Sie mit der
Download Pdf Manuals
Related Search
Related Contents
Acorn Engineering News Issue 1 April 1987 LICENCE PROFESSIONNELLE D`UTILISATION DU LOGICIEL Sony XM-752EQX Operating Instructions AT8691J 取扱説明書 Changes for October 2012 Changes for September 2011 Changes Andis RACD Magofon user manual MAXPOWER CX612 User`s Manual Maxpower USA USB x 6 Leukotape® classic Samsung 48" SUHD 4K Curved Smart TV JS9005 Brugervejledning Copyright © All rights reserved.
Failed to retrieve file