JP4891197B2 - 画像処理装置および画像処理方法 - Google Patents

画像処理装置および画像処理方法 Download PDF

Info

Publication number
JP4891197B2
JP4891197B2 JP2007285403A JP2007285403A JP4891197B2 JP 4891197 B2 JP4891197 B2 JP 4891197B2 JP 2007285403 A JP2007285403 A JP 2007285403A JP 2007285403 A JP2007285403 A JP 2007285403A JP 4891197 B2 JP4891197 B2 JP 4891197B2
Authority
JP
Japan
Prior art keywords
weak
branch destination
discriminator
branch
image processing
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.)
Expired - Fee Related
Application number
JP2007285403A
Other languages
English (en)
Other versions
JP2009116401A (ja
Inventor
貴久 山本
政美 加藤
嘉則 伊藤
克彦 森
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.)
Canon Inc
Original Assignee
Canon Inc
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
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2007285403A priority Critical patent/JP4891197B2/ja
Priority to US12/262,052 priority patent/US8401313B2/en
Publication of JP2009116401A publication Critical patent/JP2009116401A/ja
Application granted granted Critical
Publication of JP4891197B2 publication Critical patent/JP4891197B2/ja
Priority to US13/759,129 priority patent/US8885930B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • 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

Description

本発明は、木構造に配置された弱判別器を用いて画像データを処理する画像処理装置に関するものである。
近年、統計的学習法の進展により、画像データ中の対象オブジェクトを検出する画像処理手法として、様々な実用的な手法が提案されている。特に対象オブジェクトを人間の顔部分とする顔検出処理の場合、検出結果について様々な応用が考えられることから、特に研究開発が進められている。
例えば、非特許文献1では、AdaBoost等のアンサンブル学習を用いて、矩形特徴と呼ばれる極めて単純な特徴量を選択し、それらを組み合わせることで、正面向きの顔検出を実現する手法が提案されている。非特許文献1によれば、検出途中で明らかに顔でないものについては、検出処理を途中で打ち切る処理を入れることで、高速な顔検出処理を実現している。
更に、正面向きのみならず、任意方向の向きの顔検出(複数種類の顔検出)についても種々の提案がなされている。例えば、非特許文献2では、顔の向きごとに検出器を構成する手法が開示されている。
また、非特許文献3では、顔の向きを識別する識別器と、特定の顔の向きを対象として顔検出を行う検出器とを備える構成が開示されている。同文献によれば、まず識別器により顔の向きを決定することで、該顔の向きを対象とする検出器を選択し、該選択された検出器を用いて顔検出を行うことで、任意方向の顔検出処理を実現することとしている。
更に、非特許文献4や特許文献1では、全方向の向きの顔を検出できる検出器を配し、該検出器から処理を開始したのち、特定の顔の向き用の検出器へと枝分かれしていく構造(木構造)とすることにより、任意方向の向きの顔検出を実現することとしている。
特開2005−284487号公報 Viola,M.Jones,"Rapid Object Detection using a Boosted Cascade of Simple Features",Proc.IEEE Conf.on Computer Vision and Pattern Recognition,Vol.1,pp.511−518, December 2001. B.Wu,H.Ai,C.Huang,and S.Lao,"Fast Rotation Invariant Multi−View Face Detection Based on Real AdaBoost,"Proc.Sixth Int’l Conf.Automatic Face and Gesture Recognition,pp.79−84,2004. M.Jones and P.Viola,"Fast Multi−View Face Detection,"Mitsubishi Electric Research Laboratories TR2003−96,July 2003. C.Huang,H.Z.Ai,Y.Li,and S.H.Lao,"Vector Boosting for Rotation Invariant Multi−View Face Detection,"Proc.10th IEEE Int’l Conf.Computer Vision,2005.
しかしながら、任意方向の向きの顔検出(複数種類の顔検出)を行う上記特許文献1や非特許文献2乃至4の場合、顔検出の処理速度に関してそれぞれ以下のような課題を有する。
例えば、特許文献1の場合、木構造の分岐ノードにおいて分岐先を選択するにあたっては、分岐先を順に選択していくこととしている。具体的には、分岐先で葉ノード(終端ノード)まで到達した場合に、当該処理対象の画像データを、“該分岐先が担当する方向を向いた顔”であると判断し、当該画像データについての該検出処理を終了する。一方、分岐先において途中で処理が打ち切られた場合には、分岐ノードに戻って他の分岐先を順に選択する。
このように、分岐ノードは何らかの基準に基づいて分岐先を選んでいるのではなく、分岐先にラベリングされた順番に従って処理を実行していく。
このため、処理順序が後ろの方にラベリングされた分岐先が担当する方向を向いた顔を検出する場合にあっては、当該分岐先に至るまでに何度も分岐先の選択に失敗することとなる(何度も分岐先において処理が途中で打ち切られることとなる)。この結果、当該分岐先の葉ノードに到達するまでには多大な処理時間を要することとなる。
一方、非特許文献2の場合、顔の向きごとに用意された複数の検出器を使用して、任意方向の向きの顔検出を行う構成となっている。このときの顔検出の手順としては、まず全ての検出器が処理を少しだけ行うことで、全検出器の確信度を推定し、推定した確信度の大きさに基づいて検出器の選択が行われる。その後、選択された検出器に対して残りの処理を行い、顔/非顔の判別を行う。
従って、非特許文献2の場合、常に全検出器を動作させる必要がなく、特定検出器のみを動作させればよいことから、処理時間の短縮を図ることができるという利点がある。
しかしながら、非特許文献2の場合、検出用のサブウィンドウを処理対象となる画像データ内でスキャンさせる毎に、全検出器の確信度を推定しなければならない。一般的に画像データ中の大部分の領域からは顔が検出されることがないため、そのような領域でも全検出器の確信度を推定しなければならないことは効率的とは言えない。
また、非特許文献3の場合には、特定の顔の向きを対象とする検出器が処理を行う前に、予め顔の向きを識別する識別器を動作させておく必要がある。このため、顔の向きを識別する識別器を動作させるための処理時間を確保しておく必要がある。また、非特許文献2の場合と同様に、検出用のサブウィンドウを処理対象の画像データ内でスキャンさせる毎に顔の向きを識別する識別器を動作させる必要があり、効率的とは言えない。
更に、非特許文献4の場合、木構造の分岐ノードにおける分岐先を選択する手順として、Vector Boostingという枠組みを考案している。当該枠組みによれば、通常スカラー値で算出される信頼度を、分岐先に対応する要素からなるベクトル値で算出し、分岐先を決定することとしている(ベクトルの各要素の値が閾値を越える方向を分岐方向としている)。
しかしながら、当該方法の場合、通常のAdaBoostを用いた検出器と比較して、検出時の演算量が多大になるという問題がある。つまり、通常スカラー値で算出している値を、ベクトル値で算出するため、そのベクトルの次元分だけ演算量が増大することとなる。
また、非特許文献4の場合も、検出用のサブウィンドウを処理対象となる画像データ内でスキャンさせる毎に、Vector Boostingに基づく選択処理を行わなければならない。このため、非特許文献2、3と同じく、顔が検出されないような領域においても、選択処理が実行されることとなり、効率的とは言えない。
以上のように、任意方向の向きの顔検出を行うことが可能な特許文献1ならびに非特許文献2乃至4の場合には、
・顔の向きに対応する検出器を選択するまでの処理においてオーバーヘッドが大きい。
・顔の向きに対応する検出器を選択するための処理を実行する回数が多い。
という課題がある。このため、画像データ中の複数種類の対象オブジェクトの検出にあたっては、このような課題を克服し、処理速度の向上を図ることが望まれている。
本発明は上記課題に鑑みてなされたものであり、画像データ中の複数種類のオブジェクトを、高速に検出することを目的とする。
上記の目的を達成するために本発明に係る画像処理装置は以下のような構成を備える。即ち、
画像データに含まれる複数種類のオブジェクトを検出するために、該オブジェクトの種類に対応した分岐数を有する木構造により、複数の弱判別器を配置可能な画像処理装置であって、
前記弱判別器は、
前記画像データ内に前記オブジェクトが含まれているか否かを判別するための評価値の算出に用いられる特徴量を算出する算出手段と、
分岐点として機能する場合に、各分岐先に含まれる弱判別器において算出された前記特徴量の少なくとも一部を用いて、分岐先を選択する選択手段とを備える。
本発明によれば、画像データ中の複数種類のオブジェクトを、高速に検出することが可能となる。
以下、図面を参照しながら各実施形態の詳細について説明する。なお、以下の実施形態では、対象オブジェクトを処理対象とする弱判別器からスタートし、次第に特定の対象オブジェクト群だけを処理対象とする弱判別器へと分岐していくように、弱判別器が木構造に配置された画像処理装置について説明する。
[第1の実施形態]
1.画像処理装置のハードウェア構成
図1は、本発明の第1の実施形態に係る画像処理装置100のハードウエア構成を示すブロック図である。図1において、101はCPU(中央演算装置)で、後述する画像処理方法を実現するための検出処理プログラム110に従って、処理を実行する。
102はプログラムメモリであり、CPU101により実行される検出処理プログラム110が記憶されている。103はRAMであり、CPU101による検出処理プログラム110の実行時に、各種情報を一時的に記憶するためのメモリを提供している。
104はハードディスクであり、画像データや弱判別器のパラメータなどを保存するための記憶媒体である。105はディスプレイであり、検出処理プログラム110による処理結果をユーザに表示する。106は、これら各部(102〜105)とCPU101とを接続する制御バス・データバスである。
このような構成のハードウエアを用いることにより、本発明にかかる画像処理方法を実行することができる。
なお、画像処理装置100は、本発明にかかる画像処理方法をCPU101の処理によって実現することとしているが、本発明はこれに限られず、CPU101における処理の一部を専用ハードウエアに置き換えて実現するようにしてもよい。
2.検出処理プログラムのモジュール構成
図2は検出処理プログラム110のモジュール構成を示す図である。図2に示すように、検出処理プログラム110は、モジュールである弱判別器が、対象オブジェクトの種類に対応する分岐数を有する木構造で形成するように配置された構成となっている。
なお、検出処理プログラム110が実行されることにより検出される対象オブジェクトは、特に制限されるものではないが、本実施形態及び以降の実施形態では、人間の顔部分を対象オブジェクトとして説明することとする。
そして、検出処理プログラム110では、対象オブジェクトである顔部分を、右向き(分類1)、正面向き(分類2)、左向き(分類3)の3つの種類に分類して出力するものとする。
すなわち、検出処理プログラム110における弱判別器の木構造は、全ての種類のオブジェクトを処理対象とする弱判別器からスタートし、次第に特定の種類(正面向き、右向き、左向き)の対象オブジェクトだけを処理対象とする弱判別器へと分岐していく。
検出処理プログラム110において、弱判別器200〜弱判別器203は、全種類(正面向き、右向き、左向きの顔)の対象オブジェクトを処理対象とする弱判別器である。
弱判別器204−A〜弱判別器208−Aは、分類1(右向きの顔)の対象オブジェクトを処理対象とする弱判別器である。
弱判別器204−B〜弱判別器208−Bは、分類2(正面向きの顔)の対象オブジェクトを処理対象とする弱判別器である。
弱判別器204−C〜弱判別器208−Cは、分類3(左向きの顔)の対象オブジェクトを処理対象とする弱判別器である。
各弱判別器には、その弱判別器を規定するパラメータとして、「特徴量算出パラメータ」、「判定閾値」、「信頼度重み」、「打ち切り閾値」が決められており、各弱判別器は、これらのパラメータを用いて処理を行う(処理の詳細は後述)。なお、図2では、簡略化のため、弱判別器200のパラメータのみを記載し、弱判別器200以外のパラメータは図示されていないが、実際は全ての弱判別器においてパラメータが決められているものとする。
3.検出処理プログラムにおける処理の流れ
次に検出処理プログラム110における処理の流れについて図3を用いて説明する。ステップS300にて検出処理プログラム110が実行されると、ステップS301では、処理対象の画像データのうち、処理ウィンドウに含まれる画像データを読み出す。
図6は、処理対象の画像データ600の一例を示す図である。図6に示すように、検出処理プログラム110が画像データ600を処理するにあたっては、処理ウィンドウ601をスキャンさせ、各移動先の処理ウィンドウ601内に含まれる画像データを読み出すことで、該画像データ単位で、処理を実行するものとする。
図3に戻る。続いてステップS302では、処理ウィンドウ601内の画像データを、弱判別器に入力し、規定された処理を実行する(弱判別器内で行われる処理の詳細に関しては図4を用いて後述する)。
ステップS303では、ステップS302で行われた弱判別器の処理において、打ち切り指示が行われたか否かを判断する(打ち切り指示についての説明は図4に示すフローチャートの説明の際にあわせて行う)。
ステップS303において打ち切り指示が行われていたと判断された場合には、ステップS306に移り、処理ウィンドウ601の現在の位置における検出処理プログラム110の処理は終了する。この場合、処理ウィンドウ601の現在の位置においては、その弱判別器が配置された分岐先において、検出されるべき対象オブジェクトが検出されなかったと判断する。
一方、ステップS303において打ち切り指示が行われていないと判断された場合には、ステップS304に移る。ステップS304では、ステップS302で処理した弱判別器が検出処理プログラム110内の最後の弱判別器(木構造の葉の位置にある弱判別器)か否かを判断する。
最後の弱判別器であると判断された場合には、ステップS307に移り、処理ウィンドウ601の現在の位置における検出処理プログラム110の処理は終了する。この場合、現在の処理ウィンドウ601の位置においては、その弱判別器が配置された分岐先において、検出されるべき対象オブジェクトが検出されたと判断する。
一方、最後の弱判別器でないと判断された場合には、ステップS305において、次に処理を実行すべき弱判別器を選択し(弱判別器の選択の方法に関しては後述する)、ステップS302へ戻り、選択された次の弱判別器が処理を実行する。
このように検出処理プログラム110では、弱判別器内の処理の実行結果として打ち切り指示がなされるか、最後の弱判別器での処理が実行されるまで、次に処理が実行されるべき弱判別器を選択する。そして、選択された弱判別器では、規定された処理を実行する。
なお、図3には図示していないが、ステップS306、S307で処理を終了すると、処理ウィンドウ601を1つスキャンさせ、ステップS300から処理を再開する。
4.弱判別器内での処理
続いて、図3のステップS302に示す、各弱判別器内での処理の詳細について説明する。
図4は、各弱判別器内での処理の流れを示すフローチャートである。本実施形態における各弱判別器での処理は、基本的に非特許文献1に記載されている処理と同じである。
この場合、各弱判別器を規定しているパラメータは、AdaBoostと呼ばれるアンサンブル学習手法によって決定される。なお、ここでいうパラメータとは、上述したように「特徴量算出パラメータ」、「判定閾値」、「信頼度重み」、「打ち切り閾値」等である。
ただし、本実施形態における各弱判別器での処理は、非特許文献1に記載されている処理に限られるものではない。また、各弱判別器を規定しているパラメータは、AdaBoostと呼ばれるアンサンブル学習手法により決定されたものに限られるものでもない。
図4のステップS400において、弱判別器での処理が開始されと、ステップS401では、「特徴量算出パラメータ」に基づいて特徴量を求める。なお、ステップS401では、読み出された処理ウィンドウ601内の画像データを構成する各画素値に対して、フィルタ演算することにより得られたフィルタ値を正規化した値を特徴量として出力する。
なお、ここではフィルタ演算として、非特許文献1に示されている矩形フィルタ演算を行うものとする。図6の602は矩形フィルタの一例である。処理ウィンドウ601内において、白塗りされた領域の画素値の総和から黒塗りされた領域の画素値の総和を引くことで、フィルタ値が算出される。
なお、画素値の総和を高速に求めるために、非特許文献1に示されるようにインテグラルイメージを用いてもよい。また、フィルタ値の正規化は、処理ウィンドウ601内の所定領域の画素値の平均と標準偏差とを用いて行う。この場合、フィルタ演算で設定する矩形領域の位置や大きさ、フィルタ係数値(+1か−1か)が、特徴量算出パラメータとなる。
続いてステップS402において、ステップS401で求めた特徴量を判定閾値と比較して判定結果を出力する。すなわち、判定結果は、特徴量と判定閾値との大小を比較した結果である。本実施形態では、特徴量が判定閾値以上であれば+1を、そうでなければ−1を判定結果として出力する。
ステップS403において、ステップS402の判定結果と信頼度重みから評価値を算出する。本実施形態では、判定結果と信頼度重みとの乗算結果を評価値とする。
さらにステップS404において、自身を含むこれまでの弱判別器が出力した評価値を累積した累積評価値を算出する。ただし、弱判別器200においては、出力した評価値を累積評価値とする。
ステップS405では、ステップS404で算出された累積評価値と打ち切り閾値とを比較する。ステップS405において、累積評価値が打ち切り閾値未満であると判定された場合には、ステップS406に進み、打ち切り指示を出した後、ステップS407で処理を終了する。
一方、ステップS405において、累積評価値が打ち切り閾値以上であると判定された場合には、ステップS407に進み、打ち切り指示を出すことなく処理を終了する。ステップS406で出された打ち切り指示は、図3のステップS303の判断において使用される。
なお、非特許文献1では、ステップS405の処理に基づく打ち切り指示は、複数の弱判別器から構成される強判別器単位で行う構成としているが、本発明は、そのような構成に対しても適用可能である(詳細は第4の実施形態参照)。
5.弱判別器における選択処理
続いて、図3のステップS305に示す、各弱判別器内の選択処理の詳細について説明する。
図5は、図2に示すように木構造に弱判別器が配置された場合において、次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。
図5のステップS500において弱判別器の選択処理が開始されると、ステップS501では、次に実行されるべき弱判別器の候補(弱判別器候補、即ち、現在処理を実行中の判別器の下位層に直接接続された他の弱判別器)が複数あるか否かを調べる。図2の例では、例えば弱判別器200の次に実行されるべき弱判別器の候補は弱判別器201のみであるのに対し、弱判別器203の次に実行されるべき弱判別器の候補は弱判別器204−A、弱判別器204−B、弱判別器204−Cの3つである。
ステップS501において弱判別器候補が1つしかないと判断された場合には、ステップS502に進み、当該1つの弱判別器候補が次に実行されるべき弱判別器として選択される。一方、ステップS501において弱判別器候補が複数あると判断された場合には、ステップS503に進む。
本発明では、次に実行されるべき弱判別器の候補を先頭としてそれぞれの分岐先に配置された弱判別器のうちの一部の弱判別器(「選択処理対象弱判別器」)が算出する特徴量を利用することで、分岐点として機能する弱判別器が、分岐先を選択する。
ステップS503では、分岐先毎に配置された選択処理対象弱判別器の処理を行う。処理の内容は、図4を用いて上述した通りであり、最終的に累積評価値を算出する。選択処理対象弱判別器は、分岐先毎に配置されているので、分岐先の数だけ累積評価値が算出されることとなる。
ステップS504では、ステップS503で算出された累積評価値の比較を行い、最大の累積評価値を算出した選択処理対象弱判別器を特定する。さらに特定された選択処理対象弱判別器が配置された分岐先を選択する。
続いてステップS505において、選択された分岐先の先頭に配置された弱判別器を次に実行されるべき弱判別器として選択する。
6.検出処理プログラムの動作例
続いて、図2にモジュール構成が示された検出処理プログラム110が、実際にどのような手順で処理が実行されていくのかを、図3〜5を参照しながら、具体例をもって説明する。
図2にてモジュール構成が示された本実施形態の検出処理プログラム110では、弱判別器203が分岐点として機能する(3分岐)。弱判別器204−A〜208−Aが配置されている分岐先を分岐A、弱判別器204−B〜208−Bが配置されている分岐先を分岐B、弱判別器204−C〜208−Cが配置されている分岐先を分岐Cと呼ぶことにする。
以下に、検出処理プログラム110において実行される手順を、動作例1〜3にわけて説明する。
6.1 動作例1(打ち切り指示なしの場合)
動作例1として、分岐先の最後の弱判別器に到達するまで打ち切り指示が出力されなかった場合の動作を説明する(なお、途中で打ち切り指示が出力される場合の動作は、動作例2で説明する)。
処理ウィンドウ601内の画像データの各画素値が入力されると、はじめに弱判別器200の処理が実行される(ステップS302)。弱判別器200では、打ち切り指示が出力されないため、ステップS303において打ち切り指示なしと判断され、ステップS304に進む。また、弱判別器200は最後の弱判別器ではないため、ステップS305に進み、選択処理が開始される。
ここで弱判別器200の下位層に配置された弱判別器は、弱判別器201のみであるため、ステップS501では、次の弱判別器候補が複数ないと判断され、ステップS502に移行する。そして、弱判別器201が次に実行されるべき弱判別器として選択される。
次に実行されるべき弱判別器として選択された弱判別器201では、処理ウィンドウ601内の画像データの各画素値について処理を実行し、弱判別器200の場合と同様に処理が進行した結果、次に実行されるべき弱判別器として弱判別器202が選択される。
次に実行されるべき弱判別器として選択された弱判別器202では、処理ウィンドウ601内の画像データの各画素値について処理を実行し、弱判別器200の場合と同様に処理が進行した結果、次に実行されるべき弱判別器として弱判別器203が選択される。
次に実行されるべき弱判別器として選択された弱判別器203では、処理ウィンドウ601内の画像データの各画素値について処理を実行し、弱判別器200の場合と同様に処理が進行する。ただし、弱判別器203の場合、次に実行されるべき弱判別器の候補として、弱判別器204−A、弱判別器204−B、弱判別器204−Cの3つの弱判別器がある。このため、ステップS501では、弱判別器候補が複数あると判断され、ステップS503に移行する。
ステップS503では、分岐先毎に配置された選択処理対象弱判別器が処理を実行する。ここでは、弱判別器204−A、弱判別器204−B、弱判別器204−Cのそれぞれが、図4の処理を実行し、最終的にそれぞれが累積評価値を算出する。
ステップS504では、ステップS503で算出された累積評価値の比較を行い、最大の累積評価値を算出した選択処理対象弱判別器を特定する。ここでは弱判別器204−Bが最大の累積評価値を出力したとする。このため、弱判別器204−Bが配置された分岐Bを分岐先として選択する。
続いてステップS505では、選択された分岐Bの先頭に配置された弱判別器204−Bが次に実行されるべき弱判別器として選択される。なお、弱判別器204−Bの処理は、既に選択処理の際に1回実行されているため、そのときの処理結果(打ち切り指示の有無、累積評価値の値)を記憶しておけば、再度弱判別器204−Bが処理を実行する必要はない。
従って、ステップS505では、弱判別器204−Bをスキップして弱判別器205−Bが次に実行されるべき弱判別器として選択される(もちろん弱判別器204−Bが再度処理を実行してから弱判別器205−Bが処理を実行するようにしても良い)。
続いて弱判別器205−B以降の弱判別器に対して、弱判別器200〜202の場合と同様の処理が実行され、それぞれ次の(図2の場合は右隣の)弱判別器が次に実行されるべき弱判別器として選択される。
上述のように、動作例1では最後の弱判別器に到達するまで打ち切り指示は出力されない。このため、弱判別器208−Bの処理が実行されると、ステップS307では、対象オブジェクト(正面向きの顔)を検出したとして、現在の処理ウィンドウ601内の画像データに対する検出処理プログラム110の検出処理を終了する。
一般的に、AdaBoost等のBoosting学習手法を用いて弱判別器を学習させ、弱検出器を配置した場合、累積評価値は各弱判別器を信頼度で重み付けして多数決をとったものとみなすことができる。従って、累積評価値の大小に基づいて分岐先を選択すれば、対象オブジェクトを検出するのに最も適した分岐先を選択することができる。
以上のように、検出処理プログラム110によれば、弱判別器203から弱判別器204−Bへの選択処理において、選択処理のための特別な処理を行っていない。つまり、選択処理対象弱判別器においても、分岐に関係ない他の弱判別器で行われる処理内容と同様の処理が実行され、処理結果として算出された値(累積評価値)の大小を比較して選択処理が行われる。従って、選択処理のための特別な仕組みは不要となり、演算量の削減、つまり処理時間の短縮が実現可能となる。
6.2 動作例2(打ち切り指示ありの場合)
次に動作例2として、最後の弱判別器に到達するまでの間に打ち切り指示が出力された場合の動作を説明する。一例として、弱判別器201で打ち切り指示が出力される場合の動作を説明する。
弱判別器200における処理は、上述の動作例1において説明した弱判別器200における処理と同じである。
その後、実行されるべき弱判別器として弱判別器201が選択され、ステップS302において該弱判別器201の処理が実行されると、ステップS406では、打ち切り指示が出力される。この結果、ステップS303では、打ち切り指示があったと判断され、ステップS306では、対象オブジェクトなしとして、現在の処理ウィンドウでの検出処理を終了する。
以上のように、検出処理プログラム110によれば、弱判別器を木構造に配置することにより、選択処理対象弱判別器までに配置された弱判別器において、対象オブジェクトの有無をある程度判定することが可能となる。この結果、選択処理を省くことが可能となり、処理の効率化を図ることが可能となる。
6.3 動作例3(打ち切り指示なしの場合)
次に動作例3として、分岐先の最後の弱判別器に到達するまで打ち切り指示が出力されなかった場合の動作を説明する。なお、動作例1では、選択処理対象弱判別器として204−A、204−B、204−Cが処理を実行し、累積評価値を算出することで分岐先を選択することとした。これに対して、動作例3では、選択処理対象弱判別器として204−A〜206−A、204−B〜206−B、204−C〜206−Cが処理を実行し、累積評価値を算出することで、分岐先を選択することとする。
弱判別器200、201、202の処理は、動作例1において説明した弱判別器200、201、202における処理と同じである。
その後、実行されるべき弱判別器として弱判別器203が選択され、処理が実行された後、ステップS305において、次に実行されるべき弱判別器を選択する選択処理が行われる。このとき、弱判別器203の次に実行されるべき弱判別器の候補としては、弱判別器204−A、弱判別器204−B、弱判別器204−Cの3つの弱判別器がある。このため、ステップS503では、分岐先毎に配置された選択処理対象弱判別器がそれぞれ処理を実行する。
本動作例3では、分岐Aでは弱判別器204−A、205−A、206−Aの順にそれぞれの弱判別器が処理を実行し、累積評価値を算出する。同様に分岐Bでは弱判別器204−B、205−B、206−Bの順に、分岐Cでは弱判別器204−C、205−C、206−Cの順に、それぞれの弱判別器が処理を実行し、それぞれの分岐における累積評価値を算出する。
ステップS504では、ステップS503で算出されたそれぞれの分岐先の累積評価値の比較を行い、最大の累積評価値を算出した分岐先を選択する。具体的には、弱判別器206−Aが処理を実行することにより算出された累積評価値と、弱判別器206−Bが処理を実行することにより算出された累積評価値と、弱判別器206−Cが処理を実行することにより算出された累積評価値とを比較する。
なお、本動作例3では、弱判別器206−Bが最大の累積評価値を算出したとする。その場合、ステップS504では弱判別器206−Bが配置された分岐Bを分岐先として選択する。
続いてステップS505において、選択された分岐Bの先頭に配置された弱判別器204−Bが次に実行されるべき弱判別器として選択される。しかしながら、本動作例3の場合、弱判別器204−B、205−B、206−Bの処理は、既に、選択処理中に(ステップS504において)実行されている。従って、選択処理中に行った各弱判別器の実行結果(打ち切り指示の有無、累積評価値)を記憶しておけば、再度弱判別器204−B、205−B、206−Bが処理を実行する必要はない。
従って、ステップS505においては、弱判別器204−B、205−B、206−Bをスキップして、弱判別器207−Bが次に実行されるべき弱判別器として選択される。
続いて弱判別器207−B以降の弱判別器に対して、弱判別器200〜202と同様の処理が実行され、それぞれ次の(右隣の)弱判別器が次に実行されるべき弱判別器として選択される。
なお、本動作例3では、最後の弱判別器208−Bに到達するまで打ち切り指示は出力されない。このため、弱判別器208−Bの処理が実行されると、ステップS307では対象オブジェクト有り(正面向きの顔を検出した)として、現在の処理ウィンドウでの検出処理を終了する。
上述のように、AdaBoost等のBoosting学習手法を用いて弱判別器を学習させ、弱判別器を配置した場合、累積評価値は各弱判別器を信頼度で重み付けして多数決をとったものとみなすことができる。従って、累積評価値の大小に基づいて分岐先を選択すれば、対象オブジェクトを検出するのに最も適した分岐先を選択することができる。
さらに、累積評価値を算出するのに多くの弱判別器を用いれば用いるほど、累積評価値の信頼性が増す。従って、選択処理に際して、各分岐先の先頭の弱判別器の累積評価値のみを算出した動作例1に比べて、各分岐先の先頭から3つの弱判別器の累積評価値を算出する動作例3の方が、高い信頼性で、分岐先を選択することが可能となる。
以上のように、動作例1〜3のいずれの場合においても、本実施形態によれば、画像データ中の複数種類の対象オブジェクトを、高速に検出することが可能となる。
[第2の実施形態]
上記第1の実施形態では、選択処理において、各分岐先において算出された累積評価値を比較することにより、分岐先を選択することとしたが、本発明はこれに限られない。例えば、分岐先の各弱判別器のうち、算出される特徴量が所定の閾値以上となる弱判別器の数を、分岐先ごとに比較することにより、分岐先を選択するようにしてもよい。
1.弱判別器における選択処理
図7は、本実施形態に係る画像処理装置において、次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。なお、説明の簡略化のため、ここでは、図5と異なる点について説明する。
ステップS500〜S503の処理は、図5の対応するステップと同じ処理である。
ステップS704では、分岐先の各弱判別器の処理を実行することにより算出された特徴量が判定閾値以上であるか否かを判断する。そして、分岐先ごとに、算出された特徴量が判定閾値以上となる弱判別器の数をカウントし、それらを比較する。その結果、算出された特徴量が判定閾値以上となる弱判別器の数が最も多く含まれる分岐先を選択する。
ステップS505では、ステップS704において選択された分岐先の先頭に配置された弱判別器を、次に実行されるべき弱判別器として選択する。
2.検出処理プログラム110の動作例
続いて、本実施形態における検出処理プログラム110において実行される具体的な動作例を説明する。
弱判別器200〜202における処理は、上記第1の実施形態における動作例3と同様である。
その後、実行されるべき弱判別器として弱判別器203が選択され、処理が実行された後、ステップS305において、次に実行されるべき弱判別器を選択する選択処理が行われる。このとき、弱判別器203の次に実行されるべき弱判別器の候補としては、弱判別器204−A、弱判別器204−B、弱判別器204−Cの3つの弱判別器がある。このため、ステップS503に移行する。
ステップS503では、分岐先毎に配置された選択処理対象弱判別器が処理を実行する。従って、本動作例の場合、分岐Aでは弱判別器204−A、205−A、206−Aの順に各弱判別器が処理を実行する。つまり、ステップS401において特徴量を算出し、ステップS402において、該特徴量と判定閾値とを比較して判定結果を算出する。更に、ステップS404において、累積評価値を算出する。同様に分岐Bでは弱判別器204−B、205−B、206−Bの順に、分岐Cでは弱判別器204−C、205−C、206−Cの順に、各弱判別器が処理を実行し、それぞれの分岐における判定結果を出力し、累積評価値を算出する。
その後、ステップS704では、ステップS503において出力された判定結果に基づいて分岐先の選択を行う。具体的には、分岐先毎に、ステップS503において特徴量≧判定閾値と判断した弱判別器の数をカウントし、その数が最も多い分岐先を選択する。
例えば、分岐Aでは、弱判別器204−A、205−Aの処理において、特徴量≧判定閾値と判断されたとする(弱判別器206−Aの処理においては、特徴量<判定閾値と判断されたとする)。
同様に分岐Bでは、弱判別器204−B、205−B、205−Cの処理において、特徴量≧判定閾値と判断されたとする。さらに分岐Cでは、弱判別器204−C、205−Cの処理において、特徴量≧判定閾値と判断されたとする(弱判別器206−Cの処理においては、特徴量<判定閾値と判断されたとする)。
このような場合、特徴量≧判定閾値と判断された弱判別器の数は、分岐A=2、分岐B=3、分岐C=2となるため、分岐Bが分岐先として選択される。
続いてステップS505において、選択された分岐Bの先頭に配置された弱判別器204−Bが次に実行されるべき弱判別器として選択される。
ここで、本動作例の場合、弱判別器204−B、205−B、206−Bでは、選択処理中に、既に処理を実行済みである。従って、選択処理中に行った処理結果(打ち切り指示の有無、累積評価値の値)を記憶しておけば、再度、弱判別器204−B、205−B、206−Bの処理を実行する必要はない。従って、ステップS505においては、弱判別器204−B、205−B、206−Bをスキップして弱判別器207−Bが次に実行されるべき弱判別器として選択される。
続いて弱判別器207−B以降の弱判別器に対して、弱判別器200〜202と同様の処理が行われ、それぞれ次の(右隣の)弱判別器が次に実行されるべき弱判別器として選択される。
本動作例では、最後の弱判別器に到達するまで打ち切り指示は出力されないので、弱判別器208−Bが処理を実行すると、ステップS307では対象オブジェクト有り(正面向きの顔を検出した)として、現在の処理ウィンドウでの検出処理を終了する。
以上のように、本実施形態では、選択処理における選択指標として累積評価値を用いるのではなく、所定の条件を具備する判定結果を出力する弱判別器の数(特徴量≧判定閾値と判断した弱判別器の数)を用いる構成とした。これにより、本実施形態の場合、各弱判別器に付与されている信頼度を使用することなく、選択処理を実行することが可能となる。
一般に、分岐先の弱判別器(例えば、分岐Aに配置された弱判別器204−A〜208−A)は、分岐ごとにアンサンブル学習により学習されるが、その学習の難易度は、一般的に分岐先毎に異なる。また当然のことながら、学習に際して必要となる学習用データも分岐先毎に異なる。
従って、分類しようとする内容(本実施形態では、正面顔、右向き顔、左向き顔に分類)によっては、学習の結果として生成される信頼度の値(或いは、信頼度を用いて算出される累積評価値)を分岐先間で比較するのは不適切な場合もある。
そのような場合に、本実施形態のように累積評価値ではなく、特徴量≧判定閾値と判断した弱判別器の数を用いて分岐先を選択することは有効である。
また、その他の選択処理として、各分岐の累積評価値を何らかの手法を用いて正規化したうえで、比較を行い、分岐先を選択するようにしてもよい。
[第3の実施形態]
上記第1の実施形態では、選択処理において、各分岐先において算出された1または複数の弱判別器の累積評価値を比較することにより、分岐先を選択することとしたが、本発明はこれに限られない。例えば、分岐先ごとに予め選択閾値を設定し、いち早く累積評価値が選択閾値を上回った分岐先を選択するように構成してもよい。
1.弱判別器における選択処理
図8は、本実施形態に係る画像処理装置において、次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。なお、説明の簡略化のため、ここでは、図5と異なる点について説明する。
ステップS500〜ステップS502の処理は、図5の対応するステップと同じ処理である。
ステップS501において、次に実行されるべき弱判別器の候補が複数あると判定された場合には、ステップS803に進む。
ステップS803では、各分岐先に配置された選択処理対象弱判別器のうちの先頭の選択処理対象弱判別器(弱判別器204−A、204−B、204−C)が処理を実行して累積評価値を算出する(処理の内容は図4参照)。
ステップS804では、分岐先ごとにあらかじめ設定されている選択閾値とステップS803で算出した累積評価値とを比較し、選択閾値を超えた累積評価値を算出した選択処理対象弱判別器があるか否かを調べる。
ステップS804において、選択閾値を超えた累積評価値を算出した選択処理対象弱判別器があると判定された場合には、ステップS805において、その選択処理対象弱判別器が配置された分岐先を選択する。
一方、ステップS804において、選択閾値を超えた累積評価値を算出した選択処理対象弱判別器がないと判定された場合には、ステップS806に進む。
ステップS806では、各分岐先において、次に配置された選択処理対象弱判別器(弱判別器205−A、205−B、205−C)が処理を実行し、累積評価値を算出する。その後、ステップS804に戻る。
このように図8に示された選択処理を行うことにより、最初に選択閾値を超える累積評価値を算出した選択処理対象弱判別器が配置された分岐先が選択されることとなる。
2.検出処理プログラムの動作例
続いて、本実施形態における検出処理プログラム110において実行される具体的な動作例を説明する。
弱判別器200、201、202における処理は、上記第1の実施形態における動作例3と同様である。
その後、実行されるべき弱判別器として弱判別器203が選択され、処理が実行されると、ステップS305では、次に実行されるべき弱判別器の候補として、弱判別器204−A、弱判別器204−B、弱判別器204−Cの3つがあると判断される。この結果、ステップS803に移行する。
ステップS803では、分岐先毎に配置された選択処理対象弱判別器の先頭の選択処理対象弱判別器(弱判別器204−A、204−B、204−C)が処理を実行する。
つまり、分岐Aでは弱判別器204−Aが図4に示す処理を実行し、累積評価値を算出する。同様に分岐Bでは弱判別器204−Bが、分岐Cでは弱判別器204−Cがそれぞれ図4に示す処理を実行し、それぞれの分岐先における累積評価値を算出する。
その後、ステップS805において、各分岐先にあらかじめ設定されている選択閾値と、分岐先ごとに算出された累積評価値とを比較する。ここで本動作例では、弱判別器204−A、弱判別器204−B、弱判別器204−Cのいずれの弱判別器が算出した累積評価値も、選択閾値を超えなかったとする。
このため、ステップS806において、分岐先ごとに次の選択処理対象弱判別器を選択する。つまり、分岐Aでは弱判別器205−Aを、分岐Bでは弱判別器205−Bを、分岐Cでは弱判別器205−Cをそれぞれ選択する。続いて、選択された各弱判別器において累積評価値を算出する。
続いて、ステップS804において、各分岐先にあらかじめ設定されている選択閾値と、分岐先ごとに算出された累積評価値とを比較する。ここで本動作例では、弱判別器205−Bが算出した累積評価値が選択閾値を超えていたとする。
この結果、ステップS805では、弱判別器205−Bが配置された分岐Bを分岐先として選択する。
続いてステップS505において、選択された分岐Bの先頭に配置された弱判別器205−Bが次に実行されるべき弱判別器として選択される。しかしながら、本動作例の場合、弱判別器204−B、205−Bは、選択処理中に既に処理を実行している。従って、選択処理において実行したステップS302の処理結果(打ち切り指示の有無、累積評価値の値)を記憶しておけば、再度、弱判別器204−B、205−Bの処理を実行する必要はない。
従って、ステップS505においては、弱判別器204−B、205−Bをスキップして弱判別器206−Bが次に実行されるべき弱判別器として選択される。
続いて弱判別器206−B以降の弱判別器に対して、弱判別器200〜202と同様の処理が実行され、それぞれ次の(右隣の)弱判別器が、次に実行されるべき弱判別器として選択される。
本動作例では、最後の弱判別器に到達するまで打ち切り指示は出力されないため、弱判別器208−Bの処理が実行されると、ステップS307では検出オブジェクト有り(正面向きの顔を検出した)として、現在の処理ウィンドウでの検出処理を終了する。
上述したように、AdaBoost等のBoosting学習手法を用いて弱判別器を学習させ、弱判別器を配置した場合、累積評価値は各弱判別器を信頼度で重み付けして多数決をとったものとみなすことができる。
従って、累積評価値がある値(選択閾値)を超えた弱判別器が配置された分岐先を選択するということは、分岐先間で最も信頼性が高いものを選択するというだけではなく、絶対的な比較としても、ある程度の信頼性をもった選択を行うことができることとなる。この結果、高い信頼性で分岐先を選択することができる。
なお、選択閾値は、あらかじめ学習等の手法を用いて決定しておけばよい。また、本動作例では分岐先ごとに選択閾値を設定しているとしたが、選択閾値は、全分岐先に共通の値であってもよい。
[第4の実施形態]
上記第1〜第3の実施形態では、図2に示すモジュール構成における検出処理について説明したが、本発明にかかる画像処理装置のモジュール構成は、これに限られない。以下、図2とは異なるモジュール構成の場合における検出処理について説明する。
1.検出処理プログラム920のモジュール構成
図9は、本実施形態にかかる画像処理装置における検出処理プログラム920のモジュール構成を示す図である。図9に示すように、検出処理プログラム920は、複数の弱判別器がカスケードに接続された強判別器を備え、検出処理の打ち切り指示を、強判別器単位で行うように構成されている。
図9においては、網掛けにより示されたグループに含まれる弱判別器群により、それぞれの強判別器が構成されている。強判別器を構成する各弱判別器には、その弱判別器を規定するパラメータとして、「特徴量算出パラメータ」、「判定閾値」、「信頼度重み」が決められており、各弱判別器は、これらのパラメータを用いて処理を行う(処理の詳細は後述)。
また、各強判別器には「打ち切り閾値」が設定されている。なお、図9では、簡略化のため、弱判別器900と強判別器910のパラメータのみを記載し、弱判別器900と強判別器910以外のパラメータは図示されていないが、実際は全ての弱判別器及び強判別器においてパラメータが設定されているものとする。
本実施形態でも、第1乃至第3の実施形態と同じく対象オブジェクトは人間の顔部分であり、分岐Aでは右向きの顔を、分岐Bでは正面向きの顔を、分岐Cでは左向きの顔をそれぞれ検出するように、木構造が構成されている。
2.検出処理プログラム920における処理の流れ
図9の検出処理プログラム920は、基本的に図3に示されるフローチャートに従って検出処理を実行する。ただし、ステップS302における弱判別器内の処理は異なるため、以下、当該処理について相違点を中心に説明する。
3.弱判別器内での処理
上述のように、第1乃至第3の実施形態において示した検出処理プログラム110のモジュール構成による検出処理と、本実施形態の検出処理プログラム920のモジュール構成による検出処理との相違点は、打ち切り指示の出力のタイミングである。
検出処理プログラム110の場合、打ち切り指示を出力するか否かを各弱判別器ごとに判断することとしたが、検出処理プログラム920の場合には、打ち切り指示を出力するか否かを各強判別器ごとに行う。
図10は、本実施形態における各弱判別器内での処理の詳細を示すフローチャートである。図10のフローチャートと図3のフローチャートとの相違点は、ステップS1000に示す工程があるか否かである。このため、その他の工程については図3と同じ符号で表わし、説明を省略することとする。
図10のステップS1000では、現在処理している弱判別器が、強判別器の中の最後尾に配置された弱判別器であるか否かを判断する。強判別器内の最後尾に配置された弱判別器でなければ、ステップS407に移り、処理を終了する。
一方、最後尾に配置された弱判別器であれば、ステップS405に移行し、累積評価値と打ち切り閾値とを比較する。打ち切り閾値は、その強判別器にあらかじめ付与されているものとする。
以上のように、本実施形態によれば、強判別器単位で打ち切りを行うため、弱判別器単位で打ち切り閾値との比較を行う場合と比べ、演算量を削減することが可能となる。
[第5の実施形態]
上記第4の実施形態では、検出処理プログラム920における検出処理と検出処理プログラム110における検出処理との相違点が、弱判別器内での処理のみにあるとしたが、本発明はこれに限られず、弱判別器の選択処理に相違点があるとしてもよい。
上記第1〜第3の実施形態における選択処理では、一つの分岐先のみを選択することとしていた(例えば最大の累積評価値を出力した弱判別器が配置されている分岐先を選択することとしていた)。これに対して、本実施形態では、
・最大の累積評価値を出力した選択処理対象弱判別器が配置されている分岐先と、
・最大の累積評価値から許容値内にある累積評価値を出力した選択処理対象弱判別器が配置されている分岐先と、
を分岐先候補として選択することとする。つまり、本実施形態では、複数の分岐先が選択される可能性がある。
なお、許容値は、あらかじめ分岐先ごとに適切な値を設定しておくか、或いは全分岐先で統一した値を設定しておく。選択処理において、分岐先候補として複数の分岐先が選択された場合は、それぞれの分岐先に対して順番に処理を進めていく。以下、図11のフローチャートを用いて、本実施形態における弱判別器の選択処理の流れを説明する。
1.検出処理プログラム920における処理の流れ
図11は、本実施形態における弱判別器の選択処理の流れを示すフローチャートである。このうち、図3と同じ工程については同一の符号を割り当てることとし、説明は省略する。
図11と図3との違いは、ステップS1100、S1101、S1102、S1103に示す工程の有無である。図3の場合は、1つだけの分岐先が選択されるため、その分岐先において(あるいは分岐する前において)打ち切り指示があった判定された場合(ステップS303)には、ステップS307により処理を終了することとしていた。
これに対して、本実施形態では、必ず1つの分岐先が選択されるとは限られず(本実施形態の選択処理の詳細は、図12を用いて後述する)、複数選択される可能性がある。
ここで、選択された複数の分岐先を“分岐先候補”と呼ぶことにすると、選択された分岐先候補のうちの一つの分岐先において、打ち切り指示があったと判定された場合(ステップS303)でも、処理を終了せず、ステップS1100に進む。
ステップS1100では、他の分岐先候補がないかを調べ、他の分岐先候補がないと判定された場合には、ステップS306において処理を終了する。
一方、ステップS1100において、他の分岐先候補があると判定された場合には、ステップS1101に進み、その分岐先候補から一つの分岐先を選択する。このときの選択手法は特に問わない。
その後、ステップS1102において、ステップS1101で選択された分岐先の先頭に配置された弱判別器を、次に実行されるべき弱判別器として選択し、ステップS302に戻る。
一方、図3の場合は、ステップS303において打ち切り指示がなかったと判定され、ステップS304において最後の弱判別器であると判断された場合には、ステップS307により処理を終了することとしていた。
これに対して、本実施形態では、処理中の分岐先にとって最後の弱判別器であっても、別の分岐先候補が残っている可能性があるので、ステップS1103にてステップS1100と同じ調査を行う。
すなわち、ステップS1103において、他の分岐先候補がないかを調べ、他の分岐先候補がないと判定された場合には、ステップS307において処理を終了する。
一方、ステップS1103において、他の分岐先候補があると判定された場合には、ステップS1101に移行する。なお、このステップS1103でいずれの判断がなされた場合でも、その分岐先では最後の弱判別器まで到達しているので、その分岐先が担当する対象オブジェクトは検出されたと判断されることになる。
2.弱判別器における選択処理
続いて、図12のフローチャートにより、弱判別器における選択処理について説明する。このうち、図5と同じ工程については同一の符号を割り当てることとし、説明は省略する。
図12と図5との違いは、ステップS1200、S1204である。上述したようにステップS1204において、
・最大の累積評価値を出力した選択処理対象弱判別器が配置されている分岐先と、
・最大の累積評価値から許容値内にある累積評価値を出力した選択処理対象弱判別器が配置されている分岐先と、
を分岐先候補として選択する。
続いて、ステップS1200において、その分岐先候補の中から一つの分岐先を選択する。このときの選択手法は特に問わない。許容値は、あらかじめ適切な値を設定しておけばよい。この際、許容値として大きな値を設定すれば、複数の分岐先候補が選択される確率が高まるので、処理時間が増加する傾向になる。同時に、複数の分岐先に対して検出処理が行われるので、検出率が向上することも期待される。したがって両者のトレードオフで適切な値を設定すればよい。
3.検出処理プログラムの動作例
続いて、図9にモジュール構成が示された検出処理プログラム920が、実際にどのような手順で処理が実行されていくのかを、図10〜12を参照しながら、具体例をもって説明する。
3.1 動作例1(打ち切り指示なしの場合)
動作例1として、分岐先の最後の弱判別器に到達するまで打ち切り指示が出力されなかった場合の動作を説明する(なお、途中で打ち切り指示が出力される場合の動作は、動作例2で説明する)。
処理ウィンドウ601内の画像データの各画素値が入力されると、はじめに弱判別器900が処理を実行する(図10のステップS302)。弱判別器900では、打ち切り指示が出力されないため、ステップS303において打ち切り指示なしと判断され、ステップS304に進む。また、弱判別器900は最後の弱判別器ではないため、ステップS305に進み、選択処理が開始される。
ここで弱判別器900の下位層に配置された弱判別器は、弱判別器901のみであるため、図12のステップS501では、次の弱判別器候補は複数でないと判断され、ステップS502に移行する。そして、弱判別器901が次に実行されるべき弱判別器として選択される。
次に実行されるべき弱判別器として選択された弱判別器901では、処理ウィンドウ601内の画像データの各画素値について処理を実行し、弱判別器900の場合と同様に処理が進行した結果、弱判別器902が次に実行されるべき弱判別器として選択される。
次に実行されるべき弱判別器として選択された弱判別器902では、処理ウィンドウ601内の画像データの各画素値について処理を実行し、弱判別器900の場合と同様に処理が進行した結果、弱判別器903が次に実行されるべき弱判別器として選択される。
次に実行されるべき弱判別器として選択された弱判別器903では、処理ウィンドウ601内の画像データの各画素値について処理を実行し、弱判別器900の場合と同様に処理が進行する。ただし、弱判別器903の場合、次に実行されるべき弱判別器の候補として、弱判別器904−A、弱判別器904−B、弱判別器904−Cの3つの弱判別器がある。このため、図12のステップS501では、次の弱判別器候補が複数あると判断され、ステップS503に移行する。
ステップS503では、分岐先毎に配置された選択処理対象弱判別器が処理を実行する。即ち、弱判別器904−A、弱判別器904−B、弱判別器904−Cのそれぞれが、図9の処理を実行し、最終的にそれぞれが累積評価値を算出する。
図12のステップS1204において、ステップS503で算出された累積評価値の比較を行う。そして、最大の累積評価値を算出した選択処理対象弱判別器を特定する。同時に、最大の累積評価値から許容値内にある累積評価値を出力した選択処理対象弱判別器を特定する。
ここでは、弱判別器904−Bが最大の累積評価値を出力し、弱判別器904−Aが最大の累積評価値から許容値内にある累積評価値を出力したとする。このため、弱判別器904−Bが配置された分岐Bと、弱判別器904−Aが配置された分岐Aとを、分岐先候補として選択する。
続いてステップS1200において、その分岐先候補から一つの分岐先を選択する。ここでは、まず分岐Bを選択するとする。続いてステップS505において、選択された分岐Bの先頭に配置された弱判別器904−Bが次に実行されるべき弱判別器として選択される。
ここで、弱判別器904−Bでは、図11のステップS302の処理を、既に選択処理中に一度実行している。従って、選択処理中に行ったステップS302の処理結果(打ち切り指示の有無、累積評価値の値)を記憶しておけば、再度弱判別器904−Bの処理を実行する必要はない。
従って、図12のステップS505においては、弱判別器904−Bをスキップして弱判別器905−Bが、次に実行されるべき弱判別器として選択される。もちろん弱判別器904−Bの処理を再度実行してから弱判別器905−Bの処理に移行してもよい。
続いて弱判別器905−B以降の弱判別器に対して、弱判別器900〜902の場合と同様の処理が実行され、それぞれ次の(右隣の)弱判別器が次に実行されるべき弱判別器として選択される。
なお、本動作例1では、最後の弱判別器908−Bに到達するまで打ち切り指示は出力されないので、弱判別器908−Bの処理が実行されると、図11のステップS304において、最後の弱判別器であると判断され、ステップS1103に移行する。
ステップS1103では、他の分岐先候補がないか調べる。本動作例1の場合、他の分岐先候補として分岐Aがあるため、ステップS1101に移行する。この際、分岐Bでは最後の弱判別器まで到達したので、その分岐先が担当する対象オブジェクト(正面向きの顔)が検出されたと判断されることとなる。
ステップS1101では、残された分岐先候補が分岐Aだけであるので分岐Aを選択する。続いてステップS1102において、選択された分岐Aの先頭に配置された弱判別器904−Aが次に実行されるべき弱判別器として選択される。
しかしながら、本動作例1の場合、弱判別器904−Aは図11のステップS302の処理を、選択処理中にすでに一度実行している。従って、選択処理中に実行したステップS302の処理結果(打ち切り指示の有無、累積評価値の値)を記憶しておけば、再度弱判別器904−Aの処理を実行する必要はない。従って、ステップS1102においては、弱判別器904−Aがスキップされ、弱判別器905−Aが次に実行されるべき弱判別器として選択される。
続いて弱判別器905−A以降の弱判別器に対して、分岐Bの弱判別器905−B〜908−Bと同様の処理が実行され、それぞれ次の(右隣の)弱判別器が次に実行されるべき弱判別器として選択される。
本動作例1では、分岐Aの最後の弱判別器(弱判別器908−A)に到達するまで打ち切り指示は出力されないので、弱判別器908−Aの処理が実行されると、ステップS304において、最後の弱判別器であると判断され、ステップS1103に移行する。
ステップS1103では、他の分岐先候補がないか調べる。本動作例1の場合、残された分岐先候補はもう無いので、ステップS307にて対象オブジェクト有り(右向きの顔を検出した)として、現在の処理ウィンドウでの検出処理を終了する。
このように、動作例1では、処理ウィンドウの所定の位置において、正面向きの顔と右向きの顔の両方が、検出されたことになる。一般的に検出処理プログラムは、顔向きや、顔サイズ等の変動にある程度頑健になるように学習させているため、ある一つの対象オブジェクトが複数の分岐先で検出されることは起こりうる。
このような場合は、何らかの統合処理を行って、複数の処理結果を統合すればよい。このときの統合処理は公知のものを使用すればよい。例えば、複数の分岐先に何らかの重み付けをした結果を検出結果とすればよい。本動作例1では、正面向きの顔と右向きの顔の両方が検出されたので、両者の中間の、正面から斜め右方向を向いた顔が検出されたと判断することとする。
3.2 動作例2(打ち切り指示ありの場合)
次に動作例2として、最後の弱判別器に到達するまでの間に打ち切り指示が出力された場合の動作を説明する。一例として、弱判別器905−Aで打ち切り指示が出された場合の動作を説明する。
弱判別器900、901、902の処理は、上述の動作例1において説明した弱判別器900における処理と同じである。
その後、次に実行されるべき弱判別器として弱判別器903が選択され、ステップS302において、該弱判別器903の処理が実行されると、分岐Bと分岐Aとが、分岐先候補として選択される。続いて、当該2つの分岐先候補のうち、まず分岐Bを分岐先として選択する。
次に、弱判別器905−B以降の弱判別器に対して、弱判別器900〜902の場合と同様の処理が実行され、それぞれ次の(右隣の)弱判別器が次に実行されるべき弱判別器として選択される。
分岐Bでは、最後の弱判別器に到達するまで打ち切り指示は出されないので、弱判別器908−Bの処理が実行されると、ステップS304において、最後の弱判別器であると判断され、ステップS1103に移行する。
ステップS1103では、他の分岐先候補がないか調べる。本動作例2の場合、他の分岐先候補として分岐Aがあるため、他の分岐先候補があると判断され、ステップS1101に移行する。なお、このとき、分岐Bでは最後の弱判別器まで到達しているので、当該分岐先が担当する対象オブジェクト(正面向きの顔)が検出されたと判断されることとなる。
更にステップS1101では、残された分岐先候補が分岐Aだけであるので分岐Aを選択する。続いてステップS1102において、選択された分岐Aの先頭に配置された弱判別器904−Aが次に実行されるべき弱判別器として選択される。
しかしながら、本動作例2の場合、弱判別器904−Aは、既に選択処理中に一度処理を実行している。従って、選択処理中に実行したステップS302の処理結果(打ち切り指示の有無、累積評価値の値)を記憶しておけば、再度弱判別器904−Aが処理を実行する必要はない。従って、ステップS1102では、弱判別器904−Aがスキップされ、弱判別器905−Aが次に実行されるべき弱判別器として選択される。
続いて弱判別器905−Aにおいて処理が実行された結果、図9のステップS406において打ち切り指示が出されたとする。その場合、図11のステップS303では、打ち切り指示ありと判断され、ステップS1100に移行する。ステップS1100では、他の分岐先候補がないか調べる。本動作例2の場合、残された分岐先候補はもう無いので、ステップS306にて対象オブジェクトなし(右向きの顔は検出されず)として、現在の処理ウィンドウでの検出処理を終了する。
この結果、動作例2では、処理ウィンドウの所定の位置において、分岐先候補が複数選択されたが、最終的には正面向きの顔のみが検出されることとなる。
なお、別の動作例として、分岐Bで打ち切り指示があり、分岐Aでは打ち切り指示が無い場合や、両分岐で打ち切りがある場合等が考えられるが、これらの動作例は、本動作例の説明から容易に推測できるので省略する。
[第6の実施形態]
上記第1〜第3の実施形態では、図2に示すモジュール構成における検出処理について説明し、第4〜第5の実施形態では、図9に示すモジュール構成における検出処理プログラムの検出処理について説明した。しかし、本発明にかかる画像処理装置のモジュール構成は、これに限られない。以下、図2、図9とは異なるモジュール構成における検出処理について説明する。
1.検出処理プログラム1320のモジュール構成
図13は、本実施形態にかかる画像処理装置における検出処理プログラム1320のモジュール構成を示す図である。図13に示すように、検出処理プログラム1320では、分岐方向判別器1310が出力する分岐先判別結果に基づいて、選択処理を行う。
1310は分岐方向判別器である。分岐方向判別器1310は、選択処理対象弱判別器が算出する特徴量を入力として、分岐先の選択を行う。分岐方向判別器1310が行う分岐先の選択は、線形識別手法やSVM(Support Vector Machine)等の公知の判別処理に基づいて行えばよく、それらの識別手法に必要となるパラメータはあらかじめ学習させ、求めておくものとする。
本実施形態では、分岐Aの選択処理対象弱判別器を弱判別器1304−A、1305−A、1306−A、分岐Bの選択処理対象弱判別器を弱判別器1304−B、1305−B、1306−Bとしている。
分岐先の選択のために分岐方向判別器1310へ入力されるのは、弱判別器の処理(図4)が実行されることでで算出される特徴量であり、分岐方向判別器1310のために特別に算出するものではない。
したがって、分岐先の選択のために必要となるオーバヘッドは、弱判別器の処理とは無関係な全く新たな量を算出して分岐方向判別器1310に入力する場合と比較して、軽微なものですむ。
2.検出処理プログラム1320における処理の流れ
図13の検出処理プログラム1320は、基本的に図3に示されるフローチャートに従って検出処理を実行する。ただし、ステップS305における選択処理の内容は異なるため、以下、図14を用いて当該選択処理について相違点を中心に説明する。図14において、図5と同じ工程は同一の符号を割り当て、その説明は省略する。
図14と図5との違いは、ステップS1404である。上述したようにステップS1404では、選択処理対象弱判別器が算出する特徴量を分岐方向判別器1310に入力し、分岐方向判別器1310が出力する分岐方向判別結果に基づいて分岐先を選択する。
図13に示されたモジュール構成を有する検出処理プログラム1320が実際にどのような手順で処理が実行されていくのかは、これまでに示した動作例及び図14のフローチャートから容易に推測できるので省略する。
なお、本実施形態では、分岐方向判別器1310への入力として、各弱判別器が図3に示す処理を実行することで算出される特徴量としたが、特に特徴量に限定されるものではない。例えば、図3で算出される、判定結果、評価値、累積評価値、或いはそれらを組み合わせたものを、分岐方向判別器1310への入力としても良い。
[第7の実施形態]
上記各実施形態では、検出処理プログラムのモジュール構成として、分岐数が2乃至3の場合について説明を行ったが、本発明にかかる画像処理装置が有する検出処理プログラムの分岐数は、これに限定されるものでない。
また、上記各実施形態においては、検出処理プログラムのモジュール構成として、分岐点は1箇所の場合について説明を行ったが、本発明にかかる画像処理装置が有する検出処理プログラムが有する分岐点は1箇所に限定されるものでない。分岐先がさらに分岐するような木構造をもつモジュール構成であってもよい。
また、弱判別器の学習手法の例としてAdaBoostを示したが、これに限定されるものではない。Boosting手法には他にもいろいろな手法が提案されており、それらを使用して学習した弱判別器によって構成されるようにしてもよい。
[他の実施形態]
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給するよう構成することによっても達成されることはいうまでもない。この場合、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することにより、上記機能が実現されることとなる。なお、この場合、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
プログラムコードを供給するための記録媒体としては、例えば、フロッピ(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合に限られない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、前述した実施形態の機能が実現される場合も含まれる。つまり、プログラムコードがメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって実現される場合も含まれる。
本発明の第1の実施形態に係る画像処理装置100のハードウエア構成を示すブロック図である。 検出処理プログラム110のモジュール構成を示す図である。 検出処理プログラム110における処理の流れを示すフローチャートである。 各弱判別器内での処理の流れを示すフローチャートである。 次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。 処理対象の画像データ600の一例を示す図である。 本発明の第2の実施形態にかかる画像処理装置において、次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。 本発明の第3の実施形態にかかる画像処理装置において、次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。 本発明の第4の実施形態にかかる画像処理装置における検出処理プログラム920のモジュール構成を示す図である。 本発明の第4の実施形態にかかる画像処理装置において、各弱判別器内で実行される処理の流れを示すフローチャートである。 本発明の第5の実施形態にかかる画像処理装置の検出処理プログラム920における処理の流れを示すフローチャートである。 本発明の第5の実施形態にかかる画像処理装置において、次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。 本発明の第6の実施形態にかかる画像処理装置における検出処理プログラム1320のモジュール構成を示す図である。 本発明の第6の実施形態にかかる画像処理装置において、次に実行されるべき弱判別器を選択するための選択処理の流れを示すフローチャートである。

Claims (16)

  1. 画像データに含まれる複数種類のオブジェクトを検出するために、該オブジェクトの種類に対応した分岐数を有する木構造により、複数の弱判別器を配置して処理を行う画像処理装置であって、
    前記弱判別器は、
    前記画像データ内に前記オブジェクトが含まれているか否かを判別するための評価値の算出に用いられる特徴量を算出する算出手段と、
    前記木構造における分岐点として機能する場合に、各分岐先に含まれる弱判別器において算出された前記特徴量の少なくとも一部を用いて、分岐先を選択する選択手段と
    を備えることを特徴とする画像処理装置。
  2. 前記算出手段は、
    前記弱判別器ごとに予め定められた演算により、前記特徴量を算出することを特徴とする請求項1に記載の画像処理装置。
  3. 前記算出手段は、
    前記弱判別器ごとに予め定められた閾値と前記算出された特徴量とを比較した結果と、前記弱判別器ごとに予め定められた信頼度とに基づいて前記評価値を算出することを特徴とする請求項1に記載の画像処理装置。
  4. 前記各弱判別器ごとに算出された前記評価値を累積することで算出された累積評価値に基づいて、前記画像データ内に前記オブジェクトが含まれているか否かを判定することを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
  5. 前記選択手段は、前記各分岐先に含まれる前記弱判別器のうち、先頭の弱判別器において算出された前記特徴量に基づいて、前記分岐先を選択することを特徴とする請求項1または2に記載の画像処理装置。
  6. 前記選択手段は、前記各分岐先に含まれる前記弱判別器のうち、先頭の弱判別器における前記比較した結果に基づいて、前記分岐先を選択することを特徴とする請求項3に記載の画像処理装置。
  7. 前記選択手段は、前記各分岐先に含まれる前記弱判別器のうち、先頭の弱判別器において算出された前記累積評価値に基づいて、前記分岐先を選択することを特徴とする請求項4に記載の画像処理装置。
  8. 前記選択手段は、前記各分岐先に含まれる前記弱判別器のうち、予め定められた数の弱判別器が実行されることにより算出された前記累積評価値に基づいて、前記分岐先を選択することを特徴とする請求項4に記載の画像処理装置。
  9. 前記選択手段は、前記各分岐先に含まれる前記弱判別器のうち、算出された前記特徴量が予め定められた閾値を上回った弱判別器の数が、最も多い分岐先を選択することを特徴とする請求項2に記載の画像処理装置。
  10. 前記選択手段は、前記各分岐先に含まれる前記弱判別器において算出された前記累積評価値が、予め定められた閾値を、最も早く上回った弱判別器が含まれる分岐先を選択することを特徴とする請求項4に記載の画像処理装置。
  11. 前記選択手段は、前記各分岐先に含まれる前記弱判別器のうち、予め定められた数の弱判別器が実行されることにより算出された前記累積評価値が最も大きい分岐先と、該累積評価値が予め定められた許容値内にある分岐先とを、選択することを特徴とする請求項4に記載の画像処理装置。
  12. 前記弱判別器の処理は、アンサンブル学習によって求められるパラメータにより規定されることを特徴とする請求項1に記載の画像処理装置。
  13. 前記累積評価値が予め定められた閾値未満であった場合に、該累積評価値を算出した弱判別器より下位層に配置された弱判別器が処理を実行しないようにすることを特徴とする請求項1に記載の画像処理装置。
  14. 前記複数の弱判別器が、カスケードに接続された弱判別器からなる複数のグループから構成されている場合において、該複数のグループのそれぞれの最後尾に配置された弱判別器において算出された前記累積評価値が、予め定められた閾値未満であった場合に、該弱判別器が属するグループより下位層に配置されたグループに含まれる弱判別器が処理を実行しないようにすることを特徴とする請求項1に記載の画像処理装置。
  15. 画像データに含まれる複数種類のオブジェクトを検出するために、該オブジェクトの種類に対応した分岐数を有する木構造により、複数の弱判別器を配置して処理を行う画像処理装置における画像処理方法であって、
    前記弱判別器が、
    前記画像データ内に前記オブジェクトが含まれているか否かを判別するための評価値の算出に用いられる特徴量を算出する算出工程と、
    前記木構造における分岐点として機能する場合に、各分岐先に含まれる弱判別器において算出された前記特徴量の少なくとも一部を用いて、分岐先を選択する選択工程と
    を実行することを特徴とする画像処理方法。
  16. 請求項15に記載の画像処理方法をコンピュータによって実行させるためのプログラム。
JP2007285403A 2007-11-01 2007-11-01 画像処理装置および画像処理方法 Expired - Fee Related JP4891197B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007285403A JP4891197B2 (ja) 2007-11-01 2007-11-01 画像処理装置および画像処理方法
US12/262,052 US8401313B2 (en) 2007-11-01 2008-10-30 Image processing apparatus and image processing method
US13/759,129 US8885930B2 (en) 2007-11-01 2013-02-05 Image processing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007285403A JP4891197B2 (ja) 2007-11-01 2007-11-01 画像処理装置および画像処理方法

Publications (2)

Publication Number Publication Date
JP2009116401A JP2009116401A (ja) 2009-05-28
JP4891197B2 true JP4891197B2 (ja) 2012-03-07

Family

ID=40588129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007285403A Expired - Fee Related JP4891197B2 (ja) 2007-11-01 2007-11-01 画像処理装置および画像処理方法

Country Status (2)

Country Link
US (2) US8401313B2 (ja)
JP (1) JP4891197B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4891197B2 (ja) * 2007-11-01 2012-03-07 キヤノン株式会社 画像処理装置および画像処理方法
EP2438575A4 (en) * 2009-06-01 2016-06-29 Hewlett Packard Development Co DETERMINATION OF DETECTION CERTAINTY IN A CASCADE CLASSIFIER
JP5523053B2 (ja) * 2009-10-19 2014-06-18 キヤノン株式会社 物体識別装置及び物体識別方法
US8693791B2 (en) 2010-02-01 2014-04-08 Morpho, Inc. Object detection apparatus and object detection method
CN102147851B (zh) * 2010-02-08 2014-06-04 株式会社理光 多角度特定物体判断设备及多角度特定物体判断方法
JP5394959B2 (ja) * 2010-03-23 2014-01-22 富士フイルム株式会社 判別器生成装置および方法並びにプログラム
CN103518224B (zh) * 2011-03-04 2017-05-17 Lbt创新有限公司 用于分析微生物生长的方法
JP5895624B2 (ja) * 2012-03-14 2016-03-30 オムロン株式会社 画像処理装置、画像処理方法、制御プログラムおよび記録媒体
JP5895629B2 (ja) * 2012-03-15 2016-03-30 オムロン株式会社 画像処理装置、画像処理方法、制御プログラムおよび記録媒体
US9208404B2 (en) 2013-11-15 2015-12-08 Adobe Systems Incorporated Object detection with boosted exemplars
US9269017B2 (en) * 2013-11-15 2016-02-23 Adobe Systems Incorporated Cascaded object detection
JP6700712B2 (ja) 2015-10-21 2020-05-27 キヤノン株式会社 畳み込み演算装置
JP6700791B2 (ja) 2016-01-05 2020-05-27 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP6977383B2 (ja) * 2017-08-08 2021-12-08 富士通株式会社 データ処理装置、プログラム及びデータ処理方法
CN107766946B (zh) * 2017-09-28 2020-06-23 第四范式(北京)技术有限公司 生成机器学习样本的组合特征的方法及系统
JP7345262B2 (ja) 2019-03-11 2023-09-15 キヤノン株式会社 データ圧縮装置、データ処理装置、データ圧縮方法、プログラム、及び学習済みモデル
JP7382245B2 (ja) 2020-02-07 2023-11-16 株式会社日立製作所 代替候補推薦システム及び方法
JP2022022876A (ja) 2020-07-09 2022-02-07 キヤノン株式会社 畳み込みニューラルネットワーク処理装置
US11354543B2 (en) 2020-09-21 2022-06-07 Kyocera Document Solutions Inc. Convolutional neural network filter stacker for colorization preprocessing

Family Cites Families (9)

* 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 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置
JP4517633B2 (ja) * 2003-11-25 2010-08-04 ソニー株式会社 対象物検出装置及び方法
JP5025893B2 (ja) 2004-03-29 2012-09-12 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
US7769228B2 (en) * 2004-05-10 2010-08-03 Siemens Corporation Method for combining boosted classifiers for efficient multi-class object detection
CN100472556C (zh) * 2005-10-09 2009-03-25 欧姆龙株式会社 特定被摄体检测装置及方法
JP4556891B2 (ja) * 2006-03-17 2010-10-06 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
JP4933186B2 (ja) * 2006-07-26 2012-05-16 キヤノン株式会社 画像処理装置、画像処理方法、プログラム及び記憶媒体
US7899253B2 (en) * 2006-09-08 2011-03-01 Mitsubishi Electric Research Laboratories, Inc. Detecting moving objects in video by classifying on riemannian manifolds
JP4891197B2 (ja) * 2007-11-01 2012-03-07 キヤノン株式会社 画像処理装置および画像処理方法

Also Published As

Publication number Publication date
US8401313B2 (en) 2013-03-19
JP2009116401A (ja) 2009-05-28
US8885930B2 (en) 2014-11-11
US20130156303A1 (en) 2013-06-20
US20090116693A1 (en) 2009-05-07

Similar Documents

Publication Publication Date Title
JP4891197B2 (ja) 画像処理装置および画像処理方法
EP3712805B1 (en) Gesture recognition method, device, electronic device, and storage medium
CN110717470B (zh) 一种场景识别方法、装置、计算机设备和存储介质
US8606022B2 (en) Information processing apparatus, method and program
JP5235691B2 (ja) 情報処理装置及び情報処理方法
CN109919077B (zh) 姿态识别方法、装置、介质和计算设备
CN112329505A (zh) 用于检测对象的方法和装置
US20210124976A1 (en) Apparatus and method for calculating similarity of images
US20090228510A1 (en) Generating congruous metadata for multimedia
CN111125658B (zh) 识别欺诈用户的方法、装置、服务器和存储介质
US20080175447A1 (en) Face view determining apparatus and method, and face detection apparatus and method employing the same
JP2014106736A (ja) 情報処理装置及びその制御方法
CN112749666A (zh) 一种动作识别模型的训练及动作识别方法与相关装置
WO2012085923A1 (en) Method and system for classification of moving objects and user authoring of new object classes
CN110850982A (zh) 基于ar的人机交互学习方法、系统、设备及存储介质
JP7348296B2 (ja) 目標志向的強化学習方法及びこれを遂行するための装置
CN107705417A (zh) 纸币版本的识别方法、装置、金融设备及存储介质
KR101362768B1 (ko) 객체 검출 방법 및 장치
US20220122341A1 (en) Target detection method and apparatus, electronic device, and computer storage medium
US20210342642A1 (en) Machine learning training dataset optimization
CN114937246A (zh) 一种行人识别方法、电子设备及存储介质
CN112989869B (zh) 人脸质量检测模型的优化方法、装置、设备及存储介质
CN115346143A (zh) 行为检测方法、电子设备、计算机可读介质
CN111860289A (zh) 一种时序动作检测方法、装置及计算机设备
US11798255B2 (en) Sign language video segmentation method by gloss for sign language sentence recognition, and training method therefor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101101

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: 20111114

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: 20111215

R151 Written notification of patent or utility model registration

Ref document number: 4891197

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20141222

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees