# ÉGALISATION RADIOMÉTRIQUE DE NUAGES DE POINTS 3D ISSUS DE CORRÉLATION DENSE

Luc Girod¹, Marc Pierrot-Deseilligny²

1 : Department of Geosciences, University of Oslo, Postboks 1047 Blindern, 0316 Oslo, Norway

2 : Laboratoire d'Opto-électronique et de Micro-Informatique, IGN/ENSG 6-8 Avenue Blaise Pascal, 77420 Champs-sur-Marne, France

## Résumé

Si les problèmes de colorimétrie dans le mosaïquage d'images ont fait l'objet d'études approfondies par le passé et qu'ils sont maintenant globalement résolus, il n'en est pas de même pour l'égalisation des scènes non planaires et des produits photogrammétriques 3D associés. En effet, certains produits photogrammétriques ne sont pas des images mais des produits purement 3D, de type nuage de points ou surfaces texturées, notamment. Cependant, la cohérence colorimétrique reste d'une grande importance dans ces cas pour une visualisation plus fluide des résultats. Cet article explore donc des algorithmes de correction colorimétrique à appliquer aux nuages de points dont la couleur provient de plusieurs images et leur implémentation dans la librairie MicMac de l'IGN. Deux points sont ici abordés : la correction du vignettage des images d'une part, ce défaut posant des problèmes d'homogénéité intra-image, et l'égalisation inter-images d'autre part.

**Mots clés** : Egalisation radiométrique, nuage de points, vignettage, photogrammétrie rapprochée.

## Abstract

While the radiometric problems in mosaicking images have been the objects of in-depth research in the past and are now considered as solved, the counterpart of these solutions for non-planar scenes and therefore 3D photogrammetric products are still under-explored. These products, like 3D point clouds or meshed models, are nothing like images mosaics. However, the radiometric coherence is also of great importance for these products, ensuring an optimal visualization comfort. This article explores algorithms for radiometric equalization that can be applied on 3D point clouds where the radiometry of the points are extracted from more than one image as well as their implementation into the MicMac IGN library. Two points are discussed : first, the correction of the vignette effect (which results in a lack of homogeneity in an image) and, secondly, a method for inter-images equalization.

**Keywords** : Radiometric equalization, Point cloud, Vignetting, Close range photogrammetry.

## 1. Introduction

L'esthétisme tient une place à la fois centrale et très périphérique en photogrammétrie. En effet, ce domaine a longtemps eu pour objectif la seule vérité géométrique, permettant la cartographie. Avec la volonté de recourir aux mosaïques d'images, l'importance des corrections radiométriques se fait sentir : les variations de couleurs présentes d'une image à une autre sont une véritable gêne. Les photogrammétres s'intéressent alors à l'homogénéisation des couleurs pour produire des orthoimages esthétiquement agréables. Les techniques actuellement utilisées de manière opérationnelle proposent des résultats très convaincants pour la création de mosaïques d'images aériennes (Chandelier and Martinoty, 2009).

L'objet de cet article est d'élargir la notion d'égalisation radiométrique pour des produits photogrammétriques tridimensionnels. En effet, lors de la fusion de nuages de points représentant différentes parties d'un même objet (quelle que soit sa nature), la couleur des

points est issue pour chaque sous-nuage d'une image différente. Cela provoque la superposition de points représentant la même zone géométriquement mais ne partageant pas la même radiométrie (voir figure 1), ce qui est fort peu esthétique et peut rendre problématique l'interprétation du modèle.

L'importance d'une colorimétrie agréable à l'œil est d'autant plus grande que l'objectif de la production de modèles 3D produits par photogrammétrie est souvent lié à la visualisation et l'analyse de l'objet, de l'œuvre ou du bâtiment photographié. La présence d'irrégularités colorimétriques provoque une gêne certaine pour ces usages et leur correction n'avait jusqu'alors pas été étudiée à notre connaissance.

On abordera ici dans un premier temps les corrections des défauts d'homogénéité intrinsèque des images, notamment le problème du vignettage. On s'intéressera ensuite à l'égalisation des groupes d'images destinés à colorer des nuages de points dont la fusion
représente une scène complète.

Dans le cadre de ces travaux, on s'appuie sur la librairie photogrammétrique MicMac de l'IGN (Pierrot-Deseilligny, 2014b) ainsi que sur les produits qu'elle génère. Les fonctions principales de cette librairie sont :

- Calcul et appariement de points de liaison ;

- Calibration et orientation des caméras ;

- Corrélation dense.

On utilisera dans les algorithmes décrits dans cet article nombre de produits issus de MicMac, notamment les points de liaison, les cartes de profondeur et leurs masques associés (qui définissent sur quelle partie de l'image maîtresse la corrélation 3D doit être effectuée).

<figure><img src="image_1.png" /><figcaption>**FIGURE 1 :** Fusion de plusieurs nuages de points avec une ligne de démarcation visible.</figcaption></figure>

## 2. Correction du Vignettage

Les images produites par les appareils photographiques présentent de nombreux défauts dus soit à l'optique, soit au capteur qui lui est associé. On rencontre notamment des défauts de distorsion, d'aber-rations chromatiques et de vignettage. Si les problèmes géométriques tels que la distorsion sont bien gérés par les modèles photogramétriques et les aberrations chromatiques sont de moins en moins visibles sur les images issues d'appareils modernes, le vignettage est encore bien présent (voir l'exemple de la figure 2). Certains photographes utilisent même cet effet à des fins artistiques, le centre de l'image étant ainsi particu-lièrement mis en valeur.

Il est bien sûr possible de calibrer le vignettage en laboratoire mais il dépend du paramétrage de l'optique (focale et ouverture). Une correction systématique nécessiterait donc de multiples calibrations ainsi qu'un matériel spécifique adapté. L'objectif de l'algorithme décrit ici est de pouvoir utiliser des images quelconques pour déterminer un modèle.

Une partie des explications physiques concernant le vignettage à la section 2.1, ainsi que les modèles présen-tés à la section 2.2 sont issues des travaux de (Goldman and Chen, 2005).

### 2.1. Origines du vignettage

Le vignettage est un phénomène optique ayant des origines diverses et cumulatives :

- **géométrique**, comme montré de façon exagérée dans la figure 3, la même surface de capteur est éclairée par un flux lumineux moins important si elle est désaxée par rapport au diaphragme.

- **optique**, la multiplication des lentilles dans un objectif photographique tendant à absorber les rayons lumineux d'un facteur dépendant de leur angle d'incidence, avec un minima pour les rayons parallèles à l'axe optique du fait du chemin optique plus court pour ceux-ci.

- **électronique**, un rayon lumineux atteignant un pixel du capteur non orthogonalement produisant un signal électrique légèrement plus faible.

<figure><img src="image_2.png" /><figcaption>**FIGURE 2 :** Vignette du Nikkor 18-105 mm VR, F/3.6,18mm, monté sur un boitier Nikon D90 sur un champ gris homogène.</figcaption></figure>

<figure><img src="image_3.png" /><figcaption>**FIGURE 3 :** Origine géométrique du vignettage.</figcaption></figure>

### 2.2. Modélisation du vignettage

Le phénomène de vignettage est constant à objectif, ouverture et focale fixes. Pour corriger cet effet indésirable, il faut considérer une modélisation de la valeur enregistrée pour un pixel en fonction de la lumière perçue et des effets optiques. La valeur d'un pixel peut être exprimée par la fonction (1), avec P la valeur du pixel, R la réponse du capteur (supposée constante pour un ISO donné), t le temps d'exposition, L la luminance du point dans la direction de la caméra et V le vignettage.

$$P = R(t * L * V). \tag{1}$$

La géométrie des optiques classiques étant conçue autour d'une symétrie axiale (l'axe optique), on sait que tout effet, comme la distorsion par exemple, sera :
- Radial;

- Infiniment dérivable;

- Modélisable par un polynôme pair.

La fonction de vignettage V peut donc être modélisée par une fonction polynomiale paire. L'expérience montre que le degré 6 est suffisant pour modéliser le vignettage. On a donc la fonction (2), avec r la distance au centre du capteur et α, β et γ les coefficients du polynôme.

$$V(r) = 1 + \alpha r^2 + \beta r^4 + \gamma r^6. \qquad (2)$$

Le vignettage est cependant une fonction indépendante pouvant être estimée et corrigée en faisant abstraction de la réponse du capteur, du temps d'exposition et de la radiance des objets photographiés, créant ainsi une image simulée où les valeurs sont données par la formule (3).

$$P_{corrige} = R(t * L). \qquad (3)$$

## 2.3. Méthode de correction

Pour corriger le vignettage, on va estimer les paramètres du modèle décrit par la formule (2) et l'on multipliera ensuite les valeurs radiométriques de chaque point en entrée par la valeur du modèle en ce point.

L'objectif de la méthode présentée ci-dessous est d'estimer un modèle de vignettage sans recourir à une calibration en laboratoire. On exploitera ici des points de liaison obtenus par l'algorithme SIFT (Lowe, 2004) sur un jeu d'images quelconques devant être corrigées.

### 2.3.1. Données en entrée

Pour cet algorithme, on a besoin de disposer en entrée :

- d'un jeu d'images prises avec le même objectif, à ouverture et focale constantes;

