(57)【特許請求の範囲】
【請求項１】
被監視シーン空間に対応する三次元監視空間中に、少なくとも一つの仮想境界をコンピュータにより設定することと；
前記被監視シーン空間中を移動するオブジェクトを追跡すべく、受信したイメージデータ及び深度データを処理することと；
前記被監視シーン空間における前記オブジェクトの方角を決定することと；
結合オーディオ信号を生成すべく、前記方角に依存して、空間的に分散配置される複数のマイクロフォンの出力を適応的にフィルタリングすることと；
を含む方法であって、
前記結合オーディオ信号は、ターゲット方向において指向性ゲインを有し、
前記被監視シーン空間中に、前記仮想境界により区切られる、第１の部分及び第２の部分を少なくとも設定することと；
前記第１の部分から前記第２の部分へ前記仮想境界をまたいで前記オブジェクトが移動することを検出することと；
前記移動を前記検出することに応じて、前記ターゲット方向を、前記第１の部分に関連付けられる一つ又は複数のターゲット方向のいずれかである第１の方向から、前記第２の部分に関連付けられる一つ又は複数のターゲット方向のいずれかであって前記第１の方向とは異なる第２の方向へと変化させることと；
を更に含む、方法。
【請求項２】
前記結合オーディオ信号は、前記オブジェクトにより生成される音声を強調する指向性ゲインを有するように構成される、請求項１に記載の方法。
【請求項３】
前記仮想境界は、前記コンピュータがジェスチャを認識することに応じて設定される、請求項１又は２に記載の方法。
【請求項４】
前記ターゲット方向は前記方角に依存して決定されるか、及び／又は、前記ターゲット方向は前記方角と同じ方向である、請求項１から３のいずれかに記載の方法。
【請求項５】
コンピュータにより設定される仮想境界によって区切られた複数の部分を前記被監視シーン空間に設定することと；
前記複数の部分中の初めの部分から前記複数の部分中の移動先部分へ、前記仮想境界のいずれか一つ以上をまたいで前記オブジェクトが移動することを検出することと；
前記移動を前記検出することに応じて、前記ターゲット方向を、前記初めの部分中の既定の方向を指す方向から、前記移動先部分中の既定の方向を指す方向へと変化させること；
を更に含む、請求項１から４のいずれかに記載の方法。
【請求項６】
コンピュータにより設定される一つ又は複数の仮想境界のユーザ設定、及び／又は、一つ又は複数のターゲット方向のユーザ設定を可能にすることを含む、請求項１から５のいずれかに記載の方法。
【請求項７】
前記フィルタリングすることは、前記方角に依存して構成される、フィルタサム型のビームフォーミング要素またはディレイサム型のビームフォーミング要素を用いることを含む、請求項１から６の何れかに記載の方法。
【請求項８】
前記フィルタリングすることは、前記複数のマイクロフォンの全ての出力に共通のフィルタリングを施すか、前記複数のマイクロフォンの出力にそれぞれ異なるフィルタリングを施すかを決定することを含む、請求項１から７の何れかに記載の方法。
【請求項９】
請求項１から８の何れかに記載の方法であって、
前記フィルタリングが、前記オブジェクトにより生成された音声を強調するように構成される指向性ゲインを有するか、前記オブジェクト以外により生成された音声を強調するように構成される指向性ゲインを有するかを決定すること；
及び／又は、
前記フィルタリングが、前記オブジェクトにより生成された音声を強調するように構成される指向性ゲインを有するか、別のオブジェクトにより生成された音声を強調するように構成される指向性ゲインを有するかを決定すること；
を含む、方法。
【請求項１０】
前記処理すること、前記決定すること、前記フィルタリングすることはリアルタイムで行われ、リアルタイムで前記結合オーディオ信号を生成する、請求項１から９の何れかに記載の方法。
【請求項１１】
前記複数のマイクロフォンは、一様な間隔で配されるアレイ、固定的なアレイ、デバイスに内蔵されるマイクロフォン、のいずれか一つ以上である、請求項１から１０の何れかに記載の方法。
【請求項１２】
少なくとも一つの仮想境界に関連して前記被監視シーン空間の一部に変化があったとき、受け取ったデータを処理して応答イベントを生成することと；
前記応答イベントに応じて、前記フィルタリングを変化させることと；
を含む、請求項１から１１の何れかに記載の方法。
【請求項１３】
監視空間内に、コンピュータにより設定される少なくとも一つの仮想境界を定めるべく、少なくとも一つのジェスチャを認識すること、但し前記監視空間と前記被監視シーン空間との間には対応関係が存在する、前記認識することと；
前記被監視シーン空間に対応する前記監視空間に前記少なくとも一つの仮想境界を設定することと；
を含む、請求項１２に記載の方法。
【請求項１４】
少なくとも請求項１から１３のいずれかに記載の方法を実行する手段を備える、装置。
【請求項１５】
装置の少なくとも一つのプロセッサにより実行されると、前記装置に、請求項１から１３のいずれかに記載の方法が少なくとも遂行させるように構成されるコンピュータプログラムコードを備える、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態はシーンのモニタリングに関する。特に、自動化されたモニタリングに関する。
【背景】
【０００２】
現在のモニタリングシステムは、一つ又は複数のセンサを備え、これらのセンサは、有線又は無線で中央装置に接続される。中央装置は、シーンの記録データを保存したり、また保存することを可能にしたりする。
【摘要】
【０００３】
本願が開示する様々な実施例（但し必ずしも全ての実施例ではない）によれば、請求項１から１３のいずれかに記載の方法が提供される。
【０００４】
本願が開示する様々な実施例（但し必ずしも全ての実施例ではない）によれば、請求項１４に記載の装置が提供されてもよい。
【０００５】
必ずしも全ての実施例がそうであるわけではないが、いくつかの実施例によれば、次のような装置が提供される。この装置は、少なくとも一つのプロセッサと、コンピュータプログラムコードを含む少なくとも一つのメモリとを備える装置であって、前記プログラムコードが前記少なくとも一つのプロセッサに実行されると、前記装置に少なくとも、請求項１から１３のいずれかに記載の方法を遂行させる。
【０００６】
本願が開示する様々な実施例（但し必ずしも全ての実施例ではない）によれば、少なくとも１つのプロセッサに実行されると、少なくとも、請求項１−１３のいずれかに記載の方法が遂行されるように構成される、コンピュータプログラムコードが提供される。
【０００７】
本願が開示する様々な実施例（但し必ずしも全ての実施例ではない）によれば、コンピュータで実行されると、請求項１−１３のいずれかに記載の方法を遂行するコンピュータプログラムが提供される。
【０００８】
必ずしも全てではないが本発明の種々の実施形態によれば、添付する特許請求の範囲で特定されるような実施例が提供される。
【図面の簡単な説明】
【０００９】
前述の簡単な説明を理解するために有用な種々の実施例の理解に資するべく、例として次の添付図面を参照する。
【図１】システムの例の概略図である。
【図２】状態マシンの例を描いた図である。
【図３】処理モジュールの例を描いた図である。
【図４】コンピュータプログラムの配送メカニズムの例を描いた図である。
【図５】システムの動作の例を描いた図である。
【図６】システムによって遂行されうる方法の例を描いた図である。
【図７】追跡されるオブジェクトシステムの方角の例を描いた図である。
【図８】追跡される移動オブジェクトの方角に依存して、マイクロフォンの出力を適応的にフィルタリングするシステムの例を描いた図である。
【図９】図９Ａ−９Ｅは、追跡される移動オブジェクトの方角に依存して、マイクロフォンの出力を適応的にフィルタリングするシステムを使用する例を描いた図である。
【図１０】図１０Ａ−１０Ｅは、追跡される移動オブジェクトの方角に依存して、マイクロフォンの出力を適応的にフィルタリングするシステムを使用する例を描いた図である。
【詳細説明】
【００１０】
ここで紹介されるシステム１００は、少なくとも一つのシーンを監視すると共に、当該シーン中で追跡される移動オブジェクトの方角に依存して、空間的に分散配置される複数のマイクロフォンの出力を適応的にフィルタリングするシステムである。
【００１１】
図１に描かれるシステム１００は、シーン１４０からセンサデータ１１２を記録するように構成される一つ又は複数のセンサ１１０と、シーン１１４から記録されたセンサデータ１１２を処理し、シーン１４０で生じるイベントを自動的に認識し、その認識の結果として自動的に決定を下すように構成される処理モジュール１２０と、処理モジュール１２０によって通信することの決定がなされた場合に通信を行うように構成される通信モジュール１３０とを備える。
【００１２】
認識されるイベントの幾つか（但し必ずしも全てではない）は、シーン１４０の中のオブジェクト１５２（又は特定のオブジェクト１５２）に関連していてもよい。このオブジェクトは、シーン１４０の中の非生物の物体であったり、動物であったり、人物であったり、特定の人物１５０であったりしてもよい。システム１００の実施例の幾つか（但し必ずしも全てではない）において、システム１００は、リアルタイムの認識システムであり、センサデータ１１２が記録されたら、それとほぼ同時に自動的に認識及び判断を行う。
【００１３】
システム１００は、監督や監視等のアプリケーションに使用されてもよい。システム１００は、ビジネスで使用されてもよいし、公共の場所や自宅で使用されてもよい。
【００１４】
システム１００は、ユーザがモニタリングを制御することを可能にする。例えば、ユーザがシーン１４０中の人物１５０であるときに、そのような制御を行うことを可能にする。システム１００はまた、ユーザが、認識および／または認識の結果を制御することを可能にする。例えばユーザがシーン１４０中の人物１５０であるときに、そのような制御を行うことを可能にする。
【００１５】
（必ずしも全ての例においてではないが）いくつかの例において、システム１００は、物理的に異なるいくつかの装置を備えていてもよい。例えば、複数のセンサ１１０を有してもよく、これらセンサ１１０はそれぞれ複数の異なる装置のいずれか配されていてもよい。また、処理モジュール１２０や通信モジュール１３０も、１つ以上の装置の中に配されていてもよい。システム１００の構成要素または構成要素群が物理的に異なる複数の装置に配される場合、これらの装置は全てローカルに存在していても、それぞれ互いにリモートに存在していてもよく、これらの装置がリモートにある場合、これらは、例えば、ネットワークを介して通信することができる。
【００１６】
（必ずしも全ての例においてではないが）いくつかの例において、システム１００は、単一の装置の中に収容されていてもよい。
【００１７】
センサ１１０は、シーン１４０からセンサデータ１１２を記録するか記録を可能にするように構成される。
【００１８】
シーン１４０は、例として、例えば静的なオブジェクトなど、相対的位置が固定された静的な構成要素を有してもよい。これらの静的なオブジェクトは、シーンの三次元空間（シーン空間）においていろいろな静的位置を有する。シーン１４０は、例えば動くオブジェクトなど、動く構成要素を有してもよい。動くオブジェクトは、シーン空間中で時間経過とともに様々な位置をとる。様々なセンサデータ１１２又は様々な時間に関連する「シーン」への言及は、シーン１４０中で検出された静的構成要素がそこに存在し続けることを暗示するが、動的な構成要素の一部または全部がそこに存在し続けることは、そのような場合があることはあるにしても、必ずしも暗示しない。
【００１９】
センサデータ１１２の記録は、一時的記録だけを含むこともあり、または恒久的記録を含むこともあり、または、一時的記録および恒久的記録の両方を含むこともある。一時的記録はデータを一時的に記録することを意味する。これは、例えば、検出する過程で行われることがあり、ダイナミックメモリで行われることがあり、循環バッファなどのバッファ、レジスタ、キャッシュ、または類似のものにおいて行われることもある。恒久的記録は、当該データがアドレス可能なメモリ空間から読み出し可能なアドレス可能データ構造の形式であることを暗示し、したがって削除または上書きされるまでは格納され読み出すことができるが、非揮発的な格納がされることもされないこともある。
【００２０】
センサ１１０は、音波および／または光波などの伝搬波を、電気信号に変換するように構成することができる。この電気信号は、シーン１４０からの伝搬波データを符号化するセンサデータ１１２である。
【００２１】
（必ずしも全ての例においてではないが）いくつかの例において、センサ１１０は、シーン空間１４０に対して空間的に固定される。他の例では、センサ１１０は、シーン空間１４０に対して移動しうるか、または移動している。
【００２２】
（必ずしも全ての実施形態においてではないが）いくつかの実施形態において、センサ１１０はイメージセンサ１１４であるか、またはイメージセンサを備える。イメージセンサ１１４の一例は、カメラとして動作するように構成されたデジタルイメージセンサである。こうしたカメラは、静止画、ビデオ画像の一方又は両方を記録するように動作することができる。
【００２３】
（必ずしも全ての実施形態においてではないが）いくつかの実施形態において、カメラは、シーン１４０がいろいろな視点から視覚的にサンプリングされうるように、立体的配置（または他の空間的配置）に構成することができる。これは、三次元画像の生成、視差効果等を介した奥行きを設定する処理の一方又は両方を可能する。
【００２４】
（必ずしも全ての実施形態においてではないが）いくつかの実施形態において、センサ１１０はオーディオセンサ１１６であるか、またはオーディオセンサを備える。オーディオセンサ１１６の一例は、１つ又は複数のマイクロフォンである。マイクロフォンは、いろいろな収録点からシーン１４０が音声サンプリングされうるように、マイクロフォンアレイなど、立体的配置（または他の空間的配置）に構成することができる。これは、シーン１４０内のオーディオのポジショニングを可能にする三次元空間オーディオ処理を可能にできる。
【００２５】
（必ずしも全ての実施形態においてではないが）いくつかの実施形態において、これらのセンサは奥行きセンサ１１８であるか、または奥行きセンサを備える。深度センサ１１８は、トランスミッタ及びレシーバを備えてもよい。トランスミッタは（例えば、超音波または赤外光など人間が検出できない信号などの）信号を送信し、レシーバは反射された信号を受信する。単一のトランスミッタ及び単一のレシーバを用い、送信から受信までの伝搬時間を測定することによって、一部の奥行き情報を得ることができる。使用するトランスミッタの数又は使用するレシーバの数、あるいはその両方の数が多ければ多いほど、より高い分解能（空間的ダイバーシティ）が達成できる。一例において、トランスミッタは、光、好ましくは、赤外光など不可視光を使い、空間依存的パターンで、シーン１４０を「描く」ように構成される。レシーバによる特定のパターンの検出は、シーン１４０が空間的に分解されることを可能にする。シーン１４０の空間的に分解された部分への距離は、伝搬時間および／または（レシーバがトランスミッタに対し立体的な位置にある場合）立体視法によって測定ができる。
【００２６】
これらの奥行き検出の「受動的」または「非能動的」例では、検出対象の人物１５０またはオブジェクト１５２は受動的で、トランスミッタによって放射される光または音波を反射しているだけである。但し、検出されるオブジェクトの動き必要とする「能動的」例を、追加してまたは代わりに用いることができる。一例として、人物１５０は、測位装置を携行していてもよく、この測位装置は、シーン空間内で、当該測位装置の位置を決定しうるように構成されてもよい。この測位装置は、例えば加速度計を使って、基準位置からの当該測位装置の動きを測定することができる。実施例によっては、方位を測定するためにジャイロスコープを用いてもよい。上記に加えてまたは換えて、上記測位装置は、複数のレシーバに送信したり、複数のトランスミッタから受信したりすることによって、三角測量（三辺測量）を用い、位置決定を行ってもよい。
【００２７】
必ずしも全ての例ではないが、本願で示される例において、処理モジュール１２０は、メモリサブモジュール１２２、処理サブモジュール１２４、認識サブモジュール１２６、および制御サブモジュール１２８を備える。これらの「モジュール」は別々に記載され、示されているが、これらは、必須ではない。実施形態によってはこれらは別々のモジュールではないこともある。また、いろいろな組み合せに結合されている場合もある。例えば、処理サブモジュール１２４、認識サブモジュール１２６、および制御サブモジュール１２８は、同一の回路、または同一のコンピュータプログラムの制御の下で実装されることができる。上記に換えて、処理サブモジュール１２４、認識サブモジュール１２６、および制御サブモジュール１２８の１つ以上を、専用の回路または専用のコンピュータプログラムによって実装することもできる。これらサブモジュールは、ソフトウェア、専用のハードウェア、またはプログラムされたハードウェアとソフトウェアとの混成を使って実行することができる。
【００２８】
メモリサブモジュール１２２は、未処理のセンサデータおよび／または処理済みのセンサデータ１１２（シーンデータ）、コンピュータプログラム、シーン空間モデル、および処理モジュール１２０によって使われる他のデータを格納するために用いることができる。実施例によっては、他のサブモジュールがそれぞれ独自にメモリを有してもよい。
【００２９】
処理サブモジュール１２４は、シーン１４０について有意味なシーンデータを判断するために、センサデータ１１２を処理するように構成されてもよい。
【００３０】
処理サブモジュール１２４は、センサデータ１１２がカメラまたはカメラ群１１４からの画像データを含む場合に、画像処理を行うように構成されることができる。
【００３１】
処理サブモジュール１２４は、センサデータ１１２がマイクロフォンまたはマイクロフォン群１１６からのオーディオデータを含む場合に、オーディオ処理を行うように構成されることができる。
【００３２】
処理サブモジュール１２４は、シーン１４０に対して有意味な可能性のあるシーンデータを生成するために、センサデータ１１２を用いて、以下のタスクの１つ以上を自動的に実行するように構成されることができる。
【００３３】
（ア）マシン（コンピュータ）ビジョンを用いて、
・  （移動しているまたは静的な）オブジェクトまたは人物を検出する。
・  （移動しているまたは静的な）オブジェクトまたは人物を分類する。
・  （移動しているまたは静的な）オブジェクトまたは人物を追跡する。の１つ以上を実行する；
【００３４】
（イ）空間分析を用い、
・  奥行き検出を使ってシーン空間中の（移動しているまたは静的な）オブジェクトの位置決めをする。
・  シーン空間のマップを生成する。
【００３５】
（ウ）挙動分析を用いて、シーン１４０中で生じるイベントを、有意味な可能性のあるシンボルとして記述する。
【００３６】
画像処理の一例に、画像に対する輝度勾配またはエッジ方向の分布を生成する「勾配特徴ヒストグラム（histogram of gradient features）」分析がある。画像は小さな結合された領域（セル）に分割することが可能で、各セルに対し、セル内の画素に対する勾配方向またはエッジ方位のヒストグラムが生成される。次いで、これらのヒストグラムの組み合せが、記述子（descriptor）を表現する。
【００３７】
オーディオ処理の例には、「メル周波数ケプストラル係数（mel-frequency cepstral coefficients）」決定、（例えばオーディオビーム形成技法を使う）空間オーディオ処理、オーディオイベント認識もしくは分類、話者認識もしくは検証、またはスピーチ認識がある。
【００３８】
動き検出は、例えば、背景モデルに対する差分（背景除去法）、もしくは先行画像に対する差分（時間差分）を用い、または、ベクトルベースのアプローチを使うオプティカルフロー分析など、何らかの他のアプローチを用いて達成することができる。
【００３９】
オブジェクト分類は、例えば、形状ベースの分析、および／または動きベースの分析を用いて達成することができる。
【００４０】
人物の分類処理は、オブジェクトが人間か否かという分類処理であってもよい。または、オブジェクトが特定の人間（身元）であるか否かという分類処理であってもよい。身元確認は、可能性のある人物群のセット内の人物を一意的に識別する属性または属性の組み合せを用いて達成ができる。属性の例は、顔または声など、人物の固有のまたは固有であり得るバイオメトリック特徴を含んでもよい。また、人物の外形およびサイズ、その挙動を含んでもよい。
【００４１】
オブジェクトの追跡は、オブジェクトを標識し、該標識されたオブジェクトのシーン１４０中での位置を記録することによって達成することができる。このアルゴリズムは、シーン１４０へのオブジェクトの入場、シーン１４０からのオブジェクトの退場、シーン１４０へのオブジェクトの再入場、オブジェクトの遮蔽、オブジェクトの統合、のイベントのうちの１つ以上を取り扱う必要があり得る。これらのイベントをどう取り扱うかは本願の技術分野で既に知られている。
【００４２】
オブジェクト追跡は、オブジェクトまたは人物がいつ変化したかを判断するために用いてもよい。例えば、物体を大きなマクロスケールで追跡することで、その物体と共に移動する基準枠を生成することができる。この基準枠は、物体に対する時間差分を用いて物体の形状の時間進展的な変化を追跡するために使うことができる。これは、ジェスチャ、手の動き、顔面の動きなど小規模な人間の動きを検出するために用いることができる。これらは、ユーザに関連する、シーン非依存性のユーザ（のみ）の動きである。
【００４３】
システムは、例えば、人物の体の関節１つ以上など、人物の身体に関連する複数のオブジェクトおよび／またはポイントを追跡することができる。いくつかの例において、システム１００は、人物の身体の全身骨格的な追跡を実行することができる。
【００４４】
人物の身体に関連する１つ以上のオブジェクトおよび／またはポイントの追跡技術が、ジェスチャの認識などにおいて、システム１００によって使用されてよい。
【００４５】
行動分析（Behaviour analysis）は、有意味シンボル体系を使って、シーン１４０中で生じるイベントを表すことを必要とする。イベントは、時空的なインスタンスで生じるある事柄でもよく、また時空的なシーケンス（時間経過における時空的インスタンスのパターン）でもよい。イベントは、オブジェクト（または人物）の動き、または人物とオブジェクトとの相互作用に関連するものでもよい。
【００４６】
（必ずしも全てではないが）いくつかの実装例において、イベントは、マシン（コンピュータ）ビジョン分析および／または空間分析から決定されたパラメータに関して定義された推定シンボルによって表現できる。これらのパラメータは、起こっていること、起こっている場所、起こっている時間、および誰がそれをしているかの、一つ以上を符号化する。
【００４７】
認識サブモジュール１２６は、シーン１４０中のイベントを、特定の意味に関連付けられた有意味シンボルとして符号化する推定シンボルを認識するように構成される。
【００４８】
認識サブモジュール１２６は、意味を有するとして、マシン（コンピュータ）ビジョン分析および／または空間分析から決定されたパラメータに関して定義され、処理サブモジュール１２４によって生成された推定シンボルを、認識するように構成することができる。認識サブモジュール１２６は、例えば、有意味参照シンボルのデータベースに格納を行い、またはアクセスすることが可能で、推定シンボルが或る有意味シンボルに「類似」しているかどうかを判断するための相似検査を用いることができる。
【００４９】
認識サブモジュール１２６は、パラメータ空間中の人工ニューラルネットワークまたはクラスタリングなど、マシン（コンピュータ）推論エンジンまたは他の認識エンジンとして構成してもよい。いくつかの例において、認識サブモジュール１２６には、有意味シンボルを参照シンボルと類似であると認識するために、教師あり学習（supervised learning）を介して教育訓練を施すことができる。
【００５０】
制御サブモジュール１２８は、有意味なイベントがシーン１４０で生じたとの判断に、そのイベントに応じて応答する。
【００５１】
ａ）推定シンボルが、応答シンボルに類似している場合、有意味なイベントは「応答」イベントであり、制御サブモジュール１２６は、応答アクションを実行する。
【００５２】
（必ずしも全ての例においてではないが）いくつかの例において、実行されるアクションはユーザによってプログラムすることができる。（必ずしも全ての例においてではないが）いくつかの例において、このプログラミングは、シーン内のユーザの動きを介して行うことができる。
【００５３】
ｂ）推定シンボルがユーザ制御シンボルと類似している場合、有意味なイベントは「ユーザ制御」イベントであり、制御サブモジュール１２６は、モニタリングのユーザ制御および／または応答のユーザ制御を可能にする。
【００５４】
例えばユーザは、参照シンボルのデータベースに加えられる有意味な応答をプログラムしたり教えたりすることができてもよい。（必ずしも全ての例においてではないが）いくつかの例において、このプログラミングは、シーン１４０内のユーザの動きを介して行うことができる。
【００５５】
例えばユーザは、推定シンボルが応答シンボルに一致する場合に実行されるアクションをプログラムしたり教えたりすることができてもよい。
【００５６】
処理モジュール１２０の動作は、処理モジュール１２０に対する状態マシン２００を示す図２から、さらに理解することができる。状態マシン２００は、モニタリング状態２１０、ユーザ制御状態２２０、および自動応答状態２３０を有する。
【００５７】
モニタリング状態２１０において、センサ１１０はセンサデータ１１２を提供し、処理サブモジュール１２４は、有意味な可能性のあるシーンデータを生成するために、センサデータ１１２（映像および／またはオーディオおよび／または奥行き）を自動的に処理する。認識サブモジュール１２６は、シーンデータ内の実際の意味、すなわち有意味シンボルを識別するため、該シーンデータを自動的に処理する。
【００５８】
有意味シンボルは事前決定されている、すなわち、認識の前に、シンボルを決める処置が取られている。但し、「事前決定」は厳密性または固定性を意味すると見なすべきではない。類似性の照合のために使われるシンボルは、単に先行の定めを有するのであり、これは動的に進展することもあり、または固定されることもある。
【００５９】
認識サブモジュール１２６が、シーン１４０中で有意味なイベントが発生したと判断した場合、制御サブモジュール１２６は、そのイベントに応じて自動的に応答する。有意味なイベントが「応答」イベントである場合、状態マシン２００は、応答状態２３０に遷移し、制御サブモジュール１２６は、応答アクションを実行する。応答アクションは、応答イベントに関連付けられていることができる。イベントが「ユーザ制御」イベントである場合、状態マシン２００は、ユーザ制御状態２２０に遷移し、モニタリングおよび／または応答のユーザ制御が有効化される。この有効化は、ユーザ制御状態２２０に関連付けられたものであってもよい。
【００６０】
「ユーザ制御」イベントとして、特定のジェスチャユーザ入力を用いることができる。ジェスチャユーザ入力は、システム１００に対しユーザ入力としての意味を有するジェスチャである。
【００６１】
いくつかの例において、システム１００は、ジェスチャ認識において、人物の身体に関連する１つ以上のオブジェクトおよび／またはポイントを追跡することができる。例えば、システム１００は、ジェスチャ認識において、人の身体の全骨格的追跡を実行することができる。
【００６２】
処理モジュール１２０または処理モジュール１２０の部分の実装は、コントローラ回路としてであってもよい。コントローラ回路は、ハードウェアのみ（例えば、回路、プロセッサなど）のみにより実装されてもよく、（ファームウェアを含む）ソフトウェア主体で実装されてもよい。または、ハードウェアとソフトウェア（ファームウェアを含む）の組み合わせにより実装されてもよい。
【００６３】
図３に描かれるように、コントローラ１２０は、ハードウェア機能を実現する命令であって、例えば、汎用プロセッサまたは特定用途向けプロセッサ３１０で実行可能なコンピュータプログラム命令３２２を用いて実装されてもよい。こうした命令は、プロセッサ３１０で実行されうるように、コンピュータ可読記憶媒体（ディスクやメモリ等）に格納されてもよい。
【００６４】
プロセッサ３１０は、メモリ３２０から読み出し、かつメモリ２４へ書き込むように構成される。プロセッサ３１０は出力インタフェースと入力インタフェースを備えてもよい。データ又は命令、あるいはその両方は、プロセッサ３１０によって出力インタフェースを介して出力され、入力インタフェースを介してプロセッサ３１０に入力される。
【００６５】
メモリ３２０はコンピュータプログラム３２２を格納する。コンピュータプログラム３２２は、プロセッサ３１０にロードされて処理モジュール１２０の動作を制御するコンピュータプログラム命令（コンピュータプログラムコード）を含む。コンピュータプログラム３２２のコンピュータプログラム命令は、処理モジュールが、図１，  ２，  ５，  ６，  ７，  ８，  ９，  １０のいずれか一つ以上を参照して紹介された方法を遂行することを可能とするロジックとルーチンとを提供する。プロセッサ３１０は、メモリ３２０を読み取ることによりコンピュータプログラム３２２をロードして実行することができる。
【００６６】
従ってシステム１００は装置１２０を含むことができ、この装置１２０は、少なくとも一つのプロセッサ３１０と、コンピュータプログラムコード３２２を含む少なくとも一つのメモリ３２０とを備える。コンピュータプログラムコード３２２は、プロセッサ３１０に実行されると、装置１２０に、図１のブロック１２４，１２６，１２８の一つ又は複数や、図６や８の一つ又は複数のブロックの少なくともいずれかを遂行させるように構成される。
【００６７】
図４に描かれるように、コンピュータプログラム３２２は、任意の適切な配信機構３２４を介して装置に提供されてもよい。配信メカニズム３２４は、例えば、非一時的なコンピュータ読取り可能記憶媒体、コンピュータプログラム製品、メモリデバイス、記録媒体、例えば、コンパクトディスク・リードオンリーメモリ（ＣＤ−ＲＯＭ：ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）またはデジタル多用途ディスク（ＤＶＤ：ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｃ）、コンピュータプログラム３２２を有形に具現した製造品であってもよい。配信メカニズムは、変調された電磁波又はデジタル的に符号化された電気信号のようなコンピュータプログラム３２２を確実に伝達するように構成される信号であってもよい。装置１２０は、コンピュータデータ信号としてコンピュータプログラム３２２を伝達または伝送してもよい。
【００６８】
メモリ３２０は単独要素又は回路として示されているが、物理的に異なる複数の要素又は回路として実装されてもよい。こうした要素の一部または全部は組込み型でも着脱可能型でもよく、永久／半永久／動的／キャッシュの記憶方式でもよく、あるいはそれら全てでもよい。
【００６９】
プロセッサ３１０は単独要素又は回路として示されているが、物理的に異なる複数の要素又は回路として実装されてもよい。こうした要素の一部または全部は組込み型でも着脱可能型でもよい。プロセッサ３１０はシングルコアのプロセッサでもよいし、マルチコアのプロセッサであってもよい。
【００７０】
「コンピュータ可読記憶媒体」や「コンピュータプログラム製品」，「有形物として具現化されたコンピュータプログラム」等の用語や、「コントローラ」，「コンピュータ」，「プロセッサ」等の用語は、様々なアーキテクチャを有するコンピュータのみならず、特殊回路もカバーものと理解すべきである。こうしたコンピュータのアーキテクチャには、シングル／マルチプロセッサ・アーキテクチャや、直列（ノイマン型）／並列アーキテクチャ等がある。特殊回路にはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）や特定用途向け集積回路（ＡＳＩＣ），シグナルプロセッシングデバイス，その他の処理回路等がある。コンピュータプログラムや命令，コード等の用語は、プログラマブルプロセッサやファームウェア用のソフトウェアもカバーするものと理解すべきである。こうしたものとして例えば、プロセッサに対する命令や、固定機能デバイス，ゲートアレイ，プログラマブルロジックデバイス等の構成設定といったハードウェアデバイスのプログラマブルコンテンツ等がある。
【００７１】
なお本願において使用される「回路（ｃｉｒｃｕｉｔｒｙ）」との語句は、次の全てを表す。
【００７２】
（ａ）ハードウェアのみの回路実装（アナログおよび／またはデジタル回路のみの実装等）；
【００７３】
（ｂ）回路とソフトウェア（および／またはファームウェア）の組合せ、例えば（適用可能である場合）：（ｉ）一つまたは複数のプロセッサ、または（ｉｉ）一つまたは複数のプロセッサ／ソフトウェア（デジタルシグナルプロセッサを含む），ソフトウェア，一つまたは複数のメモリの一部（これらは協働して、携帯電話やサーバなどの装置に様々な機能を実行させる）；
【００７４】
（ｃ）一つまたは複数のマイクロプロセッサやその一部等の回路であって、動作するためにソフトウェアやファームウェアを必要とする回路（ソフトウェアやファームウェアは物理的に存在しなくてもよい）。
【００７５】
この「回路」の定義は、本願において当該用語を使う全ての場合において適用される。特許請求の範囲においても同様である。さらなる例として、本願で使用される場合、「回路（ｃｉｒｃｕｉｔｒｙ）」という用語は、単一（または複数）のプロセッサのみの実装やプロセッサの一部と、付随するソフトウェア、ファームウェアの全部又は一部とによる実装も網羅するものである。「回路」という用語はまた、例えば、特許請求の範囲に記載される特定の要素をその範囲に含むことが可能な場合がある。例えば、携帯電話のベースバンド集積回路やアプリケーション処理集積回路を意味してもよく、サーバやセルラネットワークデバイス、その他のネットワークデバイスにおける同様の集積回路を意味してもよい。
【００７６】
図１のブロック１２４，１２６，１２８や、図６や８のブロックは、コンピュータプログラム３２２のコードにより具現化される、方法全体および／またはその一部のステップを表わしてもよい。ブロックを特定の順序で図示することは、必須順序又は推奨順序の存在を必ずしも示唆していない。こうしたブロックの順序や配置構成は変更することができる。また、一部のブロックを省略することも可能である。
【００７７】
図５は、システム１００の動作の例を描いた図である。図５のａは、シーン１４０を描いている。シーン１４０は現実世界のシーンである。シーン１４０は３次元空間を有し、従ってシーン空間１４０であると考えられてもよい。シーン空間１４０は、システム１００によって監視される。従ってこのシーン空間は、被監視シーン空間１４０であると考えられてもよい。図５の例において、被監視シーン空間１４０は、四つの壁、天井及び床を有する部屋である。
【００７８】
いくつかの実施例では、被監視シーン空間１４０は境界を有さない場合もある。さらに別の実施例では、被監視シーン空間１４０は複数の部屋を有してもよい。また、それら複数の部屋は空間的に繋がっている場合もあれば、つながっていない場合もある。
【００７９】
図５の例において、人物１５０は、被監視シーン空間１４０の中で起立している。人物１５０は、少なくとも一つのジェスチャユーザ入力１４６を実行している。このジェスチャユーザ入力１４６は、コンピュータにより設定される少なくとも一つの仮想境界１４４を定義する。ジェスチャユーザ入力１４６はジェスチャ１４６と呼ばれてもよい。また、図２を参照して前に説明されたようなものであってもよい。ジェスチャ１４６は、境界指示ジェスチャ１４６であると考えられてもよい。
【００８０】
図示された例において、人物１５０は、コンピュータにより設定される単一の仮想境界１４４を定義するために、ジェスチャ１４６を実行してもよい。
【００８１】
ジェスチャ１４６は、被監視シーン空間１４０の中の位置において、経路１４８に沿った動きを備えるものであってもよい。図５の例において、ジェスチャ１４６は、経路１４８に沿って自分の手でオブジェクト１５２を動かす人物１５０を有していてもよい。この例において、経路１４８は被監視シーン空間１４０を横切る直線である。
【００８２】
この例において、経路１４８は、一つの空間次元における動きを有していてもよく、又は２つの空間次元、３つの空間次元における動きを有していてもよく、又はその他の如何なる形態を有していてもよい。
【００８３】
図５のｃは、被監視シーン空間１４０を上から見た図であり、人物１５０が、コンピュータにより設定される仮想境界１４４を定義するために、ジェスチャ１４６を行っていることが描かれている。
【００８４】
図５のａ及びｃの例からわかるように、ジェスチャ１４６は、座標（ｘ，ｙ，ｚ）を有するシーン１４０中の位置から始まっている。ここでｘは左の壁から測られ、ｙは前面の壁から測られ、ｚは床から測られている。ジェスチャ１４６は、座標（ｘ'，ｙ'，ｚ'）を有する位置で終わっている。この位置は図５には描かれていない。
【００８５】
図５の例において、ジェスチャ１４６は、開始位置（ｘ，ｙ，ｚ）から経路１４８に沿ってオブジェクト１５２を動かす人物１５０を有する。ここで計５４８は、被監視シーン空間１４０を横切る直線である。
【００８６】
図示される例において、ジェスチャ１４６は一次元の動きである。つまり、経路１４８に沿ってｘの値が変化するが、ｙ及びｚの値は変わらず一定である。
【００８７】
別の例においては、被監視シーン空間１４０中の開始位置から経路１４８に沿ってｘ，ｙ，ｚの二つ以上の値が変化するかもしれない。
【００８８】
図５の例のｂは、監視空間１４２を描いている。監視空間１４２は、被監視シーン空間１４０の仮想的な表現を有する。この仮想的な表現は、システム１００によって作られ、使用される。監視空間１４２は、例えば、センサ１１０から受け取ったデータ（例えばイメージデータや奥行きデータ）から形成されてもよい。
【００８９】
図５のｂ，ｄは、それぞれａ，ｃに対応する監視空間１４２を描いており、同じ視点から描かれている。
【００９０】
実施例によっては、システム１００は、監視空間１４２を形成するために、被監視シーン空間１４０の形状情報を使用してもよい。例えばシステム１００は、監視空間１４２を形成するにおいて、被監視シーン空間１４０の３次元モデルを使用してもよい。被監視シーン空間１４０の３次元モデルは、システム１００によって作られてもよいし、システム１００が外部から受け取ったものであってもよい。被監視シーン空間１４０の３次元モデルを形成する方法は既知である。
【００９１】
システム１００は、シーン空間１４０を監視するために、監視空間１４２を使用してもよい。例えばシステムは、少なくとも一つの仮想境界１４４を作り監視するために、監視空間１４２を使用してもよい。
【００９２】
図５において、ａとｂとの間の矢印や、ｃとｄとの間の矢印で示されているように、監視空間１４２と被監視シーン空間１４０とは対応している。実施例によっては、監視空間１４２と被監視シーン空間１４０との間には、一対一の対応関係があってもよい。
【００９３】
実施例によっては、監視空間１４２と被監視シーン空間１４０との間には、スケール不変の変換があってもよい。
【００９４】
システム１００は人物１５０によってなされたジェスチャ１４６を認識し、それに応じて監視空間１４２において、仮想境界１４４を少なくとも一つ作ってもよい。実施例によっては、ジェスチャ１４６を認識することは、受信データを処理することを含んでもよい。この受信データは例えばイメージデータであってもよい。例えばシステム１００は、一つ又は複数のビデオフィードを解析してもよい。
【００９５】
実施例によっては、仮想境界１４４の少なくとも一部分は、被監視シーン空間１４０中の経路１４８によって決定されてもよい。また、仮想境界１４４の前記一部分は、被監視シーン空間１４０中の経路１４８の位置に相当する、監視空間中の対応する位置に位置してもよい。
【００９６】
例えば、少なくとも一つの仮想境界１４４は、被監視シーン空間１４０中の経路１４８の位置に相当する、監視空間１４２中の経路１４８に沿って、作られてもよい。
【００９７】
ジェスチャ１４６は独立的なジェスチャであってもよいし、図２に関連して説明されたような、何かに縛られたジェスチャであってもよい。
【００９８】
図５のｂやｄに描かれるように、仮想境界１４４は、監視空間１４２において、点（ｘ，ｙ，ｚ）から経路１４４に沿って作られてもよい。監視空間における点（ｘ，ｙ，ｚ）は、被監視シーン空間１４０における点（ｘ，ｙ，ｚ）と同じである。
【００９９】
システム１００は、仮想境界１４４を、経路１４８を超えて延長してもよい。システム１００は、仮想境界１４４を延ばすために、被監視シーン空間１４０の形状情報（例えば３次元モデル）を使用してもよい。
【０１００】
実施例によっては、システム１００は、監視空間１４２の少なくとも一つの境界（これは被監視シーン空間１４０の少なくとも一つの物理的境界に対応する）まで、仮想境界１４４を延長してもよい。例えばシステム１００は、仮想境界１４４を、第１の壁から第２の壁まで延長してもよい。また例えば、床から天井まで延長してもよい（図６参照）。
【０１０１】
図５の例において、破線は仮想境界１４４の延長部分を示している。当該延長部分は監視空間１４２の左の境界へと、また右の境界へと延びている。これらの境界は、それぞれ、被監視シーン空間１４０の左の壁及び右の壁までに対応している。
【０１０２】
実施例によっては、ユーザは、ある領域を包み込むような仮想境界の一部を含むような、経路１４８を示してもよい。そしてシステム１００は、自動的に、当該領域を包み込む仮想境界１４４を完成してもよい。例えば、ユーザが描く経路１４８は、ある形状の一部を含むようなものであってもよい。そしてシステム１００は、仮想境界１４４を作るときに、その形状を自動的に完成させてもよい。
【０１０３】
例として、ユーザが描いた経路が円の一部である場合、システム１００は仮想境界１４４を自動的に延長し、完全な円としてもよい。
【０１０４】
実施例によっては、ユーザはシステム１００に、ジェスチャ１４６及び／又は一つ又は複数の他の入力を用いて、仮想境界１４４を、ある領域を包み込むような境界を完成させるように延長すべきであることを、指示してもよい。
【０１０５】
実施例によっては、システム１００は、描かれた経路１４８から、仮想境界１４４が、ある領域を包み込むように延長すべきものであることを推測し、仮想境界１４４を自動的に延長してもよい。
【０１０６】
システム１００は、システム１００がジェスチャ１４６を理解し、仮想境界１４４を作成したことを確認するためのフィードバックをユーザに提供してもよい。このフィードバックは適切な如何なる形式のものでもよく、例えば音声フィードバックや視覚フィードバック、触覚フィードバック等であってもよい。それに加えて、またはそれに代えて、システム１００は、システム１００が仮想境界１４４を形成したことをユーザに知らせるために、一つ又は複数のメッセージを一つ又は複数のデバイスに送信してもよい。
【０１０７】
少なくとも一つの仮想境界１４４に関連して被監視シーン空間１４０の一部に変化があったとき、システム１００は、受け取ったデータを処理して応答イベントを生成してもよい。例えばシステム１００は、センサ１１０から受け取ったデータを処理して応答イベントを作成してもよい。このデータは音声データやイメージデータであってもよい。システムは、一つ又は複数のオーディオフィード又はビデオフィードを解析し、応答イベントを生成してもよい。実施例によっては、受け取ったデータを処理して応答イベントを生成することは、仮想境界１４４をモニタリングすることを考慮してもよい。
【０１０８】
例えば、同じセンサ（例えばカメラ）が、少なくとも一つの仮想境界１４４を定義するジェスチャ１４６を認識することと、この仮想境界１４４をモニタリングすることとの両方に使われてもよい。
【０１０９】
実施例によっては、受け取ったデータを処理して応答イベントを生成することは、仮想境界１４４を監視して仮想境界１４４を横切るアクティビティを検出すべく、受信したデータを処理することを含んでもよい。及び／又はは、仮想境界１４４から閾値以下の距離で発生したアクティビティを検出すべく、受信したデータを処理することを含んでもよい。例えばシステム１００は、オーディオデータ、イメージデータ、奥行きデータのいずれか一つ以上を処理することにより、仮想境界１４４を監視し、仮想境界１４４を横切るアクティビティ（又は仮想境界１４４から閾値以下の距離で発生したアクティビティ）を検出してもよい。
【０１１０】
システム１００は、一つ又は複数の仮想境界１４４が、応答イベントを生成することなしに作成されたことを、ユーザが確認することを可能にしてもよい。例えば、ユーザは、被監視シーン空間１４０のある位置でジェスチャ１４６を使って仮想境界１４４を定義してもよく、そして、被監視シーン空間１４０の当該位置とやり取りし、仮想境界１４４が適切な位置にあることを確認してもよい。例えば、ユーザが自身の体の少なくとも一部（例えば手）を被監視シーン空間の中で動かしたとき、システム１００は、ユーザが仮想境界１４４に触ったか又は境界を横切ったかを教えるフィードバックを提供してもよい。適切などのようなフィードバックが提供されてもよい。例えば音声フィードバックや視覚フィードバック、触覚フィードバックが提供されてもよい。それに加えて、又はそれに代えて、システム１００は、ユーザの一つ又は複数のデバイスに少なくとも一つのメッセージを送信してもよい。
【０１１１】
実施例によっては、システム１００は、ユーザが仮想境界１４４を確認した後に、応答イベントを生成すべく受け取ったデータの処理を始めてもよい。例えばシステム１００は、ユーザが仮想境界１４４を確認するまでは、警告を生成したり、カウンタを増分させたりしないようにされてもよい。
【０１１２】
応答イベントは、例えば、空間オーディオ処理を生じさせたり、それを変更させたりしてもよい。応答イベントは、例えば、空間的に分散して配置された複数のマイクロフォンからの出力の適応フィルタ（adaptive filtering）を変化させ、生成される結合オーディオ信号を変化させてもよい。この変化は、例えば、指向性ゲイン（向きを有するゲイン）に影響を与えてもよいし、それに影響を与えなくてもよい。この変化は、追跡されるオブジェクトにより生成される音声を強調するように、指向性ゲインを変えもよい。または、追跡されるオブジェクト以外のオブジェクトにより生成される音声を強調するように、指向性ゲインを変えもよい。
【０１１３】
システム１００のユーザ、例えば人物１５０は、応答イベントを構成してもよい。例えばユーザは、応答イベントを構成するために、システム１００に認識されうる一つ又は複数の追加的なジェスチャ１４６を行ってもよい。それに加えて、又はそれに代えて、ユーザは、タブレットや携帯電話のようなデバイスを使ってシステム１００に入力を提供し、応答イベントを構成してもよい。
【０１１４】
実施例によっては、システム１００は、受け取ったデータを処理して、仮想境界１４４やオブジェクト１５２に関して被監視シーン空間１４０の一部に変化があったときに、応答イベントを生成してもよい。例えばシステムは、何らかのオブジェクト１５２が仮想境界１４４を横切ったり、接触したり、閾値以下の距離に近づいたりした場合に、応答イベントを生成してもよい。このような仮想境界１４４は、一般的な仮想境界１４４であると考えられてもよい。
【０１１５】
実施例によっては、システム１００は、受け取ったデータを処理して、仮想境界１４４やユーザが指定したオブジェクト１５２に関して被監視シーン空間１４０の一部に変化があったときに、応答イベントを生成してもよい。
【０１１６】
例えば、少なくとも一つの仮想境界１４４を定義するためのジェスチャ１４６を行った後、システム１００のユーザ１５０は、一つ又は複数のオブジェクト１５２をシステム１００に示すべく、ジェスチャ１４６を行ってもよい。例えばユーザ１５０は、その手や携帯電話を用いて、一つ又は複数のオブジェクト１５２を指し示してもよい。または、デバイスのビューファインダーに一つ又は複数のオブジェクトが位置するようにしてもよい。
【０１１７】
実施例によっては、一つ又は複数のオブジェクトを指し示すジェスチャ１４６は、仮想境界１４４を定義するジェスチャ１４６の前に行われてもよい。
【０１１８】
システム１００は、一つ又は複数のオブジェクト１５２を指し示すジェスチャ１４６を認識し、それに応じて、しかし仮想境界１４４や指示されたオブジェクト１５２に関して被監視シーン空間１４０の一部に変化があったときのみ、応答イベントを生成してもよい。例えばシステム１００は、指示されたオブジェクト１５２が仮想境界１４４を横切ったり、接触したり、閾値以下の距離に近づいたりした場合のみ、応答イベントを生成してもよい。このような仮想境界１４４は、特殊な仮想境界であると考えられてもよい。
【０１１９】
図５の例を参照すると、人物１５０は、仮想境界１４４を定義すべくジェスチャ１４６を行っていてもよく、システム１００は、ジェスチャ１４６を認識し仮想境界１４４を形成してもよい。
【０１２０】
人物１５０は更に、自身や他人、他のオブジェクトを指し示すような更なるジェスチャを行ってもよい。システムはこの更なるジェスチャを認識し、指し示したオブジェクトに関してのみ、仮想境界１４４を監視する。例えばシステム１００は、そのオブジェクトが仮想境界１４４を横切ったり接触したり、閾値以下の距離に近づいたときに、応答イベントを生成するか、オブジェクト１５２が仮想境界１４４を横切ったり接触したり、閾値以下の距離に近づいたとしても、応答イベントを生成しないようにされてもよい。
【０１２１】
実施例によっては、仮想境界１４４は、条件付きで監視されてもよく、及び／又は、条件付きで有効化されたり無効化されたりしてもよい。例えばシステム１００は、受信したデータを処理して、仮想境界１４４に関して被監視空間１４４の一部に変化があり、一つ又は複数の基準を満たしたときのみ、応答イベントを生成してもよい。しかし、そのような基準を満たさないときは、当該データを処理して応答イベントを生成することはしないようにされてもよい。
【０１２２】
この基準は既定であってもよく、ユーザによって設定されたものでもよい。ユーザは例えば、ジェスチャや一つ又は複数の別の方法による入力を用いて、当該基準を設定できてもよい。
【０１２３】
どのような基準が使用されてもよい。例えば、時間的な基準や物理的な基準を使ってもよい。例えば、仮想境界１４４は、特定の時間帯や、特定の曜日、特定の週、特定の月のような条件付きで監視されてもよい。また、被監視シーン空間１４０の中に一つ又は複数のオブジェクト１５２が存在するかどうかに応じて監視されてもよい。
【０１２４】
図６は、結合オーディオ信号４２１を生成するためにシステム１００が実行する方法４００の例を描いた図である。
【０１２５】
ブロック４０２において、システム１００は、受信したイメージデータ及び／又は深度データを処理し、被監視シーン空間中を移動するオブジェクトを追跡する。
【０１２６】
ブロック４０４において、システム１００は、被監視シーン空間中の追跡対象移動オブジェクトの方角を決定する。
【０１２７】
ブロック４０６において、システム１００は、被監視シーン空間中の追跡対象移動オブジェクトの方角に依存して、空間的に分散配置される複数のマイクロフォンの出力を適応的にフィルタリングし、結合オーディオ信号を生成する。
【０１２８】
ブロック４００，４０２，４０４は、リアルタイムで処理され、リアルタイムで結合オーディオ出力信号を生成してもよい。
【０１２９】
図７は、被監視シーン空間１４０で追跡される移動オブジェクト１５０を描いたものである。座標系も描かれている。この例においては、被監視シーン空間中で追跡される移動オブジェクト１５０の原点０からの方角４０１を定義するために、球座標系が使用されている。原点０は、空間的に分散配置された複数のマイクロフォンの場所に位置している。球座標系における方角４０１は(θ', φ')で表される。ここでθ'は極核θの値であり、0度から１８０度の値をとる。またφ'は方位角φの値であり、0度から３６０度の値をとる。
【０１３０】
システム１００は被監視シーン空間１４０中の追跡される移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置された複数のマイクロフォンからの出力を適応的にフィルタリングし、結合オーディオ信号を生成するように構成されてもよい。ここで結合オーディオ信号は、例えば、追跡されるオブジェクト１５０により生成される音声を強調する、指向性ゲイン４０３を有していてもよい。結合オーディオ出力信号は例えば、ターゲット方向 (θ'', φ'')において、指向性ゲイン４０３を有していてもよい。ここでθ''は極核θの値であり、0度から１８０度の値をとる。またφ''は方位角φの値であり、0度から３６０度の値をとる。
【０１３１】
ターゲット方向 (θ'', φ'')は、追跡される移動オブジェクト１５０の方角(θ', φ')によって定まる。ターゲット方向 (θ'', φ'')及び方角(θ', φ')は、図７の例に描かれるように、例えば並んでいても（同じであっても）よい。（図７では、追跡される移動オブジェクト１５０の方角(θ', φ')は、ターゲット方向 (θ'', φ'')でもある。）一方、ターゲット方向 (θ'', φ'')及び方角(θ', φ')は、並んでいない（同じではない）場合もあってもよい。
【０１３２】
図8は、システム１００の動作の例を描いた図である。
【０１３３】
この例において、処理モジュール１２０は、受信したイメージデータ１１２及び／又は深度データ１１２を処理し、被監視シーン空間中を移動するオブジェクト１５０を追跡する。処理モジュール１２０は、被監視シーン空間１４０中を移動する、追跡対象移動オブジェクト１５０の方角４０１を決定するように構成される。処理モジュール１２０は、被監視シーン空間における追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングし（４１６）、結合オーディオ信号４２１を生成するように構成される。結合オーディオ出力信号４２１はリアルタイムで生成されてもよい。従ってシステム１００は、複数の入力４１３を有し単一の出力４２１を有する（MISO; Multiple Input Single Output）。
【０１３４】
図8の例では、ビームフォーミングモジュール４２０が、空間的に分散配置される複数のマイクロフォン４１２のそれぞれの出力(xi)４１３のために、フィルタ係数(fi)４１４ を生成するように構成されている。フィルタ４１６の各々は、特定のマイクロフォン４１２の出力(xi)４１３にフィルタを適用し、当該マイクロフォン４１２のために、フィルタ済み出力４１７を生成する。フィルタ４１６の各々は、例えば有限インパルス応答フィルタ（FIRフィルタ）であってもよい。これは、特定のマイクロフォン４１２の出力(xi)４１３に適用されるフィルタの係数(fi)４１４ によって定義される。空間的に分散配置される複数のマイクロフォン４１２の出力がフィルタリングされたものは、結合オーディオ出力信号（S）４２１を足し合わされる。
【０１３５】
ビームフォーミングモジュール４２０は、結合オーディオ出力信号（S）４２１の指向性ゲインを制御する。例えば、いくつかのフィルタ係数(fi)４１４ が、それぞれ特定のマイクロフォン４１２の出力(xi)４１３ のために使用され、所望のゲインを得てもよい。フィルタ係数(fi)４１４ は例えば、無指向性ゲインが得られるように選択されてもよい。フィルタ係数(fi)４１４ は例えば、ターゲット方向において利得が得られるように選択されてもよい。
【０１３６】
フィルタ係数(fi)４１４ は例えば、被監視シーン空間１４０中の追跡対象移動オブジェクトの方角４０１に依存して生成されてもよく、それによって、ターゲット方向において指向性ゲイン４０３を有する結合オーディオ出力信号（S）４２１が生成されてもよい。
【０１３７】
上述のビームフォーミングモジュール４２０は、フィルタサム（filter-sum）型のビームフォーミングモジュールである。実施例によっては、フィルタサム型のビームフォーミングモジュールは、ディレイサム（delay-sum）型のビームフォーミングモジュールであってもよい。ディレイサム型のビームフォーミング要素は、空間的に分散配置される複数のマイクロフォン４１２のそれぞれの出力(xi)４１３に、それぞれディレイ（遅延）を付加するように、フィルタ係数(fi)４１４を使用する。
【０１３８】
i=1, 2...Nで番号付けられた、空間的に分散配置された複数のマイクロフォン４１２が、単位ベクトルｄ（下線はベクトルであることを示す。以下の説明においても、下線を引いた記号はベクトルを表す。）に沿って、一定の間隔Dをおいて並んでいる例を考える。すると、原点にある一番目の（i=1の）マイクロフォン４１２とi番目のマイクロフォンとのスカラ間隔は、D*iと表すことができ、ベクトル間隔Siは、D*i*dと表すことができる。指向性ゲイン４０３がターゲット方向において単位ベクトルtを有する場合、原点（i=1）と比較した、i番目のフィルタにおける経路長の違いLiは、ターゲット方向の単位ベクトルtに沿うベクトル間隔Siの要素であり、これは、ベクトル間隔Siと単位ベクトルtとのドット積によって得られる（つまり、Li = Si・t = D*i* d・tである）。
【０１３９】
経路長の違いLiによって生じる、原点（i=1）と比較した、i番目のフィルタにおける位相差φiは、経路長の違いLiを波長λで割り、２πラジアンを乗じて得ることができる（φi = L i *2π/ λ = Si ・ t *2π/ λ = D*i*d ・t *2π/ λ）。フィルタ fi はexp(j * φi)であってもよい。従って、i番目のフィルタに関連して、マイクロフォン４１２の出力４１３について生じる位相遅延は、(D*i*d)・tに比例する。ここで"・"はドット積である。フィルタfi はexp(j *D*i* d・t *2π/λ)である。ここでλは音の波長である。指向性ゲイン４０３のターゲット方向tは、追跡対象移動オブジェクト１５０の方角４０１に依存する。
【０１４０】
任意の原点に一般化すると、空間的に分散配置された複数のマイクロフォン４１２が、単位ベクトルdiに沿って距離Di に位置しており、指向性ゲイン４０３が単位ベクトルtを有するターゲット方向にある場合、マイクロフォン４１２の出力４１３についてフィルタiによって生じる（任意の原点に対する）位相差は、Di*di・t*2π/λである。ここで"・"はドット積である。一番目（すなわちi=1）のマイクロフォン４１２に位置する原点に対する、フィルタiによって生じる位相差は、[Di*di・t - D1*d1・t]*2π/λである。ここで"・"はドット積である。フィルタfi はexp(j *(Di*di・t- D1*d1・t)*2π/λ)である。ここでλは音の波長である。指向性ゲイン４０３のターゲット方向tは、追跡対象移動オブジェクト１５０の方角４０１に依存する。
【０１４１】
実施例によっては、システム１００は更に、ターゲット方向に指向性ゲイン４０３を有する結合オーディオ出力信号（Ｓ）４２１をフィルタリングするための、ポストフィルタ４２４を有していてもよい。ポストフィルタ４２４は例えば、ノイズを減らすための適応型ポストフィルタであってもよい。
【０１４２】
空間的に分散配置された複数のマイクロフォン４１２は例えば、一つ、２つ、または３つの方向に沿った、固定的なマイクアレイであってもよい。実施例によっては、空間的に分散配置された複数のマイクロフォン４１２は、取り外しできる周辺機器のようにデバイスに外付けされるマイクではなく、デバイスの中に固定的に装備された内蔵マイクであってもよい。
【０１４３】
図９Ａ−９Ｅは、システム１００の使われ方のいくつかの例を描いたものである。ここでシステム１００は、被監視シーン空間１４０中の追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングし、結合オーディオ信号４２１を生成する。
【０１４４】
これらの例において、システム１００は、監視空間１４０に対応する被監視シーン空間１４０中でコンピュータにより設定される仮想境界１４４に対する、被監視シーン空間１４０中の追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングする。
【０１４５】
図示された例において、監視空間１４２に対応する被監視シーン空間１４０の様々な部分が、それぞれ異なる仮想境界１４４で区切られている。なお、これらの境界の数や形状、その他の属性は、単なる例示であって、被監視シーン空間の一つ又は複数の任意の部分が、被監視シーン空間１４０中でコンピュータにより設定される仮想境界１４４により、適当な方法で区切られることができる。
【０１４６】
被監視シーン空間の第１の部分Ａは、第１の（一つ又は複数の）仮想境界１４４によって区切られている。
【０１４７】
被監視シーン空間の第２の部分Ｂは、第２の（一つ又は複数の）仮想境界１４４によって区切られている。
【０１４８】
被監視シーン空間の第３の部分Ｃは、第３の（一つ又は複数の）仮想境界１４４によって区切られている。
【０１４９】
被監視シーン空間の第４の部分Ｄは、第４の（一つ又は複数の）仮想境界１４４によって区切られている。
【０１５０】
この例において、第４の部分Ｄは、第１の部分Ａ、第２の部分Ｂ、第３の部分Ｃと、境界１４４を共有している。つまり、第１の部分Ａ、第２の部分Ｂ、第３の部分Ｃは、第４の部分Ｄから切り離された島のような部分となっている。
【０１５１】
システム１００は追跡対象オブジェクト１５０の動きを検出し、追跡対象オブジェクト１５０が、第１〜第４のどの部分にいるかを決定することができる。
【０１５２】
図９Ａに描かれるように、追跡対象オブジェクト１５０が第１の部分Ａにいるとき、システム１００は、被監視シーン空間１４０中の追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングし、結合オーディオ信号４２１を生成する。結合オーディオ信号（Ｓ）４２１は、追跡対象移動オブジェクト１５０の方角(θ', φ')から決定されたターゲット方向に、指向性ゲイン４０３を有する。ターゲット方向(θ'', φ'')と方角(θ', φ')とは同じ方向にはない。ターゲット方向(θ'', φ'')は、追跡対象移動オブジェクト１５０の方角(θ', φ')ではないが、第１の部分Ａの中の予め定められた方角１６１の方向にある。ターゲット方向(θ'', φ'')は、追跡対象移動オブジェクト１５０が第１の部分Ａの中にいる限り、変化しない。
【０１５３】
図９Ｂ及び９Ｄに描かれるように、追跡対象オブジェクト１５０が第４の部分Ｄにいるとき、システム１００は、被監視シーン空間１４０中の追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングし、結合オーディオ信号４２１を生成する。このとき例えば、結合オーディオ信号（Ｓ）４２１は、無指向性ゲイン４０３を有する。
【０１５４】
図９Ｃに描かれるように、追跡対象オブジェクト１５０が第２の部分Ｂにいるとき、システム１００は、被監視シーン空間１４０中の追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングし、結合オーディオ信号４２１を生成する。結合オーディオ信号（Ｓ）４２１は、追跡対象移動オブジェクト１５０の方角(θ', φ')から決定されたターゲット方向に、指向性ゲイン４０３を有する。ターゲット方向(θ'', φ'')と方角(θ', φ')とは同じ方向にある。ターゲット方向(θ'', φ'')は、追跡対象移動オブジェクト１５０の方角(θ', φ')でもある。そして、追跡対象移動オブジェクト１５０が第２の部分Ｂの中を移動するにつれて、変化する。
【０１５５】
図９Ｅに描かれるように、追跡対象オブジェクト１５０が第３の部分Ｃにいるとき、システム１００は、被監視シーン空間１４０中の追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングし、結合オーディオ信号４２１を生成する。結合オーディオ信号（Ｓ）４２１は、追跡対象移動オブジェクト１５０の方角(θ', φ')から決定されたターゲット方向に、指向性ゲイン４０３を有する。ターゲット方向(θ'', φ'')と方角(θ', φ')とは同じ方向にはない。ターゲット方向(θ'', φ'')は、追跡対象移動オブジェクト１５０の方角(θ', φ')ではないが、第３の部分Ｃの中の予め定められた方角１６１の方向にある。または、別の追跡対象移動オブジェクトの方向である。この例では、ターゲット方向(θ'', φ'')は、追跡対象移動オブジェクト１５０が第３の部分Ｃの中にいる限り、変化しない。
【０１５６】
仮想境界１４４を跨いで部分Ａ−Ｄの間の移動することは、前述のように、検出することが可能であり、またそれぞれの部分における適応フィルタリングも前述のように行われることができ、またこれら適応フィルタリングは、前述のように、応答イベントであってもよい。
【０１５７】
その結果、適応フィルタリングは、コンピュータにより設定された仮想境界１４４の少なくとも一つをまたいだ、被監視シーン空間のある部分から別の部分への、追跡対象オブジェクト１５０の検出された移動に依存して、変化する。
【０１５８】
前述のように、コンピュータにより設定される仮想境界は、ユーザにより事前定義されてもよい。
【０１５９】
ユーザは、個々の部分において、マイクロフォン４１２の出力４１３のフィルタリング４１６が、被監視シーン空間中における追跡対象オブジェクト１５０の方角４０１にどのように依存するかを定義してもよい。
【０１６０】
例えばユーザは、結合オーディオ信号（Ｓ）４２１が指向性ゲイン４０３を有するか無指向性ゲインを有するかを定めてもよい。
【０１６１】
例えばユーザは、ターゲット方向の指向性ゲイン４０３が、追跡対象移動オブジェクト１５０の方角(θ', φ')からどのように決定されるかを定めてもよい。
【０１６２】
例えばユーザは、ターゲット方向(θ'', φ'')と方角(θ', φ')とが一致すべきかそうでないかを定めてもよい。
【０１６３】
例えばユーザは、ターゲット方向(θ'', φ'')と方角(θ', φ')とが一致しない場合に、ターゲット方向(θ'', φ'')の性質として、それが固定された方向とするか変化しうる方向とするかを定めてもよい。
【０１６４】
図９Ａ及び９Ｃの例では、マイクロフォン４１２の出力４１３に対する適応フィルタリング４１６は、追跡対象オブジェクト１５０により生成される音声を強調するように構成される指向性ゲインを有する。
【０１６５】
図９Ｄの例では、マイクロフォン４１２の出力４１３に対する適応フィルタリング４１６は、追跡対象オブジェクト１５０以外のものにより生成される音声を強調するように構成される指向性ゲインを有する。
【０１６６】
これらの例において、処理モジュール１２０は、少なくとも一つの仮想境界１４４に関連して被監視シーン空間１４２の一部に変化があったとき、受け取ったデータを１１２処理して応答イベントを生成してもよい。そして応答イベントに応じて、マイクロフォン４１２の出力４１３に対する適応フィルタリング４１６を変化させ、結合オーディオ出力信号４２１を生成してもよい。
【０１６７】
応答イベントを生成するための、受け取ったデータ１１２の処理は、イメージデータ及び／又は深度データを処理して、少なくとも一つの仮想境界に関連する、被監視シーン空間中のオブジェクト１５０の移動を追跡し、少なくとも一つの仮想境界を跨ぐ動きを検出すること、及び／又は、少なくとも一つの仮想境界の閾値以内の動きを検出することを含む。応答イベントを生成するための、受け取ったデータの処理は、条件によって変化してもよい。例えば、少なくとも一つの条件が満たされたときのみ、そのような処理が行われてもよい。または例えば、少なくとも一つの条件が満たされない場合は、そのような処理が行われないこととしてもよい。
【０１６８】
図１０Ａ及び１０Ｂは、システム１００の使われ方のいくつかの例を描いたものである。ここでシステム１００は、被監視シーン空間１４０中の追跡対象移動オブジェクト１５０の方角４０１に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングし、結合オーディオ信号４２１を生成する。
【０１６９】
これらの例において、システム１００は、被監視シーン空間１４２中でコンピュータにより設定される仮想境界１４４に対する、追跡対象移動オブジェクト１５０Ａ又は追跡対象移動オブジェクト１５０Ｂの方角に依存して、空間的に分散配置される複数のマイクロフォン４１２の出力４１３を適応的にフィルタリングする。
【０１７０】
被監視シーン空間の第１の部分Ａは、第１の（一つ又は複数の）仮想境界１４４によって区切られている。被監視シーン空間の第２の部分Ｂは、第２の（一つ又は複数の）仮想境界１４４によって区切られている。
【０１７１】
システム１００は、複数のオブジェクトを同時に追跡する。システム１００は、オブジェクト１５０Ａ及びオブジェクト１５０Ｂを同時に追跡する。
【０１７２】
オブジェクト１５０Ａが第１の部分Ａにいるとき、空間的に分散配置されたマイクロフォン４１２の出力４１３に対する適応フィルタリング４１６は、追跡対象オブジェクト１５０Ａにより生成される音声を強調し、追跡対象オブジェクト１５０Ｂにより生成される音声は強調しないように構成される、指向性ゲインを有する。
【０１７３】
オブジェクト１５０Ａが第２の部分Ｂにいるとき、マイクロフォン４１２の出力４１３に対する適応フィルタリング４１６は、追跡対象オブジェクト１５０Ｂにより生成される音声を強調し、追跡対象オブジェクト１５０Ａにより生成される音声は強調しないように構成される、指向性ゲインを有する。
【０１７４】
実施例によっては、様々な条件が、それか満たされた場合に、マイクロフォン４１２の出力４１３に対する適応フィルタリング４１６を変化させうる。例えばそのような条件の充足は、追跡対象オブジェクト１５０Ａの方角のみに基づいてもよいし、追跡対象オブジェクト１５０Ｂの方角のみに基づいてもよいし、オブジェクト１５０Ａ及び１５０Ｂの両方の方角に基づいていてもよい。そのような条件は、追跡対象オブジェクト１５０Ａの方角のみに基づいて変化してもよいし、追跡対象オブジェクト１５０Ｂの方角のみに基づいて変化してもよいし、オブジェクト１５０Ａ及び１５０Ｂの両方の方角に基づいて変化してもよい。
【０１７５】
この簡潔な説明では、様々な例への参照がなされてきた。実施例に関する特徴または機能の説明は、これらの特徴または機能が、その実施例に認められることを示す。「実施例」「例えば」「〜できる、〜の場合がある」は、ある例示群における特定の事例であることを指す。上記特定の事例の特性は、その事例のみの特性である場合、または上記例示群に属する一部の群の特性である場合がある。すなわち、上記特定の事例の特性は、例示群中の例示の全特性とは限らないが特性の一部を含む。したがって、ある特定の実施例を参照しているが別の実施例を参照しないで記述された特徴は、それが他の実施例でも使用される可能性もあれば、他の実施例での使用が不要である可能性もあることを示唆している。
【０１７６】
本願明細書及び図面において、本発明の様々な実施形態が様々な実施例と共に紹介されてきたが、当然のごとく、特許請求の範囲に特定される発明の範囲を逸脱することなく、紹介された実施形態を変形することができる。
【０１７７】
これまでに記述してきた事項は、明示的に記述された組合せのみならず、それ以外の組合せで用いられてもよい。
【０１７８】
特定の事項を参照して種々の機能を記述してきたが、こうした機能は、記述の有無を問わずその他の事項によって遂行可能であってもよい。
【０１７９】
特定の実施形態を参照して種々の事項を記述してきたが、こうした事項は、記述の有無を問わずその他の実施形態で用いられてもよい。
【０１８０】
前述のように本明細書において、とりわけ重要であると考えられる本発明のこうした事項に注目するように努めてきた。しかし、前述した特許されうる全ての事項およびそれらの組合せに対して、参照された添付の図面にそうした事項が特段強調されていたかどうかにかかわらず、本出願人はその保護を求めるものである点を理解されたい。
【図１】
0006592183.tif 000002
【図２】
0006592183.tif 000003
【図３】
0006592183.tif 000004
【図４】
0006592183.tif 000005
【図５】
0006592183.tif 000006
【図６】
0006592183.tif 000007
【図７】
0006592183.tif 000008
【図８】
0006592183.tif 000009
【図９】
0006592183.tif 000010
【図１０】
0006592183.tif 000011