(57)【特許請求の範囲】
【請求項１】
自車周辺を撮影するための撮像装置と接続され、衛星電波を用いて自車位置を計測する計測装置と道路情報を記憶するための記憶装置を備えた車両位置測位装置において、
撮像した画像から白線を抽出する白線抽出手段と、当該画像を処理して自車と当該白線との距離を求め、一定時間内における当該白線との距離の変化を算出する距離変化算出手段と、当該一定時間内の走行距離を測定する走行距離測定手段とを有し、
前記計測装置は、当該白線との距離の変化と当該走行距離を用いて自車の走行ベクトルを算出し、前回計測した自車位置に当該走行ベクトルを加算して自車位置を計測することを特徴とする車両位置測位装置。
【請求項２】
請求項１に記載の車両位置測位装置において、
前記距離変化算出手段において画像を処理して自車と当該白線との距離を求める際には、当該画像を左右に２等分する境界線に含まれる任意の１点に相当する第１の地点までの前記撮像装置からの第１の距離と、前記白線抽出手段で抽出された白線に含まれる画素のうち、前記第１の地点から横方向に走査して最初に見つかった画素に相当する第２の地点までの前記撮像装置からの第２の距離とを求め、前記第１の距離と前記第２の距離を基にして前記第１の地点と第２の地点との距離を求め、当該距離を自車と白線との距離とすることを特徴とする車両位置測位装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両等に搭載する測位装置に関するものである。
【背景技術】
【０００２】
カーナビゲーションシステムにおけるロケータシステムでは、ジャイロで進行方向を、車速センサで走行距離をそれぞれ求め、その結果を用いるデッドレコニングを主体としてきた。更に、デッドレコニングの結果を修正するためにＧＰＳも使われてきた。これは、特開昭６１−１１６６１５号公報に開示されている。
【０００３】
デッドレコニングでは、基準となる地点をＧＰＳなどによって最初に測位しておき、その地点から進行方向と走行距離を求めて移動ベクトルとし、その移動ベクトルを基準位置に加算して現在位置を算出する。さらに現在位置を基準位置にして移動ベクトルを求めて加算していく。但し、ジャイロや車速センサには誤差があり、移動ベクトルを加算していくと誤差が累積していくので、ＧＰＳの測位結果も併用して、ある時点でＧＰＳの測位結果を採用する。
【０００４】
【特許文献１】特開昭６１−１１６６１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記特開昭６１−１１６６１５号公報のデッドレコニングでは、ジャイロや車速パルスの誤差によって、位置の誤差が累積していく。ある時点でＧＰＳによるリセットをしても、ＧＰＳの測位結果も１０ｍ前後の誤差が生じることがあり、正確な座標が求められる保証は無い。ジャイロに関しては、現行のカーナビに搭載されているものの場合、角度検出の精度が悪く、狭角分岐や車線変更時では直進との区別がつきにくい。そのため、分岐においてはどちらに進んだかを迅速かつ正確に判断することが難しい。また、車線変更を頻繁に繰り返しても車線変更したことがわからず、蛇行しても直線走行していると判断してしまうので、前後位置の誤差が生じる。
【０００６】
上記に鑑み、精度が低いセンサを用いた方法を用いることなく、測位精度を向上させる手法が必要である。
【課題を解決するための手段】
【０００７】
撮像した画像から白線を抽出する白線抽出手段と、当該画像を処理して自車と当該白線との距離を求める手段と、一定時間内における当該白線との距離の変化を算出する距離変化算出手段と、当該一定時間内の走行距離を測定する走行距離測定手段とを有し、当該白線との距離の変化と当該走行距離を用いて自車の走行ベクトルを算出し、前回計測した自車位置に当該走行ベクトルを加算して自車位置を計測する。
【０００８】
また、当該画像を処理して自車と当該白線との距離を求める手段は、当該画像を左右に２等分する境界線に含まれる任意の１点に相当する第１の地点までの第１の距離と、前記白線抽出手段で抽出された白線に含まれる画素のうち、前記第１の地点から横方向に走査して最初に見つかった画素に相当する第２の地点までの第２の距離とを求め、前記第１の距離と前記第２の距離を基にして前記第１の地点と第２の地点との距離を求め、当該距離を自車と白線との距離とする。
【０００９】
また、自車の前輪の舵角を得るための手段と、一定時間内における当該舵角の平均値を用いて当該一定時間内における自車の進行方向を算出する手段と、当該一定時間内の走行距離を測定する手段とを有し、当該進行方向と当該走行距離を用いて自車の走行ベクトルを算出し、前回計測した自車位置に当該走行ベクトルを加算して自車位置を計測する。
【発明の効果】
【００１０】
本発明によれば、画像中の白線との距離を用いてレーン内における横方向の位置を計測し、それを用いて自車位置を計測するので、ジャイロを用いる方法に比べて測位精度が向上する。
【発明を実施するための最良の形態】
【００１１】
〔実施例１〕
本発明の一実施例につき、図面を参照しながら述べる。図１は、本発明における装置の構成を示す。本発明は、カーナビゲーションシステム１０３に、画像処理装置１０１，ディスク装置１０４，ＧＰＳ１０５，表示装置１０８が接続されている。更にカーナビゲーションシステム１０３には、車速センサ１０６，ジャイロセンサ１０７，舵角センサ109が接続されている。画像処理装置１０１には、カメラ１０２が接続されている。車速センサ１０６，ジャイロセンサ１０７，舵角センサ１０９は、車内ネットワークに接続されており、カーナビゲーションシステム１０３は、車内ネットワークのデータを送受信する機能を備えている。
【００１２】
ディスク装置１０４は、日本全国または一部の地図情報を読み出すための装置であり、当該情報はＣＤ，ＤＶＤまたはＨＤＤに格納されている。ＧＰＳ１０５は、自車位置を測位するための装置である。車速センサ１０６とジャイロセンサ１０７も自車位置を測位するための装置であり、これら２つの装置を用いてデッドレコニングと呼ばれる手法を用いて自車位置を特定することが可能である。カメラ１０２は車体に設置され、自車が走行中の道路面を撮影するために使われる。画像処理装置１０１は、カメラ１０２で撮影された映像を処理するために使用される。
【００１３】
カーナビゲーションシステム１０３は、経路探索，経路誘導の機能を備えており、経路誘導のためには、自車位置を正確に把握する必要がある。それについて次に述べる。
【００１４】
図２は、本実施例における車両位置測位装置の構成を示す図である。画像処理装置101には、車線認識処理部２０２があり、カメラ１０２で撮影された画像から車線を抽出する。更に、画像処理を用いて、抽出した車線と自車との横方向の距離を求める。これを実施するのが、レーン内位置計測部２０３である。
【００１５】
車速センサ１０６の出力は、走行距離を算出するのにも使われ、それを実施するのが走行距離計測部２０４である。前記レーン内位置計測部２０３と前記走行距離計測部２０４の出力を基にして、自車位置計測部２０５が自車位置を計測する。
【００１６】
計測手順について、図３を参照しながら例示する。図３は、２車線の道路において、車線変更している場面である。最初に地点３０１、その後、地点３０２，地点３０３と走行していった場面である。地点３０１においては、センターライン３１０と自車との距離がｄ11、地点３０２に到達するまでの走行距離がｄ21である。地点３０２においては、センターライン３１０と自車との距離がｄ12、地点３０３に到達するまでの走行距離がｄ22である。地点３０３においては、ライン３１１と自車との距離がｄ13である。
【００１７】
地点３０１を原点と考え、車両進行方向をｙ軸、それに直行して車両の右方向にｘ軸をとると、地点３０２の座標は、（ｄ11−ｄ12，sqrt(ｄ21＾２−(ｄ11−ｄ12)＾２)）となり、これを（ｘ2，ｙ2）とする。（ｘ2，ｙ2）は、地点３０１を原点にした相対座標であるので、これを経度・緯度に変換する必要がある。それには、地図ＤＢ２０１から、現在走行中の道路の方向の情報を得る。これは、例えば東方向を０とし、反時計回りを正とする角度で表現されている。この道路の方向の角度分だけ、（ｘ2，ｙ2）を回転させ、更に道路の向きと車両の進行方向の間の角度分回転させて、地点３０１の経度・緯度に加算すればよい。
【００１８】
次に、地点３０２を原点と考えて、地点３０３の座標を求める。このときは、地図ＤＢ２０１から車線の幅を得て、自車とセンターライン３１０との横方向の距離を求める。車線の幅をｗrとすると、地点３０２から地点３０３のｘ方向の移動量は、ｄ12＋（ｗr−
ｄ13）である。これ以降の計算は、地点３０１から地点３０２に移動する場合と同様である。
【００１９】
上記の測位処理の流れについて、図４のフローを参照しながら述べる。まず、基準となる位置を測位する（ステップ４０１）。これには、ＧＰＳ１０５を用いる。一定時間が過ぎたところで、車速センサ１０６の出力を用いて、基準位置からの走行距離を計測する
（ステップ４０２）。この「一定時間」の値については、例えば１００ｍｓなどと決めてよい。次に、カメラ１０２で撮影された画像からラインを抽出し、ラインと自車との距離を算出する。自車とラインとの距離を基に、自車の横方向の移動距離を求める（ステップ４０５）。ステップ４０５で求めた横方向の移動距離と、ステップ４０２で求めた走行距離から、自車位置を計測する（ステップ４０６）。ここで計測された自車位置を基準位置とし（ステップ４０７）、ステップ４０２に戻る。ステップ４０２からステップ４０５は、一定時間ごとに起動され、自車位置の計測は一定時間ごとに実施される。このような処理を実施することによって、ジャイロを使わず、また、従来のマップマッチングを用いることなく、自車位置を計測することができる。
【００２０】
次に、自車位置とラインとの距離を算出する方法について述べる。まず、カメラ１０２が車に設置されている様子を図８に示す。求める自車位置は、車体の中心１００１とする。車長をｌ、車幅をｗとする。カメラ１０２は車の後ろに付いていると仮定し、カメラの光軸は進行方向と平行、設置位置は車中心から横方向に距離ｄcam だけ離れているとする。
【００２１】
図７は、車に取り付けられたカメラ１０２で撮影された画像にライン９０１，９０２が撮影された場合の一例である。このときに自車位置とラインとの距離を算出する処理フローの一例を図９に示す。まず、画像を撮影したらカメラから各画素までの距離情報を濃淡で表す距離画像に変換する（ステップ１１０１）。次に、画像の中心画素Ｐc から右側に向かって、ラインの画素Ｐr が見つかるまでスキャンする（ステップ１１０２）。次に、Ｐc とカメラ１０２の距離ｄc 及びＰr とカメラ１０２の距離ｄr をそれぞれ距離画像から得る（ステップ１１０３）。次に、Ｐc とＰr との距離ｄcrを求める。これはｄcr2 ＝ｄc2＋ｄr2の関係から求めることができる（ステップ１１０４）。ｄcrにｄcam を加えた値を、ライン９０２と自車との距離とする（ステップ１１０５）。但し、ここで求めた距離は、自車位置から距離ｄc 後方における値であり、車の側面からの距離ではないので、本実施例では、ｄc の値ができるだけ小さくなるようにカメラ１０２の撮影範囲が調整されていると想定している。また、前後方向の位置についても、距離ｄc を考慮する必要がある。尚、Ｐc は画像の中心である必要は無く、画像を左右に２等分する境界線上にあればよい。
【００２２】
次に、図７の状態から車線変更した場合を考える。右レーンに変更したときの画像例を図１０に示す。図１０（ａ）は、車線変更直前であり、図１０（ｂ）は車線変更直後である。ここで、本実施例では、カメラ１０２が車の後ろに取り付けられていると想定しており、右に車線変更した時には、映像では車が左に移動したように見える。ライン９０２は自車から離れていくため、図１０（ａ）の状態になった時点では、ライン９０２との距離ｄcr2 はｄcrに比べて大きくなる。次に画像を取得したときに図１０(ｂ)の状態になったとすると、ライン９０１との距離ｄcr3を算出することになる。したがって、図１０(ａ)から（ｂ）になったときの横方向の移動距離は、車線幅−ｄcr2＋ｄcr3となる。
【００２３】
ここで、ラインの検出方法について述べる。画像のうち、明度の変化が大きい画素を検出し、その画素の並びをＨｏｕｇｈ変換などによって直線に変換することによってラインを検出することが可能である。
【００２４】
図１１に、右レーンに車線変更する際の、自車とラインとの距離と時刻との関係例を示す。時刻ｔ１の時点では距離ｄcr、時刻ｔ８までは単調に距離が増加してｄcr2 になり、次の計測時刻ｔ９になると距離が急に減少し、ｄcr3 となっている。このようにラインとの距離の変化を見ることにより、レーン内での車両の道幅方向の移動及びレーンのどちらのラインを横切ったかを知ることが出来る。
【００２５】
まず、画像からラインを検出する。図１０（ａ）の状態では、ライン１２０１，９０１，９０２が検出されている。このとき、画像を左右に分割する分割線９０３から右側のラインで、分割線９０３からの距離がもっとも短いラインを検出する。図１０（ａ）の場合はライン９０２がそれに該当する。そして、次に得た画像が図１０（ｂ）であったとすると、分割線９０３から右側で、分割線９０３からの距離がもっとも短いラインはライン
９０１である。このとき、ｄcr2は急激に減少する。これによって、図１０（ａ）から
（ｂ）の状態になったということがわかる。つまり、車線をまたいだことがわかる。
【００２６】
ところで、図１２のように、画像中心から右にスキャンしてもラインの画像が見つからない場合がある。そのときは、画像中心から左にスキャンしてＰlを見つける。次に、ＰcとＰ lとの距離ｄclを求める。これには、先に記述した方法に倣い、ｄc とｄl を用いる。ライン９０２からの距離は、車線幅−ｄcl＋ｄcamで求めることができる。
【００２７】
図３では、自車の右側のラインとの距離を用いていたが、左側のラインを用いてもよい。図６は、自動車が地点５０８を経由して地点５０１から地点５０２へ移動する様子を示したものである。地点５０１において、画像処理を用いてライン６０１との距離ｄh1を算出する。このとき、カメラの画像は図９のようになっており、ｄh1はｄcrの値から求めることができる。
【００２８】
地点５０１から地点５０８方向に移動していくと、カメラ画像は、図１０（ｂ）から図１０（ａ）のように遷移していく。つまり、右レーンに移動する場合と逆である。自車の左側に存在し、自車に一番近いラインまでの距離は、ｄcrからｄcr3 へと変化していき、地点５０８に到達したときには、カメラ画像は図１０（ａ）の状態になっている。ここで、ライン６０２はライン９０２に相当する。このとき、ｄcr2 を求め、ライン６０１からの距離ｄh2を算出する。また、進出レーンの幅ｗを地図ＤＢ２０１から得る。縦方向の移動量については、車速センサ１０６の出力を基にして走行距離ｄv1を求め、それと横方向の移動量から求めることができる。地点５０１から５０８に移動したときの横方向の移動量は、ｄh1＋ｗ−ｄh2である。これとｄv1の値を用いてデッドレコニングによる測位が可能になる。
【００２９】
更に次の測位時刻に地点５０３に到達した場合も同様に、ライン６０１との距離ｄh31を算出し、走行距離ｄv2を求めて、横方向，縦方向の移動量を求め、地点５０２の座標を求めることができる。
【００３０】
この方法は、同一車線内で蛇行した場合にも応用が可能である。ステップ１１０５に示すように、常にラインと自車との距離を算出しながら横方向の位置を常に把握しているので、同一車線内で蛇行しても正確な位置を求めることができる。
【００３１】
これらの技術は、高速道路の分岐地点においても応用できる。
【００３２】
以上は、分岐の無い道路を走行中の場合について述べた。次に、道路の分岐方向に向かって走行する場合について、図１４を参照しながら述べる。分岐においては、分岐線1604のように、普通のラインよりも太い破線が描かれている。分岐線１６０４を認識できた場合、自車と分岐線１６０４との距離を用いて横方向の移動距離を求める。地点１６０２においては、距離ｄh1を求め、地点１６０３に移動したときは、距離ｄh2を求める。画像の中に分岐線が含まれる場合、自車と分岐線との距離を求める。この場合、分岐線が画面の中央より右側にあるか左側にあるかということについても判定する。図１４においては、地点１６０２から地点１６０３に移動したとき、分岐線１６０４は自車の左側から右側に移っているため、自車の横移動距離はｄh1＋ｄh2となる。また、地点１６０３から地点
１６０５に移動した場合、分岐線１６０４は自車の右側のまま変わらないので、自車の横移動距離はｄh2＋ｄh3である。
【００３３】
次に、ステップ４０５の、横移動距離を求めるフローの例を図１５に示す。最初に、画像を取得する（ステップ１７０１）。次に、自車の左側にあるラインを認識する（ステップ１７０２）。市販のリアビューカメラを用いる場合、画像の左半分に存在するラインを認識すればよい。次に、ラインと自車との距離ｄh1を求める（ステップ１７０３）。これは、図９に示すフローにしたがって算出する。
【００３４】
次に、認識したラインが分岐線かどうかを判断する（ステップ１７０４）。分岐線であれば、次の画像を取得（ステップ１７１０）後、当該画像に含まれる分岐線を認識する
（ステップ１７１１）。当該分岐線までの距離を算出し（ステップ１７１２）、更に分岐線の位置が右に変わっていたとき（ステップ１７１３）、横移動距離はｄh1＋ｄh2とする（ステップ１７１５）。分岐線の位置が変わっていなければ、横移動距離はｄh1−ｄh2とする（ステップ１７１４）。
【００３５】
もし、ステップ１７０４で、分岐線ではないと判断されたとき、次の画像を取得して
（ステップ１７０５）、自車の左側にあるラインを認識し（ステップ１７０６）、当該ラインと自車との距離ｄh2を算出する（ステップ１７０７）。ステップ１７０８で、ｄh1とｄh2の差分を求めて閾値と比べ、もし閾値よりも大きければラインをまたいだと判断して、横移動距離をｄh1＋ｗ−ｄh2とする（ステップ１７０９）。ここでｗは車線の幅とする。閾値よりも小さければラインをまたいでいないと判断し、横移動距離をｄh1−ｄh2とする（ステップ１７１４）。
【００３６】
尚、ステップ１７０７と１７１２の、ラインと自車との距離を求める処理は、図９に示したフローにしたがう。
【００３７】
次に、画像を使う代わりに、舵角センサ１０９を用いる例について述べる。白線が検知できない場合、舵角センサ１０９を用いることが可能である。このときのソフトウェア構成を図５に示す。図２の構成に、舵角計測部５０１が加わった構成である。舵角センサ
１０９は、車の前輪の角度を出力するものである。舵角計測部５０１は、舵角センサ109の出力する生データの一定時間内における平均値を出力する。例えば、舵角センサ１０９の出力時間間隔が０.０１秒とし、０.１秒ごとに、出力データ１０個の平均値を出力する。これによって、舵角センサ１０９の出力のばらつきを補正して出力することが可能である。
【００３８】
これについて、図１３にフローを示す。最初にタイマをリセットし(ステップ１５０１)、次に舵角センサ１０９の出力生データを取得する（ステップ１５０２）。次にタイマの値が規定値に達しているかチェックし（ステップ１５０３）、規定値に達していなければタイマをインクリメントして（ステップ１５０４）、ステップ１５０２に戻って舵角センサ１０９の次の出力値を得る。タイマが規定値に達したら、その時間内に取得したデータの平均値を計算し（ステップ１５０５）、自車位置計測部２０５に送る（ステップ1506）。自車位置計測部２０５は、舵角計測部５０１の出力データから、自車の進行方向を特定する。この進行方向と走行距離を用いてデッドレコニングを実行する。
【産業上の利用可能性】
【００３９】
本発明をカーナビゲーションシステムに適用することによって、より正確かつ詳細な経路誘導に寄与できる。また、ドライバーに対する安全運転支援にも適用可能である。
【図面の簡単な説明】
【００４０】
【図１】本発明の装置構成図である。
【図２】本発明のソフトウェア構成図である。
【図３】車線変更時における使用特徴量を示す図である。
【図４】自車位置測定のフローを示す図である。
【図５】本発明のソフトウェア構成図である。
【図６】分岐における使用特徴量を示す図である。
【図７】カメラのピッチングが発生する際のパラメータを示す図である。
【図８】カメラのピッチ角を求めるフローである。
【図９】白線と自車との距離算出に使用するパラメータを示す図である。
【図１０】カメラの設置位置の例を示す図である。
【図１１】白線と自車との距離算出フローである。
【図１２】白線と自車との距離算出に使用するパラメータを示す図である。
【図１３】白線と自車との距離の変化例を示す図である。
【図１４】白線と自車との距離算出に使用するパラメータを示す図である。
【図１５】舵角センサによる舵角測定結果を出力するまでのフローである。
【符号の説明】
【００４１】
１０１…画像処理装置、１０２…カメラ、１０３…カーナビゲーションシステム、104…ディスク装置、１０５…ＧＰＳ、１０６…車速センサ、１０７…ジャイロセンサ、108…表示装置、１０９…舵角センサ。
【図１】
0004702149.tif 000002
【図２】
0004702149.tif 000003
【図３】
0004702149.tif 000004
【図４】
0004702149.tif 000005
【図５】
0004702149.tif 000006
【図６】
0004702149.tif 000007
【図７】
0004702149.tif 000008
【図８】
0004702149.tif 000009
【図９】
0004702149.tif 000010
【図１０】
0004702149.tif 000011
【図１１】
0004702149.tif 000012
【図１２】
0004702149.tif 000013
【図１３】
0004702149.tif 000014
【図１４】
0004702149.tif 000015
【図１５】
0004702149.tif 000016