(57)【要約】【課題】  オクルージョンや撮影環境の変化に対して計算コストを増大させることなく、ロバストに検出を行うことができる人物などの検出装置を提供する。【解決手段】  画像から人体部位と考えられる候補を特徴抽出部１０２で抽出する。それら各候補の部位らしさの確率を部位確率算出部１０３で求め、部位らしさの確率と、候補間の相互関係とを利用して、人物確率算出部１０５で人体らしさを確率的に計算する。人体を構成する部位が隠れている場合の人体らしさは、部位の候補が選ばれるときの人体らしさに基づいて決められる。【選択図】        図１
2005165923.tif 000002
【特許請求の範囲】
【請求項１】
複数の部位から構成される検出対象を画像から検出する検出装置であって、
前記画像から前記複数の部位の候補となる部位候補を抽出する抽出部と、
抽出された部位候補ごとに、前記各部位のうち少なくとも１つとしての確率を算出する確率算出部と、
前記各部位の隠れ確率を推定する推定部と、
前記確率算出部によって算出された確率、前記推定部で推定された隠れ確率、および前記部位候補の配置関係に基づき、前記検出対象としての確率の高い部位候補の組合せを選択する選択部とを備えた、検出装置。
【請求項２】
前記推定部は、前記確率算出部によって算出された確率、および前記部位候補の配置関係に基づき前記隠れ確率を推定する、請求項１に記載の検出装置。
【請求項３】
前記推定部は、平均的な人体モデルから最も離れた部位尤度、および平均的な人体モデルから最も離れた部位関係尤度を計算し、その計算結果に基づき前記隠れ確率を推定する、請求項２に記載の検出装置。
【請求項４】
前記推定部は、部位が隠れていると判断するときの部位尤度を他の部位候補の部位尤度から算出し、部位が隠れていると判断するときの部位関係尤度を他の部位候補の部位関係尤度から計算する、請求項２に記載の検出装置。
【請求項５】
前記選択部は、部位が隠れている場合を含む複数の組合せから、エネルギー関数を用いて検出対象としての確率の高い部位候補の組合せを選択する、請求項１〜４のいずれかに記載の検出装置。
【請求項６】
前記選択部は、前記確率算出部によって算出された確率、前記推定部で推定された隠れ確率、および前記部位候補の配置関係に基づき、最適化処理により前記検出対象としての確率の高い部位候補の組合せを選択する、請求項１〜５のいずれかに記載の検出装置。
【請求項７】
複数の部位から構成される検出対象を画像から検出する検出方法であって、
前記画像から前記複数の部位の候補となる部位候補を抽出する抽出ステップと、
抽出された部位候補ごとに、前記各部位のうち少なくとも１つとしての確率を算出する確率算出ステップと、
前記各部位の隠れ確率を推定する推定ステップと、
前記確率算出部によって算出された確率、前記推定ステップで推定された隠れ確率、および前記部位候補の配置関係に基づき、前記検出対象としての確率の高い部位候補の組合せを選択する選択ステップとを備えた、検出方法。
【請求項８】
前記推定ステップは、前記確率算出ステップによって算出された確率、および前記部位候補の配置関係に基づき前記隠れ確率を推定する、請求項７に記載の検出方法。
【請求項９】
前記推定ステップは、平均的な人体モデルから最も離れた部位尤度、および平均的な人体モデルから最も離れた部位関係尤度を計算し、その計算結果に基づき前記隠れ確率を推定する、請求項８に記載の検出方法。
【請求項１０】
前記推定ステップは、部位が隠れていると判断するときの部位尤度を他の部位候補の部位尤度から算出し、部位が隠れていると判断するときの部位関係尤度を他の部位候補の部位関係尤度から計算する、請求項８に記載の検出方法。
【請求項１１】
前記選択ステップは、部位が隠れている場合を含む複数の組合せから、エネルギー関数を用いて検出対象としての確率の高い部位候補の組合せを選択する、請求項７〜１０のいずれかに記載の検出方法。
【請求項１２】
前記選択ステップは、前記確率算出ステップによって算出された確率、前記推定ステップで推定された隠れ確率、および前記部位候補の配置関係に基づき、最適化処理により前記検出対象としての確率の高い部位候補の組合せを選択する、請求項７〜１１のいずれかに記載の検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は検出装置および検出方法に関し、特に、複数の部位から構成される検出対象を画像から検出する検出装置および検出方法に関する。
【背景技術】
【０００２】
画像から人物を検出し、その姿勢を推定する技術は、動作解析や動作認識に応用可能であり、近年盛んに研究が行われている。このような技術は、セキュリティシステムや、医療・福祉、マンマシンインタフェース、コンピュータグラフィックス、ゲームなどの分野など様々な分野において応用が考えられる。
【０００３】
監視カメラ等の分野において、撮影された画像から人体を検出する手法が知られている。従来の人体検知方法として、以下の特許文献１に記載された、「侵入者識別システム」や、特許文献２に記載された「複合型監視装置」が知られている。
【０００４】
これらは、映像に対してフレーム差分等を用いて移動物体を検出する、または、赤外線カメラ等の別センサを使用して人物を検出する方法である。
【０００５】
一方、マンマシンインタフェース等の人間工学分野や、ＶＲ（ヴァーチャル・リアリティ）、アニメーション等のＣＧ分野における手法では、厳密な人体モデルを利用して人間の姿勢や動作を再現しようとする研究がある。
【０００６】
例えば、非特許文献１の「キーフレーム拘束を利用した単眼動画像からの人体動作の追跡」では、３次元人体モデルを画像中の人物に当てはめる方法が用いられている。ここでは、当てはめ誤差の増大を防ぐためキーフレームを設定し、モデルの位置と姿勢を拘束することが提案されている。
【０００７】
また、認証分野においては、例えば、顔認証で眼や口といった部位の標準的な位置関係を利用して顔領域を特定するといった方法が、特許文献３の「人物の顔の検出装置」に示されている。
【０００８】
さらに、頭部検知を行うために部位の標準的な位置関係を利用して頭部領域を特定し、エレベータの待機乗客数を求める技術が、特許文献４に開示されている。ここでは、頭部の確信度を計算するために、髪の毛領域と顔領域の確信度および領域間の上下関係の情報を利用している。
【０００９】
また、人体の一部が隠れていても人体を検出する技術が、特許文献５に開示されている。
【特許文献１】特開平６−２００４９号公報
【特許文献２】特開２０００−３３１２５２号公報
【特許文献３】特開平７−３１１８３３号公報
【特許文献４】特開平８−１２７４７６号公報
【特許文献５】特開２００２−９９９１８号公報
【非特許文献１】電子情報通信学会論文誌Ｖｏｌ．Ｊ８１−Ｄ−ＩＩ、Ｎｏ．９、１９９８、ｐｐ．２００８−２０１８、「キーフレーム拘束を利用した単眼動画像からの人体動作の追跡」
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし特許文献１および２のいずれの方法でも、人数計測や姿勢推定、また動作認識等の高度な処理は行えないという課題があった。
【００１１】
非特許文献１の手法では、初期値の設定などキーフレームでの照合は手動で行わなければならないという問題があった。また３次元モデルは多くの姿勢パラメータがあるため、計算負荷が大きいという課題もあった。
【００１２】
特許文献３の技術では、照明条件の変化やサングラスの着用等（自己オクルージョン、相互オクルージョンによる一部の部位の消失）によって眼が検出されなかった場合に、顔領域を検出できないといった問題がある。
【００１３】
特許文献４の技術は頭部検出に限られており、自由に姿勢が変化する人体に適用できないという問題がある。
【００１４】
また、特許文献５に開示された技術では、まず動き領域を色でラベリングし、特徴量をノードに、特徴量距離をエッジにしてネットワークを構成する。ついで、時系列のネットワーク構造の変化でオクルージョンを検出するものであるが、ラベリング処理による領域統合があるため、計算に時間がかかるという問題がある。また、画像の時系列変化を調べるため、１枚の画像からは人体を抽出することができないという問題があった。
【００１５】
本発明は上述の問題点を解決するためになされたものであり、オクルージョンや撮影環境の変化に対してロバストかつ計算コストを増大させることなく、検出を行うことができる検出装置および検出方法を提供することを目的としている。
【課題を解決するための手段】
【００１６】
上記課題を解決するため、複数の部位から構成される検出対象を画像から検出する検出装置は、画像から複数の部位の候補となる部位候補を抽出する抽出部と、抽出された部位候補ごとに、各部位のうち少なくとも１つとしての確率を算出する確率算出部と、各部位の隠れ確率を推定する推定部と、確率算出部によって算出された確率、推定部で推定された隠れ確率、および部位候補の配置関係に基づき、検出対象としての確率の高い部位候補の組合せを選択する選択部とを備える。
【００１７】
好ましくは推定部は、確率算出部によって算出された確率、および部位候補の配置関係に基づき隠れ確率を推定する。
【００１８】
好ましくは推定部は、平均的な人体モデルから最も離れた部位尤度、および平均的な人体モデルから最も離れた部位関係尤度を計算し、その計算結果に基づき隠れ確率を推定する。
【００１９】
好ましくは推定部は、部位が隠れていると判断するときの部位尤度を他の部位候補の部位尤度から算出し、部位が隠れていると判断するときの部位関係尤度を他の部位候補の部位関係尤度から計算する。
【００２０】
好ましくは選択部は、部位が隠れている場合を含む複数の組合せから、エネルギー関数を用いて検出対象としての確率の高い部位候補の組合せを選択する。
【００２１】
好ましくは選択部は、確率算出部によって算出された確率、推定部で推定された隠れ確率、および部位候補の配置関係に基づき、最適化処理により検出対象としての確率の高い部位候補の組合せを選択する。
【００２２】
この発明の他の局面に従うと、複数の部位から構成される検出対象を画像から検出する検出方法は、画像から複数の部位の候補となる部位候補を抽出する抽出ステップと、抽出された部位候補ごとに、各部位のうち少なくとも１つとしての確率を算出する確率算出ステップと、各部位の隠れ確率を推定する推定ステップと、確率算出部によって算出された確率、推定ステップで推定された隠れ確率、および部位候補の配置関係に基づき、検出対象としての確率の高い部位候補の組合せを選択する選択ステップとを備える。
【００２３】
好ましくは推定ステップは、確率算出ステップによって算出された確率、および部位候補の配置関係に基づき隠れ確率を推定する。
【００２４】
好ましくは推定ステップは、平均的な人体モデルから最も離れた部位尤度、および平均的な人体モデルから最も離れた部位関係尤度を計算し、その計算結果に基づき隠れ確率を推定する。
【００２５】
好ましくは推定ステップは、部位が隠れていると判断するときの部位尤度を他の部位候補の部位尤度から算出し、部位が隠れていると判断するときの部位関係尤度を他の部位候補の部位関係尤度から計算する。
【００２６】
好ましくは選択ステップは、部位が隠れている場合を含む複数の組合せから、エネルギー関数を用いて検出対象としての確率の高い部位候補の組合せを選択する。
【００２７】
好ましくは選択ステップは、確率算出ステップによって算出された確率、推定ステップで推定された隠れ確率、および部位候補の配置関係に基づき、最適化処理により検出対象としての確率の高い部位候補の組合せを選択する。
【００２８】
この発明に従うと、確率算出部によって算出された確率に基づき、検出対象としての確率の高い部位候補の組合せを選択するため、オクルージョンや撮影環境の変化に対して計算コストを増大させることなく、ロバストに検出を行うことができる検出装置および方法を提供することが可能となる。
【発明を実施するための最良の形態】
【００２９】
[第１の実施の形態]
以下に本発明の実施の形態における検出装置および方法について説明する。本実施の形態における装置および方法では、画像から簡単に抽出される人体部位候補の部位らしさの確率と部位間の相互関係とを利用して、人体らしさを確率的に計算することにより、オクルージョンや撮影環境の変化に対してロバストかつ計算コストを増大させることなく、人体検知や姿勢推定を行うことを目的としている。
【００３０】
図１は、本発明の第１の実施の形態における物体姿勢推定装置の構成を示すブロック図である。
【００３１】
図を参照して、物体姿勢推定装置は、画像入力部１０１と、特徴抽出部１０２と、部位確率算出部１０３と、部位確率データベース１０７と、部位結合確率算出部１０４と、部位結合確率データベース１０８と、人物確率算出部１０５と、出力部１０６とを備えている。
【００３２】
画像入力部１０１は、画像を入力する部材である。画像入力部１０１は、デジタルカメラ、スキャナ、デジタルビデオカメラから直接画像を入力しても良いし、記憶媒体に保存された画像、動画像を入力しても良い。
【００３３】
特徴抽出部１０２は、入力画像から物体の特徴を検出する。
【００３４】
図２は、特徴抽出部１０２の基本構成を示すブロック図である。
【００３５】
図２を参照して、特徴抽出部１０２は、前処理部２０１と、部位候補抽出部２０２と、部位候補パラメータ算出部２０３とを備えている。
【００３６】
前処理部２０１は、入力画像から画像特徴を抽出するため画像にエッジ抽出や色抽出などを施す。また、人物の大きさの変化に対応するため１つの画像から複数のサイズの画像（多重解像度画像）を生成する。
【００３７】
部位候補抽出部２０２は、前処理部２０１で変換した画像に対して、楕円や直線、曲線、平行線分などの形状や、特定の大きさの色領域など部位候補を抽出する。
【００３８】
部位候補パラメータ算出部２０３は、部位候補抽出部２０２で選択された各部位候補に対して、パラメータ値を計算する。
【００３９】
図１に戻り、部位確率算出部１０３は、各部位候補に対して、部位毎の部位確率を計算する。部位確率を計算するための確率密度関数（あるいは尤度関数）は、部位確率データベース１０７に蓄えられている。
【００４０】
部位結合確率算出部１０４は、一つの部位候補のパラメータと別の部位候補のパラメータとの組合せに対する結合尤度を求める。部位結合確率を計算するための確率密度関数（あるいは尤度関数）は、部位結合確率データベース１０８に蓄えられている。
【００４１】
人物確率算出部１０５は、各部位候補に付随した部位確率と、部位間の関係に基づいて計算された部位結合確率とを用いて、人物として最適な部位候補の組み合わせを計算する。
【００４２】
出力部１０６は、人物数や部位姿勢の結果をモニタなどに表示する。
【００４３】
まず、図を参照しながら、実際の画像から人物を検出する処理について説明する。
【００４４】
図３は、図１の画像入力部１０１に入力された画像の具体例を示す図である。図を参照して、この画像には座った２名の人物が含まれているものとする。
【００４５】
図４は、図３の画像が図２の前処理部２０１で処理された結果を示す図である。前処理部２０１では、入力画像から画像特徴を抽出するため画像にエッジ抽出や色抽出などが施され、結果的に図４に示されるようなエッジ画像が得られる。
【００４６】
図５は、図４の画像が図２の部位候補抽出部２０２で処理された結果を模式的に示す図である。
【００４７】
部位候補抽出部２０２は、前処理部２０１で変換した画像に対して、楕円や直線、曲線、平行線分などの形状や、特定の大きさの色領域など人体を構成すると考えられる部位候補を抽出する。ここでは、部位候補抽出部２０２ではエッジ画像中から頭部に対応すると考えられる楕円と、人体の腕、胴、脚に対応すると考えられる平行線分とを抽出するものとする。図５の円、楕円で囲まれた部分が、抽出された楕円または平行線分を示している。
【００４８】
この後、部位候補パラメータ算出部２０３が、部位候補抽出部２０２で選択された各部位候補に対して、パラメータ値を計算（測定）する。
【００４９】
ここでは、図６に示されるように、楕円に対してはその短軸直径、および座標などを測定するものとし、図７に示されるように平行線分に関しては、線分間の幅（距離）、および座標などを測定するものとする。
【００５０】
図８は、部位確率算出部１０３の処理を説明するための図である。
【００５１】
図を参照して、部位確率算出部１０３は、各部位候補Ｄ１，Ｄ２，Ｄ１１〜Ｄ１５のそれぞれに対して、部位毎の部位確率（例えば、平行線分であればそれが上腕である確率、下肢である確率など）を計算する。これにより、各部位候補が人体を構成するどの部位に相当するかの確率が求められる。
【００５２】
部位確率を計算するためには、部位確率データベース１０７に蓄えられた確率密度関数（あるいは尤度関数）が用いられるが、これは図８のグラフにおいてはピークを持つ関数として表されており、頭部、上腕、下肢それぞれ別の関数とされている。
【００５３】
図８においては、部位候補Ｄ１，Ｄ２は楕円であり、頭部の確率密度関数ｐ１（ｘ）と比較が行なわれる。ここでは頭部の確率密度関数は、楕円の半径に対して、その楕円が人物の頭部である確率を示す関数であるものとする。これを人物の大きさの変化に対応するために生成された多重解像度画像（Ａ）〜（Ｃ）のそれぞれにおいて適用し、それぞれの解像度における楕円の頭部らしさ（部位確率）ｐ１（Ｄ１），ｐ１（Ｄ２）を求めてゆく。
【００５４】
また、部位候補Ｄ１１〜Ｄ１５は平行線分であり、それぞれ上腕の確率密度関数、および下肢の確率密度関数と比較が行なわれる。これにより、各部位候補が人体のどの部位にどの程度近いものであるかを数値で表現することができる。
【００５５】
部位結合確率算出部１０４は、各部位候補Ｄ１，Ｄ２，Ｄ１１〜Ｄ１５の位置関係などに基づき、どの部位候補の組合せが１の人体を構成するものであると考えられるかを、部位結合確率データベースの内容に従って計算する。
【００５６】
最終的に、人物確率算出部１０５により、部位確率算出部１０３の算出結果および部位結合確率算出部１０４の算出結果に基づき、画像中の人物の数やその姿勢が判断され、出力部１０６で出力される。
【００５７】
次に、全体の処理の流れを図９のシーケンス・フローを用いて説明する。
【００５８】
今、説明を簡単にするために、人体は、図１０に示されるように、頭部、上腕、下腕、胴体、上肢、下肢の部位から構成されるものとする。他にも肩や首、腰部、手や足など様々な部位を検出対象としてもよい。
【００５９】
画像から検出する要素（部位候補）としては、楕円（頭部）、平行線（腕、胴体、脚部、首）、線分（肩、首、腕、胴体、脚部）、曲線（肩、胴体、腰部）、肌色領域（顔、手、脚部）、黒領域（髪）などが考えられる。
【００６０】
それらから得るパラメータとしては、大きさ、位置、姿勢、長さ、幅、曲率、尖度、周波数特性などがある。
【００６１】
ここでは、頭部の部位候補の特徴として楕円形状を、他の部位候補の特徴として平行線分を考えることにする。パラメータは、楕円形状に関しては、中心のｘ座標、ｙ座標および短軸の長さとする（長軸は短軸の定数倍、例えば１．２倍など）。また平行線分は、重心のｘ座標、ｙ座標、２直線間の距離、さらに角度をパラメータとする。また部位確率データベースでは、部位の尤度関数が記憶されているものと仮定する。
【００６２】
図９を参照して、まず画像入力部１０１から人物を検出したい画像を入力する（ｓ１）。
【００６３】
次に特徴抽出部１０２の前処理部２０１で、画像から微分フィルタを用いてエッジを抽出する。微分フィルタとしては、例えばソーベルフィルタなどがある。多重解像度戦略に従い、エッジ画像の多重解像度画像を用意する（ｓ２）。
【００６４】
エッジ画像からある方向の直線を検出し、細線化およびラベリング処理を施す。得られた直線群に対して、平行線の組を見出し部位候補とする（ｓ３）。
【００６５】
ｓ３のステップについて図１１のフローを用いて説明する。
【００６６】
ここでは、ある方向の平行線を抽出するため、画像の方向を変化させる処理を繰り返し行なう方法を採用する。
【００６７】
方向は、例えば、0[deg]，30[deg]，60[deg]，90[deg]の四方向や、0[deg]，45[deg]，90[deg]の三方向などとするが、それ以上としてもよい。
【００６８】
ある方向（角度θとする）の平行線分を抽出する処理について以下に述べる（Ｓ２１）。これはその方向性を持つ線分のみを抽出し、それらの中から、平行線のペアとなるものを選ぶ処理である。
【００６９】
実際には、処理の容易さのため、まず、残したい方向が水平方向に一致するように画像を回転させる（Ｓ２２）。その後、エッジ画像を二値化し（Ｓ２３）、二値化画像に対して水平方向の線分を抜き出し（Ｓ２４）、その中からペアとなる線分を抽出し（Ｓ２５）、最後に画像を−θ[deg]回転させて元の座標系に戻す（Ｓ２６）。
【００７０】
次に水平方向の線分の抽出について図１２のフローを用いて説明する（Ｓ３１）。ここでは、一方向のモルフォロジ処理を行なうことにより、水平方向線分を抽出するものとする。
【００７１】
まずエッジを細線化する。次に、画像を最近傍法を用いて縦方向に４倍し、その画像に最小値フィルタ、最大値フィルタを順に施す。再び最近傍法を用いて画像を縦方向に１／４倍に縮小し、元の画像サイズに戻す（Ｓ３２）。得られたエッジ画像を再び細線化する（Ｓ３３）。
【００７２】
分岐線がある場合、その分岐を除去するため、画素の交差数を計算し、交差数が３あるいは４である場合は、その画素をエッジ画素ではなくす（Ｓ３４）。この処理により分岐点を除去できる。
【００７３】
その後、画素数が１０以下のものを消去する（Ｓ３５）。以上のようにして水平方向線分のみが抽出される。
【００７４】
次にペアの抽出について図１３を用いて述べる（Ｓ４１）。
【００７５】
まず、得られたエッジについてラベリング処理（ラベル番号１，２，…，LabelMax）を行なう（Ｓ４２）。次に、ラベル番号１から順に、そのラベルについてペアとなる線分を探す（Ｓ４４）（詳細に付いては後述する）。上記処理をラベル番号LabelMaxまで繰り返す（Ｓ４３〜Ｓ４６）。
【００７６】
あるラベルのエッジ（ラベル番号LabelNoとする）について、図１４を参照して、そのペアを探す処理について述べる（Ｓ５１）。
【００７７】
線分ａが線分ｂとペアになる場合、線分ｂは必ず線分ａとペアになる。したがって、ペアとなるかどうかを調べるのは、例えば、（LabelNo）＋１〜LabelMaxの線分についてだけでよい（Ｓ５２〜Ｓ５６）。
【００７８】
エッジ[LabelNo]と、エッジ[SubNo]（SubNo=[（LabelNo）＋１，…，LabelMax]）がペアかどうかの判断は以下のように行なう（Ｓ５３）。
【００７９】
すなわち、図１５を参照して、エッジ[LabelNo]の上端点と下端点を通る垂直線を引き、エッジ[SubNo]の一部分でもその範囲に含まれていれば、エッジ[LabelNo]とエッジ[SubNo]はペアであるとする。
【００８０】
これに対して、図１６に示されるように、エッジ[LabelNo]の上端点と下端点を通る垂直線を引き、エッジ[SubNo]の一部分でもその範囲に含まれていなければ、エッジ[LabelNo]とエッジ[SubNo]はペアではないとする。
【００８１】
図９に戻って、得られた平行線分のパラメータを計算する（ｓ４）。このパラメータは、後で部位確率を抽出するためのものである。
【００８２】
パラメータは、（１）平行線ペアの幅ｄ、（２）平行線ペアの方向θ、（３）平行線ペアの位置ｍの３つとする。
【００８３】
このパラメータの説明を行なうために、まず、直線エッジの方向と位置について述べる。
【００８４】
図１７を参照して、エッジ１について、その端点をＰ1a及びＰ1bとする。このエッジの位置は、Ｐ1aとＰ1bの中点とする。また、Ｐ1a−Ｐ1bの方向を、このエッジの方向とする。ただし、方向については、平行線の抽出で述べたようにある方向のエッジのみを抽出する方法を採用しているなら、その方向をエッジの方向としても良い。
【００８５】
ここで、エッジ１とエッジ２がペアであるとし、それぞれの位置をｍ1及びｍ2とする。また、それぞれのエッジの方向をθ1及びθ2とする。このとき、
（１）  平行線ペアの幅ｄは各々の直線エッジの位置の差ｄ＝｜ｍ1−ｍ2｜、
（２）  平行線ペアの方向θは各々の直線エッジの方向の平均θ＝（θ1＋θ2）／２、
（３）  平行線ペアの位置ｍは各々の位置の中点ｍ＝（ｍ1＋ｍ2）／２、
とする。
【００８６】
図９のフローに戻って原画像に対してｓ３とｓ４の処理を行えば、各階層における同じ平行線の特徴は、自動で計算できる。
【００８７】
また、エッジ画像からハフ変換などを用いて、楕円形状を抽出し、頭部候補とする（ｓ５）。各階層で検出する楕円サイズを固定した場合、検出結果から対応するすべての階層での大きさが決定できる。すべての階層に対して、以下のステップでの処理を行う。
【００８８】
なお、ステップｓ３での処理は部位候補抽出部２０２で、ステップｓ４での処理は部位候補パラメータ算出部２０３で、ステップｓ５での処理は部位候補抽出部２０２および部位候補パラメータ算出部２０３で行う。
【００８９】
次に部位確率算出部１０３で、各部位候補に対し、部位毎の部位尤度を求める。
【００９０】
まず、楕円の候補に対し、短軸パラメータを用いて頭部の尤度を求める（ｓ６）。これにより、その楕円が頭部である確率が算出される。
【００９１】
さらに平行線の候補に対し、太さパラメータ（平行線ペアの幅ｄ）に関して上腕、下腕、胴体、上肢、下肢のそれぞれの尤度を求める（ｓ７）。
【００９２】
なお、部位尤度を求めるためのパラメータは、楕円の大きさや平行線の太さ（幅）に限られない（詳細に付いては後述する）。
【００９３】
尤度の値は部位確率データベースの尤度関数から計算される。尤度関数は、複数の人物画像から統計的に求めることができる。例えば上腕の尤度関数は、身長や頭のサイズなどで正規化した複数の人物画像に対し、上腕の太さを計算し、太さに関するヒストグラムを正規化すれば得られる。あるいは平均と分散を計算し、ガウス分布で尤度関数を近似することもできる。
【００９４】
すなわち、距離（幅）パラメータをｄ、平均をｍd、標準偏差をσdとすれば、上腕の尤度関数ｐ（ｄ）を以下に記載する式（１）で近似することができる。
【００９５】
平行線の特徴を用いる他の部位についても同様である。
【００９６】
頭部の尤度は、頭部検出のサイズで正規化しておけば、尤度はいつも１になる。身長で正規化した場合、平均の頭部サイズになる階層を計算し、その前後の階層で人物尤度を計算することになる。
【００９７】
現在得られている一つの平行線の部位候補ｌ1の距離パラメータをｄ1とすれば、ｐ（ｄ1）で上腕の尤度を求めることができる。ｄ1に対して他の部位の尤度も同様に計算できるので、一つの部位候補ｌ1に対して、以下の式（２）ような部位尤度ベクトルが付随することになる。
【００９８】
【数１】
2005165923.tif 000003
【００９９】
ここでｐの下付添え字は、平行線の特徴を用いる各部位を表している。Ｄはその総数であり、例えば５である。
【０１００】
こうして求めたすべての部位候補に対して、部位尤度ベクトルを計算し、これを人体記述として記憶する。
【０１０１】
次に、部位結合確率算出部１０４では、一つの部位候補のパラメータをある部位に属するとし、他の部位候補のパラメータを別の部位に属するとした時の部位関係尤度を部位の任意の組合せに対して計算する。
【０１０２】
まず、楕円の候補と平行線の候補に対し、楕円平行線部位関係尤度を求める（ｓ８）。
【０１０３】
例えば、２つの部位の組合せとして、頭部と上腕を例に説明する。
【０１０４】
楕円パラメータをＤ1＝（Ｘ1，Ｙ1，ｒ1）、平行線パラメータをｌ1＝（ｘ1，ｙ1，ｄ1，θ1）とする。
【０１０５】
ここで（Ｘ1，Ｙ1）は楕円の中心座標、ｒ1は楕円の短軸の長さ、（ｘ1，ｙ1）は平行線の中心座標、ｄ1は平行線の幅である。θ1は平行線とｘ軸のなす角である。
【０１０６】
この時、２つの部位間の距離に基づく尤度を次式（３）で計算する。
【０１０７】
尤度関数Ｌ1は、部位確率と同じように身長などで正規化された頭部位置と上腕位置の距離ｌｅｎに関する統計的なヒストグラムとして計算できる。またガウス分布などで近似することができる。
【０１０８】
なお、Ｌ1と、２つの部位の大きさの比に基づく尤度関数Ｌ2（式（４））を組み合わせて用いても良い。式（４）のＬ2も、ｐに関する統計的なヒストグラムとして計算できる。
【０１０９】
部位間の距離の特徴量と部位の大きさの比の特徴量とは、統計的に独立と考えると、部位関係尤度を、式（５）のように計算することもできる。
【０１１０】
【数２】
2005165923.tif 000004
【０１１１】
頭部と他の平行線特徴を用いる部位との間についても同様に部位関係尤度を計算する。
【０１１２】
ステップｓ８で楕円平行線部位関係尤度を計算した後、平行線平行線部位関係尤度を求める（ｓ９）。
【０１１３】
例えば、２つの部位の組合せとして、上腕と下腕を例に説明する。
【０１１４】
平行線１のパラメータをｌ1＝（ｘ1，ｙ1，ｄ1，θ1）、平行線２のパラメータをｌ2＝（ｘ2，ｙ2，ｄ2，θ2）と仮定する。
【０１１５】
この時、２つの部位間の距離に基づく尤度を次式（６）で計算する。
【０１１６】
ここでも尤度関数Ｌ3は統計的なヒストグラムとして計算できる。またガウス分布などで近似することができる。
【０１１７】
Ｌ3と、２つの部位間の幅の差に基づく尤度関数Ｌ4（式（７））を組み合わせて用いても良い。ここで、Ｌ4を用いるときには、幅の差の絶対値を取らないことが望ましい。Ｌ4として負になる確率が小さくなるような分布を選べば、長袖であっても半袖であっても、上腕が下腕より細くなることはないという一般的な傾向を尤度関数に反映することができる。自明な人体モデルから適切な分布を仮定してもよい。
【０１１８】
楕円平行線部位関係尤度と同じように、式（８）で尤度を定義することもできる。
【０１１９】
【数３】
2005165923.tif 000005
【０１２０】
なお、以上において部位間の一つの変量に基づく１次元の尤度関数を定義したが、部位関係尤度関数を２つ以上の変量に基づいて定義することもできる。
【０１２１】
例えば、平行線間の距離ｌｅｎに、２つ平行線のなす角ψ＝｜θ1−θ2｜を変量とし、（ｌｅｎ，ψ）の２次元パラメータとしての尤度を計算することもできる。尤度関数を統計的に求めることを考えると、距離ｌｅｎが長い時に角度ψが小さくなったり、反対に距離ｌｅｎが短い時に角度ψが大きくなるようなことはないという傾向を反映した分布が現れるはずである。
【０１２２】
ここでは上腕と下腕を例にして説明したが、他の平行線特徴を用いる部位同士の組合せに対しても同様の部位関係尤度を計算する。
【０１２３】
なお、部位尤度、部位関係尤度を計算するのに、色情報（色相、彩度、明度、同じ人物の顔と手などの肌の色は同じと見なせること）、服の模様やしわなどのテクスチャ情報、合焦度情報、エッジの強さ、それらの連続性なども用いることができる。また、肩や腰などの直線や曲線、上腕や下肢は先がやや細くなっている。このような直線や曲線の曲率や角度なども尤度を求めるのに利用できる。部位毎のエッジ画像を主成分分析した特徴量からも尤度を計算できる。また、時系列情報が得られる場合、部位の移動の速さや変化方向、周期性などからも尤度関数を生成できる。
【０１２４】
人物確率算出部１０５は、部位の結合体として人体を検出するため、部位確率結合ネットワーク（以下ＰＰＣＮと呼ぶ）を構成する（ｓ１０）。
【０１２５】
ＰＰＣＮのネットワーク構成の例は図１８に示されている。
【０１２６】
縦軸の部位候補と横軸の部位の組み合わせに対して、1つのノードが割り当てられる。ここでは、上腕、下腕および上肢、下肢を左右２つに区別するため、全部で１０個の部位（図１０参照）を割り当てることにする。さらに、最下行には、候補なしに対応するノードが設けられる。任意の２つのノード間には重みが定義されている。
【０１２７】
各ノードには、対応する部位候補と部位に対する部位尤度が付与されている。一方２つのノード間のエッジ（アーク）には、対応する２つの部位候補を対応する２つの部位とみなした場合の部位関係尤度が重みとして付与されている。
【０１２８】
ＰＰＣＮの意味について説明する。最右列を除いた各列から、1つずつノードを選択すると、人体を構成する各部位の候補を選択することになる。選択された部位集合から、人体としての尤度を次のように計算することができる。
【０１２９】
例えば、図１８のように太線のノードが選択されたとする。
【０１３０】
これらのノードには、Ｐ11，Ｐk2，Ｐ43，…，Ｐ3,10という部位尤度が付与されている。また任意の２つのノードＰij，Ｐklの間には、部位関係尤度重みＬij klが付与されている。
【０１３１】
これらの尤度が統計的に独立な特徴量から計算されたものと仮定すると、人体としての尤度は、
Ｌ＝Ｐ11・Ｐk2・Ｐ43・・・・Ｐ310・Ｌ11k2・Ｌ1143・・・・Ｌ11310・Ｌk243・・・
と計算することができる。
【０１３２】
一般に、ｊ番目の部位列から選ばれたｋ（ｊ）番目の部位尤度をＰk(j)jとすれば、人体尤度は、
【０１３３】
【数４】
2005165923.tif 000006
【０１３４】
となる。
【０１３５】
ここで、選ばれたノード列に対し、任意の２つのノード間での部位関係尤度を考慮することにより、ある部位の候補がない場合（最下行のノードが選択された場合）でも、他の部位間との相互関係によって人体尤度をロバストに計算することができる。最下行のノードが選択された場合、そのノードの部位と他の部位の部位関係尤度は、最大尤度Ｌmaxのα倍（０＜α＜１の定数）に固定しておくことができる。この仕組みは、オクルージョンや撮影環境により画像特徴がうまく抽出できなかったときでもロバストに人体を検出するために役立つ。
【０１３６】
今ＰＰＣＮの説明として、ノードに部位尤度が付与され、エッジには、部位関係尤度が重みとして付与されている場合を説明したが、２つのノードの部位尤度と部位関係尤度の積を部位結合尤度としてエッジに付与させる構造を考えることもできる。
【０１３７】
この場合、部位尤度の計算を省略できる場合がある。例えば、平行線ｌ1が上腕、平行線ｌ2が下腕である部位結合尤度として、（ｄ1，ｄ2）の２つのパラメータに対する尤度関数の値とＬ3＝Ｌ3（ｌｅｎ）との積を用いることができる。
【０１３８】
以上の処理の後、さらにＰＰＣＮの最適化処理を行う（図９のｓ１１）。これは、部位候補の組み合わせ最適化の問題に帰着される。
【０１３９】
今回の説明では、人体形状特徴として楕円と平行線を挙げたが、他にも肩のラインの曲線や平行線として検出できない直線などがあることを考えると、候補数の増大に伴って、計算量が増えることが予想される。そこで効果的なアルゴリズムを適用するため、ＰＰＣＮの最適化処理をエネルギーの最小化問題として定式化する。
【０１４０】
上記式（９）の両辺の対数を取れば、エネルギー関数として次の２次形式を得ることができる。
【０１４１】
【数５】
2005165923.tif 000007
【０１４２】
制約式(１１)は、オクルージョンなどで部位候補が存在しない場合や部位候補がすべて誤検出であるような場合のために必要な制約条件である。
【０１４３】
Ｅを最小化する方法として、シミューレーティッド・アニーリングや遺伝アルゴリズムなどを用いれば良い。
【０１４４】
例えば、シミューレーティッド・アニーリングを用いた場合の処理の流れを図１９のシーケンス・フローを用いて説明する。
【０１４５】
ここではネットワークの状態変数をΩi,jで表すことにする。ただしΩi,jは｛０，１｝に値をとる２値変数であり、ｉ，ｊはネットワークの２次元上の位置を表している。ｉは１から部位数＋１、ｊは１から候補数＋１まで変化する。
【０１４６】
初期状態として、すべてのｉ，ｊに対し、変数Ωi,jに対しランダムに０か１を割り当てる（ｓ１）。
【０１４７】
ネットワークの温度を初期温度Ｔ0とする（ｓ２）。（Ｎb＋ｎ）個のネットワークのノードから反転ノードを一つランダムに選択する（ｓ３）。
【０１４８】
新しい状態をΛijとする。選択したノードが０であれば１、１であれば０にした状態である。
【０１４９】
２つの状態のエネルギー関数の値の差Ｅ（Ωi,j）−Ｅ（Λij）を計算し、減少したか調べる（ｓ４）。
【０１５０】
もし減少したならば、新しい状態Λijをネットワークの状態として採用し、ステップｓ８に移行する（ｓ５）。
【０１５１】
関数値の差が増加した場合は、新しい状態を採用するかどうかを決定するため採用確率を次式で計算する（ｓ６）。
【０１５２】
【数６】
2005165923.tif 000008
【０１５３】
確率ｐで、新しい状態を採用する（ｓ７）。次に現在の温度値に対し、新しい温度を計算する（ｓ８）。具体的には、定数α（０＜α＜１）を乗じ、Ｔ＊αを新たな温度Ｔとする。
【０１５４】
所定の回数を計算させても、状態変数が変化しないなら収束したと見なして、最適化を終了する。
【０１５５】
最適解を計算した後、その経路をとることができないように最適解に相当する項をエネルギー関数に加算し、大きな重み係数を加えることにする。
【０１５６】
最適解を検出後、その解を除くようにエネルギーを設定し、次の最適解を探索していく。
【０１５７】
１つの解に対する人物尤度（エネルギー関数の第一項と第二項の和）とともに、各部位の位置や姿勢が得られるので、人数係数や動作解析を行うことができる（図９のステップｓ１２）。
【０１５８】
なお、（１０）式のエネルギー関数を最小化する方法として、部位の組み合わせとして確率の高いノード間、あるいは、逆に確率の低いノード間を一塊のクラスタと見て大胆な状態遷移を行うことも考えられる。さらに遺伝アルゴリズムを用いる場合、遺伝子コーディングとして部位の順に候補番号を並べた構造を使うこともできる。
【０１５９】
[第２の実施の形態]
図２０は、本発明の第２の実施形態における検出装置の構成を示すブロック図である。
【０１６０】
図における符号１０２〜１０８は、第１の実施の形態と同様であるので説明を繰りかえさない。
【０１６１】
検出装置は、動画像を入力する動画像入力部１０１ａを備える。動画像入力部１０１ａは、デジタルビデオカメラから動画像を直接入力しても良いし、記憶媒体に保存された動画像を入力しても良い。
【０１６２】
また、検出装置は、人物である確率が高い部位候補を追尾した結果のパラメータ時系列情報を記憶する時系列情報記憶部１０９を備える。
【０１６３】
次に、検出装置の全体の処理の流れを図２１のシーケンス・フローを用いて説明する。
【０１６４】
今、説明を簡単にするために、第１の実施の形態と同じように、頭部の特徴として楕円形状を、他の部位の特徴として平行線分を考えることにする。
【０１６５】
まず動画像入力部１０１から人物を検出したい動画像を入力する（ｓ１）。フレーム間差分によって動き領域を抽出し、候補領域を制限する（ｓ２）。
【０１６６】
ステップｓ３からｓ８までの処理は、第１の実施の形態と同じであるので説明を繰り返さない。
【０１６７】
次に部位確率結合分布（以下ＰＰＣＤと呼ぶことにする）を生成する（ｓ９）。
【０１６８】
以下、ＰＰＣＤの生成について図２２を用いて説明する。
【０１６９】
第１の実施の形態と同じように、頭部候補の楕円パラメータをＤ1＝（Ｘ1，Ｙ1，ｒ1），Ｄ2＝（Ｘ2，Ｙ2，ｒ2）・・・、平行線パラメータをｌ1＝（ｘ1，ｙ1，ｄ1，θ1），ｌ2＝（ｘ2，ｙ2，ｄ2，θ2）とする。
【０１７０】
また各楕円候補の頭部尤度をｐh（Ｄ1），ｐh（Ｄ2），…、平行線候補の上腕尤度をｐua（ｌ1），ｐua（ｌ2），…、下腕尤度をｐda（ｌ1），ｐda（ｌ2），…とする。他の平行線候補部位についても同様であるので、上腕と下腕のみで説明する。
【０１７１】
各部位毎および各部位候補毎に部位尤度を用いて、部位尤度分布を以下のように生成する（図２２のｓ１）。頭部に対しては、楕円部位候補の頭部尤度に分布を持たせる。
【０１７２】
【数７】
2005165923.tif 000009
【０１７３】
を頭部候補毎に計算する。
【０１７４】
上腕に対しては、平行線部位候補の上腕尤度に分布を持たせる。
【０１７５】
【数８】
2005165923.tif 000010
【０１７６】
を上腕候補毎に計算する。
【０１７７】
下腕に対しては、平行線部位候補の下腕尤度に分布を持たせる。
【０１７８】
【数９】
2005165923.tif 000011
【０１７９】
を下腕候補毎に計算する。
【０１８０】
次に、部位毎に尤度分布の加算正規化を行う（図２２のｓ２）。
【０１８１】
【数１０】
2005165923.tif 000012
【０１８２】
となる。
【０１８３】
パラメータ空間を部位に関して結合し、連接パラメータ空間に対して結合尤度関数を用いて総合尤度分布を生成する（図２２のｓ３）。この総合尤度分布がＰＰＣＤとなる。
【０１８４】
より詳しくは、各部位のパラメータベクトルを一列に並べ、連接パラメータ空間とする。すなわち、
【０１８５】
【数１１】
2005165923.tif 000013
【０１８６】
図２１のフローに戻って、連接パラメータ空間内のランダム・サンプリングを行う（ｓ１０）。
【０１８７】
その際、動き領域を考慮した制限内で、ランダムサンプリングし、ＰＰＣＤを用いて各サンプリング点の総合尤度を計算する（例えばサンプリング総数を１０００とする）（ｓ１１）。
【０１８８】
適当な閾値を決め、閾値以上のサンプリング点を残すことにする。それを、ｓ0，ｓ1，…，ｓNとする。また対応する総合尤度π0，π1，…，πNをとする。
【０１８９】
さらに、以下の反復で使用するため、累積確率分布｛ｃn｝を次式で計算しておく。
【０１９０】
ｃ0＝π0
ｃ1＝π0＋π1
．．．
ｃN＝π0＋π1＋・・・＋πN
なお、これらは最大で１になるように、正規化しておく。
【０１９１】
そして、次のフレームの画像を読み込む（ｓ１２）。前フレームの事後確率と時系列運動方程式の状態遷移確率を事前情報として、サンプリング予測を行う（ｓ１３）。
【０１９２】
サンプリング予測結果と新しい観測画像からサンプリング尤度の修正を行う（ｓ１４）。予測と尤度修正を新しい画像に対して繰り返していく。ステップｓ１３とｓ１４での処理については後述する。
【０１９３】
情報が必要な時に人物確率を計算する（ｓ１５）。
【０１９４】
現在のサンプル点ｓ0，ｓ1，…，ｓNと対応する尤度値π0，π1，…，πNを用いて、尤度値の高い点から順に初期値に用いて、最急降下法などの最適化手法によって極値を計算できる。
【０１９５】
ステップｓ１３とｓ１４のステップに関して、図２３のフローを用いて説明する。
【０１９６】
区間［０  １］からのｒの一様抽出を行う（ｓ１）。先に求めた累積確率分布による対応パラメータの選定を行う（ｓ２）。具体的には、ｒ＜ｃmとなる最小の整数値ｍを求め（２分探索などを用いる）、対応するパラメータｓmを求める。
【０１９７】
状態遷移確率ｐ（ｓt+1｜ｓt＝ｓm）を用いて、ガウスサンプリングより、新しい連接パラメータｓt+1＝ｓ1’を求める（ｓ３）。
【０１９８】
ここで、ｐ（ｓt+1｜ｓt）は、時系列運動方程式を仮定することによって計算できる。例えば、
ｘt+1＝Ａｘt＋Ｂｗt
（ここで、ｘtは時刻ｔにおける状態変数、Ａは運動モデル行列、ｗはＢによって正規化された標準ガウス分布で、ＢＢTはノイズ共分散行列と仮定する。）
この時、
【０１９９】
【数１２】
2005165923.tif 000014
【０２００】
となる。
【０２０１】
ここで状態変数ｘtが１つ固定されるとｘt+1に関するガウス分布になる。
【０２０２】
ＡやＢは時系列情報記憶部１０７に記憶されたサンプル点の時系列データから最尤法などを用いて推定される。部位毎の速度情報がモデル化されることになる。
【０２０３】
この過程をサンプル数Ｎ回繰り返す（ｓ４）。
【０２０４】
新しいＮ個のサンプルｓ1’，ｓ2’，…，ｓN’を得、時系列情報記憶部１０７に記憶しておく。
【０２０５】
次に新しいサンプル点を利用して、パラメータ領域を制限する（ｓ５）。
【０２０６】
これは次のフレームの画像に対して、各部位の候補領域や特徴を制限するものである。つまり各部位の位置や大きさ、方向に関して予測を与え、以下のステップの中で利用する。
【０２０７】
フレーム間差分を用いて動き領域を抽出する（ｓ６）。動き領域内のエッジ画像を生成する（ｓ７）。
【０２０８】
この時、ステップｓ５で得た情報を用いて関係する領域のみエッジ抽出し、予測される平行線が出易いよう２値化の閾値を調整したり、予測される方向範囲から方向性フィルタを選択し、人体に関係した特徴のみを高速に抽出する。
【０２０９】
ステップｓ６とｓ７での処理は、特徴抽出部１０２の前処理部２０１で行われる。
【０２１０】
ステップｓ８からｓ１１までの処理は、図２１のステップｓ４からｓ９までの処理と同じであるので説明は繰り返さない。
【０２１１】
制限されたパラメータ領域の情報から計算されたＰＰＣＤを用いて、予測サンプルの総合尤度を評価する（ｓ１２）。
【０２１２】
これは、予測サンプルｓ1’，ｓ2’，・・・，ｓN’に対する事後確率を計算することを意味する。それらの総合尤度をπ0’，π1’，・・・，πN’とし、累積確率分布を計算する（ｓ１３）。
【０２１３】
［第３の実施の形態］
図２４は、本発明の第３の実施の形態における、プログラムを実行するコンピュータの構成を示すブロック図である。
【０２１４】
図を参照して、コンピュータは、装置全体の制御を行なうＣＰＵ５２１と、表示部５２４と、ネットワークに接続したり外部と通信を行なうためのＬＡＮ（ローカルエリアネットワーク）カード５３０（またはモデムカード）と、キーボードやマウスなどにより構成される入力部５２３と、フレキシブルディスクドライブ５２５と、ＣＤ−ＲＯＭドライブ５２６と、ハードディスクドライブ５２７と、ＲＯＭ５２８と、ＲＡＭ５２９とを備えている。
【０２１５】
上述のフローチャートに示される、ＣＰＵ（コンピュータ）５２１を駆動させるためのプログラムは、フレキシブルディスク（Ｆ１）やＣＤ−ＲＯＭ（Ｃ１）などの記録媒体に記録することができる。このプログラムは、記録媒体からＲＡＭその他の記録媒体に送られ、記録される。なお、プログラムはハードディスク、ＲＯＭ、ＲＡＭ、メモリカードなどの記録媒体に記録してユーザに提供するようにしてもよい。また、インターネットを介して外部のサイトなどよりそのようなプログラムをワークステーションやコンピュータにダウンロードして実行させるようにしてもよい。
【０２１６】
［第４の実施の形態］
第４の実施の形態における検出装置および検出方法は、第１〜第３の実施の形態における検出装置および検出方法において、部位候補のパラメータ値として、さらに画像のエッジ情報、画像の色情報および画像のテクスチャ情報のうち少なくとも１つを測定し、それを用いて各部位ごとの部位確率を計算することを特徴としている。
【０２１７】
すなわち、部位候補の判定を行なうときに、大きさ、位置、姿勢、長さ、幅、曲率、尖度、周波数特性などの少なくとも１つとともに（またはこれらに代えて）、色、テクスチャ、エッジのうち少なくとも１つの情報を用いるのである。
【０２１８】
また、部位候補の任意の組合せに対して尤度を計算するときにおいても、大きさ、位置、姿勢、長さ、幅、曲率、尖度、周波数特性などの少なくとも１つとともに（またはこれらに代えて）、色、テクスチャ、エッジの情報を用いることとする。
【０２１９】
本実施の形態における検出装置および検出方法の主要な部分は、上述の第１〜第３の実施の形態におけるそれと同じであるため、ここでの説明を繰返さない。ここでは本実施の形態における検出装置および方法が第１〜第３の実施の形態におけるそれらと異なる部分について説明する。
【０２２０】
まず、本実施の形態において部位確率算出部１０３（図１、図２０参照）での処理の具体例について説明する。ここでは、部位確率算出部１０３において行なわれる頭部候補楕円パラメータ抽出処理（図９のＳ５または図２１のＳ６）および、楕円頭部確率計算処理（図９のＳ６または図２１のＳ７）を例示して説明する。
【０２２１】
第１〜第３の実施の形態と同様に、頭部である可能性の高い部分を得るために、まずエッジ画像からハフ変換などを用いて楕円形状を抽出し、頭部特徴候補とする。各階層で検出する楕円サイズを固定した場合、すべての階層において、部位確率算出部１０３で、各頭部特徴候補に対し、尤度が求められる。
【０２２２】
頭部特徴候補に対し、その大きさに関する尤度ｐ（ｄ）および楕円内の色情報に関する尤度ｐ（ｃ）を用いて頭部の尤度を求める。
【０２２３】
楕円の大きさについては、抽出した楕円のパラメータを参照すればよい。楕円の大きさについての尤度の値は部位確率データベースの尤度関数から計算される。尤度関数は、複数の人物画像から統計的に求めることができる。たとえば、身長や頭のサイズなどで正規化した複数の人物画像から、部位の大きさを計算しておき、大きさに関するヒストグラムを正規化するなどすればよい。すなわち、パラメータをｄ、平均をｍd、標準偏差をσdとすると、尤度関数は上述の式（１）で近似することができる。これにより楕円の大きさに基づき、その楕円が人の頭である尤度ｐ（ｄ）を求めることができる。
【０２２４】
楕円の位置と大きさとがわかっているので、画像における楕円領域を知ることができる。その領域内またはその近傍を含めた色情報を用いて、頭部の尤度を求めることができる。
【０２２５】
たとえば以下のように、楕円内の黒色領域と肌色領域とを用いて、その楕円が頭部である尤度を算出することができる。すなわち、抽出された楕円内における髪の色領域（主に黒色系で定義）と肌色領域の占める割合である、
［（髪＋肌）色画素数］／（全画素数）
を計算し、その値をパラメータＲcとしておく。その値が大きければ、その楕円は頭部である確率が高いことを意味する。尤度の計算を行なうために、
ｐ（ｃ）＝ｐ（Ｒc）
の関数を想定する。なお、色空間はＲＧＢ空間を用いることができる。ＹＩＱ空間など肌色抽出に適した空間を用いてもよいし、またはそれ以外の色空間を用いてもよい。
【０２２６】
以上のように、楕円の大きさとその楕円内の色情報とにより、楕円が頭部である確率ｐheadは、例えば、
ｐhead＝ｐ（ｄ）・ｐ（ｃ）
で表わすことができる。
【０２２７】
以上のようにして、色情報を考慮して頭部の尤度を求めることが可能となる。
【０２２８】
また、たとえば楕円内のテクスチャ情報を用いて頭部の尤度を求めるためには、以下の処理を行なうとよい。すなわち、楕円特徴候補に対し、その大きさに関する尤度ｐ（ｄ）および楕円内のテクスチャ情報に関する尤度ｐ（Ｔ）を用いて頭部の尤度を求めるものである。
【０２２９】
楕円の大きさに関する尤度については、上述したように関数ｐ（ｄ）を用いて求めることができる。
【０２３０】
楕円内のテクスチャ情報については、以下の例による。楕円の位置と大きさとがわかっているので、画像における楕円領域がわかる。その領域内またはその近傍を含めたテクスチャ情報を用いて頭部の尤度が求められる。テクスチャ解析には、既知のさまざまな方法を用いることができる。たとえば、濃度共起行列を作成し、それをもとにエネルギ、エントロピ、相関、局所一様性、慣性などを求めて比較する方法や、画像を周波数変換し、そのパワースペクトルおよび周波数成分を比較する方法、さらに局所的にマッチングを行なう方法などを用いることができる。
【０２３１】
たとえば、頭部候補領域の単独部位確率を求めるには、複数の人物画像から、頭部の平均的なテクスチャのパラメータＴMを求めておき、頭部候補領域のパラメータＴNとを比較し、その結果に応じて頭部である尤度ｐ（Ｔ）を求める。
【０２３２】
すなわち、以下のような関数を想定する。
【０２３３】
ｐ（Ｔ）＝ｆ（ＴN，ＴM）
以上のようにして、大きさとテクスチャ情報とを用いて、楕円が頭部である確率ｐheadは、
ｐhead＝ｐ（ｄ）・ｐ（Ｔ）
で表わされる。
【０２３４】
次に、部位結合確率算出部１０４（図１、図２０）での処理の具体例について説明する。ここでは、平行線平行線部位関係確率計算（図９のＳ９、図２１のＳ８）での処理を例に挙げて説明する。ここでは、関係を調べる２つの部位の組合せとして、上腕と下腕とを例に説明する。
【０２３５】
平行線１と平行線２との相互の関係を求めるため、平行線１から抽出される特徴量をｌ1＝（ｘ1（ｌ1），ｙ1（ｌ1），ｄ1（ｌ1），θ1（ｌ1），Ｃ1（ｌ1））、平行線２から抽出される特徴量をｌ2＝（ｘ2（ｌ2），ｙ2（ｌ2），ｄ2（ｌ2），θ2（ｌ2），Ｃ2（ｌ2））とする。ここで、ｘ（ｌ），ｙ（ｌ），ｄ（ｌ），θ（ｌ），Ｃ（ｌ）は、それぞれ平行線のｘ座標、ｙ座標、太さ、方向（平行線と画像のｘ軸（水平方向）とのなす角度）、および平行線内またはその近傍を含めた領域の色情報を表わす。
【０２３６】
これらは、平行線のパラメータである４つの端点から求めることができる。平行線の位置（ｘ座標およびｙ座標）、平行線の太さおよび方向の抽出方法については既に述べた。ここでは、色情報の抽出方法について述べる。
【０２３７】
図１７を参照して、エッジ１とエッジ２の端点を結んで得られる四角形Ｐ1a，Ｐ1b，Ｐ2b，Ｐ2aについて、その四角形内の色を１つの色で代表してよいかどうかを判断する。これは、単色度合いに基づき判断するものである。代表してよいのであればその代表色（平均値、最も多く出現する色、中間値など）を、よくなければ、単色でないという情報を記録しておく。
【０２３８】
領域内の単色度合いを判断するためには、領域内の画素の色の分散値などから判断する方法や、領域内の階調数を落とし、ある階調に属する画素数が非常に多ければ単色であると判断する方法を用いることができる。この際、色空間はたとえばＲＧＢ空間が用いられるが、それ以外の色空間を用いてもよい。
【０２３９】
２つの部位間の距離に基づく尤度を以下の式で計算する。
【０２４０】
【数１３】
2005165923.tif 000015
【０２４１】
尤度関数は統計的なヒストグラムとして計算できる。また、ガウス分布などで近似することができる。Ｌ3と２つの部位間の幅の差に基づく尤度関数を組合せてもよい。この尤度関数はたとえば、以下のように表わされる。
【０２４２】
Ｌ4＝Ｌ4（ｄ）    （ただしｄ＝ｄ1−ｄ2）
ここで、幅の差の絶対値をとらないことにより、Ｌ4として、負になる確率が小さくなるような分布を選べば、長袖であっても半袖であっても、上腕が下腕より細くなることはないという一般的な傾向を反映することができる。たとえば、γ分布を用いることができる。
【０２４３】
また、平行線の色情報を用いて、部位ごとの色の類似度により確率を付与する。なお、単色度合いが強い（代表色を求めることができる）と判断された場合にのみ、色の類似度を尤度に反映させる。ある色空間でのそれぞれの代表色の間の距離を測り、その距離を色の類似度とする。色の類似度による部位間の結合確率を以下のように定義する。
【０２４４】
Ｌ5＝Ｌ5（ｃｏｌ）
（ただし、ｃｏｌ＝｜Ｃ1−Ｃ2｜：それぞれの平行線ペアの代表色の色空間内での距離）
このようにして、平行線平行線部位関係尤度は、平行線間の距離、太さの差および色の類似性によって、
Ｌ＝Ｌ3・Ｌ4・Ｌ5
と定義できる。
【０２４５】
また、テクスチャ情報を用いて部位同士の関係を調べる処理について説明する。
【０２４６】
平行線１から抽出される特徴量をｌ＝（ｘ1（ｌ1），ｙ1（ｌ1），ｄ1（ｌ1），θ1（ｌ1），Ｔ1（ｌ1））、平行線２から抽出される特徴量をｌ2＝（ｘ2（ｌ2），ｙ2（ｌ2），ｄ2（ｌ2），θ2（ｌ2），Ｔ2（ｌ2））とする。ここで、ｘ（ｌ），ｙ（ｌ），ｄ（ｌ），θ（ｌ），Ｔ（ｌ）は、それぞれ平行線のｘ座標、ｙ座標、太さ、方向（平行線と画像のｘ軸（水平方向）とのなす角度）、および平行線内の領域またはその近傍を含めた領域のテクスチャ情報を表わす。これらは、平行線のパラメータである４つの端点から求めることができる。
【０２４７】
テクスチャ情報の抽出においては、図１７で示されるエッジ１とエッジ２との端点を結んで得られる四角形Ｐ1a，Ｐ1b，Ｐ2b，Ｐ2aについて、その四角形内部のテクスチャ解析を行ない、その結果を記憶しておく。テクスチャ解析の手法は、前述したとおり既知のさまざまな方法を用いることができる。
【０２４８】
２つの部位間の距離に基づく尤度Ｌ3、および２つの部位の幅の差に基づく尤度Ｌ4の求め方については既に述べた。
【０２４９】
平行線のテクスチャ情報を用いて、部位ごとのテクスチャの類似度による確率を付与するために、類似度による部位間の結合確率を以下の式により定義する。
【０２５０】
Ｌ5＝Ｌ5（Ｔ1，Ｔ2）
このようにして、平行線平行線部位関係尤度は、平行線間の距離、太さの差およびテクスチャの類似性によって、
Ｌ＝Ｌ3・Ｌ4・Ｌ5
で定義できる。
【０２５１】
なお、ここでは平行線と平行線との間の尤度を求める例を示したが、楕円と平行線との間の尤度をテクスチャ情報や色情報などに基づいて求めるようにしてもよい。
【０２５２】
このようにして、本実施の形態においては部位尤度、部位関係尤度を計算するのに色情報（色相、彩度、明度など）、髪の毛、服の模様や皺などのテクスチャ情報を考慮することができる。なお、このような色情報やテクスチャ情報に代えて、部位ごとのエッジ画像を主成分分析した特徴量から尤度を計算するようにしてもよい。
【０２５３】
このようにして本実施の形態においては、人体部位候補の部位らしさおよび部位間の相互関係を利用し、人体らしさを確率的に計算する方法において、特徴量として色およびテクスチャ情報をも考慮することで、部位らしさの確率、または人体らしさの確率の計算精度向上を図ることが可能となる。
【０２５４】
また、本実施の形態における処理も、人体のみならず形状などが変化する物体の認識に用いることが可能である。
【０２５５】
［第５の実施の形態］
第５の実施の形態における検出装置および検出方法は、第１〜第４の実施の形態における検出装置および検出方法が作成する図１８のネットワークにおいて、候補なしのノード（図１８における最下行に位置するノードであり、「オクルージョンノード」と呼ぶ。）が選択される確率（ある部位が隠れていると判断される確率）を、他のノードが選択される確率に基づいて算出することとしている。
【０２５６】
図２５は、本実施の形態における装置での処理を示すフローチャートである。
【０２５７】
図を参照して、本実施の形態においては、図９のフローチャートと比較して、ステップＳ９の後に、オクルージョンノードの項が計算される（Ｓ１０）。
【０２５８】
すなわち図２６に示される、ハッチングが他の部分と異なる最下行のオクルージョンノードが人体を構成するノードとして選択される確率は、オクルージョンノード以外のノードの要素に基づき決定される。
【０２５９】
より詳しくは、ある部位ｂとして選択されるオクルージョンノードの人体尤度への寄与は、以下のように計算される。まず平均的な人体モデルから最も離れた部位尤度、および部位関係尤度が計算される。計算された部位尤度および部位関係尤度の総和がオクルージョンノードの項として割り当てられる。これにより、人体モデルを構成するノードとしてオクルージョンノードが選択される可能性を低くすることができる。
【０２６０】
たとえば、Ｌｋ（ｂ）を部位候補ｋが部位ｂである部位尤度、ＣＬｋ（ｂ，ｊ）をノードｂとｊとの間の部位部位関係尤度と定義すると、ある部位ｂのオクルージョンノードの項（または、部位が隠れている確率）Ｋｂは、式（２５）により計算される。
【０２６１】
【数１４】
2005165923.tif 000016
【０２６２】
すなわち、式（２５）によって、人体モデルとして仮定できる様々な人体姿勢に対応する尤度値を求め、その最大値以上をＫｂに設定することで、オクルージョンノードが選択される可能性を低くするものである。
【０２６３】
または、式（２５）に代えて、仮定した尤度関数を用いた以下の式（２６）を採用することとしてもよい。
【０２６４】
【数１５】
2005165923.tif 000017
【０２６５】
なお、式（２６）において、Ｌｂ（ｘ）は部位ｂの部位尤度を求めるための尤度関数を示し、Ｌｂｊ（ｘ）は部位ｂ、ｊ間の部位関係尤度を求める尤度関数を示し、ＫＬ、ＫＣＬはそれぞれ経験的に求められる定数を示す。
【０２６６】
これにより、配置に信頼関係が少ないところでは、オクルージョンノードの人体尤度への寄与が小さめに設定されることになる。２つの部位の配置関係に対する自由度が高い場合、尤度関数が一様分布であると仮定すると、オクルージョンノードを含むある２つのノードのペアの部位関係尤度は低い値をとることとなり、そのペアが選択される可能性（図２８）は低くなる。
【０２６７】
オクルージョンノードに関するエネルギー関数として、下記の式（２７）を用いる。なお、式（２７）におけるＫの値として、上記式（２５）または（２６）のＫｂを用いる。
【０２６８】
【数１６】
2005165923.tif 000018
【０２６９】
なお、式（２９）は、人体において、各部位を１つとするための（図２６において縦方向に並ぶノードからは１つのみを選択するための）制約条件である。
【０２７０】
なお、Ｅを最小化する方法として、以下のようにして遺伝アルゴリズムを用いることができる。
【０２７１】
図２７は、遺伝アルゴリズムを用いた最適化処理を示すフローチャートである。
【０２７２】
遺伝子コーディングとして、部位の順に候補番号を並べた構造を用いる。ステップＳ０１で、遺伝プールの中に初期染色体を満たす。
【０２７３】
ステップＳ０２で、任意の２つの染色体をランダムに選択する。
【０２７４】
ステップＳ０３で、確率ｐで交叉処理を行う。
【０２７５】
ステップＳ０４で、確率ｑで突然変異処理を行う。
【０２７６】
ステップＳ０５で、ステップＳ０２からステップＳ０４までの処理をＮ回繰り返す。
【０２７７】
ステップＳ０７で、適応度を計算し、ステップＳ０８で遺伝子プールを更新する。
【０２７８】
なお、上記ステップＳ０３で交叉確率を計算する処理は、以下のステップに従う。
【０２７９】
（ステップＳ１０１）
親１の任意の２つの遺伝子ｉ，ｊの間の局所尤度の値を計算する。
【０２８０】
遺伝子ｉの部位尤度をＰｉ、遺伝子ｊの部位尤度をＰｊ、遺伝子ｉとｊの間の結合尤度をＬｉ，ｊとすれば、局所対数尤度ＬＬｉ，ｊは、式（３０）により計算される。
【０２８１】
【数１７】
2005165923.tif 000019
【０２８２】
（ステップＳ１０２）
親１の任意の２つの遺伝子ｉ，ｊの間に、局所尤度の値に依存した確率Ｐｂｏｎｄ（ＬＬ）でボンドを生成するか否かを決定する。遺伝子ｉ，ｊの間にボンドが生成された時、Ｂ（ｉ，ｊ）＝１と表現する。
【０２８３】
（ステップＳ１０３）
互いにボンドで連結した遺伝子から構成されるクラスタを抽出する。すなわち、クラスタの集合を、｛Ｃ１，Ｃ２，・・・，Ｃｎ｝、Ｃｉ＝｛ｇ１，ｇ２，・・・，ｇｉｍ｝とすれば、各クラスタｉに対して、任意のｓ，ｔについて、Ｂ（ｇｓ，ｇｔ）＝１である。
【０２８４】
（ステップＳ１０４）
クラスタサイズの大きいものから順にＮ個、子２にコピーする。同一サイズのクラスタが複数ある場合には、内部の局所対数尤度が低いものから順にコピーする。
【０２８５】
（ステップＳ１０５）
子２の残りの遺伝子座に親２の遺伝子をコピーする。
【０２８６】
（ステップＳ１０６）
親２についてもステップＳ１０１からＳ１０３を繰り返し、クラスタを抽出する。
【０２８７】
（ステップＳ１０７）
子１に対してステップＳ１０４からＳ１０５を繰り返す。
【０２８８】
（ステップＳ１０８）
交叉確率外であれば、２つの親の染色体を２つの子にコピーする。
【０２８９】
［第６の実施の形態］
第６の実施の形態は、第５の実施の形態と同様に、オクルージョンノードが選択される確率を他のノードに基づいて算出するものであるが、各々のオクルージョンノード毎に、部位尤度を求め、オクルージョンノードと他のノードとの部位関係尤度を求めることを特徴としている。
【０２９０】
より詳しくは、本実施の形態ではＰＰＣＮにおいて、オクルージョンノードを含めて、各々のノードには、対応する部位候補と、その部位に対する部位尤度が付与される。一方、２つのノード間のエッジ（アーク）には、対応する２つの部位候補を、対応する２つの部位とみなした時の部位関係尤度が重みとして付与される。
【０２９１】
オクルージョンノードの部位尤度ＬＭ、各部位候補とオクルージョンノードとの間の部位関係尤度ＣＬｋ，Ｍを式（３１）で定義する。
【０２９２】
【数１８】
2005165923.tif 000020
【０２９３】
ここで、σ１、σ２として適当な減少関数（シグモンド関数など）を仮定することにより、あるオクルージョンノードは部位尤度、部位関係尤度が共に低いノードとして存在することになる。
【０２９４】
これにより配置に信頼関係が少ないところでは、オクルージョンノードの部位尤度、部位関係尤度が小さめに設定される。２つの部位の配置関係に対する自由度が高い場合、尤度関数が一様分布であると仮定すると、オクルージョンノードを含むある２つのノードのペアの部位関係尤度は低い値をとることとなり、そのペアが選択される可能性は低くなる。
【０２９５】
[実施の形態における効果]
上述の実施の形態によると、画像から簡単に抽出される人体部位候補の部位らしさの確率と部位間の相互関係とを利用して人体らしさを確率的に計算することにより、オクルージョンや撮影環境の変化に対してロバストかつ計算コストを増大させることなく、人体検知や姿勢推定を行うことができる。
【０２９６】
また、本実施の形態における構成は、３次元人体モデルを画像に当てはめる際の初期値推定の自動化に適用することができる。
【０２９７】
さらに、複数部位から構成され、かつ、部位間の関係が既知であり、かつ、その関係に自由度があるために全体として形状が複雑に変化するような物体の認識であれば、本発明は認識対象オブジェクトを人体に限定せずに適用することができる（例：動植物、変形可能な機械、例えば、ホースや取っ手等の変形可能な部品があり、吸い込み口の形状が数タイプ存在する掃除機等）。
【０２９８】
（発明の他の構成例）
なお、上述した具体的実施形態には以下の構成を有する発明が含まれている。
【０２９９】
（１）  複数の部位から構成される検出対象を画像から検出する検出方法をコンピュータに実行させるプログラムであって、
前記画像から前記複数の部位の候補となる部位候補を抽出する抽出ステップと、
抽出された部位候補ごとに、前記各部位のうち少なくとも１つとしての確率を算出する確率算出ステップと、
前記各部位の隠れ確率を推定する推定ステップと、
前記確率算出部によって算出された確率、前記推定ステップで推定された隠れ確率、および前記部位候補の配置関係に基づき、前記検出対象としての確率の高い部位候補の組合せを選択する選択ステップとをコンピュータに実行させる、検出プログラム。
【０３００】
（２）  （１）に記載の検出プログラムを記録した、コンピュータ読取可能な記録媒体。
【０３０１】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０３０２】
【図１】本発明の第１の実施の形態における物体姿勢推定装置の構成を示すブロック図である。
【図２】特徴抽出部１０２の基本構成を示すブロック図である。
【図３】図１の画像入力部１０１に入力された画像の具体例を示す図である。
【図４】図３の画像が図２の前処理部２０１で処理された結果を示す図である。
【図５】図４の画像が図２の部位候補抽出部２０２で処理された結果を示す図である。
【図６】楕円に対してのパラメータ値の計算例を示す図である。
【図７】平行線分に対してのパラメータ値の計算例を示す図である。
【図８】部位確率算出部１０３の処理を説明するための図である。
【図９】図１の装置での全体の処理の流れを示すフローチャートである。
【図１０】人体の構成モデルを示す図である。
【図１１】図９のステップｓ３の詳細を示すフローチャートである。
【図１２】水平方向線分の抽出方法を示すフローチャートである。
【図１３】線分のペアの抽出方法を示すフローチャートである。
【図１４】あるラベルについてペアを探す処理を示すフローチャートである。
【図１５】ペアであるエッジを示す図である。
【図１６】ペアでないエッジを示す図である。
【図１７】平行線のペアのパラメータの求め方を説明するための図である。
【図１８】ＰＰＣＮのネットワーク構成の具体例を示す図である。
【図１９】シミューレーティッド・アニーリングを用いたエネルギー最小化処理を示すフローチャートである。
【図２０】第２の実施形態における検出装置の構成を示すブロック図である。
【図２１】図２０の検出装置の全体の処理の流れを示すフローチャートである。
【図２２】ＰＰＣＤの生成について説明するための図である。
【図２３】図２１のステップｓ１３とｓ１４の処理を示す図である。
【図２４】本発明の第３の実施の形態における、プログラムを実行するコンピュータの構成を示すブロック図である。
【図２５】第４の実施の形態での全体の処理の流れを示すフローチャートである。
【図２６】ＰＰＣＮのネットワーク作成における部位と部位候補を示す図である。
【図２７】遺伝アルゴリズムを用いた最適化処理を示すフローチャートである。
【図２８】ＰＰＣＮのネットワーク作成における部位と部位候補を示す図である。
【符号の説明】
【０３０３】
１０１  画像入力部、１０１ａ  動画像入力部、１０２  特徴抽出部、１０３  部位確率算出部、１０４  部位結合確率算出部、１０５  人物確率算出部、１０６  出力部、１０７  部位確率データベース、１０８  部位結合確率データベース、１０９  時系列情報記憶部、２０１  前処理部、２０２  部位候補抽出部、２０３  部位候補パラメータ算出部。
【図１】
2005165923.tif 000021
【図２】
2005165923.tif 000022
【図４】
2005165923.tif 000023
【図５】
2005165923.tif 000024
【図８】
2005165923.tif 000025
【図９】
2005165923.tif 000026
【図１０】
2005165923.tif 000027
【図１１】
2005165923.tif 000028
【図１２】
2005165923.tif 000029
【図１３】
2005165923.tif 000030
【図１４】
2005165923.tif 000031
【図１５】
2005165923.tif 000032
【図１６】
2005165923.tif 000033
【図１７】
2005165923.tif 000034
【図１８】
2005165923.tif 000035
【図１９】
2005165923.tif 000036
【図２０】
2005165923.tif 000037
【図２１】
2005165923.tif 000038
【図２２】
2005165923.tif 000039
【図２３】
2005165923.tif 000040
【図２４】
2005165923.tif 000041
【図２５】
2005165923.tif 000042
【図２６】
2005165923.tif 000043
【図２７】
2005165923.tif 000044
【図２８】
2005165923.tif 000045
【図３】
2005165923.tif 000046
【図６】
2005165923.tif 000047
【図７】
2005165923.tif 000048