2012年05月03日

Garmin eTrex 30 地図自作(OSM+Yahoo地図をymapjnxで切り出し)

Garmin eTrex 30を購入したexclamation
使用感のインプレは後で書くことにして。
と…とりいそぎ 今 行った事を書き留めるぜ!


はじめから中に入っている地図は大まかすぎるため、山歩きや自転車などで使い物にならない。
別の地図がほしくて探していた。

 ・UUD製作所 日本全国デジタル道路ナビ+10m等高線付 V4.0 2011年3月版:19,950円(17,955円)
  地図内容も新しく、けっこう良さそうな住友電工製道路地図。
  ポイント情報も豊富。地名などはローマ字。日本のみ。

 ・TKA Planet 日本地形図25000 全国版:24,800円
  地図は毎月更新(更新料3,500円)。メニューの日本語化もできる。
  国土地理院の地形図。日本のみ。

 ・カシミール3D :約2,520円
  カシミール3Dのソフトウェアと地図が収録された書籍を買うようになっている。
  2万5千分の1の地図は、3冊に分割されており、揃えると2,5250×2冊+2,730円。
  街歩きだと、2万5千分の1の地図はちょっと縮尺が大きい。
  でも、GPSデータの編集や風景の出力もできるので、その点を考えれば導入してもよいなあ。
  日本のみ。

 ・OSM(Open Street Map):無料
  オープンソースの地図。精度がいまいちとの情報あり。
  普通はGPSの他に紙の地図も持つことが多いので、だいたいの位置さえ分かればいい場合はこれもありかな。
  ルート検索もできる。海外の地図もあり。


できれば縮尺も選べ、慣れたグーグルマップを使えないか。
いろいろ探すと、Yahoo地図を切り出すソフトを見つけた。

  ・ymapjnx:無料
   Yahoo地図から Garmin BirdsEye JNX 形式のファイルを作成するツールだ。
   加工する手間はかかるが、グーグルマップに似ており、見やすい。
   海外の地図もあり。


無料の地図でとりあえずは試し、必要があれば有料の地図も検討することにしよう。


いろいろとインストールしたり、設定を変えてはGPSをつないだり、けっこう時間がかかった。
結局うまくいった手順を忘れないうちに記載しておこう。

---------------------------------------------------------------------

・OSMの導入

 1. OSMの日本エリアをダウンロード。
   ttp://admincabal.com/osm/ のjapan.zip。

 2. zipを解凍し、gmapsupp.img

 3. MicroSDに Garmin というフォルダを作成する。
   F:\Garmin のように

 4. 解凍してできたgmapsupp.imgを3.のフォルダへコピー

 5. MicroSDをeTrex30に挿入し、電源をいれると自動で認識する。

 6. 念のため、eTrex30の地図のsettingで Enable(利用可能)となっていることを確認する。


・ymapjnxを利用したYahoo地図

 1. Python(コンピュータ言語)をインストール。
   ttp://www.python.org/download/ 
   の Python 2.7.3 Windows Installer(使っているPCによる)

 2. Python Imaging Library (PIL)をインストール。
   ttp://www.pythonware.com/products/pil/
   の •Python Imaging Library 1.1.7 for Python 2.7 (使っているPCによる)

   私が一度アクセスしたところ、webが落ちていたが、時間を改めると復活していた。


 3. QLandkarte GTをインストール。(これから作るファイルがちゃんと作れているか確認用)
   ttp://sourceforge.net/projects/qlandkartegt/
   のダウンロードボタン


 4. ymapjnxをインストール
   ttp://biciliata.appspot.com/ymapjnx.htm
   のymapjnx14.zip (284KB) version 1.4 (2011-06-26)

 5. 4.ymapjnxのzipを解凍し、1.Pythonと同じフォルダにコピーする。


 6. 1.Pythonのフォルダある、今コピーした config.txtを開き、編集する。
   
  
   (1) gpxfile = None
      polylinearea = True
      となっていることを確認。(#がついていないこと)

   (2) Google Map等で地図にしたい範囲の緯度・経度を十進法で確認。
     Google Mapで右クリック、「この場所について」を選ぶと、緯度経度が検索窓に表示される。

      始点と終点をconfig.txtのlatlon1、latlon2に記載する。
     
     latlon1 = (34.9993497222222,135.034849166667)
     latlon2 = (34.3918980555556,135.801145555556)

   (3) 後はお好みで。
     # 使用する拡大レベル[1..20]を最大5個まで (1個の場合,)
     scalelist = (15, 16, 17, 18, 19)

     # 出力ファイル名
     filename = "example.jnx"

 7. 1.Pythonのフォルダにある、今コピーした start.batをメモ帳で開き、
   python.exeのパスがあっていることを確認する。
   1.Pythonのインストールの際、場所をデフォルトから変更していると、start.batも変更する。

 8. start.batを実行する。
   6.で、地図にする範囲が大きいと、大変時間がかかる。

 9. 1.Pythonのフォルダに example_15_16_17_18_19.jnx
   のようなjnxファイルができている。

 10. 3.QLandkarte GTでちゃんとできているか確認する。
   File、Load Mapからjnxファイルを読み込む。
   地図がない領域を表示していると当然読めないので、先ほど指定した緯度経度の付近をドラッグしたり、拡大したりして指定エリアまで行く。
   
 11. MicroSDにGarmin\BirdsEye フォルダを作成する。
    F:\Garmin\BirdsEye のように。

 12. 9.で作成したjnxファイルを11.のフォルダにコピーする。

 13. eTrex30を起動すると、自動で読み込む。
    念のため、eTrex30の地図のsettingで Enable(利用可能)となっていることを確認する。


これでOKのはず。
今手順を書けば簡単なのだが、当初は時間がかかった。
アフォなことに似た名前で、別のkmz形式のファイルを作るyhkmzで試していたのだ・・・。


さて、これでYahoo地図が使用可能。早速eTrexの画面上で確認する。
しかしちょっと薄くて(白飛びして)見にくい。画像のコントラストを変えてみる。


 14. Pythonのフォルダにある ymapjnx.py をメモ帳で開く。

 15. flagForceConvert = False になっているので、
    flagForceConvert = True に変更する。

 16. 下記の部分をお好みで変更する。
   私も適当に変更した。それでも画面は薄い。もう少し数値の追い込みが必要かも。

   pngimg = ImageEnhance.Contrast(pngimg).enhance(1.9)
   pngimg = ImageEnhance.Sharpness(pngimg).enhance(1.2)
   pngimg = ImageEnhance.Brightness(pngimg).enhance(1.1)
   gamma = 1.0
   pngimg = pngimg.point(lambda i: pow(i/255.0, 1.0/gamma) * 255.0)
   pngimg.save(jpgpath, "JPEG", quality=60)


よし、これで使えるようになったexclamation


・OSM+Yahoo地図
OSMの道路が強調されすぎて、見づらい面がある。


・Yahoo地図のみ



次は日本語化に挑戦だexclamation×2

参考:Garmin eTrex 30 日本語化
posted by PHOTON at 09:34| 日記