L’intelligence artificielle au service de la géomatique
L’avènement de l’Intelligence Artificielle
Avec l’arrivée du Big Data et du Cloud Computing, les algorithmes d’intelligence artificielle (IA) ont fait d’énormes progrès, jusqu’à devenir de plus en plus présents dans notre quotidien (moteurs de recherche et de recommandation, assistants personnels, reconnaissance vocale, reconnaissance de formes, …) et laissent entrevoir de nouvelles méthodes de production dites « intelligentes ». Quelle que soit leur application, l’ensemble de ces méthodes constitue la nouvelle tendance pour le traitement et l’analyse de données de manière générale.
Ces méthodes, encore peu employées dans le domaine de la géomatique laissent pourtant présager de nouvelles applications, en particulier pour le traitement et l’analyse de données issues de scanners 3D dynamiques, et plus généralement de données de type image.
Géomatique et intelligence artificielle
Les applications existantes en géomatique se concentrent le plus souvent autour de problématiques liées au traitement de données image. Il peut par exemple s’agir de photographies terrestres pour la réalisation de couches d’inventaires, ou même d’images de télédétection pour répondre à des besoins plus complexes (cartographie thématique, analyse de catastrophes naturelles, détection d’objet divers).
D’autres encore utilisent des méthodes similaires pour de l’inspection visuelle d’objets, par exemple pour la détection et segmentation automatique de fissures sur la chaussée ou sur de plus grands ouvrages tels que des barrages. De manière plus générale, l’intelligence artificielle permet également d’améliorer les systèmes de contrôle qualité visuels dans l’industrie (détection de défauts sur des pièces mécaniques par exemple).
Toutes ces solutions se basent sur une technologie commune : les réseaux de neurones convolutifs. Ces réseaux de neurones artificiels sont spécifiquement conçus pour répondre à des problématiques liées aux données image, et sont capables de fournir des résultats remarquables (aussi bons voire meilleurs que ceux des êtres humains dans certains cas).
Réseaux de neurones convolutifs
La mise en pratique de ces réseaux de neurones nécessite une grande attention, et celle-ci n’est pas immédiate. Avant de pouvoir être utilisés en production, ces algorithmes nécessitent d’être entraînés à détecter les objets ou zones d’intérêt. Pour ce faire, il est nécessaire de disposer d’un grand volume de données variées et représentatives des situations auxquelles ils seront confrontés par la suite.
La phase d’entraînement de l’algorithme est prédéterminante pour l’obtention de résultats de qualité. C’est au cours de celle-ci que l’algorithme va apprendre à reconnaître les objets ou situations d’intérêt. Il convient donc de la superviser avec soin.
Une fois l’algorithme entraîné et ses performances évaluées sur un jeu de données de test, celui-ci est jugé apte à la mise en production. Il est désormais capable de reconnaître les objets souhaités de manière autonome.
Pour y parvenir, les algorithmes de détection décomposent le problème en 2 étapes :
- Extraction des caractéristiques de l’image,
- Classification des éléments extraits.
L’extraction des caractéristiques de l’image se fait grâce à un ensemble de couches de convolutions permettant d’extraire les éléments distinctifs appris durant la phase d’apprentissage. Il peut s’agir d’éléments relativement simples telles que des informations de contour ou de coins présents dans l’image, mais également d’indices plus complexes tenant compte du contexte local des objets.
Une fois extraits, ces indices sont ensuite classifiés, c’est-à-dire qu’ils sont reliés à la nature d’objet leur correspondant au mieux.
De manière générale, ces algorithmes sont considérés comme des « boîtes noires » puisqu’ils sont totalement autonomes entre les phases d’entrée et sortie. Il est ainsi impossible pour l’utilisateur d’influer de quelque manière que ce soit sur un algorithme une fois l’entrainement terminé.
Application à une base de données de scanner dynamique
Pour notre part, nous avons choisi d’évaluer le potentiel de ces méthodes pour le traitement de données issues de notre scanner 3D dynamique.
Les données acquises à l’aide d’un scanner 3D dynamique se composent de photographies panoramiques à 360° et de nuages de points géoréférencés. Ces données sont extrêmement riches en termes d’informations puisqu’elles représentent un instantané de la géométrie de l’environnement d’acquisition. Il est par exemple courant de capturer l’ensemble d’un quartier pour établir son PCRS (Plan de Corps de Rue Simplifié).
L’extraction et l’analyse de ces données soulèvent cependant un problème : peu de solutions commerciales existent actuellement pour ce type de traitements, et celles-ci répondent rarement aux différents besoins de nos clients.
Dans le cas de la réalisation d’une carte d’inventaire, l’ensemble des opérations de production est bien souvent réalisé de manière manuelle par un opérateur humain. Celui-ci se retrouve ainsi chargé non seulement de l’exhaustivité, mais aussi de la qualité du positionnement des objets que l’on souhaite répertorier. Cette opération étant hautement répétitive, des oublis peuvent éventuellement survenir, et des contrôles supplémentaires viennent alors s’intégrer naturellement en fin de traitement afin de garantir la qualité du livrable.
Ce type d’opérations étant peu optimisé de manière générale, nous avons souhaité évaluer la faisabilité de l’ajout d’une couche d’intelligence artificielle permettant d’automatiser en grande partie l’analyse et l’extraction d’informations sémantiques du nuage de points. Grâce à l’intelligence artificielle, il est désormais possible d’extraire toutes sortes d’informations des données acquises, et d’ainsi rendre notre processus de production modulable et adaptable aux besoins du client.
Cette couche « d’intelligence » prend la forme d’un algorithme de détection d’objets, bénéficiant à la fois des meilleures performances des algorithmes d’intelligence artificielle en termes de rapidité et de précision. Si de récentes recherches rendent possible une détection directement dans le nuage de points, ces techniques n’atteignent actuellement pas les performances et la rapidité des algorithmes de détection dans l’image.
Nous avons par conséquent pris la décision de développer notre solution autour d’un tel algorithme, de manière à détecter dans l’image les différents objets choisis par nos clients.
Détection automatique des objets d’intérêt dans l’imagerie panoramique
Grâce à ces techniques de pointe, nous sommes capables de distinguer dans un premier temps différentes natures de ces objets, et ce dans des configurations diverses (couleur, géométrie, aspect visuel, …) dans l’imagerie panoramique, et ce avec précision. Il s’agit typiquement de repérer non seulement la position globale de l’objet par une boîte englobante, mais également son emprise précise par le biais d’un masque de segmentation venant l’épouser pixel par pixel.
Ces algorithmes étant polyvalents, notons qu’il n’est pas seulement possible de déceler des objets particuliers, mais également divers éléments tels que la présence de bâtiments ou de végétation dans de l’imagerie aérienne issue de campagnes drone ou même de défauts structurels d’ouvrages tels que des fissures.
De l’imagerie panoramique au nuage de points
Cette information sémantique est dans un second temps corrélée à la géométrie du nuage, ce qui nous permet d’extraire directement les points correspondant à l’objet voulu et de les analyser en accord avec le cahier des charges établi par nos clients.
Notre algorithme ayant appris à ne retenir les informations relatives qu’aux objets souhaités, ceux-ci sont directement extraits du nuage de points 3D.
Calcul de la position précise du centre des objets à partir de l’information extraite du nuage de points
Enfin, la dernière partie de notre traitement calcule avec précision la position du centre de chaque objet grâce à des algorithmes d’estimation robustes. Ces positions sont calculées directement dans le système de projection du nuage de points, et sans ajouter d’imprécision supplémentaire à ce dernier. On estime ainsi obtenir une précision supérieure à celle obtenue par digitalisation manuelle.
Ces positions connues sont finalement présentées sous la forme de cartes.
L’intervention humaine en tant que gage de qualité
Bien que notre moteur de détection tende à automatiser complètement le processus, l’intervention humaine d’un opérateur expert reste indispensable pour garantir la qualité des livrables. Cette intervention entre notamment en amont du processus de détection. Il s’agit là de superviser l’entraînement de l’algorithme, de manière à lui apprendre à reconnaître les objets souhaités de manière autonome. Cette opération indispensable, considérée comme la plus chronophage, n’est réalisée qu’une seule et unique fois pour l’ensemble des projets.
La seconde intervention indispensable au processus est aussi la plus courante, il s’agit d’effectuer un contrôle d’exhaustivité et de qualité quant au résultat obtenu en sortie de l’algorithme. Aucune méthode automatique n’étant infaillible, il convient de passer manuellement en revue l’ensemble des résultats de manière à garantir la qualité des livrables fournis au client.
Références
Figure 1 :
- X. X. Zhu et al., « Deep Learning in Remote Sensing: A Review », arXiv preprint arXiv:1710.03959, 2017.
- Z. Zhang, H. Wang, F. Xu, et Y.-Q. Jin, « Complex-valued convolutional neural network and its application in polarimetric SAR image classification », IEEE Transactions on Geoscience and Remote Sensing, vol. 55, no 12, p. 7177?7188, 2017.
Figure 2 :
- C. V. Dung et others, « Autonomous concrete crack detection using deep fully convolutional neural network », Automation in Construction, vol. 99, p. 52?58, 2019.
Figure 3 :
- W. Zhang et al., « Using Deep Learning to Identify Utility Poles with Crossarms and Estimate Their Locations from Google Street View Images », Sensors, vol. 18, no 8, p. 2484, 2018.
-
-
Fraction, la nouvelle application foncière de TT Géomètres Experts
-