web-dev-qa-db-fra.com

Comment puis-je modifier la date de modification de la date des informations effectuées dans des données exif?

J'utilise F-Spot pour gérer mes images. Pour un ensemble d'images, les dates ont été gâchées et elles sont toutes marquées au 1er septembre 2007. J'aimerais modifier la date des informations prises à une date différente. Comment puis-je faire ceci?

32
Eugene M

Jhead est capable de le faire.

Disons que vous savez qu'une certaine image a été prise sur 2017-04-19 16:20 Mais la date actuelle montre comme 2007-09-01 00:15, vous pouvez ajuster toutes les images jpg dans un dossier à la bonne heure en faisant:

jhead -da2017:04:19/16:20-2007:09:01/00:15 *.jpg

Voici un extrait du manuel:

DATE / TIME MANIPULATION:
   -ft        Set file modification time to Exif time
   -dsft      Set Exif time to file modification time
   -n[format-string]
             Rename files according to date.  Uses exif date if present, file
             date otherwise.  If the optional format-string is not supplied,
             the format is mmdd-hhmmss.  If a format-string is given, it is
             is passed to the 'strftime' function for formatting
             In addition to strftime format codes:
             '%f' as part of the string will include the original file name
             '%i' will include a sequence number, starting from 1. You can
             You can specify '%03i' for example to get leading zeros.
             This feature is useful for ordering files from multiple digicams to
             sequence of taking.  Only renames files whose names are mostly
             numerical (as assigned by digicam)
             The '.jpg' is automatically added to the end of the name.  If the
             destination name already exists, a letter or digit is added to
             the end of the name to make it unique.
  -nf[format-string]
             Same as -n, but rename regardless of original name
  -a         (Windows only) Rename files with same name but different extension
             Use together with -n to rename .AVI files from exif in .THM files
             for example
  -ta<+|->h[:mm[:ss]]
             Adjust time by h:mm backwards or forwards.  Useful when having
             taken pictures with the wrong time set on the camera, such as when
             traveling across time zones or DST changes. Dates can be adjusted
             by offsetting by 24 hours or more.  For large date adjustments,
             use the -da option
  -da<date>-<date>
             Adjust date by large amounts.  This is used to fix photos from
             cameras where the date got set back to the default camera date
             by accident or battery removal.
             To deal with different months and years having different numbers of
             days, a simple date-month-year offset would result in unexpected
             results.  Instead, the difference is specified as desired date
             minus original date.  Date is specified as yyyy:mm:dd or as date
             and time in the format yyyy:mm:dd/hh:mm:ss
  -ts<time>  Set the Exif internal time to <time>.  <time> is in the format
             yyyy:mm:dd-hh:mm:ss
  -ds<date>  Set the Exif internal date.  <date> is in the format YYYY:MM:DD
             or YYYY:MM or YYYY

Une option encore plus puissante est exifool .

26
therefromhere

exiv2 est un outil de ligne de commande pour manipuler des données exif. Les formats d'image pris en charge sont JPEG, CANON CRW et Canon THM. Png est en lecture seule.

Si vous souhaitez définir la date de fichier à la date EXIF, vous pouvez utiliser Exiv2 avec l'option suivante.

-t Définissez l'horodatage de fichier en fonction de l'horodatage EXIF ​​Créer en plus de la renommer du fichier (Remplacement de la carte). Cette option est utilisée uniquement avec l'action 'Rename'.

3
Ludwig Weinzierl

Voici ce dont j'avais besoin

Ajouter un décalage constant à la date ancienne

exiv2 ad -a -3:17 *.JPG

Renommer en %Y%m%d_%H%M%S

exiv2 mv *.JPG

Les autres formats et options sont spécifiés dans Pages de l'homme .

2
Johu
2
Lazer

J'utilise un script suivant pour donner des images de dates successives. J'espère que ça aide. Il attend un répertoire avec les images à repasser comme argument i .e script directory_with_images

#!/bin/bash
HOUR=12
MINUTE=0
DATE=2004:06:20
for file in "$1"/*;
do 
    exiv2 -v -M"set  Exif.Image.DateTime $DATE $(printf %02d $HOUR):$(printf %02d $MINUTE):00" "$file"
    exiv2 -v -M"set  Exif.Photo.DateTimeDigitized $DATE $(printf %02d $HOUR):$(printf %02d $MINUTE):00" "$file"
    exiv2 -v -M"set  Exif.Photo.DateTimeOriginal $DATE $(printf %02d $HOUR):$(printf %02d $MINUTE):00" "$file"
    #sets file timestamp (i.e. filesystem metadata, not image metadata) as well
    exiv2 -v -T "$file"
    if [ $MINUTE = 59 ]; then
        HOUR=$((HOUR + 1))
        MINUTE=0
    else
        MINUTE=$((MINUTE + 1))
    fi
    # this would rename the file as well
    #new_path=`pwd`/new_filename$(printf %02d $HOUR)$(printf %02d $MINUTE).jpg
    #cp "$file" "$new_path"
done
1
sup

Exifool: lent sur la ligne de commande. (Il est écrit à Perl, alors dessinez vos propres conclusions.)

EXIFER crée une balise vide ou deux dans des fichiers et non seulement dans le bloc EXIF. Il supprimera également des balises écrites par d'autres outils. Comme je ne l'ai pas utilisé depuis plus d'un an, je ne peux pas être spécifique à celui desquels.

FastStone's Stuff, IMX, est trop lent pour rester installé depuis plus d'une journée ou deux.

Mon vote est pour la RH. Suggestion de Weinzerl: Exiv2.

Bzt

0
SilversleevesX

Picasa , un outil de gestion de photos gratuit de Google, fera cela et c'est bien et rapide.

Dans Picasa Sélectionnez Afficher Menu> Propriétés pour afficher le volet Propriétés.

Sélectionnez le dossier contenant les photos et ils apparaîtront comme une collection de vignettes.

Sélectionnez les vignettes que vous souhaitez mettre à jour. Pour décider qui à la mise à jour sous forme de lot, vous pouvez les définir tous vers le même nouveau délai de date ou vous pouvez modifier le premier et tous les autres seront déplacés dans le même montant.

Dans le volet Propriétés, cliquez avec le bouton droit de la souris sur le champ Date de l'appareil photo, puis sélectionnez Ajuster la date et l'heure ... Dans le menu contextuel. La boîte de dialogue Ajuster la date de photo s'ouvrira de la date de la caméra actuelle de la première photo.

Modifiez la date et l'heure de la caméra selon les besoins. Si vous voulez juste changer A.M. à P.M., ou inversement, sélectionnez "A.M." une partie de l'heure et du type "A" ou "P", selon le cas. Pas besoin de taper l'ensemble "A.M." ou "p.m." chose.

Si vous avez sélectionné plusieurs options, si vous avez sélectionné plus d'une vignette pour la mise à jour: "Ajustez toutes les dates de la photo par le même montant" ou "Définir toutes les photos sur la même date et heure". Choisir celui qui est approprié. Puis cliquez sur OK.

Les dates EXIF ​​de toutes les photos sélectionnées seront mises à jour.

0
SimonTewsi