Classer le sol LAS (3D Analyst)

Synthèse

Classe des points terrestres à partir des données LAS.

En savoir plus sur la classification du sol

Illustration

Illustration de l’outil Classer le sol LAS

Utilisation

  • Cet outil implique que le jeu de données LAS en entrée dispose d’un système de coordonnées projetées. Les données stockées dans un système de coordonnées géographiques peuvent être reprojetées en utilisant l’outil Extraire LAS avec un système de coordonnées projetées spécifié dans le paramètre d’environnement Système de coordonnées en sortie. Si le système de coordonnées projetées est basé sur un autre datum, une transformation de datum doit également être spécifiée.

  • Seuls les points LAS avec la valeur de code de classe 0, 1 ou 2 peuvent être attribués en tant que points terrestres. Si les fichiers LAS utilisent d’autres valeurs de code de classe pour représenter des mesures non classées ou terrestres, utilisez l’outil Modifier les codes de classes LAS pour les réaffecter correctement. Le processus de classification ignore également les points auxquels l’indicateur de classification de superposition ou de retenue est affecté.

  • La méthode Classification standard détecte généralement suffisamment de points terrestres pour la plupart des jeux de données. Si les points terrestres détectés comprennent de nombreux points non terrestres, envisagez d’utiliser la méthode Classification conservatrice pour réduire les erreurs de ce type. À l’inverse, si les données sont composées de terrain accidenté avec des caractéristiques de pente escarpée pouvant être partiellement obscurcie par de la végétation, utilisez plutôt la méthode Classification agressive pour capturer davantage de points terrestres. Si certaines crêtes manquent toujours avec l’utilisation de cette option, délimitez les zones à améliorer à l’aide de leur étendue spatiale ou d’une limite surfacique, puis exécutez à nouveau l’outil avec l’option Récupérer les crêtes.

  • Vérifiez les localisations qui comportent des ponts et des bretelles d’autoroute car elles risquent d’être classées par erreur comme terrestres. Pour corriger ces localisations, appliquez une étendue ou limite de traitement pour isoler la région mal classée ainsi que le terrain environnant, puis exécutez à nouveau l’outil. La région isolée doit essayer d’éviter d’inclure la partie du pont ou de la bretelle en contact avec la surface au sol.

  • Utilisez le paramètre Résolution du MNE si vous avez besoin d’obtenir une classification du sol plus rapide que le temps de traitement normal pour votre jeu de données. Ce paramètre garantit que le nombre de points terrestres classés est suffisant pour générer une surface raster au sol de la résolution spécifiée. Cependant, le nombre de points terrestres classés sera inférieur au nombre qui serait détecté par ailleurs.

    En savoir plus sur la création d’un raster d’élévation du sol à partir de lidar.

Paramètres

ÉtiquetteExplicationType de données
Jeu de données LAS en entrée

Jeu de données LAS qui va être traité. Seuls les derniers points LAS renvoyés avec les valeurs de code de classe 0, 1 et 2 sont évalués.

LAS Dataset Layer
Méthode de détection des sols

Spécifie la méthode qui sera utilisée pour détecter des points terrestres.

  • Classification standardCette méthode utilise une tolérance de variation de pente qui permet de capturer les ondulations graduelles de la topographie du sol généralement non détectées par l’option conservatrice. En revanche, elle ne permet pas de capturer le type de relief accidenté détecté par l’option agressive. Il s’agit de l’option par défaut.
  • Classification conservatriceComparée aux autres options, cette méthode utilise une restriction plus sévère sur la variation de la pente du sol qui lui permet de différencier le sol de la végétation de basse altitude, comme l’herbe et les arbustes. Elle convient mieux aux topographies présentant une courbure minimale.
  • Classification agressiveCette méthode détecte les zones terrestres aux reliefs accentués, tels que crêtes et sommets, qui sont généralement ignorées par l’option standard. Cette méthode convient mieux la deuxième fois que vous exécutez cet outil, lorsque le paramètre Réutiliser le sol existant est activée. N’utilisez pas cette méthode dans les zones urbaines ou rurales planes, car elle risquerait de classer comme terrestres les objets plus grands, tels que des pylônes, la végétation et certains bâtiments.
  • Récupérer les crêtesCette méthode détecte les crêtes qui risquent de ne pas être détectées par la méthode agressive. Vous devez indiquer une étendue de traitement ou un polygone de limite pour utiliser cette méthode.
String
Réutiliser le sol existant
(Facultatif)

Indique si les points terrestres existants seront reclassés ou réutilisés.

  • Désactivé : les points terrestres actuels sont reclassés. Les points qui ne sont pas considérés comme terrestres se voient réattribuer la valeur de code de classe 1 représentant des points non classés. Il s’agit de l’option par défaut.
  • Activé : les points terrestres actuels sont acceptés et réutilisés sans aucun test et aident à déterminer les points non classés.
Boolean
Résolution MNE
(Facultatif)

Distance qui génère uniquement un sous-ensemble de points qui peuvent être classés comme terrestres, ce qui accélère le processus. Utilisez ce paramètre si vous avez besoin d’une méthode plus rapide pour générer une surface de MNE. La distance minimale est de 0,30 mètre, mais la distance fournie doit être au moins égale à 1,5 fois l’espacement moyen des points des données lidar pour que ce processus puisse avoir lieu.

Linear Unit
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
Étendue de traitement
(Facultatif)

Spécifie l’étendue des données qui seront évaluées.

  • Current Display Extent (Étendue actuellement affichée) Vue cartographique : l’étendue repose sur la carte ou la scène active.
  • Dessiner l’étendue Terminer avec mise à l’équerre : l’étendue est basée sur un rectangle dessiné sur la carte ou dans la scène.
  • Extent of a Layer (Étendue d’une couche) Couche : l’étendue repose sur une couche de carte active. Choisissez une couche disponible ou utilisez l’option Étendue des données dans toutes les couches. Chaque couche de carte comporte les options suivantes :

    • Toutes les entités Sélectionner tout : étendue de toutes les entités.
    • Entités sélectionnées Zone à partir des entités sélectionnées : étendue de toutes les entités sélectionnées.
    • Entités visibles Extent Indicator : étendue de toutes les entités visibles.

  • Parcourir Parcourir : l’étendue repose sur un jeu de données.
  • Intersection des entrées Intersection : l’étendue est l’étendue d’intersection de toutes les entrées.
  • Union des entrées Agréger : l’étendue est l’étendue combinée de toutes les entrées.
  • Presse-papiers Coller : l’étendue peut être copiée depuis et vers le Presse-papiers.
    • Copier l’étendue Copier : copie l’étendue et le système de coordonnées dans le Presse-papiers.
    • Coller l’étendue Coller : colle l’étendue et le système de coordonnées depuis le Presse-papiers. Si le Presse-papiers n’inclut pas de système de coordonnées, l’étendue utilise celui de la carte.
  • Reset Extent (Réinitialiser l’étendue) Réinitialiser : la valeur par défaut de l’étendue est rétablie.

Lorsque les coordonnées sont saisies manuellement, elles doivent être des valeurs numériques incluses dans le système de coordonnées de la carte active. La carte peut utiliser des unités d’affichage différentes de celles des coordonnées saisies. Utilisez le signe moins pour les coordonnées sud et ouest.

Extent
Limite de traitement

La ou les entités surfaciques qui définissent la région à traiter.

Feature Layer
Traiter l'intégralité des fichiers LAS qui intersectent l'étendue
(Facultatif)

Spécifie comment la zone d’intérêt est utilisée pour déterminer le traitement des fichiers .las. La zone d’intérêt est définie par la valeur du paramètre Étendue de traitement, la valeur du paramètre Limite de traitement ou les deux à la fois.

  • Désactivé : seuls les points LAS qui intersectent la zone d'intérêt sont traités. Il s’agit de l’option par défaut.
  • Activé : si une partie d’un fichier .las intersecte la zone d’intérêt, tous les points que ce fichier contient, y compris ceux situés à l’extérieur de la zone d’intérêt, seront traités.
Boolean
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
Algorithme de détection
(Facultatif)

Spécifie la version de l’algorithme de détection des sols à utiliser pour classer les points terrestres.

  • Le dernierLa version la plus récente de l’algorithme de détection des sols est utilisée. Cette option améliore le traitement du bruit et des points aberrants, notamment pour les nuages de points déduits de manière photogrammétrique. Dans la plupart des cas, elle produit également de meilleurs résultats et de meilleures performances. Il s’agit de l’option par défaut.
  • Première générationLa version initiale de l’algorithme de détection des sols est utilisée. Utilisez cette option si les résultats de la version la plus récente ne sont pas adaptés.
String
Classer les points à bruit faible
(Facultatif)

Indique si les points situés à une distance donnée sous le sol sont classés comme points à bruit faible. La distance à laquelle les points de bruit sont identifiés dépend de la valeur du paramètre Profondeur minimale en dessous du sol. Les points à bruit faible reçoivent la valeur de code de classe 7.

  • Activé : les points à bruit faible sont classés.
  • Désactivé : les points à bruit faible ne sont pas classés. Il s’agit de l’option par défaut.
Boolean
Profondeur minimale en dessous du sol
(Facultatif)

Distance sous le sol à utiliser pour classer les points à bruit faible. Le sol est défini par une surface triangulée créée à partir de points classés comme terrestres. Tous les points de code de classe 0 ou 1 qui se trouvent sous le sol à la profondeur fournie dans ce parapmètre reçoivent la valeur de code de classe 7.

Linear Unit
Conserver le bruit faible existant
(Facultatif)

Indique si les points à bruit faible existants de code de classe 7 sont conservés ou reclassés. Si les points à bruit faible sont reclassés, les points qui ne se trouvent pas sous le sol à une distance au moins égale à celle fournie pour la valeur du paramètre Profondeur minimale en dessous du sol reçoivent la valeur de code de classe 1.

  • Activé : les points à bruit faible existants sont conservés. Il s’agit de l’option par défaut.
  • Désactivé : les points à bruit faible existants sont reclassés.
Boolean
Classer les points à bruit élevé
(Facultatif)

Indique si les points situés à une distance donnée au-dessus du sol sont classés comme points à bruit élevé. La distance à laquelle les points de bruit sont identifiés dépend de la valeur du paramètre Hauteur minimale au-dessus du sol. Les points à bruit élevé reçoivent la valeur de code de classe 18.

  • Activé : les points à bruit élevé sont classés.
  • Désactivé : les points à bruit élevé ne sont pas classés. Il s’agit de l’option par défaut.
Boolean
Hauteur minimale au-dessus du sol
(Facultatif)

Distance au-dessus du sol à utiliser pour classer les points à bruit élevé. Le sol est défini par une surface triangulée créée à partir de points classés comme terrestres. Tous les points de code de classe 0 ou 1 qui se trouvent au-dessus du sol à la hauteur fournie dans ce parapmètre reçoivent la valeur de code de classe 18.

Linear Unit
Conserver le bruit élevé existant
(Facultatif)

Indique si les points à bruit élevé existants de code de classe 18 sont conservés ou reclassés. Si les points à bruit élevé sont reclassés, les points qui ne se trouvent pas au-dessus du sol à une distance au moins égale à celle fournie pour la valeur du paramètre Hauteur minimale au-dessus du sol reçoivent la valeur de code de classe 1.

  • Activé : les points à bruit élevé existants sont conservés. Il s’agit de l’option par défaut.
  • Désactivé : les points à bruit élevé existants sont reclassés.
Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Jeu de données LAS en sortie

Le jeu de données LAS qui a été modifié.

LAS Dataset Layer

arcpy.ddd.ClassifyLasGround(in_las_dataset, method, {reuse_ground}, {dem_resolution}, {compute_stats}, {extent}, boundary, {process_entire_files}, {update_pyramid}, {algorithm}, {classify_low_noise}, {minimum_depth_below_ground}, {preserve_low_noise}, {classify_high_noise}, {minimum_height_above_ground}, {preserve_high_noise})
NomExplicationType de données
in_las_dataset

Jeu de données LAS qui va être traité. Seuls les derniers points LAS renvoyés avec les valeurs de code de classe 0, 1 et 2 sont évalués.

LAS Dataset Layer
method

Spécifie la méthode qui sera utilisée pour détecter des points terrestres.

  • STANDARDCette méthode utilise une tolérance de variation de pente qui permet de capturer les ondulations graduelles de la topographie du sol généralement non détectées par l’option conservatrice. En revanche, elle ne permet pas de capturer le type de relief accidenté détecté par l’option agressive. Il s’agit de l’option par défaut.
  • CONSERVATIVEComparée aux autres options, cette méthode utilise une restriction plus sévère sur la variation de la pente du sol qui lui permet de différencier le sol de la végétation de basse altitude, comme l’herbe et les arbustes. Elle convient mieux aux topographies présentant une courbure minimale.
  • AGGRESSIVECette méthode détecte les zones terrestres aux reliefs accentués, tels que crêtes et sommets, qui sont généralement ignorées par l’option standard. Cette méthode convient mieux la deuxième fois que vous exécutez cet outil, lorsque le paramètre Réutiliser le sol existant est activée. N’utilisez pas cette méthode dans les zones urbaines ou rurales planes, car elle risquerait de classer comme terrestres les objets plus grands, tels que des pylônes, la végétation et certains bâtiments.
  • RECOVER_RIDGESCette méthode détecte les crêtes qui risquent de ne pas être détectées par la méthode agressive. Vous devez indiquer une étendue de traitement ou un polygone de limite pour utiliser cette méthode.

Spécifie la méthode qui sera utilisée pour détecter des points terrestres.

  • STANDARDCette méthode offre généralement les meilleurs résultats pour la plupart des paysages, car elle possède une tolérance pour la variation de la pente qui lui permet de détecter le sol dans une grande diversité de paysages. Elle capture davantage de points terrestres que l’option conservatrice, mais elle peut en rater certains sur les terrains avec des caractéristiques de pente escarpée. Il s’agit de l’option par défaut.
  • CONSERVATIVEComparée aux autres options, cette méthode utilise une restriction plus sévère sur la variation de la pente du sol qui lui permet de différencier le sol de la végétation de basse altitude, comme l’herbe et les arbustes. Elle convient mieux aux topographies présentant une courbure minimale.
  • AGGRESSIVECette méthode est plus adaptée pour la détection des sols en terrain accidenté. Évitez d’utiliser cette méthode sur des terrains contenant des profils de pente relativement plate, car elle risque de classer de façon erronée en tant que sol les points avec une végétation basse et les objets construits par les humains.
  • RECOVER_RIDGESCette méthode détecte les points terrestres le long des crêtes qui n’ont pas été détectés par une classification antérieure. Elle est destinée à une utilisation dans des zones isolées où les points terrestres sur un terrain accidenté n’ont pas été détectés correctement. C’est la raison pour laquelle vous devez indiquer une étendue de traitement ou un polygone de limite.
String
reuse_ground
(Facultatif)

Indique si les points terrestres existants seront reclassés ou réutilisés.

  • RECLASSIFY_GROUNDLes points terrestres actuels sont reclassés. Les points qui ne sont pas considérés comme terrestres se voient réattribuer la valeur de code de classe 1 représentant des points non classés. Il s’agit de l’option par défaut.
  • REUSE_GROUNDLes points terrestres actuels sont acceptés et réutilisés sans aucun test et aident à déterminer les points non classés.
Boolean
dem_resolution
(Facultatif)

Distance qui génère uniquement un sous-ensemble de points qui peuvent être classés comme terrestres, ce qui accélère le processus. Utilisez ce paramètre si vous avez besoin d’une méthode plus rapide pour générer une surface de MNE. La distance minimale est de 0,30 mètre, mais la distance fournie doit être au moins égale à 1,5 fois l’espacement moyen des points des données lidar pour que ce processus puisse avoir lieu.

Linear Unit
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
extent
(Facultatif)

Spécifie l’étendue des données qui seront évaluées.

  • MAXOF : l’étendue maximale de toutes les entrées est utilisée.
  • MINOF : l’étendue minimale commune à toutes les entrées est utilisée.
  • DISPLAY : l’étendue est égale à l’affichage visible.
  • Nom de la couche : l’étendue de la couche spécifiée est utilisée.
  • Objet Extent : l’étendue de l’objet spécifié est utilisée.
  • Chaîne délimitée par des espaces de coordonnées géographiques : l’étendue de la chaîne spécifiée est utilisée. Les coordonnées sont exprimées dans l’ordre x-min, y-min, x-max, y-max.
Extent
boundary

La ou les entités surfaciques qui définissent la région à traiter.

Feature Layer
process_entire_files
(Facultatif)

Indique comment l’étendue de traitement est appliquée.

  • PROCESS_EXTENTSeuls les points LAS qui intersectent la zone d'intérêt sont traités. Il s’agit de l’option par défaut.
  • PROCESS_ENTIRE_FILESSi une partie d’un fichier .las intersecte la zone d’intérêt, tous les points que le fichier contient, y compris ceux situés à l’extérieur de la zone d’intérêt, seront traités.
Boolean
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
algorithm
(Facultatif)

Spécifie la version de l’algorithme de détection des sols à utiliser pour classer les points terrestres.

  • LATESTLa version la plus récente de l’algorithme de détection des sols est utilisée. Cette option améliore le traitement du bruit et des points aberrants, notamment pour les nuages de points déduits de manière photogrammétrique. Dans la plupart des cas, elle produit également de meilleurs résultats et de meilleures performances. Il s’agit de l’option par défaut.
  • FIRSTLa version initiale de l’algorithme de détection des sols est utilisée. Utilisez cette option si les résultats de la version la plus récente ne sont pas adaptés.
String
classify_low_noise
(Facultatif)

Indique si les points situés à une distance donnée sous le sol sont classés comme points à bruit faible. La distance à laquelle les points de bruit sont identifiés dépend de la valeur du paramètre minimum_depth_below_ground. Les points à bruit faible reçoivent la valeur de code de classe 7.

  • CLASSIFY_LOW_NOISELes points à bruit faible sont classés.
  • NO_CLASSIFY_LOW_NOISELes points à bruit faible ne sont pas classés. Il s’agit de l’option par défaut.
