Detectar objetos de nube de puntos con modelo entrenado (3D Analyst)

Resumen

Detecta los objetos capturados en una nube de puntos mediante un modelo de aprendizaje profundo.

Ilustración

Ilustración de la herramienta Detectar objetos de nube de puntos con modelo entrenado

Uso

  • Esta herramienta requiere la instalación de conceptos básicos de aprendizaje profundo, que proporcionan varias soluciones de redes neuronales que incluyen arquitecturas neuronales para clasificar nubes de puntos.

    Para configurar su equipo para usar marcos de aprendizaje profundo en ArcGIS Pro, consulte Instalar marcos de aprendizaje profundo para ArcGIS.

  • Los modelos de detección de objetos no requieren que se clasifique la nube de puntos de entrada. Sin embargo, la nube de puntos que se evaluará debe tener características similares a los datos de la nube de puntos utilizados para entrenar el modelo. Por ejemplo, un modelo de detección de objetos entrenado en una nube de puntos terrestres para clasificar automóviles sería adecuado para otra nube de puntos terrestres, pero puede que no funcione bien en una nube de puntos recopilados a partir de un estudio LIDAR aéreo.

  • El modelo identifica una variedad de objetos, algunos de los cuales pueden superponerse. Para refinar estas detecciones, se utilizan dos umbrales clave: el umbral de puntuación de confianza y el umbral de superposición. La puntuación de confianza es un valor numérico entre 0,0 y 1,0 que indica la probabilidad de que un objeto se identifique correctamente. Una puntuación más alta implica una mayor certeza, y se puede establecer un umbral para filtrar las detecciones por debajo de un cierto nivel de confianza.

    En los casos en los que varios objetos similares tienen cuadros delimitadores superpuestos, el umbral de superposición se vuelve aún más importante. Esta medida utiliza la relación Intersección sobre combinación (IoU), que se calcula dividiendo el volumen de la intersección por el volumen de la combinación para los cuadros delimitadores superpuestos. Para los objetos cuya IoU supera el umbral de superposición, solo se conserva el que tiene la puntuación de confianza más alta. El algoritmo de supresión no máxima (NMS) se utiliza para garantizar que solo las detecciones más relevantes formen parte del resultado final.

  • El parámetro Superficie de referencia es necesario cuando el modelo de entrada se entrenó con atributos de altura relativa. La superficie ráster se utiliza como altura de referencia a partir de la cual se interpolan las alturas relativas para cada punto. Esto proporciona información adicional para el modelo que se puede utilizar para diferenciar objetos más fácilmente. La superficie ráster proporcionada para este parámetro debe representar el mismo tipo de datos que el ráster que se utilizó en los datos de entrenamiento que crearon el modelo. En la mayoría de los casos, será un ráster creado a partir de puntos clasificados de suelo. Se puede generar una superficie ráster a partir de los puntos clasificados de suelo en el dataset LAS aplicando un filtro de suelo y utilizando la herramienta De dataset LAS a ráster. También es posible generar una superficie de suelo a partir de una capa de escena de nube de puntos con la herramienta De nube de puntos a ráster. Las superficies ráster que no proceden de la nube de puntos de entrada también se pueden utilizar, pero debe asegurarse de que los valores z del ráster correspondan correctamente con los valores z de la nube de puntos.

  • Cuando el modelo de entrada ha sido entrenado con ciertas clases que se excluyeron de los datos de entrenamiento, utilice el parámetro Códigos de clase excluidos para asegurarse de omitir esos puntos del conjunto de puntos evaluados por este modelo. Excluir clases que no proporcionen un contexto útil para los objetivos de un modelo determinado reducirá la cantidad de puntos evaluados, lo que mejorará la velocidad de entrenamiento y aplicación del modelo. Por ejemplo, los puntos que representan edificios normalmente no tendrán relevancia para los puntos que representan objetos como semáforos, líneas eléctricas o automóviles. Los puntos de edificios también se pueden clasificar de forma fiable con la herramienta Clasificar edificio de LAS. Si los puntos con clase 6, que representan edificios, se excluyeron en los datos de entrenamiento que se utilizaron para crear el modelo, la nube de puntos de entrada también debe clasificar los puntos de construcción y excluirlos en esta herramienta.

Parámetros

EtiquetaExplicaciónTipo de datos
Nube de puntos de entrada

La nube de puntos que se utilizará para detectar objetos.

LAS Dataset Layer
Definición de modelo de entrada

El modelo de detección de objetos que se utilizará. Se puede especificar un archivo de definición de modelo de Esri (.emd), un paquete de aprendizaje profundo (.dlpk) o un modelo de detección de objetos publicado desde ArcGIS Online o Portal for ArcGIS.

File; String
Objetos objetivo

Los objetos que se identificarán en la nube de puntos de entrada, junto con los valores de umbral de confianza y superposición que se utilizarán para aceptar los objetos detectados.

  • Código de objeto: los códigos que representan los objetos para cuya identificación se entrenó el modelo.
  • Confianza: el umbral de confianza para el reconocimiento de objetos opera en una escala de 0,0 a 1,0. Un valor más alto significa que menos objetos cumplirán los criterios para ser identificados positivamente. Establecer el umbral en 1,0 requiere un 100% de certeza en la detección del objeto, lo que hace que sea improbable que se reconozca cualquier objeto. Si desea excluir un objeto en particular de la salida, establezca su umbral de confianza en 1,0.
  • Superposición: el umbral de superposición proporciona una forma de seleccionar el objeto que se conservará cuando se hayan identificado varios objetos superpuestos. El umbral de superposición describe la relación entre la intersección y la combinación de cuadros delimitadores superpuestos. Cuando varios objetos se superponen y superan el umbral de superposición, se retendrá el objeto con mayor confianza.

Value Table
Entidades del objeto de salida

Las entidades multiparche de salida que contendrán los cuadros delimitadores que rodean los objetos detectados desde la nube de puntos de entrada.

Feature Class
Tamaño de lote
(Opcional)

La cantidad de bloques de la nube de puntos de entrada que se procesarán simultáneamente. Cuando no se proporcione ningún valor, se procesará un bloque a la vez.

Long
Límite de procesamiento

Una entidad poligonal que definirá el área de interés que se va a procesar.

Feature Layer
Superficie de referencia

La superficie ráster que se utilizará para calcular las alturas relativas de cada punto. Este parámetro es necesario cuando el modelo de entrada contiene el atributo de altura relativa, que indica que se entrenó utilizando una superficie ráster de altura de referencia.

Raster Layer
Clases excluidas

Los códigos de clase de la nube de puntos de entrada que se excluirán de los puntos que se procesan para detectar objetos. Si el modelo se entrenó omitiendo puntos de ciertos códigos de clase, los puntos de la nube de puntos de entrada deben tener la misma clase de objetos identificados y excluidos para obtener los mejores resultados.

Long

arcpy.ddd.DetectObjectsFromPointCloudUsingTrainedModel(in_point_cloud, in_trained_model, target_objects, out_features, {batch_size}, boundary, reference_height, excluded_class_codes)
NombreExplicaciónTipo de datos
in_point_cloud

La nube de puntos que se utilizará para detectar objetos.

LAS Dataset Layer
in_trained_model

El modelo de detección de objetos que se utilizará. Se puede especificar un archivo de definición de modelo de Esri (.emd), un paquete de aprendizaje profundo (.dlpk) o un modelo de detección de objetos publicado desde ArcGIS Online o Portal for ArcGIS.

File; String
target_objects
[target_objects,...]

Los objetos que se identificarán en la nube de puntos de entrada, junto con los valores de umbral de confianza y superposición que se utilizarán para aceptar los objetos detectados.

  • Código de objeto: los códigos que representan los objetos para cuya identificación se entrenó el modelo.
  • Confianza: el umbral de confianza para el reconocimiento de objetos opera en una escala de 0,0 a 1,0. Un valor más alto significa que menos objetos cumplirán los criterios para ser identificados positivamente. Establecer el umbral en 1,0 requiere un 100% de certeza en la detección del objeto, lo que hace que sea improbable que se reconozca cualquier objeto. Si desea excluir un objeto en particular de la salida, establezca su umbral de confianza en 1,0.
  • Superposición: el umbral de superposición proporciona una forma de seleccionar el objeto que se conservará cuando se hayan identificado varios objetos superpuestos. El umbral de superposición describe la relación entre la intersección y la combinación de cuadros delimitadores superpuestos. Cuando varios objetos se superponen y superan el umbral de superposición, se retendrá el objeto con mayor confianza.

Value Table
out_features

Las entidades multiparche de salida que contendrán los cuadros delimitadores que rodean los objetos detectados desde la nube de puntos de entrada.

Feature Class
batch_size
(Opcional)

La cantidad de bloques de la nube de puntos de entrada que se procesarán simultáneamente. Cuando no se proporcione ningún valor, se procesará un bloque a la vez.

Long
boundary

Una entidad poligonal que definirá el área de interés que se va a procesar.

Feature Layer
reference_height

La superficie ráster que se utilizará para calcular las alturas relativas de cada punto. Este parámetro es necesario cuando el modelo de entrada contiene el atributo de altura relativa, que indica que se entrenó utilizando una superficie ráster de altura de referencia.

Raster Layer
excluded_class_codes
[excluded_class_codes,...]

Los códigos de clase de la nube de puntos de entrada que se excluirán de los puntos que se procesan para detectar objetos. Si el modelo se entrenó omitiendo puntos de ciertos códigos de clase, los puntos de la nube de puntos de entrada deben tener la misma clase de objetos identificados y excluidos para obtener los mejores resultados.

Long

Muestra de código

Ejemplo de DetectObjectsFromPointCloudUsingTrainedModel (ventana de Python)

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

import arcpy
arcpy.env.workspace = 'C:/data/detect_cars'
arcpy.ddd.DetectObjectsFromPointCloudUsingTrainedModel('2018_survey.lasd', 'cars.emd',
                                                       [(1, 0.7, 0.4)], 'Cars_in_Point_Cloud.shp',
                                                       10, 'study_area_boundary.shp',
                                                       'dem.tif', [2, 6, 7, 18])

Información de licenciamiento

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