Diluindo grande nuvem de pontos LiDAR?

8

Eu tenho uma nuvem de pontos grande (arquivo LAS) e estou tentando diminuir isso usando uma técnica complexa. Eu sei que é possível afinar uma nuvem de pontos usando técnicas simples, como extrair todos os enésimos pontos. No entanto, a nuvem de pontos com que estou trabalhando é mais densa em algumas áreas e menos densa em outras. Eu gostaria de poder afinar a nuvem para que as áreas mais densas sejam mais finas do que as menos densas. Para fazer isso manualmente, é possível criar uma grade e selecionar certo número de pontos dentro de cada célula. (isto é, um em cada canto e outro no centro). No entanto, essa nuvem de pontos é muito grande para esta tarefa. Estou tentando descobrir se há alguma solução existente para esse problema, como uma consulta de seleção complexa, outro processo automatizado ou aplicativo de software existente que possa ser usado.

Bodkinz
fonte
+1. Uma opção para tentar é a linha de comando ThinDatado Fusion. Em esta resposta eu explicar como ele funciona. A resposta de Howard parece promissora também. Deixe-nos saber se eles funcionam para a sua situação. Tks.
Andre Silva
O uso de uma ferramenta como o MeshLab http://meshlab.sourceforge.net/ permitiria comparar facilmente as sugestões de Andre Silva. Parece que seu conjunto de dados é pequeno o suficiente para ser interativo nesse contexto.
Orbatos
Encontrei essa pergunta nas perguntas da rede quente, junte-se aqui apenas para postar este comentário. Não saber nada sobre o conjunto de dados ou campo, isso ainda parece estar implorando por técnicas de redução de dimensão 'PCA' (análise de componentes principais). Talvez algumas soluções usem isso?
Lamar Latrell

Respostas:

13

Parece que você quer um desbaste à base de voxel ou talvez um à base de Poisson. PDAL pode fazer qualquer um. Consulte o tutorial da PDAL sobre o tópico em https://pdal.io/tutorial/sampling/index.html

Amostragem PDAL.

Quanto ao tamanho do arquivo, defina "grande". Praticamente qualquer técnica, exceto a dizimação simples de classificação (remover pontos n-ésimo), vai querer ter acesso a todo o arquivo na memória. Outras opções exigiriam uma técnica mais sofisticada de índice + amostragem em dois estágios para evitar esse requisito.

Howard Butler
fonte
Obrigado, isso parece muito útil, eu não me deparei com isso e vou dar uma olhada agora. Quanto ao tamanho, estou vendo cerca de 3 milhões de pontos.
Bodkinz
3 milhões de pontos == fim pequeno dos conjuntos de dados LiDAR. Grande o suficiente para começar a causar problemas com a memória e isso pode ser de cerca de 100 milhões.
Howard Butler
É bom saber que sou relativamente inexperiente com o LiDAR, mas tenho a sensação de que o PDAL é exatamente o que eu estava procurando. Anteriormente, eu procurava respostas no mapeador global, GRASS, SAGA e laspy etc ...
Bodkinz
Os pipelines PDAL facilitam o controle de seus parâmetros de processamento e a reprodução ou processamento em lote de seu trabalho.
Charlie Parr
6

Você pode tentar lasthin ou lasduplicate do LAStools . Com lasthin, você pode manter o ponto '-lowest', '-highest', '-random' ou '-central' em uma grade 2D no plano x / y com o tamanho de '-step 0,5' definido pelo usuário. Com lasduplicate, você pode especificar para remover todos os pontos que estão próximos de 0,005 em 3D de todos os pontos que apareceram anteriormente. Consulte o arquivo README vinculado para obter mais detalhes.

LAStools
fonte
1
A propósito, por que você tem duas contas ? Você provavelmente deve mesclá-los .
Andre Silva
Eu achei essas ferramentas úteis, mas nenhuma delas ajudaria a realizar o desbaste que retém mais pontos nos quais os dados são mais densos, conforme a OP busca.
Home
2

Você pode usar o comando do FUSIONThinData para isso ( Documentação p.130 ). ThinDataé realmente útil porque permite que você reduza os dados da nuvem de pontos até uma densidade de pulso desejada por unidade quadrada. Da documentação da FUSION:

ThinData [switches] OutputFile Density CellSize DataFile

O ThinData permite que você reduza os dados do LIDAR para densidades de pulso específicas. Esse recurso é útil ao comparar os resultados da análise de várias aquisições do LIDAR que foram coletadas usando diferentes densidades de pulso. ThinData também é útil quando a densidade em um único conjunto de dados LIDAR não é uniforme. Esse é geralmente o caso dos dados coletados de um helicóptero de vôo lento ou quando a sobreposição da linha de vôo não foi monitorada de perto. O ThinData também foi usado em experimentos de simulação para avaliar o efeito da densidade de pulso do LIDAR na precisão das métricas estimadas do inventário florestal, como a altura total da árvore.

Aaron
fonte
1

Você pode usar o LiDAR360, baixar a versão de avaliação gratuita de 30 dias do site da GreenValley International . O LiDAR360 oferece três métodos para subamostragem: espaçamento mínimo de pontos, taxa de amostragem e octree. O método de espaçamento mínimo de pontos precisa definir um espaçamento mínimo de pontos entre dois pontos, para que a distância tridimensional mínima entre dois pontos na nuvem de pontos amostrada não seja menor que esse valor. O método da taxa de amostragem precisa definir a porcentagem de pontos reservados. Nesse modo, o LiDAR360 reterá aleatoriamente o número especificado de pontos. Pontos reservados = Número total de pontos * Taxa de amostragem. O método Octree permite aos usuários selecionar um nível de subdivisão "octree" e criar voxels 3D para a nuvem de pontos de entrada. Somente o ponto mais próximo de cada centro de voxel será retido.

chenlinhai
fonte