Géolocalisation de photos et placement sur une carte

La géolocalisation des photos permet de résoudre (presque) le lancinant problème de tous les photographes amateurs: ou est-ce qu’a donc été prise cette f*** photo?

Pour géolocaliser des photos, il faut soit un appareil performant comportant un GPS (ou un téléphone du même métal), auquel cas les photos incorporeront dans leurs données EXIF les coordonnées GPS de la prise, ou alors, ayant enregistré la trace GPS du trajet (ben, oui, faut un minimum!), on va trouver une position approximative des photos en se basant sur l’heur de prise de vue et la position à ce moment là. C’est ce que j’utilise comme procédé: un logiciel fait ça très bien: GpicSync: http://fr.wikipedia.org/wiki/Gpicsync, ou http://code.google.com/p/gpicsync/. Je ne vais pas détailler l’utilisation: il suffit d’indiquer l’emplacement des photos, l’emplacement des traces GPX (oui, ça marche sur tout un ensemble de fichiers), ainsi que (très important) le décalage de temps entre le GPS et l’appareil photo (on recommande par exemple de prendre en photo l’écran du GPS, pour connaitre de manière sure le décalage), et de lancer le logiciel: on récupèrera des photos géolocalisées (avec même le nom des lieux éventuellement), et des miniatures,  ainsi qu’en option un fichier KML qui permettra, par simple lecture avec Google Earth de visionner le parcours et les photos positionnées dessus (les photos étant sur votre ordinateur), ou un fichier KML « web », les photos étant accessible sur un serveur web, photos dont vous aurez indiqué l’adresse de base au programme.

Tout cela c’est très bien, mais moi je voudrais placer mes photos sur une carte à moins sur mon site à moi! Et je veux le faire automatiquement, car il peut y avoir un grand nombre de photos.

Comme j’utilise le plugin OSM pour afficher les cartes et les traces, je voudrais l’utiliser aussi pour afficher les photos comme dans Google Earth. En spécifiant dans les paramètres de la carte OSM kml_file=…, je peux afficher les traces contenues dans le fichier KML, mais pas les photos. J’ai donc programmé un utilitaire qui transforme le fichier KML « web » en fichier CSV (d’extension TXT) compatible avec le fichier marqueurs d’OSM.

La démarche est donc la suivante:

  • obtention de l’adresse de base ou seront chargées les photos: il suffit de mettre un fichier dans la médiathèque du site WordPress et de copier l’adresse de base
  • géolocalisation des photos par GpicSync, obtention des miniatures et du KML « web », puis éventuellement réduction de taille des photos: ben oui, pas la peine de balancer 300 photos de 5Mo sur un serveur!
  • upload sur WordPress des photos réduites et des miniatures (thumbs) (c’est là qu’on comprend le A de ADSL: asymétrique, upload bien plus lent que download).
  • transfert des fichiers traces GPX sur WordPress: le plugin OSM permet d’autoriser les GPX comme fichiers multimedia.
  • génération du fichier TXT à partir du KML: j’utilise un utilitaire PHP en local sous Easyphp pour l’instant.
  • chargement du fichier TXT sur le serveur: là ça se corse, car pour des raisons de sécurité, les fichiers TXT ne peuvent pas être chargés comme multimédia: il faut donc, soit forcer l’autorisation par un plugin, mais ça constitue un trou de sécurité si vous n’êtes pas seul utilisateur sur votre WordPress, soit le charger par FTP directement dans le même dossier  que les photos par exemple.
  • créer l’article ou la page comportant la carte voulue en utilisant OSM, et en précisant les fichiers traces et le fichier TXT comme fichier de marqueurs.

Suivant la conversion obtenue, on peut afficher des vignettes cliquables, qui ouvriront un popup contenant une version réduite de la photo, cliquable éventuellement aussi pour visualiser la photo en taille complète, chaque photo étant positionnée à l’endroit de sa prise ou peu s’en faut, cela dépend évidemment de la précision de la résoluation des traces enregistrées.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *