(PostGIS / WKT Raster) e consulta via WEB.

Propaganda
Dados Meteorológicos e Ambientais em PostgreSQL (PostGIS /
WKT Raster) e consulta via WEB.
Kleber Renato da Paixão Ataíde1,2, Wagner de Aragão Bezerra1
Instituto Nacional de Meteorologia - Eixo Monumental Via S1 - Brasília – Brasil.
2
Doutorando em Geociências Aplicadas-Universidade de Brasília-UnB
Email: [email protected]
1
ABSTRACT:
This work present one part of development of a new tool web to assist the
meteorology and environmental analyses service using resources existing in the DBMS
PostgreSQL and yours spatial extensions PostGIS and WKT Raster to storage and query of
meteorological and environmental data, resulting in applications that interact raster data
(satellite images) and vector data (thematic maps) by structured query language SQL, where
one of the main functionality of the final product is to can make query, trough web interface,
of the real data contents in each pixel from satellite image into database and relations of
intersects, cross, contains, proximity.
Palavras-chave:
Valor de pixel, Geoprocessamento, Imagens de Satélite, PostGIS, WKT Raster.
1- INTRODUÇÃO
Os dados meteorológicos e ambientais são aplicados em diversas áreas de interesse
da sociedade como agricultura (previsão de tempo ajuda na decisão da plantação, períodos de
seca, colheita), lazer (previsão do tempo na praia, no campo) segurança (alertas sobre chuvas,
ventanias), etc. Estes dados apresentam tipos, freqüência e origem diferentes e geralmente não
se encontram centralizados em uma única fonte. (KOZIEVITCH, 2005).
O Instituto Nacional de Meteorologia (INMET), por exemplo, recebe diversos tipos
de dados como estações meteorológicas convencionais, automáticas e de radiossonda, além de
recepção de dados de bóia e imagens de satélites de órbita polar e geoestacionária.
Diante desse contexto, existe a necessidade de armazenar um conjunto de diferentes
tipos de dados geoespaciais tais como dados pontuais das estações meteorológicas, dados
poligonais como mapas de regiões, estados, municípios, bacias hidrográficas e dados em
formato matricial como as imagens de satélite, logo, é necessário uma ferramenta que
possibilite o armazenamento, a consulta e a interação entre esses diversos tipos de dados
usando um banco de dados com extensão espacial.
O presente trabalho tem por objetivo apresentar algumas aplicações em
desenvolvimento usando algumas funções e características da extensão espacial
PostGIS/WKT Raster do SGBD objeto-relacional PostgreSQL, como alternativa open source
para armazenamento e consulta de dados espaciais dos mais diversos tipos que são utilizados
na meteorologia e estudos ambientais.
2-MATERIAL E MÉTODOS
O PostgreSQL é um sistema gerenciador de banco de dados objeto-relacional código
aberto e de grande porte que oferece suporte a dados espaciais por meio de sua extensão
PostGIS para vetores e WKT Raster para dados matriciais, como as imagens de satélite,
segundo as especificações do OpenGis (Simple Features Specification for SQL)(PostGIS,
2009). Permitindo uso de linguagem SQL, procedures, funções e consultas complexas entre
tabelas e outras características, tornando possível o relacionamento entre tabelas com dados
espaciais como vetores e matrizes.
Para instalação do WKT Raster é necessário anteriormente ter instalado o
PostgreSQL e a estensão espacial PostGIS.
2.1 - Instalação do PostgreSQL
O pacote de instalação do PostgreSQL está disponível em várias fontes de formatos
binários. O pacote completo inclui:
 Servidor central com documentação completa (HTML, man)
 Várias ferramentas para linha de comando (por exemplo, o psql, pg_ctl, pg_dump,
pg_restore)
 Biblioteca C (libpq) e o processador incorporado C (ecpg)
 Várias linguagens procedurais server-side (por exemplo, plpgsql, pltcl, plperl)
 Vários pacotes add-on populares (por exemplo, metaphone, pgcrypto e outros
acessórios úteis)
 Além disso, alguns instaladores que incluem pacotes adicionais, como pgAdmin e
PostGIS.
Os pacotes binários estão disponíveis para um número de diferentes sistemas
operacionais, como FreeBSD, Linux, Mac OS X, Solaris e Windows encontrados no site
http://www.postgresql.org/download/
2.2 - Instalação do PostGIS
A instalação do PostGIS pode ser efetuada logo após a instalação do PostgreSQL
através do seu programa instalador automático, ou pode também ser carregado do site
http://postgis.refractions.net/download/ , no qual existem diversas versões para download
inclusive o pacote binário do WKTRaster.
2.3 - Instalação do WKT Raster
O WKT Raster pode ser carregado do site citado anteriormente ou se for para
Windows
pode
ser
conseguido
no
seguinte
endereço:
http://www.postgis.org/download/windows/experimental.php.
Os requerimentos para sua instalação são:
 PostgreSQL versão 8.3 ou superior http://www.postgresql.org/download/;
 PostGIS versão 1.4 ou superior http://postgis.refractions.net/download/;
 Biblioteca Proj4 versão 4.4 ou superior http://trac.osgeo.org/proj/;
 Biblioteca GEOS versão 3.2.0 ou superior http://trac.osgeo.org/geos/;
 Onde o GEOS 3.2.0 e o PROJ4.6.1 são instalados juntamente com o PostGIS
1.5.1.faltando apenas o Python e o GDAL para o Python.
 Extensão
WKTRaster
PostGIS
versão
0.1.6SVN
ou
superior
http://postgis.refractions.net/download/windows/experimental.php;
 Python (http://www.python.org/download/)versão 2.5 ou superior e GDAL para
Python(http://pypi.python.org/pypi/GDAL/)
versão
1.6.0
(http://download.osgeo.org/gdal/win32/1.6/) ou superior para o carregador
(gdal2wktraster.py);
 Instalar o NumPy baixado de http://sourceforge.net/projects/numpy/files/NumPy/;
 Para usar o gdal2wktraster.py, é necessário o Python 2.5 e vínculos com GDAL que
pode ser baixado em http://pypi.python.org/pypi/GDAL/1.6.1 e executar o programa
GDAL-1.6.1.win32-py2.5.exe.
O PostGIS foi desenvolvido pela Refractions Research, como um projeto em
tecnologia de banco de dados espaciais de código aberto e liberado sob a licença GNU
General Public License e continua em desenvolvimento onde tem sido acrescentado de
ferramentas de interface para usuário, suporte a topologia básica, validação de dados,
transformação de coordenadas, APIs de programação entre outros, onde também há suporte à
topologia completa, suporte de varredura, redes e roteamento, superfície tridimensional,
curvas, splines e outras características, (PostGIS Manual, 2009).
O WKTRaster implementa um tipo RASTER como o tipo GEOMETRY
implementado no PostGIS e oferece um conjunto de funções SQL (como intersects) que
operam de forma integrada em vetores e raster, pois é uma extensão do PostGIS instalada
separadamente em versões superiores a 1.3.5 e tão simples quanto, onde RASTER é um novo
tipo de coluna, assim como o tipo geometria do PostGIS, para uma camada de raster, do
mesmo modo como uma camada de vetor no PostGIS, uma linha da tabela com uma coluna
do tipo raster contendo um tile assim como uma linha de características do vetor no PostGIS,
(OBE et al, 2009).
Os vetores de municípios, regiões, bacias hidrográficas, etc. e as imagens são
inseridas nesse banco de dados com suas características originais para consulta, mantendo a
resolução espacial, valores dos pixels de cada banda, quantidade de bandas múltiplas,
resolução de até 16 bits, informações geográficas, atribuição de valores nulos para pixels
indesejados entre outras permitindo interagir valores de pixel da imagem com determinada
área de interesse do usuário inserida em formato de vetor nesse banco de dados, além de suas
operações matemáticas.
Cada tile raster tem especificações de tamanho do pixel, largura e altura,
georreferenciamento, número de bandas, tipo de pixel por banda e valor de pixeis nodata por
banda, quais são essenciais para realizar operações básicas de GIS raster.
Para inserir uma imagem nesse banco de dados é utilizado um programa em python,
que é semelhante ao shp2pgsql.exe chamado gdal2wktraster.py. Possibilitando a conversão de
raster para geometria, introduz raster como construtor de geometria, onde não há necessidade
de se preocupar se está trabalhando com raster ou vetor em funções de análise, operações
geométricas, armazenamento de raster dentro do banco de dados como WKB, para operações
de análise eficiente entre camadas vetor e raster, ou fora do banco de dados, para desktop e
aplicações web que podem ser acessados rapidamente e carregar tiles, beneficiando os índices
espaciais GIST do PostGIS.
Cada função SQL WKT Raster permite que um raster dentro do banco de dados
trabalhe perfeitamente com raster armazenado fora do banco de dados. Introduz o conceito de
objetos raster com características geográficas armazenadas com tiles de tamanhos variados ao
invés de polígonos e conversão de vetor para raster sem perda de informação. O WKT Raster
é muito mais simples que PGRaster e Oracle GeoRaster, pois suporta apenas um tipo, onde
não existe diferença entre raster e tiles, um tile é um raster e vice-versa, por exemplo, uma
linha é um tile que por sua vez é um raster; uma tabela é uma camada raster; sem metadados;
sem máscara, sem múltiplas dimensões, apenas x e y, mas sem confundir com bandas, pois o
WKT Raster suporta multibandas raster sem pirâmide (OBE et al, 2009)..
Conforme Casanova et al.(2005), os tipos de dados geográficos do PostGIS são
textuais no formato WKT (Well-Know Text):
• Point: (0 0 0), LineString: (0 0, 1 1, 2 2);
• Polygon: ((0 0 0, 4 0 0, 4 4 0, 0 4 0, 0 0 0), (1 0 0, ...), ...)
• MultPoint: (0 0 0, 4 4 0)
• MultLineString: ((0 0 0, 1 1 0, 2 2 0), (4 4 0, 5 5 0, 6 6 0))
• MultiPolygon: (((0 0 0, 4 0 0, 4 4 0, 0 4 0, 0 0 0), (...),...), ...)
• GeometryCollection: (POINT(2 2 0), LINESTRING((4 4 0, 9 9 0))
3-RESULTADOS E DISCUSSÃO
A seguir são apresentados alguns exemplos que simulam os resultados apresentados
a partir de consultas que interagem informações em formato raster, como imagens de satélite
ou dados interpolados, por exemplo e vetores, como municípios, áreas de interesse mapeadas,
bacias hidrográficas entre outro.
A Figura 1 apresenta operação Vetor / Vetor com resultado como uma camada vetor;
Figura 1 – Um buffer circular(a)vetorial que intersecta com dois tipos de vegetação vetoriais (tipo 1 e tipo 2)
com resultado em vetor.
A Figura 2 apresenta operação Vetor / Raster com resultado como uma camada
raster;
Figura 2 – Um buffer circular(a) vetorial que intersecta com dois tipos de vegetação raster (tipo 1 e tipo 2) com
resultado em raster.
A Figura 3 apresenta operação Vetor / Raster com resultado como uma camada vetor
Figura 3 – Um buffer circular(a) vetorial que intersecta com dois tipos de vegetação raster (tipo 1 e tipo 2) com
resultado em vetor.
A Figura 4 apresenta operação Raster/ Raster com resultado como uma camada raster
Figura 4 – Um buffer circular(a) raster que intersecta com dois tipos de vegetação raster (tipo 1 e tipo 2) com
resultado em raster.
Diante disso, o objetivo final do trabalho na forma mais completa consiste de um
Sistema de Informações Geográficas via WEB que permite ao usuário consultar remotamente
os valores dos pixels de uma imagem de satélite inserida no banco de dados sem a
necessidade de fazer download da imagem para sua máquina.
Esse sistema possibilitará, por exemplo, escolher o tipo de informação que deseja a
partir de determinada área, por exemplo, o índice de vegetação, temperatura da superfície do
continente, do oceano ou do topo das nuvens, albedo, tipo de nebulosidade entre outros que
sejam inseridos no banco de dados ou que possam ser gerados a partir das imagens brutas
consultadas através de cada algoritmo específico.
O tipo de consulta pode ser por demanda do usuário ou até mesmo haver campos
para inserção de fórmulas matemáticas que o próprio usuário manuseie obedecendo a uma
lista de comandos que o sistema entenda e que ficarão disponibilizados na página web. Um
exemplo da interface é apresentado na Figura 5.
Figura 5 – Exemplo do ambiente de consulta do valor do pixel da imagem apenas com o clique do mouse na
coordenada geográfica via interface web.
4-CONCLUSÕES
Diante desse contexto, observam-se as diversas funcionalidades e aplicações que
podem surgir com uso do PostgreSQL e suas extensões espaciais para dados meteorológicos e
ambientais principalmente com o surgimento do WKT Raster, o qual apresenta-se como uma
ferramenta avançada para consultas e armazenamento de imagens de satélite, possibilitando
resolver algumas questões de níveis micrometeorológicos, agrometeorológicos, estudos
ambientais entre outros, além de permitir o usuário consultar valores reais de dados contidos
na imagem do satélite sem a necessidade de fazer o download da imagem para ter acesso a
essa informação, além de permitir fazer consultas que interagem informações em formato
vetor e matricial, como por exemplo, listar todas estações meteorológicas instaladas dentro de
uma determinada bacia e que tem cobertura de nuvens em determinada hora..
5-REFERÊNCIA BIBLIOGRÁFICA
KOZIEVITCH, N. P. Dados meteorológicos: um estudo de viabilidade utilizando um SGBD
em plataforma de baixo custo, dissertação de mestrado, Curitiba-PR, 2005, p.70.
OBE, REGINA. O.; HSU, LEO. S. PostGIS in Action: MEAP Edition Manning Early.
Manning Publications Co. Acces Program. p. 425, ISBN: 9781935182269, May.
2009. Disponível em: <www.manning.com>. Acessado em: 10/01/2010.
POSTGIS MANUAL. Disponível em <http://postgis.refractions.net/docs/postgis.pdf>.Acesso
em: 10/10/2009.
THE MAPSERVER TEAM. MapServer: MapServer documentation, Release 5.6.1, 2010, p.
714.
Download