News

Montando banco de dados espacial com a GDAL - Parte 2 (Pacote GDAL).

Na parte 1 mostrei todo o conjunto de tecnologias(scripts, ambientes, bibliotecas e utilitários), ausentando os detalhes de cada uma delas, assim, privilegiei os usuários que já utilizam essas tecnologias, logo, esses usuários já poderiam experimentar os scripts disponibilizados para construir uma banco de dados espaciais.

As demais partes dessa postagem mostrará cada tecnologia, logo, podem ser aproveitada de forma independente pelo internauta.

A seguir a listagens das tecnologias a serem mostradas

Parte 2 - O Pacote GDAL
Parte 3 - Emulação do ambiente UNIX/SHELL no WINDOWS .
Parte 4 - Obtendo os dados para o banco de dados (Shapefile do PRODES)
Parte 5 - Banco de Dados Postgresql/Postgis
Parte 6 - Ingestão dos dados do PRODES
Parte 7 - Fazendo análise em banco de dados espaciais

O Pacote GDAL

A GDAL (www.gdal.org) é uma biblioteca para tratamento de dados matriciais, porém seu pacote, incorporou a biblioteca OGR, responsável para tratamento de dados vetorias. O pacote GDAL é constituído por bibliotecas e utilitários. Os utilitários para tratamento de dados vetoriais serão abordados nesse postagem.

1) Instalação do pacote da GDAL no WINDOWS:

A GDAL pode ser instalada de mais de uma forma, a mais comum é baixar o FWTools, o 'FW' faz  referência ao autor da GDAL, Frank Wardeman. O endereço da FWTools para download é http://trac.osgeo.org/gdal/wiki/DownloadingGdalBinaries, onde podemos baixar o programa de instalação, http://download.osgeo.org/gdal/win32/1.6/gdalwin32exe160.zip.

Para os internautas que desejam seguir as outras partes da postagem, deve-se instalar a GDAL com o uso do programa de instalação OSGEO4W.

O programa OSGEO4W é um programa para instalar os projeto apoiados pela OSGEO(http://www.osgeo.org/) em ambiente WINDOWS, com um detalhe, todos os programas e bibliotecas ficam instaladas no diretório da OSGEO, evitando que a haja conflito com as bibliotecas dos seus aplicativos e sistemas, problema conhecido como "O inferno da DLL"(http://en.wikipedia.org/wiki/DLL_hell). 
A página do projeto da OSGEO4W é http://trac.osgeo.org/osgeo4w/ , e o programa para instalação pode ser acessado diretamente no endereço http://download.osgeo.org/osgeo4w/osgeo4w-setup.exe

Na postagem irei mostrar como instalar a GDAL pela OSGEO4W.

1.1) Instalando a GDAL via OSGEO4W.

A OSGEO4W trabalha com dois diretórios, a) diretório de repositórios e b) diretório onde serão instalados os pacotes. Os pacotes podem ser bibliotecas, utilitários(acessados via console "Prompt do DOS") ou até mesmo programas completos, como exemplo, o QGIS. 

Os diretórios (repositórios e de instalação) podem ser o mesmo, eu prefiro separá-los, assim, criei o dois diretórios, OSGeo4W_rep (repositórios) e OSGeo4W(instalação).

1.2) Selecionando os pacotes pela OSGEO4W

Execute o "osgeo4w-setup.exe" (coloquei no diretório OSGeo4W_rep) e sigas as instruções:

a) Escolha a opção "Advanced Install"
b) Install from Internet
c) Escolha como Root directory: C:\OSGeo4W (opção padrão). É recomendável deixar a opção para todos os usuários (opção padrão)
d) Local Package Directory: OSGeo4W_rep (opção padrão é o diretório onde está sendo executado o "osgeo4w-setup.exe").
e) Se estiver usando um Proxy, caso onde está numa rede corporativa, pode tentar usar as definições do Internet Explorer (opção Use IE5 Settings) ou definir manualmente seu Proxy (opção HTTP/FTP Proxy)
f) Marque a opção "Commandline_Utilities -> gdal: The GDAL/OGR libray and commandline tools" e continue o assistente de instalação.

Obs(s):
1) O programa de instalação marca automaticamente as dependências de cada item
selecionado, ou seja, para executar o utilitário(The GDAL/OGR libray and commandline tools) é necessário instalar os outros utilitários e as bibliotecas que são utilizadas por esse utilitário.
2) Os softwares livres utilizam as mesmas bibliotecas, assim, temos de forma organizada
as bibliotecas que são utilizadas pelos softwares.
* esse é uma das características do LINUX (meu ambiente preferido para um GIS Workstation)

g) Conclua a instalação selecionado as duas opções (Criar e adicionar o ícone).

2) Utilizando os comandos da GDAL /OGR

O pacote da OSGEO4W cria um console("Prompt do DOS") definido pelo arquivo OSGeo4W.bat que configura a ambiente para todos os pacotes por ele instalado. Alguns pacotes são executados na"linha de comando", ou seja, sem uma interface gráfica, esse é o caso dos utilitários da GDAL.

Cada sistema operacional possui seus comandos e a combinação desses com os comandos da GDAL proporciona uma poderosa ferramenta de manipulação e análise dos dados espaciais.

Na etapa 3 irei mostrar alguns comandos do sistema operacional de minha preferência, o UNIX/LINUX, e como obter esses comandos no WINDOWS.

Lembrando que temos duas tipos de utilitários, a GDAL (imagem) e o OGR (vetores), nessa postagem iremos abordar os utilitários para vetores.

A descrição dos comandos da OGR e os formatos suportados são descrito na página http://www.gdal.org/ogr/index.html.

Como exemplo, vamos utilizar o shapefile PDigital2010_00165_shp.zip do PRODES do ano de 2010, http://www.dpi.inpe.br/prodesdigital/dadosn/2010/.

Descompacte o shapefile, execute o console da OSGEO e digite o comando:
cd [c:\NOME DO DIRETÓRIO]

2.1) ogrinfo:
Mostra informações dos vetores (http://www.gdal.org/ogrinfo.html).

2.1.1) Ver os formatos suportados:
No console da OSGEO, digite "ogrinfo --formats"


2.1.2) Ver as informações de um shapefile (sumário)
No console da OSGEO, digite:

ogrinfo -so PDigital2010_00165_pol.shp PDigital2010_00165_pol

Observações:

2.1.2.1) A OGR possui o conceito de datasource para a fonte de dados espaciais, nessa fonte, pode ter um ou mais layers (camadas). O formato shapefile é um exemplo de um datasource contendo apenas um layer. Aplicando o conceito da OGR para mostrar as informações de um shapefile usamos dois argumentos, nome da fonte ( PDigital2010_00165_pol.shp) e nome da camada PDigital2010_00165_pol.

2.1.2.2) O utilitário ogrinfo, mostra todas as informações da camada, inclusive as coordenadas de cada feição no formato WKT(http://en.wikipedia.org/wiki/Well-known_text).
Para mostrar o sumário da camada foi utilizado a opção '-so'.

2.1.3) Ver as informações das duas primeiras feições de um shapefile
No console da OSGEO, digite:
ogrinfo -q -geom=NO -where "fid < 2" PDigital2010_00165_pol.shp PDigital2010_00165_pol


As opções utilizadas na camada foram:
a) -q: Não mostrar o sumário
b) -geom=NO: Não mostrar o campo geométrico
c) -where "fid < 2" : Mostrar as feições que possuim o campo fid (Feature Index) menor que 2.
Obs(s).:
- A expressão da clausula where é um string(sequência de texto) definido entre aspas duplas(").
- A 1a feição da camada inicia com fid igual a 0(zero)

2.2) ogr2ogr:
Cria novas camadas a partir de uma fonte : (http://www.gdal.org/ogr2ogr.html)

Pode ser utilizada para várias finalidades, como, uma simples conversão de formatos de arquivos vetoriais, como exemplo, inserir um shapefile num banco de dados Postgres/Postgis.

Como exemplo, iremos gerar um KML a partir do shapefile PDigital2010_00165_pol.shp.

As informações do KML serão filtradas, sendo:
1) Feições do tipo 'desmatamento' (sprclasse = 'desmatamento').
2) Os campos a serem mostrados no KML serão satelite e area.

O KML utiliza o sistema de referência EPSG: 4326 ().

No console da OSGEO, digite:
ogr2ogr -where "sprclasse = 'desmatamento'" -select "satelite,area" -t_srs "EPSG:4326" -f KML PDigital2010_00165_pol.kml PDigital2010_00165_pol.shp

A aplicação dos utilitários da GDAL ganha uma importância quando temos que fazer processamentos em vários arquivos, para isso, temos que usar os recursos dos comando do sistema operacional, assunto esse a ser tratado em outras etapas.

Até a próxima parte.

Luiz Motta
--
motta.luiz@gmail.com


Geotecnologias Luís Lopes Designed by Templateism.com Copyright © 2014

Imagens do modelo de Bim. Tecnologia do Blogger.