- des métadonnées des images (ISO, temps d'exposition...);

- de points de liaison extraits par l'algorithme SIFT.

Chacun de ces points de liaison devrait – si les images étaient parfaites et que les objets visés avaient un comportement lambertien – avoir la même radiométrie sur chacune des images. Or le vignettage est tel qu'un point éloigné du centre de l'image sera plus sombre. En effectuant le rapport de ces niveaux d'illumination (valeur du pixel en niveaux de gris), on peut donc évaluer les paramètres d'un polynôme modélisant le vignettage.

On remarquera que certaines géométries de prise de vue sont plus adaptées à l'estimation du vignettage. En effet, un point de liaison en entrée sera bien plus représentatif s'il est proche du centre d'une des images dont il est issu et plus éloigné sur une autre. De telles caractéristiques mettent en avant le phénomène étudié. Une prise de vue présentant ce type de point de liaison sera donc plus adaptée (la figure 4 schématise ce cas). À l'inverse, une prise de vue convergente avec peu

d'images et une petite base présentera des images dans lesquelles le vignettage est très difficile à estimer.

<figure><img src="image_4.png" /><figcaption>FIGURE 4 : Images se recouvrant de façon à avoir des points de liaison à différentes distance (D1>D2) du centre des images.</figcaption></figure>

### 2.3.2. Normalisation des données en entrée

Lors de la modélisation du vignettage, on va considérer que la luminosité ambiante était constante pendant la prise de vue de calibration. Cette hypothèse est raisonnable car quelques images suffisent à effectuer le calcul.

Cependant, un appareil photo en mode non manuel est susceptible d'avoir choisi des paramètres non constants. Afin d'avoir des niveaux de gris (noté G dans les équations (4) et (5)) comparables, ils sont normalisés par un facteur fonction du temps d'exposition, de l'ISO de leur image d'origine et des maximums de ceux-ci dans le jeu d'image (cf. fonction (4) où t le temps d'exposition et ISO la sensibilité du capteur).

$$G_{normalise} = G_{lu} * \sqrt{\frac{t * ISO}{t_{max} * ISO_{max}}}. \qquad (4)$$

### 2.3.3. Mise en équation

Pour chaque point de liaison, on a l'égalité (5), où $G_i$ est le niveau de gris normalisé du point dans l'image i et $r_i$ la distance au centre pour cette image.

$$G_1 * (1 + \alpha r_1^2 + \beta r_1^4 + \gamma r_1^6) = G_2 * (1 + \alpha r_2^2 + \beta r_2^4 + \gamma r_2^6) \quad (5)$$

### 2.3.4. Résolution du système

La profusion de points de liaison mène à une très large surabondance d'équations. Trois suffiraient en théorie au vu du nombre d'inconnues, alors qu'on dispose de plusieurs milliers de points de liaison par couple d'images. Cette surabondance est cependant utile car elle permet d'ajuster un modèle de manière bien plus précise et robuste.

La proportion de points faux étant forte (mauvais appareillage de SIFT, objets non-lambertiens...), il convient d'utiliser une méthode d'estimation robuste à un bruit fort. La méthode choisie est une variation de la méthode dite de RANSAC (Fischler and Bolles, 1981).
La méthode RANSAC (RANdom SAmple Consensus) utilise un sous-ensemble aléatoire d'observations pour calculer les paramètres du modèle, puis confronte ce modèle au reste des données. Ce processus est itéré un grand nombre de fois, et un système de score permet de déterminer le meilleur des modèles proposés.

Dans l'implémentation utilisée ici, l'algorithme sélectionne aléatoirement entre 9 et 30 points de liaison puis calcule des paramètres du polynôme de correction par la méthode des moindres carrés. Cette surabondance de points par rapport au minimum nécessaire au calcul d'une solution améliore les propositions dans le cadre d'estimations d'un modl ee avec des données très buitées. La variabilité du nombre d'observation ajoute également un aléa profitable à la résolution du problème. Les paramètres de sortie sont ensuite testés pour vérifier leur cohérence avec un modèle probable. En effet, la quantité d'outliers très importante et le degré du polynôme rendent probable la convergence de l'estimation vers un modèle absurde, alors que l'ont sait qu'un modèle cohérent de correction de vignettage présentera toujours un $\alpha > 0$.

Si un modèle estimé correspond à ces critères, on calcule alors :

- le pourcentage $P_{inliers}$ des points en accord avec ce modèle à ±5 niveaux de gris (sur un échantillonnage sur 256 niveaux), ce choix étant empirique et lié à l'approximation considérée comme acceptable du modèle de correction (⇒ dans les jeux tests, environ 20% à 40% des points sont des inliers sur les meilleurs jeux de paramètres testés).

- l'erreur moyenne $EMP$ entre le modèle et les points, pondérée par le minimum de $[r_1, r_2]$. Cette pondération met en avant les points plus proches des bords, plus affectés par le vignettage.

On calcule alors le score selon la formule (6) :

$$ Score = \frac{P_{inliers}}{EMP}. \qquad (6) $$

Cette opération est répétée 10 000 fois au minimum, et se poursuit jusqu'à ce que 500 modèles aient passé le test de cohérence. À chaque fois que le score d'un modèle dépasse le score maximum enregistré, ce modèle devient le nouveau modèle actif. Ces seuils, très empiriques, sont le produit de tests et un compromis entre la vitesse de calcul et l'espérance d'obtention d'un résultat de qualité.

### 2.3.5. *Jeu test*

Le jeu d'images "Alarme" (voir la figure 5) présente assez peu de points de liaison et est de plus constituée d'images convergentes. Ces deux attributs en font un jeu d'images en théorie mal adapté à la calibration du vignettage, mais notre méthode parvient à estimer un modèle d'apparence cohérente avec du vignettage (figure 6) et on voit sur la figure 7 que son application est satisfaisante.

<figure><img src="image_5.png" /><figcaption>FIGURE 5 : Les 7 images du jeu "Alarme".</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>FIGURE 6 : Bonne correction du vignettage obtenue par notre méthode avec le jeu "Alarme".</figcaption></figure>

La figure 8 est l'image de la figure 2 après correction du vignettage avec le modèle estimé par le jeu "Alarme". On remarque que l'image est très homogène, ne présentant que 20 niveaux de gris, contre plus de 70 pour l'image originale. Le vignettage n'est ici plus visible et l'on peut alors véritablement considérer le problème comme étant corrigé, en tous cas pour les besoins de notre application.

## 2.4. Conclusion sur le vignettage

On a présenté dans cette partie les origines de l' effet de vignettage et une modélisation paramétrique du phénomène permettant sa correction. On a ensuite vu un algorithme estimant ces paramètres pour des jeux

<figure><img src="image_7.png" /><figcaption>FIGURE 7 : Image centrale du jeu "Alarme" avant et après correction du vignettage.</figcaption></figure>
<figure><img src="image_8.png" /><figcaption>**FIGURE 8** : Image de champ gris homogène corrigé du vignettage.</figcaption></figure>

d'images variés et éventuellement non optimaux pour une telle estimation, et ce avec une précision suffisante pour les besoins exprimés dans notre contexte.

L'algorithme ici décrit a été implémenté dans la librairie MicMac (Pierrot-Deseilligny, 2014a), section 7.3, sous le nom de commande Vodka (pour Vignette Of Digital Camera Analysis).

# 3. Égalisation radiométrique d'un ensemble d'images

## 3.1. Introduction

Une fois le vignettage corrigé, on peut considérer que les images ne présentent plus d'irrégularité en elles-mêmes. Il est maintenant possible de réaliser une égalisation radiométrique du groupe d'images qui nous intéresse pour obtenir des produits photogrammétriques dans lesquels les zones de passage entres nuages de points provenant d'images différentes ne soient trop visibles.

### 3.1.1. Cas de la mosaïque d'images, généralités

La littérature traitant d'égalisation radiométrique explore en général le cas de la mosaïque d'images. Il est en effet primordial de bien assurer une cohérence radiométrique pour permettre aux produits finaux d'avoir un aspect correct. Parmi ces produits, on remarquera particulièrement les images panoramiques (ainsi que les variantes 360° et sphériques) et les orthoimages.

### 3.1.2. Techniques présentées dans la littérature

La correction des problèmes intrinsèques aux images est généralement traitée de manière similaire à ce qui a été évoqué dans la partie 2, avec l'ajout notable de la correction du filtre atmosphérique et du BRDF (phénomène de hot-spot) pour les images aériennes et spatiales.

Les corrections inter-images, permettant la création de mosaïques, se basent sur différentes techniques :

- des corrections statistiques qui homogénéisent les moyennes et écart-types des images avec en général une perte importante de dynamique ;

- des corrections dites "physiques" qui utilisent des informations sur la prise de vue pour appliquer des modèles empiriques – pour corriger le phénomène de hotspot, notamment (Chandelier and Martinoty, 2009) ;

- des techniques de fusion, de type blending, qui permettent un passage doux d'une image à une autre par un système de transparence progressive, comme décrit dans (Brown and Lowe, 2007) ;

- une combinaison des techniques ci-dessus.

La figure 9 montre l'efficacité de la correction du vignettage et du blending dans la création d'images panoramiques par mosaïquage.

### 3.1.3. Inadéquation de ces techniques avec notre cas

Ici, on ne cherche pas à mosaïquer les images et on ignore les paramètres permettant les corrections physiques (heure précise de prise de vue, position du soleil, position et orientation de la caméra en coordonnées absolues...). Les types de corrections cités précédemment ne sont donc pas applicables aux modèles tridimensionnels, ou nécessiteraient des modifications et adaptations importantes.

Le blending, par exemple, s'applique à des images superposables (et donc corrigées géo métriquement), ce qui n'est pas possible dans le cadre de nos travaux. On pourrait cependant imaginer un blending de nuages de points, par une recherche des points proches et un système d'égalisation adapté. Cependant, cette approche semble complexe et ne sera pas explorée ici.

<figure><img src="image_9.png" /><figcaption>**FIGURE 9** : Apollo 11. De haut en bas : images originales ; traitement par blending ; correction des vignettes ; vignettes + blending. In *Vignette and Exposure Calibration and Compensation*, (Goldman and Chen, 2005).</figcaption></figure>
## 3.2. Cas du nuage de points 3D

### 3.2.1. Sources des défauts

Les différences constatées peuvent être liées à de nombreux facteurs :

- variation des paramètres de l'appareil photo (température de couleur, ouverture, ISO, temps d'exposition);

- variation de l'illumination du sujet (naturelle ou artificielle);

- aspect non lambertien des matériaux photographiés.

### 3.2.2. Techniques proposées dans la littérature

Quelques techniques destinées à la coloration de surfaces 3D ont été développées. Elles s'appuient en général sur la découpe de la surface en un atlas (Purnomo et al., 2004) dont les éléments seront ensuite traités indépendamment par détermination de la meilleur image ou groupe d'images pour les colorer. Ces atlas sont ensuite analysés pour éliminer les limites visibles entre chaque élément, via des systèmes avancés de blending (cf. (Lempitsky and Ivanov, 2007; Allene et al., 2008) et bibliographies associées).

Si ces techniques semblent efficaces – a fortiori sur des objets relativement convexes ou séparables en objets convexes pour lesquels il est possibles de définir des limites de zones relativement longues sur lesquelles appliquer des traitements – elles ne sont pas très adaptées à notre cas. En effet, en entrée de notre processus, on a un nombre limité de cartes de profondeurs associées à une image, non pas des images à projeter sur un objet à texturer. La découpe en patches est donc en quelque sorte faite par le choix des images utilisées lors d'étapes précédentes du processus photogrammétrique.

## 3.3. Notre proposition de processus de correction

Pour obtenir un ensemble de nuages de points 3D offrant une cohérence radiométrique dans les zones de recouvrement, il convient de corriger chaque image utilisée pour la coloration d'un des sous-nuages. Le processus d'égalisation se découpe alors en trois étapes principales :

- extraction de points de liaison;

- calcul d'une fonction scalaire de correction;

- application de la correction aux images.

À partir des points de liaison radiométriques obtenus par l'algorithme présenté en 3.4, il convient de déterminer une fonction scalaire de correction par image définissant un facteur multiplicatif d'égalisation pour chaque pixel de l'image (et pour tous les canaux présents). Les différentes méthodes d'estimation de modèles testées sont décrites en 3.6. L'application de la correction est une étape de traitement triviale de multiplication pixel à pixel.

## 3.4. Algorithme d'extraction des points de liaison radiométrique

### 3.4.1. Présentation de l'algorithme

Pour déterminer les corrections à apporter aux images, il faut d'abord extraire des points de liaison radiométrique de celles-ci. Pour la correction du visgnettage, l'utilisation des points SIFT s'était avérée pertinente et rapide (ces points étant de plus préalablement calculés au début de la chaîne de traitement photogrammétrique MicMac). Ici, ils ne sont pas adaptés. En effet, on ne cherche à corriger que la zone d'intérêt à partir de laquelle la couleur des points du nuage seront extraits : utiliser des points en dehors de cette zone reviendrait à affecter l'égalisation de l'image avec des phénomènes périphériques. Le décor ou le fond de la scène représentée n'ont pas lieu d'influer sur les corrections appliquées et comme il est généralement plus stable, on note une tendance à modérer les corrections (pourtant nécessaires) dictées par les points de liaison de la zone d'intérêt. Le temps de calcul serait également inutilement affecté par ces points. De plus, un point SIFT est un point caractéristique présentant des particularité par rapport à son environnement (il est notamment défini comme plus clair ou plus sombre que tous ses voisins) : il est donc peu représentatif de la teinte des points qui l'entourent.

Afin d'obtenir une bonne densité de points de liaison dans la zone d'intérêt, y compris sur des zones d'aplats de couleurs qui contiennent les informations les plus importantes pour ces travaux, on propose une méthode qui repose sur l'utilisation de modèles 3D issus de la corrélation dense.

Pour chaque image, on va parcourir tous les pixels indiqués par le masque de corrélation associé, chercher les coordonnées 3D de ces points sur le terrain et récupérer les points correspondants dans les autres images. Les informations 3D sont extraites des cartes de profondeur associées aux images. La figure 10 montre le processus de détection des points et de filtrage.

Comme on peut le remarquer sur la figure 11, la géométrie de la prise de vue pourrait causer la sélection de points non homologues. En effet, l'image capturée par la caméra ne représente que le premier point rencontra par la droite partant de la caméra dans une direction donnée (A pour les images 1 et 2, B pour l'image 3). Il convient donc de filtrer les points obtenus selon la position 3D recalculée pour chaque image. Si les positions des points 3D sont très proches pour au moins deux images différentes, les informations radiométriques et de positionnement seront enregistrées et rejetées dans le cas contraire.

