Extraer LAS (3D Analyst)

Resumen

Crea archivos LAS a partir de datos de nubes de puntos en un dataset LAS o en una capa de escena de nubes de puntos.

Ilustración

Ilustración de la herramienta Extraer LAS

Uso

  • Esta herramienta crea archivos .las o .zlas a partir de un dataset LAS, un archivo .slpk de nube de puntos o un servicio de capa de escena de nube de puntos I3S. Si la entrada es un dataset LAS, se creará un archivo de salida para cada archivo .las o .zlas al que se haga referencia en el dataset LAS. Si la entrada es una capa de escena de nube de puntos, el número de archivos de salida variará en función del número de puntos que se extraigan. Cada archivo de salida tiene un tamaño limitado de aproximadamente 16,8 millones de puntos. Algunos archivos pueden superar este umbral o tener un número de puntos menor.

  • La nube de puntos de entrada puede filtrarse para limitar los puntos que se extraerán utilizando cualquier combinación de códigos de clasificación, indicadores de clasificación y valores de retorno. Los filtros de puntos pueden definirse cargando la capa en un mapa o escena y especificando los filtros en el cuadro de diálogo Propiedades de capa. Los filtros de puntos también pueden aplicarse a un dataset LAS utilizando la herramienta Hacer capa de dataset LAS. Además, puede extraer un subconjunto de la nube de puntos de entrada especificando una extensión de procesamiento y un límite de extracción. Cuando se proporciona una extensión de procesamiento con un límite de extracción, se utilizará la intersección de ambos para crear los archivos de salida. Si no se definen ni la extensión de procesamiento ni el límite de extracción, se procesará toda la nube de puntos de entrada.

  • Cuando la entrada es un dataset LAS, la versión del archivo LAS resultante y el formato del registro de puntos de las salidas coincidirán con el archivo de origen. Cuando la entrada es un servicio de capa de escena de nube de puntos I3S o un archivo .slpk, la salida se creará como archivo LAS versión 1.4, pero el formato del registro de puntos dependerá de los atributos de la nube de puntos de origen, como se indica a continuación:

    • Se utilizará el formato de punto 6 si la entrada no contiene valores RGB o de infrarrojo cercano.
    • Se utilizará el formato de punto 7 si la entrada contiene valores RGB, pero no tiene valores de infrarrojo cercano.
    • Se utilizará el formato de punto 8 si la entrada contiene valores RGB e infrarrojo cercano.

    Para utilizar una versión de archivo LAS y un formato de registro de puntos diferentes, genérelos procesando los archivos de salida de esta herramienta mediante la herramienta Convertir LAS.

  • La referencia espacial de un archivo .las suele definirse en el archivo. Si esta información falta o es incorrecta, un archivo .prj auxiliar puede definir la referencia espacial del archivo LAS. El archivo .prj debe residir en la misma ubicación que el archivo .las y tener el mismo nombre que el archivo .las. Si está presente, el archivo .prj invalida la información de referencia espacial del archivo .las. Se pueden crear archivos .prj para los archivos .las con las referencias espaciales ausentes o mal definidas mediante la herramienta Definir proyección para un archivo .las o .zlas individual o la herramienta Crear dataset LAS a través del parámetro Crear PRJ para archivos LAS.

  • Puede reproyectar el sistema de coordenadas horizontales de la nube de puntos de entrada en una referencia espacial diferente especificando el ajuste de entorno Sistema de coordenadas de salida. Además, se pueden realizar conversiones de unidades z asegurándose de que las unidades verticales se definen mediante un sistema de coordenadas verticales. Sin embargo, actualmente no se admite una transformación vertical de datum. Asegúrese de que cualquier conversión del sistema de coordenadas horizontales pueda mantener el sistema de coordenadas verticales original.

  • No es inusual que los registros de puntos LAS se almacenen en el archivo .las en una secuencia binaria que no se corresponde con el clustering espacial de los puntos. Cuando se consultan los datos de tal distribución, puede ser que el acceso a los registros binarios que representan los puntos LAS sea menos eficiente. La reordenación de los puntos en el archivo .las resultante optimizará los datos para su visualización y otras operaciones espaciales. Las estadísticas se calcularán automáticamente cuando se habilite la opción de reordenación. Si no reordena los puntos LAS, puede habilitar o deshabilitar el cálculo de estadísticas. El cálculo de estadísticas optimizará consultas espaciales y ofrecerá un resumen de los códigos de clase y valores de retorno que hay en el archivo .las. Sin embargo, también agregará tiempo al procesamiento de esta herramienta. Si los archivos .las resultantes no se van a utilizar en ArcGIS, puede deshabilitar el cálculo de estadísticas para que la herramienta procese más rápido.

  • Puede utilizar el parámetro Límite de extracción para recortar la nube de puntos de entrada a una forma irregular. Este parámetro admite un límite de polígono que defina un área de estudio contigua, como una única entidad de polígono que cubra una región relativamente grande. Aunque se pueden proporcionar como entrada múltiples polígonos que representen áreas de interés vecinas, la función de límites no admite polígonos que representen un gran número de elementos pequeños, como árboles o edificios. Se fusionan varios polígonos para recortar eficazmente la nube de puntos de entrada. Por este motivo, evite especificar un elemento de contorno con muchos polígonos pequeños, ya que el rendimiento será lento.

Parámetros

EtiquetaExplicaciónTipo de datos
Nube de puntos de entrada

Dataset LAS, paquete de capa de escena de nube de puntos (archivo .slpk) o servicio de nube de puntos I3S que se extraerá. Un servicio de nube de puntos I3S debe tener activada la propiedad de exportación para ser procesado.

LAS Dataset Layer; Scene Layer; File
Carpeta de destino

Carpeta existente en la que se escribirán los archivos .las de salida.

Folder
Extensión de procesamiento
(Opcional)

La extensión de los datos que se evaluarán.

  • Extensión de visualización actual Vista de mapa: la extensión se basará en el mapa o la escena activa.
  • Extensión de dibujo Cuadrar y terminar: la extensión se basará en un rectángulo dibujado en el mapa o la escena.
  • Extensión de mapa Capa: la extensión se basará en una capa de mapa activa. Elija una capa disponible o utilice la opción Extensión de datos en todas las capas. Cada capa de mapas tiene las opciones siguientes:

    • Todas las entidades Selecciona todo: extensión de todas las entidades.
    • Entidades seleccionadas Área de entidades seleccionadas: extensión de las entidades seleccionadas.
    • Entidades visibles Extent Indicator: extensión de las entidades visibles.

  • Examinar Examinar: la extensión se basará en un dataset.
  • Intersección de entradas Intersecar: la extensión será la extensión de intersección de todas las entradas.
  • Combinación de entradas Combinación: la extensión será la extensión combinada de todas las entradas.
  • Portapapeles Pegar: la extensión puede copiarse en y desde el portapapeles.
    • Copiar extensión Copiar: copia la extensión y el sistema de coordenadas en el portapapeles.
    • Pegar extensión Pegar: pega la extensión y el sistema de coordenadas desde el portapapeles. Si el portapapeles no incluye un sistema de coordenadas, la extensión utilizará el sistema de coordenadas del mapa.
  • Restablecer extensión Restablecer: la extensión se restablecerá al valor predeterminado.

Cuando las coordenadas se proporcionan de forma manual, las coordenadas deben ser valores numéricos y encontrarse en el sistema de coordenadas del mapa activo. El mapa podría utilizar unidades de visualización distintas de las coordenadas proporcionadas. Utilice un valor de signo negativo para las coordenadas sur y oeste.

Extent
Límite de extracción
(Opcional)

Límite de polígono que se utilizará para recortar la nube de puntos de entrada. Este límite debe representar un área de estudio principal que suele estar definida por un polígono contiguo, pero también puede estar compuesta por más de un polígono cuando representa un área de estudio común con una brecha espacial relevante.

