Rendering Volumétrico basado en Mecanismos de Manejo de Texturas

Ciro Durán <ciro (arroba) ldc (punto) usb (punto) ve>
Francisco Morillo <francisco (arroba) ldc (punto) usb (punto) ve>

Actual screenshot

Contenido


Resumen

Rendering Volumétrico (VR por sus siglas en inglés) es una técnica para hacer proyecciones bidimensionales a partir de datos tridimensionales discretos. Las aplicaciones principales de esta técnica está en la visualización de datos médicos, geológicos o como medio para hacer representaciones de dinámica de fluidos.

Este proyecto de grado tiene por objetivo evaluar la manera que el hardware gráfico convencional puede ser utilizado para lograr visualizaciones de buena calidad y alto desempeño. Si se observa VR como un proceso físico, simula el comportamiento de la luz al atravesar un medio semitransparente que involucra una evaluación costosa en tiempo y espacio. Nuevos enfoques en este problema tratan de acelerar la simulación al tener trozos del proceso pre-calculados.

La meta de este trabajo fue la implementación y evaluación de diversas técnicas de VR directo (ray casting y basado en el uso de texturas), as´ı como la implementación de los trabajos de Westermann & Sevenich y Engel, Kraus & Ertl. Estos últimos dos trabajos se enfocan en el uso de
mecanismos de manejo de texturas y pre-cálculos de la integral de VR (pre-integración) para lograr resultados con alta calidad y rapidez que pueden competir junto a otras técnicas más refinadas de mayor complejidad.

Para tener un punto de referencia en cuanto a desempeño y calidad se evaluaron las técnicas de VR directo implementadas usando técnicas avanzadas de OpenGL y Cg (C para gráficos). Finalmente se realizaron pruebas para comparar la calidad y desempeño de ambos tipos de técnicas y se contrastó contra los resultados publicados. Los resultados muestran que la visualización de datos usando VR sobre hardware gráfico convencional es viable en tiempo real.

[Top]


Gallería

Screenshots finales

Direct VR example

Ejemplo de VR directo

2D Object-Aligned Textures - Skull

2D Object-Aligned Textures - Skull

3D Object-Aligned Textures - Gray matter

3D Object-Aligned Textures - Gray matter

Engel, Kraus & Ertl implementation - Muscle and Skin

Engel, Kraus & Ertl implementation - Muscle and Skin

Engel, Kraus & Ertl implementation - Fat

Engel, Kraus & Ertl implementation - Fat

Engel, Kraus & Ertl implementation - Skull

Engel, Kraus & Ertl implementation - Skull

Multivolumes - 3 classes: Fat, Skull and Gray matter

Multivolumes - 3 classes: Fat, Skull and Gray matter

Multivolumes - 4 classes: Muscle and Skin, Skull, Fat, Gray matter

Multivolumes - 4 classes: Muscle and Skin, Skull, Fat, Gray matter

Multivolumes - 4 classes: Muscle and Skin, Skull, Fat, Gray matter. Other colors.

Multivolumes - 4 classes: Muscle and Skin, Skull, Fat, Gray matter. Other colors.

Multivolumes - 4 classes: Muscle and Skin, Skull, Fat, Gray matter. Other colors.

Multivolumes - 4 classes: Muscle and Skin, Skull, Fat, Gray matter. Other colors.

Software ray casting - Glial matter

Software ray casting - Glial matter

Software ray casting - Gray matter, Muscle and Skin, and White matter.

Software ray casting - Gray matter, Muscle and Skin, and White matter.

Westermann after ray casting - Skull

Westermann after ray casting - Skull

Westermann after ray casting - Muscle and Skin

Westermann after ray casting - Muscle and Skin

Differences between eye-aligned and object-aligned slices

Differences between eye-aligned and object-aligned slices

Volume and texture proportions

Volume and texture proportions

Westermann after ray casting - 2 classes: Gray matter and Fat.

Westermann after ray casting - 2 classes: Gray matter and Fat.

Demonstration of popping between 2 2D Texture sets

Demonstration of popping between 2 2D Texture sets

Texture overlapping demonstration

Texture overlapping demonstration

 

 

Primeros screenshots

Gray matter - Full opacity

Gray matter - Full opacity

Gray matter - Half opacity

Gray matter - Half opacity

Gray matter - Other material color

Gray matter - Other material color

Muscle and Skin - Full opacity

Muscle and Skin - Full opacity

Muscle and Skin - Half opacity

Muscle and Skin - Half opacity

Muscle and Skin - Almost no opacity

Muscle and Skin - Almost no opacity

Multiple volume software ray casting - Gray matter, Muscle and Skin

Multiple volume software ray casting - Gray matter, Muscle and Skin

 

 

Gráficas de resultados

Data dispersion graphic

Data dispersion

Data occupancy graphic

Data occupancy

2D Textures rotating - Zoom 1.0

2D Textures rotating - Zoom 1.0

2d Textures rotating - Zoom 2.0

2d Textures rotating - Zoom 2.0

3D Textures Object-Aligned rotating - Zoom 1.0

3D Textures Object-Aligned rotating - Zoom 1.0

3D Textures Object-Aligned rotating - Zoom 2.0

3D Textures Object-Aligned rotating - Zoom 2.0

3D Textures Eye-Aligned rotating - Zoom 1.0

3D Textures Eye-Aligned rotating - Zoom 1.0

3D Textures Eye-Aligned rotating - Zoom 2.0

Multitexture implementation

Multitexture implementation

Engel, Kraus & Ertl implementation

Engel, Kraus & Ertl implementation

Westermann & Sevenich implementation - Zoom 1.0

Westermann & Sevenich implementation - Zoom 1.0

Westermann & Sevenich implementation - Zoom 2.0

Westermann & Sevenich implementation - Zoom 2.0

 

[Top]


Presentaciones

[Top]


Bibliografía

[Top]


Back to my site

Tesis: Rendering Volumétrico basado en mecanismos de manejo de texturas
Autores: Ciro Durán <ciro (arroba) ldc (punto) usb (punto) ve>, Francisco Morillo <francisco (arroba) ldc (punto) usb (punto) ve>.
Fecha: 26 julio, 2006, 2:41 A.M.