Tengo una gran nube de puntos (archivo LAS) y estoy tratando de diluir esto usando una técnica compleja. Sé que es posible diluir una nube de puntos utilizando técnicas simples, como extraer cada enésimo punto. Sin embargo, la nube de puntos con la que estoy trabajando es más densa en algunas áreas y menos densa en otras. Me gustaría poder adelgazar la nube para que las áreas más densas se adelgacen más que las áreas menos densas. Para hacer esto manualmente, se podría crear una cuadrícula y seleccionar cierto número de puntos dentro de cada celda. (es decir, uno en cada esquina y uno en el centro) Sin embargo, esta nube de puntos es demasiado grande para esta tarea. Estoy tratando de averiguar si hay soluciones existentes para este problema, como una consulta de selección compleja, otro proceso automatizado o una aplicación de software existente que podría usarse.
8
ThinData
de Fusion. En esta respuesta explico cómo funciona. La respuesta de Howard también parece prometedora. Háganos saber si funcionan para su situación. TksRespuestas:
Parece que quiere un adelgazamiento basado en voxel o quizás uno basado en Poisson. PDAL puede hacer cualquiera de los dos. Consulte el tutorial de PDAL sobre el tema en https://pdal.io/tutorial/sampling/index.html
.
En cuanto al tamaño del archivo, defina "grande". Casi cualquier técnica, excepto la simple reducción de rango (eliminar puntos n-ésimo) va a querer tener acceso a todo el archivo en la memoria. Otras opciones requerirían una técnica de muestreo + índice de dos etapas más sofisticada para evitar ese requisito.
fuente
Puede probar lasthin o lasduplicate de LAStools . Con lasthin puede mantener el punto 'más bajo', 'más alto', 'aleatorio' o más '-central' en una cuadrícula 2D en el plano x / y con el tamaño '-step 0.5' definido por el usuario. Con lasduplicate puede especificar eliminar todos los puntos que están 'cerca de 0.005' en 3D de todos los puntos que aparecieron anteriormente. Vea el archivo README vinculado para más detalles.
fuente
Puede usar el comando de FUSION
ThinData
para esto ( Documentación p.130 ).ThinData
es realmente útil porque le permite reducir los datos de la nube de puntos a una densidad de pulso deseada por unidad cuadrada. De la documentación de FUSION:fuente
Puede usar LiDAR360, descargar la versión de prueba gratuita de 30 días del sitio web de GreenValley International . LiDAR360 ofrece tres métodos para el submuestreo: espaciado mínimo de puntos, frecuencia de muestreo y octree. El método de espaciado de punto mínimo necesita establecer un espaciado de punto mínimo entre dos puntos para que la distancia tridimensional mínima entre cualquiera de los dos puntos en la nube de puntos muestreada no sea menor que este valor. El método de la tasa de muestreo debe establecer el porcentaje de puntos reservados. En este modo, LiDAR360 retendrá aleatoriamente el número especificado de puntos. Puntos reservados = Número total de puntos * Tasa de muestra. El método Octree permite a los usuarios seleccionar un nivel de subdivisión "octree" y crear voxels 3D para la nube de puntos de entrada. Solo se retendrá el punto más cercano a cada centro de vóxel.
fuente