デジカメで撮影した写真に位置情報を一括で埋めこむ!GPSロガーを使わずGPX情報からEXIF追加

桜パトロール用にカメラを買った(CANON EOS M3)んだけど、GPS機能がついていないので写真にジオタグが入っていないことに気が付き、なんとか後付けで一括で位置情報を入れられないかと試行錯誤した結果、無事全ての写真にジオタグがつき、GoogleMapに桜の写真たちをマッピングすることができたので、この知見をまとめておきます。

後付けで写真に位置情報を付与する仕組み

写真に位置情報を追加する仕組みは、位置情報を記録しているロギング系の携帯のアプリ等から位置情報履歴をGPXで取りだし、写真の撮影日時とGPXの時間ごとの位置情報記録をマッチングさせ、写真に位置情報を付与するというもの。

まずは位置情報をどこかから取得しないとだめ

そもそも自分がその日にどういう位置情報の軌跡をとったのかの情報がないと後付けはできません。私は生粋のジオガールなので(その話をするとものすごくなるので割愛)常にiPhoneのアプリで位置情報を取り続けている。

私がもともと愛用していた「spottizmo」というアプリがとても優秀で、日別にGPXエクスポートができた。私はこれで常時ログを取り続けているので過去数年分は多分ある。このアプリはゆるめにロギングしてくれるので、だいたいこの時間このあたりにいたな、っていうくらいの精度なんだけどバッテリー消費も少なくて気に入ってます。ガチなGPSロガーアプリはとてもバッテリーを食う。

‎「Spottizmo! – じゃない人のためのGPSロガー」をApp Storeで
‎「Spottizmo! – じゃない人のためのGPSロガー」のレビューをチェック、カスタマー評価を比較、スクリーンショットと詳細情報を確認することができます。「Spottizmo! – じゃない人のためのGPSロガー」をダウンロードしてiPhone、iPad、iPod touchでお楽しみください。

GoogleロケーションをONにしていて履歴を取っている人ならGoogleロケーションからKLMファイルをダウンロードできるので、それをGPXに変換すれば良いと思う。

GPXデータを手に入れたら写真ファイルとマッチングさせる

次にマッチング作業です。これがめちゃくちゃ苦戦した。やってだめだったものも含めて書いておきます。

1.Nikon View NX2

写真にジオタグを埋め込む検索でかなりの人達が使っていたのがこれ。ただMacOS10.12に対応していないのか、ダウンロードしてもインストールできなかった・・・涙 。

2.Nikon View NX-i

上記のバージョンアップ版。確かにGPX情報と写真をマッチングすることはできた。できたんだけど元ファイルに位置情報のみ追記するってことができなくて、データを別ファイルとして書き出す必要がある。しかも書き出しの際に再度JPGエンコードがかかるから写真が劣化する。涙。

3.JPEG GPS Merger

Windowしか使えない。涙

4.GeoSetter

これもWindowsのみ。涙。

5.MyTracks

Mac用アプリ。だが結構お高い・・・。涙。

6.Adobe Lightroom

これはもう、お高すぎます・・・。涙

7.Geotag Photos

というわけで6粒の涙を流しましたが、ベストソリューションはこれでした。iPhone、Android用の「Geotag Photos」はロギングアプリなので今回は使わず(すでにログデータは手元にあるから)、これのMacデスクトップ版を使います。アプリを起動すると、OfflineかProか選択する画面が表示されます。Proの場合、スマホの「Geotag Photos」で記録したデータを呼び出します。すでにGPXを持っているので、Offlineを選びます。

GPXファイルと、それをマッチングさせたい写真のフォルダを選ぶだけ。

超シンプルで簡単。なんだけど、私は最初GPXがうまく読み込めなかった。ここから執念の調査・・・。

  • GPXデータだけをマッピング系のサービスにつっこんでみたけど普通に位置情報は表示されるので問題なさそう。
  • 試しに「Geotag Photos」でロギングしたデータのGPXを選択したら読み込めた。
  • spottizmoが出力するGPXと何かが違う?
  • テキストエディタを開いて比較。
  • spottizmoのデータになんか余計なものが入ってる(Swarmのデータぽい)。
  • spottizmoとSwarm連携させてたんだった!(なんせ生粋のジオガール・・・)

余計なデータを削除して整形して再度読み込んだら、、いけました。感動!今年の桜パトロールが完了したらGoogleMapに桜マップを作って公開しようと思います。

GeotagPhotosについては、このページがとてもわかり易かったです。

一眼レフなどで撮影した写真に撮影場所を簡単に付ける方法
皆さんは写真に位置情報を付けたことがありますか?おそらく意図的に付ける方はあまりいらっしゃらないのかなと感じています。iPhoneや他のスマートフォンなどのは撮影時に位置情報の利用をアプリに許可するこ
そういえば、いろいろ調べていたらこんなものを見つけた。SDカードでジオロギングできるぽい・・・?

↑こちらのeyefi PRO 買って試してみたのですが、

  • 撮影時にジオタグが埋め込まれるわけではなく、ソフトウェアでPCやスマホに取り込む時に付与される(ぽい)
  • そのソフトウェアはすでにサポート終了していて使えない(アプリDLは検索すれば出てくるんだけどサーバに接続できないので起動もできず)
  • そこそこ高かったのにただのSDカードとしてしか使えない・・・ > <

残念・・・。