Estou tentando recortar ou filtrar arquivos lidar (.las, .xyz) usando um shapefile que contém vários polígonos.
Existe software de código aberto que pode fazer essa operação espacial?
Meus arquivos .las são enormes e devo dizer que sou muito novo nos dados e análises do DEM, portanto qualquer ajuda seria muito bem-vinda.
Respostas:
Segundo a resposta de @Michal Mackiewicz (sobre o Fusion / LTK), espero que este exemplo ajude você a passar por isso.
Este é o
PolyCLipData
comando de sintaxe (consulte a página do manual 110):Use um editor de texto para escrever o comando antes de executá-lo (como o NotePad ++). Salve o arquivo com extensão
.bat
(arquivo em lotes). Não esqueça de salvar o arquivo antes de executá-lo.Suponha que você tenha:
escreva o seguinte:
use a opção
multifile
se desejar que os arquivos las gerados a partir de polígonos sejam armazenados em arquivos separados. Por exemplo:use a
shape
opção junto commultifile
para nomear seus múltiplos OutputFiles com valores incorporados em uma das colunas dbf do PolyFile. Por exemplo, se você deseja nomear os arquivos com as informações de ID (suponha que o ID esteja na primeira coluna do shapefile). Escreva:Para recortar arquivos usando
PolyClipData
vários shapefiles de peça única, consulte a seguinte publicação:Recorte de dados do LAS com vários shapefiles
Para recortar vários arquivos las, incorporando-os a um arquivo .txt como parâmetro do arquivo de dados
PolyClipData
, consulte a seguinte postagem:Recorte dados de vários arquivos .las em um shapefile de polígono usando FUSION
Para recortar vários arquivos las com shapefiles usando lastools (com a
LAStools Production
caixa de ferramentas), consulte a seguinte postagem:Recorte de um conjunto de dados LAS lado a lado com LASTools (para ArcGIS)
fonte
O FUSION LiDAR Toolkit possui recursos de recorte (ferramenta PolyClipData) e, diferentemente do LASTools, seu uso é irrestrito. No entanto, apesar de existir algum repositório SVN no SourceForge, o código fonte publicado é incompleto e muito antigo. Se você pode continuar sem conhecer o código e apenas usar o binário compilado, então FUSION deve ser bom para esta tarefa.
fonte
O WhiteboxTools pode recortar um arquivo LAS para vários polígonos contidos em um Shapefile usando a
ClipLidarToPolygon
ferramenta Usando scripts Python, você pode usar a ferramenta da seguinte maneira:Ou, se você preferir uma GUI, poderá usar o plug - in baseado no QGIS ou o WhiteboxTools Runner, que é distribuído ( wb_runner.py ) com o download binário da biblioteca:
fonte
Várias tarefas de filtragem diferentes são comumente aplicadas aos conjuntos de dados LiDAR (filtragem por densidade de pontos, passa-baixo, filtragem de vegetação, tarefas de suavização e assim por diante). Como você está solicitando uma operação espacial (envolvendo um shapefile), suponho que você procure uma maneira de recortar seu conjunto de dados , ou seja, exclua pontos que estão fora dos limites do polígono definidos por um shapefile .
Geralmente, o LAStools é um pacote poderoso para processamento de dados pontuais. É um conjunto de ferramentas de linha de comando, mas também traz uma GUI simples e se integra ao QGIS (e ArcGIS, a propósito). Você pode baixar e avaliar livremente a caixa de ferramentas - no entanto, apenas partes dela são de código aberto (licença LGPL 2.1) - as partes de código fechado requerem licenciamento, dependendo do seu objetivo. Você deve verificar quais condições se aplicam a você.
Use o lasclip do LASTools (código fechado, verifique o licenciamento)
Uma das ferramentas de código fechado, o lasclip , executa exatamente uma tarefa de clip-by-shapefile :
O uso é direto:
(consulte o LEIA-ME do lasclip para obter mais detalhes sobre o uso, mais exemplos e requisitos de arquivo de forma)
Use las2las da LASTools (código aberto; somente tarefas básicas de recorte)
Se o software de código fechado não for uma opção: a ferramenta las2las também pode executar tarefas simples de recorte - no entanto, você não pode recortar em um polígono definido por shapefile. Você pode recortar por retângulos, círculos, elevação, ângulo de varredura, classificação ou qualidade dos dados, por exemplo. (Veja o README para obter exemplos e detalhes de uso.)
Infelizmente, não conheço nenhuma ferramenta de código aberto que seja igual à funcionalidade do clipe de lasca.
Use libLAS para acessar arquivos LAS em um script criado automaticamente
O LASTools é baseado na biblioteca libLAS de código aberto e licenciada em BSD . Você pode usar o libLAS para acessar seus arquivos LAS e filtrá-los com um script personalizado, por exemplo, usando Python .
É claro que existem outras possibilidades se você alterar o fluxo de processamento (por exemplo, converter o LAS em raster e recortar posteriormente), mas acho que a maneira mais conveniente é continuar trabalhando com o LAS o maior tempo possível e realizar toda a filtragem com os dados da nuvem de pontos em si.
fonte
Eu escrevi um tutorial PDAL passo a passo que demonstra como fazer essa tarefa nesse ambiente. Consulte o tutorial de recorte PDAL para obter mais informações.
fonte