(57)【要約】【課題】撮影画像から簡単で精度良く１台ずつ車両を検出する。【解決手段】装置本体２０ａは、（１）車線毎に設定される一つの監視エリアに係る車線情報を生成し、（２）交通状況の撮影画像を取得し、（３）撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、（４）撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、エッジ画像の差分画像を二値化して線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成し、（５）監視エリア毎に生成された指定方向画像をラベリングして監視エリア毎に車両抽出画像を出力し、（６）車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力し、車両抽出ラベル情報から車両を検出する。【選択図】図２
2015207211.tif 000002
【特許請求の範囲】
【請求項１】
車線毎に車両を検出する車両検出装置であって、
前記車線毎に設定される一監視エリアに係る車線情報を生成する車線情報生成手段と、
前記車線内における交通状況の撮影画像を取得する画像取得手段と、
前記撮影画像に基づき前記監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成する指定方向画像生成手段と、
前記撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、前記エッジ画像の差分画像を二値化後、垂直の線分を抽出し、前記線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成する特徴画像生成手段と、
前記監視エリア毎に車両抽出画像を出力する車両候補領域抽出手段と、
前記車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力して車両検出を行う車両検出処理手段と、
を備えたことを特徴とする車両検出装置。
【請求項２】
前記指定方向画像生成手段が、
前記指定方向画像の収縮処理を複数回実行して前記前記特徴画像生成手段へ出力することを特徴とする請求項１記載の車両検出装置。
【請求項３】
前記生成された指定方向画像から背景差分とフレーム差分とを求め、前記それぞれの差分の論理積演算により動体部分を抽出して前記特徴画像生成手段へ出力する動体画像生成手段、を備えたことを特徴とする請求項１記載の車両検出装置。
【請求項４】
前記車線内における交通状況を撮影する撮像装置と、請求項１〜３のいずれか１項記載の車両検出装置とを備えたことを特徴とする車両検出システム。
【請求項５】
車線毎に車両を検出する車両検出装置のコンピュータに、
前記車線毎に設定される一つの監視エリアに係る車線情報を生成する手順と、
前記車線内における交通状況の撮影画像を取得する手順と、
前記撮影画像に基づき前記監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成する手順と、
前記撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、前記エッジ画像の差分画像を二値化して線分を抽出し、前記線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成する手順と、
前記監視エリア毎に車両抽出画像を出力する手順と、
前記車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力して車両検出を行う手順と、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車線毎に車両を検出する車両検出装置、およびシステム、ならびにプログラムに関する。
【背景技術】
【０００２】
監視カメラで交通状況が撮影された俯瞰画像から画像処理によって車両の検出を行う車両検出装置は、例えば、図２０の撮影画像に示されているように、進行方向に向かって監視対象の車両が重なって撮影された場合に、車両を正確に１台ずつ抽出することは困難であった。
【０００３】
例えば、特許文献１に、俯瞰画像から車両の水平エッジを抽出して検出する方法が開示されている。特許文献１に開示された技術は、車両の形状を直方体モデルであらわし、車幅に相当した水平エッジを直方体モデルの末尾の辺として仮定し、直方体の背面上と屋根側の２辺に相当する水平エッジのペアが、車両の車幅、車高、車長の分布と末尾の候補の幅に応じて設定した範囲から検出されることを条件に車両を検知することを特徴とする車両検出装置に関するものである。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２４５０４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示された技術によれば、車両の上辺のエッジと下辺のエッジのペアを検出するために車種毎の車高データが必要になり、また、カメラの取り付け位置によっては車両の上辺や下辺は水平ではなく斜線になるため、エッジ検出が困難になる。したがって、車両を正確に１台ずつ抽出するために非常に困難を伴う。また、夜間、電灯等が設置されておらず、明るさが不十分な撮影環境において、映像上で車両を認識不能になる可能性があり、その場合、車体のエッジが検出できなきなることによる車両検出漏れが発生し、性能が劣化する。
【０００６】
本発明は上記した課題を解決するためになされたものであり、撮影画像から簡単に精度良く１台ずつ車両検出が可能な、車両検出装置、およびシステム、ならびにプログラムを提供することを主な目的とする。また、夜間等、暗い撮影環境においても撮影画像から精度良く１台ずつ車両検出が可能な、車両検出装置およびプログラムを提供することも目的とする。
【課題を解決するための手段】
【０００７】
上記した課題を解決するために本発明の第１の観点に係る車両検出装置は、車線毎に車両を検出する車両検出装置であって、前記車線毎に設定される一監視エリアに係る車線情報を生成する車線情報生成手段と、前記車線内における交通状況の撮影画像を取得する画像取得手段と、前記撮影画像に基づき前記監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成する指定方向画像生成手段と、前記撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、前記エッジ画像の差分画像を二値化して垂直の線分を抽出し、前記線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成する特徴画像生成手段と、前記監視エリア毎に車両抽出画像を出力する車両候補領域抽出手段と、前記車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力して車両検出を行う車両検出処理手段と、を備えたことを特徴とする。
【０００８】
本発明において、前記指定方向画像生成手段が、前記指定方向画像の収縮処理を複数回実行して前記前記特徴画像生成手段へ出力することを特徴とする。
【０００９】
本発明において、前記生成された指定方向画像から背景差分とフレーム差分とを求め、前記それぞれの差分の論理積演算により動体部分を抽出して前記特徴画像生成手段へ出力する動体画像生成手段、を備えたことを特徴とする。
【００１０】
本発明の第２の観点に係る車両検出システムは、前記車線内における交通状況を撮影する撮像装置と、前記車両検出装置を備えたことを特徴とする。
【００１１】
本発明の第３の観点に係るプログラムは、車線毎に車両を検出する車両検出装置のコンピュータに、前記車線毎に設定される一監視エリアに係る車線情報を生成する手順と、前記車線内における交通状況の撮影画像を取得する手順と、前記撮影画像に基づき前記監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成する手順と、前記撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、前記エッジ画像の差分画像を二値化して垂直の線分を抽出し、前記線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成する手順と、前記監視エリア毎に車両抽出画像を出力する手順と、前記車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力して車両検出を行う手順と、を実行させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、撮影画像から精度良く１台ずつ車両検出が可能な、車両検出装置、およびシステム、ならびにプログラムを提供することができる。
【００１３】
また、夜間等、暗い撮影環境においても撮影画像から精度良く１台ずつ車両検出が可能な、車両検出装置およびプログラムを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態に係る車両検出システムの構成を示す図である。
【図２】本発明の実施の形態に係る車両検出装置（実施例１）の構成を示すブロック図である。
【図３】本発明の実施の形態に係る車両検出装置（実施例１）の動作を示すフローチャートである。
【図４】実施例１において、車線情報生成に使用される撮影画像の一例を示す図である。
【図５】実施例１において、指定方向画像生成動作を説明するために引用した図である。
【図６】実施例１において、移動体画像生成動作を説明するために引用した図である。
【図７】実施例１において、車両特徴画像生成動作を説明するために引用した図である。
【図８】実施例１において、車両候補領域抽出動作（１）を説明するために引用した図である。
【図９】実施例１において、車両候補領域抽出動作（２）を説明するために引用した図である。
【図１０】実施例１において、車両候補領域抽出動作（３）を説明するために引用した図である。
【図１１】実施例１において、車両候補領域抽出動作（４）を説明するために引用した図である。
【図１２】実施例１において、車両検出判定前処理動作（１）を説明するために引用した図である。
【図１３】実施例１において、車両検出判定前処理動作（２）を説明するために引用した図である。
【図１４】本発明の実施の形態に係る車両検出装置において、距離テーブル作成アルゴリズムを説明するために引用した図である。
【図１５】本発明の実施の形態に係る車両検出装置において、車両走行速度を計測する演算式を説明するために引用した図である。
【図１６】実施例２において、日中の撮影画像と夜間の撮影画像とを対比して示した図である。
【図１７】実施例２において設定される車両検出パラメータを説明するために引用した図である。
【図１８】本発明の実施の形態に係る車両検出装置（実施例２）の構成を示すブロック図である。
【図１９】本発明の実施の形態に係る車両検出装置（実施例２）の動作を示すフローチャートである。
【図２０】監視カメラで交通状況を撮影した撮影画像の一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して、本発明を実施するための形態（以下、本実施形態という）について詳細に説明する。
【００１６】
なお、本実施形態の説明の全体を通して同じ要素には同じ番号を付している。
【００１７】
（実施形態の構成）
図１に、本実施形態に係る車両検出システム１の構成を示す。図１に示すように、本実施形態に係る車両検出システム１は、路上に設置した撮像装置１０と、撮像装置１０とはＷｅｂ（World Wide Web）３０経由で接続される１以上の車両検出装置２０（サーバ）で構成される。
【００１８】
撮像装置１０は、路上に設置され、道路上を走行する車両を俯瞰した動画像を撮影する、所謂、Ｗｅｂカメラであり、撮影された動画像は、車両検出装置２０に接続される画像表示装置２１にリアルタイムに表示される。
【００１９】
車両検出装置２０は、車線毎に車両を検出するサーバである。具体的に、車両検出装置２０は、（１）車線毎に設定される一監視エリアに係る車線情報を生成し、（２）車線内における交通状況の撮影画像を取得し、（３）撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、（４）撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、エッジ画像の差分画像を二値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成し、（５）監視エリア毎に車両抽出画像を出力し、（６）車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する。各手順の詳細はいずれも後述する。
【００２０】
また、車両検出装置２０は、車両検出パラメータに基づき車線毎に車両を検出する。具体的に、車両検出装置２０は、（１）車線毎に設定される一監視エリアに係る車線情報を生成し、（２）交通状況の撮影画像を取得し、（３）撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、（４）監視エリア毎に生成された指定方向画像をラベリングして車両が存在する候補領域を抽出し、（５）候補領域を白と黒のクラスタに分類して白黒判定を行ない、（６）撮影画像およびその背景画像の垂直成分のエッジ画像を生成し、その差分エッジ画像から線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成して車両検出の可否を判定し、車両検出不可と判定された候補領域に対して白判定された領域を抽出してラベリングによる車両検出の可否を判定し、（７）車両検出の可否の割合に基づき車両検出環境の明暗判定を行ない、その判定結果に基づき車両検出パラメータの設定変更を行なう。各手順の詳細はいずれも後述する。
【００２１】
なお、画像表示装置２１として、ＬＣＤ（Liquid  Crystal  Display  Device）や有機ＥＬ（Organic  Electro-Luminescence）等の表示デバイスが実装され、撮像装置１０により撮影される交通状況のリアルタイム映像の他、装置本体２０ａにより生成される各種処理データが表示される。
【００２２】
（実施例１）
図２に、実施例１に係る車両検出装置２０の内部構成が示されている。図２に示すように、実施例１に係る車両検出装置２０は、少なくとも、装置本体２０ａと、画像表示装置２１と、記憶装置２２とを含み構成される。他に、図示省略したキーボードやマウス等の操作装置を含んでもよい。
【００２３】
なお、記憶装置２２には、ＳＲＡＭやＤＲＡＭ等の半導体記憶素子、あるいはＨＤ等の大容量の磁気記憶素子が実装されており、装置本体２０ａが実行するプログラムが格納されるプログラム領域の他に、設定ファイル２２１、距離テーブル２２２が所定の領域に割り当てられ記憶される。
【００２４】
この設定ファイル２２１と距離テーブル２２２の詳細は後述する。また、記憶装置２２には図示省略した作業領域も割り当てられており、この作業領域にはプログラム実行途中で生成される各種データが記憶される。
【００２５】
装置本体２０ａは、ハードウエア的には図示省略したＣＰＵとプログラムメモリとから構成される。装置本体２０ａは、ＣＰＵがプログラムメモリに格納されたプログラムを逐次読み出し実行することにより、上記した車両検出装置２０としての機能を実現する。このため、ＣＰＵが実行するプログラムの構造は、画像取得部２０１と、車線情報生成部２０２と、指定方向画像生成部２０３と、特徴画像生成部２０４と、候補領域抽出部２０５と、車両検出前処理部２０６と、収縮処理部２０７と、移動体画像生成部２０８の、複数のモジュールに展開して示すこことができる。また、後述するように、車両の検出結果を用いてその車両の走行速度を算出する走行速度算出部２０９を備えてもよい。
【００２６】
画像取得部２０１は、車線内における交通状況の撮影画像を取得する画像取得手段として機能する。車線情報生成部２０２は、車線毎に設定される一監視エリアに係る車線情報を生成する車線情報生成手段として機能する。指定方向画像生成部２０３は、撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成する指定方向画像生成手段として機能する。指定方向画像生成部２０３は、収縮処理部２０７によって複数回実行される指定方向画像の収縮処理結果を特徴画像生成部２０４へ出力してもよい。なお、指定方向画像の収縮処理は、収縮処理部２０７が実行する。
【００２７】
特徴画像生成部２０４は、撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、エッジ画像の差分画像を二値化後、垂直な線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成する特徴画像生成手段として機能する。候補領域抽出部２０５は、監視エリア毎に車両抽出画像を出力する車両候補領域抽出手段として機能する。車両検出前処理部２０６は、車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力して車両を検出する車両検出処理手段として機能する。
【００２８】
移動体画像生成部２０８は、撮影画像と背景画像から背景差分とフレーム差分とを求め、それぞれの差分の論理積演算により移動体部分を抽出して特徴画像生成部２０４へ出力する動体画像生成手段として機能する。走行速度算出部２０９は、記憶装置２２の所定の領域に設定される距離テーブル２２２を参照して抽出された車両の速度検出を行う。詳細は後述する。
【００２９】
（実施例１の動作）
以下、図３のフローチャートを参照しながら実施例１の車両検出装置２０の動作について詳細に説明する。
【００３０】
実施例１の車両検出装置２０は、図３のフローチャートに示すように、装置本体２０ａが、内蔵する、あるいは記憶装置２２のプログラム領域に格納されたプログラムを逐次読み出し実行することにより、撮影画像から簡単で精度良く１台ずつ車両検出を行う処理を実行する。すなわち、装置本体２０ａは、インスタンスの生成や変数の初期化を行ない（ステップＳ１０１）、車線毎に設定される一つの監視エリアに係る車線情報を生成し（ステップＳ１０２）、交通状況の撮影画像を取得する（ステップＳ１０３）。
【００３１】
続いて、撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し（ステップＳ１０４）する。そして、撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、エッジ画像の差分画像を二値化後、垂直な線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成し（ステップＳ１０６）、監視エリア毎に車両抽出画像を出力する（ステップＳ１０７）。最後に、車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力し（ステップＳ１０８）、車両抽出ラベル情報から車両を検出する（ステップＳ１０９）。
【００３２】
なお、上記したステップＳ１０７〜Ｓ１０９の一連の処理は、初期設定される一つの監視エリア毎に繰り返し実行される。すなわち、ステップＳ１０９で最初に設定された監視エリアｎの車両検出（判定処理）が行われると、装置本体２０ａは、変数ｎを＋１更新してステップＳ１０７車両抽出画像生成処理に戻り（ステップＳ１１０）、一連の処理を繰り返し実行し（Ｓ１０７〜Ｓ１０９）、ステップＳ１１１で先に設定された全ての監視エリアの車両検出が行われた後、終了処理を実行する（ステップＳ１１２）。ここでいう終了処理とは、後述する車両速度検出処理を含む結果を画像表示装置２１に表示する処理等をいう。
【００３３】
なお、上記の車両検出処理（ステップＳ１０３〜Ｓ１０９）のうち、ステップＳ１０４の指定方向画像生成処理において、精度向上のために、指定方向画像の収縮処理を複数回実行した後、ステップＳ１０５の移動体画像生成処理を実行してもよい。また、撮影画像と背景画像から背景差分とフレーム差分とを求め、それぞれの差分の論理積演算により移動体部分を抽出してステップＳ１０５の移動体画像生成処理を実行してもよい。いずれも詳細は後述する。
【００３４】
以下、初期化以降の手順毎に詳細手順の説明を行う。まず、車線情報生成処理（ステツプＳ１０２）から説明する。車線情報生成部２０２は、車線毎に設定される一監視エリアに係る車線情報を生成する（ステップＳ１０２）。つまり、車線情報生成部２０２は、記憶装置２２の所定の領域に予め設定され記憶されてある設定ファイル２２１を読み込んで、設定情報を取得し、装置本体２０ａ各部に設定する。
【００３５】
ここで、設定情報の中には、車線毎に設定される監視エリア情報が含まれる。ここでは、起動時にマウス等の操作装置によりクリックされることにより定義される、エリア上端とエリア下端の値が設定されるものとする。なお、エリア上端は、車両の重なりが目立たない範囲で設定されるものとし、エリア下端は、車両の全体像が見えるような範囲とすることが好ましい。例えば、図４（ａ）の撮影画像に示されるように、画像の奥の方で車両の見え方が小さい、あるいは、図４（ｂ）の撮影画像に示されるように、画像の奥の方で殆どの車両が重なってしまうような範囲までの監視エリアの設定は回避することが望ましい。
【００３６】
車線情報生成部２０２は、設定ファイル２２１から監視エリア毎に設定された座標数および座標を入力として得、候補領域抽出部２０５に対して車線情報構造体を出力する。後述するように候補領域抽出部２０５は、監視エリアの座標情報を用いて、そのエリア内を塗り潰した画像を生成する。この塗り潰し画像を用いて、ｙ座標毎にエリアの左端座標、右端座標、エリア幅の情報を取得する。監視エリアが存在しないｙ座標には初期値０が入る。
【００３７】
次に、画像取得部２０１は、撮像装置１０からＷｅｂ３０経由で受信される、設定された車線内の撮影画像を取得して指定方向画像生成部２０３へ出力する（ステップＳ１０３）。
【００３８】
そして、指定方向画像生成部２０３は、撮影画像に基づき前記監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成する（ステップＳ１０４）。つまり、指定方向画像生成部２０３は、オプティカルフローを使って、指定した方向に移動する車両のみを抽出した指定方向画像を生成する。ここで指定方向画像のみ抽出するのは、対向車線を走る車両との重なり分離が可能で、かつ、対向車線を走行する車両の影や映り込みの侵入との分離や除外を可能にし、更には、日照変化等の画面に与える影響を受けにくいことにある。
【００３９】
図５（ａ）（ｂ）（ｃ）に、入力画像とオプティカルフローによる指定方向画像とを対応付けて示してある。図５（ａ）において、記号Ａを付した領域は、指定方向±４５°以内のオプティカルフローを検出した画素群であり、記号Ｂを付して示した領域は、指定方向の逆方向のオプティカルフローを検出した画素群である。
【００４０】
図５（ａ）に示す例は、対向車線を走る車両との重なりが分離されており、図５（ｂ）に示す例は、映り込み（影）が逆方向にあるため検出対象から除外されており、また、図５（ｃ）に示す例は、対向車両の映り込みの影響を受けないため、検出対象の車両のオプティカルフローの抽出が容易であることを示している。なお、いずれも記号Ｂを付した領域は、指定方向から逆方向のオプティカルフローを示す。
【００４１】
指定方向画像生成部２０３は、現在画像と過去画像とを入力として得、２値の指定方向画像を特徴画像生成部２０４へ出力する。具体的に、指定方向画像生成部２０３は、オプティカルフローを算出して連続する画像から物体の動きをベクトルで表現する。
【００４２】
指定方向画像生成部２０３は、現在画像と過去画像とが入力されると画素毎にフローベクトル（ｘ方向、ｙ方向の移動画素数）を算出する。そして、画素毎にフローベクトルの向き（角度）と強度（速度）を算出して指定方向画像（２値）を作成する。続いて候補領域抽出部２０５は、画素毎にフローベクトルの向き（角度）が“指定方向±マージン”の範囲内かつ強度（速度）が速度の閾値以上かを判定する。
【００４３】
このとき、指定方向画像生成部２０３は、収縮処理部２０７を制御して指定方向画像を数回収縮処理してもよい。これは、オプティカルフロー算出で、一定の窓サイズ領域内は同じようなフローベクトルに丸め込む処理を行っているため、指定方向画像が実際の車両の大きさよりも膨らんでいる傾向にあるためであり、収縮処理部２０７により、数回収縮処理を施すことにより指定方向画像の精度向上がはかれる。
【００４４】
次に、移動体画像生成部２０８は、撮影画像と背景画像から背景差分とフレーム差分とを求め、前記それぞれの差分の論理積演算により動体部分を抽出して特徴画像生成部２０４へ出力する（ステップＳ１０５）。これは、画像上の車両の存在位置を絞り込むために行われる。上記したように指定方向画像では膨らむ傾向にあり、このため、画像上では重なっていない車両同士でも接触した形になりやすい。このような場合、移動体画像との論理積演算を行うことで解消することができる。
【００４５】
図６（ａ）に、入力画像と、指定方向画像と、移動体画像のそれぞれが示されている。図中、楕円枠で囲まれた領域がその対象領域であり、指定方向画像では接触しているが、移動体画像では分かれていることが視認できる。日照変化等で動体画像の全体が差分になるような場合、逆に指定方向画像はあまり影響を受けないため補完する側にまわる。このことは、図６（ｂ）に示されている。
【００４６】
移動体画像生成部２０８は、図６（ａ）（ｂ）に示すように、単純に背景差分とフレーム間差分とを論理積演算することにより移動体画像を生成している。移動体画像の精度が良いほど、車両抽出の精度も向上する。
【００４７】
次に、特徴画像生成部２０４は、撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、エッジ画像の差分画像を二値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成する（ステップＳ１０６）。すなわち、候補領域抽出部２０５で、ある程度検出したい車両の位置がわかるため、その中から、如何に車両だけを抽出するかを考えた時に、車両の特徴として、両端に垂直エッジが発生することに着目した。特徴画像生成部２０４は、撮影画像と背景画像とを入力とし、それぞれの垂直成分のエッジ画像を生成後、ハフ変換により垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した画像を生成して候補領域抽出部２０５へ２値化された特徴画像を出力する。
【００４８】
すなわち、特徴画像生成部２０４は、現在画像の垂直成分のエッジ画像を生成し（例えばｙ方向のみソーベルフィルタ）、背景画像の垂直成分のみエッジ画像を生成する（ｙ方向だけのソーベルフィルタ）。そして、これらエッジ画像を用いて背景のエッジ部分を削除するために差分画像を生成する。続いて差分画像を２値化する。そして、２値化された差分画像を用いて、ハフ変換による線分抽出を行う。ここでは、確率的ハフ変換を利用して，２値画像から垂直の線分のみを検出する。そして、抽出された全ての線分に対して始点座標間と終点座標間を塗り潰した画像を生成して候補領域抽出部２０５へ出力する。
【００４９】
図７に、入力画像と、差分画像の２値化画像（垂直エッジ画像）と、抽出された全ての垂直の線分に対して始点座標間と終点座標間を塗り潰した特徴画像（垂直線分画像）が示されている。この塗り潰し画像では、車両の両端で垂直の線分を抽出していることが理解できる。
【００５０】
候補領域抽出部２０５は、前記監視エリア毎に車両抽出領域画像を出力する（ステップＳ１０７）。すなわち、候補領域抽出部２０５は、これまでの処理で生成された情報を用いて車線（監視エリア）毎に車両候補領域の抽出を行う。ここでは、例えば図８に示すように、「四角い」、「垂直のエッジ線分で挟まれている」、「車の下端の両端は同一の車腺内に存在し、かつ車幅は車線幅の所定の割合以上」等を判定基準とする、車らしさ、あるいは見え方の特徴を使っている。
【００５１】
また、車線毎に車抽出する際に車らしさとして見つける車両の両端の垂直のエッジ線分のペアは、指定方向画像と移動体画像とを論理積演算した画像をラベリングした際の同一ラベル内の線分同士であるという条件を持つ。これは、例えば、図９に示す撮影シーンに効果的である。図９に、入力画像と、特徴画像（垂直線分）と、指定方向画像と移動体画像とを論理積演算した画像がともに示されている。これは、入力画像で同じ車線内にいる２台の車両の垂直線分を同じ車両特徴のペア（候補）と判定しそうな所で、指定方向画像と移動体画像とを論理積演算した画像をラベリングした結果、同一ラベルのペアではないため同じ車両特徴のペアで無いと判定された例である。
【００５２】
候補領域抽出部２０５は、指定方向画像と、移動体画像と、車両特徴画像、および車線（監視エリア）情報構造体である、ｙ座標毎の左端・右端座標、幅を入力とし、車線毎の２値化された車抽出画像を車両検出前処理部２０６へ出力する。このとき、車両検出のための各種設定を要する。ここでは、車線幅に対する車幅の割合の閾値（１割〜１０割の範囲）、車幅に対する車高の割合閾値（１割〜１０割の範囲）、検出された車両の下端の垂直エッジ位置から上方向に伸びる垂直エッジのｘ方向のマージン（数画素）、車高の閾値（映像に合わせて画素数を設定）等が必要である。
【００５３】
候補領域抽出部２０５は、まず、指定方向画像（２値）と移動体画像（２値）とを論理積演算した画像を生成し、ここで生成された画像をラベリングする。そして、車両特徴画像（２値）と車線情報と、ラベルリングの結果生成されたラベル情報とを用いて、車線毎に車両の抽出を行う。すなわち、ｙ座標毎に、図１０（ａ）（ｂ）に示す処理を行う。
【００５４】
つまり、図１０（ａ）に示すように、監視エリアの左端から右端のまでの間に同じラベルの車両特徴のペアがあるか否かをサーチする。ここで、車両特徴のペアが見つかれば、その特徴のｘ座標の差を見て、「右端特徴ｘ２−左端特徴ｘ１＞監視エリア幅×それに対する車幅の割合の閾値か」の条件判定を行う。その条件を満たせば、車両の下端が見つかったものとして、次に、図１０（ｂ）に示す処理を行う。つまり、“ｙ１からｙ１”＋“車幅”×“それに対する車高の割合の閾値”までの間でｙ座標毎に左端特徴がｘ１±マージン内で、かつ右端特徴が、ｘ２±マージン内にあり、共にｙ１で見つかったのと同じラベルの特徴のペアであるかサーチする。
【００５５】
次に、ｙ１から最も離れて見つかったペアがｙ２として、「ｙ２−ｙ１＞車高の閾値か？」を判定する。この条件を満たせば、車両が見つかったものとして、車両抽出画像に対して、図１１に示す処理を行う。つまり、車両抽出画像で左上座標（ｘ１，ｙ２）と右下座標（ｘ２，ｙ１）で矩形内の塗り潰し処理を行う。そして、ｙ座標毎に上記の一連の処理を繰り返し実行し、車両の候補領域抽出処理を終了する。
【００５６】
次に、車両検出前処理部２０６は、車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力する（ステップＳ１０８）。車両検出前処理部２０６は、車両抽出画像を入力とし、車両検出に使用される矩形座標等のラベル結果構造体を出力する。このとき、車両の大きさに関する、車幅閾値、車高閾値として、それぞれ映像に合わせて画素数が設定される。
【００５７】
具体的に、車両検出前処理部２０６は、まず、車両抽出画像をラベリングする。そして、ラベル毎に、設定された車幅と車高の閾値を用いて大きさをフィルタリングする。さらに、渋滞等、同一車線内での車の重なりを分離するために、図１２（ａ）（ｂ）に示す処理をラベル毎に行ってもよい。まず、ラベル内で右下と左上の２つの四角を見つける。具体的に、図１２（ａ）に示すように、ラベルの右下座標（ｘ０，ｙ０）から左へどこからどこまで抽出が続くかサーチする。ここでは、“ｘ１”まで続くことがわかる。次に、図１２（ｂ）に示すように、ラベルの右下座標（ｘ０，ｙ０）の少し内側から上へどこまで抽出が続くかサーチする。ここでは、“ｙ１”までであることがわかる。
【００５８】
以上の処理により、右下のラベル１は、左上座標（ｘ１，ｙ１）と右下座標（ｘ０，ｙ０）で囲まれた矩形であることがわかる。次に、ラベルの左上座標を基準にして、同様の処理を実行することにより左上の四角も見つけることができる。そして、ここで見つかった２つの四角の重なりの度合いを調べて、その度合いにより分離するか否かを決定する。すなわち、重なりの度合いが小さければ、右下と左上の２つのラベルに分離する。重なりの度合いが大きければ分離しない。
【００５９】
図１３（ａ）（ｂ）に、入力画像と車両抽出画像が示されている。図１３（ａ）には、重なり度合いが小さいので２つのラベルに分離される例が示されている。図１３（ｂ）には、見つかる２つの四角はほぼ同じ矩形になるため分離しない例が示されている。以上の処理により、車線毎に１台ずつ車両を抽出したラベル結果情報が生成され、垂直エッジ成分を使用した車線毎の通過車両の検出が可能になる（ステップＳ１０９）。
【００６０】
（実施例１の効果）
以上説明のように実施例１の車両検出装置２０によれば、装置本体２０ａは、（１）車線毎に設定される一監視エリアに係る車線情報を生成し、（２）車線内における交通状況の撮影画像を取得し、（３）撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、（４）撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、エッジ画像の差分画像を二値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成し、（５）監視エリア毎に車両抽出画像を出力し、車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出した車両抽出ラベル情報を出力し、車両検出を行う。
【００６１】
すなわち、特徴画像から垂直エッジで挟まれている幅が車線幅に対して閾値以上であれば通過車両であると判断することができる。また、車幅は車種によって大きな違いがない為、一定の値に指定できる。このことにより、垂直エッジ成分の特徴を使用して車線毎の車両を抽出することが可能になる。したがって、車種毎の車高データを不要とし、また、カメラの取り付け位置に依存することなく、撮影画像から簡単で精度良く１台ずつ車両検出が可能な、車両検出装置を提供することができる。
【００６２】
なお、本実施例１に係るプログラムは、例えば、図１，図２に示す、車線毎に車両を検出する車両検出装置２０のコンピュータに、例えば、図３に示すように、車線毎に設定される一つの監視エリアに係る車線情報を生成する手順（ステップＳ１０２）と、車線内における交通状況の撮影画像を取得する手順（ステップＳ１０３）と、撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成する手順（ステップＳ１０４）と、撮影画像と背景画像のそれぞれの垂直成分のエッジ画像を生成し、エッジ画像の差分画像を二値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成する手順（ステップＳ１０６）と、監視エリア毎に車両抽出画像を出力する手順（ステップＳ１０７）と、車両抽出画像から、設定される車幅閾値と車高閾値とにより１台毎の車両を抽出する車両抽出ラベル情報を出力して車両検出を行う手順（ステップＳ１０８，Ｓ１０９）と、を実行させる。
【００６３】
実施例１に係るプログラムによれば、垂直エッジ成分の特徴を使用して車線毎の車両を抽出することが可能になり、したがって、車種毎の車高データを不要とし、また、カメラの取り付け位置に依存することなく、撮影画像から簡単で精度良く１台ずつ車両検出が可能な車両検出装置２０のプログラムを提供することができる。
【００６４】
次に上記した車両検出結果を使用して通過車両の速度を高い精度で検出する方法について、図１４，図１５を用いて簡単に説明する。まず、準備段階として、図１４に示す撮影画像から、長さ（間隔）が既知である車道中央線の端点Ｄをマウス等によりクリックする。そして、破線の長さ［ｍ］を、使用する画像表示装置２１が持つ解像度によって決まる画像上の長さ［ピクセル］で除算して１画素が占める距離を算出し、縦軸にＹ座標、横軸に１画素が占める距離を目盛ったグラフのＥ上にプロットする。また、間隔についても同様の処理を行い、１ポイントにつき２点プロットする。これを受けて装置本体２０ａは、プロットした点に基づき重み付き最小二乗法によりフィットする関数を求め、この関数にしたがって距離テーブル２２２を作成して記憶装置２２の所定の領域に記憶しておく。
【００６５】
そして、図１５に示すように、走行速度算出部２０９は、先にオプティカルフローにより算出したフレーム間で移動したｙ方向の画素数（ｍｏｖｅ＿ｙ）により、図中矩形枠Ｆで示す検出車両毎に走行速度を計測する。そして、記憶装置２２の所定の領域に記憶されている距離テーブル２２２を参照して車両下端のｙ座標における１ピクセルあたりの距離ｄｉｓｔ［ｍ／ｐｉｘｅｌ］を得、得られる距離と時間データから、以下に示す速度算出式により通過車両の速度［ｍ／ｓ］を求める。なお、以下の演算式に示されるΔｔは、フレーム間の時間差である。
【００６６】
【数１】
2015207211.tif 000003
【００６７】
上記したように、撮影画像内の２点間距離から距離テーブル２２２を作成することにより、装置本体２０ａ（走行速度算出部２０９）が、設定された監視エリア内において車両がフレーム間での移動した画素数と、距離テーブル２２２を参照して得られる距離と、計測したフレーム間の通過時間とから車両の速度を精度よく計算することができる。
【００６８】
なお、本実施形態に係る車両検出装置２０によれば、監視エリア内を通過する車両を検出し検出した車両の速度を算出する場合についてのみ説明したが、同じ仕組みで監視エリア内の通過車両の台数等についてもカウントすることができ、また、通過車両の台数と、通過車両の速度とから、一定速度以下であれば渋滞とする判断も可能になるため、渋滞検出にも応用できる。また、オプティカルフローを使用して撮影画像における車両の動きをベクトル表現したため、規定している方向に対し逆走行している車両の検出や特定に用いる用途にも適用が可能である。
【００６９】
（実施例２）
以下に説明する実施例２は、実施例１の垂直エッジ線分の特徴を用いた車両検出を行いながら、照明環境や車両の色に依存しない、更なる検出精度の向上を目指した車両検出装置２０を提供するものである。すなわち、夜間、電灯等が設置されておらず、明るさが不十分な車両の検出環境において、特に、黒い車両は、映像上で認識できなくなる場合がある。この場合に車両の垂直エッジ線分が検出できなくなることによる車両の検出漏れを抑制するものである。
【００７０】
このため、以下に説明する実施例２では、実施例１における車両検出のために使用するパラメータの設定を変更できるようにした。具体的に、例えば、図１６（ａ）（ｂ）に示すように、夜間等暗い撮影画像でも車両のテールランプは映っているため、テールランプからエッジの抽出が可能であることを利用する。このとき、夜間の撮影画像から車両検出を行う際に変更するパラメータは、車高の最小サイズと、車幅の最小サイズと、ハフ変換による線分抽出の最小線分長さとする。
【００７１】
例えば、図１７（ａ）（ｂ）に示すように、車高の最小サイズは、通常は車体の見えるサイズとし、夜間はテールランプが見えるサイズとし、車幅の最小サイズは、通常は車体の見えるサイズとし、夜間も同じか若干狭めとする。ハフ変換による線分抽出の最小線分長さは、例えば、通常は５ピクセルとし、夜間は、３ピクセルとした。
【００７２】
また、移動体画像の利用有無設定も新たに設けた。通常はＯＮであり、夜間はＯＦＦとする。通常は垂直エッジ線分ペアを見つける際の精度向上のために利用する。指定方向画像と移動体画像の論理積演算により得られる画像をラベリングし、ペアは同一ラベルという条件とする。但し、夜間、移動体画像は２つのテールランプが分離して別ラベルと認識するため、利用しない。このようにして、夜間の真っ暗な映像への対応が可能になる。なお、季節によって暗くなる時間帯は変わり、また、夜間であっても、映像（明るさが十分な環境）によってはパラメータを変更しなくても済む場合があるため、パラメータ変更のタイミングについて、後述する統計処理に基づき決定することとした。以下に、その詳細を実施例２として図１８以降を使用して詳細に説明する。
【００７３】
（実施例２の構成）
図１８に、実施例２に係る車両検出装置２０の内部構成が示されている。図１８に示すように、実施例２に係る車両検出装置２０は、少なくとも、装置本体２０ｂと、画像表示装置２１と、記憶装置２２とを含み構成される。他に、図示省略したキーボードやマウス等の操作装置を含んでもよい。
【００７４】
装置本体２０ｂは、ハードウエア的には図示省略したＣＰＵとプログラムメモリとから構成される。装置本体２０ｂは、ＣＰＵがプログラムメモリに格納されたプログラムを逐次読み出し実行することにより、（１）車線毎に設定される一つの監視エリアに係る車線情報を生成し、（２）車線内における交通状況の撮影画像を取得し、（３）撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、監視エリア毎に生成された前記指定方向画像をラベリングして車両が存在する候補領域を抽出し、（４）候補領域を白と黒のクラスタに分類して白黒判定を行ない、（５）撮影画像およびその背景画像の垂直成分のエッジ画像を生成し、その差分のエッジ画像を２値化後、垂直線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成して車両検出の可否を判定し、車両検出不可と判定された前記候補領域に対して白黒判定された白の領域を抽出してラベリングによる車両検出の可否を判定し、（６）車両検出の可否の割合に基づき車両検出環境の明暗判定を行ない、その判定結果に基づき車両検出パラメータの設定変更を行う。
【００７５】
このため、ＣＰＵが実行するプログラムの構造は、画像取得部２１１と、車線情報生成部２１２と、候補領域抽出部２１３と、クラスタ判定部２１４と、車両検出可否判定部２１５と、パラメータ設定変更部２１６の、複数のモジュールに展開して示すこことができる。また、後述するように、統計処理部２１７を含んでもよい。
【００７６】
画像取得部２１１は、Ｗｅｂ３０経由で受信される車線内における交通状況の撮影画像を取得して候補領域抽出部２１３へ出力する画像取得手段として機能する。車線情報生成部２１２は、車線毎に設定される一つの監視エリアに係る車線情報を生成して候補領域抽出部２１３へ出力する車線情報生成手段として機能する。候補領域抽出部２１３は、撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、監視エリア毎に生成された前記指定方向画像をラベリングして車両が存在する候補領域を抽出してクラスタ判定部２１４、および統計処理部２１７へ出力する候補領域抽出手段として機能する。
【００７７】
クラスタ判定部２１４は、候補領域を白と黒のクラスタに分類して白黒判定を行ない、車両検出可否判定部２１５へ出力する白黒判定手段として機能する。車両検出可否判定部２１５は、撮影画像およびその背景画像の垂直成分のエッジ画像を生成し、その差分のエッジ画像を２値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成して車両検出の可否を判定し、車両検出不可と判定された前記候補領域に対して白黒判定された白の領域を抽出してラベリングによる車両検出の可否を判定してパラメータ設定変更部２１６へ出力する車両検出可否判定手段として機能する。
【００７８】
パラメータ設定変更部２１６は、車両検出の可否の割合に基づき車両検出環境の明暗判定を行ない、その判定結果に基づき実施例１の車両検出パラメータの設定変更を行う。なお、統計処理部２１７は、候補領域抽出部２１３で抽出された候補領域内の車両の色毎の統計データを解析する機能を有する。このため、統計処理部２１７は、候補領域抽出部２１３で抽出された候補領域内の車両の色毎の統計データを解析する統計処理手段として機能する。上記した各ブロックの詳細はいずれも後述する。
【００７９】
（実施例２の動作）
以下、図１９のフローチャートを参照しながら、図１８に示す実施例２の車両検出装置２０の動作について詳細に説明する。
【００８０】
実施例２の車両検出装置２０は、図１９のフローチャートに示すように、装置本体２０ｂが、内蔵のプログラムを逐次読み出し実行することにより、（１）車線毎に設定される一つの監視エリアに係る車線情報を生成し、（２）車線内における交通状況の撮影画像を取得し、（３）撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、監視エリア毎に生成された前記指定方向画像をラベリングして車両が存在する候補領域を抽出し、（４）候補領域を白と黒のクラスタに分類して白黒判定を行ない、（５）撮影画像およびその背景画像の垂直成分のエッジ画像を生成し、その差分のエッジ画像を２値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成して車両検出の可否を判定し、車両検出不可と判定された前記候補領域に対して白黒判定された白の領域を抽出してラベリングによる車両検出の可否を判定し、（６）車両検出の可否の割合に基づき車両検出環境の明暗判定を行ない、その判定結果に基づき車両検出パラメータの設定変更を行う。
【００８１】
このため、夜間等、暗い撮影環境においても撮影画像から精度良く１台ずつ車両検出できるように車両検出パラメータの設定変更を行なうことができ、装置本体２０ｂ（車両検出可否判定部２１５）による車両検出可否判定に反映させることができる。
【００８２】
図１９において、車線情報生成部２１２が、車線毎に設定される一つの監視エリアに係る車線情報を生成し、画像取得部２１１が車線内における交通状況の撮影画像を取得する処理までは実施例１と同様である。車線情報生成部２１２から設定された監視エリアに係る車線情報を取得し、画像取得部２１１から車線内における交通状況の撮影画像を取得した候補領域抽出部２１３は、まず、車線毎に車両が存在する候補領域の抽出を行う（ステップＳ２０１）。
【００８３】
より詳細には、候補領域抽出部２１３は、監視エリア内かつ指定方向のオプティカルフローの塊を抽出する。ここでは、概略車両が存在するだろうという塊を意味する。具体的に、まず、撮影画像全体から指定方向画像の生成を行う。次に、指定方向に移動している画素を示す画像を生成する。実施例１同様、画素毎にオプティカルフローを算出し、画素毎にフローベクトルの向き（角度）と強度を算出することで、指定方向画像（２値）を生成することができる。そして、画素毎にフローベクトルの向き（角度）が“指定方向（角度）±マージン”の範囲内であって、かつ強度が閾値以上なら“１”、それ以外は“０”とすることにより２値化する。
【００８４】
次に、候補領域抽出部２１３は、車線毎、監視エリア内のみ指定方向画像の生成を行う。すなわち、監視エリア内で指定方向に移動している画素を示す画像を生成する。具体的に、まず、生成された指定方向画像と監視エリア情報を用いて、監視エリア内のみ指定方向画像（２値）を生成する。監視エリア情報は、監視エリア内の両端に道路の白線が含まれている可能性があり、白線が含まれると後の判定に影響するため、数画素だけ内側に補正する。ここでは、画素毎にエリア内かつ指定方向画像の値が“１”であれば“１”、それ以外は“０”として２値化する。
【００８５】
次に更なる補正を行う。具体的に、候補領域抽出部２１３は、上記のようにして生成された監視エリア内のみ指定方向画像に対して、ｙ座標毎にエリア内の指定方向画素の数が“そのｙ座標のエリア幅×車線幅に対する車幅の割合閾値（％）”未満の場合は、そのｙ座標の画素の値を全て“０”に補正する。このようにして、監視エリア内かつ指定方向のオプティカルフローの塊を抽出する。
【００８６】
すなわち、候補領域抽出部２１３は、ラベル情報を生成し、ラベル毎に外接矩形情報（左上座標、右下座標）を持つ。具体的に、候補領域抽出部２１３は、生成された指定方向画像の補正画像に対してラベリングを行ない、大きさフィルタ（最小サイズ指定）によるラベル除去を行う。ここで、最小サイズｘは、“エリア下端のエリア幅×車線幅に対する車幅の割合閾値＋α（％）”であり、最小サイズｙは、“最小ｘサイズ×車幅に対する車高の割合閾値（％）”である。
【００８７】
このとき、監視エリアに関しては、実施例１で車両検出の際に設定した監視エリアを使用する。監視エリア幅は、後述するように、車線幅情報を車抽出の車特徴に利用するため、車線幅と等しい値とする。
【００８８】
次に、候補領域抽出部２１３は、クラスタ判定部２１４に制御を移す。クラスタ判定部２１４は、候補領域抽出部２１３で抽出された候補領域を、白と黒のクラスタに分類して車両の白黒判定を行なう（ステップＳ２０２）。ここでは、候補領域に車両が存在しているものと仮定して判定する。後の夜判定処理において、車両の色毎に統計データを解析することで夜判定の精度が上がるために実施する。例えば、真っ暗な映像において、白い車の車体は見えるが黒い車の車体は見えない場合に色で区別せずに解析すれば、車体が見えない率は全体的に低いままであり、夜判定されないが、色毎に解析すれば、黒い車の車体の見えない率が高くなるため夜判定されるようになる。
【００８９】
具体的に、クラスタ判定部２１４は、まず、候補領域毎、候補領域内を白クラスと黒クラスに２値化する。ここで、２値化方法として判別分析法（大津の２値化閾値）を利用することとした。これによれば、候補領域内の精度情報を用いて、候補領域内を自動的に２値化してくれる。次に、候補領域内の白黒判定を行う。ここでは、白、または黒またはそれ以外の３種類に判定する。そのために、候補領域抽出部２１３で生成された監視エリア内のみ指定方向画像を参照して、候補領域内にあって、かつ指定方向画素における白クラスの数と黒クラスの数をカウントする。
【００９０】
ここでは、候補領域内の全画素に対して指定方向画素で白クラスであれば白クラス数を＋１、黒クラスであれば黒クラス数を＋１、指定方向画素でない場合何もしない。続いて、候補領域内の白クラスの割合を算出する。例えば、白クラスの割合＝白クラス数／（白クラス数＋黒クラス数）×１００（％）とする。
【００９１】
クラスタ判定部２１４は、算出した割合に対して、閾値Ａと閾値Ｂとによって白黒判定を行う。ここでは、白か黒の２択では、閾値周辺の割合の領域に関して、出力結果が不安定になるため、確実に白、確実に黒、不明の３種類に判定している。そして、白クラスの割合＞閾値Ａであれば、白を出力し、白クラスの割合≦閾値Ｂであれば黒を出力し、それ以外は“不明”として出力する。
【００９２】
次に、クラスタ判定部２１４は、車両検出可否判定部２１５に制御を移す、車両検出可否判定部２１５は、撮影画像およびその背景画像の垂直成分のエッジ画像を生成し、その差分のエッジ画像を２値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成して車両検出の可否を判定し（ステップＳ２０３：車両検出可否判定１）、車両検出不可と判定された候補領域に対してクラスタ判定部２１４で白判定された領域を抽出してラベリングによる車両検出の可否を判定する（ステップＳ２０４：車両検出可否判定２）。
【００９３】
具体的に、車両検出可否判定部２１５は、候補領域抽出部２１３で抽出された車両存在候補領域に対して、同領域内に車体らしいものがあるか否かを判定し、ステップＳ２０３で領域内に垂直エッジのペアが存在するか調べる（車両検出可否判定１）。車両検出可否判定部２１５は、候補領域から垂直エッジ線分を抽出し、その線分を示す画像（２値）を生成する。まず、現在画像の垂直成分のみエッジ画像を生成する。（例えば、ｙ方向のみソーベルフィルタ）、次に、背景画像の垂直成分のみエッジ画像を生成する。（例えば、ｙ方向のみソーベルフィルタ）。そして、背景のエッジ部分を除去するため、両画像の差分画像を生成する。
【００９４】
続いて、車両検出可否判定部２１５は、差分画像を閾値で２値化し、２値画像を用いて、ハフ変換による線分抽出を行う。このとき、垂直方向の線分のみを抽出するようにパラメータを調整し、線分の最小サイズを監視エリア下端における普通車の背景の高さくらいに設定する。そして、抽出された全ての線分に対して、始点座標と終点座標間を塗りつぶした画像（２値）を生成する。
【００９５】
車両検出可否判定部２１５は、次に、車両存在候補領域毎に車両検出可否判定を行う。ここでは、“車両検出可”、または“車両検出不可”の２種類に判定する。具体的に、候補領域内に垂直エッジ線分のペアが存在するか否かをｙ座標毎に調べるももので、先に生成された垂直エッジ線分抽出画像を参照して、領域内のｙ座標毎に垂直エッジ線分画像の値が１である画素のペアを見つける。ここで複数該当する画素があれば、最も離れた画素同士をペアとする。そして、ペアの長さが閾値以上か否かで判定する。
【００９６】
ここで、ペアの長さ＞エリア下端のエリア幅×車線幅に対する車幅の割合閾値（％）の判定条件を満たせば、“車両検出可”を出力することにより車両検出可否判定１の処理は終了する。上記の判定条件を満たさなければ、次のｙ座標において上記した一連の処理を繰り返す。そして、車両存在候補領域内の全てのｙ座標においてペアが上記した判定条件を満たさなければ、“車両検出不可”を出力する。
【００９７】
続いて、車両検出可否判定部２１５は、ステップＳ２０４の「車両検出可否判定２」を実行する。すなわち、車両存在候補領域に対して、車両検出が可能かを判定する。同領域内に車体らしいものがあるかを見つける。この処理は、車両検出可否判定１で“車両検出不可”と判定された領域に対して行う。本来は垂直エッジ線分のペアが見つかるような状況であるのに、例えば、差分画像生成により車両のエッジが背景エッジと重なり消えてしまった等の理由でエッジのペアが見つからなかった場合の救済処置である。ここでは、車両存在候補領域内に大きな明るい部分が存在するか否かにより判定する。大きな明るい部分があるということは垂直エッジも同様に存在することに基づく。
【００９８】
具体的に、車両検出可否判定部２１５は、候補領域内を白クラスと黒クラスに２値化して同領域内の明るい部分を示す画像を抽出する。そしてラベリングを行なってラベル情報を生成する。ここでは、生成されたラベル毎に外接矩形情報（左上座標、右下座標）を持つ。すなわち、車両検出可否判定部２１５は、生成された画像に対してラベリングを行ない、大きさフィルタ（最小サイズ指定）によるラベル除去を行う。ここでは、最小サイズはテールランプ１個のサイズとし、最小サイズｘ＝２、最小サイズｙ＝２とする。次に、候補領域毎の車両検出可否判定を行う。ここでも車両検出可否判定１同様、“車両検出可”と、“車両検出不可”の２種類に判定する。
【００９９】
具体的に、車両検出可否判定部２１５は、まず、生成されたラベル毎に、大きな明るい部分があるかを見る。次に、生成されたラベル情報の中に閾値以上のサイズのものがあるか否かを判定する。閾値を、最小サイズｘ、最小サイズｙ共に監視エリア下端における普通車の背景の幅、高さくらいに設定しておく。上記の判定を満たせば、“車両検出可”を出力して、判定は終了し、満たさなければ、次のラベルにおいて上記の一連の処理を繰り返す。全てのラベルにおいて条件を満たさなければ、“車両検出可”を出力する。
【０１００】
そして、車両検出可否判定部２１５は統計処理部２１７に制御を移す。統計処理部２１７は、候補領域抽出部２１３で抽出された車両存在候補領域に対して、車両検出可否判定部２１５で車両可否判定を行った結果を記憶装置２２の作業領域にデータとして保存する（ステップＳ２０５）。ここで保存するデータは、白黒判定結果（白ｏｒ黒ｏｒ不明）、車両検出可否判定結果（車両検出可ｏｒ車両検出不可）、時刻情報である。
【０１０１】
統計処理部２１７は、記憶装置２２の作業領域に保存してあるデータの解析を行う（ステップＳ２０６）。統計処理部２１７は、候補領域抽出部２１３で抽出された候補領域内の車両の色毎の統計データを解析する。具体的に、統計処理部２１７は、過去数分間のデータから車の色毎に過去数分間のデータ数に対する“車両検出不可”の割合を検出する。このために、まず、統計データを初期化する。そして、過去数分間の“白の台数”，“黒の台数”，“不明の台数”、および過去数分間の“白の検出不可数”，“黒の検出不可数”，“不明の検出不可数”の判定結果の統計をとる。
【０１０２】
そして、時刻情報から、現在〜過去数分間に相当すれば、そのデータの判定結果を見て、統計データを更新する。ここでは、白で車両検出可の場合、白の台数を＋１更新し、白で車両検出不可の場合、白の台数を＋１更新するとともに、白の検出不可数を＋１更新する。また、黒で車両検出可の場合、黒の台数を＋１更新し、黒の車両検出不可の場合、黒の台数を＋１更新するとともに黒の検出不可数を＋１更新する。また、不明で車両検出可の場合、不明の台数を＋１更新し、不明で車両検出不可の場合、不明の台数を＋１更新するとともに不明の検出不可数を＋１更新する。
【０１０３】
統計処理部２１７は、保存されている全てのデータに対して上記の処理を繰り返し、車の色毎に台数に対する検出不可数の割合を計算して、その結果をパラメータ設定変更部２１６に引き渡す。
【０１０４】
パラメータ設定変更部２１６は、統計処理部２１７により出力される統計処理の結果を参照して夜判定を行う（ステップＳ２０７）。パラメータ設定変更部２１６は、真っ暗になって、映像上で車体が認識できなくなったことを検知すると（ステップＳ２０８“ＹＥＳ”）、例えば、車高の最小サイズと、車幅の最小サイズと、ハフ変換による線分抽出の最小線分長さとのパラメータを変更する。
【０１０５】
具体的に、上記した図１７（ａ）（ｂ）に示すように、車高の最小サイズを、通常は車体の見えるサイズに、夜間はテールランプが見えるサイズに、車幅の最小サイズは通常は車体の見えるサイズとし、夜間も同じか若干狭めに設定する。また、ハフ変換による線分抽出の最小線分長さは、例えば通常は５ピクセルとし、夜間は３ピクセルとする。
【０１０６】
なお、夜間であっても、映像上は明るくて車体が認識できる場合は夜と検知させない。例えば、黒い車と判定される数がデータ数に対して極端に少ないとき、夜と検知しない。これを満たさない場合、色毎の検出不可数の割合の高いものがあれば、夜と検知し、また、データ数に対して白い車と判定される割合が低い場合、夜と検知する。パラメータ設定変更部２１６は、通常パラメータと夜間に使用する２種類のパラメータを用意して、夜間検知時に切り替える構成とした。もちろん、夜間ではなくなった場合にも同様に切り替える。
【０１０７】
（実施例２の効果）
以上説明のように実施例２の車両検出装置２０によれば、（１）車線毎に設定される一つの監視エリアに係る車線情報を生成し、（２）車線内における交通状況の撮影画像を取得し、（３）撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、監視エリア毎に生成された前記指定方向画像をラベリングして車両が存在する候補領域を抽出し、（４）候補領域を白と黒のクラスタに分類して白黒判定を行ない、（５）撮影画像およびその背景画像の垂直成分のエッジ画像を生成し、その差分のエッジ画像を２値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成して車両検出の可否を判定し、車両検出不可と判定された前記候補領域に対して白黒判定された白の領域を抽出してラベリングによる車両検出の可否を判定し、（６）車両検出の可否の割合に基づき車両検出環境の明暗判定を行ない、その判定結果に基づき車両検出パラメータの設定変更を行う。
【０１０８】
このため、夜間等、暗い撮影環境においても撮影画像から精度良く１台ずつ車両検出できるように実施例１の車両検出パラメータの設定変更を行なうことができ、夜間、あるいは照明環境に依存しない、より正確な車両検出が可能な車両検出装置を提供することができる。
【０１０９】
なお、本実施例２に係るプログラムは、例えば、図２，図１８に示す、車両検出パラメータに基づき車線毎に車両を検出する車両検出装置２０のコンピュータに、車線毎に設定される一つの監視エリアに係る車線情報を生成する手順（図３のステップＳ１０２と共通）と、車線内における交通状況の撮影画像を取得する手順（図３のステップＳ１０３と共通）と、例えば、図１９示すように、撮影画像に基づき監視エリア毎に指定する方向に移動する車両を抽出した二値化された指定方向画像を生成し、監視エリア毎に生成された前記指定方向画像をラベリングして車両が存在する候補領域を抽出する手順（ステップＳ２０１）と、候補領域を白と黒のクラスタに分類して白黒判定を行う手順（ステップＳ２０２）と、撮影画像およびその背景画像の垂直成分のエッジ画像を生成し、その差分のエッジ画像を２値化後、垂直の線分を抽出し、線分の始点座標と終点座標との間を塗り潰した車両の特徴画像を生成して車両検出の可否を判定し（ステップＳ２０３）、車両検出不可と判定された候補領域に対して白黒判定された白の領域を抽出してラベリングによる車両検出の可否を判定する手順（ステップＳ２０４）と、車両検出の可否の割合に基づき車両検出環境の明暗判定を行ない（ステップＳ２０７）、その判定結果に基づき車両検出パラメータの設定変更を行う手順（ステップＳ２０８）と、を実行させるプログラムである。
【０１１０】
本実施例２に係るプログラムによれば、夜間等、暗い撮影環境においても撮影画像から精度良く１台ずつ車両検出できるように車両検出パラメータの設定変更を行なうことができ、夜間、あるいは照明環境に依存しない、より正確な車両検出が可能になるプログラムを提供することができる。また、夜間判定として所定期間分の統計処理データを活用することにより、実際の交通事情に適した、より精度の高い車両検出が可能になる。
また、実施例１と実施例２はそれぞれ独立して実施されるものであり、実施例１による車両検出中に実施例２の結果から車両検出パラメータを変更する。
【０１１１】
以上、本発明の好ましい実施形態について詳述したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されないことは言うまでもない。上記実施形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。またその様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【０１１２】
１…車両検出システム、１０…撮像装置、２０…車両検出装置、２０ａ，２０ｂ…装置本体、２１…画像表示装置、２２…記憶装置、３０…Ｗｅｂ、２０１…画像取得部、２０２…車線情報生成部、２０３…指定方向画像生成部、２０４…特徴画像生成部、２０５…候補領域抽出部、２０６…車両検出前処理部、２０７…収縮処理部、２０８…移動体画像生成部、２０９…走行速度算出部、２１１…画像取得部、２１２…車線情報生成部、２１３…候補領域抽出部、２１４…クラスタ判定部、２１５…車両検出可否判定部、２１６…パラメータ設定変更部、２１７…統計処理部、２２１…設定ファイル、２２２…距離テーブル
【図２】
2015207211.tif 000004
【図３】
2015207211.tif 000005
【図１８】
2015207211.tif 000006
【図１９】
2015207211.tif 000007
【図１】
2015207211.tif 000008
【図４】
2015207211.tif 000009
【図５】
2015207211.tif 000010
【図６】
2015207211.tif 000011
【図７】
2015207211.tif 000012
【図８】
2015207211.tif 000013
【図９】
2015207211.tif 000014
【図１０】
2015207211.tif 000015
【図１１】
2015207211.tif 000016
【図１２】
2015207211.tif 000017
【図１３】
2015207211.tif 000018
【図１４】
2015207211.tif 000019
【図１５】
2015207211.tif 000020
【図１６】
2015207211.tif 000021
【図１７】
2015207211.tif 000022
【図２０】
2015207211.tif 000023