Étiqueter les objets pour le Deep Learning

Disponible avec une licence Image Analyst.

Disponible avec une licence Spatial Analyst.

Toutes les tâches de Deep Learning supervisées dépendent de jeux de données étiquetés. En d’autres termes, les utilisateurs doivent appliquer leurs connaissances pour entraîner le réseau neuronal à identifier ou à détecter les objets qui vous intéressent. Les objets étiquetés sont utilisés par le réseau neuronal pour entraîner un modèle, lui-même utilisé pour procéder à l’inférence des données.

L’étiquetage n’est autre que le processus de sélection d’exemples représentatifs d’un objet qui vous intéresse. Les objets sélectionnés pour étiquetage doivent décrire précisément des caractéristiques spatiales, spectrales, d’orientation, de taille et de condition des objets qui vous intéressent. Plus les objets étiquetés représentent l’entité qui vous intéresse, plus l’entraînement du modèle Deep Learning sera optimal et plus la classification et la détection de l’inférence seront précises.

L’annotation des images, ou étiquetage, est crucial pour les tâches de Deep Learning telles que la vision par ordinateur et l’apprentissage. Un gros volume de données étiquetées est nécessaire pour entraîner correctement un modèle de Deep Learning. Lorsque les données d’entraînement adéquates sont disponibles, les systèmes de Deep Learning peuvent être d’une grande précision lors de l’extraction des entités, de la reconnaissance des modèles et de la résolution de problèmes complexes. Vous pouvez utiliser la fenêtre Étiqueter les objets pour le Deep Learning pour étiqueter les données.

Accéder au bouton Étiqueter les objets pour le Deep Learning Étiqueter les objets pour le Deep Learning depuis le menu déroulant Outils de Deep Learning dans le groupe Classification d’images sur l’onglet Imagerie. Une fois l’outil ouvert, choisissez d’utiliser une couche existante ou créez une collection d’images. Pour une nouvelle collection d’images, accédez à l’emplacement du dossier d’imagerie et une couche sera créée avec la collection.

Une fois la valeur du paramètre Images/Collection d’images spécifiée, la fenêtre Étiqueter les objets s’affiche. La fenêtre est divisée en deux parties. La partie supérieure de la fenêtre sert à gérer les classes et la partie inférieure, à gérer l’ensemble d’échantillons d’entraînement et à exporter les données d’entraînement pour les structures de Deep Learning.

Fenêtre Étiqueter les objets

Créer des classes et étiqueter des objets

La partie supérieure de la fenêtre permet de gérer les classes d’objets et de créer les objets utilisés dans le cadre de l’entraînement du modèle de Deep Learning. Les outils de construction suivants ainsi que les outils d’IA sont disponibles pour créer des objets étiquetés :

OutilDescription
New Rectangle

Créer un objet étiqueté en traçant un rectangle autour d’une entité ou d’un objet dans le raster.

New Polygon

Créer un objet étiqueté en traçant un polygone autour d’une entité ou d’un objet dans le raster.

New Circle

Créer un objet étiqueté en traçant un cercle autour d’une entité ou d’un objet dans le raster.

New Lasso Area

Créer un objet étiqueté en traçant une forme à main levée autour d’une entité ou d’un objet dans le raster.

Détection automatique

Détecter et étiqueter automatiquement l’entité ou l’objet. Un polygone est tracé autour de l’entité ou de l’objet.

Cet outil est disponible uniquement si les bibliothèques de structures de Deep Learning sont installées.

Sélectionner par polygone

Créer une entité en sélectionnant un segment à partir d’une couche segmentée. Cette option est seulement disponible s’il existe une couche segmentée dans la fenêtre Contents (Contenu). Activer le Sélecteur de segment en mettant en surbrillance la couche segmentée dans la fenêtre Contenu, puis sélectionner la couche dans la liste déroulante Sélecteur de segment.

Étiqueter l’image

Attribuer la classe sélectionnée à l’image actuelle.

Cet outil est seulement disponible en mode de collection d’images.

Modifier

Sélectionner et mettre à jour un objet étiqueté.

Nouveau modèle

Créer une structure de classification.

Parcourir

Sélectionner une option relative à la structure de classification.

  • Accéder à une structure existante.
  • Générer une structure à partir d’une classe d’entités contenant des échantillons d’entraînement existants.
  • Générer une structure à partir d’un raster classé existant.
  • Générer une nouvelle structure avec la structure par défaut, 2011 National Land Cover Database.

Enregistrer

Enregistrer les modifications apportées à la structure.

Enregistrer les mises à jour

Enregistrer une copie de la structure.

Addition

Ajouter une catégorie de classe à la structure. Sélectionner le nom de la structure pour créer une classe parent au niveau le plus élevé. Sélectionner le nom d’une classe existante pour créer une sous-classe.

Supprimer les éléments sélectionnés

Supprimer la classe sélectionnée ou la catégorie de sous-classe de la structure.

Outils d’étiquetage assistés par l’IA

Il existe deux types d’outils d’IA pour l’étiquetage des objets : Détection automatique et Invite de texte.

Outil de détection automatique

L’outil Détection automatique Détection automatique trace automatiquement un rectangle autour d’une entité. Cliquez sur l’entité, et une emprise rectangle contenant l’entité est tracée. Si vous souhaitez une limite surfacique de l’entité, appuyez sur la touche Maj tout en cliquant sur l’entité et un périmètre est tracé autour de la forme de l’entité. Pour que l’outil fonctionne correctement, un nombre significatif de pixels de l’entité doit être affiché sur la carte, ce qui nécessite de zoomer sur les entités.

L’outil Détection automatique fonctionne bien sur des entités distinctes caractérisées par des formes distinctes, des contours nets et un contraste élevé. Il n’est pas recommandé pour les entités continues très proches les unes des autres.

Remarque :

Les structures des modèles de Deep Learning pour ArcGIS doivent être installées pour utiliser cette fonctionnalité.

Outil d’invite de texte

Avec l’outil Invite de texte, utilisez l’entité de détection pour contribuer à l’étiquetage. Saisissez le nom de l’objet dans la zone de texte Nom de classe et cliquez sur le bouton Détecter. Il est recommandé d’utiliser une GPU haut de gamme avec une mémoire RAM minimale de 12 Go pour cette entité.

Pour améliorer les résultats, définissez les valeurs Seuil de la zone et Seuil de texte dans les options Configurer :

  • Seuil de la zone : cette valeur est utilisée pour la détection d’objets dans l’image. Une valeur supérieure rend le modèle encore plus sélectif, n’identifiant que les instances d’objet les plus fiables, entraînant moins de détections globales. Une valeur inférieure rend le modèle plus tolérant, entraînant davantage de détections, notamment des détections potentiellement moins fiables. Les valeurs du seuil sont comprises entre 0 et 1.
  • Seuil de texte : cette valeur est utilisée pour associer les objets détectés à l’invite de texte fournie. Une valeur plus élevée exige une association plus forte entre l’objet et l’invite de texte, entraînant des associations plus précises, mais potentiellement moindres. Une valeur plus basse permet des associations plus faibles, ce qui peut accroître le nombre d’associations, mais également présenter des correspondances à la précision moindre. Les valeurs du seuil sont comprises entre 0 et 1.

Remarque :

Les structures des modèles de Deep Learning pour ArcGIS doivent être installées pour utiliser cette fonctionnalité.

Boîte de dialogue Définir une classe

La boîte de dialogue Define Class (Définir une classe) permet de créer une classe ou de définir une classe existante. Si vous choisissez Use Existing Class (Utiliser la classe existante), sélectionnez l’option Class Name (Nom de la classe) qui convient pour cet objet. Si vous choisissez Ajouter une nouvelle classe, vous pouvez mettre à jour les informations et cliquer sur OK pour créer la classe.

Onglet Objets étiquetés

L’onglet Objets étiquetés se trouve dans la partie inférieure de la fenêtre Objets étiquetés et permet de gérer les échantillons d’entraînement que vous avez collectés pour chaque classe. Collectez des sites représentatifs, ou échantillons d’entraînement, pour chaque classe dans l’image. Un échantillon d’entraînement possède des informations de localisation (polygone) et une classe associée. L’algorithme de classification d’image utilise les échantillons d’entraînement, enregistrés sous forme d’une classe d’entités, pour identifier les classes d’occupation du sol dans l’intégralité de l’image.

Vous pouvez voir et gérer les échantillons d’entraînement en les ajoutant, en les regroupant ou en les supprimant. Lorsque vous cliquez sur un échantillon d’entraînement, il est sélectionné sur la carte. Double-cliquez sur un échantillon d’entraînement dans la table pour zoomer dessus sur la carte.

Les outils de l’onglet Objets étiquetés sont décrits dans le tableau suivant :

OutilDescription
Parcourir

Ouvrir une classe d’entités d’échantillons d’entraînement existante.

Enregistrer

Enregistrer les mises à jour apportées à la classe d’entités d’objets étiquetés courants.

Enregistrer les mises à jour

Enregistrer les objets étiquetés courants sous forme d’une nouvelle classe d’entités.

Supprimer les éléments sélectionnés

Supprimer les objets étiquetés sélectionnés.

Onglet Exporter les données d’entraînement

Lorsque vous avez terminé de collecter les échantillons, vous pouvez les exporter dans les données d’entraînement en cliquant sur l’onglet Exporter des données d’entraînement. Les données d’entraînement peuvent ensuite être utilisées dans un modèle de Deep Learning. Une fois les valeurs de paramètre décrites ci-dessous établies, cliquez sur Exécuter pour créer les données d’entraînement.

ParamètreDescription

Dossier en sortie

Dossier en sortie où les données d’entraînement seront enregistrées.

Masquer les entités surfaciques

Classe d’entités surfaciques qui délimite la zone de création des fragments d’images.

Seuls les fragments d’images totalement inclus dans les polygones seront créés.

Format de l’image

Spécifie le format raster des fragments d’images en sortie :

  • TIFF : format par défaut.
  • MRF (Meta Raster Format)
  • PNG
  • JPEG

Les formats PNG et JPEG prennent en charge jusqu’à trois canaux.

Taille de tuile X

Taille des fragments d’images pour la dimension x.

Taille de tuile Y

Taille des fragments d’images pour la dimension y.

Pas en X

Distance de déplacement sur la direction x lors de la création des fragments d’image suivants.

Si le pas est égal à la taille de tuile, il n’y a pas de superposition. Si le pas est égal à la moitié de la taille de tuile, il y a une superposition de 50 %.

Pas en Y

Distance de déplacement sur la direction y lors de la création des fragments d’image suivants.

Si le pas est égal à la taille de tuile, il n’y a pas de superposition. Si le pas est égal à la moitié de la taille de tuile, il y a une superposition de 50 %.

Angle de rotation

Angle de rotation utilisé pour générer des fragments d’image.

Un fragment d’image est d’abord généré sans rotation. Il subit ensuite une rotation selon l’angle spécifié afin de créer d’autres fragments d’image. L’image est pivotée et un fragment est créé, jusqu’à sa rotation complète. Par exemple, si vous spécifiez un angle de rotation de 45 degrés, l’outil crée huit fragments d’image. Les huit fragments d’image sont créés aux angles suivants : 0, 45, 90, 135, 180, 25, 270 et 315.

Aucune tuile d’entités en sortie

Spécifie si les fragments d’images qui ne capturent pas d’échantillons d’apprentissage seront exportés.

  • Désactivé : seuls les fragments d’image qui capturent des échantillons d’entraînement sont exportés. Il s’agit de l’option par défaut.
  • Activé : tous les fragments d’image, y compris ceux qui ne capturent pas d’échantillons d’entraînement, sont exportés.

Collecter des fragments d’image qui ne contiennent pas d’échantillons d’entraînement permet d’aider le modèle à identifier les objets qui ne doivent pas être considérés comme faisant partie des résultats. C’est le cas des objets de type faux positifs par exemple. Cela permet de réduire le sur-ajustement.

Format des métadonnées

Indique le format utilisé pour les étiquettes de métadonnées en sortie.

Si les données d’échantillons d’apprentissage en entrée sont une couche de classe d’entités, telle qu’une couche d’emprise de bâtiment ou un fichier d’échantillon d’apprentissage de classification standard, utilisez l’option Étiquettes KITTI ou PASCAL Visual Object Classes (KITTI_rectangles ou PASCAL_VOC_rectangles dans Python). Les métadonnées en sortie sont un fichier .txt ou un fichier .xml comportant les données d’échantillons d’apprentissage contenues dans le rectangle d’emprise minimale. Le nom du fichier de métadonnées correspond à celui de l’image source en entrée. Si les données d’échantillons d’apprentissage en entrée sont une carte de classe, utilisez l’option Tuiles classées (Classified_Tiles dans Python) comme format de métadonnées en sortie.

  • Étiquettes KITTI : les métadonnées ont le même format que celui du jeu de données de vérification de la détection d’objets du KITTI (Karlsruhe Institute of Technology and Toyota Technological Institute). Le jeu de données KITTI est une suite de référence en matière de conception. Les fichiers d’étiquettes sont des fichiers de texte brut. Toutes les valeurs, numériques ou de chaînes, sont séparées par des espaces et chaque ligne correspond à un objet.
  • PASCAL Visual Object Classes : les métadonnées ont le même format que le jeu de données PASCAL VOC (Pattern Analysis, Statistical Modeling and Computational Learning, Visual Object Classes). Le jeu de données PASCAL VOC est un jeu de données d’image standardisé pour la reconnaissance des classes d’objets. Les fichiers d’étiquettes sont au format .xml et contiennent des informations sur le nom des images, la valeur de classe et les emprises. Il s’agit de l’option par défaut.
  • Tuiles classées : la sortie est un fragment d’image classé par fragment d’image en entrée. Aucun autre type de métadonnées pour chaque fragment d’image n’est utilisé. Seule la sortie statistique comporte plus d’informations sur les classes, telles que les noms des classes, les valeurs des classes et les statistiques en sortie.
  • Masques RCNN : la sortie correspond à des fragments d’image comportant un masque sur les zones dans lesquelles se trouve l’échantillon. Le modèle génère des emprises et des masques de segmentation pour chaque instance d’un objet dans l’image. Il repose sur le réseau pyramidal d’entités (Feature Pyramid Network ou FPN) et une architecture ResNet101 dans le modèle de structure d’apprentissage profond.
  • Tuiles étiquetées : chaque tuile en sortie est étiquetée selon une classe spécifique. Si vous choisissez ce format de métadonnées, vous pouvez affiner davantage les paramètres Blacken Around Feature (Assombrir autour de l’entité) et Crop Mode (Mode de rognage).
  • Tuiles à plusieurs étiquettes : chaque tuile en sortie est étiquetée selon une ou plusieurs classes. Par exemple, une tuile peut porter les étiquettes agriculture et nuageux. Ce format est utilisé pour la classification des objets.
  • Exporter des tuiles : la sortie consiste en des fragments d’image sans étiquette. Ce format est utilisé pour les techniques de conversion d’image, telles que Pix2Pix et Super Resolution (Super Résolution).
  • CycleGAN : la sortie consiste en des fragments d’image sans étiquette. Ce format est utilisé par la technique de conversion d’image CycleGAN visant à entraîner les images à ne pas se chevaucher.
  • Imagenet : chaque tuile en sortie est étiquetée selon une classe spécifique. Ce format est utilisé pour la classification des objets. Toutefois, il peut également être utilisé pour le suivi des objets lorsque le type de modèle Deep Sort est utilisé pendant l’entraînement.

Pour le format de métadonnées KITTI, 15 colonnes sont créées, mais seulement 5 d’entre elles sont utilisées dans l’outil. La première colonne est la valeur de classe. Les 3 colonnes suivantes sont ignorées. Les colonnes 5 à 8 définissent le rectangle d’emprise minimale comportant quatre emplacements de coordonnées d’image : pixels de gauche, en haut, de droite et en bas. Le rectangle d’emprise minimale englobe le fragment d’apprentissage utilisé dans le classificateur d’apprentissage en profondeur. Les autres colonnes ne sont pas utilisées.

Assombrir autour de l’entité

Indique si les pixels autour de chaque objet ou entité de chaque tuile d’images sont masqués.

  • Désactivé : les pixels entourant les objets ou les entités ne sont pas masqués. Il s’agit de l’option par défaut.
  • Activé : les pixels entourant les objets ou les entités sont masqués.

Ce paramètre s’applique uniquement lorsque le paramètre Format de métadonnées est défini sur Tuiles étiquetées et qu’une classe d’entités en entrée ou qu’un raster classé a été spécifié.

Mode de rognage

Spécifie si les tuiles exportées sont rognées de telle sorte qu’elles fassent toutes la même taille.

  • Taille fixe : les tuiles exportées font la même taille et sont centrées sur l’entité. Il s’agit de l’option par défaut.
  • Emprises : les tuiles exportées sont rognées de telle sorte que l’emprise géométrique entoure uniquement l’entité dans la tuile.

Ce paramètre s’applique uniquement lorsque le paramètre Format de métadonnées a pour valeur Tuiles étiquetées ou Imagenet et qu’une classe d’entités en entrée ou qu’un raster classé a été spécifié.

Système de référence

Indique le type de système de référence à utiliser pour interpréter l’image en entrée. Le système de référence spécifié doit correspondre au système de référence utilisé pour entraîner le modèle d’apprentissage profond.

  • Espace cartographique : l’image en entrée se trouve dans un système de coordonnées basé sur une carte. Il s’agit de l’option par défaut.
  • Espace image : l’image en entrée se trouve dans un espace image (lignes et colonnes), sans rotation ni distorsion.

Raster en entrée supplémentaire

Source d’imagerie en entrée supplémentaire pour les méthodes de conversion d’image.

Ce paramètre est valide lorsque le paramètre Format des métadonnées est défini sur Tuiles classées, Exporter des tuiles ou CycleGAN.

Les données d’entraînement exportées peuvent ensuite être utilisées dans un modèle de Deep Learning.

Rubriques connexes