(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-19
(54)【発明の名称】ライトフィールド/ホログラフィック媒体のアセット再利用性
(51)【国際特許分類】
H04N 21/2662 20110101AFI20240312BHJP
H04N 21/258 20110101ALI20240312BHJP
【FI】
H04N21/2662
H04N21/258
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023559798
(86)(22)【出願日】2022-10-25
(85)【翻訳文提出日】2023-09-27
(86)【国際出願番号】 US2022047696
(87)【国際公開番号】W WO2023081038
(87)【国際公開日】2023-05-11
(32)【優先日】2021-11-04
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-10-20
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】ロヒト・アビシェーク
(72)【発明者】
【氏名】アリアンヌ・ハインズ
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA06
5C164SC03P
5C164SC11P
5C164TB22S
5C164UB38S
5C164YA21
5C164YA24
(57)【要約】
クライアントにストリーミングされるライトフィールドおよび/またはホログラフィック媒体を制御し、クライアントバッファの状態に基づいて帯域幅を決定し、ライトフィールドおよび/またはホログラフィック媒体のシーンを分割し、クライアントバッファ内にアセットが存在するかどうかを判定し、アセットを分割シーンのそれぞれ1つおよびクライアントバッファにマッピングし、帯域幅、マッピング、およびアセットの1つまたは複数がクライアントバッファ内に存在すると判定されるかどうかに基づいて、アセットのクライアントバッファへの伝送を制御し、分割シーンの少なくとも1つをレンダリングするときにアセットの少なくとも1つを再利用するようにクライアントを制御するための方法および装置。
【特許請求の範囲】
【請求項1】
少なくとも1つのハードウェアプロセッサによって実施される方法であって、
クライアントにストリーミングされるライトフィールドまたはホログラフィック媒体のシーンを制御するステップと、
前記クライアントに関連付けられたクライアントバッファの状態に少なくとも基づいて、前記ライトフィールドまたはホログラフィック媒体をストリーミングするために前記クライアントに利用可能な帯域幅を決定するステップと、
前記ライトフィールドまたはホログラフィック媒体の前記シーンを複数の分割シーンに分割するステップであって、各分割シーンが前記シーンの1つまたは複数のアセットを含む、ステップと、
前記1つまたは複数の前記アセットが前記クライアントバッファ内に存在するかどうかを判定するステップと、
前記1つまたは複数の前記アセットが前記クライアントバッファ内に存在すると判定されるかどうかに基づいて、前記シーンの前記1つまたは複数の前記アセットをそれぞれの分割シーンにマッピングするステップと、
前記帯域幅、前記マッピング、および前記アセットの前記1つまたは複数が前記クライアントバッファ内に存在すると判定されるかどうかに基づいて、前記クライアントバッファへの前記1つまたは複数のアセットのサブセットの伝送を制御するステップと、
前記分割シーンの少なくとも1つをレンダリングするときに前記アセットの少なくとも1つを再利用するように前記クライアントを制御するステップとを含む、方法。
【請求項2】
前記少なくとも1つのハードウェアプロセッサが、前記クライアントとネットワーク通信するサーバのものである、請求項1に記載の方法。
【請求項3】
前記分割シーンのうちの先行シーンおよび連続シーンの各々について、前記アセットのどれが前記クライアント装置に送信されるかを追跡するステップ
をさらに含む、請求項2に記載の方法。
【請求項4】
前記少なくとも1つのハードウェアプロセッサが前記クライアントのものである、請求項1に記載の方法。
【請求項5】
前記複数のアセットの前記1つまたは複数のアセットの前記クライアントバッファへの前記伝送を制御するステップが、前記ライトフィールドまたはホログラフィック媒体の前記シーン内の前記アセットの相対深度にさらに基づく、請求項1に記載の方法。
【請求項6】
前記アセットの前記1つまたは複数のアセットの前記クライアントバッファへの前記伝送を制御するステップが、前記ライトフィールドまたはホログラフィック媒体の前記シーン内の前記アセットの相対優先度にさらに基づく、請求項1に記載の方法。
【請求項7】
前記アセットの前記1つまたは複数が前記クライアントバッファ内に存在するかどうかを判定するステップが、前記アセットの前記1つまたは複数が、各々がローカルエリアネットワーク(LAN)上でネットワーク接続された前記クライアントバッファを含む複数のクライアントバッファのいずれかに存在するかどうかを判定するステップをさらに含む、請求項1に記載の方法。
【請求項8】
前記アセットの前記少なくとも1つが前記シーンに現れる回数の少なくとも1つに基づいて、前記アセットの前記少なくとも1つに再利用性優先度を割り当てるステップをさらに含む、請求項1に記載の方法。
【請求項9】
前記分割シーンの前記少なくとも1つをレンダリングするときに前記アセットの前記少なくとも1つを再利用するように前記クライアントを制御するステップが、前記アセットの前記少なくとも1つに割り当てられた前記再利用性優先度に基づく、請求項8に記載の方法。
【請求項10】
前記アセットの前記少なくとも1つに前記再利用性優先度を割り当てるステップが、前記アセットの前記少なくとも1つのサイズおよび前記アセットの前記少なくとも1つの複雑さのうちの少なくとも1つにさらに基づく、請求項9に記載の方法。
【請求項11】
コンピュータプログラムコードを記憶するように構成された少なくとも1つのメモリと、
前記コンピュータプログラムコードにアクセスし、前記コンピュータプログラムコードによって命令されるように動作するように構成された少なくとも1つのハードウェアプロセッサであって、前記コンピュータプログラムコードが、
前記少なくとも1つのハードウェアプロセッサに、クライアントにストリーミングされるライトフィールドまたはホログラフィック媒体のシーンを制御させるように構成された制御コードと、
前記少なくとも1つのハードウェアプロセッサに、クライアントに関連付けられたクライアントバッファの状態に少なくとも基づいて、前記ライトフィールドまたはホログラフィック媒体をストリーミングするために前記クライアントに利用可能な帯域幅を決定させるように構成された決定コードと、
前記少なくとも1つのハードウェアプロセッサに、前記ライトフィールドまたはホログラフィック媒体の前記シーンを複数の分割シーンに分割させるように構成された分割コードであって、各分割シーンが、前記シーンの1つまたは複数のアセットを含む、分割コードと、
前記少なくとも1つのハードウェアプロセッサに、前記クライアントバッファ内に前記1つまたは複数の前記アセットが存在するかどうかを判定させるように構成されたさらなる決定コードと、
前記少なくとも1つのハードウェアプロセッサに、前記シーンの前記1つまたは複数の前記アセットをそれぞれの分割シーンに、1つまたは複数の前記アセットが前記クライアントバッファ内に存在すると判定されるかどうかに基づいてマッピングさせるように構成されたマッピングコードと、
前記少なくとも1つのハードウェアプロセッサに、前記帯域幅、前記マッピング、および前記1つまたは複数の前記アセットが前記クライアントバッファ内に存在するかどうかに基づいて、前記1つまたは複数のアセットのサブセットの前記クライアントバッファへの伝送を制御させるように構成された伝送制御コードと、
前記分割シーンの少なくとも1つをレンダリングするときに、前記少なくとも1つのハードウェアプロセッサに、前記アセットの少なくとも1つを再利用するように前記クライアントを制御させるように構成された再利用性制御コードとを含む、少なくとも1つのハードウェアプロセッサと
を備える、装置。
【請求項12】
前記少なくとも1つのハードウェアプロセッサが、前記クライアントとネットワーク通信するサーバのものである、請求項11に記載の装置。
【請求項13】
前記コンピュータプログラムコードが、前記少なくとも1つのハードウェアプロセッサに、前記分割シーンの先行シーンおよび連続シーンのそれぞれについて、どの前記アセットが前記クライアント装置に送信されるかを追跡させるように構成された追跡コードをさらに含む、請求項12に記載の装置。
【請求項14】
前記少なくとも1つのハードウェアプロセッサが前記クライアントのものである、請求項11に記載の装置。
【請求項15】
前記複数のアセットの前記1つまたは複数のアセットの前記クライアントバッファへの前記伝送を制御することが、前記ライトフィールドまたはホログラフィック媒体の前記シーン内の前記アセットの相対深度にさらに基づく、請求項11に記載の装置。
【請求項16】
前記複数のアセットの前記1つまたは複数のアセットの前記クライアントバッファへの前記伝送を制御することが、前記ライトフィールドまたはホログラフィック媒体の前記シーン内の前記アセットの相対優先度にさらに基づく、請求項11に記載の装置。
【請求項17】
前記アセットの前記1つまたは複数が前記クライアントバッファ内に存在するかどうかを判定するステップが、前記アセットの前記1つまたは複数が、各々がローカルエリアネットワーク(LAN)上でネットワーク接続された前記クライアントバッファを含む複数のクライアントバッファのいずれかに存在するかどうかを判定することをさらに含む、請求項11に記載の装置。
【請求項18】
前記コンピュータプログラムコードが、前記少なくとも1つのハードウェアプロセッサに、前記少なくとも1つの前記アセットが前記シーンに出現する回数、前記少なくとも1つの前記アセットのサイズ、および前記少なくとも1つの前記アセットの複雑さのうちの少なくとも1つに基づいて、前記少なくとも1つの前記アセットに再利用性優先度を割り当てさせるように構成された割り当てコードをさらに含む、請求項11に記載の装置。
【請求項19】
前記分割シーンの前記少なくとも1つをレンダリングするときに前記アセットの前記少なくとも1つを再利用するように前記クライアントを制御することが、前記アセットの前記少なくとも1つに割り当てられた前記再利用性優先度に基づく、請求項11に記載の装置。
【請求項20】
コンピュータに処理を実行させるプログラムを格納した非一時的なコンピュータ可読媒体であって、前記処理が、
クライアントにストリーミングされるライトフィールドまたはホログラフィック媒体のシーンを制御するステップと、
前記クライアントに関連付けられたクライアントバッファの状態に少なくとも基づいて、前記ライトフィールドまたはホログラフィック媒体をストリーミングするために前記クライアントに利用可能な帯域幅を決定するステップと、
前記ライトフィールドまたはホログラフィック媒体の前記シーンを複数の分割シーンに分割するステップであって、各分割シーンが前記シーンの1つまたは複数のアセットを含む、ステップと、
前記1つまたは複数の前記アセットが前記クライアントバッファ内に存在するかどうかを判定するステップと、
前記1つまたは複数の前記アセットが前記クライアントバッファ内に存在すると判定されるかどうかに基づいて、前記シーンの前記1つまたは複数の前記アセットをそれぞれの分割シーンにマッピングするステップと、
前記帯域幅、前記マッピング、および前記アセットの前記1つまたは複数が前記クライアントバッファ内に存在すると判定されるかどうかに基づいて、前記クライアントバッファへの前記1つまたは複数のアセットのサブセットの伝送を制御するステップと、
前記分割シーンの少なくとも1つをレンダリングするときに前記アセットの少なくとも1つを再利用するように前記クライアントを制御するステップとを含む、非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2021年11月4日に出願された米国仮出願第63/275,789号、および2022年10月20日に出願された米国出願第17/970,035号の優先権を主張し、その内容全体が参照により本明細書に組み込まれる。
【0002】
開示される主題は、ライトフィールドおよび/またはホログラフィックディスプレイにおける再利用性のためにクライアントバッファにアセットを記憶させるための方法論に関する。
【背景技術】
【0003】
没入型メディアは、デジタルシミュレーションを介して物理世界を作成または模倣しようとする没入型技術によって定義され、それによって人間の感覚システムのいずれかまたはすべてをシミュレートして、シーン内に物理的に存在するユーザの知覚を作成する。
【0004】
現行の没入型メディア技術には、仮想現実(VR)、拡張現実(AR)、混合現実(MR)、ライトフィールド/ホログラフィックなどの様々なタイプがある。VRとは、ヘッドセットを使用してユーザをコンピュータ生成世界に置くことによってユーザの物理環境を置き換えるデジタル環境を指す。一方、ARは、デジタル媒体を取り込み、クリアビジョン、ヘッドセット、眼鏡など、またはスマートフォンのいずれかを使用することによって、ユーザの周りの現実世界にそれらを積層する。MRとは、現実世界とデジタル世界とを混合し、それによって技術と物理世界とが共存できる環境を作り出すことを指す。
【0005】
ライトフィールドおよび/またはホログラフィック技術は、各点および方向から来る光線を有する3D空間の光線から構成される。これは、周囲に見えるすべてのものが、任意の光源から来る光によって照らされ、空間を通って移動し、光が部分的に吸収され、かつ目に到達する前に別の表面に部分的に反射される物体の表面に当たるという概念に基づいている。光照射野を適切に再現することにより、ユーザは、両眼性および連続運動視差などの3D効果を得ることができる。ライトフィールドおよび/またはホログラフィックディスプレイのもとにある基本的な概念は、ホログラフィックスクリーンに光線を投影して、異なるが一貫した情報をわずかに異なる方向に示すことによってライトフィールドおよび/またはホログラフィックの近似を再現する投影モジュールの大規模なアレイである。
【0006】
光線は、5次元プレノプティック関数によって定義されてもよく、各光線は、3D空間内の3つの座標(3次元)および3D空間内の方向を特定するための2つの角度によって定義されてもよい。
【0007】
360度ビデオのコンテンツをキャプチャするには、360度カメラが必要である。しかしながら、ライトフィールドおよび/またはホログラフィックディスプレイのコンテンツをキャプチャすることになると、レンダリングされるシーンのFoVに応じて、複数の深度カメラまたはカメラのアレイを備える高価な設定が必要とされる。
【0008】
従来のカメラは、所与の位置でカメラレンズに到達する光線の2D表現を取り込むことしかできない。画像センサは、各画素に到達するすべての光線の輝度および色の合計を記録する。
【0009】
ライトフィールドおよび/またはホログラフィックディスプレイのコンテンツをキャプチャすることに関しては、輝度および色だけでなく、カメラセンサに到達するすべての光線の方向もキャプチャすることができるライトフィールドカメラが必要とされている。この情報を使用して、各光線の原点の正確な表現を用いてデジタルシーンを再構成することができ、3Dで正確にキャプチャされたシーンをデジタル的に再構成することが可能になる。
【0010】
現在、そのような体積測定シーンをキャプチャするために2つの主要な技術が使用されている。これらの技術のうちの第1の技術は、カメラのアレイまたはカメラモジュールを使用して、各方向からそれぞれアレイのカメラの1つまたはカメラモジュールの1つへの異なる光線/ビューを取り込む。これらの技術のうちの第2の技術は、制御された照明条件下で複数の物体の深度を測定することによって、構造化照明を必要とせずに、単一の露光で3D情報を取り込むことができる深度カメラを使用する。
【0011】
そのようなライトフィールドおよび/またはホログラフィックディスプレイのためのマルチメディアコンテンツは、キャプチャされてサーバに記憶される。これは、現実世界または合成コンテンツであり得る。このデータをエンドクライアントに伝送するためには、データが圧縮された後でさえ、大量の帯域幅が必要である。したがって、帯域幅が制限されている状況では、クライアントはバッファリングまたは中断を経験する可能性があり、その経験は不快なものとなる。これは、本出願を通して説明される技術的解決策によって対処される技術的問題である。
【0012】
すなわち、既存のコンピュータ技術は、ライトフィールドおよび/またはホログラフィックディスプレイのためのマルチメディアコンテンツを処理する文脈において大規模な帯域幅要件から経験され得るデータストレージおよび伝送制約のために、技術的に不十分である。したがって、このような問題に対する技術的解決策が望まれている。したがって、本出願は、例えば、ライトフィールドおよび/またはホログラフィックディスプレイのいずれかにおける再利用性を介して、クライアントバッファなどのバッファが直面するアセット記憶および伝送能力を改善することによって、そのコンピュータ技術に対処することを開示する。
【発明の概要】
【課題を解決するための手段】
【0013】
コンピュータプログラムコードを記憶するように構成されたメモリと、コンピュータプログラムコードにアクセスし、コンピュータプログラムコードによって命令されるように動作するように構成された1つまたは複数のハードウェアプロセッサであって、コンピュータプログラムコードが、少なくとも1つのハードウェアプロセッサに、クライアントにストリーミングされるライトフィールドおよび/またはホログラフィック媒体のシーンを制御させるように構成された制御コードと、少なくとも1つのハードウェアプロセッサに、クライアントに関連付けられたクライアントバッファの状態に少なくとも基づいて、ライトフィールドおよび/またはホログラフィック媒体をストリーミングするためにクライアントに利用可能な帯域幅を決定させるように構成された決定コードと、少なくとも1つのハードウェアプロセッサに、ライトフィールドおよび/またはホログラフィック媒体のシーンを複数の分割シーンに分割させるように構成された分割コードであって、各分割シーンが、シーンの1つまたは複数のアセットを含む、分割コードと、少なくとも1つのハードウェアプロセッサに、クライアントバッファ内に1つまたは複数のアセットが存在するかどうかを判定させるように構成されたさらなる決定コードと、少なくとも1つのハードウェアプロセッサに、シーンの1つまたは複数のアセットをそれぞれの分割シーンに、1つまたは複数のアセットがクライアントバッファ内に存在すると判定されるかどうかに基づいてマッピングさせるように構成されたマッピングコードと、少なくとも1つのハードウェアプロセッサに、帯域幅、マッピング、および1つまたは複数のアセットがクライアントバッファ内に存在すると判定されるかどうかに基づいて、1つまたは複数のアセットのサブセットのクライアントバッファへの伝送を制御させるように構成された伝送制御コードと、分割シーンの少なくとも1つをレンダリングするときに、少なくとも1つのハードウェアプロセッサに、アセットの少なくとも1つを再利用するようにクライアントを制御させるように構成された再利用性制御コードとを含むハードウェアプロセッサと、を含む方法および装置が含まれる。
【0014】
例示的な実施形態によれば、少なくとも1つのハードウェアプロセッサは、クライアントとネットワーク通信するサーバのものである。
【0015】
例示的な実施形態によれば、コンピュータプログラムコードは、少なくとも1つのハードウェアプロセッサに、分割シーンの先行シーンおよび連続シーンのそれぞれについて、どのアセットがクライアント装置に送信されるかを追跡させるように構成された追跡コードをさらに含む。
【0016】
例示的な実施形態によれば、少なくとも1つのハードウェアプロセッサはクライアントのものである。
【0017】
例示的な実施形態によれば、複数のアセットの1つまたは複数のアセットのクライアントバッファへの伝送を制御することは、ライトフィールドおよび/またはホログラフィック媒体のシーン内のアセットの相対深度にさらに基づく。
【0018】
例示的な実施形態によれば、複数のアセットの1つまたは複数のアセットのクライアントバッファへの伝送を制御することは、ライトフィールドおよび/またはホログラフィック媒体のシーン内のアセットの相対優先度にさらに基づく。
【0019】
例示的な実施形態によれば、アセットの1つまたは複数がクライアントバッファ内に存在するかどうかを判定することは、アセットの1つまたは複数が、各々がローカルエリアネットワーク(LAN)上でネットワーク接続されたクライアントバッファを含む複数のクライアントバッファのいずれかに存在するかどうかを判定することをさらに含む。
【0020】
例示的な実施形態によれば、コンピュータプログラムコードは、少なくとも1つのハードウェアプロセッサに、少なくとも1つのアセットがシーンに現れる回数の少なくとも1つに基づいて、少なくとも1つのアセットに再利用性優先度を割り当てさせるように構成された割り当てコードをさらに含む。
【0021】
例示的な実施形態によれば、分割シーンの少なくとも1つをレンダリングするときにアセットの少なくとも1つを再利用するようにクライアントを制御することは、アセットの少なくとも1つに割り当てられた再利用性優先度に基づく。
【0022】
例示的な実施形態によれば、アセットの少なくとも1つに再利用性優先度を割り当てることは、アセットの少なくとも1つのサイズおよびアセットの少なくとも1つの複雑さのうちの少なくとも1つにさらに基づく。
【図面の簡単な説明】
【0023】
【
図1】本明細書に記載の例示的な実施形態による深度ベースのストリーミングを説明するための図である。
【
図2】本明細書に記載の例示的な実施形態によるアセット優先度ベースのストリーミングを説明するための図である。
【
図3】本明細書に記載の例示的な実施形態によるサーバ制御バッファを示す図である。
【
図4】本明細書に記載の例示的な実施形態によるクライアント制御バッファを示す図である。
【
図5】本明細書に記載の例示的な実施形態によるコンピュータシステムを示す図である。
【発明を実施するための形態】
【0024】
後術する提案された特徴は、個別に使用されてもよいし、任意の順序で組み合わされてもよい。さらに、実施形態は、処理回路(例えば、1つもしくは複数のプロセッサまたは1つもしくは複数の集積回路)によって実施されてもよい。一例では、1つまたは複数のプロセッサは、非一時的なコンピュータ可読媒体に記憶されているプログラムを実行する。本開示では、最確モード(most probable mode、MPM)は、主MPM、副MPM、あるいは主MPMおよび副MPMの両方を表すことができる。
【0025】
ライトフィールドおよび/またはホログラフィック技術は、いかなるヘッドセットも使用する必要なく、正確な深度感および三次元性を有する仮想環境を作成し、したがって、酔いのような副作用を回避することを目的とする。サーバは、ライトフィールドおよび/またはホログラフィックディスプレイのために深度ベースの適応ストリーミングを使用することができる。ここで、例示的な実施形態によれば、シーン全体を一度にレンダリングする代わりに、帯域幅ベースの深度手法が考慮される。ネットワークの容量が比較的理想的である場合、エンドクライアントはシーン全体を一度に受信およびレンダリングすることができる。しかしながら、帯域幅に制限がある場合、エンドクライアントは、シーン全体をレンダリングする代わりに、シーンを特定の深度にレンダリングする。この深度は、クライアントの帯域幅の関数である。したがって、エンドクライアントの帯域幅に関する情報を取得した後、サーバは、様々な深度を有するシーン間でストリーミングされている媒体を調整する。深度ベースのストリーミングの例100を示す
図1を参照すると、オブジェクト101、オブジェクト102、およびオブジェクト103は、ユーザの視点を表すことができるカメラ104からのそれぞれ変化した距離107、距離106、および距離105における1つのシーン内の異なるオブジェクトである。サーバは、
図6の例600のS601などで媒体を取得した後、S602で、各アセットに優先度値を割り当て、この優先度値をライトフィールドおよび/またはホログラフィックディスプレイのアダプティブストリーミングに使用することもできる。ここで、例示的な実施形態によれば、シーン全体を一度にレンダリングする代わりに、帯域幅ベースのアセット優先度手法が考慮される。ネットワークの容量が制限されない場合、エンドクライアントは、シーンアセット全体を一度に受信してレンダリングすることができる。しかし、S603で決定されるように帯域幅に制限がある場合、エンドクライアントは、シーン内のすべてのアセットをレンダリングする代わりに、S604で調整を決定し、S606で優先度を考慮するなどして、より高い優先度を有するアセットをレンダリングする。したがって、レンダリングされるアセット合計は、クライアントの帯域幅の関数である。アセット優先度ベースのストリーミング200の例を示す
図2を参照すると、アセット201、アセット202、およびアセット203は様々な距離の異なるアセットであり、S605では、レンダリングする距離を考慮するかどうか、およびまたはS606では、ユーザの視点であり得るカメラ204から、クライアントに伝送するおよび/またはクライアントでレンダリングする事前設定されたオブジェクト優先度を優先度1、3、および2でそれぞれ考慮するかどうかを決定することができる。
【0026】
一実施形態では、シーンがストリーミングされている間、アセットは、連続するシーンの再利用のためにクライアントのバッファに保持され得る。アセットは、例示的な実施形態に従って以下に説明するような異なるパラメータに基づいて、S610などでクライアントのバッファに追加または削除することができる。
【0027】
一実施形態では、ライトフィールドおよび/またはホログラフィックシーンが複数のシーンに分割されると、アセットマッピングが行われる。これは、前のシーンで送信されたアセットを追跡し、前のシーンに存在しない連続したシーンのアセットのみを送信することによって行われる。アセット制御は、例示的な実施形態に従って使用されている方法に応じて、サーバまたはクライアントによって行われてもよい。
【0028】
同じまたは別の実施形態では、アセットバッファがサーバによって制御される場合、サーバは、シーンを複数のシーンに分割しながら、先行シーンおよび連続シーンで送信されたアセットを追跡する。したがって、サーバによって第1のシーンが送信されると、サーバは、S607でチェックすることによってクライアントのバッファ内にあるアセットを追跡し、クライアントのバッファにまだ存在しないアセットをS608でのみ送信し、そのバッファに既にある他のアセットはS609で送信しない。サーバはまた、アセットの追加および削除がサーバによって管理されるように、クライアントバッファ内のアセットを維持する。例えば、サーバ制御バッファリングの例300を示す
図3を参照すると、サーバ301は、シーン311を、それぞれのアセット「シーン1」309および「シーン2」310を有する2つのシーン307および308に分割する。クライアント302は、「シーン1」304および「シーン2」303をストリーミングし、再利用可能アセット306は、サーバ301によって制御されるクライアントのバッファ305に記憶される。
【0029】
同じまたは別の実施形態では、アセットバッファがクライアントによって制御されるとき、クライアントはどのアセットがバッファ内にあるべきかを決定する。そのような場合、クライアントは、そのバッファ内のすべてのアセットのリストをサーバに送信する。クライアントはまた、バッファ内で追加または削除されたアセットのリストをサーバに送信することができる。例えば、クライアント制御バッファリングの例400を示す
図4を参照すると、サーバ401は、シーン411を、それぞれのアセット「シーン1」409および「シーン2」410を有する2つのシーン407および408に分割する。クライアント402は、「シーン1」404および「シーン2」403をストリーミングし、再利用可能アセット406は、クライアント401によって制御されるクライアントのバッファ405に記憶される。
【0030】
別の実施形態では、アセットの記憶を戦略化するために異なる戦略を使用することができる。深度ベースまたは優先度ベースの方法が使用され得る。両方について、優先度ベースの記憶および削除を使用することができる。すべてのアセットが一度に削除されるのではなく、優先度が最も低いアセットが最初に削除され、そのように続く。
【0031】
別の実施形態では、アセット共有をLAN上で行うことができる。これは、LAN内の複数のデバイスが同じ媒体をストリーミングしている場合に適用可能である。この場合、ネットワーク内の異なるデバイスは、異なる資産を互いに共有するために各々と協調することができる。
【0032】
同じまたは別の実施形態では、再利用性優先度に基づいて、アセットをバッファに記憶させることもできる。したがって、優先度は、アセットがそれぞれのシーンに何回現れるかに基づいて、すべてのアセットに割り当てられる。そのようなシーンに最も多く現れるアセットには、最も高い優先度が割り当てられ、最も少なく現れるアセットには最も低い優先度が割り当てられ得る。アセット優先度はまた、アセットのサイズに基づいてもよい。より複雑なアセットには、より複雑でないアセットと比較して、より高い優先度が与えられ得る。
【0033】
上述したライトフィールドおよび/またはホログラフィック媒体のアセット再利用性のための技術は、コンピュータ可読命令を使用するコンピュータソフトウェアとして実施することができ、1つまたは複数のコンピュータ可読媒体に物理的に格納できる。例えば、
図5は、開示された主題の特定の実施形態を実装するのに適したコンピュータシステム500を示す。
【0034】
コンピュータソフトウェアは、コンピュータ中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)などによって、直接に、または解釈、マイクロコードの実行などを介して実行できる命令を含むコードを作成するために、アセンブリ、コンパイル、リンクなどの機構の適用を受け得る、任意の適切な機械コードまたはコンピュータ言語を使用して符号化されることができる。
【0035】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲーム機、モノのインターネットデバイスなどを含む様々なタイプのコンピュータまたはコンピュータの構成要素上で実行することができる。
【0036】
コンピュータシステム500に関して
図5に示す構成要素は例示であり、本開示の実施形態を実施するコンピュータソフトウェアの使用または機能の範囲に関する限定を示唆することを意図していない。構成要素の構成もまた、コンピュータシステム500の例示的な実施形態に示す構成要素のいずれか1つまたは組合せに関する依存性または要件を有すると解釈されるべきではない。
【0037】
コンピュータシステム500は、特定のヒューマンインターフェース入力デバイスを含んでもよい。そのようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き)、音声入力(例えば、声、拍手)、視覚入力(例えば、ジェスチャ)、嗅覚入力(図示せず)を介した、1人または複数の人間のユーザによる入力に応答することができる。ヒューマン・インターフェース・デバイスはまた、(音声、音楽、周囲の音などの)オーディオ、(スキャン画像、静止画カメラから取得された写真画像などの)画像、(2次元ビデオ、立体ビデオを含む3次元ビデオなどの)ビデオなどの、人間による意識的な入力に必ずしも直接関連しない特定の媒体を取り込むために使用することができる。
【0038】
入力ヒューマン・インターフェース・デバイスは、キーボード501、マウス502、トラックパッド503、タッチスクリーン510、データグローブ(図示せず)、ジョイスティック505、マイク506、スキャナ507、カメラ508のうちの1つまたは複数(それぞれ1つのみを図示)を含んでもよい。
【0039】
コンピュータシステム500はまた、特定のヒューマンインターフェース出力デバイスを含んでもよい。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および臭い/味を介して、1人または複数の人間ユーザの感覚を刺激している場合がある。そのようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン510、データグローブ(図示せず)、またはジョイスティック505による触覚フィードバック、しかし入力デバイスとして機能しない触覚フィードバックデバイスが存在する可能性もある)、音声出力デバイス(スピーカ509、ヘッドフォン(図示せず)など)、視覚出力デバイス(CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン510など、各々タッチスクリーン入力機能の有無にかかわらず、各々触覚フィードバック機能の有無にかかわらず、それらのうちのいくつかは、ステレオグラフィック出力、仮想現実眼鏡(図示せず)、ホログラフィックディスプレイおよびスモークタンク(図示せず)などの手段を介して2次元視覚出力または3次元以上の出力を出力することが可能な場合がある)、ならびにプリンタ(図示せず)を含むことができる。
【0040】
コンピュータシステム500は、CD/DVDまたは同様の媒体521を有するCD/DVD ROM/RW Z20を含む光学媒体、サムドライブ522、リムーバブルハードドライブまたはソリッドステートドライブ523、テープおよびフロッピーディスクなどのレガシー磁気媒体(描写せず)、セキュリティドングルなどの特殊なROM/ASIC/PLDベースのデバイス(描写せず)など、人間がアクセス可能な記憶デバイスおよびそれらに関連する媒体を含むこともできる。
【0041】
当業者はまた、本開示の主題に関連して使用される「コンピュータ可読媒体」という用語が、伝送媒体、搬送波、または他の一時的な信号を包含しないことを理解するべきである。
【0042】
コンピュータシステム500は、1つまたは複数の通信ネットワークへのインターフェースも含むことができる。ネットワークは、例えば、無線、有線、光であってもよい。ネットワークはさらに、ローカル、ワイドエリア、メトロポリタン、車両および産業用、リアルタイム、遅延耐性、などとすることができる。ネットワークの例には、Ethernetなどのローカルエリアネットワーク、無線LAN、GSM、3G、4G、5G、LTEなどを含むセルラネットワーク、ケーブルテレビ、衛星テレビおよび地上波テレビを含むテレビの有線または無線ワイドエリアデジタルネットワーク、CANBusを含む車両用および産業用などが含まれる。特定のネットワークは、一般に、特定の汎用データポートまたは周辺バス(549)(例えば、コンピュータシステム500のUSBポートなど)に接続された外部ネットワークインターフェースアダプタを必要とし、他のものは一般に、以下に記載されるようにシステムバスへの接続によってコンピュータシステム500のコアに統合される(例えば、PCコンピュータシステムへのイーサネットインターフェースまたはスマートフォンコンピュータシステムへのセルラネットワークインターフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム500は他のエンティティと通信することができる。そのような通信は、例えば、ローカルまたはワイドエリアデジタルネットワークを使用して、他のコンピュータシステムに対して、単方向、受信のみ(例えば、放送テレビ)、単方向送信のみ(例えば、特定のCANbusデバイスへのCANbus)、または双方向であり得る。特定のプロトコルおよびプロトコルスタックは、上述されたそれらのネットワークおよびネットワークインターフェースの各々で使用することができる。
【0043】
前述のヒューマン・インターフェース・デバイス、人間がアクセス可能な記憶デバイス、およびネットワークインターフェースを、コンピュータシステム500のコア540に取り付けることができる。
【0044】
コア540は、1つまたは複数の中央処理装置(CPU)541、グラフィック処理装置(GPU)542、フィールドプログラマブルゲートエリア(FPGA)543の形態の専用プログラマブル処理装置、および特定のタスク用のハードウェアアクセラレータ544などを含むことができる。これらのデバイスは、読み取り専用メモリ(ROM)545、ランダムアクセスメモリ546、ユーザがアクセスできない内蔵ハードドライブやSSDなどの内部大容量記憶装置547と共に、システムバス548を介して接続されてもよい。一部のコンピュータシステムでは、システムバス548は、追加のCPUおよびGPUなどによる拡張を可能にするために、1つまたは複数の物理プラグの形態でアクセスすることができる。周辺デバイスは、コアのシステムバス548に直接取り付けることも、周辺バス549を介して取り付けることもできる。周辺バス用のアーキテクチャには、PCI、USBなどが含まれる。
【0045】
CPU541、GPU542、FPGA543およびアクセラレータ544は、組み合わせて、前述のコンピュータコードを構成することができる特定の命令を実行することができる。そのコンピュータコードを、ROM545またはRAM546に記憶することができる。移行データもRAM546に記憶することができるが、永続データは、例えば、内部大容量記憶装置547に記憶することができる。メモリデバイスのいずれかに対する高速の記憶および検索は、1つまたは複数のCPU541、GPU542、大容量記憶装置547、ROM545、RAM546などと密接に関連付けることができるキャッシュメモリを使用して可能にすることができる。
【0046】
コンピュータ可読媒体は、様々なコンピュータ実装動作を実行するためのコンピュータコードを有することができる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであってもよく、またはそれらは、コンピュータソフトウェア技術のスキルを有する人々に周知かつ利用可能な種類であってもよい。
【0047】
限定としてではなく一例として、アーキテクチャを有するコンピュータシステム500、具体的にはコア540は、1つまたは複数の有形のコンピュータ可読媒体内に具現化されたソフトウェアを(CPU、GPU、FPGA、アクセラレータなどを含む)プロセッサが実行する結果として、機能を提供することができる。このようなコンピュータ可読媒体は、上述のようなユーザがアクセス可能な大容量記憶装置、およびコア内部の大容量記憶装置547またはROM545などの非一時的な性質のコア540の特定の記憶装置に関連付けられる媒体とすることができる。本開示の様々な実施形態を実施するソフトウェアは、このようなデバイスに記憶させることができ、コア540によって実行することができる。コンピュータ可読媒体は、特定の必要性に応じて、1つまたは複数のメモリデバイスまたはチップを含むことができる。ソフトウェアは、コア540、具体的にはその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM546に記憶されたデータ構造を定義することと、ソフトウェアによって定義されたプロセスに従ってこのようなデータ構造を修正することとを含む、本明細書に記載の特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えて、または代替として、コンピュータシステムは、本明細書に記載の特定の処理、または特定の処理の特定の部分を実行するために、ソフトウェアの代わりに、またはソフトウェアと共に動作し得る回路(例えば、アクセラレータ544)に配線された、またはそうでなければ具体化されたロジックの結果として機能を提供することができる。ソフトウェアへの言及は、必要に応じて、ロジックを包含することができ、その逆も同様である。コンピュータ可読媒体への言及は、必要に応じて、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のためのロジックを具現化する回路、またはその両方を包含することができる。本開示は、ハードウェアとソフトウェアの任意の適切な組合せを包含する。
【0048】
本開示はいくつかの例示的な実施形態を記載しているが、本開示の範囲内に入る変更、置換、および様々な代替の均等物が存在する。よって、当業者は、本明細書に明示的に図示または記載されていないが、本開示の原理を具体化し、よってその趣旨および範囲内にある多数のシステムおよび方法を考案することができることが理解されよう。
【符号の説明】
【0049】
100 例、101 オブジェクト、102 オブジェクト、103 オブジェクト、104 カメラ、105 距離、106 距離、107 距離、200 ストリーミング、201 アセット、202 アセット、203 アセット、204 カメラ、300 例、301 サーバ、302 クライアント、303 シーン2、304 シーン1、305 バッファ、306 再利用可能アセット、307 シーン、308 シーン、309 シーン1、310 シーン2、311 シーン、400 例、401 サーバ、402 クライアント、403 シーン2、404 シーン1、405 バッファ、406 再利用可能アセット、407 シーン、408 シーン、409 アセット「シーン1」、410 アセット「シーン2」、411 シーン、500 コンピュータシステム、501 キーボード、502 マウス、503 トラックパッド、505 ジョイスティック、506 マイク、507 スキャナ、508 カメラ、510 タッチスクリーン、521 媒体、522 サムドライブ、523 ソリッドステートドライブ、540 コア、541 中央処理装置(CPU)、542 グラフィック処理装置(GPU)、543 フィールドプログラマブルゲートエリア(FPGA)、544 アクセラレータ、545 読み取り専用メモリ(ROM)、546 ランダムアクセスメモリ(RAM)、547 内部大容量記憶装置、548 システムバス、549 周辺バス、600 例
【手続補正書】
【提出日】2023-09-27
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
少なくとも1つのハードウェアプロセッサによって実施される方法であって、
クライアントにストリーミングされるライトフィールドまたはホログラフィック媒体のシーンを制御するステップと、
前記クライアントに関連付けられたクライアントバッファの状態に少なくとも基づいて、前記ライトフィールドまたはホログラフィック媒体をストリーミングするために前記クライアントに利用可能な帯域幅を決定するステップと、
前記ライトフィールドまたはホログラフィック媒体の前記シーンを複数の分割シーンに分割するステップであって、各分割シーンが前記シーンの1つまたは複数のアセットを含む、ステップと、
前記1つまたは複数の前記アセットが前記クライアントバッファ内に存在するかどうかを判定するステップと、
前記1つまたは複数の前記アセットが前記クライアントバッファ内に存在すると判定されるかどうかに基づいて、前記シーンの前記1つまたは複数の前記アセットをそれぞれの分割シーンにマッピングするステップと、
前記帯域幅、前記マッピング、および前記アセットの前記1つまたは複数が前記クライアントバッファ内に存在すると判定されるかどうかに基づいて、前記クライアントバッファへの前記1つまたは複数のアセットのサブセットの伝送を制御するステップと、
前記分割シーンの少なくとも1つをレンダリングするときに前記アセットの少なくとも1つを再利用するように前記クライアントを制御するステップとを含む、方法。
【請求項2】
前記少なくとも1つのハードウェアプロセッサが、前記クライアントとネットワーク通信するサーバのものである、請求項1に記載の方法。
【請求項3】
前記分割シーンのうちの先行シーンおよび連続シーンの各々について、前記アセットのどれが
前記クライアントに送信されるかを追跡するステップ
をさらに含む、請求項2に記載の方法。
【請求項4】
前記少なくとも1つのハードウェアプロセッサが前記クライアントのものである、請求項1に記載の方法。
【請求項5】
前記複数のアセットの前記1つまたは複数のアセットの前記クライアントバッファへの前記伝送を制御するステップが、前記ライトフィールドまたはホログラフィック媒体の前記シーン内の前記アセットの相対深度にさらに基づく、請求項1に記載の方法。
【請求項6】
前記アセットの前記1つまたは複数のアセットの前記クライアントバッファへの前記伝送を制御するステップが、前記ライトフィールドまたはホログラフィック媒体の前記シーン内の前記アセットの相対優先度にさらに基づく、請求項1に記載の方法。
【請求項7】
前記アセットの前記1つまたは複数が前記クライアントバッファ内に存在するかどうかを判定するステップが、前記アセットの前記1つまたは複数が、各々がローカルエリアネットワーク(LAN)上でネットワーク接続された前記クライアントバッファを含む複数のクライアントバッファのいずれかに存在するかどうかを判定するステップをさらに含む、請求項1に記載の方法。
【請求項8】
前記アセットの前記少なくとも1つが前記シーンに現れる回数の少なくとも1つに基づいて、前記アセットの前記少なくとも1つに再利用性優先度を割り当てるステップをさらに含む、請求項1に記載の方法。
【請求項9】
前記分割シーンの前記少なくとも1つをレンダリングするときに前記アセットの前記少なくとも1つを再利用するように前記クライアントを制御するステップが、前記アセットの前記少なくとも1つに割り当てられた前記再利用性優先度に基づく、請求項8に記載の方法。
【請求項10】
前記アセットの前記少なくとも1つに前記再利用性優先度を割り当てるステップが、前記アセットの前記少なくとも1つのサイズおよび前記アセットの前記少なくとも1つの複雑さのうちの少なくとも1つにさらに基づく、請求項9に記載の方法。
【請求項11】
コンピュータプログラムコードを記憶するように構成された少なくとも1つのメモリと、
前記コンピュータプログラムコードにアクセスし、前記コンピュータプログラムコードによって命令されるように動作するように構成された少なくとも1つのハードウェアプロセッサであって、前記コンピュータプログラムコードが、
前記少なくとも1つのハードウェアプロセッサに、請求項1から10のいずれか一項に記載の方法を実行させる、装置。
【請求項12】
コンピュータに処理を実行させるプログラム
であって、前記処理が、
前記コンピュータに、請求項1から10のいずれか一項に記載の方法を実行させる、プログラム。
【国際調査報告】