Page 1 sur 2

[Mac] AppleScript pour modifier nom d'objectif dans les EXIF

Publié : Dim 20 Nov 2011 20:03
par iVoyger
Salut à tous !

Alors après m'être pas mal creusé la tête, j'ai enfin une manière simple de modifier le nom d'un objectif dans les EXIF de mes photos ! :D

Si certains se sont déjà penchés sur la question, ils seront vite tombés sur la très bonne application ExifTool, disponible sous Mac et PC. Cette application permet de changer quasiment toutes les données Exif mais elle a un gros inconvenant : c'est une application en ligne de commande ! Aucune interface hormis celle du terminal ...

Mais, pourquoi modifier ce nom ? :zinzin:

Dans les Exif des fichiers photo .arw ou .jpeg issus des appareils Sony, il y a deux champs renseignant l'objectif utilisé. Ces champs sont appelés "Tags" : il y a le Tag LensType et le Tag LensID.

Le LensType est le Tag le plus important car c'est celui utilisé par les logiciels tels que iPhoto, Aperture, DxO ou LightRoom pour indiquer quel objectif a été utilisé. Le Tag prend la forme d'un texte visible, tels que Minolta AF 100mm F2.8 Macro [New], mais il y a un code associé. Pour le Minolta AF 100mm F2.8 Macro [New], le code est : 2581.

Le Tag LensID se contente de reprendre la dénomination de l'objectif issu du LensType. Il ne semble pas être utilisé par aucun logiciel, il n'est pas vraiment intéressant pour ce que l'on veut.

_______________________________________________________________________________________________________________________

On va maintenant prendre l'exemple d'une photo réalisée avec un Sigma AF 105mm F2.8 EX [DG] Macro.

Il faut savoir que les objectifs de marque tierce tels que Sigma ou Tamron utilisent des codes pour le Tag LensType issu des objectifs Sony/Minolta, avec pour certains des décimales. Ainsi, le Sigma AF 105mm F2.8 EX [DG] Macro utilise plusieurs code :

- le code 25, correspondant à : Minolta AF 100-300mm F4.5-5.6 APO (D) or Sigma Lens

- le code 2581.2, dérivé du Minolta AF 100mm F2.8 Macro [New] dont le code est 2581.

Tout les objectifs référencés dans les Exif des fichiers Sony avec leur code sont disponibles ici : http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/Sony.html#LensType

Lorsqu'on lit les Exif de la photo avec Exiftool, on obtient ceci :

Image

Les Exif nous indiquent que la photo a soit été prise avec un Minolta AF 100-300mm F4.5-5.6 APO (D) soit avec un objectif Sigma. Si on essaye de modifier le Tag LensType avec Exiftool, en indiquant directement le nom Sigma AF 105mm F2.8 EX [DG] Macro, on obtient ceci :

Image

Image

Les deux Tag, LensType et LensID, ont maintenant changé : LensType indique maintenant que la photo a été prise avec un Minolta AF 100mm F2.8 Macro ou un objectif Sigma ou un objectif Tamron. LensID nous indique qu'elle a été prise avec un Sigma AF 105mm F2.8 EX [DG] Macro. Le résultat est le même si on essaie de rentrer la valeur numérique, le code 2581.2 (code du Sigma AF 105mm F2.8 EX [DG] Macro), avec la commande -n.
Le Tag LensType que l'on veut modifier n'est donc toujours pas bon. Inutile d'essayer de modifier le Tag LensID, ce n'est pas possible et de toute façon ce Tag n'est pas utilisé.


Il ne reste alors qu'une solution, et c'est celle proposée par le script que je mets à votre disposition : créer un nouveau Tag !

Et oui, cela est possible, on peut créer un nouveau Tag dans les Exif. On va donc créer un Tag nommé Lens.

Voici se qui se passe quand on créer le Tag avec Exiftool :

Image

Image

On voit sur la deuxième capture d'écran qu'un nouveau Tag est apparu, le Tag Lens qui indique Sigma AF 105mm F2.8 EX [DG] Macro. Et bien magie (ou pas), c'est ce nouveau Tag qui va être utilisé dans iPhoto, Aperture, Aperçu ou LightRoom ! Il n'est par contre pas utilisé par DxO.

