Exiftool GPS-Tagging von Lat/Long funktioniert teilweise, aber es fehlt immer eine Zeitzone (was meiner Meinung nach der Grund dafür ist, dass die tatsächliche Pos falsch wird)

Ich habe eine GPS-Datei mit Daten wie z

<trkpt lat="56.9359839838" lon="-4.4651045874">
    <ele>30.42</ele>
    <time>2021-03-30T20:09:56Z</time>
</trkpt> 

Ich kann dann exiftool in der cmd-Zeile (Windows-basierter Computer) verwenden, um Folgendes zu tunexiftool -xmp:gpslongitude=-4.4651045874 -xmp:gpslatitude=56.9359839838 -GPSAltitude=30.42 DSC00320_b.JPG

Beachten Sie, dass dies nicht funktioniert - exiftool -exif:gpslongitude=-4.4651045874 -exif:gpslatitude=56.9359839838 -GPSAltitude=30.42 DSC00320_a.JPGDadurch wird das Negative aus dem Längengrad entfernt und das GPS-Tag an der falschen Position platziert (als ob der Wert +ve wäre).

Nachdem ich den xmp-basierten Befehl ausgeführt und die Datei in Flickr geladen habe, wird der Standort genau an der gleichen Stelle abgelegt, als wäre der Längengradwert positiv! Nachdem Sie also ein anderes Tool (GeoSetter) mit einer Kartenvorschau überprüft haben, lädt es dasselbe Bild und platziert es an der richtigen Position?

Flickr macht es also falsch, aber GeoSetter macht es aus genau demselben Bild richtig.

Nachdem ich herumgegraben habe, finde ich, dass dies der Grund ist.

Geben Sie hier die Bildbeschreibung ein

Wenn ich GeoSetter verwende, um die Zeitzone einzustellen und dann auf Flickr hochzuladen, wird sie jetzt an der richtigen Position platziert.

Also einfach gesagt, wie stelle ich die Zeitzone für GPS-Daten ein? Ich habe die folgenden Befehle und eine Reihe anderer ausprobiert, die alle fehlschlagen.

"-gpstimestamp<${createdate}-00:00"
"-GPSTimeStamp<${DateTimeOriginal}" -n
-Geotime<DateTimeOriginal# -n
"-gpsdatestamp<${DateTimeOriginal}"

Wenn ich schließlich einen visuellen Vergleich von Daten aus derselben Datei mit gültigen Zeitzonendaten (rechts) und einer ohne (links) durchführe, fällt der Zusatz „Datum/Uhrzeit digitalisiert“ als hinzugefügt auf, also vermute ich, dass dies der Grund dafür ist Datei funktioniert. (Es gibt auch eine beträchtliche Menge anderer Änderungen an den Metadaten, nachdem die Zeitzone über GeoSetter hinzugefügt wurde. Ich denke nicht, dass dies für diese Frage relevant ist, aber auf Anfrage kann ich weitere Details hinzufügen.)Geben Sie hier die Bildbeschreibung ein


Aktualisierung der Informationen für alle Interessierten seit der großartigen Antwort unten. Dieses Bild zeigt den Unterschied in den Metadaten zwischen der Arbeitsdatei (links) und der Datei, die nicht überall funktioniert (beachten Sie, dass Flickr es falsch macht) auf der rechten Seite. Sie können sehen, dass beide Dateien die richtigen Daten enthalten, aber die Arbeitsdatei enthält alle richtigen Daten innerhalb derselben Gruppe, während die andere sie auf verschiedene Gruppen verteilt hat.Bild, das den Unterschied in den Metadaten zeigt

Antworten (1)

Ich kann nicht genau erklären, was mit Flickr passiert, aber ich kann helfen, einige Details des Problems zu beheben.

Sie können keine Zeitzone für die GPS-Zeitstempel ( GPS:GPSDateStampund GPS:GPSTimeStamp) festlegen, da die GPS-Zeitstempel in UTC vorliegen müssen . Es wird immer +00:00 sein.

Der Grund, warum Ihr GPS-Beispielbefehl fehlschlägt, liegt darin, dass die GPS-Koordinaten in sechs separate Tags aufgeteilt sind, von denen jeweils eines den absoluten Wert für jede Koordinate ( / / ) GPSLatitudeund GPSLongitudeeines GPSAltitudedie Referenzrichtung enthält ( GPSLatitudeRef/ GPSLongitudeRef/ GPSAltitudeRefmit N/S/ O/W/oben/unten). Sie müssen beide einstellen, um die genauen GPS-Koordinaten zu erhalten. Glücklicherweise können Sie mit Exiftool einen Platzhalter verwenden, um beide gleichzeitig festzulegen
exiftool -GPSLatitude*=56.9359839838 -GPSLongitude*=-4.4651045874 -GPSAltitude*=30.42 DSC00320_a.JPG

Beachten Sie, dass dies nur für die GPS-Koordinaten gilt, die im EXIF-Block erscheinen (die exiftool unter der GPSGruppe gruppiert). Die GPS-Tags in der XMP-exifGruppe enthalten die Referenzrichtung im selben Tag, aber nicht alle Programme können diese Tags lesen.

Möglicherweise fehlen zusätzliche Details in Ihrer Exiftool-Ausgabe, da Sie keine Gruppennamen und die möglicherweise doppelten Tag-Namen anzeigen. Sie sollten immer den Befehl in ExifTool FAQ #3 verwenden , um alle möglichen Informationen aus der Datei zu erhalten, um genaue Vorher/Nachher-Vergleiche anstellen zu können

Brillante Antwort! Ich habe mein Q bearbeitet, da ich einem Kommentar kein Bild hinzufügen kann, wenn Sie daran interessiert sind, den Metadatenunterschied zu sehen. Sieht so aus, als ob der wesentliche Unterschied darin bestand, dass die "falsche" Datei alle entsprechenden Daten in verschiedenen Gruppen hinzugefügt hat, Ihr Arbeitsbefehl sie jedoch alle in derselben Gruppe platziert hat.
Die CompositeGruppendaten können ignoriert werden, da es sich um Daten handelt, die exiftool von anderen Tags abgeleitet erstellt. Es existiert in dieser Form nicht in der Datei. Beispielsweise Compositewerden die GPS-Tags hergestellt, indem das Nummern-Tag und die Referenzrichtung kombiniert werden, anstatt die Daten selbst kombinieren zu müssen. Dadurch sind die Daten leichter zugänglich und lesbar.