Geotagging fotofrafií

V exifu fotografií lze nalézt všechny možné zajímavé informace. A další zajímavé informace jdou do nich dopsat. Jednou ze zajímavých souřadnicích jsou zeměpisné souřadnice - při pohledu do exif informací fotografie je pak vidět, kde byla dané fotka vyfocena. Těmto zápisům do exifu se říká geotagging. Jediný problém už potom je, jak dostat souřadnice do fotografie.

Některé fotoaparáty už dnes mají integrovanou GPS. Ten můj ne, takže tahle volba taky padá. K Nikonu lze dokoupit GPS modul, který se připojí k fotoaparátu a při vyfocení uloží pozici do fotografie. Ale jelikož nemám ani Nikon, tak s tím mám smůlu také (navíc mi přijde, že ta cena za hloupý GPS modul byla hodně přemrštěná). Poslední zajímavou věc jsem viděl od Sony - krabička s GPSkou, která měla slot na SD/Memory stick karty a podle všeho po zasunutí karty s fotkama je uměla otagovat. Nicméně vzhledem k tomu, že fotky na kartě mám stejně v RAWu, tak dosti pochybuji, že by to ten RAW otagovalo... Musel přijít tedy na řadu softwarové řešení. Venku sebou obvykle nosím turistickou GPS Garmin Colorado - tahle GPS ve formátu GPX po dobu běhu ukládá tracklog; tedy soubor, kde je uložen vždy čas a souřadnice, na kterých se gps v tento čas nacházela. Body jsou ukládány v rozmezí několika sekund, zpětně tedy jde celkem přesně rekonstruovat celou trasu. Nápad: pokud je ve foťáku správně nastavený čas a datum a mám track log z GPS - podívám se kdy byla fotka vyfocená a zkusim v track logu najít pozici z tohoto času (+- nějaký čas okolo). To by mohlo fungovat - teď ještě jak to udělat automatizovaně, abych otagováním fotek nestrávil celý den (jako se to dělá u různých sofistikovaných softwarů pro Windows). Stačil by na to jednoduchý skript.

Po chvilce hledání jsem našel perlový skript gps2Photo. Skript se bohužel už asi nevyvíjí a nesl sebou pár chyb (jedna z nich byla to, že od roku 2010 nemohl už fungovat :-) ). Takže po chvíli (dobře, asi 2 hodiny...) úprav, hraní si a oprav jsem ho dovedl do funkčního stavu. Odkaz na stažení upraveného skriptu je na konci stránky. Jak se to tedy pouští? Do složky s rozbaleným skriptem se nakopírují jpg fotky a soubor s track logem do souboru gps.gpx (nebo gps.txt při použití textového tracklogu z Map Source - ale to jsem nezkoušel). Následně se spustí skript s časovou zónou (resp. posunem oproti GMT) jako parametrem - v ČR v zimním čase to je +1, v letním +2. Tedy třeba perl gps2Photo.pl +2. Ve složce se vytvoří složka GPS a v ní se budou nacházet překopírované fotky obsahující již tag. Z výpisu je vidět, jaké fotky skript prolezl, jakou k nim našel pozici a o kolik se čas fotky s pozicí neshodoval (skript hledá v rozmezí +- 1500 sekund, výpis +10s tedy znamená, že byla použita pozice s tracklogu, která byla zapsána o 10s později, než byla vyfotografována fotka). Fotografie, ke kterým nebyl v rozmezí 1500 sekund nalezen záznam se souřadnicemi nejsou ve složce GPS obsaženy! Při trošku hraní půjde zřejmě i docílit toho, aby skript šel spustit odkudkoliv a ne jen z jedné složky, kde budou fotky.

Nastává jeden poslední problém - skript GPX soubor neparsuje jako XML, ale jen ho prochází regulárními výrazy. Nese to sebou jeden problém - například můj Garmin Colorado (a řekl bych, že i většina novějších GPS od Garminu s USB mass storage) ukládá log do GPX, ale celý soubor namastí na jeden řádek. Na to aby skript fungoval spolehlivě je potřeba, aby každému řádku odpovídal jenom jeden waypoint. Pokud máte v počítači konzolový program sed, lze to jednoduše napravit:

  1.  
Tento příkaz body od sebe hezky rozřádkuje a lze už bez problémů skript použít.

Soubory ke stažení

Soubor Velikost Kontrolní součet Homepage autora
gps2photo.tar.bz2 247kB (251998B) MD5: 4003a2359d6fd2f50099cbf4b07908ab http://www.vipros.com/photo/gps2Photo
SHA1: e1c02e814db03f5df17aea85ec8520ae3d46e62e
Tags: 

Komentáře

Zdravím, variantu synchronizace GPS dat s fotkami používám už pár let, po vyzkoušení několika SW jsem zvolil http://www.geosetter.de/en/ - dost jednoznačně nejlepší. Umí různé modifikace, posuvy, zobrazuje body na mapě, takže lze data snadno kontrolovat, umí k GPS souřadnicím vyhledat (jakž takž) vhodné jméno obce/města pořízení fotky. Má elegantní prohlížeč fotek včetně zobrazení jejich polohy na mapě.

Akorát s drobnou nevýhodou, že je to Windows only software, což může a nemusí vadit. Pro mě osobně to třeba překážka je, jelikož pouštění win virtuálu a tahání fotek do něj také není nejpohodlnější... Nicméně nedávno jsem narazil ještě na tenhle: http://gottengeography.ca/ soft. Ten je multiplatformní a "klikací" a sync s trackovacím souborem by měl také umět. Nicméně, ještě jsem ho osobně nezkoušel...