#1 12.12.2005 11:42:02

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Volume Visualisation

Damit es hier mal wieder ein paar neue Bilder gibt hab ich beschlossen einige screenshots von meinem Visualisierungsprojekt das ich im Verlauf einer Übung an der Uni implementiert habe hier zu posten.
Real-time Version folgt in wenigen Wochen, ihr könnt sie dann auch gerne runterladen und damit experimentieren - Shader 3 Hardware ist dafür allerdings notwendig. Für die Softwareversion die ich inzwischen fertig habe braucht man hingegen keine besondere Hardware - falls jemand den Wunsch verspürt ein paar Bilder zu rendern kann er mich gerne wegen Demo + Datensätze kontaktieren.  smile

Um Coolcats Vorgaben für dieses Forum zu erfüllen:

1. Name: Volume Visualisation System
2. kurze Beschreibung: Das Teil ermöglicht die Visualisierung von volumetrischen Daten, zur Verfügung stehen mir im passenden Format ein Weihnachtsbaum (am AKH Wien in der Computertomographie gescannt), ein Schädel mit allem was dazu gehört, inklusive allem was so drinnen sein sollte *g*, ein Hummer und dann noch ein Tornado - mit dem hab ich selbst allerdings noch nicht experimentiert.

Einige screenshots folgen...


Attachments:
Attachment Icon 007.jpg, Größe: 66,665 bytes, Downloads: 670
Attachment Icon 004.jpg, Größe: 78,656 bytes, Downloads: 563
Attachment Icon 005.jpg, Größe: 63,978 bytes, Downloads: 514

Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#2 12.12.2005 11:44:38

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Volume Visualisation

weitere screenshots...

PS: ich weiss, ist nicht unbedingt ein Spiel - aber die Echtzeitimplementierung hat durchaus einiges an Anwendungspotential für Spiele, volumetrische Daten wird man je mehr shader 3 hardware es gibt wohl immer häufiger sehen.  smile
Abgesehn davon ists einfach cool einen Schädel zu visualisieren *g*

JorEl


Attachments:
Attachment Icon img03.jpg, Größe: 58,734 bytes, Downloads: 603
Attachment Icon img02.jpg, Größe: 62,025 bytes, Downloads: 614
Attachment Icon img00.jpg, Größe: 21,079 bytes, Downloads: 512

Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#3 12.12.2005 11:55:28

Coolcat
ProGuru
Ort: Aachen, NRW
Registriert: 24.01.2005
Beiträge: 2780
Web-Seite

Re: Volume Visualisation

cool! yikes  :p
Ich hab zwar leider keine Shader 3.0 Hardware, aber die Screens sind fett.
Warum ist der letzte irgendwie so verpixelt?

Coolcat


My software never has bugs. It just develops random features.

Offline

 

#4 12.12.2005 11:58:05

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Volume Visualisation

Zitat:

Ich hab zwar leider keine Shader 3.0 Hardware, aber die Screens sind fett.

Danke  smile

Zitat:

Warum ist der letzte irgendwie so verpixelt?

Weil es leider viel grösser dargestellt wird als gut ist *smiles* - das hab ich extrem klein gerendert weils nur als Logo für die Doku gedacht war. Das Board scheint aber die Bilder automatisch zu stretchen wenn nötig. Falls ich das entsprechende setup noch habe werde ich es in einer höheren Auflösung rendern und dann ersetzen.  smile


Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#5 12.12.2005 12:16:37

DerPeer
GodlikeMember
Ort: Berlin
Registriert: 04.02.2005
Beiträge: 1291

Re: Volume Visualisation

Sieht schick aus, aber etwas spät für Halloween  big_smile

Jetzt würde mich natürlich interessieren, was der Shader eigentlich macht!

Peer

Offline

 

#6 12.12.2005 12:26:35

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Volume Visualisation

Ok, hier mal die Korrektur vom letzten Screenshot (ist zwar nicht genau das selbe, aber es kommt von der Perspektive her hin. Opacity und Lighting unterscheiden sich geringfügig).

Zitat:

etwas spät für Halloween

Hey, besser spät als nie  big_smile
Ich hätte es wohl erst in 3 Wochen posten sollen, dann wäre ich statt zu spät zu früh dran gewesen  big_smile

Zitat:

Jetzt würde mich natürlich interessieren, was der Shader eigentlich macht!

