Classer le nuage de points à l’aide du modèle entraîné (3D Analyst)

Synthèse

Classe un nuage de points à l’aide d’un modèle de classification PointCNN.

Utilisation

  • Cet outil utilise l’implémentation PointCNN à l’aide des structures de Deep Learning.

    Pour configurer votre machine afin d’utiliser des structures d’apprentissage profond dans ArcGIS Pro, consultez la rubrique Installer les structures d’apprentissage profond pour ArcGIS.

  • L’outil classe par défaut tous les points du nuage de points en entrée. Si des codes de classe existants dans le nuage de points en entrée sont correctement classés, excluez ces points de la modification en indiquant les codes de classe à mettre à jour ou à conserver à l’aide des paramètres Gestion des codes de classe existants et Codes de classe existants.

    En savoir plus sur la classification d’un nuage de points avec le Deep Learning

  • Le nuage de points en entrée doit avoir les mêmes attributs dotés de plages de valeurs similaires que les données d’entraînement utilisées pour développer le modèle de classification. Par exemple, si le modèle entraîné utilisait l’attribut d’intensité avec une plage de valeurs spécifique, le nuage de points doit posséder des valeurs d’intensité dans la même plage. La densité et la distribution des points doivent également être similaires par rapport aux données utilisées lors de l’entraînement du modèle.

  • Si la référence spatiale du nuage de points en entrée n’utilise pas de système de coordonnées projetées, l’environnement Système de coordonnées en sortie peut être utilisé pour définir un système de coordonnées projetées qui sera utilisé pour la classification de ses points.

  • Le paramètre Surface de référence est requis si vous utilisez un modèle de classification qui a été entraîné avec des informations de hauteur de référence. Le raster fourni pour ce paramètre est utilisé pour déduire l’attribut de hauteur relative pour chaque point superposé. L’attribut est calculé en prenant la valeur z de chaque point et en soustrayant la hauteur obtenue à partir du raster grâce à l’interpolation bilinéaire. Ces informations vous permettent de différencier plus facilement les objets associés à des classes dotées de plages distinctes de hauteurs relatives par rapport à la surface raster. Lorsque le modèle est entraîné avec des informations de hauteur relative, la surface raster fournie en entrée pour la classification doit être basée sur le même type de point. Si le raster utilisé pour l’intégration de la hauteur relative au cours de l’entraînement est basé sur des points classés comme terrestres, indiquez le même type de raster pour cet outil. Dans le cas de jeux de données LAS représentant des arpentages extérieurs, la source standard des informations de hauteur relative est composée de points classés comme terrestres provenant du même nuage de points. Une surface raster peut être générée à partir des points classés comme terrestres en filtrant le jeu de données LAS à partir de ses propriétés de couche et à l’aide de l’outil Jeu de données LAS vers raster. Si l’outil est utilisé dans Python, vous pouvez faire appel à l’outil Créer une couche de jeu de données LAS pour filtrer les points souhaités avant de créer le raster. Il est également possible de générer une surface au sol à partir d’une couche de scène de nuage de points à l’aide de l’outil Nuage de points vers raster. Vous pouvez aussi utiliser des surfaces raster qui n’ont pas pour source le nuage de points en entrée, mais vous devez dans ce cas vous assurer que les valeurs z dans le raster correspondent aux valeurs z dans le nuage de points.

Paramètres

ÉtiquetteExplicationType de données
Nuage de points cible

Nuage de points qui sera classé.

LAS Dataset Layer
Définition de modèle en entrée

Fichier de définition de modèle Esri en entrée (*.emd) ou paquetage de Deep Learning (*.dlpk) qui sera utilisé pour classer le nuage de points. Une adresse Web peut également être utilisée pour un paquetage de Deep Learning publié sur ArcGIS Online ou sur ArcGIS Living Atlas.

File; String
Classification cible

Codes de classe issus du modèle entraîné qui seront utilisés pour classer le nuage de points en entrée. Toutes les classes du modèle en entrée seront utilisées par défaut sauf si un sous-ensemble est spécifié.

String
Gestion des codes de classe existants
(Facultatif)

Indique comment les points modifiables du nuage de points en entrée seront définis.

  • Mettre à jour tous les points
  • Mettre à jour les points sélectionnés
  • Conserver les points sélectionnés
String
Codes de classe existants
(Facultatif)

Classes dont les points sont mis à jour ou dont la désignation de code de classe d’origine est conservée en fonction de la valeur du paramètre Gestion des codes de classe existants.

Long
Calculer les statistiques
(Facultatif)

Spécifie si des statistiques seront calculées pour les fichiers .las référencés par le jeu de données LAS. Les statistiques de calcul fournissent un index spatial pour chaque fichier .las, ce qui contribue à améliorer les performances d’analyse et d’affichage. Les statistiques améliorent également l’expérience de filtrage et de symbologie en limitant l’affichage des attributs LAS (par exemple, les codes de classification et les informations renvoyées) aux valeurs présentes dans le fichier .las.

  • Activé : les statistiques sont calculées. Il s’agit de l’option par défaut.
  • Désactivé : les statistiques ne sont pas calculées.
Boolean
Limite de traitement

Limite de polygone qui définit le sous-ensemble de points à traiter à partir du nuage de points en entrée. Les points situés en dehors des entités de limite ne seront pas évalués.

Feature Layer
Mettre à jour la pyramide
(Facultatif)

Spécifie si la pyramide du jeu de données LAS est mise à jour après la modification des codes de classe.

  • Activé : la pyramide du jeu de données LAS est mise à jour. Il s’agit de l’option par défaut.
  • Désactivé : la pyramide du jeu de données LAS n’est pas mise à jour.
Boolean
Surface de référence
(Facultatif)

Surface raster utilisée pour fournir des valeurs de hauteur relative pour chaque point dans les données de nuage de points. Les points qui ne sont pas superposés au raster sont exclus de l’analyse.

Raster Layer
Codes de classe exclus
(Facultatif)

Codes de classe exclus du traitement. Vous pouvez spécifier n’importe quelle valeur comprise entre 0 et 255.

Long
Taille de lot
(Facultatif)

Blocs de données du nuage de points qui sont traités simultanément par le réseau neuronal lors de l’inférence. Si aucune valeur n’est spécifiée, la taille de lot optimale est calculée en fonction de la mémoire disponible du GPU. La quantité de mémoire du GPU utilisée par un bloc donné dépend des attributs de limite de points de bloc et de nuage de points requis par le modèle.

Long

Sortie obtenue

ÉtiquetteExplicationType de données
Nuage de points en sortie

Nuage de points classé par le modèle de Deep Learning.

Feature Layer

arcpy.ddd.ClassifyPointCloudUsingTrainedModel(in_point_cloud, in_trained_model, output_classes, {in_class_mode}, {target_classes}, {compute_stats}, boundary, {update_pyramid}, {reference_height}, {excluded_class_codes}, {batch_size})
NomExplicationType de données
in_point_cloud

Nuage de points qui sera classé.

LAS Dataset Layer
in_trained_model

Fichier de définition de modèle Esri en entrée (*.emd) ou paquetage de Deep Learning (*.dlpk) qui sera utilisé pour classer le nuage de points. Une adresse Web peut également être utilisée pour un paquetage de Deep Learning publié sur ArcGIS Online ou sur ArcGIS Living Atlas.

File; String
output_classes
[output_classes,...]

Codes de classe issus du modèle entraîné qui seront utilisés pour classer le nuage de points en entrée. Toutes les classes du modèle en entrée seront utilisées par défaut sauf si un sous-ensemble est spécifié.

String
in_class_mode
(Facultatif)

Indique comment les points modifiables du nuage de points en entrée seront définis.

  • EDIT_ALLTous les points du nuage de points en entrée sont mis à jour. Il s’agit de l’option par défaut.
  • EDIT_SELECTEDSeuls les points dont les codes de classe sont spécifiés dans le paramètre target_classes sont mis à jour. Tous les autres points restent inchangés.
  • PRESERVE_SELECTEDLes points dont les codes de classe sont spécifiés dans le paramètre target_classes sont conservés. Les points restants sont mis à jour.
String
target_classes
[target_classes,...]
(Facultatif)

Classes dont les points sont mis à jour ou dont la désignation de code de classe d’origine est conservée en fonction de la valeur du paramètre in_class_mode.

Long
compute_stats
(Facultatif)

Spécifie si des statistiques seront calculées pour les fichiers .las référencés par le jeu de données LAS. Les statistiques de calcul fournissent un index spatial pour chaque fichier .las, ce qui contribue à améliorer les performances d’analyse et d’affichage. Les statistiques améliorent également l’expérience de filtrage et de symbologie en limitant l’affichage des attributs LAS (par exemple, les codes de classification et les informations renvoyées) aux valeurs présentes dans le fichier .las.

  • COMPUTE_STATSLes statistiques sont calculées. Il s’agit de l’option par défaut.
  • NO_COMPUTE_STATSLes statistiques ne sont pas calculées.
Boolean
boundary

Limite de polygone qui définit le sous-ensemble de points à traiter à partir du nuage de points en entrée. Les points situés en dehors des entités de limite ne seront pas évalués.

Feature Layer
update_pyramid
(Facultatif)

Spécifie si la pyramide du jeu de données LAS est mise à jour après la modification des codes de classe.

  • UPDATE_PYRAMIDLa pyramide du jeu de données LAS est mise à jour. Il s’agit de l’option par défaut.
  • NO_UPDATE_PYRAMIDLa pyramide du jeu de données LAS n’est pas mise à jour.
Boolean
reference_height
(Facultatif)

Surface raster utilisée pour fournir des valeurs de hauteur relative pour chaque point dans les données de nuage de points. Les points qui ne sont pas superposés au raster sont exclus de l’analyse.

Raster Layer
excluded_class_codes
[excluded_class_codes,...]
(Facultatif)

Codes de classe exclus du traitement. Vous pouvez spécifier n’importe quelle valeur comprise entre 0 et 255.

Long
batch_size
(Facultatif)

Blocs de données du nuage de points qui sont traités simultanément par le réseau neuronal lors de l’inférence. Si aucune valeur n’est spécifiée, la taille de lot optimale est calculée en fonction de la mémoire disponible du GPU. La quantité de mémoire du GPU utilisée par un bloc donné dépend des attributs de limite de points de bloc et de nuage de points requis par le modèle.

Long

Sortie obtenue

NomExplicationType de données
out_point_cloud

Nuage de points classé par le modèle de Deep Learning.

Feature Layer

Exemple de code

Exemple d’utilisation de la fonction ClassifyPointCloudUsingTrainedModel (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python.


import arcpy
arcpy.env.workspace = 'C:/data/'
arcpy.ddd.ClassifyPointCloudUsingTrainedModel('2018_survey.lasd', 'electrical_infrastructure_classification.emd', 
                                              [14, 15], 'EDIT_SELECTED', [0,1])

Informations de licence

  • Basic: Nécessite 3D Analyst
  • Standard: Nécessite 3D Analyst
  • Advanced: Nécessite 3D Analyst

Rubriques connexes