En conclusion : il n'est pas possible de réellement modifier le modèle d'objectif dans une photo et que cela devienne pleinement exploitable (avec les corrections d'optique dans DxO notamment). On va en quelque sorte tricher, en créant un nouveau Tag qui sera pris en compte pour afficher le nom de l'objectif.

J'espère avoir été assez complet et assez clair :mrgreen:

Si vous voulez plus d'infos concernant les Tags et les valeurs contenus dans les Exif des photos issues d'appareils Sony : http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/Sony.html

_______________________________________________________________________________________________________________________

Comme dis plus haut, le logiciel Exiftool est en ligne de commande se qui n'est pas forcement pratique et à la porté de tous. Il est heureusement possible de le combiner avec un AppleScript généré par Automator pour avoir un minimum d'interface et pour pouvoir éditer plusieurs fichiers en même temps !

Très important : pour pouvoir utiliser se script, il faut que vous ayez au préalable installé ExifTool sur votre Mac ! Vous pouvez le trouver à cette adresse : http://www.sno.phy.queensu.ca/~phil/exiftool/

Le lien pour obtenir le script : https://rapidshare.com/files/409026483/AppleScript_Exif.app.zip
(le lien à une limite de validité dans le temps s'il n'est pas téléchargé pendant une période. N'hésitez à m'envoyer un mp pour que je puisse le re-uploader)

Nouveautés 13/12/11 : plus compréhensible au moment de rentrer le nom de l'objectif et nouvelle icône.

Le script fonctionne avec les versions 8.71 et 8.72 d'Exiftool, je n'ai pas pu tester avec les versions précédentes.

Le script fonctionne sur OSX 10.7.X Lion, je n'ai pas pu le tester sous 10.6 Snow Leopard ou 10.5 Leopard. Si jamais il ne marche pas avec ces versions, n'hésitez pas à m'envoyer un mp. Je pourrais vous fournir le code du script pour que vous puissiez le développer avec Automator (c'est assez simple) ; en retour, envoyez-moi la version compatible, que je puisse l'uploader et la proposer sur se fil.

La modification du nom de l'objectif avec le nouveau Tag est prise en compte dans Aperçu, iPhoto, Aperture, LightRoom. Ce n'est pas pris en compte avec DxO.

_______________________________________________________________________________________________________________________

Présentation et utilisation en vidéo !

phpBB [media]


_______________________________________________________________________________________________________________________

Rappel !

Pour éviter toute erreur, je vous indique de nouveau la manière de rentrer le nom de l'objectif quand l'application vous le demande.

En reprenant l'exemple du Sigma 105 Macro, il faut inscrire le texte suivant :

Code : Tout sélectionner

{"Sigma AF 105mm F2.8 EX [DG] Macro"}


Voilà j'espère que ça vous aura été utile ! :)

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Lun 21 Nov 2011 18:51
par iVoyger
Nouvelle version et nouvelle vidéo, histoire de simplifier la chose :commeca:

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Lun 21 Nov 2011 20:58
par nelson
Bonsoir
Très intéressant ton script. Est-ce que tu as essayé avec d'autres logiciels qu'Aperçu pour lire les exifs ? J'ai remarqué qu'avec certains logiciels la reconnaissance des objectifs n'était pas la même, par ex entre DxO et Aperture.

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Lun 21 Nov 2011 22:16
par iVoyger
Alors je n'ai pas DxO mais je peux expliquer pourquoi : il y a en réalité 3 champs qui vont renseigner l'objectif utilisé dans les Exif.

Le premier, c'est le champs LensID, que l'on peut modifier.
Chaque objectif Sony ou Minolta possède sont propre ID, les objectifs de marques tierces ont des ID dérivés de ceux de Sony ou Minolta par correspondance. Je m'explique : je prends l'exemple de l'ID 28 ; cet ID correspond a Minolta/Sony AF 100mm F2.8 Macro (D) or Tamron Lens. Et l'objectif Tamron ayant un dérivé de l'ID 28 est le Tamron SP AF 90mm F2.8 Di Macro qui a l'ID 28.1 . Seulement le .1 n'est pas pris en compte pour afficher le nom de l'objectif et c'est donc le nom correspondant à l'ID 28 qui sera affiché.

Il y a ensuite le champs LensType qui reprend la dénomination correspondant à l'ID. Par exemple, pour une photo ayant l'ID 28, le champs LensType affichera : Minolta/Sony AF 100mm F2.8 Macro (D) or Tamron Lens. Il ne semble pas possible de modifier se champs

Et enfin il y a le champs Lens. Se champs reprends aussi la dénomination correspondant à l'ID, mais en se contentant de la première partie. Pour une photo prise avec un Tamron SP AF 90mm F2.8 Di Macro, l'ID étant 28, le champs Lens affichera simplement Minolta/Sony AF 100mm F2.8 Macro (D). C'est cette partie que l'on va modifier avec le script !

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Lun 21 Nov 2011 22:56
par nelson
Ok merci pour les precisions

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Lun 21 Nov 2011 22:57
par iVoyger
De rien ! :commeca:

Tu comptes l'utiliser pour ton 105 ?

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 22 Nov 2011 09:27
par nelson
Là je n'ai pas trop le temps mais il faut quand même vérifier quelques truc car j'utilise le plus souvent Aperture et parfois DxO et si on modifie des choses sur le Raw avec un autre logiciel, Dxo ne peut plus le traiter.

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 22 Nov 2011 13:57
par matieu
Je regarderai ça de près ce soir. Merci ;)

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 22 Nov 2011 16:04
par iVoyger
De rien ! :commeca:

N'hésitez pas à faire des retours sur le fonctionnement :)

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 13 Déc 2011 11:55
par iVoyger
Petite mise à jour de l'application, voir description ! :wink:

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 13 Déc 2011 13:20
par nelson
Cool merci. J'ai eu un peu de temps pour essayer.
Alors qq problèmes non pas de mise en fonction mais de résultats. Dans DxO il n'y a plus de nom d'objectif du tout (alors qu'avant j'avais le Minolta 100-300 au lieu du Sigma 105 macro) (copie sur fond noir)
Dans Apercu, j'ai les deux noms. cf copie d'écran.
D'autre part, je ne sais pas si cela aurait un effet , dans DxO par exemple, ou PTLens pour "tricher" sur le type d'objectif. Ou si le script ne fait que modifier "cosmétiquement" le nom de l'objectif ??
Une idée ?
A bientôt merci

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 13 Déc 2011 15:23
par iVoyger
Alors effectivement, la correction n'est que "cosmétique". On forcer à changer le nom d'objectif affiché dans le champs désigné malgré le numéro ID.

Ensuite, pour ce qui est des autres champs qui n'indique pas le Sigma que tu as modifié, c'est lié à ce que j'avais dis plus haut : il existe plusieurs champs pour renseigner le type d'objectif (mais un seul semble modifiable) :

iVoyger a écrit :Alors je n'ai pas DxO mais je peux expliquer pourquoi : il y a en réalité 3 champs qui vont renseigner l'objectif utilisé dans les Exif.

Le premier, c'est le champs LensID, que l'on peut modifier.
Chaque objectif Sony ou Minolta possède sont propre ID, les objectifs de marques tierces ont des ID dérivés de ceux de Sony ou Minolta par correspondance. Je m'explique : je prends l'exemple de l'ID 28 ; cet ID correspond a Minolta/Sony AF 100mm F2.8 Macro (D) or Tamron Lens. Et l'objectif Tamron ayant un dérivé de l'ID 28 est le Tamron SP AF 90mm F2.8 Di Macro qui a l'ID 28.1 . Seulement le .1 n'est pas pris en compte pour afficher le nom de l'objectif et c'est donc le nom correspondant à l'ID 28 qui sera affiché.

Il y a ensuite le champs LensType qui reprend la dénomination correspondant à l'ID. Par exemple, pour une photo ayant l'ID 28, le champs LensType affichera : Minolta/Sony AF 100mm F2.8 Macro (D) or Tamron Lens. Il ne semble pas possible de modifier se champs

Et enfin il y a le champs Lens. Se champs reprends aussi la dénomination correspondant à l'ID, mais en se contentant de la première partie. Pour une photo prise avec un Tamron SP AF 90mm F2.8 Di Macro, l'ID étant 28, le champs Lens affichera simplement Minolta/Sony AF 100mm F2.8 Macro (D). C'est cette partie que l'on va modifier avec le script !

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 13 Déc 2011 17:40
par nelson
OK merci.

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 13 Déc 2011 18:01
par iVoyger
Pour DxO, comme c'est un logiciel qui gère les corrections pour les objectifs, il a peut-être besoin d'avoir la dénomination exacte. Pour ton 105 Sigma, ce n'est pas Sigma 105 Macro EX DG mais Sigma AF 105mm F2.8 EX DG Macro. Ça vaut le coup d'essayer :wink:

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 13 Déc 2011 18:20
par nelson
Bien essayé mais ça ne change rien.

Re: [Mac] AppleScript pour modifier nom d'objectif dans les

Publié : Mar 13 Déc 2011 18:52
par iVoyger
Ok je bosse dessus, je pense avoir trouvé le moyen de modifier toutes les données !

Surement une mise à jour dans la soirée ! :D