Rendu à base d'images

Les techniques de rendu à base d'images (IBR, ''Image-Based Rendering'') utilisent principalement des images comme primitives de rendu, c'est à dire que les informations contenues dans une image sont utilisées pour synthétiser de nouvelles images.

Le concept d'image a évolué graduellement. La texture, la plus simple des images (un tableau 2D de pixels, un pixel stockant une couleur) ne permet pas, quand elle est déformée, de prendre en compte les effets de parallaxe. Ces effets peuvent être pris en compte en ajoutant une profondeur à chaque pixel. Une telle image contenant couleurs et profondeurs est appelée image de profondeurs (depth image). Néanmoins, une seule image de profondeurs ne contient pas assez d'informations pour créer un nouveau point de vue : les effets de parallaxe génèrent, par exemple, l'apparition de certaines parties de la scène qui ne sont pas dans l'image de base (effets d'occlusion ou de masquage, voir figure 1.6). Pour prendre en compte ce problème, les images à plans de profondeurs (LDI, ''Layered Depth Images'') stockent par pixel, non plus simplement une couleur et une profondeur, mais une liste de couleurs et de profondeurs, c'est à dire un échantillonnage des parties cachées.

Figure 1.6: Illustration d'un effet de parallaxe : la désocclusion. L'image de référence utilisée pour afficher la scène selon un autre point de vue ne contient pas assez d'informations et des trous apparaissent dans l'image à l'endroit ou on devrait voir une partie de la scène.
\includegraphics[%
width=0.90\columnwidth,
keepaspectratio]{eps/ea-parallaxe.eps}

Ces trois types d'images : texture, image de profondeurs et image à plans de profondeurs constituent les primitives de base des techniques de rendu à base d'image, et sont résumée dans le tableau 1.1. Par la suite, nous utiliserons le terme de texel (Texture Element) pour désigner les données stockées dans une texture. Dans notre cas, il ne s'agit pas des Texels au sens des textures volumiques de Kajiya-Neyret [Ney95,KK89].

Tableau 1.1: Types d'images et leurs composantes : R=Rouge, V=Vert, B=Bleu, P=Profondeur.
Nom Données par pixel
Texture (R,V,B)
Image de profondeurs (R,V,B,P)
Image à plans de profondeurs (LDI) Liste de (R,V,B,P)


Les images de profondeurs peuvent être de deux types en fonction de ce que représente cette information de profondeur. Le premier type correspond au champ de hauteurs (Height Field) ou carte d'élévation, utilisé par exemple dans le placage de bosselures(Bump-mapping) et représentant un déplacement orthogonal à la surface, par pixel. Le second type d'image de profondeurs est le tampon de profondeurs (Z-Buffer), dont la profondeur représente la distance caméra/surface.

Dans le premier cas (figure 1.7, image de gauche), la hauteur représente la distance entre une surface de référence et la surface réelle, sous forme d'une élévation perpendiculaire à la normale au plan de référence. Par la suite nous dénommerons une telle image de profondeurs par le terme carte de hauteurs.

Dans le second cas (image de droite), la profondeur d'un pixel correspond à la distance entre le centre de projection de la caméra et la surface. Cette distance est la composante $ z$ de la coordonnée 3D d'un point dans l'espace de la caméra. L'image de profondeurs correspond au z-buffer de la scène et nous utiliserons le terme carte de profondeurs pour dénommer une telle image.

Figure 1.7: Les deux principaux types d'images de profondeur. A gauche : carte d'élévations. A droite : carte de profondeurs issue de la projection de la scène sur le plan de projection d'une caméra.
\includegraphics[%
width=0.70\columnwidth]{eps/ea-image_de_profondeurs.eps}

La façon dont sont utilisées ces informations permet de distinguer les algorithmes à base d'images. En effet, ils utilisent, déforment et combinent une ou plusieurs images selon différentes techniques qui vont du simple placage de texture au transfert épipolaire en passant par la déformation 3D ainsi que différentes méthodes d'interpolation. Dans cet état de l'art, nous détaillons ces techniques.

Les méthodes que nous allons décrire sont également caractérisées et différenciées par la façon dont il est fait usage des images :

  1. La scène finalement synthétisée peut être simplement composée en partie d'éléments obtenus à l'aide de techniques basées images, ou être intégralement obtenue à l'aide d'images. Dans le premier cas, il s'agit par exemple de techniques telles que les imposteurs ou les sprites (section 1.4.2).
  2. Les techniques de rendu basé image (IBR) peuvent être pures, c'est à dire n'utiliser que des images, ou être combinées avec les techniques de rendu standard, soit pour accélérer certaines techniques de rendu existantes, soit pour tirer parti des avantages des deux approches. Nous parlerons alors de techniques hybrides basées images / basées géométrie.
  3. Finalement, les techniques d'IBR peuvent être distinguées en fonction de la façon dont sont obtenues les images utilisées pour les calculs.

    1. Elles peuvent être pré-acquises (comme dans le cas d'images réelles, par exemple des photographies) ou précalculées (dans le cas d'images virtuelles).
    2. Les images peuvent également être calculées ''au vol'', dynamiquement, lors du rendu, en fonction des besoins.



Sous-sections
Porquet Damien 2005-03-02