Nuestros mejores investigadores han agotado sus reservas de café, en su búsqueda diariamente por la resolución, hasta que Estrella halló el arreglo en GitHub por lo tanto hoy la compartimos contigo.
Solución:
Parece tener valores atípicos:
- i) debajo de la superficie del suelo;
- ii) sobre la superficie del suelo y verticalmente entre otras características reales sobre el suelo;
- iii) puntos sobre el suelo con una altura mayor que todos los objetos de interés, por ejemplo, los causados por nubes o pájaros (esto no se muestra en la imagen, pero supongo que también podría ser el caso).
Para ‘i’, la opción es utilizar un algoritmo de filtro de suelo que pueda tener en cuenta los ‘errores negativos’ para obtener una nube de puntos de suelo LiDAR limpia. Consulte el algoritmo de clasificación de curvatura multiescala (MCC) de Evans y Hudak (2007). Se dice en la página 4:
Los errores negativos son una ocurrencia común en los datos LiDAR, que pueden ser causados por la dispersión de los fotones en un pulso láser devuelto. La dispersión alarga el tiempo para que un pulso láser emitido regrese al sensor de la aeronave, inflando el cálculo de la distancia recorrida, lo que provoca un error de medición donde la elevación de la superficie se registra erróneamente por debajo de las mediciones circundantes. Cabe señalar que los enfoques de clasificación de curvatura pueden eliminar potencialmente los retornos válidos que rodean los errores negativos, que pueden expandir el artefacto de borde alrededor de un error negativo para crear un efecto distintivo de “cráter de bomba”. Para abordar los errores negativos, Haugerud y Harding sugirieron establecer el parámetro de tolerancia de curvatura en cuatro veces el tamaño de celda interpolado y seleccionar retornos que excedan este umbral de curvatura negativa. Sin embargo, debe tenerse en cuenta que, en determinadas circunstancias, las devoluciones que parecen ser pifias negativas pueden ser de hecho devoluciones válidas (por ejemplo, sumideros). Por lo tanto, la sugerencia anterior para eliminar posibles errores negativos se puede implementar como un último bucle de modelo opcional para emplear a discreción del usuario si es necesario.
A continuación hay una publicación con un ejemplo sobre el uso de MCC-LIDAR:
- ¿Determinando DEM de tierra desnuda a partir de un archivo LAS sin clasificar?
Una vez que tenga una nube de puntos terrestres LiDAR precisa para hacer un DEM preciso, es posible normalizar la nube de puntos y excluir los puntos que están debajo de la superficie del DEM (los que tienen valores negativos). Usando el mismo enfoque, también es posible abordar el punto número ‘iii’ eliminando puntos por encima de un umbral fijo. Ver, por ejemplo:
- ¿Eliminar puntos anómalos en * .lasd usando ArcGIS for Desktop?
Luego, nos deja con ‘ii’, que se aborda en la respuesta de AlecZ recomendando lasnoise
de LAStools. También manejará ‘iii’, y quizás también parte de ‘i’ (LAStools requiere una licencia). Aquí se citaron otras herramientas creadas específicamente para verificar / eliminar valores atípicos: PDAL filters.outlier
herramienta en la respuesta de Charlie Parr, que tiene una explicación detallada sobre cómo funciona la herramienta, y con la ventaja de que PDAL es un software gratuito.
Luego, lo que queda del proceso automatizado (si hay algún valor atípico) se puede eliminar manualmente. Por ejemplo:
- (LAStools; ArcGIS Pro) ¿Limpiar los puntos LiDAR que el algoritmo de clasificación falla?
- (QT Modeler) -> respuesta de auslander).
Evans, Jeffrey S .; Hudak, Andrew T. 2007. Un algoritmo de curvatura multiescala para clasificar LiDAR de retorno discreto en entornos boscosos. Transacciones IEEE sobre geociencia y teledetección. 45 (4): 1029-1038.
Recomendaré PDAL, la biblioteca de abstracción de datos puntuales. He tenido mucho éxito usando PDAL para un problema de filtrado similar. Me gusta PDAL porque es de código abierto, proporciona compatibilidad con Python y me facilita la reproducción del procesamiento y el seguimiento de mis parámetros de filtrado. También me gusta porque tiene ‘pipelines’ donde puedes encadenar varios pasos (por ejemplo, recortar, luego filtrar y luego exportar) y ejecutarlos a la vez. Tenga en cuenta que si tiene nubes de puntos realmente grandes, PDAL podría no ser tan rápido como otras soluciones (LASTools, QTM, etc.).
Puede abordar el problema de los puntos periféricos con una tubería PDAL similar a la siguiente:
"pipeline": [
"input_utm.las",
"type":"filters.crop",
"bounds":"([401900,415650],[7609100,7620200])"
,
"type":"filters.outlier",
"method":"statistical",
"mean_k":12,
"multiplier":2.0
,
"type":"filters.range",
"limits":"Classification![7:7]"
,
"filename":"output.tif",
"resolution":1.0,
"output_type":"mean",
"radius":3.0,
"bounds":"([401900,415650],[7609100,7620200])",
"type": "writers.gdal"
]
Esta canalización lee en un LAS, lo recorta a una extensión UTM especificada, luego realiza un filtro que marca todos los puntos periféricos, luego realiza un segundo filtro que retiene solo los puntos no periféricos (es decir, la marca de clasificación! = 7), luego exporta a un GeoTIFF de 1 m de resolución. El filtro estadístico está realizando un cálculo de la distancia media del vecino más cercano para probar si un punto está “demasiado lejos” de sus vecinos y, por lo tanto, es un valor atípico.
De la documentación:
Recuerda algo, que tienes la capacidad de comentar .