(57)【特許請求の範囲】
【請求項１】
車両の現在位置を算出する現在位置算出システムであって、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成する仮想現在位置生成手段と、
前記仮想現在位置と、地図データに含まれる道路データとを比較し、車両が道路上に存在することを示す候補点を生成する候補点生成手段と、
前記進行方位に基づき、車両が左折或いは右折したことを検出する右左折検出手段と、
前記右左折検出手段により、車両が左折或いは右折したことが検出された場合に、車両が左折或いは右折する前に車両が位置していた第１の道路の方位と、車両が左折或いは右折した後に車両が位置する第２の道路の方位との道路方位差を求めて、当該求めた道路方位差が所定範囲内にある場合、前記仮想現在位置および前記道路データを用いて、当該仮想現在位置を通り、前記第１の道路と平行な直線と、前記第２の道路との交点を算出して、当該算出した交点に候補点が位置するように、前記生成した候補点の位置を補正する候補点補正手段と、を有すること
を特徴とする現在位置算出システム。
【請求項２】
車両の現在位置を算出する現在位置算出システムであって、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成する仮想現在位置生成手段と、
前記仮想現在位置と、地図データに含まれる道路データとを比較し、車両が道路上に存在することを示す候補点を生成する候補点生成手段と、
前記進行方位に基づき、車両が左折或いは右折したことを検出する右左折検出手段と、
前記右左折検出手段により、車両が左折或いは右折したことが検出された場合に、車両が左折或いは右折する前に車両が位置していた第１の道路の方位と、車両が左折或いは右折した後に車両が位置する第２の道路の方位との道路方位差を算出し、当該算出した道路方位差が所定の範囲内である場合、前記第１の道路の道幅に予め対応付けられている補正距離を求め、前記仮想現在位置、前記道路データ、および前記補正距離を用いて、前記仮想現在位置を前記第１の道路の垂直方向に前記補正距離だけ移動させた点を通り、かつ前記第１の道路に平行な直線と、前記第２の道路との交点を算出して、当該算出した交点に候補点が位置するように前記候補点の位置を補正する候補点補正手段と、を有すること
を特徴とする現在位置算出システム。
【請求項３】
請求項１または２に記載の現在位置算出システムであって、
前記候補点補正手段は、
前記第２の道路の方位と前記車両の進行方位との間の方位差が所定角度より小さいか否かを判定し、前記所定の角度より小さいと判定された場合に前記候補点の位置を補正すること
を特徴とする現在位置算出システム。
【請求項４】
車両の現在位置を算出する現在位置算出システムであって、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成する仮想現在位置生成手段と、
前記仮想現在位置と、地図データに含まれる道路データとを比較し、車両が道路上に存在することを示す候補点を生成する候補点生成手段と、
前記進行方位に基づき、車両が左折或いは右折したことを検出する右左折検出手段と、
前記右左折検出手段により、車両が左折或いは右折したことが検出された場合に、車両が左折或いは右折する前に車両が位置していた第１の道路の方位と、車両が左折或いは右折した後に車両が位置する第２の道路の方位との道路方位差を求めて、当該求めた道路方位差が所定角度以下ではない場合、前記仮想現在位置および前記道路データを用いて、当該仮想現在位置を通り、前記第１の道路と平行な直線と、前記第２の道路との交点を算出して、当該算出した交点に候補点が位置するように、前記生成した候補点の位置を補正する候補点補正手段と、を有すること
を特徴とする現在位置算出システム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、車両等の移動体に搭載され、該移動体の進行距離、進行方位などを測定して、これにより、当該移動体の現在位置を算出する現在位置算出システムに関するものであり、より詳細には、該移動体が左折或いは右折したときの移動体の現在位置をより正確に算出する現在位置算出システムに関するものである。
【０００２】
【従来技術】
従来より、道路上を走行する車両の現在位置を算出する現在位置算出システムにおいて、該車両の現在位置は、ジャイロ等の方位センサにより測定した車両の進行方向と、車速センサまたは距離センサにより測定した車両の進行距離とに基づいて算出されている。
【０００３】
また、車両の進行距離は、一般的には、トランスミッションの出力軸、または、タイヤの回転数を計測して、その回転数に、タイヤ１回転あたりに車両が進む距離である距離係数を乗ずることにより求められている。
【０００４】
さらに、特開昭６１−５６９１０号公報に記載されたように、車両の進行方向と進行距離から求めた現在位置に基づき、ＣＤ−ＲＯＭなどに記憶された地図データに含まれる道路データに対応する線分を取り出し、求められた現在位置から、該線分に垂線をおろし、垂線と線分との交点を表示装置に表示すべき位置と決定する、いわゆるマップマッチングの技術が知られており、このマップマッチングにより、表示装置上に、所定の道路と整合する車両の現在位置を示すシンボルを表わすことができる。
【０００５】
【発明が解決しようとする課題】
ところで、地図データに含まれる道路データは、道路を折れ線として表わしているものが多い、すなわち、道路データは、複数の線分の端部を示す座標から構成され、これら線分は現実の道路の中心線に対応する。
【０００６】
したがって、従来の現在位置算出装置は、車両が湾曲した道路を走行しているときに、所定の角度をもって交わる二本の線分の一方の線分上ある点から、車両の進行距離および進行方向に基づき得られた現在位置から、他方の線分に垂線をおろし、線分と垂線との交点を表示装置に表示すべき位置と決定している。
【０００７】
しかしながら、算出された車両の現在位置と、実際の車両の位置との間には、車両の進行方向前後に誤差が存在する場合が考えられる。このような場合に、車両が左折或いは右折した後に、装置により算出される車両の現在位置にも、車両の進行方向の誤差が残るという問題点があった。
【０００８】
さらに、実際の道路は、種々の道幅を有しており、たとえば、車両が左折する場合には、車両は、道路中の進行方向に向かって比較的左側に沿って通行する。すなわち、車両が左折する場合或いは右折する場合には、少なくとも道路の中心線に沿って進行することは考えられない。したがって、従来の装置が、現実の道路の中心線に対応する線分に沿って、マッチングを実行すると、車両が左折或いは右折をするごとに、現実の車両の位置と装置により算出された車両の位置との間に、誤差が生じるという問題点があった。
本発明は、車両が左折或いは右折した場合の当該車両の現在位置を、より正確に算出する現在位置算出システムを提供することを目的とする。
【０００９】
【課題を解決する手段】
本発明の目的は、車両に搭載され、該車両の現在位置を算出する現在位置算出システムであって、車両の進行方位を検出する方位検出手段と、車両の走行距離を算出する距離算出手段と、前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態、或いは、車両が道路上に位置しない状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成する仮想現在位置生成手段と、前記仮想現在位置と、地図データに含まれる道路データとを比較し、車両が道路上に存在することを示す候補点を生成する候補点生成手段と、前記進行方位に基づき、車両が左折或いは右折したことを検出する右左折検出手段と、前記右左折検出手段により、車両が左折或いは右折したことが検出された場合に、車両が左折或いは右折する前に車両が位置していた第１の道路の方位と、車両が左折或いは右折した後に車両が位置する第２の道路の方位との方位差にしたがって、前記候補点の位置を補正する候補点補正手段とを備えた現在位置算出システムにより達成される。
【００１０】
本発明の好ましい実施態様においては、前記候補点補正手段が、前記仮想現在位置を通り、前記第１の道路と平行な直線と、前記第２の道路との交点に対応する位置に候補点が位置するように、前記候補点の位置を補正するように構成されている。
【００１１】
本発明のさらに好ましい実施態様においては、前記候補点補正手段が、さらに、車両が左折或いは右折する前に車両が位置していた道路の道路幅にしたがって、前記候補点の位置を補正するように構成されている。
【００１２】
本発明のさらに好ましい実施態様においては、前記候補点生成手段が、前記道路データに含まれるあるデータに対応する線分の方位と前記車両方位との間の方位差が、所定の角度値よりも小さい場合に、車両が前記線分に対応する道路上に存在すること示す候補点を生成するように構成されている。
【００１３】
本発明のさらに好ましい実施態様においては、前記候補点補正手段が、前記道路データに含まれる道幅を示す道路幅データに基づき得られた補正量にしたがって、前記候補点の位置を補正するように構成されている。
【００１４】
【作用】
本発明によれば、候補点補正手段により、車両が右左折する前に位置していた道路の方位と、新たに車両が位置する道路の方位との方位差にしたがって、候補点の位置を補正するため、車両が左折或いは右折するごとに、候補点の位置がより適切に算出され、その結果、車両の実際の現在位置を、より正確に算出することが可能となる。
【００１５】
本発明の好ましい実施態様によれば、仮想現在位置を通り、第１の道路と平行な直線と、第２の道路との交点に対応する位置に候補点が位置するように、候補点の位置が補正されるため、比較的簡単な処理で、車両の左折或いは右折後の正確な位置を算出することが可能となる。
【００１６】
本発明のさらに好ましい実施態様によれば、さらに、車両が左折或いは右折する前に車両が位置していた道路の道路幅にしたがって、候補点の位置を補正するため、車両が現実に走行する位置を考慮したより正確な位置の算出が可能となる。
【００１７】
【実施例】
以下、添付図面に基づいて、本発明の実施例につき詳細に説明を加える。
【００１８】
図１は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。図１に示すように、この現在位置算出装置１０は、車両のヨーレイトを検出することで進行方位変化を検出する角速度センサ１１と、地磁気を検出することで車両の進行方位を検出する方位センサ１２と、車両のトランスミッションの出力軸の回転に比例した時間間隔でパルスを出力する車速センサ１３を備えている。
【００１９】
また、現在位置周辺の地図や現在位置を示すマーク等を表示するディスプレイ１７と、ディスプレイ１７に表示する地図の縮尺切り替えの指令をユーザ（運転者）から受け付けるスイッチ１４と、デジタル地図データを記憶しておくＣＤ−ＲＯＭ１５と、そのＣＤ−ＲＯＭ１５から地図データを読みだすためのドライバ１６とを備えている。また、以上に示した各周辺装置の動作の制御を行うコントローラ１８を備えている。本実施例において、上述したディジタル地図データには、複数の線分の端部を示す座標から構成される道路データ、或いは、該道路の道幅を示す道路幅データ、道路が高速道路或いは一般道路であるかを示す高速道路フラグなどが含まれる。
【００２０】
コントローラ１８は、角速度センサ１１の信号（アナログ）をデジタル信号に変換するＡ／Ｄ変換器１９と、方位センサ１２の信号（アナログ）をデジタル信号に変換するＡ／Ｄ変換器２０と、車速センサ１３から出力されるパルス数を０．１秒毎にカウントするカウンタ２６と、スイッチ１４の押圧の有無を入力するパラレルＩ／Ｏ２１と、ＣＤ−ＲＯＭ１５から読みだされた地図データを転送するＤＭＡ（Direct Memory Access）コントローラ２２と、ディスプレイ１７に地図画像を表示する表示プロセッサ２３とを有する。
【００２１】
また、コントローラ１８は、さらに、マイクロプロセッサ２４と、メモリ２５とを有する。マイクロプロセッサ２４は、Ａ／Ｄ変換器１９を介して得た角速度センサ１１の信号、Ａ／Ｄ変換器２０を介して得た方位センサ１２の信号、カウンタ２６がカウントした車速センサ１３の出力パルス数、パラレルＩ／Ｏ２１を介して入力するスイッチ１４の押圧の有無、ＤＭＡコントロ−ラ２２を介して得たＣＤ−ＲＯＭ１５からの地図データを受け入れて、それら信号に基づいて処理を行い、車両の現在位置を算出して、それを表示プロセッサ２３を介してディスプレイ１７に表示させる。この車両位置の表示は、図２に示すように、すでにディスプレイ１７に表示している地図上に矢印マ−ク等を重畳して表示することにより行う。これにより、ユーザは、地図上で車両の現在位置を知ることができる。メモリ２５は、このような動作を実現するための処理（後述）の内容を規定するプログラムなどを格納したＲＯＭと、マイクロプロセッサ２４が処理を行う場合にワ−クエリアとして使用するＲＡＭとを含んでいる。
【００２２】
以下、このように構成された現在位置算出装置１０の動作について説明する。
【００２３】
装置１０の動作は、全般的に、車両の進行方位及び進行距離を算出する処理と、算出された進行方位及び距離から車両の現在位置を決定する処理と、得られた車両位置および方位を表示する処理との三つの処理に分けることができるため、これらについて順次説明する。
【００２４】
図３に、車両の進行方位及び進行距離を算出する処理の流れを説明する。
【００２５】
この処理は、一定周期、たとえば１００ｍＳ毎に起動され実行されるマイクロプロセッサ２４のルーチンである。
【００２６】
このルーチンでは、最初、Ａ／Ｄ変換器１９から角速度センサ１１の出力値を読み込む（ステップ３０１）。この角速度センサ１１の出力値には、方位変化が出力されるので、車両の進行方向の相対的な値しか検出できない。このため、次に、Ａ／Ｄ変換器２０から方位センサ１２の出力値を読み込み（ステップ３０２）、この方位センサ１２の出力値により算出された絶対方位と角速度センサ１１から出力される方位変化（角速度出力）とを用いて、車両の推定方位を決定する（ステップ３０３）。
【００２７】
この方位の決定は、たとえば、長い時間、車速が低い時には、角速度センサの誤差が大きいので、一定時間以上車速が低い場合には、方位センサの方位のみを利用するという方法により行う。
【００２８】
次に、車速センサ１３の出力するパルス数を、０．１秒毎に、カウンタ２６で計数して、その計数値を読み込む（ステップ３０４）。この読み込んだ値に、距離係数を乗算することで、０．１秒間に進んだ距離を求める（ステップ３０５）。
【００２９】
次に、このようにして求められた０．１秒間あたりの進行距離値を、前回得られた値に積算して、車両の進行距離が２０ｍとなったかどうかを調べ（ステップ３０６）、２０ｍに満たない場合（ステップ３０６でノー（Ｎｏ））、今回の処理を終了して、新たな処理を開始する。
【００３０】
進行距離算出処理の結果、積算された進行距離が一定距離、例えば２０ｍとなった場合（ステップ３０６でイエス（Ｙｅｓ））、その時点での進行方向と進行距離Ｒ（本実施例においては２０ｍ）とを出力する（ステップ３０７）。ステップ３０７では、さらに、積算距離を初期化して、新たに進行距離の積算を開始する。
【００３１】
次に、算出された進行方位および進行距離に基づいて、車両の仮想現在位置を算出し、算出された仮想現在位置に基づき、車両の候補点を求める処理について説明する。
【００３２】
図４に、この処理の流れを示す。
【００３３】
本処理は、図３からの進行方位および進行距離が出力されるのを受けて起動され、実行されるマイクロプロセッサ２４のルーチンである。すなわち、本実施例において、本処理は、車両が２０ｍ進む毎に起動される。
【００３４】
さて、この処理では、まず、ステップ３０７で出力された進行方位と進行距離とを読み込む（ステップ４０１）。次に、それらの値に基づいて、車両の移動量を緯度経度方向、別々に、それぞれ求める。さらに、これらの各方向における移動量を、前回の車両の候補点を求める処理で得られた車両の候補点の位置に加算して、現在車両が存在すると推定される位置である仮想現在位置（Ａ）を求める（ステップ４０２）。
【００３５】
もし、装置の始動直後など、前回の車両の候補点を求める処理で得られた候補点が存在しない場合には、別途設定された位置を、前回得られた候補点の位置として用いて仮想現在位置（Ａ）を求める。
【００３６】
ここに、候補点につき説明を加える。装置の始動直後など、初期的な状態においては、仮想現在位置（Ａ）は、ユーザ（運転者）がスイッチ１４を用いて所定の情報を入力することなどにより、一意的に定まり、かつ、これは道路に対応する線分上に位置する。しかしながら、車両が走行した後には、方位センサなどの誤差などにより、仮想現在位置（Ａ）が、道路に対応する線分上に存在しなくなる場合がある。その結果、たとえば、図５に示すように、道路が分岐している場合、すなわち、道路に対応する線分６１の節点すなわち端部６８から、二つの線分６４および６５があらわれる場合に、いずれの線分に対応する道路上に車両が存在するかが、明確にすることができない場合が多い。
【００３７】
したがって、このような場合に、本実施例においては、後述する処理により得られた線分（図５に示す例では二つの線分）上に存在する点を、所定の条件の下で候補点として設定し、これらの現在位置、エラーコスト、後述する累算エラーコストなどを、それぞれ、メモリ２５のＲＡＭの所定の領域に記憶するように構成されている。なお、説明を容易にするため、以下の説明においては、特に複数の候補点であることを明示しない限り、単一の候補点から、新たな一以上の候補点を生成することとする。
【００３８】
次いで、前回の車両の候補点を求める処理で得られたマッチング状態の候補点のみに関して、道路とのマッチングを行うための第１の道路検索処理が実行される（ステップ４０３）。なお、本実施例において、マッチング状態とは、ある仮想現在位置に関連して、該仮想現在位置との距離、或いは、その方位と車両の進行方位との間の方位差が、所定の範囲内であるような道路が存在し、その結果、仮想現在位置に基づき、道路上の所定の位置に候補点が得られた状態を称する。これに対して、ある仮想現在位置に関連して、上述した距離および方位差が、所定の範囲内であるような道路が存在しない場合が考えられる。本実施例においては、このような場合に、仮想現在位置Ａに対応する点自体が候補点となり、このようにして得られた候補点を、フリー状態の候補点と称している。
【００３９】
ここに、図６は、本実施例にかかる第１の道路検索処理を示すフローチャートである。
【００４０】
図６に示すように、この道路検索処理においては、まず、ＣＤ−ＲＯＭ１５から、ドライバ１６およびＤＭＡコントローラ２３を介して、所定の道路データを読み出す（ステップ６０１）。本実施例においては、道路データとして、図７に示すように、２点間を結ぶ複数の線分５１ないし５５で近似し、それら線分を、その始点と終点の座標によって表したものなどを用いている。たとえば、線分５３は、その始点（ｘ３、ｙ３）と終点（ｘ４、ｙ４）によって表現される。したがって、このステップ６０１においては、前回の処理により得られたマッチング状態の候補点が位置する線分が選択されて、これに関するデータが読み出される。
【００４１】
次に、ステップ６０１において選択された線分の座標に基づき、候補点の位置から車両の進行方向に沿って、２０ｍに対応する長さだけ進められた位置を含む線分を検索し、この線分に関する座標データなどを一次候補線分を示すデータとして一時的に記憶する（ステップ６０２）。より詳細には、候補点が位置する線分の車両の進行方向の端部までの長さが、２０ｍに対応する以上であれば、当該線分を一次候補線分として、その座標データなどを記憶する。また、候補点が位置する線分の車両の進行方向の端部までの長さが、２０ｍに対応する長さ未満であれば、当該線分に接続する線分を検索する。
【００４２】
次いで、ステップ６０２において少なくとも一つの一次候補線分が見つけられたか否かを判断し（ステップ６０３）、ノー（Ｎｏ）と判断された場合には、ステップ６０４に進む。
【００４３】
これに対して、ステップ６０３においてイエス（Ｙｅｓ）と判断された場合には、車両の進行方位と、一次候補線分の方位との間の角度を比較する角度比較処理が実行される（ステップ６０５）。図８は、本実施例にかかる角度比較処理を示すフローチャートである。図８に示すように、この処理においては、車両の進行方位と線分の方位との方位差θｄを算出し（ステップ９０１）、この方位差θｄの絶対値が、所定のしきい値θthよりも大きいか否かを判断する（ステップ９０２）。本実施例において、このしきい値θthは、３０°に設定されている。ステップ９０２においてノー（Ｎｏ）と判断された場合には、処理を終了し、その一方、イエス（Ｙｅｓ）と判断された場合には、この道路を一次候補線分としない旨の判断がなされ、一時的に記憶されたこの一次候補線分に対応するデータが削除される（ステップ９０３）。
【００４４】
図６のステップ６０５に示す角度比較処理が終了すると、ステップ６０２において複数の一次候補線分が記憶された場合には、他の一次候補線分についても角度比較処理が実行され（ステップ６０５、６０６）、全ての一次候補線分につき、角度比較処理が実行されると、ステップ６０７に進む。このようにして、前回の処理において得られた候補点が位置する線分、或いは、これに接続する線分のうち、その方位と車両の方位との間の方位差が、しきい値θth以下であるような線分に関連するデータが、一次候補線分を示すデータとして記憶される。
【００４５】
ステップ６０７は、一時的に記憶された一次候補線分が、少なくとも一つ以上存在するかどうかを判断する。このステップ６０７においてノー（Ｎｏ）と判断された場合には、ステップ６０４に進む。これに対して、ステップ６０７においてイエス（Ｙｅｓ）と判断された場合には、垂線距離比較処理が実行される（ステップ６０８）。ここに、図９は、本実施例にかかる垂線距離比較処理を示すフローチャートである。図９に示すように、この処理においては、仮想現在位置から一次候補線分に向けて垂線をひき、この垂線の長さＬを求める（ステップ１００１）。次いで、この垂線の長さＬが、予め定められたしきい値Ｌth以下であるか否かを判断する（ステップ１００２）。すなわち、一次候補線分が仮想現在位置から、しきい値Ｌthの範囲に存在しているかどうかを判断する。このステップ１００２においてイエスと判断された場合には、この一次候補線分に関連する種々のデータが、二次候補線分を示すデータとして記憶されるとともに、前回の処理で得られた候補点から、所定の線分に沿って、距離Ｒだけ離間した位置の座標データが、当該二次候補線分に対応する位置データとして記憶される（ステップ１００３）。
【００４６】
その一方、ステップ１００２においてノー（Ｎｏ）と判断された場合には、この一次候補線分に関連するデータは消去され、その結果、二次候補線分は生成されない（ステップ１００４）。
【００４７】
このように、垂線距離比較処理６０８が終了すると、全ての一次候補線分につき、処理が終了しているか否かが判断される（ステップ６０９）。
【００４８】
ステップ６０８およびステップ６０９を繰り返すことにより、前回の処理により得られた候補点が位置する線分から、車両の進行方向に、該線分或いはこれに接続された線分に沿って、所定の距離Ｒだけ離間した点が存在し、その方位と車両の進行方位との間の方位差が、所定のしきい値θth以下であり、かつ、仮想現在位置との間の距離が、所定のしきい値Ｌth以下であるような二次候補線分を得ることができる。さらに、得られた二次線分に対応する位置データとして、前回の処理で得られた候補点から、所定の線分に沿って、距離Ｒだけ離間した位置の座標データを得ることができる。この座標データが、後述する候補点を示すデータに対応する。
【００４９】
一次候補線分に関して、ステップ６０８および６０９の処理が終了すると、これらステップを経た結果、二次候補線分が得られているか否かを判断する（ステップ６１０）。このステップ６１０において、ノー（Ｎｏ）と判断された場合には、ステップ６０４に進み、その一方、イエス（Ｙｅｓ）と判断された場合には、処理を終了する。
【００５０】
たとえば、図５において、線分６１上に存在したある候補点６２に対して、仮想現在位置Ａが、点６３に示す位置に表わされるとする。このような場合に、まず、候補点６２が位置する線分６１を選択し（ステップ６０１）、この線分上の候補点６２から、車両の進行方向の端部６８までの距離を判断する。図５の例の場合には、この線分に接続されている道路があるため、線分６４、６５に関連するデータが、それぞれ、一次候補線分を示すデータとして一時的に記憶され、それぞれに関連して、角度比較処理（ステップ６０５）が実行される。ここに、図５の例において、｜θ(１)−θcar｜＜θth、かつ、｜θ(２)−θcar｜＜θthであると仮定すると、ステップ６０５および６０６からなる処理ループが二回繰り返され、線分６４、６５のそれぞれに関連して、垂線距離比較処理（ステップ６０８）が実行される。
【００５１】
さらに、図５の例において、Ｌ(１)＜Ｌth、かつ、Ｌ(２)＜Ｌthであったとすると、線分６４、６５に関連するデータが二次候補線分として記憶され、さらに、候補点６２から、線分６１および６４、或いは、線分６１および６５に沿って、進行距離Ｒ（本実施例では２０ｍ）に対応する長さだけ進められた点が候補点６６、６７として設定され、この点の座標データ、仮想現在位置から線分までの距離Ｌ（１）、Ｌ（２）に対応するデータ、および、線分の角度θ（１）、θ（２）に対応するデータが記憶される。
【００５２】
再度、図６の第１の道路検索処理の説明に戻る。ここで、ステップ６０３においてノー（Ｎｏ）と判断された場合、ステップ６０５の角度比較処理において、全ての一次候補線分が削除された場合（ステップ６０７でノー（Ｎｏ））、或いは、ステップ６０８の垂線距離比較処理において、二次候補線分が得られなかった場合（ステップ６１０でノー（Ｎｏ））には、仮想現在位置を示す座標データが、候補点を示すデータとなる。
【００５３】
このようにステップ４０３の第１の道路検索処理が終了すると、前回の車両の候補点を求める処理で得られたフリー状態の候補点に関して、道路とのマッチングを行うための第２の道路検索処理が実行される（ステップ４０４）。図１３は、本実施例にかかる第２の道路検索処理を示すフローチャートである。
【００５４】
図１０に示すように、この処理（ステップ１３０１ないし１３０４）は、図６に示すマッチング状態の候補点に対する第１の道路検索処理（図４のステップ４０３）に類似している。これら二つの処理の間の相違は以下の点にある。すなわち、第１の道路検索処理においては、前回の車両の候補点を求める処理で得られた候補点が位置する線分、あるいは、これに接続する線分を、一次候補線分として一時的に記憶し、これら一次候補線分から、さらに、その方位と車両方位との方位差が所定のしきい値θth以下であって、かつ、仮想現在位置からの距離に対応する長さが所定のしきい値Ｌth以内の線分を、二次候補線分として選択している。
【００５５】
これに対して、第２の道路検索処理においては、仮想現在位置（Ａ）を中心とする予め設定された距離Ｄ内にある線分をすべて抽出し（ステップ１３０１）、これら線分から、その方位と車両方位との方位差が所定のしきい値θth以下の線分を選択し（ステップ１３０２）、さらに、選択された線分と仮想現在位置との間の距離を求め、この距離に対応する長さが所定のしきい値Ｌth以内の線分を二次候補線分として選択している（ステップ１３０３）。換言すれば、第１の道路選択処理のステップ６０２においては、候補点が位置する線分、或いは、当該線分の分岐点から延びる幾つかの線分などが選択されるが、図１０のステップ１３０２においては、読み出された地図データに含まれる道路データに基づき、抽出すべき線分が決定される。したがって、ステップ１３０１ないし１３０３を実行するための処理時間は、道路データに対応する道路の密度に依存し、特に、読み出された地図データに対応する地図が、市街地であった場合など、道路の密度が大きい場合に、この処理時間は、第１の道路検索処理における対応する処理を実行するのに必要な時間と比較すると大きい。
【００５６】
この第２の道路検索処理において、ステップ１３０３が終了すると、ステップ１３０２およびステップ１３０３により取り出された線分、すなわち、その方位と車両方位との間の方位差が、しきい値θth以下であり、かつ、仮想現在位置からの距離に対応する長さがしきい値Ｌth以下であるような線分が、二次候補線分として選択され、該線分に関連する種々のデータが、二次候補線分を示すデータとして記憶される。また、現在地現在位置の存在する点、および、仮想現在位置から当該線分におろした垂線の足、すなわち、この垂線と線分との交点が、候補点と決定され、これら候補点の座標データが記憶される（ステップ１３０４）。なお、第２の道路検索処理においては、仮想現在位置からおろした垂線と線分との交点が候補点となるが、これは、前回の処理により得られた候補点が、フリー状態であり、したがって、たどるべき線分が存在しないためである。
【００５７】
なお、この第２の道路検索処理において、仮想現在位置から所定の範囲Ｄ内に線分が存在しない場合、その方位と車両の進行方位との方位差がしきい値θth以下の線分が存在しない場合、或いは、仮想現在位置からの距離に対応する長さがしきい値Ｌth以下であるような線分が存在しない場合には、仮想現在位置に対応する点が、唯一の候補点となる。
【００５８】
上述したように、ステップ４０４の第２の道路探索処理が終了すると、第１の道路検索処理および第２の道路検索処理により得られたｎ個の候補点に関連する垂線の長さＬ（ｉ）（１≦ｉ≦ｎ）と、候補点が位置する二次候補線分の方位と車両の方位との間の方位差θd（ｉ）とに基づき、以下の式により定義されるエラーコストｅｃ（ｉ）が算出される（ステップ４０５）。
【００５９】
ｅｃ（ｉ）＝α×｜θd（ｉ）｜＋β×Ｌ（ｉ）
ここに、αおよびβは、重み係数である。これら重み係数の値は、車両の進行方位と線分の方位との間のずれと、仮想現在位置と線分との間のずれとの何れを、道路が選択される上で重視するかにしたがって決定される。たとえば、進行方位とその方位と方位が近い道路を選択することを重視する場合は、αを大きくするようにする。
【００６０】
次いで、算出されたエラーコストｅｃ（ｉ）と、前回の処理で得られた候補点に関連する累算エラーコストｅｓとにしたがって、下記の式により定義される、今回の処理における累算エラーコストｅｓを算出する（ステップ４０６）。
【００６１】
ｅｓ（ｉ）＝（１−ｋ）×ｅｓ＋ｋ×ｅｃ（ｉ）
ここに、ｋは、０より大きく１より小さな重み係数である。この累算エラーコストｅｓ（ｉ）は、前回以前の処理において算出されたエラーコストを、今回の処理において算出されるエラーコストにどのくらい反映させるかを表わしている。
【００６２】
さらに、算出された累算エラーコストｅｓ（ｉ）に基づき、下記の式に定義される信頼度ｔｒｓｔ（ｉ）を算出する（ステップ４０７）。
【００６３】
ｔｒｓｔ（ｉ）＝１００／（１＋ｅｓ（ｉ））
上記式から明らかなように、累算エラーコストｅｃ（ｉ）が大きくなるのにしたがって、信頼度ｔｒｓｔ（ｉ）は減少し、０（ゼロ）に近づく。その一方、これが小さくなるのにしたがって、信頼度ｔｒｓｔ（ｉ）は増大し、その値は、１００に近づく。
【００６４】
このような処理をすることにより、ある候補点に対応して得られたｎ個の二次候補線分に関連する信頼度ｔｒｓｔ（ｉ）が求められる。候補点が複数存在する場合には、それぞれの候補点に対応して得られた複数の二次候補線分に関連する信頼度ｔｒｓｔを算出すればよい。
【００６５】
なお、フリー状態の候補点に関連して、ステップ４０５で算出すべきエラーコストｅｃ（ｎ）には、マッチング状態である場合に得られるエラーコストの値よりも大きな一定の値が与えられる。
【００６６】
次いで、このように得られた候補点の各々に対応する信頼度ｔｒｓｔの値にしたがって、これら新たな候補点をソートし（ステップ４０８）、最も信頼度の値の大きな候補点Ｃを、表示候補点ＣＤ、すなわち、ディスプレイ１７上に表示するための候補点として、その位置、累算エラーコスト、信頼度、マッチング状態であるかフリー状態であるかを示す状態フラグなどを、メモリ２５のＲＡＭの所定の領域に記憶するとともに、表示候補点以外の他の候補点の位置、累算エラーコスト、信頼度、状態フラグなども、ＲＡＭの所定の領域に記憶する（ステップ４０９）。なお、本実施例においては、７個の候補点に関連するデータを記憶可能に構成されている。したがって、図４のステップ４０１ないし４０８の処理を実行した結果、８個以上の候補点が算出された場合には、これらのうち、信頼度ｔｒｓｔの値が大きい順に７個の候補点に関連する種々のデータが、メモリ２５のＲＡＭの所定の領域に記憶されることになる。
【００６７】
次に、車両がいわゆる道路のコーナーを走行後に現れる候補点の位置を補正する候補点位置補正処理が実行される（ステップ４１０）。図１１は、本発明にかかる候補点位置補正処理を示すフローチャートである。この処理は、前回の処理において得られたマッチング状態の候補点に基づき算出されたマッチング状態の候補点、すなわち、ステップ４０３で得られた候補点中、マッチング状態の候補点に関連して実行される。
【００６８】
図１１に示すように、まず、前回の処理において得られた候補点が位置する線分の方位と、当該候補点に基づき、本処理に先行して実行されたステップ４０３において得られた候補点が位置する線分の方位との間の方位差θrdを算出する（ステップ１１０１）。次いで、この方位差θrdの絶対値が、所定の範囲内、本実施例においては、２５°以上７０°未満であるか否かが判断される（ステップ１１０２）。このステップ１１０２においてノー（Ｎｏ）と判断された場合には、処理を終了する。その一方、ステップ１１０２においてイエス（Ｙｅｓ）と判断された場合には、後に詳述する角度しきい値θlthを算出する（ステップ１１０３）。より具体的には、この角度しきい値θlthは、図１２に示す角度しきい値テーブルを参照することにより、ある方位差θrdに対応する角度しきい値θlthを得ることができる。図１２に示すように、角度しきい値テーブルには、二つの線分の方位差θrdの範囲と、これらの各々に対応するθlthが記憶されている。
【００６９】
ステップ１１０３が終了すると、先のステップ４０３で得られた候補点が位置する線分の方位と車両の方位との間の方位差θlcが算出される（ステップ１１０４）。次いで、このθlcの絶対値が所定の角度しきい値θlth以下であるか否かが判断される（ステップ１１０５）。ステップ１１０５においてノー（Ｎｏ）と判断された場合には、そのまま処理を終了し、その一方、イエス（Ｙｅｓ）と判断された場合には、最適位置算出処理が実行される（ステップ１１０６）。
【００７０】
最適位置算出処理においては、車両が左折してるか或いは右折しているか、さらには、車両の方位が変化したときに、候補点から仮想現在位置までの軌跡が、線分に対してオーバーシュートしているか、或いは、アンダーシュートしているかにしたがって、車両の位置が算出されている。すなわち、（１）左折かつアンダーシュートの場合、（２）左折かつオーバーシュートの場合、（３）右折かつアンダーシュートの場合、および、（４）右折かつオーバーシュートの場合のそれぞれにつき、候補点の最適位置が算出される。
【００７１】
ここに、オーバーシュートおよびアンダーシュートにつき簡単に説明を加える。本実施例においては、図１３（ａ）に示すように、算出された候補点１３１が、現実の車両の位置よりも、車両の進行方向（矢印Ａ）前方に位置しているため、車両が左折或いは右折した場合に、候補点１３１から仮想現在位置１３２までの軌跡が、道路に対応する線分１３３と線分１３４との間の節点１３５を超えた位置から湾曲していると考えられる場合をオーバーシュートと称している。その一方、図１３（ｂ）に示すように、算出された候補点１３１が、現実の車両の位置よりも、車両の進行方向（矢印Ａ）後方に位置しているため、車両が左折或いは右折した場合に、候補点１４１から仮想現在位置１４２までの軌跡が、道路に対応する線分１４３と線分１４４との間の節点１４５の手前の位置から湾曲している場合を、アンダーシュートと称している。
【００７２】
アンダーシュート、或いは、オーバーシュートの判定は、接続された二つの線分の方位差、左折或いは右折の判定、および、仮想現在位置を示す座標のうちのＸ座標の値（図１３（ａ）の例では、Ｘｃ）と仮想現在位置から線分におろした垂線と線分との交点の座標のうちのＸ座標の値（図１３の例では、Ｘｈ）との比較に基づいてなされる。
【００７３】
まず、図１４を参照して説明を加える。たとえば、図１４に示すように、道路に対応する線分１５１上に位置する候補点１５２から、軌跡１５３を経て、仮想現在位置１５４が得られた場合を考える。この場合に、線分１５１の車両の進行方向の端部に、他の線分１５５が接続されていると、線分１５１および１５５に沿って、候補点１５２から車両の走行距離Ｒだけ進められた位置が、新たな候補点（図示せず）となる。しかしながら、仮想現在位置における車両の方位と、新たな候補点が位置すべき線分の方位とがほぼ等しいとの前提に基づき、予想される軌跡を考慮すると、現実の車両は、仮想現在位置が位置する点１５４を通り、線分１５５に平行な直線１６０と、線分１５１との交点１６１に対応する位置で、方向を変化させていると考えるのが、より正確な現在位置を算出する上でより好ましい。
【００７４】
以上のことを考慮すると、仮想現在位置１５４に基づき得るべき候補点の位置は、道路の方向が変化している点から、点１６１と点１５４との間の距離だけ進められた点、すなわち、点１６３であるのが好ましい。
【００７５】
オーバーシュートの場合も同様に、道路に対応する線分１５１上に位置する候補点１５２から、軌跡１６３を経て、仮想現在位置１６４が得られた場合を考えると、現実の車両は、仮想現在位置１６４を通り、線分１５５に平行な直線１７０と、線分１５１の延長線との交点１７１に対応する位置で、方向を変化させていると考えるのが、より正確な現在位置を算出する上でより好ましい。したがって、仮想現在位置１６４に基づき得るべき候補点の位置は、点１６３であるのが好ましい。
【００７６】
ただし、仮想現在位置における車両方位と、新たな候補点が位置すべき線分との方位の方位差が、大きくなると、以下のような問題が生じるおそれがある。いま、図１５に示すように、線分１８１上の候補点１８２に関連して仮想現在位置１８３が得られ、この仮想現在位置１８３における車両の進行方位が、直線１８４の方向である場合を考える。この場合には、仮想現在位置１８３における車両方位と、新たな候補点が位置すべき線分１９０の方位との間の方位差（θ'−θ）が存在するため、車両が何れの位置で方向を変化させると考えるべきかが明らかとはならない。すなわち、車両が線分１８１と直線１８４との交点１８５で方向を変化させたと仮定した場合には、点１８３と点１８５との間の距離ＤＡと、線分１８１の端部１８６と、点１８３を通る線分１８１に平行な直線１８７と線分１９０との交点１８８との間の距離ＤＢとの間の誤差が、著しく大きくなる。
【００７７】
以上のことを考慮して、本実施例の候補点位置補正処理に含まれる図１１のステップ１１０３において、最適位置処理１１０６を実行し得る、車両方位と線分の方位との間のしきい値θlthを決定し、ステップ１１０５において、算出した方位差θlcの絶対値が、θlth以下であるか否かを判断している。
【００７８】
さて、上述した理由に基づき、候補点の最適位置を算出するステップ１１０６における処理について、以下に説明を加える。
【００７９】
まず、（１）の場合について説明する。図１６は、左折かつアンダーシュートの場合の処理を説明するための図である。この処理においては、上述した論理に基づく位置の補正に加えて、道路の道幅に依存して生じる誤差の補正を加味して、候補点の位置を最適化している。
【００８０】
たとえば、線分２０１上に位置する候補点２０２に基づき、仮想現在位置２０３が得られたとすると、上述した論理にしたがえば、線分２０１の端部に接続された線分２０４と、仮想現在位置に対応する点２０３を通る線分２０１と平行な直線２０５との交点２０６を、新たな仮想現在位置とすればよい。
【００８１】
しかしながら、実際に、車両が左方向に曲がるときには、車両は道路の左端により近い位置から、道路の左端に沿って進行する場合が多い。ところで、前述したように、道路データは、複数の線分の端部の座標から構成されており、この線分は、実際の道路の中央線にほぼ対応する。したがって、車両の現在位置を候補点２０２に対応する位置であるとしても、車両は、実際には、道路２１０中の点２１１に対応する位置、すなわち、候補点２０２に対応する位置から、距離Ｗinだけ道路の進行方向左側に離間した位置に存在すると考えられる。
【００８２】
いま、候補点２０２に対応する位置から、距離Ｗinだけ道路の進行方向左側に点２１１をより現実的な候補点と仮定すると、これに基づき、より現実的な仮想現在位置２１２を得ることができる。この点２１２と２０３との間の距離は、Ｗinである。
【００８３】
本処理では、より現実的な仮想現在位置２１２を通る線分２０１と平行な直線２１３と、線分２０４との交点２１４を、最適化された候補点と決定し、この点２１４と、仮想現在位置２０３から線分２０４に向かっておろした垂線と該線分２０４との交点２１５との間の距離Ｌamdtを算出している。
【００８４】
図１６に示すように、より現実的な仮想現在位置２１２と、線分２０４との間の距離Ｗoutは、仮想現在位置２０３と線分２０４との間の距離をＬrefとすると、以下の（１）式で表わすことができる。
【００８５】
Ｗout＝Ｌref＋Ｗin×cosθ              ・・・・・（１）
また、より現実的な仮想現在位置２１２から線分２０４におろした垂線と線分２０４との交点２１６と、点２１５との間の距離は、Ｗin×sinθで表わされる。さらに、点２１６と、求めるべき候補点２１４との間の距離は、（１）で求めたＷoutを用いて、Ｗout／tanθで表わすことができる。
【００８６】
したがって、求めるべき点２１５と点２１４との間の距離、Ｌamdtは、以下の（２）式に基づき得ることができる。
【００８７】
Ｌamdt＝（Ｗout／tanθ）＋Ｗin×sinθ  ・・・・・（２）
すなわち、（１）の場合には、仮想現在位置から、新たな候補点が位置すべき線分に垂線を引き、この垂線と当該線分との交点から、車両の進行方向に、当該線分に沿ってＬamdtだけ進められた位置が、最適化された候補点の位置となる。
【００８８】
次に、（２）の場合について、図１７を参照して説明する。（１）の場合とほぼ同様に、線分３０１上に位置する候補点３０２と、道幅を考慮したより現実的な候補点３０５との間の距離をＷinとすると、より現実的な候補点３０５に基づくより現実的な仮想現在位置３０６と、新たな候補点が位置すべき線分３０４との間の距離Ｗoutは、下記の（３）式で表わすことができる。
【００８９】
Ｗout＝Ｌref−Ｗin×cosθ              ・・・・・（３）
ここに、（１）の場合と同様に、Ｌrefは、候補点３０２に基づく仮想現在位置３０３と線分３０４との間の距離である。
【００９０】
したがって、最適化された候補点３０７と、仮想現在位置３０３から線分３０４におろした垂線と該線分３０４との交点３０８との間の距離Ｌamdtは、以下の（４）式に基づき得ることができる。
【００９１】
Ｌamdt＝Ｗin×sinθ−（Ｗout／tanθ）  ・・・・・（４）
さらに、（３）の場合、すなわち、右折かつアンダーシュートの場合には、以下の（５）式および（６）式、また、（４）の場合、すなわち、右折かつオーバーシュートの場合には、以下の（７）式および（８）式に基づき、距離Ｌamdtを求めることができる。
【００９２】
Ｗout＝Ｌref−Ｗin×cosθ              ・・・・・（５）
Ｌamdt＝（Ｗout／tanθ）−Ｗin×sinθ  ・・・・・（６）
Ｗout＝Ｌref＋Ｗin×cosθ              ・・・・・（７）
Ｌamdt＝−Ｗin×sinθ−（Ｗout／tanθ）・・・・・（８）
このように、上述した（１）ないし（４）の何れかの場合にしたがって、（２）式、（４）式、（６）式および（８）式の何れかに基づき、Ｌamdtが算出され、これに基づき、最適化された候補点の位置が画定される。したがって、ステップ４０３において記憶された候補点の位置を示す座標データが、最適化された候補点の位置を示すものに書き換えられる。
【００９３】
なお、本実施例においては、現実の車両の位置を考慮した距離Ｗinは、道路データに含まれる道幅を示す道路幅データの値にしたがって変化するように構成されている。より詳細には、道路幅データは、５．５ｍ未満の道路を示す第１のデータ、５．５ｍ以上１３ｍ未満の道路を示す第２のデータ、および、１３ｍ以上の道路を示す第３のデータを有している。したがって、各線分の道路幅データには、これら第１のデータないし第３のデータから選択された一つが含まれる。
【００９４】
本処理においては、Ｗinを決定するために、図１８に示す左折時および右折時のＷinが記憶された補正量テーブルが参照され、所定の道路幅データに関連する左折時または右折時のＷinが読み出される。
【００９５】
なお、各道路データに関連して、左折時のＷinに対応する値ＬＬｎ（ｎ＝１，２，３）よりも、対応する右折時のＷinに対応する値ＲＬｎの方が小さい。また、道路幅が大きくなるのにしたがって、このＷinは大きくなる（ＬＬ１＜ＬＬ２＜ＬＬ３、ＲＬ１＜ＲＬ２＜ＲＬ３）。
【００９６】
ステップ４０３で得られた候補点のうち、マッチング状態の候補点のすべてに関して、候補点位置補正処理が実行されると。最後に、表示候補点に関連するデータが出力され（図４のステップ４１１）、処理を終了する。
【００９７】
図４のステップ４０１ないし４１１を実行することにより得られた表示候補点は、図１９に示すフローチャートに基づく処理によりディスプレイ１７の画面上に表示される。
【００９８】
本処理は、１秒毎に起動され実行されるマイクロプロセッサ２４のルーチンである。
【００９９】
最初、スイッチ１４が押圧により地図の縮尺の変更を指示されているかを、パラレルＩ／Ｏ２１の内容を見て判断する（ステップ１４０１）。もし、押されていれば（ステップ１４０１でイエス（Ｙｅｓ））、それに対応して、所定の縮尺フラグを設定する（ステップ１４０２）。
【０１００】
次に、図４の処理を実行することにより得られた表示候補点の位置および方位を示すデータを、メモリ２５のＲＡＭの所定の領域から読み出し（ステップ１４０３）、ステップ１４０２で切り替えられた縮尺フラグの内容に応じた縮尺の地図をディスプレイ１７に、例えば、図２に示すような状態で表示する（ステップ１４０４）。
【０１０１】
そして、地図に重畳して、表示候補点の位置およびその方位を、たとえば、先に示した図２のように、矢印記号“↑”を用いて表示する（ステップ１４０５）。そして最後に、これらに重畳して、北を示す北マークと、縮尺に対応した距離マークとを、図２のように表示する（ステップ１４０６）。
【０１０２】
なお、本実施例においては、上記のように矢印記号を用いて車両位置および方向を示したが、車両位置および方向の表示形態は、位置および進行方向が、表示状態が明確に示されるものであれば、その形態は任意でよい。また、北マーク等も同様である。
【０１０３】
本実施例によれば、車両が左側或いは右側に曲がったときに、候補点が位置する線分の方位と、新たに生成される候補点が位置すべき線分の方位との間の方位差にしたがって、新たに生成される候補点の位置を前方或いは後方に移動させて、補正された候補点を得るため、車両が左側或いは右側に曲がった後の車両の現在位置を、より正確に算出することが可能となる。
【０１０４】
また、本実施例によれば、候補点が位置する線分に対応する道路の道路幅にしたがって、さらに、新たに生成される候補点の位置を前方或いは後方に移動させるため、最適化された候補点を得ることが可能となり、その結果、車両の現在位置をより正確に算出することが可能となる。
【０１０５】
本発明は、以上の実施例に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【０１０６】
たとえば、前記実施例においては、候補点位置補正処理が、表示候補点が決定された後に実行されているが、これに限定されるものではなく、第１の道路検索処理４０３が終了した後に、マッチング状態の候補点に関連して、この処理を実行するように構成してもよいことは明らかである。
【０１０７】
また、前記実施例中の候補点位置補整処理においては、線分に対応する道路の道幅を加味して、補正された候補点の位置を求めているが、これに限定されるものではなく、単に、前回の処理で得られた候補点が位置する線分の方位と、今回の処理で算出された候補点が位置すべき線分の方位との間の方位差に基づき、補正された候補点の位置を求めるようにしてもよい。この場合には、たとえば、図１６の例においては、点２０６が補正された候補点の位置となる。また、求めるべきＬamdtは、（Ｌref／tanθ）となることに留意すべきである。
【０１０８】
さらに、前記実施例中の候補点位置補正処理においては、道路幅データに対応するＷin補正量が記憶された補正量テーブルを使用しているが、これに限定されるものではない。たとえば、道路幅Ｗに基づき、車両が左折前に道路中に位置すると予想される点を、道路の左端から１／８Ｗだけ中央側に離間した点と仮定し、Ｗin＝７／８×Ｗと決定し、或いは、車両が右折前に道路中に位置すると予想される点を、道路の中央から１／８Ｗだけ左側に離間した点と仮定し、Ｗin＝１／８×Ｗと決定してもよい。また、Ｗと掛け合わせるための数を、道路の車線数に対応して変化させても良い。また、道路幅データとしては、実際の道幅の大きさ以外に道路の車線数を採用することもできる。
【０１０９】
また、前記実施例においては、車両が道路の左側を通行する例を示したが、これに限定されるものではないことは明らかである。すなわち、車両が道路の右側を通行する場合にも、本発明を適用可能であることは明らかである。この場合に、車両が左折する場合には、道路幅データに基づく所定の長さだけ、候補点の位置を車両の進行方向後方に移動させ、その一方、車両が右折する場合には、道路幅データに基づく所定の長さだけ、候補点の位置を車両の進行方向前方に移動させればよい。
【０１１０】
さらに、本実施例において用いられたパラメータは、例示のために与えられたものに過ぎず、したがって、これらパラメータは、装置の処理速度、車両が走行する道路の種別（例えば、一般道路、高速道路など）にしたがって変更可能であることを理解すべきである。
【０１１１】
また、本明細書において、手段とは、必ずしも物理的手段を意味するものではなく、各手段の機能が、ソフトウエアによって実現される場合も包含する。また、一つの手段の機能が二以上の物理的手段により実現されても、二以上の手段の機能が一つの物理的手段により実現されてもよい。
【０１１２】
【発明の効果】
本発明によれば、車両が左折或いは右折した場合の当該車両の現在位置を、より正確に算出する現在位置算出システムを提供することが可能となる。
【図面の簡単な説明】
【図１】  図１は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。
【図２】  図２は、本実施例にかかる地図および現在位置の表示例を示す図である。
【図３】  図３は、本実施例にかかる車両の進行方位および進行距離を算出する処理を示すフローチャートである。
【図４】  図４は、本実施例にかかる車両の候補点を算出する処理を示すフローチャートである。
【図５】  図５は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図６】  図６は、本実施例にかかる第１の道路検索処理を示すフローチャートである。
【図７】  図７は、本実施例にかかる道路データの一例を説明するための図である。
【図８】  図８は、本実施例にかかる角度比較処理を示すフローチャートである。
【図９】  図９は、本実施例にかかる垂線距離比較処理を示すフローチャートである。
【図１０】  図１０は、本実施例にかかる第２の道路検索処理を示すフローチャートである。
【図１１】  図１１は、本実施例にかかる候補点位置補正処理を示すフローチャートである。
【図１２】  図１２は、本実施例にかかる角度しきい値の決定を説明するための図である。
【図１３】  図１３は、本実施例中のオーバーシュートおよびアンダーシュートを説明するための図である。
【図１４】  図１４は、候補点の最適位置を算出すべき理由を説明するための図である。
【図１５】  図１５は、角度しきい値を設定する理由を説明するための図である。
【図１６】  図１６は、本実施例にかかる最適化された候補点の算出を説明するための図である。
【図１７】  図１７は、本実施例にかかる最適化された候補点の算出を説明するための図である。
【図１８】  図１８は、本実施例にかかる補正量テーブルを示す図である。
【図１９】  図１９は、本実施例にかかる現在位置表示処理を示すフローチャートである。
【符号の説明】
１０      現在位置算出装置
１１      角速度センサ
１２      方位センサ
１３      車速センサ
１４      スイッチ
１５      ＣＤ−ＲＯＭ
１６      ＣＤ−ＲＯＭ読み取りドライバ
１７      ディスプレイ
１８      コントローラ
【図１】
0003758710.tif 000002
【図２】
0003758710.tif 000003
【図３】
0003758710.tif 000004
【図４】
0003758710.tif 000005
【図５】
0003758710.tif 000006
【図６】
0003758710.tif 000007
【図７】
0003758710.tif 000008
【図８】
0003758710.tif 000009
【図９】
0003758710.tif 000010
【図１０】
0003758710.tif 000011
【図１１】
0003758710.tif 000012
【図１２】
0003758710.tif 000013
【図１３】
0003758710.tif 000014
【図１４】
0003758710.tif 000015
【図１５】
0003758710.tif 000016
【図１６】
0003758710.tif 000017
【図１７】
0003758710.tif 000018
【図１８】
0003758710.tif 000019
【図１９】
0003758710.tif 000020