JP4717650B2 - 現在位置推定装置 - Google Patents

現在位置推定装置 Download PDF

Info

Publication number
JP4717650B2
JP4717650B2 JP2006026399A JP2006026399A JP4717650B2 JP 4717650 B2 JP4717650 B2 JP 4717650B2 JP 2006026399 A JP2006026399 A JP 2006026399A JP 2006026399 A JP2006026399 A JP 2006026399A JP 4717650 B2 JP4717650 B2 JP 4717650B2
Authority
JP
Japan
Prior art keywords
building
user
current position
buildings
boundary
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.)
Expired - Fee Related
Application number
JP2006026399A
Other languages
English (en)
Other versions
JP2007205948A (ja
JP2007205948A5 (ja
Inventor
真 井上
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.)
Zenrin Co Ltd
Original Assignee
Zenrin Co Ltd
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 Zenrin Co Ltd filed Critical Zenrin Co Ltd
Priority to JP2006026399A priority Critical patent/JP4717650B2/ja
Publication of JP2007205948A publication Critical patent/JP2007205948A/ja
Publication of JP2007205948A5 publication Critical patent/JP2007205948A5/ja
Application granted granted Critical
Publication of JP4717650B2 publication Critical patent/JP4717650B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、ユーザの現在位置を推定するための技術に関する。
車両や歩行者を対象とするナビゲーションシステムが普及してきている。これらのナビゲーションシステムは、ユーザの現在位置を基準として目的地に至る経路を探索したり、探索された経路の案内を行ったりする。ユーザの現在位置は、GPS(Global Positioning System)を用いて検出されるのが通常である。
GPSによる現在位置の検出は、人工衛星からの電波を受信可能な状況下でしか利用できないため、完全なものとは言えない。ナビゲーションシステムの実用性を向上するためには、電波が受信できない環境にある場合や、ユーザが所持する端末にGPSが搭載されていない場合などでも現在位置を特定可能とすることが望まれる。かかる要望に対し、特許文献1は、ユーザに対して正面に何が見えるか、左に何が見えるかなどの質問を発し、その回答に基づいて現在位置を推定する技術を開示している。特許文献2も同様に、「左側にレストランが見えますか」などの質問をユーザに発することにより、現在位置を推定する技術を開示している。
特開平9−319991号公報 特開2004−340689号公報
従来技術では、歩行者を基準として正面、左に見える建物を回答させる方法を採っている。しかし、現在位置が不明な場合には、歩行者は四方八方を見回し、頻繁に姿勢を変えるのが通常である。従来技術では、歩行者が複数の質問に回答する間に姿勢を変えてしまうと、「正面」、「左」等の方向の基準が変動してしまい、十分な精度で現在位置を推定することができなくなるという課題があった。
また、従来技術のように視認可否を質問する方法では、ユーザが特定しやすい建物、例えば、大型ビルなどのランドマークを対象とすることにより、ユーザの誤解を低減することができる点で好ましい。しかし、このようなランドマークは、遠方からも視認可能であるのが通常であるから、ランドマークに対する視認可否の回答を得たとしても、ユーザの現在位置を精度良く推定することはできない。従来技術では、現在位置の精度を十分に確保しうる質問対象を選択するのが困難であるという課題があった。
上述のランドマークについての課題から明らかな通り、従来技術では、現在位置を精度良く特定するためには、最終的にはユーザの付近にある建物を質問の対象とする必要がある。従って、ユーザが誤解なく特定できる特徴的な建物があったとしても、ユーザから一定範囲より遠方にある場合には、このような建物を現在位置の特定に活用することはできない。この結果、あまり特徴のない建物を現在位置の推定に使用せざるを得ないこととなり、ユーザの誤解等によって現在位置の特定精度が低下するおそれがあった。
このように従来技術における現在位置の推定には、更に実用性向上の余地が残されていた。現在位置の推定は、ナビゲーションシステムに特有の技術ではなく、例えば、ユーザの現在位置に応じてグルメ情報、観光情報、ショッピング情報などを提供するサービスを実現する際にも要求される技術である。本発明は、このように多様な場面で要求される現在位置の推定技術について、より実用性を向上することを目的とする。
ユーザの現在位置を推定する現在位置推定装置としての本発明の構成について説明する。本発明の現在位置推定装置は、複数の地物相互の相対的な位置関係についてユーザが視認した結果を入力する。入力するのは、ユーザから見て正面、左というようなユーザを基準とした位置関係ではなく、複数の地物相互の相対的な位置関係である。例えば、「3つの地物が右から、地物1,地物2,地物3の順に見える」とか、「地物Aと地物Bは前後に重なって見える」とかいう相対的な位置関係が該当する。
現在位置推定装置は、各地物の位置を記録した地図データベースを参照して、上述の複数の地物を入力された相対的な位置関係で視認可能な範囲を特定して、ユーザの現在位置を推定する。例えば、「地物Aと地物Bは前後に重なって見える」という位置関係が入力された場合、このような見え方をする場所は比較的限定されるため、ユーザの現在位置を絞り込むことが可能なのである。本発明では、現在位置の推定に、地物相互の位置関係を用いるため、ユーザが姿勢を変えたとしても支障なく現在位置の推定を行うことができる利点がある。
相対的な位置関係を入力する対象となる地物は、ユーザが決定してもよいし、現在位置推定装置が決定してもよい。前者の方法では、ユーザは、「地物Aと地物Bは前後に重なって見える」というようにそれぞれの地物を名称等で指定した上で相対的な位置関係を入力することになる。この方法は、大都会の中心部など、多くの地物が存在し、ユーザは、看板等によって各地物の名称を容易に知ることができる場合に適している。ただし、この方法では、現在位置推定装置がユーザによって指定された地物を、地図データベースから一義的に特定できることが必要となる。
後者の方法では、現在位置推定装置は、ユーザが現地でそれぞれの地物を特定し得る情報を情報提示する。提示される情報としては、例えば、地物の画像、色、形状、高さなど外観に関する特徴や、地物の名称や、ホテル、デパートなど地物の種別等が含まれる。ユーザが提示された情報に基づいて現地で地物を確認し、相対的な位置関係を入力すると、現在位置推定装置は、これに基づいて現在位置を推定する。この方法では、相対的な位置関係の入力対象となる地物は現在位置推定装置にとって既知であるため、位置関係が入力された後の処理を容易かつ正確に行うことができる利点がある。
相対的な位置関係は種々の表現形式で特定可能であるが、一例として、ユーザを基準として見た場合の複数の地物相互の前後関係または左右関係で特定することが好ましい。地物相互の位置関係が斜めであっても、いずれか一方の地物が他方よりも手前に見えるとか、左または右に見えるとかいう方法での特定は比較的容易かつ正確に行うことができる。従って、このような方法で相対的な位置関係を特定することにより、ユーザにとって、現在位置推定装置を利用しやすくできる。また、位置関係の特定が正確になるため、現在位置の推定精度を向上させることができる。
本発明では、2つの地物を用いるだけでも、現在位置の範囲をある程度絞り込むことは可能であるが、更に推定精度を向上させるためには、一直線上にない3つ以上の地物を用いることが好ましい。
先に説明した通り、現在位置推定装置は3以上の地物を利用することができる。この時、これらの全地物を一度に処理する方法を採ることも可能ではあるが、処理の定型化、簡素化という観点から、複数の地物のうち処理対象となる2つの地物を選択し、選択された地物同士の相対的な位置関係に基づいて、ユーザの現在位置が存在し得る領域(以下、「存在領域」という。)の境界線を画定するという処理を、処理対象となる地物を変えながら繰り返し実行することで、存在領域を絞り込む処理を行うことが好ましい。
処理に利用可能な地物の数が増えるにつれて、処理対象となる2つの地物の組み合わせが多大となる。従って、存在領域の境界の画定に有用な組み合わせを選択的に実行することにより、処理時間を短縮し、効率的に存在領域を求めることが可能となる。この場合、対象とすべき地物の選択は、必ずしも理論的に最適な方法が存在する訳ではないが、いくつかの好適な選択方法が存在する。
第1の選択方法として、4つ以上の地物を用いる場合において、既に画定された境界が存在するときには、画定された境界と交差する境界を画定可能な位置関係にある地物を優先的に選択することが好ましい。例えば、既画定の境界を挟む位置関係にある2つの地物を選択する態様や、既画定の境界上にある地物と境界上にない地物とを選択する態様がこれに該当する。この方法で地物を選択した場合、選択された地物によって特定される新たな境界は、既に画定された境界に交差することになる。つまり、新たな境界は、既に画定された存在領域を分断する形となるため、存在領域を効率的に絞り込むことが可能となる。
第2の選択方法として、4つ以上の地物を用いる場合において、既に画定された境界が存在するときには、現在位置が存在し得る領域内に存在する2つの地物を優先的に用いることが好ましい。この方法で選択された地物によって画定される境界は、既に画定された境界に交差することになる。つまり、新たな境界は、既に画定された存在領域を分断する形となるため、存在領域を効率的に絞り込むことが可能となる。
第3の選択方法として、3つ以上の地物を用いる場合においては、高さの低い地物を優先的に用いることが好ましい。一般に高さの低い地物は、遠方から視認しづらいことを考えると、低い地物ほどユーザの現在位置に近いと考えられる。従って、高さの低い地物を優先的に使用することにより、現在位置の付近に存在領域の境界を画定することができ、存在領域の精度を向上させることができる。
上述の3つの選択方法は、いずれか一つのみを採用してもよいし、適宜、組み合わせて採用してもよい。複数の選択方法を採用する場合の優先順位は任意に設定可能である。また、上述の3つの選択方法と異なる選択方法を加味することも可能である。
本発明では、存在領域を画定するための上述の処理に先立って、ユーザの現在位置を概略把握するための前処理を行うことが好ましい。このための前処理としては、例えば、次の方法を採ることができる。まず、現在位置推定装置は、地物の特定に用い得る属性を、ユーザの操作に応じて入力する。属性の入力対象となる地物は、ユーザが視認できる範囲で任意に選択した地物である。属性としては、例えば、地物の名称、種別、色や高さや模様などの外観に関する情報等が挙げられる。地図データベースには、各地物についてこれらの属性が対応づけて記憶されている。現在位置推定装置は、この地図データベースを参照して属性に対応する地物を特定する。この場合、入力された属性に完全に一致するもののみを特定するようにしてもよいし、一定範囲で入力された属性との不一致を許容して地物を特定するようにしてもよい。後者の態様では、入力された項目のうち、所定数までは不一致であっても許容するという扱いをしてもよいし、各項目に対し許容誤差を認める扱いをしてもよい。
この地物が特定されると、地物を視認可能な範囲は概ね特定可能であるから、地物に基づいて現在位置が存在すると判断される概略領域を求めることができる。現在位置推定装置は、こうして求められた概略領域内の複数の地物を情報提示の対象として設定する。情報提示の対象となるべき地物は、ユーザが任意に選択した地物と同一であってもよいし、異なるものであってもよい。こうすることにより、現在位置が概ね絞り込まれた状態で、存在領域を画定するための処理を実行することができるため、効率的に精度良く存在領域を求めることが可能となる。
上述の前処理では、ユーザが入力した属性だけでは、それに対応する一つに地物を特定することができず、属性に対応する候補が複数存在する場合がある。このように特定の属性に対応する地物の候補が複数存在する場合には、各候補と別途入力された他の属性に対応する地物との距離に基づき、候補のいずれか一つを特定の属性に対応する地物として選択することが好ましい。
一例として、特定の属性に対応する候補が地物A,Bの2つ存在する場合を考える。他の属性に対応する地物として地物Cが特定されているものとする。このような場合には、地物ACの距離、地物BCの距離をそれぞれ求めるのである。地物AC間の距離がユーザにとって双方の建物を視認可能な距離であり、地物BCの距離が双方の建物を視認し得ないほどに離れている場合には、特定の属性に対応する地物として地物Aを選択することができる。ユーザは地物A,Cの双方を視認できる範囲に存在しているはずだからである。このように、入力された属性との対応関係のみならず、他の属性に対応する地物との位置関係を考慮することによって、属性に対応する地物を精度良く特定することが可能となる。
上述の前処理では、ユーザが入力した属性に対応する地物を十分に特定できない場合もある。かかる場合には、所定の地物に関する情報をユーザに提示するとともに、地物をユーザが視認できるか否かの回答を入力し、この回答を反映して概略領域を求めるようにしてもよい。かかる地物としては、比較的遠方からでも視認可能な大型のランドマークを用いることが好ましい。
このようにユーザに地物を提示して視認可否の回答を得る場合には、概略領域を絞り込むために、地物に関する情報の提示および回答の入力を所定の条件下で繰り返し実行することが好ましい。視認可否を尋ねる地物は任意に選択することも可能であるが、一の地物に対して視認できる旨の回答が得られた場合には、地物の位置に基づいて概略領域を狭めた上で、概略領域から次の情報提示の対象となる地物を選択することが好ましい。こうすることにより、視認可否についての無用な応答を省略し、効率的に概略領域を絞り込むことが可能となる。
逆に、一の地物に対して視認できない旨の回答が得られた場合には、地物の位置に基づいて概略領域を広げた上で、概略領域から次の情報提示の対象となる地物を選択するようにしてもよい。既存の概略領域内では別の地物についても視認できない旨の回答となる可能性が少なからずあるからである。視認可否の対象となる地物の選択範囲を広げることにより、このような無用な応答を回避でき、効率的に概略領域を見いだすことが可能となる。
先に説明した通り、概略領域の設定は、現在位置を推定する処理に先立つ前処理として行われるものである。現在位置推定装置は、上述の方法で概略領域を求めると、その中に存在する複数の地物を抽出して、存在領域を画定する処理に用いる。つまり、こうして抽出された複数の地物についての相対的な位置関係をユーザに問い合わせ、その結果に基づいて、存在領域を画定するのである。
本発明において、存在領域の画定は種々の方法を採ることができる。以下に画定方法の一例を示す。この方法では、まず、複数の地物のうち処理対象となる2つの地物を選択する。そして、選択された地物を包絡する凸多角形を求め、凸多角形を構成する辺のうち、2つの地物を結ぶ辺を選択する。辺の両端がそれぞれ異なる地物の頂点と重なる辺を選択すればよい。こうして選択された辺を延長すると、平面内は複数の領域に分割される。これらの各領域から、2つの地物を見た場合の相対的な位置関係は、領域ごとに定性的に相違する。従って、各領域について、ユーザから指定された相対的な位置関係に反しない領域を選択することで、存在領域の境界線を画定することができる。この方法によれば、比較的簡易な幾何学的処理で、境界線を画定することができる利点がある。
本発明では、ユーザが通行可能な道路をノード、リンクで表したネットワークデータを現在位置の推定に活用してもよい。ネットワークデータはユーザが移動可能な通路を表していると考えることができる。従って、現在位置推定装置は、ネットワークデータのうち、先に説明した地物を相対的な位置関係で視認可能な範囲、即ち存在領域内に存在するノードおよびリンク上のいずれかの地点を現在位置と推定することができるのである。例えば、歩行者を対象とした処理を行う場合、存在領域内に湖沼や自動車専用道路、線路などが存在すると、歩行者用のネットワークデータを参照することにより、歩行者が通行できないこれらの地点を現在位置の候補から速やかに外すことができ、簡易な処理で精度良く現在位置を推定することが可能となる。
ネットワークデータは種々の段階で活用することができる。例えば、存在領域を画定した後に、ネットワークデータを活用して、存在領域内のノード、リンクを抽出するようにしてもよい。また、存在領域を画定する段階でネットワークデータを活用し、複数の地物をユーザが入力した相対的な位置関係で視認可能となるノード、リンクの集合体として存在領域を求めるようにしてもよい。
上述の方法で、存在領域を求めた後、現在位置を更に絞り込む方法としては、例えば、その存在領域内の特定の地物の画像や属性をユーザに提示し、その地物が目の前に見えるか否かをユーザに入力させる方法を採ることができる。
本発明において、以上で説明した種々の特徴は、必ずしも全てを備えている必要はなく、その一部を省略したり、適宜、組み合わせたりして採用することができる。また、本発明は、上述した現在位置推定装置としての態様のみならず、コンピュータを用いてユーザの現在位置を推定するための現在位置推定方法として構成してもよい。更に、上述した現在位置推定を実現するためのコンピュータプログラムや、かかるコンピュータプログラムを記録した記録媒体として構成してもよい。ここで、記録媒体としては、フレキシブルディスクやCD−ROM、光磁気ディスク、ICカード、ROMカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置等、コンピュータが読取り可能な種々の媒体を利用できる。
本発明の実施例について、経路案内システムにおける現在位置推定機能として実現した場合を例にとって以下の順序で説明する。
A.システム構成:
B.経路探索・案内処理:
C.現在位置推定処理:
D.基準建物設定処理:
E.存在領域画定処理:
F.基準建物の選択:
G.変形例:
A.システム構成:
図1は実施例としての経路案内システムの構成を示す説明図である。本実施例では、歩行者用の経路案内システムとしての構成例を示すが、車両用の経路案内システムとして構成することもできる。経路案内システムは、携帯電話を利用した端末100とサーバ200とをネットワークINTで接続して構成されている。ネットワークINTは無線通信を利用したネットワークであり、LANやイントラネットのように限定的なものであってもよいし、インターネットのように広域的なものであってもよい。端末100は、携帯電話の他、いわゆる車両用のナビゲーション装置やPDA、ネットワーク通信機能を有するパーソナルコンピュータなどを利用することができる。歩行者用の経路案内システムとして構成する場合、車両用のナビゲーション装置は、車両から取り外して携帯可能としておくことが望ましい。
端末100は、ユーザの操作に応じて、経路探索および経路案内に必要な指示をサーバ200に送信するための機能を奏する。図中には、端末100の機能ブロックを併せて示した。端末100は、CPU、RAM、ROMを備えたマイクロコンピュータを制御装置として内蔵しており、このCPUはROMに記憶されたソフトウェアを実行することで、図示する各機能ブロックを構成する。これらの機能ブロックは、このようにソフトウェア的に構成する他、ハードウェア的に構成することも可能である。
通信部120は、ネットワークINTを介してサーバ200と通信する機能を奏する。GPS140は、全地球測位システム(Global Positioning System)を利用して、端末100の現在位置の緯度、経度を検出する。コマンド入力部130は、スイッチ等に対するユーザ操作に基づいて、経路探索や経路案内における目的地の指定、探索条件の指定、現在位置推定のための情報、その他のコマンドを入力する。表示制御部150は、端末100のディスプレイに、これらのコマンド入力用のメニューを表示したり、サーバ200から受信した経路案内データに基づいて地図を表示させたりする。主制御部110は、上述した各機能ブロックを統括制御することで、端末100の全体機能を制御する。
サーバ200は、端末100からのコマンドに基づいて、種々のデータベースを参照しながら、経路探索を行ったり、経路案内を行ったりする。また、サーバ200は、これらの処理過程で、端末100のGPS140が電波を受信できない状態にある時など、ユーザの現在位置が不明となっている場合には、ユーザと所定の情報授受を行って現在位置を推定する機能、つまり本発明の現在位置推定装置としての機能も有している。図中には、これらの機能を実現するための機能ブロックおよびデータベースの例を示した。各機能ブロックは、サーバ200のCPUが実行するコンピュータプログラムによって、ソフトウェア的に構成されるが、ハードウェア的に構成することも可能である。
サーバ200は、地図DB250を参照しながら、経路探索、経路案内、現在位置推定の各処理を実行する。地図DB250には、通路をノード、リンクで表したネットワークデータ252、地図描画用のポリゴンや文字データからなる描画データ254を有している。描画データ254には、建物などの各地物についての属性も記録されている。属性としては、例えば、建物の種別、名称、形状、高さ、色、外観(例えば、煉瓦造り、ガラス張りなど)が記録される。建物の写真を属性として記録してもよい。
経路案内DB260は、経路探索、案内の過程で端末100から入力されたり、サーバ200によって生成された種々のデータを格納する。かかるデータとしては、例えば、経路探索時にユーザが端末100を操作して指定した探索条件や、ユーザの現在位置、経路探索の結果を示す経路案内データなどが含まれる。
通信部210は、端末100とのネットワークINT経由での通信を制御する。経路探索部220は、経路案内DB260に格納されている探索条件に従って、地図DB250のうち主としてネットワークデータ252を参照して、ユーザから指定された出発地、目的地間の経路を探索する。探索された結果は、上述の通り、経路案内DB260に経路案内データとして格納される。経路案内部240は、経路案内DB260内の経路案内データおよび現在位置を参照しながら、ユーザが進むべき経路を地図上に案内表示する表示データを生成し、端末100に送信する。
推定エンジン230は、経路探索および経路案内の過程で、端末100からユーザの現在位置が取得できない状況が生じた場合に、現在位置を推定するための処理を実行し、またユーザとの間で処理に必要な情報の授受を行う。基準建物設定部232は、現在位置を推定するための前処理として、ユーザとのやりとりによって、処理に用いられるべき基準建物を設定する機能を奏する。境界画定部234は、上述の基準建物を用いて、ユーザとのやりとりによって、存在領域、即ち「現在位置」が存在し得る領域の境界を画定する機能を奏する。この境界の画定において、選択部231は、基準建物が多数ある場合に、境界画定部234が用いるべき基準建物を所定の規則に従って決定する機能を奏する。情報提供部232は、ユーザが現地で基準建物を特定するために画像や属性などの情報を提示する。境界画定部234は、こうして選択された基準建物の位置関係に関してユーザが入力した情報を用いて上述の境界の画定を行うのである。基準建物設定部232、推定エンジン230境界画定部の処理内容については、後述する。
B.経路探索・案内処理:
図2は経路探索処理および経路案内処理のフローチャートである。サーバ200の経路探索部220および経路案内部240が実行する処理であり、ハードウェア的にはサーバ200のCPUが実行する処理である。
経路探索処理では、サーバ200はユーザからの指定に従った方法で、経路探索の出発地を設定する。現在位置を出発地として用いる指定がなされている時には(ステップS10)、現在位置推定処理を実行して(ステップS12)、現在位置を取得する。現在位置を出発地としない旨の指定がなされている時には、端末100から出発地の指定を入力する(ステップS11)。出発地の指定には、例えば、ユーザが地図上の一点をクリックする方法や、住所を入力する方法などを採ることができる。
サーバ200は、次に経路探索の目的地、探索条件を入力する(ステップS14)。目的地は、出発地の指定と同様の方法、または目的地の名称やレストラン、ショップなどの種別から検索する方法などを採ることができる。探索条件としては、最短距離の経路を探索する旨の指定、所要時間最短の経路を探索する旨の指定、上り坂や階段を回避する経路を探索する旨の指定などが可能である。
サーバ200は、上述の各条件に基づき、経路探索処理を実行する(ステップS16)。経路探索は、ダイクストラ法によって行うことができる。ダイクストラ法は、周知の方法であるため、詳細な説明は省略するが、道路を表すノード、リンクにそれぞれ付されたコストが最小となる経路を探索する方法である。上り坂や階段を回避する探索条件が付されている場合には、上り坂等に対応するリンクのコストを大きい値に設定することにより、探索条件を満たす経路を探索することができる。他の探索条件が指定されている場合にも、同様に、探索条件に応じて各リンクのコストを設定することにより、それぞれの探索条件を満たす経路を探索することが可能である。経路探索が完了すると、サーバ200は、経路案内データを経路案内DB260に出力して、経路探索処理を終了する(ステップS18)。
サーバ200は、引き続き、経路案内データを参照して、経路案内処理を実行する。経路探索処理と経路案内処理とは一連の処理としてシーケンシャルに実行することも可能ではあるが、本実施例では、両者を別個の処理として構成した。こうすることにより、経路探索と経路案内とをそれぞれ別のタイミングで実行することができ、経路案内システムの利便性を向上させることができる。例えば、電車の乗車中に、電車を降りた後の駅から目的地までの経路探索を実行しておき、駅に到着した後、経路案内を開始するということが可能となるのである。
経路案内処理では、サーバ200は、経路案内DB260に格納された経路案内データを読み込む(ステップS50)。そして、現在位置推定処理によって(ステップS52)、ユーザの現在位置を取得し、案内表示処理(ステップS54)によって、ユーザが進むべき経路を地図上に表示する。サーバ200は、以上の処理をユーザが目的地に到着するまで繰り返し実行し(ステップS56)、経路案内処理を完了する。
C.現在位置推定処理:
図3は現在位置推定処理例を示す説明図である。本実施例では、サーバ200が、処理に用いる複数の建物を決定し、ユーザから見た状態でのこれらの複数の建物相互の相対的な位置関係を問い合わせ、その結果に基づいて現在位置の存在領域を画定する方法を採る。以下の説明では、図3(a)の地図上に示す建物A,B,C,Dに対する相対的な位置関係を入力した場合の処理を例にとって説明する。存在領域の画定に用いられる建物A〜Dを、以下、基準建物と呼ぶ。
ユーザからは、これらの建物相互の左右の位置関係が入力される。図3(b)はユーザにとって「建物Bが建物Aの左側に見える」場合の存在領域を示している。図中に太線で示した境界線よりも矢印で示した側であれば、ユーザは建物A,Bを、上述の位置関係で見ることができる。2つの建物の相対的位置関係が与えられた場合に、図3(b)に示す形で存在領域を画定する方法については後述する。
図3(b)で存在領域の境界線が建物A,B間で折れ曲がっているのは、上述の条件に適合する存在領域として、建物A、Bの間の領域も含めるものとしたからである。建物A,B間の領域では、ユーザの位置および姿勢に応じて、建物A、Bの相対的な位置関係は変化する。建物Aが建物Bの左に見えることもあれば、その逆に見えることもある。また、建物Aがユーザの前面に見え、建物Bがユーザの背後に見える場合、およびその逆に見える場合もある。本実施例では、「建物Bが建物Aの左側に見える」という可能性があることを考慮し、建物A、B間の領域も条件に合致する存在領域に含めている。本実施例では、左右いずれかに見えるという二者択一の形で建物の位置関係を問い合わせるものとしたが、この他に「建物の間に自分がいる」という選択肢を加えても良い。また、建物AおよびBが重なって見える、またはいずれか一方の建物しか見えないという選択肢を加えても良い。これらの選択肢は、建物およびユーザがほぼ一直線上に並んでいるという3者の相対的な位置関係を表すものである。このような位置関係が成立する範囲は比較的限られるため、上述の選択肢を加えることにより、速やかにユーザの現在位置を絞り込むことが可能となる。
同様にして、ユーザから、「建物Cが建物Bの左側に見える」という位置関係が入力された場合には、図3(c)に示す存在領域を画定することができる。「建物Dが建物Cの左側に見える」という位置関係が入力された場合には、図3(d)に示す存在領域を画定することができる。「建物Aが建物Dの左側に見える」という位置関係が入力された場合には、図3(e)に示す存在領域を画定することができる。図3(b)〜図3(e)で画定された存在領域を重ねることにより、図3(f)に示す通り、上述した全ての相対的な位置関係を満たす存在領域を求めることができる。
図4は存在領域の境界を画定する処理例を示す説明図である。図3において建物A、Bの相対的な位置関係が指定された場合の処理例、即ち図3(a)の境界を画定するための処理例を示した。建物A、Bは、図4(a)に示す位置に存在するとする。図の煩雑さを避けるため、図4(b)〜図4(d)では、背景の地図を省略して、建物A、Bの位置および形状を示すものとする。
境界を画定する処理では、この建物A、Bについて、図4(b)に示すように両者を包絡する凸多角形を求める。次に、この凸多角形の各辺のうち、異なる建物にまたがるものを抽出する。つまり、辺の一端が建物Aを表すポリゴンのいずれかの頂点と重なり、他端が建物Bを表すポリゴンのいずれかの頂点と重なる辺を抽出するのである。図4(b)の例では、辺s1、s2がこの辺に該当する。
図4(c)に示すように、抽出された辺s1、s2を延長する。これによって、平面は領域α0〜α5に分割される。建物A、Bの見え方は、各領域で異なっている。領域α0はユーザの姿勢によって建物A、Bの相対的な位置関係が変動する領域である。領域α1は建物Aのみが視認でき、建物Bは視認できない領域である。領域α2は逆に建物Bのみが視認でき、建物Aは視認できない領域である。もっとも、領域α1、α2においては、建物A、Bの高さ関係によっては、建物A、Bを前後に並んで見えることもある。領域α3は、建物Aの背後に建物Bが見える領域であり、ユーザの姿勢によっては建物Bが建物Aの左側に見える領域でもある。
領域α4は建物Aが建物Bの左側に見える領域である。領域α5は建物Bが建物Aの左側に見える領域である。以上より、ユーザから、「建物Bが建物Aの左側に見える」という位置関係が指定された場合には、領域α0、α3、α5がこの条件に該当することになる。従って、この条件に対しては、図4(d)に示すように、領域α0、α3、α5を合わせた範囲が存在領域として画定され、その境界線が特定されることになる。先に図3(b)で示した境界線は、こうして求められたものである。図3(c)〜図3(e)に示したそれぞれの境界も、同様の方法によって求めることができる。
図4の方法で画定される存在領域は、理論上は無限に広がることになるが、実際には建物を視認可能な範囲は限られている。従って、建物の高さに応じて設定される視認可能範囲も併せて考慮し、存在領域は、この視認可能範囲内の有限な領域として扱うことが好ましい。
図5は現在位置推定処理のフローチャートである。推定エンジン230(図1参照)が図3、4で説明した処理を実現するためのフローチャートであり、ハードウェア的にはサーバ200のCPUが実行する処理である。
現在位置推定処理では、サーバ200は、まず端末100のGPS140が有効に機能しているか否かを判断する(ステップS102)。GPS140が有効に機能している場合には、端末100から現在位置を入力し(ステップS104)、現在位置推定処理を終了する。
GPS140が機能していないと判断される場合には、図3、4に示した方法で現在位置を推定するための処理を実行する。サーバ200は、まず基準建物設定処理を行う(S110)。基準建物設定処理は、図3の建物A〜Dのように、存在領域の画定に用いられる基準建物を設定するための処理である。基準建物設定処理の内容は後述する。
サーバ200は、設定された基準建物を用いて存在領域画定処理を実行する(ステップS150)。図3および図4で説明した処理であり、ユーザから、基準建物間の相対的な位置関係の入力を受け、これに対応する存在領域を画定するのである。存在領域画定処理の内容についても後述する。基準建物設定処理および存在領域画定処理は、それぞれ存在領域が画定されるまで継続する。例えば、基準建物設定処理において設定された基準建物の位置関係によっては、存在領域を十分に絞り込むことができない場合もある。このような場合には、サーバ200は、存在領域は画定されていないと判断し、基準建物設定処理および存在領域画定処理を再試行するのである。
存在領域が画定されたか否かの判断は、種々の方法で行うことが可能である。例えば、存在領域が閉図形となった場合に画定されたと判断するようにしてもよいし、存在領域の面積または外接円の半径が所定値以下となった時に画定されたと判断するようにしてもよい。
サーバ200は、存在領域が画定されると、現在位置を更に精度良く特定するための処理を行う。このための処理として、サーバ200は、存在領域内の歩道リンクを抽出し(ステップS182)、その歩道リンク周辺の建物群を抽出する(ステップS184)。そして、端末100に、この抽出された建物の建物情報を提示し、ユーザからの回答を入力する(ステップS186)。
図中にこの入力のためのインタフェース画面DISPを例示した。図の例では、抽出された建物の画像を提示し、その建物の視認可否をユーザに確認する方法を採っている。この例では、「目の前に」見えるか否かを聞く形としているため、ユーザが「YES]と回答した場合には、ほぼピンポイントで現在位置を特定することが可能となる。ユーザが「NO」と回答した場合には、現在位置が特定されないため、サーバ200は他の建物について同様に視認可否を確認する(ステップS188)。
ステップS186では、「目の前」に限らず、単に建物の視認可否を訪ねるようにしてもよい。建物を視認可能な範囲は、建物の位置を中心とし、建物の高さに応じた半径で描いた円形領域と設定することができる。従って、ユーザが視認可と回答した場合には、ユーザの現在位置は上述の視認可能領域内にあると判断される。複数の建物についてユーザに視認可否を確認することにより、視認可能領域が重なり合う箇所が限定され、ユーザの現在位置を特定することが可能となる。本実施例では、ユーザステップS184までの処理で、存在領域が十分に絞り込まれているため、ユーザ付近の建物についてステップS186の質問および回答入力を行うことができ、現在位置を十分な精度で特定することが可能となる。
上述の実施例において、ステップS182〜S188の処理は省略してもよい。この処理を省略する場合には、例えば、存在領域中の任意の点、存在領域の重心などを現在位置と特定することができる。ステップS180までの処理で、存在領域が十分に絞り込まれている時には、上述の方法で現在位置を特定しても、経路探索処理および経路案内処理に支障が生じない程度の精度で現在位置を特定することが可能である。
D.基準建物設定処理:
図6は基準建物設定処理(前半)のフローチャートである。現在位置推定処理(図5)のステップS110に相当する処理である。基準建物設定部(図1参照)の機能に相当する処理であり、存在領域画定処理に用いる基準建物の設定を行う点で存在領域画定処理の前処理と言うこともできる。
基準建物設定処理が開始されると、サーバ200はユーザが視認可能な範囲で任意に選択した建物について建物属性を入力する(ステップS111)。図中に建物属性を入力するために端末100に表示されるインタフェース画面例DISP1を示した。この例では、名称、種別、高さ、色を入力可能となっている。建物の名称が分かっている場合には、「名称」欄にそれを入力する。「種別」では、病院、デパート、マンション、ホテルなどから該当するものを選択する。「高さ」欄には、建物の階数を入力する。色には、建物の外観の色を入力する。煉瓦造り、ガラス張りなど、外観を入力可能としてもよい。属性は、ここに例示した項目に限らず、その他種々の項目を入力可能としてよい。
サーバ200は、入力された属性に該当する候補建物を地図DB250から抽出する(ステップS112)。この場合、入力された属性に完全に一致するもののみを特定するようにしてもよいし、一定範囲で入力された属性との不一致を許容して地物を特定するようにしてもよい。後者の態様では、入力された項目のうち、所定数までは不一致であっても許容するという扱いをすることができる。例えば、図中に示した4つの項目のうち、1つまでは不一致を許容するものとすれば、「病院以外」の5階建ての白い建物や、「4階建て」の白い病院なども候補として抽出されることになる。不一致を許容する別の態様としては、各項目に対し許容誤差を認める扱いをしてもよい。図中の例では、例えば、5階建てという高さに対して「±1階」という誤差を許容すれば、4階建てや6階建ての白い病院も候補として抽出されることになる。基準建物設定処理では、ユーザはやや遠方にある建物についての属性を入力する可能性もあるから、このように一定の誤差を許容することにより、ユーザの見間違えなどによる属性の入力ミスを補充することができ、ユーザの意図に沿って候補の建物を抽出する可能性を高めることができる。
ステップS112の処理では、抽出された候補が一つに特定されないことがある。このような場合には、サーバ200は既に設定された基準建物や他の候補建物との距離によって、候補を一つに絞り込む(ステップS113、S114)。
図中にこの絞り込みの方法を示した。左側の図は、建物a,b,cの3つが候補となっている時に、基準建物BBとの距離に基づいて、これらのいずれか一つに絞り込む例を示している。円形の領域Ca〜Ccは、建物a〜cのそれぞれを視認可能な領域である。円形領域Cbbは基準建物BBを視認可能な範囲である。領域Ca〜Cc、Cbbの半径は、建物a〜c、BBの高さに応じて設定することができ、高さが高いほど半径も大きくなる。既に設定済みの基準建物BBが存在する場合、ユーザは、基準建物BBを視認可能な位置、即ち領域Cbb内に存在していることになる。一方、建物a〜cが候補として抽出されている時、ユーザは、建物a〜cのいずれかを視認可能な範囲、即ち領域Ca〜Ccのいずれかに存在していることになる。図示した位置関係では、領域Cbbと少なくとも一部が重なっているのは領域Caのみである。従って、ユーザは領域Cbb、Caが重なっている範囲内に存在していると考えられ、ユーザが入力した属性に対応するのは建物aであると特定することができる。
図の右側には、他の候補との距離に基づく絞り込みの例を示した。ユーザが入力した第1の属性に対応する候補が建物d1、d2であり、第2の属性に対応する候補が建物e1、e2であるとする。図中には、各建物の視認可能領域を併せて示した。ユーザは、建物d1またはd2を視認可能な位置にいるとともに、建物e1またはe2を視認可能な位置にいると考えられる。図示した位置関係では、候補d2と候補e1の視認可能領域が重なっている。このことから、第1の属性に対応する候補は建物d2であり、第2の属性に対応する候補は建物e1であると特定することができる。
サーバ200は、上述の処理の結果、属性に対応した候補が一つに絞られた場合には、その候補を基準建物として登録する(ステップS115)。ステップS114の処理を実行しても候補が一つに絞り込めない場合には、抽出された複数の建物を候補として記憶しておくことになる。上述の候補d1、d2および候補e1、e2の処理例のように、他の候補建物の絞り込みを行う過程で、併せて一つの候補への絞り込みが可能となることもあるからである。サーバ200は、また、地図DBから抽出した時点で候補が一つに特定されている場合には(ステップS113)、ステップS114による絞り込みをスキップして、抽出された候補を基準建物として登録する(ステップS115)。
ユーザが他の属性を入力する旨を指示した場合には(ステップS116)、サーバ200は、ステップS111〜S115までの処理を再度実行する。他の属性を入力しない旨の指示があった場合には(ステップS116)、サーバ200は後半の処理に移行する。
図7は基準建物設定処理(後半)のフローチャートである。先に説明した処理によって基準建物数が3以上となっている時には、サーバ200は、更に多くの基準建物を設定する必要はないと判断し(ステップS120)、基準建物設定処理を終了する。3個に満たない場合には、更に基準建物数を増やすための処理を実行する。存在領域を精度良く絞り込むためには、3個以上の基準建物を使うことが好ましいからである。もっとも、存在領域の画定にそれほど高い精度を要求されていない場合には、2個の基準建物が設定された時点で基準建物設定処理を終了してもよい。
基準建物数が3個に満たない場合、サーバ200は、既に登録されている基準建物に基づき概略存在領域を設定する(ステップS121)。概略存在領域とは、基準建物の視認可能範囲から定まる現在位置の存在領域である。図中に概略存在領域の設定方法を例示した。ここでは、建物B1,B2が基準建物として設定されているものとする。各建物については、先に説明した通り、視認可能領域を求めることができる。図示する通り、建物B1、B2に対する視認可能領域は、半径r1、r2の円形領域とした。半径r1、r2は、建物B1、B2の高さに応じて定めることができる。概略存在領域は、各基準建物の視認可能領域が重なり合う部分として特定することができ、図の例では、ハッチングを付した領域となる。
サーバ200は、こうして特定された概略存在領域から、基準建物となるべき候補建物を抽出する(ステップS122)。候補建物は種々の方法で抽出可能である。例えば、概略存在領域の中心付近に位置する建物を抽出するようにしてもよいし、多くの属性が対応づけられている建物を抽出するようにしてもよい。ユーザの視認しやすさを考え、所定以上の高さの建物を抽出するようにしてもよい。
サーバ200は、抽出された候補建物について、建物情報を提示し、ユーザからの視認可否についての回答を入力する(ステップS123)。図中にこのためのインタフェース画面例を示した。この例では、端末100に候補建物の画像を示すとともに、視認可否を入力するようになっている。ユーザの誤解を回避するという点では、このように候補建物の画像を提示することが好ましいが、必ずしも画像は必須ではなく、建物の名称、種別、階数、色などの属性で情報を提示するようにしてもよい。
提示した建物情報に対し、ユーザが視認可と回答した場合には(ステップS124)、サーバ200はこの建物を基準建物として登録するとともに、基準建物数を1つ加算する(ステップS125)。この結果、基準建物数が3以上となれば(ステップS120)、基準建物設定処理を終了し、3に満たない場合には、ステップS121以降の処理を再度実行することになる。再度実行する際には、ステップS125で新たに登録された基準建物も考慮して、概略存在領域を設定する(ステップS121)。従って、徐々に概略存在領域は狭まっていくことになる。
一方、提示した建物情報に対し、ユーザが視認不可と回答した場合には(ステップS124)、サーバ200は試行回数が予め設定された上限値に至るまで(ステップS126)、概略存在領域を拡張して(ステップS127)、ステップS122以降の処理を再度実行する。既存の概略存在領域を一定の相似比で拡張するようにしてもよいし、概略存在領域の周囲に一定幅の帯状領域を付加していくことで拡張するようにしてもよい。概略存在領域を拡張するのは、ステップS122で抽出された候補建物が視認不可と回答された場合には、ステップS121で設定された概略存在領域が誤っている可能性があるからである。
試行回数が上限値に至った場合には、この処理を行うことなく基準建物設定処理を終了する。
本実施例では、前半の処理(図6)において、ユーザが属性を入力した建物を基準建物として登録する処理例を示しているが、基準建物の設定は、かかる方法には限られない。例えば、前半の処理(図6)でユーザが属性を入力した建物は、図7における概略存在領域の設定にのみ用いるものとし、存在領域画定処理(図5のステップS150)で使用する基準建物は、後半(図7)の処理によって設定されたもののみを用いるようにしてもよい。
E.存在領域画定処理:
図8は存在領域画定処理のフローチャートである。図5のステップS150に相当する処理であり、境界画定部234(図1参照)の機能に相当する処理である。この処理では、図3および図4で説明した方法によって、存在領域が画定される。
サーバ200は、まず、基準建物の位置、形状および高さデータを入力する(ステップS151)。本実施例では、3つ以上の基準建物が入力されることになる。存在領域の画定は、図4に示した通り、2つの基準建物に対する境界画定処理(図4)を繰り返し実行することで行う。
サーバ200は、入力された基準建物のうち、境界画定処理の対象となる基準建物2つを選択する(ステップS152)。この選択は、任意の方法で行うことができるが、本実施例では、以下に示す3つの基準に基づいて選択するものとした。
優先度1:画定した境界に交差する位置関係にあるもの;
優先度2:存在領域内に存在する2つの建物;
優先度3:高さの低い建物;
基準建物として、図中に示した建物A(10階)、建物B(12階)、建物C(14階)が存在する場合を考える。既に建物A、B間の処理によって境界Lが画定され、図示するようにCを含む側の領域が存在領域として画定されているものとする。この状態では、サーバ200は次に建物A、Cまたは建物B、Cのいずれかを選択して境界画定処理を実行することになる。この組み合わせでは、いずれも画定済みの境界Lに交差する境界を画定することができるため、上述の「優先度1」「優先度2」の条件ではいずれか一方の組み合わせを選択することはできない。従って、優先度3の条件に従い、高さの低い建物、即ち建物Aを優先的に使用することになる。この結果、建物A、Cを基準建物として境界画定処理を実行することになる。建物A、Cを基準建物として境界画定処理を実行した時点で、まだ存在領域が画定されていない場合には、建物B、Cを基準建物として境界画定処理を実行することになる。
サーバ200は、ステップS152の処理で選択された基準建物の属性をユーザに提示するとともに、両者の相対的な位置関係の入力を行う(ステップS153)。図中に位置関係を入力するために端末100に表示されるインタフェース画面例を示した。この例では、2つの基準建物の画像を表示し、左右の位置関係を入力するようになっている。図の例では、ユーザからは、上の建物の方が下の建物よりも左側に見えていることになる。このインタフェース画面では、上または下の建物について、左または右を選択すると、他方の建物については連動して入力状態が変わる。例えば、図の状態において、ユーザが上の建物について「右」を選択すると、下の建物の入力状態は自動的に「左」に切り替わる。こうすることで入力の誤りを低減することができる。
本実施例では、左右関係を入力するようにしたが、これに代えて建物相互の前後関係を入力するようにしてもよい。ただし、ユーザから見て建物相互の位置関係を特定する場合には、前後関係よりも左右関係の方が容易かつ正確に特定できるという利点がある。
サーバ200は、基準建物の左右関係を入力すると、この結果に基づき境界画定処理を実行する(ステップS154)。境界画定処理は、図4で示した手法によって、ユーザが指定した左右関係に合致する存在領域を特定する処理である。
サーバ200は以上の処理を所定の完了条件が満たされるまで繰り返し実行する(ステップS154)。本実施例では、「存在領域が閉領域となること」を完了条件とした。先に示した図3の例では、図3(b)〜図3(e)の4本の境界が画定された時に存在領域が閉領域となり、完了条件が満たされることになる。完了条件が満たされていない場合には、基準建物の組み合わせを変更して(ステップS152)、相対的位置関係の入力(ステップS153)、境界画定(ステップS154)の各処理を再度実行することになる。サーバ200は以上の処理で画定した存在領域を出力して(ステップS156)、存在領域画定処理を終了する。
完了条件(ステップS155)は、上述の条件に限らず任意に設定可能である。例えば、閉図形になることに加えて存在領域の面積または外接円の半径が所定値以下となる条件を用いてもよい。また、存在領域の面積や外接円の半径を完了条件に用いる場合には、境界画定処理(ステップS154)で画定された境界のみで閉図形となるという条件を緩和し、図7で説明した概略存在領域の境界と併せて閉図形を構成するという条件を用いるようにしてもよい。完了条件は、このように存在領域自体の形状に基づく条件の他、全ての基準建物が一度は境界画定処理に利用されるという条件を用いてもよい。最も厳密な処理を行う場合には、基準建物の全組み合わせについて境界画定処理が完了するという条件とすることもできる。
F.基準建物の選択:
先に図8のステップS152で説明した通り、本実施例では、以下に示す3つの優先度に従って、基準建物の選択を行った。
優先度1:画定した境界に交差する位置関係にあるもの;
優先度2:存在領域内に存在する2つの建物;
優先度3:高さの低い建物;
以下では、これらの条件の意義について具体例を用いて説明する。
図9は基準建物の選択例を示す説明図である。それぞれ、基準建物として図示する位置に建物A〜Dが存在する場合における境界画定処理の手順および存在領域を例示した。
図9(a)について説明する。最初に境界画定処理を行う際には、画定した境界が存在しないから、優先度1、優先度2の条件に適合する建物は存在しないことになる。従って、優先度3の条件に従い、高さの低い建物が選択される。図9(a)の例では、10階の建物A、および12階の建物B、Cの一方が選択される。建物Bおよび建物Cはいずれを選択しても構わない。図の例では、建物Bが選択されたとする。この結果、建物A、Bを通る境界線L[1]が画定される。境界線L[1]のハッチングを付した側が存在領域を表している。以下の例でも同様である。先に図4に示した通り、境界線は建物A、B間で複雑な形状となるが、ここでは簡略化し、ただの直線で示した。
次に、優先度1の条件に従って、境界L[1]に交差する境界を画定可能な建物が選択される。図9(a)の例では、この条件に該当する組み合わせとして、建物AC、建物AD、建物BC、建物BDの4通りの組み合わせが可能である。これらの組み合わせは、いずれも境界線L[1]で画定される存在領域内に存在する2つの建物、つまり、この存在領域内に境界線を画定する建物であるため、優先度2の条件に対しては優劣がない。しかし、優先度3の条件によれば、高さの低い建物Aを通る組み合わせが選択されるため、建物AC、ADの組み合わせが候補として残ることになる。更に優先度3の条件により、建物C、Dのうち高さが低い建物Cが選択される。この結果、建物ACを用いて境界L[2]が画定される。
次に、再び、優先度1の条件に従って、まず境界L[2]に交差する境界を画定可能な建物を選択する。この例では、建物BD,建物AD、建物CD、建物BCの4通りがこの条件を満足することになる。ただし、完全に交差する境界を画定可能なのは建物BDのみである。建物AD、CDの組み合わせは、それぞれ境界L[2]上の建物を利用しているからである。このように本実施例では、優先度1の条件を考慮する場合には、画定した境界に「完全に」交差する位置関係にある建物をより優先して利用する。この結果、図9(a)の例では、建物BDが選択され、境界L[3]が画定される。
上述の通り、図9(a)の場合、本実施例の優先度1〜3に従って、基準建物を選択することにより、3回の境界線画定処理によって、効率的に存在領域APaを画定することが可能となる。
図9(b)について説明する。最初に処理する際には、優先度1、2に該当する建物が存在しないため、優先度3に従って、建物ACが選択され、境界L[1]が画定される。次の処理では、この境界L[1]に完全に交差する位置関係にある建物BDが選択され、境界L[2]が画定される。そして、3度目の処理では、境界L[1]、L[2]に完全に交差する位置関係の建物は存在しないため、優先度2の条件が効き、建物ABが選択され、境界L[3]が画定される。この結果、図9(b)でも3回の処理で存在領域APbを画定することができる。
図9(c)について説明する。最初に処理する際には、優先度1、2に該当する建物が存在しないため、優先度3に従って、建物ACが選択され、境界L[1]が画定される。次の処理では、この境界L[1]に完全に交差する位置関係にある建物BDが選択され、境界L[2]が画定される。そして、3度目の処理では、境界L[1]、L[2]に完全に交差する位置関係の建物は存在しないため、優先度2の条件が効き、建物ADが選択され、境界L[3]が画定される。図9(b)の場合と選択される建物が相違するのは、2回目の処理が完了した時点で絞り込まれている存在領域が異なるからである。図9(c)の場合も3回の処理で存在領域APcを画定することができる。
4つの基準建物が存在する場合、全ての組み合わせで境界線画定処理を実行すると、6回の処理が要求されることになる。これに対し、本実施例の優先度を利用すれば、図9に示したように、3回の処理で存在領域を画定することができる。図9では、4つの基準建物が存在する例を示したが、5つ以上の基準建物が存在する場合でも同様に存在領域を画定するための処理回数を低減することができ、効率的に存在領域を画定することができる。
以上で説明した本実施例の経路案内システムによれば、現在位置推定機能を備えることにより、ユーザの現在位置が不明な時でも、十分な精度で現在位置を推定することができる。この結果、現在位置が不明という原因によって経路探索、経路案内が利用できなくなるという弊害を緩和することができ、経路探索、経路案内の利便性を向上させることができる。上述の本実施例ではGPS140を有する端末100を利用する例を示したが、本実施例は、GPS140を備えない端末100で利用することも可能である。
G.変形例:
実施例では、図8,9で示したように、存在領域を面として求める例を示した。存在領域は、必ずしも面として求める必要はない。例えば、歩行者用のネットワークデータに含まれるノード、リンクの集合体としての網状領域を存在領域としてもよい。変形例では、このような網状の存在領域を求める処理について説明する。
図10は変形例としての存在領域画定処理のフローチャートである。実施例の図8で示した処理に代わるものである。サーバ200は、実施例と同様、基準建物位置、形状、高さデータの入力(ステップS151)、基準建物の選択(ステップS152)、建物の相対位置関係入力(ステップS153)、境界画定処理(ステップS154)を実行する。各処理は、実施例(図8)と同様である。
次に、サーバ200は、基準建物を視認可能な範囲を画定し(ステップS154a)、ステップS154で設定された境界および視認可能な範囲で囲まれる領域内に存在するノード、リンクを抽出する(ステップS154b)。図の右側に、これらの処理例を示した。ネットワークデータは、図示する地図上の各通路に対応したノード、リンクを格納している。ステップS154までの処理において、基準建物Ba,Bbを用いて、境界Labが求められたとする。存在領域は、図中のハッチングを付した側、即ち境界Labの下側であるとする。
図中の円Ca,Cbは、それぞれ基準建物Ba、Bbを中心とする円であり、視認可能な範囲を表している。円の半径は、基準建物Ba、Bbの高さに応じて設定することができる。ステップS154bの処理では、境界Lab、円Ca,Cbで囲まれた領域内のノードおよびリンクLnkを抽出する。図中では、抽出されたノード、リンクを太線で示した。変形例では、図中のハッチングで付された領域ではなく、抽出されたノードおよびリンクの集合体が存在領域となるのである。変形例では、視認可能な範囲(図中の円Ca,Cbを考慮してノード、リンクを抽出しているが、境界Labのみを考慮してノード、リンクを抽出するようにしてもよい。
以上の処理をサーバ200は所定の完了条件が満たされるまで(ステップS155A)、繰り返し実行する。完了条件としては、例えば、抽出されたノード、リンクの総数が所定値以下という条件を用いることができる。図の例においても、繰り返し処理を実行することで、境界Labに加え、更に多くの境界が求められれば、境界および基準建物を視認可能な範囲で囲まれる領域は狭くなり、抽出されるノード、リンクの総数も小さくなる。そして、この総数が所定値以下となったところで完了条件が満たされたと判断するのである。完了後、サーバ200は求められた存在領域を出力し(ステップS156)、この処理を終了する。
上述の存在領域画定処理が完了した後は、実施例と同様、図5のステップS182以降の処理を行うことになる。ただし、変形例では、存在領域自体が歩道リンクで構成されているため、ステップS182の処理は省略することができる。実施例では、ステップS182の処理を実行することで非常に多くの歩道リンクが抽出される可能性があるのに対し、変形例では、存在領域画定処理の時点で十分に歩道リンクを絞り込むことが可能である。従って、変形例では、現在位置の特定(ステップS184〜S188)の処理を効率的に行うことができ、精度良く現在位置を求めることができる利点がある。
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。実施例では、経路案内処理、経路探索処理の一機能として現在位置推定機能を有する場合を例示したが、本実施例の現在位置推定機能は、この他の用途に用いることも可能である。例えば、周辺のレストラン、ショップ等の情報を検索するサービスにおける現在位置推定機能として実現してもよい。これらのサービスに関わらず、現在位置を推定する固有の装置として構成することもできる。
実施例としての経路案内システムの構成を示す説明図である。 経路探索処理および経路案内処理のフローチャートである。 現在位置推定処理例を示す説明図である。 存在領域の境界を画定する処理例を示す説明図である。 現在位置推定処理のフローチャートである。 基準建物設定処理(前半)のフローチャートである。 基準建物設定処理(後半)のフローチャートである。 存在領域画定処理のフローチャートである。 基準建物の選択例を示す説明図である。 変形例としての存在領域画定処理のフローチャートである。
符号の説明
100…端末
110…主制御部
120…通信部
130…コマンド入力部
140…GPS
150…表示制御部
200…サーバ
210…通信部
220…経路探索部
230…推定エンジン
232…基準建物設定部
234…境界画定部
240…経路案内部
250…地図DB
252…ネットワークデータ
254…描画データ
260…経路案内DB

Claims (1)

  1. 地物の位置および高さ情報を記録した地図データベースと、
    4つ以上の前記地物について、ユーザによって視認された相互の相対的な位置関係を入力する位置関係入力部と、
    前記地図データベースを参照し、前記4つ以上の地物のうち2つの地物を処理対象の地物として選択する選択部と、
    前記2つの地物を通る境界線を画定するとともに、前記ユーザによって入力された前記2つの地物における左右関係または前後関係を表わす情報から前記境界線によって隔てられている何れか一方の領域を前記ユーザが存在する領域であると推定しつつ前記ユーザの位置が存在し得る領域を決定していき、3つ以上の前記境界線によって囲まれた領域を前記ユーザの位置が存在する領域として推定する境界画定部と
    を備える現在位置推定装置であって、
    前記選択部は、前記境界画定部において最初の前記境界線が画定される場合には前記4つ以上の地物の中から高さの低い2つの地物を前記処理対象の地物として選択し、2つ目以降の前記境界線が画定される場合には前記境界線の何れかに交差する境界線が画定されるように前記4つ以上の地物から2つの地物を選択する
    ことを特徴とする現在位置推定装置。
JP2006026399A 2006-02-02 2006-02-02 現在位置推定装置 Expired - Fee Related JP4717650B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006026399A JP4717650B2 (ja) 2006-02-02 2006-02-02 現在位置推定装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006026399A JP4717650B2 (ja) 2006-02-02 2006-02-02 現在位置推定装置

Publications (3)

Publication Number Publication Date
JP2007205948A JP2007205948A (ja) 2007-08-16
JP2007205948A5 JP2007205948A5 (ja) 2009-03-19
JP4717650B2 true JP4717650B2 (ja) 2011-07-06

Family

ID=38485533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006026399A Expired - Fee Related JP4717650B2 (ja) 2006-02-02 2006-02-02 現在位置推定装置

Country Status (1)

Country Link
JP (1) JP4717650B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101138241B1 (ko) 2007-10-29 2012-04-24 에스케이플래닛 주식회사 사용자 상호작용을 통한 보행경로 안내 방법 및 그에 관한이동 단말기
JP5558083B2 (ja) * 2009-11-27 2014-07-23 株式会社Nttドコモ 位置情報取得システム、位置情報取得装置、位置情報取得方法
EP2572543A4 (en) 2010-05-19 2017-03-29 Nokia Technologies Oy Extended fingerprint generation
EP2572542A4 (en) 2010-05-19 2017-01-04 Nokia Technologies Oy Crowd-sourced vision and sensor-surveyed mapping
WO2011144968A1 (en) 2010-05-19 2011-11-24 Nokia Corporation Physically-constrained radiomaps
JP5731999B2 (ja) * 2012-03-22 2015-06-10 株式会社ゼンリンデータコム ナビゲーション装置、ナビゲーション方法、およびプログラム
WO2018221453A1 (ja) * 2017-05-31 2018-12-06 パイオニア株式会社 出力装置、制御方法、プログラム及び記憶媒体
JP6885884B2 (ja) * 2018-01-19 2021-06-16 日本電信電話株式会社 位置特定装置、方法、及びプログラム
CN116124173A (zh) * 2019-05-24 2023-05-16 谷歌有限责任公司 用于将两个或更多个用户导航到会面位置的方法和设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002081954A (ja) * 2000-09-07 2002-03-22 Pioneer Electronic Corp 車載ナビゲーション装置
WO2004011881A1 (ja) * 2002-07-25 2004-02-05 Fujitsu Limited 移動体の位置推定装置、位置推定方法および位置推定プログラム
JP2005173748A (ja) * 2003-12-09 2005-06-30 Zenrin Co Ltd 電子地図データを利用した風景画像の撮像位置の特定
JP2005265494A (ja) * 2004-03-17 2005-09-29 Hitachi Ltd 車両位置推定装置およびこれを用いた運転支援装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002081954A (ja) * 2000-09-07 2002-03-22 Pioneer Electronic Corp 車載ナビゲーション装置
WO2004011881A1 (ja) * 2002-07-25 2004-02-05 Fujitsu Limited 移動体の位置推定装置、位置推定方法および位置推定プログラム
JP2005173748A (ja) * 2003-12-09 2005-06-30 Zenrin Co Ltd 電子地図データを利用した風景画像の撮像位置の特定
JP2005265494A (ja) * 2004-03-17 2005-09-29 Hitachi Ltd 車両位置推定装置およびこれを用いた運転支援装置

Also Published As

Publication number Publication date
JP2007205948A (ja) 2007-08-16

Similar Documents

Publication Publication Date Title
JP4717650B2 (ja) 現在位置推定装置
EP3465094B1 (en) User-specific landmarks for navigation systems
US7603231B2 (en) Navigation method and system having improved arrival detection function for large scale destination
JP4469790B2 (ja) 地図情報更新装置および地図情報更新方法
JP5454487B2 (ja) 地図情報表示装置
US20100268449A1 (en) Route planning apparatus and method for navigation system
JP2005308543A (ja) 地図表示機能を有する電子機器及びプログラム
JP2005221497A (ja) ナビゲーションシステムの表示方法と装置
US10552680B2 (en) Method, apparatus and computer program product for disambiguation of points of-interest in a field of view
US11886184B2 (en) Navigating an autonomous vehicle based upon an image from a mobile computing device
EP3635337B1 (en) Systems and methods for selecting a poi to associate with a navigation maneuver
JP2007193391A (ja) 施設選択装置及び施設選択方法
WO2010023819A1 (ja) 車載機器、情報通信システム、車載機器の通信制御方法およびプログラム
JP2020071176A (ja) 相乗り仲介システム、サーバ、プログラムおよび相乗り仲介方法
JP2003014481A (ja) 電子地図情報装置
JP5001742B2 (ja) ナビゲーション装置および地点登録方法
JP2000163689A (ja) ナビゲーションシステム
KR102362369B1 (ko) 여행스케줄링 기반의 쇼퍼서비스 방법 및 시스템
JP2006010326A (ja) 車両用ナビゲーション装置
JP2005164543A (ja) ナビゲーション装置および周辺施設の案内方法
CN111854768B (zh) 地图路线的确定方法和系统、终端和计算机可读存储介质
KR102069304B1 (ko) 여행스케줄링 기반의 쇼퍼서비스 방법 및 시스템
JP4886631B2 (ja) 順路計算装置、順路誘導装置、及び、順路計算方法
WO2016018496A1 (en) Systems and methods for the collection verification and maintenance of point of interest information
JP3934306B2 (ja) ナビゲーション装置

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20081117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101207

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110207

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110322

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: 20110330

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: 20140408

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees