Télécharger et explorer les données

Vous allez commencer par télécharger trois fichiers .zip contenant les données que vous utiliserez dans ce didacticiel pour l’entraînement et la classification des données du nuage de points. Une fois que vous aurez téléchargé et extrait les données, vous explorerez et symboliserez les fichiers de jeu de données LAS dans ArcGIS Pro.

Télécharger les données

Toutes les données dont vous avez besoin pour suivre le didacticiel se trouvent dans les trois fichiers .zip que vous allez télécharger maintenant.

  1. Avant de télécharger les données, assurez-vous que les bibliothèques de Deep Learning sont installées et vérifiez que votre ordinateur est prêt.

    Remarque :

    L’utilisation des outils de Deep Learning de ArcGIS Pro implique que vous ayez installé les bibliothèques de Deep Learning appropriées sur votre ordinateur. Si ces fichiers ne sont pas installés, vérifiez que ArcGIS Pro est fermé et suivez les étapes décrites dans les instructions Se préparer au Deep Learning dans ArcGIS Pro. Dans ces instructions, vous allez également découvrir comment vérifier si votre matériel informatique et vos logiciels peuvent exécuter des processus de Deep Learning et apprendre d’autres conseils utiles. Une fois que vous avez terminé, vous pouvez poursuivre le didacticiel.

  2. Sur votre ordinateur, ouvrez l’Explorateur de fichiers.
  3. Sur le lecteur C:\, créez un dossier nommé LearnArcGIS. Dans le dossier LearnArcGIS, créez un autre dossier nommé DL.

    Le dossier C:\LearnArcGIS\DL correspondant à l’emplacement dans lequel vous allez conserver toutes les données et les sorties de ce didacticiel.

  4. Téléchargez les fichiers .zip suivants :
    • smalldata.zip : contient un petit jeu de données d’entraînement, la limite d’entraînement, un petit jeu de données de validation, la limite de validation et un raster MNE.
    • testdata.zip : contient un jeu de données de test, la limite de traitement et un raster MNE.
    • results.zip : contient les résultats d’entraînement du grand jeu de données que vous pouvez utiliser plutôt que d’entraîner le modèle pour un grand jeu de données.
  5. Lorsque les fichiers sont téléchargés, extrayez chaque fichier .zip dans le dossier LearnArcGIS\DL.
    Remarque :

    Pour extraire un fichier .zip, cliquez avec le bouton droit dessus, sélectionnez Extract All (Extraire tout) et accédez au dossier LearnArcGIS\DL.

    Fichiers décompressés

    Les dossiers contiennent diverses informations que vous utiliserez pour préparer et entraîner les données. Quelques-uns des fichiers principaux du dossier sont des fichiers LAS. Un fichier LAS est un format binaire standard permettant de stocker des données Lidar aéroportées. Le jeu de données LAS permet d’examiner des fichiers LAS, dans leur format natif, rapidement et facilement, car il fournit des statistiques détaillées et la couverture de zone des données lidar contenues dans les fichiers LAS. Le dossier results contient un modèle entraîné à l’aide d’un grand jeu de données réalisé sur un ordinateur équipé d’un GPU de 24 Go. Dans la section finale de ce didacticiel, vous utiliserez ce modèle entraîné pour classer un jeu de données LAS.

    Vous passerez ensuite en revue les données téléchargées dans ArcGIS Pro et vous familiariserez avec elles.

Observer les données d’entraînement et de validation

