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

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

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

特許7532660ビデオ復号化方法、装置、記憶媒体及びコンピュータ・プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-02
(45)【発行日】2024-08-13
(54)【発明の名称】ビデオ復号化方法、装置、記憶媒体及びコンピュータ・プログラム
(51)【国際特許分類】
   H04N 19/70 20140101AFI20240805BHJP
   H04N 19/30 20140101ALI20240805BHJP
   H04N 19/597 20140101ALI20240805BHJP
【FI】
H04N19/70
H04N19/30
H04N19/597
【請求項の数】 11
(21)【出願番号】P 2023519995
(86)(22)【出願日】2022-06-28
(65)【公表番号】
(43)【公表日】2023-10-18
(86)【国際出願番号】 US2022073239
(87)【国際公開番号】W WO2023279010
(87)【国際公開日】2023-01-05
【審査請求日】2023-03-31
(31)【優先権主張番号】63/215,944
(32)【優先日】2021-06-28
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/850,581
(32)【優先日】2022-06-27
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】チョイ,ビヨンドゥ
(72)【発明者】
【氏名】ウェンジャー,ステファン
(72)【発明者】
【氏名】リー,シャン
(72)【発明者】
【氏名】リウ,シャン
【審査官】岩井 健二
(56)【参考文献】
【文献】Rajan Joshi, Jizheng Xu, Shan Liu, and Yan Ye,High Efficiency Video Coding (HEVC) Screen Content Coding: Draft 3,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JCTVC-T1005,20th Meeting: Geneva, CH,2015年,G.14.2.3, G.14.2.7, G.14.3.3, G.14.3.7
【文献】Ye-Kui Wang, Yang and Wang, Li Zhang1,AHG9: On the MAI, DRI, and ACI SEI messages and their interactions with the SDI SEI message,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29,JVET-V0064-v1,22nd Meeting, by teleconference,2021年04月,pp.1-8
【文献】Byeongdoo Choi, Stephan Wenger, and Shan Liu,AHG9: Multiview view position SEI message,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29,JVET-W0078,23rd Meeting, by teleconference,,2021年07月,pp.1-3
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
ビデオ・デコーダにおけるビデオ復号化方法であって、
コーディングされたビデオ・シーケンス(CVS)におけるそれぞれのレイヤの視点に関連するピクチャを、ビットストリームから復号化するステップと、
第1の補足エンハンスメント情報(SEI)メッセージと第2のSEIメッセージに基づいて、1次元における表示されるべき前記視点の視点位置を決定する決定ステップであって、前記第1のSEIメッセージはスケーラビリティ次元情報(SDI)を含み、前記SDIは視点の数を示す情報を含み、前記第1のSEIメッセージは各レイヤの視点識別子を含み、前記第2のSEIメッセージはマルチビュー視点位置(MVP)情報を含み、前記MVPは前記1次元に沿った表示順序における視点位置を示す、決定ステップと、
前記1次元における前記視点位置に基づいて、復号化されたピクチャを表示する表示ステップであって、前記ピクチャの復号化順序が前記ピクチャの表示順序と異なる場合、前記復号化されたピクチャを前記表示順序に従って並べ替える表示ステップと
を含み、前記決定ステップは、前記CVSの前記それぞれのレイヤの視点の各々について、
前記それぞれのレイヤの視点に対応する視点識別子を、前記第1のSEIメッセージから導出し、導出された視点識別子及び前記第2のSEIメッセージにおける視点位置変数から、前記1次元における表示されるべきそれぞれの視点位置を決定するステップを含む、方法。
【請求項2】
請求項1に記載の方法において、更に、
前記視点の数を示す第1の値を前記第1のSEIメッセージから導出するステップと、
前記視点の数に関連する第2の値を前記第2のSEIメッセージから取得するステップであって、前記第2の値は前記第1の値と異なる、ステップと、
適合性検査において前記第1の値と1プラス前記第2の値とを比較するステップと
を含む方法。
【請求項3】
請求項1に記載の方法において、前記第2のSEIメッセージは、前記CVSのイントラ・ランダム・アクセス・ポイント(IRAP)アクセス・ユニットに関連付けられている、方法。
【請求項4】
請求項1に記載の方法において、前記視点位置は、前記CVSのアクセス・ユニットに適用されている、方法。
【請求項5】
請求項1に記載の方法において、前記第1のSEIメッセージは前記CVSに含まれていることに基づいて、前記第2のSEIメッセージは前記CVSに含まれており、
前記決定ステップ及び前記表示ステップは、前記第1のSEIメッセージ及び前記第2のSEIメッセージが前記CVSに含まれていることに基づいて実行される、方法。
【請求項6】
請求項1に記載の方法において、前記CVSは、3D参照表示情報を含む第3のSEIメッセージを含み、前記3D参照表示情報は、左視点の視点識別子と、右視点の視点識別子と、参照表示の参照表示幅とを示し、前記方法は、
前記視点の数を示す第1の値を前記第1のSEIメッセージから導出するステップと、
前記視点の数に関連する第3の値を前記第3のSEIメッセージから取得するステップであって、前記第3の値は前記第1の値と異なる、ステップと、
適合性検査において前記第1の値と1プラス前記第3の値とを比較するステップと
を含む方法。
【請求項7】
請求項6に記載の方法において、
前記第3のSEIメッセージは、前記第3のSEIメッセージでシグナリングされる参照表示の数を示し、
前記参照表示の数の最大値は、前記第3のSEIメッセージにおける前記視点の数に関連する前記第3の値に基づいている、方法。
【請求項8】
請求項1に記載の方法において、前記第1のSEIメッセージはSDI SEIメッセージであり、前記第2のSEIメッセージはMVP SEIメッセージである、方法。
【請求項9】
請求項1ないし8のうちの何れか1項に記載の方法を実行するように構成された処理回路を備えるビデオ復号化装置。
【請求項10】
請求項1ないし8のうちの何れか1項に記載の方法を少なくとも1つのプロセッサに実行させるコンピュータ・プログラム。
【請求項11】
請求項10に記載のコンピュータ・プログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 援用
本件出願は、2022年6月27日付で出願された「マルチビュー視点位置補足エンハンスメント情報メッセージ」と題する米国特許出願第17/850,581号に対する優先権を主張しており、その米国特許出願は2021年6月28日付で出願された「コーディングされたビデオ・ストリームに関するマルチビュー視点位置SEIメッセージのための技術」と題する米国仮出願第63/215,944号に対する優先権を主張している。先行する出願の開示内容は全体的に本件に援用される。
【0002】
[0002] 技術分野
本開示はビデオ・コーディングに一般的に関連する実施形態を説明している。
【背景技術】
【0003】
[0003] 背景
本件で行われる背景の説明は、本開示の状況を一般的に提示するためのものである。現在の発明者の名の下になされる仕事は、その仕事がこの背景のセクションだけでなく、別の方法で出願時点の先行技術としての適格性を付与されない記述の態様で説明される範囲において、本開示に対する先行技術として、明示的にも暗示的にも認められていない。
【0004】
[0004] 画像及び/又はビデオのコーディング及びデコーディングは、動き補償を伴うインター・ピクチャ予測を用いて実行されることが可能である。非圧縮化されたデジタル画像及び/又はビデオは一連のピクチャを含むことが可能であり、各ピクチャは、例えば1920×1080のルミナンス・サンプル及び関連するクロミナンス・サンプルの空間次元を有する。一連のピクチャは、例えば60ピクチャ/秒、即ち60Hzの固定された又は可変のピクチャ・レート(非公式に、フレーム・レートとして知られている)を有することが可能である。非圧縮化された画像及び/又はビデオは、特定のビットレート要件を有する。例えば、サンプル当たり8ビットの1080p60 4:2:0ビデオ(60Hzのフレーム・レートで1920x1080のルミナンス・サンプル解像度)は、1.5Gbit/sに近い帯域幅を必要とする。このようなビデオの1時間は、600Gバイトを超える記憶スペースを必要とする。
【0005】
[0005] 画像及び/又はビデオのコーディング及びデコーディングの目的の1つは、圧縮による入力画像及び/又はビデオ信号の冗長性の低減であるということができる。圧縮は、場合によっては、2桁以上の大きさで、前述の帯域幅及び/又は記憶スペース要件を低減するのに役立つ可能性がある。本件における説明は、例示的な例としてビデオ符号化/復号化を使用するが、本開示の精神から逸脱することなく、同じ技術が同様な方法で画像の符号化/復号化に適用されることが可能である。ロスレス圧縮及び非ロスレス圧縮の両方、並びにそれらの組み合わせを用いることが可能である。ロスレス圧縮とは、元の信号の正確なコピーが、圧縮された元の信号から再構成することができる技術をいう。非ロスレス圧縮を使用する場合、再構成された信号は、元の信号と同一ではないかもしれないが、元の信号と再構成された信号との間の歪は、再構成された信号が、意図された用途にとって有用となる程度に十分に小さい。ビデオの場合、非ロスレス圧縮が広く用いられている。許容される歪の量は、用途に依存し;例えば、特定の消費者ストリーミング・アプリケーションのユーザーは、テレビ配信アプリケーションのユーザーよりも高い歪に耐え得る可能性がある。達成可能な圧縮比は、より高い許容可能な/耐え得る歪はより高い圧縮比をもたらし得る、ということを反映することが可能である。
【0006】
[0006] ビデオ・エンコーダ及びデコーダは、例えば、動き補償、変換、量子化、及びエントロピー・コーディングを含む幾つもの広範なカテゴリのうちの技術を利用することができる。
【0007】
[0007] ビデオ・コーデック技術は、イントラ・コーディングとして知られる技術を含むことが可能である。イントラ・コーディングでは、サンプル値は、以前に再構成された参照ピクチャからのサンプル又はその他のデータを参照することなく表現される。幾つかのビデオ・コーデックでは、ピクチャはサンプルのブロックに空間的に細分される。サンプルの全てのブロックがイントラ・モードでコーディングされる場合、そのピクチャはイントラ・ピクチャであるとすることが可能である。イントラ・ピクチャ及び独立なデコーダ・リフレッシュ・ピクチャのようなそれらの派生物は、デコーダ状態をリセットするために使用することが可能であり、従って、コーディングされたビデオ・ビットストリーム及びビデオ・セッションにおける第1のピクチャとして、又は静止画像として使用することができる。イントラ・ブロックのサンプルは、変換の作用を受ける可能性があり、変換係数は、エントロピー・コーディングの前に量子化されることが可能である。イントラ予測は、変換前のドメインにおけるサンプル値を最小化する技術である可能性がある。場合によっては、変換後のDC値が小さいほど、及びAC係数が小さいほど、エントロピー・コーディング後にブロックを表すために、所与の量子化ステップ・サイズで必要とされるビット数は少なくなる。
【0008】
[0008] 例えばMPEG-2世代のコーディング技術などで知られているような伝統的なイントラ・コーディングは、イントラ予測を使用していない。しかしながら、幾つかのより新しいビデオ圧縮技術は、例えば、空間的に隣接する、及びデコード順で先行する、データのブロックを符号化/復号化する間に得られた周囲のサンプル・データ及び/又はメタデータから試みる技術を含む。このような技術は、以後「イントラ予測」技術と呼ばれる。少なくとも幾つかのケースでは、イントラ予測は、参照ピクチャからではなく、再構成中の現在のピクチャからの、参照データのみを使用することに留意されたい。
【0009】
[0009] 多くの様々な形式のイントラ予測が存在する可能性がある。1つより多くのそのような技術が所与のビデオ・コーディング技術で使用されることが可能である場合、使用されるその技術は、イントラ予測モードでコーディングされることが可能である。ある場合には、モードは、サブモード及び/又はパラメータを有することが可能であり、それらは、個別にコーディングされることが可能であり、又はモード・コードワードに含めることが可能である。所与のモード、サブモード、及び/又はパラメータの組み合わせに使用するコードワードは、イントラ予測によるコーディング効率利得に影響を与える可能性があり、従って、コードワードをビットストリームに変換するために使用されるエントロピー・コーディング技術にも同様に影響を与える可能性がある。
【0010】
[0010] イントラ予測の所定のモードがH.264で導入され、H.265で改良され、共同探索モデル(JEM)、多用途ビデオ・コーディング(VVC)、ベンチマーク・セット(BMS)のような新しいコーディング技術で更に改良されている。既に利用可能なサンプルに属する隣接するサンプル値を使用して、予測子ブロック(predictor block)を形成することが可能である。隣接するサンプルのサンプル値は、ある方向に従って、予測子ブロックにコピーされる。使用中の方向に対する参照は、ビットストリームでコーディングされることが可能であり、或いはそれ自身予測されることが可能である。
【0011】
[0011] 図1Aを参照すると、右下に示されているものは、(35個のイントラ・モードのうちの33個の角度モードに対応する)H.265の33個の可能な予測子の方向から分かる9個の予測子方向のサブセットである。矢印が収束する点(101)は、予測されるサンプルを表す。矢印は、サンプルが予測される方向を示す。例えば、矢印(102)は、サンプル(101)が、水平から45度の角度で右上に向かう1サンプル又は複数サンプルから、予測されることを示す。同様に、矢印(103)は、サンプル(101)が、水平から22.5度の角度でサンプル(101)の左下に向かう1サンプル又は複数サンプルから、予測されることを示す。
【0012】
[0012] 図1Aを更に参照すると、左上に4×4サンプルの正方形ブロック(104)が示されている(太い破線で示されている)。正方形ブロック(104)は16個のサンプルを含み、各サンプルは「S」と、Y次元におけるその位置(例えば、行インデックス)と、X次元におけるその位置(例えば、列インデックス)とでラベル付けされている。例えば、サンプルS21は、Y次元で(上から)2番目のサンプルであって、X次元で(左から)1番目のサンプルである。同様に、サンプルS44は、Y及びX次元の両方においてブロック(104)内で4番目のサンプルである。ブロックは4×4サンプルのサイズであるので、S44は右下にある。更に、同様の番号付け方式に従った参照サンプルが示されている。参照サンプルは、Rと、ブロック(104)に対するそのY位置(例えば、行インデックス)と、X位置(列インデックス)とでラベル付けされている。H.264とH.265の両方において、予測サンプルは再構成中のブロックに隣接しており;従って、負の値を使用する必要はない。
【0013】
[0013] シグナリングされる予測方向によって割り当てられるような、隣接するサンプルから参照サンプル値をコピーすることによって、イントラ・ピクチャ予測を行うことができる。例えば、コーディングされたビデオ・ビットストリームが、このブロックに関し、矢印(102)に一致する予測方向を示すシグナリングを含んでいると仮定する-即ち、サンプルは、水平から45度の角度で右上に向かう1つの予測サンプル又は複数のサンプルから予測される。その場合、サンプルS41,S32,S23,及びS14は、同じ参照サンプルR05から予測される。そして、サンプルS44は、参照サンプルR08から予測される。
【0014】
[0014] 場合によっては、参照サンプルを計算するために、複数の参照サンプルの値が、例えば補間によって組み合わせられてもよい;特に、方向が45度で均等に割り切れない場合にはなおさらである。
【0015】
[0015] 可能な方向の数は、ビデオ・コーディング技術が発達するにつれて増えてきた。H.264(2003年)では、9つの異なる方向を表すことができた。これは、H.265(2013年)では33に増加し、本開示の時点におけるJEM/VVC/BMSは、65個までの方向をサポートすることができる。最も可能性の高い方向を同定するために実験が行われ、エントロピー・コーディングにおける特定の技術が、より可能性の低い方向に対して特定のペナルティを受け入れながら、少ないビット数で、それらの可能性のある方向を表現するために使用される。更に、方向それ自体は、隣接する既に復号化されたブロックで使用された隣接する方向から、しばしば予測することが可能である。
【0016】
[0016] 図1Bは、時を経て増加している予測方向の数を示すために、JEMに従う65個のイントラ予測方向を示す概略図(105)を示す。
【0017】
[0017] 方向を表すコーディングされたビデオ・ビットストリームにおけるイントラ予測方向ビットのマッピングは、ビデオ・コーディング技術ごとに異なる可能性があり;例えば、予測方向の単純な直接的なマッピングから、イントラ予測モード、コードワード、最確モードを含む複雑な適応スキーム、及び類似の技術まで、広がっている可能性がある。しかしながら、どのような場合でも、ビデオ・コンテンツにおいて、特定の他の方向よりも統計的に起こりにくい特定の方向が存在する可能性がある。ビデオ圧縮のゴールは、冗長性の低減であるので、これらの起こりそうにない方向は、良好に動作するビデオ・コーディング技術では、より可能性の高い方向よりも多いビット数で表現されるであろう。
【0018】
[0018] 動き補償は、非ロスレス圧縮技術である可能性があり、動きベクトル(以下、MVとする)で示される方向に空間的にシフトした後に、以前に再構成されたピクチャ又はその一部(参照ピクチャ)からのサンプル・データのブロックが、新たに再構成されるピクチャ又はピクチャの一部分の予測に使用される技術に関連する可能性がある。場合によっては、参照ピクチャは、現在再構成中のピクチャと同じである可能性がある。MVは、2つの次元X及びY、又は3次元を有する可能性があり、第3の次元は、使用中の参照ピクチャの指示である(後者は、間接的に、時間次元であるとすることが可能である)。
【0019】
[0019] 一部のビデオ圧縮技術では、サンプル・データの特定のエリアに適用可能なMVは、他のMVから、例えば、再構成中のエリアに空間的に隣接するサンプル・データの他のエリアに関連するものであって復号化の順番でそのMVに先行するものから、予測することが可能である。このようにすると、MVをコーディングするために必要なデータ量を大幅に削減することができ、それによって冗長性を除去し、圧縮を高めることができる。例えば、カメラ(ナチュラル・ビデオとして知られる)から導出される入力ビデオ信号をコーディングする際に、単一のMVが適用可能であるエリアよりも大きなエリアが、同様な方向に移動する統計的な尤度が存在し、従って場合によっては、隣接するエリアのMVから導出される同様な動きベクトルを用いて予測することが可能であるので、MV予測は効果的に機能する可能性がある。これは、与えられたエリアに対して、周囲のMVから予測されるMVに類似する又は同一であると見出されるMVをもたらし、それは、エントロピー・コーディングの後に、MVを直接的にコーディングする場合に使用されるものよりも、より少ないビット数で表現されることが可能である。場合によっては、MV予測は、元の信号(即ち、サンプル・ストリーム)から導出された信号(即ち、MV)のロスレス圧縮の例である可能性がある。他の場合に、MV予測それ自体は、例えば、幾つかの周囲のMVから予測子を計算する際に、丸め誤差に起因して非ロスレスである可能性がある。
【0020】
[0020] 様々なMV予測メカニズムは、H.265/HEVC(ITU-T Rec.H.265,“High Efficiency Video Coding”,December 2016)に記載されている。H.265が提供する多くのMV予測メカニズムのうち、本件で説明されるものは、今後「空間マージ(spatial merge)」と呼ばれる技術である。
【0021】
[0021] 図2を参照すると、現在のブロック(201)は、空間的にシフトされた同じサイズの以前のブロックから予測可能であるように動き探索プロセス中にエンコーダによって発見されているサンプルを含む。そのMVを直接的にコーディングする代わりに、MVは、1つ以上の参照ピクチャに関連付けられたメタデータから、例えばA0,A1,及びB0,B1,B2と示される5つの周辺サンプル(それぞれ202ないし206)の何れかに関連付けられたMVを使用して、(復号化の順序で)最新の参照ピクチャから、導出されることが可能である。H.265では、MV予測は、隣接ブロックが使用しているのと同じ参照ピクチャからの予測子を使用することができる。
【発明の概要】
【0022】
[0022] 開示の態様は、ビデオ符号化及び復号化のための方法及び装置を提供する。一部の例において、ビデオ復号化装置は処理回路を含む。処理回路は、コーディングされたビデオ・シーケンス(coded video sequence,CVS)におけるそれぞれのレイヤの視点に関連するピクチャを、ビットストリームから復号化するように構成されている。処理回路は、第1の補足エンハンスメント情報(supplemental enhancement information,SEI)メッセージと第2のSEIメッセージに基づいて、1次元における表示されるべき視点位置を決定することが可能である。第1のSEIメッセージはスケーラビリティ次元情報(scalability dimension information,SDI)を含み、第2のSEIメッセージはマルチビュー視点位置(multiview view position,MVP)情報を含む。処理回路は、1次元における視点位置に基づいて、復号化されたピクチャを表示することが可能である。
【0023】
[0023] 実施形態において、CVSのそれぞれのレイヤの視点の各々について、処理回路は、第1のSEIメッセージに基づいて、それぞれの視点の視点識別子を決定することが可能である。処理回路は、第2のSEIメッセージにおける視点位置変数と、決定された視点識別子とに基づいて、1次元における表示されるべきそれぞれの視点位置を決定することが可能である。
【0024】
[0024] 実施形態において、処理回路は、視点の数を示す第1の値を、第1のSEIメッセージから導出する。処理回路は、視点の数に関連する第2の値を、第2のSEIメッセージから取得することが可能である。第2の値は第1の値とは異なる。処理回路は、適合性検査において第1の値と1プラス第2の値とを比較することが可能である。
【0025】
[0025] 実施形態において、第2のSEIメッセージは、CVSのイントラ・ランダム・アクセス・ポイント(intra random access point,IRAP)アクセス・ユニットに関連付けられている。
【0026】
[0026] 実施形態において、視点位置は、CVSのアクセス・ユニットに適用されている。
【0027】
[0027] 実施形態において、第1のSEIメッセージはCVSに含まれていることに基づいて、第2のSEIメッセージはCVSに含まれている。第1のSEIメッセージ及び第2のSEIメッセージがCVSに含まれていることに基づいて、決定及び表示が実行される。
【0028】
[0028] 実施形態において、CVSは、3D参照表示情報を含む第3のSEIメッセージを含む。3D参照表示情報は、左視点の視点識別子と、右視点の視点識別子と、参照表示の参照表示幅とを示す。処理回路は、視点の数を示す第1の値を、第1のSEIメッセージから導出することが可能である。処理回路は、視点の数に関連する第3の値を、第3のSEIメッセージから取得することが可能である。第3の値は第1の値と異なる。処理回路は、適合性検査において第1の値と1プラス第3の値とを比較することが可能である。
【0029】
[0029] 実施形態において、第3のSEIメッセージは、第3のSEIメッセージでシグナリングされる参照表示の数を示す。参照表示の数の最大値は、第3のSEIメッセージにおける視点の数に関連する第3の値に基づいている。
【0030】
[0030] 実施形態において、第1のSEIメッセージはSDI SEIメッセージであり、第2のSEIメッセージはMVP SEIメッセージである。
【0031】
[0031] 本開示の態様はまた、ビデオ復号化方法を実行するために、少なくとも1つのプロセッサにより実行することが可能なプログラムを記憶する非一時的なコンピュータ読み取り可能な記憶媒体も提供する。
【図面の簡単な説明】
【0032】
[0032] 開示される対象事項の更なる特徴、性質、及び種々の利点は、以下の詳細な説明及び添付の図面から更に明らかになるであろう。
図1A】[0033] 図1Aは、イントラ予測モードの例示的なサブセットの概略図である。
図1B】[0034] 図1Bは、例示的なイントラ予測方向の例である。
図2】[0035] 図2は、実施形態における現在のブロック(201)及び周囲のサンプルを示す。
図3】[0036] 図3は、実施形態による通信システム(300)の簡略化されたブロック図の概略図である。
図4】[0037] 図4は、実施形態による通信システム(400)の簡略化されたブロック図の概略図である。
図5】[0038] 図5は、実施形態によるデコーダの簡略化されたブロック図の概略図である。
図6】[0039] 図6は、実施形態によるエンコーダの簡略化されたブロック図の概略図である。
図7】[0040] 図7は、他の実施形態によるエンコーダのブロック図を示す。
図8】[0041] 図8は、他の実施形態によるデコーダのブロック図を示す。
図9】[0042] 図9は、本開示の実施形態によるオート・ステレオスコピック・ディスプレイの図を示す。
図10A】[0043] 図10Aは、本開示の実施形態によるマルチビュー視点位置に基づいてピクチャを並べ直す例を示す。
図10B】[0044] 図10Bは、本開示の実施形態によるマルチビュー視点位置に基づいてピクチャを並べ直す一例を示す。
図10C】[0044] 図0Cは、本開示の実施形態によるマルチビュー視点位置に基づいてピクチャを並べ直す一例を示す。
図11】[0045] 図11は、本開示の実施形態による多視点ビデオに対する視点位置を示すための補足エンハンスメント情報(SEI)メッセージにおけるシンタックス例を示す。
図12】[0046] 図12は、本開示の実施形態による3D参照表示情報を示すSEIメッセージにおけるシンタックス例を示す。
図13】[0047] 図13は、本開示の実施形態による符号化プロセスの概要を示すフロー・チャートを示す。
図14】[0048] 図14は、本開示の実施形態による復号化プロセスの概要を示すフロー・チャートを示す。
図15】[0049] 図15は、実施形態によるコンピュータ・システムの概略図である。
【発明を実施するための形態】
【0033】
[0050] 図3は、本開示の一実施形態による通信システム(300)の簡略化されたブロック図を示す。通信システム(300)は、例えばネットワーク(350)を介して互いに通信することができる複数の端末デバイスを含む。例えば、通信システム(300)は、ネットワーク(350)を介して相互接続された第1ペアの端末デバイス(310)及び(320)を含む。図3の例では、第1ペアの端末デバイス(310)及び(320)は、データの一方向伝送を行う。例えば、端末デバイス(310)は、ネットワーク(350)を介する他の端末デバイス(320)への伝送のために、ビデオ・データ(例えば、端末デバイス(310)によって捕捉されたビデオ・ピクチャのストリーム)をコーディングすることができる。符号化されたビデオ・データは、1つ以上のコーディングされたビデオ・ビットストリームの形態で伝送されることが可能である。端末デバイス(320)は、コーディングされたビデオ・データをネットワーク(350)から受信し、コーディングされたビデオ・データを復号化して、ビデオ・ピクチャを復元し、復元されたビデオ・データに従ってビデオ・ピクチャを表示することができる。一方向性データ伝送は、媒体サービング・アプリケーション等において一般的なものであってもよい。
【0034】
[0051] 別の例では、通信システム(300)は、例えば、ビデオ・カンファレンス中に発生する可能性があるコーディングされたビデオ・データの双方向伝送を行う第2ペアの端末デバイス(330)及び(340)を含む。データの双方向伝送に関し、例えば、端末デバイス(330)及び(340)の各端末デバイスは、ネットワーク(350)を介して端末デバイス(330)及び(340)のうちの他方の端末デバイスへ伝送するために、ビデオ・データ(例えば、端末デバイスによって捕捉されたビデオ・ピクチャのストリーム)をコーディングすることができる。端末デバイス(330)及び(340)の各端末デバイスもまた、端末デバイス(330)及び(340)のうちの他方の端末デバイスによって伝送されたコーディングされたビデオ・データを受信することが可能であり、コーディングされたビデオ・データを復号化してビデオ・ピクチャを復元することが可能であり、復元されたビデオ・データに従って、アクセス可能なディスプレイ・デバイスでビデオ・ピクチャを表示することが可能である。
【0035】
[0052] 図3の例では、端末デバイス(310),(320),(330)及び(340)は、サーバー、パーソナル・コンピュータ、及びスマートフォンとして示されているが、本開示の原理はそのように限定されなくてよい。本開示の実施形態は、ラップトップ・コンピュータ、タブレット・コンピュータ、メディア・プレーヤ、及び/又は専用のビデオ・カンファレンス装置を用いる用途を見出している。ネットワーク(350)は、例えば有線(配線された)及び/又は無線通信ネットワークを含む、コーディングされたビデオ・データを端末デバイス(310),(320),(330)及び(340)の間で運ぶ任意数のネットワークを表現する。通信ネットワーク(350)は、回線交換及び/又はパケット交換型のチャネルでデータを交換することができる。代表的なネットワークは、テレコミュニケーション・ネットワーク、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、及び/又はインターネットを含む。本開示の目的に関し、ネットワーク(350)のアーキテクチャ及びトポロジーは、以下において説明されない限り、本開示の動作にとって重要ではない可能性がある。
【0036】
[0053] 図4は、開示される対象事項の適用例として、ストリーミング環境におけるビデオ・エンコーダ及びビデオ・デコーダの配置を示す。開示される対象事項は、例えば、ビデオ・カンファレンス、デジタルTV、圧縮されたビデオのデジタル・メディア(CD、DVD、メモリ・スティック等を含む)への記憶などを含む、他のビデオの利用が可能なアプリケーションにも等しく適用することが可能である。
【0037】
[0054] ストリーミング・システムは、ビデオ・ソース(401)、例えばデジタル・カメラを含むことが可能なキャプチャ・サブシステム(413)であって、例えば非圧縮のビデオ・ピクチャ(402)のストリームを生成することが可能なものを含んでもよい。一例では、ビデオ・ピクチャのストリーム(402)は、デジタル・カメラによって撮影されたサンプルを含む。符号化されたビデオ・データ(404)(又はコーディングされたビデオ・ビットストリーム)と比較して、より多くのデータ量を強調するために太い線として描かれているビデオ・ピクチャのストリーム(402)は、ビデオ・ソース(401)に結合されたビデオ・エンコーダ(403)を含む電子デバイス(420)によって処理されることが可能である。ビデオ・エンコーダ(403)は、ハードウェア、ソフトウェア、又はそれらの組み合わせを含み、以下で詳細に説明されるような開示される対象事項の態様を動作可能にする又は実現することが可能である。ビデオ・ピクチャ(402)のストリームと比較して、より少ないデータ量を強調するために細い線として描かれている符号化されたビデオ・データ(404)(又は符号化されたビデオ・ビットストリーム(404))は、将来の使用のためにストリーミング・サーバー(405)に記憶されることが可能である。図4のクライアント・サブシステム(406)及び(408)のような1つ以上のストリーミング・クライアント・サブシステムは、ストリーミング・サーバー(405)にアクセスして、符号化されたビデオ・データ(404)のコピー(407)及び(409)を取り出すことができる。クライアント・サブシステム(406)は、例えば電子デバイス(430)内にビデオ・デコーダ(410)を含むことができる。ビデオ・デコーダ(410)は、符号化されたビデオ・データの到来するコピー(407)を復号化し、ディスプレイ(412)(例えば、ディスプレイ・スクリーン)又はその他のレンダリング・デバイス(不図示)でレンダリングすることができるビデオ・ピクチャの出力ストリーム(411)を生成する。幾つかのストリーミング・システムでは、符号化されたビデオ・データ(404),(407),及び(409)(例えば、ビデオ・ビットストリーム)は、特定のビデオ・コーディング/圧縮規格に従って符号化することが可能である。これらの規格の例は、ITU-T勧告H.265を含む。一例において、開発中のビデオ・コーディング規格は、多用途ビデオ・コーディング(VVC)として非公式に知られている。開示される対象事項はVVCの状況で使用されてもよい。
【0038】
[0055] 電子デバイス(420)及び(430)は、他のコンポーネント(図示せず)を含むことが可能である、ということに留意を要する。例えば、電子デバイス(420)は、ビデオ・デコーダ(不図示)を含むことが可能であり、電子デバイス(430)は、ビデオ・エンコーダ(不図示)を含むことも可能である。
【0039】
[0056] 図5は本開示の一実施形態によるビデオ・デコーダ(510)のブロック図を示す。ビデオ・デコーダ(510)は、電子デバイス(530)に含まれることが可能である。電子デバイス(530)は、受信機(531)(例えば、受信回路)を含むことが可能である。ビデオ・デコーダ(510)は、図4の例におけるビデオ・デコーダ(410)の代わりに使用することが可能である。
【0040】
[0057] 受信機(531)は、ビデオ・デコーダ(510)によって復号化されることになっている1つ以上のコーディングされたビデオ・シーケンスを受信することが可能であり;同じ又は別の実施形態において、各々のコーディングされたビデオ・シーケンスの復号化が、他のコーディングされたビデオ・シーケンスから独立している場合には、一度に1つのコーディングされたビデオ・シーケンスを受信することが可能である。コーディングされたビデオ・シーケンスは、チャネル(501)から受信することが可能であり、このチャネルは、符号化されたビデオ・データを記憶するストレージ・デバイスへのハードウェア/ソフトウェア・リンクであってもよい。受信機(531)は、符号化されたビデオ・データを、他のデータ、例えばコーディングされたオーディオ・データ及び/又は補助的なデータ・ストリームとともに受信することが可能であり、これらのデータは、それぞれのエンティティ(不図示)を使用して転送されることが可能である。受信機(531)は、コーディングされたビデオ・シーケンスを他のデータから分離することができる。ネットワーク・ジッタに対処するために、バッファ・メモリ(515)は、受信機(531)とエントロピー・デコーダ/パーサー(520)(以後「パーサー(520)」と言及する)との間に結合されてもよい。特定のアプリケーションでは、バッファ・メモリ(515)はビデオ・デコーダ(510)の一部である。他の場合において、それはビデオ・デコーダ(510)の外側にある可能性がある(不図示)。更に別の例では、例えばネットワーク・ジッタに対処するために、ビデオ・デコーダ(510)の外側にバッファ・メモリ(不図示)が、更には、例えば再生タイミングを取り扱うためにビデオ・デコーダ(510)の内側に別のバッファ・メモリ(515)が、存在することが可能である。受信機(531)が、十分な帯域幅及び制御可能性を有するストア/フォワード・デバイスから、又は同期ネットワークから、データを受信している場合、バッファ・メモリ(515)は必要とされない可能性があるか、又は小さくすることが可能である。インターネットのようなベスト・エフォート・パケット・ネットワークでの使用のために、バッファ・メモリ(515)が必要とされるかもしれず、それは比較的大きい可能性があり、有利なことに適応的なサイズであるとすることが可能であり、また、ビデオ・デコーダ(510)の外側のオペレーティング・システム又は類似の要素(不図示)において少なくとも部分的に実装されてもよい。
【0041】
[0058] ビデオ・デコーダ(510)は、コーディングされたビデオ・シーケンスからシンボル(521)を再構成するためにパーサー(520)を含むことが可能である。これらのシンボルのカテゴリは、ビデオ・デコーダ(510)の動作を管理するために使用される情報、及び潜在的には、図5に示されているように、電子デバイス(530)の一体化部分ではないが電子デバイス(530)に結合されることが可能なレンダリング・デバイス(512)(例えば、ディスプレイ・スクリーン)のようなレンダリング・デバイスを制御するための情報を含む。レンダリング・デバイスの制御情報は、補足エンハンスメント情報(Supplemental Enhancement Information,SEI)メッセージ又はビデオ・ユーザビリティ情報(Video Usability Information,VUI)パラメータ・セット・フラグメント(不図示)の形態におけるものであってもよい。パーサー(520)は、受信されるコーディングされたビデオ・シーケンスを解析/エントロピー復号化することが可能である。コーディングされるビデオ・シーケンスのコーディングは、ビデオ・コーディング技術又は規格に従うことが可能であり、可変長コーディング、ハフマン・コーディング、コンテキストの影響を伴う又は伴わない算術コーディング等を含む種々の原理に従うことが可能である。パーサー(520)は、グループに対応する少なくとも1つのパラメータに基づいて、ビデオ・デコーダ内のピクセルのサブグループの少なくとも1つに対するサブグループ・パラメータのセットを、コーディングされたビデオ・シーケンスから抽出することができる。サブグループは、ピクチャ・グループ(Groups of Pictures,GOP)、ピクチャ、タイル、スライス、マクロブロック、コーディング・ユニット(CU)、ブロック、変換ユニット(TU)、予測ユニット(PU)等を含むことが可能である。パーサー(520)はまた、変換係数、量子化パラメータ値、動きベクトル等のようなコーディングされたビデオ・シーケンス情報から抽出することも可能である。
【0042】
[0059] パーサー(520)は、シンボル(521)を生成するために、バッファ・メモリ(515)から受信したビデオ・シーケンスに対してエントロピー復号化/解析処理を実行することが可能である。
【0043】
[0060] シンボル(521)の再構成は、コーディングされたビデオ・ピクチャ又はその一部分のタイプ(インター及びイントラ・ピクチャ、インター及びイントラ・ブロック)及びその他の要因に応じて、複数の異なるユニットを含むことが可能である。どのユニットがどのように包含されるかは、コーディングされたビデオ・シーケンスからパーサー(520)によって解析されたサブグループ制御情報によって制御されることが可能である。パーサー(520)と以下の複数のユニットとの間のこのようなサブグループ制御情報の流れは、明確性のために描かれていない。
【0044】
[0061] 既に述べた機能ブロックを超えて更に、ビデオ・デコーダ(510)は、以下に説明するような複数の機能ユニットに概念的に細分されることが可能である。商業的制約の下で動作する実用的な実装では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的に互いに統合されることが可能である。しかしながら、開示される対象事項を説明する目的のために、以下の機能ユニットへの概念的な細分は適切なことである。
【0045】
[0062] 第1のユニットは、スケーラ/逆変換ユニット(551)である。スケーラ/逆変換ユニット(551)は、量子化された変換係数だけでなく制御情報(どの変換を使用するか、ブロック・サイズ、量子化因子、量子化スケーリング行列などを含む)も、パーサー(520)からシンボル(521)として受信する。スケーラ/逆変換ユニット(551)は、アグリゲータ(555)に入力されることが可能なサンプル値を含むブロックを出力することが可能である。
【0046】
[0063] 場合によっては、スケーラ/逆変換(551)の出力サンプルは、イントラ・コーディングされたブロック:即ち、以前に再構成されたピクチャからの予測情報を使用していないが、現在のピクチャの以前に再構成された部分からの予測情報を使用することができるブロック、に関連する可能性がある。このような予測情報は、イントラ・ピクチャ予測ユニット(552)によって提供することが可能である。場合によっては、イントラ・ピクチャ予測ユニット(552)は、現在ピクチャ・バッファ(558)から取り出された既に再構成された周囲の情報を使用して、再構成中のブロックと同じサイズ及び形状のブロックを生成する。現在ピクチャ・バッファ(558)は、例えば、部分的に再構成された現在のピクチャ及び/又は完全に再構成された現在のピクチャをバッファリングする。アグリゲータ(555)は、場合によっては、サンプル毎に、イントラ予測ユニット(552)が生成した予測情報を、スケーラ/逆変換ユニット(551)によって提供されるような出力サンプル情報に加える。
【0047】
[0064] それ以外の場合には、スケーラ/逆変換ユニット(551)の出力サンプルは、インター・コーディングされた、動き補償される可能性のあるブロックに関連する可能性がある。このような場合において、動き補償予測ユニット(553)は、予測に使用されるサンプルを取り出すために、参照ピクチャ・メモリ(557)にアクセスすることが可能である。ブロックに関連するシンボル(521)に従って、取り出されたサンプルを動き補償した後に、これらのサンプルは、アグリゲータ(555)によって、スケーラ/逆変換ユニット(551)の出力に加えられ(この場合は、残差サンプル又は残差信号と呼ばれる)出力サンプル情報を生成する。動き補償予測ユニット(553)が予測サンプルをフェッチする元である参照ピクチャ・メモリ(557)内のアドレスは、例えばX、Y、及び参照ピクチャ成分を有することが可能であるシンボル(521)の形態で、動き補償予測ユニット(553)にとって利用可能な動きベクトルによって制御されることが可能である。また、動き補償は、サブ・サンプルの正確な動きベクトルが使用される場合に、参照ピクチャ・メモリ(557)から取り出されるようなサンプル値の補間、動きベクトル予測メカニズム等を含むことが可能である。
【0048】
[0065] アグリゲータ(555)の出力サンプルは、ループ・フィルタ・ユニット(556)内の様々なループ・フィルタリング技術の影響を受けることが可能である。ビデオ圧縮技術は、コーディングされたビデオ・シーケンス(コーディングされたビデオ・ビットストリームとも呼ばれる)に含まれるパラメータであって、パーサー(520)からのシンボル(521)としてループ・フィルタ・ユニット(556)にとって利用可能にされるパラメータ、によって制御されるループ内フィルタ技術を含むことが可能であるが、ループ内フィルタ技術は、コーディングされたピクチャ又はコーディングされたビデオ・シーケンスの(復号化の順番で)以前の部分の復号化の間に取得されたメタ情報に応答することが可能であるとともに、以前に再構成されたループ・フィルタリングされたサンプル値にも応答することが可能である。
【0049】
[0066] ループ・フィルタ・ユニット(556)の出力は、レンダリング・デバイス(512)に出力されることが可能であるだけでなく、将来のインター・ピクチャ予測に使用するために参照ピクチャ・メモリ(557)に格納することも可能なサンプル・ストリームであるとすることが可能である。
【0050】
[0067] 所定のコーディングされたピクチャは、いったん完全に再構成されると、将来の予測のための参照ピクチャとして使用することが可能である。例えば、現在のピクチャに対応するコーディングされたピクチャが完全に再構成され、コーディングされたピクチャが(例えば、パーサー(520)によって)参照ピクチャとして識別されると、現在ピクチャ・バッファ(558)は参照ピクチャ・メモリ(557)の一部となることが可能であり、新鮮な現在ピクチャ・バッファが、以後のコーディングされたピクチャの再構成を開始する前に、再割り当てされることが可能である。
【0051】
[0068] ビデオ・デコーダ(510)は、ITU-T Rec.H.265のような規格における所定のビデオ圧縮技術に従って復号化動作を実行することが可能である。コーディングされたビデオ・シーケンスが、ビデオ圧縮技術又は規格のシンタックス、及びビデオ圧縮技術又は規格で文書化されているようなプロファイルの両方に従うという意味で、コーディングされたビデオ・シーケンスは、使用されているビデオ圧縮技術又は規格によって指定されたシンタックスに準拠することが可能である。具体的には、プロファイルは、特定のツールを、そのプロファイルの下で使用できる唯一のツールとして、ビデオ圧縮技術又は規格で使用可能なすべてのツールの中から選択することが可能である。また、コンプライアンスのために必要なことは、コーディングされたビデオ・シーケンスの複雑さが、ビデオ圧縮技術又は規格のレベルによって定義される範囲内にあることである。場合によっては、そのレベルは、最大ピクチャ・サイズ、最大フレーム・レート、最大再構成サンプル・レート(例えば、毎秒メガサンプルの単位で測定される)、最大参照ピクチャ・サイズ等を制限する。レベルによって設定される限界は、場合によっては、コーディングされたビデオ・シーケンスでシグナリングされるHRDバッファ管理のための仮想参照デコーダ(Hypothetical Reference Decoder,HRD)仕様及びメタデータによって更に制限される可能性がある。
【0052】
[0069] 一実施形態では、受信機(531)は、符号化されたビデオとともに追加的(冗長的)なデータを受信する可能性がある。追加的なデータは、コーディングされたビデオ・シーケンスの一部として含まれる可能性がある。追加的なデータは、データを適切に復号化するため、及び/又は、元のビデオ・データをより正確に再構成するために、ビデオ・デコーダ(510)によって使用されてもよい。追加的なデータは、例えば、時間、空間、又は信号雑音比(SNR)エンハンスメント・レイヤ、冗長スライス、冗長ピクチャ、前方誤り訂正コード等の形態におけるものとすることが可能である。
【0053】
[0070] 図6は、本開示の一実施形態によるビデオ・エンコーダ(603)のブロック図を示す。ビデオ・エンコーダ(603)は、電子デバイス(620)に含まれる。電子デバイス(620)は、送信機(640)(例えば、送信回路)を含む。ビデオ・エンコーダ(603)は、図4の例におけるビデオ・エンコーダ(403)の代わりに使用することが可能である。
【0054】
[0071] ビデオ・エンコーダ(603)は、ビデオ・エンコーダ(603)によってコーディングされることになるビデオ画像を捕捉することが可能なビデオ・ソース(601)(図6の例では電子デバイス(620)の一部ではないもの)から、ビデオ・サンプルを受信することが可能である。別の例では、ビデオ・ソース(601)は、電子デバイス(620)の一部である。
【0055】
[0072] ビデオ・ソース(601)は、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、...)、任意の色空間(例えば、BT.601 YCrCB、RGB、...)、及び任意の適切なサンプリング構造(例えば、YCrCb 4:2:0、YCrCb 4:4:4)であるとすることが可能なデジタル・ビデオ・サンプル・ストリームの形態で、ビデオ・エンコーダ(603)によってコーディングされることになるソース・ビデオ・シーケンスを提供することが可能である。メディア・サービング・システムにおいて、ビデオ・ソース(601)は、事前に準備されたビデオを記憶するストレージ・デバイスであってもよい。ビデオ・カンファレンス・システムでは、ビデオ・ソース(601)は、ローカルな画像情報をビデオ・シーケンスとして捕捉するカメラであってもよい。ビデオ・データは、シーケンスで眺めた場合に動きを伝える複数の個々のピクチャとして提供されてもよい。ピクチャそれ自体は、ピクセルの空間アレイとして組織されることが可能であり、ここで、各ピクセルは、使用中のサンプリング構造、色空間などに応じて、1つ以上のサンプルを含むことが可能である。当業者は、ピクセルとサンプルとの間の関係を容易に理解することが可能である。以下の説明は、サンプルに焦点を当てている。
【0056】
[0073] 一実施形態によれば、ビデオ・エンコーダ(603)は、リアルタイムに、又はアプリケーションによって要求される他の任意の時間制約の下で、ソース・ビデオ・シーケンスのピクチャを、コーディングされたビデオ・シーケンス(643)にコーディングして圧縮することが可能である。適切なコーディング速度を強いることは、コントローラ(650)の1つの機能である。幾つかの実施形態において、コントローラ(650)は、以下で説明されるように他の機能ユニットを制御し、他の機能ユニットに機能的に結合される。その結合は明確性のために描かれていない。コントローラ(650)によって設定されるパラメータは、レート制御関連パラメータ(ピクチャ・スキップ、量子化器、レート歪最適化技術のラムダ値、...)、ピクチャ・サイズ、グループ・オブ・ピクチャ(GOP)レイアウト、最大動きベクトル探索範囲などを含むことが可能である。コントローラ(650)は、特定のシステム設計のために最適化されたビデオ・エンコーダ(603)に関連する他の適切な機能を有するように構成されることが可能である。
【0057】
[0074] 一部の実施形態では、ビデオ・エンコーダ(603)は、コーディング・ループで動作するように構成される。極端に単純化された説明として、一例では、コーディング・ループは、ソース・コーダ(630)(例えば、コーディングされるべき入力ピクチャ及び参照ピクチャに基づいて、シンボル・ストリームのようなシンボルを生成する責任があるもの)と、ビデオ・エンコーダ(603)に組み込まれた(ローカル)デコーダ(533)とを含むことが可能である。デコーダ(633)は、(リモート)デコーダが生成するのと同様な方法で、サンプル・データを生成するためにシンボルを再構成する(シンボルとコーディングされたビデオ・ビットストリームとの間の任意の圧縮は、開示される対象事項で考慮されるビデオ圧縮技術ではロスレスであるからである)。再構成されたサンプル・ストリーム(サンプル・データ)は、参照ピクチャ・メモリ(634)に入力される。シンボル・ストリームの復号化は、デコーダの位置(ローカル又はリモート)に依存しないビット・イグザクト(bit-exact)な結果をもたらすので、参照ピクチャ・メモリ(634)内の内容もまた、ローカル・エンコーダとリモート・エンコーダとの間でビット・イグザクトである。言い換えると、エンコーダの予測部は、デコーダが復号化中に予測を使用する場合に「見る(see)」と思われるものと厳密に同じサンプル値を、参照ピクチャ・サンプルとして「見る」。参照ピクチャ同期のこの基本原理(及び、例えばチャネル・エラーに起因して同期性が維持できない場合には、結果としてドリフトが生じる)は、幾つかの関連技術においても同様に使用される。
【0058】
[0075] 「ローカル」デコーダ(633)の動作は、図5に関連して上記で詳細に既に説明されているビデオ・デコーダ(510)のような「リモート」デコーダのものと同じであるとすることが可能である。しかしながら、図5も簡単に参照すると、シンボルが利用可能であり、且つエントロピー・コーダー(645)及びパーサー(520)によるシンボルのコーディングされたビデオ・シーケンスへの符号化/復号化はロスレスであるとすることが可能であるので、バッファ・メモリ(515)及びパーサー(520)を含むビデオ・デコーダ(510)のエントロピー復号化部は、ローカル・デコーダ(633)では完全には実現されない可能性がある。
【0059】
[0076] 実施形態では、デコーダに存在する解析/エントロピー復号化以外のデコーダ技術は、同一の又は実質的に同一の機能形態で、対応するエンコーダにも存在する。従って、開示される対象事項はデコーダの動作に焦点を当てている。エンコーダ技術の説明は、包括的に説明されたデコーダ技術の逆であるので、省略することが可能である。特定のエリアにおいてのみ、より詳細な説明が以下において行われる。
【0060】
[0077] 動作中に、ソース・コーダ(630)は、幾つかの例において、「参照ピクチャ」として指定されていたビデオ・シーケンスからの1つ以上の以前にコーディングされたピクチャを参照して、入力ピクチャを予測して符号化する、動き補償された予測コーディングを実行することが可能である。このようにして、コーディング・エンジン(632)は、入力ピクチャのピクセル・ブロックと、入力ピクチャに対する予測参照として選択されることが可能な参照ピクチャのピクセル・ブロックとの間の差分をコーディングする。
【0061】
[0078] ローカル・ビデオ・デコーダ(633)は、ソース・コーダー(630)によって生成されたシンボルに基づいて、参照ピクチャとして指定されることが可能なピクチャのコーディングされたビデオ・データを復号化することが可能である。コーディング・エンジン(632)の動作は、有利なことに、非ロスレス・プロセスであってもよい。コーディングされたビデオ・データがビデオ・デコーダ(図6には示されていない)で復号化されることが可能である場合、再構成されたビデオ・シーケンスは、典型的には、幾らかのエラーを伴うソース・ビデオ・シーケンスのレプリカである可能性がある。ローカル・ビデオ・デコーダ(633)は、参照ピクチャに関してビデオ・デコーダによって実行されることが可能な復号化プロセスを繰り返し、再構成された参照ピクチャが、参照ピクチャ・キャッシュ(634)に記憶されることを引き起こすことが可能である。このように、ビデオ・エンコーダ(603)は、遠方端のビデオ・デコーダによって得られる再構成された参照ピクチャとして、共通の内容を有する再構成された参照ピクチャのコピーを、局所的に記憶することが可能である(伝送エラーはないものとする)。
【0062】
[0079] 予測器(635)は、コーディング・エンジン(632)のために予測検索を行うことができる。即ち、コーディングされるべき新しいピクチャについて、予測器(635)は、サンプル・データ(候補の参照ピクセル・ブロックとして)又は所定のメタデータ(参照ピクチャ動きベクトル、ブロック形状など)について、参照ピクチャ・メモリ(534)を検索することができ、これらは、新しいピクチャについての適切な予測参照として役立つ可能性がある。予測器(535)は、適切な予測参照を見出すために、サンプル・ブロック-ピクセル・ブロック・ベースで動作することが可能である。場合によっては、予測器(635)によって得られた探索結果によって決定されるように、入力ピクチャは、参照ピクチャ・メモリ(634)に記憶された複数の参照ピクチャから引き出される予測参照を有する可能性がある。
【0063】
[0080] コントローラ(650)は、例えば、ビデオ・データを符号化するために使用されるパラメータ及びサブグループ・パラメータの設定を含む、ソース・コーダ(630)のコーディング動作を管理することが可能である。
【0064】
[0081] 前述の機能ユニットの全ての出力は、エントロピー・コーダー(645)におけるエントロピー・コーディングを施されることが可能である。エントロピー・コーダー(645)は、ハフマン・コーディング、可変長コーディング、算術コーディング等のような技術に従って、シンボルをロスレス圧縮することによって、種々の機能ユニットによって生成されたシンボルを、コーディングされたビデオ・シーケンスに変換する。
【0065】
[0082] 送信機(640)は、エントロピー・コーダー(645)によって作成されるようなコーディングされたビデオ・シーケンスをバッファリングして、通信チャネル(660)を介する伝送のための準備を行うことが可能であり、通信チャネル(660)は、符号化されたビデオ・データを記憶する記憶デバイスへのハードウェア/ソフトウェア・リンクであってもよい。送信機(640)は、ビデオ・エンコーダ(603)からのコーディングされたビデオ・データを、例えばコーディングされたオーディオ・データ及び/又は補助的なデータ・ストリーム(ソースは不図示)のような伝送されるべき他のデータと併合することが可能である。
【0066】
[0083] コントローラ(650)は、ビデオ・エンコーダ(603)の動作を管理することが可能である。コーディングの間に、コントローラ(650)は、コーディングされたピクチャの各々に、特定のコーディングされたピクチャ・タイプを割り当てることが可能であり、これは、各ピクチャに適用されることが可能なコーディング技術に影響を及ぼす可能性がある。例えば、ピクチャは、しばしば、次のピクチャ・タイプの1つとして割り当てられてもよい。
【0067】
[0084] イントラ・ピクチャ(Iピクチャ)は、シーケンス内の如何なる他のピクチャも予測のソースとして使用せずに、符号化及び復号化されることが可能なものである。幾つかのビデオ・コーデックは、例えば、独立デコーダ・リフレッシュ(Independent Decoder Refresh,“IDR”)ピクチャを含む異なるタイプのイントラ・ピクチャを許容する。当業者は、Iピクチャのこれらの変形例、並びにそれら各自の用途及び特徴を認識している。
【0068】
[0085] 予測ピクチャ(Pピクチャ)は、各ブロックのサンプル値を予測するために、高々1つの動きベクトル及び参照インデックスを用いるイントラ予測又はインター予測を用いて符号化及び復号化されることが可能なものである。
【0069】
[0086] 双-方向予測ピクチャ(Bピクチャ)は、各ブロックのサンプル値を予測するために、高々2つの動きベクトル及び参照インデックスを用いるイントラ予測又はインター予測を用いて符号化及び復号化されることが可能なものである。同様に、複数の予測ピクチャは、1つのブロックの再構成のために、2つより多い参照ピクチャ及び関連するメタデータを使用することが可能である。
【0070】
[0087] ソース・ピクチャは、通常、複数のサンプル・ブロック(例えば、4×4、8×8、4×8、又は16×16サンプルのブロック)に空間的に細分され、ブロック毎にコーディングされることが可能である。ブロックは、ブロックそれぞれのピクチャに適用されるコーディング割り当てによって決定されるように、他の(既にコーディングされた)ブロックを参照して予測的にコーディングされることが可能である。例えば、Iピクチャのブロックは、非予測的にコーディングされてもよいし、又は、それらは同じピクチャの既にコーディングされたブロックを参照して予測的にコーディングされてもよい(空間予測又はイントラ予測)。Pピクチャのピクセル・ブロックは、以前にコーディングされた1つの参照ピクチャを参照して、空間的な予測又は時間的な予測により予測的にコーディングされてもよい。Bピクチャのブロックは、1つ又は2つの以前にコーディングされた参照ピクチャを参照して、空間的な予測又は時間的な予測により予測的にコーディングされてもよい。
【0071】
[0088] ビデオ・エンコーダ(603)は、ITU-T Rec.H.265のような所定のビデオ・コーディング技術又は規格に従ってコーディング動作を行うことが可能である。この動作において、ビデオ・エンコーダ(603)は、入力ビデオ・シーケンスにおける時間的及び空間的な冗長性を活用する予測コーディング動作を含む種々の圧縮動作を実行することが可能である。コーディングされたビデオ・データは、従って、使用されているビデオ・コーディング技術又は規格によって指定されたシンタックスに準拠することが可能である。
【0072】
[0089] 一実施形態では、送信機(640)は、符号化されたビデオとともに追加データを伝送することが可能である。ソース・コーダ(630)は、そのようなデータを、コーディングされたビデオ・シーケンスの一部として含むことが可能である。追加データは、時間的/空間的/SNRエンハンスメント・レイヤ、その他の形式の冗長データ(冗長ピクチャ及びスライス、SEIメッセージ、VUIパラメータ・セット・フラグメント等)を含む可能性がある。
【0073】
[0090] ビデオは、時間シーケンスにおける複数のソース・ピクチャ(ビデオ・ピクチャ)として捕捉されることが可能である。イントラ・ピクチャ予測(しばしば、イントラ予測と略される)は、所与のピクチャにおける空間相関を利用しており、インター・ピクチャ予測は、ピクチャ間の(時間的又はその他の)相関を利用する。一例では、現在のピクチャとして言及される符号化/復号化の下にある特定のピクチャが、ブロックに分割される。現在のピクチャ内のブロックが、ビデオにおいて以前にコーディングされ且つ依然としてバッファリングされている参照ピクチャの中の参照ブロックに類似する場合、現在のピクチャ内のブロックは、動きベクトルと呼ばれるベクトルによってコーディングされることが可能である。動きベクトルは、参照ピクチャ内の参照ブロックを指し、複数の参照ピクチャが使用されている場合には、参照ピクチャを識別する第3の次元を有することが可能である。
【0074】
[0091] 一部の実施形態では、インター・ピクチャ予測に双-予測技術を用いることが可能である。双-予測技術によれば、ビデオ内で現在のピクチャに対して復号化順序で両方とも先行している(ただし、表示順序ではそれぞれ過去及び将来におけるものである可能性がある)第1の参照ピクチャ及び第2の参照ピクチャのような2つの参照ピクチャが使用される。現在のピクチャ内のブロックは、第1の参照ピクチャ内の第1の参照ブロックを指す第1の動きベクトルと、第2の参照ピクチャ内の第2の参照ブロックを指す第2の動きベクトルとによってコーディングされることが可能である。ブロックは、第1の参照ブロックと第2の参照ブロックとの組み合わせによって予測されることが可能である。
【0075】
[0092] 更に、コーディング効率を改善するために、インター・ピクチャ予測にマージ・モード技術を用いることが可能である。
【0076】
[0093] 本開示の幾つかの実施形態によれば、インター・ピクチャ予測及びイントラ・ピクチャ予測のような予測は、ブロックの単位で実行される。例えば、HEVC規格によれば、ビデオ・ピクチャのシーケンス中のピクチャは、圧縮のためにコーディング・ツリー・ユニット(CTU)にパーティショニングされ、ピクチャ内のCTUは、64×64ピクセル、32×32ピクセル、又は16×16ピクセルのような同じサイズを有する。一般に、CTUは、1つのルマCTBと2つのクロマCTBである3つのコーディング・ツリー・ブロック(CTB)を含む。各CTUは、1つ又は複数のコーディング・ユニット(CU)に再帰的に4分木分割されることが可能である。例えば、64×64ピクセルのCTUは、64×64ピクセルの1個のCU、32×32ピクセルの4個のCU、又は16×16ピクセルの16個のCUに分割されることが可能である。一例では、各CUは、インター予測タイプ又はイントラ予測タイプのような、CUの予測タイプを決定するために分析される。CUは、時間的及び/又は空間的な予測可能性に依存して1つ以上の予測ユニット(PU)に分割される。一般に、各PUはルマ予測ブロック(PB)と2つのクロマPBを含む。一実施形態では、コーディング(符号化/復号化)における予測動作は、予測ブロックの単位で実行される。予測ブロックの一例としてルマ予測ブロックを用いると、予測ブロックは、8×8ピクセル、16×16ピクセル、8×16ピクセル、16×8ピクセル等のような、ピクセルに対する値(例えば、ルマ値)のマトリクスを含む。
【0077】
[0094] 図7は本開示の別の実施形態によるビデオ・エンコーダ(703)の図を示す。ビデオ・エンコーダ(703)は、ビデオ・ピクチャのシーケンス内の現在のビデオ・ピクチャ内のサンプル値の処理ブロック(例えば、予測ブロック)を受信し、処理ブロックを、コーディングされたビデオ・シーケンスの一部であるコーディングされたピクチャに符号化するように構成される。一例では、ビデオ・エンコーダ(703)は、図4の例のビデオ・エンコーダ(403)の代わりに使用される。
【0078】
[0095] HEVCの例では、ビデオ・エンコーダ(703)は、8×8サンプルの予測ブロック等のような処理ブロックのサンプル値のマトリクスを受信する。ビデオ・エンコーダ(703)は、イントラ・モード、インター・モード、又は双-予測モードを使用して、例えばレート歪最適化を使用して、処理ブロックが最良にコーディングされるかどうかを決定する。処理ブロックがイントラ・モードでコーディングされるべき場合、ビデオ・エンコーダ(703)は、処理ブロックを、コーディングされたピクチャに符号化するためにイントラ予測技術を使用することが可能であり;処理ブロックがインター・モード又は双-予測モードでコーディングされるべき場合、ビデオ・エンコーダ(703)は、処理ブロックを、コーディングされたピクチャに符号化するために、それぞれインター予測技術又は双-予測技術を使用することが可能である。特定のビデオ・コーディング技術では、マージ・モードがインター予測ピクチャ・サブモードである可能性があり、その場合、動きベクトルは、予測器外部のコーディングされた動きベクトル成分の恩恵なしに、1つ以上の動きベクトル予測子から導出される。特定の他のビデオ・コーディング技術では、対象ブロックに適用可能な動きベクトル成分が存在する可能性がある。一例では、ビデオ・エンコーダ(703)は、処理ブロックのモードを決定するためにモード決定モジュール(不図示)のような他のコンポーネントを含む。
【0079】
[0096] 図7の例では、ビデオ・エンコーダ(703)は、インター・エンコーダ(730)、イントラ・エンコーダ(722)、残差計算器(723)、スイッチ(726)、残差エンコーダ(724)、汎用コントローラ(721)、及びエントロピー・エンコーダ(725)を、図7に示されるように共に結合して含んでいる。
【0080】
[0097] インター・エンコーダ(730)は、現在のブロック(例えば、処理ブロック)のサンプルを受信し、そのブロックを、参照ピクチャ内の1つ以上の参照ブロック(例えば、以前のピクチャのブロック及び以後のピクチャ内のブロック)と比較し、インター予測情報(例えば、インター符号化技術による冗長情報の記述、動きベクトル、マージ・モード情報)を生成し、任意の適切な技術を用いてインター予測情報に基づいて、インター予測結果(例えば、予測ブロック)を計算するように構成される。幾つかの例では、参照ピクチャは、符号化されたビデオ情報に基づいて復号化された復号化済み参照ピクチャである。
【0081】
[0098] イントラ・エンコーダ(722)は、現在のブロック(例えば、処理ブロック)のサンプルを受信し、場合によってはそのブロックを、同じピクチャ内で既にコーディングされたブロックと比較し、変換後に量子化された係数を生成し、場合によってはイントラ予測情報(例えば、1つ以上のイントラ符号化技術に従ったイントラ予測方向情報)も生成するように構成される。一例では、イントラ・エンコーダ(722)はまた、同じピクチャ内のイントラ予測情報及び参照ブロックに基づいて、イントラ予測結果(例えば、予測されたブロック)を計算する。
【0082】
[0099] 汎用コントローラ(721)は、一般的な制御データを決定し、一般的な制御データに基づいてビデオ・エンコーダ(703)の他のコンポーネントを制御するように構成される。一例では、汎用コントローラ(721)は、ブロックのモードを決定し、そのモードに基づいてスイッチ(726)に制御信号を提供する。例えば、モードがイントラ・モードである場合、汎用コントローラ(721)は、スイッチ(726)を制御して、残差計算器(723)による使用のためにイントラ・モード結果を選択し、且つエントロピー・エンコーダ(725)を制御して、イントラ予測情報を選択し、イントラ予測情報をビットストリームに含める;モードがインター・モードである場合、汎用コントローラ(721)は、スイッチ(726)を制御して、残差計算器(723)による使用のためにインター予測結果を選択し、且つエントロピー・エンコーダ(725)を制御して、インター予測情報を選択し、インター予測情報をビットストリームに含める。
【0083】
[0100] 残差計算器(723)は、受信ブロックと、イントラ・エンコーダ(722)又はインター・エンコーダ(730)から選択された予測結果との間の差分(残差データ)を計算するように構成される。残差エンコーダ(724)は、残差データを符号化して変換係数を生成するために、残差データに基づいて動作するように構成される。一例では、残差エンコーダ(724)は、残差データを空間ドメインから周波数ドメインへ変換し、変換係数を生成するように構成される。次いで、変換係数は、量子化された変換係数を得るために量子化処理を施される。様々な実施形態では、ビデオ・エンコーダ(703)はまた、残差デコーダ(728)も含む。残差デコーダ(728)は、逆変換を実行し、復号化された残差データを生成するように構成される。復号化された残差データは、イントラ・エンコーダ(722)及びインター・エンコーダ(730)によって適切に使用することが可能である。例えば、インター・エンコーダ(730)は、復号化された残差データ及びインター予測情報に基づいて、復号化されたブロックを生成することが可能であり、イントラ・エンコーダ(722)は、復号化された残差データ及びイントラ予測情報に基づいて、復号化されたブロックを生成することが可能である。復号化されたブロックは、復号化されたピクチャを生成するために適切に処理され、復号化されたピクチャは、メモリ回路(不図示)内でバッファリングされ、幾つかの例では参照ピクチャとして使用することが可能である。
【0084】
[0101] エントロピー・エンコーダ(725)は、符号化されたブロックを含むようにビットストリームのフォーマットを設定するように構成される。一例では、エントロピー・エンコーダ(725)は、一般的な制御データ、選択された予測情報(例えば、イントラ予測情報又はインター予測情報)、残差情報、及びその他の適切な情報をビットストリームに含めるように構成される。開示される対象事項によれば、インター・モード又は双-予測モードの何れかのマージ・サブモードにおけるブロックをコーディングする場合に、残差情報は存在しないことに留意されたい。
【0085】
[0102] 図8は、本開示の別の実施形態によるビデオ・デコーダ(810)の図を示す。ビデオ・デコーダ(810)は、コーディングされたビデオ・シーケンスの一部であるコーディングされたピクチャを受信し、コーディングされたピクチャを復号化して、再構成されたピクチャを生成するように構成される。一例では、ビデオ・デコーダ(810)は、図4の例におけるビデオ・デコーダ(410)の代わりに使用される。
【0086】
[0103] 図8の例では、ビデオ・デコーダ(810)は、エントロピー・デコーダ(871)、インター・デコーダ(880)、残差デコーダ(873)、再構成モジュール(874)、及びイントラ・デコーダ(872)を、図8に示されるように共に結合して含んでいる。
【0087】
[0104] エントロピー・デコーダ(871)は、コーディングされたピクチャが構築される際のシンタックス要素を表す特定のシンボルを、コーディングされたピクチャから再構成するように構成されることが可能である。このようなシンボルは、例えば、ブロックがコーディングされるモード(例えば、イントラ・モード、インター・モード、双-予測モード、マージ・サブモード又は別のサブモードにおける後者の2つ)、イントラ・デコーダ(872)又はインター・デコーダ(880)それぞれによって予測のために使用される特定のサンプル又はメタデータを識別することが可能な予測情報(例えば、イントラ予測情報又はインター予測情報)、残差情報(例えば、量子化された変換係数の形式におけるもの)等を含むことが可能である。一例において、予測モードがインター又は双-予測モードである場合には、インター予測情報がインター・デコーダ(880)に提供され;予測タイプがイントラ予測タイプである場合には、イントラ予測情報がイントラ・デコーダ(872)に提供される。残差情報は、逆量子化を施されることが可能であり、残差デコーダ(873)に提供される。
【0088】
[0105] インター・デコーダ(880)は、インター予測情報を受信し、インター予測情報に基づいてインター予測結果を生成するように構成される。
【0089】
[0106] イントラ・デコーダ(872)は、イントラ予測情報を受信し、イントラ予測情報に基づいて予測結果を生成するように構成される。
【0090】
[0107] 残差デコーダ(873)は、逆量子化を実行して非-量子化変換係数を抽出し、非-量子化変換係数を処理して残差を周波数ドメインから空間ドメインへ変換するように構成される。残差デコーダ(873)はまた、特定の制御情報(量子化パラメータ(QP)を含む)を必要とする可能性があり、その情報は、エントロピー・デコーダ(871)によって提供されてもよい(これは、僅かな量の制御情報でしかない可能性があるので、データ経路は描かれていない)。
【0091】
[0108] 再構成モジュール(874)は、空間ドメインにおいて、残差デコーダ(873)による出力としての残差と、予測結果(場合によっては、インター又はイントラ予測モジュールによって出力されるもの)とを組み合わせて、再構成されたブロックを形成するように構成されており、再構成されたブロックは再構成されたピクチャの一部である可能性があり、再構成されたピクチャは再構成されたビデオの一部である可能性がある。デブロッキング処理などのような適切な他の処理が、視覚的な品質を改善するために実行される可能性があることに留意を要する。
【0092】
[0109] なお、ビデオ・エンコーダ(403),(603),及び(703)、並びにビデオ・デコーダ(410),(510),及び(810)は、任意の適切な技術を用いて実現することが可能である。実施形態では、ビデオ・エンコーダ(403),(603),及び(703)、並びにビデオ・デコーダ(410),(510),及び(810)は、1つ以上の集積回路を使用して実現することが可能である。別の実施形態では、ビデオ・エンコーダ(403),(603),及び(703)、並びにビデオ・デコーダ(410),(510),及び(810)は、ソフトウェア命令を実行する1つ以上のプロセッサを使用して実現することが可能である。
【0093】
[0110] 本開示の実施形態によれば、ビットストリームは、1つ以上のコーディングされたビデオ・シーケンス(CVS)を含むことが可能である。CVSは、他のCVSから独立してコーディングされることが可能である。各CVSは、1つ以上のレイヤを含むことが可能であり、各レイヤは、特定の品質(例えば、空間解像度)を有するビデオの表現、又は特定の成分の解釈プロパティの表現、例えば、深度マップ、透明度マップ、又は斜視図などであるとすることが可能である。時間次元において、各CVSは1つ以上のアクセス・ユニット(AU)を含むことが可能である。各AUは、同じ時間インスタンスに対応する異なるレイヤの1つ以上のピクチャを含むことが可能である。コーディングされたレイヤのビデオ・シーケンス(coded layer video sequence,CLVS)は、同じレイヤにおけるピクチャ・ユニットのシーケンスを含むことが可能なレイヤごとのCVSである。ビットストリームが複数のレイヤを有する場合、ビットストリーム内のCVSは、各レイヤに対して1つ以上のCLVSを有することが可能である。
【0094】
[0111] 一実施形態では、CVSはAUのシーケンスを含み、ここで、AUのシーケンスは、復号化順序で、イントラ・ランダム・アクセス・ポイント(IRAP)AUとその後に続くゼロ個以上のAU(IRAP AUではないもの)とを含む。一例において、ゼロ個以上のAUが含むものは、全ての後続のAUのうち、IRAP AUである如何なる後続のAUも含まないものである。一例では、CLVSは、ピクチャのシーケンスと、CVSのベース・レイヤの関連する非ビデオ・コーディング・レイヤ(VCL)ネットワーク抽象化レイヤ・ユニットとを含む。
【0095】
[0112] 本開示の態様は、コーディングされたビデオ・ストリームのためのマルチビュー視点位置補足エンハンスメント情報(SEI)メッセージを含む。
【0096】
[0113] 本開示の幾つかの態様によれば、ビデオは、シングル・ビュー(単一視点)ビデオとマルチビュー(多視点)ビデオに分類することができる。例えば、シングル・ビュー・ビデオ(例えば、モノスコピック(monoscopic)ビデオ)は、シーンの単一視点を視聴者に提供する2次元媒体である。マルチビュー・ビデオは、シーンの複数の視点を提供することが可能であり、視聴者に現実感をもたらすことが可能である。一例では、3Dビデオは、人間の視聴者に対応する左視点と右視点のような2つの視点を提供することができる。2つの視点は、光の異なる偏光を使用して同時に又はほぼ同時に表示(提示)されることが可能であり、視聴者は偏光メガネを装着し、その結果、視聴者それぞれの眼が(複数の)視点のそれぞれを受ける。
【0097】
[0114] 別の例では、オート・ステレオスコピック・ディスプレイ(auto-stereoscopic display)デバイスのような表示デバイスは、視聴者の眼の位置に応じて異なるピクチャを生成するように構成されており、視聴のために眼鏡を必要としない。ディスプレイ・デバイスは、グラスレス3Dディスプレイと称することが可能である。
【0098】
[0115] マルチビュー・ビデオは、同時に複数のカメラを使用してシーンを取り込むことによって作成することが可能であり、ここで、複数のカメラは、各カメラが1つの視点からシーンを取り込むように、適切に配置されている。複数のカメラは、複数の視点に対応する複数のビデオ・シーケンスを取り込むことが可能である。より多くの視点を提供するために、より多くのカメラを使用して、視点に関連する多数のビデオ・シーケンスを有するマルチビュー・ビデオを生成することができる。マルチビュー・ビデオは、記憶のための大きな記憶スペース及び/又は伝送のための高い帯域幅を必要とする可能性がある。マルチビュー・ビデオ・コーディング技術は、必要な記憶スペース又は伝送帯域幅を低減するために、当該分野で開発されている。
【0099】
[0116] マルチビュー・ビデオ・コーディングの効率を改善するために、視点間の類似性が活用される。幾つかの実施態様において、ベース視点と称される、複数の視点のうちの1つは、モノスコピック・ビデオのように符号化される。例えば、ベース視点の符号化の際に、イントラ(ピクチャ)及び/又は時間的なインター(ピクチャ)予測が使用される。ベース視点は、イントラ(ピクチャ)予測及びインター(ピクチャ)予測を実行するモノスコピック・デコーダ(例えば、モノスコピック・デコーダ)を使用して復号化されることが可能である。マルチビュー・ビデオにおけるベース視点以外の視点は、従属視点(dependent views)と称することが可能である。従属視点をコーディングするために、イントラ(ピクチャ)及びインター(ピクチャ)予測に加えて、視差補正を伴う視点間予測(inter-view prediction with disparity compensation)が使用されてもよい。一例では、視点間予測において、従属視点での現在のブロックは、同じ時間インスタンスでの別の視点のピクチャからのサンプルの参照ブロックを使用して予測される。参照ブロックの位置は、視差ベクトルによって示される。視点間予測は、動きベクトルが視差ベクトルに置き換えられ且つ時間参照ピクチャが他の視点からの参照ピクチャに置き換えられる点を除いて、インター(ピクチャ)予測と同様である。
【0100】
[0117] 本開示の幾つかの態様によれば、マルチビュー・コーディングは、マルチ・レイヤ・アプローチを採用することが可能である。マルチ・レイヤ・アプローチは、レイヤと呼ばれる、ビデオ・シーケンスの異なるコーディングされた表現(例えば、HEVCコーディングされているもの)を、1つのビットストリームに多重化することが可能である。レイヤは互いに依存している可能性がある。依存性をレイヤ間予測で使用することにより、異なるレイヤ間の類似性を利用することで増加した圧縮パフォーマンスを達成することができる。レイヤは、特定のカメラの観点(perspective)に関連するシーンのテクスチャ、深度、又はその他の補助情報を表現することが可能である。幾つかの例では、同一のカメラの観点に属する全てのレイヤは、視点(view)として示され、同じタイプの情報(例えば、テクスチャ又は深度)を運ぶレイヤは、マルチビュー・ビデオのスコープ内のコンポーネントと呼ばれる。
【0101】
[0118] 本開示の一態様によれば、マルチビュー・ビデオ・コーディングは、既存の単一レイヤ復号化コアとのハイ・レベル・シンタックス(high level syntax,HLS)(例えば、スライス・レベルより高いもの)の追加を含むことが可能である。幾つかの例において、マルチビュー視点コーディングは、スライス・レベルより下の(例えば、HEVCの)単一レイヤ・コーディングに必要とされるシンタックス又は復号化プロセスを変えない。マルチビュー・ビデオ・デコーダを構築するために大きな変更を伴うことなく、既存の実装を再利用することを許容することができる。例えば、マルチビュー・ビデオ・デコーダは、ビデオ・デコーダ(510)又はビデオ・デコーダ(810)に基づいて実現されることが可能である。
【0102】
[0119] 幾つかの例では、同じ取り込み又は表示時間インスタンスに関連する全てのピクチャがAUに含まれ、同じピクチャ・オーダー・カウント(picture order count,POC)を有する。マルチビュー・ビデオ・コーディングは、同じAU内のピクチャからの予測を実行する視点間予測を可能にする。例えば、他の視点から復号化されたピクチャは、現在のピクチャの参照ピクチャ・リストの一方又は両方に挿入されることが可能である。更に、幾つかの例では、動きベクトルは、同じ視点の時間参照ピクチャに関連する場合には、実際の時間的動きベクトルであってもよく、あるいは、視点間参照ピクチャに関連する場合には視差ベクトルであってもよい。ブロック・レベルの動き補償モジュール(例えば、ブロック・レベル符号化ソフトウェア又はハードウェア、ブロック・レベル復号化ソフトウェア又はハードウェア)を使用することが可能であり、これは、動きベクトルが時間的動きベクトルであるか視差ベクトルであるかにかかわらず同じように動作する。
【0103】
[0120] 本開示の一態様によれば、マルチビュー・ビデオ・コーディングは、対応する表示位置順序又は表示順序と必ずしも関連しない順序(例えば、復号化順序)で、表示時間インスタンスにおいて異なる視点のピクチャをコーディングすることが可能である。
【0104】
[0121] 図9は、幾つかの例におけるオート・ステレオスコピック・ディスプレイ(900)の図を示す。オート・ステレオスコピック・ディスプレイ(900)は、異なる視点のピクチャを異なる位置で表示することができる。一例では、オート・ステレオスコピック・ディスプレイ(900)は、観察者の検出された眼の位置に応じて、異なる視点のピクチャを表示する。図9の例では、観察者の眼の位置は、最も左側の位置と最も右側の位置との間のような1次元で検出されることが可能である。例えば、
観察者の眼の位置がE0にある場合、オート・ステレオスコピック・ディスプレイ(900)は、視点識別子ViewId[0]の視点のピクチャを表示し;
観察者の眼の位置がE1にある場合、オート・ステレオスコピック・ディスプレイ(900)は、視点識別子ViewId[1]の視点のピクチャを表示し;
観察者の眼の位置がE2にある場合、オート・ステレオスコピック・ディスプレイ(900)は、視点識別子ViewId[2]の視点のピクチャを表示し;
観察者の眼の位置がE3にある場合、オート・ステレオスコピック・ディスプレイ(900)は、視点識別子ViewId[3]の視点のピクチャを表示する。左から右への観察者の眼の位置の順序は、E2,E0,E1及びE3である。
【0105】
[0122] 図10Aは、本開示の実施形態によるマルチビュー視点位置に基づいてピクチャを並べ直す例を示す。複数の視点又は異なる視点が与えられる場合、1次元に沿った表示順序(例えば、水平軸に沿う左から右への表示)を示す視点位置情報が、意図されるユーザー体験のためにシグナリングされることが可能である。表示順序は、複数の視点又は対応するピクチャのマルチビュー視点位置によって指定されることが可能である。一例では、複数の視点は、第1のマルチビュー視点位置で表示される予定の第1の視点と、第2のマルチビュー視点位置で表示される予定の第2の視点とを含む。第1の視点の第1のピクチャは、第1のマルチビュー視点位置で表示されることが可能である。第2の視点の第2のピクチャは、第2のマルチビュー視点位置で表示されることが可能である。
【0106】
[0123] 幾つかの例において、ピクチャP0-P3はそれぞれ複数の視点(e.g., ViewId[0]-ViewId[3])に対応する。ピクチャP0-P3は、同じ捕捉時間インスタンス又は同じ表示時間インスタンスに関連付けられている。ピクチャP0-P3は、レート歪最適化などのような特定のコーディング要件に基づいて決定されることが可能なコーディング順序(例えば、符号化順序又は復号化順序)でコーディング(符号化又は復号化)されることが可能である。復号化順序は、ピクチャP0-P3に基づいて、又は対応する視点ViewId[0]-ViewId[3]に基づいて指定されることが可能である。図10Aを参照すると、復号化順序の一例は、視点ViewId[0]のP0、視点ViewId[1]のP1、視点ViewId[2]のP2、及び視点ViewId[3]のP3であり、ここで、視点ViewId[0]のP0は、ViewId[1]-ViewId[3]のP1-P3それぞれを復号化することに先行して復号化される。あるいは、復号化順序は、ViewId[0],ViewId[1],ViewId[2],及びViewId[3]である。
【0107】
[0124] 一実施形態では、復号化順序は、ピクチャ(e.g.,P0-P3)又は対応する視点(e.g.,ViewId[0]-ViewId[3])の表示する順序と相違する。本開示の実施形態によれば、復号化されたピクチャ(e.g.,P0-P3)又は対応する視点(e.g.,ViewId[0]-ViewId[3])は、表示順序に従って並べ直されることが可能である。表示順序は、意図されるユーザー体験のためのシグナリングされることが可能である。図10Aを参照すると、表示順序は、ViewId[2],ViewId[0],ViewId[1],及びViewId[3]であり、ここで、ViewId[2]は最も左側の視点として表示され、ViewId[3]は最も右側の視点として表示される。ピクチャに基づく対応する表示順序は、P2,P0,P1,P3である。視点(及び復号化されたピクチャ)は、表示順序に従って並べ直される。
【0108】
[0125] 幾つかの例では、AUは、同一のキャプチャリング又は表示時間インスタンスに関連付けられる様々な視点のピクチャのコーディングされた情報を含む。例えば、AUは、視点ViewId[0]のピクチャP0、視点ViewId[1]のピクチャP1、視点ViewId[2]のピクチャP2、視点ViewId[3]のピクチャP3のコーディングされた情報を含む。ピクチャP0-P3のコーディング順序は、必ずしも、観察者の眼の位置の順序に従わない。
【0109】
[0126] 図10B-図10Cは、一例におけるマルチビュー視点位置に従ってピクチャを並べ直す一例を示す。図10Bは、復号化順序に従って復号化されたAUにおけるピクチャを示す。図10Bの例では、AUにおけるピクチャP0-P3は、P0,P1,P2,及びP3の順序で復号化される。左から右へ向かう観察者の眼の位置の順序は、E2,E0,E1及びE3であるので、復号化されたピクチャの順序は、左から右へ向かう観察者の眼の位置の順序に対応していない。
【0110】
[0127] 幾つかの例では、復号化されたピクチャは、例えば意図されるユーザー体験のためにシグナリングされる表示順序に従って並べ直されることが可能である。一例では、表示順序は、左から右へ向かうような観察者の眼の位置の順序に関連付けられる。
【0111】
[0128] 図10Cは、幾つかの例において、表示順序に従って並べ直された、AUにおける復号化されたピクチャを示す。例えば、表示順序は、左から右への観察者の眼の位置の順序に関連付けられる。
【0112】
[0129] 本開示の幾つかの態様によれば、補足エンハンスメント情報(SEI)メッセージは、例えば、符号化されたビットストリームの復号化及び/又は表示を支援するために、又は別の目的のために、符号化されたビットストリームに含まれることが可能である。SEIメッセージ(複数可)は、VCL NALユニットからコーディングされたピクチャのサンプルを復号化すること等のような、復号化に必要でない情報を含むことが可能である。SEIメッセージ(複数可)は、復号化するプロセスによって、ルマ又はクロマ・サンプルを構築するためのオプションであるとすることが可能である。幾つかの例では、SEIメッセージは、復号化処理中にルマ又はクロマ・サンプルを再構成するためには必要とされない。更に、SEIメッセージをサポートするビデオ・コーディング規格に準拠するデコーダは、SEIメッセージを準拠させるように処理することを要求されない。幾つかのコーディング規格では、ビットストリーム適合性をチェックするため、又はタイミング・デコーダ適合性を出力するために、何らかのSEIメッセージ情報が必要とされる可能性がある。SEIメッセージ(複数可)は、特定の規格(e.g.,HEVC 265又はVVC)に対する出力順序の適合性のために、デコーダを従わせることによって選択的に処理されてもよい。実施形態では、SEIメッセージはビットストリーム内に存在する。
【0113】
[0130] SEIメッセージは、ビデオ・ピクチャのタイミングを示すか、又はコーディングされたビデオの様々なプロパティを記述するか、又は様々なプロパティをどのように使用又は拡張できるかを示す、様々なタイプのデータを含むことが可能である。幾つかの例では、SEIメッセージはコア復号化プロセスに影響を与えないが、ビデオがどのように後処理又は表示されるように推奨されているかを示すことが可能である。
【0114】
[0131] SEIメッセージは、符号化されたビットストリームに関する追加情報を提供するために使用されることが可能であり、これは、一旦ビットストリームが復号化されると、ビットストリームの提示を変更するために、又は情報をデコーダに提供するために使用されることが可能である。例えば、SEIメッセージは、特に、フレーム・パッキング情報(例えば、ビデオ・データがビデオ・フレーム内で配置される方法を記述している)、コンテンツ記述(例えば、符号化されたビットストリームが、例えば、360度ビデオであることを示す)、及びカラー情報(例えば、色域及び/又は色レンジ)を提供するために使用されている。
【0115】
[0132] 幾つかの例において、SEIメッセージは、符号化されたビットストリームが360度ビデオを含むことをデコーダにシグナリングするために使用されることが可能である。デコーダは、上記の情報を使用して、360度のプレゼンテーションのためにビデオ・データをレンダリングすることが可能である。あるいは、デコーダが360度ビデオをレンダリングすることができない場合、デコーダは、上記の情報を使用して、ビデオ・データをレンダリングしないようにすることが可能である。
【0116】
[0133] 本開示の実施形態によれば、第1のSEIメッセージは、マルチビュー・ビデオのスケーラビリティ次元情報(scalability dimension information,SDI)を示すことが可能である。例えば、第1のSEIメッセージ(例えば、SDI SEIメッセージ)は、マルチビュー・ビデオの視点の数などを示す情報のような、スケーラビリティ次元の数及びタイプを含んでもよい。本開示の実施形態によれば、現在のCVSにおけるi番目のレイヤの視点識別子(view identifier,ID)(例えば、ViewIDとして示される)は、第1のSEIメッセージ(例えば、SDI SEIメッセージ)でシグナリングされることが可能である。一例において、シンタックス要素sdi_view_id_val[i]は、現在のCVSのi番目のレイヤの視点ID(e.g.,ViewID)の値を指定する。シンタックス要素sdi_view_id_val[i]の長さ(例えば、シンタックス要素sdi_view_id_val[i]を表すために使用されるビット数)は、シンタックス要素sdi_view_id_len_minus1によって指定されることが可能である。長さの単位はビットであるとすることが可能である。一例では、シンタックス要素sdi_view_id_val[i]の長さの値は、シンタックス要素sdi_view_id_len_minus1プラス1の値に等しい。
【0117】
[0134] 本開示の一態様によれば、表示順序は、マルチビュー視点位置(MVP)情報を示すSEIメッセージのような、第2のSEIメッセージを用いてシグナリングされることが可能である。幾つかの関連する例において、第2のSEIメッセージは、1次元における(例えば、水平軸に沿った)視点位置を示す情報を含むことが可能である。例えば、第2のSEIメッセージは、観察者の眼の位置に対応する1次元における視点位置を含むことが可能である。第2のSEIメッセージ(例えば、MVP SEIメッセージ)は、例えば、グラスレス(又は裸眼)3Dディスプレイに対して、3Dレンダリング・ビューの水平軸に沿った相対的な視点位置を示すのに有用である可能性がある。
【0118】
[0135] 図11は、マルチビュー・ビデオの視点位置を示す第2のSEIメッセージ(例えば、MVP SEIメッセージ)におけるシンタックス例(1100)を示す。例えば、MVP SEIメッセージは、3Dレンダリング・ビューの横軸に沿った、CVS内での視点の相対的な視点位置を指定する。複数の視点が存在する場合、左から右への表示順序を示すMVP SEIメッセージ中のMVP情報は、意図されるユーザー体験のためにシグナリングされることが可能である。
【0119】
[0136] MVP SEIメッセージは、CVSのIRAP AUに関連付けられることが可能である。MVP SEIメッセージでシグナリングされるMVP情報は、CVS全体に適用されることが可能である。幾つかの例において、MVP SEIメッセージは、視点の数をシグナリングし、次いで視点の位置をそれぞれシグナリングすることが可能である。
【0120】
[0137] 図11の例では、num_views_minus1によって示されるパラメータは、(1110)で示されるように、MVP SEIメッセージによってシグナリングされることが可能である。パラメータnum_views_minus1は、例えばアクセス・ユニットにおける、視点の数(例えば、NumViewsとして示されるパラメータ)を示す。例えば、視点の数は、1とパラメータnum_views_minus1の値との合計に等しい。
【0121】
[0138] 表示順序における視点の位置のような、1次元における視点の順序(例えば表示順序)は、パラメータview_positions[i]を使用してMVP SEIメッセージでシグナリングされることが可能である。値iは、図11の(1120)で示されるように、0からnum_views_minus1までの整数である。
【0122】
[0139] パラメータview_position[i]は、第1のSEIメッセージにおけるシンタックス要素sdi_view_id_val[i]の値に等しい視点識別子(ID)ViewIdを用いて、表示の目的のために左から右への視点(例えば、全ての視点)の中で、視点の順序(例えば、表示順序)を示すことができる。左端の視点の順序の値は0に等しいとすることが可能であり、順序の値は、左から右への次の視点に対して1つ増えることが可能である。パラメータview_position[i]の値は、両端を含む0から62までの範囲内にあることが可能である。
【0123】
[0140] 一例として、図10Aの例の視点位置にシグナリングするために、“3”がパラメータnum_views_minus1としてシグナリングされて、視点の数は4であることを示すことが可能である。
0であるViewIdに対するview_position[0]として“1”がシグナリングされ、
1であるViewIdに対するview_position[1]として“2”がシグナリングされ、
2であるViewIdに対するview_position[2]として“0”がシグナリングされ、
3であるViewIdに対するview_position[3]として“3”がシグナリングされ、ここで、左から右への位置の中で、“0”は最も左側の視点であり、“3”は最も右側の視点である。次いで、視点ViewId[0]-ViewId[3]がアクセス・ユニットから復号化されると、
視点ViewId[0]はview_position[0]を有し、
視点ViewId[1]はview_position[1]を有し、
視点ViewId[2]はview_position[2]を有し、
視点ViewId[3]はview_position[3]を有している。
視点ViewId[0]-ViewId[3]は、対応する視点位置view_position[0]ないしview_position[3]に従って並べ直され、図10Aにおける表示順序を取得することができる。
【0124】
[0141] 本開示の実施形態によれば、CVS内の各レイヤの視点に関連するピクチャは、ビットストリームから復号化することが可能である。第1のSEIメッセージ及び第2のSEIメッセージに基づいて、1次元において(例えば、水平軸に沿って)表示される視点の位置を決定することができる。復号化されたピクチャは、1次元における(例えば、水平軸に沿う)視点の位置に基づいて表示することが可能である。CVSの各レイヤの視点の各々に対して、それぞれの視点の視点ID (e.g.,ViewId[i])は第1のSEIメッセージに基づいて決定されることが可能である。1次元における(例えば、水平軸に沿う)表示されるべきそれぞれの視点の位置は、第2のSEIメッセージにおける視点位置変数(e.g.,view_position[i])及び決定された視点識別子(e.g.,ViewId[i])に基づいて決定されることが可能である。
【0125】
[0142] 図10Aと11を参照すると、一例において、シンタックス要素num_view_minus1の値は3であり、表示される予定の視点の数は、3プラス1、即ち4になる。第1のSEIメッセージ(例えば、SDI SEIメッセージ)におけるシンタックス要素sdi_view_id_val[i]の整数iは、0,1,2,又は3であり、これはそれぞれシンタックス要素di_view_id_val[0],sdi_view_id_val[1],sdi_view_id_val[2],又はsdi_view_id_val[3]に対応している。一例において、sdi_view_id_val[0]は0であり、sdi_view_id_val[1]は1であり、sdi_view_id_val[2]は2であり、sdi_view_id_val[3]は3である。第2のSEIメッセージ(例えば、MVP SEIメッセージ)に基づいて、シンタックス要素view_position[i]は、第1のSEIメッセージ中のシンタックス要素sdi_view_id_val[i]に等しいViewIdとともに表示順序又は視点位置を示す。
シンタックス要素view_position[0]は、sdi_view_id_val[0](e.g.,0)に等しいViewIdの視点位置を示し、視点ViewId[0]はview_position[0](e.g.,1)におけるものである。
シンタックス要素view_position[1]は、sdi_view_id_val[1](e.g.,1)に等しいViewIdの視点位置を示し、視点ViewId[1]はview_position[1](e.g.,2)におけるものである。
シンタックス要素view_position[2]は、sdi_view_id_val[2](e.g.,2)に等しいViewIdの視点位置を示し、視点ViewId[2]はview_position[2](e.g.,0)におけるものである。
シンタックス要素view_position[3]は、sdi_view_id_val[3](e.g.,3)に等しいViewIdの視点位置を示し、視点ViewId[3]はview_position[3](e.g.,3)におけるものである。
【0126】
[0143] 本開示の一態様によれば、MVP SEIメッセージは、SDI SEIメッセージ内の情報に関する意味的依存性(semantic dependency)を有することが可能な1つ以上のパラメータを含む。例えば、MVP SEIメッセージ内のシンタックス要素num_views_minus1は、SDI SEIメッセージから導出されるパラメータNumViewsの値に関する意味的依存性を有する。一例では、視点の数を示す第1の値(例えば、パラメータNumViewsの値)は、SDI SEIメッセージから導出される。視点の数に関連付けられる第2の値(例えば、シンタックス要素num_views_minus1の値)は、MVP SEIメッセージから取得される。第2の値は、第1の値と相違する可能性がある。数“1”プラス第2の値は、適合性検査(conformance check)において第1の値と比較されることが可能である。図10Aを参照すると、第1の値は4であり、第2の値は3である。第2の値(e.g.,3)プラス1は、第1の値(e.g.,4)に等しく、適合性検査を満足する。従って、MVP SEIメッセージは、SDI SEIメッセージに関連する制約を受けることが可能である。
【0127】
[0144] 一例では、CVSがSDI SEIメッセージを含まない場合、CVSはMVP SEIメッセージを含まない。幾つかの例において、SDI SEIメッセージが存在しない場合、MVP SEIメッセージは存在しない。一例では、SDI SEIメッセージがCVSに含まれていることに基づいて、MVP SEIメッセージはCVSに含まれる。
【0128】
[0145] 実施形態において、第3のSEIメッセージは、3D参照表示情報がシグナリングされることを指定する。図12は、本開示の実施形態による3D参照表示情報を指定するための第3のSEIメッセージにおけるシンタックス例(1200)を示す。
【0129】
[0146] 第3のSEIメッセージ(例えば、図12に示される3D参照表示情報SEIメッセージ)は、参照表示幅、参照視聴距離に関する情報と、対応する参照ステレオ・ペア(例えば、参照視聴距離における参照表示に関する視聴者の左右の眼に表示されることになる視点のペア)に関する情報とを含むことが可能である。参照表示情報は、視点レンダラが、ターゲット・スクリーン幅及び視聴距離に対して適切なステレオ・ペアを生成できるようにすることが可能である。参照表示幅及び参照視聴距離の値は、センチメートルの単位でシグナリングされることが可能である。第3のSEIメッセージで指定される視点のペアは、ターゲット表示の視点の生成に使用されることが可能な、参照ステレオ・ペアのカメラ中心間距離に関連するパラメータを抽出又は推測に使用するために使用されることが可能である。多視点表示の場合、参照ステレオ・ペアは、視聴者の左右の眼によって同時に観察されることが可能な視点のペアに対応することが可能である。
【0130】
[0147] 存在する場合、第3のSEIメッセージは、AU(例えば、IRAP AU又は非IRAP AU)に関連付けられることが可能であるのは、復号化順序でそのAUに続く全てのAUが、出力順序でそのAUに従う場合である。第3のSEIメッセージは、現在のAUと出力順序及び復号化順序の双方においてそのAUに続く全てのAUであって、別の参照表示情報SEIメッセージを含む次のIRAP AU又は次のAUを含むに至らないまでのもの、に適用されることが可能である。
【0131】
[0148] 第3のSEIメッセージ(例えば、3D参照表示情報SEIメッセージ)は、3Dビデオ・シーケンスが最適化された表示パラメータと対応する参照パラメータとを指定することが可能である。各々の参照表示(例えば、参照表示幅及びオプションとして対応する視聴距離)は、それぞれの視点識別子(例えば、ViewIdとして示される)をシグナリングすることによって、視点の1つの参照ペアに関連付けられることが可能である。ViewIdの値の間の差分は、ベースライン距離(例えば、3Dビデオ・シーケンスを得るために使用されるカメラの中心間距離)と言及される。
【0132】
[0149] 以下の数式は、受信側の視聴距離と参照視聴距離との間の比が、受信側のスクリーン幅と参照スクリーン幅の間の比に等しい場合に、受信側の表示に対するベースライン距離と水平シフトとを決定するために使用されることが可能である。
【0133】
baseline[i] = refBaseline[i] × (refDisplayWidth[i]÷displayWidth) Eq.1
shift[i] = refShift[i] * (refDisplayWidth[i]÷displayWidth) Eq.2
ここで、refBaseline[i]は、第3のSEIメッセージでシグナリングされた(right_view_id[i] - left_view_id[i])に等しい。視点生成に関連する他のパラメータは、同様な数式を使用することにより取得され及び決定されてもよい。
【0134】
parameter[i] = refParameter[i] * (refDisplayWidth[i]÷displayWidth) Eq.3
[0150] refParameter[i]は、left_view_id[i]とright_view_id[i]によりシグナリングされる参照ペアに対応する視点生成に関連するパラメータである。上記の数式において、ビデオ・シーケンスを表示するために使用されるディスプレイの可視部分の幅は、“display width(表示幅)”の下で理解することができる。上述の数式は、視聴距離が、参照表示パラメータと比較されるスクリーン幅に比例してスケーリングされていない場合に、視点のペアと水平シフト又はその他の視点合成パラメータを決定するために使用されることが可能であり、ここで、上述の数式を適用する効果は、視聴距離において知覚される深さを、参照設定におけるものと同じ割合に維持することである。
【0135】
[0151] 参照ステレオ・ペアに対応する視点合成関連パラメータが、あるAUから別のAUへ変わる場合、視点合成関連パラメータは、第3のSEIメッセージが関連付けられるAU内のパラメータと同じスケーリング係数でスケーリングされることが可能である。上記の数式は、後続のAUに対するパラメータを取得するために適用されることが可能であり、ここで、refParameter[i]は、後続のアクセス・ユニットに関連付けられる参照ステレオ・ペアに関連するパラメータである。
【0136】
[0152] 受信側の表示に関する水平シフトは、ベースライン距離(又はその他の視点合成パラメータ)をスケーリングするために使用されるものと同じ因子でスケーリングすることによって修正されることが可能である。
【0137】
[0153] CVSが第1のSEIメッセージ(例えば、SDI SEIメッセージ)を含まない場合、CVSは、第3のSEIメッセージ(例えば、3D参照情報SEIメッセージ)を含まない。
【0138】
[0154] 図12を参照すると、シンタックス要素prec_ref_display_widthは、(2-prec_ref_display_width)によって与えられるようなrefDisplayWidth[i]に対する最大許容打ち切り誤差の指数を指定することが可能である。シンタックス要素prec_ref_display_widthの値は、両端を含む0ないし31の範囲内にあるとすることが可能である。
【0139】
[0155] 1に等しいシンタックス要素ref_viewing_distance_flagは、参照視聴距離の存在を示すことが可能である。0に等しいシンタックス要素ref_viewing_distance_flagは、参照視聴距離が存在しないことを示す。
【0140】
[0156] シンタックス要素prec_ref_viewing_distは、(2-prec_ref_viewing_dist)によって与えられるようなrefViewingDist[i]に対する最大許容打ち切り誤差の指数を指定することが可能である。prec_ref_viewing_distの値は、両端を含む0ないし31の範囲内にあるとすることが可能である。
【0141】
[0157] シンタックス要素num_views_minus1プラス1は、CVSに対する第1のSEIメッセージ(例えば、SDI SEIメッセージ)から導出されるNumViewsに等しいとすることが可能である。開示の一態様によれば、第3のSEIメッセージは、第1のSEIメッセージ(例えば、SDI SEIメッセージ)内の情報に関する意味的依存性を有する1つ以上のパラメータを含む。一例では、し点の数を指定する第1の値(e.g.,NumView)は、第1のSEIメッセージから導出される。第3のSEIメッセージから、視点の数に関連する第3の値(例えば、num_views_minus1)が取得される。第3の値は、第1の値と相違することが可能である。1(例えば、値“1”)プラス第3の値が、適合性検査において第1の値と比較されることが可能である。
【0142】
[0158] シンタックス要素num_ref_displays_minus1プラス1は、第3のSEIメッセージでシグナリングされる参照表示の数を指定することが可能である。参照表示の数の最大値は、第3のSEIメッセージにおける視点の数に関連する第3の値(e.g.,num_views_minus1)に基づくことが可能である。num_ref_displays_minus1の値は両端を含む0ないしnum_views_minus1の範囲内にあるとすることが可能である。
【0143】
[0159] シンタックス要素left_view_id[i]は、i番目の参照表示に対応するステレオ・ペアの左視点のViewIdを示すことが可能である。
【0144】
[0160] シンタックス要素right_view_id[i]は、i番目の参照表示に対応するステレオ・ペアの右視点のViewIdを示すことが可能である。
【0145】
[0161] シンタックス要素exponent_ref_display_width[i]は、i番目の参照表示の参照表示幅の指数部(exponent part)を指定することが可能である。exponent_ref_display_width[i]の値は、両端を含む0ないし62の範囲内にあるとすることが可能である。値63は、ITU-T|ISO/IECによる将来的な使用のために予約されている。デコーダは、値63を、非指定参照表示幅(unspecified reference display width)を示すものとして取り扱うことが可能である。
【0146】
[0162] シンタックス要素mantissa_ref_display_width[i]は、i番目の参照表示の参照表示幅の仮数部(mantissa part)を指定することが可能である。シンタックス要素mantissa_ref_display_width[i]のビット数を指定する変数refDispWidthBitsは、次のようにして導出することが可能である:
[0163] シンタックス要素exponent_ref_display_width[i]が0に等しい場合、refDispWidthBitsは、Max(0, prec_ref_display_width - 30)に等しく設定される。
【0147】
[0164] そうではない場合(0 < exponent_ref_display_width[i] < 63)、 refDispWidthBitsは、Max(0, exponent_ref_display_width[i] + prec_ref_display_width - 31)に等しく設定される。
【0148】
[0165] シンタックス要素exponent_ref_viewing_distance[i]は、i番目の参照表示の参照視聴距離の指数部を指定することが可能である。exponent_ref_viewing_distance[i]の値は、両端を含む0ないし62の範囲内にあるとすることが可能である。値63は、ITU-T|ISO/IECによる将来的な使用のために予約されている。デコーダは、値63を、非指定参照表示幅を示すものとして取り扱うことが可能である。
【0149】
[0166] シンタックス要素mantissa_ref_viewing_distance[i]は、i番目の参照表示の参照視聴距離の仮数部を指定することが可能である。シンタックス要素refViewDistBitsは、mantissa_ref_viewing_distance[i]のビット数を指定する変数は、次のようにして導出することが可能である。
【0150】
[0167] シンタックス要素exponent_ref_viewing_distance[i]が0に等しい場合、refViewDistBitsは、Max(0, prec_ref_viewing_distance - 30)に等しく設定される。
【0151】
[0168] そうではない場合(0 < exponent_ref_viewing_distance[i] < 63)、efViewDistBitsは、Max(0, exponent_ref_viewing_distance[i] + prec_ref_viewing_distance - 31)に等しく設定される。
【0152】
[0169] テーブル1は、第3のSEIメッセージにおけるシンタックス要素とカメラ・パラメータ変数との間の例示的な関連性を示す。
【0153】
テーブル1 - カメラ・パラメータ変数とシンタックス要素との間の関連性
【0154】
【数1】

