以下、本発明による地図情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。また、所定の情報が格納され得る格納部等において、当該格納部に情報が記憶される過程は問わないものとする。例えば、記録媒体を介して情報が格納部等で記憶されるようになってもよい。また、通信回線などを介して送信された情報が格納部等で記憶されるようになってもよい。さらに、入力デバイスを介して入力された情報が格納部等で記憶されるようになってもよい。また、本実施の形態において説明する各情報の形式、内容などは、あくまで例示であり、各情報の持つ意味を示すことができれば、形式、内容などは問わない。
(実施の形態1)
本実施の形態において、略地図上の座標と、実地図上の地点との3以上の対応関係を用いて、実地図の地点を、略地図上に表示する地図情報処理装置1について説明する。
図1は、本実施の形態における地図情報処理装置1のブロック図である。地図情報処理装置1は、地点情報格納部11、略地図情報格納部12、地図間対応情報格納部13、略地図文字列取得部14、地図間対応情報取得部15、地図間対応情報蓄積部16、地点情報受付部17、略地図座標情報取得部18、出力部19を備える。また、地図間対応情報取得部15は、第一地図間対応情報取得手段151、重心算出手段152、第二地図間対応情報取得手段153、分散算出手段154、第三地図間対応情報取得手段155を備える。また、略地図座標情報取得部18は、距離算出手段181、第一略地図座標情報取得手段182、相対位置類似度算出手段183、第二略地図座標情報取得手段184を備える。
地点情報格納部11には、地図上の地点を示す1以上の地点情報が格納される。当該地点は、通常、地名を示す地点である。当該地点は、例えば、駅や、観光名所、公園、テーマパーク、その他の建造物などある。また、地点情報は、例えば、地図上の地点の位置を示す位置情報である地点位置情報や、地図上の地点の名称を示す地点名称情報、地点を識別するための地点識別子などを有する。当該位置情報は、通常、経緯度を示す経緯度情報である。また、地点識別子は、通常、IDであるが、地点名称情報であってもよい。
また、当該地点情報は、地図を示す地図情報が有していてもよい。つまり、地点情報格納部11には、1以上の地点情報を有する地図情報が格納されてもよい。当該地図は、通常、測量に基づいて作成されたいわゆる測量地図である。なお、地点情報格納部11に格納される地図情報が示す地図(以下、適宜、実地図)には、通常、ガイドマップや、アクセスマップなどのいわゆる略地図は含まれない。また、地図情報は、通常、地図の画像である。画像は、例えば、ラスタデータや、ベクタデータ、カーナビゲーションで用いられるKIWIフォーマットのものなどである。
略地図情報格納部12には、略地図を示す地図情報である略地図情報が格納される。略地図とは、実地図上の対象物(地点、道路、山、川など)が変形、強調、削除された地図であり、通常は、対象物の配置が変更された地図である。また、当該略地図には、通常、略地図上の1以上の各対象物を示す1以上の文字列(以下、適宜、略地図文字列)が記載されている。当該「文字列が記載されている」とは、略地図情報が示す略地図上に文字列が存在することを意味する。
地図間対応情報格納部13には、3以上の地図間対応情報が格納される。地図間対応情報とは、略地図文字列と、実地図上の地点との対応関係を示す情報である。地図間対応情報は、通常、一の略地図文字列と、実地図上の地点を示す一の地点情報とを対応づけて有するが、当該一の略地図文字列と、実地図上の地点を示す2以上の地点情報とを対応付けて有してもよい。また、地図間対応情報は、通常、略地図上の座標を示す略地図座標情報を有する。当該座標は、通常、いわゆる直交座標系の座標である。また、当該略地図座標情報は、通常、当該略地図文字列の略地図上の位置を示す。
略地図文字列取得部14は、略地図情報から、略地図上に記載されている3以上の文字列を取得する。当該略地図文字列の取得は、通常、いわゆるOCR(Optical Character Recognition)を用いて行う。なお、OCRは、公知の技術であるので、詳細な説明を省略する。また、略地図文字列取得部14は、通常、略地図文字列の取得の際に、略地図座標情報も取得する。当該略地図座標情報が示す座標は、例えば、略地図上の文字列が外接する多角形の重心や、当該多角形が有する頂点のいずれか、当該多角形が有する辺のいずれかの中心などである。
地図間対応情報取得部15は、まず、地点情報格納部11に格納されている地点情報であり、略地図文字列取得部14が取得した3以上の各文字列に対応する地点情報を特定する。当該「特定する」とは、当該文字列に対応する地点情報と、当該文字列とを対応付けることや、当該文字列に対応する地点情報を取得することなどを含む。そして、地図間対応情報取得部15は、略地図文字列取得部14が取得した3以上の各文字列と、特定した地点情報とが対応付いた3以上の地図間対応情報を取得する。つまり、地図間対応情報取得部15は、略地図文字列取得部14が取得した3以上の各文字列と、地点情報格納部11に格納されている地点情報であり、当該各文字列に対応する地点情報とを対応付け、3以上の地図間対応情報を生成する。なお、地図間対応情報取得部15は、通常、後述の各手段により、地図間対応情報を取得する。つまり、後述の第一地図間対応情報取得手段151または第二地図間対応情報取得手段153が取得した地図間対応情報が、地図間対応情報取得部15が取得した地図間対応情報となる。
第一地図間対応情報取得手段151は、略地図文字列取得部14が取得した3以上の各文字列と、当該各略地図文字列に対応する1または2以上の地点情報を有する3以上の地図間対応情報を取得する。第一地図間対応情報取得手段151は、例えば、以下の様な処理を行う。
(1)略地図文字列取得部14が取得した3以上の文字列のうちの一の文字列を取得する。
(2)(1)で取得した文字列との文字数が同じである地点名称情報を有する地点情報を、地点情報格納部11から取得する。
(3)(1)で取得した文字列との類似度が、予め決められた条件を満たすほど大きい地点名称情報を有する1または2以上の地点情報を、(1)で取得した地点情報から取得する。
(4)(1)で取得した文字列と、(3)で取得した1または2以上の地点情報とを対応付け、地図間対応情報を取得する。
上記(1)〜(4)の処理は、通常、略地図文字列取得部14が取得した文字列の数だけ繰り返される。
また、上記(3)において、類似度とは、2つの文字列が類似する度合を示す情報である。類似度は、通常、編集距離(レーベンシュタイン距離)であるが、類似の度合を示す情報であれば、何でもよい。また、編集距離とは、2つの文字列がどの程度異なっているかを示す情報である。具体的には、編集距離は、文字の挿入や削除、置換によって、一つの文字列を別の文字列に変形するのに必要な手順の最小回数である。なお、編集距離は、公知であるので、詳細な説明を省略する。
また、上記(3)において、予め決められた条件とは、類似度に関する条件である類似度条件である。類似度条件は、通常、任意の記憶領域、または予め決められた記憶領域に格納されている。また、当該類似度条件は、例えば、「類似度が90%以上であること」などである。
重心算出手段152は、第一地図間対応情報取得手段151が取得した3以上の地図間対応情報を用いて、一の略地図文字列に対応する2以上の各地点情報が示す地点間の重心を算出する。当該重心は、通常、重み付き平均により算出する。重心算出手段152は、例えば、第一地図間対応情報取得手段151が取得した3以上の地図間対応情報に、一の略地図文字列に対応する2以上の地点情報を有する地図間対応情報が含まれるか否かを判断する。そして、含まれる場合に、重心算出手段152は、当該一の略地図文字列に対応する2以上の地点情報を有する地図間対応情報を用いて、当該2以上の各地点情報が示す地点間の重心を算出する。
なお、「重み付き平均」とは、例えば、n個の数値の平均の算出に際して、当該n個の各数値に重みを掛けて算出する平均のことである。重心算出手段152は、上記の重心の算出には、通常、一の地図間対応情報が有する地点情報の数の逆数を、重みとして用いる。また、重心算出手段152は、上記の重心の算出には、通常、当該各地点情報が有する地点位置情報を用いる。つまり、重心算出手段152は、通常、一の地図間対応情報が有する2以上の各地点位置情報に、当該地点位置情報の数の逆数を掛け、一の略地図文字列に対応する2以上の各地点情報が示す地点間の重心を算出する。なお、重心の算出の方法や手順などは、公知であるので、説明を省略する。
また、重心算出手段152は、例えば、算出した重心に対して、略地図文字列との類似度が大きい地点情報ほど近くなるように、当該重心を補正してもよい。また、重心算出手段152は、例えば、後述の第二地図間対応情報取得手段153からの指示に従い、当該指示が有する2以上の地点情報を用いて、当該2以上の各地点情報が示す地点間の重心を算出してもよい。
第二地図間対応情報取得手段153は、重心算出手段152が算出した重心を用いて、第一地図間対応情報取得手段151が取得した3以上の地図間対応情報から、一の略地図文字列と、当該略地図文字列に対応する一の地点情報を有する3以上の地図間対応情報を取得する。つまり、第二地図間対応情報取得手段153は、第一地図間対応情報取得手段151が取得した3以上の各地図間対応情報において、一の略地図文字列に真に対応する一の地点情報を特定する。
第二地図間対応情報取得手段153は、例えば、第一地図間対応情報取得手段151が取得した一の地図間対応情報について、当該地図間対応情報から、重心算出手段152が算出した重心からの距離が予め決められた条件を満たすほど近い地点を示す一の地点情報を取得する。当該「条件を満たすほど近い地点を示す一の地点情報を取得する」ことは、当該一の地点情報以外の地点情報を削除することであってもよい。また、当該予め決められた条件とは、距離に関する条件である距離条件である。当該距離条件は、通常、任意の記憶領域、または予め決められた記憶領域に格納されている。また、当該距離条件は、例えば、「距離が5km以下であること」などである。そして、第二地図間対応情報取得手段153は、当該一の地図間対応情報が有する略地図文字列と、取得した一の地点情報とを対応付け、一の略地図文字列と、当該略地図文字列に対応する一の地点情報を有する地図間対応情報を生成する。
また、第二地図間対応情報取得手段153は、例えば、第一地図間対応情報取得手段151が取得した一の地図間対応情報について、当該一の地図間対応情報から、重心算出手段152が算出した重心から最も近い距離にある地点を示す一の地点情報を取得する。当該「最も近い距離にある地点を示す一の地点情報を取得する」ことは、当該一の地点情報以外の地点情報を削除することであってもよい。そして、第二地図間対応情報取得手段153は、当該一の地図間対応情報が有する略地図文字列と、取得した一の地点情報とを対応付け、一の略地図文字列と、当該略地図文字列に対応する一の地点情報を有する地図間対応情報を生成してもよい。
また、第二地図間対応情報取得手段153は、例えば、第一地図間対応情報取得手段151が取得した一の地図間対応情報について、当該一の地図間対応情報から、重心算出手段152が算出した重心から最も遠い距離にある地点を示す一の地点情報を削除する。当該「最も遠い距離にある地点を示す一の地点情報を削除する」ことは、当該一の地点情報以外の地点情報を取得することであってもよい。そして、第二地図間対応情報取得手段153は、当該一の地図間対応情報が有する地点情報が示す地点間の重心を算出する。当該重心は、通常、重心算出手段152が算出する。また、このとき、第二地図間対応情報取得手段153は、削除後の地点情報を用いて重心を算出する旨を、重心算出手段152に指示する。当該指示は、通常、地点情報を有する。そして、第二地図間対応情報取得手段153は、当該地点情報の削除と、重心の算出を、一の地図間対応情報が一の地点情報を有するようになるまで繰り返してもよい。
なお、上記の様に、重心算出手段152が算出した重心を用いる場合、第二地図間対応情報取得手段153は、通常、当該重心を算出した地図間対応情報から、一の略地図文字列と、当該略地図文字列に対応する一の地点情報を有する地図間対応情報を取得する。
また、上記の様に、第二地図間対応情報取得手段153は、重心算出手段152が算出した重心からの距離に応じて、第一地図間対応情報取得手段151が取得した3以上の地図間対応情報から、地点情報を取得したり、地点情報を削除したりすることにより、一の略地図文字列に対応する一の地点情報を有する3以上の地図間対応情報を取得する。
分散算出手段154は、第二地図間対応情報取得手段153が取得した3以上の地図間対応情報を用いて、当該3以上の地図間対応情報のうちの一の地図間対応情報が有する地点情報が示す地点と、他の2以上の地図間対応情報が有する地点情報が示す地点との分散(以下、適宜、実地図上分散)を算出する。つまり、分散算出手段154は、第二地図間対応情報取得手段153が取得した3以上の各地図間対応情報が有する地点情報を基準とし、当該3以上の地図間対応情報の分散を算出する。なお、「地点情報を基準とする」とは、当該地点情報を期待値とすることである。また、分散の算出の方法や手順などは、公知であるので、説明を省略する。また、分散の算出には、通常、地点情報が有する地点位置情報を用いる。当該地点位置情報は、緯度と経度の両方であってもよいし、緯度のみであってもよいし、経度のみであってもよい。
例えば、第二地図間対応情報取得手段153が3つの地図間対応情報を取得し、当該3つの地図間対応情報が、A、B、Cの3つの各地点を示す地点情報を有しているとする。この場合、分散算出手段154は、Aを基準とした分散と、Bを基準とした分散と、Cを基準とした分散との合計3つの分散を算出する。
また、分散算出手段154は、第二地図間対応情報取得手段153が取得した3以上の地図間対応情報を用いて、当該3以上の地図間対応情報のうちの一の地図間対応情報が有する略地図座標情報が示す座標と、他の2以上の地図間対応情報が有する略地図座標情報が示す座標との分散(以下、適宜、略地図上分散)を算出してもよい。
また、分散算出手段154は、例えば、後述の第三地図間対応情報取得手段155からの指示に従い、当該指示が有する地図間対応情報を用いて、当該地図間対応情報が示す地点間や座標間の分散を算出してもよい。
第三地図間対応情報取得手段155は、分散算出手段154が算出した分差を用いて、第二地図間対応情報取得手段153が取得した地図間対応情報から、一の略地図文字列と、当該略地図文字列に対応する一の地点情報を有する3以上の地図間対応情報を取得する。つまり、第三地図間対応情報取得手段155は、第二地図間対応情報取得手段153が取得した地図間対応情報から、不要な地図間対応情報を削除する。当該「地図間対応情報を削除する」ことは、いわゆる外れ値を検出し、当該外れ値を削除することである。また、当該「不要な地図間対応情報」とは、例えば、略地図文字列が地名を示していない地図間対応情報や、略地図上に存在しない地点を示す地点情報を有する地図間対応情報などである。
第三地図間対応情報取得手段155は、例えば、分散算出手段154が算出した分散が予め決められた条件を満たすほど小さい地点情報を有する3以上の地図間対応情報を、第二地図間対応情報取得手段153が取得した地図間対応情報から取得する。当該予め決められた条件とは、分散に関する条件である分散条件である。分散条件は、通常、任意の記憶領域、または予め決められた記憶領域に格納されている。また、当該分散条件は、例えば、「分散が60以下であること」や、「分散が略地図上分散の平均の120%以下であること」などであってもよい。
また、第三地図間対応情報取得手段155は、例えば、分散算出手段154が算出した分散が予め決められた条件を満たすほど大きい一の地点情報を有する一の地図間対応情報を、第二地図間対応情報取得手段153が取得した地図間対応情報から削除してもよい。当該予め決められた条件は、上記同様、分散条件であり、例えば、「分散が60よりも大きいこと」や、「分散が略地図上分散の平均の150%よりも大きいこと」などである。
また、第三地図間対応情報取得手段155は、例えば、上記の様な取得または削除を、予め決められた条件を満たさなくなるまで繰り返してもよい。また、このとき、第三地図間対応情報取得手段155は、取得または削除後の地図間対応情報を用いて、新たに分散を算出してもよい。当該分散は、通常、分散算出手段154が算出する。また、このとき、第三地図間対応情報取得手段155は、取得または削除後の地図間対応情報を用いて分散を算出する旨を、分散算出手段154に指示する。当該指示は、通常、地図間対応情報を有する。
また、第三地図間対応情報取得手段155は、実地図上分散と略地図上分散とを用いて、スミルノフ・グラブス検定を行い、当該2つの分散の差が有意に大きいと判断できる実地図上分散に対応する一の地図間対応情報を削除してもよい。なお、スミルノフ・グラブス検定は、公知であるので、詳細な説明を省略する。
地図間対応情報蓄積部16は、地図間対応情報取得部15が取得した3以上の地図間対応情報を、地図間対応情報蓄積部16に蓄積する。
地点情報受付部17は、実地図上の地点を示す1以上の地点情報を受け付ける。当該「受け付け」とは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。また、地点情報受付部17は、例えば、現在地点を示す地点情報を取得してもよい。この場合、地点情報受付部17は、例えば、現在位置を示す位置情報を、現在地点を示す地点情報として取得する。
地点情報受付部17における地点情報の入力手段は、テンキーやキーボードやマウスやメニュー画面によるものなど、何でもよい。地点情報受付部17は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェアなどで実現され得る。また、地点情報受付部17は、MPUやメモリ等から実現され得てもよい。地点情報受付部17の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。また、現在位置情報を取得する場合、地点情報受付部17は、通常、衛星航法システム(GPS受信機など)や、移動体通信用の基地局から位置情報を受信する装置などから、各種位置関連情報を取得する。この場合、地点情報受付部17は、これらの装置を有していてもよいし、これらの装置で実現され得てもよい。
略地図座標情報取得部18は、3以上の地図間対応情報を用いて、地点情報受付部17が受け付けた1以上の各地点情報が示す地点に対応する略地図座標情報を取得する。略地図座標情報取得部18は、通常、後述の各手段により、略地図座標情報を取得する。
距離算出手段181は、地点情報受付部17が受け付けた1以上の各地点情報が示す地点(以下、対象地点)と、地図間対応情報格納部13に格納されている3以上の各地図間対応情報が有する地点情報が示す3以上の地点(以下、周辺地点)との距離を算出する。
距離算出手段181は、例えば、地図間対応情報格納部13に格納されている3以上の地図間対応情報を取得する。当該取得する地図間対応情報の選択方法は、通常、予め決められている。距離算出手段181は、例えば、対象地点の周辺の地点を示す地点情報を有する3以上の地図間対応情報を取得する。
また、対象地点と、3以上の各周辺地点との距離は、通常、当該3以上の距離の比率(比)である。また、当該距離は、例えば、対象地点と、3以上の周辺地点を結んで形成される多角形の各辺(以下、地点間辺)との距離であってもよい。また、当該距離は、例えば、当該各地点間辺上の地点と、3以上の各周辺地点との距離であってもよい。当該各地点間辺上の地点とは、例えば、当該各地点間辺と直交する直線であり、対象地点を通過する3以上の直線と、当該各地点間辺との交点である。
例えば、対象地点と周辺地点を図形で表したときに、周辺地点が△ABC、対象地点が当該△ABC内の点Xであるとする。この様な場合、距離算出手段181は、例えば、線分XA、線分XB、線分XCのそれぞれの距離を算出する。また、この場合、距離算出手段181は、例えば、線分XA、XB、XCの距離の比率を算出してもよい。また、この場合において、点Xを通る△ABCの各辺への垂線と、△ABCの各辺との交点が、p、q、r、s、t、uであり、辺AB上にp、q、辺BC上にr、s、辺CA上にt、uがあるとする。この様な場合、距離算出手段181は、線分Apと線分pBの比、線分Aqと線分qBの比、線分Brと線分rCの比、線分Bsと線分sCの比、線分Ctと線分tAの比、線分Cuと線分Auの比を算出してもよい。
また、当該距離の算出には、距離算出手段181は、通常、各地点情報が有する地点位置情報を用いる。また、距離算出手段181は、通常、当該各地点間辺上の地点と、3以上の各周辺地点との距離の比率を算出することが好適である。
また、距離算出手段181は、例えば、地図間対応情報格納部13から、2以上の地図間対応情報集合を取得する。当該地図間対応情報集合とは、3つの地図間対応情報の集合である。そして、距離算出手段181は、対象地点と、当該2以上の地図間対応情報集合に含まれる地点情報が示す3つの各周辺地点との距離を算出してもよい。
第一略地図座標情報取得手段182は、距離算出手段181が用いた3以上の各地図間対応情報が有する略地図座標情報と、距離算出手段181が算出した距離とを用いて、当該略地図座標情報が示す略地図上の3以上の座標(以下、周辺座標)から当該距離にある略地図上の座標を示す略地図座標情報を取得する。
例えば、距離算出手段181が、対象地点と、3以上の周辺地点との距離を算出した場合、第一略地図座標情報取得手段182は、まず、当該3以上の各周辺地点に対応する周辺座標を示す略地図座標情報を、距離算出手段181が用いた3以上の地図間対応情報から取得する。そして、第一略地図座標情報取得手段182は、当該3以上の各周辺座標を中心とし、当該3以上の各周辺座標に対応する周辺地点から対象地点までの距離を半径とする円を生成する。当該「生成する」とは、当該円を構成する座標情報を取得することや、当該円を略地図上に描画すること、当該円を表現する式を取得することなどである。そして、第一略地図座標情報取得手段182は、当該3以上の円の交点の座標を示す略地図座標情報を取得する。
また、例えば、距離算出手段181が、対象地点と、3以上の地点間辺との距離を算出した場合、第一略地図座標情報取得手段182は、まず、当該3以上の各周辺地点に対応する周辺座標を示す略地図座標情報を、距離算出手段181が用いた3以上の地図間対応情報から取得する。そして、第一略地図座標情報取得手段182は、当該3以上の周辺座標を結んで形成される多角形の各辺(以下、座標間辺)から、当該3以上の各座標間辺に対応する地点間辺から対象地点までの距離にある直線を生成する。そして、第一略地図座標情報取得手段182は、当該3以上の直線の交点の座標を示す略地図座標情報を取得する。
また、例えば、距離算出手段181が、3以上の各地点間辺上の地点と、3以上の各周辺地点との距離を算出した場合、第一略地図座標情報取得手段182は、まず、当該3以上の各周辺地点に対応する周辺座標を示す略地図座標情報を、距離算出手段181が用いた3以上の地図間対応情報から取得する。そして、第一略地図座標情報取得手段182は、当該3以上の座標間辺上に、当該座標間辺に対応する地点間辺上の地点に対応する点を生成する。このとき、第一略地図座標情報取得手段182は、各周辺座標と各座標間辺上の点との距離が、各周辺地点と各地点間辺上の地点との距離と同一になるようにする。そして、第一略地図座標情報取得手段182は、3以上の座標間辺上の2つの点を結ぶ直線を生成する。このとき、第一略地図座標情報取得手段182は、各地点間辺上の地点を通る垂線上にある2つの地点に対応する2つの点を結ぶ直線を生成する。そして、第一略地図座標情報取得手段182は、当該3以上の直線の交点の座標を示す略地図座標情報を取得する。
また、第一略地図座標情報取得手段182は、例えば、上記の様にして、距離算出手段181が用いた2以上の各地図間対応情報集合ごとに、一の略地図座標情報を取得してもよい。この場合、第一略地図座標情報取得手段182は、合計2以上の略地図座標情報を取得する。
相対位置類似度算出手段183は、第一略地図座標情報取得手段182が2以上の略地図座標情報を取得した場合に、距離算出手段181が用いた2以上の地図間対応情報集合ごとに、当該各地図間対応情報集合に含まれる3つの地図間対応情報が示す地点または座標の、相対的な位置関係の類似度を算出する。
具体的には、相対位置類似度算出手段183は、まず、距離算出手段181が用いた2以上の地図間対応情報集合ごとに、当該地図間対応情報集合に含まれる3つの地点情報を取得する。そして、相対位置類似度算出手段183は、例えば、当該3つの地点情報が示す地点のうちの一の地点と、残りの2つの地点を結んで形成される直線との位置関係を示す情報(以下、地点位置関係情報)を算出する。当該地点位置関係情報は、例えば、当該地点と当該直線との角度や、当該地点と当該直線との距離などである。また、同様に、相対位置類似度算出手段183は、当該地図間対応情報集合に含まれる3つの略地図座標情報についても、一の座標と、残りの2つの座標を結んで形成される直線との位置関係を示す情報(以下、座標位置関係情報)を算出する。これにより、相対位置類似度算出手段183は、一の地図間対応情報集合につき、3つの地点位置関係情報と、3つの座標位置関係情報を算出する。
次に、相対位置類似度算出手段183は、3つの地点位置関係情報のベクトルである地点相対位置ベクトルと、3つの座標位置関係情報のベクトルである座標相対位置ベクトルとを算出する。
最後に、相対位置類似度算出手段183は、当該地点相対位置ベクトルと、座標相対位置ベクトルとの類似度である相対位置類似度を算出する。なお、当該類似度の算出の方法や手順などは、問わない。これにより、相対位置類似度算出手段183は、一の地図間対応情報集合につき、一の相対位置類似度を算出する。
第二略地図座標情報取得手段184は、第一略地図座標情報取得手段182が2以上の略地図座標情報を取得した場合に、通常、当該2以上の略地図座標情報の平均を算出し、当該平均の略地図座標情報を取得する。また、この場合、相対位置類似度算出手段183は、当該2以上の各略地図座標情報に対応する相対位置類似度を算出している。従って、第二略地図座標情報取得手段184は、例えば、当該2以上の相対位置類似度情報を用いて、第一略地図座標情報取得手段182が算出した2以上の略地図座標情報が示す座標の重心を算出し、当該重心を示す略地図座標情報を取得してもよい。当該「相対位置類似度情報を用いて重心を算出する」とは、いわゆる重み付き平均を算出することである。
出力部19は、略地図座標情報取得部18が取得した略地図座標情報を出力する。また、出力部19は、例えば、略地図情報格納部12に格納されている略地図情報と、当該略地図座標情報とを出力してもよい。この場合、出力部19は、通常、当該略地図情報と、当該略地図座標情報とを対応付けて出力する。当該「対応付けて出力する」とは、当該略地図情報が示す略地図上にて、当該略地図座標情報が示す座標がわかるように出力することである。例えば、出力部19は、当該略地図上に、アイコンを出力してもよい。アイコンとは、図柄、絵柄、記号、文字などを表現したものである。アイコンは、通常、いわゆる画像であるが、当該画像の形式は問わない。つまり、当該画像は、ラスタデータであってもよいし、ベクタデータであってもよいし、その他のデータであってもよい。
また、出力部19は、略地図座標情報の出力の際に、当該略地図座標情報が示す座標が、地点情報受付部17が受け付けた地点情報に対応する座標であることがわかるように、当該地点情報が有する地点名称情報を出力してもよい。この場合、出力部19は、上記の様なアイコンと共に、当該地点名称情報を出力する。
また、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。なお、送信や蓄積、処理結果の引渡しについては、出力対象が最終的にユーザに提示されるものとする。
出力部19は、ディスプレイやスピーカーなどの出力デバイスを含むと考えてもよいし、含まないと考えてもよい。出力部19は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイスなどで実現され得る。
なお、地点情報格納部11、略地図情報格納部12、地図間対応情報格納部13は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
また、略地図文字列取得部14、地図間対応情報取得部15、第一地図間対応情報取得手段151、重心算出手段152、第二地図間対応情報取得手段153、分散算出手段154、第三地図間対応情報取得手段155、地図間対応情報蓄積部16、略地図座標情報取得部18、距離算出手段181、第一略地図座標情報取得手段182、相対位置類似度算出手段183、第二略地図座標情報取得手段184は、通常、MPUやメモリ等から実現され得る。略地図文字列取得部14などの処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現してもよい。
次に、地図情報処理装置1の全体動作について、図2のフローチャートを用いて説明する。なお、所定の情報におけるi番目の情報は、「情報[i]」と記載するものとする。
(ステップS201)地点情報受付部17は、地点情報を受け付けたか否かを判断する。受け付けた場合は、ステップS218に進み、そうでない場合は、ステップS201に戻る。
(ステップS202)略地図座標情報取得部18は、地図間対応情報格納部13に3以上の地図間対応情報が格納されているか否かを判断する。格納されている場合は、ステップS203に進み、そうでない場合は、ステップS218に進む。なお、格納されている場合、地図間対応情報格納部13には、m個の地図間対応情報集合が格納されているものとする。
(ステップS203)略地図座標情報取得部18は、カウンタiに1をセットする。
(ステップS204)距離算出手段181は、対象地点と、地図間対応情報集合[i]に含まれる3つの地点情報が示す各周辺地点との距離を算出する。
(ステップS205)第一略地図座標情報取得手段182は、ステップS204で算出した距離を、略地図情報格納部12に格納されている略地図情報が示す略地図に適用する。当該「適用する」とは、例えば、略地図において、周辺地点に対応する周辺座標や、周辺座標から、各周辺地点から対象地点までの距離にある点、地点間辺に対応する座標間辺、地点間辺上の地点に対応する座標間辺上の点などを特定し、対象地点に対応する略地図上の座標を特定することである。
(ステップS206)第一略地図座標情報取得手段182は、ステップS205で特定した座標を示す略地図座標情報を取得する。
(ステップS207)略地図座標情報取得部18は、iがmであるか否かを判断する。mである場合は、ステップS208に進み、そうでない場合は、ステップS209に進む。
(ステップS208)略地図座標情報取得部18は、iを1インクリメントし、ステップS204に戻る。
(ステップS209)略地図座標情報取得部18は、ステップS206で取得した略地図座標情報が2以上であるか否かを判断する。2以上である場合は、ステップS210に進み、そうでない場合は、ステップS217に進む。ここで、地図間対応情報集合の数と、ステップS206で取得する略地図座標情報の数は、通常、同じである。従って、略地図座標情報取得部18は、mが2以上であるか否かを判断してもよい。
(ステップS210)略地図座標情報取得部18は、カウンタiに1をセットする。
(ステップS211)相対位置類似度算出手段183は、地図間対応情報集合[i]を用いて、地点位置関係情報と、座標位置関係情報とを算出する。
(ステップS212)相対位置類似度算出手段183は、ステップS211で算出した地点位置関係情報と、座標位置関係情報とを用いて、地点相対位置ベクトルと、座標相対位置ベクトルとを算出する。
(ステップS213)相対位置類似度算出手段183は、ステップS212で算出した地点相対位置ベクトルと、座標相対位置ベクトルとを用いて、相対位置類似度を算出する。
(ステップS214)略地図座標情報取得部18は、iがmであるか否かを判断する。mである場合は、ステップS216に進み、そうでない場合は、ステップS215に進む。
(ステップS215)略地図座標情報取得部18は、iを1インクリメントし、ステップS211に戻る。
(ステップS216)第二略地図座標情報取得手段184は、ステップS206で取得したm個の略地図座標情報と、ステップS213で算出したm個の相対位置類似度とを用いて、当該m個の略地図座標情報の重み付き平均を算出し、当該算出した略地図座標情報を取得する。
(ステップS217)出力部19は、略地図座標情報を出力する。通常、ステップS206で1個の略地図座標情報を取得した場合、出力部19は、当該略地図座標情報を出力する。そうでない場合、出力部19は、ステップS216で取得した略地図座標情報を出力する。そして、ステップS201に戻る。
(ステップS218)地図間対応情報取得部15は、地図間対応情報を取得し、地図間対応情報蓄積部16は、当該地図間対応情報を、地図間対応情報格納部13に蓄積する。この処理の詳細は、図3のフローチャートを用いて説明する。そして、ステップS201に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理を終了してもよい。
図3は、図2のフローチャートのステップS218の地図間対応情報の取得と蓄積処理を示すフローチャートである。なお、図3のフローチャートにおいて、地点情報格納部11には、n個の地点情報が格納されているものとする。
(ステップS301)略地図文字列取得部14は、略地図情報格納部12に格納されている略地図情報から、3以上の略地図文字列を取得する。ここで、m個の略地図文字列が取得できたものとする。
(ステップS302)地図間対応情報取得部15は、カウンタiに1をセットする。
(ステップS303)地図間対応情報取得部15は、カウンタjに1をセットする。
(ステップS304)第一地図間対応情報取得手段151は、略地図文字列[i]と、地点情報[j]が有する地点名称情報との類似度を算出する。
(ステップS305)第一地図間対応情報取得手段151は、ステップS304で算出した類似度が予め決められた条件を満たすか否かを判断する。満たす場合は、ステップS306に進み、そうでない場合は、ステップS308に進む。
(ステップS306)第一地図間対応情報取得手段151は、地点情報[j]を取得する。
(ステップS307)第一地図間対応情報取得手段151は、略地図文字列[i]と、ステップS306で取得した地点情報[j]とを対応付け、地図間対応情報[i]を生成する。
(ステップS308)地図間対応情報取得部15は、jがnであるか否かを判断する。nである場合は、ステップS310に進み、そうでない場合は、ステップS309に進む。
(ステップS309)地図間対応情報取得部15は、jを1インクリメントし、ステップS304に戻る。
(ステップS310)地図間対応情報取得部15は、iがmであるか否かを判断する。mである場合は、ステップS312に進み、そうでない場合は、ステップS311に進む。
(ステップS311)地図間対応情報取得部15は、iを1インクリメントし、ステップS303に戻る。
(ステップS312)地図間対応情報取得部15は、カウンタiに1をセットする。
(ステップS313)地図間対応情報取得部15は、ステップS307で生成した地図間対応情報[i]が有する地点情報の数が2以上であるか否かを判断する。2以上である場合は、ステップS314に進み、そうでない場合は、ステップS316に進む。
(ステップS314)重心算出手段152は、地図間対応情報[i]が有する2以上の地点情報が示す地点間の重心を算出する。
(ステップS315)第二地図間対応情報取得手段153は、ステップS314で算出した重心から最も遠い距離にある地点を示す地点情報を、地図間対応情報[i]から削除する。そして、ステップS313に戻る。
(ステップS316)地図間対応情報取得部15は、iがmであるか否かを判断する。mである場合は、ステップS318に進み、そうでない場合は、ステップS317に進む。
(ステップS317)地図間対応情報取得部15は、iを1インクリメントする。
(ステップS318)地図間対応情報取得部15は、m個の地図間対応情報から、不要な地図間対応情報を削除する。この処理の詳細は、図4のフローチャートを用いて説明する。
(ステップS319)地図間対応情報蓄積部16は、ステップS318で取得した地図間対応情報を、地図間対応情報格納部13に蓄積する。そして、上位処理にリターンする。
図4は、図3のフローチャートのステップS318の不要な地図間対応情報の削除処理を示すフローチャートである。なお、図4において、第二地図間対応情報取得手段153は、m個の地図間対応情報を取得したものとする。
(ステップS401)地図間対応情報取得部15は、カウンタiに1をセットする。
(ステップS402)分散算出手段154は、地図間対応情報[i]が有する地点情報が示す地点を基準とした実地図上分散を算出する。
(ステップS403)分散算出手段154は、地図間対応情報[i]が有する略地図座標情報が示す座標を基準とした略地図上分散を算出する。
(ステップS404)第三地図間対応情報取得手段155は、ステップS402で算出した実地図上分散が、ステップS403で算出した略地図上分散と、予め決められた範囲で近似しているか否かを判断する。近似しているか否かを判断する。当該「範囲」は、例えば、「±10%」や、「±5」などである。近似している場合は、ステップS406に進み、そうでない場合は、ステップS405に進む。
(ステップS405)第三地図間対応情報取得手段155は、地図間対応情報[i]を削除する。当該削除は、例えば、地図間対応情報[i]に削除したことを示すフラグを付与することなどであってもよい。
(ステップS406)地図間対応情報取得部15は、iがmであるか否かを判断する。mである場合は、上位処理にリターンし、そうでない場合は、ステップS407に進む。
(ステップS407)地図間対応情報取得部15は、iを1インクリメントし、ステップS402に戻る。
(具体例)
次に、地図情報処理装置1の動作の具体例について説明する。なお、本具体例において、地図情報処理装置1は、例えば、ユーザが指定した地点を、ユーザが指定した略地図上に表示するナビゲーション装置であるものとする。
(例1)
本例において、地図間対応情報の取得の例について説明する。なお、本例において、地点情報格納部11には、図5に示す地点情報が格納されているものとする。当該地点情報は、レコードを一意に特定するためのID(項目名:ID)と、地点名称情報(項目名:名称)と、地点位置情報(項目名:位置)とを有する。
まず、ユーザが、図6の略地図を読み込むようにナビゲーション装置を操作したとする。すると、図6の略地図を示す略地図情報が、略地図情報格納部12に蓄積される。
次に、略地図文字列取得部14は、略地図情報格納部12に格納されている略地図情報から、当該略地図情報が示す略地図上の文字列を取得する。図6の略地図には、例えば、「金閣寺」や、「千本」、「堀川」などの文字列が記載されている。従って、略地図文字列取得部14は、当該略地図情報から、当該3以上の文字列を取得する。また、略地図文字列取得部14は、略地図上の文字列に外接する矩形の中心点の座標を示す略地図座標情報を、当該文字列と共に取得する。
次に、第一地図間対応情報取得手段151は、略地図文字列取得部14が取得した3以上の各文字列との類似度が予め決められた条件を満たす地点名称情報を有する地点情報を、図5の地点情報から取得する。そして、当該3以上の各文字列と、取得した地点情報とを対応付け、地図間対応情報を生成する。その結果、第一地図間対応情報取得手段151は、図7に示す地図間対応情報を生成したものとする。当該地図間対応情報は、レコードを一意に特定するためのID(項目名:ID)と、略地図文字列取得部14が取得した略地図文字列(項目名:文字列)と、当該略地図文字列に対応する略地図座標情報(項目名:座標)と、地点名称情報(項目名:名称)と、地点位置情報(項目名:位置)とを有する。
次に、重心算出手段152は、図7の地図間対応情報のうち、地点情報を2以上有する「ID=011」や、「ID=013」、「ID=014」などの地図間対応情報について、当該地図間対応情報が有する2以上の地点情報が示す地点間の重心を算出する。
次に、第二地図間対応情報取得手段153は、図7の「ID=011」や、「ID=013」、「ID=014」などの地図間対応情報について、重心算出手段152が算出した重心から最も近い距離にある地点を示す地点情報以外の地点情報を削除する。例えば、図7の「ID=011」について、当該地図間対応情報が有する3つの地点情報が示す地点間の重心から、1番目の「銀閣寺」が最も近いとする。すると、第二地図間対応情報取得手段153は、図7の「ID=011」から、1番目以外の2番目と3番目の地点情報を削除する。また、例えば、図7の「ID=012」について、当該当該地図間対応情報が有する2つの地点情報が示す地点間の重心から、2番目の「祇園四条」が最も近いとする。すると、第二地図間対応情報取得手段153は、図7の「ID=012」から、1番目の地点情報を削除する。そして、第二地図間対応情報取得手段153は、図7の「ID=014」の地図間対応情報についても、重心から最も近い距離にある地点を示す地点情報以外の地点情報を削除する。その結果、第二地図間対応情報取得手段153は、図8に示す地図間対応情報を取得したものとする。
次に、分散算出手段154は、図8の地図間対応情報を用いて、図8の各地図間対応情報を基準とした実地図上分散と、略地図上分散とを算出する。ここで、例えば、図8において、m個の地図間対応情報があるとする。すると、分散算出手段154は、各地図案対応情報を基準とした合計m組の実地図上分散と略地図上分散の組を算出する。
第三地図間対応情報取得手段155は、分散算出手段154が算出したm組の実地図上分散と略地図上分散の組を用いて、図8の地図間対応情報から不要な地図間対応情報を削除する。ここで、当該削除の条件が、「実地図上分散が、略地図上分散の150%以上であること」であるとする。そして、第三地図間対応情報取得手段155は、分散算出手段154が算出したm組の各実地図上分散と略地図上分散について、実地図上分散が略地図上分散の150%以上であるか否かを判断する。その結果、図8の「ID=014」の地図間対応情報について、当該地図間対応情報が有する地点位置情報を基準として算出した実地図上分散が、当該地図間対応情報が有する略地図座標情報を基準として算出した略地図上分散の150%以上であったとする。すると、第三地図間対応情報取得手段155は、図8の「ID=014」の地図間対応情報を削除する。そして、第三地図間対応情報取得手段155は、この様にして不要な地図間対応情報を削除した結果、図9に示す地図間対応情報を取得したものとする。
次に、地図間対応情報蓄積部16は、図9の地図間対応情報を、地図間対応情報格納部13に蓄積する。
(例2)
本例において、実地図上の地点に対応する略地図上の地点の特定の例について説明する。なお、本例において、略地図情報格納部12には、図6の様な略地図情報が格納されているものとする。また、地図間対応情報格納部13には、図9の様な地図間対応情報が格納されているものとする。
まず、ユーザが、図6の略地図上に、当該略地図上にない「京都御所」を表示するようにナビゲーション装置を操作したとする。すると、地点情報受付部17は、「京都御所」の位置を示す地点位置情報を有する地点情報を取得する。以下、当該地点情報を、指定地点情報とする。
次に、距離算出手段181は、図9の地図間対応情報から、3つの地図間対応情報の集合である地図間対応情報集合を取得する。ここで、例えば、図9において、m個の地図間対応情報があるとする。すると、当該地図間対応情報集合は、m個から3個を取得する組み合わせであるので、距離算出手段181は、合計「(m^3−3m^2+2m)/6」個の地図間対応情報集合を、図9の地図間対応情報から取得する。ここで、距離算出手段181は、合計n個の地図間対応情報集合を取得したものとする。
次に、距離算出手段181は、指定地点情報が示す対象地点と、n個の各地図間対応情報集合に含まれる3つの地点情報が示す周辺地点との距離を算出する。ここで、距離算出手段181は、各周辺地点と、地点間辺上の地点との距離(比)を算出するとする。
例えば、対象地点をX、一の地図間対応情報集合に含まれる地点情報が示す3つの周辺地点をそれぞれA、B、Cとする。すると、距離算出手段181は、まず、点Xを通過し、△ABCの各辺と垂直に交わる3本の直線を生成する。このときの様子は、例えば、図10の様になる。そして、当該3本の直線と△ABCの各辺とが直交する点を、順に点p、点q、点rとする。また、当該3本の直線と△ABCの各辺とが直交しない点を、順に、点s、点t、点uとする。そして、距離算出手段181は、距離算出手段181は、線分Ap:線分pB、線分Bq:線分qC、線分Cr:線分rA、線分Bs:線分sC、線分Ct:線分tA、線分Bu:線分uCの合計6個の比を算出する。
次に、第一略地図座標情報取得手段182は、距離算出手段181が算出した比を、略地図に適用し、周辺地点に対応する周辺座標と、地点間辺上に対応する座標間辺上の点を特定する。第一略地図座標情報取得手段182は、例えば、図10の点Aについて、当該点Aを示す地点情報に対応付いている略地図座標情報により、当該点Aに対応する略地図上の点A’を特定する。また、第一略地図座標情報取得手段182は、点B、点Cについても同様に、略地図上の点B’、点C’を特定する。また、第一略地図座標情報取得手段182は、例えば、図10の点pについて、図11の様に、距離算出手段181が算出した線分Ap:線分pBの比を用いて、点pに対応する辺A’B’上の点p’を特定する。このとき、線分A’p’:線分p’B’の比は、線分Ap:線分pBの比と同一である。また、第一略地図座標情報取得手段182は、点q、点r、点s、点t、点uについても同様に、略地図上の点q’、点r’、点s’、点t’、点u’を特定する。
次に、第一略地図座標情報取得手段182は、図12の様に、距離算出手段181が距離を算出する際に生成した直線上の2つの各点に対応する点を結ぶ直線を生成する。このとき、第一略地図座標情報取得手段182は、図12の様に、通常、3本の直線を生成する。そして、第一略地図座標情報取得手段182は、当該3本の直線の交点を、対象地点Xに対応する略地図上の点X’であると特定する。そして、第一略地図座標情報取得手段182は、当該点X’を示す略地図座標情報を取得する。
以上の様にして、距離算出手段181と、第一略地図座標情報取得手段182とは、n個の地図間対応情報集合ごとに、対象地点に対応する略地図上の座標を特定する。
なお、距離算出手段181と、第一略地図座標情報取得手段182とは、通常、図13の様に、対応する2以上の周辺地点と周辺座標(2以上の地図間対応情報集合)を用いて、一の対象地点に対応する2以上の略地図上の座標を特定する。図13において、実線で結んだ周辺地点と周辺座標とは、それぞれ、対応する周辺地点と周辺座標である。つまり、図13において、点Aと点Bと点Cの周辺地点の組と、点A’と点B’と点C’の周辺地点の組とは、対応する。また、それぞれの地点と座標も対応する。破線、一点鎖線で結んだ周辺地点と周辺座標についても同様である。
次に、相対位置類似度算出手段183は、上記のn個の地図間対応情報集合を用いて、一の地図間対応情報集合ごとに、相対位置類似度を算出する。ここで、相対位置類似度算出手段183は、図13の各対応する周辺地点と周辺座標を用いて、相対位置類似度を算出する。例えば、図13の△ABCと△A’B’C’について、相対位置類似度算出手段183は、まず、△ABCから3つの地点位置関係情報を算出する。次に、相対位置類似度算出手段183は、△A’B’C’から3つの座標位置関係情報を算出する。次に、相対位置類似度算出手段183は、算出した3つの地点位置関係情報と3つの座標位置関係情報から、地点相対位置ベクトルと座標相対位置ベクトルとを算出する。そして、相対位置類似度算出手段183は、当該2つのベクトルから、相対位置類似度を算出する。
次に、第二略地図座標情報取得手段184は、第一略地図座標情報取得手段182が取得した2以上の略地図座標情報から、一の略地図座標情報を取得する。ここで、第一略地図座標情報取得手段182が、点X1’、点X2’、点X3’の3つの略地図座標情報を取得していたとする。すると、第二略地図座標情報取得手段184は、相対位置類似度算出手段183が算出した相対位置類似度を用いて、当該3つの点の重み付き平均を算出し、図14の様に、対象地点Xに対応する略地図上の座標X’を特定する。そして、第二略地図座標情報取得手段184は、特定した座標を示す略地図座標情報を取得する。
次に、出力部19は、略地図座標情報取得部18が取得した略地図座標情報を、例えば、図15の様に、略地図情報と共に出力する。
以上、本実施の形態による地図情報処理装置1によれば、3以上の地図間対応情報を用いて、略地図上にない実地図上の地点を、略地図上に表示することができる。
(実施の形態2)
本実施の形態において、略地図上の座標と、実地図上の地点との2つの対応関係を用いて、実地図の地点を、略地図上に表示する地図情報処理装置2について説明する。
なお、本実施の形態における地図情報処理装置2のブロック図は、図1と同様であるので、説明を省略する。また、本実施の形態における地図情報処理装置2が備える各部が行う処理などは、略地図文字列や、地図間対応情報が、3以上ではなく2つになるだけであり、実施の形態1における地図情報処理装置1が備える各部が行う処理などと同様であるので、説明を省略する。つまり、本実施の形態において、地図間対応情報格納部13には、2つの地図間対応情報が格納される。また、略地図文字列取得部14は、2つの略地図文字列を取得する。また、地図間対応情報取得部15は、2つの地図間対応情報を取得する。また、地図間対応情報蓄積部16は、地図間対応情報取得部15が取得した2つの地図間対応情報を蓄積する。略地図座標情報取得部18は、地図間対応情報格納部13に格納されている2つの地図間対応情報を用いて、地点情報受付部17が受け付けた1以上の各地点情報が示す地点に対応する略地図座標情報を取得する。
(具体例)
次に、地図情報処理装置2の動作の具体例について説明する。なお、本具体例において、地図情報処理装置2は、例えば、ユーザが指定した地点を、ユーザが指定した略地図上に表示するナビゲーション装置であるものとする。また、地図間対応情報格納部13には、実地図上の地点Aと、略地図上の地点A’とが対応付いていることを示す地図間対応情報と、実地図上の地点Bと、略地図上の地点B’とが対応付いていることを示す地図間対応情報との、2つの地図間対応情報が格納されているものとする。また、実施の形態1の具体例において説明した処理などについては、説明を省略する。
(例1)
本例において、2つの地図間対応情報を用いて、実地図上の地点に対応する略地図上の地点を特定する例について説明する。
まず、ユーザが、図16の様に、実地図上の地点Aと地点Bとを結ぶ直線上にある地点Xを、略地図上に表示するようにナビゲーション装置を操作したとする。すると、地点情報受付部17は、地点Xの位置を示す地点位置情報を有する地点情報を取得する。以下、当該地点情報を、指定地点情報とする。
次に、距離算出手段181は、図16の様に、地点AX間の距離と、地点BX間の距離との比を算出し、「AX:BX=4:3」を取得したものとする。
次に、第一略地図座標情報取得手段182は、図16の様に、地図間対応情報格納部13に格納されている地図間対応情報を用いて、地点Aに対応する略地図上の地点A’と、地点Bに対応する略地図上の地点B’を特定する。
次に、第一略地図座標情報取得手段182は、図16の様に、距離算出手段181が算出した「AX:BX=4:3」を用いて、線分A’B’を「4:3」に分割する点を、対象地点Xに対応する略地図上の点X’であると特定する。例えば、図16の略地図において、線分A’B’の長さ(距離)が「7cm」であったとする。すると、第一略地図座標情報取得手段182は、線分A’B’上の点であり、点A’から長さ(距離)が「4cm」である点を、対象地点Xに対応する略地図上の点X’であると特定する。そして、第一略地図座標情報取得手段182は、当該点X’を示す略地図座標情報を取得する。
(例2)
本例において、2つの地図間対応情報を用いて、実地図上の地点に対応する略地図上の地点を特定する例について説明する。
まず、ユーザが、図17の様に、実地図上の地点Aと地点Bとを結ぶ直線にはない地点Xを、略地図上に表示するようにナビゲーション装置を操作したとする。すると、地点情報受付部17は、地点Xの位置を示す地点位置情報を有する地点情報を取得する。以下、当該地点情報を、指定地点情報とする。
次に、距離算出手段181は、図17の様に、地点AB間の距離と、地点AX間の距離と、地点BX間の距離との比を算出し、「AB:AX:BX=16:9:9」を取得したものとする。
次に、第一略地図座標情報取得手段182は、図17の様に、地図間対応情報格納部13に格納されている地図間対応情報を用いて、地点Aに対応する略地図上の地点A’と、地点Bに対応する略地図上の地点B’を特定する。
次に、第一略地図座標情報取得手段182は、図17の様に、距離算出手段181が算出した「AB:AX:BX=16:9:9」と、線分A’B’の長さ(距離)を用いて、線分A’X’の長さ(距離)と、線分B’X’の長さ(距離)を算出する。なお、点X’は、対象地点Xに対応する略地図上の点である。例えば、図17の略地図において、線分A’B’の長さが「8cm」であったとする。すると、第一略地図座標情報取得手段182は、線分A’X’の長さを「4.5cm」、線分B’X’の長さを「4.5cm」と算出する。
次に、第一略地図座標情報取得手段182は、図17の様に、点A’を中心とした半径がR1の円と、点B’を中心とした半径がR2の円との交点を、点X1’、点X2’とする。R1の長さは、算出した線分A’X’の長さ「4.5cm」であり、R2の長さも、算出した線分B’X’の長さ「4.5cm」である。
ここで、図17の実地図において、点Xは、線分ABの上部に位置する。従って、第一略地図座標情報取得手段182は、略地図上の点X1’を、対象地点Xに対応する略地図上の点X’であると特定する。そして、第一略地図座標情報取得手段182は、当該点X’を示す略地図座標情報を取得する。
以上、本実施の形態による地図情報処理装置2によれば、2つの地図間対応情報を用いて、略地図上にない実地図上の地点を、略地図上に表示することができる。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されてもよいことは言うまでもない。
また、上記各実施の形態における地図情報処理装置は、例えば、スタンドアロンの装置であってもよいし、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、例えば、ASP(Application Service Provider)として実地図の地点の略地図上への表示が行われてもよい。
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよいし、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよいし、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
また、上記各実施の形態における地図情報処理装置を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、略地図を示す情報である略地図情報と、前記略地図上に記載されている文字列と、地図上の地点を示す地点情報とが対応付いた情報である2または3以上の地図間対応情報とが格納されており、コンピュータを、地図上の地点を示す1以上の地点情報を受け付ける地点情報受付部と、前記2または3以上の地図間対応情報を用いて、前記地点情報受付部が受け付けた1以上の各地点情報が示す地点に対応する略地図上の座標を示す前記略地図座標情報を取得する略地図座標情報取得部と、前記略地図情報が示す略地図上の座標であり、前記略地図座標情報取得部が取得した略地図座標情報が示す座標に、前記前記地点情報受付部が受け付けた1以上の各地点情報を出力する出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、ハードウェアでしか行われない処理は少なくとも含まれない。
また、上記プログラムは、サーバなどからダウンロードされることによって実行されてもよいし、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
また、上記プログラムを実行するコンピュータは、単数であってもよいし、複数であってもよい。つまり、集中処理を行ってもよいし、あるいは分散処理を行ってもよい。
また、図18は、前述のプログラムを実行して、前述の実施の形態の地図情報処理装置等を実現するコンピュータシステム9の概観図である。前述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。
図18において、コンピュータシステム9は、CD−ROM(Compact Disk Read Only Memory)ドライブ9011、FD(Flexible Disk)ドライブ9012を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図19は、コンピュータシステム9のブロック図である。図19において、コンピュータ901は、CD−ROMドライブ9011、FDドライブ9012に加えて、CPU(Central Processing Unit)9013と、ブートアッププログラム等のプログラムを記憶するためのROM(Read−Only Memory)9014と、CPU9013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM(Random Access Memory)9015と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク9016と、CD−ROMドライブ9011、FDドライブ9012、CPU9013等を相互に接続するバス9017とを備える。ここでは図示しないが、コンピュータ901は、さらに、LANへの接続を提供するネットワークカードを備えていてもよい。
コンピュータシステム9に、前述の実施の形態の地図情報処理装置等の機能を実行させるプログラムは、CD−ROM9101、またはFD9102に記憶されて、CD−ROMドライブ9011またはFDドライブ9012に挿入され、さらにハードディスク9016に転送されてもよい。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク9016に記憶されてもよい。プログラムは実行の際にRAM9015にロードされる。プログラムは、CD−ROM9101、FD9102またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、前述の実施の形態の地図情報処理装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいればよい。コンピュータシステム9がどのように動作するかは周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。