Vous allez créer un projet ArcGIS Pro et observer les données d’entraînement et de validation d’un petit jeu de données.

  1. Démarrez ArcGIS Pro.
  2. Le cas échéant, connectez-vous à votre compte d’organisation ArcGIS.
    Remarque :

    Si vous n’avez pas accès à ArcGIS Pro ou ne disposez pas d’un compte d’organisation ArcGIS, consultez les options disponibles pour accéder aux logiciels.

  3. Sous New Project (Nouveau projet), cliquez sur Local Scene (Scène locale).

    Créez une scène locale.

  4. Dans la boîte de dialogue New Project (Nouveau projet), dans la zone Name (Nom), saisissez Classification des lignes à haute tension à l’aide du Deep Learning. Pour Location (Emplacement), cliquez sur Browse (Parcourir). Accédez à C:\LearnArcGIS, cliquez sur le dossier DL, puis cliquez sur OK. Décochez la case Create a folder for this local project (Créer un dossier pour ce projet local).

    Nom et emplacement du projet

  5. Cliquez sur OK.
  6. Dans la fenêtre Catalog (Catalogue), développez Folders (Dossiers), puis développez DL.
    Remarque :

    Si la fenêtre Catalog (Catalogue) n’est pas affichée, sur le ruban, cliquez sur View (Vue) et dans le groupe Windows (Fenêtres), cliquez sur Catalog Pane (Fenêtre Catalogue).

    Vous pouvez voir les dossiers de données que vous avez téléchargés et extraits à cet emplacement.

    Contenu du dossier DL

    Tout d’abord, vous allez explorer les fichiers du dossier small_data et mettre à jour les statistiques sur le jeu de données pour vous assurer que les bons codes de classe s’affichent.

  7. Dans la fenêtre Catalog (Catalogue), développez le dossier smalldata. Cliquez avec le bouton droit sur train_small.lasd et choisissez Properties (Propriétés).

    Option Properties (Propriétés)

  8. Dans la fenêtre LAS Dataset Properties (Propriétés du jeu de données LAS), cliquez sur l’onglet Statistics (Statistiques).

    Statistiques du jeu de données LAS

    Le jeu de données contient plusieurs codes de classe :

    • 1- Unassigned (1- Non affecté) représente les points non classés, principalement la végétation basse ou les objets situés au-dessus du sol, mais de taille inférieure à celle de la végétation et des bâtiments de haute taille.
    • 2- Ground (2- Sol) représente le sol.
    • 5- High Vegetation (5- Végétation haute) représente la végétation haute, telle que les arbres.
    • 6- Building (6- Bâtiment) représente les bâtiments et d’autres structures.
    • 7- Noise (7- Bruit) représente les points bas.
    • 14- Wire-Conductor (14- Conducteur métallique) représente les lignes électriques réelles.
    • 15- Transmission Tower (15- Tour de transmission) représente les tours de transmission électrique.

    Vous vous intéressez au code de classe 14 correspondant à Wire Conductor (Conducteur métallique). Votre objectif consiste à entraîner un modèle pour détecter les points lidar représentant des lignes à haute tension de manière à mieux évaluer les risques d’incendie auxquels sont exposés les arbres situés à proximité.

    En bas de la fenêtre, un message indique qu’un fichier est obsolète ou ne comporte pas de statistiques. Vous allez corriger ce problème de manière à pouvoir afficher les codes de classe corrects dans la scène.

  9. Cliquez sur Mettre à jour.

    Bouton Update (Mettre à jour)

    Un message s’affiche, indiquant que les statistiques sont à jour.

    Statistiques à jour.

    À présent que les statistiques sont à jour, vous pouvez définir le style de la couche en fonction des codes de classe.

  10. Cliquez sur OK.
  11. Dans la fenêtre Catalog (Catalogue), cliquez avec le bouton droit sur la couche train_small.lasd et choisissez Add to Current Map (Ajouter à la carte actuelle).

    Option Ajouter à la carte actuelle

    La couche du jeu de données LAS apparaît dans la scène.

    Maintenant que vous avez mis à jour les statistiques pour le fichier du petit jeu de données LAS, vous allez faire de même pour le jeu de données LAS qui servira à valider le modèle, c’est-à-dire val_small.lasd.

  12. Dans la fenêtre Catalog (Catalogue), ouvrez les propriétés pour val_small.lasd, mettez à jour les statistiques et cliquez sur OK. Ajoutez val_small.lasd à la carte actuelle.
  13. Dans la scène, appuyez sur V ou C tout en faisant glisser le pointeur pour incliner et déplacer la scène afin d’explorer les jeux de données en 3D.

    Petit jeu de données ajouté à la scène

    Vous allez utiliser train_small.lasd pour entraîner le modèle et val_small.lasd pour valider le modèle entraîné afin d’empêcher le surapprentissage au cours du processus d’entraînement.

    Vous allez ensuite mettre à jour la symbologie de chacune des couches de jeux de données LAS pour qu’elles s’affichent dans des couleurs différentes selon les codes de classe. Vous allez commencer par la couche train_small.lasd.

  14. Dans la fenêtre Contents (Contenu), cliquez sur la couche train_small.lasd pour la sélectionner. Sur le ruban, cliquez sur l’onglet LAS Dataset Layer (Couche de jeu de données LAS).

    Onglet Couche de jeu de données LAS

  15. Sur l’onglet LAS Dataset Layer (Couche de jeu de données LAS), dans le groupe Drawing (Affichage), pour Symbology (Symbologie), cliquez sur le menu déroulant et sélectionnez Class (Classe).

    Option Class (Classe)

    La fenêtre Symbology (Symbologie) s’ouvre et la couche train_small.lasd est symbolisée par ses codes de classe.

    Codes de classe

    Remarque :

    Si votre couche de jeu de données LAS comporte des espaces blancs, il peut s’agir d’un problème de mise en cache. Il convient alors d’accéder aux propriétés du jeu de données LAS, de choisir Cache et de sélectionner Clear Cache (Effacer le cache) pour résoudre le problème. Il est sinon automatiquement corrigé à la fermeture et le réouverture de ArcGIS Pro.

  16. Dans la fenêtre Contents (Contenu), cliquez sur val_small.lasd. Sur l’onglet LAS Dataset Layer (Couche de jeu de données LAS), cliquez sur le menu déroulant Symbology (Symbologie) et sélectionnez Class (Classe).

    Petits jeux de données symbolisés selon les classes

    La couche val_small.lasd est maintenant symbolisée par ses codes de classe.

    Remarque :

    Les jeux de données LAS peuvent être particulièrement volumineux et prendre plus de temps à s’afficher que d’autres couches. Pour accélérer leur affichage, vous pouvez construire des pyramides à l’aide de l’outil Build LAS Dataset Pyramid (Créer une pyramide de jeu de données LAS). Cet outil permet de construire ou de mettre à jour un cache d’affichage de jeu de données LAS, qui optimise ses performances de rendu.

  17. Au-dessus du ruban, sur la barre d’outils Quick Access (Accès rapide), cliquez sur Save (Enregistrer) pour enregistrer le projet.

    Bouton Enregistrer

Vous allez ensuite entraîner un modèle à l’aide des deux jeux de données que vous avez explorés.


Entraîner un modèle à l’aide d’un petit jeu de données

Dans ce module, vous allez utiliser des jeux de données de petite taille pour suivre le processus d’entraînement d’un modèle de classification. Comme ce jeu de données ne comporte pas autant de points qu’il conviendrait pour entraîner un modèle de classification plus précis, le modèle de classification généré risque de manquer de précision. Cette section présente le processus d’entraînement d’un modèle. Vous utiliserez un modèle entraîné issu d’un plus grand échantillonnage de points plus tard dans le didacticiel pour classer un jeu de données LAS et visualiser les lignes à haute tension.

Préparer le jeu de données d’entraînement

Les jeux de données LAS ne sont pas utilisables directement pour entraîner le modèle. Les jeux de données LAS doivent être convertis en plus petits blocs d’entraînement. Vous allez utiliser l’outil de géotraitement Prepare Point Cloud Training Data (Préparer les données d’entraînement du nuage de points) dans ArcGIS Pro pour exporter les fichiers LAS sous forme de blocs.

Votre objectif consiste à entraîner le modèle de sorte qu’il identifie et classifie les points qui sont des lignes à haute tension. Il n’est pas nécessaire d’examiner tous les points du nuage de données LAS. Seuls les points qui se trouvent aux alentours des lignes à haute tension doivent être étudiés. Vous allez utiliser les données de limites déjà préparées, bnd_train_small et bnd_val_small, pour indiquer les points à convertir en blocs d’entraînement. Vous trouverez ci-dessous le graphique illustrant les limites d’entraînement et de validation qui entourent les lignes à haute tension.

Graphique des limites

  1. Sur le ruban, cliquez sur l’onglet Analysis (Analyse). Dans le groupe Geoprocessing (Géotraitement), cliquez sur Tools (Outils).

    Bouton Outils

    La fenêtre Geoprocessing (Géotraitement) s’affiche.

  2. Dans la fenêtre Geoprocessing (Géotraitement), recherchez et ouvrez l’outil Prepare Point Cloud Training Data Training (Préparer les données d’entraînement du nuage de points).

    Outil Préparer les données d’entraînement du nuage de points

    Remarque :
    Cet outil a besoin de ArcGIS 3D Analyst extension.

  3. Dans l’outil Prepare Point Cloud Training Data Training (Préparer les données d’entraînement du nuage de points), définissez les paramètres suivants :
    • Dans Input Point Cloud (Nuage de points en entrée), sélectionnez train_small.lasd.
    • Dans Training Boundary Features (Entités de limite d’entraînement), cliquez sur Browse (Parcourir), accédez à C:\LearnArcGIS\DL\smalldata\boundaries.gdb, sélectionnez bnd_train_small et cliquez sur OK.
    • Dans Validation Point Cloud (Nuage de points de validation), sélectionnez val_small.lasd.
    • Dans Validation Boundary Features (Entités de limite de validation), cliquez sur Browse (Parcourir), accédez à C:\LearnArcGIS\DL\smalldata\boundaries.gdb, sélectionnez bnd_val_small et cliquez sur OK.
    • Pour Reference Surface (Surface de référence), cliquez sur Browse (Parcourir) et accédez à C:\LearnArcGIS\DL\smalldata. Cliquez sur dem_small.tif et sur OK.

    Le raster MNE servira à calculer la hauteur relative des points par rapport au sol. Vous avez saisi toutes les données d’entraînement, les données de validation et les limites de traitement.

    Paramètres d'outil

    Vous allez maintenant désigner les codes de classe à exclure.

  4. Pour Excluded Class Codes (Codes de classe exclus), saisissez 2. Cliquez sur le bouton Add another (Ajouter un autre) et saisissez 7.

    Codes 2 et 7 exclus

    Les points Sol (classe 2) et Bruit (classe 7) sont exclus des données d’entraînement. Les points au sol constituant généralement une grande part des points totaux, leur exclusion permet d’accélérer le processus d’entraînement.

  5. Laissez le champ Filter Blocks by Class Code (Filtrer les blocs par code de classe) vide.
  6. Dans Output Training Data (Données d’entraînement en sortie), cliquez sur Browse (Parcourir) et accédez à C:\LearnArcGIS\DL\results. Dans Name (Nom), tapez training_data_small.pctd.

    Nom des données d’entraînement en sortie

    Remarque :

    L’extension du fichier en sortie .pctd signale des données d’entraînement du nuage de points.

  7. Cliquez sur Save (Enregistrer).
  8. Dans l’outil Prepare Point Cloud Training Data Training (Préparer les données d’entraînement du nuage de points), continuez à saisir les paramètres suivants :
    • Dans Block Size (Taille de bloc), tapez 82. Dans Unknown (Inconnu), cliquez sur le menu déroulant et sélectionnez US Survey Feet (Pieds d’arpentage américains).
    • Dans Block Point Limit (Limite de points de bloc), conservez le paramètre par défaut 8192.

    Paramètres restants

    Block Size (Taille de bloc) et Block Point Limit (Limite de points de bloc) contrôlent le nombre de points figurant dans un bloc. Pour déterminer cette valeur, il est important de prendre en compte l’espacement moyen des points, les objets d’intérêt, les mémoires GPU dédiées disponibles, ainsi que la taille du lot lors de la configuration de ces deux paramètres. En règle générale, la taille du bloc doit être suffisante pour capturer les objets qui vous intéressent au niveau de sous-échantillonnage le plus faible.

    Vous allez commencer par une taille de bloc de 82 pieds (25 mètres environ) et une limite de points de bloc de 8 192,82 pieds pour capturer la géométrie des lignes à haute tension. Vous allez examiner la sortie si 8 192,82 pieds est une limite de points de bloc qui convient. Si plusieurs blocs ont plus de 8 192 points, vous devrez augmenter la limite de points de blocs pour réduire le sous-échantillonnage.

    Remarque :

    En cas de données plus volumineuses, il est recommandé d’utiliser l’outil LAS Point Statistics As Raster (Statistiques de points LAS sous forme de raster) afin de générer l’histogramme et déterminer la taille de bloc et la limite de points de bloc appropriées avant d’exécuter l’outil Prepare Point Cloud Training Data (Préparer les données d’entraînement du nuage de points). Pour utiliser l’outil, sélectionnez Point Count (Nombre de points) comme méthode et Cell Size (Taille de cellule) comme type d’échantillonnage et testez différentes valeurs en guise de taille de bloc.

  9. Cliquez sur Run (Exécuter).

    Un message de confirmation s’affiche en bas de la fenêtre de l’outil à la fin de l’exécution de l’outil.

  10. Cliquez sur Afficher les détails.

    Sur l’onglet Messages, vous pouvez voir deux histogrammes du nombre de points de bloc : l’un pour les données d’entraînement et l’autre pour les données de validation.

    Histogrammes

    Les deux histogrammes montrent que presque tous les blocs ont un nombre de points inférieur à 8 000, ce qui confirme qu’une taille de bloc de 82 pieds et la limite de points de blocs par défaut de 8 192 conviennent pour ces jeux de données.

  11. Fermez la fenêtre Prepare Point Cloud Training Data (Préparer les données d’entraînement du nuage de points).
  12. Dans Windows, ouvrez l’Explorateur de fichiers et accédez à C:\LearnArcGIS\DL\results. Le dossier results (résultats) contient maintenant un dossier training_data_small.pctd.

    Sortie de la préparation des données peu volumineuses

  13. Double-cliquez sur training_data_small.pctd pour ouvrir le dossier.

    Dossiers en sortie

    Le fichier en sortie contient deux sous-dossiers, train et val comportant respectivement les données d’entraînement et les données de validation exportées.

  14. Ouvrez chaque dossier pour en examiner le contenu.

    Dans chaque dossier, vous verrez un fichier Statistics.json file, un fichier ListTable.h5, un fichier BlockPointCountHistogram.png et un dossier 0 contenant des fichiers Data_x.h5.

    Contenu des dossiers train et val

    Les fichiers ListTable.h5 et Data_x.h5 incluent des informations relatifs aux points (valeurs xyz et attributs tels que le numéro de retour, l’intensité, etc.), organisés en blocs.

    Une fois que vous avez préparé les données d’entraînement, vous pouvez utiliser les blocs pour entraîner un modèle de classification grâce au Deep Learning.

Entraîner un modèle de classification

Vous allez ensuite utiliser l’outil de géotraitement Train Point Cloud Classification Model (Entraîner le modèle de classification du nuage de points) pour entraîner un modèle à classer les lignes à hautes tension en utilisant un petit jeu de données d’entraînement. Les résultats peuvent varier légèrement d’une exécution de l’outil à une autre et en fonction de la configuration de l’ordinateur.

  1. Dans ArcGIS Pro, dans la fenêtre Geoprocessing (Géotraitement), cliquez sur la flèche de retour. Recherchez l’outil Train Point Cloud Classification Model (Entraîner le modèle de classification du nuage de points) et ouvrez-le.

    Outil Entraîner le modèle de classification du nuage de points

  2. Dans l’outil Train Point Cloud Classification Model (Entraîner le modèle de classification du nuage de points), définissez les paramètres suivants :
    • Dans Input Training Data (Données d’entraînement en entrée), cliquez sur Browse (Parcourir). Accédez à C:\LearnArcGIS\DL\results et double-cliquez sur training_data_small.pctd.
    • Laissez le champ Pre-trained Model (Modèle pré-entraîné) vide.
    • Pour Model Architecture (Architecture du modèle) laissez la valeur par défaut RandLA-Net.
      Remarque :

      Vous allez utiliser l’architecture RandLA-Net pour entraîner le modèle de classification. RandLA-Net utilise l’échantillonnage aléatoire pour réduire l’utilisation de la mémoire et le coût de calcul et recourt à l’agrégation d’entités locales afin de préserver les entités utiles d’un vaste voisinage.

    • Dans Attribute Selection (Sélection des attributs), cochez la case de Intensity (Intensité) et Relative Height (Hauteur relative).
    Remarque :

    L’intensité des lignes à haute tension est plus faible par rapport à celle des autres entités, il s’agit donc d’un attribut efficace pour distinguer les lignes à haute tension. La hauteur relative des lignes à haute tension se trouve généralement dans une certaine plage, elle permet donc également de les distinguer des autres entités.

    • Dans Output Model Location (Localisation du modèle en sortie), accédez au dossier results. Cliquez dessus, puis cliquez sur OK.
    • Dans Output Model Name (Nom du modèle en sortie), Powerline_classification_model_small_data.
    • Dans Minimum Points Per Block (Nombre minimal de points par bloc), saisissez 1000.

    En définissant le champ Minimum Points Per Block (Nombre minimal de points par bloc) sur 1 000 durant l’entraînement, les blocs dont le nombre de points est inférieur à 1 000 sont ignorés. Les blocs avec un petit nombre de points se trouvent près des limites dans lesquelles il n’y a pas de points de lignes à haute tension. Le fait d’ignorer ces blocs durant l’entraînement permet d’accélérer l’entraînement et de renforcer l’efficacité de l’apprentissage du modèle. Ce paramètre est exclusivement appliqué aux blocs de données d’entraînement, pas aux blocs de données de validation.

    Paramètres pour entraîner le modèle de classification du nuage de points

  3. Développez Manage Classes.
  4. Sous Class Remapping (Réappariement de classes), dans Current Class (Classe actuelle), sélectionnez 14. Dans Remapped Class (Classe réappariée), sélectionnez 14.

    La classe 14 représente les fils conducteurs que vous voulez classer et localiser dans le nuage de points.

  5. À la ligne suivante, dans Current Class (Classe actuelle), sélectionnez OTHER et dans Remapped Class (Classe réappariée), sélectionnez 1.

    Réappariement de classes

    En spécifiant le réappariement de classes, le code de classification 14 reste inchangé, ce qui signifie que les points dans le jeu de données LAS qui sont déjà classés comme des lignes à haute tension restent des lignes à haute tension. Tous les autres codes de classe (1, 5 et 15) seront réappariés au code de classe 1. Les données d’entraînement résultantes ne comporteront que deux classes, à savoir 1 et 14, ce qui permet de mieux distinguer les lignes à haute tension dans la scène.

  6. Dans Class Description (Description de la classe), acceptez les codes de classes et les descriptions renseignés.

    Descriptions de classes

  7. Développez Training Parameters (Paramètres d’entraînement). Dans Model Selection Criteria (Critères de sélection du modèle), acceptez la valeur définie par défaut dans Recall (Rappel).

    Paramètres de critères de sélection du modèle

    Le champ Model Selection Criteria (Critères de sélection du modèle) indique la base statistique utilisée pour déterminer le modèle final. La valeur par défaut dans Recall (Rappel) sélectionnera le modèle qui obtient la meilleure macro-moyenne de rappel pour tous les codes de classe. La valeur de rappel de chaque code de classe est déterminée par le rapport de points correctement classés (vrais positifs) au regard du nombre total de points qui auraient dû être classés à l’aide de cette valeur (positifs attendus). Pour chaque classe sa valeur de rappel est le rapport entre les points correctement prévus de cette classe et le nombre total de points de référence de cette classe dans les données de validation. Pour exemple, la valeur de rappel du code de classe 14 est le rapport entre les points des lignes à haute tension correctement prévus et le nombre total de points des lignes à haute tension de référence dans les données de validation.

  8. Dans Max Number of Epochs (Nombre maximal d’époques), saisissez 10.

    Une époque désigne le cycle complet de toutes les données d’entraînement apprises par le réseau neuronal (en d’autres termes, il s’agit des données d’entraînement qui ont effectué un mouvement de va et vient à travers le réseau neuronal). Vous allez entraîner le modèle pendant 10 époques pour économiser du temps.

  9. Dans Iteration Per Epoch (%) (Itérations par époque), acceptez la valeur par défaut définie sur 100.

    Laisser le paramètre Iteration Per Epoch (%) sur 100 permet de garantir que toutes les données d’entraînement seront traitées dans une époque.

    Remarque :

    Vous pouvez également choisir de traiter un pourcentage des données d’entraînement à une époque. Définissez ce paramètre sur un autre pourcentage que 100 si vous désirez réduire le délai d’exécution de chaque époque en sélectionnant de manière aléatoire un moindre nombre de lots. Notez qu’un plus grand nombre d’époques peut s’avérer nécessaire avant d’obtenir une convergence du modèle. Ce paramètre est utile si vous voulez voir rapidement les métriques du modèle dans la fenêtre des messages de l’outil.

  10. Pour Learning Rate Strategy ( (Stratégie de vitesse d’apprentissage)), conservez la valeur par défaut One Cycle Learning Rate (Vitesse d’apprentissage d’un cycle).
  11. Pour Learning Rate (Vitesse d’apprentissage), saisissez 0,005.
    Remarque :

    Vous pouvez aussi laisser le champ Learning Ratee (Vitesse d’apprentissage) vierge et laisser l’outil trouver le taux d’apprentissage qui vous convient le mieux.

  12. Dans Batch Size (Taille de lot), saisissez 6.

    La taille du lot spécifie le nombre de blocs traités simultanément. Les données d’entraînement sont traitées par lots. Si, par exemple, la valeur du paramètre Batch Size (Taille de lot) est définie sur 20, 1 000 blocs sont répartis dans 50 lots et chacun des 50 lots sont traités dans une époque. En divisant les blocs en lots, le processus consomme moins de mémoire du GPU.

    Remarque :

    La taille de lot 20 est recommandée sur les cartes graphiques de 8 Go. Si vous recevez une erreur CUDA de mémoire insuffisante, utilisez une taille de lot plus petite.

  13. Désélectionnez Stop training when model no longer improves (Terminer l’entraînement lorsque le modèle ne s’améliore plus).

    La désactivation de cette option permet à l’entraînement de fonctionner pendant 10 époques. Lorsque l’option est activée, l’entraînement s’arrête lorsque la précision du modèle cesse de s’améliorer après plusieurs époques, quel que soit le nombre maximal d’époques spécifié.

    Paramètres d’entraînement

  14. Cliquez sur Run (Exécuter).
    Remarque :

    Le temps nécessaire à l’exécution de l’outil peut varier en fonction de votre système. Sur un GPU équipé d’une carte graphique NVIDIA Quadro RTX 4000 avec 8 Go de mémoire dédiée, l’exécution complète de l’outil durera environ 20 minutes. Lors de l’exécution de l’outil, vous pouvez suivre sa progression.

  15. Au bas de la fenêtre Geoprocessing (Géotraitement), cliquez sur View Details (Afficher les détails).

    Afficher les détails

    La fenêtre Train Point Cloud Classification Model (Entraîner le modèle de classification du nuage de points) (outils 3D Analyst) s’ouvre avec l’onglet Parameters (Paramètres) affiché, qui montre les paramètres utilisés lors de l’exécution de l’outil.

  16. Cliquez sur l’onglet Messages.

    Onglet Messages

    Remarque :

    Les messages de géotraitement apparaissent au fur et à mesure de l’exécution de l’outil. Lorsque l’outil a terminé, le message de géotraitement affiche les résultats pour chaque époque.

    Fenêtre Messages

    Remarque :

    Les informations apparaissant dans vos messages peuvent être différentes de l’exemple illustré, selon votre GPU et la configuration de votre système.

    L’outil renvoie les informations suivantes :

    • GPU utilisé durant l’entraînement.
    • Nombre de blocs de données d’entraînement utilisés pendant l’entraînement (seuls les blocs de données d’entraînement contenant plus de 1 000 points sont utilisés lors de l’entraînement).
    • Nombre de blocs de données de validation utilisés durant la validation ; tous les blocs de données de validation sont utilisés lors de la validation.
    • Itération par époque : nombre de blocs de données d’entraînement divisé par la taille du lot.

    L’outil signale les valeurs Training Loss (Perte d’entraînement), Validation Loss (Perte de validation), Accuracy (Exactitude), Precision (Précision), Recall (Rappel), F1-Score (Score F1) et Time (Temps) consacrées à chaque époque.

    Au fur et à mesure de la progression de chaque époque, vous voyez les valeurs des pertes d’entraînement et de validation diminuer, ce qui indique que le modèle est en cours d’apprentissage.

    Au bout de 10 époques, la valeur Recall (Rappel) la plus élevée dépasse 0,98.

    Statistiques d’entraînement

    Ce modèle n’est pas exact, ce qui n’est pas surprenant étant donné qu’il a été entraîné à l’aide d’un petit jeu de données. Ces résultats mettent en lumière la nécessité d’avoir davantage de points d’échantillonnage dans des jeux de données distincts afin d’améliorer les résultats.

  17. Fermez la fenêtre Train Point Cloud Classification Model (Entraîner le modèle de classification du nuage de points).

Examiner les sorties d’entraînement

Vous allez ensuite examiner les résultats de l’entraînement du modèle de classification.

  1. Dans l’Explorateur de fichiers, accédez à C:\LearnArcGIS\DL\results.

    Les jeux de données d’entraînement et de validation comportent chacun deux sous-dossiers. L’un est le dossier du modèle, l’autre est le dossier des points de vérification.

  2. Développez le dossier Powerline_classification_model_small_data et le dossier Model Characteristics.

    Le dossier Powerline_classification_model_small_data comprend le modèle enregistré à l’époque 9. Plusieurs fichiers se trouvent dans le dossier du modèle. Parmi eux, le fichier .pth est le fichier de modèle et le fichier .emd est le fichier de définition du modèle Esri (fichier de configuration au format .JSON). Le fichier model_metrics.htm comprend un graphique de perte d’apprentissage. Le fichier .dlpk est le paquetage de modèle Deep Learning. Il s’agit d’un fichier compressé qui peut être partagé avec ArcGIS Online.

    Le dossier Model Characteristics contient un graphique de perte et un graphique relatif à la réalité du terrain et aux prévisions.

  3. Retournez dans le dossier results. Ouvrez le dossier Powerline_classification_model_small_data.checkpoints pour voir son contenu.

    Le dossier Powerline_classification_model_small_data.checkpoints inclut le dossier models (modèles), qui contient un modèle des points de vérification de chaque époque ainsi que deux fichiers .csv. Lors de l’exécution de l’outil d’entraînement, un point de vérification a été créé après chaque époque. Chaque point de contrôle contient un fichier .pth et un fichier .emd.

  4. Dans le dossier Powerline_classification_model_small_data.checkpoints, ouvrez le fichier Powerline_classification_model_small_data_Epoch_Statistics Microsoft Excel pour examiner les statistiques.

    Le fichier CSV s’ouvre dans Excel.

    Table de statistiques des époques

    Remarque :

    Si la fenêtre Microsoft Excel apparaît et vous demande de convertir de grands nombres en notation scientifique, cliquez sur Convert (Convertir).

    Il s’agit de la table qui est apparue dans le message de l’outil.

    Le fichier Powerline_classification_model_small_data_Statistics inclut la précision, le rappel et les valeurs de score F-1 de chaque classe après chaque époque. Dans certains cas, il se peut que le modèle affichant les meilleures métriques générales ne soit pas le modèle donnant les meilleurs résultats de classification pour un code de classe spécifique. Si vous ne vous intéressez qu’à la classification de certains codes de classe en particulier, vous pouvez envisager d’utiliser le modèle de points de vérification associé aux meilleures métriques de ce code de classe. L’affichage des statistiques dans Excel permet de trier les colonnes et de repérer facilement l’époque avec la valeur de rappel la plus élevée. Vous avez entraîné un modèle à l’aide d’un petit échantillonnage de points. Par la suite, vous allez utiliser un modèle qui a été entraîné avec un plus grand échantillonnage de points afin de classer un jeu de données LAS.


Classer un jeu de données LAS à l’aide du modèle entraîné

Vous allez classer le jeu de données LAS contenant plus de 3 millions de points à l’aide d’un modèle entraîné. Classer un jeu de données LAS à l’aide d’un modèle entraîné permet de localiser les lignes à haute tension dans la zone d’étude en vue d’une analyse de l’évaluation des risques. Lorsque le modèle a été entraîné, deux codes de classification ont été désignés, Unassigned (Non affecté) et Wire Conductor (Conducteur métallique). En classant les points du nuage de points en conducteurs métalliques et le reste en entités non affectées, vous apportez de la valeur au modèle étant donné qu’il identifie clairement les lignes à haute tension.

Explorer les résultats du modèle et choisir l’époque la plus appropriée

Vous allez explorer les résultats de l’entraînement d’un modèle fourni ayant utilisé un jeu de données volumineux. Vous allez rechercher la meilleure valeur de rappel pour les conducteurs métalliques.

  1. Ouvrez l’Explorateur de fichiers et accédez à C:\LearnArcGIS\DL\results.

    Les dossiers contiennent les résultats de l’entraînement d’un grand ensemble de données sur un ordinateur équipé de 24 Go de mémoire de GPU dédiée.

  2. Ouvrez le dossier Powerline_classification_model_large_data.checkpoints et double-cliquez sur Powerline_classification_model_large_data_Statistics pour visualiser les statistiques dans Excel.

    Le fichier s’ouvre dans Excel.

  3. Dans Excel, double-cliquez sur les séparateurs de colonnes pour agrandir les colonnes de manière à voir l’ensemble du texte.

    Développez les colonnes.

    Vous allez trier la colonne Recall (Rappel) et rechercher la valeur la plus élevée de Wire Conductor (Conducteur métallique) ; vous utiliserez ensuite cette époque pour classer le jeu de données LAS. La valeur Recall (Rappel) la plus élevée pour Wire Conductor (Conducteur métallique) indique l’époque que vous devriez utiliser dans la classification.

  4. Cliquez sur l’en-tête de colonne Recall (Rappel) pour mettre la colonne en surbrillance.

    Colonne Recall (Rappel) sélectionnée.

  5. Sur le ruban, dans la section Édition, cliquez sur Trier et filtrer et sélectionnez Trier du plus grand au plus petit.

    Option Trier du plus grand au plus petit

  6. Dans la fenêtre Sort Warning (Avertissement de tri) qui s’ouvre, cliquez sur Sort (Trier).

    Les lignes de la feuille de calcul sont triées pour vous permettre d’identifier la valeur la plus élevée correspondant à Wire Conductor (Conducteur métallique).

  7. Localisez la première ligne avec une valeur CLASS_CODE de 14 et une valeur CLASS_Description de Wire Conductor (Conducteur métallique) (ligne 23).

    Il s’agit de la valeur de rappel la plus élevée, à savoir 0.993655113, correspondant au code Wire Conductor (Conducteur métallique), qui est apparu au niveau de l’époque 18.

    Valeur de rappel la plus élevée pour Wire Conductor (Conducteur métallique)

    Vous allez utiliser l’époque (ou point de vérification) 18 lorsque vous classez le jeu de données LAS. C’est, en effet, la valeur de rappel la plus élevée pour le code de classe des lignes à haute tension qui donnera les meilleurs résultats.

Classer des lignes à haute tension à l’aide du modèle entraîné

Vous allez maintenant utiliser un modèle entraîné pour classer les lignes à haute tension à partir d’un jeu de données de test. Vous allez appliquer des limites de traitement pour ne classer que les points qui se trouvent à l’intérieur de ces limites.

  1. Restaurez ArcGIS Pro.
  2. Dans la fenêtre Catalog (Catalogue), développez Folders (Dossiers), puis DL et testdata. Ouvrez les propriétés de test.lasd et mettez à jour les statistiques. Cliquez sur OK.
  3. Cliquez avec le bouton droit sur test.lasd, pointez sur Add To New (Ajouter à nouvelle), puis choisissez Local Scene (Scène locale).

    Ajoutez une couche à une scène locale.

    Le jeu de données LAS test.lasd apparaît dans une scène locale.

    Tester un jeu de données LAS dans une scène

  4. Dans la fenêtre Contents (Contenu), cliquez sur test.lasd pour le sélectionner. Sur le ruban, cliquez sur l’onglet LAS Dataset Layer (Couche de jeu de données LAS), cliquez sur la flèche de la liste déroulante Symbology (Symbologie) et sélectionnez Class (Classe).

    Le moteur de rendu affiche le jeu de données LAS test.lasd selon les codes de classe.

    Code de classe Unassigned (Non affecté) affiché en gris.

    Les points au sol (classe 2) et les points à bruit faible (classe 7) sont déjà classés. Les points restants ne sont pas attribués (classe 1).

  5. Dans la fenêtre Geoprocessing (Géotraitement), recherchez l’outil Classify Point Cloud Using Trained Model (Classer le nuage de points à l’aide du modèle entraîné) et ouvrez-le.
  6. Dans Target Point Cloud (Nuage de points cible), cliquez sur le menu déroulant et choisissez test.lasd.
  7. Dans Input Model Definition (Définition du modèle en entrée), cliquez sur Browse (Parcourir). Accédez au dossier C:\LearnArcGIS\DL\results\Powerline_classification_model_large_data.checkpoints\models\checkpoint_2023-03-28_18-21-34_epoch_18 et ouvrez-le. Cliquez sur checkpoint_2023-03-28_18-21-34_epoch_18.emd et sur OK.
    Remarque :

    Dans Input Model Definition (Définition du modèle en entrée), vous pouvez choisir un fichier .emd, un fichier .dlpk ou l’URL du modèle partagé dans ArcGIS Online ou ArcGIS Living Atlas of the World.

    Le paramètre Target Classification (Classification cible) apparaît une fois que vous avez sélectionné un fichier de définition du modèle.

    Classification cible

    Laissez le champ Batch Size (Taille de lot) vierge et laissez l’outil calculer une taille de lot optimale en fonction de la mémoire du GPU disponible.

  8. Dans Processing Boundary (Limite de traitement), accédez à C:\LearnArcGIS\DL\testdata\boundaries.gdb et double-cliquez sur bnd_test.

    En sélectionnant une limite de traitement, l’outil utilise le modèle entraîné que vous avez fourni pour ne classer que les points compris dans la limite.

  9. Pour Reference Surface (Surface de référence), cliquez sur le bouton Browse (Parcourir) et accédez à C:\LearnArcGIS\DL\testdata. Cliquez sur dem_test.tif et sur OK.
    Remarque :

    Comme le modèle de classification des lignes à haute tension a été entraîné avec des limites, une surface de référence et en excluant certains codes de classe, les mêmes paramètres doivent également être définis pour l’outil Classer le nuage de points à l’aide du modèle entraîné.

  10. Pour Excluded Class Codes (Codes de classe exclus), ajoutez 2 et 7.

    Comme les codes de classe 2 et 7 sont exclus de la classification. Le modèle classe uniquement les points restants (classe 1). Lorsque le modèle s’exécute, les points sont prévus comme des lignes à haute tension et leur code de classe est défini sur 14. Sinon, leur code de classe demeure 1.

    Paramètres de l’outil Classer le nuage de points à l’aide du modèle entraîné

  11. Cliquez sur Run (Exécuter).

    L’outil s’exécute. Vous allez maintenant mettre à jour la symbologie pour afficher les résultats du modèle de classification.

  12. Dans la fenêtre Symbology (Symbologie), à côté de Value (Valeur), cliquez sur More (Plus) et sur Add all values (Ajouter toutes les valeurs).

    Option Ajouter toutes les valeurs

    La symbologie est mise à jour et les points du nuage de points qui sont des conducteurs métalliques apparaissent en jaune.

  13. Utilisez les raccourcis et les outils de navigation pour examiner les résultats de classification dans la scène locale.

    Lignes à haute tension classées dans une scène.

    Les résultats de classification sont exacts à l’aide du modèle entraîné. La plupart des points de lignes à haute tension sont correctement classés. Notez que les pylônes électriques sont encore dépourvus d’affectation.

Dans ce didacticiel, vous avez appris le processus de classification du nuage de points à l’aide de la technologie de Deep Learning. Vous avez également accumulé de l’expérience sur les concepts de Deep Learning, l’importance des données de validation durant le processus d’entraînement et l’évaluation de la qualité des modèles entraînés. À partir de là, vous pouvez utiliser l’outil Extract Power Lines From Point Cloud (Extraire les lignes à haute tension d’un nuage de points) pour générer des lignes 3D et modéliser les lignes à haute tension. Vous pouvez également utiliser l’outil Generate Clearance Surface (Générer une surface de dégagement) pour déterminer la zone de dégagement autour des lignes à haute tension. Les points dans la zone de dégagement, principalement des arbres, sont trop proches des lignes à haute tension et pourraient entraîner une coupure de courant ou déclencher un incendie. Ces outils peuvent aller plus loin et fournir des informations importantes dans le cadre de l’évaluation des risques par une compagnie d’assurance.

Vous trouverez d’autres didacticiels dans la bibliothèque des didacticiels.