ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS for Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

Classer LAS par superposition

  • Résumé
  • Illustration
  • Utilisation
  • Syntaxe
  • Exemple de code
  • Environnements
  • Informations de licence

Résumé

Classe les points LAS des balayages de superposition des enquêtes lidar aériennes.

Illustration

Classer LAS par superposition

Utilisation

  • Les points de superposition non classés risquent de générer des résultats indésirables dans les opérations qui supposent une distribution de points régulière, comme celles de l’outil Classer des bâtiments LAS. Les données dérivées de ces points peuvent également comporter une marge d’erreur non souhaitée en raison des retours obtenus à partir d’angles de balayage de magnitude extrême. Classer les points de superposition permet de les exclure afin d’obtenir une distribution de points plus régulière des retours de plus haute qualité.

  • Cet outil traite les données LAS en entrée, fichier par fichier, ce qui exige par conséquent l'absence de superposition dans la couverture des fichiers LAS. En cas de superposition de la couverture des fichiers LAS, les fichiers peuvent être fusionnés en fichiers non superposés à l’aide de l’outil Tuile LAS.

  • L’attribut ID source du point d’un point LAS offre des informations sur la ligne de vol à partir de laquelle il a été collecté. Cet outil traite les données LAS dans des tuiles en déterminant si plusieurs ID source des points sont présents, puis en identifiant l’ID avec l’angle de balayage de magnitude la plus élevée comme point de superposition. Si la surface en cours de traitement possède plusieurs points avec le même ID source du point, tous les points qui partagent l’ID source du point avec l’angle de balayage de magnitude la plus élevée sont classés comme points de superposition. C’est pour cela que la taille de l’échantillon utilisée pour évaluer les points LAS doit être environ deux à trois fois supérieure à la taille de l’espacement nominal des points des données LAS. Il est conseillé d’éviter les tuiles de plus grande taille, car les points risquent dans ce cas d’être classés de manière erronée avec des valeurs d’angle de balayage inférieures. Les tailles d’échantillon inférieures risquent de ne pas capturer assez de points pour identifier et classer correctement les points de superposition.

  • Les points de superposition dans les fichiers LAS de version 1.4 et les formats d’enregistrement des points de 6 à 8 se voient attribuer le drapeau de classification de superposition tout en conservant la valeur de leur code de classe d’origine. Le code de classe de valeur 12 est attribué aux points de superposition dans tous les autres fichiers LAS pris en charge. Si le code de classe de valeur 12 est déjà utilisé par les fichiers LAS en entrée pour représenter autre chose que des balayages de superposition, utilisez l’outil Modifier les codes de classes LAS pour réattribuer une autre valeur à ces points avant d’exécuter l’outil.

Syntaxe

ClassifyLasOverlap(in_las_dataset, sample_distance, {extent}, {process_entire_files}, {compute_stats})
ParamètreExplicationType de données
in_las_dataset

Jeu de données LAS tuilé à traiter.

LAS Dataset Layer
sample_distance

La distance d'une dimension de la surface carrée utilisée pour évaluer les données LAS. Cette valeur peut être exprimée en tant que nombre ou valeur d'unité linéaire, par exemple 3 mètres. Si les unités linéaires ne sont pas spécifiées ou si elles sont désignées avec la mention Unknown (Inconnu), l’unité est définie par la référence spatiale du fichier LAS en entrée.

Linear Unit
extent
(Facultatif)

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

Extent
process_entire_files
(Facultatif)

Indique comment appliquer l’étendue de traitement.

  • PROCESS_EXTENT —Seuls 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_FILES —Si une partie d'un fichier LAS intersecte la zone d'intérêt, tous les points qu'il contient, y compris ceux situés à l'extérieur de la zone d'intérêt, sont traités.
Boolean
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.

  • COMPUTE_STATS —Les statistiques sont calculées.
  • NO_COMPUTE_STATS —Les statistiques ne sont pas calculées. Il s’agit de l’option par défaut.
Boolean

Sortie dérivée

NomExplicationType de données
out_las_dataset

Le jeu de données LAS à modifier.

Couche du jeu de données LAS

Exemple de code

Exemple 1 d'utilisation de l'outil ClassifyLasOverlap (fenêtre Python)

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

arcpy.env.workspace = 'C:/data'

arcpy.ddd.ClassifyLasOverlap('Denver_2.lasd', '1 Meter')
Exemple 2 d'utilisation de l'outil ClassifyLasOverlap (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome.

'''****************************************************************************
       Name: Classify Lidar & Extract Building Footprints
Description: Extract footprint from lidar points classified as buildings, 
             regularize its geometry, and calculate the building height.

****************************************************************************'''
import arcpy

lasd = arcpy.GetParameterAsText(0)
dem = arcpy.GetParameterAsText(1)
footprint = arcpy.GetParameterAsText(2)

try:
    desc = arcpy.Describe(lasd)
    if desc.spatialReference.linearUnitName in ['Foot_US', 'Foot']:
        unit = 'Feet'
    else:
        unit = 'Meters'
    ptSpacing = desc.pointSpacing * 2.25
    sampling = '{0} {1}'.format(ptSpacing, unit)
    # Classify overlap points
    arcpy.ddd.ClassifyLASOverlap(lasd, sampling)
    # Classify ground points
    arcpy.ddd.ClassifyLasGround(lasd)
    # Filter for ground points
    arcpy.management.MakeLasDatasetLayer(lasd, 'ground', class_code=[2])
    # Generate DEM
    arcpy.conversion.LasDatasetToRaster('ground', dem, 'ELEVATION', 
                                        'BINNING NEAREST NATURAL_NEIGHBOR', 
                                        sampling_type='CELLSIZE', 
                                        sampling_value=desc.pointSpacing)
    # Classify noise points
    arcpy.ddd.ClassifyLasNoise(lasd, method='ISOLATION', edit_las='CLASSIFY', 
                               withheld='WITHHELD', ground=dem, 
                               low_z='-2 feet', high_z='300 feet', 
                               max_neighbors=ptSpacing, step_width=ptSpacing, 
                               step_height='10 feet')
    # Classify buildings
    arcpy.ddd.ClassifyLasBuilding(lasd, '7.5 feet', '80 Square Feet')
    #Classify vegetation
    arcpy.ddd.ClassifyLasByHeight(lasd, 'GROUND', [8, 20, 55], 
                                  compute_stats='COMPUTE_STATS')
    # Filter LAS dataset for building points
    lasd_layer = 'building points'
    arcpy.management.MakeLasDatasetLayer(lasd, lasd_layer, class_code=[6])
    # Export raster from lidar using only building points
    temp_raster = 'in_memory/bldg_raster'
    arcpy.management.LasPointStatsAsRaster(lasd_layer, temp_raster,
                                           'PREDOMINANT_CLASS', 'CELLSIZE', 2.5)
    # Convert building raster to polygon
    temp_footprint = 'in_memory/footprint'
    arcpy.conversion.RasterToPolygon(temp_raster, temp_footprint)
    # Regularize building footprints
    arcpy.ddd.RegularizeBuildingFootprint(temp_footprint, footprint, 
                                          method='RIGHT_ANGLES')

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

Environnements

  • Espace de travail courant
  • Etendue

Informations de licence

  • Basic: Requiert 3D Analyst
  • Standard: Requiert 3D Analyst
  • Advanced: Requiert 3D Analyst

Rubriques connexes

  • Vue d'ensemble du jeu d'outils Gestion des données
  • Notions de base relatives aux surfaces
  • Formats de surface

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2019 Esri. | Confidentialité | Légal