Forum Puppy Linux - Toutou Linux - Astuces - Aide

Forum Francophone de Puppy/Toutou Linux => Graphisme => Discussion initiée par: Rantanplan le Dimanche 19 Avril 2026, 18:45:56

Titre: Les métadonnées de nos photos avec exiv2
Publié par: Rantanplan le Dimanche 19 Avril 2026, 18:45:56
Bonjour tout le monde,


exiv2 est un utilitaire en ligne de commandes qui permet de manipuler les métadonnées Exif des photos numériques.
Par manipuler, il faut entendre lister, modifier, supprimer, ajouter des métadonnées, commentaires.

Les métadonnées correspondent à des informations contenues dans le fichier de l'image : elles sont "invisibles" directement. Pour en prendre connaissance, on recourt à un utilitaire en ligne de commandes ou graphique (i.e., XnView).

Toutou Linux SlaXen 6.0 inclut nativement exiv2 version 0.23 001700 (32 bit build).

Ce modeste article constitue une prise en main d'exiv2, on y verra comment lister les informations, ajuster la date de la prise de vue, supprimer les métadonnées, ajouter un commentaire.

Lister les métadonnées Exif
Commande :

# exiv2 pr -p a IMG_20000714_131415036.jpg 
 Exif.Image.ImageDescription                  Ascii      14  Exif_JPEG_420
 Exif.Image.Make                              Ascii      5  MonAppareilPhoto
 Exif.Image.Model                            Ascii      11  Alpine-Renault-V8
 Exif.Image.Orientation                      Short      1  (0)
 Exif.Image.XResolution                      Rational    1  72
 Exif.Image.YResolution                      Rational    1  72
 Exif.Image.ResolutionUnit                    Short      1  inch
 Exif.Image.Software                          Ascii      24  Software Version v1.1.0
 Exif.Image.DateTime                          Ascii      20  2000:07:14 13:14:15
 Exif.Image.Artist                            Ascii      13  Lui-même
 Exif.Image.YCbCrPositioning                  Short      1  Centered
 Exif.Image.ImageWidth                        Long        1  3120
 Exif.Image.ImageLength                      Long        1  4160
 Exif.Image.Copyright                        Ascii      26  Copyright,Machintruc,2000
 Exif.Image.ExifTag                          Long        1  442
 Exif.Photo.ExposureTime                      Rational    1  1/33 s
 Exif.Photo.FNumber                          Rational    1  F2
 Exif.Photo.ISOSpeedRatings                  Short      1  200
 Exif.Photo.ExifVersion                      Undefined  4  2.20
 Exif.Photo.DateTimeOriginal                  Ascii      20  2000:07:14 13:14:15
 Exif.Photo.DateTimeDigitized                Ascii      20  2000:07:14 13:14:15
 Exif.Photo.ComponentsConfiguration          Undefined  4  YCbCr
 Exif.Photo.ApertureValue                    Rational    1  F2
 Exif.Photo.BrightnessValue                  SRational  1  (0/0)
 Exif.Photo.MaxApertureValue                  Rational    1  F2
 Exif.Photo.LightSource                      Short      1  Unknown
 Exif.Photo.Flash                            Short      1  No flash
 Exif.Photo.FocalLength                      Rational    1  3.7 mm
 Exif.Photo.SubSecTime                        Ascii      3  10
 Exif.Photo.SubSecTimeOriginal                Ascii      4  100
 Exif.Photo.SubSecTimeDigitized              Ascii      3  20
 Exif.Photo.FlashpixVersion                  Undefined  4  1.00
 Exif.Photo.ColorSpace                        Short      1  sRGB
 Exif.Photo.PixelXDimension                  Long        1  4160
 Exif.Photo.PixelYDimension                  Long        1  3120
 Exif.Photo.WhiteBalance                      Short      1  Auto
 Exif.Photo.SceneCaptureType                  Short      1  Standard
 Exif.Photo.Contrast                          Short      1  Normal
 Exif.Photo.Saturation                        Short      1  Normal
 Exif.Photo.ImageUniqueID                    Ascii      33  IMAGE 2000:07:14 13:14:15
 Exif.Image.GPSTag                            Long        1  1258




Nous constatons que les métadonnées de cette photographie ne contiennent aucune information IPTC et XMP.

Nous aurions pu obtenir les données apparentées avec :

# exiv2 pr -b IMG_20000714_131415036.jpg 
 File name      : IMG_20000714_131415036.jpg
 File size      : 3034398 Bytes
 MIME type      : image/jpeg
 Image size      : 3120 x 4160
 Camera make    : MonAppareilPhoto
 Camera model    : Alpine-Renault-V8
 Image timestamp : 2000:07:14 13:14:15
 Image number    :
 Exposure time  : 1/33 s
 Aperture        : F2
 Exposure bias  :
 Flash          : No flash
 Flash bias      :
 Focal length    : 3.7 mm
 Subject distance:
 ISO speed      : 200
 Exposure mode  :
 Metering mode  :
 Macro mode      :
 Image quality  :
 Exif Resolution : 3120 x 4160
 White balance  : Auto
 Thumbnail      : None
 Copyright      : Copyright,Machintruc,2000
 Exif comment    :


Enfin, nous pourrions vouloir n'afficher qu'une seule donnée, comme la marque de l'appareil photo.
Commande :

# exiv2 pr -g Exif.Image.Make IMG_20000714_131415036.jpg 
 Exif.Image.Make                              Ascii      5  MonAppareilPhoto


Si nous souhaitons extraire uniquement la marque et le modèle de l'appariel, la commande serait

# exiv2 pr -g Exif.Image.Make -g Exif.Image.Model IMG_20000714_131415036.jpg 
 Exif.Image.Make                              Ascii      5  MonAppareilPhoto
 Exif.Image.Model                            Ascii      11  Alpine-Renault-V8
 


Comment ajuster la date
Grâce à la commande :

# exiv2 -h
nous apprenons que l'ajustement de la date s'effectue avec l'action ad (pour ajuster) suivie d'une ou plusieurs options, telles que :
 -Y pour ajuster l'année ;
 -O le mois ;
 -D le jour ;
 -a l'heure.


L'ajustement de la partie "date" se réalise par addition ou par soustraction pour l'année, le mois et le jour.
Ainsi, pour porter l'année de la prise de vue à 2001, l'option -Y sera suivie de 1 ou "+1".
Pour modifier l'année de 2000 à 1999, l'option -Y serait suivie de -1.

Dans l'exemple suivant, nous ajoutons 2 ans.
Volontairement, deux commandes ont été ajoutées afin d'observer le changement.


# echo -e "\nDate avant : $(exiv2 pr -g Exif.Image.DateTime IMG_20000714_131415036.jpg)\n\n" ; exiv2 ad -Y +2 IMG_20000714_131415036.jpg ; echo -e "Date après : $(exiv2 pr -g Exif.Image.DateTime IMG_20000714_131415036.jpg)\n\n" 

 Date avant : Exif.Image.DateTime                          Ascii      20  2000:07:14 13:14:15


 Date après : Exif.Image.DateTime                          Ascii      20  2002:07:14 13:14:15


Comment modifier une métadonnée
Dans notre exemple, la métadonnée relative à Exif.Image.Artist stocke la valeur "Lui-même".
Pour modifier cette valeur, nous utiliserons l'action "mo" et l'option "-m".
Pour mener à bien cette modification, il convient de créer au préalable un fichier texte qui contiendra la commande à utiliser (set, add ou del), la métadonnée (ou clé) affectée et, enfin, la nouvelle valeur.
Par exemple, pour la démonstration, j'ai créé un fichier exiv.txt qui contient :

# cat exiv.txt 
 set Exif.Image.Artist Robert_Doisneau

Pour simplifier, ce fichier et l'image sont stockés au même endroit.
La syntaxe de modification s'énonce ainsi :
# exiv2 mo -m ./exiv.txt IMG_20000714_131415036.jpg


On vérifie avec :

# exiv2 pr -g Exif.Image.Artist IMG_20000714_131415036.jpg 
 Exif.Image.Artist                            Ascii      16  Robert_Doisneau

Sacrebeu ! C'est Robert Doisneau qui a utilisé mon appareil à l'insu de mon plein gré :-D.


Comment supprimer les métadonnées
Attention, les métadonnées une fois supprimées le sont pour de bon.
Prenez vos précautions avant de réaliser cette opération.

L'action de suppression se code avec "rm", l'option avec "-d" suivie d'une lettre (a, e, t, i, x ou c).
Pour l'exemple, ne faisons pas dans la demie mesure :


# exiv2 rm -d a IMG_20000714_131415036.jpg ; exiv2 pr -p a IMG_20000714_131415036.jpg 
 root@pctoutou ~
#

Il n'y a plus rien...


Comment ajouter une métadonnée (un commentaire)
Pour ajouter un commentaire, la commande idoine s'écrit ainsi :

# exiv2 mo -c "Ceci est un test" IMG_20000714_131415036.jpg 

Et, on peut vérifier avec la commande :


# exiv2 pr -p c IMG_20000714_131415036.jpg 
 Ceci est un test


BONUS (parce que c'est vous ;D )
Vous avez ouvert un site internet et vous voudriez y publier vos superbes photos artistiques.
Cependant, vous souhaitez que la navigation dans votre site reste fluide et ne fasse pas exploser la bande passante de vos visiteurs curieux, car vous connaissez de vos amis qui disposent de matériels peu performants.
Plutôt que d'afficher vos superbes clichés qui pèsent plusieurs mégaoctets, vous décidez de montrer les vignettes qui prennent infiniment moins de place.
exiv2 peut vous aider à extraire les vignettes de vos inestimables prises de vue.

L'action "ex" sera mobilisée accompagnée de l'option "-e" elle-même complétée du code "t" pour extraire uniquement les vignettes.

Dans le terminal, nous saisirons :

# exiv2 ex -e t IMG_20000714_131415036.jpg 

Et avec la commande ls, nous verrons qu'un nouveau fichier a été créé.
La chaîne "-thumb" a été insérée entre le nom initial du fichier et son extension.


# ls IMG*
 IMG_20000714_131415036.jpg IMG_20000714_131415036-thumb.jpg


J'espère que cet article vous aura donné envie d'aller plus loin avec exiv2.

Amusez-vous bien !

Amitiés.
Simple Audio Video Embedder