MASTER Ingénierie des Systèmes Industriels et des Projets SPÉCIALITÉ : SYSTÈMES DYNAMIQUES ET SIGNAUX. Année 2008/2009



Documents pareils
Cartographie Mobile à MINES ParisTech

Traitement bas-niveau

LIDAR LAUSANNE Nouvelles données altimétriques sur l agglomération lausannoise par technologie laser aéroporté et ses produits dérivés

Analyse Sémantique de Nuages de Points 3D et d Images dans les Milieux Urbains


Comparaison de Relevés 3D issus de plusieurs Systèmes de Numérisation

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

Réalité virtuelle au service de la maintenance

Extraction et reconstruction de bâtiments en 3D à partir de relevés lidar aéroportés

Opérations de base sur ImageJ

Les algorithmes de base du graphisme

N. Paparoditis, Laboratoire MATIS

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Détection des deux roues motorisés par télémétrie laser à balayage

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Master IMA - UMPC Paris 6 RDMM - Année Fiche de TP

Fonctions de plusieurs variables

NOTE SUR LA MODELISATION DU RISQUE D INFLATION

Introduction au datamining

Calage robuste et accéléré de nuages de points en environnements naturels via l apprentissage automatique

Introduction au Data-Mining

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

ÉTUDE DE L EFFICACITÉ DE GÉOGRILLES POUR PRÉVENIR L EFFONDREMENT LOCAL D UNE CHAUSSÉE

Extraction d informations stratégiques par Analyse en Composantes Principales

Apprentissage Automatique

Programme scientifique Majeure INTELLIGENCE NUMERIQUE. Mentions Image et Réalité Virtuelle Intelligence Artificielle et Robotique

La classification automatique de données quantitatives

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Algorithme des fourmis appliqué à la détection et au suivi de contours dans une image

Franck VAUTIER, Jean-Pierre TOUMAZET, Erwan ROUSSEL, Marlène FAURE, Mohamed ABADI, Marta FLOREZ, Bertrand DOUSTEYSSIER

1 La visualisation des logs au CNES

L utilisation du lidar terrestre en foresterie. Richard Fournier Département de géomatique appliquée

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :

Détection des points d intérêt et Segmentation des images RGB-D. Présentée par : Bilal Tawbe. Semaine de la recherche de l UQO

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Dan Istrate. Directeur de thèse : Eric Castelli Co-Directeur : Laurent Besacier

L Avenue Digital Media. L aménagement du territoire à travers la maquette 3D. créateur de mondes virtuels

Préparé au Laboratoire d Analyse et d Architecture des Systèmes du CNRS

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Classification Automatique de messages : une approche hybride

Optimisation de la compression fractale D images basée sur les réseaux de neurones

Société de Geo-engineering

Communications immersives : Enjeux et perspectives

Echantillonnage Non uniforme

SLAM Visuel 3D pour robot mobile autonome

données en connaissance et en actions?

L apprentissage automatique

Traitement d un AVI avec Iris

Intégration et probabilités TD1 Espaces mesurés Corrigé

Synthèse d'images I. Venceslas BIRI IGM Université de Marne La

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Celestia. 1. Introduction à Celestia (2/7) 1. Introduction à Celestia (1/7) Université du Temps Libre - 08 avril 2008

C.F.A.O. : Conception et Fabrication Assistées par Ordinateur.

Modèle de troncature gauche : Comparaison par simulation sur données indépendantes et dépendantes

Reconnaissance de visages 2.5D par fusion des indices de texture et de profondeur ICI 12/12/12

Projet Matlab : un logiciel de cryptage

Projet de Traitement du Signal Segmentation d images SAR

Le Scanner 3D Dynamique

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

GEOLOCALISATION ET NAVIGATION A L AIDE DES SIGNAUX GNSS

Filière MMIS. Modélisation Mathématique, Images et Simulation. Responsables : Stefanie Hahmann, Valérie Perrier, Zoltan Szigeti

Projet Matlab/Octave : segmentation d'un ballon de couleur dans une image couleur et insertion d'un logo

Géométrie discrète Chapitre V

CREG : versailles.fr/spip.php?article803

Exemple d application en CFD : Coefficient de traînée d un cylindre

3 Approximation de solutions d équations

un module de simulation des évolutions urbaines Présentation

Optimisation, traitement d image et éclipse de Soleil

Algorithmes pour la planification de mouvements en robotique non-holonome

BASE. Vous avez alors accès à un ensemble de fonctionnalités explicitées ci-dessous :

Chapitre 0 Introduction à la cinématique

Initiation à LabView : Les exemples d applications :

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Compte-rendu Réunion générale. Grenoble, le 29 juin 2011 URBASIS

ADELIE. Alerte-DEtection-Localisation-IncendiE. Documentation du logiciel Interface Homme / Machine du poste opérateur

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION

Mario Geiger octobre 08 ÉVAPORATION SOUS VIDE

TP : Gestion d une image au format PGM

PAUL CORREIA 6 e édition

Cours de numérisation sur Epson Perfection

Laboratoire d informatique Gaspard-Monge UMR Journée Labex Bézout- ANSES

Introduction au Data-Mining

BACCALAURÉAT GÉNÉRAL SÉRIE SCIENTIFIQUE

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Système à enseigner : Robot M.I.M.I. MultipodeIntelligent à Mobilité Interactive. Version 1.0

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs)

Chapitre 2 : Caractéristiques du mouvement d un solide

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de

F210. Automate de vision hautes fonctionnalités. Caractèristiques. Algorithmes vectoriels

Recherche d'images par le contenu Application au monitoring Télévisuel à l'institut national de l'audiovisuel

INF6304 Interfaces Intelligentes

INTRODUCTION AU DATA MINING

Mini projet n 1 DOSSIER DE CONCEPTION Clef USB

LES LOIS PHYSIQUES APPLIQUÉES AUX DEUX-ROUES : 1. LA FORCE DE GUIDAGE

Chapitre 2 Le problème de l unicité des solutions

Pentaho Business Analytics Intégrer > Explorer > Prévoir

Cours IV Mise en orbite

Transcription:

MASTER Ingénierie des Systèmes Industriels et des Projets SPÉCIALITÉ : SYSTÈMES DYNAMIQUES ET SIGNAUX Année 2008/2009 Mémoire de Master SDS Présenté et soutenu par : Islem JEBARI le 26 août 2009 Au sein de l Institut des Sciences et Techniques de l Ingénieur d Angers Recalage de données 3D aériennes et terrestres pour cartographie numérique Président Laurent Hardouin Jury Professeur Université d Angers Examinateurs Luc Jaulin Philippe Declerck Professeur ENSIETA Maître de conférences Encadrants du stage François Goulette Taha Ridene Antoine Manzanera HDR Mines ParisTech Ingénieur de Recherche Mines ParisTech Enseignant chercheur ENSTA ParisTech Laboratoires Centre de Robotique CAOR, Mines ParisTech Laboratoire Electronique et Informatique, ENSTA ParisTech

