SlideShare ist ein Scribd-Unternehmen logo
1 von 1
Downloaden Sie, um offline zu lesen
1
Berner Fachhochschule | Haute école spécialisée bernoise | Bern University of Applied Sciences  2016  book.bfh.ch
Unity® Volume Rendering – Plug-in zum Rendern
von medizinischen Daten
Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality
Betreuer: Prof. Dr. Urs Künzler
Experte: Dr. Federico Flückiger (Eidg. Finanzdepartement EFD)
Das cpvrLab am Institute for Human Centered Engineering HuCE hat ein
Cave Automatic Virtual Environment (CAVE) in Betrieb. Zum Synthetisie-
ren der 3D-Welt wird die Unity Game Engine eingesetzt. Ein Plug-in ermög-
licht nun das Rendern von medizinischen Daten als Volumengrafik. Die
Berechnung erfolgt mit Shader-Programmen auf den Grafikprozessoren.
Ausgangslage
Für die ärztliche Diagnose und Therapie kommen
heutzutage computergestützte Verfahren zur Anwen-
dung. Medizinische Bilddaten werden per Computerto-
mograph (CT) aquiriert und in einer Bildanalyse auf-
bereitet. Solche Volumengrafiken eignen sich auch für
die Wissensbildung. Dazu hat das cpvrLab ein CAVE in
Betrieb. Das System wird u.a. zur Simulation von Ope-
rationssaal-Workflows eingesetzt. Seit Februar 2016
werden die Stereobilder im CAVE mit der Game-Engi-
ne von Unity Technologies gerendert. In der Trainings-
umgebung sollen nun auch medizinische Bilddaten
eingebunden werden.
Konzept
Mit Unity soll ein Plug-in für das Direct Volume Rend-
ering entwickelt werden. Dabei soll die Rechenkapa­
zität der Grafikprozessoren genutzt werden, indem
das Rendern mit Shader-Programmen erfolgt. Aus
CT-Daten soll mit einer Sichtstrahl-Methode eine Volu-
mengrafik berechnet werden. Die Kolorierung soll mit
einer Transferfunktion (TF) erfolgen.
Resultat
Im Unity-Editor kann über Menü-Einträge auf die
Funktionalität des Plug-ins zugegriffen werden.
Es ermöglicht den Import von Bildinformation aus
­DICOM-Daten. Die Metadaten werden als JSON-Datei
angelegt, aus den Bildinformationen wird eine 3D-Tex-
tur erstellt.
Mit dem Plug-in kann ein Game-Objekt ‹Volume› er-
stellt werden, welches einen Volume-Filter enthält.
Der Filter liest die JSON-Datei und weist die 3D-Textur
dem Shader-Programm zu.
Als weiteres untergeordnetes Game-Objekt wird eine
Region of Interest (ROI) erstellt. Mit dieser kann der
zu rendernde Bereich manuell editiert und einge-
schränkt werden. Die ROI hält zudem die Renderer-
Komponente mit einem Material als Transferfunktion
(TF).
Im Material kann der Typ der Transferfunktion gewählt
werden. Das Plug-in hält eine Lookup-Tabelle, eine Lis-
te von editierbaren Farben oder aber eine gradienten-
basierte Transferfunktion bereit.
Die Rendermethode – ein Raycaster – wurde als Pixel-
Shader in Cg implementiert. Dieser traversiert das
­Volumen und appliziert die Transferfunktion. Dabei
dient der Grauwert eines CT-Pixels als Skalar für das
Zuweisen eines Farbwertes an die Volumengrafik.
Roland Bruggmann
roland.bruggmann@gmx.net
Ein 3D-Modell (CT-Daten) wird per Material (TF) vom Shader
(Raycaster) zur Volumengrafik gerendert
Ein CT-Datensatz von VTK gerendert als Volumengrafik mit
dem Unity Volume Rendering Plug-in

Weitere ähnliche Inhalte

Mehr von Roland Bruggmann

Fingerprint Analysis – Preprocessing and Feature Extraction
Fingerprint Analysis – Preprocessing and Feature ExtractionFingerprint Analysis – Preprocessing and Feature Extraction
Fingerprint Analysis – Preprocessing and Feature ExtractionRoland Bruggmann
 
