Arquivo de etiquetas: Conversão

MDT 30m para Portugal

Update: adicionei um comentário (1/6/2010) sobre a qualidade deste MDT, avaliada pelo Prof. José Alberto Gonçalves.

Em Junho do ano passado (2009), falei neste artigo sobre o modelo digital do terreno global disponibilizado online e gratuitamente pelos EUA e Japão. Na altura terminei o texto com a esperança de que algum voluntário se oferecesse para obter os dados para Portugal, os processar e disponibilizar à comunidade. Hoje, conheço apenas a iniciativa da ESRI Portugal, que fez estes passos e disponibilizou o MDT aos seus utilizadores através do ArcGIS Online, permitindo o download dos dados já processados ou a sua utilização no ArcGIS de forma remota. O acesso remoto inclui até acesso via WMS, permitindo assim o acesso por utilizadores de outro software (não-ESRI). O endereço WMS pode ser consultado na lista de servidores nacionais WMS do grupo OSGeo-PT. Basta fazer copy/paste para um programa como o QGIS ou o gvSIG para utilizar este MDT. Mais informação sobre o serviço e todas as formas de lhe aceder pode ser consultada no ArcGIS Online.

Mas para os utilizadores que preferem fazer o download dos dados, a solução da ESRI não é tão universal, já que o formato dos dados permite apenas a sua utilização em ArcGIS – isto porque o mdt é disponibilizado numa File Geodatabase.

Assim, pensei em fazer esse pequeno trabalho, e peguei no mdt que tinha tratado na altura, e coloquei-o online. Os passos que fiz foram estes:

  • converti o mdt para o formato mais universal possível – GeoTIFF;
  • reprojectei os dados para o sistema de coordenadas também mais usado – Hayford-Gauss Datum 73;
  • comprimi o resultado num arquivo 7zip;
  • coloquei numa partilha pública no SkyDrive (serviço da Microsoft que oferece 25GB gratuitos).

Pode assim obter o mdt de 30m para Portugal acedendo a esta página e clicando na opção “Transferir”.

Algumas Notas

A reprojecção foi aplicada aos dados originais usando os parâmetros do IGP para a transformação Bursa-Wolf de WGS84 para DT73.

O ficheiro GeoTIFF foi criado usando o GDAL, e foi criado sem compressão (343MB), para depois conseguir atingir uma compressão elevada usando o 7zip. Só assim consegui um arquivo com menos de 50MB, o máximo permitido pelo SkyDrive para um só ficheiro.

Para descomprimir o arquivo 7z é preciso usar o programa 7zip que podemos obter no site www.7zip.org. Update: é necessário o 7zip 91.0 Beta para descomprimir!

O valor que representa ausência de dados no GeoTIFF é 32767. Pode ser confirmado usando o seguinte comando do GDAL:
gdalinfo –nogcp –nomd –norat –noct mdt_aster_pt_D73_GeoTIFF.tif
Depois de obter o GeoTIFF de 343MB, podemos convertê-lo para um GeoTIFF comprimido de 54MB, o que permite poupar algum espaço em disco. O comando para esta conversão é o seguinte:
gdal_translate -of GTIFF -co COMPRESS=LZW -co PREDICTOR=2 -co TFW=YES mdt_aster_pt_D73.tif mdt_aster_pt_D73_lzw.tif

Licença ASTER

A licença destes dados pode ser consultada aqui:
Open Access. Data from ASTER GDEM
https://lpdaac.usgs.gov/lpdaac/about/news_archive/wednesday_october_07_2009

Uma vez que os dados foram reprojectados, podem ser distribuídos.

Mais informação sobre o MDT ASTER:
http://www.gdem.aster.ersdac.or.jp/

Utilizar no QGIS

Ao usar este mdt no QGIS, foi apenas necessário ajustar as propriedades da simbologia:

  • Load min/Max values  from band: usar a opção Estimate, e clicar no botão Load;
  • Contrast enhancement: Current com opção Stretch to MinMax.

Também é essencial criar pirâmides para que a visualização seja rápida e eficaz, dado o tamanho do ficheiro (isto pode ser feito acedendo às propriedades do tema no QGIS 1.4.0).

O aspecto visual depois de aplicadas estas opções foi o seguinte:

image

Nota: a memória ocupada pelo QGIS sobe até 500-800MB ao abrir o ficheiro, para depois estabilizar em valores mais razoáveis de 50-90MB.

Com a resolução de 30m, o QGIS indica a escala 1:140.000 como sendo a “best scale”, mas parece-me perfeitamente aceitável até à escala 1:50.000.

