Panorama de SIG Libre 2014

Capítulo Local para la Comunidad Hispanohablante de OSGeo

Quiénes somos

@luisromangz @Tolanss @xurxosanz @delawen
@alediaztorres @josepsitjar @santiagohiguera @moiarcsan

Qué vamos a hacer

Agenda

Bibliotecas de componentes

Bibliotecas de componentes

  • Geoprocesamiento: Manipulación de información geoespacial
  • Routing: Enrutamiento y análisis de redes
  • LiDAR: Manipulación y procesado datos láser
  • Varios: Los restos

Geoprocesamiento

  • GDAL/OGR: Formatos y manipulación raster/vectorial
  • JTS/GEOS: Geometrías y algoritmos espaciales 2D
  • GeoTools: Procesamiento y visualización. OGC
  • GeoScript: Capacidades espaciales en distintos lenguajes
  • Shapely: Algoritmos para procesamiento espacial 2D

Routing

  • OSRM: Utiliza OSM
  • pgRouting: Extensión de PostgreSQL/PostGIS
  • OpenTripPlanner: Distintos métodos de transporte

LiDAR

"Tú has venido aquí a hablar de tu libro" @xurxosanz parafraseando a F. Umbral

  • LASlib/LASzip: I/O LAS
  • libLAS: I/O LAS
  • SPDlib: I/O SPD
  • PDAL: GDAL para puntos
  • LASpy: I/O LAS en Python

Varios

  • GeoBatch: Flujos de procesamiento
  • Mapnik: Renderizado de mapas

Puntos calientes

  • Geoprocesamiento: Facilitar su uso a desarrolladores
  • Routing
    • Datos procesados: Respuestas instantáneas
    • Datos sin procesar: Flexibilidad a la hora de incorporar datos en tiempo real
  • Cada vez hay más soporte para Python
  • LiDAR lo va a petar: GSoC 2014

Curva de aprendizaje

  • Geoprocesamiento:
    • C++: GEOS
    • Java: JTS y Geotools
    • Python: GeoScript y Shapely
  • Cálculo de rutas: Teoría de grafos
  • En LiDAR: C++ y línea de comando

Servidores

Tech support

Servicios geoespaciales

  • Sector maduro
  • Proyectos activos
  • Adhesión a estándares
  • A veces para innovar hay que
    salirse del estándar
Mapas Teselas Procesamiento Metadatos
MapServer
deegree
GeoServer
MapGuide
QGIS Server
EOxServer
GeoWebCache
TileCache
MapProxy
TileStache
TileStream
MapCache
PyWPS
52North WPS
Zoo
52North SOS
GeoNetwork
PyCSW

Servidores de mapas

  • Mejoras en el renderizado
  • Adopción de lenguajes de simbología tipo CSS

MapServer · deegree · GeoServer · MapGuide · QGIS Server · EOxServer

Servidores de teselas

  • ¿Integrado en el servidor de mapas
    o independiente?
  • TileCache en desuso
  • TileStache y Tilestream: los raritos
  • GeoWebCache · TileCache · MapProxy · TileStache · TileStream · MapCache

Servidores de geoprocesamiento

  • WPS va calando
  • Lenguajes de scripting
    para facilitar el desarrollo

PyWPS · 52North WPS · Zoo · GeoServer · deegree
52North SOS

Servidores de metadatos

  • No todo va a ser GeoNetwork
  • PyCSW se integra con otros productos

GeoNetwork · PyCSW · GeoServer · deegree

Curva de aprendizaje

Si eres técnico «geo»

  • Conversión de formatos
  • Dominio de proyecciones
  • Estándares OGC
  • Bases de datos (SQL)
  • Comprender a la gente de sistemas

Curva de aprendizaje

Si eres técnico «de sistemas»

  • Instalación y configuración de
    servidores y bases de datos
  • Gestión de recursos
    • «ya viene el de los mapas...»
  • Comprender a la gente de geo
Head bar

Bases de datos

  • PostGIS
  • MySQL Spatial
  • Spatialite
  • H2GIS

Puntos calientes

ISO 19125-1
  • Binary Geometry (WKB)
  • Normalized Geometry (WKT)
19125-2
  • Types and Functions

Compatibilidad OGC

Detalle

PostGIS

La más completa.

MySQL

La más extendida.

Spatialite

En un fichero. GeoPackage.

h2GIS

En un fichero con servidor. Multiplataforma portable.

Bases de Datos

Webmapping

  • Mapbender
  • OpenLayers
  • GeoExt/GXP
  • GeoMoose
  • Leaflet
  • Mapstore
  • Cartaro

Teconologías Webmapping

Estándares OGC

Puntos calientes

  • MapBox
  • CartoDB
  • WebGL Earth
  • F4 Map
  • Asistentes - Guías

Detalle

Mapbender

Soporte de usuarios, grupos y servicios

OpenLayers

Robustez por excelencia

GeoExt/GXP

ExtJS + OpenLayers

GeoMoose

MapServer + OpenLayers

Detalle

Leaflet

Ligero y modular

Mapstore

Crear, guardar, buscar y compartir mashups

Cartaro

Drupal con PostGIS, GeoServer, GeoWebCache y OpenLayers

Curva de aprendizaje

  • HTML Básico
  • Javascript
  • PHP
  • XML

Clientes de escritorio

Panorama actual Clientes de Escritorio

GRASS Gis


El más veterano. Destaca por su gran número de funcionalidades derivadas de muchos años de desarrollo y de una estructura modular del programa que favorece que los desarrolladores aporten al proyecto contribuciones individuales.

uDIG


Cliente de escritorio que nos ofrece el soporte para el mayor número de fuentes de datos, tanto locales como remotas, y especialmente las basadas en los protocolos OGC.

OPTICKS


Utilizado fundamentalmente en teledetección, para el análisis de imágenes provenientes de sensores remotos.

OpenJump


Uno de los primeros proyectos de cliente GIS de escritorio en lenguaje Java. Destaca por hace uso de la biblioteca JTS.

GeoDa


Diseñado para implementar técnicas para el análisis exploratorio de datos espaciales.

QGis


Entorno intuitivo y amigable, que va creciendo en funcionalidades y al que se integran diversos proyectos como GRASS, SEXTANTE...

gvSIG


Herramienta de escritorio completa y multiplataforma que permite leer una amplia variedad de formatos tanto ráster como vectoriales, con capacidades para el procesado de datos vectoriales. SEXTANTE dota a gvSIG de herramientas para el análisis de datos ráster.

SAGA Gis


Destaca fundamentalmente por su orientación a la realización de análisis de imágenes y modelos digitales del terreno. Clara separación entre su interfaz de programación y su interfaz de usuario.

TileMill


Herramienta pensada para diseñar y crear mapas para su visualización via web de forma rápida y fácil.

Puntos calientes

  • Limitaciones en la capacidad para gestionar y visualizar datos en 3D.
  • Edición y visualización de datos.
  • Incorporación de scripting entre las funcionalidades de los SIG de escritorio
  • Interrelación de proyectos
  • SIG de Escritorio vs Servidores SIG

Curva de aprendizaje


Conocimientos en tecnologias geoespaciales:


  • Conocer los distintos formatos de datos
  • Conocer y entender los distintos algoritmos de análisis y gestión de datos geoespaciales
  • Manejo de Bases de Datos
  • Comprensión de proyecciones cartográficas y sistemas de referencia
  • ...

Dispositivos móviles

OpenLayers y Leaflet

Librerías Javascript para ser consumidas en entornos de WebMapping

Con pequeñas precauciones se pueden hacer páginas de WebMapping visualizables en dispositivos móviles

OSMDroid

Utiliza mapas de tiles de OpenStreetMap u otros

Puede trabajar online y offline

API para añadir capas overlay y marcadores.

Estilos de visualización: con tiles personalizadas

Mapsforge

Utiliza mapas vectoriales de OpenStreetMap

Puede trabajar online y offline

API para añadir capas overlay y marcadores.

Estilos de visualización: compilando los mapas con Osmosis

OsmAnd

Routing y navegación en dispositivos Android

Modos offline y online

gvSIG Mini

Multiples capas: WMS

Routing online y offline

POI's, navegación

Comparte en redes sociales

Geopaparazzi

Fotografías y notas georreferenciadas

Orientación de las fotografías

Integración con OSM

Graphhopper

Routing en Android con cartografía OSM

Permite trabajar desde HTML, Javascript

Trabaja offline desde Java escritorio

OsmSharp

Componente para mapas de OpenStreetMap

Routing y Mapas vectoriales offline

Multiplataforma

Glob3 mobile

Componente de mapas, nativo y multiplataforma

Android, iOS, HTML5

Soporta visualización 2D, 2.5D y 3D

Puntos calientes

Sistemas multiplataforma

HTML5

Visualización 3D

Curva aprendizaje

Conocer Java o C++

Conocer Android

Conocer la librería concreta

Gestionar pantallas, resoluciones

THE END

Applause

¿Conclusiones?

QR