[0170] テーブル1のxの行における変数は、テーブル1のe,n及びvの行におけるそれぞれの変数又は値から、次のようにして導出される:
eが0に等しくない場合、以下を適用する:
x=2(e-31)×(1+n÷2v)
それ以外の場合(例えば、eが0に等しい場合)、以下を適用する:
x=2-(30+v)×n

[0171] 図12を再び参照すると、1に等しいシンタックス要素additional_shift_present_flag[i]は、i番目の参照表示の左右の視点の追加的な水平シフトに関する情報が、第3のSEIメッセージに存在することを示すことが可能である。0に等しいシンタックス要素additional_shift_present_flag[i]は、i番目の参照表示の左右の視点の追加的な水平シフトに関する情報が、第3のSEIメッセージに存在しないことを示すことが可能である。
【0155】
[0172] シンタックス要素num_sample_shift_plus512[i]は、i番目の参照ベースラインとi番目の参照表示に対応するステレオ・ペアに対する推奨される追加の水平シフトを示すことが可能である。
【0156】
[0173] (num_sample_shift_plus512[i] - 512)が0未満である場合、i番目の参照ベースライン及びi番目の参照表示に対応するステレオ・ペアの左視点は、ステレオ・ペアの右視点に対して、(512 - num_sample_shift_plus512[i])個のサンプルだけ左方向にシフトさせることが可能である。
【0157】
[0174] それ以外の場合、シンタックス要素num_sample_shift_plus512[i]が512に等しい場合、シフト操作は適用されなくてもよい。
【0158】
[0175] それ以外の場合、(num_sample_shift_plus512[i] - 512)が0より大きい場合、i番目の参照表示とi番目の参照ベースラインに対応するステレオ・ペアの左視点は、ステレオ・ペアの右視点に対して、(512 - num_sample_shift_plus512[i])個のサンプルだけ右方向にシフトさせることが可能である。
【0159】
[0176] num_sample_shift_plus512[i]の値は、両端を含む0ないし123の範囲内にあるとすることが可能である。
【0160】
[0177] 一実施形態では、左視点をxサンプルだけ左(又は右)方向にシフトさせることは、以下の2段階の処理によって実行することができる:1)左視点をx/2サンプルだけ左(又は右)方向にシフトさせ、右視点をx/2サンプルだけ右(又は左)方向にシフトさせる;2)左右視点双方の幅の中でx/2サンプルの左右画像マージンを背景色で充填する。
【0161】
[0178] 次の疑似コードは、右視点に対してxサンプルだけ左方向に左視点をシフトさせる場合のシフト処理の例を示す:
【0162】
【数2】

[0179] 次の疑似コードは、右視点に対してxサンプルだけ右方向に左視点をシフトさせる場合のシフト処理の例を示す:
【0163】
【数3】

[0180] 変数backgroundColourは、異なるシステムでは異なる値、例えば、ブラック又はグレーをとる可能性がある。
【0164】
[0181] 0に等しいシンタックス要素three_dimensional_reference_displays_extension_flagは、第3のSEIメッセージ(例えば、3D参照表示SEIメッセージ)内で追加データが続いていないことを示すことが可能である。一例では、three_dimensional_reference_displays_extension_flagの値は、何らかの規格に準拠するビットストリームにおいて0に等しい。three_dimensional_reference_displays_extension_flagに対する1の値は、ITU-T|ISO/IECによる将来的な使用のために予約されている。デコーダは、第3のSEIメッセージ(例えば、3D参照表示SEIメッセージ)におけるthree_dimensional_reference_displays_extension_flagに対する1に続く全てのデータを無視することが可能である。
【0165】
[0182] 図13は、本開示の実施形態による符号化プロセス(1300)の概要を示すフロー・チャートを示す。様々な実施形態において、プロセス(1300)は、端末デバイス(310),(320),(330)及び(340)の処理回路のような処理回路、ビデオ・エンコーダ(例えば、(403),(603),(703))の機能を実行する処理回路などのような処理回路によって実行される。幾つかの実施形態において、プロセス(1300)は、ソフトウェア命令において実現され、従って、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(1300)を実行する。プロセスは(S1310)から始まり、(S1310)に進む。
【0166】
[0183] (S1310)において、ビットストリームにおける視点(例えば、図10A-CにおけるViewId[0]-ViewId[3])に関連付けられたピクチャを符号化することが可能である。一例において、視点に関連付けられるピクチャは、符号化順序で符号化される可能性がある。一例において、ピクチャはCVSのAUに含まれ、ピクチャ(及び視点)は同じ捕捉時間インスタンス又は表示時間インスタンスに関連付けられる。
【0167】
[0184] (1320)において、スケーラビリティ次元情報(SDI)を含む第1の捕捉エンハンスメント情報(SEI)メッセージと、マルチビュー視点位置(MVP)情報を含む第2のSEIメッセージとを形成することが可能である。一例では、本開示で説明されているように、第1のSEIメッセージはSDI SEIメッセージとして示され、第2のSEIメッセージはMVP SEIメッセージとして示される。
【0168】
[0185] 第1のSEIメッセージ(例えば、SDI SEIメッセージ)は、CVSに関する視点の数を示すことが可能である。第1のSEIメッセージは、CVSにおけるi番目のレイヤの視点IDを指定することが可能であり、ここで、値iは整数である。値iは0以上であるとすることが可能である。一例において、値iは、図11を参照しながら説明したように、0からnum_views_minus1までの整数である。一例において、シンタックス要素sdi_view_id_val[i]は、CVSにおけるi番目のレイヤの視点ID(e.g.,ViewID)の値を指定する。CVSのそれぞれのレイヤの視点IDは、第2のSEIメッセージ(例えば、MVP SEIメッセージなど)により参照されることが可能である。
【0169】
[0186] 上述したように、コーディング順序(例えば、符号化順序又は復号順序)は、視点に関連するピクチャを表示するために使用される表示順序と相違する可能性がある。第2のSEIメッセージは、表示順序を示すことが可能である。開示で説明されているように、一例において、第2のSEIメッセージは、1次元(例えば、水平軸)における視点の視点位置(e.g.,view_position[i])を示し、ここで、視点は第1のSEIメッセージにおいてViewIdsによって指定されることが可能である。
【0170】
[0187] 一例では、第2のSEIメッセージは、CVSのIRAP AUに関連付けられている。一例では、第2のSEIメッセージは、CVSに含まれる第1のSEIメッセージに基づいて、CVSに含まれる。
【0171】
[0188] (S1330)において、第1のSEIメッセージ及び第2のSEIメッセージは、ビットストリームに包含されることが可能である。一例では、第1のSEIメッセージと第2のSEIメッセージが符号化され、伝送される。CVSにおける視点に対応するそれぞれのレイヤの視点IDをシグナリングすることが可能である。一例において、レイヤはそれぞれ視点に対応する。1次元における視点の視点位置は、シグナリングされることが可能である。
【0172】
[0189] プロセス(1300)は(S1399)に進み、終了する。
【0173】
[0190] プロセス(1300)は、様々なシナリオに適切に適合させられることが可能であり、プロセス(1300)のステップは、相応に調整されることが可能である。プロセス(1300)の1つ以上のステップは、適合させられたり、省略されたり、反復されたり、及び/又は組み合わされたりすることが可能である。プロセス(1300)を実現するために、任意の適切な順序を使用することが可能である。追加のステップを追加することが可能である。
【0174】
[0191] 一例において、CVSは、左視点の視点識別子、右視点の視点識別子、及び参照表示の参照表示幅を示す3D参照表示情報を含む第3のSEIメッセージ(例えば、図12に示される3D参照表示情報SEIメッセージ)を含む。第3のSEIメッセージは、第3のSEIメッセージでシグナリングされる参照表示の数と視点の数とを示すことが可能である。参照表示の数の最大値は、第3のSEIメッセージで示される視点の数に基づいている。
【0175】
[0192] 一例において、視点の数を示す第1の値(e.g.,NumViews)は、第1のSEIメッセージから導出される。第3のSEIメッセージからの視点の数に関連する第3の値が取得される。第3の値は、第1の値と相違していることが可能である。1(例えば、値“1”)プラス第3の値は、適合性検査で第1の値と比較することが可能である。
【0176】
[0193] 図14は、本開示の実施形態による復号化プロセス(1400)の概要を示すフロー・チャートを示す。様々な実施形態において、プロセス(1400)は、端末デバイス(310),(320),(330)及び(340)の処理回路、ビデオ・エンコーダ(403)の機能を実行する処理回路、ビデオ・デコーダ(410)の機能を実行する処理回路、ビデオ・デコーダ(510)の機能を実行する処理回路、ビデオ・エンコーダ(603)の機能を実行する処理回路などのような処理回路によって実行される。幾つかの実施形態では、プロセス(1400)は、ソフトウェア命令において実現され、従って、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(1400)を実行する。プロセスは(S1401)から始まり、(S1410)に進む。
【0177】
[0194] (S1410)において、コーディングされたビデオ・シーケンス(CVS)におけるそれぞれのレイヤの視点に関連するピクチャは、ビットストリームから復号化されることが可能である。一例では、視点に関連するピクチャは、復号化順序で復号化されることが可能である。一例では、ピクチャはCVSのAUに含まれ、ピクチャ(及び視点)は同じ捕捉時間インスタンス又は表示時間インスタンスに関連付けられる。
【0178】
[0195] (S1420)において、1次元において(例えば、水平軸に沿って)表示される視点の位置は、第1の補足エンハンスメント情報(SEI)メッセージ及び第2のSEIメッセージに基づいて決定されることが可能である。第1のSEIメッセージはスケーラビリティ次元情報(SDI)を含むことが可能である。第2のSEIメッセージは、マルチビュー視点位置(MVP)情報を含むことが可能である。
【0179】
[0196] 例えば、第1のSEIメッセージはSDI SEIメッセージを含み、第2のSEIメッセージはMVP SEIメッセージを含む。
【0180】
[0197] 第1のSEIメッセージ(例えば、SDI SEIメッセージ)は、CVSに関する視点の数を示すことが可能である。第1のSEIメッセージは、CVSにおけるi番目のレイヤの視点ID(e.g.,ViewID[i])を指定することが可能であり、ここで、値iは整数である。値iは0以上であるとすることが可能である。一例において、値iは、図11を参照しながら説明したように、0からnum_views_minus1までの整数である。一例において、第1のSEIメッセージにおけるシンタックス要素sdi_view_id_val[i]は、CVSにおけるi番目のレイヤの視点ID(e.g.,ViewID)の値を指定する。CVSのそれぞれのレイヤの視点IDは、第2のSEIメッセージ(例えば、MVP SEIメッセージなど)により参照されることが可能である。
【0181】
[0198] 第2のSEIメッセージ(例えば、MVP SEIメッセージ)は、1次元における視点の位置(e.g.,view_position[i])を示すことが可能であり、視点は、第1のSEIメッセージにおけるViewIdsによって指定されることが可能である。一例では、1次元は水平軸であり、表示されるべき視点の位置は水平軸に沿っている。
【0182】
[0199] 実施形態では、CVSのそれぞれのレイヤの視点の各々に対して、それぞれの視点の視点ID(e.g.,ViewId[i])は、第1のSEIメッセージに基づいて決定される。例えば、第1のSEIメッセージにおけるシンタックス要素sdi_view_id_val[i]は、視点IDの値(例えば、ViewIDとして示されるもの)を指定する。1次元において(例えば、横軸に沿って)表示される予定のそれぞれの視点の位置は、第2のSEIメッセージにおける視点位置変数(e.g.,view_position[i])と決定された視点ID(e.g.,ViewId[i])に基づいて決定されることが可能である。
【0183】
[0200] 実施形態において、第2のSEIメッセージは、CVSのイントラ・ランダム・アクセス・ポイント(intra random access point,IRAP)AUに関連付けられている。一例では、視点の位置がCVSのAUに適用される。
【0184】
[0201] (S1410)において、復号化されたピクチャは、図10A-10Cを参照しながら説明されているように、1次元における(例えば、水平軸に沿う)視点の決定された位置に基づいて表示されることが可能である。
【0185】
[0202] プロセス(1400)は(S1499)に進み、終了する。
【0186】
[0203] プロセス(1400)は、様々なシナリオに適切に適合させられることが可能であり、プロセス(1400)のステップは、相応に調整されることが可能である。プロセス(1400)の1つ以上のステップは、適合させられたり、省略されたり、反復されたり、及び/又は組み合わされたりすることが可能である。プロセス(1400)を実現するために、任意の適切な順序を使用することが可能である。追加のステップを追加することが可能である。
【0187】
[0204] 実施形態において、第2のSEIメッセージがCVSに含まれるか否かは、第1のSEIメッセージがCVSに含まれるか否かに基づいている。第2のSEIメッセージは、第1のSEIメッセージがCVSに存在する場合に、CVSに存在する可能性がある。
【0188】
[0205] CVSが第1のSEIメッセージ(例えば、SDI SEIメッセージ)を含まない場合、CVSは第2のSEIメッセージ(例えば、MVP SEIメッセージ)を含まない。第1のSEIメッセージがCVSに含まれない場合、(S1420)は省略される。(S1430)は、復号化順序、デフォルトの順序などに基づいて、復号化されたピクチャを表示するように構成されることが可能である。
【0189】
[0206] 実施形態では、視点の数を指定する第1の値(e.g.,NumViews)は、第1のSEIメッセージから導出される。視点の数に関連付けられる第2の値(e.g.,num_views_minus1)は、第2のSEIメッセージから取得されることが可能である。第2の値は、第1の値と相違していることが可能である。適合性検査は、1プラス第2の値を、第1の値と比較することによって実行されることが可能である。
【0190】
[0207] 一例において、CVSは、左視点の視点識別子及び視点距離、右視点の視点識別子、参照表示の参照表示幅を示す3D参照表示情報を含む第3のSEIメッセージ(例えば、図12に示される3D参照表示情報SEIメッセージ)を含む。第3のSEIメッセージは、第3のSEIメッセージでシグナリングされる参照表示の数と視点の数を示すことが可能である。一例では、視点の数を示す第1の値(e.g.,NumViews)は、第1のSEIメッセージから導出される。第3のSEIメッセージからの視点の数に関連する第3の値(e.g.,num_views_minus1)が取得される。第3の値は、第1の値と相違していることが可能である。1(例えば、値“1”)プラス第3の値は、適合性検査で第1の値と比較することが可能である。参照表示の数の最大値は、第3のSEIメッセージの視点の数に関連付けられる第3の値に基づいている。
【0191】
[0208] 本開示の実施形態は、別々に又は組み合わせにより任意の順序で使用されることが可能である。更に、各々の方法(又は実施形態)、エンコーダ、及びデコーダは、処理回路(例えば、1つ以上のプロセッサ、又は1つ以上の集積回路)によって実現されることが可能である。一例では、1つ以上のプロセッサは、非一時的なコンピュータ読み取り可能な媒体に記憶されたプログラムを実行する。
【0192】
[0209] 上述した技術は、コンピュータ読み取り可能な命令を用いてコンピュータ・ソフトウェアとして実装することが可能であり、1つ以上のコンピュータ読み取り可能な媒体に物理的に記憶することが可能である。例えば、図15は、開示される対象事項の特定の実施形態を実現するのに適したコンピュータ・システム(1500)を示す。
【0193】
[0210] コンピュータ・ソフトウェアは、アセンブリ、コンパイル、リンク、又は類似のメカニズムの対象となり得る任意の適切なマシン・コード又はコンピュータ言語を使用してコーディングされて、1つ以上のコンピュータ中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)等によって、直接的に実行されることが可能な命令、又は解釈やマイクロコード実行などを経由する命令、を含むコードを作成することが可能である。
【0194】
[0211] 命令は、例えば、パーソナル・コンピュータ、タブレット・コンピュータ、サーバー、スマートフォン、ゲーミング・デバイス、モノのインターネット・デバイス等を含む、種々のタイプのコンピュータ又はそのコンポーネント上で実行されることが可能である。
【0195】
[0212] コンピュータ・システム(1500)に関して図15に示されるコンポーネントは、本質的に例示的なものであり、本開示の実施形態を実現するコンピュータ・ソフトウェアの使用範囲又は機能性に関する如何なる制限も示唆するようには意図されていない。また、コンポーネントの構成は、コンピュータ・システム(1500)の例示的な実施形態に示されたコンポーネントの任意の1つ又は組み合わせに関する何らかの従属性や要件を有するものとして解釈されてはならない。
【0196】
[0213] コンピュータ・システム(1500)は、特定のヒューマン・インターフェース入力デバイスを含むことが可能である。このようなヒューマン・インターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データ・グローブの動き)、聴覚的な入力(例えば、声、拍手)、視覚的な入力(例えば、ジェスチャ)、嗅覚的な入力(図示されていない)を介して、1人以上の人間ユーザーによる入力に応答することが可能である。また、ヒューマン・インターフェース・デバイスは、オーディオ(例えば、会話、音楽、周囲音)、画像(例えば、スキャンされた画像、静止画像カメラから得られる写真画像)、ビデオ(例えば、2次元ビデオ、ステレオスコピック・ピクチャを含む3次元ビデオ)のような、人間による意識的な入力に必ずしも直接的に関係しない特定のメディアを捕捉するために使用することが可能である。
【0197】
[0214] 入力ヒューマン・インターフェース・デバイスは、キーボード(1501)、マウス(1502)、トラックパッド(1503)、タッチ・スクリーン(1510)、データ・グローブ(不図示)、ジョイスティック(1505)、マイクロホン(1506)、スキャナ(1507)、カメラ(1508)のうちの(描かれているものはそれぞれ唯1つであるが)1つ以上を含む可能性がある。
【0198】
[0215] コンピュータ・システム(1500)は、特定のヒューマン・インターフェース出力デバイスを含むことも可能である。このようなヒューマン・インターフェース出力デバイスは、例えば、触覚出力、音、光、及び嗅覚/味覚を通じて、1人以上の人間ユーザーの感覚を刺激することが可能である。このようなヒューマン・インターフェース出力デバイスは、触覚出力デバイス(例えば、タッチ・スクリーン(1510)、データ・グローブ(不図示)、ジョイスティック(1505)による触覚フィードバックであるが、入力として役立たない触覚フィードバック・デバイスが存在する可能性もある)、聴覚的な出力デバイス(例えば、スピーカー(1509)、ヘッドフォン(不図示せず))、視覚的な出力デバイス(例えば、CRTスクリーン、LCDスクリーン、プラズマ・スクリーン、OLEDスクリーンを含むスクリーン(1510)であり、各々はタッチ・スクリーン入力機能を備えるか又は備えておらず、各々は触覚フィードバック機能を備えるか又は備えておらず、それらのうちの幾つかは、二次元的な視覚的な出力、立体出力のような手段による三次元以上の出力を出力することが可能であってもよい;仮想現実メガネ(図示せず)、ホログラフィック・ディスプレイ、及びスモーク・タンク(図示せず))、及びプリンタ(図示せず)を含むことが可能である。
【0199】
[0216] コンピュータ・システム(1500)はまた、CD/DVD等の媒体(1521)を使うCD/DVD ROM/RW(1520)を含む光媒体、サム・ドライブ(1522)、リムーバブル・ハード・ドライブ又はソリッド・ステート・ドライブ(1523)、テープ及びフロッピー・ディスク(図示せず)等のレガシー磁気媒体(不図示)、セキュリティ・ドングル(不図示)等の特殊化されたROM/ASIC/PLDベースのデバイスのような、人間がアクセス可能な記憶デバイス及びそれらに関連する媒体を含むことも可能である。
【0200】
[0217] 当業者は、ここに開示される対象事項に関連して使用される用語「コンピュータ読み取り可能な媒体」は、伝送媒体、搬送波、又はその他の過渡的な信号を包含しない、ということも理解するはずである。
【0201】
[0218] コンピュータ・システム(1500)は、1つ以上の通信ネットワーク(1555)へのネットワーク・インターフェース(1554)を含むことも可能である。ネットワークは、例えば、無線、有線、光であるとすることが可能である。ネットワークは、更に、ローカル、ワイド・エリア、メトロポリタン、車両及び産業、リアルタイム、遅延耐性などであるとすることが可能である。ネットワークの例は、イーサーネット、無線LAN、セルラー・ネットワーク(GSM、3G、4G、5G、LTE等を含む)、TVの有線又は無線ワイド・エリア・デジタル・ネットワーク(ケーブルTV、衛星TV、及び地上放送TVを含む)、CANBusを含む車両及び産業などを含む。特定のネットワークは、一般に、特定の汎用データ・ポート又は周辺バス(1549)に取り付けられる外部ネットワーク・インターフェース・アダプタを必要とする(例えば、コンピュータ・システム(1500)のUSBポート);その他は、一般に、以下に説明するようなシステム・バスに取り付けることによって、コンピュータ・システム(1500)のコアに統合される(例えば、イーサーネット・インターフェースはPCコンピュータ・システム内に、セルラー・ネットワーク・インターフェースはスマートフォン・コンピュータ・システム内に統合される)。これらのうちの任意のネットワークを使用して、コンピュータ・システム(1500)は、他のエンティティと通信することが可能である。このような通信は、片-方向受信専用(例えば、放送テレビ)、片-方向送信専用(例えば、特定のCANbusデバイスに対するCANbus)、又は双-方向、例えばローカル又はワイド・エリア・デジタル・ネットワークを使用する他のコンピュータ・システムに対するものであるとすることが可能である。特定のプロトコル及びプロトコル・スタックは、上述のように、それらのネットワーク及びネットワーク・インターフェースの各々で使用されることが可能である。
【0202】
[0219] 前述のヒューマン・インターフェース・デバイス、ヒューマン・アクセシブル・ストレージ・デバイス、及びネットワーク・インターフェースは、コンピュータ・システム(1500)のコア(1540)に取り付けられることが可能である。
【0203】
[0220] コア(1540)は、1つ以上の中央処理ユニット(CPU)(1541)、グラフィックス処理ユニット(GPU)(1542)、フィールド・プログラマブル・ゲート・エリア(FPGA)(1543)の形式における特殊プログラマブル処理デバイス、特定のタスク用のハードウェア・アクセラレータ(1544)、グラフィックス・アダプタ(1550)等を含むことが可能である。これらのデバイスは、リード・オンリ・メモリ(ROM)(1545)、ランダム・アクセス・メモリ(1546)、内部大容量ストレージ・デバイス(例えば、内的な非ユーザー・アクセシブル・ハード・ドライブ、SSD等)(1547)と共に、システム・バス(1548)を介して接続されることが可能である。幾つかのコンピュータ・システムでは、システム・バス(1548)は、追加のCPU、GPU等による拡張を可能にするために、1つ以上の物理的プラグの形態でアクセス可能である可能性がある。周辺デバイスは、コアのシステム・バス(1548)に直接取り付けられるか、又は周辺バス(1549)を介して取り付けられることが可能である。一例では、スクリーン(1510)はグラフィックス・アダプタ(1550)に接続されることが可能である。周辺バスのアーキテクチャは、PCI、USB等を含む。
【0204】
[0221] CPU(1541)、GPU(1542)、FPGA(1543)、及びアクセラレータ(1544)は、組み合わされて、前述のコンピュータ・コードを構成することが可能な特定の命令を実行することが可能である。コンピュータ・コードは、ROM(1545)又はRAM(1546)に格納されることが可能である。一時的なデータはRAM(1546)に格納されることが可能である一方、永続的なデータは例えば内的な大容量ストレージ(1547)に格納されることが可能である。任意のメモリ・デバイスに対する高速な記憶及び検索は、キャッシュ・メモリを利用することで可能になる可能性があり、キャッシュ・メモリは、1つ以上のCPU(1541)、GPU(1542)、大容量ストレージ(1547)、ROM(1545)、RAM(1546)等と密接に関連付けることが可能である。
【0205】
[0222] コンピュータ読み取り可能な媒体は、様々なコンピュータ実装動作を実行するためのコンピュータ・コードをその上に有することが可能である。媒体及びコンピュータ・コードは、本開示の目的のために特別に設計及び構築されたものであるとすることが可能であり、又はそれらは、コンピュータ・ソフトウェアの分野における当業者にとって周知であり且つ入手可能な種類のものであるとすることが可能である。
【0206】
[0223] 例示として、限定ではなく、アーキテクチャ(1500)、具体的にはコア(1540)を有するコンピュータ・システムは、プロセッサ(CPU、GPU、FPGA、アクセラレータ等を含む)の結果として、1つ以上の有形のコンピュータ読み取り可能な媒体に具現化されたソフトウェアを実行する機能を提供することが可能である。そのようなコンピュータ読み取り可能な媒体は、コア内部の大容量ストレージ(1547)又はROM(1545)のような非一時的な性質のコア(1540)の特定のストレージと同様に、上述したようなユーザー・アクセシブル大容量ストレージに関連するメディアであるとすることが可能である。本開示の様々な実施形態を実現するソフトウェアは、そのようなデバイスに記憶され、コア(1540)によって実行されることが可能である。コンピュータ読み取り可能な媒体は、特定のニーズに応じて、1つ以上のメモリ・デバイス又はチップを含むことが可能である。ソフトウェアは、RAM(1546)に記憶されたデータ構造を定めること、及びソフトウェアによって定められたプロセスに従ってそのようなデータ構造を修正することを含む、本願で説明された特定のプロセス又は特定のプロセスの特定の部分を、コア(1540)、具体的にはその中のプロセッサ(CPU、GPU、FPGA等を含む)に実行させることが可能である。更に又は代替として、コンピュータ・システムは、回路(例えば、アクセラレータ(1544))内に配線された又は他の方法で具現化されたロジックの結果として機能を提供することが可能であり、その回路は、本願で説明された特定のプロセス又は特定のプロセスの特定の部分を実行することを、ソフトウェアの代わりに又はそれと共に実行することが可能である。ソフトウェアに対する言及はロジックを含み、必要に応じて、その逆も可能である。コンピュータ読み取り可能な媒体に対する言及は、実行のためのソフトウェアを記憶する(集積回路(IC)のような)回路、実行のためのロジックを具体化する回路、又は適切な場合にはその両方を包含することが可能である。本開示はハードウェア及びソフトウェアの適切な任意の組み合わせを包含する。
【0207】
[0224] 本開示は、幾つかの例示的な実施形態を説明しているが、本開示の範囲内に該当する、変更、置換、及び種々の代替的な均等物が存在する。従って、当業者は、本願で明示的には図示も説明もされていないが、本開示の原理を具体化し、従ってその精神及び範囲内にある多くのシステム及び方法を考え出すことが可能であろう、ということは理解されるであろう。
【0208】
[0225] 付記
(付記1)
ビデオ・デコーダにおけるビデオ復号化方法であって、
コーディングされたビデオ・シーケンス(CVS)におけるそれぞれのレイヤの視点に関連するピクチャを、ビットストリームから復号化するステップと、
第1の補足エンハンスメント情報(SEI)メッセージと第2のSEIメッセージに基づいて、1次元における表示されるべき前記視点位置を決定する決定ステップであって、前記第1のSEIメッセージはスケーラビリティ次元情報(SDI)を含み、前記第2のSEIメッセージはマルチビュー視点位置(MVP)情報を含む、決定ステップと、
前記1次元における前記視点位置に基づいて、復号化されたピクチャを表示する表示ステップと
を含む方法。
【0209】
(付記2)
付記1に記載の方法において、前記決定ステップは、前記CVSの前記それぞれのレイヤの視点の各々について、
前記第1のSEIメッセージに基づいて、前記それぞれの視点の視点識別子を決定し、及び
前記第2のSEIメッセージにおける視点位置変数と決定された視点識別子とに基づいて、前記1次元における表示されるべきそれぞれの視点位置を決定するステップを含む、方法。
【0210】
(付記3)
付記1に記載の方法において、更に、
前記視点の数を示す第1の値を前記第1のSEIメッセージから導出するステップと、
前記視点の数に関連する第2の値を前記第2のSEIメッセージから取得するステップであって、前記第2の値は前記第1の値と異なる、ステップと、
適合性検査において前記第1の値と1プラス前記第2の値とを比較するステップと
を含む方法。
【0211】
(付記4)
付記1に記載の方法において、前記第2のSEIメッセージは、前記CVSのイントラ・ランダム・アクセス・ポイント(IRAP)アクセス・ユニットに関連付けられている、方法。
【0212】
(付記5)
付記1に記載の方法において、前記視点位置は、前記CVSのアクセス・ユニットに適用されている、方法。
【0213】
(付記6)
付記1に記載の方法において、前記第1のSEIメッセージは前記CVSに含まれていることに基づいて、前記第2のSEIメッセージは前記CVSに含まれており、
前記決定ステップ及び前記表示ステップは、前記第1のSEIメッセージ及び前記第2のSEIメッセージが前記CVSに含まれていることに基づいて実行される、方法。
【0214】
(付記7)
付記1に記載の方法において、前記CVSは、3D参照表示情報を含む第3のSEIメッセージを含み、前記3D参照表示情報は、左視点の視点識別子と、右視点の視点識別子と、参照表示の参照表示幅とを示し、前記方法は、
前記視点の数を示す第1の値を前記第1のSEIメッセージから導出するステップと、
前記視点の数に関連する第3の値を前記第3のSEIメッセージから取得するステップであって、前記第3の値は前記第1の値と異なる、ステップと、
適合性検査において前記第1の値と1プラス前記第3の値とを比較するステップと
を含む方法。
【0215】
(付記8)
付記7に記載の方法において、
前記第3のSEIメッセージは、前記第3のSEIメッセージでシグナリングされる参照表示の数を示し、
前記参照表示の数の最大値は、前記第3のSEIメッセージにおける前記視点の数に関連する前記第3の値に基づいている、方法。
【0216】
(付記9)
付記1に記載の方法において、前記第1のSEIメッセージはSDI SEIメッセージであり、前記第2のSEIメッセージはMVP SEIメッセージである、方法。
【0217】
(付記10)
処理回路を備えるビデオ復号化装置であって、前記処理回路は、
コーディングされたビデオ・シーケンス(CVS)におけるそれぞれのレイヤの視点に関連するピクチャを、ビットストリームから復号化することと、
第1の補足エンハンスメント情報(SEI)メッセージと第2のSEIメッセージに基づいて、1次元における表示されるべき前記視点位置を決定することであって、前記第1のSEIメッセージはスケーラビリティ次元情報(SDI)を含み、前記第2のSEIメッセージはマルチビュー視点位置(MVP)情報を含む、決定することと、
前記1次元における前記視点位置に基づいて、復号化されたピクチャを表示することとを行うように構成されている、装置。
【0218】
(付記11)
付記10に記載の装置において、前記処理回路は、前記CVSの前記それぞれのレイヤの視点の各々について、
前記第1のSEIメッセージに基づいて、前記それぞれの視点の視点識別子を決定し、及び
前記第2のSEIメッセージにおける視点位置変数と決定された視点識別子とに基づいて、前記1次元における表示されるべきそれぞれの視点位置を決定するように構成されている、装置。
【0219】
(付記12)
付記10に記載の装置において、前記処理回路は、
前記視点の数を示す第1の値を前記第1のSEIメッセージから導出することと、
前記視点の数に関連する第2の値を、前記第2のSEIメッセージから取得することであって、前記第2の値は前記第1の値とは異なる、取得することと、
適合性検査において前記第1の値と1プラス前記第2の値とを比較することとを行うように構成されている、装置。
【0220】
(付記13)
付記10に記載の装置において、前記第2のSEIメッセージは、前記CVSのイントラ・ランダム・アクセス・ポイント(IRAP)アクセス・ユニットに関連付けられている、装置。
【0221】
(付記14)
付記10に記載の装置において、前記視点位置は、前記CVSのアクセス・ユニットに適用されている、装置。
【0222】
(付記15)
付記10に記載の装置において、前記第1のSEIメッセージは前記CVSに含まれていることに基づいて、前記第2のSEIメッセージは前記CVSに含まれており、
前記処理回路は、前記第1のSEIメッセージ及び前記第2のSEIメッセージが前記CVSに含まれていることに基づいて、前記決定すること及び前記表示することを実行するように構成されている、装置。
【0223】
(付記16)
付記10に記載の装置において、前記CVSは、3D参照表示情報を含む第3のSEIメッセージを含み、前記3D参照表示情報は、左視点の視点識別子と、右視点の視点識別子と、参照表示の参照表示幅とを示し、前記処理回路は、
前記視点の数を示す第1の値を前記第1のSEIメッセージから導出することと、
前記視点の数に関連する第3の値を前記第3のSEIメッセージから取得することであって、前記第3の値は前記第1の値と異なる、取得することとと、
適合性検査において前記第1の値と1プラス前記第3の値とを比較することとを行うように構成されている、装置。
【0224】
(付記17)
付記16に記載の装置において、
前記第3のSEIメッセージは、前記第3のSEIメッセージでシグナリングされる参照表示の数を示し、
前記参照表示の数の最大値は、前記第3のSEIメッセージにおける前記視点の数に関連する前記第3の値に基づいている、装置。
【0225】
(付記18)
付記10に記載の装置において、前記第1のSEIメッセージはSDI SEIメッセージであり、前記第2のSEIメッセージはMVP SEIメッセージである、装置。
【0226】
(付記19)
少なくとも1つのプロセッサにより実行することが可能なプログラムを記憶する非一時的なコンピュータ読み取り可能な記憶媒体であって、前記プログラムは、
コーディングされたビデオ・シーケンス(CVS)におけるそれぞれのレイヤの視点に関連するピクチャを、ビットストリームから復号化することと、
第1の補足エンハンスメント情報(SEI)メッセージと第2のSEIメッセージに基づいて、1次元における表示されるべき前記視点位置を決定することであって、前記第1のSEIメッセージはスケーラビリティ次元情報(SDI)を含み、前記第2のSEIメッセージはマルチビュー視点位置(MVP)情報を含む、決定することと、
前記1次元における前記視点位置に基づいて、復号化されたピクチャを表示することとを実行するためのものである、記憶媒体。
【0227】
(付記20)
付記19に記載の非一時的なコンピュータ読み取り可能な記憶媒体であって、前記少なくとも1つのプロセッサにより実行することが可能なプログラムは、前記CVSの前記それぞれのレイヤの視点の各々について、
前記第1のSEIメッセージに基づいて、前記それぞれの視点の視点識別子を決定ことと、
前記第2のSEIメッセージにおける視点位置変数と決定された視点識別子とに基づいて、前記1次元における表示されるべきそれぞれの視点位置を決定することとを実行する、記憶媒体。
【0228】
[0226] 付録A:頭字語
【符号の説明】
【0229】
JEM: joint exploration model(ジョイント探索モデル)
VVC: versatile video coding(多用途ビデオ・コーディング)
BMS: benchmark set(ベンチマーク・セット)
MV: Motion Vector(動きベクトル)
HEVC: High Efficiency Video Coding(高効率ビデオ・コーディング)
SEI: Supplementary Enhancement Information(捕捉エンハンスメント情報)
VUI: Video Usability Information(ビデオ・ユーザビリティ情報)
GOPs: Groups of Pictures(ピクチャ・グループ)
TUs: Transform Units(変換ユニット)
PUs: Prediction Units(予測ユニット)
CTUs: Coding Tree Units(コーディング・ツリー・ユニット)
CTBs: Coding Tree Blocks(コーディング・ツリー・ブロック)
PBs: Prediction Blocks(予測ブロック)
HRD: Hypothetical Reference Decoder(仮想参照デコーダ)
SNR: Signal Noise Ratio(信号雑音比)
CPUs: Central Processing Units(中央処理ユニット)
GPUs: Graphics Processing Units(グラフィックス処理ユニット)
CRT: Cathode Ray Tube(陰極線管)
LCD: Liquid-Crystal Display(液晶ディスプレイ)
OLED: Organic Light-Emitting Diode(有機発光第オード)
CD: Compact Disc(コンパクト・ディスク)
DVD: Digital Video Disc(ディジタル・ビデオ・ディスク)
ROM: Read-Only Memory(リード・オンリ・メモリ)
RAM: Random Access Memory(ランダム・アクセス・メモリ)
ASIC: Application-Specific Integrated Circuit(特定用途集積回路)
PLD: Programmable Logic Device(プログラマブル論理デバイス)
LAN: Local Area Network(ローカル・エリア・ネットワーク)
GSM: Global System for Mobile communications(移動通信用グローバル・システム)
LTE: Long-Term Evolution(ロングターム・エボリューション)
CANBus: Controller Area Network Bus(コントローラ・エリア・ネットワーク・バス)
USB: Universal Serial Bus(ユニバーサル・シリアル・バス)
PCI: Peripheral Component Interconnect(ペリフェラル・コンポーネント相互接続)
FPGA: Field Programmable Gate Areas(フィールド・プログラマブル・ゲート・アレイ)
SSD: solid-state drive(ソリッド・ステート・デバイス)
IC: Integrated Circuit(集積回路)
CU: Coding Unit(コーディング・ユニット)
R-D: Rate-Distortion(レート歪)
図1A
図1B
図2
図3
図4
図5
図6
図7
図8
図9
図10A
図10B
図10C
図11
図12
図13
図14
図15