Résumé
Classe des points au sol dans des données lidar.
Illustration
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 conservé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 du système de coordonnées en sortie.
Seuls les derniers points LAS renvoyés avec des valeurs de code de classe de 0, 1 ou 2 peuvent être reclassés comme terrestres. Si vos fichiers LAS utilisent d'autres valeurs de code de classe pour représenter des mesures non classées ou terrestres, vous pouvez utiliser l'outil Modifier les codes de classes LAS pour les réattribuer correctement. Le processus de classification ignore également les points qui sont attribués avec l'indicateur de classification de superposition ou de bruit.
Si la classification terrestre est réalisée uniquement pour créer une surface raster au sol d’une résolution précise, utilisez le paramètre DEM Resolution (Résolution MNT) avec la résolution raster souhaitée pour créer le résultat de classification nécessaire à l’interpolation de la surface.
Lors de la classification des retours LAS sur un terrain présentant des caractéristiques de pente divergentes, par exemple des zones relativement plates qui côtoient des emplacements dotés de profils de pente escarpée, exécutez le classificateur terrestre une première fois selon la méthode standard et une seconde fois selon la méthode de détection agressive en activant l’option de réutilisation du sol. Appliquez une étendue de traitement ou spécifiez une limite de polygone pour limiter cette opération à la seule région nécessaire.
Les emplacements qui comportent des ponts et des bretelles d’autoroute doivent être examinés, car ils risquent d’être classés par erreur comme terrestres.
Syntaxe
ClassifyLasGround(in_las_dataset, method, {reuse_ground}, {dem_resolution}, {compute_stats}, {extent}, boundary, {process_entire_files})
Paramètre | Explication | Type de données |
in_las_dataset | Jeu de données LAS à traiter. 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 | Méthode utilisée pour détecter les points terrestres.
| String |
reuse_ground (Facultatif) | Indique si les points terrestres actuels doivent être reclassés ou réutilisés.
| Boolean |
dem_resolution (Facultatif) | Indique une 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 cette option si vous avez besoin d’une méthode plus rapide pour générer une surface de MNT. La distance minimale est de 0,30 mètre, mais la distance spécifiée 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 doivent être calculées pour les fichiers LAS référencés par le jeu de données LAS. Le calcul des statistiques fournit un index spatial pour chaque fichier LAS, ce qui améliore les performances d’analyse et d’affichage. Les statistiques permettent également d’optimiser l’utilisation des filtres et de la symbologie en limitant l’affichage des attributs LAS (tels que les codes de classification et les informations renvoyées) aux valeurs présentes dans le fichier LAS.
| Boolean |
extent (Facultatif) | Spécifie l’étendue des données qui seront évaluées par cet outil. | Extent |
boundary | Entité surfacique définissant la zone d’intérêt que cet outil doit traiter. | Feature Layer |
process_entire_files (Facultatif) | Indique comment appliquer l’étendue de traitement.
| Boolean |
Sortie dérivée
Nom | Explication | Type de données |
out_las_dataset | Le jeu de données LAS qui a été modifié. | Couche du jeu de données LAS |
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())
Environnements
Informations de licence
- Basic: Requiert 3D Analyst
- Standard: Requiert 3D Analyst
- Advanced: Requiert 3D Analyst