« Back to home

Exiftool - pár triků na fotky

 

Ahoj, dnes prakticky.

Všichni fotíme. Mám v rukávu pár triků pro manipulaci s exif informací uloženou ve fotografii. Při zpracování fotek z Thajska jsem měl záběry z cca pěti fotoaparátů. Někteří autoři měnili čas fotoaparátu během přejezdů čaosových zón, jiní ne. Bylo třeba hromadně opravit čas ve všech fotkách a pokud možno dosáhnout jednotného řazení fotek v adresáři pro příjemné procházení.

Potřeboval jsem tedy co uměl modifikovat v exif informaci fotografie datum a čas vytvoření. Následně pak použít opraveného data a času pro změnu jména fotky do názvu např: YYYYMMDD_<puvodni nazev>.jpg .

Exiftool - http://www.sno.phy.queensu.ca/~phil/exiftool/index.html   - je nástroj pro manipulaci s exif informací. Umí toho, ale mnohem více.

Prohlédnout exif  informaci umí kdejaký prohlížeč. Poučít jí hromadně pro více fotek už zase tak každý neumí a hromadné přejmenování podle exif už opravdu ne. Vezmu to hodně stručně pokročilé techniky se dají najít v manuálu - RTFM!


Změna času fotografie: (příklad pro linux/bash ve windows cmdline se bude asi drobne lišit viz následující příklad - chce to dávat pozor na " a ' )

exiftool  -overwrite_original -AllDates-=1:07 -if '$CreateDate le "2009:01:27 08:00"' *.jpg *.nef
exiftool  -overwrite_original -AllDates+=6:53 -if '$CreateDate ge "2009:02:15 00:00"' jindra/*.jpg
exiftool  -overwrite_original -AllDates-=1:00 -if '$CreateDate ge "2009:01:27 08:00"' \
-if '$CreateDate le "2009:02:15 00:00"' *.jpg *.ne

Nejdříve je třeba zjistit rozdíly v čase pořízení mezi jednotlivými fotoaparáty. Např. porovnáním fotek pořízených v jeden čas na jednom místě. Parametr -AllDates pak modifikuje všechny pole typu datum v exif informaci o zadaný interval. V kombinaci s -if je možné posunout vždy jen tu část fotek od určitého data . Posledním argumentem je cesta a filtr jaké soubory se mají zpracovat.

Prejmenovani fotek dle jejich CreateDate : Fotky se pak v adresáři při řazení podle jména řadí v časové souslednosti.

C:\_me\bin\tools>exiftool.exe "-FileName<CreateDate" -d  "%Y%m%d%H%M-%%f.%%e" W:\outer-space\ape-corsica 

  1 directories scanned  

45 image files updated


Výsledek:

 200902070734_adr_4065.jpg
 200902070739_adr_4067.jpg
 200902071616_ape_6581.jpg  200902071736_mic_8599.jpg
 200902081139_jnd_1774.jpg
 200902081401_ape_6606.jpg
 200902081748_jnd_1838.jpg  200902081748_jnd_1839.jpg