Appunti su Windows. Modificare le date e riordinare fotografie

Quando si va in vacanza e ci si dimentica di regolare l'ora della macchina fotografica digitale, ci si ritrova con delle foto che riportano sia nella data di ultima modifica, sia nei dati EXIF, delle informazioni errate. Questo è tanto più grave quante più sono le macchine da cui provengono le foto (immaginate un gruppo di amici che va in vacanza e alla fine della vacanza vuole creare un unico archivio di immagini). Usare la data corretta non è mera puntigliosità ma risulta utilissimo se si vogliono visualizzare le immagini provenienti da due o più persone nel corretto ordine cronologico.

Per fare questo prima di tutto si deve sapere di quanto vanno corrette le date di ogni macchina. Non dimenticatevi di considerare il fuso orario. Se oramai la data della macchinetta è stata cambiata rispetto a quella della vacanza, l'unico modo di conoscere l'esatta correzione di data è quella di scovare degli indizi nelle foto, per esempio confrontare l'ora di un orologio locale con la data EXIF della foto o alla peggio, con la data di ultima modifica del file.

La correzione dei dati EXIF, qualora errati, non è necessaria per avere le foto ordinate cronologicamente, ma è sicuramente molto comoda. Infatti quando farete delle operazione su una di queste immagini la nuova data di ultima modifica sarà quella di salvataggio oppure quella contenuta nei dati EXIF (basti pensare alla rotazione permanente di una foto).

Prima di continuare facciamo notare che nonostante il 99.9% delle fotografie amatoriali e semi-professionali è in formato jpg a volte capita di ricevere foto in formati compressi senza perdita (RAW che in inglese significa grezzo). Tra questi formati ricordiamo per esempio il formato NEF, usato da Nikon. Questi formati sono utili solo per ritocchi di altissima qualità. Vi conviene quindi prima di tutto avere, per le foto, solo file jpg.

La conversione dei NEF in jpg può essere fatta in vari modi. Purtroppo uno standard NEF non esiste e quindi molti strumenti di conversione danno risultati inaspettati (ImageMagick perde i dati EXIF e fa diventare le immagini più scure. IrfanView converte correttamente i file ma perde i dati EXIF). In questo caso non c'è soluzione migliore che usare (a malincuore) gli strumenti proprietari messi a disposizione delle case di fotografia digitale. Se avete dei NEF prodotti con una macchina Nikon allora vi conviene usare View NX. Permette la visione, conversione e modifica dei file NEF. Da non confondere con View NX 2, un programma più complicato, sempre di Nikon.

Ora si hanno due modi di procedere. O si modificano prima i dati EXIF e poi la data di ultima modifica, o viceversa. Quale dei due dipende da quale data è stata "meno modificata" nel darvi le foto. In pratica se chi vi ha dato le foto le ha ruotate o modificate, la data di ultima modifica non sarà più attendibile. In quel caso rimangono solo i dati EXIF. Se anche questi ultimi, per esempio a causa di una conversione, non dovrebbero essere più disponibili allora non c'è più nulla da fare. Siccome solitamente i dati EXIF sono meno soggetti a cambiamenti quando si modifica un'immagine, partiremo quindi da questi.

Esistono diversi software per modificare i dati EXIF e per eseguire le operazioni descritte in questo breve articolo.

Tra i programmi con interfaccia grafica per Windows, c'è EXIF Date Changer (purtroppo nella versione free di questo programma sono disabilitate le utilissime funzioni di selezione in base al modello di macchina fotografica e la possibilità di modificare immagini in formati diversi dal jpg). Il software è gratuito ma non open source.

Tra gli strumenti a riga di comando c'è exiv2, un progetto nato per la creazione di una libreria C++ per la modifica dei dati EXIF ma che fornisce anche un utile eseguibile per usare tutte le funzioni fornite dalla libreria stessa. C'è poi un altro software analogo, ma forse più potente e complicato da usare, exiftool. Tutti e due questi software sono gratuiti e open source (GPL). Purtroppo non c'è un semplice installer per Windows, né per exiv2 né per exiftool. Però exiftool prevede un archivio molto più semplice per Windows.

Usando exiftool il comando per sottrarre un certo quantitativo di tempo alla data EXIF, per esempio un'ora e venti minuti, è il seguente

exiftool -overwrite_original -alldates-=1:20:00 *.jpg

Dopo aver modificato la data nei dati EXIF non resta che modificare di conseguenza la data di ultima modifica dei file. Questo può essere fatto automaticamente con i software a riga di comando visti sopra. In particolare con exiftool (se si hanno solo immagini jpg):

exiftool "-FileModifyDate<CreateDate" *.jpg

Per finire si può voler rinominare i file in base alla data dei dati EXIF. -d specifica il formato della data. In particolare %%-c permette di aggiungere un numero progressivo nel caso in cui il nome di file già esista.

exiftool -d %Y-%m-%d_%H-%M-%S%%-c.%%e "-filename<CreateDate" *.jpg

Se invece ci sono dei file senza dati EXIF o con dati EXIF non aggiustabili tramite una una semplice traslazione temporale, oppure ancora se ci sono altri tipi di file che non prevedono dati EXIF, come per esempio dei filmati, risulteranno molto utili i software NewFile Time e BulkFileChanger. Questi ultimi due strumenti modificano solo la data di ultima modifica e non i dati EXIF. Tutti e tre questi software sono gratuiti ma non open source. Per i file che avevano gli EXIF ma con le date sballate, a questo punto si può settare la data negli EXIF uguale alla data di ultima modifica grazie ai software a riga di comando visti sopra.