| Majeure
"Mathématiques et Informatique" Enseignement d'approfondissement "Images: Analyse et Synthèse" |
David
Hockney, Place Furstenberg, Paris, 7,8 et 9 Août
1985 #1
Collage Photographique, 88.9 x 80 cm, Collection personnelle
Cette images n'est pas une reconstruction panoramique,
il s'agit d'une vision d'artiste d'une petite place parisienne
Projet réalisé par Paul Teyssier
Description du projet.
De magnifiques panoramas sont souvent trop larges pour qu’un appareil photo sans objectif particulier puisse en donner un aperçu.
La reconstruction panoramique ou mosaicing , sujet de cet Enseignement d’ Approfondissement, consiste à reconstituer une image continue à partir de fragments obtenus en photographiant la scène réelle considérée par morceaux ayant une zone de recouvrement.
Les application de cette technique sont très larges :
Le programme réalisé reconstitue un panorama continu à partir d’images présentant des coins facilement détectables.
Algorithmes utilisés.
Pour reconstituer un panorama à partir d'un grand nombre d'images, étudions d'abord comment associer deux images ayant une zone de recouvrement, technique qui sera ensuite appliquée de proche en proche pour l'ensemble des images d'origine.
Il s'agit de détecter des points d'intérêt sur chaque image de façon à pouvoir, sur la zone de recouvrement, associer ces derniers deux à deux avant de calculer une transformation envoyant ces points particuliers de la première image, que l'on prendra comme référence dans un premier temps, sur ceux de la deuxième.
1 Détection de points particuliers : les coins.
Les condition d'éclairement de deux images d'une scène photographiées d'un même point, mais selon deux orientations différentes, induisent de grandes différences quant à la valeur normalisée de l'intensité lumineuse en chaque point de l'image. Deux points images d'un unique point de la scène d'origine, dont on dira dorénavant qu'ils sont associés, peuvent avoir une intensité lumineuse très différente. Dès lors, il faut avoir accès à des points associés détectables malgré des variations d'éclairage fortes. Pour ce faire, on considérera points présentant un fort rayon de courbure : les coins. Pour extraire ces dernières, on applique un filtre sur l'image considérée en niveaux de gris correspondants aux intensités lumineuses, selon le détecteur de Harris :
Où Ix et Iy sont les résultats du lissage de l'image en niveaux de gris I(x,y), Ix et Iy indiquant une dérivation dans la direction de x et de y respectivement. L'image résultante est seuillée en fonction du nombre de coins désirés, les points de plus haute intensité correspondant aux angles les plus vifs.
2 Détermination des points associés.
Dans l'optique de déterminer
la transformation qui envoie les points de la première image sur ceux de la
deuxième, il faut, dans le cas idéal, connaître les coordonnées des points associés.
L'algorithme utilisé fonctionne de la façon suivante :
1. Pour chaque coin
dans l'image de référence :
2. Détermination
d'une fenêtre de recherche dans la deuxième image, cette étape demande une connaissance
au préalable du mouvement effectué entre chaque photographie.
3. Pour chaque coin dans cette fenêtre de recherche : on note le score suivant,
associé au couple des deux coins :
Ce score représente la
corrélation entre une fenêtre dite de corrélation autour du premier point et
une autre autour du second. Des fenêtres identiques induisent un score de 1,
des fenêtres très différentes un score de -1.
4. Enfin, les scores et les couples stockés dans une liste, on ne garde que
les couples dont le score est supérieur à une valeur seuil.
Si les paramètres sont réglés pour chaque images, ils est possible d'avoir déterminé
exactement les points associés. Dans la plupart des cas, les couples détectés
ne correspondent pas nécessairement dans la réalité. De tels points sont appelés
outliers .Ils doivent être détectés par la suite pour ne pas conduire à une
construction erronée.
3 Approximation de l'homographie correspondante.
Deux images provenant de la vue d'une scène panoramique à partir d'un même point, ou provenant d'une scène plane depuis plusieurs points différents, sont liées par une transformation appelée homographie. Les images (x',y')i du point (x,y)i par une telle transformation sont de la forme :
L'idée est maintenant de minimiser E, la somme des distances au carré entre les images des coins d'une image et ceux de l'image de référence. L'homographie f minimisant cette grandeur propose le meilleur recouvrement possible.
Cette grandeur est minimale quand l'homographie propose le meilleur recouvrement possible compte tenu des coins détectés. Le minimisation de cette fonction quadratique à 8 paramètres est assurée par la méthode de Levenberg-Marquardt décrite dans Numerical recipes in C. La meilleure homographie déterminée pour les coins, on peut tester à nouveau cette dernière pour estimer quels couples de coins associés sont en fait des outliers. Puis raffiner à nouveau l'approximation de l'homographie. Il reste à appliquer cette homographie sue l'image de départ et à fusionner l'image de référence et la seconde image transformée.
Résultats.
Les résultats présentés ci-dessous ont été réalisé avec des outils classiques et proposant de réaliser des reconstructions panoramiques selon des techniques du type de celles décrites ci dessus. Ces outils sont PTSticher et ses Panorama tools de Helmut Dersch pour Photoshop et le logiciel Photovista de LivePicture.
Reconstruction à
partir de deux images.
(Cliquez sur l'image pour les voir en haute définition)
Voici un aperçu des résultats qu'il est possible d'obtenir avec
de telles techniques.
Vue panoramique
de l'Ecole Polytechnique
16 images.
Réalisé avec les outils mentionnés ci-dessous.
(Cliquez sur l'image pour la voir en haute définition)
Ecole Polytechnique,
les souterrains.
13 images.
Réalisé avec les outils mentionnés ci-dessous.
(Cliquez sur l'image pour la voir en haute définition)
Références
Outils très utiles