JA:OSM Map On Garmin

From OpenStreetMap Wiki
Jump to navigation Jump to search

broom

Help (89606) - The Noun Project.svg

OSM Map On Garmin

OSM と mkgmap で作った経路案内可能な地図を Garmin Colorado 300 で表示しているところ

多くの Garmin GPS デバイスは、ディスプレイに地図を表示することができます。この概要のページは、あなたの Garmin デバイスに OSM の地図を表示する方法について説明しています。

既製の地図

一部の人たちが、世界のいくつかの地域で Garmin 地図を作っています。詳しくはダウンロードを見てください。

OSM Map On Garmin/Download を参照してください

OSMデータから、あなた専用の地図を作る

ソフトウェア

プログラム ライセンス .osm.mp .mp.img .osm.img IMG 一括化(aggregation) 経路案内  .TYP の生成 .TDB の生成 レリーフ風の等高線 アップロード OSM 向けの開発? ユーザーインタフェース プラットフォーム
Mkgmap GPL いいえ はい はい はい はい はい はい いいえ はい コマンドライン クロスプラットフォーム (Java)
QLandkarte GPL いいえ いいえ いいえ はい いいえ はい いいえ GUI Linux, Mac OS X, Windows
cGPSmapper proprietary いいえ はい いいえ いいえ はい はい はい いいえ いいえ いいえ コマンドライン Linux (CLI), Windows (CLI & GUI)
sendmap proprietary いいえ いいえ いいえ はい いいえ いいえ いいえ いいえ はい いいえ コマンドライン Linux, Windows
Mapwel proprietary はい はい はい はい はい はい いいえ いいえ はい いいえ GUI Windows
osm2mp GPL はい いいえ いいえ いいえ はい いいえ はい コマンドライン Linux, Windows
OSM Composer proprietary いいえ いいえ はい いいえ いいえ はい はい はい はい はい GUI cross-platform (requires Java 1.6)
GroundTruth GPL はい いいえ はい いいえ いいえ はい はい はい はい はい コマンドライン Windows/Mono (.NET 3.5 SP1 required)
Osm2garminGUI GPL いいえ はい はい はい はい いいえ はい はい いいえ はい GUI Windows, Linux (Java + NetBeans RCP)
  • Mkgmap は、 OSM データを Garmin 地図イメージファイルに変換するためだけに開発された、オープンソースのJavaプログラムです。最初に試して見るべきでしょう。
  • QLandkarte は、地図を表示したりするためのオープンソースプログラムです。
  • cGPSmapper は、 Garmin 地図のテキスト表現をバイナリ地図ファイルに変換するプログラムです。 cGPSmapper は、 OSM ファイルを直接読み込むことができません。 MapCenter は、 cGPSmapper のウェブインターフェイスです。
  • sendmap は、 cGPSmapper の付属プログラムで、地図イメージファイルをまとめ、アップロードします。
  • Mapwel は、 GPS マッピングの為のオールインワンプログラムです。 Mapwel は、 OSM ファイルと、経路検索向けに Garmin IMG フォーマットへの変換をサポートします。
  • osm2mp は、経路案内可能な Gramin 地図を作ります。詳細とダウンロードについては、 this forum thread を参照してください。
  • OSM Composer は、 OSM と SRTM データから Garmin 地図を作る過程を簡略化する GUI です。これは単体では地図イメージを作ることはできず、既存のツールを操作するだけです。
  • GroundTruth は、 OSM データから、 Garmin 地図を作るオープンソースのコマンドラインアプリケーションです。 これは地物がどのように見えるかを指定するために、ウィキベースのレンダリングエンジンを持っています(このエンジンは Garmin TYP ファイルを生成し、使います)。また、 SRTM データから Garmin 地図用の レリーフ風の等高線 を作ります。これは、 .MP ファイルから IMG ファイルを作るときに cGPSmapper を使います。
  • Osm2garminGUI は OSM Planet ファイルや等高線の SRTM3 データをダウンロードしたり更新したりして、指定された地域のデータを展開し、 Splitter および Mkgmap で処理するまでを1ステップで行うためのオープンソースのプログラムです。

案内: OSMデータから地図を作る。

一般的な手順は、次の通りです(上記のソフトウェアの節も参照してください)。

  1. OSM データを入手する
    • 一番簡単な方法は、サイトの Export タブを使うことです。これは見ている範囲の地図がダウンロードできます。ダウンロード時のオプションで OpenStreetMap XML data を選択してください(ズームレベル11以上で有効になります)。
    • 国全体や世界全体を扱う場合は、 Planet.osm か、利用可能な抜粋されたデータをつかってください。
    • JOSMを使って、地域を選択、ダウンロードし、Save Asを選んで保存することもできます。(でも、大きなデータセットの場合は、これは効率的ではありません。JOSMは、GPSユニットのためのデータを使おうとしているときには必要ではないデータを表示する準備のために、数分も費やすからです。)
    • コマンドラインダウンロードについては、 Getting DataGroundTruth For Dummies#Downloading_OSM_Data を参照してください。
    • ソフトウェアを書く場合は、 XAPI を通じてダウンロードしてください。
  2. .大きな地域を分割する: 対象の地域が広大であったり、国単位である場合には、 OSM データから IMG ファイルへのコンパイル作業の前に Splitter を使って対象ファイルを分割する必要があります。
  3. .IMG ファイルに変換する: .osm ファイルを Garmin 地図イメージファイル(.img)に変換する必要があります。たぶん、 MkgmapGroundTruth を使うことになるでしょう。 Mkgmap は、まれに大きな入力ファイルを処理しないので、たぶん、 OSM ファイルを小さな塊にカットする必要があります。新しい splitter を使うのが最も簡単です。
  4. GMAPSUPP.IMG ファイルを作る(任意): あなたが直接GPSユニットに地図をアップロードしたいなら、複数の変換したIMGファイルを、 GMAPSUPP.IMG と言う名前の一括化したイメージファイルに変換になければなりません。 Mkgmapsendmapは、 この作業を行えます。 sendmapやMapSourceのようなプログラムは、アップロードする時にこのファイルを自動的に作ります。これらのプログラムを使ってあなたの作った IMG ファイルを GPS にアップロードするつもりなら、この作業を飛ばして、#GPS に地図をインストールの節に行くことができます。

もし Windows 機で国単位での地図を作成する場合、 User:GPS-Marco が作成したソフトウェア package (必要なツールとスクリプトの集合体です)を使うと、上記の作業をダブルクリック1回で済ませることができます。スクリプトによるOSMデータのダウンロードは以下のdownload.geofabrik.deサーバに依拠しています。利用可能な地域はページに記載されています。スクリプトを実行すると、コンパイル済みの最新版マップ(gmapsupp.img)が生成されます。また、自動車での移動に最適化された経路検索情報も含まれており、そのまま Garmin GPS 機器へアップロードが可能です。 簡易版のインストールに必要となる .reg 形式のファイルも同時に生成されます。

osm2gmapUser:Jsl が開発したコマンドラインユーティリティで、 Geofabrik データから単一の国の地図を作成できます。これは Mac OS X と Linux システムで動作し、 Basecamp にある Garmin 機器で利用できるように、地図データの受け取り、分割、 mkgmap、 gmapi-builder、 地図の作成を自動化します。

自分自身の地図の作成方法

(この情報は内容を確認した後、上記の手順に含めるか、削除する必要があります)

User:Computerteddy provides weekly updated tiles for the whole world which are available for download (1 GB archive of all tiles, access to gzipped single tiles). These can be combined to a Garmin gmapsupp.img using the free sendmap program (download).

  1. Determine the list of tiles that you are interested in with either of these scripts: Script based on Google Maps, script based on lat/lng coordinates
  2. Download the necessary tiles from the links mentioned above (be aware that no tiles are available for areas for which no map data is available, e.g. pure ocean tiles). Extract them if necessary.
  3. Copy sendmap20.exe to the folder where you stored the downloaded tiles.
  4. Use sendmap to create a gmapsupp.img: "sendmap20 -l tile1.img tile2.img tile3.img ... tileN.img"
    This script can generate the corresponding sendmap command if you need many tiles but be aware that you may have to remove the tile names for which no tiles exist (ocean tiles).
    Alternatively use mkgmap: "java -jar mkgmap.jar --gmapsupp tile1.img tile2.img tile3.img ... tileN.img"
    It's also a good idea to give the resulting .img file an internal description for when multiple files are loaded onto your Garmin or sharing with friends: see Topographic_maps_for_garmin_devices#Combining_the_data for adding a description.
  5. Upload your map to your device and enjoy your map.

あなただけの等高線地図

これについては、分離されたページtopographic maps for garmin devicesをみてください。

GPSに地図をインストール

直接GPSにインストール: あなたのGarminデバイスに地図をインストールするのに一番簡単な方法は、デバイスを「USBマスストレージモード」にして、Garminという名前のディレクトリにgmapsupp.imgという名前でコピーする方法です(ファイルがない場合には作成すればOKです)。詳細はOSM_Map_On_Garmin/Mass_Storage_Modeを見てください。

以下の例は、Linuxでファイルをコピーする方法です:

   wget http://path/to/gmapsupp.img
   sudo mkdir /mnt/gps/Garmin
   sudo mv gmapsupp.img /mnt/gps/Garmin/

インストールした地図は、Garminの"tools / settings / map / map info"に格納されています(訳注:日本語版では "ツール / 設定 / 地図 / 地図情報")。背景地図として表示する場合、ここから新しい地図を選択してください。

機種によっては、gmapsupp.imgをSDカードに配置する必要があります。(少なくとも、Nuvi 1490地図をインストールした際には"map info"画面に表示されませんでした)

sendmapを使ってインストール: あなたの持っているGPSデバイスがUSBマスストレージモードをサポートしていない場合には、sendmapやその他のプロプライエタリなソフトウェアを使ってデバイスに転送します。

MapSourceを使ってインストール: 他の方法に、Garminの地図プログラムMapSourceに一度あなたの地図を読み込んで、そこからアップロードします。インストールの仕方の説明は、OSM Map On MapSourceにあります。 一度MapSourceに地図をインストールして、ツールメニューのマップファンクションを選択します。そして、全てのあなたがアップロードしたいファイルを選択します。これをしているときに違うマップセットに切り替えることができます。そして、"デバイスに送る"機能を選択します。これで、既存のマップファイルは上書きされます。(ただし、Garminのベースマップは例外です。)

既存の gmapsupp.img ファイルを持ったら、どうするの?

Garmin デバイス/アプリケーションは、1つ以上のimg ファイルをサポートします。あなたの作った openstreetmap img ファイルに、gmapsup2.img か gmapprom.img と名前を付け替えてみてください。 Oregon 200 (firmware 3.42) and GPSMAP 62S (firmware 2.80), eTrex 20 (firmware 2.30)でテストした際には、Garminディレクトリ内の全ての .imgファイルを読み込みました。nüvi 1xxx と 3xxxでは、Mapディレクトリ内の全ての .imgファイルを読み込んでいます。必ずしもファイル名をgmapsupp.imgにする必要はありません。(実際のところ、機器で地図を読み込むかテストするには、ファイルをGarminディレクトリ配下から削除するか、拡張子を.img以外にリネームする必要があります)

複数の ".img"ファイルがインストールされている場合、".img"ファイルのヘッダ情報に付与された名称の影響で、Garminの設定画面で全てのファイルが"OSM Street Map"と表示されてしまい、個々のファイルの判別が困難になります。ただし、Garmin機器上での表示名を変更するのは非常に簡単です。

  1. Open the ".img" file in an editor that can handle binary data. Those editors are commonly referred to as hex editors (for Windows Frhed seems to be a good choice; it can partially open files which is important as .img files can be quite big). However, this is not an easy task for average computer users.
  2. 0x49-0x5C のバイトを、 ASCII で表示可能な文字列に変更します
    • 名前の後の使用しないスペースをスペースで埋めてください
    • マップファイルの種類によっては 0x5D は空白として扱われることがありますが、名前の領域には含まれません。
  3. 地図の詳細情報は 0x65-0x82 に格納されています
    • 名前の後の使用しないスペースをスペースで埋めてください
    • 詳細情報部分は、機器上では表示されないことがあります。例えば eTrex20 では、詳細情報は地図の名前を選択したときにのみ表示されます。
    • 機器によっては、詳細情報部分の一部のみが表示されることがあります。例えば eTrex20 では、 0x65-0x73 部分の文字列のみ表示されるようです。
    • On some devices, when both name and description fields are populated, 名前領域の最後か、詳細情報部分の先頭にスペースが1つ必要な場合があります。例えば eTrex20の場合、0x5C、あるいは 0x65のどちらかにスペースを配置し、2つの領域が分割されていることを明確にする必要があります。スペースが無い場合、行の折り返しの問題で、名前部分が表示されないことがあります。
    • 0x83も、技術的には詳細情報部分の一部です。ただし、この位置には必ず null文字列(0x00)を格納しなくてはなりません。
  4. ".img"ファイルを保存します。