Titre: Recalage de données aériennes et terrestres pour cartographie numérique Mots clés: Systèmes de Cartographie Mobile, Recalage Rigide, Filtrage, Segmentation. Sujet du stage: Le développement des bases de données cartographiques 3D a augmenté de façon considérable ces dernières années, se caractérisant par des portées à différentes échelles (nationale, Européenne, internationale). Dans le cadre du projet TerraNumerica lancé par le pôle de compétitivité cap digital, le centre de robotique de Mines ParisTech participe à la production de modèles 3D géo-référencés texturés et réalistes de la ville de Paris. Pour la réalisation de ces modèles 3D, des approches basées sur des méthodes de fusion et de mise en cohérence de données aériennes et terrestres multi sources (MNS Modèle Numérique de Surface, nuage de points 3D issu d un Système de Cartographie Mobile, nuage de points 3D issu d un scanner laser fixe ) sont utilisées. Ces méthodes sont précédées par des traitements, tels que le filtrage et le recalage. L objet du stage est le recalage rigide de données 3D. Title: Registration of air and terrestrial data for numerical cartography Key words: Mobile Mapping Systems, Rigid Registration, Filtering, Segmentation. Internship subject: The development of 3D mapping databases is a matter of increasing interest. Databases have recently been developed at different scales (national, European, international). Within the Cap Digital Business Cluster TerraNumerica project, the centre of robotics of Mines ParisTech produces 3D models (geo-referred, textured and realistic) of urban environment inside Paris. To realize these 3D models, we use some approaches based on methods of fusion of areal and terrestrial multi sources data (DSM Digital Surface Model, 3D point clouds issued from a Mobile Mapping System, 3D point clouds issued from a scanner fix ). These methods are preceded by pre-processing, such as filtering and registration. The object of the internship is about rigid registration of 3D data.

Remerciements Remerciements Je tiens à exprimer mes remerciements et ma gratitude à tous ceux qui ont voulu apporter l assistance nécessaire au bon déroulement de mon stage. En particulier, j exprime ma très grande reconnaissance à Monsieur François GOULETTE et Monsieur Taha RIDENE pour la confiance qu ils m ont accordée en acceptant de m encadrer, la pertinence de leurs conseils, leurs rigueurs scientifiques, leurs soutiens sans faille et leurs disponibilités pour répondre à mes questions et mes attentes. Par la même occasion, j adresse mes remerciements à Monsieur Antoine MANZANERA pour sa disponibilité, ses conseils et son aide. Un grand merci à mes collègues de travail pour leur accueil et la bonne ambiance qui régnait tout au long du stage.

Table des matières Table des matières 1. Introduction... 7 1.1. Contexte général... 7 1.2. Sujet scientifique... 8 1.2.1. Présentation des données... 8 1.2.2. Présentation de la plateforme Lara3D... 9 1.3. Motivations... 11 2. Etat de l art du recalage 3D... 13 2.1. Recalage rigide : Iterative Closest Point (ICP)... 14 2.2. Recalage rigide : approches morphologiques... 14 3. Déroulement du stage... 16 3.1. Expérimentation... 16 3.2. Chaîne de traitement... 19 4. Extraction du plan 2D des données Lara 3D... 22 4.1. Première approche : recherche de la trace au sol des façades... 22 4.1.1. Seuillage en z des points 3D... 23 4.1.2. Récupération de la trace au sol des façades... 24 4.2. Deuxième approche : détermination de plans par RANSAC... 28 4.3. Comparaison des deux approches... 32 5. Extraction du plan 2D des données MNS... 33 5.1. Structure des données MNS... 33 5.2. Expérimentation sur MNS... 33 6. Recalage 2D des données Lara3D et MNS... 36 7. Conclusion... 39 Références bibliographiques... 40 Annexes... 42 Annexe 1: Structure des données MNS... 42 Annexe 2: Décomposition en Valeurs Singulières 2D... 43 Annexe 3: ANN (Approximate Nearest Neighbor) [18]... 44 Annexe 4: Planning du stage... 46

Table des figures Table des figures Figure 1. Le prototype Lara3D-version 2008.... 7 Figure 2. Principaux axes scientifiques et techniques de l équipe MMS.... 8 Figure 3. Rue Soufflot et demi tour de la place du Panthéon numérisés par Lara3D.... 9 Figure 4. MNS 3D (gauche [1]) et MNS 2.5D (droite) de la zone d étude autour du Panthéon au 5 ème arrondissement de Paris.... 9 Figure 5. 1080 points par profile d acquisition de Lara3D.... 9 Figure 6. Cartographie 3D de la rue Soufflot (5 ème arrondissement de Paris) avec Lara3D [1].... 10 Figure 7. Le logiciel RT-Maps - vue générale de l interface.... 10 Figure 8.Zone de numérisation au 5 ème arrondissement de Paris. Le rassemblement des tronçons de numérisation acquis séparément (différentes couleurs) fait apparaître des décalages et une incohérence sur l ensemble des données [3].... 11 Figure 9. Synthèse des Méthodes de recalage automatiques.... 13 Figure 10. Principe général de l algorithme ICP.... 14 Figure 11. Les données synthétiques nuage de point 3D «bunny».... 17 Figure 12. Les données synthétiques nuage de point 3D «foot».... 17 Figure 13. Les données réelles «section segmentée de la rue Soufflot au 5 ème arrondissement de Paris».... 18 Figure 14. Chaîne de traitement du module «Initialisation du recalage».... 20 Figure 15.Nuage de point 3D Lara3D sur une portion de la rue Soufflot 5 ème arrondissement de Paris, en bleu représentation de la trace au sol.... 21 Figure 16. MNS 5 ème arrondissement de Paris, en rouge représentation de la trace au sol sur la rue Gay Lussac.... 21 Figure 17. Méthodes utilisées pour la segmentation 3D.... 22 Figure 18. Algorithme : seuillage en z des points 3D.... 23 Figure 19. Résultat : extraction de la route du nuage de points 3D du boulevard Saint Michel.... 24 Figure 20. Récupération de la trace au sol des façades.... 24 Figure 21. Algorithme: récupération de la trace au sol des façades.... 25 Figure 22. Estimation du nombre exact de points par profile.... 26

Table des figures Figure 23. Persistance des points 3D parasites.... 26 Figure 24. Trajectoire du véhicule Lara3D sur la Rue Soufflot.... 27 Figure 25. Algorithme: récupération de la trace au sol des façades en utilisant la trajectoire de la voiture.... 27 Figure 26. Limites de l utilisation de la trajectoire de la voiture Lara3D.... 28 Figure 27. Algorithme de RANSAC.... 29 Figure 28. Résultat : détection de plans avec RANSAC (partie du boulevard Saint Michel).... 30 Figure 29. Détection des plans dans le boulevard Saint Michel (données sans seuillage), début(a) - milieu(b) - fin(c).... 31 Figure 30. Détection des plans dans le boulevard Saint Michel (données après seuillage), début(a) - milieu(b) - fin(c).... 31 Figure 31. Principe de la stéréoscopie aéroportée.... 33 Figure 32. Lecture (a) et détection de contours (b) d une image Tiff avec IrfanView.... 34 Figure 33. Détection de la trace au sol des données MNS.... 34 Figure 34. Processus global du recalage 3D.... 36 Figure 35. Données Lara3D (en bleu) et données MNS 3D (en noir) du boulevard Saint Michel.... 37 Figure 36. Données segmentées du boulevard Saint Michel : MNS (figure (a)), Lara3D (figure (b)). 37 Figure 37. Superposition des résultats de segmentation des données Lara3D (en bleu) et des données MNS 3D (en noir) du boulevard Saint Michel.... 37 Figure 38. Les tags les plus importants pour le format Tiff.... 42 Figure 39. Construction d un kd-tree... 44 Figure 40. Algorithme : Construction d un kd-tree... 45 Figure 41. (a) Ensemble de points. (b) Décomposition en buckets. (c) Construction de l arbre... 45 Figure 42. Planning du stage... 46 6

Introduction 1. Introduction 1.1. Contexte général Le stage se déroule au sein de l équipe MMS (Mobile Mapping System, Système de Cartographie Mobile) du centre de robotique de l École des Mines de Paris. Le travail s inscrit dans le cadre du projet TerraNumerica du pole de compétitivité Cap Digital. Les Systèmes de Cartographie Mobile répondent à un besoin émergent et croissant de production de bases de données cartographiques 2D/3D qui sont recommandées par de nombreuses applications : aide à la conduite (GPS), touristiques, militaires Depuis plusieurs années, l équipe MMS conçoit, développe et améliore un prototype, la plateforme Lara3D (cf. Figure 1). Il s agit d un véhicule équipé de deux types de capteurs: (1) capteurs de localisation (GPS différentiel, centrale inertielle, odomètre) ; (2) capteurs de perception (scanner laser à balayage, caméras). Lara3D est utilisée pour la numérisation 3D d environnements urbains et routiers. Figure 1. Le prototype Lara3D-version 2008. Les principaux axes scientifiques et techniques sur lesquels travaille l équipe MMS sont (cf. Figure 2) : Numérisation et Modélisation 3D : la production de modèles 3D géo référencés et texturés d environnement urbain et routier ; Localisation : l amélioration de la qualité des trajectoires et de la localisation du véhicule ; Réalisation de cartographie urbaine complète : la fusion de données hétérogènes et la fusion de différentes représentations 3D pour la réalisation d une représentation compacte de villes. 7

Introduction Figure 2. Principaux axes scientifiques et techniques de l équipe MMS. 1.2. Sujet scientifique Le stage s inscrit dans le cadre du recalage rigide appliqué à des données 3D hétérogènes. Le but final étant de produire une base de données cartographique 3D à l échelle du 5 ème arrondissement de Paris. 1.2.1. Présentation des données L ensemble des données 3D traitées comporte essentiellement deux types de données: o o Nuages de points 3D issus du Système de Cartographie Mobile Lara3D, la plateforme de numérisation du centre de robotique (cf. Figure 3). MNS (Modèle Numérique de Surface) : produit par des techniques de corrélation d images aériennes (cf. Figure 4). Ces données sont livrées par l IGN (Institut Géographique National). 8

Introduction Figure 3. Rue Soufflot et demi tour de la place du Panthéon numérisés par Lara3D. Figure 4. MNS 3D (gauche [1]) et MNS 2.5D (droite) de la zone d étude autour du Panthéon au 5ème arrondissement de Paris. 1.2.2. Présentation de la plateforme Lara3D Le système de cartographie à base de laser du véhicule Lara3D (cf. Figure 6) permet de collecter un nuage de points 3D de la scène de navigation du véhicule. En effet, il effectue un balayage circulaire dans le plan perpendiculaire au déplacement du véhicule et échantillonne ainsi le milieu entourant la voiture. Un balayage complet du télémètre fournit un profile de 1080 points comme le montre la Figure 5. Figure 5. 1080 points par profile d acquisition de Lara3D. 9

Introduction Cet ensemble de 1080 points constitue un profile de données formé des échantillons irréguliers de l environnement urbain. Etant donné que la résolution angulaire est constante et égale à 0.25, la distance entre deux échantillons successifs varie entre quelques centimètres pour les objets proches du télémètre et quelques mètres pour les objets les plus lointains. Chaque profile est constitué de sous-groupes de nuages de points, chaque sous-groupe étant constitué de l échantillonnage d un profile d un objet 3D existant dans la scène mesurée (des échantillons de la route, des arbres ). Notons que la résolution entre les profiles est de 20 centimètres tandis qu elle est de 10 centimètres entre les points du même profile. Figure 6. Cartographie 3D de la rue Soufflot (5 ème arrondissement de Paris) avec Lara3D [1]. Lara3D est orchestrée via le logiciel RT-Maps [2], permettant d enregistrer les données datées et synchronisées de manière à pouvoir effectuer un rejeu de ces dernières pour des tests hors ligne dans les mêmes conditions du temps réel (cf. Figure 7). Figure 7. Le logiciel RT-Maps - vue générale de l interface. 10

Introduction 1.3. Motivations Dans le cadre de nos travaux se rapportant à la fusion de données 3D Lara3D et MNS, nous sommes confrontés à des problèmes dus à deux facteurs essentiels : - Problèmes d acquisition avec les systèmes de cartographie mobile : les problèmes techniques liés à l architecture matérielle et logicielle des systèmes de navigation (Centrale Inertielle, GPS, ) provoque des imperfections au niveau de l ensemble des données produites. La Figure 8 [3] illustre l incohérence des données Lara3D sur un échantillon de la zone d acquisition. - Problème lié à la nature des données hétérogènes : différence lors de la prise de vue entre MNS et données Lara3D, différence au niveau de la résolution, la précision, le bruit En vue de ces difficultés rencontrées lors de la phase de fusion, l application d une étape préliminaire de recalage se veut essentielle. Figure 8.Zone de numérisation au 5 ème arrondissement de Paris. Le rassemblement des tronçons de numérisation acquis séparément (différentes couleurs) fait apparaître des décalages et une incohérence sur l ensemble des données [3]. 11

Introduction Dans la suite de ce mémoire, nous présentons un état de l art des méthodes proposées dans la littérature pour le recalage 3D. Ensuite, nous expliquons la chaîne de traitement de notre travail. Chacun des maillons porte l objet d un chapitre de ce mémoire. Enfin, nous concluons et présentons des perspectives dans le cadre du recalage 3D de données aériennes et terrestres. 12

Etat de l art du recalage 3D 2. Etat de l art du recalage 3D Le recalage [4] est défini comme étant une technique qui consiste à chercher une transformation géométrique pour passer d une image à une autre. Le recalage est dit rigide si la transformation est affine (rotation et translation). Il est dit non rigide si la transformation géométrique est d ordre supérieur (polynômes, splines ) ou bien si la transformation est non paramétrique. Les méthodes de recalage peuvent être vues comme combinaison de ces quatre composants [5] [6] : 1. l espace de primitives : permet d extraire l information qui va être utilisée pour la mise en correspondance. 2. l espace de recherche : constitue la classe des transformations capables de recaler les deux images. 3. la stratégie de recherche : décide du choix de la transformation à tester dans l espace de recherche afin de trouver la transformation optimale. 4. la métrique de similarité : détermine la métrique relative pour chacun des tests. La recherche continue suivant la stratégie de l étape 3 jusqu à ce qu une transformation ayant une mesure de similarité satisfaisante soit trouvée. La Figure 9 illustre les méthodes automatiques proposées dans la littérature pour recaler deux ensembles de points. Nous explorons les deux grandes familles (itératives et non itératives) du recalage rigide que constitue l objet du stage. Figure 9. Synthèse des Méthodes de recalage automatiques. 13

