まず、この発明の概念を、図1を参照しながら説明する。今、Y1年度版の地図データに対して、例えば主要道路の更新などが発生することにより、例えば月毎にX1版→X2版→X3版と順次に地図データが更新され、翌年度にY2年度版の地図データに更新されるという状態を考える。この発明に係る地図情報処理装置は、月毎に改版された現在の地図データをY1年度版の地図データに戻し、このY1年度版の地図データに対して地図情報提供者から提供される年次更新差分データを適用し、Y2年度版の地図データを生成する。これにより、現在の地図データの版に拘わらず、1種類の差分データを用いて、Y1年度版の地図データをY2年度版の地図データに更新することができる。
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
図2は、この発明の実施の形態1に係る地図情報処理装置の概念を説明するための図である。この地図情報処理装置は、月毎の改版時に、更新される地域の更新前の地図データM1、M2、M3、・・・を保存しておき、年次更新時に、現在の地図データを、保存されている地図データで書き換えることによりY1年度版の地図データに戻し、このY1年度版の地図データに対して地図情報提供者から提供される年次更新差分データを適用し、Y2年度版の地図データを生成する。
図3は、この発明の実施の形態1に係る地図情報処理装置の構成を示すブロック図である。この地図情報処理装置は、入力装置1、位置検出装置2、地図データ記憶装置3、主更新差分データ取得装置4、副更新差分データ取得装置5、プロセッサ6および出力装置7から構成されている。
入力装置1は、使用者の操作または指示に応じて指示信号を生成し、プロセッサ6に送る。この入力装置1は、例えば、使用者の手動操作に応じて指示信号を生成するボタン、使用者の音声を認識して指示信号を生成する音声認識装置、および、その他の入力装置の少なくとも1つから構成することができる。
位置検出装置2は、例えばGPS(Global Positioning System)受信機、車速センサおよび角速度センサを用いて当該地図情報処理装置が搭載された車両の現在位置を検出する。この位置検出装置2で検出された現在位置は、現在位置データとしてプロセッサ6に送られる。
地図データ記憶装置3は、この発明の地図データ記憶手段に対応し、例えば、読み書きが可能な記憶媒体であるハードディスクを備えたハードディスクドライブにより構成されている。この地図データ記憶装置3のハードディスクに形成された地図領域には、予め地図データが記憶されている。この地図データの詳細は後述する。この地図データ記憶装置3に記憶されている地図データは、プロセッサ6によって読み出される。
主更新差分データ取得装置4は、この発明の主更新差分データ取得手段に対応し、主更新差分データ(詳細は後述する)を取得してプロセッサ6に送る。具体的には、主更新差分データ取得装置4は、例えば、DVD(Digital Versatile Disk)ドライブによって構成されており、装着された主更新用DVD−ROM(Read Only Memory)から主更新差分データを読み取ってプロセッサ6に送る。
副更新差分データ取得装置5は、この発明の副更新差分データ取得手段に対応し、副更新差分データ(詳細は後述する)を取得してプロセッサ6に送る。具体的には、副更新差分データ取得装置5は、例えば、メモリカードドライブによって構成されており、装着された副更新用メモリカードから副更新差分データを読み取ってプロセッサ6に送る。
プロセッサ6は、この発明の地図情報処理手段に対応する。このプロセッサ6は、位置検出装置2から得られた現在位置データと地図データ記憶装置3から読み出した地図データとを用いて各種の地図情報処理を実行する。この地図情報処理には、位置検出装置2から得られた現在位置データと地図データ記憶装置3から読み出した地図データとに基づいて車両の現在位置を推定するマップマッチング処理、出発地から目的地までの好適な経路を算出する経路計算(経路探索)処理、経路計算処理によって得られた好適な経路の候補を道路地図とともに出力装置7を構成する表示装置の画面に表示する経路表示処理、好適な経路に従って出発地から目的地までの案内を行う経路誘導処理、および、現在位置周辺の地図を表示する地図表示処理などが含まれる。
また、プロセッサ6は、主更新差分データ取得装置4においてDVD−ROMから読み取られた主更新差分データを用いて、地図データ記憶装置3に記憶されている地図データを更新するとともに、副更新差分データ取得装置5において副更新用メモリカードから読み取られた副更新差分データを用いて、地図データ記憶装置3に記憶されている地図データを更新する。
出力装置7は、例えば表示装置および音声発生装置(いずれも図示は省略する)から構成されている。表示装置は、プロセッサ6から送られてくる表示データに従って地図、現在位置、経路、案内情報などといった種々の情報を表示する。音声発生装置は、プロセッサ6から送られてくる音声データに従って音声を発生し、使用者に対する指示または案内を行う。
図4は、地図データ記憶装置3の地図領域に格納される地図データの例を示す。地図データは、地図の詳しさの度合いによって階層化されており、各階層の地図データは、全国を所定の大きさで分割して得られる複数の領域の各々を単位として作成されている。
地図データは、地図データ管理情報、道路データ、背景データ、名称データ、経路誘導データおよび検索データから構成されている。道路データは、経路計算、マップマッチングおよび道路の表示などに使用される道路形状および道路の接続関係などを表すために使用される。背景データは、河川または海などといった地図背景を表示するために使用される。名称データは、地名などの名称を文字で表示するために使用される。経路誘導データは、交差点などにおいて経路案内を行うために使用される。検索データは、目的地などの地点情報を検索するために使用される。
また、地図データ管理情報は、当該地図データの作成日などによって表された当該地図データの版数を示す版数情報、ならびに、上述した道路データ、背景データ、名称データ、経路誘導データおよび検索データの格納位置とデータサイズとを表す情報などを含んでいる。なお、地図データ記憶装置3の地図領域には、上述した地図データ以外に、地図データの初期の版数情報または主更新(詳細は後述する)が行われることによって付された版数情報、各階層の地図データの格納位置およびデータサイズなどを表す管理情報が格納されている。
図5は、地図情報処理装置に提供される地図データが、地図情報提供者において作成される様子を時系列に示す図である。すなわち、Y年度に初版の地図データが作成され、それ以降のY+1年度、Y+2年度、・・・の各年度において、前年度と今年度との間で発生したすべての変更を反映した最新の地図データが作成される。このような地図データの作成を「主地図作成」と呼ぶ。
また、例えば、Y+1年度の地図データに対して、Y+1年度の5月、6月、・・・、12月、1月、2月および3月には、前月と今月との間で発生した主要道路開通などの地図の主要な変更を反映した地図データが作成され、以降の各年度の地図データに対しても、上記と同様に、月毎に地図データが作成される。このような地図データの作成を「副地図作成」と呼ぶ。
なお、主地図作成は、必ずしも年度毎に行う必要はなく不定期的に行ってもよい。また、間隔も1年である必要はなく任意の間隔であってもよい。同様に、副地図作成は、主地図作成と主地図作成との間で行えば必ずしも月毎に行う必要はなく不定期的に行ってもよい。また、間隔も1か月である必要はなく任意の間隔であってもよい。
図6は、地図情報処理装置において、地図データ記憶装置3の地図領域に記憶されている地図データが更新される様子を時系列に示す図である。地図情報処理装置は、「主更新」および「副更新」といった2種類の時系列で地図データを更新する。この発明の第1の時系列は、主更新が行われる系列であり、第2の時系列は、副更新が行われる系列である。主更新では、地図データが、年度毎に当該年度版の地図データに更新される。副更新では、地図データが、月毎に当該月版の地図データに更新される。主更新および副更新は、新旧といった2つの地図データの差分を表す差分データを用いて更新する「差分更新」によって行われる。
主更新では、更新の対象となる古い地図データである主更新元地図データが差分更新されて、新しい地図データが生成される。この実施の形態1に係る地図情報処理装置では、当該年度の各月の副更新に対して、最も近い時期に実施された主更新により得られる地図データ、すなわち当該年度版の地図データが主更新元地図データとされる。図6に示す例では、Y年度の各月の副更新に対し、主更新元地図データはY年度版の地図データであり、Y+1年度の各月の副更新に対し、主更新元地図データはY+1年度版の地図データである。
なお、主更新は必ずしも年度毎に行う必要はなく不定期的に行ってもよい。また、間隔も1年である必要はなく任意の間隔であってもよい。同様に、副更新は、主更新と主更新との間で行えば必ずしも月毎に行う必要はなく不定期的に行ってもよい。また、間隔も1か月である必要はなく任意の間隔であってもよい。
図7は、主更新元地図データを前年度版の地図データとする場合に、地図情報処理装置に提供される差分データが地図情報提供者によって作成される様子を時系列に示す図である。Y+1年度には、Y年度版の地図データをY+1年度版の地図データに更新するための主更新差分データと、その管理のための主更新差分データ管理情報とが格納された主更新用DVD−ROMが作成される。主更新差分データは、前年度から今年度までの間で変化のあった地図データに対応して作成される差分データであり、より詳しくは、前年度の地図データと今年度の地図データとの差分を表す差分データである。主更新差分データ管理情報は、更新前後の地図データの版数を示す更新版数情報、主更新差分データが適用される地域を表す地域情報、主更新差分データの格納位置および主更新差分データのデータサイズなどを示す情報からなる。
Y+2年度には、Y+1年度版の地図データをY+2年度版の地図データに更新するための主更新差分データと、その管理のための主更新差分データ管理情報とが格納された主更新用DVD−ROMが作成される。以下同様にして、年度毎に、前年度版の地図データを今年度版の地図データに更新するための主更新差分データおよび主更新差分データ管理情報が格納された主更新用DVD−ROMが作成される。
また、各年度の各月において、前月版の地図データを当該月版の地図データに更新するための副更新差分データが作成される。副更新差分データは、前月版から変化のあった地図データに対応して作成される差分データであり、より詳しくは、前月版の地図データと当該月版の地図データとの差分を表す差分データである。各年度の各月において、当該月およびそれ以前に作成した副更新差分データが格納された副更新用メモリカードが作成される。なお、副更新用メモリカードには、更新前後の版数を表す更新版数情報、副更新差分データが適用される地域を表す地域情報、副更新差分データの格納位置および副更新差分データのデータサイズなどを示す副更新差分データ管理情報が格納される。
地図データ記憶装置3には、上述した地図領域以外に、復元情報領域が形成されており、復元情報領域には、主更新時に、副更新された地図データを主更新元地図データに戻すために使用される復元情報および復元情報を管理するための復元情報管理情報が格納される。復元情報管理情報は、復元情報が適用される地域、復元前後の版数、復元情報の格納位置および復元情報のデータサイズなどを含む。なお、初期状態では、復元情報領域には、復元情報は存在しない。
次に、上記のように構成される、この発明の実施の形態1に係る地図情報処理装置の動作を、地図データ記憶装置3の地図領域に格納された地図データを更新する地図データ更新処理を中心に、図8に示すフローチャートを参照しながら説明する。この地図データ更新処理は、プロセッサ6によって実行される。
地図データ更新処理では、まず、副更新用メモリカードが挿入されているかどうかが調べられる(ステップST10)。すなわち、プロセッサ6は、副更新差分データ取得装置5に副更新用メモリカードが挿入されているか否かを調べる。このステップST10において、副更新用メモリカードが挿入されていないことが判断されると、シーケンスはステップST12に進む。
一方、上記ステップST10において、副更新用メモリカードが挿入されていることが判断されると、副更新処理が行われる(ステップST11)。すなわち、プロセッサ6は、副更新差分データ取得装置に挿入された副更新用メモリカードから副更新差分データを読み出し、この読み出した副更新差分データを用いて、地図データ記憶装置3の地図領域に格納された地図データを更新する。この副更新処理の詳細は後述する。その後、シーケンスはステップST12に進む。
ステップST12においては、主更新用DVD−ROMが挿入されているかどうかが調べられる。すなわち、プロセッサ6は、主更新差分データ取得装置4に主更新用DVD−ROMが挿入されているか否かを調べる。このステップST12において、主更新用DVD−ROMが挿入されていないことが判断されると、シーケンスはステップST10に戻り、上述した処理が繰り返される。
一方、ステップST12において、主更新用DVD−ROMが挿入されていることが判断されると、主更新処理が行われる(ステップST13)。すなわち、プロセッサ6は、主更新差分データ取得装置4に挿入された主更新用DVD−ROMから主更新差分データを読み出し、この読み出した主更新差分データを用いて、地図データ記憶装置3の地図領域に格納された地図データを更新する。この主更新処理の詳細は後述する。その後、シーケンスはステップST10へ戻り、上述した処理が繰り返される。
以上のようにして、地図データ更新処理においては、副更新用メモリカードに記憶されている副更新差分データおよび主更新用DVD−ROMに記憶されている主更新差分データに従って、地図データ記憶装置3の地図領域に格納された地図データの副更新および主更新が行われる。
図9は、地図情報提供者が作成する各地域の地図データの例を示す。図9(a)は、複数に分割された地図データの地域を示しており、各地域m00、m01、・・・、m32およびm33は、所定間隔の緯線と経線とで囲まれた矩形領域によって構成されている。図9(b)は、X年度版の地図データを示しており、地域M00、M01、・・・、M32およびM33の地図データは、それぞれM00、M01、・・・、M32およびM33であることを示している。図9(c)は、X年度5月版の地図データを示しており、X年度版のM11、M12およびM20が、M11(X:5)、M12(X:5)およびM20(X:5)にそれぞれ更新されたことを示している。図9(d)は、X年度6月版の地図データを示しており、図9(c)に示すX年度5月版のM12(X:5)、M20(X:5)およびM33が、M12(X:6)、M20(X:6)およびM33(X:6)にそれぞれ更新されたことを示している。
X年5月には、M11、M12およびM20を、M11(X:5)、M12(X:5)およびM20(X:5)へそれぞれ更新するための副更新差分データが格納された副更新用メモリカードが作成され、X年6月には、M11、M12およびM20を、M11(X:5)、M12(X:5)およびM20(X:5)へそれぞれ更新するための副更新差分データと、M12(X:5)、M20(X:5)およびM33を、M12(X:6)、M20(X:6)およびM33(X:6)へそれぞれ更新するための副更新差分データとが格納された副更新用メモリカードが作成される。
なお、以下では、階層数が「1」である場合の地図データを用いて説明するが、階層数が複数である場合は、各階層について、以下に説明する処理と同様の処理が行われる。
図10は、地図データ記憶装置3の地図領域に格納された地図データの例を示す。図10(a)は、X年度の主更新により得られた地図データを示しており、図9(b)のX年度版の地図データと同じである。図10(b)および図10(c)は、X年度5月および6月における副更新後の地図データをそれぞれ示している。
図11は、図8のフローチャートに示した地図データ更新処理のステップST11において行われる副更新処理の詳細を示すフローチャートである。以下においては、地図データ記憶装置3の地図領域には、図10(a)に示す地図データが格納されているものとし、X年度5月およびX年度6月に作成された副更新用メモリカードを使用して副更新処理が行われる場合について説明する。
先ず、X年度5月に作成された副更新用メモリカードを用いて行われる副更新処理を説明する。この副更新処理では、まず、副更新差分データ管理情報が取得される(ステップST100)。すなわち、プロセッサ6は、副更新差分データ取得装置5から、該副更新差分データ取得装置5に挿入された副更新用メモリカードに格納されている副更新差分データ管理情報を取得する。
次いで、更新地域の選択が行われる(ステップST110)。すなわち、プロセッサ6は、副更新差分データ管理情報に含まれる地域情報に基づいて、更新の対象となる地域m11、m12およびm20を出力装置7に送ることにより、使用者に提示する。使用者は、この提示に応答して、入力装置1を用いて所望の地域を選択する。以下では、地域m11およびm12が選択されたものとする。
次いで、更新対象地図データが取得される(ステップST120)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域から、ステップST110で選択された地域の地図データを取得する。このステップST120の処理により、図10(a)に示す地図データM11およびM12が取得される。
次いで、副更新差分データが取得される(ステップST130)。すなわち、プロセッサ6は、ステップST110で選択された地域について、ステップST120で取得された地図データの版数情報とステップST100で取得された副更新差分データ管理情報に含まれる更新版数情報とを比較し、ステップST110で選択された地域の更新に必要な副更新差分データを、副更新差分データ取得装置5に挿入された副更新用メモリカードから取得する。このステップST130の処理により、地域m11およびm12について、X年度版の地図データM11およびM12を、X年度5月版の地図データM11(X:5)およびM12(X:5)へそれぞれ更新するための副更新差分データが副更新用メモリカードから取得される。
次いで、更新対象地図データの差分更新が行われる(ステップST140)。すなわち、プロセッサ6は、ステップST120で取得した地図データを、ステップST130で取得した副更新差分データを用いて差分更新する。このステップST140の処理により、地図データM11およびM12が差分更新され、地図データM11(X:5)およびM12(X:5)が得られる。
次いで、更新対象地図データが保存される(ステップST150)。すなわち、プロセッサ6は、ステップST120で取得した地図データを、復元情報として地図データ記憶装置3に設けられた復元情報領域に保存する。このとき、プロセッサ6は、復元情報管理情報を参照し、復元情報領域に保存されていない地域の地図データのみを保存する。これにより、以下で説明するように復元情報領域の復元情報は主更新が終了する毎に削除されるため、復元情報領域には、各地域について、当該年度の最初に副更新を行う前の地図データ、つまり当該年度版の地図データが保存される。
図12は、復元情報領域の例を示す。X年度の主更新の直後の副更新であるため、地域m11およびm12の地図データは、地図データ記憶装置3の復元情報領域に存在せず、このステップST150の処理により、図12(a)に示すように、地図データ記憶装置3の復元情報領域に、X年度版の地図データM11およびM12が保存される。
次いで、更新対象地図データの書き換えが行われる(ステップST160)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域に記憶されている、ステップST110で選択された地域の地図データを、ステップST140の差分更新で得られた地図データに書き換える。このステップST160の処理により、地図データ記憶装置3の地図領域に含まれる地域m11およびm12の地図データM11およびM12が、地図データM11(X:5)およびM12(X:5)にそれぞれ書き換えられ、図10(b)に示すような地図データが得られる。その後、副更新処理は終了する。
以上の副更新処理により、使用者が選択した地域の地図データが最新の地図データに更新されるとともに、副更新の対象である使用者が選択した地域の地図データが復元情報領域に保存される。この例では、使用者が選択した地域m11およびm12のX年度版の地図データM11およびM12が、X年度5月版の地図データM11(X:5)およびM12(X:5)に更新されるとともに、X年度版の地図データM11およびM12が復元情報領域に保存される。
次に、X年度6月に作成された副更新用メモリカードを用いて行われる副更新処理を説明する。なお、この副更新処理は、取り扱われるデータを除けば、X年度5月に作成された副更新用メモリカードを用いて行われる副更新処理と同じであるので、以下では、説明を簡略化する。この副更新処理では、まず、副更新差分データ管理情報が取得される(ステップST100)。次いで、更新地域の選択が行われる(ステップST110)。この場合、副更新差分データ管理情報に含まれる地域情報に基づいて、更新の対象となる地域m12、m20およびm33が使用者に提示され、使用者は、この提示に応答して、地域m12およびm20を選択するものとする。
次いで、更新対象地図データが取得される(ステップST120)。すなわち、図10(b)に示す地域m12およびm20の地図データM12(X:5)およびM20が取得される。次いで、副更新差分データが取得される(ステップST130)。このステップST130では、地域m12に対しては、ステップST120で取得された地図データがX年5月版であるため、X年度5月版から6月版への副更新差分データが取得され、地域m20に対しては、ステップST120で取得された地図データがX年度版であるため、X年度版から5月版への副更新差分データと、X年度5月版から6月版への副更新差分データとが取得される。
次いで、更新対象地図データの差分更新が行われる(ステップST140)。すなわち、地図データM12(X:5)が地域m12のX年度5月版から6月版への副更新差分データを用いて差分更新され、地図データM12(X:6)が得られる。また、地図データM20が地域m20のX年度版から5月版への副更新差分データおよびX年度5月版から6月版への副更新差分データを用いて差分更新され、順次地図データM20(X:5)およびM20(X:6)が得られる。
次いで、更新対象地図データが保存される(ステップST150)。すなわち、復元情報管理情報が参照されることにより、図12(a)に示すような地図データが復元情報領域に存在しない地域m20の地図データM20のみが復元情報領域に格納される。これにより、図12(b)に示すように、5月および6月の副更新で更新された地域m11、m12およびm20のX年度版の地図データM11、M12およびM20が復元情報領域に保存される。
次いで、更新対象地図データの書き換えが行われる(ステップST160)。すなわち、図10(b)に示す地域m12およびm20の地図データM12(X:5)およびM20が、地図データM12(X:6)およびM12(X:6)に書き換えられ、図10(c)に示すような地図データが得られる。以降の月に作成された副更新用メモリカードに対しても、上記と同様にして副更新処理が行われる。
図13は、図8のフローチャートに示した地図データ更新処理のステップST13において行われる主更新処理の詳細を示すフローチャートである。以下では、X年度版の地図データが、X年度5月に作成された副更新用メモリカードおよびX年度6月に作成された副更新用メモリカードを用いて副更新された地図データに対し、X+1年度4月にX+1年度の主更新を行う場合を例に挙げて説明する。
図14は、X+1年度版の地図データの例であり、図9(b)に示すX年度版の地図データM00、M03、M11、M12、M20およびM33が、地図データM00’、M03’、M11’、M12’、M20’およびM33’に更新されている。X+1年度の主更新用DVD−ROMには、地図データM00、M03、M11、M12、M20およびM33を、地図データM00’、M03’、M11’、M12’、M20’およびM33’にそれぞれ更新するための主更新差分データが格納されているものとする。
主更新処理では、まず、主更新差分データ管理情報が取得される(ステップST200)。すなわち、プロセッサ6は、主更新差分データ取得装置4から、該主更新差分データ取得装置4に挿入された主更新用DVD−ROMに格納されているX+1年度の主更新差分データ管理情報を取得する。
次いで、主更新元地図データの復元処理が行われる(ステップST210)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域に格納されている地図データを、地図データ記憶装置3の復元情報領域に保存されている地図データに書き換えることにより、地図データ記憶装置3の地図領域に格納されている地図データを主更新元地図データに戻す。このステップST210の処理により、地図データ記憶装置3の復元情報領域には、X年度版の地図データが保存されているので、地図データ記憶装置3の地図領域の地図データはX年度版の地図データに戻る。換言すれば、現時点に対して最も近い時期に行われた主更新であるX年度の主更新により得られた地図データに戻る。
X年度6月の副更新によって、地図データ記憶装置3の地図領域に格納されている地図データは、図10(c)に示すようになっているが、このステップST210の処理により、図10(c)の地図データM11(X:5)、M12(X:6)、M20(X:6)が、地図データM11、M12およびM20にそれぞれ書き換えられ、地図データ記憶装置3の地図領域の地図データは、図10(a)に示すような、主更新元地図データであるX年度版の地図データに戻る。
次いで、主更新差分データが取得される(ステップST220)。すなわち、プロセッサ6は、ステップST200で取得された主更新差分データ管理情報を参照し、主更新差分データ管理情報に登録されている地域のX+1年度の主更新差分データを、主更新差分データ取得装置4に挿入された主更新用DVD−ROMから取得する。以下の繰り返し実行において、このステップST220を実行する度に、地域m00、m03、m11、m12、m20およびm33の主更新差分データが順次に取得される。
次いで、更新対象地図データが取得される(ステップST230)。すなわち、プロセッサ6は、ステップST220で取得された主更新差分データを適用すべき地域の地図データを、地図データ記憶装置3の地図領域から取得する。例えば、ステップST220において主更新差分データが取得された地域がm00であれば、図10(a)に示す地図データM00が取得される。
次いで、更新対象地図データの差分更新が行われる(ステップST240)。すなわち、プロセッサ6は、ステップST230で取得した地図データを、ステップST220で取得した主更新差分データを用いて差分更新し、X+1年度版の地図データを生成する。例えば、ステップST220で主更新差分データが取得された地域がm00であれば、地図データM00が差分更新され、地図データM00’が得られる。
次いで、更新対象地図データの書き換えが行われる(ステップST250)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域に記憶されている地図データを、ステップST240の差分更新で得られた地図データに書き換える。例えば、ステップST220で主更新差分データが取得された地域がm00であれば、図10(a)に示す地図データM00が地図データM00’に書き換えられる。
次いで、全地域の更新が終了したかどうかが調べられる(ステップST260)。すなわち、プロセッサ6は、ステップST200で取得した主更新差分データ管理情報に登録されている全ての地域について、上述した処理が終了したかどうかを調べる。このステップST260において、全地域の更新が終了していないことが判断されると、シーケンスはステップST220に戻り、上述した処理が繰り返される。一方、上記ステップST260において、全地域の更新が終了したことが判断されると、次いで、復元情報領域がクリアされる(ステップST270)。すなわち、プロセッサ6は、地図データ記憶装置3の復元情報領域のすべての復元情報を削除する。その後、主更新処理は終了する。
以上の主更新処理の結果、図9(a)の地域m00、m03、m11、m12、m20およびm33に対する図10(a)の地図データM00、M03、M11、M12、M20およびM33が、図14に示す地図データM00’、M03’、M11’、M12’、M20’およびM33’にそれぞれ更新され、地図データ記憶装置3の地図領域の地図データは、図14に示すX+1年度版の地図データとなる。
以上説明したように、この発明の実施の形態1に係る地図情報処理装置によれば、副更新および主更新の双方を行うことができる。また、主更新処理のステップST210で行われる主更新元地図データ復元処理により、主更新元地図データであるX年度版に戻した地図データに対して差分更新が行われるので、副更新の状況によらず、換言すれば、各地図データがX年度のどの月の版まで更新されているかによらず、1種類のX+1年度の主更新用DVD−ROMにより主更新を行うことができる。その結果、地図情報提供者は、各地図情報処理装置の副更新の状況によらず、1種類のX+1年度の主更新用DVD−ROMを作成すればよいので、主更新用DVD−ROMをより安価に作成でき、情報処理装置は、より安価に地図データを更新できる。
実施の形態2.
図15は、この発明の実施の形態2に係る地図情報処理装置の概念を説明するための図である。この地図情報処理装置は、月毎の改版時に、更新された地域の地図データと更新前の地図データと差分である逆差分データ(詳細は後述)を生成して保存しておき、年次更新時に、現在の地図データを、保存されている逆差分データを用いてY1年度版の地図データに戻し、このY1年度版の地図データに対して地図情報提供者から提供される年次更新差分データを適用し、Y2年度版の地図データを生成する。
この発明の実施の形態2に係る地図情報処理装置は、実施の形態1に係る地図情報処理装置において、図11のフローチャートに示す副更新処理のステップST150で行われる更新対象地図データ保存処理を、図16のフローチャートに示す処理に変更し、図13のフローチャートに示す主更新処理のステップST210で行われる主更新元地図データ復元処理を、図18のフローチャートに示す処理に変更するとともに、さらに、地図データ記憶装置3の復元情報領域に格納する復元情報として、逆差分データを用いるようにしたものである。ここで、逆差分データは、ある版の地図データを主更新元地図データに戻すための差分データであり、ある版の地図データと主更新元地図データとの差分を表すデータから構成されている。
図17は、復元情報領域の例を示しており、図17(a)は、X年度5月の副更新において、以下に説明する更新対象地図データ保存処理で生成された地域m11およびm12の逆差分データが格納された状態を示し、図17(b)は、X年度6月の副更新において、以下に説明する更新対象地図データ保存処理で生成された地域m11、m12およびm20の逆差分データが格納された状態を示している。
先ず、X年度5月の副更新に対する更新対象地図データ保存処理を、図16に示すフローチャートを参照しながら説明する。この更新対象地図データ保存処理では、まず、主更新元地図データ復元処理が行われる(ステップST300)。すなわち、プロセッサ6は、地図データ記憶装置3の復元情報領域に存在する、図11に示す副更新処理のステップST110で選択された地域の逆差分データを用いて、地図データ記憶装置3の地図領域に存在する、図11に示す副更新処理のステップST110で選択された地域の地図データを差分更新して、X年度版の地図データ、すなわち主更新元地図データを得る。
この際、地図データ記憶装置3の復元情報領域に、図11に示す副更新処理のステップST110で選択された地域の逆差分データが存在しない場合は、地図データ記憶装置3の地図領域から、選択された地域の地図データを取得する。X年度5月では、地図データ記憶装置3の復元情報領域には、逆差分データが存在しないため、ステップST300の処理により、地域m11およびm12の地図データM11およびM12が、図10(a)に示す地図データ記憶装置3の地図領域の地図データから取得される。
次いで、逆差分データが生成される(ステップST310)。すなわち、プロセッサ6は、図11に示す副更新処理のステップST140における差分更新によって得られた地図データと、ステップST300における復元によって得られた地図データとの差分を抽出し、図11に示す副更新処理のステップST140における差分更新によって得られた地図データを、ステップST300における復元によって得られた地図データへ戻すための差分データである逆差分データを生成する。このステップST310の処理により、図10(b)に示す地図データM11(X:5)を地図データM11へ戻すための地域m11の逆差分データが生成されるとともに、図10(b)の地図データM12(X:5)を地図データM12へ戻すための地域m12の逆差分データが生成される。
次いで、逆差分データが保存される(ステップST320)。すなわち、プロセッサ6は、ステップST310で生成された逆差分データを地図データ記憶装置3の復元情報領域に格納する。このステップST320の処理により、地域m11の逆差分データおよび地域m12の逆差分データが地図データ記憶装置3の復元情報領域に格納され、図17(a)に示す状態になる。
次に、X年度6月の副更新に対する更新対象地図データ保存処理を、図16に示すフローチャートを参照しながら説明する。なお、この更新対象地図データ保存処理は、取り扱われるデータを除けば、X年度5月の副更新に対する更新対象地図データ保存処理と同じであるので、以下では、説明を簡略化する。
この更新対象地図データ保存処理では、まず、主更新元地図データ復元処理が行われる(ステップST300)。すなわち、このステップST300では、図17(a)に示す地域m12の逆差分データを用いて、図10(b)に示す地域m12の地図データM12(X:5)が差分更新されて、X年度版の地図データM12が得られる。また、地域m20の逆差分データは図17(a)に示す復元情報領域に存在しないため、地域m20の地図データM20が図10(b)に示す地図データから取得される。
次いで、逆差分データが生成される(ステップST310)。すなわち、図11に示す副更新処理のステップST140における差分更新によって得られた地図データM12(X:6)およびM20(X:6)を、ステップST300で得られた地図データM12およびM20にそれぞれ戻すための地域m12およびm20の逆差分データが生成される。次いで、逆差分データが保存される(ステップST320)。すなわち、ステップST310で生成された地域m12およびm20の逆差分データが地図データ記憶装置3の復元情報領域に格納され、図17(b)に示す状態になる。
次に、主更新元地図データ復元処理を、図18に示すフローチャートを参照しながら説明する。ここでは、X年度版の地図データを、X年度5月に作成された副更新用メモリカードおよびX年度6月に作成された副更新用メモリカードを用いて副更新した後に、X+1年度4月にX+1年度の主更新を行う場合を例に挙げて説明する。
まず、逆差分データ管理情報が取得される(ステップST400)。すなわち、プロセッサ6は、地図データ記憶装置3の復元情報領域に格納されている逆差分データ管理情報を取得する。次いで、逆差分データが取得される(ステップST410)。すなわち、プロセッサ6は、ステップST400で取得した逆差分データ管理情報に登録されている地域の逆差分データを、地図データ記憶装置3の復元情報領域から取得する。このステップST410の処理により、図17(b)に示す地域m11、m12およびm20の逆差分データが取得される。
次いで、逆差分更新が行われる(ステップST420)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域の地図データであって、ステップST400で取得した逆差分データ管理情報に登録されている地域の地図データを、ステップST410で取得した逆差分データを用いて差分更新し、X年度版の地図データ、すなわち主更新元地図データを得る。このステップST420の処理により、図10(c)に示す地図データM11(X:5)、M12(X:6)およびM20(X:6)が地域m11、m12およびm20の逆差分データでそれぞれ差分更新され、地図データM11、M12およびM20が得られる。
次いで、地図データの書き換えが行われる(ステップST430)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域の地図データをステップST420で得た地図データに書き換えることにより、地図データ記憶装置3の地図領域の地図データを主更新元地図データであるX年度版の地図データに戻す。このステップST430の処理により、図10(c)に示す地図データM11(X:5)、M12(X:6)およびM20(X:6)が地図データM11、M12およびM20にそれぞれ書き換えられ、図10(a)に示す地図データが得られる。
以上説明したように、この発明の実施の形態2に係る地図情報処理装置によれば、副更新時に、副更新された地図データを主更新元地図データに戻すための逆差分データを生成し、主更新に際し、副更新された地図データを逆差分データにより主更新元地図データに戻すように構成したので、実施の形態1に係る地図情報処理装置と同様の効果が得られるとともに、さらに、逆差分データを保存するようにしたために、地図データ記憶装置3の使用領域をより少なくできる。
実施の形態3.
図19は、この発明の実施の形態3に係る地図情報処理装置の概念を説明するための図である。この地図情報処理装置は、月毎の改版時に、更新される地域の更新前の地図データと更新後の地図データと差分である副更新逆差分データ(詳細は後述)を生成して保存しておき、年次更新時に、現在の地図データを、保存されている副更新逆差分データを順次に遡って適用することによりY1年度版の地図データに戻し、このY1年度版の地図データに対して地図情報提供者から提供される年次更新差分データを適用してY2年度版の地図データを生成する。
この発明の実施の形態3に地図情報処理装置は、実施の形態1に係る地図情報処理装置において、図11のフローチャートに示す副更新処理のステップST150で行われる更新対象地図データ保存処理を、図20のフローチャートに示す処理に変更し、図13のフローチャートに示す主更新処理のステップST210で行われる主更新元地図データ復元処理を、図22のフローチャートに示す処理に変更するとともに、さらに、地図データ記憶装置3の復元情報領域に格納する復元情報として、副更新逆差分データを用いるように構成したものである。副更新逆差分データは、副更新後の地図データを副更新前の地図データに戻すための差分データであり、副更新後の地図データと副更新前の地図データとの差分を表すデータから構成されている。
図21は、復元情報領域の例を示しており、図21(a)は、X年度5月の副更新において、以下に説明する更新対象地図データ保存処理で生成された地域m11およびm12の副更新逆差分データが格納された状態を示し、図21(b)は、X年度6月の副更新において、以下に説明する更新対象地図データ保存処理で生成された地域m11、m12およびm20の副更新逆差分データが格納された状態を示している。
先ず、X年度5月の副更新に対する更新対象地図データ保存処理を、図20に示すフローチャートを参照しながら説明する。この更新対象地図データ保存処理では、まず、副更新逆差分データが生成される(ステップST500)。すなわち、プロセッサ6は、図11に示す副更新処理のステップST120で取得した地図データ、つまり副更新前の地図データと、図11に示す副更新処理のステップST140における差分更新で得られた地図データ、つまり副更新後の地図データとの差分を抽出し、図11に示す副更新処理のステップST140における差分更新で得られた地図データを図11に示す副更新処理のステップST120で取得した地図データに戻すための差分データである副更新逆差分データを生成する。このステップST500の処理により、地域m11およびm12の地図データM11(X:5)およびM12(X:5)を地図データM11およびM12へそれぞれ戻すための副更新逆差分データが生成される。
次いで、副更新逆差分データが保存される(ステップST510)。すなわち、プロセッサ6は、ステップST500で生成した副更新逆差分データを、地図データ記憶装置3の復元情報領域に格納する。このステップST510の処理により、ステップST500で生成された地域m11およびm12の副更新逆差分データが地図データ記憶装置3の復元情報領域に格納され、図21(a)に示す状態になる。
次に、X年度6月の副更新に対する更新対象地図データ保存処理を、図20に示すフローチャートを参照しながら説明する。なお、この更新対象地図データ保存処理は、取り扱われるデータを除けば、X年度5月の副更新に対する更新対象地図データ保存処理と同じであるので、以下では、説明を簡略化する。
この更新対象地図データ保存処理では、まず、副更新逆差分データが生成される(ステップST500)。すなわち、地域m12およびm20の地図データM12(X:6)およびM20(X:6)を地図データM12(X:5)およびM20へそれぞれ戻すための副更新逆差分データが生成される。次いで、副更新逆差分データが保存される(ステップST510)。すなわち、ステップST500で生成された地域m12およびm20の副更新逆差分データが地図データ記憶装置3の復元情報領域に格納され、図21(b)に示す状態になる。
次に、主更新元地図データ復元処理を、図22に示すフローチャートを参照しながら説明する。ここでは、X年度版の地図データを、X年度5月に作成された副更新用メモリカードおよびX年度6月に作成された副更新用メモリカードを用いて副更新した後、X+1年度4月にX+1年度の主更新を行う場合を例に挙げて説明する。
まず、副更新逆差分データ管理情報が取得される(ステップST600)。すなわち、プロセッサ6は、地図データ記憶装置3の復元情報領域に格納されている副更新逆差分データ管理情報を取得する。次いで、逆差分データが取得される(ステップST610)。すなわち、プロセッサ6は、ステップST600で取得した副更新逆差分データ管理情報に登録されている地域の副更新逆差分データを、地図データ記憶装置3の復元情報領域から取得する。このステップST610の処理により、図21(b)に示す地域m11、m12およびm20の副更新逆差分データが取得される。
次いで、副更新逆差分更新が行われる(ステップST620)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域から、ステップST600で取得した副更新逆差分データ管理情報に登録されている地域の地図データを、ステップST610で取得した副更新逆差分データを用いて差分更新し、X年度版の地図データ、すなわち主更新元地図データを得る。このステップST620の処理により、図10(c)の地図データM11(X:5)およびM20(X:6)が地域m11およびm20の副更新逆差分データでそれぞれ差分更新され、地図データM11およびM20が得られる。また、プロセッサ6は、図10(c)に示す地図データM12(X:6)に対して、地域m12の2つの逆差分データを、新しい版の順、つまりX年度6月版からX年度5月版への副更新逆差分データ、X年度5月版からX年度版への副更新逆差分データの順に適用して差分更新し、順次M12(X:5)、M12を得る。
次いで、地図データの書き換えが行われる(ステップST630)。すなわち、プロセッサ6は、地図データ記憶装置3の地図領域の地図データをステップST620で得た地図データに書き換え、地図データ記憶装置3の地図領域の地図データを、主更新元地図データであるX年度版の地図データに戻す。このステップST630の処理により、図10(c)の地図データM11(X:5)、M12(X:6)およびM20(X:6)が地図データM11、M12およびM20にそれぞれ書き換えられ、図10(a)に示す地図データが得られる。
以上説明したように、この発明の実施の形態3に係る地図情報処理装置によれば、副更新時に、副更新された地図データを副更新前の地図データに戻すための副更新逆差分データを生成し、主更新に際し、副更新された地図データを副更新逆差分データにより主更新元地図データに戻している。これにより、実施の形態1に係る地図情報処理装置と同様の効果が得られるとともに、さらに、副更新逆差分データを保存するようにしたために、地図データ記憶装置3の使用領域をより少なくできる。
実施の形態4.
図23は、この発明の実施の形態4に係る地図情報処理装置の概念を説明するための図である。この地図情報処理装置は、月毎の改版時に、更新される地域の更新前の地図データと更新後の地図データと差分である副更新逆差分データを生成し、さらに、この副更新逆差分データと前回の逆差分データと合成して新たな逆差分データを生成し、年次更新時に、現在の地図データを、最後に生成された逆差分データを適用することによりY1年度版の地図データに戻し、このY1年度版の地図データに対して地図情報提供者から提供される年次更新差分データを適用してY2年度版の地図データを生成する。
この発明の実施の形態4に係る地図情報処理装置は、実施の形態1に係る地図情報処理装置において、図11のフローチャートに示す副更新処理のステップST150で行われる更新対象地図データ保存処理を、図24のフローチャートに示す処理に変更し、図13のフローチャートに示す主更新処理のステップST210で行われる主更新元地図データ復元処理を、実施の形態2に係る地図情報処理装置と同様に、図18のフローチャートに示す処理に変更したものである。この実施の形態4に係る地図情報処理装置では、前回の副更新により生成された逆差分データと副更新逆差分データとを合成することにより、今回の副更新に対する新たな逆差分データを生成するようにしたものである。
先ず、X年度5月の副更新に対する更新対象地図データ保存処理を、図24に示すフローチャートを参照しながら説明する。この更新対象地図データ保存処理では、まず、副更新逆差分データが生成される(ステップST700)。すなわち、プロセッサ6は、図11に示す副更新処理のステップST120で取得した地図データ、つまり副更新前の地図データと、図11に示す副更新処理のステップST140における差分更新で得られた地図データ、つまり副更新後の地図データとの差分を抽出し、図11に示す副更新処理のステップST140における差分更新で得られた地図データを、図11に示す副更新処理のステップST120で取得した地図データに戻すための差分データである副更新逆差分データを生成する。このステップST700の処理により、地域m11およびm12の地図データM11(X:5)およびM12(X:5)を、地図データM11およびM12へそれぞれ戻すための副更新逆差分データが生成される。
次いで、逆差分データが生成される(ステップST710)。すなわち、プロセッサ6は、地図データ記憶装置3の復元情報領域より、図11に示す副更新処理のステップST110で選択された地域の逆差分データを取得し、地域が同じである逆差分データとステップST700で生成した副更新逆差分データとを合成して、新たな逆差分データを生成する。なお、地図データ記憶装置3の復元情報領域に該当する地域の逆差分データが存在しない場合は、ステップST700で生成された副更新逆差分データが逆差分データとされる。
この例においては、X年度5月の副更新では、地域m11およびm12の逆差分データが存在しないため、ステップST700で生成した地図データM11(X:5)およびM12(X:5)を地図データM11およびM12へそれぞれ戻すための副更新逆差分データが、地域m11およびm12の逆差分データとされる。
次いで、逆差分データが保存される(ステップST720)。すなわち、プロセッサ6は、ステップST710で生成された逆差分データを地図データ記憶装置3の復元情報領域へ格納する。このステップST720の処理により、ステップST710で生成された地域m11およびm12の逆差分データが、地図データ記憶装置3の復元情報領域に格納され、図17(a)に示す状態になる。
次に、X年度6月の副更新に対する更新対象地図データ保存処理を、図24に示すフローチャートを参照しながら説明する。なお、この更新対象地図データ保存処理は、取り扱われるデータを除けば、X年度5月の副更新に対する更新対象地図データ保存処理と同じであるので、以下では、説明を簡略化する。この更新対象地図データ保存処理では、まず、副更新逆差分データが生成される(ステップST700)。すなわち、地域m12およびm20の地図データM12(X:6)およびM20(X:6)を地図データM12(X:5)およびM20へそれぞれ戻すための副更新逆差分データが生成される。
次いで、逆差分データが生成される(ステップST710)。すなわち、地域m12の逆差分データが取得され、この取得された逆差分データと、ステップST700で生成された地図データM12(X:6)を地図データM12(X:5)へ戻すための副更新逆差分データとが合成され、新たな逆差分データが生成される。合成前の逆差分データは、M11(X:5)をM11へ戻す差分データであるため、新たな逆差分データは、地図データM12(X:6)をM11へ戻す差分データとなる。また、地域m20の逆差分データが存在しないため、ステップST700で生成された地図データM20(X:6)を地図データM20へ戻すための副更新逆差分データが地域m20の逆差分データとされる。このステップST710の処理については、後にさらに詳細に説明する。
次いで、逆差分データが保存される(ステップST720)。すなわち、ステップST710で生成された地域m12およびm20の逆差分データが、地図データ記憶装置3の復元情報領域に格納され、図17(b)に示す状態になる。
図25は、図24に示した更新対象地図データ保存処理のステップST710で行われる逆差分データ生成処理において、逆差分データと副更新逆差分データとの合成処理の例を示すフローチャートである。
図26は、副更新後の地図データの例である。この地図データは、Data0、Data1、Data2およびData3のデータからなり、これらData0、Data1、Data2およびData3の先頭には、アドレス0、a1、a2およびa3がそれぞれ付されている。
図27は、副更新前の地図データの例である。この地図データは、Data0、Data1’、Data2、Data3のデータからなり、これらData0、Data1’、Data2、Data3の先頭には、アドレス0、b1、b2、b3がそれぞれ付されている。図26に示す地図データのData1は、Data1’を副更新した後のデータである。
図28は、主更新元地図データの例である。この主更新元地図データは、Data0、Data1’、Data2、Data4およびData3からなり、これらData0、Data1’、Data2、Data4およびData3の先頭には、アドレス0、c1、c2、c3およびc4がそれぞれ付されている。図27に示す地図データは、図28に示す主更新元地図データのData2とData3との間に存在するData4を削除したものである。
図26、図27および図28におけるData0、Data1、Data2、Data3、Data4、Data1’のデータサイズを、それぞれsz0、sz1、sz2、sz3、sz4およびsz1’とする。
副更新逆差分データおよび逆差分データは、差分コマンドの並びからなり、例えば、更新元のデータを更新先にコピーするCOPYコマンドと、更新先に所定のデータを設定するDATAコマンドと、差分データの終了を示すENDコマンドから成り、コマンドの並び順にコマンドに従った処理を実行することにより差分更新を行うことができる。COPYコマンドは、コピーする先頭のアドレス(以下、「更新元アドレス」という)と、コピーするデータのデータサイズ(以下、「コピーサイズ」という)とをパラメータとし、DATAコマンドは、更新先に設定するデータのデータサイズと、設定するデータとをパラメータとする。
以下は、図26に示す地図データを、図27に示す地図データに差分更新する副更新逆差分データの例であり、差分D00、差分D01、差分D02および差分D03からなる。
差分D00: COPY 0、sz0
差分D01: DATA sz1’、Data1’
差分D02: COPY a2、sz2+sz3
差分D03: END
上記において、差分D00は、図26に示すData0を更新先(図27)にコピーすることを示し、差分D01は、Data1’を更新先(図27)のData0の後に設定することを示し、差分D02は、図26に示すData2およびData3を更新先(図27)のData1’の後にコピーすることを示している。
以下は、図27に示す地図データを、図28に示す地図データに差分更新する逆差分データの例であり、差分D10、差分D11、差分D12および差分D13からなる。
差分D10: COPY 0、sz0+sz1’+sz2
差分D11: DATA sz4、Data4
差分D12: COPY b3、sz3
差分D13: END
上記において、差分D10は、図27に示すData0、Data1’、Data2を更新先(図28)にコピーすることを示し、差分D11は、Data4を更新先(図27)のData2の後に設定することを示し、差分D12は、図27に示すData3を更新先(図28)のData4の後にコピーすることを示す。
次に、図24に示した更新対象地図データ保存処理のステップST710で行われる逆差分データ生成処理において、逆差分データと副更新逆差分データとを合成して新規逆差分データを生成する例を、図25に示すフローチャートを参照しながら説明する。この処理では、まず、逆差分データの差分コマンドが取得される(ステップST800)。すなわち、プロセッサ6は、逆差分データの先頭から順に1つの差分コマンドを取り出す。このステップST800の処理により、当該ステップが実行される毎に、差分D10、差分D11、差分D12および差分D13が順に取り出される。
次いで、COPYコマンドであるかどうかが調べられる(ステップST810)。すなわち、プロセッサ6は、ステップST800で取得した差分コマンドがCOPYコマンドであるかどうかを調べる。このステップST810において、COPYコマンドでないことが判断されると、次いで、DATAコマンドであるかどうかが調べられる(ステップST820)。すなわち、プロセッサ6は、ステップST800で取得した差分コマンドがDATAコマンドであるかどうかを調べる。
このステップST820において、DATAコマンドでないことが判断されると、次いで、ENDコマンドであるかどうかが調べられる(ステップST830)。すなわち、プロセッサ6は、ステップST800で取得した差分コマンドがENDコマンドであるかどうかを調べる。このステップST830において、ENDコマンドでないことが判断されると、シーケンスはステップST800に戻り、上述した処理が繰り返される。
上述したステップST810において、COPYコマンドであることが判断されると、副更新逆差分データの差分コマンドが取得される(ステップST840)。すなわち、プロセッサ6は、副更新逆差分データから、ステップST800で取得したCOPYコマンドの更新元のコピー範囲(以下、「逆差分更新元コピー範囲」という)のデータを生成する差分コマンドを取り出す。
ステップST800で取得された差分コマンドが差分D10である場合は、逆差分更新元コピー範囲は、図27の更新元のコピー範囲はData0、Data1’およびData2であり、これらを生成する副更新逆差分データの差分データとして差分D00、差分D01および差分D02が取り出される。また、ステップST800で取得された差分コマンドが差分D12である場合は、逆差分更新元コピー範囲は、図27の更新元のコピー範囲がData3であり、これを生成する副更新逆差分データの差分データとして差分D02が取り出され。
次いで、差分コマンドが生成される(ステップST850)。すなわち、プロセッサ6は、逆差分更新元コピー範囲に完全に含まれるデータを生成する差分コマンドを新規逆差分データに登録する。また、逆差分更新元コピー範囲に部分的に含まれるデータを生成する差分コマンドに対しては、コピー範囲を逆差分更新元コピー範囲に含まれる部分に限定したCOPYコマンドを新規逆差分データに登録する。その後、シーケンスはステップST800へ戻る。
ステップST800で取得された差分コマンドが差分D10のときは、その逆差分更新元コピー範囲Data0、Data1’、Data2に、差分D00により生成されるData0、差分D01により生成されるData1’が完全に含まれるため、このステップST850の処理により、差分D00および差分D01と同じ下記のコマンドが新規逆差分データに登録される。
差分D0: COPY 0、sz0
差分D1: DATA sz1’、Data1’
また、差分D01が生成するData2およびData3は、上記逆差分更新元コピー範囲に部分的含まれるため、差分D01のコピー元範囲Data2およびData3を、逆差分更新元コピー範囲に含まれるData2に限定した下記のCOPYコマンドが新規逆差分データに登録される。
差分D2: COPY a2、sz2
ステップST800で取得された差分コマンドが差分D12である場合は、その逆差分更新元コピー範囲Data3に、差分D01が生成するData2、Data3が部分的に含まれるため、このステップST850の処理により、差分D01のコピー元範囲Data2およびData3を、逆差分更新元コピー範囲に含まれるData3に限定した下記のCOPYコマンドが新規逆差分データに登録される。
差分D4: COPY a3、sz3
上記ステップST820において、DATAコマンドであることが判断されると、次いで、DATAコマンドが生成される(ステップST860)。すなわち、プロセッサ6は、ステップST800で取得した差分コマンドを新規逆差分データに登録する。その後、シーケンスはステップST800へ戻る。
ステップST800で取得された差分コマンドが差分D11である場合は、このステップST860の処理により、下記の差分D11と同じDATAコマンドが新規逆差分データに登録される。
差分D3: DATA sz4、Data4
上記ステップST830において、ENDコマンドであることが判断されると、ENDコマンドが生成される(ステップST870)。すなわち、プロセッサ6は、新規逆差分データにENDコマンドを登録する。その後、処理は終了する。
上記のようにして、副更新逆差分データと逆差分データとが合成された、下記の新規逆差分データが得られる。
差分D0: COPY 0、sz0
差分D1: DATA sz1’、Data1’
差分D2: COPY a2、sz2
差分D3: DATA sz4、Data4
差分D4: COPY a3、sz3
差分D5: END
上記新規逆差分データにおいて、差分D0は、図27に示すData0を更新先(図28)にコピーし、差分D1は、Data1’を更新先(図28)のData0の後に設定し、差分D2は、図27に示すData2を更新先(図28)のData1’の後にコピーし、差分D3は、Data4を更新先(図28)のData2の後に設定し、差分D4は、図27に示すData3を更新先(図28)のData4の後にコピーすることを示している。この新規逆差分データにより、図27に示す地図データが差分更新されて図28に示す地図データが得られる。
以上説明したように、この発明の実施の形態4に係る地図情報処理装置によれば、副更新時に、副更新された地図データを副更新前の地図データに戻すための副更新逆差分データを生成し、これまでの副更新で、すでに生成されている逆差分データと副更新逆差分データとを合成することにより、当該副更新後の地図データを主更新元地図データに戻す逆差分データを生成し、主更新に際し、副更新された地図データを逆差分データにより主更新元地図データに戻している。
この構成により、実施の形態1に係る地図情報処理装置と同様の効果が得られるとともに、さらに、逆差分データを保存するようにしたために、地図データ記憶装置3の使用領域をより少なくできる。また、副更新後の地図データと主更新元地図データを比較する必要がないため、実施の形態2に係る地図情報処理装置に比し、逆差分データの生成に要する時間を短縮できる。
実施の形態5.
上述した実施の形態3に係る地図情報処理装置においては、図20に示すフローチャートのステップST500において、副更新前後の地図データとの差分を抽出し、副更新逆差分データを生成するように構成したが、この発明の実施の形態5に係る地図情報処理装置では、上記副更新逆差分データを生成し、副更新前の地図データと当該副更新に使用した副更新差分データとから生成するようにしたものである。図29は、副更新前の地図データと当該副更新に使用した副更新差分データとから副更新逆差分データを生成する処理を示すフローチャートである。
図30は、副更新前の地図データの例である。この地図データは、Data0、Data1、Data2、Data3、Data4およびData5からなり、それらの先頭のアドレスはそれぞれ0、a1、a2、a3、a4およびa5であり、それらのデータサイズはそれぞれsz0、sz1、sz2、sz3、sz4およびsz5である。
図31は、副更新後の地図データの例である。この地図データは、図30のData1をData1’に変更し、Data3を削除し、Data4とData5の間にData6を挿入したものである。Data0、Data1’、Data2、Data4、Data6およびData5の先頭のアドレスは、それぞれ0、b1、b2、b3、b4およびb5であり、Data1’およびData6のデータサイズは、それぞれsz1’およびsz6である。
以下は、図30に示す地図データを、図31に示す地図データに更新する副更新差分データの例である。
差分d0: COPY 0、sz0
差分d1: DATA sz1’、Data1’
差分d2: COPY a2、sz2
差分d3: COPY a4、sz4
差分d4: DATA sz6、Data6
差分d5: COPY a5、sz5
次に、図30に示す地図データと上記副更新差分データとから副更新逆差分データを生成する処理を、図29に示すフローチャートを参照しながら説明する。この処理では、まず、副更新差分データの差分コマンドが取得される(ステップST900)。すなわち、プロセッサ6は、副更新差分データの先頭から順に1つの差分コマンドを取り出す。このステップST900の処理により、当該ステップが実行される毎に、差分d0、差分d1、差分d2、差分d3、差分d4および差分d5が順に取り出される。
次いで、COPYコマンドであるかどうかが調べられる(ステップST910)。すなわち、プロセッサ6は、ステップST900で取得した差分コマンドがCOPYコマンドであるかどうかを調べる。このステップST910において、COPYコマンドでないことが判断されると、次いで、ENDコマンドであるかどうかが調べられる(ステップST920)。すなわち、プロセッサ6は、ステップST900で取得した差分コマンドがENDコマンドであるかどうかを調べる。このステップST920において、ENDコマンドでないことが判断されると、シーケンスはステップST900に戻り、上述した処理が繰り返される。
上述したステップST910において、COPYコマンドであることが判断されると、次いで、差分コマンドが生成される(ステップST930)。すなわち、プロセッサ6は、当該ステップが最初に実行されたときは、ステップST900で取得したCOPYコマンドを副更新逆差分データに登録する。当該ステップの最初の実行以外では、前回に当該ステップを実行したときのステップST900で取得したCOPYコマンドのコピー元範囲と、今回当該ステップを実行するときのステップST900で取得したCOPYコマンドのコピー元範囲との間にある更新元データを設定するDATAコマンドを副更新逆差分データに登録し、さらに今回当該ステップを実行するときのステップST900で取得したCOPYコマンドを副更新逆差分データに登録する。ただし、コピー元アドレスは、更新先での該当するアドレスに変更される。なお、上記で設定すべきデータがないときは、DATAコマンドは副更新逆差分データに登録されない。
最初に本ステップが実行する差分d0に対し、下記の差分d0と同じCOPYコマンドが副更新逆差分データに登録される。
差分dr0: COPY 0、sz0
上記差分d0の次に実行する差分d2に対して、差分dr0のコピー元範囲である、図30に示すData0と差分d2のコピー元範囲である、図30に示すData2との間に存在する、図30に示すData1を設定するための下記のDATAコマンドが副更新逆差分データに登録される。
差分dr1: DATA sz1、Data1
以下のように差分d2と同じCOPYコマンドでコピー元アドレスa2を図31の対応するアドレスb2に変更したコマンドが副更新逆差分データに登録される。
差分dr2: COPY b2、sz2
上記差分d2の次に実行する差分d3に対して、差分dr2のコピー元範囲である、図30に示すData2と差分d3のコピー元範囲である、図30に示すData4との間に存在する、図30に示すData3を設定する下記DATAコマンドが副更新逆差分データに登録される。
差分dr3: DATA sz3、Data3
下記のように差分d3と同じCOPYコマンドでコピー元アドレスa4を図31の対応するアドレスb3に変更したコマンドが副更新逆差分データに登録される。
差分dr4: COPY b3、sz4
上記差分d3の次に実行する差分d5に対して、差分dr3のコピー元範囲である、図30に示すData4と差分d5のコピー元範囲である、図30に示すData5との間にはデータが存在しないためDATAコマンドは生成せず、下記のように差分d5と同じCOPYコマンドでコピー元アドレスa5を図31の対応するアドレスb5に変更したコマンドが副更新逆差分データに登録される。
差分dr6: COPY b5、sz5
上記ステップST920において、ENDコマンドであることが判断されると、ENDコマンドが生成される(ステップST940)。すなわち、プロセッサ6は、副更新逆差分データにENDコマンドを登録する。その後、処理は終了する。
上記のようにして、図30の地図データと上記副更新差分データとから、下記副更新逆差分データが得られる。
差分dr0: COPY 0、sz0
差分dr1: DATA sz1、Data1
差分dr2: COPY b2、sz2
差分dr3: DATA sz3、Data3
差分dr4: COPY b3、sz4
差分dr5: COPY b5、sz5
この副更新逆差分データにおいて、差分dr0は、図31に示すData0を更新先(図30)にコピーし、差分dr1は、Data1を更新先(図30)のData0の後に設定し、差分dr2は、図31に示すData2を更新先(図30)のData1の後にコピーし、差分dr3は、Data3を更新先(図30)のData2の後に設定し、差分dr4は、図31のData4を更新先(図30)のData3の後にコピーし、
差分dr5は、図31に示すData5を更新先(図30)のData4の後にコピーすることを示している。この副更新逆差分データにより、図31に示す地図データを差分更新することにより、図30に示す地図データが得られる。
以上説明したように、この発明の実施の形態5に係る地図情報処理装置によれば、副更新前後の地図データ同士を比較することなく副更新逆差分データを得ることができ、実施の形態3に係る地図情報処理装置の効果に加え、さらに副更新逆差分データの生成時間を短縮できる。
実施の形態6.
上述した実施の形態4に係る地図情報処理装置においては、図24に示すフローチャートのステップST700において、副更新前後の地図データの差分を抽出して副更新逆差分データを生成するように構成したが、この発明の実施の形態6に係る地図情報処理装置においては、上記副更新逆差分データの生成を、実施の形態5に係る地図情報処理装置と同様に、図29に示す処理により、副更新前の地図データと当該副更新に使用した副更新差分データとから生成する。
この発明の実施の形態4に係る地図情報処理装置によれば、上述したように、副更新前後の地図データ同士を比較することなく副更新逆差分データを得ることができるので、実施の形態4に係る地図情報処理装置によって得られる効果に加え、さらに副更新逆差分データの生成時間を短縮できる。
実施の形態7.
この発明の実施の形態7に係る地図情報処理装置は、実施の形態1に係る地図情報処理装置において実施される、図13に示す主更新処理のステップST250に対し、地図データ記憶装置3の地図領域の地図データを書き換える前の地図データが地図データ記憶装置3の復元情報領域に存在しなければ、その地図データを地図データ記憶装置3の復元情報領域に格納する処理を追加し、ステップST270の処理を廃止し、また、当該年度の主更新用DVD−ROMに格納する主更新差分データを、初年度版から当該年度版の地図データに更新する差分データとしたものである。
図11に示す副更新処理のステップST150、および、上記処理を追加した図13に示す主更新処理のステップST250において、書き換えようとする地域の地図データが地図データ記憶装置3の復元情報領域に存在しない場合に、地図データ記憶装置3の復元情報領域に、その地域の地図データを保存し、ステップST270の廃止により復元情報領域に格納した地図データを削除しないように構成したことにより、地図データ記憶装置3の復元情報領域には、各地域について、最初に副更新または主更新を行う前の地図データ、つまり初版の地図データが格納されている。このため、主更新処理において、図13に示す主更新処理のステップST210において、主更新元地図データとして初版の地図データが復元され、図13に示す主更新処理のステップST220以降において、主更新用DVD−ROMの主更新差分データを用いて、復元された初年度版の地図データを当該年度版の地図データに更新する。
以上説明したように、この発明の実施の形態7に係る地図情報処理装置によれば、副更新を行うことができるとともに主更新を行うことができる。また、ステップST210の主更新元地図データ復元処理により、主更新元地図データである初年度版に戻した地図データに対して、差分更新を行うため、副更新の状況によらず、すなわち、各地図データがX年度のどの月の版まで更新されているかによらず、1種類のX+1年度の主更新用DVD−ROMにより主更新をすることができ、地図情報提供者は、各地図情報処理装置の副更新の状況によらず1種類のX+1年度の主更新用DVD−ROMを作成すればよく、主更新用DVD−ROMをより安価に作成でき、情報処理装置は、より安価に地図データを更新できる。
実施の形態8.
この発明の実施の形態8に係る地図情報処理装置は、実施の形態1に係る地図情報処理装置において、主更新用DVD−ROMに、さらに主更新元地図データ復元情報を格納したものである。主更新元地図データ復元情報は、副更新された地図データを主更新元地図データに戻すために使用する復元情報、復元情報を管理するための復元情報管理情報を含む。
復元情報管理情報は、各復元情報の地域、復元前後の版数、格納位置、データサイズなどを示す情報を含む。復元情報として、各地図情報処理装置で前年度中に副更新が行なわれる可能性がある地域の前年度版の地図データ、例えばY+1年度の主更新用DVD−ROMには、図5に示すY年度の各月に更新された地域のY年度版の地図データが格納される。
また、図11に示す副更新処理のステップST150、および、図13に示す主更新処理のステップST270を廃止し、図11に示す副更新処理のステップST110に、選択した地域を地図データ記憶装置3に記憶する処理を追加することにより、次に主更新が行われるまでに副更新が行われるすべての地域を地図データ記憶装置3に設けた選択地域領域に記憶し、図13に示す主更新処理のステップST210を、図11に示す副更新処理のステップST110で地図データ記憶装置3の選択地域領域に記憶された地域について、地図データ記憶装置3の地図領域の地図データを主更新用DVD−ROMの主更新元地図データ復元情報に格納されている地図データに書き換え、地図データ記憶装置3の地図領域の地図データを主更新元地図データである前年度版の地図データに戻すようにしたものである。
以上説明したように、この発明の実施の形態8に係る地図情報処理装置によれば、実施の形態1に係る地図情報処理装置で説明した理由と同様の理由で、実施の形態1に係る地図情報処理装置と同様の効果が得られる。さらに、復元情報領域が不要となり、地図データ記憶装置3の使用領域をより少なくできる。
実施の形態9.
この発明の実施の形態9に係る地図情報処理装置は、実施の形態1に係る地図情報処理装置において、主更新用DVD−ROMに、さらに主更新元地図データ復元情報を格納したものである。主更新元地図データ復元情報は、副更新された地図データを主更新元地図データに戻すために使用する復元情報、復元情報を管理するための復元情報管理情報を含む。
復元情報管理情報は、各復元情報の地域、復元前後の版数、格納位置、データサイズなどを示す情報を含む。復元情報として、各地図情報処理装置で前年度中に副更新が行なわれる可能性がある地域の前年度の各月の版の地図データを前年度版へ戻すための逆差分データ、例えば、Y+1年度の主更新用DVD−ROMには、図5に示すY年度の各月に更新された地域のY年度の各月版の地図データをY年度版に戻すための逆差分データが格納される。
また、図11に示す副更新処理のステップST150、および、図13に示す主更新処理のステップST270を廃止し、図11に示す副更新処理のステップST110に、選択した地域を地図データ記憶装置3に設けられた選択地域領域に記憶する処理を追加することにより、次に主更新が行われるまでに副更新が行われるすべての地域を地図データ記憶装置3に記憶し、図13に示す主更新処理のステップST210を、図11に示す副更新処理のステップST110で地図データ記憶装置3の選択地域領域に記憶された地域について、地図データ記憶装置3の地図領域の地図データを主更新用DVD−ROMの主更新元地図データ復元情報に格納されている逆差分データを用いて、地図データ記憶装置3の地図領域の地図データを差分更新し、主更新元地図データに戻すようにしたものである。
以上説明したように、この発明の実施の形態9に係る地図情報処理装置によれば、実施の形態1に係る地図情報処理装置で説明した理由と同様の理由で、実施の形態1に係る地図情報処理装置と同様の効果が得られる。さらに、復元情報領域が不要となり、地図データ記憶装置3の使用領域をより少なくできる。また、実施の形態8に係る地図情報処理装置に比し、主更新用DVD−ROMの使用容量をより小さくできる。
実施の形態10.
この発明の実施の形態10に係る地図情報処理装置は、実施の形態1に係る地図情報処理装置において、主更新用DVD−ROMに、さらに主更新元地図データ復元情報を格納したものである。主更新元地図データ復元情報は、副更新された地図データを主更新元地図データに戻すために使用する復元情報、復元情報を管理するための復元情報管理情報を含む。
復元情報管理情報は、各復元情報の地域、復元前後の版数、格納位置、データサイズなどを示す情報を含む。復元情報として、各地図情報処理装置で前年度中に副更新が行なわれる可能性がある地域の前年度の各月の版の地図データを前回更新された月の版へ戻すための副更新逆差分データ、例えば、Y+1年度の主更新用DVD−ROMには、図5に示すY年度の各月に更新された地域のY年度の各月版の地図データを前回更新された月の版に戻すための副更新逆差分データが格納される。
また、図11に示す副更新処理のステップST150、および、図13に示す主更新処理のステップST270を廃止し、図11に示す副更新処理のステップST110に、選択した地域を地図データ記憶装置3に記憶する処理を追加することにより、次に主更新が行われるまでに副更新が行われるすべての地域を地図データ記憶装置3に設けた選択地域領域に記憶し、図13に示す主更新処理のステップST210を、図11に示す副更新処理のステップST110で地図データ記憶装置3の選択地域領域に記憶された地域について、地図データ記憶装置3の地図領域の地図データを主更新用DVD−ROMの主更新元地図データ復元情報に格納されている副更新逆差分データを用いて、地図データ記憶装置3の地図領域の地図データを差分更新し、主更新元地図データに戻すようにしたものである。なお同一地域について、副更新逆差分データが複数存在する場合は、新しい順に副更新逆差分データを用いて差分更新を行い主更新元地図データに戻す。
以上説明したように、この発明の実施の形態10に係る地図情報処理装置によれば、実施の形態1に係る地図情報処理装置で説明した理由と同様の理由で、実施の形態1に係る地図情報処理装置と同様の効果が得られる。さらに、復元情報領域が不要となり、地図データ記憶装置3の使用領域をより少なくできる。また、実施の形態8に係る地図情報処理装置に比し、主更新用DVD−ROMの使用容量をより小さくできる。
実施の形態11.
この発明の実施の形態11に係る地図情報処理装置は、実施の形態1に係る地図情報処理装置を以下のように変更したものである。すなわち、当該年度の主更新用DVD−ROMに格納する主更新差分データを初年度版から当該年度版の地図データに更新する差分データとし、さらに主更新元地図データ復元情報を格納する。主更新元地図データ復元情報は、副更新された地図データを主更新元地図データに戻すために使用する復元情報、復元情報を管理するための復元情報管理情報を有する。
復元情報管理情報は、各復元情報の地域、復元前後の版数、格納位置、データサイズなどを示す。復元情報として、各地図情報処理装置で今年度に至る前迄に副更新が行なわれる可能性がある地域の初年度版の地図データ、例えば、Y+1年度の主更新用DVD−ROMには、それぞれ図5に示すY年度の各月に更新された地域の初年度、すなわちY年度版の地図データが格納され、Y+2年度の主更新用DVD−ROMには、それぞれ図5に示すY年度、Y+1年度の各月に更新された地域の初年度、すなわちY年度版の地図データが格納される。
また、図11に示す副更新処理のステップST150、および、図13に示す主更新処理のステップST270を廃止し、図11に示す副更新処理のステップST110に、選択した地域を地図データ記憶装置3に記憶する処理を追加し、図13に示す主更新処理のステップST210を、図11に示す副更新処理のステップST110で地図データ記憶装置3に記憶された地域について、地図データ記憶装置3の地図領域の地図データを主更新用DVD−ROMの主更新元地図データ復元情報に格納されている地図データを書き換えることより、主更新元地図データである初版の地図データに戻すようにしたものである。
以上説明したように、この発明の実施の形態11に係る地図情報処理装置によれば、実施の形態1に係る地図情報処理装置で説明した理由と同様の理由で、実施の形態1に係る地図情報処理装置と同様の効果が得られる。さらに、復元情報領域が不要となり、地図データ記憶装置3の使用領域をより少なくできる。
実施の形態12.
図32は、この発明の実施の形態12に係る地図情報処理装置の概念を説明するための図である。この地図情報処理装置は、月毎の副更新は行わずに、年次更新時に、現在の地図データを初年度版の地図データに戻し、この初年度版の地図データに対して地図情報提供者から提供される年次更新差分データを適用し、当該年度版(図32ではY4年度版)の地図データを生成する。
この発明の実施の形態12に係る地図情報処理装置は、実施の形態7に係る地図情報処理装置において、図8に示す地図データ更新処理のステップST10およびST11を取り除き、ステップST12およびST13によって主更新のみを行うようにしたものである。
この実施の形態12に係る地図情報処理装置では、地図情報提供者は、各年度に初年度版から当該年度への主更新差分データを格納した主更新用DVD−ROMを作成し、地図情報処理装置では、図13に示す主更新処理のステップST210の主更新元地図データ復元処理により、主更新元地図データである初年度版に戻した地図データに対して、主更新用DVD−ROMの主更新差分データを用いて差分更新を行い、当該年度の地図データに更新する。
以上説明したように、この発明の実施の形態12に係る地図情報処理装置によれば、主更新時に必ず初年度版の地図データに戻して、当該年度版への差分更新を行うこと、主更新用DVD−ROMには初年度版から当該年度版への主更新差分データを格納されていることから、使用者は所望する年度に主更新用DVD−ROMを入手することで、その年度版の地図データに更新することができ、毎年度に地図更新を行なわなくても、任意に期間を空けても地図データを更新することができる。
また、地図情報提供者は、どの情報処理装置に対しても、同じ主更新用DVD−ROMを作成すればよく、主更新用DVD−ROMをより安価に作成でき、情報処理装置は、より安価に地図データを更新できる。なお、主更新用DVD−ROMは年度毎ではなく、より短い期間毎に作成してもよく、不定期に作成してもよい。
なお、上述した実施の形態1〜実施の形態12に係る地図情報処理装置においては、主更新差分データ取得手段として、DVD−ROMを利用したが、他の記憶媒体を用いてもよく、パーソナルコンピュータなどの他の端末により、地図情報提供者から通信網を介して取得した主更新差分データを書き込んだ記憶媒体を用いてもよく、通信手段を用いて他から取得してもよい。
また、実施の形態1〜実施の形態12に係る地図情報処理装置においては、副更新差分データ取得手段として、メモリカードを利用したが、他の記憶媒体を用いてもよく、パーソナルコンピュータなどの他の端末により、地図情報提供者から通信網を介して取得した副更新差分データを書き込んだ記憶媒体を用いてもよく、通信手段を用いて他から取得してもよい。
また、実施の形態1〜実施の形態12に係る地図情報処理装置においては、主更新差分データ取得手段、副更新差分データ取得手段として、上記パーソナルコンピュータなどの他の端末により、地図情報提供者から通信網を介して取得した主更新差分データ、副更新差分データを書き込んだ記憶媒体を用いる場合で、当該地図情報処理装置の地図データの更新状態により、必要な主更新差分データ、副更新差分データを選択して、取得するようにしてもよい。
また、実施の形態1〜実施の形態12に係る地図情報処理装置においては、主更新差分データ取得手段、副更新差分データ取得手段として、上記通信手段を用いる場合で、当該地図情報処理装置の地図データの更新状態により、必要な主更新差分データ、副更新差分データを選択して、取得するようにしてもよい。
また、実施の形態1〜実施の形態12に係る地図情報処理装置においては、地域を矩形領域としたが、他の形状としてもよい。さらに、実施の形態1〜実施の形態12に係る地図情報処理装置においては、地図データを地域に分けて、地域単位で更新したが、データの種類などの地理的な位置とは無関係な基準で分けて更新してもよい。