(57)【特許請求の範囲】
【請求項１】
ｓ偏光部とｐ偏光部が領域ごとに配置された偏光フィルタを介して撮影手段が撮影した１つの画像データから、前記ｓ偏光部の領域に対応する画素を用いて前記ｐ偏光部の領域に対応する画素を補間してｓ偏光画像を作成し、前記ｐ偏光部の領域に対応する画素を用いて前記ｓ偏光部の領域に対応する画素を補間してｐ偏光画像を作成する偏光画像作成手段と、
前記撮影手段が撮影した画像データから輝度画像を作成する輝度画像作成手段と、
ｓ偏光画像及びｐ偏光画像から、路面に反射した車両ライトが映った画素領域を検出する反射領域検出手段と、
前記画素領域を車両認識の認識対象から除外した前記輝度画像から、前方の車両の光源を認識する車両認識手段と、
を有することを特徴とする車両認識装置。
【請求項２】
前記反射領域検出手段は、同じ画素位置のｓ偏光画像及びｐ偏光画像の画素又は複数の画素の画素値をそれぞれ識別関数に入力して、画素又は複数の画素が、車両ライトが映った前記画素領域か否かを判定する、ことを特徴とする請求項１記載の車両認識装置。
【請求項３】
前記識別関数は、同じ画素位置のｓ偏光画像及びｐ偏光画像の所定領域の画素値、及び、該所定領域に路面に反射した車両ライトが映っているか否かを示す情報の組を、学習手段が機械学習することで生成したものである、ことを特徴とする請求項２記載の車両認識装置。
【請求項４】
前記学習手段はサポートベクターマシンである、ことを特徴とする請求項３記載の車両認識装置。
【請求項５】
前記識別関数は、路面に反射した車両ライトが映ったｓ偏光画像及びｐ偏光画像の前記画素領域のそれぞれの画素値が入力されると"１"を、
路面に反射した車両ライトが映っていないｓ偏光画像及びｐ偏光画像の前記画素領域のそれぞれの画素値が入力されると"−１"を出力する、ことを特徴とする請求項４記載の車両認識装置。
【請求項６】
前記車両認識手段は、前記画素領域の外接矩形領域を車両認識の認識対象から除外した前記輝度画像から、前方の車両の光源を認識することを特徴とする請求項１に記載の車両認識装置。
【請求項７】
前記学習手段は、前記情報の組から、輝度値が所定以上の領域の縦横比と、輝度値と、２つの光源の間の距離と、を機械学習することにより、前記識別関数を生成することを徴とする請求項３に記載の車両認識装置。
【請求項８】
ｓ偏光部とｐ偏光部が領域ごとに配置された偏光フィルタを介して撮影手段が撮影した１つの画像データから、前記ｓ偏光部の領域に対応する画素を用いて前記ｐ偏光部の領域に対応する画素を補間してｓ偏光画像を作成し、前記ｐ偏光部の領域に対応する画素を用いて前記ｓ偏光部の領域に対応する画素を補間してｐ偏光画像を作成する偏光画像作成ステップと、
前記撮影手段が撮影した画像データから輝度画像作成手段が輝度画像を作成する輝度画像作成ステップと、
反射領域検出手段が、ｓ偏光画像及びｐ偏光画像から、路面に反射した車両ライトが映った画素領域を検出する反射領域検出ステップと、
車両認識手段が、前記画素領域を車両認識の認識対象から除外した前記輝度画像から、前方の車両の光源を認識する車両認識ステップと、
を有することを特徴とする車両認識方法。
【請求項９】
前記反射領域検出手段は、同じ画素位置のｓ偏光画像及びｐ偏光画像の画素又は複数の画素の画素値をそれぞれ識別関数に入力して、画素又は複数の画素が、車両ライトが映った前記画素領域か否かを判定する、ことを特徴とする請求項８記載の車両認識方法。
【請求項１０】
前記識別関数は、同じ画素位置のｓ偏光画像及びｐ偏光画像の所定領域の画素値、及び、該所定領域に路面に反射した車両ライトが映っているか否かを示す情報の組を、学習手段が機械学習することで生成したものである、ことを特徴とする請求項９記載の車両認識方法。
【請求項１１】
車両認識装置に、
ｓ偏光部とｐ偏光部が領域ごとに配置された偏光フィルタを介して撮影手段が撮影した１つの画像データから、前記ｓ偏光部の領域に対応する画素を用いて前記ｐ偏光部の領域に対応する画素を補間してｓ偏光画像を作成し、前記ｐ偏光部の領域に対応する画素を用いて前記ｓ偏光部の領域に対応する画素を補間してｐ偏光画像を作成する偏光画像作成ステップと、
前記撮影手段が撮影した画像データから輝度画像を作成する輝度画像作成ステップと、
ｓ偏光画像及びｐ偏光画像から、路面に反射した車両ライトが映った画素領域を検出する反射領域検出ステップと、
前記画素領域を車両認識の認識対象から除外した前記輝度画像から、前方の車両の光源を認識する車両認識ステップと、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影された画像から車両を認識する車両認識装置等に関する。
【背景技術】
【０００２】
前方や周囲を撮影する種々のカメラが車両に搭載される場合がある。このような車載カメラを使用して、夜間、同じ車線の先行車両や対向車線の対向車両を認識することで、運転支援が可能になる。例えば、先行車両が認識された場合、車載側のシステムがドライバに警告を出して、衝突に注意喚起を促す。また、対向車両を認識した場合、車載側のシステムがハイビーム状態の前照灯をロービームに切り換えることで、対向車両のドライバの眩惑を抑制する。
【０００３】
先行車両や対向車両を認識する方法には種々のものがあるが、夜間であれば、先行車両の画像データからテイルランプを検出することで先行車両を認識でき、また、対向車両のヘッドライトを検出することで、対向車両を認識することができる。
【０００４】
しかしながら、雨天の場合、濡れた路面にテイルランプやヘッドライトが反射するため、車載カメラが撮影する画像データにライトそのもの以外にライトの反射光（以下、反斜ライトという）が含まれてしまう。このような外乱光の存在は、先行車両、対向車両の認識率を下げることが知られている。
【０００５】
そこで、雨天の場合に認識率を向上させる技術が提案されている（例えば、特許文献１参照。）。特許文献１には、連続撮影した画像から背景画像を生成し、新しく入力した画像と背景画像の差分で、路面反射領域と車両領域を検出し、路面反射領域を除去した後、車両領域の矩形を抽出し、車両を認識する車両検出方法が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された車両検出方法は、車両にカメラが固定されているという前提の下、背景画像を抽出することで、車両を認識できる可能性があるが、背景画像を抽出しなければ、先行車両や対向車両の認識できないという問題がある。特に、車載カメラの向きが可変の場合には背景画像を抽出することが困難になる場合がある。
【０００７】
本発明は、上記課題に鑑み、背景画像を抽出することなく、先行車両や対向車両の認識率を向上させることができる車両認識装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、ｓ偏光部とｐ偏光部が領域ごとに配置された偏光フィルタを介して撮影手段が撮影した１つの画像データから、前記ｓ偏光部の領域に対応する画素を用いて前記ｐ偏光部の領域に対応する画素を補間してｓ偏光画像を作成し、前記ｐ偏光部の領域に対応する画素を用いて前記ｓ偏光部の領域に対応する画素を補間してｐ偏光画像を作成する偏光画像作成手段と、前記撮影手段が撮影した画像データから輝度画像を作成する輝度画像作成手段と、ｓ偏光画像及びｐ偏光画像から、路面に反射した車両ライトが映った画素領域を検出する反射領域検出手段と、前記画素領域を車両認識の認識対象から除外した前記輝度画像から、前方の車両の光源を認識する車両認識手段と、を有することを特徴とする。
【発明の効果】
【０００９】
背景画像を抽出することなく、先行車両や対向車両の認識率を向上させることができる車両認識装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】車両認識装置による先行車両又は対向車両の認識を説明する図の一例である。
【図２】車載されたカメラのハードウェア構成について説明するブロック図の一例である。
【図３】偏光フィルタを説明する図の一例である。
【図４】車両認識装置の機能ブロック図の一例である。
【図５】垂直偏光画像と水平偏光画像の作成を説明する図の一例である。
【図６】反射ライトが撮影された画像データを模式的に説明する図の一例である。
【図７】車両認識装置が動作する手順を示すフローチャート図の一例である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【００１２】
〔原理構成の概略〕
図１は、本実施形態の車両認識装置による先行車両又は対向車両の認識を説明する図の一例である。自車両の車載カメラ５０は同じ走行車線の先行車両又は対向車線の対向車両を含む画像をほぼ周期的に撮影している。図１では先行車両の後部を含む被写体光を撮影しているが、対向車両が含まれる場合もある。撮影される画像データには、先行車両のテイルランプ（以下、対向車両のヘッドライトを含め車両ライトという）だけでなく、路面に反射した先行車両のテイルランプの反射光（以下、反射ライトという）が撮影されている。
【００１３】
本実施形態の車載カメラ５０は、偏光フィルタ１３を有している。水面に無偏光の光が入射する場合、垂直偏光（ｓ偏光）は反射しやすく、水平偏光（ｐ偏光）は反射しにくいことが知られている。このため、水面からの反射光はｓ偏光が多くを占めるようになる。
【００１４】
偏光フィルタ１３は、１つのフィルタでｓ偏光部とｐ偏光部を有するように構成されている。ｓ偏光部を通過した反射光はｓ偏光が多くカットされ、ｐ偏光部を通過した反射光はｐ偏光が多くカットされる。ｓ偏光部を通過した画像を水平偏光画像と呼び、ｐ偏光部を通過した画像を垂直偏光画像と呼ぶことにする。よって、ｓ偏光部を通過した水平偏光画像は、水面からの反射成分を大きく減衰した画像になるが、ｐ偏光部を通過した垂直偏光画像は水面からの反射成分が多く含まれている。
【００１５】
したがって、画像データにおいて反射ライトが撮影された領域は、水平偏光画像の輝度値が小さく、垂直偏光画像の輝度値が大きい傾向になる。本実施形態の車両認識装置は、水平偏光画像と垂直偏光画像のこの違いを利用して、車両認識用の画像データから反射ライト画素を除外する。
【００１６】
車両認識装置は、水平偏光画像と垂直偏光画像の対応する画素位置の画素又はいくつかの画素毎に１組の画素値を取り出し、予め作成している識別関数に入力する。識別関数については後述する。識別関数は、反射ライトが撮影されていると画素と撮影されていない画素を識別する。
【００１７】
また、車両認識装置は水平偏光画像と垂直偏光画像から輝度画像を作成しておく。車両認識装置は、輝度画像から反射ライトが撮影されている領域を除外して、先行車両又は対向車両を認識する。
【００１８】
このように、本実施形態の車両認識装置は、路面からの反射光の偏光特性を利用して偏光フィルタで、濡れた路面による車両ライトの反射ライトを除外することで、車両の認識率を向上させ、誤認識率を低減させることができる。
【００１９】
〔構成例〕
図２は、車両認識装置１００のハードウェア構成について説明するブロック図の一例である。被写体光１０は、まず撮影光学系１１を通してＣＣＤ（Charge Coupled Device）１４等の撮像素子に入射される。撮影素子の種類はＣＭＯＳ（Complementary Metal Oxide Semiconductor）や裏面照射型ＣＭＯＳなど制限されない。また、撮影光学系１１とＣＣＤ１４との間には、メカシャッタ１２が配置されており、このメカシャッタ１２によりＣＣＤ１４への被写体光１０を遮断することができる。また、ＣＣＤ１４の手前に偏光フィルタ１３が配置されており、被写体光１０は偏光フィルタ１３を通過してからＣＣＤ１４に入射する。なお、撮影光学系１１及びメカシャッタ１２は、ＣＰＵ（Central Processing Unit）２２により制御されるモータドライバ１７より駆動される。
【００２０】
ＣＣＤ１４は、撮像面に結像された光学像を電気信号に変換して、ＹＣｒＣｂやＲＧＢ各色のアナログの画像データとして出力する。ＣＣＤ１４がＲＧＢ信号を出力するカラーＣＣＤの場合、所定の回路で輝度信号に変換される。ＣＣＤ１４から出力された画像データは、ＣＤＳ（Correlated Double Sampling:相関２重サンプリング）回路１５によりノイズ成分が除去され、Ａ／Ｄ変換器１６によりデジタル値に変換された後、画像処理回路２１に対して出力される。図２では撮影光学系１１からＡ／Ｄ変換器１６までを車載カメラ５０としているが、車載カメラ５０と画像処理系は別体になっていてもよいし、図のように一体となっていてもよい。
【００２１】
また、車両認識装置１００では、画像処理回路２１、ＣＰＵ２２、ＲＡＭ（Random Access Memory）２３、ＲＯＭ（Read Only Memory）２４、ＳＤＲＡＭ（SynchronousＤＲＡＭ）２５、圧縮伸張回路２６、メモリ２７、及び、操作部２８はバス２９を介して接続されている。画像処理回路２１は、画像データを一時格納するＳＤＲＡＭ２５を用いて、YCrCb変換処理や、ホワイトバランス制御処理、コントラスト補正処理、エッジ強調処理、色変換処理などの各種画像処理を行う。ホワイトバランス処理は、画像情報の色濃さを調整し、コントラスト補正処理は、画像情報のコントラストを調整する画像処理である。エッジ強調処理は、画像情報のシャープネスを調整し、色変換処理は、画像情報の色合いを調整する画像処理である。また、画像処理回路２１は、信号処理や画像処理が施された画像情報をＬＣＤ（液晶ディスプレイ）１９に表示する。
【００２２】
また、信号処理、画像処理が施された画像データは、圧縮伸張回路２６を介してＪＰＥＧなどのフォーマットに変換されメモリ２７に記録される。メモリ２７は、車載カメラ５０に内蔵されたフラッシュメモリ又は脱着可能なメモリカードである。圧縮伸張回路２６は、操作部２８から取得した指示によって、画像処理回路２１から出力される画像データを圧縮してメモリ２７に書き込む。また、メモリ２７から読み出した画像データを伸張して画像処理回路２１に出力する。画像処理回路２１はＬＣＤ１９に読み出した画像データを表示する。
【００２３】
また、ＣＣＤ１４、ＣＤＳ回路１５、及び、Ａ／Ｄ変換器１６は、タイミング信号を発生するタイミング信号発生器１８によりタイミングが制御されている。ＣＰＵ２２は、周囲の明るさや操作部２８からの操作内容によってタイミング信号発生器１８が生成するタイミングを制御する。なお、画像処理回路２１、圧縮伸張回路２６、メモリ２７も、ＣＰＵ２２によって制御されている。
【００２４】
ＣＰＵ２２はプログラム３０などを格納した読み出し専用メモリであるＲＯＭ２４から読み出したプログラム３０に従って各種演算処理を行い。各種の処理過程で、各種データ格納エリアなどに読み出し書き込み自在のメモリであるＲＡＭ２３などをワークエリアとして利用する。プログラム３０は記憶媒体４０に記憶された状態で配布され、また、ネットワークを介して車両認識装置にダウンロードされる。
【００２５】
ＣＰＵ２２はプログラム３０を実行して、車両ライト反射光検知、除去、車両認識などを行う。すなわち、ＣＰＵ２２（プロセッサ）が上記ＲＯＭ２４からプログラム３０を読み出して実行することにより、プログラム３０がＲＡＭ２３上にロードされ、車両認識結果を出力する。
【００２６】
〔偏光フィルタについて〕
図３は、偏光フィルタ１３を説明する図の一例である。この偏光フィルタ１３は例えば、ＣＣＤ１４の結像面前に貼りつけられている。ＣＣＤ１４に直接貼り付けるのでなく、ＣＣＤの手前に配置してもよい。偏光フィルタ１３はｓ偏光部とｐ偏光部が市松模様状に配置されたフィルタである。本実施形態ではｓ偏光部は、垂直方向に振動する被写体光１０の通過を抑制し、水平偏光を多く通過させるとし、ｐ偏光部は、水平方向に振動する被写体光１０の通過を抑制し、垂直偏光を多く通過させるとする。
【００２７】
したがって、ｓ偏光部を通過した被写体光１０は水平偏光画像となり、ｐ偏光部を通過した被写体光１０は垂直偏光画像となる。
【００２８】
画像データにおいては、ｓ偏光部、ｐ偏光部を通過した光が到達する画素値はほぼ固定である。したがって、１枚の画像データにおいて、ｓ偏光部を通過した光が結象する画素、ｐ偏光部を通過した光が結象する画素は、それぞれ車両認識装置１００において既知となっている。
【００２９】
ｓ偏光部とｐ偏光部の大きさは、ＣＣＤ１４の素子サイズを所定数以上に分割するようにして定められる。例えば、素子サイズを縦横にそれぞれ１０〜１０００程度に分割する。分割数は大きいほど好ましいが、大きいとＣＰＵ等の処理負荷が大きくなるため、実験的に適切な分割数を定める。
【００３０】
なお、偏光フィルタ１３の配置は一例であって、市松模様のように配置する以外に、水平方向にｓ偏光部とｐ偏光部をライン状に交互に配置してもよいし、垂直方向にｓ偏光部とｐ偏光部をライン状に交互に配置してもよい。または、ライン状に斜めに交互に配置することも可能である。また、ｓ偏光部、ｐ偏光部を無作為に配置してもよい。また、ＣＣＤ１４の全面にｓ偏光部とｐ偏光部を配置するのでなく、ＣＣＤ１４にｓ偏光部とｐ偏光部がない領域を設けてもよい。
【００３１】
〔車両認識装置の機能について〕
図４は、車両認識装置１００の機能ブロック図の一例である。車両認識装置１００は、垂直偏光画像入力部１０１、水平偏光画像入力部１０２、輝度画像作成部１０３、車両ライト反射光検知部１０４、車両認識部１０５、及び、車両検知結果出力部１０６を有する。各機能ブロックは、ＣＰＵ２２がその他のハードウェアと協働しながら上記のプログラム３０を実行することで実現される。
【００３２】
＜垂直偏光画像と水平偏光画像の作成＞
垂直偏光画像入力部１０１は、１枚の画像データから垂直偏光画像を作成し、水平偏光画像入力部１０２は、１枚の画像データから水平偏光画像を作成する。
【００３３】
図５は垂直偏光画像と水平偏光画像の作成を説明する図の一例である。図５の画像データは説明のため縦横の線で表したが、実際には前方の車両や路面が撮影されている。１枚の画像データにはｓ偏光部とｐ偏光部を通過した被写体光１０がどちらも撮影されている。図５（ａ）では、ｓ偏光部を通過した被写体光は水平方向の光の振動を多く含み、ｐ偏光部を通過した被写体光は垂直方向の光の振動を多く含むことを示している。よって、図５（ａ）の縦横のマスの配置は偏光フィルタ１３と逆である。
【００３４】
水平偏光画像入力部１０２は、ｓ偏光部を通過した光が到達する画素の画素値のみを選択的に取り出し、それ以外の画素の画素値を黒画素ゼロ、白画素２５５又はNULL値等（以下、単にゼロの画素値とする）にしておく。図５（ｂ）に示すように、水平偏光画像は、市松模様状にｓ偏光部を通過した光の画素値とゼロの画素値が配置されたものになる。図５（ｂ）では白い領域がゼロの画素値で埋められた画素を示す。
【００３５】
垂直偏光画像入力部１０１は、ｐ偏光部を通過した光が到達する画素の画素値のみを選択的に取り出し、それ以外の画素の画素値をゼロやNULL値等にしておく。図５（ｃ）に示すように、垂直偏光画像は、市松模様状にｓ偏光部を通過した光の画素値とゼロの画素値が配置されたものになる。水平偏光画像には反射ライトの成分が少なく、垂直偏光画像には反射ライトの成分が多く含まれている。
【００３６】
このままでは、水平偏光画像の画素値がある領域に垂直偏光画像の画素値がなく、垂直偏光画像の画素値がある領域に水平偏光画像の画素値がない、という状態であるため、同じ画素の画素値の比較が困難になる。このため、水平偏光画像入力部１０２は、図５（ｄ）に示すように、水平偏光画像に補間処理を施すことでゼロの画素値を、ｓ偏光部を通過した被写体光１０の画素の画素値で補間する。同様に、垂直偏光画像入力部１０１は、図５（ｅ）に示すように、垂直偏光画像に補間処理を施すことでゼロの画素値を、ｐ偏光部を通過した被写体光１０の画素の画素値で補間する。これにより、車両認識装置１００は水平偏光画像の画素値と垂直偏光画像の画素値を比較することができる。水平偏光画像及び垂直偏光画像は、ＳＤＲＡＭ２５に一時的に保存される。
【００３７】
なお、画素の補間方法には、ニアレストネイバー（例えば、ゼロの画素を左右上下いずれかの画素値で置き換える）、バイリニア（例えば、ゼロの画素に隣接した左右上下の４つの画素の平均値又は４つの画素を関数に入れて画素値を算出し、ゼロの画素の画素値を置き換える）、バイキュービック（例えば、ゼロの画素に隣接した左右上下の１６の画素を使用して、バイリニアと同様に置き換える）等を用いる。
【００３８】
＜車両ライトの反射ライトの検出＞
図３に戻り、車両ライト反射光検知部１０４は、水平偏光画像と垂直偏光画像を使って、画像データから反射ライトを検出する。
【００３９】
図６（ａ）は、反射ライトが撮影された画像データを模式的に説明する図の一例である。夜間に路面が濡れている場合、画像データには先行車両のテイルランプLと、路面に反射された反射ライトＲがどちらも高い輝度で撮影される。車両ライト反射光検知部１０４はこのテイルランプＬと反射ライトＲを識別する。なお、テイルランプＬでなく対向車両の前照灯の場合も、ほぼ同様に、前照灯に近い場所に反射ライトＲが撮影される。
【００４０】
本実施形態では、ＳＶＭ（Support vector machine）機械学習方法を使って、画像データから反射ライトを検出する。ＳＶＭはパターン認識手法の一種で、教師付きデータにより異なるパターンを識別するための識別関数を作成する。また、教師としての学習データの分布に識別境界を定める際にパターン間（クラス間）の距離が最大になるように識別境界を定める（マージン最大化と呼ばれる）。
【００４１】
この学習機能は車両認識装置１００に搭載されている必要はなく、車両認識装置１００が車両に搭載される前にコンピュータ等の学習装置２００が識別関数を作成しておく。このため、図５では学習装置２００を車両認識装置１００とは別に示した。なお、車両認識装置１００に学習機能を搭載してもよい。学習装置２００は、車載カメラ５０が撮影した画像データから水平偏光画像及び垂直偏光画像を作成するか、又は、少なくとも取得できるようになっている。
【００４２】
まず、学習により作成される識別関数について説明する。ＳＶＭの識別関数は以下のように表すことができる。
ｆ（ｘ）＝sign( g(ｘ）)
g(ｘ）＝  ωtｘ＋ｂ
・sign（）関数は、括弧内の数値が正の場合に"１"を、負の場合は"-1"を出力する。括弧内の数値が"０"の場合は"０"を出力する。
・ｘは入力ベクトルであり、本実施形態では水平偏光画像と垂直偏光画像の同じ場所の１組の画素値である。
・ω、ｂはg(ｘ）のパラメータであり、ω、ｂを定めることがＳＶＭの学習になる。
・ｔは転置行列を示す。
【００４３】
入力ベクトルとしてのｘは、夜間の路面に車両ライトが反射した画像データであり、所定の領域毎に、車両ライトが反射した画素領域か否かが教師信号yとして与えられている。所定の領域のサイズは、図５で説明した１つのｓ偏光部又はｐ偏光部に対応する領域、この領域を複数個まとめた領域などである。ｓ偏光部又はｐ偏光部に対応する領域１つ分とすると、水平偏光画像と垂直偏光画像のどちらか一方は補間した領域だけとなってしまうので、複数個まとめた領域とすることが好ましい。以下、入力ベクトルとなる水平偏光画像及び垂直偏光画像の領域を、判定領域という。
【００４４】
例えば、開発者は、１枚の画像データから生成された水平偏光画像及び垂直偏光画像を判定領域に区分して、例えば目視により確認した反射ライトが撮影されているか否かの判定結果（これが教師信号となる）を対応づける。したがって、水平偏光画像及び垂直偏光画像の１組の判定領域の画像と判定結果が得られる。これが学習データである。よって、入力ベクトルｘは水平偏光画像及び垂直偏光画像の２つになる。また、判定結果は、反射ライトが撮影されている判定領域で"１"、それ以外で"−１"とする。なお、学習データは学習装置２００のＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などに記憶される。
【００４５】
開発者は、反射ライトが撮影された画像データをいくつか用意し、同様に、学習データを生成する。学習に用いられる画像データは、種々の状況で撮影された画像データであることが好ましい。例えば、夜間でも周囲が明るい場合や暗い場合、雨量が多い場合と少ない場合、先行車両との距離が近い場合と遠い場合などである。種々の状況で撮影された画像データで学習することで、反射ライトを車両ライトとして誤認識することが少なくなる。
【００４６】
より具体的なＳＶＭの学習処理には、ラグランジュ未定定数λを求める処理が必要になる。求め方は公知なので間単に説明する。学習装置２００は、１つの学習データ（判定領域と判定結果）に対応して１つのラグランジュ未定乗数λiを定義する。ラグランジュ未定乗数には適当な初期値を与えておき、例えば、最急降下法によりラグランジュ未定乗数を求めることができる。ラグランジュ未定乗数λiを変えながらΔλiの変化量が十分に小さくなると学習できたことになる。ラグランジュ未定乗数λiが求められるとω、ｂは学習データの数をｎとして以下のように求めることができる。
ω＝Σλi・yi・xi（１組の学習データとλを乗算したものをｎ個加算する）
ｂ＝ys−wt・xs（xsは任意のxiであり、ysはxiに対応するyiである）
以上のようにして学習装置２００が求めたｆ（ｘ）＝sign( g(ｘ）)を車両ライト反射光検知部１０４は予め記憶している。車両の走行中、車両ライト反射光検知部１０４は、垂直偏光画像入力部１０１が作成した垂直偏光画像と水平偏光画像入力部１０２が作成した水平偏光画像を判定領域に区分して、それぞれの例えば平均輝度値Ｉｓ、Ｉｐを算出し、ｆ（ｘ）に入力する。すなわち、Ｉｓ、Ｉｐが上記入力ベクトルのxiとなる（この場合はx1，x2の２つ）。
【００４７】
識別関数ｆ（Ｉｓ，Ｉｐ）は、反射ライトが撮影された判定領域に対し"１"を、それ以外で"−１"を出力する。車両ライト反射光検知部１０４はこの出力結果を判定領域に対応づけて車両認識部１０５に通知する。これにより、車両認識部１０５は、輝度画像のうち、反射ライトが撮影された領域を取得することができる。
【００４８】
なお、ＳＶＭ以外の機械学習（例えば、ニューラルネットワーク、最近傍識別器（ＮＮ法））を利用して、反射ライトが撮影された領域か否かを判定してもよい。
【００４９】
＜輝度画像の作成＞
図４に戻り、輝度画像作成部１０３は、ＳＤＲＡＭ２５に記憶されている水平偏光画像と垂直偏光画像から輝度画像を作成する。作成方法はどのようなものでもよいが、例えば、水平偏光画像と垂直偏光画像の画素単位又はいくつかの画素毎で平均値を算出する。または、開発者などが予め定めておいた重み付けを水平偏光画像と垂直偏光画像に行い加重平均を算出してもよい。
【００５０】
また、偏光フィルタ１３を可動式にしておき、偏光フィルタ１３を通過した偏光画像と偏光フィルタ１３を通過していない画像を交互に撮影し、偏光フィルタ１３を通過していない画像から輝度画像を作成してもよい。例えば、車載カメラ５０が３０〔フレーム／sec〕で撮影している場合、２枚の画像の撮影時刻には３３ミリ秒の差がある。同じ車線を走行している車両のテイルランプの反射ライトであれば、撮影された領域はこの時間内にそれほどずれていないと考えてよい。よって、偏光フィルタ１３を通過していない画像から、反射ライトが撮影されている画素の領域を除外しても、ほぼ反射ライトの領域を正確に除外できる。また、ステレオカメラのようにほぼ同じ領域を撮影するカメラが別にあれば、そのカメラの輝度画像を使用してもよい。  
＜車両認識＞
車両認識部１０５は、先行車両のテイルランプ及び対向車両のヘッドライトを検出することで、車両を認識する。認識処理の前に、本実施形態の車両認識部１０５は、輝度画像から、車両ライト反射光検知部１０４が検知した反射ライトが撮影された判定領域を除外する。
【００５１】
図６（ｂ）は、反射ライトが撮影された領域が除外された輝度画像を説明する図の一例である。図６（ａ）に示したように、画像データには反射ライトＲが撮影された領域があり、反射ライトＲの場所は車両ライト反射光検知部１０４により検出されている。車両認識部１０５は、図示するように、輝度画像から反射ライトＲの領域を除外する。この除外とは、輝度値が十分に低ければよいので、例えば、黒画素ゼロで置き換えることをいう。
【００５２】
また、輝度画像の画素値を操作するのでなく、反射ライトＲの領域を含む矩形領域を車両認識の対象から除外してもよい。
図６（ｃ）は反射ライトが撮影された領域が除外された輝度画像を説明する図の一例である。反射ライトＲが撮影されることは、自車両と先行車両の間に別の車両はないことになるので、反射ライトＲの領域の近くから車両を認識する必要はない。この場合、例えば、反射ライトＲの左端から右端を含み、反射ライトＲの上端以下の矩形領域を、認識領域から除外する。なお、対向車両のヘッドライトの反射ライトは、複数の対向車両が撮影されている場合があるので、反射ライトＲ領域の外接矩形を認識領域から除外する。
【００５３】
こうすることで、認識範囲が狭くなるので、ＣＰＵ２２等の処理負荷を低減し、車両の認識にかかる時間を短縮できる。
【００５４】
車両の認識方法としては公知の手法を採用できるが、本実施形態では上記のＳＶＭを利用する。
【００５５】
まず、開発者等が、学習のため、教師用の画像データとして車両ライトが撮影されている画像データと、車両ライトが撮影されていない画像データを用意する。教師用の画像データは、自車両からの距離に応じて用意することが好適である。
【００５６】
入力ベクトルｘは例えば以下の要素を有する。
x1：車両ライト（輝度が所定以上の領域）の縦横比
x2：明るさ（輝度値）
x3：２つの光源の間の距離
この他、識別に有効な要素を加えることができる。
【００５７】
学習時、学習装置２００は、画像データを探索し、x1として輝度が所定以上の領域があるとその領域の縦横比を決定する。また、x2としてその領域の輝度値の平均や最大値、最小値などを決定する。また、水平方向に同程度の明るさの領域があるか否かを判定し、ある場合にはｘ３として２つの明るい領域の中央間の距離を決定する。この組み合わせを入力ベクトルｘとする。これにより、自車両と先行車両との距離が大きい場合は、ｘ１，ｘ２、ｘ３がそれぞれ小さい入力ベクトルが得られ、自車両と先行車両との距離が小さい場合は、ｘ１，ｘ２、ｘ３がそれぞれ大きい入力ベクトルが得られる。
【００５８】
このようにして抽出された複数のx1〜x3の組が、車両認識の学習データとなる。また、判定結果ｙは、車両ライトが撮影されている画像データから抽出されたｘ１〜ｘ３に対し"１"、車両ライトが撮影されていない画像データから抽出されたｘ１〜ｘ３に対し"-１"となる。
【００５９】
学習装置２００は、最急降下法によりラグランジュ未定定数λを求めることで、ω、ｂを求める。ここでは識別関数をT（ｘ）として車両認識部１０５に記憶しておく。
【００６０】
車両認識部１０５は、車両の走行中、輝度画像からx1〜x3を検出し、Ｔ（ｘ）に入力する。識別関数Ｔ（x1，x2，x3）は、反射ライトが撮影された画像データに対し"１"を、それ以外で"−１"を出力する。車両認識部１０５は、Ｔ（ｘ）の出力が１になった場合の画像データに車両ライトが撮影されていると判定し、x1〜x3が検出された画素の位置情報を特定する。
【００６１】
なお、１枚の画像データに複数台の車両の車両ライトが撮影されている場合があるが、この場合、Ｔ（ｘ）が"１"を出力したそれぞれのx1〜x3が検出された画素の位置情報をそれぞれ特定すればよい。
【００６２】
先行車両は車両ライト（テイルランプ）の移動速度が小さく、対向車両は車両ライト（ヘッドライト）の移動速度が大きいので、先行車両と対向車両は識別することができる。
【００６３】
以上のように本実施形態では、反射ライトが除外された輝度画像から車両ライトを認識するので、路面の反射光を先行車両や対向車両のライトと誤認識することを低減し、車両の認識率を向上させることができる。
【００６４】
＜検知結果の出力＞
車両検知結果出力部１０６は、先行車両や対向車両を認識したことを、車載装置に出力する。例えば、車載装置の１つである前照灯システムは、対向車両を認識したという通知を取得すると、ハイビームをロービームに切り換える。または、車両検知結果出力部１０６は、車載装置として、メータ系のコンピュータや警告装置に通知してもよい。メータ系のコンピュータや警告装置は、警告音を吹鳴したり、「ハイビームをロービームに切り換えてください」などの音声メッセージをスピーカら出力する。また、液晶などのディスプレイに同様のメッセージを表示してもよい。
【００６５】
また、例えば、メータ系のコンピュータや警告装置は、先行車両の急接近を検出して、警告音を吹鳴したり、「前方の車両に接近しています」などのメッセージをスピーカやディスプレイに出力する。また、ブレーキ系のコンピュータが自動的制動してもよい。また、所定のコンピュータがシートベルトを巻き上げることで先行車両の接近を運転者に知らせてもよい。
【００６６】
〔動作手順〕
図７は、車両認識装置１００が動作する手順を示すフローチャート図の一例である。
S100：車載カメラ５０が画像データを撮影する。画像データは、垂直偏光画像入力部１０１と水平偏光画像入力部１０２にそれぞれ入力される。
S101：垂直偏光画像入力部１０１は、垂直偏光画像を作成する。
S102：水平偏光画像入力部１０２は、水平偏光画像を作成する。なお、S101とS102は並行して行われる。
S103：輝度画像作成部１０３が、垂直偏光画像と水平偏光画像から輝度画像を作成する。
S104：車両ライト反射光検知部１０４が、識別関数ｆ（ｘ）に垂直偏光画像と水平偏光画像を入力して、反射ライトが撮影されている画素又は画素領域を検出する。
S105：車両認識部１０５は、輝度画像から、反射ライトが撮影されている画素又は画素領域を除外して、先行車両及びは対向車両のライトを検出する。
S106：車両認識部１０５は、１枚の画像データ毎に先行車両又は対向車両が検出されたか否かを判定する。なお、先行車両又は対向車両のライトが検出された場合、先行車両又は対向車両が検出されたものとみなす。１枚だけの画像データでなく、所定枚数以上の画像データから先行車両又は対向車両が検出された場合に、先行車両又は対向車両が検出されたものと判定してもよい。こうすることで、認識精度を向上できる。
S107：先行車両又は対向車両が検出された場合、先行車両又は対向車両が検出されたものとして、車両検知結果出力部１０６が検知結果を出力する。
【００６７】
車両認識装置１００は、以上の処理を画像データに対し繰り返し行う。また、一度、先行車両又は対向車両が認識された場合、１枚毎ではなく所定枚数毎に図７の手順を実行してもよい。こうすることで、ＣＰＵ２２等の処理負荷を低減できる。
【００６８】
以上説明したように、本実施形態の車両認識装置１００は、水面に反射した車両ライトを偏光フィルタ１３で偏光して水平偏光画像と垂直偏光画像を作成することで、車両ライトの反射ライトが映った画像と映っていない画像を作成できる。そして、この２つの画像データにより反射ライトの有無を学習しておくので、走行中の画像データの輝度画像から反射ライトの判定領域を高精度に除外できる。反射ライトの撮影範囲を除去することで車両の誤認識を抑制して、認識精度を向上させることができる。
【符号の説明】
【００６９】
１１    撮影光学系
１２    メカシャッタ
１３    偏光フィルタ
１４    ＣＣＤ
２１    画像処理回路
２２    ＣＰＵ
２５    ＳＤＲＡＭ
３０    プログラム
５０    車載カメラ
１００  車両認識装置
１０１  垂直偏光画像入力部
１０２  水平偏光画像入力部
１０３  輝度画像作成部
１０４  車両ライト反射光検知部
１０５  車両認識部
１０６  車両検知結果出力部
２００  学習装置
【先行技術文献】
【特許文献】
【００７０】
【特許文献１】特開２００７−２６５０１６号公報
【図１】
0005895448.tif 000002
【図２】
0005895448.tif 000003
【図３】
0005895448.tif 000004
【図４】
0005895448.tif 000005
【図５】
0005895448.tif 000006
【図６】
0005895448.tif 000007
【図７】
0005895448.tif 000008