#1 Le 23/09/2009, à 15:56
- pec
[résolu] script qui sélectione des images suivant leur orientation
Bonjour
Tout d'abord, je précise que je ne m'y connais rien en script !
Je cherche juste un petit script à mettre dans mon dossier de script pour que, sous nautilus, je puisse sélectionner uniquement des images orientées en portrait OU en paysage. Ceci me permettrait de les séparer facilement.
Merci à vous
Dernière modification par pec (Le 23/09/2009, à 18:38)
LINUX est à une jolie fille ce que Windows est à une prostituée. La jolie fille, il faut la séduire et la comprendre pour obtenir ce que l'on désire, la prostituée , il suffit de la payer, et surtout bien se protéger.
Hors ligne
#2 Le 23/09/2009, à 16:34
- Grünt
Re : [résolu] script qui sélectione des images suivant leur orientation
Une piste:
http://raymond.ostertag.free.fr/blog/index.php?2008/07/08/163-exif-tags
Red flashing lights. I bet they mean something.
Hors ligne
#3 Le 23/09/2009, à 16:43
- pec
Re : [résolu] script qui sélectione des images suivant leur orientation
Désolé mais c'est pas "une piste" pour moi vu que je n'y connais rien en programmation....
Et de plus, ce sont des photos numérisées, donc je ne sais pas si elles "possèdent" un EXIF
Merci quand même
Si quelqu'un pense pouvoir faire quelque chose avec ça
for image in "$@"; do
width=`identify -format "%w" $image`
height=`identify -format "%h" $image`
que j'ai trouvé sur cette page :
http://forum.ubuntu-fr.org/viewtopic.php?id=308344
Cette commande renvoi la largeur et longueur. Est-il possible de sélectionner les fichiers qui possèdent une longueur supérieure à la largeur par exemple??
Merci
Dernière modification par pec (Le 23/09/2009, à 16:47)
LINUX est à une jolie fille ce que Windows est à une prostituée. La jolie fille, il faut la séduire et la comprendre pour obtenir ce que l'on désire, la prostituée , il suffit de la payer, et surtout bien se protéger.
Hors ligne
#4 Le 23/09/2009, à 17:37
- AnsuzPeorth
Re : [résolu] script qui sélectione des images suivant leur orientation
Bjr,
Ben le dernier message du post donne l'exemple !
#! /bin/bash
for image in "$@"
do
format=$(identify -format "%w %h" "$image")
larg=$(cut -d " " -f1 <<< "$format")
haut=$(cut -d " " -f2 <<< "$format")
if [ "$haut" -gt "$larg" ]; then
convert "$image" -adaptive-resize 480 -quality 74 "$image"
else
convert "$image" -adaptive-resize 640 -quality 74 "$image"
fi
done
exit
A savoir que ce script s'utilise avec un argument, si tu veux faire le taf dans un dossier precis/
#! /bin/bash
DOSSIER="/home/user/chemin/vers/dossier_image"
cd "$DOSSIER"
ls -1 | while read image
do
format=$(identify -format "%w %h" "$image")
larg=$(cut -d " " -f1 <<< "$format")
haut=$(cut -d " " -f2 <<< "$format")
if [ "$haut" -gt "$larg" ]; then
#ici mettre les commandes voulue
echo "hauteur superieur à largeur. Image : $image"
else
#ici mettre les commandes voulue
echo "largeur superieur à hauteur. Image : $image"
fi
done
exit
Il faut imagemagick pour utiliser la commande identify.
Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script (Hors ligne)
Hors ligne
#5 Le 23/09/2009, à 17:50
- pec
Re : [résolu] script qui sélectione des images suivant leur orientation
ça me parait avancer merci !
Par contre je ne sais quelle commande mettre pour sélectionner les fichiers ou bien pour les bouger dans un autre dossier.
Il faut donc que je remplace
#ici mettre les commandes voulue
Par
cp "$image" /home/pec/bureau/portrait
Par exemple?
Y a-t-il une commande qui permet de sélectionner les fichiers en question dans la fenêtre de nautilus?
LINUX est à une jolie fille ce que Windows est à une prostituée. La jolie fille, il faut la séduire et la comprendre pour obtenir ce que l'on désire, la prostituée , il suffit de la payer, et surtout bien se protéger.
Hors ligne
#6 Le 23/09/2009, à 18:29
- pec
Re : [résolu] script qui sélectione des images suivant leur orientation
Super !! j'y suis arrivé !
Donc, le script me permet de copier les images en format paysage dans un autre dossier tout en leur appliquant une rotation de 90° horaires. De plus, les images en format portrait sont copiées dans ce même dossier de destination sans être transformées. Ceci me permet en fait de faire des planches contact avec un greffon sous Gimp. Du coup, elles sont toutes orientées de la même manière sur la planche contact....Youpii!!
Le script est enregistré sous /home/USER/.gnome2/nautilus-scripts ce qui permet de l'activer par un clic-droit dans le dossier contenant les photos à traiter
Voilà le script, à adapter selon les besoins :
#! /bin/bash
DOSSIER="NAUTILUS_SCRIPT_CURRENT_URI"
cd "$DOSSIER"
ls -1 | while read image
do
format=$(identify -format "%w %h" "$image")
larg=$(cut -d " " -f1 <<< "$format")
haut=$(cut -d " " -f2 <<< "$format")
if [ "$larg" -gt "$haut" ]; then
convert "$image" -rotate 90 "/media/donnees/Photos/planches-contact/$image"
echo "largeur superieur à hauteur. Image : $image"
else
cp "$image" "/media/donnees/Photos/planches-contact/$image"
echo "hauteur superieur à largeur. Image : $image"
fi
done
exit
Merci AnsuzPeorth pour ton aide précieuse
Dernière modification par pec (Le 23/09/2009, à 18:36)
LINUX est à une jolie fille ce que Windows est à une prostituée. La jolie fille, il faut la séduire et la comprendre pour obtenir ce que l'on désire, la prostituée , il suffit de la payer, et surtout bien se protéger.
Hors ligne