Etat de l art du recalage 3D 2.1. Recalage rigide : Iterative Closest Point (ICP) L algorithme ICP (Iterative Closest Point) est l un des algorithmes les plus répandus pour le recalage de données 3D. Un module optimisé de recalage basé sur cet algorithme a été réalisé au sein du centre de robotique de Mines ParisTech. Le principe général de l algorithme ICP est le suivant : Algorithme : Iterative Closest Point Donnée : Deux vues 3D contenant respectivement m et n points 3D Résultat : Le mouvement optimal entre les deux vues PROCEDURE 1. Initialisation 2. Prétraitement : construire le kd-tree de la deuxième vue 3. Itération a. Trouver les plus proches points satisfaisant la contrainte de distance b. Mettre à jour les appariements c. Calculer le mouvement entre les deux vues à partir des appariements retenus d. Appliquer le mouvement à tous les points de la première vue 4. Critère de convergence FIN PROCEDURE Figure 10. Principe général de l algorithme ICP. Différentes variantes de l algorithme ICP [7] [8] ont été développées, les différences sont essentiellement au niveau des points suivants : la sélection des points à apparier (échantillonnage des données, sélection des points de contrôle) la technique d appariement utilisée la pondération des paires de points appariés le rejet des mauvais appariements le type de critère à minimiser et l algorithme de minimisation utilisés pour l estimation de la transformation Des études comparatives des variantes d ICP peuvent être trouvées dans [8] [9]. 2.2. Recalage rigide : approches morphologiques La morphologie mathématique est une branche des mathématiques présentant des liens forts avec l'algèbre, la théorie des treillis, la topologie et les probabilités. Elle fournit des outils de filtrage, segmentation, quantification et modélisation d'images pour diverses applications en biologie, en multimédia et en imagerie médicale [10]. L exploration des approches morphologiques dans le contexte de recalage rigide constitue une piste de recherche très prometteuse. D ailleurs, une variante morphologique de 14

Etat de l art du recalage 3D l algorithme ICP [11] utilise le diagramme de Voronoi (principe de croissance de régions) et permet d accélérer l étape de recherche des points les plus proches dans l algorithme ICP. Une autre possibilité offerte par la morphologie mathématique consiste à utiliser la notion de squelette [12]. Ce qui permet de représenter un ensemble de points avec un minimum d informations, sous une forme simple à extraire et commode à manipuler. 15

Déroulement du stage 3. Déroulement du stage Dans cette partie du mémoire, nous présentons les expérimentations réalisées au cours des premières semaines du stage. Ensuite, nous présentons la chaîne de traitement de notre travail. 3.1. Expérimentation Dans le cadre du projet TerraNumerica, nous manipulons des données réelles n ayant pas les mêmes caractéristiques que les données synthétiques. Pour mieux nous convaincre et mieux comprendre la problématique du recalage, nous avons effectué des tests du module du recalage ICP sur des données synthétiques et des données réelles. Ensuite, nous avons comparé les résultats obtenus en fonction des jeux de paramètres utilisés. Les paramètres sur lesquels nous pouvons agir sont: dim : dimension de l espace, valeur par défaut = 3. data : nom du fichier contenant les points de données (le premier nuage de points). query : nom du fichier contenant les points que l on souhaite recaler (le deuxième nuage de points). m1 : nombre maximum du premier nuage de points, valeur par défaut = 1000. m2 : nombre maximum du deuxième nuage de points, valeur par défaut = 1000. k : nombre de voisins les plus proches dans le deuxième nuage de points, valeur par défaut = 1. eps : erreur, valeur par défaut = 0.0. thre : seuil de distance, valeur par défaut = 1000.0. maxit : nombre maximum d itérations, valeur par défaut = 40, valeur maximale = 99. Lors des tests effectués, nous n avons changé qu un seul paramètre à la fois en maintenant les autres paramètres à leurs valeurs par défaut. A chaque exécution, nous évaluons le temps de calcul et la convergence de l algorithme du recalage ICP. Les tests ont été réalisés sur différents nuages de points. Nous utilisons les données synthétiques («bunny» et «foot» [13]) et les données réelles («rue Soufflot du 5 ème arrondissement de Paris»). 16

Déroulement du stage Figure 11. Les données synthétiques nuage de point 3D «bunny». Figure 12. Les données synthétiques nuage de point 3D «foot». 17

Déroulement du stage Figure 13. Les données réelles «section segmentée de la rue Soufflot au 5 ème arrondissement de Paris». Concernant le recalage des données synthétiques «bunny» et «bunny décalé», nous remarquons que : Le paramètre «k» n influe pas sur la convergence. Le temps de calcul augmente quand le nombre de voisins les plus proches dans le deuxième nuage de points augmente. Le paramètre «eps» n influe pas sur la convergence. Le temps de calcul augmente quand l erreur augmente. Le paramètre «thre» n influe pas sur la convergence. Le temps de calcul augmente quand le seuil de distance diminue. Le paramètre «maxit» n influe pas sur la convergence. Le temps de calcul augmente quand le nombre maximum d itérations augmente (valeur maximale admise = 60). D après les résultats obtenus, nous pouvons dire que la nature des données «bunny» est très simple. Ce qui explique qu il n y a pas d influence du jeu de paramètres utilisés. Concernant le recalage des données synthétiques «foot» et «foot décalé», nous remarquons que : Le paramètre «k» n influe pas sur la convergence. Le temps de calcul augmente quand le nombre de voisins les plus proches dans le deuxième nuage de points augmente. Le paramètre «thre» influe sur la convergence. En effet, on s éloigne de la convergence souhaitée quand ce paramètre diminue (néanmoins, pour une valeur de 50.0, on considère une légère diminution) et à partir de la valeur 15.0, on commence à s éloigner considérablement pour atteindre une valeur de 2 à partir d une valeur de 10.0 de ce paramètre. Le temps de calcul augmente lorsque ce paramètre diminue. Le paramètre «maxit» influe sur la convergence. En effet, le nombre maximum d itérations considéré par la simulation vaut 14. Lorsqu on commence à diminuer cette valeur, la convergence est moins bonne et elle atteint même une valeur de 1.21 à partir d un nombre d itérations égale à 11. Le temps de calcul augmente lorsque ce paramètre augmente (ce qui est tout à fait logique). Concernant le recalage des données réelles «rue Soufflot du 5 ème arrondissement de Paris» et «crop Soufflot décalé», nous remarquons que : 18

