(57)【特許請求の範囲】
【請求項１】
画像において人の頭部を検出する方法であって、
深度画像を受信することと、
前記深度画像のピクセルにテンプレートを適用することであって、前記深度画像における人の頭部のロケーションを決定することと、を含み、
前記テンプレートは、円形形状領域と、該円形形状領域を取り囲む第１の環状形状領域とを含み、前記円形形状領域は、第１の複数の深度値を指定し、前記第１の環状形状領域は、第２の複数の深度値を指定し、該第２の複数の深度値は、前記第１の複数の深度値よりも大きな深度値を含み、
前記テンプレートを前記深度画像のピクセルに適用することは、前記深度画像内の複数の前景ピクセルの各々について、前記テンプレートの深度値を、前記前景ピクセルを取り囲む近傍の一群のピクセルの深度値と比較することにより、前記テンプレートを前記深度画像内の複数の前景ピクセルとマッチングすることを含む、
方法。
【請求項２】
前記テンプレートは、前記第１の環状形状領域を取り囲む第２の環状形状領域を指定し、該第２の環状形状領域は、第３の複数の深度値を指定し、該第３の複数の深度値は、前記第２の複数の深度値よりも大きな深度値を含む、請求項１に記載の方法。
【請求項３】
前記第１の複数の深度値は、前記テンプレートにおける前記円形形状領域内に存在する点にのみ関連付けられ、前記第２の複数の深度値は、前記テンプレートにおける前記第１の環状形状領域内に存在する点にのみ関連付けられ、前記第３の複数の深度値は、前記テンプレートにおける前記第２の環状形状領域内に存在する点にのみ関連付けられている、請求項２に記載の方法。
【請求項４】
前記第１の環状形状領域の半径は、前記円形形状領域の半径の１．２５倍の値を有し、前記第２の環状形状領域の半径は、前記第１の環状形状領域の前記半径の前記値の１．２５倍の値を有する、請求項２に記載の方法。
【請求項５】
前記テンプレートの深度値を前記近傍の一群のピクセルの深度値と比較することは、
前記前景ピクセルの第１の一群の近傍ピクセルを前記円形形状領域に関連付けるとともに、前記前景ピクセルの第２の一群の近傍ピクセルを前記第１の環状形状領域に関連付けることと、
前記第１の一群の近傍ピクセルの深度値を前記円形形状領域の深度値と比較することと、
前記第２の一群の近傍ピクセルの深度値を前記第１の環状形状領域の深度値と比較することと、
を含む、請求項１から４のいずれか1項に記載の方法。
【請求項６】
前記深度画像における前記人の頭部の前記ロケーションを決定することは、前記人の頭部に関連付けられた前記深度画像の前景ピクセルを決定することと、前記前景ピクセル上にセンタリングされた円の半径を決定することとを含む、請求項１から５のいずれか１項に記載の方法。
【請求項７】
人の頭部を検出するシステムであって、
深度画像を受信することと、
前記深度画像のピクセルにテンプレートを適用して、前記深度画像における人の頭部のロケーションを決定する処理手段を備え、
前記テンプレートは、円形形状領域と、該円形形状領域を取り囲む第１の環状形状領域とを含み、前記円形形状領域は、第１の複数の深度値を指定し、前記第１の環状形状領域は、第２の複数の深度値を指定し、該第２の複数の深度値は、前記第１の複数の深度値よりも大きな深度値を含み、
前記テンプレートを前記深度画像のピクセルに適用することは、前記深度画像内の複数の前景ピクセルの各々について、前記テンプレートの深度値を、前記前景ピクセルを取り囲む近傍の一群のピクセルの深度値と比較することにより、前記テンプレートを前記深度画像内の複数の前景ピクセルとマッチングすることを含む、
システム。
【請求項８】
前記テンプレートは、前記第１の環状形状領域を取り囲む第２の環状形状領域を指定し、該第２の環状形状領域は、第３の複数の深度値を指定し、該第３の複数の深度値は、前記第２の複数の深度値よりも大きな深度値を含む、請求項７に記載のシステム。
【請求項９】
前記第１の複数の深度値は、前記テンプレートにおける前記円形形状領域内に存在する点にのみ関連付けられ、前記第２の複数の深度値は、前記テンプレートにおける前記第１の環状形状領域内に存在する点にのみ関連付けられ、前記第３の複数の深度値は、前記テンプレートにおける前記第２の環状形状領域内に存在する点にのみ関連付けられている、請求項８に記載のシステム。
【請求項１０】
前記第１の環状形状領域の半径は、前記円形形状領域の半径の１．２５倍の値を有し、前記第２の環状形状領域の半径は、前記第１の環状形状領域の前記半径の前記値の１．２５倍の値を有する、請求項８に記載のシステム。
【請求項１１】
前記テンプレートの深度値を前記近傍の一群のピクセルの深度値と比較するために、前記処理手段は、
前記前景ピクセルの第１の一群の近傍ピクセルを前記円形形状領域に関連付け、
前記前景ピクセルの第２の一群の近傍ピクセルを前記第１の環状形状領域に関連付け、
前記第１の一群の近傍ピクセルの深度値を前記円形形状領域の深度値と比較し、
前記第２の一群の近傍ピクセルの深度値を前記第１の環状形状領域の深度値と比較する、
請求項７から１０のいずれか1項に記載のシステム。
【請求項１２】
前記深度画像における前記人の頭部の前記ロケーションを決定することは、前記人の頭部に関連付けられた前記深度画像の前景ピクセルを決定することと、前記前景ピクセル上にセンタリングされた円の半径を決定することとを含む、請求項７から１１のいずれか１項に記載のシステム。
【請求項１３】
前記深度画像を記憶するデータベースを更に備える請求項７から１２のいずれか１項に記載のシステム。
【請求項１４】
コンピュータにより実行されることにより、請求項１から６のいずれか１項に記載の方法を実行するコンピュータプログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
深度撮像技術は、ここ数年の間に劇的に進歩した。深度画像内のピクセルは、強度又は色という尺度ではなく、シーンにおける較正された深度を示す。深度画像は、人間等の物体のより正確な検出を可能にする。さらに、人の頭部の検出又は定位は、肩、胴、腕、及び脚等の画像内の人体の他の部分の検出を助けることができる。
【０００２】
色に基づく方法及び顔検出器に基づく方法のような人の頭部の位置を特定する現在の手法のほとんどは、色情報又はグレースケール強度情報のいずれかを利用する。その上、顔検出技法は、被写体がカメラの方を向いていないときは役に立たない。肌色検出技法は、身体の他の部分を突き止めるのに役立つ場合があるが、そのような技法は、変動する照明に適応するのが困難である。深度情報にのみ基づいた人体部分検出における最近の試みは、被写体の両手が握られているとき及び／又は被写体の頭部が別の身体部分によって部分的に若しくは完全に遮られているとき（例えば、被写体が前かがみになっているときに起こる場合がある）に問題となる。加えて、物体検出器をトレーニングするのに、従来の深度に基づく技法は、取得するのが困難である詳細な３Ｄの人の姿勢画像を必要とする傾向がある。
【０００３】
本明細書において説明されるマテリアルは、添付した図において、限定としてではなく例として示されている。説明を簡単かつ明瞭にするために、図に示した要素は、必ずしも一律の縮尺で描かれているものではない。例えば、幾つかの要素の寸法は、明瞭にするために、他の要素に比べて誇張されている場合がある。さらに、適切と考えられる場合には、対応する要素又は類似の要素を示すのに、参照符号が図の間で繰り返されている。
【図面の簡単な説明】
【０００４】
【図１】一例示の頭部検出システムの説明図である。
【０００５】
【図２】一例示の頭部検出プロセスのフローチャートである。
【０００６】
【図３】一例示の頭部検出テンプレートを示す図である。
【０００７】
【図４】一例示の頭部検出モデルの説明図である。
【図５】一例示の頭部検出テンプレートを示す図である。
【０００８】
【図６】一例示の頭部検出プロセスのフローチャートである。
【０００９】
【図７】一例示のシステムの説明図であり、上記の図は全て、本開示の少なくとも幾つかの実施態様に従って構成されている。
【発明を実施するための形態】
【００１０】
ここでは、同封された図を参照して１つ若しくは複数の実施形態又は実施態様を説明する。特定の構成及び装置が論述されるが、これは、例示の目的でのみなされていることが理解されるべきである。当業者であれば、この説明の趣旨及び範囲から逸脱することなく他の構成及び配置を用いることができることを認識するであろう。本明細書において説明する技法及び／又は配置は、本明細書において説明するもの以外の他の様々なシステム及びアプリケーションにおいても用いることができることが当業者には明らかであろう。
【００１１】
以下の説明は、例えば、システムオンチップ（ＳｏＣ）アーキテクチャ等のアーキテクチャにおいて顕在化させることができる様々な実施態様を記載しているが、本明細書において説明する技法及び／又は装置の実施態様は、特定のアーキテクチャ及び／又はコンピューティングシステムに制限されるものではなく、同様の目的の任意のアーキテクチャ及び／又はコンピューティングシステムによって実施することができる。例えば複数の集積回路（ＩＣ）チップ及び／又はパッケージを用いる、例えば様々なアーキテクチャ、及び／又はセットトップボックス、スマートフォン等の様々なコンピューティングデバイス及び／又はコンシューマ家電（ＣＥ）デバイスが、本明細書において説明する技法及び／又は装置を実施することができる。さらに、以下の説明は、システム構成要素のロジックの実施態様、タイプ、及び相互関係、ロジックの分割／統合の選択肢等の多数の特定の詳細を記載している場合があるが、特許請求される主題は、そのような特定の詳細がなくても実施することができる。それ以外の場合に、例えば、制御構造及び全ソフトウェア命令シーケンス等の幾つかのマテリアルは、本明細書に開示するマテリアルを分かりにくくしないように詳細に示されていない場合がある。
【００１２】
本明細書に開示するマテリアルは、ハードウェア、ファームウェア、ソフトウェア、又はそれらの任意の組み合わせで実施することができる。本明細書に開示するマテリアルは、１つ又は複数のプロセッサが読み出して実行することができる機械可読媒体上に記憶された命令として実施することもできる。機械可読媒体は、機械（例えば、コンピューティングデバイス）によって可読な形態で情報を記憶又は伝送するための任意の媒体及び／又はメカニズムを含むことができる。例えば、機械可読媒体は、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、電気的形態、光学的形態、音響的形態、又は他の形態の伝播信号（例えば、搬送波、赤外線信号、デジタル信号等）等を含むことができる。
【００１３】
本明細書において「１つの実施態様」、「一実施態様」、「一例示の実施態様」等というとき、これは、説明される実施態様が、特定の特徴、構造、又は特性を含む場合があるが、あらゆる実施態様が、その特定の特徴、構造、又は特性を必ずしも含むとは限らないことを示す。その上、そのようなフレーズは、必ずしも同じ実施態様を指しているとは限らない。さらに、特定の特徴、構造、又は特性が一実施態様に関して説明されているとき、本明細書において明示的に説明されているか否かを問わず、他の実施態様に関してもそのような特徴、構造、又は特性が有効であることが当業者には知られていると考えられる。
【００１４】
図１は、本開示による一例示のシステム１００を示している。様々な実施態様では、システム１００は、頭部検出モジュール１０２、データベース１０４、及びネットワーク１０６を備えることができる。以下でより詳細に説明するように、検出モジュール（ＨＤＭ）１０２は、前景部分１１０（例えば、人間の画像の形態）、及び背景部分１１２を含む深度画像１０８を受信することができる。様々な実施態様では、様々なよく知られた技法（例えば、Azriel Rosenfeld及びJohn L. Pfaltz「Sequential Operations in Digital Picture Processing」（J. ACM, vol. 13, no. 4, pp. 471-494, October 1966）参照）を用いて深度画像１０８を前処理し、画像１０８を前景部分１１０及び背景部分１１２にセグメンテーションしておくことができ、及び／又は前景部分１１０を人体の画像として識別しておくことができる。
【００１５】
様々な実施態様では、ＨＤＭ１０２は、深度画像１０８及び頭部テンプレート１１４を受信することができる。ＨＤＭ１０２は、次に、以下でより詳細に説明する頭部検出プロセスを適用して、テンプレート１１４を用いて深度画像１０８内の人の頭部を検出してその位置を特定することができる。様々な実施態様では、ＨＤＭ１０２は、深度画像１０８を直接受信することができ、深度画像１０８をネットワーク１０６を介して受信することができ、及び／又は深度画像１０８をデータベース１０４から直接若しくはネットワーク１０６を介して受信することができる。同様の可能性は、頭部テンプレートの受信にも当てはまる。様々な実施態様では、ＨＤＭ１０２は、データベース１０４に直接又はネットワーク１０６を介して記憶される、検出された頭部の中心に対応する深度画像内のピクセルロケーションと、検出された頭部の半径値とを含む、頭部検出プロセスの結果を提供することができる。
【００１６】
様々な実施態様では、深度画像１０８は、クロミナンス強度データ値及び／又はルミナンス強度データ値と、深度データ値とを指定するピクセルを含むモノクロ深度画像又はカラー深度画像とすることができる。例えば、深度画像は、画像ピクセル位置（ｘ，ｙ）における画像強度値（例えば、ルミナンス値）の２次元（２Ｄ）アレイを含むことができ、各ピクセル位置は深度（ｚ）値も含む。さらに、深度画像１０８は、任意の解像度及び／又はアスペクト比を有することができる。本開示は、深度画像１０８に関連付けられたどの特定のデータフォーマット、画像解像度、画像アスペクト比等にも限定されるものではない。加えて、ネットワーク１０６は、任意のタイプのネットワークとすることができ、無線及び／又は有線のネットワーク技術の任意の組み合わせを含むことができる。例えば、非限定的な例では、ネットワーク１０６は、インターネット等のワイドエリアネットワーク（ＷＡＮ）と組み合わせた１つ又は複数の無線ローカルエリアネットワーク（ＬＡＮ）を含むことができる。
【００１７】
ＨＤＭ１０２は、任意のコンピューティングシステムによって提供することができる。例えば、深度画像１０８のキャプチャも行ったコンピューティングシステムが、ＨＤＭ１０２を提供することができる。他の実施態様では、ＨＤＭ１０２は、画像１０８をキャプチャした任意のデバイスに対してリモートとすることができる。例えば、リモートサーバーコンピューティングシステムの１つ又は複数のプロセッサコアが、ＨＤＭ１０２を提供することができる。さらに、ハードウェアロジック、ソフトウェアロジック、及び／又はファームウェアロジック、又はそれらの任意の組み合わせを含む任意のタイプのロジックが、ＨＤＭ１０２を提供することができる。
【００１８】
図２は、本開示の様々な実施態様による、深度画像において頭部を検出するための一例示のプロセス２００のフロー図を示している。プロセス２００は、図２のブロック２０２、２０４、２０６、２０８、２１０、及び２１２のうちの１つ又は複数によって示される１つ又は複数の動作、機能、又はアクションを含むことができる。非限定的な例として、本明細書では、プロセス２００は、図１の例示のシステム１００を参照して説明される。
【００１９】
プロセス２００は、深度画像１０８内の前景ピクセルを選択することができるブロック２０２において開始することができる。例えば、図１を参照すると、ブロック２０２の深度画像１０８をよく知られた技法を用いて前処理して、深度画像のピクセルを、背景部分１１２又は前景部分１１０のいずれかに属するものとして指定しておくことができる。加えて、この前処理は、部分１１０を人体として識別しておくことができる。このように、ブロック２０２は、前景部分１１０からピクセルを選択することを含むことができる。
【００２０】
ブロック２０４において、ブロック２０２において選択された前景ピクセルが身体境界に隣接しているか否かについての判断を行うことができる。例えば、図１において、身体境界線１２０内に存在するピクセル１１８は、前景ピクセルとして指定されるのに対して、身体境界線１２０の外側に存在するピクセル１２２は、背景ピクセルとして指定される。次に、ブロック２０４は、選択された前景ピクセルが身体境界の近くにあるか又は身体境界に接しているか否かを判断することを含むことができる。様々な非限定的な実施態様では、ブロック２０２において選択された前景ピクセルを身体境界から離れたピクセルが水平方向又は垂直方向に２つ以上存在する場合、当該選択された前景ピクセルは、身体境界に隣接していないと指定することができる。
【００２１】
ブロック２０４の結果、ブロック２０２において選択されたピクセルが身体境界に隣接していると判断された場合、プロセス２００は、ブロック２０２にループバックすることができ、次の前景ピクセルを選択することができ、そのピクセルを用いて、ブロック２０４の別の反復に着手することができる。一方、ブロック２０４の結果、ブロック２０２において選択されたピクセルが身体境界に隣接していないと判断された場合、プロセス２００は、ブロック２０６に続くことができ、このブロックにおいて、選択された前景ピクセルに頭部テンプレート１１４を適用してテンプレートマッチングを実行することができる。
【００２２】
様々な実施態様では、ブロック２０６において適用された頭部テンプレート１１４は、当該テンプレート内の各点が深度画像内の１つのピクセルロケーションに対応するように、深度画像１０８のピクセルアレイのピッチと一致するピッチ及び向きを有する点のアレイを含むことができる。他の実施態様では、頭部テンプレート１１４のピッチは、深度画像のピッチの整数倍とすることができる。加えて、頭部テンプレートは、任意のサイズ及び／又は形状を有することができる。
【００２３】
さらに、頭部テンプレートのサイズは、頭部テンプレート１１４が深度画像１０８に適用されるように適合することができる。例えば、以下の非限定的な例示の実施態様では、頭部テンプレート１１４は、画像１０８に適用されるとき、深度画像１０８内の９つのピクセルロケーションに及ぶのに十分な初期直径を有するとともに合計５３個の点を有する直径の円形形状アレイとして説明することができるが、頭部テンプレート１１４は、任意の数のピクセルに及ぶことができるように直径が変化することができる。図３は、本開示の様々な実施態様による一例示の頭部テンプレート１１４の全体形状３００を示している。この例では、テンプレート１１４は、形状が円形であり、５３個の点３０２（中心点３０４を含む）のアレイを含むような初期半径Ｒを有する。ここで、アレイ３０２は、画像１０８のピクセルアレイと同じピッチ及び向きを有する。
【００２４】
様々な実施態様では、頭部テンプレート１１４は、投影モデルを基準にして作成することができる。例えば、図４は、本開示の様々な実施態様による基準投影モデル４００を示している。図４は、モデル４００の２つのビュー４０２及び４０４を示している。ビュー４０２では、半径Ｒを有するとともに人の頭部をモデル化した球形物体４０６が、例えば、深度画像１０８の画像平面を表すビュー平面４０８に対して側面から見たように示されている。ビュー４０４では、物体４０６は、ビュー平面４１０の視点から示されている。ビュー４０２及び４０４の双方において、縦座標Ｚ（ビュー平面４１０に対して直交している）は、ビュー平面４１０からの増加する深度又距離を表す。
【００２５】
図４は、物体４０６の表面上の幾つかの点Ａ、Ｂ、及びＣと、ビュー平面４１０上のそれらの点の対応する投影Ａ'、Ｂ'、及びＣ'とを示している。点Ｃは、ビュー平面４１０に対する物体４０６上の最も近い点を表し、点Ａは、最も遠い可視点を表し、点Ｂは、点Ａと点Ｃとの間の中間の深度又は距離を有するロケーションを表している。投影点Ｂ'とＣ'との間の距離はｒによって示されている。距離ＡＡ'がＭであると仮定すると、距離ＣＣ'はＭ−Ｒであり、Ｂ'に関連付けられた深度値は、以下の式を用いて計算することができる。
【数１】
0005785664.tif 000002
式（１）を用いると、深度画像のビュー平面４１０上に投影された球の表面上の任意の点の深度、したがって、深度画像ビュー平面上のその点の投影に関連付けられた深度値を決定することができる。
【００２６】
しかしながら、一般に、深度画像における人の頭部の中心部分の方が画像ビュー平面に近く、頭部の周縁部分の方がビュー平面から幾分遠いこと、及び画像の背景部分（例えば、頭部でない身体部分、背景物体等）の方が、ビュー平面から更に離れていることを認識することができる。これを考慮に入れると、様々な実施態様による頭部テンプレートは、各円に関連付けられた異なる深度値を有する３つの同心領域を含むように指定することができる。
【００２７】
例えば、様々な実施態様では、頭部テンプレート２０７の構造は、３つの同心円形状領域及び／又は環状形状領域のセットとして指定することができる。図５は、本開示の様々な実施態様による深度画像平面の視点から見た頭部テンプレートモデル５００を示している。例えば、頭部テンプレート１１４は、頭部テンプレートモデル５００に基づくことができる。図５に示すように、頭部テンプレートモデル５００は、円内部領域（ＩＲ）５０２、環状形状中央領域（ＭＲ）５０４、及び環状形状外部領域（ＯＲ）５０６の３つの領域を備える。
【００２８】
一般に、人の頭部は、８０ｍｍ〜１５０ｍｍの範囲の半径ＲＨを有することができる。画像ビュー平面における頭部の半径の投影は、Ｒｐで示すことができる。モデル５００において、内部領域ＩＲは、頭部の中心を表し、Ｒｃ＝（４／５）・Ｒｐの半径を有し、環状形状中央領域ＭＲは、頭部の周縁領域を表し、環状形状外部領域ＯＲは、頭部に隣接する領域を表し、（５／４）・Ｒｐの半径を有する。換言すれば、領域ＭＲは、領域ＩＲの半径の１．２５倍の大きさの半径を有することができ、さらに、領域ＯＲは、領域ＭＲの半径の１．２５倍の大きさの半径を有することができる。
【００２９】
Ｍ（ｘ，ｙ）がモデルの中心を表すものとすると、Ｍ（ｉ，ｊ）は、Ｍ（ｘ，ｙ）までの距離を
【数２】
0005785664.tif 000003
によって提供することができるモデル上の点を表す。以下の式は、異なる領域ＩＲ、ＭＲ、及びＯＲ内の任意の点Ｍ（ｉ，ｊ）の深度値を決定するのに用いることができる。
【数３】
0005785664.tif 000004
式中、Ｎｕｍ（Ｘ）は、対応する領域Ｘ内のテンプレート点の総数を表す。
【００３０】
ブロック２０６の論述を続けると、テンプレートマッチングは、頭部テンプレートを選択されたピクセルロケーション（例えば、テンプレートモデルにおける点Ｍ（ｘ，ｙ）に対応する）上にセンタリングし、次いで、選択されたピクセルの近傍のピクセルの深度値を、それぞれ式（２）、（３）、及び（４）を用いて求められた異なる領域ＩＲ（５０２）、ＭＲ（５０４）、及びＯＲ（５０６）内のテンプレート深度値と比較することによって、頭部テンプレートを選択された前景ピクセルに適用することを含むことができる。
【００３１】
図６は、本開示の様々な実施態様によるプロセス２００のブロック２０６のフロー図６００を更に詳細に示している。プロセス６００は、図６のブロック６０２、６０４、６０６、６０８、及び６１０のうちの１つ又は複数によって示されているような１つ又は複数の動作、機能、又は行為を含むことができる。
【００３２】
プロセス６００は、頭部テンプレート１１４を選択された前景ピクセル６０１上にセンタリングすることができるブロック６０２において開始することができる。ブロック６０４において、前景ピクセル６０１（以下、Ｉ（ｉ，ｊ）で示す）について、テンプレート半径を最小値（ｍｉｎＲ）から最大値（ｍａｘＲ）に所定のステップサイズで変更させ、以下の式を用いてサンプル半径Ｒｐを決定することができる。
【数４】
0005785664.tif 000005
式中、閾値ｔｈｉｎｎｅｒ、ｔｈｍｉｄ、及びｔｈの値が、サンプル半径を決定する。
【００３３】
ブロック６０４において求められたサンプル半径を用いると、プロセス６００は、選択された前景ピクセルの近傍のピクセル（ピクセル
【数５】
0005785664.tif 000006
に対応する）を異なるテンプレート領域に関連付けるか又は異なるテンプレート領域間に分割することができるブロック６０６に続くことができる。様々な実施態様では、ブロック６０６は、以下の式を用いて着手することができる。
【数６】
0005785664.tif 000007
【００３４】
ブロック６０８において、マッチングスコアは、複数の異なる領域に関連付けられたテンプレート深度値と、選択された前景ピクセル及び式（６）を用いて領域に関連付けられた近傍ピクセルの深度値とに基づいて決定することができる。様々な実施態様では、ブロック６０８は、以下の式を用いて着手することができる。
【数７】
0005785664.tif 000008
式中、
【数８】
0005785664.tif 000009
である。プロセス６００は、次に、マッチングスコア（Ｈ（ｘ，ｙ））及びサンプルテンプレート半径（Ｒｐ）を選択された前景ピクセル６０１用に提供することができるブロック６１０において終了することができる。
【００３５】
図２の論述に戻って、プロセス２００は、ブロック２０６においてテンプレートマッチングを実行すると、処理するための追加の前景ピクセルを選択するか否かの判断を伴うブロック２０８に続くことができる。例えば、プロセス２００は、深度画像１０８内の全ての前景ピクセルについて着手することができる。したがって、処理するための追加の前景ピクセルが残っている場合、ブロック２０８の結果、判断は肯定的になる場合があり、プロセス２００は、ループバックして、別の前景ピクセルについてブロック２０２〜２０６に着手することができる。
【００３６】
一方、ブロック２０８の結果、判断が否定的になった場合、プロセス２００は、ブロック２１０に続くことができ、このブロックにおいて、頭部のロケーション及び半径を識別することができる。様々な実施態様では、ブロック２１０は、ブロック２０６において処理された前景ピクセルごとに求められた全てのマッチングスコア（Ｈ（ｘ，ｙ））を比較することと、以下の形態を有する最も高い又は最もよく一致したスコアを識別することとを含むことができる。
【数９】
0005785664.tif 000010
検出された頭部のロケーションの中心は、この場合、最も高い又は最もよく一致したスコアを有する前景ピクセルのロケーションに対応することができ、関連付けられた半径Ｒｐは、検出された頭部の半径に対応し得る。
【００３７】
プロセス２００は、次に、頭部のロケーション及び半径の値を記憶することができるブロック２１２において終了することができる。例えば、頭部検出モジュール１０２は、ブロック２０２〜２１０に着手すると、頭部のロケーション及び半径の値をデータベース１０４に記憶することができる。
【００３８】
様々な実施態様では、プロセス２００は、深度画像の前景部分にわたってテンプレートをスキャンすることによって、一連の前景ピクセルに対して実行することができる。幾つかの実施態様では、そのようなスキャンは、画像の各前景ピクセルをスキャンすることを含むことができる。他の実施態様では、そのようなスキャンは、一部の前景ピクセルのみが処理されるスパースグリッド手法を用いて着手することができる。例えば、様々な非限定的な例では、１つおきの前景ピクセルのみ、５つごとの前景ピクセルのみ、１０個ごとの前景ピクセルのみ等を、プロセス２００を用いてサンプリング又は処理することができる。
【００３９】
図２及び図６に示すような例示のプロセス２００及び６００の実施態様は、示された順序で図示した全てのブロックを行うことを含むことができるが、本開示は、この点に限定されるものではなく、様々な例では、プロセス２００及び６００の実施態様は、図示した全てのブロックのサブセットのみを行うこと、及び／又は示したものとは異なる順序で行うことを含むことができる。
【００４０】
加えて、図２及び図６のプロセス及び／又はブロックのうちの任意の１つ又は複数は、１つ又は複数のコンピュータープログラム製品によって提供される命令に応答して行うことができる。そのようなプログラム製品は、例えば、１つ又は複数のプロセッサコアによって実行されると、本明細書において説明した機能を提供することができる命令を提供する信号担持媒体を含むことができる。コンピュータープログラム製品は、任意の形式のコンピューター可読媒体において提供することができる。したがって、例えば、１つ又は複数のプロセッサコアを含むプロセッサは、コンピューター可読媒体によってプロセッサに搬送される命令に応答して、図２及び図６に示すブロックのうちの１つ又は複数を行うことができる。
【００４１】
図７は、本開示による一例示のシステム７００を示している。システム７００は、本明細書において議論した様々な機能の一部又は全てを実行するのに用いることができ、本開示の様々な実施態様による、本明細書において開示したプロセスを実施することができる任意のデバイス又はデバイスの集合体を備えることができる。例えば、システム７００は、デスクトップ、移動コンピューター又はタブレットコンピューター、スマートフォン、セットトップボックス等のコンピューティングプラットフォーム又はデバイスの選択された構成要素を含むことができるが、本開示は、この点に限定されるものではない。幾つかの実施態様では、システム７００は、ＣＥデバイス用のＩｎｔｅｌ（登録商標）アーキテクチャ（ＩＡ）に基づくコンピューティングプラットフォーム又はＳｏＣとすることができる。本明細書において説明した実施態様は、本開示の範囲から逸脱することなく、代替の処理システムとともに用いることができることが当業者によって容易に認識されるであろう。
【００４２】
システム７００は、１つ又は複数のプロセッサコア７０４を有するプロセッサ７０２を備える。プロセッサコア７０４は、少なくとも部分的にソフトウェアを実行し及び／又はデータ信号を処理することができる任意のタイプのプロセッサロジックとすることができる。様々な例では、プロセッサコア７０４は、ＣＩＳＣプロセッサコア、ＲＩＳＣマイクロプロセッサコア、ＶＬＩＷマイクロプロセッサコア、及び／又は命令セットの任意の組み合わせを実装する任意の数のプロセッサコア、又はデジタル信号プロセッサ若しくはマイクロコントローラー等の他の任意のプロセッサデバイスを含むことができる。
【００４３】
プロセッサ７０２は、例えば、ディスプレイプロセッサ７０８及び／又はグラフィックスプロセッサ７１０によって受信された命令を制御信号及び／又はマイクロコードエントリーポイントにデコードするのに用いることができるデコーダー７０６も備える。コア（複数の場合もある）７０４とは別個の構成要素としてシステム７００に示されているが、当業者であれば、コア（複数の場合もある）７０４のうちの１つ又は複数が、デコーダー７０６、ディスプレイプロセッサ７０８、及び／又はグラフィックスプロセッサ７１０を実施することができることを認識することができる。幾つかの実施態様では、プロセッサ７０２は、図２及び図６に関して説明した例示のプロセスを含む、本明細書において説明したプロセスのうちの任意のものを行うように構成することができる。さらに、制御信号及び／又はマイクロコードエントリーポイントに応答して、デコーダー７０６、ディスプレイプロセッサ７０８、及び／又はグラフィックスプロセッサ７１０は、対応する動作を実行することができる。
【００４４】
処理コア（複数の場合もある）７０４、デコーダー７０６、ディスプレイプロセッサ７０８、及び／又はグラフィックスプロセッサ７１０は、システム相互接続７１６を通じて互いに及び／又は様々な他のシステムデバイスと通信可能に及び／又は動作可能に結合することができる。これらの様々な他のシステムデバイスは、例えば、メモリコントローラー７１４、オーディオコントローラー７１８、及び／又は周辺装置７２０を含むことができるが、これらに限定されるものではない。周辺装置７２０は、例えば、統一シリアルバス（ＵＳＢ：unified serial bus）ホストポート、周辺機器相互接続（ＰＣＩ）エクスプレスポート、シリアル周辺インターフェース（ＳＰＩ）インターフェース、拡張バス、及び／又は他の周辺装置を含むことができる。図７は、相互接続７１６によってデコーダー７０６並びにプロセッサ７０８及び７１０に結合されたものとしてメモリコントローラー７１４を示しているが、様々な実施態様では、メモリコントローラー７１４は、デコーダー７０６、ディスプレイプロセッサ７０８、及び／又はグラフィックスプロセッサ７１０に直接結合することができる。
【００４５】
幾つかの実施態様では、システム７００は、図７に図示していない様々なＩ／ＯデバイスとＩ／Ｏバス（同様に図示せず）を介して通信することができる。そのようなＩ／Ｏデバイスは、例えば、ユニバーサル非同期受信機／送信機（ＵＡＲＴ）デバイス、ＵＳＢデバイス、Ｉ／Ｏ拡張インターフェース、又は他のＩ／Ｏデバイスを含むことができるが、これらに限定されるものではない。様々な実施態様では、システム７００は、移動通信、ネットワーク通信、及び／又は無線通信を行うためのシステムの少なくとも一部分を表すことができる。
【００４６】
システム９００は、メモリ７１２を更に備えることができる。メモリ７１２は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）デバイス、スタティックランダムアクセスメモリ（ＳＲＡＭ）デバイス、フラッシュメモリデバイス、又は他のメモリデバイス等の１つ又は複数のディスクリートメモリ構成要素とすることができる。図７は、プロセッサ７０２の外部のものとしてメモリ７１２を示しているが、様々な実施態様では、メモリ７１２は、プロセッサ７０２の内部とすることができる。メモリ７１２は、図２及び図６に関して説明した例示のプロセスを含む、本明細書において説明したプロセスのうちの任意のものを行う際に、プロセッサ７０２が実行することができるデータ信号によって表される命令及び／又はデータを記憶することができる。例えば、メモリ７１２は頭部テンプレート深度値、検出された頭部のロケーション及び半径、等を記憶することができる。幾つかの実施態様では、メモリ７１２は、システムメモリ部分及びディスプレイメモリ部分を含むことができる。
【００４７】
本明細書において記載された或る特定の特徴を様々な実施態様に関して説明してきたが、この説明は、限定的な意味に解釈されることを意図するものではない。したがって、本開示が関係する技術分野の当業者に明らかである、本明細書において説明した実施態様及び他の実施態様の様々な変更は、本開示の趣旨及び範囲内にあるとみなされる。ここで、本発明の実施態様の例を示す。
［項目１］
画像において人の頭部を検出するコンピューターにより実行される方法であって、
深度画像を受信することと、
深度画像のピクセルにテンプレートを適用することであって、深度画像における人の頭部のロケーションを決定することと、
を含み、テンプレートは、円形形状領域と、該円形形状領域を取り囲む第１の環状形状領域とを含み、円形形状領域は、第１の複数の深度値を指定し、第１の環状形状領域は、第２の複数の深度値を指定し、該第２の複数の深度値は、第１の複数の深度値よりも大きな深度値を含む、方法。
［項目２］
テンプレートは、第１の環状形状領域を取り囲む第２の環状形状領域を指定し、該第２の環状形状領域は、第３の複数の深度値を指定し、該第３の複数の深度値は、第２の複数の深度値よりも大きな深度値を含む、項目１に記載の方法。
［項目３］
第１の複数の深度値は、テンプレートにおける円形形状領域内に存在する点にのみ関連付けられ、第２の複数の深度値は、テンプレートにおける第１の環状形状領域内に存在する点にのみ関連付けられ、第３の複数の深度値は、テンプレートにおける第２の環状形状領域内に存在する点にのみ関連付けられている、項目２に記載の方法。
［項目４］
第１の環状形状領域の半径は、円形形状領域の半径の１．２５倍の値を有し、第２の環状形状領域の半径は、第１の環状形状領域の半径の値の１．２５倍の値を有する、項目２に記載の方法。
［項目５］
第１の環状形状領域は、円形形状領域に対して同心円状に配置されている、項目１に記載の方法。
［項目６］
テンプレートを深度画像のピクセルに適用することは、テンプレートを深度画像内の複数の前景ピクセルとマッチングすることを含む、項目１に記載の方法。
［項目７］
テンプレートを深度画像内の複数の前景ピクセルとマッチングすることは、前景ピクセルのスパースグリッドにわたってテンプレートをスキャンすることを含む、項目６に記載の方法。
［項目８］
テンプレートを複数の前景ピクセルとマッチングすることは、各前景ピクセルについて、テンプレートの深度値を、前景ピクセルを取り囲む近傍の一群のピクセルの深度値と比較することを含む、項目６に記載の方法。
［項目９］
テンプレートの深度値を近傍の一群のピクセルの深度値と比較することは、
前景ピクセルの第１の一群の近傍ピクセルを円形形状領域に関連付けるとともに、前景ピクセルの第２の一群の近傍ピクセルを第１の環状形状領域に関連付けることと、
第１の一群の近傍ピクセルの深度値を円形形状領域の深度値と比較することと、
第２の一群の近傍ピクセルの深度値を第１の環状形状領域の深度値と比較することと、
を含む、項目８に記載の方法。
［項目１０］
深度画像における人の頭部のロケーションを決定することは、人の頭部に関連付けられた深度画像の前景ピクセルを決定することと、前景ピクセル上にセンタリングされた円の半径を決定することとを含む、項目１に記載の方法。
［項目１１］
システムであって、
プロセッサと、該プロセッサに結合されたメモリと備え、該メモリ内の命令は、
深度画像を受信することと、
深度画像のピクセルにテンプレートを適用して、深度画像における人の頭部のロケーションを決定する、適用することと、
を行うようにプロセッサを構成し、テンプレートは、円形形状領域と、該円形形状領域を取り囲む第１の環状形状領域とを含み、円形形状領域は、第１の複数の深度値を指定し、第１の環状形状領域は、第２の複数の深度値を指定し、該第２の複数の深度値は、第１の複数の深度値よりも大きな深度値を含む、システム。
［項目１２］
テンプレートは、第１の環状形状領域を取り囲む第２の環状形状領域を指定し、該第２の環状形状領域は、第３の複数の深度値を指定し、該第３の複数の深度値は、第２の複数の深度値よりも大きな深度値を含む、項目１１に記載のシステム。
［項目１３］
第１の複数の深度値は、テンプレートにおける円形形状領域内に存在する点にのみ関連付けられ、第２の複数の深度値は、テンプレートにおける第１の環状形状領域内に存在する点にのみ関連付けられ、第３の複数の深度値は、テンプレートにおける第２の環状形状領域内に存在する点にのみ関連付けられている、項目１２に記載のシステム。
［項目１４］
第１の環状形状領域の半径は、円形形状領域の半径の１．２５倍の値を有し、第２の環状形状領域の半径は、第１の環状形状領域の半径の値の１．２５倍の値を有する、項目１２に記載のシステム。
［項目１５］
第１の環状形状領域は、円形形状領域に対して同心円状に配置されている、項目１１に記載のシステム。
［項目１６］
テンプレートを深度画像のピクセルに適用することは、テンプレートを深度画像内の複数の前景ピクセルとマッチングすることを含む、項目１１に記載のシステム。
［項目１７］
テンプレートを深度画像内の複数の前景ピクセルとマッチングすることは、前景ピクセルのスパースグリッドにわたってテンプレートをスキャンすることを含む、項目１６に記載のシステム。
［項目１８］
テンプレートを複数の前景ピクセルとマッチングすることは、各前景ピクセルについて、テンプレートの深度値を、前景ピクセルを取り囲む近傍の一群のピクセルの深度値と比較することを含む、項目１６に記載のシステム。
［項目１９］
テンプレートの深度値を近傍の一群のピクセルの深度値と比較することをプロセッサに行うように構成する命令は、
前景ピクセルの第１の一群の近傍ピクセルを円形形状領域に関連付けることと、
前景ピクセルの第２の一群の近傍ピクセルを第１の環状形状領域に関連付けることと、
第１の一群の近傍ピクセルの深度値を円形形状領域の深度値と比較することと、
第２の一群の近傍ピクセルの深度値を第１の環状形状領域の深度値と比較することと、
を行うようにプロセッサを構成する命令を含む、項目１８に記載のシステム。
［項目２０］
深度画像における人の頭部のロケーションを決定することは、人の頭部に関連付けられた深度画像の前景ピクセルを決定することと、前景ピクセル上にセンタリングされた円の半径を決定することとを含む、項目１１に記載のシステム。
［項目２１］
深度画像を記憶するデータベースを更に備える、項目１１に記載のシステム。
［項目２２］
デバイスであって、
深度画像を受信し、
深度画像のピクセルにテンプレートを適用して、深度画像における人の頭部のロケーションを決定する、頭部検出モジュール（ＨＤＭ）を備え、テンプレートは、円形形状領域と、該円形形状領域を取り囲む第１の環状形状領域とを含み、円形形状領域は、第１の複数の深度値を指定し、第１の環状形状領域は、第２の複数の深度値を指定し、該第２の複数の深度値は、第１の複数の深度値よりも大きな深度値を含む、デバイス。
［項目２３］
テンプレートは、第１の環状形状領域を取り囲む第２の環状形状領域を指定し、該第２の環状形状領域は、第３の複数の深度値を指定し、該第３の複数の深度値は、第２の複数の深度値よりも大きな深度値を含む、項目２２に記載のデバイス。
［項目２４］
第１の環状形状領域の半径は、円形形状領域の半径の１．２５倍の値を有し、第２の環状形状領域の半径は、第１の環状形状領域の半径の値の１．２５倍の値を有する、項目２３に記載のデバイス。
［項目２５］
テンプレートを深度画像のピクセルに適用するのに、ＨＤＭは、
深度画像の前景ピクセルの第１の一群の近傍ピクセルを円形形状領域に関連付け、
前景ピクセルの第２の一群の近傍ピクセルを第１の環状形状領域に関連付け、
第１の一群の近傍ピクセルの深度値を円形形状領域の深度値と比較し、
第２の一群の近傍ピクセルの深度値を第１の環状形状領域の深度値と比較する、
ように構成されている、項目２２に記載のデバイス。
［項目２６］
コンピュータープログラム製品を含む物品であって、実行されると、
深度画像を受信する命令と、
深度画像のピクセルにテンプレートを適用する命令であって、深度画像における人の頭部のロケーションを求める命令とが記憶され、テンプレートは、円形形状領域と、該円形形状領域を取り囲む第１の環状形状領域とを含み、円形形状領域は、第１の複数の深度値を指定し、第１の環状形状領域は、第２の複数の深度値を指定し、該第２の複数の深度値は、第１の複数の深度値よりも大きな深度値を含む、コンピュータープログラム製品を含む物品。
［項目２７］
テンプレートは、第１の環状形状領域を取り囲む第２の環状形状領域を指定し、該第２の環状形状領域は、第３の複数の深度値を指定し、該第３の複数の深度値は、第２の複数の深度値よりも大きな深度値を含む、項目２６に記載の物品。
［項目２８］
第１の環状形状領域の半径は、円形形状領域の半径の１．２５倍の値を有し、第２の環状形状領域の半径は、第１の環状形状領域の半径の値の１．２５倍の値を有する、項目２７に記載の物品。
［項目２９］
深度画像のピクセルにテンプレートを適用する命令は、実行されると、
深度画像の前景ピクセルの第１の一群の近傍ピクセルを円形形状領域に関連付ける命令と、
前景ピクセルの第２の一群の近傍ピクセルを第１の環状形状領域に関連付ける命令と、
第１の一群の近傍ピクセルの深度値を円形形状領域の深度値と比較する命令と、
第２の一群の近傍ピクセルの深度値を第１の環状形状領域の深度値と比較する命令と、
を含む、項目２６に記載の物品。
［項目３０］
深度画像における人の頭部のロケーションを決定することは、人の頭部に関連付けられた深度画像の前景ピクセルを決定することと、前景ピクセル上にセンタリングされた円の半径を決定することとを含む、項目２６に記載の物品。
【図１】
0005785664.tif 000011
【図２】
0005785664.tif 000012
【図３】
0005785664.tif 000013
【図４】
0005785664.tif 000014
【図５】
0005785664.tif 000015
【図６】
0005785664.tif 000016
【図７】
0005785664.tif 000017