Ajouter des fichiers au jeu de données LAS (Gestion des données)
Récapitulatif
Ajoute des références pour un ou plusieurs fichiers LAS et des entités de contrainte de surface à un jeu de données LAS.
Utilisation
Le jeu de données LAS est conçu pour être utilisé avec des données lidar aéroportées au format *.las ou *.zlas. Il est possible de créer des versions de fichiers LAS pris en charge sont 1.0, 1.1, 1.2 et 1.3 et les fichiers *.zlas, qui sont des fichiers *.las compressés, grâce à l'utilitaire disponible ici.
Envisagez la création et la gestion du jeu de données LAS via la fenêtre ArcCatalog qui est plus interactive. Reportez-vous à la rubrique Création d'un jeu de données LAS pour plus d'informations.
Les entités de contrainte de surface permettent d'imposer des valeurs d'altitude dérivées d'entités représentant les caractéristiques de surface du jeu de données LAS.
Le jeu de données LAS lit les informations de référence spatiale figurant dans l'en-tête de chaque fichier LAS. Si ces informations ne figurent pas dans l'en-tête ou qu'elles sont mal rédigées, vous pouvez géoréférencer correctement le fichier LAS en créant un fichier *.prj auxiliaire qui partage son nom, se trouve dans le même dossier et contient la représentation sous forme de chaîne du système de coordonnées du fichier LAS, comme c'est le cas avec le fichier *.prj d'un fichier de formes.
Vous pouvez classer les points lidar en plusieurs catégories qui décrivent la matière détectée par la valeur lidar renvoyée : sol, bâtiment ou eau. L'association ASPRS (American Society for Photogrammetry and Remote Sensing) a défini les codes de classes suivants pour les versions de fichiers LAS 1.1, 1.2 et 1.3 :
Valeur de classification
Type de classification
0
Jamais classé
1
Non attribué
2
Sol
3
Végétation basse
4
Végétation moyenne
5
Végétation haute
6
Bâtiment
7
Bruit
8
Clé de modèle
9
Eau
10
Réservé à la définition ASPRS
11
Réservé à la définition ASPRS
12
Superposition
13–31
Réservé à la définition ASPRS
Remarque :Alors que les spécifications LAS 1.0 proposent des codes de classes compris entre 0 et 255, elles ne présentent pas de jeu de classification standard. Les codes de classes utilisés dans les fichiers 1.0 sont habituellement définis par le fournisseur de données et communiquées via des informations auxiliaires.
Syntaxe
Paramètre | Explication | Type de données |
in_las_dataset |
Jeu de données LAS en entrée. | LAS Dataset Layer |
in_files [in_files,...] (Facultatif) |
Les fichiers en entrée peuvent référencer toute combinaison de fichiers LAS individuels et de dossiers qui contiennent des données LAS. | Folder; File |
folder_recursion (Facultatif) |
Spécifie si les données lidar résidant dans les sous-répertoires d'un dossier en entrée seraient ajoutées au jeu de données LAS.
| Boolean |
in_surface_constraints [[in_feature_class, height_field, SF_type],...] (Facultatif) | Classes d'entités qui sont référencées par le jeu de données LAS. Pour chaque entité, les propriétés suivantes doivent être définies : in_feature_class : classe d'entités qui doit être référencée par le jeu de données LAS. height_field : champ qui spécifie la source des valeurs d'altitude pour les entités. N'importe quel champ numérique de la table attributaire de l'entité peut être utilisé. Si l'entité prend en charge des valeurs Z, vous pouvez lire la géométrie de l'entité en sélectionnant l'option Shape.Z. Si aucune hauteur n'est requise, spécifiez le mot-clé <Aucun> pour créer des entités z-less dont l'altitude serait interpolée à partir de la surface. SF_type - Type de surface qui définit le mode d'incorporation de la géométrie de l'entité à la triangulation pour la surface. Les options rigides ou malléables font référence à la représentation des tronçons d'entité sous la forme de ruptures de pente distinctes ou d'un changement graduel.
| Value Table |
Exemple de code
L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python :
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.AddFilesToLasDataset_management("test.lasd",
["LA_N", "LA_S/LA_5S4E.las"],
"RECURSION",
["boundary.shp <None> Soft_Clip",
"breakline.shp Shape.Z Hard_Line"])
L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome :
'''*********************************************************************
Name: Modify Files in LAS Dataset& Calculate Stats for LASD
Description: Adds files & surface constraints to a LAS dataset, then
calculates statistics and generates report.
*********************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions, sys, traceback
try:
# Script variables
env.workspace = 'C:/data'
lasd = 'sample.lasd'
oldLas = ['2006', '2007/file2.las']
newLas = ['2007_updates_1', '2007_updates_2']
oldSurfaceConstraints = ['boundary.shp', 'streams.shp']
newSurfaceConstraints = [['sample.gdb/boundary', '<None>',
'Soft_Clip']
['sample.gdb/streams', 'Shape.Z',
'Hard_Line']]
arcpy.management.RemoveFilesFromLasDataset(lasd, oldLas,
oldSurfaceConstraints)
arcpy.management.AddFilesToLasDataset(lasd, newLas, 'RECURSION',
newSurfaceConstraints)
arcpy.management.LasDatasetStatistics(lasd, "UPDATED_FILES",
"lasd_stats.txt",
"LAS_FILE", "DECIMAL_POINT",
"SPACE", "LAS_summary.txt")
except arcpy.ExecuteError:
print arcpy.GetMessages()
except:
# Get the traceback object
tb = sys.exc_info()[2]
tbinfo = traceback.format_tb(tb)[0]
# Concatenate error information into message string
pymsg = "PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}"\
.format(tbinfo, str(sys.exc_info()[1]))
msgs = "ArcPy ERRORS:\n {0}\n".format(arcpy.GetMessages(2))
# Return python error messages for script tool or Python Window
arcpy.AddError(pymsg)
arcpy.AddError(msgs)