2019年8月5日月曜日

ExiftoolでGPSタグを付ける

GPSタグを付ける
Debian GNU/Linux 10 Busterにて

目的 :
カメラの操作忘れで、GPSデータが未記録だった写真(jpg)に、
他の写真のデータを利用して ExifにGPSデータを書き込む。


結論 :
コマンドラインexiftoolを使って、
$ exiftool -tagsfromfile GPS有り.JPG -gps* -gpsmeasuremode= GPS無し.JPG

exiftooは、変更前の画像を `GPS無し.JPG_original' 名で保存する。
参考ファイルと、GPS Time Stampが全く同じで、違和感が残る。

色々 :
・Exiftool
 Debianでは、libimage-exiftool-perl をインストール。
 マニュアル/説明(英語) https://sno.phy.queensu.ca/~phil/exiftool/exiftool_pod.html
 かなり守備範囲の広いプログラム。

・exiftoolのコマンド例。

GPS有り.JPGからGPSというワードを含むタグを探す。
$ exiftool GPS有り.JPG | grep GPS
または
$ exiftool -gps* GPS有り.JPG
GPS Version ID                  : 2.3.0.0
GPS Latitude Ref                : North
GPS Longitude Ref               : East
GPS Altitude Ref                : Above Sea Level
GPS Time Stamp                  : 10:19:54
GPS Satellites                  :
GPS Status                      : Measurement Active
GPS Map Datum                   : WGS-84
GPS Date Stamp                  : 2019:07:31
GPS Altitude                    : 37.5 m Above Sea Level
GPS Date/Time                   : 2019:07:31 10:19:54Z
GPS Latitude                    : 33 deg 11' 18.23" N
GPS Longitude                   : 130 deg 21' 30.01" E
GPS Position                    : 33 deg 11' 18.23" N, 130 deg 21' 30.01" E

$ exiftool GPS無し.JPG | grep GPS
または
$ exiftool -gps* GPS無し.JPG
GPS Version ID                  : 2.3.0.0
GPS Altitude Ref                : Above Sea Level
GPS Satellites                  :
GPS Status                      : Unknown ()
GPS Measure Mode                : Unknown ()

出力は、タグ : データ の形で表示。exiftoolによる書き込みは、
exiftool -タグ="データ" 目的.jpg が基本。

タグ : データ オプションを利用するときの注意
* タグの空白は省く。
* データは""で囲む。エスケープも使う。
* タグ:データ の削除は -タグ= とする (上記結論の -gpsmeasuremode= のところ)。
* タグ GPS Position は、GPS Latitudeと GPS Longitudeの値があれば書き込まなくても自動生成される。無理に指定しても warningで無視される。
* タグ GPS Date/Time も、GPS Date StampとGPS Time Stampの値から自動生成。

・・・ということで、GPS Time Stampを変更しつつ、手書きコマンドの例。
$ exiftool -gpslatituderef="North" -gpslongituderef="East" \
-gpstimestamp="10:19:46" -gpssatellites=" " -gpsstatus="Measurement Active" \
-gpsmapdatum="WGS-84" -gpsdatestamp="2019:07:31" \
-gpsaltitude="37.5 m Above Sea Level" -gpslatitude="33 deg 11\' 18.23\" N" \
-gpslongitude="130 deg 21\' 30.01\" E" -gpsmeasuremode= GPS無し.JPG
    1 image files updated
ちなみに
$ exiftool -w txt IMG.JPG Exif ← 内容をIMG.txtに出力
$ exiftool -htmlDump IMG.JPG > img.html ← htmlに出力。見ても意味わからん
$ exiftool -lang ja -GPS IMG.JPG ← 日本語で表示。北緯 GPS Latitude / 東経 GPS Longitude などの検索が辛い

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。