Clasificar superposición de LAS (3D Analyst)

Resumen

Clasifica los puntos LAS de escaneados superpuestos procedentes de levantamientos topográficos LIDAR aéreos.

Ilustración

Ejemplo de la herramienta Clasificar superposición de LAS

Uso

  • Los puntos superpuestos representan resultados de LAS que existen cerca de otro punto a partir de un escaneo que se origina en una línea de vuelo diferente. Cuando varios puntos de líneas de vuelo diferentes se representan a una distancia más corta que el espaciado de punto nominal, el punto con el mayor ángulo de escaneo normalmente se marca como superposición. La designación Superponer permite filtrar los puntos y excluirlos de la visualización y el análisis.

  • Esta herramienta funciona con archivos .las en teselas que combinan registros de puntos de varias líneas de vuelo. Cada archivo .las se procesa individualmente con los datos LAS de entrada archivo por archivo, lo que significa que no identificará puntos superpuestos si cada línea de vuelo se almacena en un archivo .las separado. La herramienta LAS de tesela se puede utilizar para fusionar una colección de archivos .las compuesta por líneas de vuelo individuales en archivos en teselas que fusionan varias líneas de vuelo.

  • Los puntos superpuestos sin clasificar podrían producir resultados no deseados en operaciones que adoptan una distribución de puntos regular. Los datos derivados de puntos de procesamiento con densidades y una distribución de puntos irregulares podrían producir un margen de error no deseado. La clasificación de puntos superpuestos permite filtrar los datos LAS para producir una densidad de puntos uniforme y reducir el potencial de devolución de puntos con un margen de error superior.

  • El atributo de Id. de origen de punto de un punto LAS proporciona información acerca de la línea de vuelo desde la que se recopiló. Esta herramienta procesa los datos LAS de las teselas determinando si existen varios Id. de origen de punto y, a continuación, identificando como superposición el Id. con el ángulo de escaneo de mayor magnitud. Si se encuentran varios puntos con el mismo Id. de origen de punto en el área que se está procesando, se clasificarán como superposición todos los puntos que compartan el Id. de origen de punto del punto que tenga el ángulo de escaneo de mayor magnitud. Por este motivo, el tamaño de la muestra utilizada para evaluar los puntos LAS debería ser, aproximadamente, entre el doble y el triple del espaciado de puntos nominal de los datos LAS. Evite los tamaños de tesela grandes, debido a que aumenta la posibilidad de clasificar erróneamente los puntos con valores de ángulo de escaneo menores. Puede que las muestras de menor tamaño no capturen los puntos suficientes como para identificar y clasificar debidamente los puntos de superposición.

  • Los puntos de superposición de los archivos LAS de la versión 1.4 y formatos de registro de puntos de entre 6 y 8 reciben el marcador de clasificación de superposición, si bien conservan el valor de su código de clase original. Los puntos de superposición de todos los demás archivos .las admitidos reciben un valor de código de clase de 12. Si el valor de código de clase de 12 se está utilizando en los archivos .las de entrada para representar otras cosas que no sean escaneos de superposición, plantéese utilizar la herramienta Cambiar códigos de clase LAS para reasignar estos puntos a otro valor antes de ejecutar esta herramienta.

Parámetros

EtiquetaExplicaciónTipo de datos
Dataset LAS de entrada

El dataset LAS de teselas que se va a procesar.

LAS Dataset Layer
Distancia de muestra

La distancia de cualquier dimensión del área cuadrada que se utilizará para evaluar los datos LAS. Si se especifica Desconocido como unidad lineal, la unidad se definirá mediante la referencia espacial del archivo .las de entrada.

Linear Unit
Extensión de procesamiento
(Opcional)

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

  • Valor predeterminado: la extensión se basará en la extensión máxima de todas las entradas participantes. Esta es la opción predeterminada.
  • Combinación de entradas: la extensión se basará en la extensión máxima de todas las entradas.
  • Intersección de entradas: la extensión se basará en el área mínima en común de todas las entradas.
  • Extensión de visualización actual: la extensión es igual a la visualización actual. La opción no está disponible cuando no hay ningún mapa activo.
  • Como se especifica en la parte inferior: la extensión se basará en los valores mínimo y máximo de extensión que se especifiquen.
  • Examinar: la extensión se basará en un dataset existente.
Extent
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 .las, incluidos los que queden fuera del área de interés.
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
Actualizar pirámide
(Opcional)

Especifica si la pirámide de dataset LAS se actualizará después de modificar los códigos de clase.

  • Activado: se actualizará la pirámide de dataset LAS. Esta es la opción predeterminada.
  • Desactivado: no se actualizará la pirámide de dataset LAS.
Boolean

Salida derivada

EtiquetaExplicaciónTipo de datos
Dataset LAS de salida

El dataset LAS que se va a modificar.

LAS Dataset Layer

arcpy.ddd.ClassifyLasOverlap(in_las_dataset, sample_distance, {extent}, {process_entire_files}, {compute_stats}, {update_pyramid})
NombreExplicaciónTipo de datos
in_las_dataset

El dataset LAS de teselas que se va a procesar.

LAS Dataset Layer
sample_distance

La distancia de cualquier dimensión del área cuadrada que se utilizará para evaluar los datos LAS. Este valor se puede expresar como un número y un valor de unidad lineal, por ejemplo, 3 metros. Si no se especifican las unidades lineales o se introducen como Unknown, la unidad se definirá mediante la referencia espacial del archivo .las de entrada.

Linear Unit
extent
(Opcional)

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

  • MAXOF: se utilizará la extensión máxima de todas las entradas.
  • MINOF: se utilizará el área mínima en común de todas las entradas.
  • DISPLAY: la extensión es igual a la visualización actual.
  • 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
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 .las, incluidos los que queden fuera del área de interés.
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
update_pyramid
(Opcional)

Especifica si la pirámide de dataset LAS se actualizará después de modificar los códigos de clase.

  • UPDATE_PYRAMIDSe actualizará la pirámide de dataset LAS. Esta es la opción predeterminada.
  • NO_UPDATE_PYRAMIDNo se actualizará la pirámide de dataset LAS.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
out_las_dataset

El dataset LAS que se va a modificar.

LAS Dataset Layer

Muestra de código

Ejemplo 1 de ClassifyLasOverlap (ventana de Python)

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

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

arcpy.ddd.ClassifyLasOverlap('Denver_2.lasd', '1 Meter')
Ejemplo 2 de ClassifyLasOverlap (script independiente)

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

'''****************************************************************************
       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())

Entornos

Casos especiales

Información de licenciamiento

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

Temas relacionados