(57)【特許請求の範囲】
【請求項１】
車両に搭載され、航法衛星を利用して車両位置を測定する衛星測位部（１０）と、
道路の車線を認識可能な地図情報が記憶された地図記憶部（２０）と、
前記衛星測位部により測定された車両位置に基づき、車両の位置軌跡を生成する位置軌跡生成部（３０）と、
前記位置軌跡生成部にて生成された位置軌跡と前記地図記憶部に記憶された地図情報とに基づき、車両位置を補正する位置補正部（４０）と、
を備え、
前記位置補正部は、
前記位置軌跡に含まれる個々の車両位置が、前記地図情報から得られる前記道路の車線の中で前記車両がどの車線を走行しているときの位置であるのかを判定し、該判定結果から得られる走行車線と前記位置軌跡との形状を比較し、前記車両位置の補正量を算出するように構成されている車両位置補正装置。
【請求項２】
前記位置補正部は、
前記位置軌跡に含まれる個々の車両位置から、前記地図情報から得られる前記道路の各車線に対し垂線を下ろし、該垂線の長さが最も短い車線を、前記走行車線と判定するよう構成されている請求項１に記載の車両位置補正装置。
【請求項３】
前記位置補正部は、
前記位置軌跡に含まれる個々の車両位置から、前記地図情報から得られる前記道路の各車線に対し垂線を下ろし、該垂線の長さが最も短く、且つ、該垂線の長さが設定長さ以内である車線を、前記走行車線と判定するように構成されている請求項１に記載の車両位置補正装置。
【請求項４】
前記位置補正部は、
前記走行車線と前記位置軌跡との形状の一致度に応じて、前記車両位置の補正量を算出するように構成されている請求項１〜請求項３の何れか１項に記載の車両位置補正装置。
【請求項５】
前記位置補正部は、
前記走行車線と最も良く重なるように前記位置軌跡を前記地図情報の座標系で平行移動させたときの移動量を、前記補正量として算出するように構成されている請求項１〜４の何れか１項に記載の車両位置補正装置。
【請求項６】
前記位置補正部は、
前記位置軌跡を前記地図情報の座標系で平行移動させた複数の位置軌跡毎に、当該位置軌跡に含まれる個々の車両位置で車両が走行している走行車線を判定し、該走行車線に対し各車両位置から垂線を下ろし、該垂線の長さの当該位置軌跡全体における平均を算出し、前記複数の位置軌跡の中で前記平均が最も小さい位置軌跡を、前記走行車線と最もよく重なっていると判定するように構成されている請求項５に記載の車両位置補正装置。
【請求項７】
前記位置補正部は、
前記位置軌跡に含まれる個々の車両位置から、直線走行に対し車両挙動に大きな変化がある特定走行が行われたか否かを判定し、該判定結果を前記補正量の推定に利用するように構成されている請求項１〜６の何れか１項に記載の車両位置補正装置。
【請求項８】
前記位置補正部は、
車線変更、右左折、及び、旋回の少なくとも一つを前記特定走行として判定するように構成されている請求項７に記載の車両位置補正装置。
【請求項９】
前記位置補正部は、
前記特定走行が行われたと判定された回数が前記位置軌跡全体で所定回数以下であるとき、前記補正量を零とするように構成されている請求項７又は請求項８に記載の車両位置補正装置。
【請求項１０】
前記位置補正部は、
前記位置軌跡に含まれる個々の車両位置において、前後の車両位置との位置関係に基づき前記車両の旋回状態を推定し、その推定結果に基づき、前記特定走行としての右左折若しくは旋回が行われたことを判定するように構成されている請求項８に記載の車両位置補正装置。
【請求項１１】
前記位置補正部は、
前記位置軌跡に含まれる個々の車両位置において、前記位置軌跡の角度である軌跡角度を算出し、該算出した軌跡角度と前記走行車線の角度である車線角度との差が所定の閾値以上の場合に、前記特定走行としての車線変更が行われたと判定するように構成されている請求項８に記載の車両位置補正装置。
【請求項１２】
前記位置補正部は、前記車両位置の補正量を算出するのに用いる前記位置軌跡の長さを設定可能に構成されている、請求項１〜請求項１１の何れか１項に記載の車両位置補正装置。
【請求項１３】
前記車両の周辺を監視し、前記車両が走行中の車線に対する相対位置を認識する環境認識部（９０）を備え、
前記位置軌跡生成部は、前記環境認識部にて認識された前記相対位置に基づき、前記位置軌跡を修正するように構成されている請求項１〜請求項１２の何れか１項に記載の車両位置補正装置。
【請求項１４】
前記地図情報には、前記車線の位置を表す車線情報、前記車線の境界線の位置を表す境界情報、及び、前記道路の位置と幅と車線数を含む道路情報、の少なくとも一つが含まれている請求項１〜請求項１３の何れか１項に記載の車両位置補正装置。
【請求項１５】
前記車両の走行状態を検出する状態検出部（５０）と、
前記衛星測位部にて測定された車両位置と前記状態検出部にて検出された前記走行状態とに基づき、前記車両位置を推測する推測航法部（６０）と、
を備え、前記位置軌跡生成部は、前記推測航法部により推測された車両位置に基づき、前記車両の位置軌跡を生成するように構成されている請求項１〜請求項１４の何れか１項に記載の車両位置補正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両位置の検出結果から車両が走行中の道路を特定して、車両位置をその道路上の適正位置に補正する車両位置補正装置に関する。
【背景技術】
【０００２】
ＧＰＳ受信機にて計測した過去所定期間分の位置座標を用いて軌跡データを生成し、その軌跡データと地図データとを比較することで、ＧＰＳ受信機の移動軌跡と相関のある道路を、車両の走行道路として推定するよう構成された位置補正装置が知られている（例えば、特許文献１参照）。
【０００３】
この位置補正装置では、軌跡データの位置座標と推定した走行道路上の位置座標とを比較することで、ＧＰＳ受信機にて計測される位置座標のバイアス誤差を推定し、ＧＰＳ受信機にて計測される位置座標（つまり、車両位置）を補正する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−４１９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記従来の位置補正装置では、ＧＰＳ受信機の移動軌跡と形状が一致する道路を推定して、バイアス誤差を算出することから、車両位置を走行中の道路上に補正することができる。しかし、道路が複数車線である場合、車両がどの車線を走行しているのかを特定することはできない。
【０００６】
このため、上記従来の位置補正装置では、例えば、車両の目標走行軌跡を生成して車両を自動運転させるような場合に、複数車線の道路で最適な車線を走行させることができない等、最終的に得られる車両位置の精度が不十分になることがあった。
【０００７】
本発明は、道路が複数車線である場合に、車両がどの車線を走行しているのかを特定して、車両位置をより精度よく補正できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の車両位置補正装置は、航法衛星を利用して車両位置を測定する衛星測位部、道路の車線毎の位置情報を含む地図情報が記憶された地図記憶部、及び、衛星測位部により測定された車両位置に基づき車両の位置軌跡を生成する位置軌跡生成部を備える。
【０００９】
そして、位置補正部が、位置軌跡生成部にて生成された位置軌跡と地図記憶部に記憶された地図情報とに基づき、車両位置を補正する。また位置補正部は、車両位置の補正量を、次のように算出する。
【００１０】
すなわち、位置補正部は、位置軌跡生成部にて生成された位置軌跡に含まれる個々の車両位置が、地図情報から得られる道路の車線の中で車両がどの車線を走行しているときの位置であるのかを判定する。そして、その判定結果から得られる走行車線と位置軌跡との形状を比較し、車両位置の補正量を算出する。
【００１１】
このため、本発明の車両位置補正装置によれば、車両が走行中の車線を特定して、車両位置をその特定した走行車線上に補正することができる。よって、上述した従来装置に比べ、車両位置の補正精度を向上することができる。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態の車両位置補正装置全体の構成を表すブロック図である。
【図２】地図情報の構成及び地図情報の取得動作を説明する説明図である。
【図３】位置軌跡生成部及び位置補正部の動作手順を表すフローチャートである。
【図４】限定軌跡配列を説明する説明図である。
【図５】限定軌跡配列抽出処理を表すフローチャートである。
【図６】位置補正量算出処理を表すフローチャートである。
【図７】位置補正量の候補値を生成する動作を説明する説明図である。
【図８】車両位置が属する車線を判定する動作を説明する説明図である。
【図９】補正後軌跡と地図配列との平均距離を算出する動作を説明する説明図である。
【図１０】第２実施形態の車両位置補正装置全体の構成を表すブロック図である。
【図１１】第２実施形態の限定軌跡配列抽出処理を表すフローチャートである。
【図１２】図１１に示す処理における車両位置の補正動作を説明する説明図である。
【図１３】第２実施形態の位置補正部の動作手順を説明するフローチャートである。
【図１４】図１３に示す車両挙動判定処理の詳細を表すフローチャートである。
【図１５】車両挙動判定処理で算出される方位角及び旋回半径を表す説明図である。
【図１６】変形例１の位置軌跡生成部の動作手順を説明するフローチャートである。
【図１７】変形例２の地図情報の構成及び車線情報の生成手順を説明する説明図である。
【図１８】変形例３の車線情報の生成手順を説明する説明図である。
【発明を実施するための形態】
【００１３】
以下に本発明の実施形態を図面と共に説明する。
なお、本発明は、下記の実施形態によって何ら限定して解釈されない。また、下記の実施形態の構成の一部を、課題を解決できる限りにおいて省略した態様も本発明の実施形態である。また、特許請求の範囲に記載した文言のみによって特定される発明の本質を逸脱しない限度において考え得るあらゆる態様も本発明の実施形態である。また、下記の実施形態の説明で用いる符号を特許請求の範囲にも適宜使用しているが、これは本発明の理解を容易にする目的で使用しており、本発明の技術的範囲を限定する意図ではない。
［第１実施形態］
本実施形態の車両位置補正装置２は、車両に搭載されて自車両の位置を検出すると共に、その検出誤差を補正し、例えば、ナビゲーション装置等の各種運転支援装置に出力するためのものである。
【００１４】
図１に示すように、車両位置補正装置２は、衛星測位部１０、地図記憶部２０、位置軌跡生成部３０、及び、位置補正部４０を備える。
衛星測位部１０は、複数の人工衛星からの送信電波を受信することで、所謂衛星測位により車両位置を表す位置情報（例えば、緯度・経度・高度）を検出するものであり、例えば、ＧＰＳ受信機にて構成されている。
【００１５】
地図記憶部２０は、道路の車線を認識可能な地図情報が記憶された記憶媒体、例えば、半導体メモリ、ハードディスク、光学ディスク、等を備える。そして、地図情報記憶部２０は、その記憶媒体から、衛星測位部１０にて検出された車両位置周囲の地図情報を抽出し、位置補正部４０に出力する。
【００１６】
地図記憶部２０の記憶媒体には、地図情報として、道路の車線中央のノードの位置（例えば、緯度・経度・高度）を表す車線情報、車線の境界線（例えば、白線）の位置を表す境界情報、及び、道路の位置と形状（例えば、曲率、勾配、車線数、道幅）を表す道路情報の少なくとも一つが記憶される。これは、車両の走行車線を認識できるようにするためである。
【００１７】
本実施形態では、図２において道路の車線中央に円で示される各ノードの位置（緯度・経度・高度）、そのノード間を接続するリンクの形状（曲率・勾配）を含む地図情報が、地図記憶部２０の記憶媒体に記憶されているものとする。
【００１８】
そして、地図記憶部２０は、衛星測位部１０から入力される車両の現在の位置情報Ｐ［ｔｃ］に基づき、自車両周囲の所定範囲「Ｘ・Ｙ」内の地図情報を抽出し、位置補正部４０に出力する。
【００１９】
次に、位置軌跡生成部３０は、衛星測位部１０を介して所定時間間隔で車両位置をサンプリングし、車両が所定距離移動する間の位置軌跡を生成する。
また、位置補正部４０は、位置軌跡生成部３０にて生成された位置軌跡と地図記憶部２０から取得した自車両周辺の地図情報との形状のマッチングを取り、両者が重なるように車両位置を補正する。
【００２０】
なお、位置補正部４０には、後述する限定軌跡配列の長さ（換言すれば距離）等、各種動作条件を入力するための操作部４２が設けられている。
位置軌跡生成部３０及び位置補正部４０は、ＣＰＵ、ＲＯＭ、ＲＡＭを中心として構成されるマイクロコンピュータ、若しくは、専用の電子回路にて構成されており、図３に示す手順で位置軌跡の生成及び位置補正を行う。
【００２１】
なお、図３に示す処理手順は、コンピュータが実行するプログラムとしてＲＯＭ等の記憶媒体に記憶することで、コンピュータがそのプログラムを実行することで実現されるようにしてもよい。また、専用の電子回路の回路構成によって実現されるようにしてもよい。
【００２２】
図３に示すように、位置軌跡生成部３０は、Ｓ１１０にて、衛星測位部１０から取得した現在時刻ｔｃの位置情報を位置軌跡である軌跡配列Ｐ［ｔ］に代入する。この結果、軌跡配列Ｐ［ｔ］として、初期位置Ｐ［１］から現在位置Ｐ［ｔｃ］までの位置情報がメモリ（例えば、ＲＡＭ、フラッシュＲＯＭ、等）に記憶される。
【００２３】
次に、位置軌跡生成部３０は、Ｓ１２０にて、上記のようにメモリに記憶した軌跡配列Ｐ［ｔ］の中から、位置補正に使用する限定軌跡配列Ｐｌ［ｔ］を抽出する。
この限定軌跡配列Ｐｌ［ｔ］は、図４に示すように、現在の位置情報Ｐ［ｔｃ］から遡って最大経路長Ａmax までの範囲内にある位置情報の軌跡配列である。
【００２４】
なお、最大経路長Ａmax は、操作部４２を介して任意に設定可能である。また、限定軌跡配列Ｐｌ［ｔ］の抽出範囲を、現在の位置情報Ｐ［ｔｃ］を中心とする、ある設定した半径をもつ円の内側と設定してもよい。
【００２５】
Ｓ１２０の限定軌跡配列抽出処理は、位置軌跡生成部３０において、図５に示す手順で実行される。
この処理では、まずＳ２１０にて、メモリから、現在時刻ｔｃまでの位置情報を含む軌跡配列Ｐ［ｔ］を読み込む。次にＳ２２０では、カウンタｉに初期値「ｔｃ−１」を設定すると共に、限定軌跡配列Ｐｌ［ｔ］の探索初期位置Ｐｌ［１］として現在の位置情報Ｐ［ｔｃ］を設定する。
【００２６】
そして、続くＳ２３０では、位置情報Ｐ［ｔｃ］で特定される現在位置からＰ［ｉ］で特定される車両位置までの軌跡の経路長Ａを算出する。
次に、Ｓ２４０では、Ｓ２３０で算出した経路長Ａが最大経路長Ａmaxよりも小さいか否かを判断し、経路長Ａが最大経路長Ａmaxよりも小さい場合には、Ｓ２５０に移行する。
【００２７】
Ｓ２５０では、限定軌跡配列Ｐｌ［ｔ］の現在の探索位置を表す値ｔmaxに、「ｔｃ−ｉ＋１」を設定し、その車両位置Ｐｌ［ｔmax ］に、Ｐ［ｉ］を設定する。
そして、Ｓ２６０では、カウンタｉをデクリメント（つまり、−１）して更新し、Ｓ２７０にて、カウンタｉが値１よりも小さくなったか否か、つまり、Ｓ２１０にて取得した全軌跡配列Ｐ［ｔ］に対する探索が終了したか否か、を判断する。
【００２８】
Ｓ２７０にて否定判断された場合（つまり、ｉ≧１の場合)には、Ｓ２３０に移行し、Ｓ２７０にて肯定判断された場合（つまり、ｉ＜１の場合）には、Ｓ２８０に移行する。また、Ｓ２４０にて、経路長Ａが最大経路長Ａmax 以上になったと判断された場合にも、Ｓ２８０に移行する。
【００２９】
そして、Ｓ２８０では、探索初期位置Ｐｌ［１］から最新の探索位置Ｐｌ［ｔmax ］までの車両位置を限定軌跡配列Ｐｌ［ｔ］として、メモリに記憶（換言すれば出力）する。
図３に戻り、位置軌跡生成部３０が上記手順でＳ１２０の限定軌跡配列抽出処理を実行すると、位置補正部４０がＳ１３０の位置補正量算出処理を実行する。
【００３０】
図６に示すように、この位置補正量算出処理では、まずＳ３１０にて、位置軌跡生成部３０から限定軌跡配列Ｐｌ［ｔ］を取得し、Ｓ３２０にて、地図記憶部２０から自車両周囲の地図情報を取得する。
【００３１】
Ｓ３２０では、図２に示すように、地図記憶部２０から入力される地図情報の中から、道路の各車線のノード情報を、地図配列Ｍ［ｌ］［ｍ］として取得する。なお、地図配列Ｍ［ｌ］［ｍ］の［ｌ］は車線番号を表し、［ｍ］はノード番号を表す。
【００３２】
次に、Ｓ３３０では、図７に示すように、Ｓ３１０で取得した限定軌跡配列Ｐｌ［ｔ］の初期位置Ｐｌ［１］（換言すれば、車両の現在の位置）の周辺に位置補正量の候補値Ｐｃ［ｋ］を複数個ランダムに生成する。上述の方法の例として、初期位置Ｐｌ［１］を中心とした半径Ｐmax の円内に、位置補正量の候補値Ｐｃ［ｋ］を複数個ランダムに生成する方法がある。
【００３３】
なお、Ｐｃ［ｋ］のｋは、１〜ｋmax までの候補値Ｐｃの番号を表しており、本実施形態では、ｋmax 個、候補値Ｐｃが生成される。
そして、本実施形態では、地図情報が、緯度・経度・高度で規定される三次元座標系であるため、各候補値Ｐｃ［ｋ］にも、限定軌跡配列Ｐｌ［ｔ］を三次元座標系で移動可能な補正値が設定される。
【００３４】
次に、Ｓ３４０では、カウンタｉに値「１」を初期設定し、後述の平均距離Ｌの最小値Ｌmin に最大距離∞を設定する。
そして、続くＳ３５０では、Ｓ３１０で取得した限定軌跡配列Ｐｌ［ｔ］を構成する全車両位置の位置情報に対し、カウンタｉの値で特定される候補値Ｐｃ［ｉ］を加算することで、補正後軌跡Ｐａ［ｔ］を生成する。なお、この補正後軌跡Ｐａ［ｔ］は、限定軌跡配列Ｐｌ［ｔ］を補正値Ｐｃ［ｉ］だけ３次元方向に平行移動させた位置軌跡である。
【００３５】
こうして、補正後軌跡Ｐａ［ｔ］が生成されると、Ｓ３６０にて、補正後軌跡Ｐａ［ｔ］に含まれる車両位置が属する車線を判定する。
具体的には、図８に例示するように、補正後軌跡Ｐａ［ｔ］に含まれる車両位置毎に、車両位置から、Ｓ３２０で取得した地図配列Ｍ［ｌ］［ｍ］から得られる周囲の車線ｌ１、ｌ２に対し垂線Ａ１、Ａ２を下ろす。
【００３６】
そして、その垂線Ａ１、Ａ２の長さが最も短い車線ｌを、車両位置が属する車線として判定する。なお、図では、垂線Ａ１の方が垂線Ａ２よりも長いので、短い垂線Ａ２に対応した車線ｌ２が、車両位置が属する車線として判定される。
【００３７】
また、車両位置から周囲の車線ｌ１、ｌ２に対し下ろした垂線の長さが、予め設定された長さよりも長い場合、例えば、垂線が図８に示すＢ１、Ｂ２である場合には、その車両位置を補正後軌跡Ｐａ［ｔ］から除去する。
【００３８】
これは、車両位置から各車線ｌ１、ｌ２への垂線の長さが設定長さよりも長い場合、車両は、道路から外れて、ガソリンスタンド等の周囲の施設に入ったと考えられるためである。
【００３９】
つまり、車両位置からの垂線の長さが全て設定長さよりも長い場合、その車両位置を位置軌跡に含めると、位置補正を正確に実施できないことが考えられる。そこで、本実施形態では、車両位置からの垂線の長さが設定長さ以内である車両位置だけを補正後軌跡Ｐａ［ｔ］に含め、他の車両位置は補正後軌跡Ｐａ［ｔ］から除外するのである。
【００４０】
次に、Ｓ３６０にて、補正後軌跡Ｐａ［ｔ］に含まれる全ての車両位置が属する車線ｌが判定されると、Ｓ３７０に移行し、その判定された車線ｌと補正後軌跡Ｐａ［ｔ］との間の平均距離Ｌを算出する。
【００４１】
この平均距離Ｌの算出は、図９に示すように、補正後軌跡Ｐａ［ｔ］に含まれる車両位置から、その車両位置が属すると判定した車線ｌに対し垂線を下ろし、その垂線の長さＬ（１），Ｌ（２），…を算出し、その長さの平均を求めることにより行われる。
【００４２】
このように算出される平均距離Ｌは、補正後軌跡Ｐａ［ｔ］と車線との形状の一致度を表すことになる。このため、続くＳ３８０では、平均距離Ｌが最小値Ｌmin よりも短いか否かを判断する。
【００４３】
そして、平均距離Ｌが最小値Ｌmin よりも短い場合には、車線との一致度が最も高いものと判断して、Ｓ３９０に移行し、最小値Ｌmin にＳ３７０で今回算出した平均距離Ｌを設定する。また、Ｓ３９０では、平均距離Ｌが最も短い補正後軌跡Ｐａ［ｔ］の位置補正量を表す値ｉmin として、現在のカウンタｉの値を設定し、Ｓ４００に移行する。
【００４４】
一方、Ｓ３８０にて、平均距離Ｌは最小値Ｌmin 以上であると判断された場合には、そのままＳ４００に移行する。
Ｓ４００では、カウンタｉの値がＳ３３０にて設定した候補値Ｐｃ［ｋ］の数ｋmax よりも大きいか否か、換言すれば、Ｓ３３０にて設定した全ての候補値ｋmax に対しＳ３５０〜Ｓ３９０の処理を実行したか否か、を判断する。
【００４５】
Ｓ４００にて、カウンタｉの値がｋmax 以下であると判断されると、Ｓ４１０にて、カウンタｉをインクリメント（つまり、＋１）した後、Ｓ３５０に移行する。逆に、Ｓ４００にて、カウンタｉの値がｋmax よりも大きいと判断されると、Ｓ４２０に移行する。
【００４６】
Ｓ４２０では、平均距離Ｌが最小値Ｌmin となった候補値Ｐｃ［ｉmin］を、車両の現在の位置情報Ｐ［ｔｃ］に対する位置補正量として設定し、メモリに記憶する。
このように、Ｓ１３０の位置補正量算出処理にて、位置補正量が算出されると、位置補正部４０は、図３に示すＳ１４０の処理に移行し、車両の現在の位置情報Ｐ［ｔｃ］に位置補正量を加算することで、現在の位置情報Ｐ［ｔｃ］を補正する。
【００４７】
なお、この補正後の位置情報Ｐ［ｔｃ］は、メモリに記憶されると共に、車両に搭載されたナビゲーション装置等の各種運転支援装置に出力される。
以上説明したように、本実施形態の車両位置補正装置２においては、位置軌跡生成部３０が、衛星測位部１０により測定された車両位置を所定時間間隔でサンプリングすることで、車両の位置軌跡である軌跡配列Ｐ［ｔ］を生成する。
【００４８】
そして、その軌跡配列Ｐ［ｔ］のうち、現在の車両位置から最大経路長Ａmax だけ遡った距離範囲内にある軌跡配列を、位置補正量の算出に用いる限定軌跡配列Ｐｌ［ｔ］として抽出する。
【００４９】
すると、位置補正部４０が、その抽出された限定軌跡配列Ｐｌ［ｔ］を、位置補正の候補値Ｐｃ［ｋ］を用いて地図情報の座標系でランダムに平行移動させた複数の補正後軌跡Ｐａ［ｔ］を生成する。
【００５０】
また、位置補正部４０は、その生成した補正後軌跡Ｐａ［ｔ］毎に、その軌跡に含まれる各車両位置が属する車線を各々特定して、その車線と各車両位置との距離を算出し、その平均距離Ｌから、平均距離Ｌが最も小さくなる補正後軌跡Ｐａ［ｔ］を特定する。
【００５１】
そして、位置補正部４０は、その特定した補正後軌跡Ｐａ［ｔ］が走行車線と最も良く重なる位置軌跡として、その補正後軌跡Ｐａ［ｔ］を生成するのに用いた候補値Ｐｃ［ｋ］を、現在の車両位置の位置補正量として設定する。
【００５２】
このため、本実施形態の車両位置補正装置２によれば、車両が走行中の車線を特定して、車両位置をその特定した走行車線上に補正することができ、従来装置に比べ、車両位置の補正精度を向上することができる。
【００５３】
また、位置補正部４０は、補正後軌跡Ｐａ［ｔ］に含まれる車両位置が属する車線を特定する際、各車両位置から地図配列Ｍ［ｌ］［ｍ］から得られる周囲の車線に垂線を下ろし、垂線が最も短い車線を選択する。
【００５４】
また、その特定した車線の形状と補正後軌跡Ｐａ［ｔ］の形状の一致度を求める場合にも、各車両位置から特定した車線に対し垂線を下ろし、その垂線の長さの平均を算出する。
【００５５】
従って、車両が車線変更した場合でも走行車線を認識して、その走行車線と車両の走行軌跡との一致度を適正に求めることができる。
［第２実施形態］
図１０に示すように、本実施形態の車両位置補正装置４は、図１に示した第１実施形態のものと同様の構成に加えて、更に、車両センサ５０、推測航法部６０、ドライバ操作受付部７０、周辺監視センサ８０、及び、環境認識部９０を備える。
【００５６】
車両センサ５０は、車両の走行状態を検出するための状態検出部であり、車輪速センサ、ジャイロセンサにより、車両の速度、加速度などの状態量を検出する。
推測航法部６０は、車両センサ５０により得られる車両の状態量を使って、前時刻からの相対移動量を周期的に算出し、その算出した相対移動量と衛星測位部１０から得られる位置情報とから、自車両の位置を推測するものである。
【００５７】
推測航法部６０は、例えば、衛星測位部１０による衛星測位の状態（例えば、ＧＰＳ受信器における受信衛星数）に応じて、位置推測に用いる衛星測位と相対移動量との組み合わせ（換言すれば、重み付け）を調整する。
【００５８】
このため、第１実施形態のように、自車両の位置を衛星測位部１０だけで測定するようにした場合に比べて、より高精度に車両位置を測定できるようになる。そして、位置軌跡生成部３０には、推測航法部６０により得られる位置情報が入力される。
【００５９】
ドライバ操作受付部７０は、ステアリングの操舵や、方向指示器の操作等、車両運転者による運転操作を受け付けるためのものである。
周辺監視センサ８０は、カメラ、レーダーレーダ、ミリ波レーダ、等にて構成され、車両周辺の画像や測距点などの環境情報を取得するのに用いられる。
【００６０】
環境認識部９０は、周辺監視センサ８０から取得した周辺情報（画像、測距点など）を使って、車両周辺の白線位置を認識し、その認識した白線位置を用いて、車線内における自車両の相対位置を算出する。
【００６１】
相対位置は、図１２に示すように、車線中央に対する自車重心の横位置、車線中央の接線方向に対する回頭角などである。なお、図１２では、車線が直線であるため、回頭角は、その直線に対する車両進行方向の傾斜角度になっているが、車線が曲線の場合には、その曲線の接線に対する車両進行方向の傾斜角度となる。
【００６２】
このように環境認識部９０にて求められる車線との相対位置は、位置軌跡生成部３０に入力される。そして、位置軌跡生成部３０は、自車両の車線との相対位置に基づき、推測航法部６０から取得した現在時刻の位置Ｐ［ｔｃ］を補正する。
【００６３】
すなわち、位置軌跡生成部３０は、図１１に示すように、限定軌跡配列抽出処理において、Ｓ２１０にて軌跡配列Ｐ［ｔ］を取得すると、Ｓ２１５に移行して、環境認識部９０から現在時刻の相対位置情報Ｑ［ｔｃ］を取得する。
【００６４】
そして、Ｓ２１５では、その取得した相対位置情報Ｑ［ｔｃ］を用いて、軌跡配列Ｐ［ｔ］に含まれる現在時刻の位置情報Ｐ［ｔｃ］を、車線中央に位置するように補正する。
また、Ｓ２２０では、限定軌跡配列Ｐｌ［ｔ］の探索初期位置Ｐｌ［１］として、Ｓ２１５で補正した位置情報Ｐｑ［ｔｃ］を設定し、Ｓ２２５に移行する。
【００６５】
Ｓ２２５では、環境認識部９０から時刻ｉの相対位置情報Ｑ［ｉ］を取得し、その相対位置情報Ｑ［ｉ］を用いて、軌跡配列Ｐ［ｔ］に含まれる時刻ｉの位置情報Ｐ［ｉ］を、車線中央に位置するように補正する。
【００６６】
そして、Ｓ２３０では、Ｐｑ［ｔｃ］からＰｑ［ｉ］までの位置情報を用いて、その間の経路長Ａを算出し、その後は、第１実施形態と同様の手順で、補正後の位置情報Ｐｑ［ｉ］を使って、限定軌跡配列Ｐｌ［ｔ］を生成する。
【００６７】
このため、図１２に示すように、車両が車線の白線内を走行している場合には、推測航法部６０から取得した車両位置が白線の外に移動したとしても、環境認識部９０からの相対位置情報を用いて車両位置を車線中央に補正することができる。
【００６８】
従って、本実施形態によれば、位置補正に用いられる限定軌跡配列の位置誤差が少なくなり、第１実施形態に比べて、車両位置の検出精度を高めることができる。
一方、位置補正部４０は、位置軌跡生成部３０にて生成された限定軌跡配列を用いて、位置補正量を算出するが、例えば、車両が直線走行していて限定軌跡配列が直線になると、位置補正量の精度が悪くなる。
【００６９】
つまり、位置補正部４０は、限定軌跡配列を平行移動させて、車線との形状の一致度が最も高い限定軌跡配列を抽出し、その抽出した限定軌跡配列の移動量を位置補正量として算出する。このため、限定軌跡配列の変曲点が少ないと、車線との形状の一致度が高い限定軌跡配列を絞り込むことが難しく、位置補正量の設定精度を高めることができない。
【００７０】
そこで、図１３に示すように、位置補正部４０は、位置補正量算出処理を実行する前に、Ｓ１２２にて車両挙動判定処理を実行することで、限定軌跡配列は車両挙動に変化がある区間かどうかを判定するように構成されている。
【００７１】
そして、位置補正部４０は、その判定結果から、Ｓ１２４にて、限定軌跡配列が車両挙動に変化がある区間であると判断されると、Ｓ１３０に移行して、位置補正量算出処理を実行し、Ｓ１４０に移行する。
【００７２】
また、Ｓ１２４にて、限定軌跡配列が車両挙動に変化がない区間であると判断されると、Ｓ１２６に移行して、現在時刻ｔｃにおける位置補正量を零に設定し、Ｓ１４０に移行する。
【００７３】
この結果、本実施形態によれば、第１実施形態に比べて、車両位置の補正精度をより向上することができる。
なお、Ｓ１２２にて実行される車両挙動判定処理は、図１４に示す手順で実行される。
【００７４】
すなわち、車両挙動判定処理では、Ｓ５１０にて、カウンタｉ、Ｃにそれぞれ初期値「２」、「０」を設定する。
そして、続くＳ５２０にて、限定軌跡配列のｉ番目の位置情報Ｐｌ［ｉ］と、その前後の位置情報Ｐｌ［ｉ−１］、Ｐｌ［ｉ＋１］とを用いて、図１５に示すように、これらの位置関係から車両の旋回半径Ｒ及び進行方向の方位角φを推定する。
【００７５】
なお、旋回半径Ｒは、車両の旋回状態を表すパラメータであり、限定軌跡配列から得られる車両の走行経路の曲率が大きいほど小さくなるので、本実施形態では車両の走行経路の曲率として、旋回半径Ｒを推定している。
【００７６】
また、方位角φは、例えば、北を基準方位（０度）とする時計回りの角度であり、軌跡角度に相当する。そして、方位角φは、車線の方向（換言すれば、車線角度）と比較することで、車線に対する進行方向のずれを識別でき、そのずれ量から、車両の車線変更を判定できる。
【００７７】
次に、Ｓ５３０では、車両の旋回状態の推定結果である旋回半径Ｒが、所定の閾値Ｒｔｈよりも小さいか否か、換言すれば、車両の走行経路の曲率が所定の閾値よりも大きいか否か、を判断する。
【００７８】
Ｓ５３０にて、旋回半径Ｒが閾値Ｒｔｈよりも小さいと判断された場合には、車両が右左折若しくは旋回したと判断して、Ｓ５４０に移行し、カウンタＣをインクリメントした後、Ｓ５５０に移行する。また、Ｓ５３０にて、旋回半径Ｒが閾値Ｒｔｈ以上であると判断された場合には、そのままＳ５５０に移行する。
【００７９】
Ｓ５５０では、位置情報Ｐｌ［ｉ］で特定される車両位置に対して最も近いノードを地図情報の中から探索し、そのノードに接続されるリンクの方向から、車線角度として、ノードにおける車線の方位角φMAP を取得する。
【００８０】
次に、Ｓ５６０では、Ｓ５２０で求めた車両の進行方向を表す方位角φと、Ｓ５５０で求めた車線の方位角φMAP との差の絶対値が、予め設定された閾値φｔｈよりも大きいか否かを判断する。
【００８１】
そして、Ｓ５６０にて、方位角φと方位角φMAP との差の絶対値が閾値φｔｈよりも大きいと判断されると、車両が車線変更したものとして、Ｓ５７０に移行し、カウンタＣをインクリメントした後、Ｓ５８０に移行する。また、Ｓ５６０にて、方位角φと方位角φMAP との差の絶対値が閾値φｔｈ以下であると判断された場合には、そのままＳ５８０に移行する。
【００８２】
Ｓ５８０では、カウンタｉの値が「ｔｃ−２」よりも大きいか否かを判断する。この判断は、Ｓ５２０〜Ｓ５７０の一連の処理を限定軌跡配列の走行経路全域で行ったか否かを判断するためのものであり、カウンタｉの値が「ｔｃ−２」よりも大きい場合には、Ｓ５９０に移行する。
【００８３】
また、Ｓ５８０にて、カウンタｉの値が「ｔｃ−２」以下であると判断した場合には、Ｓ５８５にてカウンタｉをインクリメントした後、再度Ｓ５２０に移行する。
Ｓ５９０では、Ｓ５４０若しくはＳ５７０にて、車両の右左折、旋回若しくは車線変更が判定される度にカウントアップされるカウンタＣの値（換言すれば、車両の特定走行の回数）が、所定の閾値Ｃｔｈを超えているか否かを判断する。
【００８４】
そして、カウンタＣの値が閾値Ｃｔｈを超えていれば、Ｓ６００にて、限定軌跡配列で特定される車両の走行区間では、車両挙動に変化があったと判定し、当該車両挙動判定処理を終了する。
【００８５】
一方、カウンタＣの値が閾値Ｃｔｈ以下であれば、Ｓ６１０にて、限定軌跡配列で特定される車両の走行区間では、車両挙動に変化がなかったと判定し、当該車両挙動判定処理を終了する。
【００８６】
なお、本実施形態では、限定軌跡配列に対応した走行経路で、位置補正量を精度よく算出することのできる車両挙動の変化（換言すれば、車両の特定走行）があったか否を判断するために、車両の旋回半径Ｒと方位角φを求めるようにしている。
【００８７】
しかし、旋回半径Ｒや方位角φに代えて走行経路の曲率を求め、その曲率の大きさ、或いは、車線の曲率との違いから、車両の特定走行として、車両の右左折や旋回、或いは、車線変更を判定しするようにしてもよい。
【００８８】
また、ドライバ操作受付部７０にて検出されるステアリングの操舵や、方向指示器の操作等、車両運転者による運転操作に基づき、車両の特定走行を検出するようにしてもよい。
【００８９】
この場合、特定走行を検出した際、その旨を検出時刻若しくは検出時の車両位置と関連づけてメモリに記憶するようにすれば、限定軌跡配列で特定される車両の走行区間で特定走行が何回あったのかを判定できるようになり、上記と同様の効果を得ることができる。
【００９０】
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内にて、種々の態様をとることができる。
［変形例１］
図２、図１３に示すように、上記各実施形態では、位置軌跡生成部３０は、Ｓ１１０にて、現在時刻の位置情報を代入することで軌跡配列Ｐ［ｔ］を更新すると、Ｓ１２０に移行して、限定軌跡配列抽出処理を実行するものとして説明した。
【００９１】
しかし、軌跡配列Ｐ［ｔ］の数（つまり、車両位置の数）が少な過ぎると、車両の走行経路を把握できず、位置補正量の生成に用いる限定軌跡配列の数も少なくなってしまう。
そこで、本変形例１では、図１６に示すように、位置軌跡生成部３０は、Ｓ１１０にて軌跡配列Ｐ［ｔ］を更新すると、Ｓ１１２にて、その更新された軌跡配列Ｐ［ｔ］の数は位置補正量を求めるのに必要な下限値である閾値以上であるか否かを判断する。
【００９２】
そして、軌跡配列Ｐ［ｔ］の数が閾値以上であれば、Ｓ１２０に移行して、位置補正部４０に限定軌跡配列処理を実行させ、軌跡配列Ｐ［ｔ］の数が閾値以上でなければ、Ｓ１１４に移行して、位置補正部４０に位置補正量を零に設定させる。
【００９３】
なお、位置補正部４０は、Ｓ１１４にて、位置補正量を零に設定すると、Ｓ１１６にて「位置補正停止中」である旨を表す情報を外部装置（例えば、上述した各種運転支援装置）に出力し、Ｓ１４０に移行する。
【００９４】
この結果、位置補正部４０から車両位置を取得する外部装置側では、現在車両位置の位置補正が成されておらず、車両位置の精度が悪いことを把握し、例えば、一部の運転支援機能を制限することで、車両位置の誤差によって生じる誤制御を抑制することができる。
【００９５】
なお、図１６に示すフローチャートでは、位置軌跡生成部３０は、Ｓ１１０にて現在時刻の位置情報を用いて軌跡配列Ｐ［ｔ］を更新する前に、Ｓ１００の処理を実行するようにされている。
【００９６】
Ｓ１００は、例えば、車両位置補正装置が起動されたときに、前回、車両位置補正装置が動作を停止する前に記憶しておいた過去の軌跡配列Ｐ［ｔ］を、フラッシュＲＯＭ等の不揮発性メモリから取得するための処理である。
【００９７】
位置軌跡生成部３０がＳ１００の処理を実行することで、例えば、車両のエンジン停止に伴い動作を停止した際に、それまでＲＡＭに記憶していた軌跡配列Ｐ［ｔ］が消滅し、起動後、最初から軌跡配列Ｐ［ｔ］を生成しなければならなくなるのを防止できる。
［変形例２］
上記実施形態では、地図記憶部２０の記憶媒体には、道路の車線中央の各ノードの位置（緯度・経度・高度）及びリンクの形状（曲率・勾配）を含む地図情報が記憶されているものとして説明した。
【００９８】
これに対し、地図記憶部２０の記憶媒体に、道路の位置及び形状（例えば、曲率、勾配、車線数、道幅）を表す道路情報が記憶されていて、上記のような車線情報が記憶されていない場合には、道路情報から車線情報を生成するようにすればよい。
【００９９】
つまり、図１７に示すように、道路の位置情報を車線数と道幅とに基づき、地図上の各車線の位置（例えば、車線中央のノードの位置）を算出することで、車線情報を生成するのである。
【０１００】
このようにすれば、その生成した車線情報を用いて、上記実施形態と同様に、限定軌跡配列から得られる車両の走行軌跡と車線との形状の一致度を平均距離Ｌとして算出し、位置補正量を算出することができる。
【０１０１】
なお、地図記憶部２０の記憶媒体に、車線の左右の境界線（例えば、白線）の位置を表す境界情報が記憶されている場合には、その境界情報から車線情報を生成するようにすればよい。
［変形例３］
上記実施形態若しくは変形例２では、地図記憶部２０の記憶媒体に記憶された車線情報、若しくは、記憶媒体に記憶された地図情報から生成した車線情報、を用いて車線位置や形状を把握し、車両の走行経路との一致度を求めるものとして説明した。
【０１０２】
しかし、気象条件（例えば、積雪、落石）や道路工事等によって、地図情報から得られる車線を通行できないこともある。
このような場合、図１８に示すように、車両に搭載された無線通信装置を介して他車両から走行情報を取得し、その取得した走行情報から、地図情報から得られる車線内で車両がどの位置を走行しているのかを識別するようにしてもよい。
【０１０３】
つまり、他車両から収集した走行情報に基づき、他車両の走行軌跡を平均化し、その平均化した走行軌跡に基づき、地図情報から得られる車線情報を修正することで、地図情報を実際の走行条件に適合させた形状にするのである。
【０１０４】
このようにすれば、地図記憶部２０の記憶媒体に記憶された地図情報では、通常に走行できない車線があったとしても、車線情報を適正に修正して、位置補正量をより高精度に求めることができるようになる。
【０１０５】
なお、このように車線情報を修正する場合、必ずしも他車両から走行情報を取得するように構成する必要はなく、例えば、放送局から無線送信されてくる走行規制等の交通情報を取得し、その情報に基づき、車線情報を修正するようにしてもよい。
［変形例４］
また、上記実施形態では、地図記憶部２０の記憶媒体には、緯度・経度・高度の３次元座標系で構成された地図情報が記憶されているものとして説明したが、地図情報は緯度・経度の２次元座標系で構成されていてもよい。
【０１０６】
この場合、車両の位置軌跡である軌跡配列Ｐ［ｔ］を２次元座標系で生成するようにすれば、上記と同様に位置補正量を算出して、車両位置を補正することができる。
［変形例５］
また、上記実施形態では、位置補正部４０に操作部４２が設けられていて、使用者は、操作部４２を介して、限定軌跡配列の最大経路長Ａmax 等、位置補正部４０の各種動作条件を設定できるものとして説明した。
【０１０７】
これに対し、こうした位置補正装置の動作条件の設定は、外部装置側から設定できるようにしてもよい。このようにすれば、位置情報を利用する外部装置側では、車両の走行速度等で変化する位置情報の精度や検出速度に応じて、最大経路長ＡMAX 等の動作条件を設定できるようになり、必要な位置情報を適正に取得することができるようになる。
【符号の説明】
【０１０８】
２、４…車両位置補正装置、１０…衛星測位部、３０…位置軌跡生成部、４０…位置補正部、４２…操作部、５０…車両センサ、６０…推測航法部、７０…ドライバ操作受付部、８０…周辺監視センサ、９０…環境認識部。
【図１】
0006520597.tif 000002
【図２】
0006520597.tif 000003
【図３】
0006520597.tif 000004
【図４】
0006520597.tif 000005
【図５】
0006520597.tif 000006
【図６】
0006520597.tif 000007
【図７】
0006520597.tif 000008
【図８】
0006520597.tif 000009
【図９】
0006520597.tif 000010
【図１０】
0006520597.tif 000011
【図１１】
0006520597.tif 000012
【図１２】
0006520597.tif 000013
【図１３】
0006520597.tif 000014
【図１４】
0006520597.tif 000015
【図１５】
0006520597.tif 000016
【図１６】
0006520597.tif 000017
【図１７】
0006520597.tif 000018
【図１８】
0006520597.tif 000019