Title Image

Blog

La geovisualización en espacios inteligentes y las posibilidades de Processing

  |   Geovisualización

El análisis y la visualización de los datos espacio-temporales capturados través de una gran cantidad de sensores heterogéneos representa una tarea compleja. Piense únicamente el lector en la gran cantidad de información que se recoge a través de los diversos dispositivos móviles personales y que se publican en redes sociales y añada a ellos aquellos datos recopilados por las administraciones públicas que son ofrecidos de forma abierta.

A la valiosa información de alto nivel sobre el comportamiento humano en ámbitos como la planificación urbana, la movilidad, las interacciones sociales o el comportamiento del consumidor, entre otros, hay que añadir la existencia de un reto complejo en el tratamiento de los datos para  obtener una buena visualización interactiva que permita al ciudadano adquirir una fácil comprensión de la gran cantidad de información ofrecida. Esta información se vuelve todavía más interesante cuando  existe una retroalimentación efectiva para el ciudadano, ayudándole a tomar decisiones más informadas acerca de su entorno.

Independientemente de entrar a debatir la vertiente territorial de las Ciudad Inteligente (las llamadas Smart Cities) y el impacto de la tecnología en la ocupación del suelo, el tratamiento y representación espacial de la información generada en espacios inteligente ofrece unas posibilidades muy estimulantes y menos exploradas, aunque ya se están dando algunas experiencias. El desarrollo de interfaces de visualización interactiva en las ciudades inteligentes está muy ligado a la informática urbana y la geovisualización y sin duda, el desafío de todo ello será el de favorecer una correcta y fácil interpretación que ayude a la toma de decisiones efectivas  por parte del ciudadano, ajustando su conducta en tiempo real.

Processing es un lenguaje y entorno de programación de código abierto basado en Java que puede ayudar mucho en esta tarea.

Desarrollado inicialmente para servir como medio para enseñar programación dentro de un contexto visual, ha evolucionado hasta convertirse en una herramienta profesional y artística para la creación de imágenes, animaciones y proyectos multimedia e interactivos de diseño digital. De Processing me interesa su vertiente geo que considero especialmente interesante para la representación atractiva (y efectiva) de datos.

Este lenguaje dispone de más de 100 bibliotecas para sonido, vídeo, visión artificial, entre otros y permite ser portado a plataformas móviles tanto Android como a Iphone. La librería SQLibrary facilita la comunicación con bases de datos MySQL, PostgreSQL o SQLite. Además de ello, existe una clase llamada MercatorMap que ayuda a convertir las coordenadas longitud, latitud a coordenadas cartesianas.

La siguiente imagen representa un sencillo ejemplo utilizando esta clase, donde se trabaja con un mapa base con un estilo de visualización personalizado. Este mapa se ha obtenido mediante un renderizado con TileMill, «una aplicación para crear mapas bonitos».
En Processing cargamos la imagen e indicamos sus dimensiones y las coordenadas del bounding box que nos señala TileMill:

Mapa = loadImage("madrid.png");
mercatorMap = new MercatorMap(800,652,40.4207,40.4048,-3.7159,-3.6903);

Posteriormente, a través de la librería SQLibrary hemos conectado a una base de datos PostgreSQL con datos del proyecto  OpenStreetMap y, tras realizar una consulta, hemos conseguido las coordenadas de los accesos al metro de Madrid. Mostramos la imagen del mapa base e indicamos las localizaciones (puntos verdes):

image(Mapa, 0, 0, width, height);
pto = mercatorMap.getScreenLocation(new PVector(y, x));
smartcity smartsantander santander cantabria madrid

Los puntos verdes son añadidos dinámicamente desde una base de datos PostgreSQL/PostGIS a través de Processing. Indican las entradas a las estaciones de metro del centro de Madrid.

Para finalizar, dejo un vídeo de una instalación táctil en el que el usuario puede consultar las redes de investigación que existen entre institutos Max Planck y sus socios internacionales. La cuidada geovisualización utiliza datos de OpenStreetMap. Un ejemplo de la posibilidades de Processing.