(57)【特許請求の範囲】
【請求項１】
動画像の入力を受け付ける受信手段と、
前記動画像を構成するフレーム画像上の部分領域の位置を特定するための位置情報と、前記部分領域に被写体が存在する可能性を示す被写体尤度とを、関連付けて記憶する記憶手段と、
現フレームについて、前フレームとは異なる位置の部分領域であって、前記記憶手段に記憶された被写体尤度のうち、閾値よりも大きい被写体尤度に関連付けられた前記位置情報に対応する部分領域を切り出す切り出し手段と、
前記切り出し手段により切り出された前記部分領域から特定の複数の被写体のそれぞれを検出する検出手段と、
前記部分領域における前記特定の複数の被写体のそれぞれの検出結果に基づいて、現フレームの当該部分領域の位置に対する被写体尤度を導出して前記記憶手段に記憶する導出手段と、
現フレームの画像に対して、前フレームの部分領域とは異なる位置に設定される部分領域の被写体尤度を、前フレームの対応する位置近傍の被写体尤度に基づいて補完し、前記記憶手段に設定する設定手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記動画像を構成する複数のフレーム画像に基づいて被写体の動きを示す動きベクトル情報を生成する生成手段をさらに備え、
前記導出手段は前記動きベクトル情報に基づいて、前記部分領域における被写体尤度を導出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記フレーム画像を所定の倍率に縮小したフレーム縮小画像をさらにフレーム画像として用いることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
受信手段と、記憶手段と、切り出し手段と、検出手段と、導出手段と、設定手段と、を備える画像処理装置を用いた画像処理方法であって、
前記受信手段が、動画像の入力を受け付ける受信工程と、
前記記憶手段が、前記動画像を構成するフレーム画像上における部分領域の位置を特定するための位置情報と、前記部分領域に被写体が存在する可能性を示す被写体尤度とを、関連付けて記憶する記憶工程と、
前記切り出し手段が、現フレームについて、前フレームとは異なる位置の部分領域であって、前記記憶工程で記憶された被写体尤度のうち、閾値よりも大きい被写体尤度に関連付けられた前記位置情報に対応する部分領域を切り出す切り出し工程と、
前記検出手段が、前記切り出し工程で切り出された前記部分領域から特定の複数の被写体のそれぞれを検出する検出工程と、
前記導出手段が、前記部分領域における前記特定の複数の被写体のそれぞれの検出結果に基づいて、現フレームの当該部分領域の位置に対する被写体尤度を導出して前記記憶手段に記憶する導出工程と、
前記設定手段が、現フレームの画像に対して、前フレームの部分領域とは異なる位置に設定される部分領域の被写体尤度を、前フレームの対応する位置近傍の被写体尤度に基づいて補完し、前記記憶手段に設定する設定工程と、
を有することを特徴とする画像処理方法。
【請求項５】
請求項４に記載の画像処理方法をコンピュータに実行させるためのプログラム。
【請求項６】
コンピュータに請求項４に記載の画像処理方法を実行させるためのプログラムが記憶されたコンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
画像中から被写体を検出する技術の例としては、ＶｉｏｌａとＪｏｎｅｓの報告（非特許文献１参照）がある。これは、所定の大きさのサブウィンドウを走査し、サブウィンドウ内の画像として切り出したパターン画像に対し、被写体であるか否かの２クラス判別を行う。この判別では、ＡｄａＢｏｏｓｔを用いて、多くの弱判別器を有効に組合せて判別器を構成し、判別精度を向上させている。一方、この判別器を直列に繋ぎ、カスケード型の検出器を構成するようにする技術もある。さらに、それぞれの弱判別器をＨａａｒタイプの矩形特徴量で構成し、矩形特徴量の算出を、積分画像を利用して高速に行う技術もある。このカスケード型の検出器は、まず前段の単純な（即ち計算量のより少ない）判別器を用いて明らかに被写体でないパターンの候補をその場で除去する。そして、それ以外の候補に対してのみ、より高い識別性能を持つ後段の複雑な（即ち計算量のより多い）判別器を用いて被写体か否かの判定を行う。従って、全ての候補に対して複雑な判定を行う必要がないため高速である。
【０００３】
また、早い段階で被写体でないパターンを対象から外すことで高速化した技術が知られている（特許文献１参照）。これは、顔画像と非顔画像とを識別する顔学習辞書と、対象画像のエッジ画像と、に基づいて、対象画像から顔画像を含むと思われる部分画像を抽出し、学習辞書を参照して、抽出された部分画像が、顔画像を含んでいるか否かを識別するものである。
【０００４】
さらに、動画から効率よく被写体を検出する場合、時間的に近いフレーム同士は相関が高いことを利用すること方法が知られている（特許文献２参照）。これは、物体検出処理によって、何れかの階層において特定物体が検出された場合には、次の入力画像に対しては、特定物体が検出された階層と同じ階層の階層画像に対して物体検出処理を行うものである。
【０００５】
そして、様々な物体の認識において処理を共通化する一般物体認識の処理方式が提案されている（非特許文献２参照）。このような一般物体認識の方式を利用することにより、認識したい物体に応じてパラメータを切替えれば、様々な物体の認識が可能になる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−４４８５３号公報
【特許文献２】特開２００７−２５７３５８号公報
【非特許文献】
【０００７】
【非特許文献１】Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＩＥＥＥ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ  （ＣＶＰＲ'０１） Ｒａｐｉｄ  Ｏｂｊｅｃｔ  Ｄｅｔｅｃｔｉｏｎ  ｕｓｉｎｇ  Ｂｏｏｓｔｅｄ  Ｃａｓｃａｄｅ  ｏｆ  Ｓｉｍｐｌｅ  Ｆｅａｔｕｒｅｓ
【非特許文献２】柳井、「一般物体認識の現状と今後」、情報処理学会論文誌、Vol.48, No.SIG_16(CVIM_19), 2007.11.15
【発明の概要】
【発明が解決しようとする課題】
【０００８】
非特許文献１及び特許文献１は、１枚の画像を対象としたものであり、動画から被写体を効率的に探索することは考慮されていないという課題がある。
【０００９】
特許文献２は、検出結果によって次のフレームの探索範囲を絞り込むものであるが、検出しなかった場所は探索範囲外となる。従って、新たにフレームインした被写体や物陰から現れた被写体を検出するためには定期的に全領域を対象にして探索する必要があるため、効率よく検出することができないという課題がある。
【００１０】
上記の課題に鑑み、本発明は、動画から被写体を効率よく検出することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を達成する、本発明に係る情画像処理装置は、
動画像の入力を受け付ける受信手段と、
前記動画像を構成するフレーム画像上の部分領域の位置を特定するための位置情報と、前記部分領域に被写体が存在する可能性を示す被写体尤度とを、関連付けて記憶する記憶手段と、
現フレームについて、前フレームとは異なる位置の部分領域であって、前記記憶手段に記憶された被写体尤度のうち、閾値よりも大きい被写体尤度に関連付けられた前記位置情報に対応する部分領域を切り出す切り出し手段と、
前記切り出し手段により切り出された前記部分領域から特定の複数の被写体のそれぞれを検出する検出手段と、
前記部分領域における前記特定の複数の被写体のそれぞれの検出結果に基づいて、現フレームの当該部分領域の位置に対する被写体尤度を導出して前記記憶手段に記憶する導出手段と、
現フレームの画像に対して、前フレームの部分領域とは異なる位置に設定される部分領域の被写体尤度を、前フレームの対応する位置近傍の被写体尤度に基づいて補完し、前記記憶手段に設定する設定手段と、
を備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、動画から被写体を効率よく検出することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】（ａ）画像処理装置のハードウェア構成の一例を示す図（その１）、（ｂ）画像処理装置の概略構成を示した図。
【図２】第１実施形態の概略処理の一例を示すフローチャート。
【図３】サブウィンドウの走査方法の一例を示す図。
【図４】表示装置１０９に表示する画面の一例を示す図。
【図５】探索制御部１５２の処理の一例を示すフローチャート。
【図６】被写体尤度情報の位置を移動する一例を示す図。
【図７】（ａ）被写体判別部１５３の概要の一例を示す図、（ｂ）各強判別部７０１の一例を示す図、（ｃ）各弱判別部７１１の一例を示す図。
【図８】（ａ）判別情報格納部７２５に格納される判別パラメータについての説明図、（ｂ）多重解像度化したパターンと画素番号との関係を示す図。
【図９】顔判別処理の一例を示すフローチャート。
【図１０】被写体判別部１５３のその他の例を示す図。
【図１１】画像処理装置のハードウェア構成の一例を示す図（その２）。
【発明を実施するための形態】
【００１４】
（第１実施形態）
図１（ａ）を参照して、本実施形態に係る画像処理装置のハードウェア構成の一例について説明する。ＣＰＵ１０１は、ＲＯＭ１０２やＲＡＭ１０３に格納されたプログラムに従って各種命令を実行する。ＣＰＵ１０１がプログラムに従って命令を実行することによって、後述する機能やフローチャートに係る処理が実現される。ＲＯＭ１０２は、本実施形態に係るプログラムやその他の制御に必要なプログラムやデータを格納する。ＲＡＭ１０３は、画像情報１１２、被写体尤度情報１１３の他、一時的なデータを格納する。ドライブＩ／Ｆ１０４は、ＩＤＥやＳＣＳＩ等の外部記憶装置とのインターフェースを実現する。ＨＤＤ１０５は、画像やパターン抽出等のプログラムや、顔、非顔のサンプルパターン等を記憶するハードディスクである。動画像入力装置１０６は、デジタルビデオカメラやネットワークカメラ等の装置から動画像を受信する入力装置である。動入力装置１０８への入力は、キーボードやマウス等であって、オペレータからの入力により実行される。表示装置１０９は、ブラウン管や液晶ディスプレイ等である。ネットワークＩ／Ｆ１１０は、インターネットやイントラネット等のネットワークと接続を行うモデムやＬＡＮ等である。バス１１１は、これらを接続して相互にデータの入出力を行うバスである。
【００１５】
図１（ｂ）を参照して、本実施形態に係る画像処理装置の概略構成について説明する。動画像入力部１５１は、動画像入力装置１０６から入力される動画像の各フレームを入力する。被写体検出部１５５は、探索制御部１５２と、被写体判別部１５３と、被写体尤度情報記憶部１５４とを備える。探索制御部１５２は、被写体を評価するための、後述する図３のサブウィンドウ３０１の走査方法を制御する。より具体的に説明すると、探索制御部１５２は、走査位置における前フレームの被写体尤度情報に従って走査幅の制御を行う。被写体判別部１５３は、サブウィンドウ３０１内の画像情報が被写体であるか否かを評価し、被写体らしさ（被写体尤度情報）の値を出力し、かつ、所定の閾値との比較によって被写体らしい領域を判定する。被写体尤度情報記憶部１５４は、入力画像の領域の位置と被写体サイズ毎の被写体らしさ（被写体尤度情報）とを関連付けて記憶する。
【００１６】
次に、図２を参照して、本実施形態の概略処理の一例を示すフローチャートについて説明する。本実施形態では被写体の一例として人間の顔を検出する画像処理装置を挙げて説明する。
【００１７】
ステップＳ２０１において、動画像入力部１５１は、動画像入力装置１０６から入力された各フレーム画像データをＲＡＭ１０３に読み込む。ここで読み込まれた画像データは、例えば８ビットの画素により構成される２次元配列のデータであり、Ｒ（ＲＥＤ）、Ｇ（ＧＲＥＥＮ）、Ｂ（ＢＬＵＥ）、の３つの面により構成される。このとき、画像データがＭＰＥＧ、ＭｏｔｉｏｎＪＰＥＧ等の方式により圧縮されている場合、動画像入力部１５１は、画像データを所定の解凍方式にしたがって解凍し、ＲＧＢ各画素により構成される画像データとする。更に、本実施形態では動画像入力部１５１は、ＲＧＢデータを輝度画像データに変換し、輝度画像データを以後の処理に適用するものとして、ＲＡＭ１０３に格納する。
【００１８】
また動画像入力部１５１は、画像データとしてＹＣｒＣｂのデータを入力する場合、Ｙ成分をそのまま輝度画像データとしても良い。なお、以降の処理に適用するものは輝度画像データに限定されるものではない。明るさやコントラスト調整等の正規化、色変換処理の他に所定の方向のエッジの強さを示すエッジ画像や、微分、積分等の画像処理を行った１つ又は異なる画像処理を適用した複数の画像データを以降の処理に適用するようにしてもよい。
【００１９】
次に、ステップＳ２０２において、動画像入力部１５１は、画像データを所定の倍率に縮小した輝度画像データ（フレーム縮小画像）を生成する。これは、本実施形態では様々な大きさの顔の検出に対応するために、複数のサイズの画像データに対して順次検出を行うようにしたためである。例えば、倍率が１．２倍程度異なる複数の画像の縮小処理が後段の検出処理のために順次適用される。図３に示される（ａ）は、ステップＳ２０２において縮小されたそれぞれの縮小画像を示しており、ここでは、それぞれの縮小画像に対して、ある位置を基準として所定の大きさの矩形領域を切り出すものとする。
【００２０】
次に、ステップＳ２０３において、探索制御部１５２は、縮小された輝度画像データ上に所定の大きさのサブウィンドウ（部分領域）を設定する。この処理の詳細は後述する図５等を参照して説明する。
【００２１】
次に、ステップＳ２０４において、被写体判別部１５３は、照合パターンが顔パターンか非顔パターンかを判別する。この処理の詳細は後述する図９等を参照して説明する。
【００２２】
ステップＳ２０５において、ステップＳ２０２の出力である縮小輝度画像に対して図３に示すようなサブウィンドウ３０１の走査が終了したか否かが判定される。走査が終了した場合（ステップＳ２０５；ＹＥＳ）、ステップＳ２０６に進む。一方、走査が終了していない場合（ステップＳ２０５；ＮＯ）、ステップＳ２０２に戻る。そして、倍率が異なる縮小処理が順次適用され、ステップＳ２０２からステップＳ２０５までの処理が繰り返される。
【００２３】
ステップＳ２０６において、被写体判別部１５３は、顔と判別されたパターンを表示装置１０９へ顔領域として出力する。
【００２４】
図４を参照して、上記表示装置１０９に表示する画面の一例について説明する。図４では、入力画像４０１に顔の検出結果を重畳して出力した画面表示の一例となっている。検出結果枠４０２は、被写体判別部１５３によって抽出された顔パターンで、その位置と大きさとが示された枠である。ボタン４０３は画面を閉じることを指定するボタンである。
【００２５】
次に、ステップＳ２０７において、例えば動画像入力部１５１は、動画が終了したか否かを判定する。動画が終了していた場合（ステップＳ２０７；ＹＥＳ）、処理を終了してリターンする。一方、動画が終了していない場合（ステップＳ２０７；ＮＯ）、ステップＳ２０２に戻る。
【００２６】
次に、被写体尤度情報について説明する。被写体尤度情報とは、サブウィンドウ３０１内に被写体が存在する可能性を示す情報である。図３における各縮小画像でのサブウィンドウ３０１の移動可能領域に基づいた数だけ存在する。２次元データは、縮小画像の幅−サブウィンドウ３０１の幅＋１と、縮小画像の高さ−サブウィンドウ３０１の高さ＋１との積の数だけ存在することになる。具体的には、１０画素×１０画素の入力画像において、５画素×５画素のサブウィンドウ（部分領域）を、１画素ずつ行及び列をずらしてラスタスキャンする場合を考える。その場合、画像の幅１０−サブウィンドウの幅５＋１（＝６）と、画像の高さ１０−サブウィンドウの高さ５＋１（＝６）との積である３６箇所のサブウィンドウの位置における３６個の被写体尤度情報が得られることになる。
【００２７】
例えば、被写体判別部１５３は、サブウィンドウ３０１の位置に基づいて記憶アドレスを求め、この記憶アドレスに被写体尤度情報を記憶する。例えば、被写体判別部１５３は、サブウィンドウ３０１の左上の座標に相当する位置に対応づけて、サブウィンドウ３０１内のパターンを評価して得られた被写体尤度情報を被写体尤度情報記憶部１５４に記憶する。被写体判別部１５３は、被写体尤度情報を量子化した、２値としても良い。また、被写体尤度情報は低解像度化しても良い。例えば、記憶領域を４分の１にしたい場合は、幅２画素×高さ２画素の４画素の最大値を持って、対応する1画素に置き換えれば良い。
【００２８】
次に、ステップＳ２０３における探索制御処理について詳細に説明する。図３（ｂ）は、非特許文献１において、それぞれの縮小画像から縦横順次に走査を繰り返していく途中の設定の様子を示すものである。同図から分かるように、縮小率が大きな画像からサブウィンドウ３０１を設定して、サブウィンドウ３０１内の画像パターン顔の判別を行う場合には、画像に対して大きな顔の検出を行うことになる。本実施形態における探索制御部１５２は、前フレームまでの被写体尤度情報に基づいて探索位置、即ちパターン評価を行うサブウィンドウ３０１の位置を設定する。
【００２９】
図５のフローチャートを参照して、探索制御部１５２の処理の一例について説明する。ステップＳ５０１において、探索制御部１５２は、被写体尤度情報記憶部１５４に格納された被写体尤度情報を参照する。初回のフレーム画像上には被写体尤度情報は存在しないので、探索制御部１５２は、所定の尤度値に被写体尤度情報を初期化する。また、長期間評価しない座標では記憶していた尤度と映像との関係に誤差が生じるため、探索制御部１５２は、定期的に被写体判別を行う。この際、探索制御部１５２は、時間的及び空間的に探索箇所を均等に分散する。即ち、探索制御部１５２は、例えば、偶数番目のフレームでは全探索を行い、奇数番目のフレームは探索しないというような探索方法を採らない。探索制御部１５２は、偶数番目のフレームでは偶数番目のラインを探索し、奇数番目のフレームでは奇数番目のラインを探索するようにする。つまり、探索制御部１５２は、前のフレームで決定したパターン切り出し位置以外の位置の被写体尤度情報を、その位置とは異なる位置の被写体尤度情報に基づいて決定し、被写体尤度情報記憶部１５４に記憶するようにする。これにより、負荷の時間的分散が図れ、処理コストに対して精度向上を図ることができる。
【００３０】
また、探索制御部１５２は、オブジェクトの動きが既知であるならば、被写体尤度情報記憶部１５４に記憶されている被写体尤度情報の入力画像上の位置を移動させても良い。
【００３１】
例えば、オプティカルフロー等の動きベクトルを生成する公知技術がある。この技術は、主としてＭＰＥＧ等の動画符号化技術で利用されている。例えば探索制御部１５２は、この技術を複数のフレーム画像に適用することで生成した動きベクトル情報を、被写体尤度情報記憶部１５４に記憶した被写体尤度情報に適用して被写体尤度情報の位置を移動させることができる。
【００３２】
図６を参照して、被写体尤度情報の位置を移動する一例について説明する。図６（ａ）は、時刻ｔ＝ｎ−１におけるフレーム画像である。図６（ｂ）は、フレーム画像ｔ＝ｎ−１からｔ＝ｎにおいて、被写体の位置付近での動きベクトルを示す。図６（ｃ）は、時刻ｔ＝ｎにおけるフレーム画像である。また、図６（ｄ）は、時刻ｔ＝ｎ−１における、ある縮小率における被写体尤度情報を２値化して可視化した図であり、黒い丸は被写体尤度情報が高いことを現している。図６（ｅ）は、図６（ｄ）のｔ＝ｎ−１における被写体尤度情報と図６（ｂ）の動きベクトルとに基づいて、被写体尤度情報が移動した後の被写体尤度情報を同様に可視化した図である。動画を圧縮符号化する際に、動きベクトル（動きベクトル情報）は被写体の有無に関わらず生成される。探索制御部１５２は、動きベクトル情報を被写体が検出できていない被写体尤度情報の位置へ適用することにより、被写体である可能性が高い場所のみを効果的に探索して被写体を検出することができる。
【００３３】
また、過去の被写体の位置情報から現在や未来の被写体の位置を予測する公知技術がある。例えば、カルマンフィルタ、パーティクルフィルタ等である。被写体を検出できた場合、例えば探索制御部１５２は、このような技術を用いて被写体の動きを求め、被写体尤度情報記憶部１５４に記憶された被写体尤度情報に適用する。そして、探索制御部１５２は、被写体尤度情報を移動させることで、被写体判別部１５３による被写体尤度情報の更新頻度を低減し、処理コストを抑えることができる。
【００３４】
次に、ステップＳ５０２において、探索制御部１５２は、最大尤度の拡張処理を行う。この処理は、ある位置における被写体尤度情報を所定範囲の近傍の最大の被写体尤度情報で置き換えることで実現する。
【００３５】
このステップの処理の目的は、前ステップでの説明で述べた、時間的空間的に探索箇所を均等に分散することで、探索が行われなかった位置に対して補完を行うことである。
【００３６】
次にステップＳ５０３において、探索制御部１５２は、図３のような走査を行い、サブウィンドウ３０１の位置に対応する尤度値（被写体尤度情報）が所定の閾値以上の位置へサブウィンドウ３０１の位置を設定する。また、探索制御部１５２は、尤度値からサブウィンドウ３０１の移動量を決定しても良い。これは、探索制御部１５２は、被写体尤度情報に対応する移動幅を予め統計的に求めておいて、被写体尤度情報から移動量への変換テーブルを作成しておくことにより実現する。そして、このサブウィンドウ３０１内の部分領域を切り出す。切り出された部分領域内で、以下被写体検出を行う。
【００３７】
次に、図７（ａ）を参照して、ステップＳ２０４における被写体判別（顔判別）の方法について詳細に説明する。被写体判別部１５３は図７に示したように複数の強判別部７０１を直列に接して構成される。被写体判別部１５３は、前段の強判別部７０１に入力されたパターンデータ（輝度データ）が被写体であるか否かを判定し、被写体であった場合にのみ後段の強判別部７０１で同じパターンデータが被写体であるか否かの判定を前段より高い精度で行う。各強判別部及びその内部の弱判別部は同様に構成されており、各部の数や判別パラメータが異なるのみである。
【００３８】
次に、図７（ｂ）を参照して、各強判別部７０１の一例について説明する。各強判別部７０１は複数の弱判別部７１１で構成され、各々が出力する後述の被写体信頼度を加算器７１２で統合し、さらに閾値処理部７１３で処理を行い、被写体であるか否かを出力する。
【００３９】
次に、図７（ｃ）を参照して、各弱判別部７１１の一例について説明する。各弱判別部７１１は、解像度変換部７２１と、局所領域抽出部７２２と、特徴量算出部７２３と、被写体信頼度変換部７２４とを備える。解像度変換部７２１は、複数の解像度での画像を作成する。特徴量算出部７２３は、後述の局所特徴量を算出する。被写体信頼度変換部７２４は、後述の局所特徴量を被写体信頼度に変換する。各々の部へは判別情報格納部７２５から判別パラメータが供給される。具体的には、局所領域抽出部７２２へは画像番号リストが、特徴量算出部７２３へは特徴フィルタが、被写体信頼度変換部７２４へは被写体信頼度変換ＬＵＴが、それぞれ供給される。
【００４０】
図８（ａ）を参照して、上記判別情報格納部７２５に格納される判別パラメータについて説明する。判別パラメータは、強判別部数８０１と、その数分の強判別パラメータ８０２と、が結合されたものである。各々の強判別パラメータ８０２には、１つの強判別部に関するパラメータが格納される。各々の強判別パラメータ８０２は弱判別部数８０３と、その数分の弱判別パラメータ８０４と、閾値８０５とが結合されたものである。各々の弱判別パラメータ８０４には１つの弱判別部に関するパラメータが格納される。各弱判別部数８０３は、それぞれの局所領域の画素数８０６と、局所領域の画素番号を列挙した画素番号リスト８０７と、画素数８０６に等しい行数×１列の行列である特徴抽出フィルタ８０８と、を含む。また、各弱判別部数８０３は、特徴量から被写体の信頼度への変換テーブルである、被写体信頼度変換ルックアップテーブル（ＬＵＴ）８０９を含む。
【００４１】
図８（ｂ）に示すように、本実施形態では、顔パターンは目、口を含む２０画素×２０画素の標準パターンとしている。また、本実施形態ではこれを更に１／２に縮小し、１０画素×１０画素とした１／２縮小パターンと、１／４に縮小して５画素×５画素にした１／４縮小パターンとを作成する。そして、それぞれの画素に対して１から４００、４０１から５００、５０１から５２５のように、１から５２５までの画素番号を付与している。このように多重解像度にすることによって以下の２つの効果がある。即ち、１つ目は、低解像度側では顔を構成する器官同士の位置関係を効率良く照合できる。また２つ目は、高解像度側では顔を構成する器官の部分的特徴を精度良く照合できる。
【００４２】
次に、図９を参照して、図２のステップＳ２０４における顔判別処理の一例を示すフローチャートについて説明する。ステップＳ９０１において、被写体判別部１５３は、解像度変換部７２１によりパターンの１／２と１／４との縮小画像を作成する。本実施形態では解像度は１／２ｎ（ｎは自然数）としているが、これに限られない。例えば、１／１．２倍程度の刻みで複数の解像度の画像が得られているので、解像度変換部７２１は、それを利用した更に多くの解像度でのパターンを用いても良く、その場合でも処理コストが増加することはほとんどない。多重解像度にすることによって以下の２つの効果がある。即ち、低解像度側では顔を構成する器官同士の位置関係を効率良く照合でき、高解像度側では顔を構成する器官の部分的特徴を精度良く照合できる。
【００４３】
次にステップＳ９０２において、被写体判別部１５３は、強判別部ループカウンタＮを初期化する。次にステップＳ９０３において、被写体判別部１５３は、弱判別部ループカウンタｔを初期化する。
【００４４】
次にステップＳ９０４において、特徴量算出部７２３は、局所特徴量を算出する。局所特徴量Ｕｔ，Ｎは以下の式（１）によって算出する。
【００４５】
【数１】
0005702960.tif 000002
【００４６】
ここで、添え字ｔ，ＮはＮ番目の強判別部を構成するｔ番目の弱判別部を示す。また、Ｕｔ，Ｎは局所特徴量を示す数値であり、φｔ，Ｎは特徴抽出フィルタ８０８であり、機械学習により得られるものである。また、ｚｔ，Ｎは局所領域抽出部７２２によって得られる画素番号リスト８０７で示されるパターン又は縮小パターン上の画素の輝度を要素とする画素数に等しい行数で１列の行列である。
【００４７】
そして、ステップＳ９０５において、被写体信頼度変換部７２４は、以下の式（２）の様に局所特徴量Ｕｔ，Ｎから被写体信頼度Ｈｔ，Ｎに変換する。
【００４８】
【数２】
0005702960.tif 000003
【００４９】
但し、Ｈｔ，Ｎは被写体信頼度の出力である。またｆｔ，Ｎは機械学習によって得られる被写体信頼度変換ルックアップテーブル８０９に対応し、局所特徴量Ｕｔ，Ｎからテーブル変換によって被写体信頼度Ｈｔ，Ｎに変換し、弱判別部の出力としている。被写体信頼度変換部７２４は、局所特徴量Ｕｔ，Ｎが変換テーブルの上限又は下限を超えている場合はそれぞれ、上限値又は下限値に設定し直した上で、テーブルを参照し、被写体信頼度を得る。
【００５０】
次にステップＳ９０６において、被写体判別部１５３は、最後の弱判別部まで被写体信頼度を求めたか否かを判定する。そして、最後の弱判部まで被写体信頼度を求めた場合（ステップＳ９０６；ＹＥＳ）、ステップＳ９０７に進む。一方、最後の弱判部まで被写体信頼度を求めていない場合（ステップＳ９０６；ＮＯ）、ステップＳ９１１に進む。そして、ステップＳ９１１において、弱判別部番号ｔをインクリメントして、ステップＳ９０４に戻る。ステップＳ９０７において、加算器７１２は、以下の式（３）のように被写体信頼度の総和を求める。
【００５１】
【数３】
0005702960.tif 000004
【００５２】
次に、ステップＳ９０８において、強判別部７０１を構成する閾値処理部７１３は、以下の式（４）のように前ステップＳ９０７で求められた被写体信頼度の総和を閾値と比較することによって被写体か否かの判定を行う。被写体信頼度の総和が閾値よりも大きい場合、顔であると判定されることになる。
【００５３】
【数４】
0005702960.tif 000005
【００５４】
強判別部７０１は、顔でないと判定された場合、処理を終了する。一方、強判別部７０１は、顔であると判定された場合、ステップＳ９０９に進む。ステップＳ９０９において、被写体判別部１５３は、最後の強判別部による顔判定が終了したか否かを判定する。最後の強判別部による顔判定が終了した場合（ステップＳ９０９；ＹＥＳ）、ステップＳ９１０に進む。一方、最後の強判別部による顔判定が終了していない場合（ステップＳ９０９；ＮＯ）、ステップＳ９１２に進み、強判別部番号Ｎをインクリメントして、ステップＳ９０３に戻る。なお、被写体判別部１５３は、最後の強判別部まで全て顔であると判定された場合にのみ最終的に顔であると判定する。そして、ステップＳ９１０において、画像におけるパターンの検出位置を記憶して処理を終了する。本実施形態では、局所特徴量として、照合パターンのうち所定解像度、所定サイズ、そして形状の局所領域における線形識別特徴を用いたが、非特許文献１の方法も適用できる。
【００５５】
次に被写体尤度情報の算出方法について説明する。例えば被写体判別部１５３は、複数ある強判別部７０１を通過した回数と実際に被写体である確率との関係を予め求めておき、強判別部７０１の通過回数に基づいて尤度を求める。また、被写体判別部１５３は、各強判別部７０１で求められる、被写体信頼度の総和Ｈと実際に被写体である確率との関係を予め求めておき、被写体信頼度の総和Ｈに基づいて尤度（被写体尤度情報）を求めても良い。
【００５６】
（第２実施形態）
第１実施形態ではでは強判別部７０１を直列に接続し、１つの被写体を検出する例を示した。本実施形態では、同時に複数の被写体を検出する場合について説明する。
【００５７】
まず図１０（ａ）を参照して、強判別部１００１から強判別部１００６を直並列に構成し、同時に２つの被写体を検出することができる被写体判別部１５３の第２の例について説明する。強判別部１００１から強判別部１００３では、それぞれ被写体カテゴリＡ（物体カテゴリＡ）か否かを判別する。また、強判別部１００４から強判別部１００６では、それぞれ被写体カテゴリＢ（物体カテゴリＡ）か否かを判別する。次に、この被写体判別部１５３により被写体を判別する方法について説明する。強判別部１００１から、強判別部１００２、強判別部１００３、強判別部１００４、強判別部１００５、強判別部１００６の順に判別を行う。各強判別部では、第１実施形態で説明した強判別部７０１と同様の処理を行うため、主に相違点について説明する。なお、各強判別部の構成は第１実施形態と同様である。
【００５８】
強判別部１００１から強判別部１００６において、被写体信頼度は、加算器７１２によって、左端までの最短経路上の強判別部の被写体信頼度を総和したものとする。例えば、強判別部１００６では、強判別部１００４から強判別部１００６の被写体信頼度を総和したものである。強判別部１００３が出力する被写体信頼度が、被写体カテゴリＡの被写体信頼度Ｈ１となる。また、強判別部１００６が出力する被写体信頼度が、被写体カテゴリＢの被写体信頼度Ｈ２となる。また、強判別部１００１から強判別部１００６では閾値ＴｈＮとの比較によって被写体か否かの判定を行い、右端の強判別部１００３又は強判別部１００６で閾値以上である場合に、被写体であると判定する。強判別部１００１、強判別部１００２、強判別部１００４、強判別部１００５で閾値以下となった場合には、それ以降の右側における強判別部の処理を打ち切り、その時点の被写体信頼度をもって該当する被写体カテゴリの信頼度とする。
【００５９】
各サブウィンドウ位置における被写体尤度Ｃは、以下の式（５）の様に検出対象ごとの被写体尤度の何れか大きい方とする。
【００６０】
【数５】
0005702960.tif 000006
【００６１】
また、被写体カテゴリｉの被写体尤度Ｃｉは、以下の式（６）により求まる。
【００６２】
【数６】
0005702960.tif 000007
【００６３】
ここで、Ｐ（Ｈｉ）は被写体カテゴリｉの被写体信頼度Ｈｉが被写体である確率である。被写体尤度情報記憶部１５４には、検出対象ごとの被写体尤度Ｃ１とＣ２を記憶しても良いが、被写体尤度Ｃのみを記憶することによって記憶領域を有効に利用しても良い。また、被写体尤度が上位の被写体カテゴリについて、被写体カテゴリを識別する識別子と被写体尤度とを対応付けて記憶しても良い。
【００６４】
次に、図１０を参照して、強判別部１００７から強判別部１０１３を木（ツリー）構造で構成し、同時に２つの被写体を検出することができる被写体判別部１５３の第３の例について説明する。強判別部１０１０から強判別部１０１１は検出対象の物体カテゴリＡに対応し、強判別部１０１２から強判別部１０１３は検出対象の被写体カテゴリＢに対応する。そして、強判別部１００７から強判別部１００９までは、両方の被写体カテゴリに対応し、被写体カテゴリＡまたはＢの何れかであるか、又は何れでもないかを判別する。
【００６５】
また、強判別部１００９から右には２つ以上の分岐先があっても良く、分岐が階層化していても良い。分岐する強判別部の間は０から複数個の強判別部から構成される。
【００６６】
次に、この被写体判別部１５３で被写体判別を行う方法について説明する。被写体判別は、強判別部１００７をルートとして、木（ツリー）構造の幅優先探索のごとく強判別部１００７から強判別部１０１３まで走査して判別を行う。強判別部１０１１が出力する被写体信頼度が、被写体カテゴリＡの被写体信頼度Ｈ１となる。また、強判別部１０１３が出力する被写体信頼度が、被写体カテゴリＢの被写体信頼度Ｈ２となる。
【００６７】
強判別部１００７から強判別部１０１０、又は強判別部１０１２で被写体信頼度が閾値以下となった場合には、それ以降の右側に繋がった強判別部の処理を打ち切る。そして、その時点の被写体信頼度をもって、対応する１つ又はそこから分岐する複数の強判別部の被写体カテゴリの信頼度とする。この場合でも、各サブウィンドウ位置における被写体尤度は、式（５）により検出対象ごとの被写体尤度の何れか大きい方に基づいて求めることができる。
【００６８】
各強判別部では、第１実施形態の強判別部７０１と同様の処理を行うため、相違点について説明する。分岐した右側の強判別部１０１０から強判別部１０１３における被写体信頼度は、加算器７１２によって、ルートの強判別部１００７までのそれぞれ最短経路上の強判別部の被写体信頼度の総和である。また、強判別部１００７から強判別部１００９は、被写体カテゴリごとに異なる被写体信頼度変換ルックアップテーブル８０９を持ち、被写体カテゴリごとに被写体信頼度を求めるように構成することもできる。
【００６９】
なお、強判別部７０１は被写体尤度を求めるものであるので、任意の判別器をＡｄａｂｏｏｓｔやサポートベクターマシンのような機械学習によって得られるパラメータにより構成しても良い。また、動画から被写体検出する際に、非特許文献２で提案されている一般被写体認識の処理方式を用いてもサブウィンドウに対応する被写体尤度を求めるのであれば、本発明を適用することができる。
【００７０】
（第３実施形態）
図１１を参照して、画像処理装置のハードウェア構成の一例を示す図（その２）について説明する。第１実施形態と共通する部分には同じ参照番号を付与している。ブロック構成としては、プログラムを記録したＤＶＤ又はＣＤのような光ディスク１１４を追加し、ドライブインターフェース（ドライブＩ／Ｆ）１０４にＣＤ／ＤＶＤドライブ等の外部記憶読書装置１１５が接続されている点が第１実施形態とは異なる。プログラムを記録した光ディスク１１４を外部記憶読書装置１１５に挿入するとＣＰＵ１０１は記録媒体からプログラムを読み取って、ＲＡＭ１０３に展開し、第１実施形態と同様の処理を実現することができる。
【００７１】
（第４実施形態）
第１実施形態、第２実施形態、第３実施形態では顔抽出を行うシステムとしているが、上述した処理は、顔以外の任意の物体の検出に対して適用可能である。例えば、人体全身、人体上半身、生物、自動車等がある。工業、流通分野等では生産物、部品、流通物品等の同定や検査等に適用できる。同時に検出する被写体の例としては犬と猫や、正面顔と横を向いた顔などである。以上、上述した各実施形態によれば、被写体が存在する可能性が高い領域のみを探索するので、動画から被写体を効率よく検出することができる。
【００７２】
また本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００７３】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005702960.tif 000008
【図２】
0005702960.tif 000009
【図３】
0005702960.tif 000010
【図４】
0005702960.tif 000011
【図５】
0005702960.tif 000012
【図６】
0005702960.tif 000013
【図７】
0005702960.tif 000014
【図８】
0005702960.tif 000015
【図９】
0005702960.tif 000016
【図１０】
0005702960.tif 000017
【図１１】
0005702960.tif 000018