Uwaga: Poniżej zakłada się, że program ExifTool jest używany w środowisku MS Windows.
Pobierz plik ExifTool.exe
i umieść go w jakimś katalogu (SomeDir
)
Otwórz wiersz polecenia (przejdź do wyszukiwania systemu Windows, wpisz polecenie cmd i otworzy się okno)
W oknie wiersza polecenia zmień katalog na SomeDir
.
Geotagowanie zdjęć przy użyciu śladu w formacie GPX
Zdjęcia zrobione z nowoczesnych smartfonów są już geotagowane (jeśli opcja Lokalizacja jest włączona).
Dla aparatów nie wyposażonych w GPS, geotagowanie jest możliwe jeżeli dysponujemy śladem (zarejestrowanym za pomocą zewnętrznego odbiornika GPS.)
Synchronizowanie zdjęć ze śladem GPS
Pobierz plik GPX z odbiornika/rejestratora GPS (dokładna procedura zależy od typu odbiornika GPS) do katalogu SomeDir
.
Zrób zdjęcie odbiornika GPS/ekranu lub wyświetlacza, na którym wyświetlany jest zegar z dokładnym czasem (na przykład ekranu komputera/smartfona).
Wpisz w wierszu poleceń:
exiftool -DateTimeOriginal IMG_20171021_113121.jpg Date/Time Original : 2017:10:29 11:52:46
Wartość taga DateTimeOriginal
określa, że zdjęcie zostało wykonane o 11:52:46. Dokładny czas odczytujemy ze zdjęcia. Załóżmym że czas na zdjęciu wynosi 11:50:19 CET. Zatem DateTimeOriginal jest równe 11:52:46 CET a czas dokładny 11:50:19 CET, stąd różnica 11:32:46 - 11:50:19 = 2min 27s.
Wszystkie odbiorniki GPS wewnętrznie używają/rejestrują wyłącznie używając czasu UTC, nawet jeśli na ekranie pokazywany jest czas lokalny (Por. UTC_offset). Zwykle aparat wewnętrznie korzysta z czasu lokalnego. Jeśli tak jest, należy zadeklarować odpowiednie przesunięcie UTC_offset (w przeciwnym przypadku exiftool używa systemowego przesunięcia czasu względem UTC).
Skopiuj wszystkie zdjęcia do programu SomeDir
.
Wpisz w wierszu poleceń:
exiftool -geosync=-02:27 '-geotime<${DateTimeOriginal}+01:00' -geotag my_gps.log SomeDir
Tag Geotime
określa punkt w czasie dla którego obliczana jest pozycja GPS. Zapis -geotime<${DateTimeOriginal}+01:00
oznacza, że pozycja jest obliczana według czasu z taga DateTimeOriginal
. Zaś dodanie +01:00
ustala CET jako strefę czasową (Przesunięcie +01:00 względem UTC)
Tag Geosync dodaje dodatkowy dryft czasu, jak wyjaśniono powyżej.
Utworzenie pliku KML
Opcja -p
służy do generowania plików GPX i/lub KML.
exiftool -fileOrder gpsdatetime -p gpx.fmt SomeDir > SomeTripPhotos.gpx
albo
exiftool -fileOrder gpsdatetime -p kml.fmt SomeDir > SomeTripPhotos.kml
Pliki KML mogą być importowane do Map Google i Google Earth.
Uwaga: jeżeli mapa ma być wyświetlona nie lokalnie, ale na jakimś serwerze WWW (na przykład: http://www.gpsvisualizer.com/
), zdjęcia muszą być przesłane na jakiś serwer, a następnie w pliku KML/GPX należy poprawić linki do tychże zdjęć. Dokładna procedura zależy od tego, który serwer jest używany do przechowywania zdjęć.
Przykładowe pliki formatów
gpx.fmt
#[HEAD]<?xml version="1.0" encoding="utf-8"?> #[HEAD]<gpx version="1.0" #[HEAD] creator="ExifTool $ExifToolVersion" #[HEAD] xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" #[HEAD] xmlns="http://www.topografix.com/GPX/1/0" #[HEAD] xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd"> #[BODY]<wpt lat="$gpslatitude#" lon="$gpslongitude#"> #[BODY] <name>$directory/$filename</name> #[BODY] <ele>$gpsaltitude#</ele> #[BODY] <desc>$directory/$filename</desc> #[BODY] <link href="$directory/$filename"><type>large</type></link> #[BODY] <link href="$directory/$filename"><type>thumbnail</type></link> #[BODY] <time>$gpsdatetime</time> #[BODY]</wpt> #[TAIL]</gpx>
kml.fmt
#[HEAD]<?xml version="1.0" encoding="UTF-8"?> #[HEAD]<kml xmlns="http://earth.google.com/kml/2.0"> #[HEAD] <Document> #[HEAD] <name>My Photos</name> #[HEAD] <open>1</open> #[HEAD] <Style id="Photo"> #[HEAD] <IconStyle> #[HEAD] <Icon> #[HEAD] <href>http://maps.google.com/mapfiles/kml/pal4/icon38.png</href> #[HEAD] <scale>1.0</scale> #[HEAD] </Icon> #[HEAD] </IconStyle> #[HEAD] </Style> #[HEAD] <Folder> #[HEAD] <name>Waypoints</name> #[HEAD] <open>0</open> #[BODY] <Placemark> #[BODY] <description><![CDATA[<br/><table><tr><td> #[BODY] <img src='$directory/$filename' #[BODY] width='$imagewidth' height='$imageheight'> #[BODY] </td></tr></table>]]></description> #[BODY] <Snippet/> #[BODY] <name>$filename</name> #[BODY] <styleUrl>#Photo</styleUrl> #[BODY] <Point> #[BODY] <altitudeMode>clampedToGround</altitudeMode> #[BODY] <coordinates>$gpslongitude#,$gpslatitude#,0</coordinates> #[BODY] </Point> #[BODY] </Placemark> #[TAIL] </Folder> #[TAIL] </Document> #[TAIL]</kml>
Powyższe łącznie z przykładami można pobrać klikając tutaj.
Interesujący wpis
OdpowiedzUsuńWarto jest zapoznać się z tak ciekawymi informacjami.
OdpowiedzUsuń