Déroulement du stage Le paramètre «k» n influe pas sur la convergence (on remarque que la convergence est pratiquement la même pour les différentes valeurs du paramètre k). Le temps de calcul augmente considérablement lorsque ce paramètre augmente. Le paramètre «eps» a plutôt une influence croissante sur la convergence (la convergence est de moins en moins optimale que ce paramètre est grand). Le temps de calcul augmente lorsque ce paramètre augmente. Le paramètre «thre» influe sur la convergence. En effet, on s éloigne de la convergence souhaitée quand ce paramètre diminue (pour une valeur du seuil égale à 20.0, on atteint une erreur supérieure à 1). Le temps de calcul augmente lorsque ce paramètre diminue. Le paramètre «maxit» influe sur la convergence. En effet, le nombre maximum d itérations pris par la simulation est 40. Lorsqu on commence à diminuer cette valeur, la convergence est moins bonne et elle atteint même une valeur de 1.11 à partir d un nombre d itérations égal à 30. Le temps de calcul augmente lorsque ce paramètre augmente (ce qui est tout à fait logique). Ce paramètre influe énormément sur la convergence. En conclusion commune à tous ces tests, nous pouvons dire que l influence du jeu de paramètres dépend principalement de la nature des données traitées. Certes, il existe des points communs entre les résultats obtenus avec les différentes données testées. Cependant, nous ne pouvons pas généraliser surtout que les résultats obtenus sont très sensibles aux données réelles. 3.2. Chaîne de traitement La phase d initialisation de l algorithme ICP permet de trouver la zone de recouvrement entre les deux ensembles de données à recaler et le résultat du recalage est d autant plus meilleur que cette zone est correctement inscrite. Toutefois, il est possible que le recalage avec ICP échoue, si cette zone de recouvrement est relativement petite, non déterministe ou bien si les erreurs sur les mesures d entrée sont importantes. D où l idée de rajouter un module d initialisation du recalage en amont de l application de l ICP. Le but étant de déterminer correctement la zone de recouvrement sur les données en entrée. Ce module d initialisation nous garantira une bonne initialisation lors de l application de l ICP, ce qui entrainera l amélioration des résultats de l algorithme. La répartition en sous-modules du bloc «initialisation recalage» a été inspirée par le travail réalisé sur Verona City Centre présenté dans l article [14]. En effet, l approche adoptée permet de déterminer les contours en effectuant deux recalages : Recalage des données terrestres pour récupérer les trois degrés de liberté. Recalage des façades et des bords des toits pour récupérer les trois derniers degrés de liberté. Néanmoins, les données traitées dans [14] diffèrent des données du projet TerraNumerica. En effet, nous trouvons d une part des données issues d un scanner mobile et d un modèle numérique de surface de corrélation, pour le projet TerraNumerica; alors que le projet Verona City Centre traite des données issues d un scanner laser fixe et mobile et d un modèle numérique de surface produit par un LIDAR aéroporté. 19

Déroulement du stage La Figure 14 illustre la chaîne de traitement à suivre pour le module d initialisation du recalage. Le but de ce module étant de trouver au mieux la zone de recouvrement entre les deux ensembles de points : Une première étape consiste alors à segmenter d une part le nuage de points 3D afin de trouver les traces au sol des bâtiments (cf. figure 15). D autre part segmenter les données MNS afin de trouver les plans horizontaux au niveau des routes (cf. figure 16). En effet, il s agit de la partie commune la plus adaptée à la mise en correspondance entre les données Lara3D et les données MNS. Les données Lara3D fournissent partiellement les toitures des bâtiments et les données MNS fournissent une faible quantité d information pour les façades. Ensuite, nous effectuons une projection 2D des données segmentées afin d accélérer leur traitement. L étape suivante consiste à effectuer une estimation de la transformation 2D entre les plans à apparier, pour cela nous utilisons SVD (Singular Value Decomposition 2D, Décomposition en Valeurs Singulières 2D). Le choix de travailler en 2D permet d accélérer la phase d initialisation du recalage. Ce qui permet d estimer une rotation 2D, R2D(x,y) et une translation 2D T2D(x,y). Une étape parallèle à l étape précédente consiste à trouver la translation verticale (en z) Tz de vecteur égal à la différence entre les z moyens des deux ensembles de points. La transformation finale Tinit pour l initialisation sera alors égale à la combinaison de la transformation 2D trouvée avec 2DSVD et cette translation verticale. T = R ( x, y) T ( x, y) T init 2D 2D z Données Lara3D Extraction du plan 3D des données Lara3D Projection 2D Estimation de la translation verticale Données MNS Extraction du plan 3D des données MNS Projection 2D Filtrage morphologique Estimation de la transformation SVD Application de la transformation obtenue sur les données en entrée Recalage ICP Initialisation du recalage Figure 14. Chaîne de traitement du module «Initialisation du recalage». 20

Déroulement du stage Figure 15.Nuage de point 3D Lara3D sur une portion de la rue Soufflot 5 ème arrondissement de Paris, en bleu représentation de la trace au sol. Figure 16. MNS 5 ème arrondissement de Paris, en rouge représentation de la trace au sol sur la rue Gay Lussac. Dans le cadre de ce travail, nous envisageons d appliquer le filtrage morphologique sur les données MNS. En effet, il s agit de simplifier l image en supprimant certaines structures géométriques. Ce traitement sera réalisé avec Morph-M [15]. Morph-M est le fruit du travail de plusieurs chercheurs du Centre de Morphologie Mathématique de l École des Mines de Paris. Il sert de base de développement à la plupart des projets de recherche en cours au laboratoire. La composante principale de Morph-M est une librairie de fonctions de traitement d'images codée en C++ et exploitant le principe de la méta-programmation. Cette librairie contient la plupart des opérateurs qu'offre la morphologie mathématique, depuis les opérations de base, telles que les dilatations et les érosions, jusqu'aux opérateurs les plus puissants, tels que la ligne de partage des eaux hiérarchique. Ces fonctions sont mises en œuvre en utilisant des algorithmes très performants, comme ceux basés sur les files d'attente hiérarchiques. Dans le chapitre suivant, nous exposons les travaux concernant la première étape du module «initialisation recalage», à savoir l extraction du plan 2D des données Lara3D. 21

Extraction du plan 2D des données Lara 3D 4. Extraction du plan 2D des données Lara 3D L idée du module «initialisation du recalage» est de trouver la transformation initiale optimale, entre les traces au sol des façades des données Lara3D, et celles du modèle numérique de surface. Ce chapitre traite de la l extraction du plan 2D des données Lara3D. Plus généralement, l extraction d un plan 2D peut être considérée comme une composante de la segmentation 3D. Rappelons que la segmentation est une étape primordiale de traitement d images qui a pour but de rassembler des pixels entre eux suivant des critères prédéfinis. Les pixels sont ainsi regroupés en régions, qui constituent un pavage ou une partition de l image. Il peut s agir par exemple de séparer les objets du fond. Il existe de nombreuses méthodes de segmentation : segmentation fondée sur les régions, segmentation fondée sur les contours et segmentation fondée sur la classification ou le seuillage des pixels en fonction de leur intensité. Un état de l art sur les méthodes de segmentation est présenté dans [16]. Pour le traitement de données 3D, la segmentation est différente de celle adoptée pour les images 2D. Plusieurs méthodes sont proposées dans la littérature. La Figure 17 illustre trois approches adaptées à notre projet TerraNumerica. Nous présentons deux d entre elles : la recherche de la trace au sol des façades (le parcours du nuage de points s effectue par profile) et la détermination locale de plans par RANSAC [17]. Figure 17. Méthodes utilisées pour la segmentation 3D. 4.1. Première approche : recherche de la trace au sol des façades Afin d optimiser l algorithme de segmentation, nous commençons par effectuer un seuillage en z des points 3D (cf. Figure 18). Ensuite, nous déterminons les traces au sol des façades à partir du nouveau nuage de points obtenu après la phase de seuillage. 22

