(57)【要約】【課題】遮蔽が生じている多くの状況において精度良く物体を検出できるようにする。【解決手段】物体検出部１０１は、検出対象となっている人体の全身検出結果および頭部検出結果（検出スコア）を得る。遮蔽判定部１０２は、物体検出部１０１において得られた結果を用いて、検出対象に遮蔽が存在するか否かを判定し、遮蔽状態に応じて検出スコアを補正する。このとき、前景の人体の頭部検出結果と、後景の人体の全身検出結果とで重複領域が存在するか否かを判定し、重複領域がある場合には、遮蔽領域を算出し、算出した遮蔽領域に応じて検出スコアを補正する。【選択図】図１
2014093023.tif 000002
【特許請求の範囲】
【請求項１】
入力画像から前景に位置する第１の物体及び後景に位置する第２の物体を検出する物体検出装置であって、
前記第１及び第２の物体の部分領域を検出する第１の検出手段と、
前記第１及び第２の物体の姿勢を示す情報を検出する第２の検出手段と、
前記第１の検出手段によって検出された部分領域と前記第２の検出手段によって検出された情報とに基づいて、前記第１の物体による前記第２の物体の遮蔽状態を判定する判定手段と、
前記判定手段によって判定された遮蔽状態に応じて、前記第２の物体の検出結果を補正する補正手段と、
を備えることを特徴とする物体検出装置。
【請求項２】
前記第１及び第２の検出手段は、前記物体を複数の部分に分けて位置及び大きさを検出することを特徴とする請求項１に記載の物体検出装置。
【請求項３】
前記第１の検出手段は、人体の頭部の位置及び大きさを検出することを特徴とする請求項１又は２に記載の物体検出装置。
【請求項４】
前記第２の検出手段は、人体の全身の位置及び大きさを検出することを特徴とする請求項１乃至３の何れか１項に記載の物体検出装置。
【請求項５】
前記判定手段は、前記第１の検出手段によって検出された前記第１の物体の部分領域が、前記第２の検出手段によって検出された前記第２の物体の領域と交差するか否かによって遮蔽状態を判定することを特徴とする請求項４に記載の物体検出装置。
【請求項６】
前記判定手段は、前記第１の検出手段によって検出された前記第１の物体の部分領域と前記第２の検出手段によって検出された前記第２の物体の領域との包含関係により遮蔽状態を判定し、遮蔽領域を計算することを特徴とする請求項４に記載の物体検出装置。
【請求項７】
前記補正手段は、前記遮蔽領域の面積に応じて前記第２の物体の検出結果を補正することを特徴とする請求項６に記載の物体検出装置。
【請求項８】
前記第２の検出手段は、さらに前記人体の体軸を検出することを特徴とする請求項４に記載の物体検出装置。
【請求項９】
前記判定手段は、前記第２の検出手段によって検出された体軸の角度に応じて遮蔽状態の判定方法を切り替えることを特徴とする請求項８に記載の物体検出装置。
【請求項１０】
前記判定手段は、前記第２の検出手段によって検出された前記第１の物体の体軸と、前記第２の物体の全身を表す矩形とが交差した場合に生じる領域を遮蔽領域として計算することを特徴とする請求項８又は９に記載の物体検出装置。
【請求項１１】
前記判定手段は、前記第２の検出手段によって検出された前記第１及び第２の物体の体軸を延長した直線が、前記第１の検出手段によって検出された前記第１の物体の部分領域において互いに交差した場合に、前記第１及び第２の物体の部分領域が重複していると判定することを特徴とする請求項８に記載の物体検出装置。
【請求項１２】
前記判定手段により前記第１及び第２の物体の部分領域が重複していると判定された場合に、前記補正手段は、前記第２の物体の検出結果を補正しないようにすることを特徴とする請求項１１に記載の物体検出装置。
【請求項１３】
前記判定手段は、前記第１及び第２の物体の部分領域が重複していると判定した場合に、前記第１の検出手段による検出結果を、前記体軸を基準とした検出結果に変更することを特徴とする請求項１１又は１２に記載の物体検出装置。
【請求項１４】
前記判定手段は、前記第１及び第２の物体の部分領域が重複していると判定した場合に、互いの体軸がなす角度と、検出結果の候補とを決定することを特徴とする請求項１３に記載の物体検出装置。
【請求項１５】
入力画像から前景に位置する第１の物体及び後景に位置する第２の物体を検出する物体検出方法であって、
前記第１及び第２の物体の部分領域を検出する第１の検出工程と、
前記第１及び第２の物体の姿勢を示す情報を検出する第２の検出工程と、
前記第１の検出工程において検出された部分領域と前記第２の検出工程において検出された情報とに基づいて、前記第１の物体による前記第２の物体の遮蔽状態を判定する判定工程と、
前記判定工程において判定された遮蔽状態に応じて、前記第２の物体の検出結果を補正する補正工程と、
を備えることを特徴とする物体検出方法。
【請求項１６】
入力画像から前景に位置する第１の物体及び後景に位置する第２の物体を検出する物体検出装置を制御するためのプログラムであって、
前記第１及び第２の物体の部分領域を検出する第１の検出工程と、
前記第１及び第２の物体の姿勢を示す情報を検出する第２の検出工程と、
前記第１の検出工程において検出された部分領域と前記第２の検出工程において検出された情報とに基づいて、前記第１の物体による前記第２の物体の遮蔽状態を判定する判定工程と、
前記判定工程において判定された遮蔽状態に応じて、前記第２の物体の検出結果を補正する補正工程と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特に、遮蔽が生じている場合に用いて好適な物体検出装置、物体検出方法及びプログラムに関する。
【背景技術】
【０００２】
１枚の画像から部分的に遮蔽が生じている人物であっても、精度良く、かつ頑健に検出できるようにする技術は、動作解析などに応用が可能であり、近年盛んに研究されている。このような技術は、特にセキュリティシステム、安全運転支援、医療福祉といった分野などにおいて、その応用が検討されている。このように監視カメラや車載カメラ等の分野においても、画像中の人体に遮蔽が生じている場合に頑健に人体を検出する手法が知られている。
【０００３】
例えば特許文献１に開示されている方法では、まず、入力画像全体から予め設定した人体の検出条件よりも検出スコアが大きくなる領域を検出する。この領域が最も前景に存在する人体を検出する領域になっている。次に、この領域を基準に遮蔽が生じる可能性がある周辺探索領域を計算する。そして、周辺探索領域内で前記条件よりも判定条件を緩くした条件で検出処理を行うことにより、前景の人体によって遮蔽が生じた後景の人物を検出することができる。
【０００４】
また、特許文献２に開示されている方法では、外光やガードレール等の高輝度物体により人体が部分的に遮蔽されている領域を、画像のコントラスト情報を利用して検出する。そして、検出した遮蔽領域は、遮蔽領域である旨を加味したスコアを計算することによりロバストに人体を検出している。
【０００５】
また、非特許文献１に開示されている方法では、人体を構成するパーツの１つに遮蔽物が存在するか否かを示すoccluderを明示的に組み込むことにより、遮蔽物が存在しても頑健に人体を検出している。このoccluderを組み込むことによって、机やテーブルなどで人体が隠された場合に生じる直線状の強いエッジを検出して遮蔽状態を判定している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−４９４３５号公報
【特許文献２】特開２０１１−１６５１７０号公報
【非特許文献】
【０００７】
【非特許文献１】Proceedings of the Neural Information Processing Systems (NIPS) 2011.「Object Detection with Grammar Models」
【非特許文献２】P. Viola and M. Jones (2001). "Rapid Object Detection using a Boosted Cascade of Simple Features", IEEE Conference on Computer Vision and Pattern Recognition.
【非特許文献３】Dalal, N., & Triggs, B. (2005). "Histograms of oriented gradients for human detection.", IEEE CVPR
【非特許文献４】Platt, J. C. (1999). Probabilistic Outputs for Support Vector Machines and Comparisons to Regularized Likelihood Methods. Advances in Large Margin Classifiers.
【非特許文献５】Zadrozny, B., & Elkan, C. (2002). Transforming classifier scores into accurate multiclass probability estimates. Proceedings of the Eighth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.
【非特許文献６】P. Felzenszwalb, D. McAllester, D. Ramanan (2008) "A Discriminatively Trained, Multiscale, Deformable Part Model", IEEE Conference on Computer Vision and Pattern Recognition.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１では、明示的に遮蔽判定をしているわけではなく、検出された人体の近くでかつ遮蔽が存在しそうな人体については、検出閾値を下げて検出しやすくするという方法をとっている。そのため、誤検出が多くなり検出精度は下がる。
【０００９】
また、特許文献２では、人体を遮蔽する物体が高輝度物体であるという特性を利用し、コントラストの情報のみで遮蔽領域を検出しているため、必ずしも高コントラストになるとは限らない人体同士の重なりによる遮蔽などには対応することができない。
【００１０】
非特許文献１では、机やテーブルといった直線的な強いエッジを対象としているため、机やテーブルによる人体の遮蔽には対応ができるが、形状が自由に変形する遮蔽（例えば、検出対象の前に他の人物が立っているなど）には対応できない。
【００１１】
本発明は前述の問題点に鑑み、遮蔽が生じている多くの状況において精度良く物体を検出できるようにすることを目的としている。
【課題を解決するための手段】
【００１２】
本発明の物体検出装置は、入力画像から前景に位置する第１の物体及び後景に位置する第２の物体を検出する物体検出装置であって、前記第１及び第２の物体の部分領域を検出する第１の検出手段と、前記第１及び第２の物体の姿勢を示す情報を検出する第２の検出手段と、前記第１の検出手段によって検出された部分領域と前記第２の検出手段によって検出された情報とに基づいて、前記第１の物体による前記第２の物体の遮蔽状態を判定する判定手段と、前記判定手段によって判定された遮蔽状態に応じて、前記第２の物体の検出結果を補正する補正手段と、を備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、遮蔽が生じている多くの状況において精度良く物体を検出することができる。
【図面の簡単な説明】
【００１４】
【図１】実施形態に係る物体検出装置の簡単な構成例を示すブロック図である。
【図２】実施形態に係る物体検出装置の詳細な構成例を示すブロック図である。
【図３】実施形態に係る物体検出装置の検出処理部が行う処理手順の一例を示すフローチャートである。
【図４】各検出器の結果から頭部の位置を推定する概要を説明するための図である。
【図５】全身検出器の結果と頭部との位置関係の定義例を示す図である。
【図６】頭部の正解基準を用いて頭部位置推定結果を評価する処理を説明する図である。
【図７】実施形態において、統合結果出力部が行う統合処理手順の一例を示すフローチャートである。
【図８】統合結果出力部から出力される処理結果の具体例を説明する図である。
【図９】前景となる人体により後景の人体が部分的に遮蔽されている様子を説明する図である。
【図１０】図９における遮蔽状態の判定方法と遮蔽領域の計算方法とを説明する図である。
【図１１】２人以上の人物が重なって遮蔽が生じている状態の一例を示す図である。
【図１２】第１の実施形態における遮蔽判定部による処理手順の一例を示すフローチャートである。
【図１３】パーツベースの検出手法を用いた全身検出器を説明する図である。
【図１４】パーツベースの検出器と人体の体軸との関係を説明する図である。
【図１５】複数のパーツ検出器による頭部の推定結果と体軸の推定結果とから、遮蔽判定を行う事例を説明する図である。
【図１６】遮蔽領域の面積と位置とを算出する方法を説明する図である。
【図１７】第２の実施形態における遮蔽判定部による処理手順の一例を示すフローチャートである。
【図１８】前景の人体によって後景の人体が遮蔽されており、かつ両人体の頭部が重なっている場合の検出処理を説明する図である。
【図１９】第３の実施形態における遮蔽判定部による処理手順の一例を示すフローチャートである。
【図２０】統合処理前の頭部および体軸の検出結果の一例を示す図である。
【発明を実施するための形態】
【００１５】
（第１の実施形態）
以下、本実施形態では、対象物を複数の部分領域に分割して、各部分領域の対象物らしさを部分領域スコアとして算出する。そして、一部または全ての部分領域スコアを統合して統合スコアを算出し、統合スコアを元に対象物であるかを判定することによって対象物検出処理を実施する。さらに、検出処理の過程で算出した部分領域のスコアと統合スコアとから、複数の対象物の位置姿勢情報を算出し、遮蔽判定を行うことにより頑健な検出処理を実現する。本実施形態で検出する対象物は特に限定されないが、検出対象物を人物とした場合について説明する。
【００１６】
図１及び図２は、本実施形態に係る物体検出装置１０の構成例を示すブロック図である。以下、図１及び図２を参照しながら本実施形態の構成について説明する。なお、本実施形態の物体検出装置１０は、ネットワークまたは各種記録媒体を介して取得したソフトウェア（プログラム）を、ＣＰＵ、メモリ、ストレージデバイス、入出力装置、バス、表示装置などにより構成される制御装置にて実行することで実現できる。また、不図示の制御装置については、汎用の制御装置を用いてもよいし、本発明のソフトウェアに最適に設計されたハードウェアを用いてもよい。
【００１７】
＜検出処理に関わる構成＞
図１に示すように、本実施形態の物体検出装置１０は、検出処理において、画像入力部１００、物体検出部１０１、及び遮蔽判定部１０２を介して、対象物の検出結果を出力する。以下、これらの構成ブロックについて説明する。
【００１８】
画像入力部１００は、画像処理装置に画像を入力する部分である。画像入力部１００に入力される画像は、カメラなどから得た動画像の１フレームの画像でもよく、ハードディスクドライブなどのストレージデバイスに保存された画像でもよい。
【００１９】
以下、入力画像の注目領域に対する処理について説明する。注目領域は、入力画像の一部の領域であり、後述する対象物検出器のサイズと同じ画像サイズである。入力画像中の注目領域を、画像内でスライドさせながら順次設定することにより、画像全体から対象物を検出することができる。また、さらに入力画像を拡大あるいは縮小することにより、様々なサイズに写った対象物を検出することができる。
【００２０】
物体検出部１０１は、検出対象となっている対象物の推定位置およびスコア（尤度）を算出する。以下、物体検出部１０１の詳細について、図２を参照しながら説明する。
【００２１】
物体検出部１０１は、図２に示すように、画像入力部１００、第１の検出処理部２１１〜第ｎの検出処理部２１ｎ、及び各検出処理部に対応した第１の共通部位推定部２２１〜第ｎの共通部位推定部２２ｎを備えている。さらに、第１のスコア補正辞書２３１〜第ｎのスコア補正辞書２３ｎ、第１のスコア補正部２４１〜第ｎのスコア補正部２４ｎ、及び統合結果出力部２５０を備えている。以下、画像入力部１００に入力された１枚の画像に対する処理を例にして、各構成要素について説明する。
【００２２】
第１の検出処理部２１１〜第ｎの検出処理部２１ｎには、対象物の異なる部位や状態を検出する検出器が、予め格納されている。検出対象物を人物とした場合、各検出処理部の異なる検出器には、顔検出器、頭部検出器、上半身検出器、全身検出器などの人物の異なる部位を対象とした検出器を用いることができる。人物の異なる部位を検出する検出器を用いることにより、人物の一部が他の物体から遮蔽されている場合や、画像中から人物の一部がはみ出している場合にも人物を検出できるようになる。
【００２３】
これらの複数の検出器は、それぞれ相互に補間し合うような検出器を準備することが望ましい。検出器を相互に補間し合う例として、例えば、頭部検出器と全身検出器との組み合わせが考えられる。まず、頭部検出器は、胴体以下が他の物体から遮蔽されていても人物を検出することが可能であり、また、身体部分の姿勢変動に影響を受けずに人物を検出できるという利点がある。しかし、頭部は特徴的な形状が少ないため、検出性能は全身検出器に比べて劣る傾向にあることが欠点である。一方、全身検出器は、対象としている部位が大きいため、人物の特徴を捉えやすく検出性能が比較的高いという利点があるが、遮蔽に弱いという欠点がある。そこで、頭部検出器と全身検出器とを同時に利用することにより、相互の欠点を補うことができるようになり、人物検出の精度向上が期待できる。
【００２４】
一方、顔検出器では、非特許文献２に開示されている方法のように、学習画像の顔範囲のHaar-Like特徴量を収集し、AdaBoostにより統計的に顔らしい特徴を識別できるようにして顔検出器を学習する。また、頭部や上半身、全身などその他の人物部位を学習する場合は、画像特徴としては非特許文献３に記載されているＨＯＧ特徴量を用いる。頭部検出器や上半身検出器、全身検出器を準備する場合には、各部位の学習画像を準備し、それぞれのＨＯＧ特徴量を取得して、ＳＶＭ（サポートベクタマシーン）やAdaBoost等の識別器により各部位の検出器を学習する。学習の結果（例えば、AdaBoostの弱識別器など）は、検出器辞書として保存し、検出時に利用する。
【００２５】
また、各検出器は、人物検出の尤もらしさを検出スコアとして算出する。例えばAdaBoostでは、各弱識別器の出力の重み付き和を検出スコアとして出力する。またＳＶＭでは、識別超平面との距離を検出器スコアとして算出する。上記以外の判別処理でも、尤度など対象物らしさを表すスコアを出力する方法であれば、どのような方法を用いてもよい。検出スコアは、対象物を示す確率値などに変換するなどして、各検出器の検出スコアを比較可能な値にしておくことが好ましい。なお、以下では、検出器スコアが高いほど、各検出器が対象としている人物部位、または人物状態らしさが高い出力が得られているものとする。
【００２６】
以下、本実施形態では、複数の検出器として、顔検出器、頭部検出器、全身検出器の３つを用いる場合について説明するが、用いる検出器の構成はこの限りではない。
【００２７】
次に、第１の検出処理部２１１、第２の検出処理部２１２、第ｎの検出処理部２１ｎによる処理について説明する。図３は、第１の検出処理部２１１〜第ｎの検出処理部２１ｎが行う処理手順の一例を示すフローチャートである。以下、第１の検出処理部２１１が全身検出器の検出処理を行う例について説明する。
【００２８】
まず、ステップＳ３０１において、入力画像の画像特徴量を算出する。この処理では、第１の検出処理部２１１の検出器は全身検出器であるため、入力画像からＨＯＧ特徴量を算出する。次に、ステップＳ３０２において、検出処理を行う画像の特定位置の画像特徴量を取得する。そして、ステップＳ３０３において、検出器辞書を用いて、処理対象の画像特徴量の対象物らしさを判別し、検出スコアを算出する。
【００２９】
次に、ステップＳ３０４において、入力画像全体において検出スコアを算出したか否かを判定する。画像全体を探索するため、各画像中の位置で検出スコアを算出するよう判別位置を変えながら画像全体に対して行う。この判定の結果、入力画像全体において検出スコアを算出していない場合は、ステップＳ３０２に戻る。なお、判別位置を変更する際に、画像サイズも変更することにより、画像中で異なるサイズで写っている人物も検出できるようになる。
【００３０】
一方、ステップＳ３０４の判定の結果、入力画像全体において検出スコアを算出した場合は、画像中の各位置での検出スコアが得られる。ここで、この結果を全て第１の共通部位推定部２２１に送るようにしてもよいが、明らかに人物ではないと判断できる低い検出スコアの検出結果については、これ以降の処理を省略して全体の処理負荷を低減することができる。したがって、次のステップＳ３０５においては、所定のスコア以上の結果を残す閾値処理を行い、無駄な検出結果を削除する。ステップＳ３０５の処理の結果、画像中で検出スコアが所定値よりも高い位置の位置情報とその検出スコアを共通部位推定部２２１に出力する。
【００３１】
以上、１つの検出処理部の処理結果を説明したが、物体検出装置１０全体としては、この検出処理部の処理を検出処理部の数だけ繰り返す。
【００３２】
次に、第１の共通部位推定部２２１〜第ｎの共通部位推定部２２ｎについて説明する。第１の共通部位推定部２２１〜第ｎの共通部位推定部２２ｎでは、対象物の共通部位の位置を各検出器の結果から推定する。本実施形態では、異なる部位を検出する検出器の結果を統合するために、各検出器から対象物の共通な部位の位置または範囲を推定し、推定した部位の位置関係を元に検出結果を統合する。
【００３３】
例えば、各検出処理部において人体の腕や足、胴体が検出され、共通部位として頭部が推定される。複数の検出処理部で検出される結果より共通部位を推定して、後段の処理で検出候補を絞り込むことも可能になる。以下、本実施形態では、人物の頭部を共通部位として定義し、第１の共通部位推定部２２１が各検出器の検出結果から頭部位置を推定する手順について説明する。ただし、本実施形態では推定する共通部位を頭部にしたが、各検出器で共通に推定可能な部位であれば、特に限定するものではない。例えば、共通に推定可能な部位として人体の喉元から腰の中心を結ぶ体軸などが挙げられる。なお、検出対象物が人物である場合、人物の頭部は比較的遮蔽されにくい部位であるため共通部位として適している。
【００３４】
図４は、各検出器の結果から頭部の位置を推定する概要を説明するための図である。各検出器の検出処理の結果、検出対象の位置・範囲の情報が得られており、本実施形態では、検出結果の位置・範囲は、検出対象を囲む矩形枠で得られるものとする。図４に示す例では、検出結果を矩形枠で示しており、それぞれ顔検出結果枠４０１、頭部検出結果枠４０２、全身検出結果枠４０３の情報が得られている。矩形枠の座標Ｘは、画像座標の２点を用いて、以下の式（１）により表される。
【００３５】
【数１】
2014093023.tif 000003
【００３６】
ここで、ｘ1、ｙ1は矩形の左上点の画像座標であり、ｘ2、ｙ2は矩形の右下点の画像座標である。第１の共通部位推定部２２１では、この矩形枠から共通部位として頭部位置・範囲を推定する。図４に示す例の場合は、顔検出結果枠４０１から推定した頭部位置・範囲を矩形枠４１１で表し、全身検出結果枠４０３から推定した頭部位置・範囲を矩形枠４１３で表している。検出結果枠から頭部の位置を推定する場合には、予め検出結果枠と頭部との位置関係を定義しておき、検出結果枠から頭部の位置に変換することによって頭部の位置を推定する。
【００３７】
図５は、全身検出器の結果と頭部との位置関係の定義例を示す図である。図５に示す例では、全身検出器に対して頭部の位置は、全身検出器の高さｈBの１５％を頭部高さｈHとし、全身検出器の幅ｗBの５０％を頭部幅ｗHと定義している。また、ｘ軸方向には０．２５ｗBのオフセットが定義されている。全身検出器から頭部の位置を推定する際には、全身結果の座標Ｘから、図５に示す定義に従って頭部座標Ｘhとして求める。頭部座標Ｘhは以下の式（２）により表される。
【００３８】
【数２】
2014093023.tif 000004
【００３９】
ここで、ｘh1、ｙh1は推定した頭部範囲の左上点の座標であり、ｘh2、ｙh2は推定した頭部範囲の右下点の座標である。第１の共通部位推定部２２１では、第１の検出処理部２１１の処理の結果として得られた各検出結果について、式（１）に示した座標Ｘから頭部推定座標Ｘhを算出する。
【００４０】
なお、頭部範囲の定義は、各数値を予め人が入力・設計してもよいし、実際の全身検出結果から得られる頭部位置の平均から設計するようにしてもよい。頭部の位置の平均を取得する場合には、複数のサンプル画像に全身検出器による検出処理を行い、検出結果内の頭部位置の平均値を算出することによって求めることができる。
【００４１】
以上の説明では、全身検出器から頭部位置を推定する方法を例にして第１の共通部位推定部２２１の動作について説明した。他の検出器の検出結果から頭部の位置を推定する場合についても、全身検出器の場合と同様に、各検出結果と頭部との位置関係を定義しておき、検出結果から頭部の位置を推定する。全身検出器では、検出結果の内部の頭部の位置を推定したが、推定する位置は検出結果の内部である必要はない。
【００４２】
例えば、図４に示す顔検出結果枠４０１から推定した頭部の位置を示す矩形枠４１１は、顔検出結果枠４０１の外側にある。また、頭部そのものを検出する頭部検出器の頭部検出結果枠４０２では、共通部位推定部の処理を省略して、頭部検出結果そのものを共通部位として推定したという結果として出力するようにしてもよい。
【００４３】
次に、第１のスコア補正辞書２３１〜第ｎのスコア補正辞書２３ｎと第１のスコア補正部２４１〜第ｎのスコア補正部２４ｎについて説明する。本実施形態では、各検出結果から推定した共通部位の位置と、各検出スコアとを用いて複数の異なる検出結果を統合する。ここで、共通部位の位置は検出結果から推定した結果であり、その推定精度は検出器によって異なる。本実施形態では、頭部の位置を共通部位として推定しているが、頭部の位置の推定性能は、頭部の位置に近い、あるいは頭部と関係が深い検出器の方が良いと考えられる。そこで、共通部位の推定性能の差を考慮した統合を行うために、第１のスコア補正部２４１〜第ｎのスコア補正部２４ｎは、それぞれ第１のスコア補正辞書２３１〜第ｎのスコア補正辞書２３ｎを用いて共通部位の推定性能差に基づいた検出スコアの補正を行う。そして、補正した検出スコアを用いて周囲の検出結果を統合することにより、対象物の検出結果の位置精度が向上することが期待できる。
【００４４】
第１のスコア補正部２４１〜第ｎのスコア補正部２４ｎでは、それぞれの検出器の検出スコアを、それぞれ第１のスコア補正辞書２３１〜第ｎのスコア補正辞書２３ｎに記録された情報を用いて変換する。第１のスコア補正辞書２３１〜第ｎのスコア補正辞書２３ｎには、各検出器が共通部位を推定する信頼度に基づいて検出スコアを補正するための情報が格納されている。
【００４５】
スコア補正では、検出器ごとに補正係数を各スコア補正辞書に保存し、スコア補正時には係数を検出スコアに乗じて補正スコアを算出すればよい。補正係数の例としては、頭部検出器の補正係数を１とし、顔検出器の補正係数を０．８、全身検出器の補正係数を０．５などとする。このように、頭部に近い検出器（頭部位置の推定性能が高い検出器）では大きい補正係数を設定し、頭部から遠い検出器（頭部位置の推定性能が低い検出器）では低い補正係数を設定する。この補正係数は、姿勢・撮影条件・遮蔽の発生部位などにより、変わり得るものであり、それらの状態を判定して適応的に設定してもよい。本実施形態では、検出器性能に関する事前確率を予め求めておき、その値を用いる。この補正係数を検出スコアに乗じて補正スコアを得ることにより、検出器の検出結果と共通部位の推定の性能とを考慮した補正スコアを得ることができる。補正スコアは、対象物らしさを示す検出スコアに、共通部位の位置推定の確からしさによって重み付けしたスコアとなっており、対象物らしさと位置の確からしさとを合わせて示すことになる。
【００４６】
なお、補正係数をユーザが入力して設定してもよいが、補正係数は各検出器で推定する頭部位置の正解確率によって設定することが好適である。そこで、各検出器の頭部の位置の推定に係る正解確率については、事前に求めておく必要がある。以下、図６を参照しながら頭部の位置の推定に係る正解確率の求め方と各スコア補正辞書に保存する補正係数とについて説明する。
【００４７】
まず、頭部の位置が既知な画像サンプル群を準備する。図６（Ａ）は、画像６００の人物の頭部位置が既知である画像の例を示しており、頭部範囲の座標が頭部正解６０１として記録されている。ここで、画像６００は、人物が一人しか写っていない、または、一人の人物範囲に切り出された画像であることが望ましい。このように頭部の位置が既知である画像を大量に準備する。
【００４８】
次に、図６（Ｂ）は、図６（Ａ）の画像に対して顔検出を実施した結果を示している。顔検出の結果、検出処理で説明した処理と同様に、画像６００全体に顔検出器の検出処理が逐次行われる。ここでは、画像６００の中で顔検出の検出スコアが最も高い検出結果６１１に着目する。画像６００には人物が一人しか写っていないため、最も高いスコアを示す検出結果６１１が顔であると考えられる。
【００４９】
次に、この顔検出結果から頭部の位置を推定した推定結果６１２を算出する。この頭部の位置の推定結果６１２と頭部正解６０１とを比較して、頭部の推定が正しく行われたか否かを評価する。頭部正解６０１と頭部の位置の推定結果６１２とを比較する際には、例えば、各位置の中心間距離が所定範囲内であれば、推定結果が正解であるものとする。また、他の基準としては、矩形形状の頭部正解６０１と頭部の位置の推定結果６１２との重複率を算出し、所定の重複率以上を示す場合に推定結果が正解であるものとしてもよい。矩形の重複率αの算出方法としては、例えば、以下の式（３）によって算出できる。
【００５０】
【数３】
2014093023.tif 000005
【００５１】
ここで、Ｓbは頭部正解の面積、Ｓeは推定した頭部範囲の面積、Ｓbeは頭部正解と推定した頭部範囲の重複した領域の面積である。以上の正解判定を、準備した全ての画像サンプル群に対し実行し、頭部推定が正解となった確率を求めることができ、その確率を補正係数とする。なお、画像サンプルに対して検出結果自体が得られない場合には、頭部推定は不正解として判定する。
【００５２】
他の検出器についても同様に、頭部推定の正解確率を各検出器について求め、それぞれの正解確率を各検出器の補正係数として利用すればよい。図６（Ｄ）に示す例では、全身検出器の検出結果６３０から推定した頭部位置６３１と頭部正解６０１との位置関係を評価する。図６（Ｄ）に示す例の場合、頭部正解６０１から頭部位置６３１が大きくずれているため、全身検出器からの頭部の位置の推定は不正解となる。
【００５３】
また、図６（Ｃ）には、頭部検出器の検出結果の正解判定の例を示している。頭部検出器の結果についても、他と同様に頭部正解との評価を行い、頭部位置を示す性能を評価して補正係数を算出してもよい。頭部検出器では、頭部の位置の推定を必ずしも行う必要がないので、その場合は検出結果そのものの位置と頭部正解との評価を行う。
【００５４】
また、上記の重複率αを用いて補正係数を算出する場合には、各画像サンプルで正解・不正解の２値判定により正解確率を算出している。そこで、この情報を利用して非特許文献４に開示されているPlatt scalingや非特許文献５に開示されているIsotonic Regressionを行って、スコア補正を行ってもよい。また、スコア補正を全く行わなくてもよい。
【００５５】
以上の処理により補正スコアが算出されると、統合結果出力部２５０は、これら検出器の結果を統合し、同じ人物に対して複数の検出器から出力される情報を１つにまとめる。なお、本実施形態では、同じ人物周辺において同じ検出器から重複して出力された検出結果をまとめることを目的としているわけではない。
【００５６】
以下、同じ人物に対して複数の検出器から出力される情報を１つにまとめる処理について説明する。図７は、本実施形態において、統合結果出力部２５０が行う統合処理手順の一例を示すフローチャートである。図７に示す処理では、ステップＳ７０１〜ステップＳ７０４の処理を全身検出器の個々の出力結果に対してループしながら行う例について説明する。以下、注目している全身検出器の出力結果の番号をｉ（ｉ＝１，・・・，Ｌ）とし、その番号の頭部推定座標をＸhB,iとする。
【００５７】
まず、ステップＳ７０１において、全身検出器の検出結果が残っているか否かを判定する。この結果、残っている場合にはステップＳ７０２に進み、そうでない場合は処理を終了する。次に、ステップＳ７０２において、頭部の位置の推定結果の中で座標ＸhB,iが示す領域との重複率が最も高いものを選択する。このとき、選択した推定結果の番号をｊ（ｊ＝１，・・・，Ｍ）とし、その番号の頭部の推定座標をＸhH,jとする。ここで座標ＸhB,iが示す領域と座標ＸhH,jが示す領域との重複率Ａ0（ＸhB,i，ＸhH,j）は、以下の式（４）より求める。
【００５８】
【数４】
2014093023.tif 000006
【００５９】
ここで、Ｐ（Ｘ，Ｙ）は矩形Ｘと矩形Ｙとで重複した領域の面積である。また、Ｓ（Ｘ）、Ｓ（Ｙ）は、それぞれ矩形Ｘ、矩形Ｙの面積である。
【００６０】
次に、ステップＳ７０３において、顔の位置の推定結果の中で、座標ＸhB,iが示す領域との重複率が最も高いものを選択する。このとき、選択した推定結果の番号をｋ（ｋ＝１，・・・，Ｎ）とする。そして、ステップＳ７０４において、各全身検出器の検出結果ｉについて、以下の式（５）に示すベクトルＲiを出力する。
【００６１】
【数５】
2014093023.tif 000007
【００６２】
ここで、ＳB,i、ＳH,j、ＳF,kはそれぞれ、ｉ番目の全身検出器の補正スコア、ｊ番目の頭部検出器の補正スコア、ｋ番目の顔検出器の補正スコアであり、それらの和が統合スコアとして統合結果出力部２５０から出力される。本実施形態では、各検出器のスコアを補正して単純な和をとって統合スコアとする。なお、各検出器の種類によっては補正が必要のない場合があり、このことは検出精度を比較することによって要否を判断できる。また、スコアを補正する場合でもしない場合でも各検出器のスコアの線形和を取って統合スコアとすることもできる。この場合の線形係数は、各検出器のスコアを入力ベクトルとしたＳＶＭなどの学習によって得ることができる。
【００６３】
図８は、統合結果出力部２５０から出力される処理結果の具体例を説明する図である。図８（Ａ）は、統合結果出力部２５０に入力された時点での検出結果を示しており、人物周辺に複数の検出結果が得られている状態である。なお、図８（Ａ）に示す例では、説明を簡略化するために顔検出器の結果については省略しており、頭部検出器の検出結果及び全身検出器の検出結果のみを図示している。
【００６４】
波線の矩形８０１は全身検出器の検出結果であり、波線の矩形８０４は全身検出器から推定された頭部位置の領域である。図８（Ａ）に示す例では、１つの全身検出器の検出結果と、その頭部の推定結果とを示している。また、実線の矩形８０２、８０３は頭部検出器の２つの検出結果を示している。これらは、頭部を検出する処理で画像中の探索位置を変えながら検出処理を行った結果、人物の頭部の周辺に複数の検出結果が得られた結果である。統合結果出力部２５０では、共通部位である頭部位置と推定情報を用いて、これらの検出結果をまとめる。
【００６５】
図８（Ｂ）は、図８（Ａ）に示す検出結果を統合結果出力部２５０で処理した結果を示しており、全身検出器に基づいた矩形８０４に示す頭部の推定位置と最も重複度の高い矩形８０２に示す頭部の検出結果が選択され、統合結果として残されている。逆に、頭部検出器の誤検出と思われる矩形８０３に示す頭部の検出結果は、対応する全身検出の結果がないため、削除されている。
【００６６】
＜遮蔽判定処理＞
遮蔽判定部１０２は、物体検出部１０１において統合された結果を用いて、検出対象に遮蔽が存在するか否かを判定し、遮蔽状態に応じて検出スコアを補正する。以下、物体検出部１０１の出力結果である統合スコアを検出スコアと記載して説明する。具体的には、遮蔽判定部１０２は、検出スコアの高い頭部の検出結果に対応する全身推定結果と、その周辺に存在する頭部の検出結果とを順次参照して遮蔽を判定する。なお、本実施形態では、検出する人体は常に直立した状態であることを想定しているものとする。
【００６７】
図９は、第１の物体である前景となる人体９００により第２の物体である後景の人体９０１が部分的に遮蔽されている様子を説明する図である。この時、物体検出部１０１の処理結果として、実線の矩形９１０、９１１に示す頭部の検出結果が得られており、波線の矩形９２０、９２１は、全身の検出結果を示している。
【００６８】
図１０は、図９における遮蔽状態の判定方法と遮蔽領域の計算方法とを説明する図である。まず、遮蔽状態を判定するために、前景の人体９００の頭部の検出結果を表す矩形９１０に着目する。ここで、カメラで撮影した被写体は、透視投影の影響により、手前の物ほど大きく映り、奥にある物ほど小さく映る。そして、手前の物体ほど遮蔽が生じる可能性は小さい。この原理を踏まえ、物体検出部１０１から出力された全ての検出結果を検出スコアと検出枠のサイズとで大きい順にソートする。この処理を施すことにより、遮蔽が生じている可能性が低く、かつ遮蔽の原因になる手前の人体を特定することができる。そして、遮蔽の原因になりそうな人体から順に、他の検出結果との遮蔽判定を行う。ただし、近接する人体の場合は、必ずしも透視投影による顕著なサイズの違いは生じない。このような場合は、テクスチャの連続性などを考慮してどちらの人体が前景に存在する人体かを判定するなどしてもよい。
【００６９】
そして、人体９００の頭部の検出結果を表す矩形９１０と人体９０１の全身の検出結果を表す矩形９２１との交点、もしくは重複領域１００２を算出する。ここで、一般的に最も前景と想定される人体の頭部と他の人体の全身の検出結果とが重複していた場合で、かつその全身の検出結果に対応する頭部の検出スコアが閾値よりも高い場合、その人体は高い確率で遮蔽状態にあると判定できる。そして、交差もしくは重複する全身の検出結果に対応する頭部の検出スコアの最も低いものから順に人体の一部が遮蔽状態にあると判定して、検出スコアを補正する。
【００７０】
以下、遮蔽状態を判定して検出結果を補正する処理について説明する。
図１２は、遮蔽判定部１０２による処理手順の一例を示すフローチャートである。図１２に示す処理では、ステップＳ１２０１〜ステップＳ１２０７の処理を物体検出部１０１で検出された個々の出力結果に対してループしながら行う。ここで、注目している全身検出器の出力結果の番号をｉ（ｉ＝１，・・・，Ｌ）とする。
【００７１】
まず、ステップＳ１２０１において、検出スコアの高い順であって、かつ頭部のサイズの大きい順に検出結果をソートする。この処理は、前述したように検出スコアが高く、かつ頭部のサイズが大きい人体ほど前景に存在する可能性が高いという前提知識に基づくものである。
【００７２】
また、カメラから奥側に物体が存在する場合、もしくは子供の頭が検出された場合などは、検出スコアは高いが頭部のサイズは小さくなる傾向にある。この場合、検出スコアの高い順にソートした後、構築するシステムを実際に稼働させる状況で検出サイズに一定の閾値などを設けて、検出され得る最小の頭部のサイズを決定しておく。これにより、検出候補の尤度を信頼性の高いものにできる。
【００７３】
さらに、被写体が柄の長い帽子を被っていた場合などは、検出スコアが低く頭部のサイズが大きくなることがある。このような場合には、第１の検出処理部２１１〜第ｎの検出処理部２１ｎに、柄の長い帽子を被っている頭部に対して高い検出結果を出力する検出器を備えることにより、検出スコアの補正を行って再度ソートすることが望ましい。
【００７４】
次に、ステップＳ１２０２において、前景と推定される人体の全身及び頭部の検出結果を参照し、前景と推定される人体を選択する。以下、前景と推定される人体の全身の検出結果をＡBとし、その人体の頭部の検出結果をＡHとする。この処理では、ステップＳ１２０１でソートが完了しているので、検出スコアの高いものから選択することとなる。
【００７５】
次に、ステップＳ１２０３において、後景の人体の全身及び頭部の検出結果を参照し、ステップＳ１２０２で選択した人体の検出スコアよりも低く、かつ頭部の検出結果に対応する全身の検出結果が算出されている人体を選択する。以下、この処理で選択される後景の人体の全身の検出結果をＢBとし、その人体の頭部の検出結果をＢHとする。
【００７６】
次に、ステップＳ１２０４においては、ステップＳ１２０２で選択した前景の人体の頭部の検出結果（ＡH）と、後景の人体の全身の検出結果（ＢB）とで交点が２点以上存在するか、もしくは重複領域（ＡH∩ＢB）が存在するか否かを判定する。この判定の結果、交点もしくは重複領域が存在しない場合はステップＳ１２０７に進み、存在する場合はステップＳ１２０５に進む。
【００７７】
ステップＳ１２０５においては、前景の人体の全身の検出結果（ＡB）を利用して、後景の人体における遮蔽領域（ＡB∩ＢB）を算出する。図１０に示す例の場合、各検出結果の左上及び右下の座標値を利用して遮蔽領域１００１を算出する。まず、人体９０１の全身の検出結果の左上点を（ｘj，ｙj）として、同様に人体９００の全身の検出結果の左上点を（ｘi，ｙi）とすると、幅ｗOおよび高さｈO（ｗO,i，ｈO,i）は、以下の式（６）で表される。
【００７８】
【数６】
2014093023.tif 000008
【００７９】
そして、人体９０１の全身を検出する際に、幅ｗBおよび高さｈBは既に算出されているため、遮蔽領域１００１の面積ＳOは、以下の式（７）により求めることができる。
【００８０】
【数７】
2014093023.tif 000009
【００８１】
次に、ステップＳ１２０６において、ステップＳ１２０５で算出した遮蔽領域の面積から検出スコアの補正値を決定する。本実施形態で示した例のように、検出する人体が直立していることを仮定した場合は、遮蔽領域が大きければ大きいほど検出スコアは低下するため、遮蔽領域の面積と検出スコアとの間には負の相関があると考えることができる。したがって、遮蔽が存在する場合は、検出スコアに対して以下の式（８）により補正を施す。
【００８２】
【数８】
2014093023.tif 000010
【００８３】
ここで、δ（ＳO,i）は、値域が０から１の単調増加関数である。仮に遮蔽が無ければ補正係数は１となり、遮蔽の面積が大きくなればなるほど、大きな係数がかかるように設計されている。このような補正をかけることによって、遮蔽のために生じた検出スコアの低下を取り消すことができる。
【００８４】
また、前述した頭部の位置を推定する際の正解確率の求め方と同様に、遮蔽が生じるパターン毎に、遮蔽パターンと各検出器の検出スコアとの相関関係を求めておくことにより、遮蔽時の補正係数をスコア補正辞書として記録することも可能である。
【００８５】
遮蔽時の補正係数を予め求めておくためには、まず、頭部位置と全身位置が既知の画像サンプル群を準備する。なお、準備する画像は、人体が遮蔽されている状態の画像と遮蔽されていない状態の画像とをそれぞれ準備することが望ましい。さらに、遮蔽されている画像とそうでない画像とで、人体の姿勢およびサイズが同じ状態で写っていることも望まれる。これは、遮蔽状態の有無により検出スコアにどのような変化が生じるかを計測するためである。
【００８６】
まず、物体検出部１０１により、遮蔽状態がない人体の検出スコアＳC,iを算出する。次に、遮蔽パターン毎に人体の検出スコアＳB,iを算出する。そして、遮蔽パターン毎に遮蔽面積と検出スコアとの相関を最小二乗法などにより計算する。遮蔽面積と検出スコアとの相関は、遮蔽パターン毎に異なるため、起こりうる遮蔽状態のパターンを予め想定して遮蔽パターン数のスコア補正辞書を保持しておくのが望ましい。
【００８７】
最後に、遮蔽の状態に応じて予め算出しておいた遮蔽パターンｐにおける補正係数ＳO,pを検出スコアＳB,iに乗算することにより、以下の式（９）に従って検出スコアを計算する。本実施形態では、人体の頭部や顔以外の全身領域において遮蔽が生じることを想定しているため、全身検出器から出力される検出スコアＳB,iにのみ乗算した。一方、構築するシステムによっては、頭部検出器から出力される検出スコアＳF,kや顔検出器から出力される補正スコアＳH,jに、遮蔽状態に応じた補正スコアを乗算してもよい。
【００８８】
【数９】
2014093023.tif 000011
【００８９】
以上のように、遮蔽パターン毎にスコア補正辞書を用意し、検出スコアの補正をすることにより、遮蔽状態であっても精度良く人体検出を行うことができる。
【００９０】
次に、ステップＳ１２０７において、検出スコアが閾値以上のすべての検出結果に対して遮蔽判定を行ったか否かを判定する。この判定の結果、まだ遮蔽判定を行っていない検出結果が残っている場合は、ステップＳ１２０２に戻り、処理を繰り返す。処理を繰り返す場合は、ステップＳ１２０２に戻って前景となる検出結果を選択し直し、検出スコアが閾値未満の検出結果しかなくなった場合は処理を終了する。
【００９１】
図１１は、２人以上の人物が重なって遮蔽が生じている状態の一例を示す図である。図１１に示す例では、一番手前の人体１１００により後方の人体１１０１に遮蔽が生じており、さらに後方の人体１１０２は、２つの人体１１００、１１０１に遮蔽されている。遮蔽領域１１０３は、２つの人体１１００、１１０１の影響により人体１１０２に生じる遮蔽領域を示している。
【００９２】
前述したように、透視投影の原理を踏まえ、ステップＳ１２０１では、物体検出部１０１で出力された全ての検出結果を検出スコアと検出枠のサイズとで大きい順にソートする。この処理により、遮蔽が生じている可能性が低く、かつ遮蔽の原因になる手前の人体１１００を特定することができる。そして、遮蔽の原因になりそうな人体から順に、他の検出結果との遮蔽判定を行う。
【００９３】
また、人体１１０２は人体１１０１の近隣にあり、さらに頭部検出器は人体１１０２の頭部に対して高い検出スコアを出力する。そのため、人体１１０２の頭部の検出スコアが人体１１０１の頭部の検出スコアよりも大きい場合には、人体１１０２の頭部と人体１１０１の全身とが融合したような領域が、人体１１０１の全身の検出結果として出力される。また、人体１１０２は人体１１０１の一部として検出されるため、正しく検出されない。このような誤検出が生じた場合には、本実施形態で説明した遮蔽状態判定方法を用い、人体１１０２に遮蔽状態が生じていると判定する。そして、人体１１０２の頭部のサイズのスケールに合う全身矩形を選択し、かつ人体１１０１の頭部とその全身矩形を検出することによって誤検出を防ぐようにする。
【００９４】
以上のように本実施形態によれば、従来の手法に比べ、検出対象物に遮蔽が存在した場合でも検出スコアを落とさずに検出することができるようになる。また、包含関係により求めた遮蔽領域の面積や遮蔽パターン毎に検出スコアを補正しているので、最終的に出力する検出結果は、従来よりも精度が向上する。さらに、物体検出過程で算出される頭部検出器と全身検出器との出力結果をそのまま利用し、高度で複雑な計算をせずに検出スコアを補正することができる。
【００９５】
（第２の実施形態）
本実施形態では、対象物を複数の移動可能なパーツに分割して検出する検出処理部を用いた場合の遮蔽状態の判定方法、並びに検出スコアの補正方法について説明する。本実施形態においても、検出対象物は人物とし、共通部位は人物の頭部とした例について説明する。ただし、第１の実施形態では、人物が常に直立した状態であることを想定していたが、本実施形態では、前屈みになった前傾姿勢や、しゃがみといった姿勢変化にも対応できる。また、第１の実施形態で説明した内容と同じ構成及び処理については説明を省略する。
【００９６】
なお、本実施形態に係る物体検出装置１０の全体構成は、基本的には第１の実施形態で説明した図１及び図２と同様である。但し、第１の検出処理部２１１〜第ｎの検出処理部２１ｎの検出対象が異なっており、統合結果出力部２５０の処理内容も異なっている。また、本実施形態で使用する検出器としては、頭部検出器と全身検出器とを使用する例について説明する。対象物の小さな姿勢変化などに対応した検出を行うために、例えば、非特許文献６に記載されているようなパーツベースの検出手法が知られている。
【００９７】
図１３は、パーツベースの検出手法を用いた全身検出器を説明する図である。図１３の点線の矩形１３０２は、全身検出器の一つのパーツであり、図１３に示す例では、全身検出器は８個のパーツで構成されている。また、実線の矩形１３０１は、パーツベースの検出の結果得られる全身の検出結果である。
【００９８】
図１３の（Ａ）に示す例と図１３（Ｂ）に示す例とでは、人物の姿勢が異なるため、検出の結果得られる各パーツの位置もそれぞれ異なる。パーツベースの検出結果では、各パーツの検出スコアと位置関係とに基づいて算出される全体としての検出スコアが得られるとともに、図１３に示す実線や破線で表される対象物や各パーツの位置・範囲の情報が得られる。
【００９９】
以下、このようなパーツベースの検出器を用いた場合に、検出結果から頭部の位置を推定（共通部位を推定）する例について説明する。まず、パーツベースの検出器の結果から、第１の共通部位推定部２２１〜第ｎの共通部位推定部２２ｎで頭部の位置を推定する処理について説明する。簡単な場合としては、頭部を検出対象とするパーツが含まれる場合には、その頭部のパーツ位置を頭部の位置の推定結果とすればよい。また、頭部のパーツが推定する頭部範囲と一致しない場合（例えば、頭部から肩までを検出対象としたパーツがある場合）は、第１の実施形態で説明したように、検出結果の頭部パーツから頭部位置を推定すればよい。
【０１００】
一方、図１３に示すように、頭部を明確に示さないパーツ群で検出器が構成されている場合には、複数のパーツの位置情報を用いて頭部の位置を推定することができる。複数のパーツの位置情報から頭部の位置を推定する場合には、各パーツの座標情報を並べたベクトルから、推定する頭部の位置を線形変換により求める。８個のパーツから頭部位置の左上のｘ座標ｘh1を推定する線形変換式としては、例えば以下の式（１０）に示すものを用いて頭部位置を推定する。
【０１０１】
【数１０】
2014093023.tif 000012
【０１０２】
ここで、Ｘpはパーツ座標のベクトルに定数１を追加したものであり、Ｂh1は変換係数ベクトルである。また、ｘpn、ｙpnはそれぞれｎ番目のパーツの中心座標であり、ｂはｘh1座標を求めるためのそれぞれの項の変換係数であり、定数項ｂ0を含む。また、ｗ，ｈはそれぞれ対象物領域（図１３に示す実線の矩形１３０１）の幅、高さである。なお、頭部の推定位置Ｘhを求めるためには、異なる変換係数を用いて同様にｙh1、ｘh2、ｙh2を求めればよい。
【０１０３】
前述した例では、各パーツの中心座標のみから頭部の位置を推定しているが、検出の結果得られる対象物領域（図１３に示す実線の矩形１３０１）の座標情報をパーツ座標ベクトルに加えてもよい。変換係数ベクトルＢは、頭部の正解基準を与えた画像サンプル群と、その画像サンプル群へのパーツベース検出器の検出結果から最小二乗法により求めることができる。頭部位置を推定する方法は、最小二乗法に限定することなく、頭部位置を目的変数、複数のパーツ位置を説明変数として他の回帰分析で求めることもできる。
【０１０４】
また、式（１０）の変換係数ベクトルＢを計算する際に、頭部の正解基準を与える代わりに、人体の体軸（喉元から腰の中心を結んだ直線）を正解基準とする画像サンプル群を与えることにより、複数のパーツ群から体軸を推定することが可能になる。例えば、図１４に示すように、人体を直立した状態から少し前傾にした際の姿勢や、更に屈んだしゃがみの姿勢なども検出することが可能である。この場合、体軸１４０１（喉元と腰の中心とを結ぶ直線）の各点の座標セットＸUは、以下の式（１１）により求めることができる。
【０１０５】
【数１１】
2014093023.tif 000013
【０１０６】
体軸１４０１を推定する際には、図１４（Ａ）の波線の矩形１４０２に示す８個のパーツから頭部の位置を推定する式（１０）に示した線形変換式を用いる。頭部の正解基準の代わりに人体の体軸１４０１（喉元から腰の中心まで）を正解基準として与えた画像サンプル群と、その画像サンプル群へのパーツベース検出器の検出結果とから、頭部の推定と同様に最小二乗法により体軸１４０１を推定することが可能である。体軸を推定する方法は、前述と同様に最小二乗法に限定するものではなく、構築するシステムにおいて好適な手段を用いればよい。更に、頭部や体軸以外にも頭部と体軸とを含む上半身矩形を同様の処理で算出することも可能である。
【０１０７】
ここで、８個のパーツ群のそれぞれの検出器は、図１４（Ｂ）の波線の矩形１４０４に示すように、人体の傾きによってその位置は大きく変動する。そのため、体軸１４０３を精度良く算出するには、人体の様々な傾き（姿勢）毎にカテゴリ分けして、変換係数ベクトルＢを計算しておくとよい。ただし、姿勢のカテゴリを多くすると、姿勢の識別精度は高まる一方で、計算量も増加するため、姿勢のカテゴリ数は計算量とのバランスに応じて設定する。したがって、構築するシステムによって識別したい姿勢のカテゴリ数を決める必要がある。
【０１０８】
＜遮蔽判定方法とスコア補正方法＞
次に、本実施形態における遮蔽判定方法と検出スコアの補正方法とについて説明する。
図１５は、本実施形態における複数のパーツ検出器による頭部の推定結果と体軸の推定結果とから、遮蔽判定を行う事例を説明する図である。人体１５０１、１５０９は、同一の姿勢で同じ人体である。図１５（Ａ）に示す人体１５０１は、前景の人体１５００により部分的に遮蔽されており、図１５（Ｂ）に示す人体１５０９は、前屈みになった前景の人体１５０８により部分的に遮蔽されている。
【０１０９】
まず、図１５（Ａ）において、第１の実施形態で説明した方法により、人体の頭部検出枠（矩形１５０２、１５０５）、及び全身検出枠（矩形１５０３、１５０６）を算出する。そして、本実施形態で前述した方法により、体軸１５０４、１５０７を算出する。ここで、人体１５０１は部分的に遮蔽されているため、検出スコアが低下し、この段階では本来の検出スコアで検出することはできない。
【０１１０】
図１６は、遮蔽領域１６０３の面積と位置とを算出する方法を説明する図である。遮蔽領域１６０３の面積および位置は、図１４に示した８個のパーツ検出器（図１６の点線１６００〜１６０２）と矩形１５０２〜１５０７が示す各種検出結果とから算出する。
【０１１１】
図１６（Ａ）において、体軸１５０４、１５０７は、鉛直上向きを基準としたときの角度が１０度未満である。そのため、前景の人体および後景の人体の姿勢は「どちらも立位である」と想定することができる。この場合は、第１の実施形態で説明した方法により遮蔽領域１６０３の面積および位置を計算する。そして、算出した遮蔽領域と重畳するパーツ検出器（図１６（Ａ）の点線１６００〜１６０２）を８個の中から特定し、人体１５０１の検出スコアを補正する。
【０１１２】
具体的な補正方法は、第１の実施形態で説明した方法と同様に、遮蔽が存在しない画像サンプル群と遮蔽が存在する画像サンプル群とをそれぞれ入力し、どのパーツ検出器が遮蔽されているかで場合分けを行う。そして、どのパーツ検出器が遮蔽された場合にどの程度統合スコアが低下するのかの相関を計算しておく。そして、遮蔽状態に応じた補正係数をかけない場合は、遮蔽領域１６０３によって遮蔽されたパーツ検出器を特定し、そのパーツ検出器が遮蔽されていない場合の出力値を代わりに、パーツ検出器の出力値とすることにより、統合スコアの低下を防ぐ。また、遮蔽が無い場合のパーツの検出スコアを予め算出していなくても、統合スコアが下がらないように適当な定数を代入するなどしてもよい。
【０１１３】
一方、図１５（Ｂ）に示す例では、前傾になっている人体１５０８が直立した人体１５０９を部分的に遮蔽している。図１５（Ｂ）に示す例の場合も、図１５（Ａ）と同様に頭部および全身の検出結果が出力され、体軸１５１０、１５１１が算出されている。
【０１１４】
図１６（Ｂ）に示すように、体軸１５１０は、鉛直上向きを基準とした場合に、角度が１０度以上あるため、第１の実施形態で用いた計算方法をそのまま利用することはできない。そこで、角度が１０度以上の場合は、体軸１５１０の直線を延長し、後景の人体の全身検出枠との交点（ｘU3，ｙU3）を算出する。そして、体軸１５１０を延長した直線と後景の全身検出枠で囲まれる領域とを遮蔽領域１６０４として算出する。
【０１１５】
検出スコアの補正方法については、図１６（Ａ）に示す補正方法と同様に遮蔽領域１６０４と重畳する領域を有するパーツ検出器を特定し、予め計算した遮蔽が無い場合のパーツ検出器の検出スコアを代わりに採用することによって補正を行う。
【０１１６】
本実施形態におけるパーツ検出器は、人体の姿勢が変動することにより、個々の位置及び検出スコアが大きく変化する。そのため、上記のスコア補正を行う際に、姿勢カテゴリ毎にパーツ検出器の移動量と検出スコアとの相関関係を非特許文献６に記載された方法を用いて予め計算しておく必要がある。
【０１１７】
また、体軸１５１０は、人体１５０８の内部を示す直線であるため、実際の遮蔽領域を示すものではない。したがって、厳密に遮蔽領域を推定する必要がある場合は、体軸１５１０の代わりに人体１５０８のエッジ情報を抽出して遮蔽領域を求めてもよい。
【０１１８】
図１７は、本実施形態における遮蔽判定部１０２による処理手順の一例を示すフローチャートである。
まず、ステップＳ１２０１の処理は、第１の実施形態で説明した図１２のステップＳ１２０１の処理とほぼ同一の処理である。
【０１１９】
次に、ステップＳ１７０１において、前景と推定される人体の全身及び頭部の検出結果と、体軸の検出結果とを参照し、前景と推定される人体を選択する。以下、体軸の検出結果をＡUとする。
【０１２０】
次に、ステップＳ１７０２において、後景の人体の全身及び頭部の検出結果と、体軸の検出結果とを参照し、ステップＳ１７０１で選択した人体の検出スコアよりも低く、かつ頭部の検出結果に対応する全身の検出結果が算出されている人体を選択する。以下、体軸の検出結果をＢUとする。このように、本実施形態では、頭部の検出結果及び全身の検出結果の他に、体軸の検出結果も参照している。
【０１２１】
次に、ステップＳ１７０３において、ステップＳ１７０１で参照した前景に存在するであろう人体Ａの体軸ＡUの直線、あるいは体軸ＡUを延長した直線と後景に存在するであろう人体Ｂの全身の検出結果ＢBとの交差判定を行う。この判定の結果、交点がない場合は、遮蔽している物体がないため、ステップＳ１７０１に戻る。
【０１２２】
一方、ステップＳ１７０３の判定の結果、交点がある場合は、ステップＳ１７０４において、鉛直上向きを基準とした体軸ＡUの傾き（角度）を算出する。そして、ステップＳ１７０５において、体軸ＡUの角度が１０度未満であるか否かを判定する。この判定の結果、体軸ＡUの角度が１０度未満である場合は、前景の人体が"立位"の姿勢であると判定できるので、ステップＳ１７０６の処理に移る。一方、体軸ＡUの角度が１０度以上である場合は、前景の人体が"前傾"あるいは"しゃがみ"の姿勢であると判定し、ステップＳ１７０７の処理に移る。ここでは説明を簡単にするために体軸の角度１０度を基準に処理を変えているが、構築するシステムによっては、立位を示す体軸の角度を任意に設定してもよい。
【０１２３】
ステップＳ１７０６においては、前景の人体が立位であると判定し、第１の実施形態で説明した遮蔽領域の計算方法を用いて遮蔽領域の位置と面積を算出する。一方、ステップＳ１７０７において、体軸ＡUあるいは体軸ＡUを延長した直線と全身検出結果ＢBとで囲まれる領域の位置および面積を算出する。
【０１２４】
次に、ステップＳ１７０８において、８個のパーツ検出器の中でどのパーツ検出器が遮蔽されていたかを特定し、遮蔽が無い場合のパーツ検出器の検出スコアに置き換えて統合スコアを補正する。なお、パーツ検出器の検出スコアは予め設定した定数で置き換えるなどしてもよい。ステップＳ１２０７については、図１２のステップＳ１２０７と同様である。
【０１２５】
本実施形態では、後景の人物が立位の場合を例に説明したが、立位以外の前傾やしゃがみといった姿勢でも同様の処理で遮蔽を検出することができる。以上、全身検出器から推定される頭部位置の推定枠を統合する処理については第１の実施形態と同様である。本実施形態では、立位以外の姿勢で遮蔽された場合にも遮蔽の姿勢に応じた検出スコアの補正を行うことができるため、精度良く検出できるようになる。
【０１２６】
（第３の実施形態）
第１及び第２の実施形態では、後景の頭部以外の部位に遮蔽が生じていた場合について説明した。本実施形態では、前景及び後景の人物の頭部、或いは共通部位が重なった場合に、遮蔽を検出する方法について説明する。本実施形態でも、検出対象物は人物とし、推定する共通部位は人物の頭部とする。また、以下の説明では、前景及び後景の人物の頭部が重なっている場合は、遮蔽フラグがＯＮであるものと定義して説明する。また、第１及び第２の実施形態で説明した内容と同じ構成及び処理については説明を省略する。
【０１２７】
図１８は、前景の人体１８００によって後景の人体１８０１が遮蔽されており、かつ両人体の頭部が重なっている場合の検出処理を説明する図である。
図１８に示すような場面において、第１または第２の実施形態で説明した物体検出部１０１を用いて検出処理を行うと、人体が２体あるにも関わらず頭部の検出結果１８０２の１体分しか検出されない。これは、物体検出部１０１の統合処理の結果、検出スコアの低い体軸及び全身の検出結果は、検出スコアの高い頭部と全身及び体軸の検出結果に統合されてしまうためである。
【０１２８】
そこで本実施形態では、統合処理を行う前に体軸の検出結果を利用して頭部同士の重なりの有無を検出し、頭部同士の重なりが在った場合には、物体検出部１０１の統合処理の処理内容を頭部基準から体軸基準に変更する。これは、頭部基準で統合処理すると得られない正しい出力結果を、体軸基準の統合処理に処理内容を変更することによって得られるようにするためである。
【０１２９】
なお、本実施形態のように頭部が重なり合う場合、それぞれの統合スコアはそれほど低下しない。これは、本実施形態ではパーツベースの検出器で物体検出するため、物体の不連続性の影響を特に受けないためである。したがって、本実施形態では頭部の重なりによる遮蔽が生じていても検出スコアの低下は少ないため、検出スコアの補正処理は行わないようにする。ただし、共通部位を頭部以外に設定した場合は、構築するシステムの特性に応じて遮蔽の有無により検出スコアの補正を行ってもよい。
【０１３０】
図１９は、本実施形態における遮蔽判定部１０２による遮蔽判定の処理手順の一例を示すフローチャートである。まず、第２の実施形態で説明した物体検出部１０１の処理により、人体１８００、１８０１の頭部の検出結果１８０２、全身の検出結果１８０３、１８０４、及び体軸１８０５、１８０６がそれぞれ仮に算出されているものとする。また、ステップＳ１２０１、Ｓ１２０７、Ｓ１７０１及びＳ１７０２の処理は、第２の実施形態で説明した図１７の処理と同一の処理であるため、説明は省略する。
【０１３１】
次に、ステップＳ１９０１において、ステップＳ１７０１及びＳ１７０２で参照した人体Ａの体軸ＡUを延長した直線と、人体Ｂの体軸ＢUを延長した直線との交点を算出する。そして、頭部の検出結果１８０２の矩形内部に交点が存在するかどうかを判定する。この判定の結果、交点が矩形内部にない場合は頭部検出の結果で統合処理ができるため、遮蔽フラグはＯＦＦのまま、ステップＳ１９０２に進む。一方、交点が矩形内部にある場合は、各体軸と組になる頭部が重なり合っていると判定し、遮蔽フラグをＯＮにして、ステップＳ１９０３に進む。
【０１３２】
ステップＳ１９０２においては、ステップＳ１９０１で人体Ａおよび人体Ｂの頭部が重なり合っていないと判断できるため、第１及び第２の実施形態で説明した頭部検出結果を含めた統合処理により検出スコアを算出する。
【０１３３】
そして、ステップＳ１９０３においては、人体Ａもしくは人体Ｂの頭部によって、遮蔽状態が生じていると判断できるため、統合処理において頭部検出結果は利用せずに、第２の実施形態で説明した体軸の角度を基準とした統合処理を行う。
【０１３４】
図２０は、統合処理前の頭部および体軸の検出結果の一例を示す図である。図２０において、頭部の検出結果の候補２００１は、検出結果の候補群を示しており、それぞれ体軸１８０６、２００２と対応している。
【０１３５】
第１の実施形態で説明した統合処理を実施すると、頭部の検出結果の候補２００１は、頭部の検出結果１８０２に統合されてしまう。なお、第１の実施形態の統合処理では、検出スコアと頭部の重複度を基準に処理を行うため、頭部が遮蔽された人体１８０１の頭部の検出結果は統合処理によって、人体１８００の頭部の検出結果１８０２に吸収されてしまう。つまり、遮蔽フラグが立つ場合に、頭部を基準にして統合処理を行うと、遮蔽された人体１８０１の頭部、体軸、全身のそれぞれの検出結果が遮蔽している人体１８００の各検出結果に吸収されてしまう。
【０１３６】
そこで本実施形態では、遮蔽フラグがＯＮである場合は、頭部基準から体軸基準に統合処理の基準を変更する。図２０に示すように、体軸２００２も頭部の検出結果１９０１と同様に複数検出されるため、最も高い検出スコアの体軸と各体軸の検出候補の直線とのなす角度を基準に検出結果を統合する。例えば、体軸１８０５と他の体軸の検出結果とを角度基準（例えば閾値を３０度）で比べると、体軸２００２はいずれもなす角が３０度未満なので体軸１８０５に統合される。なお、体軸１８０６は３０度以上なす角に違いがあるため統合されない。また、角度の代わりに体軸の検出結果の端点（喉元および腰の中心座標）を利用し、２直線の距離を基準に統合処理を行ってもよい。
【０１３７】
なお、本実施形態では、遮蔽が生じた場合に検出結果の統合処理によって本来検出される検出結果の候補が、他の結果に吸収されることを防止することを目的とした例外処理である。検出結果によっては遮蔽フラグがＯＮとなる検出候補が多くなる場合もあり、遮蔽フラグがＯＮとなる検出候補の検出スコアの値でソート処理を施し、検出スコアの高い順に予め設定した数（例えば１、２など）の検出結果を検出候補として選択する。検出候補に選択されなかった検出結果は統合処理により削除される。検出候補として残す数は、構築するシステムの環境により設定することが望ましい。
【０１３８】
以上のように本実施形態の統合方法では、前後で違う姿勢を取っている複数の人体に対して体軸の検出結果を活用して頭部の検出結果が重なっていても、その後の統合処理で削除されることなく頑健に人体検出を行うことができる。
【０１３９】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１４０】
１０１  物体検出部
１０２  遮蔽判定部
【図１】
2014093023.tif 000014
【図２】
2014093023.tif 000015
【図３】
2014093023.tif 000016
【図４】
2014093023.tif 000017
【図５】
2014093023.tif 000018
【図６】
2014093023.tif 000019
【図７】
2014093023.tif 000020
【図８】
2014093023.tif 000021
【図９】
2014093023.tif 000022
【図１０】
2014093023.tif 000023
【図１１】
2014093023.tif 000024
【図１２】
2014093023.tif 000025
【図１３】
2014093023.tif 000026
【図１４】
2014093023.tif 000027
【図１５】
2014093023.tif 000028
【図１６】
2014093023.tif 000029
【図１７】
2014093023.tif 000030
【図１８】
2014093023.tif 000031
【図１９】
2014093023.tif 000032
【図２０】
2014093023.tif 000033