Etiqueta | Explicación | Tipo 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.
| 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 |
Resumen
Detecta los objetos capturados en una nube de puntos mediante un modelo de aprendizaje profundo.
Ilustración
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 AllSource, 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
arcpy.ddd.DetectObjectsFromPointCloudUsingTrainedModel(in_point_cloud, in_trained_model, target_objects, out_features, {batch_size}, boundary, reference_height, excluded_class_codes)
Nombre | Explicación | Tipo 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.
| 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
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])