(58)【調査した分野】(Int.Cl.,DB名)
前記スコア補正手段は、前記直線検出手段による検出結果から得られる、前記抽出手段によって抽出された前記ウインドウ画像内の直線の長さが、長いほど前記スコア算出手段によって算出されたスコアの対象物らしさが低くなるようにスコアを補正する請求項1記載の対象物検出装置。
前記スコア補正手段は、前記直線検出手段による検出結果から得られる、前記抽出手段によって抽出された前記ウインドウ画像内の直線の位置が、ウインドウ画像の中心に近いほど前記スコア算出手段によって算出されたスコアの対象物らしさが低くなるようにスコアを補正する請求項1記載の対象物検出装置。
前記スコア補正手段は、前記直線検出手段による検出結果から得られる、前記抽出手段によって抽出された前記ウインドウ画像内の直線の数が、多いほど前記スコア算出手段によって算出されたスコアの対象物らしさが低くなるようにスコアを補正する請求項1記載の対象物検出装置。
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1の歩行者検出装置では、直線成分の位置と歩行者候補領域の位置の関係を考慮しておらず一律に非歩行者と判定してしまうため、
図1に示すような中距離から遠方に存在する歩行者が電柱の線分と重なるように存在した場合に、誤って歩行者を非歩行者と判定してしまう、という問題がある。
【0007】
また、パタン認識による識別スコアは直線成分による判定には全く利用されておらず、どんなに識別スコアが高くても
図1のように直線成分が検出されてしまった場合には、非歩行者と判定されてしまう、という問題がある。
【0008】
本発明は、上述した問題を解決するために成されたものであり、非対象物を精度良く排除し、ドライバにとって危険度の高い対象物を精度良く検出することができる対象物検出装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために第1の発明の対象物検出装置は、自装置の周辺を撮像した撮像画像から直線を検出する直線検出手段と、前記撮像画像からウインドウ画像を抽出する抽出手段と、前記抽出手段によって抽出された前記ウインドウ画像について、前記ウインドウ画像から抽出される特徴量と、対象物を識別するための識別モデルとに基づいて、前記対象物らしさを示すスコアを算出するスコア算出手段と、前記直線検出手段による検出結果から得られる、前記抽出手段によって抽出された前記ウインドウ画像内の直線の長さ、前記ウインドウ画像内の直線の位置、及び前記ウインドウ画像内の直線の数の少なくとも1つに基づいて前記スコア算出手段によって算出されたスコアを補正するスコア補正手段と、前記スコア補正手段によって補正されたスコアに基づいて、前記ウインドウ画像が前記対象物を表す画像か否かを識別する識別手段と、を含んで構成されている。
【0010】
第2の発明のプログラムは、コンピュータを、自装置の周辺を撮像した撮像画像から直線を検出する直線検出手段、前記撮像画像からウインドウ画像を抽出する抽出手段、前記抽出手段によって抽出された前記ウインドウ画像について、前記ウインドウ画像から抽出される特徴量と、対象物を識別するための識別モデルとに基づいて、前記対象物らしさを示すスコアを算出するスコア算出手段、前記直線検出手段による検出結果から得られる、前記抽出手段によって抽出された前記ウインドウ画像内の直線の長さ、前記ウインドウ画像内の直線の位置、及び前記ウインドウ画像内の直線の数の少なくとも1つに基づいて前記スコア算出手段によって算出されたスコアを補正するスコア補正手段、及び前記スコア補正手段によって補正されたスコアに基づいて、前記ウインドウ画像が前記対象物を表す画像か否かを識別する識別手段として機能させるためのプログラムである。
【0011】
第1の発明及び第2の発明によれば、直線検出手段によって、自装置の周辺を撮像した撮像画像から直線を検出し、抽出手段によって、前記撮像画像からウインドウ画像を抽出し、スコア算出手段によって、前記抽出手段によって抽出された前記ウインドウ画像について、前記ウインドウ画像から抽出される特徴量と、対象物を識別するための識別モデルとに基づいて、前記対象物らしさを示すスコアを算出し、スコア補正手段によって、前記直線検出手段による検出結果から得られる、前記抽出手段によって抽出された前記ウインドウ画像内の直線の長さ、前記ウインドウ画像内の直線の位置、及び前記ウインドウ画像内の直線の数の少なくとも1つに基づいて前記スコア算出手段によって算出されたスコアを補正する。
【0012】
そして、識別手段によって、前記スコア補正手段によって補正されたスコアに基づいて、前記ウインドウ画像が前記対象物を表す画像か否かを識別する。
【0013】
このように、識別モデルに基づいて、スコアを算出し、算出したスコアをウインドウ画像内の直線の長さ、ウインドウ画像内の直線の位置、及びウインドウ画像内の直線の数の少なくとも1つに基づいて補正し、補正されたスコアに基づいて、ウインドウ画像が対象物を表す画像か否かを識別することにより非対象物を精度良く排除し、ドライバにとって危険度の高い対象物を精度良く検出することができる。
【0014】
また、上記の対象物を、歩行者とすることができる。
【0015】
また、スコアを補正する手段は、前記ウインドウ画像内における直線の長さが、長いほど前記スコア算出手段によって算出されたスコアの対象物らしさが低くなるようにスコアを補正するように構成することができる。
【0016】
また、スコアを補正する手段は、前記ウインドウ画像内における直線の位置が、ウインドウ画像の中心近くに存在するほど前記スコア算出手段によって算出されたスコアの対象物らしさが低くなるようにスコアを補正するように構成することができる。
【0017】
また、スコアを補正する手段は、前記ウインドウ画像内における直線の数が、ウインドウ画像に多く存在するほど前記スコア算出手段によって算出されたスコアの対象物らしさが低くなるようにスコアを補正するように構成することができる。
【0018】
なお、本発明のプログラムを記憶する記憶媒体は、特に限定されず、ハードディスクであってもよいし、ROMであってもよい。また、CD−ROMやDVDディスク、光磁気ディスクやICカードであってもよい。更にまた、該プログラムを、ネットワークに接続されたサーバ等からダウンロードするようにしてもよい。
【発明の効果】
【0019】
以上説明したように、本発明によれば、識別モデルに基づいて、スコアを算出し、算出したスコアをウインドウ画像内の直線成分の状態に基づいて補正し、補正されたスコアに基づいて、ウインドウ画像が対象物を表す画像か否かを識別することにより非対象物を精度良く排除し、ドライバにとって危険度の高い対象物を精度良く検出することができる。
【発明を実施するための形態】
【0021】
以下、図面を参照して本発明の実施の形態を詳細に説明する。本実施の形態では、車両に搭載され、対象物として歩行者を検出する対象物検出装置に本発明を適用した場合について説明する。
【0022】
図2に示すように本実施の形態に係る対象物検出装置10は、識別対象領域を含む範囲を撮像する撮像装置14と、撮像装置14から出力される撮像画像に基づいて歩行者を検出する対象物検出処理ルーチンを実行するコンピュータ12と、コンピュータ12での処理結果を表示するための表示装置34と、を備えている。
【0023】
撮像装置14は、識別対象領域を含む範囲を撮像し、画像信号を生成する撮像部(図示省略)と、撮像部で生成されたアナログ信号である画像信号をデジタル信号に変換するA/D変換部(図示省略)と、A/D変換された画像信号を一時的に格納するための画像メモリ(図示省略)とを備えている。なお、用いる画像はカラーでもモノクロでも良いし、可視光画像でも近赤画像でもよい。
【0024】
コンピュータ12は、対象物検出装置10全体の制御を司るCPU、後述する対象物検出処理ルーチンのプログラム等を記憶した記憶媒体としてのROM、ワークエリアとしてデータを一時格納するRAM、及びこれらを接続するバスを含んで構成されている。このような構成の場合には、各構成要素の機能を実現するためのプログラムをROMやHDD等の記憶媒体に記憶しておき、これをCPUが実行することによって、各機能が実現されるようにする。
【0025】
このコンピュータ12をハードウエアとソフトウエアとに基づいて定まる機能実現手段毎に分割した機能ブロックで説明すると、
図2に示すように、撮像装置14で撮像されコンピュータ12へ入力された撮像画像を取得する画像取得部16と、取得した撮像画像から直線を抽出する直線成分抽出部18と、取得した撮像画像から所定領域のウインドウ画像を抽出するウインドウ画像抽出部20と、ウインドウ画像抽出部20により抽出されたウインドウ画像について画像特徴量を抽出する特徴量抽出部22と、ウインドウ画像について抽出された画像特徴量と識別モデルとを比較して、歩行者らしさを示すスコアを算出するスコア算出部24と、ウインドウ画像内の直線成分抽出部18で抽出された直線に基づいてスコア算出部24で算出されたスコアを補正するスコア補正部30と、識別モデルが記憶された識別モデル記憶部26と、ウインドウ画像が検出対象の歩行者を表す画像であるか否かを識別する歩行者識別部32と、を含んだ構成で表すことができる。
【0026】
直線成分抽出部18は、撮像画像から直線を抽出し、メモリ等に記録する。直線を抽出する方法としては、ハフ変換や、高速でより精度の高い線分抽出アルゴリズム(Rafael Grompone von Gioi, Jeremie Jakubowicz, Jean-Michel Morel, Gregory Randall, LSD:A Fast Line Segment Detector with a False Detection Control, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.32, no.4, pp. 722-732, April 2010.)などを利用できる。なお、誤った直線検出を抑制するため、道路に存在する人工構造物はある一定の長さ以上あると仮定して、あらかじめ設定した長さ以下の直線は除外してもよい。
【0027】
ウインドウ画像抽出部20は、撮像画像から予め定められたサイズのウインドウ(探索ウインドウと呼称)を1ステップにつき、予め定められた移動量(探索ステップと呼称)だけ移動させながら画像を切り取る。ここでは切り取った画像をウインドウ画像といい、ウインドウ画像のサイズ(すなわち探索ウインドウのサイズ)をウインドウサイズと呼称する。ウインドウサイズは様々なサイズの歩行者を検出するために複数種設定されており、ウインドウ画像抽出部20は、設定されている全てのウインドウサイズの探索ウインドウを用いてウインドウ画像を抽出する。また、ウインドウ画像抽出部20は、抽出したウインドウ画像を予め設定された画素数の画像に変換する。
【0028】
特徴量抽出部22は、各ウインドウ画像について画像特徴量を抽出する。画像特徴量として、Haar-Like Feature、 HOG(Histograms of Oriented Gradients)、FIND(Feature Interaction Descriptor)等が利用できる。なお、FINDについては、非特許文献(Hui CAO, Koichiro YAMAGUCHI, Mitsuhiko OHTA, Takashi NAITO and Yoshiki NINOMIYA:" Feature Interaction Descriptor for Pedestrian Detection", IEICE TRANSACTIONS on Information and Systems, Volume E93-D No.9, pp.2651-2655, 2010)に記載されているものを利用すればよいため、詳細な説明を省略する。
【0029】
識別モデル記憶部26には、予め学習により生成され、かつ、スコア算出部24でスコアを算出する際に参照される識別モデルが記憶されている。なお、ここでは、識別モデル記憶部26をコンピュータ12に設ける場合について説明するが、他の外部装置の記憶手段に識別モデルを記憶しておき、ネットワークや通信手段を介して他の外部装置に接続して、他の外部装置の記憶手段に記憶された識別モデルを読み込むような構成としてもよい。
【0030】
ここで、識別モデル記憶部26に記憶される識別モデルである歩行者モデルは、歩行者の全身の輪郭形状を学習したものを利用しても良いし、各部位(例えば歩行者の頭部、胴体、脚部など)を学習したものを利用してもよい。また、歩行者の属性(向きや年齢)ごとに学習したモデルを利用しても良い。
【0031】
スコア算出部24は、各ウインドウ画像について、特徴量抽出部22で抽出された特徴量と識別モデル記憶部26に記憶されている識別モデルを用いてウインドウ画像内に歩行者が存在するかどうかの確信度を示す識別スコアを算出する。なお、識別器としてはBoostingや、SVM等が利用できる。なお、識別器から出力されるスコアを確率値に変換した値をスコアとすることもできる。
【0032】
スコア補正部30は、各ウインドウ画像について、各ウインドウ画像内に存在する直線成分抽出部18で抽出された直線の有無や直線の位置に応じてスコア算出部24で算出されたスコアを補正する。なお、スコア補正にあたっては、直線を用いて歩行者が存在しない可能性を、直線の長さ、直線のウインドウ画像内の存在位置、及びウインドウ画像内の直線の数を用いて数値化して、スコアの補正を行う。
【0033】
ここで、ウインドウ画像内に存在する直線の長さについて、
図3に示すように、歩行者の後ろに道路構造物が存在する場合には、ウインドウ画像内に存在する直線の長さが短くなる。一方、ウインドウ画像内に存在する直線の長さが長いと、道路構造物の可能性が高くなる。そのため、ウインドウ画像内に存在する直線の長さが長いほど、その直線が道路構造物に由来する可能性が高いと判断し、スコアが低くなるように補正する。
【0034】
また、
図4に示すように直線がウインドウ画像の端の部分に存在する場合には、直線が存在していたとしても、直線が与えるスコアへの影響度は低くなる。一方、ウインドウ画像の中央部を通過するような直線があった場合には、部分画像内に歩行者が存在する可能性が低くなり、道路構造物である可能性が高いと判断し、スコアが低くなるように補正する。具体的には、
図5に示すようにウインドウ画像内を同心の矩形領域に分割して、中心の領域に直線が存在しているほど大きい値を付与するような処理を行い、付与される値が大きいほど、スコアが低くなるように補正される。
図5の例でいえば、ウインドウ画像内の直線Lはウインドウ画像内に設定された領域a、領域b、領域cを通過しているが、このうち最も高い値を持つ領域cの値を採用する。
【0035】
また、ウインドウ画像内に直線が多く存在すれば、ウインドウ画像内に歩行者が存在する可能性は低いと判断し、スコアが低くなるように補正する。
【0036】
そのため、直線の長さ、直線のウインドウ画像内の存在位置、及びウインドウ画像内の直線の数に基づいてスコア算出部24で算出されたスコアを補正する場合には、以下の(1)式を用いて行う。
【数1】
ここで、S’は補正後のスコア、Sはスコア算出部24で求められるスコア、Nはウインドウ画像内に存在する直線の数、D
iは直線iの長さ、E
iはウインドウ画像内の存在位置に関する値、α、β(>0)は補正パラメータで、この値が大きければ補正量が大きくなり、小さければ補正量が小さくなる。
【0037】
歩行者識別部32は、各ウインドウ画像について、スコア補正部30で補正されたスコアを閾値処理することにより、対象物が歩行者であるか否かの判定を行う。
【0038】
次に、本実施の形態の対象物検出装置10の作用について説明する。
まず、歩行者モデル学習処理について説明する。
【0039】
歩行者モデルは、予め歩行者が撮像された対象物の学習用画像及び歩行者以外が撮像された非対象物の学習用画像を所定枚数(例えば、各1000枚)用意し、これらの学習用画像をSVMにより学習して生成される。
【0040】
そして、学習された歩行者モデルを識別モデル記憶部26へ記憶する。
【0041】
また、対象物検出装置10を搭載した車両が走行しているときに、撮像装置14によって前方画像が撮像され、コンピュータ12によって、
図6に示す対象物検出処理ルーチンが繰り返し実行される。
【0042】
ステップ100で、撮像装置14で撮像された撮像画像を取得し、次に、ステップ102で、撮像画像から直線を抽出する。
【0043】
次に、ステップ104で、撮像画像に対して探索ウインドウを撮像画像に設定し、設定した探索ウインドウを用いて、撮像画像からウインドウ画像xを抽出する。
【0044】
次に、ステップ106で、上記ステップ104で抽出されたウインドウ画像xから画像特徴量を抽出し、ステップ108では、上記ステップ106で抽出した特徴量と識別モデルとに基づいて、スコアを算出する。
【0045】
次に、ステップ110で、上記ステップ102で抽出した直線のうちウインドウ画像x内に存在する直線を抽出する。
【0046】
次に、ステップ112で、上記ステップ110で抽出された直線に基づいて、上記(1)式に従って、上記ステップ108で算出されたスコアを補正する。
【0047】
次に、ステップ114で、上記ステップ112で補正されたスコアに基づいてウインドウ画像xが歩行者画像であるか否かを判定する。歩行者と判定された場合にはステップ16へ移行し、歩行者でないと判定された場合にはステップ118へ移行する。
【0048】
ステップ116では、ウインドウ画像xを歩行者領域として記録する。
【0049】
次に、ステップ118では、上記ステップ100で取得された撮像画像の全体について探索ウインドウをスキャンして探索が終了したか否かを判断する。終了していない場合は、ステップ104へ戻り、探索ウインドウの位置を予め定められた探索ステップだけ移動させた位置からウインドウ画像を抽出し、ステップ104〜ステップ118の処理を繰り返す。また、現サイズの探索ウインドウでの画像全体の探索が終了した場合には、同様にステップ104へ戻り、探索ウインドウのサイズを変更して、ステップ104〜ステップ118の処理を繰り返す。撮像画像全体について、全てのサイズの探索ウインドウでの探索が終了した場合には、ステップ120へ移行する。
【0050】
ステップ120では、検出結果の出力として、上記ステップ116で記録された歩行者領域に基づいて、撮像画像に対して、検出された歩行者がウインドウで囲まれて表示されえるように表示装置34を制御して、処理を終了する。
【0051】
以上説明したように、本実施の形態の対象物検出装置10によれば、識別モデルに基づいて、スコアを算出し、算出したスコアをウインドウ画像内の直線の状態に基づいて補正し、補正されたスコアに基づいて、ウインドウ画像が対象物を表す画像か否かを識別することにより非対象物を精度良く排除し、ドライバにとって危険度の高い対象物を早期に精度良く検出することができる。
【0052】
なお、上記の実施の形態では、直線の長さ、直線のウインドウ画像内の存在位置、及びウインドウ画像内の直線の数に基づいてスコアを補正したが、これに限定されるものではない。例えば、直線の長さ、直線のウインドウ画像内の存在位置、又はウインドウ画像内の直線の数のうち少なくとも1つに基づいてスコアを補正してもよい。
【0053】
また、上記実施の形態では、対象物を歩行者とした場合を例に説明したが、これに限定されるものではなく、直線成分が少ない対象物であれば歩行者以外であってもよい。