Unreal Engine IoT Project: Heartbeat
Unreal Engine IoT Project: HeartbeatUnreal Engine IoT Project: Heartbeat
Unreal Engine IoT Project: HeartbeatRoland Bruggmann
 
3D Content for Dream-like VR
3D Content for Dream-like VR3D Content for Dream-like VR
3D Content for Dream-like VRRoland Bruggmann
 
OSG Volume Rendering - Presentation
OSG Volume Rendering - PresentationOSG Volume Rendering - Presentation
OSG Volume Rendering - PresentationRoland Bruggmann
 
Swiss National Supercomputing Centre CSCS
Swiss National Supercomputing Centre CSCSSwiss National Supercomputing Centre CSCS
Swiss National Supercomputing Centre CSCSRoland Bruggmann
 
Numerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und IntegrationNumerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und IntegrationRoland Bruggmann
 
Multicore and GPU Programming
Multicore and GPU ProgrammingMulticore and GPU Programming
Multicore and GPU ProgrammingRoland Bruggmann
 
Visualisierung von Algorithmen und Datenstrukturen
Visualisierung von Algorithmen und DatenstrukturenVisualisierung von Algorithmen und Datenstrukturen
Visualisierung von Algorithmen und DatenstrukturenRoland Bruggmann
 
User-centered Design für Telemedizin-App
User-centered Design für Telemedizin-AppUser-centered Design für Telemedizin-App
User-centered Design für Telemedizin-AppRoland Bruggmann
 
TOGAF Architecture Content Framework
TOGAF Architecture Content FrameworkTOGAF Architecture Content Framework
TOGAF Architecture Content FrameworkRoland Bruggmann
 
Hinderniserkennung mit LiDAR
Hinderniserkennung mit LiDARHinderniserkennung mit LiDAR
Hinderniserkennung mit LiDARRoland Bruggmann
 
TOGAF Architecture Content Framework
TOGAF Architecture Content FrameworkTOGAF Architecture Content Framework
TOGAF Architecture Content FrameworkRoland Bruggmann
 

Mehr von Roland Bruggmann (20)

Fingerprint Analysis – Preprocessing and Feature Extraction
Fingerprint Analysis – Preprocessing and Feature ExtractionFingerprint Analysis – Preprocessing and Feature Extraction
Fingerprint Analysis – Preprocessing and Feature Extraction
 
Unreal Engine IoT Project: Heartbeat
Unreal Engine IoT Project: HeartbeatUnreal Engine IoT Project: Heartbeat
Unreal Engine IoT Project: Heartbeat
 
3D Content for Dream-like VR
3D Content for Dream-like VR3D Content for Dream-like VR
3D Content for Dream-like VR
 
OSG Volume Rendering - Presentation
OSG Volume Rendering - PresentationOSG Volume Rendering - Presentation
OSG Volume Rendering - Presentation
 
Swiss National Supercomputing Centre CSCS
Swiss National Supercomputing Centre CSCSSwiss National Supercomputing Centre CSCS
Swiss National Supercomputing Centre CSCS
 
Sprechen als Handeln
Sprechen als HandelnSprechen als Handeln
Sprechen als Handeln
 
Numerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und IntegrationNumerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und Integration
 
Multicore and GPU Programming
Multicore and GPU ProgrammingMulticore and GPU Programming
Multicore and GPU Programming
 
Quadriken im Raum
Quadriken im RaumQuadriken im Raum
Quadriken im Raum
 
Visualisierung von Algorithmen und Datenstrukturen
Visualisierung von Algorithmen und DatenstrukturenVisualisierung von Algorithmen und Datenstrukturen
Visualisierung von Algorithmen und Datenstrukturen
 
User-centered Design für Telemedizin-App
User-centered Design für Telemedizin-AppUser-centered Design für Telemedizin-App
User-centered Design für Telemedizin-App
 
Ondes stationnaires
Ondes stationnairesOndes stationnaires
Ondes stationnaires
 
Passwords Safe
Passwords SafePasswords Safe
Passwords Safe
 
Stehende Wellen
Stehende WellenStehende Wellen
Stehende Wellen
 
TOGAF Architecture Content Framework
TOGAF Architecture Content FrameworkTOGAF Architecture Content Framework
TOGAF Architecture Content Framework
 
Cultural Dimensions
Cultural DimensionsCultural Dimensions
Cultural Dimensions
 