Bei diesen screenshots - überhaupt nichts, denn das ist noch die software version. Ich hab inzwischen eine Shader 3 Version davon die mittlerweile auch schon rendern kann - allerdings ist die Transferfunktion nicht integriert und das lighting passt auch noch nicht. Aber es wird langsam.  smile

Ok, kurze Beschreibung was der Shader macht: es wird eine volumetrische Texture übergeben. Gerendert wird ein Quader der genau die Dimensionen des volumes hat. In einem ersten pass berechne ich mir für jeden pixel auf dem Bildschirm einen Richtungsvektor der angibt in welche Richtung man durch das volume tracen muss - dazu genügt schon shader 1.x hardware. Dann wird eben diese erzeugte direction texture übergeben und die front faces des Quaders werden erneut gerendert. Im Pixel shader trace ich dann mit Hilfe des gespeicherten Richtungsvektors durch das volume (also durch die volume texture) und berechne mir so die korrekte Farbe für den output - ist eigentlich ganz simpel vom Prinzip her.

Die direction texture selbst zu erzeugen ist ohnehin das simpelste überhaupt... man rendert erstmal die front faces des Würfels, dann in einem weiteren pass die backfaces und subtrahiert die beiden Farben voneinander - das ergibt einen Vektor mit korrekter Richtung und korrekter Länge. Wenn man den dann noch normalisiert und durch eine stepsize dividiert kann man beliebig genau durch das volume tracen in einer Schleife und somit ausgezeichnete Bilder in Echtzeit erzeugen. Problematisch ist lediglich, dass der HLSL compiler keine Schleifen der Form while(actpos < finalpos) do { actpos = actpos + stepvector; } zulässt... denn er fordert, dass es unter 1024 iterations sein müssen und zumindest die linke oder rechte seite in eine Konstante konvertiert werden kann. Werd mal versuchen das in assembler zu implementieren, sollte ein wenig flexibler sein - ich hoffe es jedenfalls. Sonst bleibt nämlich nur noch mehrere passes fürs volume rendering selbst zu verwenden, was aber auch kein allzu grosses Problem sein sollte.

JorEl


Attachments:
Attachment Icon 010.jpg, Größe: 59,299 bytes, Downloads: 666

Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#7 12.12.2005 15:21:28

artzuk
GodlikeMember
Ort: Leipzig
Registriert: 24.01.2005
Beiträge: 1164

Re: Volume Visualisation

Ich finds echt geil - sieht wirklich recht sehr cool aus  smile
Wieso sind die alle blau? Sieht geil aus, keine Frage, aber ich weis blos nicht gerade, warum blau  wink ... der eine rote Kopf sieht jedoch noch viel viel geiler aus  :mrgreen:


Mein kleiner .NET Blog: http://artzuk-interactive.de/

Offline

 

#8 12.12.2005 16:00:41

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Volume Visualisation

Zitat:

warum blau

Naja, eigentlich nur weils mir gefallen hat  big_smile
Prinzipiell kann man den densities beliebige Farben zuordnen, also man hat sehr viel Spielraum zum experimentieren. In der Farbe von dem roten Kopf werde ich wohl noch einen Querschnitt machen, also erst ab der Mitte rendern, damit man das Innere optimal sieht  big_smile


Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#9 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#10 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#11 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#12 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#13 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#14 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#15 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#16 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#17 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#18 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#19 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#20 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#21 26.12.2005 02:05:00

Guest
Gast

Re: Volume Visualisation

Wasn mitm Spielprojekt?   :?

Das ist doch eigentlich das interessantere!  :mrgreen:

 

#22 26.12.2005 18:49:15

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Volume Visualisation

Zitat:

Wasn mitm Spielprojekt?

Alles zu seiner Zeit  big_smile
Die ersten Screenshots folgen demnächst - und ja, die werden sicher interessanter sein  smile


Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#23 25.10.2006 09:50:05

DerPeer
GodlikeMember
Ort: Berlin
Registriert: 04.02.2005
Beiträge: 1291

Re: Volume Visualisation

Hast Du mal nen Download, wo man sich das mal angucken kann?

DerPeer

Offline

 

#24 25.10.2006 12:52:09

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Volume Visualisation

Download nicht, aber ich kann dir gerne mal eine Version mailen in der man mit dem grundliegenden Levoy raycasting experimentieren kann. Müsste jetzt mal versuchen das ganze mit dem D3D10 HLSL compiler zu machen, sollte um einiges effizienter werden wenn Konstruktionen wie while(a<b) im shader funktionieren.

JorEl


Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

Brett Fußzeile

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson