quarta-feira, 1 de julho de 2009

Como empilhar diferentes bandas (“layer stack”) de uma mesma imagem orbital para compor uma imagem RGB?

Durante o processamento de dados derivados do imageamento orbital é possível que algumas pessoas tenham interesse em unir em um único arquivo, diferentes bandas ou canais espectrais de uma mesma cena.

Como por exemplo, quando se recebe os dados dos satélites CBERS e Landsat provenientes do Catálogo de Imagens da Divisão de Geração de Imagens – DGI do INPE. É comum o usuário receber os arquivos separados, sendo que para fazer a manipulação destes dados em um Sistema de Informações Geográficas é mais usual trabalhar com apenas um arquivo.

Este processo pode ser executado em diferentes softwares de processamento de imagem e certamente existe uma receita específica para cada um.

Com objetivo de descrever algumas funcionalidades da GDAL, que pretendo seguir fazendo neste blog, vou demonstrar como executar o processo “layer stacking” utilizando o gdal_merge.py.

O comando básico para este processo é:

python gdal_merge.py –o nome_saida.tif –of GTiff –co “TFW=YES” –separate b5.tif b4.tif b3.tif

onde:

python = comando para executar o interpretador que deve estar previamente instalado e devidamente configurado no seu computador.

gdal_merge.py = script desenvolvido na linguagem python, e que acompanha as instalações padrão da GDAL.

-o nome_saida.tif = parâmetro utilizado para definir o nome da imagem de saída.

-of GTiff = parâmetros utilizado para definir o formato da imagem de saída, neste caso um GeoTif. Outros formatos podem ser listados com o comando gdalinfo –-formats.

-co “TFW=YES” = parâmetro utilizado para que seja criado simultaneamente o TFW da imagem de saída.

-separate = parâmetro utilizado para empilhar as imagens de entrada no mesmo arquivo de saída.

b5.tif b4.tif b3.tif = são os nomes dos arquivos de entrada.