JP2004061913A - Structure of map data, map data processing device and recording medium - Google Patents
Structure of map data, map data processing device and recording medium Download PDFInfo
- Publication number
- JP2004061913A JP2004061913A JP2002220923A JP2002220923A JP2004061913A JP 2004061913 A JP2004061913 A JP 2004061913A JP 2002220923 A JP2002220923 A JP 2002220923A JP 2002220923 A JP2002220923 A JP 2002220923A JP 2004061913 A JP2004061913 A JP 2004061913A
- Authority
- JP
- Japan
- Prior art keywords
- mesh
- map data
- data
- information
- map
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Navigation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Traffic Control Systems (AREA)
- Instructional Devices (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、地図データの構造、地図データ処理装置、および該地図データの構造を有するデータを記録した記録媒体に関する。
【0002】
【従来の技術】
経路計算をし、推奨経路を表示してナビゲーションを行うナビゲーション装置が知られている。経路計算に使用される経路計算用データは、地図をメッシュ状に分割した単位で管理することも知られている。また、経路計算用データを縮尺率の異なる複数のレベルに分けて管理し、経路計算にあたり複数のレベルの経路計算用データを使い分けることも知られている。
【0003】
【発明が解決しようとする課題】
しかし、メッシュ状に分割した単位で経路計算用データを読み出すと、読み出し装置の読み出しヘッドのシーク回数が増え、読み出し時間がかかるという問題が生じていた。
【0004】
本発明は、記録媒体などで提供される地図データを効率よく読み出し、かつ、レベル間の対応を効率よく行うことが可能な地図データの構造、そのような構造を有する地図データを使用する地図データ処理装置、およびそのような構造を有する地図データを記録した記録媒体を提供することにある。
【0005】
【課題を解決するための手段】
請求項1の発明は、地図に関する情報を有し、地図データ処理装置により処理可能な地図データの構造に適用され、縮尺率が異なる複数のレベル単位で地図に関する情報を備えた構造と、各レベル毎に、地図をメッシュ状の複数の区画に分割し、分割した区画単位に対応させて地図に関する情報を分割した構造と、地図に関する情報を、隣接する区画を複数集めた区画セット単位で管理し、区画セット単位で地図データ処理装置により処理される構造と、各レベル内において、区画セットを管理する情報を有する管理テーブルを備える構造とを備え、管理テーブルは、各レベルの区画セットのレベル間の対応関係を演算により求めることが可能な情報を有するものである。
請求項2の発明は、請求項1記載の地図データの構造において、管理テーブルは、区画セットを代表する基準区画の位置を表す情報と、区画セットの分割たて方向の数に関する情報と、分割横方向の数に関する情報とを有することとするものである。
請求項3の発明は、請求項2記載の地図データの構造において、区画セットは矩形形状を有し、区画セットを代表する基準区画は、区画セットの左下に位置する区画であることとするものである。
請求項4の発明は、請求項3記載の地図データの構造において、区画セットを管理する情報は、区画セットを代表する基準区画が分割横方向および分割たて方向を基準として並ぶ順序で格納されることとするものである。
請求項5の発明は、請求項1〜4のいずれか1項記載の地図データの構造において、各レベル内において、地図をメッシュ状の複数のブロックに分割し、複数の区画は、各ブロックをさらに分割して得られた区画であり、管理テーブルは、各ブロック毎に設けられることとするものである。
請求項6の発明は、請求項1〜5のいずれか1項記載の地図データの構造において、地図データ処理装置が取得した地図に関する情報は、管理テーブルを使用して、区画セット単位で更新可能であることとするものである。
請求項7の発明は、請求項1〜6のいずれか1項記載の地図データの構造において、地図上の道路の交差点をノードとし、地図に関する情報はノードに関する情報を有し、区画単位に分割した地図に関する情報は、該区画内のノードと他のレベルの対応するノードとのレベル間ノード対応情報をさらに有し、区画セットのレベル間の対応関係と区画セットを構成する区画のレベル間ノード対応情報を使用して、ノードのレベル間の対応関係を把握することが可能であることとするものである。
請求項8の発明は、請求項1〜7のいずれか1項記載の地図データの構造において、地図に関する情報は、経路計算に使用される地図上の経路に関する情報であることとするものである。
請求項9の発明は、地図データ処理装置に適用され、請求項1〜8のいずれか1項記載の地図データの構造を有する地図データが記録された記録媒体を搭載する記録媒体駆動手段と、記録媒体に記録された地図データに基づき、地図データの処理を行う処理手段とを備えるものである。
請求項10の発明は、地図データ処理装置に適用され請求項8記載の地図データの構造を有する地図データが記録された記録媒体を搭載する記録媒体駆動手段と、記録媒体に記録された地図上の経路に関する情報に基づき、経路計算を行う処理手段とを備えるものである。
請求項11の発明は、コンピュータあるいは地図データ処理装置に読み取り可能な記録媒体に適用され、請求項1〜8のいずれか1項記載の地図データの構造を有する地図データを記録したものである。
【0006】
【発明の実施の形態】
図1は、本実施の形態において、地図表示用データや経路計算用データなどの地図データの授受について説明する図である。車載用ナビゲーション装置1は、CD−ROMやDVD−ROMなどの記録媒体2から、地図データや管理情報や案内検索データなどを読み取る。リムーバブルメモリ3からは、地図データなどの更新データの提供を受ける。リムーバブルメモリ3は、地図データの一部を更新するために更新データ等が記録された取り替え可能な記録媒体である。
【0007】
また、ナビゲーション装置1は、携帯電話などの通信装置4とも接続可能である。ナビゲーション装置1は、通信装置4を介してインタネット5に接続し、さらにインターネット5を介して地図サーバ6に接続することができる。地図サーバ6は、古い地図データから最新の地図データまでを地図データベース7に保有し、また、古い案内検索データから最新の案内検索データまでを案内検索データベース8に保有する。従って、地図サーバ6は、地図データの一部を更新する更新データをインターネット5を介してナビゲーション装置1に提供することができる。なお、案内検索データとは、POI等の位置情報、種別、名称等の属性情報を格納したデータである。
【0008】
ナビゲーション装置1は、制御装置11と不揮発性メモリ12を有する。制御装置11は、マイクロプロセッサおよびその周辺回路から構成される。不揮発性メモリ12は、ナビゲーション装置1の内部に設けられたハードディスクやフラッシュメモリなどの不揮発性メモリである。不揮発性メモリ12は、ナビゲーション装置1の電源が落とされても、書きこまれたデータが消えない記憶装置であればどのようなものでもよい。
【0009】
記録媒体2は、一旦ナビゲーション装置1に搭載すると、新たな記録媒体2と入れ替えない限りナビゲーション装置1に搭載したままの状態となる。従って、リムーバブルメモリ3に対して固定メディアと称してもよい。地図データベース7や案内検索データベース8は、新旧すべての地図データや案内検索データなどを有しているためマザーデータのデータベースである。地図サーバ6は、地図データベース7や案内検索データベース8を使用して、初期の(更新前の)地図データなどを有する記録媒体2や、更新用データを有するリムーバブルメモリ3を準備することができる。
【0010】
図2は、車載用ナビゲーション装置1のブロック図である。ナビゲーション装置1は、制御装置11、不揮発性メモリ12、現在地検出装置13、DVD駆動装置14、メモリ15、通信インターフェース16、リムーバブルメモリ読込装置17、モニタ18、入力装置19を有する。
【0011】
現在地検出装置13は車両の現在地を検出する現在地検出装置であり、例えば車両の進行方位を検出する方位センサや車速を検出する車速センサやGPS(Global Positioning System)衛星からのGPS信号を検出するGPSセンサ等から成る。DVD駆動装置14は、記録媒体2を搭載して地図データなどを読み込む装置である。本実施の形態では、記録媒体2はDVD−ROMとする。なお、CD−ROMや他の記録媒体であってもよい。
【0012】
メモリ15は、現在地検出装置13によって検出された車両位置情報等を格納したり、制御装置11が演算した推奨経路上のノード情報やリンク情報等を格納するメモリである。さらに、後述するメッシュ管理テーブルを格納したりもする。メモリ15は制御装置11のワーキングエリアである。通信インターフェース16は、通信装置4を接続するインターフェースである。通信インターフェース16を介して携帯電話の利用や、インターネットとの接続が可能である。リムーバブルメモリ読込装置17は、リムーバブルメモリ3を装填しリムーバブルメモリ3からデータを読み込むことが可能な装置である。
【0013】
モニタ18は、地図や推奨経路や各種情報を表示する表示装置である。モニタ18は、ナビゲーション装置本体の一部として一体に設けてもよいし、筐体としては別々に設けてもよい。さらに、モニタ18のみを、ナビゲーション装置本体とケーブルなどによって接続し、分離した位置に設けるようにしてもよい。入力装置19は、経路探索時に車両の目的地等を入力したりする入力装置である。リモコンであってもよいし、モニタ18の画面上に設けられたタッチパネルなどで構成してもよい。制御装置11は、現在地検出装置13で検出された車両の現在地情報と記録媒体2や不揮発性メモリ12に格納された地図データなどを使用して、道路地図の表示、経路計算(経路探索)、経路誘導等の各種のナビゲーション処理を行う。なお、制御装置11が実行する各種の処理プログラムは、制御装置11内部に設けられたROM(不図示)に組み込まれている。
【0014】
−地図データの構造−
上述した地図データのデータ構造について、さらに詳しく説明する。地図データは、地図に関する情報であり、背景(地図表示用)データ、ロケータ用データ、経路計算用データ、誘導データ(交差点名称・道路名称・方面名称・方向ガイド施設情報など)などである。背景データは道路や道路地図の背景を表示するためのデータである。ロケータ用データは、車両の現在地の特定やマップマッチングなどに使用されるデータである。経路計算用データは、道路形状とは直接関係しない分岐情報などから成るネットワークデータであり、主に推奨経路を演算(経路探索)する際に用いられる。誘導データは、交差点の名称などから成るデータであり、演算された推奨経路に基づき運転者等に推奨経路を誘導する際に用いられる。
【0015】
本実施の形態の地図データは、レベル、ブロック、メッシュという概念で管理する。本実施の形態では、地図データを縮尺率が異なる7つのレベルに分け、最詳細の縮尺率のレベルをレベル0とし、最広域地図のレベルをレベル6とする。各レベルは縮尺率が異なる地図データを含むものであるが、対象となる領域は各レベルとも同じである。すなわち、日本全土が対象であると、各レベルごとに縮尺率が異なる日本全土の地図データを有する。例えば、レベル0では縮尺率1/6250、レベル1では縮尺率1/25000、レベル2では縮尺率1/100000、レベル3では縮尺率1/400000、レベル4では縮尺率1/1600000、レベル5では縮尺率1/6400000、レベル6では縮尺率1/128000000の日本全土の地図データを有する。すなわち、レベル0〜6に対応して7つの地図データのセットがある。
【0016】
図3は、地図データのレベル、ブロック、メッシュの関係を説明する概念図である。代表して、レベル1と2を示している。符号101は、本地図データの対象となる領域を示す。日本全土の地図データを扱うとすると、領域101は日本全土を含む範囲となる。レベル1もレベル2も同じ範囲の領域を対象としている。レベル1では、領域101は、4×4=16の複数のブロック102に分けられて管理される。一つのブロック102は、複数のメッシュ103に分けられて管理される。本実施の形態では、m×n枚のメッシュで管理する。各ブロック102間の分割メッシュの数は、同じレベルでは同一数m×nである。
【0017】
レベル2では、領域101は、2×2=4の複数のブロック104に分けられて管理される。一つのブロック104は、複数のメッシュ105に分けられて管理される。本実施の形態では、p×q枚のメッシュで管理する。各ブロック104間の分割メッシュの数は、同じレベルでは同一数p×qである。
【0018】
レベル1とレベル2では、領域101を分割したブロックの数、各ブロックを分割したメッシュの数は異なる。これは、縮尺率の小さい(分母の値が大きい)より広域地図を扱うレベル2と、レベル2に比べて縮尺率の大きい(分母の値が小さい)より詳細地図を扱うレベル1とでは、扱うデータ量も異なるためである。すなわち、各レベルにおいて扱うデータ量に応じた適切な分割を行うようにしている。ただし、同一レベル内では、1つのブロックの大きさおよび1つのメッシュの大きさは同じである。なお、図3の各レベルの分割ブロック数は、1例であり、必ずしもこの数に限られるものではない。
【0019】
上記分割のたて方向は緯度方向に対応し、横方向は経度方向に対応する。上記ブロック、メッシュの呼び名は、本実施の形態で便宜上名づけたものである。従って、必ずしもこれらの名称に限定されるものではない。メッシュをパーセルと言ってもよいし、ブロックを第1の分割単位、メッシュを第2の分割単位と言ってもよい。また、これらのブロック、メッシュは地理的に分割された単位と言ってもよい。
【0020】
−経路計算用データ−
以下、地図データのうち経路計算用データについて説明する。経路計算用データは、上述したようにメッシュ単位に分割され管理される。本実施の形態では、さらにメッシュセットという概念を導入する。
【0021】
図4は、メッシュセットの概念を説明する図である。符号201は前述したメッシュである。以下、各メッシュを基準メッシュと言う。基準メッシュ201を複数集めた単位をコアメッシュ202と言う。図4の例では、お互いに隣接する基準メッシュ201が6枚集められてコアメッシュ202を構成している。コアメッシュ202の回りには、破線で示された基準メッシュ201が適宜配置されている。これをオーバーラップメッシュ203と言う。このコアメッシュ202とオーバーラップメッシュ203を合わせてメッシュセット204を構成する。
【0022】
コアメッシュ202を構成する基準メッシュ201の枚数は、メッシュセット204によって異なる。図4の例では6枚であるが、1枚あるいは複数の基準メッシュ201でメッシュセット204が構成される。また、コアメッシュ202の形状は、本実施の形態では、矩形状(4角形)とする。ただし、矩形状のみならずL字状等の形状であってもよい。すなわち、複数の隣接する基準メッシュ201で構成されるあらゆる形状のメッシュセット204であってもよい。ただし矩形状が最も好ましい。
【0023】
コアメッシュ202は、ブロック内において重複することなくまた隙間があくことなく設定される。コアメッシュ202周辺に設定されるオーバーラップメッシュ203は、他のメッシュセットのコアメッシュを構成する基準メッシュと重複する。また、他のメッシュセットのオーバーラップメッシュを構成する基準メッシュと重複する場合もある。また、基準メッシュ1枚のコアメッシュと1または複数の基準メッシュからなるオーバーラップメッシュとで構成されるメッシュセットもある。
【0024】
各基準メッシュに対応するデータをメッシュデータと言う。経路計算用データは、基準メッシュのメッシュデータとして管理される。オーバーラップメッシュを構成する基準メッシュのメッシュデータは、対応する他のメッシュセットのコアメッシュを構成する基準メッシュのメッシュデータからデータを間引いて生成される。すなわち、オーバーラップメッシュのメッシュデータは、コアメッシュのメッシュデータより少ない、粗いデータで構成される。詳細は、さらに後述する。
【0025】
このようにして、経路計算用データは、基準メッシュ単位で管理され、さらにメッシュセット単位で管理される。メッシュセット単位で管理される経路計算用データは、記録媒体2にメッシュセット単位で格納される。メッシュセット単位で記録媒体2に格納された経路計算用データは、記録媒体2からメッシュセット単位で連続的に読み出すことが可能となる。これにより、メッシュ単位で管理されたデータをメッシュ毎に読み出すことに比べ、DVD駆動装置の読み取りヘッドのシーク回数が激減し、処理の高速化が実現される。メッシュセット単位のデータは、基本的にはコアメッシュのデータ、オーバーラップメッシュのデータの順に格納する。また、アプリケーションによっては、メッシュセットを構成する任意の基準メッシュの位置からメッシュデータを読み出すことも可能である。
【0026】
なお、本実施の形態では、上述したように経路計算用データに対してメッシュセットの概念を導入している。モニタ18に地図を表示するために使用される地図表示用データでは、特にメッシュセットの概念を導入する必要はない。これは、地図表示用データは、単にモニタ18の表示画面に対応した範囲のメッシュデータを読み込むだけでよい。すなわち、メッシュデータが例えば東西方向に順に並んで格納されていれば、順次その順番で読み出せばよい。
【0027】
しかし、経路計算用データでは、必ずしも、東西方向などの一定方向に並ぶメッシュデータを読み込んでも効率が良いとは限らない。例えば、幹線道路に沿ってメッシュセットを構成しておけば、経路計算時に効率がよい場合がある。本実施の形態では、経路計算に最も適したメッシュセットを、場所場所に応じて適宜設定していく。メッシュセットの設定は、例えば、経験をベースに人手により設定してもよいし、あるいは、コンピュータのシミュレーションによりもっとも効率のよい構成を設定してもよいし、また、一定の法則により設定するようにしてもよい。一定の法則とは、例えば上述したように幹線道路や高速道路に沿って設定したり、県や市町村の行政区画に対応して設定したりすればよい。
【0028】
−メッシュセットの管理−
次に、上述したメッシュセットの管理について説明する。経路計算用データは、上述した通り、レベル、ブロック、メッシュセット、基準メッシュという概念で管理される。各基準メッシュのメッシュデータとして経路計算用データが準備される。簡単に言うとブロック管理テーブルによりブロックを管理し、メッシュ管理テーブルにより各ブロック内におけるメッシュセットを管理する。
【0029】
図5は、ブロック管理テーブルとメッシュ管理テーブルと実際のデータであるメッシュセットデータとの関係を概略的に示す図である。ここで、メッシュセットデータとは、メッシュセットを構成する基準メッシュのメッシュデータの集まりである。まず、レベルxのデータには1つのブロック管理テーブルがあることを示している。ブロック管理テーブルには、そのレベル内におけるすべてのブロックに関する情報がある。例えば、図3のレベル1では16枚のブロックがあり、対応する16個のブロック情報がある。レベル2では、レベル1の4枚のブロックが1枚のブロックとして管理されるため、4枚のブロックがあり、対応する4個のブロック情報がある。図5ではさらに、1枚のブロックに1つのメッシュ管理テーブルがあることを示している。
【0030】
このメッシュ管理テーブルによりメッシュセットを管理する。例えば、メッシュセットデータを取得するための記録媒体2や不揮発性メモリ12へのアクセスや、レベル間のメッシュセットの対応関係などを管理する。正確に言うと、メッシュ管理テーブルはメッシュセットを管理するための情報を有し、制御装置11がこのテーブルを使用してメッシュセットを管理する。
【0031】
図6は、レベル1のブロック管理テーブルを示す図である。項番1の「ブロック管理テーブルのサイズ」には、ブロック管理テーブル(項番1〜23まで)のデータサイズが収容される。サイズは2バイト1ワードとしてワード数で表現される。項番2の「ブロック管理情報の数」には、ブロック管理テーブル内のブロック管理情報の数が収容される。レベル1では図3にも示した通り16枚のブロックが存在するので16が収容される。項番3〜6には、このブロックの地図上の範囲を緯度および経度で示す数字が収容される。ただし、経度の場合は経度からマイナス100した値が収容され、緯度の場合は緯度に3/2を掛けた値が収容される。例えば、東経136度の場合は36が収容され、北緯33度20分の場合は(33+20/60)×(3/2)=50が収容される。項番7の「メッシュ管理テーブルへのポインタ」には、メッシュ管理テーブルの格納先が記録媒体2上にあるか不揮発性メモリ12上にあるかの識別情報と、そのアクセスアドレスが格納される。この内容については、さらに後述する。
【0032】
図7は、ブロック管理テーブルの「メッシュ管理テーブルへのポインタ」でアクセスされるメッシュ管理テーブルの内容を示す図である。項番1の「メッシュ管理テーブルのサイズ」には、メッシュ管理テーブル(項番1〜7まで)のデータサイズが収容される。サイズはワード数で収容される。項番2の「緯度方向の基準メッシュ管理数」には、本テーブルで管理される緯度方向の基準メッシュ数が収容される。図3のレベル1の例では、n×4の値が収容される。項番3の「経度方向の基準メッシュ管理数」には、本テーブルで管理される経度方向の基準メッシュ数が収容される。図3のレベル1のブロック102を考えた場合、南北方向にn枚の基準メッシュがあるので「緯度方向の基準メッシュ管理数」にはn、東西方向にはm枚のメッシュがあるので「経度方向の基準メッシュ管理数」にはmが収容される。
【0033】
項番4、5の「下端緯度」「左端経度」には次に説明するファイル管理テーブルを構成する左下基準メッシュの位置を示す。緯度、経度については前述した計算により求められる値が収容される。なお、基準メッシュの位置を表す緯度とは例えば基準メッシュの下側(南側)の緯度であり、経度とは例えば基準メッシュの左側(西側)の経度である。項番6の「ファイル管理テーブル区分」とはファイル管理テーブルの種類を示す。例えば、背景データのみの場合は0で示し、経路計算用データをメッシュセットで管理する場合は1で示される。項番7のファイル管理テーブルは次に説明する各メッシュセットのサイズ等の情報が収容される。
【0034】
図8は、上述した区分1の場合のファイル管理テーブルを詳細に示す図である。東西方向の基準メッシュの並びを1行として下端行から上端行の順に管理する。各行内においては、左端(西端)から順に右端(東端)までの順に管理する。ただし、メッシュセットは複数の基準メッシュから構成されているので、各メッシュセットのコアメッシュの左下基準メッシュがどの位置かによってメッシュセットを管理する。すなわち、あるメッシュセットのコアメッシュの左下基準メッシュが下端行に位置すれば、そのメッシュセットはファイル管理テーブルの下端行のデータとして管理する。左下基準メッシュはメッシュセットを代表する基準メッシュである。そして、左下基準メッシュが下端行に位置するメッシュセットが複数ある場合は、左端(西端)から位置する順でメッシュセットを管理する。すなわち、メッシュセットを経度方向および緯度方向を基準にして左下基準メッシュが並ぶ順序で管理する。
【0035】
図8において、項番1のメッシュ(メッシュセット)データ先頭ポインタには、各行の左端メッシュセットデータの記録媒体2のアドレスが収容される。下端行の場合、そのブロックで最初に収録されるメッシュセットへの記録媒体2のアドレスが収容される。項番2は、コアメッシュの左下基準メッシュの相対番号である。基準メッシュの相対番号とは、ブロックの左下基準メッシュを1とし、行内を左から右へ、下端行から上端行へ昇順に割り振った番号である。
【0036】
項番3は、コアメッシュ内の緯度方向の基準メッシュ枚数である。項番4は、コアメッシュ内の経度方向の基準メッシュ枚数である。メッシュセットは、上述した通り、本実施の形態では矩形形状をしている。従って、項番3および項番4の値を掛け算することにより、コアメッシュを構成する基準メッシュの数が計算できる。コアメッシュが矩形形状していない場合は、これらの値より、コアメッシュの大体の範囲が想定できる。
【0037】
項番5は、オーバーラップメッシュも含めたメッシュセットの下端緯度(コアメッシュ内の左下基準メッシュからの相対基準メッシュ枚数)である。項番6は、オーバーラップメッシュも含めたメッシュセットの左端経度(コアメッシュ内の左下基準メッシュからの相対基準メッシュ枚数)である。項番7は、オーバーラップメッシュも含めたメッシュセット内の緯度方向の基準メッシュ枚数(矩形領域サイズ)である。項番8は、オーバーラップメッシュも含めたメッシュセット内の経度方向の基準メッシュ枚数(矩形領域サイズ)である。項番9は、メッシュセットデータの格納場所を示す情報が入る。メッシュセットデータが更新されていない場合は、記録媒体2上に格納されている旨の情報が入る。格納アドレスについては、項番1のメッシュ(メッシュセット)データ先頭ポインタの内容と、順次格納されているメッシュセットデータサイズを加算して求めることができる。メッシュセットデータが更新されている場合は、不揮発性メモリ12上に格納されている旨とそのアドレスが入る。なお、アドレスの代わりに更新ファイル名であってもよい。項番10は、接続・部分規制メッシュセットデータサイズである。項番11は、レベル間対応メッシュセットデータサイズである。
【0038】
項番2〜項番11が1つのメッシュセットの管理情報(管理データ)である。項番12〜項番21は右隣りのメッシュセットの管理情報である。次に、その右隣りのメッシュセットの管理情報が続く。右端(東端)まで行くと、1行上(北)に進み、同様に左端(西端)から右端(東端)にメッシュセットの管理情報が格納される。メッシュセットのコアメッシュは複数の基準メッシュから構成されているので、いずれのコアメッシュの左下基準メッシュも存在しない行が生じる。そのような行には、メッシュセットの管理情報は存在しない。
【0039】
図24は、メッシュセットをファイル管理テーブルで管理する様子を説明するための図である。符号301〜符号309は各メッシュセットのコアメッシュを示す。コアメッシュ301、302、303の左下基準メッシュは下端行に位置する。コアメッシュ301を含むメッシュセットは下端行の左端メッシュセットとして管理される。その右隣りのメッシュセットは、コアメッシュ302を含むメッシュセットであり、その右隣りがコアメッシュ303を含むメッシュセットである。下端行+1行目には、左下基準メッシュが位置するコアメッシュは存在しないためファイル管理テーブルにはデータが存在しない。下端行+2行目には、コアメッシュ304の左下基準メッシュが位置するので、コアメッシュ304を含むメッシュセットが下端行+2行目の左端メッシュセットとして管理される。同様にして、下端行+3行目で、左端からコアメッシュ305を含むメッシュセット、コアメッシュ306を含むメッシュセット、コアメッシュ307を含むメッシュセットが管理され、下端行+4行目で、左端からコアメッシュ308を含むメッシュセット、コアメッシュ309を含むメッシュセットが管理される。
【0040】
−メッシュセットデータ−
次にメッシュセットデータについて説明する。メッシュセットデータは、メッシュセットを構成する基準メッシュのメッシュデータの集まりである。上述した通り、経路計算用データは各基準メッシュのメッシュデータとして管理される。経路計算用データは、接続・部分規制データとレベル間対応データとに分かれる。
【0041】
図9は、接続・部分規制データのメッシュセットデータを示す図である。図9に示されるデータの固まりで記録媒体2、あるいは不揮発性メモリ12に格納される。項番1の基準メッシュ数は、メッシュセットを構成する基準メッシュの合計数である。コアメッシュを構成する基準メッシュの全数とオーバーラップメッシュを構成する基準メッシュの全数の合計である。その数分だけ基準メッシュデータが後に配置される。項番2は、基準メッシュデータへのオフセット・サイズである。基準メッシュ数の数だけオフセットとサイズの収容フィールドが並ぶ。項番3〜項番7は、基準メッシュデータである。n個の基準メッシュのメッシュデータが並ぶ。
【0042】
−接続部データ−
図10は、接続・部分規制データの基準メッシュデータの内容を示す図である。項番1はメッシュコードである。メッシュコードは、各基準メッシュを特定するための情報であり、例えば左下角の緯度経度に基づいて決められる。図6のブロック管理テーブルの緯度経度メッシュコードと同様な計算で求め、それらを組み合わせてもよい。項番2は、メッシュ識別情報である。本基準メッシュデータがコアメッシュ内の基準メッシュなのかオーバーラップメッシュ内の基準メッシュなのかを識別する情報である。項番3は、コアメッシュ識別情報である。オーバーラップメッシュの場合に使用される。同一レベルにおいて、複数のコアメッシュにて使用されるオーバーラップメッシュには、そのメッシュコードが同じものが複数存在する場合がある。従って、どのメッシュセットのオーバーラップメッシュであるかを特定するために、所属する所属するコアメッシュの左下基準メッシュのメッシュコードを設定する。
【0043】
項番4は、経路情報リスト識別情報である。当該基準メッシュを含むコアメッシュを注目した場合、隣接コアメッシュとの間で、経路情報リストが存在するか否かを示す情報である。経路情報リスト識別情報については、さらに後述する。項番5は、オフセット情報である。オフセット情報は、部分規制データの先頭までのオフセット値である。すなわち、接続部データの大きさに対応する。項番6は、接続部データである。項番7は、部分規制データである。部分規制データとは、各リンクに設定が考えられる規制情報をまとめたものである。
【0044】
図11は、図10の項番6の接続部データの詳細を示す図である。本実施の形態では、道路をリンクとノードとリンク列という概念で表す。ノードは交差点や道路上特に指定された点を言う。リンクはノード間の道路に該当し、リンク列は1本の道路を複数のリンクで表したものである。接続部データは、このノードの接続情報である。1本のリンク列上に存在するノードの自ノード情報とそのノードに接続するノードの隣接ノード情報からなる。自ノード情報および隣接ノード情報は、そのノードの位置座標が格納される。
【0045】
自ノード情報には、位置座標の情報に加えて、次のような情報が付加される。(1)下位レベル側のノードに、「通常上位接続ノード」又は「末端上位接続ノード(接続する一つ上位レベルでのルートの妥当性が保証されるノード)」の識別情報。(2)下位レベル側のノードに、そのノードが経路情報リストデータ上に存在するか否かを示す識別情報。(3)下位レベル側のノードに、上位方向に最大4レベルまでの、上位ノード存在有無フラグ。(4)自ノード情報に「無効ノードフラグ」を新規に追加し、無効ノードフラグがONの場合は自ノード情報は残し、それに該当する「隣接ノード情報」を削除する。これは、異なるコアメッシュ毎に、同じメッシュコードのオーバーラップメッシュ(それぞれ採択される自ノードが異なる)を重複して保持することと、それらのオーバーラップメッシュとコアメッシュ内の同じメッシュコードの基準メッシュ(全ての自ノードが有効)のノード及びリンクが同じID番号を有する必要性があるための処置である。
【0046】
図12は、オーバーラップメッシュの接続データ部を示す図である。オーバーラップメッシュの接続データは、コアメッシュの接続データと同じデータである必要はない。すなわち、コアメッシュより粗いデータであってよい。従って、同じ位置のコアメッシュを構成する基準メッシュのメッシュデータをコピーして、自ノードを有効とするか無効とするかのフラッグを設けるようにした。図12の例では、項番5の自ノード情報3と項番6の自ノード情報4の無効ノードフラグONされて、これらのデータが間引かれた状態となっている。このようにすることにより、オーバーラップメッシュのメッシュデータを容易に生成することができる。さらに、いったん無効にしたノードも容易に有効に戻すことができるので、データの更新も間違いなく容易に行うことができる。
【0047】
−レベル間対応データ−
図13は、レベル間対応データのメッシュセットデータを示す図である。図13に示されるデータの固まりで、記録媒体2に格納される。図9の接続・部分規制データのメッシュセットデータの後に引き続き格納される。各項番の内容は図9と同様である。
【0048】
図14は、レベル間対応データの基準メッシュデータの内容を示す図である。項番1〜4のメッシュコード、メッシュ識別情報、コアメッシュ識別情報、オフセット情報は、図10と同様である。項番5は、レベル間対応データである。
【0049】
図15は、図10の項番5のレベル間対応データの詳細を示す図である。
項番1は、レベル間対応ヘッダである。項番2は、対応レベル数である。下位レベルへの最大対応数が設定される。自レベルノードに対応した下位レベルノードの対応(存在位置)を最大でどのレベルまで収録するのかを示す。当該自レベルを基準として対応を記述するその(下位)レベルの数を設定する。項番3〜項番7は、対応情報である。対応情報は、自レベルのメッシュに存在する編集上必要とされたノードの数n個分設けられる。
【0050】
図16は、各対応情報の詳細を示す図である。項番1は、該当自ノードの対応情報であり、項番2〜項番7は、該当自ノードに接続する隣接ノードの対応情報である。図16の例は、ある自ノードにm個のノードが接続されている場合である。図17は、自ノード対応情報の詳細を示す図である。項番1は、該当自ノードの隣接ノード数が入る。図16の自ノードの場合mが入る。項番2は、自レベル情報である。該当自ノードの該当レベルでのノード番号が入る。項番3〜項番6は、下位レベル情報である。図15の項番2で設定されている対応レベル数分設定され、当該レベルを基準として近いレベルから順に下位レベル情報を並べられる。下位レベル情報は、該当自ノードの下位レベルでの存在領域と下位レベルの自ノード番号が格納される。存在領域とは、該当ブロックと該当基準メッシュが識別できる情報である。
【0051】
図18は、隣接ノード対応情報の詳細を示す図である。項番1は、該当自ノードの隣接ノードの該当レベルでのノード番号が入る。項番2〜項番5は、下位レベル隣接情報である。図15の項番2で設定されている対応レベル数分設定され、当該レベルを基準として近いレベルから順に下位レベル情報を並べられる。下位レベル隣接情報は、該当自ノードの隣接ノードの下位レベルの存在領域と下位レベルの自ノード番号が格納される。
【0052】
−経路情報リスト−
次に経路情報リストについて説明する。経路情報リストとはあるメッシュセット間の経路を予め計算しリストアップしておくものである。すなわち、あるメッシュセットに含まれるノードと他のメッシュセットに含まれるノード間の経路計算(経路探索)を予め行い、最小コストの経路を選択してリストアップしておくものである。コストとは、経路の距離、その他の条件を考慮した値である。
【0053】
経路情報リストは、基本的にはそのレベル内にある全てのメッシュセット相互の組み合わせ分作成される。ただし、下位レベルすなわち詳細地図データを有するレベルでは、全てのメッシュセット相互の組み合わせ分作成すると、処理時間および出力結果が膨大なものとなる。従って、コアメッシュの左下基準メッシュ間の距離が所定の距離以内のもの同士のみ作成するようにする。例えば、レベル1では左下基準メッシュ間の距離が40km以内のものについて作成し、レベル2については全てのメッシュセット相互の組み合わせ分作成するようにする。これらの条件は適宜変更してもよい。
【0054】
このように作成された経路情報リストを使用することにより、経路計算の時間が大幅に削減される。本実施の形態では、経路情報リストを使用するために、図10の項番4で説明したように、基準メッシュデータの中に経路情報リスト識別情報の項目を設けている。この経路情報リスト識別情報についてさらに詳しく説明する。
【0055】
図19は、経路情報リスト識別情報について説明する図である。図19(a)において、注目コアメッシュをコアメッシュxとし、コアメッシュxとコアメッシュdとの間には経路情報リストがなく、コアメッシュxとコアメッシュa、c、e、bとの間には経路情報リストが作成されているとする。この場合、コアメッシュxの基準メッシュAのメッシュデータは図19(b)のようになる。項番4の経路情報リスト識別情報には、該当基準メッシュの上下左右に隣接する基準メッシュとの間に関する情報が入る。
【0056】
具体的には、基準メッシュAの上側基準メッシュはコアメッシュdに属し、コアメッシュxとコアメッシュdとの間には経路情報リストはないため、経路情報リストなしのデータが入る。基準メッシュAの下側基準メッシュは自コアメッシュ内であるため、自コアメッシュ内であることを示すNULLが入る。基準メッシュAの左側基準メッシュも自コアメッシュ内であるため、自コアメッシュ内であることを示すNULLが入る。基準メッシュAの右側基準メッシュはコアメッシュeに属し、コアメッシュxとコアメッシュeとの間には経路情報リストが存在するため、コアメッシュeとの経路情報リスト有りのデータが入る。経路情報リスト有りの場合は、該当経路情報リストが参照できるようにポインタが入る。コアメッシュxの基準メッシュBのメッシュデータは、同様に、図19(c)のようになる。
【0057】
このように、該当基準メッシュのメッシュデータの経路情報リスト識別情報の項目を参照することにより、隣接する基準メッシュとの間に経路情報リストがあるか否かを判断することができる。そして、経路情報リストがある場合は、経路情報リストを取りこむことができ、経路計算時間を短縮することができる。すなわち、予め計算された経路情報を取り込むことにより、その都度ダイクストラ法等の経路計算をしなくてもよく、経路計算時間の短縮を図ることができる。
【0058】
−レベル間におけるメッシュセットの関連付け−
前述した通り、本実施の形態では、地図データを縮尺率が異なる7つのレベルに分け、最詳細の縮尺率のレベルをレベル0とし、最広域地図のレベルをレベル6として管理している。このうち、経路計算用データはレベル1、レベル2、レベル4に設ける。現在地が検出され目的地が指定されると、現在地および目的地間の経路計算を行う。
【0059】
レベル1の地図表示で、現在地が検出され目的地が設定され、現在地および目的地ともレベル1の同じコアメッシュ内にあると、該コアメッシュ内の基準メッシュの経路計算用データを使用して経路計算を行う。また、現在地と目的地が隣接するコアメッシュにある場合も、基本的には、同一レベルの隣接するコアメッシュの基準メッシュの経路計算用データを使用して経路計算を行う。
【0060】
しかし、レベル1において、現在地が存在するコアメッシュと目的地が存在するコアメッシュとが離れている場合、途中の経路を上位レベル2の経路計算用データを使用して経路計算を行う。また、上位レベル2においても該当コアメッシュ間が離れている場合、さらに上位レベル4の経路計算用データを使用して経路計算を行う。このようにすることにより、途中の経路は、上位レベルの少ない容量の経路計算用データを使用できるので、経路計算の処理時間が短縮できる。ただし、前述したように、メッシュセット間の経路情報リストが存在する場合は、経路情報リストを使用する。例えば、レベル1において、コアメッシュ間が離れている場合であっても、前述したように、メッシュセット間が40Km以内で経路情報リストがある場合はそれを使用する。
【0061】
レベル1において、経路情報リストがない場合、現在地の属するメッシュセットのデータを使用して、ダイクストラ法等の経路計算を行う。そして、オーバラップメッシュのノードまでたどり着くと、上位レベルであるレベル2に上げて、さらに経路計算を続ける。目的地側も同様の処理を行う。レベル2では、原則として経路情報リストがあるため、レベル2まで上げられた現在地側のメッシュセットと目的地側のメッシュセット間の最小コストの経路を選択する。経路情報リストがない場合は、レベル2のメッシュセットのメッシュセットデータを使用して経路計算を行う。また、必要に応じてオーバラップメッシュから上位レベル4に上がり、レベル4の経路計算用データを使用して経路計算を行う。このようにして経路計算が行われ、現在地から目的地までの最適な経路を取得することができる。
【0062】
上記において、下位レベルのオーバラップメッシュから上位レベルに上げるという表現をした。上位レベルに上げるとは、下位レベルのノードに対応する上位レベルのノードを特定し、特定された上位レベルのノードからさらに経路計算を続けることを言う。ここで、上位レベルのノードを特定するためには、下位レベルのノードと上位レベルのノードの対応付けが必要である。このような対応づけを行うためには、下位レベルのメッシュセットと上位レベルのメッシュセットの関連(親子関係)付けを把握する必要がある。この関連付けのために、本実施の形態では、前述したメッシュセットのファイル管理テーブルを使用する。
【0063】
レベル間(1レベル又は2レベル以上の隔たりを対象)におけるメッシュセットの関連付けは、下位レベルのコアメッシュ内の左下基準メッシュが上位レベルに対して投影された場合に、そこに位置する上位レベルの基準メッシュによって構成されるコアメッシュを特定することで求められる。
【0064】
図20は、レベル間におけるメッシュセットの関連付けを説明する図である。基準メッシュL1−1〜L1−17は、レベル1のあるメッシュセットを構成する。基準メッシュL1−1〜L1−9はコアメッシュを構成し、基準メッシュL1−10〜L1−17はオーバーラップメッシュを構成する。基準メッシュL2−1〜L2−8は、レベル2のあるメッシュセットを構成する。基準メッシュL2−1〜L2−6はコアメッシュを構成し、基準メッシュL2−7〜L2−8はオーバーラップメッシュを構成する。
【0065】
下位レベルの左下基準メッシュL1−1は、上位レベルの基準メッシュL2−5に含まれるため、ファイル管理テーブルより、基準メッシュL2−5を含む上位レベルのコアメッシュの左下基準メッシュを求める。これにより、上位レベルのコアメッシュ内の基準メッシュを読み取ることが可能となる。
【0066】
具体的には、次のような手順を取る。(1)左下基準メッシュL1−1自体の相対番号は把握されいてる。これにより、左下基準メッシュL1−1の緯度経度情報を計算により得ることができる。(2)左下基準メッシュL1−1の緯度経度情報が把握できると、上位レベル2のブロック管理テーブルを参照してどのブロックに属するかが把握できる。(3)どのブロックに属するかが把握できると、該当ブロックのメッシュ管理テーブルの参照が可能となる。(4)該当メッシュ管理テーブルのファイル管理テーブルを参照し、左下基準メッシュL1−1の緯度経度情報に基づき、左下基準メッシュL1−1の位置が、どのメッシュセットのコアメッシュ内に位置するかを求めることができる。このようにして、レベル間のメッシュセットの関連付けができる
【0067】
レベル間のメッシュセットの関連付けができると、上位レベル2の該当メッシュセット内の基準メッシュのメッシュデータにあるレベル間対応データを検索することにより、ノード間の対応付けができる。このようにして、下位レベル1のノードと上位レベル2のノードを対応付けし、下位レベル1から上位レベル2に上げて経路計算を行うことができる。
【0068】
前述した通り、下位レベルのコアセットの左下基準メッシュが上位レベルのどのコアセットに属するかを基準にしている。従って、下位レベルのコアメッシュが、上位レベルのコアメッシュの境界をまたぐように設定される場合も理論的にはあり得る。しかし、基本的には、下位レベルのコアメッシュは、上位レベルのコアメッシュ内に収まるよう設定するのが好ましい。これにより、下位レベルのコアメッシュ全体が、上位レベルの1つのコアメッシュの中に収まるようになる。
【0069】
−オーバーラップメッシュの使用−
本実施の形態では、下位レベルから上位レベルに上げるとき、下位レベルのメッシュセットのオーバーラップメッシュから上げるようにしている。すなわち、下位レベルのメッシュセットにおいて、オーバーラップメッシュのノードまで経路計算を行う。そして、オーバーラップメッシュのノードと上位レベルのノードとの対応付けを上記の方法で行い、対応付けされた上位レベルのノードからさらに経路計算を行うようにしている。
【0070】
これは、オーバーラップメッシュのデータ容量を小さくし、経路計算の負荷を小さくし、さらに、上位レベルとの対応付けの計算の負荷を小さくするためである。上位レベルにつなげて経路計算を行う場合は、上位レベルにつなげるための経路計算用データとして長距離探索に必要なデータのみがオーバーラップデータを構成すればよいからである。これにより、経路計算時間の短縮を図ることができる。
【0071】
オーバーラップメッシュを構成する基準メッシュのメッシュデータは、前述したように、同じ位置のコアメッシュを構成する基準メッシュのメッシュデータからデータを間引いて生成する。前述した図12の例では、自ノード情報に無効ノードフラグを設けるようにする例を説明した。しかし、このようなフラグを設けず、オーバーラップメッシュに必要なノードの情報のみを直接生成するようにしてもよい。このようにすることにより、オーバーラップメッシュのメッシュデータのデータ容量を削減することができる。
【0072】
同じ位置の基準メッシュであっても、異なるメッシュセットのオーバーラップメッシュを構成する基準メッシュとなる場合が生じる。そのような場合、オーバーラップメッシュのメッシュデータは、異なるメッシュセットによってそれぞれ異なるように生成される。すなわち、オーバーラップメッシュはコアメッシュからのつながりに応じて、必要なノードのみを残すようにして生成する。従って、同じ位置であってもどのコアメッシュに隣接するオーバーラップメッシュかによって構成する経路計算用データは異なるようになる。もちろん、同じデータになってもよい。
【0073】
オーバラップメッシュのメッシュデータの生成方法として、コアメッシュからつながる主要な道路、例えば幹線道路や高速道路などのノードのみを残す等各種の方法が考えられる。これは、経路計算用データ生成の経験をベースに人手により生成するようにしてもよいし、あるいは、コンピュータのシミュレーションによりもっとも効率のよいデータを生成するようにしてもよい。また、上述したように道路種別などを判断して、一定の規則のもと自動生成するようにしてもよい。また、コアメッシュのデータから仕様上必要なリンクの情報は残し、不要なリンクについては自ノード情報のみを残して隣接ノード情報を削除するようにして生成してもよい。
【0074】
−ナビゲーション装置での地図データの更新管理−
図21は、ナビゲーション装置1での地図データの更新管理の様子を説明する図である。本実施の形態のナビゲーション装置1は、上述したメッシュセット単位で経路計算用データなどの地図データの更新が可能である。ナビゲーション装置1は、記録媒体2からメッシュ管理テーブルおよび地図データを読み込み、さらに、リムーバブルメモリ3あるいはインターネット5を介して地図サーバ6から更新地図データを読み込み、最新の地図データを使用することができる。
【0075】
従来のナビゲーション装置の場合、データの読み込み元はCD−ROMやDVD−ROMなどの記録媒体のみであった。本実施の形態のナビゲーション装置では、記録媒体2中の地図データと更新された地図データとを混在させて使用する。このため、読み書き可能メディアである不揮発性メモリ12を有する。不揮発性メモリ12はハードディスクやフラッシュメモリなどの不揮発性メモリで構成され、ナビゲーション装置の電源が落とされてもデータは保持される。不揮発性メモリ12は、キャッシュメディア12と呼んでもよい。
【0076】
不揮発性メモリ12は、図6で説明したブロック管理テーブル124を有する。ブロック管理テーブル124は、該当ブロックのメッシュ管理テーブルが記録媒体2上にあるのか不揮発性メモリ12上にあるのかの識別情報およびそのアクセスアドレスを有する。新しい地図データを初めて使用するとき、まずはじめに、記録媒体2に格納されたブロック管理テーブルを不揮発性メモリ12に読みこむ。初期値としては、各ブロックのメッシュ管理テーブルは記録媒体2上にあるとして設定されている。その後、地図データのメッシュセット単位の更新に応じて、更新されたメッシュを有するブロックのメッシュ管理テーブル125を不揮発性メモリ12に作成し、ブロック管理テーブル124において、該当ブロックのメッシュ管理テーブルは不揮発性メモリ12上にある旨を設定する。プログラムは、ブロック管理テーブル124を参照することにより、メッシュ管理テーブルが、記録媒体2上にあるのか不揮発性メモリ12上にあるのかを判断することができる。
【0077】
符号126は、ナビゲーション装置のメモリ15内にあるメモリであり、メッシュ管理テーブルを格納する領域である。以下メモリ126と言う。プログラムは、メッシュ管理テーブルが記録媒体2上にあるのか不揮発性メモリ12上にあるのかを判断した後、該当メディアからメッシュ管理テーブルを読み出し、メモリ126に格納する。メモリ126に読み込まれたメッシュ管理テーブル127は、上述した図7、図8等に説明したメッシュ管理情報を有する。
【0078】
リムーバブルメモリ3でメッシュセット単位の地図データが更新されると、該当メッシュセットの地図データは不揮発性メモリ12に読み込まれ、地図データ133として格納される。このとき、不揮発性メモリ12上のメッシュ管理テーブルの該当メッシュセットの項番9の格納場所に、本メッシュセットのメッシュセットデータは不揮発性メモリ12に格納されている旨とそのアドレスを書きこむ。また、メッシュセットデータのデータサイズが変更されている場合は、項番10、11の内容を書きかえる。その他の項目は、更新によって特に書きかえる必要はない。その後、この内容に基づき、不揮発性メモリ12へアクセスすることができる。すなわち、更新されていないメッシュセットの地図データは記録媒体2へアクセスし、更新されたメッシュセット地図データは不揮発性メモリ12へアクセスすることができる。
【0079】
−経路計算の制御フローチャート−
図22は、制御装置11が経路計算用データを読み込んで経路計算を行う制御のフローチャートを示す図である。ステップS1では、現在地検出装置13を使用して、車両の現在地を検出する。ステップS2では、ユーザが入力装置19を使用して指定した目的地を設定する。ステップS3では、車両の現在地や目的地周辺の必要なメッシュセットのメッシュセットデータを読み込む。ステップS4では、ダイクストラ法等を使用して経路計算(経路探索)を行う。ステップS5では、すべての経路計算が完了したか否かを判断する。すなわち、現在地から目的地までの経路計算がすべて完了したか否かを判断する。ステップS5で、まだ完了していないと判断すると、ステップS3に戻り、さらに必要なメッシュセットのメッシュセットデータを読み込み、経路計算を続行する。ステップS5で、経路計算が完了したと判断すると処理を終了する。ステップS3〜S5を繰り返す中で、適宜、必要に応じて前述した上位レベルへの接続を行う。
【0080】
図23は、図22のステップS3の処理の詳細なフローチャートを示す図である。ステップS21で、前述したように、不揮発性メモリ12にあるブロック管理テーブルにアクセスする。この場合、ブロック管理テーブルはすでに不揮発性メモリ12に読みこまれた状態であることを前提とする。ステップS22で、ブロック管理テーブルの内容に基づき、該当ブロックのファイル管理テーブルが記録媒体2上にあるか不揮発性メモリ12上にあるかを判断する。ステップS22で、記録媒体2にあると判断するとステップS23に進む。ステップS23では、記録媒体2から該当ブロックのファイル管理テーブルをメモリ126に読みこむ。
【0081】
一方、ステップS22で、記録媒体2上にない、すなわち、不揮発性メモリ12上にあると判断すると、ステップS24に進む。ステップS24では、不揮発性メモリ12から該当ブロックのファイル管理テーブルをメモリ126に読みこむ。ステップS25では、メモリ126に読みこまれたファイル管理テーブルの内容に基づき、該当メッシュセットの格納先アドレスを計算する。ステップS26で、計算された格納先からメッシュセットデータを読みこむ。この場合、メッシュセットデータが更新されていない場合は、記録媒体2からメッシュセット単位でデータが読み込まれる。また、メッシュセットデータが更新されている場合は、不揮発性メモリ12からデータが読み込まれる。
【0082】
以上説明したように、本実施の形態の地図データの構造やナビゲーション装置を使用した場合、次のような効果を奏する。
(1)記録媒体2に格納されている経路計算用データを、複数の基準メッシュから構成されるメッシュセットという概念を導入して管理するようにした。これにより、経路計算に適したデータの固まりで、記録媒体2から連続的に読み出すことが可能となる。その結果、メッシュ単位で管理されたデータをメッシュ毎に読み出すことに比べ、DVD駆動装置の読み取りヘッドのシーク回数が激減し、処理の高速化が実現される。
(2)オーバーラップメッシュという概念を導入したので、下位レベルと上位レベルを接続する場合に、経路計算の処理時間の短縮を図ることができる。
(3)オーバーラップのメッシュデータ作成のための無効フラグを設けるようにした。これにより、オーバーラップメッシュのデータの生成管理が容易となる。
(4)メッシュセットを管理するファイル管理テーブルを設けるようにした。これにより、ファイル管理テーブルを参照するだけで、レベル間のメッシュセットの関連付け(親子関係)が容易に把握できるようになる。また、さらに、レベル間の対応関係を直接的に規定する特別なテーブルを設ける必要がない。
(5)メッシュセット単位で経路計算用データなどの地図データの更新ができるので、地図データの一部のみ更新する場合、地図データが格納されたDVD−ROMなどの記録媒体全体を新しいものにする必要がない。更新の最小単位をメッシュセット単位とし、不必要なデータ更新に掛かる通信量(コスト)も低減することができる。
(6)更新データをインターネット経由の通信によっても提供するので、迅速にかつ安い費用で最新の更新データを提供することができる。
(7)予め作成された経路情報リストを適切に使用するので、経路計算の時間が大幅に削減される。
(8)不揮発性メモリにメッシュ管理テーブルを格納しながら、地図データを管理しているので、更新データの管理を容易かつ確実に行うことができる。これにより、ナビゲーション装置のプログラム開発などが容易となる。
(9)全国分の更新データの一括配信を受けるのではなく、ユーザが選んだ地域のみの配信を受けるので、その受信時間は必要最小限で済む。また、全ての地図データを読み書き可能な大容量記憶装置に収録するのではないため、ユーザが要求する更新データのみを収録可能な記憶容量で十分である。
【0083】
上記の実施の形態では、ナビゲーション装置の制御装置11が実行する制御プログラムはROMに格納されている例で説明をしたが、この内容に限定する必要はない。制御プログラムやそのインストールプログラムをDVDなどの記録媒体で提供してもよい。なお、記録媒体はDVDに限定する必要はなく、CD−ROM、磁気テープやその他のあらゆる記録媒体を使用するようにしてもよい。
【0084】
さらに、それらのプログラムをインターネットなどに代表される通信回線などの伝送媒体を介して提供することも可能である。すなわち、プログラムを、伝送媒体を搬送する搬送波上の信号に変換して送信することも可能である。プログラムを記録媒体やインターネットで提供する場合は、図1と同じような構成で提供すればよい。例えば、記録媒体2をプログラム提供の記録媒体にし、地図サーバ6をアプリケーションプログラムを提供するサーバーとすればよい。
【0085】
また、上述の制御プログラムをパソコン上で実行させてカーナビゲーション装置を実現するようにしてもよい。その場合、現在地検出装置13や入力装置19などは、パソコンの所定のI/Oポートなどに接続するようにすればよい。
【0086】
上記の実施の形態では、リムーバブルメモリ3から更新データを提供する例を説明したが、この内容に限定する必要はない。更新用データをCD−ROMやDVD−ROMなどに書きこんで、記録媒体2を一時的に入れ替えて提供するようにしてもよい。
【0087】
上記の実施の形態では、記録媒体2から初期の地図データを読み込む例を説明したが、この内容に限定する必要はない。初期の地図データをインターネット5を介して受け取って不揮発性メモリ12に格納し、その後前述した手法で更新管理するようにしてもよい。また、インターネット5を介して必要な地図データをその都度受け取り、その都度不揮発性メモリ12に格納し、その後更新がある場合は、前述した手法で更新管理をしてもよい。
【0088】
上記の実施の形態では、経路計算用データをメッシュセットの概念を使用して管理する例を説明した。また、地図表示用データでは特にメッシュセットの概念を使用しなくてもよい旨説明した。しかし、地図表示用データにメッシュセットの概念を使用して管理してももちろんよい。経路計算用データほどの効果は得られないがデータの読み込み等の処理速度の向上が図られる場合もある。また、その他の地図データにおいてもメッシュセットの概念を使用することができる。
【0089】
上記の実施の形態では、不揮発性メモリ12はナビゲーション装置1の内部に設けられる例を説明したが、この内容に限定する必要はない。ケーブルなどによって接続される外部記憶装置であってもよい。
【0090】
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【0091】
【発明の効果】
本発明は、複数の区画を集めた区画セットの、レベル間の対応関係を演算により求めることが可能な情報を有する管理テーブルを備えるようにした。これにより、区画セットのレベル間の対応関係を容易に把握できるようになる。また、レベル間の対応関係を直接的に規定する特別なテーブルを設ける必要がない。
【図面の簡単な説明】
【図1】地図データの授受について説明する図である。
【図2】車載用ナビゲーション装置のブロック図である。
【図3】地図データのレベル、ブロック、メッシュの関係を説明する概念図である。
【図4】メッシュセットの概念を説明する図である。
【図5】ブロック管理テーブルとメッシュ管理テーブルと実際のデータであるメッシュセットデータとの関係を概略的に示す図である。
【図6】ブロック管理テーブルを示す図である。
【図7】メッシュ管理テーブルの内容を示す図である。
【図8】ファイル管理テーブルを詳細に示す図である。
【図9】接続・部分規制データのメッシュセットデータを示す図である。
【図10】接続・部分規制データの基準メッシュデータの内容を示す図である。
【図11】接続部データの詳細を示す図である。
【図12】オーバーラップメッシュの接続データ部を示す図である。
【図13】レベル間対応データのメッシュセットデータを示す図である。
【図14】レベル間対応データの基準メッシュデータの内容を示す図である。
【図15】レベル間対応データの詳細を示す図である。
【図16】対応情報の詳細を示す図である。
【図17】自ノード対応情報の詳細を示す図である。
【図18】隣接ノード対応情報の詳細を示す図である。
【図19】経路情報リスト識別情報について説明する図である。
【図20】レベル間におけるメッシュセットの関連付けを説明する図である。
【図21】ナビゲーション装置での地図データの更新管理の様子を説明する図である。
【図22】経路計算用データを読み込んで経路計算を行う制御のフローチャートを示す図である。
【図23】図22のステップS3の処理の詳細なフローチャートを示す図である。
【図24】メッシュセットをファイル管理テーブルで管理する様子を説明するための図である。
【符号の説明】
1 ナビゲーション装置
2 記録媒体
3 リムーバブルメモリ
4 通信装置
5 インタネット
6 地図サーバ
7 地図データベース
8 案内検索データベース
11 制御装置
12 不揮発性メモリ
13 現在地検出装置
14 DVD駆動装置
15 メモリ
16 通信インターフェース
17 リムーバブルメモリ読込装置
18 モニタ
19 入力装置[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a map data structure, a map data processing device, and a recording medium that records data having the map data structure.
[0002]
[Prior art]
2. Description of the Related Art Navigation devices that calculate a route, display a recommended route, and perform navigation are known. It is also known that route calculation data used for route calculation is managed in units of a map divided into meshes. It is also known that route calculation data is divided into a plurality of levels having different scales and managed, and a plurality of levels of route calculation data are properly used for route calculation.
[0003]
[Problems to be solved by the invention]
However, when the path calculation data is read in units divided into meshes, the number of seeks of the read head of the read device increases, and there has been a problem that the read time is increased.
[0004]
The present invention relates to a map data structure capable of efficiently reading map data provided on a recording medium or the like and efficiently performing correspondence between levels, and map data using map data having such a structure. It is an object of the present invention to provide a processing device and a recording medium on which map data having such a structure is recorded.
[0005]
[Means for Solving the Problems]
The invention according to
According to a second aspect of the present invention, in the map data structure according to the first aspect, the management table includes information indicating a position of a reference section representing the section set, information on the number of vertical division directions of the section set, And information on the number in the horizontal direction.
According to a third aspect of the present invention, in the map data structure according to the second aspect, the section set has a rectangular shape, and the reference section representing the section set is a section located at the lower left of the section set. It is.
According to a fourth aspect of the present invention, in the map data structure according to the third aspect, the information for managing the section sets is stored in an order in which reference sections representing the section sets are arranged on the basis of the divided horizontal direction and the vertically divided direction. It shall be.
According to a fifth aspect of the present invention, in the structure of the map data according to any one of the first to fourth aspects, in each level, the map is divided into a plurality of mesh-like blocks, and the plurality of sections form each block. It is a section obtained by further dividing, and the management table is provided for each block.
According to a sixth aspect of the present invention, in the map data structure according to any one of the first to fifth aspects, the information on the map acquired by the map data processing device can be updated on a partition set basis using a management table. It is assumed that
According to a seventh aspect of the present invention, in the structure of the map data according to any one of the first to sixth aspects, an intersection of a road on a map is set as a node, the information on the map has information on the node, and the information is divided into sections. The information related to the map further includes inter-level node correspondence information between nodes in the section and corresponding nodes at other levels, the correspondence between levels of the section set and the inter-level nodes of the sections constituting the section set. Using the correspondence information, it is possible to grasp the correspondence between the levels of the nodes.
According to an eighth aspect of the present invention, in the map data structure according to any one of the first to seventh aspects, the information on the map is information on a route on a map used for route calculation. .
The invention according to
According to a tenth aspect of the present invention, there is provided a recording medium driving unit which is applied to a map data processing device and has a recording medium on which map data having the structure of the map data according to the eighth aspect is recorded, and a map recorded on the recording medium. Processing means for performing a route calculation based on the information on the route.
The invention of
[0006]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a diagram for explaining transmission and reception of map data such as map display data and route calculation data in the present embodiment. The in-
[0007]
The
[0008]
The
[0009]
Once the
[0010]
FIG. 2 is a block diagram of the vehicle-mounted
[0011]
The current
[0012]
The
[0013]
The
[0014]
-Map data structure-
The data structure of the above-described map data will be described in more detail. The map data is information relating to a map, and includes background (for map display) data, locator data, route calculation data, guidance data (intersection name / road name / direction name / direction guide facility information, etc.). The background data is data for displaying the background of a road or a road map. The locator data is data used for specifying the current position of the vehicle, map matching, and the like. The route calculation data is network data including branch information that is not directly related to the road shape, and is mainly used when calculating a recommended route (route search). The guidance data is data including names of intersections and the like, and is used when guiding a recommended route to a driver or the like based on the calculated recommended route.
[0015]
The map data of the present embodiment is managed based on the concept of levels, blocks, and meshes. In the present embodiment, map data is divided into seven levels having different scales, the level of the most detailed scale is set to level 0, and the level of the widest area map is set to
[0016]
FIG. 3 is a conceptual diagram illustrating the relationship among the levels, blocks, and meshes of map data. Representatively,
[0017]
At
[0018]
At
[0019]
The vertical direction of the division corresponds to the latitude direction, and the horizontal direction corresponds to the longitude direction. The names of the blocks and meshes are given for convenience in the present embodiment. Therefore, it is not necessarily limited to these names. A mesh may be called a parcel, a block may be called a first division unit, and a mesh may be called a second division unit. In addition, these blocks and meshes may be referred to as geographically divided units.
[0020]
-Route calculation data-
Hereinafter, the route calculation data in the map data will be described. The route calculation data is divided and managed in mesh units as described above. In the present embodiment, the concept of a mesh set is further introduced.
[0021]
FIG. 4 is a diagram illustrating the concept of a mesh set.
[0022]
The number of reference meshes 201 constituting the
[0023]
The
[0024]
Data corresponding to each reference mesh is called mesh data. The route calculation data is managed as mesh data of the reference mesh. The mesh data of the reference mesh forming the overlap mesh is generated by thinning data from the mesh data of the reference mesh forming the core mesh of another corresponding mesh set. That is, the mesh data of the overlapping mesh is composed of coarser data than the mesh data of the core mesh. Details will be described later.
[0025]
In this way, the route calculation data is managed in units of the reference mesh, and further managed in units of the mesh set. Path calculation data managed in units of mesh sets is stored in the
[0026]
In the present embodiment, the concept of a mesh set is introduced for the route calculation data as described above. The map display data used for displaying the map on the
[0027]
However, in the route calculation data, it is not always efficient to read mesh data arranged in a certain direction such as an east-west direction. For example, if a mesh set is configured along a main road, efficiency may be high at the time of route calculation. In the present embodiment, the most suitable mesh set for the route calculation is appropriately set according to the location. For example, the setting of the mesh set may be set manually based on experience, or the most efficient configuration may be set by computer simulation, or set according to a certain rule. You may. The certain rule may be set, for example, along an arterial road or an expressway as described above, or may be set according to the administrative division of a prefecture or a municipal government.
[0028]
-Management of mesh set-
Next, management of the mesh set described above will be described. As described above, the route calculation data is managed based on the concepts of level, block, mesh set, and reference mesh. Route calculation data is prepared as mesh data of each reference mesh. In short, blocks are managed by a block management table, and a mesh set in each block is managed by a mesh management table.
[0029]
FIG. 5 is a diagram schematically showing a relationship between a block management table, a mesh management table, and mesh set data which is actual data. Here, the mesh set data is a set of mesh data of the reference meshes constituting the mesh set. First, the level x data indicates that there is one block management table. The block management table has information about all blocks within that level. For example, at
[0030]
The mesh set is managed by the mesh management table. For example, access to the
[0031]
FIG. 6 is a diagram showing a
[0032]
FIG. 7 is a diagram showing the contents of the mesh management table accessed by "pointer to mesh management table" in the block management table. The data size of the mesh management table (
[0033]
The item Nos. 4 and 5 “lower end latitude” and “left end longitude” indicate the position of the lower left reference mesh constituting the file management table described below. For the latitude and longitude, values obtained by the above-described calculation are stored. The latitude indicating the position of the reference mesh is, for example, the latitude below (south side) the reference mesh, and the longitude is, for example, the longitude on the left side (west side) of the reference mesh. Item No. 6 “file management table classification” indicates the type of file management table. For example, it is indicated by 0 when only the background data is used, and is indicated by 1 when the route calculation data is managed by a mesh set. The file management table of item No. 7 contains information such as the size of each mesh set described below.
[0034]
FIG. 8 is a diagram showing in detail the file management table in the case of the above-described
[0035]
In FIG. 8, the mesh (mesh set) data head pointer of
[0036]
Item No. 3 is the reference mesh number in the latitude direction in the core mesh. Item No. 4 is the number of reference meshes in the longitude direction in the core mesh. As described above, the mesh set has a rectangular shape in the present embodiment. Therefore, the number of reference meshes constituting the core mesh can be calculated by multiplying the values of the
[0037]
Item No. 5 is the lower latitude of the mesh set including the overlap mesh (the relative number of reference meshes from the lower left reference mesh in the core mesh). Item No. 6 is the left end longitude of the mesh set including the overlapping mesh (the number of relative reference meshes from the lower left reference mesh in the core mesh). Item No. 7 is the reference mesh number (rectangular area size) in the latitude direction in the mesh set including the overlap mesh. Item No. 8 is the reference mesh number (rectangular area size) in the longitude direction in the mesh set including the overlap mesh. Item No. 9 contains information indicating the storage location of the mesh set data. If the mesh set data has not been updated, information indicating that the data is stored on the
[0038]
[0039]
FIG. 24 is a diagram for explaining how the mesh set is managed by the file management table.
[0040]
-Mesh set data-
Next, the mesh set data will be described. The mesh set data is a set of mesh data of the reference meshes constituting the mesh set. As described above, the route calculation data is managed as mesh data of each reference mesh. The route calculation data is divided into connection / partial regulation data and inter-level correspondence data.
[0041]
FIG. 9 is a diagram showing mesh set data of connection / partial restriction data. The chunk of data shown in FIG. 9 is stored in the
[0042]
-Connection data-
FIG. 10 is a diagram showing the contents of the reference mesh data of the connection / partial restriction data. Item No. 1 is a mesh code. The mesh code is information for specifying each reference mesh, and is determined based on, for example, the latitude and longitude of the lower left corner. The calculation may be performed in the same manner as the latitude / longitude mesh code in the block management table in FIG. 6 and may be combined. Item No. 2 is mesh identification information. This is information for identifying whether the reference mesh data is a reference mesh in the core mesh or a reference mesh in the overlap mesh. Item No. 3 is core mesh identification information. Used for overlapping meshes. At the same level, a plurality of overlapping meshes used in a plurality of core meshes may have the same mesh code. Therefore, in order to specify which mesh set is the overlapping mesh, the mesh code of the lower left reference mesh of the core mesh to which it belongs is set.
[0043]
Item No. 4 is path information list identification information. When attention is paid to the core mesh including the reference mesh, this is information indicating whether or not a route information list exists between the core mesh and the adjacent core mesh. The route information list identification information will be further described later. Item No. 5 is offset information. The offset information is an offset value up to the head of the partial regulation data. That is, it corresponds to the size of the connection part data. Item No. 6 is connection part data. Item No. 7 is partial regulation data. The partial regulation data is a collection of regulation information that can be set for each link.
[0044]
FIG. 11 is a diagram showing details of the connection part data of item No. 6 in FIG. In the present embodiment, a road is represented by the concept of a link, a node, and a link string. A node is an intersection or a specially designated point on a road. A link corresponds to a road between nodes, and a link string represents one road by a plurality of links. The connection part data is connection information of this node. It consists of own node information of a node existing on one link string and information of adjacent nodes of a node connected to the node. The own node information and the adjacent node information store the position coordinates of the node.
[0045]
The following information is added to the own node information in addition to the position coordinate information. (1) Identification information of a “normal upper connection node” or a “terminal upper connection node (a node for which the validity of a route at one higher level to be connected is guaranteed)” in a lower-level node. (2) Identification information indicating whether or not the lower-level node exists in the route information list data. (3) Higher-order node presence / absence flags of up to four levels in the upper direction in the lower-level nodes. (4) The “invalid node flag” is newly added to the own node information. When the invalid node flag is ON, the own node information is left and the corresponding “adjacent node information” is deleted. This is because the overlapping meshes of the same mesh code (each adopted own node is different) are duplicated for each different core mesh, and the criteria of the same mesh code in the overlapping mesh and the core mesh are different. This is a measure for the necessity that nodes and links of the mesh (all the own nodes are valid) need to have the same ID number.
[0046]
FIG. 12 is a diagram illustrating a connection data section of the overlap mesh. The connection data of the overlapping mesh does not need to be the same data as the connection data of the core mesh. That is, the data may be coarser than the core mesh. Therefore, the mesh data of the reference mesh forming the core mesh at the same position is copied, and a flag indicating whether the own node is enabled or disabled is provided. In the example of FIG. 12, the invalid node flag of the
[0047]
-Inter-level correspondence data-
FIG. 13 is a diagram showing mesh set data of the inter-level correspondence data. The chunk of data shown in FIG. 13 is stored in the
[0048]
FIG. 14 is a diagram showing the contents of the reference mesh data of the inter-level correspondence data. The mesh codes, mesh identification information, core mesh identification information, and offset information of the
[0049]
FIG. 15 is a diagram showing details of the inter-level correspondence data of
Item No. 1 is an interlevel correspondence header. Item No. 2 is the number of corresponding levels. The maximum number of corresponding lower levels is set. Indicates the maximum level of the correspondence (existing position) of the lower level node corresponding to the own level node. The number of the (lower) level that describes the correspondence based on the own level is set. Item Nos. 3 to 7 are correspondence information. The correspondence information is provided for the number n of nodes required for editing existing in the mesh of the own level.
[0050]
FIG. 16 is a diagram showing details of each correspondence information. The
[0051]
FIG. 18 is a diagram illustrating details of the adjacent node correspondence information. The
[0052]
-Route information list-
Next, the route information list will be described. The route information list is a list in which routes between certain mesh sets are calculated and listed in advance. That is, a route calculation (route search) between a node included in a certain mesh set and a node included in another mesh set is performed in advance, and a route with the minimum cost is selected and listed. The cost is a value in consideration of the distance of the route and other conditions.
[0053]
The route information list is basically created for the combination of all the mesh sets within that level. However, at the lower level, that is, at the level having detailed map data, if the combination of all the mesh sets is created, the processing time and the output result become enormous. Accordingly, only the meshes whose distance between the lower left reference meshes of the core meshes is within a predetermined distance are created. For example, at
[0054]
By using the route information list created in this way, the time for route calculation is greatly reduced. In the present embodiment, in order to use the route information list, the item of the route information list identification information is provided in the reference mesh data, as described in
[0055]
FIG. 19 is a diagram illustrating the path information list identification information. In FIG. 19 (a), the core mesh of interest is a core mesh x, there is no route information list between the core mesh x and the core mesh d, and the core mesh x and the core meshes a, c, e, and b It is assumed that a route information list has been created in the. In this case, the mesh data of the reference mesh A of the core mesh x is as shown in FIG. The route information list identification information of item No. 4 contains information about the reference mesh adjacent to the reference mesh vertically and horizontally.
[0056]
Specifically, since the upper reference mesh of the reference mesh A belongs to the core mesh d, and there is no route information list between the core mesh x and the core mesh d, data without a route information list is entered. Since the lower reference mesh of the reference mesh A is within its own core mesh, NULL indicating that it is within its own core mesh is entered. Since the left reference mesh of the reference mesh A is also in the own core mesh, NULL indicating that the reference mesh is in the own core mesh is entered. The right reference mesh of the reference mesh A belongs to the core mesh e, and since there is a route information list between the core mesh x and the core mesh e, data having a route information list with the core mesh e is entered. If there is a route information list, a pointer is entered so that the corresponding route information list can be referred to. Similarly, the mesh data of the reference mesh B of the core mesh x is as shown in FIG.
[0057]
In this way, by referring to the item of the route information list identification information of the mesh data of the corresponding reference mesh, it can be determined whether or not there is a route information list between adjacent reference meshes. If there is a route information list, the route information list can be imported, and the route calculation time can be reduced. That is, by taking in the route information calculated in advance, the route calculation such as the Dijkstra method does not have to be performed each time, and the route calculation time can be reduced.
[0058]
-Association of mesh sets between levels-
As described above, in the present embodiment, map data is divided into seven levels with different scales, the level of the most detailed scale is set to level 0, and the level of the widest area map is managed as
[0059]
In the
[0060]
However, when the core mesh where the current location is located and the core mesh where the destination is distant at
[0061]
At
[0062]
In the above, the expression of raising the overlapping mesh from the lower level to the upper level has been described. Raising to a higher level means that a higher-level node corresponding to a lower-level node is specified, and the route calculation is further continued from the specified higher-level node. Here, in order to specify an upper-level node, it is necessary to associate a lower-level node with an upper-level node. In order to perform such association, it is necessary to grasp the association (parent-child relationship) between the lower-level mesh set and the upper-level mesh set. For this association, in the present embodiment, the above-described file management table of the mesh set is used.
[0063]
The association of the mesh set between the levels (targeting at a distance of one or more levels) is such that when the lower left reference mesh in the lower level core mesh is projected to the upper level, the upper level of the upper level located there is located. It is determined by specifying a core mesh constituted by the reference mesh.
[0064]
FIG. 20 is a diagram for explaining association of a mesh set between levels. The reference meshes L1-1 to L1-17 form a mesh set having
[0065]
Since the lower level lower left reference mesh L1-1 is included in the upper level reference mesh L2-5, the lower left reference mesh of the upper level core mesh including the reference mesh L2-5 is obtained from the file management table. This makes it possible to read the reference mesh in the upper level core mesh.
[0066]
Specifically, the following procedure is taken. (1) The relative number of the lower left reference mesh L1-1 itself is known. Thereby, the latitude and longitude information of the lower left reference mesh L1-1 can be obtained by calculation. (2) If the latitude and longitude information of the lower left reference mesh L1-1 can be grasped, it is possible to grasp which block it belongs to by referring to the
When the mesh sets can be associated between the levels, the nodes can be associated by searching the inter-level correspondence data in the mesh data of the reference mesh in the
[0068]
As described above, the lower left reference mesh of the lower level core set belongs to which higher level core set belongs. Therefore, it is theoretically possible that the lower-level core mesh is set so as to straddle the boundary of the upper-level core mesh. However, basically, it is preferable that the lower level core mesh is set so as to be included in the upper level core mesh. This allows the entire lower level core mesh to fit within one higher level core mesh.
[0069]
-Use of overlap mesh-
In the present embodiment, when increasing from a lower level to an upper level, the overlapping mesh of the lower level mesh set is increased. That is, in the lower level mesh set, the route calculation is performed up to the node of the overlap mesh. Then, the node of the overlap mesh is associated with the upper-level node by the above-described method, and the route calculation is further performed from the associated upper-level node.
[0070]
This is to reduce the data capacity of the overlap mesh, reduce the load of the route calculation, and further reduce the load of the calculation of the association with the upper level. This is because, when route calculation is performed by connecting to an upper level, only data necessary for a long distance search as route calculation data for connecting to an upper level may constitute overlap data. Thereby, the route calculation time can be reduced.
[0071]
As described above, the mesh data of the reference mesh forming the overlap mesh is generated by thinning out the data from the mesh data of the reference mesh forming the core mesh at the same position. In the example of FIG. 12 described above, an example has been described in which an invalid node flag is provided in the own node information. However, such a flag may not be provided, and only the information of the nodes necessary for the overlap mesh may be directly generated. By doing so, the data capacity of the mesh data of the overlap mesh can be reduced.
[0072]
Even if the reference mesh is located at the same position, there may be a case where the reference mesh forms an overlap mesh of a different mesh set. In such a case, the mesh data of the overlap mesh is generated differently by different mesh sets. That is, the overlap mesh is generated such that only necessary nodes are left according to the connection from the core mesh. Therefore, even at the same position, the path calculation data to be formed differs depending on which core mesh is adjacent to the overlapping mesh. Of course, the data may be the same.
[0073]
As a method of generating mesh data of the overlap mesh, various methods such as leaving only nodes such as main roads, highways, and the like connected to the core mesh can be considered. This may be manually generated based on the experience of generating the route calculation data, or the most efficient data may be generated by computer simulation. Further, as described above, the road type or the like may be determined and automatically generated under a certain rule. Alternatively, the information of the links required in the specification may be left from the data of the core mesh, and the unnecessary links may be generated by deleting the adjacent node information while leaving only the own node information.
[0074]
-Update management of map data in the navigation device-
FIG. 21 is a diagram illustrating a state of update management of map data in the
[0075]
In the case of a conventional navigation device, the data is read only from a recording medium such as a CD-ROM or a DVD-ROM. In the navigation device of the present embodiment, the map data in the
[0076]
The
[0077]
[0078]
When the map data for each mesh set is updated in the
[0079]
-Path calculation control flowchart-
FIG. 22 is a diagram illustrating a flowchart of control in which the
[0080]
FIG. 23 is a diagram showing a detailed flowchart of the process of step S3 in FIG. In step S21, the block management table in the
[0081]
On the other hand, if it is determined in step S22 that it is not on the
[0082]
As described above, when the structure of the map data and the navigation device according to the present embodiment are used, the following effects are obtained.
(1) The path calculation data stored in the
(2) Since the concept of an overlap mesh is introduced, it is possible to reduce the processing time of the route calculation when connecting the lower level and the upper level.
(3) An invalid flag for creating overlapping mesh data is provided. This facilitates generation and management of the data of the overlap mesh.
(4) A file management table for managing a mesh set is provided. As a result, the association (parent-child relationship) of the mesh set between the levels can be easily grasped only by referring to the file management table. Furthermore, there is no need to provide a special table that directly defines the correspondence between levels.
(5) Since map data such as route calculation data can be updated in units of mesh sets, when updating only a part of the map data, the entire recording medium such as a DVD-ROM storing the map data is updated. No need. The minimum update unit is the mesh set unit, and the communication amount (cost) required for unnecessary data update can be reduced.
(6) Since the update data is also provided by communication via the Internet, the latest update data can be provided quickly and at low cost.
(7) Since the route information list created in advance is used appropriately, the time for route calculation is greatly reduced.
(8) Since the map data is managed while the mesh management table is stored in the non-volatile memory, the management of the update data can be performed easily and reliably. This facilitates program development of the navigation device and the like.
(9) Since the update data for the whole country is not distributed in a lump but is distributed only in the region selected by the user, the reception time can be minimized. Also, since not all map data is recorded in a readable and writable large-capacity storage device, a storage capacity enough to record only update data requested by the user is sufficient.
[0083]
In the above embodiment, the control program executed by the
[0084]
Further, these programs can be provided via a transmission medium such as a communication line represented by the Internet. That is, it is also possible to convert the program into a signal on a carrier wave that carries the transmission medium and transmit the signal. When the program is provided on a recording medium or the Internet, the program may be provided in the same configuration as in FIG. For example, the
[0085]
Further, the above-described control program may be executed on a personal computer to realize a car navigation device. In this case, the current
[0086]
In the above-described embodiment, an example in which update data is provided from the
[0087]
In the above embodiment, an example in which the initial map data is read from the
[0088]
In the above embodiment, an example in which the route calculation data is managed using the concept of the mesh set has been described. In addition, it has been described that the concept of the mesh set need not be used in the map display data. However, the map display data may be managed using the mesh set concept. Although the effect is not as high as that of the route calculation data, the processing speed of reading data may be improved in some cases. Further, the concept of the mesh set can be used in other map data.
[0089]
In the above-described embodiment, the example in which the
[0090]
Although various embodiments and modifications have been described above, the present invention is not limited to these contents. Other embodiments that can be considered within the scope of the technical idea of the present invention are also included in the scope of the present invention.
[0091]
【The invention's effect】
The present invention is provided with a management table having information from which a correspondence between levels of a section set obtained by collecting a plurality of sections can be obtained by calculation. This makes it possible to easily grasp the correspondence between the levels of the section sets. Also, there is no need to provide a special table that directly defines the correspondence between levels.
[Brief description of the drawings]
FIG. 1 is a diagram for explaining exchange of map data.
FIG. 2 is a block diagram of an on-vehicle navigation device.
FIG. 3 is a conceptual diagram illustrating a relationship among levels, blocks, and meshes of map data.
FIG. 4 is a diagram illustrating the concept of a mesh set.
FIG. 5 is a diagram schematically showing a relationship between a block management table, a mesh management table, and mesh set data which is actual data.
FIG. 6 is a diagram showing a block management table.
FIG. 7 is a diagram showing the contents of a mesh management table.
FIG. 8 is a diagram showing a file management table in detail.
FIG. 9 is a diagram showing mesh set data of connection / partial restriction data.
FIG. 10 is a diagram showing the contents of reference mesh data of connection / partial regulation data.
FIG. 11 is a diagram showing details of connection part data.
FIG. 12 is a diagram showing a connection data part of an overlap mesh.
FIG. 13 is a diagram showing mesh set data of inter-level correspondence data.
FIG. 14 is a diagram showing the contents of reference mesh data of inter-level correspondence data.
FIG. 15 is a diagram showing details of inter-level correspondence data.
FIG. 16 is a diagram showing details of correspondence information.
FIG. 17 is a diagram showing details of own node correspondence information.
FIG. 18 is a diagram showing details of adjacent node correspondence information.
FIG. 19 is a diagram illustrating route information list identification information.
FIG. 20 is a diagram illustrating association of a mesh set between levels.
FIG. 21 is a diagram illustrating a state of update management of map data in the navigation device.
FIG. 22 is a diagram showing a flowchart of control for reading route calculation data and performing route calculation.
FIG. 23 is a diagram showing a detailed flowchart of a process in step S3 of FIG. 22;
FIG. 24 is a diagram for explaining how a mesh set is managed by a file management table.
[Explanation of symbols]
DESCRIPTION OF
Claims (11)
縮尺率が異なる複数のレベル単位で前記地図に関する情報を備えた構造と、
各レベル毎に、前記地図をメッシュ状の複数の区画に分割し、分割した前記区画単位に対応させて前記地図に関する情報を分割した構造と、
前記地図に関する情報を、隣接する前記区画を複数集めた区画セット単位で管理し、前記区画セット単位で前記地図データ処理装置により処理される構造と、前記各レベル内において、前記区画セットを管理する情報を有する管理テーブルを備える構造とを備え、
前記管理テーブルは、各レベルの区画セットのレベル間の対応関係を演算により求めることが可能な情報を有することを特徴とする地図データの構造。A map data structure that has information about the map and can be processed by the map data processing device;
A structure including information on the map in a plurality of levels having different scales;
For each level, a structure in which the map is divided into a plurality of mesh-shaped sections, and information on the map is divided corresponding to the divided sections.
The information on the map is managed in units of section sets in which a plurality of adjacent sections are collected, and the structure processed by the map data processing device in units of the section sets and the section sets are managed in each of the levels. A structure having a management table having information,
The map data structure, wherein the management table has information capable of calculating a correspondence between levels of the section set of each level by calculation.
前記管理テーブルは、前記区画セットを代表する基準区画の位置を表す情報と、前記区画セットの分割たて方向の数に関する情報と、分割横方向の数に関する情報とを有することを特徴とする地図データの構造。The structure of the map data according to claim 1,
The map, wherein the management table has information indicating a position of a reference section representing the section set, information on the number of vertical division directions of the section set, and information on the number of divided horizontal directions. The structure of the data.
前記区画セットは矩形形状を有し、
前記区画セットを代表する基準区画は、前記区画セットの左下に位置する区画であることを特徴とする地図データの構造。The structure of the map data according to claim 2,
The section set has a rectangular shape,
The map data structure, wherein the reference block representing the block set is a block located at the lower left of the block set.
前記区画セットを管理する情報は、前記区画セットを代表する基準区画が分割横方向および分割たて方向を基準として並ぶ順序で格納されることを特徴とする地図データの構造。The map data structure according to claim 3,
The map data structure, wherein the information for managing the section sets is stored in an order in which reference sections representing the section sets are arranged on the basis of a divided horizontal direction and a freshly split direction.
前記各レベル内において、前記地図をメッシュ状の複数のブロックに分割し、
前記複数の区画は、前記各ブロックをさらに分割して得られた区画であり、
前記管理テーブルは、前記各ブロック毎に設けられることを特徴とする地図データの構造。The structure of the map data according to any one of claims 1 to 4,
Within each of the levels, the map is divided into a plurality of mesh-like blocks,
The plurality of sections are sections obtained by further dividing each of the blocks,
The structure of map data, wherein the management table is provided for each of the blocks.
前記地図データ処理装置が取得した前記地図に関する情報は、前記管理テーブルを使用して、前記区画セット単位で更新可能であることを特徴とする地図データの構造。The structure of the map data according to any one of claims 1 to 5,
The map data structure, wherein the information on the map acquired by the map data processing device can be updated on a per-section set basis using the management table.
前記地図上の道路の交差点をノードとし、
前記地図に関する情報は前記ノードに関する情報を有し、
前記区画単位に分割した地図に関する情報は、該区画内のノードと他のレベルの対応するノードとのレベル間ノード対応情報をさらに有し、
前記区画セットのレベル間の対応関係と前記区画セットを構成する区画のレベル間ノード対応情報を使用して、ノードのレベル間の対応関係を把握することが可能であることを特徴とする地図データの構造。The structure of the map data according to any one of claims 1 to 6,
The intersection of the road on the map is a node,
The information on the map has information on the node,
The information related to the map divided into the block units further includes inter-level node correspondence information between a node in the block and a corresponding node at another level,
Map data, wherein the correspondence between the levels of the nodes can be grasped by using the correspondence between the levels of the division set and the inter-level node correspondence information of the divisions constituting the division set. Structure.
前記地図に関する情報は、経路計算に使用される地図上の経路に関する情報であることを特徴とする地図データの構造。The structure of the map data according to any one of claims 1 to 7,
The map data structure is characterized in that the information on the map is information on a route on a map used for route calculation.
前記記録媒体に記録された地図データに基づき、地図データの処理を行う処理手段とを備えたことを特徴とする地図データ処理装置。A recording medium driving means for mounting a recording medium on which map data having the structure of the map data according to any one of claims 1 to 8 is recorded,
A map data processing apparatus comprising: a processing unit that processes map data based on the map data recorded on the recording medium.
前記記録媒体に記録された前記地図上の経路に関する情報に基づき、経路計算を行う処理手段とを備えたことを特徴とする地図データ処理装置。A recording medium driving means mounted with a recording medium on which map data having the structure of the map data according to claim 8 is recorded;
Processing means for calculating a route based on information on the route on the map recorded on the recording medium.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002220923A JP4145597B2 (en) | 2002-07-30 | 2002-07-30 | Map data processor |
US10/522,629 US7783687B2 (en) | 2002-07-30 | 2003-07-30 | Map data product and map data processor |
PCT/JP2003/009650 WO2004012171A1 (en) | 2002-07-30 | 2003-07-30 | Map data product and map data processor |
EP03771424A EP1548686B1 (en) | 2002-07-30 | 2003-07-30 | Map data product and map data processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002220923A JP4145597B2 (en) | 2002-07-30 | 2002-07-30 | Map data processor |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004061913A true JP2004061913A (en) | 2004-02-26 |
JP4145597B2 JP4145597B2 (en) | 2008-09-03 |
Family
ID=31941391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002220923A Expired - Fee Related JP4145597B2 (en) | 2002-07-30 | 2002-07-30 | Map data processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4145597B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007199575A (en) * | 2006-01-30 | 2007-08-09 | Alpine Electronics Inc | Map data creation method, and route search method and device |
JP2009276707A (en) * | 2008-05-19 | 2009-11-26 | Kddi Corp | Method of distributing unequal division map image, map server, terminal, and program |
-
2002
- 2002-07-30 JP JP2002220923A patent/JP4145597B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007199575A (en) * | 2006-01-30 | 2007-08-09 | Alpine Electronics Inc | Map data creation method, and route search method and device |
JP2009276707A (en) * | 2008-05-19 | 2009-11-26 | Kddi Corp | Method of distributing unequal division map image, map server, terminal, and program |
Also Published As
Publication number | Publication date |
---|---|
JP4145597B2 (en) | 2008-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4162959B2 (en) | Map data processor | |
KR100735441B1 (en) | Map data product, map data processing program product, map data processing method, and map data processing device | |
JP4209179B2 (en) | Map information providing apparatus and map information providing program | |
JP2013101120A (en) | Technique for structuring a navigation database | |
WO2004008073A1 (en) | Navigation method, processing method for navigation system, map data management device, map data management program, and computer program | |
US11480439B2 (en) | Method, apparatus, and computer program product for traffic optimized routing | |
JP2006003385A (en) | Map data providing apparatus | |
JP4112274B2 (en) | Map data processing method and map data processing program | |
US7783687B2 (en) | Map data product and map data processor | |
JP2015082045A (en) | Map data delivery system, server, and navigation device | |
JP4080307B2 (en) | Map information processing apparatus and map information processing program | |
JP5017157B2 (en) | Map data processor | |
JP4080308B2 (en) | Map information processing apparatus and map information processing program | |
JP4145596B2 (en) | Map data processor | |
JP4037167B2 (en) | Map data processor | |
JP4145597B2 (en) | Map data processor | |
JP4388161B2 (en) | Route calculator | |
JPWO2012032619A1 (en) | Map data processing device, update map data distribution device, map data update system, map data update method | |
JP3464561B2 (en) | In-vehicle map display device | |
JPH08178682A (en) | Route searching method and route searching device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050418 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070529 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070727 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080115 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080313 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080603 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080618 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120627 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120627 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120627 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120627 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130627 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140627 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |