miércoles, 2 de enero de 2013

Georeferenciar fotos

Las cámaras con GPS incorporado, que cada vez son más populares, permiten grabar en el fichero de la imagen los datos de ubicación y, con un poco de habilidad, podemos crear mapas personalizados con nuestras fotos.

Esto es posible porque los ficheros de imágenes además de la información necesaria para construir la imagen sobre la pantalla contiene otra información que no tiene nada que ver con la propia imagen. A esta información se la llama metadatos. Ya vimos los metadatos en los documentos ofimáticos y como manipularlos.

Información oculta pero accesible.

Los metadatos pueden ser de tres tipos:

Identificativas: modelo, tipo.

De la foto: fecha y hora, apertura de diafragma, tiempo de exposición, datos del GPS y cualquier otra medida que haya podido tomar los sensores de la cámara

De autor. Información personalizada del autor.

Normalmente esos datos se generan de forma automática con la excepción de la información de autor que además puede ser introducida de forma manual.

Con la herramienta EXIFTOOL que esta disponible tanto para Linux como para Windows podemos ver la información contenida en los metadatos de una fotografia.

Parte de la información:




Y la parte con la información geográfico, si está presente:




La ubicación.

Los datos que nos interesan para la ubicación de las fotos son los datos del GPS, siempre y cuando la camara tenga GPS.
Pero.... ¿y si no lo tiene?

Al campo con la cámara.

Muchas veces, sobre todo entre excursionistas es fácil que se lleven ambos dispositivos: el GPS para ayudarnos en la orientación y la cámara de fotos para llevarnos a casa esos paisajes que vamos descubriendo durante la excursión.

En casa volcamos al ordenador toda la información sobre nuestra maravillosa excursión. Por un lado la fotos, por otro lado el track del GPS.

El reto es: ¿Y si pudiéramos llevar la información que hemos grabado con el GPS y llevarla a los metadatos del las fotos?.

La clave es seleccionar el registro del track que se estaba grabando cuando se hizo la foto. ¿Hay alguna información común que permita relacionar ambos sucesos?.

La hay: el momento en que se hizo la foto.

El proceso no puede ser entonces más sencillo:

Extraigo la fecha y hora de los metadatos de la foto y seleccionamos el registro del track cuya fecha hora coincida (o esté lo mas cercano posible).

Solo un pequeño requisito: la fecha y hora de la cámara debe estar puesta correctamente. No es necesario una sincronización al segundo ya que estamos tratando con información relativamente precisa.

Conceptualmente el proceso en sencillo. Una vez entendido el proceso vamos ha buscar una herramienta que nos haga este proceso.

Yo uso  GPicSync que es freeware.

Simplemente hay que decirle cual es el directorio donde tenemos las fotos, cual es el fichero de track (admite ficheros Garmin y NMEA) y, opcionalmente, el nombre del  fichero de Google maps  si queremos que nos genere un fichero para posteriormente tratarlo con este programa.

Para este ejemplo le hemos indicado que además de georeferenciar las fotos nos genere un fichero kmz


Le damos al botón Syncronize! et voilá...

Si abrimos el fichero generado en Google Earth podemos ver el resultado:



Un poco más en profundidad.

Analicemos el log de la sincronización. Hemos sincronizado dos fotos y nos dice lo siguiente:

Starting to generate a Google Map file (doc-web.kml) in the picture folder ...

(Found 25062011080.jpg ... : WARNING: DIDN'T GEOCODE, no track point below the maximum time range ( 300 s) : 2011-06-25-14:46:46 time difference (s)= 2770
For information nearest trackpoint was at lat=40.7981159 long=-2.1545944

(Found 25062011060.jpg ...taken 2011-06-25-14:00:08, writing best latitude/longitude match to picture: N 40.7981423 ,W -2.1546282 : time difference (s)= 21

*** FINISHED GEOCODING PROCESS ***


El primer mensaje nos dice que no ha encontrado un registro de track cercano y que el más cercano está a... !2770 segundos¡.
Salvo que tengamos muy claro lo que pasó en ese momento lo más lógico sería descartar esa foto. Observemos que el tiene un tiempo de aviso de 300 segundos.
En la segundo foto nos dice que ha encontrado un registro de track a solo 26 segundos lo que es una razonable diferencia de tiempo (salvo que tiremos la foto desde un tren de Alta Velocidad)

Para aquellos que no se sientan muy cómodos con las líneas de comando indicar que este programa trae  además un visor de metadatos de la foto.

También  nos permite reescribir los datos para realizar ajustes sobre la información o eliminar información que no queramos que forme parte del fichero.














No hay comentarios:

Publicar un comentario