• Aucun résultat trouvé

2.2 D´etection analytique de lignes caract´eristiques

2.2.3 Informations : visibilit´e

A ce stade de l’´etat de l’art, nous avons vu diverses techniques permettant d’extraire` d’une surface l’ensemble des segments 3D qui constituent les lignes caract´eristiques de cette surface, observ´ee sous un point de vue donn´e. Un certain nombre d’´etapes restent encore

`a franchir pour passer de cet ensemble de segments `a un rendu stylis´e qui donne l’illusion d’un dessin fait `a la main. En pratique, une certain nombre d’informations sont calcul´ees et associ´ees aux segments caract´eristiques ainsi d´etect´ees, au tout premier rang desquelles la plus commun´ement utilis´ee est l’information de visibilit´e. En effet, parmi ces segments, certains sont enti`erement ou partiellement invisibles sous le point de vue consid´er´e. Except´e dans des cas particuliers tels que l’illustration technique, ces parties cach´ees ne sont pas dessin´ees par un artiste. Il est donc essentiel d’ˆetre capable de calculer la visibilit´e de ces lignes caract´eristiques, c’est-`a-dire pour chaque point des lignes, de d´eterminer s’il est visible ou cach´e.

On distingue deux types d’approches :

Les approches exactes ces approches s’appuient sur des propri´et´es g´eom´etriques mettant en relation les surfaces et le point de vue pour identifier les points auxquels on observe des changements de visibilit´e. Une fois les lignes caract´eristiques segment´ees par la cr´eation de sommets en ces points, il ne reste plus qu’`a d´eterminer la visibilit´e de

2.2 D ´etection analytique de lignes caract ´eristiques 37 chaque segment de courbe. Ce dernier point peut, par exemple, ˆetre impl´ement´e `a l’aide d’une technique de lancer de rayons.

Les approches discr`etes Ces approches proc`edent `a une premi`ere passe de rendu de la sc`ene et utilisent l’image du Z-Buffer ainsi g´en´er´ee pour d´eterminer la visibilit´e en chaque point des lignes caract´eristiques.

Les approches exactes

L’´etude de la visibilit´e des lignes caract´eristiques selon l’approche exacte est li´ee aux travaux sur les graphes d’aspect [PD90b] dans lesquels on peut trouver une caract´erisation des ´el´ements g´eom´etriques jouant un rˆole dans les changements de visibilit´e observ´es sur les lignes. En pratique, ´etant donn´ee une ligne de nature quelconque, on peut observer un changement de visibilit´e aux points suivants :

Intersections en T. Ces points correspondent aux intersections (dans la plan image) des projections de la ligne `a tracer et d’une silhouette : potentiellement, le contour passe derri`ere un objet ou ressort de derri`ere un objet. (cf.figure 2.18 (a)).

Jonctions en Y. Ces points correspondent aux points 3D o`u une silhouette d´ebute (ou s’ach`eve) sur notre ligne. (cf.figure 2.18 (a)).

Points de rebroussement (Cusps en Anglais). Ils correspondent aux points de la sil-houette o`u sa tangente est colin´eaire `a la direction de vue. (cf.figure 2.18 (b)).

'

FIG. 2.18– Points de changement de visibilit´e : jonctions en T et en Y et cusps (a) Jonctions en T et en Y : Les points A, B, C et D sont des jonctions en T. Ils correspondent

