exif
GPS
GIS

Exiftoolで写真にGPSデータを埋め込んで撮影地点のポイントデータを取得する。

DSC_2654.JPG

埋蔵文化財所在確認調査報告書をQGISで作成する作業フローの記事ではGPSログと写真をマッチングさせるためにGPSpruneを使用し、写真に埋め込まれたジオタグデータからポイントデータを生成するためにphoto2kmzを使用しました。

しかし、手順が複雑で長いのでコマンドラインで同じ作業を簡潔に行います。


Exiftool

Debian Linuxのリポジトリにはデフォルトで入っていました。


sudo apt install libimage-exiftool-perl


準備

同じディレクトリに画像とGPXデータを置いておく。

01.png


手順

#1 写真のExifデータをxmpファイルに書き出す
exiftool *.JPG -k -o %d%f.xmp

#2 GPSデータをxmpファイルへ書き込む
exiftool -geotag 180420.gpx '-xmp:geotime<DateTimeOriginal' *xmp

#3 (GPSデータの入った)xmpファイルのデータをのExifに書き込む
##写真のあるディレクトリは絶対パスで指定
exiftool -k -tagsfromfile '%f.xmp' -r -ext JPG '/home/hoge/TestPhoto'

#4 ジオタグ付き画像から位置情報付きのcsvファイルを生成
exiftool -csv -GPSLongitude -GPSLatitude -n *.JPG >exif.csv

画像ファイル名と緯度、経度が書き込まれたcsvファイルが作成されます。

02.png


csvファイルをQGISで開く

作成したexif.csvをQGISで開くと撮影地点がマッピングされています。

GPSpruneとphoto2kmzを使うよりも圧倒的に時間短縮になるのと、手順を覚えなくても良い(再現性が高い)ことが利点です。

03.png


参考にしたサイト

exiftoolでジオタグ追加

QGISのPhoto2Shapeプラグインのエラー対処法