**Définition de la notion de "proche".** Deux positions de point seront considérées proches si la distance les séparant est inférieure à une fraction de la résolution du pixel sol, valeur variant selon le pixel et extraite
<figure><img src="image_10.png" /><figcaption>**FIGURE 10** : Diagramme de l'algorithme de détection des points de liaison.</figcaption></figure>

de la carte de profondeur exploitée. Par expérience, on a choisi cette fraction égale à $\frac{1}{16}$. Ce seuil permet d'assurer d'une part la robustesse des points retenus et d'autre part l'extraction d'un nombre raisonnable de points (passer à $\frac{1}{8}$ double approximativement le nombre de points et quadruple le temps de calcul).

On suit donc l'algorithme présenté dans le schéma de la figure 10 en exploitant des images sous-résolues pour des raisons de vitesse de calcul, l'expérience montant que les résultats sont satisfaisants dès une sous-résolution de facteur 16.

Par exemple, pour une image de 12 Mpix sous résolue d'un facteur 16 comme celle présentée dans la fi-

gure 12, soit une dimension de $269 \times 179$, on génère en général entre 200 et 1000 points de ce type, en fonction de la géométrie de la scène, du masque associé et des autres images considérées.

<figure><img src="image_11.png" /><figcaption>**FIGURE 12** : 331 points de liaisons extraits de l'image 2 du jeu "Maison miniature".</figcaption></figure>