古い手順

Windows の場合

メモリーカードがないとき
  • 手っ取り早いのはsendmapを使うことです。これはコマンドラインツールで、 gmapsupp.img ファイルをGarminデバイスに送ります。 既存の地図は上書きされるので、バックアップを先に取っておいてください。
  • MapSourceに一度登録した後で、他のセクションのマップと一緒に転送することもできます。(この方法はVista Cでは動かないこともあるようです。)どのようにするかは、OSM Map On MapSourceの1節にあります。(上記の方法と同様ですが。)どのセクションの地図でも、MapSourceに予め登録されている他の地図と一緒に、あなたのGPSユニットに転送できます。 どのようにするかは、MapSourceにOSM地図のページにかかれてます。地図を統合するために、MapSourceで一度に全部の地図を選択します。これは、違う地図の間でも機能します。そして、"send to device"を選択します。転送には結構時間がかかります。
メモリーカードがあるとき
  • もし、あなたがまだgmapsupp.imgファイルをGPSユニットの内部メモリーに転送したことがなく、GPSユニットがメモリーカードを持っているなら、カードリーダーやUSMマスストレージモードを使って、メモリーカードのgarminと言う名前のフォルダーにgmapsupp.imgファイルをコピーするだけです。

On Mac OS X

Garminの製品として、MapInstall と MapManager for the Mac software version 2.1.3 2010年1月5日版 Download (21.24 MB) が存在します。Garmin Mapsourceと同等です。user:Lambartusが作成した Garmin OSM World routableファイルが機能します(するはずです)

動作はLinuxと非常に似ています。ただし、Garmin機器の自動マウント先は "/mnt/gps"(など)ではなく、/Volumeとなります。機器のパス名は、機器シンボルを作成した上で情報パネル(command+iキー)にアクセスすることで変更可能です。例えば"GARMIN"に変更した場合、機器のパスは /Volume/GARMINとなります。On this device create a directory named "Garmin" and copy the file "gmapsupp.img" into it. That's it.

Older firmware versions of the Garmin GPSmap 76CSx are confused by files that OSX places on the card when indexing it with spotlight. After connecting the Garmin in mass storage mode, the next time the Garmin is powered off it will sound a continuous low error tone, only fixable by removing the batteries.

The fix is either to update the firmware, or to place a file called .metadata_never_index in the root folder of the Garmin memory card. To create the file, open a terminal and issue the following:

cd /Volume/"NO NAME" substituting the name the garmin card auto mounted as
touch .metadata_never_index

You may also need to clean up the spotlight files if they have already been placed

ls -a

will show you all the hidden files and

rm -rf <filename>

will delete them. Basically delete anything that's not the Garmin folder the .metadata_never_index file, or the gmapsupp.img file. Don't forget to delete any hidden files inside the Garmin folder:

cd Garmin
ls -a
rm -rf <hidden file to delete>

その他の場合

今あるgmapsupp.imgファイルは、今まで保持してきた地図の情報を含んでます。Mkgmapで、今までの地図に新しいgmapsupp.imgファイルを統合することができます。:

   java -jar mkgmap.jar --gmapsupp (今までの地図.img) (新しく加えたい.img)

(.imgファイルの順番はどっちでも構いません。)

注: 2つのgmapsupp.imgファイルを統合するのは時々うまく行かないようですが、それらの元になった2つのファイルを統合するのはうまく行きます。例:

   java -jar mkgmap.jar --gmapsupp 1234567.img 2345678.img

gmapsupp.imgファイルができあがったら、そのファイルをGarminデバイスにコピーします:

   sudo cp gmapsupp.img /mnt/gps/Garmin/

MapSource フォーマットの地図をOS X フォーマットに変換する。

まず、ダウンロードしたosm データを tdb と img ファイルに変換する必要があります。

java -Xmx512m -jar mkgmap.jar --tdbfile --gmapsupp map.osm

