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 PDF

Info

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
Application number
JP2002220923A
Other languages
Japanese (ja)
Other versions
JP4145597B2 (en
Inventor
Takashi Nomura
野村 高司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Faurecia Clarion Electronics Co Ltd
Original Assignee
Xanavi Informatics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xanavi Informatics Corp filed Critical Xanavi Informatics Corp
Priority to JP2002220923A priority Critical patent/JP4145597B2/en
Priority to US10/522,629 priority patent/US7783687B2/en
Priority to PCT/JP2003/009650 priority patent/WO2004012171A1/en
Priority to EP03771424A priority patent/EP1548686B1/en
Publication of JP2004061913A publication Critical patent/JP2004061913A/en
Application granted granted Critical
Publication of JP4145597B2 publication Critical patent/JP4145597B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Navigation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Traffic Control Systems (AREA)
  • Instructional Devices (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a structure of map data which can efficiently read out map data provided by a recording medium or the like and efficiently making data different in level correspond to each other, to provide a map data processing device using map data having the structure, and to provide a recording medium in which map data having the structure is recorded. <P>SOLUTION: A plurality of levels with different reduction scales are defined. The national map is divided into a plurality of blocks in each level, each block is divided into a plurality of meshes, and data for route computation is managed in each divided mesh. Further, concept of a mesh set comprising a plurality of divided meshes is introduced and a table to manage the mesh sets in a block is assigned to each block. The table includes the information indicating the position of the reference meshes representative of the mesh set and the information relating to the number of the reference meshes constituting the core mesh of the mesh set in the longitudinal direction and to the number in the latitudinal direction. The information in the table is used to gain the matching relation of the mesh sets among the levels. <P>COPYRIGHT: (C)2004,JPO

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 claim 1 is applied to a structure of map data that has information about a map and can be processed by a map data processing device, and has a structure having information about a map in a plurality of level units having different scales. Each time, the map is divided into a plurality of mesh-shaped sections, and the information on the map is divided according to the divided section units, and the information on the map is managed in a section set unit in which a plurality of adjacent sections are collected. , A structure that is processed by the map data processing device in units of partition sets, and a structure that includes a management table having information for managing the partition sets in each level, wherein the management table is provided between the levels of the partition sets of each level. Has information that can be obtained by calculation.
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 claim 9 is applied to a map data processing device, and includes a recording medium driving unit mounted with 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, Processing means for processing the map data based on the map data recorded on the recording medium.
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 claim 11 is applied to a recording medium readable by a computer or a map data processing device, and records map data having the structure of map data according to any one of claims 1 to 8.
[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-vehicle navigation device 1 reads map data, management information, guidance search data, and the like from a recording medium 2 such as a CD-ROM or a DVD-ROM. Update data such as map data is provided from the removable memory 3. The removable memory 3 is a replaceable recording medium on which update data and the like are recorded for updating a part of the map data.
[0007]
The navigation device 1 can also be connected to a communication device 4 such as a mobile phone. The navigation device 1 can be connected to the Internet 5 via the communication device 4 and can be connected to the map server 6 via the Internet 5. The map server 6 holds old map data to the latest map data in the map database 7, and holds old guide search data to the latest guide search data in the guide search database 8. Therefore, the map server 6 can provide the navigation device 1 with update data for updating a part of the map data via the Internet 5. The guidance search data is data storing attribute information such as position information such as POI, type, and name.
[0008]
The navigation device 1 has a control device 11 and a nonvolatile memory 12. The control device 11 includes a microprocessor and its peripheral circuits. The nonvolatile memory 12 is a nonvolatile memory such as a hard disk and a flash memory provided inside the navigation device 1. The nonvolatile memory 12 may be any storage device as long as the written data is not erased even when the power of the navigation device 1 is turned off.
[0009]
Once the recording medium 2 is mounted on the navigation device 1, the recording medium 2 remains mounted on the navigation device 1 unless replaced with a new recording medium 2. Therefore, the removable memory 3 may be referred to as a fixed medium. The map database 7 and the guidance search database 8 are mother data databases because they have all new and old map data and guidance search data. The map server 6 can use the map database 7 and the guidance search database 8 to prepare the recording medium 2 having initial (pre-update) map data and the like, and the removable memory 3 having update data.
[0010]
FIG. 2 is a block diagram of the vehicle-mounted navigation device 1. The navigation device 1 includes a control device 11, a nonvolatile memory 12, a current position detection device 13, a DVD drive device 14, a memory 15, a communication interface 16, a removable memory reading device 17, a monitor 18, and an input device 19.
[0011]
The current position detection device 13 is a current position detection device that detects the current position of the vehicle. For example, a direction sensor that detects the traveling direction of the vehicle, a vehicle speed sensor that detects the vehicle speed, and a GPS that detects a GPS signal from a GPS (Global Positioning System) satellite. It consists of sensors and the like. The DVD drive device 14 is a device that mounts the recording medium 2 and reads map data and the like. In the present embodiment, the recording medium 2 is a DVD-ROM. Note that a CD-ROM or another recording medium may be used.
[0012]
The memory 15 is a memory that stores vehicle position information and the like detected by the current position detection device 13 and stores node information and link information on a recommended route calculated by the control device 11. Further, a mesh management table described later may be stored. The memory 15 is a working area of the control device 11. The communication interface 16 is an interface for connecting the communication device 4. Use of a mobile phone and connection to the Internet are possible via the communication interface 16. The removable memory reading device 17 is a device capable of loading the removable memory 3 and reading data from the removable memory 3.
[0013]
The monitor 18 is a display device that displays a map, a recommended route, and various information. The monitor 18 may be provided integrally as a part of the navigation device body, or may be provided separately as a housing. Further, only the monitor 18 may be connected to the navigation device main body by a cable or the like and provided at a separated position. The input device 19 is an input device for inputting a destination or the like of the vehicle when searching for a route. It may be a remote control or a touch panel provided on the screen of the monitor 18. The control device 11 uses the current position information of the vehicle detected by the current position detection device 13 and the map data stored in the recording medium 2 or the non-volatile memory 12 to display a road map, calculate a route (route search), Various navigation processes such as route guidance are performed. Note that various processing programs executed by the control device 11 are incorporated in a ROM (not shown) provided in the control device 11.
[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 level 6. Although each level includes map data with different scales, the target area is the same for each level. That is, if the whole country is the target, the map data of the whole Japan having different scales for each level is provided. For example, at level 0, the scale is 1/6250, at level 1, the scale is 1/25000, at level 2, the scale is 1/100000, at level 3, the scale is 1/400000, at level 4, the scale is 1/16000, and at level 5, At a scale of 1/6400000 and at a level of 6, the map data has a scale of 1/12800000 in Japan. That is, there are seven sets of map data corresponding to levels 0 to 6.
[0016]
FIG. 3 is a conceptual diagram illustrating the relationship among the levels, blocks, and meshes of map data. Representatively, levels 1 and 2 are shown. Reference numeral 101 indicates a target area of the main map data. Assuming that map data of the whole of Japan is handled, the area 101 is a range including the whole of Japan. Both level 1 and level 2 cover the same area. At level 1, the area 101 is managed by being divided into a plurality of 4 × 4 = 16 blocks 102. One block 102 is divided into a plurality of meshes 103 and managed. In the present embodiment, management is performed using m × n meshes. The number of divided meshes between the blocks 102 is the same number m × n at the same level.
[0017]
At level 2, the area 101 is managed by being divided into a plurality of 2 × 2 = 4 blocks 104. One block 104 is divided into a plurality of meshes 105 and managed. In the present embodiment, management is performed using p × q meshes. The number of divided meshes between the blocks 104 is the same number p × q at the same level.
[0018]
At level 1 and level 2, the number of blocks obtained by dividing the area 101 and the number of meshes obtained by dividing each block are different. This is handled in level 2 which handles a wide-area map when the scale is small (the value of the denominator is large), and in level 1 where the detailed map is used when the scale is large (the value of the denominator is small) compared to level 2. This is because the data amount is different. That is, appropriate division is performed according to the amount of data handled at each level. However, within the same level, the size of one block and the size of one mesh are the same. Note that the number of divided blocks at each level in FIG. 3 is one example, and is not necessarily limited to this number.
[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. Reference numeral 201 denotes the mesh described above. Hereinafter, each mesh is referred to as a reference mesh. A unit in which a plurality of reference meshes 201 are collected is called a core mesh 202. In the example of FIG. 4, six reference meshes 201 adjacent to each other are collected to form a core mesh 202. Around the core mesh 202, a reference mesh 201 indicated by a broken line is appropriately arranged. This is called an overlap mesh 203. The mesh set 204 is configured by combining the core mesh 202 and the overlap mesh 203.
[0022]
The number of reference meshes 201 constituting the core mesh 202 differs depending on the mesh set 204. In the example of FIG. 4, the number is six, but one or more reference meshes 201 constitute a mesh set 204. In the present embodiment, the shape of the core mesh 202 is rectangular (quadrangle). However, the shape may be not only rectangular but also L-shaped. That is, a mesh set 204 of any shape composed of a plurality of adjacent reference meshes 201 may be used. However, a rectangular shape is most preferable.
[0023]
The core mesh 202 is set without overlapping and with no gap in the block. The overlap mesh 203 set around the core mesh 202 overlaps with the reference mesh forming the core mesh of another mesh set. In addition, the mesh may overlap with a reference mesh forming an overlap mesh of another mesh set. There is also a mesh set including a single reference mesh and an overlap mesh including one or more reference meshes.
[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 recording medium 2 in units of mesh sets. The path calculation data stored in the recording medium 2 for each mesh set can be continuously read from the recording medium 2 for each mesh set. As a result, the number of seeks of the read head of the DVD drive is drastically reduced as compared with the case where data managed on a mesh basis is read out for each mesh, thereby realizing high-speed processing. Basically, data for each mesh set is stored in the order of core mesh data and overlapping mesh data. Further, depending on the application, it is also possible to read mesh data from the position of an arbitrary reference mesh constituting the mesh set.
[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 monitor 18 does not need to particularly introduce the concept of a mesh set. This means that the map display data simply needs to read mesh data in a range corresponding to the display screen of the monitor 18. That is, if the mesh data is stored in order in the east-west direction, for example, it may be read out in that order.
[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 level 1 in FIG. 3, there are 16 blocks, and there are corresponding 16 block information. At level 2, four blocks of level 1 are managed as one block, so there are four blocks and corresponding four block information. FIG. 5 further shows that one block has one mesh management table.
[0030]
The mesh set is managed by the mesh management table. For example, access to the recording medium 2 and the non-volatile memory 12 for acquiring mesh set data, management of mesh set correspondence between levels, and the like are managed. To be more precise, the mesh management table has information for managing the mesh set, and the control device 11 uses this table to manage the mesh set.
[0031]
FIG. 6 is a diagram showing a level 1 block management table. The data size of the block management table (item numbers 1 to 23) is stored in the “size of block management table” of item number 1. The size is represented by the number of words as two bytes and one word. The number of block management information in the item number 2 contains the number of block management information in the block management table. At level 1, 16 blocks are stored because there are 16 blocks as shown in FIG. The item numbers 3 to 6 contain numbers indicating the range of this block on the map by latitude and longitude. However, in the case of longitude, a value obtained by subtracting 100 from the longitude is stored, and in the case of latitude, a value obtained by multiplying the latitude by 3/2 is stored. For example, in the case of 136 degrees east longitude, 36 is stored, and in the case of 33 degrees 20 minutes north latitude, (33 + 20/60) × (3/2) = 50 is stored. The “pointer to the mesh management table” of item No. 7 stores identification information indicating whether the storage destination of the mesh management table is on the recording medium 2 or the non-volatile memory 12, and its access address. This content will be further described later.
[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 (item numbers 1 to 7) is stored in “size of mesh management table” of item number 1. The size is contained in words. The number of reference meshes in the latitudinal direction of the item No. 2 contains the number of reference meshes in the latitudinal direction managed by this table. In the example of level 1 in FIG. 3, n × 4 values are stored. The number of reference meshes in the longitudinal direction of item 3 stores the number of reference meshes in the longitudinal direction managed by this table. Considering the level 102 block 102 in FIG. 3, since there are n reference meshes in the north-south direction, there are n in the “reference mesh management number in the latitudinal direction”, and there are m meshes in the east-west direction. M is stored in the “reference mesh management number in direction”.
[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 category 1. The arrangement of the reference meshes in the east-west direction is managed as one row in order from the lower row to the upper row. In each line, management is performed in order from the left end (west end) to the right end (east end). However, since the mesh set includes a plurality of reference meshes, the mesh set is managed according to the position of the lower left reference mesh of the core mesh of each mesh set. That is, if the lower left reference mesh of the core mesh of a certain mesh set is located at the lower row, the mesh set is managed as data of the lower row of the file management table. The lower left reference mesh is a reference mesh representing a mesh set. When there are a plurality of mesh sets in which the lower left reference mesh is located in the lower row, the mesh sets are managed in order from the left end (west end). That is, the mesh sets are managed in the order in which the lower left reference meshes are arranged based on the longitude direction and the latitude direction.
[0035]
In FIG. 8, the mesh (mesh set) data head pointer of item number 1 contains the address of the leftmost mesh set data of each row on the recording medium 2. In the case of the bottom row, the address of the recording medium 2 to the mesh set first recorded in the block is stored. Item No. 2 is the relative number of the lower left reference mesh of the core mesh. The relative number of the reference mesh is a number in which the lower left reference mesh of the block is set to 1 and the inside of the row is allocated from left to right and from the bottom row to the top row in ascending order.
[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 item numbers 3 and 4. If the core mesh is not rectangular, a rough range of the core mesh can be assumed from these values.
[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 recording medium 2 is entered. The storage address can be obtained by adding the contents of the mesh (mesh set) data head pointer of item number 1 and the size of the mesh set data stored sequentially. If the mesh set data has been updated, the fact that it is stored in the nonvolatile memory 12 and the address thereof are entered. Note that an update file name may be used instead of the address. Item No. 10 is the connection / partial restriction mesh set data size. Item No. 11 is the inter-level correspondence mesh set data size.
[0038]
Item numbers 2 to 11 are management information (management data) of one mesh set. Item Nos. 12 to 21 are management information of the mesh set on the right side. Next, management information of the mesh set on the right follows. When it reaches the right end (east end), it goes up one line (north), and similarly, the management information of the mesh set is stored from the left end (west end) to the right end (east end). Since the core mesh of the mesh set is composed of a plurality of reference meshes, there is a row in which the lower left reference mesh of any of the core meshes does not exist. There is no mesh set management information in such a row.
[0039]
FIG. 24 is a diagram for explaining how the mesh set is managed by the file management table. Reference numerals 301 to 309 denote core meshes of each mesh set. The lower left reference meshes of the core meshes 301, 302, and 303 are located in the lower row. The mesh set including the core mesh 301 is managed as a left end mesh set in the bottom row. The mesh set on the right side is a mesh set including the core mesh 302, and the mesh set on the right side is a mesh set including the core mesh 303. Since the core mesh in which the lower left reference mesh is located does not exist at the bottom line + 1, no data exists in the file management table. Since the lower left reference mesh of the core mesh 304 is located at the lower end row + second row, a mesh set including the core mesh 304 is managed as the lower end row + second row left end mesh set. Similarly, a mesh set including the core mesh 305, a mesh set including the core mesh 306, and a mesh set including the core mesh 307 are managed from the left end in the lowermost row + 3rd row. A mesh set including the mesh 308 and a mesh set including the core mesh 309 are managed.
[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 recording medium 2 or the nonvolatile memory 12. The number of reference meshes of item No. 1 is the total number of reference meshes constituting the mesh set. This is the sum of the total number of reference meshes constituting the core mesh and the total number of reference meshes constituting the overlap mesh. The reference mesh data is arranged later by that number. Item No. 2 is the offset size to the reference mesh data. The offset and size accommodation fields are arranged by the number of reference meshes. Item Nos. 3 to 7 are reference mesh data. The mesh data of n reference meshes are arranged.
[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 own node information 3 of item No. 5 and the own node information 4 of item No. 6 are turned on, and these data are thinned out. By doing so, mesh data of the overlap mesh can be easily generated. Further, the node which has been invalidated can be easily re-enabled, so that the data can definitely be easily updated.
[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 recording medium 2. It is stored after the mesh set data of the connection / partial restriction data in FIG. The contents of each item number are the same as in FIG.
[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 item numbers 1 to 4 are the same as those in FIG. Item No. 5 is inter-level correspondence data.
[0049]
FIG. 15 is a diagram showing details of the inter-level correspondence data of item number 5 in FIG.
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 item number 1 is the corresponding information of the own node, and the item numbers 2 to 7 are the corresponding information of the adjacent nodes connected to the own node. The example in FIG. 16 is a case where m nodes are connected to a certain node. FIG. 17 is a diagram illustrating details of the own node correspondence information. Item No. 1 contains the number of nodes adjacent to the corresponding node. In the case of the own node in FIG. 16, m is entered. Item No. 2 is own level information. Enter the node number of the corresponding node at the corresponding level. Item Nos. 3 to 6 are lower level information. The number of corresponding levels set in item number 2 in FIG. 15 is set, and lower level information is arranged in order from the closest level based on the level. The lower-level information stores the existence area at the lower level of the own node and the own node number of the lower level. The existence area is information that can identify a corresponding block and a corresponding reference mesh.
[0051]
FIG. 18 is a diagram illustrating details of the adjacent node correspondence information. The item number 1 contains the node number of the node adjacent to the corresponding node at the corresponding level. Item Nos. 2 to 5 are lower level adjacent information. The number of corresponding levels set in item number 2 in FIG. 15 is set, and lower level information is arranged in order from the closest level based on the level. The lower-level adjacent information stores the existence area of the lower level of the adjacent node of the own node and the own node number of the lower level.
[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 level 1, a mesh whose distance between the lower left reference meshes is within 40 km is created, and at level 2, a combination of all mesh sets is created. These conditions may be changed as appropriate.
[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 item 4 of FIG. The route information list identification information will be described in more detail.
[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 level 6. Among them, the route calculation data is provided at level 1, level 2, and level 4. When the current location is detected and the destination is specified, the route between the current location and the destination is calculated.
[0059]
In the level 1 map display, the current location is detected and the destination is set. If both the current location and the destination are in the same core mesh of level 1, the route is calculated using the route calculation data of the reference mesh in the core mesh. Perform calculations. In addition, even when the current location and the destination are in the adjacent core meshes, the route calculation is basically performed using the route calculation data of the reference mesh of the adjacent core meshes at the same level.
[0060]
However, when the core mesh where the current location is located and the core mesh where the destination is distant at level 1, the route calculation is performed on the intermediate route using the route calculation data of the upper level 2. Also, when the corresponding core meshes are separated from each other at the upper level 2, the path calculation is further performed using the path calculation data at the upper level 4. In this way, the route on the way can use route calculation data of a small capacity at a higher level, so that the processing time of the route calculation can be reduced. However, as described above, when a route information list between mesh sets exists, the route information list is used. For example, at level 1, even if the core meshes are far apart, as described above, if there is a route information list within 40 km between the mesh sets, it is used.
[0061]
At level 1, when there is no route information list, route calculation such as the Dijkstra method is performed using data of the mesh set to which the current location belongs. When reaching the node of the overlap mesh, the node is raised to the upper level, level 2, and the route calculation is further continued. The same processing is performed on the destination side. At level 2, since there is a route information list in principle, a route with the minimum cost between the current-side mesh set and the destination-side mesh set up to level 2 is selected. If there is no route information list, route calculation is performed using the mesh set data of the level 2 mesh set. If necessary, the level is raised from the overlap mesh to the upper level 4, and the route calculation is performed using the level 4 route calculation data. The route calculation is performed in this way, and an optimal route from the current position to the destination can be obtained.
[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 level 1. The reference meshes L1-1 to L1-9 constitute a core mesh, and the reference meshes L1-10 to L1-17 constitute an overlap mesh. The reference meshes L2-1 to L2-8 constitute a mesh set having level 2. The reference meshes L2-1 to L2-6 constitute a core mesh, and the reference meshes L2-7 to L2-8 constitute an overlap mesh.
[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 upper level 2 block management table. (3) When it is possible to grasp which block the block belongs to, it becomes possible to refer to the mesh management table of the block. (4) With reference to the file management table of the corresponding mesh management table, based on the latitude and longitude information of the lower left reference mesh L1-1, it is determined which mesh set of the lower left reference mesh L1-1 is located in the core mesh. You can ask. In this manner, mesh sets can be associated between levels.
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 upper level 2 corresponding mesh set. In this way, the node of lower level 1 and the node of upper level 2 are associated with each other, and the route calculation can be performed from lower level 1 to upper level 2.
[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 navigation device 1. The navigation device 1 of the present embodiment can update map data such as route calculation data in units of the mesh set described above. The navigation device 1 can read the mesh management table and the map data from the recording medium 2, read the updated map data from the map server 6 via the removable memory 3 or the Internet 5 and use the latest map data.
[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 recording medium 2 and the updated map data are used in combination. For this reason, it has a nonvolatile memory 12 which is a readable / writable medium. The nonvolatile memory 12 is constituted by a nonvolatile memory such as a hard disk or a flash memory, and retains data even when the power of the navigation device is turned off. The nonvolatile memory 12 may be called a cache medium 12.
[0076]
The non-volatile memory 12 has the block management table 124 described with reference to FIG. The block management table 124 has identification information indicating whether the mesh management table of the corresponding block is on the recording medium 2 or the non-volatile memory 12 and the access address thereof. When new map data is used for the first time, first, the block management table stored in the recording medium 2 is read into the nonvolatile memory 12. As an initial value, the mesh management table of each block is set as being on the recording medium 2. Thereafter, in response to the update of the map data in units of mesh sets, a mesh management table 125 of the block having the updated mesh is created in the non-volatile memory 12, and in the block management table 124, the mesh management table of the corresponding block is non-volatile. The fact that it is on the memory 12 is set. By referring to the block management table 124, the program can determine whether the mesh management table is on the recording medium 2 or the non-volatile memory 12.
[0077]
Reference numeral 126 denotes a memory in the memory 15 of the navigation device, which is an area for storing a mesh management table. Hereinafter, it is referred to as a memory 126. After determining whether the mesh management table is on the recording medium 2 or the non-volatile memory 12, the program reads the mesh management table from the relevant medium and stores it in the memory 126. The mesh management table 127 read into the memory 126 has the mesh management information described with reference to FIGS.
[0078]
When the map data for each mesh set is updated in the removable memory 3, the map data of the mesh set is read into the non-volatile memory 12 and stored as the map data 133. At this time, the fact that the mesh set data of this mesh set is stored in the nonvolatile memory 12 and the address thereof are written in the storage location of the item No. 9 of the corresponding mesh set in the mesh management table on the nonvolatile memory 12. If the data size of the mesh set data has been changed, the contents of item numbers 10 and 11 are rewritten. The other items do not need to be rewritten by updating. Thereafter, based on the contents, the nonvolatile memory 12 can be accessed. That is, the map data of the mesh set that has not been updated can access the recording medium 2, and the updated mesh set map data can access the nonvolatile memory 12.
[0079]
-Path calculation control flowchart-
FIG. 22 is a diagram illustrating a flowchart of control in which the control device 11 reads route calculation data and performs route calculation. In step S1, the current position of the vehicle is detected using the current position detection device 13. In step S2, the destination set by the user using the input device 19 is set. In step S3, mesh set data of a required mesh set around the current position and the destination of the vehicle is read. In step S4, a route calculation (route search) is performed using the Dijkstra method or the like. In step S5, it is determined whether or not all the route calculations have been completed. That is, it is determined whether or not all the route calculations from the current location to the destination have been completed. If it is determined in step S5 that the process has not been completed yet, the process returns to step S3, where necessary mesh set data of the mesh set is read, and the route calculation is continued. If it is determined in step S5 that the route calculation has been completed, the process ends. During the repetition of steps S3 to S5, the connection to the above-described upper level is appropriately performed as needed.
[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 nonvolatile memory 12 is accessed as described above. In this case, it is assumed that the block management table has already been read into the nonvolatile memory 12. In step S22, based on the contents of the block management table, it is determined whether the file management table of the corresponding block exists on the recording medium 2 or the nonvolatile memory 12. If it is determined in step S22 that the recording medium 2 is present, the process proceeds to step S23. In step S23, the file management table of the corresponding block is read from the recording medium 2 into the memory 126.
[0081]
On the other hand, if it is determined in step S22 that it is not on the recording medium 2, that is, it is on the nonvolatile memory 12, the process proceeds to step S24. In step S24, the file management table of the corresponding block is read from the nonvolatile memory 12 into the memory 126. In step S25, the storage destination address of the mesh set is calculated based on the contents of the file management table read into the memory 126. In step S26, the mesh set data is read from the calculated storage destination. In this case, if the mesh set data has not been updated, the data is read from the recording medium 2 in mesh set units. If the mesh set data has been updated, the data is read from the nonvolatile memory 12.
[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 recording medium 2 is managed by introducing a concept of a mesh set composed of a plurality of reference meshes. As a result, data can be continuously read out from the recording medium 2 in a chunk of data suitable for path calculation. As a result, the number of seeks of the read head of the DVD drive is drastically reduced as compared with the case where data managed on a mesh basis is read out for each mesh, and the processing is speeded up.
(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 control device 11 of the navigation device has been described as an example stored in the ROM. However, the present invention is not limited to this. The control program and its installation program may be provided on a recording medium such as a DVD. Note that the recording medium need not be limited to a DVD, and a CD-ROM, a magnetic tape, or any other recording medium may be used.
[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 recording medium 2 may be a recording medium that provides a program, and the map server 6 may be a server that provides an application program.
[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 position detection device 13 and the input device 19 may be connected to a predetermined I / O port of a personal computer.
[0086]
In the above-described embodiment, an example in which update data is provided from the removable memory 3 has been described. However, the present invention is not limited to this. The update data may be written in a CD-ROM, DVD-ROM, or the like, and the recording medium 2 may be temporarily replaced to be provided.
[0087]
In the above embodiment, an example in which the initial map data is read from the recording medium 2 has been described. However, the present invention is not limited to this. The initial map data may be received via the Internet 5 and stored in the non-volatile memory 12, and then updated and managed by the above-described method. Further, necessary map data may be received via the Internet 5 each time, and may be stored in the non-volatile memory 12 each time, and when there is an update thereafter, update management may be performed by the above-described method.
[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 nonvolatile memory 12 is provided inside the navigation device 1 has been described. However, the present invention is not limited to this. An external storage device connected by a cable or the like may be used.
[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 SYMBOLS 1 Navigation device 2 Recording medium 3 Removable memory 4 Communication device 5 Internet 6 Map server 7 Map database 8 Guidance search database 11 Control device 12 Non-volatile memory 13 Current location detection device 14 DVD drive 15 Memory 16 Communication interface 17 Removable memory reading device 18 Monitor 19 input device

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.
請求項1記載の地図データの構造において、
前記管理テーブルは、前記区画セットを代表する基準区画の位置を表す情報と、前記区画セットの分割たて方向の数に関する情報と、分割横方向の数に関する情報とを有することを特徴とする地図データの構造。
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.
請求項2記載の地図データの構造において、
前記区画セットは矩形形状を有し、
前記区画セットを代表する基準区画は、前記区画セットの左下に位置する区画であることを特徴とする地図データの構造。
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.
請求項3記載の地図データの構造において、
前記区画セットを管理する情報は、前記区画セットを代表する基準区画が分割横方向および分割たて方向を基準として並ぶ順序で格納されることを特徴とする地図データの構造。
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.
請求項1〜4のいずれか1項記載の地図データの構造において、
前記各レベル内において、前記地図をメッシュ状の複数のブロックに分割し、
前記複数の区画は、前記各ブロックをさらに分割して得られた区画であり、
前記管理テーブルは、前記各ブロック毎に設けられることを特徴とする地図データの構造。
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.
請求項1〜5のいずれか1項記載の地図データの構造において、
前記地図データ処理装置が取得した前記地図に関する情報は、前記管理テーブルを使用して、前記区画セット単位で更新可能であることを特徴とする地図データの構造。
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.
請求項1〜6のいずれか1項記載の地図データの構造において、
前記地図上の道路の交差点をノードとし、
前記地図に関する情報は前記ノードに関する情報を有し、
前記区画単位に分割した地図に関する情報は、該区画内のノードと他のレベルの対応するノードとのレベル間ノード対応情報をさらに有し、
前記区画セットのレベル間の対応関係と前記区画セットを構成する区画のレベル間ノード対応情報を使用して、ノードのレベル間の対応関係を把握することが可能であることを特徴とする地図データの構造。
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.
請求項1〜7のいずれか1項記載の地図データの構造において、
前記地図に関する情報は、経路計算に使用される地図上の経路に関する情報であることを特徴とする地図データの構造。
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.
請求項1〜8のいずれか1項記載の地図データの構造を有する地図データが記録された記録媒体を搭載する記録媒体駆動手段と、
前記記録媒体に記録された地図データに基づき、地図データの処理を行う処理手段とを備えたことを特徴とする地図データ処理装置。
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.
請求項8記載の地図データの構造を有する地図データが記録された記録媒体を搭載する記録媒体駆動手段と、
前記記録媒体に記録された前記地図上の経路に関する情報に基づき、経路計算を行う処理手段とを備えたことを特徴とする地図データ処理装置。
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.
請求項1〜8のいずれか1項記載の地図データの構造を有する地図データを記録したことを特徴とするコンピュータあるいは地図データ処理装置に読み取り可能な記録媒体。A recording medium readable by a computer or a map data processing device, wherein the map data having the map data structure according to any one of claims 1 to 8 is recorded.
JP2002220923A 2002-07-30 2002-07-30 Map data processor Expired - Fee Related JP4145597B2 (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (2)

* Cited by examiner, † Cited by third party
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