• Aucun résultat trouvé

Conclusion du chapitre

Dans ce chapitre, nous avons proposé une analyse statistique de la méthode d’esti-mation classique de la normale et de l’albédo par stéréophotométrie, qui est fondée sur le modèle lambertien linéaire (1.18). Nous avons mis en évidence la non robustesse de cette approche à la présence d’écarts importants au modèle, et recensé un certain nombre de phénomènes induisant ces écarts. Les effets d’éclairages non directionnels peuvent être fortement atténués au moyen de prétraitements relativement simples. D’autres pré-traitements permettent de limiter les effets des ombres et des reflets brillants, mais ces méthodes non supervisées sont généralement moins performantes que des méthodes d’estimation robuste supervisées, telles que la régression parcimonieuse ou certains M-estimateurs non convexes. Enfin, l’éclairage « ambiant » est très facile à estimer auto-matiquement.

Ces prétraitements et ces estimateurs permettent d’estimer le champ de normales de manière robuste, i.e. d’appliquer la formulation classique de la stéréophotométrie « en conditions réalistes ». Si la surface à reconstruire est régulière, le champ de normales estimé de façon robuste a toutes les raisons d’être lui-même lisse : remarquons que nous n’avons pas eu besoin, pour cela, d’introduire de régularisationspatiale, la normale étant estimée pixel par pixel. Jusqu’à présent, nous ne nous sommes intéressés qu’à l’estimation de caractéristiques locales de la surface. Cependant, notre objectif final est de retrouver une surface expliquant les images, et non pas seulement les normales à cette surface. La prochaine étape consistera donc à intégrer le champ de normales estimé, afin d’obtenir une carte de profondeur. Nous allons voir que cette étape d’intégration requiert également l’utilisation d’estimateurs robustes, afin d’éviter l’apparition d’un biais à proximité des discontinuités de profondeur.

Intégration robuste des normales

La seconde étape de la résolution classique de la stéréophotométrie est l’intégration des normales estimées, qui permet de retrouver la carte de profondeurz caractéristique du relief de la surface S. Dans ce chapitre, nous menons une étude approfondie de ce problème. Après avoir rappelé dans le paragraphe 2.1les équations qui le caractérisent, nous présentons dans le paragraphe 2.2 les principales propriétés que l’on est en droit d’attendre d’une « bonne » méthode d’intégration. Nous menons ensuite, dans le para-graphe2.3, une analyse approfondie des méthodes d’intégration en moindres carrés. Sur la base de cette analyse, de nouvelles méthodes d’intégration adaptées aux discontinuités de profondeur sont introduites dans le paragraphe 2.4. Plusieurs d’entre elles ont déjà été décrites dans [210,211].

2.1 Normale, gradient et intégrabilité

Le problème de l’intégration d’un champ de normales consiste à estimer, en chaque pixel (u, v)∈Ω, le pointx(u, v) = [x(u, v), y(u, v), z(u, v)] de la surfaceS, connaissant sa normale n(u, v). Nous avons vu, dans le chapitre 1, comment estimer le champ de normales de la surfaceS. Pour en déduire une estimation du relief de la surface, i.e. de la profondeurz(u, v), il nous faut d’abord expliciter le lien entre ces différentes variables.

2.1.1 Équations de l’intégration des normales

Commençons par établir l’équation qui lie la normale n(u, v) au gradient de profon-deur∇z(u, v). Nous allons voir que cette équation est quasiment la même pour les deux types de projection : orthographique ou perspectif.

Projection orthographique

Sous l’hypothèse d’une projection orthographique (cf. (1.3)) :

x(u, v) =

u v z(u, v)

(2.1)

Le plan tangent à la surface est porté par les deux vecteurs ux(u, v) et vx(u, v),

dont le produit vectoriel s’écrit :

Sachant que ce vecteur est colinéaire à la normale à la surface, son produit vectoriel avec n(u, v) = [n1(u, v), n2(u, v), n3(u, v)] est nul, soit :

ce qui constitue un système linéaire de trois équations à deux inconnues, qui sont les dé-rivées partielles uz(u, v) et vz(u, v) de la profondeur. Or, la troisième équation du système (2.3) se déduit des deux premières par combinaison linéaire, pour peu que n3(u, v) 6= 0. Le cas où n3(u, v) = 0 survient lorsque la normale n(u, v) est parallèle au plan image, i.e. lorsque la « pente » k∇z(u, v)k =puz(u, v)2+vz(u, v)2 est infi-nie. On ne peut donc pas calculer par intégration la profondeur en de tels points, qui forment dans l’image des contours occultants.

Si le point (u, v) ne se trouve pas sur un contour occultant, i.e. sin3(u, v)6= 0, alors la troisième équation du système (2.3) peut être ignorée, puisqu’elle n’est pas informative.

Le déterminant du système linéaire formé par les deux premières équations de (2.3) est égal à n3(u, v)2. Comme cette valeur est non nulle par hypothèse, la détermination de

z(u, v) = [∂uz(u, v), ∂vz(u, v)] à partir de n(u, v) constitue un problème bien posé.

L’équation liant z(u, v) à n(u, v) est l’équation aux dérivées partielles (EDP) linéaire suivante :

En introduisant les notations usuelles :

"

l’EDP (2.4) se réécrit sous la forme suivante :

z(u, v) =go(u, v) (2.6)

go(u, v) est une estimation du gradient dezau point (u, v), obtenue par exemple par stéréophotométrie. Comme, d’après (2.1),x(u, v) est entièrement déterminé parz(u, v), la résolution de l’équation (2.6) permet bien de reconstruire le relief de la surface ob-servée. Notons que cette résolution n’est possible qu’à une constante additive près, qui peut être fixée empiriquement ou grâce à une connaissance a priori sur la surface.

Projection perspective

Sous l’hypothèse d’une projection perspective (cf. (1.4)) : x(u, v) =z(u, v)

où (u0, v0) désignent les coordonnées dupoint principal de l’appareil photographique.

Le produit vectoriel deux(u, v) et vx(u, v) s’écrit maintenant : Comme ce vecteur est colinéaire à la normale, son produit vectoriel avec n(u, v) est nul, soit : En introduisant le changement de variable suivant (on rappelle que z < 0, par conven-tion) : La matrice du système linéaire (2.11) est de rang 2, sauf si ses trois déterminants sont simultanément nuls : i.e., si (u, v) se situe sur un contour occultant. Dans les autres cas, on obtient finalement l’EDP linéaire suivante :

et, une fois cette équation résolue, la profondeur z(u, v) s’obtient par la transformation inverse (le signe − vient de ce quez <0) :

z(u, v) =−exp(˜z(u, v)) (2.15)

La stricte similarité entre les équations (2.6) et (2.14) montre qu’une méthode d’in-tégration conçue pour la projection orthographique peut être facilement étendue à la projection perspective, pourvu que les paramètres internes (u0, v0, f) soient connus, en effectuant le changement de variable (2.10)1. Nous pouvons donc nous contenter de résoudre l’équation générique suivante :

z(u, v) =g(u, v) (2.16)

où il est implicitement entendu que (z,g) ≡(z,go) pour la projection orthographique, et (z,g)≡(˜z,gp) pour la projection perspective. Dans les deux cas, nous noterons pour simplifier :

g(u, v) =

"

p(u, v) q(u, v)

#

(2.17)

2.1.2 Intégrabilité d’un champ de normales

Soit (¯u,v) un pixel où la profondeur est connue. La solution de l’EDP linéaire (2.16)¯ peut être obtenue en intégrant la donnée g= [p, q] le long d’un chemin reliant (¯u,v) ௠(u, v) :

z(u, v) =z(¯u,v) +¯ Z (u,v)

u,¯v) g(s, t)·[ds,dt] (2.18) S’il n’existe aucun point (¯u,v) de profondeur connue, on peut toujours choisir ar-¯ bitrairement (¯u,v) et¯ z(¯u,¯v) : la profondeur z sera alors déterminée à une constante additive près en tout point (u, v) ∈Ω (cette ambiguïté devient une ambiguïté multipli-cative dans le cas de la projection perspective, en vertu de la transformation (2.15)).

En général, le chemin choisi pour calculer l’intégrale (2.18) influe sur la valeur de z(u, v), ce qui est bien entendu préjudiciable. Pour garantir l’indépendance de la valeur de z(u, v) vis-à-vis du chemin d’intégration, il faut s’assurer que le champ g = [p, q] soitintégrable, ce qui se traduit par l’égalité :

vp=uq (2.19)

Cette contrainte est appeléecontrainte d’intégrabilité [93,126]. Elle correspond au théo-rème de Schwartz : si une fonctionzest de classeC2, alors ses dérivées secondes croisées sont égales :

2z

uv = 2z

vu (2.20)

Imposer explicitement la contrainte d’intégrabilité (2.19) peut aider à rendre mieux posés certains problèmes, comme la stéréophotométrie non calibrée [197,282,283] ou la

1. Cela a également été remarqué par Tankus et Kiryati dans [249].

stéréophotométrie à deux images [192] (cf. partie II). Pour le problème de l’intégration des normales, nous préconisons de ne pas imposer explicitement l’intégrabilité, i.e. de ne pas modifier le champg, contrairement à ce qui est suggéré dans [224] : si ce champ a été bien estimé (cf. chapitre 1), les points où la contrainte d’intégrabilité n’est pas vérifiée correspondent à des points particuliers de la surface, qu’il convient de traiter de façon appropriée.

Il nous semble préférable d’imposer cette contrainte implicitement, en cherchant la solutionzdans un espace de fonctions bien choisi pour lequel l’égalité (2.20) est vérifiée.

Si l’on cherche une fonction z deux fois différentiable sur Ω, le choix de l’espace C2(Ω) semble justifié. Mais en présence d’arêtes ou de discontinuités de profondeur, la contrainte d’intégrabilité (2.19) ne peut être imposée quepresque partout. Par analogie avec ce qui a été proposé dans le domaine du traitement d’images, nous préférons pour finir l’espace BV(Ω) des fonctions à variation bornée2.