Para usar como carta hipsométrica, podemos ainda criar uma rampa de cores no QGIS. Recriei a rampa de elevação do GRASS, com os seguintes passos:

  • nas propriedades do tema, na simbologia, seleccionar a opção “Colormap”;
  • na categoria “Colormap”, escolher 6 entradas e clicar em Classify;
  • na opção “Color interpolation” escolher a opçãoo “Linear”;
  • inserir as cores da rampa do GRASS em cada classe;
  • clicar em OK e ver os resultados.

Adaptei um pouco as cores ao meu gosto, e também os intervalos de altitude definidos pelo QGIS (apenas oferece o método de intervalos iguais, o que não é o mais apropriado para este fim). O resultado final foi este:

image

image

Nota Final

O facto de ter o MDT como ficheiro local permite operações que o acesso via WMS não suporta, como análises topográficas, alteração da simbologia, extracção de áreas de interesse, etc.

O QGIS mais uma vez revela-se como uma ferramenta que impressiona pela abrangência da sua funcionalidade. Notamos ainda alguns pontos a melhorar (como a ausência de rampas de cores para ficheiros raster), mas conseguimos já suprir essas ausências com trabalho manual e um pouco de imaginação. Excelente.

Aliás, vários comandos GDAL que usei podem agora ser realizados com o QGIS graças ao novo plugin GDAL Tools, desenvolvido pela Faunalia. Começo a ter aquele sentimento familiar de ser um dinossauro…

Para terminar, se alguém detectar problemas com este ficheiro, por favor informe-me, por email ou deixando aqui um comentário.

Até à próxima…

Criar KML de Pontos no ArcGIS

Um amigo que também anda nestas lides geoespaciais, pediu-me ajuda para perceber a melhor forma de passar um shapefile de pontos para KML, de preferência de forma a que os pontos tivessem “balões” de informação e com símbolos minimamente aceitáveis.

O shapefile contém pontos com alguns atributos em português, como Nome, Categoria, e outros. O aspecto inicial no ArcMap é este:

image

E o objectivo é chegarmos ao Google Earth com este aspecto:

image

Filtrar os dados

Como apenas alguns pontos interessam passar ao KML, vamos definir uma expressão de pesquisa. Nas propriedades do layer, no separador “Definition Query” construimos a query. Neste exemplo, queremos apenas os pontos cuja Categoria é igual a “Hotelaria”.

image

Ficamos assim com menos pontos a converter. É claro que este passo é opcional…

image

Sistema de Coordenadas

Os dados num ficheiro KML devem estar no sistema de coordenadas WGS84, indicando as coordenadas em graus de latitude e longitude.

Em vez de projectar o nosso shapefile, vamos em vez disso configurar a Data Frame para usar o sistema de coordenadas WGS84. O ArcMap permite definir também a transformação de Datum, e com isso ao exportar dados podemos optar por usar o sistema de coordenadas original ou usar o que está activo na Data Frame. Esta abordagem tem a vantagem de reduzir o n.º de ficheiros intermédios que criamos em disco.

Assim, para definir o sistema de coordenadas, basta abrir as propriedades da Data Frame (botão direito em “Layers” na árvore de temas, e clicar na opção “Properties“), e abrir o separador “Coordinate System”.

Aqui, selecionar na parte inferior da janela a opção Predefined -> Geographic Coordinate Systems -> World -> WGS 84.

Temos ainda de selecionar a transformação de datum que queremos usar. Na parte superior da mesma janela, clicamos no botão “Transformations“, e na janela que abre selecionamos na última opção em baixo, a transformação “Datum_73_To_WGS_1984_4“. Esta transformação usa os parâmetros de nível nacional publicados pelo IGP.

image

O resultado desta definição é obtermos um mapa já em coordenadas WGS84, que podemos ver no ArcMap na barra inferior onde são mostradas as coordenadas do cursor.

image

Usar simbologia apropriada

Uma das coisas a que a Google nos habituou foi a vermos uma simbologia mais imaginativa, usando icones grandes e coloridos para representar pontos.

Em geral, os técnicos de SIG não usam este tipo de simbologia, mas o ArcMap inclui um conjunto de símbolos deste género que poderemos usar. Basta ligar o estilo “ArcGIS_Explorer” para vermos as opções disponíveis. Para vermos estes símbolos basta clicar no botão “More Symbols” no editor de simbologia dos pontos:

image

E assim podemos escolher um símbolo mais ajustado à utilização em Google Earth. O ArcGIS ao converter o layer para KML vai criar um pequeno ficheiro png que incluirá no nosso KML, e que será usado pelo Google Earth.

Para exemplificar escolhi o simbolo de uma cama de hotel e o aspecto do mapa ficou assim:

image image

Incluir atributos

O KML é uma linguagem muito flexível, permitindo associar informação descritiva aos elementos vectoriais. O ArcGIS facilita o processo de passar atributos para o KML, automatizando o processo. Claro que o processo automático tem limitações, mas para quem não quer ou não sabe editar KML manualmente, este automatismo é muito útil, e pode dar bons resultados.

Vários elementos passam do ArcMap para o KML automaticamente:

  1. O nome do layer passa como nome da pasta que contém os pontos
  2. A descrição do layer no ArcMap (nas propriedades, separador “General“), passa para o “Snippet” que descreve o layer no Google Earth
  3. As Labels do ArcMap são usadas para dar um nome a cada vector no Google Earth, e a própria label vai surgir na imagem no Google Earth
  4. Se no ArcMap definirmos as propriedades de “HTML Popup“, o Google Earth vai mostrar essa informação quando clicarmos sobre um ponto
  5. Se houver uma legenda no Layout do ArcMap, será passada ao KML e mostrada no Google Earth como uma imagem sobreposta à imagem do terreno (“screen overlay“), podendo no processo de exportação escolher o canto no ecrã onde surgirá

A ferramenta HTML Popup é uma variante da ferramenta de Identify, mas que mostra os atributos do vector clicado numa janela HTML que podemos configurar. Na sua forma pré-definida os campos são mostrados de acordo com as definições do separador “Fields“. Por exemplo, podemos esconder campos, e alterar a “Caption” para mostrar nomes de campos em português ou mais perceptíveis para o utilizador.

Portanto, para começar temos de definir as propriedades do HTML Popup do nosso layer de pontos no ArcMap. Para isso, nas propriedades do layer, separador “HTML Popup“, basta ligar a opção de usar a ferramenta de HTML Popup, e ao clicar no botão Verify podemos ver como ficará a janela de popup.

image

Podemos ainda melhorar o aspecto da janela se mudarmos as “Captions” dos campos e escondermos os campos que não nos interessa mostrar (usando o separador “Fields“). O aspecto final ficaria assim:

image

Rótulos ou Labels

Se definirmos labels no nosso layer de pontos, estes textos serão usados como o nome de cada ponto no KML final, e serão também visíveis no mapa junto a cada ponto. Portanto será uma questão de se querer ou não ligar as labels do layer e escolher o campo, a fonte, tamanho, cor, efeitos, etc. Mais importante será definir a escala a partir da qual os textos são mostrados, e que será respeitada pelo Google Earth. Se tiver muitos pontos aglutinados esta opção é praticamente obrigatória.

Executar a ferramenta “Layer To KML

Esta ferramenta encontra-se na Toolbox de Conversão, toolset “To KML“:

image

Uma vez que queremos exportar a nossa informação como pontos e não como uma imagem, a questão mais importante nesta ferramenta é *não* ligar a opção de “Return single composite image“. Na caixa de “Output File” temos de indicar o caminho para o ficheiro a criar que deve ter obrigatoriamente a extensão KMZ (o ArcMap irá criar uma pequena imagem .png para mostrar o nosso símbolo no Google Earth que será incluída no ficheiro KMZ). Por fim, é obrigatório indicar a escala máxima de visualização. Ou seja, só a partir desta escala é que a informação será mostrada pelo Google Earth.

Resultado Final

E é tudo. Basta agora que no Google Earth usemos a opção File->Open para abrir o nosso ficheiro KMZ e ver o resultado final.

image

Existem ainda alguns melhoramentos que poderemos fazer: alterar o nome do layer no ArcMap irá alterar o nome do layer no Google Earth. Podemos também criar um ficheiro xsl para criar uma visualização alternativa com melhor estilo e até incluir imagens nas nossas janelas de popup (O ArcGIS inclui alguns exemplos na «directoria de instalação\ArcGIS\Styles» que podemos usar como base).

Existem muitas ferramentas de criação de KML a partir do ArcGIS que começaram a aparecer já há alguns anos, quando o ArcGIS não oferecia qualquer possibilidade de conversão. Com o tempo, a ESRI foi incluindo mais capacidades de conversão. Hoje, já na versão 9.3, fiquei impressionado com as capacidades nativas do ArcGIS – conseguimos obter um KML já com alguma sofisticação, e usando um processo de conversão bastante simples recorrendo a ferramentas e definições familiares a qualquer utilizador de ArcGIS.