Feature Layer
Procesar todos los archivos LAS que intersequen la extensión
(Opcional)

Especifica cómo se va a utilizar el área de interés para determinar el modo de procesar los archivos .las. El área de interés está definida por el valor del parámetro Extensión de procesamiento, el valor del parámetro Límite de procesamiento, o una combinación de ambos.

  • Desactivado: solo se procesarán los puntos LAS que intersequen el área de interés. Esta es la opción predeterminada.
  • Activado: si alguna parte del archivo .las interseca el área de interés, se procesarán todos los puntos de ese archivo, incluidos los que queden fuera del área de interés.
Boolean
Sufijo del nombre de archivo de salida
(Opcional)

Texto que se incorporará al nombre de cada archivo .las de salida. Cada archivo heredará su nombre base de su archivo de origen, seguido del sufijo proporcionado en este parámetro.

String
Quitar los registros de longitud variable
(Opcional)

Especifica si se quitarán los registros de longitud variable (VLR). Cada archivo .las puede contener un conjunto de VLR agregado por el software que lo produjo. El significado de estos registros normalmente solo lo conoce el software original. A menos que los datos LAS de salida sean procesados por una aplicación que entienda esta información, la retención de los VLR puede no proporcionar ninguna funcionalidad de valor añadido. La eliminación de los VLR puede ahorrar un espacio significativo en el disco dependiendo de su tamaño total y de la cantidad de archivos que los contienen.

  • Desactivado: los registros de longitud variable de los archivos .las de entrada no se eliminarán y permanecerán en la salida. Esta es la opción predeterminada.
  • Activado: los registros de longitud variable de los archivos .las de entrada se eliminarán de la salida.
Boolean
Reorganizar puntos
(Opcional)

Especifica si los puntos de los archivos .las o .zlas se reorganizarán para optimizar el rendimiento de la lectura y actualización de la clasificación de la nube de puntos.

  • Desactivado: no se reorganizará el orden de los puntos.
  • Activado: el orden de los puntos se reorganizará en grupos espaciales que optimizan la lectura de los datos. Los puntos reorganizados pueden mejorar el rendimiento de las operaciones posteriores que se realizan en la nube de puntos. Esta es la opción predeterminada.
Boolean
Calcular Estadísticas
(Opcional)

Especifica si las estadísticas se calcularán para los archivos .las a los que hace referencia el dataset LAS. Calcular estadísticas proporciona un índice espacial para cada archivo .las, lo que mejora el análisis y el rendimiento de la visualización. Las estadísticas también mejoran la experiencia de filtrado y simbología al limitar la visualización de los atributos LAS, como los códigos de clasificación y la información de retorno, a los valores presentes en el archivo .las.

  • Activado: se calcularán las estadísticas. Esta es la opción predeterminada.
  • Desactivada: no se calcularán las estadísticas.
Boolean
Dataset LAS de salida
(Opcional)

El dataset LAS de salida que hace referencia a los archivos .las recién creados.

LAS Dataset
Compresión
(Opcional)

Especifica si el archivo .las de salida tendrá un formato comprimido o el formato LAS estándar.

  • Igual que la entradaLa compresión será la misma que la de entrada. Esta opción solo está disponible cuando la entrada es un dataset LAS y, en ese caso, es la opción predeterminada.
  • Sin compresiónLa salida tendrá el formato LAS estándar (archivo *.las). Este es el valor predeterminado cuando la entrada es una capa de escena de nube de puntos.
  • Compresión zLASLos archivos .las de salida se comprimirán con el formato de zLAS.
String

Salida derivada

EtiquetaExplicaciónTipo de datos
Carpeta de salida

Carpeta en la que se escribirán los archivos .las.

Folder

arcpy.ddd.ExtractLas(in_las_dataset, target_folder, {extent}, {boundary}, {process_entire_files}, {name_suffix}, {remove_vlr}, {rearrange_points}, {compute_stats}, {out_las_dataset}, {compression})
NombreExplicaciónTipo de datos
in_las_dataset

Dataset LAS, paquete de capa de escena de nube de puntos (archivo .slpk) o servicio de nube de puntos I3S que se extraerá. Un servicio de nube de puntos I3S debe tener activada la propiedad de exportación para ser procesado.

LAS Dataset Layer; Scene Layer; File
target_folder

Carpeta existente en la que se escribirán los archivos .las de salida.

Folder
extent
(Opcional)

La extensión de los datos que se evaluarán.

  • MAXOF: se usará la extensión máxima de todas las entradas.
  • MINOF: se usará el área mínima común a todas las entradas.
  • DISPLAY: la extensión es igual a la visualización visible.
  • Nombre de capa: se utilizará la extensión de la capa especificada.
  • Objeto de Extent: se utilizará la extensión del objeto especificado.
  • Cadena de coordenadas delimitada por espacios: se utilizará la extensión de la cadena especificada. Las coordenadas se expresan como x-min, y-min, x-max, y-max.
Extent
boundary
(Opcional)

Límite de polígono que se utilizará para recortar la nube de puntos de entrada. Este límite debe representar un área de estudio principal que suele estar definida por un polígono contiguo, pero también puede estar compuesta por más de un polígono cuando representa un área de estudio común con una brecha espacial relevante.

Feature Layer
process_entire_files
(Opcional)

Especifica cómo se va a aplicar la extensión de procesamiento.

  • PROCESS_EXTENTSolo se procesarán los puntos LAS que intersequen el área de interés. Esta es la opción predeterminada.
  • PROCESS_ENTIRE_FILESSi alguna parte del archivo .las interseca el área de interés, se procesarán todos los puntos de ese archivo, incluidos los que queden fuera del área de interés.
Boolean
name_suffix
(Opcional)

Texto que se incorporará al nombre de cada archivo .las de salida. Cada archivo heredará su nombre base de su archivo de origen, seguido del sufijo proporcionado en este parámetro.

String
remove_vlr
(Opcional)

Especifica si se quitarán los registros de longitud variable (VLR). Cada archivo .las puede contener un conjunto de VLR agregado por el software que lo produjo. El significado de estos registros normalmente solo lo conoce el software original. A menos que los datos LAS de salida sean procesados por una aplicación que entienda esta información, la retención de los VLR puede no proporcionar ninguna funcionalidad de valor añadido. La eliminación de los VLR puede ahorrar un espacio significativo en el disco dependiendo de su tamaño total y de la cantidad de archivos que los contienen.

  • MAINTAIN_VLRLos datos almacenados en los registros de longitud variable del archivo .las procesado no se eliminarán y permanecerán en los archivos extraídos. Esta es la opción predeterminada.
  • REMOVE_VLRLos registros de longitud variable adicionales se eliminarán de los archivos .las.
Boolean
rearrange_points
(Opcional)

Especifica si los puntos de los archivos .las o .zlas se reorganizarán para optimizar el rendimiento de la lectura y actualización de la clasificación de la nube de puntos.

  • MAINTAIN_POINTSNo se reorganizará el orden de los puntos.
  • REARRANGE_POINTSEl orden de los puntos se reorganizará en grupos espaciales que optimizan la lectura de los datos. Los puntos reorganizados pueden mejorar el rendimiento de las operaciones posteriores que se realizan en la nube de puntos. Esta es la opción predeterminada.
Boolean
compute_stats
(Opcional)

Especifica si las estadísticas se calcularán para los archivos .las a los que hace referencia el dataset LAS. Calcular estadísticas proporciona un índice espacial para cada archivo .las, lo que mejora el análisis y el rendimiento de la visualización. Las estadísticas también mejoran la experiencia de filtrado y simbología al limitar la visualización de los atributos LAS, como los códigos de clasificación y la información de retorno, a los valores presentes en el archivo .las.

  • COMPUTE_STATSSe calcularán las estadísticas. Esta es la opción predeterminada.
  • NO_COMPUTE_STATSNo se calcularán las estadísticas.
Boolean
out_las_dataset
(Opcional)

El dataset LAS de salida que hace referencia a los archivos .las recién creados.

LAS Dataset
compression
(Opcional)

Especifica si el archivo .las de salida tendrá un formato comprimido o el formato LAS estándar.

  • SAME_AS_INPUTLa compresión será la misma que la de entrada. Esta opción solo está disponible cuando la entrada es un dataset LAS y, en ese caso, es la opción predeterminada.
  • NO_COMPRESSIONLa salida tendrá el formato LAS estándar (archivo *.las). Este es el valor predeterminado cuando la entrada es una capa de escena de nube de puntos.
  • ZLASLos archivos .las de salida se comprimirán con el formato de zLAS.
String

Salida derivada

NombreExplicaciónTipo de datos
out_folder

Carpeta en la que se escribirán los archivos .las.

Folder

Muestra de código

Ejemplo 1 de ExtractLas (ventana de Python)

En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.

import arcpy
from arcpy import env

env.workspace = 'C:/data'
arcpy.ddd.ExtractLas('test.lasd', 'c:/lidar/subset', boundary='study_area.shp',
                     name_suffix='subset', remove_vlr=True, 
                     rearrange_points='REARRANGE_POINTS', 
                     out_las_dataset='extracted_lidar.lasd')
Ejemplo 2 de ExtractLas (secuencia de comandos independiente)

En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.

'''****************************************************************************
Name: Split Large LAS File
Description: Divides a large LAS file whose point distribution covers the full
             XY extent of the data into smaller files to optimize performance
             when reading lidar data.
****************************************************************************'''
# Import system modules
import arcpy
import tempfile
import math

in_las_file = arcpy.GetParameterAsText(0)
tile_width = arcpy.GetParameter(1) # double in LAS file's XY linear unit
tile_height = arcpy.GetParameter(2) # double in LAS file's XY linear unit
out_folder = arcpy.GetParameterAsText(3) # folder for LAS files
out_name_suffix = arcpy.GetParameterAsText(4) # basename for output files
out_lasd = arcpy.GetParameterAsText(5) # output LAS dataset


try:
    temp_lasd = arcpy.CreateUniqueName('temp.lasd', tempfile.gettempdir())
    arcpy.management.CreateLasDataset(in_las_file, temp_lasd, 
                                      compute_stats='COMPUTE_STATS')
    desc = arcpy.Describe(temp_lasd)
    total_columns = int(math.ceil(desc.extent.width/tile_width))
    total_rows = int(math.ceil(desc.extent.height/tile_height))
    digits = int(math.log10(max(cols, rows))) + 1
    for row in range(1, total_rows+1):
        yMin = desc.extent.YMin + tile_height*(row-1)
        yMax = desc.extent.YMin + tile_height*(row)
        for col in range (1, total_columns+1):
            xMin = desc.extent.XMin + tile_width*(col-1)
            xMax = desc.extent.XMax + tile_width*(col)
            name_suffix = '_{0}_{1}x{2}'.format(out_name_suffix, 
                                                str(row).zfill(digits), 
                                                str(col).zfill(digits))
            arcpy.ddd.ExtractLas(temp_lasd, out_folder, 
                                 arcpy.Extent(xMin, yMin, xMax, yMax),
                                 name_suffix=name_suffix, 
                                 rearrange_points='REARRANGE_POINTS',
                                 compute_stats='COMPUTE_STATS')
    arcpy.env.workspace = out_folder
    arcpy.management.CreateLasDataset(arcpy.ListFiles('*{0}*.las'.format(out_name_suffix)),
                                      out_lasd, compute_stats='COMPUTE_STATS',
                                      relative_paths='RELATIVE_PATHS')
except arcpy.ExecuteError:
    print(arcpy.GetMessages())

Información de licenciamiento

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

Temas relacionados