• Aucun résultat trouvé

Étalonnage photométrique

(a) (b)

Figure5.7 – (a) Si deux sources ponctuelles sont positionnées à proximité d’une surface régulière, de telle sorte qu’aucune ne soit occultée, le champ d’éclairage est régulier, donc décomposable en harmoniques sphériques. (b) En revanche, les discontinuités de profondeur d’une surface créent des phénomènes d’ombre ou de pénombre, ainsi que des réflexions mutuelles : l’apparition de ces phénomènes brise la régularité du champ d’éclairage, qui n’est plus lisse que par morceaux. Un tel champ n’est pas décomposable en harmoniques sphériques.

5.2

Étalonnage photométrique

Pour pouvoir utiliser les modèles d’éclairage explicites dans le contexte de la sté- réophotométrie calibrée, il faut étalonner leurs paramètres au moyen d’une procédure spécifique. Les paramètres du modèle d’éclairage directionnel sont très faciles à estimer en utilisant une sphère spéculaire (la direction indiquée par le centre du reflet brillant est directement liée à la direction d’éclairage) ou mate (la normale à la sphère étant facile à déterminer, on peut inverser le modèle lambertien linéaire pour déterminer l’intensité et la direction moyenne de l’éclairage). Le problème de l’étalonnage dans un cadre plus général représente cependant un problème plus difficile.

5.2.1 Estimation des paramètres d’une source lumineuse

Nous avons montré dans [220] que, pour une source étendue, plane, de luminance non uniforme, comme par exemple un écran, il suffit d’étalonner géométriquement la caméra par rapport à l’écran pour pouvoir étalonner photométriquement la source, de façon à expliciter l’orientation commune des sources élémentaires (les pixels) et leurs coordonnées 3D, ce qui simplifie de beaucoup l’étalonnage, en comparaison de méthodes dédiées telles que celle qui est décrite dans [285].

L’étalonnage d’une source ponctuelle est un problème bien connu, mais la plupart des méthodes existantes [2, 13, 108, 207, 236,248] ne prennent en compte ni l’atténuation en 1/distance2, ni l’anisotropie de la source, ce qui peut conduire à des résultats très imprécis. À notre connaissance, la seule méthode tenant compte de façon explicite de ces phénomènes dans la procédure d’étalonnage est celle proposée par Xie et al. dans [275], qui repose cependant sur plusieurs étapes difficiles, notamment la détection des spécula- rités et l’estimation de la distance à la mire. Mentionnons également le travail de Zhou et al., qui permet d’estimer les paramètres d’un modèle d’éclairage très général utilisable avec des techniques de lancer de rayons [286].

Nous présentons dans ce qui suit une nouvelle méthode d’étalonnage d’un éclairage par inversion du modèle photométrique4, qui présente l’avantage de fournir en même temps les paramètres internes de l’appareil photographique. Pour cela, nous utilisons un motif de damier, imprimé en noir et blanc sur une feuille de papier collée sur un support plan. L’albédo des cases blanches est supposé égal à 1 (valeur arbitraire qui permet de simplifier les notations). L’albédo des cases noires n’est probablement pas nul, mais sa valeur est sans importance, car nous n’utiliserons pas les niveaux de gris correspondants. D’après la loi de Lambert, le niveau de gris de l’image prise sous un éclairage s s’écrit, pour un pixel d’une case blanche (u, v) ∈ Ωb, où Ωb désigne l’ensemble

des cases blanches :

I(u, v) = sθ(x(u, v)) · n(u, v) (5.40)

où θ ∈ Rms est le vecteur des paramètres de la source, et x(u, v) le point 3D du damier conjugué de (u, v) ∈ Ωb. Rappelons que ms= 3 pour une source directionnelle (deux de-

grés de liberté pour la direction, un pour l’intensité), ms = 4 pour une source ponctuelle

lambertienne isotrope (trois degrés de liberté pour la position 3D, un pour l’intensité), et ms = 7 pour une source ponctuelle lambertienne imparfaite (trois degrés de liberté

pour la position 3D, un pour l’intensité, deux pour l’orientation de la source, un pour le coefficient d’anisotropie µ défini en (5.21)).

Puisque tous les points de la surface sont situés sur un même plan (celui du damier), ils partagent la même normale, i.e. n(u, v) = n, de sorte que l’équation (5.40) ne contraint pas suffisamment l’estimation de θ, même si n est connu. Pour parer à ce problème, nous utilisons mposes poses du damier, et notons :