Hinderniserkennung mit LiDAR
Hinderniserkennung mit LiDARHinderniserkennung mit LiDAR
Hinderniserkennung mit LiDAR
 
Quadriken im Raum
Quadriken im RaumQuadriken im Raum
Quadriken im Raum
 
TOGAF Architecture Content Framework
TOGAF Architecture Content FrameworkTOGAF Architecture Content Framework
TOGAF Architecture Content Framework
 
Unity® Volume Rendering
Unity® Volume RenderingUnity® Volume Rendering
Unity® Volume Rendering
 

Unity® Volume Rendering - Abstract

  • 1. 1 Berner Fachhochschule | Haute école spécialisée bernoise | Bern University of Applied Sciences  2016  book.bfh.ch Unity® Volume Rendering – Plug-in zum Rendern von medizinischen Daten Studiengang: BSc in Informatik | Vertiefung: Computer Perception and Virtual Reality Betreuer: Prof. Dr. Urs Künzler Experte: Dr. Federico Flückiger (Eidg. Finanzdepartement EFD) Das cpvrLab am Institute for Human Centered Engineering HuCE hat ein Cave Automatic Virtual Environment (CAVE) in Betrieb. Zum Synthetisie- ren der 3D-Welt wird die Unity Game Engine eingesetzt. Ein Plug-in ermög- licht nun das Rendern von medizinischen Daten als Volumengrafik. Die Berechnung erfolgt mit Shader-Programmen auf den Grafikprozessoren. Ausgangslage Für die ärztliche Diagnose und Therapie kommen heutzutage computergestützte Verfahren zur Anwen- dung. Medizinische Bilddaten werden per Computerto- mograph (CT) aquiriert und in einer Bildanalyse auf- bereitet. Solche Volumengrafiken eignen sich auch für die Wissensbildung. Dazu hat das cpvrLab ein CAVE in Betrieb. Das System wird u.a. zur Simulation von Ope- rationssaal-Workflows eingesetzt. Seit Februar 2016 werden die Stereobilder im CAVE mit der Game-Engi- ne von Unity Technologies gerendert. In der Trainings- umgebung sollen nun auch medizinische Bilddaten eingebunden werden. Konzept Mit Unity soll ein Plug-in für das Direct Volume Rend- ering entwickelt werden. Dabei soll die Rechenkapa­ zität der Grafikprozessoren genutzt werden, indem das Rendern mit Shader-Programmen erfolgt. Aus CT-Daten soll mit einer Sichtstrahl-Methode eine Volu- mengrafik berechnet werden. Die Kolorierung soll mit einer Transferfunktion (TF) erfolgen. Resultat Im Unity-Editor kann über Menü-Einträge auf die Funktionalität des Plug-ins zugegriffen werden. Es ermöglicht den Import von Bildinformation aus ­DICOM-Daten. Die Metadaten werden als JSON-Datei angelegt, aus den Bildinformationen wird eine 3D-Tex- tur erstellt. Mit dem Plug-in kann ein Game-Objekt ‹Volume› er- stellt werden, welches einen Volume-Filter enthält. Der Filter liest die JSON-Datei und weist die 3D-Textur dem Shader-Programm zu. Als weiteres untergeordnetes Game-Objekt wird eine Region of Interest (ROI) erstellt. Mit dieser kann der zu rendernde Bereich manuell editiert und einge- schränkt werden. Die ROI hält zudem die Renderer- Komponente mit einem Material als Transferfunktion (TF). Im Material kann der Typ der Transferfunktion gewählt werden. Das Plug-in hält eine Lookup-Tabelle, eine Lis- te von editierbaren Farben oder aber eine gradienten- basierte Transferfunktion bereit. Die Rendermethode – ein Raycaster – wurde als Pixel- Shader in Cg implementiert. Dieser traversiert das ­Volumen und appliziert die Transferfunktion. Dabei dient der Grauwert eines CT-Pixels als Skalar für das Zuweisen eines Farbwertes an die Volumengrafik. Roland Bruggmann roland.bruggmann@gmx.net Ein 3D-Modell (CT-Daten) wird per Material (TF) vom Shader (Raycaster) zur Volumengrafik gerendert Ein CT-Datensatz von VTK gerendert als Volumengrafik mit dem Unity Volume Rendering Plug-in