説明

3次元場面の分析

【課題】深さマップを処理する頑丈で効率的な方法を提供する。
【解決手段】データを処理する方法であって、ヒト類似形状を含むある場面の深さマップを受信するステップを有する。深さマップはその場面内の3次元(3D)結合構成要素を識別するために処理される。それぞれの結合構成要素は、相互に隣接し、かつ相互に次の深さ値を有する1組のピクセルからなる。別個の分離した第1と第2の結合構成要素は両方とも、ヒト類似形状に属すると識別される。そしてヒト類似形状の画像が第1と第2の結合構成要素を含んで生成される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元マッピング、特に3次元マップデータの処理に対する方法及びシステムに関するものである。
【背景技術】
【0002】
深さマップを生成する多くの方法及びシステムが従来技術で周知である。本願発明の特許申請及び請求項では、「深さマップ」とはピクセルの2次元行列としての場面の表現を意味し、各ピクセルはその場面におけるそれぞれの位置に対応し、それぞれある参照位置からの距離を示すピクセル値を有する。(言い換えれば、深さマップは、ピクセル値が場面内の物体の明るさ及び/又は色よりはむしろ地形情報を示す、画像の形式を有する。)深さマップは、例えば、レーザスペックルのパターンがその上に投影される物体の画像の検知と処理により生成される。これは特許文献1に記載され、この開示内容はここに参照され採り入れられる。
【0003】
深さマップはその場面の物体を区分し識別するために処理可能である。深さマップのヒト類似形状(ヒトの形状に似た3次元形状を意味する)の識別、及びこれら形状の場面から場面への変化は、コンピュータアプリケーションの制御手段として使用可能である。例えば特許文献2では、ヒト類似体の輪郭を発見するため深さマップが区分される、コンピュータにより実行される方法が記載されている。この開示内容はここに参照され採り入れられる。輪郭は体の胴と1つ以上の肢を識別するために処理される。深さマップにおける少なくとも1つの識別された肢の変位を分析することにより、コンピュータ上で走るアプリケーションプログラムを制御するための入力が生成される。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】WO2007/043036
【特許文献2】WO2007/132451
【特許文献3】WO2007/105205
【特許文献4】WO2008/120217
【特許文献5】WO2010/004542
【発明の概要】
【0005】
本発明の実施形態は、深さマップから情報を抽出する方法、装置及びソフトウェアを提供する。
従って本発明の実施形態によれば、1つの場面の深さマップの一時的順列を受け取るステップと、
場面は、1つの静止した背景と背景の一部を覆い隠す1つ以上の動く近景物体を有し、
深さマップは、ピクセルの1つの行列からなり、ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、場面内のそれぞれの位置に対応し、
動く近景物体により覆い隠されていない、静止した背景の第1の部分を第1の深さマップ内で識別するため、デジタルプロセッサを使用して、順列の中の第1の深さマップを処理するステップと、
静止した背景の少なくとも第2の部分を識別するため、順列の中の少なくとも第2の深さマップを処理するステップと、
第2の部分は、少なくとも1つの近景物体の順列に亘る動きに起因して第1の部分とは異なり、
少なくとも静止した背景の第1の部分と第2の部分を組合せることにより、場面の1つの背景モデルを構築するステップと、
を有することを特徴とする、データを処理する方法、が提供される。
【0006】
ある実施形態では、方法は、背景モデルに基づき、1つ以上の背景物体を深さマップから取り除くことにより、1つ以上の近景マップを生成するステップを有する。少なくとも1つの動く近景物体がヒト類似形状であり、方法は、ヒト類似形状を、第1の深さマップ内のヒト類似形状に関する情報と共に第2の深さマップに由来する1つの近景マップから抽出するステップを有する。
開示された実施形態では、方法は深さマップ内で平滑な表面を識別するステップを有する。方法は深さマップ内で1つの物体の影を識別するステップを有する。
【0007】
典型的に、方法は、背景モデルを構築するステップは、深さマップの順列に亘って背景に現れる変化に対応して、背景モデルを更新するステップを有する。開示された実施形態では、深さマップは1つの画像化組立体により獲得され、方法は、順列内の深さマップの間における背景モデル内の変化の程度を評価するステップと、変化の程度が事前に設定された閾値を超えた場合に、画像化組立体が移動したことを検知するステップと、を有する。
【0008】
本発明によればさらに、表面に対して位置決めされた1つ以上の物体を有する1つの場面の1つの深さマップを受け取るステップと、
深さマップは、ピクセルの1つの行列からなり、ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、場面内のそれぞれの位置に対応し、
表面のパラメトリックなモデルを識別し生成するため、デジタルプロセッサを使用して深さマップを処理するステップと、
パラメトリックなモデルにより示される表面を、深さマップから取り除くことにより、場面内の1つ以上の物体を区分するステップと、
を有することを特徴とする、データを処理する方法が提供される。
【0009】
開示された実施形態では、表面が、その上に少なくとも1つの物体が位置する、床に対応する平滑な表面である。深さマップを処理するステップは、深さマップ内のピクセルにおける局地的な法線を計算するステップと、平滑な表面を識別するため、局地的な法線に従ってピクセルをクラスタに纏めるステップと、を有する。典型的に深さマップは画像化組立体により獲得され、局地的な法線に従ってピクセルをクラスタに纏めるステップは、それぞれのピクセルに対する画像化組立体の高さを推定するため、少なくとも幾つかのピクセルのそれぞれの深さ値を処理するステップと、画像化組立体の同一の高さを有するピクセルをクラスタに纏めるステップと、を有する。
【0010】
本発明の実施形態によれば、さらに、1つのヒト類似形状を含む1つの場面の深さマップを受け取るステップと、
深さマップは、ピクセルの1つの行列からなり、ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、場面内のそれぞれの位置に対応し、
場面内の3次元(3D)結合構成要素を識別するため、デジタルプロセッサを使用して深さマップを処理するステップと、
それぞれの結合構成要素は、相互に隣接し、かつ隣接する深さ値を有する1組のピクセルからなり、
別々の第1と第2の結合構成要素を共にヒト類似形状に属すると識別するステップと、
第1と第2の結合構成要素を共に有するヒト類似形状の1つの画像を生成するステップと、
を有することを特徴とする、データを処理する方法が提供される。
【0011】
開示された実施形態では、深さマップを処理するステップは、深さマップに縁辺を配置し、ピクセルのブロックを縁辺の間に配置するステップと、3次元(3D)結合構成要素を識別するため、3次元で隣接するピクセルのブロックをクラスタに纏めるステップと、を有する。
【0012】
ある実施形態では、深さマップを受け取るステップは、深さマップの一時的な順列を受け取るステップを有し、第1と第2の結合構成要素を識別するステップは、結合構成要素を順列内の多重の連続する深さマップに亘って追跡するステップを有する。結合構成要素を追跡するステップは、共通の識別子を順列内の第1の深さマップ内の第1と第2の結合構成要素に付与するステップと、共通の識別子を使用して、第1と第2の結合構成要素が第2の後続の深さマップ内のヒト類似形状に属することを判定するステップと、を有し、ここにおいて第2の深さマップ内では、第1と第2の結合構成要素が分離されている。典型的に共通の識別子を付与するステップは、深さマップ内の第1と第2の結合構成要素のピクセルを、共通の識別子で標識付けするステップを有する。
第2の深さマップ内のヒト類似形状が他の1つの物体と接触し、それにより、第2の結合構成要素を他の1つの物体と合体するようにさせ、共通の識別子を使用するステップは、第2の深さマップに現れるヒト類似形状の画像を生成するため、ヒト類似形状に属する第2の結合構成要素の標識付けされたピクセルを、他の物体に属するピクセルから分離するステップを有する。
【0013】
さらにあるいは、結合構成要素を追跡するステップは、結合構成要素の動きの速度を推計するステップを有し、
画像を生成するステップは、推計された速度を使用して、ヒト類似形状に覆い隠された部分の識別を維持するステップを有する。
【0014】
ある実施形態では、深さマップ内のヒト類似形状は、部分的に他の1つの物体により妨害されており、
第1と第2の結合構成要素は妨害する物体によって分離されるヒト類似形状の部分に対応し、
画像を生成するステップは、第1と第2の結合構成要素の両方をヒト類似形状の画像内に組み入れるステップを有する。
【0015】
本発明の実施形態によれば、さらにまた、画像化組立体と、
画像化組立体は、静止した背景と背景の一部を覆い隠す1つ以上の動く近景物体とを含む、1つの場面の深さマップの一時的な順列を生成するように構成され、
深さマップは、ピクセルの1つの行列からなり、ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、場面内のそれぞれの位置に対応し、
プロセッサと、
を有し、
プロセッサは、
動く近景物体により覆い隠されていない、静止した背景の第1の部分を第1の深さマップ内で識別するため、順列の中の第1の深さマップを処理し、
静止した背景の少なくとも第2の部分を識別するため、順列の中の少なくとも第2の深さマップを処理し、
ここにおいて第2の部分は、少なくとも1つの近景物体の順列に亘る動きに起因して第1の部分とは異なり、
少なくとも静止した背景の第1の部分と第2の部分を組合せることにより、場面の1つの背景モデルを構築する、
ように構成される、
ことを特徴とするデータ処理装置が提供される。
【0016】
本発明の実施形態によれば、またさらに、画像化組立体と、
画像化組立体は、1つのヒト類似形状を含む1つの場面の深さマップを受け取るように構成され、
深さマップは、ピクセルの1つの行列からなり、ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、場面内のそれぞれの位置に対応し、
プロセッサと、
を有し、
プロセッサは、
場面内の3次元(3D)結合構成要素を識別するため、デジタルプロセッサを使用して深さマップを処理し、
ここにそれぞれの結合構成要素は、相互に隣接し、かつ隣接する深さ値を有する1組のピクセルからなり、
別々の結合構成要素をヒト類似形状に属すると識別し、
幾つかの結合構成要素を有するヒト類似形状の1つの画像を生成する、
ように構成される、
ことを特徴とするデータ処理装置が提供される。
【0017】
本発明の実施形態によれば、さらにまた、プログラム命令が保管される接触可能なコンピュータ読み取り可能媒体を有し、
命令はコンピュータにより読み込まれた時コンピュータに対し、
1つの場面の深さマップの一時的順列を受け取るステップと、
場面は、1つの静止した背景と背景の一部を覆い隠す1つ以上の動く近景物体を有し、
深さマップは、ピクセルの1つの行列からなり、ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、場面内のそれぞれの位置に対応し、
動く近景物体により覆い隠されていない、静止した背景の第1の部分を第1の深さマップ内で識別するため、デジタルプロセッサを使用して、順列の中の第1の深さマップを処理するステップと、
静止した背景の少なくとも第2の部分を識別するため、順列の中の少なくとも第2の深さマップを処理するステップと、
第2の部分は、少なくとも1つの近景物体の順列に亘る動きに起因して第1の部分とは異なり、
少なくとも静止した背景の第1の部分と第2の部分を組合せることにより、場面の1つの背景モデルを構築するステップと、
を実行させる、ことを特徴とするコンピュータソフトウェア製品、が提供される。
【図面の簡単な説明】
【0018】
【図1】本発明の実施形態による、3Dマッピング及び場面分析用システムの概略図である。
【図2】本発明の実施形態による、3Dマッピングの構成要素と随伴するコンピュータのブロック図である。
【図3】本発明の実施形態による、3D場面分析の方法を示す流れ図である。
【図4】本発明の実施形態による、3D場面の床を識別する方法を示す流れ図である。
【図5】本発明の実施形態による、深さマップで識別された物体に対応するブロックを示す深さマップの正面図である。
【図6】本発明の実施形態による、深さマップで識別されたブロックのクラスタを示す深さマップの平面図である。
【図7】本発明の実施形態による、深さマップ内の物体の区分を示す深さマップの正面図である。
【発明を実施するための形態】
【0019】
深さマップは、特に連続した時間の流れで表示された場合、豊かな情報を提供する。しかし、深さマップに基づくゲームや他のアプリケーションは、このマップから高水準の情報を取り込み、処理し、そして抽出することの難しさから、開発の速度が遅かった。
【0020】
以下に記述する本発明の実施形態では、この困難さを、深さマップを処理する頑丈で、効率的な方法、詳細には、連続する深さマップの中でヒト類似形状を位置決めし、追跡する方法により取り扱う。このようなマップは典型的には、静止した背景と1つ以上の動く近景の物体(それは背景の一部を隠す)からなる1つの場面を表わす。
開示された実施形態においては、デジタルプロセッサが、室内の背景で典型的に表れる床や壁を含む背景を識別しモデル化する。プロセッサはこのモデルを、背景モデルを妨げている近景内のヒト類似形状の部分(従ってこれ以降近景に属すると考えられる)を検出するために使用し、そしてヒト類似形状の部分を近景に存在しない他の形状部分と関連付ける。プロセッサは対象形状、特にヒト類似形状を識別し追跡するため、動く近景物体を分析する。
【0021】
ある実施形態では、プロセッサは、それぞれの深さマップにおいて近景物体によって隠されていない静止した背景部分を識別することにより、背景モデルを構築する。近景物体はマップからマップへ動くため、背景の異なる部分が典型的に、異なるマップにおいて明示される。プロセッサは連続する異なるマップからの異なる静止した背景部分を組み合わせて背景モデルを生成する。
【0022】
さらに、プロセッサは、特別にパラメトリックにモデル化可能なある幾何学的形状の表面、特に背景の一部をなす床や壁のような平坦な表面を識別可能である。この目的のため、ある実施形態では、プロセッサは、隣接するピクセルの深さ値を考慮することにより、深さマップ内のピクセルの局地的な法線を計算する。プロセッサは、床及び場合により他の平坦な表面を識別するため、法線がほぼ同じ方向を向くピクセルをクラスタに集団化する。
【0023】
プロセッサは、3次元に結合した深さマップ内の構成要素を識別することにより、ヒト類似形状を(場合により他の対象物体も)その場面から抽出する。それぞれの結合した構成要素は、互いに隣接しかつ互いに隣接する深さ値を有する1組のピクセルからなる。このことは隣接するピクセルの深さ値は小さな事前に設定された閾値以上に乖離しないことを意味する。プロセッサは、これら結合構成要素を識別し、追跡してヒト類似形状の幾何学的モデルを計算し、そのモデルは更に処理されて姿勢、動き、しぐさ等の高水準な特徴を識別する。
【0024】
理想的には、それぞれのヒト類似形状は単一の繋がった構成要素として表示されるのが好ましいが、場面そのものの様相に起因して、ヒト類似形状が2つ以上の繋がった構成要素として表示されることがしばしばある。この分離により、高水準な特徴のモデル化を別としても、ヒト類似形状を全体として識別するのが難しくなる。例えばある深さマップでは、ヒト類似形状は部分的に他の物体により部分的に妨害され、その形状が2つ以上の結合構成要素に分離される。他の場合には、ヒト類似形状の1部分が深さマップ内の他の部分を妨害することがある。
以下に記述する実施形態では、プロセッサは、共通の識別子をヒト類似形状を構成する全ての結合構成要素に割り当て、そして、結合構成要素が分離され又は互いに妨害しても、この識別子を結合構成要素の追跡に使用する。これら実施形態の方法は、プロセッサが変則的状況を解決し、そして妨害があっても、ヒト類似形状の一貫した表示を生成することを可能にする。
【0025】
(システムの記述)
図1は本発明の実施形態による、3Dユーザインタフェースシステムの概略図である。ユーザインタフェースは、使用者28,30の体の少なくとも一部を含む3D場面情報を獲得する3次元画像化組立体22に基づく。組立体22は場面のカラービデオ画像をも獲得する。組立体22は3Dマップデータ(場合によりカラー画像データも)を含むフレームの連続をコンピュータ24に出力し、コンピュータは高水準情報をそのマップデータから抽出する。この高水準情報はAPI経由でコンピュータ24上で走るアプリケーションに提供され、アプリケーションはそれに従って表示スクリーン26を駆動させる。例えば図示の例では、使用者28,30は、彼らの肢を動かし、そして姿勢を変えることによりコンピュータ24上で走るゲームソフトと相互作用する。
【0026】
コンピュータ24は組立体22に生成されたデータを処理し、使用者28,30を含む、場面の深さマップ(「3Dマップ」とも呼ばれる)を再構築する。ある実施形態では、組立体22は点のパターンを場面に投影し、投影されたパターンの画像を獲得する。組立体22またはコンピュータ24はその後、場面内の点(使用者の体の表面の点を含む)の3次元座標を、パターン内の点の水平方向偏移に基づいて三角法により計算する。
この手法は使用者がどんな種類のビーコン、センサ、又は他のマーカーを持つ又は着る必要が無い、という点で有利である。それは場面内の点の、組立体22からある距離離れた場所における、既定の標準面に対する深さ座標を提供する。投影パターンを使用する、この種の三角法に基づく3次元マッピングの方法と装置は、例えば特許文献1、特許文献3、特許文献4、に記載されており、それらの開示はここに参照され採り入れられる。あるいはシステム20は、既知の他の3次元マッピング法を使用してもよい。
【0027】
この実施形態では、システム20が使用者28,30を含む3次元マップの連続を獲得し処理し、一方使用者はその体を動かす。組立体22上で走るソフトウェア及び/又はコンピュータは、3Dマップデータを処理し、その場面内の使用者に対応するヒト類似形状を抽出する。この目的のため、(以下に詳述する通り)ソフトウェアは、床32や壁34のような平坦な表面を含む静止した背景、及びこの例では窓36のような、他の背景物体を識別しモデル化する。ソフトウェアは、使用者28,30のヒト類似形状を識別し追跡するため、画像の近景部分をヒト類似形状の検知された部分及び他の近景物体(椅子38のような)と組合せる。
【0028】
組立体22又はコンピュータ24は典型的に、それぞれの体の骨格を抽出するため、使用者の手と関節の3D位置及び向きを含むヒト類似形状の幾何学的特徴を分析する。それらは又、手で描写された仕草を識別するため、手の軌跡を多重のフレームに亘って分析する。しかし、システム20の動作のこのような側面は本願の特許請求の範囲外である。骨格及び仕草情報はAPI経由でコンピュータ24上で走るアプリケーションプログラムに提供される。このプログラムは、例えば、ディスプレイ26に表示された画像を、骨格及び仕草情報に反応して移動させまた変化させる。
【0029】
コンピュータ24は典型的に、以下に記載する機能を遂行するため、ソフトウェアでプログラムされた汎用コンピュータプロセッサからなる。ソフトウェアはプロセッサに電子形態で、例えばネットワーク経由でダウンロードされ、或いは光学、磁気、電子媒体のような接触可能な非一過性媒体で提供される。或いはさらに、コンピュータの幾つか又は全ての機能は、専用又は準専用IC又はプログラム可能DSPなどの専用のハードウェア内で実行される。図1に例示されるコンピュータ24は画像化組立体22とは別個のユニットとして示されるが、幾つか又は全てのコンピュータの機能は画像化組立体の装置内の又はそれに付随した適切なマイクロプロセッサとソフトウェア、或いは専用の回路によって実行可能である。
【0030】
あるいは、これら処理機能の少なくとも幾つかは、表示スクリーン26(例えばテレビ内の)又は、ゲームコンソール、メディアプレーヤなどの他の適切なコンピュータ装置と統合された適切な1つのプロセッサにより実行されてもよい。組立体22の検知機能は同様に、コンピュータ又はセンサ出力により制御される他のコンピュータ装置と統合されてもよい。
【0031】
図2は本発明の実施形態による、画像化組立体22の構成要素とシステム20内のコンピュータ24のブロック図である。画像化組立体22は対象場面上にパターンを投影する照明組立体42を有する。適合するように構成されたビデオカメラのような深さ画像サブ組立体44は、場面上のパターンの画像を獲得する。典型的に、照明組立体42と画像サブ組立体44は赤外領域で動作するが、他の領域も使用可能である。或いは、カラービデオカメラ46が場面の2次元カラー画像を獲得し、マイクロフォン48が音声を獲得してもよい。
【0032】
プロセッサ50はその画像を画像サブ組立体44より受け取り、それぞれの画像内のパターンをメモリ52に記憶された参照パターンと比較する。参照パターンは典型的に、事前にそのパターンを、画像化組立体22からある既知の距離にある参照平面上に投影することにより獲得される。通常はこの平面は画像サブ組立体44の光軸に対して垂直である。プロセッサ50は画像サブ組立体44により獲得された画像内のパターンの部分の、参照パターンに対する位置的偏移を計算し、これら偏移を深さ座標に変換する。これらの処理の詳細は、例えば、特許文献5に記載されており、その開示はここに参照され、採り入れられる。
あるいは、前述のように画像化組立体22は、ステレオ画像化又は飛行時間測定法のような他の公知の方法で深さマップを生成するように構成されてもよい。
【0033】
プロセッサ50は、深さマップをUSB接続のような通信リンク54経由で、コンピュータ24の適合するインタフェース56に出力する。コンピュータはメモリ60とユーザインタフェース62を有するCPU58を含み、CPUは表示スクリーン26を駆動し、また他の構成要素を有してもよい。
上記のように画像化組立体22は、或いは画像サブ組立体44からの生の画像のみを出力してもよく、上記の深さマップ計算はCPU58によりソフトウェアで実行されるか、或いはCPU58に帰属する機能の少なくとも幾つかはプロセッサ50により実行されてもよい。
深さマップから高水準情報を抽出するソフトウェアは、プロセッサ50、CPU58又はその両方の上で走ってもよい。本明細書及び請求項におけるCPU又はプロセッサの表記はこれらの内の1つ又は両方を示すものと理解される。
CPU58は、以下に記載するように、典型的に1つ以上のアプリケーションプログラムを走らせ、ミドルウェアによりAPI経由で提供された情報に基づき、ユーザインタフェース62を駆動する。
【0034】
(場面分析の方法)
図3は本発明の実施形態による、3D場面分析の方法を示す流れ図である。方法は明確化のため、上記のシステム20の構成要素と図1と2で示された構成要素に関して記載されている。
しかしこの方法の原理は、他のいかなる深さマッピングと分析の適合するシステムによっても実現可能である。
また利便性と記述の明確化のため、方法の各ステップはCPU58によりソフトウェアで実行されると仮定しているが、これらステップの幾つか又は全ては、プロセッサ50又は他の適合するデジタルプロセッサにより実行可能である。
【0035】
深さマップ入力ステップ70において、コンピュータ24は深さマップの一時的順列を画像化組立体22より受け取る。深さマップは典型的に、固定フレーム率でピクセル値を有するビデオ画像の汎用フォーマットで、画像化組立体からラスター順に出力される。(従って上記順列内のマップは「マップフレーム」又は単に「フレーム」と呼ばれる。)
深さマップのピクセル値は、実際の深さ座標値又は、実際の深さ値に既知の一定な関係を有する、ピクセル内のパターン差異値でありうる。方法は順列内の各マップフレームについて繰り返し実行される。
【0036】
床モデル化ステップ72において、CPU58は各深さマップを分析し床32を位置決めし、モデル化する。このステップは以下で図4を参照して詳述される。床位置(又は他の静止した背景部分)内の明白な変更は、例えば使用者の1人の偶発的又は意図的な接触によりカメラが移動したことをCPUに示唆する。CPUは、床平面に属すると識別されたピクセルを、それらに深さ値ゼロを割り当てることにより、深さマップから除外する。
【0037】
背景構築ステップ74において、CPU58はマップフレームの順列に亘って、場面背景のモデルを徐々に構築する。それぞれのピクセルに対しCPUは、順列に亘ってその最大深さ値(又は等価であるが、参照画像に対する最大差異)を記憶する。背景内のピクセルの深さ値は、このピクセルの時間に亘る最大差異値である。ピクセルがある一定の連続するフレームにおいて深さ値を有しない場合(影によらずに)、背景モデルはこのピクセルでの値を失う。ピクセルが影により深さ値を有しない場合、そして影を投影する物体が現存する背景深さ値より離れている場合、ピクセルは現存する背景深さ値を失う。ピクセルが深さ値を有せず、かつ現存するフレーム内に値を有し、かつこのピクセルを含む近景に接続した構成要素が背景に隣接している場合、このピクセル内の背景値が現存する値になる。
【0038】
ある所与のマップ内の動く物体に属するピクセルに関しては、CPU58は、これらのピクセルが近景の物体により妨害される前に、又は近景の物体が去った後に、これらのピクセルの背景値を既に記憶していてもよい。
例えば、図1で示される場面において、窓36の1つの領域は使用者30の頭により覆い隠されるが、しかしその同じ領域は後続のマップフレームにおいて使用者が姿勢を変えることにより画像化組立体22に見せられる。従ってCPU58は、背景モデルを、各フレームで暴露された背景の異なる部分の合体として、多重のフレームに亘って累積的に構築する。
【0039】
上述のように使用者28,30のような近景物体は、その後ろにある物体に影を投影する可能性があり、その結果、画像化組立体22が影の部分の深さ値を抽出できなくなる。影による深さマップの乱れを防止するため、CPU58はある物体に隣接する、深さ値を有しない領域を、その物体に属する領域として識別する。影は、深さマップの近景部分と背景部分との間のパターン偏移の差異により決定される、ある一定の最大影幅までピクセルを含むことを許容される。
(ピクセル内の)最大影幅は、近景物体と背景物体との間のパターン偏移の最大差異の1/8であることが、幾何学的に証明できる。
CPU58は、背景モデルの更新の制御においてマスクとして使用するため、マップの影の部分を示す影画像を計算してもよい。
【0040】
CPU58は後続の処理において雑音を追加しかねない乱れを根絶するため、背景モデルを破棄してもよい。例えば、CPUがある所与の領域において、その領域の背景モデルの深さに近い深さで、結合した構成要素を検知した場合、CPUはその背景モデルの深さをこの構成要素の深さに従って較正してもよい。
逆に、CPUが結合した構成要素を従前のフレームで追跡していて、かつそれがヒト類似形状の一部(又は少なくともヒト類似形状の一部の可能性がある)であると識別された場合、たとえ結合した構成要素が背景に接触しても、CPUはそれらの分離を維持する。ある一定の数のフレームの間、移動物体として識別されない近景深さ値を持つピクセルは、同様に背景に所属させられる。
【0041】
CPU58は床を除去し、そしてその後、構成要素検知ステップ76において、近景ピクセルとマップに残存する事前に検知されたピクセルの中から、ヒト類似形状の一部と一致する可能性のある3D結合構成要素を検知する。
CPUは、従前にヒト類似形状の一部と識別されず、かつ近景でないピクセルを、近景深さ値領域外の人工的深さ値を割り当てることにより「除去」してもよい。それにより、それらは近景ピクセルの一部としては考えられず、下記の他の用途の場面構成要素として考えられる。
【0042】
CPUは発見した3D結合構成要素のそれぞれに1つの識別子を割り当て、そしてその要素の下記の特性値を計算する:
1.ピクセル数
2.構成要素を有する境界ボックス
3.重心
4.面積
5.近景ピクセル数(構成要素の一部が背景深さ値を持つ場合)
6.近隣の構成要素の識別子
あるいはさらに、他の特性値が計算され記憶されてもよい。
CPUは、この識別子と構成要素の特性値を、ヒト類似形状のフレームからフレームへの移動の追跡に使用する。このように、ある所与のフレームにおける結合構成要素は典型的に、近景ピクセルと従前のフレームでヒト類似形状に属することが発見されたピクセルとから構成される。
【0043】
クラスタ検知ステップ78において、CPU58は深さマップを処理し、新しい3Dクラスタを識別する。これらのクラスタは、従前のフレームで識別されなかったヒト類似体に一致する可能性があり、とりわけ、システムが開始された時の最初のヒト類似形状の識別において使用される。ステップ78は図5,6を参照して以下で詳述される。
【0044】
ステップ78で識別されたクラスタは、ほぼ同じ深さ値を持つ隣接するピクセルのブロックから構成され、それらは、互いに深さ値が隣接する3Dクラスタのグループに分けられる。連続するフレームに現れる、既定の閾値(例えば10cm)以下の相対的動きを有するクラスタは追跡される。CPUはそれぞれのクラスタ候補の周りに境界ボックスを構築し、その動きを連続する多重のマップフレームに亘って追跡する。CPUは累積として最小閾値(20cmのような)より多く動く候補を移動物体として識別する。この目的のため、動きはクラスタの両端の動きとして定義される。即ち、右側と左側の両方は、通常は同じ方向に偏移するはずである。
【0045】
CPU58は、区分ステップ80において、ヒト類似体部分と一致する可能性のある構成要素を区分し識別するため、ステップ76と78で発見された結合構成要素およびクラスタを処理する。CPUはその後、構成要素グループ化ステップ82において、近隣の構成要素を同じグループにまとめ、ヒト類似体形状を再構築する。このステップは幾つかのサブ操作を含む。
単純な場合は、ヒト類似体形状は1つの3D結合構成要素として表示され、そのように標識付けされる。このような形状は、例えば、使用者が画像化組立体22に面して定められた姿勢で立つ、較正手続の実行によって、すぐに識別可能である。この手続きは、コンピュータ24上でゲーム又は他のアプリケーションを走らせる場合、その後使用者が動く時にCPUが使用者の体の部分を追跡する手助けとなる。
【0046】
他の場合には、接着サブステップ84において、CPUは1つのヒト類似体形状を構築するため2つ以上の結合構成要素をグループ化する必要があるかもしれない。前述のように形状全体が従前のマップフレームで識別された場合、共通の識別子とメタデータが構成要素間の関係性を維持するのに使用可能である。
さらにあるいは、互いに近接した標識付けされない、動く結合構成要素は、従前にラベルを付与されなかったとしても、一緒にグループ化され共通の識別子を付与される。
【0047】
逆に、使用者が近景の物体(他の使用者を含む)に接触した場合、その使用者と物体は、1つ以上のマップフレームにおいて、一時的に単一の3D結合構成要素として表示される。この場合、CPU58は誤ってそれらに共通の識別子を付与する。その後使用者がその物体から離れると、深さマップにおいて同じ識別子を持つ2つの別個の結合構成要素が存在する。この場合CPUは識別子をリセットし、そして実際に使用者の体と一致する3D結合構成要素を再構築する。
【0048】
あるいは、この種の状況では、CPU58は、使用者の体に属する合体結合構成要素の標識付けされたピクセルを、その使用者の体と接触している他の物体に属するピクセルから分離させるために、従前のフレームにおいて付与された識別子を使用してもよい。
CPUはこのように、接触に関係なく体に対して正しく区分することができる。特に、他の物体が他の使用者である場合は、CPUは、場面内の2つの(或いはそれ以上の)ヒト類似形状のそれぞれに属するピクセルに対し、異なる特定の識別子を付与する。1つのフレームにおいて付与された異なる識別子は、後続のフレームにおいて、合体結合構成要素のそれぞれのピクセルを、適切な体に割り当てるのに使用可能である。
【0049】
1つ以上の深さマップにおいてヒト類似形状の部分が他の物体によって妨害された場合、特定の困難さが起こる可能性がある。
妨害検知ステップ86において、CPU58はこのような異常を検知し解決する。このステップは図7を参照して以下に詳述される。
【0050】
ステップ82の最後において、殆どの場合、全てのヒト類似形状は識別されている。このようなヒト類似形状のそれぞれに対し、形状を構築する全ての3D結合構成要素を標識付けするため、CPU58は1つの共通識別子を付与する。CPUは全てのこれらの結合構成要素に属するピクセルを適切な識別子で標識付けする。(どのヒト類似形状にも属さないピクセルにはゼロの識別子が付与される。)
結果として得られるのは、1つの区分された深さマップであり、それは、さらにヒト類似形状の骨格を抽出するため処理される。
同時に、標識付けされたピクセルの行列が、図3の方法の次の繰り返しのステップ70においてCPUが受け取る、次の深さマップを処理する出発点として使用される。
【0051】
(床の検知)
図4は本発明の実施形態による、ステップ72で使用される、3D場面の床を識別する方法の詳細を示す流れ図である。床は場面内で平坦な表面として定義され、深さマップの下方部分に位置するものと想定されている。場面内の全ての平面は、等式AX+BY+CZ+D=0を満足し、ここに(X,Y,Z)は空間座標であり、A,B,C,Dは定数である。各ピクセル(x,y)において計算された、投影パターンの差異値sに基づく深さマップに対しては、平面等式は、ピクセル座標と偏移値(x,y,s)について、調整された定数で再構成可能である。
このように図4の方法は、図2に示された方法の構成要素と共に、実際の深さ値を計算する前の段階でも、生のマップデータ上で実行可能である。
(x,y,s)ドメインにおける計算の詳細は前述の暫定特許出願に記載されている。
【0052】
床発見ステップ90においてCPU58は、それぞれの連続する深さマップに対して、ある1つの床モデルが従前のマップフレームで既に発見されたかをチェックすることにより、床の発見工程を始める。発見されていれば、新モデル計算ステップ92において、CPUは現存する床に対して1つの新しいモデルを計算する。この目的のためCPUは、既定の公差の範囲内で現存する床の平面内にある、或いは平面の下にある、深さマップ内の全てのピクセルを含む1つの床画像を形成する。(この床画像はその後ステップ74で深さマップから除去される。)
【0053】
CPUはモデル標識化ステップ94において、その新モデルに対し信頼度スコアを計算し、モデル評価ステップ96において、そのスコアを現在のマップフレームに対する床平面として容認するか拒否するかの決定に使用する。信頼度スコアは例えば、この床平面より下の(従って誤った)ピクセル数に対する床平面内のピクセル数に基づいてもよい。もし現存する床平面が容認できるならば、CPUは床取り換えステップ98において、平面パラメータを床画像に基づいて調整する。例えばCPUは、平面パラメータを調整するため床画像内のピクセルに対し平面の最小2乗適合を実施してもよい。
【0054】
床画像内のピクセルが現存する床平面より下にあまりにも多く存する(例えば、ピクセルの1/6)場合は、CPUは新床モデルをステップ96において拒否する。床モデルの失敗の原因は、例えば、使用者28と30の内の1人との意図的または偶然の接触により画像化組立体22が移動したことによる。CPUはこの可能性を、カメラ移動チェックステップ100において評価する。CPUは例えば、背景モデルにおいて深さ値の変化率を計算する。大きな突然の変化率増加が発見されると、CPUはカメラが移動したと結論付ける。そうでない場合は、床モデルは次のフレームまで維持される。
【0055】
CPUがステップ100においてカメラが移動したと発見し、かつ新床モデルが無効な場合、床無効ステップ102において、CPUは現在の床モデルが誤りと設定し、そして新しい床を探し始める。CPUは同様に、マップフレームの順列の初めにおいて、新しい床探しを開始する。
【0056】
ステップ102に続いてCPUは、手間のかかる床探索ステップ104において、最初は手間のかかる床探索を試みる。このステップに置いて、CPUは深さマップ(又は場合によって、計算の効率化のため、深さマップの10進法バージョン)内の全ての水平ピクセル、即ちその局地的法線が上を向いたピクセルを識別する。局地的法線は、近隣のピクセルの深さ値を比較することにより計算される。ポイントが床にあると仮定して、遠近法により、それぞれの水平ピクセルの空間座標は、ある1つの床からのカメラ高さを推定する。CPUは、その水平ピクセルをそれぞれのカメラ高さ推定値に従ってグループ分けする。その後CPUは、既定の最低面積以上を有するクラスタの中で、空間内で最も低い平面に位置するクラスタを床の基準として選択する。
【0057】
CPUは探索チェックステップ106において、適合するクラスタが発見されたかをチェックする。見つけられた場合、CPUは床平面をクラスタ内のピクセルの線形回帰により計算し、以下の標識付けステップ112に進む。
適合するクラスタが発見されない場合、CPUは、モデル推定ステップ108において、他の概略推定法を選択する。このステップでは、CPUはランダムに3つのピクセルを深さマップの下方部分1/3から選択し、空間内3つの点を含む平面を計算する。CPUはモデルチェックステップ110において、この平面が水平(法線が上を指す)か否かをチェックする。水平であれば、CPUはこの平面を床として採用する。そうでなければ、床探索は次のフレームまで停止する。
【0058】
CPU58は、ステップ104又は108で発見された床モデルを、モデル標識化ステップ112で評価する。このステップは、上記のステップ94と実質的に同様に進行する。その後CPUは、比較のため新しいモデルを新モデル計算ステップ114において、計算する。このステップは上記ステップ92と同様に実行される。CPUはこの新モデルを新モデル標識付けステップ116で評価し、その結果を、モデル比較ステップ118において、ステップ112からの従前のモデルスコアと比較し、そして新モデルのスコアが優れている場合は、従前のモデルを新モデルと交換する。CPUは、モデル内でさらなる改善が得られなくなるまでステップ114 −118を繰り返し、得られなくなった時点で、工程は次のフレームまで停止する。
【0059】
上記の方法は、特に深さマップ内で床を識別する(そして、後続の分析から床を除外する)ことに関しているが、同一の方法は、必要な改良を加えれば、壁、天井及びテーブル表面などの他の平坦な表面を発見する(そして所望の場合削除する)ことに使用可能である。
さらに上記の方法は他のタイプの、パラメータによって表現可能な、深さマップ内に現れる球面、パラボラ面のような非平面の表面を識別するのに適応可能である。このような表面のパラメータは、例えば深さマップ内の点に対する3D関数の線形最小2乗適合により、深さマップから得られる。このための適合技術は、例えば、Flannery他著「Numerical Recipes in C:The Art of Scientific Computing,第2版(ケンブリッジ大学出版、1992)第671 −681頁に記載されており、それはここに参照され、採り入れられる。
【0060】
(ヒト類似形状の抽出)
図5と図6は、本発明の実施形態による、深さマップ120のそれぞれ正面図及び平面図である。図5は深さマップ内の物体に対応するブロック122,124、126を示す。図6は、ブロックのXZ面への投影に基づくブロックのクラスタへのグループ化をしめす。これらの図は構成要素検知ステップ74(図3)の実行を示す。
【0061】
図5に示されるブロックを発見するため、CPU58は、深さマップをX(水平)方向に沿って微分する。この目的のため、深さ値が見つけられないピクセルは任意の非常に大きい深さ値が付与される。微分値がある閾値より大きいピクセルは辺縁と分類される。辺縁の乱れを避けるため、深さマップを微分する前に、近景物体の影は(前に説明したように)、それらに投影する物体と同じ深さ値を付与される。その後CPUは、微分された深さマップの行を検索し、間に辺縁を持たない左の正の辺縁と右の負の辺縁とにより境界を定められた、ピクセルの一続き(ラン)を発見する。
【0062】
CPUは、多重の隣接する行において起り、以下の条件を満たすこの種の一続きを有するブロック122,124,126を生成する:
・ランは最小数(例えば5)以上の連続する行において起る
・行の間の深さ値の差異は既定の閾値より大きくない
・ランはX方向に最小重複パーセント(例えば少なくともブロック内の最短ランの80%)以上重複する
CPUは、各ブロックの境界座標、深さ値中央値、重心及び面積などの幾何学的特徴を計算する。
【0063】
CPU58は、図6に示すように、その後ブロックを3Dクラスタにグループ分けする。この図では3D深さマップをX−Z平面で示し、深さ(Z)は図の上から下に増加する。3角の領域128は画像化組立体22の視野を示す。ここではブロック122,124,126は異なるそれぞれの深さの範囲にあるクラスタとして表示される。ブロック122は中間深さにあるヒト類似形状の部分に対応し、図5の右側に示される。ブロック124は近景の椅子に対応し、一方、ブロック126は背景の一部である。
【0064】
CPUはブロックがある幾何学的基準に合致すれば、それらブロックを1つのクラスタにグループ分けする。例えば、CPUは、ブロックのそれぞれのX−Z面の境界ボックスが最小量以上重複し、各ブロックのそれぞれの重心がそのクラスタの他のブロックの境界ボックスに含まれることを、要求してもよい。1つのクラスタは、ブロックの面積の合計が小さなヒトの面積以上である場合、ヒト類似形状に属する候補として標識付けされる。
【0065】
前述の通り、クラスタは上記の幾何学的条件を満たすことに加えて、多重のマップフレームに亘って、典型的に移動を伴って存続する場合、ヒト類似形状の候補と考えられる。このように、ある所与のクラスタが、従前のフレームにおいて識別されたヒト類似形状と同じ概略位置に現れる場合、CPUはこの識別を維持し、そしてそのクラスタを従前のフレームと同じ識別子で標識付けする。
【0066】
あるいは、1つのクラスタ(幾つかの連続するフレームに亘って存続した)がヒト類似形状か否かを判定するため、コンピュータはそのクラスタ内のブロックを床平面(ステップ72で発見された)に投影し、そして投影の面積、重心及び境界ボックスのような幾何学的特性を計算する。この境界ボックス内に投影される深さマップ内の全ての結合構成要素は、同一のヒト類似形状候補に属すると見做される。全てのこれら結合構成要素の合計面積が所与の閾値より大きい場合、CPUはそのクラスタ及び随伴する結合構成要素をグループに纏め、そしてそれらにヒト類似形状として共通の1つの識別子を付与する。CPUはこのヒト類似形状の特性を計算し記憶し、そして上記のように後続のマップフレームに亘ってこのヒト類似形状を追跡する。
【0067】
図5及び6を再び参照して、このようにCPUは幾何学的基準に合致するブロック122のクラスタを発見し、このクラスタをコンピュータの使用者のヒト類似形状に属すると識別する。ブロック124のクラスタは、小さすぎ、そして無視される。ブロック126のクラスタは十分に大きいが、静止しているので最終的に無視される。
【0068】
図7は本発明の実施形態による、深さマップ130内の物体の区分を示す深さマップの正面図である。この図は、例えば能動的コンピュータゲームにおいて起り得る、空手の蹴りのため右足を急に上げたある人物の実際の深さマップに基づいている。その人物の体は3D結合構成要素132として表示され、それは従前のマップフレームに現れ、従って1つの識別子を有し、又、計算された幾何学的特性値で標識付けされている。足に対応する新しい結合構成要素134は、体の残りの部分より手前に、このマップで体の突然現れた。結合構成要素134は、部分的に体要素132を妨害し、その人物の腕に相当する他の1つの結合構成要素136から体要素132を切り離す。
【0069】
このような状況を取り扱うため、要素134のような1つの結合構成要素がマップフレームに突然出現した(そしてこのように、従前に付与された識別子を持たない)場合は、CPU58は、従前に識別されヒト類似形状と標識付けされた他の近隣の結合構成要素を探索する。
新しい結合構成要素がX軸とY軸方向(図7で水平及び垂直方向)で従前に識別された結合構成要素(この事例では結合構成要素132)に隣接し、深さが近似し、その間に(深さの無い領域と妨害物体を除いて)異なる深さの領域が無い場合、CPUはそれら結合構成要素を結びつけ、両方に同一の識別子を付与する。
このように図7で示される事例の場合CPUは、構成要素134と136を構成要素132にくっつける。CPUは構成要素132の識別子を構成要素134と136の両方に付与し、そしてこれら結合構成要素を1つのヒト類似形状に属するものとして認識し追跡する。
【0070】
この種の状況に置いて結合構成要素を1つの体に結び付ける他の考察には、それぞれの境界ボックスの横断と重心間の距離が含まれる。
【0071】
ステップ86においてシステム20により例外的に扱われる他の1つのタイプは、1つのヒト類似形状による他の1つのヒト類似形状の妨害である。このような状況は図1に示され、そこでは使用者28の左足が使用者30の体を横断している。このような状況の結果は、CPU58が図示の場面の深さマップ内の3D結合構成要素を分析すると、使用者30の右足の下部は体の残りの部分から離れていることとなる。
【0072】
CPU58はこのような状況を上記のデータ構造を使用して取り扱う。
使用者30の体が、従前のマップフレームで妨害なく全体として識別されたと仮定して、CPUは、使用者30の右足の領域内の結合構成要素に伴う同じ共通の識別子を、使用者の残りの部分と共有する。さらに、CPUは、使用者30の右足と体に対応する結合構成要素が同一の深さ範囲に位置すると認識し、一方、使用者30の体の一部を分離する左足を含む、使用者28の体に対応する結合構成要素は、深さがそれより浅いと認識する。これらの状況では、CPUは、使用者30の足と体に対応する分離した結合構成要素は、実際は同一のヒト類似形状の一部であると結論付け、そして共通の識別子でそれらを「接着」する。
【0073】
一度このような妨害が検知され解決されると、CPU58はそれぞれのヒト類似形状に対し、妨害された他のヒト類似形状(他の近景物体も)の記録と、こちらが妨害した他のヒト類似形状の記録を記憶する。このような記録は、後続のフレームで起こり得る妨害を解決するのに有用である。同様な技術は、1つのヒト形状が他のヒト形状に接触する状況を検知し解決するのに使用可能である。
【0074】
或いは、CPU58はヒト類似形状の一部の動きをフレームからフレームへ追跡し、それによりこれら体の部分の動きの速度を推計してもよい。CPUはその速度を、たとえ他の物体により妨害された場合でも、使用者の体の位置を外挿するのに使用可能であり、従って深さマップ内のヒト類似形状の妨害された部分を適切に識別することを維持可能である。
【0075】
前述の通り、上記の実施形態は説明の明確化を利便性のためであり、特定の種類の深さマップシステムとあるタイプのコンピュータアプリケーションを参照しているが、本発明の原理は、実質的にいかなる適合するシステムにおけるいかなる種類の深さマップにも、いかに獲得されたかに拘わらず、同様に適用可能である。
特に、上記の3D結合構成要素の分析と区分の方法は、ヒト類似形状だけでなく、他の種類の物体を深さマップから抽出するのにも使用可能である。結果として得られたマップは、使用者の閲覧用に直接表示可能であり、また、区分マップを許容する実質的にいかなる種類のアプリケーションプログラムに対しても、入力として使用可能であり、他の画像に対する入力として使用可能である。
【0076】
上記の実施形態は例として引用され、本発明は上記に特に示されまた記載されたものに限定されない。むしろ本発明の範囲は、従前の記載を読んだ当業者が想起する従来技術に開示されていない、上記に記載された種々の特性の組合せやサブ組合せ、変化形や変更形を含む。
【符号の説明】
【0077】
20:システム 22:3D画像組立体 24:コンピュータ
26:表示スクリーン 28、30:使用者
32:床 34:壁 36:窓
42:照明組立体 44:深さ画像サブ組立体
46:カラービデオカメラ 48:マイクロフォン 50:プロセッサ
52:メモリ 54:通信リンク
56:インタフェース 58:CPU 60:メモリ
62:ユーザインタフェース

