JP2020522191A - バーチャル・リアリティ・データをカスタマイズするための方法及びシステム - Google Patents

バーチャル・リアリティ・データをカスタマイズするための方法及びシステム Download PDF

Info

Publication number
JP2020522191A
JP2020522191A JP2019566147A JP2019566147A JP2020522191A JP 2020522191 A JP2020522191 A JP 2020522191A JP 2019566147 A JP2019566147 A JP 2019566147A JP 2019566147 A JP2019566147 A JP 2019566147A JP 2020522191 A JP2020522191 A JP 2020522191A
Authority
JP
Japan
Prior art keywords
virtual reality
experience
frame sequence
server
surface data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019566147A
Other languages
English (en)
Other versions
JP7217713B2 (ja
Inventor
デニー・ブライテンフェルト
ルネ・セプルベダ
マイケル・ロダト
パイ・ムードラジリ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Verizon Patent and Licensing Inc
Original Assignee
Verizon Patent and Licensing Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Verizon Patent and Licensing Inc filed Critical Verizon Patent and Licensing Inc
Publication of JP2020522191A publication Critical patent/JP2020522191A/ja
Application granted granted Critical
Publication of JP7217713B2 publication Critical patent/JP7217713B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/036Insert-editing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/189Recording image signals; Reproducing recorded image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/324Colour aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/9201Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving the multiplexing of an additional signal and the video signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

例示的なバーチャル・リアリティ・システム(「システム」)は、体験選択データ構造を生成し、前記体験選択データ構造は、メディア・プレーヤ装置が異なるバーチャル・リアリティ体験をユーザに提供する際に、前記体験選択データ構造内に含まれる異なるエントリの前記メディア・プレーヤ装置による動的選択を促進するように構成され、前記生成は、前記メディア・プレーヤ装置が選択する異なるエントリに対応する異なるバーチャル・リアリティ・データセットを処理を行うことによる。前記システムは、前記体験選択データ構造を前記メディア・プレーヤ装置に提供し、そして、前記メディア・プレーヤ装置がエントリを前記体験選択データ構造の手段により選択する旨を検出する。前記エントリは、特定のバーチャル・リアリティ・データセットに対応し、前記データセットは、特定のバーチャル・リアリティ体験へカスタマイズされる。前記エントリの選択に応答して、前記システムは、前記メディア・プレーヤ装置に、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを提供する。

Description

関連出願
本願は、2017年5月31日に出願され、「METHODS AND SYSTEMS FOR CUSTOMIZING VIRTUAL REALITY DATA」と題され、その全体が参照により本明細書に組み込まれている米国特許出願第15/610,593号に対する優先権を主張する。
バーチャル・リアリティ・メディア・プロバイダは、バーチャル・リアリティ・データを、メディア・プレーヤ装置に提供することができ、前記装置は、バーチャル・リアリティ・データを処理することができ、その目的は、バーチャル・リアリティ体験をメディア・プレーヤ装置のユーザに提供することであってもよい。例えば、特定のバーチャル・リアリティ体験の手段により、ユーザは、相互作用するバーチャル・リアリティ世界に没入することができ、前記世界を、ユーザは、体験することができ、当該体験は、ユーザーの注意を、バーチャル・リアリティ世界に同時に提示される任意の様々な物に注意を向けることによって行うことができる。例えば、ユーザはバーチャル・リアリティ世界を任意の方向に見回すことができ、これが、ユーザにある感覚をもたらすことができ、前記感覚とは、ユーザがバーチャル・リアリティ世界内に実際に存在し、そして、バーチャル・リアリティ世界を、バーチャル・リアリティ世界内の特定のロケーション及び視界(例えば、角度、ビューポイント等)から体験しているという感覚である。
添付図面は様々な実施形態を示し、本明細書の一部である。示した実施形態は例示にすぎず、本開示の範囲を限定する物ではない。図面を通して、同一の又は類似の参照番号は、同一又は類似の要素を示す。
本明細書に記載の原理に従ってバーチャル・リアリティ・データをカスタマイズするための例示的なバーチャル・リアリティ・システムを示す。
本明細書に記載の原理に従ってユーザに提示されるバーチャル・リアリティ体験が関連する可能性がある例示的な3次元の(「3D」)シーンを示す。
本明細書に記載の原理に従って、ユーザに提供可能な異なるバーチャル・リアリティ体験にそれぞれ関連する図2の3Dシーンの複数の例示的な領域を示す。
本明細書に記載の原理に従って、例示的なバーチャル・リアリティ体験を記述する例示的なエクスペリエンス・パラメータのセットを示す。
本明細書に記載の原理に従って、異なるキャプチャ・デバイスによってキャプチャすることができる図2の3Dシーンの複数のビューを示す。
本明細書に記載の原理に従って図2の3Dシーンの基礎となり得る現実世界シーンを表す表面データ・フレーム内・シーケンス内に含める目的で色彩フレーム及び深度フレームをキャプチャする例示的なキャプチャ・デバイスを示す。
本明細書に記載の原理に従って、図5Aのキャプチャ・デバイスによってキャプチャされる色彩フレームにて表現される色彩データの例示的なグラフィカルな描写を示す。
本明細書に記載の原理に従って、図5Aのキャプチャ・デバイスによってキャプチャされる深度フレームにて表現される深度データの例示的なグラフィカルな描写を示す。
本明細書に記載の原理に従って、図2の3Dシーンを表し、図5Aのキャプチャ・デバイスによって生成される例示的な表面データ・フレーム・シーケンスの異なる表現を示す。 本明細書に記載の原理に従って、図2の3Dシーンを表し、図5Aのキャプチャ・デバイスによって生成される例示的な表面データ・フレーム・シーケンスの異なる表現を示す。
本明細書に記載の原理に従った図2の3Dシーンの複数のビューを示し、前記ビューは、図4のビューを含み、更に、追加の例示的なビューを含み、前記追加の例示的なビューは、仮想化される表面データ・フレーム・シーケンスに対応する。
本明細書に記載の原理に従った例示的なフレーム・シーケンス・サブセットを示し、前記フレーム・シーケンス・サブセットは、体験選択データ構造における異なるエントリに対応する異なるバーチャル・リアリティ・データセットの基礎となる。
本明細書に記載の原理に従った例示的な体験選択データ構造を示し、前記体験選択データ構造は、前記体験選択データ構造内に含まれる複数のエントリからの異なるエントリの動的選択を促進するように構成される。
本明細書に記載の原理に従った例示的な構成を示し、ここで、例示的なバーチャル・リアリティ・メディア・プロバイダ・システムはバーチャル・リアリティ・データをカスタマイズする。 本明細書に記載の原理に従った例示的な構成を示し、ここで、例示的なバーチャル・リアリティ・メディア・プロバイダ・システムはバーチャル・リアリティ・データをカスタマイズする。
本明細書に記載の原理に従った表面データ・フレーム・シーケンスを示し、前記表面データ・フレーム・シーケンスは、個別のトランスポート・ストリームの手段により送信される。
本明細書に記載の原理に従った例示的なタイムラインを示し、前記タイムラインは、タイムフレームを描写し、前記タイムフレーム内で、色彩フレーム及び深度フレームがゲートキーパ・サーバによって受信され、タイムフレームは、色彩フレーム及び深度フレームがゲートキーパ・サーバによって同期して送信されるように指定される。
本明細書に記載の原理に従った例示的なバーチャル・リアリティ・データセットを示し、前記バーチャル・リアリティ・データセットは、トランスポート・ストリームとして実装され、前記トランスポート・ストリームは、複数のビデオ・データ・ストリームを含み、そして、メディア・プレーヤ装置へストリーミングする目的で構成される。
本明細書に記載の原理に従った様々な例示的なタイプのメディア・プレーヤ装置を示し、当該装置は、バーチャル・リアリティ・メディア・コンテンツを体験するユーザによって使用することができる。
本明細書に記載の原理に従った例示的なバーチャル・リアリティ体験を示し、ここで、ユーザには、例示的なバーチャル・リアリティ・メディア・コンテンツが提示され、前記バーチャル・リアリティ・メディア・コンテンツは、3Dシーンに対する例示的な任意の位置に対応する動的に選択可能なバーチャル・ビューポイントから体験される3Dシーンに基づく。
本明細書に記載の原理に従ってバーチャル・リアリティ・データをカスタマイズするための例示的な方法を示す。 本明細書に記載の原理に従ってバーチャル・リアリティ・データをカスタマイズするための例示的な方法を示す。 本明細書に記載の原理に従ってバーチャル・リアリティ・データをカスタマイズするための例示的な方法を示す。
本明細書に記載の原理に従った例示的なコンピューティング・デバイスを示す。
特定のバーチャル・リアリティ体験において、複数の異なるメディア・プレーヤ装置に関連する複数のユーザは、同一のバーチャル・リアリティ世界を同時に体験することを望む可能性がある。例えば、バーチャル・リアリティ・メディア・プロバイダは、特定のバーチャル・リアリティ世界の特定の3次元の(「3D」)シーンを表すバーチャル・リアリティ・データを提供することができ、前記バーチャル・リアリティ世界は、複数の異なるユーザが各メディア・プレーヤ装置を使用して体験することを望む可能性がある。従って、バーチャル・リアリティ・メディア・プロバイダは、同一のバーチャル・リアリティ・データを各メディア・プレーヤ装置に提供することができ、前記装置は、バーチャル・リアリティ・データをリクエストし、これにより、全てのメディア・プレーヤ装置が、バーチャル・リアリティ・データを処理して、各バーチャル・リアリティ体験を各ユーザに提供することを可能にする。
この目的のため、バーチャル・リアリティ・データカスタマイズするための方法及びシステムについて、本明細書にて説明する。例えば、より詳細に後述するが、例示的なバーチャル・リアリティ・システムは、メタデータにアクセスすることができ、前記メタデータは、複数の表面データ・フレーム・シーケンス(例えば、色彩フレーム及び深度フレームのシーケンス)を記述することができ、前記シーケンスは、それぞれ、3次元の(「3D」)シーンの異なるビューを描写することができる。メタデータに記述されるが、例えば、比較的膨大な数の表面データ・フレーム・シーケンスは、以下を含むことができる:3Dシーンに対して比較的膨大な数の異なるロケーション、角度、視野等からキャプチャされる3Dシーンを表すデータ。
また、バーチャル・リアリティ・システムは、エクスペリエンス・パラメータのセットを特定することができ、前記エクスペリエンス・パラメータのセットは、3Dシーンに関連する複数のバーチャル・リアリティ体験内に含まれる特定のバーチャル・リアリティ体験を記述することができる。各複数のバーチャル・リアリティ体験(即ち、特定のバーチャル・リアリティ体験を含む)は、メディア・プレーヤ装置によって、ユーザに提供可能であってもよい。例えば、複数の提供可能なバーチャル・リアリティ体験内の異なるバーチャル・リアリティ体験は、それぞれ、3Dシーンの異なる領域に関連してもよく、前記領域から、バーチャル・リアリティ体験が各ユーザに提供され、又は、様々な他のパラメータに関連してもよく、前記パラメータは、バーチャル・リアリティ体験に関して定義されてもよく、これについては後述する。かくして、メディア・プレーヤ装置は、以下の動作を行うように構成されてもよい:は、バーチャル・リアリティ体験をユーザに提供することができ、前記提供は、各バーチャル・リアリティ・データセットを処理することによってもよく、前記バーチャル・リアリティ・データセットは、複数のバーチャル・リアリティ体験における各バーチャル・リアリティ体験へとカスタマイズされてもよい(例えば、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを含む)。例えば、3Dシーンの特定の領域に関連するバーチャル・リアリティ体験へカスタマイズされるバーチャル・リアリティ・データセットは、以下を含むことができる:3Dシーンの他の領域に関連するバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットに含まれるものと比べた、3Dシーンの特定の態様に関するより多くの詳細及び3Dシーンの他の態様に関するより少ない詳細。
複数のデータフレーム・シーケンスに関連する前記特定されるエクスペリエンス・パラメータのセット及びメタデータに基づいて、バーチャル・リアリティ・システムは、表面データ・フレーム・シーケンスを、複数の表面データ・フレーム・シーケンスから、フレーム・シーケンス・サブセット内に含める目的で選択することができ、前記フレーム・シーケンス・サブセットは、特定のバーチャル・リアリティ・データセットの基礎となることができる(例えば、バーチャル・リアリティ・データセットが生成される際に、特定のバーチャル・リアリティ・データセットの基礎となる)。例えば、比較的少数の表面データ・フレーム・シーケンスを含むフレーム・シーケンス・サブセットは、複数の表面データ・フレーム・シーケンス内の比較的膨大な数の利用可能な表面データ・フレーム・シーケンスから選択されてもよく、フレーム・シーケンス・サブセットに基づく特定のバーチャル・リアリティ・データセットが特定のバーチャル・リアリティ体験へとカスタマイズされることを可能にすることができる(例えば、他の関係の低い詳細を除外しつつも、特定のバーチャル・リアリティ体験に関連する3Dシーンの特定の詳細を含める)。
フレーム・シーケンス・サブセット内に含める目的での表面データ・フレーム・シーケンスの選択に基づいて、バーチャル・リアリティ・システムは、以下を含むことができる:体験選択データ構造内の特定のバーチャル・リアリティ・データセットに対応するエントリ。より具体的には、バーチャル・リアリティ・システムは、体験選択データ構造を生成することができ、前記体験選択データ構造は、メディア・プレーヤ装置が異なるバーチャル・リアリティ・データセットを処理して異なるバーチャル・リアリティ体験をユーザに提供する際に、メディア・プレーヤ装置による異なるエントリの動的選択(例えば、前記体験選択データ構造内に含まれる複数のエントリからの)を促進するように構成されてもよく、そして、バーチャル・リアリティ・システムは、以下を含むことができる:生成される体験選択データ構造内の特定のバーチャル・リアリティ・データセットに対応するエントリ。ちょうど、エントリが、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットへと対応するように、体験選択データ構造内の各複数のエントリは、異なるバーチャル・リアリティ・データセットと対応してもよく、前記異なるバーチャル・リアリティ・データセットは、複数の提供可能なバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験へとカスタマイズされてもよい。
いったん、体験選択データ構造が生成されて、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットに対応するエントリを含むと、バーチャル・リアリティ・システムは、体験選択データ構造をメディア・プレーヤ装置に提供することができる。バーチャル・リアリティ・システムは、その後、以下を検出することができる:メディア・プレーヤ装置が(例えば、提供される体験選択データ構造の手段により、体験選択データ構造内に含まれる複数のエントリから)エントリを選択したこと、ここで、前記エントリは、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットに対応する。特定のバーチャル・リアリティ・データセットに対応するエントリをメディア・プレーヤ装置が選択する旨の検出に応答して、バーチャル・リアリティ・システムは、メディア・プレーヤ装置へ、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを提供することができる。結果として、メディア・プレーヤ装置は、特定のバーチャル・リアリティ・データセットを受信することができ、そして、特定のバーチャル・リアリティ・データセットを処理して、特定のバーチャル・リアリティ体験をユーザに提供することができる。
バーチャル・リアリティ・データをカスタマイズするための本明細書に記載のシステム及び方法は、様々な長所及び利点を提供することができる。一例として、本明細書に記載のシステム及び方法は、バーチャル・リアリティ・メディア・プロバイダ・システムが効率的にバーチャル・リアリティ・データを配信することを可能にし、前記バーチャル・リアリティ・データは、特定のユーザに提供されている特定のエクスペリエンスへと動的にカスタマイズされてもよい。配信されるバーチャル・リアリティ・データをカスタマイズすることにより、任意の特定のメディア・プレーヤ装置へ配信される冗長な及び/又は無関係なデータは、著しく減らすことができる。かくして、本明細書に記載の方法及びシステムを採用するプロバイダ・システムは、より高いクオリティ及び/又はより没入性の高いエクスペリエンスを、ユーザーに提供することを可能にし(例えば、より高度なイメージ・クオリティ、更なる詳細によって特徴づけられるエクスペリエンス等)、前記提供は、本明細書に記載の方法及びシステムを採用しない従来のプロバイダ・システムと比較して、より少ないデータを、ユーザが使用するメディア・プレーヤ装置に提供している場合であっても可能である。
これに加えて、又はこれに代えて、本明細書に記載のシステム及び方法は、現実的で、効率的で、高いクオリティで、バーチャル・リアリティ・データを、複数のユーザ(例えば、たとえ、非常に膨大な数のユーザを含んでいても)に同時に配信することを促進することができる。例えば、多くの表面データ・フレーム・シーケンス・オプション(例えば、仮想化される表面データ・フレーム・シーケンスを含む、これについては後述する)にアクセスするバーチャル・リアリティ・メディア・プロバイダ・システムは、システムが特定のメディア・プレーヤ装置に特定の時間で提供するデータの選択における柔軟性を向上させるという利点を享受することができる。例えば、3Dシーンの全ての態様を描写するのに利用可能となる可能性のある全てのデータ(例えば、高いボリュームの高分解能データ)を配信するのではなく、当該配信は、大量のデータが原因となって非現実的又は不可能となる可能性があるが、本明細書に記載の方法及びシステムは、カスタマイズされるデータのより選択的な且つ柔軟な配信を促進することができる。
一例として、第1のバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセット(例えば、膨大な数の利用可能な表面データ・フレーム・シーケンスから選択される幾つかの(a few)表面データ・フレーム・シーケンスを表すデータ)は、第1のメディア・プレーヤ装置に配信することができ、3Dシーンの一部分に関して高いレベルでの詳細を提供することができ、前記3Dシーンは、第1のメディア・プレーヤ装置を使用して第1のバーチャル・リアリティ体験を体験しているユーザに関連してもよい。同時に、第2のバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセット(例えば、異なる表面データ・フレーム・シーケンスを表すデータ)は、第2のメディア・プレーヤ装置に配信することができ、3Dシーンの異なる一部に関して高いレベルでの詳細を提供することができ、前記3Dシーンは、第2のメディア・プレーヤ装置を使用して第2のバーチャル・リアリティ体験を体験している異なるユーザに関連してもよい。かくして、バーチャル・リアリティ・メディア・プロバイダ・システムは、同時に、第1の及び第2のメディア・プレーヤ装置の両方に、個々にカスタマイズされるバーチャル・リアリティ・データセットを提供することができ、前記データセットは各ユーザに関連してもよく(例えば、ユーザが体験している3Dシーン各部分に関してカスタマイズされ、ローカライズされるデータを含む)、その一方で、メディア・プレーヤ装置、及びメディア・プレーヤ装置と通信するために使用されるいずれの配信チャンネルのいずれに対しても、各ユーザへの関連が薄い3Dシーンの部分に関する(例えば、いずれにしろユーザーが鑑賞できない詳細)過剰な量の冗長なデータ又は詳細データによる負荷をかけなくてもよい。かくして、ユーザ・エクスペリエンスが向上しつつも、データ配信を向上させることができる(例えば、クライアント・サイドメディア・プレーヤ装置へ配信されるデータの必要量を減らすことによって、より効率的で、より早く、そして、より効果的となる)(例えば、3Dシーンの最も関連する部分のみを高いクオリティで表現したものを動的に含むようにバーチャル・リアリティ・データセットをカスタマイズすることで、より現実的でより没入性を高くすることができる)。
更には、後で明らかになるが、本明細書に記載のバーチャル・リアリティ・データをカスタマイズするための方法及びシステムは、本明細書に記載の体験選択データ構造を使用することによって、メディア・プレーヤ装置に対して、以下を促進することができる:メディア・プレーヤ装置のユーザが有する異なるバーチャル・リアリティ体験に関して、適切なバーチャル・リアリティ・データセットを動的にトラッキング及びリクエストすること。このようにして、メディア・プレーヤ装置は、カスタマイズされるデータを継続的に且つ効率的に受信することができ、その一方で、異なるメディア・プレーヤ装置によって提供されるユーザ・エクスペリエンスをトラッキングするタスクを、プロバイダ・システムに関して減少させることができる。更には、開示されるバーチャル・リアリティ・データカスタマイズするための方法及びシステムは、プロバイダ・システムが以下をサポートすることを可能にするべく高度なスケーラビリティを有してもよい:任意のサイズの3Dシーン(例えば、非常に巨大な3Dシーン)、任意のクオリティの3Dシーン(例えば、高度なキャプチャ・デバイスによってキャプチャされる3Dシーン等)、非常に動的且つアクティブな3Dシーン(例えば、膨大な数のオブジェクト、及びオブジェクト間の相互作用を含む3Dシーン等)、及び、他の没入性の3Dシーン。
様々な実施形態について、図面に言及しながら、以下、更に説明する。開示の方法及びシステムは、上述した1以上の利点を提供することができ、並びに/又は、様々な追加の及び/若しくは代替の利点を提供することができ、これらについては、本明細書で明らかになるであろう。
図1は、バーチャル・リアリティ・データをカスタマイズするための例示的なバーチャル・リアリティ・システム100(「システム100」)を示す。示しているが、システム100は、限定されるものではないが、以下を含むことができる:体験(エクスペリエンス)選択データ構造管理設備102(「管理設備102」)、バーチャル・リアリティ・データセット管理設備104(「管理設備104」)及びストレージ設備106(互いに選択可能に且つ通信可能に接続される)。以下の点を理解されたい:設備102〜106は、図1では別個の設備として示されているが、設備102〜106は、より少ない数の設備(例えば、単独の設備に)に結合されてもよく、又は、特定の実施に寄与することができるより数多くの設備に分割されてもよい。幾つかの例において、設備102〜106各々は、特定の実施に寄与することができる複数のコンピューティング・デバイス(例えば、複数のサーバ)及び/又は複数のロケーションの間で分散されてもよい。更には、システム100の特定の実施において、図1に示す特定の設備(こうした設備に関連する関連機能)はシステム100から省略してもよい。例えば、システム100の特定の実装は、管理設備102及びストレージ設備106だけを含むことができ、システム100の別の実装は、管理設備104及びストレージ設備106だけを含むことができ、以下同様であってもよい。設備102〜106各々について以下説明する。
管理設備102は、以下を含むことができる:1以上の物理的なコンピューティング・デバイス(例えば、ハードウェア及び/又はソフトウェア・コンポーネント(例えば、プロセッサ、メモリ、通信インターフェース、プロセッサが実行するためにメモリに記憶されるインストラクション等))、ここで、前記デバイスは、様々なオペレーションを実行することができ、前記オペレーションは、体験選択データ構造の設計、プランニング、生成及び管理に関連してもよく、前記体験選択データ構造の設計は、複数のエントリを含んでもよく、且つ、メディア・プレーヤ装置が異なるバーチャル・リアリティ体験をユーザに提供する際に、メディア・プレーヤ装置による複数のエントリからの異なるエントリの動的選択を促進するように構成されてもよい。この目的のため、管理設備102は、メタデータにアクセスすることができ、前記メタデータは、複数の表面データ・フレーム・シーケンスを記述することができ、前記シーケンスは、3Dシーンの異なるビューをそれぞれ描写することができる。
管理設備102は、特定の実施に寄与することができる任意の態様で、メタデータにアクセスすることができる。例えば、特定の実施形態において、3Dシーンは、現実世界シーンであってもよく、そして、複数の表面データ・フレーム・シーケンスにおける1以上の表面データ・フレーム・シーケンスは、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスによってキャプチャ(例えば、生成)されてもよく、前記キャプチャ・デバイスは、現実世界シーンの異なるビューをキャプチャするように現実世界シーンに関しての異なるロケーションに配置されてもよい。かくして、管理設備102は、メタデータにアクセスすることができ、前記アクセスは、複数のキャプチャ・デバイスから直接キャプチャされる表面データ・フレーム・シーケンスにアクセス(例えば、受信すること、リクエストすること、及び獲得すること等)することによってもよい。他の例において、1以上の他のシステム(例えば、現実世界シーン・キャプチャ・システム)は、キャプチャ・デバイスとシステム100との間を仲介することができ、その結果、管理設備102は、1以上の他のシステムの手段により、メタデータにアクセスすることができる。更には、キャプチャされる表面データ・フレーム・シーケンスを記述するメタデータと共に、管理設備102は、仮想化される表面データ・フレーム・シーケンス(即ち、1以上のキャプチャされる表面データ・フレーム・シーケンスから派生する又はこれに基づいてレンダリングされる表面データ・フレーム・シーケンス)を記述するメタデータにも同様の方法でアクセスすることができる。キャプチャされ且つ仮想化される表面データ・フレーム・シーケンスについては、後で更に詳細に説明する。
また、管理設備102は、エクスペリエンス・パラメータのセットを特定することができ、前記パラメータのセットは、特定のバーチャル・リアリティ体験を記述することができ、前記特定のバーチャル・リアリティ体験は、3Dシーンに関連する複数のバーチャル・リアリティ体験内に含まれ、前記特定のバーチャル・リアリティ体験は、メディア・プレーヤ装置によってユーザに提供可能であってもよく、当該提供は、メディア・プレーヤ装置が、各バーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットを処理したときに可能であってもよい。管理設備102は、任意の適切な態様で、エクスペリエンス・パラメータのセットを特定することができる(複数のバーチャル・リアリティ体験内に含まれる他のバーチャル・リアリティ体験を記述するエクスペリエンス・パラメータの追加のセットを特定すること(identifying)と共に)。例えば、管理設備102は、3Dシーンを異なる領域に分割することができ、前記分割は、3Dシーンの特定の属性に基づいてもよく、そして、前記管理設備102は、エクスペリエンス・パラメータの各セット内に含まれる各パラメータを用いて領域を指定してもよい。別の例として、管理設備102は、どのようなメディア・プレーヤ装置の技術的能力が、3Dシーンに関してサポートされるべきであるかを決定することができ、そして、エクスペリエンス・パラメータの各セット内に含まれるべきサポートされる技術的能力を表す各パラメータを指定することができる。エクスペリエンス・パラメータのセット内に含むことができるエクスペリエンス・パラメータの様々な例については後述する。
複数のデータフレーム・シーケンスに関連する前記特定されるエクスペリエンス・パラメータのセット及びメタデータに基づいて、管理設備102は、表面データ・フレーム・シーケンスを、複数の表面データ・フレーム・シーケンスから、フレーム・シーケンス・サブセット内に含める目的で選択することができ、前記フレーム・シーケンス・サブセットは、特定のバーチャル・リアリティ・データセット(例えば、特定のバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセット)の基礎となってもよい。換言すれば、管理設備102は、表面データ・フレーム・シーケンスを、フレーム・シーケンス・サブセット内に含める目的で選択することができ、前記フレーム・シーケンス・サブセットは、特定のバーチャル・リアリティ・データセットが生成されるときの、特定のバーチャル・リアリティ・データセットの基礎となってもよい(例えば、管理設備104によって、これについては後述する)。
フレーム・シーケンス・サブセット(即ち、特定のバーチャル・リアリティ・データセットの基礎となるフレーム・シーケンス・サブセット)内に含める目的での表面データ・フレーム・シーケンスの選択に基づいて、管理設備102は、体験選択データ構造を生成することができ、そして、体験選択データ構造内に、特定のバーチャル・リアリティ・データセットに対応するエントリを含むことができる。例えば、上述したように、体験選択データ構造内に含まれる複数のエントリ(例えば、特定のバーチャル・リアリティ・データセットに対応するエントリを含む)は、各々、異なるバーチャル・リアリティ・データセットに対応してもよく、前記異なるバーチャル・リアリティ・データセットは、複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験にカスタマイズされてもよい。かくして、メディア・プレーヤ装置が異なるバーチャル・リアリティ体験をユーザに提供する際に、(例えば、メディア・プレーヤ装置のユーザがバーチャル・ビューポイントに関して3Dシーン内の領域から領域への移動を引き起こす際に)、管理設備102は、体験選択データ構造を生成して、メディア・プレーヤ装置による異なるエントリの動的選択を促進することができる。管理設備102は、更に以下を実行することができる:本明細書に記載の他のオペレーション、及び/又は、システム100の特定の実施に寄与することができる他のオペレーション。
管理設備104は、以下を含むことができる:1以上の物理的なコンピューティング・コンポーネント(例えば、管理設備102とは別個の、又は、管理設備102と共有されるハードウェア及び/又はソフトウェア・コンポーネント)、ここで、前記コンポーネントは、メディア・プレーヤ装置が異なるバーチャル・リアリティ体験を異なるユーザに提供する際に、メディア・プレーヤ装置と相互作用する、及び、異なるバーチャル・リアリティ・データセットをメディア・プレーヤ装置に提供することに関連する様々なオペレーションを実行することができる。具体的には、例えば、管理設備104は:管理設備102によって生成される体験選択データ構造をメディア・プレーヤ装置に提供することができ;メディア・プレーヤ装置が(例えば、前記体験選択データ構造の手段により、)特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットに対応するエントリを選択することを検出することができ;前記検出に応答して、記特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを提供することができる(即ち、メディア・プレーヤ装置へ)。管理設備104は、更に以下を実行することができる:本明細書に記載の他のオペレーション、及び/又は、システム100の特定の実施に寄与することができる他のオペレーション。
上述したように、管理設備102及び104は、様々なデータ(例えば、メタデータ、エクスペリエンス・パラメータのセット、体験選択データ構造、エントリ選択、バーチャル・リアリティ・データセット等)の通信を、バーチャル・リアリティ・メディア・プロバイダ・パイプライン内の様々なサーバ・、及び、クライアント・サイド・デバイス、並びに、システムと行うことができる。本明細書で使用するが、「サーバ・サイド」は、サーバ・クライアント間のトランザクション(例えば、コンテンツ提供システムがデータ(例えば、バーチャル・リアリティ・データ)をエンドユーザが使用するクライアント・デバイスに提供するトランザクション)のうちサーバ・サイド(例えば、プロバイダ・サイド)を意味してもよい。例えば、バーチャル・リアリティ・メディア・プロバイダ・システムは、バーチャル・リアリティ・データをユーザに関連するメディア・プレーヤ装置に提供することができる。かくして、サーバ・サイドシステム及びコンポーネントは、コンテンツ提供システムがデータ(例えば、バーチャル・リアリティ・データセット)をメディア・プレーヤ装置に提供(例えば、ネットワークの手段により)することに関連する(例えば、内包される、実装される、共同動作する等)システム及びコンポーネントを意味してもよい。一方で、「クライアント・サイド」デバイスは、クライアント・デバイス(例えば、メディア・プレーヤ装置)に関連することができ、クライアント・デバイスは、ネットワークの他方に位置するユーザによって使用することができ、「クライアント・サイド」デバイスは、以下を含むことができる:クライアント・デバイスがデータをコンテンツ提供システムから受信することを促進するデバイス(例えば、メディア・プレーヤ装置、及び/又は、ネットワークのユーザ・サイド上でユーザが操作する他のコンピュータ・コンポーネント)。これらの通信を行うべく、管理設備102及び104は、以下の動作を行うように構成されてもよい:特定の実施に寄与することができる任意の通信インターフェース、プロトコル、及び/又は技術を使用して、サーバ・サイド及び/又はクライアント・サイド・システムと通信すること。例えば、管理設備102及び104は、以下の手段の1以上によって通信するように構成されてもよい:ネットワーク(例えば、有線又はワイヤレスなローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、プロバイダ・ネットワーク、インターネット等)、有線の通信インターフェース(例えば、Universal Serial Bus (「USB」))、ワイヤレス通信インターフェース、又は、任意の他の適切な通信インターフェース、プロトコル、及び/若しくは技術。
ストレージ設備106は、以下を記憶、及び/又は、管理することができる:特定の実施において、管理設備102及び104によって、アクセスされる、受信される、生成される、管理される、トラッキングされる、維持される、使用される、提供される、及び/又は送信される任意の適切なデータ。例えば、示すように、ストレージ設備106は、以下を含むことができる:本明細書に記載の方法のいずれかで、受信、生成、マネージメント、トラッキング、管理、使用、及び/又は送信(例えば、他のシステムに提供)されてもよい管理データ108及び/又はバーチャル・リアリティ・データセット110。管理データ108は、以下を含むことができる:表面データ・フレーム・シーケンスを記述するメタデータを含む表面データ・フレーム・シーケンス・データ(例えば、表面データ・フレーム・シーケンスに関連するキャプチャ・パラメータのセット)、3Dシーンを表すデータ、エクスペリエンス・パラメータの異なるセットを表すデータ、若しくは、エクスペリエンス・パラメータのセットを生成するために使用されるデータ、フレーム・シーケンス・サブセット及び前記フレーム・シーケンス・サブセット内に含まれる選択される表面データ・フレーム・シーケンスを表すデータ、フレーム・シーケンス・サブセットの選択を実行するために使用されるデータ、体験選択データ構造を表すデータ、並びに/又は体験選択データ構造を生成(例えば、動的に生成)するために使用されるデータ等。バーチャル・リアリティ・データセット110は、データ・ストリーム(例えば、表面データ・フレーム・シーケンスに基づいてエンコードされるビデオ・データ・ストリーム)を含むことができ、前記データ・ストリームは、メディア・プレーヤ装置にトランスポートする目的で1以上のトランスポート・ストリームにパッケージ化されてもよく、及び/又は、バーチャル・リアリティ・データセット110は、メディア・プレーヤ装置に提供されてもよいバーチャル・リアリティ・データセットに関連する任意の他のデータを含むことができる。更には、ストレージ設備106は、以下を含むことができる:本明細書に記載のオペレーションを実行する目的でシステム100の特定の実施によって使用される他のタイプのデータ(例えば、インストラクション(例えば、プログラミング・インストラクション))、及び/又は本明細書に記載のオペレーションを実行するために管理設備102及び104によって使用される他のデータ。
幾つかの例において、3Dシーンは、現実世界シーンの要素を含むことができ、前記現実世界シーンは、複数のキャプチャ・デバイスによってキャプチャされてもよく、前記デバイスは、現実世界シーンに対して異なるロケーションに配置されてもよく、結果として、現実世界シーンの異なるビューをキャプチャすることができる。これらの例の幾つかにおいて、システム100は、現実世界シーン内でイベントが発生したときに、1以上の本明細書に記載のオペレーションをリアルタイムで実行することができる。従って、他のシステムもリアルタイムで動作し、システム100がバーチャル・リアリティ・メディア・プロバイダ・パイプライン内にで使用される実装において、バーチャル・リアリティ・データセットを、メディア・プレーヤ装置に提供することができ、その結果、メディア・プレーヤ装置の各ユーザは、現実世界シーンの近くに物理的に位置することができないが、現実世界シーン(例えば、現実世界シーン内で発生しているイベント)を体験することを望む可能性があり、メディア・プレーヤ装置の各ユーザは、ユーザの各メディア・プレーヤ装置を使用して、現実世界シーン、及び、現実世界シーン内で発生するイベントを、仮想的に、ライブ形式で(例えば、イベントが発生した時にリアルタイムで)体験することができる。データ処理及びデータ配信について、現実世界シーン内でイベントが発生した時にユーザが現実世界シーンを正確に体験することが不可能となるような有限量の時間がかかる可能性がある。その一方で、本明細書で使用するが、オペレーションが即時に且つ過度の遅延なく実行される場合には、オペレーションは、「リアルタイム」で実行されるものとする。従って、以下の場合であっても、ユーザが、現実世界シーンをリアルタイムで体験するといってもよい:ユーザが、現実世界シーン内にて、ある遅延の後(例えば、発生事象が実際に起こってから数秒後又は数分後(a few seconds or minutes))で特定のイベントを体験した場合。
システム100の様々な実装で、バーチャル・リアリティ・データをどのように操作してカスタマイズするかを更に示すべく、システム100によって実行されるオペレーション、及び/又は、バーチャル・リアリティ体験をユーザに提供するためのメディア・プレーヤ装置によって実行されるオペレーションの様々な態様について以下説明する。
図2は、例示的な3Dシーン202を示し、前記3Dシーンは、ユーザに提示されるバーチャル・リアリティ体験に関連してもよい。例えば、3Dシーン202は以下を表現することができる:現実世界オブジェクトを含む現実世界シーン、バーチャル・オブジェクトを含むバーチャル・シーン、現実世界オブジェクト及びバーチャル・オブジェクトの組み合わせを含む融合現実シーン、又は、特定の実施に寄与することができる別の適切な3Dシーン。
本明細書で使用するが、現実世界シーンは、以下を表現することができる:任意の現実世界の景色、現実世界のロケーション、現実世界のイベント(例えば、ライブ・イベント等)、又は、特定の実施に寄与することができる現実世界に存在する他の対象物(例えば、バーチャル世界又は仮想世界にのみ存在するものとは対照的に)。幾つかの例において、現実世界シーンは、具体的には、線引きされたエリアであってもよい(例えば、ステージ、プレーする表面(例えば、バスケットボールのコート)、アリーナ等)。逆に、他の例において、現実世界シーンは、さほど、区画化又は線引きされなくてもよい。例えば、現実世界シーンは、以下を含むことができる:任意のインドア又はアウトドアの現実世界のロケーション(例えば、街の通り、ミュージアム、眺めの良い風景等)。特定の例において、現実世界シーンは、以下に関連してもよい:現実世界のイベント(例えば、スポーツ・イベント、ミュージカル・イベント、演劇又はシアターのプレゼン、大規模な祝事(例えば、タイムズ・スクエアでの大晦日、マルディ・グラ等)、政治的なイベント、又は、他の現実世界のイベント)。同一の又は他の例において、現実世界シーンは、以下に関連してもよい:フィクション化されるシーン(例えば、ライブ・アクションのバーチャル・リアリティのテレビ・ショー又は映画のセット)に関するセッティング、及び/又は特定の実施に寄与することができる任意の他のインドア又はアウトドアの現実世界のロケーションでの任意の他のシーンに関するセッティング。
一方で、本明細書で使用するが、バーチャル・シーンは、同じタイプの対象物を現実世界シーンとして表現してもよいが、現実世界における類似物を有さなくてもよい。例えば、バーチャル・シーンは、完全にコンピュータで生成されたものであってもよく(例えば、物理的なキャプチャ・デバイスによってキャプチャされたものとは対照的に)、従って、バーチャル・シーンは、特定の実施に寄与することができる現実世界ロケーション又は仮想のロケーションをモデル化してもよい。幾つかの例において、バーチャル・シーンは、以下を含むことができる:現実世界に存在せず、又は、現実世界でキャプチャすることが困難であるエキゾチックな要素(例えば、ファンタジーな要素、他の惑星の風景等)。
本明細書で使用するが、融合現実シーンは、以下を含むことができる:現実世界シーン及びバーチャル・シーンの両方の要素。例えば、融合現実シーンは、現実世界シーン(例えば、有名な建物の内部)からキャプチャされる景色を含むことができるが、バーチャル・オブジェクトを現実世界の景色に統合させてもよい。他の例において、融合現実シーンは、以下を含むことができる:物理的なキャプチャ・デバイスがキャプチャした現実世界オブジェクトと統合されるバーチャル(即ち、コンピュータで生成される)景色。
3Dシーン202が現実世界シーンを表現するか、バーチャル・シーンを表現するか、又は融合現実シーンを表現(例えば、実装する、含む等)するかに関わらず、3Dシーン202は、以下を含むことができる:1以上のオブジェクト204(例えば、オブジェクト204−1及び204−2)。表現されるシーンのタイプに依存して、オブジェクト204は、任意の現実世界オブジェクト又はバーチャル・オブジェクトを、生物又は無生物に関わらず、表現することができ、これらのオブジェクトは、3Dシーン202(例えば、3Dシーン202内又はその周辺に位置する)に関連してもよく、そして、これらのオブジェクトは、3Dシーン202の少なくとも1つのビューから検出可能であってもよい(例えば、閲覧可能等)(後で、説明及び図示する)。簡潔性の目的から、オブジェクト204は比較的シンプルな幾何学的形状として描かれているが、以下の点を理解されたい:オブジェクト204は、様々なレベルの複雑さを有する様々なタイプのオブジェクトを表現することができる。幾何学的形状ではなく、例えば、オブジェクト204のいずれか又は両方は、以下を表現することができる:生物又は無生物のオブジェクト又は表面(例えば、人物又は別の生き物、非透明な固体、液体、若しくは気体、不連続性に欠けるオブジェクト(例えば、壁、天井、若しくは床))、又は、本明細書に記載の若しくは特定の実施に寄与することができる任意の他のタイプのオブジェクト。
上述したように、システム100は、エクスペリエンス・パラメータのセットを特定することができ、前記エクスペリエンス・パラメータのセットは、3Dシーンに関連する複数のバーチャル・リアリティ体験内に含まれる特定のバーチャル・リアリティ体験を記述することができる。本明細書で使用するが、「バーチャル・リアリティ体験」は、特定の文脈において、以下を意味してもよい:概して、バーチャル・リアリティ・データに基づいて、バーチャル・リアリティ・メディア・コンテンツを提示するメディア・プレーヤ装置を使用してユーザによってバーチャル・リアリティ世界(例えば、3Dシーン202のバーチャル表現)を体験すること。しかし、本明細書にて使用される他の文脈(例えば、具体的には、メディア・プレーヤ装置によってユーザに提示可能な複数のバーチャル・リアリティ体験内に含まれる特定のバーチャル・リアリティ体験を意味する文脈)において、「バーチャル・リアリティ体験」は、より技術的な概念を意味してもよい。具体的には、バーチャル・リアリティ体験は、メディア・プレーヤ装置がユーザに特定のバーチャル・リアリティ・データセットに基づいて提供することができる体験(エクスペリエンス)を意味してもよく、前記特定のバーチャル・リアリティ・データセットは、例えば、バーチャル・リアリティ・データを含んでもよく、前記データは、3Dシーンの特定の態様に関する高いレベルの詳細及び3Dシーンの他の態様に関する低いレベルの詳細を記述してもよく、特定のイメージ・クオリティ及び/又はデータ・レート等に関連する特定のフォーマットでエンコードされてもよい。こうしたより技術的な意味において、3Dシーンを体験するユーザは、以下の場合には、バーチャル・リアリティ体験からバーチャル・リアリティ体験へ「スイッチ」又は「移動」すると言ってもよい:ユーザがバーチャル・ビューポイント(例えば、ユーザが3Dシーンを見る際のヴァンテージ・ポイント)を方向づけして、3Dシーン内の領域から領域へ移動させる;3Dシーン内のオブジェクトが移動又は変化する;ユーザが使用するメディア・プレーヤ装置の帯域能力が変化する等。後述するが、特定のバーチャル・リアリティ体験(例えば、こうしたより技術的なタイプのバーチャル・リアリティ体験)は、各バーチャル・リアリティ体験を記述する各エクスペリエンス・パラメータのセットにおける1以上の「エクスペリエンス・パラメータ」によって定義されてもよい。
ユーザに提供されてもよいバーチャル・リアリティ体験及びバーチャル・リアリティ体験を記述するエクスペリエンス・パラメータのセットを示すべく、図3A及び図3Bは、3Dシーン202に関連するバーチャル・リアリティ体験及びエクスペリエンス・パラメータ様々な態様を示す。
具体的には、示すように、図3Aは、3Dシーン202の複数の例示的な領域302(例えば、領域302−1〜302−18)を示しており、各々は、ユーザに提供可能な異なるバーチャル・リアリティ体験に関連する。例えば、領域302−1は、第1のバーチャル・リアリティ体験に関連してもよく、領域302−2は、第2の異なるバーチャル・リアリティ体験に関連してもよく、以下同様であってもよい。以下の点を理解されたい:領域302は、バーチャル・リアリティ体験(例えば、3Dシーン202内のユーザのバーチャル・ビューポイントの位置)のただ1つの特定の態様を示しており、様々な他の態様についてもバーチャル・リアリティ体験をプレイすることができる。例えば、領域302−1に関連する第1のバーチャル・リアリティ体験も、特定のイメージ・クオリティ(例えば、比較的高い解像度のイメージ)に関連してもよく、一方で、領域302−1にも関連する第2のバーチャル・リアリティ体験は、異なるイメージ・クオリティ(例えば、比較的低い解像度のイメージ)に関連してもよい。同一の又は他の例において、イメージ・クオリティエクスペリエンス・パラメータは、イメージ解像度(即ち、ピクセル解像度)以外のイメージ・クオリティの態様に関連してもよい(例えば、キャプチャされるイメージのフレーム・レート、キャプチャされるイメージのアスペクト比、キャプチャされるイメージの色彩解像度、及びキャプチャされるイメージに関して使用されるエンコーディング方法等)。従って、ユーザに提供可能であってもよい複数のバーチャル・リアリティ体験は、様々な異なる一連のエクスペリエンス・パラメータによって定義されてもよく、前記パラメータは、以下を含むことができる:位置に関するエクスペリエンス・パラメータ(例えば、バーチャル・リアリティ体験に関連する特定の領域302を定義するエクスペリエンス・パラメータ)、イメージ・クオリティエクスペリエンス・パラメータ、及び、特定の実施に寄与することができる任意の他のエクスペリエンス・パラメータ。
図3Aに示すように、ユーザのバーチャル・ビューポイント304(即ち、ユーザが3Dシーン202を体験しており、且つ、特定の実施において、ユーザの意図により3Dシーン202を任意で動き回ることができる現時点でのヴァンテージ・ポイント)は、特定の時間ポイントで領域302−8内に位置してもよい。示しているが、また、オブジェクト204−1は、領域302−8内のバーチャル・ビューポイント304の近くに位置することができるが、オブジェクト204−2は、領域302−11におけるバーチャル・ビューポイント304から遠く離れて位置してもよい。かくして、また、より詳細に後述するが、システム100にとって、ユーザのメディア・プレーヤ装置に対しては、領域302−8に関連するバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットを提供することが望まれる可能性がある。こうしたバーチャル・リアリティ・データセットは、例えば、オブジェクト204−1に関して比較的高いレベルの詳細を含んでもよく(即ち、オブジェクト204−1がバーチャル・ビューポイント304に対して比較的距離が近いことが原因となって)、そして、ユーザがオブジェクト204−1の高いクオリティのレンダリングを体験することを可能にしてもよく、一方で、オブジェクト204−2に関して低いレベルの詳細を含んでもよい(即ち、原因となる事実として、オブジェクト204−2がバーチャル・ビューポイント304から更に離れており、従って、オブジェクト204−2に関する複雑な詳細については、バーチャル・ビューポイント304から鑑賞不可能である可能性があるため)。
逆に、バーチャル・ビューポイント304が、のちに、オブジェクト204−2のより近くへ動く場合(例えば、領域302−11へ)、システム100にとっては、メディア・プレーヤ装置に対して、領域302−11に関連するバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットを提供するすることが望まれる可能性がある。例えば、上述したバーチャル・リアリティ・データセットとは対照的に、こうしたバーチャル・リアリティ・データセットは、オブジェクト204−2を記述する比較的高いレベルの詳細を含むことができ、ユーザに対して、オブジェクト204−2の高いクオリティのレンダリングを体験することを可能にすることができ、一方で、オブジェクト204−1を記述する低いレベルの詳細を含むことができる。
図3Bは、例示的なエクスペリエンス・パラメータのセットを図示し、エクスペリエンス・パラメータのセットは、例示的なバーチャル・リアリティ体験を記述する。より具体的には、エクスペリエンス・パラメータのセット306は、特定のバーチャル・リアリティ体験(例えば、領域302−8に関連してもよく、バーチャル・ビューポイント304を選択したユーザへバーチャル・リアリティ体験を提供するメディア・プレーヤ装置に提供されてもよいバーチャル・リアリティ体験等)を記述するのに使用することができる様々な例示的なエクスペリエンス・パラメータを示す。
エクスペリエンス・パラメータのセット306は、以下を含むことができる:特定の実施に寄与することができるバーチャル・リアリティ体験の任意の態様を記述することができる任意のタイプのエクスペリエンス・パラメータ。例えば、示すように、エクスペリエンス・パラメータのセット306は、以下を含むことができる:バーチャル・リアリティ体験をユーザに提供する3Dシーン202内の位置(例えば、領域302の1つ)を表すエクスペリエンス・パラメータ(即ち、「Experience location coordinates」)。また、エクスペリエンス・パラメータのセット306は、以下を表すエクスペリエンス・パラメータを含むことができる:バーチャル・リアリティ体験をユーザに提供する3Dシーン202内の位置の軌道(例えば、ある領域302から別の領域へのバーチャル・ビューポイント304の軌道)(即ち、「Experience trajectory」)。エクスペリエンス・パラメータのセット306は、更に以下を表すエクスペリエンス・パラメータを含むことができる:バーチャル・リアリティ体験をユーザに提供するメディア・プレーヤ装置の技術的能力(即ち、「Device parameters」(例えば、メディア・プレーヤ装置によってサポートされる「Screen resolution」又は「Refresh rate」等の「Image quality」パラメータ、メディア・プレーヤ装置によってサポートされる「Bandwidth capabilities」、メディア・プレーヤ装置によってサポートされる「Codec capabilities」等))。更には、エクスペリエンス・パラメータのセット306は、以下を表すエクスペリエンス・パラメータ含むことができる:ユーザに提供するバーチャル・リアリティ体験に関連する3Dシーン202の幾何学的特性(即ち、「Scene geometry parameters」(例えば、「Scene shape」、「Scene size」等))。更には、エクスペリエンス・パラメータのセット306は、以下を表すエクスペリエンス・パラメータ含むことができる:3Dシーン202内に含まれる1以上のオブジェクト204のプロパティ(即ち、「Object geometries」、「Object location coordinates」、「Object trajectories」等を含む「Object parameters」)。エクスペリエンス・パラメータのセット306は、以下を含むことができる:これらのエクスペリエンス・パラメータのうち任意の若しくはすべてのパラメータ、及び/又は、特定の実施に寄与することができる任意の他の適切なエクスペリエンス・パラメータ。
エクスペリエンス・パラメータのセット306は、ここで示される各異なるエクスペリエンス・パラメータに関連する具体的な値を示していない(例えば、座標の値、軌道の値、デバイス・パラメータの値、シーン又はオブジェクトの幾何学的な記述子等)ものの、以下の点を理解されたい:エクスペリエンス・パラメータのセット306内に表現される各エクスペリエンス・パラメータは、以下を含むことができ、又は以下に関連してもよい:特定の実施に寄与することができる特定のエクスペリエンス・パラメータを定義する任意の適切な値。例えば、experience location coordinate パラメータは、以下を含むことができる:3Dシーン202の特定の領域(例えば、領域302−8)を定義する数値的な座標の値。experience trajectory パラメータは、以下を含むことができる:バーチャル・ビューポイント304又はオブジェクト204が動くことができる各軌道を定義する数値的なベクトルの値、以下同様であってもよい。
システム100は、エクスペリエンス・パラメータの様々なセット(即ち、エクスペリエンス・パラメータのセット306を含む)を特定することができ、前記セットは、以下による異なるユーザに提供可能な様々なバーチャル・リアリティ体験を記述してもよい:3Dシーンの異なる領域202において異なるバーチャル・ビューポイントを使用して;3Dシーン202を体験するために異なる能力を有する異なるメディア・プレーヤ装置を使用して;これらのバーチャル・ビューポイントを異なる軌道に向ける;、及び/又は3Dシーン202の異なるオブジェクト204又は幾何学的特徴(例えば、角、端等)からの異なる近似性を有すること等。従って、各特定されるエクスペリエンス・パラメータのセットに関して(即ち、各提供可能なバーチャル・リアリティ体験に関して)、システム100は、エクスペリエンス・パラメータのセットによって記述されるバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットを各々準備及び生成することができる。また、システム100は、体験選択データ構造内においてこれらのバーチャル・リアリティ・データセット各々に関するエントリを含むことができ、異なるユーザによって使用されるメディア・プレーヤ装置が適切なバーチャル・リアリティ・データセットをユーザ・エクスペリエンス3Dシーン202として選択することを促進することができる
バーチャル・リアリティ・データセットを特定のバーチャル・リアリティ体験(即ち、特定のエクスペリエンス・パラメータのセットを有する)へとカスタマイズする目的で、システム100は、3Dシーン202の様々な異なるビューを描写するより大きな数の複数の利用可能な表面データ・フレーム・シーケンスから、幾つか(a few)の表面データ・フレーム・シーケンスを選択することができ、そして、システム100は、カスタマイズされるバーチャル・リアリティ・データセットの基礎となるフレーム・シーケンス・サブセット内に選択される表面データ・フレーム・シーケンスを含めることができる。システム100は、特定の実施に寄与することができる任意の態様で、3Dシーン202の異なるビューを描写する複数の利用可能な表面データ・フレーム・シーケンス内の表面データ・フレーム・シーケンスを生成することができ、及び/又はこれにアクセスすることができる。例えば、3Dシーン202がバーチャル・オブジェクトのみを有するバーチャル・シーンを純粋に表現する場合、表面データ・フレーム・シーケンスを、システム100又はバーチャル・シーンを表すデータをシステム100に提供する別のシステムが、生成又はアニメーション化することができる(例えば、バーチャル・モデルに基づいて)。逆に、3Dシーン202が、少なくとも幾つかの現実世界要素(例えば、現実世界オブジェクト)を含む現実世界シーン又は融合現実シーンを表現する場合、システム100又はシステム100に関連するシステムは、物理的な現実世界キャプチャ・デバイスを使用して、現実世界シーンのビューを描写する表面データ・フレーム・シーケンスをキャプチャすることができる。
図示する目的で、図4は、3Dシーン202を表現する現実世界シーンの実施における3Dシーン202の複数のビュー402(例えば、ビュー402−1〜402−6)を図示し、前記3Dシーンは、異なるキャプチャ・デバイスによってキャプチャされてもよい。各ビュー402は、現実世界シーンに関して3Dシーン202の基礎となる現実世界シーンをキャプチャするために使用されるキャプチャ・デバイスのそれぞれの場所を表現することができる。更には、ビュー402は、現実世界シーンが、キャプチャ・デバイスのロケーション以外の各キャプチャ・デバイスによってどのようにキャプチャされるかに関する追加の態様を更に表現することができる。例えば、各ビュー402から出ているドット線によって示されるように、また、ビュー402は以下に関連してもよい:特定のキャプチャ角度(例えば、ビュー402に対応するキャプチャ・デバイスが向かう特定の方向)、キャプチャの特定の視野(例えば、例えば、キャプチャ・デバイスのレンズがどれほど狭角又は広角なのか、キャプチャ・デバイスのズーム・レベル等に基づいて、キャプチャ・デバイスによってキャプチャされている3Dシーン202によって表現される現実世界シーンの領域)等。各ビュー402は、図4に明示していないキャプチャの態様に更に関連してもよい。例えば、各ビュー402は以下に関連してもよい:表面データ・フレーム・シーケンスがビュー402に関連するキャプチャ・デバイスによってキャプチャされる際の特定のクオリティ・レベル(例えば、イメージ解像度、フレーム・レート等)、キャプチャ・デバイスがキャプチャするデータがエンコードされる特定のフォーマット及び/又は特定の実施に寄与することができるデータ・キャプチャの任意の他の態様。
示しているが、3Dシーン202のビュー402は、異なる視界、ヴァンテージ・ポイント等を提供することができ、これらから、3Dシーン202(例えば、オブジェクト204を含む)を閲覧することができる。例えば、ビュー402は、3Dシーン202に対してそれぞれ固定されてもよい(例えば、現実世界シーン及びキャプチャ・デバイスが静的であってもよく、又は共に動いてもよい)。更には、幾つかの例において、(例えば、図4に示す)、ビュー402は、3Dシーン202を少なくとも2次元に沿って(例えば、平面に沿って(例えば、地面))囲ってもよい。特定の例において、ビュー402は、更に、3Dシーン202を、3次元に沿って囲ってもよい(例えば、3Dシーン202の上下のビュー402も含めることによって)。
後で更に説明及び図示するが、様々な異なるビュー402(例えば、様々な視界から現実世界シーンをキャプチャする目的で、3Dシーン202の基礎となる現実世界シーンを囲むビュー402)からキャプチャされるデータを使用して、システム100は、現実世界シーンの他の任意のビューの1以上の仮想化プロジェクションを生成することができる。換言すれば、1以上のビュー402からキャプチャされるデータを使用して、システム100は、現実世界シーンのカスタマイズされるビューの仮想化プロジェクションをレンダリングすることができ、前記ビューは、他のロケーション、角度、視野等に関連してもよく、そして、ビュー402と揃ってもよく、又は揃っていなくてもよい。従って、後で示すが、特定のフレーム・シーケンス・サブセットを選択する際にシステム100が選択する元となる複数の利用可能な表面データ・フレーム・シーケンスは、以下を含むことができる:物理的なキャプチャ・デバイスによってキャプチャされるビュー402とは不揃いの(即ち、独立してる、異なる)現実世界シーンのビューを描写する1以上の仮想化される表面データ・フレーム・シーケンス。
各ビュー402の視界から現実世界シーンをキャプチャする目的で、複数のキャプチャ・デバイス内の異なるキャプチャ・デバイスは、ビュー402の各異なるロケーションに配置されてもよい。図示する目的で、図5Aは、例示的なキャプチャ・デバイス502を示し、前記デバイスは、色彩フレーム及び深度フレームを、ビュー402−1のロケーションから、特定の表面データ・フレーム・シーケンス内に含める目的でキャプチャし、前記シーケンスは、3Dシーン202の基礎となり得る現実世界シーンを表すことができる。
図5Aに示すように、キャプチャ・デバイス502は、ビュー402−1に関連してもよく、従って、現実世界シーン及び現実世界オブジェクト204に関して、ビュー402−1に対応するロケーションに配置されてもよい。図5Aが示すこととして、キャプチャ・デバイス502は、以下を含むことができる:2次元(「2D」)色彩キャプチャ・デバイス504、ここで、当該デバイスは、色彩データ(例えば、フル・カラー又はグレースケール・イメージを表す2Dビデオ・データ)をキャプチャするように構成され、前記色彩データは、現実世界シーンを表すことができる(例えば、ビュー402−1の視界から見ることができ、現実世界シーン内に含まれる現実世界オブジェクト204−1及び/又は他のオブジェクトを含む);並びに、深度キャプチャ・デバイス506、ここで当該デバイスは、現実世界シーンを表す深度データをキャプチャするように構成されてもよい。
2D色彩キャプチャ・デバイス504は、任意の適切な2D色彩キャプチャ・デバイス(例えば、カメラ、ビデオ・カメラ等)によって実装することができ、そして、特定の実施に寄与することができる任意の態様で、2D色彩データをキャプチャすることができる。幾つかの例において、2D色彩キャプチャ・デバイス504は、深度キャプチャ・デバイス506とは別個のデバイスであってもよい。総称すると、こうした別個のデバイス(例えば、並びに、機能的にデバイスを融合するために使用される任意の通信インターフェース及び/又は他のハードウェア若しくはソフトウェアのメカニズム)は、キャプチャ・デバイス(例えば、キャプチャ・デバイス502)と称することができる。他の例において、図5Aに示すように、2D色彩キャプチャ・デバイス504及び深度キャプチャ・デバイス506は、単独のデバイス(即ち、キャプチャ・デバイス502)に統合されてもよく、当該デバイスは、色彩及び深度データの両方をキャプチャすることができ、これについては、後述する。
別個のデバイスとして実装されるか、又は、2D色彩キャプチャ・デバイス504に統合されるかに関わらず、深度データ・キャプチャ・デバイス506は、特定の実施に寄与することができる任意の態様で、現実世界シーンを表す深度データをキャプチャすることができる。例えば、深度データ・キャプチャ・デバイス506は、1以上の深度マップ・キャプチャ技術を採用することができる(例えば、構造化光深度マップ・キャプチャ技術、立体視深度マップ・キャプチャ技術、タイム・オブ・フライト深度キャプチャ技術、別の適切な深度マップ・キャプチャ技術、又は、特定の実施に寄与することができる深度マップ・キャプチャ技術の任意の組み合わせ)。
深度データをキャプチャするのに使用される深度マップ・キャプチャ技術のタイプ及び数に関わらず、キャプチャ・デバイス502は、色彩データ(例えば、色彩フレーム)と深度データ(例えば、深度フレーム)の両方をキャプチャすることができ、これらは、以下を表すことができる:現実世界シーン内に含まれ、且つビュー402−1の視界から見える現実世界オブジェクト204−1の表面及び/又は他のオブジェクト。本明細書で使用するが、キャプチャ・デバイス502によってほぼ同じ時間にキャプチャされる色彩フレーム及び深度フレームは、総称的に、「表面データ・フレーム」又は「色彩フレーム及び深度フレーム」と称してもよく、この理由として、これらのフレームに含まれるデータは、現実世界シーン内に含まれる現実世界オブジェクトの表面(即ち、表面の見える外観、並びに、表面の深度の幾何学の両方)を記述するデータを表現しているからである。
従って、本明細書で使用するが、表面データ・フレーム又は色彩フレーム及び深度フレームは、データセットを意味してもよく、前記データセットは、現実世界オブジェクトの表面に関連する様々なタイプのデータを表してもよく、前記現実世界オブジェクトの表面は、現実世界シーンの特定のビューから特定の時間のポイントにおいて現実世界シーン内で見ることができるものであってもよい。例えば、表面データ・フレームは、以下を含むことができる:現実世界シーンに関して特定のビューから見ることができるオブジェクトを表す色彩データ(即ち、イメージ・データ)並びに深度データ。かくして、複数の関連表面データ・フレームは、ともにシーケンス化されてもよく、特定のビューからみた現実世界シーンのビデオのような表現(色彩データのみならず深度データも表現)を生成してもよい。特定の例において、表面データ・フレームは、更に以下に関連してもよい:他のタイプのデータ(例えば、オーディオ・データ、メタデータ(例えば、表面データ・フレームがキャプチャされるビューを記述するキャプチャ・パラメータのセットを含むメタデータ、表面データ・フレームにおいて表現される特定の現実世界オブジェクトに関する情報等))、及び/又は特定の実施に寄与することができる他のタイプのデータ。後で説明及び図示するが、表面データ・フレームのこうしたシーケンスは、本明細書において「表面データ・フレーム・シーケンス」と称してもよい。
本明細書で使用するが、「色彩データ」は、広義には任意のイメージ・データビデオ・データ等を含むことができ、カラーでの表現又はグレースケール(即ち「白黒」)での表現に関わらず、これらのデータは、特定の時間ポイントで又は特定の期間にわたっての特定のビューの視界からの対象物(例えば、シーン内に含まれるオブジェクト)の外観を表現してもよい。色彩データは、以下に限定されない:任意の特定の形式、ファイル・タイプ、フレーム・レート、解像度、品質レベル、又は、様々な定義、並びに/若しくは当分野でイメージ・データ及び/若しくはビデオ・データを定義する規格に関連する他の特性。同様に、本明細書で使用するが、「深度データ」は、以下を含むことができる:空間内の対象物の位置及び/又は幾何学を表す任意のデータ。例えば、オブジェクトを表す深度データは、以下を含むことができる:オブジェクトの表面上の異なるポイントに関する座標系(例えば、特定のキャプチャ・デバイスに関連する座標系、3Dシーンに関連するグローバル座標系等)についての座標。
キャプチャ・デバイス502に関して、前記デバイスは、色彩フレーム及び深度フレームをビュー402−1からキャプチャするが、以下の点を理解されたい:他のキャプチャ・デバイスは、同様に、色彩フレーム及び深度フレームを、他のビュー402に関連する各ヴァンテージ・ポイントからキャプチャするための他のビュー402(例えば、図4におけるビュー402−2〜402−6)に関連してもよい。幾つかの例において、表面データ・フレームは、同一の特定の時間ポイントで、異なるビュー402に関連する異なるキャプチャ・デバイスでキャプチャされてもよく、これによって、互いに同期をとることができる。本明細書で使用するが、表面データ・フレームは、以下の場合には、特定の時間ポイントで「同期して」又は「同時に」キャプチャされるということができる:表面データ・フレームが、ある時間の瞬間に(即ち、ある時間範囲にわたって対象物を表すのとは対照的に)対象物(例えば、現実世界シーン内の現実世界オブジェクト)を効果的に表現できるのに十分なほど近い時間内でキャプチャされる場合(たとえ、表面データ・フレームが正確に同一の瞬間にキャプチャされなかったとしても)。例えば、特定の対象物がどれだけ動的であるか(例えば、1以上の現実世界オブジェクトが現実世界シーン内をどれだけ早く動くか等)に依存して、表面データ・フレームは、以下の場合に、同一の特定の時間ポイントでキャプチャされると考えてもよい:例えば、互いに数十又は数百ミリ秒(several tens or hundreds of millisecond)内でキャプチャされる場合、又は、特定の実施に寄与することができる別の適切なタイムフレーム内(例えば、マイクロ秒内、ミリ秒内、秒内等)でキャプチャされる場合。かくして、各表面データ・フレームは、特定の時間ポイントで、各キャプチャ・デバイスが関連するビュー402の各ヴァンテージ・ポイントからの現実世界シーン内に含まれる現実世界オブジェクトの表面の色彩及び深度データを、表面の外観として表すことができる。
図5B〜5Cは、キャプチャ・デバイス502によってキャプチャされ、且つ、色彩フレーム及び深度フレーム内(即ち、表面データ・フレーム内)に含まれるデータの例示的なグラフィカルな描写を示す。具体的には、示すように、表面データ・フレームに組み込まれる色彩フレームは、以下を含むことができる:色彩データ508(図5Bに示す)。一方で、表面データ・フレームに組み込まれる深度フレームは、以下を含むことができる:深度データ510(図5Cに示す)。
図5Bにおいて、色彩データ508は、ビュー402−1の視界から見たときの、キャプチャ・デバイス502内の2D色彩キャプチャ・デバイス504による現実世界シーン(例えば、オブジェクト204−1を含む)を描写する。色彩データ508は、ビデオ・フレームのシーケンスにおいて、単独のビデオ・フレームを表すことができるため、色彩データ508によって表現されるオブジェクト204−1の描写は、以下を表すことができる:特定の時間ポイントでビュー402−1のヴァンテージ・ポイントから見えるオブジェクト204−1(例えば、並びに現実世界シーンに関連する他のオブジェクト)。図5Bにおいてイメージとして図示しているが、以下の点を理解されたい:色彩データ508は、任意の適切な形態で、キャプチャ、エンコード、フォーマット、送信、及び表現されてもよい。例えば、色彩データ508は、標準ビデオ・エンコーディング・プロトコル、標準イメージ・フォーマット等に従ってフォーマットされるデジタル・データであってもよい。幾つかの例において、色彩データ508は、現実世界シーンにおけるオブジェクトの色彩イメージ(例えば、カラー写真に類する物)を表現してもよい。或いは、他の例において、色彩データ508は、オブジェクト(例えば、白黒写真に類するもの)を表すグレースケール・イメージであってもよい。
図5Cにおいて、深度データ510も(色彩データ508と同様に)ビュー402−1の視界からの現実世界シーン(オブジェクト204−1を含む)を描写する。しかし、現実世界シーン内のオブジェクトの目に見える外観を表現する(例えば、光がオブジェクト204−1の表面とどのように相互作用するかについてカラー又はグレースケールで表現する)のではなく、深度データ510は以下を表現したものであってもよい:例えば、キャプチャ・デバイス502における深度キャプチャ・デバイス506に対するオブジェクト(例えば、ビュー402−1から見えるオブジェクト204−1並びに他のオブジェクト)の表面上の各ポイントの深度(即ち、距離又は位置)。色彩データ508とともに、深度データ510は、任意の適切な形態で、キャプチャ、エンコード、フォーマット、送信、及び表現されてもよい。例えば、示すように、深度データ510は、グレースケール・イメージ・データによって表現されてもよい(例えば、深度キャプチャ・デバイス506によってキャプチャされる各ピクセルに関して6ビット又は8ビット)。しかし、光がどのようにして、オブジェクト204−1の表面から反射するかについて表現(即ち、色彩データ508として表現)するのではなく、深度データ510のグレースケール・イメージは以下を表現したものであってもよい:イメージ中の各ピクセルに関して、そのピクセルによって表現されるポイントが、深度キャプチャ・デバイス506からどれほど離れているか。例えば、深度キャプチャ・デバイス506に、より近いポイントは、より暗いグレーの影を表現する値で表されてもよい(例えば、6ビット実装のケースで0b111111がブラックを表現している場合において、0b111111に近いバイナリな値)。逆に、深度キャプチャ・デバイス506から、より離れているポイントは、より明るいグレーの影を表現する値で表されてもよい(例えば、6ビット実装のケースで0b000000がホワイトを表現している場合において、0b000000に近いバイナリな値)。
図6A〜6Bは、例示的な表面データ・フレーム・シーケンス600−1cを示し、前記シーケンスは、以下を表す:キャプチャ・デバイス502によって生成される3Dシーン202(例えば、ビュー402−1の視界から)。具体的には、図6Aは、表面データ・フレーム・シーケンス600−1c内に含めることができるある特定のデータを描写する表面データ・フレーム・シーケンス600−1cの詳細且つグラフィカルな表現を示す。一方で、図6Bは、表面データ・フレーム・シーケンス600−1cの統合されるグラフィカルな表現を示し、前記表現は、表面データ・フレーム・シーケンス600−1cのコンテンツの多くの詳細を具体的に表現しているわけではない。表面データ・フレーム・シーケンス600−1cは、3Dシーン202の基礎となる現実世界シーンのビュー402−1からキャプチャされる表面データ・フレーム・シーケンスを具体的に描写しているものの、以下の点を理解されたい:本明細書に記載の他の表面データ・フレーム・シーケンス(例えば、他のキャプチャされる表面データ・フレーム・シーケンス並びに仮想化される表面データ・フレーム・シーケンス)は、図6Aに示すものと類似のコンポーネントを含むことができる。
また、以下の点も理解されたい:図6に明示されない表面データ・フレーム・シーケンス(しかし、表面データ・フレーム・シーケンス600−1cに関して示される同様のタイプのデータを含む)も、本明細書では、表面データ・フレーム・シーケンス600として言及してもよい。この目的のため、以下のとおり記号を使用する:表面データ・フレーム・シーケンス「600−Nc」は、ビュー402−Nから表面データ・フレーム・シーケンスをキャプチャ(「c」aptured)することを示し;及び、表面データ・フレーム・シーケンス「600−Nv」は、ビュー702−Nに関連する仮想化(「v」irtualized)される表面データ・フレーム・シーケンスを示す(後述する)。かくして、例えば、図6Aに明示される表面データ・フレーム・シーケンス600−1cは、ビュー402−1に関連する(即ち、ここからキャプチャされる)キャプチャされる表面データ・フレーム・シーケンスである。
図6Aに示すように、表面データ・フレーム・シーケンス600−1cは、色彩データ、深度データ、及びメタデータを含む様々なタイプのデータを含むことができる。具体的には、表面データ・フレーム・シーケンス600−1cは、色彩フレーム・シーケンス602、深度フレーム・シーケンス604、及びキャプチャ・パラメータ606のセットを含むように示される。以下の点を理解されたい:表面データ・フレーム・シーケンス600−1cは、更に以下を含むことができる:図6Aに明示しない他のタイプのデータ(例えば、キャプチャ・パラメータ606のセットのほかに、キャプチャされるオーディオ・データ、他のメタデータ等)。更には、以下の点を理解されたい:表面データ・フレーム・シーケンス600−1c内に含まれるデータは、任意の適切な方法で、アレンジしたり、又はフォーマットしたりすることができる。例えば、示すように、表面データ・フレーム・シーケンス600−1c内に含まれるデータは、1つの色彩フレーム・シーケンス、及び1つの深度フレーム・シーケンスとしてアレンジされてもよい。他の例において、単独のキャプチャ・デバイスは、複数の色彩フレーム・シーケンス、及び/又は、複数の深度フレーム・シーケンスを出力することができる(例えば、キャプチャされる現実世界シーンの視野の異なる部分をカバーするために)。更なる他の例において、表面データ・フレーム・シーケンス600−1cのデータは、各々特定の色彩フレーム、特定の深度フレーム、及び特定のメタデータ(例えば、キャプチャ・パラメータ606のセットを表すデータ)を含む統合される表面データ・フレームのシーケンスとして、又は、特定の実施に寄与することができる他の方法でアレンジされてもよい。
色彩フレーム・シーケンス602の各色彩フレーム内に含まれるデータは、図5に関連して上述した色彩データ508と類似してもよい。しかし、色彩フレーム・シーケンス602内の各色彩フレームは、少々異なる時間でキャプチャされてもよく、その結果、色彩フレーム・シーケンス602は、ビュー402−1からの現実世界シーンのビデオのような表現を形成してもよい。同様に、深度フレーム・シーケンス604の各深度フレーム内に含まれるデータは、以下の点を除いて、深度データ510と同様であってもよい:深度フレーム・シーケンス604内の各深度フレームは、少々異なる時間で(例えば、色彩フレーム・シーケンス602の色彩フレームがキャプチャされる時間と同期をとる時間)キャプチャされてもよく、その結果、深度フレーム・シーケンス604は、ビュー402−1からの現実世界シーンの別のビデオのような表現を形成することができる。
表面データ・フレーム・シーケンス600−1c内に含まれるキャプチャ・パラメータ606のセットは、以下を含むことができる:表面データ・フレーム・シーケンス600−1cがキャプチャされるビュー(即ち、このビュー402−1のケースにおいて)を記述するメタデータ。上述したように、システム100は、フレーム・シーケンス・サブセット及び/又はバーチャル・リアリティ・データセットの生成の際に、メタデータにアクセス及びこれを使用することができる。例えば、システム100は、メタデータに基づいて、どの表面データ・フレーム・シーケンスが異なるフレーム・シーケンス・サブセットに含まれるべきかについて選択を行うことができ、そして、システム100は、順番に、これらのフレーム・シーケンス・サブセットに基づいて、異なるバーチャル・リアリティ・データセットを生成することができる。キャプチャ・パラメータ606のセット内に含まれるメタデータは、以下を示す任意の様々なパラメータを含むことができる:どこで及び/又はどのようにして表面データ・フレーム・シーケンス600−1c内に含まれる表面データ・フレームがキャプチャされたかに関する様々な態様。キャプチャ・パラメータ606のセット内に含まれるキャプチャ・パラメータは、以下を含むことができる:特定の実施に寄与することができる現実世界シーンの各ビューに関連する任意の適切なキャプチャ・パラメータ。
例えば、キャプチャ・パラメータ606のセットは、以下を表すキャプチャ・パラメータを含むことができる:3Dシーン202のビュー402−1に対応する色彩フレーム及び深度フレームがキャプチャされる3Dシーン202に関するロケーション。別の例として、キャプチャ・パラメータ606のセットは、以下を表すキャプチャ・パラメータを含むことができる:3Dシーン202のビュー402−1に対応する色彩フレーム及び深度フレームがキャプチャされる角度(例えば、キャプチャ角度)。同様に、別の例として、キャプチャ・パラメータ606のセットは、以下を表すキャプチャ・パラメータを含むことができる:3Dシーン202のビュー402−1に対応する色彩フレーム及び深度フレームがキャプチャされる視野。更には、更なる別の例として、キャプチャ・パラメータ606のセットは、以下を表すキャプチャ・パラメータを含むことができる:3Dシーン202のビュー402−1に対応する色彩フレーム及び深度フレームがキャプチャされるイメージ・クオリティ。更なる他の例において、キャプチャ・パラメータ606のセットは、以下を含むことができる:3Dシーン202のビュー402−1に対応する色彩フレーム及び深度フレームをキャプチャすることができる他の態様を表す任意の他の適切なキャプチャ・パラメータ。例えば、キャプチャ・パラメータ606のセットは、以下を表すパラメータを含むことができる:ビュー402−1に対応する色彩フレーム及び深度フレームがキャプチャされる特定のエンコーディング、フォーマット、フレーム・レート等。
キャプチャ・パラメータ606のセットは、特定の実施に寄与することができる任意の態様で、表面データ・フレーム・シーケンス600−1c内に含まれる他のデータと統合されてもよい。例えば、幾つかの例において、キャプチャ・パラメータ606のセットは、色彩フレーム・シーケンス602及び深度フレーム・シーケンス604内にそれぞれ含まれる各色彩フレーム及び/又は深度フレームに統合されてもよい(例えば、これらに関して繰り返されてもよい)。他の例において、キャプチャ・パラメータ606のセットは、個々の表面データ・フレームとそれぞれ統合されてもよい。こうした方法において、キャプチャ・パラメータ606のセットは、各々及び全てのフレームに関するキャプチャ・パラメータを柔軟に記述することができ、前記記述は、たとえ、ビュー402が表面データ・フレーム・シーケンス600−1cによって表現される期間の間に動的に変化しても記述することができる。他の例において、キャプチャ・パラメータ606のセットは、表面データ・フレーム・シーケンス600−1cによって表現される期間の間、静的であってもよい。これらの例において、キャプチャ・パラメータ606のセットは、フレーム・シーケンス602及び604のフレームとは別に送信されてもよい。例えば、キャプチャ・パラメータ606のセットは、色彩フレーム及び深度フレームの送信とは別に送信されてもよい(例えば、色彩フレーム及び深度フレームの送信の前に、色彩フレーム及び深度フレームの送信開始時に、色彩フレーム及び深度フレームの送信後に、及び/又は別の適切な時間に)。
上述したように、図6Bは、表面データ・フレーム・シーケンス600−1cの統合されるグラフィカルな表現を示す。具体的には、図6Bにおける表面データ・フレーム・シーケンス600−1cの表現は、特定のビュー(即ち、ビュー402−1)から見えるものとしてのブロックの前面上に、3Dシーン202のセクション(即ち、現実世界オブジェクト204−1を含むセクション)の描写を有するブロックとして、表面データ・フレーム・シーケンス600−1cを示す。このタイプの表面データ・フレーム・シーケンスの表現は、後述する図における追加の表面データ・フレーム・シーケンスを示すのに有用となるであろう。しかし、以下の点を理解されたい:図6Bに示すような統合されるグラフィカルな表現を使用して表現される任意の表面データ・フレーム・シーケンスは、以下を含むことができる:上述した任意の配置における図6Aに関連して示した、及び/又は、説明した、全ての同一のタイプのデータ。
上述したように、3Dシーン202が現実世界シーンの要素を含み、前記現実世界シーンが、複数のキャプチャ・デバイスによってキャプチャされ、前記デバイスが、現実世界シーンに対して異なるロケーション(例えば、図4のビュー402に関連するロケーション)に配置される実施において、システム100は、メタデータにアクセスすることができ、前記メタデータは、キャプチャ・デバイスがキャプチャする表面データ・フレーム・シーケンス(例えば、表面データ・フレーム・シーケンス600−1c等)を記述することができる。従って、こうしたメタデータに基づいて、1以上のこれらのキャプチャされる表面データ・フレーム・シーケンスは、バーチャル・リアリティ・データセットの基礎となるフレーム・シーケンス・サブセット内に含まれてもよい。しかし、ビュー402からキャプチャされる表面データ・フレーム・シーケンスは、3Dシーン202の全ての態様を十分にカバーできるものの、これらのキャプチャされる表面データ・フレーム・シーケンス内に含まれるすべてのデータを含むバーチャル・リアリティ・データセットを提供することは、システム100にとって、非効率的であるか、非現実的であるが、又は、望ましくない可能性がある。例えば、各ビュー402に関連するキャプチャ・デバイス(例えば、上述したキャプチャ・デバイス502等)は、非常に膨大な量の非常に詳細で高いクオリティのデータをキャプチャする動作を行うように構成される可能性があり、その結果、全てのキャプチャされるデータについて、任意の特定のメディア・プレーヤ装置に提供することは不可能であるか、又は現実的ではない可能性がある(例えば、原因として、ネットワークの帯域幅の制限、データ使用コスト、メディア・プレーヤ装置の能力等)。
従って、上述したように、キャプチャされる表面データ・フレーム・シーケンスで表現される膨大な量のデータを、3Dシーン202の異なるビューの仮想化された表現(例えば、1以上の仮想化される表面データ・フレーム・シーケンス)を生成するために使用することができ、これは、メディア・プレーヤ装置に提供するにあたって、より現実的である可能性がある(例えば、含まれる冗長な及び/又は無関係なデータが少ないことによって)。従って、幾つかの例において、複数の利用可能な表面データ・フレーム・シーケンス(即ち、フレーム・シーケンス・サブセット内に含まれる表面データ・フレーム・シーケンスが選択される源)は、以下を含むことができる:1以上の仮想化される表面データ・フレーム・シーケンス、ここで、前記シーケンスは、現実世界シーンのビューを描写してもよく、前記ビューは、物理的なキャプチャ・デバイスによってキャプチャされる現実世界シーンのビュー402とは不揃い(unaligned)であってもよい。同様に、現実世界シーンの要素を含まない3Dシーン202の実装において、全ての表面データ・フレーム・シーケンスは、バーチャルであってもよい(即ち、コンピュータ-が生成するバーチャル・オブジェクト及びシーンに基づく)。
図7は、3Dシーン202の複数のビューを示し、前記ビューは、ビュー402(即ち、上述したキャプチャされる表面データ・フレーム・シーケンスに対応する)を含み、そして、前記ビューは、更に、追加の例示的なビュー702(例えば、ビュー702−1〜702−38)を含み、前記ビューは、仮想化される表面データ・フレーム・シーケンスに対応してもよく、前記シーケンスは、システム100がバーチャル・リアリティ・データを、本明細書に記載の異なるバーチャル・リアリティ体験に関してカスタマイズする際に、システム100にとって利用可能であってもよい。便宜上、図7は、更に、3Dシーン202の領域302(図3に関連して上述した)を示しており、どのようにして、ビュー702からキャプチャされる仮想化される表面データ・フレーム・シーケンスが、異なる領域302に関連する様々なバーチャル・リアリティ体験へとカスタマイズすることができるかについて示すことを補助する。
図7において、ビュー702は、上述したビュー402と同様の外観及び機能を有する。しかし、ビュー402(物理的なキャプチャ・デバイスに関連してもよい)を、ビュー702(仮想化される表面データ・フレーム・シーケンスに関連してもよく、前記シーケンスは、キャプチャされる表面データ・フレーム・シーケンスに基づいてシステム100が生成することができる(即ち、物理的なキャプチャ・デバイスによって直接キャプチャされるのとは対照的に))と異ならせるため、ビュー402は、円で描き、一方で、ビュー702は、正方形で描いている。更には、各ビュー402はこのように個別でラベル付けされているが、ビュー702は、省略した標記を用いて図7でラベル付けされる。具体的には、幾つかのビュー702(即ち、ビュー702−1及び702−2)を用いて挿入的に示しているが、各ビュー702−Nは、対応する番号(「N」)のみを用いてラベル付けされており、根元の番号である「702-」を用いていない。従って、ビュー702−1は、「1」でラベルされる正方形で表現され、ビュー702−2は、「2」でラベルされる正方形で表現され、以下同様であってもよい。本明細書で使用するが、仮想化される表面データ・フレーム・シーケンスは、表面データ・フレーム・シーケンスが関連するビュー702から「キャプチャされる」又は「仮想化される」と言ってもよい。以下の点を理解されたい:ビュー402から物理的なキャプチャ・デバイスによってキャプチャされる表面データ・フレーム・シーケンス(即ち、「キャプチャされる表面データ・フレーム・シーケンス」)とは対照的に、ビュー702から「キャプチャされる」と言われる表面データ・フレーム・シーケンスは、物理的なキャプチャ・デバイス(例えば、キャプチャ・デバイス502等)によって直接キャプチャされなくともよいが、むしろ、他の表面データ・フレーム・シーケンス(例えば、キャプチャされる表面データ・フレーム・シーケンス)内に含まれるデータに基づいて、仮想化(例えば、レンダリング)されてもよい。
ビュー402と同様に、各ビュー702は以下に関連してもよい:異なるキャプチャ・パラメータの各セット、ここで各セットは、表面データ・フレーム・シーケンスの態様を定義しており、各シーケンスは、各ビュー702からキャプチャされる(例えば、各表面データ・フレーム・シーケンスがキャプチャされるロケーション、角度、視野、イメージ・クオリティ等)(即ち、仮想化される)。上述したように、各ビュー702に関連する特定のキャプチャ・パラメータ(例えば、キャプチャする角度及び視野パラメータ)は、各ビュー702から出ているドット線によって示すことができる。従って、図7によって明らかにされているが、3Dシーンが、物理的なデータのキャプチャによるビュー402のみからではなく、仮想化によるビュー702からもキャプチャされる場合には、システム100は、比較的膨大な複数の表面データ・フレーム・シーケンスにアクセスすることができ、そこから、異なるバーチャル・リアリティ体験に関してカスタマイズされるフレーム・シーケンス・サブセットを選択することができる。
この目的のため、図8は、例示的なフレーム・シーケンス・サブセット800(例えば、フレーム・シーケンス・サブセット800−1〜800−18)を示し、前記サブセットは、体験選択データ構造における異なるエントリに対応する異なるバーチャル・リアリティ・データセットの基礎となる。図8に示すように、各フレーム・シーケンス・サブセット800(即ち、チャートにおける各行)は、以下に関連してもよい:特定のエントリ番号(例えば、エントリ番号1〜18)、特定のエクスペリエンス・パラメータのセット(即ち、「エクスペリエンス・パラメータ」列の下で要約されるパラメータ)、及び、表面データ・フレーム・シーケンスのサブセット(即ち、「表面データ・フレーム・シーケンス」列でリストされる)。この例において、エントリ1〜18は、それぞれ、3Dシーン202の領域302−1〜302−18に関連するバーチャル・リアリティ体験に対応する。具体的には、エントリ1は、領域302−1に対応してもよく(エクスペリエンス・パラメータ列において、「Loc 1」としてリスト)、エントリ2は、領域302−2に対応してもよく(エクスペリエンス・パラメータ列において「Loc 2」としてリスト)、以下同様であってもよい。
図8の例において、最も潜在的なエクスペリエンス・パラメータ(例えば、デバイスが使用されてバーチャル・リアリティ体験を提供することに関連するパラメータ、シーンの幾何学に関連するパラメータ等)は、フレーム・シーケンス・サブセット800ごとに一定である(例えば、各フレーム・シーケンス・サブセット800は「std device」、「std scene」を含む等)。しかし、以下の点を理解されたい:特定の実施において、より多くの違いを有するエクスペリエンス・パラメータの異なるセットを各々含む多くの体験可能なバーチャル・リアリティ体験をサポートしてもよい。更には、以下の点を理解されたい:図8に示すエクスペリエンス・パラメータは、例示的なものにすぎず、そして、図8に示すものよりも追加の又は数が少ないエクスペリエンス・パラメータが様々な実施において含まれてもよい。例えば、特定の実施において、3Dシーン202内の表面は、3Dシーン内の特定のオブジェクトで必ずしも異なることなく表現されてなくてもよい。かくして、こうした実施において、3Dシーン202内に含まれるオブジェクトのプロパティを表すエクスペリエンス・パラメータを使用しなくてもよい。
図8において、各フレーム・シーケンス・サブセット800に関して選択されるように示される表面データ・フレーム・シーケンスは、ビュー702に関連する仮想化される表面データ・フレーム・シーケンスを意味してもよい。従って、例えば、フレーム・シーケンス・サブセット800−1は、領域302−1に関連するバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットの基礎となるが、フレーム・シーケンス・サブセット800−1は、領域302−1へとカスタマイズされる詳細を提供するビュー702からの表面データ・フレーム・シーケンスを含むように示される。具体的には、フレーム・シーケンス・サブセット800−1は、以下のビューからキャプチャされる表面データ・フレーム・シーケンスを含む:ビュー702−1、702−2、702−9、702−10、702−16、及び702−32。上述したように、これらの表面データ・フレーム・シーケンスは、本明細書において、それぞれ以下の通り意味することができる:表面データ・フレーム・シーケンス600−1v、600−2v、600−9v、600−10v、600−16v、及び600−32v。
フレーム・シーケンス・サブセット800−1に関してキャプチャされる表面データ・フレーム・シーケンス600は、集合的にデータを含むことができ、前記データは、領域302−1に関連するバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットの基礎となり得る。例えば、領域302−1内及びその周辺における3Dシーン202の態様に関するユーザ・エクスペリエンス(例えば、そこから見る、又は相互作用する等)として、これらの態様に関連する高いレベルの詳細については、表面データ・フレーム・シーケンス600−1v、600−2v、600−9v、及び600−10vによって表現されてもよい。また、こうした表面データ・フレーム・シーケンスは、ユーザが領域302−1から3Dシーンの他の領域202方向を見たときに、適切なレベルの詳細を提供する(即ち、領域302−1におけるバーチャル・ビューポイントから鑑賞可能なレベルの詳細であって、それを超えるものではないものを表現するデータ)。また、他の角度をキャプチャする幾つか(a few)の表面データ・フレーム・シーケンスは、フレーム・シーケンス・サブセット800−1内に含まれ、ユーザが、3Dシーン202の外部の領域を見ることを可能にする(例えば、表面データ・フレーム・シーケンス600−32vの場合においてページのトップに向かって、又は、表面データ・フレーム・シーケンス600−16vの場合においてページの左に向かって)。同時に、フレーム・シーケンス・サブセット800−1は、領域302−1から離れている3Dシーン202の領域の高いレベルの詳細を表現したデータを、比較的少なく含む。例えば、表面データ・フレーム・シーケンス600−29v(ビュー702−29に関連する)は、領域302−18に関連するバーチャル・リアリティ体験についてのオブジェクト204−2に関する適切な量の詳細を提供することができ、そして、表面データ・フレーム・シーケンス600−29vにおけるデータは、領域302−1に関連するバーチャル・リアリティ体験とは比較的無関係であってもよい。従って、図8に示すように、表面データ・フレーム・シーケンス600−29vは、フレーム・シーケンス・サブセット800−1から除外されるものの、フレーム・シーケンス・サブセット800−18内に含まれる。
フレーム・シーケンス・サブセット800−1において表面データ・フレーム・シーケンスのみを詳細に説明してきたが、以下の点を理解されたい:様々な他のフレーム・シーケンス・サブセット800(即ち、図8に示す及び図8に明示しないフレーム・シーケンス・サブセット800)に関する表面データ・フレーム・シーケンスは、同様の方法で選択されてもよく、そして、同様に、領域302−1のほかに3Dシーン202の他の領域302におけるバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットを提供することができる。図8において、各フレーム・シーケンス・サブセット800に関して選択されるように示される表面データ・フレーム・シーケンスは例示的なものにすぎない。以下の点を理解されたい:特定の実施において、異なる数の表面データ・フレーム・シーケンスは、フレーム・シーケンス・サブセットに関連するバーチャル・リアリティ体験の特性に依存して、各フレーム・シーケンス・サブセット800関して選択されてもよい。例えば、特定のバーチャル・リアリティ体験に関して選択される表面データ・フレーム・シーケンスの数は、部分的に、3Dシーンの幾何学によって決定されてもよく、その結果、より少ない表面データ・フレーム・シーケンスが、バーチャル・リアリティ体験に関して、3Dシーンのエッジにそって、及び/又は、角部において、選択され、一方で、多くの数のオブジェクトが集中している等の場合に、より多くの表面データ・フレーム・シーケンスが、3Dシーンの内部にて、バーチャル・リアリティ体験に関して選択される。
フレーム・シーケンス・サブセット800は、生成されてもよく(即ち、フレーム・シーケンス・サブセット内に含める目的で表面データ・フレーム・シーケンスを選択することによって)、及び/又は、フレーム・シーケンス・サブセット800は、特定の実施に寄与することができる任意の態様で、異なるバーチャル・リアリティ体験を提供しているメディア・プレーヤ装置へ提供されてもよい。例えば、特定の実施において、複数の提供可能なバーチャル・リアリティ体験に関連するエクスペリエンス・パラメータの複数のセットは、ユーザに関連するメディア・プレーヤ装置にバーチャル・リアリティ・データセットが提供される前に、特定されてもよく、及び予め決定されてもよい。これらの例において、メディア・プレーヤ装置は、ユーザが3Dシーン202内においてバーチャル・ビューポイントを動かす際に、予め決定されるバーチャル・リアリティ体験へとカスタマイズされる予め決定されるバーチャル・リアリティ・データセットへアクセスしてもよい。これに加えて、又はこれに代えて、特定のバーチャル・リアリティ体験に関連するエクスペリエンス・パラメータのうち少なくとも幾つかのセットは、3Dシーン202として動的に特定されてもよく、そして、3Dシーン内に含まれるオブジェクト204は、ユーザのバーチャル・ビューポイントに沿って変化する。これらの例において、システム100は、以下を決定することができる(例えば、人工知能又は他の適切な技術を使用して):3Dシーン202の追加のビューに関連する表面データ・フレーム・シーケンスは、仮想化されるべきであること;予め決定されないバーチャル・リアリティ体験に関連する追加のフレーム・シーケンス・サブセットを生成すべきであること等。特定の例において、システム100は、予測として以下を予想してもよい:新たな表面データ・フレーム・シーケンス又はフレーム・シーケンス・サブセットを、これらが実際に必要となる前に生成するべきであること。
システム100の1つのこうした動的な実装を示すものとして、フレーム・シーケンス・サブセット800−8は、カスタム・ロケーションに関連するものとして示される(即ち、「Loc 8 (custom)」、これは、領域302−8の全体を表現することができる「Loc 8」とは対照的である)。この理由として、領域302−8内のオブジェクト204−1の存在に関して、領域302−8の異なる部分に位置するバーチャル・ビューポイントは、異なる詳細(例えば、オブジェクト204−1の異なる面の詳細)が鑑賞可能となり得る異なるヴァンテージ・ポイントに関連してもよいからである。実際、オブジェクト204−1は、領域302−8内に位置するという理由から(従って、領域302−8内の任意のバーチャル・ビューポイントに非常に近い)、システム100は以下を決定することができる:フレーム・シーケンス・サブセット800−8は、ビュー402又は702のいずれかとは異なるカスタマイズされるビューからの追加のカスタマイズされる表面データ・フレーム・シーケンスを含むべきである。例えば、システム100は、オブジェクト204−1に向かって角度付けされるバーチャル・ビューポイント304のロケーションでのカスタム・ビューを生成することができ、そして、このカスタム・ビューからの仮想化される表面データ・フレーム・シーケンス(即ち、表面データ・フレーム・シーケンス600−customと称される)を、フレーム・シーケンス・サブセット800−8に関して選択される表面データ・フレーム・シーケンス内に含めることができる(示すように)。
いったん、システム100が、特定のバーチャル・リアリティ・データセットの基礎となるフレーム・シーケンス・サブセット800内に含める目的で、表面データ・フレーム・シーケンス600を選択すると、システム100は、任意の適切な態様で、選択される表面データ・フレーム・シーケンスにアクセスすることができる。例えば、システム100(例えば、管理設備104)自体は、表面データ・フレーム・シーケンスを、キャプチャ及び/又は仮想化することとができ、システム100は、表面データ・フレーム・シーケンスをキャプチャするキャプチャ・デバイスから直接表面データ・フレーム・シーケンスにアクセスすることができ、システム100は、現実世界シーン・キャプチャ・システム、又は、バーチャル生成キャプチャ・システム(仮想化される又はバーチャル表面データ・フレーム・シーケンスを生成する)から、表面データ・フレーム・シーケンスにアクセスすることができ、又は、システム100は、特定の実施に寄与することができる任意の態様で、表面データ・フレーム・シーケンスにアクセスすることができる。選択される表面データ・フレーム・シーケンスにアクセスした後、システム100(例えば、管理設備104)は、アクセスされる表面データ・フレーム・シーケンスに基づいて、特定のバーチャル・リアリティ・データセットを生成することができる。例えば、より詳細に後述するが、システム100は、表面データ・フレーム・シーケンスを処理することができ、1以上のトランスポート・ストリームを形成することができ、前記トランスポート・ストリームは、1以上のビデオ・データ・ストリームを含むことができ、前記ビデオ・データ・ストリームは、色彩データ及び深度データを表すことができ、色彩データ及び深度データは、選択される表面データ・フレーム・シーケンス内に含まれてもよい。
幾つかの例において、特定のバーチャル・リアリティ体験に関してカスタマイズされる特定の表面データ・フレーム・シーケンスの選択及びアクセス、並びに、特定のバーチャル・リアリティ体験を提供するメディア・プレーヤ装置による使用の目的で表面データ・フレーム・シーケンスに基づいて特定のバーチャル・リアリティ・データセットを生成することに関するこうした処理は、特定の3Dシーンに関連する数多くの異なる提供可能なバーチャル・リアリティ体験を目的として実行されてもよい。例えば、システム100は、以下を生成してもよい:図3〜7に示す各領域302に関連する各バーチャル・リアリティ体験に関するカスタマイズされるバーチャル・リアリティ・データセット;並びに他のバーチャル・リアリティ・データセット(例えば、オブジェクト204(例えば、フレーム・シーケンス・サブセット800−8に関連して説明したもの)の近くのバーチャル・リアリティ体験に関連する異なるバーチャル・リアリティ・データセット、ロケーション以外でエクスペリエンス・パラメータに関して変化する異なるバーチャル・リアリティ・データセット等)。上述したように、幾つかの例において、これらのバーチャル・リアリティ・データセットの多く又は全ては、メディア・プレーヤ装置によってリクエストされる前に、予め定義されてもよく、及び予め生成されてもよく、一方で、他の例において、これらのバーチャル・リアリティ・データセットの幾つか又は全ては、システム100が決定するように異なるメディア・プレーヤ装置のニーズに基づいて、動的に生成されてもよい。
とにかく、システム100がバーチャル・リアリティ・データを提供する様々なメディア・プレーヤ装置にとって、異なるバーチャル・リアリティ体験関して利用可能な様々なバーチャル・リアリティ・データセットに関する情報を知られるようにすることがシステム100にとって望ましい可能性がある。この目的のため、上述したように、システム100は、異なるバーチャル・リアリティ・データセットにそれぞれ対応する複数のエントリを有する体験選択データ構造を生成することができる。体験選択データ構造は、以下の動作を行うように構成されてもよい:メディア・プレーヤ装置が異なるバーチャル・リアリティ体験を異なるユーザに提供する際に、メディア・プレーヤ装置による異なるエントリの動的選択を促進すること。
図示する目的で、図9が示すのは、例示的な体験選択データ構造900であり、前記構造は、システム100によって生成されてもよい体験選択データ構造内に含まれる複数のエントリから異なるエントリの動的選択を促進するように構成される。示しているが、体験選択データ構造900は、ツリー構造において、幾つか(several)のレベルの決定ノード902を含む(例えば、トップ・レベルでのノード902−1、中間レベルでのノード902−2〜902−4、更に低いレベルでのノード902−5〜902−13、図7のビュー702に関連して上述した標記と類似の省略されたラベリング標記を使用している)。ツリー構造における「リーフ・ノード」において、体験選択データ構造900は、複数のエントリ904を含む(例えば、エントリ904−1〜904−18、類似の省略標記を使用してラベルされる)。
体験選択データ構造900は、空間的なパーティションのスキームとして示されるが、これは、3Dシーン202内のロケーション(例えば、ユーザの特定のバーチャル・ビューポイントの現時点のロケーション)に基づくエントリの選択を促進する。例えば、領域302−8内のバーチャル・ビューポイント304を選択する(従って、領域302−8に関連するバーチャル・リアリティ体験へとカスタマイズされるバーチャル・リアリティ・データセットを理想的には受信する)ユーザに関連するメディア・プレーヤ装置は、以下の様に体験選択データ構造900を使用することができる。まず最初に、メディア・プレーヤ装置は、ノード902−1において、バーチャル・ビューポイント304が3Dシーン202の左側であること(即ち、真ん中でもなく右側でもない)を決定し、従って、「Left」を指示する矢印に従って、ノード902−2へと分岐することができる。次に、メディア・プレーヤ装置は、バーチャル・ビューポイント304は、3Dシーン202の左側の中間のセクション(即ち、トップ・セクションでもなく、ボトム・セクションでもなく)に位置することを決定することができ、従って、「Middle」を指示する矢印に従って、ノード902−6へと分岐することができる。最後に、メディア・プレーヤ装置は、バーチャル・ビューポイント304が、3Dシーン202の左側の中間セクションの右側よりにある(即ち、左側よりとは反対側)ことを決定することができ、従って、「Right」を指示する矢印に従って、エントリ904−8へと分岐することができる。エントリ904−8は、メディア・プレーヤ装置がユーザに提供するバーチャル・リアリティ体験(即ち、バーチャル・ビューポイント304に関連するバーチャル・リアリティ体験)へとカスタマイズされるバーチャル・リアリティ・データセットに対応してもよい。例えば、エントリ904−8は、フレーム・シーケンス・サブセット800−8に基づくバーチャル・リアリティ・データセットに対応してもよい。
異なるメディア・プレーヤ装置が異なるバーチャル・リアリティ体験をユーザに提供する際に(例えば、ユーザがバーチャル・ビューポイント304を3Dシーン202周辺に移動させ、そして、他のメディア・プレーヤ装置を使用して3Dシーン202を体験している他のユーザが他の各バーチャル・ビューポイントを3Dシーン202周辺に移動させる際に)、メディア・プレーヤ装置は、エントリ904−8の選択に関して具体的に上述した同様の態様で、体験選択データ構造900の手段により、各々異なるエントリ904を選択することができる。
体験選択データ構造900は、メディア・プレーヤ装置によるエントリの選択を促進するための1つの例示的な構造を示す。具体的には、体験選択データ構造900は、空間的なパーティションのスキームに基づくツリー構造を採用し、バーチャル・ビューポイントの空間的な位置づけのみに基づくエントリの選択を促進する。体験選択データ構造900の例において、3Dシーン202は、3Dシーン202が描かれるページに基づく配向システムに従って分割され、そして、参照される(即ち、記述子による3Dシーン202の部分の参照(例えば「left」、 「right」、 「upper」、及び「lower」))。しかし、以下の点を理解されたい:3Dシーンは、任意の適切な配向システムに従って、且つ、特定の実施に寄与することができる任意の適切な記述子(例えば、数字の記述子、デカルト座標の記述子等)を使用して、分割及び参照されてもよい。
更には、以下の点を理解されたい:図9の例は、平面が3回分割されている3Dシーン202を示すが、効率的な選択アルゴリズムを特定の実施において使用してもよく、前記実施では、3Dシーン202を、2回にわたって、ある部分へと分割することを必要してもよい。例えば、体験選択データ構造900に類似した体験選択データ構造を実装するツリー構造は、以下を使用することにより実施されてもよい:バイナリな空間のパーティション・ツリー、八分木、kd木、及び/又は特定の実施に寄与することができる任意の他の適切な構造。更には、全てのエントリ904が、体験選択データ構造900のツリー構造内で同一の深度レベルとなるように図示されているが、以下の点を理解されたい:エントリ904は、体験選択データ構造900内で任意の深度レベルであってもよく、そして、特定の実施に寄与することができる異なる深度レベルであってもよい。例えば、より低い深度レベルのエントリ904(即ち、下により少ないノード902)は、3Dシーンのより大きなエリアをカバーすることができ、一方で、より高い深度レベルのエントリ904(即ち、下により多くのノード902)は、3Dシーンのより小さなエリアをカバーすることができる。特定の例において、ツリー構造及び空間的なパーティションのスキーム以外の他の構造及び/又は他のスキームに基づく体験選択データ構造を、同様に、特定の実施に寄与することができるように使用することができる。
いったん、メディア・プレーヤ装置が、体験選択データ構造900の手段によりエントリを選択すると(例えば、上述したエントリ904−8)、システム100は、メディア・プレーヤ装置がエントリを選択したことを検出することができ、そして、任意の適切な方法で、選択されたエントリに対応する特定のバーチャル・リアリティ・データセットを、メディア・プレーヤ装置に提供することができる。例えば、特定のバーチャル・リアリティ・データセットに対応する選択されたエントリは、以下を含むことができる:メディア・プレーヤ装置による特定のバーチャル・リアリティ・データセットへのアクセスを可能にするデータリンク。かくして、システム100は、選択されるエントリ(例えば、エントリ904−8)内に含まれるデータリンクに基づいて、リクエストを受信(例えば、メディア・プレーヤ装置から)することができ、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセット(例えば、領域302−8に関連するカスタムバーチャル・リアリティ体験へとカスタマイズされ、且つ、フレーム・シーケンス・サブセット800−8に基づくバーチャル・リアリティ・データセット)にアクセスすることができる。リクエストを受信することに応答して、システム100は、メディア・プレーヤ装置へ、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを提供することができる。
幾つかの実施において、体験選択データ構造900は、大半又は全てのエントリ904がある1つの時間ポイントで決定される(例えば、空間的なパーティションに基づいて、人工知能に基づいて、別の適切な技術等に基づいて)という意味で、比較的静的であってもよく、その後、各エントリ904に関するバーチャル・リアリティ・データセットは、特定のエントリ904をリクエストするメディア・プレーヤ装置へのストリーミングを準備するべく、メンテナンスされる。更には、上述したように、特定の例において、異なるバーチャル・リアリティ・データセットの基礎となるフレーム・シーケンス・サブセット(例えば、フレーム・シーケンス・サブセット800)内に含める目的での表面データ・フレーム・シーケンスの選択は、動的に行うことができる。かくして、こうした例において、体験選択データ構造900は、同様に動的な体験選択データ構造であってもよい。例えば、動的な体験選択データ構造900内に含まれるエントリ904は、3Dシーン202に関して発生するイベントに応答して、変更されてもよい(例えば、エントリは追加又は削除されてもよいし、エントリ内に含まれるデータリンクは、変更されて、異なるバーチャル・リアリティ・データセットへリンクされてもよい等)。
体験選択データ構造900は、特定の実施に寄与することができる任意の方法で、エンコードされてもよく、データで表現されてもよく、そして、提供(即ち、送信)されてもよい。例えば、体験選択データ構造900が動的に変化している場合、体験選択データ構造900は、メディア・プレーヤ装置に提供されるバーチャル・リアリティ・データセットの一部として含まれる(例えば、バーチャル・リアリティ・データセットを配信することができるトランスポート・ストリーム内に含まれる)ことが望ましい可能性がありその結果、メディア・プレーヤ装置は、継続的に、体験選択データ構造900のアップーデートされるコピーを受信する。他の例において、体験選択データ構造900は、メディア・プレーヤ装置へ、バーチャル・リアリティ・データセットとは別個に送信されてもよく、又は、他の適切な方法で、メディア・プレーヤ装置へのアクセスのために利用可能にしてもよい。
更には、体験選択データ構造900は、任意の適切なシステム又はデバイスへ提供してもよく、そして、これらによって使用されてもよい。例えば、上記説明の多くは、クライアント・サイドメディア・プレーヤ装置による体験選択データ構造900の使用に焦点を当てているが、以下の点を理解されたい:特定の実施において、体験選択データ構造900は、サーバ・サイド・システム及び/又はプロセスに提供されてもよく、そして、これらによって使用されてもよい。一例として、システム100は、体験選択データ構造900を、バーチャル・リアリティ・データ・プロバイダ・パイプライン内のシステム100の下流にあるバーチャル・リアリティ・データセット多重化システム(即ち、後続の処理ステージにおいて)に提供してもよく、ここで、バーチャル・リアリティ・データは、後続の処理ステージにて、引き続き処理される。バーチャル・リアリティ・データセット多重化システムは、システム100は通信可能に接続されてもよく、そして、以下の動作を行うように構成されてもよい:異なるバーチャル・リアリティ体験へとカスタマイズされる1以上の異なるバーチャル・リアリティ・データセットを動的に提供すること(例えば、バーチャル・リアリティ・データセット多重化システムの下流となる1以上のメディア・プレーヤ装置へ)。例えば、バーチャル・リアリティ・データセット多重化システムは、メディア・プレーヤ装置から受信され、且つメディア・プレーヤ装置が各ユーザにそれぞれ提供している現時点でのバーチャル・リアリティ体験を表す動的なデータに基づいて、バーチャル・リアリティ・データセットを提供することができる。
図示する目的で、図10は、例示的な構成1000を示し、ここで、例示的なバーチャル・リアリティ・メディア・プロバイダ・システムは、バーチャル・リアリティ・データセット多重化システムを使用することによって、異なるバーチャル・リアリティ体験のために、バーチャル・リアリティ・データをカスタマイズする。具体的には、図10に示すように、サーバ・サイドのバーチャル・リアリティ・メディア・プロバイダ・システム1002(「プロバイダ・システム1002」)は、キャプチャ管理システム1004、システム100の実装、及び、バーチャル・リアリティ・データセット多重化システム1006(「多重化システム1006」)を含み、これらは、機能的に及び通信可能に共に接続される。プロバイダ・システム1002は、バーチャル・リアリティ・データ(例えば、特定のバーチャル・リアリティ・データセット)を、ネットワーク1008の手段により、ユーザ1012によって使用されるメディア・プレーヤ装置1010を含む1以上のクライアント・サイドメディア・プレーヤ装置へ提供(例えば、送信、ストリーミング等)することができる。
プロバイダ・システム1002内で、システム100は、キャプチャ管理システム1004と共同で動作することができ、以下を行うことができる:異なるフレーム・シーケンス・サブセット内に含まれるように利用可能な複数の表面データ・フレーム・シーケンスを記述するメタデータにアクセスすること;ユーザに提供可能な異なるバーチャル・リアリティ体験を記述するエクスペリエンス・パラメータの異なるセットを特定すること;表面データ・フレーム・シーケンスにアクセスし、その結果、表面データ・フレーム・シーケンスがバーチャル・リアリティ・データセットへパッケージ化できる等。この目的のため、キャプチャ管理システム1004は、以下を生成し、そして、システム100に提供することができる:キャプチャされる表面データ・フレーム・シーケンス(即ち、現実世界シーンの異なるビューから物理的なキャプチャ・デバイスによってキャプチャされる表面データ・フレーム・シーケンス)を含む表面データ・フレーム・シーケンス(表面データ・フレーム・シーケンスを記述するメタデータを含む);仮想化される表面データ・フレーム・シーケンス(即ち、現実世界シーンのカスタム・ビューに対応し、そして、キャプチャされる表面データ・フレーム・シーケンスに基づいて仮想化される表面データ・フレーム・シーケンス);バーチャル表面データ・フレーム・シーケンス(即ち、融合現実シーンのバーチャル・シーン又はバーチャル要素を表す表面データ・フレーム・シーケンス)等。
その後、いったん、システム100が、様々なフレーム・シーケンス・サブセット800及び生成される体験選択データ構造900に関する表面データ・フレーム・シーケンスを分析及び選択をすると、システム100は、体験選択データ構造900を多重化システム1006に提供することができる。多重化システム1006は、システム100の特定の実装の内に含まれてもよく、又は、構成1000に示すように、多重化システム1006は、システム100とメディア・プレーヤ装置1010との間の仲介として作用してもよい。いずれかの状況において、多重化システム1006は、体験選択データ構造900(即ち、システム100から)と、提供されている現時点でのバーチャル・リアリティ体験を表す動的なデータ(即ち、メディア・プレーヤ装置から1010)との両方を受信することができ、そして、多重化システム1006は、極力効率的な形で、最も関連の高いバーチャル・リアリティ・データを、可能性としてメディア・プレーヤ装置1010に提供することを補助するための仲介として作用することができる。この目的のため、多重化システム1006は、以下を行うように構成される人工知能を含むことができる:ユーザ1012の動きと、メディア・プレーヤ装置1010に既に提供されたバーチャル・リアリティ・データの使用とを監視及びトラッキングして、パターンを決定しようと試みること;メディア・プレーヤ装置1010がデータをリクエストする前に、メディア・プレーヤ装置1010がどんなデータを要求するかを予想すること;又は、関連し、効率的で、高度にカスタマイズされるデータをメディア・プレーヤ装置1010に提供する際に知性をもって提供すること。
一例として、多重化システム1006は以下を決定することができる:複数のバーチャル・リアリティ・データセット(即ち、体験選択データ構造900における複数のエントリ904に対応する)がメディア・プレーヤ装置1010に提供されるべきであること(ユーザが行う可能性の高いアクション、又は、3Dシーン202内で発生する可能性が高いイベントの予想のもとで)。例えば、ある提供されるバーチャル・リアリティ・データセットを現時点で使用することができるものの、一方で、別のバーチャル・リアリティ・データセットについて、短期間の予想される使用の目的でバッファー及び準備を行ってもよい。別の例として、多重化システム1006は以下のことを確実にするよう補助することができる:体験選択データ構造900で表現される及び体験選択データ構造900内に含まれ、並びに/又は、メディア・プレーヤ装置1010に提供される各フレーム・シーケンス・サブセットは、堅固(robust)で且つ完全な特徴を備えるフレーム・シーケンス・サブセットであること。その結果、メディア・プレーヤ装置1010は、ユーザ1012がどのようにふるまうかに関わらず、フレーム・シーケンス・サブセット中の表面データ・フレーム・シーケンスに基づいて、バーチャル・リアリティ・メディア・コンテンツをユーザ1012に提示することができる。例えば、多重化システム1006は以下を確実なものにすることができる:メディア・プレーヤ装置1010に提供される任意のバーチャル・リアリティ・データセットは、ユーザ1012が、ブラック・スクリーン又は低いクオリティ・イメージを探すことなく任意の方向を見ることを可能にする。
ネットワーク1008は、以下を含むことができる:プロバイダに特化した有線の又はワイヤレスなネットワーク(例えば、ケーブル、又は衛星キャリア・ネットワーク又はモバイル電話ネットワーク)、インターネット、ワイド・エリア・ネットワーク、コンテンツ・デリバリ・ネットワーク、又は任意の他の適切なネットワーク。データは、特定の実施に寄与することができる任意の通信技術、デバイス、メディア、及びプロトコルを使用して、プロバイダ・システム1008とメディア・プレーヤ装置1010(並びに明示しない他のメディア・プレーヤ装置)との間を流れることができる。
メディア・プレーヤ装置1010はユーザ1012によって使用されてもよく、プロバイダ・システム1002によって提供されるバーチャル・リアリティ・メディア・コンテンツにアクセスしてもよく、そして、前記コンテンツを体験してもよい。例えば、メディア・プレーヤ装置1010は、以下を生成する動作を行うように構成されてもよい:任意のバーチャル・ビューポイント(例えば、ユーザによって選択され、且つ、3Dシーン202内の任意のバーチャル・ロケーションに対応する動的に選択可能なバーチャル・ビューポイント)からのユーザ1012によって体験される3Dシーン202の3D表現。この目的のため、メディア・プレーヤ装置1010は、以下を行うことができる任意のデバイス含んでもよく、又は、当該デバイスによって実装されてもよい:ユーザ1012が3Dシーン202のバーチャル表現を体験する際に、3Dシーン202の視野を提示し、そして、ユーザ1012からのユーザ入力を検出して、視野内に提示される3Dシーン202の部分を動的にアップデートすること。メディア・プレーヤ装置のタイプの具体例は、後で更に説明する。
構成1000は、幾分一般的な構成となっており、ここで、システム100は、他のシステム及びデバイスと共同で動作することができ、バーチャル・リアリティ・データをカスタマイズすることができる。しかし、以下の点を理解されたい:特定の実施において、システム100及びこれが使用される構成は、特定のシステム要件に従って動作するように構成されてもよい。特に、システム100の特定の構成を使用して、任意の膨大な集合のデータから生じるバーチャル・リアリティ・データをカスタマイズし、及び/又は、カスタマイズされるバーチャル・リアリティ・データを、任意の膨大な数の異なるメディア・プレーヤ装置に提供することができる。結果として、特定の例においてシステム100によって処理されるデータの量は、極端に大きくなる可能性があり、従って、本明細書に記載の機能を実行するために巨大なコンピューティング能力(例えば、ネットワーク化され共に共同動作する多くのサーバからのコンピューティング能力)を必要とする可能性がある。これが特に当てはまるのは、バーチャル・リアリティ・データをリアルタイムで(例えば、現実世界シーン内でイベントが発生したとき)多くの異なるメディア・プレーヤ装置に提供するシステム100の実装(例えば、及び、プロバイダ・システム1002の実装)においてである。
図11〜14は、システム100の特定の態様を示し、前記システムは、本明細書に記載のバーチャル・リアリティ・データのカスタマイズを取り扱うことができるように、システム100をスケールアップすることを促進することができ、その目的として、任意のサイズの3Dシーン、任意の数の利用可能な表面データ・フレーム・シーケンス、任意のレベルの詳細、及び/又は、ピクチャ・クオリティ等が挙げられる。具体的には、後述する原理に従ってシステム100を実装することによって、本明細書に記載の方法及びシステムを、非常に柔軟且つスケーラビリティの高い方法で実行及び実装することができ、バーチャル・リアリティコンテンツのプロバイダ及びユーザに様々な利点を同様にもたらすことができる。例えば、プロバイダは、更なるハードウェア(例えば、追加のサーバ、追加のプロセッサ等)をシステム100に追加することによって、システム100を拡張することができ、仮想的に任意のシステム要件を充足させることができ、一方で、ユーザは、鮮明な詳細レベルでもって、無節操にデータを使用することなく、膨大且つ興味深い3Dシーンを体験することができる。
図11は、例示的な構成1100を示し、ここで、別の例示的なバーチャル・リアリティ・メディア・プロバイダ・システムはバーチャル・リアリティ・データをカスタマイズする。構成1100は、上述した構成1000と特定の類似性を有する。例えば、構成1100は、構成1000と同様に、バーチャル・リアリティ・メディア・プロバイダ・システム(この場合、バーチャル・リアリティ・メディア・プロバイダ・システム1102(「プロバイダ・システム1102」))を含み、前記システムは、キャプチャ管理システム1004(上述した)及びシステム100の実装を含む。更には、構成1100は、ネットワーク1008及びユーザ1012に関連するメディア・プレーヤ装置1010(更に上述したように)を含む。構成1100は、プロバイダ・システム1102の任意の追加の要素(例えば、プロバイダ・システム1102が実施するバーチャル・リアリティ・メディア・プロバイダ・パイプライン内に含まれる多重化システム1006及び/又は他のシステム等)を示していないものの、以下の点を理解されたい:特定の実施において、多重化システム1006及び/又は他の適切な要素も、特定の実施に寄与することができる構成1100において、存在してもよい。
プロバイダ・システム1102と、上述したプロバイダ・システム1002との主要な違いとして、プロバイダ・システム1102が以下をより明確に示すシステム100の実装を含む点にある:どのようにして、異なるコンピューティング・リソース(例えば、システム100の処理要件が実施ごとに異なる場合において、システム100に追加又は除去されるべく構成されてもよい異なるサーバ)が、共同で動作して本明細書に記載のシステム100の機能を実行するか。具体的には、図11に示すように、システム100は、以下を含むことができる:複数のゲートキーパ・サーバ1104(例えば、ゲートキーパ・サーバ1104−1〜1104−N)、1以上のマネージメント・サーバ1106(図11において1つだけ図示)、及び、同期サーバ1108。サーバ1104〜1108は、特定の実施に寄与することができる任意のタイプの分離したコンピューティング・リソースとして表現することができる。例えば、各サーバ1104〜1108は、以下の手段により実施されてもよい:別々のコンピュータ(例えば、別々のサーバ・コンピュータ)によって、ブレード・サーバ内の別々のブレードによって、単独のコンピュータに関連する別々のプロセッサによって、及び/又は任意の他のタイプの分離したコンピューティング・リソースによって。特定の実施において、サーバ1104〜1108によって表現される特定のサーバも、単独のコンピューティング・リソースに組み合わされてもよい。例えば、システム100は、以下を含むことができる:複数のゲートキーパ・サーバ、並びに、マネージメント・サーバ1106及び同期サーバ1108の両方の機能を実行する1つの追加のサーバ。
各ゲートキーパ・サーバ1104は、1以上の表面データ・フレーム・シーケンス(例えば、キャプチャ管理システム1004から受信される)の処理を担うことができる。例えば、表面データ・フレーム・シーケンスが比較的高いレベルの詳細なデータ、及び膨大な量のデータを含む場合、各ゲートキーパ・サーバ1104は、より少ない表面データ・フレーム・シーケンスを担ってもよい(各ゲートキーパ・サーバの全てが取り扱うことができる程度に表面データ・フレーム・シーケンスを少なくする)。逆に、表面データ・フレーム・シーケンスが、より低いレベルの詳細、及び/又は、より少ない量のデータを含む場合には、(例えば、又は、ゲートキーパ・サーバ1104が比較的強力なコンピューティング・リソースを含む場合)、各ゲートキーパ・サーバ1104は幾つか(several)の表面データ・フレーム・シーケンスを担ってもよく、又は、幾つかの実施形態において、単独のゲートキーパ・サーバ1104が、全ての利用可能な表面データ・フレーム・シーケンスを担ってもよい(そのゲートキーパ・サーバ1104が全てを取り扱うことができる場合)。
オペレーションにおいて、第1のゲートキーパ・サーバは、第1の表面データ・フレーム・シーケンスにアクセスすることができ、前記シーケンスは、色彩フレーム及び深度フレームを含むことができ、前記フレームは、3Dシーンの特定のビューを描写することができ、一方で、第2のゲートキーパ・サーバは、第2の表面データ・フレーム・シーケンスにアクセスすることができ、前記シーケンスは、色彩フレーム及び深度フレームを含むことができ、前記フレームは、3Dシーンの異なるビューを描写することができる。例えば、上述したフレーム・シーケンス・サブセット800−8の例を参照されたい。ゲートキーパ・サーバ1104−1は以下にアクセスすることができる:フレーム・シーケンス・サブセット800−8に含める目的で選択される特定の表面データ・フレーム・シーケンス(例えば、表面データ・フレーム・シーケンス600−10v、600−11v、及び、600−18v)(即ち、ビュー702−10、702−11、及び、702−18にそれぞれ関連する表面データ・フレーム・シーケンス)。一方で、別個のゲートキーパ・サーバ、ゲートキーパ・サーバ1104−2は以下にアクセスすることができる:フレーム・シーケンス・サブセット800−8に含める目的で選択される他の表面データ・フレーム・シーケンス(例えば、表面データ・フレーム・シーケンス600−19v、600−24v、600−25v、及び、600−custom)(即ち、それぞれ、ビュー702−19、702−24、702−25、及び、バーチャル・ビューポイント304に関連するカスタム・ビューに関連する表面データ・フレーム・シーケンス、)。
第1のゲートキーパ・サーバ(即ち、この例においてゲートキーパ・サーバ1104−1)は、マネージメント・サーバ1106へ(例えば、ネットワーク1008又は他の適切な通信接続の手段により)、マネージメント・サーバ1106から送信されるリクエストに応答して(後述する)、以下を送信することができる:色彩フレーム及び深度フレーム、ここで、これらのフレームは、表面データ・フレーム・シーケンス内に含まれ、前記シーケンスは、各個別のトランスポート・ストリームの手段により第1のゲートキーパ・サーバが担っている(即ち、表面データ・フレーム・シーケンス600−10v、600−11v及び600−18v)。第1のゲートキーパ・サーバの送信に同期して、第2のゲートキーパ・サーバ(即ち、この例において、ゲートキーパ・サーバ1104−2)は、同様に、マネージメント・サーバ1106へ(例えば、ネットワーク1108又は他の適切な通信接続の手段により)、前記リクエストに応答して、以下を送信することができる:色彩フレーム及び深度フレームであって、これらのフレームは、第2の表面データ・フレーム・シーケンス内に含まれ、前記シーケンスは、他の各個別のトランスポート・ストリームの手段により第2のゲートキーパ・サーバが担う(即ち、表面データ・フレーム・シーケンス600−19v、600−24v、600−25v及び600−custom)。
図示する目的で、図12は、個々のトランスポート・ストリームの手段により送信される表面データ・フレーム・シーケンスを示す。具体的には、示すように、表面データ・フレーム・シーケンス600は、上述したように、フレーム・シーケンス・サブセット800−8(即ち、表面データ・フレーム・シーケンス600−10v、600−11v、600−18v、600−19v、600−24v、600−25v、600−custom)に関して選択されるが、各々個々のトランスポート・ストリーム1202(即ち、それぞれ、トランスポート・ストリーム1202−10、1202−11、1202−18、1202−19、1202−24、1202−25、及び、1202−custom)内に送信される。
本明細書で使用するが、「トランスポート・ストリーム」は、以下を目的として、データをパッケージ化するために使用されるデータ構造を意味してもよい:データを、あるデバイス又はシステムから別の所へ送信(即ち、伝送)することを促進すること、データをレンダリングする、若しくは、処理する、若しくは分析すること、及び/又は特定の実施に寄与することができる他の目的。幾つかの例において、トランスポート・ストリームは、1以上のデータ・ストリーム(例えば、1以上のビデオ・データ・ストリーム)、及び/又は、他のデータ(例えば、メタデータ等)を組み込むことができる。トランスポート・ストリームは、特定の実施に寄与することができる任意のタイプのトランスポート・ストリームとして実装されてもよい。例えば、本明細書に記載の特定のトランスポート・ストリーム(例えば、トランスポート・ストリーム1202)は、以下の手段により実装されてもよい:MPEGトランスポート・ストリーム、MPEG−2トランスポート・ストリーム、又は、データの伝送を促進する別の適切なデータ構造(例えば、表面データ・フレーム・シーケンス、ビデオ・データ・ストリーム)等。
図11に戻ると、ゲートキーパ・サーバ1104は、マネージメント・サーバ1106及び/又は同期サーバ1108と共同で動作することができ、各表面データ・フレーム・シーケンスの個々のフレーム(例えば、色彩フレーム及び深度フレーム)を、マネージメント・サーバ1106へ、同期して送信することができる。マネージメント・サーバ1106は、その後、バーチャル・リアリティ・データセットを生成し、前記データセットは、メディア・プレーヤ装置1010へ送信されるように構成される。例えば、上述の例に続いて、マネージメント・サーバ1106は、フレーム・シーケンス・サブセット800−8に含める目的で、図12に示す表面データ・フレーム・シーケンス600を選択することができる。マネージメント・サーバ1106は、その後、リクエスト(即ち、上述のリクエストであり、これに応答して、ゲートキーパ・サーバ1104−1及び1104−2が同期してこれらのサーバの各色彩フレーム及び深度フレームを送信する)を、ゲートキーパ・サーバ1104−1及び1104−2へ送信することができる。これに応答して、マネージメント・サーバ1106は、ゲートキーパ1104−1が担う表面データ・フレーム・シーケンス内に含まれる色彩フレーム及び深度フレームを(例えば、ゲートキーパ・サーバ1104−1から、ネットワーク1008の手段により)受信することができる(例えば、個別のトランスポート・ストリームの手段により)。同様に、そして、ゲートキーパ・サーバ1104−1からの色彩フレーム及び深度フレームの受信と同期して、マネージメント・サーバ1106は、ゲートキーパ1104−2が担う表面データ・フレーム・シーケンス内に含まれる色彩フレーム及び深度フレームを(例えば、ゲートキーパ・サーバ1104−2から、ネットワーク1008の手段により)受信することができる(例えば、追加の個別のトランスポート・ストリームの手段により)。
異なる個別のトランスポート・ストリームの手段による、異なる表面データ・フレーム・シーケンス内に含まれる色彩フレーム及び深度フレームの同期送信は、特定の実施に寄与することができる任意の態様で実行することができる。例えば、特定の実施において、ゲートキーパ・サーバ1104及び/又はマネージメント・サーバ1106は、同期サーバ1108と通信及び/又は共同で動作して、ゲートキーパ・サーバ1104からマネージメント・サーバ1106へ色彩フレーム及び深度フレームを同期をとって送信することを促進することができる。
具体的には、フレーム・シーケンス・サブセット800−8に関して上述した例を続けると、ゲートキーパ・サーバ1104−1は、同期サーバ1108に以下を示すデータを送信することができる:表面データ・フレーム・シーケンスの1つ内に含まれる第1の色彩フレーム及び深度フレーム(例えば、例えば、表面データ・フレーム・シーケンス600−10v内に含まれる色彩フレーム及び深度フレーム)がゲートキーパ・サーバ1104−1によって受信されたこと。ゲートキーパ・サーバ1104−2は、同様に、同期サーバ1108へ、以下を示すデータを送信することができる:表面データ・フレーム・シーケンスの1つ内に含まれる第2の色彩フレーム及び深度フレームがゲートキーパ・サーバ1104−2によって受信されたこと(例えば、例えば、表面データ・フレーム・シーケンス600−19v内に含まれ、第1の色彩フレーム及び深度フレームに対応する色彩フレーム及び深度フレーム)。第1の及び第2の色彩フレーム及び深度フレームが受信されたことを示すデータの送信に応答して、ゲートキーパ・サーバ1104−1及び1104−2は、第1の及び第2の色彩フレーム及び深度フレームが同期して送信されるべき範囲の指定のタイムフレームを示すデータを、同期サーバ1108から、受信することができ、そして、ゲートキーパ・サーバ1104−1及び1104−2は、指定されたタイムフレーム内で、マネージメント・サーバ1106に、第1の及び第2の色彩フレーム及び深度フレームを送信することができる(フレーム・シーケンス・サブセット800−8内に含まれる他の表面データ・フレーム・シーケンスからの他の色彩フレーム及び深度フレームと共に)。
図示する目的で、図13は、例示的なタイムライン1300を示し、前記タイムラインは、タイムフレーム1302(例えば、タイムフレーム1302−1〜1302−7)を含み、前記タイムフレーム内で、色彩フレーム及び深度フレームは、ゲートキーパ・サーバ1104によって受信されてもよく、そして、前記タイムラインは、タイムフレーム1304(例えば、タイムフレーム1304−1〜1304−4)を含み、前記タイムフレームは、上述したように、色彩フレーム及び深度フレームが、同期をとって、ゲートキーパ・サーバ1104によって送信されることが指定されている。具体的には、各タイムフレーム1302内で描かれる各垂直線は、時間におけるある瞬間をマークすることができ、その瞬間とは、特定のゲートキーパ・サーバ1104が、ゲートキーパ・サーバが担う特定の表面データ・フレーム・シーケンスの特定の色彩フレーム及び深度フレームを受信したことであってもよい。例えば、タイムフレーム1302−1内の水平線1306は、ゲートキーパ・サーバ1104−1が表面データ・フレーム・シーケンス600−10v内に含まれる第1の色彩フレーム及び深度フレームを受信した瞬間をマークしてもよく、一方で、別のタイムフレーム1302−1内の水平線1308は、ゲートキーパ・サーバ1104−2が表面データ・フレーム・シーケンス600−19v内に含まれる第2の色彩フレーム及び深度フレームを受信した瞬間(第1の色彩フレーム及び深度フレームが受信された瞬間と比較的近い)をマークしてもよい。同様の態様で、タイムフレーム1302−1内に含まれる他の垂直線は、ゲートキーパ・サーバ1104(例えば、ゲートキーパ・サーバ1104−1、1104−2、又は、他のゲートキーパ・サーバ1104)が他の表面データ・フレーム・シーケンス(例えば、フレーム・シーケンス・サブセット800−8内に含まれる他の表面データ・フレーム・シーケンス又は、他のフレーム・シーケンス・サブセット800で使用される表面データ・フレーム・シーケンス)内に含まれる他の色彩フレーム及び深度フレームを受信する他の瞬間をマークすることができる。
任意の長さの遅延1310(例えば、数(a few)ミリ秒、数(a few)秒、数(a few)分等)が、任意の特定のタイムフレーム1302で受信される色彩フレーム及び深度フレームの送信をゲートキーパ・サーバ1104が開始する前に、含まれてもよい。しかし、いったん全ての対応する色彩フレーム及び深度フレームが、全てのゲートキーパ・サーバ1104によって、全ての表面データ・フレーム・シーケンス関して受信されると、同期サーバ1108は、タイムフレーム1304の指定(例えば、スケジュール化)を行うことができ、この間に、色彩フレーム及び深度フレームが送信される。例えば、タイムフレーム1302−1内に受信される全ての色彩フレーム及び深度フレームに関して、同期サーバ1108は、タイムフレーム1304−1を指定することができ(即ち、遅延1310の後で)、前記タイムフレームの間に、各それぞれのゲートキーパ・サーバ1104は、要求された任意の表面データ・フレーム・シーケンス(例えば、少なくとも1つフレーム・シーケンス・サブセット800内に含まれる全ての表面データ・フレーム・シーケンス)に関する色彩フレーム及び深度フレームを送信する。
従って、例えば、上述したように、マネージメント・サーバ1106が、ゲートキーパ・サーバ1104−1及び1104−2から、フレーム・シーケンス・サブセット800−8内に含まれる表面データ・フレーム・シーケンスを要求する場合、タイムフレーム1302−1期間中に受信され、且つ、これらの表面データ・フレーム・シーケンスに関連する各色彩フレーム及び深度フレームは、タイムフレーム1304−1期間中に同期をとって、マネージメント・サーバ1106に送信することができる。具体的には、例えば、第1の色彩フレーム及び深度フレーム(即ち、表面データ・フレーム・シーケンス600−10vから)は、垂直線1312によってマークされる時間にて送信されてもよい。一方で、第2の色彩フレーム及び深度フレーム(即ち、表面データ・フレーム・シーケンス600−19vから)は、垂直線1314によってマークされる時間にて送信されてもよい。
色彩フレーム及び深度フレームは、任意の適切な方法で、ゲートキーパ・サーバ1104によって、マネージメント・サーバ1106へ送信されてもよい。例えば、特定の実施において、各タイムフレーム1304の期間中、マネージメント・サーバ1106によってリクエストされる表面データ・フレーム・シーケンスを担う全てのゲートキーパ・サーバ1104は、ポイント・トゥ・マルチポイント・プロトコルの手段により(例えば、ユーザ・ダイアグラム・プロトコル(「UDP」)等を使用して)、特定の色彩フレーム及び深度フレームを、要求される表面データ・フレーム・シーケンスから送信することができ、その結果、マネージメント・サーバ1106は、要求された特定の色彩フレーム及び深度フレームを受信することができる。このようにして、互いに並行して動作して複数の異なるバーチャル・リアリティ・データセットを準備及びパッケージ化している複数のマネージメント・サーバ1106(図11に明示しない)は、他の色彩フレーム及び深度フレームを無視しながら、各バーチャル・リアリティ・データセットの基礎となる色彩フレーム及び深度フレームをリクエスト及び受信することができる。従って、十分な数のゲートキーパ・サーバ1104及びマネージメント・サーバ1106を用いて、任意の数の表面データ・フレーム・シーケンスは、任意の数のバーチャル・リアリティ・データセットの基礎となる任意の数のフレーム・シーケンス・サブセットへと再結合されてもよい。
選択される表面データ・フレーム・シーケンスに関する色彩フレーム及び深度フレームを含む同期送信を受信すると、マネージメント・サーバ1106は、ゲートキーパ・サーバ1104から同期をとって受信される色彩フレーム及び深度フレームをパッケージ化することができ、追加のトランスポート・ストリーム(例えば、マネージメント・サーバ1106へフレームを送信するためにゲートキーパ・サーバ1104によって使用されるものからの別個のトランスポート・ストリーム)を生成することができ、前記追加のトランスポート・ストリームは、フレーム・シーケンス・サブセット800−8内に含める目的で選択される表面データ・フレーム・シーケンスに対応するビデオ・データ・ストリームを含むことができる。具体的には、追加のトランスポート・ストリームは、以下を含むことができる:各表面データ・フレーム・シーケンス600−10v、600−11v、600−18v、600−19v、600−24v、600−25v、及び、600−customに関連する色彩ビデオ・データ・ストリーム及び深度ビデオ・データ・ストリーム。
幾つかの例において、追加のトランスポート・ストリームは、メディア・プレーヤ装置へストリーミングする目的で構成されてもよい。かくして、これらのビデオ・データ・ストリームを含む追加のトランスポート・ストリームは、バーチャル・リアリティ・データセットを実装することができ、前記データセットは、フレーム・シーケンス・サブセットに関連するバーチャル・リアリティ体験800−8へとカスタマイズされてもよい。換言すれば、フレーム・シーケンス・サブセットに関連するバーチャル・リアリティ体験800−8へとカスタマイズされるバーチャル・リアリティ・データセット(即ち、及び、バーチャル・ビューポイント304に関連する)は、こうした追加のトランスポート・ストリームを含んでもよく、又は、こうした追加のトランスポート・ストリームによって実装されてもよい。
図示する目的で、図14は、例示的なバーチャル・リアリティ・データセット1400を示し、前記データセットは、複数のビデオ・データ・ストリーム1404を含むトランスポート・ストリーム1402(即ち、ビデオ・データ・ストリーム1404−10、1404−11、1404−18、1404−19、1404−24、1404−25、及び、1404−custom)として実装される(例えば、パッケージ化される)。トランスポート・ストリーム1402は、ネットワーク1008の手段により、メディア・プレーヤ装置1010へストリーミングする目的で構成されてもよく、従って、体験選択データ構造900のエントリ904−8に関連してもよい(例えば、これに含まれるデータリンクによって表現される)。
バーチャル・リアリティ・データセット1400は、任意の適切な方法で、生成されてもよい。例えば、システム100は、フレーム・シーケンス・サブセット800−8内に含める目的で選択される表面データ・フレーム・シーケンス600にアクセスすることができ、そして、システム100は、アクセスされる表面データ・フレーム・シーケンスに基づいて、バーチャル・リアリティ・データセット1400を生成することができる。より具体的には、システム100は、バーチャル・リアリティ・データセット1400を以下によって生成することができる:異なるアクセスされる表面データ・フレーム・シーケンスに各々関連する複数のビデオ・データ・ストリームを生成すること(例えば、各表面データ・フレーム・シーケンスを色彩ビデオ・データ・ストリーム及び深度ビデオ・データ・ストリームへエンコーディングする)、そして、その後に、トランスポート・ストリーム1402を生成し、複数のビデオ・データ・ストリームを含むこと。特定の例において、各表面データ・フレーム・シーケンスを色彩ビデオ・データ・ストリーム及び深度ビデオ・データ・ストリームへエンコーディングすることは、予め実行されてもよい(例えば、キャプチャ管理システム1004、ゲートキーパ・サーバ1104、又は、システム100又はプロバイダ・システム1102内の他の箇所によって)。例えば、ゲートキーパ・サーバ1104によって送信される表面データ・フレーム・シーケンス600は、既に、ビデオ・データ・ストリーム1404へとエンコーディングされてもよい。
上述したように、バーチャル・リアリティ・データセット(例えば、バーチャル・リアリティ・データセット1400)は、動的に生成されてもよく(例えば、メディア・プレーヤ装置1010が要求するもの、又は、必要と決定したものに基づいて、「オンデマンド」、及び/又は「to order」で生成)、又は、バーチャル・リアリティ・データセットは、システム100が提供可能と決定したバーチャル・リアリティ体験に基づいて、予め前倒しでパッケージ化されてもよい。更には、トランスポート・ストリーム1402は、1つの例示的な態様を示し、ここで、バーチャル・リアリティ・データセット1400がパッケージ化されてもよいが、以下の点を理解されたい:バーチャル・リアリティ・データセット1400は、特定の実施に寄与することができる様々な他の適切な態様でパッケージ化されてもよい。例えば、特定の例において、バーチャル・リアリティ・データセット1400は、複数のトランスポート・ストリームの一部として送信されてもよく、又は、バーチャル・リアリティ・データセット1400は、テクスチャ・アトラス技術、又は、他のデータパッケージング技術、又は、データ・トランスポート技術、及び/又はプロトコルを使用することができ、これらは、以下を促進することができる:ビデオ・データ・ストリーム1404内のデータを、メディア・プレーヤ装置1010、及び/又は、他のメディア・プレーヤ装置へ、効率的且つ効果的に提供すること。
いったん、バーチャル・リアリティ・データセット1400が生成され(例えば、同様の態様で生成されるが、他のバーチャル・リアリティ体験に関してカスタマイズされる複数の他のバーチャル・リアリティ・データセットのオプションと一緒に)、そして、バーチャル・リアリティ・データセットがリクエストされると(例えば、メディア・プレーヤ装置1010に提供される体験選択データ構造内のエントリの選択によって)、バーチャル・リアリティ・データセット1400を、メディア・プレーヤ装置1010に提供することができる。この目的のため、メディア・プレーヤ装置1010、及び、プロバイダ・システム1102(例えば、システム100)は、任意の適切な方法で、相互作用できる。例えば、メディア・プレーヤ装置1010は、体験選択データ構造900へアクセス(例えば、システム100から)することができ、そして、特定のエントリ(例えば、上記例のエントリ904−8)を選択(例えば、体験選択データ構造900の手段により)することができ、前記エントリは、特定のバーチャル・リアリティ・データセット(例えば、バーチャル・リアリティ・データセット1400)に対応してもよく、前記データセットは、特定のバーチャル・リアリティ体験(例えば、バーチャル・ビューポイント304を3Dシーン202領域302−8へと向けるユーザ1012のバーチャル・リアリティ体験)へとカスタマイズされてもよい。メディア・プレーヤ装置1010は、その後、選択されるエントリ(例えば、エントリ904−8)を表すデータを、システム100に提供することができ、そして、これに応答して、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセット(例えば、バーチャル・リアリティ・データセット1400)を受信することができる。例えば、メディア・プレーヤ装置1010は、ネットワーク1008の手段により、複数のビデオ・データ・ストリームを含むトランスポート・ストリーム(例えば、ビデオ・データ・ストリーム1404を含むトランスポート・ストリーム1402)を受信することができる。
特定のバーチャル・リアリティ・データセットを受信すると、メディア・プレーヤ装置1010は、特定のバーチャル・リアリティ・データセットを処理して、特定のバーチャル・リアリティ体験をユーザ1012に提供することができる。例えば、バーチャル・リアリティ・データセット1400を使用して、メディア・プレーヤ装置1010は、比較的高いレベルの詳細で、領域302−8の近くにあるオブジェクト204−1及び他のオブジェクトを含むバーチャル・リアリティ・メディア・コンテンツを提示することができる、一方で、ユーザ1012がバーチャル・ビューポイント304から鑑賞することができる場合と比べて、3Dシーンの他の領域202に関する更なる詳細について帯域幅を浪費しない。
システム100が、バーチャル・リアリティ・データセット1400をメディア・プレーヤ装置1010へ提供している(例えば、ストリーミングしている)間、システム100は、以下を検出することができる:メディア・プレーヤ装置1010が、(例えば、体験選択データ構造900の手段により)異なるエントリ(例えば、以前選択されたエントリ904−8以外のエントリ)を選択すること、ここで、前記異なるエントリは、異なるバーチャル・リアリティ・データセットに対応し、前記データセットは、異なるバーチャル・リアリティ体験へとカスタマイズされる。かくして、メディア・プレーヤ装置1010が異なるエントリを選択することに応答して、システム100は、異なるバーチャル・リアリティ体験へとカスタマイズされる異なるバーチャル・リアリティ・データセットを、メディア・プレーヤ装置1010へ提供することができる。例えば、元々のバーチャル・リアリティ体験が3Dシーン202の領域302−8に関連していた場合、新たな、異なるバーチャル・リアリティ体験は、以下に関連してもよい:領域302−8(例えば、領域302−9)とは異なる3Dシーン202の領域302。従って、メディア・プレーヤ装置1010は、異なるバーチャル・リアリティ体験へとカスタマイズされる異なるバーチャル・リアリティ・データセットに対応する異なるエントリを選択することができ、前記選択は、以下に応答して行うことができる:領域302−8内の第1の位置から、3Dシーン202の領域302−9内の第2の位置へのバーチャル・ビューポイント304の移動を表すユーザ入力を受信すること(例えば、ユーザ1012から)。
メディア・プレーヤ装置1010へ提供されるバーチャル・リアリティ・データセットは、メディア・プレーヤ装置1010がレンダリングを行うように構成されるバーチャル・リアリティ・メディア・コンテンツを表現することができる。例えば、上述したように、バーチャル・リアリティ・データセットは、以下を含むことができ、又は以下を表すことができる:複数の2Dビデオ・データ・ストリーム(例えば、各ビュー及び仮想化プロジェクションに関連する色彩及び深度データに関連する2Dビデオ・データ・ストリーム)、ここで、前記2Dビデオ・データ・ストリームは、メディア・プレーヤ装置1010によってレンダリングすることができ、結果として、3Dシーン202内の任意のバーチャル・ビューポイントからの仮想的な3Dシーン202のビューを提示することができる(例えば、任意のキャプチャ・デバイス・ビュー又はカスタマイズされるビューとは不揃いであるが、ユーザ1012の興味の対象となる可能性のあるバーチャル・ビューポイント(例えば、バーチャル・ビューポイント304)を含む)。バーチャル・リアリティ・データセットは、ネットワーク1108の手段により、1以上のメディア・プレーヤ装置(例えば、ユーザ1012に関連するメディア・プレーヤ装置1010)に配信されてもよい。例えば、プロバイダ・システム(例えば、プロバイダ・システム1002又は1102)は、異なるバーチャル・リアリティ・データセットをメディア・プレーヤ装置1010に提供することができ、その結果、ユーザ1012は、メディア・プレーヤ装置1010を使用して、3Dシーン202を仮想的に体験することができる。
幾つかの例において、ユーザ1012にとっては、3Dシーン202内の1以上の不連続な位置に限定されることは、望ましくない可能性がある。かくして、プロバイダ・システムは、メディア・プレーヤ装置1010へ提供される各バーチャル・リアリティ・データセット内に十分なデータを提供することができ、3Dシーン202を、ビュー402及び/又は702から表現するだけでなく、3Dシーン202内の任意のバーチャル・ロケーションに対応する動的に選択可能なバーチャル・ビューポイントから表現することを可能にする。例えば、ユーザ1012が、メディア・プレーヤ装置1010を使用して、3Dシーン202を体験している間、動的に選択可能なバーチャル・ビューポイントは、ユーザ1012によって選択されてもよい。
本明細書で使用するが、「任意のバーチャル・ロケーション」は、3Dシーンの表現に関連する空間における任意のバーチャル・ポイントを意味してもよい。例えば、任意のバーチャル・ロケーションは、3Dシーンを囲む固定位置(例えば、ビュー402及び/又はカスタマイズされるビュー702に関連する固定位置)に限定されるものではなく、ビュー402及びビュー702に関連する位置の間の全ての位置も含むことができる。幾つかの例において、こうした任意のバーチャル・ロケーションは、3Dシーン202内の最も望ましいバーチャル・ビューポイントに対応してもよい。例えば、3Dシーン202がバスケットボールのゲームを含む場合、ユーザ1012は、動的にバーチャル・ビューポイント(例えば、バーチャル・ビューポイント304等)を選択することができ、そこから、バスケットボールのコートの任意のバーチャル・ロケーションにあるゲームを体験することができる。例えば、ユーザは、動的にユーザのバーチャル・ビューポイントを選択することができ、バスケットボールのコートの上下にバスケットボールを追従することができ、そして、ゲームの進行中のバスケットボールのコートに立っているかのごとく、バスケットボールのゲームを体験することができる。
図15が示すのは、様々な例示的なタイプのメディア・プレーヤ装置1010であり、前記装置は、バーチャル・リアリティ・メディア・コンテンツを体験するユーザ1012によって使用されてもよい。具体的には、示すように、メディア・プレーヤ装置1010は、幾つかの異なる形態要素のうち1つをとることができる(例えば、ヘッドマウント・バーチャル・リアリティ・デバイス1502(例えば、バーチャル・リアリティ・ゲーム・デバイス)(ヘッドマウント・ディスプレイ・スクリーンを含む))、個人用コンピュータ・デバイス1504(例えば、デスクトップ・コンピュータ、ラップトップ・コンピュータ等)、モバイル・デバイス若しくはワイヤレス・デバイス1506(例えば、スマートフォン、タブレット・デバイス等、これらは、ヘッドマウント装置の手段によりユーザ1012の頭部に取り付けることが可能)、又は特定の実施に寄与して、バーチャル・リアリティ・メディア・コンテンツの受信及び/若しくは提示を促進することができる任意の他のデバイス若しくはデバイスの構成。異なるタイプのメディア・プレーヤ装置(例えば、ヘッドマウント・バーチャル・リアリティ・デバイス、個人用コンピュータ・デバイス、モバイル・デバイス等)は、異なるレベルの没入性を有する異なるタイプのバーチャル・リアリティ体験を、ユーザ1012に提供することができる。
図16は、例示的なバーチャル・リアリティ体験1600を示し、ここで、ユーザ1012には、例示的なバーチャル・リアリティ・メディア・コンテンツが提示され、前記コンテンツは、3Dシーンを表し、前記3Dシーンは、現実世界シーンに関する例示的な任意のバーチャル・ロケーションに対応する動的に選択可能なバーチャル・ビューポイントから体験される。具体的には、バーチャル・リアリティ・メディア・コンテンツ1602は、視野1604内に提示され、前記コンテンツが示すのは、シュートが行われている3Dシーン1606の表現内のバスケットボールのゴールの直下にある任意のバーチャル・ロケーションに対応するバーチャル・ビューポイントからの3Dシーン1606である。ユーザ1012は、以下によって、3Dシーン1606を体験する:ユーザ入力(例えば、頭部の動き、キーボード・インプット等)を行い、3Dシーン1606を見回す、及び/又は、動き回ること(即ち、体験する箇所からバーチャル・ビューポイントを動的に選択する)。
例えば、視野1604は、ウィンドウを提供し、前記ウィンドウを通して、ユーザ1012は、容易に且つ自然に、3Dシーン1606のバーチャル表現を見回ることができる。視野1604は、メディア・プレーヤ装置1010(例えば、メディア・プレーヤ装置1010のディスプレイ・スクリーン上に)によって提示されてもよく、そして、前記視野1604は、以下を含むことができる:3Dシーン1606内のユーザ1012を囲むオブジェクトを描写するビデオ。更には、視野1604は、ユーザ1012が3Dシーン1606を体験する際に、ユーザ1012が提供するユーザ入力に応答して、動的に変化することができる。例えば、メディア・プレーヤ装置1010は、ユーザ入力を検出することができる(例えば、視野1604が提示されるディスプレイ・スクリーンを移動又は回転する)。これに応答して、視野1604は、以下を提示することができる:異なるオブジェクト及び/又は以前のバーチャル・ビューポイント若しくはバーチャル・ロケーションから見えるオブジェクトの場所において、異なるバーチャル・ビューポイント若しくはバーチャル・ロケーションから見えるオブジェクト。
図16において、3Dシーン1606は半球で示されており、このことは、ユーザ1012が3Dシーン1606が任意の方向を見ることができることを示し、前記任意の方向とは、実質的には、ユーザ1012が現在選択したバスケットボールのゴール下のロケーションにおけるバーチャル・ビューポイントから見て、前方向、後方向、左方向、右方向、及び/又は上方向である。他の例において、3Dシーン1606は、さらに180°分の球体を追加した全体360°を含むことができ、その結果、ユーザ1012は、下方向も見ることができる。更には、ユーザ1012は、3Dシーン1606内の他のロケーションへと動き回ることができる(即ち、異なる動的に選択可能なバーチャル・ビューポイントを動的に選択する)。例えば、ユーザ1012は以下を選択することができる:ハーフ・コートにおけるバーチャル・ビューポイント、バスケットボールのゴールに向かいあうフリー・スロー・ラインからのバーチャル・ビューポイント、バスケットボールのゴール上部で停止したバーチャル・ビューポイント等。
図17が示すのはバーチャル・リアリティ・データをカスタマイズするための例示的な方法1700である。図17は、1つの実施形態に従った例示的なオペレーションを示すが、他の実施形態では、図17に示す任意のオペレーションに対して、省略、追加、並べ替え、及び/又は変更してもよい。図17に示す1以上のオペレーションは、以下によって実行されてもよい:システム100、前記システムの実装、及び/又は、システム100に関連する(例えば、通信可能に接続される、共同で動作ように構成される等)上述した別のシステム。
オペレーション1702において、バーチャル・リアリティ・システムは、メタデータにアクセスすることができ、前記メタデータは、複数の表面データ・フレーム・シーケンスを記述することができ、前記シーケンスは、3Dシーンの異なるビューをそれぞれ描写することができる。オペレーション1702は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1704において、バーチャル・リアリティ・システムは、エクスペリエンス・パラメータのセットを特定することができ、前記パラメータのセットは、特定のバーチャル・リアリティ体験を表してもよい。例えば、特定のバーチャル・リアリティ体験は、複数のバーチャル・リアリティ体験内に含まれてもよく、前記複数のバーチャル・リアリティ体験は、3Dシーンに関連してもよく、そして、それぞれ、メディア・プレーヤ装置によって、ユーザに提供可能であってもよい。幾つかの例において、メディア・プレーヤ装置は、以下の動作を行うように構成されてもよい:特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを処理することによって、ユーザに特定のバーチャル・リアリティ体験を提供すること。オペレーション1704は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1706において、バーチャル・リアリティ・システムは、表面データ・フレーム・シーケンスを、複数の表面データ・フレーム・シーケンスから、フレーム・シーケンス・サブセット内に含める目的で選択することができ、前記フレーム・シーケンス・サブセットは、特定のバーチャル・リアリティ・データセットの基礎となる。例えば、表面データ・フレーム・シーケンスは、オペレーション1704にて特定されたエクスペリエンス・パラメータのセットに基づいて、及び/又は、オペレーション1702にてアクセスされた複数のデータフレーム・シーケンスに関連するメタデータに基づいて、フレーム・シーケンス・サブセット内に含める目的で選択されてもよい。オペレーション1706は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1708において、バーチャル・リアリティ・システムは、体験選択データ構造を生成することができ、前記体験選択データ構造は、異なるエントリの動的選択を促進するように構成されてもよい。より具体的には、メディア・プレーヤ装置が異なるバーチャル・リアリティ・データセットを処理することによって異なるバーチャル・リアリティ体験をユーザに提供する際に、体験選択データ構造は、メディア・プレーヤ装置が、異なるエントリを体験選択データ構造内に含まれる複数のエントリから動的に選択することを促進することができる。幾つかの例において、複数のエントリは、それぞれ異なるバーチャル・リアリティ・データセットに対応してもよく、前記データセットは、3Dシーンに関連する複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験へとカスタマイズされてもよい。オペレーション1708は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1710において、バーチャル・リアリティ・システムは、以下を含むことができる:オペレーション1708にて生成された体験選択データ構造内の特定のバーチャル・リアリティ・データセットに対応するエントリ。例えば、バーチャル・リアリティ・システムは、以下に基づいて、特定のバーチャル・リアリティ・データセットに対応するエントリを含むことができる:オペレーション1706にて、特定のバーチャル・リアリティ・データセットの基礎となるフレーム・シーケンス・サブセット内に含める目的で表面データ・フレーム・シーケンスを選択すること。オペレーション1710は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1712において、バーチャル・リアリティ・システムは、体験選択データ構造をメディア・プレーヤ装置に提供することができる。オペレーション1712は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1714において、バーチャル・リアリティ・システムは以下を検出することができる:メディア・プレーヤ装置が、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットに対応するエントリを選択すること。例えば、バーチャル・リアリティ・システムは、オペレーション1708において生成された体験選択データ構造の手段により、以下を検出することができる:メディア・プレーヤ装置が、オペレーション1710にて体験選択データ構造内に含まれる特定のバーチャル・リアリティ・データセットに対応するエントリを選択すること。オペレーション1714は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1716において、バーチャル・リアリティ・システムは、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを、メディア・プレーヤ装置へ提供することができる。例えば、オペレーション1714にてメディア・プレーヤ装置が特定のバーチャル・リアリティ・データセットに対応するエントリを選択することを検出することに応答して、バーチャル・リアリティ・システムは、特定のバーチャル・リアリティ・データセットを、メディア・プレーヤ装置に提供することができる。オペレーション1716は、本明細書に記載の方法のいずれかで実行されてもよい。
図18が示すのはバーチャル・リアリティ・データをカスタマイズするための例示的な方法1800である。図18は、1つの実施形態に従った例示的なオペレーションを示すが、他の実施形態では、図18に示す任意のオペレーションに対して、省略、追加、並べ替え、及び/又は変更してもよい。図18に示す1以上のオペレーションは、以下によって実行されてもよい:システム100、前記システムの実装、及び/又は、システム100に関連する(例えば、通信可能に接続される、共同で動作ように構成される等)上述した別のシステム。
オペレーション1802において、バーチャル・リアリティ・システムは、メタデータにアクセスすることができ、前記メタデータは、現実世界シーンの異なるビューをそれぞれ描写する複数の表面データ・フレーム・シーケンスを記述することができる。例えば、複数の表面データ・フレーム・シーケンスは、以下を含むことができる:仮想化される表面データ・フレーム・シーケンス、ここで、前記表面データ・フレーム・シーケンスは、現実世界シーンのビューを描写するが、前記ビューは、現実世界シーンに対して異なるロケーションに配置される複数のキャプチャ・デバイスによってキャプチャされる現実世界シーンのビューと不揃いであってもよい。幾つかの実施において、オペレーション1802は、現実世界シーンでイベントが発生する間、リアルタイムで実行されてもよい。オペレーション1802は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1804において、バーチャル・リアリティ・システムは、現実世界シーン内の位置を特定することができ、そこから、特定のバーチャル・リアリティ体験がメディア・プレーヤ装置によってユーザに提供可能となってもよい。メディア・プレーヤ装置は、以下の動作を行うように構成されてもよい:特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを処理することによって、ユーザに特定のバーチャル・リアリティ体験を提供すること。オペレーション1802に関して、特定の実施において、オペレーション1804は、現実世界シーンでイベントが発生する間、リアルタイムで実行されてもい。オペレーション1804は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1806において、バーチャル・リアリティ・システムは、表面データ・フレーム・シーケンスを、複数の表面データ・フレーム・シーケンスから、フレーム・シーケンス・サブセット内に含める目的で選択することができ、前記フレーム・シーケンス・サブセットは、特定のバーチャル・リアリティ・データセットの基礎となってもよい。幾つかの例において、バーチャル・リアリティ・システムは、表面データ・フレーム・シーケンスを、フレーム・シーケンス・サブセット内に含める目的で選択してもよく、前記選択は、オペレーション1804で特定される位置に基づいてもよく、及び/又はオペレーション1802でアクセスされる複数のデータフレーム・シーケンスに関連するメタデータに基づいてもよい。オペレーション1802及び1804に関して、特定の実施において、オペレーション1806は、現実世界シーンでイベントが発生する間、リアルタイムで実行されてもい。オペレーション1806は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1808において、バーチャル・リアリティ・システムは、体験選択データ構造内の特定のバーチャル・リアリティ・データセットに対応するエントリを動的に含むことができる。例えば、バーチャル・リアリティ・システムは、以下に基づいて、特定のバーチャル・リアリティ・データセットに対応するエントリを動的に含むことができる:オペレーション1806にて、特定のバーチャル・リアリティ・データセットの基礎となるフレーム・シーケンス・サブセット内に含める目的で表面データ・フレーム・シーケンスを選択すること。体験選択データ構造は、以下の動作を行うように構成されてもよい:体験選択データ構造内に含まれる複数のエントリからの異なるエントリの動的選択を促進すること。例えば、体験選択データ構造は、以下の動作を行うように構成されてもよい:メディア・プレーヤ装置が現実世界シーン内の異なる位置からの異なるバーチャル・リアリティ体験をユーザに提供する際に、メディア・プレーヤ装置によって異なるエントリを動的に選択することを促進すること。複数のエントリは、各々、異なるバーチャル・リアリティ・データセットに対応してもよく、前記異なるバーチャル・リアリティ・データセットは、現実世界シーン内の異なる位置からの複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験にカスタマイズされてもよい。オペレーション1802〜1806に関して、特定の実施において、オペレーション1808は、現実世界シーンでイベントが発生する間、リアルタイムで実行されてもい。オペレーション1808は、本明細書に記載の方法のいずれかで実行されてもよい。
図19が示すのはバーチャル・リアリティ・データをカスタマイズするための例示的な方法1900である。図19は、1つの実施形態に従った例示的なオペレーションを示すが、他の実施形態では、図19に示す任意のオペレーションに対して、省略、追加、並べ替え、及び/又は変更してもよい。図19に示す1以上のオペレーションは、以下によって実行されてもよい:メディア・プレーヤ装置1010、前記メディア・プレーヤ装置の実装、及び/又は本明細書に記載の若しくは特定の実施に寄与することができる別のメディア・プレーヤ装置。
オペレーション1902において、メディア・プレーヤ装置は、バーチャル・リアリティ・システムから、バーチャル・リアリティ・システムが生成する体験選択データ構造にアクセスすることができる。例えば、体験選択データ構造は、以下の動作を行うように構成されてもよい:メディア・プレーヤ装置が、異なるバーチャル・リアリティ・データセットを処理することによって、異なるバーチャル・リアリティ体験をユーザに提供する際に、メディア・プレーヤ装置による体験選択データ構造内に含まれる複数のエントリからの異なるエントリの動的選択を促進すること。幾つかの例において、体験選択データ構造内に含まれる複数のエントリは、それぞれ、異なるバーチャル・リアリティ・データセットに対応してもよく、前記データセットは、3Dシーンに関連する複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験へとカスタマイズされてもよい。オペレーション1902は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1904において、メディア・プレーヤ装置は、体験選択データ構造の手段により、エントリを複数のエントリから選択することができる。例えば、エントリは、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットと対応してもよい。オペレーション1904は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1906において、メディア・プレーヤ装置は、体験選択データ構造の手段により選択されるエントリを表すデータを、バーチャル・リアリティ・システムに提供することができる。オペレーション1906は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1908において、メディア・プレーヤ装置は、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを受信することができる。例えば、メディア・プレーヤ装置は、オペレーション1906におけるエントリを表すデータの提供に応答して、特定のバーチャル・リアリティ・データセットを、バーチャル・リアリティ・システムから受信することできる。オペレーション1908は、本明細書に記載の方法のいずれかで実行されてもよい。
オペレーション1910において、メディア・プレーヤ装置は、オペレーション1908にて受信され、特定のバーチャル・リアリティ体験へとカスタマイズされる特定のバーチャル・リアリティ・データセットを処理することができる。特定のバーチャル・リアリティ・データセットを処理することによって、メディア・プレーヤ装置は、特定のバーチャル・リアリティ体験をユーザに提供することができる。オペレーション1910は、本明細書に記載の方法のいずれかで実行されてもよい。
特定の実施形態において、本明細書に記載の1以上のシステム、コンポーネント、及び/又はプロセスは、1以上の適切に構成されたコンピューティング・デバイスによって実施及び/又は実行されてもよい。この目的のため、上述した1以上のシステム及び/又はコンポーネントは、以下を含んでもよく、又は、以下によって実装されてもよい:任意のコンピュータ・ハードウェア、及び/又は本明細書に記載の1以上のプロセスを実行するように構成される少なくとも1つの非一時的コンピュータ可読媒体に記録される、コンピュータで実装されるインストラクション(例えば、ソフトウェア)。特に、システム・コンポーネントは、1つの物理的なコンピューティング・デバイスによって実装されてもよいし、又は、複数の物理的なコンピューティング・デバイスで実装されてもよい。従って、システム・コンポーネントは、任意の数のコンピューティング・デバイスを含むことができ、そして、任意の数のコンピュータオペレーティングシステムを採用することができる。
特定の実施形態において、本明細書に記載の1以上のプロセスは、非一時的コンピュータ可読媒体に記録され、1以上のコンピューティング・デバイスによって実行可能なインストラクションとして、少なくとも部分的に実施されてもよい。一般的に、プロセッサ(例えば、マイクロプロセッサ)は、インストラクションを、非一時的コンピュータ可読媒体(例えば、メモリ等)から受け取り、そして、これらのインストラクションを実行し、これにより、本明細書に記載の1以上のプロセスを含む1以上のプロセスを実行する。こうしたインストラクションは、任意の様々な既知のコンピュータ可読媒体を使用して記憶することができ、及び/又は送ることができる。
コンピュータ可読媒体(プロセッサ可読媒体とも言う)は、任意の非一時的媒体を含み、コンピュータによって(例えば、コンピュータのプロセッサによって)読み取ることができるデータ(例えば、インストラクション)を提供することに寄与する。こうした媒体は、多くの形態をとることができ、限定されるものではないが、以下を含む:不揮発性メディア及び/又は揮発性メディア。不揮発性メディアは、以下を含むことができる:例えば、光学ディスク又は磁気ディスク及び他の固定メモリ。揮発性メディアは、以下を含むことができる:例えば、ダイナミック・ランダム・アクセス・メモリ(「DRAM」)であって、典型的にはメインメモリを構成する物。コンピュータ可読媒体の通常の形態として以下を含む:例えば、ディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、コンパクト・ディスク・リード・オンリ・メモリ(「CD-ROM」)、デジタル・ビデオ・ディスク(「DVD」)、任意の他の光学媒体、ランダム・アクセス・メモリ(「RAM」)、プログラマブル・リード・オンリ・メモリ(「PROM」)、電気的に消去可能なプログラマブル・リード・オンリ・メモリ(「EPROM」)、FLASH-EEPROM、任意の他のメモリチップ、若しくはカートリッジ、又はコンピュータが読み取り可能な任意の他の有形の媒体。
図20は、例示的なコンピューティング・デバイス2000を示し、当該デバイスは、特に、本明細書に記載の1以上のプロセスを実行するように構成されてもよい。図20に示すように、コンピューティング・デバイス2000は、以下を含むことができる:通信インターフェース2002、プロセッサ2004、ストレージ・デバイス2006、及び通信インフラ2010を介して通信可能に接続される入力/出力(「I/O」)モジュール2008。例示的なコンピューティング・デバイス2000を、図20に示すものの、図20に示すコンポーネントは、限定することを意図するものではない。追加又は代替のコンポーネントを、他の実施形態において使用してもよい。図20に示すコンピューティング・デバイス2000のコンポーネントを、以下で、更に詳細に説明する。
通信インターフェース2002は、1以上のコンピューティング・デバイスと通信するように構成されてもよい。通信インターフェース2002の例は、限定されるものではないが、以下を含む:有線ネットワーク・インターフェース(例えば、ネットワーク・インターフェース・カード)、ワイヤレス・ネットワーク・インターフェース(例えば、ワイヤレス・ネットワーク・インターフェース・カード)、モデム、オーディオ/ビデオ接続、及び任意の他の適切なインターフェース)。
プロセッサ2004は、概して、任意のタイプ又は形態の処理ユニット(例えば、中央演算装置及び/又はグラフィックス・プロセッシング・ユニット)を表し、データを処理することができ、又は、本明細書に記載の1以上のインストラクション、プロセス、及び/若しくはオペレーションの実行を解釈し、実行し、及び/若しくは指示することができる。プロセッサ2004は、1以上のアプリケーション2012又は他のコンピュータ可読インストラクション(例えば、ストレージ・デバイス2006又は別のコンピュータ可読媒体に記憶されてもよい)に従って、オペレーションの実行を指示することができる。
ストレージ・デバイス2006は、1以上のデータ・ストレージ・メディア、デバイス、又は構成を含むことができ、そして、データストレージ・メディア及び/又はデバイスを任意のタイプ、任意の形態、及び任意の組み合わせで採用することができる。例えば、ストレージ・デバイス2006は、以下を含むことができるが、これらに限定されない:ハード・ドライブ、ネットワーク・ドライブ、フラッシュ・ドライブ、磁気ディスク、光学ディスク、RAM、ダイナミックRAM、他の不揮発性及び/又は揮発性のデータ・ストレージ・ユニット、又はこれらのコンビネーション若しくはサブコンビネーション。電子データは、本明細書に記載のデータを含むが、一時的に及び/又は永続的に、ストレージ・デバイス2006に記憶されてもよい。例えば、1以上の実行可能なアプリケーション2012を表すデータであって、プロセッサ2004に指示して本明細書に記載の任意のオペレーションを実行するように構成されるデータは、ストレージ・デバイス2006内に記憶されてもよい。幾つかの例において、データは、ストレージ・デバイス2006内に存在する1以上のデータベースに配置することができる。
I/Oモジュール2008は、1以上のI/Oモジュールを含むことができ、当該モジュールは、ユーザ入力を受け取り、そして、ユーザ出力を提供するように構成されてもよい。1以上のI/Oモジュールを用いて、単独のバーチャル・リアリティ・エクスペリエンスのためのインプットを受け取ってもよい。I/Oモジュール2008は、インプット及びアウトプット能力をサポートする任意のハードウェア、ファームウェア、ソフトウェア、又はこれらの組み合わせを含むことができる。例えば、I/Oモジュール2008は、ユーザ入力をキャプチャするハードウェア及び/又はソフトウェアを含むことができ、限定されるものではないが、以下を含むことができる:キーボード若しくはキーパッド、タッチスクリーン・コンポーネント(例えば、タッチスクリーン・ディスプレイ)、レシーバー(例えば、RF又は赤外線受信機)、モーション・センサ、及び/又は1以上のインプットボタン。
I/Oモジュール2008は、アウトプットをユーザに提示するために1以上のデバイスを含むことができ、限定されるものではないが、以下を含むことができる:グラフィックス・エンジン、ディスプレイ(例えば、ディスプレイ・スクリーン)、1以上のアウトプット・ドライバ(例えば、ディスプレイ・ドライバ)、1以上のオーディオ・スピーカ、及び1以上のオーディオ・ドライバ。特定の実施形態において、I/Oモジュール2008は、ユーザに提示するためのディスプレイにグラフィカルなデータを提供するように構成される。このグラフィカルなデータは、特定の実施に寄与することができる1以上のグラフィカル・ユーザ・インターフェース、及び/又は任意の他のグラフィカルなコンテンツを表すものであってもよい。
幾つかの例において、本明細書に記載の任意の設備は、コンピューティング・デバイス2000の1以上のコンポーネントによって実装されてもよく、又は当該コンポーネント内で実装されてもよい。例えば、ストレージ・デバイス2006内に存在する1以上のアプリケーション2012は、システム100(図1参照)の体験選択データ構造管理設備102又はバーチャル・リアリティ・データセット管理設備104に関連する1以上のオペレーション又は機能を実行するようにプロセッサ2004に命令するように構成されてもよい。同様に、システム100のストレージ設備106は、ストレージ・デバイス2006によって実装されてもよく、又は該デバイス内で実装されてもよい。
上述の実施形態が、個人によって提供される個人情報を収集、記憶、及び/又は採用する限度において、以下のように理解されたい:こうした情報は、個人情報の保護に関する全ての適用可能な法律に従って、使用することができる。更には、こうした情報の収集、記憶、及び使用は、こうした活動に対する個人の同意を得てもよい(例えば、情報の状況及びタイプに適した良く知られた「オプトイン」又は「オプトアウト」プロセスを通して)。個人情報の記憶及び使用について、適切に安全な態様で、例えば、特にセンシティブな情報に対して様々な暗号化及び匿名化を通した情報のタイプを反映したものであってもよい。
上記説明において、様々な例示的実施形態について、添付図面に言及しながら説明してきた。しかし、以下の点は明白であろう:これらに対して様々な改変及び変更を行うことができ、そして、更なる実施形態を実施することができ、こうした、改変及び変更、並びに実施は、下記の特許請求の範囲に記載された発明の範囲から逸脱することなく、可能である。例えば、本明細書に記載の1つの実施形態の特定の特徴は、本明細書に記載の別の実施形態の特徴と組み合わせることができ、又は置き換えることができる。従って、上記説明及び図面は、限定的な意味ではなく、例示的な意味で理解すべきものである。

