QGis para LIDAR: colorir a partir de uma imagem com LAStools

Na figura, você pode ver a mensagem devido à falta de licença. Acima de 3 milhões de pontos, haverá pequenas distorções e alguns atributos a menos.

O resultado final das quatro novas nuvens de pontos pode agora ser carregado na janela do QGis:

Neste artigo, você descobrirá como transferir as cores (colorir) de uma imagem ou ortofoto para os pontos de uma nuvem LIDAR usando a caixa de ferramentas LAStools no QGis, que renderiza o LIDAR como uma fotografia. Daremos uma olhada em como criar arquivos .bat usando o LAStools para processar um conjunto de arquivos.

1- Dados LIDAR no QGis 3.32

2- Descarregar os dados do IGN HD LIDAR e carregá-los no QGis

3- Ferramentas para dados LIDAR no QGis 3.32

4-colorir a partir de uma imagem

5-colorir a partir de uma imagem com LAStools

Veja este vídeo e muitos outros no nosso canal do Youtube: https://www.youtube.com/@sigterritoires

Tratamentos LAStools

A caixa de ferramentas do LASTOOLS consiste em três tipos de ferramentas:

Bloco de ferramentas lastools para Qgis

  1. file – As ferramentas básicas que usam um arquivo como entrada de processamento.
  2. folder – Ferramentas semelhantes, mas que usam um diretório como entrada de processamento. Todos os arquivos LAS ou LAZ nesse diretório são processados. O nome do processamento termina com Pro.
  3. pipelines – ferramentas que encadeiam automaticamente uma série de ferramentas anteriores.

No grupo de folder, você encontrará apenas alguns dos processos presentes no grupo de files. Mas você pode, com um pouco de trabalho, criar um arquivo .bat para executar um comando de arquivo em um diretório inteiro. Aqui, veremos o procedimento com a ferramenta LAScolor, que está presente apenas no grupo de arquivos.

LAScolor: colorindo uma nuvem de pontos

Tomaremos como exemplo um grupo de quatro nuvens de pontos IGN HD LIDAR não classificadas e a imagem BDOrtho correspondente

nuvens lidar e ortofoto como entrada para lascolor no qgis

O LAStools pode ser executado na linha de comando, fora do QGis. Em vez de procurar a sintaxe necessária para a linha de comando, podemos executar a ferramenta no QGis e recuperar a linha de comando gerada pelo plug-in do registro de execução. Com algumas modificações, teremos o arquivo .bat que desejamos.

Executando a ferramenta por meio do plug-in QGis

Executamos a ferramenta LAScolor na caixa de ferramentas LAStools do QGis:

Caixa de ferramentas lastools no qgis 3.32

Para a ferramenta, selecionamos uma das nuvens de pontos, a ortofoto, e damos a ela qualquer nome como saída. Não manteremos o resultado do processamento, pois o faremos com o arquivo .bat para todas as nuvens no diretório.

diálogo do lascolor

O LAStools é fornecido em duas versões: 32 bits e 64 bits. Por padrão, as caixas de diálogo usam a versão de 32 bits da ferramenta. O problema é que essas versões estão limitadas a gerenciar 4 GB de memória e, dado o número de pontos presentes nas nuvens LIDAR, esse limite é frequentemente excedido. Para evitar mensagens de erro de alocação de memória, é melhor marcar sempre a caixa da versão de 64 bits.

Quando você clica em Executar, a janela exibe a guia Registro:

Registro de processamento do lascolor

Após “Linha de comando do LAStools”, você encontrará a linha de comando que estamos procurando.

C:/lidar/cantal/LAStoolsbinascolor -cpu64 -i "C:\lidar/colouriseinput/semis1.laz" -image "C:\lidar/colouriseortho.tif" -o "C:/lidar/colouriseoutput/semis1.laz"

Neste exemplo:

C:/lidar/cantal/LAStools\bin\lascolor é o executável da ferramenta

-cpu64 corresponde à solicitação para executar a versão de 64 bits da ferramenta

-i “C:\lidar\coloriser\input\semis1.laz” é a nuvem de entrada

-image “C:\lidar\coloriser\ortho.tif” é a imagem a ser usada para colorir a nuvem de pontos

-o “C:/lidar/colorise/output/semis1.laz” é a nuvem colorida resultante

Abrimos um arquivo de texto vazio no Edit para criar nosso pequeno programa em lote.

A primeira linha desse arquivo será a linha que cria o loop de processamento para todos os arquivos em um diretório.

Essa linha será

for /r diretório %%i in (extensão) do (

Em linguagem simples, o conteúdo da variável %%i será o nome completo (incluindo o caminho) de cada arquivo com uma determinada extensão em um determinado diretório.

Em nosso exemplo, essa linha será

for /r "C:\lidar\colorise\input" %%i in (*.laz) do (

Se suas nuvens de pontos estiverem no formato LAS, será necessário alterar *.laz para *.las

A segunda linha é o comando que executa o LAScolor, onde modificamos a entrada e a saída.

No arquivo de entrada do comando, substituímos -i “C:\lidar\coloriser\inputsemis1.laz” pela variável do loop for: -i %%i

Para o arquivo de saída, precisamos usar uma variável desconhecida. Não podemos usar a variável %%i como está porque ela contém o caminho do arquivo de entrada e queremos criar o arquivo de saída em outro diretório. Portanto, precisamos recuperar o nome do arquivo de entrada sem o caminho. Para fazer isso, usamos a variável %%~ni. A ~n recupera o nome de %%i sem o caminho ou a extensão.

Portanto, nossa saída será

-o C:/lidar/coloriser/output/%%~ni.laz

Precisamos adicionar o caminho do diretório de saída e a extensão desejada à variável.

O resultado final do nosso arquivo .bat será, então, o seguinte:

for /r "C:\lidar\coloriser\input" %%i in (*.laz) do (
C:/lidar/cantal/LAStools\bin\lascolor -cpu64 
-i %%i 
-image "C:\lidar\coloriser\ortho.tif" 
-o C:/lidar/coloriser/output/%%~ni.laz
)

Para executá-lo, abra uma janela de terminal (janela de comando), vá para o diretório do arquivo bat que você acabou de criar e digite .\nom_du_fichier.bat (1)

Você verá suas nuvens de pontos sendo processadas (2):

janela de comando e execução do arquivo .bat

Na figura, você pode ver a mensagem devido à falta de licença. Acima de 3 milhões de pontos, haverá pequenas distorções e alguns atributos a menos.

O resultado final das quatro novas nuvens de pontos pode agora ser carregado na janela do QGis:

resultado da coloração das nuvens lidar

Si cet article vous a intéressé et que vous pensez qu'il pourrait bénéficier à d'autres personnes, n'hésitez pas à le partager sur vos réseaux sociaux en utilisant les boutons ci-dessous. Votre partage est apprécié !

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *