以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値などは、発明の理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
近年では、車両に搭載した車載カメラによって自車両の前方の道路環境を撮像し、撮像した画像内における色情報や位置情報に基づいて先行車両等の立体物を特定し、特定された立体物との衝突を回避したり、先行車両との車間距離を所定の距離に保つ(ACC:Adaptive Cruise Control)、所謂衝突防止機能を搭載した車両が普及しつつある。
かかるACCや衝突防止機能では、例えば、自車両前方に位置する立体物と、自車両との相対距離を導出し、かかる相対距離に基づいて、自車両の前方に位置する立体物との衝突を回避したり、立体物が車両(先行車両)であった場合、その先行車両との相対距離を所定の距離に保つように制御する。また、先行車両のブレーキランプの点灯有無等を認識し、先行車両の減速動作を推測する処理を組み込むことで、より円滑なクルーズコントロールを実現することが可能となる。以下、このような目的を達成するための環境認識システムを説明し、その具体的な構成要素である車外環境認識装置を詳述する。
(環境認識システム100)
図1は、環境認識システム100の接続関係を示したブロック図である。環境認識システム100は、自車両1内に設けられた、撮像装置110と、車外環境認識装置120と、車両制御装置(ECU:Engine Control Unit)130とを含んで構成される。
撮像装置110は、CCD(Charge-Coupled Device)やCMOS(Complementary Metal-Oxide Semiconductor)等の撮像素子を含んで構成され、自車両1の前方を撮像し、カラー値で表されるカラー画像を生成することができる。ここで、カラー値は、1つの輝度(Y)と2つの色差(UV)からなる、または、3つの色相(R(赤)、G(緑)、B(青))からなる数値群である。
また、撮像装置110は、自車両1の進行方向側において2つの撮像装置110それぞれの光軸が略平行になるように、略水平方向に離隔して配置される。撮像装置110は、自車両1の前方の検出領域を撮像した画像データを、例えば1/20秒のフレーム毎(20fps)に連続して生成する。ここで、撮像装置110により生成された画像データから認識する特定物には、車両、歩行者、信号機、道路(進行路)、ガードレール、建物といった独立して存在する立体物のみならず、ブレーキランプ、ハイマウントストップランプ、テールランプ、ウィンカー、信号機の各点灯部分等、立体物の一部として特定できる物も含まれる。以下の実施形態における各機能部は、このような画像データの更新を契機としてフレーム毎に各処理を遂行する。
さらに、本実施形態において、撮像装置110は、車外環境の明るさ(照度計の計測結果等)に応じた露光時間や絞りを示す第1露光態様で検出領域を撮像し、第1画像を生成する。また、撮像装置110は、ブレーキランプ等、特定の発光源が自発光しているか否かを判別可能な第2画像を生成する。その方法としては、ダイナミックレンジが広い撮像素子を用い、発光していない立体物が黒く潰れず、発光源が白とびしないように撮像してもよいし、第1露光態様とは露光態様(露光時間、絞り)が異なる第2露光態様で検出領域を撮像し、第2画像を生成してもよい。例えば、昼間であれば、明るい車外環境に応じた第1露光態様の露光時間より第2露光態様の露光時間を短くして、または、絞りを強くして第2画像を生成する。本実施形態において、第1画像および第2画像はそれぞれカラー画像および距離画像として用いられる。また、上記第1露光態様と第2露光態様とは、以下のようにして実現される。
例えば、撮像装置110は、周期的な撮像タイミングを時分割し、第1露光態様による撮像と第2露光態様による撮像とを交互に行うことで、第1画像と第2画像とを順次生成する。また、撮像装置110は、画素毎に2つのキャパシタが設けられ、その2つのキャパシタに並行して電荷をチャージできる撮像素子において、一度の露光でチャージする時間を異ならせて露光態様の異なる2つの画像を並行して生成してもよい。さらに、撮像装置110は、1つのキャパシタの電荷のチャージ中に、時間を異ならせて2回読み出し、露光態様の異なる2つの画像を並行して生成してもよい。また、撮像装置110は、露光態様を異ならせた2セットの撮像装置により構成され(ここでは、2つの撮像装置110×2セット)、2セットの撮像装置110からそれぞれ画像を生成してもよい。露光態様を支配する露光時間は、例えば1〜60msecの範囲で適切に制御される。
車外環境認識装置120は、2つの撮像装置110それぞれから画像データを取得し、所謂パターンマッチングを用いて視差(角度差)を導き出し、視差に基づいて導出される視差情報(後述する3次元の位置情報に相当)を画像データに対応付けて距離画像を生成する。カラー画像および距離画像については後ほど詳述する。
また、車外環境認識装置120は、カラー画像に基づくカラー値、および、距離画像に基づく自車両1との相対距離を含む実空間における3次元の位置情報を用い、カラー値が等しく3次元の位置情報が近いブロック同士を立体物としてグループ化して、自車両1前方の検出領域における立体物がいずれの特定物(例えば、先行車両)に対応するかを特定する。例えば、相対距離等によって先行車両を特定し、さらに、カラー値によってその先行車両のブレーキランプの位置や点灯有無を把握する。このような処理により、ブレーキランプの点灯による当該車両の減速を迅速に把握し、衝突回避制御やACCに利用することが可能となる。
車外環境認識装置120は、立体物を先行車両として特定すると、その先行車両を追跡しつつ、先行車両の相対速度や先行車両との相対距離等を導出し、先行車両と自車両1とが衝突する可能性が高いか否かの判定を行う。ここで、衝突の可能性が高いと判定した場合、車外環境認識装置120は、その旨、運転者の前方に設置されたディスプレイ122を通じて運転者に警告表示(報知)を行うとともに、車両制御装置130に対して、その旨を示す情報を出力する。
車両制御装置130は、ステアリングホイール132、アクセルペダル134、ブレーキペダル136を通じて運転者の操作入力を受け付け、操舵機構142、駆動機構144、制動機構146に伝達することで自車両1を制御する。また、車両制御装置130は、車外環境認識装置120の指示に従い、駆動機構144、制動機構146を制御する。
以下、車外環境認識装置120の構成について詳述する。ここでは、本実施形態に特徴的な、先行車両の特定手順と、先行車両における点灯状態のブレーキランプの特定手順について詳細に説明し、本実施形態の特徴と無関係の構成については説明を省略する。
(車外環境認識装置120)
図2は、車外環境認識装置120の概略的な機能を示した機能ブロック図である。図2に示すように、車外環境認識装置120は、I/F部150と、記憶部152と、中央制御部154とを含んで構成される。
I/F部150は、撮像装置110や車両制御装置130との双方向の情報交換を行うためのインターフェースである。記憶部152は、RAM、フラッシュメモリ、HDD等で構成され、以下に示す各機能部の処理に必要な様々な情報を保持し、また、撮像装置110から受信した画像データ(第1画像および第2画像に基づくカラー画像、距離画像)を一時的に保持する。
中央制御部154は、中央処理装置(CPU)、プログラム等が格納されたROM、ワークエリアとしてのRAM等を含む半導体集積回路で構成されたコンピュータでなり、システムバス156を通じて、I/F部150、記憶部152等を制御する。また、本実施形態において、中央制御部154は、画像処理部160、位置情報導出部162、車両特定部164、発光源候補特定部166、白とび発光源特定部168、白とび範囲設定部170、面積変換部172、ランプ判定部174として機能する。以下、このような機能部について大凡の目的を踏まえ、画像処理、車両特定処理、発光源候補特定処理、白とび範囲設定処理、ランプ判定処理といった順に詳細な動作を説明する。
(画像処理)
画像処理部160は、2つの撮像装置110それぞれから画像データ(第1画像および第2画像)を取得し、第1画像の一方から任意に抽出したブロック(例えば水平4画素×垂直4画素の配列)に対応するブロックを他方の第1画像から検索する、所謂パターンマッチングを用いて視差を導き出す。また、画像処理部160は、第2画像に対してもパターンマッチングを用いて視差を導き出す。ここで、「水平」は、撮像したカラー画像の画面横方向を示し、「垂直」は、撮像したカラー画像の画面縦方向を示す。
このパターンマッチングとしては、2つの画像間において、任意の画像位置を示すブロック単位で輝度(Y色差信号)を比較することが考えられる。例えば、輝度の差分をとるSAD(Sum of Absolute Difference)、差分を2乗して用いるSSD(Sum of Squared intensity Difference)や、各画素の輝度から平均値を引いた分散値の類似度をとるNCC(Normalized Cross Correlation)等の手法がある。画像処理部160は、このようなブロック単位の視差導出処理を検出領域(例えば水平600画素×垂直180画素)に映し出されている全てのブロックについて行う。ここでは、ブロックを水平4画素×垂直4画素としているが、ブロック内の画素数は任意に設定することができる。
ただし、画像処理部160では、検出分解能単位であるブロック毎に視差を導出することはできるが、そのブロックがどのような立体物の一部であるかを認識できない。したがって、視差に基づいて導出される視差情報は、立体物単位ではなく、検出領域における検出分解能単位(例えばブロック単位)で独立して導出されることとなる。
位置情報導出部162は、画像処理部160により導出された検出領域214内のブロック毎(立体部位毎)の視差に基づいて、所謂ステレオ法を用いて、水平距離、高さおよび相対距離を含む3次元の位置情報を導出する。ここで、ステレオ法は、三角測量法を用いることで、立体部位の視差からその立体部位の撮像装置110に対する相対距離を導出する方法である。このとき、位置情報導出部162は、立体部位の相対距離と、立体部位と同相対距離にある道路表面上の点から立体部位までの距離画像212上の距離とに基づいて、立体部位の道路表面からの高さを導出する。なお、このようにして導出された視差情報(3次元の位置情報)を画像データに対応付けた画像を、上述したカラー画像と区別して距離画像という。
図3は、カラー画像210と距離画像212を説明するための説明図である。例えば、2つの撮像装置110を通じ、検出領域214について図3(a)のようなカラー画像(画像データ)210が生成されたとする。ただし、ここでは、理解を容易にするため、2つのカラー画像210の一方のみを模式的に示している。本実施形態において、画像処理部160は、このようなカラー画像210から立体部位毎の視差を求め、位置情報導出部162は、視差に基づいて立体部位毎の3次元の位置情報を導出し、図3(b)のような距離画像212を形成する。距離画像212における各立体部位には、その立体部位の視差情報が関連付けられている。ここでは、説明の便宜上、視差情報が導出された立体部位を黒のドットで表している。本実施形態では、このようなカラー画像210と距離画像212とを第1画像および第2画像それぞれに基づいて生成している。したがって、本実施形態では、第1画像に基づくカラー画像210、第1画像に基づく距離画像212、第2画像に基づくカラー画像210、第2画像に基づく距離画像212が用いられる。
(車両特定処理)
図4および図5は、車両特定部164の処理を説明するための説明図である。車両特定部164は、まず、第1画像に基づく距離画像212の検出領域214を、水平方向に対して複数の分割領域216に分割する。すると、分割領域216は図4(a)のような短冊形状になる。このような短冊形状の分割領域216は、本来、例えば、水平幅4画素のものが150列配列してなるが、ここでは、説明の便宜上、検出領域214を16等分したもので説明する。
続いて、車両特定部164は、分割領域216毎に、位置情報に基づき、道路表面より上方に位置する全てのブロックを対象に、複数に区分した所定距離それぞれに含まれる相対距離を積算してヒストグラム(図4(b)中、横長の四角(バー)で示す)を生成する。すると、図4(b)のような距離分布218が得られる。ここで、縦方向は、区分した所定距離(距離区分)を、横方向は、距離区分それぞれに相対距離が含まれるブロックの個数(度数)を示している。ただし、図4(b)は計算を行う上での仮想的な画面であり、実際には視覚的な画面の生成を伴わない。そして、車両特定部164は、このようにして導出された距離分布218を参照し、ピークに相当する相対距離である代表距離(図4(b)中、黒で塗りつぶした四角で示す)220を特定する。ここで、ピークに相当するとは、ピーク値またはピーク近傍で任意の条件を満たす値をいう。
次に、車両特定部164は、隣接する分割領域216同士を比較し、図5に示すように、代表距離220が近接する(例えば、1m以下に位置する)分割領域216をグループ化して1または複数の分割領域群222を生成する。このとき、3以上の分割領域216で代表距離220が近接していた場合にも、連続する全ての分割領域216を分割領域群222として纏める。かかるグループ化によって、車両特定部164は、道路表面より上方に位置する立体物を特定することができる。
続いて、車両特定部164は、分割領域群222内における、相対距離が代表距離220に相当するブロックを基点として、そのブロックと、水平距離の差分、高さの差分および相対距離の差分が予め定められた範囲(例えば0.1m)内にあるブロックとを、同一の特定物に対応すると仮定してグループ化する。こうして、仮想的なブロック群である立体物224が生成される。上記の範囲は実空間上の距離で表され、製造者や搭乗者によって任意の値に設定することができる。また、車両特定部164は、グループ化により新たに追加されたブロックに関しても、そのブロックを基点として、水平距離の差分、高さの差分および相対距離の差分が所定範囲内にあるブロックをさらにグループ化する。結果的に、同一の特定物と仮定可能なブロック全てがグループ化されることとなる。
また、ここでは、水平距離の差分、高さの差分および相対距離の差分をそれぞれ独立して判定し、全てが所定範囲に含まれる場合のみ同一のグループとしているが、他の計算によることもできる。例えば、水平距離の差分、高さの差分および相対距離の差分の二乗平均√((水平距離の差分)2+(高さの差分)2+(相対距離の差分)2)が所定範囲に含まれる場合に同一のグループとしてもよい。かかる計算により、ブロック同士の実空間上の正確な距離を導出することができるので、グループ化精度を高めることができる。
次に、車両特定部164は、グループ化した立体物224が、予め定められた車両に相当する所定の条件を満たしていれば、その立体物224を特定物「車両」として決定する。例えば、車両特定部164は、グループ化された立体物224が道路上に位置する場合、その立体物224全体の大きさが、特定物「車両」の大きさに相当するか否かを判定し、特定物「車両」の大きさに相当すると判定されれば、その立体物224を特定物「車両」と特定する。ここで、車両特定部164は、特定物「車両」と特定された立体物224が画面上占有する矩形の領域を車両領域として特定する。
こうして、車外環境認識装置120では、第1画像としての距離画像212から、1または複数の立体物224を、特定物、例えば、車両(先行車両)として抽出することができ、その情報を様々な制御に用いることが可能となる。例えば、検出領域214内の任意の立体物224が車両であると特定されると、特定した車両(先行車両)を追跡し、相対距離や相対加速度を検出して、先行車両との衝突を回避したり、先行車両との車間距離を安全な距離に保つように制御することができる。このような先行車両の特定や先行車両の挙動をさらに迅速に把握するため、以下では、車両領域に位置する発光源候補の中から点灯状態のブレーキランプを判定する。
(発光源候補特定処理)
ところで、第2画像は、例えば、特定の発光源(ここでは、点灯状態のブレーキランプ)を判別可能な第2露光態様で撮像した画像である。ここで、ブレーキランプのように自発光するものは、太陽や街灯の明るさに拘わらず、高いカラー値を取得することができる。特に、ブレーキランプの点灯時の明るさは法規で概ね規定されているので、所定の明るさしか露光できない露光態様(例えば、短時間の露光)で撮像することで、ブレーキランプに相当する画素のみを容易に抽出することが可能である。
図6は、第1露光態様による撮像と第2露光態様による撮像との違いを説明するための説明図である。図6(a)は、第1露光態様による第1画像に基づくカラー画像210を示し、特に、図6(a)の左図ではテールランプが点灯しており、図6(a)の右図ではテールランプに加えブレーキランプが点灯している。図6(a)を参照して理解できるように、車外環境の明るさに応じた第1露光態様では、ブレーキランプが消灯状態でかつテールランプが点灯状態である時のテールランプ位置230のカラー値と、ブレーキランプが点灯状態でかつテールランプが点灯状態である時のブレーキランプ位置232とでカラー値の差がほとんど生じない。これは、露光時間の長い第1露光態様では、テールランプもブレーキランプもRGB成分全てのカラー値がサチレーションしてしまうことに起因する。
図6(b)は、第2露光態様による第2画像に基づくカラー画像210を示し、特に、図6(b)の左図ではテールランプが点灯しており、図6(b)の右図ではテールランプに加えブレーキランプが点灯している。第2露光態様は、ブレーキランプが点灯しているときのカラー値のみを取得可能に設定されている。したがって、図6(b)を参照して理解できるように、テールランプが点灯状態でもテールランプ位置230では、その明るさに準じるカラー値をほとんど取得できず、ブレーキランプが点灯状態である時のブレーキランプ位置232では、明確に高いカラー値を取得できている。
かかる第2露光態様では、ブレーキランプのカラー値のR成分が、撮像素子においてサチレーションするかしないかといった程度の露光時間に設定することが望ましい。撮像装置110は、通常、ダイナミックレンジが人間より大幅に狭いので、夕方くらいの明度の低さで第1露光態様により撮像すると、車外環境に対して相対的にブレーキランプのカラー値が高くなる。そうすると、R成分のみならず、R成分とオーバーラップしてG成分やB成分も最大値(例えばカラー値が255)にサチレーションし、画素が白くなってしまう。そこで、第2露光態様を、ブレーキランプ点灯時にR成分がサチレーションするかしないかといった程度の露光時間とすることで、外部の環境に拘わらず、G成分やB成分のカラー値への影響を抑制しつつ、R成分のみを最大値で抽出する。こうして、例えば、テールランプとのカラー値差を最大限確保することが可能となる。
具体的に、夜間の走行時に先行車両が存在する場合に、点灯状態のブレーキランプがカラー範囲(R)「200以上」となるように第2露光状態が設定されていると、点灯状態のテールランプが、例えば、カラー範囲(R)「50」、カラー範囲(G)「50」、カラー範囲(B)「50」程度で第2画像に基づくカラー画像210に表示されない。これに対して、点灯状態のブレーキランプは、例えば、カラー範囲(R)「200以上」、カラー範囲(G)「50以下」、カラー範囲(B)「50以下」で第2画像に表示される。こうして発光源候補特定部166は、第2画像に基づくカラー画像210を通じて、点灯状態のブレーキランプを特定することが可能となる。以下では、第2画像に基づくカラー画像210から、点灯状態のブレーキランプを含む発光源の候補を発光源候補として特定する発光源候補特定処理について説明する。
図7は、カラー閾値を示す説明図である。本実施形態では、例えば、図7に示すように、第2画像に基づくカラー画像210から点灯状態のブレーキランプを特定するためのカラー閾値として、「黄色(Y)」、「赤色(R)」、「赤色と比較して少し暗い赤色(WR1)」、「さらに暗い赤色(WR2)」、「一番暗い赤色(WR3)」の5段階が設けられているとともに、詳しくは後述する、白とびした発光源を特定するために白とび閾値としてカラー閾値「白とび」が設けられている。ここでは、第2露光態様における標準的なシャッター速度を17msecとしている。また、本実施形態では、このような複数のカラー閾値を直接用いず、複数のカラー閾値に基づく複数のカラー条件を採用する。ここで、複数のカラー条件として、「黄色」(以下、単に「第1カラー条件」という)、「黄色」+「赤色」(以下、単に「第2カラー条件」という)、「黄色」+「赤色」+「赤色と比較して少し暗い赤色」(以下、単に「第3カラー条件」という)、「黄色」+「赤色」+「赤色と比較して少し暗い赤色」+「さらに暗い赤色」(以下、単に「第4カラー条件」という)、「黄色」+「赤色」+「赤色と比較して少し暗い赤色」+「さらに暗い赤色」+「一番暗い赤色」(以下、単に「第5カラー条件」という)の5段階が設けられている。このように、各条件を、各カラー閾値とそれより強度(明度)が高い他のカラー閾値との和とした理由は、所定のカラー閾値より強度が高い領域を適切に求めるためである。
発光源候補特定部166は、第2画像に基づくカラー画像210から、画素単位で3つの色相(R、G、B)のカラー値を取得する。そして、少なくとも「一番暗い赤色」のカラー値である画素は点灯状態のブレーキランプが撮像されたものである可能性があるため、発光源候補特定部166は、カラー値が第5カラー条件を満たす画素、つまり、「一番暗い赤色」のカラー値以上である画素を特定する。なお、検出領域214が例えば雨天や曇天であった場合、発光源候補特定部166は、本来のカラー値を取得できるようにホワイトバランスを調整してから取得してもよい。
発光源候補特定部166は、特定した、第5カラー条件を満たす画素同士の水平距離の差分、高さの差分および相対距離の差分が所定範囲(例えば0.1m)内にある場合、その複数の画素を1の発光源候補としてグループ化する。こうして、ブレーキランプを構成する画素が複数に跨がっていても、また、車両の左右のブレーキランプがそれぞれ複数のランプで構成されている場合であっても、それを左右に存在するブレーキランプの一方として個々に認識することが可能となる。
そして、発光源候補特定部166は、第1画像に基づいて特定された車両領域と、特定した発光源候補とを、それぞれの画像に基づく距離画像212が示す視差情報に基づいて対応付ける。
(白とび範囲設定処理)
しかしながら、発光源の種類や日照条件といった外部環境によっては、ブレーキランプやリヤウインドウ等に太陽光が反射し、第2画像における太陽光が反射した箇所のカラー値が高くなり、発光源候補として誤検出されることがある。したがって、特定した発光源候補のカラー値と固定的な閾値とを単純に比較するだけでは、点灯状態であるブレーキランプの判定を誤ってしまうおそれがある。例えば、ブレーキランプが点灯していないのに、太陽光の反射によりカラー値が固定の閾値より高くなってしまい、ブレーキランプが点灯していると誤判定してしまうおそれがある。
そこで、白とび発光源特定部168は、発光源候補特定部166により特定された車両領域内に位置する発光源候補の中に、カラー値が白とびカラー閾値以上の発光源候補があるか否かを判定し、白とびカラー閾値以上の発光源候補を白とび発光源として特定する。なお、白とびとは、第2画像においてサチレーションして白色または白色に近い色になった画素(画素群)を示すものであり、白とびカラー閾値は、第2画像においてサチレーションしているとされるカラー値に設定される。つまり、白とび発光源として特定された発光源候補は、太陽光の反射により第2画像においてサチレーションしている画素群であるとも言える。また、白とび発光源が特定された場合、白とび発光源の近傍の画素も、太陽光の反射により、カラー値が高くなっている可能性が高い。
そこで、白とび範囲設定部170は、太陽光の反射によりサチレーションした白とび発光源の近傍に対して、太陽光の反射によりカラー値が高くなっているとされる白とび範囲を設定する。
図8は、白とび範囲244を説明する図である。具体的には、図8に示すように、車両領域240内に4つの発光源候補242a、242b、242c、242dが特定され、発光源候補242aが白とび発光源と特定されたとすると、白とび範囲設定部170は、発光源候補(白とび発光源)242aの垂直方向の中央を基準として、車両領域240内の上下方向に±20cmの白とび範囲244を設定する。また、白とび範囲設定部170は、車両領域240における白とび範囲244以外の範囲を、太陽光の反射の影響を受けていないとされる非白とび範囲246に設定する。ここでは、白とび範囲244として上下方向のみを対象とすることで処理負荷の軽減を図ることができる。
そして、以下で説明するランプ判定処理において、車両領域内に位置する発光源候補が点灯状態のブレーキランプであるか否かを判定する際に用いられるカラー条件、および、詳しくは後述する点灯判定閾値を、非白とび範囲246と白とび範囲244とで異ならせるようにしている。
(ランプ判定処理)
図9は、非白とび範囲246および白とび範囲244に存在する発光源候補に対するカラー条件および点灯判定閾値を示す図である。詳しくは後述するように、面積変換部172は、図9に示すカラー条件を用いて発光源候補の画素数を面積に変換し、ランプ判定部174は、図9に示す点灯判定閾値を用いて、車両領域240内に位置する発光源候補が点灯状態のブレーキランプであるか否かを判定する。
図9に示すように、非白とび範囲246では、先行車両との相対距離に応じて、カラー条件が異なっている。これは、相対距離が大きくなるに連れて第2画像で撮像されるブレーキランプのカラー値が低くなっていくため、相対距離が大きくなるに連れてカラー条件を下げて、点灯状態のブレーキランプがカラー条件によって消灯状態であると誤判定されてしまうことを防止している。
本実施形態では、非白とび範囲246のカラー条件は、相対距離が0〜40mである場合には第2カラー条件に設定され、相対距離が40〜60mである場合には第3カラー条件に設定され、相対距離が60〜80mである場合には第4カラー条件に設定され、相対距離が80m以上である場合には第5カラー条件に設定されている。また、非白とび範囲246の点灯判定閾値は、詳しくは後述する点灯判定閾値THLに設定されている。
一方、白とび範囲244のカラー条件は、太陽光の反射によりカラー値が高くなっている可能性が高いことにより、相対距離に拘わらず、非白とび範囲246で設定されているカラー条件(第2カラー条件〜第5カラー条件)以上である第2カラー条件に設定されている。また、白とび範囲244の点灯判定閾値は、点灯判定閾値THLよりも高い点灯判定閾値THHに設定されている。
ところで、自車両1と先行車両との相対距離が長いと、カラー条件を満たす発光源候補が小さくなり、その画素数も少なくなる。これに対し、先行車両との相対距離が短いと、カラー条件を満たす発光源候補が大きくなり、その画素数が多くなる。したがって、ブレーキランプが点灯状態を維持していても、先行車両との相対距離の変化に応じてカラー条件を満たす画素数が変動する。例えば、ブレーキランプが点灯状態であるにも拘わらず、先行車両との位置関係によりカラー条件を満たす画素数が異なると、本来はブレーキランプが点灯状態にあり、カラー条件を満たす画素が存在しても、相対距離が長すぎて、その数が閾値に満たない結果が生じうる。そこで、本実施形態では、先行車両との相対距離に基づいて画素数を実際の面積に変換する。
図10は、自車両1と先行車両との相対距離と画素数の関係を示した説明図である。図10では、横軸に相対距離を示し、縦軸に所定の大きさの立体物が占有する画素数が示されている。図10を参照して理解できるように、同一の立体物(同一の面積)であっても、相対距離が長くなるほど、画素数が小さくなる。かかる推移は、関数で近似でき、相対距離0地点から図10における相対距離a地点までは、相対距離に比例し、a地点以降は、相対距離の3/2乗に比例する。通常、画像における立体物の大きさは、その相対距離に単純に比例するが、発光源の場合、発光の影響を受けて見た目上の発光範囲が広がる。よって、図10のように、相対距離と画素数の関係が非線形になる。
したがって、面積変換部172は、先行車両との相対距離に基づいて設定されているカラー条件(図9)を満たす画素数を計数し、図10の逆関数により(図10の画素数で除算し)、カラー条件を満たした画素数を面積に変換する。具体的には、面積変換部172は、非白とび範囲246内に位置する発光源候補については、相対距離が0〜40mであれば第2カラー条件を満たす画素数を計数し、相対距離が40〜60mであれば第3カラー条件を満たす画素数を計数し、相対距離が60〜80mであれば第4カラー条件を満たす画素数を計数し、相対距離が80m以上であれば第5カラー条件を満たす画素数を計数する。また、面積変換部172は、白とび範囲244内に位置する発光源候補については、相対距離に拘わらず、第2カラー条件を満たす画素数を計数する。
そして、面積変換部172は、図10の逆関数により(図10の画素数で除算し)、計数した画素数を面積に変換する。こうして、立体物の大きさの変動が少なくなり、後述するランプ判定部174は、変換された面積と点灯判定閾値とを比較することで、点灯状態のブレーキランプを高精度に判定することが可能となる。
図11は、統計的な点灯判定閾値を説明するヒストグラムであり、第2画像において所定のカラー条件を満たす発光源候補として特定された、太陽光が反射した領域の面積と、点灯状態のブレーキランプの面積とについて、横軸を度数にして統計をとったものである。図11に示すように、太陽光が反射した領域の面積は、点灯状態のブレーキランプの面積よりも概ね小さい値を示すことが統計的にわかっている。
そこで、本実施形態では、太陽光が反射した領域の面積と、点灯状態のブレーキランプの面積とを区別する点灯判定閾値(第2点灯判定閾値)THHが、統計的に予め決定され記憶部152に記憶されている。ここで、点灯判定閾値THHのみを用いて、全ての発光源候補に対して点灯状態のブレーキランプか否かを判定することも考えられるが、点灯判定閾値THH未満となる発光源候補の中には点灯状態のブレーキランプも少なからず含まれている。そこで、点灯判定閾値THHよりも低い値であり、かつ、点灯状態のブレーキランプの面積よりも低い点灯判定閾値(第1点灯判定閾値)THLも予め統計的に決定され記憶部152に記憶されている。そして、太陽光の反射でカラー値が高くなっているとされる白とび範囲244内の発光源候補に対しては点灯判定閾値THHを適用し、太陽光の反射が発生していないとされる非白とび範囲246内の発光源候補に対しては、点灯判定閾値THLを適用する。
具体的には、ランプ判定部174は、非白とび範囲246内に位置する発光源候補の面積が点灯判定閾値THL以上である場合には、点灯状態のブレーキランプであると仮判定する。一方、ランプ判定部174は、白とび範囲244内に位置する発光源候補の面積が点灯判定閾値THH以上である場合には、点灯状態のブレーキランプであると仮判定する。
そして、ランプ判定部174は、点灯状態のブレーキランプであると仮判定された発光源候補が、それ単体で高さ範囲「0.3〜2.0m」、水平距離の幅範囲「0.05〜0.2m」、垂直距離の幅範囲「0.05〜0.2m」の条件を満たすか判定する。さらに、ランプ判定部174は、1対のブレーキランプの組み合わせが、水平距離の差分「1.4〜1.9m」、垂直距離の差分「0.3m以下」、面積比「50〜200%」の条件を満たすか否かを判定する。そして、ランプ判定部174は、上記条件を満たした1対の発光源候補を点灯状態のブレーキランプであると判定する。このように、発光源候補が車両の適切な位置に対応している場合にのみブレーキランプとして特定する構成により、リアフォグランプなど、同等の明るさで一灯だけで点灯している発光源候補をブレーキランプと誤認識するのを防止することができる。
このように、ランプ判定部174は、点灯状態のブレーキランプを判定すると、当該ブレーキランプと、上述した第1露光態様による第1画像によって特定した「車両」とを対応付ける。
以上のように、車外環境認識装置120は、白とび範囲244内の発光源候補のカラー値が太陽光の反射により高くなっていても、白とび発光源の近傍の白とび範囲244の発光源候補に対して、非白とび範囲246内の発光源候補に対するカラー条件以上の高いカラー条件を用いて画素数を計数する。これにより、太陽光の反射の影響を考慮した面積を導出することができ、精度よく点灯状態のブレーキランプを判定することができる。なお、白とび範囲244内の発光源候補に対して、非白とび範囲246内の発光源候補に対するカラー条件よりも高いカラー条件を用いて画素数を計数するようにしてもよい。
また、車外環境認識装置120は、白とび範囲244内の発光源候補のカラー値が太陽光の反射により高くなっていても、白とび発光源の近傍の白とび範囲244内の発光源候補に対して、非白とび範囲246内の発光源候補とは異なる高い点灯判定閾値THHを用いて点灯状態のブレーキランプであるか否かを判定する。これにより、太陽光の反射の影響を考慮した判定を行うことができ、精度よく点灯状態のブレーキランプを判定することができる。
さらに、車外環境認識装置120は、先行車両を特定してから継続的にブレーキランプの輝度変化を検出する必要がなく、1度の処理によって、早期に点灯状態のランプを判定することができる。
(車外環境認識処理の流れ)
次に、中央制御部154が実行する、上記した画像処理、車両特定処理、発光源候補特定処理、白とび範囲設定処理、ランプ判定処理を含む車外環境認識処理の流れについて説明する。
図12は、車外環境認識処理の流れを示すフローチャートである。図12に示すように、まず、画像処理部160は、撮像装置110から、第1露光態様で撮像された第1画像と、第2露光態様で撮像された第2画像とを取得する(S300)。そして、画像処理部160は、取得した画像から視差を導出し、位置情報導出部162は、導出された視差に基づいて立体部位毎の3次元の位置情報を導出する(S302)。続いて、車両特定部164は、3次元の位置情報に基づいてグループ化された立体物から車両、車両領域を特定するとともに、先行車両との相対位置(相対距離)を特定する(S304)。
そして、発光源候補特定部166は、第2画像を構成する画素のカラー値が第5カラー条件を満たす画素のグループを発光源候補として特定する(S306)。その後、白とび発光源特定部168は、車両領域内に位置する発光源候補のカラー値が白とび閾値以上である発光源候補を白とび発光源として特定する(S308)。続いて、白とび範囲設定部170は、白とび発光源が特定されたか否かを判定し(S310)、白とび発光源が特定されていれば(S310におけるYES)、白とび発光源の近傍を白とび範囲244として設定する(S312)。なお、白とび範囲設定部170は、白とび発光源が特定されていなければ(S310におけるNO)、車両領域240に対して白とび範囲244を設定することはない。
その後、面積変換部172は、特定された未判定の発光源候補の1を選択し(S314)、選択した発光源候補が白とび範囲244内であるか否かを判定する(S316)。そして、選択した発光源候補が白とび範囲244内であれば(S316におけるYES)、面積変換部172は、第2カラー条件を満たす画素数を計数し、先行車両との相対距離に基づいて画素数を面積に変換する(S318)。続いて、ランプ判定部174は、変換した面積と点灯判定閾値THHとを比較することで、点灯状態のブレーキランプか否かを仮判定する(S320)。
一方、選択した発光源候補が白とび範囲244内でない、つまり、非白とび範囲246内であれば(S316におけるNO)、面積変換部172は、相対距離に応じたカラー条件(第2カラー条件〜第5カラー条件のいずれか)を満たす画素数を計数し、先行車両との相対距離に基づいて画素数を面積に変換する(S322)。続いて、ランプ判定部174は、変換した面積と点灯判定閾値THLとを比較することで、点灯状態のブレーキランプか否かを仮判定する(S324)。
その後、面積変換部172は、未判定の発光源候補があるか否かを判定し(S326)、未判定の発光源があれば(S326におけるYES)、S314の処理に戻る。一方、未判定の発光源がなければ(S326におけるNO)、ランプ判定部174は、点灯状態のブレーキランプとして仮判定した発光源候補が位置、大きさ等の条件を満たせば、その発光源候補を点灯状態のブレーキランプと判定し(S328)、車外環境認識処理を終了する。
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明はかかる実施形態に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
なお、上記の実施形態においては、非白とび範囲246内の発光源候補および白とび範囲244内の発光源候補に対して、異なるカラー条件および点灯判定閾値を用いて、点灯状態のブレーキランプであるか否かを判定するようにした。しかしながら、これに限らず、非白とび範囲246内の発光源候補および白とび範囲244の発光源候補に対して、点灯判定閾値は同一で、カラー条件のみを異ならせて点灯状態のブレーキランプであるか否かを判定するようにしてもよく、また、カラー条件は同一で、点灯判定閾値のみ異ならせて点灯状態のブレーキランプであるか否かを判定するようにしてもよい。
また、上記の実施形態においては、発光源候補について、相対距離に応じたカラー条件を満たす画素数を計数し、先行車両との相対距離に基づいて画素数を面積に変換し、変換した面積と点灯判定閾値とを比較することで、点灯状態のランプを判定するようにした。しかしながら、これに限らず、発光源候補について、所定のカラー条件を満たす画素数または画素面積と点灯判定閾値とを比較することで、点灯状態のランプを判定するようにしてもよい。
また、上記の実施形態においては、点灯状態のブレーキランプと仮判定した発光源候補に対して位置、大きさ等の条件を満たすかを判定し、条件を満たす発光源候補を点灯状態のブレーキランプと判定した。しかしながら、これに限らず、点灯状態のブレーキランプと仮判定した発光源候補を、そのまま点灯状態のブレーキランプと判定してもよい。
また、上記の実施形態においては、点灯状態のブレーキランプを判定するようにしたが、これに限らず、他の点灯状態のランプを判定するようにしてもよい。
また、上記の実施形態においては、白とび発光源が特定された場合、白とび発光源に対して垂直方向に±20cmの範囲、つまり、車両領域240に対して水平方向に亘って一定幅の白とび範囲244を設定するようにした。しかしながら、これに限らず、白とび発光源が特定された場合、白とび発光源に対して、垂直方向および水平方向の所定の範囲で白とび範囲を設定するようにしてもよい。
また、上記の実施形態においては、中央制御部154として、中央処理装置(CPU)、ROM、RAM等を含む半導体集積回路で構成されるようにした。しかしながら、これに限らず、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)等の集積回路で構成されるようにしてもよい。また、1または複数の中央処理装置、FPGA、ASICにより構成されるようにしてもよい。
また、コンピュータを、車外環境認識装置120として機能させるプログラムや当該プログラムを記録した、コンピュータで読み取り可能なフレキシブルディスク、光磁気ディスク、DRAM、SRAM、ROM、NVRAM、CD、DVD、BD等の記憶媒体も提供される。ここで、プログラムは、任意の言語や記述方法にて記述されたデータ処理手段をいう。
また、本明細書の車外環境認識処理の各工程は、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいはサブルーチンによる処理を含んでもよい。