GPSロガーのログでGoogleマップに経路を描く

私の使っているGPSロガーは「PIX-PG011-PUW(PIX-PG010-ZUW)」です。付属ソフト「Photo Place GPS Utility」でGPSログを取り出し、デジカメ写真に位置情報を付加したり、Google Earthにログを連携して、Google Earth上に移動した軌跡を表示させたりできます。
ただ「Photo Place GPS Utility」はWindowsでしか動作しません。最近、めっきりMacBook Airばっかり触っちゃっている私にはWindowsマシンを起動させることすらメンドウになってきました。また、GPSロガーには製品の性能によっても、周囲の建物などによる障害物によっても位置情報に誤差が出ます。Google Earthに軌跡を表示させたら、「道ではない所を通ってる」「高架橋の下にいるときの位置が変」ということはしょっちゅうです。これ、なんとか直したいと思ってしまいました。


さて、Google EarthGPSログの軌跡を修正する機能は・・・ありません。(いや、あるのかもしれない、私が知らないだけかもしれないです。)
Google Earthで表示した軌跡をこのダイアリーに表示させるには・・・、Google Earthスクリーンショットを撮って、画像として貼る方法ぐらいしか思いつきません。
「もっとスマートに表示できる方法は無いものか」と考えていたところ、「Googleマップ」を使えばいいことに気づきました。Googleマップにはスタート・ゴール地点を入力すれば、交通手段によって地図上に経路が表示されます。その経路は「マイプレイスに保存」すれば編集することができます。マイプレイスの地図はダイアリーで簡単に表示させることができます。これはいいですね。


では、GPSロガーのログをどうやってGoogleマップに表示させるか、が問題になります。
「PIX-PG011-PUW」を使っている場合に一番手っ取り早い方法としては、

  1. 「Photo Place GPS Utility」を使ってGoogle Earthに経路を表示させます。
  2. 経路を「名前をつけて場所を保存」で「KMZ形式(又はKML形式)」のファイルとして保存します。
  3. そのKMZ形式のファイルをGoogleマップのマイプレイスでインポートします。

このやり方だと、「PIX-PG011-PUW」を使ってない場合はダメだし(Photo Place GPS Utilityを使うので)、「Photo Place GPS Utility」がWindowsでないと動かないという点からも汎用的ではありません。


分かることは「KMZ形式、KML形式のファイルであればGoogleマップにインポートできる」ということです。
「PIX-PG011-PUW」のログをメモリカードから取り出してみると、「NMEA-0183(NMEA形式)」というフォーマットで記述されているファイルが見つかります。そのままではGoogleマップにはインポートできません。NMEA形式をKMZ形式・KML形式に変換しちゃえればいいわけですね。


そうすると、今度は「どうやって変換するか」という問題になりますが、そこは良いフリーソフトが見つかりました。


RouteConverter - Home


なんとWindows、Max OS、Linuxに対応していて32bit/64bit版がそれぞれある!すばらしい。
RouteConverterを使って、NMEA形式をKMZ形式に変換することができます。
PIX-PG011-PUWのログファイルは拡張子が「.log」になっているので、「.log」から「.nmea」に変えれば、RouteConverterで読み込むことができます。





「Save As」で「Google Earth 3 (*.kml)」で保存します。他にもGoogle Earth 4, 5のKML形式で保存できますが、Googleマップにインポートしたら経路以外の情報まで盛り込まれてしまうので、Googleマップでの経路編集の手間も考えて、私はGoogle Earth3のタイプにしました。お好みでどうぞ。





Googleマップのマイプレイスで、KML形式に変換したファイルを読み込むと、マップに経路が引かれます。測位点が多いので、経路の線が何本かに分かれてしまいます。





地図を拡大すると経路がガタガタなのがよく分かります。引かれた経路のポイントを操作して綺麗な線に編集していきます。



より大きな地図で 2012年9月21日経路 を表示