sexta-feira, 18 de junho de 2010

Como gerar um contorno sobre um raster no ArcMap

A aplicação dessa dica contempla a criação de um contorno sobre grandes mosaicos de imagens de satélite.  Conforme aumenta a precisão desses produtos, o tamanho dos arquivos finais também aumenta. Vetorizar uma única imagem de satélite com pixels de valores de 0 a 255 é um verdadeiro pesadelo. Por isso perguntei a minha amiga Karen se ela conhecia alguma forma de transformar um raster com várias cores em apenas 0 e 255 (ou qualquer cor sólida). Ela me mostrou que é possível realizar essa tarefa no ArcMap através da classificação.

Normalmente uma imagem de satélite possui três bandas: Red, Green e Blue. Para classificar uma imagem no ArcMap com o propósito de reduzi-la a duas cores, recomendo trabalhar no modo tons de cinza, ou seja, extrair qualquer uma das bandas RGB e carregá-la no ArcMap. Qualquer software GIS hoje em dia é capaz de extrair uma das bandas e salvá-la como arquivo Geotiff ou ERDAS IMG. Nos testes que realizei, a vetorização sobre a banda vermelha classificada apresentou o melhor resultado durante a etapa de vetorização.

Vamos ao post. Carregue seu mosaico de imagens em tons de cinza no ArcMap:


Com o botão direito sobre a imagem, acesse suas propriedades. Vamos utilizar a classificação. Faça os ajustes de acordo com a imagem abaixo:
 
 
Repare que duas faixas de cores são exibidas no campo Symbol. Existe mais um campo que precisamos modificar. No campo Classification, clique no botão Classify para acessar uma segunda janela. Nessa janela existe um campo que controla com precisão o intervalo de cinza dos pixels. Quanto maior o valor da cor, mais pixels serão selecionados na vetorização. O valor a ser inserido nesse campo deve ser baixo. 

Analise o campo Symbol na janela anterior. Para a imagem de exemplo, foram especificados automaticamente dois intervalos: 0 a 55 e 55,0001 a 255. Vamos reduzir esse intervalo de acordo com a imagem. Os melhores intervalos que testei foram 9, 5 e 3. Para essa imagem, vou atribuir o valor 9. 
 
Clique no botão Classify novamente. O campo que deve carregar essa modificação é o campo Break Values na janela Classification (Veja a imagem abaixo):
A modificação foi atualizada no campo Symbol (clique para ampliar):
Clique no botão Aplicar. Repare que  a imagem mudou de tonalidade:


Vamos exportar essa imagem classificada. Clique com o botão direito sobre ela para acessar a opção Data - Export Data:

Na janela de exportação, marque a opção Use Renderer. Selecione o diretório de destino e clique no botão Save. Aguarde o término do processo.


Uma nova imagem binária será adicionada ao projeto do ArcMap. Para retornar o tom de cinza da imagem de origem, basta removê-la do projeto do ArcMap e adicioná-la novamente:
Para transformar um raster em polígono no ArcMap, acesse as ferramentas do ArcToolBox. Vetorizar essa imagem é mais fácil do que se imagina. Muito mais fácil com duas cores apenas!
 
Conversion Tools - From Raster - Raster to Polygon


O campo mais significativo é Simplify Polygons. Vou explicá-lo mais adiante.


O contorno automático sobre o objeto foi conclúido com sucesso:


Após vetorizar o contorno, é preciso entrar no modo de edição e excluir o vetor que contorna o background. Na tabela de atributos, o campo GRIDCODE controla os valores do pixel. selecione todos os campos com valor 0 para eliminar o vetor do background e selecione todos os valores 1 para formar o contorno. Com os valores de contorno selecionados, clique no menu Editor - Union ou Editor - Merge para unir ou mesclar as feições.

A opção Simplify Polygons indica a precisão que o vetor exerce sobre  os pixels da imagem. Veja os exemplos:

Opção Simplify Polygons habilitada. Resultado:


Opção Simplify Polygons desabilitada. Resultado:
 
 
Meus sinceros agradecimentos à Karen por salvar meu dia!

  ©Template Blogger Elegance by Dicas Blogger.

TOPO