(57)【特許請求の範囲】
【請求項１】
対象画像に複数種類の物体それぞれがあるかを検出する検出手段と、
前記対象画像において複数の局所領域を生成する生成手段と、
前記生成された複数の局所領域の特徴量を算出する特徴量算出手段と、
複数の判別基準から前記検出された物体の種類に応じて選択された判別基準を用い、前記算出した特徴量に基づいて、前記検出された物体を含む領域において前記複数の局所領域のカテゴリーの第１の尤度を算出する第１の尤度算出手段と、
前記複数の判別基準から対象画像全域を判別するために選択された判別基準を用い、前記算出した特徴量に基づいて、前記対象画像全域において前記複数の局所領域のカテゴリーの第２の尤度を算出する第２の尤度算出手段と、
前記複数の局所領域のカテゴリーの第１及び第２の尤度に基づいて、前記対象画像をカテゴリーごとの領域に区分した結果を出力する出力手段と、
を有することを特徴とする画像認識装置。
【請求項２】
前記複数種類の物体の少なくともいずれか１つを含む学習データに基づいて、前記複数種類の物体のそれぞれに応じた判別基準を学習する学習手段を更に有することを特徴とする請求項１に記載の画像認識装置。
【請求項３】
前記対象画像全域における前記複数の局所領域それぞれのカテゴリーを決定する手段を備えたことを特徴とする請求項１に記載の画像認識装置。
【請求項４】
前記カテゴリーは物体の種別であることを特徴とする請求項１に記載の画像認識装置。
【請求項５】
前記カテゴリーは物体の種別と姿勢であることを特徴とする請求項１に記載の画像認識装置。
【請求項６】
前記検出手段により検出された物体信頼度が閾値未満の場合、前記複数の判別基準から対象画像全域を判別するための判別基準を選択する手段を備えたことを特徴とする請求項１に記載の画像認識装置。
【請求項７】
前記検出手段により検出された物体の姿勢の属性に基づいて前記判別基準を選択する手段を備えたことを特徴とする請求項５に記載の画像認識装置。
【請求項８】
前記複数種類の物体を判別するための複数の判別基準は、前記前記複数種類の物体ごとにサブクラスに対応する判別基準が用意され、
前記検出手段により検出された物体の検出結果に基づいて推定されるサブクラスに基づいて前記判別基準を選択する手段を備えたことを特徴とする請求項１から７のいずれか１項に記載の画像認識装置。
【請求項９】
前記サブクラスは、物体の所定の領域の類似度に基づいて予め分類されたグループに対応することを特徴とする請求項８に記載の画像認識装置。
【請求項１０】
前記検出手段が検出する複数種類の物体は、他の物体と重畳している物体であることを特徴とする請求項１から９のいずれか１項に記載の画像認識装置。
【請求項１１】
前記特徴量算出手段により算出される特徴量は、前記検出手段の検出結果に基づいて相対的に決定されることを特徴とする請求項１から１０のいずれか１項に記載の画像認識装置。
【請求項１２】
前記特徴量算出手段により算出される特徴量は、前記検出手段によって検出される複数の物体の相対的な位置に基づいて決定されることを特徴とする請求項１１に記載の画像認識装置。
【請求項１３】
前記特徴量としての前記複数の物体の相対的な位置を分類木のクエリーに用いることを特徴とする請求項１２に記載の画像認識装置。
【請求項１４】
前記特徴量算出手段により算出される特徴量は、前記局所領域との類似度に基づいて決定されることを特徴とする請求項１２に記載の画像認識装置。
【請求項１５】
対象画像に複数種類の物体それぞれがあるかを検出するステップと、
前記対象画像において複数の局所領域を生成するステップと、
前記生成された複数の局所領域の特徴量を算出するステップと、
複数の判別基準から前記検出された物体の種類に応じて選択された判別基準を用い、前記算出した特徴量に基づいて、前記検出された物体を含む領域において前記複数の局所領域のカテゴリーの第１の尤度を算出するステップと、
前記複数の判別基準から対象画像全域を判別するために選択された判別基準を用い、前記算出した特徴量に基づいて、前記対象画像全域において前記複数の局所領域のカテゴリーの第２の尤度を算出するステップと、
前記複数の局所領域のカテゴリーの第１及び第２の尤度に基づいて、前記対象画像をカテゴリーごとの領域に区分した結果を出力するステップと、を有することを特徴とする画像認識方法。
【請求項１６】
コンピュータを、請求項１から１４のいずれか１項に記載の画像認識装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像認識装置、方法及びプログラムに関する。
【背景技術】
【０００２】
被写体のカテゴリーごとに画像の領域を区別する技術を意味的領域分割と呼ぶ。従来の意味的領域分割の手法には、以下の２種類の技術がある。第１の技術として、局所領域の特徴に基づいて各領域の被写体のカテゴリーを判別する技術がある。また最近、第２の技術として、第１の技術に特定の物体の検出技術を併せて用いることで、領域分割の精度を向上させる技術が提案されている（非特許文献１）。非特許文献１の手法では、まず物体検出の結果から物体の存在する範囲を推定する。次に、局所領域の判別を行う際に、前記範囲内の領域は当該物体である尤度が他より高いとして物体のカテゴリーの尤度を所定の値だけ底上げする。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Lubor Ladicky, Paul Sturgess, Karteek Alahari, Chris Russell, and Philip H.S. Torr, What,Where & How Many? Combining Object Detectors and CRFs, ECCV2010
【非特許文献２】Pedro F. Felzenszwalb and Daniel P. Huttenlocher, Efficient Graph-Based Image Segmentation, International Journal of Computer Vision, Volume 59, Number 2, Sep.  2004
【非特許文献３】P. Felzenszwalb, R. Girshick, D. McAllester, D. Ramanan, Object Detection with Discriminatively Trained Part Based Models, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 32, No. 9, Sep. 2010
【非特許文献４】Jitendra Malik, Serge Belongie, Thomas Leung and Jianbo Shi, Contour and Texture Analysis for Image Segmentation, International J. of Computer Vision 43(1), 7-27, 2001
【非特許文献５】J. Platt, Probabilistic outputs for support vector machines and comparisonto regularized likelihood methods, in A. Smola, P. Bartlett, B. Schoelkopf, and D. Schuurmans (eds.): Advances in Large Margin Classifiers. Cambridge, MA, MIT Press, 2000
【非特許文献６】F. Bach, M. Jordan, Learning spectral clustering, Advances in Neural Information Processing Systems 16, pp. 305-312, 2004.
【非特許文献７】A. Agarwal, B. Triggs, Recovering 3D human pose from monocular images. IEEE Transactions on Pattern Analysis & Machine Intelligence, Vol. 28, pp. 44-58, 2006
【非特許文献８】J. Gall and B. Lempitsky, Class-Specific Hough Forests for Object Detection, IEEE Conference on Computer Vision and Pattern Recognition (CVPR'09), 2009
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、物体の検出結果から推定できる物体の位置や範囲には誤差が含まれる。そのため、推定範囲の中を一律に尤度が高いとすると、得られる領域分割結果の境界の精度は低くなる。境界の精度を高めるために、非特許文献１では以下の工夫を行っている。即ち、まず物体の範囲内を色特徴に基づいて前景と背景の二つの領域に分ける。次に、前景と推定された局所領域のみに対して、当該物体である尤度が他より高いとして物体のカテゴリーの尤度を所定の値だけ底上げして判別を行う。
しかしながら、この方法では、検出物体に色の似た背景領域がある場合、前景と背景の誤判別を起こすことがある。また、複雑な背景、及び物体同士が重畳しているような場合にも誤判別を起こすことがある。即ち、物体の前景を同定して尤度を一律に変更する方法では、対象によっては判別しにくい場合がある。
【０００５】
本発明は上記の点に鑑みてなされたものであり、画像中の物体を認識する精度を向上させることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の画像認識装置は、対象画像に複数種類の物体それぞれがあるかを検出する検出手段と、前記対象画像において複数の局所領域を生成する生成手段と、前記生成された複数の局所領域の特徴量を算出する特徴量算出手段と、複数の判別基準から前記検出された物体の種類に応じて選択された判別基準を用い、前記算出した特徴量に基づいて、前記検出された物体を含む領域において前記複数の局所領域のカテゴリーの第１の尤度を算出する第１の尤度算出手段と、前記複数の判別基準から対象画像全域を判別するために選択された判別基準を用い、前記算出した特徴量に基づいて、前記対象画像全域において前記複数の局所領域のカテゴリーの第２の尤度を算出する第２の尤度算出手段と、前記複数の局所領域のカテゴリーの第１及び第２の尤度に基づいて、前記対象画像をカテゴリーごとの領域に区分した結果を出力する出力手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、画像中の物体を認識する精度が向上する。特に物体と背景の領域の見えが類似している場合や、物体と物体が重畳しているような場合に、従来の方法に比べて精度の良い結果が得られる。
【図面の簡単な説明】
【０００８】
【図１】画像認識装置の構成を示す図である。
【図２】領域判別手段の機能構成を示す図である。
【図３】第１の実施形態における認識処理の流れを示すフローチャートである。
【図４】第１の実施形態における認識処理の結果を示す図である。
【図５】第１の実施形態における判別結果の統合の仕方と結果を示す図である。
【図６】判別基準のパラメーターの読み出しに係る部分の機能構成の例を示す図である。
【図７】物体範囲を決定する手法を説明するための模式図である。
【図８】画像認識装置の構成を示す図である。
【図９】第１の実施形態における学習処理の流れを示すフローチャートである。
【図１０】第１の実施形態の他の形態における学習処理と認識処理の流れを示すフローチャートである。
【図１１】物体の背景を用いてサブクラスを作成する手法の概念を説明するための図である。
【図１２】局所領域の類似度特徴を算出する手法を説明するための模式図である。
【図１３】第２の実施形態における認識処理の結果を示す図である。
【図１４】第２の実施形態における認識処理の流れを示すフローチャートである。
【図１５】第３の実施形態における認識処理の流れを示すフローチャートである。
【図１６】第３の実施形態における投票結果を示す図である。
【図１７】判別基準のパラメーターの格納形態を示す模式図である。
【図１８】第３の実施形態における認識処理の結果を示す図である。
【図１９】局所領域を判別するためのクエリーの模式図である。
【図２０】第３の実施形態における重畳領域の認識処理の結果を示す図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明の好適な実施形態について説明する。
本発明は、画像中の被写体のカテゴリー及びその領域を認識する画像認識装置、方法及びプログラムに関する。具体例としては風景や物体を撮影した静止画、動画又は距離画像等の画像情報を入力画像とし、入力画像中の被写体のカテゴリー及びその領域を同定する。対象となる被写体のカテゴリーは、空・海・森・人物・建物・自動車・工業製品といった自然物及び人工物、物体及び非物体、一般的な物体及び特定の物体等である。
【００１０】
［第１の実施形態］
第１の実施形態では、二次元の画像データを入力画像とし、入力画像中の領域がそれぞれいずれの被写体のカテゴリーであるかを判別する手法について説明する。本実施形態では、画像を複数の局所領域に分割し、局所領域ごとに被写体のカテゴリーを判別する。本実施形態で扱う被写体のカテゴリーとは、人体、動物といった物体、及び、空、山、草、建物といった背景の領域のカテゴリーの二つからなると定義する。
本実施形態では、以下の工夫を行う。まず、局所領域の特徴量に基づいて画像中の各局所領域の被写体のカテゴリーを判別する。この処理は従来の手法と同じ処理である。このときに用いる判別基準は従来の手法と同じものであり、本実施形態はこれを汎用的な判別基準と呼ぶ。次に、物体が検出された範囲内の局所領域については、そこに検出物体があるという条件で予め学習しておいた判別基準を用いて被写体のカテゴリーを判別する。この判別基準のことを物体に特化した判別基準と呼ぶ。そして、二つの判別結果を統合する。それぞれの判別基準の求め方については、後述の学習処理の説明の中で詳細を述べる。
このように、物体が存在すると想定される領域は、物体に特化した判別基準で詳細な判別を行う。これにより、人体のような見えの変動の大きな対象でも、領域分割の精度を従来よりも向上させることができる。
【００１１】
（画像認識装置の構成）
図１に、第１の実施形態に係る画像認識装置の構成を示す。
データ入力手段１０１は、認識の対象となる画像を入力する。
局所領域生成手段１０２は、入力画像を所定の手法で複数の局所領域に分割する。
物体検出手段１０３は、入力画像中から所定の物体を検出して、その種別、サイズ及び位置を同定する。
物体範囲決定手段１０４は、物体検出手段１０３の検出結果から、検出物体が存在する概範囲（以下、物体範囲と呼ぶ）を決定する。
領域判別手段１０５は、各局所領域の被写体のカテゴリーを判別する。
領域判別基準保持手段１０６は、局所領域の被写体のカテゴリーを判別するための複数種の判別基準のパラメーター、具体的には汎用的な判別基準のパラメーターと、物体に特化した判別基準のパラメーターとを保持する。
認識結果出力手段１０７は、各局所領域の被写体のカテゴリーの推定結果を統合して画像認識結果として出力する。
【００１２】
ここで、構成要素間のデータの流れについて補足の説明をする。領域判別手段１０５は、データ入力手段１０１より入力画像を、局所領域生成手段１０２より各局所領域の情報を受け取る。領域判別手段１０５は、領域判別基準保持手段１０６より判別基準のパラメーターを読み出して、各局所領域の特徴量を算出し、特徴量と判別基準に基づいて各局所領域の被写体のカテゴリーを推定する。
このとき、物体検出手段１０３により物体が検出されている場合、追加的に以下の処理が行われる。即ち、物体検出手段１０３は、領域判別手段１０５にその旨の制御信号と物体の種別等の属性の情報を送る。また、物体範囲決定手段１０４は、領域判別手段１０５に物体範囲の情報を送る。領域判別手段１０５は、物体の属性の情報に基づいて、領域判別基準保持手段１０６より適切な判別基準のパラメーターを読み出す。さらに、領域判別手段１０５は、物体範囲内の局所領域の特徴量を算出し、特徴量と判別基準に基づいて物体範囲内の局所領域の被写体のカテゴリーを推定する。
【００１３】
図２に、領域判別手段１０５の機能構成を示す。領域判別手段１０５は、データ入力手段１０１より入力画像と、局所領域生成手段１０２より各局所領域の情報と、物体検出手段１０３より検出物体の属性の情報と、物体範囲決定手段１０４より物体範囲の情報とを受け取る。
領域判別手段１０５は、全領域判別部１０５ａと、物体領域判別部１０５ｂと、カテゴリー尤度統合手段１０５ｃとを備える。
全領域判別部１０５ａは、判別基準読出し手段、特徴量算出手段、及びカテゴリー尤度算出手段を備え、領域判別基準保持手段１０６より汎用的な判別基準のパラメーターを読み出し、画像中の全局所領域の被写体のカテゴリーの尤度を算出する。
物体領域判別部１０５ｂは、判別基準読出し手段、特徴量算出手段、及びカテゴリー尤度算出手段を備え、検出物体に応じて領域判別基準保持手段１０６より物体に特化した判別基準のパラメーターを読み出し、物体範囲内の局所領域の被写体のカテゴリーの尤度を求める。
カテゴリー尤度統合手段１０５ｃは、全領域判別部１０５ａ及び物体領域判別部１０５ｂの二つのカテゴリー尤度の結果を統合し、認識結果出力手段１０７に結果を送る。統合の処理の詳細については後述する。
【００１４】
（認識処理の説明）
図３は、本実施形態における認識処理の流れを示すフローチャートであり、図１を併用して認識処理を説明する。また、各処理における結果の例を適宜図４、図５を用いて説明する。
ステップＳ１０１で、データ入力手段１０１が入力画像を入力し、局所領域生成手段１０２、物体検出手段１０３及び領域判別手段１０４に入力画像を送る。ここでの入力画像は、例えば図４（Ａ）に示すような画像である。
【００１５】
ステップＳ１０２で、局所領域生成手段１０２が入力画像のＲＧＢカラー情報に基づいて入力画像を複数の局所領域に分割する。この局所領域はスーパーピクセルとも呼ばれ、例えば非特許文献２のような既存の手法が広く知られている。図４Ｂに、生成された局所領域の例を示す。本実施形態では、局所領域の情報は領域判別手段１０５に送られ、これ以降の処理は局所領域を要素単位として行う。これにより、画素を要素単位とするのに比べて全体の処理速度を向上させることができる。なお、本発明においては局所領域のサイズや形状を制限するものではない。より大きな矩形ブロックを局所領域としてもよいし、さらに他の形態では画像上の各１画素を局所領域としてもよい。
【００１６】
ステップＳ１０３で、物体検出手段１０３が入力画像中に所定の物体があるか否かの認識処理を行う。検出の対象とする物体は、人体、車、犬、飛行機、といった一般的な物体である。また、物体検出の手法は、全ての対象物において同一の方式である必要はなく、対象物に応じた適切な複数の手法が用いられてもよい。精度の高い物体検出の手法としては例えば非特許文献３が公知であり、本実施形態も非特許文献３の手法を用いることとする。物体検出手段１０３は、画像中から物体を検出し、検出スコアが所定の閾値以上であればその種別、位置、サイズ、検出スコアの情報を物体範囲決定手段１０４と領域判別手段１０５に送る。
ここで、物体検出手段１０３が後ろ向き・横向きといった物体の向きを推定するような機能を有していれば、向きの推定結果を後段の処理で利用するための視点情報として併せて出力する形態も考えられる。また、対象物体が人物のような関節物体であって、物体検出手段１０３が立位姿勢、着座姿勢等といった姿勢情報を推定する姿勢情報推定機能を有していれば、物体の姿勢情報を併せて出力する形態も考えられる。物体の視点や姿勢の情報を利用する形態については、本実施形態の他の形態として後述する。
【００１７】
ステップＳ１０４で、ステップＳ１０３において物体が検出されたか否かを判定し、物体が検出されていれば、ステップＳ１０５に進み、物体が検出されていなければ、ステップＳ１１３に進む。
【００１８】
ステップＳ１０５以降は、検出物体ごとに物体範囲を定め、物体範囲内の局所領域の被写体のカテゴリーを判別する処理である。
ステップＳ１０５で、未処理の物体があるか否かを判定し、未処理の物体があれば、ステップＳ１０６に進み、未処理の物体がなければ、ステップＳ１１３に進む。
ステップＳ１０６で、領域判別手段１０５が領域判別基準保持手段１０６から判別基準のパラメーターを読み出す。領域判別基準保持手段１０６には、一つの汎用的な判別基準のパラメーターと、物体に特化した複数の判別基準のパラメーターとが保存されており、領域判別手段１０５は検出物体に対応する適切な判別基準のパラメーターを読み出す。
図６（Ａ）に、判別基準のパラメーターの読み出しに係る部分の機能構成の例を示す。領域判別手段１０５は、検出物体の種別の情報を受け取り、領域判別基準保持手段１０６より該当する物体に特化した判別基準のパラメーターを読み出す。なお、図中の記号φは汎用的な判別基準のパラメーターを意味している。
【００１９】
ステップＳ１０７で、物体範囲決定手段１０４が物体検出手段１０３の検出結果に基づいて検出物体の物体範囲を決定する。その手法には様々なものがあるが、最も簡易な例は、物体検出手段１０３が出力する物体の位置及びサイズを利用する形態である。検出物体が人体である場合を例として、図７（Ａ)に人体５０１ａ、人体が検出された位置及びサイズを表す物体の検出窓５０１ｂ、及び物体範囲５０１ｃの関係を示す。物体範囲決定手段１０４は、物体が検出された検出窓５０１ｂを縦と横に所定の比率で拡げてこれを物体範囲５０１ｃとする。ここでは、検出窓をそれぞれ縦に５％、横に５０％拡げるとする。決定された物体範囲５０１ｃの情報は領域判別手段１０５に送られる。
なお、物体の検出窓５０１ｂをそのまま物体範囲とせずに所定の範囲に拡げて物体範囲５０１ｃとする理由は、人体５０１ａの四肢の姿勢によっては人体の領域が物体の検出窓５０１ｂを容易にはみ出すことがあるためである。なお、物体範囲を決定する手法には様々なものがあり、後にまとめて詳述する。
このようにしてステップＳ１０７で決定された物体範囲の結果例を図４（Ｄ）の黒枠線４０１に示す。
【００２０】
ステップＳ１０８で、領域判別手段１０５が各局所領域が物体範囲に含まれるか否かを判定し、物体範囲内の局所領域を選択する。各局所領域が物体範囲に含まれるか否かの判定基準は、局所領域と物体範囲が所定の画素数以上重畳しているか否かとする。それ以外にも、局所領域の重心が物体範囲に含まれるか否か等としてもよい。
【００２１】
ステップＳ１０９で、領域判別手段１０５が物体範囲内の局所領域の特徴量を算出する。ここでは、ＲＧＢヒストグラムや一般的なテクスチャの特徴量（例えば一般的なテクスチャ特徴量としては非特許文献４を参照のこと）を使う。
また、領域判別手段１０５は、物体検出の結果に基づいて相対的に決まる特徴量も算出する。この特徴量は、局所領域が検出物体に対してどの辺りにあるかの位置の特徴と、検出物体の前景に近い特徴を持っているか背景に近い特徴を持っているかの、類似度の特徴である。その詳細は後述する。
【００２２】
ステップＳ１１０で、領域判別手段１０５が物体範囲内の局所領域の被写体のカテゴリーを判別する。その際に、ステップＳ１０６で読み出した、物体に特化した判別基準のパラメーターを用いる。本実施形態では、判別手法として代表的なサポートベクトルマシンを用いる。本実施形態では、判別対象カテゴリーごとにサポートベクトルマシンを用意し、局所領域が各カテゴリーであるか否かの２クラス判別をカテゴリーの数だけ行うものとする。そのため、判別結果は各カテゴリーについての判別スコアとして得られる。また、本実施形態での判別基準のパラメーターとは、主に上記のサポートベクトルマシンのサポートベクトルのパラメーターである。
なお、領域分割の対象カテゴリーと物体検出器１０３が検出対象とするカテゴリーとは一致していなくてもよい。例えば物体検出器１０３の検出対象カテゴリーが人体と車のカテゴリーであり、一方で領域分割の被写体カテゴリーが空・地面・建物・木・その他の物体のカテゴリーであるような形態も考えられる。この場合、領域分割の＜その他の物体＞カテゴリーには物体検出の対象カテゴリーの人体と車の両方が含まれることになる。
ステップＳ１１０で得られる結果の例を、図５（Ａ）に判別スコア８０４として示す。これは、物体範囲内の局所領域ｘについて行った判別結果のスコアを並べたものである。また、図４（Ｅ）には、各局所領域について得られた判別スコアのうち、最大のスコアのカテゴリーを可視化して示している。図中のアルファベット１文字は、各領域の判別スコアのうち最大となったカテゴリーの名称を示している。各文字は、それぞれ意味的領域分割の分野で用いられることの多いカテゴリーである、ｂ：人体、ｇ：草、ｍ：山、ｓ：空に対応している。また、丸で囲まれたアルファベットが付された局所領域は、この局所領域の判別が誤っていることを示している。
【００２３】
ステップＳ１１１で、領域判別手段１０５が各カテゴリーの判別スコアを０から１の値域に変換して確率値とする。サポートベクトルマシンのような判別器のスコアを確率値に変換するための手法は、非特許文献５のようなものが広く知られているのでそれを用いる。サポートベクトルマシンの結果スコアをｆとしたとき、非特許文献５の手法では、下式（１）のロジスティック関数でｆを確率値に変換する。
ｐ（ｙ＝１｜ｆ）＝１／（１＋ｅｘｐ（Ａｆ＋Ｂ））・・・（１）
さらに、上記の値を全カテゴリーで総和したときに１になるように規格化し、結果を保存しておく。なお、式（１）の係数Ａ及びＢは判別基準のパラメーターの一つであり、予め学習データを用いてカテゴリーごとに決定して記憶しておく。具体的には、変換後の確率値と真の確率値との間の誤差を最小にするようにＡとＢを決定するが、詳細については非特許文献５を参照されたい。ステップＳ１１１で得られる結果の例を、図５（Ａ）に確率値８０６として示す。
上記のようにして得られた確率ｐは、局所領域ｘを物体範囲として含むような位置に検出物体が存在しているという条件の下での、局所領域ｘがあるカテゴリーｃである条件付確率となる。ここで、物体を人体としてこの確率をｐ（Ｌx＝ｃ｜Ｏx＝ｂｏｄｙ）と表記することにする。Ｌxは局所領域ｘのカテゴリーのラベルである。
次に、物体検出手段１０３から出力された物体検出スコアについても上記と同様にロジスティック関数を用いて確率値に直しておく。検出物体が人体であるとしてこの確率値をｐ（Ｏx＝ｂｏｄｙ）と表記する。
以上のステップＳ１０６からステップＳ１１２までの処理を全ての検出物体について行い、終了したら（ステップＳ１０５でＮｏ）、ステップＳ１１３に進む。
【００２４】
ステップＳ１１３からステップＳ１１６までは、画像中の全局所領域について、そこに物体が存在していないという前提でカテゴリーの判別を行う処理である。
ステップＳ１１３で、領域判別手段１０５が領域判別基準保持手段１０６より汎用的な判別基準のパラメーターを読み出す。
【００２５】
ステップＳ１１４で、領域判別手段１０５が画像中の全局所領域の特徴量を算出する。特徴量の算出の手法は、ステップＳ１０９と同様である。ただし、物体検出の結果に基づいて相対的に決まる特徴量については算出できないのでゼロの値を代入しておく。
【００２６】
ステップＳ１１５で、領域判別手段１０５がステップＳ１１０と同様にしてサポートベクトルマシンでカテゴリーごとの判別スコアを算出する。その際に、ステップＳ１１３で読み出した、汎用的な判別基準のパラメーターを用いる。ステップＳ１１５で得られる結果の例を、図５（Ａ）に判別スコア８０９として示す。また、図４（Ｃ）には、各局所領域について得られた判別スコアのうち、最大のスコアのカテゴリーを可視化して示す。
【００２７】
ステップＳ１１６で、領域判別手段１０５がステップＳ１１１と同様にして各判別スコアを確率値に変換して記憶する。これは、局所領域ｘを物体範囲として含むような位置に物体は存在していないという条件下での、局所領域ｘがカテゴリーｃである条件付確率となる。ステップＳ１１６で得られる結果の例を、図５（Ａ）に確率値８１１として示す。
また、この確率値をｐ（Ｌx＝ｃ｜Ｏx＝¬ｂｏｄｙ）と表記する。記号¬は否定を意味する記号であり、Ｏx＝¬ｂｏｄｙは領域ｘを含む位置に人体が存在していないという条件を意味する。
【００２８】
ステップＳ１１７で、領域判別手段１０５が上述の処理で得られた二つの確率値を、下式（２）で周辺化して統合することで最終的に確率値ｐ（Ｌx＝ｃ）を得る。この処理は、領域判別手段１０５が備えるカテゴリー尤度統合手段１０５ｃが行う。なお、ここでは簡単のために人体だけが検出対象の物体であるとして計算を行っている。
ｐ（Ｌx＝ｃ）＝ｐ（Ｌx＝ｃ｜Ｏx＝ｂｏｄｙ）・ｐ（Ｏ＝ｂｏｄｙ）
＋ｐ（Ｌx＝ｃ｜Ｏx＝¬ｂｏｄｙ）・ｐ（Ｏx＝¬ｂｏｄｙ）・・・（２）
ここで、統合の際に人体が存在している場合と存在してない場合の二つの確率を足しているのは、物体検出手段１０３で人体が検出されたにも関わらず実際には存在していない場合を確率の枠組みで考慮するためである。
この計算によって得られる結果の例を、図５（Ａ）に統合後の確率値８１２として示す。
そして、下式（３）で、この値が最大のカテゴリーｃ*を局所領域ｘのカテゴリーとする。
ｃ* ＝ａｒｇｍａｘ  ｐ（Ｌx＝ｃ）・・・（３）
【００２９】
なお、ここでは、確率値最大のカテゴリーを最終結果としたが、他の手法として例えば非特許文献１で行っているように条件付確率場を用いて最終的なカテゴリーを決定してもよい。条件付確率場を用いると、周囲のラベルに整合するように個々のラベルが決定されるため、局所領域の孤立的な誤判別を抑制する効果がある。
また、他の手法として、物体が存在する条件の下でのカテゴリー判別を多クラス判別ではなく、物体の前景か背景かの２クラス判別で行うような形態でもよい。この場合、物体が存在していない条件の下での判別はそのまま多クラス（２クラス以上）の判別を行う。そして、最後に２クラスと多クラスの判別スコアを統合するが、クラス数の異なる判別スコアの統合のためには以下のような工夫を行う。
まず、前景と背景の判別スコアをそれぞれ確率値に規格化する。次に、背景の確率値を均等に割って、人体以外の各カテゴリーの確率値とする。具体的には下式（４）のようになる。
人体以外の各カテゴリーの確率値＝背景の確率値／（カテゴリーの総数−１）
・・・（４）
このようにして得られた確率値の結果の例を、図５（Ｂ)に確率値９０６として示す。
次に、図５（Ｂ)に示すように、物体が存在する条件下で判別して得られた確率値９０６と、物体が存在しない条件下で得られた多クラス判別の確率値９１１とを重み付き和して、最終的なカテゴリーの確率値９１２を得る。以上が２クラスと多クラスの判別スコアを統合する他の手法の説明である。
【００３０】
ステップＳ１１８で、認識結果出力手段１０７が隣接する同一のカテゴリーの局所領域を全て一つの領域に併合し、これを出力結果とする。図４（Ｆ）に、最終的な出力結果の例を示す。中間的な判別結果の例である図４（Ｅ）と図４（Ｃ）にはそれぞれ判別誤りが存在していたのに対して、両者を統合した結果の例である図４（Ｆ)ではこの判別誤りが正しく修正されている点に注意されたい。
以上が、本実施形態における認識処理の動作の説明となる。
【００３１】
なお、領域判別の結果の統合の手法は、本実施形態で述べたような条件付確率を用いた枠組みに限る必要はない。例えばそれぞれの領域判別手段の判別スコアのうち最大のスコアのカテゴリーを採用してもよい。また、例えば物体範囲内の領域とそれ以外の領域とで判別する手段を分け、一つの局所領域は一つの判別手段のみで判別してもよい。このように様々な手法があり得る。
【００３２】
（学習処理の説明）
次に、本実施形態において局所領域の被写体のカテゴリーを判別するときに用いられる判別基準のパラメーターの学習処理について述べる。本実施形態では、物体の検出された領域を判別する＜物体に特化した判別基準＞と、物体が検出されなかった領域を判別する＜汎用的な判別基準＞の２種類の判別基準のパラメーターを学習する。本実施形態の学習処理は大きくわけると以下の三つの処理よりなる。
（１）物体の検出の有無及び物体の種別ごとに局所領域のデータを分ける。
（２）分けられた学習データに基づいてそれぞれの判別基準のパラメーターを学習する。
（３）判別基準のパラメーターを保存する。
【００３３】
図８（Ａ）に、画像認識装置が学習を行うための構成の例を示す。図１との相違点は、領域判別手段１０５の代わりに領域判別基準学習手段１２５を備えることと、認識結果出力手段１０７がないことであり、データ入力手段１２１、局所領域生成手段１２２は、物体検出手段１２３は、物体範囲決定手段１２４、領域判別基準保持手段１２６については図１と同様である。
図９（Ａ）は、本実施形態における学習処理の流れを示すフローチャートであり、図８（Ａ）を併用して学習処理を説明する。
ステップＳ３０１で、データ入力手段１２１が学習画像を入力する。
ステップＳ３０２で、局所領域生成手段１２２が全ての学習画像について局所領域を生成する。これは、認識処理のステップＳ１０２で行った処理と同一の処理である。
ステップＳ３０３で、物体検出手段１２３が各学習画像に撮影されている物体を検出する。
【００３４】
このようにして検出された全物体について、以降のステップＳ３０４からステップＳ３０６までの処理を行う。
ステップＳ３０４で、物体範囲決定手段１２４が検出物体ごとに物体範囲を決定する。ステップＳ３０５で、領域判別基準学習手段１２５が物体範囲内にある局所領域を同定して選択する。ステップＳ３０６で、領域判別基準学習手段１２５が各物体の種別ごとに局所領域をまとめて後の学習に用いるための学習データとして保存しておく。
また、ステップＳ３０７で、いずれの物体範囲にも含まれなかった局所領域を選択して同様に学習データとして別に保存しておく。
このようにして検出物体の種別ごとに局所領域のデータが分けられた。例えばここでは人体の物体範囲に含まれる局所領域、車の物体範囲に含まれる局所領域、どちらにも含まれなかった局所領域、の３種類の局所領域が全画像から抽出されてそれぞれ別に保存されているとする。
【００３５】
次に、これらを学習データとして、物体の種別ごとに局所領域の被写体のカテゴリーを判別するための判別基準のパラメーターを学習する。そのために、物体の種別ごとに以降のステップＳ３０８からステップＳ３１１までの処理を行う。
ステップＳ３０８で、領域判別基準学習手段１２５が各局所領域から特徴量を算出する。ステップＳ３０９で、領域判別基準学習手段１２５が上記の特徴量を入力とし、各局所領域の被写体のカテゴリーの真値を出力の目標値としてカテゴリーを正しく判別できるように判別基準のパラメーターの学習を行う。局所領域のカテゴリーとは、山・空・草・人体等、予め定められた意味的領域分割の判別対象カテゴリーのことである。また、その真値は、予め教師値として与えられているとする。
【００３６】
ここで、ステップＳ３０９の判別基準のパラメーターの学習処理を図９（Ｂ)を用いて更に詳細に説明する。先に認識処理の説明において述べたように、本実施形態では局所領域の多クラスの判別にサポートベクトルマシンを用いる。具体的には、２クラス判別のサポートベクトルマシンを領域分割の判別対象カテゴリーの数と同数用いることで多クラスの判別器を実現する。
ここでは、判別対象カテゴリーごとにステップＳ３２１からステップＳ３２３までの処理を繰り返して各サポートベクトルマシンを学習する。
ステップＳ３２１で、学習データから当該カテゴリーの正事例と負事例に相当する局所領域をそれぞれ抽出して２クラスのデータを作成する。ステップＳ３２２で、前ステップで得られた正事例と負事例のデータをサポートベクトルマシンに与えて２クラス判別の学習を行う。ステップＳ３２３で、上記学習で得られたサポートベクトルマシンの判別スコアを０から１の値域に変換して確率値とするための関数を学習する。ここでは、先に説明したように非特許文献５の手法を用いる。これを全ての判別対象カテゴリーについて行う。ステップＳ３２４で、以上のステップＳ３２１からステップＳ３２３で得られた全てのサポートベクトルのセットと、判別スコアを確率値に変換するためのロジスティック関数のパラメーターのセットの両方を判別基準のパラメーターとしてまとめ、出力する。以上がステップＳ３０９の処理を詳細化したフローについての説明である。以上の処理により、ある一つの検出対象物体の種別についてその物体範囲内の局所領域を判別するための判別基準のパラメーターが得られる。
【００３７】
ステップＳ３１０で、上記で得られた判別基準のパラメーターを、物体に特化した判別基準として物体の種別ごとに領域判別基準保持手段１２６に保存する。
以上のステップＳ３０８からステップＳ３１０までの学習処理を物体の全種別について行い、終了したら次のステップＳ３１１に進む。
【００３８】
次に、物体が検出されなかった領域を判別するための汎用的な判別基準を学習する。具体的には、ステップＳ３１１で、領域判別基準学習手段１２５が物体範囲に含まれない局所領域から特徴量を算出する。ステップＳ３１２で、ステップＳ３０９と同様の処理を行って判別基準のパラメーターの学習を行う。ここで、ステップＳ３１２の処理がステップＳ３０９の処理と異なるのは、学習に用いられるデータとして物体が検出されなかった局所領域を用いているという点のみである。ステップＳ３１３で、上記で得られた判別基準のパラメーターを、汎用的な判別基準として領域判別基準保持手段１２６に保存する。
以上が、本実施形態における学習処理の動作の説明となる。
【００３９】
以下では、他の形態について説明を行う。
（判別基準のパラメーターの学習に関する他の形態）
ここでは、認識精度を向上させるために検出物体の種別を物体の姿勢や向き等に基づいてさらにサブクラスに詳細化し、サブクラスごとに特化した領域の判別基準のパラメーターを学習する形態について述べる。
領域の判別基準のパラメーターをサブクラスごとに学習する一つ目の形態として、検出物体の向き（ここでは視点と呼ぶ）や、姿勢等の物体の属性ごとに判別基準のパラメーターを用意する形態を説明する。図６（Ｂ）に示すように、判別基準のパラメーターを各物体ごと、またそれぞれの物体の視点と姿勢ごとに細かく分けて用意して領域判別基準保持手段１０６に格納しておく。認識時には、領域判別手段１０５が適切な物体のサブクラスの判別基準のパラメーターを読み出して用いる。これにより、例えば着座姿勢の人体の領域を判別する場合と、立位の後ろ姿の人体の領域を判別する場合に、それぞれ適した判別基準のパラメーターを選んで用いることができる。
【００４０】
図１０（Ａ）は、学習処理の流れを示すフローチャートであり、図８（Ａ）を併用して学習処理を説明する。その際、既に説明した学習処理と同じ処理については説明を省略する。なお、ここではある一種類の物体のみをサブクラスに詳細化することを想定した説明を行う。
ステップＳ２０１、Ｓ２０２は、図９（Ａ）のステップＳ３０１、Ｓ３０２と同様である。
ステップＳ２０３で、物体検出手段１２３が全学習画像に対して対象物体についての物体検出を行い、物体の視点と姿勢の推定結果を保存する。
ステップＳ２０４で、領域判別基準学習手段１２５が全学習画像の検出物体の視点と姿勢をベクトル量子化して複数のサブクラスを作成する。具体的には、視点と姿勢のパラメーター空間上でｋ−平均法等を行ってデータをｍ個のクラスターに分ける。なお、ｍとしては、各サブクラスの学習画像の数が少なすぎないように適当な数をユーザーが決定しておく。
ステップＳ２０５で、領域判別基準学習手段１２５がサブクラスごとに学習画像の局所領域を分ける。
ステップＳ２０６で、領域判別基準学習手段１２５が各サブクラスのデータに基づいて個別に学習してサブクラスごとの判別基準のパラメーターを得る。
ステップＳ２０７で、領域判別基準学習手段１２５が図６（Ｂ）に示すようにサブクラスごとに判別基準のパラメーターを保存する。このとき、各サブクラスには検索のための視点と姿勢の代表ベクトルの値（不図示）を併せて付す。
以上が物体の姿勢や向きといったサブクラスごとに判別基準を学習する処理の流れの説明である。
【００４１】
図１０（Ｂ）は、認識処理の流れを示すフローチャートであり、図１を併用して認識処理を説明する。その際、既に説明した認識処理と同じ処理については説明を省略する。
ステップＳ２１１、Ｓ２１２は、図３のステップＳ１０１、Ｓ１０２と同様である。
ステップＳ２１３で、物体検出手段１０３が物体の種別を推定し、さらに物体の視点と姿勢とを推定する。
ステップＳ２１４で、領域判別手段１０５が対応する物体の判別基準のパラメーターを読み出す。この段階では、物体ごとに用意された判別基準のパラメーターのセットを読み出す。
ステップＳ２１５で、領域判別手段１０５がステップＳ２１３において得た物体の視点と姿勢の情報と、判別基準のパラメーターのセットに付された代表ベクトルとを比較して、最近接の代表ベクトルを選ぶ。
ステップＳ２１６で、領域判別手段１０５は最近接の代表ベクトルに対応するサブクラスの判別基準のパラメーターを読み出す。
ステップＳ２１７で、領域判別手段１０５は読み出した判別基準のパラメーターを用いて局所領域の被写体のカテゴリーを判別する。
以上が物体のサブクラスごとに領域の判別基準のパラメーターを読み出して認識を行う処理の流れの説明である。
【００４２】
なお、物体のサブクラスの生成には、ここで述べた視点や姿勢以外の属性を用いてもよい。例えば検出物体の見えの違いで学習データをクラスタリングして、これをサブクラスとすることも考えられる。また、例えば対象物体が犬のような動物であれば、犬種の教師データを与えてこれに基づいてサブクラスを作成してもよい。
【００４３】
物体検出手段１０３が検出物体の視点や姿勢を誤って推定すると、不適当な判別基準のパラメーターが読み出されるため、その後の領域の判別を大きく誤る危険性がある。この課題への対処を可能とする形態について以下に説明する。
物体検出手段１０３が物体の属性を推定する際に、属性の推定値の信頼度スコアも併せて出力する。物体の属性推定の信頼度スコアの算出手法としては、例えば標準的な判別手法であるサポートベクトルマシンの場合、判別スコアを信頼度スコアとして用いればよい。また、確率的な判別手段の場合、属性の尤度を信頼度スコアとして用いればよい。認識時には、物体の属性の信頼度スコアが所定の閾値未満であるときはサブクラスの判別基準のパラメーターを読み出さず、サブクラスを区別せずに予め学習しておいた汎用的な判別基準のパラメーターを読み出して、これに基づいて判別を行う。以上の処理により、不適当な判別基準のパラメーターを読み出して領域の判別を行うような誤りを防ぐことが可能となる。
【００４４】
また、更なる課題として物体の属性の信頼度を求めることが難しいような場合も考えられる。このような場合、認識時にサブクラスの判定を行わずに、全てのサブクラスの判別基準のパラメーターを用い、予め用意された全てのサブクラスの数だけ判別を行い、全判別結果のうち最も尤度の高かった結果を採用するという形態が考えられる。
以上が物体のサブクラスを用いて認識を行う際の、サブクラスの推定の誤りの影響を抑制するための形態の説明となる。
【００４５】
領域の判別基準のパラメーターをサブクラスごとに学習する二つ目の形態として、物体の背景を用いてサブクラスを作成する形態を説明する。図１１に、物体の背景を用いてサブクラスを作成する手法の概念を示す。
この形態では、学習処理で、以下のような処理の手順を踏む。まず学習画像から対象物体を検出する。次に、対象物体を中心として所定の大きさの画像領域を抜き出し、これらを学習データとする。次に、検出物体の中心から一定画素数以上離れた領域を背景領域とし、背景の領域から特徴量を抽出する。次に、背景の特徴量の類似度に基づいて学習データをクラスタリングして複数のサブクラスを作成する。クラスタリングの方法については後述する。そして、サブクラスごとに判別基準のパラメーターを学習して個別に保存する。その際、各サブクラスから１つ以上のデータをサンプルして代表ベクトルとし、その代表ベクトルも併せて保存しておく。
【００４６】
認識処理では、学習処理と同様の処理によって入力画像の検出物体の背景領域を求め、背景領域から特徴量を抽出する。この特徴量を先に保存された各代表ベクトルと比較して、物体がいずれのサブクラスに属するかを判定する。次に、該当サブクラスの判別基準のパラメーターを読み出し、局所領域の被写体のカテゴリーの判別を行う。
なお、学習時のクラスタリングの方法の詳細は以下のようになる。まず背景の色分布を特徴量とし、特徴量間のユークリッド距離を学習データ間の距離としてグラフデータを作る。次に、このグラフデータ上でスペクトルクラスタリングを行って学習データを所定数のクラスターに分割する。グラフデータと分割結果の例を、図１１のグラフデータ１１００、及び背景サブクラス１１０１、１１０２、１１０３として示す。ここでは、車の画像データから背景の類似度により三つのサブクラスが生成された結果の例を示している。図示例では、データ間の距離はノード間のエッジの長さで示されている。また、所定の閾値以上離れているデータの間の距離は無限大であるとしてエッジを示していない。なお、スペクトルクラスタリングは広く公知の手法であり、例えば非特許文献６に開示されているので詳細を省略する。
この形態の効果を定性的に説明すると以下のようになる。例えば街中に駐車している車と、雪道を走る車とが異なるサブクラスとしてそれぞれ学習されているとする。そして、入力画像から車が検出され、車の周辺部に銀色の局所領域があったとする。ここで、もし背景の特徴からこの車が街中の車のサブクラスであると判定されたとすると、銀色の領域は車の前景（金属部）とされる可能性が高い。一方、もし雪道のサブクラスと判定されると、この領域は背景（雪）であるとされる可能性が相対的に高くなる。本形態では物体の周辺の状況（街中や雪道等）に応じて領域の判別基準のパラメーターを適応的に変更するので、背景に様々なバリエーションがあるような場合にも、前景と背景の区別をより精度高く行うことが可能となる。
【００４７】
（物体範囲の決定に関する他の形態）
ここでは、物体範囲の決定の手法についての形態を説明する。例として人体を対象物体として物体範囲を決定する例を説明するが、物体は特に人体に限らない。
物体範囲を決定する一つ目の形態として、検出物体の事前分布に基づいて物体範囲を決定する形態を説明する。図７（Ｂ）に、等高線で物体の形状の事前分布５０２ｅを示す。
事前分布を算出する具体的な手順は以下のとおりである。まず学習画像から物体を検出し、物体の検出窓５０２ｂを基準として検出窓５０２ｂ周辺の各画素が物体の前景領域に含まれた頻度を集計して画素ごとに確率値を求める。これが物体の形状の事前分布５０２ｅとなる。
この形態では、この事前分布の値が所定の閾値以上であった画素を物体範囲とする。図７（Ｂ）において事前分布を閾値で二値化して得た物体の物体範囲５０２ｄを太線で示す。
本形態では、より人体の形状にフィットした必要十分な範囲を範囲と決定することができるので、判別精度の向上や計算処理量の低減が期待できる。
【００４８】
物体範囲を決定する二つ目の形態として、物体検出手段１０３の認識方式が複数の部分テンプレートを用いる認識方式である形態を説明する。図７（Ｃ）に示すように、合計６つの部分テンプレートはそれぞれ所定の部位にマッチした位置に検出されている。なお、図７（ｃ）では、頭部のテンプレート５０３ｅにのみ記号を付けて図示している。
この形態では、物体範囲決定手段１０４が６つの部分テンプレートをそれぞれ所定の画素だけ拡大し、その和集合５０３ｄの範囲を物体範囲とする。
【００４９】
また、物体範囲を決定する三つ目の形態として、図７（Ｇ）に示すように、非特許文献７のような物体の骨格を推定する物体検出手法を用いる形態も考えられる。この場合、物体検出手段１０３から出力された骨格５０７ｅを所定の画素だけ膨張させて、それを物体範囲５０７ｄとする。
【００５０】
また、物体範囲を決定する四つ目の形態として、部分テンプレートの事前分布を用いる形態を説明する。この形態では二つ目の形態と同様に物体検出手段１０３により複数の部分テンプレートが検出されて、その位置が得られるものとする。そこで、図７（Ｄ）に示すように、予めの部分テンプレート５０４ｅごとに人体の事前分布の領域を作成しておく。これは、一つ目の形態で検出窓５０２ｂに基づいて事前分布を集計したのと同様の手法で、部分テンプレートごとに事前分布を集計したものである。次に、各部分テンプレートごとに事前分布の領域を配置し、その和集合５０４ｄを物体範囲とする。
【００５１】
また、物体範囲を決定する五つ目の形態として、視点や姿勢ごとに物体をサブクラスに分けてサブクラスごとに事前分布を集計して物体範囲とする形態を説明する。このようなサブクラスの事前分布の例を図７（Ｆ）に示す。これは、図７（Ｅ）に示すような左向きの座位の人体５０５ａから集計した事前分布である。５０５ｂは物体の検出窓、５０５ｃは物体範囲を示す。図７（Ｆ）の事前分布５０６ｅは、図７（Ｂ）の立位の人体の事前分布５０２ｅとは大きく異なることが分かる。５０６ｂは物体の検出窓である。人体のように四肢の自由度が高い物体は事前分布の形状も大きく変わるので、本形態のように姿勢のサブクラスごとに必要十分な物体範囲５０６ｄを決定することができれば、その後の局所領域の判別精度を高めることができる。
【００５２】
（物体検出の結果に基づいて相対的に決まる特徴量）
ここでは先に詳細を説明しなかった、物体検出の結果に基づいて決まる特徴量についての詳細を述べる。
局所領域の特徴量を算出する一つ目の形態として、検出物体を中心とする座標値を用いる形態を説明する。図１２（Ａ）に示すように、局所領域７０１ｆの位置を物体７０１ａを中心とする座標上の位置（ｘ’，ｙ’）として求めて、局所領域７０１ｆの２要素の特徴量とする。（ｘ’，ｙ’）は、物体範囲７０１ｃの中心を（０，０）とし、物体範囲７０１ｃの右上を（１，１）とすることで物体サイズによって正規化した座標値である。なお、物体範囲が矩形でなく不定形の場合は、物体範囲に外接する矩形を用いて同様に座標値を算出すればよい。
この位置を表す二次元の特徴量を局所領域の特徴量のベクトルに連結して加える。この連結後の特徴量に基づいて局所領域を判別するサポートベクトルマシンを学習させる。これにより、物体のサイズや物体上の部位の情報を考慮に入れて局所領域の被写体のカテゴリーを判別することが可能となる。例えば同じ黒い局所領域でも、人体の頭部周辺の位置にあれば、人体の髪の毛である可能性が高いため、サポートベクトルマシンによって人体のカテゴリーと判別され易くなる。また、人体の足元にあれば、路上の影の領域の可能性が高いため、地面と判別され易くなる。
【００５３】
局所領域の特徴量を算出する二つ目の形態として、領域間の類似度を用いる形態を説明する。図１２（Ｂ）に示すように、物体の事前分布７０２ｅと局所領域７０２ｆとの類似度を算出して、これを局所領域７０２ｆの特徴量とする。また、物体の背景の範囲７０２ｇ（点線の外枠の範囲）と局所領域７０２ｆとの類似度を算出して、これも局所領域７０２ｆの特徴量とする。７０２ｃは物体範囲である。ただし、現在注目している人体以外にも人体が存在し、その物体範囲が背景領域の範囲７０２ｇに重なっているような場合は、その領域を背景領域の範囲７０２ｇから取り除いた上で類似度を算出することとする。
なお、ここでの類似度は、二つの領域中の色やテクスチャの分布のヒストグラム交差等を用いればよい。以上の２要素の類似度特徴量を数式で表すと、下式（５）のようになる。
類似度特徴量＝［前景類似度，背景類似度］T
前景類似度（局所領域ｘ）＝ｈ（ｆ（局所領域ｘ），ｆ（物体事前分布の領域））
背景類似度（局所領域ｘ）＝ｈ（ｆ（局所領域ｘ），ｆ（物体の背景領域））
・・・（５）
式中の記号Ｔはベクトルの転置である。また、ｈ（ｑ，ｒ）はベクトルｑとｒのヒストグラム交差の値である。ｈはユークリッド距離やカイ二乗距離、又はＫＬダイバージェンスの逆数等でもよい。ｆ（ｚ）は画像中の範囲ｚの中のＲＧＢ値のヒストグラムと、テクスチャのコードブックのヒストグラムを連結した下式（６）のベクトルを返す関数である。テクスチャのコードブックのヒストグラムは非特許文献４等において広く公知のため詳細は省略する。
ｆ（ｚ）＝［範囲ｚのＲＧＢ色ヒストグラムT，範囲ｚのテクスチャヒストグラムT］T
・・・（６）
上記の類似度を使えば、各局所領域が物体の前景の特徴に近いか背景の特徴に近いか、認識時に検出された個別の検出物体に対しての類似度の情報を加えることができる。このため、色やテクスチャの分布の絶対値のみに基づいて局所領域が物体の前景か背景かを学習する場合に比べて、前景か背景かの判別精度が向上することが期待できる。
【００５４】
類似度を算出する他の手法を図１２（Ｃ）を用いて説明する。図１２（Ｃ）では、物体範囲７０３ｃを含む領域を５×７のブロック７０３ｇに分割し、それぞれのブロック７０３ｇと局所領域７０３ｆの類似度を算出して３５次元のベクトルとする例である。
また、類似度を算出する他の手法を図１２（Ｄ）を用いて説明する。物体検出手段１０３が出力する６つの部分パーツ（頭部のパーツのみ７０４ｅとして記号を付す）の領域と、局所領域７０４ｆとの類似度を算出して６次元の特徴として局所領域７０４ｆの特徴量に加える例である。また、物体の背景の範囲７０４ｇ（点線の外枠の範囲）と局所領域７０４ｆとの類似度を特徴量に加えてもよい。７０４ｃは物体範囲である。図中には４つに分割された背景の範囲７０４ｇの例を破線で示す。このように部分パーツベースの類似度の特徴量を使うと、人体の手のように、色の分布が似たパーツ（顔や逆側の手等）が離れた位置に存在する場合に前景と背景を区別する手掛かりになることが期待できる。上記のように複数の背景箇所との類似度を特徴量とすることにより、一部の背景領域に人体の一部に似た領域が含まれていても誤判別を抑制することができる。
また、類似度を算出する他の手法を図１２（Ｅ）を用いて説明する。これは、図１２（Ｄ）に示したのと同種の方法である。物体の骨格の推定を行い、物体の骨格に対して位置が決まる所定の領域７０５ｅ（図の円状の領域。頭部近辺の領域のみ記号を付す。）と局所領域７０５ｆとの類似度を算出して特徴量とする。局所領域７０５ｆを、物体の骨格上の複数の領域７０５ｅそれぞれと色やテクスチャが類似しているかどうか比較できるので、局所領域７０５ｆが背景の領域なのか、それとも人体の衣服や手足の一部であるのかを学習ベースで詳細に判別することを可能とする。
【００５５】
［第２の実施形態］
本発明の第２の実施形態を説明する。第２の実施形態では、第１の実施形態と同様に、二次元の画像データを入力画像とし、その画像中の被写体のカテゴリー及びその領域を認識する。ただし、第２の実施形態の目的は人体や馬、車といった所定の対象物体の領域を正確に抽出することとし、対象物体以外の被写体のカテゴリーの領域は全て背景の領域として領域の区別を行わないものとする。
また、本実施形態は、対象物体の間に重なりがある場合に、どの領域がどちらの物体であるかを正確に判別することを特に重視する。図１３（Ａ）に、本実施形態において画像認識の対象とする端的な例を示す。これは、乗馬をしている人間の画像を図示したものである。一般に図１３（Ｂ）に示すような物体の重畳領域６０２の中の局所領域がどちらの物体に属するか、或いはどちらでもない背景領域であるかを判別することは困難な課題である。
本実施形態では、上記のように人体と馬の重畳した領域６０２を人体の領域６０１及び馬の領域６０３とは異なる、独立した一つのカテゴリーとして扱う。具体的には、重畳領域のみのデータを集めて学習データを作成し、人体と馬の重畳領域に特化した判別基準のパラメーターを学習して用いる。これにより、人体と馬の重なり方に共通する特徴が学習され、重畳領域の被写体のカテゴリーの判別をより正確に行うことができるようになる。
【００５６】
第２の実施形態に係る画像認識装置の構成は第１の実施形態と同様である。ここでは、認識対象となる物体のカテゴリーとして物体Ａ、Ｂ、Ｃの三つが定められているものとする。また、物体検出手段１０３には、上記三つの物体Ａ、Ｂ、Ｃを検出する検出機能がそれぞれ用意されているものとする。
【００５７】
（学習処理の説明）
本実施形態の学習処理は、大きく分けて２種類の判別基準を学習する。一つは、単一の物体の物体範囲内の局所領域を判別するための判別基準である。もう一つは、二つの物体の重畳領域中の局所領域を判別するための判別基準である。
【００５８】
一つ目の判別基準の学習処理は、第１の実施形態と同様である。繰り返しを避けるためここでは詳細な説明は省くが、最終的にこの学習で、物体Ａ、Ｂ、Ｃそれぞれについて物体が検出されたという前提で学習した三つの判別基準のパラメーター、及び、物体が検出されていないという前提で学習した１つの判別基準のパラメーターの、合わせて４つの判別基準が得られる。ここで、物体が検出されていないという前提で学習した判別基準のパラメーターは、第１の実施形態と同様に以降で汎用的な判別基準と呼ぶ。
【００５９】
二つ目の判別基準の学習処理は、本実施形態に特有のものであり、以降に説明する手順の処理を行う。まず物体検出手段１０３で全学習データ中の全ての物体Ａ、Ｂ、Ｃを検出し、物体範囲決定手段１０４で各検出物体の物体範囲を決定しておく。次に、物体カテゴリーの全組み合わせのペアを作る。ここでは、物体Ａ−Ｂ、Ａ−Ｃ、Ｂ−Ｃの３個のペアを作る。次に、学習画像中の全物体の物体範囲の位置座標とサイズとに基づいて各物体範囲の間に互いに重畳している領域がないか調べ、あればそのような領域を抽出して三つの物体ペアごとに分けて記憶しておく。このようにすることで物体のペアごとに重畳領域の学習データが作成される。次に、物体ペアごとに領域の判別基準を学習する。
【００６０】
物体ペアの重畳領域の判別基準の学習の詳細は以下のようになる。ここでは、例としてＡ−Ｂの物体ペアの重畳領域の判別基準を学習することを考える。物体ＡとＢの重畳領域中の局所領域ｘを判別する際には、出力の選択肢として物体Ａ、Ｂ、Ｃ、背景の４つのカテゴリーの可能性がある。そこで、第１の実施形態と同様にサポートベクトルマシンを４個用意してそれぞれを上記の４カテゴリーに対応させる。そして、カテゴリーに応じた正事例データと負事例データを与えて各サポートベクトルマシンで２クラス判別の学習を行う。この結果、認識時に重畳領域中の局所領域の特徴量を入力すると上記４つのカテゴリーのそれぞれの尤度を表す判別スコアが出力されるようになる。
判別基準のパラメーターのセットとして、図６（Ｃ）に示すように１つの汎用的な判別基準のパラメーター、三つの物体カテゴリーの判別基準のパラメーター、三つの物体ペアの重畳領域の判別基準のパラメーター、の計７つの判別基準のパラメーターのセットが得られる。各判別基準のパラメーターには、それぞれ物体Ａ、Ｂ、Ｃ、背景の４つの領域のカテゴリーに対応した４つのサポートベクトルマシンのパラメーターが含まれる（不図示）。また、上記に加えてサポートベクトルマシンの判別スコアを確率値に置き換えるためのパラメーターも含まれる。ここで、確率値に置き換えるためのパラメーターは、第１の実施形態と同様の方法でロジスティック関数のパラメーターを求めたものである。
【００６１】
（認識処理の説明）
図１４は、本実施形態における認識処理の流れを示すフローチャートであり、図１を併用して認識処理を説明する。ここでは、簡単のために認識対象物体のカテゴリーを人体と馬の２種類のみに限定して説明する。
第１の実施形態と異なるのは、本実施形態では物体のみを対象カテゴリーとし、背景に関しては区別を行わない点である。
ステップＳ４０１、Ｓ４０２は、図３のステップＳ１０１、Ｓ１０２と同様である。
ステップＳ４０３で、物体検出手段１０３が入力画像中に所定の物体、ここでは人体と馬があるか否かの認識処理を行う。
ステップＳ４０４で、ステップＳ４０３において物体（人体と馬）が検出されたか否かを判定し、物体が検出されていれば、ステップＳ４０５に進み、物体が検出されていなければ、認識処理はそこで終了する。
【００６２】
ステップＳ４０５で、物体範囲決定手段１０４が各物体の物体範囲を決定する。
ステップＳ４０６で、領域判別手段１０５が領域判別基準保持手段１０６から判別基準のパラメーターを読み出す。このとき、判別基準のパラメーターを物体種別ごとに、ここでは人体と馬ごとに読み出す。
ステップＳ４０７で、第１の実施形態と同様に、領域判別手段１０５が各検出物体の判別スコアを０から１の値域に変換して、物体の存在確率の推定値として求めておく。
【００６３】
ステップＳ４０８で、領域判別手段１０５が領域判別基準保持手段１０６より汎用的な判別基準のパラメーターを読み出す。
ステップＳ４０９で、領域判別手段１０５が入力画像中の物体範囲の位置座標とサイズとに基づいて各物体範囲の間に互いに重畳している領域がないか調べ、もし異なるカテゴリーの物体の間に重畳している領域があれば、ステップＳ４１０に進む。
ステップＳ４１０で、領域判別手段１０５が領域判別基準保持手段１０６から、学習処理で求めた重畳領域に特化した判別基準のパラメーター、ここでは人体と馬の重畳領域の判別基準のパラメーターを読み出す。
【００６４】
ステップＳ４１１で、領域判別手段１０５が全ての物体範囲内の局所領域の特徴量を算出する。
ステップＳ４１２で、領域判別手段１０５がサポートベクトルマシンによって物体範囲の種別ごとに領域の判別を行う。ここでの物体範囲の種別とは、人体の物体範囲、馬の物体範囲、及び人体と馬の物体範囲が重畳した領域、の３種類である。物体が重畳してない領域については第１の実施形態と同様の方法でカテゴリーの判別を行い、ステップＳ４１３で確率値を求める。例として人体のみが検出された物体範囲内の局所領域ｘの各カテゴリーの確率は下式（７）で求める。
ｐ（Ｌx＝ｃ）＝  ｐ（Ｌx＝ｃ｜Ｏ＝  ｂｏｄｙ）・ｐ（Ｏ＝ｂｏｄｙ）
＋ｐ（Ｌx＝ｃ｜Ｏ＝¬ｂｏｄｙ）・ｐ（Ｏ＝¬ｂｏｄｙ）・・・（７）
ここで、ｃは人体、馬、背景の３カテゴリーのいずれかである。
さらに人体と馬の物体範囲が重畳している領域については、下式（８）のようにして各カテゴリーの確率値を求める。
ｐ（Ｌx＝ｃ）＝ｐ（Ｌx＝ｃ｜Ｏx＝  ｂｏｄｙ＆  ｈｏｒｓｅ）・ｐ（Ｏx＝  ｂｏｄｙ＆  ｈｏｒｓｅ）
＋ｐ（Ｌx＝ｃ｜Ｏx＝  ｂｏｄｙ＆¬ｈｏｒｓｅ）・ｐ（Ｏx＝  ｂｏｄｙ＆¬ｈｏｒｓｅ）
＋ｐ（Ｌx＝ｃ｜Ｏx＝¬ｂｏｄｙ＆  ｈｏｒｓｅ）・ｐ（Ｏx＝¬ｂｏｄｙ＆  ｈｏｒｓｅ）
＋ｐ（Ｌx＝ｃ｜Ｏx＝¬ｂｏｄｙ＆¬ｈｏｒｓｅ）・ｐ（Ｏx＝¬ｂｏｄｙ＆¬ｈｏｒｓｅ）
・・・（８）
ここで、ｃは人体，馬，背景の３カテゴリーのいずれかである。また、右辺の第１項の条件付確率ｐ（Ｌx＝ｃ｜Ｏx＝ｂｏｄｙ＆ｈｏｒｓｅ）は、人体と馬の重畳領域を判別するために学習した判別基準のパラメーターで局所領域ｘの判別スコアを求め、さらにそのスコアを確率値に変換したものである。
第２項の条件付確率ｐ（Ｌx＝ｃ｜Ｏx＝ｂｏｄｙ＆¬ｈｏｒｓｅ）は、人体のみを検出した領域で学習して求めた判別基準のパラメーターを用いて得た確率値であり、式（７）の右辺の第１項の条件付確率と同一である（式（７）とは表記を変えている）。同様に第３項の条件付確率は、馬のみが検出された領域で学習した判別基準のパラメーターで求めた確率値、第４項の条件付確率は、物体が検出されてない領域で学習した汎用的な判別基準のパラメーターで求めた確率値である。
また、第１項のｐ（Ｏx＝ｂｏｄｙ＆ｈｏｒｓｅ）は、人体と馬の二つの物体が同時に物体検出手段１０３で検出されているときに、二つの物体が真に存在する事前確率である。この値は、ステップＳ４０７で求めておいた物体の存在確率の値の積である。即ち、もしここで下式（９）を満たせば、各項の事前確率は下式（１０）と計算できる。
ｐ（Ｏx＝ｂｏｄｙ）＝０．７
ｐ（Ｏx＝ｈｏｒｓｅ）＝０．６・・・（９）
ｐ（Ｏx＝  ｂｏｄｙ＆  ｈｏｒｓｅ）＝０．７×０．６＝０．４２
ｐ（Ｏx＝  ｂｏｄｙ＆¬ｈｏｒｓｅ）＝０．７×（１−０．６）＝０．２８
ｐ（Ｏx＝¬ｂｏｄｙ＆  ｈｏｒｓｅ）＝（１−０．７）×０．６＝０．１８
ｐ（Ｏx＝¬ｂｏｄｙ＆¬ｈｏｒｓｅ）＝（１−０．７）（１−０．６）＝０．１２
・・・（１０）
なお、ここでは、二つの物体の存在確率は独立であるとして事前確率を求めている。
以上のような数式に基づいて計算を行えば、物体の重畳した領域についても確率的枠組みで判別結果を統合できることが示された。
【００６５】
ステップＳ４１４で、認識結果出力手段１０７がこれまでに得られた人体の物体範囲、馬の物体範囲、重畳領域、の三つの物体範囲内の局所領域の判別結果を統合する。具体的には、各局所領域について最大の尤度のカテゴリーを各局所領域のラベルとする。そして、第１の実施形態と同様にして同一のカテゴリーの隣接領域を一つの領域に統合して出力する。本実施形態の認識結果の例を図１３（Ｃ）に示す。
【００６６】
このように第２の実施形態では、物体が重畳した判別の難しい対象に対しても、重畳領域に特化した判別基準のパラメーターを用いることでより正確に領域が判別できることを示した。
なお、学習データにおいて重畳の頻度が一定数以下だった物体ペアは処理速度を優先して学習及び認識処理を省略してもよい。
また、もし三つ以上の物体が重畳している領域がある場合は、ペアごとに分けて判別を行い、その内で最も尤度の高かったカテゴリーを採用すればよい。
【００６７】
次に、第２の実施形態の特徴量についての補足の説明を行う。物体が重畳している領域を判別する際にも、第１の実施形態で用いた、物体検出の結果に基づいて相対的に決まる特徴量が有効である。ただし、重畳した領域においては関係する物体が二つあるため、相対的な特徴量が２系統算出される問題がある。これを解決する工夫としては、二つを連結して用いることである。具体的には、局所領域ｘの特徴量を下式（１１）と定義すればよい。
局所領域ｘの特徴量：＝［通常の特徴量T，物体１に対する相対的な特徴量T，
物体２に対する相対的な特徴量T］T・・・（１１）
ここで、物体１に対する相対的な特徴量とは、第１の実施形態と同様に局所領域ｘと物体１との類似度や、局所領域ｘと物体１の相対的な位置をベクトルにしたものである。なお、物体１と物体２の順序がデータによってまちまちだと学習・判別を正しく行えないので、予め物体の順序リストを決めておき、リスト中で先順の物体を物体１、後順の物体を物体２として常に同じ順序で連結するようにしておくとよい。
以上で物体間に重なりがある場合に、物体の領域を正確に判別するための第２の実施形態の説明を終える。
【００６８】
［第３の実施形態］
本発明の第３の実施形態を説明する。第３の実施形態の目的は、入力データとして一つ或いは複数の工業用部品の写った距離画像のデータを用い、被写体である工業用部品の種別、領域、位置姿勢、重畳関係、を推定することである。ここでは、上記の認識結果に基づいて、マニピュレーター等で物体の自動把持等を行うような用途を想定している。
第３の実施形態は、本発明はこれまで説明した実施形態以外に様々な構成のパターン認識に広く適用可能であることを示すための例として開示するものである。本実施形態は先の二つの実施形態に比べて、局所領域の判別、及び物体の検出において大きく異なる方式を採用している。また、本実施形態では、認識精度を高めるために局所領域の判別と物体検出の認識を交互に繰り返し処理する動作フローを備えている。この二点において本実施形態の構成は先の二つの実施形態と異なる。
そのために、却って本実施形態と他の実施形態に共通する本発明の根幹を成す発明性の要素がより強調されるものである。その一つは、即ち物体の種別や姿勢に特化した判別基準を学習しておき、物体検出の結果に応じて局所領域の判別基準のパラメーターを切り替えることである。また、一つは、画像中の各局所領域が物体の一部であるか、背景であるかを判別する際に、物体検出の結果によって値の変わる＜物体に相対的な特徴量＞も用いることで判別の精度を高めることである。この二点が本実施形態においても先に説明した実施形態と同様に認識精度の向上に効果的であることを以下に示す。
本実施形態の概要について述べる。本実施形態は、大きく分けて二つの認識モジュールからなる。一つは、ランダムフォレストと呼ばれる分類木手法で局所領域の判別を行う認識処理である。また、一つは、判別結果を投票することで物体の種別、位置及び範囲を推定する認識処理である。本実施形態では、物体検出の結果によって分類木の判別基準のパラメーターを切り替えることで、局所領域を詳細に判別することを可能とする。
【００６９】
図８（Ｂ）に、第３の実施形態に係る画像認識装置の構成を示す。構成要素は部分的に第１の実施形態に係る画像認識装置と共通である。図８（Ｂ）を用いて各構成要素の機能と機能間の作用について説明する。
データ入力手段１３１は、画像データを入力し、局所領域生成手段１３２と領域判別手段１３５に画像を送る。
局所領域生成手段１３２は、後述する所定の方法で入力画像から局所領域を抽出する。
領域判別手段１３５は、画像中の局所領域がどの物体種のどの姿勢のどの部位のものか、或いは背景の局所領域かの判別を行う。
物体検出手段１３３は、各局所領域の判別結果に基づいて物体の種別と姿勢の推定を行う。
物体範囲決定手段１３４は、物体検出手段１３３で得られた物体の認識結果に基づいて物体範囲決定基準保持手段１３８から物体範囲決定基準のパラメーターを読み出しで物体範囲を決定する。
領域判別基準保持手段１３６は、領域の判別基準のパラメーターを保持する。
認識結果出力手段１３７は、全物体の判別結果を統合して出力する手段である。
物体範囲決定基準保持手段１３８は、物体範囲決定基準のパラメーターを保持する。
【００７０】
この基本構成には、領域判別手段１３５によって出力された局所領域の判別情報を物体検出手段１３３に入力する経路と、物体範囲決定手段１３４によって出力された物体の物体範囲の情報を領域判別手段１３５に入力する経路とが存在する。これにより、信号の経路にループが形成されるが、これは前の二つの実施形態の基本構成になかった要素である。この構成により、物体範囲決定手段１３４によって物体範囲を決めた後に、その位置や物体の姿勢等の情報を用いて領域判別手段１３５が再び物体範囲内の局所領域が物体であるか否かをより正確に判別することができる。さらにその結果を受けて物体範囲決定手段１３４がより正確に物体範囲を決定する繰り返し処理を行う。これにより、一度のみで判定を行うよりも、領域の判別精度及び物体の位置姿勢の推定精度を高めることを可能とする。
【００７１】
本実施形態では、領域判別手段１３５において複数の分類木で構成されるランダムフォレストと呼ばれる分類手法を用いる。ランダムフォレストによるパターンの判別の方法は公知の手法である非特許文献８に順じたものである。以下にその内容を簡単に説明する。
本実施形態が用いるランダムフォレストは、各分類木が各ノードで入力パターンに対して簡易な問い合わせ（以降これをクエリーと呼ぶ）を行う。そして、その結果に応じて根ノードから葉ノードまで辿ることにより、入力パターンを末端の葉ノードに分類する。ここで、クエリーは例えば局所領域中の所定の二点の画像の値の差が所定の閾値以上か否かを問うような簡易なものである。次に、ランダムフォレストは各分類木の分類結果を多数決して最終的な分類結果とする。
本実施形態のランダムフォレストの各分類木は、以下のように学習して作成しておく。即ち、様々な物体の姿勢の様々な局所領域、及び負事例としての背景の局所領域、を学習データとして与え、学習データに基づいて枝を分岐させていく。その際は、葉ノードの学習データが所定数以下になるまで分岐を行う。また、葉ノードにはそこに分類された学習データの属性の情報を記憶しておく。ここでの属性とは、局所領域が物体に属するか否か、また物体に属する場合はその物体の種別と姿勢、及び物体上の位置である。
認識処理の際には、入力された局所領域について学習時と同様に各分類木で分類を行って葉ノードまで辿り、葉ノードに分類されている学習データの属性の情報を得る。この情報を各分類木で多数決することで、入力された局所領域がいずれの物体種のどの姿勢のどの部分領域であるか、或いは背景であるかを推定する。
ランダムフォレストには、ここで説明したもの以外に様々なバリエーションがある。本発明におけるランダムフォレストの形態もここで説明したものに限るものではなく、局所領域の属性を推定できる形態であればよい。ランダムフォレストの更なる詳細は非特許文献８等を参照されたい。
【００７２】
図１５は、本実施形態における認識処理の流れを示すフローチャートであり、図８（Ｂ）を併用して認識処理を説明する。
認識処理の流れは大きく二つに分けられる。一つ目は、画像の全局所領域について判別を行い、その結果に基づいて画像上に存在している可能性のある物体を候補物体として抽出し、その種別と大まかな位置姿勢を推定する前半のフェーズである。二つ目は、候補物体の物体範囲を限定し、物体に特化した判別基準を用いて再び局所領域の判別を行い、物体の種別、位置姿勢、領域、を正確に同定する後半のフェーズである。
【００７３】
まず前半のフェーズの処理を説明する。ステップＳ５０１で、データ入力手段１３１が画像を入力する。入力画像は、各画素の値が被写体までの距離の値で構成された距離画像であるとする。距離画像は、データ入力手段１３１が備える光学的手段を用いて計測したものであり、ここではスリット光の走査と三角測量により距離画像を取得したものとする。
入力画像には、一つ或いは複数の物体が映っている可能性があるとする。物体の候補は予め与えられているが、いずれの物体が写っているかは未知とする。また、物体の見えの大体のサイズは予め与えられているものとする。
【００７４】
ステップＳ５０２で、局所領域生成手段１３２が入力画像から局所領域を生成する。これは、先の二つの実施形態の局所領域の形態と異なり、画像全体から一定間隔で所定のサイズの矩形パッチ状の領域を切り出してこれを局所領域とする。また、局所領域同志は重なっていてもよい。
【００７５】
ステップＳ５０３で、領域判別手段１３５が局所領域を判別するための判別基準のパラメーターを読み出す。判別基準のパラメーターとは、ランダムフォレストに関するパラメーターであり、先述のように学習データとして様々な物体の姿勢の様々な局所領域、及び背景を与えて学習して得たものである。
ランダムフォレストのパラメーターは各ノードで分岐を行う際に用いるクエリーに関するパラメーター、及び各葉ノードに格納された局所領域に関する属性からなる。クエリーのパラメーターとは、参照する画素の相対座標値や閾値等である。また、局所領域に関する属性とは局所領域が物体に属するか否か、また物体に属する場合はその物体の種別と姿勢、及び物体上の位置である。
【００７６】
ステップＳ５０４で、領域判別手段１３５がランダムフォレストを動作させる。これにより、各局所領域が物体の領域か背景か、物体であればどの種別のどの姿勢のどの部分であるかが推定される。
【００７７】
ステップＳ５０５で、物体検出手段１３３が各局所領域の判別結果を統合する。具体的には投票の手法を用いる。ここでは、物体に属すると判定された各局所領域から、属する物体の種別、姿勢、物体の中心位置（ｘ，ｙ）からなる４次元のパラメーター空間への投票を行う。なお、ここで物体の姿勢は本来３次元の自由度を持つところであるが、投票が疎になるのを防ぐために予めベクトル量子化して離散的な１次元パラメーターとしてあるものである。
投票の結果を図１６に示す。図中の黒枠の矩形が物体に属すると判定された局所領域であり、×印が各局所領域から投票された物体の推定中心位置である。（ここでは姿勢と物体の種別の情報は図示していない。）
【００７８】
ステップＳ５０６で、物体検出手段１３３が所定の大きさに分割したビンごとに投票を集計する。
ステップＳ５０７で、所定数以上の投票を集めたビンがあれば候補物体としてこれを検出する。図１６には、投票の集計の結果候補物体Ａと候補物体Ｂがそれぞれ図の位置姿勢で検出された結果例を示している。ただし、ここで物体Ｂに関しては実際には存在しない誤検出の候補物体である。
【００７９】
ここまでが認識処理の前半のフェーズとなる。以降の後半のフェーズでは、検出された物体の候補ごとに、詳細な領域の判別を行う。後半のフェーズの処理の結果の例として図１８を併せて用いて説明する。
ステップＳ５０８で、物体範囲決定手段１３４が候補物体の物体範囲を決定する。ここでは、物体範囲決定基準のパラメーターとして物体の種別と姿勢ごとに物体の前景マスクのセットが物体範囲決定基準保持手段１３８に記憶されているとする。物体範囲決定手段１３４は対応する物体の前景マスクを読み出し、マスクを所定の画素数だけ膨張させて物体範囲として決定する。
【００８０】
ステップＳ５０９で、領域判別手段１３５がそれぞれの候補物体について対応する判別基準のパラメーターを呼び出す。これは、前半のフェーズと同様、ランダムフォレストのパラメーターのセットである。ただし、前半で用いた判別基準のパラメーターは全ての物体種別と全ての姿勢を分類するためのパラメーターであったが、このステップの時点ではすでに候補物体の種別と大まかな姿勢が分かっている。
そこで、ここでは候補物体の種別とその姿勢に特化した判別基準のパラメーターを読み出す。このような判別基準のパラメーターの例を図１７に示す。図の例では学習画像を物体の種別と姿勢とで複数のグループに分け、それぞれを予め個別にランダムフォレストで学習して判別基準のパラメーターを得て記憶してあるものである。
なお、候補物体に細かな形状のバリエーションの違い等のサブタイプが存在する場合は、これについても個別に判別基準のパラメーターを学習しておき、サブタイプごとに判別基準のパラメーターを保存しておく。例えば図１７に示すように、物体Ａに関しては前半のフェーズでは区別しなかった物体Ａ1とＡ2の二つのサブタイプの判別基準のパラメーターが学習されて保存されているとする。ここでは、物体Ａについては後半のフェーズで物体Ａ1とＡ2の両方の判別基準のパラメーターを読み出し、二つの物体を候補物体として以降の処理を行う。
【００８１】
なお、物体Ａ1とＡ2のように形状の異なる物体を同じ物体のサブタイプとするか、それとも独立した異なる物体の種別として扱うか、またサブタイプをいくつ用意するか等は対象データと目的に応じてユーザーが設定を行うことになる。ただし、これを自動的に行う方法も考えられるので以下に説明する。
まず全検出対象物体をその形状に基づいて階層クラスタリングする。そして、ある適当な閾値以上の階層のクラスターを物体の大分類、閾値以下の階層のクラスターを物体の小分類とし、大分類を物体の種別、小分類をその物体のサブクラスとして扱う。この手法を行うためには、対象物体の間にクラスタリングのための類似度が定義されている必要がある。これは、ガウス写像等の三次元形状の特性を表現する特徴量を利用して特徴量間の距離として得ることができる。
【００８２】
ステップＳ５１０で、ステップＳ５０９において読み出した判別基準のパラメーターを用いて再び領域判別手段１３５が候補物体ごとに局所領域の判別を行う。このとき、判別を行う局所領域は各物体の物体範囲内の局所領域に限る。この判別処理の結果、各局所領域が候補物体のどの部位であるか或いは背景かがより正確に推定される。
ステップＳ５１１で、物体検出手段１３３が候補物体の領域と判別された局所領域を用いて再び投票を行う。ここでの投票空間は、候補物体の中心位置と姿勢の三次元の空間である。
【００８３】
ステップＳ５１２で、上記の投票結果を所定の大きさのビンごとに集計し、最も投票の多かったビンのパラメーターを候補物体のパラメーターとする。これにより、候補物体のより詳細な位置と姿勢とが求まる。
ステップＳ５１３で、物体範囲決定手段１３４が候補物体の物体範囲を再び決定する。物体範囲決定手段１３４は、ステップＳ５１２の投票結果を参照し、複数のビンに投票が分散していた場合は、位置姿勢の推定の信頼度が低いとして、物体範囲を大きく設定する。もし特定のビンに多数の投票が集中していた場合は、推定の信頼度が高いとして物体範囲を小さく設定する。物体範囲のサイズの設定の仕方の具体例としては例えば、投票の分散値に比例して物体前景のマスクを膨張させる画素数を決定する等とすればよい。
【００８４】
以上のステップＳ５１０からステップＳ５１３までを複数回繰り返して認識結果を更新し、ステップＳ５１４で所定数を繰り返したか或いは物体範囲が収束して変化しなくなったかを判定して次のステップＳ５１５進む。
ステップＳ５１５で、認識結果出力手段１３７が複数の候補物体の領域の判別結果を受け取る。このうち所定の値以上の投票のあった候補物体は実際に存在するとして検出する。そして、物体の全検出結果を統合してそれぞれの領域を出力する。
以上の認識処理の後半のフェーズの処理の結果の例を図１８に示す。ここでは、まず候補物体として物体Ａと物体Ｂの２種類の物体が得られている。次に、物体種別と姿勢によってそれぞれの物体範囲を決定し、候補物体の種別とその姿勢に対応した判別基準のパラメーターを読み出す。ここでは、物体Ａにはサブタイプである物体Ａ1と物体Ａ2の二つが存在し、物体Ａ1、Ａ2、Ｂの計三つの判別基準のパラメーターが読み出されている。次に、各三つの候補物体についてそれぞれの判別基準で領域の判別を行い、物体範囲の更新を所定数繰り返す。そして、三つの候補物体の結果を統合して出力する。ここでは、最終的に画像中に物体Ａ2の領域が存在するという結果を出力している。
【００８５】
（物体検出の結果に基づいて相対的に決まる特徴量）
ここでは、上述のステップＳ５１０での局所領域の判別において、局所領域を精度高く判別する工夫について述べる。その工夫とは、局所領域が大まかに物体のどの位置にあるかの情報を与えてランダムフォレストを学習させることである。具体的には、分類木のクエリーの候補に下式（１２）のようなタイプのクエリーを追加する。
δ＝１    ｉｆ  （ｘ’−ｘc）θ1＋（ｙ’−ｙc）θ2＋θ3＞０
δ＝０    ｏｔｈｅｒｗｉｓｅ・・・（１２）
ここで、δはクエリーの結果の値、（ｘc，ｙc）は物体の中心位置、（ｘ’，ｙ’）は局所領域の中心位置、Θ＝｛θ1，θ2，θ3｝はクエリーのパラメーターである。クエリーの模式図及び結果の例を図１９（Ａ）と（Ｂ）に示す。図１９の例では、局所領域が物体の右上部に位置するか、物体の左下側に位置するかを問うようなクエリーとなっている。また、この例の局所領域はクエリーの条件式を満たすので、左側の枝に分類される。
【００８６】
学習時には、このようなクエリーをランダムなパラメーターΘで複数個生成してクエリーの候補セットに追加しておく。すると例えば見えが類似しているが物体上の位置が大きく異なるような局所領域がある場合、このクエリーが選択されて両者を精度よく区別するような学習がなされる。
上記のクエリーの形態は、本発明において新規な工夫の一つである。上記の工夫が非特許文献８等の既存の手法で今まで用いられてこなかった理由は以下である。即ち、上記のクエリーは物体を検出してその結果を用いて領域を詳細に判別するという本実施形態のような構成においてのみ実現が可能であるが、従来手法はそのような構成を取っていないためである。これは本発明の重要な効果の一つであるのでここで特に強調しておく。
【００８７】
次に、第３の実施形態の他の形態として、物体が重畳している場合にその前後関係を判別する工夫について述べる。ここでは、図２０（Ａ）に示すように二つの物体が重畳しており、図中の二つの黒太枠がそれぞれ物体ＱとＲとして推定された物体範囲であるとする。このような場合は、重畳領域中の全ての局所領域を調べてそれぞれどちらの候補物体に投票をしているかをカウントする。そして、投票数の多い方の物体がこの重畳領域の前景であると判定すればよい。図２０（Ｂ）と図２０（Ｃ）に物体Ｑの投票元となった局所領域の例を局所領域１００１ａ、１００１ｂ、物体Ｒの投票元となった局所領域の例を局所領域１００２ａ、１００２ｂとしてそれぞれ二つずつ示す。図２０の例の場合は、重畳領域内において物体Ｒの方に投票した局所領域が多いため、重畳領域は物体Ｒの領域であるとして最終的な結果である図２０（Ｄ）のような領域判別の結果が出力されている。
【００８８】
次に、第３の実施形態の他の形態として、物体のサイズ変動に対応するための工夫について述べる。本形態では、物体の見えの大まかなサイズは予め与えられているとしたが、実際には物体のサイズが不明な場合もある。そのようなケースに対応する工夫の例の一つは下記のようなものである。即ち、階層的な異なる解像度画像等を利用して解像度を変えて複数回の認識を行う。次に、物体が重畳した領域があるかどうか判定し、重畳領域については先に２物体の重畳を判別したときと同じ方法で投票数の多い方の物体の領域を採用する。そして結果を統合して出力すればよい。
以上で画像中の工業用部品の種別、位置姿勢、正確な領域、領域の重畳関係、を推定する第３の実施形態の説明を終える。
【００８９】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９０】
１０１：データ入力手段、１０２：局所領域生成手段、１０３：物体検出手段、１０４：物体範囲決定手段、１０５：領域判別手段、１０６：領域判別基準保持手段、１０７：認識結果出力手段
【図１】
0006395481.tif 000002
【図２】
0006395481.tif 000003
【図３】
0006395481.tif 000004
【図４】
0006395481.tif 000005
【図５】
0006395481.tif 000006
【図６】
0006395481.tif 000007
【図７】
0006395481.tif 000008
【図８】
0006395481.tif 000009
【図９】
0006395481.tif 000010
【図１０】
0006395481.tif 000011
【図１１】
0006395481.tif 000012
【図１２】
0006395481.tif 000013
【図１３】
0006395481.tif 000014
【図１４】
0006395481.tif 000015
【図１５】
0006395481.tif 000016
【図１６】
0006395481.tif 000017
【図１７】
0006395481.tif 000018
【図１８】
0006395481.tif 000019
【図１９】
0006395481.tif 000020
【図２０】
0006395481.tif 000021