Un voxel (volumetric picture element) è un'unità di misura del volume. Il voxel è la controparte tridimensionale del pixel (che è invece bidimensionale e rappresenta l'unità dell'area), perciò il volume buffer (un ampio array 3D di voxel) dei voxel può essere considerato come la controparte tridimensionale del frame buffer bidimensionale dei pixel.[1]
La grafica volumetrica è il settore della computer grafica che impiega il volume buffer per la rappresentazione delle scene e riguarda la sintesi, manipolazione, e il rendering di tali scene. La grafica volumetrica è la controparte tridimensionale della grafica raster.[2]
Aspetti teorici
Ogni voxel possiede valori numerici ad esso associati, che rappresentano alcune proprietà misurabili o variabili indipendenti (come colore, opacità, densità, materiale, proporzione di copertura, indice di rifrazione, velocità, forza, tempo[1]) del fenomeno reale o dell'oggetto che risiede nell'unità di volume rappresentata da quel voxel. L'aggregato dei voxel, che tassellano il volume buffer, forma il dataset volumetrico, che è rappresentato come una griglia tridimensionale regolare discreta;[1] questo è anche detto dato volumetrico[2]. La modellazione volumetrica è la sintesi, analisi, e manipolazione di oggetti campionati, calcolati e sintetici, contenuti entro un dataset volumetrico.[2]
Sono dunque possibili due interpretazioni del termine voxel, in base all'utilizzo:
un piccolo cubo (o parallelepipedo) con particolari proprietà in uno spazio più grande;
un punto (campione) in una griglia 3D ad intervalli regolari.
Il valore di un voxel può rappresentare svariate proprietà. I medici utilizzano gli scanner per l'imaging a risonanza magnetica e la tomografia computerizzata per ottenere dati tridimensionali degli organi interni di una persona.[2] Nella tomografia si ottengono porzioni dell'oggetto usando i raggi X. Vengono proiettati i raggi X attraverso il corpo e viene quindi misurata la loro intensità con rilevatori dall'altra parte del corpo. Il proiettore di raggi viene ruotato attorno al corpo e vengono prese le misure a centinaia di posizioni attorno al paziente. Il rendering volumetrico permette di visualizzare quei dati.
I voxel possono contenere più di un valore scalare; nel caso delle scansioni ad ultrasuoni in modo B e dati Doppler, la densità e la velocità del flusso vengono catturati come canali dati separati ma visualizzati nella stessa posizione voxel.
Visualizzazione
La visualizzazione volumetrica è un metodo di visualizzazione che riguarda la rappresentazione, manipolazione, e il rendering di dati volumetrici.[2] Un volume di dati rappresentato dai voxel può essere visualizzato in modo diretto dal rendering volumetrico[2] o attraverso l'estrazione di una isosuperficie poligonale, che separa una parte del volume attraverso l'identificazione di una opportuna soglia di intensità. L'algoritmo dei marching cubes è spesso usato a questo scopo.[2]
Mappe d'altezza
I voxel vengono utilizzati nelle cosiddette mappe d'altezza (height maps); queste sono matrici rettangolari che contengono i valori dell'altezza. Ad ogni elemento della matrice si può associare un voxel non cubico con altezza pari all'altezza definita dalla matrice e con base di grandezza fissa ed uguale per tutte le locazioni della matrice. Le mappe d'altezza contengono un singolo valore per ogni punto sulla griglia 2D, in questo modo si possono rappresentare superfici semplici ma non superfici complesse che si sovrappongano. Le mappe d'altezza son spesso utilizzate nelle applicazioni della realtà virtuale.
Note
^abc Arie Kaufman, Daniel Cohen, Roni Yagel, Volume Graphics (PDF). URL consultato il 5 giugno 2017 (archiviato dall'url originale il 19 giugno 2015).
^abcdefg Max K. Agoston, Computer Graphics & Geometric Modeling - Implementation & Algorithms, 2005.