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

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

▶ ドルビー ラボラトリーズ ライセンシング コーポレイションの特許一覧

特表2023-535994ビューポート変化に基づくデュアルストリーム動的GOPアクセス
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-08-22
(54)【発明の名称】ビューポート変化に基づくデュアルストリーム動的GOPアクセス
(51)【国際特許分類】
   H04N 19/114 20140101AFI20230815BHJP
   H04N 19/177 20140101ALI20230815BHJP
   H04N 19/164 20140101ALI20230815BHJP
   H04N 21/238 20110101ALI20230815BHJP
   H04N 21/2668 20110101ALI20230815BHJP
【FI】
H04N19/114
H04N19/177
H04N19/164
H04N21/238
H04N21/2668
【審査請求】有
【予備審査請求】有
(21)【出願番号】P 2023507401
(86)(22)【出願日】2021-08-03
(85)【翻訳文提出日】2023-03-31
(86)【国際出願番号】 US2021044379
(87)【国際公開番号】W WO2022031727
(87)【国際公開日】2022-02-10
(31)【優先権主張番号】20189126.4
(32)【優先日】2020-08-03
(33)【優先権主張国・地域又は機関】EP
(31)【優先権主張番号】63/060,269
(32)【優先日】2020-08-03
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.XBOX
2.AppleTV
(71)【出願人】
【識別番号】507236292
【氏名又は名称】ドルビー ラボラトリーズ ライセンシング コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】アトゥラルー,チャイタニヤ
(72)【発明者】
【氏名】ニナン,アジット
【テーマコード(参考)】
5C159
5C164
【Fターム(参考)】
5C159LA02
5C159NN41
5C159NN43
5C159PP03
5C159PP05
5C159PP13
5C159TA24
5C159TB03
5C159TC45
5C159TC48
5C159UA02
5C159UA05
5C164FA06
5C164MB41S
5C164SA26S
5C164SA32S
5C164SB21P
5C164SB29S
5C164SC05P
5C164UD44S
(57)【要約】
プライマリ及びセカンダリ画像により符号化された多視点画像ストリームがアクセスされる。各プライマリ画像ストリームは、グループオブピクチャ(GOP)を含む。各セカンダリ画像ストリームは、対応するプライマリ画像ストリームから生成されたIフレームを含む。リアルタイムに収集された視点データは、受信側復号装置から受信され、ビューアの視点が特定の時点から変化していることを示す。ビューアの変化した視点に基づき、カメラが選択される。特定の時点が選択されたカメラのプライマリ画像ストリームのGOPの中の非Iフレームに対応するかどうかが決定される。対応する場合、プライマリ画像ストリームに対応するセカンダリ画像ストリームからのIフレームが、受信側復号装置へ送信される。
【特許請求の範囲】
【請求項1】
ビデオストリームデータを提供する方法であって、
複数のプライマリ画像ストリームと複数のセカンダリ画像ストリームにより符号化された多視点画像ストリームにアクセスするステップであって、前記複数のプライマリ画像ストリームは、複数のカメラによりキャプチャされた画像データから生成された複数の単一視点画像シーケンスを含み、前記複数の単一視点画像シーケンスのうちの各単一視点画像シーケンスは、複数のグループオブピクチャ(GOP)を含み、前記複数のGOPの中のGOPは、Iフレームと非Iフレームを含み、前記複数のセカンダリ画像ストリームは、複数の再構成Iフレームシーケンスを含み、各Iフレームは前記プライマリ画像ストリームの同じGOPの中の全ての非Iフレームのうちの対応する非Iフレームから導出される、ステップと、
受信側復号装置から、ビューアが前記多視点画像ストリームの中の画像データのサブセットから導出されたビデオコンテンツを閲覧している間にリアルタイムで収集された前記ビューアの視点データを受信するステップであって、前記視点データは、前記ビューアの視点が特定の時点から変化していることを示す、ステップと、
前記ビューアの変化した視点に基づき、複数のカメラの中からカメラを選択するステップであって、前記選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、前記特定の時点の後に前記ビューアのビューポートでレンダリングされる、ステップと、
前記特定の時点が前記選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応するかどうかを決定するステップと、
前記特定の時点が前記選択されたカメラに関連する画像データから生成されたプライマリ画像ストリームのGOPの中の非Iフレームに対応すると決定することに応答して、前記受信側復号装置に、前記選択されたカメラに関連する前記プライマリ画像ストリームに対応するセカンダリ画像ストリームからのIフレームを送信するステップと、
を含む方法。
【請求項2】
前記特定の時点が前記選択されたカメラに関連する前記プライマリ画像ストリームの前記GOPの中のIフレームに対応すると決定することに応答して、前記受信側復号装置に、前記Iフレームを送信するステップ、を更に含む請求項1に記載の方法。
【請求項3】
前記受信側復号装置に、前記プライマリ画像ストリームの前記GOPの中の1つ以上の後続の非Iフレームを送信するステップ、を更に含む請求項1に記載の方法
【請求項4】
前記受信側復号装置に、前記セカンダリ画像ストリームからの前記Iフレームを送信した直後に、前記受信側復号装置に、前記セカンダリ画像ストリームからの第2Iフレームを送信するステップ、を更に含む請求項1又は3に記載の方法。
【請求項5】
前記選択されたカメラは、前記ビューアの視点に少なくとも部分的に基づき、前記複数のカメラの中から選択されたカメラのサブセットに属し、前記Iフレームは、前記カメラのサブセットに関連するIフレームのサブセットに属し、前記Iフレームのサブセットは、前記受信側復号装置に送信される、請求項1~4のいずれかに記載の方法。
【請求項6】
前記ビューアの視点は、前記ビューアの位置、前記ビューアの方向、又は前記ビューアの位置と方向の組み合わせ、のうちの1つを表す、請求項1~5のいずれかに記載の方法。
【請求項7】
前記多視点画像ストリームは、拡張現実アプリケーション、仮想現実アプリケーション、シネマビデオアプリケーション、家庭用ビデオアプリケーション、ビデオストリーミングアプリケーション、クラウドに基づくビデオアプリケーション、Wi-Fiに基づくビデオアプリケーション、セルラデータネットワークに基づくビデオアプリケーション、又は没入型ビデオアプリケーション、のうちの1つをサポートするために使用される、請求項1~6のいずれかに記載の方法。
【請求項8】
ビデオストリームデータをレンダリングする方法であって、
上流装置から、複数のプライマリ画像ストリームと複数のセカンダリ画像ストリームにより符号化された多視点画像ストリームの中の画像データのサブセットから導出されたビデオコンテンツを受信するステップであって、前記複数のプライマリ画像ストリームは、複数のカメラによりキャプチャされた画像データから生成された複数の単一視点画像シーケンスを含み、前記複数の単一視点画像シーケンスのうちの各単一視点画像シーケンスは、複数のグループオブピクチャ(GOP)を含み、前記複数のGOPの中のGOPは、Iフレームと非Iフレームを含み、前記複数のセカンダリ画像ストリームは、複数の再構成Iフレームシーケンスを含み、各Iフレームは、前記プライマリ画像ストリームの中の全ての非Iフレームのうちの対応する非Iフレームから導出される、ステップと、
前記上流装置に、ビューアが前記ビデオコンテンツを閲覧している間にリアルタイムで収集された前記ビューアの視点データを送信するステップであって、前記視点データは、前記ビューアの視点が特定の時点から開始して変化していることを示す、ステップと、
前記ビューアの変化した視点に基づき、複数のカメラの中からカメラが選択され、前記選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、前記特定の時点の後に前記ビューアのビューポートでレンダリングされることと、
前記特定の時点が前記選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応し、前記上流装置から、前記選択されたカメラに関連する前記プライマリ画像ストリームに対応するセカンダリ画像ストリームからのIフレームを受信するステップと、
前記特定の時点について前記ビューアの視点のIフレームから導出された表示画像を処理しレンダリングするステップと、
を含む方法。
【請求項9】
前記プライマリ画像ストリームの前記GOPの中の非Iフレームは続いて受信され、 第2表示画像が、前記Iフレームにより設定されたコーディングコンテキストに少なくとも部分的に基づき前記非Iフレームから導出される、請求項8に記載の方法。
【請求項10】
前記ビューアの視点はビューボリュームの範囲内で変化する、請求項8又は9に記載の方法。
【請求項11】
前記ビューアの視点は、前記ビューアの位置、前記ビューアの方向、又は前記ビューアの位置と方向の組み合わせ、のうちの1つを表す、請求項8~10のいずれかに記載の方法。
【請求項12】
プロセッサを含み、請求項1~11に記載の方法のうちのいずれか1つを実行するよう構成される機器。
【請求項13】
請求項1~11のいずれか一項に従い1つ以上のプロセッサにより方法を実行するためのコンピュータ実行可能命令を格納しているコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本願は、ともに2020年8月3日に出願した米国仮特許出願第63/060,269号及びEP特許出願第EP20189126.4の優先権を主張する。
[技術分野]
本発明は、概して、画像コーディング及びレンダリングに関し、特にビデオコーデックに関する。
【背景技術】
【0002】
Moving Picture Experts Group 1(MPEG-1) Video、MPEG-2 Video、MPEG-4 Visual、H.264/Advanced Video Coding (H.264/AVC)、High-Efficiency Video Coding (HEVC)、等のようなビデオコーディング規格は、比較的低いビットレートで比較的高画質のビデオを圧縮しストリーミングするために長年に渡り開発されている。
【発明の概要】
【0003】
本章に記載されるアプローチは、追求される可能性のあるアプローチであるが、必ずしも以前に考案された又は追求されアプローチであるとは限らない。従って、特に断りの無い限り、本章に記載されるアプローチのいずれも、それらが本章に含まれるというだけで従来技術と認められるものと考えられるべきではない。同様に、1つ以上のアプローチに関して特定される課題は、特に示されない限り、本章に基づき任意の従来技術の中で認識されたものと想定されるべきではない。
【図面の簡単な説明】
【0004】
本発明は、限定ではなく、添付の図面の図中の例を用いて説明され、図中の同様の参照符号は同様の要素を表す。
【0005】
図1A】例示的な多視点カメラシステムを示す。
図1B】例示的なデュアルビットストリーム構造を示す。
図1C】例示的なデュアルビットストリーム構造を示す。
【0006】
図2A】例示的なビューボリュームを示す。
図2B】ジャストインタイムインテリジェントレンダリングのための例示的なリアルタイム画像ストリーミングを示す。
【0007】
図3A】ジャストインタイムインテリジェントストリーミング及びレンダリングのための例示的なビデオ配信パイプライン及び例示的なコーデックを示す。
図3B】ジャストインタイムインテリジェントストリーミング及びレンダリングのための例示的なビデオ配信パイプライン及び例示的なコーデックを示す。
図3C】ジャストインタイムインテリジェントストリーミング及びレンダリングのための例示的なビデオ配信パイプライン及び例示的なコーデックを示す。
図3D】ジャストインタイムインテリジェントストリーミング及びレンダリングのための例示的なビデオ配信パイプライン及び例示的なコーデックを示す。
【0008】
図4A】例示的な処理フローを示す。
図4B】例示的な処理フローを示す。
【0009】
図5】本願明細書に記載されるコンピュータ又はコンピューティング装置が実装され得る例示的なハードウェアプラットフォームを示す。
【発明を実施するための形態】
【0010】
ここに記載される例示的な実施形態は、ビューポートの変化に基づくデュアルストリーム動的グループオブピクチャ(group of pictures (GOP))アクセスに関する。以下の詳細な説明を通じて、説明を目的として、本発明の完全な理解を提供するために、多数の特定の詳細が説明される。しかしながら、本発明がこれらの特定の詳細のうちの一部を有しないで実行されてよいことが明らかである。他の例では、よく知られた構造及び装置は、本発明を抑止し(occluding)、曖昧にし、又は不明瞭にすることを避けるために、徹底的に詳細に記載されない。
【0011】
例示的な実施形態は、以下の概要に従い説明される。
1.概略
2.多視点画像ストリームとカメラシステム
3.ビューボリュームとリアルタイムビデオストリーミング
4.例示的なビデオストリーミング装置
5.例示的な処理フロー
6.実装メカニズム-ハードウェア概要
7.均等物、拡張、代替、等
【0012】
1.概略
この概略は、本発明の例示的な実施形態の幾つかの態様の基本的説明を提示する。この概略は例示的な実施形態の広範囲の又は網羅的な要約ではないことに留意する。更に、この概略は、例示的な実施形態の任意の特定の重要な態様又は要素を識別するもの、又は特に例示的な実施形態若しくは概して本発明の任意の範囲を表すものとして理解されることを意図していないことに留意する。この概略は、例示的な実施形態に関連する幾つかの概念を要約及び簡略化された形式で提示しているだけであり、以下に続く例示的な実施形態のより詳細な説明の単なる概念的な序章として理解されるべきである。別個の実施形態が本願明細書に記載されたが、本願明細書で議論した実施形態及び/又は部分的実施形態の任意の組み合わせは、更なる実施形態を形成するために結合されてよい。
【0013】
AV、VR、又は立体(volumetric)ビデオストリーミングでは、異なるカメラ位置及び/又は異なるカメラ方向の複数のカメラからキャプチャされたビデオ画像は、ビューアのビューポート(viewport)でレンダリングされる所望の視点の画像を生成するために、ワープ(warp)することができる。ビデオストリーミングにおける帯域幅の使用を節約するために、複数のカメラのうちの比較的小さなサブセット(例えば、所望のビューポートに対して1つ以上の「N個の」最も近いカメラ、等)からキャプチャされた画像データのみが、ビューアのビューポートでレンダリングされるべき所望の視点のワープされた画像を生成するために送信される場合がある。ビューアの位置又は方向が変化すると、複数のカメラのうちの別の比較的小さなサブセットからキャプチャされた画像データが、ビューアの変化した位置又は方向に対応する異なる視点のワープされた画像を生成するために必要になる。
【0014】
ビデオストリーミングにおける帯域幅の使用を更に節約するために、複数のカメラのうちの各カメラにより生成された画像ストリームは、同じGOPの画像の範囲内の又はその中からイントラ又はインター予測コーディングを通じて、データ冗長性を除去し又は低減するGOP構造で符号化されることができる。画像ストリーム内の各GOPは、I、P、及びBフレームの特定の順序付き構成を含む。
【0015】
GOPは、物理的カメラ又はコンピューティング装置に実装された仮想的カメラによりキャプチャされたカメラ生成(例えば物理カメラが生成した、仮想カメラが生成した、等の)画像のような、連続するソース又は入力画像のグループから構成することができる。Pフレーム又はIフレームのようなGOP内の画像は、対応するソース又は入力画像内のデータ冗長性がインター又はイントラ予測動作により低減された又は除去された画像データを含む予測ユニットを含む場合がある。再構成画像のグループは、GOPから構成される又は再構成されることがある。再構成画像のグループの中の各再構成画像は、GOP内の各々のフレーム/画像に対応することができ、入力又はソース画像をGOPに圧縮するために使用されたインター又はイントラ予測動作の逆動作を実行することにより、構成又は再構成することができる。再構成画像のグループの中の各再構成画像は、GOPを生成するために使用された入力又はソース画像の中の対応する画像を表し又は(例えば、厳密に)近似する。
【0016】
AV、VR、又は立体ビデオアプリケーションのビューアは、頭又は体を動かして、時間と共に位置又は方向を変化させることがあり、ビューアのビューポートにおいて変化した位置又は方向に対応する画像がレンダリングされることを期待する。ビューアが位置及び方向を変化させることにより生じたビューポートの変化は、GOP境界と一致する場合も一致しない場合もある。
【0017】
ここで説明される技術を実施しない他のアプローチでは、切り換えアーチファクトが導入される。例えば、Iフレームからの画像データ、又は前の位置及び方向のカメラの画像ストリーム内のGOPの瞬間デコーダリフレッシュピクチャ(例えば、クリーンランダムアクセスピクチャ、ブロークンリンクアクセスピクチャ、等)が、ビューアの現在の変化した位置及び方向に基づき選択された異なるカメラの異なる画像ストリームの異なるGOPの中央にある非Iフレームで、予測コーディング動作を実行するために使用された場合、結果として生じる画像の画質は著しく低下する可能性がある。代替として、異なるカメラの画像ストリームへの切り換えを、異なるカメラの画像ストリーム内の次のGOP境界まで遅らせた場合、ビューアの位置又は方向が変化した第1時間と、ビューアの変化した位置又は方向に対応する画像がレンダリングされた後の第2時間との間のタイムラグが、ビューアに直ちに気付かれる可能性がある。
【0018】
これらの問題を克服する1つの方法には、全部の画像ストリームにIフレームのみを(例えば、常に、大部分の場合、等)使用することがある。これは、ビューアの位置又は方向に基づくカメラの切り換えを比較的容易にする可能性があるが、位置又は方向に固有の画像レンダリングをサポートするために、Iフレームのみの多数の画像ストリームが必要になる。このアプローチは、帯域幅使用に関して非常に高コストな動作になる。
【0019】
ここに記載される技術は、有意な帯域幅効率で、及び視覚的アーチファクトの無い若しくは殆ど無く、ビューポートの変化に応じて複数のカメラの複数の画像ストリームのうちのいずれかのグループオブピクチャ(GOP)への動的アクセスをサポートするために使用できる。
【0020】
これらの技術では、GOP構造を実装する各々のプライマリ画像ストリームは、異なるカメラ位置又は異なるカメラ方向を有する複数のカメラの中の各カメラについて生成できる。その結果、複数のカメラに対して複数のプライマリ画像ストリームが生成される。
【0021】
GOP構造を有する複数のプライマリ画像ストリームの各プライマリ画像ストリームについて、各々のセカンダリ画像ストリームが、Iフレームのみのストリームとして生成される。セカンダリ画像ストリーム内のIフレームは、カメラによりキャプチャされた元の(例えば、ソース、生、非圧縮、等の)画像フレームを用いて生成されず、プライマリ画像ストリームを生じるために使用されず、プライマリ画像ストリーム内の再構成I、P、及びBフレームから導出されたIフレームが使用される。幾つかの動作シナリオでは、(例えば、予測動作を適用する前の、等)元の又はソース画像は、セカンダリ画像ストリーム内のIフレームとして直接使用されない。再構成画像は、プライマリ画像ストリーム内の画像データを参照して累積又は付加的エラー損失の量を低減する目的で、セカンダリ画像ストリーム内のIフレームを生成するために使用される。更に、任意で又は代替として、幾つかの動作シナリオでは、予測動作を適用する前の元の又はソースフレームは、セカンダリ画像ストリームに含まれるべきIフレームを導出するために直接使用することができる。プライマリ画像ストリームから再構成されたのではなく、元の(例えば、ソース、生、等の)画像から再構成されたIフレームを含むセカンダリ画像ストリームは、デコーダ側で、何らかのアーチファクトの誘発された(又は可視アーチファクト)フレームを生じる場合がある。しかしながら、そのようなアーチファクトは、画像処理アルゴリズムを用いて少なくとも有意な程度にまで修正又は改善することができる。このアプローチは、遅延のために幾らかの品質低下を妥協し、回復画像処理アルゴリズムを伴い又は伴わず、幾らかの残存アーチファクトを有するストリーム間の高速切り換えを可能にできる。
【0022】
複数のカメラのうちの各カメラについて、カメラによりキャプチャされた画像データから生成されたGOP画像を含む対応するプライマリ画像ストリーム、及び対応するプライマリ画像ストリームのGOP画像から再構成されたIフレームを含む対応するセカンダリ画像ストリームにより、デュアルビットストリーム構造が形成される。複数のデュアルビットストリーム構造は、複数のカメラについて形成されることができ、ビデオストリーミングサーバがジャストインタイム画像データストリーミング動作を実行すること、及びビデオストリーミングクライアントがストリーミングされた画像データに基づきインテリジェントレンダリング動作を実行することをできるように又は可能にする。
【0023】
プライマリ及びセカンダリ画像ストリームを含むデュアルビットストリーム構造は、ビューアの視点の画像を異なる視点へと動的に切り換えるために使用できる。I、P、及び/又はBフレームを含むGOP内で切り換えが生じる場合でも、デュアルビットストリーム構造は、GOPのGOP構造(の完全性)を維持するために、及びGOP内の非Iフレームが適正なコーディングコンテキストで予測コーディング動作において解釈可能にするために、使用できる。
【0024】
異なるカメラの間の画像ストリームの切り換えがGOP内で生じる場合、ビデオデコーダのようなビデオストリーミングクライアントは、セカンダリ画像ストリームから再構成Iフレームを受信し、続いて、対応するプライマリ画像ストリーム内の後続の非Iフレームを受信する。ビデオデコーダは、セカンダリ画像ストリームから前に受信した再構成Iフレームを使用して、適正なコーディングコンテキストを設定し、プライマリ画像ストリームからの後続の非Iフレームに対して、予測コーディング動作のような画像処理動作を実行できる。
【0025】
より具体的には、新たに選択されたカメラのプライマリ画像ストリームのGOP内で生じたビューポート切り換えに応答して、ビデオストリーミングサーバのような上流装置は、(例えば、直ちに、次に、等)ビデオデコーダのようなビデオ受信側装置へ、プライマリ画像ストリームに対応するセカンダリ画像ストリームの再構成Iフレームを送信する。セカンダリ画像ストリームの再構成Iフレームは、ビューポート切り換え(の時間)におけるプライマリ画像ストリーム内の非Iフレームに対応し、その後に、ビデオストリーミングの中で、プライマリ画像ストリームのGOPの中の後続のP及び/又はBフレームが続く。
【0026】
受信側装置は、セカンダリ画像ストリームから再構成Iフレームを受信し、後続のフレームをコーディングするために再構成Iフレームに基づき対応するコーディングコンテキストを設定し、GOP内の後続のP及び/又はBフレームを受信し、再構成Iフレームにより設定されたコーディングコンテキストを使用して、GOP内の後続のP及び/又はBフレームを復号し、及びビューアに対してレンダリングするたえmに画像を生成又は再構成する。
【0027】
ここで説明されるようにプライマリ画像ストリームが符号化されるとき、プライマリ画像ストリーム内のGOPの非Iフレーム内の残差データは、(例えば、直前の、GOP内の、等)先行するフレームの状態(例えば、SNR、PSNR、ノイズ、量子化/コーディングエラー、算術符号化状態、等)に少なくとも部分的に基づき生成できる。セカンダリ画像ストリーム内の各再構成Iフレームは対応する非Iフレーム、及びプライマリ画像ストリームの同じGOP内の先行するIフレーム及び非Iフレームから再構成されるので、対応する非Iフレーム及び先行するフレームの状態(例えば、SNR、PSNR、ノイズ、量子化/コーディングエラー、算術符号化状態、等)は、(例えば、正しく)累積され及び再構成Iフレームに伝播される。その結果、再構成Iフレームは、ビデオデコーダがコーディングコンテキスト(又は状態)を設定して、プライマリ画像ストリーム内の後続の非Iフレームを復号するために使用できる。その結果、再構成Iフレーム及び後続の非Iフレームからビデオデコーダにより生成された又は導出された画像は、一貫した相関レベルの画像品質を有する。
【0028】
比較すると、カメラによりキャプチャされた画像データから直接構成されたIフレームは、再構成Iフレームが導出されたGOPと同じ先行するパスを通過した再構成Iフレームと異なるレベルの画質である場合がある。従って、カメラによりキャプチャされた画像データから直接構成されたIフレームがビデオデコーダに送信された場合でも、ビデオデコーダは、GOP内の後続の非Iフレームから画像を再構成する際に、適正なコーディングコンテキストを取得できない場合がある。その結果、視覚アーチファクト及び一貫しない画像品質レベルが、ビューアにより視覚的に知覚可能になり得る。
【0029】
本願明細書に記載される例示的な実施形態は、ビデオストリームデータの提供に関連する。複数のプライマリ画像ストリーム及び複数のセカンダリ画像ストリームにより符号化され多視点画像ストリームがアクセスされる。複数のプライマリ画像ストリームの中の各プライマリ画像ストリームは、グループオブピクチャ(GOP)を含む。複数のセカンダリ画像ストリームの中の各セカンダリ画像ストリームは、複数のプライマリ画像ストリームの中の対応するプライマリ画像ストリームから生成された再構成Iフレームを含む。ビューアが多視点画像ストリーム内の画像データのサブセットから導出されたビデオコンテンツを閲覧している間に、リアルタイムで収集されたビューアの視点データが、受信側復号装置から受信される。視点データは、特定の時点から開始して、ビューアの視点が変化したことを示す。ビューアの変化した視点に基づき、複数のカメラの中から、カメラが選択される。選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、特定の時点の後にビューアのビューポートでレンダリングされる。特定の時点が、選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応するかどうかが決定される。特定の時点が、選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応すると決定することに応答して、選択されたカメラに関連するプライマリ画像ストリームに対応するセカンダリ画像ストリームからの再構成Iフレームが、受信側復号装置へ送信される。
【0030】
本願明細書に記載される例示的な実施形態は、ビデオストリームデータのレンダリングに関連する。複数のプライマリ画像ストリーム及び複数のセカンダリ画像ストリームにより符号化された多視点画像ストリームの中の画像データのサブセットから導出されたビデオコンテンツは、上流装置から受信される。複数のプライマリ画像ストリームの中の各プライマリ画像ストリームは、グループオブピクチャ(GOP)を含む。複数のセカンダリ画像ストリームの中の各セカンダリ画像ストリームは、複数のプライマリ画像ストリームの中の対応するプライマリ画像ストリームから生成された再構成Iフレームを含む。ビューアがビデオコンテンツを閲覧している間にリアルタイムで収集されたビューアの視点データは、上流装置へ送信される。視点データは、特定の時点から開始して、ビューアの視点が変化したことを示す。ビューアの変化した視点に基づき、複数のカメラの中から、カメラが選択される。選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、特定の時点の後にビューアのビューポートでレンダリングされる。特定の時点は、選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応する。選択されたカメラに関連するプライマリ画像ストリームに対応するセカンダリ画像ストリームからの再構成Iフレームは、上流装置から受信される。再構成Iフレームは、特定の時点についてビューアの視点で処理されレンダリングされる。
【0031】
幾つかの例示的な実施形態では、ここで説明されるメカニズムは、クラウドに基づくサーバ、モバイル装置、仮想現実システム、拡張現実システム、頭部搭載ディスプレイ装置、ヘルメット搭載ディスプレイ装置、CAVE型システム、壁サイズのディスプレイ、ビデオゲーム装置、ディスプレイ装置、メディアプレイヤ、メディアサーバ、メディア制作システム、カメラシステム、家庭用システム、通信装置、ビデオ処理システム、ビデオコーデックシステム、スタジオシステム、ストリーミングサーバ、クラウドに基づくコンテンツサービスシステム、ハンドヘルド装置、ゲーム機械、テレビ、映画ディスプレイ、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、セルラ無線電話、デスクトップコンピュータ、コンピュータワークステーション、コンピュータサーバ、コンピュータキオスク、又は種8寿の他の種類の端末及びメディア処理ユニットを含むがこれらに限定されないメディア処理システムの部分を形成する。
【0032】
ここで説明される好適な実施形態及び一般的原理及び特徴に対する種々の変更が当業者に直ちに明らかになる。したがって、請求の範囲は、本願明細書で示された実装を限定することを意図せず、ここで説明された原理及び特徴と整合する最も広い範囲と考えられる。
【0033】
2.多視点画像ストリームとカメラシステム
ここに記載される多視点画像ストリームは、多視点画像のシーケンスを含む。多視点画像ストリームの多視点画像のシーケンスの中の多視点画像から導出された画像データは、ビデオアプリケーションにおける時間間隔/期間に渡り時点のシーケンスの中のある時点で、ビューアにレンダリングされる。例示的なビデオアプリケーションは、ARアプリケーション、VRアプリケーション、立体ビデオアプリケーション、没入型ビデオアプリケーション、360度ビデオアプリケーション、等のうちのいずれかを含むが、必ずしもこれらのみに限定されない。
【0034】
多視点画像ストリームは、多視点ビデオエンコーダのような上流装置により、複数の異なるカメラ位置及び/又はカメラ方向の複数のカメラの複数の(例えば、元の、ソース、非圧縮、生、等)個々の単一視点の画像ストリームから生成することができる。
【0035】
図1Aは、複数の異なるカメラ位置及び/又は複数のカメラ方向から個々の単一視点の画像ストリームをキャプチャする複数のカメラを含む例示的な多視点カメラシステムを示す。例として、限定ではないが、複数のカメラは、空間ボリューム内の3次元(3D)グリッドの複数の頂点(又はグリッド点)に位置してよい。
【0036】
複数のカメラの中のカメラ1は、複数の異なるカメラ位置及び/又は複数の異なるカメラ方向のうちの、3Dグリッドの中心点(又はグリッド点)のような第1カメラ位置及び/又は第1カメラ方向に対応する、第1カメラ位置又は第1カメラ方向に位置してよい。カメラ1によりキャプチャされた又は取得された個々の単一視点画像の第1シーケンスは、第1単一視点画像ストリームを生成するために使用できる。同様に、複数のカメラの中のカメラ2は、複数の異なるカメラ位置及び/又は複数の異なるカメラ方向のうちの、3Dグリッドの左上頂点(又はグリッド点)のような異なる第2カメラ位置及び/又は異なる第2カメラ方向に対応する、異なる第2カメラ位置又は異なる第2カメラ方向に位置してよい。カメラ2によりキャプチャされた又は取得された個々の単一視点画像の第2シーケンスは、第2単一視点画像ストリームを生成するために使用できる。
【0037】
時点のシーケンスの中のある時点に対応する(例えば、その時点でビューアにレンダリングされる)多視点画像ストリーム内の多視点画像は、複数のカメラにより取得された対応する複数の個々の単一視点画像から生成され又は導出できる。対応する複数の個々の単一視点画像の中の各々の個々の単一視点画像は、複数のカメラの中の各々のカメラにより導出できる。例えば、対応する複数の個々の単一視点画像は、第1カメラにより生成された第1単一視点画像ストリームの個々の単一視点画像の第1シーケンスの中の第1個々の単一視点画像、第2カメラにより生成された第2単一視点画像ストリームの個々の単一視点画像の第2シーケンスの中の第2個々の単一視点画像、等を含んでよい。
【0038】
図1Bは、(例えば図1Aに示されるような)カメラ1とカメラ2の例示的なデュアルビットストリーム構造を示す。図1Bに示されるようなデュアルビットストリーム構造は、多視点ビデオストリームを生成するために使用される多視点カメラシステム(例えば、図1Aの100、等)の複数のカメラの中の各カメラにより生成された画像データで実装されてよい。
【0039】
カメラ1により生成された画像データの第1デュアルビットストリーム構造は、第1GOP構造を実装する第1プライマリ画像ストリーム(「GOP」と示される)と、第1プライマリ画像ストリームから導出された再構成Iフレームを含むセカンダリ画像ストリーム(「Iフレーム」と示される)を含む。
【0040】
第1カメラにより生成された第1プライマリ画像ストリームの第1GOPは、2つのGOPに連続してパーティションされる第1画像シーケンスを含む。第1画像シーケンスは、T(単位時間)の時間間隔/期間に渡り、t=0で開始しt=Tで終了する時点のシーケンスに対応し、又はそれによりインデックスを付される。カメラ1により生成された第1プライマリ画像ストリームの第1GOP構造の中の2つのGOPの各々は、Iフレーム(「I」と示される)で始まり、次に9個のPフレーム(各々「P1」、「P2」、...、「P9」)が続く、画像のサブシーケンスを含む。
【0041】
カメラ1に関連するセカンダリ画像ストリームは、再構成Iフレームの第1シーケンスを含み、各々が第1プライマリ画像ストリーム内のすべての非Iフレームの対応する非Iフレームから導出される。図1Bに示すように、カメラ1に関連するセカンダリ画像ストリームは、再構成Iフレームの2つのサブシーケンスを含む。カメラ1に関連するセカンダリ画像ストリーム内の再構成Iフレームの2つのサブシーケンスは、カメラ1で生成された第1プライマリ画像ストリーム内の2つのGOPに各々対応する。
【0042】
カメラ1に関連する再構成Iフレームの2つのサブシーケンスの中の再構成Iフレームの各々のサブシーケンスは、カメラ1により生成された第1プライマリ画像ストリーム内のGOPのうちの各々のGOPに対応する。このような再構成Iフレームの各サブシーケンスは、各々のGOP内の非Iフレーム(「P1」、「P2」、...、「P9」)から生成された再構成Iフレーム(各々「I’1」、「I’2」、...、「I’9」と表記される)を含む。
【0043】
こで使用されるように、Iフレームは、完全な画像/ピクチャを格納するか、又は完全な画像/ピクチャを導出するために使用される完全な画像データを格納する画像フレームである。Pフレームは、1つ以上の以前の完全な画像/ピクチャからの変更のみを含む変更画像/ピクチャを格納する画像フレームである。Bフレームは、以前及び後続の両方の完全な画像/ピクチャからの変更のみを含む変更画像/ピクチャを格納する画像フレームである。GOP、Iフレーム、Pフレーム、Bフレームなどに関する説明例は、ISO/IEC13818-2:2013「Information Technology-Generic Coding of Moving Pictures and Associated audio information-Part2:Video」(2013年10月)にあり、その全体が参照によりここに組み込まれている。
【0044】
例えば、カメラ1で生成された第1プライマリ画像ストリームの各々のGOPでIと示されるIフレームは、先行又は後続の画像/ピクチャを参照することなく、完全な画像/ピクチャを含む又は生成することができる。Iフレーム、又はIフレームに対応する若しくは格納された完全な画像/ピクチャは、Iフレームが第1プライマリ画像ストリームから復号された後に、後続の画像/ピクチャを復号するためのコーディングコンテキストの部分として、参照ピクチャバッファにバッファリングされてよい。
【0045】
カメラ1で生成された第1プライマリ画像ストリームの各々のGOPのIフレームIとPフレームP1を使用して、再構成IフレームI’1を生成することができる。具体的には、PフレームP1は、IフレームIに対応する又はIフレームIに格納されている完全な画像/ピクチャからの変更のみを格納する。PフレームP1に格納されている変更が、カメラ1で生成された第1プライマリ画像ストリームから復号された後、これらの変更をIフレームIに対応する又はIフレームIに格納されている完全な画像/ピクチャに追加(又は変更の符号に応じて減算)して、PフレームP1に対応する(ただし変更のみがPフレームP1に格納される)完全な画像/ピクチャを含む再構成IフレームI’1を生成又は構成することができる。再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャは、PフレームP1が第1プライマリ画像ストリームから復号された後、再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャが生成又は構成された後に、後続の画像/ピクチャを復号するための更新されたコーディングコンテキストの一部として、参照ピクチャバッファにバッファリングされる場合がある。
【0046】
カメラ1で生成された第1プライマリ画像ストリームの各々のGOPのI、P1、及びP2(又はI’1及びP2)を使用して、第2再構成IフレームI’2を生成することができる。具体的には、PフレームP2は、IフレームI及びPフレームP1のいずれか又は両方に対応する完全な画像/ピクチャからの変更のみを格納する。説明のみを目的として、PフレームP2は、再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャからの変更のみを格納する。PフレームP2に格納されている変更が、カメラ1で生成された第1プライマリ画像ストリームから復号された後、これらの変更を再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャに追加(又は変更の符号に応じて減算)して、PフレームP2に対応する(ただし変更のみがPフレームP2に格納される)完全な画像/ピクチャを含む第2再構成IフレームI’2を生成又は構成することができる。第2再構成IフレームI’2、又はPフレームP2に対応する完全な画像/ピクチャは、PフレームP2が第1プライマリ画像ストリームから復号された後、第2再構成IフレームI’2、又はPフレームP2に対応する完全な画像/ピクチャが生成又は構成された後に、後続の画像/ピクチャを復号するための更に更新されたコーディングコンテキストの一部として、参照ピクチャバッファにバッファリングされる場合がある。
【0047】
カメラ1で生成された第1プライマリ画像ストリームの各々のGOP内のI及びP1からPi(又はI’(i-1)及びPi)、iは任意のゼロではない正の整数である、を使用して、上記と同様の方法で再構成IフレームI’iを生成できる。
【0048】
同様に、カメラ2により生成された画像データの第2デュアルビットストリーム構造は、第2GOP構造を実装する第2プライマリ画像ストリーム(「GOP」と示される)と、第2プライマリ画像ストリームから導出された再構成Iフレームを含むセカンダリ画像ストリーム(「Iフレーム」と示される)を含む。
【0049】
第2カメラにより生成された第2プライマリ画像ストリームの第2GOPは、2つのGOPに連続してパーティションされる第2画像シーケンスを含む。第2画像シーケンスは、T(単位時間)の時間間隔/期間に渡り、t=0で開始しt=Tで終了する時点のシーケンスに対応し、又はそれによりインデックスを付される。カメラ2により生成された第2プライマリ画像ストリームの第2GOP構造の中の2つのGOPの各々は、Iフレーム(「I」と示される)で始まり、次に9個のPフレーム(各々「P1」、「P2」、...、「P9」)が続く、画像のサブシーケンスを含む。
【0050】
カメラ2に関連するセカンダリ画像ストリームは、再構成Iフレームの第2シーケンスを含み、各々が第2プライマリ画像ストリーム内のすべての非Iフレームの対応する非Iフレームから導出される。図1Bに示すように、カメラ2に関連するセカンダリ画像ストリームは、再構成Iフレームの2つのサブシーケンスを含む。カメラ2に関連するセカンダリ画像ストリーム内の再構成Iフレームの2つのサブシーケンスは、カメラ2で生成された第2プライマリ画像ストリーム内の2つのGOPに各々対応する。
【0051】
カメラ2に関連する再構成Iフレームの2つのサブシーケンスの中の再構成Iフレームの各々のサブシーケンスは、カメラ2により生成された第2プライマリ画像ストリーム内のGOPのうちの各々のGOPに対応する。このような再構成Iフレームの各サブシーケンスは、各々のGOP内の非Iフレーム(「P1」、「P2」、...、「P9」)から生成された再構成Iフレーム(各々「I’1」、「I’2」、...、「I’9」と表記される)を含む。
【0052】
例えば、カメラ2で生成された第2プライマリ画像ストリームの各々のGOP内のI及びP1を使用して、上記と同様の方法で再構成IフレームI’1を生成できる。
【0053】
カメラ2で生成された第2プライマリ画像ストリームの各々のGOPのI、P1、及びP2(又はI’1及びP2)を使用して、上述と同様の方法で、再構成IフレームI’1を生成することができる。
【0054】
カメラ2で生成された第2プライマリ画像ストリームの各々のGOP内のI及びP1からPi(又はI’(i-1)及びPi)、iは任意のゼロではない正の整数である、を使用して、上記と同様の方法で再構成IフレームI’iを生成できる。
【0055】
なお、再構成Iフレームは、Bフレームを含むGOPで生成又は構成される場合がある。図1Cは、多視点ビデオストリームを生成するために使用される多視点カメラシステム(例えば、図1Aの100、等)の複数のカメラの中の、ここで説明されるカメラの例示的なデュアルビットストリーム構造を示す。
【0056】
カメラにより生成された画像データのデュアルビットストリーム構造は、GOP構造を実装するプライマリ画像ストリーム(「GOP」と示される)と、プライマリ画像ストリームから導出された再構成Iフレームを含むセカンダリ画像ストリーム(「Iフレーム」と示される)を含む。
【0057】
カメラにより生成されたプライマリ画像ストリームのGOPは、2つのGOPに連続してパーティションされる画像シーケンスを含む。画像シーケンスは、T(単位時間)の時間間隔/期間に渡り、t=0で開始しt=Tで終了する時点のシーケンスに対応し、又はそれによりインデックスを付される。カメラにより生成された第1プライマリ画像ストリームのGOP構造の中の第1GOPは、Iフレーム(「I」と示される)で始まり、次にPフレームとBフレームの混合(各々「P1」、「B1」、「P2」、「B2」、...、「P7」)が続く、画像の第1サブシーケンスを含む。カメラにより生成されたプライマリ画像ストリームのGOP構造の中の第2GOPは、Iフレーム(「I」と示される)で始まり、次にPフレームとBフレーム(各々「P2」、「B2」、...、「P9」)が続く、画像の第2サブシーケンスを含む。
【0058】
カメラに関連するセカンダリ画像ストリームは、再構成Iフレームのシーケンスを含み、各々がプライマリ画像ストリーム内のすべての非Iフレームのうちの対応する非Iフレームから導出される。図1Cに示すように、カメラに関連するセカンダリ画像ストリームは、再構成Iフレームの2つのサブシーケンスを含む。カメラに関連するセカンダリ画像ストリーム内の再構成Iフレームの2つのサブシーケンスは、カメラで生成されたプライマリ画像ストリーム内の2つのGOPに各々対応する。
【0059】
カメラに関連する再構成Iフレームの2つのサブシーケンスの中の再構成Iフレームの各々のサブシーケンスは、カメラにより生成されたプライマリ画像ストリーム内のGOPのうちの各々のGOPに対応する。例えば、再構成Iフレームの第1サブシーケンスは、第1GOP内の非Iフレーム(「P1」、「B1」、「P2」、「B2」、...、「P7」)から生成された再構成Iフレーム(各々「I’1」、「I’2」、...、「I’9」と表記される)を含む。
【0060】
例えば、カメラで生成されたプライマリ画像ストリームの第1GOPでIと示されるIフレームは、先行又は後続の画像/ピクチャを参照することなく、完全な画像/ピクチャを含む又は生成することができる。Iフレーム、又はIフレームに対応する若しくは格納された完全な画像/ピクチャは、Iフレームがプライマリ画像ストリームから復号された後に、後続の画像/ピクチャを復号するためのコーディングコンテキストの部分として、参照ピクチャバッファにバッファリングされてよい。
【0061】
カメラ1で生成されたプライマリ画像ストリームの第1GOPのIフレームIとPフレームP1を使用して、再構成IフレームI’1を生成することができる。具体的には、PフレームP1は、IフレームIに対応する又はIフレームIに格納されている完全な画像/ピクチャからの変更のみを格納する。PフレームP1に格納されている変更が、カメラ1で生成されたプライマリ画像ストリームから復号された後、これらの変更をIフレームIに対応する又はIフレームIに格納されている完全な画像/ピクチャに追加(又は変更の符号に応じて減算)して、PフレームP1に対応する(ただし変更のみがPフレームP1に格納される)完全な画像/ピクチャを含む再構成IフレームI’1を生成又は構成することができる。再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャは、PフレームP1がプライマリ画像ストリームから復号された後、再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャが生成又は構成された後に、後続の画像/ピクチャを復号するための更新されたコーディングコンテキストの一部として、参照ピクチャバッファにバッファリングされる場合がある。
【0062】
BフレームB1がPフレームP1とPフレームP2の両方に依存又は参照していると仮定する。具体的には、BフレームB1は、PフレームP1及びPフレームP2の両方に対応する完全な画像/ピクチャからの変更のみを含む。例えば、BフレームB1の一部の画像ブロックにはPフレームP1からの変更のみが含まれ、BフレームB1の他の一部の画像ブロックにはPフレームP2からの変更のみが含まれる場合がある。BフレームB1に対応する再構成IフレームI’2を生成又は構成する場合、BフレームB1に対応する再構成IフレームI’2を生成構成する前に、PフレームP2に対応する再構成IフレームI’3を生成してもよい。
【0063】
カメラで生成されたプライマリ画像ストリームの第1GOPのI、P1、及びP2(又はI’1及びP2)を使用して、再構成IフレームI’3を生成することができる。具体的には、PフレームP2は、IフレームI及びPフレームP1のいずれか又は両方に対応する完全な画像/ピクチャからの変更のみを格納する。説明のみを目的として、PフレームP2は、再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャからの変更のみを格納する。PフレームP2に格納されている変更が、カメラで生成されたプライマリ画像ストリームから復号された後、これらの変更を再構成IフレームI’1、又はPフレームP1に対応する完全な画像/ピクチャに追加(又は変更の符号に応じて減算)して、PフレームP2に対応する(ただし変更のみがPフレームP2に格納される)完全な画像/ピクチャを含む再構成IフレームI’3を生成又は構成することができる。再構成IフレームI’3、又はPフレームP2に対応する完全な画像/ピクチャは、PフレームP2がプライマリ画像ストリームから復号された後、再構成IフレームI’3、又はPフレームP2に対応する完全な画像/ピクチャが生成又は構成された後に、後続の画像/ピクチャを復号するための更に更新されたコーディングコンテキストの一部として、参照ピクチャバッファにバッファリングされる場合がある。
【0064】
カメラで生成されたプライマリ画像ストリームの第1GOPのI、P1、P2、P3(又はI、I’1、I’3、B1)を使用して、再構成IフレームI’2を生成することができる。BフレームB1に格納された変更が、カメラで生成されたプライマリ画像ストリームから復号された後、幾つかの画像ブロックのこれらの変更の幾つかは、再構成IフレームI’1の対応する画像ブロックの画像データ又はPフレームP1に対応する完全な画像/ピクチャに追加する(又は変更の符号に応じて減算する)ことができ、一方、幾つかの他の画像ブロックのこれらの変更の幾つかの他のものは、再構成IフレームI’3の対応する画像ブロックの画像データ、又はPフレームP2に対応する完全な画像/ピクチャに追加する(又は変更の符号に応じて減算する)ことができる。BフレームB1の変更が、PフレームP1及びP2に各々対応する再構成IフレームI’1及びI’3の対応する画像データと組み合わされることで、BフレームB1に対応する(ただし、BフレームB1に格納された変更のみ)完全な画像/ピクチャを含む再構成IフレームI’2を生成又は構成できる。再構成IフレームI’2、又はBフレームB1に対応する完全な画像/ピクチャは、BフレームB1がプライマリ画像ストリームから復号された後、再構成IフレームI’2、又はBフレームB1に対応する完全な画像/ピクチャが生成又は構成された後に、後続の画像/ピクチャを復号するための更に更新されたコーディングコンテキストの一部として、参照ピクチャバッファにバッファリングされる場合がある。同様に、カメラで生成されたプライマリ画像ストリームの第1GOP内の第1GOPに対して、他の再構成Iフレームを構成することもできる。
【0065】
3.ビューボリュームとリアルタイムビデオストリーミング
AR、VR、又は立体ビデオアプリケーションでは、ビューアのビューポートにレンダリングされた表示画像が、ビューアの頭(又は体)の動きに応じて更新され、没入感のある快適な視聴体験を提供する。ビューアは、1次元の線/曲線に沿って、2次元(2D)のビュー領域で、3Dのビューボリュームで、又は特定の場所で、頭(又は体)を自由に動かすことができ、ビデオアプリケーションによってレンダリングされた位置固有又は方向固有の(例えば、2D、3Dなど)画像をビューアのビューポートで表示し、位置固有又は方向固有の画像に描写された視覚オブジェクトへの正しい方向を取得することができる。ここで使用されるように、ビューポートは、ARメガネ上の指定された表示領域、ウェアラブルVRディスプレイ、ビューアのビデオストリーミングクライアント装置と連携して動作する画像ディスプレイなどのいずれかを指す場合がある。
【0066】
図2Aは、AR、VR、又は立体ビデオアプリケーションのビューアが自由に動き回り、ビデオアプリケーションによってレンダリングされた位置固有又は方向固有の画像を見ることができるボリューム200の表示例を示している。
【0067】
示されているように、時間間隔/期間(例えば、図1Bのt=0とt=Tの間など)の第1時点におけるビューアの位置又は方向は、図2の視点1によって表される。時間間隔/期間の第2時点(例えば、第1時点の直後など)におけるビューアの位置又は方向は、図2の視点2によって表される。
【0068】
第1多視点画像内の-多視点画像ストリーム内の-第1時点に対応する1つ以上の第1単一視点画像を使用して、第1時点の第1位置固有又は方向固有の画像にワープ、補間、ブレンド、及び/又は生成することができる。第2多視点画像内の-同じ多視点画像ストリーム内の-第2時点に対応する1つ以上の第2単一視点画像を使用して、第2時点の第2位置固有又は方向固有の画像にワープ、補間、ブレンド、及び/又は生成することができる。これらの位置固有又は方向固有の画像は、各々第1及び第2時点で、ビューアのビューポートでビューアにレンダリングできる。
【0069】
多視点画像ストリームは、複数のデュアルビットストリーム構造で表される多視点画像のシーケンスを含む。複数のデュアルビットストリーム構造の各デュアルビットストリーム構造は、ビットレート効率のためにGOP構造(例えば、複数のGOP各々のIフレーム、Pフレーム、及び/又はBフレームなど)で実装されたプライマリ画像ストリームと、プライマリ画像ストリームから生成された再構成Iフレームを含むセカンダリ画像ストリームを含む。多視点画像ストリームの複数のデュアルビットストリーム構造の各デュアルビットストリーム構造は、多視点カメラシステムの複数のカメラでキャプチャされた複数の個別の単一視点画像ストリーム内の各々の個別の単一視点画像ストリーム(例えば、ソース、入力、非常に詳細な、非圧縮及び/又は生の画像など)から直接又は間接的に導出される。
【0070】
複数のカメラのうちの1つ以上の第1カメラ(例えば、ビューアの位置又は向きに最も近いカメラ、空間領域のセンタカメラ、ビューアのビューポートの周囲にある4つの最も近いカメラのセットなど)の1つ以上の第1個別の単一視点画像ストリームから直接又は間接的に導出した1つ以上のデュアルビットストリーム構造の第1サブセットは、第1時点でビューアのビューポートにレンダリングされる第1位置固有又は方向固有の画像にワープ、補間、ブレンド、及び/又は生成するために使用するように選択できる。1つ以上の第1カメラにはカメラ1が含まれる場合があるが、カメラ2は含まれない。画像ワープ、画像ブレンドなどの画像処理操作を使用して、カメラ1などの1つ以上の第2カメラに関連する1つ以上のデュアルビットストリーム構造の第1サブセットの画像データから、第1位置固有又は方向固有の画像データを生成できる。
【0071】
複数のカメラのうちの1つ以上の第2カメラ(例えば、ビューアの位置又は向きに最も近いカメラ、空間領域のセンタカメラ、ビューアのビューポートの周囲にある4つの最も近いカメラのセットなど)の1つ以上の第2個別の単一視点画像ストリームから直接又は間接的に導出した1つ以上のデュアルビットストリーム構造の異なる第2サブセットは、第2時点でビューアのビューポートにレンダリングされる第2位置固有又は方向固有の画像にワープ、補間、ブレンド、及び/又は生成するために使用するように選択できる。1つ以上の第2カメラにはカメラ2が含まれる場合があるが、カメラ1は含まれない。画像ワープ、画像ブレンドなどの画像処理操作を使用して、カメラ2などの1つ以上の第2カメラに関連する1つ以上のデュアルビットストリーム構造の第2サブセットの画像データから、第2位置固有又は方向固有の画像データを生成できる。
【0072】
図2Bは、ジャストインタイムインテリジェントレンダリングのための例示的(なリアルタイム画像ストリーミングを示す。説明のみを目的として、第1時点(「t1」と表される)より前の且つそれまでの1つ以上の時点について、ビューアの位置又は方向は、図2Aの視点1によって表される。カメラ1から直接又は間接的に導出された画像データを使用して、第1時点(「t1」)より前の且つそれまでのこれらの時点で、ビューアのビューポートにレンダリングされる1つ以上の第1画像を生成又は構成することができる。より具体的には、カメラ1に関連して、多視点カメラシステムの複数のカメラに関連する複数の単一視点画像ストリームを含む多視点画像ストリーム内の、第1単一視点画像ストリームの第1デュアルビットストリーム構造の第1プライマリ画像ストリームのGOP内の1つ以上のI及びPフレーム(例えば、I、P1、P2、P3、P4及び/又はP5など)を使用して、第1時点(「t1」)より前のこれらの時点で、ビューアのビューポートにレンダリングされる1つ以上の第1画像を生成する。
【0073】
第1時点(「t1」)の直後にある可能性のある異なる第2時点(「t2」と表記される)から開始して、ビューアの位置又は向きは、ビューアの頭又は体の動きによって変化し、現在は図2Aの視点2によって表される。カメラ2から直接又は間接的に導出された画像データを使用して、ビューアのさらなる頭又は体の動きによってビューアの位置又は向きがさらに変化するまで、第2時点(「t2」)から開始する時点で、ビューアのビューポートにレンダリングされる1つ以上の第2画像を生成又は構成することができる。
【0074】
この例では、視点1から視点2へのビューアの位置又は向きの変更は、カメラ2に関連して、多視点画像ストリーム内の第2単一視点画像ストリームの第2デュアルビットストリーム構造の第2プライマリ画像ストリームのGOPの途中で発生する。
【0075】
カメラ2に関連して、第2単一視点画像ストリームの第2デュアルビットストリーム構造の第2プライマリ画像ストリームのGOPからの非Iフレームが、ビューアのビデオストリーミングクライアント装置にストリーミングされる場合、カメラ2に関連している非Iフレーム内の画像データは、カメラ1に関連して以前に受信又は構成された画像/フレーム(例えば、I、P1、P2、P3、P4、P5フレームなど)に基づいて誤って解釈される可能性がある。その結果、第2時点(「t2」)から、ビューアのビューポートにレンダリングされる1つ以上の第2画像に視覚的なアーチファクトが生成される可能性がある。
【0076】
代替として、視点1から視点2へのビューアの位置又は向きの変更は、カメラ2に接続する第2単一視点画像ストリームの第2デュアルビットストリーム構造の第2プライマリ画像ストリームのGOPの途中で発生するが、カメラ1から直接又は間接的に導出した画像データから構成された画像は、カメラ2に関連する第2単一視点画像ストリームの第2デュアルビットストリーム構造の第2プライマリ画像ストリームのGOPが終了するまでストリーミングを継続できる。ただし、カメラ2に関連する第2単一視点画像ストリームの第2デュアルビットストリーム構造の第2プライマリ画像ストリームのGOPが、ビューアが認識できるタイムラグの閾値よりも相対的に長い期間をカバーしている場合、ビューアが認識できるタイムラグがビューアによって認識され、ビューアが見たいと思っているものとビューアが実際に見ているものとの間にビューアが認識できる不一致が発生する。これは、特に動的に変化するシーンや感情的に魅力的なシーンを描写するレンダリングされた画像を閲覧する際に、このようなタイムラグが発生する場合、AR、VR、又は立体ビデオアプリケーションでのビューアの体験に大きな悪影響を及ぼす可能性がある。
【0077】
次のGOP境界(例えば、GOPが終了し、次のGOPが開始する場所など)まで遅延したり、誤って解釈される可能性のある画像/フレームを送信したりするのではなく、ここで説明する技術では、ビューアの位置又は方向の変化が、ビューアの現在の変化した位置又は現在の変化した方向に基づき(例えば、最も近い、最も近いうちの1つ、など)選択されたカメラに関連する単一視点画像ストリームのデュアルビットストリーム構造のプライマリ画像ストリームのGOPの途中で発生したと決定することに応答して、選択されたカメラに関連する単一視点画像ストリームのデュアルビットストリーム構造のセカンダリ画像ストリームから、1つ以上の再構成Iフレームが、ビューアのビデオストリーミングクライアント装置に送信される。
【0078】
選択されたカメラに関連する単一視点画像ストリームのデュアルビットストリーム構造のセカンダリ画像ストリームからの1つ以上の再構成Iフレームにより、ビューアのビデオストリーミングクライアント装置は、視覚的なアーチファクトがないかほとんどない状態で、ビューアのビューポートにレンダリングされる1つ以上の位置固有又は方向固有の画像を生成することができる。さらに、選択されたカメラに関連する単一視点画像ストリームのデュアルビットストリーム構造のセカンダリ画像ストリームからの1つ以上の再構成Iフレームにより、ビューアのビデオストリーミングクライアント装置を正しいコーディングコンテキストに配置して、1つ以上の再構成Iフレームの後に(例えば、直後など)送信又はストリーミングされた同じデュアルビットストリーム構造のプライマリ画像ストリームの1つ以上の非Iフレームを解釈し、1つ以上の非Iフレームから1つ以上の画像を生成して、1つ以上の後続の時点でビューアの視点でレンダリングすることができる。
【0079】
例えば、図2Bに示されているように、ビューアの位置又は方向が第1時点(「t1」)での図2Aの視点1から第2時点(「t2」)での図2Aの視点2に変化すると決定することに応答して、多視点画像ストリームの中の、カメラ2に関連する、単一視点画像ストリームのデュアルビットストリーム構造のセカンダリ画像ストリーム内の時点(「t2」)の再構成Iフレーム(「I’6」と表記される)が、上流装置によってビューアのビデオストリーミングクライアント装置にストリーミングされる。
【0080】
この例では、カメラ2に関連する単一視点画像ストリームのデュアルビットストリーム構造のセカンダリ画像ストリーム内の再構成Iフレーム(「I’6」)により、ビューアのビデオストリーミングクライアント装置は、視覚的なアーチファクトがないかほとんどない状態で、第2時点(「t2」)でビューアのビューポートにレンダリングされる位置固有又は方向固有の画像を生成することができる。さらに、カメラ2に関連する単一視点画像ストリームのデュアルビットストリーム構造のセカンダリ画像ストリーム内の第2時点(「t2」)の再構成Iフレーム(「I’6」)により、ビューアのビデオストリーミングクライアント装置を正しいコーディングコンテキストに配置して、第2時点(「t2」)の再構成Iフレーム(「I’6」)の後に(例えば、直後など)送信又はストリーミングされた同じデュアルビットストリーム構造のプライマリ画像ストリームの1つ以上の非Iフレーム(例えば「P7」、「P8」、及び「P9」等)を解釈し、1つ以上の非Iフレーム(例えば「P7」、「P8」、及び「P9」等)から1つ以上の対応する画像を生成して、第2時点(「t2」)の後の1つ以上の時点でビューアの視点でレンダリングすることができる。
【0081】
切り換え先のカメラ("Camera2")に関連するセカンダリ画像ストリーム内の再構成IフレームI’6は、切り換え先のカメラ("Camera2")に関連するプライマリ画像ストリームのGOP内のI1、P1からP6を使用して作成されたため、プライマリ画像ストリームのGOP内のこれらのフレームの状態(例えば、SNR、PSNR、ノイズ、量子化/コーディングエラー、算術符号化状態など)が蓄積され、再構成IフレームI’6に伝播される。再構成IフレームI’6は、受信側装置によって、後続の非Iフレームがプライマリ画像ストリームの同じGOP内の開始Iフレーム及び全ての先行する非Iフレームから解釈されているかのように、同じGOP内のP7のような後続の非Iフレームの画像データを解釈又は処理するための正しいコンテキストを設定するために使用できる。結果として、再構成IフレームI’6とP7から、非IフレームP7に対応する画像(例えば、表示画像など)を構成又は生成できる。再構成IフレームI’6及びP7から構成又は生成された画像の画質は、プライマリ画像ストリームの同じGOP内の開始Iフレーム及び先行するすべての非フレームから構成又は生成される画像の画質と同じになる。したがって、再構成IフレームI’6及びP7から構成又は生成された画像の画質は、プライマリ画像ストリームの同じGOP内の開始Iフレーム及び先行するすべての非フレームから構成又は生成される画像に関して忠実な再構成を表す。
【0082】
4.例示的なビデオストリーミング装置
図3Aは、多視点カメラシステム(例えば、図1Aの100など)内の複数のカメラからの複数のソース画像ストリームを、外部ビデオデータソースからの入力としてパイプライン(300)で受信し、ビューアにレンダリングするための出力としてターゲットビデオストリームをパイプライン(300)で出力するビデオ配信パイプライン300の例を示している。複数のソース画像ストリーム内の各ソース画像ストリームは、複数のカメラのうちの各々のカメラによってキャプチャされた画像データから生成又は導出される。
【0083】
限定ではないが例として、複数のソース画像ストリームは、複数のカメラのうちのカメラ1で生成された第1ソース画像ストリーム302-1と、複数のカメラのうちのカメラ2で生成された第2ソース画像ストリーム302-2を含む。パイプライン300によって受信される複数のソース画像ストリームのうちの各ソース画像ストリーム(例えば、302-1、302-2など)は、(例えば、非圧縮、生、比較的高品質、等の)ソース(ビデオ)画像のシーケンスを含む。
【0084】
ビデオ配信パイプライン(300)は、複数のソース画像ストリーム(例えば、302-1、302-2など)から複数のプライマリ画像ストリームを生成する多視点ビデオエンコーダ304を含む。複数のプライマリ画像ストリーム内の各プライマリ画像ストリームは、複数のソース画像ストリーム内の、複数のカメラのうちの各々のカメラで生成された、各々のソース画像ストリームから導出される。
【0085】
複数のソース画像ストリームと比較して、複数のプライマリ画像ストリームはビットレート効率のためにかなり圧縮されている。複数のプライマリ画像ストリームの中の各プライマリ画像ストリームは、GOP構造により実装されたGOP画像のシーケンスを含む。プライマリ画像ストリーム内のGOP画像のシーケンスは、各々がIフレーム、Bフレーム、Pフレームを含む複数のGOPを含む。プライマリ画像ストリーム内のGOP画像のシーケンスにGOP構造を実装すると、画像シーケンス内のデータ冗長性が削減又は排除される。一部の動作シナリオでは、ここで説明するように、IフレームとPフレームのみがビデオ圧縮に使用される。これらの動作シナリオでは、復号順序と表示順序を同じにすることができる。後続のPフレームは、時間予測のために前のフレーム(例えば、セカンダリ画像ストリームのI’フレームやIフレームなど)にのみ依存する。幾つかの動作シナリオでは、ここで説明するように、Bフレームも少なくとも部分的にビデオ圧縮に使用される。これらの動作シナリオでは、復号順序と表示順序が異なる場合がある。Bフレームが依存する前の又は後のフレーム(例えば、セカンダリ画像ストリームのI’フレームやIフレームなど)、又はすべての復号順序フレーム(表示順序フレームである必要はない)を受信側復号装置に送信できる。これにより、Bフレームの双方向又はデュアル予測機能が保証される。これらの動作シナリオでは、ランダムアクセスを実行する場合、ランダムアクセスの第1フレームは、表示フレーム又はBフレームによって使用又は参照される復号専用フレームにすることができ、受信側復号装置に送信されるI’フレームの順序は、図に示すように表示順序である必要はない。
【0086】
多視点ビデオエンコーダ(304)はさらに、複数のプライマリ画像ストリームから複数のセカンダリ画像ストリームを生成する。複数のセカンダリ画像ストリーム内の各セカンダリ画像ストリームは、多視点ビデオエンコーダ(304)によって、複数のプライマリ画像ストリーム内の各々のプライマリ画像ストリームから生成され、各々のプライマリ画像ストリームのGOP画像のシーケンス内の非Iフレームから生成された再構成Iフレームのシーケンスを含む。例えば、各々のプライマリ画像ストリームのGOP画像のシーケンス内の各非Iフレームを使用して、セカンダリ画像ストリーム内の再構成Iフレームのシーケンス内の各々の再構成Iフレームを生成することができる。
【0087】
多視点ビデオエンコーダ(304)は、複数のプライマリ画像ストリームと複数のセカンダリ画像ストリームに基づいて、多視点画像ストリーム306を生成する。例えば、多視点画像ストリーム(306)は、複数のデュアルビットストリーム構造を含む。複数のビットストリーム構造における各デュアルビットストリーム構造は、複数のプライマリ画像ストリームにおける各々のプライマリ画像ストリームと、複数のセカンダリ画像ストリームにおける各々のセカンダリ画像ストリームを含む。
【0088】
多視点画像ストリーム(306)は、比較的高い帯域幅、比較的低い遅延などで、1つ以上の第1データリンク(又は第1コンピュータネットワーク経路)を介して直接又は間接的に受信側(例えば、ジャストインタイム、インテリジェントレンダリングをサポートする、など)ストリーミングサーバに配信される。
【0089】
第1例では、多視点画像ストリーム(306)は、多視点ビデオエンコーダ(304)によって最初に出力され、多視点ビデオデータストア308などの有形のコンピュータ可読記憶媒体に格納され、その後、有形のコンピュータ可読記憶媒体から(例えば、ジャストインタイム、インテリジェントレンダリングをサポートする、レコーディングなど)ストリーミングサーバによって取得される。
【0090】
第2例では、多視点画像ストリーム(306)は、多視点ビデオエンコーダ(304)によってストリーミングサーバに直接出力できる。
【0091】
画像ディスプレイと共に動作してビューアに画像をレンダリングするダウンストリームビデオクライアント装置316(例えば、ウェアラブル装置、VRクライアント装置、ARクライアント装置、ビデオデコーダなど)は、位置センサ、モーションセンサ、アイトラッキング装置などを使用して、ビューアの位置又は方向に関連するリアルタイム又は近リアルタイムの視点データ314を収集することによって、リアルタイム又は近リアルタイムでビューアの位置又は方向を決定することができる。所与の時点でのビューアの位置又は方向は、リアルタイム又は近リアルタイム(例えば、1ミリ秒又は5ミリ秒又は20ミリ秒の遅延で、認識可能なタイムラグの閾値又は予算を下回る厳密な遅延で、など)で(例えば、ビデオクライアント装置(316)、ジャストインタイムのビデオストリーミングサーバ(310)などにより)監視及び決定できる。
【0092】
視点データ(314)及び/又は視点データから決定されたビューアの位置又は方向は、下流装置(316)によってジャストインタイムのビデオストリーミングサーバ(310)などの上流装置(例えば、VRサーバ、ARサーバ、多視点ビデオエンコーダなど)にシグナリング/提供できる。
【0093】
ビデオストリーミングサーバ(310)は、特定の時点でのビューアの特定の位置又は方向に基づいて、多視点画像ストリーム(306)の複数のデュアルビットストリーム構造の中から、ビューアの特定の位置又は方向に近い(例えば、1つ以上の最近の、など)と決定された1つ以上のカメラのサブセットに関連する1つ以上のデュアルビットストリーム構造のサブセットを識別できる。1つ以上のデュアルビットストリーム構造のサブセットの、1つ以上のプライマリ画像ストリーム及び/又は1つ以上のセカンダリ画像ストリームからの画像データは、ジャストインタイムビデオストリーミングサーバ(310)によって、1つ以上の第2データリンク(又は第2コンピュータネットワーク経路)を介して下流のビデオクライアント装置(316)にリアルタイムビデオストリーム312で(例えば、図2Bなどに示されているように)ストリーミングされる。第2データリンクは、第1データリンク(又は第1コンピュータネットワーク経路)と比較して、相対的に低い帯域幅、相対的に高い遅延などを持つ場合がある。
【0094】
ビデオクライアント装置(316)は、リアルタイムビデオストリーム(312)から画像データを復号し、リアルタイムビデオストリーム(312)から復号された画像データに対して画像のワープ/ブレンドを実行して、ビューアの特定の位置又は特定の方向に対応する位置固有又は方向固有の画像を生成する。位置固有又は方向固有の画像は、ビデオクライアント装置(316)により、特定の時点でビューアにレンダリングするために、ビデオクライアント装置(316)と連携して動作する画像ディスプレイに出力ストリーム(318)で提供される場合がある。
【0095】
図3Bは、多視点ソース画像受信部324、多視点ストリーム生成部328、データレポジトリ326などを含む多視点ビデオエンコーダ(例えば、304など)の例を示している。多視点ビデオエンコーダ(304)のコンポーネントの一部又はすべては、ソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどで、1つ以上の装置、モジュール、ユニットなどによって実装される場合がある。
【0096】
多視点ソース画像受信部(324)は、クラウドベースの多視点画像ソース、VRアプリケーション、ARアプリケーション、リモートプレゼンスアプリケーション、ディスプレイアプリケーション、立体ビデオアプリケーション、没入型ビデオアプリケーションなどに関連する多視点カメラシステム(例えば、図1Aの100など)などの多視点画像ソースから、複数の単一視点ソース(例えば、生、非圧縮、高品質など)画像ストリーム304を受信し、及び複数の単一視点ソース画像ストリーム(304)から複数の単一視点ソース画像シーケンスを復号する、等のように構成されたソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。
【0097】
幾つかの実施例では、多視点ストリーム生成部(328)は、複数の単一視点画像ストリーム(302)で受信された複数の単一視点ソース画像シーケンスから、デュアルビットストリーム構造を持つ多視点画像ストリーム306を生成するように構成されたソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。
【0098】
データレポジトリ(326)は、多視点ソース画像受信部(324)、多視点画像ストリーム(306)などによって受信された複数の単一視点ソース画像シーケンスの一部又は全部に関して、格納、更新、取得、削除などの操作をサポートするように構成された、1つ以上のデータベース、1つ以上のデータストレージユニット/モジュール/装置などを表す。
【0099】
図3Cは、多視点ストリーム受信部332、視点プロセッサ334、ジャストインタイムストリーム生成部336などを含む(ジャストインタイム)ビデオストリーミングサーバ310の例を示す。ビデオストリーミングサーバ(310)のコンポーネントの一部又はすべては、ソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどで、1つ以上の装置、モジュール、ユニットなどによって実装される場合がある。
【0100】
多視点ストリーム受信部(332)は、多視点画像ストリーム(306)を多視点ビデオエンコーダ(304)から直接又は間接的に受信し、及び多視点画像ストリーム(306)のプライマリ及びセカンダリ画像ストリームを復号するなどのように構成されるソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。
【0101】
視点プロセッサ(334)は、ビューアがリアルタイム又はほぼリアルタイムで操作するビデオクライアント装置からビューアの視点データを受信し、
多視点画像ストリーム(306)から得られた画像が、ビデオクライアント装置と連動して動作する画像ディスプレイによって提供されるように、ビューアの視点で複数の時点でレンダリングされるAR、VR、又は立体ビデオアプリケーションの時間間隔/期間にわたって、複数の時点におけるビューアの位置又は方向を確立/決定する、ように構成されるソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。
【0102】
ジャストインタイムストリーム生成部(336)は、少なくとも部分的にビューアの位置又は方向に基づいて、多視点画像ストリーム(306)内のデュアルビットストリーム構造のサブセットの画像データからリアルタイムストリーム312を生成するように構成されたソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。
【0103】
ビデオストリーミングサーバ(310)は、ARアプリケーション、VRアプリケーション、360度ビデオアプリケーション、立体ビデオアプリケーション、リアルタイムビデオアプリケーション、近リアルタイムビデオアプリケーション、非リアルタイム全方位ビデオアプリケーション、自動車エンターテイメント、ヘルメット搭載ディスプレイアプリケーション、頭部搭載ディスプレイアプリケーション、ゲーム、2次元ディスプレイアプリケーション、3次元ディスプレイアプリケーション、多視点ディスプレイアプリケーションなどをサポートするために使用できる。
【0104】
図3Dは、リアルタイムストリーム受信部342、視点追跡部344、ディスプレイ管理部346、画像ディスプレイ348などを含むビデオクライアント装置316の例を示している。ビデオクライアント装置(316)のコンポーネントの一部又はすべては、ソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどで、1つ以上の装置、モジュール、ユニットなどによって実装される場合がある。
【0105】
視点追跡部(344)は、1つ以上のビューア位置/方向追跡センサ(例えば、モーションセンサ、位置センサ、アイトラッカーなど)と共に動作し、ビューアに関連するリアルタイム又はほぼリアルタイムの視点データ314を収集し、視点データ(314)又は視点データから決定したビューアの位置/方向をジャストインタイムビデオストリーミングサーバ(310)に送信する、ように構成されているソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。視点データ(314)は、比較的細かい時間スケール(例えば、1ミリ秒ごと、5ミリ秒ごとなど)でサンプリング又は測定することができる。視点データは、所与の時間分解能(例えば、1ミリ秒ごと、5ミリ秒ごとなど)でビューアの位置又は方向を確立/決定するために使用できる。
【0106】
リアルタイムストリーム受信部(342)は、少なくとも部分的に視点データ(314)に基づいて生成されたリアルタイムビデオストリーム(312)を受信し復号し、リアルタイムビデオストリーム(312)から復号された画像データに対して、画像ワープ、画像ブレンディング(例えば、複数のカメラソースからの複数のワープした画像のブレンドなど)、画像合成などを実行して、ビューアの予測又は測定された位置又は方向に対応する位置固有又は方向固有の画像を生成する、などのように構成されたソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。
【0107】
ディスプレイ管理部(346)は、画像ディスプレイ(348)にレンダリングされる位置固有又は方向固有の画像に対してディスプレイ管理操作を実行し、レンダリングのために、ディスプレイ管理された位置固有又は方向固有の画像を画像ディスプレイ(348)に出力する、などのように構成されるソフトウェア、ハードウェア、ソフトウェアとハードウェアの組み合わせなどを含む。
【0108】
幾つかの動作シナリオでは、画像メタデータは、リアルタイムビデオストリームで表現された又は符号化された、プライマリ画像ストリーム、再構成IフレームなどのIフレーム及び非Iフレームを生成又は導出するために使用される画像データをキャプチャする選択されたカメラの空間位置又は方向を示すために、ストリーミングサーバからストリーミングクライアントにリアルタイムビデオストリームと共に送信される。カメラの空間位置又は方向は、ビューアの位置又は方向が表される参照(例えば、デカルト、角度、世界などの)座標系に表現又は変換される場合とされない場合がある。座標系変換操作は、ストリーミングサーバ及び/又はストリーミングクライアントによって実行される場合がある。
【0109】
リアルタイムビデオストリームで送信される画像メタデータの一部又はすべては、SEI(supplemental enhancement information)、PPS(picture parameter set)、SPS(sequence parameter set)、スライスヘッダ、個別のサブストリーム又はストリーミングファイルなどのいずれかになる。
【0110】
一部の動作シナリオでは、多視点カメラシステムの異なるカメラから導出したプライマリ画像ストリームが、時間同期されたGOP構造でコード化される場合がある。これらの動作シナリオでは、シーンを描写する(プライマリ画像ストリームの)GOP内のIフレームは、時間的にインデックス付けされるか、同じシーンを描写する(別のプライマリ画像ストリームの)別のGOP内の別のIフレームに対応する。同様に、シーンを描写する(プライマリ画像ストリームの)GOP内のP又はBフレームは、時間的にインデックス付けされるか、同じシーンを描写する(他のプライマリ画像ストリームの)他のGOP内の別のP又はBフレームに対応する。1つのカメラに関連する1つの時間同期されたプライマリ又はセカンダリ画像ストリームのタイミング情報を示す画像メタデータは、SEI、PSP、SPSなどで画像とともに受信され、画像メタデータの受信装置によって、別のカメラに関連する別の時間同期されたプライマリ又はセカンダリ画像ストリームに動的に切り換えるために使用されることがある。
【0111】
一部の動作シナリオでは、多視点カメラシステムの異なるカメラから導出したプライマリ画像ストリームが、時間同期されていない可能性のあるGOP構造でコーディングされる場合がある。画像メタデータは、異なる画像ストリーム内の異なるタイミング情報を示すために生成され、SEI、PSP、SPS等で、多視点ビデオエンコーダ又はジャストインタイムビデオストリーミングサーバのような上流装置から、ジャストインタイムビデオストリーミングサーバ又はビデオストリーミングクライアントのような下流受信側装置へと送信されることがある。タイミング情報は、画像ストリーム間で動的に切り換えるために、及びdataしプライマリ画像ストリーム及び/又はセカンダリ画像ストリームから適切に画像をフェッチするために、受信側装置により使用できる。
【0112】
ここで使用されるように、多視点カメラシステムの複数のカメラからカメラの適切なサブセットに関連する画像ストリームをジャストインタイムのビデオストリーミングサーバによって選択し、受信側ビデオストリーミングクライアントに、ビューアのビューポートにレンダリングされる位置固有又は方向固有の画像を構成するための画像データを提供することができる。例では、カメラの適切なサブセットは、ビューアのビューポートにレンダリングされる描写されたシーンに関して、ビューアが異なる位置又は異なる方向に移動又は変更することができる、ビューボリュームの中心又は対称点に対応する1つなどの特定の位置にある単一のカメラである場合がある。別の例では、カメラの適切なサブセットは、視聴ボリューム内のビューアの位置又は方向に近い又は最も近い4つのカメラなどの複数のカメラである場合がある。
【0113】
受信側装置は、画像メタデータ又はその中のタイミング情報を使用して、切り換え先のカメラのプライマリ又はセカンダリ画像ストリーム内の対応する画像フレームがGOP境界にあるかどうかを決定できる。切り換えがGOP境界で発生することを決定することに応答して、GOP内の第1Iフレームから始まる切り換え先カメラのプライマリ画像ストリーム内の対応するGOPを、データストアに格納されている多視点画像ストリームから取得するか、上流ビデオエンコーダから送信して、ジャストインタイムストリーミングサーバからストリーミングクライアントに提供することができる。一方、切り換えがGOP境界で発生しないことを決定することに応答して、切り換え先カメラのセカンダリ画像ストリーム内の再構成Iフレームを多視点画像ストリームから取得して、ジャストインタイムストリーミングサーバからストリーミングクライアントに提供し、続いて切り換え先カメラのプライマリ画像ストリーム内の非Iフレームを提供することができる。
【0114】
ビューアの位置又は方向は、ここに記載されているように、リアルタイム又は近リアルタイムの地理、アイトラッキング、又はクライアント装置からのセンサデータ(視点データ)から決定できる。
【0115】
一部の動作シナリオでは、ここに記載されているBフレーム又はPフレームが、時間的に(例えば、直近の、次の、など)隣接するフレームを参照する場合がある。これらの動作シナリオでは、セカンダリ画像ストリームからの単一の再構成Iフレームが受信側ビデオデコーダに送信され、対応するプライマリ画像ストリームから後続の非Iフレームを復号するための正しい開始コーディングコンテキストに受信側ビデオデコーダを(例えば、十分に、等)配置することができる。
【0116】
一部の他の動作シナリオでは、ここに記載されているBフレーム又はPフレームが、時間的に(例えば、直近の、次の、など)隣接するフレームに加えて又はその代わりに、他のフレーム(例えば、最大15フレームまで、等)を参照する場合がある。これらの動作シナリオでは、セカンダリ画像ストリームからの複数の(例えば、連続する、等)再構成Iフレームが受信側ビデオデコーダに送信され、対応するプライマリ画像ストリームから後続の非Iフレームを復号するための正しい開始コーディングコンテキストに受信側ビデオデコーダを(例えば、十分に、等)十分に配置することができる。
【0117】
説明のみを目的として、カメラ又は画像取得装置に関連して、プライマリ画像ストリームとセカンダリ画像ストリームを含むデュアルビットストリーム構造を多視点ビデオエンコーダによって生成できることが説明されている。他の実施例では、ここで説明するデュアルビットストリーム構造が他の装置によって作成又は生成される可能性があることに注意する必要がある。ここで説明するデュアルビットストリーム構造のプライマリ画像ストリームとセカンダリ画像ストリームは、同時に生成される場合と生成されない場合があり、同じ装置によって生成される場合と生成されない場合がある。例えば、ジャストインタイムのストリーミングサーバでは、ビデオコンテンツがビデオストリーミングクライアントにストリーミングされているときに、プライマリ画像ストリームからセカンダリ画像ストリームをオンザフライで作成できる。
【0118】
説明のみを目的として、ビューアの視点の変更が発生したときに、1つ以上の再構成Iフレームを送信できることを説明した。なお、動作シナリオによっては、再構成Iフレームに関連して追加情報及び/又は追加フレームが送信される場合がある。例えば、受信側コーディング装置が非Iフレームを解釈するための正しいコーディングコンテキストを設定するのに役立つ追加情報を含む1つ以上のダミーIフレームが、上流装置から受信側コーディング装置に送信される場合がある。
【0119】
ここで使用されるように、ここで説明するビデオストリーム内のビデオコンテンツには、視聴覚プログラム、映画、ビデオプログラム、テレビ放送、コンピュータゲーム、拡張現実(AR)コンテンツ、仮想現実(VR)コンテンツ、自動車のエンターテインメントコンテンツなどのいずれかが含まれる場合があるが、必ずしも限定されない。ビデオデコーダの例には、ディスプレイ装置、ニアアイディスプレイを備えたコンピューティング装置、頭部搭載ディスプレイ(HMD)、モバイル装置、ウェアラブルディスプレイ装置、テレビなどのディスプレイを備えたセットトップボックス、ビデオモニタなどのいずれかが含まれる場合があるが、必ずしも限定されない。
【0120】
ここで使用される「ビデオストリーミングサーバ」は、ビデオコンテンツの少なくとも一部を1つ以上のディスプレイにレンダリングするために、ビデオコンテンツを準備し、ビデオデコーダなどの1つ以上のビデオストリーミングクライアントにストリーミングする1つ以上の上流装置を指す場合がある。ビデオコンテンツがレンダリングされるディスプレイは、1つ以上のビデオストリーミングクライアントの一部である場合もあれば、1つ以上のビデオストリーミングクライアントと連携して動作している場合もある。
【0121】
ビデオストリーミングサーバの例としては、ビデオストリーミングクライアントからリモートに配置されたクラウドベースのビデオストリーミングサーバ、ビデオストリーミングクライアントとローカルの有線又は無線ネットワークで接続されたローカルビデオストリーミングサーバ、VR装置、AR装置、自動車のエンターテインメント装置、デジタルメディア装置、デジタルメディア受信機、セットトップボックス、ゲームマシン(例えば、Xbox)、汎用パーソナルコンピュータ、タブレット、AppleTVやRokuボックスなどの専用のデジタルメディア受信機などがあるが、必ずしもこれらに限定されない。
【0122】
5.例示的な処理フロー
図4Aは、本発明の例示的な実施形態による例示的な処理フローを示す。幾つかの実施例では、1つ以上のコンピューティング装置又はコンポーネントがこのプロセスフローを実行することができる。ブロック402では、画像プロセッサ(例えば、ビデオストリーミングサーバ、ビデオエンコーダ、ビデオコンテンツプロバイダ、ビデオトランスコーダなど)が、複数のプライマリ画像ストリームと複数のセカンダリ画像ストリームで符号化された多視点画像ストリームにアクセスする。複数のプライマリ画像ストリームの中の各プライマリ画像ストリームは、グループオブピクチャ(GOP)を含む。複数のセカンダリ画像ストリームの中の各セカンダリ画像ストリームは、複数のプライマリ画像ストリームの中の対応するプライマリ画像ストリームから生成されたIフレームを含む。
【0123】
ブロック404では、画像プロセッサは、受信側復号装置から、ビューアが多視点画像ストリーム内の画像データのサブセットから導出されたビデオコンテンツを閲覧している間に、リアルタイムで収集されたビューアの視点データを受信する。視点データは、特定の時点から開始して、ビューアの視点が変化したことを示す。
【0124】
ブロック406では、画像プロセッサは、ビューアの変化した視点に基づき、複数のカメラの中からカメラを選択する。選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、特定の時点の後にビューアのビューポートでレンダリングされる。
【0125】
ブロック408で、画像プロセッサは、特定の時点が、選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応するかどうかを決定する。
【0126】
ブロック410で、画像プロセッサは、特定の時点が、選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応すると決定することに応答して、選択されたカメラに関連するプライマリ画像ストリームに対応するセカンダリ画像ストリームからのIフレームを、受信側復号装置へ送信する。
【0127】
実施形態では、複数のプライマリ画像ストリームは、複数のカメラでキャプチャされた画像データから生成された複数の単一視点画像シーケンスを含み、複数の単一視点画像シーケンスの中の各単一視点画像シーケンスは、複数のグループオブピクチャ(GOP)を含み、複数のGOPの中のGOPは、Iフレームと非Iフレームを含む。
【0128】
実施形態では、複数のセカンダリ画像ストリームは、複数のプライマリ画像ストリームから生成された複数の再構成Iフレームのシーケンス、又は複数のプライマリ画像ストリームを導出するために使用されるソース画像から生成された複数のIフレームのシーケンスのいずれかを含む。
【0129】
実施形態では、画像プロセッサは、特定の時点が、選択されたカメラに関連するプライマリ画像ストリームのGOP内のIフレームに対応すると決定することに応答して、受信側復号装置にIフレームを送信するようにさらに構成される。
【0130】
実施形態では、画像プロセッサはさらに、プライマリ画像ストリームのGOP内の1つ以上の後続の非Iフレームを受信側復号装置に送信するように構成される。
【0131】
実施形態では、画像プロセッサはさらに、受信側復号装置に、セカンダリ画像ストリームからのIフレームを送信した直後に、受信側復号装置に、セカンダリ画像ストリームからの第2Iフレームを送信するよう更に含構成される。
【0132】
実施形態では、選択されたカメラは、ビューアの視点に少なくとも部分的に基づき、複数のカメラの中から選択されたカメラのサブセットに属し、Iフレームは、カメラのサブセットに関連するIフレームのサブセットに属し、Iフレームのサブセットは、受信側復号装置に送信される。
【0133】
実施形態では、ビューアの視点は、前記ビューアの位置、前記ビューアの方向、前記ビューアの位置と方向の組み合わせ、等のうちの1つを表す。
【0134】
実施形態では、多視点画像ストリームは、拡張現実アプリケーション、仮想現実アプリケーション、シネマビデオアプリケーション、家庭用ビデオアプリケーション、ビデオストリーミングアプリケーション、クラウドに基づくビデオアプリケーション、Wi-Fiに基づくビデオアプリケーション、セルラデータネットワークに基づくビデオアプリケーション、没入型ビデオアプリケーション、等のうちのいずれかをサポートするために使用される。
【0135】
図4Bは、本発明の例示的な実施形態による例示的な処理フローを示す。幾つかの実施例では、1つ以上のコンピューティング装置又はコンポーネントがこのプロセスフローを実行することができる。ブロック452では、画像プロセッサ(例えば、ビデオストリーミングクライアント、ビデオデコーダ、セットトップ装置など)が、複数のプライマリ画像ストリームと複数のセカンダリ画像ストリームで符号化された多視点画像ストリーム内の画像データのサブセットから導出したビデオコンテンツを上流装置から受信する。複数のプライマリ画像ストリームの中の各プライマリ画像ストリームは、グループオブピクチャ(GOP)を含む。複数のセカンダリ画像ストリームの中の各セカンダリ画像ストリームは、複数のプライマリ画像ストリームの中の対応するプライマリ画像ストリームから生成されたIフレームを含む。
【0136】
ブロック454では、画像プロセッサは、ビューアがビデオコンテンツを視聴している間にリアルタイムで収集されたビューアの視点データを上流装置に送信する。視点データは、特定の時点から開始して、ビューアの視点が変化したことを示す。
【0137】
ビューアの変化した視点に基づき、複数のカメラの中から、カメラが選択される。選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、特定の時点の後にビューアのビューポートでレンダリングされる。
【0138】
特定の時点は、選択されたカメラに関連するプライマリ画像ストリームのGOPの中の非Iフレームに対応する。
【0139】
ブロック456で、画像プロセッサは、選択されたカメラに関連するプライマリ画像ストリームに対応するセカンダリ画像ストリームからのIフレームを、上流装置から受信する。
【0140】
ブロック458で、画像プロセッサは、Iフレームを処理し、特定の時点のビューアの視点でレンダリングする。
【0141】
実施形態では、プライマリ画像ストリームのGOPからの非Iフレームが続いて受信され、第2表示画像が、Iフレームにより設定されたコーディングコンテキストに少なくとも部分的に基づき非Iフレームから導出される。
【0142】
実施形態では、第1画像ブロックは、ビューアの方向をカバーする画像領域を形成する2つ以上の連続した画像ブロックのグループに属し、1つ以上の第2画像ブロックが画像領域の外側にあり、2つ以上の連続した画像ブロックのグループ内の他の画像は、1つ以上の第2画像ブロックの前に受信、復号、レンダリングされる。
【0143】
実施形態では、ビューアの視点はビューボリューム内で変化する。
【0144】
様々な例の実施形態では、装置、システム、装置、又は1つ又は複数の他のコンピューティング装置が、前述の方法のいずれか又は一部を実行する。実施形態では、非一時的コンピュータ可読記憶媒体は、1つ以上のプロセッサにより実行されると、ここで説明された方法の実行を生じるソフトウェア命令を格納している。
【0145】
別個の実施形態が本願明細書に記載されたが、本願明細書で議論した実施形態及び/又は部分的実施形態の任意の組み合わせは、更なる実施形態を形成するために結合されてよい。
【0146】
6.実装メカニズム-ハードウェア概要
一実施形態によると、本願明細書に記載の技術は、1つ以上の専用コンピューティング装置により実装される。専用コンピューティング装置は、技術を実行するためにハード結線されてよく、又は技術を実行するために永久的にプログラムされた1つ以上の特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)のようなデジタル電子装置を含んでよく、又はファームウェア、メモリ、他の記憶装置又はそれらの組み合わせの中のプログラム命令に従い技術を実行するためにプログラムされた1つ以上の汎用ハードウェアプロセッサを含んでよい。このような専用コンピューティング装置は、技術を達成するために、カスタムハードワイヤドロジック、ASIC、又はFPGAをカスタムプログラミングと結合してもよい。専用コンピューティング装置は、デスクトップコンピュータシステム、ポータブルコンピュータシステム、ハンドヘルド装置、ネットワーク装置、又は技術を実装するためにハードワイヤ-ド及び/又はプログラムロジックを組み込む任意の他の装置であってよい。
【0147】
例えば、図5は、本発明の例示的な実施形態が実装され得るコンピュータシステム500を示すブロック図である。コンピュータシステム500は、情報を通信するためのバス502又は他の通信メカニズム、及び情報を処理するためにバス502に結合されたハードウェアプロセッサ504を含む。ハードウェアプロセッサ504は、例えば、汎用マイクロプロセッサであってよい。
【0148】
コンピュータシステム500は、バス502に結合され、プロセッサ504により実行されるべき情報及び命令を格納するRAM(random access memory)又は他の動的記憶装置のようなメインメモリ506も含む。メインメモリ506は、プロセッサ504により実行されるべき命令の実行中に、時間変数又は他の中間情報を格納するためにも使用されてよい。このような命令は、プロセッサ504によりアクセス可能な非一時的記憶媒体に格納されるとき、コンピュータシステム500を、命令で指定された動作を実行するようカスタマイズされた専用マシンにする。
【0149】
コンピュータシステム500は、バス502に結合され、プロセッサ504のための静的情報及び命令を格納する、読み出し専用メモリ(ROM)508又は他の静的記憶装置を更に含む。
【0150】
情報及び命令を格納するために、磁気ディスク又は光ディスク、固体RAMのような記憶装置510が設けられ、バス502に結合される。
【0151】
コンピュータシステム500は、バス502を介して、コンピュータユーザに情報を表示する液晶ディスプレイのようなディスプレイ512に結合されてよい。英数字及び他のキーを含む入力装置514は、プロセッサ504に情報及びコマンド選択を通信するために、バス502に結合される。別の種類のユーザ入力装置は、プロセッサ504に方向情報及びコマンド選択を通信するための、及びディスプレイ512上のカーソルの動きを制御するための、マウス、トラックボール、又はカーソル方向キーのようなカーソル制御516である。この入力装置は、標準的に、第1軸(例えばx)及び第2軸(例えばy)の2軸の2つの自由度を有し、装置が平面内で位置を指定することを可能にする。
【0152】
コンピュータシステム500は、コンピュータシステムと結合してコンピュータシステム500を専用マシンにする又はプログラムする、カスタマイズされたハードワイヤドロジック、1つ以上のASIC又はFPGA、ファームウェア及び/又はプログラムロジックを用いて、本願明細書に記載の技術を実装してよい。実施形態によると、本願の技術は、プロセッサ504がメインメモリ506に含まれる1つ以上の命令の1つ以上のシーケンスを実行することに応答して、コンピュータシステム500により実行される。このような命令は、記憶装置510のような別の記憶媒体からメインメモリ506に読み込まれてよい。メインメモリ506に含まれる命令のシーケンスの実行は、プロセッサ504に本願明細書に記載の処理ステップを実行させる。代替の実施形態では、ハード結線回路が、ソフトウェア命令の代わりに又はそれと組合せて使用されてよい。
【0153】
用語「記憶媒体」は、本願明細書で使用されるとき、機械を特定の方式で動作させるデータ及び/又は命令を格納する任意の非一時的媒体を表す。そのような記憶媒体は、不揮発性媒体及び/又は揮発性媒体を含んでよい。不揮発性媒体は、例えば、記憶装置510のような光学又は磁気ディスクを含む。揮発性媒体は、メインメモリ506のような動的メモリを含む。記憶媒体の一般的形式は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、固体ドライブ、磁気テープ、又は任意の他の磁気データ記憶媒体、CD-ROM、任意の他の光学データ記憶媒体、ホールのパターンを有する任意の物理媒体、RAM、PROM、EPROM、FLASH(登録商標)-EPROM、NVRAM、任意の他のメモリチップ又はカートリッジを含む。
【0154】
記憶媒体は、伝送媒体と異なるが、それと関連して使用されてよい。伝送媒体は、記憶媒体の間で情報を転送する際に関連する。例えば、伝送媒体は、バス502を含むワイヤを含む、同軸ケーブル、銅線、光ファイバを含む。伝送媒体は、無線波及び赤外線データ通信の間に生成されるような、音響又は光波の形式も取りうる。
【0155】
種々の形式の媒体は、実行のためにプロセッサ504に1つ以上の命令の1つ以上のシーケンスを運ぶ際に関連してよい。例えば、命令は、最初に、リモートコンピュータの磁気ディスク又は固体ドライブにより運ばれてよい。リモートコンピュータは、その動的メモリに命令をロードし、該命令をモデムを用いて電話線を介して送信できる。コンピュータシステム500のローカルにあるモデムは、電話線でデータを受信し、赤外線送信機を用いてデータを赤外線信号に変換できる。赤外線検出器は、赤外線信号の中で運ばれたデータを受信し、適切な回路が該データをバス502に配置できる。バス502は、データをメインメモリ506に運び、そこからプロセッサ504が命令を読み出し実行する。メインメモリ506により受信された命令は、任意で、プロセッサ504による実行の前又は後に記憶装置510に格納されてよい。
【0156】
コンピュータシステム500は、バス502に結合された通信インタフェース518も含む。通信インタフェース518は、ローカルネットワーク522に接続されるネットワークリンク520との2方向データ通信結合を提供する。例えば、通信インタフェース518は、ISDN(integrated services digital network)カード、ケーブルモデム、衛星モデム、又は対応する種類の電話線にデータ通信接続を提供するモデムであってよい。別の例として、通信インタフェース518は、互換LANにデータ通信接続を提供するLAN(local area network)カードであってよい。無線リンクも実装されてよい。任意のこのような実装では、通信インタフェース518は、種々の種類の情報を表すデジタルデータストリームを運ぶ電気、電磁気、又は光信号を送受信する。
【0157】
ネットワークリンク520は、標準的に、1つ以上のネットワークを通じて他のデータ装置にデータ通信を提供する。例えば、ネットワークリンク520は、ローカルネットワーク522を通じてホストコンピュータ524に又はISP(Internet Service Provider)526により運用されるデータ機器に接続を提供してよい。ISP526は、また、現在一般に「インターネット」528と呼ばれるワールドワイドパケットデータ通信ネットワークを通じて、データ通信サービスを提供する。ローカルネットワーク522及びインターネット528は、デジタルデータストリームを運ぶ電気、電磁気、又は光信号の両方を使用する。コンピュータシステム500へ及びそれからのデジタルデータを運ぶ種々のネットワークを通じる信号及びネットワークリンク520上の信号及び通信インタフェース518を通じる信号は、伝送媒体の例示的な形式である。
【0158】
コンピュータシステム500は、ネットワーク、ネットワークリンク520、及び通信インタフェース518を通じて、プログラムコードを含むメッセージを送信しデータを受信できる。インターネットでは、例えば、サーバ530は、インターネット528、ISP526、ローカルネットワーク522、及び通信インタフェース518を通じて、適切なプログラムのための要求されたコードを送信してよい。
【0159】
受信したコードは、プロセッサ504により受信されるとプロセッサ504により実行され、及び/又は後の実行のために記憶装置510若しくは他の不揮発性記憶装置に格納される。
【0160】
7.均等物、拡張、代替、等
以上の明細書において、本発明の例示的な実施形態は、実装毎に変化し得る多数の特定の詳細を参照して説明された。従って、本発明が何であるかの単独及び排他的な指示、及び出願人が本発明であることを意図するものは、本願により、いかなる後の補正を含む、特定の形式で発行される請求の範囲に記載される。このような請求の範囲に含まれる用語について本願明細書に明示的に記載された任意の定義は、請求の範囲において使用されるこのような用語の意味を支配するべきである。従って、請求の範囲に明示的に記載されないいかなる限定、要素、特徴、利点、又は属性は、いかなる方法でも、請求の範囲の範囲を限定すべきではない。明細書及び図面は、従って、限定的意味では無く、説明であると考えられるべきである。
図1A
図1B
図1C
図2A
図2B
図3A
図3B
図3C
図3D
図4A
図4B
図5
【手続補正書】
【提出日】2022-05-17
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ビデオストリームデータを提供する方法であって、
複数のプライマリ画像ストリームと複数のセカンダリ画像ストリームにより符号化された多視点画像ストリームにアクセスするステップであって、前記複数のプライマリ画像ストリームは、複数のカメラによりキャプチャされた画像データから生成された複数の単一視点画像シーケンスを含み、前記複数の単一視点画像シーケンスのうちの各単一視点画像シーケンスは、複数のグループオブピクチャ(GOP)を含み、前記複数のGOPの中のGOPは、Iフレームと非Iフレームを含み、前記複数のセカンダリ画像ストリームは、複数の再構成Iフレームシーケンスを含み、各Iフレームは対応する非Iフレームと、前記プライマリ画像ストリームの同じGOPの中の先行するIフレーム及び非Iフレームから導出される、ステップと、
受信側復号装置から、ビューアが前記多視点画像ストリームの中の画像データのサブセットから導出されたビデオコンテンツを閲覧している間にリアルタイムで収集された前記ビューアの視点データを受信するステップであって、前記視点データは、前記ビューアの視点が特定の時点から変化していることを示す、ステップと、
前記ビューアの変化した視点に基づき、複数のカメラの中からカメラを選択するステップであって、前記選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、前記特定の時点の後に前記ビューアのビューポートでレンダリングされる、ステップと、
前記特定の時点が前記選択されたカメラによりキャプチャされた画像データから生成されたプライマリ画像ストリームのGOPの中の非Iフレームに対応すると決定することに応答して、前記受信側復号装置に、前記選択されたカメラによりキャプチャされた画像データから生成された前記プライマリ画像ストリームの前記GOPの中の前記特定の時点における非Iフレームに対応するセカンダリ画像ストリームからのIフレームを送信するステップと、
前記特定の時点が前記選択されたカメラによりキャプチャされた画像データから生成された前記プライマリ画像ストリームの前記GOPの中のIフレームに対応すると決定することに応答して、前記受信側復号装置に、前記Iフレームを送信するステップと、
前記受信側復号装置に、前記プライマリ画像ストリームの前記GOPの中の1つ以上の後続の非Iフレームを送信するステップと、
を含む方法。
【請求項2】
前記受信側復号装置に、前記セカンダリ画像ストリームからの前記Iフレームを送信した直後に、前記受信側復号装置に、前記セカンダリ画像ストリームからの第2Iフレームを送信するステップ、を更に含む請求項に記載の方法。
【請求項3】
前記選択されたカメラは、前記ビューアの視点に少なくとも部分的に基づき、前記複数のカメラの中から選択されたカメラのサブセットに属し、前記Iフレームは、前記カメラのサブセットによりキャプチャされた画像データから生成されたIフレームのサブセットに属し、前記Iフレームのサブセットは、前記受信側復号装置に送信される、請求項1又は2に記載の方法。
【請求項4】
前記ビューアの視点は、前記ビューアの位置、前記ビューアの方向、又は前記ビューアの位置と方向の組み合わせ、のうちの1つを表す、請求項1~のいずれかに記載の方法。
【請求項5】
前記多視点画像ストリームは、拡張現実アプリケーション、仮想現実アプリケーション、シネマビデオアプリケーション、家庭用ビデオアプリケーション、ビデオストリーミングアプリケーション、クラウドに基づくビデオアプリケーション、Wi-Fiに基づくビデオアプリケーション、セルラデータネットワークに基づくビデオアプリケーション、又は没入型ビデオアプリケーション、のうちの1つをサポートするために使用される、請求項1~のいずれかに記載の方法。
【請求項6】
ビデオストリームデータをレンダリングする方法であって、
上流装置から、複数のプライマリ画像ストリームと複数のセカンダリ画像ストリームにより符号化された多視点画像ストリームの中の画像データのサブセットから導出されたビデオコンテンツを受信するステップであって、前記複数のプライマリ画像ストリームは、複数のカメラによりキャプチャされた画像データから生成された複数の単一視点画像シーケンスを含み、前記複数の単一視点画像シーケンスのうちの各単一視点画像シーケンスは、複数のグループオブピクチャ(GOP)を含み、前記複数のGOPの中のGOPは、Iフレームと非Iフレームを含み、前記複数のセカンダリ画像ストリームは、複数の再構成Iフレームシーケンスを含み、各Iフレームは対応する非Iフレームと、前記プライマリ画像ストリームの同じGOPの中の先行するIフレーム及び非Iフレームから導出される、ステップと、
前記上流装置に、ビューアが前記ビデオコンテンツを閲覧している間にリアルタイムで収集された前記ビューアの視点データを送信するステップであって、前記視点データは、前記ビューアの視点が特定の時点から開始して変化していることを示す、ステップと、
前記ビューアの変化した視点に基づき、複数のカメラの中からカメラが選択され、前記選択されたカメラによりキャプチャされた画像データ部分から導出されたビデオコンテンツ部分は、前記特定の時点の後に前記ビューアのビューポートでレンダリングされることと、
前記特定の時点が前記選択されたカメラによりキャプチャされた画像データから生成されたプライマリ画像ストリームのGOPの中の非Iフレームに対応する場合、前記上流装置から、前記選択されたカメラによりキャプチャされた画像データから生成された前記プライマリ画像ストリームの前記GOPの中の前記特定の時点における非Iフレームに対応するセカンダリ画像ストリームからのIフレームを受信するステップと、
前記特定の時点が前記選択されたカメラによりキャプチャされた画像データから生成されたプライマリ画像ストリームのGOPの中のIフレームに対応する場合、前記上流装置から、前記Iフレームを受信するステップと、
前記特定の時点について前記ビューアの視点のIフレームから導出された表示画像を処理しレンダリングするステップと、
前記プライマリ画像ストリームの前記GOPの中の非Iフレームは続いて受信されること、
を含む方法。
【請求項7】
第2表示画像が、前記Iフレームにより設定されたコーディングコンテキストに少なくとも部分的に基づき前記非Iフレームから導出される、請求項に記載の方法。
【請求項8】
前記ビューアの視点はビューボリュームの範囲内で変化する、請求項6又は7に記載の方法。
【請求項9】
前記ビューアの視点は、前記ビューアの位置、前記ビューアの方向、又は前記ビューアの位置と方向の組み合わせ、のうちの1つを表す、請求項6~8のいずれかに記載の方法。
【請求項10】
プロセッサを含み、請求項1~に記載の方法のうちのいずれか1つを実行するよう構成される機器。
【請求項11】
請求項1~のいずれか一項に従い1つ以上のプロセッサにより方法を実行するためのコンピュータ実行可能命令を格納しているコンピュータ可読記憶媒体。
【国際調査報告】