77
Mapeando democratcamente o mundo “ OpenStreetMap is a free editable map of the world made by people like you! “ Rafael Soto [email protected] / [email protected] Project Manager / Software Engineer www.opengeo.com.br

Projeto OpenStreet Map - Mapeando democraticamente o mundo

Embed Size (px)

DESCRIPTION

Projeto OpenStreet Map - Apresentação realizada em novembro de 2009 no Geolivre Conference sobre o projeto OpenStreetMap.

Citation preview

Page 1: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapeando democratcamente o mundo

“ OpenStreetMap is a free editable map of the world made by people like you! “

Rafael [email protected] / [email protected]

Project Manager / Software Engineerwww.opengeo.com.br

Page 2: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Convergência Tecnológica

MOBILIDADE CONECTIVIDADE

WEB

SERVIÇOS

Page 3: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Era da informação espacial

• Popularização dos dispositivos c/ GPS

• Vicio por mapas!

• Desenvolvimento de aplicações baseadas em localização

• Geoprocessamento e geovisualização

• Computação Ubiqua

• Precisamos de dados geográficos !

Page 4: Projeto OpenStreet Map - Mapeando democraticamente o mundo

“toda informação passível de espacialização, ou seja, tem algum tipo de vínculo geográfico que permite sua localização e análises espaciais. Este pode ser um ponto, um endereço, um território, entre outros.” Wikipedia

Geoinformação

Page 5: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Dados geográfcos públicos

Orgãos governamentais disponibilizam os dados de forma bruta sem nenhum tpo de tratamento

Page 6: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Dados em copyright

Empresas especializadas, tratam estes dados e comercializam com licenças em copyright

Page 7: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Dados em copyright

Empresas especializadas, tratam estes dados e comercializam com licenças em copyright

Page 8: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Copyright Easter Eggs

Introdução de erros propositais para que a pirataria seja descoberta

Page 9: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Copyright Easter Eggs

Page 10: Projeto OpenStreet Map - Mapeando democraticamente o mundo

E as bases gratuitas?

Page 11: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Motvação

• Ausência de mecanismo de colaboração•Mapas desatualizados•Mapas com dados inválidos•Mapas inexistentes•A informação não pode ser reutlizada

• Temos bastante projetos de SW mas onde estão os dados livres ?

• A geoinformação não precisa ser gratuita e sim livre!

Page 12: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Projeto OpenStreetMap - OSM

Projeto comunitário com o objetvo de mapear o mundo e tornar a informação disponível e livre para ser utlizado por qualquer pessoa a partr de uma licença aberta e sem restrições.

www.openstreetmap.org

Page 13: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Projeto OpenStreetMap - OSM• Colaboração no estlo wiki;

• Fun Mapping - “IF EASY I CAN DO”;

• Infra-estrutura disponível na web;

• Para todos os gostos e sabores;

• Integração direta com GPS;

• Multdisciplinar e com diferentes fnalidades;

Page 14: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Licença de Usohttp://code.google.com/intl/pt-BR/apis/maps/terms.html

“ Você não pode copiar, fazer engenharia reversa, decompilar, traduzir, modifcar, ou fazer qualquer tpo de trabalho derivado destes ... “

“ Você também não pode alugar, publicar, vender, registrar, criar sublicenças, usar para market ou transferir .. “

Page 15: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Licença de Usohtp://wiki.openstreetmap.org/wiki/OpenStreetMap_License

“ Você pode copiar, fazer engenharia reversa, de-compilar, traduzir, modifcar, ou fazer qualquer tpo de trabalho derivado destes ... “

“ Você também pode alugar, publicar, vender, registrar, criar sub-licenças, usar para market ou transferir .. “

Page 16: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Exemplo Prátco - Bagdá

Page 17: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Exemplo Prátco - Bagdá

Page 18: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Arquitetura e Componentes

Page 19: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Base de dados - Modelo

•Base de dados postgres•Atualmente com o tamanho aproximado de 160GB.•Servidor principal - Ubuntu 8.0.4 LTS.•Estrutura de dados simplifcada (node e way)•Histórico de Versão (current table e master table)

Page 20: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Base de dados - TAGS

•Metadados(TAG) não restritvos mas padronizado.•Sem restrição para a quantdade de metadados.•Armazena informações sobre

•O nó (Ponto)•A via (Linha)•A área (Poligono)

Page 21: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Organização dos metadados

Page 22: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Organização dos metadados

Page 23: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Banco de dados – planet.osm•Formato de backup do OSM

•Formato xml aberto e especifcado

•Backup completo gerado semanalmente as quartas-feiras