## 3.5. Limites de la méthode

Si cet algorithme de détection de points de liaison présente à la fois une bonne densité de points et une excellente robustesse géométrique, il présente également un problème handicapant : une forte dépendance à la qualité des nuages de points/cartes de profondeur sur lesquels il s'appuie. En effet, une faible qualité de la cohérence géometrique entre les différents sous-nuages desquelles les points sont extraits peut résulter en l'absence de détection de points de liaison car distance erronée entre les nuages empêchera le test anti-parties cachées de conclure à la validité du point.

D'autre part, dans certains rares cas, l'algorithme peut sélectionner des outliers si des nuages ont une colocalisation légèrement décalée, mais présentant des zones de recoupement. Dans ce cas, un point de liaison radiométrique présentant un coefficient de disparité inter-images très différent des autres points sera généré. Le risque étant ici une propagation de cette mauvaise correction. Un système de filtrage des points sortant trop fortement de la norme (±40% par exemple) doit donc être mis en place.

## 3.6. Choix du modèle

### 3.6.1. Modèle multiplicatif

Une première tentative a été de rechercher un facteur multiplicatif constant à appliquer à chacun des canaux radiométriques de chaque image pour obtenir une illumination moyenne semblable dans tout le jeu d'images (correction de gain). Si cette approche permet une égalisation globale, corrigeant ainsi des différences de balance des blancs ou de niveau de luminosité, elle ne permet pas de modéliser des effets d'illumination non homogènes (de type flash par exemple, toujours centré dans

<figure><img src="image_12.png" /><figcaption>**FIGURE 11** : Schéma de l'algorithme de détection des points de liaison.</figcaption></figure>
la direction – variable – de prise de vue). Un modèle plus complexe et donc plus adaptable à des éclairements non homogènes doit donc être mis en œuvre.