【特許請求の範囲】
【請求項1】
1つの場面の深さマップの一時的順列を受け取るステップと、
前記場面は、1つの静止した背景と前記背景の一部を覆い隠す1つ以上の動く近景物体を有し、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
前記動く近景物体により覆い隠されていない、前記静止した背景の第1の部分を前記第1の深さマップ内で識別するため、デジタルプロセッサを使用して、前記順列の中の第1の深さマップを処理するステップと、
前記静止した背景の少なくとも第2の部分を識別するため、前記順列の中の少なくとも第2の深さマップを処理するステップと、
前記第2の部分は、少なくとも1つの前記近景物体の前記順列に亘る動きに起因して前記第1の部分とは異なり、
少なくとも前記静止した背景の前記第1の部分と前記第2の部分を組合せることにより、前記場面の1つの背景モデルを構築するステップと、
を有することを特徴とする、データを処理する方法。
【請求項2】
前記背景モデルに基づき、1つ以上の背景物体を前記深さマップから取り除くことにより、1つ以上の近景マップを生成するステップを有する、ことを特徴とする請求項1に記載の方法。
【請求項3】
少なくとも1つの前記動く近景物体がヒト類似形状であり、
前記ヒト類似形状を、前記第1の深さマップ内の前記ヒト類似形状に関する情報と共に、前記第2の深さマップに由来する1つの近景マップから抽出するステップを有する、ことを特徴とする請求項2に記載の方法。
【請求項4】
前記ヒト類似形状を抽出するステップは、
前記背景物体の1つに接触する、前記ヒト類似形状に属する1つの領域を検知するステップと、
前記領域を前記ヒト類似形状の一部として識別するステップと、
を有する、ことを特徴とする請求項3に記載の方法。
【請求項5】
前記深さマップ内で平滑な表面を識別するステップを有する、ことを特徴とする請求項1に記載の方法。
【請求項6】
前記深さマップ内で1つの物体の影を識別するステップを有する、ことを特徴とする請求項1に記載の方法。
【請求項7】
前記背景モデルを構築するステップは、前記深さマップの前記順列に亘って前記背景に現れる変化に対応して、前記背景モデルを更新するステップを有する、ことを特徴とする請求項1に記載の方法。
【請求項8】
前記深さマップは1つの画像化組立体により獲得され、
前記順列内の前記深さマップの間における前記背景モデル内の前記変化の程度を評価するステップと、
前記変化の程度が事前に設定された閾値を超えた場合に、前記画像化組立体が移動したことを検知するステップと、
を有する、ことを特徴とする請求項7に記載の方法。
【請求項9】
表面に対して位置決めされた1つ以上の物体を有する1つの場面の1つの深さマップを受け取るステップと、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
前記表面のパラメトリックなモデルを識別し生成するため、デジタルプロセッサを使用して前記深さマップを処理するステップと、
前記パラメトリックなモデルにより示される前記表面を、前記深さマップから取り除くことにより、前記場面内の1つ以上の前記物体を区分するステップと、
を有することを特徴とする、データを処理する方法。
【請求項10】
少なくとも1つの前記物体がヒト類似形状であり、
1つ以上の前記物体を区分するステップは、前記深さマップから前記ヒト類似形状を抽出するステップを有する、
ことを特徴とする請求項9に記載の方法。
【請求項11】
前記表面が、その上に少なくとも1つの前記物体が位置する、床に対応する平滑な表面である、ことを特徴とする請求項9に記載の方法。
【請求項12】
前記深さマップを処理するステップは、
前記深さマップ内のピクセルにおける局地的な法線を計算するステップと、
前記平滑な表面を識別するため、前記局地的な法線に従って前記ピクセルをクラスタに纏めるステップと、
を有する、ことを特徴とする請求項11に記載の方法。
【請求項13】
前記深さマップは画像化組立体により獲得され、
前記局地的な法線に従って前記ピクセルをクラスタに纏めるステップは、
それぞれのピクセルに対する前記画像化組立体の高さを推定するため、少なくとも幾つかのピクセルのそれぞれの深さ値を処理するステップと、
前記画像化組立体の同一の前記高さを有する前記ピクセルをクラスタに纏めるステップと、
を有する、ことを特徴とする請求項12に記載の方法。
【請求項14】
1つのヒト類似形状を含む1つの場面の深さマップを受け取るステップと、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
前記場面内の3次元(3D)結合構成要素を識別するため、デジタルプロセッサを使用して前記深さマップを処理するステップと、
それぞれの前記結合構成要素は、相互に隣接し、かつ隣接する深さ値を有する1組のピクセルからなり、
別々の第1と第2の結合構成要素を共に前記ヒト類似形状に属すると識別するステップと、
前記第1と前記第2の結合構成要素を共に有する前記ヒト類似形状の1つの画像を生成するステップと、
を有することを特徴とする、データを処理する方法。
【請求項15】
前記深さマップを処理するステップは、
前記深さマップに基づいて前記場面の背景モデルを構築するステップと、
近景マップを生成するため前記背景モデルを前記深さマップから取り除くステップと、
前記3次元(3D)結合構成要素を前記近景マップ内で識別するステップと、
を有することを特徴とする、請求項14に記載の方法。
【請求項16】
前記深さマップを処理するステップは、
前記深さマップに縁辺を配置し、ピクセルのブロックを前記縁辺の間に配置するステップと、
前記3次元(3D)結合構成要素を識別するため、3次元で隣接する前記ピクセルのブロックをクラスタに纏めるステップと、
を有することを特徴とする、請求項14に記載の方法。
【請求項17】
前記深さマップを受け取るステップは、深さマップの一時的な順列を受け取るステップを有し、
前記第1と第2の結合構成要素を識別するステップは、前記結合構成要素を前記順列内の多重の連続する深さマップに亘って追跡するステップを有する、
ことを特徴とする請求項14に記載の方法。
【請求項18】
前記結合構成要素を追跡するステップは、
共通の識別子を前記順列内の第1の深さマップ内の前記第1と第2の結合構成要素に付与するステップと、
前記共通の識別子を使用して、前記第1と第2の結合構成要素が第2の後続の深さマップ内の前記ヒト類似形状に属することを判定するステップと、
を有し、
ここにおいて前記第2の深さマップ内では、前記第1と第2の結合構成要素が分離されている、
ことを特徴とする、請求項17に記載の方法。
【請求項19】
前記共通の識別子を付与するステップは、前記深さマップ内の前記第1と第2の結合構成要素の前記ピクセルを、前記共通の識別子で標識付けするステップを有する、ことを特徴とする請求項18に記載の方法。
【請求項20】
前記第2の深さマップ内の前記ヒト類似形状が他の1つの物体と接触し、それにより、前記第2の結合構成要素を前記他の1つの物体と合体するようにさせ、
前記共通の識別子を使用するステップは、
前記第2の深さマップに現れる前記ヒト類似形状の前記画像を生成するため、前記ヒト類似形状に属する前記第2の結合構成要素の前記標識付けされたピクセルを、他の物体に属するピクセルから分離するステップを有する、
ことを特徴とする、請求項19に記載の方法。
【請求項21】
前記結合構成要素を追跡するステップは、前記結合構成要素の動きの速度を推計するステップを有し、
前記画像を生成するステップは、推計された前記速度を使用して、前記ヒト類似形状に覆い隠された部分の識別を維持するステップを有する、
ことを特徴とする、請求項17に記載の方法。
【請求項22】
前記深さマップ内の前記ヒト類似形状は、部分的に他の1つの物体により妨害されており、
前記第1と第2の結合構成要素は前記妨害する物体によって分離される前記 ヒト類似形状の部分に対応し、
前記画像を生成するステップは、前記第1と第2の結合構成要素の両方を前記ヒト類似形状の前記画像内に組み入れるステップを有する、
ことを特徴とする、請求項14に記載の方法。
【請求項23】
前記第1と第2の結合構成要素は前記ヒト類似形状の第1と第2の部分に相当し、
前記第2の部分は前記深さマップ内で前記第1の部分を部分的に妨害し、
前記画像を生成するステップは、前記第1と第2の結合構成要素の両方を前記ヒト類似形状の前記画像内に組み入れるステップを有する、
ことを特徴とする、請求項14に記載の方法。
【請求項24】
画像化組立体と、
前記画像化組立体は、静止した背景と前記背景の一部を覆い隠す1つ以上の動く近景物体とを含む、1つの場面の深さマップの一時的な順列を生成するように構成され、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
プロセッサと、
を有し、
前記プロセッサは、
前記動く近景物体により覆い隠されていない、前記静止した背景の第1の部分を前記第1の深さマップ内で識別するため、前記順列の中の第1の深さマップを処理し、
前記静止した背景の少なくとも第2の部分を識別するため、前記順列の中の少なくとも第2の深さマップを処理し、
ここにおいて前記第2の部分は、少なくとも1つの前記近景物体の前記順列に亘る動きに起因して前記第1の部分とは異なり、
少なくとも前記静止した背景の前記第1の部分と前記第2の部分を組合せることにより、前記場面の1つの背景モデルを構築する、
ように構成される、
ことを特徴とするデータ処理装置。
【請求項25】
前記プロセッサは、前記背景モデルに基づき、1つ以上の背景物体を前記深さマップから取り除くことにより、1つ以上の近景マップを生成するように構成される、ことを特徴とする請求項24に記載の装置。
【請求項26】
少なくとも1つの前記動く近景物体がヒト類似形状であり、
前記プロセッサは、前記ヒト類似形状を、前記第1の深さマップ内の前記ヒト類似形状に関する情報と共に、前記第2の深さマップに由来する1つの近景マップから抽出するように構成される、ことを特徴とする請求項25に記載の装置。
【請求項27】
前記プロセッサは、前記背景物体の1つに接触する、前記ヒト類似形状に属する1つの領域を検知し、そして前記領域を前記ヒト類似形状の一部として識別するように構成される、ことを特徴とする請求項26に記載の装置。
【請求項28】
前記プロセッサは、前記深さマップ内で平滑な表面を識別するように構成される、ことを特徴とする請求項24に記載の装置。
【請求項29】
前記プロセッサは、前記深さマップ内で1つの物体の影を識別するように構成される、ことを特徴とする請求項24に記載の装置。
【請求項30】
前記プロセッサは、前記深さマップの前記順列に亘って前記背景に現れる変化に対応して、前記背景モデルを更新するように構成される、ことを特徴とする請求項24に記載の装置。
【請求項31】
前記プロセッサは、前記順列内の前記深さマップの間における前記背景モデル内の前記変化の程度を評価し、
前記変化の程度が事前に設定された閾値を超えた場合に、前記画像化組立体が移動したことを検知するように構成される、ことを特徴とする請求項30に記載の装置。
【請求項32】
画像化組立体と、
前記画像化組立体は、表面に対して位置決めされた1つ以上の物体を含む、1つの場面の深さマップを生成するように構成され、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
プロセッサと、
を有し、
前記プロセッサは、
前記表面のパラメトリックなモデルを識別し生成するため、前記順列の中の深さマップを処理し、
前記パラメトリックなモデルにより表示された前記表面を前記深さマップから取り除くことにより、前記場面内の1つ以上の物体を区分する、
ように構成される、
ことを特徴とするデータ処理装置。
【請求項33】
少なくとも1つの前記物体がヒト類似形状であり、
前記プロセッサは、前記ヒト類似形状を、深さマップから抽出するように構成される、ことを特徴とする請求項32に記載の装置。
【請求項34】
前記表面は床に対応する平滑な表面であり、少なくとも1つの前記物体が前記床の上に位置する、ことを特徴とする請求項32に記載の装置。
【請求項35】
前記プロセッサは、
前記深さマップ内のピクセルにおける局地的な法線を計算し、そして、
前記平滑な表面を識別するため、前記局地的な法線に従って前記ピクセルをクラスタに纏める、ように構成されることを特徴とする請求項34に記載の装置。
【請求項36】
前記プロセッサは、
それぞれのピクセルに対する前記画像化組立体の高さを推定するため、少なくとも幾つかのピクセルのそれぞれの深さ値を処理し、そして、
前記画像化組立体の同一の前記高さを有する前記ピクセルをクラスタに纏める、ように構成されることを特徴とする請求項35に記載の装置。
【請求項37】
画像化組立体と、
前記画像化組立体は、1つのヒト類似形状を含む1つの場面の深さマップを受け取るように構成され、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
プロセッサと、
を有し、
前記プロセッサは、
前記場面内の3次元(3D)結合構成要素を識別するため、デジタルプロセッサを使用して前記深さマップを処理し、
ここにそれぞれの前記結合構成要素は、相互に隣接し、かつ隣接する深さ値を有する1組のピクセルからなり、
別々の第1と第2の結合構成要素を共に前記ヒト類似形状に属すると識別し、
前記第1と前記第2の結合構成要素を共に有する前記ヒト類似形状の1つの画像を生成する、
ように構成される、
ことを特徴とするデータ処理装置。
【請求項38】
前記プロセッサは、
前記深さマップに基づいて前記場面の背景モデルを構築し、
近景マップを生成するため前記背景モデルを前記深さマップから取り除き、そして、
前記3次元(3D)結合構成要素を前記近景マップ内で識別する、
ように構成される、ことを特徴とする請求項37に記載の装置。
【請求項39】
前記プロセッサは、
前記深さマップに縁辺を配置し、ピクセルのブロックを前記縁辺の間に配置し、
前記3次元(3D)結合構成要素を識別するため、3次元で隣接する前記ピクセルのブロックをクラスタに纏める、
ように構成される、ことを特徴とする請求項37に記載の装置。
【請求項40】
前記画像化組立体は、深さマップの一時的な順列を受け取るように構成され、
前記プロセッサは、前記結合構成要素を前記順列内の多重の連続する深さマップに亘って追跡するように構成される、
ことを特徴とする請求項37に記載の装置。
【請求項41】
前記プロセッサは、
共通の識別子を前記順列内の第1の深さマップ内の前記第1と第2の結合構成要素に付与し、そして、
前記共通の識別子を使用して、前記第1と第2の結合構成要素が第2の後続の深さマップ内の前記ヒト類似形状に属することを判定する、
ように構成され、
ここにおいて前記第2の深さマップ内では、前記第1と第2の結合構成要素が分離されている、
ことを特徴とする請求項40に記載の装置。
【請求項42】
前記プロセッサは、
前記深さマップ内の前記第1と第2の結合構成要素の前記ピクセルを、前記共通の識別子で標識付けするように構成される、ことを特徴とする請求項41に記載の装置。
【請求項43】
前記第2の深さマップ内の前記ヒト類似形状が他の1つの物体と接触し、それにより、前記第2の結合構成要素を前記他の1つの物体と合体するようにさせ、
前記プロセッサは、
前記第2の深さマップに現れる前記ヒト類似形状の前記画像を生成するため、前記ヒト類似形状に属する前記第2の結合構成要素の前記標識付けされたピクセルを、他の物体に属するピクセルから分離する、
ように構成されることを特徴とする請求項42に記載の装置。
【請求項44】
前記プロセッサは、
前記結合構成要素の動きの速度を推計し、
推計された前記速度を使用して、前記ヒト類似形状に覆い隠された部分の識別を維持するように構成される、ことを特徴とする請求項40に記載の装置。
【請求項45】
前記深さマップ内の前記ヒト類似形状は、部分的に他の1つの物体により妨害されており、
前記第1と第2の結合構成要素は前記妨害する物体によって分離される前記ヒト類似形状の部分に対応し、
前記プロセッサは、前記第1と第2の結合構成要素の両方を前記ヒト類似形状の前記画像内に組み入れるように構成される、
ことを特徴とする請求項37に記載の装置。
【請求項46】
前記第1と第2の結合構成要素は前記ヒト類似形状の第1と第2の部分に相当し、
前記第2の部分は前記深さマップ内で前記第1の部分を部分的に妨害し、
前記プロセッサは、前記第1と第2の結合構成要素の両方を前記ヒト類似形状の前記画像内に組み入れるように構成される、
ことを特徴とする請求項37に記載の装置。
【請求項47】
プログラム命令が保管される接触可能なコンピュータ読み取り可能媒体を有し、
前記命令はコンピュータにより読み込まれた時コンピュータに対し、
1つの場面の深さマップの一時的順列を受け取るステップと、
前記場面は、1つの静止した背景と前記背景の一部を覆い隠す1つ以上の動く近景物体を有し、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
前記動く近景物体により覆い隠されていない、前記静止した背景の第1の部分を前記第1の深さマップ内で識別するため、デジタルプロセッサを使用して、前記順列の中の第1の深さマップを処理するステップと、
前記静止した背景の少なくとも第2の部分を識別するため、前記順列の中の少なくとも第2の深さマップを処理するステップと、
前記第2の部分は、少なくとも1つの前記近景物体の前記順列に亘る動きに起因して前記第1の部分とは異なり、
少なくとも前記静止した背景の前記第1の部分と前記第2の部分を組合せることにより、前記場面の1つの背景モデルを構築するステップと、
を実行させる、ことを特徴とするコンピュータソフトウェア製品。
【請求項48】
前記命令はコンピュータに対し、
前記背景モデルに基づき、1つ以上の背景物体を前記深さマップから取り除くことにより、1つ以上の近景マップを生成するステップを実行させる、ことを特徴とする請求項47に記載の製品。
【請求項49】
少なくとも1つの前記動く近景物体がヒト類似形状であり、
前記命令はコンピュータに対し、
前記ヒト類似形状を、前記第1の深さマップ内の前記ヒト類似形状に関する情報と共に、前記第2の深さマップに由来する1つの近景マップから抽出するステップを実行させる、ことを特徴とする請求項48に記載の製品。
【請求項50】
前記命令はコンピュータに対し、
前記背景物体の1つに接触する、前記ヒト類似形状に属する1つの領域を検知するステップと、
前記領域を前記ヒト類似形状の一部として識別するステップと、
を実行させる、ことを特徴とする請求項49に記載の製品。
【請求項51】
前記命令はコンピュータに対し、
前記深さマップ内で平滑な表面を識別するステップを実行させる、ことを特徴とする請求項47に記載の製品。
【請求項52】
前記命令はコンピュータに対し、
前記深さマップ内で1つの物体の影を識別するステップを実行させる、ことを特徴とする請求項47に記載の製品。
【請求項53】
前記命令はコンピュータに対し、
前記深さマップの前記順列に亘って前記背景に現れる変化に対応して、前記モデルを更新するステップを実行させる、ことを特徴とする請求項47に記載の製品。
【請求項54】
前記命令はコンピュータに対し、
前記順列内の前記深さマップの間における前記背景モデル内の前記変化の程度を評価するステップと、
前記変化の程度が事前に設定された閾値を超えた場合に、前記画像化組立体が移動したことを検知するステップと、
を実行させることを特徴とする請求項53に記載の製品。
【請求項55】
プログラム命令が保管される接触可能なコンピュータ読み取り可能媒体を有し、
前記命令はコンピュータにより読み込まれた時コンピュータに対し、
表面に対して位置決めされた1つ以上の近景物体を有する1つの場面の1つの深さマップを受け取るステップを実行させ、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
ここにおいて前記命令はコンピュータに対し、
前記表面のパラメトリックなモデルを生成するため、デジタルプロセッサを使用して前記深さマップを処理するステップと、
前記パラメトリックなモデルにより示される前記表面を、前記深さマップから取り除くことにより、前記場面内の1つ以上の前記物体を区分するステップと、
を実行させる、ことを特徴とするコンピュータソフトウェア製品。
【請求項56】
少なくとも1つの前記物体がヒト類似形状であり、
前記命令はコンピュータに対し、前記深さマップから前記ヒト類似形状を抽出するステップを実行させる、ことを特徴とする請求項55に記載の製品。
【請求項57】
前記表面が、その上に少なくとも1つの前記物体が位置する、床に対応する平滑な表面である、ことを特徴とする請求項55に記載の製品。
【請求項58】
前記命令はコンピュータに対し、
前記深さマップ内のピクセルにおける局地的な法線を計算するステップと、
前記平滑な表面を識別するため、前記局地的な法線に従って前記ピクセルをクラスタに纏めるステップと、
を実行させることを特徴とする請求項57に記載の製品。
【請求項59】
前記命令はコンピュータに対し、
それぞれのピクセルに対する前記画像化組立体の高さを推定するため、少なくとも幾つかのピクセルのそれぞれの深さ値を処理するステップと、
前記画像化組立体の同一の前記高さを有する前記ピクセルをクラスタに纏めるステップと、
を実行させることを特徴とする請求項58に記載の製品。
【請求項60】
プログラム命令が保管される接触可能なコンピュータ読み取り可能媒体を有し、
前記命令はコンピュータにより読み込まれた時コンピュータに対し、
1つのヒト類似形状を含む1つの場面の深さマップを受け取るステップを実行させ、
前記深さマップは、ピクセルの1つの行列からなり、前記ピクセルの少なくとも幾つかはそれぞれのピクセル深さ値を有し、前記場面内のそれぞれの位置に対応し、
ここにおいて前記命令はコンピュータに対し、
前記場面内の3次元(3D)結合構成要素を識別するため、デジタルプロセッサを使用して前記深さマップを処理するステップと、
それぞれの前記結合構成要素は、相互に隣接し、かつ隣接する深さ値を有する1組のピクセルからなり、
別々の第1と第2の結合構成要素を共に前記ヒト類似形状に属すると識別するステップと、
前記第1と前記第2の結合構成要素を共に有する前記ヒト類似形状の1つの画像を生成するステップと、
を実行させる、ことを特徴とするコンピュータソフトウェア製品。
【請求項61】
前記命令はコンピュータに対し、
前記深さマップに基づいて前記場面の背景モデルを構築するステップと、
近景マップを生成するため前記背景モデルを前記深さマップから取り除くステップと、
前記3次元(3D)結合構成要素を前記近景マップ内で識別するステップと、
を実行させることを特徴とする請求項60に記載の製品。
【請求項62】
前記命令はコンピュータに対し、
前記深さマップに縁辺を配置し、ピクセルのブロックを前記縁辺の間に配置するステップと、
前記3次元(3D)結合構成要素を識別するため、3次元で隣接する前記 ピクセルのブロックをクラスタに纏めるステップと、
を実行させることを特徴とする請求項60に記載の製品。
【請求項63】
前記画像化組立体は、深さマップの一時的な順列を生成するように構成され、
前記命令はコンピュータに対し、前記結合構成要素を前記順列内の多重の連続する深さマップに亘って追跡するステップを実行させる、
ことを特徴とする請求項60に記載の製品。
【請求項64】
前記命令はコンピュータに対し、
共通の識別子を前記順列内の第1の深さマップ内の前記第1と第2の結合構成要素に付与するステップと、
前記共通の識別子を使用して、前記第1と第2の結合構成要素が第2の後続の深さマップ内の前記ヒト類似形状に属することを判定するステップと、
を実行させ、
ここにおいて前記第2の深さマップ内では、前記第1と第2の結合構成要素が分離されている、
ことを特徴とする請求項63に記載の製品。
【請求項65】
前記命令はコンピュータに対し、
前記深さマップ内の前記第1と第2の結合構成要素の前記ピクセルを、前記共通の識別子で標識付けするステップを実行させる、ことを特徴とする請求項64に記載の製品。
【請求項66】
前記第2の深さマップ内の前記ヒト類似形状が他の1つの物体と接触し、それにより、前記第2の結合構成要素を前記他の1つの物体と合体するようにさせ、
前記命令はコンピュータに対し、
前記第2の深さマップに現れる前記ヒト類似形状の前記画像を生成するため、前記ヒト類似形状に属する前記第2の結合構成要素の前記標識付けされたピクセルを、他の物体に属するピクセルから分離するステップを実行させる、
ことを特徴とする請求項65に記載の製品。
【請求項67】
前記命令はコンピュータに対し、
前記結合構成要素の動きの速度を推計するステップと、
推計された前記速度を使用して、前記ヒト類似形状に覆い隠された部分の識別を維持するステップと、
を実行させることを特徴とする請求項63に記載の製品。
【請求項68】
前記深さマップ内の前記ヒト類似形状は、部分的に他の1つの物体により妨害されており、
前記第1と第2の結合構成要素は前記妨害する物体によって分離される前記ヒト類似形状の部分に対応し、
前記命令はコンピュータに対し、
前記第1と第2の結合構成要素の両方を前記ヒト類似形状の前記画像内に組み入れるステップを実行させる、
ことを特徴とする請求項60に記載の製品。
【請求項69】
前記第1と第2の結合構成要素は前記ヒト類似形状の第1と第2の部分に相当し、
前記第2の部分は前記深さマップ内で前記第1の部分を部分的に妨害し、
前記命令はコンピュータに対し、
前記第1と第2の結合構成要素の両方を前記ヒト類似形状の前記画像内に組み入れるステップを実行させる、
ことを特徴とする請求項60に記載の製品。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2011−253521(P2011−253521A)
【公開日】平成23年12月15日(2011.12.15)
【国際特許分類】
【出願番号】特願2011−76786(P2011−76786)
【出願日】平成23年3月30日(2011.3.30)
【出願人】(308042089)プライムセンス リミテッド (9)
【Fターム(参考)】