Extraction du plan 2D des données Lara 3D 4.1.1. Seuillage en z des points 3D Algorithme : Seuillage en z des points 3D Donnée : Nuage de points 3D, NbPtsProfile, seuil Résultat : Nuage de points 3D resultat seuillage Initialisations nbr_pts_route = 0 nbr_profile_seuille = nbrpoint / NbPtsProfile POUR i ALLANT DE 0 À (nbrpoint NbPtsProfile), PAS NbPtsProfile, FAIRE nbr_pts_profileseuille = 0 minimum = z_point i POUR j ALLANT DE i À (i + NbPtsProfile), FAIRE SI z_point j < minimum ALORS minimum = z_point j FIN SI FIN POUR POUR j ALLANT DE i À (i + NbPtsProfile), FAIRE SI z_point j < ( minimum+seuil) ALORS resultat = point j nbr_pts_route ++ nbr_pts_profileseuille ++ FIN SI FIN POUR FIN POUR enregistrer resultat Figure 18. Algorithme : seuillage en z des points 3D. Cet algorithme de seuillage a été testé sur le nuage de points 3D du boulevard Saint Michel (acquisition 2003). La figure 19 montre le résultat obtenu. En bleu, le nuage de points d origine ; en noir, le nuage de points après seuillage. Notons que le nombre de points par profile est égal à 1080 et que le seuil déterminé expérimentalement est de 10.0 mètres. 23

Extraction du plan 2D des données Lara 3D Nuage de points Lara3D avant seuillage Nuage de points Lara3D après seuillage Figure 19. Résultat : extraction de la route du nuage de points 3D du boulevard Saint Michel. Le résultat obtenu est satisfaisant. Ainsi, le nuage de points résultant de cette phase de seuillage constitue le nouveau nuage de points à utiliser en entrée des prochains algorithmes pour récupérer la trace au sol des façades. 4.1.2. Récupération de la trace au sol des façades La Figure 20 illustre le principe utilisé pour récupérer la trace au sol des façades. En effet, le parcours des points après la phase de seuillage s effectue par profile. Nous initialisons une variable nombre d occurrence du point (xi, yi) à 1. Cette variable est incrémentée si le point en cours de traitement est situé dans une boule de rayon R égale à la résolution des acquisitions. Enfin, le point (xi, yi) est considéré comme faisant parti de la trace au sol des façades si son nombre d occurrence est bien supérieur à un certain seuil. Figure 20. Récupération de la trace au sol des façades. La Figure 21 illustre l algorithme permettant de récupérer la trace au sol des façades. 24

Extraction du plan 2D des données Lara 3D Algorithme : Recuperation de la trace au sol des facades Donnée : Nuage de points 3D apres seuillage Résultat : Nuage de points 3D de la trace au sol des facades POUR j ALLANT DE 0 À (nbr_pts_apres_seuillage parametre), PAS parametre, FAIRE SI (point pas dans une boule(r)) ALORS point = point_apres_seuillage occurence (xj,yj) = 1 POUR i ALLANT DE j À (j + nbr_pts_apres_seuillage_profile) FAIRE SI (distance_horizontale < resolution_horizontale) ET (distance _verticale < resolution_verticale) ET (nbr_pts_z > limite) ALORS occurence (xj,yj) ++ FIN SI FIN POUR FIN SI SI (occurence (xj,yj) > seuil) ALORS Resultat trace au sol = point traite FIN SI FIN POUR Figure 21. Algorithme: récupération de la trace au sol des façades. Nous remarquons que dans cet algorithme, le nombre de points par profile n est plus égal à 1080 ; mais plutôt à un paramètre que nous déterminons en supposant que le nombre total de profiles reste constant après la phase du seuillage. Par exemple, lors des tests des données Lara3D du boulevard Saint Michel, ce paramètre était de 804 points par profile. Pour ces mêmes tests, le seuil utilisé est de 15.0 correspondant au nombre de points en XY et le rayon est égal à 0.2 mètres correspondant à la résolution de Lara3D. Une autre version de cet algorithme permet de récupérer le nombre exact de points par profile. Le principe est schématisé par la Figure 22. En effet, connaissant la hauteur H du laser par rapport au sol, le rayon du sol rs et l angle d acquisition du laser θ max, le nombre exact de points par profile est égale à : θ max / arctg (rs / H). 25

Extraction du plan 2D des données Lara 3D Figure 22. Estimation du nombre exact de points par profile. Afin d accélérer l exécution, nous appliquons une étape de seuillage aléatoire sur les données en entrée en amont de processus de la récupération de la trace au sol des façades. Le résultat obtenu avec l algorithme de récupération de la trace au sol des façades n est pas totalement satisfaisant. En effet, des points parasites correspondant aux points d acquisition les plus proches du télémètre laser persistent (cf. Figure 23). Figure 23. Persistance des points 3D parasites. Pour améliorer ce résultat, nous utilisons la trajectoire de la voiture Lara3D (cf. Figure 24) lors des acquisitions, une donnée primordiale pour résoudre le problème des points parasites. 26

Extraction du plan 2D des données Lara 3D Figure 24. Trajectoire du véhicule Lara3D sur la Rue Soufflot. La Figure 25 décrit l algorithme utilisé pour récupérer la trace au sol des façades en utilisant la trajectoire du véhicule lors des acquisitions. Nous calculons la distance euclidienne entre un point de la trajectoire et un point 3D. Algorithme : Recuperation de la trace au sol des facades en utilisant la trajectoire de la voiture Donnée : Nuage de points approximes, erreur Résultat : Points de la trace au sol TANT QUE (fichier_trajectoire non vide) FAIRE distance_maximale = distance euclidienne entre point trajectoire et point approxime POUR i ALLANT DE 0 À dernier point FAIRE distance = distance euclidienne entre point trajectoire et point approxime i SI (distance > distance_maximale) FAIRE distance = distance_maximale FIN SI FIN POUR seuil = distance_maximale - erreur POUR i ALLANT DE 0 À dernier point FAIRE distance = distance euclidienne entre point trajectoire et point approxime i difference = distance seuil SI (difference > 0.0) FAIRE enregistrer point FIN SI FIN POUR FIN TANT QUE Enregistrer resultat Figure 25. Algorithme: récupération de la trace au sol des façades en utilisant la trajectoire de la voiture. Néanmoins, cette solution a des limites (cf. Figure 26). En effet, le résultat obtenu dépend fortement de la nature des données traitées. Ce qui explique les fausses détections. 27

Extraction du plan 2D des données Lara 3D Figure 26. Limites de l utilisation de la trajectoire de la voiture Lara3D. 4.2. Deuxième approche : détermination de plans par RANSAC RANSAC est un acronyme pour «RANdom SAmple Consensus» [17]. C est une méthode itérative permettant d estimer les paramètres d un modèle mathématique à partir d un ensemble de données observées qui contiennent des données aberrantes. RANSAC est un algorithme non déterministe étant donné qu il produit un résultat correct avec une certaine probabilité qui augmente avec le nombre d itérations. Cet algorithme nécessite un certain nombre d entrées : un ensemble de données observées, un modèle paramétré qui peut être adapté aux observations et des paramètres de confiance. RANSAC converge en choisissant itérativement un sous-ensemble aléatoire des données originales. Ces données sont considérées comme points intéressants hypothétiques et cette hypothèse est évaluée comme suit : 1. Un modèle est adapté aux points intéressants hypothétiques, c est-à-dire que tous les points libres du modèle sont reconstruits à partir de l ensemble des données. 2. Toutes les autres données sont alors examinées contre le modèle adapté et si un point s adapte bien au modèle prévu, il fera parti des points intéressants. 3. Le modèle prévu est raisonnablement bon si suffisamment de points ont été classés comme points intéressants. 4. Le modèle est estimé encore une fois à partir de tous les points intéressants hypothétiques étant donné qu il a été estimé uniquement à partir du premier ensemble des points intéressants hypothétiques. 5. En conclusion, le modèle est évalué en estimant l erreur des points intéressants relative au modèle. Cette procédure est répétée un nombre fixe de fois en rejetant à chaque fois le modèle par manque de points intéressants élus. Nous gardons le nouveau modèle si son erreur est inférieure à celle du dernier modèle sauvegardé. La Figure 27 expose brièvement l algorithme du RANSAC. 28

Extraction du plan 2D des données Lara 3D Algorithme : RANSAC Entrées donnees, modele, n, k, t, d Sorties le_meilleur_modele, le_meilleur_consensus, la_meilleure_erreur Initialisations iterations := 0 le_meilleur_modele:= null le_meilleur_consensus:= null la_meilleure_erreur:= infini TANT QUE iterations < k points_interessants_hypothetiques := n modele_hypothetique := modele adapte aux parametres ensemble_consensus:= points_interessants_hypothetiques POUR point de points_interessants_hypothetiques FAIRE SI adaptation modele avec erreur < t ALORS ajouter point a ensemble_consensus FIN POUR SI nombre points ensemble_consensus > d ALORS meilleur_modele:= modele des points consensus erreur := traduction meilleure adaptation meilleur_modele aux points SI erreur < la_meilleure_erreur ALORS le_meilleur_modele:= meilleur_modele le_meilleur_consensus := ensemble_consensus la_meilleure_erreur := erreur iterations ++ FIN SI FIN SI retourner le_meilleur_modele, le_meilleur_consensus, la_meilleure_erreur FIN TANT QUE Figure 27. Algorithme de RANSAC. Les paramètres en entrée de l algorithme sont : n : nombre minimum de données k : nombre maximum de points autorisé dans l algorithme t : valeur seuil pour trancher si une donnée fera partie ou non du modèle d : nombre de points résultats pour conclure si un modèle est bien adapté aux données Des travaux de détection locale de plans avec RANSAC sont réalisés par Jean-Emmanuel Deschaud, ingénieur de recherche à Mines ParisTech. La Figure 28 illustre le résultat de la détection locale de plans. Chaque couleur représente un plan détecté sur une partie du boulevard Saint Michel. 29

Extraction du plan 2D des données Lara 3D Figure 28. Résultat : détection de plans avec RANSAC (partie du boulevard Saint Michel). Le résultat précédent est obtenu sur une partie du boulevard Saint Michel, plus précisément, les 100000 premiers points 3D. Nous avons testé l algorithme du RANSAC sur deux types de données 3D : les données Lara3D du boulevard Saint Michel (début, milieu et fin) (cf. Figure 29) et les données Lara3D du boulevard Saint Michel (début, milieu et fin) après la phase de seuillage en z (cf. Figure 30). 30

Extraction du plan 2D des données Lara 3D a b c Figure 29. Détection des plans dans le boulevard Saint Michel (données sans seuillage), début(a) - milieu(b) - fin(c). a b c Figure 30. Détection des plans dans le boulevard Saint Michel (données après seuillage), début(a) - milieu(b) - fin(c). Nous constatons d après ces tests que l algorithme du RANSAC permet bien de détecter les plans du boulevard Saint Michel. Cependant, les résultats sont très variables. En effet, dans le premier ensemble de données, l algorithme détecte les arbres comme des plans alors 31

Extraction du plan 2D des données Lara 3D que ce n est pas vrai. Par ailleurs, sur l ensemble des données obtenues après la phase de seuillage, sur la deuxième partie du boulevard Saint Michel, l algorithme détecte deux plans (vert et bleu) pour la route alors qu il s agit de la même route en réalité. 4.3. Comparaison des deux approches A présent, nous comparons les deux approches explorées pour détecter les traces au sol des bâtiments. o o o La première approche utilise le nombre de points par profile. Ce paramètre dépend du type du télémètre laser utilisé ainsi que de son orientation. Ainsi, l approche suivie pour extraire les traces au sol des façades est très spécifique à notre projet et ne peut se généraliser à d autres projets qu après vérification des spécifications du système d acquisition utilisé. L inconvénient majeur de l approche par RANSAC est la détermination locale de plans. Néanmoins, les résultats obtenus sont très prometteurs. Un autre problème dans l algorithme de RANSAC est la détermination du modèle. Néanmoins, une fois le modèle fixé, l estimation de paramètres est robuste. En effet, RANSAC peut estimer les paramètres avec un niveau important d exactitude même lorsque la quantité des points parasites est significative sur l ensemble total des points. Cependant, il n y a pas de limite supérieure pour le temps de calcul des paramètres. Après la phase de récupération de la trace au sol des façades des données Lara3D, nous exposons dans le chapitre suivant les travaux de l extraction de la trace au sol des données MNS. 32

Extraction du plan 2D des données MNS 5. Extraction du plan 2D des données MNS Nous arrivons à présent à la deuxième phase de la chaîne de traitement, à savoir l extraction du plan 2D (route) des données MNS. Cette partie du stage s est étalée sur plusieurs semaines par manque de communication avec l IGN (Institut Géographique National) chargé de la livraison des données MNS. Commençons ce chapitre du mémoire par donner un aperçu sur la structure des données MNS traitées. Ensuite, nous présentons les résultats obtenus jusqu à présent. 5.1. Structure des données MNS La méthode de production du MNS est fondée sur une procédure de corrélation automatique des pixels de plusieurs images stéréoscopiques (cf. Figure 31). Cette technique permet de retrouver les points homologues entre les diverses images et ainsi de calculer, pour chaque pixel, l altitude en ce point. Cette méthode nécessite deux ou plusieurs clichés stéréoscopiques se recouvrant sur la zone d étude, ainsi qu un certain nombre de points de calage, bien répartis et connus en (X, Y, Z). Figure 31. Principe de la stéréoscopie aéroportée. Les données MNS sont enregistrées sous format Tiff (cf. Annexe 1). 5.2. Expérimentation sur MNS Tout au long de cette partie du stage, nous avons cherché un logiciel gratuit permettant de lire les données MNS en format Tiff. IrfanView était une solution très intéressante dans la mesure où il permet d effectuer des transformations sur les images ou encore d appliquer des filtres spécifiques. En effet, IrfanView est un visualisateur multimédia qui permet de lire un grand nombre de formats d images, y compris des graphiques animés, icônes et même des fichiers vidéo ou audio. Ce logiciel renferme toutes les fonctionnalités nécessaires à la gestion et à l amélioration des images : affichage en différentes grandeurs, construction de 33

Extraction du plan 2D des données MNS diaporamas, modification des propriétés d une image, conversion de formats, affichage de toutes les images d un répertoire sous forme de vignettes La Figure 32 illustre la lecture d une image Tiff avec IrfanView ainsi que l application d un filtre de détection de contours. a b Figure 32. Lecture (a) et détection de contours (b) d une image Tiff avec IrfanView. Nous constatons que le filtre de détection de contours intégré dans IrfanView ne permet pas de détecter exactement les contours correspondants à la trace au sol des données MNS. Ce qui n est pas directement exploitable dans notre projet. Une autre solution était d utiliser Matlab afin de récupérer les traces au sol des données MNS. La Figure 33 illustre le résultat obtenu. Figure 33. Détection de la trace au sol des données MNS. 34

Extraction du plan 2D des données MNS Le résultat ainsi obtenu est meilleur. Notons par ailleurs la persistance de gradients de luminosité en niveaux de gris dans l image. Dans le chapitre suivant, nous présentons le dernier maillon de notre chaîne de traitement, le recalage 2D des données Lara3D et des données MNS, en justifiant les choix effectués. 35

Recalage 2D des données Lara3D et MNS 6. Recalage 2D des données Lara3D et MNS Dans cette partie du mémoire, nous exposons la dernière phase de la chaîne de traitement, le recalage 2D des données Lara3D et des données MNS. L approche utilisée est celle de la décomposition en valeurs singulières (SVD) appliquée en 2D. Nous estimons aussi la translation verticale de vecteur égal à la différence des z moyens des données. Nous obtenons ainsi une transformation 3D. La Figure 34 rappelle le processus global du recalage 3D. Figure 34. Processus global du recalage 3D. La décomposition en valeurs singulières d une matrice constitue un outil important de factorisation de matrices rectangulaires réelles ou complexes. Dans le cadre de notre projet, nous utilisons la décomposition en valeurs singulières afin de trouver une transformation (rotation et translation) optimale pour le recalage 3D. La Figure 35 illustre les données Lara3D et les données MNS du boulevard Saint Michel visualisées en 3D que nous segmentons (cf. Figure 36, cf. Figure 37) dans un premier temps et ensuite nous appliquons la décomposition en valeurs singulières en 2D. 36

Recalage 2D des données Lara3D et MNS Figure 35. Données Lara3D (en bleu) et données MNS 3D (en noir) du boulevard Saint Michel. a b Figure 36. Données segmentées du boulevard Saint Michel : MNS (figure (a)), Lara3D (figure (b)). Offset Figure 37. Superposition des résultats de segmentation des données Lara3D (en bleu) et des données MNS 3D (en noir) du boulevard Saint Michel. Pour justifier l application de la SVD 2D, nous effectuons une comparaison entre le recalage obtenu avec l approche SVD 3D (approche complète) et celui obtenu avec l approche SVD 2D suivie de la translation verticale. Les deux approches sont testées sur les 37

Recalage 2D des données Lara3D et MNS données du boulevard Saint Michel présentées précédemment. Les mesures des angles sont exprimées en radian et les translations en mètre. D une part, l estimation de la transformation 3D (translation 3D T3D et rotation 3D R3D) donne: T 0.0270258 1 0.000296923 0.000391014 = 0.091125 ; R = 0.000295666 0.999996 0.00302372 0.160889 0.000391926 0.00302371 0.999995 3D 3D avec un temps total d exécution égal à 3125 ms. D autre part, l estimation de la transformation 2D (translation 2D T2D et rotation 2D R2D) donne: T 5 0.00937349 1 4, 2824.10 = ; R 0.0133836 = 4, 28849.10 1 2D 2D 5 avec un temps total d exécution égal à 2937 ms. Ce qui prouve que l application de la SVD en 2D permet de gagner en temps. La translation verticale Tz est donnée par le vecteur T z 0 = 0. 5.17395 Ainsi, la transformation d initialisation Tinit est donnée par : T = R ( x, y) T ( x, y) T init 2D 2D z 38

Conclusion 7. Conclusion Le recalage 3D de données aériennes et terrestres est un sujet de recherche loin d être résolu dans toutes ses composantes. Durant ce stage, nous avons essayé d améliorer le recalage déjà réalisé avec l algorithme ICP (Iterative Closest Point). En effet, nous avons ajouté une phase d initialisation du recalage 3D qui permet d améliorer la zone de recouvrement entre des données hétérogènes : des données issues d un système de cartographie mobile Lara3D et des données de modèle numérique de surface. L approche adoptée était de segmenter d une part les données Lara3D afin de trouver les traces au sol des façades ; et d autre part, segmenter les données MNS afin de trouver les plans horizontaux au niveau des routes. Cette approche a été justifiée par la nature des données que nous traitons. En effet, les données Lara3D fournissent partiellement les toitures des bâtiments et les données MNS fournissent une faible quantité d information pour les façades. Nous avons comparé cette approche à celle basée sur l algorithme de RANSAC pour la détermination locale de plans. Ensuite, nous avons effectué l estimation de transformation en 2D avec SVD2D à laquelle nous ajoutons une translation verticale. La solution de travailler en 2D permet d accélérer le processus d initialisation du recalage en comparaison au temps d estimation de la transformation 3D. Dans le but de continuer ces travaux, nous proposons quelques perspectives. La plupart des algorithmes ont été testé sur les données du boulevard Saint Michel de Paris. Nous pourrons envisager donc une étape de validation des algorithmes en les appliquant sur d autres acquisitions faites dans d autres sites urbains. Néanmoins, l application des algorithmes d extraction de la trace au sol des façades sur de nouveaux sites urbains posera le problème de détermination robuste des seuils de décision utilisés. Ainsi, le seuil doit être calculé à partir d une fonction adaptative d un certain jeu de paramètres détectables dans chaque site urbain. Nous pourrons également explorer et tester des approches morphologiques sur les données MNS afin d extraire des primitives significatives sur ces données et par conséquent, améliorer le recalage 3D final. 39