`

a des intersections entre les projections d’une arˆete de silhouette et d’une autre arˆete. Les points E et F (en gris) sont des jonctions en Y. Ils correspondent `a des jonctions (en 3D) entre des arˆetes caract´eristiques et des arˆetes de silhouette. (b) : Points de rebroussement (cusps: les points A, B, C et D sont des points de rebroussement. Ils marquent des changements d’invisibilit´e quantitative (dont les valeurs sont indiqu´ees `a cˆot´e des arˆetes). Sur ces deux illustrations, les arˆetes visibles sont dessin´ees avec le poids le plus important, les arˆetes cach´ees par une seule surface sont dessin´ees avec un poids moyen et les arˆetes cach´ees par deux surfaces sont dessin´ees avec un poids faible.

C’est Appel [App67a] qui le premier utilise ces points pour d´eterminer la visibilit´e des lignes caract´eristiques. Il introduit, pour ce faire, l’invisibilit´e quantitative, qui donne, en

rebroussement, Appel ne les caract´erise pas encore et se limite aux intersections en T. Plutˆot que d’´evaluer l’invisibilit´e quantitative de chaque segment par un coˆuteux lancer de rayons, Appel montre qu’`a l’aide de propri´et´es g´eom´etriques simples, il est possible de connaˆıtre l’´evolution de l’invisibilit´e quantitative le long d’une ligne. En effet, grˆace `a l’orientation des faces il est possible de d´eterminer si la projection d’un point se trouve `a l’int´erieur ou `a l’ext´erieur de la projection d’une face ; Appel utilise cette propri´et´e pour savoir si une ligne passe derri`ere une face ou en ressort. L’algorithme consiste alors `a calculer l’ensemble des intersections des projections des lignes, `a d´eterminer l’invisibilit´e quantitative d’un certain nombre de points initiaux (`a l’aide d’un lancer de rayons par exemple), puis `a mettre `a jour cette invisibilit´e quantitative le long des lignes en la d´ecr´ementant ou en l’incr´ementant `a chaque intersection avec une silhouette, selon que la ligne passe derri`ere une surface ou en ressort.

Markosian [MKT+97] reprend la technique d’Appel et propose d’exploiter un certain nombre de propri´et´es de mani`ere `a l’acc´el´erer. En particulier, les points de rebroussement sont caract´eris´es de mani`ere `a limiter les tests de visibilit´e. Ainsi, pour une approximation polygonale de la silhouette, un sommet est un point de rebroussement si :

1. il est adjacent `a exactement deux arˆetes de silhouette, l’une orient´ee avant et l’autre orient´eearri`ere: une arˆete de silhouette est dite orient´eeavantlorsque sa face adjacente la plus proche du point de vue est elle-mˆeme orient´ee vers le point de vue et arri`ere dans le cas contraire.

2. il est adjacent `a plus de deux arˆetes de silhouette.

Si l’on suit l’approche exacte, le calcul de visibilit´e peut poser des probl`emes lorsque l’on travaille avec les silhouettes exactes introduites par Hertzmannet al. [HZ00] (cf.section 2.2.2). En effet, dans ce cas, les silhouettes obtenues approchent celles de la surface lisse approxim´ee par le maillage, et, `a moins de raffiner le maillage dans les zones de silhouette lors du calcul de visibilit´e, il est donc possible d’observer des contradictions entre la visibilit´e attendue et celle calcul´ee `a partir du maillage. En pratique, pour chaque portion de contour de visibilit´e constante on aura recours `a plusieurs tests de visibilit´e de mani`ere `a choisir celle donn´ee par la majorit´e. Hertzmann et al. proposent ´egalement une technique pour d´etecter les points de rebroussement, l’utilisation de la propri´et´e de colin´earit´e de la tangente et de la direction de vue n’´etant pas num´eriquement fiable. Ils montrent que ces points correspondent aux intersections sur la surface de la silhouette avec la courbe d’´equation :

κ1((P −V)·w1)22((P −V)·w2)2 (2.3) κ1 et κ2 ´etant les valeurs des courbures principales dans leurs directions respectives w1 et w2. La figure 2.19 montre ces deux courbes.

Nous avons choisi de d´eterminer l’invisibilit´e quantitative des arˆetes caract´eristiques `a l’aide d’une approche exacte. En raison des impr´ecisions dues au probl`eme d’incompatibilit´e entre la silhouette (que nous calculons d’apr`es la m´ethode de Hertzmann et Zorin) et le mod`ele polygonal, nous effectuons plusieurs lancers de rayons par segment de visibilit´e constante et avons recours `a un vote pour d´eterminer la valeur de l’ensemble du segment.

Pour d´eterminer les points de rebroussements, nous avons choisi de d´etecter les points pour lesquels la courbe de silhouette est colin´eaire `a la direction de vue : pour chaque arˆete de la silhouette, on calcule son produit vectoriel avec la normale `a la surface en son milieu ; lorsque le produit scalaire entre ce vecteur et la direction de vue est nul, la silhouette est colin´eaire

2.2 D ´etection analytique de lignes caract ´eristiques 39 '

&

$

% FIG. 2.19– D´etection des points de rebroussement

Gauche : les points de rebroussement sont les intersections des z´eros de deux fonctions d´efinies sur la surface, le produit scalaire de la normale avec la direction de vue (silhouette) et la fonction d’´equation 2.3. La silhouette est d´essin´ee en bleu, l’autre fonction en rouge. Droite : les mˆemes courbes, vues sous un point de vue diff´erent. c Hertzmann et al. [HZ00].

`a la direction de vue. Ce produit scalaire change ´egalement de signe de part et d’autre d’un point de rebroussement. Nous marquons donc chaque arˆete de silhouette en fonction du signe de ce produit scalaire et cr´eons un point de rebroussement lorsqu’il y a changement de signe.

De plus, on utilise une fonction hyst´er´esis de mani`ere `a amoindrir les cons´equences du bruit li´e `a ce calcul. Cette approche s’est r´ev´el´ee simple `a impl´ementer et efficace.

Les approches discr `etes

La principale difficult´e avec les approches discr`etes et l’utilisation duZ-Bufferpour d´eterminer la visibilit´e de lignes, est l’impr´ecision du Z-Buffer.

Northrupet al. [NM00] et Markosianet al. [MMK+00] utilisent une approche discr`ete et s’appuient sur le Z-Buffer pour d´eterminer la visibilit´e des lignes. Dans une premi`ere passe, une image r´ef´erence d’identit´e (ID reference image) est construite : chaque face et chaque arˆete sont rendues avec une couleur unique. Les arˆetes n’ayant pas contribu´e `a cette image sont totalement cach´ees. Pour d´eterminer les segments visibles des arˆetes restantes, celles-ci sont rasteris´ees et, pour chaque pixel, l’image de r´ef´erence permet de savoir s’il est visible ou non.

Isenberget al.[IHS02] ´etendent cette approche et proposent une m´ethode similaire pour laquelle le recours `a une image r´ef´erence d’identit´e n’est plus n´ecessaire. En effet, Isenberg et al. s’appuient uniquement sur le Z-Buffer pour d´eterminer si un pixel donn´e est visible.

Afin de contourner les probl`emes de pr´ecision, pour chaque pixel on teste les valeurs de z des 8 pixels voisins, si l’un d’entre eux est plus loin que le pixel concern´e, ce dernier est d´eclar´e visible.

R ´esum ´e: Les m´ethodes de calcul de visibilit´e pour les lignes caract´eristiques peuvent ˆetre exactes (et s’appuyer sur des outils g´eom´etriques) ou discr`etes (et utiliser le Z-Buffer).

Cette section d´ecrit les op´erations qui se d´eroulent au sein du deuxi`eme ´etage du pipeline de la figure 2.12 et qui sont responsables de la stylisation. Dans la section suivante, nous verrons quels types de contrˆoles sont offerts par les techniques actuelles sur ces op´erations pour mener `a bien cette stylisation.

2.3.1 Chaˆınage des ar ˆetes caract ´eristiques

Quelle que soit la technique employ´ee pour d´etecter les lignes caract´eristiques, celle-ci produit un ensemble de segments 3D dont la taille est du mˆeme ordre de grandeur que celle de l’ensemble des arˆetes du maillage. La figure 2.20 montre les segments de silhouette obtenus sur un tore par la m´ethode de Hertzmann et Zorin [HZ00]. Une fois la visibilit´e prise en compte, on est donc capable de produire un dessin en affichant la projection des arˆetes `a l’aide de traits monochromes d’´epaisseur constante.

'

&

$

% FIG. 2.20– Segments de silhouette

Sur cette figure, on peut voir les segments de silhouette obtenus par la m´ethode de Hertzmann et Zorin [HZ00] : sur chaque triangle du maillage par lequel passe la silhouette, un segment approxime cette silhouette. Ces segments doivent ˆetre chaˆın´es de mani`ere `a construire des traits plus longs, plus conforme `a des traits dessin´es par un artiste.

Toutefois, un tel dessin ne sera pas satisfaisant. En effet, pour qu’un rendu npr puisse cr´eer, de mani`ere plus convaincante, l’illusion d’un dessin fait `a la main, la couleur, la texture et la g´eom´etrie des traits doivent pouvoir imiter les interactions de l’outil (e.g.pinceau) et du medium (e.g.huile) sur le support (e.g.toile) ainsi que le trac´e lisse ou irr´egulier de l’artiste.

On s’int´eresse dans cette section `a ce dernier point qui concerne la d´efinition de la “topologie”

des traits. On commence par d´efinir untraitcomme la marque laiss´ee par l’outil au cours d’un geste unique de l’artiste (i.e.sans que l’outil ait quitt´e le support). Il est alors indispensable de construire de longues chaˆınes `a partir des arˆetes caract´eristiques de mani`ere `a imiter les longs traits g´en´eralement trac´es par les artistes. Nous verrons dans les prochaines sections qu’une fois la topologie des traits d´efinie, il existe des techniques permettant de leur affecter des attributs et d’en faire un rendu qui parvient `a simuler un v´eritable trac´e de trait.

2.3 Construction de traits et affectation d’attributs 41

Documents relatifs