本発明の実施形態は、例えば、拡張現実または仮想現実のような媒介現実に関する。
背景
本明細書において、媒介現実とは、ユーザが完全または部分的な人工環境を体験することを指す。
拡張現実は、媒介現実の一形態であって、ユーザが部分的に人工で、部分的に現実の環境を体験することを指す。仮想現実は、媒介現実の一形態であって、ユーザが完全人工環境を体験することを指す。
摘要
本発明の様々な、ただし必ずしもすべてではない実施形態によれば、方法が提供される。前記方法は、レンダリングされた仮想空間内の音響オブジェクトを、前記仮想空間内でのユーザの記録された動作に応じて、音響オブジェクトの第1群または音響オブジェクトの第2群に分類することと、前記第1群に属する1つまたは複数の音響オブジェクトを、少なくとも第1の規則に応じてレンダリングすることと、前記第2群に属する1つまたは複数の音響オブジェクトを、少なくとも、前記第1の規則とは異なる第2の規則と、前記仮想空間内の前記ユーザの現在位置とに応じてレンダリングすることと、を含む。
本発明の様々な、ただし必ずしもすべてではない実施形態によれば、添付の特許請求の範囲に記載されるような例が提供される。
詳細な説明の理解に有用な様々な例をより良く理解するために、単なる例として添付の図面を参照する。
図1A〜図1Cは、媒介現実の例を示し、同一の仮想視覚空間とは異なる視点を示す。
図2A〜図2Cは、媒介現実の例を示し、異なる視点からの仮想視覚シーンを示す。
図3Aは、現実空間の例を示し、図3Bは、図1Bの仮想視覚シーンに部分的に対応する現実視覚シーンの例を示す。
図4は、媒介現実、および/または拡張現実、および/または仮想現実を実現するように動作可能な装置の例を示す。
図5Aは、媒介現実、および/または拡張現実、および/または仮想現実を実現するための方法の例を示し、図5Bは、拡張現実のために仮想視覚空間のモデルを更新する方法の例を示す。
図6Aおよび図6Bは、ユーザに仮想視覚シーンを少なくとも部分的に表示可能とする装置の例を示す。
図7Aは、現実空間におけるジェスチャの例を示し、図7Bは、現実空間におけるジェスチャに対応する描写が、仮想視覚シーン内においてレンダリングされることを示す。
図8は、レンダリングされた音響シーンを修正するためのシステムの例を示す。
図9は、例えばシステムの位置決めブロック、配向ブロック、距離ブロックの機能を実行するために使用されうるモジュールの例を示す。
図10は、装置を使用して実現されるシステム/モジュールの例を示す。
図11は、音響オブジェクトのレンダリングを制御する方法の例を示す。
図12A〜図12Fは、図11の方法の例示的な適用を示す。
図13は、音響オブジェクトの分類を第1群に変えるために、ユーザが仮想空間内で実行する「起動」動作の一例を示す。
図14は、第1群に属する音響オブジェクトのレンダリングを制御するために、どのように第1の規則が使用されうるかの一例を示す。
図15は、第1群に属する複数の音響オブジェクトの同時レンダリングを制御するために、どのように第1の規則が使用されうるかの一例を示す。
図11の方法の一例の効果を示す状態図である。
図11の方法の別の例の効果を示す状態図である。
定義
「仮想視覚空間」は、視覚可能な完全または部分的な人工環境を指す。これは3次元でありうる。
「仮想視覚シーン」は、仮想視覚空間内の特定の視点から見た仮想視覚空間を表す。
「現実空間」は、現実環境を指す。これは3次元でありうる。
「現実視覚シーン」は、現実空間内の特定の視点から見た現実空間を表す。
本明細書における「媒介現実」は、完全または部分的な人工環境(仮想視覚空間)を、装置によってユーザに対して少なくとも部分的に表示された仮想視覚シーンとして、ユーザが視覚的に体験することを指す。仮想視覚シーンは、仮想視覚空間内の視点および視野によって決定される。仮想視覚シーンの表示は、ユーザが見ることができる形式で仮想視覚シーンを提示することを意味する。
本明細書における「拡張現実」は、媒介現実の一形式を指し、ユーザは、部分的な人工環境(仮想視覚空間)を、装置によってユーザに対して表示された1つまたは複数の視覚要素によって補足された、物理的現実世界の環境(現実空間)の現実視覚シーンを含む仮想視覚シーンとして視覚的に体験する。
本明細書における「仮想現実」は、媒介現実の一形式を指し、ユーザは、完全な人工環境(仮想視覚空間)を、装置によってユーザに対して表示された仮想視覚シーンとして視覚的に体験する。
媒介現実、拡張現実、または仮想現実に適用される「視点媒介」は、ユーザの動作が、仮想視覚空間内の視点を決定し、仮想視覚シーンを変更することを意味する。
媒介現実、拡張現実、または仮想現実に適用される「一人称視点媒介」は、ユーザの実際の視点が、仮想視覚空間内の視点を決定するという制約が追加された視点媒介を意味する。
媒介現実、拡張現実、または仮想現実に適用される「三人称視点媒介」は、ユーザの実際の視点が、仮想視覚空間内の視点を決定しないという制約が追加された視点媒介を意味する。
媒介現実、拡張現実、または仮想現実に適用される「ユーザインタラクティブ媒介」は、ユーザの動作が、仮想視覚空間内で起こることを少なくとも部分的に決定することを意味する。
「表示」は、ユーザによって視覚的に知覚される(見られる)形式で提示することを意味する。
「レンダリング」は、ユーザによって知覚される形式で提示することを意味する。
「音響空間」は、3次元空間内の音源の配置を指す。音響空間は、音響の録音(録音された音響空間)に関連して、および音響のレンダリング(レンダリングされた音響空間)に関連して、定義される場合がある。
「音響シーン」は、音響空間内の特定の視点から聴いた音響空間を表す。
「音響オブジェクト」は、音響空間内に配置されうる音源を指す。音源オブジェクトは、音響空間内の音源を表す。録音された音響オブジェクトは、特定のマイクで録音された音響を表す。
「対応」または「対応する」は、音響空間および仮想視覚空間と関連して用いられる場合、音響空間と仮想視覚空間との時間および空間が一致している、すなわちそれらが同じ時間の同じ空間であることを意味する。
「対応」または「対応する」は、音響シーンおよび仮想視覚シーンと関連して用いられる場合、音響空間と仮想視覚空間とが対応しており、音響シーンを定める視点を有する概念的リスナーと、仮想視覚シーンを定める視点を有する概念的ビューアとが、同じ場所に同じ向きでおり、すなわち、当該リスナーと当該ビューアの視点は同じであることを意味する。
「仮想空間」は、仮想視覚空間を意味する場合も、音響空間を意味する場合も、仮想視覚空間と対応する音響空間との組合せを意味する場合もある。
詳細説明
現実世界における、点音源からの音の伝播を、反射や反響なしで単純にモデル化すれば、音響パワーが球面上に広がり、逆二乗則に応じて、音の強さ(単位面積当たりのパワー)が減衰することが示される。したがって、音源からの距離に合わせて、パワーは急速に低下する。
人が音響を騒音として知覚するか否かは、音の強さだけではなく、強さと周波数に対して非線形依存な、耳の音の強さへの反応に依存する。
人の耳は、一般的に、2kHzから5kHzの周波数領域において、あらゆる強さの音に対して感度が高くなる。
また、人の耳は飽和効果を示す。多数の臨界周波数帯の内の同一周波数帯の複数の音は、内耳の基底膜の神経終末を奪い合うため、飽和効果が生じる。
現実世界(または仮想世界)において、話している人で混雑した部屋では、人は異なる様々な音源(音響オブジェクト)を、たとえその近くにいても聴き分けることが難しいかもしれない。
以下に説明するいくつかの実施形態では、ユーザが仮想空間における特定の音響オブジェクトに耳を澄ます能力が向上する。仮想世界は、必ずしも物理または人間性理学により限定されることはなく、ユーザに「超人間的」な聴覚を与えることも可能である。
これは、例えば、レンダリングされた仮想空間内の音響オブジェクトを、仮想空間内でのユーザの記録された動作に応じて、音響オブジェクトの第1群または音響オブジェクトの第2群に分類し、その後、少なくとも第1の規則に応じて、第1群に属する音響オブジェクトの1つまたは複数をレンダリングし、少なくとも、第1の規則とは異なる第2の規則と、仮想空間内のユーザの現在位置に応じて、第2群に属する音響オブジェクトの1つまたは複数をレンダリングすることで実現される。
図1A〜1Cおよび2A〜2Cは、媒介現実の例を示す。媒介現実は、拡張現実または仮想現実であってもよい。
図1A、1B、1Cは、複数の同じ仮想オブジェクト21を含む同一の仮想視覚空間20を示す。各図は、異なる視点24を示す。視点24の位置および方向は、それぞれ独立して変わりうる。図1Aと図1Bとでは、視点24の方向が異なるが、位置は同一である。図1Bと図1Cとでは、視点24の方向および位置が異なっている。
図2A、2B、2Cは、それぞれ図1A、1B、1Cの異なる視点24からの仮想視覚シーン22を示す。仮想視覚シーン22は、仮想視覚空間20内の視点24と、視野26とにより決定される。仮想視覚シーン22は、少なくとも部分的にユーザに表示される。
図示の仮想視覚シーン22は、媒介現実シーン、仮想現実シーン、または拡張現実シーンであってもよい。仮想現実シーンは、完全人工仮想視覚空間20を表示する。拡張現実シーンは、部分的に人工、部分的に現実の仮想視覚空間20を表示する。
媒介現実、拡張現実、または仮想現実は、ユーザインタラクティブ媒介であってもよい。この場合、仮想視覚空間20で何が起きるかが、ユーザ動作により少なくとも部分的に決定される。これにより、仮想視覚空間20内の、視覚的要素28などの仮想オブジェクト21との相互作用が可能となりうる。
媒介現実、拡張現実、または仮想現実は、視点媒介であってもよい。この場合、ユーザ動作により仮想視覚空間20内の視点24が決まり、仮想視覚シーン22が変化する。例えば、図1A、1B、1Cに示すように、仮想視覚空間20内の視点24の位置23が変化し、さらに/あるいは仮想視覚空間20内の視点24の方向または向き25が変化しうる。仮想視覚空間20が三次元であれば、視点24の位置23は、3自由度(例えば上下、前後、左右)を有し、仮想視覚空間20内の視点24の方向25は、3自由度(例えばロール、ピッチ、ヨー)を有する。視点24の位置23および/または方向25は、連続的に変化しうる。その場合、ユーザ動作によって視点24の位置および/または方向を連続的に変化させる。あるいは、視点24は、離散量子化位置23および/または離散量子化方向25を有しうる。その場合、ユーザ動作によって視点24の複数の取りうる位置23および/または方向25間を離散的に跳躍して切り替える。
図3Aは、実際のオブジェクト11を有し、部分的に図1Aの仮想視覚空間20に対応する現実空間10を示す。この例では、現実空間10内の実際のオブジェクト11はそれぞれ、対応する仮想オブジェクト21が仮想視覚空間20内に存在するが、仮想視覚空間20内の仮想オブジェクト21がそれぞれ、対応する実際のオブジェクト11が現実空間10に存在するわけではない。この例では、仮想オブジェクト21の1つがコンピュータにより作り出された視覚的要素28であり、現実空間10内に対応する実際のオブジェクト11を持たない人工仮想オブジェクト21である。
現実空間10と、仮想視覚空間20との間には線形対応関係があり、現実空間10内の各実際のオブジェクト11と、その対応する仮想オブジェクト21との間には同じ対応関係が存在する。したがって、現実空間10内の実際のオブジェクト11の相対関係は、仮想視覚空間20内の対応する仮想オブジェクト21間の相対関係と同じである。
図3Bは、図1Bの仮想視覚シーン22に部分的に対応する現実視覚シーン12を示し、実際のオブジェクト11を含むが、人工仮想オブジェクトは含まない。現実視覚シーンは、図1Aの仮想視覚空間20における視点24に対応する視点から見たものである。現実視覚シーン12の中身は、対応する視点24および視野26により決まる。
図2Aは、図3Bに示す現実視覚シーン12の拡張現実版であってもよい。仮想視覚シーン22は、装置によりユーザに表示された1つまたは複数の視覚的要素28により補足された現実空間10の現実視覚シーン12を含む。視覚的要素28は、コンピュータが生成した視覚的要素であってもよい。シースルー構成においては、仮想視覚シーン22は、(1つまたは複数の)補足用視覚的要素28の表示を通して見える、現実視覚シーン12を含む。ビデオ視聴構成では、仮想視覚シーン22は、表示された現実視覚シーン12と、表示された(1つまたは複数の)補足用視覚的要素28とを含む。表示された現実視覚シーン12は、単一の視点24から見た画像、または同時に異なる複数の視点24から見た複数の画像が処理されて生成された単一の視点24から見た画像に基づいてもよい。
図4は、媒介現実、および/または拡張現実、および/または仮想現実を実現するように動作可能な装置30の一例を示す。
装置30は、仮想視覚シーン22の少なくとも各部分を、ユーザに視覚的に知覚可能な形態でユーザに提供するディスプレイ32を有する。ディスプレイ32は、仮想視覚シーン22の少なくとも各部分を、ユーザに表示する光を提供する表示装置であってもよい。表示装置の例としては、液晶表示装置、有機発光表示装置、発光型、反射型、透過型・半透過型表示装置、網膜直接投影表示装置、ニアアイディスプレイなどが挙げられる。
この例では、ディスプレイ32はコントローラ42により制御されるが、すべての例で必ずしもそのようになるわけではない。
コントローラ42の実装は、コントローラ回路構成としてなされてもよい。コントローラ42は、ハードウェアのみとして実装されてもよく、特定の側面をファームウェアのみを含めソフトウェアとして有してもよく、またはハードウェアとソフトウェア(ファームウェアを含む)との組合せとすることもできる。
図4に示されているとおり、コントローラ42は、ハードウェアの機能性を使用可能にする命令を使用して実装されてもよい。例えばコントローラ42は、汎用または専用プロセッサ40においてコンピュータプログラム48の実行可能な命令を使用して実装されてもよい。これらの命令は、そのようなプロセッサ40により実行されるよう、コンピュータ可読記憶媒体(ディスク、メモリなど)に記憶されてもよい。
プロセッサ40は、メモリ46に対し読取りおよび書込みを行うように構成される。プロセッサ40は、出力インタフェースと入力インタフェースを備えてもよい。データおよび/またはコマンドは、プロセッサ40によって出力インタフェースを介して出力され、入力インタフェースを介してプロセッサ40に入力される。
メモリ46は、プロセッサ40にロードされると装置30の動作を制御するコンピュータプログラム命令(コンピュータプログラムコード)を備えるコンピュータプログラム98を記憶する。コンピュータプログラム48のコンピュータプログラム命令は、装置が図5Aおよび5Bに示されている方法を実行できるようにするロジックおよびルーチンを提供する。プロセッサ40は、メモリ46を読み取ることによってコンピュータプログラム48をロードし実行することができる。
図5Aおよび5Bに示されたブロックは、方法のステップおよび/またはコンピュータプログラム48のコードのセクションを表現しうる。示されたブロックの特定の順序は、それらのブロックに対して必要な順序または好ましい順序が存在することを必ずしも意味するものではなく、ブロックの順序および配置は変更されてもよい。さらに、いくつかのブロックを省略することも可能である。
装置30は、例えば図5Aに示す方法60または同様の方法により、媒介現実、および/または拡張現実、および/または仮想現実を実現してもよい。コントローラ42は、仮想視覚空間20のモデル50を記憶および保持する。モデルは、コントローラ42に提供されてもよいし、コントローラ42により決定されてもよい。例えば、入力回路構成44のセンサを利用して、異なる複数の視点からの、仮想視覚空間の重複する距離画像を生成して、3次元モデルを生成するようにしてもよい。
距離画像の生成に使用可能な異なる様々な技術が存在する。Kinect(商標)デバイスで用いられる受動システムの一例としては、赤外線によりオブジェクトがシンボルの不均一パターンで塗り分けられ、その反射光が複数のカメラを用いて測定、処理され、視差効果を用いることで、オブジェクトの位置を決定する場合が挙げられる。
ブロック62では、仮想視覚空間20のモデルが変化した否かが判定される。仮想視覚空間20のモデルが変化していれば、方法はブロック66に進む。仮想視覚空間20のモデルが変化していなければ、方法はブロック64に進む。
ブロック64では、仮想視覚空間20の視点24が変化したか否かが判定される。視点24が変化していれば、方法はブロック66に進む。視点24が変化していなければ、方法はブロック62に戻る。
ブロック66では、三次元仮想視覚空間20の二次元投影が、現在の視点24により定義される場所23および方向25で取られる。その後、投影は、視野26により限定されて、仮想視覚シーン22が生成される。次に方法は、ブロック62に戻る。
装置30が拡張現実を実現すると、仮想視覚空間20は、現実空間10のオブジェクト11と、現実空間10には存在しない視覚的要素28とを含む。このように視覚的要素28を組み合わせることを、人工仮想視覚空間と称しうる。図5Bは、拡張現実のために仮想視覚空間20のモデルを更新する方法70を示す。
ブロック72では、現実空間10が変化したか否かが判定される。現実空間10が変化していれば、方法はブロック76に進む。現実空間10が変化していなければ、方法はブロック74に進む。現実空間10の変化の検出は、差分を利用して、画素単位で実現されてもよいし、移動するオブジェクトを追跡するコンピュータ視覚を利用して、オブジェクト単位で実行されてもよい。
ブロック74では、人工仮想視覚空間が変化したかが判定される。人工仮想視覚空間が変化している場合、方法はブロック76に進む。人工仮想視覚空間が変化していない場合、方法はブロック72に戻る。人工仮想視覚空間はコントローラ42により生成されるため、視覚的要素28への変化は容易に検出できる。
ブロック76において、仮想視覚空間20のモデルが更新される。
装置30は、媒介現実、および/または拡張現実、および/または仮想現実用の、ユーザインタラクティブ媒介を実現してもよい。ユーザ入力回路構成44は、ユーザ入力43を使用してユーザ動作を検出する。これらのユーザ動作を使用して、コントローラ42は仮想視覚空間20内で何が起きるか判定する。これにより、仮想視覚空間20内で、視覚的要素28との相互作用が実現されうる。
装置30は、媒介現実、および/または拡張現実、および/または仮想現実用の、視点媒介を実現してもよい。ユーザ入力回路構成44は、ユーザ動作を検出する。これらのユーザ動作を使用して、コントローラ42は仮想視覚空間20内の視点24を判定して、仮想視覚シーン22を変化させる。視点24の位置および/または方向は、連続的に変化しうる。その場合、ユーザ動作によって視点24の位置および/または方向を変化させる。あるいは、視点24は、離散量子化位置および/または離散量子化方向を有しうる。その場合、ユーザ動作によって視点24の次の位置および/または方向へと跳躍して切り替える。
装置30は、媒介現実、拡張現実、または仮想現実用の、一人称視点を実現してもよい。ユーザ入力回路構成44は、ユーザ視点センサ45を使用して、ユーザの実際の視点14を検出する。ユーザの実際の視点を使用して、コントローラ42は、仮想視覚空間20内の視点24を判定して、仮想視覚シーン22を変化させる。再度図3Aを参照すると、ユーザ18は、実際の視点14を有する。ユーザ18は、実際の視点を変化させうる。例えば、実際の視点14の実際の場所13は、ユーザ18の場所であって、ユーザ18の物理的場所13を変えることで、変化させられる。例えば、実際の視点14の実際の方向15は、ユーザ18が向いている方向であって、ユーザ18の実際の方向を変えることで、変化させられる。実際の方向15は、例えば、ユーザ18がその頭部または視点の向きを変えるか、さらに/あるいはユーザがその視線方向を変えることで、変化させられる。頭部装着型装置30は、ユーザの頭部の向きの変化、および/またはユーザの視線方向の変化を測定することで、一人称視点媒介を実現するように使用されてもよい。
様々な、ただし必ずしもすべてではない実施例によれば、装置30は、入力回路構成44の部位として、実際の視点の変化を判定する視点センサ45を有する。
例えば、ユーザ18の新たな物理的場所13および実際の視点14は、多数の受信機への送信、さらに/あるいは多数の送信機からの受信によるGPS、三角測量(三辺測量)のような測位技術、加速度検出と統合を利用して判定できる。
例えば、加速度計、電子ジャイロスコープ、または電子コンパスを使用して、ユーザの頭部または視点の向きの変化と、それに伴う実際の視点14の実際の方向15の変化を判定してもよい。
例えば、コンピュータビジョンに基づいた瞳孔追跡技術を使用して、ユーザの片目または両目の動きを追跡し、それによりユーザの視線の方向と、それに伴う実際の視点14の実際の方向15の変化を判定してもよい。
装置30は、入力回路構成44の部位として、現実空間10を撮像する撮像素子47を有してもよい。
撮像素子47の例としては、カメラとして動作するように構成された、デジタル撮像素子が挙げられる。当該カメラは、静止画および/または動画を撮影するように動作してもよい。様々な、ただし必ずしもすべてではない実施形態によれば、カメラは、現実空間10が様々な異なる視点からみられるよう、立体視またはその他空間分散配置されるように構成されてもよい。これにより、三次元画像の生成、さらに/あるいは例えば視差効果により奥行きを画定するような処理が可能となりうる。
様々な、ただし必ずしもすべてではない実施形態によれば、入力回路構成44は奥行きセンサ49を有する。奥行きセンサ49は、送信機および受信機を有してもよい。送信機は、信号(例えば超音波や赤外線のような人間が感知できない信号)を送信し、受信機は反射した信号を受信する。単一の送信機と、単一の受信機を使用して、送信、受信間の飛行時間を測定することで、何らかの奥行き情報が得られる。より多くの送信機、および/またはより多くの受信機を使用して、解像度を上げることもできる(空間的多様性)。一例では、送信機は、現実空間10を、光(好ましくは赤外線のような不可視光)で、空間依存パターンにより「塗り分け」るように構成される。受信機による所定のパターンの検出により、現実空間10が空間的に分解できる。現実空間10の空間的分解位置への距離は、飛行時間および/または立体視(受信機が送信機に対して立体視位置にある場合)により判定しうる。
様々な、ただし必ずしもすべてではない実施形態によれば、入力回路構成44は、撮像素子47および奥行きセンサ49の1つまたは複数に加えてまたは代えて、通信回路構成41を有してもよい。この通信回路構成41は、現実空間10における1つまたは複数の遠隔撮像素子47、および/または現実空間10における遠隔奥行きセンサ49と通信してもよい。
図6Aおよび6Bは、ユーザに仮想視覚シーン22を少なくとも部分的に表示可能とする装置30の例を示す。
図6Aは、ユーザに対して画像を表示し、ユーザに対して仮想視覚シーン22を表示するために用いられるディスプレイ32としての表示画面を備えたハンドヘルド装置31を示す。装置30は、上述の6自由度のうちの1つまたは複数において、ユーザの手で故意に移動されうる。ハンドヘルド装置31は、装置30の向きの変化から実際の視点の変化を決定するための複数のセンサ45を内蔵してもよい。
ハンドヘルド装置31は、拡張現実用のビデオ視聴構成であってもよいし、そのように動作するものであってもよい。すなわち、現実視覚シーン12の生映像または録画を、ユーザによる視聴ためのディスプレイ32に表示可能とし、その際に1つまたは複数の視覚的要素28が同時に、ユーザによる視聴ためのディスプレイ32に表示されることを可能とするものである。表示された現実視覚シーン12と表示された1つまたは複数の視覚的要素28との組合せにより、仮想視覚シーン22がユーザに提供される。
ハンドヘルド装置31は、ディスプレイ32の反対の面にカメラが装着されている場合、現実視覚シーン12の生映像を見られるようにしつつ、1つまたは複数の視覚的要素28をユーザに表示することで、これらの組合せにより仮想視覚シーン22を提供することを可能とする、ビデオ視聴構成として動作してもよい。
図6Bは、ユーザに画像を表示するディスプレイ32を有する頭部装着装置33を示す。頭部装着装置33は、ユーザの頭部の動きに合わせて、自動的に動いてもよい。頭部装着装置33は、視線方向検出および/または選択ジェスチャ検出用のセンサ45を内蔵してもよい。
頭部装着装置33は、拡張現実用のシースルー構成であってもよい。すなわち、現実視覚シーン12の生映像を見ることを可能としながら、ユーザに1つまたは複数の視覚的要素28をディスプレイ32により表示することで、これらの組合せにより仮想視覚シーン22が提供されるものである。ここで、バイザー34が存在すれば、それは透明または半透明で、現実視覚シーン12の生映像をバイザー34を通して見ることができる。
頭部装着装置33は、ユーザによる視聴のためのディスプレイ32によって1つまたは複数の視覚的要素28を同時に表示しつつ、ユーザによる視聴のためのディスプレイ32によって現実視覚シーン12の生映像または録画を見られるようにする、拡張現実用のビデオ視聴構成として動作してもよい。表示された現実視覚シーン12と表示された1つまたは複数の視覚的要素28の組合せにより、仮想視覚シーン22がユーザに提供される。この場合、バイザー34は不透明で、ディスプレイ32として利用できる。
ユーザに仮想視覚シーン22を少なくとも部分的に表示可能とする装置30の別の例も利用可能である。
例えば、1つまたは複数の視覚的要素を投影する1つまたは複数のプロジェクタを使用して、物理的現実世界の環境(現実空間)の現実視覚シーンを補足することにより、拡張現実を提供してもよい。
例えば、多数のプロジェクタまたはディスプレイでユーザを囲んで、完全人工環境(仮想視覚空間)を仮想視覚シーンとしてユーザに提供することで、仮想現実を提供してもよい。
再度図4を参照して、装置30は、媒介現実、および/または拡張現実、および/または仮想現実用の、ユーザインタラクティブ媒介を可能としてもよい。ユーザ入力回路構成44は、ユーザ入力43によるユーザ動作を検出する。コントローラ42はユーザ動作を使用して、仮想視覚空間20で何が起きるかを決定する。これにより、仮想視覚空間20内での視覚的要素28との相互作用が実現されうる。
検出されるユーザ動作の例としては、現実空間10内で実行されるジェスチャが挙げられる。ジェスチャは、多様な方法で検出されうる。例えば、奥行きセンサ49を利用して、ユーザ18の一部の動きを検出してもよいし、さらに/あるいは撮像素子47を利用して、ユーザ18の一部の動きを検出してもよいし、さらに/あるいはユーザ18の腕や脚に取り付けた位置/動きセンサを使用して、当該腕や脚の動きを検出してもよい。
オブジェクト追跡を利用して、オブジェクトまたはユーザが変化したときを判定できる。例えば、オブジェクトを大きくマクロな規模で追跡すれば、オブジェクトとともに動く参照フレームを生成できる。この参照フレームを使用すれば、オブジェクトに対する時間的差分を利用して、オブジェクトの経時的形状変化を追跡できる。これは、ジェスチャ、手の動き、指の動き、および/または顔の動きのような小規模な人の動きを検出するのに利用できる。これらは、ユーザに関するシーン独立ユーザ(のみの)動きである。
装置30は、ユーザの身体、例えばユーザの身体の1つまたは複数の関節に対して、複数のオブジェクトおよび/または点を追跡してもよい。様々な実施例において、装置30はユーザの身体の全身骨格追跡を実行してもよい。様々な実施例において、装置30はユーザの手指の追跡を実行してもよい。
ユーザの身体に対する1つまたは複数のオブジェクトおよび/または点の追跡を利用して、装置30はジェスチャ認識を行ってもよい。
図7Aを参照にすると、現実空間10における特定のジェスチャ80が、コントローラ42による「ユーザ制御」イベントとして使用されるジェスチャユーザ入力となる。これにより、仮想視覚空間20内で何が起きるかが決定される。ジェスチャユーザ入力は、装置30にとって、ユーザ入力としての意味を持つジェスチャ80である。
図7Bは、様々な、ただし必ずしもすべてではない実施例において、装置30により現実空間におけるジェスチャ80に対応する描写が、仮想視覚シーン22内においてレンダリングされることを示す。この描写は、仮想視覚シーン22において、1つまたは複数の視覚的要素28がジェスチャ80をなぞるまたは示すように動くこと82を伴う。
ジェスチャ80は静的であってもよいし、動くものであってもよい。動きジェスチャは、動き、または一連の動きを含む動きパターンを含んでもよい。例えば、円を描く動き、左右の動き、上下の動き、または空間内のサインをなぞるものであってもよい。動きジェスチャは、装置から独立したジェスチャであってもよいし、装置に依存したジェスチャであってもよい。動きジェスチャは、センサに対する、例えば1つまたは複数のユーザの体の部位またはさらなる装置のようなユーザ入力オブジェクトの動きを伴うものであってもよい。身体の部位は、ユーザの手、または1つまたは複数の指および親指のような、ユーザの手の一部を含んでもよい。別の例では、ユーザ入力オブジェクトは、頭部または腕のような、ユーザの身体の別の部位を含んでもよい。三次元の動きは、ユーザ入力オブジェクトの6自由度のうちの任意のものを含んでもよい。動きは、ユーザ入力オブジェクトがセンサに近づくまたは遠ざかることや、センサに対して平行な平面上での動き、またはそのような動きの任意の組合せを含んでもよい。
ジェスチャ80は、非接触ジェスチャであってもよい。非接触ジェスチャとは、その最中に、センサに一切触れないものである。
ジェスチャ80は、センサに対する絶対変位により定義される絶対ジェスチャであってもよい。そのようなジェスチャは、現実空間10の精確な場所で実行されるという点で、限定的でありうる。あるいは、ジェスチャ80は相対的ジェスチャでありうる。これは、ジェスチャ中の相対的変位により定義されるものである。当該ジェスチャは、現実空間10の精確な場所で実行される必要はなく、数多くの任意の場所にて実行できるという点で、非限定的でありうる。
ジェスチャ80は、原点に対する追跡点の変位の、経時的進行とも定義することができ、変位、速度のような時間変数パラメータ、またはその他運動パラメータを使用して、動きに関して定義されうる。非限定的ジェスチャは、相対変位Δdの、時間Δtに対する進行と定義されうる。
ジェスチャ80は、一空間次元(1Dジェスチャ)、二空間次元(2Dジェスチャ)、または三空間次元(3Dジェスチャ)で実行されてもよい。
図8は、システム100の例と、方法200の例とを示す。システム100と、方法200とは、音響空間を記録し、録音された音響空間を処理して、録音された音響空間を、音響空間における特定の位置(原点)および向きのリスナーに対して、レンダリングされた音響シーンとしてレンダリングすることを可能とするものである。
音響空間とは、三次元空間に音源を配置したものである。音響空間は、音響の録音に関して定義されてもよいし(録音された音響空間)、音響のレンダリングに関して定義されてもよいし(レンダリングされた音響空間)。レンダリングされた音響空間は、音響オブジェクトの追加、除去、または適用により、録音された音響空間と異なっていてもよい。追加された音響オブジェクトは、例えば、スタジオで、例えばライブラリのサンプリング、音響を独立して録音、またはサウンドミキシングによりスタジオサウンドを生成することで、録音または生成されたものであってもよい。
システム100は、1つまたは複数の可動マイク110を含み、1つまたは複数の固定マイク120を含んでもよい。
必ずしもすべてではないこの例によれば、音響空間の原点がマイクに存在する。この例では、原点に存在するマイクは固定マイク120であり、1つまたは複数のチャネルを録音でき、例えばマイクアレイであってもよい。ただし、原点はいかなる任意の位置にあってもよい。
この例では、単一の固定マイク120が示されている。しかし、別の例では、多数の固定マイク120が独立して使用されてもよい。
システム100は、1つまたは複数の可動マイク110を含む。可動マイク110は、例えば、録音された音響空間内の音源と共に移動してもよい。可動マイクは、例えば、音源の近くにとどまる、「近接」マイクであってもよい。これは、例えばブームマイクを使用する、または例えばLavalier小型マイクを使うなどして、マイクを音源に取り付けることで実現されうる。可動マイク110は、1つまたは複数の録音チャネルを録音してもよい。
原点に対する可動マイクPM110の相対的位置は、ベクトルzにより示されてもよい。したがって、ベクトルzは録音された音響空間の概念的リスナーに対して、可動マイク110を位置決めするものである。
原点における概念的リスナーの相対的向きは、値Δで示されてもよい。向き値Δは、音響シーンを定義する、概念的リスナーの「視点」を定義する。音響シーンは、音響空間内の特定の視点で聴いた音響空間を表すものである。
図1のシステム100により、録音された音響空間がユーザ(リスナー)にレンダリングされる場合、当該空間は、リスナーが録音された音響空間の原点に位置し、特定の向きを向いているものとして、リスナーにレンダリングされる。したがって、可動マイク110が録音された音響空間内で移動する場合、その録音された音響空間の原点に対する位置zが追跡され、レンダリングされた音響空間において正しく描写されることが重要である。システム100は、これを実現するように構成される。
固定マイク120から出力された音響信号122は、音響コーダ130により、マルチチャンネル音響信号132に符号化される。複数の固定マイクが存在する場合、それぞれの出力が音響コーダにより個別にマルチチャンネル音響信号に符号化される。
音響コーダ130は、マルチチャンネル音響信号132が固定マイク120により録音された音響空間を示し、空間的音響効果を提供するようにレンダリングできるように、空間音響コーダであってもよい。例えば、音響コーダ130は、バイノーラルコーディング、5.1サラウンドサウンドコーディング、7.1サラウンドサウンドコーディングなどの、既存の標準に応じてマルチチャンネル音響信号132を生成するように構成されてもよい。複数の固定マイクが存在する場合、各固定マイクのマルチチャンネル信号が、同じ既存の標準(バイノーラルコーディング、5.1サラウンドサウンドコーディング、7.1サラウンドサウンドコーディングなど)に応じて、同一の、共通なレンダリングされた音響空間に対して生成される。
1つまたは複数の固定マイク120からのマルチチャンネル音響信号132は、ミキサー102により、1つまたは複数の可動マイク110からのマルチチャンネル音響信号142とミキシングされ、マルチマイクマルチチャンネル音響信号103が生成される。この信号は、原点に対する録音された音響シーンを示し、録音された音響シーンに対応するリスナーが原点にいる際に、当該リスナーにレンダリングされた音響シーンを再生するように、音響コーダ130に対応するオーディオデコーダによりレンダリングされる。
可動マイク110から、またそのそれぞれからのマルチチャンネル音響信号142は、ミキシング前に処理されて、原点における固定マイク120に対する可動マイク110のあらゆる動きが考慮される。
可動マイク110からの音響信号112は、位置決めブロック140により処理されて、原点に対する可動マイク110の動きが調整される。位置決めブロック140には、ベクトルz、またはベクトルzに依存する1つまたは複数のパラメータが入力される。ベクトルzは、原点に対する可動マイク110の相対的位置を表す。
位置決めブロック140は、可動マイク110により録音された音響信号112と、固定マイク120により録音された音響信号122との間のあらゆる時間的ずれを調整するように構成されてもよい。これにより、これら信号が共通時間参照フレームを共有する。これは、例えば、自然発生した、または人工的に導入された、可動マイク110からの音響信号112内に存在する(非可聴)音響信号と、固定マイク120からの音響信号122内のものとの相関を取ることで実現されうる。当該相関により特定されたあらゆる時間のずれは、可動マイク110からの音響信号112を、位置決めブロック140により処理前に遅らせる/進めるために使用されうる。
位置決めブロック140は、可動マイク110からの音響信号112を、当該可動マイク110の、固定マイク120が存在する原点に対する相対的向き(Arg(z))を考慮して処理する。
マルチチャンネル音響信号132を生成するための、固定マイク音響信号122のオーディオコーディングは、録音された音響空間の向きに対するレンダリングされた音響空間の特定の向きを想定したもので、音響信号122は、それに応じてマルチチャンネル音響信号132に符号化される。
録音された音響空間における可動マイク110の相対的向きArg(z)が決定され、音響オブジェクトを示す音響信号112がオーディオコーディング130により定義されるマルチチャンネルに符号化される。これにより、レンダリングされた音響空間内で、音響オブジェクトがリスナーからの相対的向きArg(z)に正しく配向されるようになる。例えば、音響信号112はまず、ミキシング、符号化されて、マルチチャンネル信号142となり、その後変形Tにより、音響オブジェクトの移動を示すマルチチャンネル音響信号142をArg(z)だけ、対応する複数のチャンネルにより定義された空間内で回転してもよい。
配向ブロック150を利用して、必要に応じてΔだけマルチチャンネル音響信号142を回転してもよい。同様に、配向ブロック150を利用して、必要に応じてΔだけマルチチャンネル音響信号132を回転してもよい。
配向ブロック150の機能は、位置決めブロック140の配向機能に非常に類似しているが、回転量はArg(z)ではなくΔとなる。
状況によっては、例えばバイノーラルオーディオコーディングを利用するヘッドフォンのような頭部装着音響出力装置300を介してリスナーに対して音響シーンがレンダリングされる場合、リスナーがその頭部330を空間内で回しても、空間320内にレンダリングされた音響空間310がとどまることが好ましくありうる。そのためには、頭部の回転に対して反対側に、同じ分だけ音響出力装置300に対してレンダリングされた音響空間310を回転させる必要がある。レンダリングされた音響空間310の向きは、リスナーの頭部の回転を追跡する。したがって、レンダリングされた音響空間310の向きが、リスナーの頭部330とともに動くのではなく、空間320内に固定された状態でとどまる。
可動マイク信号112をさらに処理して、レンダリングされた音響シーンにおいてリスナーから音響オブジェクトへの距離Dの感覚を制御する。例えば、録音された音響空間における、原点から音響オブジェクトへの距離|z|に一致するように制御される。これは、例えばバイノーラルコーディングが使用されて、音響オブジェクトがユーザの外部にあり、ユーザの耳の間のユーザの頭部内ではなく、離れているような場合に有効となりうる。距離ブロック160は、距離の感覚を修正するようにマルチチャンネル音響信号142を処理する。
図9は、例えば、方法200、および/または図8の位置決めブロック140、配向ブロック150、距離ブロック160の機能を実行するために使用されうるモジュール170を示す。モジュール170は、回路構成および/またはプログラムされたプロセッサを使用して実現されうる。
マルチマイクマルチチャンネル音響信号103を形成するように、マルチチャンネル音響信号132とミキシングされる前の、マルチチャンネル音響信号142の単一チャンネルの処理が図示されている。マルチチャンネル信号142の単一入力チャンネルは、信号187として入力される。
入力信号187は、「直接」経路と、1つまたは複数の「間接」経路とを平行に通過して、それら経路からの出力がミキサー196によりマルチチャンネル信号としてミキシングされて、出力マルチチャンネル信号197が生成される。各入力チャンネルについての出力マルチチャンネル信号197がミキシングされて、マルチチャンネル音響信号142が形成され、これがマルチチャンネル音響信号132とミキシングされる。
直接経路は、リスナーにとって、音源から直接受信したように捉えられる音響信号を示し、間接経路は、リスナーにとって、音源から、多経路、反射経路、または屈折経路などの間接経路を介して受信したように捉えられる音響信号を示す。
距離ブロック160は、直接経路と間接経路との間の相対利得を修正することで、レンダリングされた音響空間310におけるリスナーから音響オブジェクトへの距離Dの感覚を変化させる。
平行経路はそれぞれ、距離ブロック160により制御される可変利得装置181、191を有する。
距離の感覚は、直接および間接(非相関)経路間の相対利得を制御することで制御できる。間接経路利得を、直接経路利得に対して増やすと、距離の感覚も増える。
直接経路では、入力信号187は距離ブロック160の制御の下、可変利得装置181により増幅され、利得調整信号183が生成される。利得調整信号183は、直接処理モジュール182により処理されて、直接マルチチャンネル音響信号185が生成される。
間接経路では、入力信号187は距離ブロック160の制御の下、可変利得装置191により増幅され、利得調整信号193が生成される。利得調整信号193は、間接処理モジュール192により処理されて、間接マルチチャンネル音響信号195が生成される。
直接マルチチャンネル音響信号185と、1つまたは複数の間接マルチチャンネル音響信号195とが、ミキサー196によりミキシングされ、出力マルチチャンネル音響信号197が生成される。
直接処理ブロック182と、間接処理ブロック192とは両方、到来方向信号188を受信する。到来方向信号188により、録音された音響空間における可動マイク110(可動音響オブジェクト)の向きArg(z)と、概念的リスナー/音響出力装置300に対するレンダリングされた音響空間310の向きΔとが与えられる。
録音された音響空間内で可動マイク110が動くと、可動音響オブジェクトの位置が変化し、音響空間をレンダリングする頭部装着音響出力装置が回転すると、レンダリングされた音響空間の向きが変化する。
例えば、直接処理ブロック182は、適切なマルチチャンネル空間における、単一のチャンネル音響信号、利得調整入力信号183を回転して、直接マルチチャンネル音響信号185を生成するシステム184を有する。システムは、到来方向信号188により定義されたArg(z)およびΔだけ、マルチチャンネル信号を、対応する複数のチャンネルについて定義された空間内で、回転する変換Tを実行するために伝達関数を利用する。例えば、頭部伝達関数(HRTF)補間器を、バイノーラル音響に使用してもよい。別の例では、ラウドスピーカ(例えば5.1)オーディオ用にベクトル・ベースのアンプリチュード・パンニング(VBAP)が用いられてもよい。
間接処理ブロック192は、例えば、可変利得装置194を使用して、単一のチャンネル音響信号、利得調整入力信号193の利得を制御するために、到来方向信号188を使用してもよい。増幅された信号は次に、固定相関除去部196と、固定変換Tを使用して処理されて、間接マルチチャンネル音響信号195が生成される。本例での固定相関除去部は、少なくとも2msの事前遅延を利用する。変換Tにより、マルチチャンネル信号が対応する多数のチャンネルに対して定義された空間内で回転される。これは直接系と同様にして実行されるが、固定量で行われる。例えば、固定頭部伝達関数(HRTF)補間器を、バイノーラル音響に使用してもよい。
したがって、モジュール170が可動マイク信号112の処理および次の機能の実行に使用可能であることが理解されよう。
(i)レンダリングされた音響空間における、リスナーからの音響オブジェクトの相対的位置(向きArg(z)および/または距離|z|)を変化させる
(ii)レンダリングされた音響空間((i)による音響オブジェクト位置)の向きを変化させる
また、モジュール170はさらに、固定マイク120により提供された音響信号122を処理するにあたって、配向ブロック150のみの機能を実行するために使用されうる。ただし、到来方向信号はΔのみを含み、Arg(z)を含まない。様々な、ただし必ずしもすべてではない実施例によれば、間接経路に対する利得を修正する可変利得装置191の利得をゼロにし、直接経路に対する可変利得装置181の利得を固定としてもよい。この場合、モジュール170は、Δのみを含み、Arg(z)を含まない到来方向信号に応じてレンダリングされた音響空間を生成するように録音された音響空間を回転するシステムにまで省略される。
図10は、装置400を使用して実現されるシステム100の例を示す。装置400は例えば、固定電子装置、可搬性電子装置、またはユーザの掌または上着のポケットに収まるサイズの携帯電子装置であってもよい。
この例では、装置400は、一体的マイクとして固定マイク120を有し、距離を置いて設けられる1つまたは複数の可動マイク110を有さない。必ずしもすべてではないこの例では、固定マイク120はマイクアレイである。別の例では、装置400は固定マイク120を有さない。
装置400は、例えば、(1つまたは複数の)遠隔可動マイク110のような外部マイクと外部通信するための外部通信インタフェース402を有する。これは、例えば無線送受信機であってもよい。
測位システム450は、システム100の一部として示されている。測位システム450は、音響空間の原点、例えば固定マイク120に対する(1つまたは複数の)可動マイク110の測位に使用される。この例では、測位システム450は可動マイク110および装置400の両方の外部に存在するものとして示されている。これは、音響空間の原点に対する可動マイク110の位置zに依存した情報を装置400に提供する。この例では、当該情報は外部通信インタフェース402を介して提供されるが、別の例では、別のインタフェースが使用されてもよい。また、別の例では、測位システムは全体的または部分的に可動マイク110および/または装置400内に位置してもよい。
位置システム450は、特定の周波数により、可動マイク110の位置更新を提供する。音響オブジェクトの「正確」および「不正確」な測位という表現は、位置更新の周波数による制約下での正確、不正確であることが理解されよう。すなわち、正確、不正確とは、絶対的表現というよりも相対的表現である。
位置システム450は、可動マイク110の位置を判定可能とする。位置システム450は、測位信号を受信し、位置を判定し、プロセッサ412に提供するか、プロセッサ412が可動マイク110の位置を判定できるように、測位信号に応じた測位信号またはデータを提供してもよい。
位置システム450が、オブジェクトを測位するために使用できる数多くの異なる技術が存在する。当該技術としては、測位オブジェクトが受動的で、測位信号を生成しない、受動的システムと、測位オブジェクトが1つまたは複数の測位信号を生成する、能動的システムとを含む。Kinect(商標)デバイスで用いられるシステムの一例としては、赤外線によりオブジェクトがシンボルの不均一パターンで塗り分けられ、その反射光が複数のカメラを用いて測定、処理され、視差効果を用いることで、オブジェクトの位置を決定する場合が挙げられる。能動的な無線測位システムの例は、オブジェクトが送信機を有し、それが無線測位信号を複数の受信機に送信することで、オブジェクトが例えば三辺測量または三角測量により測位可能とする場合が挙げられる。受動的無線測位システムの例としては、オブジェクトが受信機を有し、それが無線測位信号を複数の送信機から受信することで、オブジェクトが例えば三辺測量または三角測量により測位可能とする場合が挙げられる。三辺測量では、既知の位置にある複数の、非整列な送信機/受信機からの、オブジェクトの距離を推測することが求められる。距離は、例えば飛行時間または信号減衰を利用して推測できる。三角測量では、既知の位置にある複数の、非整列な送信機/受信機からの、オブジェクトの方角を推測することが求められる。方角は、例えば、可変狭開口から送信を行う送信機と、可変狭開口から受信を行う受信機を使用するか、ダイバーシティ受信機で位相差を検出することで推測できる。
別の測位システムは、推測航法および慣性運動または磁気測位を利用してもよい。
測位対象オブジェクトは、可動マイク110であってもよいし、または可動マイク110に対応付けられた人が装着または携帯するオブジェクトであってもよいし、または可動マイク110に対応付けられた人そのものであってもよい。
装置400は、全体的または部分的に上述のシステム100および方法200を動作して、マルチマイクマルチチャンネル音響信号103を生成する。
装置400は、出力通信インタフェース404を介してマルチマイクマルチチャンネル音響信号103を、レンダリングのために音響出力装置300に提供する。
様々な、ただし必ずしもすべてではない実施例によれば、音響出力装置300はバイノーラルコーディングを利用してもよい。さらに/あるいは、様々な、ただし必ずしもすべてではない実施例によれば、音響出力装置300は頭部装着音響出力装置であってもよい。
この例では、装置400は、固定マイク120、可動マイク110、測位システム450が提供する信号を処理するように構成されたコントローラ410を備える。いくつかの例では、コントローラ410は、マイク110、120から受信された信号のアナログ−デジタル変換を行うことが求められ、さらに/あるいはマイク110、120および音響出力装置300の機能によっては音響出力装置300への信号のデジタル−アナログ変換を行うことが求められうる。しかし、図を見やすくするために、図9ではコンバータは示されていない。
コントローラ410の実装は、コントローラ回路構成としてなされてもよい。コントローラ410は、ハードウェアのみとして実装されてもよく、特定の側面をファームウェアのみを含めソフトウェアとして有してもよく、またはハードウェアとソフトウェア(ファームウェアを含む)との組合せとすることもできる。
図10に示されているとおり、コントローラ410は、ハードウェアの機能性を使用可能にする命令を使用して実装されてもよい。例えばコントローラ410は、汎用または専用プロセッサ412においてコンピュータプログラム416の実行可能な命令を使用して実装されてもよい。これらの命令は、そのようなプロセッサ412により実行されるよう、コンピュータ可読記憶媒体(ディスク、メモリなど)に記憶されてもよい。
プロセッサ412は、メモリ414に対し読取りおよび書込みを行うように構成される。プロセッサ412は、出力インタフェースと入力インタフェースを備えてもよい。データおよび/またはコマンドは、プロセッサ412によって出力インタフェースを介して出力され、入力インタフェースを介してプロセッサ412に入力される。
メモリ414は、プロセッサ412にロードされると装置400の動作を制御するコンピュータプログラム命令(コンピュータプログラムコード)を備えるコンピュータプログラム416を記憶する。コンピュータプログラム416のコンピュータプログラム命令は、装置が図1から図12に示されている方法を実行できるようにするロジックおよびルーチンを提供する。プロセッサ412は、メモリ414を読み取ることによってコンピュータプログラム416をロードし実行することができる。
図8および9に示すブロックは、方法のステップおよび/またはコンピュータプログラム416のコードのセクションを表現しうる。示されたブロックの特定の順序は、それらのブロックに対して必要な順序または好ましい順序が存在することを必ずしも意味するものではなく、ブロックの順序および配置は変更されてもよい。さらに、いくつかのブロックを省略することも可能である。
図1から7を参照した先行する記載では、仮想視覚空間20と、仮想視覚空間20に依存した仮想視覚シーン26の制御を可能とするシステム、装置30、方法60、コンピュータプログラム48が説明されている。
図8から10を参照した先行する記載では、音響空間と、音響空間に依存した音響シーンの制御を可能とするシステム100、装置400、方法200、コンピュータプログラム416が説明されている。
様々な、ただし必ずしもすべてではない実施例によれば、仮想視覚空間20と音響空間とは対応していてもよい。「対応」または「対応する」は、音響空間や仮想視覚空間と関連して用いられる場合、音響空間と仮想視覚空間との時間および空間が一致している、すなわちそれらが同じ時間の同じ空間にあることを意味する。
仮想視覚空間と音響空間との対応により、仮想視覚シーンと音響シーンとが対応する。「対応」または「対応する」は、音響シーンや仮想視覚シーンと関連して用いられる場合、音響空間と仮想視覚空間とが対応しており、音響シーンを定める視点を有する概念的リスナーと、仮想視覚シーンを定める視点を有する概念的ビューアとが、同じ位置に同じ向きでおり、すなわち当該リスナーと当該ビューアの視点は同じであることを意味する。
以下の図11から16を参照した記載では、ユーザの過去の動作に基づいて、音響オブジェクトを制御可能にする方法500が説明される。方法500は、上述のシステム、上述の装置、および/または上述のコンピュータプログラムにより実行されうる。
図11は、音響オブジェクトのレンダリングを制御する方法500の例を示す。
方法のブロック502において、レンダリングされた仮想空間内の音響オブジェクトが音響オブジェクトの第1群(ブロック504)または音響オブジェクトの第2群(ブロック514)に分類される。分類は、ユーザの仮想空間内での記録された動作に応じて実行される。
ブロック506において、第1群に分類された1つまたは複数の音響オブジェクトは、仮想空間内で少なくとも第1の規則に応じてレンダリングされる。
ブロック516において、第2群に分類された1つまたは複数の音響オブジェクトは、少なくとも第2の規則と、仮想空間内のユーザの現在位置とに応じてレンダリングされる。
ユーザの記録された動作は、現在ではなく過去に行われた動作である。したがって、音響オブジェクトの分類は「記憶効果」、すなわち過去に起きたことに基づく。ユーザの記録された動作に応じて分類が可能となるように、ユーザの過去の動作を記録するため、データを記憶してもよい。
ユーザの記録された動作に応じた分類による「記憶効果」により、仮想空間内のユーザの記録された動作に応じて、少なくともいくつかの音響オブジェクト(第1群および/または第2群)のレンダリングが実現される。すなわち、記憶効果は仮想空間内の動作に基づく。
ただし、レンダリングはユーザの記録された動作に応じた音響オブジェクトの分類のみに依存するものではない。レンダリングはさらに、仮想空間内のユーザの現在位置にも依存する。したがって、レンダリングには、仮想空間内のユーザの位置に基づいた、リアルタイム動的側面が存在する。
これにより、仮想空間内の別々の場所に配置された音響オブジェクトを含むレンダリングされた音響シーンが、その時点での仮想空間内のユーザ(リスナー)の位置に依存する(リアルタイム効果)のみではなく、仮想空間内のユーザの記録された動作にも依存する(記憶効果)、仮想空間および空間記憶効果が実現される。したがって、仮想空間内でのユーザの動作が、仮想空間内のユーザのリアルタイム位置に基づくレンダリングによるリアルタイム効果と、仮想空間内でのユーザの記録された動作に依存した差分レンダリングに基づくレンダリングによる記憶効果とを備える。
方法500は、例えば第2群に属する1つまたは複数の音響オブジェクトに対する、第1群に属する1つまたは複数の音響オブジェクトのユーザによる認知を向上するために利用されうる。この例では、第1の規則と、第2の規則との間の差分が、レンダリングされる音響オブジェクトの差分に帰結する。
さらに/あるいは、方法500は、例えば記録された第1群に属する1つまたは複数の音響オブジェクトに対する、レンダリングされた第1群に属する1つまたは複数の音響オブジェクトのユーザによる認知を向上するために利用されうる。この例では、第1の規則により、記録された音響オブジェクトが修正される。
少なくともいくつかの例において、第1群に属する音響オブジェクトのレンダリングは、音響オブジェクトをレンダリングする際に、記録された音響オブジェクトの少なくとも1つの特性を適用することを含む。
第1の規則と、第2の規則との間の差分により、第1群に属する1つまたは複数の音響オブジェクトと、第2群に属する1つまたは複数の音響オブジェクトとの間の1つまたは複数の特性値の相対的なずれが生じる。
音響オブジェクト特性の例としては、以下のものが挙げられるが、必ずしもこれらに限定されない。
音響オブジェクトの周波数(ピッチ)である、周波数特性
音響オブジェクトの強さ(単位面積当たりのパワー)である強さ特性
反射/残響量などの環境特性
仮想空間内の音響オブジェクトの位置である位置特性
例えば、音響オブジェクトの周波数特性の変化により、レンダリングされた音響オブジェクトが、記録された音響オブジェクトとは異なる臨界帯域に含まれうる。この周波数多様性により、ユーザの第1群に属する音響オブジェクトを聴く能力を向上し、第2群に属する音響オブジェクトを聴く能力を抑制しうる。
例えば、音響オブジェクトの強さ特性の変化により、第1群に属する音響オブジェクトの音の大きさを、その音響オブジェクトが録音された状態よりも人工的に大きく、または第2群に属する音響オブジェクトの音の大きさを、その音響オブジェクトが録音された状態よりも人工的に小さくしうる。これにより、ユーザの第1群に属する音響オブジェクトを聴く能力を向上し、第2群に属する音響オブジェクトを聴く能力を抑制しうる。
音響オブジェクトの環境特性の変化により、例えば、残響(直接経路に対する間接経路の利得)を増加または低減しうる。これにより、ユーザの第1群に属する音響オブジェクトを聴く能力を向上し、第2群に属する音響オブジェクトを聴く能力を抑制しうる。
音響オブジェクトの位置特性の変化により、例えば、仮想空間内での音響オブジェクトの位置が変更されうる。これにより、ユーザの第1群に属する音響オブジェクトを聴く能力を向上し(例えば、他の音響オブジェクトから空間的に離す、またはユーザに近づけることによる)、第2群に属する音響オブジェクトを聴く能力を抑制しうる。
様々な、ただし必ずしもすべてではない実施例によれば、第2の規則に応じて第2群に属する音響オブジェクトをレンダリングすることで、録音された音響オブジェクトの特性が、第2群に属する音響オブジェクトがレンダリングされる際に適用せずに利用される。
図12Aから12Fは、方法500の例示的な適用を示す。
上述のように、音響オブジェクト620のレンダリングは、ユーザ630(概念的リスナー)に対する音響オブジェクト620の位置に依存する。音響オブジェクト620が固定されている場合、音響オブジェクト620のレンダリングは、録音された音響オブジェクトの特性と、ユーザ630の位置に依存する。音響オブジェクト620が動く場合、音響オブジェクト620のレンダリングは、録音された音響オブジェクト620の特性と、ユーザ630の位置と、音響オブジェクト620の位置とに依存する。以下の例では、ユーザ630が固定された音響オブジェクト620に対して動くものと仮定される。ただし、これは単に方法500の適用を説明しやすくするためのものである。別の例では、方法500は、単純な範囲で動くすべてまたは一部の音響オブジェクト620に適用されてもよい。
二次元仮想空間600が図示されているが、方法500は、三次元空間を含むあらゆる仮想空間600に適用できる。
図12Aから12Fの例では、仮想空間600は、音響空間610のみであってもよいし、対応する仮想視覚空間20と、音響空間610との合成仮想空間であってもよい。以下の説明では、仮想空間600は合成仮想空間である仮定する。いくつかの例では、仮想視覚空間20内で、音響オブジェクト620は、仮想オブジェクト21、例えばコンピュータにより生成された仮想オブジェクト28により描写されてもよい。
図12Aは、非修正仮想空間600(音響空間610)V内の、異なる様々な位置Pに配置された異なる様々な複数の音響オブジェクト620を示す。ユーザ630は、仮想空間610内を移動可能である。ユーザ610は、概念的リスナーの位置Pを示す。
方法500の動作がなければ、仮想空間600内のユーザ630の現在位置に応じて、音響オブジェクト620がレンダリングされる。各音響オブジェクト620は、ユーザが位置Pを変えると変化する、ユーザ630の相対位置を有する。音響オブジェクト620は、正しい相対的位置から、ユーザ630に対してレンダリングされる。したがって、ユーザ630に対してレンダリングされた音響空間610は、記録された音響空間610と等しくなる。
図12Aから12Fの例では、説明をしやすくするため、すべての音響オブジェクト620が、記録されたとおりにレンダリングされるような初期状態にあるものと仮定する。方法500は、音響オブジェクト620の少なくとも一部の状態を変えて、記録されたとおりにはレンダリングされないようにする。記録されたとおりにはレンダリングされない音響オブジェクト620は、音響オブジェクトの第1群に分類され、記録されたとおりにレンダリングされる音響オブジェクトは、音響オブジェクトの第2群に分類される。
図12Aにおいて、ユーザ630は、音響オブジェクト6201に対して仮想空間600内で「起動」動作を実行する。この起動動作は、音響オブジェクト6201の状態変化を生じさせ、その第2群から第1群への再分類を生じさせるのに足るものである。
図12Bにおいて、音響オブジェクト6201は、第1群に属する音響オブジェクトとして、標示622により示されている。この標示622は、コンピュータが生成した仮想オブジェクト28であってもよい。ただし、別の例では、標示622は使用されない。
図12Bは、図12Aの仮想空間600の時間が経過した状態を示す。ユーザ630は、音響オブジェクト6201から離れるように動いている。
この方法は、レンダリングされた仮想空間内の音響オブジェクトを、音響オブジェクトの第1群(音響オブジェクト6201)、または音響オブジェクトの第2群(その他の音響オブジェクト620)に分類する。この分類は、仮想空間600内での、ユーザ630の記録された動作(図12Aにおいて過去に実行されていた起動動作)に依存する。
第2群に分類された音響オブジェクト620は、少なくとも第2の規則と、仮想空間内でのユーザの現在位置に応じてレンダリングされる。これらの音響オブジェクトは、録音された音響空間を正確に再生するように、記録されたとおりにレンダリングされてもよい。
第1群に分類された音響オブジェクト6201は、仮想空間内で第1の規則に応じてレンダリングされる。
第1の規則は、1つまたは複数の規則により定義されてもよい。第2の規則は、1つまたは複数の規則により定義されてもよい。様々な、ただし必ずしもすべてではない実施例によれば、ユーザは第1の規則の少なくとも一部をプログラムできる。様々な、ただし必ずしもすべてではない実施例によれば、ユーザは第2の規則の少なくとも一部をプログラムできる。
第1の規則は、第1群に属する音響オブジェクト6201に対するユーザの認知を向上するために利用できる。これは、例えば、第1群に属する音響オブジェクト6201を同様の位置/距離である同様の第2群に属する音響オブジェクトに対して、より聴きやすくしうる。また、例えば、第1群に属する音響オブジェクト6201を第2群に属する同じ音響オブジェクトに対して、より聴きやすくしうる。
第1の規則は、例えば、仮想空間610内においてユーザ630が第1群に属する音響オブジェクト6201から離れても、第1群に属する音響オブジェクト6201に対する認知維持を実現するものであってもよい。第1群に属する音響オブジェクト6201の「聴取性」が、物理法則によりなるべきレベルよりも高くなり、なるべきレベルに対して人工的に維持されるのである。これにより、ユーザ630は仮想空間600を動き回っても、第1群に属する音響オブジェクト6201を聴くことができる。
様々な、ただし必ずしもすべてではない実施例によれば、第1群に属する音響オブジェクト6201は、仮想空間600内の少なくとも第1の規則と、ユーザの現在位置とに応じてレンダリングされる。これらの例において、第1群に属する音響オブジェクト6201のレンダリングは、ユーザ630の現在の(リアルタイム)位置に応じてユーザインタラクティブとなる。
すべての例ではないが、ある例において、1つまたは複数の音響オブジェクト620にはそれぞれ、ユーザ630への音響オブジェクト620の相対的距離Dに基づいた、分類に応じたレンダリングがされる。例えば、第2群に属する音響オブジェクトは、物理的現実を伴ってレンダリングされ、ユーザ630への音響オブジェクトの相対的距離Dに対して、逆二乗則関係となる強さによりレンダリングされる(I=k1D−2)。一方で、第1群に属する音響オブジェクトは、物理的現実を伴わずにレンダリングされ、ユーザ630への音響オブジェクトの相対的距離Dに対して異なる関係となる強さによりレンダリングされる(例えば、I=k2D−nであって、0≦n<2、例えばn=1または1/2となる)。第1群に属する音響オブジェクトは、音響オブジェクトとユーザの現在のリアルタイム相対的位置の変化に対する依存性がより低い。
したがって、第1の規則は、レンダリングされた音響オブジェクト620の強さの変化と、仮想空間600における音響オブジェクトとユーザ630との間の距離Dの変化との間に、第1の関係を定義できる。第2の規則は、レンダリングされた音響オブジェクト620の強さの変化と、仮想空間600における音響オブジェクトとユーザ630との間の距離Dの変化との間に、異なる第2の関係を定義できる。
図12Cは、図12Bの仮想空間600の時間が経過した状態を示す。ユーザ630は、音響オブジェクト6201からさらに離れ、異なる音響オブジェクト6202に近付くように動いている。
ユーザは、第2群に属する異なる音響オブジェクト6202の隣にいるため、ユーザ630には音響オブジェクト6202が明確に聴こえる。ユーザ630は、第2群に属するその他の音響オブジェクト620および第1群に属する音響オブジェクト6201から離れている。ただし、第1群に属する音響オブジェクト6201は第1の規則に応じてレンダリングされ、第2群に属するその他の音響オブジェクト620は第2の規則に応じてレンダリングされる。これにより、第1群に属する音響オブジェクト6201をユーザが聴く能力が向上する。したがって、ユーザは、近くの音響オブジェクト6202と、離れている第1群に属する音響オブジェクト6201とを同時に聴くことができる。
方法500により、仮想空間内のユーザ630は、超人間的、または聴力補助が与えられるため、実際には聴こえなくなる、または聴こえにくくなるはずの状況でも、第1群に属する音響オブジェクト6201を聴くことができるようになる。
図12Cにおいて、ユーザ630は、音響オブジェクト6202に対して仮想空間600内での「起動」動作を実行する。この起動動作は、音響オブジェクト6202の状態変化を生じさせ、その第2群から第1群への再分類を生じさせるのに足るものである。
図12Dにおいて、音響オブジェクト6202は、第1群に属する音響オブジェクトとして、標示622により示されている。この標示は、コンピュータが生成した仮想オブジェクト28であってもよい。ただし、別の例では、標示622は使用されない。
図12Dは、図12Cの仮想空間600の時間が経過した状態を示す。ユーザ630は、音響オブジェクト6202から離れるように動いている。
方法は、レンダリングされた仮想空間600内の音響オブジェクトを、音響オブジェクトの第1群(音響オブジェクト6201、6202)、または音響オブジェクトの第2群(その他の音響オブジェクト620)に分類する。この分類は、仮想空間内での、ユーザの記録された動作(図12Aおよび図12Cにおいて過去に実行されていた起動動作)に依存する。
第2群に分類された音響オブジェクト620は、少なくとも第2の規則と、仮想空間600内でのユーザ630の現在位置に応じてレンダリングされる。これら音響オブジェクトは、録音された音響空間を正確に再生するように、記録されたとおりにレンダリングされてもよい。
第1群に分類された音響オブジェクト6201、6202は、仮想空間600内で第1の規則に応じてレンダリングされる。
様々な、ただし必ずしもすべてではない実施例によれば、ユーザは、第1群に属する異なる音響オブジェクト6201、6202に対して少なくとも部分的に異なる第1の規則をプログラムできる。別の例では、ユーザによって部分的にプログラムされたものであってもそうでなくてもよい同一の第1の規則が、第1群に属するすべての音響オブジェクト6201、6202に対して用いられる。
第1の規則は、図12Bを参照して先に述べたように、第1群に属する音響オブジェクト6201、6202に対するユーザの認知を向上するために利用できる。これは、例えば、第1群に属する音響オブジェクト6201、6202を同様の位置/距離である同様の第2群に属する音響オブジェクトに対して、より聴きやすくしうる。また、例えば、第1群に属する音響オブジェクト6201、6202を第2群に属する同じ音響オブジェクトに対して、より聴きやすくしうる。
第2の規則は、例えば、仮想空間600内においてユーザ630が第1群に属する音響オブジェクト6201、6202から離れても、第1群に属する音響オブジェクト6201、6202に対する認知維持を実現するものであってもよい。第1群に属する音響オブジェクト6201、6202の「聴取性」が、物理法則によりなるべきレベルよりも高くなり、なるべきレベルに対して人工的に維持されるのである。これにより、ユーザ630は仮想空間600を動き回っても、第1群に属する音響オブジェクト6201、6202を聴くことができる。
様々な、ただし必ずしもすべてではない実施例によれば、図12Bを参照して先に述べたように、第1群に属する音響オブジェクト6201、6202は、仮想空間内の少なくとも第1の規則と、ユーザの現在位置とに応じてレンダリングされる。
図12Eは、図12Dの仮想空間600の時間が経過した状態を示す。ユーザ630は、音響オブジェクト6202からさらに離れ、異なる音響オブジェクト6203に近付くように動いている。
ユーザは、第2群に属する異なる音響オブジェクト6203の隣にいるため、ユーザ630には音響オブジェクト6203が明確に聴こえる。ユーザ630は、第2群に属するその他の音響オブジェクト620および第1群に属する音響オブジェクト6202から離れている。ユーザは、第1群に属する音響オブジェクト6201から遠く離れている。ただし、第1群に属する音響オブジェクト6201、6202は第1の規則に応じてレンダリングされ、第2群に属するその他の音響オブジェクト620は第2の規則に応じてレンダリングされる。これにより、第1群に属する音響オブジェクト6201、6202をユーザが聴く能力が向上する。したがって、ユーザは、近くの音響オブジェクト6203と、離れている第1群に属する音響オブジェクト6202と、遠く離れている第1群に属する音響オブジェクト6201とを同時に聴くことができる。
方法500により、仮想空間600内のユーザ630は、超人間的、または聴力補助が与えられるため、実際には聴こえなくなる、または聴こえにくくなるはずの状況でも、第1群に属する音響オブジェクト6201、6202を聴くことができるようになる。
さらに方法500により、ユーザ630は、第1群に属する音響オブジェクト6201と6202を区別可能となる。図12Eの例では、第1群に属する音響オブジェクト6201と6202は、空間的に分離されていない(ユーザから見て並んでいる)ため、仮想空間600における実際の方向(方角)に応じてレンダリングされると、ユーザにとって第1群に属する音響オブジェクト6201と6202が区別するのが困難でありうる。
したがって、第1の規則では、第1群に属する音響オブジェクト6201と6202の1つまたは複数を、修正された位置特性、および/または周波数特性(空間および/または周波数チャンネルの多様化)によりレンダリングされるようにしてもよい。第1の規則は例えば、第1群に属する複数の音響オブジェクト6201、6202による、位置チャンネル(方向/方角)の冗長化(二重配置)を防ぐものでありうる。さらに/あるいは、第1の規則は例えば、第1群に属する複数の音響オブジェクト6201、6202による、周波数チャンネル(臨界帯域)の冗長化(二重配置)を防ぐものでありうる。
図12Eにおいて、ユーザ630は、仮想空間600内で、音響オブジェクト6203に対して「起動」動作を実行しない。図12Eでは、第1群に属する音響オブジェクトとしての、音響オブジェクト6203の標示622が存在しない。
図12Fは、図12Eの仮想空間600の時間が経過した状態を示す。ユーザ630は、音響オブジェクト6203からさらに離れるように動いている。
ユーザ630は、第2群に属する音響オブジェクト6203からより離れているため、ユーザはこの音響オブジェクトを明瞭に聴くことはできない。ユーザは、第2群に属するその他の音響オブジェクト620とも、第1群に属する音響オブジェクト6202とも離れている。ユーザは、第1群に属する音響オブジェクト6201から遠く離れている。ただし、第1群に属する音響オブジェクト6201、6202は第1の規則に応じてレンダリングされ、第2群に属するその他の音響オブジェクト620は第2の規則に応じてレンダリングされる。これにより、第1群に属する音響オブジェクト6201、6202をユーザが聴く能力が向上する。したがって、ユーザは、離れている第1群に属する音響オブジェクト6202と、遠く離れている第1群に属する音響オブジェクト6201とを同時に聴くことができる。
図13は、ユーザ630が仮想空間600内で実行する「起動」動作の例を示す。ユーザは、レンダリングされた音響オブジェクト620を、空間的にレンダリングされた音響として聴きながら、一人称視点媒介、ユーザインタラクティブ媒介現実を使用して、仮想空間600内を探索している。媒介現実は、仮想現実、または拡張現実であってもよい。ユーザは、対応する音響空間610の対応する音響シーンを聴きながら、同時に仮想視覚空間20の仮想視覚シーン22を見ることができる。
ユーザによって、その視点から見た仮想空間600(仮想視覚空間20)の仮想視覚シーン22が図示されている。
仮想視覚シーン22は、複数の仮想オブジェクト21を含む。この例では、仮想オブジェクト21はテーブルに着いて会話する二人の人間を表す。
この会話は、対応する仮想視覚空間20のテーブルの位置に対応する、音響空間610における特定の位置での音響オブジェクト620として、音響空間610内に存在する。
必ずしもすべての例ではないが、この例では、会話音響オブジェクト620は、コンピュータが生成した仮想オブジェクト28を使用して、仮想視覚空間20内で視覚的に描写される。
ユーザは、会話音響オブジェクト620の視覚的描写650と相互作用することで、会話音響オブジェクト620を起動してもよい。
会話音響オブジェクト620は起動されると、例えば図12Bおよび12Dを参照して説明したように示されてもよい。
起動は、例えば、最小閾値期間の間、描写650を見るか、描写650の近くにいることで暗示されうる(自動)。頷くなどのジェスチャが、暗示された起動の確認に必要となり、頭を振るなどのジェスチャが、暗示された起動のキャンセルに必要となりうる。
起動は、例えば、描写650に対して直接相互作用することで明示されてもよい(手動)。例えば、仮想空間600内で、ユーザ630が描写650に対してジェスチャを実行する、または仮想空間600内で、ユーザ630が描写650を触れることで明示されてもよい。
図14は、図示の例において、第1群に属する音響オブジェクト620のレンダリングを制御するために、どのように第1の規則が使用されるかの例を示す。
この例では、記録された音響オブジェクトの1つまたは複数の特性が、音響オブジェクトのレンダリングの際に適用される。この適用は、第1の規則に応じて音響オブジェクトのレンダリングが開始してから、蓄積された基準値mに依存する。基準mにより、音響オブジェクトが第1群に属する音響オブジェクトに分類されてから蓄積された値が測定される。
音響オブジェクトの1つまたは複数の特性が、図14のグラフのy軸に沿って描かれ、基準mがx軸として描かれる。
基準mは、例えば、経過した時間またはユーザが移動した距離であってもよい。
図示の具体例では、時間に対する音響オブジェクトの強さ(単位面積当たりのパワー)が描かれている。
この例では、最初に起動された(または起動し直された)第1群に属する音響オブジェクトの強さは、経時変化しない固定された一定値を有する。閾値期間後、ユーザ630により音響オブジェクト620が再起動されない限り、またはユーザ630が起動をキャンセルしない限り、第1群に属する音響オブジェクトの強さは、時間と共に直線的に(例えば、ゼロまで、または物理的に現実的な値にまで)減少する。
図15は、この例において、第1群に属する複数の音響オブジェクト620のレンダリングを制御するために、どのように第1の規則が使用されるかの例を示す。
この例では、記録された音響オブジェクトの1つまたは複数の特性が、特定の音響オブジェクトのレンダリングの際に適用される。この特定の音響オブジェクトへの特性の適用は、第1の規則に応じて当該特定の音響オブジェクトのレンダリングが開始してから、蓄積された基準値mに依存する。基準mにより、当該特定の音響オブジェクトが第1群に属する音響オブジェクトに分類されてから蓄積された値が測定される。
基準mは、例えば、経過した時間または仮想空間600内をユーザ630が移動した距離であってもよい。具体的な例では、第1群に属する音響オブジェクトそれぞれについて、当該音響オブジェクトの時間に対する強さがプロットされる。
この例では、最初に起動された(または起動し直された)第1群に属する音響オブジェクトの強さは、経時変化しない固定された一定値を有する。閾値期間後、ユーザにより音響オブジェクトが再起動されない限り、またはユーザが起動をキャンセルしない限り、第1群に属する音響オブジェクトの強さは、時間と共に直線的に、例えば、ゼロまで、または物理的に現実的な値にまで、減少する。
この例では、第1群に属する2つの音響オブジェクトは、異なる時点で起動されている。
図で最も上の音響オブジェクトは、長い間第1群に属する音源として分類されている。ユーザは、既にこの音響オブジェクトを再起動している。再度消え入っており、ユーザが再起動しない限り、第2群に属する音響オブジェクトに戻っている。
図で最も下の音響オブジェクトは、第1群に属する音響オブジェクトに分類されたばかりである。
図16Aは、音響オブジェクト620の状態図として、方法500の効果を示す。この例では、音響オブジェクト620は、2つの状態672のいずれかであって、状態遷移673により、これら状態間の遷移が生じる。1つの状態(第1状態6721)は、第1群に属する音響オブジェクトに対する状態である。第1の規則は、音響オブジェクトが第1状態6721にある際にそのレンダリングを制御するものである。別の状態(第2状態6722)は、第2群に属する音響オブジェクトに対する状態である。第2の規則は、音響オブジェクトが第2状態6722にある際にそのレンダリングを制御するものである。
音響オブジェクトを分類するステップにより、音響オブジェクトが第1群に属する音響オブジェクトに分類される場合、第2状態6722から第1状態6721への状態遷移6731が生じうる。
音響オブジェクトの再分類により、音響オブジェクトが第2群に属する音響オブジェクトに再分類される場合、第1状態6721から第2状態6722への状態遷移6732が生じうる。これは、第1状態6721が、例えば図14、15を参照して先に述べたようにユーザによる再起動がない限り、終了してしまう一時的状態であるために生じうるのである。第1状態6721の再起動は、第1状態6721を再開する状態遷移6733により示される。
トリガイベントが生じると、状態遷移673が起きる。トリガイベントは、1つまたは複数のトリガ条件が満たされると生じる。
第1状態6721は維持状態である。この状態は、トリガイベントが生じた後に続く。
第1状態6721から脱するには、更なるトリガイベントが必要となる。いくつかの例では、更なるトリガイベントは自動的に生じて、第1状態6721が、更新(再起動)6733されない限り、所定の条件が満たされた(例えば、基準値mが閾値を超えた)後に、例えば一時的なものとして終了6732してもよい。
トリガイベント/トリガ条件(複数可)が、第2状態6722から第1状態6731への状態遷移を生じる場合、それはユーザの記録された動作に基づく。
図16Bは、図16Aに類似した状態図として、方法500の効果を示す。
ただし、この例では、第2状態6722は複数のサブ状態で示される。
この例では、第2状態にある音響オブジェクト620は、複数のサブ状態2(i)、2(ii)、2(iii)のいずれかとなる。
複数のサブ状態のいずれかが、第2群に属する音響オブジェクトに対する状態であってもよい。第2の規則は、音響オブジェクトが第2状態6722のサブ状態にある際に、音響オブジェクトのレンダリングを制御するものである。
音響オブジェクトを分類するステップは、音響オブジェクトが第1群に属する音響オブジェクトに分類される場合、第2状態6722のサブ状態2(i)から第1状態6721への状態遷移6731を生じさせてもよい。
音響オブジェクトが第2群に属する音響オブジェクトに再分類される場合、音響オブジェクトの再分類により、第1状態6721から第2状態6722の1つへの状態遷移6732が生じうる。これは、第1状態6721が、例えば図14、15を参照して先に述べたようにユーザによる再起動がない限り、終了してしまう一時的状態であるために生じうるのである。第1状態の再起動は、第1状態6721を再開する状態遷移6733により示される。
トリガイベントが生じると、状態遷移673が起きる。トリガイベントは、1つまたは複数のトリガ条件が満たされると生じる。第1状態6721は維持状態である。この状態は、トリガイベントが生じた後に続く。
第1状態6721から脱するには、更なるトリガイベントが必要となる。いくつかの例では、更なるトリガイベントは自動的に生じて、第1状態6721が、更新(再起動)6733されない限り、所定の条件が満たされた(例えば、基準値mが閾値を超えた)後に、例えば一時的なものとして終了6732してもよい。
トリガイベント/トリガ条件(複数可)が、第2状態6722のサブ状態の1つから第1状態6731への状態遷移を生じる場合、それはユーザの記録された動作に基づく。
音響オブジェクト620が第2状態6722にあり、音響オブジェクト620と、ユーザ630との間に現在相互作用が生じていると、第2状態の第1サブ状態2(i)となる。例えば、現在の相互作用により起動が生じると、この状態から第1状態6721への遷移6731が可能となる。
音響オブジェクト620が第2状態6722にあり、音響オブジェクト620とユーザ630との間の相互作用の可能性がある(しかし、音響オブジェクトとユーザとの間に現在相互作用がない)場合、第2状態6722の第2サブ状態2(ii)となる。この例では、サブ状態2(ii)から第1状態6721への遷移は不可能であるが、他の状態図では可能でありうる。第1状態6721からこの状態への遷移6732は可能である。第2状態6722の第1サブ状態2(i)から/への遷移6734は可能である。
音響オブジェクト620が第2状態6722にあり、音響オブジェクト620とユーザ630との間の相互作用の可能性がない(音響オブジェクトとユーザとの間に現在相互作用がなく、音響オブジェクトとユーザとの間の相互作用の可能性もない)場合、第2状態6722の第3サブ状態2(iii)となる。この例では、サブ状態2(iii)から第1状態6721への遷移は不可能であるが、他の状態図では可能でありうる。第1状態6721からこのサブ状態2(iii)への遷移6732は可能である。第2状態6722の第2サブ状態2(ii)から/への遷移6735は可能である。
第2状態6722のサブ状態2(n)にある音響オブジェクト620(第2群に属する)には、第1状態6721にある音響オブジェクト620(第1群に属する)とは異なるレンダリングが施される。
第2状態6722の各サブ状態2(n)にある互いに異なる音響オブジェクト620は、第2状態6722の別のサブ状態2(m)にある音響オブジェクト620とは異なるレンダリングが施されるが、第2状態6722の同じサブ状態2(n)にある音響オブジェクト620とは同じレンダリングが施される。
例えば、第2状態6722の第1サブ状態2(i)にある音響オブジェクト620は、記録されたとおりにレンダリングされうる。
例えば、第2状態6722の第2サブ状態2(ii)にある音響オブジェクト620は、仮想空間600において、音響オブジェクト620の位置に、ユーザ630が直接対面している場合にのみ、音響オブジェクト620を強調するようにレンダリングされてもよい。
例えば、第2状態6722の第3サブ状態2(iii)にある音響オブジェクト620は、音響オブジェクト620の強調を解除するようにレンダリングされてもよい。
音響オブジェクト620の強調/強調解除は、音響オブジェクト620の特性を修正することで実現されてもよい。
例えば強調は、固有の空間および/または周波数チャンネルを使用する、さらに/あるいは強さを上げることで実現されうる。
例えば、強調解除は、共通空間および/またはスペクトルチャンネルを使用する、さらに/あるいは強さを下げて背景の会話をエミュレートするように残響を使用することで実現されうる。
1つの使用例として、ユーザは仮想現実または拡張現実でありうる媒介現実により、仮想空間600におけるカクテルパーティーに参加する。このユーザは、第1テーブル(A)での会話を、空間音響を介して聴く。例えば、閾値時間だけ、会話の音響オブジェクト620を示すコンピュータが生成した仮想オブジェクトを見るまたはその近くにいることで、ユーザは音響オブジェクト620を起動する。コンピュータが生成した仮想オブジェクト28は、起動されたことを示すような外観622に変化する。ユーザ630は、頷くことで起動を確認し、頭を振ることで起動をキャンセルしてもよい。ユーザ630は、ジェスチャにより、第1の規則の属性をプログラム可能であってもよい。起動後の音響オブジェクト620は、第1状態となり(第1群に分類)、ユーザ630は、テーブルAから離れても、更には別のテーブルであるテーブルBの会話を聴きながら、テーブルAからの会話として音響オブジェクト620を聴くことができる。
上述の例では、1つまたは複数のコンピュータプログラムについて言及されている。例えば、コンピュータプログラム48、416の一方またはコンピュータプログラム48、416の組合せであるコンピュータプログラムは、方法500を実行するように構成されてもよい。
さらに、例えば、装置30、400は、
少なくとも1つのプロセッサ40、412と、
コンピュータプログラムコードを含む、少なくとも1つのメモリ46、414と、を有し、
少なくとも1つのメモリ46、414と、コンピュータプログラムコードとは、少なくとも1つのプロセッサ40、412により、装置430、00に少なくとも、
レンダリングされた仮想空間内の音響オブジェクトを、仮想空間内でのユーザの記録された動作に応じて、音響オブジェクトの第1群または音響オブジェクトの第2群に分類することと、
第1群に属する1つまたは複数の音響オブジェクトを、少なくとも第1の規則に応じてレンダリングすることと、
第2群に属する1つまたは複数の音響オブジェクトを、少なくとも、第1の規則とは異なる第2の規則と、仮想空間内のユーザの現在位置とに応じてレンダリングすることと、を実行させる。
コンピュータプログラム48、416は、任意の適切な配信メカニズムを介して装置30、400に送られてもよい。配信メカニズムは、例えば、非一時的コンピュータ可読記憶媒体、コンピュータプログラム製品、メモリデバイス、コンパクトディスク読取り専用メモリ(Compact Disc Read−Only Memory:CD−ROM)またはデジタルバーサタイルディスク(Digital Versatile Disc:DVD)などの記録媒体、コンピュータプログラム48、416を有形に体現する製品であってもよい。配信メカニズムは、コンピュータプログラム48、416を確実に伝送するよう構成された信号であってもよい。装置30、400は、コンピュータプログラム48、416をコンピュータデータ信号として伝搬または送信してもよい。図10は、コンピュータプログラム416に対する配信メカニズム430を示す。
記載された各種方法500は、装置30、400、例えば電子装置30、400によって実行されてもよいことが上述より明らかであろう。
いくつかの例では電子装置400は、頭部装着音響出力装置などの音響出力装置300、または音響出力装置300用モジュールの一部であってもよい。これに加えて、またはこれに代えて、いくつかの例では電子装置400は、画像をユーザに表示するディスプレイ32を備える頭部装着装置33の一部であってもよい。
いくつかの例では、頭部装着装置33をユーザの頭部に配置することにより、図11に示す方法500をシステムに実施させる、またはシステムにより実施可能にしてもよい。すなわち、頭部装着装置33がユーザの頭部に配置されていない間は、方法500は作動していない。頭部装着装置がユーザの頭部に配置されると、方法500が作動し、第1の視点、ユーザインタラクティブ、媒介現実(仮想現実または拡張現実)を用いて音響シーンの制御が可能になる。
「コンピュータ可読記憶媒体」、「コンピュータプログラム製品」、「有形に体現されたコンピュータプログラム」など、または「コントローラ」、「コンピュータ」、「プロセッサ」などへの言及は、シングル/マルチプロセッサアーキテクチャおよび順次(ノイマン型)/並列アーキテクチャなどの種々のアーキテクチャを有するコンピュータのみでなく、フィールドプログラマブルゲートアレイ(Field-Programmable Gate Array:FPGA)、特定用途向け集積回路(Application Specific Circuit:ASIC)、信号処理デバイス、およびその他の処理回路構成などの特殊回路も含むと理解すべきである。コンピュータプログラム、命令、コードなどへの言及は、プログラマブルプロセッサのソフトウェア、または例えばプロセッサのための命令であるか、固定機能デバイス、ゲートアレイ、もしくはプログラマブル論理デバイスなどの構成設定であるかを問わない、ハードウェアデバイスのプログラマブルコンテンツなどのファームウェア、を含むと理解されるべきである。
本願において使用される「回路構成」という用語は、以下のすべてを指す:
(a)ハードウェアのみの回路実装(アナログおよび/またはデジタル回路構成のみでの実装など)、
(b)回路とソフトウェア(および/またはファームウェア)との組合せ、例えば(該当する場合)、(i)プロセッサ(複数可)の組合せ、または(ii)携帯電話またはサーバなどの装置に様々な機能を実行させるべく協働する、プロセッサ(複数可)/ソフトウェア(デジタル信号プロセッサ(複数可)を含む)、ソフトウェア、およびメモリ(複数可)の一部、
(c)回路、例えばソフトウェアまたはファームウェアが物理的に存在しなくても動作のためにソフトウェアまたはファームウェアを必要とするマイクロプロセッサ(複数可)またはマイクロプロセッサ(複数可)の一部。
「回路構成」のこの定義は、任意の請求項を含め本願におけるこの用語の使用すべてに当てはまる。さらなる例として、本願において使用される「回路構成」という用語は、プロセッサ(または複数のプロセッサ)のみ、またはプロセッサの一部およびその(もしくはそれらの)付随するソフトウェアおよび/またはファームウェアの実装も対象とするであろう。「回路構成」という用語は、該当する場合、例えば特定の請求項の要素、携帯電話のベースバンド集積回路もしくはアプリケーションプロセッサ集積回路、またはサーバ、セルラネットワークデバイス、もしくはその他ネットワークデバイス内の同様の集積回路も対象とするであろう。
図11から図16Bに示されたブロック、ステップ、プロセスは、方法のステップおよび/またはコンピュータプログラムのコードのセクションを表現しうる。示されたブロックの特定の順序は、それらのブロックに対して必要な順序または好ましい順序が存在することを必ずしも意味するものではなく、ブロックの順序および配置は変更されてもよい。さらに、いくつかのブロックを省略することも可能である。
構造的特徴が記載されている場合、その構造的特徴は、構造的特徴の機能のうちの1つまたは複数を実行する手段で置き換えられてもよく、その1つまたは複数の機能が明示的に記載されているか黙示的に記載されているかを問わない。
本文書内の「モジュール」という用語は、ユニットまたは装置であって、エンドメーカーやユーザによって追加される部品/コンポーネントを除いたものを表す。コントローラ42やコントローラ410は、モジュールであってもよい。装置は、モジュールであってもよい。ディスプレイ32は、モジュールであってもよい。
本文書内の「含む、備える(comprise)」という用語は、限定的な意味ではなく、非限定的な意味で使用される。したがって、「Yを含むX」に関してはすべて、「Xは1つのYを含んでもよい」と「複数のYを含んでもよい」の両方を意味する。限定的な意味を有する「含む、備える(comprise)」を意図する場合は、「〜を1つのみ含む」などと言及することにより、文脈内で明確にするであろう。
本発明の簡単な説明では、様々な例について言及した。例に関する特徴または機能の説明は、これらの特徴または機能が、その例に存在することを示す。本明細書中で「例(example)」、「例えば(for example)」、「〜てもよい、〜できる、〜場合がある(may)」として明確に言及されている場合でも、明確に言及されていない場合でも、このような特徴および機能が、少なくとも記載された例には存在することを意味する。すなわち、例として記載されている、記載されていないにかかわらず、これら特徴および機能が、他のいくつかの例またはすべての例に存在する可能性があり、また必ずしもそうではないことを意味する。このように、「例」、「例えば」、「〜てもよい、〜できる、〜の場合がある」は、ある例示群における特定の例であることを指す。上記特定の例の特性は、その特定の例のみの特性、上記例示群の特性、または上記例示群に属する一群の特性である場合がある。ここで、この上記例示群に属する一群は、上記例示群に属する全例示ではなく、一部の例示を含む。したがって、黙示に開示されているのは、一例を参照して記載されたが別の例を参照しては記載されなかった特徴は、可能であればその別の例において使用できるが、その別の例で必ずしも使用される必要はないということである。
本発明の実施形態を、様々な例を参照して上記の各段落に記載したが、請求される本発明の範囲から逸脱することなく、与えられた例に対して変更を加えうることを理解されたい。
先行する記載において説明された特徴は、明示的に記載された組合せ以外の組合せで用いられてもよい。
特定の特徴を参照して種々の機能を記述してきたが、こうした機能は、記述の有無を問わずその他の特徴によって実行される場合がある。
特定の実施形態を参照して種々の特徴を記述してきたが、こうした特徴は、記述の有無を問わずその他の実施形態にも含まれる場合がある。
前述のように本明細書において、とりわけ重要であると考えられる本発明の特徴に注目を集めるように努めてきた。しかし、前述の記載にて言及され、さらに/あるいは添付の図面に示された特許されうるすべての特徴およびそれらの組合せに対して、そうした特徴が特段強調されていたかどうかにかかわらず、本出願人はその保護を求めるものである点を理解されたい。