•Duração aproximada de 12 horas e acontece de forma distribuída

•Aproximadamente 6.1GB compactado em formato tar.bz

•Utlizado para recuperar a base de dados do OSM

•Sincronização por changeset / planet.dif (minuto,hora e diário)

Page 24: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Banco de dados – planet.osmhtp://planet.openstreetmap.org/

Page 25: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Banco de dados – OSMosis•OSMosis

•Geração de dump da base•Carregar dump•Produção de changeset•Carrega changeset•Filtra por tag ou região geográfca•Suporte a postgres e mysql

# osmosis --read-xml fle="planet.osm" –write-postgres host="x" database="x" user="x" password="x"

OSMosis Base de Dados

htp://wiki.openstreetmap.org/wiki/Servers/smaug

Page 26: Projeto OpenStreet Map - Mapeando democraticamente o mundo

OSM API - REST

•Protocolo/interface utilizada para realizar operações na base de dados OSM;•Baseado no padrão RESTFul API;•Possibilita a criação de aplicações de terceiros para interagir diretamente com a base de dados OSM via WEB;•Possui variante para dispositivos móveis;

http://wiki.openstreetmap.org/wiki/API_v0.6

Base de Dados

FRONTEND

REST API

OSM

Servidor de Aplicação

GET /api/0.6/[node|way|relation]/#id

POST /api/0.6/changeset/#id/upload

Page 27: Projeto OpenStreet Map - Mapeando democraticamente o mundo

OSM API - OSM2Gohtp://wiki.openstreetmap.org/wiki/OSM2Go

FRONTEND

REST API

OSM

Servidor de Aplicação

GET /api/0.6/[node|way|relation]/#id

Page 28: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Front-endThe Rails Port (htp://wiki.openstreetmap.org/wiki/The_Rails_Port)

•Implementação do front-end principal do OSM baseado na plataform Ruby on Rails•Implementa a API e o web front end•Aplicação responsável por todo o wiki do projeto (www.openstreetmap.org)•Conecta-se diretamente a base de dados do OSM•Implementa a OSM API REST

•Slippy Map(htp://wiki.openstreetmap.org/wiki/Slippy_Map)

•Implementação do visualizador de mapas do OSM;•Baseado em xhtml e javascript•Utliza a biblioteca OpenLayers

Page 29: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Renderizadores•Responsáveis por gerar os tles (imagens) a partr dos dados produzidos na base do projeto;

Base de DadosOSM

RENDERTILECACHE

Servidor de Aplicação

Page 30: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Renderizadores

MAPNIK (htp://mapnik.org/)

•Renderizador principal do projeto utlizado pelo frontend Slippy Map para apresentar os dados presentes na base no portal wiki;

•Escrito em C++ e utliza a biblioteca gráfca AGG para renderizar as imagens;

•Utliza o mecanismo de tle cache;

•Utliza uma base em Postgis que é sincronizada de hora em hora com a base principal do projeto;

•A estrutura de dados é diferenciada, por isso utliza uma ferramenta para conversão (osm2pgsql);

Page 31: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapnik

OSMosis Planet Dif

POSTGIS

osm2pgsql

MAPNIK

MAPNIKTileCache

Base de DadosOSM

Page 32: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapnik – Foz do Iguaçuhtp://www.openstreetmap.org/?lat=-25.539&lon=-54.5845&zoom=13&layers=B000FTF

Page 33: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapnik – Rio de Janeirohtp://www.openstreetmap.org/?lat=-22.9267&lon=-43.17417&zoom=17&layers=B000FTF

Page 34: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Renderizadores

Tiles@home (htp://tah.openstreetmap.org/)

• Renderizador criado com o conceito de processamento distribuído;

• De forma comunitária, usuários espalhados pelo mundo contribuem para o processamento das imagens(Tiles) dos mapas e posterior envio para o Tile Cache;

• Cliente t@h client;

• Feito em linguagem perl e renderiza as imagens com o Inkscape;

Page 35: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Tiles@home

OSMosis Planet Dif

MYSQL

Tile@homeServer

Base de DadosOSM

t@h client

Page 36: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Tiles@home

Page 37: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Tiles@home

Page 38: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Editores

Potlatch(htp://wiki.openstreetmap.org/wiki/Potlatch)

• Editor de dados geográfcos via web;

• Focado em usuários iniciantes no OSM;

• Integrado ao wiki do projeto;

• Modifcações são enviadas em tempo real;

• Necessário estar conectado;

• Feito em fash possui uma boa interação com o usuário;

• Possui integração com Yahoo! Aerial Imagery;

• Possibilita o envio de traçados GPS (gpx);

Page 39: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Potlatch

Page 40: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Potlatch

Page 41: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Potlatch

Page 42: Projeto OpenStreet Map - Mapeando democraticamente o mundo

EditoresJosm (htp://josm.openstreetmap.de)

• Editor java desktop ofcial do projeto;

• Focado em usuários avançados que buscam por precisão, ferramental de edição e verifcações topológicas;

• Trabalha ofine e com os dados no disco local;

• Sincronização direta com a base do OSM via OSM API;

• Possui uma serie de plugins (WMS Plugin e Yahoo! Plugin);

• Trabalha com diversas media (Imagem, Audio e Video);

• Integração direta com equipamentos GPS;

• Trabalha com o formato GPX (Tracklogs, WayPoints, etc)

Page 43: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Editores - JOSM

Page 44: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Editores - JOSM

Page 45: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Estrutura de Colaboração OSM

EDITOROFFLINE

OSM WIKI

INFRAESTRUTURA OSM

TrackLogAudioFotografa Imagem Satélite Tracklog

Page 46: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Como colaborar ?htp://www.openstreetmap.org)

Page 47: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Como colaborar ?htp://www.openstreetmap.org)

Page 48: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapeando direto wiki

Page 49: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapeando direto wiki

Page 50: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapeamento via GPS - Tracklog

1- Adquirir os dados

2- Transferir os dados do dispositvo para uma estação

3- Editar os dados e mapear todos os elementos encontrados

4- Descrever todos os elementos (Metadados)

5- Enviar para o servidor e visualizar

Page 51: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Adquirindo os dados

Page 52: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Fun Mapping

Page 53: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Map Party

Page 54: Projeto OpenStreet Map - Mapeando democraticamente o mundo

OSMTracker

htp://wiki.openstreetmap.org/wiki/Osmtracker

Page 55: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Walking-paperhtp://walking-papers.org/

Page 56: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Editando os dados

Page 57: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Editando os dados

Page 58: Projeto OpenStreet Map - Mapeando democraticamente o mundo

OpenStreetBugshtp://openstreetbugs.schokokeks.org

Page 59: Projeto OpenStreet Map - Mapeando democraticamente o mundo

OSM Inspectorhtp://tools.geofabrik.de/osmi

Page 60: Projeto OpenStreet Map - Mapeando democraticamente o mundo

OSM Inspectorhtp://tools.geofabrik.de/osmi

Page 61: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Estatstcas do Projeto

~ 33.000.000 km de vias mapeadas

~ 180.000 usuários

Desde 08/2005

250 paises

~ 22.457 cidades

htp://wiki.openstreetmap.org/wiki/Statstcs

Page 62: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Comunidade Brasileirahtp://wiki.openstreetmap.org/wiki/WikiProject_Brazil

• Wiki lançado em 19 de junho de 2009

• ~ 100 usuários

• Lista ([email protected]) ~ 50 inscritos

• Principais capitais e cidades brasileiras mapeadas

• Muito trabalho pela frente

• Pouca colaboração por parte dos detentores dos dados

Page 63: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Projetos Brasileiroshtp://wiki.openstreetmap.org/wiki/WikiProject_Brazil/Projetos

Traduções wiki e sofwares Fronteiras administratvas (IBGE) Mapeamento Rodovias Estaduais e Federais Ferrovias Transporte Público Correções na base

htp://wiki.openstreetmap.org/wiki/WikiProject_Brazil/Importa%C3%A7%C3%B5es

Page 64: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Colaborações Brasileirashtp://www.itoworld.com/product/osm

Page 65: Projeto OpenStreet Map - Mapeando democraticamente o mundo

São Paulohtp://wiki.openstreetmap.org/wiki/WikiProject_Brazil

Page 66: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Rio de Janeiro

Page 67: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Belo Horizonte

Page 68: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Brasília

Page 69: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Porto Alegre

Page 70: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Salvador ?

Page 71: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Utlizações

Page 72: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Utlizações

Page 73: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Utlizações

Page 74: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Potêncial Comercial

WWW.CLOUDMADE.COM

Page 75: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Potêncial Comercial

WWW.CLOUDMADE.COM/route

Page 76: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Projeto no Brasil

htp://www.sofwarepublico.gov.br/

Page 77: Projeto OpenStreet Map - Mapeando democraticamente o mundo

Mapeando democratcamente o mundo

“ OpenStreetMap is a free editable map of the world made by people like you! “

Rafael [email protected] / [email protected]

Project Manager / Sofware Engineerwww.opengeo.com.br