Aucun message portant le libellé Ubuntu. Afficher tous les messages
Aucun message portant le libellé Ubuntu. Afficher tous les messages

lundi, octobre 27, 2014

Comment générer un histogramme des focales d'un ensemble de photos.

Je prévois acheter une nouvelle lentille pour ma caméra. Je sais que je veux une lentille rapide (au plus f2.8). Je veux aussi une lentille versatile qui couvrira une étendue maximale de longueur focale. Je sais que je ne peux avoir une lentille 18-200/2.8, ça n'existe pas. Je sais que je devrai me contenter d'une étendue plus restreinte.

Quel est le meilleur moyen de découvrir cet intervalle? Ayant toutes mes photos sur un de mes serveurs, je peux savoir quelle est la focale utilisée pour chacune d'entre elles à l'aide des données EXIF qui sont enregistrées dans le fichier de chacune des photos. Comme j'ai pas mal de photos, je ne peux faire ça manuellement, il faut automatiser.

C'est la que bash entre en jeu!

1ere étape, installer EXIF. Sous Ubuntu, rien de plus simple:
sudo apt-get install exif
2e étape, aller dans le répertoire qui contient les photos:
cd ~/Photos
3e étape, l'incantation magique:
sudo find . -iname DSC_????.JPG -print0 | xargs -0 -I {} exif -t 0x920a "{}" | grep Value | cut -d ' ' -f 4 | sort -n | uniq -c | awk '{print $2, $1}' > ~/Documents/histogrammefocale.txt
Cette étape mérite quelques explications:
  • sudo find . -iname DSC_????.JPG -print0 Trouve tout les fichiers qui correspondent au pattern des noms de fichier de mes caméras Nikon et les passe à l'étape suivante
  • xargs -0 -I {} exif -t 0x920a "{}" Extrait la longueur focale de la photo à partir des métadonnées EXIF du fichier et la passe a l'étape suivante
  • grep Value Ne garde la ligne que si elle contient "Value" et la passe à l'étape suivante
  • cut -d ' ' -f 4 Ne garde que la valeur de la focale et la passe à l'étape suivante
  • sort -n Trie toute les valeurs de focale en ordre croissant et les passe à l'étape suivante
  • uniq -c Prend la liste triée des focales et compte combien fois chaque focale est répétée. Le nombre d’occurrence suivie de la focale est retournée, une paire par ligne. ces valeurs sont passées à l'étape suivante
  • awk '{print $2, $1}' Inverse les 2 colonnes et les copies finalement dans le fichier ~/Documents/histogrammefocale.txt
Voilà donc comment je génère le fichier d'histogramme. par la suite il ne reste qu'à l'importer dans votre feuille de calcul préférée pour obtenir un beau graphique!



jeudi, avril 05, 2007

Installation de Ubuntu

Je n'ai pas eu de veine avec mon installation de MythTV. J'ai brulé la carte-mère de la vieille babasse de ma douce en installant une nouvelle carte vidéo.
J'ai transplanté toutes les cartes et les drives dans un Compaq Deskpro EN pour voir si son P2-350 serait assez fort pour faire fonctionner MythTV. Comme système d'exploitation, j'ai décidé de donner la chance à Ubuntu 5.10 au lieu de mon habituel Gentoo. Je me suis fait bruler la dernière fois que j'ai essayé d'installer MythTV par-dessus Gentoo.
Seul problème à ce stade-ci: Le Compaq ne reconnaît pas mon drive de 400GB. Il fallait s'y attendre. Je devrai donc enregistrer mes émissions sur un volume monté soit en NFS ou en iSCSI
Ce qui m'impressionne le plus jusqu'ici est combien facile fut l'installation. Le début du processus (jusqu'au reboot) est le même que sous Debian. Puis vient ensuite une lente installation de nombreux packages. Quand ceux-ci sont tous installés et configurés, X démarre et un écran de login graphique nous est présenté. Simple et élégant. Une fois dans l'environnement, la mise-à-niveau se fait sans peine. Un plaisir à installer comparer à Debian ou Slackware.
La prochaine étape consistera à installer MythTV à l'aide de ces instructions.