(57)【特許請求の範囲】
【請求項１】
画像を取得する画像取得部と、
前記画像において、車両領域を特定する車両特定部と、
特定された前記車両領域における、１または複数の発光源の候補を発光源候補として特定する発光源候補特定部と、
特定された前記発光源候補のうち、予め定められた第１期間点灯している発光源候補が、他の発光源候補と予め定められたペア条件を満たすか否かを判定し、該ペア条件を満たすと判定した該発光源候補、および、該ペア条件を満たさないと判定した該発光源候補であって、該第１期間より長い第２期間点灯している発光源候補を、ブレーキランプと特定するブレーキランプ特定部と、
を備えたことを特徴とする車外環境認識装置。
【請求項２】
前記ブレーキランプ特定部は、少なくとも１度、ブレーキランプと特定された前記発光源候補が、前記第２期間より短い第３期間点灯していると、該発光源候補をブレーキランプと特定することを特徴とする請求項１に記載の車外環境認識装置。
【請求項３】
前記ブレーキランプ特定部は、少なくとも１度、前記ペア条件を満たすと判定された前記発光源候補が、該ペア条件を満たさない場合であっても、前記第２期間より短い第４期間点灯していると、ブレーキランプと特定することを特徴とする請求項１に記載の車外環境認識装置。
【請求項４】
前記画像取得部が取得する画像はカラー画像であり、
前記発光源候補特定部は、所定のカラー範囲内のカラー値を有する画素であって、所定の距離範囲内の画素同士をグループ化した領域を発光源候補とし、
前記ブレーキランプ特定部は、前記発光源候補の領域において、Ｒ成分、Ｇ成分、および、Ｂ成分のうち、いずれかの成分のカラー値が、該カラー値の取り得る最大値となっている画素が所定数以上ある場合、該発光源候補をブレーキランプの候補から除外することを特徴とする請求項１から３のいずれか１項に記載の車外環境認識装置。
【請求項５】
前記画像取得部が取得する画像はカラー画像であり、
前記ブレーキランプ特定部は、前記車両領域における、Ｒ成分のカラー値が所定の閾値以上である画素数に基づいて、前記発光源候補が太陽光の反射により該発光源候補として特定されたか否かを判定し、太陽光の反射により発光源候補として特定されたと判定した場合、該発光源候補をブレーキランプの候補から除外することを特徴とする請求項１から４のいずれか１項に記載の車外環境認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、先行車両のブレーキランプを特定する車外環境認識装置に関する。
【背景技術】
【０００２】
従来、自車両の前方に位置する車両等の特定物を検出し、先行車両との衝突を回避したり（衝突回避制御）、先行車両との車間距離を安全な距離に保つように制御する（クルーズコントロール）技術が知られている（例えば、特許文献１）。ここで、運転者（人）が遂行しているように、先行車両のブレーキランプの点灯有無（ブレーキの操作状態）等を認識し、先行車両の減速動作を推測するといった処理を組み込むことができれば、より円滑なクルーズコントロールが可能となる。
【０００３】
このような先行車両のブレーキランプの点灯有無を検出する技術として、テールランプ検出領域の輝度変化または面積変化に基づいてブレーキランプの点灯を検出し、先行車両の減速状態を判断する技術（例えば、特許文献２）が開示されている。また、赤色領域における輝度（明度）のヒストグラム分布を生成し、その標準偏差を通じてブレーキランプの点灯を判断する技術（例えば、特許文献３）も開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３３４９０６０号公報
【特許文献２】特許第３８７２１７９号公報
【特許文献３】特開平９−２６７６８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した特許文献２、３の技術では、取得した画像における、発光源に相当する２つの領域の位置関係に基づいて、ブレーキランプが点灯しているか否かを判定している。このため、１対の発光源で構成されるブレーキランプのうち、一方の発光源が消灯していたり、先行車両の姿勢等によって一方の発光源が画像に映り込まなかったりする場合にブレーキランプの点灯を検出できないという課題があった。
【０００６】
本発明は、このような課題に鑑み、ブレーキランプの点灯を高精度に判定することが可能な車外環境認識装置を提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明の車外環境認識装置は、画像を取得する画像取得部と、前記画像において、先行車両が占有する車両領域を特定する車両特定部と、特定された前記車両領域における、１または複数の発光源の候補を発光源候補として特定する発光源候補特定部と、特定された前記発光源候補のうち、予め定められた第１期間点灯している発光源候補が、他の発光源候補と予め定められたペア条件を満たすか否かを判定し、該ペア条件を満たすと判定した該発光源候補、および、該ペア条件を満たさないと判定した該発光源候補であって、該第１期間より長い第２期間点灯している発光源候補を、ブレーキランプと特定するブレーキランプ特定部と、を備えたことを特徴とする。
【０００８】
また、前記ブレーキランプ特定部は、少なくとも１度、ブレーキランプと特定された前記発光源候補が、前記第２期間より短い第３期間点灯していると、該発光源候補をブレーキランプと特定するとしてもよい。
【０００９】
また、前記ブレーキランプ特定部は、少なくとも１度、前記ペア条件を満たすと判定された前記発光源候補が、該ペア条件を満たさない場合であっても前記第２期間より短い第４期間点灯していると、該発光源候補をブレーキランプと特定するとしてもよい。
【００１０】
また、前記画像取得部が取得する画像はカラー画像であり、前記発光源候補特定部は、所定のカラー範囲内のカラー値を有する画素であって、所定の距離範囲内の画素同士をグループ化した領域を発光源候補とし、前記ブレーキランプ特定部は、前記発光源候補の領域において、Ｒ成分、Ｇ成分、および、Ｂ成分のうち、いずれかの成分のカラー値が、該カラー値の取り得る最大値となっている画素が所定数以上ある場合、該発光源候補をブレーキランプの候補から除外するとしてもよい。
【００１１】
また、前記画像取得部が取得する画像はカラー画像であり、前記ブレーキランプ特定部は、前記車両領域における、Ｒ成分のカラー値が所定の閾値以上である画素数に基づいて、前記発光源候補が太陽光の反射により該発光源候補として特定されたか否かを判定し、太陽光の反射により発光源候補として特定されたと判定した場合、該発光源候補をブレーキランプの候補から除外するとしてもよい。
【発明の効果】
【００１２】
本発明によれば、ブレーキランプの点灯を高精度に判定することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】環境認識システムの接続関係を示したブロック図である。
【図２】カラー画像と距離画像を説明するための説明図である。
【図３】車外環境認識装置の概略的な機能を示した機能ブロック図である。
【図４】特定物テーブルを説明するための説明図である。
【図５】車外環境認識処理を示すフローチャートである。
【図６】車両特定部の処理を説明するための説明図である。
【図７】車両特定部の処理を説明するための説明図である。
【図８】第１露光態様による撮像と第２露光態様による撮像との違いを説明するための説明図である。
【図９】ブレーキランプ特定処理を示すフローチャートである。
【図１０】学習ロジック処理を示すフローチャートである。
【図１１】点灯仮判定処理を示すフローチャートである。
【図１２】ランプ仮点灯判定処理を示すフローチャートである。
【図１３】太陽光反射判定処理を示すフローチャートである。
【図１４】ブレーキランプ判定処理を示すフローチャートである。
【図１５】ブレーキランプ判定処理を示すフローチャートである。
【図１６】ブレーキランプ判定処理を示すフローチャートである。
【図１７】ノイズ除外処理を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値などは、発明の理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
【００１５】
近年では、車両に搭載した車載カメラによって自車両の前方の道路環境を撮像し、撮像した画像内における色情報や位置情報に基づいて先行車両等の対象物を特定し、特定された対象物との衝突を回避したり、先行車両との車間距離を安全な距離に保つ（ＡＣＣ：Adaptive Cruise Control）、所謂衝突防止機能を搭載した車両が普及しつつある。
【００１６】
かかるＡＣＣや衝突防止機能では、例えば、自車両前方に位置する対象物の、自車両との相対距離を導出し、かかる相対距離に基づいて、自車両の前方に位置する対象物との衝突を回避したり、対象物が車両（先行車両）であった場合、その先行車両との相対距離を安全な距離に保つように制御する。また、先行車両のブレーキランプの点灯有無等を認識し、先行車両の減速動作を推測する処理を組み込むことで、より円滑なクルーズコントロールを実現することが可能となる。以下、このような目的を達成するための環境認識システムを説明し、その具体的な構成要素である車外環境認識装置を詳述する。
【００１７】
（環境認識システム１００）
図１は、環境認識システム１００の接続関係を示したブロック図である。環境認識システム１００は、自車両１内に設けられた、撮像装置１１０と、車外環境認識装置１２０と、車両制御装置（ＥＣＵ：Engine Control Unit）１３０とを含んで構成される。
【００１８】
撮像装置１１０は、ＣＣＤ（Charge-Coupled Device）やＣＭＯＳ（Complementary Metal-Oxide Semiconductor）等の撮像素子を含んで構成され、自車両１の前方に相当する環境を撮像し、カラー値で表されるカラー画像を生成することができる。ここで、カラー値は、１つの輝度（Ｙ）と２つの色差（ＵＶ）からなる、または、３つの色相（Ｒ（赤）、Ｇ（緑）、Ｂ（青））からなる数値群である。
【００１９】
また、撮像装置１１０は、自車両１の進行方向側において２つの撮像装置１１０それぞれの光軸が略平行になるように、略水平方向に離隔して配置される。撮像装置１１０は、自車両１の前方の検出領域に存在する対象物を撮像した画像データを、例えば１／２０秒のフレーム毎（２０ｆｐｓ）に連続して生成する。ここで、認識する対象物は、車両、歩行者、信号機、道路（進行路）、ガードレール、建物といった独立して存在する立体物のみならず、ブレーキランプ、ハイマウントストップランプ、テールランプ、ウィンカー（方向指示器）、信号機の各点灯部分等、立体物の一部として特定できる物も含む。以下の実施形態における各機能部は、このような画像データの更新を契機としてフレーム毎に各処理を遂行する。
【００２０】
さらに、本実施形態において、撮像装置１１０は、車外環境の明るさ（照度計の計測結果等）に応じた露光時間や絞りを示す第１露光態様で検出領域を撮像し、第１画像を生成する。また、撮像装置１１０は、ブレーキランプ等、特定の発光源が自発光しているか否かを判別可能な画像を生成する。その方法としては、ダイナミックレンジが広い撮像素子を用い、発光していない対象物が黒く潰れず、発光源が白とびしないように撮像してもよいし、第１露光態様とは露光態様（露光時間、絞り）が異なる第２露光態様で検出領域を撮像し、第２画像を生成してもよい。例えば、昼間であれば、明るい車外環境に応じた第１露光態様の露光時間より第２露光態様の露光時間を短くして、または、絞りを強くして第２画像を生成する。本実施形態において、第１画像および第２画像はそれぞれカラー画像および距離画像として用いられる。また、上記第１露光態様と第２露光態様とは、以下のようにして実現される。
【００２１】
例えば、撮像装置１１０の周期的な撮像タイミングを時分割し、第１露光態様による撮像と第２露光態様による撮像とを交互に行うことで、第１画像と第２画像とを順次生成することができる。また、画素毎に２つのキャパシタが設けられ、その２つのキャパシタに並行して電荷をチャージできる撮像素子において、一度の露光でチャージする時間を異ならせて露光態様の異なる２つの画像を並行して生成することもできる。さらに、１つのキャパシタの電荷のチャージ中に、時間を異ならせて２回読み出し、露光態様の異なる２つの画像を並行して生成したりすることでも上記の目的を達成できる。また、撮像装置１１０を、露光態様を異ならせて予め２セット準備しておき（ここでは、２つの撮像装置１１０×２セット）、２セットの撮像装置１１０からそれぞれ画像を生成したりすることも可能である。露光態様を支配する露光時間は、例えば１〜６０ｍｓｅｃの範囲で適切に制御される。
【００２２】
車外環境認識装置１２０は、２つの撮像装置１１０それぞれから画像データを取得し、一方の画像データから任意に抽出したブロック（例えば水平４画素×垂直４画素の配列）に対応するブロックを他方の画像データから検索する、所謂パターンマッチングを用いて視差、および、任意のブロックの画面内の位置を示す画面位置を含む視差情報を導出する。ここで、水平は、撮像した画像の画面横方向を示し、垂直は、撮像した画像の画面縦方向を示す。このパターンマッチングとしては、一対の画像間において、任意のブロック単位で輝度（Ｙ）を比較することが考えられる。例えば、輝度値の差分をとるＳＡＤ（Sum of Absolute Difference）、差分を２乗して用いるＳＳＤ（Sum of Squared intensity Difference）や、各画素の輝度から平均値を引いた分散値の類似度をとるＮＣＣ（Normalized Cross Correlation）等の手法がある。車外環境認識装置１２０は、このようなブロック単位の視差導出処理を検出領域（例えば６００画素×２００画素）に映し出されている全てのブロックについて行う。ここでは、ブロックを４画素×４画素としているが、ブロック内の画素数は任意に設定することができる。
【００２３】
ただし、車外環境認識装置１２０では、検出分解能単位であるブロック毎に視差を導出することはできるが、そのブロックがどのような対象物の一部であるかを認識できない。したがって、視差情報は、対象物単位ではなく、検出領域における検出分解能単位（例えばブロック単位）で独立して導出されることとなる。ここでは、このようにして導出された視差情報を画像データに対応付けた画像を、上述したカラー画像と区別して距離画像という。
【００２４】
図２は、カラー画像１２６と距離画像１２８を説明するための説明図である。例えば、２つの撮像装置１１０を通じ、検出領域１２４について図２（ａ）のようなカラー画像（画像データ）１２６が生成されたとする。ただし、ここでは、理解を容易にするため、２つのカラー画像１２６の一方のみを模式的に示している。車外環境認識装置１２０は、このようなカラー画像１２６からブロック毎の視差を求め、図２（ｂ）のような距離画像１２８を形成する。距離画像１２８における各ブロックには、そのブロックの視差が関連付けられている。ここでは、説明の便宜上、視差が導出されたブロックを黒のドットで表している。本実施形態では、このようなカラー画像１２６と距離画像１２８とを第１画像および第２画像それぞれに基づいて生成している。したがって、本実施形態では、第１画像に基づくカラー画像１２６、第１画像に基づく距離画像１２８、第２画像に基づくカラー画像１２６、第２画像に基づく距離画像１２８が用いられる。
【００２５】
また、車外環境認識装置１２０は、カラー画像１２６に基づくカラー値、および、距離画像１２８に基づく自車両１との相対距離を含む実空間における３次元の位置情報を用い、カラー値が等しく３次元の位置情報が近いブロック同士を対象物としてグループ化して、自車両１前方の検出領域における対象物がいずれの特定物（例えば、先行車両）に対応するかを特定する。例えば、相対距離等によって先行車両を特定し、さらに、カラー値によってその先行車両のブレーキランプの位置や点灯有無を把握することができる。このような処理により、ブレーキランプの点灯による当該車両の減速を迅速に把握し、衝突回避制御やＡＣＣに利用することが可能となる。
【００２６】
なお、上記相対距離は、距離画像１２８におけるブロック毎の視差情報を、所謂ステレオ法を用いて三次元の位置情報に変換することで求められる。ここで、ステレオ法は、三角測量法を用いることで、対象物の視差からその対象物の撮像装置１１０に対する相対距離を導出する方法である。
【００２７】
車外環境認識装置１２０は、対象物を任意の特定物、例えば、先行車両を特定すると、その先行車両を追跡しつつ、先行車両との相対距離および先行車両の相対速度等を導出し、先行車両と自車両１とが衝突する可能性が高いか否かの判定を行う。このとき、先行車両のブレーキランプを特定していれば、そのブレーキランプの点灯により先行車両の減速を早期に認識できる。ここで、先行車両と衝突の可能性が高いと判定した場合、車外環境認識装置１２０は、その旨、運転者の前方に設置されたディスプレイ１２２を通じて運転者に警告表示（報知）を行うとともに、車両制御装置１３０に対して、その旨を示す情報を出力する。
【００２８】
車両制御装置１３０は、ステアリングホイール１３２、アクセルペダル１３４、ブレーキペダル１３６を通じて運転者の操作入力を受け付け、操舵機構１４２、駆動機構１４４、制動機構１４６に伝達することで自車両１を制御する。また、車両制御装置１３０は、車外環境認識装置１２０の指示に従い、駆動機構１４４、制動機構１４６を制御する。例えば、車外環境認識装置１２０から先行車両と衝突の可能性が高い旨の情報が入力されると、車両制御装置１３０は、制動機構１４６を通じて運転者のブレーキ操作を支援する。
【００２９】
以下、車外環境認識装置１２０の構成について詳述する。ここでは、本実施形態に特徴的な、先行車両やブレーキランプの特定処理について詳細に説明し、本実施形態の特徴と無関係の構成については説明を省略する。
【００３０】
（車外環境認識装置１２０）
図３は、車外環境認識装置１２０の概略的な機能を示した機能ブロック図である。図３に示すように、車外環境認識装置１２０は、Ｉ／Ｆ部１５０と、データ保持部１５２と、中央制御部１５４とを含んで構成される。
【００３１】
Ｉ／Ｆ部１５０は、撮像装置１１０や車両制御装置１３０との双方向の情報交換を行うためのインターフェースである。データ保持部１５２は、ＲＡＭ、フラッシュメモリ、ＨＤＤ等で構成され、特定物テーブルや、以下に示す各機能部の処理に必要な様々な情報を保持し、また、撮像装置１１０から受信した画像データ（第１画像および第２画像に基づくカラー画像１２６、距離画像１２８）を一時的に保持する。ここで、特定物テーブルは、以下のように定義される。
【００３２】
図４は、特定物テーブル２００を説明するための説明図である。特定物テーブル２００では、複数の特定物に対して、カラー値（ここではＲ、Ｇ、Ｂ）の範囲を示すカラー範囲２０２と、道路表面からの高さの範囲を示す高さ範囲２０４と、特定物の水平距離の幅範囲２０６と、特定物の垂直距離の幅範囲２０８と、同一特定物との水平距離の差分２１０と、同一特定物との垂直距離の差分２１２と、同一特定物との面積比２１４とが対応付けられている。ここで、特定物としては、「ブレーキランプ（赤）」、「ハイマウントストップランプ（赤）」、「テールランプ（赤）」、「ウィンカー（橙）」等、車両を特定する際に要する様々な物が想定されている。ただし、特定物は図４に記載された物に限定されないのは言うまでもない。特定物のうち、例えば、特定物「ブレーキランプ（赤）」には、カラー範囲（Ｒ）「２００以上」、カラー範囲（Ｇ）「５０以下」、カラー範囲（Ｂ）「５０以下」、高さ範囲「０．３〜２．０ｍ」、水平距離の幅範囲「０．０５〜０．２ｍ」、垂直距離の幅範囲「０．０５〜０．２ｍ」、水平距離の差分「１．４〜１．９ｍ」、垂直距離の差分「０．３ｍ以下」、面積比「５０〜２００％」が対応付けられている。
【００３３】
図３に戻って説明すると、中央制御部１５４は、中央処理装置（ＣＰＵ）、プログラム等が格納されたＲＯＭ、ワークエリアとしてのＲＡＭ等を含む半導体集積回路で構成され、システムバス１５６を通じて、Ｉ／Ｆ部１５０、データ保持部１５２等を制御する。また、本実施形態において、中央制御部１５４は、画像取得部１６０、位置情報導出部１６２、対象物特定部１６４、位置対応付け部１６６、配置判定部１６８、ブレーキランプ特定部１７０としても機能する。以下、各機能部の動作を説明するとともに、本実施形態に特徴的な車外環境認識処理について詳述する。
【００３４】
（車外環境認識処理）
図５は、車外環境認識処理を示すフローチャートである。車外環境認識装置１２０の画像取得部１６０は、撮像装置１１０から、車外環境の明るさに応じた第１露光態様で検出領域１２４を撮像した第１画像と、第１露光態様と露光態様が異なる第２露光態様で検出領域１２４を撮像した第２画像とを取得する（Ｓ３００）。
【００３５】
続いて、位置情報導出部１６２は、第１画像に基づく距離画像１２８における検出領域１２４内のブロック毎の視差情報を、上述したステレオ法を用いて、水平距離ｘ、（道路表面からの）高さｙおよび相対距離ｚを含む三次元の位置情報に変換する（Ｓ３０２）。ここで、視差情報が、距離画像１２８における各ブロックの視差を示すのに対し、三次元の位置情報は、実空間における各ブロックの相対距離の情報を示す。また、視差情報が画素単位ではなくブロック単位、即ち複数の画素単位で導出されている場合、その視差情報はブロックに属する全ての画素の視差情報とみなして、画素単位の計算を実行することができる。かかる三次元の位置情報への変換については、特開２０１３−１０９３９１号公報等、既存の技術を参照できるので、ここでは、その詳細な説明を省略する。
【００３６】
次に、対象物特定部１６４は、第１画像および第２画像に基づいて、画像内の対象物がいずれの特定物に対応するか特定する。本実施形態において、対象物特定部１６４は、特に、先行する車両（先行車両）と、ブレーキランプ（発光源）と、ハイマウントストップランプ（発光源）を特定する。したがって、以下では、対象物特定部１６４のうち、先行車両を特定する機能部を車両特定部１６４ａとし、ブレーキランプやハイマウントストップランプを特定する機能部を発光源候補特定部１６４ｂとして説明する。また、対象物特定部１６４（車両特定部１６４ａ、発光源候補特定部１６４ｂ）は、特定物が特定された対象物を追跡（追尾）し、その対象物の自車両１に対する相対距離、相対速度、相対加速度、および、自車両１の走行状態を加味した先行車両の絶対速度、絶対加速度も検出する。
【００３７】
図６および図７は、車両特定部１６４ａの処理を説明するための説明図である。車両特定部１６４ａは、まず、第１画像に基づく距離画像１２８の検出領域１２４を、水平方向に対して複数の分割領域２１６に分割する（Ｓ３０４）。すると、分割領域２１６は図６（ａ）のような短冊形状になる。このような短冊形状の分割領域２１６は、本来、例えば、水平幅４画素のものが１５０列配列してなるが、ここでは、説明の便宜上、検出領域１２４を１６等分したもので説明する。
【００３８】
続いて、車両特定部１６４ａは、分割領域２１６毎に、位置情報に基づき、道路表面より上方に位置する全てのブロックを対象に、複数に区分した所定距離それぞれに含まれる相対距離を積算してヒストグラム（図６（ｂ）中、横長の四角（バー）で示す、以下、「距離ヒストグラム」と称する）を生成する（Ｓ３０６）。すると、図６（ｂ）のような距離分布２１８が得られる。ここで、縦方向は、区分した所定距離（距離区分）を、横方向は、距離区分それぞれに相対距離が含まれるブロックの個数（度数）を示している。ただし、図６（ｂ）は計算を行う上での仮想的な画面であり、実際には視覚的な画面の生成を伴わない。そして、車両特定部１６４ａは、このようにして導出された距離分布２１８を参照し、ピークに相当する相対距離である代表距離（図６（ｂ）中、黒で塗りつぶした四角で示す）２２０を特定する（Ｓ３０８）。ここで、ピークに相当するとは、ピーク値またはピーク近傍で任意の条件を満たす値をいう。
【００３９】
次に、車両特定部１６４ａは、隣接する分割領域２１６同士を比較し、図７に示すように、代表距離２２０が近接する（例えば、１ｍ以下に位置する）分割領域２１６をグループ化して１または複数の分割領域群２２２を生成する（Ｓ３１０）。このとき、３以上の分割領域２１６で代表距離２２０が近接していた場合にも、連続する全ての分割領域２１６を分割領域群２２２として纏める。かかるグループ化によって、車両特定部１６４ａは、道路表面より上方に位置する立体物を特定することができる。
【００４０】
続いて、車両特定部１６４ａは、分割領域群２２２内における、相対距離ｚが代表距離２２０に相当するブロックを基点として、そのブロックと、水平距離ｘの差分、高さｙの差分および相対距離ｚの差分が予め定められた範囲（例えば０．１ｍ）内にあるブロックとを、同一の特定物に対応すると仮定してグループ化する（Ｓ３１２）。こうして、仮想的なブロック群である対象物２２４が生成される。上記の範囲は実空間上の距離で表され、製造者や搭乗者によって任意の値に設定することができる。また、車両特定部１６４ａは、グループ化により新たに追加されたブロックに関しても、そのブロックを基点として、水平距離ｘの差分、高さｙの差分および相対距離ｚの差分が所定範囲内にあるブロックをさらにグループ化する。結果的に、同一の特定物と仮定可能なブロック全てがグループ化されることとなる。
【００４１】
また、ここでは、水平距離ｘの差分、高さｙの差分および相対距離ｚの差分をそれぞれ独立して判定し、全てが所定範囲に含まれる場合のみ同一のグループとしているが、他の計算によることもできる。例えば、水平距離ｘの差分、高さｙの差分および相対距離ｚの差分の二乗平均√（（水平距離ｘの差分）２＋（高さｙの差分）２＋（相対距離ｚの差分）２）が所定範囲に含まれる場合に同一のグループとしてもよい。かかる計算により、ブロック同士の実空間上の正確な距離を導出することができるので、グループ化精度を高めることができる。
【００４２】
次に、車両特定部１６４ａは、グループ化した対象物２２４が、予め定められた車両に相当する所定の条件を満たしていれば、その対象物２２４を特定物「車両」として決定する（Ｓ３１４）。例えば、車両特定部１６４ａは、グループ化された対象物２２４が道路上に位置する場合、その対象物２２４全体の大きさが、特定物「車両」の大きさに相当するか否かを判定し、特定物「車両」の大きさに相当すると判定されれば、その対象物２２４を特定物「車両」と特定する。ここで、車両特定部１６４ａは、特定物「車両」と特定された対象物２２４が画面上占有する領域の外接矩形に相当する領域を車両領域とする。
【００４３】
こうして、車外環境認識装置１２０では、第１画像としての距離画像１２８から、１または複数の対象物２２４を、特定物、例えば、車両（先行車両）として抽出することができ、その情報を様々な制御に用いることが可能となる。例えば、検出領域１２４内の任意の対象物２２４が車両であると特定されると、特定した車両（先行車両）を追跡し、相対距離や相対加速度を検出して、先行車両との衝突を回避したり、先行車両との車間距離を安全な距離に保つように制御することができる。このような先行車両の特定や先行車両の挙動をさらに迅速に把握するため、以下では、車両領域に存在する発光源をブレーキランプとみなし、その点灯有無を判定する。
【００４４】
続いて、発光源候補特定部１６４ｂは、第２画像に基づくカラー画像１２６から、画素単位で３つの色相（Ｒ、Ｇ、Ｂ）のカラー値を取得する（Ｓ３１６）。このとき、検出領域１２４が例えば雨天や曇天であった場合、発光源候補特定部１６４ｂは、本来のカラー値を取得できるようにホワイトバランスを調整してから取得してもよい。
【００４５】
発光源候補特定部１６４ｂは、データ保持部１５２に保持された特定物テーブル２００と、第２画像に基づくカラー画像１２６の各画素のカラー値とによって所定の発光源を仮に特定する（Ｓ３１８）。具体的に、発光源候補特定部１６４ｂは、特定物テーブル２００に登録されている特定物から、第２露光態様に対応付けられた特定の発光源（ここでは「ブレーキランプ」）を選択し、取得した１の画素のカラー値が、選択した特定物のカラー範囲２０２に含まれるか否か判定する。そして、対象となるカラー範囲２０２に含まれれば、その画素を当該特定物「ブレーキランプ」と仮定する。
【００４６】
上記第２画像は、上述したように特定の発光源、例えば、特定物「ブレーキランプ」が自発光しているか否かを判別可能な第２露光態様で撮像した画像である。ここで、特定物「ブレーキランプ」のように自発光するものは、太陽や街灯の明るさに拘わらず、高いカラー値を取得することができる。特に、特定物「ブレーキランプ」の点灯時の明るさは法規で概ね規定されているので、所定の明るさしか露光できない露光態様（例えば、短時間の露光）で撮像することで、特定物「ブレーキランプ」に相当する画素のみを容易に抽出することが可能である。
【００４７】
図８は、第１露光態様による撮像と第２露光態様による撮像との違いを説明するための説明図である。図８（ａ）は、第１露光態様による第１画像を示し、特に、図８（ａ）の左図ではテールランプが点灯しており、図８（ａ）の右図ではテールランプに加えブレーキランプが点灯している。図８（ａ）を参照して理解できるように、車外環境の明るさに応じた第１露光態様では、ブレーキランプ非点灯かつテールランプ点灯時のテールランプ位置２３０のカラー値と、ブレーキランプ点灯かつテールランプ点灯時のブレーキランプ位置２３２とでカラー値の差がほとんど生じない。これは、露光時間の長い第１露光態様では、テールランプもブレーキランプもＲＧＢ成分全てのカラー値がサチレーションしてしまうことに起因する。
【００４８】
図８（ｂ）は、第２露光態様による第２画像を示し、特に、図８（ｂ）の左図ではテールランプが点灯しており、図８（ｂ）の右図ではテールランプに加えブレーキランプが点灯している。第２露光態様は、ブレーキランプが点灯しているときのカラー値のみを取得可能に設定されている。したがって、図８（ｂ）を参照して理解できるように、テールランプが点灯していてもテールランプ位置２３０では、その明るさに準じるカラー値をほとんど取得できず、ブレーキランプ点灯時のブレーキランプ位置２３２では、明確に高いカラー値を取得できている。
【００４９】
かかる第２露光態様では、ブレーキランプのカラー値が撮像素子において、Ｒ成分がサチレーションするかしないかといった程度の露光時間に設定することが望ましい。撮像装置１１０は、通常、ダイナミックレンジが人間より大幅に狭いので、夕方くらいの明度の低さで第１露光態様により撮像すると、車外環境に対して相対的にブレーキランプのカラー値が高くなる。すると、Ｒ成分のみならず、Ｒ成分とオーバーラップしてＧ成分やＢ成分も最大値（例えばカラー値が２５５）にサチレーションし、画素が白くなってしまう。そこで、第２露光態様を、ブレーキランプ点灯時にＲ成分がサチレーションするかしないかといった程度の露光時間とすることで、外部の環境に拘わらず、Ｇ成分やＢ成分のカラー値への影響を抑制しつつ、Ｒ成分のみを最大値で抽出する。こうして、例えば、テールランプとのカラー値差を最大限確保することが可能となる。
【００５０】
具体的に、夜間の走行時に先行車両が存在する場合に、テールランプが点灯している程度、例えば、カラー範囲（Ｒ）「５０」、カラー範囲（Ｇ）「５０」、カラー範囲（Ｂ）「５０」程度では第２画像に表示されない。これに対して、ブレーキランプが点灯していると、図４の特定物テーブル２００に示すように、カラー範囲２０２が、カラー範囲（Ｒ）「２００以上」、カラー範囲（Ｇ）「５０以下」、カラー範囲（Ｂ）「５０以下」となり、第２露光態様で撮像したとしても、その位置が把握できる程度に第２画像に表示される。こうして発光源候補特定部１６４ｂは、第２画像を通じて、ブレーキランプ等、所定の発光源のみを特定することが可能となる。また、ここでは、第２露光態様による露光時間を固定しているが、車外環境に応じて自発的にまたは搭乗者の操作に応じて調整されるとしてもよい。
【００５１】
また、発光源候補特定部１６４ｂは、発光源の候補とされた画素同士の水平距離ｘの差分、高さｙの差分および相対距離ｚの差分が所定範囲（例えば０．１ｍ）内にある場合、その複数の画素を１の発光源候補としてグループ化する（Ｓ３２０）。こうして、ブレーキランプを構成する画素が複数に跨がっていても、また、車両の左右のブレーキランプがそれぞれ複数のランプで構成されている場合であっても、それを左右に存在するブレーキランプの一方として個々に認識することが可能となる。
【００５２】
また、発光源候補特定部１６４ｂは、この１の発光源候補の大きさが予め定められた閾値（例えば、水平および垂直の幅０．０５ｍ）以上の場合にのみ、１の発光源候補を発光源として特定する（Ｓ３２２）。なお、発光源候補特定部１６４ｂは、大きさに加えて、その発光源候補の形も条件としてよい。例えば、ブレーキランプが車両後部の左右端部に鉛直方向に延伸する形状である場合、その大きさのみならず、ブレーキランプとみなせる形状であることを判定する。また、発光源候補特定部１６４ｂは、ブレーキランプと同等の手順で、１の発光源候補の大きさや形状からハイマウントストップランプも特定する。こうして、本来、所定の発光源としてみなすべきではないノイズに相当する発光源を排除し、ブレーキランプ等、所望する発光源を抽出することができるので、特定物を高精度に特定することが可能となる。
【００５３】
このように、発光源候補特定部１６４ｂによって、ブレーキランプやハイマウントストップランプを高精度に抽出することができる。しかし、第２露光態様による第２画像のみでは、夜間などに検出領域１２４全体のカラー値が低く（暗く）なってしまい、ブレーキランプ等の発光源以外は何も把握できなくなってしまう。そこで、当該「ブレーキランプ」と、上述した第１露光態様による第１画像によって特定した「車両」とを対応付ける。
【００５４】
位置対応付け部１６６は、車両特定部１６４ａが特定物「車両」としてグループ化した車両領域と、発光源候補特定部１６４ｂが特定した発光源（ブレーキランプ）の位置とを対応付ける（Ｓ３２４）。そして、車両特定部１６４ａによる特定物「車両」の追跡と、発光源候補特定部１６４ｂによる特定物「ブレーキランプ」の追跡とを支援し、一方の位置情報で他方の位置情報を校正する。こうして、先行する車両の外縁と車両のブレーキランプとの位置関係を維持することができる。
【００５５】
配置判定部１６８は、同一の先行車両に存在すると仮定される１対のブレーキランプの組み合わせを特定し、図４に示した特定物テーブル２００に基づいて、位置対応付け部１６６によって対応付けられた車両領域と発光源であるブレーキランプの位置との相対配置が適切な配置か否かを判定する（Ｓ３２６）。配置判定部１６８は、例えば、ブレーキランプが、それ単体で高さ範囲「０．３〜２．０ｍ」、水平距離の幅範囲「０．０５〜０．２ｍ」、垂直距離の幅範囲「０．０５〜０．２ｍ」の条件を満たすか判定する。さらに、配置判定部１６８は、１対のブレーキランプの組み合わせが、水平距離の差分「１．４〜１．９ｍ」、垂直距離の差分「０．３ｍ以下」、面積比「５０〜２００％」の条件を満たすか否かを判定する。
【００５６】
このように、上記の発光源候補特定部１６４ｂ、位置対応付け部１６６、配置判定部１６８によって、ブレーキランプの形状や位置関係から１対の発光源で構成されるブレーキランプを特定することができる。しかし、１対の発光源で構成されるブレーキランプのうち、一方の発光源が消灯していたり、先行車両の姿勢等によって一方の発光源が画像（第２画像）に映り込まなかったりする（以下、単に「片付」と称する）場合に、その片付のブレーキランプの点灯を検出できなくなってしまう問題があった。
【００５７】
そこで、本実施形態では、先行車両の車両領域における発光源候補の点灯時間に基づいて、１対の発光源が両方点灯している（以下、「両付」と称する）ブレーキランプのみならず、片付のブレーキランプの点灯を適切に特定する。そして、上記の発光源候補特定部１６４ｂ、位置対応付け部１６６、配置判定部１６８によるブレーキランプの特定は、ブレーキランプらしさを判定する上で補助的（冗長的）に用いることとする。
【００５８】
（ブレーキランプ特定処理Ｓ３２８）
図９は、ブレーキランプ特定処理Ｓ３２８を示すフローチャートである。図９に示すように、ブレーキランプ特定部１７０は、まず、学習ロジックを遂行する学習ロジック処理（Ｓ３４０）を実行する。そして、ブレーキランプ特定部１７０は、学習ロジック処理Ｓ３４０の結果に基づいて、位置対応付け部１６６によって先行車両の車両領域に対応付けられた個々の発光源候補の点灯有無を仮判定する点灯仮判定処理（Ｓ３５０）を実行する。続いて、ブレーキランプ特定部１７０は、発光源候補の点灯時間に基づいて、発光源候補がブレーキランプであるか否かを判定するブレーキランプ判定処理（Ｓ３６０）を実行する。そして、ブレーキランプ特定部１７０は、ブレーキランプであると判定した発光源候補からノイズを除外するノイズ除外処理（Ｓ３７０）を実行し、先行車両のブレーキランプが点灯しているか否かを特定する。以下、学習ロジック処理Ｓ３４０、点灯仮判定処理Ｓ３５０、ブレーキランプ判定処理Ｓ３６０、ノイズ除外処理Ｓ３７０について詳述する。
【００５９】
（学習ロジック処理Ｓ３４０）
図１０は、学習ロジック処理Ｓ３４０を示すフローチャートである。まず、ブレーキランプ特定部１７０は、車両特定部１６４ａに特定された先行車両の車両領域において、予め定められた１または複数のカラー閾値に基づくカラー条件（例えば、Ｒ成分が１５０を上回り、Ｇ成分が１１３未満、Ｂ成分が６６未満）を満たした画素の数（画素数）を計数する（Ｓ３４０−１）。そして、ブレーキランプ特定部１７０は、画素数を３次元空間上の実際の面積に変換（正規化）する（Ｓ３４０−２）。
【００６０】
このとき、発光源特定処理におけるグループ化処理Ｓ３２０においてグループ化された１の発光源候補ごとの面積と、グループ化されたすべての発光源候補の面積の和（以下、「車両領内の面積」と称する）を計算する。その後、ブレーキランプ特定部１７０は、変換した車両領域内の面積に応じてヒストグラム（相異なる複数段階の面積区分を階級とし、その面積区分毎の度数を示す、以下、「面積ヒストグラム」と称する）を生成する（Ｓ３４０−３）。一方、ブレーキランプ特定部１７０は、前回までに蓄積された面積ヒストグラムと、先行車両の加減速とを勘案して、点灯有無の基準となる所定の閾値ＴＨｈｉｇｈを導出する（Ｓ３４０−４）。ここで、閾値ＴＨｈｉｇｈは、例えば、１対のブレーキランプが両方点灯している場合、面積ヒストグラムにおける相対的に度数が高い面積区分が閾値ＴＨｈｉｇｈ以上となるように設定される値である。
【００６１】
そして、ブレーキランプ特定部１７０は、今回計算した車両領域内の面積が、閾値ＴＨｈｉｇｈ以上であるか否かに基づき、ブレーキランプが点灯しているか否かを判定する（Ｓ３４０−５）。つまり、１対のブレーキランプが両方点灯しているか否かを判定する。なお、かかる面積ヒストグラムの生成、閾値ＴＨｈｉｇｈの導出、および、面積ヒストグラムによる発光源候補の点灯有無の判定については、特願２０１４−０７３３７４号等、既存の技術を参照できるので、ここでは、その詳細な説明を省略する。
【００６２】
また、１対のブレーキランプが両方点灯していると判定した場合は、発光源候補が点灯しているか否かを判定するための閾値ＴＨｅａｃｈを更新する。閾値ＴＨｅａｃｈは、所定のカラー条件を満たす面積を計算する処理（Ｓ３４０−２）で計算した面積のうち、１の発光源候補に対応する面積を超えないように設定される。例えば、閾値ＴＨｅａｃｈは、１の発光源候補に対応する面積の半分程度の値とする。
【００６３】
（点灯仮判定処理Ｓ３５０）
図１１は、点灯仮判定処理Ｓ３５０を示すフローチャートである。ブレーキランプ特定部１７０は、発光源候補特定部１６４ｂが特定した発光源候補であって、位置対応付け部１６６によって先行車両の車両領域に対応付けられた、１または複数の発光源候補の数を取得し、発光源候補の数を候補数カウンタＣＮが取り得る最大値ｍａｘとして記憶する。そして、ブレーキランプ特定部１７０は、１または複数の発光源候補から、１の発光源候補を取得し、候補数カウンタＣＮに１をセットする（候補数カウンタセット処理Ｓ３５０−１）。
【００６４】
そして、ブレーキランプ特定部１７０は、ランプ仮点灯判定処理Ｓ３５０−２を実行する。図１２は、ランプ仮点灯判定処理Ｓ３５０−２を示すフローチャートである。ブレーキランプ特定部１７０は、まず、上記学習ロジック処理Ｓ３４０の結果（Ｓ３４０−５の結果）が利用可能な状態であるか否かを判定する（Ｓ３５０−２−１）。ブレーキランプ特定部１７０は、学習ロジック処理Ｓ３４０で生成した面積ヒストグラムにおいて、度数が所定の閾値ＴＨａ以上の面積区分があれば、学習ロジック処理Ｓ３４０の結果が利用可能な状態であると判定する。
【００６５】
そして、ブレーキランプ特定部１７０は、上記学習ロジック処理Ｓ３４０の結果が利用可能な状態であると判定すると（Ｓ３５０−２−１におけるＹＥＳ）、上記Ｓ３４０−２で計算した面積のうち発光源候補ごとの面積が、閾値ＴＨｅａｃｈ以上であるか否かを判定する（Ｓ３５０−２−２）。ブレーキランプ特定部１７０は、上記Ｓ３５０−２−２において、発光源候補ごとの面積が、閾値ＴＨｅａｃｈ以上であると判定された場合（Ｓ３５０−２−２におけるＹＥＳ）、発光源候補が点灯していると仮判定し、個々ランプフラグをＯＮにする（Ｓ３５０−２−３）。一方、上記Ｓ３４０−２で計算した発光源候補ごとの面積が、閾値ＴＨｅａｃｈ以上ではないと判定された場合（Ｓ３５０−２−２におけるＮＯ）、発光源候補が消灯していると仮判定し、個々ランプフラグをＯＦＦにして（Ｓ３５０−２−４）、当該ランプ仮点灯判定処理Ｓ３５０−２を終了する。
【００６６】
なお、個々ランプフラグは、１の発光源候補が点灯しているか否かを示すフラグであり、個々ランプフラグがＯＮは、発光源候補が点灯していることを示し、個々ランプフラグがＯＦＦは、発光源候補が消灯していることを示す。
【００６７】
一方、ブレーキランプ特定部１７０は、学習ロジック処理Ｓ３４０の結果が利用可能な状態ではないと判定すると（Ｓ３５０−２−１におけるＮＯ）、面積判定処理Ｓ３５０−２−５に移る。面積判定処理Ｓ３５０−２−５は、Ｒ成分が所定値を上回る面積が所定以上であるか否かを判定する処理である。例えば、面積判定処理Ｓ３５０−２−５は、Ｒ成分が２００を上回る画素が２画素以上あるか否かを判定する。
【００６８】
そして、ブレーキランプ特定部１７０は、Ｒ成分が所定値を上回る面積が所定以上である場合（Ｓ３５０−２−５におけるＹＥＳ）、個々ランプフラグをＯＮにし（Ｓ３５０−２−６）、Ｒ成分が所定値を上回る面積が所定以上ではない場合（Ｓ３５０−２−５におけるＮＯ）、個々ランプフラグをＯＦＦにして（Ｓ３５０−２−７）、当該ランプ仮点灯判定処理Ｓ３５０−２を終了する。
【００６９】
図１１に戻って説明すると、ブレーキランプ特定部１７０は、個々ランプフラグがＯＮであるか否かを判定する（Ｓ３５０−３）。そして、個々ランプフラグがＯＮである場合（Ｓ３５０−３におけるＹＥＳ）、個別面積換算値判定処理Ｓ３５０−４に移り、個々ランプフラグがＯＮでない場合、つまり、個々ランプフラグがＯＦＦである場合（Ｓ３５０−３におけるＮＯ）連続点灯カウンタ値判定処理Ｓ３５０−１１に移る。
る。
【００７０】
ブレーキランプ特定部１７０は、車両領域の占有面積に対する当該発光源候補の占有面積の割合（以下、「個別面積換算値」と称する）が、所定の閾値ＴＨｌｏｗ以上であるか否かを判定する（Ｓ３５０−４）。ここで、閾値ＴＨｌｏｗは、例えば、ブレーキランプのうち、少なくとも一方の発光源が点灯してさえいれば、個別面積換算値が閾値ＴＨｌｏｗ以上となるように予め設定される値である。また、上記したランプ仮点灯判定処理Ｓ３５０−２において学習ロジック処理Ｓ３４０の結果が利用可能な状態であると判定した場合には、面積ヒストグラムに基づいて閾値ＴＨｌｏｗが設定され、上記ランプ仮点灯判定処理Ｓ３５０−２において学習ロジック処理Ｓ３４０の結果が利用可能な状態でないと判定した場合には、予め定められた閾値ＴＨｌｏｗが設定される。そして、個別面積換算値が閾値ＴＨｌｏｗ以上であると判定した場合（Ｓ３５０−４におけるＹＥＳ）、サチレーション判定処理Ｓ３５０−５に移る。一方、個別面積換算値が閾値ＴＨｌｏｗ未満であると判定した場合（Ｓ３５０−４におけるＮＯ）、連続点灯カウンタ値判定処理Ｓ３５０−１１に移る。
【００７１】
個別面積換算値判定処理Ｓ３５０−４を実行することにより、１の発光源候補の大きさが、ブレーキランプの一方の発光源の大きさに相当するか否かを判定することができ、ブレーキランプとみなせる大きさ未満の発光源候補をブレーキランプと誤認識してしまう事態を回避することが可能となる。
【００７２】
続いて、ブレーキランプ特定部１７０は、太陽光の反射によって発光源候補と誤って特定（誤認識）されたか否かを判定する処理（Ｓ３５０−５、Ｓ３５０−６、Ｓ３５０−７）を実行する。なお、太陽光の反射が所定範囲に含まれる場合（太陽光の反射が安定している場合）、上記学習ロジック処理Ｓ３４０によってブレーキランプの点灯の有無が判定できる。
【００７３】
まず、ブレーキランプ特定部１７０は、発光源候補を構成する画素のうち、サチレーションを起こしている画素が、所定数（例えば、１）以上あるか否かを判定する（Ｓ３５０−５）。ここでは、Ｒ成分、Ｇ成分、および、Ｂ成分のうち、少なくともいずれかの成分のカラー値が、カラー値の取り得る最大値（例えばカラー値が２５５）である画素を、サチレーションを起こしている画素とする。サチレーションを起こしている画素が所定数未満であると判定した場合（Ｓ３５０−５におけるＮＯ）、ブレーキランプ特定部１７０は、太陽光反射判定処理Ｓ３５０−６に移る。一方、サチレーションを起こしている画素が所定数以上あると判定した場合（Ｓ３５０−５におけるＹＥＳ）、ブレーキランプ特定部１７０は、連続点灯カウンタ値判定処理Ｓ３５０−１１に移る。
【００７４】
発光源候補特定部１６４ｂによって特定される発光源候補が、太陽光の反射により発光源候補と特定される場合、発光源候補を構成する画素においてサチレーションを起こしている画素が含まれることもある。したがって、サチレーション判定処理Ｓ３５０−５を実行することにより、太陽光の反射により特定された発光源候補、つまり、太陽光の反射によって発光源候補と誤って特定（誤認識）された発光源候補を判定することが可能となる。
【００７５】
図１３は、太陽光反射判定処理Ｓ３５０−６を示すフローチャートである。図１３に示すように、ブレーキランプ特定部１７０は、発光源候補が太陽光の反射により発光源候補として特定されたか否かを判定する（Ｓ３５０−６−１）。具体的に説明すると、ブレーキランプ特定部１７０は、先行車両の車両領域うち、Ｒ成分が例えば１２０以上の画素数が所定の閾値ＴＨｂ以上であり、かつ、上記学習ロジック処理Ｓ３４０と同様の技術で生成したＲ成分のみの面積ヒストグラムにおいて、最も小さい面積区分の度数が所定の閾値ＴＨｃ（例えば、１）以上であるかを判定する（Ｓ３５０−６−１）。ここで、Ｒ成分のみの面積ヒストグラムを生成する際には、カラー条件として、例えば、Ｒ成分が２００を上回り、Ｇ成分が５０未満、Ｂ成分が５０未満を採用する。
【００７６】
太陽光の反射により発光源候補と特定される場合、発光源候補を構成する画素において全体的にＲ値が高くなり、かつ、Ｒ成分のみの面積ヒストグラムにおいて最も小さい面積区分の度数が１以上となる（最も小さい面積区分にピークが出現する）。一方、太陽光の反射ではなく発光源候補が特定される場合、発光源候補を構成する画素において全体的にＲ値が小さくなり、かつ、Ｒ成分のみの面積ヒストグラムにおいて最も小さい面積区分の度数が０となる（最も小さい面積区分にピークが出現しない）。したがって、ブレーキランプ特定部１７０が、Ｓ３５０−６−１の処理を実行することで、太陽光の反射によって発光源候補と誤って特定（誤認識）された発光源候補を判定することができる。
【００７７】
そして、Ｒ成分が１２０以上の画素数が閾値ＴＨｂ以上であり、かつ、Ｒ成分のみの面積ヒストグラムにおいて、最も小さい面積区分の度数が所定の閾値ＴＨｃ以上であると判定した場合（Ｓ３５０−６−１におけるＹＥＳ）、発光源候補が太陽光の反射により発光源候補として特定されたと判定する（Ｓ３５０−６−２）。一方、Ｒ成分が１２０以上の画素数が閾値ＴＨｂ未満である、または、Ｒ成分のみの面積ヒストグラムにおいて、最も小さい面積区分の度数が所定の閾値ＴＨｃ未満であると判定した場合（Ｓ３５０−６−１におけるＮＯ）、発光源候補が太陽光の反射により発光源候補として特定されたわけではないと判定する（Ｓ３５０−６−３）。
【００７８】
図１１に戻って説明すると、ブレーキランプ特定部１７０は、学習ロジック処理Ｓ３４０において蓄積された面積ヒストグラムと先行車両の加減速を勘案した、１対のブレーキランプが消灯していると想定される面積区分のＲ成分の面積換算値が所定の閾値ＴＨｄ以上であるか、または、上記太陽光反射判定処理Ｓ３５０−６において発光源候補が太陽光反射によって特定されたと判定されたかを判定する（Ｓ３５０−７）。ここで、閾値ＴＨｄは、例えば、学習ロジック処理Ｓ３４０において蓄積された面積ヒストグラムと先行車両の加減速を勘案した、１対のブレーキランプが消灯していると想定される面積区分のＲ成分の面積換算値が、太陽光反射を起こしていると推定されるときに取りうる値となるように予め設定される値である。太陽光反射を起こしていると推定されるときに取りうる値は、例えば１の発光源候補が点灯している場合に取りうるＲ成分の個別面積換算値未満である。
【００７９】
そして、ブレーキランプ特定部１７０は、学習ロジック処理Ｓ３４０において蓄積された面積ヒストグラムと先行車両の加減速を勘案した、１対のブレーキランプが消灯していると想定される面積区分のＲ成分の面積換算値が閾値ＴＨｄ以上である、または、発光源候補が太陽光反射によって特定されたと判定された場合（Ｓ３５０−７におけるＹＥＳ）、連続点灯カウンタ値判定処理Ｓ３５０−１１に移る。一方、ブレーキランプ特定部１７０は、学習ロジック処理Ｓ３４０において蓄積された面積ヒストグラムと先行車両の加減速を勘案した、１対のブレーキランプが消灯していると想定される面積区分のＲ成分の面積換算値が閾値ＴＨｄ未満であり、かつ、発光源候補が太陽光反射によって特定されていないと判定された場合（Ｓ３５０−７におけるＮＯ）、連続点灯カウンタ値判定処理Ｓ３５０−８に移る。
【００８０】
上記太陽光反射確認処理Ｓ３５０−７を実行することにより、太陽光の反射により特定された発光源候補、つまり、太陽光の反射によって発光源候補と誤って特定（誤認識）された発光源候補を判定することが可能となる。
【００８１】
そして、ブレーキランプ特定部１７０は、上記Ｓ３５０−３においてＹＥＳ、Ｓ３５０−４においてＹＥＳ、Ｓ３５０−５においてＮＯ、Ｓ３５０−７においてＮＯである場合に、それぞれの発光源候補に対応付けられて記憶されている連続点灯カウンタＲＴのカウンタ値に２加算する（Ｓ３５０−８）。ここで、連続点灯カウンタＲＴは、発光源候補が連続して点灯していることを、その値の大小で示すものであり、連続点灯カウンタＲＴの値が大きくなるにつれて、対応付けられた発光源候補がより長い期間点灯していることを表す。また、連続点灯カウンタＲＴは、例えば、上限８０、下限０といったように、上下限が設けられている。このように、上下限を設けることで、発光源候補を検出していない期間や、発光源候補を検出している期間が長時間に亘ったとしても点数の絶対値が大きくなることがなく、発光源候補の点灯の検出の有無が切り替わった場合に、迅速に、その点灯の有無を判定することが可能となる。なお、連続点灯カウンタＲＴは、点灯仮判定処理Ｓ３５０が実行される度に更新される。
【００８２】
そして、ブレーキランプ特定部１７０は、連続点灯カウンタＲＴのカウンタ値が８０を上回るか否かを判定する（Ｓ３５０−９）。連続点灯カウンタＲＴのカウンタ値が８０を上回る場合（Ｓ３５０−９におけるＹＥＳ）、連続点灯カウンタＲＴのカウンタ値を８０にセットし、発光源候補に対応づけて連続点灯カウンタＲＴのカウンタ値を記憶（更新）する（Ｓ３５０−１０）。一方、連続点灯カウンタＲＴのカウンタ値が８０以下である場合（Ｓ３５０−９におけるＮＯ）、現在のカウンタ値を、発光源候補に対応づけて記憶（更新）する。
【００８３】
一方、ブレーキランプ特定部１７０は、上記Ｓ３５０−３においてＮＯ、Ｓ３５０−４においてＮＯ、Ｓ３５０−５においてＹＥＳ、Ｓ３５０−７においてＹＥＳである場合に、連続点灯カウンタＲＴのカウンタ値から１０減算する（Ｓ３５０−１１）。そして、ブレーキランプ特定部１７０は、連続点灯カウンタＲＴのカウンタ値が０未満であるか否かを判定する（Ｓ３５０−１２）。連続点灯カウンタＲＴのカウンタ値が０未満である場合（Ｓ３５０−１２におけるＹＥＳ）、連続点灯カウンタＲＴのカウンタ値を０にセットし、発光源候補に対応づけて記憶（更新）する（Ｓ３５０−１３）。一方、連続点灯カウンタＲＴのカウンタ値が０未満でない場合（Ｓ３５０−１２におけるＮＯ）、現在のカウンタ値を、発光源候補に対応づけて記憶（更新）する。
【００８４】
続いて、ブレーキランプ特定部１７０は、先行車両の車両領域に対応付けられたすべての発光源候補についてＳ３５０−２からＳ３５０−１３までの処理を実行したか否か、すなわち、候補数カウンタＣＮが最大値ｍａｘ以上であるか否かを判定する（Ｓ３５０−１４）。そして、最大値ｍａｘ以上でなければ（Ｓ３５０−１４におけるＮＯ）、現在の値を１インクリメントして（Ｓ３５０−１５）、Ｓ３５０−２からの処理を繰り返す。一方、ブレーキランプ特定部１７０は、候補数カウンタＣＮが最大値ｍａｘ以上であると判定すると（Ｓ３５０−１４におけるＹＥＳ）、個々ランプフラグをＯＦＦして、当該点灯仮判定処理Ｓ３５０を終了する。
【００８５】
以上説明したように、点灯仮判定処理Ｓ３５０では、各発光源候補について、ブレーキランプとして点灯しているか否かを仮判定し、点灯していると仮判定した場合には、連続点灯カウンタＲＴのカウント値をインクリメントしていく。一方、ブレーキランプとして点灯していないと判定した場合には、連続点灯カウンタＲＴのカウント値をデクリメントしていく。
【００８６】
（ブレーキランプ判定処理Ｓ３６０）
図１４、図１５、図１６は、ブレーキランプ判定処理Ｓ３６０を示すフローチャートである。なお、図１４、図１５、図１６において、実質的に等しい処理に関しては、同一の符号を付して説明を省略する。なお、ブレーキランプ判定処理Ｓ３６０では、先行車両について、前回までの判定で両付のブレーキランプを検出していることを示す両付フラグ、先行車両について、前回までの判定で片付のブレーキランプを検出していることを示す片付フラグを用いる。また、ブレーキランプ判定処理Ｓ３６０では、現在のフレームにおいて、先行車両のブレーキランプが点灯していることを示すランプ点灯フラグ、発光源候補が点灯していることを示す仮点灯フラグを用いる。
【００８７】
ここで、両付フラグがＴｒｕｅ（以下、単に「Ｔ」で示す）は、先行車両について両付のブレーキランプを検出していることを示し、両付フラグがＦａｌｓｅ（以下、単に「Ｆ」で示す）は、先行車両について両付のブレーキランプを検出していないことを示す。片付フラグがＴは、先行車両について片付のブレーキランプを検出していることを示し、片付フラグがＦは、先行車両について片付のブレーキランプを検出していないことを示す。なお、両付フラグと片付フラグは排他的であり、両付フラグがＴの場合片付フラグは必ずＦであり、片付フラグがＴの場合両付フラグは必ずＦである。
【００８８】
また、ランプ点灯フラグがＯＮは、先行車両のブレーキランプが点灯していることを示し、ランプ点灯フラグがＯＦＦは、先行車両のブレーキランプが消灯している（点灯していない）ことを示す。仮点灯フラグがＯＮは、発光源候補が点灯していることを示し、仮点灯フラグがＯＦＦは、発光源候補が消灯している（点灯していない）ことを示す。なお、ランプ点灯フラグは、初期状態においてＯＦＦとなっている。
【００８９】
また、ブレーキランプ判定処理Ｓ３６０では、両付フラグがＴかつランプ点灯フラグがＯＮ、両付フラグがＴかつランプ点灯フラグがＯＦＦ、片付フラグがＴかつランプ点灯フラグがＯＮ、片付フラグがＴかつランプ点灯フラグがＯＦＦ、両付フラグおよび片付フラグがＦかつランプ点灯フラグがＯＦＦの５の結果のうちいずれかの結果が得られることとなる。
【００９０】
ブレーキランプ特定部１７０は、車両領域の占有面積に対する、すべての発光源候補の占有面積の合計の割合（以下、「合計面積換算値」と称する）が、上記閾値ＴＨｌｏｗ以上であるか否かを判定する（Ｓ３６０−１）。そして、合計面積換算値が閾値ＴＨｌｏｗ以上であると判定した場合（Ｓ３６０−１におけるＹＥＳ）、ブレーキランプ特定部１７０は、フラグ判定処理Ｓ３６０−２へ移る。一方、合計面積換算値が閾値ＴＨｌｏｗ未満であると判定した場合（Ｓ３６０−１におけるＮＯ）、ブレーキランプ特定部１７０は、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【００９１】
かかる合計面積換算値判定処理Ｓ３６０−１を実行することにより、消灯しているブレーキランプ、点灯から消灯へ向かう消灯過程のブレーキランプ、および、消灯しているが連続点灯カウンタＲＴがまだ０を上回っているブレーキランプについて、下記Ｓ３６０−２以降の処理の実行を回避することができ、処理負荷を低減することが可能となる。
【００９２】
ブレーキランプ特定部１７０は、両付フラグがＦであり、かつ、片付フラグがＦであるか否かを判定する（Ｓ３６０−２）。そして、両付フラグおよび片付フラグがＦであると判定した場合（Ｓ３６０−２におけるＹＥＳ）、ブレーキランプ特定部１７０は、ペア点灯判定処理Ｓ３６０−３に移る。一方、両付フラグおよび片付フラグのいずれか一方がＦではない、すなわち、両付フラグおよび片付フラグのいずれか一方がＴであると判定した場合（Ｓ３６０−２におけるＮＯ）、図１５に示す片付フラグ判定処理Ｓ３６０−２１に移る。
【００９３】
そして、ブレーキランプ特定部１７０は、発光源候補が他の発光源候補と予め定められたペア条件を満たすか否かを判定する（Ｓ３６０−３）。具体的に説明すると、ブレーキランプ特定部１７０は、下記（１）に示す条件を満たし、かつ、下記（２−１）および（２−２）のいずれか一方の条件を満たした場合、ペア条件を満たすと判定する。
【００９４】
（１）の条件は、合計面積換算値が、上記学習ロジック処理Ｓ３４０で導出された閾値ＴＨｈｉｇｈ以上であることである。
【００９５】
また、（２−１）の条件は、上記学習ロジック処理Ｓ３４０で、ブレーキランプが点灯していると０．８ｓｅｃ以上判定されたこと、すなわち、０．８ｓｅｃ（第１期間）以上点灯している発光源候補が、他の発光源候補とブレーキランプを構成すると判定されたことである。
【００９６】
上述したように、本実施形態において、撮像装置１１０は、２０ｆｐｓ（５０ｍｓｅｃごと）で画像データ（第１画像および第２画像）を生成している。したがって、第１画像、もしくは、第２画像に対して、１００ｍｓｅｃごとに学習ロジック処理Ｓ３４０が実行される。したがって、上述した学習ロジック処理Ｓ３４０において、ブレーキランプが点灯していると、８回以上連続して判定されたことをもって、０．８ｓｅｃ以上点灯している発光源候補が、他の発光源候補とブレーキランプを構成すると判定する。
【００９７】
（２−２）の条件は、消灯型ウィンカーチェック処理が遂行中であることを示す消灯型ウィンカーチェック処理中であり、消灯型ウィンカーチェック処理において０．２ｓｅｃ以上連続してブレーキランプと判定されたことである。ここで、消灯型ウィンカーは、ブレーキランプを構成する一方の発光源を所定の点滅周期で点滅させる（例えば、０．５ｓｅｃ点灯、０．５ｓｅｃ消灯の繰り返し）ことで、ブレーキランプにウィンカーとしての機能を担わせたものである。したがって、消灯型ウィンカーを採用する車両では、ブレーキ中で、かつ、一方のブレーキランプ（消灯型ウィンカー）を点滅させている場合には、両方のブレーキランプが０．５ｓｅｃ点灯、一方のブレーキランプが０．５ｓｅｃ点灯を繰り返すことになる。また、ブレーキをかけていない状態で、一方のブレーキランプ（消灯型ウィンカー）を点滅させている場合には、一方のブレーキランプが０．５ｓｅｃ点灯、両方のブレーキランプが０．５ｓｅｃ消灯を繰り返すことになる。
【００９８】
そこで、消灯型ウィンカーチェック処理として、連続した８回の学習ロジック処理Ｓ３４０において、いずれかのタイミングで２回以上連続して（０．２ｓｅｃ以上連続して）１対のブレーキランプが両方点灯していると判定されたか否かを判定する処理を実行する。消灯型ウィンカーチェック処理の開始条件は、前回の撮像タイミングで、配置判定部１６８による判定処理（Ｓ３２６）の結果、発光源候補が他の発光源候補を対（ペア）を構成できると判定され、かつ、ブレーキランプ特定処理Ｓ３２８の結果、先行車両のブレーキランプが点灯していると、所定期間（例えば０．２ｓｅｃ）以上連続して特定されたことである。また、消灯型ウィンカーチェック処理の終了条件は、配置判定部１６８による判定処理（Ｓ３２６）の結果、発光源候補が他の発光源候補を対（ペア）を構成できないとする判定結果が所定期間（例えば０．８ｓｅｃ）以上連続して導出されたこと、もしくは、消灯型ウィンカーチェック処理の開始時に記憶した、対を構成する発光源候補が両方とも消灯したことである。
【００９９】
なお、消灯型ウィンカーチェック処理において２回以上連続して点灯していると判定すると、ブレーキランプが点灯していると判定し、２回以上連続して点灯していないと判定するとブレーキランプが点灯していないと判定する。ウィンカーの点灯時間は、０．２５ｓｅｃ〜１ｓｅｃ未満（毎分６０回以上１２０回以下の点滅）であるため、（２−１）、（２−２）のいずれか一方の条件を満たすことで、消灯型ウィンカーにおいて、ブレーキランプとして機能しておらず、ウィンカーとして機能している場合を排除することができる。
【０１００】
ペア点灯判定処理Ｓ３６０−３の結果、発光源候補が上記ペア条件を満たすと判定すると（Ｓ３６０−３におけるＹＥＳ）、ブレーキランプ特定部１７０は、両付フラグをＴにし、片付フラグをＦにする（Ｓ３６０−４）。そして、ブレーキランプ特定部１７０は、ランプ点灯フラグをＯＮして（Ｓ３６０−５）、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【０１０１】
一方、ペア点灯判定処理Ｓ３６０−３の結果、発光源候補が上記ペア条件を満たさないと判定すると（Ｓ３６０−３におけるＮＯ）、ブレーキランプ特定部１７０は、車両領域に対応付けられた、１または複数の発光源候補の数を取得し、発光源候補の数を候補数カウンタＣＮが取り得る最大値ｍａｘとして記憶する。そして、ブレーキランプ特定部１７０は、１または複数の発光源候補から、１の発光源候補を取得し、候補数カウンタＣＮに１をセットする（Ｓ３６０−６）。
【０１０２】
そして、ブレーキランプ特定部１７０は、連続点灯カウンタＲＴのカウンタ値が４０以上であるか否かを判定する（Ｓ３６０−７）。上述したように、本実施形態において、１００ｍｓｅｃごとにブレーキランプ特定処理Ｓ３２８が実行される。ここで、上述した点灯仮判定処理Ｓ３５０において、発光源候補の点灯が判定されると連続点灯カウンタＲＴのカウンタ値が２加算されることから、連続点灯カウンタ値判定処理Ｓ３６０−７では、発光源候補が２ｓｅｃ（４０×１００ｍｓｅｃ／２、第２期間）以上点灯していると判定されたか否かを判定していることとなる。
【０１０３】
連続点灯カウンタ値判定処理Ｓ３６０−７を実行することにより、太陽光の反射によって発光源候補と誤って特定された発光源候補や、消灯型ウィンカーが、ブレーキランプとして機能しておらず、ウィンカーとして機能している場合を排除し、片付ブレーキランプを精度よく特定することができる。
【０１０４】
連続点灯カウンタ値判定処理Ｓ３６０−７の結果、連続点灯カウンタＲＴのカウンタ値が４０以上であると判定すると（Ｓ３６０−７におけるＹＥＳ）、ブレーキランプ特定部１７０は、発光源候補に対して仮点灯フラグをＯＮして（Ｓ３６０−８）、候補数カウンタ値判定処理（Ｓ３６０−９）に移る。一方、連続点灯カウンタＲＴのカウンタ値が４０未満であると判定すると（Ｓ３６０−７におけるＮＯ）、発光源候補に対して仮点灯フラグをＯＮにせず（ＯＦＦにして）、ブレーキランプ特定部１７０は、候補数カウンタ値判定処理（Ｓ３６０−９）に移る。
【０１０５】
続いて、ブレーキランプ特定部１７０は、先行車両の車両領域に対応付けられたすべての発光源候補についてＳ３６０−７、Ｓ３６０−８の処理を実行したか否か、すなわち、候補数カウンタＣＮが最大値ｍａｘ以上であるか否かを判定する（Ｓ３６０−９）。そして、最大値ｍａｘ以上でなければ（Ｓ３６０−９におけるＮＯ）、現在の値を１インクリメントして（Ｓ３６０−１０）、連続点灯カウンタ値判定処理Ｓ３６０−７からの処理を繰り返す。
【０１０６】
一方、ブレーキランプ特定部１７０は、候補数カウンタＣＮが最大値ｍａｘ以上であると判定すると（Ｓ３６０−９におけるＹＥＳ）、仮点灯フラグがＯＮである発光源候補があるか否かを判定する（Ｓ３６０−１１）。仮点灯フラグがＯＮである発光源候補がある場合（Ｓ３６０−１１におけるＹＥＳ）、ブレーキランプ特定部１７０は、片付フラグをＴにし、両付フラグをＦにする（Ｓ３６０−１２）。そして、ブレーキランプ特定部１７０は、ランプ点灯フラグをＯＮし（Ｓ３６０−１３）、仮点灯フラグをＯＦＦして、当該ブレーキランプ判定処理Ｓ３６０を終了する。一方、仮点灯フラグがＯＮである発光源候補がない場合（Ｓ３６０−１１におけるＮＯ）、ブレーキランプ特定部１７０は、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【０１０７】
上記フラグ判定処理Ｓ３６０−２において、両付フラグおよび片付フラグのいずれか一方がＦではないと判定した場合（Ｓ３６０−２におけるＮＯ）、図１５に示すように、ブレーキランプ特定部１７０は、片付フラグがＴであるか否かを判定する（Ｓ３６０−２１）。そして、片付フラグがＴである場合（Ｓ３６０−２１におけるＹＥＳ）、ペア点灯判定処理Ｓ３６０−２３に処理を移し、片付フラグがＴでない場合（Ｓ３６０−２１におけるＮＯ）、図１６に示すペア点灯判定処理Ｓ３６０−２３に移る。
【０１０８】
ペア点灯判定処理Ｓ３６０−２３は、ブレーキランプ特定部１７０が、上記（１）に示す条件を満たし、かつ、（２−１）の条件を満たすか否か判定する処理である（Ｓ３６０−２３）。そして、ブレーキランプ特定部１７０は、ペア点灯判定処理Ｓ３６０−２３の結果、上記（１）の条件を満たし、かつ、（２−１）の条件を満たした場合（Ｓ３６０−２３におけるＹＥＳ）、両付フラグＴ片付フラグＦ処理Ｓ３６０−４、ランプ点灯フラグＯＮ処理Ｓ３６０−５を実行して、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【０１０９】
一方、ペア点灯判定処理Ｓ３６０−２３の結果、上記（１）および（２−１）の条件を満たしていない場合（Ｓ３６０−２３におけるＮＯ）、ブレーキランプ特定部１７０は、候補数カウンタセット処理Ｓ３６０−６を実行した後、連続点灯カウンタ値判定処理Ｓ３６０−２５を実行する。
【０１１０】
ここで、連続点灯カウンタ値判定処理Ｓ３６０−２５は、連続点灯カウンタＲＴのカウンタ値が１６以上であるか否かを判定する処理である（Ｓ３６０−２５）。つまり、ブレーキランプ特定部１７０は、発光源候補が０．８ｓｅｃ（１６×１００ｍｓｅｃ／２、第３期間）以上点灯していると判定されたか否かを判定している。
【０１１１】
連続点灯カウンタ値判定処理Ｓ３６０−２５の結果、連続点灯カウンタＲＴのカウンタ値が１６以上であると判定すると（Ｓ３６０−２５におけるＹＥＳ）、ブレーキランプ特定部１７０は、発光源候補に対して仮点灯フラグをＯＮして（Ｓ３６０−８）、候補数カウンタ値判定処理（Ｓ３６０−９）に移る。一方、連続点灯カウンタＲＴのカウンタ値が１６未満であると判定すると（Ｓ３６０−２５におけるＮＯ）、発光源候補に対して仮点灯フラグをＯＮにせず（ＯＦＦにして）、ブレーキランプ特定部１７０は、候補数カウンタ値判定処理（Ｓ３６０−９）に移る。
【０１１２】
このように、当該連続点灯カウンタ値判定処理Ｓ３６０−２５は、先行車両の車両領域に片付のブレーキランプがあると既に判定されているため（Ｓ３６０−２１におけるＹＥＳ）、上記連続点灯カウンタ値判定処理Ｓ３６０−７と比較して、仮点灯フラグをＯＮするための閾値（点灯とみなす時間、第３期間）を短く設定している。これにより、少なくとも一度、片付フラグがＴになった車両領域（片付のブレーキランプがあると判定した車両）を迅速に判定することができる。また、太陽光の反射が不安定な場合、当該連続点灯カウンタ値判定処理Ｓ３６０−２５を実行することにより、つまり、連続点灯時間を観測することで、太陽光の反射によって発光源候補と誤って特定された発光源候補を排除することができる。
【０１１３】
そして、ブレーキランプ特定部１７０は、候補数カウンタＣＮが最大値ｍａｘ以上であるか否かを判定し（Ｓ３６０−９）、最大値ｍａｘ以上でなければ（Ｓ３６０−９におけるＮＯ）、現在の値を１インクリメントして（Ｓ３６０−１０）、連続点灯カウンタ値判定処理Ｓ３６０−２５からの処理を繰り返す。
【０１１４】
一方、ブレーキランプ特定部１７０は、候補数カウンタ値判定処理Ｓ３６０−９の結果、候補数カウンタＣＮが最大値ｍａｘ以上であると判定すると（Ｓ３６０−９におけるＹＥＳ）、仮点灯フラグがＯＮである発光源候補があるか否かを判定する（Ｓ３６０−１１）。仮点灯フラグがＯＮである発光源候補がある場合（Ｓ３６０−１１におけるＹＥＳ）、ブレーキランプ特定部１７０は、ランプ点灯フラグをＯＮにして（Ｓ３６０−１３）、当該ブレーキランプ判定処理Ｓ３６０を終了する。一方、仮点灯フラグがＯＮである発光源候補がない場合（Ｓ３６０−１１におけるＮＯ）、ブレーキランプ特定部１７０は、ランプ点灯フラグをＯＦＦにして（Ｓ３６０−２７）、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【０１１５】
上記片付フラグ判定処理Ｓ３６０−２１において、片付フラグがＴでないと判定した場合、すなわち、両付フラグがＴである場合（Ｓ３６０−２１におけるＮＯ）、図１６に示すように、ブレーキランプ特定部１７０は、ペア点灯判定処理Ｓ３６０−２３を実行する。そして、ペア点灯判定処理Ｓ３６０−２３の結果、上記（１）および（２−１）の条件を満たした場合（Ｓ３６０−２３におけるＹＥＳ）、ブレーキランプ特定部１７０は、ランプ点灯フラグＯＮ処理Ｓ３６０−５を実行して、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【０１１６】
一方、ペア点灯判定処理Ｓ３６０−２３の結果、上記（１）の条件、または、（２−１）の条件を満たしていない場合（Ｓ３６０−２３におけるＮＯ）、ブレーキランプ特定部１７０は、候補数カウンタセット処理Ｓ３６０−６を遂行した後、連続点灯カウンタ値判定処理Ｓ３６０−３１を実行する。ここで、連続点灯カウンタ値判定処理Ｓ３６０−３１は、連続点灯カウンタＲＴのカウンタ値が１６以上であるか（発光源候補が０．８ｓｅｃ（１６×１００ｍｓｅｃ／２、第３期間、第４期間）以上点灯していると判定されたか否か）、または、下記（３）の条件を満たすかを判定する処理である。
【０１１７】
（３）の条件は、消灯型ウィンカーチェック処理が遂行中であることを示す消灯型ウィンカーチェック処理中であり、連続点灯カウンタＲＴのカウンタ値が４以上であり、さらに、配置判定部１６８による判定処理（Ｓ３２６）の結果、発光源候補が他の発光源候補を対（ペア）を構成できないと判定された期間が０．８ｓｅｃ以下であることである。
【０１１８】
連続点灯カウンタ値判定処理Ｓ３６０−３１を実行することにより、消灯型ウィンカーが、ブレーキランプとして機能しておらず、ウィンカーとして機能している場合を排除することができる。
【０１１９】
連続点灯カウンタ値判定処理Ｓ３６０−３１の結果、連続点灯カウンタＲＴのカウンタ値が１６以上である、または、上記（３）の条件を満たすと判定すると（Ｓ３６０−３１におけるＹＥＳ）、ブレーキランプ特定部１７０は、発光源候補に対して仮点灯フラグをＯＮして（Ｓ３６０−８）、候補数カウンタ値判定処理（Ｓ３６０−９）に移る。一方、連続点灯カウンタＲＴのカウンタ値が１６未満であり、上記条件（３）を満たさないと判定すると（Ｓ３６０−３１におけるＮＯ）、発光源候補に対して仮点灯フラグをＯＮにせず（ＯＦＦにして）、ブレーキランプ特定部１７０は、候補数カウンタ値判定処理（Ｓ３６０−９）に移る。
【０１２０】
そして、ブレーキランプ特定部１７０は、候補数カウンタＣＮが最大値ｍａｘ以上であるか否かを判定し（Ｓ３６０−９）、最大値ｍａｘ以上でなければ（Ｓ３６０−９におけるＮＯ）、現在の値を１インクリメントして（Ｓ３６０−１０）、連続点灯カウンタ値判定処理Ｓ３６０−３１からの処理を繰り返す。
【０１２１】
一方、ブレーキランプ特定部１７０は、候補数カウンタ値判定処理Ｓ３６０−９の結果、候補数カウンタＣＮが最大値ｍａｘ以上であると判定すると（Ｓ３６０−９におけるＹＥＳ）、仮点灯フラグがＯＮである発光源候補があるか否かを判定する（Ｓ３６０−１１）。仮点灯フラグがＯＮである発光源候補がある場合（Ｓ３６０−１１におけるＹＥＳ）、ブレーキランプ特定部１７０は、片付判定処理Ｓ３６０−３３に移る。一方、仮点灯フラグがＯＮである発光源候補がない場合（Ｓ３６０−１１におけるＮＯ）、ブレーキランプ特定部１７０は、ランプ点灯フラグをＯＦＦにして（Ｓ３６０−２７）、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【０１２２】
片付判定処理Ｓ３６０−３３は、下記（４）の条件を満たすかを判定する処理である。（４）の条件は、配置判定部１６８による判定処理（Ｓ３２６）の結果、発光源候補が他の発光源候補を対（ペア）を構成できないと判定された期間が０．８ｓｅｃ以上であることである。
【０１２３】
片付判定処理Ｓ３６０−３３の結果、上記（４）の条件を満たすと判定すると（Ｓ３６０−３３におけるＹＥＳ）、ブレーキランプ特定部１７０は、片付フラグをＴにし、両付フラグをＦにし（Ｓ３６０−１２）、ランプ点灯フラグをＯＮにして（Ｓ３６０−１３）、当該ブレーキランプ判定処理Ｓ３６０を終了する。一方、片付判定処理Ｓ３６０−３３の結果、上記（４）の条件を満たさないと判定すると（Ｓ３６０−３３におけるＮＯ）、ブレーキランプ特定部１７０は、両付フラグをＴのまま維持し、ランプ点灯フラグをＯＮにして（Ｓ３６０−１３）、当該ブレーキランプ判定処理Ｓ３６０を終了する。
【０１２４】
（ノイズ除外処理Ｓ３７０）
図１７は、ノイズ除外処理Ｓ３７０を示すフローチャートである。ブレーキランプ特定部１７０は、ランプ点灯フラグがＯＮであるか否かを判定する（Ｓ３７０−１）。ランプ点灯フラグがＯＮであると判定した場合（Ｓ３７０−１におけるＹＥＳ）、ブレーキランプ特定部１７０は、太陽光反射判定処理Ｓ３７０−２に移る。一方、ランプ点灯フラグがＯＮではないと判定した場合（Ｓ３７０−１におけるＮＯ）、ブレーキランプ特定部１７０は、当該ノイズ除外処理Ｓ３７０を終了する。
【０１２５】
ブレーキランプ特定部１７０は、当該第２画像の直前に取得した第１画像において、先行車両の車両領域のうち、輝度が所定の閾値ＴＨｇ以上の画素の画素数が所定の閾値ＴＨｊ以上であるか否かを判定する（Ｓ３７０−２）。太陽光反射判定処理Ｓ３７０−２を実行することにより、太陽光の反射によってランプ点灯フラグがＯＮとされた場合を除外することができる。ここで、閾値ＴＨｇは、第１画像を撮像する際の露光時間、第１画像を撮像する際のシャッタのセンサのゲイン、第２画像を撮像する際の露光時間、第２画像を撮像する際のシャッタのセンサのゲイン、予め定められたＲ成分の値（例えば、１２０）に基づいて決定される。また、閾値Ｔｈｊは、実際に取得したデータに基づいて決定される。
【０１２６】
そして、ブレーキランプ特定部１７０は、輝度が閾値ＴＨｇ以上の画素数が閾値ＴＨｊ未満である場合（Ｓ３７０−２におけるＮＯ）、リアフォグ点灯判定処理Ｓ３７０−３に移る。一方、ブレーキランプ特定部１７０は、輝度が閾値ＴＨｇ以上の画素数が閾値ＴＨｊ以上である場合（Ｓ３７０−２におけるＹＥＳ）、ランプ点灯フラグＯＦＦ処理Ｓ３７０−５に移る。
【０１２７】
ブレーキランプ特定部１７０は、リアフォグランプが点灯しているか否かを判定する（Ｓ３７０−３）。具体的にブレーキランプ特定部１７０は、先行車両が動いており、先行車両が減速しておらず、かつ、発光源候補が所定時間Ｔａ以上点灯している場合、リアフォグランプが点灯していると判定する。なお、先行車両の挙動の判定については、既存の技術を参照できるので、ここでは、その詳細な説明を省略する。また、所定時間Ｔａは、実際に取得したデータに基づき、減速度が出ないままブレーキランプが点灯している時間より長めに取る（例えば、４５ｓｅｃ）とよい。なお、所定時間Ｔａは、先行車両の速度や減速度のばらつき、路面の摩擦係数μ等の走行環境によって変化させてもよい。
【０１２８】
そして、ブレーキランプ特定部１７０は、リアフォグランプが点灯していないと判定した場合（Ｓ３７０−３におけるＮＯ）、ブレーキランプ特定処理Ｓ３７０−４に移る。一方、ブレーキランプ特定部１７０は、リアフォグランプが点灯していると判定した場合（Ｓ３７０−３におけるＹＥＳ）、ランプ点灯フラグＯＦＦ処理Ｓ３７０−５に移る。
【０１２９】
そして、ブレーキランプ特定部１７０は、リアフォグランプが点灯していないと判定した場合（Ｓ３７０−３におけるＮＯ）、ランプ点灯フラグがＯＮとなっている発光源候補が存在すれば、先行車両のブレーキランプが点灯していると特定し（Ｓ３７０−４）、次回の処理のためにランプ点灯フラグをＯＦＦにして（Ｓ３７０−５）、当該ノイズ除外処理Ｓ３７０を終了する。
【０１３０】
このように、ノイズ除外処理Ｓ３７０を実行することにより、太陽光の反射によって発光源候補として特定されてしまった発光源候補や、リアフォグランプ由来の発光源候補を除外することができる。
【０１３１】
なお、車両特定部１６４ａによる先行車両（車両領域）の特定がなされない期間が所定時間以上経過すると、ブレーキランプ特定部１７０は、両付フラグおよび片付フラグをＦにする。
【０１３２】
こうして、車外環境認識装置１２０では、１対の発光源で構成されるブレーキランプのうち、一方の発光源が消灯していたり、先行車両の姿勢等によって一方の発光源が画像に映り込まなかったりする場合であってもブレーキランプの点灯を検出することが可能となる。また、学習ロジック処理Ｓ３４０でブレーキランプであると判定されないような大きさの発光源候補や、学習ロジック処理Ｓ３４０でブレーキランプであると判定されないような複雑な形状のブレーキランプであっても、ブレーキランプの点灯を検出することが可能となる。
【０１３３】
また、コンピュータを、車外環境認識装置１２０として機能させるプログラムや当該プログラムを記録した、コンピュータで読み取り可能なフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ、ＤＶＤ、ＢＤ等の記憶媒体も提供される。ここで、プログラムは、任意の言語や記述方法にて記述されたデータ処理手段をいう。
【０１３４】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明はかかる実施形態に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【０１３５】
例えば、上述した実施形態において、ブレーキランプ特定部１７０は、撮像装置１１０が生成したカラー画像に基づいてブレーキランプの点灯有無を判定しているが、モノクロ画像に基づいてブレーキランプの点灯有無を判定するとしてもよい。
【０１３６】
また、上記実施形態において、第１期間、第３期間、第４期間を実質的に等しい時間としているが、第１期間、第３期間、第４期間のうち、いずれか１または複数を異なる時間としてもよい。
【０１３７】
なお、本明細書の車外環境認識処理の各工程は、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいはサブルーチンによる処理を含んでもよい。
【産業上の利用可能性】
【０１３８】
本発明は、先行車両のブレーキの操作状態を特定する車外環境認識装置に利用することができる。
【符号の説明】
【０１３９】
１２０  車外環境認識装置
１６０  画像取得部
１６４ａ  車両特定部
１６４ｂ  発光源候補特定部
１７０  ブレーキランプ特定部
【図１】
0006335037.tif 000002
【図２】
0006335037.tif 000003
【図３】
0006335037.tif 000004
【図４】
0006335037.tif 000005
【図５】
0006335037.tif 000006
【図６】
0006335037.tif 000007
【図７】
0006335037.tif 000008
【図８】
0006335037.tif 000009
【図９】
0006335037.tif 000010
【図１０】
0006335037.tif 000011
【図１１】
0006335037.tif 000012
【図１２】
0006335037.tif 000013
【図１３】
0006335037.tif 000014
【図１４】
0006335037.tif 000015
【図１５】
0006335037.tif 000016
【図１６】
0006335037.tif 000017
【図１７】
0006335037.tif 000018