SlideShare a Scribd company logo
1 of 31
Direct Volume Rendering
                Giuseppe Frattura
                    N97/110
Volume Rendering
• Il Volume Rendering è un insieme di tecniche
  della computer grafica atte a mostrare una
  proiezione 2D di un dataset 3D.
• Un tipico esempio di 3D Dataset è un insieme
  di immagini, prese da una risonanza
  magnetica.
• Il termine voxel denota un singolo elemento
  del volume, come un pixel per un immagine in
  2D


• Indirect Volume Rendering
• Direct Volume Rendering
Indirect Volume
Rendering
Adatta primitive geometriche all’interno dei dati,
  poi effettua il render:
• Marching Cubes
• Surface Tracking
• Fourier Trasform Rendering


Metodo veloce ma di scarsa qualità


Non è conveniente rappresentare fuoco o
 nuvole
Direct Volume
    Rendering
•
    Realizza un proiezione dell’intero volume dei
    dati, assegnando trasparenza e colore a
    ciascun voxel (tutti)
•
    Il colore e la trasparenza a ciascun voxel si
    assegna mediante una funzione di
    trasferimento che mappa l’intensità di ciascun
    voxel in un valore di RGBA.
DVR: formulazione intuitiva del
problema

L’idea è quella di
imitare la supervista
di Superman in
modo da poter avere
una visione semplice
e comprensibile
dell’interno di un
volume
DVR: Applicazioni


Tac – Tomografia assiale computerizzata
•



Risonanza magnetica
•



Ultrasuoni
•



Simulazioni di Fluidodinamica
•



Pressione
•



Porosità
•
Funzione di
Trasferimento
Assegna ad ogni
voxel dei valori RGB
ed un valore Alpha
(trasparenza)

Si calcola poi il
gradiente/normale
per applicare
l’illuminazione
Direct Volume Rendering:
Tecniche

 Splatting
 Texture Mapping
 Shear Warp
 Volume Ray Casting
Splatting
Tecnica molto semplice, veloce ma
poco accurata. Ogni Voxel del volume
è “splatted like a snow ball”
(Lee Westover), lanciato come una
palla di neve, sul piano immagine,
ottenendo dei dischi
Quando due dischi si intersecano i loro
colori sono interpolati
Texture Mapping
Descritta da Bill Hibbard e Dave
Santek
Ottimizzato per schede grafiche 3D
Le singole Slice sono allineate con il
volume e renderizzate ad una
angolazione scelta dal visualizzatore
Interpolazione dei valori tra slices
causa overhead
2D Texture Mapping
Slices parallele agli assi
Seleziona il miglior allineamento
Può produrre artefatti
3D Texture Mapping

Usa un reticolo di slices
Costo computazionale alto, ma ottimizzabile via
GPU
L’intero dataset deve essere al’interno della
memoria della GPU
Risoluzione limitata a quella della GPU
(problematico per schede video datate)
Shear Warp
             1. Transforma i dati del volume
                all’interno dello spazio tagliato
                ottenuto traslando ogni fetta del
                volume. Le immagini in 2D che
                compongono il volume vengono
                scalate per poter effettuare le
                trasformazioni prospettiche.
             2. Unisce le slices in ordine front-to-
                back. Da questo step si ottiene un
                immagine 2D intermedia in quanto
                è distorta.
             3. Transforma l’immagine distorta
                nell’immagine finale tramite il
                warping.
Volume Ray Casting

4 Step
Ray Casting
Sampling
Shading
Compositing
Ray
Casting
Parte un raggio da ogni pixel del piano
immagine ed attraversa il volume
dell’oggetto da renderizzare.


Samplin
g
Esegue un campionamento dei valori
ad ogni intervallo del raggio che
attraverso il volume.
Shading
Per ogni valore campionato viene
calcolato il colore e la trasparenza ed il
gradiente in base anche alla posizione
della camera e della luce.


Compositin
g
Dopo aver illuminato tutti
i punti campione, essi
vengono composti per
avere il colore finale del
pixel
Volume Ray Casting :
    Miglioramenti
•
    Parallelismo via GPU
    -Problema della gestione della memoria

•
    Trovare la fine del raggio
    -Variazione di colore molto alta

•
    DownScaling dell’immagine
•
    Saltare le zone trasparenti /
    invisibili
Mipmapping
       Conservare
       varie copie del
       volume con
       risoluzione
       diversa.

       Grande spreco
       di memoria