MapSource フォーマットの地図は(一つの.tdb ファイルと .img ファイルの束)は、MacOS X の.gmapi フォーマットに、Gmapibuilderで変換することができます。この方法で、地図はRoadtripでも使えるようになります。

Using POIs from OSM along with Garmin Maps

If you want to use just POIs from OSM (e.g. "amenities") on your Garmin device, along with the maps that Garmin provided, have a look at the "Using POIs from OSM along with Garmin Maps" page.

Garmin also offers a free POI Extra pack that is generated out of OSM data (Europe) and released under ODbL.

Raster Maps

GPSmap 62s with OSM Mapnik raster map

Newer Generations of Garmin Devices can display raster maps via the KMZ capability and Birdseye view. Garmin's use of the KMZ format is rather limited and allows only for smaller maps. To create a KMZ file from a custom raster map is possible with MapTiler or using a Google Earth overlay. The proprietary JNX format of the Birdseye view on the other hand allows for maps with up to 50000 tiles on 5 zoom levels. The JNX format has been re-engineered and there are multiple tools to create JNX Raster Maps that can be used after appying a firmware patch.

デバイス(装置)

OSM地図は、すべてのアップロードすることができるGarminデバイスの上で機能するはずです。これは、Colorado, eTrex Legend, eTrex Vista, eTrex Summit, eTrex Venture, GPSMAP, Nüvi, Zūmo, Oregon, Quest, そしてStreetpilot を含んでいます。

もし、あなたがOSMの地図が機能しないGarminデバイスを知っているなら、ここにリストしてください。

その他関連

  • OSMGarminMapは、cGPSmapperで読み込み変換できるファイル形式に、OSM データを変換する古めのXSLTスタイルシートです。あなたがハックしたいと思わない限り、役に立たないでしょう。
  • Cycle mapは、OSMデータをMkgmapでカスタムレンダリングをするつくる方法について説明されています。
  • GPS Maps From OSM Dataは、OSMデータからGPS地図を生成するWebインターフェイスについて説明しています。
  • OSM_Map_On_Garmin/Format は、Garmin地図イメージファイルフォーマットについてのもっと詳しい情報です。
  • OSM_Map_On_Garmin/WINE MapSourceは、wineでどうやったらオリジナルのMapSourceを使うことができるかについて書いてあります。(もしsendmap も qlandkarte も使えなかったら、)
  • GroundTruth, generates maps for Garmin GPS units using OpenStreetMap data and NASA's SRTM digital elevation model
  • See /Postcode Search On Garmin how to use open codePoint data set to enable postcode searching.
  • OS OpenData Contours on Garmin - add UK contours from Ordnance Survey OpenData.

外部リンク

  • MapSetToolKit can be used to open up an IMG file set (or just 1 IMG tile) and create a Garmin MapSource view. (it requires cGPSmapper which is free to download) it has been done before, but i forgot how exactly (might require editing zoom levels with GPSMapEdit
  • PocketMV は、Garmin IMGファイルをWindows PDAに表示させる($20)シェアウエアです。
  • Mario Advisor is a free java utility to display Garmin IMG maps in your mobile phone.
  • www.digitalmobilemap.com は、Garmin IMG 地図をあなたの携帯電話に表示させるJ2MEプログラムです。このアプリケーションは、経路案内可能な地図をサポートしていて、A* アルゴリズムを自動経路案内に使ってます。
  • PTGMAPは、WindowsMobile デバイスに、Garminフォーマットの地図を表示させるプログラムです。
  • Glopus (20ユーロ, ドイツ) もう一つのWIndows PDA, PNA や PCに Garmin フォーマットの地図を表示するソフトウェアーです。主にラスタ地図を表示する様に開発されていて、IMG 地図をオーバーレイとして表示します。
  • BBBike.org extract service offers Garmin maps for an area of your choosing, style OSM, cycle, BBBike, OpenSeaMap, Openfietsmap Lite or Leisue
  • MapTiler is a program to convert raster images into KMZ format compatible with Garmin handheld GPS devices. There is a free version available that leaves a small watermark over the maps, or a start version for $25 with no watermark.
  • openstreetmap.nl Has a service that allow you to select your area and download different kind of Garmin maps (Generic Routable (old & new style), Routable Bicycle (Openfietsmap Lite), Generic Nautical (non-routable) and Transparent overlay with elevation contours)