Comment faire pivoter automatiquement les images en fonction des données EXIF?

13

Je sais comment le faire manuellement . Maintenant, je voudrais automatiser cela sur la base des données EXIF. J'ai déjà exiftoolinstallé, mais on dirait qu'il ne peut que lire les données, mais ne peut pas faire pivoter l'image.

Il y a une question similaire sur SU à propos d'Ubuntu . Mais je cherche des solutions possibles avec OSX.

LA_
la source
Cette réponse à votre question citée mentionne XnView. En attendant, il existe également XnViewMP qui est très similaire, mais fonctionne également sous MacOS .
mpy

Réponses:

6

Vous pouvez utiliser nconvertce logiciel gratuit (pour un usage privé et éducatif) et disponible pour Win, Linux et Mac .

Cet outil peut faire pivoter les images JPEG sans perte selon la balise d'orientation EXIF:

nconvert -jpegtrans exif -o 'rotated_%.jpg' *.jpg

Cette commande convertira par lots tous les fichiers JPEG du répertoire actuel et ajoutera leur nom au début rotated_. Ceci est contrôlé par l' -ooption, reportez-vous à nconvert -helppour plus de possibilités:

-o filename       : Output filename
   Use # to specify position of numeric enumerator
   Use % to specify source filename
   Use $ to specify full source pathname
   Use $$ to specify source folder name
mpy
la source
Merci, mpy. Où dois-je placer nconvertune fois téléchargé et décompressé (afin qu'il ne soit disponible que par son nom)? J'ai essayé de le déplacer vers Applications, mais cela n'a pas aidé.
LA_
@LA_: Dans un répertoire qui se trouve dans votre PATH (vérifiez la sortie de echo $PATH). Sous Linux, un endroit habituel est ~/bin, mais je ne peux rien dire sur OSX, désolé. Dans certaines circonstances, vous devez émettre rehash(ou démarrer un nouveau terminal) après avoir déplacé un exécutable vers un autre répertoire.
mpy
15

Vous pouvez utiliser le jhead gratuit (qui utilise lui-même jpegtran ).

Pour corriger une image nommée "image.jpg" il suffit de taper:

jhead -autorot image.jpg

Pour corriger tous les JPG contenant des données EXIF ​​dans le dossier actuel, utilisez:

jhead -autorot *.jpg

Si une fois pivotées, les icônes de vignettes ne s'affichent pas correctement, vous pouvez les actualiser en:

  1. Créez un nouveau dossier (conservez le nom sans titre)
  2. Déplacez les images affectées dans le dossier
  3. À l'aide de l'affichage en colonnes, replacez les images dans le dossier d'origine
  4. Supprimer le dossier vide sans titre
harrymc
la source
Ceci est mon préféré - je me suis souvenu que jpegtran avait eu des problèmes avec la suppression des données EXIF. Un must have avant d'envoyer des photos par e-mail, qui seront affichées avec Chrome ou un autre navigateur ne respectant pas l'orientation EXIF!
Tomasz Gandor
1

Ce n'est pas une solution scriptée. J'aime cette façon car elle me permet de changer d'autres aspects des photos en une seule étape.

La solution simple possible consiste à utiliser Google Picasa.

Après avoir ajouté des images, toutes les photos sont automatiquement tournées pour être affichées. Si l'image doit faire l'objet d'une rotation automatique dans le fichier, il suffit d'appuyer sur le bouton Enregistrer du dossier d'images. Cela enregistrera toutes les images dans le dossier avec une rotation corrigée. Picasa est également disponible pour OS X et fonctionne sous Linux sous Wine.

Dee
la source
Picasa a été interrompu par Google.
Blazemonger
0

Si vous souhaitez utiliser Automator pour cela, vous pouvez simplement utiliser Rotation d'images (180 degrés) deux fois dans le flux de travail.

Par exemple, j'utilise une action d'automate qui convertit toutes les images en JPEG, les fait pivoter de 360 ​​degrés (en raison du problème de l'OP), puis les met à l'échelle à 1024 pixels de large. Exécutez l'action, sélectionnez les fichiers, profitez! :)

Dwight Brown
la source