Makina Blog

Le blog Makina-corpus

IA & cartographie : l'IA pour créer des cartes [Article 1]


Premier article de notre série sur les applications de geoIA : comment les techniques d'intelligence artificielle peuvent aider à la création de cartes ?

Pendant longtemps, la création de cartes était un travail long, laborieux, minutieux et coûteux. Cette histoire est captivante, et si cela vous intéresse la BnF propose une exposition virtuelle qui revient sur l'histoire de la cartographie de l'Antiquité à nos jours.

Aujourd'hui, les campagnes de prises de vues aériennes remplacent l'ancienne exploration du territoire avec planche à dessin et compas sous le bras. Mais même si l'arrivée du numérique a grandement simplifié les procédés de fabrication, la mise à jour de base de données géographiques est encore un travail coûteux (consultez cette courte vidéo expliquant le processus de la fabrication d'une carte par l'IGN).

Dans cet article, nous allons voir comment les algorithmes d'intelligence artificielle peuvent simplifier la création des cartes.

Réalisation de carte ou de plan

L'arrivée des algorithmes de deep-learning couplée à la mise à disposition d'images satellites toujours plus précises amènent de nouveaux acteurs dans le secteur de la fabrication de cartes ou de bases de données géographiques. Google, Mapbox, Facebook ne se contentent plus d'agglomérer des bases de données pour assurer la couverture cartographique de la planète, ils sont désormais capables d'enrichir directement leurs cartes.

Ces algorithmes permettent notamment de mettre à jour plus régulièrement les bases de données cartographiques, au rythme de la disponibilité des images satellitaires. Ils utilisent les techniques de détection d'objets sur lesquels nous allons revenir par la suite.

Des recherches sont aussi actuellement en cours pour automatiser les opérations de généralisation cartographique, c'est-à-dire de simplification ou d’adaptation du tracé d’un contour cartographique à l'échelle représentée (Touya et al., 2019). Il s'agit par exemple de regrouper plusieurs bâtiments ensemble ou de supprimer certains virages d'une route sinueuse lorsque le niveau de zoom est inférieur à une certaine valeur. Des solutions basées sur des techniques d'intelligence artificielle sont testées.

Enfin, des solutions automatisées pour la réalisation de plans d'intérieur commencent à être diffusées. Ce type d'applications pourrait se révéler particulièrement précieux en situation d'urgence où la cartographie rapide des lieux est un atout majeur pour la coordination des secours, comme le montre cet article présentant un prototype créé par une équipe du MIT.

Création ou transfert de style

Créer une carte ne signifie pas seulement représenter graphiquement des objets géographiques (routes, bâtiments, portes, etc.), il est aussi nécessaire de définir la sémiologie graphique qui va être utilisée. Plus couramment, nous parlerons de style cartographique.

La définition "manuellement" du style à appliquer est possible, comme ici pour représenter des données vectorielles dans le style de la carte de Cassini ou dans le style d'un atlas pour enfant.

Les algorithmes d'IA décuplent les possibilités en la matière. Les algorithmes de transfert de style entre images par deep-learning peuvent facilement être appliqués à des tuiles raster. C'est ce qu'a entrepris un collectif d'artistes de Milan en entraînant des réseaux de neurones à créer des cartes de villes dans un projet intitulé Invisible cities. Ils parviennent ainsi à transférer le style architectural d'une ville à une autre, par exemple celui de Venise à un quartier de Los Angeles.

Transfert du style de Venise à un quartier de Los Angeles - source : Invisible Cities

Grâce à leur modèle, ils sont aussi capables de créer l'image aérienne d'une ville imaginaire dessinée schématiquement sur une feuille de papier.

Création d'une ville imaginaire à partir d'un dessin - source : Invisible Cities

Détection d'objets

S'il est aujourd'hui possible de créer des cartes à partir d'images satellitaires, c'est que les algorithmes d'IA (réseaux de neurones convolutifs) permettent de détecter des objets qu'ils ont appris à reconnaître. C'est un domaine de recherche très actif qui a produit des algorithmes de reconnaissance d'objets (dans des images ou flux vidéo) désormais matures pour penser les utiliser en production.

