以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、本実施の形態では、車両前方を撮像した画像から識別対象物を識別する対象物識別装置に本発明を適用した場合を例に説明する。
<第1の実施の形態>
図1に示すように、第1の実施の形態に係る対象物識別装置10は、車両(図示省略)に取り付けられ、かつ、車両の前方を撮像して画像を生成する撮像装置12と、撮像装置12から得られる撮像画像から識別対象物を識別する処理を実行するコンピュータ14と、コンピュータ14の識別結果を表示する表示装置16とを備えている。
撮像装置12は、車両の前方を撮像した画像の画像信号を生成する撮像部(図示省略)と、撮像部で生成された画像信号をA/D変換するA/D変換部(図示省略)と、A/D変換された画像信号を一時的に格納するための画像メモリ(図示省略)とを備えている。
コンピュータ14は、CPUと、RAMと、後述する識別処理ルーチン及び学習処理ルーチンを実行するためのプログラムを記憶したROMとを備えている。このコンピュータ14は、機能的には、図1に示すように、識別部20と学習部40とを含んだ構成で表すことができる。
識別部20はさらに、撮像装置12により撮像された画像を取得して、取得した撮像画像から、様々な大きさの切り出しウインドウを用いて走査することにより、複数のウインドウ画像を抽出するウインドウ画像抽出部22と、抽出した各ウインドウ画像から第1特徴量ベクトルを抽出する第1特徴量抽出部24と、抽出された第1特徴量ベクトルの各要素の有効性を判定するための判定基準値を決定する判定基準決定部26と、決定された判定基準値に基づいて有効と判定された第1特徴量ベクトルの各要素から第2特徴量ベクトルを抽出する第2特徴量抽出部28と、第2特徴量ベクトルを用いて、ウインドウ画像が識別対象物を撮像した画像か否かを識別する対象物識別部30とを含んだ構成で表すことができる。
第1特徴量抽出部24は、ウインドウ画像抽出部22で抽出された識別対象となるウインドウ画像から、ウインドウ画像の特徴量を複数に分類した物理量に関連する値を要素とする第1特徴量ベクトルを抽出する。第1の実施の形態では、第1特徴量ベクトルとしてHOG特徴量を抽出する。具体的には、図2に示すように、ウインドウ画像を、例えば、p×p画素からなるq×q個の複数のセルに分割する。図2(図3左図も参照)では、12×12画素のウインドウ画像を、4×4画素のセル9個に分割した例を示している。そして、各セル内の全ての画素について、画像の特徴量として輝度勾配の方向及び強度を求める。勾配強度は、下記(1)式に従って算出される。
ただし、m(x,y)は画像座標(x,y)での勾配強度であり、I(x,y)は画像座標(x,y)の輝度値である。ここで、勾配強度は、上記(1)式に示すように、画像の各画素を注目画素としたときの注目画素の周辺に存在する周辺画素の輝度差に基づいて求められ、注目画素及び周辺画素を含む所定領域内の輝度の変化度合いを示している。
また、勾配方向θは、下記(2)式に従って算出される。
ただし、θ(x,y)は画素座標(x,y)での勾配の方向である。
第1特徴量抽出部24は、各セルについて算出された各画素の勾配強度及び勾配方向に基づいて、図3に示すように、各セルに対する勾配方向のヒストグラム(以下、勾配方向ヒストグラムと称する。)を算出する。具体的には、勾配方向を0〜180度或いは0〜360度の範囲を所定角度ずつに、m方向に分割する。ここでは、図4に示すように、勾配方向を8つの方向に分類するものとする。同図の例では、0〜360度の範囲を45度ずつに分割している。なお、ヒストグラムの投票時には、各画素の持つ勾配方向に対応したヒストグラム方向に、その画素が持つ勾配強度で投票することによって、勾配方向ヒストグラムを算出する。そして、図5に示すように、各セルの勾配方向ヒストグラムを連結して、各セルの各勾配方向各々を要素とし、各要素の勾配強度合計を特徴量値とするHOG特徴量を、第1特徴量ベクトルHとして抽出する。第1特徴量ベクトルHの各要素の特徴量値をhi(i=1,・・・,M、iは要素番号)とする。なお、Mは要素数であり、M=m×q×qである。
判定基準決定部26は、抽出された第1特徴量ベクトルHの各要素hiの有効性を判定するための判定基準値を決定する。
ここで、本実施の形態における判定基準値の決定の原理について説明する。
第1の実施の形態のように、第1特徴量ベクトルとしてHOG特徴量を用いた場合には、各セル内が均一なパターンやランダムパターンでなければ、勾配方向を8方向に分割した場合、特徴量値が大きくなる要素数は通常2個以下、多くとも3個以下となる傾向が強い。また、特徴量値の小さな要素は、識別に有効な情報が含まれていないため、識別性能に与える影響が小さいことから、特徴量値が大きな要素のみを有効な要素と判定する。
そこで、図6に示すように、各要素の特徴量値の平均より大きい判定基準値を設け、この判定基準値以上の特徴量値を有する要素を有効な要素として判定するものである。判定基準値を、各要素の特徴量値の平均より大きい値とするのは、上記のように、特徴量値が大きい要素数より特徴量値が小さい要素数の割合の方が高い傾向があるため、判定基準値を平均値以下とすると、特徴量値が小さい要素の影響が大きく出すぎた判定基準値となってしまい、真に有効な要素を判定することができないためである。なお、平均化方法としては、相加平均、相乗平均、二乗平均など、特に限定されない。
判定基準決定部26は、上記のような原理に従って、まず、特徴量ベクトルXのノルムrを求め、ノルムrに係数kを掛けて判定基準値thを決定する。係数kは、例えば、√2/M〜√3/M程度の値とすることができる。Mは特徴量ベクトルの次元数(=要素数)であるため、この係数kをノルムrに掛けることにより、各要素の特徴量値の平均より大きな判定基準値が得られる。
第2特徴量抽出部28は、第1特徴量ベクトルHの各要素に対して、その要素の特徴量値hiが判定基準値th以上か否かを判定することにより、その要素の有効性を判定する。そして、第1特徴量ベクトルHの各要素のうち、特徴量値hiが判定基準値thより小さい要素の特徴量値hiを0とした第2特徴量ベクトルXを抽出する。特徴量値が0の要素は、後述する対象物識別部30において、識別器として線形SVMを用いる場合に、識別に寄与しなくなる。また、第1特徴量ベクトルHの各要素のうち、特徴量値hiが判定基準値th以上の要素のみで表された第2特徴量ベクトルXを抽出するようにしてもよい。この場合、特徴量値hiが判定基準値th以上となる要素番号iを記憶しておき、識別段階で、記憶された要素番号の要素のみを用いるようにするとよい。
また、第2特徴量抽出部28は、有効な要素(特徴量値が0以外の要素)の特徴量値に正規化係数αを掛けて正規化し、有効性の判定及び正規化後の要素からなる第2特徴量ベクトルXを抽出してもよい。正規化係数αは、第1特徴量ベクトルHのノルムの逆数とすることができる。有効な要素を判定した後に正規化することで、正規化の処理も削減することができる。
対象物識別部30は、第2特徴量抽出部28により抽出された第2特徴量ベクトルXに基づいて、識別モデル記憶部60に記憶された識別モデル(詳細は後述)を用いて、ウインドウ画像が識別対象物を示す画像か否かを識別する。識別器として線形SVMを用いた場合には、下記(3)式を用いて評価値を求める。
ここで、a及びbは学習によって求められたモデルで、aiは第2特徴量ベクトルの要素番号iの要素の特徴量値xiに対する係数、bはバイアス値である。f(X)≧0の場合に、処理対象のウインドウ画像が識別対象物を示す画像であると識別する。なお、第1の実施の形態では、xi=hi(hi≧th),0(hi<th)である。
また、学習部40はさらに、第1特徴量抽出部44と、判定基準決定部46と、第2特徴量抽出部48と、第2特徴量ベクトルを用いて、識別対象物を識別するための識別モデルを学習する識別モデル学習部50とを含んだ構成で表すことができる。
第1特徴量抽出部44は、識別対象物を撮像した部分を切り出しウインドウにより切り出した複数の対象物画像と、識別対象物以外を撮像した部分を切り出しウインドウにより切り出した複数の非対象物画像とをサンプル画像として取得する。サンプル画像を切り出すウインドウのサイズは、識別処理のウインドウ画像のサイズと同じである。そして、取得した複数の対象物画像及び複数の非対象物画像各々について、識別部20の第1特徴量抽出部24と同様に、第1特徴量ベクトルHを抽出する。
判定基準決定部46及び第2特徴量抽出部48は、識別部20の判定基準決定部26及び第2特徴量抽出部28と同様に、第1特徴量ベクトルHから判定基準値を決定し、有効な要素を判定して、第2特徴量ベクトルXを抽出する。
識別モデル学習部50は、各サンプル画像について抽出された第2特徴量ベクトルXを学習サンプルとし、各サンプル画像が対象物画像及び非対象物画像の何れであるかに応じて付与される教師ラベルを用いて、識別モデルとして線形SVMを学習する。学習処理により求めた識別モデルを識別モデル記憶部60に記憶する。
次に、第1の実施の形態の対象物識別装置10の作用について説明する。後述する学習処理ルーチンにより学習された識別モデルが識別モデル記憶部60に記憶された状態で、対象物識別装置10を搭載した車両の走行中に、撮像装置12によって車両の前方の所定領域が撮像されると、コンピュータ14は、撮像装置12から撮像画像を取得し、撮像画像に対して、様々な大きさの切り出しウインドウを走査しながら、切り出しウインドウによってウインドウ画像を抽出する。そして、コンピュータ14において、抽出したウインドウ画像の各々について、図7に示す識別処理ルーチンが実行される。
ステップ100で、ウインドウ画像を複数のセルに分割し、各セル内の全ての画素について、輝度勾配の方向及び強度を求め、勾配方向ヒストグラムを算出する。そして、各セルの勾配方向ヒストグラムを連結して、各セルの各勾配方向各々を要素iとし、各要素の勾配強度合計を特徴量値hiとする第1特徴量ベクトルHを抽出する。
次に、ステップ102で、上記ステップ100で抽出した第1特徴量ベクトルHのノルムに係数kを掛けて、各要素の特徴量値の平均より大きな判定基準値thを決定する。
次に、ステップ104で、要素番号を示す変数iに1をセットして、次に、ステップ106で、第1特徴量ベクトルHの要素番号iの特徴量値hiが、上記ステップ102で決定した判定基準値thより小さいか否かを判定する。hi<thの場合には、その要素は有効ではないと判定して、ステップ108へ移行し、hiを0にして、ステップ110へ移行する。一方、hi≧thの場合には、その要素は有効であると判定して、そのままステップ110へ移行する。
ステップ110では、iがMとなったか否かを判定することにより、第1特徴量ベクトルHの全ての要素について有効性を判定したか否かを判定する。i≠Mの場合には、ステップ112へ移行して、iを1インクリメントしてステップ106へ戻る。i=Mとなった場合には、ステップ114へ移行する。
ステップ114では、有効な要素(特徴量値が0以外の要素)の特徴量値に正規化係数αを掛けて正規化した第2特徴量ベクトルXを抽出する。
次に、ステップ116で、第2特徴量ベクトルXに基づいて、識別モデル記憶部60に記憶された識別モデルを用いて、ウインドウ画像が識別対象物を示す画像か否かを識別する。そして、ステップ118において、上記ステップ116における識別結果を表示装置16に表示して、識別処理ルーチンを終了する。上記の識別処理ルーチンが、抽出されたウインドウ画像の各々について実行される。
次に、第1の実施の形態における学習処理について説明する。識別対象物を撮像した部分を切り出しウインドウにより切り出した複数の対象物画像と、識別対象物以外を撮像した部分を切り出しウインドウにより切り出した複数の非対象物画像とが、サンプル画像として用意された状態で、コンピュータ14において、図8に示す学習処理ルーチンが実行される。なお、識別処理ルーチンと同様の処理については、同一符号を付して詳細な説明を省略する。
ステップ140で、用意されたサンプル画像を1枚取得し、ステップ100から114において、識別処理ルーチンと同様に、サンプル画像から第2特徴量ベクトルXを抽出する。
次に、ステップ142で、用意された全てのサンプル画像について第2特徴量ベクトルXを抽出したか否かを判定する。未処理のサンプル画像が存在する場合には、ステップ140へ戻り、全てのサンプル画像について処理が終了した場合には、ステップ144へ移行する。
ステップ144では、各サンプル画像から抽出された第2特徴量ベクトルXを学習サンプルとし、各サンプル画像が対象物画像及び非対象物画像の何れであるかに応じて付与される教師ラベルを用いて、識別モデルとして線形SVMを学習する。次に、ステップ146で、上記ステップ144で学習した識別モデルを識別モデル記憶部60に記憶して、学習処理ルーチンを終了する。
以上説明したように、第1の実施の形態の対象物識別装置によれば、処理対象のウインドウ画像から、ウインドウ画像の特徴量を複数に分類した物理量に関連する値を要素とする第1特徴量ベクトルを抽出し、各要素の特徴量値の平均より大きい判定基準値を決定して、特徴量値が判定基準値以上の要素からなる第2特徴量ベクトルを抽出して識別に用いるため、識別性能を低下させることなく、データ量及び処理時間を削減することができる。
<第2の実施の形態>
次に、第2の実施の形態について説明する。なお、第2の実施の形態の対象物識別装置において、第1の実施の形態の対象物識別装置10の構成と同一の構成については、同一符号を付して詳細な説明を省略する。
図9に示すように、第2の実施の形態に係る対象物識別装置210は、撮像装置12と、コンピュータ214と、表示装置16とを備えている。
コンピュータ214は、機能的には、図9に示すように、識別部220と学習部240とを含んだ構成で表すことができる。
識別部220はさらに、ウインドウ画像抽出部22と、抽出した各ウインドウ画像を複数のブロックに分割する領域分割部32と、各ブロックから第1特徴量ベクトルを抽出する第1特徴量抽出部224と、抽出された第1特徴量ベクトルの各要素の有効性を判定するための判定基準値をブロック毎に決定する判定基準決定部226と、決定された判定基準値に基づいて有効と判定された第1特徴量ベクトルの各要素から第2特徴量ベクトルを抽出する第2特徴量抽出部228と、対象物識別部30とを含んだ構成で表すことができる。
領域分割部32は、図10に示すように、ウインドウ画像抽出部22により抽出されたウインドウ画像を、複数のブロックj(j=1,・・・,J、jはブロック番号、Jはブロック数)に分割する。図10の例では、ウインドウ画像を9つのブロックに分割した例を示している。
第1特徴量抽出部224は、第1特徴量ベクトルとしてFIND特徴量を抽出する。具体的には、領域分割部32で分割されたブロック毎に、各ブロックを複数のセルに分割し、HOG特徴量と同様に各セルについて勾配方向ヒストグラムを算出する。そして、各セルについて算出した勾配方向ヒストグラムについて、図11に示すように、各要素の組み合わせについて、相関値を演算する。ここで、要素の組み合わせには、同じ勾配方向ヒストグラム内での要素の組み合わせ、及び異なる勾配方向ヒストグラム間での要素の組み合わせが含まれる。また、相関値を演算する関数については多数の選択がある。例えば、HOG特徴量における要素hiとhjとの相関値f(hi,hj)を、最小値関数min(hi,hj)、積hi・hj、調和平均関数2hi・hj/(hi+hj)等により演算する。第1特徴量抽出部224は、ブロックj内の各セルについて演算された相関値を並べて特徴量値としたFIND特徴量を、ブロック毎の第1特徴量ベクトルFjとして抽出する。なお、ブロック毎の第1特徴量ベクトルFjは、Fj=[fj 1,・・・,fj M']で表される。M'は1つのブロックから抽出されたFIND特徴量の要素数である。
判定基準決定部226は、抽出されたブロック毎の第1特徴量ベクトルFjの各要素の有効性を判定するための判定基準値thjを、ブロック毎に決定する。判定基準値は、第1の実施の形態と同様に、第1特徴量ベクトルのノルムに係数kを掛けて決定する。FIND特徴量は、2つのセルのHOG特徴量の相関を求めるものである。ここで、第1の実施の形態の判定基準値の決定の原理で述べたように、勾配方向を8方向に分割した場合、HOG特徴量では、特徴量値が大きくなる要素数は通常2個以下、多くとも3個以下となる傾向が強い。従って、FIND特徴量において、特徴量値が大きくなる要素の割合は(2/8)2〜(3/8)2程度となると考えられる。特徴量値の小さな要素は、識別に有効な情報が含まれていない要素の相関であると考えられ、そのような相関値を用いなくとも識別性能は低下しない。FIND特徴量の場合、第1特徴量ベクトルのノルムに二乗ノルムを用い、係数kを√2/M'程度とすると、第1特徴量ベクトル中の有効な要素数は、第1特徴量ベクトルの要素数M'の1/10程度となる。
第2特徴量抽出部228は、ブロック毎の第1特徴量ベクトルFjの各要素の有効性を、第1の実施の形態と同様に判定し、有効でない要素の特徴量値fj iを0としたブロック毎の第2特徴量ベクトルXjを抽出する。ブロック毎の第2特徴量ベクトルXjを全て連結して、最終的な第2特徴量ベクトルXとする。
また、学習部240はさらに、領域分割部52と、第1特徴量抽出部244と、判定基準決定部246と、第2特徴量抽出部248と、識別モデル学習部50とを含んだ構成で表すことができる。各部の処理は識別部220の対応する各部と同様であるため、説明を省略する。
次に、第2の実施の形態の対象物識別装置210の作用について説明する。第1の実施の形態と同様に、識別モデルが識別モデル記憶部60に記憶された状態で、対象物識別装置210を搭載した車両の走行中に、撮像装置12によって車両の前方の所定領域が撮像されると、コンピュータ214は、撮像装置12から撮像画像を取得し、撮像画像に対して、様々な大きさの切り出しウインドウを走査しながら、切り出しウインドウによってウインドウ画像を抽出する。そして、コンピュータ214において、抽出したウインドウ画像の各々について、図12に示す識別処理ルーチンが実行される。なお、第1の実施の形態の識別処理ルーチンと同様の処理については、同一符号を付して詳細な説明を省略する。
ステップ200で、ウインドウ画像を複数のブロックjに分割し、次に、ステップ201で、ブロック番号を示す変数jに1をセットする。
次に、ステップ202〜110で、第1の実施の形態の識別処理ルーチンのステップ100〜110と同様に、ブロックjについて第1特徴量ベクトルFjを抽出して、各要素の有効性を判定する。
次に、ステップ212で、jがJとなったか否かを判定することにより、全てのブロックについて処理が終了したか否かを判定する。j≠Jの場合には、ステップ214へ移行して、jを1インクリメントしてステップ202へ戻る。j=Jとなった場合には、ステップ216へ移行する。
ステップ216では、有効な要素で構成されたブロック毎の第2特徴量ベクトルXjを全て連結して、最終的な第2特徴量ベクトルXとして抽出する。そして、第2特徴量ベクトルXに基づいて、識別モデル記憶部60に記憶された識別モデルを用いて、ウインドウ画像が識別対象物を示す画像か否かを識別する。そして、ステップ118において、上記ステップ216における識別結果を表示装置16に表示して、識別処理ルーチンを終了する。上記の識別処理ルーチンが、切り出されたウインドウ画像の各々について実行される。
なお、第1の実施の形態のように、ステップ212とステップ216との間で、ブロック毎の第2特徴量ベクトルについて、有効と判定された要素を正規化する処理を行ってもよい。
学習処理については、サンプル画像から、上記の識別処理と同様に第2特徴量ベクトルを抽出して学習に用いればよいため、詳細な説明を省略する。
以上説明したように、第2の実施の形態の対象物識別装置によれば、処理対象のウインドウ画像を複数のブロックに分割し、ブロック毎に第1特徴量ベクトルの抽出、判定基準値の決定、及び各要素の有効性の判定を行うため、より精度良く要素の有効性を判定することができる。
<第3の実施の形態>
次に、第3の実施の形態について説明する。なお、第3の実施の形態の対象物識別装置において、第1の実施の形態の対象物識別装置10の構成と同一の構成については、同一符号を付して詳細な説明を省略する。
図13に示すように、第3の実施の形態に係る対象物識別装置310は、撮像装置12と、コンピュータ314と、表示装置16とを備えている。
コンピュータ314は、機能的には、図13に示すように、識別部320と学習部340とを含んだ構成で表すことができる。
識別部320はさらに、ウインドウ画像抽出部22と、第1特徴量抽出部24と、判定基準決定部26と、第2特徴量ベクトルを正規化するための正規化係数を算出する正規化係数算出部34と、判定基準値に基づいて有効と判定された第1特徴量ベクトルの各要素を正規化係数で正規化した第2特徴量ベクトルを抽出する第2特徴量抽出部328と、対象物識別部30とを含んだ構成で表すことができる。
第3の実施の形態では、第1特徴量ベクトルの有効な要素を用いて、第2特徴量ベクトルの各要素を演算する。そこで、第1及び第2の実施の形態と同様に、第1特徴量ベクトルの各要素の特徴量値の平均より大きい判定基準値を設け、この判定基準値以上の特徴量値を有する要素を有効な要素として判定する。判定基準値を、各要素の特徴量値の平均より大きい値とするのは、前述のとおり、特徴量値が大きい要素数より特徴量値が小さい要素数の割合の方が高い傾向があるため、判定基準値を平均値以下とすると、特徴量値が小さい要素の影響が大きく出すぎた判定基準値となってしまい、真に有効な要素を判定することができないためである。なお、平均化方法としては、相加平均、相乗平均、二乗平均など、特に限定されない。
判定基準決定部26は、上記のような原理に基づいて、下記(4)式に従って判定基準値thを決定する。
ここで、kは係数であり、1〜√2程度の値とすることができる。なお、判定基準値thの算出式は(4)式の例に限定されず、下記(5)式や(6)式を用いてもよい。
正規化係数算出部34は、第1特徴量抽出部24により抽出された第1特徴量ベクトルH=[h1,h2,・・・,hM]を用いて、後段の第2特徴量抽出部328で抽出される第2特徴量ベクトルを正規化するための正規化係数αを算出する。正規化係数αは、例えば、下記(7)式や(8)式により算出することができる。
(7)式の正規化係数を用いた場合には、(8)式の正規化係数を用いた場合より識別精度が高くなり、(8)式の正規化係数を用いた場合には、(7)式の正規化係数を用いた場合より計算コストを抑えることができる。また、正規化係数αの算出式は上記に限定されるものではなく、後段の第2特徴量抽出部328による第2特徴量ベクトルの計算において、特徴量の次元を無次元化するようなものであればよい。
第2特徴量抽出部328は、第2特徴量ベクトルとして、第1特徴量ベクトルHとして抽出されたHOG特徴量の各要素間の相関値を要素とするFIND特徴量を抽出する。具体的には、第1特徴量ベクトルHの各要素のうち、特徴量値hiが判定基準決定部26により決定された判定基準値th以上の要素を用いて、第2特徴量ベクトルの各要素の特徴量値を演算し、かつ正規化係数算出部34により算出された正規化係数αを用いて各特徴量値を正規化する。
例えば、第2特徴量ベクトルXとして抽出されるFIND特徴量は、X=[f(h1,h2),・・・,f(h1,hM),f(h2,h3),・・・,f(hM−1,hM)]のように表現することができる。各要素の特徴量値f(hi,hj)は、下記(9)式により演算することができる。
なお、h1,h2≧thとなる要素番号の組み合わせi,jを記憶しておき、識別段階で、記憶された要素番号の組み合わせi、jから得られるf(hi,hj)のみを用いるようにしてもよい。判定基準値thを決定するための係数kを上述のように1〜√2程度とすることにより、第2特徴量ベクトルの各要素のうち、特徴量値が0以外となる要素の割合は1/10程度となる。
また、学習部340はさらに、第1特徴量抽出部44と、判定基準決定部46と、正規化係数算出部54と、第2特徴量抽出部348と、識別モデル学習部50とを含んだ構成で表すことができる。各部の処理は識別部320の対応する各部と同様であるため、説明を省略する。
次に、第3の実施の形態の対象物識別装置310の作用について説明する。第1の実施の形態と同様に、識別モデルが識別モデル記憶部60に記憶された状態で、対象物識別装置310を搭載した車両の走行中に、撮像装置12によって車両の前方の所定領域が撮像されると、コンピュータ314は、撮像装置12から撮像画像を取得し、撮像画像に対して、様々な大きさの切り出しウインドウを走査しながら、切り出しウインドウによってウインドウ画像を抽出する。そして、コンピュータ314において、抽出したウインドウ画像の各々について、図14に示す識別処理ルーチンが実行される。なお、第1の実施の形態の識別処理ルーチンと同様の処理については、同一符号を付して詳細な説明を省略する。
ステップ100で、ウインドウ画像から第1特徴量ベクトルHを抽出する。次に、ステップ301で、第1特徴量ベクトルHの各要素を用いて、第2特徴量ベクトルを正規化するための正規化係数αを算出する。
次に、ステップ102〜110で、第1の実施の形態と同様に、第1特徴量ベクトルHの各要素hiの有効性を判定する。
次に、ステップ314で、第1特徴量ベクトルHの各要素のうち、特徴量値hiが判定基準値th以上の要素間の相関値を、上記ステップ301で算出された正規化係数αを用いて正規化する。この正規化した値を各要素の特徴量値とする第2特徴量ベクトルXを抽出する。
次に、ステップ116で、第2特徴量ベクトルXに基づいて、識別モデル記憶部60に記憶された識別モデルを用いて、ウインドウ画像が識別対象物を示す画像か否かを識別し、次に、ステップ118で、上記ステップ116における識別結果を表示装置16に表示して、識別処理ルーチンを終了する。上記の識別処理ルーチンが、切り出されたウインドウ画像の各々について実行される。
学習処理については、サンプル画像から、上記の識別処理と同様に第2特徴量ベクトルを抽出して学習に用いればよいため、詳細な説明を省略する。
以上説明したように、第3の実施の形態の対象物識別装置によれば、識別に用いる第2特徴量ベクトルを抽出する前に、第1特徴量ベクトルの要素を用いて正規化係数を算出しておき、第2特徴量ベクトルの各要素の特徴量値を、判定基準値に基づいて有効と判定された第1特徴量ベクトルの要素から算出する際に、事前に算出しておいた正規化係数によって正規化することで、必要な要素の特徴量値のみを算出すればよいため、第2特徴量ベクトルの計算コストを大幅に削減することができる。
また、第3の実施の形態のように、第1特徴量ベクトルをHOG特徴量、第2特徴量ベクトルをFIND特徴量とした場合には、計算コストを大幅に削減しつつ、HOG特徴量より識別精度の高いFIND特徴量を識別に用いることができる。
<第4の実施の形態>
次に、第4の実施の形態について説明する。なお、第4の実施の形態の対象物識別装置において、第1の実施の形態の対象物識別装置10及び第3の実施の形態の対象物識別装置310の構成と同一の構成については、同一符号を付して詳細な説明を省略する。
図15に示すように、第4の実施の形態に係る対象物識別装置410は、撮像装置12と、コンピュータ414と、表示装置16とを備えている。
コンピュータ414は、機能的には、図15に示すように、識別部420と学習部440とを含んだ構成で表すことができる。
識別部420はさらに、ウインドウ画像抽出部22と、第1特徴量抽出部24と、判定基準決定部26と、正規化係数算出部34と、第1特徴量ベクトルの各要素のうち、判定基準値より小さい要素を用いて追加特徴量ベクトルを抽出する追加特徴量抽出部36と、第2特徴量抽出部328と、対象物識別部430とを含んだ構成で表すことができる。すなわち、第3の実施の形態の識別部320に追加特徴量抽出部36が追加された構成である。
追加特徴量抽出部36は、第1特徴量ベクトルの各要素のうち、特徴量値が判定基準値より小さい要素、すなわち第2特徴量ベクトルの要素として用いられない要素の特徴量値を用いて追加特徴量ベクトルを抽出する。特徴量値が判定基準値より小さく、第2特徴量ベクトルに用いられない要素(有効ではない要素)であっても、対象物の識別に全く寄与しないわけではなく、わずかながら識別に貢献している。このような有効ではない要素1つ1つの識別に与える貢献は小さいが、有効ではない要素数が多くなり過ぎると識別性能の低下が生じる。そこで、識別性能の低下を抑制するための補正項として、有効ではない要素を用いた追加特徴量ベクトルを抽出するものである。
例えば、HOG特徴量として抽出された第1特徴量ベクトルHの各セルに対応したm個の要素からなる部分を、Hi(i=1,2,・・・,L)で表す。ここで、L=q×qである。つまり、Hi=[h(i−1)m+1,h(i−1)m+2,・・・,h(i−1)m+m−1,h(i−1)m+m]であり、H=[H1,H2,・・・,HL−1,HL]である。このとき、追加特徴量ベクトルF’は、F’=[f'(H1,H1),・・・,f'(H1,HL),f'(H2,H2),・・・,f'(HL,HL)]のように表現することができる。追加特徴量ベクトルF’の各要素の特徴量値f'(Hi,Hj)は、例えば、下記(10)式により算出することができる。
ここで、αは正規化係数であり、第2特徴量ベクトルを正規化するために用いる正規化係数と同一のものである。また、 ̄HiはHiの平均を表し、下記(11)式により求める。
なお、本実施の形態では、上記(10)式により、第1特徴量ベクトルの要素を全て用いた追加特徴量ベクトルを抽出する場合について説明したが、追加特徴量ベクトルは、第1特徴量ベクトルの各要素のうち、少なくとも特徴量値が判定基準値より小さい要素を含んで算出されたものであればよい。また、追加特徴量ベクトルの特徴量値の算出式も(10)式に限定されない。例えば、下記(12)式に示すように、第1特徴量ベクトルの各要素のうち、特徴量値が判定基準値thより小さい要素集合{hi|hi<th}の二乗和を追加特徴量ベクトルとして抽出してもよい。
他の例として、図5に示したHOG特徴量として抽出された第1特徴量ベクトルHの各セルに対応したm個の要素からなる部分Hi(i=1,2,・・・,L)毎に、特徴量値が判定基準値thより小さい要素の集合H'i={hj|hj<th,j=(i−1)m,・・・,(i−1)m+m}を抽出し、下記(13)式に示すような特徴量値を有する追加特徴量ベクトルを抽出してもよい。
対象物識別部430は、第2特徴量抽出部328で抽出された第2特徴量ベクトルXと、追加特徴量抽出部36で抽出された追加特徴量ベクトルF'とを合わせた最終的な特徴量ベクトルX'=[X,F']に基づいて、識別モデル記憶部60に記憶された識別モデルを用いて、ウインドウ画像が識別対象物を示す画像か否かを識別する。なお、ここでは、X=[f(h1,h2),・・・,f(h1,hM),f(h2,h3),・・・,f(hM−1,hM)]、F’=[f'(H1,H1),・・・,f'(H1,HL),f'(H2,H2),・・・,f'(HL,HL)]である。
また、学習部440はさらに、第1特徴量抽出部44と、判定基準決定部46と、正規化係数算出部54と、追加特徴量抽出部56と、第2特徴量抽出部348と、識別モデル学習部450とを含んだ構成で表すことができる。すなわち、第3の実施の形態の学習部340に追加特徴量抽出部56が追加された構成である。各部の処理は識別部420の対応する各部と同様であるため、説明を省略する。
次に、第4の実施の形態の対象物識別装置410の作用について説明する。第1の実施の形態と同様に、識別モデルが識別モデル記憶部60に記憶された状態で、対象物識別装置410を搭載した車両の走行中に、撮像装置12によって車両の前方の所定領域が撮像されると、コンピュータ414は、撮像装置12から撮像画像を取得し、撮像画像に対して、様々な大きさの切り出しウインドウを走査しながら、切り出しウインドウによってウインドウ画像を抽出する。そして、コンピュータ414において、抽出したウインドウ画像の各々について、図16に示す識別処理ルーチンが実行される。なお、第1及び第3の実施の形態の識別処理ルーチンと同様の処理については、同一符号を付して詳細な説明を省略する。
ステップ100〜314で、第3の実施の形態と同様に、第2特徴量ベクトルXを抽出する。次に、ステップ415で、第1特徴量ベクトルHの各要素のうち、特徴量値が判定基準値thより小さい要素の特徴量値を用いて追加特徴量ベクトルF'を抽出する。
次に、ステップ416で、第2特徴量ベクトルXと追加特徴量ベクトルF'とを合わせた最終的な特徴量ベクトルX'に基づいて、識別モデル記憶部60に記憶された識別モデルを用いて、ウインドウ画像が識別対象物を示す画像か否かを識別し、次に、ステップ118で、上記ステップ416における識別結果を表示装置16に表示して、識別処理ルーチンを終了する。上記の識別処理ルーチンが、切り出されたウインドウ画像の各々について実行される。
学習処理については、サンプル画像から、上記の識別処理と同様に最終的な特徴量ベクトルを抽出して学習に用いればよいため、詳細な説明を省略する。
ここで、図17に、追加特徴量ベクトルを最終的な特徴量ベクトルに加えた場合(追加特徴あり)と、加えていない場合(追加特徴なし)との識別性能を比較した結果を示す。図17に示すグラフの横軸は誤検出率、縦軸は検出率である。判定基準値を大きくし、第1特徴量ベクトルから第2特徴量ベクトルへの圧縮率を高くして第2特徴量ベクトルの要素数を削減した場合において、識別性能の低下が抑制されていることがわかる。
以上説明したように、第4の実施の形態の対象物識別装置によれば、第2特徴量ベクトルで考慮されない要素を用いて追加特徴量ベクトルを抽出し、第2特徴量ベクトルと合わせて識別に用いるため、要素数の削減による識別性能の低下を抑制することができる。
なお、上記実施の形態では、識別手法として線形SVMを用いた場合で説明したが、非線形SVMやBoosting等の他の識別手法を用いてもよい。
また、上記実施の形態では、識別部と学習部とを同一のコンピュータで構成する場合について説明したが、別々のコンピュータで構成するようにしてもよい。また、学習部で得られる第2特徴量ベクトルまたは追加特徴量ベクトルを追加した最終的な特徴量ベクトルを学習サンプルとして出力する学習サンプル作成装置として構成してもよい。この場合、学習サンプルとしては、有効でない要素を0にした特徴量ベクトルを出力してもよいし、有効な要素番号とその特徴量値とを組にして出力するようにしてもよい。
また、第1の実施の形態では、第1特徴量ベクトルとしてHOG特徴量を、第2の実施の形態ではFIND特徴量を抽出する場合について説明したが、第1の実施の形態でFIND特徴量を、第2の実施の形態でHOG特徴量を抽出するようにしてもよい。また、特徴量ベクトルとして、SIFT特徴量、SURF特徴量、Haar−like特徴量等を用いてもよい。
一例として、Haar−like特徴量について説明する。図18に、Haar−like特徴量の抽出フィルタの一例を示す。図中の網掛け部分は−1、白い部分は1の係数を表す。図2の各セルに対して各抽出フィルタを適用し、各画素の画素値と対応するフィルタの係数とを掛けた値を、セル内の画素分合計した値を特徴量値として抽出することができる。図18の例では、Haar−like1〜Haar−like6の6種類の抽出フィルタによって、各セルから6個の特徴量値が算出される。すなわち、6個の要素を有する第1特徴量ベクトルが抽出される。この第1特徴量ベクトルの各要素の特徴量値の平均値より大きい値を判定基準値として決定し、特徴量値が判定基準値以上の要素からなる第2特徴量ベクトル、または特徴量値が判定基準値より小さい要素の特徴量値を0とした第2特徴量ベクトルを抽出することで、上記各実施の形態と同様の効果を得ることができる。
また、第3の実施の形態では、第1特徴量ベクトルをHOG特徴量、第2特徴量ベクトルをFIND特徴量とする場合について説明したが、これに限定されない。例えば、第1特徴量ベクトルとして、上記のHaar−like特徴量を用いた場合には、第2特徴量ベクトルとして、Joint Haar−like特徴(参考文献「三田、金子、堀、“顔検出に適したJoint Haar−like特徴の提案”、画像の認識・理解シンポジウム(MIRU2005)、予稿集pp.104−111」)を用いることができる。
なお、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムをCDROM等の記憶媒体に格納して提供することも可能である。