RayCasting Beispielbeschreibung Author: Balazs LICHTL, MatrNr.: 9625772, WS 2000 |
||
Bei diesem Beispiel hendelt es sich um die Implementierung eines RayCasting Algoritmus, genauer, um das Volume Rendering eines CT-Ddatensatzes. Dabei soll das Bild mit Phond Shading verfeinert werden. QuickStart: Einfach das Programm Starten, ein Datensatz laden, und auf Preview drücken. Mit der Voreinstellung der Parameter sollte auf jeden Fall etwas sinnvolles hearauskommen. Nacher kann man mit leichter Veränderung der Parameter das Bild verändern. |
||
Das Programm besteht aus einer einzigen Win32 executable. Nach dem Starten ist man dierekt mit dem Hauptfenster konfrontiert, wo man folgende Möglichkeiten hat:
Transferfunktionen: Wenn man auf Preview oder Render drückt, und noch kein Transfer berechnet wurde, wird es vor der eigendlichen Rendering berechnet. Später, wenn man die Einstellungen für die Transferfunktionen ändert, muss man extra den Button "Transfer Neu Berechnen" drücken, damit es neu berechnet wird. Erwiterte optionen: Hier kann man die detailiertere Einstellungen vornehmen:
Zum Download des Programmes gibt es diese möglichkeit. Weiters braucht man dazu ein CT-Datenstatz im richtigen Format: "16 Bit pro Datenwert (aber nur 12 Bit in Verwendung). Das Datenformat besteht aus 6 Byte header (read xDim; read yDim; read zDim; - jeweils 2 Byte) und den Daten (for z = 1 to zDim; for y = 1 to yDim; for x = 1 to xDim; read data[x][y][z]; done; done; done; - jeweils 2 Byte, aber nur 12 Bit verwendet)." So ein Datensatz ist z.B. diese, der auch für das Erstellen der Beispielbilder verwendet wurde. Viel Spass beim Ausprobieren. Technische Details: Beim Rendering wird das Bildfläche von links oben nach rechts unten zeilenweise abgetastet, und für jedes Punkt ein Strahl in die Z Richtung gelegt. Entlang dieses Strahles werden von vorne nach hinten samples genommen (Auflösung ist ein pixel). Abgebrochen wird das verfahren dann, wenn man ganz hinten im abtastbereich angelangt ist, oder wegen der zu kleinen Restdurchsichtigkeit (ist 0.008) nicht mehr weitergegangen werden muss. Die so genommenen Samples werden dann mit dem Ausgewählten Shading belegt, und zu einen Color für das jeweilige Punkt aufsummiert. Im Preview Methode passiert exakt das selbe, mit einer in jede Richtung halbierter Auflösung, und einen gröberen abbruchbedingung für die Durchsichtigkeit (0.05). |
||
Im Folgenden sind 3 Beispielbilder, die mit dem Programm erzeugt wurden, zu finden: |
||
|
||
Letze Anderung: 04.11.00. |