以下、添付図面を参照しながら本発明を実施するための形態を詳細に説明する。図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
図1は、本発明の一形態である車両形状推定装置1の機能ブロック図である。車両形状推定装置1は、自車両100に搭載されて、当該自車両100の周囲に存在する他車両の形状を推定する。ここでいう他車両の形状とは、他車両の全幅と全長とをいう。従って、車両形状の推定とは、他車両の幅と長さとを推定することをいう。車両は、二輪車、乗用車等の普通車、及びトラック等の大型車を含む。自車両に対する他車両の位置は特に制限されるものではない。
車両形状推定装置1は、前処理部2と、推定処理部3とを有する。車両形状推定装置1は、ECU(Electric Control Unit)上でプログラムを実行することにより実現される。ECUは、いわゆるコンピュータであり、中央演算処理装置(CPU)、プログラムや各種データが記録されるROM、データが一時的に記録されるRAM、入出力装置などが一つのユニットとして構成される。
前処理部2は、自車両100に搭載されたレーダ4の出力を利用して他車両の形状推定に利用される計測車両幅と計測車両長さとを取得すると共に、これらを推定処理部3に出力する。計測車両幅とは、レーダ4により直接的に計測された他車両の幅である。計測車両長さとは、レーダ4により直接的に計測された他車両の長さである。
前処理部2は、レーダ4と推定処理部3とに接続されている。レーダ4は、他車両に向けて送信波を照射すると共に他車両によって送信波が反射されて生じた反射波を受信することにより、他車両に関するデータを取得する。自車両100の前端に設けられたレーダ4は、送信波を車両前方に送信し、他車両等の物体で反射した反射波を受信することにより、送信波が反射された位置を計測点として複数取得すると共に、複数の計測点を含む計測点群を前処理部2に出力する。このようなレーダ4として、例えばミリ波レーダやLIDAR[Laser Imaging Detection and Ranging]が挙げられる。
前処理部2は、レーダ4の計測点群に基づいて、他車両の位置や姿勢に関する情報を取得する。具体的には、前処理部2は、他車両における最近傍角の位置座標と、他車両の姿勢とを取得する。ここで、他車両の最近傍角とは、他車両を平面視したときの形状を矩形枠に単純化し、当該矩形枠の四隅の角において自車両100に最も近い角をいう。また、最近傍角の位置座標は、自車両100の位置を原点OR(図4参照)とした座標系における最近傍角の位置を示す。図4に示す座標のX軸方向は自車両100の進行方向(前後方向)、Y軸方向は自車両100の横方向(車幅方向)である。他車両の姿勢とは、上記矩形枠における他車両の長さに対応する辺と、自車両100の位置を原点ORとした座標系のX軸とのなす角度(θ)をいう。
前処理部2は、計測点群と最近傍角の位置座標と姿勢とを利用して、他車両の形状推定に利用される計測車両幅と計測車両長さを算出すると共に、計測車両幅と計測車両長さを推定処理部3に出力する。
推定処理部3は、前処理部2から提供された計測車両幅と計測車両長さとを利用して、他車両の形状推定を行う。すなわち、他車両の幅と長さとの推定値を得る。推定処理部3は、機能的構成要素として、全体形状推定部7と、個別形状推定部8と、車種選択部9と、形状出力部11と、記録部12と、を有する。推定処理部3は、計測車両幅と計測車両長さとを利用して全体形状推定部7が車種を特定するための情報を算出し、その結果に基づいて車種選択部9が他車両の車種を選択する。また、個別形状推定部8は、他車両が個別の車種である場合における形状推定を行う。そして、形状出力部11は、車種選択部9における選択の結果と個別形状推定部8における形状推定の結果とを利用して、推定処理部3から出力すべき結果を取得する。
全体形状推定部7は、他車両の車種を選択するために利用される情報を算出する。他車両の車種を選択するために利用される情報は、推定車両幅と推定車両長さとを含む。推定車両幅とは、車種を限定せずに推定される他車両の幅である。推定車両長さとは、車種を限定せずに推定される他車両の長さである。全体形状推定部7は、前処理部2と車種選択部9と記録部12とに接続される。全体形状推定部7には、前処理部2から計測車両幅と計測車両長さとが入力されると共に、記録部12から推定に用いるヒストグラムが入力される。ヒストグラムについては後述する。また、全体形状推定部7は、計測車両幅を利用して他車両が取り得る車両幅の範囲において推定車両幅を推定すると共に、計測車両長さを利用して他車両が取り得る車両長さの範囲において推定車両長さを推定する。そして、全体形状推定部7は、車種選択部9へ推定車両幅と推定車両長さとを出力する。なお、推定車両幅と推定車両長さを推定する具体的構成については、後述する。
車種選択部9は、他車両の車種を選択する。上述したように、他車両の車種には、二輪車、普通車、及び大型車が含まれる。車種選択部9は、他車両がこれらの車種のうち、いずれに該当するかを選択する。車種選択部9は、全体形状推定部7と形状出力部11とに接続されている。車種選択部9には、全体形状推定部7から推定車両幅と推定車両長さが入力される。車種選択部9は、推定車両幅と推定車両長さとを利用して、他車両が二輪車、普通車及び大型車のいずれであるかを選択する。車種選択部9は、形状出力部11へ車種の選択結果を出力する。なお、車種を選択する具体的な構成については、後述する。
個別形状推定部8は、車両形状推定装置1から出力される結果の候補を算出する。個別形状推定部8は、前処理部2と形状出力部11と記録部12とに接続されている。個別形状推定部8には、前処理部2から計測車両幅と計測車両長さとが入力されると共に、記録部12から推定に用いるヒストグラムが入力される。ヒストグラムについては後述する。個別形状推定部8は、二輪車形状推定部8aと、普通車形状推定部8bと、大型車形状推定部8cと、を有する。
二輪車形状推定部8aは、計測車両幅を利用して二輪車が取り得る二輪車幅の範囲において推定二輪車幅を推定すると共に、計測車両長さを利用して二輪車が取り得る二輪車長さの範囲において推定二輪車長さを推定する。推定二輪車幅は、他車両の車種を二輪車であるとして推定される他車両の幅である。推定二輪車長さは、他車両の車種が二輪車であるとして推定される他車両の長さである。
普通車形状推定部8bは、計測車両幅を利用して普通車が取り得る普通車幅の範囲において推定普通車幅を推定すると共に、計測車両長さを利用して普通車が取り得る普通車長さの範囲において推定普通車長さを推定する。推定普通車幅は、他車両の車種が普通車であるとして推定される他車両の幅である。推定普通車長さは、他車両の車種が普通車であるとして推定される他車両の長さである。
大型車形状推定部8cは、計測車両幅を利用して大型車が取り得る大型車幅の範囲において推定大型車幅を推定すると共に、計測車両長さを利用して大型車が取り得る大型車長さの範囲において推定大型車長さを推定する。推定大型車幅は、他車両の車種が大型車であるとして推定される他車両の幅である。推定大型車長さは、他車両の車種が大型車であるとして推定される他車両の長さである。なお、二輪車形状推定部8a、普通車形状推定部8b、及び大型車形状推定部8cにおける推定車両幅と推定車両長さを推定する具体的構成については、後述する。
個別形状推定部8は、形状出力部11に推定二輪車幅、推定二輪車長さ、推定普通車幅、推定普通車長さ、推定大型車幅、推定大型車長さを出力する。
形状出力部11は、車両形状推定装置1から出力される結果としての推定出力幅と推定出力長さとを出力する。形状出力部11は、車種選択部9と、個別形状推定部8とに接続される。形状出力部11には、車種選択部9から車種の選択結果が入力される。また、形状出力部11には、個別形状推定部8から個別車種に対応する推定値が入力される。個別車種に対応する推定値は、推定二輪車幅、推定二輪車長さ、推定普通車幅、推定普通車長さ、推定大型車幅、及び推定大型車長さを含む。形状出力部11は、車種の選択結果を利用して、車両形状推定装置1から出力される結果としての推定出力幅と推定出力長さとを決定する。
形状出力部11は、他車両の車種が二輪車であると選択された場合、推定二輪車幅を推定出力幅とし、推定二輪車長さを推定出力長さであるとする。形状出力部11は、他車両の車種が普通車であると選択された場合、推定普通車幅を推定出力幅とし、推定普通車長さを推定出力長さであるとする。形状出力部11は、他車両の車種が大型車であると選択された場合、推定大型車幅を推定出力幅とし、推定大型車長さを推定出力長さであるとする。そして、形状出力部11は、決定された推定出力幅と推定出力長さとを他の装置(例えば運転支援装置)に出力する。
車両形状推定装置1は、図2に示されるフロー図に示される動作を行う。また車両形状推定装置1は、図2に示されたステップS1〜S8を繰り返し実行する。
まず、前処理を実行する(ステップS1)。このステップS1は、前処理部2によって実行される。ステップS1では、前処理部2がレーダ4から計測点群を受け取ると共に計測点群から最近傍角の位置座標と姿勢とを算出する。次に、ステップS1では、前処理部2が計測点群と最近傍角の位置座標と姿勢とを利用して、計測車両幅と計測車両長さとを算出する。そして、ステップS1では、計測車両幅と計測車両長さを推定処理部3に出力する。
次に、推定車両幅と推定車両長さを算出する(ステップS2)。このステップS2は、全体形状推定部7によって実行される。ステップS2では、全体形状推定部7が前処理部2から計測車両幅と計測車両長さとを受け取ると共に記録部12から推定に用いるヒストグラムを受け取る。続いて、ステップS2では、全体形状推定部7が推定車両幅と推定車両長さとを算出する。そして、ステップS2では、全体形状推定部7が推定車両幅と推定車両長さとを車種選択部9に出力する。
次に、推定二輪車幅と推定二輪車長さを算出する(ステップS3)。このステップS3は、二輪車形状推定部8aによって実行される。ステップS3では、二輪車形状推定部8aが前処理部2から計測車両幅と計測車両長さとを受け取ると共に、記録部12から推定に用いるヒストグラムを受け取る。続いて、ステップS3では、二輪車形状推定部8aが推定二輪車幅と推定二輪車長さとを算出する。そして、ステップS3では、二輪車形状推定部8aが推定二輪車幅と推定二輪車長さとを形状出力部11に出力する。
次に、推定普通車幅と推定普通車長さを推定する(ステップS4)。このステップS4は、普通車形状推定部8bによって実行される。ステップS4では、普通車形状推定部8bが前処理部2から計測車両幅と計測車両長さとを受け取ると共に、記録部12から推定に用いるヒストグラムを受け取る。続いて、ステップS4では、普通車形状推定部8bが推定普通車幅と推定普通車長さとを算出する。そして、ステップS4では、普通車形状推定部8bが推定普通車幅と推定普通車長さとを形状出力部11に出力する。
次に、推定大型車幅と推定大型車長さを推定する(ステップS5)。このステップS5は、大型車形状推定部8cによって実行される。ステップS5では、大型車形状推定部8cが前処理部2から計測車両幅と計測車両長さとを受け取り、記録部12から推定に用いるヒストグラムを受け取る。続いて、ステップS5では、大型車形状推定部8cが推定大型車幅と推定大型車長さとを算出する。そして、ステップS5では、大型車形状推定部8cが推定大型車幅と推定大型車長さとを形状出力部11に出力する。
次に、車種を選択する(ステップS6)。このステップS6は、車種選択部9によって実行される。ステップS6では、車種選択部9が全体形状推定部7から推定車両幅と推定車両長さとを受け取り、推定車両幅と推定車両長さを利用して他車両が二輪車、普通車及び大型車のいずれであるかを選択する。そして、ステップS6では、車種選択部9が車種の選択結果を形状出力部11に出力する。
次に、推定値を選択する(ステップS7)。このステップS7は、形状出力部11によって実行される。ステップS7では、形状出力部11が車種選択部9から車種の選択結果を受け取ると共に、二輪車形状推定部8aから推定二輪車幅と推定二輪車長さとを受け取り、普通車形状推定部8bから推定普通車幅と推定普通車長さとを受け取り、大型車形状推定部8cから推定大型車幅と推定大型車長さとを受け取る。そして、ステップS7では、形状出力部11が車種の選択結果を利用して、推定二輪車幅及び推定二輪車長さ、推定普通車幅及び推定普通車長さ、又は、推定大型車幅及び推定大型車長さのいずれかの組み合わせを選択し、選択した組み合わせの値を車両形状推定装置1の動作結果(形状推定結果)として出力する。
以上説明した車両形状推定装置1によれば、自車両の周囲に存在する他車両の車種が二輪車であるか普通車であるか大型車であるかを選択し、選択した他車両の車種の取り得る範囲内で他車両の幅及び長さを推定するため、他車両の車種を考慮しない場合と比べて、他車両の形状(幅及び長さ)の推定の信頼度を高めることができる。ここで、図3は、車両形状推定装置の作用効果を説明するための図である。図3に示されるように、上述した車両形状推定装置1によれば、表面の反射率が低く、計測点Pが得られていない部分Rnを有する他車両について、全体形状推定部7において見えている形状R1aを指定し、車種選択部9において見えている形状R1aから車種を選択する(図3の符号R1参照)。そして、個別の車種が取り得る幅及び長さの範囲で形状R2a,R2b,R2cを推定し(図3の符号R2参照)、選択された車種の情報を利用して、該当する車種が取り得る幅及び長さの範囲でその結果を出力する(図3の符号R3参照)。従って、計測点が得られていない場合であっても、推定によって妥当な形状R2aを得られるので、他車両の形状推定において推定の信頼度を高めることができる。
続いて、上述した前処理部2、全体形状推定部7及び車種選択部9についてさらに具体的に説明する。
上述したように前処理部2には、計測点群と最近傍角Aの位置座標(xc,yc)と姿勢(θ)が入力される(図4参照)。前処理部2は、入力された計測点群を利用して、計測車両幅(Zw,t)と、計測車両長さ(ZL,t)と、を算出する。具体的には、前処理部2は、位置座標(xc,yc)と姿勢(θ)とを用いて、矩形枠とした他車両の近傍二面(自車両100に近傍する矩形枠の二辺に相当)に対して、L字グリッドGを設定する。そして、前処理部2は、L字グリッドGに対して複数の計測点を投票する。続いて、前処理部2は、L字の交点(最近傍角A)から最も離れている幅方向の計測点を探索し、L字の交点から探索された計測点PWまでの距離を計測車両幅(Zw,t)として得る。また、前処理部2は、L字の交点(最近傍角A)から最も離れている長さ方向の計測点を探索し、L字の交点から探索された計測点PLまでの距離を計測車両長さ(ZL,t)として得る。これらの計測点の探索では、計測点を含まないグリッドが一定以上連続すると、探索を終了することを探索条件としてもよい。前処理部2は、取得した計測車両幅(Zw,t)と計測車両長さ(ZL,t)とを、全体形状推定部7と個別形状推定部8とに出力する。
全体形状推定部7は、他車両の見えている部分(レーダ4で計測できた部分)について、その幅と長さとを推定する。全体形状推定部7は、図5に示される構成を有する。全体形状推定部7は、計測車両幅(Zw,t)を利用して、他車両が取り得る車両幅の範囲(値域)において推定車両幅(Wall,t)を算出する。また、全体形状推定部7は、計測車両長さ(ZL,t)を利用して他車両が取り得る車両長さの範囲において推定車両長さ(Lall,t)を算出する。すなわち、全体形状推定部7は、他車両が取り得る幅の最小値と最大値との範囲を予め設定し、その範囲内において計測車両幅(Zw,t)から推定される推定車両幅(Wall,t)を得る。同様に、全体形状推定部7は、他車両が取り得る長さの最小値と最大値との範囲を予め設定し、その範囲内において計測車両長さ(ZL,t)から推定される推定車両長さ(Lall,t)を得る。全体形状推定部7が行う推定処理の具体例として、ヒストグラムフィルタが挙げられる。ヒストグラムフィルタは、推定する状態(すなわち幅と長さ)の分布を二次元ヒストグラムとして表現する。二次元ヒストグラムフィルタによれば、他車両が取り得る幅の範囲と長さの範囲とを、二次元ヒストグラムが有するそれぞれの軸におけるビンの範囲として実現できる。また、二次元ヒストグラムの各ビンの高さは、そのビンの占める確率を示す。ビンの高さの総和は1である。なお、二次元ヒストグラムは、ステップS1〜S8を繰り返し実施することにより逐次更新されてもよい。二次元ヒストグラムを逐次更新することにより、計測値の急変に対してロバストな推定を実現できる。
全体形状推定部7において利用する二次元ヒストグラムは、記録部12から読み出される。全体形状推定部7において利用する二次元ヒストグラムを、前車両ヒストグラム(Pall,t-1)と呼ぶ。前車両ヒストグラム(Pall,t-1)は、前回のS1〜S8の処理で算出されて記録部12に記録されていたものである。「t−1」は、前回のS1〜S8の処理で算出されたものであることを示す。なお、今回のS1〜S8の処理で算出された結果は、「t」によって示す。また、「all」は、二輪車、普通車及び大型車を含む車両を示す。全体形状推定部7における推定の範囲は、最小値がゼロであり、最大値が大型車の最大値である。具体的には、全体形状推定部7の推定において、他車両の取り得る幅の範囲は、最小値がゼロであり、最大値が大型車が取り得る幅の最大値である。また、他車両の取り得る長さの範囲は、最小値がゼロであり最大値が大型車が取り得る長さの最大値である。この推定の範囲は、前車両ヒストグラム(Pall,t-1)におけるビンの範囲を、最小値をゼロとし、最大値を大型車の最大値とすることにより設定される。
全体形状推定部7は、機能的構成要素として、推定分布更新部13と、推定値抽出部14と、を有する。推定分布更新部13は、記録部12から入力された前車両ヒストグラム(Pall,t-1)を更新する。推定分布更新部13は、前処理部2と、記録部12と、推定値抽出部14と、に接続される。推定分布更新部13には、前処理部2から計測車両幅(Zw,t)と計測車両長さ(ZL,t)と、が入力されると共に、記録部12から前車両ヒストグラム(Pall,t-1)が入力される。推定分布更新部13は、前車両ヒストグラム(Pall,t-1)に対して予測処理を行うと共に、前車両ヒストグラム(Pall,t-1)に対して計測結果を利用した更新処理を行う。
推定分布更新部13は、ヒストグラム予測部16と、重み算出部17と、ヒストグラム更新部18とを有する。ヒストグラム予測部16は、予測処理を行う。重み算出部17とヒストグラム更新部18とは、更新処理を行う。
ヒストグラム予測部16は、記録部12とヒストグラム更新部18とに接続されている。ヒストグラム予測部16には、記録部12から前車両ヒストグラム(Pall,t-1)が入力される(図6の(a)部参照)。ヒストグラム予測部16は、前車両ヒストグラム(Pall,t-1)に対してガウシアンフィルタによるぼかし処理を施す(図6の(b)部参照)。このぼかし処理により、予測ヒストグラム[(Pall,t-1)f]を取得する。この処理によれば、前回のステップS1〜S8の処理から今回のステップS1〜S8の処理までの間に、他車両の形状が変動する可能性を前車両ヒストグラム(Pall,t-1)に反映させることができる。また、前回のステップS1〜S8の処理において、計測値が急変して前車両ヒストグラム(Pall,t-1)の分布を歪めるような影響があった場合に、その影響を低減することができる。そして、ヒストグラム予測部16は、ヒストグラム更新部18に予測ヒストグラム[(Pall,t-1)f]を出力する。
重み算出部17は、前処理部2とヒストグラム更新部18とに接続される。重み算出部17には、前処理部2から計測車両幅(Zw,t)と、計測車両長さ(ZL,t)と、が入力される。重み算出部17は、計測車両幅(Zw,t)と計測車両長さ(ZL,t)とを利用して、予測ヒストグラム[(Pall,t-1)f]の各ビンに適用される重み値(νi,j)を含む重み群(Vt)を算出する。重み群(Vt)に含まれた重み値(νi,j)は、予測ヒストグラム[(Pall,t-1)f]の幅i番目、長さj番目のビンに対応する重みである。各ビンの重みは、各ビンの代表する幅と長さが、計測点群とどの程度一致しているかを基に決定される。
まず、予測ヒストグラム[(P
all,t-1)
f]において、幅がi番目であるビンの代表幅(W
i,j)は式(1A)に示される。また、長さがj番目であるビンの代表長さ(L
i,j)は式(1B)に示される。
W
min:幅の最小値
W
max:幅の最大値
L
min:長さの最小値
L
max:長さの最大値
M:予測ヒストグラム[(P
all,t-1)
f]の幅方向の解像度
N:予測ヒストグラム[(P
all,t-1)
f]の長さ方向の解像度
そして、重み値(ν
i,j)は、式(2)により得られる。
σ
L:幅の標準偏差
σ
W:長さの標準偏差
上記式(1A)、(1B)及び(2)による処理を詳細に説明する。図6の(a)部の前車両ヒストグラム(Pall,t-1)は、長さがj番目である幅のヒストグラムに対応する。従って、図6の(b)部に示された予測ヒストグラム[(Pall,t-1)f]も長さがj番目である幅のヒストグラムに対応する。この予測ヒストグラム[(Pall,t-1)f]には、5個のビンB1,B2,B3,B4,B5が含まれ、それぞれの代表値が1、2、3、4、5であるとする。これらの代表値は、L字グリッドGにおける幅方向のグリッドセルGw1,Gw2,Gw3,Gw4,Gw5と対応している。例えば、代表値が「3」であるビンG1は、グリッドセルGw3に対応する。
まず、代表値「1」のビンB1(i=1)を選択する。次に、選択した「1」を平均値とする正規分布N1を得る(図7の(a)部参照)。そして、当該正規分布N1に対して、L字グリッドGにおいて計測車両幅(Zw,t)を示す計測点Pwを含むグリッドセルGw4を当てはめると、確率密度(PD1)を得る。この確率密度(PD1)が重み値(ν1,j)である。
次に、代表値「2」のビンB2(i=2)を選択する。次に、選択した「2」を平均値とする正規分布N2を得る(図7の(b)部参照)。そして、当該正規分布N2に対して、グリッドセルGw4を当てはめると、確率密度(PD2)を得る。この確率密度(PD2)が重み値(ν2,j)である。このように、代表値「3」、「4」、「5」のビンB3(i=3),B4(i=4),B5(i=5)についても、図7の(b)部及び同(c)部に示されるように、正規分布N3,N4,N5を算出し、それぞれの正規分布N3,N4,N5における確率密度(PD3),(PD4),(PD5)を重み値(ν3,j),(ν4,j),(ν5,j)として得る。
上述した処理によれば、L字グリッドの端点を探索して計測車両幅(Zw,t)と計測車両長さ(ZL,t)とを抽出し、それを基に重み値(νi,j)を計算することで、計測点の粗密の影響を受けにくい重み計算を実現できる。そして、重み算出部17は、ヒストグラム更新部18に算出した重み群(Vt)を出力する。
再び図5に示されるように、ヒストグラム更新部18は、ヒストグラム予測部16と、重み算出部17と、推定値抽出部14と、に接続される。ヒストグラム更新部18には、ヒストグラム予測部16から予測ヒストグラム[(P
all,t-1)
f]が入力されると共に、重み算出部17から重み群(V
t)が入力される。ヒストグラム更新部18は、予測ヒストグラム[(P
all,t-1)
f]を重み群(V
t)を用いて重み付けすると共に、正規化することで更新車両ヒストグラム(P
all,t)を得る。具体的には、式(3)に示されるように、重み値(ν
i,j)に係数(η)を乗算し、当該乗算によって得た値を予測ヒストグラム[(P
all,t-1)
f]のビン(
i,j)の確率にさらに乗算することにより、更新された新しいビンの確率を得る(図6の(c)部参照)。そして、ヒストグラム更新部18は、推定値抽出部14へ更新車両ヒストグラム(P
all,t)を出力する。
P
all,t:更新車両ヒストグラム
η:更新車両ヒストグラム(P
all,t)を正規化する係数
Vt:重み群
○:行列の要素ごとの積
(P
all,t)
f:予測ヒストグラム
推定値抽出部14は、ヒストグラム更新部18と車種選択部9とに接続される。推定値抽出部14には、ヒストグラム更新部18から更新車両ヒストグラム(Pall,t)が入力される。推定値抽出部14は、更新車両ヒストグラム(Pall,t)の中で最大の確率を有するビンを探索し、当該ビンの代表値を推定車両幅(Wall,t)及び推定車両長さ(Lall,t)として抽出する。このような処理によれば、最大の確率を有するビンの代表値を推定値とするので、ヒストグラム(Pall,t)の最小値に近い幅と長さが、周囲のビンの影響で正しく推定できなくなる問題を回避できる。推定値抽出部14は、推定車両幅(Wall,t)と推定車両長さ(Lall,t)とを車種選択部9に出力する。また、推定値抽出部14は、更新車両ヒストグラム(Pall,t)を記録部12に出力する。
全体形状推定部7は、図8に示されるフロー図に示された動作を行う。まず、ヒストグラムの予測を行う(ステップS2a)。このステップS2aは、ヒストグラム予測部16によって実行される。次に、重み群(Vt)を計算する(ステップS2b)。このステップS2bは、重み算出部17によって実行される。次に、ヒストグラムを更新する(ステップS2c)。このステップS2cは、ヒストグラム更新部18によって実行される。そして、推定値を得る(ステップS2d)。このステップS2dは、推定値抽出部14によって実行される。
なお、二輪車形状推定部8a、普通車形状推定部8b、及び大型車形状推定部8cの具体的な構成及び処理も全体形状推定部7と同様である。つまり、これらの形状を推定する構成要素で行われる処理では、利用されるヒストグラムが異なるのみであり、処理のプロセスは共通である。
二輪車形状推定部8aでは、前二輪車ヒストグラム(Pbike,t-1)が用いられる。前二輪車ヒストグラム(Pbike,t-1)では、二輪車の取り得る幅の範囲と、長さの範囲とが設定されている。普通車形状推定部8bでは、前普通車ヒストグラム(Pcar,t-1)が用いられる。前普通車ヒストグラム(Pcar,t-1)では、普通車の取り得る幅の範囲と、長さの範囲とが設定されている。例えば、普通車の取り得る幅の範囲は二輪車の取り得る幅の範囲よりも大きく、普通車の取り得る長さの範囲は二輪車の取り得る長さの範囲よりも大きい。大型車形状推定部8cでは、前大型車ヒストグラム(Ptruck,t-1)が用いられる。前大型車ヒストグラム(Ptruck,t-1)では、大型車の取り得る幅の範囲と、長さの範囲とが設定されている。例えば、大型車の取り得る幅の範囲は普通車の取り得る幅の範囲よりも大きく、大型車の取り得る長さの範囲は普通車の取り得る長さの範囲よりも大きい。
なお、全体形状推定部7で用いられる前車両ヒストグラム(Pall,t-1)では、例えば、車両が取り得る幅の範囲は、二輪車の取り得る幅の範囲と普通車の取り得る幅の範囲と大型車の取り得る幅の範囲とを包含する。つまり、他車両が取り得る幅の範囲の最小値は二輪車の取り得る幅の最小値以下であり、他車両が取り得る幅の範囲の最大値は大型車の取り得る幅の最大値以上である。長さについても同様である。
続いて、車種選択部9と形状出力部11とについて具体的に説明する。車種選択部9は、全体形状推定部7の推定値抽出部14と形状出力部11とに接続される(図1及び図5参照)。車種選択部9には、推定値抽出部14から推定車両幅(Wall,t)と推定車両長さ(Lall,t)とが入力される。車種選択部9では、他車両が二輪車、普通車、大型車のうちどれかに該当するかを判断する。判断基準として、推定車両幅(Wall,t)と推定車両長さ(Lall,t)を利用する。これは、他車両において、部分的に見えている幅と長さとから、その車種を判断することに相当する。
車種選択部9と形状出力部11は、図9に示されるフロー図に示される動作を行う。図9に示されたフローにおいて、ステップS6a〜S6dに係る処理は、式(4)により示される。また、図9に示されたフローにおいて、ステップS7a〜S7cに係る処理は、式(5A)及び式5(B)により示される
L
all,t:推定車両幅
W
all,t:推定車両幅
W
car,min:普通車の幅の最小値
W
car,max:普通車の幅の最大値
L
car,min:普通車の長さの最小値
L
car,max:普通車の長さの最大値
category:判断された車種を特定する車種選択情報
まず、車種選択部9は、推定車両長さ(Lall,t)が推定普通車長さの最大値(Lcar,max)より大きいか否かを判断する(ステップS6a)。推定車両長さ(Lall,t)が推定普通車長さの最大値(Lcar,max)より小さい場合(ステップS6a:NO)には、ステップS6bに移行する。一方、推定車両長さ(Lall,t)が推定普通車長さの最大値(Lcar,max)より大きい場合(ステップS6a:YES)には、他車両は大型車であると判断される。続いて、大型車であることを特定する車種選択情報(category)が形状出力部11に入力されて、形状出力部11において推定出力幅(We,t)を推定大型車幅(Wtruck,t)とすると共に、推定主力長さ(Le,t)を推定大型車長さ(L,truck,t)とする(ステップS7a)。
ステップS6aの結果がNOであるとき、車種選択部9は、推定車両幅(Wall,t)が推定普通車幅の最大値(Wcar,max)より大きいか否かを判断する(ステップS6b)。推定車両幅(Wall,t)が推定普通車幅の最大値(Wcar,max)より小さい(ステップS6b:NO)場合には、ステップS6cに移行する。一方、推定車両幅(Wall,t)が推定普通車幅の最大値(Wcar,max)より大きい(ステップS6b:YES)場合には、他車両は大型車であると判断され、ステップS7aに移行する。
ステップS6bの結果がNOであるとき、車種選択部9は、推定車両幅(Wall,t)が推定普通車幅の最小値(Wcar,min)より小さいか否かを判断する(ステップS6c)。推定車両幅(Wall,t)が推定普通車幅の最小値(Wcar,min)より小さい(ステップS6c:YES)場合には、ステップS6dに移行する。一方、推定車両幅(Wall,t)が推定普通車幅の最小値(Wcar,min)より大きい(ステップS6c:NO)場合には、他車両は普通車であると判断される。続いて、普通車であることを特定する車種選択情報(category)が形状出力部11に入力されて、形状出力部11において推定出力幅(We,t)を推定普通車幅(Wcar,t)とすると共に、推定車両長さ(Le,t)を推定普通車長さ(Lcar,t)とする(ステップS7b)。
ステップS6cの結果がYESであるとき、車種選択部9は、推定車両長さ(Lall,t)が推定普通車長さの最小値(Lcar,min)より小さいか否かを判断する(ステップS6d)。推定車両長さ(Lall,t)が推定普通車長さの最小値(Lcar,min)より小さい(ステップS6d:YES)場合には、他車両は二輪車であると判断される。続いて、二輪車であることを特定する車種選択情報(category)が形状出力部11に入力されて、形状出力部11において推定出力幅(We,t)を推定二輪車幅(Wbike,t)とすると共に、推定出力長さ(Le,t)を推定二輪車長さ(Lbike,t)とする(ステップS7c)。一方、推定車両長さ(Lall,t)が推定普通車長さの最小値(Lcar,min)より大きい(ステップS6d:NO)場合には、他車両は普通車であると判断され、ステップS7bが実行される。最後に、形状出力部11は、推定出力幅(We,t)と推定出力長さ(Le,t)とを出力する(ステップS7d)。
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
上記実施形態では、二輪車形状推定部8a、普通車形状推定部8b、及び大型車形状推定部8cがそれぞれ推定値を算出し、車種選択部9において選択された車種選択情報を用いて、いずれか一つの推定値を出力した。例えば、二輪車形状推定部8a、普通車形状推定部8b、及び大型車形状推定部8cがそれぞれ推定値を算出する前に、車種選択部9が車種選択情報を算出し、車種選択情報によって選択された車種のみについて推定値を算出してもよい。
また、上記実施形態では、全体形状推定部7、二輪車形状推定部8a、普通車形状推定部8b、及び大型車形状推定部8cにおいて用いられるヒストグラムをそれぞれについて準備していた。例えば、車両形状推定装置1では、単一のヒストグラムを利用するものであってもよい。この変形例では、全体形状推定部7、二輪車形状推定部8a、普通車形状推定部8b、及び大型車形状推定部8cは、一つのヒストグラムを共有する。
このヒストグラムフィルタの持つヒストグラムを図10に示す。ヒストグラムの範囲の最小値は、ゼロ、最大値は大型車の最大値とする。ヒストグラムの更新処理は、本発明の実施例の全体形状推定部7と同じである。全体形状推定部7の推定値を得る場合には、図10の範囲Dallの中で、最大の確率を示すビンを選択し、その代表値を出力する。二輪車形状推定部8aの推定値を得る場合には、図10の範囲Dbikeの中で最大の確率を示すビンを選択し、その代表値を出力する。普通車形状推定部8bの推定値を得る場合には、範囲Dcarの中で最大の確率を示すビンを選択し、その代表値を出力する。大型車形状推定部8cの推定値を得る場合には、図10の範囲Dtruckの中で最大の確率を示すビンを選択し、その代表値を出力する。このようなヒストグラムを利用した車両形状推定装置によれば、全体形状推定部7、二輪車形状推定部8a、普通車形状推定部8b、大型車形状推定部8cのすべてを一つのヒストグラムフィルタで実装できる。これにより、重複する計算が削減されるので、車両形状推定装置1の動作に必要な計算時間とメモリサイズとを削減できる。