Ij(u, v) = sθ(xj(u, v)) · nj (5.41)

le niveau de gris du pixel (u, v) ∈ Ωj b, où Ω

j

b désigne l’ensemble des cases blanches pour

la j-ème pose du damier. Dans (5.41), xj(u, v) désigne le point 3D conjugué de (u, v)

pour la j-ème pose du damier.

Les algorithmes de détection de damiers étant très éprouvés, il est facile de détermi- ner, pour chaque pose, l’ensemble Ωj

b des cases blanches. De plus, à partir de mposes >3

poses, de nombreux algorithmes permettent d’estimer sans ambiguïté les coordonnées 3D des points xj(u, v) du damier. Ce type d’algorithmes permet également d’estimer

automatiquement les normales nj, ainsi que les paramètres internes de la caméra. Pour

réaliser ces opérations, nous utilisons la boîte à outils Computer Vision de Matlab, sa- chant que les mêmes fonctions sont librement accessibles dans la bibliothèque OpenCV. Dans (5.41), il ne reste donc plus que les paramètres θ comme inconnues. Ces para- mètres étant indépendants de la pose du damier, la solution du problème de minimisa- tion : min θ∈Rms mXposes j=1 X X (u,v)∈Ωj b h Ij(u, v) − sθ(xj(u, v)) · nj i2 (5.42) 4. Cette méthode a été développée par Jade Boumaza et Tom Lucas au cours de leur stage de première année de master à l’IRIT.

5.2. ÉTALONNAGE PHOTOMÉTRIQUE constitue une excellente estimation du vecteur de paramètres θ. Il s’agit d’un problème d’estimation en moindres carrés de ms < 10 paramètres à partir de Pj|Ωjb| ≫ 10

équations : le théorème central limite nous garantit qu’il s’agit de l’estimateur efficace. Dans le cas du modèle directionnel, il s’agit d’un problème en moindres carrés linéaires qui peut être résolu analytiquement. Dans le cas général, le problème est non linéaire, mais tellement surcontraint qu’une minimisation de type Levenberg-Marquardt, à partir d’une initialisation grossière des paramètres, offre une estimation très robuste. Cette estimation est d’autant plus robuste que le nombre de poses mposes est plus grand.

Par exemple, le problème de l’étalonnage d’une source ponctuelle de type LED, modélisée comme une source lambertienne imparfaite (ms= 7) s’écrit :

min xs,φ0 n0 mXposes j=1 X X (u,v)∈Ωj b        Ij(u, v) −  0)1/µn0·xj(u, v)−xs µ kxj(u, v)−x sk3+µ h xs−xj(u, v)  · nji        2 (5.43) où xs désigne la position de la source, φ0 son intensité, n0 son orientation, et µ son coefficient d’anisotropie. En imposant µ = 0, le modèle est indépendant de n0 (source isotrope), tandis que µ > 1 correspond au modèle de source ponctuelle anisotrope.

La résolution du problème (5.43) est difficile si µ est inconnu, mais facile si µ est connu. Plutôt que d’estimer φ0 et n0 séparément, ce qui nécessiterait de respecter la contrainte kn0k = 1, il est plus raisonnable d’estimer le vecteur m0 = (φ0)1/µn0, duquel on peut extraire φ0 = km0kµ et n0= m0/km0k. La méthode de Levenberg-Marquardt5 converge alors très rapidement (une dizaine d’itérations dans nos tests).

On peut soit faire confiance à la valeur de µ fournie par le fabricant, soit l’estimer en appliquant la procédure qui vient d’être décrite pour plusieurs valeurs de µ. En effet, comme la valeur minimale du critère (5.43) dépend fortement de µ, la valeur qui minimise ce minimum peut être choisie comme estimation (cf. figure5.9). Pour l’exemple des trois LED de la figure 5.86, le fabricant7 indique que θ

1/2 ≈ 60◦, soit µ ≈ 1 d’après (5.22), pour les trois LED. En réalité, la LED rouge semble légèrement plus anisotrope (µ ≈ 4). Notons au passage que ce montage nous a permis de tester la stéréophotométrie colorée (cf. paragraphe4.4.1), et de coupler cette technique avec un capteur de profondeur. Ces travaux seront présentés dans un travail à venir.

5. Notons quand même que les coordonnées 3D de la source et son intensité constituent des grandeurs physiques totalement différentes, et donc d’ordres de grandeur potentiellement très différents : il est nécessaire d’utiliser un préconditionnement approprié pour garantir la convergence.

6. Contrairement à ce que montre la photographie du montage, et conformément à la procédure proposée, il nous faut allumer les LED une par une pour pouvoir les étalonner, les LED n’étant pas parfaitement monochromatiques.

Figure5.8 – Étalonnage des paramètres d’un modèle de source ponctuelle lambertienne imparfaite. Première ligne : trois LED colorées fixées sur une caméra RGBD. Deuxième ligne : trois poses du damier, avec détection automatique des cases blanches. En bas : reconstruction 3D de l’environnement complet de l’étalonnage (poses du damier et ca- méra étalonnée), accompagnée des paramètres du modèle d’éclairage, ici les positions et orientations 3D de trois LED colorées situées autour de la caméra RGBD. L’unité est le millimètre, et la position de chaque LED est désignée par un losange, son orientation par une flèche dont la longueur est proportionnelle à l’intensité.

5.2. ÉTALONNAGE PHOTOMÉTRIQUE 0 2 4 6 8 10 0.06 0.065 0.07 0.075 0.08 0.085 0.09 µ R M S E LED rouge LED verte LED bleue

Figure 5.9 – Influence du paramètre d’anisotropie µ sur l’étalonnage photométrique. En haut : positions et orientations du damier et positions, orientations et intensités des sources qui sont visibles sur la première ligne de la figure5.8, pour différentes valeurs de

µ. Si ce paramètre d’anisotropie est trop élevé, cela se traduit par un éloignement des

sources. En bas : racine carrée de la valeur moyenne du critère défini en (5.43) (RMSE). Les valeurs fournies par le fabricant sont µ = 1 pour les trois LED : la LED rouge semble en réalité plus anisotrope que ce qui est annoncé.

5.2.2 Étalonnage du champ d’éclairage

Il est également possible de directement étalonner le flux incident s : Ω → R3, en inversant le modèle lambertien linéaire en chaque point x. Ceci suppose cependant que l’on dispose d’un grand nombre de poses de la mire en chaque point de l’espace 3D, ce qui semble très difficile à mettre en œuvre.

Si l’on ne tient compte que du flux primaire, et que l’on suppose que l’intensité de l’éclairage varie spatialement, mais que sa direction est à peu près uniforme, l’étalonnage du champ s se ramène à la technique de « compensation » qui a été décrite dans le paragraphe 1.2.

Afin de garantir un étalonnage des éclairages plus fiable que par cette procédure somme toute simpliste, et pour éviter un étalonnage exhaustif du champ s sur tout l’espace 3D, nous avons mis en place une procédure d’étalonnage intermédiaire, dans le cadre d’un projet de transfert technologique en collaboration avec la société Pixience, piloté par la SATT de Toulouse Midi-Pyrénées (TTT, pour Toulouse Tech Transfer). Cette procédure vise à estimer le vecteur d’éclairage en un nombre restreint méchantillons d’échantillons x(ue

0, ve0) de l’espace 3D, e ∈ [1, méchantillons], répartis sur le plan moyen de la surface à reconstruire (cf. figure 5.10). Ceci est effectué par résolution, au voisinage de chaque point d’échantillonnage (ue

0, ve0), d’un problème de minimisation en moindres carrés linéaires de la forme (5.42), en choisissant (localement) le modèle d’éclairage di- rectionnel, i.e. θi ∈ R3. En utilisant une mire 3D (usinée à partir de son modèle), on peut disposer de suffisamment d’orientations différentes de la surface au voisinage de chaque point (ue

0, v0e)8. Remarquons qu’une idée similaire a été proposée par Johnson et al. dans [138], pour étalonner les harmoniques sphériques du flux lumineux incident. Cette procédure permet d’étalonner le flux incident sur une surface de référence. Bien sûr, le flux incident effectif sur une nouvelle surface sera légèrement différent, notam- ment à cause des réflexions mutuelles. Nous verrons dans la partie IV comment affiner l’estimation de ce flux au cours de la reconstruction 3D.

5.3

Méthodes numériques de reconstruction 3D par sté-