IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ テンセント・アメリカ・エルエルシーの特許一覧

<>
  • 特許-没入型メディアの相互運用性 図1A
  • 特許-没入型メディアの相互運用性 図1B
  • 特許-没入型メディアの相互運用性 図1C
  • 特許-没入型メディアの相互運用性 図2
  • 特許-没入型メディアの相互運用性 図3
  • 特許-没入型メディアの相互運用性 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-09
(45)【発行日】2024-12-17
(54)【発明の名称】没入型メディアの相互運用性
(51)【国際特許分類】
   G06F 3/01 20060101AFI20241210BHJP
   G06T 19/00 20110101ALI20241210BHJP
   H04S 7/00 20060101ALI20241210BHJP
【FI】
G06F3/01 510
G06T19/00 A
H04S7/00 300
【請求項の数】 13
(21)【出願番号】P 2023530539
(86)(22)【出願日】2022-08-23
(65)【公表番号】
(43)【公表日】2023-12-12
(86)【国際出願番号】 US2022075326
(87)【国際公開番号】W WO2023028477
(87)【国際公開日】2023-03-02
【審査請求日】2023-05-19
(31)【優先権主張番号】63/260,509
(32)【優先日】2021-08-23
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/892,987
(32)【優先日】2022-08-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ティエン,ジュン
(72)【発明者】
【氏名】シュー,シャオジョン
(72)【発明者】
【氏名】リウ,シャン
【審査官】遠藤 孝徳
(56)【参考文献】
【文献】特表2021-517987(JP,A)
【文献】特表2021-519012(JP,A)
【文献】再公表特許第2019/078033(JP,A1)
【文献】特表2020-527887(JP,A)
【文献】米国特許出願公開第2020/0304933(US,A1)
【文献】特表2020-515959(JP,A)
【文献】米国特許出願公開第2020/0344563(US,A1)
【文献】特表2021-507558(JP,A)
【文献】米国特許第10791313(US,B2)
【文献】国際公開第2021/015982(WO,A1)
【文献】米国特許出願公開第2020/0053464(US,A1)
【文献】特表2021-518923(JP,A)
【文献】米国特許出願公開第2020/0196086(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06T 19/00 -19/02
H04S 7/00
A63F 13/00 -13/98
A63G 31/00 -31/16
(57)【特許請求の範囲】
【請求項1】
メディア処理デバイスにより実行される、メディア処理の方法であって、
メディアアプリケーションにおけるシーンの第1のメディアコンテンツに関連づけられた第1の3自由度(3DoF)情報を受信するステップであり、前記第1の3DoF情報は、前記メディアアプリケーションのユーザを中心とした第1の球形上に前記第1のメディアコンテンツを記述するための第1の旋回向きを含む、ステップと、
前記第1のメディアコンテンツをレンダリングするためのレンダリングプラットフォームが6自由度(6DoF)プラットフォームであると判断するステップと、
前記第1の旋回向きと、前記第1の球形の中心位置及び半径を含む前記第1の球形の第1のパラメータに基づいて、次の
【数1】
という式に従って、前記第1のメディアコンテンツの第1の空間位置情報を算出するステップであり、(x,y,z)は前記第1のメディアコンテンツの空間位置を表し、(θ,φ,ψ)は前記第1の旋回向きを表し、(a,b,c)は前記第1の球形の前記中心位置を表し、rは前記第1の球形の前記半径を表し、前記第1の空間位置情報は、前記第1のメディアコンテンツを前記6DoFプラットフォーム上でレンダリングするために前記第1のメディアコンテンツに関連づけられた第1の6DoF情報において使用される、ステップと、
を含む方法。
【請求項2】
事前に定義されたパラメータ前記第1の球形の前記第1のパラメータとして使用するステップ
をさらに含む、請求項1に記載の方法。
【請求項3】
前記第1の球形の前記中心位置を、事前定義された位置であるように設定するステップと、
前記第1の球形の前記半径を、事前定義された正の値であるように設定するステップと、
をさらに含む、請求項2に記載の方法。
【請求項4】
前記第1の球形の前記中心位置を、3次元(3D)空間における(0,0,0)であるように設定するステップと、
前記第1の球形の半径を、1であるように設定するステップと、
をさらに含む、請求項3に記載の方法。
【請求項5】
前記メディア処理デバイスはメディアクライアントデバイスであり、当該方法は、
メディアサーバデバイスから前記第1の球形の前記第1のパラメータを受信するステップ
をさらに含む、請求項1に記載の方法。
【請求項6】
当該方法は、
前記第1のメディアコンテンツを運ぶビットストリームの一部である補足強化情報(SEI)メッセージから、前記第1の球形の前記第1のパラメータを受信するステップ
をさらに含む、請求項5に記載の方法。
【請求項7】
当該方法は、
システムレイヤにおけるメタデータのパケットから、前記第1の球形の前記第1のパラメータを受信するステップであり、前記システムレイヤにおける前記メタデータのパケットは、前記第1のメディアコンテンツを運ぶビットストリームと別個である、ステップ
をさらに含む、請求項5に記載の方法。
【請求項8】
前記メディアアプリケーションにおける前記シーンの第2のメディアコンテンツに関連づけられた第2の3DoF情報を受信するステップであり、前記第2の3DoF情報は、前記第1の球形と中心位置を共有する第2の球形上に前記第2のメディアコンテンツを記述するための第2の旋回向きを含む、ステップと、
前記第2の旋回向きと前記第2の球形の第2のパラメータに基づいて、前記第2のメディアコンテンツの第2の空間位置情報を算出するステップであり、前記第2の空間位置情報は、前記第2のメディアコンテンツを前記6DoFプラットフォーム上でレンダリングするために前記第2のメディアコンテンツに関連づけられた第2の6DoF情報において使用される、ステップと、
をさらに含む、請求項1に記載の方法。
【請求項9】
前記第1の球形と前記第2の球形は同じ半径を有する、請求項8に記載の方法。
【請求項10】
前記第1の球形と前記第2の球形は異なる半径を有する、請求項8に記載の方法。
【請求項11】
前記メディア処理デバイスはメディアクライアントデバイスであり、当該方法は、
前記第1の空間位置情報を含む前記第1の6DoF情報に従って、前記第1のメディアコンテンツをレンダリングするステップ
をさらに含む、請求項1に記載の方法。
【請求項12】
前記メディア処理デバイスはメディアサーバデバイスであり、当該方法は、
前記第1の6DoF情報に関連づけられた前記第1のメディアコンテンツをビットストリームにおいてメディアクライアントデバイスに提供するステップ
をさらに含む、請求項1に記載の方法。
【請求項13】
メディア処理の装置であって、
処理回路を含み、前記処理回路は、請求項1乃至12のうちいずれか1項に記載の方法を実行するように構成される、装置。
【発明の詳細な説明】
【技術分野】
【0001】
[参照による組み込み]
本出願は、2022年8月22日に出願された米国特許出願第17/892,987号「IMMERSIVE MEDIA INTEROPERABILITY」に対する優先権の利益を主張するものであり、該出願は、2021年8月23日に出願された米国仮出願第63/260,509号「Immersive Media Interoperability」に対する優先権の利益を主張するものである。先行出願の開示は、その全体を参照によりここで組み込まれる。
【0002】
[技術分野]
本開示は、一般にメディア処理に関連する実施形態について説明する。
【背景技術】
【0003】
本明細書で提供される背景技術説明は、一般に開示の文脈を提示することを目的としている。この背景技術セクションに記載されている範囲の、現在名前が挙げられている発明者の著作物、並びに、その他の点で出願時における従来技術として適さない可能性のある説明の態様は、本開示に対して明示的にも暗黙的にも従来技術として認められない。
【0004】
仮想現実(virtual reality)又は拡張現実(augmented reality)のアプリケーションにおいて、アプリケーションの仮想世界に存在する感覚をユーザに持たせるために、アプリケーションの仮想シーンにおけるビデオ、オーディオ、又は他の刺激は、現実世界におけるように知覚される。いくつかの例において、現実世界におけるユーザの物理的な動きは、アプリケーションにおける仮想シーン内でマッチする動きを有するものとして知覚される。さらに、ユーザは、現実的と知覚され、かつ現実世界におけるユーザの体験とマッチするメディアを使用して、仮想シーンと対話することができる。
【発明の概要】
【0005】
開示の態様は、メディア処理のための方法及び装置を提供する。いくつかの例において、メディア処理のための装置は、処理回路を含む。処理回路は、メディアアプリケーションにおけるシーンの第1のメディアコンテンツに関連づけられた第1の3自由度(3DoF)情報を受信する。第1の3DoF情報は、メディアアプリケーションのユーザを中心とした第1の球形上に第1のメディアコンテンツを記述するための第1の旋回向きを含む。処理回路は、第1のメディアコンテンツをレンダリングするためのレンダリングプラットフォームが6自由度(6DoF)プラットフォームであると判断し、第1の旋回向きと第1の球形の第1のパラメータに基づいて、第1のメディアコンテンツの第1の空間位置情報を算出する。第1の空間位置情報は、第1のメディアコンテンツを6DoFプラットフォーム上でレンダリングするために第1のメディアコンテンツに関連づけられた第1の6DoF情報において使用される。
【0006】
いくつかの実施形態において、処理回路は、事前に定義されたパラメータに従って第1の球形の第1のパラメータを決定する。いくつかの例において、処理回路は、第1の球形の中心位置を、事前定義された位置であるように設定し、第1の球形の半径を、事前定義された正の値であるように設定する。一例において、処理回路は、第1の球形の中心位置を、3次元(3D)空間における(0,0,0)であるように設定し、第1の球形の半径を、1であるように設定する。
【0007】
いくつかの実施形態において、装置はメディアクライアントデバイスであり、処理回路は、メディアサーバデバイスから第1の球形の第1のパラメータを受信する。一例において、処理回路は、第1のメディアコンテンツを運ぶビットストリームの一部である補足強化情報(SEI)メッセージから、第1の球形の第1のパラメータを受信する。別の例において、処理回路は、システムレイヤにおけるメタデータのパケットから、第1の球形の第1のパラメータを受信する。システムレイヤにおけるメタデータのパケットは、第1のメディアコンテンツを運ぶビットストリームと別個である。
【0008】
いくつかの例において、処理回路は、メディアアプリケーションにおけるシーンの第2のメディアコンテンツに関連づけられた第2の3DoF情報を受信する。第2の3DoF情報は、第1の球形と中心位置を共有する第2の球形上に第2のメディアコンテンツを記述するための第2の旋回向きを含む。処理回路は、第2の旋回向きと第2の球形の第2のパラメータに基づいて、第2のメディアコンテンツの第2の空間位置情報を算出する。第2の空間位置情報は、第2のメディアコンテンツを6DoFプラットフォーム上でレンダリングするために第2のメディアコンテンツに関連づけられた第2の6DoF情報において使用される。
【0009】
一例において、第1の球形と第2の球形は同じ半径を有する。別の例において、第1の球形と第2の球形は異なる半径を有する。
【0010】
一例において、装置はメディアクライアントデバイスであり、処理回路は、第1の空間位置情報を含む第1の6DoF情報に従って、第1のメディアコンテンツをレンダリングする。別の例において、装置はメディアサーバデバイスであり、処理回路は、第1の6DoF情報に関連づけられた第1のメディアコンテンツをビットストリームにおいてメディアクライアントデバイスに提供する。
【0011】
開示の態様はさらに、命令を記憶した非一時的コンピュータ読取可能媒体を提供し、該命令は、コンピュータにより実行されたときに、コンピュータにメディア処理の方法を実行させる。
【図面の簡単な説明】
【0012】
開示される対象事項のさらなる特徴、性質、及び様々な利点は、以下の詳細な説明及び添付の図面からより明らかになるであろう。
図1A図1A図1Cは、いくつかの例における6自由度(6DoF)及び3自由度(3DoF)を使用する環境を例示する図を示す。
図1B図1A図1Cは、いくつかの例における6自由度(6DoF)及び3自由度(3DoF)を使用する環境を例示する図を示す。
図1C図1A図1Cは、いくつかの例における6自由度(6DoF)及び3自由度(3DoF)を使用する環境を例示する図を示す。
図2】開示の一実施形態によるメディアシステムのブロック図を示す。
図3】開示のいくつかの実施形態によるプロセスを概説するフローチャートを示す。
図4】一実施形態に従うコンピュータシステムの概略的な例示である。
【発明を実施するための形態】
【0013】
開示の態様は、没入型メディア(immersive media)の相互運用性のための手法を提供する。没入型技術により、没入型メディアは、デジタルシミュレーションを通じて物理的な世界を作成又は模倣しようと試みる。開示の一態様によれば、没入型メディアアプリケーションのための機器は、異なる自由度(degrees of freedom)、例えば、6自由度(6DoF)、3自由度(3DoF)などをサポートする場合がある。6DoFをサポートする機器は、6DoFをサポートするハードウェア及びソフトウェアを含む6DoFプラットフォームと呼ぶことができる。3DoFをサポートする機器は、3DoFをサポートするハードウェアとソフトウェアを含む3DoFプラットフォームと呼ぶことができる。一部のメディアコンテンツは、6DoFプラットフォーム上のユーザと対話するために生成され、6DoFメディアコンテンツと呼ばれ、一部のメディアコンテンツは、3DoFプラットフォーム上のユーザと対話するために生成され、3DoFメディアコンテンツと呼ばれる。本開示は、没入型メディアの相互運用性を向上させるために没入型メディアコンテンツを調整する手法を提供する。具体的には、上記手法は、6DoFプラットフォームでの使用のために3DoFメディアコンテンツに適用することができる。
【0014】
開示のいくつかの態様によれば、いくつかの技術は、没入型メディアと呼ばれるデジタルシミュレーションを通じて物理的な世界を作成又は模倣しようと試みる。没入型メディア処理は、「イマーシブオーディオ(immersive audio)」、「イマーシブビデオ(immersive video)」、及び「システムサポート(systems support)」を含む、MPEG-I(Moving Picture Expert Group Immersive)標準スイートなどの没入型メディア標準に従って実装することができる。没入型メディア標準は、ユーザが6つの自由度(6DoF)を使用して環境をナビゲートし、該環境と対話することができる、VR又はAR提示をサポートすることができる。6DoFは、3次元空間における剛体の動きの自由さを指す。体の運動には、並進運動と回転運動を含むことができる。
【0015】
図1Aは、いくつかの例における6自由度(6DoF)を使用する環境(100A)を例示する図を示す。ユーザ(101A)の動きの6DoFは、並進運動と回転運動を含むことができる。例えば、並進運動は、3次元空間におけるユーザ(101A)の位置(a,b,c)を使用してユーザ(101A)の空間ナビゲーションとして表すことができ、aの変化は、X軸に沿った動き(例えば、前方及び後方)であり、bの変化は、Y軸に沿った動き(例えば、左及び右)であり、cの変化は、Z軸に沿った動き(例えば、上及び下)である。回転運動は、ユーザ頭部向き(α1,β1,γ1)を使用してユーザの向きとして表すことができ、α1は、Z軸の周りの回転角度であり、ヨー角とも呼ばれ、β1は、Y軸の周りの回転角度であり、ピッチ角とも呼ばれ、γ1は、X軸の周りの回転角度であり、ロール角とも呼ばれる。図1Aに示すように、ユーザの回転向き(rotation orientation)(α1,β1,γ1)は、ユーザ(101A)の空間位置(a,b,c)を中心としている。
【0016】
図1Aはユーザに対する6DoFを示しているが、同様の定義を他の剛体に適用することができる。例えば、環境内のオーディオソース(例えば、スピーカー)、仮想オブジェクトに対して、6DoFを同様に定義することができる。
【0017】
図1Bは、いくつかの例における6自由度(6DoF)を使用する環境(100B)を例示する図を示す。環境(100B)は、ユーザ(101B)とスピーカー(102B)を含む。ユーザ(101B)の6DoFは、環境(100A)におけるのと同様に定義される。例えば、ユーザ(101B)の6DoFは、3次元空間におけるユーザ(101B)の空間位置(a,b,c)と、ユーザ(101B)の回転向き(α1,β1,γ1)を含む。回転向き(α1,β1,γ1)は、中心をユーザ(101B)の空間位置(a,b,c)にして定義される。
【0018】
スピーカーの動きの6DoFは、スピーカー(102B)の空間位置(x,y,z)と、スピーカー(102B)の回転向き(α2,β2,γ2)を含むことができる。回転向き(α2,β2,γ2)は、中心をスピーカー(102B)の空間位置(x,y,z)にして定義される。
【0019】
図1Bはスピーカーに対する6DoFを示しているが、同様の定義を他の剛体に適用することができる。
【0020】
いくつかの用途のアプリケーションにおいて、没入型メディアデバイスが6DoFをサポートしているとき、ユーザは、没入型メディアデバイスによるサポートにより6DoFメディアコンテンツと対話することができる。例えば、ユーザの6DoF情報は、没入型メディアデバイスにより検出でき、没入型メディアデバイスは、ユーザの6DoF情報に基づいて6DoFメディアコンテンツのオーディオ及びビデオをレンダリングすることができる。
【0021】
3DoFプラットフォームなどのいくつかの没入型メディアデバイスは、6DoFをサポートしていない場合があり、人々が3自由度(3DoF)を使用してメディアコンテンツ(例えば、3DoFメディアコンテンツ)と対話できるようにのみする場合がある。3DoFメディアコンテンツのいくつかの例において、3DoFは、ユーザ及びメディアに関連づけられた向き情報を参照することができる。例えば、3DoF設定におけるメディアの向き情報は、ユーザが球形(sphere)の中心である該球形上に存在するメディアの旋回向き(revolution orientation)角度を含む。メディアは、ビジュアル、オーディオ(オーディオチャネル、オーディオオブジェクトなど)、又は他の形式とすることができる。3DoF設定における向き情報は、旋回向き(θ,φ,ψ)と呼ぶことができ、θは、ユーザのZ軸の周りの旋回角度であり、φは、ユーザのY軸の周りの旋回角度であり、ψは、ユーザのX軸の周りの旋回角度である。
【0022】
図1Cは、いくつかの例における3自由度(6DoF)を使用する環境(100C)を例示する図を示す。環境(100C)は、ユーザ(101C)とスピーカー(102C)を含む。スピーカー(102C)は、球形(110)上の点(111)として扱われる。球形(110)の中心はユーザ(101C)である。スピーカー(102C)の3DoFは、球形(110)上の点(111)の旋回向き(θ,φ,ψ)として定義される。
【0023】
いくつかのアプリケーションにおいて、3DoFメディアコンテンツは、6DoFプラットフォーム上でレンダリングされる必要がある場合がある。本開示は、3DoFメディアコンテンツを、6DoFプラットフォーム上でレンダリングされるように6DoFメディアコンテンツに調整する手法を提供する。
【0024】
図2は、開示の一実施形態によるメディアシステム(200)のブロック図を示す。メディアシステム(200)は、没入型メディアアプリケーション、拡張現実(AR)アプリケーション、仮想現実アプリケーション、ビデオゲームアプリケーション、スポーツゲームアニメーションアプリケーション、テレビ会議及びテレプレゼンスアプリケーション、メディアストリーミングアプリケーションなどの、様々な用途のアプリケーションで使用することができる。
【0025】
メディアシステム(200)は、メディアサーバデバイス(210)と、図2に示すメディアクライアントデバイス(260A)及び(260B)などの複数のメディアクライアントデバイスを含み、これらは、ネットワーク(図示せず)により接続することができる。一例において、メディアサーバデバイス(210)は、オーディオコーディング及びビデオコーディング機能を備えた1つ以上のデバイスを含むことができる。一例において、メディアサーバデバイス(210)は、デスクトップコンピュータ、ラップトップコンピュータ、サーバコンピュータ、タブレットコンピュータなどの単一のコンピューティングデバイスを含む。別の例において、メディアサーバデバイス(210)は、データセンター、サーバファームなどを含む。メディアサーバデバイス(210)は、ビデオ及びオーディオコンテンツを受信し、ビデオコンテンツ及びオーディオコンテンツを適切なメディアコーディング標準に従って1つ以上の符号化されたビットストリームに圧縮することができる。符号化されたビットストリームは、ネットワークを介してメディアクライアントデバイス(260A)及び(260B)に配信することができる。
【0026】
メディアクライアントデバイス(例えば、メディアクライアントデバイス(260A)及び(260B))は、それぞれ、メディアアプリケーションのためのビデオコーディング及びオーディオコーディング機能を備えた1つ以上のデバイスを含む。一例において、メディアクライアントデバイスの各々は、デスクトップコンピュータ、ラップトップコンピュータ、サーバコンピュータ、タブレットコンピュータ、ウェアラブルコンピューティングデバイス、ヘッドマウントディスプレイ(head mounted display、HMD)デバイスなどのコンピューティングデバイスを含む。メディアクライアントデバイスは、符号化されたビットストリームを適切なメディアコーディング標準に従って復号することができる。復号されたビデオコンテンツ及びオーディオコンテンツは、メディア再生に使用することができる。
【0027】
メディアサーバデバイス(210)は、任意の適切な技術を使用して実施することができる。図2の例では、メディアサーバデバイス(210)は、一緒に結合された処理回路(230)とインターフェース回路(211)を含む。
【0028】
処理回路(230)は、1つ以上の中央処理装置(CPU)、1つ以上のグラフィックス処理ユニット(GPU)、特定用途向け集積回路などの任意の適切な処理回路を含むことができる。処理回路(230)は、オーディオエンコーダ、ビデオエンコーダなどの様々なエンコーダを含むように構成することができる。一例において、1つ以上のCPU及び/又はGPUが、オーディオエンコーダ又はビデオエンコーダとして機能するソフトウェアを実行することができる。別の例において、オーディオエンコーダ又はビデオエンコーダは、特定用途向け集積回路を使用して実装することができる。
【0029】
インターフェース回路(211)は、メディアサーバデバイス(210)をネットワークとインターフェース接続する(interface)ことができる。インターフェース回路(211)は、ネットワークから信号を受信する受信部分と、ネットワークに信号を送信する送信部分を含むことができる。例えば、インターフェース回路(211)は、符号化されたビットストリームを他のデバイス、例えばメディアクライアントデバイス(260A)、メディアクライアントデバイス(260B)などにネットワークを介して運ぶ信号を送信することができる。インターフェース回路(211)は、メディアクライアントデバイス(260A)及び(260B)などのメディアクライアントデバイスから信号を受信することができる。
【0030】
ネットワークは、イーサネット接続、光ファイバ接続、WiFi接続、セルラーネットワーク接続などの有線及び/又は無線接続を介して、メディアサーバデバイス(210)及びメディアクライアントデバイス(例えば、メディアクライアントデバイス(260A)及び(260B))と適切に結合される。ネットワークは、ネットワークサーバデバイス、ストレージデバイス、ネットワークデバイスなどを含むことができる。ネットワークのコンポーネントは、有線及び/又は無線接続を介して一緒に適切に結合される。
【0031】
メディアクライアントデバイス(例えば、メディアクライアントデバイス(260A)及び(260B))は、コーディングされたビットストリームを復号するようにそれぞれ構成される。一例において、各メディアクライアントデバイスは、表示できるビデオフレームのシーケンスを再構成するためのビデオ復号を実行することができ、再生のためのオーディオ信号を生成するためのオーディオ復号を実行することができる。
【0032】
メディアクライアントデバイス(260A)及び(260B)などのメディアクライアントデバイスは、任意の適切な技術を使用して実施することができる。図2の例では、ユーザAにより使用できるユーザ機器としてメディアクライアントデバイス(260A)が示されているが、イヤホンを備えたヘッドマウントディスプレイ(HMD)に限定されず、ユーザBにより使用できるユーザ機器としてメディアクライアントデバイス(260B)が示されているが、イヤホンを備えたHMDに限定されない。
【0033】
図2において、メディアクライアントデバイス(260A)は、インターフェース回路(261A)と、図2に示すように一緒に結合された処理回路(270A)を含み、メディアクライアントデバイス(260B)は、インターフェース回路(261B)と、図2に示すように一緒に結合された処理回路(270B)を含む。
【0034】
インターフェース回路(261A)は、メディアクライアントデバイス(260A)をネットワークとインターフェース接続することができる。インターフェース回路(261A)は、ネットワークから信号を受信する受信部分と、ネットワークに信号を送信する送信部分を含むことができる。例えば、インターフェース回路(261A)は、ネットワークから符号化されたビットストリームを運ぶ信号などの、データを運ぶ信号を受信することができる。
【0035】
処理回路(270A)は、CPU、GPU、特定用途向け集積回路などの適切な処理回路を含むことができる。処理回路(270A)は、DoFコンバータ(271A)、レンダラ(renderer)(272A)、ビデオデコーダ(図示せず)、オーディオデコーダ(図示せず)などの様々なコンポーネントを含むように構成することができる。
【0036】
いくつかの例において、オーディオデコーダは、オーディオコンテンツが符号化された方式に適した復号ツールを選択することにより、符号化されたビットストリーム内のオーディオコンテンツを復号することができ、ビデオデコーダは、ビデオコンテンツが符号化された方式に適した復号ツールを選択することにより、符号化されたビットストリーム内のビデオコンテンツを復号することができる。DoFコンバータ(271A)は、メディアクライアントデバイス(260A)と互換性があるように、復号されたメディアコンテンツ内のDoF情報を調整するように構成される。一例において、メディアクライアントデバイス(260A)のハードウェアが6DoFをサポートし、受信したメディアコンテンツが3DoFメディアコンテンツを含み、次いで、DoFコンバータ(271A)は、3DoFメディアコンテンツを、メディアクライアントデバイス(260A)で再生するために6DoFメディアコンテンツに変換することができる。
【0037】
さらに、レンダラ(272A)は、符号化されたビットストリームから復号されたオーディオコンテンツ及びビデオコンテンツから、メディアクライアントデバイス(260A)に適した最終的なデジタルプロダクト(product)を生成することができる。処理回路(270A)は、さらなるメディア処理のためにミキサ、後処理回路などの他の適切なコンポーネント(図示せず)を含むことができることに留意する。
【0038】
同様に、インターフェース回路(261B)は、メディアクライアントデバイス(260B)をネットワークとインターフェース接続することができる。インターフェース回路(261B)は、ネットワークから信号を受信する受信部分と、ネットワークに信号を送信する送信部分を含むことができる。例えば、インターフェース回路(261B)は、ネットワークから符号化されたビットストリームを運ぶ信号などの、データを運ぶ信号を受信することができる。
【0039】
処理回路(270B)は、CPU、GPU、特定用途向け集積回路などの適切な処理回路を含むことができる。処理回路(270B)は、DoFコンバータ(271B)、レンダラ(272B)、ビデオデコーダ、オーディオデコーダなどの様々なコンポーネントを含むように構成することができる。
【0040】
いくつかの例において、オーディオデコーダは、オーディオコンテンツが符号化された方式に適した復号ツールを選択することにより、符号化されたビットストリーム内のオーディオコンテンツを復号することができ、ビデオデコーダは、ビデオコンテンツが符号化された方式に適した復号ツールを選択することにより、符号化されたビットストリーム内のビデオコンテンツを復号することができる。DoFコンバータ(271B)は、メディアクライアントデバイス(260B)と互換性があるように、受信したメディアコンテンツ内のDoF情報を調整するように構成される。一例において、メディアクライアントデバイス(260B)のハードウェアが6DoFをサポートし、受信したメディアコンテンツが3DoFメディアコンテンツを含み、次いで、DoFコンバータ(271B)は、3DoFメディアコンテンツを、メディアクライアントデバイス(260B)で再生するために6DoFメディアコンテンツに変換することができる。
【0041】
さらに、レンダラ(272B)は、符号化されたビットストリームから復号されたオーディオコンテンツから、メディアクライアントデバイス(260B)に適した最終的なデジタルプロダクトを生成することができる。処理回路(270B)は、さらなるオーディオ処理のためにミキサ、後処理回路などの他の適切なコンポーネント(図示せず)を含むことができることに留意する。
【0042】
いくつかの例において、メディアサーバデバイス(210)は、DoF変換を実行することができる。一例において、メディアサーバデバイス(210)は、DoFコンバータ(231)を含む。一例において、メディアサーバデバイス(210)は、メディアクライアントデバイス(260A)及びメディアクライアントデバイス(260B)などのメディアクライアントデバイスからハードウェア情報を受信することができる。例えば、メディアサーバデバイス(210)は、メディアクライアントデバイス(260A)からハードウェア情報を受信し、ハードウェア情報は、メディアクライアントデバイス(260A)が6DoFメディアコンテンツをサポートし、低バッテリ状態であることを示し、次いで、DoFコンバータ(231)は、3DoFメディアコンテンツを6DoFメディアコンテンツに変換することができる。6DoFメディアコンテンツは、適切に符号化され、メディアクライアントデバイス(260A)に送信されることが可能である。別の例において、メディアサーバデバイス(210)は、メディアクライアントデバイス(260B)からハードウェア情報を受信し、ハードウェア情報は、メディアクライアントデバイス(260B)が6DoFメディアコンテンツをサポートし、メディアクライアントデバイス(260)が処理能力を欠く(例えば、DoFコンバータを有さない)ことを示し、次いで、DoFコンバータ(231)は、3DoFメディアコンテンツを6DoFメディアコンテンツに変換することができる。6DoFメディアコンテンツは、適切に符号化され、メディアクライアントデバイス(260B)に送信されることが可能である。
【0043】
開示のいくつかの態様によれば、3DoFメディアコンテンツは、シーンにおけるメディアの向き情報とともに、ユーザ向き情報を記述することができる。メディアコンテンツは、ビジュアル、オーディオ(オーディオチャネル、オーディオオブジェクトなど)、又は他の形式とすることができる。3DoFメディアコンテンツを6DoFメディアコンテンツに変換するために、いくつかの例において、ユーザ空間位置情報と、シーンにおける各メディアの空間位置情報が適切に決定される。
【0044】
3DoFメディアコンテンツの3DoF情報は、ユーザが球形の中心であり、かつメディアコンテンツが球形の表面位置にある球形に基づいて、メディアコンテンツの旋回向きを記述することに留意する。開示の一態様によれば、球形の中心位置、球形の半径などの球形のパラメータを用いて、メディアコンテンツの3DoF情報をメディアコンテンツの6DoF情報に変換することができる。球形のパラメータは、事前定義し、サーバ側又はクライアント側で利用可能とすることができ、あるいはサーバ側からクライアント側に送信することができる。
【0045】
いくつかの実施形態において、球形に関する事前に定義されたパラメータのセットは、サーバ側及びクライアント側(例えば、図2におけるメディアサーバデバイス及びメディアクライアントデバイス)で利用可能であり、6DoFメディアコンテンツは、事前に定義されたパラメータのセットに基づいて、3DoFメディアコンテンツに対応して生成することができる。いくつかの例において、ユーザ空間位置と、ユーザとメディアコンテンツの位置との間の距離(例えば、メディアコンテンツの位置が球形上にあり、かつ球形の中心がユーザの位置である球形の半径)が、事前定義されたパラメータである。
【0046】
いくつかの例において、ユーザ空間位置は、(0,0,0)、3次元空間の原点におけるものとして事前に定義される。旋回向き(ヨーθ、ピッチφ、ロールψ)を有する3DoFメディアコンテンツでは、空間位置(x,y,z)は、旋回向きに基づいて算出することができる。
【0047】
一例において、ユーザ空間位置は(0,0,0)に設定され、メディアコンテンツの位置とユーザの位置との間の距離は1に設定される。例えば、メディアコンテンツの位置は、ユーザが中心である単位球形上にある。したがって、メディアコンテンツの空間位置(x,y,z)は、例えば、式(1)、式(2)、及び式(3)に従って算出することができる。
【数1】
【0048】
したがって、6DoFを使用して、環境におけるユーザ及びメディアコンテンツの動きを表すことができる。例えば、6DoFにおけるユーザの空間位置情報は、(0,0,0)で表すことができ、6DoFにおけるユーザの回転向きは、(θ,φ,ψ)で表すことができる。6DoFにおけるメディアコンテンツの空間位置情報は、式(1)、式(2)、及び式(3)に従って算出された(x,y,z)で表すことができ、メディアコンテンツの回転向きは、(θ,φ,ψ)、(2π-θ,π-φ,π-ψ)、(0,0,0)などの任意の適切な値により設定することができる。
【0049】
別の例において、ユーザの空間位置は(0,0,0)に設定され、メディアコンテンツの空間位置とユーザの空間位置との間の距離はrであり、rは正の数である。したがって、メディアコンテンツの空間位置は、rの半径を有する球形上にあり、ユーザの空間位置は、球形の中心である。メディアコンテンツの空間位置(x,y,z)は、式(4)、式(5)、及び式(6)に従って算出することができる。
【数2】
【0050】
したがって、6DoFを使用して、環境におけるユーザ及びメディアコンテンツの動きを表すことができる。例えば、6DoFにおけるユーザの空間位置情報は、(0,0,0)で表すことができ、6DoFにおけるユーザの回転向きは、(θ,φ,ψ)で表すことができる。6DoFにおけるメディアコンテンツの空間位置情報は、式(4)、式(5)、及び式(6)に従って算出された(x,y,z)で表すことができ、メディアコンテンツの回転向きは、(θ,φ,ψ)、(2π-θ,π-φ,π-ψ)、(0,0,0)などの任意の適切な値により設定することができる。
【0051】
別の例において、ユーザの空間位置は、(a,b,c)として設定され、メディアコンテンツの空間位置とユーザの空間位置との間の距離は、rであるように設定され、rは正の数である。メディアコンテンツの空間位置(x,y,z)は、式(7)、式(8)、及び式(9)に従って算出することができる。
【数3】
【0052】
したがって、6DoFを使用して、環境におけるユーザ及びメディアコンテンツの動きを表すことができる。例えば、6DoFにおけるユーザの空間位置情報は、(a,b,c)で表すことができ、6DoFにおけるユーザの回転向きは、(θ,φ,ψ)で表すことができる。6DoFにおけるメディアコンテンツの空間位置情報は、式(7)、式(8)、及び式(9)に従って算出された(x,y,z)で表すことができ、メディアコンテンツの回転向きは、(θ,φ,ψ)、(2π-θ,π-φ,π-ψ)、(0,0,0)などの任意の適切な値により設定することができる。
【0053】
いくつかの実施形態において、異なるメディアコンテンツの空間位置は、ユーザの空間位置が中心にある同じ球形上に存在する。したがって、全てのメディアコンテンツは、同じ半径rを共有する。
【0054】
いくつかの実施形態において、各メディアコンテンツは、その独自の半径rを有する。メディアコンテンツの半径は、異なる場合がある。したがって、メディアコンテンツの空間位置は、ユーザ位置を中心とした異なる球形上に存在することができる。
【0055】
開示の一態様によれば、3DOFメディアコンテンツに加えて球形のパラメータ(例えば、球形の中心の位置、球形の半径)は、コンテンツビットストリームの一部として又は別個に、メタデータ又はSEIメッセージを介して、クライアント側に配信される場合がある。3DOFソースと球形のパラメータとの双方の組み合わせられた情報を用いて、6DOFプラットフォームは、対応するコンテンツをレンダリングすることができる。
【0056】
一実施形態において、ユーザ空間位置(球形の中心)、ユーザとメディアコンテンツの位置との間の距離(球形の半径)を含む球形のパラメータは、補足強化情報(supplemental enhanced information、SEI)メッセージを使用してなどで、3DoFメディアコンテンツを運ぶビットストリームの一部としてシグナリングされる。SEIメッセージは、コンテンツビットストリームからの没入型3DoFメディアコンテンツの復号プロセスに影響しない。SEIメッセージは、提供された3DoFメディアコンテンツを用いて(6DoFプラットフォーム上で)6DoF効果をレンダリングするのを支援することができる。
【0057】
別の実施形態において、ユーザ空間位置(球形の中心)、ユーザとメディアコンテンツの位置との間の距離(球形の半径)を含む球形のパラメータは、3DoFメディアコンテンツを運ぶビットストリームの一部として配信されない。いくつかの例において、球形のパラメータは、システムレイヤのパケットを介してなどで、メタデータとして送信される。メタデータは、ビットストリームからの没入型3DoFコンテンツの通常の復号プロセスに影響しない。メタデータは、提供された3DoFメディアコンテンツを用いて(例えば、6DoFプラットフォーム上で)6DoF効果をレンダリングするのを支援することができる。
【0058】
図3は、開示の一実施形態によるプロセス(300)を概説するフローチャートを示す。プロセス(300)は、メディアサーバデバイス(210)におけるDoFコンバータ(231)、メディアクライアントデバイス(260A)におけるDoFコンバータ(271A)、メディアクライアントデバイス(260B)におけるDoFコンバータ(271B)などのメディア処理デバイスにより実行することができる。いくつかの実施形態において、プロセス(300)はソフトウェア命令で実装され、したがって、処理回路がソフトウェア命令を実行したとき、処理回路はプロセス(300)を実行する。プロセスは(S301)で開始し、(S310)に進む。
【0059】
(S310)において、メディアアプリケーションにおけるシーンの第1のメディアコンテンツに関連づけられた第1の3自由度(3DoF)情報が受信される。第1の3DoF情報は、第1の球形上に第1のメディアコンテンツを記述するための第1の旋回向きを含む。一例において、第1の球形は、メディアアプリケーションのユーザを中心としている。
【0060】
(S320)において、メディア処理デバイスは、メディアコンテンツをレンダリングするためのレンダリングプラットフォームが6DoFプラットフォームであると判断する。一例において、メディア処理デバイスは、6DoFをサポートするメディアクライアントデバイスであり、メディア処理デバイスは、メディアクライアントデバイスの構成に基づいて判断を行うことができる。別の例において、メディア処理デバイスは、メディアサーバデバイスであり、メディアサーバデバイスは、メディアクライアントデバイスから信号を受信することができる。信号は、メディアクライアントデバイスが6DoFをサポートしていることを示す。
【0061】
(S330)において、第1のメディアコンテンツの第1の空間位置情報が、第1の旋回向きと第1の球形の第1のパラメータに基づいて決定される。第1の空間位置情報は、一例では、第1のメディアコンテンツを6DoFプラットフォーム上でレンダリングするために第1のメディアコンテンツに関連づけられた第1の6DoF情報において使用される。
【0062】
いくつかの実施形態において、第1の球形の第1のパラメータは、メディアサーバデバイス及びメディアクライアントデバイスに既知である事前に定義されたパラメータに従って決定される。いくつかの例において、第1の球形の中心位置は、事前定義された位置であるように、第1の球形の半径は、事前定義された正の値であるように設定され、第1の空間位置は、例えば、式(7)、式(8)、及び式(9)に従って決定することができる。一例において、第1の球形の中心位置は、3次元(3D)空間における(0,0,0)であるように、第1の球形の半径は、1であるように設定される。次いで、第1の空間位置情報は、例えば、式(1)、式(2)、及び式(3)に従って決定することができる。
【0063】
いくつかの実施形態において、メディア処理デバイスは、メディアクライアントデバイスであり、メディアクライアントデバイスは、メディアサーバデバイスから第1の球形の第1のパラメータを受信する。いくつかの例において、メディアクライアントデバイスは、第1のメディアコンテンツを運ぶビットストリームの一部である補足強化情報(SEI)メッセージから第1の球形の第1のパラメータを受信する。第1のメディアコンテンツは、SEIメッセージを使用することなくビットストリームから復号することができる。SEIメッセージは、3DoFである第1のメディアコンテンツを用いて6DoF効果をレンダリングするための情報を提供する。
【0064】
いくつかの例において、メディアクライアントデバイスは、システムレイヤにおけるメタデータのパケットから第1の球形の第1のパラメータを受信する。このパケットは、第1のメディアコンテンツを運ぶビットストリームと別個である。第1のメディアコンテンツは、メタデータを使用することなくビットストリームから復号することができる。メタデータは、3DoFである第1のメディアコンテンツを用いて6DoF効果をレンダリングするための情報を提供する。
【0065】
いくつかの例において、メディアアプリケーションにおけるシーンの第2のメディアコンテンツに関連づけられた第2の3DoF情報が受信される。第2の3DoF情報は、第1の球形と中心位置を共有する第2の球形上に第2のメディアコンテンツを記述するための第2の旋回向きを含む。次いで、第2のメディアコンテンツの第2の空間位置情報が、第2の旋回向きと第2の球形の第2のパラメータに基づいて算出される。第2の空間位置情報は、第2のメディアコンテンツを6DoFプラットフォーム上でレンダリングするために第2のメディアコンテンツに関連づけられた第2の6DoF情報において使用される。一例において、第1の球形と第2の球形は、同じ半径を有する。別の例において、第1の球形と第2の球形は、異なる半径を有する。
【0066】
いくつかの例において、メディア処理デバイスは、メディアクライアントデバイスであり、メディアクライアントデバイスは、第1の空間位置情報を含む第1の6つのDoF情報に従って第1のメディアコンテンツをレンダリングする。
【0067】
いくつかの例において、メディア処理デバイスは、メディアサーバデバイスであり、メディアサーバデバイスは、第1の6DoF情報に関連づけられた第1のメディアコンテンツをビットストリームにおいてメディアクライアントデバイスに提供する。
【0068】
その後、プロセスは(S399)に進み、終了する。
【0069】
プロセス(300)は適切に適応させることができる。プロセス(300)内のステップを修正及び/又は省略することができる。さらなるステップを追加することができる。任意の適切な実施順序を使用することができる。
【0070】
上述した手法は、コンピュータ読取可能命令を使用してコンピュータソフトウェアとして実施し、1つ以上のコンピュータ読取可能媒体に物理的に記憶することができる。例えば、図4は、開示される対象事項の特定の実施形態を実施するのに適したコンピュータシステム(400)を示す。
【0071】
コンピュータソフトウェアは、1つ以上のコンピュータ中央処理装置(CPU)、グラフィックス処理ユニット(GPU)などにより直接、又は解釈、マイクロコード実行を通じてなどで実行することができる命令を含むコードを作成するために、アセンブリ、コンパイル、リンク、又は同様のメカニズムの対象となり得る任意の適切なマシンコード又はコンピュータ言語を使用してコーディングすることができる。
【0072】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲーミングデバイス、モノのインターネット(internet of things)のデバイスなどを含む様々なタイプのコンピュータ又はそれらのコンポーネント上で実行することができる。
【0073】
コンピュータシステム(400)について図4に示すコンポーネントは、本質的に例示的なものであり、本開示の実施形態を実施するコンピュータソフトウェアの使用又は機能の範囲に関する制限を示唆することを意図していない。また、コンポーネントの構成も、コンピュータシステム(400)の例示的な実施形態に示されるコンポーネントのいずれか1つ又は組み合わせに関する依存関係又は要件を有すると解釈されるべきではない。
【0074】
コンピュータシステム(400)は、特定のヒューマンインターフェース入力デバイスを含むことができる。このようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き)、オーディオ入力(例えば、音声、拍手)、視覚入力(例えば、ジェスチャ)、嗅覚入力(図示せず)を通じて、1以上の人間のユーザによる入力に応答することができる。さらに、ヒューマンインターフェースデバイスは、オーディオ(例えば、発話、音楽、環境音)、画像(例えば、スキャン画像、静止画カメラから取得された写真画像)、ビデオ(例えば、2次元ビデオ、立体ビデオを含む3次元ビデオ)などの、人間による意識的な入力に必ずしも直接関連しない特定のメディアを捕捉するために使用することもできる。
【0075】
入力ヒューマンインターフェースデバイスは、キーボード(401)、マウス(402)、トラックパッド(403)、タッチスクリーン(410)、データグローブ(図示せず)、ジョイスティック(405)、マイクロフォン(406)、スキャナ(407)、カメラ(408)のうちの1つ以上を含むことができる(各々の1つのみが示されている)。
【0076】
コンピュータシステム(400)は、特定のヒューマンインターフェース出力デバイスを含むこともできる。このようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、匂い/味を通じて、1以上の人間のユーザの感覚を刺激している場合がある。このようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン(410)、データグローブ(図示せず)、ジョイスティック(405)による触覚フィードバックであるが、入力デバイスとして機能しない触覚フィードバックデバイスが存在することもできる)、オーディオ出力デバイス(例えば、スピーカー(409)、ヘッドフォン(図示せず))、視覚出力デバイス(例えば、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンなどのスクリーン(410)であり、各々がタッチスクリーン入力能力を有し又は有さず、各々が触覚フィードバック能力を有し又は有さず、これらの一部は、2次元の視覚出力、又は立体出力などの手段を通じて3より大きい次元の出力を出力することが可能でもよい;仮想現実グラス(図示せず)、ホログラフィックディスプレイ、及びスモークタンク(図示せず))、及びプリンタ(図示せず)が含むことができる。
【0077】
コンピュータシステム(400)は、人間によりアクセス可能なストレージデバイスとそれらの関連づけられた媒体、例えば、CD/DVDなどの媒体(421)を有するCD/DVD ROM/RW(420)を含む光学媒体、サムドライブ(422)、リムーバブルハードドライブ又はソリッドステートドライブ(423)、テープ及びフロッピーディスク(図示せず)などのレガシー磁気媒体、セキュリティドングル(図示せず)などの特化したROM/ASIC/PLDベースのデバイスなども含むことができる。
【0078】
当業者は、現在開示されている対象事項に関連して使用される用語「コンピュータ読取可能媒体」が、送信媒体、搬送波、又は他の一時的な信号を包含しないことも理解すべきである。
【0079】
コンピュータシステム(400)は、1つ以上の通信ネットワーク(455)へのインターフェース(454)を含むこともできる。ネットワークは、例えば、無線、有線、光とすることができる。ネットワークはさらに、ローカル、ワイドエリア、メトロポリタン、車両用及び産業用、リアルタイム、遅延耐性などとすることができる。ネットワークの例には、イーサネットなどのローカルエリアネットワーク、無線LAN、GSM、3G、4G、5G、LTEなどを含むセルラーネットワーク、ケーブルテレビ、衛星テレビ、地上波放送テレビを含むテレビ有線又は無線ワイドエリアデジタルネットワーク、CANBusを含む車両用及び産業用が含まれる。特定のネットワークは、特定の汎用データポート又は周辺バス(449)(例えば、コンピュータシステム(400)のUSBポートなど)に取り付けられた外部ネットワークインターフェースアダプタを一般的に必要とする。他のものは、以下に記載するようにシステムバスへの取り付けにより、コンピュータシステム(400)のコアに一般的に統合される(例えば、イーサネットインターフェースがPCコンピュータシステムに、又は、セルラーネットワークインターフェースがスマートフォンコンピュータシステムに)。これらのネットワークのいずれかを使用し、コンピュータシステム(400)は、他のエンティティと通信することができる。このような通信は、例えば、ローカル又はワイドエリアデジタルネットワークを使用して他のコンピュータシステムに対して、単方向、受信のみ(例えば、テレビの放送)、単方向送信のみ(例えば、特定のCANbusデバイスへのCANbus)、又は双方向とすることができる。特定のプロトコル及びプロトコルスタックを、上述したようなネットワーク及びネットワークインターフェースの各々で使用することができる。
【0080】
前述のヒューマンインターフェースデバイス、人間によりアクセス可能なストレージデバイス、及びネットワークインターフェースは、コンピュータシステム(400)のコア(440)に対して取り付けることができる。
【0081】
コア(440)は、1つ以上の中央処理装置(CPU)(441)、グラフィックス処理ユニット(GPU)(442)、フィールドプログラマブルゲートエリア(Field Programmable Gate Areas、FPGA)の形式の特化したプログラマブル処理ユニット(443)、特定のタスクのためのハードウェアアクセラレータ(444)、グラフィックスアダプタ(450)などを含むことができる。これらのデバイスは、読取専用メモリ(ROM)(445)、ランダムアクセスメモリ(446)、内部のユーザアクセス不可能なハードドライブ、SSDなどの内部大容量記憶装置(447)とともに、システムバス(448)を通じて接続される場合がある。いくつかのコンピュータシステムにおいて、システムバス(448)は、さらなるCPU、GPUなどによる拡張を可能にするために、1つ以上の物理プラグの形でアクセス可能とすることができる。周辺デバイスは、コアのシステムバス(448)に直接か、又は周辺バス(449)を通じてかのいずれかで取り付けることができる。一例において、スクリーン(410)は、グラフィックスアダプタ(450)に接続することができる。周辺バスのアーキテクチャには、PCI、USBなどが含まれる。
【0082】
CPU(441)、GPU(442)、FPGA(443)、及びアクセラレータ(444)は、組み合わせて前述のコンピュータコードを構成することができる特定の命令を実行することができる。そのコンピュータコードは、ROM(445)又はRAM(446)に記憶することができる。過渡的なデータも、RAM(446)に記憶することができ、一方で、永続的なデータは、例えば内部の大容量記憶装置(447)に記憶することができる。メモリデバイスのいずれかに対する高速の記憶及び取り出しは、1つ以上のCPU(441)、GPU(442)、大容量記憶装置(447)、ROM(445)、RAM(446)などに密接に関連づけることができるキャッシュメモリの使用を通じて可能にすることができる。
【0083】
コンピュータ読取可能媒体は、様々な、コンピュータにより実施される動作を実行するためのコンピュータコードを有することができる。媒体及びコンピュータコードは、本開示の目的のために特別に設計及び構築されたものとすることができ、あるいは、コンピュータソフトウェア分野における当業者に良く知られた、利用可能な種類のものとすることができる。
【0084】
制限ではなく一例として、アーキテクチャ(400)、具体的にはコア(440)を有するコンピュータシステムは、プロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)が1つ以上の有形のコンピュータ読取可能媒体に具現化されたソフトウェアを実行した結果として機能性を提供することができる。そのようなコンピュータ読取可能媒体は、上記で導入したようなユーザアクセス可能な大容量記憶装置、並びに、コア内部の大容量記憶装置(447)又はROM(445)などの、非一時的な性質のものであるコア(440)の特定の記憶装置に関連づけられた媒体とすることができる。本開示の様々な実施形態を実施するソフトウェアは、そのようなデバイスに記憶し、コア(440)により実行することができる。コンピュータ読取可能媒体は、特定のニーズに従って1つ以上のメモリデバイス又はチップを含むことができる。ソフトウェアは、コア(440)、具体的にはその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、ソフトウェアにより定義された処理に従ってRAM(446)に記憶されるデータ構造を定義すること及びそのようなデータ構造を修正することを含む、本明細書に記載される特定の処理又は特定の処理の特定の部分を実行させることができる。さらに又は代わりとして、コンピュータシステムは、回路(例えば、アクセラレータ(444))にハードワイヤードされ、又はその他の方法で具現化された論理の結果として機能性を提供することができ、これは、ソフトウェアの代わりに、又はソフトウェアと一緒に動作して、本明細書に記載される特定の処理又は特定の処理の特定の部分を実行することができる。適切な場合には、ソフトウェアへの参照は論理を包含することができ、逆もまた同様である。適切な場合には、コンピュータ読取可能媒体への参照は、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のための論理を具現化する回路、又は双方を包含することができる。本開示は、ハードウェアとソフトウェアの任意の適切な組み合わせを包含する。
【0085】
本開示は、いくつかの例示的な実施形態を説明したが、開示の範囲内に入る改変、置換、及び様々な代替同等物がある。したがって、当業者には、本明細書において明示的に図示又は説明されていないが開示の原理を具現化し、したがってその主旨及び範囲内にある多数のシステム及び方法を考案可能であることが理解されるであろう。
図1A
図1B
図1C
図2
図3
図4