JP2005284348A - 情報処理装置および方法、記録媒体、並びにプログラム - Google Patents

情報処理装置および方法、記録媒体、並びにプログラム Download PDF

Info

Publication number
JP2005284348A
JP2005284348A JP2004093001A JP2004093001A JP2005284348A JP 2005284348 A JP2005284348 A JP 2005284348A JP 2004093001 A JP2004093001 A JP 2004093001A JP 2004093001 A JP2004093001 A JP 2004093001A JP 2005284348 A JP2005284348 A JP 2005284348A
Authority
JP
Japan
Prior art keywords
learning
weak
value
reference value
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004093001A
Other languages
English (en)
Other versions
JP4482796B2 (ja
Inventor
Kotaro Sabe
浩太郎 佐部
Kenichi Hidai
健一 日台
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP2004093001A priority Critical patent/JP4482796B2/ja
Application filed by Sony Corp filed Critical Sony Corp
Priority to DE602005019338T priority patent/DE602005019338D1/de
Priority to DE602005012011T priority patent/DE602005012011D1/de
Priority to EP08011509A priority patent/EP1967985B1/en
Priority to EP08011510A priority patent/EP1967986B1/en
Priority to EP05251786A priority patent/EP1583024B1/en
Priority to US11/089,229 priority patent/US7657085B2/en
Publication of JP2005284348A publication Critical patent/JP2005284348A/ja
Application granted granted Critical
Publication of JP4482796B2 publication Critical patent/JP4482796B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting

Abstract

【課題】顔画像を迅速に判定できるようにする。
【解決手段】 yi=1で表されるポジティブサンプルと、yi=−1で表されるネガティブサンプルとをK個の弱判別器で学習する。各弱判別器の学習時において、弱判別器の判別結果と、重みの積和により、重み付き多数決の値F(x)が演算される。弱判別器の判別結果f(x)と、重みαtの積和により、重み付き多数決の値F(x)が演算され、学習閾値RLが演算される。ネガティブサンプルの数がポジティブサンプルの数の1/2以上である場合、学習閾値RLより小さい重み付き多数決の値F(x)の値が得られたとき、そのネガティブサンプルが削除される。本発明は、画像処理装置に適用できる。
【選択図】図18

Description

本発明は、情報処理装置および方法、記録媒体、並びにプログラムに関し、特に、高速に顔画像などの対象物を検出することができるようにした情報処理装置および方法、記録媒体、並びにプログラムに関する。
従来、複雑な画像シーンの中から動きを使わないで画像信号の濃淡パターンのみを使った顔検出手法は数多く提案されている。例えば下記特許文献1に記載の顔検出器は、ハール(Haar)基底のようなフィルタを弱判別器(弱学習機)(weak learner)に用いたアダブースト(AdaBoost)を使用したもので、後述する積分画像(インテグラルイメージ:Integral image)とよばれる画像と矩形特徴(rectangle feature)とを使用することで、高速に弱仮説(weak hypothesis)を計算することができる。
図1は、特許文献1に記載の矩形特徴を示す模式図である。図1に示されるように、特許文献1に記載の技術においては、入力画像142A乃至142Dにおいて、同一サイズの隣り合う矩形領域の輝度値の総和が求められ、一方の矩形領域の輝度値の総和と他方の矩形領域の輝度値の総和との差を出力するようなフィルタ(弱仮説)が複数用意される。例えば、入力画像142Aにおいては、矩形領域(rectangular box)154A−1の輝度値の総和から、影を付けて示す矩形領域154A−2の輝度値の総和を減算するフィルタ154Aが構成されている。このような2つの矩形領域からなるフィルタを2矩形特徴(2 rectangle feature)という。
また、入力画像142Cにおいては、1つの矩形領域が3分割された3つの矩形領域154C−1乃至154C−3からなり、矩形領域154C−1、154C−3の輝度値の総和から影を付けて示す中央の矩形領域154C−2の輝度値の総和を減算するフィルタ154Cが構成されている。このような3つの矩形領域からなるフィルタを3矩形特徴(3 rectangle feature)という。更に、入力画像142Dにおいては、1つの矩形領域が上下左右に分割された4つの矩形領域154D−1乃至154D−4からなり、矩形領域154D−1、154D−3の輝度値の総和から、影を付けて示す矩形領域154D−2、154D−4の輝度値の総和を減算するフィルタ154Dが構成されている。このような4つの矩形領域からなるフィルタを4矩形特徴(4 rectangle feature)という。
例えば、図2に示される顔画像を、図1に示される例えば矩形特徴154Bを使用して顔であることを判定する場合について説明する。2矩形特徴154Bは、1つの矩形領域が上下(垂直方向)に2分割された2つの矩形領域154B−1、154B−2からなり、矩形領域154B−2の輝度値の総和から、影を付けて示す矩形領域154B−1の輝度値の総和が減算される。人間の顔(対象物)138は、頬の領域より眼の領域の方が輝度値が低いことを利用すると、矩形特徴154Bの出力値から入力画像が顔か否か(正解または不正解)をある程度の確率で推定することができる。これがアダブーストにおける弱判別器の1つとして利用され。
検出時において、入力画像に含まれる様々な大きさの顔領域を検出するため、様々なサイズの領域(以下、探索ウィンドウという。)を切り出して顔か否かを判定する必要がある。しかしながら例えば320×240画素からなる入力画像には、およそ50000種類のサイズの顔領域(探索ウィンドウ)が含まれており、これら全てのウィンドウサイズについての演算を行うと極めて時間がかかる。そこで、特許文献1においては、積分画像とよばれる画像が使用される。積分画像とは、図3に示されるように、入力画像144において、(x、y)番目の画素162が、下記式(1)に示されるように、その画素162より左上の画素の輝度値の総和になっている画像である。即ち、画素162の値は、画素162の左上の矩形領域160に含まれる画素の輝度値の総和となっている。以下、各画素値が下記式(1)に示す値の画像を積分画像という。
Figure 2005284348
この積分画像を使用すると、任意の大きさの矩形領域の演算を高速に行うことができる。すなわち、図4に示されるように、左上の矩形領域170、矩形領域170の右横、下、右下のそれぞれの領域を矩形領域172、174、176とし、矩形領域176の4頂点を左上から時計周りにp1,p2,p3,p4とし、その積分画像をP1,P2,P3,P4とする。P1は矩形領域170の輝度値の総和A(P1=A)、P2はA+矩形領域172の輝度値の総和B(P2=A+B)、P3はA+矩形領域174の輝度値の総和C(P3=A+C)、P4はA+B+C+矩形領域176の輝度値の総和D(P4=A+B+C+D)となっている。このとき、矩形領域176の輝度値の総和Dは、P4−(P2+P3)−P1として算出することができ、矩形領域の四隅の画素値を加減算することで矩形領域の輝度値の総和を高速に算出することができる。通常、入力画像をスケール変換し、スケール変換された各画像から、学習に使用する学習サンプルと同一サイズのウィンドウ(探索ウィンドウ)を切り出すことで、異なるサイズの探索ウィンドウを探索することが可能になる。しかしながら上述したように、全てのサイズの探索ウィンドウを設定可能なように入力画像をスケール変換すると極めて演算量が膨大になってしまう。そこで、特許文献1に記載の技術においては、矩形領域の輝度値の総和の演算を高速に行うことができる積分画像を用い、矩形特徴を使用することにより演算量が低減される。
米国特許出願公開第2002/0102024号明細書
しかしながら、上記特許文献1に記載の顔検出器は、学習時に使用した学習サンプルのサイズの整数倍の大きさの対象物体しか検出することができない。これは、上記特許文献1が入力画像をスケール変換することで探索ウィンドウの大きさを変更するのではなく、入力画像を積分画像に変換し、これを利用して異なる探索ウィンドウの顔領域を検出するためである。すなわち、積分画像はピクセル単位に離散化されているため、例えば20×20のウィンドウサイズを使用する場合、30×30のサイズを探索ウィンドウに設定することができず、従ってウィンドウサイズこのウィンドウサイズの顔検出を行うことができない。
また、上記矩形特徴として、演算の高速化のため隣り合った矩形領域間の輝度値の差分のみを利用している。そのため、離れた矩形領域間の輝度変化をとらえることができず、物体検出の性能に制限がある。
例えば積分画像をスケール変換すれば任意のサイズのウィンドウの探索が可能になり、また離れた位置の矩形領域間の輝度値の差分を利用することも可能ではあるが、積分画像をスケール変換すると演算量が増大し、積分画像を使用して処理を高速化する効果を相殺することになり、また離れた矩形領域間の輝度値の差分をも含めようとするとフィルタの種類が膨大になり、同じく処理量が増大してしまう。
本発明は、このような状況に鑑みて提案されたものであり、集団学習により対象とする物体を検出する際に、学習時および検出時の演算処理をより高速化できるようにするものである。
請求項1の情報処理装置は、データ重みを利用して弱判別器を選択する選択手段と、選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算手段と、演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除手段と、削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算手段と、前記重み演算手段により演算された前記データ重みを、前記選択手段による次の前記弱判別器の選択に反映する反映手段とを備えることを特徴とする。
前記基準値演算手段は、弱判別器の正の判別結果を信頼度により重み付けして累積するようにすることができる。
前記基準値演算手段は、累積和の演算を並列的に行うようにすることができる。
前記基準値演算手段は、学習した弱判別器を利用して識別処理を行う場合に使用される識別基準値を演算するとともに、識別基準値より小さい学習基準値を演算し、削除手段は、学習基準値を基準値として学習サンプルを削除するようにすることができる。
前記弱判別器は、学習サンプルの画像データの2画素の値の差と閾値との差に基づいて判別結果を演算するようにすることができる。
請求項6の情報処理方法は、データ重みを利用して弱判別器を選択する選択ステップと、選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算ステップと、演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除ステップと、削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算ステップと、前記重み演算ステップの処理により演算された前記データ重みを、前記選択ステップの処理による次の前記弱判別器の選択に反映する反映ステップとを含むことを特徴とする。
請求項7の記録媒体のプログラムは、データ重みを利用して弱判別器を選択する選択ステップと、選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算ステップと、演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除ステップと、削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算ステップと、前記重み演算ステップの処理により演算された前記データ重みを、前記選択ステップの処理による次の前記弱判別器の選択に反映する反映ステップとを含むことを特徴とする。
請求項8のプログラムは、データ重みを利用して弱判別器を選択する選択ステップと、選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算ステップと、演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除ステップと、削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算ステップと、前記重み演算ステップの処理により演算された前記データ重みを、前記選択ステップの処理による次の前記弱判別器の選択に反映する反映ステップとをコンピュータに実行させることを特徴とする。
本発明においては、データ重みを利用して弱判別器が選択され、選択された弱判別器による学習サンプルの判別結果を信頼度により重み付けした判別結果の累積和に基づいて基準値が演算され、その基準値に基づいて学習サンプルの一部が削除される。そして、削除されなかった学習サンプルに基づいて演算されたデータ重みが、次の弱判別器の選択に反映される。
本発明によれば、リアルタイムで顔検出することができる。特に、本発明によれば、学習または検出処理を、高速化することができる。
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加される発明の存在を否定するものではない。
請求項1の情報処理装置は、データ重み(例えば、式(9)、式(13)、式(14)のデータ重みDt)を利用して弱判別器(例えば、図9の弱判別器211乃至21K)を選択する選択手段(例えば、図16のステップS2の処理を実行する図15の選択部102)と、選択された前記弱判別器による学習サンプルの判別結果を、信頼度(例えば、式(11)のαt)により重み付けした値の累積和(例えば、式(7)のF(x))に基づいて基準値(例えば、図16のステップS5,S6における識別閾値RM,学習閾値RL)を演算する基準値演算手段(例えば、図15の閾値演算部105)と、演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除手段(例えば、図16のステップS8の処理を実行する図15の削除部107)と、削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算手段(例えば、図16のステップS9の処理を実行する図15の更新部108)と、前記重み演算手段により演算された前記データ重みを、前記選択手段による次の前記弱判別器の選択に反映する反映手段(例えば、図16のステップS10の処理を実行する図15の反映部109)とを備えることを特徴とする。
前記基準値演算手段は、弱判別器の正の判別結果を信頼度により重み付けして累積する(例えば、図24のステップS104の処理)。
前記基準値演算手段は、累積和の演算を並列的に行う(例えば、図28のステップS203乃至S218の処理)。
前記基準値演算手段は、学習した弱判別器を利用して識別処理を行う場合に使用される識別基準値(例えば、図16のステップS5における識別閾値RM)を演算するとともに、識別基準値より小さい学習基準値(例えば、図16のステップS6における学習閾値RL)を演算し、削除手段は、学習基準値を基準値として学習サンプルを削除する(例えば、図16のステップS8の処理)。
前記弱判別器は、学習サンプルの画像データの2画素の値の差(例えば、式(2)のピクセル間差分特徴d)と閾値(例えば、図20のステップS34における閾値Th)との差に基づいて判別結果を演算する(例えば、図20のステップS34の処理)。
請求項6の情報処理方法、請求項7の記録媒体のプログラム、並びに請求項8のプログラムは、データ重み(例えば、式(9)、式(13)、式(14)のデータ重みDt)を利用して弱判別器(例えば、図9の弱判別器211乃至21K)を選択する選択ステップ(例えば、図16のステップS2)と、選択された前記弱判別器による学習サンプルの判別結果を、信頼度(例えば、式(11)のαt)により重み付けした値の累積和(例えば、式(7)のF(x))に基づいて基準値(例えば、図16のステップS5,S6における識別閾値RM、学習閾値RL)を演算する基準値演算ステップ(例えば、(例えば、図16のステップS5,S6)と、演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除ステップ(例えば、図16のステップS8)と、削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算ステップ(例えば、図16のステップS9)と、前記重み演算ステップの処理により演算された前記データ重みを、前記選択ステップの処理による次の前記弱判別器の選択に反映する反映ステップ(例えば、図16のステップS10)とを含むことを特徴とする。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、アンサンブル学習(集団学習)を利用して画像から対象物を検出する情報処理装置を対象物検出装置に適用したものである。
集団学習によって得られる学習機械は、多数の弱仮説と、これらを組み合わせる結合機(combiner)とからなる。入力によらず、固定した重みで弱仮説の出力を統合する結合機の一例としてブースティングがある。ブースティングにおいては、前に生成した弱仮説の学習結果を使用して、間違いが発生した学習サンプル(例題)の重みを増すように、学習サンプルが従う分布が加工され、この分布に基づき新たな弱仮説の学習が行われる。これにより不正解が多く対象物として判別が難しい学習サンプルの重みが相対的に上昇し、結果的に重みが大きい、即ち判別が難しい学習サンプルを正解させるような弱判別器が逐次選択される。この場合、学習における弱仮説の生成は逐次的に行われ、後から生成された弱仮説はその前に生成された弱仮説に依存することになる。
対象物を検出する際には、上述のようにして学習により逐次生成された多数の弱仮説の判別結果が使用される。例えばAdaBoost(アダブースト)の場合は、この学習により生成された弱仮説(以下、弱判別器という。)全ての判別結果(対象物であれば1、非対象物であれば−1)が結合機に供給され、結合機は、全判別結果に対して、対応する弱判別器毎に学習時に算出された信頼度を重み付け加算し、その重み付き多数決の結果を出力し、結合機の出力値を評価することで、入力された画像が対象物か否かを選択する。
弱判別器は、なんらかの特徴量を使用して、対象物かまたは非対象物であるかの判定を行うものである。なお、後述するように、弱判別器の出力は対象物か否かを確定的に出力してもよく、対象物らしさを確率密度などで確率的に出力してもよい。本実施の形態においては、2つのピクセル間の輝度値の差という極めて簡単な特徴量(以下、ピクセル間差分特徴という。)を使用して対象物か否かを判別する弱判別器を使用した集団学習装置を利用することで、対象物の検出処理を高速化する。
(1)対象物検出装置
図5は、本実施の形態における対象物検出装置の処理機能を示す機能ブロック図である。図5に示されるように、対象物検出装置1は、入力画像として濃淡画像(輝度画像)を出力する画像出力部2、入力画像の拡大または縮小、すなわちスケーリングを行うスケーリング部3、スケーリングされた入力画像を、所定サイズのウィンドウで、例えば左上から右下に向けて順次スキャンして、ウィンドウ内の画像をウインドウ画像として出力する走査部4、並びに走査部4にて順次スキャンされた各ウィンドウ画像が対象物か非対象物かを判別する判別器5を有し、与えられる画像(入力画像)の中から対象物体の領域を示す対象物の位置および大きさを出力する。
すなわち、スケーリング部3は、入力画像を指定された全てのスケールに拡大または縮小したスケーリング画像を出力する。走査部4は、各スケーリング画像について、検出したい対象物の大きさとなるウィンドウを順次スキャンしてウィンドウ画像を切り出し、判別器5は、各ウィンドウ画像が顔か否かを判別する。
判別器5は、集団学習により判別器5を構成する複数の弱判別器の集団学習を実行する集団学習機6の学習結果を参照して、現在のウィンドウ画像が、例えば顔画像などの対象物であるか、または非対象物(顔画像以外の画像)であるかを判別する。
また、対象物検出装置1は、入力画像から複数の対象物が検出された場合は、複数の領域情報を出力する。更に、複数の領域情報のうち領域が重なりあっている領域が存在する場合は、後述する方法で最も対象物とされる評価が高い領域を選択する処理も行うことができる。
画像出力部2から出力された画像(濃淡画像)は、先ずスケーリング部3に入る。スケーリング部3では、バイリニア補完を用いた画像の縮小が行われる。本実施の形態においては、スケーリング部3で最初に複数の縮小画像を生成するのではなく、必要とされる画像を走査部4に対して出力し、その画像の処理を終えた後で、次の更に小さな縮小画像を生成するという処理が繰り返される。
すなわち、図6に示されるように、スケーリング部3は、先ず、入力画像10Aをそのまま走査部4へ出力する。そして、スケーリング部3は、入力画像10Aについて走査部4および判別器5の処理が終了するのを待った後、入力画像10Aのサイズを縮小した入力画像10Bを生成する。さらに、スケーリング部3は、この入力画像10Bにおける走査部4および判別器5の処理が終了するのを待って、入力画像10Bのサイズを更に縮小した入力画像10Cを走査部4に出力するというように、より小さく縮小した縮小画像10D、10Eなどを順次生成していき、縮小画像の画像サイズが、走査部4にて走査するウィンドウサイズより小さくなった時点で処理を終了する。この処理の終了をまって、画像出力部2は、次の入力画像をスケーリング部3に出力する。
走査部4では、図7に示されるように、与えられた例えば画像10Aに対して、後段の判別器5が受け付けるウィンドウサイズSと同じ大きさのウィンドウ11を画像(画面)の全体に対して順次当てはめていき、各位置におけるウィンドウ11内の画像(以下、切り取り画像またはウィンドウ画像という)を判別器5に出力する。
ウィンドウ11の走査は、図8に示されるように、1画素単位で行われる。すなわち、所定の位置におけるウィンドウ11内の切り取り画像が走査部4から出力された後、次の走査においては、ウィンドウ11が1画素分右方向に移動され、その位置におけるウィンドウ11内の切り取り画像が判別器5に供給される。
なお、ウィンドウサイズSは一定であるが、上述したように、スケーリング部3により入力画像が順次縮小され、入力画像の画像サイズが様々なスケールに変換されるため、任意の大きさの対象物体を検出することが可能となる。
すなわち、画像上の顔の大きさが、どのような大きさであったとしても、画像サイズが順次縮小されることで、いつかはウィンドウサイズSとほぼ同じ大きさの画像となる。その結果、そのウィンドウ11内の画像が、人の顔の画像であるか否かを検出することができる。
判別器5は、前段から与えられた切り取り画像が、例えば顔などの対象物体であるか否かを判定する。判別器5は、図9に示されるように、アンサンブル学習(Ensemble learning)により得られた複数の弱判別器21i(i=1,2,3,・・・,K)と、これらの出力(判別結果)に、それぞれ対応する重みαi(i=1,2,3,・・・,K)を乗算し、重み付き多数決F(x)を求める加算器22とを有する。
弱判別器211乃至21Kは、それぞれウィンドウ11内の画素のうちの任意の位置の2つの画素に基づき、そのウィンドウ11内の画像が、人の顔の画像であるか否かを判別する。Kは、ウィンドウ11内の画像から抽出可能な2個の画素の組合せの数に対応する。
判別器5は、入力されるウィンドウ画像に対し、各弱判別器21iが対象物である否かの推定値f(x)を逐次出力し、加算器22が重み付き多数決F(x)を算出して出力する。この重み付き多数決F(x)の値に応じ、図示せぬ判定手段が、ウィンドウ画像が対象物か否かを最終的に判定する。
集団学習機6は、後述する方法にて、弱判別器21iと、それらの出力(推定値)に乗算する重みを集団学習により予め学習する。集団学習としては、複数の判別器の結果を多数決にて求めることができるものであれば、具体的にはどんな手法でも適用可能である。例えば、データの重み付けを行って重み付き多数決行うアダブースト(AdaBoost)などのブースティングを用いた集団学習を適用することができる。
判別器5を構成する各弱判別器21iは、判別のための特徴量として、2つの画素間の輝度値の差分(ピクセル間差分特徴)を使用する。そして、各弱判別器21iは、対象物か非対象物であるかのラベリングが予め施された複数の濃淡画像からなる学習サンプルにより学習された特徴量と、ウィンドウ画像の特徴量とを比較し、ウィンドウ画像が対象物であるか否かを推定するための推定値を確定的または確率的に出力する。
加算器22は、弱判別器21iの推定値に、各弱判別器21iに対する信頼度となる重みを乗算し、これを加算した値(重み付き多数決の値)を出力する。AdaBoostでは、複数の弱判別器21iは、順次推定値を算出し、これに伴い重み付き多数決の値が逐次更新されていく。これら複数の弱判別器は、集団学習機6により後述するアルゴリズムに従い、上述の学習サンプルを使用して集団学習により逐次的に生成されたものであり、例えばその生成順に上記推定値を算出する。また、重み付き多数決の重み(信頼度)は、弱判別器を生成する後述する学習工程にて学習される。
弱判別器21iは、例えばAdaBoostのように、弱判別器が2値出力を行う場合は、ピクセル間差分特徴を閾値で二分することで、対象物体であるかどうかの判別を行う。閾値により判別を行う場合、複数の閾値を用いてもよい。また、弱判別器は、例えばReal-AdaBoostのように、ピクセル間差分特徴から対象物体かどうかを表す度合いの連続値を確率的に出力してもよい。これら弱判別器21iが必要とする判別のための特徴量(閾値)なども学習時に上記アルゴリズムに従って学習される。
更に、本実施の形態では、重み付き多数決の際、全ての弱判別器の計算結果を待たず、計算途中であっても、その値によっては対象物体でないと判断して計算を打ち切るため、打ち切りの閾値(基準値)が学習工程で学習される。この打ち切り処理によって、検出処理における演算量を大幅に削減することが可能となる。これにより、全ての弱判別器の計算結果を待たず、計算途中で次のウィンドウ画像の判別処理に移ることができ、迅速な処理が可能となる。
このように、判別器5は、ウィンドウ画像が対象物か否かを判定するための評価値として重み付き多数決を算出し、その評価値に基づきウィンドウ画像が対象物か否かを判定する判定手段として機能する。更に判別器5は、予め学習により生成された複数の弱判別器が推定値を出力する毎に、その推定値に対して学習により得られた各弱判別器に対する重みを乗算して加算した重み付き多数決の値を更新し、この重み付き多数決の値(評価値)を更新する毎に、上記打ち切り閾値を利用して推定値の算出を打ち切るか否かをも制御する。
この判別器5は、集団学習機6において、学習サンプルを使用し、所定のアルゴリズムに従って集団学習することにより生成される。ここでは先ず、集団学習機6における集団学習方法について説明し、次に、その集団学習により得られた判別器5を使用し、入力画像から対象物を判別する方法について説明する。
(2)集団学習機
ブースティングアルゴリズムを用いて集団学習する集団学習機6は、上述したように複数の弱判別器を複数個組み合わせ、結果的に強い判別結果が得られるよう学習する。弱判別器は、1つ1つは、極めて簡単な構成とされ、1つでは顔か顔でないかの判別能力も低いものであるが、これを例えば数百乃至数千個組み合わせることで、高い判別能力を持たせることができる。この集団学習機6は、例えば数千の学習サンプルといわれる予め正解付け(ラベリング)された対象物と非対象物、例えば顔画像と非顔画像とからならなるサンプル画像を使用し、多数の学習モデル(仮説の組み合わせ)から所定の学習アルゴリズムに従って1つの仮説を選択(学習)することで弱判別器を生成し、この弱判別器の組み合わせ方を決定していく。弱判別器はそれ自体では判別性能が低いものであるが、これらの選別、組み合わせ方により、結果的に判別能力が高い判別器を得ることができるため、集団学習機6では、弱判別器の組み合わせ方、即ち弱判別器の選別およびそれらの出力値を重み付き多数決する際の重みなどの学習をする。
次に、適切な弱判別器を学習アルゴリズムに従って多数組み合わせた判別器を得るための集団学習機6の学習方法について説明するが、集団学習機6の学習方法の説明に先立ち、集団学習にて学習する学習データのうちで、本実施の形態において特徴となる学習データ、具体的には、弱判別器を構成するためのピクセル間差分特徴、並びに判別工程(検出工程)において、検出を途中で打ち切るための打ち切り閾値(基準値)について説明しておく。
(3)弱判別器の構成
本実施の形態における判別器5は、複数の弱判別器で構成される。この弱判別器は、入力される画像に含まれる全画素の中から選択された2つの画素の輝度値の差分(ピクセル間差分特徴)により顔か否かを判別する極めて簡単な構成とされる。これにより、判別工程において、弱判別器の判別結果の算出が高速化される。弱判別器に入力される画像は、学習工程では、学習サンプルであり、判別工程では、スケーリング画像から切り出されたウィンドウ画像である。
図10は、ピクセル間差分特徴を説明するための画像を示す模式図である。画像30において、本実施の形態においては、任意の2つの画素の輝度値の差、例えば画素31の輝度値I1と、画素32の輝度値I2との差、即ち下記式(2)で得られる値dがピクセル間差分特徴と定義される。
Figure 2005284348
どのピクセル間差分特徴dを顔検出に使用するかが弱判別器の能力となる。従って、サンプル画像またはウィンドウ画像に含まれる任意の2画素の組み合わせ(フィルタまたは弱仮説ともいう。)から、弱判別器に使用するピクセル位置の組を選択する必要がある。
例えばAdaBoostでは、弱判別器に、+1(対象物体である)か、または−1(非対象物体)であるかの確定的な出力を要求する。そこで、AdaBoostにおいては、ある任意のピクセル位置において、そのピクセル間差分特徴dを、1または複数の閾値を利用して2分割(+1または−1)することをもって弱判別器とすることができる。
また、このような2値出力ではなく、学習サンプルの確率分布を示す連続値(実数値)を確率的に出力するような例えばReal-AdaBoostまたはGentle Boostなどのブースティングアルゴリズムの場合、弱判別器は、入力された画像が対象物である確からしさ(確率)を出力する。弱判別器の出力は、このように確定的であっても確率的であってもよい。先ず、これら2種類の弱判別器について説明する。
(3−1)2値出力の弱判別器
確定的な出力をする弱判別器は、ピクセル間差分特徴dの値に応じて、対象物か否かの2クラス判別を行う。対象画像領域中のある2つのピクセルの輝度値をI1、I2とし、ピクセル間差分特徴dにより対象物か否かを判別するための閾値をTh1とすると、下記式(3)を満たすか否かで、いずれのクラスに属するかを決定することができる。
Figure 2005284348
ここで、弱判別器を構成するには、2つのピクセル位置と、その閾値を決定する必要があるが、その決定方法については後述する。上記式(3)の閾値判定は最も単純な場合である。また、閾値判定には、次の下記式(4)または式(5)に示す2つの閾値を用いることもできる。
Figure 2005284348
Figure 2005284348
図11A乃至図11Cは、縦軸に頻度をとり、横軸にピクセル間差分特徴dをとって、それぞれ上記式(3)乃至式(5)に示す3つの判別方法を、データの頻度分布の特徴的なケースに合わせて示す模式図である。図11A乃至図11Cにおいては、yiは弱判別器の出力を示し、破線が、yi=−1(非対象物)であると判定された学習サンプルの分布を示し、実線が、yi=1(対象物)であると判定された学習サンプルの分布を示す。多数の顔画像と非顔画像からなる学習サンプルに対し、同一のピクセル間差分特徴dに対する頻度を取ると、図11A乃至図11Cに示されるヒストグラムが得られる。
なお、実線と破線は、それぞれ、yi=1、またはyi=−1と判定された頻度を独立に表している。従って、そのピクセル間差分特徴dの合計した分布は、図12に示されるようになる。
図11Aに示されるように、ヒストグラムが、例えば、非対象物を示す破線の分布と、対象物を示す実線の分布が、同様な正規曲線のように分布し、そのピーク位置が左右にずれているような場合は、その境界部に閾値Th1を設定し、上記式(3)にて対象物か否かを判別することができる。例えばAdaBoostにおいては、弱判別器の出力(判別結果)をf(x)としたとき、出力f(x)=1(対象物)またはf(x)=−1(非対象物)となる。図11Aは、ピクセル間差分特徴dが閾値Th1より大きい場合に対象物であると判定され、弱判別器の出力がf(x)=1となる例を示している。
また、2つのヒストグラムのピーク位置が同じような位置にあって、その分布の幅が異なるような場合、分布が狭い方のピクセル間差分特徴dの上限値近傍および下限値近傍を閾値として、上記式(4)または式(5)により、対象物か否かを判別することができる。図11Bは、分布の幅が狭い方が対象物と判定され、弱判別器の出力がf(x)=1となる例を、図11Cは、分布の幅が広い方から分布の幅が狭い方を除いたものが対象物と判定され、弱判別器の出力がf(x)=1となる例を、それぞれ示している。
弱判別器は、あるピクセル間差分特徴dとその閾値とを決定することにより構成されるが、その判定によって誤り率ができるだけ小さくなるような、即ち判別率が高いピクセル間差分特徴dを選択する必要がある。例えば、閾値は、2つの画素位置を決め、正解付けされた学習サンプルに対して、図11に示されるようなヒストグラムを求め、最も正解率が高くなる閾値、換言すれば、非正解率(誤り率)が最も小さくなるような閾値を検索することで決定される。また、2つの画素位置は、閾値と共に得られる誤り率が最も小さいものを選択するなどすればよい。但し、AdaBoostにおいては、判別の難易度を反映した重み(データ重み)が各学習サンプルに付けられており、適切なピクセル間差分特徴d(どの位置の2つのピクセルの輝度値を特徴値とするか)が後述する重み付き誤り率を最小にするように学習される。
(3−2)連続値出力の弱判別器
確率的な出力をする弱判別器としては、上述した如く、例えばReal-AdaBoostまたはGentle Boostなどのように弱判別器が連続値を出力するものがある。この場合、弱判別器は、ある決められた一定値(閾値)により判別問題を解き、2値出力(f(x)=1または−1)する上述の場合と異なり、入力された画像が対象物である度合いを、例えば確率密度関数として出力する。
このような、対象物体である度合い(確率)を示す確率的な出力は、ピクセル間差分特徴dを入力としたときPP(x)を学習サンプルの対象物の確率密度関数、Pn(x)を学習サンプルの非対象物の確率密度関数とすると、下記式(6)に示す関数f(x)とすることができる。
Figure 2005284348
図13Aは、縦軸に確率密度をとり、横軸にピクセル間差分特徴dをとって、データの頻度分布の特徴的なケースを示す図であり、図13Bは、縦軸に関数f(x)の値をとり、横軸にピクセル間差分特徴dをとって、図13Aに示すデータ分布における関数f(x)を示すグラフ図である。図13Aにおいて、破線が非対象物体であることを示す確率密度、実線が対象物体であることを示す確率密度を、それぞれ示す。上記式(6)から関数f(x)を求めると、図13Bに示すグラフが得られる。弱判別器は、学習工程または判別工程において、入力される学習サンプルまたはウィンドウ画像から得られた上記式(2)に示すピクセル間差分特徴dに対応する関数f(x)を出力する。この関数f(x)は、対象物らしさの度合いを示すものであって、例えば非対象物を−1、対象物を1としたとき、−1乃至1までの連続値を取るものとすることができる。例えばピクセル間差分特徴dとそれに対応するf(x)とからなるテーブルを記憶し、入力に応じてテーブルからf(x)を読出し出力する。従って、一定値である閾値Th1またはTh11,Th12,Th21,Th22より若干記憶量が大きくなるが判別性能が向上する。
これら複数の推定方法(判別方法)は、アンサンブル学習中に組み合わせて使用することで、判別性能が向上することが期待できる。また、いずれか単一の判別方法のみを利用すれば、実行速度性能を引き出すことができる。
本実施の形態において使用する弱判別器は、使用する特徴量(ピクセル間差分特徴d)が非常に単純であるために、上述したように極めて高速に対象物の判別を行うことができる点が特長である。このように対象物として顔検出する場合には、ピクセル間差分特徴dを上述の判別方法のうち最も単純な式(3)に示す閾値判定によっても極めてよい判別結果が得られるが、どのような判別方法により弱判別器が有効に機能するかは、対象とする問題によって異なり、その閾値設定方法などを適宜選択すればよい。また、問題によっては、2つの画素の輝度値の差ではなく、3個以上の画素の輝度値の差を特徴量としてもよい。
(4)打ち切り閾値
次に、打ち切り閾値について説明する。ブースティングを用いた集団学習機においては、通常は、上述したように判別器5を構成する全弱判別器の出力の重み付き多数決によりウィンドウ画像が対象物か否かを判別する。重み付き多数決は、弱判別器の判別結果(推定値)を逐次足し合わせていくことで算出される。例えば、弱判別器の個数をt(=1,・・・,K)、各弱判別器に対応する多数決の重み(信頼度)をαt、各弱判別器の出力をft(x)としたとき、AdaBoostにおける重み付き多数決の値F(x)は、下記式(7)により求めることができる。
Figure 2005284348
図14は、横軸に弱判別器の数をとり、縦軸に上記式(7)に示す重み付き多数決の値F(x)をとって、入力される画像が対象物か否かに応じた重み付き多数決の値F(x)の変化を示すグラフ図である。図14において、破線で示すデータV1乃至V4は、対象物としてラベリングされている画像(学習サンプル)を入力として、弱判別器により推定値f(x)を逐次算出し、その重み付き多数決の値F(x)を逐次求めたものである。このデータV1乃至V4に示されるように、対象物を入力画像とすると、ある程度の個数の弱判別器の判別によりその重み付き多数決の値F(x)はプラス(正)になる。
本実施の形態においては、通常のブースティングアルゴリズムとは異なる手法が導入される。すなわち、弱判別器の判別結果を逐次足し合わせていく過程において、全ての弱判別器の結果を得る前であっても、明らかに対象物ではないと判別できる学習サンプルまたはウィンドウ画像については、その学習または判別が中止される。判別を中止するか否かを決定する打ち切り閾値(基準値)は、学習工程にて学習される。
この打ち切り閾値により、全弱判別器の出力結果を用いなくとも、非対象物であることが確実に推定できる場合、弱判別器の推定値f(x)の演算を途中で中止することができ、これにより、全ての弱判別器を使用した重み付き多数決を行うのに比して、格段に演算量を低減し、処理の迅速化が可能となる。
この打ち切り閾値は、ラベリングされている学習サンプルのうち、検出対象物を示す学習サンプルの判別結果の重み付き多数決の値が取りえる最小値とすることができる。学習工程または判別工程において、学習サンプルまたはウィンドウ画像の弱判別器による判別結果が、逐次重み付きされて出力される、即ち、重み付き多数決の値が逐次更新されていくが、この更新されていく値と、上記打ち切り閾値とを更新の度、即ち1つの弱判別器が判別結果を出力する毎に比較し、更新された重み付き多数決の値が打ち切り閾値を下まわる場合には、当該学習サンプルまたはウィンドウ画像は対象物ではないとし、計算を打ち切ることができ、これにより無駄な演算を省いて、学習処理または判別処理を高速化することができる。
すなわち、M番目の弱判別器の出力fM(x)の打ち切り閾値RMは、学習サンプルxi(i=1乃至N)のうち、対象物である学習サンプル(ポジティブサンプル)xj(j=1乃至J)を使用したときの重み付き多数決の値F(x)の最小値とされ、下記式(8)のように定義される。
Figure 2005284348
この式(8)に示されるように、対象物である学習サンプルx1乃至xJの重み付き多数決の値F(x)の最小値が0を上回る場合には打ち切り閾値RMには0が設定される。なお、0を上回らないようにするのは、0を閾値にして判別を行うAdaBoostの場合であり、ここは集団学習の手法により異なる場合がありうる。AdaBoostの場合においては、打ち切り閾値RMは図14の実線で示されるように、入力画像として対象物を入力した場合の全データV1乃至V4の重み付き多数決の値F(x)のうち、取りうる最小値に設定され、全てのデータV1乃至V4の重み付き多数決の値F(x)の最小値が0を超えた場合は、打ち切り閾値RMが0に設定される。
本実施の形態においては、弱判別器が生成される毎の打ち切り閾値RM(R1乃至RK)を学習しておくことで、後述する判別工程において、例えばデータV5のように、複数の弱判別器により推定値が逐次出力され、重み付き多数決の値が逐次更新されていくが、この値が上記打ち切り閾値RMを下まわった時点で、後段の弱判別器による判別の処理が終了され。すなわち、この打ち切り閾値RMを学習しておくことにより、弱判別器の推定値を計算する毎に次の弱判別器の計算を行うか否かを決定でき、明らかに対象物ではないと判断される場合には、全ての弱判別器の判別結果を待たずに非対象物であることが判定でき、演算を途中で打ち切りことで検出処理を高速化することができる。
(5)学習方法
次に、集団学習機6の学習方法について説明する。与えられたデータが、例えば顔か否かを判別する問題など、一般的な2クラス判別のパターン認識問題の前提として、予め人手によりラベリング(正解付け)された学習サンプルとなる画像(訓練データ)が用意される。学習サンプルは、検出したい対象物体の領域を切り出した画像群(ポジティブサンプル)と、全く関係のない、例えば風景画などを切り出したランダムな画像群(ネガティブサンプル)とからなる。
これらの学習サンプルを基に学習アルゴリズムを適用し、判別時に用いる学習データを生成する。判別時に用いる学習データとは、本実施の形態においては、上述した学習データを含む以下の4つの学習データである。すなわち、
(A)2つのピクセル位置の組(K個)
(B)弱判別器の閾値(K個)
(C)重み付き多数決の重み(弱判別器の信頼度)(K個)
(D)打ち切り閾値(K個)
(5−1)判別器の生成
以下に、上述したような多数の学習サンプルから、上記(A)乃至(D)に示す4種類の学習データを学習するアルゴリズムを説明する。
この学習処理を実施するため、集団学習機6は、図15に示されるような機能的構成を有している。すなわち、集団学習機6は、初期化部101、選択部102、誤り率演算部103、信頼度演算部104、閾値演算部105、判定部106、削除部107、更新部108、および反映部109を有する。これらの各部は、図示はされていないが、相互に適宜データを授受することが可能とされる。
初期化部101は、学習サンプルのデータ重みを初期化する処理を実行する。選択部102は、弱判別器の選択処理を行う。誤り率演算部103は、重み付き誤り率etを演算する。信頼度演算部104は、信頼度αtを演算する。閾値演算部105は、識別閾値RMと学習閾値RLを演算する。判定部106は、サンプル数が充分であるか否かを判定する。削除部107は、サンプル数が充分である場合に、ネガティブサンプル、すなわち、非対象物としてラベリングされた学習サンプルを削除する。更新部108は、学習サンプルのデータ重みDtを更新する。反映部109は、学習処理の回数を管理する。
図16は、集団学習機6の学習方法を示すフローチャートである。なお、ここでは、学習アルゴリズムとして、弱判別の際の閾値として一定の値を使用するアルゴリズム(AdaBoost)に従った学習について説明するが、閾値として正解の確からしさ(確率)を示す連続値を使用する例えばReal-AdaBoostなど、弱判別器を複数結合するために集団学習するものであれば、学習アルゴリズムはAdaBoostに限らない。
上述したように、最初に、予め対象物または非対象物であることがラベリングされたN個の学習サンプル(xi,yi)が用意される。
この学習サンプルは、例えば、図17に示されるように、N個の画像とされ、1個の画像は、24×24画像で構成される。各学習サンプルは、人の顔の画像とされる。
なお、xi,yi,X,Y,Nは、それぞれ次の意味を有する。
学習サンプル(xi,yi):(x1,y1),・・・,(xN,yN
i∈X,yi∈{−1,1}
X:学習サンプルのデータ
Y:学習サンプルのラベル(正解)
N:学習サンプル数
即ち、xiは、学習サンプル画像の全輝度値からなる特徴ベクトルを示す。また、yi=−1は、学習サンプルが非対象物としてラベリングされている場合を意味し、yi=1は、学習サンプルが対象物としてラベリングされていることを意味する。
ステップS1において、初期化部101は、学習サンプルのデータ重みを初期化する。ブースティングにおいては、各学習サンプルの重み(データ重み)を異ならせ、判別が難しい学習サンプルに対するデータ重みが相対的に次第に大きくされる。判別結果は、弱判別器を評価する誤り率(エラー)の算出に使用されるが、判別結果にデータ重みを乗算することで、より難しい学習サンプルの判別を誤った弱判別器の評価が実際の判別率より下まわることになる。後述するステップS9でデータ重みは逐次更新されるが、先ず最初にこの学習サンプルのデータ重みの初期化が行われる。学習サンプルのデータ重みの初期化は、全学習サンプルの重みを一定にすることにより行われ、下記式(9)のように定義される。
Figure 2005284348
学習サンプルのデータ重みD1,iは、繰り返し回数t=1回目の学習サンプルxi(=x1乃至xN)のデータ重みを示す。Nは学習サンプル数である。
選択部102は、ステップS2で、弱判別器の選択処理(生成)を行う。この選択処理の詳細については図20を参照して後述するが、この処理により、ステップS2乃至S9までの1回の繰り返し処理毎に、1つの弱判別器が生成される。
ステップS3において、誤り率演算部103は、重み付き誤り率etを演算する。具体的には、ステップS2にて生成された弱判別器の重み付き誤り率etが下記式(10)により演算される。
Figure 2005284348
上記式(10)に示されるように、重み付き誤り率etは、学習サンプルのうち、弱判別器の判別結果が誤った(ft(xi)≠yi)学習サンプル(yi=1とラベリングされた学習サンプルであって、ft(xi)=−1と判定された学習サンプル、およびyi=−1とラベリングされた学習サンプルであって、ft(xi)=1と判定された学習サンプル)のデータ重みのみを加算したものとなる。上述したように、データ重みDt,iが大きい(判別が難しい)学習サンプルの判別を間違えると重み付き誤り率etが大きくなる。なお、重み付き誤り率etは0.5未満となるが、この理由は後述する。
ステップS4において、信頼度演算部104は、弱判別器の信頼度αtを演算する。具体的には、上述の式(10)に示す重み付き誤り率etに基づき、重み付き多数決の重みである信頼度αtが、下記式(11)により算出される。この、信頼度αtは、繰り返し回数t回目に生成された弱判別器の信頼度を示す。
Figure 2005284348
上記式(11)から明らかなように、重み付き誤り率etが小さいほど、その弱判別器の信頼度αtが大きくなる。
ステップS5において、閾値演算部105は、識別閾値RMを演算する。この識別閾値RMは、上述したように、判別工程にて判別を打ち切るための打ち切り閾値(基準値)である。この識別閾値RMは、上述の式(8)に従って、対象物である学習サンプル(ポジディブなサンプル)x1乃至xJの重み付き多数決の値または0のうち、最も小さい値が選択される。なお、上述したように、最小値または0を打ち切り閾値に設定するのは、0を閾値にして判別を行うAdaBoostの場合である。いずれにせよ、打ち切り閾値RMは、少なくとも全てのポジティブなサンプルが通過できる最大の値となるよう設定される。
次に、ステップS6において、閾値演算部105は、学習閾値RLを演算する。この学習閾値RLは、次の式(12)に基づいて演算される。
Figure 2005284348
なお、上記式において、mは正の値であり、マージンを表す。すなわち、学習閾値RLは、識別閾値RMよりマージンmだけ小さい値に設定される。
次に、ステップS7において、判定部106は学習サンプル数が充分か否かを判定する。具体的には、ネガティブサンプルの数がポジティブサンプルの1/2以上である場合には、ネガティブサンプルの数は充分であると判定される。ネガティブサンプル数がポジティブサンプル数の1/2以上である場合には、ステップS8において、削除部107は、ネガティブサンプルを削除する。具体的には、式(7)で表される重み付け多数決の値F(x)が、ステップS6で演算された学習閾値RLより小さいネガティブサンプルが削除される。ステップS7において、ネガティブサンプルの数がポジティブサンプルの数の1/2未満であると判定された場合、ステップS8のネガティブサンプルを削除する処理はスキップされる。
このことを、図18を参照してさらに説明すると次のようになる。すなわち、図18は、ある程度学習が進んだ場合における(t回目の学習が行われた場合の)学習サンプル数(縦軸)に対する重み付き多数決の値F(x)の分布を表している。実線が、ポジティブサンプル(yi=1にラベリングされた学習サンプル)の分布を表し、破線がネガティブサンプル(yi=−1にラベリングされた学習サンプル)の分布を表している。後述する図23の判別工程における処理(対象物検出処理)においては、重み付き多数決の値F(x)の値が、打ち切り閾値RMに重なった場合、その弱判別器による判別処理は以後中止される(後述する図23のステップS65)。
学習時においても、この識別閾値RMを基準にして、重み付き多数決F(x)の値が、識別閾値RMより小さくなった場合には、ネガティブサンプルの一部を削除することが可能である。
すなわち、判別工程においては、図18に示されるように、ネガティブサンプルのうち、重み付き多数決の値F(x)が識別閾値RMより小さい領域R1のサンプルは、実質的に判断対象から削除される(リジェクトされる)。
このように、識別時に判断対象から削除(リジェクト)されるサンプルを、学習時においても、削除(リジェクト)することで、重み付き誤り率etを無くすように学習することが可能である。しかしながら、サンプル数を減らしてしまうと統計学習の性質上、弱判別器の汎化能力(1データに対する識別能力)が低下してしまうことが知られている。また、ブースティング学習は、学習サンプルの重み付き誤り率etが0になっても学習を続けることで、さらに汎化性能を向上させることが期待できることが知られている。この場合、全てのネガティブサンプルは、識別閾値RMより小さくなっているので、ネガティブサンプルがなくなってしまうか、あるいはネガティブサンプルがなくなってしまわないにしても、ポジティブサンプルとネガティブサンプルの数に隔たりがあると、弱判別器の出力が隔たりやすくなることがある。
そこで、本実施の形態においては、判別工程における識別閾値RMから一定のマージンmを減算した学習閾値RLを設定することで、極端な出力をする一部の学習サンプルを少しずつ減少させていき、汎化性を保持しつつ、学習を早く収束させることが可能となる。
従って、ステップS8の処理では、重み付き多数決F(x)が演算され、ネガティブサンプルのうち、図18における学習閾値RLより、重み付き多数決F(x)の値が小さい領域R2のネガティブサンプルが削除される。
ステップS9において、更新部108は、学習サンプルのデータ重みDt,iを更新する。すなわち、上記式(11)にて得られた信頼度αtを使用して、下記式(13)により学習サンプルのデータ重みDt,iが更新される。データ重みDt,iは、通常全部足し合わせると1になるよう正規化する必要がある。そこでデータ重みDt,iは、式(14)に示されるように正規化される。
Figure 2005284348
そして、ステップS10において、反映部109は、所定回数Kの学習が終了したか(ブースティングK回が行われたか)否かを判定し、まだK回行われていない場合は、処理をステップS2に戻し、それ以降の処理を繰り返す。
Kは、1個の学習サンプルの画素データから、2個の画素データを抽出することが可能な組合せの数を表す。例えば、1個の学習サンプルが24×24画素で構成されている場合、Kは242×(242−1)=576×575=331200となる。
1組の画素の組合せに対して1個の弱判別器が構成されるため、ステップS2乃至ステップS9の処理を1回行うことで、1個の弱判別器が生成される。従って、ステップS2乃至ステップS9の処理をK回繰り返すことで、K個の弱判別器が生成される(学習される)ことになる。
K回の学習が終了した場合、学習処理は終了される。
(5−2)弱判別器の生成
次に、上述したステップS2における弱判別器の選択処理(生成方法)について説明する。弱判別器の生成は、弱判別器が2値出力の場合と、上記式(6)に示す関数f(x)として連続値を出力する場合とで異なる。また、2値出力の場合においても、上記式(3)に示されるように1つの閾値Th1で判別する場合と、式(4)または式(5)に示されるように、2つの閾値Th11,Th12,Th21,Th22で判別する場合とで処理が若干異なる。ここでは、1つの閾値Th1で2値出力する弱判別器の学習方法(生成方法)を説明する。
このため、選択部102は、図19に示されるように、決定部121、頻度分布算出部122、閾値設定部123、弱仮説演算部124、重み付き誤り率演算部125、判定部126、および選定部127により構成される。
決定部121は、入力された学習サンプルから、2個の画素をランダムに決定する。頻度分布算出部122は、決定部121により決定された画素に関するピクセル間差分特徴dを収集し、その頻度分布を算出する。閾値設定部123は、弱判別器の閾値を設定する。弱仮説演算部124は、弱判別器による弱仮説の演算を行い、その判別結果f(x)を出力する。
重み付き誤り率演算部125は、式(10)に示される重み付き誤り率etを演算する。判定部126は、弱判別器の閾値Thと最大のピクセル間差分特徴dとの大小関係を判定する。選定部127は、最小の重み付き誤り率etに対応する閾値Thに対応する弱判別器を選定する。
図20は、1つの閾値Th1で2値出力するステップS2の弱判別器の学習方法(生成方法)のフローチャートである。
ステップS31において、決定部121は、1つの学習サンプル(24×24画素)中の2つの画素の位置S1,S2をランダムに決定する。24×24画素の学習サンプルを使用する場合、2つの画素の選択方法は、576×575通りあるが、そのうちの1つが選択される。ここで、2つの画素の位置をS1,S2,その輝度値をそれぞれI1,I2とする。
ステップS32において、頻度分布算出部122は、すべての学習サンプルに対してピクセル間差分特徴を求め、その頻度分布を算出する。すなわち、全ての(N個の)学習サンプルに対して、ステップS31にて選択した2つの位置S1,S2の画素の輝度値I1,I2の差(I1−I2)であるピクセル間差分特徴dが求められ、図11Aに示されているようなヒストグラム(頻度分布)が算出される。
ステップS33において、閾値設定部123は、最小のピクセル間差分特徴dより小さい閾値Thを設定する。例えば、図21に示されるように、ピクセル間差分特徴dの値が、d1乃至d9に分布する場合、最小のピクセル間差分特徴dの値はd1となる。従って、このピクセル間差分特徴d1より小さい閾値Th31がここで閾値Thとして設定される。
次に、ステップS34において、弱仮説演算部124は、弱仮説として次式を演算する。なお、sign(A)は、値Aが正のとき+1、負のとき−1を出力する関数である。
f(x)=sign(d−Th) ・・・(15)
今の場合、Th=Th31であるため、ピクセル間差分特徴dの値がd1乃至d9のいずれであっても、d−Thの値は正となる。従って、式(15)で表される弱仮説の判別結果f(x)は、+1となる。
ステップS35において、重み付き誤り率演算部125は、重み付き誤り率et1,et2を演算する。重み付き誤り率et1とet2とは、次の関係にある。
t2=1−et1 ・・・・・(16)
重み付き誤り率et1は、式(10)により求められる値である。重み付き誤り率et1は、位置S1,S2の画素値をそれぞれI1,I2とした場合の重み付き誤り率である。これに対して、重み付き誤り率et2は、位置S1の画素値をI2とし、位置S2の画素値をI1とした場合の重み付き誤り率である。すなわち、第1の位置を位置S1とし、第2の位置を位置S2とする組合せは、第1の位置を位置S2とし、第2の位置を位置S1とする組合せとは異なる組合せとなる。しかしながら、両者の重み付き誤り率etの値は、上記した式(16)の関係にある。そこで、ステップS35の処理において、2つの組合せの重み付き誤り率etを同時にまとめて演算するのである。これにより、仮にそのようにしなければ、ステップS31乃至ステップS41の処理を、ステップS41において学習サンプルの画素の中から2個の画素を抽出する全組合せの数分(K回)繰り返したと判定されるまで繰り返すことが必要になるのであるが、ステップS35で、2つの重み付き誤り率et1,et2を演算しておくことで、その繰り返し回数を全組合せ回数Kの1/2とすることができる。
そこで、ステップS36において、重み付き誤り率演算部125は、ステップS35の処理で演算した重み付き誤り率et1とet2のうち、小さい方を選択する。
ステップS37において、判定部126は、閾値が最大のピクセル間差分特徴より大きいか否かを判定する。すなわち、いま設定されている閾値Thが、最大のピクセル間差分特徴d(例えば、図21に示されている例の場合、d9)より大きいか否かを判定する。いまの場合、閾値Thは、図21における閾値Th31であるので、最大のピクセル間差分特徴d9より小さいと判定され、処理はステップS38に進む。
ステップS38において、閾値設定部123は、現在の閾値に最も近い次の大きさのピクセル間差分特徴と、さらにその次の大きさのピクセル間差分特徴の中間の大きさの閾値Thを設定する。いまの場合、図21の例において、現在の閾値Th31に最も近い次の大きさのピクセル間差分特徴d1と、さらに次の大きさのピクセル間差分特徴d2の中間の値の閾値Th32が設定される。
その後、処理はステップS34に戻り、弱仮説演算部124は、上記した式(15)に従って、弱仮説の判定出力f(x)を演算する。この場合、図21に示されるように、ピクセル間差分特徴dの値がd2乃至d9のとき、f(x)の値は+1となり、d1のときは−1となる。
ステップS35において、式(10)に従って、重み付き誤り率et1が演算され、式(16)に従って重み付き誤り率et2が演算される。そして、ステップS36において、重み付き誤り率et1とet2のうち、小さい方が選択される。
ステップS37において、再び閾値が最大のピクセル間差分特徴より大きいか否かが判定される。いまの場合、閾値Th32は、最大のピクセル間差分特徴d9より小さいので、処理はステップS38に進み、閾値Thは、ピクセル間差分特徴d2とd3の間の閾値Th33に設定される。
以上のようにして、閾値Thが順次大きい値に更新される。ステップS34においては、閾値Thが、例えば、ピクセル間差分特徴d3とd4の間のTh34である場合には、ピクセル間差分特徴dの値がd4以上である場合には+1、d3以下である場合には−1となる。以下同様に、ピクセル間差分特徴dの値が閾値Thi以上である場合には、弱仮説の判別結果f(x)の値が+1となり、閾値Thi以下である場合には−1となる。
以上の処理が、ステップS37において、閾値Thが最大のピクセル間差分特徴より大きいと判定されるまで繰り返し実行される。図21の例においては、閾値が最大のピクセル間差分特徴d9より大きい値Th40となるまで繰り返される。すなわち、ステップS34乃至ステップS38の処理を繰り返し実行することで、1つの画素の組合せを選択した場合における、各閾値Thを設定したときの重み付き誤り率etが求められることになる。そこで、ステップS39において、選択部127は、それまでに求めた重み付き誤り率etの中から、最小の重み付き誤り率を求める。そして、ステップS40において、選定部127は、最小の重み付き誤り率に対応する閾値を現在の弱仮説の閾値とする。すなわち、ステップS39で選定された最小の重み付き誤り率etが得られる閾値Thiが、その弱判別器(1組の画素の組合せにより生成される弱判別器)の閾値とされる。
ステップS41において、判定部126は、処理を全組合せ分繰り返したか否かを判定する。全組合せ分の処理がまだ実行されていない場合には、処理はステップS31に戻り、それ以降の処理が繰り返し実行される。すなわち、24×24個の画素の中から、再び2つの画素の位置S1,S2(但し、前回とは異なる位置)がランダムに決定され、その位置S1,S2の画素I1,I2に関して同様の処理が実行される。
以上の処理は、ステップS41において、学習サンプルから2個の画素を抽出可能な全組合せの数分(K回)繰り返されたと判定されるまで繰り返し実行される。ただし、上述したように、この実施の形態においては、ステップS35において、位置S1,S2が逆の場合における処理を実質的に実行しているため、ステップS41における処理は、全組合せの数Kの1/2でよいことになる。
ステップS41において、全ての組合せの処理が完了したと判定された場合、ステップS42において、選定部127は、生成した弱判別器の中で最も重み付き誤り率の小さいものを選択する。すなわち、これにより、K個の弱判別器のうちの1つの弱判別器(例えば、図9の弱判別器211)が学習され、生成されたことになる。
その後、処理は図16のステップS2に戻り、ステップS3以降の処理が実行される。そして、ステップS10において、K回の学習が終了したと判定されるまで、図16の処理が繰り返し実行されることになる。すなわち、図16の2回目の処理で、図9の弱判別器212の生成学習が行れ、3回目の処理で弱判別器213の生成学習が行われる。そして、K回目の処理で、弱判別器21Kの生成学習が行われることになる。
なお、本実施の形態においては、前回の繰り返し処理においてステップS9にて求めたデータ重みDt,iを使用し、複数の弱判別器の特徴量を学習し、これらの弱判別器(弱判別器候補)の中から上記式(10)に示す重み付き誤り率etが最も小さいものを選択することで、1つの弱判別器を生成する場合について説明したが、上述のステップS2において、例えば予め用意または学習した複数の画素位置から任意の画素位置を選択して弱判別器を生成するようにしてもよい。また、上述のステップS2乃至ステップS9までの繰り返し処理に使用する学習サンプルとは異なる学習サンプルを使用して弱判別器を生成してもよい。さらに、cross-validation(交差検定)法またはjack-knife法の評価のように、学習サンプルとは別のサンプルを用意して、生成された弱判別器や判別器の評価を行うようにしてもよい。交差検定とは、学習サンプルを均等にI個に分割し、その中から1つ以外を使用して学習を行い、当該1つを使用して学習結果を評価する作業をI回繰り返して学習結果の評価を行う手法である。
一方、上記式(4)または式(5)に示されるように、弱判別器が2つの閾値Th11,Th12,Th21,Th22を有するような場合、図20に示すステップS34乃至ステップS38の処理が若干異なる。上記式(3)に示されるように、閾値Thが1つの場合は、1から減算することにより、重み付き誤り率etを演算することができたが、式(4)に示されるように、ピクセル間差分特徴が閾値Th12より大きく、かつ閾値Th11より小さい場合が正解の判別結果であるとき、これを1から減算すると、式(5)に示されるように、閾値Th22より小さいか、閾値Th21より大きい場合が正解の判別結果になる。即ち、式(4)の反転は式(5)となり、式(5)の反転は式(4)となる。
弱判別器が2つの閾値Th11,Th12,Th21,Th22を有して判別結果を出力するような場合は、図20に示すステップS32において、ピクセル間差分特徴における頻度分布が求められ、重み付き誤り率etを最小にする閾値Th11,Th12,Th21,Th22が求められる。そして、ステップS41で所定回数繰り返されたか否かが判定され、所定回数繰り返され、生成された弱判別器の中で最も誤り率が小さい弱判別器が採用される。
また、上記式(6)に示されるように、連続値を出力する弱判別器の場合、図20のステップS31と同様、先ず2つの画素がランダムに選択される。そして、ステップS32と同様、全学習サンプルにおける頻度分布が求められる。さらに、得られた頻度分布に基づき上記式(6)に示す関数f(x)が求められる。そして、弱判別器の出力として対象物である度合い(正解である度合い)を出力するような所定の学習アルゴリズムに従って誤り率を算出するという一連の処理を所定回数繰り返し、最も誤り率が小さい(正答率が高い)パラメータを選択することで弱判別器が生成される。
図20の弱判別器の生成において、例えば24×24画素の学習サンプルを使用する場合、2つの画素の選択方法は、331200(=576×575)通りあり、最大331200回、上記繰り返し処理を行った中で最も誤り率が小さいものを弱判別器として採用することができる。このように、繰り返し回数の最大数繰り返す、即ち生成し得る最大数の弱判別器を生成し、それらの中から最も誤り率が小さいものを弱判別器として採用すると性能が高い弱判別器を生成することができるが、最大回数未満の例えば数百回繰り返し処理を行って、その中から最も誤り率が小さいものを採用してもよい。
(6)対象物検出方法
次に、図5に示す対象物検出装置1の対象物検出方法について説明する。
この処理を行うため、判別器5は、図22に示されるように、特徴算出部201、評価部202、判定部203、抽出部204、および選択部205により構成される。
特徴算出部201は、ピクセル間差分特徴を算出する。評価部202は、式(7)で示される重み付き多数決F(x)を評価値sとして演算する。判定部203は、評価部202が演算した評価値sと識別閾値RMを比較することで、その弱判別器による判定処理を中止するか否かを判定する。
抽出部204は、対象物領域が重複する場合、互いに重複する2つの抽出領域を抽出する。選択部205は、抽出部204により抽出された領域から、評価値sが大きい方の領域を選択する。
検出時(判別工程)においては、上述のようにして学習工程で生成された弱判別器群を利用した判別器5を使用し、所定のアルゴリズムに従って画像中から対象物体を検出する。この処理が図23のフローチャートに示されている。
ステップS61において、スケーリング部3は、画像出力部2より入力された濃淡画像を所定の割合で縮小スケーリングする処理を実行する。
画像出力部2には、入力画像として濃淡画像が直接入力されてもよく、また画像出力部2にてカラーの入力画像を濃淡画像に変換してもよい。スケーリング部3は、当初、画像出力部2から与えられた画像をスケール変換せずにそのまま出力し、次のタイミング以降で縮小スケーリングしたスケーリング画像を出力するが、便宜上、スケーリング部3から出力する画像は全てスケーリング画像という。スケーリング画像が生成されるタイミングは、前に出力されたスケーリング画像の全領域の顔検出が終了した時点であり、スケーリング画像がウィンドウ画像より小さくなった時点で、次のフレームの入力画像の処理が開始される。
ステップS62において、走査部4は、探索ウィンドウを走査し、画像を切り出す処理を実行する。すなわち、走査部4は、スケーリングされた画像上で探索ウィンドウを所定の位置に配置し、そのウィンドウ内の画像をウィンドウ画像として切り出し、判別器5に出力する。
ステップS63において、判別器5の特徴算出部201は、切り出されたウィンドウ画像(24×24画素の画像)からK個の弱判別器のうちの最初の弱判別器の2個の画素を抽出し、そのピクセル間差分特徴dを算出する、
ステップS64において、評価部202は、現在の弱判別器の推定値に信頼度を乗算し、これまでの評価を加算して評価値sを更新する。すなわち、評価部202は、最初にその評価値sを0に初期化する。そして、式(15)に基づいて演算された弱判別器211の判別結果としての推定値f(x)を演算し、評価値sの推定値f(x)を式(7)に基づいて、重みαtで重み付けし、重み付け多数決の値F(x)を評価値sとして演算する。
ここで、上述した式(3)乃至(5)により、2値の推定値を出力する弱判別器と、式(6)に示す関数f(x)を推定値として出力する弱判別器とでは、その推定値の評価値sへの反映の仕方が異なる。
先ず、上記式(2)を弱判別器に利用し、2値の値を推定値として出力する場合、評価
値sは下記式(17)のようになる。
Figure 2005284348
すなわち、弱判別器の判別結果ft(x)の値は、ピクセル間差分特徴dの値が閾値Thtより大きい場合には+1、そうでない、その他の場合には−1となる。その結果、推定値ft(x)と重みαtを乗算した値は、ピクセル間差分特徴dの値が閾値より大きい場合には、αtとなり、その他の場合には、−αtとなる。そこで、これらの値が式(7)に従って、それまでの評価値sに加算され、式(7)に従った重み付き多数決の値F(x)である評価値sが更新される。
また、上記式(3)を弱判別器に利用し、2値の値を推定値として出力する場合、評価値sは下記式(18)のようになる。
Figure 2005284348
また、上記式(4)を弱判別器に利用し、2値の値を推定値として出力する場合、評価値sは下記式(19)のようになる。
Figure 2005284348
さらに、上記式(5)を弱判別器に利用し、関数fを推定値として出力する場合、評価値sは下記式(20)のようになる。
Figure 2005284348
ステップS65において、判定部203は、評価値sと打ち切り閾値RMとを比較し、評価値sが打ち切り閾値RMより大きいか否かを判定する。ステップS64の処理で更新された評価値sが打ち切り閾値RMより大きい場合には、ステップS66で、判定部203は、処理をK回繰り返したか否かを判定する。繰り返し回数がまだK回に達していない場合、処理はステップS63に戻り、特徴算出部201により選択された次の弱判別器212の画素に関するピクセル間差分特徴dが算出される。そして、ステップS64で、弱判別器212の推定値f(x)に信頼度αtを乗算し、評価値sが更新される。
ステップS65において、その評価値sが再び打ち切り閾値RMより大きいか否かが判定され、大きい場合、繰り返し回数がまだK回に達していなければ、処理はステップS66から再びステップS63に戻り、同様の処理が繰り返し実行される。ステップS63乃至ステップS65の処理がK回繰り返された場合、結局、図9の弱判別器211から弱判別器21Kまでの判別が行われたことになり、いずれも各弱判別器21iは、この探索ウィンドウの画像は人の顔であると判定したことになる。
これに対して、ステップS65において、評価値sの値が打ち切り閾値RM以下であると判定された場合、上述したように、この探索ウィンドウの画像は人の顔の画像ではないということになる。そこで、この場合には、ステップS66の処理はスキップされ、弱判別器21i+1以降の処理は実行されないことになる。これにより、より迅速な処理が可能となる。
処理がK回繰り返されたか、または、評価値sが打ち切り閾値RM以下になった場合、ステップS67において、判定部203は、次の探索ウィンドウがあるか否かを判定する。次の探索ウィンドウがある場合には、処理はステップS62に戻り、走査部4は、現在のスケーリングの画像の探索ウィンドウを1画素分右方向に移動し、その画像を切り出して判別器5に出力する。そして、判別器5は、ステップS63乃至ステップS66の処理を繰り返し実行することで、そのウィンドウ画像が人の顔の画像であるか否かを判定する。
以上のようにして、探索ウィンドウが、図7に示されるように、右下方向に順次1画素分ずつずらされ、各探索ウィンドウの画像が人の顔の画像であるか否かが判定され、探索ウィンドウの位置がスケーリング画像の右下の位置まで移動したとき、ステップS67において、次の探索ウィンドウが存在しないと判定され、処理はステップS68に進む。
ステップS68において、スケーリング部3は、次のスケーリング画像があるか否かを判定する。次のスケーリング画像がある場合には、ステップS61において、スケーリング部3は、さらに、縮小率を上げた(より縮小された)スケーリング画像を生成し、走査部4に出力する。そして、そのスケーリング画像について、上述した場合と同様の処理が実行される。
以上の処理が、ステップS68において、次のスケーリング画像が存在しないと判定されるまで繰り返し実行される。すなわち、スケーリング画像がウィンドウ画像より小さくなるまで上述した処理が繰り返し実行される。
上述したように、探索ウィンドウは、1画素分ずつ右下方向に順次移動される。従って、例えば、1つの探索ウィンドウの画像が人の顔であると判定された場合、その探索ウィンドウを1画素分右方向または下方向にずらしたウィンドウの画像も、多くの場合、人の顔の画像と判定される。このようなことから、同一の顔の画像が、複数のウィンドウ画像で、人の顔の画像であるとして検出されることになる。そこで、全てのスケーリング画像の処理が終了した場合、探索ウィンドウの重なりを削除する処理が実行される。
このため、ステップS69において、判定部203は、2つ以上の対象物領域が重複するか否かを判定する。2つ以上の対象物領域が重複する場合には、ステップS70において、抽出部204は、互いに重複する2つの領域を抽出する処理を実行する。例えば、1つの探索ウィンドウの画像が対象物領域で得られたと判定された場合、1画素分右方向にずれた探索ウィンドウの画像も人の顔の画像であると判定されるため、この2つのウィンドウの領域が抽出される。ステップS71において、選択部205は、ステップS70で抽出された2つの領域のうち、評価値sが大きい方の領域を選択する。
その後、処理はステップS69に戻り、それ以降の処理が繰り返し実行される。
以上のようにして、評価値sが小さい領域は信頼度が低いとみなして無視し、最も評価値sが高い領域が選択される。以上の処理は、ステップS69において、2つ以上の対象物領域が重複しないと判定されるまで繰り返され、重複しないと判定された場合、そのフレームにおける処理は終了される。そして、必要に応じてさらに次のフレームの処理が実行される。
このように、本実施の形態における対象物検出方法によれば、ピクセル間差分特徴により弱判別する弱判別器を集団学習により学習した判別器を使用して対象物を検出するため、ウィンドウ画像において、対応する2つの画素の輝度値を読出し、その差を算出するのみで、上記ステップS63における対象物の特徴量の算出工程が終了する。このため極めて高速に顔検出処理することができるため、リアルタイムな顔検出が可能である。
また、その特徴量から判別した判別結果(推定値)と判別に使用した弱判別器に対する信頼度とを乗算した値を加算して評価値sを逐次更新する毎に打ち切り閾値RMと比較し、弱判別器の推定値の演算を続けるか否かが判定される。そして、打ち切り閾値RMを評価値sが下まわった場合に弱判別器の演算を打ち切り、次のウィンドウ画像の処理に移ることにより、無駄な演算を飛躍的に低減して更に高速に顔検出が可能となる。
すなわち、入力画像およびそれを縮小スケーリングしたスケーリング画像の全ての領域を走査してウィンドウ画像を切り出した場合、それらのウィンドウ画像のうち対象物である確率は小さく、ほとんどが非対象物である。この非対象物であるウィンドウ画像の判別を途中で打ち切ることで、判別工程を極めて高効率化することができる。なお、逆に検出すべき対象物が多数含まれるような場合、上述した打ち切り閾値と同様の手法にて、対象物であることが明らかとなったウィンドウ画像の演算を途中で打ち切るような閾値も設けてもよい。更に、入力画像をスケーリング部にてスケーリングすることで、任意の大きさの探索ウィンドウを設定し、任意の大きさの対象物を検出することができる。
図23のステップS63乃至ステップS66においては、実質的に図24に示される打ち切り閾値による処理が実行されていることになる。すなわち、ステップS101において、評価値sに0が初期設定され、ステップS102において、繰り返し回数を表す変数tに1が初期設定される。そして、ステップS103において、ピクセル間差分特徴量dが取得される(d_t(x)がdに設定される)。ステップS104において、評価値sを更新する処理が実行される。この更新は次の式により行われる。
s=s+(d>0)・αt ・・・・・・・・・・・・(21)
上記式における関数(d>0)は、dの値が0より大きければ+1、0以下であれば−1を出力する。
ステップS105において、ステップS104で得られた評価値sが、打ち切り閾値RMより大きいか否かが判定される。評価値sが打ち切り閾値RMより大きい場合には、ステップS106において、変数tがKと等しいか否かが判定され、等しくない場合には、ステップS107において、変数tが1だけインクリメントされ、処理は再びステップS103に戻り、それ以降の処理が繰り返し実行される。
ステップS105において、評価値sが打ち切り閾値RM以下であると判定された場合には、ステップS106の処理はスキップされる。
この処理では、弱化説の判定が負であった場合には、弱化説の出力を加えずに、判定が正であったときだけ、結果に重みを加えて足しこむようにする。このため、ステップS105における打ち切り閾値RMは、式(22)で演算される。
Figure 2005284348
このようにすることで、ステップS104の処理を分岐を用いずに行うことが可能となる。その結果、迅速な処理が可能となる。
図24の処理をコードを用いて表現すると、図25に示されるようになる。
比較の為に、図24のステップS104の打ち切り閾値による処理を分岐を含む処理で表現すると、図26のフローチャートで示されるようになる。
すなわち、図26のステップS131乃至ステップS133の処理は、図24のステップS101乃至ステップS103の処理に対応し、図26のステップS137乃至ステップS139の処理は、図24のステップS105乃至ステップS107の処理に対応する。そして、図26のステップS134乃至ステップS136の処理が、図24のステップS104の処理に対応する。
ステップS134においては、ステップS133で取得されたdの値が、正であるか否かが判定される。ピクセル間差分特徴dの値が正である場合には、ステップS135において、次式に従って評価値sが更新される。
s=s+αt・d ・・・・(23)
これに対して、ステップS144において、ピクセル間差分特徴dの値が0以下であると判定された場合には、ステップS136において、次式に従って評価値sが更新される。
s=s−αt・d ・・・・(24)
この図26の処理をコードで表すと、図27に示されるようになる。
このような分岐を含む処理が含まれていると、その処理が遅くなる。そこで、図24および図25に示されるような処理を行うことが好ましい。
なお、この図24のステップS104の評価値sの演算処理は、学習時における図16のステップS8のネガティブサンプルを削除する処理で、式(7)の演算を行う場合においても同様に適用することができる。
さらに、図24の処理は図28のフローチャートに示されるように、重み付き多数決の値F(x)の演算を、4個のピクセル間差分特徴について、並列処理するようにすることができる。
すなわち、この処理では、ステップS201において、評価値sが0に初期設定され、ステップS202において、繰り返し回数を表す変数tに1が初期設定される。
そして、ステップS203,S207,S211,S215において、それぞれピクセル間差分特徴d1,d2,d3,d4に、取得された値d_t(x)が、それぞれ設定される。
ステップS204,S208,S212,S216において、ピクセル間差分特徴d1が正であれば、その値が変数c1に設定され、ピクセル間差分特徴d2が正であれば、その値が変数c2に設定され、ピクセル間差分特徴d3が正であれば、その値が変数c3に設定され、ピクセル間差分特徴d4が正であれば、その値が変数c4に設定される。
そして、ステップS205,S209,S213,S217において、重みα1とステップS203で取得されたピクセル間差分特徴d1との積が変数m1に、重みα2にステップS207で取得されたピクセル間差分特徴d2との積が変数m2に、重みα3とステップS211で取得されたピクセル間差分特徴d3との積が変数m3に、そして、重みα4とステップS215で取得されたピクセル間差分特徴d4との積が変数m4に、それぞれ設定される。
さらに、ステップS206,S210,S214,S218において、ステップS204で得られた変数c1とステップS205で得られた変数m1との論理積が変数a1に、ステップS208で得られた変数c2と、ステップS209で得られた変数m2の論理積が変数a2に、ステップS212で得られた変数c3と、ステップS213で得られたm3との論理積が変数a3に、またステップS216で得られた変数c4と、ステップS217の処理で得られた変数m4との論理積が変数a4に、それぞれ設定される。
そして、ステップS219において、評価値sがステップS206,S210,S214,S218で得られた変数a1,a2,a3,a4と加算され、更新される。
ステップS220において、変数sが打ち切り閾値Rt(t+3)より小さいか否かが判定され、小さくない場合には、ステップS221において、変数t+3の値がK以下であるか否かが判定される。t+3の値が、K以下でない場合には、ステップS222において、tの値が4だけインクリメントされ、処理は、ステップS203,S207,S211,S215に戻り、それ以降の処理が繰り返し実行される。
ステップS220において、評価値sが打ち切り閾値Rt(t+3)より小さいと判定された場合には、ステップS221の処理はスキップされ、処理は終了される。
このように、この処理において、ステップS203乃至ステップS206の処理、ステップS207乃至ステップS210の処理、ステップS211乃至ステップS214の処理、並びにステップS215乃至ステップS218の処理が、例えば、SIMD(Single Instruction Multiple Data)命令などにより並列処理される。
これにより、より迅速な処理が可能となる。
図28の処理の具体的な値の例が、図29に模式的に示されている。
図29Aは、ステップS204,S208,S212,S216の処理を表している。すなわち、ピクセル間差分特徴d1乃至d4が0と比較され、0より大きければ0xffffとされ、0以下であれば0とされる。これらの値がc1乃至c4の値となる。
図29Bは、ステップS205,S209,S213,S217の処理を表している。重みα1乃至α4と、ピクセル間差分d1乃至d4がそれぞれ乗算され、α1×d1,α2×d2,α3×d3,α4×d4が得られる。これらの値が、m1乃至m4の値となる。
図29Cは、ステップS206,S210,S214,S218の処理を表している。α1×d1と0xffffとの論理積、α2×d2と0との論理積、α3×d3と0の論理積、並びにα4×d4と0xffffとの論理積が、それぞれ演算され、α1×d1,0,0,α4×d4が得られている。これらの値は、それぞれa1乃至a4の値である。
図29Dは、ステップS219のうちのa1乃至a4の加算の処理を表している。この例では、α1×d1,0,0,α4×d4の和が、a1乃至a4の和として演算されている。
次に、対象物として実際に顔を検出した本発明の実施例について説明する。なお、対象物は顔に限らず、例えばロゴタイプや模様または人間の顔以外の対象物画像など、2次元的な平面での特徴を有するものであって、上記ピクセル間差分特徴によりある程度の判別ができる(弱判別器を構成できる)ものであれば、どのような対象物でも検出できることはいうまでもない。
図30Aおよび図30Bは、本実施例の学習サンプルの一部を示す図である。学習サンプルは、対象物としてラベリングされた図30Aに示す顔画像群(ポジティブサンプル)と、非対象物としてラベリングされた図30Bに示す非顔画像群(ネガティブサンプル)を使用する。図30Aおよび図30Bは、学習サンプルとして使用した画像の一部を示すが、学習サンプルとしては、例えば数千枚の顔画像と、数万枚の非顔画像とが用いられる。画像サイズは例えば24×24ピクセルとされる。
本実施例では、これら学習サンプルから、図16および図20に示すアルゴリズムに従って、上述の式(3)のみを利用した顔判別問題が学習された。このような学習により、最初に生成された1番目乃至6番目までの弱判別器が、それぞれ図31A乃至図31Fに示されている。これらは顔の特徴をよく表していると考えられる。定性的には、図31Aの弱判別器f1は、額(S1)は目(S2)より明るい(閾値:18.5)ことを示し、図31Bの弱判別器f2は、頬(S1)は目(S2)より明るい(閾値:17.5)ことを示す。また、図31Cの弱判別器f3は、額(S1)は髪の毛(S2)より明るい(閾値:26.5)ことを示し、図31Dの弱判別器f4は、鼻の下(S1)は鼻腔(S2)より明るい(閾値:5.5)ことを示す。更に、図31Eの弱判別器f5は、頬(S1)は髪の毛(S2)より明るい(閾値:22.5)ことを示し、図31Fの弱判別器f6は、顎(S1)は唇(S2)より明るい(閾値:4.5)ことを示している。
本実施例においては、最初の1つの弱判別器f1により70%の正答率(学習サンプルに対する性能)を得ることができ、弱判別器f1乃至f6を全て利用することで80%の正答率に達することができた。そして、40個の弱判別器を組み合わせることで90%の正答率に達し、765個の弱判別器を組み合わせることにより99%の正答率に達することができた。
図32は、1枚の入力画像から検出された顔検出結果を示す図であって、図32Aと図32Bは、それぞれ重なり領域を取り除く前後を示す。図32Aに示す複数の枠が、検出された顔(対象物)であり、1枚の画像から図23に示すステップS61乃至ステップS68までの処理にて複数の顔(領域)が検出される。これをステップS69乃至ステップS71に示す重なり領域除去処理を行うことで、1つの顔として検出することができる。なお、画像内に複数の顔が存在する場合には、複数の顔を同時に検出することができる。上述したように、本実施例の顔検出処理は、極めて高速に処理可能であって、通常のパーソナルコンピュータ等を利用しても、1秒間に30枚程度の入力画像から顔検出することができ、従って動画から顔検出することも可能である。
次に、アダブーストによる識別、アダブーストカスケードによる識別、並びにアダブーストリジェクト学習による識別(図16に示されるように、不要なネガティブサンプルを削除することで学習した弱判別器を用いた識別)の識別結果を説明する。
図33は、この3つの方法による識別実験に利用した学習サンプルを表している。横軸と縦軸は、それぞれ画素値I1,I2を表し、図中×印はネガティブサンプルを表し、図中○印はポジティブサンプルを表す。
図34は、アダブーストリジェクト学習による識別結果を表し、図35はアダブーストによる識別結果を表し、図36はアダブーストカスケードによる識別結果を表す。図中に表れる線は、各弱判別器で順次判別された閾値(ポジティブサンプルとネガティブサンプルとの境界)を表す。また、より明るく表現されている領域が、より重み付き多数決の値F(x)が大きいことを表す。図34に示されるアダブーストリジェクト学習による識別結果が、最も明るい領域が広く、より確実に識別処理が行われていることを表している。
図37は、アダブースト、アダブーストカスケード、およびアダブーストリジェクト学習の3つの方法の実験の結果の比較を表す。全弱仮説数は、識別を完了するまでに要した弱判別器の数を表し、アダブーストの場合が405個、アダブーストカスケードの場合が253個、アダブーストリジェクト学習の場合が117個であるので、アダブーストリジェクト学習の場合が最も小さいことが分かる。すなわち、より少ない数の弱判別器により識別が可能であることが分かる。
正判定率(トゥルーポジティブ)は、ポジティブサンプルに対する正解率を表し、その値が大きい方が好ましい。誤判定率(フォールスポジティブ)は、ネガティブサンプルをポジティブサンプルと誤判定した割合を表し、その値は小さい方が好ましい。アダブーストリジェクト学習は、正判定率は、アダブーストカスケードより若干劣るが、殆ど同じであり、誤判定率は優れていることがわかる。
弱仮説の評価回数は、左側に記載されている値が、ネガティブサンプルに対する評価回数の平均値を表し、右側の数字が、ポジティブサンプルに対する評価回数の平均値を表す。
アダブーストの場合、打ち切り閾値による処理はないので、評価回数は全弱仮説数と同じである。これに対して、アダブーストリジェクト学習の場合、ネガティブサンプルであると判定できるまでの評価回数の平均値は、17.9回であり、ポジティブサンプルであると判定できるまでの評価回数の平均値は、115.6回である。アダブーストリジェクト学習の場合、より少ない数の弱判別器によりネガティブサンプルであることの結論を出すことができることがわかる。アダブーストカスケードの場合、ネガティブサンプルであると判定できるまでの評価回数の平均値は、31.6回であり、ポジティブサンプルであると判定できるまでの評価回数の平均値は、251.2回である。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。そして本発明は、静止画像はもとより、動画像を受信し、表示する各種の画像処理装置を含む情報処理装置に適用することができる。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、対象物検出装置は、図38に示されるようなパーソナルコンピュータにより構成される。
図38において、CPU(Central Processing Unit)321は、ROM(Read Only Memory)322に記憶されているプログラム、または記憶部328からRAM(Random Access Memory)323にロードされたプログラムに従って各種の処理を実行する。RAM323にはまた、CPU321が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU321、ROM322、およびRAM323は、バス324を介して相互に接続されている。このバス324にはまた、入出力インタフェース325も接続されている。
入出力インタフェース325には、キーボード、マウスなどよりなる入力部326、CRT(Cathode Ray Tube)、LCD(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部327、ハードディスクなどより構成される記憶部328、モデムなどより構成される通信部329が接続されている。通信部329は、インターネットを含むネットワークを介しての通信処理を行う。
入出力インタフェース325にはまた、必要に応じてドライブ330が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア331が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部328にインストールされる。
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
この記録媒体は、図38に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フロッピディスクを含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini-Disk)を含む)、もしくは半導体メモリなどよりなるリムーバブルメディア331により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM322や、記憶部328に含まれるハードディスクなどで構成される。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
特許文献1に記載の矩形特徴を示す模式図である。 特許文献1に記載の矩形特徴を使用して顔画像を判別する方法を説明する図である。 特許文献1に記載の積分画像を示す模式図である。 特許文献1に記載の積分画像を使用して矩形領域の輝度値の総和を算出する方法を説明する図である。 本発明の実施の形態における対象物検出装置の処理機能を示す機能ブロック図である。 スケール変換を説明する図である。 探索ウィンドウの走査を説明する図である。 探索ウィンドウの移動を説明する図である。 判別器の構成を示す図である。 ピクセル間差分特徴を説明する図である ピクセル間差分特徴と閾値の関係を説明する図である。 頻度分布を説明する図である。 確率密度に基づくピクセル間差分特徴を説明する図である。 重み付き多数決の値F(x)の変化を示す図である。 集団学習機の機能的構成例を示すブロック図である。 集団学習機の学習方法を説明するフローチャートである。 学習サンプルを説明する図である。 識別閾値と学習閾値とを説明する図である。 選択部の機能的構成例を示すブロック図である。 弱判別器の選択処理を説明するフローチャートである。 閾値の移動を説明する図である。 判別器の機能的構成例を示すブロック図である。 対象物検出処理を説明するフローチャートである。 打ち切り閾値による処理を説明するフローチャートである。 図24の処理に対応するコードを表す図である。 図24と比較される打ち切り閾値による処理を説明するフローチャートである。 図26の処理に対応するコードを表す図である。 打ち切り閾値による並列処理を説明するフローチャートである。 並列処置の具体例を説明する図である。 対象物としてラベリングされた顔の画像群と、非対象物としてラベリングされた非顔画像群を示す図である。 判別器の具体例を説明する図である。 重なり領域を説明する図である。 学習サンプルを説明する図である。 アダブーストリジェクト学習による識別結果の例を示す図である。 アダブーストによるよる識別結果の例を示す図である。 アダブーストカスケードによる識別結果の例を示す図である。 アダブースト、アダブーストカスケード、およびアダブーストリジェクト学習の識別結果を比較する図である。 パーソナルコンピュータの構成例を示すブロック図である。
符号の説明
1 対象物検出装置, 2 画像出力部, 3 スケーリング部, 4 走査部, 5 判別器, 6 集団学習機, 211乃至21K 弱判別器, 22 加算器, 101 初期化部, 102 選択部, 103 誤り率演算部, 104 信頼度演算部, 105 閾値演算部, 106 判定部, 107 削除部, 108 更新部, 109 反映部, 121 決定部, 122 頻度分布算出部, 123 閾値設定部, 124 弱仮説演算部, 125 重み付き誤り率演算部, 126 判定部, 127 選定部

Claims (8)

  1. データ重みを利用して弱判別器を選択する選択手段と、
    選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算手段と、
    演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除手段と、
    削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算手段と、
    前記重み演算手段により演算された前記データ重みを、前記選択手段による次の前記弱判別器の選択に反映する反映手段と
    を備えることを特徴とする情報処理装置。
  2. 前記基準値演算手段は、前記弱判別器の正の判別結果を前記信頼度により重み付けして累積する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記基準値演算手段は、前記累積和の演算を並列的に行う
    ことを特徴とする請求項1に記載の情報処理装置。
  4. 前記基準値演算手段は、学習した前記弱判別器を利用して識別処理を行う場合に使用される識別基準値を演算するとともに、前記識別基準値より小さい学習基準値を演算し、
    前記削除手段は、前記学習基準値を基準値として前記学習サンプルを削除する
    ことを特徴とする請求項1に記載の情報処理装置。
  5. 前記弱判別器は、前記学習サンプルの画像データの2画素の値の差と閾値との差に基づいて前記判別結果を演算する
    ことを特徴とする請求項1に記載の情報処理装置。
  6. データ重みを利用して弱判別器を選択する選択ステップと、
    選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算ステップと、
    演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除ステップと、
    削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算ステップと、
    前記重み演算ステップの処理により演算された前記データ重みを、前記選択ステップの処理による次の前記弱判別器の選択に反映する反映ステップと
    を含むことを特徴とする情報処理方法。
  7. データ重みを利用して弱判別器を選択する選択ステップと、
    選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算ステップと、
    演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除ステップと、
    削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算ステップと、
    前記重み演算ステップの処理により演算された前記データ重みを、前記選択ステップの処理による次の前記弱判別器の選択に反映する反映ステップと
    を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
  8. データ重みを利用して弱判別器を選択する選択ステップと、
    選択された前記弱判別器による学習サンプルの判別結果を、信頼度により重み付けした値の累積和に基づいて基準値を演算する基準値演算ステップと、
    演算された前記基準値に基づいて前記学習サンプルの一部を削除する削除ステップと、
    削除されなかった前記学習サンプルに基づいて前記データ重みを演算する重み演算ステップと、
    前記重み演算ステップの処理により演算された前記データ重みを、前記選択ステップの処理による次の前記弱判別器の選択に反映する反映ステップと
    をコンピュータに実行させることを特徴とするプログラム。
JP2004093001A 2004-03-26 2004-03-26 情報処理装置および方法、記録媒体、並びにプログラム Expired - Lifetime JP4482796B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2004093001A JP4482796B2 (ja) 2004-03-26 2004-03-26 情報処理装置および方法、記録媒体、並びにプログラム
DE602005012011T DE602005012011D1 (de) 2004-03-26 2005-03-23 Vorrichtung, Methode und rechnerlesbares Aufzeichnungsmedium und Programm zur Informationsverarbeitung
EP08011509A EP1967985B1 (en) 2004-03-26 2005-03-23 Apparatus, method, computer program and computer readable storage medium for information processing
EP08011510A EP1967986B1 (en) 2004-03-26 2005-03-23 Apparatus, method, computer program and computer readable storage medium for information prcessing
DE602005019338T DE602005019338D1 (de) 2004-03-26 2005-03-23 Vorrichtung und Verfahren zur Informationsverarbeitung, Aufzeichnungsmedium und Programm
EP05251786A EP1583024B1 (en) 2004-03-26 2005-03-23 Apparatus, method, computer program and computer readable storage medium for information processing
US11/089,229 US7657085B2 (en) 2004-03-26 2005-03-24 Information processing apparatus and method, recording medium, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004093001A JP4482796B2 (ja) 2004-03-26 2004-03-26 情報処理装置および方法、記録媒体、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2005284348A true JP2005284348A (ja) 2005-10-13
JP4482796B2 JP4482796B2 (ja) 2010-06-16

Family

ID=34879894

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004093001A Expired - Lifetime JP4482796B2 (ja) 2004-03-26 2004-03-26 情報処理装置および方法、記録媒体、並びにプログラム

Country Status (4)

Country Link
US (1) US7657085B2 (ja)
EP (3) EP1967985B1 (ja)
JP (1) JP4482796B2 (ja)
DE (2) DE602005019338D1 (ja)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007264742A (ja) * 2006-03-27 2007-10-11 Fujifilm Corp 顔検出方法おならびにこれを用いた撮影装置
JP2007272298A (ja) * 2006-03-30 2007-10-18 Fujifilm Corp 顔検出方法およびこれを用いた撮影装置
JP2008009893A (ja) * 2006-06-30 2008-01-17 Canon Inc パラメータ学習方法及びその装置、パターン識別方法及びその装置、プログラム
WO2008072459A1 (ja) 2006-12-11 2008-06-19 Nec Corporation 能動学習システム、能動学習方法、及び能動学習用プログラム
EP2031545A2 (en) 2007-09-03 2009-03-04 Sony Corporation Information processing apparatus, information processing method, and computer program
JP2010160758A (ja) * 2009-01-09 2010-07-22 Sony Corp 対象物検出装置、学習装置、対象物検出方法およびプログラム
JP2010225116A (ja) * 2009-03-25 2010-10-07 Toshiba Corp 学習装置、方法及びプログラム
JP2010257140A (ja) * 2009-04-23 2010-11-11 Canon Inc 情報処理装置及び情報処理方法
EP2293221A2 (en) 2009-08-31 2011-03-09 Sony Corporation Apparatus, method, and program for processing image
JP2011118450A (ja) * 2009-11-30 2011-06-16 Sumitomo Electric Ind Ltd 移動体追跡装置、追跡方法及びコンピュータプログラム
JP2011165204A (ja) * 2011-04-19 2011-08-25 Fujifilm Corp 顔検出方法およびこれを用いた撮影装置
US8121414B2 (en) 2007-06-13 2012-02-21 Sharp Kabushiki Kaisha Image processing method, image processing apparatus, and image forming apparatus
US8306331B2 (en) 2006-09-11 2012-11-06 Sony Corporation Image processing apparatus and method, and program
JP2013025713A (ja) * 2011-07-25 2013-02-04 Seiko Epson Corp 検出装置及び検出方法
US8467580B2 (en) 2006-09-11 2013-06-18 Sony Corporation Image data processing apparatus, method, program and recording medium
JP2013134702A (ja) * 2011-12-27 2013-07-08 Seiko Epson Corp 検出装置及び検出方法
KR101342313B1 (ko) 2006-03-17 2013-12-16 소니 주식회사 정보 처리 장치 및 방법, 및 기록 매체
KR101362768B1 (ko) 2007-11-23 2014-02-14 삼성전자주식회사 객체 검출 방법 및 장치
WO2014038408A1 (ja) 2012-09-06 2014-03-13 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2015118671A (ja) * 2013-12-20 2015-06-25 株式会社今仙電機製作所 歩行者検出方法および歩行者検出装置
JP2017508210A (ja) * 2014-02-07 2017-03-23 サイランス・インコーポレイテッドCylance Inc. 識別のためのアンサンブル機械学習を利用するアプリケーション実行コントロール
JP2017107422A (ja) * 2015-12-10 2017-06-15 株式会社Screenホールディングス 画像分類方法および画像分類装置
JP2017146990A (ja) * 2017-04-26 2017-08-24 株式会社東芝 物体検出装置及びその検出方法
JP2018018141A (ja) * 2016-07-25 2018-02-01 日本電信電話株式会社 判定装置、判定方法および判定プログラム
WO2021193864A1 (ja) * 2020-03-25 2021-09-30 国立大学法人広島大学 Aiによる事象クラスの判別方法及び判別システム

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4767595B2 (ja) * 2005-06-15 2011-09-07 パナソニック株式会社 対象物検出装置及びその学習装置
CN100472556C (zh) * 2005-10-09 2009-03-25 欧姆龙株式会社 特定被摄体检测装置及方法
EP1772816A1 (en) * 2005-10-09 2007-04-11 Omron Corporation Apparatus and method for detecting particular subject
US8224017B2 (en) * 2006-01-13 2012-07-17 New Jersey Institute Of Technology Method for identifying marked content
JP4657934B2 (ja) * 2006-01-23 2011-03-23 富士フイルム株式会社 顔検出方法および装置並びにプログラム
DE102006012475A1 (de) * 2006-03-16 2007-09-20 Robert Bosch Gmbh Vorrichtung, Verfahren und Computerprogramm zur Bewertung von Testobjekten
DE102006012477A1 (de) * 2006-03-16 2007-09-20 Robert Bosch Gmbh Bewertungsvorrichtung, Verfahren und Computerprogramm
US8554622B2 (en) * 2006-12-18 2013-10-08 Yahoo! Inc. Evaluating performance of binary classification systems
US7844085B2 (en) * 2007-06-07 2010-11-30 Seiko Epson Corporation Pairwise feature learning with boosting for use in face detection
JP4995024B2 (ja) * 2007-10-02 2012-08-08 キヤノン株式会社 パターン認識方法、パターン認識装置及びプログラム
US8447100B2 (en) * 2007-10-10 2013-05-21 Samsung Electronics Co., Ltd. Detecting apparatus of human component and method thereof
US8509538B2 (en) * 2007-12-20 2013-08-13 Intel Corporation Method and apparatus for obtaining and processing Gabor image features
US8131065B2 (en) * 2007-12-20 2012-03-06 Intel Corporation Method and apparatus for obtaining and processing image features
US8364528B2 (en) * 2008-05-06 2013-01-29 Richrelevance, Inc. System and process for improving product recommendations for use in providing personalized advertisements to retail customers
FI121901B (fi) 2008-10-17 2011-05-31 Visidon Oy Objektien ilmaiseminen ja seuraaminen digitaalisissa kuvissa
US8175376B2 (en) * 2009-03-09 2012-05-08 Xerox Corporation Framework for image thumbnailing based on visual similarity
JP4935961B2 (ja) * 2009-04-14 2012-05-23 日本電気株式会社 画像識別子抽出装置
JP5523053B2 (ja) * 2009-10-19 2014-06-18 キヤノン株式会社 物体識別装置及び物体識別方法
JP5075924B2 (ja) * 2010-01-13 2012-11-21 株式会社日立製作所 識別器学習画像生成プログラム、方法、及びシステム
US8660371B2 (en) * 2010-05-06 2014-02-25 Abbyy Development Llc Accuracy of recognition by means of a combination of classifiers
JP5706647B2 (ja) 2010-09-03 2015-04-22 キヤノン株式会社 情報処理装置、およびその処理方法
JP2012113621A (ja) * 2010-11-26 2012-06-14 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
AU2012214149A1 (en) 2011-02-11 2013-09-05 Arizona Board Of Regents For And On Behalf Of Arizona State University Methods, systems, and media for determining carotid intima-media thickness
WO2012109670A1 (en) 2011-02-11 2012-08-16 Arizona Board Of Regents, For And On Behalf Of, Arizona State University Systems, methods, and media for detecting an anatomical object in a medical device image
US20130066452A1 (en) * 2011-09-08 2013-03-14 Yoshiyuki Kobayashi Information processing device, estimator generating method and program
US9330336B2 (en) 2011-09-16 2016-05-03 Arizona Board of Regents, a body corporate of the State of Arizona, acting for and on behalf of, Arizona State University Systems, methods, and media for on-line boosting of a classifier
WO2013116865A1 (en) * 2012-02-02 2013-08-08 Arizona Board Of Regents, For And On Behalf Of, Arizona State University Systems, methods, and media for updating a classifier
WO2013116867A1 (en) 2012-02-03 2013-08-08 Arizona Board Of Regents, For And On Behalf Of, Arizona State University Systems, methods, and media for monitoring the condition of a patient's heart
US9400929B2 (en) * 2012-03-05 2016-07-26 Panasonic Intellectual Property Management Co., Ltd. Object detection device and method for detecting an object by performing a raster scan on a scan window
JP5867198B2 (ja) * 2012-03-14 2016-02-24 オムロン株式会社 領域指定方法及び領域指定装置
US9235769B2 (en) * 2012-03-15 2016-01-12 Herta Security, S.L. Parallel object detection method for heterogeneous multithreaded microarchitectures
US9449381B2 (en) 2012-09-10 2016-09-20 Arizona Board Of Regents, A Body Corporate Of The State Of Arizona, Acting For And On Behalf Of Arizona State University Methods, systems, and media for generating and analyzing medical images having elongated structures
US9536137B2 (en) * 2013-03-26 2017-01-03 Megachips Corporation Object detection apparatus
JP6052751B2 (ja) * 2013-07-03 2016-12-27 パナソニックIpマネジメント株式会社 物体認識装置及び物体認識方法
CN104346620B (zh) * 2013-07-25 2017-12-29 佳能株式会社 对输入图像中的像素分类的方法和装置及图像处理系统
CN104424471B (zh) * 2013-09-04 2018-02-23 深圳兆日科技股份有限公司 防伪识别中的定位方法及装置
CN104680120B (zh) * 2013-12-02 2018-10-19 华为技术有限公司 一种人脸检测的强分类器的生成方法及装置
US9754192B2 (en) * 2014-06-30 2017-09-05 Microsoft Technology Licensing, Llc Object detection utilizing geometric information fused with image data
US10157467B2 (en) 2015-08-07 2018-12-18 Arizona Board Of Regents On Behalf Of Arizona State University System and method for detecting central pulmonary embolism in CT pulmonary angiography images
CN108805198B (zh) * 2018-06-08 2021-08-31 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质和电子设备
CN110163053B (zh) 2018-08-02 2021-07-13 腾讯科技(深圳)有限公司 生成人脸识别的负样本的方法、装置及计算机设备
CN111582365B (zh) * 2020-05-06 2022-07-22 吉林大学 一种基于样本难度的垃圾邮件分类方法
US20220130544A1 (en) * 2020-10-23 2022-04-28 Remmie, Inc Machine learning techniques to assist diagnosis of ear diseases
CN113255670A (zh) * 2021-06-28 2021-08-13 湖南星汉数智科技有限公司 非均衡小样本目标检测方法、装置和计算机设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005044330A (ja) * 2003-07-24 2005-02-17 Univ Of California San Diego 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置
JP2005157679A (ja) * 2003-11-25 2005-06-16 Sony Corp 対象物検出装置及び方法、並びに集団学習装置及び方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144755A (en) * 1996-10-11 2000-11-07 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Method and apparatus for determining poses
US7099510B2 (en) 2000-11-29 2006-08-29 Hewlett-Packard Development Company, L.P. Method and system for object detection in digital images
US7024033B2 (en) * 2001-12-08 2006-04-04 Microsoft Corp. Method for boosting the performance of machine-learning classifiers
US7050607B2 (en) * 2001-12-08 2006-05-23 Microsoft Corp. System and method for multi-view face detection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005044330A (ja) * 2003-07-24 2005-02-17 Univ Of California San Diego 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置
JP2005157679A (ja) * 2003-11-25 2005-06-16 Sony Corp 対象物検出装置及び方法、並びに集団学習装置及び方法

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101342313B1 (ko) 2006-03-17 2013-12-16 소니 주식회사 정보 처리 장치 및 방법, 및 기록 매체
JP2007264742A (ja) * 2006-03-27 2007-10-11 Fujifilm Corp 顔検出方法おならびにこれを用いた撮影装置
JP2007272298A (ja) * 2006-03-30 2007-10-18 Fujifilm Corp 顔検出方法およびこれを用いた撮影装置
US7958070B2 (en) 2006-06-30 2011-06-07 Canon Kabushiki Kaisha Parameter learning method, parameter learning apparatus, pattern classification method, and pattern classification apparatus
JP2008009893A (ja) * 2006-06-30 2008-01-17 Canon Inc パラメータ学習方法及びその装置、パターン識別方法及びその装置、プログラム
JP4757116B2 (ja) * 2006-06-30 2011-08-24 キヤノン株式会社 パラメータ学習方法及びその装置、パターン識別方法及びその装置、プログラム
US8467580B2 (en) 2006-09-11 2013-06-18 Sony Corporation Image data processing apparatus, method, program and recording medium
US8306331B2 (en) 2006-09-11 2012-11-06 Sony Corporation Image processing apparatus and method, and program
WO2008072459A1 (ja) 2006-12-11 2008-06-19 Nec Corporation 能動学習システム、能動学習方法、及び能動学習用プログラム
US8798371B2 (en) 2007-06-13 2014-08-05 Sharp Kabushiki Kaisha Image processing method, image processing apparatus, and image forming apparatus
US8121414B2 (en) 2007-06-13 2012-02-21 Sharp Kabushiki Kaisha Image processing method, image processing apparatus, and image forming apparatus
EP2031545A2 (en) 2007-09-03 2009-03-04 Sony Corporation Information processing apparatus, information processing method, and computer program
US8666175B2 (en) 2007-11-23 2014-03-04 Samsung Electronics Co., Ltd. Method and apparatus for detecting objects
KR101362768B1 (ko) 2007-11-23 2014-02-14 삼성전자주식회사 객체 검출 방법 및 장치
JP4710979B2 (ja) * 2009-01-09 2011-06-29 ソニー株式会社 対象物検出装置、学習装置、対象物検出方法およびプログラム
JP2010160758A (ja) * 2009-01-09 2010-07-22 Sony Corp 対象物検出装置、学習装置、対象物検出方法およびプログラム
US8391551B2 (en) 2009-01-09 2013-03-05 Sony Corporation Object detecting device, learning device, object detecting method, and program
JP2010225116A (ja) * 2009-03-25 2010-10-07 Toshiba Corp 学習装置、方法及びプログラム
JP2010257140A (ja) * 2009-04-23 2010-11-11 Canon Inc 情報処理装置及び情報処理方法
US8385649B2 (en) 2009-04-23 2013-02-26 Canon Kabushiki Kaisha Information processing apparatus and method for detecting object in image data
EP2293221A2 (en) 2009-08-31 2011-03-09 Sony Corporation Apparatus, method, and program for processing image
US8634658B2 (en) 2009-08-31 2014-01-21 Sony Corporation Apparatus, method, and program for processing image
JP2011118450A (ja) * 2009-11-30 2011-06-16 Sumitomo Electric Ind Ltd 移動体追跡装置、追跡方法及びコンピュータプログラム
JP2011165204A (ja) * 2011-04-19 2011-08-25 Fujifilm Corp 顔検出方法およびこれを用いた撮影装置
JP2013025713A (ja) * 2011-07-25 2013-02-04 Seiko Epson Corp 検出装置及び検出方法
JP2013134702A (ja) * 2011-12-27 2013-07-08 Seiko Epson Corp 検出装置及び検出方法
WO2014038408A1 (ja) 2012-09-06 2014-03-13 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2015118671A (ja) * 2013-12-20 2015-06-25 株式会社今仙電機製作所 歩行者検出方法および歩行者検出装置
JP2017508210A (ja) * 2014-02-07 2017-03-23 サイランス・インコーポレイテッドCylance Inc. 識別のためのアンサンブル機械学習を利用するアプリケーション実行コントロール
JP2017107422A (ja) * 2015-12-10 2017-06-15 株式会社Screenホールディングス 画像分類方法および画像分類装置
JP2018018141A (ja) * 2016-07-25 2018-02-01 日本電信電話株式会社 判定装置、判定方法および判定プログラム
JP2017146990A (ja) * 2017-04-26 2017-08-24 株式会社東芝 物体検出装置及びその検出方法
WO2021193864A1 (ja) * 2020-03-25 2021-09-30 国立大学法人広島大学 Aiによる事象クラスの判別方法及び判別システム

Also Published As

Publication number Publication date
JP4482796B2 (ja) 2010-06-16
DE602005012011D1 (de) 2009-02-12
EP1967986B1 (en) 2010-02-10
EP1583024A3 (en) 2006-04-19
US20050220336A1 (en) 2005-10-06
EP1583024A2 (en) 2005-10-05
DE602005019338D1 (de) 2010-03-25
EP1967985B1 (en) 2012-10-10
EP1967985A3 (en) 2008-10-08
EP1967985A2 (en) 2008-09-10
EP1583024B1 (en) 2008-12-31
EP1967986A1 (en) 2008-09-10
US7657085B2 (en) 2010-02-02

Similar Documents

Publication Publication Date Title
JP4482796B2 (ja) 情報処理装置および方法、記録媒体、並びにプログラム
JP4517633B2 (ja) 対象物検出装置及び方法
JP5025893B2 (ja) 情報処理装置および方法、記録媒体、並びにプログラム
JP4556891B2 (ja) 情報処理装置および方法、記録媒体、並びにプログラム
JP4553044B2 (ja) 集団学習装置及び方法
JP4234381B2 (ja) 顔の特徴を位置確認するための方法及びコンピュータープログラム製品
EP1934941B1 (en) Bi-directional tracking using trajectory segment analysis
JP2008117391A (ja) デジタル画像における顔を検出する方法、およびデジタル画像における顔を検出する装置
JP2006318341A (ja) 検知対象画像判定装置、検知対象画像判定方法および検知対象画像判定プログラム
JP2009140369A (ja) 集団学習装置及び集団学習方法、対象物検出装置及び対象物検出方法、並びにコンピュータ・プログラム
JP4749884B2 (ja) 顔判別装置の学習方法、顔判別方法および装置並びにプログラム
JP2011170890A (ja) 顔検出方法および装置並びにプログラム
Abdullah-Al-Wadud et al. Skin segmentation using color distance map and water-flow property
Ramirez et al. Face detection using combinations of classifiers

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100201

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100225

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100310

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140402

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250