Hacer capa de dataset LAS (Administración de datos)
Resumen
Crea una capa de dataset LAS que puede aplicar filtros en los archivos LAS y habilitar y deshabilitar las restricciones de superficie a las que hace referencia un dataset LAS.
Uso
Esta herramienta crea una capa temporal almacenada en la memoria que se puede conservar como un archivo de capa usando la herramienta Guardar en archivo de capa.
Los puntos LAS se pueden clasificar en varias categorías que describen el material que encuentra el retorno LIDAR, como terreno, construcción o agua. La Sociedad Americana de Fotogrametría y Detección Remota (ASPRS) define los siguientes códigos de clase para las versiones del archivo LAS 1.1, 1.2 y 1.3:
Valor de clasificación
Tipo de clasificación
0
Nunca clasificado
1
No asignado
2
Suelo
3
Vegetación baja
4
Vegetación media
5
Vegetación alta
6
Edificio
7
Ruido
8
Clave de modelo
9
Agua
10
Reservado para la definición de la ASPRS
11
Reservado para la definición de la ASPRS
12
Superponer
13–31
Reservado para la definición de la ASPRS
Nota:Las especificaciones de LAS 1.0 proporcionan los códigos de clase, de 0 a 255, pero no tienen ningún esquema de clasificación estandarizado. Cualquier código de clase utilizado en archivos 1.0 generalmente será definido por el proveedor de datos y proporcionado a través de información auxiliar.
La capa se puede utilizar como un terreno de presentación para generar entrada hacia otras herramientas de geoprocesamiento que acepten un dataset LAS. Por ejemplo, si se necesita un dataset de TIN o dataset ráster de los datos de lidar de terreno desnudo del primer retorno, las opciones de filtro de datos se puede utilizar para seleccionar el código de segunda clase y un valor de primer retorno. La capa de dataset LAS resultante podría utilizarse después en la herramienta Dataset LAS a ráster o la herramienta Dataset LAS a TIN para crear la salida deseada.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_las_dataset |
El dataset de LAS de entrada. | LAS Dataset Layer |
out_layer |
El nombre de la capa de dataset LAS resultante. Se utilizará un texto seguido de una barra invertida o barra diagonal para denotar una capa de grupo. | Las Dataset Layer |
class_code [class_code,...] (Opcional) |
Los códigos de clasificación para utilizar como un filtro de consulta para los puntos de datos LAS. El rango de valores válidos varían de 1 a 32. Por defecto, no se aplica el filtro. | Long |
return_values [return_values,...] (Opcional) | Especifica los valores de devolución que se utilizarán para filtrar los datos de puntos. Cuando no se especifica nada, se utilizan todos los valores de devolución. Las opciones de devolución válidas incluyen cualquier número de 1 a 5 y las siguientes palabras clave:
| String |
no_flag (Opcional) | Indica si los puntos de datos que no tienen asignado ningún marcador de clasificación, se deben habilitar para visualización y análisis.
| Boolean |
synthetic (Opcional) | Indica si los puntos de datos marcados como sintéticos, o puntos que se originan de una fuente de datos distinta a LIDAR, se deben habilitar para visualización y análisis.
| Boolean |
keypoint (Opcional) | Indica si los puntos de datos marcados como puntos clave modelo, o las mediciones significativas que no deben simplificarse, se deben habilitar para visualización y análisis.
| Boolean |
withheld (Opcional) | Indica si los puntos de datos marcados como retenidos, que normalmente representan las mediciones de ruido no deseado, se deben habilitar para visualización y análisis.
| Boolean |
surface_constraints [surface_constraints,...] (Opcional) |
El nombre de las entidades de restricción de superficie que están habilitadas en la capa. Todas las restricciones están habilitadas por defecto. | String |
Ejemplo de código
El siguiente ejemplo muestra cómo usar de esta herramienta en la ventana Python:
import arcpy
from arcpy import env
arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.MakeLasDatasetLayer_management('Baltimore.lasd', 'Baltimore Layer',
2, 'LAST', 'INCLUDE_UNFLAGGED',
'EXCLUDE_SYNTHETIC', 'INCLUDE_KEYPOINT',
'EXCLUDE_WITHHELD')
El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python:
'''*********************************************************************
Name: Export Elevation Raster from Ground LAS Measurements
Description: This script demonstrates how to export
ground measurements from LAS files to a raster using a
LAS dataset. This sample is designed to be used as a script
tool.
*********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
try:
# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
surfCons = arcpy.GetParameterAsText(2)
classCode = arcpy.GetParameterAsText(3)
returnValue = arcpy.GetParameterAsText(4)
spatialRef = arcpy.GetParameterAsText(5)
lasD = arcpy.GetParameterAsText(6)
outRaster = arcpy.GetParameterAsText(7)
cellSize = arcpy.GetParameter(8)
zFactor = arcpy.GetParameter(9)
if arcpy.ProductInfo == 'ArcView':
arcpy.CheckOutExtension('3D')
# Execute CreateLasDataset
arcpy.management.CreateLasDataset(inLas, lasD, recursion, surfCons, sr)
# Execute MakeLasDatasetLayer
lasLyr = arcpy.CreateUniqueName('Baltimore')
arcpy.management.MakeLasDatasetLayer(lasD, lasLyr, classCode, returnValue)
# Execute LasDatasetToRaster
arcpy.conversion.LasDatasetToRaster(lasLyr, outRaster, 'ELEVATION',
'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
'CELLSIZE', cellSize, zFactor)
arcpy.GetMessages()
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)
finally:
arcpy.management.Delete(lasLyr)