ブルベ用GPS:eTrex30用、OpenStreetMapを等高線付きにしてみる
前回はOpenStreetMapから日本語→ローマ字変換がなされたこちらのデータ→を利用させてもらってeTrex30に導入。非常に見やすい地図が表示されることが分かりました。改めて作って頂いた方に感謝。そして試しに等高線地図を作って重ねて表示させてみましたが、文字に等高線情報が重なってしまい見にくくなってしまってあまり良くない感じ。右側のキャプチャは等高線情報と道路情報を重ねて表示したときのその様子です。
しかしその後、なんとかして等高線をうまい具合に表示できないかと四苦八苦を再開し、OpenStreetMap系の等高線地図と合成することでようやく等高線の表示に成功しました。上のキャプチャ。左側です。信楽周辺。文字の上に等高線が重なってしまって文字が見にくくなっていましたが、うまく文字の下に等高線を表示されてます。
さて、ブルベ用GPSとして正月明けに購入したeTrex30。その内蔵地図だけでは使い物ならないのでフリーで使える地図は無いかと色々と検索。そしてとりあえずOpenStreetMapからmkgmapを用いてGarmin用imgファイルを作成してみると日本語部分が文字化け。途方に暮れていると日本語→ローマ字変換をおこなったimgファイルを作成してくれて配布までしてくれているこちらのサイト→を発見したので早速ダウンロード。その後等高線も表示させようと国土地理院の標高データから等高線図を作成。ダウンロードした地図をgmapsupp.img、等高線をgmapsupp2.imgとして2枚重ねて表示。すると文字情報が書かれている地図の上に表示されてしまい、せっかくローマ字に変換された道路情報が見にくくなってしまうことが判明。色々と調べてみても分からず。以上が前回までの顛末。
暗礁に乗り上げた感があるのでまたWebで色々検索してみるとこちら→のページを発見。
どうやらOpenStreetMap系の等高線情報を使う方法が書いてあるらしい。
まずは書いてあるようにこちらのサイト→にアクセスして日本地図をカバーするタイルデータをダウンロード。ダウンロードする際にはElevation contoursのチェック。またダウンロードリンクの下に表示されているSrtm2Osm用のコマンドテキストもコピーしてどこかに保存しておきます。
必要なタイルデータをダウンロードし終わったら、Srtm2Osmもダウンロードし、先ほどコピーして保存しておいたテキストファイルを参考にして以下のコマンドを実行。
srtm2osm -bounds1 47 8 48 9 -o 53273978.osm
47 8 48 9 -o 53273978.osmの部分は、ダウンロードしてきたファイルの最初の文字を5から6にしたときのファイルに変えて適宜実行します。この作業で等高線図が完成。
そしてその後mkgmapで以下のコマンドを実行。
java -Xmx1000m -jar “C:/path/to/mkgmap.jar” –draw-priority=0 5*.osm
ただ、mkgmapでのimg作成の際に富山県を中心とするタイルファイルでエラーが出てしまいimgファイルが作成できず。ファイル名は63297187.img。調べてみるとどうやら情報が多すぎるためらしい。この地域は富山、長野、岐阜の山間部が含まれるため等高線が多すぎるのが原因と思われます。
従ってこの地域のデータだけはsplitterで分割。
java -Xmx1000m -jar splitter.jar 6327187.osm
そしてできた.argsを使ってimgファイルを作ります。
java -Xmx1000m -jar mkgmap.jar -c template.args
そうするとmapname=63240001というファイルが自動的に作成されます。しかし63240001はこちら→からダウンロードさせてもらった道路地図で既に使われているので、これでは合成する際にエラーが発生。mapnameを変更すれば良いのですがmkgmapのコマンドでmapnameを変更する方法がよく分からず、しょうが無いのでargsファイルを開いてmapnameを直接変更して53297187.imgを作成しました。
こうしてできあがった5から始まる日本全国の等高線情報ファイル全てをmkgmapを使って道路地図と合成します。まずはこちらから→ダウンロードさせもらった道路地図の方はたとえばgmapsupp1.imgとしておき、以下のコマンドを実行。
java -Xmx1000m -jar mkgmap.jar –gmapsupp gmapsupp1.img 5*.img
この時、等高線データのどれかにエラーがあると実行されず。合成が終了すると約820Mほどのデータになりました。
そしてできあがったgmapsupp.imgをメモリーカードにコピーしてeTrex30で表示した地図がこちら。
信楽周辺。等高線情報が道路情報の下に来ていることが分かります。良い感じ。標高を表す文字情報もうまく表示されてます。
表示スケールを変化させてみるとこんな感じ。スケールが5kmの場合は等高線情報が出ず。3kmから出てきます。
ブルベの時に使いやすい800mだとこんな感じ。等高線が文字情報、道路の下にうまく表示されてます。となりはスケール1.2km。
ただeTrex30では多くの地域の地図でこのように等高線が道路の下に表示されてるのですが、時々そのような表示パターンになっていない部分もあるようです。また、一定標高以上の等高線を表示していない地域もあるようで、たとえば下のキャプチャーは上高地周辺。
ご覧の通り北アルプスの山々の等高線が抜けちゃってます。しかしたとえば富士山は全て等高線が表示されていたりしてて、そこら辺の基準がよく分からず。まあ自転車に乗るなら大丈夫ですが登山に使う場合は注意が必要。表示する等高線の制御はおそらくsplitterとSrtm2OSMでできると思われるのですが詳細はよく分かりません。ここら辺について何か情報がありましたら是非お教えください。
今回利用させてもらったOpenStreetMap、色々なツールがそろっていてとても助かりました。今後は利用させてもらうだけではなく、できれば地図情報を提供しその発展にも貢献していければと考えてます。
(2012/02/14追記)
本文に書かれているサイトの最新版(現時点で201版)をダウンロードさせてもらい等高線データの合成を試みましたがうまくいかないようです。
105版ではうまく合成でき、合成後にGmaptoolなどでPriorityをゼロに統一するとうまく表示されるようです。
杉本 智彦
実業之日本社
¥ 2,520 (定価)
在庫切れ (Amazon価格)
なし (Amazonポイント)
単行本
在庫切れ
(価格・在庫状況は3月6日 10:55現在)
・改訂新版 カシミール3D GPS応用編
・改訂新版 カシミール3Dパーフェクトマスター編
・スマホ+カシミール3D GPSログ自由自在 (実用百科)
・カシミール3D GPSで山登り 関東甲信越の山 300コース
・GARMIN eTrex10/20/30用 液晶保護フィルム 70005
http://getumen.com/chari/bicycle-item/%e3%83%96%e3%83%ab%e3%83%99%e7%94%a8gps%ef%bc%9aetrex30%e7%94%a8%e3%80%81openstreetmap%e3%82%92%e7%ad%89%e9%ab%98%e7%b7%9a%e4%bb%98%e3%81%8d%e3%81%ab%e3%81%97%e3%81%a6%e3%81%bf%e3%82%8bhttp://getumen.com/chari/wp-content/uploads/sites/5/20120201-320.jpghttp://getumen.com/chari/wp-content/uploads/sites/5/20120201-320-150x150.jpg自転車アイテムGPS,OpenStreetMap
参考になります。ありがとうございます。
Edge800では同じ方法で作っても、覆いかぶさるどころか、道路地図自体が全く見えなくなってしまいダメですね。まだ試行錯誤中ですが、道路も.osm形式の状態で等高線の.osmと一緒にmkgmapで変換するとうまく表示できてる感じです。
srtm2osmは自力でダウンロードまでやってくれるので、事前にダウンロードしておく必要は無いですよ。
上高地近辺の問題は未調査ですが、もしかしたらOSMの元データが欠けているかもしれません。
T-MZさん、情報ありがとうございます。
本文に書いてあるサイトから最新版のOSMデータをダウンロードさせてもらって、mkgmapでの等高線データの合成をやってみたら、こちらでも同じ状況になりました。
でもこの記事を書いたときの最新版、105版では何故かうまく合成できます。残念ながら両者にどのような違いがあるのかまではよくわかりません。そして合成後にGmaptoolなどでPriorityをゼロに統一するとうまく表示されるようです。
最近ようやく漢字→ローマ字変換の方法がわかってきましたので、OSM形式からの地図と等高線の合成もやってみようと思っています。おっしゃるように多分OSM同士の合成の方が確実だと思いますので、方法が確立しましたらまた記事にしたいと考えています。
また何か情報がありましたらお教え下さい!
それなりのデータを作る手順は確立できました。
リンク先の02/16版設定ファイルで作成できています。
大半は等高線が道路より下に表示されていますが、一部地域や縮尺によっては等高線が道路より上に表示されてしまったりするので、完全ではないです。
上高地近辺はSrtm2osmで拾った直後のデータが既におかしくなっています。strm2osmの問題か元データの問題かは分かりません。
国土地理院の基盤地図情報を組み込む方法を探るのもいいかも知れませんね。
T-MZさん、情報ありがとうございます。
やはり一部地域や縮尺にでは表示がおかしくなりますか。OpenCycleMapっていうものもあるのできっとうまく行う方法があるとは思うのですが。
2/16版設定ファイル、リンクが切れているようです。是非使わせていただきたいと思いますのでよろしくお願いします。
リンク切れ、失礼しました。置き直しましたので参考にして下さい。