DVR: Artefatti
Una causa di artefatti
è il basso sampling
rate

Aumentare il
sampling rate,
sampling rate
adattivo

Utilizzo di un filtro bi-
cubico
Risultato
DVR: Artefatti 2
                Artefatti Shading:
Dovuti alla pre-computazione del gradiente o
al’interpolazione
Soluzione: Calcolare il gradiente al momento,
costo del calcolo maggiore
SPVOLREN
A simple and flexible Volume render
Framework for Graphics-hardware-based
Raycasting
Applicativo scritto in C++ Permette di caricare il
con OpenGL Shading         modello 3D e di
Languages                  visualizzarlo con I diversi
                           settaggi di
                           rappresentazione delle
                           superfici
Peter Triers Volume Ray Casting in
CG

•
    Applicativo scritto in C
•
    Costruito come esempio, non da la possibilità di
    caricare dati diversi da quelli di default
•
    Possibile modificare il valore di Sampling,
    aumentando o diminuendo lo STEPSIZE di
    campionamento
Esempio di Peter
    Triers
Software

OsiriX
Vaa3D
ImageVis3D
Osirix

Uno dei software più
performanti in commercio
Versione per iPhone/iPad
Esclusiva Apple, versione a
64bit a pagamento
Vaa3D
     3D Visualization-Assisted Analysis
OpenSource,
Multipiattaforma
Render 5D Spazio-
Temporali
ImageVis3D


Multipiattaforma

Disponibile per iPhone

Open Source

Sviluppato
dall’università dello
Utah
Il Raycasting nei
     Videogiochi



•
    Il ray casting è parte del
    Volume Ray Casting.
•
    Usato anche nei giochi per
    rappresentazione di fumo,
    esplosioni e nuvole.
•
    Usato per la prima volta su
    wolfstein 3D idSoftware
Programmare la GPU
Vertex Shader e
Fragment shader
sono
programmabili a
basso livello con
codice assembler
ad alto livello con
codice:
•GLSL (OpenGL)
•CG (NVidia)
•HLSL (Direct X)
DVR: SVILUPPI FUTURI
•
    È possibile eseguire il Direct Volume Rendering
    anche via Browser Web tramite le API WebGL e
    l‘HTML5
•
    http://demos.vicomtech.org/volren/

More Related Content

Similar to Direct volume rendering pres

Le immagini digitali ema olly
Le immagini digitali ema ollyLe immagini digitali ema olly
Le immagini digitali ema ollyema_cr
 
Lezione2
Lezione2Lezione2
Lezione2irea
 
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...Antonio Tandoi
 
Come usare e ottimizzare le immagini per il web
Come usare e ottimizzare le immagini per il webCome usare e ottimizzare le immagini per il web
Come usare e ottimizzare le immagini per il webSiteGround.com
 
Vsnb 3000 p-ok
Vsnb 3000 p-okVsnb 3000 p-ok
Vsnb 3000 p-okGpsLazio
 
Vscc b5313 p
Vscc b5313 pVscc b5313 p
Vscc b5313 pGpsLazio
 
Vscc b5313 p
Vscc b5313 pVscc b5313 p
Vscc b5313 pGpsLazio
 
Vsnb 5000 p-ok
Vsnb 5000 p-okVsnb 5000 p-ok
Vsnb 5000 p-okGpsLazio
 
Thesis Ardemagni Sangalli Slide It
Thesis Ardemagni Sangalli Slide ItThesis Ardemagni Sangalli Slide It
Thesis Ardemagni Sangalli Slide ItMarco Santambrogio
 
L'occhio del biologo: elementi di fotografia
L'occhio del biologo: elementi di fotografiaL'occhio del biologo: elementi di fotografia
L'occhio del biologo: elementi di fotografiaMarco Benini
 
BARCAMP '10
BARCAMP '10BARCAMP '10
BARCAMP '10iuav
 
Barcamp - tema proposto -
Barcamp - tema proposto -Barcamp - tema proposto -
Barcamp - tema proposto -iuav
 
3D SCANNING di Barbetta Marco mat. 269445
3D SCANNING di Barbetta Marco mat. 2694453D SCANNING di Barbetta Marco mat. 269445
3D SCANNING di Barbetta Marco mat. 269445guest5e80c0
 
Barcamp -
Barcamp - Barcamp -
Barcamp - iuav
 
Linee Guida Per La Gestione Dei Profili Colore
Linee Guida Per La Gestione Dei Profili ColoreLinee Guida Per La Gestione Dei Profili Colore
Linee Guida Per La Gestione Dei Profili ColoreDigital & Textile Expert
 

