Archive for the ‘ Análisis ’ Category

GeoFOV: Incorporando el campo de visión a una geodatabase multimedia

Hola a todos, quiero compartir aquí el enlace de mi segunda presentación en slideshare. Es de un taller que no se llegó a realizar pero espero que os resulte interesante. En esta presentación comento un poco cómo se utilizan los metadatos de las imágenes para generar información espacial de interés o incluso cómo puede evolucionar el panorama de los geotags a corto plazo.

Más adelante, cuando tenga tiempo, colgaré una librería que he desarrollado en mi tesis y explicaré en detalle el código.

Hasta pronto.

Presentación de RAPID para las Jornadas de Geografía 3.0

En este post quiero compartir la primera presentación que subo a Slideshare :) En ella justifico y describo el programa RAPID que ya había introducido en un post, pero con un enfoque ligeramente distinto. Mi idea es subir otras presentaciones que tengo por ahí que puedan ser de interés para G&C.

Espero que os guste. Cuando tenga un rato subo más!!

Paralelización con SIMD

En este artículo os presento un test en el que medimos los tiempos que un programa escrito en C# emplea para procesar una serie de modelos digitales del terreno. El objetivo final es comparar el rendimiento de un código que hace un cálculo secuencial frente a otro que hace uso de una tecnología de paralelización de datos por hardware denominada SIMD, disponible en la mayoría de microprocesadores que usamos hoy en día. Y el resultado es muy interesante.

SIMD performance test

Test de rendimiento SIMD con Mono.Simd.Vector8s

Leer mas

Usando RSAGA para procesar un raster “grande” por partes

Hola a todos, hoy propongo una de las posibles soluciones a un problema que suele aparecer trabajando con GIS: ¿qué hacer cuando queremos procesar un raster “relativamente grande” y los GIS de escritorio más populares tienen problemas de memoria o no acaban el proceso?

En algunas ocasiones la solución a estos problemas sería “trocear” el raster y procesarlo por partes. Esto lo podríamos hacer con varios software y en todos ellos sería interesante poder automatizar la tarea al máximo.

1. Modelo digital raster

En este post propongo realizar una prueba con RSAGA, que es un modulo de R que permite acceder a las funciones disponibles en la consola de SAGA GIS. Para este post he trabajado en Windows, con R 2.10.1 y SAGA 2.0.4, aunque supongo que no habrá problemas con usar otras versiones más recientes. Además, deberéis instalar en R el paquete RSAGA. Leer mas

Extracción de características estructurales de una imagen ( II ) (Semi-variograma de una imagen usando R).

En este artículo usaremos una librería de R (“fields”), que contiene métodos para calcular el semi-variograma empírico de una imagen, lo cual quiere decir que calcularemos el semi-variograma de una gran cantidad de puntos. Y a partir de ahí, analizaremos la existencia de patrones espaciales en tres parcelas agrícolas arbóreas.

Figura 1: Parcelas estudiadas en este artículo.

Leer mas

Procesamiento de imágenes digitales con C# (y una aplicación para el análisis de parcelas agrícolas).

En este artículo voy a exponer una aplicación de ejemplo que he realizado con C# utilizando Aforge.NET. Dicha aplicación trata (y a veces lo consigue  :-)   ) de distinguir si una parcela dada puede ser una plantación  agrícola arbórea mediante el análisis de la Transformada de Hough, y luego se posibilita el conteo automático de los árboles. Al tratarse de un programa con finalidad didáctica los análisis se realizan para una sola parcela y por pasos muy definidos. No obstante, cabe pensar que su mayor utilidad vendría de un análisis masivo de parcelas.

hough1Imagen1

Leer mas

Información Geográfica, TURISMO, RA y la necesidad de estándares abiertos

Hace 16 años les decía a mis alumnos de Nuevas Tecnologías en Turismo que llegaría un momento en que la gente preferiría pasar el tiempo navegando por páginas WEB en Internet que viendo la televisión, aunque aquéllos me expresaban desconfianza (todos los profesores de este tipo de materias reconocemos esas miradas que nos delatan a los ojos del auditorio como “profetas iluminados” con una “visión”…). Un par de años después,  sentí lo mismo  impartiendo un curso a empresarios del sector, les aseguraba que casi todos los vehículos acabarían incorporando un navegador GPS de serie en el que se consultaría  información geográfica de los callejeros y de la ubicación de determinados servicios, para poder llegar a ellos con facilidad. ¡Todavía recuerdo la expresión de un grupo de ellos que  murmuraba con mueca incredula: “…¡con lo fácil que es bajar la ventanilla y preguntar…!”Edit

En los tres o cuatro últimos meses afloran referencias en los blogs y foros de Sistemas de Información Geográfica (SIG) sobre la tecnología Layar y Android. Pero mientras muchos nos dedicamos a saborear cómo se materializa la información geográfica en aplicaciones de Realidad Virtual, como la Realidad Aumentada, quizá valdría la pena pararse a considerar la magnitud que puede alcanzar el fenómeno, sus consecuencias e incluso, permitirnos el lujo de recoger opiniones y sugerencias inspiradas en otras experiencias anteriores de propagación de tecnologías de la Información y la Comunicación (TIC) muy cercanas todavía en el tiempo.

3831042176_ccfd58d2a0_o Leer mas

Análisis de redes con OpenStreetMap y PgRouting en un ambiente web

OBJETIVO:

El objetivo de esta serie de artículos es proporcionar una metodología para crear servicios de enrutamiento (routing) en portales web utilizando datos de OpenStreetMap (http://www.openstreetmap.org) que serán añadidos a una geodatabase de PostgreSQL, con la extensión PostGIS y PgRouting.

Para llevar a cabo este servicio son necesarias las siguientes fases:

  1. Instalación de las extensiones PostGIS y PgRouting
  2. Importación de los datos de OSM
  3. Conversión a una geodatabase de PostGIS en PostgreSQL
  4. Explotación de una geodatabase con PgRouting.
  5. Diseño de la interfaz de usuario. Contenedor HTML y Javascript (Openlayers)
  6. Creación de lógica de enrutamiento en PHP

En la medida en que vaya finalizando los capítulos serán publicados en esta web. En este primer artículo se abordarán las tres primeras fases.

Leer mas

Hola Mundo con gvSIG 2.0 (y con Eclipse)

Este tutorial es una guía para desarrollar el famoso “Hola Mundo” en gvSIG 2.0. Se va a partir de un sistema operativo en el que se ha instalado previamente el entorno de desarrollo Eclipse con el plugin para SVN Subversive y a partir de este entorno, se va a describir paso por paso las acciones que se tienen que realizar para añadir una opción en el menú “Ayuda” de gvSIG llama “Saludo” que al pulsar sobre ella abrirá una ventana con el clásico “Hola Mundo”.

Este documento no pretende ser una guía de desarrollo de gvSIG 2.0.  Si se quiere disponer de toda la información de desarrollo es aconsejable visitar la web de documentación del proyecto. Leer mas

Integración de R en PostgreSQL. Mi primera función en pl/R.

En primer lugar, y para que ninguno de vosotros tenga impresión que no voy a hablar nunca de GIS, me gustaría tranquilizaros, y recordaros que en próximos artículos, yo o a quien le apetezca participar en este hilo, pasaremos a comentar usos de todo esto que estamos viendo orientado al tratamiento de la información espacial. Si hay alguien que quiera compartir sus experiencias con temas de R será bien recibido.

Este segundo artículo sobre tecnologías útiles para explotar toda la potencia de R se centra en el uso de R desde el PostgreSQL.

Como todos sabéis, tradicionalmente los Sistemas Gestores de Bases de Datos (SGBD), como PostgreSQL, Oracle, MySQL o Access han sido diseñados para guardar y gestionar gran cantidad de datos, por ello las posibilidades de análisis y salidas gráficas se han delegado mayormente en otros softwares como hojas de cálculo, paquetes estadísticos como SPSS, R o en nuestro caso en softwares SIG… pero eso se acabó  :-)   .

pl/R es un lenguaje de programación procedural que permite contar con toda la potencia de cálculo y salidas gráficas del paquete estadístico R, así como de su lenguaje de programación desde dentro de funciones de PostgreSQL.

Leer mas