Ces réseaux de neurones sont capables, selon leur architecture, de déterminer :

Pour utiliser ces réseaux comme un modèle prédictif, il est nécessaire de les avoir auparavant entraînés sur un jeu de données d'apprentissage (ensemble de données associées aux résultats attendus).

"Qui peut le plus, peut le moins" n'est pas un bon adage en deep-learning. En effet, il sera bien plus compliqué et long d'entraîner un modèle à localiser précisément un objet dans l'image que de lui demander si oui ou non l'image contient l'objet recherché. Nous aurons donc tout intérêt à bien définir le besoin avant de commencer à créer un modèle de détection d'objets et à l'entraîner.

Une solution open-source initialement portée par Mapbox, Robosat, permet de gérer toutes les étapes pour extraire de l'information géographique à partir d'images aériennes ou satellitaires. C'est un projet complet pour mettre en œuvre rapidement ce type de solution en se basant sur les images de Mapbox et les informations de la base de données OpenStreetMap. Malheureusement, il n'est plus supporté par Mapbox et ne permet pas simplement de travailler à partir de données - raster et vecteur - locales.

C'est pourquoi, Makina Corpus a récemment développé et mis à disposition en open-source un nouvel outil, geolabel-maker, celui-ci permet la création d'un jeu de données d'apprentissage complet sous la forme de couples (images, labels) ou sous la forme d'un lot d'images accompagné d'un fichier descriptif des objets contenus par les images. Ce jeu de données peut ensuite être injecté dans la chaîne de traitements de Robosat ou utilisé pour l'entraînement du modèle choisi.

Des solutions similaires existent pour travailler à partir d'images terrestres. Nous avons testé certaines de ces solutions dans le cadre d'un partenariat avec l’École Fédérale de Lausane où nous cherchions à décrire automatiquement des paysages.

À gauche l'image originale, à droite l'image segmentée selon 7 classes.

De la même façon, Mapillary développe grâce aux milliers d'images que les contributeurs et contributrices partagent sur sa plateforme une solution avancée d'analyse de scène et de détection de la signalisation routière.

source : Expanding Mapping Capabilities with Deep Learning, GeoAwesomeness, 2019

Avec ce type de solutions, il devient incroyablement facile d'enrichir et de maintenir des bases de données, telle que celle d'OSM comme Mappilary le présentait à la conférence FOSS4G l'année dernière.

Enfin, il est aussi possible de travailler à partir de nuages de points de 3D et de chercher à y localiser des objets - comme par exemple pour la détection de lignes haute-tension.

Lignes à haute tension détectée par deep-learning - source : PointCNN: replacing 50,000 man hours with AI, Medium, 2019

C'est l'objectif du projet PointNet. Ce type d'application peut notamment être intéressant pour la détection de portes et fenêtres sur les façades avant reconstruction automatique des bâtiments sous forme de modèles 3D. Nous obtiendrons ainsi des modèles de bâtiments non standardisés, mais très proches de leur réalité architecturale.

Une fois les objets localisés dans les images ou nuages de points, il est alors possible de réaliser des analyses spatiales ou spatio-temporelles à partir des résultats produits par les algorithmes d'IA.

Analyse spatiale suite à la détection d'objets (ou régions)

Parmi les plus classiques des analyses spatiales, il y a évidemment l'analyse de l'occupation du sol. C'est ce qu'a récemment présenté la Radiant Earth Fundation avec sa solution de classification du sol par deep-learning à partir d'images multispectrales.

Des solutions originales sont aussi proposées pour l'identification des zones végétalisées en combinant les sources de données classiquement utilisées : les images satellitaires (en particulier leur composante infrarouge) pour le calcul du NDVI (Normalized Difference Vegetation Index) et les nuages de points LIDAR. Grâce à cela, il est envisageable de compter les arbres en ville de manière automatique.

source : Every Tree in the City, Mapped, CityLab, 2018

C'est donc tout un ensemble d'analyses qui peut être revu ou facilité grâce aux algorithmes d'IA.

Analyse spatio-temporelle suite à la détection d'objets (ou régions)

Généralement, les étapes les plus longues et coûteuses dans la mise en place d'une solution d'intelligence artificielle sont la constitution du jeu de données d'apprentissage et l'entraînement du modèle. Mais une fois ces étapes réalisées, le modèle est facilement applicable à différents jeux de données, comme par exemple d'époques différentes. L'obtention d'analyses spatio-temporelles est alors relativement rapide (dès lors que les données sont disponibles) par extraction d'informations à partir de cartes historiques numérisées ou à partir de séries de photographies terrestres ou aériennes.

Nous avons mené ce type d'étude pour analyser l'évolution de paysages au fil du temps. Les résultats de classification des pixels des images étaient analysés pour qualifier les modifications du paysage au fur et à mesure des prises de vue.

Graphique présentant l'évolution de chaque catégorie dans le temps. La ligne traitillée jaune indique un changement important dans le paysage, ici la disparition de la végétation. La bordure noire sur les images est la marque du redressement des images appliquées avant la segmentation.

Ce type d'algorithme permet d'automatiser des analyses qui peuvent autrement se révéler très fastidieuses sur de larges jeux de données.

Conclusion

Les techniques d’intelligence artificielle ont d’ors et déjà su montrer tout leur potentiel pour la création de cartes à chaque étape du processus : qu’il s’agisse de la mise à jour de bases de données géographiques, de généralisation cartographique, de création de style cartographique ou encore de la réalisation d’analyses spatio-temporelles. Aucun doute sur le fait qu’elles seront bientôt incontournables en cartographie numérique. D’autant que leur apport ne s’arrête pas là. Nous verrons dans le prochain article comment l’IA peut aider à la navigation et à la découverte d’un territoire.

Sommaire de la série

  • Article 3 : L'IA pour aider à la prise de décision (à venir)
  • Article 4 : L'IA pour améliorer la qualité des données géographiques (à venir)

Formations

Formations associées

Formations IA / Data Science

Formation Machine Learning

À distance (FOAD) Du 25 au 29 novembre 2024

Voir la formation

Formations SIG / Cartographie

Formation Développer avec l'écosystème d'OpenStreetMap

Aucune session de formation n'est prévue pour le moment.

Pour plus d'informations, n'hésitez pas à nous contacter.

Voir la formation

Formations IA / Data Science

Formation Mise en place de projets Deep Learning avec Keras

Toulouse Du 19 au 21 mars 2025

Voir la formation

Actualités en lien

Image
Image application de l'IA sur une carte
20/07/2020

IA et cartographie : l'IA pour découvrir un territoire [Article 2]

Deuxième article de notre série sur les applications de geoIA : comment les techniques d'intelligence artificielle peuvent aider à la découverte d'un territoire ?

Voir l'article
Image
IA & Cartographie
08/06/2020

Série d'articles : IA & cartographie

Tour d'horizon de l'apport de l’intelligence artificielle à la cartographie ! Quand dans une discussion sont lancés les mots "intelligence artificielle" et "cartographie", il y a fort à parier que les protagonistes en viennent rapidement à parler de conduite assistée et voitures autonomes.

Voir l'article
Image
2rever
30/05/2017

Initiation au Machine Learning avec Python - La théorie

Dans ce tutoriel en 2 parties nous vous proposons de découvrir les bases de l'apprentissage automatique et de vous y initier avec le langage Python. Cette première partie se veut non technique et présente les concepts du Machine Learning, les différents types d'apprentissage et leurs principaux algorithmes. Il situe enfin Python dans cet univers en présentant les nombreuses librairies à votre disposition pour aborder cette discipline.

Voir l'article

Inscription à la newsletter

Nous vous avons convaincus