(57)【特許請求の範囲】
【請求項１】
移動体の移動距離を検出する移動距離検出手段と、
前記移動体が進行する方位を推定方位として検出する推定方位検出手段と、
前記移動距離検出手段および前記推定方位検出手段の出力に基づき前記移動体が移動した軌跡を求める走行軌跡検出手段と、
前記移動体が所定の距離を移動する間または所定の時間に変化する前記推定方位の変化量を方位変化量として求める方位変化量検出手段と、
前記方位変化量検出手段が方位変化の開始を検出した地点を方位変化開始地点とし、方位変化の終了を検出した地点を方位変化終了地点として認識する方位変化開始終了地点認識手段と、
前記方位変化量検出手段により求められた方位変化量が、前記走行軌跡検出手段による走行軌跡中の前記方位変化開始地点から前記方位変化終了地点迄の間で最大の地点を特徴地点として検出する特徴地点検出手段と、
複数のノードを含む道路地図を記憶する記憶手段と、
前記記憶手段に記憶された前記複数のノードから前記移動体が走行したと推測されるノードを候補ノードとして抽出する候補ノード抽出手段と、
前記特徴地点における推定方位と方位変化の方向とに基づき、前記候補ノードの内から前記特徴地点に対応する対応ノードを決定する対応ノード決定手段と、
前記特徴地点と前記対応ノードとを結ぶベクトルを平行移動ベクトルとして求める平行移動ベクトル演算手段とを備え、
前記対応ノード決定手段は、前記候補ノードの内、前記候補ノードに入る入リンクの方位と前記候補ノードから出る出リンクの方位との間に前記特徴地点における推定方位が含まれ、かつ、前記候補ノードにおける前記入リンクの方位から前記出リンクの方位への変化の方位が前記特徴地点における推定方位の方位変化の方向と同じ候補ノードを前記対応ノードとして決定する、移動体の位置検出装置。
【請求項２】
前記移動距離検出手段により前記移動体が所定距離移動したか否かを判断する所定距離移動判断手段を、さらに備え、
前記候補ノード抽出手段は、
前記所定距離移動判断手段が前記所定距離移動したと判断し、前記方位変化量検出手段による方位変化量の監視を行なった後に、前記候補ノードとして抽出された、前記走行軌跡中の現在地点直前の候補ノードから出る出リンクを選択し、当該選択された出リンクが入リンクとして入るノードが、前記現在地点から所定の距離範囲内に存在するか否かを判断する所定距離内存在ノード判断手段と、
当該選択された出リンクの方位が、前記現在地点の前記推定方位から所定の方位範囲内にあるか否かを判断する所定方位内存在リンク判断手段とを備え、
前記所定距離内存在ノード判断手段により当該選択された出リンクが入リンクとして入るノードが前記現在地点から所定の距離範囲内に存在すると判断され、かつ、前記所定方位内存在リンク判断手段により当該選択された出リンクの方位が前記現在地点の前記推定方位から所定の方位範囲内にあると判断されたとき、当該選択された出リンクが入リンクとして入るノードを前記候補ノードとして抽出する、請求項１に記載の移動体の位置検出装置。
【請求項３】
移動体の移動距離を検出する移動距離検出手段と、前記移動体が進行する方位を推定方位として検出する推定方位検出手段と、複数のノードを含む道路地図を記憶する記憶手段と、演算手段とを備えた移動体の位置検出装置のコンピュータに実行させる、コンピュータ読取可能な位置検出プログラムを記録した記録媒体であって、
前記移動距離検出手段が出力する前記移動距離を入力する移動距離入力ステップと、
前記推定方位検出手段が出力する前記推定方位を入力する推定方位入力ステップと、
前記入力された移動距離および前記推定方位に基づき前記移動体が移動した軌跡を求める走行軌跡検出ステップと、
前記移動体が所定の距離を移動する間または所定の時間に変化する前記推定方位の変化量を方位変化量として求める方位変化量検出ステップと、
前記方位変化量検出ステップが方位変化の開始を検出した地点を方位変化開始地点とし、方位変化の終了を検出した地点を方位変化終了地点として認識する方位変化開始終了地点認識ステップと、
前記方位変化量検出ステップにより求められた方位変化量が、前記走行軌跡検出ステップによる走行軌跡中の前記方位変化開始地点から前記方位変化終了地点迄の間で最大の地点を特徴地点として検出する特徴地点検出ステップと、
前記記憶手段に記憶された前記複数のノードから前記移動体が走行したと推測されるノードを候補ノードとして抽出する候補ノード抽出ステップと、
前記特徴地点における推定方位と方位変化の方向とに基づき、前記候補ノードの内から前記特徴地点に対応する対応ノードを決定する対応ノード決定ステップと、
前記特徴地点と前記対応ノードとを結ぶベクトルを平行移動ベクトルとして求める平行移動ベクトル演算ステップとを前記コンピュータに実行させ、
前記対応ノード決定ステップは、前記候補ノードのうち、前記候補ノードに入る入リンクの方位と前記候補ノードから出る出リンクの方位との間に前記特徴地点における推定方位が含まれ、かつ、前記候補ノードにおける前記入リンクの方位から前記出リンクの方位への変化の方位が前記特徴地点における推定方位の方位変化の方向と同じ候補ノードを前記対応ノードとして決定する、移動体の位置検出プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は移動体の位置検出装置および位置検出プログラムを記録した記録媒体に関し、特に、移動体の進行する方位の変化が連続し、かつ、方位変化の方向が変化する２段以上のカーブを移動体が走行する場合に、移動体の現在位置を検出する移動体の位置検出装置および位置検出プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
従来より、自動車等の移動体の運行を支援するため、移動体の現在位置を道路地図上に表示するナビゲーションシステムが知られている。このナビゲーションシステムにおいて、移動体の道路地図上の現在位置を得るための手法として、推測航法が知られている。推測航法は、移動体に搭載した距離センサおよび方位センサの出力に基づき、移動体の走行に伴って生ずる距離変化量および方位変化量を積算しながら移動体の現在位置を推測する航法である。
【０００３】
そして、推測航法により得られる移動体の走行軌跡を、道路地図と照合することにより、移動体の現在位置を道路地図上の座標に対応させる処理（マップマッチング）が行なわれる。このマップマッチングは、推測航法により求められた走行軌跡を道路地図上で平行移動させることにより、走行軌跡と道路地図とを対応させるものである。したがって、走行軌跡と平行移動量とを求めることにより、車両の現在位置を道路地図上の座標に対応させることができる。
【０００４】
このマップマッチングでは、推測軌跡中の特徴点としてコーナを用いることが行なわれている。図８は、従来のナビゲーション装置で行なわれるマップマッチング処理を説明するための図である。図８を参照して、道路地図として、地図上の座標を示すノード１０１，１０２，１０３と、２つのノードを接続するリンクＡ〜Ｇが表わされている。図８は、図面上側を北方向として表わされている。推測航法により求められた走行軌跡１００は、移動体が南方向に直進した後、カーブして進行方向を東へ変更して、その後東方向へ直進する軌跡として表わされている。
【０００５】
走行軌跡１００を特定するための特徴点Ｋが、方位センサから得られる方位の変化量をもとに走行軌跡のカーブ部分から求められる。図９は、移動体が図８に示す走行軌跡１００を走行した場合の各地点における方位を示す図である。ここで、移動体の方位は、北方向を基準にして、移動体の方位が北方向と時計と反対回りになす角で示される。たとえば、移動体の方位が南方向である場合には、π［ｒａｄ］であり、移動体の方位が東方向である場合には３／２π［ｒａｄ］となる。
【０００６】
図９に示すように、移動体の方位は、南方向（π［ｒａｄ］）から東方向（３／２π［ｒａｄ］）に変動している。この方位が変動している区間が移動体がカーブ区間となる。
【０００７】
図１０は、移動体が図８に示す走行軌跡１００を走行した場合の各地点における方位変化量を示す図である。方位変化量は、移動体が直進移動しているときには０となり、移動体が方位を変化している間、すなわち、移動体がカーブしている間に高い値となる。走行軌跡中の特徴点を一意に定めるため、図１０に示す方位変化量の曲線の重心の位置を、走行軌跡中の特徴点Ｋとして検出するようにしている。
【０００８】
図８に戻って、走行軌跡中の特徴点Ｋと対応する道路地図中のノードを対応させるため、道路地図中のノードから対応づけられる可能性のあるノードが選択される。選択されるノードは、走行軌跡中の特徴点Ｋから所定の範囲内にあるノードが選択される。ここでは、ノード１０１，１０２，１０３の３つのノードが選択される。そして、いずれのノードが特徴点Ｋに対応するノードであるかを決定するため、それぞれのノードについて、特徴点Ｋとの比較が行なわれる。走行軌跡より、カーブが開始される前の進行方位（南方向（π［ｒａｄ］））とカーブが終了したときの方位（東方向（３／２π［ｒａｄ］））が求められ、２つの方位を有するリンクと接続されたノードが選択される。
【０００９】
ノード１０１について言えば、ノード１０１に接続されたリンクは、リンクＡ，Ｂ，Ｃである。ここで、ノードに接続されたリンクには、ノードに入る入リンクと、ノードから出る出リンクの２種類がある。たとえば、リンクＡについて言えば、ノード１０１に入る入リンクとすれば、入リンクＡの方位は南方向となる。リンクＡをノード１０１から出る出リンクとすれば、出リンクＡの方位は北方向となる。これらを考慮して、カーブが開始される前の方位に対応する入リンクとカーブが終了した後の方位に対応する出リンクとが存在するか否かが、すべてのリンクＡ，Ｂ，Ｃについて調べられる。その結果、ノード１０１に入る入リンクＡとノード１０１から出る出リンクＢとが対応するので、ノード１０１が特徴点Ｋに対応する対応ノードとして検出される。
【００１０】
ノード１０２とノード１０３については、走行軌跡でカーブが開始される前の方位とカーブが終了したときの方位とに対応する入リンクおよび出リンクがないので、特徴点Ｋに対応する対応ノードとしては選択されない。
【００１１】
このようにして求められた走行軌跡中の特徴点Ｋと、これに対応する道路地図中のノード１０１とが決定される。そして、特徴点Ｋを始点とし、ノード１０１を終点とするベクトル１１０が平行移動量として求められる。
【００１２】
走行軌跡１００と平行移動量を示すベクトル１１０とが求まることにより、移動体の現在位置を道路地図中の座標点として求めることができる。
【００１３】
【発明が解決しようとする課題】
しかしながら、従来のマップマッチングにおいては、移動体が１つの方向に方位変化する単純なカーブを走行する場合には、正確な平行移動量を求めることができるが、方位変化の方向が変化する２段以上のカーブを移動体が走行する場合には、正確な平行移動量を求めることができない。
【００１４】
図１１は、移動体が２段カーブを走行したときの走行軌跡を示す図である。走行軌跡２００は、移動体が図面左方向から走行してポイントＰ１を通過し、ポイントＰ２、Ｐ３の順にポイントＰ２０までを通過する軌跡として表わされている。
【００１５】
図１２は、移動体が図１１に示す走行軌跡２００を走行した場合の各地点における移動体の方位を示す図である。移動体はポイントＰ１からポイントＰ３まで東北東の方向に直進運動を行なった後、ポイントＰ３からポイントＰ９まで右方向にカーブを行ない、ポイントＰ９からポイントＰ１７まで左方向のカーブを行ない、ポイントＰ１７からポイントＰ２０まで北方向に直進移動している。このように、移動体は、ポイントＰ３からポイントＰ９までの右方向のカーブとポイントＰ９からポイントＰ１７までの左方向のカーブとからなる２段カーブを走行している。
【００１６】
図１３は、移動体が図１１に示す走行軌跡２００を走行した場合の各地点における方位変化量を示す図である。図を参照して、方位変化量Δθは、走行軌跡中のポイントＰ３からＰ９までの１つの右カーブにおける曲線と、ポイントＰ９からポイントＰ１７までの１つの左カーブにおける曲線とで、２つの山型を形成している。この２つの山型からなる曲線における重心は、ポイントＰ１１となる。したがって、このポイントＰ１１が走行軌跡中の特徴点となる。
【００１７】
一方、カーブが始まる前の方位は、ポイントＰ１を始点とし、ポイントＰ３を終点とするベクトルが示す方向であり、カーブが終了した後の方位は、ポイントＰ１７を始点とし、ポイントＰ２０を終点とするベクトルが示す方位となる。従来のマップマッチングでは、カーブが始まる前の方位とカーブが終了した後の方位とをもとに、道路地図中の対応ノードを求めていたので、図１１に示す２段カーブの走行軌跡においては、カーブが始まる前に直進移動する軌跡とカーブが終了した後に直進移動する軌跡との間の距離が離れているので、適切な対応ノードを求めることができない。
【００１８】
このように、従来のマップマッチングでは、方位変化の方向が１つの単純なコーナのみに対応することができるが、方位変化の方向が変化する２段以上のカーブを移動体が走行する場合には、対応できないものであった。
【００１９】
これは、従来のマップマッチングが単純なコーナのみしか考慮していなかったため、走行軌跡から特徴点を検出する際に、２段カーブの特徴点を適切に特定することができないことによるものである。また、２段カーブを１つのコーナとして処理するので、地図上の対応ノードを一意に特定することができないものであった。
【００２０】
この発明は上述の問題点を解決するためになされたもので、移動体の方位変化の方向が変化する２段以上のカーブを移動体が走行する場合であっても、走行軌跡から地図上の位置を求めるための平行移動量を正確かつ容易に求めることができる移動体の位置検出装置を提供することを目的とする。
【００２２】
【課題を解決するための手段】
上述の目的を達成するためこの発明のある局面による移動体の位置検出装置は、
移動体の移動距離を検出する移動距離検出手段と、
前記移動体が進行する方位を推定方位として検出する推定方位検出手段と、
前記移動距離検出手段および前記推定方位検出手段の出力に基づき前記移動体が移動した軌跡を求める走行軌跡検出手段と、
前記移動体が所定の距離を移動する間または所定の時間に変化する前記推定方位の変化量を方位変化量として求める方位変化量検出手段と、
前記方位変化量検出手段が方位変化の開始を検出した地点を方位変化開始地点とし、方位変化の終了を検出した地点を方位変化終了地点として認識する方位変化開始終了地点認識手段と、
前記方位変化量検出手段により求められた方位変化量が、前記走行軌跡検出手段による走行軌跡中の前記方位変化開始地点から前記方位変化終了地点迄の間で最大の地点を特徴地点として検出する特徴地点検出手段と、
複数のノードを含む道路地図を記憶する記憶手段と、
前記記憶手段に記憶された前記複数のノードから前記移動体が走行したと推測されるノードを候補ノードとして抽出する候補ノード抽出手段と、
前記特徴地点における推定方位と方位変化の方向とに基づき、前記候補ノードの内から前記特徴地点に対応する対応ノードを決定する対応ノード決定手段と、
前記特徴地点と前記対応ノードとを結ぶベクトルを平行移動ベクトルとして求める平行移動ベクトル演算手段とを備え、
前記対応ノード決定手段は、前記候補ノードの内、前記候補ノードに入る入リンクの方位と前記候補ノードから出る出リンクの方位との間に前記特徴地点における推定方位が含まれ、かつ、前記候補ノードにおける前記入リンクの方位から前記出リンクの方位への変化の方位が前記特徴地点における推定方位の方位変化の方向と同じ候補ノードを前記対応ノードとして決定する。
【００２４】
好ましくは、移動体の位置検出装置は、
前記移動距離検出手段により前記移動体が所定距離移動したか否かを判断する所定距離移動判断手段を、さらに備え、
前記候補ノード抽出手段は、
前記所定距離移動判断手段が前記所定距離移動したと判断し、前記方位変化量検出手段による方位変化量の監視を行なった後に、前記候補ノードとして抽出された、前記走行軌跡中の現在地点直前の候補ノードから出る出リンクを選択し、当該選択された出リンクが入リンクとして入るノードが、前記現在地点から所定の距離範囲内に存在するか否かを判断する所定距離内存在ノード判断手段と、
当該選択された出リンクの方位が、前記現在地点の前記推定方位から所定の方位範囲内にあるか否かを判断する所定方位内存在リンク判断手段とを備え、
前記所定距離内存在ノード判断手段により当該選択された出リンクが入リンクとして入るノードが前記現在地点から所定の距離範囲内に存在すると判断され、かつ、前記所定方位内存在リンク判断手段により当該選択された出リンクの方位が前記現在地点の前記推定方位から所定の方位範囲内にあると判断されたとき、当該選択された出リンクが入リンクとして入るノードを前記候補ノードとして抽出する。
【００２５】
この発明の他の局面による移動体の位置検出プログラムを記録した記録媒体は、
移動体の移動距離を検出する移動距離検出手段と、前記移動体が進行する方位を推定方位として検出する推定方位検出手段と、複数のノードを含む道路地図を記憶する記憶手段と、演算手段とを備えた移動体の位置検出装置のコンピュータに実行させる、コンピュータ読取可能な位置検出プログラムを記録した記録媒体であって、
前記移動距離検出手段が出力する前記移動距離を入力する移動距離入力ステップと、
前記推定方位検出手段が出力する前記推定方位を入力する推定方位入力ステップと、
前記入力された移動距離および前記推定方位に基づき前記移動体が移動した軌跡を求める走行軌跡検出ステップと、
前記移動体が所定の距離を移動する間または所定の時間に変化する前記推定方位の変化量を方位変化量として求める方位変化量検出ステップと、
前記方位変化量検出ステップが方位変化の開始を検出した地点を方位変化開始地点とし、方位変化の終了を検出した地点を方位変化終了地点として認識する方位変化開始終了地点認識ステップと、
前記方位変化量検出ステップにより求められた方位変化量が、前記走行軌跡検出ステップによる走行軌跡中の前記方位変化開始地点から前記方位変化終了地点迄の間で最大の地点を特徴地点として検出する特徴地点検出ステップと、
前記記憶手段に記憶された前記複数のノードから前記移動体が走行したと推測されるノードを候補ノードとして抽出する候補ノード抽出ステップと、
前記特徴地点における推定方位と方位変化の方向とに基づき、前記候補ノードの内から前記特徴地点に対応する対応ノードを決定する対応ノード決定ステップと、
前記特徴地点と前記対応ノードとを結ぶベクトルを平行移動ベクトルとして求める平行移動ベクトル演算ステップとを前記コンピュータに実行させ、
前記対応ノード決定ステップは、前記候補ノードのうち、前記候補ノードに入る入リンクの方位と前記候補ノードから出る出リンクの方位との間に前記特徴地点における推定方位が含まれ、かつ、前記候補ノードにおける前記入リンクの方位から前記出リンクの方位への変化の方位が前記特徴地点における推定方位の方位変化の方向と同じ候補ノードを前記対応ノードとして決定するための移動体の位置検出プログラムを記録する。
【００２６】
これらの発明に従うと、移動体の方位変化の方向が変化する２段以上のカーブを移動体を走行する場合であっても、走行軌跡から地図上の位置を求めるための平行移動量を正確かつ容易に求めることが可能な移動体の位置検出装置および位置検出プログラムを記録した記録媒体を提供することができる。
【００２７】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。なお、図中同一符号は同一または相当する部材を示す。
【００２８】
図１は、本発明の実施の形態の１つにおける移動体の位置検出装置の概略構成を示すブロック図である。移動体の位置検出装置は、車両等の移動体に搭載され、移動体の進行する方位を検出するための方位センサ１と、移動体の走行した距離を計測するための距離センサ２と、方位センサ１および距離センサ２の出力に基づき移動体が走行した軌跡を求めるための走行軌跡演算部３と、道路地図等の道路地図データを記憶するための地図データ記憶部５と、走行軌跡演算部３で求めた走行軌跡と地図データ記憶部５に記憶されている道路地図データとから道路地図上の車両の現在位置を検出するためのマップマッチング処理部４と、道路地図および移動体を示すマークを表示する表示部６とを含む。
【００２９】
方位センサ１は、ジャイロセンサであり、車両が進行する方位を検出する。ジャイロセンサとしては、振動ジャイロ、光ファイバジャイロ、差動型車輪速センサを用いることができる。また、ジャイロセンサとは別に単位時間あたりの回転角度データを出力する地磁気センサを用いることができる。さらに、地磁気センサとジャイロセンサとを組合せてもよい。
【００３０】
距離センサ２は、車輪の回転数を検出することにより移動体の単位時間あたりの走行距離を算出する。また、ドップラシフト等に基づいて移動体の走行速度を算出することにより、移動体の単位時間あたりの走行距離を算出するセンサを用いることができる。
【００３１】
走行軌跡演算部３は、距離センサ２から出力される距離データΔｌと方位センサ１から出力される回転角度データΔθに基づいて、距離データΔｌの東西方向成分Δｘ（＝Δｌ×ｃｏｓθ）と南北方向成分Δｙ（＝Δｌ×ｓｉｎθ）を算出する。そして、従前の位置データ（Ｐｘ′，Ｐｙ′）に対して算出した東西方向成分Δｘと南北方向成分Δｙとを加算することにより、現在位置データ（Ｐｘ，Ｐｙ）を算出する。このように、移動体がたとえば２［ｍ］移動するごとに現在の位置データを算出する処理を繰返して行なうことにより、移動体の走行軌跡が求まる。
【００３２】
地図データ記憶部５は、たとえば１［ｋｍ］四方の所定の範囲に区切られた道路地図データが記憶されている。地図データ記憶部は、フラッシュメモリを含む半導体メモリやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等が使用可能である。道路地図データは、道路地図上の座標点を示すノードと、２つのノードを接続するリンクと、リンクが示す方位とを含む。
【００３３】
マップマッチング処理部４は、走行軌跡演算部３で求められた走行軌跡と、地図データ記憶部５に記憶されている道路地図データとを照合することにより、走行軌跡の平行移動量を求める。これにより、走行軌跡演算部３で求められた移動体の現在の座標（Ｐｘ，Ｐｙ）を平行移動量分だけ移動させることにより、道路地図中の移動体の現在の座標を求める処理を行なう。
【００３４】
表示部６は、液晶表示装置であり、地図データ記憶部５に記憶されている道路地図を表示する。また、マップマッチング処理部４で求められた道路地図上の移動体の現在位置に移動体を示すマークをその進行方向がわかるように道路地図に重畳して表示する。これにより移動体の操縦者は、表示部６に地図と移動体を示すマークとが表示されるので、移動体がどの地点を走行しているのかを認識することができる。
【００３５】
走行軌跡演算部３とマップマッチング処理部４とで行なう処理を、ＣＰＵ（中央演算装置）７で行なうようにしてもよい。この場合には、走行軌跡演算部３とマップマッチング処理部４とで行なわれる処理は、プログラムとして記載され、ＣＤ−ＲＯＭ８に記憶される。ＣＰＵ７は、ＣＤ−ＲＯＭ８に記憶されているプログラムを読込んで、それを実行することにより、走行軌跡演算部３とマップマッチング処理部４とで行なう処理と同じ処理を実行する。
【００３６】
図２は、本実施の形態における移動体の位置検出装置で行なわれるマップマッチング処理を説明するための図であり、移動体の走行軌跡とその周辺の道路地図データとの一例を示す。図を参照して、移動体の走行軌跡２００は、移動体がポイントＰ１からＰ５，Ｐ１０，Ｐ１５を通ってＰ２０に至る軌跡として示されている。走行軌跡２００は、図１１で示した走行軌跡と同じ軌跡である。したがって、移動体が走行軌跡２００を走行するときの方位は、図１２に示す移動体の方位の変化となる。
【００３７】
道路地図データは、道路地図上の座標点を示すノードＮ１〜Ｎ１１までの１１個のノードと、ノードを接続するリンクＬ１〜Ｌ１０が示されている。ノードとリンクとの関係は、たとえば、リンクＬ１は、ノードＮ１とノードＮ２とを結ぶリンクである。同様に、他のリンクは、２つのノードを結ぶリンクとなる。ここで示す道路地図データは、１つのノードに対して２つのリンクが接続されている。たとえば、ノードＮ２についてみれば、リンクＬ１とリンクＬ２とが接続されている。これは、ここに示す道路地図データが１本道であることによるものである。道路は、交差点等の２本の道路が交わる場合があり、この場合には１つのノードに対して３つ以上のリンクが接続されることになる。
【００３８】
次に、本実施の形態における位置検出装置で行なわれるマップマッチング処理について説明する。図３は、本実施の形態における位置検出装置で行なわれるマップマッチング処理の流れを示すフロー図である。図を参照して、マップマッチング処理は、方位変化の監視処理（ステップＳ０２）と、候補ノードの選択処理（ステップＳ０３）と、平行移動量計算処理（ステップＳ０４）とを含む。これらの処理は移動体がＸ［ｍ］移動するごとに行なわれる。
【００３９】
マップマッチング処理は、まず、ステップＳ０１において移動体がＸ［ｍ］移動したか否かを判断し、Ｘ［ｍ］移動するまで待機状態となる。移動体がＸ［ｍ］進んだか否かは、距離センサ２の出力に基づき判断される。移動体がＸ［ｍ］進んだ場合には（ステップＳ０１でＹＥＳ）、方位変化の監視処理（ステップＳ０２）、候補ノードの選択処理（ステップＳ０３）、平行移動量計算処理（ステップＳ０４）の順に３つの処理が行なわれる。これら３つの処理が終了すると、ステップＳ０１に戻る。移動体がＸ［ｍ］移動するごとに３つの処理が繰返して行なわれる。
【００４０】
図４は、図３のステップＳ０２で行なわれる方位変化の監視処理の流れを示すフロー図である。図を参照して、方位変化の監視処理は、方位変化の状態を示すフラグが「変化終了」か否かが判断される（ステップＳ１１）。フラグが「変化終了」の場合には（ステップＳ１１でＹＥＳ）、フラグを「変化待ち」に設定する（ステップＳ１２）。フラグが「変化終了」でない場合には（ステップＳ１１でＮＯ）、何も行なわずステップＳ１３に進む。フラグが「変化終了」の場合にフラグを「変化待ち」に設定するのは、フラグが「変化終了」の場合にのみ平行移動量計算処理（図３のステップＳ０４）を１回のみ行なうためである。すなわち、平行移動量の計算処理を２回続けて行なうことがないようにするためである。
【００４１】
ステップＳ１３では、方位センサ１でＸ［ｍ］前に検知された移動体の方位と、現在の移動体の方位との差Δθを求める。これにより、移動体がＸ［ｍ］前の位置にあったときから現在の位置にあるときまでに、移動体の方位が変化した方位変化量を求めることができる。図５に、移動体が図２に示す走行軌跡２００を走行した場合の各地点における方位変化量を示す。なお、図５に示す方位変化量の曲線は図１１に示した方位変化量の曲線と同じである。
【００４２】
次に、フラグが「変化待ち」か否かを判断する（ステップＳ１４）。フラグが「変化待ち」の場合には、方位変化量Δθがしきい値θ1 より大きいか否かを判断する（ステップＳ１５）。方位変化量Δθがしきい値θ1 よりも大きい場合は、フラグを「変化中」に設定し（ステップＳ１６）、最大旋回角を初期化する（ステップＳ１７）。方位変化量Δθがしきい値θ1 よりも大きくない場合には（ステップＳ１５でＮＯ）、何も行なわず処理を終了する。
【００４３】
ステップＳ１７において最大旋回角を初期化する場合に、ステップＳ１３で方位変化量Δθを求めたときの移動体の位置、すなわち、走行軌跡２００上の位置座標と、移動体がその位置にあるときの推定方位と方位変化の方向とが方位変化量Δθとともに記憶される。方位変化の方向については後で説明する。
【００４４】
ステップＳ１５において、方位変化量Δθがしきい値θ1 よりも大きいと判断された場合は、移動体が方位変化を開始したことを示す。これは移動体が直線の走行からカーブの走行に移行したことを示すものである。ここで、図５を参照して、方位変化量Δθがしきい値θ1 を超えるのは、ポイントＰ４である。したがって、ステップＳ１５において、方位変化量Δθがしきい値θ1 よりも大きいと判断されるのは、移動体がポイントＰ４の位置にあるときである。また、走行軌跡２００中で、ポイントＰ１からポイントＰ３までが直進であり、ポイントＰ３がカーブ区間の開始を示す位置として検出される。
【００４５】
ステップＳ１４において、フラグが「変化待ち」でない場合、すなわちフラグが「変化中」の場合には、ステップＳ１３で求めた方位変化量Δθが最大か否かが判断される（ステップＳ１８）。このとき、ステップＳ１３で求められた方位変化量Δθは、最大旋回角として記憶されている方位変化量と比較される。
【００４６】
ステップＳ１３で求められた方位変化量Δθが最大旋回角として記憶されている方位変化量よりも大きい場合には（ステップＳ１８でＹＥＳ）、最大旋回角をステップＳ１３で求められた方位変化量Δθに設定する（ステップＳ１９）。これにより、最大旋回角には、移動体がカーブし始めてから最大の方位変化量が記憶される。方位変化量Δθが最大旋回角に記憶されている方位変化量よりも大きくない場合にはステップＳ１９の処理は行なわれない。
【００４７】
ステップＳ１９において、最大旋回角に方位変化量Δθを設定する場合に、ステップＳ１３で方位変化量Δθを求めたときの移動体の位置、すなわち、走行軌跡２００上の位置座標と、移動体がその位置にあるときの推定方位と方位変化の方向とが方位変化量Δθとともに記憶される。
【００４８】
方位変化の方向とは、たとえば、移動体が走行軌跡２００のポイントＰ４にあるときの方位変化の方向とは、移動体がＰ３にあるときの方位から移動体がＰ４にあるときの方位へ変化する方向を言う。図１２を参照して、ポイントＰ３にあるときの方位はポイントＰ４にあるときの方位よりも大きい。ポイントＰ３からポイントＰ４に移動体が移動したときに、方位は時計回りの方向に変化する。したがって、移動体がＰ４にあるときの方位変化の方向は、時計回りとなる。
【００４９】
また、移動体がポイントＰ１４にあるときの方位変化の方向とは、移動体がポイントＰ１３にあるときの方位からポイントＰ１４にあるときの方位に変化する方向を言う。図１２を参照して、ポイントＰ１３にあるときの方位はポイントＰ１４にあるときの方位よりも小さい。ポイントＰ１３からポイントＰ１４へ移動体が移動するときに、方位は時計と反対回りの方向に変化する。したがって、移動体がポイントＰ１４にあるときの方位変化の方向は、時計と反対回りの方向である。
【００５０】
移動体が、図２に示す走行軌跡２００をポイントＰ１からポイントＰ２０まで進行したとき、図４に示すステップＳ１８で方位変化量Δθが最大とされるのは、移動体がポイントＰ１３にあるときである。これは図５に示す方位変化量の曲線からも明らかである。そして、移動体が走行軌跡２００のポイントＰ１３にあるときの方位は、東方向である（図１２参照）。またポイントＰ１３にあるときの方位変化の方向は、時計と反対回りである。
【００５１】
図４に戻って、ステップＳ２０において、ステップＳ１３で求めた方位変化量Δθがしきい値θ2 よりも小さいか否かが判断される。方位変化量Δθがしきい値θ2 よりも小さい場合には（ステップＳ２０でＹＥＳ）、フラグに「変化終了」を設定する（ステップＳ２１）。方位変化量Δθがしきい値θ2 よりも小さくない場合には、ステップＳ２１の処理は行なわれない。ステップＳ２０で、方位変化量Δθがしきい値θ2 よりも小さくなる場合には、移動体がカーブ走行から直線の走行へ移行したことを示す。すなわち、この地点において移動体がカーブを走行するのを終了したこと、すなわちカーブ区間が終了したことを検知する。図５を参照して、方位変化量Δθがしきい値θ2 よりも小さくなるのは、移動体が走行軌跡２００のポイントＰ１８にあるときである。すなわち、走行軌跡２００のうち、ポイントＰ３からポイントＰ１７までの区間が、カーブ区間として検知される。
【００５２】
このように、方位変化の監視処理においては、移動体が走行軌跡２００を走行する複数のポイントにおいて、方位変化量Δθを求めることにより、走行軌跡２００中からカーブ区間（Ｐ３〜Ｐ１７）を抽出することができ、そのカーブ区間における方位変化量Δθの最大となるポイントＰ１３を求める。ここで求められた方位変化量Δθが最大となるポイントＰ１３は、走行軌跡２００を特定するための特徴点となる。そして、移動体がＰ１３にあるときの移動体の方位と方位変化の方向とが走行軌跡２００上の座標と併せて記憶される。
【００５３】
次に、図３のステップＳ０３に示される候補ノードの選択処理について説明する。図６は、図３のステップＳ０３で行なわれる候補ノードの選択処理の流れを示すフロー図である。図を参照して、候補ノードの選択処理は、移動体が通過するであろうと推測されるノードを選択する処理である。移動体が通過するであろうと推測されるノードは、前回に候補ノードとされたノードとの接続関係と、走行軌跡２００上における移動体の現在の位置からの距離とを条件に選択される。
【００５４】
候補ノードの選択処理は、まず、以前に登録された候補ノードに接続されるリンクを選択する（ステップＳ４１）。たとえば、図２を参照して、以前に登録された候補ノードがＮ２の場合には、Ｎ２に接続されるリンクはリンクＬ１とリンクＬ２であるので、このうちいずれかのリンクが選択される。ここではリンクＬ２が選択されたとする。
【００５５】
図６に戻って、選択されたリンクに接続されるノードのうち、候補ノードと反対側のノードが、移動体の走行軌跡上の位置から近いか否かが判断される（ステップＳ４２）。たとえば、図２を参照して、選択されたリンクＬ２に接続される他方のノードＮ３が、走行軌跡２００上の移動体の現在位置と近いか否かが判断される。近いか否かの判断は、所定のしきい値を用いて判断される。移動体が走行軌跡２００上のポイントＰ５にある場合には、ポイントＰ５とノードＮ３との距離が計算され、この距離が所定のしきい値よりも短い場合には、近いと判断される。
【００５６】
図６に戻って、近いと判断されなかった場合には（ステップＳ４２でＮＯ）、ステップＳ４５に進む。近いと判断された場合には（ステップＳ４２でＹＥＳ）、選択されたリンクの方位が、移動体の走行軌跡２００上の現在地における推定方位と近いか否かが判断される（ステップＳ４３）。図２を参照して、たとえば、移動体が走行軌跡２００のポイントＰ５にある場合には、ポイントＰ５における移動体の方位と、処理対象となっているリンクＬ２の方位とが比較される。方位が近いか否かは、たとえば、ポイントＰ５における移動体の推定方位±π／９［ｒａｄ］の範囲内にリンクＬ２の方位がある場合に、リンクＬ２の方位はポイントＰ５における移動体の推定方位に近いとされる。図６に戻って、処理対象となっているリンクの方位が、走行軌跡２００中の移動体の現在地における推定方位に近いとされた場合には（ステップＳ４３でＹＥＳ）、処理対象のリンクの他方に接続されるノードが候補ノードとして新たに登録される（ステップＳ４４）。
【００５７】
そして、候補ノードに接続するリンクが他にあるか否かが判断され（ステップＳ４５）、他に接続するリンクがある場合には、上述の処理が繰返し行なわれて接続するリンクがない場合には処理を終了する。たとえば、候補ノードＮ２の場合には、候補ノードＮ２に接続するリンクがリンクＬ１とリンクＬ２の２つあった。したがって、２つのリンクＬ１，Ｌ２についてステップＳ４１からステップＳ４４までの処理が繰返し行なわれることになる。
【００５８】
以上説明したとおり、候補ノードの選択処理においては、移動体が走行したであろうと推測されるノードが選択される。図２における道路地図データの場合には、移動体が走行軌跡２００をポイントＰ２からＰ１７までを走行する間に、ノードＮ２からノードＮ１０までの９つのノードが候補ノードとして登録される。
【００５９】
次に、図３のステップＳ０４で行なわれる平行移動量計算処理について説明する。平行移動量計算処理は、候補ノードの選択処理で求められた候補ノードから対応ノードを選択し、方位変化の監視処理で求められた特徴点と対応ノードとから走行軌跡の平行移動量を計算する処理である。
【００６０】
図７は、図３のステップＳ０４で行なわれる平行移動量計算処理の流れを示すフロー図である。図を参照して、平行移動量計算処理は、フラグが「変化終了」か否かを判断する（ステップＳ３１）。フラグが「変化終了」でない場合には、処理を終了する。したがって、平行移動量計算処理は、フラグが「変化終了」の場合にのみ行なわれ、フラグが「変化終了」でない場合には行なわれない。フラグが「変化終了」の場合とは、移動体がカーブの走行を終了した地点であり、このときに始めて平行移動量計算処理が行なわれることになる。
【００６１】
図２および図５を参照して、フラグが「変化終了」の場合とは、方位変化量Δθがしきい値θ2 よりも小さいことが検出されたときであり、そのときの移動体の走行軌跡２００上の位置は、ポイントＰ１８である。したがって、平行移動量計算処理は、図２において移動体が走行軌跡２００のポイントＰ１８にある場合に行なわれることになる。
【００６２】
図７に戻って、次に候補リンクの選択が行なわれる（ステップＳ３２）。候補リンクの選択とは、移動体がカーブを終了した地点、すなわち移動体が走行軌跡２００のポイントＰ１８にあるときの移動体の推定方位と所定の範囲内にある方位を有するリンクであって、ポイントＰ１８から所定の距離の範囲内にあるリンクを候補リンクとして選択する。たとえば、ポイントＰ１８における移動体の推定方位は北向きであり、北向きと±π／９［ｒａｄ］の範囲内にある方位を有するリンクであって、ポイントＰ１８を中心とする２００［ｍ］四方の範囲内にあるリンクが選択される。これにより、リンクＬ１０とリンクＬ９とが候補リンクとして選択される。
【００６３】
次に、対応ノードの選択が行なわれる（ステップＳ３３）。対応ノードの選択は、上述した候補ノードの選択処理において登録された候補ノードについて、所定の条件を満たす候補ノードが対応ノードとされる。以下、所定の条件について説明する。
【００６４】
（条件１）
候補ノードへの入リンク方位＜特徴点における推定方位＜候補ノードの出リンク方位
（条件２）
候補ノードへの入リンク方位＞特徴点における推定方位＞候補ノードの出リンク方位
（条件３）
候補ノードの入リンク方位から候補ノードの出リンク方位への変化の方向が特徴点における方位の変化の方向と等しい。
【００６５】
所定の条件は次の論理式で表わされる。
（（条件１）ＯＲ（条件２））ＡＮＤ（条件３）
この所定の条件を満たす候補ノードが対応ノードとして選択される。上述の（条件１）と（条件２）とは、特徴点における移動体の推定方位が、候補ノードの入リンクの方位と出リンクの方位との間に含まれる場合を示す。たとえば、図１２を参照して、特徴点Ｐ１３における推定方位は、（３π）／２（東方向）である。図２を参照して、ノードＮ２における入リンクＬ１と出リンクＬ２を見ると、入リンクＬ１の方位は、（３π）／２よりも大きく、出リンクＬ２の方位は（３π）／２よりも小さい。したがって、候補ノードＮ２は（条件２）を満たすことになる。次に（条件３）について見ると、入リンクＬ１の方位から出リンクＬ２の方位の変化方向は、入リンクＬ１の方位が出リンクＬ２の方位よりも大きいので、時計回りの方向である。これに対して、特徴点Ｐ１３における方位の変化の方向は、図１２を参照して、Ｐ１２の方位の方がＰ１３の方位よりも小さいので、時計と反対回りの方向となる。したがって、ノードＮ２は条件３を満たさないので、対応ノードとしては選択されない。
【００６６】
ノードＮ７について見ると、図２を参照して、ノードＮ７への入リンクＬ６の方位は（３π）／２よりも小さく、ノードＮ７の出リンクＬ７の方位は（３π）／２よりも大きい。したがって、ノードＮ７は、（条件１）を満たす。リンクＬ６の方位はリンクＬ７の方位よりも小さいので、入リンク方位から出リンク方位への変化の方向は、時計と反対回りの方向である。一方、特徴点Ｐ１３における方位変化の方向は時計と反対回りなので、ノードＮ７は条件３を満たすことになる。したがって、ノードＮ７が対応ノードとして選択される。候補ノードＮ２〜Ｎ１０のうち、ノードＮ２とＮ７以外のノードについては、条件１と条件２のいずれの条件も満たさないので、対応ノードとしては選択されない。
【００６７】
以上説明した対応ノードの選択は、ステップＳ３２において選択された候補リンクごとに行なわれる。ステップＳ３２においては、候補リンクとしてリンクＬ１０とリンクＬ９とが選択された。リンクＬ１０についての対応ノードの選択処理は、候補ノードをノードＮ２〜Ｎ１０として上述の処理がなされる。この結果、候補リンクＬ１０に対応する対応ノードとしては、ノードＮ７が選択される。
【００６８】
次に、候補リンクＬ９についての対応ノードの選択処理は、候補ノードがノードＮ２からノードＮ９となることが異なるのみで、その他の点についてはリンクＬ１０についての対応ノードの選択と同様である。したがって、候補リンクＬ９に対する対応ノードとしては、ノードＮ７が選択される。
【００６９】
１つの候補リンクに対して候補ノードのいずれもが上述の所定の条件を満たさない場合がある。この場合にはその候補リンクに対応する対応ノードの選択は行なわれない。
【００７０】
図７に戻って、ステップＳ３４において、対応ノードが選択されたか否かが判断される。対応ノードが選択されなかった場合には、次のステップＳ３５における平行移動量の計算が行なわれず処理が終了する。
【００７１】
対応ノードが選択された場合には、ステップＳ３５において、平行移動量の計算が行なわれる。平行移動の計算とは、走行軌跡２００上の特徴点を始点とし、対応ノードを終点とするベクトルを求める処理である。図２に示した例においては、候補リンクＬ１０に対する対応ノードがノードＮ７であったので、特徴点Ｐ１３を始点とし、対応ノードＮ７を終点とするベクトル２１０が平行移動ベクトルとして求められる。同様に、リンクＬ９に対する対応ノードがノードＮ７であったので、特徴点Ｐ１３を始点とし、対応ノードＮ７を終点とするベクトル２１０が平行移動ベクトルとして求められる。
【００７２】
このように、候補リンクが複数求まると、それぞれの候補リンクごとに平行移動ベクトルが求められる。また、１つの候補リンクに対して複数の対応ノードが選択された場合には、それぞれの対応ノードに対して平行移動ベクトルが求められる。この場合には、求められた複数の平行移動ベクトルのうち、前回に求められた平行移動ベクトルと方向および長さにおいて最も近似する唯一の平行移動ベクトルが選択される。
【００７３】
以上説明したとおり、本実施の形態における移動体の位置検出装置は、方位変化の方向が変化する２段以上のカーブを移動体が走行する場合であっても、走行軌跡中の最も方位変化量の大きい位置を特徴点として抽出する。したがって、２段以上のカーブの走行軌跡を特定するために最も特徴のある点を一意に定めることができる。
【００７４】
また、移動体が通過するであろうと推測される候補のノードのうち、ノードの入リンク方位と出リンク方位との間に特徴点の推定方位を含むノードであって、入リンク方位から出リンク方位への方位の変換方向が特徴点における方位変化の方向と同じノードを特徴点に対応する対応ノードとして選択する。これにより、特徴点における方位変化の方向を考慮して対応ノードを選択するので、特徴点に対応する道路地図データ中の対応ノードを正確に特定することができる。
【００７５】
さらに、方位変化の方向が変化する２段以上のカーブであっても、走行軌跡上の特徴点と道路地図データ中のノードと対応づけすることができるので、マップマッチングの精度が向上する。
【００７６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図１】  本実施の形態の１つにおける移動体の位置検出装置の概略構成を示すブロック図である。
【図２】  本実施の形態における移動体の位置検出装置で行なわれるマップマッチング処理を説明するための図であり、移動体の走行軌跡とその周辺の道路地図データとの一例を示す図である。
【図３】  本実施の形態における移動体の位置検出装置で行なわれるマップマッチング処理の流れを示すフロー図である。
【図４】  図３のステップＳ０２で行なわれる方位変化の監視処理の流れを示すフロー図である。
【図５】  移動体が図２に示す走行軌跡２００を走行する場合の各地点における方位変化量を示す図である。
【図６】  図３のステップＳ０３で行なわれる候補ノードの選択処理の流れを示すフロー図である。
【図７】  図３のステップＳ０４で行なわれる平行移動量計算処理の流れを示すフロー図である。
【図８】  従来のナビゲーション装置で行なわれるマップマッチング処理を説明するための図であり、走行軌跡１００とその周辺の道路地図データを示す図である。
【図９】  移動体が図８に示す走行軌跡１００を走行した場合の各地点における方位を示す図である。
【図１０】  移動体が図８に示す走行軌跡１００を走行した場合の各地点における方位変化量を示す図である。
【図１１】  移動体の走行軌跡の一例を示す図である。
【図１２】  移動体が図１１に示す走行軌跡２００を走行した場合の各地点における方位を示す図である。
【図１３】  移動体が図１１に示す走行軌跡２００を走行した場合の各地点における方位変化量を示す図である。
【符号の説明】
１  方位センサ
２  距離センサ
３  走行軌跡演算部
４  マップマッチング処理部
５  地図データ記憶部
６  表示部
【図１】
0004297540.tif 000002
【図２】
0004297540.tif 000003
【図３】
0004297540.tif 000004
【図４】
0004297540.tif 000005
【図５】
0004297540.tif 000006
【図６】
0004297540.tif 000007
【図７】
0004297540.tif 000008
【図８】
0004297540.tif 000009
【図９】
0004297540.tif 000010
【図１０】
0004297540.tif 000011
【図１１】
0004297540.tif 000012
【図１２】
0004297540.tif 000013
【図１３】
0004297540.tif 000014