JP3638323B2 - 車両の障害物検出装置 - Google Patents
車両の障害物検出装置 Download PDFInfo
- Publication number
- JP3638323B2 JP3638323B2 JP28121894A JP28121894A JP3638323B2 JP 3638323 B2 JP3638323 B2 JP 3638323B2 JP 28121894 A JP28121894 A JP 28121894A JP 28121894 A JP28121894 A JP 28121894A JP 3638323 B2 JP3638323 B2 JP 3638323B2
- Authority
- JP
- Japan
- Prior art keywords
- obstacle
- vehicle
- data
- segment
- detection
- 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 - Fee Related
Links
Images
Landscapes
- Closed-Circuit Television Systems (AREA)
- Traffic Control Systems (AREA)
- Radar Systems Or Details Thereof (AREA)
Description
【産業上の利用分野】
この発明は車両の障害物検出装置に関し、より具体的には走行時に障害となる前走車などの障害物の検出装置であって、走行環境におけるその障害物情報を精度良く検出できるようにしたものに関する。
【0002】
【従来の技術】
車両や道路外の物体など複数の障害物が存在する場合、それらが道路(走行路)に対してどの位置にあるのかが分かれば、適切な警報動作や自車の制御が可能となる。しかしながら、カーブ路を通過するときなど、前走車など自車の進路上に存在する障害物と樹木など道路外に存在する障害物とが、明確に識別しがたい。そこで、特開平4−193641号公報記載の技術は、撮像信号の中から自車線または道路形状を示す信号を抽出して自車の進路を判別すると共に、撮像された範囲に存在する物体を測定し、測定された物体の中で自車の進路上に存在する物体を障害物と判断する技術を提案している。
【0003】
【発明が解決しようとする課題】
このように、従来技術においては、進路の中か外かで障害物になるか否か判別している。これにより、樹木などの静止障害物は障害物ではないと判別することができるが、車両などは時々刻々と移動することから、この従来技術では自車にとって障害物となるか否か必ずしも明確に判別することができない。
【0004】
即ち、レーダデータをそのまま使用しているので、必ずしも実際の障害物と一対一には対応しない。何故ならば、1つの障害物の異なる部位から別々にレーダ波の反射があり、複数の検出データが出力されることがしばしばあるからである。このため、上記した従来技術によるときは、実際の障害物の正確な位置を知ることができない。また、検出データは点の情報であるので、実際の障害物の大きさを掴むことができない。
【0005】
従って、この発明の目的は従来技術の上記した欠点を解消することにあり、自車の走行にとって真に障害となる障害物を精度良く検出し、それによって警告、回避など必要な動作を的確に行うことができるようにした障害物の検出装置を提供することにある。
【0006】
【課題を解決するための手段】
上記の目的を達成するために、この発明は請求項1項において、カーブ路を含む車両の走行路の境界位置を検出する走行路境界位置検出手段、送信した波動の反射波を通じて少なくとも物体の位置を検出し、検出点データとして出力する物体検出手段、前記検出点データの示す物体位置を前記走行路の境界位置と比較し、前記物体が走行路内に位置するか否かを判定する判定手段、前記検出点データが所定範囲内にあるか否かを判断し、前記所定範囲内にあると判断されるとき、前記検出点データを1つのクラスタにクラスタリングすると共に、前記判定手段の判定結果に基づき、前記検出点データが走行路内に位置する物体の検出点データと走行路外に位置する物体の検出点データとからなると判定されるとき、前記1つのクラスタをさらに別のクラスタとするクラスタリング手段、および前記走行路内に位置する物体の検出点データからなる前記クラスタを走行の障害となる障害物として検知する検知手段、からなる如く構成した。
【0008】
上記の目的を達成するために、請求項2項の装置にあっては、前記所定範囲が、車両の投影面積に基づいて設定される値である如く構成した。
【0009】
【作用】
請求項1項においては、物体が走行路内に位置するか否かを判定する判定手段、検出点データが所定範囲内にあるか否かを判断し、前記所定範囲内にあると判断されるとき、前記検出点データを1つのクラスタにクラスタリングすると共に、前記判定手段の判定結果に基づき、前記検出点データが走行路内に位置する物体の検出点データと走行路外に位置する物体の検出点データとからなると判定されるとき、前記1つのクラスタをさらに別のクラスタとするクラスタリング手段、および前記走行路内に位置する物体の検出点データからなる前記クラスタを走行の障害となる障害物として検知する検知手段、からなる如く構成したので、自車の走行にとって真に障害となる走行路内の障害物のみを精度良く検出することができる。それによって、警告、回避など必要な動作を的確に行うことができる。尚、ここで、走行路境界位置検出手段は具体的には、走行路画像のエッジ画像をハフ変換して直線成分を抽出して行う。また、物体検出手段は具体的にはマルチビームFM−CWレーダを意味する。さらに、前記した物体検出手段が例えばレーダであって送波ビームの照射広がり角、障害物までの距離によって同一障害物に対して複数の障害物があるかのように検出するときも、検出点データ群が所定範囲に対応した大きさの1つの障害物であると検知することができる。
【0011】
請求項2項の装置にあっては、前記所定範囲が、車両の投影面積に基づいて設定される値である如く構成したので、請求項1項で述べた効果に加えて、複数の検出点データ群が同一の車両であると検知することができる。
【0012】
【実施例】
以下、添付図面に即してこの発明の実施例を説明する。
【0013】
図1はこの発明に係る車両の障害物検出装置を備えた車両を全体的に示す説明透視図である。図において、車両はCCDカメラ(モノクロTVカメラ)10を1基備える。CCDカメラ10は運転席上方のルームミラー取り付け位置に固定され、車両進行方向を単眼視する。符号12はミリ波レーダからなるレーダユニットを示し、車両前方に取り付けられた2基の前方レーダからなり、反射波を通じて他車などの移動体を含む立体障害物の存在を検出する。
【0014】
レーダユニット12は、より具体的にはFM−CW型のレーダ装置からなり、図2に示す如く、複数本の電磁波ビームを送波し、その反射波を受信して立体障害物の存在を検出する。検出された障害物の位置座標(相対距離)は、ビームごとに発生する。尚、このレーダユニットの詳細は、本出願人が先に提案した特願平5−276396号に詳細に述べられているので、これ以上の説明は省略する。
【0015】
図1に戻ると、車両室内の中央部付近にはヨーレートセンサ14が設けられ、車両の重心を通る鉛直軸(z軸)回りの車両回転角(ヨー角)の変化速度(ヨー角速度)を検出する。更に、車両のドライブシャフト(図示せず)の付近にはリードスイッチからなる車速センサ16が設けられ、車両の進行速度を検出すると共に、舵角センサ18が車両のステアリングシャフト20の付近に設けられてステアリング舵角を検出する。ステアリングシャフト20には舵角制御モータ22が取り付けられると共に、スロットル弁(図示せず)にはパルスモータからなるスロットルアクチュエータ24が取り付けられ、更にブレーキ(図示せず)にはブレーキ圧力アクチュエータ26(図1で図示省略)が取り付けられる。この構成において、車両は算出された舵角制御量に応じて舵角制御されると共に、スロットル弁が開閉されて車速が調節され、また必要に応じてブレーキが作動させられて走行する。
【0016】
図3は上記の構成をより詳細に示すブロック図で、図4は図3の構成をより機能的に示す説明図である。
【0017】
図3を中心に説明すると、CCDカメラ10の出力は、画像処理ハードウェア30に送られてエッジ検出とハフ(Hough)変換により直線成分の抽出が行われ、その結果はバス32を介して通信用メモリ34にストアされる。画像処理CPU36は、直線成分から走行路(道路)区分線候補を抽出して通信用メモリ34にストアする。画像評価CPU38は、所定時刻ごとにストア値を読み出して走行路(道路)区分線を決定する。レーダユニット12の出力は、レーダ処理回路40およびバス32を介して通信用メモリ34にストアされる。レーダ評価CPU42は、所定時刻ごとにストア値を読み出して障害物の位置を座標上で検出する。
【0018】
また車速センサ16などの出力は、軌跡推定CPU44に送られて自車両の移動軌跡が推定される。行動計画意思決定CPU50は、前記ストア値から目標経路を作成する。その目標経路と推定された自車の移動軌跡は、軌跡追従制御CPU46に送られ、そこで軌跡(目標経路)追従制御量が決定される。更に、軌跡追従制御CPU46は、舵角制御量を算出して舵角制御CPU52に出力する。舵角制御CPU52は、PWMコントローラ54およびドライバ56を介して前記舵角制御モータ22を駆動する。尚、モータ駆動量はエンコーダ58を通じて検出され、フィードバック制御が行われる。
【0019】
また行動計画意思決定CPU50は、その速度・追従制御部で車体の目標加速度を求め、車速制御CPU60に送出する。車速制御CPU60は、アクセルパルスモータコントローラ62、ドライバ64を介してスロットルアクチュエータ24を駆動すると共に、ブレーキソレノイドコントローラ66およびドライバ68を介してブレーキ圧力アクチュエータ26を駆動する。その駆動量は圧力センサ70を介して検出され、第2のフィードバック制御が行われる。
【0020】
上記において、レーダ評価CPU42が主として、実施例に係る車両の障害物検出装置に相当する。
【0021】
図5は実施例に係る車両の障害物検出装置の動作を示すメイン・フロー・チャートである。また、図6はその動作を説明する機能ブロック図である。
【0022】
図5フロー・チャートを参照する前に、実施例に係る車両の障害物検出装置の動作を概説する。
【0023】
実施例に係る装置において、FM−CW型のレーダユニット12により時々刻々と検知された、前走車などの移動体を含む障害物の位置座標に自車の現在位置(座標軸とヨー角)を付与し、障害物の絶対座標を保持しながら、過去の系列から、次の検知時刻における位置をカルマンフィルタ(線形予測フィルタ)により予測し、同一のものかどうか判断する。従来の車間距離を計るレーダでは、ある時刻に検知されて次の時刻に検知されたものは同一であると言う前提を置いているが、その障害物が車両であるのか、どちらの方向に向かって進んでいるのか分からないため、警報などで誤ることがある。実施例に係る手法では、移動する障害物のおよその方向、速度、加速度を検出し、よって危険の予知と共に、的確な警報、自車の制御などを行うことを可能とした。
【0024】
移動する車両などは通常の走行状態では、その軌跡は滑らかであり、速度も過度に急変することはないので、その性質を用いて検知した障害物の特性を表現することができる。実施例では後述の如く、それを「移動体らしさ」と表現する。それによって、障害物の位置しか検出できないレーダユニット12を用いても、その動きを一意に表せ、自車の行動制御に利用できる。例えば、手前で一時的に検知された障害物が更に接近したところで再度検知されたとき、後述の如く、同一のものと見做すことができ、それが停止している可能性が高い、前述した表現で言えば移動体らしさが低いならば、その側方を通過できる余地があるときは減速して通過する、余地がないときはその前で停止するなどの制御を行うことができる。
【0025】
この実施例においては後述の如く、時系列に発生した複数障害物の情報を効率良く管理し、新たに入ってきた情報とそれまで保持していた情報とを比較し、時間空間的に関連するものをノードとそれらを結ぶリンクとして表現する、いわゆるネットワーク型のデータ構造を用いる。それにより、複数障害物の情報の内容を更新する手続きが容易になる。実施例では現在検知されている1つの障害物に関するデータの一連を「セグメント」と呼ぶ。後述の如く、移動体らしさを評価しつつセグメントを更新することにより、複数の障害物に対しても移動情報を簡単に求めることができる。前記のネットワークセグメントの情報から、次に移動する位置が推定でき、入力データが一時的になくなっても、関連性の高いデータが再度検知されれば、そのデータはノードとしてセグメントにリンクされて再捕捉することができ、移動情報が途中で失われることがない。
【0026】
以上を前提として、図5フロー・チャートを参照して実施例に係る装置の動作を説明する。尚、図5フロー・チャートに示すプログラムは、レーダ検知サイクルの100msごとに起動される。
【0027】
先ずS10でセグメントの個数をカウントするカウンタiの値を1にインクリメントし、S12に進んで最後のセグメントimaxに達していないことを確認してS14に進み、そこでデータ取込み・クラスタ化を行う。
【0028】
実施例で使用するFM−CW型レーダの特性上、入力データから障害物の幅を検知することができず、送波ビームの照射広がり角、障害物までの距離によっては同一障害物に対して複数の障害物があるかのように検知される。そこで、ある基準でまとめてクラスタとして扱う。その基準は、クラスタの幅と縦の長さをしきい値として、図7に示すように、普通乗用車のサイズ(z軸上から見た投影面積)を用いる。クラスタの幅を障害物の幅とし、重心を中心とし、クラスタを後述するネットワークセグメントのノードとして扱う。その操作により、後の処理でのデータ量を抑えることができる。更に、どのビームに検知されているかを検知の度に意識する必要がないと言う利点もある。
【0029】
車両や道路外の物体など複数の障害物が存在する場合、それらが道路に対してどの位置にあるのかが分かれば、適切な警報動作や自車の制御が可能となる。しかしながら、図8に示すようにカーブ路(曲線路)を通過するときなど、前走車など自車の進路上に存在する障害物と樹木など道路外に存在する障害物とが、明確に識別し難い。この場合、従来技術によるときは、実際の障害物の正確な位置を知ることができず、実際の障害物の大きさを掴むことができないことは前述の通りである。
【0030】
そこで、この出願に係る実施例においては、画像処理によって検出された走行路(道路)区分線の情報とレーダによって検知された障害物の位置とを比較し、ある基準を用いて障害物としてデータを1つに扱う(クラスタ化する)ようにした。その場合に問題となるのが、走行路の外の物体(例えば、道路標識、ガードレール)に起因する検出データである。検出したい障害物(他の車両など)が、このような走行路外の物体の傍らに位置していると、障害物に起因するデータと一緒に走行路外の物体に起因する検出データまでもが同じクラスタに併合される。
【0031】
実施例ではクラスタは検出データを距離の近いもの同士をまとめて大きさと中心位置を持つものと認識することとしたが、走行路外の物体まで同じクラスタに併合されると、障害物の大きさや中心位置を正しく求めることができない。そこで、図9に示す如く、画像処理で得た走行路区分線で分断されるか否か判断し、分断されるならば複数のデータを別々のものとして扱い、道路内と外に障害物があると判断した。それにより、図9左側に示すような1つの障害物と判断する不都合が生じない。
【0032】
図10はその作業を示すサブルーチン・フロー・チャートである。以下説明すると、S100でカウンタm(クラスタ内の検知データ数カウンタ),n(検知データ数カウンタ)を0に、j(クラスタ数カウンタ)を1にリセットする。またフラグflgを0にリセットする。
【0033】
続いてS102に進み、検知データ数カウンタnをインクリメントし、S104に進んで当該nの検知データDnをその時点で注目している検知データDとする。即ち、いま図11の状態にあるとし、検知データD1,D2,D3,D4のうち、D1に注目する。続いてS106に進んで前記フラグflgが0であるか否か判断する。このフラグは新たにクラスタを新設するとき0にリセットされるものであり、先にS100で0にリセットされていることから、ここでの判断は肯定され、S108に進んでDが最終検知データか否か判断する。
【0034】
図11の状態にあると仮定すると、S108での判断は否定され、S110に進んで変数L,P,Gを検出データDに書き替える(図12)。ここで、Lはクラスタ内で最もy座標値の大きい検知データ、Pはその時点で最後にクラスタに併合した検知データ、Gはクラスタ内の検知データの座標値の総和を意味するが、ここではD1をとりあえず、y座標値が最も大きく、最後にクラスタに併合したものであり、またそれを総和としておく。同時に、フラグflgの値を1にセットし、クラスタ内検知データ数カウンタmを1に書き替える(即ち、最初のクラスタ内に検知データが1つあるとする)。
【0035】
続いてS102に戻り、検知データ数カウンタ値nをインクリメントし、S104に進んでその時点で注目している検知データをD2とし、S106に進んでフラグの値が0か否か判断する。S110を経てきたことから今度は否定されてS112に進み、図13に示すように、先の検知データ(D1)と現在の検知データ(D2)のx,y方向の差(絶対値)Lx−Dx,Ly−Dyが所定値(ここでは「Wth」(例えば5m)と「Dth」(例えば2m)とする)より共に小さいか否か判断する。所定値Wth,Dthは、実際の乗用車の大きさ、即ち、z軸から見た乗用車の投影面積にほぼ相当する。
【0036】
S112で肯定されたとするとS114に進み、線分PD、即ち、D1(P)とD2(D)の間に引かれた線分と走行路区分線(画像処理を経て実線で示される)が交わるか否か判断する(図14)。先に述べた如く、カーブ路を走行するときなど、道路内と外の物体が同時に検知され、それらが自車の走行に際して障害物になるか否か、そのままでは判断することはできない。そこで実施例においては、検知データが複数個あるとき、クラスタ化すると共に、検知データ間に走行路区分線が存在するときは、そこで別のクラスタとする。かく構成することによって、自車の走行にとって真に障害物となる物体を正確に判別することができる。
【0037】
図14に示す例では交わらないことから、ここでの判断は否定され、S116に進んで検知データD2をPに書き替えてその時点で最後にクラスタ1(S100で特定)に併合した検知データとし、D(D2)の座標値を加算して総和Gを更新し、D(D2)をクラスタ1内で最もy座標値の小さい検知データとする。同時にクラスタ1内の検知データ数カウンタ値mをインクリメントし、クラスタ1内に検知データが2個あるとする。
【0038】
続いてS118に進んでD(D2)が最終検知データか否か判断する。ここで、最終か否かはy軸に関して判断されるが、S118の判断は図14の例では否定され、S102に戻り、S104に進んで今度は検知データD3に注目し、S112を経てS114に進み、新たな検知データD3と最前の検知データD2の間に引かれた線分PDと走行路区分線が交わるか否か判断する。図15に示すように、この場合は肯定されてS120に進む。
【0039】
尚、S112で否定されるときは、S114で線分と走行路区分線が交わるか否かを判断するまでもなく、S120に進む。S120以降はクラスタを別にするための処理であるが、検知データ間の距離が車両の大きさを超えるときは、別のクラスタとする。即ち、実施例で使用するレーダの特性から同一の車両に対して複数の検知データが生じる可能性があるため、S114を介して確認するものであるが、検知データ間の距離が車両の大きさを超えるときは、別の物体と判断するのが妥当と考えられるからである。
【0040】
S120ではクラスタ内検知データ数カウンタ値mが1か否か判断する。即ち、新たなクラスタの検知データが1個であるか否か判断する。図示例の場合には先にS116で2にインクリメントされていることから否定され、S122に進んでクラスタ1内の検知データの座標値の総和Gをクラスタ内検知データ数カウンタ値m(2)で除算してクラスタ1の重心位置Gj(j=1)を求める。同時に、L(D1),R(D2)間の距離の絶対値を求めてクラスタ1の幅Wjとする。
【0041】
また、ここまでで検知データD1,D2をクラスタ1とし、D3から別のクラスタとするためフラグの値を0にリセットし、クラスタ内検知データ数カウンタ値mをインクリメントする。続いてS124に進んでクラスタ数カウンタ値jをインクリメントする。尚、S120でクラスタ内の検知データが1と判断されるときはS126に進んでその検知データの位置Lを重心位置Gjとすると共に、検知データが1個でクラスタとしての幅がないことから値Wjは求めず、S128に進んでフラグの値を0にリセットする。
【0042】
続いてS108に進み、最終検知データか否か判断する。図示ではD3であったことから否定され、S110に進んで図示の処理を行い、S102以降を同様に進み、S118でDが最終検知データと判断されるまで以上のステップを繰り返す。そして、S118で最終検知データと判断されるときはS130に進んで検知データ数mが1か否か判断し、否定されるときはS132に、肯定されるときはS134に進んで先にS122,126で述べたと同様の処理を行って終わる。また、S108で肯定されるときは検知データが1個であったことから、S136に進んでその検知データを重心位置に書き替えて終わる。
【0043】
図5フロー・チャートに戻ると、続いてS16に進んで検知データがあるか否か判断する。肯定されるときはS18に進んでネットワークが既に存在するか否か判断し、否定されるときはS20に進んでネットワーク発生処理を行う。ここで、先に触れたネットワークについて詳説する。
【0044】
レーダによって時々刻々検知されるデータは、それをつなげていけば、位置に関する時系列データとなる。実際の道路(走行路)上では、他の走行車両や停止している車両、ガードレールや標識など複数の物体が存在するために、同時に別のものが検知される。よって、これを切りわけ、各々のおよその移動速度、移動方向を求める必要がある。そこで、実施例の場合、同時に複数の障害物が扱えて、かつレーダユニットの検知誤差を考慮したデータ構造とし、それらの更新を新しい入力で過去までの累積情報にどれだけ依存しているか、即ち、関連性を持つかを移動予測による位置推定に基づいて行うこととした。
【0045】
S20の作業は、このネットワーク型のデータ構造を新設する作業を意味する。具体的には、図16に示すように、時刻iにおける障害物情報をノードとする、移動体全体に関する時系列情報を格納したネットワークセグメントを作成する作業である。ノードには図17に示す情報を持たせる。セグメントには図18に示す情報を持たせる。以上のようなデータ構造によって、検知されたデータを内部に保持する。移動する物体が車両の場合、一般的な状況では車線変更を開始してから終了するまでに約2秒を要する。よって、車両の動きをとらえるのに十分なように約2秒分のデータが保持できるノードの数を設定する。また、およその速度と方向は、ネットワークを利用して、以下の計算により簡単に求められる。
速度=(最新ノード位置−最古ノード位置)/(最新データ検知時刻−最古データ検知時刻)
方向=最新ノード位置と最古ノード位置を通る直線の傾き
【0046】
通常のレーダ、例えばドップラーレーダでは、対象物の相対速度が検知可能であるが、実施例で用いている、位置のみを検知するFM−CW型のレーダでは、時間微分により速度を求めることになる。しかし、外乱の多い環境では、単純に位置座標を微分することはできない。そこで、実施例の場合、最古と最新のノード間の移動量と時刻からおおよその速度を求めた。これにより、ばらつきの影響はセグメントの始点と終点にのみ現れ、比較的安定した結果が得られる。また、方位についてもセグメント全体の向きを扱うので、ばらつきの影響は少ない。尚、ここで求めたおおよその速度は後述の如く、カルマンフィルタによる予測の初期値として用いる。
【0047】
一般的な走行では0.2G程度の減速を考慮すれば良く、0.2Gで2秒間減速した場合、実施例では推定速度と実際の速度の差は、理論上7km/hとなって、カルマンフィルタによる予測の初期値として適当である。図19に推定速度、推定方位を示す。追従中の前走車の速度は自車の速度と比較して比較的安定している。但し、停止障害物について、レーダのばらつきの影響を受けている。これは、速度の計算が先のネットワークセグメントの始終点間距離に基づいているためである。
【0048】
以上のネットワークセグメントを検知している障害物の数だけ作成し、コンピュータ内部に保持し、新たに検知されたデータに基づいてネットワークを更新する。
【0049】
図5フロー・チャートの説明に戻ると、S18でネットワークが既に存在すると判断されるときはS22に進み、ネットワーク更新処理を行う。
【0050】
これについて述べると、ネットワークの更新を単純更新と複数障害物存在時の更新に分類し、分類結果により処理を違えるようにした。
1)単純更新
新たに検知された障害物のデータがどのセグメントに属すかを推定位置との距離に基づいて判断する。即ち、その距離がレーダシステムの検知ばらつき(x変位とy変位)より求めた範囲にあれば、セグメントに属し、なければ、新たな別の障害物として扱う。即ち、新しいセグメントを発生させる。更新の条件、処理方法については図20に示す。
2)複数障害物存在時の更新
一般の道路において例えば、前走車、追い抜き車両、路肩に停止した車両、標識など様々な障害物が存在し、レーダにも検知される。実際の場面では、前走車の側方に他の車両が走行していたり、同一車線の前方に複数の車両が走行していて、そのうちの1台が隣の車線に移ったり、追い越した車両が追従している前走車の前あるいは後ろへ進入するなど種々の場合が考えられる。このような複雑な状況におけるネットワークの更新は、以下の3形態で行う。
a)新規発生
新たに別の障害物が検知されたとき、新しいセグメントを発生させる。
b)分岐継承
同じような動きをしていた複数の障害物が別の方向へ向きを変えたとき、過去の経緯の情報(ノード情報、セグメント情報)を新しいセグメントに継承させる。
c)合流消滅
障害物同士が近づき、どちらか一方しか検知されなくなったとき、移動体らしさと言う評価基準に基づいて一方を削除する。
それぞれの更新条件、処理方法を図21に示す。
【0051】
そして、複数障害物が存在するときの合流消滅時の更新において、一方を削除するために前記した移動体らしさと言う評価基準を設ける。これは、移動する過程、検知データの特性を考慮した評価基準である。その要素として、移動推移、検知時間、センサ検知範囲、障害物位置を図22のように考え、移動体らしは図23に示すように算出する。この表現によれば、停止物体(障害物)についても移動体と全く同じに扱うことができる。
【0052】
図24に自車が走行中に検知した障害物の移動体らしさの推移を示した。時刻40(×50ms)において検知されたデータは、前走車(実線)と停止障害物(破線)が同一に扱われたが、移動している前走車の移動体らしさが相対的に大きいため、停止障害物のセグメントは消滅した。
【0053】
以上の手続きにより、ネットワークセグメントの情報を更新する。即ち、図18の内容を計算する。ノードが所定の数(約2秒分)を超えたら、各値から最古のノードに関する移動量や曲率、これらの自乗和などを減じ、新たなノードの情報を加える。これにより、セグメントは、新しい入力の度に更新され、セグメントノードの一括計算を要しないので、複数の障害物があっても十分に短い処理時間で扱うことができる。
【0054】
図25はそのネットワークの更新作業を示すサブルーチン・フロー・チャートである。以下説明すると、S200でノード接続テーブルCtx〔j〕を初期化する。即ち、ノード接続テーブルCtx〔j〕=0とする(j=1〜検知データクラスタ数)。次いでS202に進んで接続判定用テーブルの配列を初期化、即ち、Mtx〔i〕〔j〕=0とする(i=1〜最大セグメント数)。
【0055】
次いでS204に進んでセグメント数カウンタ値iをインクリメントし、S206に進んでセグメント〔i〕のノード数NNがしきい値Nth(例えば5(500ms))を超えるか否か判断する。否定されるとき、即ち、データが500ms分溜まっていないと判断されるときはS208に進んでフラグflgnの値を0にリセットすると共に、500ms分溜まっていると判断されるときはS210に進んでフラグflgnの値を1にセットし、S212に進んで障害物位置予測を行う。尚、ここで500ms分溜まっていないと位置予測を行わないのは、時系列データがこの程度蓄積されないと、予測データの信頼性が低く、当初の目的にそぐわないからである。また500msは、レーダの検知サイクルで言えば、5回分に相当する。
【0056】
図26はその作業を示すサブルーチン・フロー・チャートであるが、同図を参照して説明する前に、その背景について説明する。
【0057】
高速道路上の車両を想定すると、車両は急旋回せず、車線変更は二状態予測制御に基づくと言う前提条件に立てば、移動はほぼ直線的として扱うことができる。よってセグメントのノード位置を回帰直線で近似することが可能となる。即ち、車両は2秒の間この直線上を進んだと仮定する。更に、移動量は後述のようにカルマンフィルタにより予測し、次の検知時刻にその車両が移動している位置を先の直線上に求める。
【0058】
実際は、セグメントの最新ノードを通り、セグメントの近似直線と直交する点から現在時刻(新たに検知された時刻)までに進む距離Lだけセグメントの近似直線上を進めた点Pを求める(図27)。この位置を推定位置、この作業を移動予測と呼ぶ。この手法によると、現実に、運動モデルに直線移動、速度可変のものを適用したことと同等である。
【0059】
実際に移動する車両と停止障害物における推定位置(実線)と入力位置(鎖線)をプロットしたものを図28,29に示す。移動する車両についてはほぼ一致し、停止障害物では約2mのずれ程度であり、移動障害物と停止障害物が近くにあると、区別できない場合が生じる。これは、後述の複数障害物存在時の処理で対処する。また、レーダは、障害物の形状や向きによっては、一時的に検知不能時間が発生する。即ち、短時間見失うことがある。この移動予測によれば、新たな時刻に基づく予測位置を出すので、短い時間ならば、障害物の再捕捉が可能である。
【0060】
ところで、自動運転車の制御系では、画像処理、本処理、行動計画などがそれぞれ非同期に処理を行う場合、データの受渡しタイミングが異なる。即ち、データを受ける側の処理時間に依存してデータの遅れ時間が発生する。実施例では、障害物の検知時刻における速度、加速度、方位から運動モデル(物理モデル)に従い、カルマンフィルタ(前記した線形予測フィルタ)を用いて任意時間先の位置を計算し、データを受ける側の処理の時刻を基準とした障害物の情報が得られるようにした。これにより、処理時間の異なるシステム間で通信遅れ時間を意識しないで障害物の情報を扱うことができる。
【0061】
但し、カルマンフィルタの処理結果により推定された速度、加速度はゆらぎがあり、その影響を受けるため、任意時間の設定は余り大きくできない。実施例では、レーダ検知時刻から1秒間を100msごとに障害物の位置を算出している。図30は前走車が定速から減速して停止する際の実際の前走車の速度(破線で示す)、本処理における推定速度、1秒間の予測位置における速度をプロットしたものである。減速時には、途中から推定速度が実測値を下回っているが、処理時間、通信遅れ時間、および制御時間の遅れを考慮して、この予測値を使うことにより、システム全体の遅れを減少させることが可能である。尚、予測時間と計算時間刻みを任意に変更しても良い。
【0062】
処理結果は、図3に示す行動計画意思決定CPU50、画像処理CPU36、車速制御CPU60の各サブシステムに通信用メモリ34経由で渡される。各サブシステムは、処理時間が異なるため、基本的に非同期である。このことは、レーダが障害物の位置を検知した時刻から、実施例の処理を行った後、実際に各サブシステムへデータが渡るまでに時間の遅れがあることを意味する。実施例では、障害物の現在の速度、加速度、移動方位に基づいて、任意の先の時刻を求めるが、その予測情報(後に「障害物移動予測テーブル」として示す)を渡すことにした。その結果、各サブシステムは、軌跡推定からデータを受けた時刻に基づいて、障害物移動予測テーブルの参照位置を決定し、データを使用することができる。これにより、通信時間の遅れを意識しないで、障害物の情報を扱うことができる。
【0063】
その予測をカルマンフィルタを用いて行うので、次にカルマンフィルタについて説明する。
【0064】
カルマンフィルタは、時系列なある信号x(t)が白色信号によってドライブされた線形ダイナミカルシステム(確率差分方程式)の出力として、信号の相関性がダイナミックスの構造に由来すると見做し、線形予測フィルタを構成する。これにより、信号や雑音の時系列を実時間で扱うことができると言う特徴がある。
【0065】
宇宙開発におけ衛星の軌跡推定では、ベイズの重みつき最小2乗フィルタ(バッチフィルタ)が古くから使用されており、現在も使用されている。バッチフィルタは、データを一括処理することから、ある時点からある時点までの予測を一度で行う。一方、車載する障害物検知システムにおける障害物の移動推定は、検知してからの予測、認識、判断に要する時間が、短かくなければならない。通常のバッチフィルタでは遅れがあり、衛星のような遠距離にある移動物体の推定には十分使えるが、衝突の回避などを行うには、その遅れは致命的なものとなる。また、カルマンフィルタは、常に最新のデータを用いてリアルタイムに計算でき、専用ハードウェア化しやすいと言う利点がある。
【0066】
実施例では、カルマンフィルタの構成は以下の通りとした。
【0067】
離散時間系のプロセスは、数1のように表すことができる。
【0068】
【数1】
【0069】
ここで、x(k)は時間kにおける状態ベクトル、u(k)は入力、G(k)は既知の行列、v(k)は平均値0、共分散行列Q(k)のガウシアンノイズである。
【0070】
また、計測過程は、数2のように表すことができ、それに基づいてカルマンフィルタの計算ステップは数3から数8のように示すことができる。ここで、w(k)は平均値0、共分散行列R(k)のガウシアンノイズである。初期値x(0)は、平均値x、共分散行列Pのガウシアンノイズとする。
【0071】
【数2】
【0072】
【数3】
【0073】
【数4】
【0074】
【数5】
【0075】
【数6】
【0076】
【数7】
【0077】
【数8】
【0078】
実施例では、図31に示すように、状態ベクトルx(k)の要素をそれぞれ、距離(計測原点(起点)からの移動距離)、速度、加速度とし、系を等加速度直線運動とする。従って、計測は障害物発見時からの距離とする。
【0079】
ところで、カルマンフィルタの計算には初期値を与えなければならない。その初期値は、実際の値に近いほど、より真値に近づく。図32は、真値50km/hに対して初期値に自車の速度100km/hを与えた場合である。収束までおよそ1.7秒を要している。実施例では先に述べた如く、およその速度を時系列データのネットワークから求め、カルマンフィルタの初期値として与えるようにした。その結果、図33に示す如く、収束性を向上させることができた。
【0080】
レーダが障害物を検知した時刻から、初めて速度推定値を出力するまでの時間を、どれぐらいに設定すべきかと言う問題がある。これは、実際のテストから約0.6秒(レーダのサンプリング周期で6回)とした。レーダの揺らぎによってこの時間は変動する。即ち、レーダが十分に精度が良ければ少ない時間で良く、逆に精度が悪い場合は、時間を長くとる必要がある。また、ネットワークによる推定錯誤を考慮すると、0.6秒間のネットワークによる速度の誤差は障害物の加速度に応じて1.8km/h(0.1G)から9.0km/h(0.5G)であり、カルマンフィルタへの初期値としては問題ない。
【0081】
実施例では、カルマンフィルタの系のモデルに、等加速度直線運動の物理モデルを用いている。障害物を最初に発見してから(計測原点から)の移動距離に基づいて、レーダユニットの出力時間ごとにカルマンフィルタの計算を行っている。ところが、実際の車は、カーブなどを通過するため、直線運動はしない(図34)。これは、車が長時間にわたってカーブを通過したり、トラックコースのようなスタート地点に戻るような場合(一般道路ではそのようなことはほとんどないが)、カルマンフィルタの計算が時間が経つにつれて、誤差が増えることになる。その誤差を増やさないために、計算スパンを設定し、ある時間ある個数のデータを処理したら、計測原点を最新検知位置付近に更新するようにした。尚、計算スパンは、誤差分散が収束する時間以上を設定すれば良いことが実験の結果判明した。その結果から、実施例では2秒とした。
【0082】
図35に原点更新しない場合とした場合の、カーブ通過中の前走車(90km/hの定速走行)の推定結果を示す。原点更新しない場合は時間の経過と共に、推定速度が低下している。原点更新した場合は、推定速度の低下が抑えられている。原点を更新せずにこのような問題に対応するには、非線形なモデルを用いたカルマンフィルタを用いれば良い。しかし、非線形なモデルを使用すると複数の障害物についての処理時間が長くなり、リアルタイムに予測するには適当ではない。原点を更新すれば、線形モデルを使用しても誤差の蓄積を防ぐことができる。
【0083】
以上を前提として、障害物位置予測について、図26フロー・チャートを参照して説明すると、S300で上記したカルマンフィルタを用いて図示の如く予測値を計算する。ここで、xハット、yハットが、図6ブロック図のPosハットnextに相当するが、それについては最後に述べる。
【0084】
図25フロー・チャートに戻ると、続いてS214に進み、クラスタごとの接続ノード数テーブル値Stx〔i〕を0にリセットし、S216に進んで検知クラスタカウンタ値jをインクリメントし、S218に進んでフラグflgnの値が0であるか否か判断する。肯定されるとき、即ち、データが500ms分溜まっていないと判断されるときはS220に進み、最短距離に基づいてノードリンクの判定処理を行う。
【0085】
これは具体的には、セグメント終端と障害物との距離を求めて判定結果mを得る作業である。図36の上部にその作業を示すが、ノードリンクの判定については図示の如く約束する。即ち、セグメント終端ノードと検知データとが同一位置にあるときを「停止」、50cm以内のときを「単独」、50cmを超えてもレーダ検出誤差Xer内にあるときを「接続」、それ以外を「非接続」とする。
【0086】
またS218で否定されるときは、ノード数が500msを超えていることからS222に進み、障害物予測位置に基づいてセグメント終端との距離を同様に求めて行う。これは、予測位置と検知データの距離によって判定結果mを得る作業である。図36の下部にその作業を示す。
【0087】
ここで、距離d=0ならば「停止」、距離d≦50cmならば「単独」とする。また距離dを予測位置との距離edと比較するとき、
とする。
【0088】
次いでS224に進んで求めた判定結果mが" 非接続" か否か判断する。これは図36に示すように、セグメント終端と検知データとが接続されるか否かを判断することである。
【0089】
否定されるときはS226に進んで各テーブル値のクラスタ数Ctx〔j〕とセグメント数Stx〔i〕とをインクリメントし、S228でクラスタjが最大クラスタjmaxに達したと判断され、S230でセグメントiが最大セグメントimaxに達したと判断されるまで、上記の処理を繰り返す。
【0090】
次いで図37のS232に進んでクラスタ数カウンタ値jをインクリメントし、S234に進んでクラスタテーブル値Ctx〔j〕が1を超えるか、即ち、クラスタjが複数のセグメントに接近するか否か判断する。肯定されるときはS236に進んでセグメント数カウンタ値iをインクリメントしてS238に進み、そこで接続判定用テーブル値Mtx〔i〕〔j〕が接続、単独または停止か否か判断し、肯定、即ち、非接続状態にあればS240,S242に進んでクラスタ−セグメント間の距離が最小となる組み合わせを探す。
【0091】
即ち、あるクラスタjが複数のセグメントと接続可能な場合は、最短距離のものと接続すると見做す。尚、S234で否定されるときはS244に進み、そこでノード接続テーブル値Ctx〔j〕の値が0か否か判断し、肯定されるときはS246に進んでネットワークを新たに作成する。上記をS248で最大クラスタjmaxに達したと判断されるまで繰り返す。次いでS250からS260の処理を行い、セグメントに接続しないときはセグメント終端から最も近いクラスタを選択し、そのセグメントに接続させる。
【0092】
次いで図38のS262からS268を進み、それまでに選択されなかったクラスタについて新たにネットワークを発生させる。即ち、図39に示すような処理を行う。これは、先に図21で示した「分岐継承」に相当する処理であり、セグメントの過去情報をコピーした上で新たなセグメントとして登録する。次いでS270からS280を経てS281に進み、接続ないし単独と判断されるときはS282に進んでネットワークリンク処理を行う。
【0093】
図40はその作業を示すサブルーチン・フロー・チャートである。以下説明すると、S400でセグメント終端x座標と自車位置のx座標との差と、検知クラスタx座標と自車位置x座標との差とを求めて比較する。これは、検知クラスタが自車位置に対して対向しているか否か判断するためであり、肯定されるときは自車に接近していると判断してS402に進んでmove(セグメント終端と検知クラスタとの距離を表す)の符号を逆転する。これは、図示しないルーチンで移動距離の変動を見るためである。
【0094】
次いでS404に進んでセグメント終端と検知クラスタとの関係が単独であるか否か判断し、肯定されるとき、即ち、検知クラスタがほとんど動いていないとみられるときはS406に進んでセグメント〔SNO〕マージ回数カウンタ値をインクリメントし、S408に進んでカウンタ値が1を超えたか否か判断し、肯定されるときはS410に進んで移動量総和よりセグメント終端位置を減じると共に、移動量2乗和よりセグメント終端位置の2乗値を減じる。これは、図41に示すように、セグメント終端ノードを検知クラスタ側に付け替えるために、それまでのデータを更新する作業を意味する。
【0095】
次いでS412に進んで同様にノード数カウンタ値が2を超えたか否か判断し、肯定されたときは曲率(図41に示す)を計算し、S416に進んで曲率総和よりセグメント終端曲率を減じると共に、曲率2乗和よりノード終端曲率2乗値を減じる。これは、S410で説明した図41に示す付け替え作業である。
【0096】
次いでS404で否定、即ち、接続または停止とされた場合に備え、S418に進んでセグメントノード数カウンタ値をインクリメントし、S420,S422に進んで同様の処理を行う。次いで図42フロー・チャートのS424に進んで障害物情報ノードメモリを確保する。次いでS426に進んでその確保ができなかったか否か判断し、肯定されるときはS428,S430,S432を進んで移動体らしさが最低のセグメントを削除してネットワークを圧縮する。また、S426で否定されるときはS434に進んで障害物クラスタ情報をノードに移送する。これは先に図17に示した情報である。
【0097】
次いでS436に進み、ノード数が所定保持時間分(例えば2秒分)あるか否か判断し、肯定されるときはS438に進んでセグメント先端の移動量と曲率を各総和より減じると共に、各2乗和も同様に2乗値を減じ、S440に進んでセグメント〔SNO〕先端へのポインタ値を、セグメント先端の次のノードのポインタ値に書き替える。
【0098】
次いでS444に進んで移動体らしさを計算し、S446に進んでセグメントノード長に基づく障害物平均速度計算を行い、S448に進んで障害物移動方位計算を行う。これは、先に述べたネットワークを利用しての最新、最古のノード位置などから速度、方向(方位)を計算することであり、うち速度値、より正確には平均速度値がカルマンフィルタに初期値として与えられる。最後にS450に進んでセグメント〔SNO〕非接続回数カウンタ値を0にリセットする。
【0099】
図38フロー・チャートにおいては、次いでS283に進んで障害物の位置、速度、加速度を推定する。尚、S281で否定されたときはS284に進み、そこで停止と判断されたときはS285に進み、同一であることからセグメント併合処理を行い、S286に進んで同様に障害物位置、速度、加速度推定を行う。S287,S288で検知データクラスタ数、セグメント数がそれぞれ最大値に達したと判断されるまで、上記を繰り返す。
【0100】
図43ないし44は、障害物位置、速度、加速度推定作業を示すサブルーチン・フロー・チャートである。
【0101】
以下説明すると、S500で原点カウンタrcntをインクリメントし、S502に進んでカウンタ値が所定値(例えば20(2000ms分))を超えるか否か判断し、肯定されたときS504に進んでカウンタ値rcntとフラグprcを0にリセットする。即ち、2秒経過するごとに、障害物移動距離の計測原点を移動(更新)する。
【0102】
続いてS506に進んでフラグprcが0であるか否か判断する。この場合は当然肯定されてS508に進み、フラグprcに1をセットし、S510に進んでセグメントノード数が1であるか否か判断する。初めてこの処理を行うときは肯定されてS512に進み、図示の如くセグメント終端ノードの障害物位置のx,y座標を用いて原点(Ox,Oy)の移動(更新)を行う。またS510で否定されたときはS514に進み、セグメント終端より1つ前のノードの障害物位置情報を移動距離計測原点にする。
【0103】
続いて、S516に進み、前記したカルマンフィルタの値を設定し、S518に進んで前記距離dを移動距離x〔0〕の初期値とする。続いてS520に進んで原点カウンタ値rcntが1か否か、即ち、原点更新後最初のカルマンフィルタ計算であるか否か判断し、肯定されるときはS522に進んでセグメント平均速度を速度x〔1〕の初期値とする。セグメント平均速度とは、図42フロー・チャートのS446で求めた平均速度を意味する。これは、前記した説明から明らかな如く、所定期間における平均速度である。
【0104】
即ち、実施例に係るカルマンフィルタにおいては、そのモデルに等加速度直線運動モデルを使用し、レーダユニット12を通じて障害物を最初に発見した計測原点からの移動距離を求め、ネットワークから求めた速度を初期値として与えて計測時間ごと(100msごと)にカルマンフィルタの計算を行って100ms後、即ち、次のレーダ検知時刻での障害物の移動距離、速度、加速度を推定している。
【0105】
即ち、現在時刻の障害物の位置を推定し、初期値を適切に与えることにより、カルマンフィルタの収束性を向上させ、障害物情報をリアルタイムに得て図3の構成で他のサブシステムに提供することができる。更に、計測原点を2秒ごとに更新して誤差の蓄積を回避している。
【0106】
続いてS524に進んでQを零クリアし、S526,S528に進んで共分散行列Q,Rに図示の如き値をセットし、図44フロー・チャートのS530に進んで運動方程式Fの転置行列を求めて値Ftとし、S532に進んでカルマンフィルタにより、障害物の距離(位置)、速度(初速度)、加速度の推定を行う。ここで、Xが推定値である。
【0107】
尚、S506でフラグprcが0ではない、即ち、原点更新が行われないと判断されるときはS534に進んで距離dを図示の如く求める。これは、速度と加速度の初期値として前回推定した値をそのまま用いるので、改めて初期値を設定する必要がないからである。
【0108】
次いで図38から図45フロー・チャートに移り、そのS289からS291に進み、セグメント削除判定処理を行う。これは、Stx〔i〕=0、即ち、接続可能な障害物クラスタが1つもなかったセグメントiに関して前記した移動体らしさを所定値と比較し、所定値未満のセグメントを削除する処理である。次いでS292からS294を進んでノード終端位置に基づいてセグメント併合処理を行う。これは、乗用車の平面と同一サイズ内に複数のセグメントが終端を持つとき、それらを併合して1つのセグメントにする処理である。次いでS295を経てS296に進んでネットワーク圧縮処理を行って不要なメモリ領域を開放する。
【0109】
図5フロー・チャートに戻ると、次いでS24に進み、障害物情報出力処理を行う。図46はその作業を示すサブルーチン・フロー・チャートである。これは、障害物移動予測テーブルの作成および他システムへの出力作業である。
【0110】
以下説明すると、S600において自車位置を入力として道路(走行路)幅Wを算出する。走行路区分線は自車の前後200m分を自車が10m進むごとにリングバッファに取込み、保持しておくが、それから自車の左側(ないときは右側)の走行路区分線とそれに隣接する区分線を読み出し、道路幅Wを算出する。
【0111】
これについて説明すると、追従走行や障害物回避において、障害物がレーダに検知されていても、それが道路(走行路)に対してどの位置にあるのか分からなければ、自己の適切な制御は望めない。実施例において、画像処理によって走行路区分線が得られ、画像データ評価部によって不良データの削除、不足データの補填、および道路モデルの識別子が付与される。そのデータを受け、道路のモデルを基準に障害物がどの位置にあるかを統一的に表す。実際は、自己位置の後ろ200mと最新の区分線の地図とモデルのデータを受け、区分線から道路幅を計算する。区分線の最遠の地点よりある程度遠くに障害物があるときは、区分線を2次式で近似する。区分線から障害物までの距離を求め、道路幅と車線位置から障害物の位置を計算する。
【0112】
この表現により、追従や回避の判断に必要な自車との位置関係が、単純な演算で可能である。即ち、位置が負のときは1を減算し、その後で少数点以下を切捨て、相手位置−自車位置により自車に対して何車線目にいるかが分かる。図47にそれを示す。更に、走行路区分線に対する障害物の位置を計算する。これにより、自車に対する位置を簡単な計算で表すことができ、行動の計画や経路計画に利用することができる。ターゲットの位置を区分線に対する位置として表現する。
【0113】
続いてS602に進んでセグメント数カウンタ値iをインクリメントし、S604に進み、セグメントノード数NNとノードマージ数NMの和が、しきい値Th(例えば5(500ms))を超えるか否か、即ち、500ms分のデータが集積したか否か判断する。肯定されときはS606に進み、障害物予測位置、即ち、その移動方位(セグメント傾き)、推定速度、推定加速度に基づいて、所定時刻(例えば100ms)ごとの位置を計算し、障害物移動予測テーブルに書き込む。図48に障害物移動予測テーブルを示す。
【0114】
続いてS608に進んでセグメントiの速度Vが所定値Vth(例えば5km/h)未満か否か、即ち、障害物が移動しているか否か判断し、否定、即ち、移動していると判断されるときはS610に進み、図49に示す如く、障害物移動ベクトルがx軸となるように、走行路区分線GNOデータを回転する。これにより、y座標を参照するだけで対道路(走行路)位置を簡便に求めることができる。
【0115】
続いてS612に進み、障害物位置と予測位置の道路(走行路)に対する位置を求め、障害物移動予測テーブルに書き込む。図50に対道路位置計算を、図51に、障害物位置に対応する区分線データがないときの対道路位置計算を示す。次いでS614に進み、セグメント数カウンタ値iが最終値に達したことが確認されるまで、上記の処理を繰り返し、確認されるとS616に進み、予測テーブルを外部メモリ(前記した通信用メモリ34)に書き込む。
【0116】
尚、S608で障害物が停止と見做されたときはS618に進んで現在障害物位置に最も近い走行路区分線点列を求め、S620に進んで図示の如く距離dと対走行路位置を求める。
【0117】
図5フロー・チャートに戻ると、S16で検知データがないと判断されるときはS26に進んでネットワークセグメント数カウンタjをインクリメントし、S28に進んで障害物位置予測を行い(先に図43,44で説明)、S30に進んで障害物情報更新を行う。
【0118】
図52はその作業を示すサブルーチン・フロー・チャートである。以下説明すると、S700でセグメントの非接続回数が所定値(例えば2秒分)を超えたか否か判断し、肯定されるときは、その間見失っていたこととなってデータとして意味をなさないので、S702に進んでセグメントを削除する。これは該当するセグメント情報をクリアしてメモリ領域を空ける作業を意味する。即ち、作業メモリ領域を節約するために、例えばセグメント1,2,3があった後、セグメント2が消滅し、その後に新たなセグメントが発生したとき、セグメント4とせずに、セグメント2とできるようにしておく作業である。
【0119】
S700で否定されるときはS704に進み、先に図40,42で説明したネットワークリンク処理を行って移動体らしさを計算し、判断する。続いてS706に進み、障害物の位置、速度、加速度の推定(先に図43,44で説明)を行い、S708に進んで障害物情報出力処理(先に図46で説明)を行う。
【0120】
図5フロー・チャートにおいては次いでS32に進んでネットワークセグメント数カウンタjが最大値に達したことを確認してS34に進み、ネットワーク圧縮処理を行う。これは先にも触れた通り、不要セグメントを削除してメモリ領域を活用する作業である。
【0121】
上記を図6ブロック図を参照して再説すると、移動状態量予測手段(カルマンフィルタ)は、次の検知時刻での障害物の予測位置Posハットnextを求める。また、道路領域境界検出手段(図3の画像評価CPU38)とレーダユニットとからの出力に基づき、検知位置データ処理手段は、図10フロー・チャートに関して述べたクラスタリングを行って走行路内にある位置するものを障害物と検知すると共に、よって得たクラスタごとの障害物位置をPos(絶対座標上の位置、即ち、原点を基準とした位置)として求める。
【0122】
また、障害物時系列情報更新手段は、検出データなどの情報を経時的に更新する。移動状態量予測手段(カルマンフィルタ)は、それに基づいて計測原点を更新すると共に、計測原点からの移動距離x,時系列情報から求めたおよその障害物速度vないしその加速度aに基づいて、次の検知時刻での予測位置Posハットnextを求める。障害物時系列情報記憶手段(ネットワーク型データ構造)では、それら予測値などから障害物の現在位置Pos,予測位置Posハットnext,方位Dir,速度vなどの情報を障害物移動予測テーブル作成手段に送り、そこでテーブル化されて画像処理CPU36などの利用に供される。
【0123】
この実施例は上記の如く構成したので、自車の走行にとって真に障害となる前走車などの障害物や道路外の静止障害物などを精度良く検出することができる。また前走車などの情報をリアルタイムに検出し、その運動パラメータを予測するので、衝突の警告ないしは回避動作などをより的確に行うことができると共に、必要に応じて他のサブシステムにその情報を提供することができる。更に、カーブ路(曲線路)などを通行するときも、道路内外の障害物を的確に判別して真に自車の走行の妨げとなるもののみを検出することができる。
【0124】
更に、演算量の少ない直線運動モデルを使用しながら、所定個数のデータを処理したら最新検知位置付近に計測原点を更新するようにしたので、曲線路を含む走行環境においても移動距離の誤差が経時的に蓄積することがなく、よって予測しようとする位置、速度、加速度などの運動パラメータの誤差として表れることがない。
【0125】
尚、実施例は上記の如く構成したが、画像処理とレーダの検知範囲とは異なるために、障害物の位置によって判定条件を変え、レーダの検知データから求めた移動体らしさに反映させても良い。即ち、検知範囲と検知された位置との関係で、移動体らしさの評価を変えても良い。これにより、移動する障害物と停止している障害物の区別を道路(走行路)の形状を考慮した形で扱うことができる。
【0126】
また、レーダと画像処理の検知範囲が異なる場合、特にレーダの検知範囲が画像処理より遠い場合、画像処理の範囲外に検知された障害物は、道路に対する位置が分からないことになる。高速道路のような道路形状が長い距離にわたって余り変化しない場合は、過去の(通過してきた)道路構造が変わらない、例えば2車線から3車線への変化がない、ならば、数100m分の自車より後方と前方の最新の走行路区分線データから、最小2乗法により画像処理の範囲外の走行路区分線を補足して障害物の道路(走行路)に対する位置を計算しても良い。
【0127】
更に、毎回の画像処理による道路(走行路)の形状も同様なデータが入力されるので、前回結果と道路構造が変わず、自車の移動量も少ないならば、最小2乗法による画像処理の範囲外の走行路区分線の補足をキャンセルし、前回パラメータを用いて処理を高速化しても良い。
【0128】
更に、カルマンフィルタへの初期値として与える速度を単純平均値としたが、加重平均値などでも良い。
【0129】
また、適応的に動作する例としてカルマンフィルタを使用したが、それに限られるものではない。
【0130】
また、上記において、視覚センサを単眼視としたが、両眼視による距離測定を用いて前方レーダなどを省略しても良い。またレーダユニット12を車両前方のみ設けたが、後方にも設けても良い。また、上記において、「走行路」「道路」「車線」などの名称を混用したが、同一のものを意味することは言うまでもない。
【0131】
【発明の効果】
請求項1項においては、自車の走行にとって真に障害となる走行路内の障害物のみを精度良く検出することができる。それによって、警告、回避など必要な動作を的確に行うことができる。また、前記した物体検出手段が例えばレーダであって送波ビームの照射広がり角、障害物までの距離によって同一障害物に対して複数の障害物があるかのように検出するときも、検出点データ群が所定範囲に対応した大きさの1つの障害物であると検知することができる。
【0133】
請求項2項の装置にあっては、前記所定範囲が、車両の投影面積に基づいて設定される値である如く構成したので、請求項1項で述べた効果に加えて、複数の検出点データ群が同一の車両であると検知することができる。
【図面の簡単な説明】
【図1】この発明に係る車両の障害物検出装置を備えた車両を全体的に示す説明透視図である。
【図2】図1のレーダの詳細を示す説明図である。
【図3】図1に示すセンサおよびその処理などを詳細に示すブロック図である。
【図4】図3ブロック図の構成をより機能的に示す図2と同様の説明図である。
【図5】この発明に係る車両の障害物検出装置の動作を示すメインフロー・チャートである。
【図6】図5フロー・チャートと同様にこの発明に係る車両の障害物検出装置の動作を説明する機能ブロック図である。
【図7】図5フロー・チャートの(障害物の)クラスタ化を説明する説明図である。
【図8】図1の車両がカーブ路を通過するときのレーダビームと障害物との関係を説明する説明図である。
【図9】実施例に係る走行路区分線によるクラスタの切りわけを説明する説明図である。
【図10】図5フロー・チャートの検知データのクラスタ化作業を示すサブルーチン・フロー・チャートである。
【図11】図10フロー・チャートで予定する走行環境の説明図である。
【図12】図10フロー・チャートの作業を説明する説明図である。
【図13】同様に図10フロー・チャートの作業を説明する説明図である。
【図14】同様に図10フロー・チャートの作業を説明する説明図である。
【図15】同様に図10フロー・チャートの作業を説明する説明図である。
【図16】この実施例で使用する移動情報のネットワークセグメントを示す説明図である。
【図17】図16でのノードの情報を示す説明図である。
【図18】図16でのネットワークセグメントの情報を示す説明図である。
【図19】この実施例で用いた推定速度と推定方位を示すシミュレーションデータ図である。
【図20】図16のネットワークセグメントの単純更新を説明する説明図である。
【図21】同様に図16のネットワークセグメントの複数障害物が存在するときの更新を説明する説明図である。
【図22】この実施例で用いる移動体らしさなる概念を表現する要素の説明図である。
【図23】その移動体らしさの算出手法を示す説明図である。
【図24】その移動体らしさの推移、前走車、停止障害物を示すシミュレーションデータ図である。
【図25】図5フロー・チャートのネットワーク更新処理作業を示すサブルーチン・フロー・チャートである。
【図26】図25フロー・チャートの障害物位置予測作業を示すサブルーチン・フロー・チャート部分である。
【図27】この実施例での移動予測による位置推定を説明する説明図である。
【図28】図27の移動予測手法による、実際の移動する車両における推定位置と入力位置とを示すシミュレーションデータ図である。
【図29】同様に図27の移動予測手法による、停止障害物における推定位置と入力位置とを示すシミュレーションデータ図である。
【図30】前走車が定速から減速して停止する際の実際の前走車の速度、この実施例における推定速度、1秒間の予測位置における位置を示すシミュレーションデータ図である。
【図31】この実施例におけるカルマンフィルタの移動体モデルを示す説明図である。
【図32】この実施例におけるカルマンフィルタの初期値として、真値50km/hに対して初期値100km/hを与えた場合の収束状況を示すシミュレーションデータ図である。
【図33】同様に、この実施例におけるカルマンフィルタの初期値として、セグメントの最新、最古のノードから求めた値を与えた場合の収束状況を示すシミュレーションデータ図である。
【図34】図1に示す車両がカーブ路を走行するときの計測距離を説明する説明図である。
【図35】カルマンフィルタの計算での原点更新をした場合としない場合の推定速度の優劣を示すシミュレーションデータ図である。
【図36】この実施例での「停止」「単独」「接続」「非接続」の概念を説明する説明図
【図37】図25フロー・チャートに続くフロー・チャート部分である。
【図38】図37フロー・チャートに続くフロー・チャート部分である。
【図39】図38フロー・チャートのネットワーク発生処理を示す説明図である。
【図40】図38フロー・チャートのネットワークリンク処理作業を示すサブルーチン・フロー・チャートの前半部である。
【図41】図40の作業を説明する説明図である。
【図42】図40フロー・チャートの後半部である。
【図43】図38フロー・チャートの障害物位置、速度、加速度推定作業を示すサブルーチン・フロー・チャートの前半部である。
【図44】図43フロー・チャートの後半部である。
【図45】図38フロー・チャートに続く最終フロー・チャート部分である。
【図46】図5フロー・チャートの障害物情報出力処理作業を示すサブルーチン・フロー・チャートである。
【図47】図46フロー・チャートの道路に対する障害物の位置表現を示す説明図である。
【図48】図46フロー・チャートの障害物移動予測テーブルを示す説明図である。
【図49】図46フロー・チャートの走行路区分線データの回転作業を説明する説明図である。
【図50】図46フロー・チャートの対道路位置計算を示す説明図である。
【図51】図46フロー・チャートの障害物移動予測テーブルへの書込み処理作業を示す説明図である。
【図52】図5フロー・チャートの障害物情報更新作業を示すサブルーチン・フロー・チャートである。
【符号の説明】
10 CCDカメラ(モノクロTVカメラ)
12 レーダユニット
14 ヨーレートセンサ
16 車速センサ
18 舵角センサ
30 画像処理ハードウェア
36 画像処理CPU
38 画像評価CPU
40 レーダ処理回路
42 レーダ評価CPU
44 軌跡推定CPU
46 軌跡追従制御CPU
50 行動計画意思決定CPU
52 舵角制御CPU
60 車速制御(加速度制御)CPU
Claims (2)
- a.カーブ路を含む車両の走行路の境界位置を検出する走行路境界位置検出手段、
b.送信した波動の反射波を通じて少なくとも物体の位置を検出し、検出点データとして出力する物体検出手段、
c.前記検出点データの示す物体位置を前記走行路の境界位置と比較し、前記物体が走行路内に位置するか否かを判定する判定手段、
d.前記検出点データが所定範囲内にあるか否かを判断し、前記所定範囲内にあると判断されるとき、前記検出点データを1つのクラスタにクラスタリングすると共に、前記判定手段の判定結果に基づき、前記検出点データが走行路内に位置する物体の検出点データと走行路外に位置する物体の検出点データとからなると判定されるとき、前記1つのクラスタをさらに別のクラスタとするクラスタリング手段、
および
e.前記走行路内に位置する物体の検出点データからなる前記クラスタを走行の障害となる障害物として検知する検知手段、からなることを特徴とする車両の障害物検出装置。 - 前記所定範囲が、車両の投影面積に基づいて設定される値であることを特徴とする請求項1項記載の車両の障害物検出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28121894A JP3638323B2 (ja) | 1994-10-20 | 1994-10-20 | 車両の障害物検出装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28121894A JP3638323B2 (ja) | 1994-10-20 | 1994-10-20 | 車両の障害物検出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08124080A JPH08124080A (ja) | 1996-05-17 |
JP3638323B2 true JP3638323B2 (ja) | 2005-04-13 |
Family
ID=17636018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28121894A Expired - Fee Related JP3638323B2 (ja) | 1994-10-20 | 1994-10-20 | 車両の障害物検出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3638323B2 (ja) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5989506A (ja) * | 1982-11-15 | 1984-05-23 | 三菱電機株式会社 | 開閉装置 |
JPH10129409A (ja) * | 1996-10-25 | 1998-05-19 | Kazuyoshi Ahara | エアーバックを利用した自動車の衝突緩和装置 |
JP3424908B2 (ja) * | 1998-07-08 | 2003-07-07 | 三菱ふそうトラック・バス株式会社 | 車両の後側方監視方法及び車両の後側方監視装置 |
JP3515926B2 (ja) * | 1999-06-23 | 2004-04-05 | 本田技研工業株式会社 | 車両の周辺監視装置 |
JP4308381B2 (ja) * | 1999-09-29 | 2009-08-05 | 富士通テン株式会社 | 周辺監視センサ |
JP3608991B2 (ja) * | 1999-10-22 | 2005-01-12 | 富士通テン株式会社 | 車間距離センサ |
JP2005227947A (ja) * | 2004-02-12 | 2005-08-25 | Alpine Electronics Inc | ナビゲーション装置及び障害物表示方法 |
JP4570907B2 (ja) * | 2004-05-26 | 2010-10-27 | アルパイン株式会社 | 対象物認識装置、ナビゲーション装置及び対象物認識方法 |
JP5315585B2 (ja) * | 2005-09-05 | 2013-10-16 | 日本電気株式会社 | 航跡生成システム、その誤差共分散行列初期値設定装置、航跡生成方法およびその誤差共分散行列初期値設定方法 |
JP4850531B2 (ja) * | 2006-02-13 | 2012-01-11 | アルパイン株式会社 | 車載レーダ装置 |
JP4850898B2 (ja) * | 2006-02-16 | 2012-01-11 | 三菱電機株式会社 | レーダ装置 |
JP4655961B2 (ja) * | 2006-02-27 | 2011-03-23 | トヨタ自動車株式会社 | 構造物形状推定装置、障害物検出置および構造物形状推定方法 |
JP5016889B2 (ja) * | 2006-10-11 | 2012-09-05 | 日立オートモティブシステムズ株式会社 | 予防安全装置 |
EP2704123B1 (en) * | 2011-04-28 | 2016-09-14 | Honda Motor Co., Ltd. | Object detection device for vehicle |
JP2014137288A (ja) * | 2013-01-17 | 2014-07-28 | Mitsubishi Electric Corp | 車両周辺監視装置および車両周辺監視方法 |
JP6266887B2 (ja) * | 2013-03-04 | 2018-01-24 | 株式会社デンソー | 推定装置 |
JP6194520B1 (ja) * | 2016-06-24 | 2017-09-13 | 三菱電機株式会社 | 物体認識装置、物体認識方法および自動運転システム |
DE102016116963B4 (de) * | 2016-09-09 | 2024-11-07 | Knorr-Bremse Systeme für Nutzfahrzeuge GmbH | Vorrichtung zum Warnen eines Fahrzeugführers eines Fahrzeugs vor einem Objekt sowie Fahrzeug mit einer solchen Vorrichtung |
CN111398985B (zh) * | 2018-12-29 | 2022-02-15 | 北京北科天绘科技有限公司 | 一种激光雷达点云数据超分辨处理方法、系统及存储介质 |
CN110458055B (zh) * | 2019-07-29 | 2021-10-15 | 江苏必得科技股份有限公司 | 一种障碍物检测方法及系统 |
CN114291082A (zh) * | 2019-10-09 | 2022-04-08 | 北京百度网讯科技有限公司 | 用于控制车辆的方法和装置 |
CN111597940B (zh) * | 2020-05-07 | 2023-10-03 | 北京百度网讯科技有限公司 | 渲染模型的评估方法、装置、电子设备及可读存储介质 |
CN112863242B (zh) * | 2021-02-08 | 2022-07-01 | 广州小鹏自动驾驶科技有限公司 | 一种车位检测的方法和装置 |
CN113219447B (zh) * | 2021-04-09 | 2024-07-16 | 国电南瑞科技股份有限公司 | 一种基于毫米波阵列的输电线距离稳定测量方法 |
CN113296088A (zh) * | 2021-05-11 | 2021-08-24 | 雄狮汽车科技(南京)有限公司 | 车辆的动态目标跟踪方法、装置、及车辆 |
CN113548007A (zh) * | 2021-07-08 | 2021-10-26 | 的卢技术有限公司 | 机动车保护行人的方法 |
CN113640811B (zh) * | 2021-08-13 | 2024-06-14 | 浙江吉利控股集团有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN114295394A (zh) * | 2022-01-25 | 2022-04-08 | 广西汽车集团有限公司 | 一种车辆制动系统的测试方法和测试系统 |
CN116242410B (zh) * | 2022-09-05 | 2023-12-19 | 浙江智马达智能科技有限公司 | 一种标定方法、终端及计算机存储介质 |
CN116563817B (zh) * | 2023-04-14 | 2024-02-20 | 禾多科技(北京)有限公司 | 障碍物信息生成方法、装置、电子设备和计算机可读介质 |
CN118379881B (zh) * | 2024-06-21 | 2024-09-06 | 华睿交通科技股份有限公司 | 一种基于车路协同的公路交通安全预警系统 |
-
1994
- 1994-10-20 JP JP28121894A patent/JP3638323B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08124080A (ja) | 1996-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3638323B2 (ja) | 車両の障害物検出装置 | |
JP3400875B2 (ja) | 移動体の検出装置 | |
JP7140922B2 (ja) | マルチセンサデータ融合方法、及び装置 | |
US11738741B2 (en) | Navigation based on detected occlusion overlapping a road entrance | |
Kunz et al. | Autonomous driving at Ulm University: A modular, robust, and sensor-independent fusion approach | |
US10599150B2 (en) | Autonomous vehicle: object-level fusion | |
US11698638B2 (en) | System and method for predictive path planning in autonomous vehicles | |
Cosgun et al. | Towards full automated drive in urban environments: A demonstration in gomentum station, california | |
US9340207B2 (en) | Lateral maneuver planner for automated driving system | |
EP3048023B1 (en) | Method for assisting a driver in driving an ego vehicle and corresponding driver assistance system | |
WO2022072414A1 (en) | Methods and systems for predicting actions of an object by an autonomous vehicle to determine feasible paths through a conflicted area | |
CN113386752B (zh) | 用于确定辅助驾驶系统中最佳巡航车道的方法和装置 | |
JP2018206036A (ja) | 車両制御システム及び方法、並びに走行支援サーバ | |
CN113840764B (zh) | 车辆控制装置 | |
JP2022523769A (ja) | 割り込んでくる又は抜け出て行く車両を認識する制御ユニット及び方法 | |
CN104321665A (zh) | 基于多表面模型的跟踪 | |
WO2018063241A1 (en) | Autonomous vehicle: object-level fusion | |
CN112519753A (zh) | 车辆车道映射 | |
CN112693454B (zh) | 自适应轨迹生成方法及系统 | |
Lytrivis et al. | Sensor data fusion in automotive applications | |
Fletcher et al. | Computer vision for vehicle monitoring and control | |
Goswami | Trajectory generation for lane-change maneuver of autonomous vehicles | |
Szlachetka et al. | Stationary environment models for advanced driver assistance systems | |
Sama et al. | Learning how to drive in blind intersections from human data | |
Mei et al. | Detection and motion planning for roadside parked vehicles at long distance |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040401 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040622 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040817 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040928 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041115 |
|
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: 20041221 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050111 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080121 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090121 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100121 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100121 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110121 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |