埋蔵文化財所在確認調査報告書をQGISで作成する作業フローの記事ではGPSログと写真をマッチングさせるためにGPSpruneを使用し、写真に埋め込まれたジオタグデータからポイントデータを生成するためにphoto2kmzを使用しました。
しかし、手順が複雑で長いのでコマンドラインで同じ作業を簡潔に行います。
Exiftool
Debian Linuxのリポジトリにはデフォルトで入っていました。
sudo apt install libimage-exiftool-perl
準備
同じディレクトリに画像とGPXデータを置いておく。
手順
# 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ファイルが作成されます。
csvファイルをQGISで開く
作成したexif.csvをQGISで開くと撮影地点がマッピングされています。
GPSpruneとphoto2kmzを使うよりも圧倒的に時間短縮になるのと、手順を覚えなくても良い(再現性が高い)ことが利点です。