JP3656661B2 - Current position calculation system and current position calculation method - Google Patents
Current position calculation system and current position calculation method Download PDFInfo
- Publication number
- JP3656661B2 JP3656661B2 JP14367295A JP14367295A JP3656661B2 JP 3656661 B2 JP3656661 B2 JP 3656661B2 JP 14367295 A JP14367295 A JP 14367295A JP 14367295 A JP14367295 A JP 14367295A JP 3656661 B2 JP3656661 B2 JP 3656661B2
- Authority
- JP
- Japan
- Prior art keywords
- current position
- vehicle
- candidate point
- candidate
- road
- 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 - Lifetime
Links
- 238000004364 calculation method Methods 0.000 title claims description 29
- 238000006073 displacement reaction Methods 0.000 claims description 3
- 238000001514 detection method Methods 0.000 claims description 2
- 238000000034 method Methods 0.000 description 92
- 230000008569 process Effects 0.000 description 88
- 238000012545 processing Methods 0.000 description 39
- 238000010586 diagram Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Traffic Control Systems (AREA)
- Instructional Devices (AREA)
- Navigation (AREA)
Description
【0001】
【産業上の利用分野】
本発明は、車両等の移動体に搭載され、該移動体の進行距離、進行方位などを測定して、これにより、当該移動体の現在位置を算出する現在位置算出システムに関するものである。
【0002】
【従来技術】
従来より、道路上を走行する車両の現在位置を算出する現在位置算出システムにおいて、該車両の現在位置は、ジャイロ等の方位センサにより測定した車両の進行方向と、車速センサまたは距離センサにより測定した車両の進行距離とに基づいて算出されている。
【0003】
また、車両の進行距離は、一般的には、トランスミッションの出力軸、または、タイヤの回転数を計測して、その回転数に、タイヤ1回転あたりに車両が進む距離である距離係数を乗ずることにより求められている。
【0004】
さらに、このように車両の進行方向と進行距離から求めた現在位置の誤差を補正するために、特開昭63−148115号公報に記載のように、走行距離および方位変化量に基づき定まる車両の推定位置と、道路地図の誤差に基いて誤差量を得て、推定位置を中心とする誤差量の範囲内に位置するすべての道路上に対応させて、推定位置を自己位置として登録し、これら登録された推定位置の各道路に対する相関係数を算出して、道路に対する誤差が最も少ないことを示す相関係数に対応する推定位置を現在位置とする技術が開示されている。この公報に記載されたように、道路に整合するように、求められた車両の現在位置を修正する、いわゆる、マップマッチングの技術が知られており、このマップマッチングの技術により、現在位置算出の精度を高めることができる。
【0005】
【発明が解決しようとする課題】
上述したような技術を用いてマップマッチングを実行する場合に、車両が分岐点を通過すると、複数の推定位置が算出される可能性がある。すなわち、車両が進行して繰り返し分岐点を通過するのにしたがって、推定位置の数は、著しく増大することになる。一般には、マップマッチングを実行して車両の現在位置を算出する現在位置算出システムは、これに設けられたメモリの記憶容量の制限から、幾つかの推定位置を記憶することができるに過ぎない。さらに、この現在位置算出システムは、マップマッチングを実行するための処理時間の制限から、全ての推定位置を算出することができない場合もある。
【0006】
したがって、複数の推定位置から、いかなる推定位置を選択して、これに基づき新たな車両の現在位置を算出するか、或いは、分岐などで数多くの推定位置が得られた場合に、どの推定位置を残しておくかを適切に決定することが望まれている。
本発明は、複数の車両の推定位置があるときに、これらから適切な推定位置を選択することにより、より正確に車両の現在位置を算出する現在位置算出システムを提供することを目的とする。
【0007】
【課題を解決する手段】
本発明の目的は、車両に搭載され、該車両の現在位置を算出する現在位置算出システムであって、車両の進行方位を検出する方位検出手段と、車両の走行距離を算出する距離算出手段と、前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態、或いは、車両が道路上に位置しない状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成する仮想現在位置生成手段と、各候補点に基づき、少なくとも一つの候補点が得られるように、前記仮想現在位置と、地図データに含まれる道路データとを比較して、新たな候補点を生成する候補点生成手段とを備え、前記新たな候補点から選択された所定の一つを算出された車両の現在位置とするように構成された現在位置算出システムにより達成される。
【0008】
本発明の好ましい実施態様においては、さらに、候補点に対応する道路上の位置に、車両が存在する信憑性を示す信頼度を算出する信頼度算出手段を備え、前記候補点生成手段が、前記信頼度に基づき、各候補点が得るべき新たな候補点の数を示す候補数を決定する決定手段を有し、決定された候補数にしたがって、各候補点に基づく新たな候補点を生成するように構成されている。
【0009】
本発明のさらに好ましい実施態様においては、前記候補点生成手段が、候補点の総数にしたがって、各候補点に、予め定められた候補数を割り当てるように構成されている。
【0010】
本発明のさらに好ましい実施態様においては、前記候補数が、候補点の総数をアドレスとするテーブルに記憶されている。
【0011】
本発明のさらに好ましい実施態様においては、前記信頼度にしたがって、前記新たな候補点から所定の一つを、前記算出された現在位置として選択するように構成されている。
【0012】
本発明のさらに好ましい実施態様においては、前記候補点生成手段が、前記道路データに含まれるあるデータに対応する線分の方位と前記車両方位との間の方位差が、所定の角度値よりも小さい場合に、車両が前記線分に対応する道路上に存在すること示す候補点を生成するように構成されている。
【0013】
【作用】
本発明によれば、各候補点に基づき、少なくとも一つの候補点が得られる。すなわち、ある候補点から仮想現在位置が得られ、これに基づき、必ず、一つ以上の候補点が生成される。したがって、ある候補点が、車両の現在位置であったにもかかわらず、候補点を記憶するためのメモリの記憶容量の制限や、システムの処理時間の制限により、当該候補点に基づき、新たな候補点を得ることができない場合が生じるおそれを少なくすることができ、その結果、より正確に車両の現在位置を算出することが可能となる。
【0014】
本発明の好ましい実施態様によれば、信頼度に基づき、各候補点が得るべき新たな候補点の数を示す候補数が決定されるため、より道路の現在位置である信憑性の高い候補点に基づき、より多くの新たな候補点を生成することが可能となる。
【0015】
本発明のさらに好ましい実施態様によれば、各候補点には、候補点の総数にしたがって、予め定められ候補数が割り当てられるように構成されているため、候補点の総数が大きい場合、或いは、小さい場合の何れであっても、適切な数だけ新たな候補点を生成することができる。
【0016】
本発明のさらに好ましい実施態様によれば、候補数が、テーブルに記憶されているため、簡単な処理により、候補点の総数に基づく適切な候補数を得ることができる。
【0017】
【実施例】
以下、添付図面に基づいて、本発明の実施例につき詳細に説明を加える。
【0018】
図1は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。図1に示すように、この現在位置算出装置10は、車両のヨーレイトを検出することで進行方位変化を検出する角速度センサ11と、地磁気を検出することで車両の進行方位を検出する方位センサ12と、車両のトランスミッションの出力軸の回転に比例した時間間隔でパルスを出力する車速センサ13を備えている。
【0019】
また、現在位置周辺の地図や現在位置を示すマーク等を表示するディスプレイ17と、ディスプレイ17に表示する地図の縮尺切り替えの指令をユーザ(運転者)から受け付けるスイッチ14と、デジタル地図データを記憶しておくCD−ROM15と、そのCD−ROM15から地図データを読みだすためのドライバ16とを備えている。また、以上に示した各周辺装置の動作の制御を行うコントローラ18を備えている。本実施例において、上述したディジタル地図データには、複数の線分の端部を示す座標から構成される道路データ、或いは、該道路の道幅を示す道路幅データ、道路が高速道路或いは一般道路であるかを示す高速道路フラグなどが含まれる。
【0020】
コントローラ18は、角速度センサ11の信号(アナログ)をデジタル信号に変換するA/D変換器19と、方位センサ12の信号(アナログ)をデジタル信号に変換するA/D変換器20と、車速センサ13から出力されるパルス数を0.1秒毎にカウントするカウンタ26と、スイッチ14の押圧の有無を入力するパラレルI/O21と、CD−ROM15から読みだされた地図データを転送するDMA(Direct Memory Access)コントローラ22と、ディスプレイ17に地図画像を表示する表示プロセッサ23とを有する。
【0021】
また、コントローラ18は、さらに、マイクロプロセッサ24と、メモリ25とを有する。マイクロプロセッサ24は、A/D変換器19を介して得た角速度センサ11の信号、A/D変換器20を介して得た方位センサ12の信号、カウンタ26がカウントした車速センサ13の出力パルス数、パラレルI/O21を介して入力するスイッチ14の押圧の有無、DMAコントロ−ラ22を介して得たCD−ROM15からの地図データを受け入れて、それら信号に基づいて処理を行い、車両の現在位置を算出して、それを表示プロセッサ23を介してディスプレイ17に表示させる。この車両位置の表示は、図2に示すように、すでにディスプレイ17に表示している地図上に矢印マ−ク等を重畳して表示することにより行う。これにより、ユーザは、地図上で車両の現在位置を知ることができる。メモリ25は、このような動作を実現するための処理(後述)の内容を規定するプログラムなどを格納したROMと、マイクロプロセッサ24が処理を行う場合にワ−クエリアとして使用するRAMとを含んでいる。
【0022】
以下、このように構成された現在位置算出装置10の動作について説明する。
【0023】
装置10の動作は、全般的に、車両の進行方位及び進行距離を算出する処理と、算出された進行方位及び距離から車両の現在位置を決定する処理と、得られた車両位置および方位を表示する処理との三つの処理に分けることができるため、これらについて順次説明する。
【0024】
図3に、車両の進行方位及び進行距離を算出する処理の流れを説明する。
【0025】
この処理は、一定周期、たとえば100mS毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0026】
このルーチンでは、最初、A/D変換器19から角速度センサ11の出力値を読み込む(ステップ301)。この角速度センサ11の出力値には、方位変化が出力されるので、車両の進行方向の相対的な値しか検出できない。このため、次に、A/D変換器20から、地磁気センサからなる方位センサ12の出力値を読み込み(ステップ302)、この方位センサ12の出力値により算出された絶対方位と角速度センサ11から出力される方位変化(角速度出力)とを用いて、車両の推定方位を決定する(ステップ303)。
【0027】
この方位の決定は、たとえば、長い時間、車速が低い時には、角速度センサの誤差が大きいので、一定時間以上車速が低い場合には、方位センサの方位のみを利用するという方法により行う。
【0028】
次に、車速センサ13の出力するパルス数を、0.1秒毎に、カウンタ26で計数して、その計数値を読み込む(ステップ304)。この読み込んだ値に、距離係数を乗算することで、0.1秒間に進んだ距離を求める(ステップ305)。
【0029】
次に、このようにして求められた0.1秒間あたりの進行距離値を、前回得られた値に積算して、車両の進行距離が20mとなったかどうかを調べ(ステップ306)、20mに満たない場合(ステップ306でノー(No))、今回の処理を終了して、新たな処理を開始する。
【0030】
進行距離算出処理の結果、積算された進行距離が一定距離、例えば20mとなった場合(ステップ306でイエス(Yes))、その時点での進行方向と進行距離R(本実施例においては20m)とを出力する(ステップ307)。ステップ307では、さらに、積算距離を初期化して、新たに進行距離の積算を開始する。
【0031】
次に、算出された進行方位および進行距離に基づいて、車両の仮想現在位置を算出し、算出された仮想現在位置に基づき、車両の候補点を求める処理について説明する。
【0032】
図4に、この処理の流れを示す。
【0033】
本処理は、図3からの進行方位および進行距離が出力されるのを受けて起動され、実行されるマイクロプロセッサ24のルーチンである。すなわち、本実施例において、本処理は、車両が20m進む毎に起動される。
【0034】
さて、この処理では、まず、ステップ307で出力された進行方位と進行距離とを読み込む(ステップ401)。次に、それらの値に基づいて、車両の移動量を緯度経度方向、別々に、それぞれ求める。さらに、これらの各方向における移動量を、前回の車両の候補点を求める処理で得られた車両の候補点の位置に加算して、現在車両が存在すると推定される位置である仮想現在位置(A)を求める(ステップ402)。
【0035】
もし、装置の始動直後など、前回の車両の候補点を求める処理で得られた候補点が存在しない場合には、別途設定された位置を、前回得られた候補点の位置として用いて仮想現在位置(A)を求める。
【0036】
ここに、候補点につき説明を加える。装置の始動直後など、初期的な状態においては、仮想現在位置(A)は、ユーザ(運転者)がスイッチ14を用いて所定の情報を入力することなどにより、一意的に定まり、かつ、これは道路に対応する線分上に位置する。しかしながら、車両が走行した後には、方位センサなどの誤差などにより、仮想現在位置(A)が、道路に対応する線分上に存在しなくなる場合がある。その結果、たとえば、図5に示すように、道路が分岐している場合、すなわち、道路に対応する線分61の節点すなわち端部68から、二つの線分64および65があらわれる場合に、いずれの線分に対応する道路上に車両が存在するかが、明確にすることができない場合が多い。
【0037】
したがって、このような場合に、本実施例においては、後述する処理により得られた線分(図5に示す例では二つの線分)上に存在する点を、所定の条件の下で候補点として設定し、これらの現在位置、エラーコスト、後述する累算エラーコストなどを、それぞれ、メモリ25のRAMの所定の領域に記憶するように構成されている。なお、説明を容易にするため、以下の説明においては、特に複数の候補点であることを明示しない限り、単一の候補点から、新たな一以上の候補点を生成することとする。
【0038】
次いで、前回の車両の候補点を求める処理で得られたマッチング状態の候補点のみに関して、道路とのマッチングを行うための第1の道路検索処理が実行される(ステップ403)。なお、本実施例において、マッチング状態とは、ある仮想現在位置に関連して、該仮想現在位置との距離、或いは、その方位と車両の進行方位との間の方位差が、所定の範囲内であるような道路が存在し、その結果、仮想現在位置に基づき、道路上の所定の位置に候補点が得られた状態を称する。これに対して、ある仮想現在位置に関連して、上述した距離および方位差が、所定の範囲内であるような道路が存在しない場合が考えられる。本実施例においては、このような場合に、仮想現在位置Aに対応する点自体が候補点となり、このようにして得られた候補点を、フリー状態の候補点と称している。
【0039】
ここに、図6は、本実施例にかかる第1の道路検索処理を示すフローチャートである。
【0040】
図6に示すように、この道路検索処理においては、まず、CD−ROM15から、ドライバ16およびDMAコントローラ23を介して、所定の道路データを読み出す(ステップ601)。本実施例においては、道路データとして、図7に示すように、2点間を結ぶ複数の線分51ないし55で近似し、それら線分を、その始点と終点の座標によって表したものなどを用いている。たとえば、線分53は、その始点(x3、y3)と終点(x4、y4)によって表現される。したがって、このステップ601においては、前回の処理により得られたマッチング状態の候補点が位置する線分が選択されて、これに関するデータが読み出される。
【0041】
次に、ステップ601において選択された線分の座標に基づき、候補点の位置から車両の進行方向に沿って、20mに対応する長さだけ進められた位置を含む線分を検索し、この線分に関する座標データなどを一次候補線分を示すデータとして一時的に記憶する(ステップ602)。より詳細には、候補点が位置する線分の車両の進行方向の端部までの長さが、20mに対応する長さ以上であれば、当該線分を一次候補線分として、その座標データなどを記憶する。また、候補点が位置する線分の車両の進行方向の端部までの長さが、20mに対応する長さ未満であれば、当該線分に接続する線分を検索する。
【0042】
次いで、ステップ602において少なくとも一つの一次候補線分が見つけられたか否かを判断し(ステップ603)、ノー(No)と判断された場合には、ステップ604に進む。
【0043】
これに対して、ステップ603においてイエス(Yes)と判断された場合には、車両の進行方位と、一次候補線分の方位との間の角度を比較する角度比較処理が実行される(ステップ605)。図8は、本実施例にかかる角度比較処理を示すフローチャートである。図8に示すように、この処理においては、車両の進行方位と線分の方位との方位差θdを算出し(ステップ901)、この方位差θdの絶対値が、所定のしきい値θthよりも大きいか否かを判断する(ステップ902)。本実施例において、このしきい値θthは、30°に設定されている。ステップ902においてノー(No)と判断された場合には、処理を終了し、その一方、イエス(Yes)と判断された場合には、この道路を一次候補線分としない旨の判断がなされ、一時的に記憶されたこの一次候補線分に対応するデータが削除される(ステップ903)。
【0044】
図6のステップ605に示す角度比較処理が終了すると、ステップ602において複数の一次候補線分が記憶された場合には、他の一次候補線分についても角度比較処理が実行され(ステップ605、606)、全ての一次候補線分につき、角度比較処理が実行されると、ステップ607に進む。このようにして、前回の処理において得られた候補点が位置する線分、或いは、これに接続する線分のうち、その方位と車両の方位との間の方位差が、しきい値θth以下であるような線分に関連するデータが、一次候補線分を示すデータとして記憶される。
【0045】
ステップ607は、一時的に記憶された一次候補線分が、少なくとも一つ以上存在するかどうかを判断する。このステップ607においてノー(No)と判断された場合には、ステップ604に進む。これに対して、ステップ607においてイエス(Yes)と判断された場合には、垂線距離比較処理が実行される(ステップ608)。ここに、図9は、本実施例にかかる垂線距離比較処理を示すフローチャートである。図9に示すように、この処理においては、仮想現在位置から一次候補線分に向けて垂線をひき、この垂線の長さLを求める(ステップ1001)。次いで、この垂線の長さLが、予め定められたしきい値Lth以下であるか否かを判断する(ステップ1002)。すなわち、一次候補線分が仮想現在位置から、しきい値Lthの範囲に存在しているかどうかを判断する。このステップ1002においてイエスと判断された場合には、この一次候補線分に関連する種々のデータが、二次候補線分を示すデータとして記憶されるとともに、前回の処理で得られた候補点から、所定の線分に沿って、距離Rだけ離間した位置の座標データが、当該二次候補線分に対応する位置データとして記憶される(ステップ1003)。
【0046】
その一方、ステップ1002においてノー(No)と判断された場合には、この一次候補線分に関連するデータは消去され、その結果、二次候補線分は生成されない(ステップ1004)。
【0047】
このように、垂線距離比較処理608が終了すると、全ての一次候補線分につき、処理が終了しているか否かが判断される(ステップ609)。
【0048】
ステップ608およびステップ609を繰り返すことにより、前回の処理により得られた候補点が位置する線分から、車両の進行方向に、該線分或いはこれに接続された線分に沿って、所定の距離Rだけ離間した点が存在し、その方位と車両の進行方位との間の方位差が、所定のしきい値θth以下であり、かつ、仮想現在位置との間の距離が、所定のしきい値Lth以下であるような二次候補線分を得ることができる。さらに、得られた二次線分に対応する位置データとして、前回の処理で得られた候補点から、所定の線分に沿って、距離Rだけ離間した位置の座標データを得ることができる。この座標データが、後述する候補点を示すデータに対応する。
【0049】
一次候補線分に関して、ステップ608および609の処理が終了すると、これらステップを経た結果、二次候補線分が得られているか否かを判断する(ステップ610)。このステップ610において、ノー(No)と判断された場合には、ステップ604に進み、その一方、イエス(Yes)と判断された場合には、処理を終了する。
【0050】
たとえば、図5において、線分61上に存在したある候補点62に対して、仮想現在位置Aが、点63に示す位置に表わされるとする。このような場合に、まず、候補点62が位置する線分61を選択し(ステップ601)、この線分上の候補点62から、車両の進行方向の端部68までの距離を判断する。図5の例の場合には、この線分に接続されている道路があるため、線分64、65に関連するデータが、それぞれ、一次候補線分を示すデータとして一時的に記憶され、それぞれに関連して、角度比較処理(ステップ605)が実行される。ここに、図5の例において、|θ(1)−θcar|<θth、かつ、|θ(2)−θcar|<θthであると仮定すると、ステップ605および606からなる処理ループが二回繰り返され、線分64、65のそれぞれに関連して、垂線距離比較処理(ステップ608)が実行される。
【0051】
さらに、図5の例において、L(1)<Lth、かつ、L(2)<Lthであったとすると、線分64、65に関連するデータが二次候補線分として記憶され、さらに、候補点62から、線分61および64、或いは、線分61および65に沿って、進行距離R(本実施例では20m)に対応する長さだけ進められた点が候補点66、67として設定され、この点の座標データ、仮想現在位置から線分までの距離L(1)、L(2)に対応するデータ、および、線分の角度θ(1)、θ(2)に対応するデータが記憶される。
【0052】
再度、図6の第1の道路検索処理の説明に戻る。ここで、ステップ603においてノー(No)と判断された場合、ステップ605の角度比較処理において、全ての一次候補線分が削除された場合(ステップ607でノー(No))、或いは、ステップ608の垂線距離比較処理において、二次候補線分が得られなかった場合(ステップ610でノー(No))には、仮想現在位置を示す座標データが、候補点を示すデータとなる。
【0053】
このようにステップ403の第1の道路検索処理が終了すると、前回の車両の候補点を求める処理で得られたフリー状態の候補点のみに関して、道路とのマッチングを行うための第2の道路検索処理が実行される(ステップ404)。第1の道路検索処理(ステップ403)および第2の道路検索処理(ステップ404)を実行することにより、前回の処理により得られた全ての候補点に関する新たな候補点を求めることが可能となる。図10は、本実施例にかかる第2の道路検索処理を示すフローチャートである。
【0054】
図10に示すように、この処理(ステップ1301ないし1304)は、図6に示すマッチング状態の候補点に対する第1の道路検索処理(図4のステップ403)に類似している。これら二つの処理の間の相違は以下の点にある。すなわち、第1の道路検索処理においては、前回の車両の候補点を求める処理で得られた候補点が位置する線分、あるいは、これに接続する線分を、一次候補線分として一時的に記憶し、これら一次候補線分から、さらに、その方位と車両方位との方位差が所定のしきい値θth以下であって、かつ、仮想現在位置からの距離に対応する長さが所定のしきい値Lth以内の線分を、二次候補線分として選択している。
【0055】
これに対して、第2の道路検索処理においては、仮想現在位置(A)を中心とする予め設定された距離D内にある線分をすべて抽出し(ステップ1301)、これら線分から、その方位と車両方位との方位差が所定のしきい値θth以下の線分を選択し(ステップ1302)、さらに、選択された線分と仮想現在位置との間の距離を求め、この距離に対応する長さが所定のしきい値Lth以内の線分を二次候補線分として選択している(ステップ1303)。換言すれば、第1の道路選択処理のステップ602においては、候補点が位置する線分、或いは、当該線分の分岐点から延びる幾つかの線分などが選択されるが、図10のステップ1302においては、読み出された地図データに含まれる道路データに基づき、抽出すべき線分が決定される。したがって、ステップ1301ないし1303を実行するための処理時間は、道路データに対応する道路の密度に依存し、特に、読み出された地図データに対応する地図が、市街地であった場合など、道路の密度が大きい場合に、この処理時間は、第1の道路検索処理における対応する処理を実行するのに必要な時間と比較すると大きい。
【0056】
この第2の道路検索処理において、ステップ1303が終了すると、ステップ1302およびステップ1303により取り出された線分、すなわち、その方位と車両方位との間の方位差が、しきい値θth以下であり、かつ、仮想現在位置からの距離に対応する長さがしきい値Lth以下であるような線分が、二次候補線分として選択され、該線分に関連する種々のデータが、二次候補線分を示すデータとして記憶される。また、現在地現在位置の存在する点、および、仮想現在位置から当該線分におろした垂線の足、すなわち、この垂線と線分との交点が、候補点と決定され、これら候補点の座標データが記憶される(ステップ1304)。なお、第2の道路検索処理においては、仮想現在位置からおろした垂線と線分との交点が候補点となるが、これは、前回の処理により得られた候補点が、フリー状態であり、したがって、たどるべき線分が存在しないためである。
【0057】
なお、この第2の道路検索処理において、仮想現在位置から所定の範囲D内に線分が存在しない場合、その方位と車両の進行方位との方位差がしきい値θth以下の線分が存在しない場合、或いは、仮想現在位置からの距離に対応する長さがしきい値Lth以下であるような線分が存在しない場合には、仮想現在位置に対応する点が、唯一の候補点となる。
【0058】
上述したように、ステップ404の第2の道路探索処理が終了すると、第1の道路検索処理および第2の道路検索処理により得られた複数の候補点から、所定のものを選択する候補点選択処理が実行される(ステップ405)。
【0059】
本実施例においては、最終的に7つの候補点のみが、メモリ25中のRAMに記憶されるようになっている。したがって、次回の処理において仮想現在位置を算出するための基礎とすべき候補点が、このステップ405により選択される。図11は、本実施例にかかる候補点選択処理を示すフローチャートである。なお、前述したように、本処理においては、最終的に7つの候補点が選択される(図11のステップ1114)が、このステップに至るまでの途中のステップでは、一時的に、最大で14の候補点が選択されるようになっている。
【0060】
この処理においては、まず、前回の処理により得られた候補点Aiがいくつあるかを調べ(ステップ1101)、これら候補点を、後述する車両の現在位置である信憑性を示す信頼度の値が大きい順にソートする(ステップ1102)。次いで、前回の処理で得られたそれぞれの候補点が、新たに、いくつの候補点を生成し得るかが決定される(ステップ1103)。より詳細には、図12に示す生成可能候補数テーブルが参照され、前回の処理により得られた候補点Aの数cntごとに、信頼度の値が最も大きい候補点A0ないしその値が最も小さい候補点A6が生成することができる候補点の数が決定される。
【0061】
たとえば、候補数Aiの数cntが3である場合には、A0に基づき7つの候補点、A1に基づき4つの候補点、および、A2に基づき3つの候補点を生成することが可能となる。また、候補点Aの信頼度の値が大きくなるのにしたがって、当該候補点に基づき生成され得る候補点の数が大きくなることに留意すべきである。
【0062】
このように、前回の処理において生成された候補点の数、および、これら候補点の信頼度の値にしたがって、各候補点に基づき生成され得る候補点の数が決定される理由を説明する。
【0063】
図5を用いて説明したように、マッチング状態の候補点が、分岐点を通過すると、分岐点に接続された線分の数だけ、新たな候補点が生成される場合がある。また、フリー状態の候補点に基づき得られた仮想現在位置の所定の範囲内に線分が存在する場合には、当該仮想現在位置に対応する点、および、仮想現在位置から線分におろした垂線と当該線分との交点の双方が、新たな候補点となる場合がある。このように、車両が走行するのにしたがって候補点の数は、累積的に大きくなる。その一方、メモリの記憶容量や、候補点を算出するための処理時間などにより、記憶することができる候補点の数は限定されている。
【0064】
したがって、本実施例においては、生成可能候補点テーブルにしたがって、前回の処理により得られた最大で7つの候補点のそれぞれが、少なくとも一つの新たな候補点を生成できるようにし、かつ、生成可能な新たな候補点の数は、候補点の信頼度の値にしたがって大きくなるようにしている。
【0065】
このようにステップ1103において、前回の処理により得られた候補点に基づき新たに生成可能な候補点の数が決定されると、前回の処理により得られた候補点A0ないしA7のそれぞれに基づき得られた新たな候補点Bijのエラーコスト、信頼度などが算出される(ステップ1105ないしステップ1111)。
【0066】
さらに、本実施例においては、前回の処理により得られた候補点に基づき、ステップ403或いはステップ404で得られた候補点の数が、生成可能な候補点の数に満たない場合には、残余の生成可能な候補点の数、すなわち、(当該候補点に基づき生成可能な候補点の数m)−(実際にステップ403或いはステップ404により得られた候補点Bijの数)は、その信頼度の値が当該候補点の次に大きな他の候補点に基づき生成可能な候補点の数に割り当てられる。
【0067】
より詳細には、まず、ステップ1104において残余数x=0に初期化され、次いで、y=生成可能な候補点の数m+残余数x−(実際に得られた候補点Bijの数)が算出される(ステップ1105)。このyが0(ゼロ)以上であった場合、すなわち、m+xが、実際に得られた候補点Bijの数以上であった場合には(ステップ1106でノー(No))、得られたyが、次回のステップ1105で用いるべき新たな残余数xとなり(ステップ1107)、得られた候補点Bijのそれぞれのエラーコスト、累算エラーコスト、および、信頼度が算出される(ステップ1108)。
【0068】
より詳細には、前回の処理で得られた候補点Aiに基づく仮想現在位置と、得られた候補点Bijが位置する二次候補線分との間の距離L(ij)と、候補点が位置する二次候補線分の方位と車両の方位との間の方位差θd(ij)とに基づき、以下の式により定義されるエラーコストec(ij)が算出される。
【0069】
ec(ij)=α×|θd(ij)|+β×L(ij)
ここに、αおよびβは、重み係数である。これら重み係数の値は、車両の進行方位と線分の方位との間のずれと、仮想現在位置と線分との間のずれとの何れを、道路が選択される上で重視するかにしたがって決定される。たとえば、進行方位とその方位と方位が近い道路を選択することを重視する場合は、αを大きくするようにする。
【0070】
次いで、算出されたエラーコストec(ij)と、前回の処理で得られた候補点Aiに関連する累算エラーコストesとにしたがって、下記の式により定義される、今回の処理における累算エラーコストes(ij)が算出される。
【0071】
es(ij)=(1−k)×es+k×ec(ij)
ここに、kは、0より大きく1より小さな重み係数である。この累算エラーコストes(ij)は、前回以前の処理において算出されたエラーコストを、今回の処理において算出されるエラーコストにどのくらい反映させるかを表わしている。
【0072】
さらに、算出された累算エラーコストes(ij)に基づき、下記の式に定義される信頼度trst(ij)が算出される。
【0073】
trst(ij)=100/(1+es(ij))
上記式から明らかなように、累算エラーコストes(ij)が大きくなるのにしたがって、信頼度trst(ij)は減少し、0(ゼロ)に近づく。その一方、これが小さくなるのにしたがって、信頼度trst(ij)は増大し、その値は、100に近づく。
【0074】
このような処理をすることにより、候補点Aiに対応して得られた候補点に関連する信頼度trst(ij)が求められる。
【0075】
なお、フリー状態の候補点に関連して、ステップ405で算出すべきエラーコストec(ij)には、マッチング状態である場合に得られるエラーコストの値よりも大きな一定の値が与えられる。
【0076】
その一方、yが負であった場合、すなわち、m+xが、実際に得られた候補点Bijよりも小さい場合には(ステップ1106でイエス(Yes))、ステップ1108と同様に、Bijのそれぞれにつき、エラーコストec(ij)、累積エラーコストes(ij)および信頼度trst(ij)が算出され、候補点Bijの各々に対応する信頼度trst(ij)の値にしたがって、これら新たな候補点Bijがソートされる(ステップ1109)。
【0077】
さらに、その信頼度の値が小さい方から、|y|個の候補点を削除する。すなわち、メモリ25のRAMに記憶されたこれら候補点に関連するデータが削除される(ステップ1110)。この場合には、yが負の場合には、残余数xは0(ゼロ)となるため、ステップ1111において、x=0とされる。
【0078】
このような処理を繰り返すことにより、最大で14個の候補点Bijを得ることができる。
【0079】
たとえば、図13に示すように、前回の処理によりA0ないしA6の7つの候補点が選ばれ、ステップ403或いはステップ404において、これら候補点に基づきそれぞれKi個の候補点Bijが得られている場合を考える。この場合には、各Aiに関連するステップ1105において、図13に示すようなyが生成され、このyの値にしたがって、ステップ1107およびステップ1108、或いは、ステップ1109ないしステップ1111が実行される。ここに、A5に関連して、y=2+0(これは、A4に関する処理で得られた残余数)−3=ー1であるため、3個のBijのうち、その信頼度の値の大きな2個のBijのみが残されることになる。
【0080】
ステップ1105ないしステップ1111までの処理を前回の処理により得られた候補点Aiのすべてに関連して実行すると(ステップ1112でイエス(Yes))、得られた候補点Bijを、その信頼度の値にしたがってソートし(ステップ1113)、信頼度の大きい順に、所定の数(本実施例においては7個)の候補点のみが選択され、これら候補点に関連するデータが、メモリ25のRAMの所定の領域に記憶される(ステップ1114)。
【0081】
以上、詳述したように、候補点選択処理(図4のステップ405)が終了すると、選択された所定の数(本実施例においては7個)の候補点のうち、その信頼度の値が最も大きな候補点を、表示候補点、すなわち、ディスプレイ17上に表示するための候補点として、その位置、累算エラーコスト、信頼度、マッチング状態であるかフリー状態であるかを示す状態フラグなどを、メモリ25のRAMの所定の領域に記憶する。また、表示候補点以外の他の候補点の位置、累算エラーコスト、信頼度、状態フラグなども、RAMの所定の領域に記憶される(ステップ406)。
【0082】
最後に、表示候補点に関連するデータが出力され(ステップ407)、処理を終了する。
【0083】
図4のステップ401ないし406を実行することにより得られた表示候補点は、図14に示すフローチャートに基づく処理によりディスプレイ17の画面上に表示される。
【0084】
本処理は、1秒毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0085】
最初、スイッチ14が押圧により地図の縮尺の変更を指示されているかを、パラレルI/O21の内容を見て判断する(ステップ1401)。もし、押されていれば(ステップ1401でイエス(Yes))、それに対応して、所定の縮尺フラグを設定する(ステップ1402)。
【0086】
次に、図4の処理を実行することにより得られた表示候補点の位置および方位を示すデータを、メモリ25のRAMの所定の領域から読み出し(ステップ1403)、ステップ1402で切り替えられた縮尺フラグの内容に応じた縮尺の地図をディスプレイ17に、例えば、図2に示すような状態で表示する(ステップ1404)。
【0087】
そして、地図に重畳して、表示候補点の位置およびその方位を、たとえば、先に示した図2のように、矢印記号“↑”を用いて表示する(ステップ1405)。そして最後に、これらに重畳して、北を示す北マークと、縮尺に対応した距離マークとを、図2のように表示する(ステップ1406)。
【0088】
なお、本実施例においては、上記のように矢印記号を用いて車両位置および方向を示したが、車両位置および方向の表示形態は、位置および進行方向が、表示状態が明確に示されるものであれば、その形態は任意でよい。また、北マーク等も同様である。
【0089】
本実施例によれば、候補点選択処理において、前回の処理により得られた候補点から、少なくとも一つの候補点が生成可能であるように、かつ、各候補点が道路の現在位置である信憑性を示す信頼度にしたがって、各候補点から生成可能な新たな候補点の数が決定されるため、道路の分岐などにより候補点が多数生成され得る状態になった場合であっても、適切な候補点に基づき、車両の現在位置をより正確に算出することが可能となる。
【0090】
また、本実施例によれば、マッチング状態の候補点から得られた仮想現在位置に関連して、当該候補点が位置する線分、或いは、これに接続された線分を検索するため、仮想現在位置の周辺に存在する全ての道路を検索する場合と比較すると、より短時間で、所望の線分を検索することが可能となる。
【0091】
さらに、本実施例によれば、マッチング状態の候補点の位置する線分および/または該候補点の位置する線分に接続された線分に沿って、車両の進行距離に対応する長さだけ、前記候補点から進められた位置を候補点とするため、算出された車両の現在位置と実際の車両の現在位置との間の誤差をより小さくすることが可能となる。
【0092】
本発明は、以上の実施例に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【0093】
たとえば、前記実施例においては、候補点選択処理が、最大で14個の候補点を一時的に保持し、最終的にこれら候補点から7個の候補点を選択するように構成されているが、一時的に保持され、或いは最終的に選択される候補点の数は、これに限定されるものではない。
【0094】
また、前記実施例の候補点選択処理においては、候補点Bijの信頼度に基づき、削除すべき候補点が決定されている(図11のステップ1109、1110)が、これに限定されるものではない。たとえば、候補点選択処理のための処理時間を小さくするためには、Bijのエラーコストに基づき、削除すべき候補点を決定し、残りの候補点の信頼度のみを算出するように構成してもよい。
【0095】
また、本実施例において用いられたパラメータは、例示のために与えられたものに過ぎず、したがって、これらパラメータは、装置の処理速度、車両が走行する道路の種別(例えば、一般道路、高速道路など)にしたがって変更可能であることを理解すべきである。
【0096】
さらに、本明細書において、手段とは、必ずしも物理的手段を意味するものではなく、各手段の機能が、ソフトウエアによって実現される場合も包含する。また、一つの手段の機能が二以上の物理的手段により実現されても、二以上の手段の機能が一つの物理的手段により実現されてもよい。
【0097】
【発明の効果】
本発明によれば、複数の車両の推定位置があるときに、これらから適切な推定位置を選択することにより、より正確に車両の現在位置を算出する現在位置算出システムを提供することが可能となる。
【図面の簡単な説明】
【図1】 図1は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。
【図2】 図2は、本実施例にかかる地図および現在位置の表示例を示す図である。
【図3】 図3は、本実施例にかかる車両の進行方位および進行距離を算出する処理を示すフローチャートである。
【図4】 図4は、本実施例にかかる車両の候補点を算出する処理を示すフローチャートである。
【図5】 図5は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図6】 図6は、本実施例にかかる第1の道路検索処理を示すフローチャートである。
【図7】 図7は、本実施例にかかる道路データの一例を説明するための図である。
【図8】 図8は、本実施例にかかる角度比較処理を示すフローチャートである。
【図9】 図9は、本実施例にかかる垂線距離比較処理を示すフローチャートである。
【図10】 図10は、本実施例にかかる第2の道路検索処理を示すフローチャートである。
【図11】 図11は、本実施例にかかる候補点選択処理を示すフローチャートである。
【図12】 図12は、本実施例にかかる生成可能候補数テーブルを示す図である。
【図13】 図13は、本実施例にかかる候補点の選択を説明するための図である。
【図14】 図14は、本実施例にかかる現在位置表示処理を示すフローチャートである。
【符号の説明】
10 現在位置算出装置
11 角速度センサ
12 方位センサ
13 車速センサ
14 スイッチ
15 CD−ROM
16 CD−ROM読み取りドライバ
17 ディスプレイ
18 コントローラ[0001]
[Industrial application fields]
The present invention relates to a current position calculation system that is mounted on a moving body such as a vehicle, measures a traveling distance, a traveling direction, and the like of the moving body, thereby calculating a current position of the moving body.
[0002]
[Prior art]
Conventionally, in a current position calculation system for calculating the current position of a vehicle traveling on a road, the current position of the vehicle is measured by a vehicle traveling direction measured by an orientation sensor such as a gyro and a vehicle speed sensor or a distance sensor. It is calculated based on the travel distance of the vehicle.
[0003]
Further, the travel distance of the vehicle is generally obtained by measuring the output shaft of the transmission or the rotation speed of the tire and multiplying the rotation speed by a distance coefficient that is the distance the vehicle travels per rotation of the tire. It is demanded by.
[0004]
Further, in order to correct the error of the current position obtained from the traveling direction and the traveling distance of the vehicle as described above, as described in Japanese Patent Laid-Open No. 63-148115, the vehicle determined based on the traveling distance and the amount of change in direction Based on the estimated position and the error of the road map, an error amount is obtained, and the estimated position is registered as a self position corresponding to all roads within the range of the error amount centered on the estimated position. A technique is disclosed in which a correlation coefficient for each road at a registered estimated position is calculated, and an estimated position corresponding to the correlation coefficient indicating that the error with respect to the road is the smallest is the current position. As described in this publication, a so-called map matching technique for correcting the current position of the obtained vehicle so as to match the road is known, and this map matching technique allows the calculation of the current position. Accuracy can be increased.
[0005]
[Problems to be solved by the invention]
When map matching is executed using the technique described above, a plurality of estimated positions may be calculated when the vehicle passes through a branch point. That is, as the vehicle travels and repeatedly passes through the branch point, the number of estimated positions increases significantly. In general, a current position calculation system that calculates the current position of a vehicle by executing map matching can only store several estimated positions due to the limitation of the storage capacity of a memory provided therein. Furthermore, the current position calculation system may not be able to calculate all estimated positions due to the processing time limit for executing map matching.
[0006]
Therefore, any estimated position is selected from a plurality of estimated positions, and the current position of a new vehicle is calculated based on the selected estimated position. It is desirable to decide appropriately whether to keep it.
An object of the present invention is to provide a current position calculation system that calculates a current position of a vehicle more accurately by selecting an appropriate estimated position from a plurality of estimated positions of a plurality of vehicles.
[0007]
[Means for solving the problems]
An object of the present invention is a current position calculation system that is mounted on a vehicle and calculates the current position of the vehicle, the direction detection means for detecting the traveling direction of the vehicle, and the distance calculation means for calculating the travel distance of the vehicle, Based on the relative displacement obtained based on the traveling direction and the travel distance and a candidate point indicating a state where the vehicle is located on any road or a state where the vehicle is not located on the road. Virtual current position generating means for generating a virtual current position that is expected to be a position, and the virtual current position and road data included in the map data so that at least one candidate point is obtained based on each candidate point And a candidate point generating means for generating a new candidate point, and a predetermined one selected from the new candidate point is set as the calculated current position of the vehicle Position calculation It is achieved by the system.
[0008]
In a preferred embodiment of the present invention, the image processing apparatus further includes reliability calculation means for calculating reliability indicating the credibility that the vehicle exists at a position on the road corresponding to the candidate point, and the candidate point generation means includes the Based on the reliability, it has a determining means for determining the number of candidates indicating the number of new candidate points that each candidate point should obtain, and generates new candidate points based on each candidate point according to the determined number of candidates. It is configured as follows.
[0009]
In a further preferred aspect of the present invention, the candidate point generating means is configured to assign a predetermined number of candidates to each candidate point according to the total number of candidate points.
[0010]
In a further preferred aspect of the present invention, the number of candidates is stored in a table having the total number of candidate points as an address.
[0011]
In a further preferred embodiment of the present invention, a predetermined one of the new candidate points is selected as the calculated current position according to the reliability.
[0012]
In a further preferred embodiment of the present invention, the candidate point generating means is configured such that the azimuth difference between the azimuth of the line corresponding to certain data included in the road data and the vehicle azimuth is greater than a predetermined angle value. In the case of being small, it is configured to generate candidate points indicating that the vehicle exists on the road corresponding to the line segment.
[0013]
[Action]
According to the present invention, at least one candidate point is obtained based on each candidate point. That is, a virtual current position is obtained from a certain candidate point, and one or more candidate points are always generated based on the virtual current position. Therefore, even though a certain candidate point is the current position of the vehicle, a new storage point based on the candidate point is newly created based on the limitation of the storage capacity of the memory for storing the candidate point or the limitation of the processing time of the system. The possibility that the candidate point cannot be obtained can be reduced, and as a result, the current position of the vehicle can be calculated more accurately.
[0014]
According to the preferred embodiment of the present invention, since the number of candidates indicating the number of new candidate points that each candidate point should obtain is determined based on the reliability, the candidate point with higher reliability that is the current position of the road Based on the above, it becomes possible to generate more new candidate points.
[0015]
According to a further preferred embodiment of the present invention, each candidate point is configured to be assigned a predetermined number of candidates according to the total number of candidate points, so that when the total number of candidate points is large, or In any case where the number is small, an appropriate number of new candidate points can be generated.
[0016]
According to a further preferred embodiment of the present invention, since the number of candidates is stored in the table, an appropriate number of candidates based on the total number of candidate points can be obtained by simple processing.
[0017]
【Example】
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0018]
FIG. 1 is a block diagram showing a configuration of a current position calculation apparatus according to an embodiment of the present invention. As shown in FIG. 1, the current
[0019]
In addition, a
[0020]
The
[0021]
The
[0022]
Hereinafter, the operation of the current
[0023]
The operation of the
[0024]
FIG. 3 illustrates a flow of processing for calculating the traveling direction and traveling distance of the vehicle.
[0025]
This process is a routine of the
[0026]
In this routine, first, the output value of the angular velocity sensor 11 is read from the A / D converter 19 (step 301). Since an azimuth change is output as the output value of the angular velocity sensor 11, only a relative value in the traveling direction of the vehicle can be detected. For this reason, next, the output value of the
[0027]
For example, when the vehicle speed is low for a long time, the error of the angular velocity sensor is large. Therefore, when the vehicle speed is low for a certain time or more, the direction is determined by using only the direction of the direction sensor.
[0028]
Next, the number of pulses output from the
[0029]
Next, the travel distance value per 0.1 second thus determined is added to the previously obtained value to check whether the travel distance of the vehicle has reached 20 m (step 306). If not satisfied (No in step 306), the current process is terminated and a new process is started.
[0030]
As a result of the travel distance calculation process, when the accumulated travel distance becomes a certain distance, for example, 20 m (Yes in Step 306), the travel direction and the travel distance R (20 m in this embodiment) at that time Are output (step 307). In step 307, the accumulated distance is further initialized, and the accumulated travel distance is newly started.
[0031]
Next, a process of calculating a virtual current position of the vehicle based on the calculated traveling direction and traveling distance and obtaining a candidate point of the vehicle based on the calculated virtual current position will be described.
[0032]
FIG. 4 shows the flow of this process.
[0033]
This process is a routine of the
[0034]
Well, in this process, first, step 307 The travel direction and travel distance output in
[0035]
If there is no candidate point obtained by the process of obtaining the previous candidate point of the vehicle, such as immediately after the start of the device, the virtual current position is set using the position set separately as the position of the previously obtained candidate point. The position (A) is obtained.
[0036]
Here, explanation is added for each candidate point. In an initial state such as immediately after the start of the device, the virtual current position (A) is uniquely determined by the user (driver) inputting predetermined information using the
[0037]
Therefore, in such a case, in this embodiment, a point existing on a line segment (two line segments in the example shown in FIG. 5) obtained by the processing described later is selected as a candidate point under a predetermined condition. The current position, error cost, accumulated error cost, which will be described later, and the like are each stored in a predetermined area of the RAM of the
[0038]
Next, the first road search process for matching with the road is executed only for the candidate points in the matching state obtained by the process for obtaining the candidate points of the previous vehicle (step 403). In this embodiment, the matching state means that a distance from the virtual current position or an azimuth difference between the direction and the traveling direction of the vehicle is within a predetermined range in relation to a certain virtual current position. This means a state in which a candidate point is obtained at a predetermined position on the road based on the virtual current position. On the other hand, in relation to a certain virtual current position, there may be a case where there is no road where the above-described distance and direction difference are within a predetermined range. In this embodiment, in such a case, the point itself corresponding to the virtual current position A is a candidate point, and the candidate point obtained in this way is referred to as a free state candidate point.
[0039]
FIG. 6 is a flowchart illustrating the first road search process according to the present embodiment.
[0040]
As shown in FIG. 6, in this road search process, first, predetermined road data is read from the CD-
[0041]
Next, based on the coordinates of the line segment selected in step 601, a line segment including a position advanced by a length corresponding to 20 m along the traveling direction of the vehicle from the position of the candidate point is searched. Coordinate data relating to the minute is temporarily stored as data indicating the primary candidate line segment (step 602). More specifically, the length of the line segment where the candidate point is located to the end in the traveling direction of the vehicle is a length corresponding to 20 m. If it is above The coordinate data and the like are stored with the line segment as the primary candidate line segment. Further, the length to the end of the vehicle in the traveling direction of the line segment where the candidate point is located is a length corresponding to 20 m. Less than If so, a line segment connected to the line segment is searched.
[0042]
Next, in
[0043]
On the other hand, if it is determined as Yes in
[0044]
When the angle comparison process shown in step 605 of FIG. 6 is completed, if a plurality of primary candidate line segments are stored in
[0045]
Step 607 determines whether there is at least one primary candidate line segment temporarily stored. If it is determined NO in
[0046]
On the other hand, if it is determined NO in
[0047]
Thus, when the perpendicular
[0048]
By repeating
[0049]
When the processing of
[0050]
For example, in FIG. 5, it is assumed that the virtual current position A is represented at a position indicated by a
[0051]
Furthermore, in the example of FIG. 5, if L (1) <Lth and L (2) <Lth, the data related to the
[0052]
Returning to the description of the first road search process in FIG. 6 again. Here, when it is determined as No (No) at
[0053]
When the first road search process in
[0054]
As shown in FIG. 10, this process (steps 1301 to 1304) is similar to the first road search process (step 403 in FIG. 4) for the candidate points in the matching state shown in FIG. The difference between these two processes is as follows. That is, in the first road search process, the line segment where the candidate point obtained by the process for obtaining the candidate point of the previous vehicle is located or the line segment connected thereto is temporarily used as the primary candidate line segment. From these primary candidate line segments, further, the direction difference between the direction and the vehicle direction is equal to or smaller than a predetermined threshold value θth, and the length corresponding to the distance from the virtual current position is a predetermined threshold. A line segment within the value Lth is selected as a secondary candidate line segment.
[0055]
On the other hand, in the second road search process, all the line segments within the preset distance D centered on the virtual current position (A) are extracted (step 1301), and the direction is determined from these line segments. A line segment whose azimuth difference between the vehicle direction and the vehicle direction is equal to or smaller than a predetermined threshold value θth is selected (step 1302). A line segment whose length is within a predetermined threshold Lth is selected as a secondary candidate line segment (step 1303). In other words, in
[0056]
In this second road search process, when step 1303 ends, the line segment extracted in
[0057]
In the second road search process, when there is no line segment within the predetermined range D from the virtual current position, there is a line segment whose azimuth difference between the direction and the traveling direction of the vehicle is equal to or smaller than the threshold value θth. Otherwise, or when there is no line segment whose length corresponding to the distance from the virtual current position is equal to or less than the threshold value Lth, the point corresponding to the virtual current position is the only candidate point.
[0058]
As described above, when the second road search process in step 404 ends, candidate point selection for selecting a predetermined one from a plurality of candidate points obtained by the first road search process and the second road search process Processing is executed (step 405).
[0059]
In the present embodiment, only seven candidate points are finally stored in the RAM in the
[0060]
In this process, first, the number of candidate points Ai obtained by the previous process is checked (step 1101), and the reliability value indicating the reliability of the current position of the vehicle, which will be described later, is determined for these candidate points. Sort in descending order (step 1102). Next, it is determined how many candidate points can be newly generated for each candidate point obtained in the previous process (step 1103). More specifically, with reference to the generatable candidate number table shown in FIG. 12, for each number cnt of candidate points A obtained by the previous processing, the candidate point A0 having the largest reliability value or the smallest value is obtained. The number of candidate points that the candidate point A6 can generate is determined.
[0061]
For example, if the number cnt of the number of candidates Ai is 3, it is possible to generate seven candidate points based on A0, four candidate points based on A1, and three candidate points based on A2. It should be noted that as the reliability value of the candidate point A increases, the number of candidate points that can be generated based on the candidate point increases.
[0062]
The reason why the number of candidate points that can be generated based on each candidate point is determined according to the number of candidate points generated in the previous process and the reliability values of these candidate points will be described.
[0063]
As described with reference to FIG. 5, when candidate points in the matching state pass through a branch point, new candidate points may be generated as many as the number of line segments connected to the branch point. In addition, when a line segment exists within a predetermined range of the virtual current position obtained based on the candidate points in the free state, the point corresponding to the virtual current position and the line segment from the virtual current position are reduced. There are cases where both the intersection of the perpendicular line and the line segment become new candidate points. Thus, the number of candidate points increases cumulatively as the vehicle travels. On the other hand, the number of candidate points that can be stored is limited by the storage capacity of the memory, the processing time for calculating candidate points, and the like.
[0064]
Therefore, in this embodiment, according to the generatable candidate point table, each of up to seven candidate points obtained by the previous processing can generate and generate at least one new candidate point. The number of new candidate points is increased in accordance with the reliability value of the candidate points.
[0065]
As described above, when the number of candidate points that can be newly generated is determined based on the candidate points obtained by the previous process in
[0066]
Further, in this embodiment, if the number of candidate points obtained in
[0067]
More specifically, first, in step 1104, the residual number x = 0 is initialized, and then y = the number m of candidate points that can be generated + the residual number x− (the number of actually obtained candidate points Bij). (Step 1105). If y is 0 (zero) or more, that is, if m + x is greater than or equal to the number of candidate points Bij actually obtained (in step 1106). No ( No )), The obtained y becomes a new residual number x to be used in the next step 1105 (step 1107), and the error cost, accumulated error cost, and reliability of each obtained candidate point Bij are calculated. (Step 1108).
[0068]
More specifically, the distance L (ij) between the virtual current position based on the candidate point Ai obtained in the previous process and the secondary candidate line segment where the obtained candidate point Bij is located, and the candidate point is Based on the azimuth difference θd (ij) between the azimuth of the secondary candidate line and the azimuth of the vehicle, an error cost ec (ij) defined by the following equation is calculated.
[0069]
ec (ij) = α × | θd (ij) | + β × L (ij)
Here, α and β are weighting factors. The values of these weighting factors should be used to select a road between a deviation between the traveling direction of the vehicle and the direction of the line segment, or a deviation between the virtual current position and the line segment. Therefore, it is determined. For example, when it is important to select a traveling direction and a road having a similar direction and direction, α is increased.
[0070]
Next, according to the calculated error cost ec (ij) and the accumulated error cost es related to the candidate point Ai obtained in the previous process, the accumulated error in the current process defined by the following equation Cost es (ij) is calculated.
[0071]
es (ij) = (1-k) * es + k * ec (ij)
Here, k is a weight coefficient larger than 0 and smaller than 1. This accumulated error cost es (ij) represents how much the error cost calculated in the previous process is reflected in the error cost calculated in the current process.
[0072]
Further, based on the calculated accumulated error cost es (ij), a reliability trst (ij) defined by the following equation is calculated.
[0073]
trst (ij) = 100 / (1 + es (ij))
As is clear from the above equation, the accumulated error cost e s As (ij) increases, the reliability trst (ij) decreases and approaches 0 (zero). On the other hand, as this becomes smaller, the reliability trst (ij) increases and its value approaches 100.
[0074]
By performing such processing, the reliability trst (ij) related to the candidate point obtained corresponding to the candidate point Ai is obtained.
[0075]
In relation to the candidate point in the free state, the error cost ec (ij) to be calculated in
[0076]
On the other hand, if y is negative, that is, if m + x is smaller than the actually obtained candidate point Bij (in step 1106) Jesus ( Yes )), The error cost ec (ij), the accumulated error cost es (ij), and the reliability trst (ij) are calculated for each Bij as in
[0077]
Further, | y | candidate points are deleted from the one with the smaller reliability value. That is, data related to these candidate points stored in the RAM of the
[0078]
By repeating such processing, a maximum of 14 candidate points Bij can be obtained.
[0079]
For example, as shown in FIG. 13, seven candidate points A0 to A6 are selected by the previous process. If Consider the case where Ki candidate points Bij are obtained based on these candidate points in
[0080]
When the processing from step 1105 to step 1111 is executed in relation to all of the candidate points Ai obtained by the previous processing (Yes in step 1112), the obtained candidate points Bij are represented by their reliability values. (Step 1113) , Only a predetermined number (seven in this embodiment) of candidate points are selected in descending order of reliability, and data related to these candidate points is stored in a predetermined area of the RAM of the memory 25 (step 1114). ).
[0081]
As described above in detail, when the candidate point selection process (step 405 in FIG. 4) is completed, the reliability value of the predetermined number of candidate points (seven in this embodiment) is selected. The largest candidate point is set as a display candidate point, that is, a candidate point for displaying on the
[0082]
Finally, data related to the display candidate point is output (step 407), and the process ends.
[0083]
Display candidate points obtained by executing steps 401 to 406 in FIG. 4 are displayed on the screen of the
[0084]
This process is a routine of the
[0085]
First, it is determined by checking the contents of the parallel I /
[0086]
Next, data indicating the position and orientation of the display candidate point obtained by executing the processing of FIG. 4 is read from a predetermined area of the RAM of the memory 25 (step 1403), and the scale flag switched in step 1402 A map of a scale corresponding to the contents of is displayed on the
[0087]
Then, the position of the display candidate point and its orientation are displayed using the arrow symbol “↑” as shown in FIG. 2, for example, as shown in FIG. 2 (step 1405). Finally, a north mark indicating north and a distance mark corresponding to the scale are displayed as shown in FIG. 2 so as to be superimposed on these (step 1406).
[0088]
In the present embodiment, the vehicle position and direction are indicated by using the arrow symbols as described above. However, in the display form of the vehicle position and direction, the display state is clearly shown for the position and the traveling direction. If it exists, the form may be arbitrary. The same applies to the north mark and the like.
[0089]
According to the present embodiment, in the candidate point selection process, the confidence that at least one candidate point can be generated from the candidate points obtained by the previous process and each candidate point is the current position of the road. The number of new candidate points that can be generated from each candidate point is determined according to the reliability indicating the reliability, so even if a large number of candidate points can be generated due to road branching, etc. Based on such candidate points, the current position of the vehicle can be calculated more accurately.
[0090]
Further, according to the present embodiment, in order to search for the line segment where the candidate point is located or connected to the virtual current position obtained from the candidate point in the matching state, Compared with the case where all roads existing around the current position are searched, a desired line segment can be searched in a shorter time.
[0091]
Furthermore, according to the present embodiment, only the length corresponding to the travel distance of the vehicle along the line segment where the candidate point in the matching state is located and / or the line segment connected to the line segment where the candidate point is located. Since the position advanced from the candidate point is set as the candidate point, the error between the calculated current position of the vehicle and the actual current position of the vehicle can be further reduced.
[0092]
The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the invention described in the claims, and these are also included in the scope of the present invention. Needless to say.
[0093]
For example, in the embodiment, the candidate point selection process is configured to temporarily hold a maximum of 14 candidate points and finally select 7 candidate points from these candidate points. The number of candidate points that are temporarily held or finally selected is not limited to this.
[0094]
In the candidate point selection process of the embodiment, candidate points to be deleted are determined based on the reliability of the candidate points Bij (steps 1109 and 1110 in FIG. 11), but the present invention is not limited to this. Absent. For example, in order to reduce the processing time for candidate point selection processing, the candidate point to be deleted is determined based on the error cost of Bij, and only the reliability of the remaining candidate points is calculated. Also good.
[0095]
In addition, the parameters used in this embodiment are merely given for illustration, and therefore these parameters are the processing speed of the device, the type of road on which the vehicle is traveling (for example, general road, highway) It should be understood that the change can be made according to the above.
[0096]
Furthermore, in this specification, the means does not necessarily mean a physical means, but includes cases where the functions of the means are realized by software. Further, the function of one means may be realized by two or more physical means, or the functions of two or more means may be realized by one physical means.
[0097]
【The invention's effect】
According to the present invention, when there are estimated positions of a plurality of vehicles, it is possible to provide a current position calculation system that calculates the current position of the vehicle more accurately by selecting an appropriate estimated position from these. Become.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a current position calculation apparatus according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating a display example of a map and a current position according to the present embodiment.
FIG. 3 is a flowchart illustrating a process of calculating a traveling direction and a traveling distance of the vehicle according to the present embodiment.
FIG. 4 is a flowchart illustrating a process for calculating candidate points for a vehicle according to the embodiment.
FIG. 5 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and candidate points;
FIG. 6 is a flowchart illustrating a first road search process according to the embodiment.
FIG. 7 is a diagram for explaining an example of road data according to the embodiment.
FIG. 8 is a flowchart illustrating angle comparison processing according to the present embodiment.
FIG. 9 is a flowchart illustrating normal distance comparison processing according to the embodiment.
FIG. 10 is a flowchart of a second road search process according to the embodiment.
FIG. 11 is a flowchart of candidate point selection processing according to the embodiment.
FIG. 12 is a diagram illustrating a number of generatable candidates table according to the embodiment.
FIG. 13 is a diagram for explaining selection of candidate points according to the embodiment.
FIG. 14 is a flowchart illustrating a current position display process according to the embodiment.
[Explanation of symbols]
10 Current position calculation device
11 Angular velocity sensor
12 Direction sensor
13 Vehicle speed sensor
14 switch
15 CD-ROM
16 CD-ROM reader
17 Display
18 Controller
Claims (7)
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態、或いは、車両が道路上に位置しない状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成する仮想現在位置生成手段と、
各候補点に基づき、少なくとも一つの候補点が得られるように、前記仮想現在位置および前記検出された車両の進行方位と、地図データに含まれる道路データとを比較して、新たな候補点を生成する候補点生成手段と、
前記新たな候補点から選択された所定の一つを算出された車両の現在位置に推定する手段と、
前記候補点に対応する道路上の位置に、車両が存在する信憑性を示す信頼度を算出する信頼度算出手段と、を有し、
前記候補点生成手段は、前記信頼度に基づいて各候補点が得るべき新たな候補点の数を示す候補数を決定し、該決定された候補数にしたがって、各候補点に基づく新たな候補点を生成すること
を特徴とする現在位置算出システム。A current position calculation system for calculating a current position of a vehicle,
Direction detection means for detecting the traveling direction of the vehicle;
A distance calculating means for calculating a travel distance of the vehicle;
The current position of the vehicle based on the relative displacement obtained based on the traveling direction and the travel distance and a candidate point indicating a state where the vehicle is located on any road or a state where the vehicle is not located on the road Virtual current position generating means for generating a virtual current position expected to be,
Based on each candidate point, the virtual current position and the detected traveling direction of the vehicle are compared with road data included in the map data so that a new candidate point is obtained so that at least one candidate point is obtained. Candidate point generating means for generating;
Means for estimating a predetermined one selected from the new candidate points to the calculated current position of the vehicle ;
A reliability calculation means for calculating a reliability indicating the credibility that the vehicle exists at a position on the road corresponding to the candidate point;
The candidate point generation means determines the number of candidates indicating the number of new candidate points that each candidate point should obtain based on the reliability, and according to the determined number of candidates, a new candidate based on each candidate point A current position calculation system characterized by generating points .
を特徴とする請求項1に記載の現在位置算出システム。The current position calculation system according to claim 1 , wherein the candidate point generation unit is configured to assign a predetermined number of candidates to each candidate point according to the total number of candidate points.
を特徴とする請求項2に記載の現在位置算出システム。The candidate point generation unit has a table storing the number of candidates that can be generated from each candidate point for each total number of candidate points, and the number of candidates is determined based on data obtained from the table. The current position calculation system according to claim 2 .
前記信頼度にしたがって、前記新たな候補点から所定の一つを前記算出された現在位置として選択すること
を特徴とする請求項1に記載の現在位置算出システム。The estimating means includes
The current position calculation system according to claim 1 , wherein a predetermined one of the new candidate points is selected as the calculated current position according to the reliability.
を特徴とする請求項1ないし4の何れか一項に記載の現在位置算出システム。When the candidate point generation means determines that the azimuth difference between the azimuth of a line segment corresponding to certain data included in the road data and the vehicle azimuth is smaller than a predetermined angle value, the vehicle becomes the line segment. current position calculating system as claimed in any one of claims 1 to 4, characterized in that it is configured to generate the candidate points shown that present on the corresponding road.
前記現在位置算出システムは、
車両の進行方位を検出するステップと、
車両の走行距離を算出するステップと、
前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態、或いは、車両が道路上に位置しない状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成するステップと、
各候補点に基づき、少なくとも一つの候補点が得られるように、前記仮想現在位置および前記検出された車両の進行方位と、地図データに含まれる道路データとを比較して、新たな候補点を生成する候補点生成ステップと、
前記新たな候補点から選択された所定の一つを算出された車両の現在位置に推定するステップと、
前記候補点に対応する道路上の位置に、車両が存在する信憑性を示す信頼度を算出するステップと、を行ない、
前記候補点生成ステップは、
前記信頼度に基づき、各候補点が得るべき新たな候補点の数を示す候補数を決定し、該決定された候補数にしたがって、各候補点に基づく新たな候補点を生成すること
を特徴とする現在位置算出方法。A current position calculation method performed by a current position calculation system for calculating a current position of a vehicle,
The current position calculation system includes:
Detecting the traveling direction of the vehicle;
Calculating the mileage of the vehicle;
The current position of the vehicle based on the relative displacement obtained based on the traveling direction and the travel distance and a candidate point indicating a state where the vehicle is located on any road or a state where the vehicle is not located on the road Generating a virtual current position expected to be;
Based on each candidate point, the virtual current position and the detected traveling direction of the vehicle are compared with road data included in the map data so that a new candidate point is obtained so that at least one candidate point is obtained. A candidate point generation step to generate;
Estimating a predetermined one selected from the new candidate points to the calculated current position of the vehicle ;
Performing a step of calculating the reliability indicating the credibility that the vehicle exists at a position on the road corresponding to the candidate point;
The candidate point generation step includes:
Based on the reliability, determining the number of candidates indicating the number of new candidate points that each candidate point should obtain, and generating new candidate points based on each candidate point according to the determined number of candidates <br> A current position calculation method characterized by the following:
を特徴とする請求項2または3に記載の現在位置算出システム。When the number of candidates related to a predetermined candidate point is smaller than the predetermined number of candidates, the number corresponding to these differences is set as another candidate having a reliability smaller than the reliability of the predetermined candidate point. current position calculating system as defined in claim 2 or 3, characterized in that it is configured to add the number of candidates to be associated with the point.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14367295A JP3656661B2 (en) | 1995-06-09 | 1995-06-09 | Current position calculation system and current position calculation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14367295A JP3656661B2 (en) | 1995-06-09 | 1995-06-09 | Current position calculation system and current position calculation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08334369A JPH08334369A (en) | 1996-12-17 |
JP3656661B2 true JP3656661B2 (en) | 2005-06-08 |
Family
ID=15344260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14367295A Expired - Lifetime JP3656661B2 (en) | 1995-06-09 | 1995-06-09 | Current position calculation system and current position calculation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3656661B2 (en) |
-
1995
- 1995-06-09 JP JP14367295A patent/JP3656661B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH08334369A (en) | 1996-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3545839B2 (en) | Current position calculation device | |
KR100231285B1 (en) | Current position calculating device | |
JP3634006B2 (en) | Current position calculation device | |
JP3656661B2 (en) | Current position calculation system and current position calculation method | |
JP3596943B2 (en) | Current position calculation system and current position calculation method | |
JP3758710B2 (en) | Current position calculation system and current position calculation method | |
JP3660392B2 (en) | Current position calculation system and current position calculation method | |
JP3682091B2 (en) | Current position calculation system and current position calculation method | |
JP3634005B2 (en) | Current position calculation device | |
JP3693383B2 (en) | Current position calculation system and current position calculation method | |
JP3679450B2 (en) | Current position calculation device and current position calculation method | |
JP3660389B2 (en) | Current position calculation system and current position calculation method | |
JP3599420B2 (en) | Current position calculation device | |
JP3656662B2 (en) | Current position calculation device | |
JP3798444B2 (en) | Current position calculation system and current position calculation method | |
JP3569028B2 (en) | Current position calculation device | |
JP3764508B2 (en) | Current position calculation system and current position calculation method | |
JP3587904B2 (en) | Current position calculation device | |
JP3859743B2 (en) | Current position calculation device | |
JP3599422B2 (en) | Current position calculation device | |
JP3596941B2 (en) | Current position calculation device | |
JP3596944B2 (en) | Current position calculation system and current position calculation method | |
JP3792270B2 (en) | Current position calculation system and current position calculation method | |
JPH08334351A (en) | Present location calculating device | |
JP3679826B2 (en) | Current position calculation system and current position calculation method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040803 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040922 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041207 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050105 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050301 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130318 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130318 Year of fee payment: 8 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130318 Year of fee payment: 8 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130318 Year of fee payment: 8 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130318 Year of fee payment: 8 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130318 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140318 Year of fee payment: 9 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |