(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024173258
(43)【公開日】2024-12-12
(54)【発明の名称】信号機認識装置
(51)【国際特許分類】
G08G 1/09 20060101AFI20241205BHJP
【FI】
G08G1/09 D
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2023091569
(22)【出願日】2023-06-02
(71)【出願人】
【識別番号】000005348
【氏名又は名称】株式会社SUBARU
(74)【代理人】
【識別番号】110004185
【氏名又は名称】インフォート弁理士法人
(74)【代理人】
【識別番号】110002907
【氏名又は名称】弁理士法人イトーシン国際特許事務所
(72)【発明者】
【氏名】池田 怜央
(72)【発明者】
【氏名】古谷 剛洋
【テーマコード(参考)】
5H181
【Fターム(参考)】
5H181AA01
5H181CC04
5H181CC05
5H181LL01
5H181LL04
5H181LL09
(57)【要約】
【課題】矢印灯火器の点灯を効率良く探索することができる信号機認識装置を提供する。
【解決手段】画像認識_ECU13は、自車両Mの前方をカラー撮像した画像上において信号機本体による灯火領域を検出することにより、信号機本体の点灯中の灯火器を検出し、点灯中の灯火器に対して水平方向及び垂直方向に連なる画像上の複数の位置であって、且つ、灯火領域の灯火色に応じた特定の位置に、点灯中の灯火器と同寸法の灯火器探索領域をそれぞれ設定し、灯火器探索領域の縁辺部及び中心部における輝度を灯火器探索領域毎に評価し、信号機本体に配列された消灯中の灯火器を検出し、点灯中の灯火器及び消灯中の灯火器の配置に基づいて信号機本体の縦横配置を判定する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
自車両の前方の走行環境をカラー撮像する撮像手段と、
前記撮像手段によって撮像した画像上において、信号機本体による灯火領域を検出する灯火領域検出手段と、
前記信号機本体に配列された複数の灯火器のうちの点灯中の前記灯火器を、前記灯火領域に基づいて検出する第1の灯火器検出手段と、
前記点灯中の灯火器の水平方向及び垂直方向において前記点灯中の灯火器に連なる前記画像上の複数の位置であって、且つ、前記灯火領域の灯火色に応じた特定の位置に、前記灯火器と同寸法をなす探索領域をそれぞれ設定する第1の探索領域設定手段と、
前記探索領域の縁辺部における輝度及び前記探索領域の中心部における輝度を前記探索領域毎に評価し、前記信号機本体に配列された消灯中の前記灯火器を検出する第2の灯火器検出手段と、
前記点灯中の灯火器及び前記消灯中の灯火器の配置に基づいて、前記信号機本体が横型配置されているか或いは縦型配置されているかを判定する縦横判定手段と、を備えたことを特徴とする信号機認識装置。
【請求項2】
さらに、前記信号機本体の配置に応じて、前記信号機本体に付属する矢印灯火器の探索領域を設定する第2の探索領域設定手段を備えたことを特徴とする請求項1に記載の信号機認識装置。
【請求項3】
前記縦横判定手段は、複数フレームの前記画像上において検出された前記消灯中の灯火器の配置に基づいて、前記信号機本体が横型配置されているか或いは縦型配置されているかを判定することを特徴とする請求項1に記載の信号機認識装置。
【請求項4】
自車両の前方の走行環境をカラー撮像するカメラと、
プロセッサと、を備え、
前記プロセッサは、
前記撮像手段によって撮像した画像上において、信号機本体による灯火領域を検出し、
前記信号機本体に配列された複数の灯火器のうちの点灯中の前記灯火器を、前記灯火領域に基づいて検出し、
前記点灯中の灯火器の水平方向及び垂直方向において前記点灯中の灯火器に連なる前記画像上の複数の位置であって、且つ、前記灯火領域の灯火色に応じた特定の位置に、前記灯火器と同寸法をなす探索領域をそれぞれ設定し、
前記探索領域の縁辺部における輝度及び前記探索領域の中心部における輝度を前記探索領域毎に評価し、前記信号機本体に配列された消灯中の前記灯火器を検出し、
前記点灯中の灯火器及び前記消灯中の灯火器の配置に基づいて、前記信号機本体が横型配置されているか或いは縦型配置されているかを判定することを特徴とする信号機認識装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、走行環境を撮像した画像情報に基づいて信号機の認識を行う信号機認識装置に関する。
【背景技術】
【0002】
近年、自動車等の多くの車両は、運転支援装置を搭載している。運転支援装置は、基本的には、追従車間距離制御(ACC:Adaptive Cruise Control)機能と、車線中央維持(ALKC:Active Lane Keep Centering)制御機能等と、を備えることによって運転支援制御を実現する。このような運転支援制御により、運転支援装置は、ドライバの運転操作に対する負担の軽減、及び、走行時における安全性の向上等を実現する。
【0003】
また、運転支援装置においては、更なる利便性の向上等を目的とした様々な技術が提案されている。例えば、自車両の前方領域を撮像した画像データに基づいて信号機を認識し、認識した信号機の点灯状態に応じて、交差点等の通過時における自車両の自動停止及び自動発進等を行う技術が提案されている。
【0004】
例えば、特許文献1には、画像データに基づいて信号機を認識するための信号機認識装置が開示されている。この信号機認識装置は、標準の信号機外形を示すテンプレートを用いてテンプレートマッチングを行う。これにより、信号機認識装置は、信号機領域を設定する。また、信号機認識装置は、信号機領域において、輝度値が判定輝度値以上となる領域を灯火領域として抽出する。そして、複数の灯火領域が存在する場合、信号機認識装置は、灯火領域毎に、飽和領域の有無、及び、灯火領域の外縁形状または飽和領域の外縁形状を判定する。これらの判定により、信号機認識装置は、三灯式の信号機本体及び矢印灯火器の灯火(点灯)を判定する。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上述の特許文献1に開示された技術のように、テンプレートマッチングによって信号機領域を設定するためには、信号機の外形を示すエッジが、画像上に写し出されている必要がある。従って、特許文献1に開示された技術では、自車両から遠方に存在する信号機等のように、画像上におけるエッジが不鮮明な信号機については、信号機領域を設定することが困難となる。このため、特許文献1の技術では、信号機本体の点灯が認識されている場合にも、矢印灯火器等の探索領域を絞り込むことが困難となる虞がある。
【0007】
本発明は、矢印灯火器の点灯を効率良く探索することができる信号機認識装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の一態様による信号機認識装置は、自車両の前方の走行環境をカラー撮像する撮像手段と、前記撮像手段によって撮像した画像上において、信号機本体による灯火領域を検出する灯火領域検出手段と、前記信号機本体に配列された複数の灯火器のうちの点灯中の前記灯火器を、前記灯火領域に基づいて検出する第1の灯火器検出手段と、前記点灯中の灯火器の水平方向及び垂直方向において前記点灯中の灯火器に連なる前記画像上の複数の位置であって、且つ、前記灯火領域の灯火色に応じた特定の位置に、前記灯火器と同寸法をなす探索領域をそれぞれ設定する第1の探索領域設定手段と、前記探索領域の縁辺部における輝度及び前記探索領域の中心部における輝度を前記探索領域毎に評価し、前記信号機本体に配列された消灯中の前記灯火器を検出する第2の灯火器検出手段と、前記点灯中の灯火器及び前記消灯中の灯火器の配置に基づいて、前記信号機本体が横型配置されているか或いは縦型配置されているかを判定する縦横判定手段と、を備えたものである。
【0009】
また、本発明の他態様による信号機認識装置は、自車両の前方の走行環境をカラー撮像するカメラと、プロセッサと、を備え、前記プロセッサは、前記撮像手段によって撮像した画像上において、信号機本体による灯火領域を検出し、前記信号機本体に配列された複数の灯火器のうちの点灯中の前記灯火器を、前記灯火領域に基づいて検出し、前記点灯中の灯火器の水平方向及び垂直方向において前記点灯中の灯火器に連なる前記画像上の複数の位置であって、且つ、前記灯火領域の灯火色に応じた特定の位置に、前記灯火器と同寸法をなす探索領域をそれぞれ設定し、前記探索領域の縁辺部における輝度及び前記探索領域の中心部における輝度を前記探索領域毎に評価し、前記信号機本体に配列された消灯中の前記灯火器を検出し、前記点灯中の灯火器及び前記消灯中の灯火器の配置に基づいて、前記信号機本体が横型配置されているか或いは縦型配置されているかを判定するものである。
【発明の効果】
【0010】
本発明の信号機認識装置によれば、矢印灯火器の点灯を効率良く探索することができる。
【図面の簡単な説明】
【0011】
【
図3】黒領域判定サブルーチンを示すフローチャート
【
図4】第1の縦横判定サブルーチンを示すフローチャート
【
図5】第2の縦横判定サブルーチンを示すフローチャート
【
図7】青色灯火器が点灯された横型の信号機を例示する平面図
【
図8】青色灯火器が点灯された縦型の信号機を例示する平面図
【
図9】青色灯火器が点灯されたときの黄色灯火器及び赤色灯火器の探索領域を示す説明図
【
図10】黄色灯火器が点灯された横型の信号機を例示する平面図
【
図11】黄色灯火器が点灯された縦型の信号機を例示する平面図
【
図12】黄色灯火器が点灯されたときの青色灯火器及び赤色灯火器の探索領域を示す説明図
【
図13】赤色灯火器が点灯された横型の信号機を例示する平面図
【
図14】赤色灯火器が点灯された縦型の信号機を例示する平面図
【
図15】赤色灯火器が点灯されたときの青色灯火器及び黄色灯火器の探索領域を示す説明図
【
図16】各探索領域に設定される黒領域判定用の座標を示す説明図
【
図17】横型と判定された信号機に対する矢印灯火器探索領域を示す説明図
【
図18】縦型と判定された信号機に対する矢印灯火器探索領域を示す説明図
【
図19】縦横判定が不能な信号機に対する矢印灯火器探索領域を示す説明図
【
図20】矢印灯火器が点灯された横型の信号機を例示する平面図
【
図21】矢印灯火器が点灯された縦型の信号機を例示する平面図
【発明を実施するための形態】
【0012】
以下、図面を参照して本発明の形態を説明する。図面は本発明の一実施形態に係り、
図1は運転支援装置の全体構成図である。
【0013】
図1に示すように、運転支援装置1は、例えば、車両(自車両)Mの車室内の前部の上部中央に固定されたカメラユニット10を有して構成されている。
【0014】
このカメラユニット10は、撮像手段としてのステレオカメラ11と、画像処理ユニット(IPU)12と、画像認識ユニット(画像認識_ECU)13と、走行制御ユニット(走行_ECU)14と、を有する。
【0015】
ステレオカメラ11は、メインカメラ11aと、サブカメラ11bと、を有する。メインカメラ11a及びサブカメラ11bは、例えば、車幅方向の中央を挟んで左右対称な位置に配置されている。また、メインカメラ11a及びサブカメラ11bは、例えば、CMOS等の撮像素子及びカラーフィルタをそれぞれ有する。これにより、メインカメラ11a及びサブカメラ11bは、互いに同期された所定の撮像周期にて、車外前方の走行環境を異なる視点からカラー撮像する。
【0016】
IPU12は、ステレオカメラ11によって撮像した走行環境画像を所定に画像処理し、画像上に表された立体物や路面上の区画線等の各種対象のエッジを検出する。また、IPU12は、左右の画像上において対応するエッジの位置ズレ量から距離情報を求める。これらにより、IPU12は、距離情報を含む画像情報(距離画像情報)を生成する。
【0017】
画像認識_ECU13は、IPU12から受信した距離画像情報などに基づき、自車両Mが走行する進行路(自車進行路)の情報を求める。例えば、画像認識_ECU13は、自車進行路の左右を区画する区画線の道路曲率〔1/m〕、及び左右区画線間の幅(車線幅)を求める。さらに、画像認識_ECU13は、左右両区画線の曲率の差分から車線幅を算出する。
【0018】
また、画像認識_ECU13は、距離画像情報に対して所定のパターンマッチングなどを行い、道路に沿って延在するガードレール、縁石、及び、周辺車両等の立体物の認識を行う。ここで、画像認識_ECU13における立体物の認識では、例えば、立体物の種別、立体物までの距離、立体物の速度、立体物と自車両Mとの相対速度などの認識が行われる。
【0019】
さらに、画像認識_ECU13は、自車両Mの前方における信号機認識を行う。この信号機認識において、画像認識_ECU13は、信号機本体に配列された各灯火器(青色灯火器、黄色灯火器、及び、赤色灯火器)の点灯状態を認識する。さらに、画像認識_ECU13は、信号機本体に矢印灯火器が付加されている場合には、矢印灯火器の点灯状態についても認識する。
【0020】
このように、本実施形態において、ステレオカメラ11、IPU12、及び、画像認識_ECU13は、信号機認識装置としての一具体例に相当する。
【0021】
ここで、例えば、
図7,8に示すように、道路上に設置される信号機には、信号機本体51が横型配置された信号機50Hと、信号機本体51が縦型配置された信号機50Vと、が存在する。横型配置の信号機本体51では、当該信号機本体51を構成する青色灯火器52B、黄色灯火器52Y、及び、赤色灯火器52Rが水平方向(横方向)に配列されている。また、縦型配置の信号機本体51では、当該信号機本体51を構成する青色灯火器52B、黄色灯火器52Y、及び、赤色灯火器52Rが垂直方向(縦方向)に配列されている。
【0022】
さらに、信号機50においては、信号機本体51に矢印灯火器53が付加された信号機が存在する。例えば、赤色灯火器52Rが点灯している場合において、矢印灯火器53は、矢印によって示した特定の方向に対してのみ、車両等の通行を許可する。このような矢印灯火器53が付加されている信号機50において、赤色灯火器52Rを基準位置とする矢印灯火器53の配置は、横型配置の信号機本体51と縦型配置の信号機本体51とで異なる。
【0023】
なお、矢印灯火器53を含めた信号機50の認識については、後に詳述する。
【0024】
これら画像認識_ECU13において認識された各種情報は、走行環境情報として走行_ECU(走行_ECU)14に出力される。
【0025】
走行_ECU14は、運転支援装置1を統括制御するための制御ユニットである。
【0026】
この走行_ECU14には、各種の制御ユニットとして、例えば、エンジン制御ユニット(E/G_ECU)22と、トランスミッション制御ユニット(T/M_ECU)23と、ブレーキ制御ユニット(BK_ECU)24と、パワーステアリング制御ユニット(PS_ECU)25と、がCAN(Controller Area Network)等の車内通信回線を介して接続されている。
【0027】
E/G_ECU22の出力側には、電子制御スロットルのスロットルアクチュエータ32等が接続されている。また、E/G_ECU22の入力側には、図示しないアクセルセンサ等の各種センサ類が接続されている。
【0028】
E/G_ECU22は、走行_ECU14からの制御信号或いは各種センサ類からの検出信号等に基づき、スロットルアクチュエータ32に対する駆動制御を行う。これにより、E/G_ECU22は、エンジンの吸入空気量を調整し、所望のエンジン出力を発生させる。また、E/G_ECU22は、各種センサ類において検出されたアクセル開度等の信号を、走行_ECU14に出力する。
【0029】
T/M_ECU23の出力側には、油圧制御回路33が接続されている。また、T/M_ECU23の入力側には、図示しないシフトポジションセンサ等の各種センサ類が接続されている。T/M_ECU23は、E/G_ECU22において推定されたエンジントルク信号や各種センサ類からの検出信号等に基づき、油圧制御回路33に対する油圧制御を行う。これにより、T/M_ECU23は、自動変速機に設けられている摩擦係合要素やプーリ等を動作させ、エンジン出力を所望の変速比にて変速する。また、T/M_ECU23は、各種センサ類において検出されたシフトポジション等の信号を、走行_ECU14に出力する。
【0030】
BK_ECU24の出力側には、各車輪に設けられているブレーキホイールシリンダに出力するブレーキ液圧を各々調整するためのブレーキアクチュエータ34が接続されている。また、BK_ECU24の入力側には、図示しないブレーキペダルセンサ、ヨーレートセンサ、前後加速度センサ、及び、車速センサ等の各種センサ類が接続されている。
【0031】
BK_ECU24は、走行_ECU14からの制御信号或いは各種センサ類からの検出信号に基づき、ブレーキアクチュエータ34に対する駆動制御を行う。これにより、BK_ECU24は、自車両Mに対する強制的な制動制御やヨーレート制御等を行うためのブレーキ力を各車輪に適宜発生させる。また、BK_ECU24は、各種センサにおいて検出されたブレーキ操作状態、ヨーレート、前後加速度、及び、車速(自車速)等の信号を、走行_ECU14に出力する。
【0032】
PS_ECU25の出力側には、ステアリング機構にモータの回転力による操舵トルクを付与する電動パワステモータ35が接続されている。また、PS_ECU25の入力側には、操舵トルクセンサや舵角センサ等の各種センサ類が接続されている。
【0033】
PS_ECU25は、走行_ECU14からの制御信号或いは各種センサ類からの検出信号に基づき、電動パワステモータ35に対する駆動制御を行う。これにより、PS_ECU25は、ステアリング機構に対する操舵トルクを発生させる。また、PS_ECU25は、各種センサにおいて検出された操舵トルク、及び、舵角等の信号を、走行_ECU14に出力する。
【0034】
走行_ECU14には、運転モードとして、手動運転モードと、走行制御のためのモードである第1の走行制御モード及び第2の走行制御モードと、退避モードと、が設定されている。これらの各運転モードは、走行_ECU14において選択的に切換可能となっている。
【0035】
ここで、手動運転モードとは、ドライバによる保舵を必要とする運転モードである。手動運転モードは、例えば、ドライバによるステアリング操作、アクセル操作およびブレーキ操作などの運転操作に従って、自車両Mを走行させる運転モードである。
【0036】
また、第1の走行制御モードも同様に、ドライバによる保舵を必要とする運転モードである。すなわち、第1の走行制御モードは、ドライバによる運転操作を反映しつつ、例えば、先行車追従制御(ACC:Adaptive Cruise Control)と、車線中央維持(ALKC:Active Lane Keep Centering)制御および車線逸脱抑制(Active Lane Keep Bouncing)制御と、を適宜組み合わせて行う、いわば半自動運転モードである。
【0037】
ここで、先行車追従制御は、基本的には、画像認識_ECU13から入力される走行環境情報に基づいて行われる。すなわち、先行車追従制御は、例えば、走行環境情報に含まれる先行車情報等に基づいて行われる。
【0038】
また、車線中央維持制御および車線逸脱抑制制御は、例えば、画像認識_ECU13から入力される走行環境情報に基づいて行われる。すなわち、車線中央維持制御および車線逸脱抑制制御は、走行環境情報に含まれる車線区画線情報等に基づいて行われる。
【0039】
また、第2の走行制御モードとは、ドライバによる保舵、アクセル操作およびブレーキ操作を必要とすることなく、例えば、先行車追従制御と、車線中央維持制御および車線逸脱抑制制御とを適宜組み合わせて行うことによって、自車両Mを走行させる自動運転モードである。
【0040】
退避モードは、例えば、第2の走行制御モードによる走行中に、当該モードによる走行が継続不能となり、且つ、ドライバに運転操作を引き継ぐことができなかった場合(すなわち、手動運転モード、または、第1の走行制御モードに遷移できなかった場合)に、自車両Mを路側帯などに自動的に停止させるためのモードである。
【0041】
また、走行_ECU14は、上述の各運転モードにおいて、自車両Mと衝突する可能性の高い車両等の障害物に対し、適宜、緊急ブレーキ(AEB(Autonomous Emergency Braking):衝突被害軽減ブレーキ)制御を行う。
【0042】
さらに、走行_ECU14は、緊急ブレーキ制御によって障害物との衝突を回避することが困難であると判定した場合には、緊急ブレーキ制御に代えて或いは緊急ブレーキ制御と併用して、障害物との衝突を回避するための緊急操舵制御を行うことも可能である。
【0043】
ここで、緊急ブレーキ制御及び緊急操舵制御は、基本的には、画像認識_ECU13から入力される走行環境情報に基づいて行われる。すなわち、緊急ブレーキ制御及び緊急操舵制御は、例えば、走行環境情報に含まれる先行車や停止車両等の障害物情報に基づいて行われる。
【0044】
さらに、例えば、第2の走行制御モードの選択時において、走行_ECU14は、信号機の点灯状態に応じた自車両Mの自動停止制御及び自動発進制御を行うことも可能である。
【0045】
ここで、信号機に対する自動停止制御及び自動発進制御は、基本的には、画像認識_ECU13から入力される走行環境情報に基づいて行われる。すなわち、走行_ECU14は、例えば、走行環境情報に含まれる信号機の認識情報に基づいて、信号機に対する自動停止制御及び自動発信制御を行う。
【0046】
なお、第2の走行制御モード以外のモードの選択時において、走行_ECU14は、信号機の点灯状態等の情報を、ドライバに対して報知することも可能である。
【0047】
次に、画像認識_ECU13において行われる信号機認識の具体的な内容について、説明する。
【0048】
信号機認識処理において、画像認識_ECU13は、例えば、メインカメラ11aによって撮像されたカラー画像(例えば、
図6参照)上において、信号機本体における灯火領域を検出する。例えば、画像認識_ECU13は、カラー画像上において、青色、黄色、または、赤色の高輝度をなす領域を、灯火領域として検出する。
【0049】
この灯火領域の検出に際し、画像認識_ECU13は、例えば、IPU12において生成した距離画像情報を参照することが可能である。距離画像情報を参照することにより、画像認識_ECU13は、路面から所定以上の高さ位置において高輝度をなす領域を、信号機本体の灯火領域として検出することができる。
【0050】
また、画像認識_ECU13は、信号機本体に配列された複数(例えば、3個)の灯火器のうち、点灯中の灯火器を検出する。
【0051】
このような灯火器の検出は、例えば、灯火領域に基づいて行われる。例えば、画像認識_ECU13は、画像上において検出した灯火領域が灯火器の灯火部に一致すると仮定して、信号機本体において点灯中の灯火部を検出する。さらに、画像認識_ECU13は、検出した灯火部に基づいて、灯火器全体の寸法を推定する。例えば、画像認識_ECU13は、一般的な灯火器における灯火部とフレーム部(筐体)との寸法比に基づき、灯火部の周囲を囲む矩形のフレーム部の寸法を算出する。これにより、画像認識_ECU13は、灯火部及びフレーム部を含む灯火器全体の寸法を推定する。
【0052】
また、画像認識_ECU13は、検出した灯火器の水平方向(横方向)及び垂直方向(縦方向)において当該灯火器に連なる画像上の複数の位置に、複数の灯火器探索領域を設定する。これらの灯火器探索領域は、信号機本体において消灯中の他の灯火器を探索するための領域である。このため、画像認識_ECU13は、画像上における各灯火器探索領域の寸法を、点灯中の灯火器と同寸法に設定する。また、画像認識_ECU13は、点灯中の灯火器に対する各灯火器探索領域の相対位置を、灯火領域の灯火色に応じて特定する。
【0053】
例えば、
図7に示すように、横型配置の信号機本体51において、青色灯火器52Bが点灯している場合、消灯中の他の灯火器(黄色灯火器52Y及び赤色灯火器52R)は、共に青色灯火器52Bの右側に配列される。一方、例えば、
図8に示すように、縦型配置の信号機本体51において、青色灯火器52Bが点灯している場合、消灯中の他の灯火器(黄色灯火器52Y及び赤色灯火器52R)は、共に青色灯火器52Bの上側に配列される。これら各信号機本体51における各灯火器52の法規上のレイアウトに基づき、画像認識_ECU13は、画像上において、青色灯火器52Bの右側及び上側に、それぞれ2つの灯火器探索領域55を設定する(
図9参照)。
【0054】
また、例えば、
図10に示すように、横型配置の信号機本体51において、黄色灯火器52Yが点灯している場合、消灯中の他の灯火器(青色灯火器52B及び赤色灯火器52R)は、黄色灯火器52Yの左右に配列される。一方、例えば、
図11に示すように、縦型配置の信号機本体51において、黄色灯火器52Yが点灯している場合、消灯中の他の灯火器(青色灯火器52B及び赤色灯火器52R)は、黄色灯火器52Yの上下に配列される。これら各信号機本体51における各灯火器52の法規上のレイアウトに基づき、画像認識_ECU13は、画像上において、黄色灯火器52Yの左側、右側、上側、及び、下側に、それぞれ1つの灯火器探索領域55を設定する(
図12参照)。
【0055】
また、例えば、
図13に示すように、横型配置の信号機本体51において、赤色灯火器52Rが点灯している場合、消灯中の他の灯火器(青色灯火器52B及び黄色灯火器52Y)は、共に赤色灯火器52Rの左側に配列される。一方、例えば、
図14に示すように、縦型配置の信号機本体51において、赤色灯火器52Rが点灯している場合、消灯中の他の灯火器(青色灯火器52B及び黄色灯火器52Y)は、共に赤色灯火器52Rの下側に配列される。これら各信号機本体51における各灯火器52の法規上のレイアウトに基づき、画像認識_ECU13は、画像上において、赤色灯火器52Rの左側及び下側に、それぞれ2つの灯火器探索領域55を設定する(
図15参照)。
【0056】
さらに、画像認識_ECU13は、設定した各灯火器探索領域55に対し、それぞれ、複数の黒領域判定用座標を設定する。
【0057】
ここで、一般に、各灯火器52のフレーム部は、薄いグレーや白色等の比較的明るい色にて塗装されている。一方、各灯火器52の灯火部は、消灯時においてフレーム部よりも暗く、黒色に近い色となる。従って、画像上におけるフレーム部の輝度は、消灯時の灯火部の輝度よりも相対的に高くなる。換言すれば、消灯時の灯火部は、画像上において、フレーム部よりも暗い黒領域を形成する。そこで、このような黒領域を判定するため、画像認識_ECU13は、灯火器探索領域55の縁辺部、及び、灯火器探索領域55の中心部に、黒領域判定用座標を設定する。
【0058】
より具体的には、本実施形態における画像認識_ECU13は、例えば、灯火器探索領域55の四隅の近傍に、黒領域判定用座標c0,c1,c2,c3をそれぞれ設定する。また、画像認識_ECU13は、例えば、灯火器探索領域55の中心部の5箇所に、黒領域判定用座標c4,c5,c6,c7をそれぞれ設定する。
【0059】
例えば、
図16に示すように、灯火器探索領域55の横方向の座標をiと定義し、灯火器探索領域の縦方向の座標をjと定義した場合、各灯火器探索領域55の座標は、以下のように表すことが可能である。
【0060】
c0:(is+α,je-α)
c1:(is+α,js+α)
c2:(ie-α,js+α)
c3:(ie-α,je-α)
c4:(ic,jc)
c5:(ic-α,jc+α)
c6:(ic-α,jc-α)
c7:(ic+α,jc-α)
c8:(ic+α,jc+α)
ここで、isは、灯火器探索領域55のi軸方向における始点を示す。また、ieは、灯火器探索領域55のi軸方向における終点を示す。また、icは、灯火器探索領域55のi軸方向における中心点を示す。また、jsは、灯火器探索領域55のj軸方向における始点を示す。また、jeは、灯火器探索領域55のj軸方向における終点を示す。また、jcは、灯火器探索領域55のi軸方向における中心点を示す。また、αは、画像上における所定画素数(例えば、1画素以上の微小画素)を示す。
【0061】
黒領域判定座標を設定すると、画像認識_ECU13は、例えば、以下の(第1の条件)~(第4の条件)に基づいて、灯火器探索領域55の中心部に黒領域が存在するか否かを判定する。
【0062】
(第1の条件)周辺輝度Lnが第1の閾値Lth1を超えていること。すなわち、画像認識_ECU13は、例えば、黒領域判定用座標c0~c3における輝度の平均値を周辺輝度Lnとして算出する。そして、画像認識_ECU13は、周辺輝度Lnが第1の閾値Lth1未満の場合には、現在処理中の灯火器探索領域55を、灯火器探索対象から排除する。これにより、画像認識_ECU13は、高架下や夜間等のような暗すぎる条件での灯火器探索を回避する。周辺輝度が低すぎる場合には、フレーム部によって構成される周辺部と、灯火部によって形成される中心部と、の輝度を用いた区別が困難なためである。
【0063】
(第2の条件)中心輝度Lcが第2の閾値Lth2(但し、Lth2≦Lth1)を超えていないこと。すなわち、画像認識_ECU13は、例えば黒領域判定用座標c4~c8における輝度の平均値を中心輝度Lcとして算出する。そして、画像認識_ECU13は、中心輝度Lcが第2の閾値Lht2よりも大きい場合には、灯火器探索領域55の中心部に黒領域が存在しないと判断する。
【0064】
(第3の条件)中心輝度Lcよりも周辺輝度Lnが高いこと。すなわち、上述した通り、大半の信号機本体において、灯火器のフレーム部は白色等の明るい色を有し、灯火器の灯火部は消灯時に黒色等の暗い色を有する。そこで、画像認識_ECU13は、中心輝度Lcよりも周辺輝度Lnが低い場合には、灯火器探索領域55の中心部に黒領域が存在しないと判断する。
【0065】
(第4の条件)中心部におけるRGB輝度比が、カメラの仕様等に応じて設定したRGB輝度比の範囲内であること。すなわち、画像認識_ECU13には、例えば、消灯時の灯火部を撮像した際のRGB輝度比の範囲が、カメラの仕様等に基づいて予め設定されている。そこで、画像認識_ECU13は、中心部におけるRGB輝度比が、カメラの仕様等に応じて設定したRGB輝度比の範囲外である場合には、灯火器探索領域55の中心部に黒領域が存在しないと判断する。
【0066】
このような画像上の各灯火器探索領域55に対する黒領域判定は、設定フレーム以上(例えば、3フレーム以上)に対して行われることが望ましい。
【0067】
そして、画像認識_ECU13は、例えば、複数フレーム以上の判定において、第1~第4の条件の全てを満たしている割合が所定以上となる灯火器探索領域55を、黒領域が存在する領域として検出する。換言すれば、画像認識_ECU13は、黒領域が存在すると判定した灯火器探索領域55を、消灯中の灯火器が存在する領域として検出する。
【0068】
さらに、画像認識_ECU13は、検出した消灯中の灯火器の配置に基づいて、点灯中の灯火器を含む信号機本体の配置方向を判定する。この判定において、画像認識_ECU13は、例えば、消灯中の灯火器が点灯中の灯火器の横方向に検出される頻度と、消灯中の灯火器が点灯中の縦方向に検出される頻度と、を比較する。そして、横方向に検出される頻度が縦方向に検出される頻度よりも高い場合、画像認識_ECU13は、点灯中の灯火器を含む信号機本体が横型配置であると判定する。一方、横方向に検出される頻度が縦方向に検出される頻度よりも低い場合、画像認識_ECU13は、点灯中の灯火器を含む信号機本体が縦型配置であると判定する。
【0069】
なお、このような信号機本体の縦横判定は、灯火器の点灯が切り替わったときの点灯領域の移動によっても行うことが可能である。例えば、点灯中の灯火器の切り替わりに伴って灯火領域が横方向に移動した場合、画像認識_ECU13は、点灯中の灯火器を含む信号機本体が横型配置であると判定する。一方、例えば、点灯中の灯火器の切り替わりに伴って灯火領域が縦方向に移動した場合、画像認識_ECU13は、点灯中の灯火器を含む信号機本体が縦型配置であると判定する。
【0070】
信号機本体の縦横判定を行うと、画像認識_ECU13は、信号機本体に付加される矢印灯火器の探索領域(矢印探索領域)を設定する。この矢印探索領域は、例えば、赤色灯火器52Rを基準として設定される。例えば、点灯中の灯火器として赤色灯火器52Rが検出されている場合、画像認識_ECU13は、点灯中の赤色灯火器52Rを基準として矢印探索領域56を設定する。また、例えば、点灯中の灯火器として青色灯火器52Bまたは黄色灯火器52Yが検出されている場合、画像認識_ECU13は、赤色灯火器52Rが点灯したタイミングにて矢印探索領域56を設定する。
【0071】
ここで、信号機本体51が横型配置であるか、或いは、信号機本体51が横型配置であるかの判定がなされていない場合、例えば、
図19に示すように、画像認識_ECU13は、赤色灯火器52Rの周囲9箇所に矢印探索領域56を設定する。
【0072】
これに対し、信号機本体51が横型配置であると判定されている場合、例えば、
図17に示すように、画像認識_ECU13は、横方向に配列した3個の矢印探索領域56を、赤色灯火器52Rの下側に設定する。すなわち、画像認識_ECU13は、赤色灯火器52Rの周囲9箇所の矢印探索領域56の中から、矢印探索領域56を設定する箇所を絞り込む。信号機本体51が横型配置である場合、赤色灯火器52Rの左右側方及び上側に矢印灯火器53が配置されることは想定し難いためである。
【0073】
また、信号機本体51が縦型配置であると判定されている場合、例えば、
図18に示すように、画像認識_ECU13は、縦方向に配列した4個の矢印探索領域を赤色灯火器52Rの左側に設定する。さらに、画像認識_ECU13は、縦方向に配列した3個の矢印探索領域を赤色灯火器52Rの右側に設定する。すなわち、画像認識_ECU13は、赤色灯火器52Rの周囲9箇所の矢印探索領域56の中から、矢印探索領域56を設定する箇所を絞り込む。矢印灯火器53が縦型配置である場合、赤色灯火器52Rの上下に矢印灯火器53が配置されることは想定し難いためである。
【0074】
さらに、画像認識_ECU13は、信号機本体51に付随する矢印灯火器53の探索を行う。すなわち、画像認識_ECU13は、赤色灯火器52Rの点灯に付随して点灯している矢印灯火器53(例えば、
図20,21参照)の探索を行う。この矢印灯火器53の探索は、設定した矢印探索領域56毎に行われる。
【0075】
このように、本実施形態において、画像認識_ECU13は、灯火領域検出手段、第1の灯火器検出手段、第1の探索領域設定手段、第2の灯火器検出手段、縦横判定手段、及び、第2の探索領域設定手段としての一具体例に相当する。
【0076】
次に、画像認識_ECU13において行われる信号機認識処理について、
図2に示す信号機認識ルーチンのフローチャートに従って説明する。このルーチンは、画像認識_ECU13において、設定時間毎に繰り返し実行されるものである。
【0077】
ルーチンがスタートすると、画像認識_ECU13は、自車走行路の前方に、点灯中の点灯部を検出したか否かを調べる。すなわち、画像認識_ECU13は、例えば、メインカメラ11aによって撮像されたカラー画像上において、灯火領域(すなわち、灯火部)を検出したか否かを調べる。
【0078】
そして、ステップS101において、灯火部を検出していないと判定した場合(ステップS101:NO)、画像認識_ECU13は、そのままルーチンを抜ける。
【0079】
一方、ステップS101において、灯火部を検出したと判定した場合(ステップS101:YES)、画像認識_ECU13は、ステップS102に進む。
【0080】
ステップS102において、画像認識_ECU13は、今回検出した点灯中の灯火部と前回検出した灯火部とが同じ信号機に設けられたものであるか否かを調べる。
【0081】
ここで、今回の灯火部と前回の灯火部とが同じ信号機に設けられたものであるか否かの判定は、例えば、IPU12において生成した距離画像に基づいて判断することができる。すなわち、画像認識_ECU13は、今回の灯火部と前回の灯火部との実空間上における相対距離を、各フレームの距離画像に基づいて推定する。これにより、画像認識_ECU13は、各灯火部の実空間上における相対距離が設定距離(例えば、1m)未満であるとき、各灯火部が同じ信号機に設けられていると判定することが可能となる。
【0082】
そして、ステップS102において、今回の灯火部と前回の灯火部とが同じ信号機に設けられたものでないと判定した場合(ステップS102:NO)、画像認識_ECU13は、ステップS104に進む。
【0083】
一方、ステップS102において、今回の灯火部と前回の灯火部とが同じ信号機に設けられたものであると判定した場合(ステップS102:YES)、画像認識_ECU13は、ステップS103に進む。
【0084】
ステップS103において、画像認識_ECU13は、今回検出した灯火部の灯火色が前回検出した灯火部の灯火色に対して変化しているか否かを調べる。
【0085】
そして、ステップS103において、今回検出した灯火部の灯火色が前回から変化していると判定した場合(ステップS103:YES)、画像認識_ECU13は、ステップS106に進む。
【0086】
一方、ステップS103において、今回検出した灯火部の灯火色が前回から変化していないと判定した場合(ステップS103:NO)、画像認識_ECU13は、ステップS104に進む。
【0087】
ステップS102或いはステップS103からステップS104に進むと、画像認識_ECU13は、現在検出している灯火部の周辺領域に対する黒領域判定を行う。この黒領域判定は、例えば、
図3に示す黒領域判定サブルーチンのフローチャートに従って実行される。
【0088】
サブルーチンがスタートすると、画像認識_ECU13は、ステップS201において、現在検出されている灯火部に基づいて、画像上における灯火器の寸法を推定する。すなわち、画像認識_ECU13は、一般的な灯火器における灯火部とフレーム部との寸法比に基づき、画像上におけるフレーム部の寸法を算出する。これにより、画像認識_ECU13は、画像上における灯火器の寸法を推定する。
【0089】
続くステップS202において、画像認識_ECU13は、現在検出されている灯火部の灯火色に応じた探索領域(黒領域探索領域)を、画像上に設定する。例えば、現在検出されている灯火器が青色灯火器52Bである場合、画像認識_ECU13は、当該青色灯火器52Bの右側及び上側に、それぞれ2つの灯火器探索領域55を設定する(
図9参照)また、例えば、現在検出されている灯火器が黄色灯火器52Yである場合、画像認識_ECU13は、当該黄色灯火器52Yの左側、右側、上側、及び、下側に、それぞれ1つの灯火器探索領域55を設定する(
図12参照)。また、例えば、現在検出されている灯火器が赤色灯火器52Rである場合、画像認識_ECU13は、当該赤色灯火器52Rの左側及び下側に、それぞれ2つの灯火器探索領域55を設定する(
図15参照)。
【0090】
続くステップS203において、画像認識_ECU13は、ステップS202において設定した灯火器探索領域55の中から、未だ抽出されていない1つの灯火器探索領域55を抽出する。
【0091】
続くステップS204において、画像認識_ECU13は、抽出した灯火器探索領域55に対し、黒領域判定用の座標c0~c8を設定する(
図16参照)。
【0092】
続くステップS205において、画像認識_ECU13は、各黒領域判定用の座標c0~c8の画像上における各輝度値に基づいて、黒領域判定を行う。すなわち、画像認識_ECU13は、上述した第1の条件~第4の条件を用いて黒領域判定を行う。ここで、本実施形態において、黒領域判定とは、現在抽出されている灯火器探索領域55の中心部に黒領域が存在するか否かの判定である。
【0093】
続くステップS206において、画像認識_ECU13は、現在抽出している灯火器探索領域55中の各座標c0~c8における輝度値が、第1~第4の条件を充足しているか否かを調べる。
【0094】
そして、ステップS206において、各座標c0~c8における輝度値が第1~第4の条件の全てを充足していると判定した場合(ステップS206:YES)、画像認識_ECU13は、ステップS207に進む。
【0095】
ステップS206からステップS207に進むと、画像認識_ECU13は、現在抽出している灯火器探索領域に黒領域が存在する可能製が高いとことを示す黒領域候補フラグFを「1」にセットする。
【0096】
一方、ステップS206において、各座標c0~c8における輝度値が第1~第4の条件のうち少なくとも何れか1つを充足していないと判定した場合(ステップS207:NO)、画像認識_ECU13は、ステップS208に進む。
【0097】
ステップS206からステップS208進むと、画像認識_ECU13は、黒領域候補フラグFを「0」にクリアする。
【0098】
ステップS207或いはステップS208からステップ209に進むと、画像認識_ECU13は、全ての灯火器探索領域が抽出されたか否かを調べる。
【0099】
そして、ステップS209において、未だ全ての灯火器探索領域が抽出されていないと判定した場合(ステップS209:NO)、画像認識_ECU13は、ステップS203に戻る。
【0100】
一方、ステップS209において、全ての灯火器探索領域が抽出されたと判定した場合(ステップS209:YES)、画像認識_ECU13は、サブルーチンを抜ける。
【0101】
図2のメインルーチンにおいて、ステップS104からステップS105に進むと、画像認識_ECU13は、現在検出している灯火器を含む信号機本体の縦横判定を行う。この縦横判定は、例えば、
図4に示す第1の縦横判定サブルーチンのフローチャートに従って実行される。
【0102】
サブルーチンがスタートすると、ステップS301において、画像認識_ECU13は、現在の信号機が、前フレームまでの信号機とは別の信号機に変更されたか否かを調べる。
【0103】
ここで、現在の信号機とは、自車走行路前方において現在検出している直近の灯火器に対応付けて認識すべき信号機である。また、前フレームまでの信号機とは、自車走行路前方において前フレームまでに検出した直近の灯火器に対応付けて認識すべき信号器である。自車走行路前方における直近の灯火器は、自車両Mが信号機を通過する毎に切り替わる。従って、これらの信号器の変更があったか否かの判断は、例えば、自車走行路前方における直近の灯火器が切り替わったか否かに基づいて行うことができる。
【0104】
そして、ステップS301において、信号機の変更がなかった判定した場合(ステップS301:NO)、画像認識_ECU13は、ステップS303に進む。
【0105】
一方、ステップS301において、信号機の変更があったと判定した場合(ステップS301:YES)、画像認識_ECU13は、ステップS302に進む。
【0106】
ステップS302において、画像認識_ECU13は、現在の信号機に対する横判定ポイントP1及び縦判定ポイントP2を、共に「0」にクリアする。ここで、横判定ポイントP1とは、現在の信号機が各灯火器を横方向に配列した信号機である可能性が高いことを示すポイントである。また、縦判定ポイントP2とは、現在の信号機が各灯火器を縦方向に配列した信号機である可能性が高いことを示すポイントである。
【0107】
ステップS301或いはステップS302からステップS303に進むと、画像認識_ECU13は、現在検出している灯火器の横方向に設定している各灯火器探索領域の黒領域候補フラグFが共に「1」であるか否かを調べる。
【0108】
そして、ステップS303において、横方向の黒領域候補フラグFの少なくとも何れか1つが「1」でないと判定した場合(ステップS303:NO)、画像認識_ECU13は、ステップS305に進む。
【0109】
一方、ステップS303において、横方向の黒領域候補フラグFが共に「1」であると判定した場合(ステップS303:YES)、画像認識_ECU13は、ステップS304に進む。
【0110】
ステップS303からステップS304に進むと、画像認識_ECU13は、横判定ポイントP1をインクリメントした後(P1←P1+1)、ステップS305に進む。なお、横判定ポイントP1をインクリメントさせるポイント数は、「1」に限定されるものではなく、例えば、情報の信頼度の高低に応じて変動させることも可能である。
【0111】
ステップS303或いはステップS304からステップS305に進むと、画像認識_ECU13は、現在検出している灯火器の縦方向に設定している各灯火器探索領域の黒領域候補フラグFが共に「1」であるか否かを調べる。
【0112】
そして、ステップS305において、横方向の黒領域候補フラグFの少なくとも何れか1つが「1」でないと判定した場合(ステップS305:NO)、画像認識_ECU13は、ステップS307に進む。
【0113】
一方、ステップS305において、縦方向の黒領域候補フラグFが共に「1」であると判定した場合(ステップS305:YES)、画像認識_ECU13は、ステップS306に進む。
【0114】
ステップS305からステップS306に進むと、画像認識_ECU13は、縦判定ポイントP2をインクリメントした後(P2←P2+1)、ステップS307に進む。なお、縦判定ポイントP2をインクリメントさせるポイント数は、「1」に限定されるものではなく、例えば、情報の信頼度の高低に応じて変動させることも可能である。
【0115】
ステップS305或いはステップS306からステップS307に進むと、画像認識_ECU13は、横判定ポイントP1と縦判定ポイントP2とのポイント差の絶対値|P1-P2|が、予め設定された閾値(例えば、3ポイント差)以上であるか否かを調べる。
【0116】
そして、ステップS307において、ポイント差の絶対値|P1-P2|が閾値未満であると判定した場合(ステップS307:NO)、画像認識_ECU13は、ステップS308に進む。
【0117】
ステップS307からステップS308に進むと、画像認識_ECU13は、現在認識すべき信号機の縦横判定は不能であると判断した後、サブルーチンを抜ける。
【0118】
一方、ステップS307において、ポイント差の絶対値|P1-P2|が閾値以上であると判定した場合(ステップS307:YES)、画像認識_ECU13は、ステップS309に進む。
【0119】
ステップS309において、画像認識_ECU13は、横判定ポイントP1が縦判定ポイントP2よりも大きいか否かを調べる。
【0120】
そして、ステップS309において、横判定ポイントP1が縦判定ポイントP2よりも大きいと判定した場合(ステップS309:YES)、画像認識_ECU13は、ステップS310に進む。
【0121】
ステップS309からステップS310に進むと、画像認識_ECU13は、現在認識すべき信号機は横型の信号機であると判定した後、サブルーチンを抜ける。
【0122】
一方、ステップS309において、横判定ポイントP1が縦判定ポイントP2以下であると判定した場合(ステップS309:NO)、画像認識_ECU13は、ステップS311に進む。
【0123】
ステップS309からステップS311に進むと、画像認識_ECU13は、現在認識すべき信号機は縦型の信号機であると判定した後、サブルーチンを抜ける。
【0124】
図2のメインルーチンにおいて、ステップS103からステップS106に進むと、画像認識_ECU13は、現在検出している灯火器を含む信号機本体の縦横判定を行う。この縦横判定は、例えば、
図5に示す第2の縦横判定サブルーチンのフローチャートに従って実行される。
【0125】
サブルーチンがスタートすると、ステップS401において、画像認識_ECU13は、現在の信号機に対する縦横判定結果が既に存在するか否かを調べる。ここで、現在の信号機に対する縦横判定結果が存在する場合とは、例えば、点灯中の灯火色が変化する前に、上述のステップS104及びステップS105による縦横判定結果が存在する場合をいう。
【0126】
そして、ステップS401において、現在の信号機に対する縦横判定結果が存在すると判定した場合(ステップS401:YES)、画像認識_ECU13は、ステップS402に進む。
【0127】
ステップS402において、画像認識_ECU13は、現在の縦横判定結果を維持したまま、サブルーチンを抜ける。
【0128】
一方、ステップS401において、現在の信号機に対する縦横判定結果が存在しないと判定した場合(ステップS401:NO)、画像認識_ECU13は、ステップS403に進む。
【0129】
ステップS403において、画像認識_ECU13は、点灯色の変化によって、実空間上における灯火器の点灯位置が横方向に変化したか否かを調べる。すなわち、画像認識_ECU13は、点灯中の灯火器が切り替わることによって、灯火器の点灯位置が横方向に変化したか否かを調べる。
【0130】
そして、ステップS403において、点灯位置が横方向に変化したと判定した場合(ステップS403:YES)、画像認識_ECU13は、ステップS404に進む。
【0131】
ステップS404において、画像認識_ECU13は、現在認識すべき信号器は横型の信号機であると判定した後、サブルーチンを抜ける。
【0132】
一方、ステップS403において、点灯位置が横方向に変化していないと判定した場合(ステップS403:NO)、画像認識_ECU13は、ステップS405に進む。
【0133】
ステップS405において、画像認識_ECU13は、点灯色の変化によって、実空間上における灯火器の点灯位置が縦方向に変化したか否かを調べる。すなわち、画像認識_ECU13は、点灯中の灯火器が切り替わることによって、灯火器の点灯位置が縦方向に変化したか否かを調べる。
【0134】
そして、ステップS405において、点灯位置が縦方向に変化したと判定した場合(ステップS405:YES)、画像認識_ECU13は、ステップS406に進む。
【0135】
ステップS406において、画像認識_ECU13は、現在認識すべき信号機は縦型の信号機であると判定した後、サブルーチンを抜ける。
【0136】
一方、ステップS405において、点灯位置が縦方向に変化していないと判定した場合(ステップS405:NO)、画像認識_ECU13は、そのままサブルーチンを抜ける。
【0137】
図2のメインルーチンにおいて、ステップS105或いはステップS106からステップS107に進むと、画像認識_ECU13は、現在点灯中の灯火部が赤色であるか否かを調べる。すなわち、画像認識_ECU13は、現在点灯中の灯火器が赤色灯火器であるか否かを調べる。
【0138】
そして、ステップS107において、現在点灯中の灯火部が赤色でないと判定した場合(ステップS107:NO)、画像認識_ECU13は、ルーチンを抜ける。
【0139】
一方、ステップS107において、現在点灯中の灯火部が赤色であると判定した場合(ステップS107:YES)、画像認識_ECU13は、ステップS108に進む。
【0140】
ステップS108において、画像認識_ECU13は、現在の信号機に対する縦横判定結果が存在するか否かを調べる。すなわち、画像認識_ECU13は、ステップS105或いはステップS106のうちの少なくとも何れか一方の処理において、現在の信号機に対する縦横判定結果が得られているか否かを調べる。
【0141】
そして、ステップS108において、現在の信号機に対する縦横判定結果が得られていないと判定した場合(ステップS108:NO)、画像認識_ECU13は、ステップS109に進む。
【0142】
ステップS109において、画像認識_ECU13は、現在点灯中の赤色灯火器の周囲に全ての矢印探索領域を設定する(
図19参照)。
【0143】
一方、ステップS108において、現在の信号機に対する縦横判定結果が得られていると判定した場合(ステップS108:YES)、画像認識_ECU13は、ステップS110に進む。
【0144】
ステップS110において、画像認識_ECU13は、赤色灯火器の周囲に設定する矢印探索領域の絞り込みを行う。すなわち、画像認識_ECU13は、信号機の縦横判定結果に応じた矢印探索領域を、赤色灯火器の周囲に設定する(
図17,18参照)。
【0145】
ステップS109或いはステップS110からステップS111に進むと、画像認識_ECU13は、設定した各矢印探索領域に対し、点灯中の矢印灯火器の探索を実行した後、ルーチンを抜ける。
【0146】
このような実施形態において、画像認識_ECU13は、自車両Mの前方をカラー撮像した画像上において信号機本体による灯火領域を検出することにより、信号機本体に配列された複数の灯火器のうちの点灯中の灯火器を検出する。また、画像認識_ECU13は、点灯中の灯火器の水平方向及び垂直方向において当該灯火器に連なる画像上の複数の位置であって、且つ、灯火領域の灯火色に応じた特定の位置に、点灯中の灯火器と同寸法をなす灯火器探索領域をそれぞれ設定する。また、画像認識_ECU13は、灯火器探索領域の縁辺部における輝度及び灯火器探索領域の中心部における輝度を灯火器探索領域毎に評価し、信号機本体に配列された消灯中の灯火器を検出する。さらに、画像認識_ECU13は、点灯中の灯火器及び消灯中の灯火器の配置に基づいて信号機本体が横型配置されているか或いは縦型配置されているかを判定する。そして、画像認識_ECU13は、判定した信号機本体の配置に応じて、信号機本体に付属する矢印灯火器の探索領域を設定する。これにより、矢印灯火器の点灯を効率良く探索することができる。
【0147】
すなわち、画像認識_ECU13は、カラー画像上の灯火領域が灯火器の灯火部と一致すると仮定することにより、点灯中の灯火器を検出する。これにより、信号機本体に配列された各灯火器の境界が画像上において不明瞭である場合にも、点灯中の灯火器を的確に検出することができる。
【0148】
また、画像認識_ECU13は、点灯中の灯火器の水平方向及び垂直方向において点灯中の灯火器に連なる位置であって、且つ、点灯中の灯火器の点灯色に応じた特定の位置に灯火器探索領域をそれぞれ設定する。このような処理は、横型配置の信号機本体及び縦型配置の信号機本体における各色の灯火器の配列順序が既知であることに着目してなされるものである。これにより、信号機本体に含まれる消灯中の灯火器を効率良く探索することができる。
【0149】
また、画像認識_ECU13は、灯火器探索領域の縁辺部における輝度及び灯火器探索領域の中心部における輝度を灯火器探索領域毎に評価し、各評価結果に基づいて、信号機本体に設けられた消灯中の灯火器を検出する。このような処理は、消灯中の灯火器における灯火部がフレーム部よりも輝度の低い黒領域であることに着目してなされるものである。これにより、信号機本体に配列された各灯火器の境界が画像上において不明瞭である場合にも、消灯中の灯火器を的確に検出することができる。
【0150】
さらに、画像認識_ECU13は、点灯中の灯火器及び消灯中の灯火器の配置に基づいて、信号機本体が横型配置されているか或いは縦型配置されているかを判定する。そして、信号機本体に配置に応じて、矢印探索領域を設定すれば、不要な矢印探索領域を排除することができる。従って、矢印灯火器の点灯を効率良く探索することができる。
【0151】
ここで、上述の実施形態において、画像認識_ECU13、走行_ECU14、E/G_ECU22、T/M_ECU23、BK_ECU24、及び、PS_ECU25は、CPU,RAM,ROM、不揮発性記憶部等を備える周知のマイクロコンピュータ、及びその周辺機器で構成されており、ROMにはCPUで実行するプログラムやデータテーブル等の固定データ等が予め記憶されている。なお、プロセッサの全部若しくは一部の機能は、論理回路あるいはアナログ回路で構成してもよく、また各種プログラムの処理を、FPGAなどの電子回路により実現するようにしてもよい。
【0152】
以上の実施の形態に記載した発明は、それらの形態に限ることなく、その他、実施段階ではその要旨を逸脱しない範囲で種々の変形を実施し得ることが可能である。さらに、上記形態には、種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合せにより種々の発明が抽出され得るものである。
【0153】
例えば、上記形態に示される全構成要件から幾つかの構成要件が削除されても、述べられている課題が解決でき、述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得るものである。
【符号の説明】
【0154】
1 … 運転支援装置
10 … カメラユニット
11 … ステレオカメラ
11a … メインカメラ
11b … サブカメラ
12 … IPU
13 … 画像認識_ECU
14 … 走行_ECU
22 … E/G_ECU
23 … T/M_ECU
24 … BK_ECU
25 … PS_ECU
32 … スロットルアクチュエータ
33 … 油圧制御回路
34 … ブレーキアクチュエータ
35 … 電動パワステモータ
50 … 信号機
50H … 横型配置の信号機
50V … 縦型配置の信号機
51 … 信号機本体
52 … 灯火器
52B … 灯火器(青色灯火器)
52R … 灯火器(赤色灯火器)
52Y … 灯火器(黄色灯火器)
53 … 矢印灯火器
55 … 灯火器探索領域
56 … 矢印探索領域
M … 車両(自車両)