(57)【要約】【課題】  集団学習により対象とする物体を検出する際に、学習時及び検出時のの演算処理を高速化すると共に、任意の大きさの対象物体を検出でき且つ極めて判別能力が高い対象物検出装置及び方法、並びに集団学習装置及び方法を提供する。【解決手段】  対象物検出装置１は、画像出力部２から入力される濃淡画像を縮小しスケーリング画像を生成するスケーリング部３と、スケーリング画像からウィンドウ画像を順次操作し切り取る走査部４と、各ウィンドウ画像が対象物であるか否か判別する判別器５とを有する。判別器５は、ブースティングにより集団学習された複数の弱判別器とこれらの出力を重み付き多数決する加算器とからなり、各弱判別器は、２つの画素の輝度値の差を特徴量とし対象物か否かを推定する推定値を出力する。また、判判別器５は、予め学習した打ち切り閾値により、対象物でないと判定したウィンドウ画像については推定値の算出を途中で打ち切る。【選択図】  図１
2005157679.tif 000002
【特許請求の範囲】
【請求項１】
与えられた濃淡画像が対象物であるか否かを検出する対象物検出装置において、
予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記濃淡画像が対象物か否かを示す推定値を算出する複数の弱判別手段と、
上記複数の弱判別手段の少なくとも１以上により算出された上記推定値に基づき上記濃淡画像が対象物であるか否かを判別する判別手段と
を有することを特徴とする対象物検出装置。
【請求項２】
上記判別手段は、上記推定値に対して上記学習により得られた各弱判別手段に対する信頼度を乗算して加算した重み付き多数決の値を算出し、当該多数決の値に基づき上記濃淡画像が対象物か否かを判別する
ことを特徴とする請求項１記載の対象物検出装置。
【請求項３】
上記複数の弱判別手段は、逐次上記推定値を算出し、
上記判別手段は、上記推定値が算出される毎に上記重み付き多数決の値を逐次更新し、該更新された重み付き多数決の値に基づき上記推定値の算出を打ち切るか否かを制御する
ことを特徴とする請求項２記載の対象物検出装置。
【請求項４】
上記判別手段は、上記重み付き多数決の値が打ち切り閾値より小さいか否かにより上記推定値の算出を打ち切るものであって、
上記各弱判別手段は、対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習により逐次生成されたものであり、
上記打ち切り閾値は、上記学習時において、弱判別手段が生成される毎に、該生成された弱判別手段により算出された上記対象物である学習サンプルに対する推定値に上記信頼度を重み付けした値を加算して更新される重み付き多数決の値の最小値からなる
ことを特徴とする請求項３記載の対象物検出装置。
【請求項５】
上記学習時における重み付き多数決の値の最小値が正の場合、０を上記打ち切り閾値に設定する
ことを特徴とする請求項４記載の対象物検出装置。
【請求項６】
上記弱判別手段は、上記濃淡画像の上記特徴量が所定の閾値以上であるか否かに応じて対象物であるか否かを示す２値の上記推定値を算出する
ことを特徴とする請求項１記載の対象物検出装置。
【請求項７】
上記弱判別手段は、上記特徴量に基づき上記濃淡画像が対象物である確率を上記推定値として算出する
ことを特徴とする請求項１記載の対象物検出装置。
【請求項８】
与えられた濃淡画像が対象物であるか否かを検出する対象物検出方法において、
予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記濃淡画像が対象物か否かを示す推定値を複数の弱判別器により算出する弱判別工程と、
複数の弱判別器の少なくとも１以上により算出された上記推定値に基づき上記濃淡画像が対象物であるか否かを判別する判別工程と
を有することを特徴とする対象物検出方法。
【請求項９】
上記判別工程では、上記推定値に対して上記学習により得られた各弱判別器に対する信頼度を乗算して加算した重み付き多数決の値を算出し、当該多数決の値に基づき上記濃淡画像が対象物か否かを判別する
ことを特徴とする請求項８記載の対象物検出方法。
【請求項１０】
上記弱判別工程では、上記複数の弱判別器により逐次上記推定値を算出し、
上記判別工程では、上記推定値が算出される毎に上記重み付き多数決の値を逐次更新し、
上記判別工程にて上記更新された重み付き多数決の値に基づき上記推定値の算出を打ち切るか否かを制御する打ち切り制御工程を有する
ことを特徴とする請求項９記載の対象物検出方法。
【請求項１１】
対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習する集団学習装置において、
上記学習サンプルを使用し、任意の位置の２つの画素の輝度値の差を特徴量とし入力として与えられる濃淡画像が対象物か否かを示す推定値を出力する複数の弱判別器を集団学習する学習手段を有する
ことを特徴とする集団学習装置。
【請求項１２】
上記学習手段は、
上記各学習サンプルの上記特徴量を算出し、各特徴量に基づき上記弱判別器を生成する弱判別器生成手段と、
上記弱判別器生成手段が生成した弱判別器について、各学習サンプルに設定されたデータ重みに基づき上記学習サンプルを判別した誤り率を算出する誤り率算出手段と、
上記誤り率に基づき上記弱判別器に対する信頼度を算出する信頼度算出手段と、
上記弱判別器が不正解とした学習サンプルの重みが相対的に増すよう上記データ重みを更新するデータ重み算出手段とを有し、
上記弱判別器生成手段は、上記データ重みが更新されると新たな弱判別器を生成する
ことを特徴とする請求項１１記載の集団学習装置。
【請求項１３】
上記弱判別器生成手段は、上記特徴量を算出する処理を複数回繰り返して複数種の特徴量を算出し、該特徴量毎に弱判別器候補を生成し、生成された複数の各弱判別器候補について、各学習サンプルに設定された上記データ重みに基づき上記学習サンプルを判別した誤り率を算出し、該誤り率が最小のものを上記弱判別器とする
ことを特徴とする請求項１２記載の集団学習装置。
【請求項１４】
上記弱判別器生成手段は、上記濃淡画像の上記特徴量が所定の閾値以上であるか否かに応じて対象物であるか否かを判定する上記弱判別候補を生成する
ことを特徴とする請求項１２記載の集団学習装置。
【請求項１５】
上記弱判別器生成手段は、上記特徴量に基づき上記濃淡画像が対象物である確率を出力する上記弱判別候補を生成する
ことを特徴とする請求項１２記載の集団学習装置。
【請求項１６】
上記弱判別器生成手段が上記弱判別器を生成する毎に、当該弱判別器により上記対象物である各学習サンプルに対する上記推定値を算出し該推定値に上記信頼度を重み付けして加算した重み付き多数決の値を算出し、その最小値を記憶する打ち切り閾値記憶手段を有する
ことを特徴とする請求項１２記載の集団学習装置。
【請求項１７】
対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習する集団学習方法において、
上記学習サンプルを使用し、任意の位置の２つの画素の輝度値の差を特徴量とし入力として与えられる濃淡画像が対象物か否かを示す推定値を出力する複数の弱判別器を集団学習する学習工程を有する
ことを特徴とする集団学習方法。
【請求項１８】
上記学習工程では、上記各学習サンプルの上記特徴量を算出し、各特徴量に基づき上記弱判別器を生成する弱判別器生成工程と、上記弱判別器生成工程が生成した弱判別器について、各学習サンプルに設定されたデータ重みに基づき上記学習サンプルを判別した誤り率を算出する誤り率算出工程と、上記誤り率に基づき上記弱判別器に対する信頼度を算出する信頼度算出工程と、上記弱判別器が不正解とした学習サンプルの重みが相対的に増すよう上記データ重みを更新するデータ重み算出工程とからなる一連の工程を繰り返す
ことを特徴とする請求項１７記載の集団学習方法。
【請求項１９】
上記弱判別器生成工程では、上記特徴量を算出する処理を複数回繰り返して複数種の特徴量を算出し、該特徴量毎に弱判別器候補を生成し、生成された複数の各弱判別器候補について、各学習サンプルに設定された上記データ重みに基づき算上記学習サンプルを判別した誤り率を算出し、該誤り率が最小のものを上記弱判別器とする
ことを特徴とする請求項１８記載の集団学習方法。
【請求項２０】
上記弱判別器生成工程では、上記濃淡画像の上記特徴量が所定の閾値以上であるか否かに応じて対象物であるか否かを判定する上記弱判別候補を生成する
ことを特徴とする請求項１８記載の集団学習方法。
【請求項２１】
上記弱判別器生成工程では、上記特徴量に基づき上記濃淡画像が対象物である確率を出力する上記弱判別候補を生成する
ことを特徴とする請求項１８記載の集団学習方法。
【請求項２２】
上記弱判別器生成工程にて上記弱判別器を生成する毎に、当該弱判別器により上記対象物である各学習サンプルに対する上記推定値を算出し該推定値に上記信頼度を重み付けして加算した重み付き多数決の値を算出し、その最小値を記憶する打ち切り閾値記憶工程を有する
ことを特徴とする請求項１８記載の集団学習方法。
【請求項２３】
濃淡画像から固定サイズのウィンドウ画像を切り出し、該ウィンドウ画像が対象物か否かを検出する対象物検出装置において、
入力される濃淡画像のサイズを拡大又は縮小したスケール画像を生成するスケール変換手段と、
上記スケール画像から上記固定サイズのウィンドウを走査し、上記ウィンドウ画像を切り出すウィンドウ画像走査手段と、
与えられるウィンドウ画像が対象物か否かを検出する対象物検出手段とを有し、
上記対象物検出手段は、予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記ウィンドウ画像が対象物か否かを推定する推定値を算出する複数の弱判別手段と、複数の弱判別手段の少なくとも１以上により算出された上記推定値に基づき上記ウィンドウ画像が対象物であるか否かを判別する判別手段とを有する
ことを特徴とする対象物検出装置。
【請求項２４】
上記判別手段は、上記推定値に対して上記学習により得られた各弱判別手段に対する信頼度を乗算して加算した重み付き多数決の値を算出し、当該多数決の値に基づき上記濃淡画像が対象物か否かを判別する
ことを特徴とする請求項２３記載の対象物検出装置。
【請求項２５】
上記複数の弱判別手段は、逐次上記推定値を算出し、
上記判別手段は、上記推定値が算出される毎に上記重み付き多数決の値を逐次更新し、該更新された重み付き多数決の値に基づき上記推定値の算出を打ち切るか否かを制御する
ことを特徴とする請求項２４記載の対象物検出装置。
【請求項２６】
濃淡画像から固定サイズのウィンドウ画像を切り出し、該ウィンドウ画像が対象物か否かを検出する対象物検出方法において、
入力される濃淡画像のサイズを拡大又は縮小したスケール画像を生成するスケール変換工程と、
上記スケール画像から上記固定サイズのウィンドウを走査し、上記ウィンドウ画像を切り出すウィンドウ画像走査工程と、
与えられるウィンドウ画像が対象物か否かを検出する対象物検出工程とを有し、
上記対象物検出工程は、
予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記濃淡画像が対象物か否かを示す推定値を複数の弱判別器により算出する弱判別工程と、
複数の弱判別器の少なくとも１以上により算出された上記推定値に基づき上記濃淡画像が対象物であるか否かを判別する判別工程と有する
ことを特徴とする対象物検出方法。
【請求項２７】
上記判別工程では、上記推定値に対して上記学習により得られた各弱判別器に対する信頼度を乗算して加算した重み付き多数決の値を算出し、当該多数決の値に基づき上記濃淡画像が対象物か否かを判別する
ことを特徴とする請求項２６記載の対象物検出方法。
【請求項２８】
上記弱判別工程では、上記複数の弱判別器により逐次上記推定値を算出し、
上記判別工程では、上記推定値が算出される毎に上記重み付き多数決の値を逐次更新し、
上記判別工程にて上記更新された重み付き多数決の値に基づき上記推定値の算出を打ち切るか否かを制御する打ち切り制御工程を有する
ことを特徴とする請求項２７記載の対象物検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リアルタイムで顔画像などの対象物を検出する対象物検出装置及び方法、並びにその対象物検出装置を集団学習する集団学習装置及び方法に関する。
【背景技術】
【０００２】
従来、複雑な画像シーンの中から動きを使わないで画像信号の濃淡パターンのみを使った顔検出手法は数多く提案されている。例えば下記特許文献１に記載の顔検出器は、ハール（Ｈａａｒ）基底のようなフィルタを弱判別器（弱学習機）（weak learner）に用いたアダブースト（AdaBoost）を使用したもので、後述する積分画像（インテグラルイメージ：Integral image）とよばれる画像と矩形特徴（rectangle feature）とをを使用することで、高速に弱仮説（weak hypothesis）を計算することができる。
【０００３】
図１５は、特許文献１に記載の矩形特徴を示す模式図である。図１５に示すように、特許文献１に記載の技術においては、入力画像１４２Ａ〜１４２Ｄにおいて、同一サイズの隣り合う矩形領域の輝度値の総和を求め、一方の矩形領域の輝度値の総和と他方の矩形領域の輝度値の総和との差を出力するようなフィルタ（弱仮説）を複数用意する。例えば、入力画像１４２Ａにおいては、矩形領域１５４Ａ−１の輝度値の総和から、影を付けて示す矩形領域（rectangular box）１５４Ａ−２の輝度値の総和を減算するフィルタ１５４Ａを示す。このような２つの矩形領域からなるフィルタを２矩形特徴（2 rectangle feature）という。また、入力画像１４２Ｃにおいては、１つの矩形領域が３分割された３つの矩形領域１５４Ｃ−１〜１５４Ｃ−３からなり、矩形領域１５４Ｃ−１、１５４Ｃ−３の輝度値の総和から影を付けて示す中央の矩形領域１５４Ｃ−２の輝度値の総和を減算するフィルタ１５４Ｃを示す。このような３つの矩形領域からなるフィルタを３矩形特徴（3 rectangle feature）という。更に、入力画像１４２Ｄにおいては、１つの矩形領域が上下左右に分割された４つの矩形領域１５４Ｄ−１〜１５４Ｄ−４からなり、矩形領域１５４Ｄ−１、１５４Ｄ−３の輝度値の総和から影を付けて示す矩形領域１５４Ｄ−２、１５４Ｄ−４の輝度値の総和を減算するフィルタ１５４Ｄを示す。このような４つの矩形領域からなるフィルタを４矩形特徴（4 rectangle feature）という。
【０００４】
例えば、図１６に示す顔画像を、図１５に示す例えば矩形特徴１５４Ｂを使用して顔であることを判定する場合について説明する。２矩形特徴１５４Ｂは、１つの矩形領域が上下（垂直方向）に２分割された２つの矩形領域１５４Ｂ−１、１５４Ｂ−２からなり、矩形領域１５４Ｂ−２の輝度値の総和から影を付けて示す矩形領域１５４Ｂ−１の輝度値の総和を減算する。人間の顔（対象物）１３８は、頬の領域より眼の領域の方が輝度値が低いことを利用すると、矩形特徴１５４Ｂの出力値から入力画像が顔か否か（正解または不正解）をある程度の確率で推定することができる。これをアダブーストにおける弱判別器の１つとして利用する。
【０００５】
ここで、検出時において、入力画像には含まれる様々な大きさの顔領域を検出するため、様々なサイズの領域（以下、探索ウィンドウという。）を切り出して顔か否かを判定する必要がある。しかしながら例えば３２０×２４０画素からなる入力画像には、およそ５００００種類のサイズの顔領域（探索ウィンドウ）が含まれており、これら全てのウィンドウサイズについての演算を行うと極めて時間がかかる。そこで、特許文献１においては、積分画像とよばれる画像を使用する。積分画像とは、図１７に示すように、入力画像１４４において、（ｘ、ｙ）番目の画素１６２が、下記式（１）に示すように、その画素１６２より左上の画素の輝度値の総和になっている画像である。即ち、画素１６２の値は、画素１６２の左上の矩形領域１６０に含まれる画素の輝度値の総和となっている。以下、各画素値が下記式（１）に示す値の画像を積分画像という。
【０００６】
【数１】
2005157679.tif 000003
【０００７】
この積分画像を使用すると、任意の大きさの矩形領域の演算を高速に行うことができる。すなわち、図１８に示すように、左上の矩形領域１７０、矩形領域１７０の右横、下、右下のそれぞれ矩形領域１７２、１７４、１７６としたとき、矩形領域１７６の４頂点を左上から時計周りにＰ１、Ｐ２、Ｐ３、Ｐ４とする。ここで、Ｐ１は矩形領域１７０の輝度値の総和Ａ（Ｐ１＝Ａ）、Ｐ２はＡ＋矩形領域１７２の輝度値の総和Ｂ（Ｐ２＝Ａ＋Ｂ）、Ｐ３はＡ＋矩形領１７４の輝度値の総和Ｃ（Ｐ３＝Ａ＋Ｃ）、Ｐ４はＡ＋Ｂ＋Ｃ＋矩形領１７６の輝度値の総和Ｄ（Ｐ４＝Ａ＋Ｂ＋Ｃ＋Ｄ）となっている。このとき、矩形領域Ｄの輝度値の総和Ｄは、Ｐ４−（Ｐ２＋Ｐ３）−Ｐ１として算出することができ、矩形領域の四隅の画素値を加減算することで矩形領域の輝度値の総和を高速に算出することができる。通常、入力画像をスケール変換し、スケール変換された各画像から、学習に使用する学習サンプルと同一サイズのウィンドウ（探索ウィンドウ）を切り出すことで、異なるサイズの探索ウィンドウを探索することを可能にする。しかしながら上述したように、全てのサイズの探索ウィンドウを設定可能なように入力画像をスケール変換すると極めて演算量が膨大になってしまう。そこで、特許文献１に記載の技術においては、矩形領域の輝度値の総和の演算を高速に行うことができる積分画像を用い、矩形特徴を使用することにより演算量を低減するものである。
【０００８】
【特許文献１】米国特許出願公開第２００２／０１０２０２４号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記特許文献１に記載の顔検出器は、学習時に使用した学習サンプルのサイズの整数倍の大きさの対象物体しか検出することができない。これは、上記特許文献１が入力画像をスケール変換することで探索ウィンドウの大きさを変更するのではなく、入力画像を積分画像に変換し、これを利用して異なる探索ウィンドウの顔領域を検出するためである。すなわち、積分画像はピクセル単位に離散化されているため、例えば２０×２０のウィンドウサイズを使用する場合、３０×３０のサイズを探索ウィンドウに設定することができず、従ってウィンドウサイズこのウィンドウサイズの顔検出を行うことができない。
【００１０】
また、上記矩形特徴として、演算の高速化のため隣り合った矩形領域間の輝度値の差分のみを利用している。そのため、離れた矩形領域間の輝度変化をとらえることができず、物体検出の性能に制限がある。
【００１１】
なお、例えば積分画像をスケール変換すれば任意のサイズのウィンドウの探索が可能になり、また離れた位置の矩形領域間の輝度値の差分を利用することも可能ではあるが、積分画像をスケール変換すると演算量が増大し、積分画像を使用して処理を高速化する効果を相殺することになり、また離れた矩形領域間の輝度値の差分をも含めようとするとフィルタの種類が膨大になり、同じく処理量が増大してしまう。
【００１２】
本発明は、このような従来の実情に鑑みて提案されたものであり、集団学習により対象とする物体を検出する際に、学習時及び検出時の演算処理を高速化すると共に、任意の大きさの対象物体を検出でき且つ極めて判別能力が高い対象物検出装置及び方法、並びに集団学習装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上述した目的を達成するために、本発明に係る対象物検出装置は、与えられた濃淡画像が対象物であるか否かを検出する対象物検出装置において、予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記濃淡画像が対象物か否かを示す推定値を算出する複数の弱判別手段と、上記複数の弱判別手段の少なくとも１以上により算出された上記推定値に基づき上記濃淡画像が対象物であるか否かを判別する判別手段とを有することを特徴とする。
【００１４】
本発明においては、弱判定手段が２つの位置の画素の輝度値の差という極めて簡単な特徴量を使用し、与えられる濃淡画像が、検出対象とする対象物であるか、非対象物であるかの弱判定を行うため、検出処理を高速化することができる。
【００１５】
また、上記判別手段は、上記推定値に対して上記学習により得られた各弱判別手段に対する信頼度を乗算して加算した重み付き多数決の値を算出し、当該多数決の値に基づき上記濃淡画像が対象物か否かを判別することができ、複数の弱判別手段の推定値を組み合わせた多数決の結果を用いて対象物か否かの判定を行うことができる。
【００１６】
更に、上記複数の弱判別手段は、逐次上記推定値を算出し、上記判別手段は、上記推定値が算出される毎に上記重み付き多数決の値を逐次更新し、該更新された重み付き多数決の値に基づき上記推定値の算出を打ち切るか否かを制御することができ、弱判別器による推定値の算出を逐次行い、重み付き多数決の値を評価することで、全ての弱判定手段による算出を待たずに処理を中断することで、更に検出の高速化を図ることができる。
【００１７】
更にまた、上記判別手段は、上記重み付き多数決の値が打ち切り閾値より小さいか否かにより上記推定値の算出を打ち切るものであって、上記各弱判別手段は、対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習により逐次生成されたものであり、上記打ち切り閾値は、上記学習時において、弱判別手段が生成される毎に、該生成された弱判別手段により算出された上記対象物である学習サンプルに対する推定値に上記信頼度を重み付けした値を加算して更新される重み付き多数決の値の最小値とすることができ、正解付けされた対象物濃淡画像が取りえる最小の値を打ち切り閾値として学習しておくことで、正確かつ効率よく弱判別手段の処理を打ち切ることができる。
【００１８】
また、上記学習時における重み付き多数決の値の最小値が正の場合、０を上記打ち切り閾値に設定することができ、AdaBoostのように弱判別手段の出力が正か負かで判定するような集団学習アルゴリズムにより学習する場合は０以上の最小値を打ち切り閾値として設定することができる。
【００１９】
更に、上記弱判別手段は、上記濃淡画像の上記特徴量が所定の閾値以上であるか否かに応じて対象物であるか否かを示す２値の上記推定値を算出することにより、推定値を確定的に出力してもよく、また、上記特徴量に基づき上記濃淡画像が対象物である確率を上記推定値として算出することにより、推定値を確率的に出力してもよい。
【００２０】
本発明に係る対象物検出方法は、与えられた濃淡画像が対象物であるか否かを検出する対象物検出方法において、予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記濃淡画像が対象物か否かを示す推定値を複数の弱判別手段により算出する弱判別工程と、複数の弱判別器の少なくとも１以上により算出された上記推定値に基づき上記濃淡画像が対象物であるか否かを判別する判別工程とを有することを特徴とする。
【００２１】
本発明に係る集団学習装置は、対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習する集団学習装置において、上記学習サンプルを使用し、任意の位置の２つの画素の輝度値の差を特徴量とし入力として与えられる濃淡画像が対象物か否かを示す推定値を出力する複数の弱判別器を集団学習する学習手段を有することを特徴とする。
【００２２】
本発明においては、学習サンプルにおける任意の位置の２つの画素の輝度値の差という極めて単純な特徴量を用いた弱判別器を集団学習により生成することで、生成した弱判別器の判別結果を多数利用して対象物を検出する検出装置を構成した場合、検出処理を極めて高速化させることができる。
【００２３】
また、上記学習手段は、上記各学習サンプルの上記特徴量を算出し、各特徴量に基づき上記弱判別器を生成する弱判別器生成手段と、上記弱判別器生成手段が生成した弱判別器について、各学習サンプルに設定されたデータ重みに基づき上記学習サンプルを判別した誤り率を算出する誤り率算出手段と、上記誤り率に基づき上記弱判別器に対する信頼度を算出する信頼度算出手段と、上記弱判別器が不正解とした学習サンプルの重みが相対的に増すよう上記データ重みを更新するデータ重み算出手段とを有し、弱判別器生成手段は、上記データ重みが更新されると新たな弱判別器を生成することができ、弱判別器を生成してその誤り率及び信頼度を算出し、データ重みを更新して再び弱判別器を生成するという一連の処理を繰り返すことで学習を行うことができる。
【００２４】
更に、上記弱判別器生成手段は、上記特徴量を算出する処理を複数回繰り返して複数種の特徴量を算出し、該特徴量毎に弱判別器候補を生成し、生成された複数の各弱判別器候補について、各学習サンプルに設定された上記データ重みに基づき上記学習サンプルを判別した誤り率を算出し、該誤り率が最小のものを上記弱判別器とすることができ、データ重みが更新される毎に、多数の弱判別器候補を生成し、これらの中から最も誤り率が小さいものを選択して弱判別器を１つ生成（学習）することができる。
【００２５】
更に、上記弱判別器生成手段が上記弱判別器を生成する毎に、当該弱判別器により上記対象物である各学習サンプルに対する上記推定値を算出し該推定値に上記信頼度を重み付けして加算した重み付き多数決の値を算出し、その最小値を記憶する打ち切り閾値記憶手段を有することができ、この最小値を打ち切り閾値として学習しておくことで、生成された複数の弱判別器からなる検出装置における検出処理を更に高速化することができる。
【００２６】
本発明に係る集団学習方法は、対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習する集団学習方法において、上記学習サンプルを使用し、任意の位置の２つの画素の輝度値の差を特徴量とし入力として与えられる濃淡画像が対象物か否かを示す推定値を出力する複数の弱判別器を集団学習する学習工程を有することを特徴とする。
【００２７】
本発明に係る対象物検出装置は、濃淡画像から固定サイズのウィンドウ画像を切り出し、該ウィンドウ画像が対象物か否かを検出する対象物検出装置において、入力される濃淡画像のサイズを拡大又は縮小したスケール画像を生成するスケール変換手段と、上記スケール画像から上記固定サイズのウィンドウを走査し、上記ウィンドウ画像を切り出すウィンドウ画像走査手段と、与えられるウィンドウ画像が対象物か否かを検出する対象物検出手段とを有し、上記対象物検出手段は、予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記ウィンドウ画像が対象物か否かを推定する推定値を算出する複数の弱判別手段と、複数の弱判別手段の少なくとも１以上により算出された上記推定値に基づき上記ウィンドウ画像が対象物であるか否かを判別する判別手段とを有することを特徴とする。
【００２８】
本発明においては、濃淡画像をスケール変換し、ウィンドウ画像を切り出すことで、任意の大きさの対象物を検出することができると共に、弱判別手段が２つの画素の輝度値の差という極めて簡単な特徴量によりウィンドウ画像が対象物か否かを示す推定値を算出するため極めて高速に検出処理を行うことができる。
【００２９】
本発明に係る対象物検出方法は、濃淡画像から固定サイズのウィンドウ画像を切り出し、該ウィンドウ画像が対象物か否かを検出する対象物検出方法において、入力される濃淡画像のサイズを拡大又は縮小したスケール画像を生成するスケール変換工程と、上記スケール画像から上記固定サイズのウィンドウを走査し、上記ウィンドウ画像を切り出すウィンドウ画像走査工程と、与えられるウィンドウ画像が対象物か否かを検出する対象物検出工程とを有し、上記対象物検出工程は、予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記濃淡画像が対象物か否かを示す推定値を複数の弱判別器により算出する弱判別工程と、複数の弱判別器の少なくとも１以上により算出された上記推定値に基づき上記濃淡画像が対象物であるか否かを判別する判別工程と有することを特徴とする。
【発明の効果】
【００３０】
本発明に係る対象物検出装置によれば、与えられた濃淡画像が対象物であるか否かを検出する対象物検出装置において、予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記濃淡画像が対象物か否かを示す推定値を算出する複数の弱判別手段と、上記複数の弱判別手段の少なくとも１以上により算出された上記推定値に基づき上記濃淡画像が対象物であるか否かを判別する判別手段とを有するので、濃淡画像が対象物であるか否かの弱判定が極めて簡単であり、検出処理を極めて高速化し、リアルタイムで顔検出することができる。
【００３１】
また、本発明に係る対象物検出方法によれば、与えられた濃淡画像が対象物であるか否かを高速に検出することができる。
【００３２】
本発明に係る集団学習装置によれば、対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習する集団学習装置において、上記学習サンプルを使用し、任意の位置の２つの画素の輝度値の差を特徴量とし入力として与えられる濃淡画像が対象物か否かを示す推定値を出力する複数の弱判別器を集団学習する学習手段を有するので、集団学習により任意の位置の２つの画素の輝度値の差という極めて単純な特徴量を用いた弱判別器を生成することができ、これにより学習時の特徴量の算出を高速化でき、かつ生成した多数の弱判別器を有する対象物検出装置を構成した場合の検出処理を極めて高速化させることができる。
【００３３】
また、本発明に係る手段学習方法によれば、対象物であるか非対象物であるかの正解付けがされた複数の濃淡画像からなる学習サンプルを使用して集団学習することで、高速に対象物を検出可能な対象物検出装置を構成する弱判別器を学習することができる。
【００３４】
本発明に係る対象物検出装置によれば、濃淡画像から固定サイズのウィンドウ画像を切り出し、該ウィンドウ画像が対象物か否かを検出する対象物検出装置において、入力される濃淡画像のサイズを拡大又は縮小したスケール画像を生成するスケール変換手段と、上記スケール画像から上記固定サイズのウィンドウを走査し、上記ウィンドウ画像を切り出すウィンドウ画像走査手段と、与えられるウィンドウ画像が対象物か否かを検出する対象物検出手段とを有し、上記対象物検出手段は、予め学習された２つの位置の画素の輝度値の差からなる特徴量に基づき上記ウィンドウ画像が対象物か否かを推定する推定値を算出する複数の弱判別手段と、複数の弱判別手段の少なくとも１以上により算出された上記推定値に基づき上記ウィンドウ画像が対象物であるか否かを判別する判別手段とを有するので、入力画像の濃淡画像をスケール変換してウィンドウ画像を切り出すことで、任意の大きさの対象物を検出することができると共に、弱判別手段が２つの画素の輝度値の差という極めて簡単な特徴量を使用してウィンドウ画像が対象物かを検出するため極めて高速に検出処理を行うことができる。
【００３５】
また、本発明に係る対象物検出方法によれば、濃淡画像から固定サイズのウィンドウ画像を切り出し、該ウィンドウ画像が対象物か否かを高速に検出することができる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、アンサンブル学習（集団学習）を利用して画像から対象物を検出する対象物検出装置に適用したものである。
【００３７】
集団学習によって得られる学習機械は、多数の弱仮説と、これらを組み合わせる結合機（combiner）とからなる。ここで、入力によらず、固定した重みで弱仮説の出力を統合する結合機の一例としてブースティングがある。ブースティングは、前に生成した弱仮説の学習結果を使用して間違いを苦手とする学習サンプル（例題）の重みを増すように、学習サンプルが従う分布を加工し、この分布に基づき新たな弱仮説の学習を行う。これにより不正解が多く対象物として判別が難しい学習サンプルの重みが相対的に上昇し、結果的に重みが大きい、即ち判別が難しい学習サンプルを正解させるような弱判別器が逐次選択される。すなわち、学習における弱仮説の生成は逐次的に行われるものであり、後から生成された弱仮説はその前に生成された弱仮説に依存することになる。
【００３８】
対象物を検出する際には、上述のようにして学習により逐次生成された多数の弱仮説の判別結果を使用する。例えばAdaBoostの場合は、この学習により生成された弱仮説（以下、弱判別器という。）全ての判別結果（対象物であれば１、非対象物であれば−１）が結合機に供給され、結合機は、全判別結果に対して、対応する弱判別器毎に学習時に算出された信頼度を重み付け加算し、その重み付き多数決の結果を出力し、結合機の出力値を評価することで入力された画像が対象物か否かを選択するものである。
【００３９】
弱判別器は、なんらかの特徴量を使用して、対象物か又は非対象物であるかの判定を行うものである。なお、後述するように、弱判別器の出力は対象物か否かを確定的に出力してもよく、対象物らしさを確率密度などで確率的に出力してもよい。ここで、本実施の形態においては、２つのピクセル間の輝度値の差という極めて簡単な特徴量（以下、ピクセル間差分特徴という。）を使用して対象物か否かを判別する弱判別器を使用した集団学習装置を利用することで、対象物の検出処理を高速化するものである。
【００４０】
（１）対象物検出装置
図１は、本実施の形態における対象物検出装置の処理機能を示す機能ブロック図である。図１に示すように、対象物検出装置１は、入力画像として濃淡画像（輝度画像）を出力する画像出力部２と、入力画像を拡大又は縮小してスケーリングを行うスケーリング部３と、スケーリングされた入力画像において、所定サイズのウィンドウ画像の大きさで例えば左上から順次スキャンする走査部４と、走査部４にて順次スキャンされた各ウィンドウ画像が対象物か非対象物かを判別する判別器５とを有し、与えられる画像（入力画像）の中から対象物体の領域を示す対象物の位置及び大きさを出力する。すなわち、スケーリング部３は、入力画像を指定された全てのスケールに拡大又は縮小しスケーリング画像を出力する。走査部３は、各スケーリング画像について、検出したい対象物の大きさとなるウィンドウを順次スキャンしてウィンドウ画像を切り出し、判別器５は、各ウィンドウ画像が顔か否かを判別する。
【００４１】
ここで、判別器５は、集団学習により判別器５を構成する複数の弱判別器の集団学習を実行する集団学習機６の学習結果を参照して、現在のウィンドウ画像が例えば顔画像などの対象物であるか、又は非対象物であるかを判別する。
【００４２】
また、対象物検出装置１は、入力画像から複数の対象物が検出された場合は、複数の領域情報を出力する。更に、複数の領域情報のうち領域が重なりあっている領域が存在する場合は、後述する方法で最も対象物とされる評価が高い領域を選択する処理も行うことができる。
【００４３】
画像出力部２から出力された画像（濃淡画像）は、先ずスケーリング部３に入る。スケーリング部３では、バイリニア補完を用いた画像の縮小が行われる。本実施の形態においては、最初に複数の縮小画像を生成するのではなく、必要とされる画像を走査部４に対して出力し、その画像の処理を終えた後で、次の更に小さな縮小画像を生成するという処理を繰り返す。
【００４４】
すなわち、先ず図２に示すように、入力画像１０Ａをそのまま走査部４へ出力する。そして、入力画像１０Ａについて走査部４及び判別器５の処理が終了するのを待った後、入力画像１０Ａのサイズを縮小した入力画像１０Ｂを生成する。そして、この入力画像１０Ｂにおける走査部４及び判別器５の処理が終了するのを待って、入力画像１０Ｂのサイズを更に縮小した入力画像１０Ｃを走査部４に出力するというように、順次縮小画像１０Ｄ、１０Ｅなどを生成していき、縮小画像の画像サイズが、走査部４にて走査するウィンドウサイズより小さくなった時点で処理を終了する。この処理の終了をまって、画像入力部２は、次の入力画像をスケーリング部３に出力する。
【００４５】
走査部４では、図３に示すように、与えられた例えば画像１０Ａに対して、後段の判別器５が受け付けるウィンドウサイズＳの大きさのウィンドウ１１を画像（画面）の全体に対して順次当てはめていき、各位置における画像（以下、切り取り画像）を判別器５に出力する。ここで、ウィンドウサイズＳは一定である一方、上述したように、スケーリング部３により順次入力画像が縮小され、入力画像の画像サイズが様々なスケールに変換されるため、任意の大きさの対象物体を検出することが可能となる。
【００４６】
判別器５は、前段から与えられた切り取り画像が、例えば顔などの対象物体であるか否かを判定する。判別器５は、図４に示すように、アンサンブル学習（Ensemble learning）により得られた複数の弱判別器２１ｎ（２１１〜２１Ｎ）と、これらの出力にそれぞれ重みＷｎ（Ｗ１〜ＷＮ）を乗算し、重み付き多数決を求める加算器２２とを有する。判別器６は、入力されるウィンドウ画像に対し、各弱判別器２１ｎ（２１１〜２１Ｎ）が対象物である否かの推定値を逐次出力し、加算器２２が重み付き多数決を算出して出力する。この重み付き多数決の値に応じ、図示せぬ判定手段が対象物か否かを判定する。
【００４７】
集団学習機６は、後述する方法にて、予め弱判別器２１ｎと、それらの出力（推定値）に乗算する重みを集団学習により学習するものである。集団学習としては、複数の判別器の結果を多数決にて求めることができるものであれば具体的にはどんな手法でも適用可能である。例えば、データの重み付けを行って重み付き多数決行うアダブースト（AdaBoost）などのブースティングを用いた集団学習を適用することができる。
【００４８】
判別器５を構成する各弱判別器２１ｎは、判別のための特徴量として、２つの画素間の輝度値の差分（ピクセル間差分特徴）を使用する。そして、判別には、予め学習された、対象物か非対象物であるかのラベリングがされた複数の濃淡画像からなる学習サンプルにより予め学習された特徴量と、ウィンドウ画像の特徴量とを比較し、ウィンドウ画像が対象物であるか否かを推定するための推定値を確定的又は確率的に出力する。
【００４９】
ここで、加算器２２は、弱判別器２１ｎの推定値に、各弱判別器２１ｎに対する信頼度となる重みを乗算し、これを加算した値（重み付き多数決の値）を出力する。ここで、AdaBoostでは、複数の弱判別器２１ｎは、順次推定値を算出し、これに伴い重み付き多数決の値が逐次更新されていく。これら複数の弱判別器は、集団学習機６により後述するアルゴリズムに従い、上述の学習サンプルを使用して集団学習により逐次的に生成されたものであり、例えばその生成順に上記推定値を算出する。また、重み付き多数決の重み（信頼度）は、弱判別器を生成する後述する学習工程にて学習されるものである。
【００５０】
弱判別器２１ｎは、例えばAdaBoostのように弱判別器が２値出力を行うべき場合は、ピクセル間差分特徴を閾値で二分することで、対象物体であるかどうかの判別をおこなう。また、閾値による判別方法は、複数の閾値を用いてもよい。また、弱判別器は、例えばReal-AdaBoostのようにピクセル間差分特徴から対象物体かどうかを表す度合いの連続値を確率的に出力してもよい。これら弱判別器２１ｎが必要とする判別のための特徴量（閾値）なども学習時に上記アルゴリズムに従って学習されるものである。
【００５１】
更に、重み付き多数決の際、全ての弱判別器の計算結果を待たず、計算途中であってもその値によっては対象物体でないと判断して計算を打ち切りするため、打ち切りの閾値を学習時に学習する。この打ち切り処理によって、検出処理における演算量を大幅に削減することが可能となる。これにより、全ての弱判別器の計算結果を待たず、計算途中で次のウィンドウ画像の判別処理に移ることができる。
【００５２】
このように、判別器５は、ウィンドウ画像が対象物か否かを判定するための評価値として重み付き多数決を算出し、その評価値に基づきウィンドウ画像が対象物か否かを判定する判定手段として機能する。更に判別器５は、予め学習により生成された複数の弱判別器が推定値を順次算出して出力し、推定値が算出される毎にその推定値に対して学習により得られた各弱判別器に対する重みを乗算して加算した重み付き多数決の値を更新し、この重み付き多数決の値（評価値）が更新される毎に、上記打ち切り閾値を利用して推定値の算出を打ち切るか否かをも制御することができるものである。
【００５３】
この判別器５は、集団学習機６において、学習サンプルを使用し、所定のアルゴリズムに従って集団学習することにより生成される。ここでは先ず、集団学習機６における集団学習方法について説明し、次に、その集団学習により学習された得られた判別器５を使用し、入力画像から対象物を判別する方法について説明する。
【００５４】
（２）集団学習機
ブースティングアルゴリズムを用いて集団学習する集団学習機６は、上述したように複数の弱判別器を複数個組み合わせ、結果的に強い判定結果が得られるよう学習するものである。弱判別器は、１つ１つは、極めて簡単な構成とし、１つでは顔か顔でないかの判別能力も低いものであるが、これを例えば数百〜数千個組み合わせることで、高い判別能力を持たせることができる。この集団学習機６は、例えば数千の学習サンプルといわれる予め正解付け（ラベリング）された対象物と非対象物、例えば顔画像と、非顔画像とからならなるサンプル画像を使用し、多数の学習モデル（仮説の組み合わせ）から所定の学習アルゴリズムに従って１つの仮説を選択（学習）することで弱判別器を生成し、この弱判別器の組み合わせ方を決定していく。弱判別器はそれ自体では判別性能が低いものであるが、これらの選別、組み合わせ方により結果的に判別能力が高い判別器を得ることができるため、集団学習機６では、弱判別器の組み合わせ方、即ち弱判別器の選別及びそれらの出力値を重み付き多数決する際の重みなどの学習をする。
【００５５】
次に、適切な弱判別器を学習アルゴリズムに従って多数組み合わせた判別器を得るための集団学習機６の学習方法について説明するが、集団学習機６の学習方法の説明に先立ち、集団学習にて学習する学習データのうちで、本実施の形態において特徴となる学習データ、具体的には弱判別器を構成するためのピクセル間差分特徴、及びに判別工程（検出工程）において検出を途中で打ち切るための打ち切り閾値について説明しておく。
【００５６】
（３）弱判別器の構成
本実施の形態における判別器５は、これを構成する弱判別器が弱判別器に入力される画像に含まれる全画素において選択された２つの画素の輝度値の差分（ピクセル間差分特徴）により顔か否かを判別する極めて簡単な構成とすることで、判別工程において弱判別器の判別結果の算出を高速化するものである。弱判別器に入力される画像は、学習工程では、学習サンプルであり、判別工程では、スケーリング画像から切り出されたウィンドウ画像である。
【００５７】
図５は、ピクセル間差分特徴を説明するための画像を示す模式図である。画像３０において、本実施の形態においては、任意の２つの画素の輝度値の差、例えば画素３１の輝度値Ｉ１と、画素３２の輝度値Ｉ２との差、即ち下記式（２）をピクセル間差分特徴と定義する。
【００５８】
【数２】
2005157679.tif 000004
【００５９】
ここで、どのピクセル間差分特徴を顔検出に使用するかが弱判別器の能力となる。従って、切り出し画像に含まれる任意の２画素の組み合わせ（フィルタ又は弱仮説ともいう。）から、弱判別器に使用するピクセル位置の組を選択する必要がある。
【００６０】
例えばAdaBoostでは、弱判別器に、＋１（対象物体である）か−１（非対象物体）であるかの確定的な出力を要求する。そこで、AdaBoostにおいては、ある任意のピクセル位置において、そのピクセル間差分特徴を、１又は複数の閾値を利用して二分割（＋１又は−１)することをもって弱判別器とすることができる。
【００６１】
また、このような２値出力ではなく、学習サンプルの確率分布を示す連続値（実数値）を確率的に出力するような例えばReal-AdaBoost又はGentle Boostなどのブースティングアルゴリズムの場合、弱判別器は、入力された画像が対象物である確からしさ（確率）を出力する。弱判別器の出力は、このように確定的であっても確率的であってもよい。先ず、これら２種類の弱判別器について説明する。
【００６２】
（３−１）２値出力の弱判別器
確定的な出力をする弱判別器は、ピクセル間差分特徴の値に応じて、対象物か否かの２クラス判別をおこなう。対象画像領域中のある２つのピクセルの輝度値をＩ１、Ｉ２とし、ピクセル間差分特徴により対象物か否かを判別するための閾値をＴｈとすると、下記式（３）を満たすか否かで、いずれのクラスに属するかを決定することができる。
【００６３】
【数３】
2005157679.tif 000005
【００６４】
ここで、弱判別器を構成するには、２つのピクセル位置と、その閾値を決定する必要があるがその決定方法については後述する。上記式（３）の閾値判定は最も単純な場合である。また、閾値判定には、次の下記式（４）又は式（５）に示す２つの閾値を用いることもできる。
【００６５】
【数４】
2005157679.tif 000006
【００６６】
【数５】
2005157679.tif 000007
【００６７】
図６（ａ）乃至図６（ｃ）は、縦軸に頻度をとり、横軸にピクセル間差分特徴をとって、それぞれ上記式（３）〜（５）に示す３つの判別方法を、データの頻度分布の特徴的なケースに合わせて示す模式図である。ここで、図６（ａ）乃至図６（ｃ）においては、ｙｉは弱判別器の出力を示し、破線で示すデータがｙｉ＝−１（非対象物）である全学習サンプルの出力値を示し、実線で示すデータがｙｉ＝１（対象物）である全学習サンプルの出力値を示す。多数の顔画像、非顔画像からなる学習サンプルに対し、同一のピクセル間差分特徴に対する頻度を取ると図６（ａ）乃至図６（ｃ）に示すヒストグラムが得られる。
【００６８】
図６（ａ）に示すように、ヒストグラムが、例えば、非対象物を示す破線のデータと、対象物を示す実線のデータとが同様な正規曲線のような分布を取り、そのピーク位置がずれるような場合は、その境を閾値Ｔｈとし、上記式（３）にて対象物か否かを判別することができる。例えばAdaBoostにおいては、弱判別器の出力をｆ（ｘ）としたとき、出力ｆ（ｘ）＝１（対象物）又は−１（非対象物）となる。図６（ａ）では、ピクセル間差分特徴が閾値Ｔｈより大きい場合に対象物であると判定され、弱判別器の出力がｆ（ｘ）＝１となる例を示している。
【００６９】
また、ピーク位置が同じような位置にあって、その分布の幅が異なるような場合、分布が狭い方のピクセル間差分特徴の上限値近傍及び下限値近傍を閾値として上記式（４）又は式（５）により対象物か否かを判別することができる。図６（ｂ）では、分布が狭い方を対象物と判定される例、図６（ｃ）では、分布の幅が広い方から分布の幅が狭い方を除いたものが対象物と判定され、弱判別器の出力がｆ（ｘ）＝１となる例を示している。
【００７０】
弱判別器は、あるピクセル間差分特徴とその閾値とを決定することにより構成されるが、その判定によって誤り率ができるだけ小さくなるような、即ち判別率が高いピクセル間差分特徴を選択する必要がある。例えば、閾値は、２つの画素位置を決め、正解付けされた学習サンプルに対して図６に示すヒストグラムを求め、最も正解率が高く、非正解率（誤り率）が最も小さくなるような閾値を検索することで求めることができる。また、２つの画素位置は、閾値と共に得られる誤り率が最も小さいものを選択するなどすればよい。但し、AdaBoostにおいては、判別の難易度を反映した重み（データ重み）が各学習サンプルに付けられており、適切なピクセル間差分特徴（どの位置の２つのピクセルの輝度値を特徴値とするか）が後述する重み付き誤り率を最小にするように学習される。
【００７１】
（３−２）連続値出力の弱判別器
確率的な出力をする弱判別器としては、上述した如く、例えばReal-AdaBoost又はGentle Boostなどのように弱判別器が連続値を出力するものがある。この場合は、ある決められた一定値（閾値）により判別問題を解き、２値出力（ｆ（ｘ）＝１又は−１）する上述の場合と異なり、入力された画像が対象物である度合いを例えば確率密度関数として出力する。
【００７２】
このような、対象物体である度合い（確率）を示す確率的な出力は、ピクセル間差分特徴ｄを入力としたとき、ＰＰ（ｘ）を学習サンプルの対象物の確率密度関数、Ｐｎ（ｘ）を学習サンプルの非対象物の確率密度関数とすると、下記式（６）に示す関数ｆ（ｘ）とすることができる。
【００７３】
【数６】
2005157679.tif 000008
【００７４】
図７（ａ）は、縦軸に確率密度をとり、横軸にピクセル間差分特徴をとって、データの頻度分布の特徴的なケースを示す図、図７（ｂ）は、縦軸に関数ｆ（ｘ）の値をとり、横軸にピクセル間差分特徴をとって、図７（ａ）に示すデータ分布における関数ｆ（ｘ）を示すグラフ図である。図７（ａ）において、破線が非対象物体であることを示す確率密度、実線が対象物体であることを示す確率密度を示す。上記式（６）から関数ｆ（ｘ）を求めると図７（ｂ）に示すグラフが得られる。弱判別器は、判別工程において、入力されるウィンドウ画像から得られた上記式（２）に示すピクセル間差分特徴ｄに対応する関数ｆ（ｘ）を出力する。この関数ｆ（ｘ）は、対象物らしさの度合いを示すものであって、例えば非対象物を−１、対象物を１としたとき、−１乃至１までの連続値を取るものとすることができる。例えばピクセル間差分特徴ｄとそれに対応するｆ（ｘ）とからなるテーブルを記憶し、入力に応じてテーブルからｆ（ｘ）を読出し出力する。従って、一定値である閾値Ｔｈ又はＴｈ１、Ｔｈ２より若干記憶量が大きくなるが判別性能が向上する。
【００７５】
これら複数の推定方法（判別方法）は、アンサンブル学習中に組み合わせて使用することで、判別性能が向上することが期待できる。また、いずれか単一の判別方法のみを利用すれば、実行速度性能を引き出すことができる。
【００７６】
本実施の形態において使用する弱判別器は、使用する特徴量（ピクセル間差分特徴）が非常に単純であるために、上述したように極めて高速に対象物の判別をおこなうことができる点が特長である。このように対象物として顔検出する場合には、ピクセル間差分特徴を上述の判別方法のうち最も単純な式（３）に示す閾値判定によっても極めてよい判別結果が得られるが、どのような判別方法により弱判別器が有効に機能するかは、対象とする問題によって異なり、その閾値設定方法などを適宜選択すればよい。また、問題によっては、２つの画素の輝度値の差ではなく、複数個の画素の輝度値の差を特徴量としたり、それらを組み合わせた特徴量を使用したりしてもよい。
【００７７】
（４）打ち切り閾値
次に、打ち切り閾値について説明する。ブースティングを用いた集団学習機においては、通常は、上述したように判別器５を構成する全弱判別器の出力の重み付き多数決によりウィンドウ画像が対象物か否かを判別する。重み付き多数決は、弱判別器の判別結果（推定値）を逐次足し合わせていくことで算出される。例えば、弱判別器の個数をｔ（＝１，・・・，Ｋ）、各弱判別器に対応する多数決の重み（信頼度）をαｔ、各弱判別器の出力をｆｔ（ｘ）としたとき、AdaBoostにおける重み付き多数決の値Ｆ(ｘ)は、下記式（７）により求めることができる。
【００７８】
【数７】
2005157679.tif 000009
【００７９】
図８は、横軸に弱判別器の数をとり、縦軸に上記式（７）に示す重み付き多数決の値Ｆ(ｘ)をとって、入力される画像が対象物か否かに応じた重み付き多数決の値Ｆ(ｘ)の変化を示すグラフ図である。図８において、実線で示すデータＤ１〜Ｄ４は、対象物としてラベリングされている画像（学習サンプル）を入力として弱判別器により算出した推定値ｆ（ｘ）を逐次算出し、その重み付き多数決の値Ｆ(ｘ)を逐次求めたものである。このデータＤ１〜Ｄ４に示すように、対象物を入力画像とするとある程度の個数の弱判別器の判別によりその重み付き多数決の値Ｆ(ｘ)はプラスになる。
【００８０】
ここで、本実施の形態においては、通常のブースティングアルゴリズムとは異なる手法を導入する。すなわち、弱判別器の判別結果を逐次足し合わせていく過程において、全ての弱判別器の結果を得る前であっても、明らかに対象物ではないと判別できるウィンドウ画像についてはその判別を中止するものである。この際、判別を中止するか否かを決定する閾値を学習工程にて学習しておく。以下、判別を中止するか否かの判定に用いる閾値を打ち切り閾値という。
【００８１】
この打ち切り閾値により、全てのウィンドウ画像について、全弱判別器の出力結果を用いなくとも、非対象物であることが確実に推定できる場合、弱判別器の推定値ｆ（ｘ）の演算を途中で中止することができ、これにより、全ての弱判別器を使用した重み付き多数決を行うのに比して格段に演算量を低減することができる。
【００８２】
この打ち切り閾値としては、ラベリングされている学習サンプルのうち、検出対象物を示す学習サンプルの判別結果の重み付き多数決の値が取りえる最小値とすることができる。判別工程において、ウィンドウ画像の弱判別器による結果が逐次重み付きされて出力される、即ち、重み付き多数決の値が逐次更新されていくが、この更新されていく値と、上記打ち切り閾値とを更新の度、即ち１つの弱判別器が判別結果を出力する毎に比較し、更新された重み付き多数決の値が打ち切り閾値を下回る場合には当該ウィンドウ画像は対象物ではないとし、計算を打ち切ることができ、これにより無駄な演算を省いて更に判別処理を高速化することができる。
【００８３】
すなわち、Ｋ番目の弱判別器の出力ｆＫ（ｘ）の打ち切り閾値ＲＫは、学習サンプルｘｉ（＝ｘ１〜ｘＮ）のうち、対象物である学習サンプルｘｊ（＝ｘ１〜ｘＪ）を使用したときの重み付き多数決の値の最小値とされ、下記式（８）のように定義される。
【００８４】
【数８】
2005157679.tif 000010
【００８５】
この式（８）に示すように、対象物である学習サンプルｘ１〜ｘＪの重み付き多数決の値の最小値が０を上回る場合には打ち切り閾値ＲＫには０が設定される。なお、０を上回らないようにするのは、０を閾値にして判別を行うAdaBoostの場合であり、ここは集団学習の手法により異なる場合がありうる。AdaBoostの場合においては、打ち切り閾値は図８の太線で示すように、入力画像として対象物を入力した場合の全データＤ１〜Ｄ４のうち取りうる最小値に設定され、全てのデータＤ１〜Ｄ４の最小値が０を超えた場合は、打ち切り閾値が０に設定される。
【００８６】
本実施の形態においては、弱判別器が生成される毎の打ち切り閾値Ｒｔ（Ｒ1〜Ｒｋ）を学習しておくことで、後述する判別工程において、例えばデータＤ５のように、複数の弱判別器により推定値が逐次出力され重み付き多数決の値が逐次更新されていくが、この値が上記打ち切り閾値を下回った時点で、後段の弱判別器による判別を行う処理を終了する。すなわち、この打ち切り閾値Ｒｔを学習しておくことにより、弱判別器の推定値を計算する毎に次の弱判別器の計算を行うか否かを決定でき、明らかに対象物ではないとされる場合には全ての弱判別器の判別結果を待たずに非対象物であることが判定でき、演算を途中で打ち切りことで検出処理を高速化することができる。
【００８７】
（５）学習方法
次に、集団学習機６の学習方法について説明する。与えられたデータが、例えば顔か否かを判別する問題など、一般的な２クラス判別のパターン認識問題の前提として、予め人手によりラベリング（正解付け）された学習サンプルとなる画像（訓練データ）を用意する。学習サンプルは、検出したい対象物体の領域を切り出した画像群と、全く関係のない例えば風景画などを切り出したランダムな画像群とからなる。
【００８８】
これらの学習サンプルを基に学習アルゴリズムを適用し、判別時に用いる学習データを生成する。判別時に用いる学習データとは、本実施の形態においては、上述した学習データを含む以下の４つの学習データである。すなわち、
（Ａ）２つのピクセル位置の組（Ｋ個）
（Ｂ）弱判別器の閾値（Ｋ個）
（Ｃ）重み付き多数決の重み（弱判別器の信頼度）（Ｋ個）
（Ｄ）打ち切り閾値（Ｋ個）
【００８９】
（５−１）判別器の生成
以下に、上述したような多数の学習サンプルから、上記（Ａ）乃至（Ｄ）に示す４種類の学習データを学習するアルゴリズムを説明する。図９は、集団学習機６の学習方法を示すフローチャートである。なお、ここでは、学習アルゴリズムとして、弱判別の際の閾値として一定の値を使用するアルゴリズム（AdaBoost）に従った学習について説明するが、閾値として正解の確からしさ（確率）を示す連続値を使用する例えばReal-AdaBoostなど、弱判別器を複数結合するために集団学習するものであれば、学習アルゴリズムはAdaBoostに限らない。
【００９０】
（ステップＳ０）  学習サンプルのラベリング
上述のように、予め対象物又は非対象物であることがラベリングされた学習サンプル（ｘｉ，ｙｉ）を用意する。
ここで、
学習サンプル（ｘｉ，ｙｉ）：（ｘ１，ｙ１），・・・，（ｘＮ，ｙＮ）
ｘｉ∈Ｘ，ｙｉ∈{−１，１}
Ｘ：学習サンプルのデータ
Ｙ：学習サンプルのラベル（正解）
Ｎ：学習サンプル数
を示す。即ち、ｘｉは、学習サンプル画像の全輝度値からなる特徴ベクトルを示す。また、ｙｉ＝−１は、学習サンプルが非対象物としてラベリングされている場合を示し、ｙｉ＝１は、学習サンプルが対象物としてラベリングされていることを示す。
【００９１】
（ステップＳ１）  データ重みの初期化
ブースティングにおいては、各学習サンプルの重み（データ重み）を異ならせ、判別が難しい学習サンプルに対するデータ重みを相対的に大きくしていく。判別結果は、弱判別器を評価する誤り率（エラー）の算出に使用されるが、判別結果にデータ重みを乗算することで、より難しい学習サンプルの判別を誤った弱判別器の評価が実際の判別率より下まわることになる。後述する方法にてデータ重みは逐次更新されるが、先ず最初にこの学習サンプルのデータ重みの初期化を行う。学習サンプルのデータ重みの初期化は、全学習サンプルの重みを一定にすることにより行われ、下記式（９）のように定義される。
【００９２】
【数９】
2005157679.tif 000011
【００９３】
ここで、学習サンプルのデータ重みＤ１，ｉは、繰り返し回数ｔ＝１回目の学習サンプルｘｉ（＝ｘ1〜ｘＮ）のデータ重みを示す。Ｎは学習サンプル数である。
【００９４】
（ステップＳ２〜Ｓ７）  繰り返し処理
次に、以下に示すステップＳ２〜ステップＳ７の処理を繰り返すことで判別器５を生成する。ここで、繰り返し処理回数をｔ＝１，２，・・・，Ｋとする。１回の繰り返し処理を行う毎に１つの弱判別器、即ち１組の画素と、その位置でのピクセル間差分特徴が学習され、従って繰り返し処理回数（Ｋ回）分、弱判別器が生成されて、Ｋ個の弱判別器からなる判別器５が生成されることになる。なお、通常、数百〜数千個の繰り返し処理により、数百〜数千個の弱判別器が生成されるが、繰り返し処理回数（弱判別器の個数）ｔは、要求される判別性能、判別する問題（対象物）に応じて適宜設定すればよい。
【００９５】
（ステップＳ２）  弱判別器の学習
ステップＳ２では弱判別器の学習（生成）を行うが、この学習方法については後述する。本実施の形態においては、１回の繰り返し処理毎に１つの弱判別器を後述する方法に従って生成する。
【００９６】
（ステップＳ３）  重み付き誤り率ｅｔの算出
次に、ステップＳ２にて生成された弱判別器の重み付き誤り率を下記式（１０）により算出する。
【００９７】
【数１０】
2005157679.tif 000012
【００９８】
上記式（１０）に示すように、重み付き誤り率ｅｔは、学習サンプルのうち、弱判別器の判別結果が誤っているもの（ｆｔ（ｘｉ）≠ｙｉ）である学習サンプルのデータ重みのみを加算したものとなり、上述したように、データ重みＤｔ，ｉが大きい（判別が難しい）学習サンプルの判別を間違えると重み付き誤り率ｅｔが大きくなるよう算出される。なお、重み付き誤り率ｅｔは０．５未満となるが、この理由は後述する。
【００９９】
（ステップＳ４）  重み付き多数決の重み（弱判別器の信頼度）の算出
次に、上述の式（１０）に示す重み付き誤り率ｅｔに基づき、重み付き多数決の重み（以下、信頼度という。）信頼度αｔを下記式（１１）により算出する。この、重み付き多数決の重みは、繰り返し回数ｔ回目に生成された弱判別器の信頼度αｔを示す。
【０１００】
【数１１】
2005157679.tif 000013
【０１０１】
上記式（１０）に示すように、重み付き誤り率ｅｔが小さいものほどその弱判別器の信頼度αｔが大きくなる。
【０１０２】
（ステップＳ５）  学習サンプルのデータ重み更新
次に、上記式（１１）にて得られた信頼度αｔを使用して、下記式（１２）により学習サンプルのデータ重みＤｔ，ｉを更新する。データ重みＤｔ，ｉは、通常全部足し合わせると１になるよう正規化されており、下記式（１３）はデータ重みＤｔ，ｉを正規化するためのものである。
【０１０３】
【数１２】
2005157679.tif 000014
【０１０４】
（ステップＳ６）  打ち切り閾値Ｒｔの算出
次に、上述したように、判別工程にて判別を打ち切るための打ち切り閾値Ｒｔを算出する。打ち切り閾値Ｒｔは、上述の式（８）に従って、対象物である学習サンプル（ポジディブな学習サンプル）ｘ１〜ｘＪの重み付き多数決の値又は０のうち最も小さい値が選択される。なお、上述したように、最小値又は０を打ち切り閾値に設定するのは、０を閾値にして判別を行うAdaBoostの場合である。いずれにせよ、打ち切り閾値Ｒｔは、少なくとも全てのポジティブな学習サンプルが通過できる最大の値となるよう設定する。
【０１０５】
そして、ステップＳ７において、所定回数（＝Ｋ回）のブースティングが行われたか否かを判定し、行われていない場合は、ステップＳ２〜ステップＳ７の処理を繰り返す。所定回数の学習が終了した場合は学習処理を終了する。この繰り返し処理は、学習サンプルなどの与えられる画像から検出対象とする対象物を十分判別できる数の弱判別器を学習すると終了するものとする。
【０１０６】
（５−２）弱判別器の生成
次に、上述したステップＳ２における弱判別器の学習方法（生成方法）について説明する。弱判別器の生成は、弱判別器が２値出力の場合と、上記式（６）に示す関数ｆ（ｘ）として連続値を出力する場合とで異なる。また、２値出力の場合においても、上記式（２）に示すように１つの閾値Ｔｈで判別する場合と、２つの閾値Ｔｈ１、Ｔｈ２で判別する場合とで処理が若干異なる。ここでは、１つの閾値Ｔｈで２値出力する弱判別器の学習方法（生成方法）を説明する。図１０は、１つの閾値Ｔｈで２値出力する弱判別器の学習方法（生成方法）を示すフローチャートである。
【０１０７】
（ステップＳ１１）  画素の選択
ここでは、学習サンプルにおける全画素から任意の２つを選択する。例えば２０×２０画素の学習サンプルを使用する場合、２つの画素の選択方法は、４００×３９９通りあるがそのうちの１つを選択する。ここで、２つの画素の位置をＳ１、Ｓ２、その輝度値をそれぞれＩ１、Ｉ２とする。
【０１０８】
（ステップＳ１２）  頻度分布作成
次に、全ての学習サンプルに対して、ステップＳ１１にて選択した２つの画素の輝度値の差（Ｉ１−Ｉ２）であるピクセル間差分特徴ｄを求め、図６（ａ）に示したようなヒストグラム（頻度分布）を求める。
【０１０９】
（ステップＳ１３）  閾値Ｔｈｍｉｎの算出
そして、ステップＳ１２にて求めた頻度分布から、上記式（１０）に示す重み付き誤り率ｅｔを最小（ｅｍｉｎ）にする閾値Ｔｈｍｉｎを求める。
【０１１０】
（ステップＳ１４）  閾値Ｔｈｍａｘの算出
更に、上記式（１０）に示す重み付き誤り率ｅｔを最大（ｅｍａｘ）にする閾値Ｔｈｍａｘを求め、下記（１４）に示す方法にて閾値を反転する。即ち、弱判別器は１つの閾値Ｔｈより大きいか否かで正解か不正解かの２つの値を出力するものであり、従って重み付き誤り率ｅｔが０．５未満である場合は、反転することで誤り率を０．５以上にすることができる。
【０１１１】
【数１３】
2005157679.tif 000015
【０１１２】
（ステップＳ１５）  パラメータ決定
最後に、上述のｅｍｉｎとｅｍａｘ’とから、弱判別器を構成する各パラメータ、即ち２つの画素の位置Ｓ１、Ｓ２と、その閾値Ｔｈとを決定する。すなわち、
ｅｍｉｎ＜ｅｍａｘ’の場合：Ｓ１、Ｓ２、Ｔｈｍｉｎ
ｅｍｉｎ＞ｅｍａｘ’の場合：Ｓ１’（＝Ｓ２）、Ｓ２’（＝Ｓ１）、Ｔｈｍｉｎ
そして、ステップＳ１６において、所定回数Ｍ回繰り返したか否かを判定し、所定回数繰り返した場合はステップＳ１７に進み、Ｍ回の繰り返し処理にて生成された弱判別器のうち最も誤り率ｅｔが小さいものを弱判別器とし、図９に示すステップＳ３に進む。一方、ステップＳ１６にて所定回数に達していない場合は、ステップＳ１１〜ステップＳ１６の処理を繰り返す。このように、１つの弱判別器の生成にあたって、ｍ（＝１，２，・・・，Ｍ）回の繰り返し処理が行われる。なお、説明の都合上、図９に示すステップＳ３において重み付き誤り率ｅｔを算出するものとして説明したが、ステップＳ１７において、最も誤り率ｅｔが小さい弱判別器を選択した時点でステップＳ３に示す誤り率ｅｔが自動的に得られる。
【０１１３】
なお、本実施の形態においては、前回の繰り返し処理においてステップＳ５にて求めたデータ重みＤｔ，iを使用し、複数の弱判別器の特徴量を学習し、これらの弱判別器（弱判別器候補）の中から上記式（１０）に示す誤り率が最も小さいものを選択することで、１つの弱判別器を生成する場合について説明したが、上述のステップＳ２において、例えば予め用意又は学習した複数の画素位置から任意の画素位置を選択して弱判別器を生成するようにしてもよい。また、上述のステップＳ２〜ステップＳ７までの繰り返し処理に使用する学習サンプルとは異なる学習サンプルを使用して弱判別器を生成してもよい。また、cross-validation（交差検定）法又はjack-knife法などの評価などのように、学習サンプルとは別のサンプルを用意して生成された弱判別器や判別器の評価を行うようにしてもよい。ここで、交差検定とは、学習サンプルを均等にＩ個に分割し、その中から１つ以外を使用して学習を行い、当該１つを使用して学習結果を評価する作業をＩ回繰り返して学習結果の評価を行う手法である。
【０１１４】
一方、上記式（４）または式（５）に示すように、弱判別器が２つの閾値Ｔｈ１、Ｔｈ２を有するような場合、図１０に示すステップＳ１３〜ステップＳ１５の処理が若干異なる。上記式（３）に示すように、閾値Ｔｈが１つの場合は、反転することにより、誤り率が０．５より大きい場合にその誤り率を反転させることができたが、式（４）に示すように、ピクセル間差分特徴が閾値Ｔｈ２より大きく閾値Ｔｈより小さい場合が正解の判別結果である場合、これを反転すると、式（５）に示すように、閾値Ｔｈ２より小さいか、閾値Ｔｈ１より大きい場合が正解の判別結果になる。即ち、式（４）の反転は式（５）となり、式（５）の反転は式（４）となる。
【０１１５】
弱判別器が２つの閾値Ｔｈ１、Ｔｈ２を有して判別結果を出力するような場合は、図１０に示すステップＳ１２において、ピクセル間差分特徴における頻度分布を求め、誤り率ｅｔを最小にする閾値Ｔｈ１、Ｔｈ２を求める。そして、ステップＳ１６と同様に所定回数繰り返したか否かを判定し、所定回数繰り返し後、生成された弱判別器の中で最も誤り率が小さい弱判別器を採用する。
【０１１６】
また、上記式（６）に示すように、連続値を出力する弱判別器の場合、図１０に示すステップＳ１１と同様、先ず２つの画素をランダムに選択する。そして、ステップＳ１２と同様、全学習サンプルにおける頻度分布を求める。そして、得られた頻度分布に基づき上記式（６）に示す関数ｆ（ｘ）を求める。そして、弱判別器の出力として対象物である度合い（正解である度合い）を出力するような所定の学習アルゴリズムに従って誤り率を算出するという一連の処理を所定回数繰り返し、最も誤り率が小さい（正答率が高い）パラメータを選択することで弱判別器生成する。
【０１１７】
ここで、いずれの弱判別器の生成においても、例えば２０×２０画素の学習サンプルを使用する場合、２つの画素の選択方法は、１５９０００通りあり、最大Ｍ＝１５９０００回、上記繰り返し処理を行った中で最も誤り率が小さいものを弱判別器として採用することができる。このように、繰り返し回数の最大数繰り返す、即ち生成し得る最大数の弱判別器を生成し、それらの中から最も誤り率が小さいものを弱判別器として採用すると性能が高い弱判別器を生成することができるが、最大回数未満の例えば数百回繰り返し処理を行って、その中から最も誤り率が小さいものを採用してもよい。
【０１１８】
（６）対象物検出方法
次に、図１に示す対象物検出装置の対象物検出方法について説明する。図１１は、対象物検出方法を示すフローチャートである。検出時（判別工程）においては、上述のようにして生成された弱判別器群を利用した判別器５を使用し、所定のアルゴリズムに従って画像中から対象物体を検出する。
【０１１９】
（ステップＳ２１）  スケーリング画像生成
先ず、図１に示すスケーリング部３は、画像出力部２から与えられた濃淡画像を一定の割合で縮小スケーリングする。なお、画像出力部２には、入力画像として濃淡画像が入力されてもよく、画像出力部２にて入力画像を濃淡画像に変換してもよい。スケーリング部３に画像出力部２から与えられる画像をスケール変換せずに出力し、次のタイミング以降で縮小スケーリングしたスケーリング画像を出力するが、スケーリング部３から出力する画像をまとめてスケーリング画像という。ここで、スケーリング画像を生成するタイミングは、前に出力したスケーリング画像全領域の顔検出が終了した時点とし、スケーリング画像がウィンドウ画像より小さくなった時点で次のフレームの入力画像の処理に移る。
【０１２０】
（ステップＳ２２）
スケーリングされた画像に対し、図１に示す走査部４が探索ウィンドウの位置を縦横に走査し、ウィンドウ画像を出力する。
【０１２１】
（ステップＳ２３、２４）  評価値ｓの算出
そして、走査部４により出力されるウィンドウ画像が対象物であるか否かを判定する。判別器５は、ウィンドウ画像に対して上述した複数の弱判別器の推定値ｆ（ｘ）を逐次重み付き加算した値（重み付き多数決の値の更新値）を評価値ｓとして算出する。そして、この評価値ｓに基づきウィンドウ画像が対象物か否か、及び判別を打ち切るか否かを判定する。
【０１２２】
先ず、ウィンドウ画像を入力されると、その評価値ｓ＝０に初期化する。判別器５の初段の弱判別器２１１はピクセル間差分特徴ｄｔを算出する（ステップＳ２３）。そしてこの弱判別器２１１が出力する推定値を上記評価値ｓに反映させる（ステップＳ２４）。
【０１２３】
ここで、上述した式（３）乃至（５）により、２値の推定値を出力する弱判別器と、式（６）に示す関数ｆ（ｘ）を推定値として出力する弱判別器とでは、その推定値の評価値ｓへの反映の仕方が異なる。
【０１２４】
先ず、上記式（２)を弱判別器に利用し、２値の値を推定値として出力する場合、評価値ｓは下記（１５）のようになる。
【０１２５】
【数１４】
2005157679.tif 000016
【０１２６】
また、上記式（３）を弱判別器に利用し、２値の値を推定値として出力する場合、評価値ｓは下記式（１６）のようになる。
【０１２７】
【数１５】
2005157679.tif 000017
【０１２８】
また、上記式（４）を弱判別器に利用し、２値の値を推定値として出力する場合、評価値ｓは下記式（１７）のようになる。
【０１２９】
【数１６】
2005157679.tif 000018
【０１３０】
また、上記式（５）を弱判別器に利用し、関数ｆを推定値として出力する場合、評価値ｓは下記式（１８）のようになる。
【０１３１】
【数１７】
2005157679.tif 000019
【０１３２】
（ステップＳ２５、Ｓ２６）  打ち切り判定
そして、判別器５は、上述に示す例えば４つの方法の何れかにより得られた（更新された）評価値ｓが打ち切り閾値Ｒｔより大きいか否かを判定する。評価値ｓが打ち切り閾値Ｒｔより大きい場合は、所定回数（＝Ｋ回）繰り返したか否かを判定し（ステップＳ２６）、繰り返していない場合はステップＳ２３からの処理を繰り返す。
【０１３３】
一方、所定回数（＝Ｋ回）繰り返している場合、及び評価値ｓが打ち切り閾値Ｒｔより小さい場合はステップＳ２７に進み、得られている評価値ｓが０より大きいか否かにより、対象物であるか否かの判定をする。そして、対象物である場合は、現在のウィンドウ位置を記憶し、次の探索ウィンドウがあるか否かを判別し（ステップＳ２７）、次の探索ウィンドウがある場合はステップＳ２２からの処理を繰り返す。また、次の全ての領域について探索ウィンドウを走査した場合はステップＳ２８に進み、次のスケーリング画像があるか否かを判定し、なければステップＳ２９に進んで重なり領域の削除処理を実行する。スケーリング画像がある場合は、ステップＳ２１からの処理をくり返す。ステップＳ２１のスケーリング処理は、ウィンドウ画像よりスケーリング画像が小さくなった時点で終了する。
【０１３４】
（ステップＳ２９〜Ｓ３１）  重なり領域の削除
１枚の入力画像に対して、全てのスケーリング画像の処理が終了すると、ステップＳ２９の処理に移る。ステップＳ２９以降の処理においては、１枚の入力画像において、対象物体であると判定された領域が重複している場合に、互いに重なっている領域を取り除く。先ず、互いに重なっている領域が在るか否かを判定し、ステップＳ２６にて記憶した領域が複数あり、かつ重複している場合は、ステップＳ３０に進む。そして、互いに重なっている２つの領域を取り出し、この２つの領域のうち、評価値ｓが小さい領域は信頼度が低いとみなし削除し、評価値ｓの大きい領域を選択する（ステップＳ２９）。そして、再びステップＳ２９からの処理を繰り返す。これにより、複数回重複して抽出されている領域のうち、最も評価値ｓが高い領域１枚のみが選択される。なお、２以上の対象物領域が重複しない場合及び対象物領域が存在しない場合は１枚の入力画像についての処理を終了し、次のフレーム処理に移る。
【０１３５】
このように、本実施の形態における対象物検出方法によれば、ピクセル間差分特徴により弱判別する弱判別器を集団学習により学習した判別器を使用して対象物を検出するため、ウィンドウ画像において、対応する２つの画素の輝度値を読出し、その差を算出するのみで、上記ステップＳ２３における対象物の特徴量の算出工程が終了し、極めて高速に顔検出処理することができるため、リアルタイムな顔検出が可能である。また、その特徴量から判別した判別結果（推定値）と判別に使用した弱判別器に対する信頼度とを乗算した値を加算して評価値ｓを逐次更新する毎に打ち切り閾値Ｒｔと比較し、弱判別器の推定値の演算を続けるか否かを判定する。そして、打ち切り閾値Ｒｔを評価値ｓが下回った場合に弱判別器の演算を打ち切り、次のウィンドウ画像の処理に移ることにより、無駄な演算を飛躍的に提言して更に高速に顔検出が可能となる。すなわち、入力画像及びそれを縮小スケーリングしたまたスケーリング画像の全ての領域を走査してウィンドウ画像を切り出した場合、それらのウィンドウ画像のうち対象物である確率は小さく、ほとんどが非対象物である。この非対象物であるウィンドウ画像の判別を途中で打ち切ることで、判別工程を極めて高効率化することができる。なお、逆に検出すべき対象物が多数含まれるような場合、上述した打ち切り閾値と同様の手法にて、対象物であると明らかなウィンドウ画像の演算を途中で打ち切るような閾値も設けてもよい。更に、入力画像をスケーリング部にてスケーリングすることで、任意の大きさの探索ウィンドウを設定し、任意の大きさの対象物を検出することができる。
【０１３６】
（７）実施例
次に、対象物として実際に顔を検出した本発明の実施例について説明する。なお、対象物は顔に限らず、例えばロゴタイプや模様又は人間の顔以外の対象物画像など、２次元的な平面での特徴を有するものであって、上記ピクセル間差分特徴によりある程度の判別ができる（弱判別器を構成できる）ものであれば、どのような対象物でも検出できることはいうまでもない。
【０１３７】
図１２（ａ）及び図１２（ｂ）は、本実施例の学習サンプルの一部を示す図である。学習サンプルは、対象物としてラベリングされた図１２（ａ）に示す顔画像群と、非対象物としてラベリングされた図１２（ｂ）に示す非顔画像群を使用する。図１２（ａ）及び（ｂ）には、学習サンプルとして使用した画像の一部を示すものであるが、学習サンプルとしては、例えば数千枚の顔画像と、数万枚の非顔画像とを用いる。画像サイズは例えば２０×２０ピクセルなどとする。
【０１３８】
本実施例では、これら学習サンプルから、図９及び図１０に示すアルゴリズムに従って上述の式（３）のみを利用した顔判別問題を学習する。このような学習により、最初に生成された１〜６番目までの弱判別器をそれぞれ図１３（ａ）乃至（ｆ）に示す。これらは顔の特徴をよく表していると考えられる。定性的には、図１３（ａ）の弱判別器ｆ１は、額（Ｓ１）は目（Ｓ２）より明るい（閾値：１８．５）ことを示し、図１３（ｂ）の弱判別器ｆ２は、頬（Ｓ１）は目（Ｓ２）より明るい（閾値：１７．５）ことを示す。また、図１３（ｃ）の弱判別器ｆ３は、額（Ｓ１）は髪の毛（Ｓ２）より明るい（閾値：２６．５）ことを示し、図１３（ｄ）の弱判別器ｆ４は、鼻の下（Ｓ１）は鼻腔（Ｓ２）より明るい（閾値：５．５）ことを示す。更に、図１３（ｅ）の弱判別器ｆ５は、頬（Ｓ１）は髪の毛（Ｓ２）より明るい（閾値：２２．５）ことを示し、図１３（Ｆ）の弱判別器ｆ６は、顎（Ｓ１）は唇（Ｓ２）より明るい（閾値：４．５）ことを示している。
【０１３９】
本実施例においては、最初の１つの弱判別器ｆ１により７０％の正答率（学習サンプルに対する性能）を得ることができ、弱判別器ｆ１〜ｆ６を全て利用することで８０％の正答率に達する。そして、４０個の弱判別器を組み合わせることで９０％の正答率に達し、７６５個の弱判別器を組み合わせることにより９９％の正答率に達することができた。
【０１４０】
図１４は、１枚の入力画像から検出された顔検出結果を示す図であって、（ａ）及び（ｂ）は、それぞれ重なり領域を取り除く前後を示す図である。図１４（ａ）に示す複数の枠が、検出された顔（対象物）であり、１枚の画像から図１１に示すステップＳ２１〜ステップＳ２８までの処理にて複数の顔（領域）が検出される。これをステップＳ２９〜ステップＳ３１に示す重なり領域除去処理を行うことで、１つの顔として検出することができる。なお、画像内に複数の顔が存在する場合には、複数の顔を同時に検出することができる。上述したように、本実施例の顔検出処理は、極めて高速に処理可能であって、通常のＰＣ等を利用しても１秒間に３０枚程度の入力画像から顔検出することができ、従って動画から顔検出することも可能である。
【０１４１】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【０１４２】
【図１】本発明の実施の形態における対象物検出装置の処理機能を示す機能ブロック図である。
【図２】上記対象物検出装置におけるスケーリング部にてスケール変換された画像を示す模式図である。
【図３】上記対象物検出装置における走査部が探索ウィンドウを走査する様子を示す図である。
【図４】上記対象物検出装置における判別器の構成を示す模式図である。
【図５】ピクセル間差分特徴を説明するための画像を示す模式図である
【図６】（ａ）乃至（ｃ）は、縦軸に頻度をとり、横軸にピクセル間差分特徴をとって、それぞれ上記式（３）〜（５）に示す３つの判別方法を、データの頻度分布の特徴的なケースに合わせて示す模式図である。
【図７】（ａ）は、縦軸に確率密度をとり、横軸にピクセル間差分特徴をとって、データの頻度分布の特徴的なケースを示す図、（ｂ）は、縦軸に関数ｆ（ｘ）の値をとり、横軸にピクセル間差分特徴をとって、（ａ）に示すデータ分布における関数ｆ（ｘ）を示すグラフ図である
【図８】横軸に弱判別器の数をとり、縦軸に重み付き多数決の値Ｆ(ｘ)をとって、入力される画像が対象物か否かに応じた重み付き多数決の値Ｆ(ｘ)の変化を示すグラフ図である。
【図９】上記対象物検出装置における判別器をえるための集団学習機の学習方法を示すフローチャートである。
【図１０】１つの閾値Ｔｈで２値出力する弱判別器の学習方法（生成方法）を示すフローチャートである。
【図１１】上記対象物検出装置における対象物検出方法を示すフローチャートである。
【図１２】（ａ）及び（ｂ）は、本発明の実施例に使用した学習サンプルの一部を示す図であってそれぞれ対象物としてラベリングされた顔画像群及び非対象物としてラベリングされた非顔画像群を示す図である。
【図１３】（ａ）乃至（ｆ）は、上記集団学習機における学習により、最初に生成されたそれぞれ１〜６番目までの弱判別器を説明する図である。
【図１４】１枚の入力画像から検出された顔検出結果を示す図であって、（ａ）及び（ｂ）は、それぞれ重なり領域を取り除く前後を示す図である。
【図１５】特許文献１に記載の矩形特徴（rectangle feauture）を示す模式図である。
【図１６】特許文献１に記載の矩形特徴を使用して顔画像に判別する方法を説明する図である。
【図１７】特許文献１に記載の積分画像（integral image）を示す模式図である。
【図１８】特許文献１に記載の積分画像を使用して矩形領域の輝度値の総和を算出する方法を説明する図である。
【符号の説明】
【０１４３】
１  対象物検出装置、２  画像入力部、３  スケーリング部、４  走査部、５  判別器、６  集団学習機、２１ｎ  弱判別器、２２  加算器、ｆ１〜ｆ６  弱判別器
【図１】
2005157679.tif 000020
【図２】
2005157679.tif 000021
【図３】
2005157679.tif 000022
【図４】
2005157679.tif 000023
【図５】
2005157679.tif 000024
【図６】
2005157679.tif 000025
【図７】
2005157679.tif 000026
【図８】
2005157679.tif 000027
【図９】
2005157679.tif 000028
【図１０】
2005157679.tif 000029
【図１１】
2005157679.tif 000030
【図１２】
2005157679.tif 000031
【図１３】
2005157679.tif 000032
【図１４】
2005157679.tif 000033
【図１５】
2005157679.tif 000034
【図１６】
2005157679.tif 000035
【図１７】
2005157679.tif 000036
【図１８】
2005157679.tif 000037