(57)【特許請求の範囲】
【請求項１】
対象画像から、第１のパーツの座標である第１のパーツ座標を検出する第１のパーツ検出部と、
前記対象画像及び前記第１のパーツ座標を用いて、第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出する第２のパーツ予測部と、
前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出する第２のパーツ検出部と、を備え、
前記第２のパーツ予測部は、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて、前記第２のパーツ予測座標を算出すること
を特徴とする情報処理装置。
【請求項２】
対象画像から、第１のパーツの座標である第１のパーツ座標及び第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出する第１のパーツ検出兼第２のパーツ予測部と、
前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出する第２のパーツ検出部と、を備え、
前記第１のパーツ検出兼第２のパーツ予測部は、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて、前記第２のパーツ予測座標を算出すること
を特徴とする情報処理装置。
【請求項３】
前記第１のパーツが前記複数のクラスの各々に属する尤度は、サポートベクタ回帰を用いて算出されること
を特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記第１のパーツが前記複数のクラスの各々に属する尤度は、ニューラルネットワークを用いて算出されること
を特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
前記第１のパーツが前記複数のクラスの各々に属する尤度は、遺伝的アルゴリズムを用いて算出されること
を特徴とする請求項１又は２に記載の情報処理装置。
【請求項６】
前記複数のクラスは、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、事前に収録した、各々が前記第２のパーツに対応する複数のパーツである第２のパーツ群を第２の学習用パーツ群とし、前記第１の学習用パーツ群中の一つのパーツの座標値と、前記第２の学習用パーツ群中の、前記一つのパーツに対応する一つのパーツの座標値との差分を学習データ差分ベクトルとした場合に、前記学習データ差分ベクトルの方向に基づいて予め分類されたものであり、前記第２のパーツ予測座標は、前記複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度と、前記複数のクラスの各々における前記学習データ差分ベクトルの統計量と、に基づいて算出されること
を特徴とする請求項１から５の何れか一項に記載の情報処理装置。
【請求項７】
前記複数のクラスは、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、事前に収録した、各々が前記第２のパーツに対応する複数のパーツである第２のパーツ群を第２の学習用パーツ群とした場合に、前記第１の学習用パーツ群の特徴量に基づいて予め分類されたものであり、前記第２のパーツ予測座標は、前記第１のパーツが前記複数のクラスの各々に属する尤度と、前記複数のクラスの各々における前記第１の学習用パーツ群及び前記第２の学習用パーツ群の間の相対的な位置関係の統計量と、に基づいて算出されること
を特徴とする請求項１から５の何れか一項に記載の情報処理装置。
【請求項８】
前記複数のクラスは、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、事前に収録した、各々が前記第２のパーツに対応する複数のパーツである第２のパーツ群を第２の学習用パーツ群とし、前記第１の学習用パーツ群中の一つのパーツの座標値と、前記第２の学習用パーツ群中の、前記一つのパーツに対応する一つのパーツの座標値との差分を学習データ差分ベクトルとした場合に、前記学習データ差分ベクトルの方向と、前記学習データ差分ベクトルの長さとに基づいて予め分類されたものであり、前記第２のパーツ予測座標は、予め定められた複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度と、前記学習データ差分ベクトルの統計量と、に基づいて算出されること
を特徴とする請求項１から５の何れか一項に記載の情報処理装置。
【請求項９】
前記第２のパーツ検出部は、前記対象画像から前記第２のパーツを探索することで、前記第２のパーツ座標を検出し、
前記第２のパーツ検出部は、前記第２のパーツ予測座標に近づくほど、前記第２のパーツを探索する精度を高めること
を特徴とする請求項１から８の何れか一項に記載の情報処理装置。
【請求項１０】
前記第２のパーツ検出部は、前記対象画像から、スライディングウィンドウをスライドさせて前記第２のパーツを探索することで、前記第２のパーツ座標を検出し、
前記第２のパーツ検出部は、前記第２のパーツ予測座標に近づくほど、前記スライディングウィンドウのスライド幅を小さくすること
を特徴とする請求項１から９の何れか一項に記載の情報処理装置。
【請求項１１】
前記第２のパーツ検出部は、前記第２のパーツの予測座標に近づくほど、第２のパーツとしての尤度を向上させること
を特徴とする請求項１から１０の何れか一項に記載の情報処理装置。
【請求項１２】
前記第２のパーツ検出部は、前記対象画像から、サイズの異なる複数のスライディングウィンドウを用いて前記第２のパーツを探索することで、前記第２のパーツを検出し、
前記第２のパーツ検出部は、前記予測されたサイズに近くなるほど、前記スライディングウィンドウのサイズの変更を小さくすること
を特徴とする請求項１から１１の何れか一項に記載の情報処理装置。
【請求項１３】
対象画像から、第１のパーツの座標である第１のパーツ座標を検出し、前記第１のパーツ座標から第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、前記第２のパーツ予測座標を、前記第２のパーツ座標とする情報処理装置であって、
前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されること
を特徴とする情報処理装置。
【請求項１４】
コンピュータに、
対象画像から、第１のパーツの座標である第１のパーツ座標を検出するステップと、
前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出するステップと、
前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出するステップと、を行わせるプログラムであって、
前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されること
を特徴とするプログラム。
【請求項１５】
コンピュータに、
対象画像から、第１のパーツの座標である第１のパーツ座標を検出するステップと、
前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、前記第２のパーツ予測座標を、前記第２のパーツ座標とするステップと、を行わせるプログラムであって、
前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されること
を特徴とするプログラム。
【請求項１６】
対象画像から、第１のパーツの座標である第１のパーツ座標を検出し、
前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、
前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出する情報処理方法であって、
前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されること
を特徴とする情報処理方法。
【請求項１７】
対象画像から、第１のパーツの座標である第１のパーツ座標を検出し、
前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、
前記第２のパーツ予測座標を、前記第２のパーツ座標とする情報処理装置であって、
前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されること
を特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラム及び情報処理方法に関する。
【背景技術】
【０００２】
従来から骨格等のパーツを検出することで、姿勢を推定する技術が知られている。例えば、特許文献１に記載されている技術は、検出すべき骨格パーツの各々について、ニューラルネットワークで構築した複数段の検出器を備えている。そして、初段の検出器は、全て独立に稼動し、次段の検出器は、初段の検出器とは他の骨格パーツに対して、初段の検出結果を、一方的に、又は、双方向的に用いることで、全体としての検出精度を向上させている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１７／１６６０１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術は、複数ブロックの検出器間における情報の交換がニューラルネットワークのニューロン接続で実現されているため、複数ブロックの検出器間で入出力される情報の内容が人間には不明となり、ニューラルネットワークとは別の枠組みの検出器においては、実装が困難であるという課題がある。【０００５】
そこで、本発明の一又は複数の態様は、ニューラルネットワークを使用していても、ニューラルネットワークを使用していなくても、第１のパーツから得られた情報を用いて第２のパーツの検出精度を向上させることができるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の態様に係る情報処理装置は、対象画像から、第１のパーツの座標である第１のパーツ座標を検出する第１のパーツ検出部と、前記対象画像及び前記第１のパーツ座標を用いて、第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出する第２のパーツ予測部と、前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出する第２のパーツ検出部と、を備え、前記第２のパーツ予測部は、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて、前記第２のパーツ予測座標を算出することを特徴とする。
【０００７】
本発明の第２の態様に係る情報処理装置は、対象画像から、第１のパーツの座標である第１のパーツ座標及び第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出する第１のパーツ検出兼第２のパーツ予測部と、前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出する第２のパーツ検出部と、を備え、前記第１のパーツ検出兼第２のパーツ予測部は、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて、前記第２のパーツ予測座標を算出することを特徴とする。
【０００８】
本発明の第３の態様に係る情報処理装置は、対象画像から、第１のパーツの座標である第１のパーツ座標を検出し、前記第１のパーツ座標から第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、前記第２のパーツ予測座標を、前記第２のパーツ座標とする情報処理装置であって、前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されることを特徴とする。
【０００９】
本発明の第１の態様に係るプログラムは、コンピュータに、対象画像から、第１のパーツの座標である第１のパーツ座標を検出するステップと、前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出するステップと、前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出するステップと、を行わせるプログラムであって、前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されることを特徴とする。
【００１０】
本発明の第２の態様に係るプログラムは、コンピュータに、対象画像から、第１のパーツの座標である第１のパーツ座標を検出するステップと、前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、前記第２のパーツ予測座標を、前記第２のパーツ座標とするステップと、を行わせるプログラムであって、前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されることを特徴とする。
【００１１】
本発明の第１の態様に係る情報処理方法は、対象画像から、第１のパーツの座標である第１のパーツ座標を検出し、前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、前記対象画像及び前記第２のパーツ予測座標を用いて、前記第２のパーツ座標を検出する情報処理方法であって、前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されることを特徴とする。
【００１２】
本発明の第２の態様に係る情報処理方法は、対象画像から、第１のパーツの座標である第１のパーツ座標を検出し、前記対象画像と前記第１のパーツ座標とを用いて第２のパーツの座標である第２のパーツ座標を予測した座標である第２のパーツ予測座標を算出し、前記第２のパーツ予測座標を、前記第２のパーツ座標とする情報処理装置であって、前記第２のパーツ予測座標は、事前に収録した、各々が前記第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、予め分類された複数のクラスの内、前記第１のパーツが前記複数のクラスの各々に属する尤度に基づいて算出されることを特徴とする。
【発明の効果】
【００１３】
本発明の一又は複数の態様によれば、ニューラルネットワークを使用していても、ニューラルネットワークを使用していなくても、第１のパーツから得られた情報を用いて第２のパーツの検出精度を向上させることができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１、３、４、５及び８に係る検出装置の構成を概略的に示すブロック図である。
【図２】（Ａ）〜（Ｄ）は、検出装置での検出動作を説明するための概略図である。
【図３】第１のパーツ検出部の一例を示すブロック図である。
【図４】（Ａ）〜（Ｄ）は、カスケード検出器での動作を説明するための概略図である。
【図５】実施の形態１及び３における第２のパーツ予測部の一例を示すブロック図である。
【図６】実施の形態１におけるクラス構成を説明するための概略図である。
【図７】（Ａ）及び（Ｂ）は、ハードウェア構成例を示すブロック図である。
【図８】実施の形態１の変形例に係る掲出装置の構成を概略的に示すブロック図である。
【図９】人の骨格の全パーツにわたって検出するための検出装置の全体構成の一例を示すブロック図である。
【図１０】実施の形態２に係る検出装置の構成を概略的に示すブロック図である。
【図１１】実施の形態２における第１のパーツ検出予測部の構成を概略的に示すブロック図である。
【図１２】実施の形態２におけるクラス構築を説明するための概略図である。
【図１３】（Ａ）〜（Ｆ）は、実施の形態３における学習データ及び特徴量を説明するための概略図である。
【図１４】特徴量を特徴量空間に分布させた一例を示す概略図である。
【図１５】実施の形態４における学習データの所属クラス決定の方法を示す概略図である。
【図１６】（Ａ）〜（Ｄ）は、スライディングウィンドウのスライド量を説明するための概略図である。
【図１７】（Ａ）及び（Ｂ）は、スライディングウィンドウのサイズの変更間隔の一例を示す概略図である。
【図１８】実施の形態６に係る検出装置の構成を概略的に示すブロック図である。
【図１９】実施の形態７に係る検出装置の構成を概略的に示すブロック図である。
【図２０】実施の形態８における第２のパーツ検出部の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
実施の形態１．
以下、実施の形態について述べる。
なお、以下の実施の形態における「パーツ」は、例えば、人間の肩又は肘といった、骨格を構成する部位である骨格パーツである。骨格パーツは、人間の関節部位であってもよく、人間の関節以外の部位（例えば、耳又は目等）であってもよい。また、骨格パーツは、人間以外の動物の骨格を構成する部位であってもよい。さらに、「パーツ」は、ロボットのリンク等、機械を構成する部品であってもよい。
【００１６】
図１は、実施の形態１に係る情報処理装置としての検出装置１００の構成を概略的に示すブロック図である。
検出装置１００は、画像入力部１１０と、第１のパーツ検出部１２０と、第２のパーツ予測部１３０と、第２のパーツ検出部１４０とを備える。
ここで、実施の形態１に係る検出装置１００は、人間の骨格を検出する骨格検出装置であるものとして説明する。
なお、図２（Ａ）〜図２（Ｅ）は、検出装置１００での処理を説明するための概略図である。
【００１７】
画像入力部１１０は、画像ＩＭの入力を受け付ける入力インターフェースである。そして、画像入力部１１０は、入力された画像ＩＭの各々を、対象画像ＴＩとして、第１のパーツ検出部１２０、第２のパーツ予測部１３０及び第２のパーツ検出部１４０に与える。画像ＩＭは、二次元画像であっても良いし、距離画像又は点群情報のような三次元画像であっても良い。
【００１８】
例えば、画像入力部１１０は、二次元スチルカメラ又は三次元スチルカメラのような、リアルタイムで静止画像を取得できるような機器から画像ＩＭの入力を受け付けてもよい。また、画像入力部１１０は、二次元カムコーダー又は三次元カムコーダーのように、動画像を取得できるような機器から画像ＩＭの入力を受け付けてもよい。さらに、画像入力部１１０は、ディスク、テープ又はフラッシュメモリ等の蓄積メディアに記録された静止画像又は動画像の転送を受けることで、画像ＩＭの入力を受け付けてもよい。
【００１９】
画像入力部１１０に入力される画像ＩＭが静止画像である場合、画像入力部１１０は、その画像ＩＭをそのまま対象画像ＴＩとして、後段に与える。一方、画像ＩＭが動画像である場合、画像入力部１１０は、動画像の１コマ１コマを対象画像ＴＩとして、順次、後段に与える。例えば、図２（Ａ）に、対象画像ＴＩの一例を示す。
【００２０】
第１のパーツ検出部１２０は、対象画像ＴＩから、予め定められた第１のパーツの座標である第１のパーツ座標ＦＣを検出する。第１のパーツ検出部１２０は、検出された第１のパーツ座標ＦＣを第２のパーツ予測部１３０に与える。なお、後述する第２のパーツ検出部１４０と同様の入出力形態とするため、第１のパーツ検出部１２０は、図１に示されている第２のパーツ予測部１３０とは別の第２のパーツ予測部からの第２のパーツ予測座標を、第１のパーツ予測座標ＦＰとして入力を受けてもよい。ここでは事前情報がないため、第１のパーツ予測座標ＦＰは存在しないものとして説明する。なお、ここでは、第２のパーツ予測部１３０で検出される第２のパーツ予測座標を符号ＳＰで表すものとし、他の第２のパーツ予測部から入力される第１のパーツ予測座標を符号ＦＰで表すものとする。なお、第１のパーツ検出部１２０が、第１のパーツ予測座標ＦＰの入力を受け付ける場合には、第１のパーツ検出部１２０は、第２のパーツ検出部１４０と同様に構成されればよい。これにより、第１のパーツ検出部１２０は、第１のパーツ予測座標ＦＰを用いて、探索範囲を狭めることができる。
また、第１のパーツ検出部１２０は、第１のパーツ予測座標ＦＰとして、「予測座標なし」という入力を許容してもよい。
【００２１】
実施の形態１においては、第１のパーツは、鼻であるものとし、第１のパーツ検出部１２０は、第１のパーツ座標ＦＣとして鼻座標を検出するものとする。例えば、図２（Ｂ）に示されているように、第１のパーツ検出部１２０は、鼻座標として第１のパーツ座標ＦＣを検出する。
【００２２】
具体的には、第１のパーツ検出部１２０は、弱検出器を多数段組み合わせたカスケード検出器、ＳＶＭ（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）分類器、回帰分析による尤度算出器、ニューラルネットワークを用いた検出器、遺伝的アルゴリズム若しくは遺伝的プログラミング等の進化計算を用いた検出器、又は、それらの組み合わせ等により構成することができる。実施の形態１では、一例として、カスケード検出器と、ＳＶＭ分類器とを組み合わせることで第１のパーツ検出部１２０を構成するものとする。
【００２３】
図３は、第１のパーツ検出部１２０の一例を示すブロック図である。
第１のパーツ検出部１２０は、カスケード検出器１２１と、ＳＶＭ分類器１２２とを備える。
【００２４】
図３に示されているように、カスケード検出器１２１には、対象画像ＴＩが与えられる。
カスケード検出器１２１においては、事前に大量の学習データから、第１のパーツ候補領域である鼻候補領域を選択するための学習モデルが構築されているものとする。その構築方法は、実施の形態１の範疇外であるため、ここでは説明を省略する。
【００２５】
カスケード検出器１２１は、図４（Ａ）〜図４（Ｄ）に示されているように、対象画像ＴＩ内で、スライディングウィンドウＳＷを少しずつずらしながら、スライディングウィンドウＳＷで切り取られた部分画像が、学習モデルで示された条件に合致する、言い換えると、鼻候補領域として適当かどうかを検出する。
また、カスケード検出器１２１は、マルチスケールな検出にも適用可能で、その場合はスライディングウィンドウＳＷのサイズも変化させながら鼻候補領域を検索する。
【００２６】
カスケード検出器１２１は、このような処理により、いくつかの第１のパーツ候補領域を含む第１のパーツ候補領域群ＦＧを特定し、その第１のパーツ候補領域群ＦＧをＳＶＭ分類器１２２に与える。ここでは、第１のパーツ候補領域は、鼻候補領域であり、第１のパーツ候補領域群ＦＧは、鼻候補領域群である。なお、図３においては、三つの鼻候補領域Ｒ１、Ｒ２、Ｒ３が鼻候補領域群に含まれているものとする。
【００２７】
ＳＶＭ分類器１２２は、第１のパーツ候補領域群ＦＧに含まれている一つ一つの第１のパーツ候補領域を、ポジティブクラス又はネガティブクラスに分類する。ここでは、ＳＶＭ分類器１２２は、一つ一つの鼻候補領域を、ポジティブクラスとして鼻であるか、又は、ネガティブクラスとして鼻ではないかに分類する。
なお、ＳＶＭ分類器１２２についても、カスケード検出器１２１と同様に、事前に大量の学習データから、ポジティブクラスであるかネガティブクラスであるかを判別する学習モデルが構築されているものとする。その構築方法は、実施の形態１の範疇外であるため、ここでは説明を省略する。
【００２８】
図３では、ＳＶＭ分類器１２２は、右側の一つの領域Ｒ３をポジティブクラスであると判断し、左側の二つの領域Ｒ１、Ｒ２をネガティブクラスであると判断するものとする。この場合、ＳＶＭ分類器１２２は、一つの領域Ｒ３を示す座標を、第１のパーツ座標ＦＣ（例えば、鼻座標）として第２のパーツ予測部１３０に与える。第１のパーツ座標ＦＣとして出現する鼻候補領域の数は、１個とは限らず、０個又は２個以上であることもありえる。以降の処理は、鼻候補領域毎に行ってもよいし、何らかの方法で鼻候補領域を１個にするような処理を追加してもよい。
【００２９】
なお、一般的に、カスケード検出器１２１と、ＳＶＭ分類器１２２とでは、領域の評価回数に大きな差があるため、カスケード検出器１２１に比べてＳＶＭ分類器１２２のほうが精密な評価を行う実装が適切である。例えば、カスケード検出器１２１においては、対象画像ＴＩを、計算が高速な二値ベクトル特徴量であるＬＢＰ（Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）特徴量に変換して評価を行い、ＳＶＭ分類器１２２においては浮動小数点数ベクトルで高精度なＨＯＧ（Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｇｒａｄｉｅｎｔｓ）特徴量を用いて評価を行う等の実装が可能である。但し、これら特徴量は、実施の形態１において必須のものではなく、他の特徴量を用いることも可能であり、また実施の形態１の範疇外であるため、ここでは詳細な説明は省略する。
【００３０】
図１に戻り、第２のパーツ予測部１３０は、対象画像ＴＩ及び第１のパーツ座標ＦＣを用いて、第２のパーツ予測座標ＳＰを算出する。例えば、第２のパーツ予測部１３０は、対象画像ＴＩ及び第１のパーツ座標ＦＣから予測される第２のパーツの座標である第２のパーツ予測座標ＳＰを算出し、算出された第２のパーツ予測座標ＳＰを第２のパーツ検出部１４０に与える。
実施の形態１においては、第２のパーツは、首であるものとし、第２のパーツ予測部１３０は、第２のパーツ予測座標ＳＰとして首予測座標を算出するものとする。
【００３１】
例えば、第２のパーツ予測部１３０は、ニューラルネットワークを用いる方法、ＳＶＭ若しくはＳＶＲ（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｒｅｇｒｅｓｓｉｏｎ）を用いる方法、回帰分析を用いる方法、又は、遺伝的アルゴリズムや遺伝的プログラミングを用いた方法等を用いて第２のパーツ予測座標を特定することができる。
【００３２】
図５は、第２のパーツ予測部１３０の一例を示すブロック図である。
第２のパーツ予測部１３０は、ＳＶＲ分類器１３１と、第２のパーツ予測座標算出器１３２とを備える。
ＳＶＲ分類器１３１は、ＳＶＲを用いて、対象画像ＴＩのうち、第１のパーツ座標ＦＣで示された部分を解析し、クラス尤度ベクトルＣＶ１を特定し、そのクラス尤度ベクトルＣＶ１を第２のパーツ予測座標算出器１３２に与える。クラス尤度ベクトルＣＶ１は、第１のパーツ座標ＦＣで示された部分が、予め定められた複数のクラスのそれぞれにおける尤度を示すベクトルであり、全てのクラスの尤度の合計が１になるものとする。
【００３３】
ＳＶＲは、ＳＶＭと同様に、事前に収録された大量の学習データからモデルを構築して、そのモデルに従って入力を分類する機能を有する。ＳＶＭが単に属するクラスがどれであるかを出力するだけのものであるのに対し、ＳＶＲは、各クラスの尤度を出力する点で違いがある。その詳細な設計及び実装は、実施の形態１の範疇外であるため、ここでは説明を省略する。
【００３４】
実施の形態１においては、ＳＶＲのモデル構築時に、学習データを、いくつかのクラスに分けておく。このとき、次パーツの予測をすることが目的であるため、クラス毎に、次パーツの特性（具体的には、存在する方向等）が異なるようなクラスとなるようにする。
【００３５】
このクラス分けの一例を図６に示す。
図６においては、５個のクラスの各々において、次パーツ、ここでは、首の存在する座標に向かったベクトルの方向が異なるようなクラス分けをとる例を示している。
図６に示されているクラスＡは、首が鼻から見て左方向にあるような鼻の画像の集合である。クラスＢは、首が鼻から見て右方向にあるような鼻の画像の集合である。クラスＣは、首が鼻から見て左下方向にあるような鼻の画像の集合である。クラスＤは、首が鼻から見て下方向にあるような鼻の画像の集合である。クラスＥは、首が鼻から見て右下方向にあるような鼻の画像の集合である。
例えば、これらのクラス分けは、事前に収録した鼻のパーツ群を鼻の学習用パーツ群とし、また、事前に収録した首のパーツ群を首の学習用パーツ群とし、さらに、その鼻の学習用パーツ群中の一パーツの座標の値である座標値と、その首の学習用パーツ群中の対応する一パーツの座標値との差分を学習データ差分ベクトルとした場合に、学習データ差分ベクトルの方向により行うことができる。
【００３６】
また、学習データのクラス分けの際、鼻の座標と首の座標との関係の統計データ、すなわち、学習データ差分ベクトルの長さ若しくは方向等に関しても平均値若しくは分散値を計算しておいてもよい。また、長さに関しては、一般的には鼻領域の一辺の大きさはカメラから鼻までの距離と比例に近い関係にあると考えられるため、鼻と首との距離も、カメラから鼻までの距離と比例、言い換えると、鼻領域の一辺の大きさと比例に近い関係にあると考えられる。このため、学習データ差分ベクトルを、鼻領域の一辺の大きさで割って正規化した統計量が用いられてもよい。図６においては、各クラスの学習データの、鼻から首までの正規化平均ベクトルが予め算出されている。
【００３７】
また、図６に示されているようなクラス分けは、一例であり、例えば、上方向若しくは斜め上方向も含めたクラス分け、又は、学習データ取得時に三次元情報を得ることにより、画面上の二次元角に代えて三次元角を利用したクラス分け等、他の戦略によるクラス分けを否定するものではない。
【００３８】
図５に戻り、第２のパーツ予測座標算出器１３２は、クラス尤度ベクトルＣＶ１と、第１のパーツ座標ＦＣとから、第２のパーツ予測座標ＳＰを算出し、その第２のパーツ予測座標ＳＰを第２のパーツ検出部１４０に与える。
例えば、第２のパーツ予測座標算出器１３２は、学習時に得られた各クラスの、鼻から首までの正規化平均ベクトルを、尤度ベクトルに示される値で加重平均することで、第２のパーツ予測座標ＳＰを算出する。なお、統計量計算時に、統計量を鼻領域の一辺の大きさで割って平均化していた場合は、第２のパーツ予測座標算出器１３２は、検出された鼻領域の一辺のサイズを、正規化平均ベクトルに乗じておく必要がある。言い換えると、第１のパーツである鼻と、第２のパーツである首との間の位置関係は、対象画像ＴＩにおける第１のパーツのサイズに応じて変化する。第２のパーツ予測座標算出器１３２は、このようにして得られた加重平均ベクトルと、第１のパーツ座標ＦＣとを加算することで、第２のパーツ予測座標ＳＰを算出する。図２（Ｃ）に第２のパーツ予測座標ＳＰの一例を示す。
【００３９】
また、第２のパーツ予測座標算出器１３２が算出する第２のパーツ予測座標ＳＰは、前記のように、首の画面上の縦横の位置に加え、首領域の一辺の長さの予測値を含んでいてもよい。領域の一辺の長さの予測値も、縦横の位置と同様の方法で算出することができる。具体的には、学習時に得られた各クラスの、鼻と首との一辺の長さの比率を、尤度ベクトルに示される値で加重平均したものに、検出された鼻パーツ領域の一辺のサイズを乗じることで、算出することができる。
【００４０】
図１に戻り、第２のパーツ検出部１４０は、対象画像ＴＩと、第２のパーツ予測座標ＳＰとを用いて、第２のパーツの座標である第２のパーツ座標ＳＣを検出する。
ここでは、第２のパーツ検出部１４０が、対象画像ＴＩから、第２のパーツである首の座標（首座標）を第２のパーツ座標として検出する例を説明する。
【００４１】
第２のパーツ検出部１４０は、第２のパーツの探索に先立って、図２（Ｄ）に示されているように、首探索範囲である第２のパーツ探索範囲ＳＡを設定する。第２のパーツ探索範囲ＳＡは、例えば、第２のパーツ予測座標ＳＰを含む範囲として設定することができる。なお、第２のパーツ探索範囲ＳＡは、対象画像ＴＩの一部であり、対象画像ＴＩの全体よりも狭い範囲にすることができる。
【００４２】
具体的には、第２のパーツ探索範囲ＳＡは、第２のパーツとなる部位又は部品毎に、予め定められたサイズの矩形の範囲であってもよい。また、第２のパーツ探索範囲ＳＡは、ＳＶＲ分類器１３１の学習データの、鼻から首への学習データ差分ベクトルの横成分の分散値を横方向サイズ、鼻から首への学習データ差分ベクトルの縦成分の分散値を縦サイズとする矩形の範囲であってもよい。ここで、第２のパーツ探索範囲ＳＡを矩形とした場合には、第２のパーツ予測座標ＳＰが中心となるようにすることが望ましい。
【００４３】
さらに、第２のパーツ探索範囲ＳＡは、第２のパーツ予測座標ＳＰを分布中心とし、鼻から首への学習データ差分ベクトルの分散共分散行列によって特徴付けられる二次元正規分布の確率密度関数が一定閾値を超える領域としてもよい。
【００４４】
なお、一般に、対象画像ＴＩに含まれる人のサイズはさまざまであるため、首探索範囲の一辺の長さは、ありえる全域（例えば、最小５０画素、最大２５０画素）に設定する必要がある。但し、第２のパーツ予測座標ＳＰが、首領域の一辺の長さの予測値を含んでいる場合は、首探索範囲の一辺の長さを、首領域として仮定される一辺の長さの周りに絞り込んでもよい。例えば、首領域として仮定される一辺の長さが１５０画素であれば、首探索範囲の一辺の長さを、１２０画素から１８０画素のように、１５０画素の近辺のみに絞り込むことができる。
【００４５】
これにより、一つの効果として、例えば、８０画素角のような、鼻サイズからみると矛盾する（例えば、あまりに小さい）首の誤検出を回避することができる。また、もう一つの効果として、探索速度を向上させることができる。これは、１２０画素より小さい首の探索、及び、１８０画素より大きな首の探索をスキップすることができるからである。
【００４６】
図２（Ｄ）では、首探索範囲である第２のパーツ探索範囲ＳＡを、首予測座標である第２のパーツ予測座標ＳＰを中心とする一定サイズの矩形としているが、これは例示にすぎず、他の方法を用いて第２のパーツ探索範囲ＳＡが設定されてもよい。
【００４７】
第２のパーツ検出部１４０は、対象画像ＴＩのうち、首探索範囲である第２のパーツ探索範囲ＳＡのみから、第２のパーツ座標ＳＣである首座標を検出する。なお、第２のパーツ検出部１４０は、検出対象及び探索範囲が違うこと以外は、第１のパーツ検出部１２０と同様に構成されているため、ここでは説明を省略する。なお、第２のパーツ座標ＳＣは、例えば、図２（Ｅ）に示されている。
ここでは、第２のパーツ検出部１４０は、探索範囲を第２のパーツ探索範囲ＳＡに限定しているため、第２のパーツ探索範囲ＳＡの外の誤検出（Ｆａｌｓｅ  Ｐｏｓｉｔｉｖｅ）が原理的に発生しない。また、特にスライディングウィンドウを用いる検出器を用いている場合には、スライディング回数を削減することで高速な処理を実現できるというメリットがある。
【００４８】
なお、第１のパーツ座標ＦＣ、第２のパーツ予測座標ＳＰ、第２のパーツ座標ＳＣは、横方向座標と縦方向座標との二次元値であってもよく、横方向座標と縦方向座標とに、横方向サイズ又は縦方向サイズを加えたものであってもよい。
【００４９】
また、予測座標として「予測座標なし」が与えられた場合、一般にパーツ探索範囲を全画面に、探索するパーツのサイズを考えられる全サイズとする。これは、本実施の形態における、第１のパーツ検出部１２０又は第２のパーツ検出部１４０であっても、第１のパーツが発見できなかった場合が該当する。但し、この探索範囲の限定は、別の何らかの方法によって行われてもよい。例えば、別に存在する顔検出器の結果を利用したり、動画を入力とし、検出器が連続的に稼動される場合に、前回に計算された第１のパーツ又は第２のパーツの座標又はサイズを利用したりするなどの方法が考えられる。
【００５０】
以上に記載された第１のパーツ検出部１２０、第２のパーツ予測部１３０及び第２のパーツ検出部１４０の一部又は全部は、例えば、図７（Ａ）に示されているように、メモリ１０と、メモリ１０に格納されているプログラムを実行するＣＰＵ等のプロセッサ１１とにより構成することができる。言い換えると、検出装置１００は、コンピュータにより実現することができる。このようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。即ち、このようなプログラムは、例えば、プログラムプロダクトとして提供されてもよい。
【００５１】
また、第１のパーツ検出部１２０、第２のパーツ予測部１３０及び第２のパーツ検出部１４０の一部又は全部は、例えば、図７（Ｂ）に示されているように、単一回路、複合回路、プログラム化したプロセッサ、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等の並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）又はＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の処理回路１２で構成することもできる。
【００５２】
以上のようにして、実施の形態１に係る検出装置１００は、第１のパーツ座標ＦＣと、第２のパーツ座標ＳＣとを検出したが、この後、第２のパーツ予測部１３０及び第２のパーツ検出部１４０と同様の、図示しない、第３のパーツ予測部及び第３のパーツ検出部を後段に配置することで、第３のパーツの座標を求めることができる。第３のパーツとして考えられる部位としては、例えば右肩、左肩又は胸等が挙げられる。
【００５３】
また、図１においては、予測座標が出力されるパーツは第２のパーツただ１個であったが、実施の形態１は、このような例に限定されない。
図８は、実施の形態１の変形例に係る検出装置１００＃の構成を概略的に示すブロック図である。
一つの第１のパーツ検出部１２０に対して、複数のパーツ予測部を設けることができる。図８では、第２のパーツ予測部１３０の他に、第３のパーツ予測部１３０＃が設けられている。すなわち、第２のパーツ予測部１３０と同様の構成の第３のパーツ予測部１３０＃、第２のパーツ検出部１４０と同様の構成の第３のパーツ検出部１４０＃を設けることができる。
【００５４】
この場合、第３のパーツ予測部１３０＃は、第１のパーツ座標ＦＣ及び対象画像ＴＩから、第３のパーツ予測座標ＳＰ＃を予測して、その第３のパーツ予測座標ＳＰ＃を第３のパーツ検出部１４０＃に与える。さらに、第３のパーツ検出部１４０＃は、その第３のパーツ予測座標ＳＰ＃及び対象画像ＴＩから、第３のパーツ座標ＳＣ＃を検出して、その第３のパーツ座標ＳＣ＃を出力する。さらに同様に、パーツ予測部を増やすことで、第４パーツ座標又は第５のパーツ座標等を出力することもできる。
【００５５】
さらに、図１において、第２のパーツ予測部１３０から第２のパーツ予測座標ＳＰが出力されないようにすることもできる。これは、次パーツが存在しない、つまり骨格の末端で出現する。
【００５６】
このような流れを、人の骨格において、検出すべき全パーツにわたって構成した、骨格検出装置としての検出装置１００の全体構成の一例を図９に示す。
ここで、図９に示されている、首検出セット、右肩検出セット、胸検出セット又は左肩検出セット等のセットの文字列を有する一つのブロックは、図１に示されている第１のパーツ検出部１２０及び第２のパーツ予測部１３０を、検出すべきパーツの検出部および後続するパーツの予測部に対応させることで構成される。
言い換えると、一つのブロックで示されている、パーツの検出セットが、対応する部位の座標及び後続する部位の予測座標を出力し、次のパーツの検出セットが、そのパーツの予測座標を用いて、高精度かつ高速に、対応する部位の座標を検出することができる。
【００５７】
なお、図９においては、検出するパーツを「鼻」、「首」、「右肩」、「右肘」、「右手」、「左肩」、「左肘」、「左手」、「胸」、「右腰」、「右膝」、「右足」、「左腰」、「左膝」及び「左足」として、適当と思われる検出順序を記載しているが、このパーツの組み合わせ及び検出の順序は一例であり、他のパーツの挿入、一部のパーツのスキップ、又は、検出の順序の変更等を否定するものではない。
【００５８】
なお、以上のように構成された実施の形態１に係る検出装置１００の出力を利用することにより得られる利益の一例として、人間の行動検出が挙げられる。例えば、乗用車の車室を撮影した画像に対する検出結果から、搭乗者が隣席に置いた書類を探す動作を検知することができる。また、エレベータ前の画像に対する検出結果から、エレベータに乗り込もうとしている人の存在を検知することができる。
【００５９】
また、検出装置１００の出力の利用の別の例として、ロボット同士の協働を挙げることができる。具体的には、あるロボットが、別のロボットのアームの状態を検出することにより、アームの衝突を避けながら物体を引き渡すような作業を、画像のみを用いて行うことができる。
【００６０】
実施の形態２．
図１０は、実施の形態２に係る情報処理装置としての検出装置２００の構成を概略的に示すブロック図である。
検出装置２００は、画像入力部１１０と、第１のパーツ検出兼第２のパーツ予測部２２０と、第２のパーツ検出部１４０とを備える。
実施の形態２に係る検出装置２００の画像入力部１１０及び第２のパーツ検出部１４０は、実施の形態１に係る検出装置１００の画像入力部１１０及び第２のパーツ検出部１４０と同様である。但し、実施の形態２における画像入力部１１０は、第１のパーツ検出兼第２のパーツ予測部２２０及び第２のパーツ検出部１４０に対象画像ＴＩを与え、第２のパーツ検出部１４０は、第１のパーツ検出兼第２のパーツ予測部２２０から第２のパーツ予測座標ＳＰを受け取る。
【００６１】
第１のパーツ検出兼第２のパーツ予測部２２０は、対象画像ＴＩ及び第１のパーツ予測座標ＦＰを入力とし、第１のパーツ座標ＦＣと、第２のパーツ予測座標ＳＰとを出力する。ここで、第１のパーツ予測座標ＦＰとして、「予測座標なし」が許容されることは、実施の形態１と同様である。なお、実施の形態２における第１のパーツ予測座標ＦＰは、他の第１のパーツ検出兼第２のパーツ予測部２２０から出力された第１のパーツ予測座標である。
【００６２】
第１のパーツ検出兼第２のパーツ予測部２２０の機能について、第１のパーツを鼻、第２のパーツを首とした例を用いて説明する。
図１１は、第１のパーツ検出兼第２のパーツ予測部２２０の構成を概略的に示すブロック図である。
第１のパーツ検出兼第２のパーツ予測部２２０は、カスケード検出器２２１と、ネガティブ付きＳＶＲ分類器２２２と、第１のパーツ領域選出器２２３と、第２のパーツ予測座標算出器２２４とを備える。
【００６３】
カスケード検出器２２１は、対象画像ＴＩから、いくつかの第１のパーツ候補領域を含む第１のパーツ候補領域群ＦＧを特定し、その第１のパーツ候補領域群ＦＧをネガティブ付きＳＶＲ分類器２２２に与える。ここでは、第１のパーツ候補領域は、鼻候補領域であり、第１のパーツ候補領域群ＦＧは、鼻候補領域群である。なお、図１１においては、三つの鼻候補領域Ｒ１、Ｒ２、Ｒ３が鼻候補領域群に含まれているものとする。
ここで、実施の形態２におけるカスケード検出器２２１での動作は、実施の形態１における第１のパーツ検出部１２０におけるカスケード検出器１２１での動作と同様である。
【００６４】
ネガティブ付きＳＶＲ分類器２２２は、第１のパーツ候補領域群ＦＧに含まれている複数の第１のパーツ候補領域の各々に対して、クラス尤度ベクトルＣＶ２を計算する。クラス尤度ベクトルＣＶ２は、実施の形態１で説明したクラス尤度ベクトルＣＶ１にネガティブクラスを追加したものである。
【００６５】
図１２は、クラス尤度ベクトルＣＶ２のクラス構築を説明するための概略図である。
図１２に示されているクラスＡ〜クラスＥは、実施の形態１において、図６を用いて説明したクラスＡ〜クラスＥと同様である。図１２に示されている例では、クラスＡ〜クラスＥに、ネガティブクラスが追加されている。
【００６６】
ネガティブクラスは、事前に収録した、第１のパーツである鼻ではない画像データのクラスである。鼻ではない画像データであるため、クラスの正規化平均ベクトルを計算することはできないが、後述するように、第２のパーツ予測座標算出器２２４は、このクラスを無視するため、クラスＡ〜クラスＥまでと違い、正規化平均ベクトルを計算する必要はない。
【００６７】
ネガティブクラスを構成する、鼻ではない画像データの収録方法に関してはさまざまに考えられる。例えば、カスケード検出器２２１が出力した鼻候補領域のうち、実際は鼻ではないと人間が判断した画像データ、人間が選出した画像データ、又は、鼻が画像内に全く存在しない画像内から、ランダムに選出された領域の画像データであってもよい。
【００６８】
一般には、カスケード検出器２２１が検出した鼻候補領域のうち、実際は鼻ではないと人間が判断した画像データを使用する場合には、カスケード検出器２２１の誤検出を、ネガティブ付きＳＶＲ分類器２２２が棄却する可能性が上がるという利点がある。一方、鼻が画像内に全く存在しない画像内から、ランダムに選出された領域の画像データを使用する場合には、収集を完全自動化できるという利点がある。以上に示されたネガティブクラスの画像データの選出方法は、一例であり、他の方法を採用することを制限するものではない。
【００６９】
図１１に戻り、第１のパーツ領域選出器２２３は、第１のパーツ候補領域群ＦＧに含まれている複数の第１のパーツ候補領域から、実際の第１のパーツ領域を選出し、選出された第１のパーツ領域を示す第１のパーツ座標ＦＣを検出する。ここでは、第１のパーツ領域選出器２２３は、鼻候補領域から、実際の鼻領域を選出する。検出された第１のパーツ座標ＦＣは、第２のパーツ予測座標算出器２２４にも与えられる。
第１のパーツ領域の選出方法については、さまざまに考えられるが、一例として、第１のパーツ領域選出器２２３は、クラス尤度ベクトルＣＶ２を参照して、クラス尤度のうち最大値を示すクラスが、ネガティブクラスでない領域である候補領域を選択すればよい。また、用途によっては鼻領域を一つに絞る必要があると考えられるが、そのような場合には、第１のパーツ領域選出器２２３は、ネガティブクラスの尤度が最も低いものを選出してもよい。
なお、以上に記載した第１のパーツ領域の選出方法は、一例であり、他の方法を採用することを否定するものではない。
【００７０】
第２のパーツ予測座標算出器２２４は、クラス尤度ベクトルＣＶ２および第１のパーツ座標ＦＣから、第２のパーツ予測座標ＳＰを算出する。第２のパーツ予測座標算出器２２４の動作は、クラス尤度ベクトルＣＶ２からネガティブクラス尤度を無視することを除いて、実施の形態１における第２のパーツ予測部１３０の第２のパーツ予測座標算出器１３２の動作と同様である。
【００７１】
以上のように、実施の形態２によれば、第１のパーツ候補領域がポジティブであるかネガティブであるかと、第２のパーツの座標の予測に用いるクラス尤度ベクトルＣＶ２を同時に算出することができる。このため、実施の形態２は、実施の形態１における第１のパーツ検出部１２０に含まれるＳＶＭ分類器１２２及び第２のパーツ予測部１３０に含まれているＳＶＲ分類器１３１を、一つにすることができるというメリットがある。これにより、計算資源及び計算時間を削減することができる。
【００７２】
実施の形態３．
図１に示されているように、実施の形態３に係る情報処理装置としての検出装置３００は、画像入力部１１０と、第１のパーツ検出部１２０と、第２のパーツ予測部３３０と、第２のパーツ検出部１４０とを備える。
【００７３】
実施の形態３に係る検出装置３００の画像入力部１１０、第１のパーツ検出部１２０及び第２のパーツ検出部１４０は、実施の形態１に係る検出装置１００の画像入力部１１０、第１のパーツ検出部１２０及び第２のパーツ検出部１４０と同様である。
但し、実施の形態３においては、第１のパーツ検出部１２０は、第１のパーツ座標ＦＣを第２のパーツ予測部３３０に与え、第２のパーツ検出部１４０は、第２のパーツ予測部３３０から第２のパーツ予測座標ＳＰを取得する。
【００７４】
第２のパーツ予測部３３０は、対象画像ＴＩ及び第１のパーツ座標ＦＣを用いて、第２のパーツ予測座標ＳＰを算出する。
実施の形態３においては、第２のパーツ予測座標ＳＰは、事前に収録した第１のパーツの特徴量に基づいて予め定められた複数のクラスを用いて、第１のパーツが複数のクラスの各々に属する尤度と、複数のクラスの各々における第１のパーツ及び第２のパーツの間の相対的な位置関係と、に基づいて算出される。
【００７５】
図５に示されているように、実施の形態３における第２のパーツ予測部３３０は、ＳＶＲ分類器３３１と、第２のパーツ予測座標算出器１３２とを備える。
実施の形態３における第２のパーツ予測部３３０の第２のパーツ予測座標算出器１３２は、実施の形態１における第２のパーツ予測部１３０の第２のパーツ予測座標算出器１３２と同様である。但し、実施の形態３における第２のパーツ予測座標算出器１３２は、ＳＶＲ分類器３３１からクラス尤度ベクトルＣＶ３を取得する。
【００７６】
ＳＶＲ分類器３３１は、ＳＶＲを用いて、対象画像ＴＩのうち、第１のパーツ座標ＦＣで示された部分を解析し、クラス尤度ベクトルＣＶ３を特定し、そのクラス尤度ベクトルＣＶ３を第２のパーツ予測座標算出器１３２に与える。
【００７７】
実施の形態３におけるＳＶＲ分類器３３１は、学習データの所属クラスの決定方法において、実施の形態１におけるＳＶＲ分類器１３１と異なっている。
図１３及び図１４は、実施の形態３における学習データの所属クラス決定の方法を示す概略図である。
【００７８】
図１３（Ａ）〜（Ｆ）に示されているように、ＳＶＲ分類器３３１は、事前に収録した第１のパーツ群である第１の学習用パーツ群、ここでは様々な鼻の学習データＳＤ１〜ＳＤ６を取得しているものとする。
一般に、学習データは、何らかの特徴量に変換されてモデル構築される。よく用いられる特徴量としては、ＨＯＧ特徴量、ＬＢＰ特徴量、Ｈａａｒ−Ｌｉｋｅ特徴量、ＳＩＦＴ（Ｓｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ）特徴量等が提案されているが、本実施の形態は、何れの特徴量も適用することが可能である。
【００７９】
ここで、学習データＳＤ１〜ＳＤ６を、それぞれ、何らかの特徴量に変換したものを、特徴量ＭＳ１〜ＭＳ６として、図１３（Ａ）〜（Ｆ）に示している。
図１４は、特徴量ＭＳ１〜ＭＳ６を特徴量空間に分布させた一例を示す概略図である。
図１４では、模式的に説明を行うために、２次元の分布としているが、一般に特徴量は高次元のベクトルである。
【００８０】
そして、ＳＶＲ分類器３３１は、特徴量空間に写像された特徴量ＭＳ１〜ＭＳ６を、何らかの方法でクラスタリングする。クラスタリングを行う方法としては、手動で学習サンプルを１個１個分類する方法、手動で特徴量空間を分離する超平面を設定する方法、又は、教師なし学習法等があるが、これらの各々の方法は、公知であるため、ここでは説明は省略する。
なお、教師なし学習法には、ｋ−ｍｅａｎｓ法、自己組織化マップ（Ｓｅｌｆ  Ｏｒｇａｎｉｚｉｎｇ  Ｍａｐ：ＳＯＭ）法、及び、ＧＭＭ（Ｇａｕｓｓｉａｎ  Ｍｉｘｔｕｒｅ  Ｍｏｄｅｌ）法等がある。
【００８１】
なお、図１４では、特徴量空間で比較的近くにある特徴量ＭＳ１及び特徴量ＭＳ５でクラスＡを、特徴量ＭＳ２及び特徴量ＭＳ４でクラスＢを、特徴量ＭＳ３及び特徴量ＭＳ６でクラスＣを構成する例を示している。もともとの映りが似ている学習データは、特徴量空間においても似た特徴量であることが考えられ、同じクラスに属する可能性が高くなる。
【００８２】
このようなクラス分けをした場合、特徴量空間でのクラス間の分離度が良くなるというメリットがある。但し、予測に用いる各々のクラスの学習データにおいて、第１のパーツの座標の値である座標値と、第２のパーツの座標の値である座標値との差分である学習データ差分ベクトルの分散が大きくなる、言い換えると、各々のクラスの学習データの分離度が悪くなる可能性があるというデメリットがあり、双方はトレードオフの関係にある。従って、状況によって、実施の形態１で示されているクラス分けと、実施の形態３で示すクラス分けとのどちらが優れるかは異なる。
【００８３】
なお、以上に記載した実施の形態３では、実施の形態１の第２のパーツ予測部１３０を実施の形態３における第２のパーツ予測部３３０とする例を示したが、実施の形態３はこのような例に限定されない。例えば、実施の形態２の第１のパーツ検出兼第２のパーツ予測部２２０に含まれているネガティブ付きＳＶＲ分類器２２２において、図１３及び図１４で説明した、実施の形態３における学習データの所属クラス決定の方法が、ネガティブクラスを追加する形で用いられてもよい。
【００８４】
実施の形態４．
図１に示されているように、実施の形態４に係る情報処理装置としての検出装置４００は、画像入力部１１０と、第１のパーツ検出部１２０と、第２のパーツ予測部４３０と、第２のパーツ検出部１４０とを備える。
【００８５】
実施の形態４に係る検出装置４００の画像入力部１１０、第１のパーツ検出部１２０及び第２のパーツ検出部１４０は、実施の形態１に係る検出装置１００の画像入力部１１０、第１のパーツ検出部１２０及び第２のパーツ検出部１４０と同様である。
但し、実施の形態４においては、第１のパーツ検出部１２０は、第１のパーツ座標ＦＣを第２のパーツ予測部４３０に与え、第２のパーツ検出部１４０は、第２のパーツ予測部４３０から第２のパーツ予測座標ＳＰを取得する。
【００８６】
第２のパーツ予測部４３０は、対象画像ＴＩ及び第１のパーツ座標ＦＣを用いて、第２のパーツ予測座標ＳＰを算出する。
実施の形態４においては、第２のパーツ予測座標ＳＰは、事前に収録した、各々が第１のパーツに対応する複数のパーツである第１のパーツ群を第１の学習用パーツ群とし、また、事前に収録した、各々が第２のパーツに対応する複数のパーツである第２のパーツ群を第２の学習用パーツ群とし、さらに、第１の学習用パーツ群中の一つのパーツの座標値と、第２の学習用パーツ群中の対応する一つのパーツの座標値との差分を学習データ差分ベクトルとした場合に、その学習データ差分ベクトルの方向、及び、その学習データ差分ベクトルの長さに基づいて予め定められた複数のクラスを用いて、第１のパーツが複数のクラスの各々に属する尤度と、複数のクラスの各々における第１のパーツ及び第２のパーツの間の相対的な位置関係とに基づいて算出される。
【００８７】
図５に示されているように、実施の形態４における第２のパーツ予測部４３０は、ＳＶＲ分類器４３１と、第２のパーツ予測座標算出器１３２とを備える。
実施の形態４における第２のパーツ予測部４３０の第２のパーツ予測座標算出器１３２は、実施の形態１における第２のパーツ予測部１３０の第２のパーツ予測座標算出器１３２と同様である。但し、実施の形態４における第２のパーツ予測座標算出器１３２は、ＳＶＲ分類器４３１からクラス尤度ベクトルＣＶ４を取得する。
【００８８】
ＳＶＲ分類器４３１は、ＳＶＲを用いて、対象画像ＴＩのうち、第１のパーツ座標ＦＣで示された部分を解析し、クラス尤度ベクトルＣＶ４を特定し、そのクラス尤度ベクトルＣＶ４を第２のパーツ予測座標算出器１３２に与える。
【００８９】
実施の形態４におけるＳＶＲ分類器４３１は、学習データの所属クラスの決定方法において、実施の形態１におけるＳＶＲ分類器１３１と異なっている。
図１５は、第１のパーツを鼻、第２のパーツを首とした際に、実施の形態４における学習データの所属クラス決定の方法を示す概略図である。
【００９０】
実施の形態１におけるクラス分けは、学習データ差分ベクトルの方向、すなわち鼻から首に向けた方向だけを基準に分けていたが、実施の形態４におけるクラス分けは、学習データ差分ベクトルの方向、すなわち鼻から首に向けた方向と、学習データ差分ベクトルの長さ、すなわち鼻から首への距離との２つの基準で分けている。
具体的には、クラスＡは、鼻から首に向けた方向が下で、距離が短いクラスである。クラスＢは、鼻から首に向けた方向は下で、距離が長いクラスである。クラスＣは、鼻から首に向けた方向は左で、距離が短いクラスである。クラスＤは、鼻から首に向けた方向は左で、距離が長いクラスである。クラスＥは、鼻から首に向けた方向は右で、距離が短いクラスである。クラスＦは、鼻から首に向けた方向は右で、距離が長いクラスである。
【００９１】
ここで、鼻と首との実空間内での距離は基本的に大きく変わらないのに、対象画像ＴＩにおける鼻と首との距離が変動するのは、二次元カメラを用いている場合、実空間内での、カメラの光軸と、鼻から首への直線との方向関係が変動することによる。具体的には。カメラの光軸と、鼻から首への直線とが垂直に近い関係のときは、対象画像ＴＩにおける鼻と首との距離は大きくなり、カメラの光軸と、鼻から首への直線とが平行に近い関係のときは、対象画像ＴＩにおける鼻と首との距離は小さくなる。
【００９２】
このようなクラス分け戦略は、特に、肘のような、動きの自由度が大きいパーツの学習モデルを分けるような際に効果を発揮する。言い換えると、肘の次のパーツとして自然なものは手、手首、又は、肩であるが、前腕又は二の腕は、一般に自由度の高い運動をするため、これらと肘との、二次元画面上での距離は非常に大きく変動する。
【００９３】
また、この図１５におけるクラス分けは説明のための一例であり、斜め又は上の方向を追加したり、距離を３段階以上に増やしたりすることを否定するものではない。
【００９４】
なお、以上に記載した実施の形態４では、実施の形態１の第２のパーツ予測部１３０を実施の形態４における第２のパーツ予測部４３０とする例を示したが、実施の形態４はこのような例に限定されない。例えば、実施の形態２の第１のパーツ検出兼第２のパーツ予測部２２０に含まれているネガティブ付きＳＶＲ分類器２２２において、図１５で説明した、実施の形態４におけるクラス分けが、ネガティブクラスを追加する形で用いられてもよい。
【００９５】
実施の形態５．
図１に示されているように、実施の形態５に係る情報処理装置としての検出装置５００は、画像入力部１１０と、第１のパーツ検出部５２０と、第２のパーツ予測部１３０と、第２のパーツ検出部５４０とを備える。
【００９６】
実施の形態５に係る検出装置５００の画像入力部１１０及び第２のパーツ予測部１３０は、実施の形態１に係る検出装置１００の画像入力部１１０及び第２のパーツ予測部１３０と同様である。
但し、実施の形態５においては、画像入力部１１０は、対象画像ＴＩを第１のパーツ検出部５２０、第２のパーツ予測部１３０及び第２のパーツ検出部５４０に与える。また、第２のパーツ予測部１３０は、第１のパーツ検出部５２０から第１のパーツ座標ＦＣを受け取り、予測された第２のパーツ予測座標ＳＰを第２のパーツ検出部５４０に与える。
【００９７】
第１のパーツ検出部５２０は、対象画像ＴＩと、「予測座標なし」という状態である第１のパーツ予測座標ＦＰとを用いて、第１のパーツ座標ＦＣを計算する。
第２のパーツ検出部５４０は、対象画像ＴＩと、第２のパーツ予測座標ＳＰとを用いて、第２のパーツの座標である第２のパーツ座標ＳＣを検出する。
ここでは、対象画像ＴＩから、第１のパーツ検出部５２０が、第１のパーツである鼻の座標を、また第２のパーツ検出部５４０が、第２のパーツである首の座標を第２のパーツ座標として検出する例を説明する。
【００９８】
実施の形態１では、第２のパーツ検出部１４０は、図示してはいないが、第１のパーツ検出部１２０のカスケード検出器１２１及びＳＶＭ分類器１２２と同様のカスケード検出器及びＳＶＭ分類器を用いている。このうち、カスケード検出器は、図４に示したように、対象画像ＴＩにおいて、スライディングウィンドウＳＷをずらしながら、スライディングウィンドウＳＷで切り取られた領域が目的のパーツであるかを判定する。
【００９９】
スライディングウィンドウＳＷのストライド幅は、一定とすることが一般的である。これは、画像上のどこに目的のパーツが存在するかが不明であり、探索領域を均等に探索するのが妥当であるからである。ストライド幅は、スライディングウィンドウＳＷをずらす距離であり、スライディングウィンドウＳＷが一回の移動で移動する距離である。言い換えると、ストライド幅は、スライディングウィンドウＳＷをスライドさせるスライド幅である。
しかしながら、第２のパーツ検出部５４０の動作時には、第２のパーツ予測座標ＳＰが得られており、その周辺に第２のパーツが存在すると考えるのが妥当である。このため、実施の形態５においては、このストライド幅、すなわち探索粒度を可変とする。これにより、第２のパーツ予測座標ＳＰに近づくほど、第２のパーツを探索する精度を高めることができる。以下、図１６を用いて説明する。
【０１００】
図１６（Ａ）に示されているように、第２のパーツ予測座標ＳＰ、ここでは、首予測座標を中心とした矩形形状として、首探索範囲である第２のパーツ探索範囲ＳＡが設定されている。
図１６（Ａ）及び（Ｂ）に示されているように、スライディングウィンドウＳＷが第２のパーツ予測座標ＳＰから遠い場合には、ストライド幅ＤＥが比較的大きく設定されている。
一方、図１６（Ｃ）及び（Ｄ）に示されているように、スライディングウィンドウＳＷが第２のパーツ予測座標ＳＰから近い場合には、ストライド幅ＤＥが比較的小さく設定されている。
言い換えると、実施の形態５においては、スライディングウィンドウＳＷは、第２のパーツ予測座標ＳＰに近ければ近いほど、ストライド幅が小さくなるようにする。
【０１０１】
なお、実施の形態５では、スライディングウィンドウＳＷで探索する範囲を、第２のパーツ探索範囲ＳＡに制限しているが、例えば、スライディングウィンドウＳＷのストライド幅を可変にする場合には、第２のパーツを探索する範囲を対象画像ＴＩの全体に設定してもよい。第２のパーツ探索範囲ＳＡを対象画像ＴＩ内に設定することのメリットは、第２のパーツ予測座標ＳＰから遠い部分での検出処理を省略することにより、計算量の低減と誤検出（Ｆａｌｓｅ  Ｐｏｓｉｔｉｖｅ）とを抑制することである。しかしながら、スライディングウィンドウＳＷのストライド幅を可変にすることにより、特に探索範囲を制限せずとも、これらのメリットを享受することができる。
【０１０２】
なお、第２のパーツ予測座標ＳＰに縦横位置だけでなく縦横の大きさが含まれる場合等は、カスケード検出器の動作においては、スライディングウィンドウＳＷのサイズも順次変更して探索を行ってもよい。従って、スライディングウィンドウＳＷのサイズの変更間隔も、第２のパーツのサイズとして予測されるサイズの近辺で粒度を高く、予測されるサイズから遠い際には粒度を低くしてもよい。これにより、スライディングウィンドウＳＷによる探索は、第２のパーツのサイズとして予測されるサイズの近辺で密に行われ、第２のパーツのサイズとして予測されるサイズから離れている場合には、疎に行われる。
【０１０３】
スライディングウィンドウＳＷのサイズの変更間隔の一例を、図１７に示す。
図１７（Ａ）には、特に探索粒度を可変にしない場合に該当する。サイズ間隔は、一般に隣接するサイズの探索窓サイズとの倍率（比率）で表される。例えば、第２のパーツの予測サイズが１００ピクセル角である場合、７５．１ピクセル角、８２．６ピクセル角、９０．９ピクセル角、１００ピクセル角、１１０ピクセル角、１２１ピクセル角、１３３．１ピクセル角というように、倍率が１．１の一定になるようにスライディングウィンドウＳＷのサイズが変更されるのが一般的である。
【０１０４】
しかしながら、図１７（Ｂ）に示されているように、第２のパーツの予測サイズである１００ピクセル近辺では、倍率を１．０５と比較的１に近くし、その予測サイズから遠い際には、倍率を１．１５と比較的１から遠く、その中間では倍率を１．１と中間的な値に設定することができる。言い換えると、実施の形態５では、対象画像ＴＩに含まれている対象のサイズが、第２のパーツの予測サイズに近いほど、スライディングウィンドウのサイズの変更が小さくなるようにする。これにより、対象のサイズが、予測サイズである１００ピクセル角付近である場合に、密に探索が行われ、それが予測サイズである１００ピクセル角から遠い場合に、より疎に探索が行われる。
このように、第２のパーツ予測部１３０は、第１のパーツのサイズから第２のパーツのサイズを予測し、第２のパーツ検出部５４０は、第２のパーツのサイズをさらに用いて、第２のパーツ座標を検出することができる。
【０１０５】
以上により、予測される位置及びサイズに近い候補領域を優先的に検出することができ、また、予測される位置及びサイズから遠いような候補領域の探索を実質的にスキップすることができる。これにより、探索のための計算量を削減することが可能となる。
【０１０６】
なお、ここで示した探索粒度の変更の戦略はあくまで一例であり、予測される座標又はサイズ近辺での探索粒度を向上させ、予測される座標又はサイズから離れた位置での探索粒度を低下させる、他の粒度変更戦略を、実施の形態５は否定するものではない。
【０１０７】
なお、実施の形態５では、実施の形態１における第２のパーツ検出部１４０を、実施の形態５における第２のパーツ検出部５４０に代えているが、実施の形態５は、このような例に限定されない。例えば、実施の形態２〜４における第２のパーツ検出部１４０を、実施の形態５における第２のパーツ検出部５４０に代えてもよい。
【０１０８】
また、実施の形態５では、入力される第１のパーツ予測座標ＦＰが、「予測座標なし」の場合を示している。従って、前記で説明した、第１のパーツ検出部５２０は、探索粒度の変更戦略を用いることはできない。しかし、実施の形態１で示したように、別の何らかの方法、例えば別に存在する顔検出器の結果を利用したり、動画を入力とし、検出器が連続的に稼動される場合に、前回に計算された第１のパーツの座標を利用したりする等により、第１のパーツ予測座標ＦＰが得られた場合には、第１のパーツ検出部５２０は、第２のパーツ検出部５４０と同様に、第１のパーツ予測座標ＦＰの示す場所又はパーツのサイズの近辺にて密に、遠方にて疎に探索を行ってもよい。
【０１０９】
実施の形態６．
図１８は、実施の形態６に係る情報処理装置としての検出装置６００の構成を概略的に示すブロック図である。
検出装置６００は、画像入力部１１０と、第１のパーツ検出部１２０と、第２のパーツ予測部６３０とを備える。
実施の形態６に係る検出装置６００の画像入力部１１０及び第１のパーツ検出部１２０は、実施の形態１に係る検出装置１００の画像入力部１１０及び第１のパーツ検出部１２０と同様である。
但し、実施の形態６においては、画像入力部１１０は、対象画像を第１のパーツ検出部１２０及び第２のパーツ予測部６３０に与え、第１のパーツ検出部１２０は、第１のパーツ座標ＦＣを、第２のパーツ予測部６３０に与える。
【０１１０】
第２のパーツ予測部６３０は、実施の形態１の第２のパーツ予測部１３０と同様に、対象画像ＴＩ及び第１のパーツ座標ＦＣから予測される第２のパーツの座標である第２のパーツ予測座標ＳＰを算出する。
そして、第２のパーツ予測部６３０は、算出された第２のパーツ予測座標ＳＰを、第２のパーツ座標ＳＣとする。
【０１１１】
言い換えると、実施の形態１では、第２のパーツ予測座標ＳＰの周辺に第２のパーツ探索範囲ＳＡを設定し、対象画像ＴＩ内から第２のパーツの位置を検索するが、実施の形態６では、対象画像ＴＩの状態に関わらず、第２のパーツが存在すると予測される座標に第２のパーツが実際に存在するとみなす。
【０１１２】
実施の形態６が示す方法により、第２のパーツ予測部６３０の処理量を節約することができる。また、第２のパーツ予測座標ＳＰが画面外である場合、又は、第２のパーツ予測座標ＳＰが明らかに他のオブジェクトに隠蔽されたような座標であるような場合でも、第２のパーツ座標ＳＣを得ることができる。
【０１１３】
なお、実施の形態６では、第２のパーツ予測部６３０は、実施の形態１における第２のパーツ予測部１３０と同様に第２のパーツ予測座標ＳＰを算出するものとしたが、実施の形態６は、このような例に限定されない。例えば、第２のパーツ予測部６３０は、実施の形態３における第２のパーツ予測部３３０と同様に第２のパーツ予測座標ＳＰを算出してもよく、実施の形態４における第２のパーツ予測部４３０と同様に第２のパーツ予測座標ＳＰを算出してもよい。
【０１１４】
実施の形態７．
図１９は、実施の形態７に係る情報処理装置としての検出装置７００の構成を概略的に示すブロック図である。
検出装置７００は、画像入力部１１０と、第１のパーツ検出兼第２のパーツ予測部７２０とを備える。
実施の形態７に係る検出装置７００の画像入力部１１０は、実施の形態１に係る検出装置１００の画像入力部１１０と同様である。但し、実施の形態７における画像入力部１１０は、第１のパーツ検出兼第２のパーツ予測部７２０に対象画像ＴＩを与える。
【０１１５】
第１のパーツ検出兼第２のパーツ予測部７２０は、実施の形態２における第１のパーツ検出兼第２のパーツ予測部２２０と同様に、対象画像ＴＩから、第１のパーツ座標ＦＣを検出し、第２のパーツ予測座標ＳＰを算出する。
そして、第１のパーツ検出兼第２のパーツ予測部７２０は、算出された第２のパーツ予測座標ＳＰを、第２のパーツ座標ＳＣとする。
【０１１６】
以上のように、実施の形態６又は７によれば、第２のパーツ検出部１４０、５４０を省略することができるため、計算量及びリソースを大幅に節約することができる。また、第２のパーツ予測座標ＳＰが対象画像ＴＩ外である場合、又は、第２のパーツ予測座標ＳＰが他のオブジェクトに隠蔽されたような座標である場合でも、第２のパーツ座標ＳＣを得ることができる。
【０１１７】
なお、実施の形態１〜５において、第２のパーツ予測座標ＳＰが対象画像ＴＩの外若しくは他のオブジェクトに隠蔽された位置にある場合、又は、第２のパーツ探索範囲ＳＡが完全に若しくは一定以上、対象画像ＴＩの外若しくは他のオブジェクトに隠蔽されている場合等に限り、第２のパーツ予測座標ＳＰをそのまま第２のパーツ座標ＳＣとするようにしてもよい。この場合、第２のパーツ検出部１４０、５４０の費やすリソース又は計算量の節約を行うことはできないが、第２のパーツ探索範囲ＳＡが対象画像ＴＩの外にあるようなとき、又は、第２のパーツ探索範囲ＳＡが他のオブジェクトに隠蔽されているときであっても、第２のパーツ座標ＳＣを得ることができる。
【０１１８】
実施の形態８．
図１に示されているように、実施の形態８に係る情報処理装置としての検出装置８００は、画像入力部１１０と、第１のパーツ検出部１２０と、第２のパーツ予測部１３０と、第２のパーツ検出部８４０とを備える。
【０１１９】
実施の形態８に係る検出装置８００の画像入力部１１０、第１のパーツ検出部１２０及び第２のパーツ予測部１３０は、実施の形態１に係る検出装置１００の画像入力部１１０、第１のパーツ検出部１２０及び第２のパーツ予測部１３０と同様である。
但し、実施の形態８においては、画像入力部１１０は、入力された画像ＩＭの各々を、対象画像ＴＩとして、第１のパーツ検出部１２０、第２のパーツ予測部１３０及び第２のパーツ検出部８４０に与える。
また、実施の形態８においては、第２のパーツ予測部１３０は、第１のパーツ検出部１２０から第１のパーツ座標ＦＣを受け取り、第２のパーツ予測座標ＳＰを、第２のパーツ検出部８４０に与える。
【０１２０】
第２のパーツ検出部８４０の機能について、第１のパーツを鼻、第２のパーツを首とした例を用いて説明する。
図２０は、第２のパーツ検出部８４０の一例を示すブロック図である。
第２のパーツ検出部８４０は、カスケード検出器８４１と、ＳＶＭ分類器８４２とを備える。
【０１２１】
カスケード検出器８４１の機能は、探索する対象が鼻でなく首であることを除けば、実施の形態１における第１のパーツ検出部１２０内のカスケード検出器１２１及び第２のパーツ検出部１４０内のカスケード検出器と同様である。言い換えると、カスケード検出器８４１は、対象画像ＴＩから、実施の形態１と同様の方法で第２のパーツ探索範囲ＳＡを定め、いくつかの第２のパーツ候補領域を含む第２のパーツ候補領域群ＳＧを特定し、その第２のパーツ候補領域群ＳＧをＳＶＭ分類器８４２に与える。
【０１２２】
なお、図１９においては、三つの首候補領域Ｑ１、Ｑ２、Ｑ３が第２のパーツ候補領域群ＳＧである首候補領域群に含まれているものとする。このとき、ＳＶＭ分類器８４２は、第２のパーツ予測座標ＳＰ、及び、首候補領域Ｑ１、Ｑ２、Ｑ３を示す第２のパーツ候補領域群ＳＧを入力として、第２のパーツ座標ＳＣを出力する。
【０１２３】
ＳＶＭ分類器８４２は、第２のパーツ候補領域群ＳＧで示される首候補領域Ｑ１、Ｑ２、Ｑ３に対し、ポジティブ（首）であるか、ネガティブであるかの２クラス分類を行う。複数の候補領域がポジティブであると判断された場合、ＳＶＭ分類器８４２は、第２のパーツ予測座標ＳＰに最も近い一つの領域のみを、第２のパーツ座標ＳＣとして出力する。
【０１２４】
例えば、図１９においては、仮に、首候補領域Ｑ１は、ネガティブクラス、首候補領域Ｑ２及び首候補領域Ｑ３は、ポジティブクラスと判断されたものとする。この場合、ＳＶＭ分類器８４２は、首候補領域Ｑ２及び首候補領域Ｑ３の内、座標がより第２のパーツ予測座標ＳＰに近い領域である首候補領域Ｑ２を、唯一の第２のパーツ座標ＳＣとして出力する。
これにより、クラス分類により第２のパーツ座標を絞りきれなかった場合にも、第２のパーツ座標をただ１個に絞り込むことができる。
【０１２５】
なお、以上に記載された実施の形態８では、第２のパーツ候補領域群ＳＧの内、ポジティブであると判断された領域群から第２のパーツ座標ＳＣを出力する際、第２のパーツ探索範囲ＳＡの中央からの距離だけを考慮して第２のパーツ座標ＳＣを１個に絞り込む方法を説明したが、実施の形態８はこのような例に限定されない。
【０１２６】
例えば、ＳＶＭ分類器８４２を、図示しないＳＶＲ分類器に置き換えた場合、第２のパーツ候補領域群ＳＧで示される１個１個の領域に対して、ポジティブクラス尤度及びネガティブクラス尤度を得ることができる。このような場合、ポジティブクラス尤度の高さと、第２のパーツ探索範囲ＳＡの中央からの距離の両方を考慮して、第２のパーツ座標ＳＣをただ１個に絞り込んでもよい。
【０１２７】
また、第２のパーツ予測座標ＳＰに、第２のパーツの予測サイズが含まれている場合は、ＳＶＭ分類器８４２は、第二のパーツ候補領域のサイズが、第２のパーツの予測サイズに近いかどうかも考慮して、第２のパーツ座標ＳＣをただ１個に絞り込んでも良い。
【符号の説明】
【０１２８】
１００，２００，３００，４００，５００，６００，７００，８００  検出装置、  １１０  画像入力部、  １２０，５２０  第１のパーツ検出部、  ２２０，７２０  第１のパーツ検出兼第２のパーツ予測部、  １２１，２２１，８４１  カスケード検出器、  １２２，１４２，８４２  ＳＶＭ分類器、  ２２２  ネガティブ付きＳＶＲ分類器、  ２２３  第１のパーツ領域選出器、  ２２４  第２のパーツ予測座標算出器、  １３０，３３０，４３０，５３０，６３０  第２のパーツ予測部、  １３１，３３１，４３１  ＳＶＲ分類器、  １４０，５４０，８４０  第２のパーツ検出部、  ８４１  カスケード検出器。
【要約】
対象画像（ＴＩ）から、第１のパーツの座標である第１のパーツ座標（ＦＣ）を検出する第１のパーツ検出部（１２０）と、対象画像（ＴＩ）及び第１のパーツ座標（ＦＣ）を用いて、第２のパーツの座標である第２のパーツ座標（ＳＣ）を予測した座標である第２のパーツ予測座標（ＳＰ）を算出する第２のパーツ予測部（１３０）と、対象画像（ＴＩ）及び第２のパーツ予測座標（ＳＰ）を用いて、第２のパーツ座標（ＳＣ）を検出する第２のパーツ検出部（１４０）とを備える。【図１】
0006723486.tif 000002
【図２】
0006723486.tif 000003
【図３】
0006723486.tif 000004
【図４】
0006723486.tif 000005
【図５】
0006723486.tif 000006
【図６】
0006723486.tif 000007
【図７】
0006723486.tif 000008
【図８】
0006723486.tif 000009
【図９】
0006723486.tif 000010
【図１０】
0006723486.tif 000011
【図１１】
0006723486.tif 000012
【図１２】
0006723486.tif 000013
【図１３】
0006723486.tif 000014
【図１４】
0006723486.tif 000015
【図１５】
0006723486.tif 000016
【図１６】
0006723486.tif 000017
【図１７】
0006723486.tif 000018
【図１８】
0006723486.tif 000019
【図１９】
0006723486.tif 000020
【図２０】
0006723486.tif 000021