(57)【特許請求の範囲】
【請求項１】
複数のパーツにより構成される対象物体を含む画像を取得する取得手段と、
予め学習されたモデルを用いて、前記対象物体の複数のパーツそれぞれの候補領域を検出する第１の検出手段と、
前記第１の検出手段により検出された候補領域の位置の変動に基づいて、前記複数のパーツから相対的に信頼性が高い第１のパーツと相対的に信頼性の低い第２のパーツとを選択する選択手段と、
前記選択手段により選択された第１のパーツに基づいて前記第２のパーツの位置を変更することにより、前記モデルを再構築する再構築手段と、
前記再構築手段により再構築されたモデルを用いて、前記対象物体の複数のパーツの位置を検出する第２の検出手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記選択手段は、前記複数のパーツそれぞれについて検出された候補領域の分散共分散行列を算出し、当該分散共分散行列の所定の要素値が第１の閾値以下となるパーツを第１のパーツとして選択することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１の検出手段は、前記候補領域の確からしさを示すスコアを算出し、
前記選択手段は、前記スコアが第２の閾値以上の候補領域を含むパーツを前記第１のパーツとして選択することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記画像を複数のセグメントに分割し、分割したセグメントの特徴量を抽出する抽出手段を更に有し、
前記選択手段は、前記抽出した特徴量の分散共分散行列の所定の要素値が第３の閾値以上となるパーツを前記第１のパーツとして選択することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記抽出手段は、前記特徴量としてＲＧＢヒストグラムを抽出することを特徴する請求項４に記載の画像処理装置。
【請求項６】
前記再構築手段は、前記第１のパーツについて検出された前記候補領域のうちの所定の候補領域に対する位置の平均および分散共分散行列に基づいて、前記第２のパーツの位置を決定することを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記第１の検出手段は、前記候補領域の確からしさを示すスコアを算出し、
前記所定の候補領域は、前記第１のパーツについて検出された前記候補領域のうちスコアが最も高い候補領域と、当該候補領域との重複率が第４の閾値以上の候補領域とからなることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記再構築手段は、前記第１のパーツに基づく補間により前記第２のパーツの位置を変更することを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項９】
前記再構築手段は、前記第１のパーツと左右対称の関係にある前記第２のパーツについて、当該第１のパーツを対象軸に対して反転させることにより前記第２のパーツの位置を変更することを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項１０】
前記第１の検出手段は、特定のパーツの領域を検出する検出器を用いて前記特定のパーツの領域を検出し、
前記選択手段は、前記検出器を用いて検出された前記特定のパーツを前記第１のパーツとして選択することを特徴とする請求項１から９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記特定のパーツは人体の顔であることを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記第１の検出手段、前記選択手段、前記再構築手段のうち少なくとも１つの手段は、前記複数のパーツにおける制約に基づいて処理を実行することを特徴とする請求項１から１０のいずれか１項に記載の画像処理装置。
【請求項１３】
前記複数のパーツにおける制約は、前記パーツ同士の共起により表現されることを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記選択手段により選択される前記第１のパーツの差異が所定数以下となるまで、前記第１の検出手段、前記選択手段、前記再構築手段、前記第２の検出手段により処理を繰り返すことを特徴とする請求項１から１３のいずれか１項に記載の画像処理装置。
【請求項１５】
学習データを用いて、前記モデルを予め学習するための学習手段を更に有することを特徴とする請求項１から１４のいずれか１項に記載の画像処理装置。
【請求項１６】
前記対象物体は１以上の接続点を持つ多関節物体であり、前記パーツは隣接する前記接続点の間に存在することを特徴とする請求項１から１５のいずれか１項に記載の画像処理装置。
【請求項１７】
前記対象物体は人体であり、前記パーツは前記人体の部位であることを特徴とする請求項１から１６のいずれか１項に記載の画像処理装置。
【請求項１８】
複数のパーツにより構成される対象物体を含む画像を取得するステップと、
予め学習されたモデルを用いて、前記対象物体の複数のパーツそれぞれの候補領域を検出するステップと、
前記検出された候補領域の位置の変動に基づいて、前記複数のパーツから相対的に信頼性が高い第１のパーツと相対的に信頼性の低い第２のパーツとを選択するステップと、
前記選択された第１のパーツに基づいて前記第２のパーツの位置を変更することにより、前記モデルを再構築するステップと、
前記再構築されたモデルを用いて、前記対象物体の複数のパーツの位置を検出するステップと、
を有することを特徴とする画像処理方法。
【請求項１９】
コンピュータを、請求項１から１７のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像中の対象物体のパーツの位置を検出する技術に関する。
【背景技術】
【０００２】
非特許文献１には、対象物（オブジェクト）の検出、およびその姿勢を推定するための変形可能パーツモデルが提案されている。この技術では、１つのオブジェクトがツリーモデルの組み合わせで表現され、ツリーのノードがオブジェクトの部分的な領域（部位）とその部位の姿勢（部分姿勢）とをモデル化したもの（パーツモデル）に対応する。各パーツモデルは、オブジェクトの検出時に予め定めた範囲で位置変動が許されており、オブジェクト検出時に各部分姿勢も確定するため、オブジェクトの姿勢推定も同時に行うことになる。以下、このようなモデルを変形パーツモデルとも記載する。
【０００３】
変形パーツモデルを利用する技術として、特許文献１がある。特許文献１には、オブジェクトの変化が画像の特徴量へ与える影響を低減するために、学習画像に共通して存在する「変化のない部分領域」を選択し、利用する。学習時には、次のステップでこの部分領域を選択する。すなわち、（１）正規化された各学習画像から勾配画像を生成し、（２）勾配画像の平均画像として勾配平均画像を生成し、（３）勾配平均画像の画素値が極大となる画素を中心とする部分領域を選択する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１５１４４５号公報
【非特許文献】
【０００５】
【非特許文献１】Ｐ．Ｆｅｌｚｅｎｓｚｗａｌｂ，Ｄ．ＭｃＡｌｌｅｓｔｅｒ，Ｄ．Ｒａｍａｎａｎ，“Ａ  Ｄｉｓｃｒｉｍｉｎａｔｉｖｅｌｙ  Ｔｒａｉｎｅｄ，Ｍｕｌｔｉｓｃａｌｅ，Ｄｅｆｏｒｍａｂｌｅ  Ｐａｒｔ  Ｍｏｄｅｌ，”  ＩＥＥＥ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ  （ＣＶＰＲ），２００８．
【非特許文献２】Ｎ．Ｄａｌａｌ，Ｂ．Ｔｒｉｇｇｓ，“Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  ｏｒｉｅｎｔｅｄ  ｇｒａｄｉｅｎｔｓ  ｆｏｒ  ｈｕｍａｎ  ｄｅｔｅｃｔｉｏｎ，”  Ｉｎ  ＣＶＰＲ，２００５．
【非特許文献３】Ｙ．Ｙａｎｇ  ａｎｄ  Ｄ．  Ｒａｍａｎａｎ，“Ａｒｔｉｃｕｌａｔｅｄ  ｐｏｓｅ  ｅｓｔｉｍａｔｉｏｎ  ｗｉｔｈ  ｆｌｅｘｉｂｌｅ  ｍｉｘｔｕｒｅｓ−ｏｆ−ｐａｒｔｓ，”  ＩＥＥＥ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ（ＣＶＰＲ），２０１１．
【非特許文献４】Ｖｉｏｌａ，  Ｐ  ａｎｄ  Ｊｏｎｅｓ，Ｍ，“Ｒａｐｉｄ  ｏｂｊｅｃｔ  ｄｅｔｅｃｔｉｏｎ  ｕｓｉｎｇ  ａ  ｂｏｏｓｔｅｄ  ｃａｓｃａｄｅ  ｏｆ  ｓｉｍｐｌｅ  ｆｅａｔｕｒｅｓ”，ＣＶＰＲ，ｖｏｌ．１，ｐｐ．５１１−５１８，２００１．
【非特許文献５】Ｒ．Ａｃｈａｎｔａ，Ａ．Ｓｈａｊｉ，Ｋ．Ｓｍｉｔｈ，Ａ．Ｌｕｃｃｈｉ，Ｐ．Ｆｕａ，Ｓ．Ｓｕｓｓｔｒｕｎｋ，“ＳＬＩＣ  Ｓｕｐｅｒｐｉｘｅｌｓ  Ｃｏｍｐａｒｅｄ  ｔｏ  Ｓｔａｔｅ−ｏｆ−ｔｈｅ−Ａｒｔ  Ｓｕｐｅｒｐｉｘｅｌ  Ｍｅｔｈｏｄｓ，”  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｐａｔｔｅｒｎ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｍａｃｈｉｎｅ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，Ｖｏｌ．３４，Ｎｏ．１１，２０１２．
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の技術では、車載カメラで撮影した歩行者のようにある程度その形状が決まっており、部分領域の相対位置や方向に大きな変化がない被写体（オブジェクト）の場合には有効である。しかし、様々な活動を行っている人物のように、同一カテゴリのオブジェクト間で全体的な形状の変化が大きい、あるいは全体形状は似ているが部分領域の相対位置や方向に変化のある被写体の場合には十分に対応できない。これは、若干の部分姿勢の違いで、例えば四肢のような部分領域の相対位置が容易に変化し、学習画像から検出に利用可能な部分領域を十分に選択できないためである。そして、このようにできていなかった。そこで、本発明は、学習画像から部分領域が十分に選択できていない場合であっても、オブジェクトのパーツ位置を精度よく検出することを目的とする。
【課題を解決するための手段】
【０００７】
以上の課題を解決するために、本発明は、複数のパーツにより構成される対象物体を含む画像を取得する取得手段と、予め学習されたモデルを用いて、前記対象物体の複数のパーツそれぞれの候補領域を検出する第１の検出手段と、前記第１の検出手段により検出された候補領域の位置の変動に基づいて、前記複数のパーツから相対的に信頼性が高い第１のパーツと相対的に信頼性の低い第２のパーツとを選択する選択手段と、前記選択手段により選択された第１のパーツに基づいて前記第２のパーツの位置を変更することにより、前記モデルを再構築する再構築手段と、前記再構築手段により再構築されたモデルを用いて、前記対象物体の複数のパーツの位置を検出する第２の検出手段と、を有することを特徴とする。
【発明の効果】
【０００８】
以上の構成によれば、本発明では、オブジェクトのパーツ位置を精度よく検出することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態に関わる画像処理装置の概略ブロック図。
【図２】第１の実施形態におけるオブジェクトの検出処理を示すフローチャート。
【図３】第１の実施形態に関わるパーツの再配置処理を示すフローチャート。
【図４】第２の実施形態に関わる画像処理装置の機能構成を示す概略ブロック図。
【図５】第２の実施形態におけるオブジェクトの検出処理を示すフローチャート。
【図６】第３の実施形態におけるオブジェクトの検出処理を示すフローチャート。
【図７】第４の実施形態におけるオブジェクトの検出処理を示すフローチャート。
【図８】第１の実施形態におけるオブジェクトの検出処理の概念を説明する図。
【発明を実施するための形態】
【００１０】
［第１の実施形態］
以下、本発明の第１の実施形態について説明する。本実施形態では、対象物をオブジェクト、対象物の一部である部位をパーツ、対象物の各部位の位置関係を姿勢、全体的な姿勢をポーズと表現することもある。具体的なパーツの例としては、人体部位としての頭、胴、左右の上腕（肩−肘）、左右の前腕および手（肘−手の先）、左右の大腿（腰−膝）、左右の下腿および足（膝−足の先）等が挙げられる。また、本実施形態では、検出対象とするオブジェクトは人体として説明するが、本発明はこれに限らず、関節などの接続点により接続される複数の部位から構成され、それらの部位が同一カテゴリにおいて共通して存在する多関節物体でもよく、人体である必要はない。また、人体ではそれぞれの部位は隣接する接続点の間に存在するが、部位を接続点の周辺領域に存在するように構成してもよい。
【００１１】
図１は、本実施形態に関わる画像処理装置の概略ブロック図を示しており、図１（ａ）が画像処理装置１００の機能構成を示す概略ブロック図である。図１（ａ）において、画像処理装置１００は、記憶部１０１、学習部１１０、検出部１２０により構成される。学習部１１０は、学習データ取得部１１１、モデル学習部１１２、出力部１１３により構成される。また、検出部１２０は、検出データ取得部１２１、候補検出部１２２、高信頼パーツ選択部１２３、モデル再構築部１２４、パーツ検出部１２５により構成される。本実施形態の画像処理装置１００によるオブジェクト検出処理の動作は、学習部１１０による学習処理と検出部１２０による検出処理に分けられる。この二つの処理は連続して行われる必要はなく、また一度学習処理を実行しておけば、検出処理のみを任意のタイミングで行うことも可能である。
【００１２】
図１（ｂ）は、本実施形態に関わる画像処理装置１００のハードウェア構成を示す概略ブロック図である。ＣＰＵ（ＣｅｎｔｒａｌＰｒｏｃｅｓｓｉｎｇＵｎｉｔ）１は、ＲＯＭ（ＲｅａｄＯｎｌｙＭｅｍｏｒｙ）３またはＨＤ（ハードディスク）４に記憶されているプログラムに基づき処理を実行する。これによって、後述する画像処理装置１００の機能及びフローチャートに係る処理が実現される。ＲＡＭ（ＲａｎｄｏｍＡｃｃｅｓｓＭｅｍｏｒｙ）２は、ＣＰＵ１がプログラムを実行する際に利用されるデータ等を記憶する。ＲＯＭ３は、画像処理装置１００が起動された際に読み込まれるブートプログラム等を記憶する。ＨＤ４は、本実施形態にかかるプログラム等を記憶する。なお、説明の簡略化のため省略してあるが、画像処理装置１００は、撮影装置（カメラ）等の外部装置との通信等を司るインターフェースに関するハードウェアを有し、カメラにより撮影された画像を取り込み、ＨＤ４に記憶することができる。
【００１３】
図１（ａ）に戻り、学習部１１０が備える各機能部の詳細について説明する。学習データ取得部１１１は、学習データとして学習画像（正例画像群および負例画像群）と正例関心領域情報を取得する。正例画像群は人体（オブジェクト）が写った複数の画像から成る画像群、負例画像群は人体が写っていない画像群である。また、正例関心領域情報とは、各正例画像に対する検出対象となるオブジェクトに関する情報のことであり、本実施形態では正例画像内の人体の各パーツ領域を示すパーツ領域情報となる。
【００１４】
次に、モデル学習部１１２は、オブジェクト検出に用いるモデルとして１以上のモデルを生成、学習する。本実施形態では、モデル学習部１１２が生成するモデルとして非特許文献１に開示されたモデルを利用する。非特許文献１のモデルは、１つのオブジェクトがツリーモデルの組み合わせで表現され、ツリーのノードがオブジェクトの部分的な領域（部位）とその部位の姿勢（部分姿勢）とをモデル化したもの（パーツモデル）に対応する。本実施形態のモデル学習部１１２が生成するモデルも、ルートモデルとパーツモデルとから成り、ルートモデルは検出対象となるオブジェクト全体をモデル化したものである。パーツモデルは複数の矩形領域から成り、オブジェクトの部分領域をモデル化する。パーツモデルを生成する解像度は、ルートモデルの２倍の解像度に設定される。特徴量には、エッジ構成の特徴を用い、具体的には、非特許文献２に開示される、輝度勾配に基づいて抽出されるＨＯＧ特徴を利用する。オブジェクトの検出時には、パーツモデルごとに検出スコアを算出し、それらの総計スコアに基づいて検出を行う。スコアの算出には数１式で表される識別関数を利用する。
【００１５】
【数１】
0006639123.tif 000002
ただし、数１式の第１項は学習によって得られるルートモデルおよびパーツモデルの重みベクトルＦｉと画像から得られた特徴ベクトルφ（Ｈ，ｐｉ）とから計算されるスコアを表す。以下の説明では、ルートモデルあるいはパーツモデルの重みベクトルＦｉは、ルートフィルタあるいはパーツフィルタと称す。特徴ベクトルφ（Ｈ，ｐｉ）は、各モデルに対応した解像度の画像内の矩形領域においてＨＯＧ特徴を走査順に連結して得られるベクトルである。なお、以下の説明では、ルートモデルに対応する矩形領域をルート領域、パーツモデルに対応する矩形領域をパーツ領域と称す。
【００１６】
特徴ベクトルφ（Ｈ，ｐｉ）において、Ｈは非特許文献２に記載のＨＯＧ特徴ピラミッドを表す。ｐｉは以下の数２式で構成され、ｉ＝０の場合はルート矩形領域、ｉ＞０の場合はパーツ矩形領域を表す。なお、ｌｉはＨＯＧ特徴ピラミッドＨの階層を表すインデクス、（ｘｉ，ｙｉ）はパーツ矩形領域ｐｉのｌｉ上での中心座標である。
ｐｉ＝（ｘｉ，ｙｉ，ｌｉ）    ・・・数２式
数１式の第２項は、パーツモデルの位置変動に関するコスト関数に相当する。コスト関数は、パーツフィルタのルートフィルタに対する相対的な位置関係に基づいて定義されている。ここで、ａｉおよびｂｉは学習によって得られるコスト関数の係数である。また、ｘ’ｉとｙ’ｉは、定義されるパーツ領域のルート領域に対する正規化した相対位置の変動を表し、数３式で定義される。
（ｘ’ｉ，ｙ’ｉ）＝（（ｘｉ，ｙｉ）−２（ｘ，ｙ）＋ｖｉ）／ｓｉ    ・・・数３式
ただし、（ｘ，ｙ）はルート境界矩形の中心座標、ｖｉはルートモデルの基準中心座標とパーツモデルの基準中心座標との相対的な位置関係を表す。後述するが、基準中心座標は学習時に隠れ変数として決定される。また、ｓｉはｐｉに対応するパーツ領域のサイズである。なお、右辺の分子の第２項目の“２”は、ルートフィルタの座標スケールをパーツフィルタの座標スケールに合致させるための係数である。
【００１７】
モデル学習部１１２によるモデルの学習では、数１式を数４式で表現したときのβとｚとを求める。
【００１８】
【数２】
0006639123.tif 000003
ただし、
β＝（Ｆ０，．．．，Ｆｎ，ａ１，ｂ１，．．．，ａｎ，ｂｎ）    ・・・数５式
【００１９】
【数３】
0006639123.tif 000004
である。
【００２０】
ここで、ｚは学習によって同時に決定されるルートモデルおよびパーツモデルの基準配置（基準中心座標、基準スケール）を表す隠れ変数であり、以下の数７式で表される。
ｚ＝（ｐ０，．．．，ｐｎ）    ・・・数７式
最後に、モデル学習部１１２で生成したモデルは出力部１１３に渡される。そして、出力部１１３は学習したモデルを記憶部１０１に格納する。以上が、本実施形態の学習部１１０による学習処理である。
【００２１】
次に、検出部１２０によって、検出対象の画像からオブジェクトを検出する検出処理について説明する。図２は、本実施形態に関わる画像処理装置の検出処理を示すフローチャートである。ここでは、検出部１２０が備える各機能部の処理の詳細について、図２のフローチャートを参照しつつ説明する。
【００２２】
まず、ステップＳ２０１において、検出データ取得部１２１は、検出対象画像を取得する。次に、ステップＳ２０２において、候補検出部１２２は学習部１１０で生成、学習した１つあるいは複数のモデルを記憶部１０１から読込む。次に、ステップＳ２０３において、候補検出部１２２は、ステップＳ２０２で読込んだモデルを判別するためのモデルインデクスｋを０に初期化する。そして、ステップＳ２０４において、候補検出部１２２は、モデルインデクスｋを調べて全てのモデルに対する処理が完了したかを判定し、処理が未完了の場合は処理をステップＳ２０５に進め、処理が完了した場合は処理をステップＳ２０８に進める。
【００２３】
ステップＳ２０５では、候補検出部１２２は、ステップＳ２０２で読込んだモデルに基づき、非特許文献１に記載の手法により、検出スコアを算出して、オブジェクトを構成する各パーツについて、その候補の領域を複数検出する。このように、本実施形態の候補検出部１２２は、オブジェクトのパーツの候補領域を検出する第１の検出部として機能する。なお、本実施形態では、対象とするパーツの確からしさを示す検出スコアを算出する際、記憶部１０１より評価スコア算出器を読み出し、その評価スコア算出器のスコアも考慮する。
【００２４】
ここで、評価スコア算出器について説明する。本実施形態では、高信頼パーツを選択する際にそのパーツの信頼性を評価する指標の１つとして肌属性を利用するため、その肌属性に係るスコアを算出する算出器として、肌属性ごとの生成モデルに基づいて生成された肌属性識別器を用いる。本実施形態において、肌属性は肌種別、光源種別、反射強度の組み合わせとして表現する。ここでは肌種別として黒人、白人、黄色人種の３種類、光源種別として太陽光、蛍光灯、白熱灯、ＬＥＤの４種類、反射強度として陰なし、薄い影、濃い陰の３種類を考える。そのため、肌属性は合計で３６種となる。肌属性識別器では、以下の数８式に従い、最尤推定により肌属性ごとにガウス分布を生成する。
【００２５】
【数４】
0006639123.tif 000005
ただし、ｃは肌属性を区別するための肌属性インデクス、ＰＬ（ｃ）は肌属性ｃの事前確率、φＬｃは肌属性ｃごとに与えられた肌属性に関わる特徴量であり、ここではＲＧＢ値から成るベクトルである。また、μｃとΣはそれぞれ肌属性特徴量（ＲＧＢ値から成るベクトル）の平均および分散共分散である。そして、本実施形態の評価スコアは、以下の数９式として表わされる。
【００２６】
【数５】
0006639123.tif 000006
ここで、ｃは肌属性インデクス、ｐｉは着目パーツ領域（ここではインデクスｉを持つものとする）、ｊはｐｉ内部のピクセルを表すインデクス、Ｍはｐｉ内部の総ピクセル数である。また、ＰＬ（ｃ）は肌属性ｃの事前確率、φ’Ｌｉｊは着目パーツｉ内部のピクセルｊ上で算出された肌属性特徴量、ＰＬ（φ’Ｌｉｊ｜ｃ）は肌属性特徴量φＬｉｊの肌属性インデクスｃに対する尤度である。本実施形態では、検出時の識別関数として以下の数１０式を用いる。
【００２７】
【数６】
0006639123.tif 000007
ここで、第１項のｓｉｇｍｏｉｄ（ｘ）は、以下の数１１式で表されるシグモイド関数である。
【００２８】
【数７】
0006639123.tif 000008
また、ｗｅとｗｃは以下の数１２式を満たす重み配分係数である。
ｗｅ＋ｗｃ＝１    ・・・数１２式
すなわち、数１０式では、肌属性を考慮しない値（第１項）と肌属性を考慮した値（第２項）とを正規化し、その重み付き和を計算することになる。この式では、肌属性の合致度に応じて検出スコアがかさ上げされる。そのため、肌属性の影響がないか、あるいは肌属性の影響が小さい場合には、非特許文献１と同様に、ＨＯＧ特徴に基づいて検出スコアを算出することになる。ステップＳ２０５において、候補検出部１２２は、数１０式の識別関数の出力値が予め定めた閾値以上となるパーツ構成を候補として検出する。一般的に、各パーツについてパーツ構成候補は複数検出される。なお、非特許文献１では検出した複数のパーツ構成候補に対してＮＭＳ（Ｎｏｎ  Ｍａｘｉｍｕｍ  Ｓｕｐｒｅｓｓｉｏｎ）処理を行っているが、本実施形態では、複数検出したパーツ構成候補を後段の処理で利用するため、この処理を行わない。
【００２９】
続いて、ステップＳ２０６で、候補検出部１２２は、ステップＳ２０５で検出したパーツ構成候補を記憶部１０１に格納する。その後、ステップＳ２０７にて、モデルインデクスｋのインクリメントを行う。
【００３０】
次に、ステップＳ２０８において、高信頼パーツ選択部１２３は高信頼パーツの選択を行う。本実施形態では、オブジェクトを構成するパーツごとに、ステップＳ２０５で検出された複数のパーツ構成候補の位置の変動を調べることで、高信頼パーツを選択する。具体的には、モデルごとに検出された複数のパーツ構成候補を用いて、各パーツのパーツ位置の平均および分散共分散行列を算出する。そして、分散共分散行列の所定の要素値が予め定めた閾値以下（第１の閾値以下）となる場合に、そのパーツを高信頼パーツとして選択し、複数のパーツ構成候補のうち検出スコアが最も高いパーツ構成候補をその高信頼パーツのパーツ領域とする。ここでは、パーツ位置をパーツ領域の重心とする。なお、高信頼パーツの選択手法としては様々考えられ、例えば、検出スコアが所定の閾値以上（第２の閾値以上）となるパーツ構成候補を有するパーツについては、高信頼パーツとして選択するようにしてもよい。その他の高信頼パーツの選択手法については後述する。また、候補検出部１２２は、高信頼パーツ以外のパーツを非高信頼パーツとして選択する。
【００３１】
次に、ステップＳ２０９とステップＳ２１０において、モデル再構築部１２４は、高信頼パーツを基準に非高信頼パーツの位置を変更して、非高信頼パーツを再配置する。これにより、モデル再構築部１２４は、オブジェクト検出用のモデルを再構築する。まず、ステップＳ２０９では、高信頼パーツ選択部１２３は、ステップＳ２０８で選択された高信頼パーツ、および非高信頼パーツを再配置する。
【００３２】
ここで、図３を用いて、モデル再構築部１２４によるステップＳ２０９の処理の詳細を説明する。図３は、モデル再構築部１２４により実行されるパーツの再配置処理を示すフローチャートである。まず、ステップＳ３０１では、パーツを再配置するための座標空間を再配置モデル空間として準備する。次に、ステップＳ３０２では、図２のステップＳ２０８で高信頼パーツ選択部１２３により選択された高信頼パーツに対し、パーツインデクスｐを付与する。
【００３３】
次に、ステップＳ３０３において、ｐを０に初期化する。続いて、ステップＳ３０４において、高信頼パーツ（ｐ＝０）を再配置モデル空間の原点に仮配置する。その後、ステップＳ３０５で、パーツインデクスｐをインクリメントする。ステップＳ３０６では、全ての高信頼パーツの仮配置が完了したかをチェックする。未完了の場合には処理をステップＳ３０７に処理を移し、完了した場合は処理をステップＳ３０９に移す。
【００３４】
ステップＳ３０７では、高信頼パーツ（ｐ＞０）について、高信頼パーツ（ｐ＝０）とステップＳ２０８で算出した高信頼パーツ（ｐ＞０）との平均位置との差分ベクトルを算出し、再配置モデル空間上で原点を差分ベクトルの始点とした位置に仮配置を行う。ステップＳ３０８では、パーツインデクスｐのインクリメントを行う。そして、ステップＳ３０９で、高信頼パーツのパーツインデクスｐを０に初期化する。ステップＳ３１０では、全ての高信頼パーツに対する処理が完了したかをチェックする。未完了の場合は処理をステップＳ３１１に移し、完了した場合は処理をステップＳ３１３に移す。
【００３５】
ステップＳ３１１では、ステップＳ３０７で仮配置された高信頼パーツを利用して、非高信頼パーツを仮配置するためのデータ収集を行う。本実施形態では、まず、高信頼パーツｐについて、ステップＳ２０８で高信頼パーツｐの選択に用いたパーツ構成候補（複数）を準備する。次に、高信頼パーツｐの各パーツ構成候補を調べ、高信頼パーツｐ（すなわち検出スコアが最も高いパーツ構成候補）とその他のパーツ構成候補ｐ’とを特定し、高信頼パーツとパーツ構成候補ｐ’との重複率を調べる。そして、データ収集対象には、高信頼パーツｐ（検出スコアが最も高いパーツ構成候補）も含め、重複率が所定の閾値以上（第４の閾値以上）となるパーツ構成候補ｐ’をデータ収集対象として抽出する。なお、本実施形態では、重複率が０．５以上となるパーツ構成候補ｐ’をデータ収集対象として抽出する。また、重複率の計算には、以下の数１３式を用いる。
Ｏｖ＝（Ｒ（ｐ）∩Ｒ（ｐ’））／（Ｒ（ｐ）∪Ｒ（ｐ’））    ・・・数１３式
ただし、Ｒ（ｐ）は着目高信頼パーツｐのパーツ領域、Ｒ（ｐ’）は着目高信頼パーツｐに対して特定したパーツ構成候補ｐ’のパーツ領域である。記号∩はＲ（ｐ）とＲ（ｐ’）とが重なる領域を示し、記号∪はＲ（ｐ）とＲ（ｐ’）の少なくともどちらかに含まれる領域を示す。
【００３６】
そして、データ収集対象として抽出したパーツ構成候補に対して、非高信頼パーツそれぞれについて位置の平均および分散共分散行列を算出する。ここでは、各非高信頼パーツについて、注目する非高信頼パーツのルート側に最も近い高信頼パーツからデータ収集対象として抽出したパーツ構成候補に対して位置の平均および分散共分散行列を算出する。
【００３７】
ステップＳ３１２では、パーツインデクスｐのインクリメントを行う。ステップＳ３１３では、非高信頼パーツの仮配置を行う。本実施形態では、各非高信頼パーツをステップＳ３１１で算出した分散共分散行列の要素値の最大値が最小となる場合の平均位置に仮配置する。ここで、モデルが複数ある場合、パーツ構成候補はモデルごとに抽出されるので、同一の非高信頼パーツが複数仮配置される可能性がある。もし複数仮配置された場合は、分散共分散行列の要素値が最も小さい仮配置を選択する。
【００３８】
ステップＳ３１４では、再配置モデル空間上に仮配置したパーツの本配置を行う。まず、ステップＳ３０７で仮配置した高信頼パーツとステップＳ３１３で仮配置した非高信頼パーツを全て含むように外接矩形を設置する。次に、再配置モデル空間の原点を、ｘ座標およびｙ座標の両方が最小値となる外接矩形の頂点に移動する。このときの各パーツの座標を本配置したパーツ座標とする。その後、必要に応じて本配置したパーツ座標系をステップＳ２０２で読み込んだモデルの座標系に合致させる。座標系の合致とは、ピクセル座標からＨＯＧ特徴算出時のモデル座標への変換などである。以上の処理により、ステップＳ２０９におけるパーツの再配置が行われる。
【００３９】
図２のフローチャートに戻り、ステップＳ２１０では、モデル再構築部１２４が、ステップＳ２０９で再配置したパーツを基にモデルパラメータを再設定する。再設定するモデルパラメータは、数１式〜数３式で規定されるパーツモデルの重みベクトルＦｉ、矩形領域ｐｉ、コスト関数の係数ａｉ及びｂｉ、ルートモデルの基準中心座標とパーツモデルの基準中心座標との相対的な位置関係を表す２次元ベクトルｖｉである。これらの値として、高信頼パーツあるいは非高信頼パーツごとに、そのパーツを抽出したモデルの値を再設定する。
【００４０】
最後に、ステップＳ２１１において、パーツ検出部１２５は、本発明の第２の検出部として機能し、ステップＳ２０９およびステップＳ２１０で再構築したモデルを用い、ステップＳ２０５と同様にしてオブジェクトを構成するパーツ構成候補を複数検出する。ここでは、パーツ検出部１２５は、評価スコア算出器の算出スコアを考慮する。そして、パーツ検出部１２５は、ＮＭＳ（Ｎｏｎ  Ｍａｘｉｍｕｍ  Ｓｕｐｒｅｓｓｉｏｎ）処理を行い、最終的なパーツの位置を検出する。以上で、本実施形態に関わる検出処理が終了する。
【００４１】
図８は、上述した本実施形態に関わるオブジェクトの検出処理を概念的に説明する図である。図８（ａ）は、検出データ取得部１２１がステップＳ２０１で取得する検出対象画像の一例を示すものである。この画像には検出すべき対象物体（人体）が含まれ、ここでは、右足を挙げたポーズをとっている。次に、図８（ｂ）は、候補検出部１２２が予め学習されたモデルを用いて検出されるパーツ構成候補に対応する各パーツ領域を矩形で示しており、矩形内に記載される数字は各パーツのパーツインデクスである。上述したとおり、候補検出部１２２は通常、各パーツに対応してパーツ構成候補を複数検出するが、ここでは図面の複雑化を避けるために、各パーツのパーツ領域のみを図示している。
【００４２】
次に、図８（ｃ）は、高信頼パーツ選択部１２３が、各パーツについて検出されたパーツ構成候補の位置変動に基づいて高信頼パーツを選択する例を示すものである。ここでは、ｐ＝１６，１７のインデクスで示されるパーツが高信頼パーツとして選択されている例を示している。本実施形態では、パーツ構成候補の検出スコアは肌属性の合致度に応じてスコアがかさ上げされるため、高信頼パーツとして選択されやすい。ここでも、左上腕の肌の露出したところが高信頼パーツとして選択されている。
【００４３】
図８（ｄ）は、モデル再構築部１２４により再構築されたモデルを用いて、パーツ検出部１２５が最終的な対象物体（人体）のパーツ（部位）の位置を検出した結果を示すものである。例えば、片足をあげてポーズする学習画像が少ない場合、図８（ｂ）に示すように、両足それぞれに対応するパーツの位置を正確に検出出来ない場合がある。これに対して、本実施形態によれば、高信頼パーツに基づいてモデルを再構築し、パーツ位置を検出するようにしているので、図８（ｄ）に示すように各パーツの位置を精度よく検出することができるようになる。
【００４４】
以上のように、本実施形態では、まず、学習部１１０により１以上のモデルを予め生成、学習する。検出部１２０は、学習したモデルを用いて、対象物体のパーツ（人体の部位）の候補となる候補領域（パーツ構成候補）を検出する。そして、対象物体のパーツの中から、エッジ構成（ＨＯＧ特徴）、肌属性の評価の観点から相対的に信頼性が高いと判断されるパーツを高信頼パーツ（第１のパーツ）として選択する。より具体的には、各パーツについて、１以上のモデルを用い、エッジ構成（ＨＯＧ特徴）、肌属性の評価スコアに基づき検出される複数のパーツ領域の候補の位置の変動が少ないものを高信頼パーツとして選択する。
【００４５】
その後、信頼性が相対的に低い非高信頼パーツ（第２のパーツ）について、高信頼パーツを基準に再配置する。これにより、対象物体を検出するための検出用モデルを再構築する。最後に再構築した検出用モデルに基づいて検出対象の画像において人体パーツの領域を検出することで人体の姿勢を推定する。そのため、本実施形態では、学習画像に含まれないポーズでも推定精度が向上するため、対象物体のパーツの位置を精度よく検出することができる。
【００４６】
［第１の実施形態における変形例］
本実施形態では、画像処理装置１００において、学習部１１０と検出部１２０との両方を備えるように構成したが、学習部１１０と検出部１２０とを別々の画像処理装置として構成してもよい。ただし、この場合は学習部１１０と検出部１２０との両方が記憶部１０１にアクセスできるよう構成する必要がある。
【００４７】
また、本実施形態では肌属性特徴量としてＲＧＢ値から成るベクトルを用いたが、肌属性を表現できれば必ずしもＲＧＢ値である必要はない。ＹＣｂＣｒやＹＵＶといった他の色空間から得られる値で肌属性特徴量を収集するように構成してもよい。あるいは、肌属性を表現できれば輝度情報や赤外線情報など色空間以外の情報を用いてもよい。
【００４８】
また、本実施形態では、ステップＳ２０５で検出したパーツ構成候補を、ステップＳ２０６において記憶部１０１に格納するよう構成した。しかし、ステップＳ２０５で検出したパーツ構成候補を後段の処理で参照できるようにすれば記憶部１０１に格納する必要はない。例えば、メモリ上に保持しておくように構成してもよい。
【００４９】
また、本実施形態では、パーツ領域の候補を検出する際、数１０式では肌属性の合致度に応じてスコアがかさ上げされるため、選択された高信頼パーツでは肌が露出している可能性が高い。そのため、高信頼パーツを肌が露出したパーツとして検出し、他の処理に用いるようにしてもよい。
【００５０】
また、本実施形態では、モデル学習部１１２および候補検出部１２２による処理に非特許文献１の手法を用いたが、変形パーツモデルに基づくオブジェクト検出方式であれば、他の従来方式を用いてもよい。例えば、非特許文献３に開示される方法を利用可能である。なお、非特許文献３におけるパーツ構成は木構造を採用している。そのため、ステップＳ３１３では、木構造のパーツ構成上で隣接する高信頼パーツ間に位置する非高信頼パーツの一部を線形補間等の補間により仮配置するように構成してもよい。全ての非高信頼パーツを線形補間する場合は、ステップＳ３０９からステップＳ３１２の処理は省略可能である。
【００５１】
また、上述のステップＳ２０８では、各パーツの確からしさを評価する指標としてエッジ構成と肌属性を用いてパーツ構成候補を検出し、各パーツにおけるパーツ構成候補の位置変動を調べることで高信頼パーツを選択するようにした。しかし、高信頼パーツを選択する手法としては、他にも様々な方法を用いることが可能である。例えば、検出対象の画像を複数のセグメントに分割し、各セグメントの特徴量を抽出する手段を設けて、そのセグメンテーション情報を評価指標として利用するようにしてもよい。例えば、まず、非特許文献５に開示された手法でセグメンテーションを行い、パーツと重なるセグメントから色特徴としてＲＧＢヒストグラムを算出してベクトル表現する。そして、ベクトルの平均と分散共分散行列を算出し、分散共分散行列の所定の要素値が予め定めた閾値以上（第３の閾値以上）になる場合に、そのパーツを高信頼パーツとして選択することもできる。
また、別の方法として、赤外線情報を利用してよい。例えば、赤外線強度の高い領域と重なるパーツは肌が露出している領域と重なるものと判断し、高信頼パーツとして選択するようにしてもよい。
【００５２】
また、別の方法として、パーツ領域内のテクスチャの類似性を利用してもよい。例えば、様々なスケールでパーツ領域内の輝度パターンをベクトル化して、平均と分散共分散行列を算出し、分散共分散行列の所定の要素値が予め定めた閾値以上になる場合にそのパーツを高信頼パーツとして選択することもできる。あるいは、既存技術を使ってテクスチャを表現する特徴量を算出し、特徴量同士の類似性に基づいて高信頼パーツを選択するようにしてもよい。
また、別の方法として、特定領域に対する所定の評価指標の観測確率を計測するようにしてもよい。具体的な観測確率として、例えば、評価指標としてパーツ構成候補内の対応するパーツ位置を用いる場合、まず、パーツ別にラベル番号を設定する。次に、Ｓ２０５で検出したパーツ構成候補それぞれについて各パーツの内部領域内の画素にそのラベル番号を設定する。画素ごとに各ラベル番号の設定回数をカウントし、パーツ構成候補数に対するカウント数の割合が所定の閾値を超えた画素を高信頼パーツの領域として抽出する。特定の高信頼パーツの領域が複数ある場合には、例えば最も大きい領域を採用するようにすればよい。
【００５３】
また、別の方法として、特定領域に対する各パーツへの投票値を計測するようにしてもよい。例えば、評価指標としてパーツ構成候補内の対応するパーツ位置を用いる場合、まず、画像を所定サイズの矩形にグリッド分割するとともにパーツ別のラベル番号を設定する。次に、Ｓ２０５で検出したパーツ構成候補それぞれについて各パーツが重なるグリッドごとに、そのパーツのラベル番号に対して重なり割合を投票（積算）していく。最後に、各グリッドについてラベル番号ごとに積算された投票値を調べ、投票値が最大かつ所定の閾値以上となった場合に、そのグリッドはそのラベル番号のパーツに属するものと判定する。
【００５４】
また、別の方法として、特定領域に対する所定の評価指標の信頼度を計測するようにしてもよい。例えば、評価指標としてパーツ位置とパーツ領域内部のＲＧＢヒストグラムをベクトル化した色特徴とし、その信頼度としてパーツ位置の変動に加えてパーツ別の色特徴の尤度を用いることができる。この場合は、予めパーツ別に色特徴について生成モデルを学習しておく。そして、ステップＳ２０８では、まず、Ｓ２０５で検出したパーツ構成候補それぞれについてパーツごとにパーツ領域から色特徴を生成し、生成した色特徴と学習したモデルとを用いて色特徴の尤度を算出する。尤度の平均が所定の閾値以上となり、かつパーツ位置から算出した分散共分散行列の所定の要素値が予め定めた閾値以下となるパーツが存在した場合、そのパーツを高信頼パーツとして選択する。
【００５５】
また、別の方法として、パーツ間の相対的な距離を評価指標として、距離の変動を調べることで高信頼パーツを選択するようにしてもよい。例えば、パーツ間の相対的な距離の平均と分散とを算出し、分散が予め定めた閾値以下となる場合に、そのパーツを高信頼パーツとして選択することができる。
【００５６】
また、別の方法として、頭部や上腕部等に相当する特定パーツの特定姿勢における検出器を予め用意しておき、そのパーツ検出器の出力が所定の閾値以上のときに、そのパーツを高信頼パーツとしてもよい。この構成の詳細については、第２の実施形態として詳細に説明する。なお、この構成を採用する場合には、ステップＳ２０９で非高信頼パーツを配置する際、左右対称のパーツに関して、高信頼パーツの一部の左右属性を対象軸に反転して別途仮配置するようにしてもよい。例えば、高信頼パーツが右前腕領域に相当するパーツとして仮配置された場合に、左前腕領域に相当するパーツとしても別途仮配置するように構成する。これにより、仮に左右属性を間違えて仮配置した場合でも、正しいモデルが再構築される可能性を高められる。
【００５７】
また、別の方法として、ステップＳ２０５で検出したパーツ構成候補から識別関数の出力値を基準に高信頼パーツを選択するようにしてもよい。例えば、Ｓ２０５で検出したパーツ構成候補についてパーツ別にスコア分布を作成し、スコア分布の標準偏差σが３倍以上、かつ最大値となるスコアを持つパーツを高信頼パーツとして選択する方法がある。ここで、パーツ別のスコアは、例えば、数１０式に倣って以下の数１３式のように定義すればよい。ただし、ｉは着目しているパーツのインデクスである。
【００５８】
【数８】
0006639123.tif 000009
［第２の実施形態］
次に、本発明の第２の実施形態を説明する。上述の第１の実施形態では、検出したパーツのそれぞれについて、複数の評価指標に基づき、誤検出の可能性が低いと判断されるパーツを高信頼パーツとして選択するように構成した。本実施形態では、パーツの一部の検出に専用の検出器を用いることにより、高信頼パーツを選択する構成について説明する。なお、第１の実施形態で既に説明した構成については同一の符号を付し、その説明を省略する。
【００５９】
図４は、本実施形態に関わる画像処理装置１００の概略ブロック図である。同図において、本実施形態の画像処理装置１００が、第１の実施形態と異なる点は、特定パーツ検出部４２１が追加されていることである。本実施形態の画像処理装置１００の処理の詳細については、図５を用いて説明する。
【００６０】
図５は、本実施形態におけるオブジェクトの検出処理を示すフローチャートである。ステップＳ５０１において、検出データ取得部１２１は、第１の実施形態１と同様に検出対象画像を取得する。そして、検出データ取得部１２１は、取得した検出対象画像を特定パーツ検出部４２１に渡す。そして、候補検出部１２２により実行されるステップＳ２０２の処理およびそれ以降の処理と、特定パーツ検出部４２１により実行されるステップＳ５０２の処理とが並行して実行される。ここでは、ステップＳ５０２の処理をステップＳ２０２からステップＳ５０３の前までの処理と並行して行うようにしているが、ステップＳ２０２からステップＳ５０３の前までの処理を行った後、ステップＳ５０２の処理を行うようにしてもよい。なお、図５に示すステップＳ２０２からステップＳ２０７までの処理は、第１の実施形態と同じ処理である。
【００６１】
ステップＳ５０２では、特定パーツ検出部４２１が予め決められている特定のパーツについて専用の検出器を用いて検出する。本実施形態では、顔に相当するパーツを既存の顔検出器を用いて検出する。顔検出器は様々な方法が提案されているが、ここでは非特許文献４の方法を用いる。
【００６２】
次に、ステップＳ５０３において、高信頼パーツ選択部１２３は、顔に相当するパーツとして、ステップＳ５０２において最も信頼度の高い検出結果を高信頼パーツとして選択する。また更に、第１の実施形態と同様にして、高信頼パーツを選択する。これ以降の処理は、第１の実施形態と同様である。
【００６３】
なお、上述の説明では、ステップＳ５０３において、ステップＳ５０２の検出結果の中から最も信頼度の高い検出結果を高信頼パーツとして選択するように構成したが、ステップＳ５０２の検出結果を評価指標の一部として用いるようにしてもよい。例えば、ステップＳ２０５と同様にして、ステップＳ５０２の検出結果を評価指標の一部とした識別関数を定義し、その識別関数の出力値が予め定めた閾値以上になったときに高信頼パーツとして選択するよう構成する。その識別関数としては、例えば以下の数１４式を用いることができる。
【００６４】
【数９】
0006639123.tif 000010
ただし、Ｓ（ｐｆ）はステップＳ５０２の顔検出器から検出結果として出力される数値、ｐｉは検出結果として出力される領域に対応する着目パーツ領域（ここではインデクスｉを持つものとする）である。なお、ｐｉの選択には上述の数１３式を用い、顔検出器が検出結果として出力する領域と最も重複率の高いパーツ領域を選択する。また、ｗｅ、ｗｃ、ｗｆは数１６式を満たす重み配分係数である。
ｗｅ＋ｗｃ＋ｗｆ＝１    ・・・数１６式
以上のように、本実施形態では、第１の実施形態と同様にして高信頼パーツを選択するのに加えて、一部の特定パーツ（本実施形態の場合、顔）の検出に専用の検出器を用い、そのパーツを高信頼パーツとして選択する。これにより、高信頼パーツをさらに正確に選択できるようになり、オブジェクトのパーツ位置を精度よく検出することが可能になる。
【００６５】
［第３の実施形態］
次に、本発明の第３の実施形態について説明する。本実施形態は、パーツ構成候補の検出、高信頼パーツの選択、あるいはモデルの再構築において、パーツ間の制約を考慮するものである。なお、第１、第２の実施形態で既に説明した構成については同一の符号を付し、その説明は省略する。
【００６６】
本実施形態に関わる画像処理装置１００の構成は、第１の実施形態で説明した図１と同様であるため説明は省略する。ただし、学習部１１０による学習処理は、第１の実施形態と異なっている。本実施形態のモデル学習部１１２は、第１の実施形態で説明した学習に加え、パーツ同士の共起を算出する。本実施形態では、共起の算出には非特許文献３に記載の方法を用いる。すなわち、パーツの角度を表すタイプｔｉ∈｛１，・・・，Ｔ｝を導入し、隣接するパーツｉとパーツｊ間で角度の共起に関するスコアを以下の数１７式で表したときのｂｉｔｉおよびｂｉｊｔｉ，ｔｊを算出する。
【００６７】
【数１０】
0006639123.tif 000011
ここで、ｂｉｔｉはパーツｉがタイプｔｉとなる度合いを数値化したものであり、ｂｉｊｔｉ，ｔｊはパーツｉがタイプｔｉ、パーツｊがタイプｔｊとなる度合いを数値化したものである。また、ＶとＥはパーツ構造をグラフ構造と捉えたときに、グラフのノード（Ｖ）とエッジ（Ｅ）に相当することを示す。ｂｉｔｉおよびｂｉｊｔｉ，ｔｊは、学習部１１０の学習データ取得部１１１が取得する正例関心領域情報として与えられたタイプ情報から統計的に算出される。出力部１１３は、モデル学習部１１２が第１の実施形態と同様にして学習したモデルと、上述のようにして算出したｂｉｔｉおよびｂｉｊｔｉ，ｔｊを記憶部１０１に格納する。
【００６８】
次に、画像処理装置１００の検出部１２０の処理の詳細について、図６を用いて説明する。図６は、本実施形態におけるオブジェクトの検出処理を示すフローチャートである。図６のステップ番号が図２に示した第１の実施形態と同じステップについては、第１の実施形態と同様の処理であるため説明を省略する。本実施形態の検出処理において、ステップＳ６０１では、検出データ取得部１２１が記憶部１０１に格納された１以上のモデルと、ｂｉｔｉ及びｂｉｊｔｉ，ｔｊとを読込み、取得する。
【００６９】
ステップＳ６０２の処理は、第１の実施形態のステップＳ２０５とほぼ同様の処理であるが、本実施形態では評価指標としてパーツ間の共起を追加する。すなわち、検出時の識別関数として数１８式を用いる。
【００７０】
【数１１】
0006639123.tif 000012
次に、ステップＳ６０３において、高信頼パーツ選択部１２３は高信頼パーツの選択を行う。ステップＳ６０３における処理は、第１の実施形態のステップＳ２０８とほぼ同様の処理であるが、評価指標としてパーツ間の共起も考慮する。すなわち、隣接パーツとなるパーツｉのタイプｔｉとパーツｊのタイプｔｊとの組み合わせに投票を行い、各組み合わせに対して投票確率を算出する。そして、高信頼パーツ選択部１２３は、隣接パーツの分散共分散行列の所定の要素値が予め定めた閾値以下となり、かつ投票確率が所定の閾値以上となった場合に、その隣接パーツそれぞれを高信頼パーツとして選択する。
【００７１】
次に、ステップＳ６０４とステップＳ２１０において、モデル再構築部１２４は、オブジェクト検出用のモデルを再構築する。ステップＳ６０４の処理は、第１の実施形態のステップＳ２０９とほぼ同じ処理であるが、以下の点で第１の実施形態と異なる。第１の実施形態のステップＳ２０９では、同一の非高信頼パーツが複数仮配置された場合に、分散共分散行列の要素値が最も小さい仮配置を選択するように処理を行った。これに対し、本実施形態のステップＳ６０４では、非高信頼パーツが複数仮配置された場合、隣接するパーツ間の共起の合計が最も大きくなる仮配置を選択する。
【００７２】
ステップＳ６０５では、パーツ検出部１２５が、ステップＳ６０４およびステップＳ２１０で再構築したモデルを用いて、ステップＳ６０２と同様にオブジェクトを構成するパーツ構成候補を複数検出する。ただし、ここでは評価スコア算出器のスコアを考慮するとともに、ＮＭＳ（Ｎｏｎ  Ｍａｘｉｍｕｍ  Ｓｕｐｒｅｓｓｉｏｎ）処理も行う。以上により、本実施形態の検出処理が完了する。
【００７３】
なお、上述の説明では、候補検出部１２２、高信頼パーツ選択部１２３、モデル再構築部１２４の全ての処理において共起を考慮するようにしたが、一部の機能部の処理のみで共起を考慮するよう構成してもよい。また、本実施形態では、パーツ間の制約を考慮する方法として共起を用いる方法を採用したが、他の方法でパーツ間の制約を考慮するようにしてもよい。さらに、パーツ同士の共起の表現方法としては、非特許文献３に記載された方法に限られず、他の共起の表現方法を用いてもよい。
【００７４】
以上のように、本実施形態では、パーツ構成候補の検出、高信頼パーツの選択、あるいはモデルの再構築において、パーツ間の制約を考慮するようにしたので、オブジェクトのパーツ位置を精度よく検出することが可能になる。
【００７５】
［第４の実施形態］
次に、本発明の第４の実施形態について説明する。本実施形態は、反復的に高信頼パーツを選択することでモデルを再構築するものである。なお、第１〜第３の実施形態において既に説明した構成については同一の符号を付し、その説明を省略する。
【００７６】
本実施形態の画像処理装置１００の概略ブロック図は、図１に示した第１の実施形態と同様であるため説明を省略する。ここで、本実施形態の画像処理装置１００による検出処理について、図７を用いて説明する。図７は、本実施形態におけるオブジェクトの検出処理を示すフローチャートである。図７のステップ番号が図２に示した第１の実施形態と同じステップについては、第１の実施形態と同様の処理であるため説明を省略する。
【００７７】
ステップＳ７０１では、高信頼パーツ選択部１２３が高信頼パーツの選択を行う。第１の実施形態と異なるのは、高信頼パーツであると既に特定されたパーツ以外のパーツについて、改めて高信頼パーツか否かの選択を行う点にある。高信頼パーツの選択方法自体は、第１の実施形態で示した方法と同様である。
【００７８】
次に、ステップＳ７０２において、モデル再構築部１２４は、ステップＳ７０１で新たに選択された高信頼パーツと前回選択された高信頼パーツに差分があるか否かを判定する。差分がある場合は処理をステップＳ２０９に移し、差分がない、もしくは所定数以下となる場合は処理をステップＳ２１１に移す。
【００７９】
ステップＳ９０３における処理は、第１の実施形態のステップＳ２１０における処理とほぼ同様であり、第１の実施形態同様にモデルパラメータの再設定を行う。第１の実施形態と異なる点は、本実施形態ではモデルパラメータの再設定が完了したら、ステップＳ２０３に処理を移す点にある。
【００８０】
最後に、ステップＳ２１１で、パーツ検出部１２５は、第１の実施形態と同様にステップＳ２０９およびＳ９０３で再構築したモデルを用い、オブジェクトを構成するパーツ構成候補を複数検出する。
【００８１】
なお、本実施形態では、高信頼パーツ選択部１２３は、既に高信頼パーツと選択したパーツ以外のパーツについてのみ、改めて高信頼パーツか否かの選択を行うように構成した。しかし、既に高信頼パーツと選択したか否かに関わらず、全てのパーツを対象にして高信頼パーツの選択を行うようにしてもよい。
【００８２】
以上のように、本実施形態では、選択される高信頼パーツの差異が所定値以下に収まるまで、繰り返し高信頼パーツを選択することによりモデルを再構築するようにしたので、オブジェクトのパーツ位置を精度よく検出することが可能になる。
【００８３】
［その他の実施形態］
本発明は、上記実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００８４】
１００  画像処理装置
１０１  記憶部
１１０  学習部
１１１  学習データ取得部
１１２  モデル学習部
１１３  出力部
１２０  検出部
１２１  検出データ取得部
１２２  候補検出部
１２３  高信頼パーツ選択部
１２４  モデル再構築部
１２５  パーツ検出部
【図１】
0006639123.tif 000013
【図２】
0006639123.tif 000014
【図３】
0006639123.tif 000015
【図４】
0006639123.tif 000016
【図５】
0006639123.tif 000017
【図６】
0006639123.tif 000018
【図７】
0006639123.tif 000019
【図８】
0006639123.tif 000020