Claims (20)

  1. 以下を含む方法:
    バーチャル・リアリティ・システムが体験選択データ構造を生成すること、ここで、前記体験選択データ構造は、メディア・プレーヤ装置が、異なるバーチャル・リアリティ・データセットを処理することによって異なるバーチャル・リアリティ体験をユーザに提供する際に、前記体験選択データ構造内に含まれる複数のエントリからの前記メディア・プレーヤ装置による異なるエントリの動的選択を促進するように構成され、前記複数のエントリ各々は異なるバーチャル・リアリティ・データセットに対応し、前記バーチャル・リアリティ・データセットは、3次元の(3D)シーンに関連する複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験へとカスタマイズされる;
    前記バーチャル・リアリティ・システムが前記メディア・プレーヤ装置に前記体験選択データ構造を提供すること;
    前記メディア・プレーヤ装置が前記体験選択データ構造の手段によりエントリを前記複数のエントリから選択することを、前記バーチャル・リアリティ・システムが検出すること、ここで、前記エントリは、特定のバーチャル・リアリティ・データセットに対応し、前記特定のバーチャル・リアリティ・データセットは、特定のバーチャル・リアリティ体験へとカスタマイズされる;及び、
    前記バーチャル・リアリティ・システムが、前記メディア・プレーヤ装置へ、前記メディア・プレーヤ装置が前記エントリを選択した旨の前記検出に応答して、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを提供すること。
  2. 請求項1の方法であって、更に、以下を含む、方法:
    前記バーチャル・リアリティ・システムが前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを前記メディア・プレーヤ装置に提供している間、前記メディア・プレーヤ装置が前記体験選択データ構造の手段により、異なるエントリを前記複数のエントリから選択することを、前記バーチャル・リアリティ・システムが検出すること、ここで、前記異なるエントリは、異なる特定のバーチャル・リアリティ・データセットに対応し、前記特定のバーチャル・リアリティ・データセットは異なる特定のバーチャル・リアリティ体験へとカスタマイズされる;及び、
    前記バーチャル・リアリティ・システムが、前記メディア・プレーヤ装置へ、前記メディア・プレーヤ装置が前記異なるエントリを選択する旨の検出に応答して、前記異なる特定のバーチャル・リアリティ体験へとカスタマイズされる前記異なる特定のバーチャル・リアリティ・データセットを提供すること。
  3. 請求項2の方法であって、以下の特徴を有する方法:
    前記特定のバーチャル・リアリティ体験が前記3Dシーンの第1の領域に関連する;
    前記異なる特定のバーチャル・リアリティ体験が前記第1の領域とは異なる前記3Dシーンの第2の領域に関連する;及び、
    前記メディア・プレーヤ装置が、前記異なる特定のバーチャル・リアリティ体験へとカスタマイズされる前記異なる特定のバーチャル・リアリティ・データセットに対応する前記異なるエントリを、前記3Dシーンの前記第1の領域内の第1の位置から前記3Dシーンの前記第2の領域内の前記第2の位置への前記ユーザのバーチャル・ビューポイントの動きを表すユーザ入力を受信することに応答して、選択する。
  4. 請求項1の方法であって、以下の特徴を有する、方法:
    前記3Dシーンは、現実世界シーンの要素を含み、前記現実世界シーンは、複数のキャプチャ・デバイスによってキャプチャされ、前記複数のキャプチャ・デバイスは、前記現実世界シーンに対して異なるロケーションに配置され、その結果、現実世界シーンの異なるビューをキャプチャし、前記異なるビュー各々は、前記複数のキャプチャ・デバイスにおける異なるキャプチャ・デバイスによってキャプチャされ、そして、前記異なるビュー各々は、複数の表面データ・フレーム・シーケンス内に含まれる異なる表面データ・フレーム・シーケンス内で描写される;
    前記複数の表面データ・フレーム・シーケンスが仮想化される表面データ・フレーム・シーケンスを含み、前記仮想化される表面データ・フレーム・シーケンスは、前記現実世界シーンのビューを描写し、前記現実世界シーンのビューは、前記複数のキャプチャ・デバイスによってキャプチャされる前記現実世界シーンの異なるビューとは不揃いである;並びに、
    前記方法が以下の工程を更に含む:
    前記バーチャル・リアリティ・システムが、前記特定のバーチャル・リアリティ体験を記述するエクスペリエンス・パラメータのセットを特定すること、及び、
    前記バーチャル・リアリティ・システムが、前記特定されるエクスペリエンス・パラメータのセットに基づいて、表面データ・フレーム・シーケンスを、前記複数の表面データ・フレーム・シーケンスから選択すること、ここで、前記選択の目的は、フレーム・シーケンス・サブセット内に含めることであり、前記フレーム・シーケンス・サブセットは、前記特定のバーチャル・リアリティ・データセットの基礎であり、前記フレーム・シーケンス・サブセットは前記仮想化される表面データ・フレーム・シーケンスを含む;並びに、
    前記体験選択データ構造を生成することが、前記体験選択データ構造内に、前記特定のバーチャル・リアリティ・データセットの基礎となる前記フレーム・シーケンス・サブセット内に含める目的での表面データ・フレーム・シーケンスの前記選択に基づいて、前記特定のバーチャル・リアリティ・データセットに対応する前記エントリを含めることを含むこと。
  5. 請求項1の方法であって、更に、以下を含む、方法:
    前記バーチャル・リアリティ・システム内に含まれる第1のサーバが、複数の表面データ・フレーム・シーケンス内に含まれる第1の表面データ・フレーム・シーケンスへアクセスすること、ここで、前記複数の表面データ・フレーム・シーケンスは、それぞれ、前記3Dシーンの異なるビューを描写する色彩フレーム及び深度フレームを含む;
    前記第1のサーバとは別個であり、且つ、前記バーチャル・リアリティ・システム内に更に含まれる第2のサーバが、前記複数の表面データ・フレーム・シーケンス内に含まれる第2の表面データ・フレーム・シーケンスにアクセスすること;
    前記第1のサーバが、前記バーチャル・リアリティ・システム内に含まれ、且つ前記第1のサーバー及び第2のサーバとネットワークの手段により通信可能に接続されるマネージメント・サーバへ、前記マネージメント・サーバから送信されるリクエストに応答して、第1の個別トランスポート・ストリームの手段により前記第1の表面データ・フレーム・シーケンス内に含まれる色彩フレーム及び深度フレームを送信すること;並びに、
    前記第2のサーバが、前記マネージメント・サーバへ、前記リクエストに応答して、且つ、前記第1のサーバの前記送信に同期して、第2の個別トランスポート・ストリームの手段により前記第2の表面データ・フレーム・シーケンス内に含まれる色彩フレーム及び深度フレームを送信すること。
  6. 請求項5の方法であって、更に、以下を含み:
    前記マネージメント・サーバが、表面データ・フレーム・シーケンスを、前記複数の表面データ・フレーム・シーケンスから、フレーム・シーケンス・サブセット内に含める目的で選択すること、ここで、前記フレーム・シーケンス・サブセットは、前記特定のバーチャル・リアリティ・データセットの基礎であり、前記表面データ・フレーム・シーケンスは、前記第1の表面データ・フレーム・シーケンス及び第2の表面データ・フレーム・シーケンスを含む前記フレーム・シーケンス・サブセットに含める目的で選択される;
    前記マネージメント・サーバが、前記第1のサーバー及び第2のサーバへ、前記フレーム・シーケンス・サブセット内に含める目的での表面データ・フレーム・シーケンスの選択に応答して、前記リクエストを送信し、前記リクエストに応答して、前記第1のサーバー及び第2のサーバが前記第1の表面データ・フレーム・シーケンス及び第2の表面データ・フレーム・シーケンス内にそれぞれ含まれる前記色彩フレーム及び深度フレームを同期して送信すること;
    前記マネージメント・サーバが、前記第1のサーバから、前記ネットワークの手段により、前記第1の表面データ・フレーム・シーケンス内に含まれる前記色彩フレーム及び深度フレームを受信すること;
    前記マネージメント・サーバが、前記第2のサーバから、前記ネットワークの手段により、且つ、前記第1のサーバからの前記色彩フレーム及び深度フレームの受信と同期して、前記第2の表面データ・フレーム・シーケンス内に含まれる前記色彩フレーム及び深度フレームを受信すること;及び
    前記マネージメント・サーバが、前記第1のサーバー及び第2のサーバから同期して受信される前記色彩フレーム及び深度フレームをパッケージ化し、追加のトランスポート・ストリームを生成すること、ここで、追加のトランスポート・ストリームは、ビデオ・データ・ストリームを含み、前記ビデオ・データ・ストリームは、前記フレーム・シーケンス・サブセット内に含める目的で選択される表面データ・フレーム・シーケンスに対応する;
    ここで:
    前記追加のトランスポート・ストリームは、前記メディア・プレーヤ装置へストリーミングを行う目的で構成され、そして、
    前記特定のバーチャル・リアリティ体験へとカスタマイズされ、前記メディア・プレーヤ装置へ提供される前記特定のバーチャル・リアリティ・データセットは、前記追加のトランスポート・ストリームを含む。
  7. 請求項5の方法であって、ここで、前記第1の表面データ・フレーム・シーケンス及び第2の表面データ・フレーム・シーケンス内に含まれる前記色彩フレーム及び深度フレームを、前記第1の個別トランスポート・ストリーム及び第2の個別トランスポート・ストリームの手段によって、それぞれ同期送信することは、以下を含む:
    前記第1のサーバが、同期サーバへデータを送信することであって、前記データが示すのは、前記第1の表面データ・フレーム・シーケンス内に含まれる第1の色彩フレーム及び深度フレームが前記第1のサーバによって受信されたことであり;
    前記第2のサーバが、前記同期サーバへ、データを送信することであって、前記データが示すのは、前記第2の表面データ・フレーム・シーケンス内に含まれ、且つ前記第1の色彩フレーム及び深度フレームに対応する第2の色彩フレーム及び深度フレームが前記第2のサーバによって受信されたことである;
    前記第1のサーバー及び第2のサーバが、前記同期サーバから、前記第1の及び第2の色彩フレーム及び深度フレームを受信したことを示す前記データの前記送信に応答して、以下を受信すること:第1の及び第2の色彩フレーム及び深度フレームが同期して送信されるべき範囲の指定のタイムフレームを示すデータ;並びに、
    前記第1のサーバー及び第2のサーバが、前記マネージメント・サーバへ、前記第1の及び第2の色彩フレーム及び深度フレームを、それぞれ、指定のタイムフレーム内に送信すること。
  8. 請求項1の方法であって、少なくとも1つの非一時的コンピュータ可読媒体上でコンピュータ可読インストラクションとして具現化される、該方法。
  9. 以下を含む方法:
    メディア・プレーヤ装置が、バーチャル・リアリティ・システムから、体験選択データ構造にアクセスすること、ここで、前記体験選択データ構造は、前記バーチャル・リアリティ・システムによって生成され、前記メディア・プレーヤ装置が、異なるバーチャル・リアリティ・データセットを処理することによって異なるバーチャル・リアリティ体験をユーザに提供する際に、前記体験選択データ構造内に含まれる複数のエントリからの前記メディア・プレーヤ装置による異なるエントリの動的選択を促進し、前記複数のエントリ各々は異なるバーチャル・リアリティ・データセットに対応し、前記バーチャル・リアリティ・データセットは、3次元の(3D)シーンに関連する複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験へとカスタマイズされる;
    前記メディア・プレーヤ装置が、前記体験選択データ構造の手段により、エントリを前記複数のエントリから選択すること、前記エントリは特定のバーチャル・リアリティ・データセットに対応し、前記特定のバーチャル・リアリティ・データセットは、特定のバーチャル・リアリティ体験へとカスタマイズされる;
    前記メディア・プレーヤ装置が、前記バーチャル・リアリティ・システムへ、前記体験選択データ構造の手段により選択される前記エントリを表すデータを提供すること;
    前記メディア・プレーヤ装置が、前記バーチャル・リアリティ・システムから、前記エントリを表す前記データの前記提供に応答して、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを受信すること;及び
    前記メディア・プレーヤ装置が、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを処理して、前記特定のバーチャル・リアリティ体験を前記ユーザに提供すること。
  10. 請求項9の方法であって、ここで、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを受信することが以下を含む、方法:前記メディア・プレーヤ装置を前記バーチャル・リアリティ・システムと通信可能に接続するネットワークの手段により、トランスポート・ストリームを受信すること、ここで、前記トランスポート・ストリームは、複数のビデオ・データ・ストリームを含み、前記ビデオ・データ・ストリームは、表面データ・フレーム・シーケンスのフレーム・シーケンス・サブセットに対応し、表面データ・フレーム・シーケンスは、複数の表面データ・フレーム・シーケンスから選択され、前記複数の表面データ・フレーム・シーケンスは、それぞれ、前記3Dシーンの異なるビューを描写する。
  11. 請求項9の方法であって、少なくとも1つの非一時的コンピュータ可読媒体上でコンピュータ可読インストラクションとして具現化される、方法。
  12. 以下を含む、システム:
    以下の動作を行う少なくとも1つの物理的なコンピューティング・デバイス::
    体験選択データ構造を生成すること、ここで、前記体験選択データ構造は、メディア・プレーヤ装置が、異なるバーチャル・リアリティ・データセットを処理することによって異なるバーチャル・リアリティ体験をユーザに提供する際に、前記体験選択データ構造内に含まれる複数のエントリからの前記メディア・プレーヤ装置による異なるエントリの動的選択を促進するように構成され、前記前記複数のエントリ各々は異なるバーチャル・リアリティ・データセットに対応し、前記バーチャル・リアリティ・データセットは、3次元の(3D)シーンに関連する複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験へとカスタマイズされる;
    前記体験選択データ構造を前記メディア・プレーヤ装置に提供すること;
    前記メディア・プレーヤ装置が、前記体験選択データ構造の手段により、エントリを前記複数のエントリから選択することを検出すること、ここで、前記エントリは特定のバーチャル・リアリティ・データセットに対応し、前記特定のバーチャル・リアリティ・データセットは、特定のバーチャル・リアリティ体験へとカスタマイズされる;及び
    前記メディア・プレーヤ装置へ、前記メディア・プレーヤ装置が前記エントリを選択する旨の前記検出に応答して、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを提供すること。
  13. 請求項12のシステムであって、ここで、前記少なくとも1つの物理的なコンピューティング・デバイスが更に以下の動作を行う、システム:
    前記少なくとも1つの物理的なコンピューティング・デバイスが前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを前記メディア・プレーヤ装置へ提供している間、前記メディア・プレーヤ装置が、前記体験選択データ構造の手段により、異なるエントリを前記複数のエントリから選択することを検出すること、ここで、前記異なるエントリは、異なる特定のバーチャル・リアリティ・データセットに対応し、前記特定のバーチャル・リアリティ・データセットは異なる特定のバーチャル・リアリティ体験へとカスタマイズされる;及び
    前記メディア・プレーヤ装置へ、前記メディア・プレーヤ装置が前記異なるエントリを選択する旨の前記検出に応答して、前記異なるバーチャル・リアリティ体験へとカスタマイズされる前記異なるバーチャル・リアリティ・データセットを提供すること。
  14. 請求項13のシステムであって、以下の特徴を含む、システム:
    前記特定のバーチャル・リアリティ体験が前記3Dシーンの第1の領域に関連する;
    前記異なる特定のバーチャル・リアリティ体験が前記第1の領域とは異なる前記3Dシーンの第2の領域に関連する;及び
    前記メディア・プレーヤ装置が、前記異なる特定のバーチャル・リアリティ体験へとカスタマイズされる前記異なる特定のバーチャル・リアリティ・データセットに対応する前記異なるエントリを、前記3Dシーンの前記第1の領域内の第1の位置から前記3Dシーンの前記第2の領域内の前記第2の位置への前記ユーザのバーチャル・ビューポイントの動きを表すユーザ入力を受信することに応答して、選択すること。
  15. 請求項12のシステムであって、以下の特徴を含む、システム:
    前記3Dシーンは、現実世界シーンの要素を含み、前記現実世界シーンは、複数のキャプチャ・デバイスによってキャプチャされ、前記複数のキャプチャ・デバイスは、前記現実世界シーンに対して異なるロケーションに配置され、その結果、現実世界シーンの異なるビューをキャプチャし、前記異なるビュー各々は、前記複数のキャプチャ・デバイスにおける異なるキャプチャ・デバイスによってキャプチャされ、そして、前記異なるビュー各々は、複数の表面データ・フレーム・シーケンス内に含まれる異なる表面データ・フレーム・シーケンス内で描写される;
    前記複数の表面データ・フレーム・シーケンスが仮想化される表面データ・フレーム・シーケンスを含み、前記仮想化される表面データ・フレーム・シーケンスは、前記現実世界シーンのビューを描写し、前記現実世界シーンのビューは、前記複数のキャプチャ・デバイスによってキャプチャされる前記現実世界シーンの異なるビューとは不揃いである;
    前記少なくとも1つの物理的なコンピューティング・デバイスは、更に以下の動作を行う:
    前記特定のバーチャル・リアリティ体験を記述するエクスペリエンス・パラメータのセットを特定すること、及び、
    前記特定されるエクスペリエンス・パラメータのセットに基づいて、表面データ・フレーム・シーケンスを、前記複数の表面データ・フレーム・シーケンスから、フレーム・シーケンス・サブセット内に含める目的で選択すること、ここで、前記フレーム・シーケンス・サブセットは、前記特定のバーチャル・リアリティ・データセットの基礎であり、前記フレーム・シーケンス・サブセットは前記仮想化される表面データ・フレーム・シーケンスを含む;及び
    前記少なくとも1つの物理的なコンピューティング・デバイスは、前記体験選択データ構造を生成し、前記生成は、前記体験選択データ構造内に、前記特定のバーチャル・リアリティ・データセットの基礎となる前記フレーム・シーケンス・サブセット内に含める目的での表面データ・フレーム・シーケンスの前記選択に基づいて、前記特定のバーチャル・リアリティ・データセットに対応する前記エントリを含めることによる。
  16. 請求項12のシステムであって、ここで、前記少なくとも1つの物理的なコンピューティング・デバイスは、以下を含む、システム:
    第1のサーバであって、前記第1のサーバは、複数の表面データ・フレーム・シーケンス内に含まれる第1の表面データ・フレーム・シーケンスにアクセスし、前記複数の表面データ・フレーム・シーケンスは、それぞれ、前記3Dシーンの異なるビューを描写する色彩フレーム及び深度フレームを含む、サーバ;
    第2のサーバであって、前記第1のサーバとは別個のサーバであり、前記複数の表面データ・フレーム・シーケンス内に含まれる第2の表面データ・フレーム・シーケンスにアクセスする、サーバ;及び
    マネージメント・サーバであって、ネットワークの手段により、前記第1のサーバー及び第2のサーバと通信可能に接続される、サーバ;
    ここで:
    前記第1のサーバは、前記マネージメント・サーバへ、前記マネージメント・サーバから送信されるリクエストに応答して、第1の個別トランスポート・ストリームの手段により前記第1の表面データ・フレーム・シーケンス内に含まれる色彩フレーム及び深度フレームを送信し、並びに、
    前記第2のサーバは、前記マネージメント・サーバへ、前記リクエストに応答して、且つ、前記第1のサーバによる送信に同期して、第2の個別トランスポート・ストリームの手段により前記第2の表面データ・フレーム・シーケンス内に含まれる色彩フレーム及び深度フレームを送信する。
  17. 請求項16のシステムであって、以下の特徴を含む、システム:
    前記マネージメント・サーバが:
    表面データ・フレーム・シーケンスを、前記複数の表面データ・フレーム・シーケンスから、フレーム・シーケンス・サブセットに含める目的で選択し、前記フレーム・シーケンス・サブセットは、前記特定のバーチャル・リアリティ・データセットの基礎となり、前記表面データ・フレーム・シーケンスは、前記第1の表面データ・フレーム・シーケンス及び第2の表面データ・フレーム・シーケンスを含む前記フレーム・シーケンス・サブセットに含める目的で選択される;
    前記第1のサーバー及び第2のサーバに、前記フレーム・シーケンス・サブセット内に含める目的での表面データ・フレーム・シーケンスの前記選択に応答して、前記リクエストを送信し、前記リクエストに応答して、前記第1のサーバー及び第2のサーバが同期して前記第1の表面データ・フレーム・シーケンス及び第2の表面データ・フレーム・シーケンス内にそれぞれ含まれる前記色彩フレーム及び深度フレームを送信し;
    前記第1のサーバから、前記ネットワークの手段により、前記第1の表面データ・フレーム・シーケンス内に含まれる前記色彩フレーム及び深度フレームを受信し;
    前記第2のサーバから、前記ネットワークの手段により、且つ、色彩フレーム及び深度フレームの前記第1のサーバからの受信に同期して、前記第2の表面データ・フレーム・シーケンス内に含まれる前記色彩フレーム及び深度フレームを受信し;並びに、
    前記第1のサーバー及び第2のサーバから同期して受信される前記色彩フレーム及び深度フレームをパッケージ化して、追加のトランスポート・ストリームを形成し、前記追加のトランスポート・ストリームは、ビデオ・データ・ストリームを含み、前記ビデオ・データ・ストリームは、前記フレーム・シーケンス・サブセット内に含める目的で選択される前記表面データ・フレーム・シーケンスに対応し;
    前記追加のトランスポート・ストリームは、前記メディア・プレーヤ装置へストリーミングを行う目的で構成され;及び
    前記特定のバーチャル・リアリティ体験へとカスタマイズされ、前記メディア・プレーヤ装置へ提供される前記特定のバーチャル・リアリティ・データセットは、前記追加のトランスポート・ストリームを含む。
  18. 請求項16のシステムであって、ここで、前記第1の表面データ・フレーム・シーケンス及び第2の表面データ・フレーム・シーケンス内に含まれる前記色彩フレーム及び深度フレームを、前記第1の個別トランスポート・ストリーム及び第2の個別トランスポート・ストリームの手段によりそれぞれ同期して送信することは、以下を含む:
    前記第1のサーバが、同期サーバへデータを送信すること、ここで、前記データが示すのは、前記第1の表面データ・フレーム・シーケンス内に含まれる第1の色彩フレーム及び深度フレームが前記第1のサーバによって受信されたことである;
    前記第2のサーバが、前記同期サーバへ、データを送信すること、ここで、前記データが示すのは、前記第2の表面データ・フレーム・シーケンス内に含まれ、且つ前記第1の色彩フレーム及び深度フレームに対応する第2の色彩フレーム及び深度フレームが前記第2のサーバによって受信されたことである;
    前記第1のサーバー及び第2のサーバが、前記同期サーバから、第1の及び第2の色彩フレーム及び深度フレームが受信されたことを示す前記データの前記送信に応答して、第1の及び第2の色彩フレーム及び深度フレームが同期して送信されるべき範囲の指定のタイムフレームを示すデータを受信すること;並びに、
    前記第1のサーバー及び第2のサーバが、前記マネージメント・サーバへ、前記第1の及び第2の色彩フレーム及び深度フレームを、それぞれ、指定のタイムフレーム内に送信すること。
  19. メディア・プレーヤ装置であって、少なくとも1つ物理的なコンピューティング構成要素を含み、前記コンピューティング構成要素は、以下の動作を行う、メディアプレーヤ装置:
    バーチャル・リアリティ・システムから体験選択データ構造にアクセスすること、ここで、前記体験選択データ構造は前記バーチャル・リアリティ・システムによって生成され、前記メディア・プレーヤ装置が、異なるバーチャル・リアリティ・データセットを処理することによって異なるバーチャル・リアリティ体験をユーザに提供する際に、前記体験選択データ構造内に含まれる複数のエントリからの前記メディア・プレーヤ装置による異なるエントリの動的選択を促進し、前記複数のエントリ各々は異なるバーチャル・リアリティ・データセットに対応し、前記バーチャル・リアリティ・データセットは、3次元の(3D)シーンに関連する複数のバーチャル・リアリティ体験内に含まれる異なるバーチャル・リアリティ体験へとカスタマイズされる;
    前記体験選択データ構造の手段により、エントリを、前記複数のエントリから選択すること、ここで、前記エントリは特定のバーチャル・リアリティ・データセットに対応し、前記特定のバーチャル・リアリティ・データセットは、特定のバーチャル・リアリティ体験へとカスタマイズされる;
    前記バーチャル・リアリティ・システムに、前記体験選択データ構造の手段により選択される前記エントリを表すデータを提供すること;
    前記バーチャル・リアリティ・システムから、前記エントリを表す前記データの前記提供に応答して、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを受信すること;及び
    前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを処理して、前記特定のバーチャル・リアリティ体験を前記ユーザに提供すること。
  20. 請求項19のメディア・プレーヤ装置であって、ここで、前記少なくとも1つ物理的なコンピューティング構成要素は、前記特定のバーチャル・リアリティ体験へとカスタマイズされる前記特定のバーチャル・リアリティ・データセットを、前記メディア・プレーヤ装置を前記バーチャル・リアリティ・システムと通信可能に接続するネットワークの手段を通して、トランスポート・ストリームを受信することにより受信し、ここで、前記トランスポート・ストリームは、複数のビデオ・データ・ストリームを含み、前記ビデオ・データ・ストリームは、表面データ・フレーム・シーケンスのフレーム・シーケンス・サブセットに対応し、表面データ・フレーム・シーケンスは、複数の表面データ・フレーム・シーケンスから選択され、それぞれ、前記3Dシーンの異なるビューを描写する。
JP2019566147A 2017-05-31 2018-05-24 バーチャル・リアリティ・データをカスタマイズするための方法及びシステム Active JP7217713B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/610,593 2017-05-31
US15/610,593 US10542300B2 (en) 2017-05-31 2017-05-31 Methods and systems for customizing virtual reality data
PCT/US2018/034436 WO2018222500A1 (en) 2017-05-31 2018-05-24 Methods and systems for customizing virtual reality data

Publications (2)

Publication Number Publication Date
JP2020522191A true JP2020522191A (ja) 2020-07-27
JP7217713B2 JP7217713B2 (ja) 2023-02-03

Family

ID=62716128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019566147A Active JP7217713B2 (ja) 2017-05-31 2018-05-24 バーチャル・リアリティ・データをカスタマイズするための方法及びシステム

Country Status (6)

Country Link
US (3) US10542300B2 (ja)
EP (1) EP3631602B1 (ja)
JP (1) JP7217713B2 (ja)
KR (1) KR102502794B1 (ja)
CN (1) CN110663012B (ja)
WO (1) WO2018222500A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018147329A1 (ja) * 2017-02-10 2018-08-16 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 自由視点映像生成方法及び自由視点映像生成システム
US20180356885A1 (en) * 2017-06-10 2018-12-13 Tsunami VR, Inc. Systems and methods for directing attention of a user to virtual content that is displayable on a user device operated by the user
JP7003994B2 (ja) * 2017-08-08 2022-01-21 ソニーグループ株式会社 画像処理装置および方法
JP6409107B1 (ja) * 2017-09-06 2018-10-17 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
US11113887B2 (en) * 2018-01-08 2021-09-07 Verizon Patent And Licensing Inc Generating three-dimensional content from two-dimensional images
US10825236B1 (en) * 2018-03-13 2020-11-03 Arvizio, Inc. Composite mesh LOD construction
US10528132B1 (en) * 2018-07-09 2020-01-07 Ford Global Technologies, Llc Gaze detection of occupants for vehicle displays
US11410439B2 (en) * 2019-05-09 2022-08-09 Snap Inc. Sequence-of-sequences model for 3D object recognition
KR102522892B1 (ko) * 2020-03-12 2023-04-18 한국전자통신연구원 가상 시점 영상을 합성하기 위한 입력 영상을 제공하는 카메라 선별 방법 및 장치
US11715270B2 (en) * 2021-09-14 2023-08-01 Verizon Patent And Licensing Inc. Methods and systems for customizing augmentation of a presentation of primary content

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005500757A (ja) * 2001-08-15 2005-01-06 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 3dビデオ会議システム
US20120281059A1 (en) * 2011-05-04 2012-11-08 Microsoft Corporation Immersive Remote Conferencing
US20160260196A1 (en) * 2015-03-05 2016-09-08 Nokia Technologies Oy Video streaming method
JP2017055173A (ja) * 2015-09-07 2017-03-16 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像生成方法
EP3147758A1 (en) * 2015-09-22 2017-03-29 Facebook, Inc. Systems and methods for content streaming

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6938047B2 (en) 2003-02-19 2005-08-30 Maui X-Stream, Inc. Methods, data structures, and systems for processing media data streams
US20090106671A1 (en) * 2007-10-22 2009-04-23 Olson Donald E Digital multimedia sharing in virtual worlds
US8661353B2 (en) * 2009-05-29 2014-02-25 Microsoft Corporation Avatar integrated shared media experience
US10972680B2 (en) 2011-03-10 2021-04-06 Microsoft Technology Licensing, Llc Theme-based augmentation of photorepresentative view
US20130041808A1 (en) * 2011-08-10 2013-02-14 Nathalie Pham Distributed media access
US9674580B2 (en) * 2012-03-31 2017-06-06 Vipeline, Inc. Method and system for recording video directly into an HTML framework
JP2016509292A (ja) * 2013-01-03 2016-03-24 メタ カンパニー エクストラミッシブ空間撮像デジタル眼鏡装置または拡張介在ビジョン
US20150113404A1 (en) * 2013-10-17 2015-04-23 Apple Inc. Publishing Media Content to Virtual Movie Theatres
US9551873B2 (en) * 2014-05-30 2017-01-24 Sony Interactive Entertainment America Llc Head mounted device (HMD) system having interface with mobile computing device for rendering virtual reality content
US10715843B2 (en) * 2015-08-20 2020-07-14 Koninklijke Kpn N.V. Forming one or more tile streams on the basis of one or more video streams
US10213688B2 (en) 2015-08-26 2019-02-26 Warner Bros. Entertainment, Inc. Social and procedural effects for computer-generated environments
US9674435B1 (en) * 2016-07-06 2017-06-06 Lawrence Maxwell Monari Virtual reality platforms for capturing content for virtual reality displays
US10341672B2 (en) * 2017-02-03 2019-07-02 Korea Advanced Institute Of Science And Technology Method and system for media synchronization
US10783165B2 (en) * 2017-05-17 2020-09-22 International Business Machines Corporation Synchronizing multiple devices
GB2563439B (en) * 2017-06-16 2022-02-16 Canon Kk Methods, devices, and computer programs for improving streaming of portions of media data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005500757A (ja) * 2001-08-15 2005-01-06 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 3dビデオ会議システム
US20120281059A1 (en) * 2011-05-04 2012-11-08 Microsoft Corporation Immersive Remote Conferencing
US20160260196A1 (en) * 2015-03-05 2016-09-08 Nokia Technologies Oy Video streaming method
JP2017055173A (ja) * 2015-09-07 2017-03-16 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像生成方法
EP3147758A1 (en) * 2015-09-22 2017-03-29 Facebook, Inc. Systems and methods for content streaming

Also Published As

Publication number Publication date
EP3631602B1 (en) 2021-06-23
EP3631602A1 (en) 2020-04-08
WO2018222500A1 (en) 2018-12-06
CN110663012B (zh) 2023-09-12
US20180352272A1 (en) 2018-12-06
US10542300B2 (en) 2020-01-21
KR102502794B1 (ko) 2023-02-24
US10750213B2 (en) 2020-08-18
US20200120370A1 (en) 2020-04-16
JP7217713B2 (ja) 2023-02-03
US11197038B2 (en) 2021-12-07
US20200344507A1 (en) 2020-10-29
KR20200013232A (ko) 2020-02-06
CN110663012A (zh) 2020-01-07

Similar Documents

Publication Publication Date Title
KR102494795B1 (ko) 상이한 비디오 데이터 스트림들 내의 상이한 유리한 지점들로부터 표현된 가상 오브젝트 및 실세계 오브젝트에 기초하여 병합된 현실 장면을 생성하기 위한 방법들 및 시스템들
JP7217713B2 (ja) バーチャル・リアリティ・データをカスタマイズするための方法及びシステム
US10699749B2 (en) Methods and systems for customizing virtual reality data
KR102550847B1 (ko) 가상 씬의 가상 엔티티 디스크립션 프레임에 기초하여 상이한 밴티지 포인트들로부터 가상 씬의 프레임들을 렌더링하기 위한 방법들 및 시스템들
US10803653B2 (en) Methods and systems for generating a surface data projection that accounts for level of detail
JP7194125B2 (ja) バーチャル・リアリティ・メディア・コンテンツ内に含める目的での現実世界シーンのカスタマイズされるビューの仮想化プロジェクションを生成するための方法及びシステム
US20230281832A1 (en) Digital representation of multi-sensor data stream
US10347037B2 (en) Methods and systems for generating and providing virtual reality data that accounts for level of detail

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210518

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220407

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220830

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230124

R150 Certificate of patent or registration of utility model

Ref document number: 7217713

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150