Boolean
minimum_depth_below_ground
(Facultatif)

Distance sous le sol à utiliser pour classer les points à bruit faible. Le sol est défini par une surface triangulée créée à partir de points classés comme terrestres. Tous les points de code de classe 0 ou 1 qui se trouvent sous le sol à la profondeur fournie dans ce parapmètre reçoivent la valeur de code de classe 7.

Linear Unit
preserve_low_noise
(Facultatif)

Indique si les points à bruit faible existants de code de classe 7 sont conservés ou reclassés. Si les points à bruit faible sont reclassés, les points qui ne se trouvent pas sous le sol à une distance au moins égale à celle fournie pour la valeur du paramètre minimum_depth_below_ground reçoivent la valeur de code de classe 1.

  • PRESERVE_LOW_NOISELes points à bruit faible existants sont conservés. Il s’agit de l’option par défaut.
  • RECLASSIFY_LOW_NOISELes points à bruit faible existants sont reclassés.
Boolean
classify_high_noise
(Facultatif)

Indique si les points situés à une distance donnée au-dessus du sol sont classés comme points à bruit élevé. La distance à laquelle les points de bruit sont identifiés dépend de la valeur du paramètre minimum_height_above_ground. Les points à bruit élevé reçoivent la valeur de code de classe 18.

  • CLASSIFY_HIGH_NOISELes points à bruit élevé sont classés.
  • NO_CLASSIFY_HIGH_NOISELes points à bruit élevé ne sont pas classés. Il s’agit de l’option par défaut.
Boolean
minimum_height_above_ground
(Facultatif)

Distance au-dessus du sol à utiliser pour classer les points à bruit élevé. Le sol est défini par une surface triangulée créée à partir de points classés comme terrestres. Tous les points de code de classe 0 ou 1 qui se trouvent au-dessus du sol à la hauteur fournie dans ce parapmètre reçoivent la valeur de code de classe 18.

Linear Unit
preserve_high_noise
(Facultatif)

Indique si les points à bruit élevé existants de code de classe 18 sont conservés ou reclassés. Si les points à bruit élevé sont reclassés, les points qui ne se trouvent pas au-dessus du sol à une distance au moins égale à celle fournie pour la valeur du paramètre minimum_height_above_ground reçoivent la valeur de code de classe 1.

  • PRESERVE_HIGH_NOISELes points à bruit élevé existants sont conservés. Il s’agit de l’option par défaut.
  • RECLASSIFY_HIGH_NOISELes points à bruit élevé existants sont reclassés.
Boolean

Sortie obtenue

NomExplicationType de données
out_las_dataset

Le jeu de données LAS qui a été modifié.

LAS Dataset Layer

Exemple de code

Exemple 1 d’utilisation de l’outil ClassifyLasGround (fenêtre Python)

L’exemple suivant illustre l’utilisation de cet outil dans la fenêtre Python :

arcpy.env.workspace = 'C:/data'
arcpy.ClassifyLasGround_3d('metro.lasd', 'CONSERVATIVE', 
                           boundary='study_area.shp', 
                           process_entire_files='PROCESS_ENTIRE_FILES')
Exemple 2 d’utilisation de l’outil ClassifyLasGround (script autonome)

L’exemple suivant illustre l’utilisation de cet outil dans un script Python autonome :

'''****************************************************************************
Name:        Classify Ground & Vegetation in Forest Environment
Description: Classify points representing vegetation with LAS class code values
             of 3, 4, and 5. The code is designed for use as a script tool.
****************************************************************************'''
# Import system modules
import arcpy

# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
lasd = arcpy.GetParameterAsText(2)

try:
    arcpy.CheckOutExtension('3D')
    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasd, folder_recursion=recursion)
    # Make an initial pass of ground classifier
    arcpy.ddd.ClassifyLasGround(lasd, method="Conservative")
    # Make a secondary pass to capture ridges
    arcpy.ddd.ClassifyLasGround(lasd, method="Aggressive", 
                                reuse_ground="REUSE_GROUND")
    # Classify vegetation
    arcpy.ddd.ClassifyLasByHeight(lasd, ground_source='GROUND', 
                                  height_classification=[[3, 5], 
                                                         [4, 17], 
                                                         [5, 120]], 
                                  noise='HIGH_NOISE', compute_stats="COMPUTE_STATS")
    arcpy.CheckInExtension('3D')

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

Informations de licence

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

Rubriques connexes