Similar to Direct volume rendering pres (20)

Informazioni sui
Informazioni sui Informazioni sui
Informazioni sui
 
Remote Sensing
Remote SensingRemote Sensing
Remote Sensing
 
Le immagini digitali ema olly
Le immagini digitali ema ollyLe immagini digitali ema olly
Le immagini digitali ema olly
 
La Prestampa Digitale
La Prestampa DigitaleLa Prestampa Digitale
La Prestampa Digitale
 
Corso base 02
Corso base 02Corso base 02
Corso base 02
 
Lezione2
Lezione2Lezione2
Lezione2
 
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
 
Come usare e ottimizzare le immagini per il web
Come usare e ottimizzare le immagini per il webCome usare e ottimizzare le immagini per il web
Come usare e ottimizzare le immagini per il web
 
Vsnb 3000 p-ok
Vsnb 3000 p-okVsnb 3000 p-ok
Vsnb 3000 p-ok
 
Vscc b5313 p
Vscc b5313 pVscc b5313 p
Vscc b5313 p
 
Vscc b5313 p
Vscc b5313 pVscc b5313 p
Vscc b5313 p
 
Vsnb 5000 p-ok
Vsnb 5000 p-okVsnb 5000 p-ok
Vsnb 5000 p-ok
 
Thesis Ardemagni Sangalli Slide It
Thesis Ardemagni Sangalli Slide ItThesis Ardemagni Sangalli Slide It
Thesis Ardemagni Sangalli Slide It
 
L'occhio del biologo: elementi di fotografia
L'occhio del biologo: elementi di fotografiaL'occhio del biologo: elementi di fotografia
L'occhio del biologo: elementi di fotografia
 
BARCAMP '10
BARCAMP '10BARCAMP '10
BARCAMP '10
 
Barcamp - tema proposto -
Barcamp - tema proposto -Barcamp - tema proposto -
Barcamp - tema proposto -
 
3D SCANNING di Barbetta Marco mat. 269445
3D SCANNING di Barbetta Marco mat. 2694453D SCANNING di Barbetta Marco mat. 269445
3D SCANNING di Barbetta Marco mat. 269445
 
Barcamp -
Barcamp - Barcamp -
Barcamp -
 
Linee Guida Per La Gestione Dei Profili Colore
Linee Guida Per La Gestione Dei Profili ColoreLinee Guida Per La Gestione Dei Profili Colore
Linee Guida Per La Gestione Dei Profili Colore
 
Videosorveglianza
VideosorveglianzaVideosorveglianza
Videosorveglianza
 

Direct volume rendering pres

  • 1. Direct Volume Rendering Giuseppe Frattura N97/110
  • 2. Volume Rendering • Il Volume Rendering è un insieme di tecniche della computer grafica atte a mostrare una proiezione 2D di un dataset 3D. • Un tipico esempio di 3D Dataset è un insieme di immagini, prese da una risonanza magnetica. • Il termine voxel denota un singolo elemento del volume, come un pixel per un immagine in 2D • Indirect Volume Rendering • Direct Volume Rendering
  • 3. Indirect Volume Rendering Adatta primitive geometriche all’interno dei dati, poi effettua il render: • Marching Cubes • Surface Tracking • Fourier Trasform Rendering Metodo veloce ma di scarsa qualità Non è conveniente rappresentare fuoco o nuvole
  • 4. Direct Volume Rendering • Realizza un proiezione dell’intero volume dei dati, assegnando trasparenza e colore a ciascun voxel (tutti) • Il colore e la trasparenza a ciascun voxel si assegna mediante una funzione di trasferimento che mappa l’intensità di ciascun voxel in un valore di RGBA.
  • 5. DVR: formulazione intuitiva del problema L’idea è quella di imitare la supervista di Superman in modo da poter avere una visione semplice e comprensibile dell’interno di un volume
  • 6. DVR: Applicazioni Tac – Tomografia assiale computerizzata • Risonanza magnetica • Ultrasuoni • Simulazioni di Fluidodinamica • Pressione • Porosità •
  • 7. Funzione di Trasferimento Assegna ad ogni voxel dei valori RGB ed un valore Alpha (trasparenza) Si calcola poi il gradiente/normale per applicare l’illuminazione
  • 8. Direct Volume Rendering: Tecniche Splatting Texture Mapping Shear Warp Volume Ray Casting
  • 9. Splatting Tecnica molto semplice, veloce ma poco accurata. Ogni Voxel del volume è “splatted like a snow ball” (Lee Westover), lanciato come una palla di neve, sul piano immagine, ottenendo dei dischi Quando due dischi si intersecano i loro colori sono interpolati
  • 10. Texture Mapping Descritta da Bill Hibbard e Dave Santek Ottimizzato per schede grafiche 3D Le singole Slice sono allineate con il volume e renderizzate ad una angolazione scelta dal visualizzatore Interpolazione dei valori tra slices causa overhead
  • 11. 2D Texture Mapping Slices parallele agli assi Seleziona il miglior allineamento Può produrre artefatti
  • 12. 3D Texture Mapping Usa un reticolo di slices Costo computazionale alto, ma ottimizzabile via GPU L’intero dataset deve essere al’interno della memoria della GPU Risoluzione limitata a quella della GPU (problematico per schede video datate)
  • 13. Shear Warp 1. Transforma i dati del volume all’interno dello spazio tagliato ottenuto traslando ogni fetta del volume. Le immagini in 2D che compongono il volume vengono scalate per poter effettuare le trasformazioni prospettiche. 2. Unisce le slices in ordine front-to- back. Da questo step si ottiene un immagine 2D intermedia in quanto è distorta. 3. Transforma l’immagine distorta nell’immagine finale tramite il warping.
  • 14. Volume Ray Casting 4 Step Ray Casting Sampling Shading Compositing
  • 15. Ray Casting Parte un raggio da ogni pixel del piano immagine ed attraversa il volume dell’oggetto da renderizzare. Samplin g Esegue un campionamento dei valori ad ogni intervallo del raggio che attraverso il volume.
  • 16. Shading Per ogni valore campionato viene calcolato il colore e la trasparenza ed il gradiente in base anche alla posizione della camera e della luce. Compositin g Dopo aver illuminato tutti i punti campione, essi vengono composti per avere il colore finale del pixel
  • 17. Volume Ray Casting : Miglioramenti • Parallelismo via GPU -Problema della gestione della memoria • Trovare la fine del raggio -Variazione di colore molto alta • DownScaling dell’immagine • Saltare le zone trasparenti / invisibili
  • 18. Mipmapping Conservare varie copie del volume con risoluzione diversa. Grande spreco di memoria
  • 19. DVR: Artefatti Una causa di artefatti è il basso sampling rate Aumentare il sampling rate, sampling rate adattivo Utilizzo di un filtro bi- cubico
  • 21. DVR: Artefatti 2 Artefatti Shading: Dovuti alla pre-computazione del gradiente o al’interpolazione Soluzione: Calcolare il gradiente al momento, costo del calcolo maggiore
  • 22. SPVOLREN A simple and flexible Volume render Framework for Graphics-hardware-based Raycasting Applicativo scritto in C++ Permette di caricare il con OpenGL Shading modello 3D e di Languages visualizzarlo con I diversi settaggi di rappresentazione delle superfici
  • 23. Peter Triers Volume Ray Casting in CG • Applicativo scritto in C • Costruito come esempio, non da la possibilità di caricare dati diversi da quelli di default • Possibile modificare il valore di Sampling, aumentando o diminuendo lo STEPSIZE di campionamento
  • 26. Osirix Uno dei software più performanti in commercio Versione per iPhone/iPad Esclusiva Apple, versione a 64bit a pagamento
  • 27. Vaa3D 3D Visualization-Assisted Analysis OpenSource, Multipiattaforma Render 5D Spazio- Temporali
  • 28. ImageVis3D Multipiattaforma Disponibile per iPhone Open Source Sviluppato dall’università dello Utah
  • 29. Il Raycasting nei Videogiochi • Il ray casting è parte del Volume Ray Casting. • Usato anche nei giochi per rappresentazione di fumo, esplosioni e nuvole. • Usato per la prima volta su wolfstein 3D idSoftware
  • 30. Programmare la GPU Vertex Shader e Fragment shader sono programmabili a basso livello con codice assembler ad alto livello con codice: •GLSL (OpenGL) •CG (NVidia) •HLSL (Direct X)
  • 31. DVR: SVILUPPI FUTURI • È possibile eseguire il Direct Volume Rendering anche via Browser Web tramite le API WebGL e l‘HTML5 • http://demos.vicomtech.org/volren/

Editor's Notes

  1. artefatti
  2. Inserire la funzione