Accélération du Rendu Volumique basée sur la Quantification des Voxels Nicolas CORTEZ Carine MODOLO
Les points abordés: Qu’est-ce que le rendu volumique? L’existant et ses lacunes… Une solution pour l’accélération du rendu volumique: la quantification des voxels. Comparaison avec les autres techniques.
Le rendu volumique (1/2) Assez récent But: visualiser des objets 3D volumiques Hardware / Software Algorithmes basés image / objet
Le rendu volumique (2/2) Algorithmes basés image : + accès simple et rapide aux données un même voxel peut être parcouru aucune ou plusieurs fois Algorithmes basés objets : + les voxels sont parcourus une et une seule fois fort coût de calcul lors du processus de projection
L’existant et ses lacunes… " shear-warp " " splatting " … Spécificités matérielles Saturation de la bande passante de la mémoire Coût de l’étape de projection des voxels
Quantification des voxels (1/2) Principe de base: Utilisation de tables de données prétraitées Que signifie « quantifier un voxel »? L’étape de projection…
Quantification des voxels (2/2) Accélération de l’étape de projection: Restriction à une projection orthographique Regroupement des voxels en classes avec un minimum d’erreurs Pré-traitement possible des voxels quantifiés
Projection des voxels (1/4) projection d’un voxel = copie translatée d’une forme hexagonale
Projection des voxels (2/4) Mise en œuvre de l’algorithme (1/2): La projection du centre du voxel donne des informations sur les translations nécessaires Création d’une liste de pixels Le centre C ne tombe pas forcément sur un pixel
Projection des voxels (3/4) Mise en œuvre de l’algorithme (2/2): Pré-calcul d’un tableau pour chaque case de la grille Pré-calcul de la projection des vecteurs unitaires de déplacement
Projection des voxels (4/4) Optimisations pour l’implémentation : But: temps réel Diminuer la taille des tables pour les faire rentrer dans le cache Optimiser l’adressage mémoire
Application au Splatting Adaptation du principe de l’algorithme précédent à la technique du « splatting » Amélioration des temps d’exécution rendu interactif
Accélération du rendu volumique avec des voxels quantifiés Comparaison avec le splatting: quantification des voxels avant la phase de projection (0.95 sec) splatting (3.6 sec)
Visualisation d’Isosurfaces avec des Cubes Paramétriques (1/5) Continuité C1 au niveau des surfaces Meilleure qualité de rendu Conservation d’un rendu interactif
Visualisation d’Isosurfaces avec des Cubes Paramétriques (2/5) Une idée du principe en 1D:
Visualisation d’Isosurfaces avec des Cubes Paramétriques (3/5) Le principe: Définition d’une fonction paramétrique pour chaque voxel que l’on souhaite traiter: « cube paramétrique » Application de cette fonction sur les pixels de l’image 2D
Visualisation d’Isosurfaces avec des Cubes Paramétriques (4/5) Utilisation d’un Min-Max Octree: Recherche accélérée d’isosurfaces Chaque case de l’octree contient une valeur min et une valeur max pour la zone de voxels qu’elle contient
Visualisation d’Isosurfaces avec des Cubes Paramétriques (5/5) Quelques résultats expérimentaux (1/3): idéal cubes paramétriques lancé de rayons
Visualisation d’Isosurfaces avec des Cubes Paramétriques (5/5) Quelques résultats expérimentaux (2/3): cubes paramétriques lancé de rayons
Visualisation d’Isosurfaces avec des Cubes Paramétriques (5/5) Quelques résultats expérimentaux (3/3): cubes paramétriques lancé de rayons
Conclusion Effectuer une quantification avant l’étape de projection permet un gain de temps de rendu non négligeable. L’utilisation de cubes paramétriques permet en plus d’améliorer la qualité des images générées.
Bibliographie Accelerating Volume Rendering With Quantized Voxels (2000) Visualization of Isosurfaces with Parametric Cubes (2001) (B. Mora, J.P. Jessel, R. Caubet, Institut de Recherche en Informatique de Toulouse IRIT)