RÉALISATION D UN SERVICE WEB RETOURNANT LE NOM D UNE COMMUNE ET SON CODE INSEE À PARTIR D UN POINT LAT/LON EN FRANCE



Documents pareils
Cartographie libre du monde OpenStreetMap

Les outils actuels permettent-ils d automatiser la production de cartes? De quels outils dispose-t-on?

Gestionnaire de champs PRO

opentaxepub Documentation

Cartographie avec R. Baptiste Coulmont. 16 septembre 2010

Information utiles. webpage : Google+ : digiusto/

TELA BOTANICA Le réseau des botanistes francophones. Daniel MATHIEU, président Montpellier, FRANCE

Démonstrateur libre Application des données Open Street Map à l analyse géographique de réseaux de voirie et Transports Collectifs

Intégration ESRI - SAP Geo-Enablement de l ERP SAP Exemple : GEO.e. Christophe Lapierre Enrique Yaptenco Professional Services - ESRI Suisse

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Une application sur tablette tactile pour la saisie de données naturalistes sur le terrain Linhota

données en connaissance et en actions?

BIG DATA en Sciences et Industries de l Environnement

Quand l'open Data profite à OpenStreetMap, quand OpenStreetMap profite aux citoyens et entreprises. Julien Fastré

HERBIER NUMERIQUE COLLABORATIF DE MAURICE. enseignants des établissements à programme français de Maurice

les techniques d'extraction, les formulaires et intégration dans un site WEB

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

Raja Bases de données distribuées A Lire - Tutoriel

Open Data. François Bancilhon twitter.com/fbancilhon Printemps de la recherche EDF R&D 28/9/12

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

Les algorithmes de base du graphisme

Mise en place d'un serveur d'application SIG au Conseil général de Seine-et-Marne

Catalogue des formations Edition 2015

Département Génie Informatique

Matrice d accès. Master SEMS, Pierre Paradinas. October 16, 2013

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

1 Démarrage de Marionnet

Description globale. Présentation du site Internet

WordPress : principes et fonctionnement

1 La visualisation des logs au CNES

Programmation Web. Madalina Croitoru IUT Montpellier

TUTORIEL CartoDB 11/03/15

Traitement bas-niveau

Architecture Orientée Service, JSON et API REST

CHARTE INFORMATIQUE LGL

Kiwi-Trip Application de tourisme pour Android

Installation et prise en main

Quels fondements, services fonctionnalités et limites de l intranet?

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

Jimmy Clairbois. Projets réalisés dans le cadre professionnel

MINISTERE DE LA DEFENSE

NoSQL. Introduction 1/23. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Formation Cloudera Data Analyst Utiliser Pig, Hive et Impala avec Hadoop

GMEC1311 Dessin d ingénierie. Chapitre 1: Introduction

Conception des bases de données : Modèle Entité-Association

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Introduction à ElasticSearch

Présentation du module Base de données spatio-temporelles

Introduction au Data-Mining

Créer une trace, obtenir son fichier gpx et sa carte Ou Afficher un fichier trace GPX

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

L optimisation d une PowerBoutique pour le référencement

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Résolution d équations non linéaires

Cartographies de ressources uniques d'internet

Introduction à la B.I. Avec SQL Server 2008

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

Mercredi 15 Janvier 2014

Rapport journalier. Le stage va se découper en 2 parties : 3 premières semaines :

Correction du bac blanc CFE Mercatique

ArcGIS 10.1 for Server

Programmation des Applications Réparties. Parsers XML DOM et SAX

Bases de Données Avancées

TP Bases de données réparties

FreeMind. Freeplane XMind. 2 e édition. Bien démarrer avec le Mind Mapping. . Groupe Eyrolles, 2010, ISBN :

Logiciel photothèque professionnel GUIDE D UTILISATION - 1 -

TigerPro CRM Application mobile

Les Ateliers Numériques avril Alboussière

La dernière base de données de Teradata franchit le cap du big data grâce à sa technologie avancée

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Portabilité sur système Android d un système de borne d information

L expertise développée par Market-IP et ses solutions télématiques vous permettront d atteindre

Fiche n 2 : Créer une activité (avec ressource associée)

Créer une base de données vidéo sans programmation (avec Drupal)

Géolocalisation. Remy Sharp

Architectures web/bases de données

L. Granjon, E. Le Goff, A. Millereux, L. Saligny MSH Dijon

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

HTML. Google Maps. Approfondir. 3 :HIKONB=^UZ^Z]:?k@l@g@h@a"; Codez une fois, déployez sur Android, ios, Kindle... Smartphones. Matériel.

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Guide utilisateur i-milo >> Décisionnel

Sélection d un moteur de recherche pour intranet : Les sept points à prendre en compte

Sommaire. Avertissement :

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril / 15

Exemple et réflexion sur l utilisation de données satellitaires

PRISE MAIN DE GOOGLE MAP ET GOOGLE EARTH DANS LE CADRE DE LA PREPARATION ET L EXPLOITATION D UNE JOURNEE DE TERRAIN

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA

RÉFÉRENCEMENT NATUREL GOOGLE. Kelreferencement, marque déposée de Kelsociété

Thème : Création, Hébergement et référencement d un site Web

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Optimiser les performances d un site web. Nicolas Chevallier Camille Roux

Transcription:

RÉALISATION D UN SERVICE WEB RETOURNANT LE NOM D UNE COMMUNE ET SON CODE INSEE À PARTIR D UN POINT LAT/LON EN FRANCE Présenté par : Mohcen BENMOUNAH Texte en blanc Stage effectué à : Tela-Botanica Texte en blanc MASTER II - BIOINFORMATIQUE 1/47 M. BENMOUNAH 6 septembre Réalisation 2011 d un service Web retournant un nom de commun

Tela-Botanica Carnet En Ligne Contexte du stage Présentation Tela-Botanica Tela-Botanica est fondée en 1999. Réseau des botanistes francophones. Ses objectifs : 1 Rassembler tous les botanistes dans leur diversité. 2 Monter des projets collectifs. 3 Collecter des données pour les mettre à disposition des botanistes. 4 Regrouper les initiatives qui concourent au développement de la botanique. 2/47

Tela-Botanica Carnet En Ligne Contexte du stage Présentation Tela-Botanica Elle dispose de : 1 Forums de discussion. 2 Des logiciels performants dédiés à la botanique. 3 Moteurs de recherche. 4 Présentation cartographique des observations botaniques. 3/47

Tela-Botanica Carnet En Ligne Contexte du stage Présentation Tela-Botanica Ses grands projets : 1 L index synonymique de la Flore de France. 2 Une base de données de tous les herbiers de France. 3 Flore d Afrique du Nord et de la Réunion. 4 Un carnet de terrain en ligne pour collecter les données naturalistes. 4/47

Tela-Botanica Carnet En Ligne Contexte du stage Carnet En Ligne Carnet En Ligne (CEL) est : 1 Un carnet de terrain informatique pour collecter les données naturalistes. 2 L équivalent numérique d un carnet de terrain. 3 Permet de saisir des observations botaniques, de les illustrer avec des images, créer des projets et d y associer des plantes. 4 Partage des observations avec le réseau. 5 Module cartographique de géolocalisation des observations botaniques. 5/47

Carnet En ligne Introduction Tela-Botanica Carnet En Ligne Contexte du stage Figure: Présentation du Carnet En Ligne. 6/47

Module cartographique Introduction Tela-Botanica Carnet En Ligne Contexte du stage Figure: Module cartographique. 7/47

Tela-Botanica Carnet En Ligne Contexte du stage Localisation de l observation (Google Map) Figure: Géolocalisation cartographique. 8/47

Tela-Botanica Carnet En Ligne Contexte du stage Problème du Carnet En Ligne Ancienne géolocalisation du Carnet En Ligne imprécise. Appel au service de géolocalisation gratuit GeoNames. Effectue le Reverse Geocoding (renseigner le nom de la commune, à partir d un point X/Y). Le carnet renseigne un nom de commune qui est bien souvent erroné... - Nombre limité d appel au service par jour. - La commune retournée correspond à une autre, située à proximité. - Ne renseigne aucune commune. 9/47

Tela-Botanica Carnet En Ligne Contexte du stage Problème du service de géolocalisation GeoNames Figure: Problème de géolocalisation du Carnet En Ligne. 10/47

Tela-Botanica Carnet En Ligne Contexte du stage Objectifs du stage... Objectifs du stage : Fournir un service Web à cette application comme solution alternative à l API GeoNames. Ce service Web permettra de localiser précisement une observation botanique. Retourner le nom de la commune et son code INSEE en fonction du point (Lat/lon). 11/47

Introduction Contraintes du service Web Contraintes de la base géographique exploitée Projet cartographie libre : OpenStreetMap (OSM) Missions du stage La solution réside dans... Réalisation d un service Web Reverse Geocoding qui renseigne la commune à laquelle appartient un point GPS. L obtention des contours des limites administratives communales en France. 12/47

Introduction Contraintes du service Web Contraintes de la base géographique exploitée Projet cartographie libre : OpenStreetMap (OSM) Missions du stage Contraintes du service Web... Précision de la géolocalisation. Rapidité de la réponse. Disposition locale (BD locale) des données spatiales (contours communaux). Mise à jour régulière des données locales. 13/47

Introduction Contraintes du service Web Contraintes de la base géographique exploitée Projet cartographie libre : OpenStreetMap (OSM) Missions du stage Contraintes de la base géographique exploitée... Disponibilité des contours administratifs de communes de France. Gratuité des données. Courverture importante de la France metropolitaine. 14/47

OpenStreetMap (OSM) Contraintes du service Web Contraintes de la base géographique exploitée Projet cartographie libre : OpenStreetMap (OSM) Missions du stage Projet libre collaboratif destiné à la cartographie. Des milliers d utilisateurs volontaires participent à l élaboration de la carte du monde. Partage des connaissances géographiques pour les mettre librement à la disposition du public. Les cartes sont créées en utilisant (appareils GPS, photographie aérienne, connaissances locales et autres sources gratuites). Le projet est autorisé à exploiter les données cadastrales. Des outils d édition des données sont dédiés à éditer ces données OSM. 15/47

Couverture communale : OpenStreetMap Contraintes du service Web Contraintes de la base géographique exploitée Projet cartographie libre : OpenStreetMap (OSM) Missions du stage Figure: Couverture de plus de 75% des communes françaises. 16/47

Missions du stage Introduction Contraintes du service Web Contraintes de la base géographique exploitée Projet cartographie libre : OpenStreetMap (OSM) Missions du stage Missions du stage... 1 Trouver une solution afin d intégrer les données OSM. 2 Fournir une solution simple afin de mettre à jour les nouvelles données d OSM. 3 d un service Web en PHP permettant de géolocaliser l observation botanique (Nom de la commune, INSEE ). 17/47

Première étape Introduction... Les données sont contenues dans des fichiers XML disponibles en téléchargement. Filtrage des données géographiques afin de récupérer les données des limites administratives. 18/47

Deuxième étape Introduction... Des scripts d analyse de données remplissent la base de données spatiale. 19/47

Troisième étape Introduction de géolocalisation... Une seule table est interrogeable par le service Web. Elle contient le nom de la commune, le code INSEE et le polygone formant la limite administrative de la commune. L algorithme permet de localiser de façon précise à quel polygone (commune) se trouve le point recherché. 20/47

Quatrième étape Introduction locales... Les limites administratives communales OSM évoluent. Des scripts de mise à jour sont developpés. 21/47

Description de la BD OpenStreetMap La base de données OpenStreetMap dispose : 1 Relation. 2 Way (Chemin). 3 Node (noeud). 22/47

Description de la BD OpenStreetMap : Relation Une relation est une : Des chemins refermés sur eux mêmes avec des tags spécifiques. Les relations possèdent un nombre de tags. Pour les relations administratives (<tag k= boundary v= administrative />) Seules les limites adminitratives communales qui nous intéressent (<tag k= admin_level v= 8 />) 23/47 Figure: Représentation de l entité Relation.

24/47 M. BENMOUNAH Réalisation Figure: d un service Représentation Web retournant deun l entité nom deway commun. Introduction Description de la BD OpenStreetMap : Way (Chemin) Un chemin (Way) est un : Interconnexion entre au moins deux noeuds. Possède également des tags spécifiques. Multitude de noeuds formant un chemin.

Description de la BD OpenStreetMap : Node (Noeud) Un noeud (Node) est un : Élément de base du système OSM. Définit un couple latitude/longitude. Un point se trouve dans la surface terrestre. 25/47

Format fichier OSM Introduction Figure: Format du fichier OSM. 26/47

Introduction Une relation posséde plusieurs chemins. Un chemin peut avoir une multitude de noeuds. Figure: Modèle entité-association. 27/47

Diagramme de classe Introduction Figure: Diagramme de classe. 28/47

Table consultable par le service Web Figure: Structure de la table osm_communes consultable par le service Web. 29/47

Filtrage du Fichier OSM OSMOSIS? : Application écrite en langage JAVA. Manipulation des données OpenStreetMap (En ligne de commande). Filtrage du fichier (France.osm) contenant toutes les informations géographiques. Le filtrage s effectue sur les tags des relations vus précédement. Après filtrage (Commande) sur des tags spécifiques : Conserver que les relations correspondant à des communes. Rejetter toutes informations inutiles (chemins, noeuds ). 30/47

Introduction Étapes du remplissage : 1 Analyse du fichier OSM en utilisant la classe PHP :XmlReader. 2 Lire le fichier ligne par ligne. 3 Récupérer pour chaque noeud XML l information nécessaire. 4 Insertion dans les tables correspondantes. 31/47

Introduction Scripts d analyse de données. Algorithme de gestion de l ordre des ways. Définition du polygone de la commune et rajouter l objet polygone à la commune. Définition du point centre du polygone. Gestion des multipolygones. Figure: Structure de la classe ParseurOSM.php. 32/47

Cas spéciaux : multipolygone Figure: Cas enclave exclave de la commune de Langogne et Naussac en Lozère. 33/47

Vérification des paramètres entrés. Identification des 20 communes les plus proches du point recherché (Distance euclédienne). Algorithme de géolocalisation. Figure: Structure du service Web. 34/47

Algorithme : retourner les communes proches Sans cette fonction : La base de données locale contient environ 27000 communes. => Temps de réponse d algorithme de géolocalisation est très lent. D où linterêt de cette fonction : Récupération des 20 communes les plus proches du point X/Y. Distance euclédienne entre le point recherché et le centre du polygone de la commune. L algorithme de géolocalisation s effectue uniquement sur ces communes proches. 35/47

Algorithme de géolocalisation. But de l algorithme... Déterminer si le point est à l intérieur ou non du polygone. Retourner le nom et le code INSEE de la commune correspondante. 36/47

Principe de l algorithme Polygone fermé. Tracer un rayon horizontal du point recherché vers la droite. Compter le nombre nb d intersection entre le rayon et les segments du polygone. - Si nb : paire = le point est à l extérieur de la commune. - Si nb : impaire = le point est à l intérieur de la commune. Figure: Principe de l algorithme de géolocalisation. 37/47

Principe de l algorithme Fonctionne également pour les polygones avec des trous (Multipolygone). Figure: Principe de l algorithme de géolocalisation pour les multipolygones. 38/47

Autres services Web Géographiques... Si le service Web OSM ne retourne aucune commune... de deux services Web Lion1906 (France) et wikipedia (DROM-COM). Base de données contenant le centre du polygone de chaque commune. Retourner uniquement la commune la plus proche du point recherché. Basé sur le même principe de la fonction : trouvercommunesproches(). 39/47

Chaque jour une nouvelle version du fichier France.osm est publiée. Changements opérés sur les données OpenStreetMap (niveau communale). Étapes de la mise à jour : Génération d un fichier de différence entre deux versions du fichier OSM. Nouveaux scripts d analyse des données et de mise à jour de la base de données. 40/47

Génération du fichier de différence À l aide du logiciel OSMOSIS (commande spécifique)... Obtenir un fichier de différence entre deux intervalles de temps (équivalent commande Unix : DIFF). Le fichier possède une nouvelle structure contenant uniquement les changements opérés. 41/47

Format fichier OSM de différence Figure: Format du fichier OSM de différence. 42/47

Scripts d analyse de données de différence Traitement du nouveau format de fichier. Lecture du fichier de différence et l analyse des noeuds XML (create, modify et suppression). Seules les identifiants des entités cités dans le fichier de différence seront modifiés dans la base locale. Figure: Structure de la classe MiseAJour.php. 43/47

Mise à jour régulière (cron) La mise à jour est produite hebdomadairement à l aide d un fichier cron : 1 Téléchargement du nouveau fichier France.osm. 2 Filtrage du fichier OSM. 3 Génération du fichier de différence en comparant le nouveau et l ancien fichier filtré. 4 Analyse des données et remplissage de la base (prise en compte des changements). 44/47

La mission initiale est atteinte... Géolocalisation via le Carnet En Ligne précise. Mise à jour régulière depuis OSM. Base de données disposant de plus de 27000 communes. Version finale livrée début août et mise en ligne. Désormais le Carnet En Ligne fait appel à ce service Web pour localiser les observations botaniques. 45/47

Introduction Coordonnées GPS => Nom commune, CodeINSEE... http://www.tela-botanica.org/service:eflore:osm/0.1/ nom-commune?lon=4.64571&lat=46.20286 Figure: Retour au format json le nom de la commune et son code INSEE. 46/47

Apports du stage Géolocalisation précise et rapide pour les utilisateurs du Carnet En Ligne. Découvrir le fonctionnement d une entreprise. Suivre les étapes d un projet depuis sa phase de conception à sa mise en ligne. Apprendre davantage sur le domaine de la cartographie et de la géographie en France. Perfectionnement en langage PHP et Bash. 47/47