バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションを生成するための方法及びシステムについて、本明細書にて説明する。例えば、より詳細に後述するが、仮想化プロジェクション生成システムは、複数のキャプチャされる表面データ・フレーム・シーケンスを受信(例えば、リクエスト、獲得、アクセス等)することができる。複数のキャプチャされる表面データ・フレーム・シーケンス内の各表面データ・フレーム・シーケンスは、以下を含むことができる:色彩及び深度フレームであって、前記色彩及び深度フレームは、現実世界シーンを、キャプチャ・パラメータの各セットに従って描写しており、前記パラメータは、現実世界シーンの異なるビューに関連するキャプチャ・パラメータの複数のセットに含まれる。例えば、現実世界シーンの各ビューに関連するキャプチャ・パラメータの各セットは、以下を表すパラメータを含むことができる:キャプチャ・ロケーション、配向、視野、深度マッピング、深度範囲、クオリティ・レベル、フォーマット、ソース、ダイナミック・レンジ、及び/又は、各表面データ・フレーム・シーケンスが現実世界シーンのビューを表現するための他の特性。複数のキャプチャされる表面データ・フレーム・シーケンス内の各表面データ・フレーム・シーケンスは、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスによってキャプチャされてもよく、前記複数のキャプチャ・デバイスは、現実世界シーンの異なるビューをキャプチャするように現実世界シーンに関しての異なるロケーションに配置されてもよい。例えば、各異なるキャプチャ・デバイスは、キャプチャ・パラメータの複数のセット内のキャプチャ・パラメータの異なるセットの1つに関連してもよい(例えば、キャプチャ・パラメータの異なるセットの1つに従って、現実世界シーンをキャプチャするように構成されてもよい)。
キャプチャ・パラメータの異なるセットに関連する複数の表面データ・フレーム・シーケンスを受信することに加えて、仮想化プロジェクション生成システムは、キャプチャ・パラメータの複数のセット内に含まれるキャプチャ・パラメータのセットとは異なるキャプチャ・パラメータの追加のセットを特定することができる。キャプチャ・パラメータの追加のセットは、現実世界シーンのカスタマイズされるビューに関連してもよく、前記カスタマイズされるビューは、複数のキャプチャ・デバイスがキャプチャする現実世界シーンの異なるビューとは異なってもよい。複数のキャプチャされる表面データ・フレーム・シーケンス内の表面データ・フレーム・シーケンスと、キャプチャ・パラメータの追加のセットとに基づいて、仮想化プロジェクション生成システムは、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションに関する色彩及び深度フレームをレンダリングすることができる。
仮想化プロジェクション生成システムは、仮想化される表面データ・フレーム・シーケンスを提供することができ、前記表面データ・フレーム・シーケンスは、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションに関するレンダリングされる色彩及び深度フレームを含むことができ、上記提供は、1以上の他のシステムに対してなされてもよい(例えば、ユーザに関連する1以上のメディア・プレーヤ装置へ、バーチャル・リアリティ・メディア・コンテンツ・プロバイダ・パイプライン内の1以上のダウンストリーム・システムへ等)。例えば、仮想化プロジェクション生成システムは、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、仮想化される表面データ・フレーム・シーケンスをメディア・プレーヤ装置に提供することができる(例えば、バーチャル・リアリティ・メディア・コンテンツは、バーチャル・リアリティ・メディア・プロバイダ・パイプラインの手段により、バーチャル・リアリティ・メディア・コンテンツを体験するユーザに関連するメディア・プレーヤ装置へ、ストリーミングされるように構成されてもよい)。
バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションを生成するための本明細書に記載のシステム及び方法は、様々な長所及び利点を提供することができる。一例として、本明細書に記載のシステム及び方法は、現実世界シーンのカスタマイズされるビューに関する仮想化プロジェクションを表すデータ(例えば、仮想化される表面データ・フレーム・シーケンス等)を、任意のキャプチャ・パラメータ(例えば、任意のキャプチャ・ロケーション、配向、視野、深度マッピング、クオリティ・レベル、ソース、ダイナミック・レンジ等)に基づいて生成することを可能にする。かくして、仮想化される表面データ・フレーム・シーケンスを生成することができ、キャプチャされる表面データ・フレーム・シーケンスとは別に提供され、特定の実施に寄与することができる現実世界シーンのビューの堅固(robust)なセットをカバーすることができる。例えば、現実世界シーンに関する様々なロケーションに膨大な数の物理的なキャプチャ・デバイスを配置しようとする(例えば、様々な異なるビット深度を有する異なるオブジェクトの様々なレベルの詳細を提供する等)のではなく、本明細書に記載の方法及びシステムは、比較的少数の物理的なキャプチャ・デバイスがデータをキャプチャすることを可能にすることができ、前記データから、膨大な数の仮想化される表面データ・フレーム・シーケンスを生成して、現実世界シーンのカスタマイズされるビューを表現することができる。
更には、キャプチャ・パラメータ(例えば、様々な異なるヴァンテージ・ポイント、様々な異なるキャプチャ分解能等を表すパラメータ)の様々な異なるセットに関連するキャプチャ・データ(例えば、表面データ・フレーム・シーケンス)を生成することによって、本明細書に記載のシステム及び方法は、以下を促進することができる:物理的なキャプチャ・デバイスによってキャプチャされ、エンド・ユーザに提供されるバーチャル・リアリティ・メディア・コンテンツ内に含まれるデータを現実的且つ効率的に配信すること。例えば、現実世界シーン周辺に配置される8つのキャプチャ・デバイスによってキャプチャされる高分解能データを使用して、現実世界シーンを描写する8つの高分解能のキャプチャされる表面データ・フレーム・シーケンスを、8つのキャプチャ・デバイスの各ビューから生成するだけでなく、比較的膨大な数(例えば、300)の低分解能の仮想化される表面データ・フレーム・シーケンスも生成することができ、前記表面データ・フレーム・シーケンスは、キャプチャ・デバイスのビューとは異なる(例えば、不揃いの)様々なカスタマイズされるビューに関連してもよい。
仮想化される表面データ・フレーム・シーケンスを受信するバーチャル・リアリティ・メディア・コンテンツ提供システムは、利点として、以下の点について柔軟性を向上させることができる:どのデータを、システムが、特定のメディア・プレーヤ装置に特定の時間で提供するか(即ち、前記装置に提供されるバーチャル・リアリティ・メディア・コンテンツ内に含めるか)という点。かくして、バーチャル・リアリティ・メディア・コンテンツ・プロバイダは、ある向上した能力の利点を享受することができ、前記能力とは、メディア・プレーヤ装置に提供されるデータを最適化することであり(例えば、メディア・プレーヤ装置に比較的無関係のデータを大量にメディア・プレーヤ装置に送ること(例えば、メディア・プレーヤ装置がユーザに提供する特定のバーチャル・リアリティ体験の様々な態様に基づいて)によるのではない)、そして、表面の深度表現において最適化されるビット深度を使用したデータを提供し、深度精度及び/又は深度分解能を最適化することによってもよい。これについては、後で更に詳細に説明する。
一例として、8つの物理的なキャプチャ・デバイスによってキャプチャされる高分解能データの全てを、全てのメディア・プレーヤ装置に配信するのではなく(大量のデータが原因となって非現実的又は不可能となる可能性がある)、カスタマイズされるデータは、より選択的に且つより柔軟に配信されてもよい。具体的には、例えば、第1のメディア・プレーヤ装置用にカスタマイズされるデータ(例えば、仮想化される表面データ・フレーム・シーケンスの堅固なセットから選択される幾つか(a few)の仮想化される表面データ・フレーム・シーケンスを表すデータ)を、第1のメディア・プレーヤ装置に配信することができ、第1のメディア・プレーヤ装置のユーザに関連する現実世界シーンの一部を高レベルで詳しく提供することができ、一方、第2のメディア・プレーヤ装置用にカスタマイズされるデータ(例えば、幾つか(a few)の異なる仮想化される表面データ・フレーム・シーケンスを表すデータ)を、第2のメディア・プレーヤ装置に配信することができ、第2のメディア・プレーヤ装置のユーザに関連する現実世界シーンの別の一部を高レベルで詳しく提供することができる。かくして、バーチャル・リアリティ・メディア・コンテンツ提供システムは、第1の及び第2のメディア・プレーヤ装置の両方に対して、各ユーザに関連するデータ(例えば、ユーザが体験している現実世界シーンの各一部に対してカスタマイズされ且つローカライズされるデータ)を提供することができる。この間、いずれのメディア・プレーヤ装置も(又は、メディア・プレーヤ装置と通信するために使用されるいずれの配信チャンネルも)、各ユーザに関係がない現実世界シーンの一部に関する過剰量の冗長データ又は詳細データによる負荷を受けることがない。このようにして、データ配信について、向上させることができ、そして、更に効率的且つ効果的にすることができ、これは、クライアント・サイド・メディア・プレーヤ装置に配信される際に必要となるデータが少なくなることによってもよい(たとえ、分解能が高くなるほど、ユーザ・エクスペリエンスが、向上し、より現実的且つ没入性のあるコンテンツになるとしても)。こうした向上は、バーチャル・リアリティ・メディア・コンテンツのカスタマイズによって引き起こされ、前記カスタマイズでは、現実世界シーンの最も関連性の高い部分のみを高いクオリティで表現することを動的に含む。
様々な実施形態について、図面に言及しながら、以下、更に説明する。開示の方法及びシステムは、上述した1以上の利点を提供することができ、並びに/又は、様々な追加の及び/若しくは代替の利点を提供することができ、これらについては、本明細書で明らかになるであろう。
図1は、例示的な仮想化プロジェクション生成システム100(「システム100」)を示し、前記システムは、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションを生成するためのものである。示しているが、システム100は、限定されるものではないが、以下を含むことができる:通信設備102、表面データ・フレーム・シーケンス・マネージメント設備104、仮想化プロジェクション生成設備106、及びストレージ設備108(互いに選択可能に且つ通信可能に接続される)。以下の点を理解されたい:設備102〜108は、図1では別個の設備として示されているが、設備102〜108は、より少ない数の設備(例えば、単一の設備に)に結合されてもよく、又は、特定の実施に寄与することができるより数多くの設備に分割されてもよい。幾つかの例において、設備102〜108各々は、特定の実施に寄与することができるものとして、複数の装置間、及び/又は複数のロケーション間に分散してもよい。更には、以下の点を理解されたい:システム100の特定の実装において、図1に示す特定の設備(及びこうした設備に関連する関連機能)はシステム100から省略してもよい。設備102〜108各々については、本明細書に含まれる他の特定の図に言及しながら、以下、更に詳細に説明する。
通信設備102は、以下を含むことができる:1以上の物理的なコンピューティング・デバイス(例えば、ハードウェア及び/又はソフトウェア・コンポーネント(例えば、プロセッサ、メモリ、通信インターフェース、プロセッサが実行するためにメモリに記憶されるインストラクション等))。これらは、システム100が使用する及び/又は提供するデータの送信及び受信に関連する様々なオペレーションを実行することができる。例えば、通信設備102は、複数のキャプチャされる表面データ・フレーム・シーケンスを受信(又は受信を促進)することができ、各表面データ・フレーム・シーケンスは、色彩及び深度フレームを含むことができ、色彩及び深度フレームは、現実世界シーンを、キャプチャ・パラメータの各セットに従って描写することができ、前記パラメータは、現実世界シーンの異なるビューに関連するキャプチャ・パラメータの複数のセットに含まれてもよい。
通信設備102は、特定の実施に寄与することができる任意の方法で、複数のキャプチャされる表面データ・フレーム・シーケンスを受信することができる。例えば、特定の実施形態において、複数のキャプチャされる表面データ・フレーム・シーケンス内の各表面データ・フレーム・シーケンスは、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスによってキャプチャ(例えば、生成)されてもよく、前記キャプチャ・デバイスは、現実世界シーンの異なるビューをキャプチャするように現実世界シーンに関しての異なるロケーションに配置されてもよい。かくして、通信設備102は、データ(例えば、キャプチャされる表面データ・フレーム・シーケンス)を直接複数のキャプチャ・デバイスから受信することができ、前記受信は、以下によってもよい:例えば、キャプチャ・デバイスから送信されるデータを要求及び受信すること、又は、キャプチャ・デバイスからのデータにアクセス若しくは獲得すること。他の例において、1以上の他のシステム(例えば、現実世界シーン・キャプチャ・システム)は、キャプチャ・デバイスとシステム100との間を仲介することができ、その結果、通信設備102は、キャプチャされる表面データ・フレーム・シーケンスを、1以上の他のシステムの手段により受信することができる。
これに加えて、又はこれに代えて、通信設備102は、データ(例えば、仮想化される表面データ・フレーム・シーケンス、又は、システム100が受信及び/又は生成する他のデータ)を以下に提供することができる:バーチャル・リアリティ・メディア・コンテンツ・プロバイダ・パイプラインにおける他のサーバ・サイド・システム、及び/又は、エンド・ユーザによって使用されるクライアント・サイド・メディア・プレーヤ装置。本明細書で使用するが、「サーバ・サイド」は、サーバとクライアントとの間のトランザクション(例えば、コンテンツ提供システムがコンテンツ(例えば、バーチャル・リアリティ・メディア・コンテンツ)をエンドユーザが使用するクライアント・デバイスに提供するトランザクション)のサーバ・サイド(例えば、プロバイダ・サイド)を指してもよい。例えば、より詳細に後述するが、バーチャル・リアリティ・メディア・コンテンツ提供システムは、バーチャル・リアリティ・メディア・コンテンツを、ユーザに関連するメディア・プレーヤ装置に提供することができる。かくして、サーバ・サイドシステム及びコンポーネントは、あるシステム及びコンポーネントを指すことができ、前記システム及びコンポーネントは、コンテンツ提供システムに関連することができ(例えば、内包される、実装される、相互運用される等)、前記コンテンツ提供システムは、データ(例えば、バーチャル・リアリティ・メディア・コンテンツ)を、メディア・プレーヤ装置に提供することできる(例えば、ネットワークの手段により)。一方で、「クライアント・サイド」デバイスは、クライアント・デバイス(例えば、メディア・プレーヤ装置)に関連することができ、クライアント・デバイスは、ネットワークの他方に位置するユーザによって使用することができ、「クライアント・サイド」デバイスは、以下を含むことができる:クライアント・デバイスがデータをコンテンツ提供システムから受信することを促進するデバイス(例えば、メディア・プレーヤ装置、及び/又は、ネットワークのユーザ・サイド上でユーザが操作する他のコンピュータ・コンポーネント)。
通信設備102は、以下の動作を行うように構成されてもよい:特定の実施に寄与することができる任意の通信インターフェース、プロトコル、及び/又は技術を使用して、サーバ・サイド及び/又はクライアント・サイド・システムと通信すること。例えば、通信設備102は、以下の手段の1以上によって通信するように構成されてもよい:ネットワーク(例えば、有線又はワイヤレスなローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、プロバイダ・ネットワーク、インターネット等)、有線の通信インターフェース(例えば、Universal Serial Bus(「USB」))、ワイヤレス通信インターフェース、又は、任意の他の適切な通信インターフェース、プロトコル、及び/若しくは技術。
表面データ・フレーム・シーケンス・マネージメント設備104は、以下を含むことができる:1以上の物理的なコンピューティング・コンポーネント(例えば、通信設備102のハードウェア及び/又はソフトウェア・コンポーネントとは別個の、又は、通信設備102と共有される)。これらは、以下に対して、オーガナイズ、同期、管理、トラッキング、及び/又はマネージメントを行うことに関連する様々なオペレーションを実行することができる:システム100が受信又は生成した表面データ・フレーム・シーケンス、及び、表面データ・フレーム・シーケンスに関連するキャプチャ・パラメータの各セット。例えば、表面データ・フレーム・シーケンス・マネージメント設備104は、キャプチャされる表面データ・フレーム・シーケンス(例えば、キャプチャ・デバイスによってキャプチャされ、且つ、上述した通信設備102によって受信される表面データ・フレーム・シーケンス)に関連するキャプチャ・パラメータのセットを管理することができ、及び/又は、表面データ・フレーム・シーケンス・マネージメント設備104は、以下を特定すること(又は、特定することを促進すること)ができる:キャプチャされる表面データ・フレーム・シーケンスに関連するキャプチャ・パラメータのセットとは異なるキャプチャ・パラメータの1以上の追加のセット。例えば、表面データ・フレーム・シーケンス・マネージメント設備104は、キャプチャ・パラメータの1以上のセットを特定することができ、前記1以上のセットは、複数のキャプチャ・デバイスがキャプチャする現実世界シーンの異なるビューとは異なる現実世界シーンの1以上のカスタマイズされるビューとそれぞれ関連してもよい。表面データ・フレーム・シーケンス・マネージメント設備104は、更に以下を実行することができる:本明細書に記載の他のオペレーション、及び/又は、システム100の特定の実施に寄与することができる他のオペレーション。
仮想化プロジェクション生成設備106は、以下を含むことができる:1以上の物理的なコンピューティング・コンポーネント(例えば、設備102及び/若しくは104のハードウェア及び/若しくはソフトウェア・コンポーネントとは別個のハードウェア及び/若しくはソフトウェア・コンポーネント、又は、設備102及び/若しくは104と共有されるハードウェア及び/若しくはソフトウェア・コンポーネント)。これらは、以下の動作に関連する様々なオペレーションを実行することができる:現実世界シーンのビュー(例えば、カスタマイズされるビュー)の仮想化プロジェクション、及び/又はこれに関連するデータを準備、形成、レンダリング、又は生成すること。例えば、仮想化プロジェクション生成設備106は、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションに関する色彩及び深度フレームをレンダリングすることができる。より具体的には、例えば、仮想化プロジェクション生成設備106は、色彩及び深度フレームをレンダリングすることができ、前記レンダリングは、通信設備102が受信する表面データ・フレーム・シーケンスのうち少なくとも1つに基づいてもよく、そして、表面データ・フレーム・シーケンス・マネージメント設備104が特定するキャプチャ・パラメータの追加のセットに更に基づいてもよい。また、仮想化プロジェクション設備106は、仮想化される表面データ・フレーム・シーケンスを生成することができ、前記生成は、仮想化プロジェクションに関するレンダリングされる色彩及び深度フレームに基づいてもよい(例えば、これを含んでもよい)。いったん、仮想化される表面データ・フレーム・シーケンスが生成されると、仮想化プロジェクション設備106は、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、表面データ・フレーム・シーケンスを、ユーザに関連するメディア・プレーヤ装置に提供することができる。或いは、上述したように、仮想化される表面データ・フレーム・シーケンスは、特定の実施において、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、通信設備102が提供することができる。仮想化プロジェクション設備106は、更に以下を実行することができる:本明細書に記載の他のオペレーション、及び/又は、システム100の特定の実施に寄与することができる他のオペレーション。
ストレージ設備108は、任意の適切なデータを記憶及び/又は管理することができ、前記データは、特定の実施において、設備102〜106によって、受信、生成、マネージメント、トラッキング、管理、使用、及び/又は送信されてもよい。例えば、示すように、ストレージ設備108は、以下を含むことができる:表面データ・フレーム・シーケンス・データ110、及び/又はキャプチャ・パラメータ・データ112。これらは、本明細書に記載の方法のいずれかで、受信、生成、マネージメント、トラッキング、管理、使用、及び/又は送信(例えば、他のシステムへ提供)されてもよい。更には、ストレージ設備108は、以下を含むことができる:本明細書に記載のオペレーションを実行する目的でシステム100の特定の実施によって使用される他のタイプのデータ(例えば、インストラクション(例えば、プログラミング・インストラクション))、及び/又は、本明細書に記載のオペレーションを実行するために設備102〜106が使用する他のデータ。ストレージ設備108は、本明細書に記載の方法のいずれかで実装されてもよく、そして、ストレージ設備108は、データを記憶する際の任意の一時的又は非一時的なモードに関するハードウェア及び/又はソフトウェアを含むことができ、限定されるものではないが、以下を含むことができる:ランダム・アクセス・メモリ(「RAM」)、非一時的ストレージ(例えば、ディスク・ストレージ、フラッシュ・メモリ・ストレージ等)等。
幾つかの例において、システム100は、現実世界シーン内でイベントが発生したときに、1以上の本明細書に記載のオペレーションをリアルタイムで実行することができる。従って、システム100がバーチャル・リアリティ・メディア・コンテンツ・プロバイダ・パイプライン内で使用される(ここで、他のシステムもリアルタイムで動作する)実施において、バーチャル・リアリティ・メディア・コンテンツ(例えば、システム100がリアルタイムで生成する仮想化される表面データ・フレーム・シーケンスを含むバーチャル・リアリティ・メディア・コンテンツ)を、メディア・プレーヤ装置に提供することができ、その結果、メディア・プレーヤ装置の各ユーザ(ユーザは、現実世界シーンの近くに物理的に位置しなくてもよく、現実世界シーン(例えば、現実世界シーン内で発生するイベント)を体験することを望んでもよい)は、ユーザの各メディア・プレーヤ装置を使用して、現実世界シーン、及び、現実世界シーン内で発生するイベントを、仮想的に、ライブ形式で(例えば、イベントが発生した時にリアルタイムで)体験することができる。データ処理及びデータ配信について、現実世界シーン内でイベントが発生した時にユーザが現実世界シーンを正確に体験することが不可能となるような有限量の時間がかかる可能性がある。その一方で、本明細書で使用するが、オペレーションが即時に且つ過度の遅延なく実行される場合には、オペレーションは、「リアルタイム」で実行されるものとする。従って、以下の場合であっても、ユーザが、現実世界シーンをリアルタイムで体験するといってもよい:ユーザが、現実世界シーン内にて、ある遅延の後(例えば、発生事象が実際に起こってから数秒後又は数分後(a few seconds or minutes))で特定のイベントを体験した場合。
上述したように、特定の実施において、システム100は、比較的膨大な数の仮想化プロジェクションを表すデータを生成することができる。こうしたデータは、以下の点に関する柔軟性をもたらすことができる:どのようにして、バーチャル・リアリティ・メディア・コンテンツ(例えば、データを使用するバーチャル・リアリティ・メディア・コンテンツ)を生成し、そして、クライアント・サイド・メディア・プレーヤ装置に配信するか。例えば、現実世界シーンの膨大な数のローカライズされるバーチャル・プロジェクションを表すデータを生成することによって、1人のユーザの体験に関連する詳細を、前記ユーザに関連するメディア・プレーヤ装置に提供することができ、一方で、前記詳細との関連性が低い別のユーザのメディア・プレーヤ装置には、提供されない。
システム100の1つの特定の実装において、例えば、通信設備102は、(例えば、現実世界シーン内でイベントが発生した時にリアルタイムで)複数のキャプチャされる表面データ・フレーム・シーケンスを受信することができ、各表面データ・フレーム・シーケンスは、色彩及び深度フレームを含み、前記色彩及び深度フレームは、現実世界シーンを、キャプチャ・パラメータの各セットに従って描写し、前記キャプチャ・パラメータの各セットは、現実世界シーンの異なるビューに関連するキャプチャ・パラメータの第1の複数のセット内に含まれる。上述したように、複数のキャプチャされる表面データ・フレーム・シーケンス内の各表面データ・フレーム・シーケンスは、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスによってキャプチャされてもよく、前記複数のキャプチャ・デバイスは、現実世界シーンの異なるビューをキャプチャするように現実世界シーンに関しての異なるロケーションに配置されてもよい。キャプチャされる表面データ・フレーム・シーケンスを受信することに加えて、表面データ・フレーム・シーケンス・マネージメント設備104は、キャプチャ・パラメータの第2の複数のセットを特定することができ、前記第2の複数のセットは、キャプチャ・パラメータの第1の複数のセット内に含まれるキャプチャ・パラメータのセットとは異なってもよい。例えば、キャプチャ・パラメータの第2の複数のセット内のキャプチャ・パラメータの各セットは、現実世界シーンの各カスタマイズされるビューに関連してもよく、前記各カスタマイズされるビューは、複数のキャプチャ・デバイスがキャプチャする現実世界シーンの異なるビューとは異なってもよい。例えば、キャプチャ・パラメータの前記第2の複数のセットは、以下を含むことができる:キャプチャ・パラメータの比較的膨大な数のセット(例えば、キャプチャ・パラメータの第1の複数のセット内に含まれるものよりも更に大きな数のセット)。また、こうした特定するオペレーションは、現実世界シーン内でイベントが発生した時に、リアルタイムで実行されてもよい。
キャプチャ・パラメータの第2の複数のセットを特定することに応答して、仮想化プロジェクション生成設備106は、現実世界シーンの各カスタマイズされるビューの仮想化プロジェクションに関する色彩及び深度フレームをレンダリングすることができ、前記レンダリングは、複数のキャプチャされる表面データ・フレーム・シーケンスに基づいてもよく、且つ、キャプチャ・パラメータの第2の複数のセットに基づいてもよい。幾つかの例において、仮想化プロジェクション生成設備106は、レンダリングされる色彩及び深度フレームをパッケージ化して、各仮想化される表面データ・フレーム・シーケンス内に含まれるようにしてもよく、前記各仮想化される表面データ・フレーム・シーケンスは、1以上のトランスポート・ストリーム等の手段によって送信されてもよく、これについては、後で更に詳細に説明する。また、こうしたレンダリング及び/又はデータのパッケージ化は、リアルタイムで、前記現実世界シーン内で前記イベントが発生した時に、実行されてもよい。かくして、通信設備102は、(例えば、リアルタイムで、前記現実世界シーン内で前記イベントが発生した時に)複数の仮想化される表面データ・フレーム・シーケンスを提供することができ、前記表面データ・フレーム・シーケンスは、現実世界シーンの各カスタマイズされるビューの仮想化プロジェクションに関するレンダリングされる色彩及び深度フレームを含むことができる。例えば、複数の仮想化される表面データ・フレーム・シーケンスは、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、メディア・プレーヤ装置に提供されてもよい(例えば、バーチャル・リアリティ・メディア・コンテンツは、バーチャル・リアリティ・メディア・プロバイダ・パイプラインの手段によって、リアルタイムで、バーチャル・リアリティ・メディア・コンテンツを体験するユーザに関連するメディア・プレーヤ装置へ、ストリーミングされるように構成される)。
現実世界シーンを表すデータ(例えば、システム100が受信する表面データ・フレーム・シーケンス)は、特定の実施に寄与することができる任意の適切な構成で配置される任意の適切なシステム及び/又はデバイスによってキャプチャされてもよい。例えば、上述したように、システム100が受信する複数のキャプチャされる表面データ・フレーム・シーケンス内の各表面データ・フレーム・シーケンスは、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスによってキャプチャされてもよく、前記複数のキャプチャ・デバイスは、現実世界シーンの異なるビューをキャプチャするように、現実世界シーンに関しての異なるロケーションに配置されてもよい。
図示する目的で、図2は、例示的な構成200を示し、ここで、例示的な現実世界シーンを表すデータは、現実世界シーンの異なるビューからキャプチャされる。具体的には、構成200に示すように、現実世界オブジェクト204を含む現実世界シーン202は、現実世界シーン202の複数のビュー206(例えば、ビュー206−1〜206−8)によって囲まれてもよい。
現実世界シーン202は、以下を表現することができる:任意の現実世界の景色、現実世界のロケーション、現実世界のイベント(例えば、ライブ・イベント等)、又は、特定の実施に寄与することができる現実世界に存在する他の対象物(例えば、バーチャル世界又は仮想世界にのみ存在するものとは対照的に)。図2の現実世界シーン202を表現する円によって示されるように、現実世界シーン202は、具体的には、線引きされたエリアであってもよい(例えば、ステージ、アリーナ等)。逆に、他の例において、現実世界シーン202は、さほど、区画化又は線引きされなくてもよい。例えば、現実世界シーン202は、以下を含むことができる:任意のインドア又はアウトドアの現実世界のロケーション(例えば、街の通り、ミュージアム、眺めの良い景色等)。特定の例において、現実世界シーン202は、現実世界のイベントに関連してもよい(例えば、スポーツ・イベント、ミュージカル・イベント、演劇又はシアターのプレゼン、大規模な祝事(例えば、タイムズ・スクエアでの大晦日、マルディ・グラ等)、政治的なイベント、又は、任意の他の現実世界のイベント)。同一の又は他の例において、現実世界シーン202は、以下に関連してもよい:フィクション化されるシーン(例えば、ライブ・アクションのバーチャル・リアリティのテレビ・ショー又は映画のセット)に関するセッティング、及び/又は特定の実施に寄与することができる任意の他のインドア又はアウトドアの現実世界のロケーションでの任意の他のシーンに関するセッティング。
従って、現実世界オブジェクト204は、生物無生物に関わらず、任意の現実世界オブジェクトを表現することができ、前記現実世界オブジェクトは、現実世界シーン202に関連してもよく(例えば、現実世界シーン202内に又はその周辺に位置する)、ビュー206のうち少なくとも1つから検出可能(例えば、閲覧可能等)であってもよい。明確性の目的で、現実世界オブジェクト204は、比較的シンプルな幾何学的形状で描写されているが、以下の点を理解されたい:現実世界オブジェクト204は、様々なレベルの複雑さを有する様々なタイプのオブジェクトを表現することができる。例えば、幾何学的な形ではなく、現実世界オブジェクト204は、以下を表現することができる:任意のアニメーション若しくは非アニメーション・オブジェクト若しくは表面(例えば、人物又は別の生き物)、非透明な固体、液体、若しくは気体、不連続性に欠けるオブジェクト(例えば、壁、天井、床)、又は、本明細書に記載の若しくは特定の実施に寄与することができる任意の他のタイプのオブジェクト。
現実世界オブジェクト204は、様々な表面を含むことができ、前記表面は、それぞれ光を反射することができ(例えば、現実世界シーン202における環境光、深度キャプチャ・デバイス等によって発光される構造化光パターン内の赤外線)、前記光は、キャプチャ・デバイスによって検出されてもよく、前記キャプチャ・デバイスは、ビュー206から現実世界シーン202をキャプチャするように、現実世界シーン202に関しての異なるロケーションに配置されてもよい。現実世界オブジェクト204を比較的シンプルに描写しているものの、現実世界オブジェクト204の表面の深度及び/又は外観は、表面がどの現実世界シーン202のビュー206から検出されるかに基づいて、異なった外観を擁してもよく、これについては、後述する。換言すれば、現実世界オブジェクト204は、現実世界オブジェクト204が閲覧される視界(例えば、位置、ヴァンテージ(Vantage)・ポイント等)に基づいて、異なって見えてもよい。
上述したように、現実世界シーン202のビュー206は、現実世界シーン202(例えば、現実世界オブジェクト204を含む)を閲覧することができる異なる視界、ヴァンテージ・ポイント等を提供することができる。後述するが、様々な異なるビュー206(例えば、様々な視界から現実世界シーン202をキャプチャする目的で現実世界シーン202を囲むビュー206)からキャプチャされる現実世界シーン202の色彩及び深度データを用いて、システム100は、現実世界シーン202の任意のビューの仮想化プロジェクションを生成することができる。換言すれば、1以上のビュー206からキャプチャされる色彩及び深度データを使用して、システム100は、現実世界シーン202のカスタマイズされるビュー(例えば、ビュー206とは異なるロケーション、配向等からの現実世界シーン202の任意のビュー)の仮想化プロジェクションのための色彩及び深度データをレンダリングすることができる。
ビュー206は、それぞれ、現実世界シーン202に関して固定されてもよい。例えば、現実世界シーン202及びビュー206の両方は静的であってもよく、又は、現実世界シーン202及びビュー206は共に動くものであってもよい。幾つかの例において、例えば、構成200に示すように、ビュー206は、現実世界シーン202に関連する少なくとも2次元に沿って(例えば、平面に沿って(例えば、地面))現実世界シーン202を囲んでもよい。特定の例において、ビュー206は、現実世界シーン202を3次元(例えば、現実世界シーン202の上下のビュー206を含めることにもよって)に沿って囲んでもよい。
ビュー206を配置する現実世界シーン202を囲む異なる位置によって示されるが、各ビュー206は、現実世界シーン202に関連する特定のロケーションに関連してもよい。更には、ビュー206は、現実世界シーン202をどのようにキャプチャするかに関する他の態様に更に関連してもよい。例えば、各ビュー206から出ているドット線によって示されるように、ビュー206は以下に関連してもよい:特定のキャプチャ配向(例えば、ビュー206に対応するキャプチャ・デバイスが向かう特定の方向)、キャプチャの特定の視野(例えば、キャプチャ・デバイスが以下に基づいてキャプチャする現実世界シーン202のエリア:例えば、キャプチャ・デバイスのレンズがどれほど狭角又は広角なのか、キャプチャ・デバイスのズーム・レベル等)等。各ビュー206は、更に、図2に明示的に示さないキャプチャの態様に関連してもよい。例えば、各ビュー206は以下に関連してもよい:データがビュー206に関連するキャプチャ・デバイスによってキャプチャされるときの特定のクオリティ・レベル(例えば、イメージ解像度、フレーム・レート等)、キャプチャ・デバイスがキャプチャするデータがエンコードされる特定のフォーマット、及び/又は特定の実施に寄与することができるデータ・キャプチャの任意の他の態様。
幾つかの例において、構成200に示すように、各ビュー206に関連するヴァンテージ・ポイント(例えば、配向、視野等)は、現実世界シーン202に向かって内向きに角度付けされてもよく、それによって、ビュー206とは不揃いとなり得るカスタマイズされるビューから現実世界シーン202を後に再生成することができるのに十分な視界から現実世界シーン202をキャプチャするようにしてもよい。更には、同一の又は他の例において、ビュー206に関連する1以上のヴァンテージ・ポイントは、外向きに角度付けされてもよく(即ち、現実世界シーン202から遠ざかるように)、現実世界シーン202を囲むオブジェクト等を表すデータをキャプチャしてもよい。例えば、球状の360度キャプチャ・デバイス(外側に向かうヴァンテージ・ポイント)は、現実世界シーン202内の位置(明示しない)に配置してもよく、現実世界シーン202内に含まれるオブジェクトを追加の視界からキャプチャすることができ、及び/又は、現実世界シーン202外部のデバイスをキャプチャすることができる。これに加えて、又はこれに代えて、特定の例において、複数の外向きのビューは、現実世界シーンに対して、パノラマの、広角の、又は360度のビューのキャプチャを可能にすることができる。
各ビュー206の視界から現実世界シーン202をキャプチャする目的で、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスは、ビュー206の各異なるロケーションに配置することができる。図示する目的で、図3Aは、例示的なキャプチャ・デバイス302を示し、前記キャプチャ・デバイス302は、現実世界シーン202を表す表面データ・フレーム・シーケンス内に含める目的で、色彩及び深度フレームをキャプチャする。
図3Aに示すように、キャプチャ・デバイス302は、ビュー206−1に関連してもよく、従って、現実世界シーン202及び現実世界オブジェクト204に関して、ビュー206−1に対応するロケーションに配置されてもよい。図3Aが示すこととして、キャプチャ・デバイス302は、以下を含むことができる:2次元(「2D」)色彩キャプチャ・デバイス304であって、現実世界シーン202(例えば、現実世界オブジェクト204、及び/又は、現実世界シーン内に含まれる他のオブジェクトを含む)を表す色彩データ(例えば、フル・カラー又はグレースケール・イメージを表す2Dビデオ・データ)をキャプチャするように構成されるデバイス、及び、深度キャプチャ・デバイス306であって、現実世界シーン202を表す深度データをキャプチャするように構成されるデバイス。
2D色彩キャプチャ・デバイス304は、任意の適切な2D色彩キャプチャ・デバイス(例えば、カメラ、ビデオ・カメラ等)によって実装することができ、そして、特定の実施に寄与することができる任意の態様で、2D色彩データをキャプチャすることができる。幾つかの例において、2D色彩キャプチャ・デバイス304は、深度キャプチャ・デバイス306とは別個のデバイスであってもよい。総称すると、こうした別個のデバイス(例えば、並びに、機能的にデバイスを融合するために使用される任意の通信インターフェース及び/又は他のハードウェア若しくはソフトウェアのメカニズム)は、キャプチャ・デバイス(例えば、キャプチャ・デバイス302)と称することができる。他の例において、図3Aに示すように、2D色彩キャプチャ・デバイス304及び深度キャプチャ・デバイス306は、単一のデバイス(即ち、キャプチャ・デバイス302)に統合されてもよく、前記デバイスは、色彩及び深度データの両方をキャプチャすることができ、これについては、後述する。
別個のデバイスとして実装されるか、又は、2D色彩キャプチャ・デバイス304に統合されるかに関わらず、深度データ・キャプチャ・デバイス306は、現実世界シーン202を表す深度データを、特定の実施に寄与することができる任意の態様でキャプチャすることができる。例えば、深度データ・キャプチャ・デバイス306は、1以上の深度マップ・キャプチャ技術を採用することができる(例えば、構造化光深度マップ・キャプチャ技術、立体視深度マップ・キャプチャ技術、タイム・オブ・フライト深度キャプチャ技術、別の適切な深度マップ・キャプチャ技術、又は、特定の実施に寄与することができる深度マップ・キャプチャ技術の任意の組み合わせ)。
深度データをキャプチャするのに使用される深度マップ・キャプチャ技術のタイプ及び数に関わらず、キャプチャ・デバイス302は、現実世界オブジェクト204及び/又は現実世界シーン202内に含まれる他のオブジェクトの表面を表す色彩データ(例えば、色彩フレーム)及び深度データ(例えば、深度フレーム)の両方を、ビュー206−1からキャプチャすることができる。本明細書で使用するが、キャプチャ・デバイス302によってほぼ同じ時間にキャプチャされる色彩フレーム及び深度フレームは、総称的に、「表面データ・フレーム」又は「色彩及び深度フレーム」と称してもよく、この理由として、これらのフレームに含まれるデータは、現実世界シーン内に含まれる現実世界オブジェクトの表面(即ち、表面の見える外観、並びに、表面の深度の幾何学の両方)を記述するデータを表現しているからである。
従って、本明細書で使用するが、表面データ・フレーム又は色彩及び深度フレームは、データセットを意味してもよく、前記データセットは、現実世界オブジェクトの表面に関連する様々なタイプのデータを表してもよく、前記現実世界オブジェクトの表面は、現実世界シーンの特定のビューから特定の時間のポイントにおいて現実世界シーン内で見ることができるものであってもよい。例えば、表面データ・フレームは、以下を含むことができる:現実世界シーンに関して特定のビューから見ることができるオブジェクトを表す色彩データ(即ち、イメージ・データ)並びに深度データ。かくして、複数の関連表面データ・フレームは、ともにシーケンス化されてもよく、特定のビューからみた現実世界シーンのビデオのような表現(色彩データのみならず深度データも表現)を生成してもよい。特定の例において、表面データ・フレームは、更に以下に関連してもよい:他のタイプのデータ(例えば、オーディオ・データ、メタデータ(例えば、表面データ・フレームがキャプチャされるビューを記述するキャプチャ・パラメータのセット、表面データ・フレームにおいて表現される特定の現実世界オブジェクトに関する情報等を含むメタデータ))、及び/又は特定の実施に寄与することができる他のタイプのデータ。後で説明及び図示するが、表面データ・フレームのこうしたシーケンスは、本明細書において「表面データ・フレーム・シーケンス」と称してもよい。
本明細書で使用するが、「色彩データ」は、広義には任意のイメージ・データ、ビデオ・データ等を含むことができ、カラーでの表現又はグレースケール(即ち「白黒」)での表現に関わらず、これらのデータは、特定のビューの視界から特定の時間ポイント又は特定の期間にわたって対象物(例えば、現実世界シーン内に含まれる現実世界オブジェクト)の外観を表現したものであってもよい。色彩データは、以下に限定されない:任意の特定の形式、ファイル・タイプ、フレーム・レート、解像度、品質レベル、又は、様々な定義、並びに/若しくは当分野でイメージ・データ及び/若しくはビデオ・データを定義する規格に関連する他の特性。同様に、本明細書で使用するが、「深度データ」は、以下を含むことができる:空間内の対象物の位置及び/又は幾何学を表す任意のデータ。例えば、現実世界オブジェクトを表す深度データは、以下を含むことができる:現実世界オブジェクトの表面の異なるポイントの座標系(例えば、特定のキャプチャ・デバイスに関連する座標系、現実世界シーン等に関連するグローバル座標系)に関する座標。
キャプチャ・デバイス302と同様、前記デバイスは、色彩及び深度フレームをビュー206−1からキャプチャするが、以下の点を理解されたい:他のキャプチャ・デバイスは、他のビュー206(例えば、図2中のビュー206−2〜206−8)に関連してもよく、同様に、色彩及び深度フレームを、他のビュー206に関連する各ヴァンテージ・ポイントからキャプチャすることができる。幾つかの例において、表面データ・フレームは、同一の特定の時間ポイントで、異なるビュー206に関連する異なるキャプチャ・デバイスでキャプチャされてもよく、これによって、互いに同期をとることができる。本明細書で使用するが、表面データ・フレームは、以下の場合には、「同一の特定の時間ポイントで」キャプチャされると言ってもよい:表面データ・フレームが、ある時間の瞬間に(即ち、ある時間範囲にわたって対象物を表すのとは対照的に)対象物(例えば、現実世界シーン内の現実世界オブジェクト)を効果的に表現できるのに十分なほど近い時間内でキャプチャされる場合(たとえ、表面データ・フレームが正確に同一の瞬間にキャプチャされなかったとしても)。例えば、特定の対象物がどれだけ動的であるか(例えば、1以上の現実世界オブジェクトが現実世界シーン内をどれだけ早く動くか等)に依存するが、表面データ・フレームは、以下の場合に、同一の特定の時間ポイントでキャプチャされると考えてもよい:例えば、互いに数十又は数百ミリ秒(several tens or hundreds of milliseconds)内でキャプチャされる場合、又は、特定の実施に寄与することができる別の適切なタイムフレーム内(例えば、マイクロ秒内、ミリ秒内、秒内等)でキャプチャされる場合。かくして、各表面データ・フレームは、特定の時間ポイントで、各キャプチャ・デバイスが関連するビュー206の各ヴァンテージ・ポイントからの現実世界シーン内に含まれる現実世界オブジェクトの表面の色彩及び深度データを、表面の外観として表すことができる。
図3B〜3Cは、キャプチャ・デバイス302によってキャプチャされ、且つ、色彩及び深度フレーム内(即ち、表面データ・フレーム内)に含まれるデータの例示的なグラフィカルな描写を示す。具体的には、示すように、表面データ・フレームに組み込まれる色彩フレームは、色彩データ308(図3Bに示す)を含むことができ、一方で、表面データ・フレームに組み込まれる深度フレームは、深度データ310を含むことができる(図3Cに示す)。
図3Bにおいて、色彩データ308は、現実世界シーン202(例えば、現実世界オブジェクト204を含む)を描写しており、前記現実世界シーン202は、ビュー206−1から、キャプチャ・デバイス302内の2D色彩キャプチャ・デバイス304によって閲覧される。色彩データ308は、ビデオ・フレームのシーケンスにおいて、単一のビデオ・フレームを表すことができるため、色彩データ308によって表現される現実世界オブジェクト204の描写は、以下を表すことができる:現実世界オブジェクト204(例えば、並びに現実世界シーン202に関連する他のオブジェクト)が、ビュー206−1のヴァンテージ・ポイントから、特定の時間ポイントでどのような外観を擁するか。図3Bにおいてイメージとして示されるが、以下の点を理解されたい:色彩データ308は、任意の適切な形態で、キャプチャ、エンコード、フォーマット、送信、及び表現されてもよい。例えば、色彩データ308は、標準ビデオ・エンコーディング・プロトコル、標準イメージ・フォーマット等に従ってフォーマットされるデジタル・データであってもよい。幾つかの例において、色彩データ308は、現実世界シーン202におけるオブジェクトの色彩イメージ(例えば、カラー写真に類する物)を表現したものであってもよい。或いは、他の例において、色彩データ308は、オブジェクトを表すグレースケール・イメージ(例えば、白黒写真に類するもの)であってもよい。
図3Cにおいて、深度データ310も(色彩データ308と同様に)、ビュー206−1の視界からの現実世界シーン202(現実世界オブジェクト204を含む)を描写する。しかし、現実世界シーン202内のオブジェクトの目に見える外観を表現する(例えば、光が現実世界オブジェクト204の表面とどのように相互作用するかについて、カラー又はグレースケールで表現する)のではなく、深度データ310は以下を表現したものであってもよい:例えば、キャプチャ・デバイス302内の深度キャプチャ・デバイス306に対するオブジェクト(例えば、現実世界オブジェクト204並びに現実世界シーン202内の他のオブジェクト)の表面上の各ポイントの深度(即ち、距離又は位置)。色彩データ308と同様、深度データ310は、任意の適切な形態で、キャプチャ、エンコード、フォーマット、送信、及び表現されてもよい。例えば、示すように、深度データ310は、グレースケール・イメージ・データによって表現されてもよい(例えば、深度キャプチャ・デバイス306によってキャプチャされる各ピクセルに関して6ビット又は8ビット)。しかし、光が現実世界オブジェクト204の表面からどのように反射するかについて表現(即ち、色彩データ308で表現)するのではなく、深度データ310のグレースケール・イメージは以下を表現したものであってもよい:イメージ中の各ピクセルに関して、そのピクセルによって表現されるポイントが、深度キャプチャ・デバイス306からどれほど離れているか。例えば、深度キャプチャ・デバイス306に、より近いポイントは、より暗いグレーの影を表現する値で表されてもよい(例えば、6ビット実装のケースで0b111111がブラックを表現している場合において、0b111111に近いバイナリな値)。逆に、深度キャプチャ・デバイス306から、より離れているポイントは、より明るいグレーの影を表現する値で表されてもよい(例えば、6ビット実装のケースで0b000000がホワイトを表現している場合において、0b000000に近いバイナリな値)。
特定の例において、システム100(例えば、通信設備102)は、キャプチャ・デバイス302及び他のビュー206に関連する他のキャプチャ・デバイスと、1以上のネットワーク及び/又は任意の他の適切な通信インターフェース、プロトコル、及び技術により、通信可能に接続されてもよい。従って、こうした例において、通信設備102は、キャプチャされる表面データ・フレーム・シーケンスを、1以上のネットワーク並びに/又は他の通信インターフェース、プロトコル、及び技術の手段によりキャプチャ・デバイスから直接受信してもよい。他の例において、システム100とは別個の現実世界シーン・キャプチャ・システムは、各キャプチャ・デバイスと通信可能に接続されてもよく、そして、以下の動作を行うように構成されてもよい:表面データ・フレームのキャプチャを、各キャプチャ・デバイスによってマネージメントすること、及び、表面データ・フレーム・シーケンスをシステム100に提供すること(例えば、表面データ・フレーム・シーケンスに対して同期させた及び/又は処理した後)。とにかく、キャプチャ・デバイス、システム100、及び/又は、仲介現実世界シーン・キャプチャ・システム間の通信は、以下の手段により実施されてもよい:ネットワークの手段により(例えば、有線又はワイヤレスなローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、プロバイダ・ネットワーク、インターネット等)、有線の通信インターフェース(例えば、Universal Serial Bus(「USB」))の手段により、ワイヤレス通信インターフェースの手段により、又は、特定の実施に寄与することができる任意の他の通信インターフェース、プロトコル、及び/若しくはテクノロジーの手段により。
他の例において、複数のキャプチャ・デバイスは、システム100内に統合されてもよく、又はシステム100の一部として含まれてもよい(例えば、システム100の表面データ・フレーム・シーケンス・マネージメント設備104又は別の設備の一部として)。かくして、こうした例において、表面データ・フレーム・シーケンス・マネージメント設備104は、統合されるキャプチャ・デバイスを使用して、表面データ・フレーム・シーケンスをキャプチャすることにより、表面データ・フレーム・シーケンスを受信することができる。
図4A〜4Bが示すのは、例示的な表面データ・フレーム・シーケンス400−1であり、前記表面データ・フレーム・シーケンス400−1は、キャプチャ・デバイス302が生成する現実世界シーン202(例えば、ビュー206−1の視界から)を表す。具体的には、図4Aが示すのは、表面データ・フレーム・シーケンス400−1の詳細なグラフィカルなビューであり、前記ビューは、表面データ・フレーム・シーケンス400−1に含めることができるある特定のデータを描写する。一方で、図4Bが示すのは、表面データ・フレーム・シーケンス400−1の統合させたグラフィカルなビューであり、前記ビューは、表面データ・フレーム・シーケンス400−1のコンテンツに関する数多くの詳細を具体的に描写しているわけではない。
図4Aに示すように、表面データ・フレーム・シーケンス400−1は、色彩データ、深度データ、及びメタデータを含む様々なタイプのデータを含むことができる。具体的には、表面データ・フレーム・シーケンス400−1は、色彩フレーム・シーケンス402、深度フレーム・シーケンス404、及びキャプチャ・パラメータ406のセットを含むように示される。以下の点を理解されたい:表面データ・フレーム・シーケンス400−1は、更に、図4Aに明示しない他のタイプのデータ(例えば、キャプチャ・パラメータ406のセットのほかに、キャプチャされるオーディオ・データ、他のメタデータ等)を含むことができる。更には、以下の点を理解されたい:表面データ・フレーム・シーケンス400−1内に含まれるデータは、任意の適切な方法で、アレンジしたり、又はフォーマットしたりすることができる。例えば、示すように、表面データ・フレーム・シーケンス400−1内に含まれるデータは、1つの色彩フレーム・シーケンス、及び1つの深度フレーム・シーケンスとしてアレンジされてもよい。他の例において、単独のキャプチャ・デバイスは、複数の色彩フレーム・シーケンス、及び/又は、複数の深度フレーム・シーケンスを出力することができる(例えば、キャプチャされる現実世界シーンの視野の異なる部分をカバーするために)。更なる他の例において、表面データ・フレーム・シーケンス400−1のデータは、統合される表面データ・フレームのシーケンスとしてアレンジされてもよく、各フレームは、特定の色彩フレーム、特定の深度フレーム、及び特定のメタデータ(例えば、キャプチャ・パラメータ406のセットを表すデータ)を含むことができ、又は、特定の実施に寄与することができる他の方法でアレンジされてもよい。
色彩フレーム・シーケンス402の各色彩フレーム内に含まれるデータは、図3に関連して上述した色彩データ308と同様であってもよい。しかし、色彩フレーム・シーケンス402内の各色彩フレームは、少々異なる時間でキャプチャされてもよく、その結果、色彩フレーム・シーケンス402は、ビュー206−1からの現実世界シーン202のビデオのような表現を形成することができる。同様に、深度フレーム・シーケンス404の各深度フレーム内に含まれるデータは、以下の点を除いて、深度データ310と同様であってもよい:深度フレーム・シーケンス404内の各深度フレームは、少々異なる時間でキャプチャされてもよく(例えば、色彩フレーム・シーケンス402の色彩フレームがキャプチャされる時間と同期をとる時間)、その結果、深度フレーム・シーケンス404は、ビュー206−1からの現実世界シーン202の別のビデオのような表現を形成してもよい。
表面データ・フレーム・シーケンス400−1内に含まれるキャプチャ・パラメータ406のセットは、以下を含むことができる:表面データ・フレーム・シーケンス400−1をキャプチャするビュー(即ち、ビュー206−1のケースにおいて)を記述するメタデータ。例えば、キャプチャ・パラメータ406のセットは、以下を含むことができる:表面データ・フレーム・シーケンス400−1内に含まれる表面データ・フレームが、どこで及び/又はどのようにキャプチャされるかに関する様々な態様を示す様々なパラメータ。キャプチャ・パラメータ406のセット内に含まれるキャプチャ・パラメータは、以下を含むことができる:特定の実施に寄与することができる現実世界シーンの各ビューに関連する任意の適切なキャプチャ・パラメータ。
例えば、キャプチャ・パラメータ406のセットは、以下を表すキャプチャ・パラメータを含むことができる:現実世界シーン202のビュー206−1に対応する色彩及び深度フレームがキャプチャされる現実世界シーン202に関するロケーション。別の例として、キャプチャ・パラメータ406のセットは、以下を表すキャプチャ・パラメータを含むことができる:現実世界シーン202のビュー206−1に対応する色彩及び深度フレームがキャプチャされる配向(例えば、キャプチャ・デバイスが指す異なる次元における異なる角度に関連するキャプチャ配向)。同様に、別の例として、キャプチャ・パラメータ406のセットは、以下を表すキャプチャ・パラメータを含むことができる:現実世界シーン202のビュー206−1に対応する色彩及び深度フレームをキャプチャする視野。更には、更なる別の例として、キャプチャ・パラメータ406のセットは、以下を表すキャプチャ・パラメータを含むことができる:現実世界シーン202のビュー206−1に対応する色彩及び深度フレームをキャプチャするイメージ・クオリティ。更なる他の例において、キャプチャ・パラメータ406のセットは、以下を含むことができる:現実世界シーン202のビュー206−1に対応する色彩及び深度フレームをキャプチャすることができる他の態様を表す任意の他の適切なキャプチャ・パラメータ。例えば、キャプチャ・パラメータ406のセットは、以下を表すパラメータを含むことができる:ビュー206−1に対応する深度フレームをキャプチャする深度マッピング及び/若しくは深度範囲;、ビュー206−1に対応する色彩及び深度フレームをキャプチャする特定のエンコーディング、フォーマット、フレーム・レート、ダイナミック・レンジ等を表すパラメータ;、キャプチャのソース(例えば、ビュー206−1に対応する色彩及び深度フレームをキャプチャするキャプチャ・デバイスに関する識別情報);、又は、他の適切なパラメータ。
キャプチャ・パラメータ406のセットは、特定の実施に寄与することができる任意の態様で、表面データ・フレーム・シーケンス400−1内に含まれる他のデータによって表現されてもよく、前記データに統合されてもよい。例えば、幾つかの実施においては、キャプチャ・パラメータ406は、キャプチャ・パラメータを表すデータ(例えば、変数等)で明示的に表現されてもよいが、他の実施においては、キャプチャ・パラメータ406は、フォーマットによって暗黙的に表現されてもよく、ここで、配向、ロケーション、及び/又はプロジェクション情報(例えば、視野、及び、フレーム・シーケンスに関する深度マッピング、正投影図のフレーム・シーケンスに関して、左/右/上/下/近視/遠視等)が表現されてもよい。特定のキャプチャ・パラメータ406を表すデータは、例えば、特定のイメージ空間から世界空間の同種の座標への完全な変換を表現する単独の抽象的な行列(例えば、4×4行列)へ結合されてもよい。かくして、こうした例において、個々のコンポーネントは、明示的に特定されなくてもよいが、むしろ、より一般化した変換の範囲内に含まれてもよい。
更には、幾つかの例において、キャプチャ・パラメータ406のセットは、色彩フレーム・シーケンス402及び深度フレーム・シーケンス404内にそれぞれ含まれる各色彩フレーム及び/又は深度フレームに統合されてもよい(例えば、これらに関して繰り返されてもよい)。他の例において、キャプチャ・パラメータ406のセットは、各個々の表面データ・フレームに統合されてもよい(例えば、色彩及び深度フレームの組み合わせ)。こうした方法において、キャプチャ・パラメータ406のセットは、各々及びすべてのフレームに関するキャプチャ・パラメータを柔軟に記述することができる(たとえ、ビュー206が、表面データ・フレーム・シーケンス400−1によって表現される期間中に、動的に変化したとしても)。他の例において、キャプチャ・パラメータ406のセットは、表面データ・フレーム・シーケンス400−1によって表現される期間にわたって静的であってもよい。これらの例において、キャプチャ・パラメータ406のセットは、フレーム・シーケンス402及び404のフレームとは別に送信されてもよい。例えば、キャプチャ・パラメータ406のセットは、色彩及び深度フレームの送信とは別に送信されてもよい(例えば、色彩及び深度フレームの送信の前に、色彩及び深度フレームの送信開始時に、色彩及び深度フレームの送信後に、及び/又は、別の適切な時間に)。
上述したように、図4Bは、表面データ・フレーム・シーケンス400−1の統合させたグラフィカルなビューを示す。具体的には、図4Bの表面データ・フレーム・シーケンス400−1のビューは、特定のビュー(即ち、ビュー206−1)から閲覧したブロックの前面に、現実世界シーン202(即ち、現実世界オブジェクト204を含む)の描写に関するブロックとしての表面データ・フレーム・シーケンス400−1を示す。このタイプの表面データ・フレーム・シーケンス・ビューは、後述する図における追加の表面データ・フレーム・シーケンスを示すのに有用となるであろう。しかし、以下の点を理解されたい:図4B等に示される統合させたグラフィカルなビューを用いて表現される任意の表面データ・フレーム・シーケンスは、以下を含むことができる:上述したアレンジのいずれかにおける図4Aに関連して示される及び/又は記載されるすべての同一のタイプのデータ。
1以上の表面データ・フレーム・シーケンス400(例えば、図4に明示した表面データ・フレーム・シーケンス400−1、及び、図4に明示しない他の類似の表面データ・フレーム・シーケンス(例えば、ビュー206−2に対応する表面データ・フレーム・シーケンス400−2、ビュー206−3に対応する表面データ・フレーム・シーケンス400−3、以下同様))に基づいて、システム100は、現実世界シーン202のカスタマイズされるビューの仮想化プロジェクションに関して、色彩及び深度フレームをレンダリングすることができる。例えば、システム100は、キャプチャ・パラメータの追加のセット(例えば、表面データ・フレーム・シーケンス400に関連するキャプチャ・パラメータのセットとは異なるセット)を特定することができ、前記追加のセットは、現実世界シーン202のカスタマイズされるビュー(例えば、図2に示すビュー206とは異なるビュー)に関連してもよい。そして、システム100は、表面データ・フレーム・シーケンス400のうち少なくとも1つに基づいて、そして、キャプチャ・パラメータの追加のセットに基づいて、カスタマイズされるビューの仮想化プロジェクションに関して、色彩及び深度フレームをレンダリングすることができる。
本明細書で使用するが、現実世界シーンの「カスタマイズされるビュー」は、現実世界シーンを表すデータをキャプチャする物理的なキャプチャ・デバイスに関連するビューとは異なる現実世界シーンの任意のビューを意味してもよい。例えば、カスタマイズされるビューは、以下の点でカスタマイズされてもよい:特定の現実世界オブジェクトが位置する付近の現実世界シーン内のロケーション(例えば、現実世界オブジェクトについて、深度分解能又は深度精度を向上させるために);、キャプチャ・デバイスが位置していない現実世界シーン内のロケーション;、キャプチャ・デバイスに関連する任意のビューが提供することができるのとは異なる配向;、キャプチャ・デバイスに関連する任意のビューが提供することができるのとは異なる視野(例えば、異なるズーム・レベル、広角又は狭角レンズに関連する視野等);、キャプチャ・デバイスに関連する任意のビューが提供することができるのとは異なるレベルの詳細(例えば、イメージ解像度等)等。従って、本明細書で使用するが、現実世界シーンのカスタマイズされるビューの「仮想化プロジェクション」は、カスタマイズされるビューに関連するプロジェクション(例えば、視界プロジェクション(perspective projection)、正投影プロジェクション等)を表すデータを意味してもよい。例えば、特定の例において、仮想化プロジェクションは、こうしたキャプチャ・デバイスがカスタマイズされるビューに関連する場合(即ち、カスタマイズされるビューを定義するキャプチャ・パラメータのセットを用いてデータをキャプチャ・デバイスがキャプチャする場合)、物理的なキャプチャ・デバイスがキャプチャするデータを仮想的にシミュレートする視界プロジェクションを含むことができる。別の例として、仮想化プロジェクションは、非視界プロジェクション(例えば、正投影プロジェクション等)を含むことができるが、前記非視界プロジェクションは、バーチャル・キャプチャ・デバイスのシミュレーションによって生成されず、むしろ、深度データを生成するための深度剥離技術、又は、特定の実施に寄与することができる他の適切な技術によって生成されてもよい。
上述したように、カスタマイズされるビューの仮想化プロジェクションは、以下の点をもたらすことができる:現実世界シーンの態様に関する新たな視界、向上した深度分解能に関する更なる柔軟性、及び仮想化プロジェクション無しでは得られない様々な他の利点。しかし、以下の点を理解されたい:仮想化プロジェクションは、物理的なキャプチャ・デバイスによってキャプチャされるデータに基づいてもよく、そして、従って、仮想化プロジェクションは、物理的なキャプチャ・デバイスによってキャプチャされていない任意の追加のデータを提供しなくてもよい。例えば、仮想化プロジェクションは、物理的なキャプチャ・デバイスが位置しない現実世界シーンのカスタマイズされるビューに関連してもよく、一方で、仮想化プロジェクションは、物理的なキャプチャ・デバイスが位置するビューからまだ得られていない任意の新たな情報を提供しなくてもよい。
特定の例において、現実世界シーン202のカスタマイズされるビューは、現実世界シーン202を表すデータをキャプチャするために使用される特定のキャプチャ・デバイスを用いて揃えることができる。例えば、現実世界シーン202のカスタマイズされるビューに関連する(例えば、定義する)キャプチャ・パラメータの追加のセットは、以下を含むことができる:唯一のキャプチャ・デバイスによってキャプチャされるデータを要求する(例えば、キャプチャ・デバイスによってキャプチャされるデータのサブセットを要求する)1以上のキャプチャ・パラメータ。
例えば、キャプチャ・パラメータの追加のセットは、以下を表すキャプチャ・パラメータを含むことができる:現実世界シーン202のカスタマイズされるビューに関連するカスタマイズされる視野、ここで、カスタマイズされる視野は、キャプチャ・デバイスがキャプチャする表面データ・フレーム・シーケンスに関連するキャプチャされる視野よりも狭くてもよい。例えば、キャプチャ・デバイス・パラメータの追加のセットは、特定の物理的なキャプチャ・デバイスによってキャプチャされるデータの切り取った一部(即ち、ズーム・イン)を要求することができる。
唯一のキャプチャ・デバイスがキャプチャするデータを要求するキャプチャ・パラメータの別の例として、キャプチャ・パラメータの追加のセットは、以下を表すキャプチャ・パラメータを含むことができる:現実世界シーン202のカスタマイズされるビューに関連するカスタマイズされるイメージ・クオリティ、ここで、カスタマイズされるイメージ・クオリティは、キャプチャ・デバイスがキャプチャする表面データ・フレーム・シーケンスに関連するキャプチャされるイメージ・クオリティよりも低い。例えば、キャプチャ・パラメータの追加のセットは、特定の物理的なキャプチャ・デバイスによってキャプチャされるデータのより解像度の低いバージョンを要求することができる。
他の例において、現実世界シーン202のカスタマイズされるビューは、以下と不揃い(unaligned)であってもよい:現実世界シーン202に関して異なるロケーションに配置される複数のキャプチャ・デバイス(即ち、ビュー206に関連するキャプチャ・デバイス)によってキャプチャされる現実世界シーン202の異なるビュー。かくして、現実世界シーン202のカスタマイズされるビューに関する、仮想化プロジェクションのための色彩及び深度フレームのレンダリングは、以下を含むことができる:色彩及び深度フレームを、少なくとも2つの表面データ・フレーム・シーケンス400に基づいてレンダリングすること。仮想化プロジェクションが単独のキャプチャ・デバイスからのデータに基づく上述した例と同様、これらの例におけるキャプチャ・パラメータの追加のセットは、以下を含むことができる:キャプチャされる表面データ・フレーム・シーケンスに関してより狭い視野、より低いイメージ・クオリティ等を要求するキャプチャ・パラメータ。しかし、仮想化プロジェクションが複数のキャプチャ・デバイスからのデータに基づく例におけるキャプチャ・パラメータの追加のセットは、カスタマイズされるロケーション、カスタマイズされる配向等を更に要求することができ、これらは、データが物理的なキャプチャ・デバイスによってキャプチャされる際の任意の実際のロケーション、配向等と異なってもよい。
図示する目的で、図5は、構成200に基づく例示的な構成500(即ち、構成200に関連して示し、且つ上述した全ての同一の要素を含む)を示すが、ここで、現実世界シーン202を表すデータは、現実世界シーン202のカスタマイズされるビュー502のために追加で生成される。具体的には、構成500に示すように、カスタマイズされるビュー502は、現実世界オブジェクト204付近の現実世界シーン202内に、現実世界オブジェクト204に向かう配向及び視野でもって位置することができる。上述したように、特定のカスタマイズされるビューは、ビュー206(例えば、ビュー206の1つと同じロケーションに位置し、ビュー206の1つと同一の配向及び/又は視野を提供する等)の1つと揃ってもよいが、その一方で、構成500におけるビュー502は、ビュー206と不揃いの状態で示される。本明細書で使用するが、ビューが別のビューと「不揃い」と言える場合として、ビューが互いに以下の点で異なる場合が挙げられる:ビューに関連する各ロケーション、ビューに関連する各配向、及び/又はビューに関連する各視野。カスタマイズされるビュー502及びビュー206のケースにおいて、例えば、カスタマイズされるビュー502は、全てのビュー206と不揃いであり、その理由として、カスタマイズされるビュー502は、任意のビュー206とは異なるロケーション(即ち、現実世界シーン202の内側のロケーション)に配置され、任意のビュー206とは異なる配向(即ち、ビュー206−1と206−2との各配向の間の配向)を有しており、そして、ビュー206とは異なる視野(即ち、現実世界オブジェクト204上でより近い視界をもたらす視野)を有することが挙げられる。
かくして、カスタマイズされるビュー502を定義するキャプチャ・パラメータの追加のセットの特定に基づいて、及び、ビュー206に関連するキャプチャ・デバイスがキャプチャする複数の表面データ・フレーム・シーケンス400に基づいて(例えば、表面データ・フレーム・シーケンス400−1及び400−2に基づいて)、システム100は、現実世界シーン202のカスタマイズされるビュー502の仮想化プロジェクションに関して、色彩及び深度フレームをレンダリングすることができ、そして、これらの色彩及び深度フレームを含む仮想化される表面データ・フレーム・シーケンスを提供することができる。
図示的な意味合いで、図6は、例示的な仮想化される表面データ・フレーム・シーケンス600を示し、前記シーケンスは、システム100によって、カスタマイズされるビュー502の仮想化プロジェクションに関して、生成されてもよく、そして、提供されてもよい。具体的には、仮想化される表面データ・フレーム・シーケンス600を生成して、カスタマイズされるビュー502の仮想化プロジェクション602に関するレンダリングされる色彩及び深度フレームを含めてもよい。仮想化プロジェクション602が示すように、仮想化される表面データ・フレーム・シーケンス600内に含まれる色彩及び深度フレームは、以下に関連してもよい(例えば、以下の観点からキャプチャされるような外観を擁してもよい):表面データ・フレーム・シーケンス400内に含まれる任意の色彩及び深度フレームとは異なるロケーション、異なる配向、及び異なる視野。
具体的には、示すように、仮想化プロジェクション602は、現実世界オブジェクト204上の特定の配向からのクローズ・アップを表現する。このことは、下流のシステム及びデバイスに関して、様々な利点をもたらすことができ、前記下流のシステム及びデバイスは、バーチャル・リアリティ・メディア・コンテンツを提供することができ、前記コンテンツは、仮想化プロジェクション602が提供するロケーション、配向及び/又は視野からの現実世界オブジェクト204を表すことができる。例えば、有限数のビット(例えば、色彩データを処理するように構成されるオフ・ザ・シェルフ(off−the−shelf)ビデオ・コーデック用の8〜12ビット)で動作する処理リソース(例えば、ビデオ・コーデック・ソリューション)を用いて深度データを処理する実施において、深度量子化問題(depth quantization issues)(例えば、比較的大きなエリアを表す深度データの望ましくない「レイヤーリング」(layering))は、よりローカライズされるエリアを表す深度データを使用することで緩和することができる。ローカライズされるエリアは、利用可能なビットによって表現される、より大きい(例えば、よりローカライズされない)エリアよりも短い深度を伴うことができる。従って、利用可能な有限数のビットによって、高精度で深度を表現して、レイヤーリング効果を軽減又は除外等を行うことを可能にする。かくして、オブジェクトの表面を表すビット深度(例えば、ヴァンテージ・ポイントからの異なる距離での深度を表現するのに使用されるある数のビット)を、仮想化プロジェクション602に関して最適化することができ、仮想化プロジェクション602のヴァンテージ・ポイントからの高いレベルの深度精度及び/又は深度分解能を提供することができる。
特定のカスタマイズされるビュー(即ち、カスタマイズされるビュー502)に関連するキャプチャ・パラメータの特定の追加のセットについて、図5〜6に関して、詳細に説明及び図示してきたが、以下の点を理解されたい:膨大な数(例えば、現実世界シーン202を表すデータをキャプチャするのに採用される物理的なキャプチャ・デバイスの数よりも有意に大きい数)のカスタマイズされるビューに関連するキャプチャ・パラメータの膨大な数のセットを、特定の実施において特定することができ、可能性としてバーチャル・リアリティ・メディア・コンテンツに含めるための膨大な数の仮想化される表面データ・フレーム・シーケンスを生成及び提供することと可能にすることができる。上述したように、この膨大な数の仮想化される表面データ・フレーム・シーケンスは、バーチャル・リアリティ・メディア・コンテンツの生成及び配信における柔軟性を向上させることを可能にすることができ、異なるメディア・プレーヤ装置に対して、同一の現実世界シーンについて異なる詳細を提供することができ、その際に、任意のメディア・プレーヤ装置に対して、膨大な量の冗長な又は比較的無関係のデータで負荷をかけることもない。
キャプチャ・パラメータの1以上の追加のセット(即ち、ビュー206に関連するキャプチャ・パラメータのセット以外のキャプチャ・パラメータのセット)を、特定の実施に寄与することができる任意の態様で特定することができる。例えば、特定の実施において、キャプチャ・パラメータの追加のセット(例えば、カスタマイズされるビュー502に関連するキャプチャ・パラメータのセット)は、以下によって特定することができる:現実世界シーンの1以上の幾何学的プロパティに関して現実世界シーン202を分析すること;ビュー206に関連するキャプチャ・パラメータのセットとは異なるキャプチャ・パラメータの複数の追加のセットを生成すること(例えば、現実世界シーンの分析に基づいて);及び、キャプチャ・パラメータの追加のセットを、キャプチャ・パラメータの複数の追加のセットから特定すること。具体的には、例えば、システム100は、現実世界シーン202の幾何学的プロパティを決定することができる(例えば、以下に関連するプロパティ:現実世界シーン202の形、現実世界シーン202を分割することができる際の現実世界シーン202の様々な部分又は態様、現実世界シーン202内の特定のオブジェクトのロケーション及び/又は軌道等)。こうしたプロパティ及び/又は他のプロパティに基づいて、システム100は、様々なカスタマイズされるビュー(例えば、カスタマイズされるビュー502を含む)がバーチャル・リアリティ・メディア・コンテンツの生成に関連することを決定することができ、そして、結果として、これらの関連するカスタマイズされるビュー各々に関してのキャプチャ・パラメータの各セットを生成することができる。
いったん、複数のキャプチャされる表面データ・フレーム・シーケンスが、物理的なキャプチャ・デバイスに関連する現実世界シーンのビューのために受信され、そして、1以上の仮想化される表面データ・フレーム・シーケンスが現実世界シーンのカスタマイズされるビューの仮想化プロジェクションのために生成されると、システム100は、1以上のキャプチャされる、及び/又は仮想化される表面データ・フレーム・シーケンスを、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で提供することができる。例えば、より詳細に後述するが、システム100は、キャプチャされる、及び/又は仮想化される表面データ・フレーム・シーケンス内のデータを以下に対して提供することができる:サーバ・サイド・システム(例えば、バーチャル・リアリティ・メディア・プロバイダ・パイプラインにおける下流システム);及び/又は、クライアント・サイドシステム(例えば、バーチャル・リアリティ・メディア・コンテンツ(例えば、表面データ・フレーム・シーケンス内に含まれるデータに基づくバーチャル・リアリティ・メディア・コンテンツ)を体験するユーザに関連するメディア・プレーヤ装置)。
システム100は、表面データ・フレーム・シーケンス内に含まれるデータ(例えば、色彩及び深度フレーム、並びに他のタイプのデータ(例えば、オーディオ・データ、メタデータ等))を、特定の実施に寄与することができる任意の態様で、且つ、任意の他のシステム又はデバイスへ提供することができる。例えば、特定の実施において、システム100は、色彩及びデータ・フレーム(並びにオーディオ及びメタデータ等)を、エンコーディング・システムに提供することができ、前記システムは、データをエンコードして、ビデオ・データ・ストリームを生成することができる(例えば、標準化されたフォーマット(例えば、H.264、H.265)で圧縮される2Dビデオ・ストリーム等)。従って、例えば、特定の表面データ・フレーム・シーケンス内に含まれるデータは、1以上のビデオ・データ・ストリーム(例えば、色彩ビデオ・データ・ストリーム、深度ビデオ・データ・ストリーム等)内に含まれてもよい。表面データ・フレーム・シーケンス(例えば、オーディオ・データ、メタデータ等)内に含まれる他のデータも、色彩ビデオ・データ・ストリーム、及び/若しくは、深度ビデオ・データ・ストリーム内に含まれてもよく、又は、異なるデータ・ストリーム内に含まれてもよい。
どのシステムに表面データ・フレーム・シーケンス・データを提供するか、及び/又は表面データ・フレーム・シーケンス・データが1以上のビデオ・データ・ストリームにエンコードされたか等に関わらず、表面データ・フレーム・シーケンス・データは、ネットワークを介した伝送のために、パッケージ化、及び/又は、多重化されてもよい。こうしたデータのパッケージ化は、任意の適切な態様で実行されてもよく、及び/又は、特定の実施に寄与することができる任意の適切なデータ構造を用いて実行されてもよい。一例として、各表面データ・フレーム・シーケンスは、自身のユニークなトランスポート・ストリームへとパッケージ化されてもよい。具体的には、例えば、仮想化される表面データ・フレーム・シーケンス600は、パッケージ化されてもよく、その結果、現実世界シーン202のカスタマイズされるビュー502の仮想化プロジェクション602に関するレンダリングされる色彩及び深度フレームは、トランスポート・ストリーム内に含まれてもよく、前記トランスポート・ストリームは、以下を含まなくてもよい:仮想化される表面データ・フレーム・シーケンス600以外の追加の表面データ・フレーム・シーケンス(例えば、追加のキャプチャされる、又は、仮想化される表面データ・フレーム・シーケンス)を表す色彩及び深度フレーム。
別の例として、複数の表面データ・フレーム・シーケンスは、共有トランスポート・ストリームへ共にパッケージ化されてもよい(例えば、多重化されてもよい)。具体的には、例えば、仮想化される表面データ・フレーム・シーケンス600は、パッケージ化されてもよく、その結果、現実世界シーン202のカスタマイズされるビュー502の仮想化プロジェクション602に関するレンダリングされる色彩及び深度フレームは、トランスポート・ストリーム内に含まれ、前記トランスポート・ストリームは、以下を表す色彩及び深度フレームを更に含む:仮想化される表面データ・フレーム・シーケンス600以外のなくとも1つの追加の表面データ・フレーム・シーケンス(例えば、少なくとも1つの追加のキャプチャされる、又は仮想化される表面データ・フレーム・シーケンス)。
図示する目的で、図7は、例示的なトランスポート・ストリーム700のグラフィカルな表現を示し、前記トランスポート・ストリームは、例示的な複数の表面データ・フレーム・シーケンスを含む。具体的には、トランスポート・ストリーム700は、以下を含むことができる:様々なキャプチャされる表面データ・フレーム・シーケンス400(例えば、図4A〜4Bに示す表面データ・フレーム・シーケンス400−1、及び、ビュー206−2〜206−8に関連するキャプチャ・デバイスによってそれぞれ同様にキャプチャされる表面データ・フレーム・シーケンス400−2〜400−8)、並びに様々な仮想化される表面データ・フレーム・シーケンス(例えば、図6に示す仮想化される表面データ・フレーム・シーケンス600及び他の仮想化される表面データ・フレーム・シーケンス702−1〜702−N)。
本明細書で使用するが、「トランスポート・ストリーム」は、以下を目的として、データをパッケージ化するために使用されるデータ構造を意味してもよい:データを、あるデバイス又はシステムから別の所へ送信(即ち、伝送)することを促進すること、データをレンダリングする、若しくは、処理する、若しくは分析すること、及び/又は特定の実施に寄与することができる他の目的。幾つかの例において、トランスポート・ストリームは、1以上のデータ・ストリーム(例えば、1以上のビデオ・データ・ストリーム)、及び/又は、他のデータ(例えば、メタデータ等)を組み込むことができる。トランスポート・ストリームは、特定の実施に寄与することができる任意のタイプのトランスポート・ストリームとして実装されてもよい。例えば、本明細書に記載の特定のトランスポート・ストリーム(例えば、トランスポート・ストリーム700)は、以下の手段により実装されてもよい:MPEGトランスポート・ストリーム、MPEG−2トランスポート・ストリーム、又は、データの伝送を促進する別の適切なデータ構造(例えば、表面データ・フレーム・シーケンス、ビデオ・データ・ストリーム)等。トランスポート・ストリームは、特定の実施に寄与することができる任意の適切なデータフォーマット、コンテナ・フォーマット、及び/又は、伝送プロトコルに従って構成されてもよい。
トランスポート・ストリーム700は、キャプチャされる表面データ・フレーム・シーケンスと、仮想化される表面データ・フレーム・シーケンスとの両方を含むものとして示しているが、以下の点を理解されたい:特定の実施において、トランスポート・ストリーム700は、以下を含むことができる:キャプチャされる表面データ・フレーム・シーケンスのみ、又は、仮想化される表面データ・フレーム・シーケンスのみ。更には、トランスポート・ストリーム700は、以下を含むことができる:特定の実施に寄与することができる任意の適切な数の表面データ・フレーム・シーケンス、及び表面データ・フレーム・シーケンスの任意の組み合わせ。例えば、上述したように、特定の例において、トランスポート・ストリーム700は、単独の表面データ・フレーム・シーケンス(例えば、仮想化される表面データ・フレーム・シーケンス600)を含むことができ、そして、他の表面データ・フレーム・シーケンスは、仮にも伝送される場合には、他のトランスポート・ストリームの手段により伝送されてもよい。また、以下の点も理解されたい:図7では、上の通り記述及び図示した表面データ・フレーム・シーケンス(例えば、表面データ・フレーム・シーケンス400及び600)を含むトランスポート・ストリーム700を示しているが、これらの表面データ・フレーム・シーケンスは、データ構造(例えば、エンコードされるビデオ・データ・ストリーム(明示しない))内に含まれてもよく、従って、これらの表面データ・フレーム・シーケンスは、システム100が受信し及び/又は生成する上述したバージョン(例えば、ビデオ・データ・ストリームへとエンコード及び/又は圧縮されるデータのバージョン等)とは異なるデータのバージョンを意味してもよい。
図8は、トランスポート・ストリーム700のデータ構造表現800を示す。示しているが、表現800は、異なるタイプのデータに関するセクションを含む(例えば、メタデータ802のセクション、オーディオ・データ804のセクション、及びビデオ・データ806のセクション)。以下の点を理解されたい:表現800に示すセクションは概念的なものにすぎなくてもよく、そして、表現800に示すデータは、特定の実施に寄与することができる任意の方法で、トランスポート・ストリーム700内で、多重化、オーガナイズ、アレンジ、送信等されてもよい。
示しているが、メタデータ802は以下を含む:トランスポート・ストリーム700内に含まれる各表面データ・フレーム・シーケンスに関連するキャプチャ・パラメータの様々なセット(即ち、「キャプチャ・パラメータ・セット1」〜「キャプチャ・パラメータ・セットM」)。例えば、メタデータ802内に含まれるキャプチャ・パラメータのセットは、以下を含むことができる:図7に示すキャプチャされ仮想化される表面データ・フレーム・シーケンス(即ち、表面データ・フレーム・シーケンス400−1〜400−8、600、及び702−1〜702−N)のそれぞれに関するキャプチャ・パラメータの各セット。メタデータ802は、特定の実施に寄与することができる表面データ・フレーム・シーケンス(例えば、又は、表面データ・フレーム・シーケンスがエンコードされるビデオ・データ・ストリーム)を記述する任意の他のメタデータを更に含むことができる。
同様に、オーディオ・データ804は、以下を含むことができる:トランスポート・ストリーム700内に含まれる各表面データ・フレーム・シーケンスに関連するオーディオ・ソース・データ。例えば、「オーディオ・ソース1」〜「オーディオ・ソースM」は、表面データ・フレーム・シーケンス400−1〜400−8、600、及び702−1〜702−Nにそれぞれ関連してもよい。他の例において、オーディオ・ソースが表面データ・フレーム・シーケンスに関連しない場合に、存在する表面データ・フレーム・シーケンスよりも、オーディオ・ソースは、多くてもよく、又は少なくてもよい(例えば、オーディオ・ソースの数が、表面データ・フレーム・シーケンスの数とは関係無い)。
更に図8に示すようにビデオ・データ806は、以下を含むことができる:図7にてトランスポート・ストリーム700内に含まれるように示される各表面データ・フレーム・シーケンスに関連する色彩ビデオ・データ・ストリーム及び深度ビデオ・データ・ストリーム。例えば、「色彩ビデオ・データ・ストリーム1」及び「深度ビデオ・データ・ストリーム1」は、表面データ・フレーム・シーケンス400−1内に含まれる色彩及び深度フレームを表してもよく、「色彩ビデオ・データ・ストリーム2」及び「深度ビデオ・データ・ストリーム2」は、表面データ・フレーム・シーケンス400−2内に含まれる色彩及び深度フレームを表してもよく、以下同様であってもよく、その結果、表面データ・フレーム・シーケンス400−1〜400−8、600、及び702−1〜702−Nは、それぞれ、ビデオ・データ806内の色彩ビデオ・データ・ストリーム及び深度ビデオ・データ・ストリームの両方に対応する。
上述したように、特定の実施において、以下のことを行うことは有用となる可能性がある:比較的膨大な数の仮想化される表面データ・フレーム・シーケンスを提供して、異なる時間で異なるメディア・プレーヤ装置に関連する(即ち、異なるバーチャル・リアリティ体験を有する異なるユーザに関連する)異なる詳細によりカスタマイズできるバーチャル・リアリティ・メディア・コンテンツの異なるバージョンを生成する際に柔軟性を可能にすること。例えば、1つの実施において、8つの物理的なキャプチャ・デバイスは、8つの高解像度のキャプチャされる表面データ・フレーム・シーケンスを生成することができ、そして、システム100は、8つのキャプチャされる表面データ・フレーム・シーケンスに基づいて、以下を生成することができる:何百ものカスタマイズされるビューの何百もの仮想化プロジェクションに関する何百もの仮想化される表面データ・フレーム・シーケンス。
こうした膨大な数の仮想化される表面データ・フレーム・シーケンスを提供することは、バーチャル・リアリティ・メディア・コンテンツを効率的に生成及び配信する際に、有意な柔軟性を可能にする可能性があるが、しかし、あまりにも多くの個々のデータ・ストリーム(例えば、ビデオ・データ・ストリーム等)を取り扱うように備えられていない可能性のある利用可能なハードウェア及びソフトウェア・リソースを用いて取り扱うことが困難となる可能性がある。結果として、複数の色彩及び/又は深度フレーム・シーケンスを単独の表面データ・フレーム・シーケンスにパッケージ化することが望まれる可能性がある。例えば、仮想化される表面データ・フレーム・シーケンス600は、パッケージ化されてもよく、その結果、現実世界シーン202のカスタマイズされるビュー502の仮想化プロジェクション602に関するレンダリングされる色彩及び深度フレームは、それぞれ、ビデオ・データ・ストリームにおいて、タイルとして表現され、前記ビデオ・データ・ストリームは、タイル・マップを実装し、前記タイル・マップは、ビデオ・データ・ストリームの各フレームにおいて、複数のタイルを表現する。例えば、タイル・マップ・ピング技術(例えば、テクスチャ・アトラス技術、スプライト・シート技術等)を使用して、複数の色彩及び/又は深度フレームを共に単独のフレームにパックすることができ、その結果、こうしたフレームのシーケンス(例えば、又は、これらのフレームを表すビデオ・データ・ストリーム)は、本質的に単独のフレーム・シーケンスとして扱うことができるが、複数のフレーム・シーケンス(例えば、カスタマイズされるビューの仮想化プロジェクションを含む複数のビューを表す)に関連するデータを含むことができる。
図示する目的で、図9は、例示的なトランスポート・ストリーム900のグラフィカルな表現を示し、前記グラフィカルな表現は、例示的なタイル化されるフレーム・シーケンス902を含み、前記シーケンスは、タイル・マップを実装する。タイル化されるフレーム・シーケンス902は、本明細書で示す表面データ・フレーム・シーケンス(例えば、図4Bにおける表面データ・フレーム・シーケンス400−1、図6における仮想化される表面データ・フレーム・シーケンス600等)と同様のブロックとして描かれているが、以下の点を理解されたい:タイル化されるフレーム・シーケンス902は、本明細書の他の表面データ・フレーム・シーケンスの幾つかとは異なるデータを表現することができる。具体的には、例えば、タイル化されるフレーム・シーケンス902は、複数のフレーム・シーケンス(例えば、色彩フレーム・シーケンス402及び深度フレーム・シーケンス404(図4Aに示す))を表さなくてもよいが、むしろ、タイル化されるフレーム・シーケンス902は、以下を含むことができる:複数のタイル904(即ち、タイル904−1−C〜904−9−C)(例えば、タイル化されるフレーム・シーケンス902の前面で示されるもの)をそれぞれ含むフレームの単独のシーケンス。
タイル化されるフレーム・シーケンス902の各フレーム上に含まれるタイルは、以下を含むことができる:特定の実施に寄与することができる任意のキャプチャされる、又は仮想化される表面データ・フレーム・シーケンスに関連する任意の色彩又は深度フレーム。例えば、図9に示すように、タイル化されるフレーム・シーケンス902の各フレームは、以下を含むことができる:ビュー206−1からキャプチャされる色彩(「C」)フレームに対応するタイル904−1−C、ビュー206−2からキャプチャされる色彩フレームに対応するタイル904−2−C、以下同様であり、最大でビュー208−8からキャプチャされる色彩フレームに対応するタイル904−8−C。更に示すが、タイル化されるフレーム・シーケンス902の各フレームは、以下を含むことができる:カスタマイズされるビュー502の仮想化プロジェクション602に関して生成される色彩フレームに関連するタイル904−9−C。図9では明示的に9つのタイルのみを示しているが、以下の点を理解されたい:追加のタイルも、タイル化されるフレーム・シーケンス902の各フレームへパックされてもよい。例えば、他の仮想化プロジェクション、深度フレーム(例えば、ビュー206からキャプチャされる、及び/又は、仮想化プロジェクションに関して生成される深度フレーム)等に対応するタイルは、特定の実施に寄与することができるタイル・マップ内に更に含まれてもよい。更には、図9中のトランスポート・ストリーム900では、タイル・マップを用いて、1つのタイル化されるフレーム・シーケンスを示しているだけではあるが、以下の点を理解されたい:トランスポート・ストリーム900を使用して、複数のフレーム・シーケンスをパッケージ化することができ、前記フレーム・シーケンスは、タイル化されるフレーム・シーケンス(例えば、タイル化されるフレーム・シーケンス902等)、表面データ・フレーム・シーケンス(例えば、フレーム・シーケンス400、600又は702等)、又は、特定の実施に寄与することができる他のデータを含むことができる。幾つかの例において、タイル化されるフレーム・シーケンス902は、トランスポート・ストリーム(例えば、トランスポート・ストリーム900)内に含まれることなく送信されてもよい。
図10は、トランスポート・ストリーム900のデータ構造表現1000を示す。示しているが、表現800と同様、表現1000は、異なるタイプのデータに関するセクションを含む(例えば、メタデータ1002のセクション、オーディオ・データ1004のセクション、及びビデオ・データ1006のセクション)。また、表現800と同様、表現1000に示すセクションは、概念的なものにすぎない旨を理解されたく、表現1000に示すデータは、特定の実施に寄与することができる任意の方法で、トランスポート・ストリーム900内で、多重化、オーガナイズ、アレンジ、送信等されてもよい。
示しているが、メタデータ1002は以下を含む:各タイル(例えば、タイル904−1−C〜904−9−C及び/又は図9に明示しない他のタイル)に関して2つの異なるタイプのメタデータ。具体的には、各タイル(「タイル1」〜「タイルM」)に関して、メタデータ1002は以下を含む:その特定のタイルに関連するデータ専用の各フレームのセクションを表すタイル座標(例えば、「タイル座標1」〜「タイル座標M」)。例えば、タイル1に関するタイル座標は、タイル904−1−Cを図9に示すときのフレームの上左の角を示す座標を含むことができ、以下同様であってもよい。また、メタデータ1002は、各タイル1〜Mに関して、タイルに関連するキャプチャ・パラメータの各セット(即ち、「キャプチャ・パラメータ・セット1」〜「キャプチャ・パラメータ・セットM」)を含む。例えば、メタデータ802内に含まれるキャプチャ・パラメータのセットは、以下を含むことができる:図9に示す各タイル(即ち、タイル904−1−C〜904−9−C)に関するキャプチャ・パラメータの各セット。メタデータ1002は、更に以下を含むことができる:特定の実施に寄与することができ、タイル化されるフレーム・シーケンス902のタイル(例えば、又は、タイル化されるフレーム・シーケンス902がエンコードされるビデオ・データ・ストリーム)を記述する任意の他のメタデータ。
表現800中のオーディオ・データ804と同様に、オーディオ・データ1004は、以下を含むことができる:タイル化されるフレーム・シーケンス902内(即ち、トランスポート・ストリーム900内)に含まれる各タイルに関連するオーディオ・ソースデータ。例えば、「オーディオ・ソース1」〜「オーディオ・ソースM」は、それぞれ、タイル904−1−C〜904−9−C及び/又は図9に明示しない他のタイルに関連してもよい。他の例において、タイルがオーディオ・ソースに特段関連しない場合、オーディオ・ソースは多くなってもよいし、又は少なくなってもよい。
図8中の表現800とは対照的に、各表面データ・フレーム・シーケンスに関連する複数の色彩及び深度ビデオ・ストリームが含まれる場合、表現1000が示すこととして、ビデオ・データ1006は、タイル化されるフレーム・シーケンス902に関連する唯一のビデオ・データ・ストリームを含む。この理由として、図9に示すように、タイル化されるフレーム・シーケンス902によって表現される各色彩及び/又は深度フレームに関連する全てのイメージは、タイル化されるフレーム・シーケンス902における各フレームに共にパックされるからである。特定の例において、トランスポート・ストリーム900は、以下を含むことができる:色彩データ・タイル専用の1つのフレーム・シーケンス(例えば、タイル化されるフレーム・シーケンス902)、及び、深度データ・タイル専用の第2のフレーム・シーケンス(図9に明示しない)。かくして、こうした例において、ビデオ・データ1006は、以下を含むことができる:色彩ビデオ・データ・ストリーム及び深度ビデオ・データ・ストリームの両方。更なる他の例において、上述したように、トランスポート・ストリーム900は、以下を含むことができる:タイル化されるフレーム・シーケンス902とともに、他のフレーム・シーケンス、ビデオ・ストリーム等(例えば、タイル化されているか、されていないかに関わらず)。かくして、こうした例において、ビデオ・データ1006は、以下を含むことができる:図10に明示しない他のビデオ・データ・ストリーム。
上述したように、幾つかの例において、システム100並びに/又は本明細書に記載の他のシステム(例えば、他のサーバ・サイド・システム)及びデバイスを使用して、ユーザの体験対象であるバーチャル・リアリティ・メディア・コンテンツを生成することができる。例えば、上述したオペレーションのほか、バーチャル・リアリティ・メディア・コンテンツ提供システム(例えば、システム100並びに/又は本明細書に記載の他のデバイス及びシステムが含まれることができる物、又は、これらのシステムが関連することができる物)は、システム100が提供するデータに基づいて、更に、バーチャル・リアリティ・メディア・コンテンツを生成及び提供することができる。バーチャル・リアリティ・メディア・コンテンツは、現実世界シーン(例えば、現実世界シーン202)を表してもよく、そして、バーチャル・リアリティ・メディア・コンテンツは、現実世界シーンに対する任意のバーチャル・ロケーションに対応する動的に選択可能なバーチャル・ビューポイントから体験できるように、ユーザに提示可能なものであってもよい。例えば、動的に選択可能なバーチャル・ビューポイントは、メディア・プレーヤ装置のユーザによって選択されてもよく(例えば、決定される、配置される等)、その間、ユーザは、メディア・プレーヤ装置を用いて、現実世界シーンを仮想的に体験している。幾つかの例において、バーチャル・ビューポイントは、2次元又は3次元の連続体に沿って任意のロケーションとなるように選択することができ、これは、不連続なビューポイントのセットからしか選択されない状態とは対照的である。更には、バーチャル・リアリティ・メディア・コンテンツは、(例えば、システム100を含む又は前記システムに関連するバーチャル・リアリティ・メディア・コンテンツ提供システムによって)メディア・プレーヤ装置に提供されてもよく、そして、ユーザに対して、現実世界シーン内の任意のバーチャル・ロケーションに対応する動的に選択可能なバーチャル・ビューポイントから現実世界シーンを体験することを可能にする。
図示する目的で、図11は、例示的な構成1100を示し、ここで、例示的なバーチャル・リアリティ・メディア・コンテンツ提供システム1102(「プロバイダ・システム1102」)は、システム100及び1以上の追加のバーチャル・リアリティ・メディア・プロバイダ・パイプライン・システム1104を含むが、前記例示的なバーチャル・リアリティ・メディア・コンテンツ提供システム1102は、バーチャル・リアリティ・メディア・コンテンツを生成し、前記バーチャル・リアリティ・メディア・コンテンツは、ネットワーク1106の手段により、例示的なクライアント・サイド・メディア・プレーヤ装置1108(「メディア・プレーヤ装置1108」)に提供され、前記例示的なクライアント・サイド・メディア・プレーヤ装置1108は、現実世界シーン202を体験するユーザ1110によって使用される。
上述したように、仮想化される表面データ・フレーム・シーケンス600が、生成され、そして、トランスポート・ストリーム(例えば、トランスポート・ストリーム700、トランスポート・ストリーム900等)へパッケージ化された後、プロバイダ・システム1102は、更に、1以上のトランスポート・ストリームを、エンコード、パッケージ化、暗号化、又は処理することができ、バーチャル・リアリティ・メディア・コンテンツを形成することができ、前記コンテンツは、メディア・プレーヤ装置1108がレンダリングするように構成されてもよい。例えば、バーチャル・リアリティ・メディア・コンテンツは、複数の2Dビデオ・データ・ストリーム(例えば、各ビュー及び仮想化プロジェクションに関連する色彩及び深度データに関連する2Dビデオ・データ・ストリーム)を含むことができ、又は表すことができ、前記複数の2Dビデオ・データ・ストリームは、メディア・プレーヤ装置1108によってレンダリングされてもよく、その結果、現実世界シーン202内の任意のバーチャル・ビューポイント(例えば、任意のキャプチャ・デバイスのビュー又はカスタマイズされるビューと不揃いではあるが、ユーザ1110にとって興味の対象となる可能性のあるバーチャル・ビューポイントを含む)からの現実世界シーン202のビューを提示することができる(これについては後述する)。バーチャル・リアリティ・メディア・コンテンツは、その後、ネットワーク1106の手段により、1以上のメディア・プレーヤ装置(例えば、ユーザ1110に関連するメディア・プレーヤ装置1108)に配信されてもよい。例えば、プロバイダ・システム1102は、バーチャル・リアリティ・メディア・コンテンツを、メディア・プレーヤ装置1108に提供することができ、その結果、ユーザ1110は、メディア・プレーヤ装置1108を用いて、現実世界シーン202を仮想的に体験することができる。
幾つかの例において、ユーザ1110にとって、バーチャル・リアリティ・メディア・コンテンツ(例えば、現実世界シーン202を表す)によって表現される没入型バーチャル・リアリティ世界内の1以上の不連続な位置に制限されることは望ましくない可能性がある。かくして、プロバイダ・システム1102は、現実世界シーン202を表すバーチャル・リアリティ・メディア・コンテンツ内に十分なデータを提供し、そして、現実世界シーン202を表現することを可能にし、その際の表現については、ビュー206及び/又は502だけではなく、現実世界シーン202内の任意のバーチャル・ロケーションに対応する任意の動的に選択可能なバーチャル・ビューポイントからも可能である。例えば、動的に選択可能なバーチャル・ビューポイントは、ユーザ1110が選択することができ、その間ユーザ1110は、メディア・プレーヤ装置1108を用いて、現実世界シーン202を体験している。
本明細書で使用するが、「任意のバーチャル・ロケーション」は、現実世界シーンの表現に関連する空間中の任意のバーチャル・ポイントを意味してもよい。例えば、任意のバーチャル・ロケーションは、現実世界シーンを囲む固定位置(例えば、ビュー206及び/又はカスタマイズされるビュー502に関連する固定位置)に限定されるのではなく、ビュー206及びカスタマイズされるビュー502に関連する位置の間の全ての位置も含むことができる。幾つかの例において、こうした任意のバーチャル・ロケーションは、現実世界シーン202内の最も望ましいバーチャル・ビューポイントに対応してもよい。例えば、現実世界シーン202がバスケットボールのゲームを含む場合、ユーザ1110は、バスケットボールのコート上の任意のバーチャル・ロケーションにあるゲームを体験するためのバーチャル・ビューポイントを動的に選択することができる。例えば、ユーザは、ユーザのバーチャル・ビューポイントを動的に選択することができ、バスケットボールのコートを上下に追従することができ、そして、ゲームの進行中のバスケットボールのコートに立っているかのごとく、バスケットボールのゲームを体験することができる。
ネットワーク1106は、以下を含むことができる:プロバイダに特化した有線の又はワイヤレスなネットワーク(例えば、ケーブル、又は衛星キャリア・ネットワーク、又はモバイル電話ネットワーク)、インターネット、ワイド・エリア・ネットワーク、コンテンツ・デリバリ・ネットワーク、又は任意の他の適切なネットワーク。データは、プロバイダ・システム1102とメディア・プレーヤ装置1108(並びに、明示しない他のメディア・プレーヤ装置)との間を流れることができ、その際に、特定の実施に寄与することができる任意の通信技術、デバイス、メディア、及びプロトコルを使用してもい。
メディア・プレーヤ装置1108をユーザ1110が使用して、プロバイダ・システム1102から受信するバーチャル・リアリティ・メディア・コンテンツにアクセスし、体験することができる。例えば、メディア・プレーヤ装置1108は、現実世界シーン202の3Dバーチャル表現を生成する動作を行うように構成されてもよく、前記表現は、ユーザ1110によって、任意のバーチャル・ビューポイント(例えば、ユーザによって選択され、現実世界シーン202内の任意のバーチャル・ロケーションに対応する動的に選択可能なバーチャル・ビューポイント)から体験されてもよい。この目的のため、メディア・プレーヤ装置1108は、以下を行うことができる任意のデバイス含んでもよく、又は、前記デバイスによって実装されてもよい:没入型バーチャル・リアリティ世界(例えば、現実世界シーン202を表す没入型バーチャル・リアリティ世界)の視野を提示すること、及び、ユーザ1110が没入型バーチャル・リアリティ世界を体験する際に、ユーザ1110からのユーザ入力を検出して、視野内の没入型バーチャル・リアリティ世界を動的にアップデートすること。
図12が示すのは、様々な例示的なタイプのメディア・プレーヤ装置1108であり、前記装置は、バーチャル・リアリティ・メディア・コンテンツを体験するユーザ1110によって使用されてもよい。具体的には、示すように、メディア・プレーヤ装置1108は、幾つかの異なる形態要素のうち1つをとることができる(例えば、ヘッドマウント・バーチャル・リアリティ・デバイス1202(例えば、バーチャル・リアリティ・ゲーム・デバイス)(ヘッドマウント・ディスプレイ・スクリーンを含む)、個人用コンピュータ・デバイス1204(例えば、デスクトップ・コンピュータ、ラップトップ・コンピュータ等)、モバイル・デバイス若しくはワイヤレス・デバイス1206(例えば、スマートフォン、タブレット・デバイス等、これらは、ヘッドマウント装置の手段によりユーザ1110の頭部に取り付けることが可能)、又は、特定の実施に寄与して、バーチャル・リアリティ・メディア・コンテンツの受信及び/又は提示を促進することができる任意の他のデバイス若しくはデバイスの構成。異なるタイプのメディア・プレーヤ装置(例えば、ヘッドマウント・バーチャル・リアリティ・デバイス、個人用コンピュータ・デバイス、モバイル・デバイス等)は、異なるレベルの没入性を有する異なるタイプのバーチャル・リアリティ体験を、ユーザ1110に提供することができる。
図13は、例示的なバーチャル・リアリティ体験1300を示し、ここで、ユーザ1110には、例示的なバーチャル・リアリティ・メディア・コンテンツが提示され、前記コンテンツは、現実世界シーンを表し、前記現実世界シーンは、現実世界シーンに対する例示的な任意のバーチャル・ロケーションに対応する動的に選択可能なバーチャル・ビューポイントから体験される。具体的には、バーチャル・リアリティ・メディア・コンテンツ1302は、視野1304内に提示され、前記コンテンツが示すのは、バーチャル・ビューポイントからの現実世界シーンであり、前記バーチャル・ビューポイントは、任意のバーチャル・ロケーションに対応し、前記バーチャル・ロケーションは、シュートが行われている現実世界シーンの表現内のバスケットボールのゴールの真下である。現実世界シーンに基づく没入型バーチャル・リアリティ世界1306は、閲覧者にとって利用可能であってもよく、ユーザ入力(例えば、頭部の動き、キーボード・インプット等)(見回す、及び/又は動き回る(即ち、体験する箇所からバーチャル・ビューポイントを動的に選択する))を提供することで没入型バーチャル・リアリティ世界1306を体験できる。
例えば、視野1304は、ウィンドウを提供することができ、前記ウィンドウを通して、ユーザ1110は、容易に且つ自然に、没入型バーチャル・リアリティ世界1306を見回すことができる。視野1304は、メディア・プレーヤ装置1108(例えば、メディア・プレーヤ装置1108のディスプレイ・スクリーン上に)によって提示されてもよく、そして、前記視野1304は、以下を含むことができる:没入型バーチャル・リアリティ世界1306内のユーザの周辺のオブジェクトを描写したビデオ。更には、視野1304を、ユーザ1110が没入型バーチャル・リアリティ世界1306を体験する際に、ユーザ1110が提供するユーザ入力に応答して、動的に変更することができる。例えば、メディア・プレーヤ装置1108は、ユーザ入力を検出することができる(例えば、視野1304が提示されるディスプレイ・スクリーンを移動又は回転する)。これに応じて、視野1304は、以下を提示することができる:異なるオブジェクト及び/又は以前のバーチャル・ビューポイント若しくはバーチャル・ロケーションから見えるオブジェクトの場所において、異なるバーチャル・ビューポイント若しくはバーチャル・ロケーションから見えるオブジェクト。
図13において、没入型バーチャル・リアリティ世界1306は、半球として示されているが、このことは、以下を示す:ユーザ1110は、没入型バーチャル・リアリティ世界1306内の任意の方向へ視線を向けることができ、前記方向として、実質的には、ユーザ1110が現在選択したバスケットボールのゴール下のロケーションにおけるバーチャル・ビューポイントから見て、前方向、後方向、左方向、右方向、及び/又は上方向である。他の例において、没入型バーチャル・リアリティ世界1306は、さらに180°分の球体を追加した全体360°を含むことができ、その結果、ユーザ1110は、下方向も見ることができる。更には、ユーザ1110は、没入型バーチャル・リアリティ世界1306内の他のロケーションへ動き回ることができる(即ち、現実世界シーンの表現内の異なる動的に選択可能なバーチャル・ビューポイントを動的に選択することができる)。例えば、ユーザ1110は以下を選択することができる:ハーフ・コートにおけるバーチャル・ビューポイント、バスケットボールのゴールに向かいあうフリー・スロー・ラインからのバーチャル・ビューポイント、バスケットボールのゴール上部で停止したバーチャル・ビューポイント等。
図14が示すのは例示的な方法1400であり、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションを生成するためのものである。図14は、1つの実施形態に従った例示的なオペレーションを示すが、他の実施形態では、図14に示す任意のオペレーションに対して、省略、追加、並べ替え、及び/又は変更してもよい。図14に示す1以上のオペレーションは、以下によって実行されてもよい:システム100、前記システムの実装、及び/又は、システム100に関連する(例えば、通信可能に接続される、共同で動作するように構成される等)上述した別のシステム。
オペレーション1402において、仮想化プロジェクション生成システムは、複数のキャプチャされる表面データ・フレーム・シーケンスを受信することができ、各表面データ・フレーム・シーケンスは、色彩及び深度フレームを含むことができ、前記色彩及び深度フレームは、現実世界シーンを、キャプチャ・パラメータの各セットに従って描写することができ、前記パラメータは、現実世界シーンの異なるビューに関連するキャプチャ・パラメータの複数のセットに含まれてもよい。幾つかの例において、複数のキャプチャされる表面データ・フレーム・シーケンス内の各表面データ・フレーム・シーケンスは、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスによってキャプチャされてもよく、前記複数のキャプチャ・デバイスは、現実世界シーンの異なるビューをキャプチャするように現実世界シーンに関しての異なるロケーションに配置されてもよい。オペレーション1402は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1404において、仮想化プロジェクション生成システムは、キャプチャ・パラメータの追加のセットを特定することができ、前記追加のセットは、オペレーション1402にて受信されキャプチャされる表面データ・フレーム・シーケンスに関連するキャプチャ・パラメータの複数のセット内に含まれるキャプチャ・パラメータのセットとは異なる。幾つかの例において、キャプチャ・パラメータの追加のセットは、現実世界シーンのカスタマイズされるビューに関連してもよく、前記カスタマイズされるビューは、複数のキャプチャ・デバイスがキャプチャする現実世界シーンの異なるビューとは異なってもよい。オペレーション1404は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1406において、仮想化プロジェクション生成システムは、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションに関する色彩及び深度フレームをレンダリングすることができる。例えば、仮想化プロジェクション生成システムは、オペレーション1402にて受信されキャプチャされる表面データ・フレーム・シーケンスに基づいて、そして、オペレーション1404で特定されるキャプチャ・パラメータの追加のセットに基づいて、仮想化プロジェクションに関する色彩及び深度フレームをレンダリングすることができる。オペレーション1406は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1408において、仮想化プロジェクション生成システムは、仮想化される表面データ・フレーム・シーケンスを提供することができ、前記表面データ・フレーム・シーケンスは、オペレーション1406にてレンダリングされる現実世界シーンのカスタマイズされるビューの仮想化プロジェクションに関するレンダリングされる色彩及び深度フレームを含むことができる。幾つかの例において、仮想化プロジェクション生成システムは、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、仮想化される表面データ・フレーム・シーケンスをメディア・プレーヤ装置に提供することができる。オペレーション1408は、本明細書に記載の方法のいずれかで実行されてもよい。
図15が示すのは例示的な方法1500であり、バーチャル・リアリティ・メディア・コンテンツ内に含める目的で、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションを生成するためのものである。図15は、1つの実施形態に従った例示的なオペレーションを示すが、他の実施形態では、図15に示す任意のオペレーションに対して、省略、追加、並べ替え、及び/又は変更してもよい。図15に示す1以上のオペレーションは、以下によって実行されてもよい:システム100、前記システムの実装、及び/又は、システム100に関連する(例えば、通信可能に接続される、共同で動作するように構成される等)上述した別のシステム。
オペレーション1502において、仮想化プロジェクション生成システムは、複数のキャプチャされる表面データ・フレーム・シーケンスを受信することができ、各表面データ・フレーム・シーケンスは色彩及び深度フレームを含むことができ、前記色彩及び深度フレームは、現実世界シーンを、キャプチャ・パラメータの各セットに従って描写することができ、前記パラメータは、現実世界シーンの異なるビューに関連するキャプチャ・パラメータの第1の複数のセット内に含まれてもよい。例えば、複数のキャプチャされる表面データ・フレーム・シーケンス内の各表面データ・フレーム・シーケンスは、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスによってキャプチャされてもよく、前記複数のキャプチャ・デバイスは、現実世界シーンの異なるビューをキャプチャするように現実世界シーンに関しての異なるロケーションに配置されてもよい。特定の例において、オペレーション1502は、現実世界シーン内でイベントが発生した時に、リアルタイムで実行されてもよい。オペレーション1502は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1504において、仮想化プロジェクション生成システムは、キャプチャ・パラメータの第2の複数のセットを特定することができ、前記第2の複数のセットは、キャプチャ・パラメータの第1の複数のセット内に含まれるキャプチャ・パラメータのセットとは異なってもよい。例えば、キャプチャ・パラメータの第2の複数のセット内のキャプチャ・パラメータの各セットは、以下に関連してもよい:オペレーション1502に関連して上述した複数のキャプチャ・デバイスがキャプチャする現実世界シーンの異なるビューとは異なる現実世界シーンの各カスタマイズされるビュー。幾つかの例において、キャプチャ・パラメータの第2の複数のセットは、以下を含むことができる:オペレーション1502にて受信されキャプチャされる表面データ・フレーム・シーケンスに関連するキャプチャ・パラメータの第1の複数のセット内に含まれるものよりも更に大きな数のセット。オペレーション1502と同様、特定の実施において、オペレーション1504は、現実世界シーン内でイベントが発生した時にリアルタイムで実行されてもよい。オペレーション1504は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1506において、仮想化プロジェクション生成システムは、現実世界シーンの各カスタマイズされるビューの仮想化プロジェクションに関して色彩及び深度フレームをレンダリングすることができ、前記カスタマイズされるビューは、キャプチャ・パラメータの第2の複数のセットにおけるキャプチャ・パラメータのセットをオペレーション1504にて特定したものに関するものであってもよい。幾つかの例において、仮想化プロジェクション生成システムは、色彩及び深度フレームを以下に基づいてレンダリングすることできる:オペレーション1502で受信される複数のキャプチャされる表面データ・フレーム・シーケンス、及び、オペレーション1504で特定されるキャプチャ・パラメータの第2の複数のセット。オペレーション1502及び1504と同様、特定の実施において、オペレーション1506は、現実世界シーン内でイベントが発生した時にリアルタイムで実行されてもよい。オペレーション1506は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1508において、仮想化プロジェクション生成システムは、複数の仮想化される表面データ・フレーム・シーケンスを提供することができ、前記表面データ・フレーム・シーケンスは、オペレーション1506にてレンダリングされる現実世界シーンの各カスタマイズされるビューの仮想化プロジェクションに関する色彩及び深度フレームを含むことができる。例えば、仮想化プロジェクション生成システムは、複数の仮想化される表面データ・フレーム・シーケンスを、メディア・プレーヤ装置のためのバーチャル・リアリティ・メディア・コンテンツ内に含める目的で提供してもよい。オペレーション1502〜1506と同様、オペレーション1508は、現実世界シーン内でイベントが発生した時にリアルタイムで実行されてもよい。オペレーション1508は、本明細書に記載の方法のいずれかで実行されてもよい。
特定の実施形態において、本明細書に記載の1以上のシステム、コンポーネント、及び/又はプロセスは、1以上の適切に構成されたコンピューティング・デバイスによって実施及び/又は実行されてもよい。この目的のため、上述した1以上のシステム及び/又はコンポーネントは、以下を含んでもよく、又は、以下によって実装されてもよい:任意のコンピュータ・ハードウェア、及び/又は本明細書に記載の1以上のプロセスを実行するように構成される少なくとも1つの非一時的コンピュータ可読媒体に記録される、コンピュータで実装されるインストラクション(例えば、ソフトウェア)。特に、システム・コンポーネントは、1つの物理的なコンピューティング・デバイスによって実装されてもよいし、又は、複数の物理的なコンピューティング・デバイスで実装されてもよい。従って、システム・コンポーネントは、任意の数のコンピューティング・デバイスを含むことができ、そして、任意の数のコンピュータオペレーティングシステムを採用することができる。
特定の実施形態において、本明細書に記載の1以上のプロセスは、非一時的コンピュータ可読媒体に記録され、1以上のコンピューティング・デバイスによって実行可能なインストラクションとして、少なくとも部分的に実施されてもよい。一般的に、プロセッサ(例えば、マイクロプロセッサ)は、インストラクションを、非一時的コンピュータ可読媒体(例えば、メモリ等)から受け取り、そして、これらのインストラクションを実行し、これにより、本明細書に記載の1以上のプロセスを含む1以上のプロセスを実行する。こうしたインストラクションは、任意の様々な既知のコンピュータ可読媒体を使用して記憶することができ、及び/又は送ることができる。
コンピュータ可読媒体(プロセッサ可読媒体とも言う)は、任意の非一時的媒体を含み、コンピュータによって(例えば、コンピュータのプロセッサによって)読み取ることができるデータ(例えば、インストラクション)を提供することに寄与する。こうした媒体は、多くの形態をとることができ、限定されるものではないが、以下を含む:不揮発性メディア及び/又は揮発性メディア。不揮発性メディアは、以下を含むことができる:例えば、光学ディスク又は磁気ディスク及び他の固定メモリ。揮発性メディアは、以下を含むことができる:例えば、ダイナミック・ランダム・アクセス・メモリ(「DRAM」)であって、典型的にはメインメモリを構成する物。コンピュータ可読媒体の通常の形態として以下を含む:例えば、ディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、コンパクト・ディスク・リード・オンリ・メモリ(「CD−ROM」)、デジタル・ビデオ・ディスク(「DVD」)、任意の他の光学媒体、ランダム・アクセス・メモリ(「RAM」)、プログラマブル・リード・オンリ・メモリ(「PROM」)、電気的に消去可能なプログラマブル・リード・オンリ・メモリ(「EPROM」)、FLASH−EEPROM、任意の他のメモリチップ、若しくはカートリッジ、又はコンピュータが読み取り可能な任意の他の有形の媒体。
図16は、例示的なコンピューティング・デバイス1600を示し、当該デバイスは、特に、本明細書に記載の1以上のプロセスを実行するように構成されてもよい。図16に示すように、コンピューティング・デバイス1600は、以下を含むことができる:通信インターフェース1602、プロセッサ1604、ストレージ・デバイス1606、及び通信インフラ1610を介して通信可能に接続される入力/出力(「I/O」)モジュール1608。例示的なコンピューティング・デバイス1600を、図16に示すものの、図16に示すコンポーネントは、限定することを意図するものではない。追加又は代替のコンポーネントを、他の実施形態において使用してもよい。図16に示すコンピューティング・デバイス1600のコンポーネントを、以下で、更に詳細に説明する。
通信インターフェース1602は、1以上のコンピューティング・デバイスと通信するように構成されてもよい。通信インターフェース1602の例は、限定されるものではないが、以下を含む:有線ネットワーク・インターフェース(例えば、ネットワーク・インターフェース・カード)、ワイヤレス・ネットワーク・インターフェース(例えば、ワイヤレス・ネットワーク・インターフェース・カード)、モデム、オーディオ/ビデオ接続、及び任意の他の適切なインターフェース。
プロセッサ1604は、概して、任意のタイプ又は形態の処理ユニット(例えば、中央演算装置及び/又はグラフィックス・プロセッシング・ユニット)を表し、データを処理することができ、又は、本明細書に記載の1以上のインストラクション、プロセス、及び/若しくはオペレーションの実行を解釈し、実行し、及び/若しくは指示することができる。プロセッサ1604は、1以上のアプリケーション1612又は他のコンピュータ可読インストラクション(例えば、ストレージ・デバイス1606又は別のコンピュータ可読媒体に記憶されてもよい)に従って、オペレーションの実行を指示することができる。
ストレージ・デバイス1606は、1以上のデータ・ストレージ・メディア、デバイス、又は構成を含むことができ、そして、データストレージ・メディア及び/又はデバイスを任意のタイプ、任意の形態、及び任意の組み合わせで採用することができる。例えば、ストレージ・デバイス1606は、以下を含むことができるが、これらに限定されない:ハード・ドライブ、ネットワーク・ドライブ、フラッシュ・ドライブ、磁気ディスク、光学ディスク、RAM、ダイナミックRAM、他の不揮発性及び/又は揮発性のデータ・ストレージ・ユニット、又はこれらのコンビネーション若しくはサブコンビネーション。電子データは、本明細書に記載のデータを含むが、一時的に及び/又は永続的に、ストレージ・デバイス1606に記憶されてもよい。例えば、1以上の実行可能なアプリケーション1612を表すデータであって、プロセッサ1604に指示して本明細書に記載の任意のオペレーションを実行するように構成されるデータは、ストレージ・デバイス1606内に記憶されてもよい。幾つかの例において、データは、ストレージ・デバイス1606内に存在する1以上のデータベースに配置することができる。
I/Oモジュール1608は、1以上のI/Oモジュールを含むことができ、当該モジュールは、ユーザ入力を受け取り、そして、ユーザ出力を提供するように構成されてもよい。1以上のI/Oモジュールを用いて、単独のバーチャル・リアリティ・エクスペリエンスのためのインプットを受け取ってもよい。I/Oモジュール1608は、インプット及びアウトプット能力をサポートする任意のハードウェア、ファームウェア、ソフトウェア、又はこれらの組み合わせを含むことができる。例えば、I/Oモジュール1608は、ユーザ入力をキャプチャするハードウェア及び/又はソフトウェアを含むことができ、限定されるものではないが、以下を含むことができる:キーボード若しくはキーパッド、タッチスクリーン・コンポーネント(例えば、タッチスクリーン・ディスプレイ)、レシーバー(例えば、RF又は赤外線受信機)、モーション・センサ、及び/又は1以上のインプットボタン。
I/Oモジュール1608は、アウトプットをユーザに提示するために1以上のデバイスを含むことができ、限定されるものではないが、以下を含むことができる:グラフィックス・エンジン、ディスプレイ(例えば、ディスプレイ・スクリーン)、1以上のアウトプット・ドライバ(例えば、ディスプレイ・ドライバ)、1以上のオーディオ・スピーカ、及び1以上のオーディオ・ドライバ。特定の実施形態において、I/Oモジュール1608は、ユーザに提示するためのディスプレイにグラフィカルなデータを提供するように構成される。このグラフィカルなデータは、特定の実施に寄与することができる1以上のグラフィカル・ユーザ・インターフェース、及び/又は任意の他のグラフィカルなコンテンツを表すものであってもよい。
幾つかの例において、本明細書に記載の任意の設備は、コンピューティング・デバイス1600の1以上のコンポーネントによって実装されてもよく、又は当該コンポーネント内で実装されてもよい。例えば、ストレージ・デバイス1606内に存在する1以上のアプリケーション1612は、システム100(図1参照)の通信設備102、表面データ・フレーム・シーケンス・マネージメント設備104、又は仮想化プロジェクション生成設備106に関連する1以上のオペレーション又は機能を実行するようにプロセッサ1604に命令するように構成されてもよい。同様に、システム100のストレージ設備108は、ストレージ・デバイス1606によって実装されてもよく、又は該デバイス内で実装されてもよい。
上述の実施形態が、個人によって提供される個人情報を収集、記憶、及び/又は採用する限度において、以下のように理解されたい:こうした情報は、個人情報の保護に関する全ての適用可能な法律に従って、使用することができる。更には、こうした情報の収集、記憶、及び使用は、こうした活動に対する個人の同意を得てもよい(例えば、情報の状況及びタイプに適した良く知られた「オプトイン」又は「オプトアウト」プロセスを通して)。個人情報の記憶及び使用について、適切に安全な態様で、例えば、特にセンシティブな情報に対して様々な暗号化及び匿名化を通した情報のタイプを反映したものであってもよい。
上記説明において、様々な例示的実施形態について、添付図面に言及しながら説明してきた。しかし、以下の点は明白であろう:これらに対して様々な改変及び変更を行うことができ、そして、更なる実施形態を実施することができ、こうした、改変及び変更、並びに実施は、下記の特許請求の範囲に記載された発明の範囲から逸脱することなく、可能である。例えば、本明細書に記載の1つの実施形態の特定の特徴は、本明細書に記載の別の実施形態の特徴と組み合わせることができ、又は置き換えることができる。従って、上記説明及び図面は、限定的な意味ではなく、例示的な意味で理解すべきものである。