Extracción de escombros leñosos gruesos

8

Creé una nube de puntos muy densos de algunas parcelas forestales usando un escáner láser terrestre. Luego, elimine los puntos por encima de 1.3 metros para ver los restos leñosos gruesos (árboles muertos caídos). Se adjunta el DEM sombreado de la parcela de muestra con restos leñosos gruesos dentro de la elipse roja.

ingrese la descripción de la imagen aquí

La parcela también consta de pequeños árboles, parte de los tallos de los árboles de menos de 1,3 metros, tierra y pequeñas rocas. De la imagen, los restos leñosos se distinguen por su forma continua. Estoy buscando la herramienta para extraer escombros leñosos de esta imagen. Arcmap, Envi o cualquier software de código abierto sería perfecto, y también tengo conocimientos básicos de Python si la codificación es útil.

Sher
fuente
2
¿Está clasificado su LiDAR? Tierra automática / nonground ayudaría aquí. Los algoritmos automáticos deben clasificar sus escombros caídos como edificios (sobre el suelo sin puntos de tierra debajo), puede intentar convertir su clase de construcción (o clase de verduras baja / media) en un TIN con Esri y convertir el TIN en recursos triangulares.arcgis.com /en/help/main/10.1/index.html#//… , elimina triángulos de lados muy largos (se requiere Python), disuelve e ignora los pequeños. Todas estas métricas requerirán experimentación y probablemente algunas verificaciones manuales para eliminar las aberraciones.
Michael Stimson
Gracias @ Michael Stimson. Tengo clasificado el suelo y la vegetación, pero intentaré construir una clasificación para ver si puede detectar escombros leñosos. El método TIN parece más trabajo manual, lo que puede no ser ideal para mi caso, ya que tengo 96 parcelas de 1 hectárea.
Sher
Estañar y diezmar debería reducir la cantidad de áreas a inspeccionar al omitir cualquier cosa que sea demasiado pequeña para ser considerada contigua, pero por experiencia habrá una pequeña cantidad de áreas que parecen ser contiguas pero no lo son. La ojo puede detectar fácilmente la contigüidad. pero no es tan fácil de detectar por algoritmo; el aprendizaje automático puede ser de ayuda, pero no tengo experiencia en este campo para persuadirlo / disuadirlo de este curso de acción. Personalmente, no confiaría únicamente en un proceso de software sin verificar los resultados.
Michael Stimson
1
No estoy seguro si esto se ha hecho antes. Intentaría usar una red completamente convolucional que segmente imágenes como U-net: deeplearning.net/tutorial/unet.html .
Aaron
1
¿Puedes publicar una imagen de ejemplo sin la elipse roja?
BERA

Respuestas:

1

Para agregar a lo que ha dicho Michael, recomendaría calcular la rugosidad de la superficie de su DEM utilizando el índice Rumple o una métrica similar. También puede realizar la estimación de rugosidad en la propia nube de puntos siempre que los puntos del terreno se hayan clasificado.

Es posible que pueda clasificar el tipo de escombros que le interesan basándose solo en los valores de rugosidad, pero también podrá comparar cómo se comparan entre sí la rugosidad del DEM y la nube de puntos. Esto puede ayudarlo a verificar la validez de su DEM, así como la ubicación de sus escombros leñosos gruesos.

Aquí hay un enlace a un paquete que puede calcular el índice de rumple en R: https://rdrr.io/cran/lidR/man/rumple_index.html

Y aquí hay un programa de Python que hace algo similar, aunque estadísticamente diferente: https://github.com/BodoBookhagen/PC_geomorph_roughness

EDITAR:

Para visualizar la rugosidad de su DEM como una capa ráster, use la función gdal gdaldem para crear mapas de rugosidad y rugosidad del terreno.

gdaldem roughness path/to/dem.tif path/to/output.tif [-compute_edges] 

gdaldem TRI path/to/dem.tif path/to/output.tif [-compute_edges] 
Kartograaf
fuente
Gracias @Gory G. Rumple función de índice en R que devuelve solo un índice para toda la trama, esperaba un mapa de cuadrícula del índice de rugosidad. las <- readLAS('a-4.las') chm = grid_canopy(las,0.1,p2r()) roughness = rumple_index(chm)¿Podría decirme cómo cambio un código para hacer un mapa de índice de rugosidad?
Sher
1
@Sher Para hacer el mapa de rugosidad es posible que desee utilizar GDAL. Hay una función llamada "gdaldem" que lo hará por usted en una línea de código. También puede hacer un ráster de índice de rugosidad del terreno (TRI) utilizando su DEM como entrada. Agregaré el código a mi respuesta anterior.
Kartograaf