(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024132799
(43)【公開日】2024-10-01
(54)【発明の名称】画像処理装置、画像処理方法およびプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20240920BHJP
G06T 7/90 20170101ALI20240920BHJP
【FI】
G06T7/00 650Z
G06T7/90 C
【審査請求】未請求
【請求項の数】18
【出願形態】OL
(21)【出願番号】P 2023138349
(22)【出願日】2023-08-28
(31)【優先権主張番号】P 2023040918
(32)【優先日】2023-03-15
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000237592
【氏名又は名称】株式会社デンソーテン
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】松本 裕生
(72)【発明者】
【氏名】垣田 直士
(72)【発明者】
【氏名】河野 貴
(72)【発明者】
【氏名】西島 康崇
(72)【発明者】
【氏名】木下 翔太
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA02
5L096BA04
5L096CA02
5L096EA39
5L096FA04
5L096FA54
5L096GA28
5L096GA38
(57)【要約】
【課題】信号機の灯火色の識別精度を向上させること。
【解決手段】実施形態に係る画像処理装置は、青色灯・黄色灯・赤色灯を有する信号機の灯火色を識別する、コントローラを有する。コントローラは、車載カメラから得た画像において信号機領域を特定し、信号機領域において、青色画素・黄色画素・赤色画素をそれぞれ検出し、青色灯・黄色灯・赤色灯にそれぞれ対応する位置の青色画素・黄色画素・赤色画素の画素に高い重み付け値を割当て、重み付け値を適用した後の青色画素・黄色画素・赤色画素それぞれの画素数の合計値の比較に基づき信号機の灯火色を決定する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
青色灯・黄色灯・赤色灯を有する信号機の灯火色を識別する、コントローラを有する画像処理装置であって、
前記コントローラは、
車載カメラから得た画像において信号機領域を特定し、
前記信号機領域において、青色画素・黄色画素・赤色画素をそれぞれ検出し、
前記青色灯・黄色灯・赤色灯にそれぞれ対応する位置の前記青色画素・黄色画素・赤色画素の画素に高い重み付け値を割当て、
前記重み付け値を適用した後の前記青色画素・黄色画素・赤色画素それぞれの画素数の合計値の比較に基づき前記信号機の灯火色を決定する、
画像処理装置。
【請求項2】
前記青色灯・黄色灯・赤色灯の中央部を中心とする円状となるように部分領域を設定する、
請求項1に記載の画像処理装置。
【請求項3】
前記部分領域の中心に近いほど前記重み付け値が大きい、
請求項2に記載の画像処理装置。
【請求項4】
前記青色灯・黄色灯・赤色灯の中央部を中心とする円環状となるように前記部分領域を設定する、
請求項2に記載の画像処理装置。
【請求項5】
時間帯によって前記部分領域の形状を円状または円環状に設定する、
請求項4に記載の画像処理装置。
【請求項6】
前記画像のフレーム間の差異により車両に対する前記信号機の動きを推定し、
前記信号機の灯火色と推定した前記信号機の動きに基づいて信号無視を判定する、
請求項1に記載の画像処理装置。
【請求項7】
青色灯・黄色灯・赤色灯を有する信号機の灯火色を識別する画像処理方法であって、
(a)車載カメラから得た画像において信号機領域を特定し、
(b)前記信号機領域において、青色画素・黄色画素・赤色画素をそれぞれ検出し、
(c)前記青色灯・黄色灯・赤色灯にそれぞれ対応する位置の前記青色画素・黄色画素・赤色画素の画素に高い重み付け値を割当て、
(d)前記重み付け値を適用した後の前記青色画素・黄色画素・赤色画素それぞれの画素数の合計値の比較に基づき前記信号機の灯火色を決定すること、
を含む、画像処理方法。
【請求項8】
前記青色灯・黄色灯・赤色灯の中央部を中心とする円状となるように部分領域を設定すること、
を含む、請求項7に記載の画像処理方法。
【請求項9】
前記部分領域の中心に近いほど前記重み付け値を大きくすること、
を含む、請求項8に記載の画像処理方法。
【請求項10】
前記青色灯・黄色灯・赤色灯の中央部を中心とする円環状となるように前記部分領域を設定すること、
を含む、請求項8に記載の画像処理方法。
【請求項11】
時間帯によって前記部分領域の形状を円状または円環状に設定すること、
を含む、請求項10に記載の画像処理方法。
【請求項12】
前記画像のフレーム間の差異により車両に対する前記信号機の動きを推定し、
前記信号機の灯火色と推定した前記信号機の動きに基づいて信号無視を判定すること、
を含む、請求項7に記載の画像処理方法。
【請求項13】
車載カメラから画像を取得すること、
前記画像において信号機領域を特定すること、
前記信号機領域において、青色画素・黄色画素・赤色画素をそれぞれ検出すること、
信号機の青色灯・黄色灯・赤色灯にそれぞれ対応する位置の前記青色画素・黄色画素・赤色画素の画素に高い重み付け値を割当てること、
前記重み付け値を適用した後の前記青色画素・黄色画素・赤色画素それぞれの画素数の合計値の比較に基づき前記信号機の灯火色を決定すること、
をコンピュータに実行させる、プログラム。
【請求項14】
前記青色灯・黄色灯・赤色灯の中央部を中心とする円状となるように部分領域を設定すること、
をさらに前記コンピュータに実行させる、請求項13に記載のプログラム。
【請求項15】
前記部分領域の中心に近いほど前記重み付け値を大きくすること、
をさらに前記コンピュータに実行させる、請求項14に記載のプログラム。
【請求項16】
前記青色灯・黄色灯・赤色灯の中央部を中心とする円環状となるように前記部分領域を設定すること、
をさらに前記コンピュータに実行させる、請求項14に記載のプログラム。
【請求項17】
時間帯によって前記部分領域の形状を円状または円環状に設定すること、
をさらに前記コンピュータに実行させる、請求項16に記載のプログラム。
【請求項18】
前記画像のフレーム間の差異により車両に対する前記信号機の動きを推定し、
前記信号機の灯火色と推定した前記信号機の動きに基づいて信号無視を判定すること、
をさらに前記コンピュータに実行させる、請求項13に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
開示の実施形態は、画像処理装置、画像処理方法およびプログラムに関する。
【背景技術】
【0002】
従来、車両から取得したカメラ画像を解析することにより、信号機の灯火色を識別する技術が知られている。例えば、特許文献1には、カメラ画像の中から、信号機を含む注目領域内の各位置における信号機の存在確率を示す事前確率分布を算出し、注目領域の画素のコントラストを事前確率分布に従って更新し、画像の特徴点から特定された点灯領域の色を信号機の標示色として識別することが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述した従来技術では、矩形状の注目領域は信号機のほか周辺の背景を含む。このため、上述した従来技術を用いた場合、実際に灯火中の信号機の灯火色以外の色の画素によって信号機の灯火色が誤識別されてしまうおそれがある。
【0005】
具体的には、信号機の青色灯火時や赤色灯火時に、例えば信号機の後方に黄色く色づいた樹木の葉が生い茂っており、カメラ画像に信号機の背景としてその樹木の葉が写り込んだ場合、カメラ画像の注目領域からは、灯火中の青色画素や赤色画素よりも黄色画素が多く抽出されてしまい、黄色灯火時であると誤識別されてしまうおそれがある。
【0006】
本発明は、上記問題点に鑑みてなされたものであって、信号機の灯火色の識別精度を向上させることができる画像処理装置、画像処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る画像処理装置は、青色灯・黄色灯・赤色灯を有する信号機の灯火色を識別する、コントローラを有する。前記コントローラは、画像の信号機領域において、青色画素・黄色画素・赤色画素をそれぞれ検出し、信号機の青色灯・黄色灯・赤色灯にそれぞれ対応する位置の前記青色画素・黄色画素・赤色画素の画素数に高い重み付け値を割当て、前記重み付け値を適用した後の前記青色画素・黄色画素・赤色画素それぞれの画素数の合計値の比較に基づき前記信号機の灯火色を決定する。
【発明の効果】
【0008】
本発明によれば、カメラ画像に、信号機の背景として実際に発光している灯火色以外の色を有する物体が写り込んだとしても、青色灯・黄色灯・赤色灯にそれぞれ対応する位置の青色画素・黄色画素・赤色画素の画素数に高い重み付け値を割当てることにより、灯火色以外の色を有する物体によって検出される色画素の画素数を相対的に少なくすることが出来るので、信号機の灯火色の識別精度を向上させることができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施形態に係る画像処理方法の概要説明図(その1)である。
【
図2】
図2は、色抽出フィルタを適用して灯火色が正判定される場合の説明図である。
【
図3】
図3は、色抽出フィルタを適用して灯火色が誤判定される場合の説明図である。
【
図4】
図4は、実施形態に係る画像処理方法の概要説明図(その2)である。
【
図5】
図5は、青色位置フィルタの構成例を示す図である。
【
図6】
図6は、黄色位置フィルタの構成例を示す図である。
【
図7】
図7は、赤色位置フィルタの構成例を示す図である。
【
図8】
図8は、実施形態に係る画像処理装置の構成例を示す図である。
【
図9】
図9は、変形例に係る画像処理装置の構成例を示す図である。
【
図10】
図10は、実施形態に係る画像処理装置が実行する処理手順を示すフローチャート(その1)である。
【
図11】
図11は、実施形態に係る画像処理装置が実行する処理手順を示すフローチャート(その2)である。
【
図12】
図12は、変形例に係る位置フィルタの構成例を示す図である。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して、本願の開示する画像処理装置、画像処理方法およびプログラムの実施形態を詳細に説明する。なお、以下に示す実施形態によりこの発明が限定されるものではない。
【0011】
また、以下では、実施形態に係る画像処理装置10が、車両に搭載される車載装置であるものとする。画像処理装置10は、カメラ画像の画像認識によって、複数画素からなる画像中の対象物や対象物の状態を検出可能に設けられた装置である。本実施形態では、検出する対象物が信号機300であるものとする。また、検出する対象物の状態が信号機300の灯火状態であるものとする。灯火状態は、信号機300の青色灯による青色灯火、黄色灯による黄色灯火、赤色灯による赤色灯火のいずれかの状態を指す。さらに灯火状態は、矢印灯火および無灯火の状態を含んでもよい。
【0012】
また、以下では、「所定」との表現は、「予め決められた」と読み替えてもよい。
【0013】
まず、実施形態に係る画像処理方法の概要について、
図1~
図4を用いて説明する。
図1は、実施形態に係る画像処理方法の概要説明図(その1)である。
図2は、色抽出フィルタCFを適用して灯火色が正判定される場合の説明図である。
図3は、色抽出フィルタCFを適用して灯火色が誤判定される場合の説明図である。
図4は、実施形態に係る画像処理方法の概要説明図(その2)である。
【0014】
画像処理装置10は、信号機300の灯火状態を検出し、検出結果に基づいて例えば車両の信号無視判定を行う。かかる情報処理は、画像処理装置10が備えるコントローラ12(
図8参照)が実行する。
【0015】
図1に示すように、コントローラ12は、カメラ画像を入力とし、画像中から信号機300が存在する矩形領域を特定する(ステップS1)。ステップS1は、既存の画像処理技術が適用可能である。ステップS1では、コントローラ12は、機械学習のアルゴリズムを用いて学習されたDNN(Deep Neural Network)モデル等を使用して、画像中から信号機300が存在する矩形領域を特定する。なお、以下では、かかる矩形領域を「信号領域SR」と呼ぶ。
【0016】
つづいて、コントローラ12は、信号領域SRを入力として信号機300の灯火状態を判定する(ステップS2)。ステップS2では、コントローラ12は、信号領域SRを画像解析し、信号機300が青色灯火、黄色灯火、赤色灯火のいずれの灯火状態にあるかを判定する。具体的には、コントローラ12は、信号領域SRにおける複数画素から、青色画素、黄色画素、赤色画素を検出し、その合計値に基づいて灯火色を判定する。また、コントローラ12は、赤色灯火の場合に信号機300がさらに矢印灯火の状態にあるかを判定する。
【0017】
次に、コントローラ12は、カメラ画像のフレーム間の差異により信号機300が走行する車両に対して相対的にどのように動くかを推定する動き推定を行う(ステップS3)。そして、コントローラ12は、ステップS2での灯火状態判定結果と、ステップS3での動き推定結果とに基づいて信号無視に該当するか否かを判定し(ステップS4)、その判定結果を出力する。
【0018】
本実施形態に係る画像処理方法は、破線の矩形で囲まれたステップS2において適用される。従来技術では、ステップS2で信号機300の灯火色を判定する場合において、コントローラ12が色抽出フィルタCFを用いて、信号領域SRにおける複数画素から、信号機300の各灯火色に対応する各色成分を有する画素を検出し、その合計値に基づいて灯火色を判定する。色抽出フィルタCFは、例えば、プログラムで構成され、信号機300の灯火色に対応する青色抽出フィルタCF1、黄色抽出フィルタCF2、赤色抽出フィルタCF3で構成される。
【0019】
具体的には、
図2に示すように、コントローラ12は信号領域SRに対し、青色抽出フィルタCF1を適用して信号領域SRにおける複数画素から、青色成分を有する青色画素を検出する。また、コントローラ12は信号領域SRに対し、黄色抽出フィルタCF2を適用して信号領域SRにおける複数画素から、黄色成分を有する黄色画素を検出する。また、コントローラ12は信号領域SRに対し、赤色抽出フィルタCF3を適用して信号領域SRにおける複数画素から、赤色成分を有する赤色画素を検出する。
【0020】
ここで、信号機300は青色灯火の状態にあるものとする。コントローラ12は、検出した各色成分を有する画素の合計値を比較し、
図2に示すように最も合計値の大きい画素の色成分を灯火色と判定する。
図2に示した例のように、検出された青色成分を有する画素の量が、黄色成分を有する画素の量および赤色成分を有する画素の量よりも大きければ、コントローラ12は信号機300が青色灯火の状態にあると正判定することができる。
【0021】
しかしながら、従来技術では、信号機300の各色灯における各灯火色以外の色成分については十分に考慮されていない。このため、この各灯火色以外の色成分によって信号機300の灯火色が誤判定されてしまうおそれがある。
【0022】
図3に示すように、信号機300が青色灯火の状態にある信号領域SRにおいて、信号機300の背景に黄色く色づいた樹木Tの葉が生い茂っているものとする。この場合、コントローラ12が信号領域SRに対し色抽出フィルタCFを適用して各色成分を有する画素を検出すると、検出された黄色成分を有する画素の量が、青色成分を有する画素の量および赤色成分を有する画素の量よりも大きくなりうる。この場合、従来技術では、コントローラ12は信号機300が黄色灯火の状態にあると誤判定する可能性がある。
【0023】
そこで、実施形態に係る画像処理方法では、ステップS2において信号機300の灯火色を判定するに際し、色抽出フィルタCFを用いて検出した信号機300の各灯火色に対応する各色成分を有する画素に対して位置フィルタPF(
図4参照)を適用することとした。位置フィルタPFは、信号機300の各色灯に対応する位置の画素に各灯火色に応じた重み付け値を割当てるフィルタである。位置フィルタPFは、例えば、プログラムで構成され、信号機300の各色灯の位置に対応する青色位置フィルタPF1、黄色位置フィルタPF2、赤色位置フィルタPF3で構成される。そして、コントローラ12は、位置フィルタPFにより重み付け値を割当てられた各色成分を有する画素の合計値に基づいて信号機300の灯火色を判定することとした。
【0024】
具体的には、
図4に示すように、実施形態に係る画像処理方法では、コントローラ12は信号領域SRに対し、従来通り色抽出フィルタCFを適用して信号機300の各灯火色に対応する各色成分を有する画素を検出する。
【0025】
ただし、実施形態に係る画像処理方法ではさらに、コントローラ12は検出した各色成分を有する画素に対して位置フィルタPFを適用、すなわち、検出した各色成分を有する画素を位置フィルタPFにマッピングすることによって、信号機300の各色灯に対応する位置の画素に、各色成分に応じた重み付け値を割当てる。コントローラ12は、青色成分を有する画素については青色位置フィルタPF1を適用する。また、コントローラ12は、黄色成分を有する画素については黄色位置フィルタPF2を適用する。また、コントローラ12は、赤色成分を有する画素については赤色位置フィルタPF3を適用する。
【0026】
ここで、青色位置フィルタPF1、黄色位置フィルタPF2および赤色位置フィルタPF3の各構成例について説明する。
図5は、青色位置フィルタPF1の構成例を示す図である。
図6は、黄色位置フィルタPF2の構成例を示す図である。
図7は、赤色位置フィルタPF3の構成例を示す図である。
【0027】
次に、色抽出フィルタCFを用いて検出された各灯火色に対応する各色成分を有する画素の値をそれぞれ1とし、各色灯火色に対応しない色成分を有する画素の値をそれぞれ0とした場合の、位置フィルタPFの適用方法について説明する。
図5に示すように、青色位置フィルタPF1は、信号機300が有する青色灯301の位置に対応する部分領域PRにおける青色成分を有する画素の値である1に対し重み付け値である10を割当てる。部分領域PRにおいて、青色成分を有さない画素の値には、重み付け値を割当てない。なお、青色成分の濃淡、すなわち、グラデーションに応じて、重み付け値を1~10の範囲で異なる値を重み付け値として設定してもよい。この場合、青色成分が最も濃い画素に10の重み付け値を割当て、最も淡い画素に1の重み付け値を割当てる。青色位置フィルタPF1を適用した結果、部分領域PR外における青色成分を有する画素の値よりも部分領域PR内における青色成分を有する画素の値が大きくなるように設定される。青色灯301が存在する位置は、青色灯火時には当然その他の位置に比べて青色が濃くなる。したがって、青色灯301の位置に対応する部分領域PRの青色成分を有する画素の値の重みを部分領域PR外よりも大きくすることで、青色灯301の灯火による青色成分と背景等の青色成分とを切り分けることが可能となる。
【0028】
なお、青色に限らず位置フィルタPFに共通の構成として、位置フィルタPFは信号領域SRと同じ形状、同じサイズとなるように設定される。コントローラ12は、カメラ画像から信号領域SRを抽出する際、カメラ画像に大小さまざまに写り込む信号機300を、常に同じ形状、同じサイズの画像(例えば25×25画素など)となるようにサンプリングし、信号領域SRとして抽出する。
【0029】
このため、コントローラ12は、信号領域SRに応じて位置フィルタPFを例えば25×25画素のフィルタとなるように設定する。ここに挙げた例に応じて、
図5~
図7に示す各位置フィルタPF1~PF3は25×25画素で表現している。各画素に対応する位置に設定された数値は、信号領域SRから各色成分として検出される各画素に対する重み係数である。重み係数の最小値は例えば1、最大値は例えば10である。重み係数の最小値は0、最大値は10より大の値であってもよい。
【0030】
コントローラ12は、例えば色抽出フィルタCFによって各色成分を有するとして検出された各画素の値をそれぞれ1としたうえで、その各値に、検出された各画素に対応する位置フィルタPF上の重み係数(重み付け値)を掛け合わせる。そして、その掛け合わせて得られた値の色成分ごとの総和が、色成分ごとの重み付け後の合計値となる。
【0031】
また、コントローラ12は、青色位置フィルタPF1であれば、青色灯301の中央部を中心とする円状となるように部分領域PRを設定する。これは、青色灯301の形状が円形であることによる。したがって、仮に円形でない青色灯301であれば、コントローラ12は、その円形でない形状の中央部を中心とした部分領域PRを設定することとなる。このように、青色灯301の形状に応じた部分領域PRを設定することで、青色灯301の形状に応じた青色灯火時における青色成分の重み付けを行うことができる。
【0032】
なお、部分領域PRは、放射状に拡がる発光の特性を考慮し、青色灯301の外縁よりも大きな円状となるように設けられることが好ましい。これにより、青色灯火時に青色灯301の外縁を越えた部分の青色成分を重み付けすることが可能となる。
【0033】
また、コントローラ12は、部分領域PRを円状となるように設定した場合、この円状の中心に近いほど青色成分の重みが大きくなるように青色位置フィルタPF1を設定する。青色灯301が円状であれば通常、青色灯火時にはこの円状の中心に近いほど青色は濃くなるので(図中のグラデーション参照)、青色灯火時における青色灯301の実際の状態に近い青色成分の重み付けを行うことができる。
【0034】
また、
図6に示すように、黄色位置フィルタPF2は、信号機300が有する黄色灯302の位置に対応する部分領域PRにおける黄色成分の重み付け値が、部分領域PR外における黄色成分の重み付け値よりも大きくなるように設定される。黄色位置フィルタPF2のその他の構成は、青と黄の違いのみで青色位置フィルタPF1と同様であるので、説明は省略する。
【0035】
また、
図7に示すように、赤色位置フィルタPF3は、信号機300が有する赤色灯303の位置に対応する部分領域PRにおける赤色成分の重み付け値が、部分領域PR外における赤色成分の重み付け値よりも大きくなるように設定される。赤色位置フィルタPF3のその他の構成は、青と赤、黄と赤の違いのみで青色位置フィルタPF1および黄色位置フィルタPF2と同様であるので、説明は省略する。
【0036】
図4の説明に戻る。そして、コントローラ12は、
図4に示すように位置フィルタPFによる重み付け値の割当て後の合計値が最も大きい色成分を灯火色と判定する。
図4の例では、重み付け後の合計値の関係が「400(青)>200(黄)>20(赤)」であるので、コントローラ12は、信号機300は青色灯火の状態にあると正判定する。すなわち、コントローラ12は、背景に樹木Tの葉が生い茂っており、
図3の例では灯火色を誤判定された信号領域SRについて、誤判定を抑制することができる。
【0037】
以下、上述した実施形態に係る画像処理方法を適用した画像処理装置10の構成例について、より具体的に説明する。
【0038】
図8は、実施形態に係る画像処理装置10の構成例を示す図である。
図8に示すように、画像処理装置10は、記憶部11と、コントローラ12とを備える。また、画像処理装置10は、カメラ3と、出力部5とが接続される。
【0039】
カメラ3は、車両に搭載され、車両の前方を撮像可能に設けられる。なお、カメラ3は、車両の前方に限らず、車両の全周囲を撮像可能な360度カメラであってもよい。
【0040】
出力部5は、画像処理装置10からの出力情報を提示する出力デバイスである。出力部5は、ディスプレイやスピーカ等によって実現される。
【0041】
画像処理装置10は、例えば車両に搭載されるコンピュータである。画像処理装置10は、少なくとも、
図1を用いて説明したステップS1~S4の情報処理を実行する。
【0042】
記憶部11は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の記憶デバイスによって実現される。記憶部11は、コントローラ12が実行する実施形態に係るプログラムを記憶する。また、記憶部11は、コントローラ12が実行する情報処理において用いられる各種の情報を記憶する。
【0043】
記憶部11は、例えば画像認識用のAI(Artificial Intelligence)モデルを記憶する。また、記憶部11は、色抽出フィルタCFの設定情報および位置フィルタPFの設定情報を記憶する。
【0044】
コントローラ12は、いわゆるプロセッサに相当する。コントローラ12は、CPU(Central Processing Unit)や、MPU(Micro Processing Unit)や、GPU(Graphics Processing Unit)等によって実現される。コントローラ12は、記憶部11に記憶されている実施形態に係るプログラムを読み込んでRAMを作業領域として実行する。コントローラ12は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)等の集積回路により実現することもできる。
【0045】
コントローラ12は、
図10および
図11の各フローチャートに示す処理手順による情報処理を実行する。
図10および
図11を用いた説明は後述する。
【0046】
なお、
図8に示すように、カメラ3、出力部5および画像処理装置10は、ドライブレコーダ1として実現することができる。この場合、カメラ3は、ドライブレコーダ1に搭載されるカメラユニットによって実現される。出力部5は、ドライブレコーダ1に搭載されるディスプレイやスピーカによって実現される。画像処理装置10は、ドライブレコーダ1に搭載されるマイコンによって実現される。
【0047】
図8に示す構成例は一例であり、この他にも変形例を挙げることができる。
図9は、変形例に係る画像処理装置10の構成例を示す図である。
図9に示すように、画像処理装置10は、画像処理ECU(Electronic Control Unit)9として実現することができる。この場合、カメラ3は、例えばドライブレコーダ1に搭載されるカメラユニットによって実現される。カメラ3は、ドライブレコーダ1以外の車載カメラユニットによって実現されてもよい。出力部5は、車両に搭載される車載出力装置7である車載ディスプレイや車載スピーカによって実現される。
【0048】
図9の例の場合、カメラ3および出力部5は、CAN(Controller Area Network)等の車載ネットワークを介して画像処理装置10と接続される。カメラ3および出力部5は、Bluetooth(登録商標)や、Wi-Fi(登録商標)、UWB(Ultra Wide Band)等を介して無線により画像処理装置10と接続されてもよい。
【0049】
次に、画像処理装置10のコントローラ12が実行する情報処理の処理手順について、
図10および
図11を用いて説明する。
図10は、実施形態に係る画像処理装置10が実行する処理手順を示すフローチャート(その1)である。
図11は、実施形態に係る画像処理装置10が実行する処理手順を示すフローチャート(その2)である。
【0050】
コントローラ12は、
図1に示した信号無視判定を行うにあたり、
図10に示すように、カメラ3からカメラ画像を取得する(ステップS101)。つづいて、コントローラ12は、取得したカメラ画像から信号機300が存在する信号領域SRを特定する(ステップS102)。
【0051】
つづいて、コントローラ12は、抽出した信号領域SRに基づいて信号機300の灯火状態を判定する「灯火状態判定処理」を実行する(ステップS103)。
【0052】
この「灯火状態判定処理」では、
図11に示すように、コントローラ12は、抽出した信号領域SRに対して青色抽出フィルタCF1を適用し、青色抽出フィルタCF1により信号領域SRから青色成分を有する画素を検出する(ステップS201)。
【0053】
また、コントローラ12は、信号領域SRに対して黄色抽出フィルタCF2を適用し、黄色抽出フィルタCF2により信号領域SRから黄色成分を有する画素を検出する(ステップS202)。
【0054】
また、コントローラ12は、信号領域SRに対して赤色抽出フィルタCF3を適用し、赤色抽出フィルタCF3により信号領域SRから赤色成分を有する画素を検出する(ステップS203)。ステップS201~S203の順番は任意でよい。また、ステップS201~S203は、並列に実行されてもよい。
【0055】
つづいて、コントローラ12は、ステップS201で検出された青色成分の合計値を青色位置フィルタPF1により重み付けする(ステップS204)。また、コントローラ12は、ステップS202で検出された黄色成分の合計値を黄色位置フィルタPF2により重み付けする(ステップS205)。
【0056】
また、コントローラ12は、ステップS203で検出された赤色成分の合計値を赤色位置フィルタPF3により重み付けする(ステップS206)。ステップS204~S206の順番は任意でよい。また、ステップS204~S206は、並列に実行されてもよい。
【0057】
そして、コントローラ12は、位置フィルタPFによる重み付け後の合計値が最も大きい色成分を判定する(ステップS207)。ここで、青色成分である場合(ステップS207,青)、コントローラ12は、信号機300が青色灯火の状態にあると判定する(ステップS208)。
【0058】
また、黄色成分である場合(ステップS207,黄)、コントローラ12は、信号機300が黄色灯火の状態にあると判定する(ステップS209)。また、赤色成分である場合(ステップS207,赤)、コントローラ12は、信号機300が赤色灯火の状態にあると判定する(ステップS210)。
【0059】
つづいて、コントローラ12は、灯火状態判定処理の結果をリターンする(ステップS211)。そして、コントローラ12は、灯火状態判定処理を終了する。
【0060】
図10の説明に戻る。ステップS103を終了すると、コントローラ12は、車両に対する信号機300の動きを推定する(ステップS104)。コントローラ12は、上述したように例えばカメラ画像のフレーム間の差異により信号機300が走行する車両に対して相対的にどのように動くかを推定する。
【0061】
つづいて、コントローラ12は、ステップ103の灯火状態判定処理の結果とステップ104の動きの推定結果とに基づいて信号無視を判定する(ステップS105)。そして、コントローラ12は、出力部5へ判定結果を出力し(ステップS106)、処理を終了する。
【0062】
なお、図示は略しているが、コントローラ12は、カメラ画像のフレーム間における判定結果の安定度に基づいて出力部5へ出力を行うようにしてもよい。一例として、コントローラ12は、フレーム間において同じ判定結果が連続するなど安定度が高いと見なせる場合に、出力部5への出力を行うようにしてもよい。これにより、外乱等の影響を受けにくい安定した判定結果の出力が可能となる。
【0063】
ところで、上述した位置フィルタPFの説明では、部分領域PRが、各灯301~303の中央部を中心とする円状となるように設定される例を挙げたが、真円状に限らず楕円状であってもよい。
【0064】
あるいは、部分領域PRは、各灯301~303の中央部を中心とする円環状となるように設定されてもよい。かかる変形例を、黄色位置フィルタPF2aを例に挙げて説明する。
図12は、変形例に係る黄色位置フィルタPF2aの構成例を示す図である。
【0065】
図12に示すように、部分領域PRは、黄色灯302の中央部を中心とする円環状となるように設定されてもよい。このとき、円環の内縁と外縁に囲まれた部分領域PRにおける色成分の重みが、部分領域PR外における色成分の重みよりも大きくなるように設定されることが好ましい。これにより、コントローラ12は、夜間のハレーション等によって黄色灯302の中央部が白飛びしてカメラ画像に写り込むような場合に、点灯色の判定精度が低下するのを抑制することができる。なお、青色、赤色についても、同様に部分領域PRを円環状に設定してもよい。
【0066】
また、円状および円環状の部分領域PRがそれぞれ設定された異なる位置フィルタPFを予め用意しておき、コントローラ12が、例えば時間帯によって適宜位置フィルタPFを切り替えるようにしてもよい。この場合、コントローラ12は、明暗差でハレーションの起こりやすい夜間については円環状の方へ切り替え、昼間については円状の方へ切り替えるとよい。また、コントローラ12は、照度等に基づいて明暗差が生じやすい状況を検知した場合に、円環状の方へ切り替えるようにしてもよい。
【0067】
また、円環状の部分領域PRの内径が、灯の外径よりも大きい位置フィルタPFと小さい位置フィルタPFとを予め用意しておき、コントローラ12が、例えば前述の安定度に応じてより安定度が高まる方へ適宜位置フィルタPFを切り替えるようにしてもよい。
【0068】
上述してきたように、実施形態に係る画像処理装置10は、コントローラ12を有する。コントローラ12は、カメラ画像に対する画像認識によって信号機300が存在する信号領域SRを抽出する。また、コントローラ12は、信号領域SRから信号機300の各灯火色に対応する各色成分を検出する。また、コントローラ12は、信号機300の各灯火位置に応じて各色成分を重み付けする位置フィルタPF(「フィルタ」の一例に相当)を適用する。また、コントローラ12は、重み付けされた各色成分に基づいて信号機300の灯火色を判定する。これにより、灯火位置の色成分を強調できるので、少ない色成分でも灯火色を判定することができる。また、灯火位置以外の位置の色成分を抑制することができるので、信号機300の背景等による信号機300以外の色成分によって信号機300の灯火色が誤検出されることを抑制できる。すなわち、実施形態に係る画像処理装置10によれば、信号機300の灯火色の識別精度を向上させることができる。
【0069】
なお、上述した実施形態では、画像認識に基づいて信号機300の灯火状態、動きおよび信号無視を判定することとしたが、無論、車両に搭載された各種センサのセンサデータを適宜組み合わせてもよい。例えば、車両の挙動は、ステアリングセンサや加速度センサのセンサ値を利用して推定してもよい。自車速度は、速度センサのセンサ値を利用して取得してもよい。
【0070】
また、上述した実施形態では、信号領域SRは矩形領域であるとしたが、信号領域SRは矩形領域に限らなくともよい。
【0071】
さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な態様は、以上のように表しかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。したがって、添付の特許請求の範囲およびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。
【符号の説明】
【0072】
1 ドライブレコーダ
3 カメラ
5 出力部
7 車載出力装置
9 画像処理ECU
10 画像処理装置
11 記憶部
12 コントローラ
CF 色抽出フィルタ
CF1 青色抽出フィルタ
CF2 黄色抽出フィルタ
CF3 赤色抽出フィルタ
PF 位置フィルタ
PF1 青色位置フィルタ
PF2 黄色位置フィルタ
PF3 赤色位置フィルタ