centro de referência em informação ambiental, cria dora ann lange canhos march, 2007 mapcria web...
TRANSCRIPT
Centro de Referência em Informação Ambiental, CRIA
Dora Ann Lange Canhos
March, 2007
mapcria web service
openModeller
Incofish & CRIA
it is a web service developed by CRIA to facilitate the implementation of web applications that require the dynamic production of maps
It uses the University of Minnesota MapServer C library, MapScript wrap for Perl, v4.2.0 [ http://mapserver.gis.umn.edu ]; developed in Perl v5.8.0; Available as a SOAP server
Allows multiple simultaneous jobs
Accepts local files as well as available via WMS (Web Map Service)
Provides several functions to maintain interaction
mapcria web service
mapcriamapcria
files
mapfile
wms
CGIapplication
CGIapplication
drawpolygons
drawpoints
drawlines
dbqueries
draw()
User clicks on a web page link that calls a CGI application
The CGI creates an XML file that describes the map to be
produced.
The XML file is sent to the mapcria web service using a SOAP connection
layers are loaded according to the definitions on a specific mapfile.
Returns a ticket to the caller application
get_image(ticket)
The application requests the newly created map image.
The server delivers the requested image
The requested elements are drawn on the map.
mapcria web service basic use
mapcriamapcria
CGIapplication
CGIapplication
The service performs the required zoom on the map
zoom_rectangle(ticket)
get_image(ticket)
The application requests a zoom and the resulting image.
The server delivers the requested zoomed image
The user selects an area to zoom in
mapcria web service basic use
is a set of general purpose CGI Perl scripts that implement the basic functionalities required for the visualization of (and interaction with) maps produced by the mapcria web service.
Once a map is initialized on the server, the mapcria viewer takes control of the job of providing the user with tools to continue the interaction with the server.
The basic tools provided by the viewer are:
Zoom In and Out
Panning
Reference map window
Layers on / off panel
Active layers window
Plug-in to search a database based on selected coordinates *
Plug-in to search a database to find points to be plotted on the map *
User help information window
Standard page generation for printing
Multi-language interface
* requires special applications according to the system
mapcria viewer
mapcriamapcria
CGIapplication
CGIapplication
The application starts the mapcria viewer passing the ticket as a parameter.
The CGI creates an XML file that describes the map to be
produced.
The XML file is sent to the mapcria web service
Returns a ticket
mapcriaviewer
mapcriaviewer
The mapcria viewer takes control of the job and provides an interface with the commonly used functions.
Map viewer window
Layers control window
Reference map window
Active layers window
Database search window *Symbols select window *
User help window
Printable page
mapcria web service used with the mapcria viewer
Some applicationsSome applications
• geoLoc
• spOutlier
• speciesMapper
• data cleaning
About geoLoc
to assist biological collections in geo-referencing their data
the database includes approximately 110 thousand names of Brazilian localities, obtained from:
Brazilian Institute of National Statistics and Geography (IBGE) GEOnet Names Server (GNS) speciesLink/Fapesp
algorithm based on concepts in the Egaz program (Shattuck 1997) capable of calculating a coordinate for a distance and direction
ToolsTools
26 Noroeste-NW
Campinas São Paulo
ToolsTools
About spOutlier
to assist biological collections in identifying possible suspect points in existing records
uses techniques modified from Chapman 1999 to detect outliers in latitude, longitude and altitude
allows users to indicate their data set as either terrestrial or marine
useful to biologists around the world who wish to identify possible errors in their data
1, -63.25, -4.916666667, 7952, -67.05, -10.96666667, 8053, -68.0125, -12.66666667, 8094, -68.75, -13.60111111, 8155, -68.9102, -13.83333, 8106, -72.3666, -14.36611111, 7907, -78.3166, -14.38916667, 8018, -72.137, -11.8647, 700
marine
Plot georeferenced points on a map.
Available layers:
-World-South and Central America-Brazil-São Paulo State
-95.6 -39.5166-70.2833 -4.2 -70.033333 -4.35 -69.914889 0.274694 -69.7333 -4.2333 -69.6661 -3.908333 ...
For Incofish:Sea - Depth MeanSea - Land DistanceSea - Primary ProductivitySea - Surface TemperatureSea - SalinitySea - IceLarge Marine Ecosystems (2006)
Trachurus trachurus
Pteroscion pele
Gaidropsarus biscayensis
Aditional layers for Incofish
Synagrops bellus, Synagrops spinosus depth
Salinity
Using
DataPostgreSQL
DataPostgreSQL
spOutliergeoLoc
SOAP
Web service
job1 job2
MapsPostGIS
MapsPostGIS
openopenModellerModellerA framework for biological/environmental modellingA framework for biological/environmental modelling
Tem
pera
ture
Precipitation
Building a modelBuilding a model
For each occurrence point one finds values for environment variables. Doing this, geographic occurrence points are transformed into niche occurrence points.
Tem
pera
ture
Precipitation
Building a modelBuilding a model
Based on the niche occurrence points we build a niche model through the application of some algorithm (ex: GARP, Bioclim, Artificial Neural Networks, Aquamaps, etc).
Tem
pera
ture
Precipitation
Tem
pera
ture
Precipitation
Species distribution mapSpecies distribution map
The species distribution map is the result of the niche model application over some geographical region with known values for environment variables. Thus, the species distribution map is a georeferenced map with species occurrence probabilities in its cells.
• The distribution map shows the environmental similarities between distinct geographical regions according to the modelling algorithm metric.
• Factors such as natural barriers and historical influences are not considered.
• The quality of the distribution map generated depends directly on the quality of species occurrence data and environmental data
Warning!Warning!
Selection of parameters and interpretation
requires expert knowledge.
Motivation for openModeller developmentMotivation for openModeller development
• Facilitate the process of reading georeferenced environmental maps stored in different formats (GeoTiff, Arc/Info Grid, GXF, etc).
• Dealing with different coordinate systems and projections to combine the different maps and species occurrence points.
• Letting algorithm researchers concentrate in the algorithm development.
• Allow running different algorithms with exactly the same input, so they can be compared.
Salinity
depth
Temperature
Environmental data
openModeller
BioclimGarp
AquaMapsModellingalgorithms
Specimens
openopenModellerModeller
Salinity
DepthTemperature
Environmental data
openModeller
BioclimGarp
AquaMapsModellingalgorithms
Specimens
Select the environment variables
Select the algorithm
Send the species occurrence data
Select the species’ name and the internet portals to be searched
DiGIRportal
DiGIRportal
openopenModellerModeller
DiGIRportal
DiGIRportal Salinity
Depth
Temperature
Environmental data
openModeller
Bioclim Garp AquaMaps
Specimendata
Modelling algorithms
ABCDportal
ABCDportal
openopenModellerModeller
openopenModeller Modeller client interfacesclient interfaces
openModeller
Desktop
Web
Soap
OR
OR
Library
OR ...
ArchitectureArchitecture
openModelle
r
GARP
Bioclim
AquaMaps
pluggablealgorithms
API
others...
APIConsole
Interfaces
SOAP server
SWIG wrapper
others... drivers
pointspoints mapsmaps
(GDAL, proj4, etc)
(diff. formats)(diff. coord systems)
Demonstration ...
The projectThe project
• The core is being developed in C++• Uses GDAL and proj4 open source libraries• Collaborative development• Distributed under GPL license
Institutions Involved :• CRIA – Centro de Referencia em Informação Ambiental• Poli USP - Escola Politécnica, São Paulo State University• INPE - Instituto Nacional de Pesquisas Espaciais• KU – Kansas University• Soon … feedback from Incofish partners
Documentation available at
mapcria: http://www.cria.org.br/mapcria/doc/
openModeller: http://openmodeller.sourceforge.net/
Thank you!
Obrigada!