### 3.6.2. Modèle polynômial

Le premier type de modèle complexe testé a été un polynôme de correction par image, fonction des coordonnées (X,Y) du point. Avec G le niveau de gris du canal étudié et P un polynôme, on pose l'égalité 7.

$$G_{cor}(X, Y) = G(X, Y) * P(X, Y). \quad (7)$$

Le degré de ce polynôme peut varier en fonction de la complexité de la scène. Une suite de tests a amené à préférer un polynôme de degré 3.

On résoudra donc par des techniques d'estimation linéaire un système d'équations constitué à partir des points de liaison radiométrique, chacun de ces points procurant une équation du type de l'égalité 8 (avec $(X_i, Y_i)$ la position du point, $G_i$ son niveau de gris dans le canal considéré et $P_i$ le polynôme de correction pour l'image i).

$$G_1(X_1, Y_1) * P_1(X_1, Y_1) = G_2(X_2, Y_2) * P_2(X_2, Y_2). \quad (8)$$

Problème lié au modèle polynômial. Ce type de modèle présente un défaut flagrant : le système a pour solution triviale le polynôme nul, la résolution par moindres carrés résulte donc systématiquement à l'obtention de cette solution. En effet, si tous les points sont noirs, les différences de radiométrie dans les zones étudiées sont effectivement nulles. Ce résultat n'est évidemment pas recevable, toute l'information radiométrique étant perdue au cours du processus.

Pour éviter cette solution, il convient alors d'ajouter dans le processus de moindres carrés des équations de la forme (9) pour tout $i$ avec un fort poids tirant la convergence du processus vers une solution non nulle (avec $\alpha$ le coefficient de degré 0 des polynômes de correction) :

$$\alpha_i = 1. \quad (9)$$

Cette solution n'est cependant pas suffisante, car un polynôme non nul brûlant (en mettant les pixels à la valeur maximale de 255) ou noircissant la zone d'intérêt est toujours possible. De nombreux tests utilisant les moindres carrés, l'algorithme de RANSAC classique ou une version modifiée affectant le score d'une solution en fonction du nombre de pixel brûlé/noirci ont montré l'inefficacité de la méthode.

## 3.7. Une approche plus locale, le modèle interpolé

### 3.7.1. Justification de l'approche

Les défauts que l'on cherche à corriger ont en fait des origines très locales : matériaux non lambertiens, variabilité de l'éclairage... Il semble donc intéressant d'explorer des méthodes de correction plus sensibles aux voisinages qu'à la globalité de l'image.

<figure><img src="image_13.png" /><figcaption>FIGURE 13 : Images mal corrigées : image noircie (gauche) et brûlée (droite).</figcaption></figure>

Il a été établi que la couleur d'un point d'un objet est différent selon le point de vue. Dans de nombreux cas, un point va être vu depuis plus de deux images. Dans ce cas, l'algorithme doit être capable de moyenner les influences des multiples images, qui peuvent être opposées ou concordantes. Ainsi, on va traître simultanément toutes les images pour calculer les facteurs de correction.

### 3.7.2. Algorithme

Pour chaque image, on se propose de déterminer une fonction scalaire définie sur l'image via une interpolation sur les points de liaison générés par l'algorithme décrit en 3.4 de type :

- X et Y les coordonnées en pixel du point dans l'image;

- $K_{ij}$ le rapport $(1 + G_j/G_i)/2$ avec $i$ l'image traitée et $j$ l'autre image du couple ayant généré le point, avec un rappel à l'image $i$.

Afin d'égaliser les images entre elles, on va appliquer une correction interpolée aux points de liaison de toutes les images sur plusieurs itérations (5 sont en général suffisantes pour converger). L'interpolation se fait en pondérant par l'inverse de la distance selon la formule 10 (où $n$ est le nombre de points de liaison pour l'image concernée, $(X_i, Y_i, K_i)$ les valeurs du point de liaison courant et $(X_j, Y_j)$ la position du point de liaison dont la correction est en train d'être estimée) :

$$Cor(Pt_j) = \sum_{i=1}^{n} \frac{K_{ij}}{\sqrt{(X_i - X_j)^2 + (Y_i - Y_j)^2}}. \quad (10)$$

On va ensuite générer une fonction scalaire définie sur les images ayant servi à l'extraction des points de liaison, donc sous résolues. Pour tout $(X, Y)$ de cette fonction, une valeur du facteur de correction est interpolée à partir des points de liaison égalisés précédemment selon la formule 11.

$$Cor(X, Y) = \sum_{i=1}^{n} \frac{K_i}{\sqrt{(X_i - X)^2 + (Y_i - Y)^2}}. \quad (11)$$

Une valeur multiplicative devant ensuite être appliquée à chaque point de l'image corrigée en sortie, elle est interpolée bilinéairement à partir de cette grille sous-échantillonnée vers une grille de la résolution de l'image initiale.
<figure><img src="image_14.png" /><figcaption>**FIGURE 14** : Diagramme de l'algorithme d'égalisation.</figcaption></figure>

### 3.7.3. Fonctionnement pour plus d'une image

Si une image a plus d'une "voisine", sa correction va être influencée par toutes ses voisines. Les points de liaison étant réciproques, les influences seront croisées. Ainsi, si lors du traitement d'une image "A", un point de liaison triple est plus clair sur l'image "B" et plus sombre sur l'image "C", les influences vont être moyennées et le point peu affecté. Par contre, les images "B" et "C" se verront égalisées pour se rapprocher de la moyenne des trois images.

Les figures 15 et 16 montrent les fonctions scalaire de correction de deux images adjacentes (respectivement les images 2 et 3 du jeu d'images présenté en 3.8.1), influencées par les autres images périphériques. La zone de gauche de l'image 3 n'est que très légèrement réhaussée car l'image 4 est de couleur semblable, sauf sur le haut de la cheminée où l'image 2, plus claire, a une influence. Sur la droite de l'image, le facteur de multiplication est plus fort (environ x1.35) pour se mettre en accord avec l'image 2 qui se voit parallèlement forte-ment divisée (x0.75) sur cette même zone, l'écart moyen (le "K") de 2 vers 3 étant d'environ 1.35/0.75 = 1.8 sur cette zone.

<figure><img src="image_15.png" /><figcaption>**FIGURE 15** : Fonction scalaire de correction pour l'image 2 du jeu "Maison miniature".</figcaption></figure>

<figure><img src="image_16.png" /><figcaption>**FIGURE 16** : Fonction scalaire de correction pour l'image 3 du jeu "Maison miniature".</figcaption></figure>

## 3.8. Analyse des résultats

Bien que l'objectif des traitements ici présentés soit de portée principalement esthétique et que qualifier leur réussite se fasse surtout par la visualisation des résultats, une analyse statistique montre également les améliorations de cohérence apportées par les algorithmes.

La variable étudiée est la répartition des valeurs $G_j/G_i$, qui représentent la disparité entre les radiométries des images dont sont issus les points de liaison. Plus une valeur est proche de 1, plus la cohérence radiométrique est forte, et inversement.

Pour l'analyse, on va s'appuyer sur l'effet des algorithmes sur la qualité de la minimisation d'un critère qu'ils cherchent explicitement à minimiser. Cependant, l'analyse de l'efficacité de cette minimisation permet d'évaluer la qualité des résultats.

### 3.8.1. Jeu test "Maison miniature"

Le jeu d'images "Maison miniature" a été photographié et traité directement au laboratoire. Il représente une maquette de maison écossaise nommée "Fisherman's Wharf" de dimension approximative de
<figure><img src="image_17.png" /><figcaption>**FIGURE 17** : les 5 images principales du jeu "Maison miniature".</figcaption></figure>

12×7×8 cm, réalisée d'après un design de David Winter de 1983.

<figure><img src="image_18.png" /><figcaption>**FIGURE 18** : Positions des caméras et des points de liaison du jeu "Maison miniature".</figcaption></figure>

Il se compose de 36 images convergentes réparties en une hemisphère autour de l'objet. Les 5 groupes d'images permettant la corrélation dense ont été extraits de cette demi-sphère et sont respectivement des vues de la face, de l'envers, des deux côtés et du dessus de l'objet. La maquette est centrée dans les images et occupe un peu plus d'un neuvième de celles-ci.

L'éclairement des images a légèrement subi l'ombre portée du photographe pendant la prise de vue pour les images "de face". La luminosité était cependant plutôt stable et aucun flash n'a été utilisé.

La prise de vue a été effectuée avec un Nikon D90. Les paramètres choisis pour cette prise de vue étaient une priorité à l'ouverture fixée à F/5, une focale de 52mm et un ISO-200.

### 3.8.2. Résultats du processus d'égalisation

On peut aisément visualiser les résultats des traitements sur le jeu test "Maison miniature" dans la figure 19. En effet, le sous-nuage en bas à gauche qui était plus sombre que le sous-nuage en haut à droite se retrouve éclairci et il devient délicat de distinguer la rupture entre les deux sous-nuages.

Le tableau 1 montre l'amélioration statistique de la cohérence radiométrique. On voit en effet que l'écart-

type des coefficients de disparité est en recul de 30%. De même, la figure 20 montre une distribution bien plus centrée après le traitement. Cette concentration des valeurs autour de 1 indique qu'une large majorité des points de liaison radiométrique ont une couleur très proche dans les différentes images dont ils sont issus, ce qui est l'objectif des traitements.

<table><caption>**TABLE 1** : Statistiques du jeu "Maison miniature".</caption><thead><tr><td>G<sub>j</sub>/G<sub>i</sub></td><td>Original</td><td>Traité</td></tr></thead><tbody><tr><td>Minimum</td><td>0,49</td><td>0,44</td></tr><tr><td>Maximum</td><td>2,04</td><td>2,26</td></tr><tr><td>Moyenne</td><td>1,03</td><td>1,01</td></tr><tr><td>Écart-type</td><td>0,23</td><td>0,16</td></tr></tbody></table>

<figure><img src="image_19.png" /><figcaption>**FIGURE 20** : Répartition des 1791 facteurs $G_j/G_i$ - Maison miniature.</figcaption></figure>

## 3.9. Conclusion : améliorations possibles et pistes de recherche

On a vu ici des algorithmes d'égalisation radiométrique d'ensembles d'images dans le cadre de la fusion de nuages de points 3D. Ceux-ci présentent des résultats plutôt convaincants tant visuellement que statistiquement. Il est bien sûr possible d'envisager des concepts plus précis, efficaces et polyvalents dans le cadre de recherches futures.

L'algorithme ici présenté a été implémenté dans la librairie MicMac (Pierrot-Deseilligny, 2014a), section 7.4, sous le nom de commande Arsenic (pour *Automated Radiometric Shift Equalization and Normalization for Inter-image Correction*).

## 3.10. Autres pistes de reflexions

D'autres pistes de réflexion nous semblent intéressantes mais n'ont pu être traitées ici, ni, à notre connaissance et à date, dans la littérature.

### 3.10.1. Estimation de la BRDF

Un premier concept qu'il semble intéressant d'explorer est une correction par estimation du BRDF (*Bidirectional Reflectance Distribution Function*, cf. figure 21). En effet, la correction alors effectuée serait
<figure><img src="image_20.png" /><figcaption>**FIGURE 19** : Nuage original (gauche) et corrigé (droite) - Maison miniature.</figcaption></figure>

basée sur la physique des objets et serait donc plus propre, faisant fi de l'éclairage lors de la prise de vue. Cependant, une telle correction nécessite une estimation d'un paramètre complexe pour chaque point terrain, et donc des données en entrée très volumineuses qui ne sont pas produites par un logiciel comme MicMac dans le cadre de la chaîne de traitement "normale".

Une approche de la correction du BRDF est évoquée dans (Coubard et al., 2011), mais est encore à ses début s.

<figure><img src="image_21.png" /><figcaption>**FIGURE 21** : Différents exemples de BRDF possibles d'un point ©D. McAllister, NVIDIA.</figcaption></figure>

### 3.10.2. Blending 3D

Un autre concept qui semble prometteur est le blending 3D. Il consisterait à repérer les points proches et ajuster/moyenner leurs radiométries. L'approche simple ne serait cependant pas suffisante, l'intersection d'un nuage blanc et d'un nuage noir donnerait un nuage gris et l'impression de trois zones distinctes. La problématique serait donc de réussir à mettre en place un système

de moyennes pondérées en fonction de la proximité des points aux nuages adjacents, par exemple en fonction de la distance du point au centre de gravité de chaque sous-nuage.

## 4. Conclusion

Les algorithmes ici présentés sont une première étape dans le domaine de l'égalisation radiométrique de nuages de points 3D. Ils ne sont cependant pas parfaits et peuvent être mis en échec dans certains cas, notamment sur des objets trop brillants présentant des réflexions spéculaires ou de variations radiométriques trop importantes. Il semble clair que ce domaine nécessite et mérite encore l'attention des photogrammètres, la popularité des produits de type nuage de points et leurs maillages associés étant grandissante. Par exemple, la reproduction par impression 3D nécessite une bonne qualité radiométrique. On ne peut donc qu'espérer que l'occasion d'approfondir ce domaine et d'explorer de nouvelles pistes se présentera au plus vite, mettant ainsi à la disposition de la communauté des outils et algorithmes encore plus efficaces et polyvalents.

## Remerciements

Ces travaux ont été financés par le projet Culture 3D et supervisés par Marc Pierrot-Deseilligny (IGN) dans le cadre d'un stage de fin d'études de l'ENSG (Champs-sur-Marne). Je remercie les membres du Laboratoire de Géomatique Appliquée (IGN/LGA), du projet Culture3D et du Département d'Imagerie Aérienne et Spatiale (IGN / ENSG / DIAS) pour leur aide, conseils et soutien durant la conduite de ces recherches. Je remercie également
les relecteurs anonymes de la RFPT pour leurs conseils
et remarques avisés.

Références

Allene, C., Pons, J.-P., Keriven, R., 2008. Seamless image-
based texture atlases using multi-band blending. In : Inter-
national Conference on Pattern Recognition. pp. 1–4.

Brown, M., Lowe, D. G., 2007. Automatic panoramic image stit-
ching using invariant features. International Journal of Com-
puter Vision 74 (1), 59–73.

Chandelier, L., Martinoty, G., 2009. A radiometric aerial triangu-
lation for the equalization of digital aerial images and orthoi-
mages. Photogrammetric Engineering and Remote Sensing
Vol. 75, No. 2, pp 193-200.

Coubard, F., Brédif, M., Paparoditis, N., Briottet, X., 2011. Reflectance estimation from urban terrestrial images : Validation of a symbolic ray-tracing method on synthetic data. The International Archives of Photogrammetry, Remote Sensing and Spatial Information Sciences XXXVIII-3/W22.

Fischler, M. A., Bolles, R. C., 1981. Random sample consens-
sus : A paradigm for model fitting with applications to image
analysis and automated cartography. Commun. ACM 24 (6),
381–395.

Goldman, D. B., Chen, J.-H., 2005. Vignette and exposure cal-
ibration and compensation. In : International Conference on
Computer Vision. Beijing, China.

Lempitsky, V., Ivanov, D., 2007. Seamless mosaicing of image-
based texture maps. In : IEEE Conference on Computer Vi-
sion and Pattern Recognition. Minneapolis, USA, pp. 1–6.

Lowe, D. G., 2004. Distinctive image features from scale-
invariant keypoints. International Journal of Computer Vision
60 (2), 91–110.

Pierrot-Deseilligny, M., 2014a. MicMac, Apero, Pastis and Other Beverages in a Nutshell! LGA, IGN, Champs-Sur-Marne, France.

Pierrot-Deseilligny, M., 2014b. Micmac webpage (accessed 3
march 2014.
URL http://logiciels.ign.fr/?-Micmac,3-.

Purnomo, B., Cohen, J. D., Kumar, S., 2004. Seamless texture atlases. In : Eurographics – ACM SIGGRAPH symposium on Geometry processing. Nice, France, pp. 65–74.