Vintherine : le blog

Aller au contenu | Aller au menu | Aller à la recherche

lundi 14 septembre 2015

Transférer et géolocaliser mes photos : un petit script

En matière de classement des photos, comme dans bien d'autres domaines, j'ai le sentiment de ramer à contre courant. L'heure est à l'utilisation de logiciels graphiques sophistiqués, prenant en charge depuis l'insertion de la carte SD (ou la connexion de l'APN) jusqu'au téléversement sur l'album en ligne. Digikam fait, paraît-il, cela très bien, mais je le trouve trop lourd et d'un emploi mal aisé. Je fondais quelques espoir sur oqapy, malheureusement je ne le trouve plus sur les dépôts Archlinux, même pas dans AUR... J'aime assez gthumb mais il ne sait pas faire tout ça.

Bref, je continue à travailler à la mimine selon un processus bien établi :

  • Créer un répertoire au nom significatif tant du point de vue chronologique que géographique (aaaammjj_Localisation)
  • Y copier les fichiers JPG et les renommer selon un shéma analogue (aaaammjj_hhmmss_Localisation_NomOriginel.JPG)
  • Y copier le ou les éventuel(s) fichiers gpx associés et géolocaliser les images
  • Sélectionner, recadrer et éventuellement retoucher les meilleurs clichés avant de les transférer vers notre album Piwigo

Pour renommer les photos j'utilise exiv2 de la manière suivante :

exiv2 -r %Y%m%d_%H%M%S_Localisation_:basename: mv *.JPG

Pour géolocaliser j’utilise Gpscorrelate, que j'ai présenté ici, qui est malheureusement abandonné par son créateur mais a l'avantage de disposer à la fois d'une version graphique et d'une version en ligne de commande.

gpscorrelate -g monFichierTrace.gpx -z [valeur] *.JPG

La valeur à associer à l'option -z est le décalage du fuseau horaire, par exemple +1:00 pour l’heure normale d’Europe centrale (CET : Paris, Bruxelles, Genève…) et +2:00 pour l’heure d’été d’Europe centrale (CEST). Ceci dans la mesure ou l’horodatage des photos est faite en heure locale et celle du GPS en UTC, ce qui est en principe le cas. Il y a d'autres options possible, voir la  documentation.

Bon, ce n'est pas trop compliqué, mais il faut se souvenir des options, tout ça.... Pourquoi ne pas automatiser le processus dans un petit script ?

Lire la suite...

samedi 9 mai 2015

Vers la fin du RTFM ?

Les lecteurs de linuxfr l'auront noté au détours d'un commentaire de Xinfe : eg est, pour les cas les plus simples, une alternative séduisante à man. Si comme moi vous ne connaissez rien de plus ennuyeux que de devoir consulter des pages entières de manuel regorgeant d'options que vous n'utiliserez jamais alors qu'un simple exemple suffirait à votre bonheur alors eg est fait pour vous. 

Pour l'installer pas de souci sous Archlinux, le paquet est dans AUR, mais je n'en ai pas trouvé pour Ubuntu et dérivés

Les fichiers exemples sont stockés au format Markdown dans deux répertoires : celui par défaut, fourni par le paquet (/usr/lib/python3.4/site-packages/eg/examples/ sur mon ordi) et un éventuel répertoire personnalisé. Pour indiquer l'emplacement de ce dernier (et modifier éventuellement le chemin de celui par défaut) il faut créer un fichier ~/.egrc sous la forme suivante :

[eg-config]
examples-dir = /un_autre/répertoire/
custom-dir = ~/mon/répertoire/personnalisé

Pour créer un nouveau fichier d'exemple le plus simple est évidement de s'inspirer d'un fichier fourni avec le programme. Son nom sera composé du nom de la commande suivi de l’extension .md

On obtient la liste des fichiers exemples disponibles par l'option --list : eg --list

Ce qui donne initialement ifconfig whereis ls less cut which more ps whatis rm locate chmod find touch grep sudo xargs cat ln mv cd mkdir tr scp pwd kill od hexdump du cp chown sort curl awk su top tar wc gcc

Ironie de l'histoire il n'existe ni page man ni page eg consacrées à eg. Mais la documentation sur le site est assez claire (mais en anglais).

Pour ma part je me promets de contribuer prochainement en rédigeant une page sur la gestion des meta-données des photos avec exiv2. Y'a du boulot....

mercredi 19 novembre 2014

Copie spéciale

Cela fait quelques temps que je pensais à un petit script pour me simplifier la vie dans certaines circonstances :

  • quand le clavier est verrouillé en majuscule et que je ne m'en rends compte qu'au bout d'une minute (et oui, je ne sais pas taper sans regarder mes doigts) !
  • quand je dois copier coller une zone numérique dont le séparateur décimal est un point au lieu d'une virgule (ou inversement)
  • quand je veux traduire à la volée un texte d'un document quelconque ailleurs que sur le web (page de man par exemple)

Je n'imaginais pas à quel point cela pouvait être facile... à une toute petite difficulté près.

Lire la suite...

Bidouillage : des leds pour capslock et numlock en bash

Les leds capslock et numlock sur ma machine sont ridiculement petits et mal placés. Dans la plupart des environnement de bureau (KDE, Gnome, XFCE, Cinnmon, Mate, Unity...) il y a des applets pour les remplacer, mais comme je n'utilise en lieu et place que d'un simple gestionnaire de fenêtre (OpenBox), je me suis trouvé assez dépourvu. J'ai cherché sur le web une application qui se loge dans le systray, mais sans succès.

D'où l'idée d'en faire une à ma sauce, mais comme je renvoie toujours au surlendemain l'apprentissage de Python  j'ai encore eu recours à un infâme bidouillage en bash. Enfin, ça fonctionne, et même plutôt bien, alors...

Les dépendances :
  • xterm pour exécuter le script dans une fenêtre facile à gérer
  • alltray pour envoyer la fenêtre dans le systray
  • xset pour connaître l'état du clavier (capslock et numlock)
  • xseticon (AUR) pour changer son icône à chaque changement d'état.
  • aplay, installé par alsa donc en principe présent

Lire la suite...