(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-31
(45)【発行日】2022-04-08
(54)【発明の名称】ビデオ・コーディングのための方法、装置、及びコンピュータ・プログラム
(51)【国際特許分類】
H04N 19/103 20140101AFI20220401BHJP
H04N 19/136 20140101ALI20220401BHJP
H04N 19/167 20140101ALI20220401BHJP
H04N 19/176 20140101ALI20220401BHJP
【FI】
H04N19/103
H04N19/136
H04N19/167
H04N19/176
(21)【出願番号】P 2020542992
(86)(22)【出願日】2019-06-26
(86)【国際出願番号】 US2019039223
(87)【国際公開番号】W WO2020009864
(87)【国際公開日】2020-01-09
【審査請求日】2020-08-07
(32)【優先日】2018-07-02
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-12-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】シュイ,モン
(72)【発明者】
【氏名】リ,シアン
(72)【発明者】
【氏名】リィウ,シャン
【審査官】鉢呂 健
(56)【参考文献】
【文献】特表2013-509788(JP,A)
【文献】特開2010-193401(JP,A)
【文献】特開2011-223303(JP,A)
【文献】XU, Meng et al.,CE1 related: Partial CU for picture boundary handling,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting: Ljubljana, SI, 10-18 July 2018, [JVET-K0366-v2],JVET-K0366 (version 2),ITU-T,2018年07月12日,pp. 1-2
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
デコーダにおけるビデオ・デコーディングのための方法であって:
符号化ビデオ・ビットストリームにおいてピクチャに関連付けられるブロックのエンコーディング情報を受信するステップ;
前記エンコーディング情報に基づいて、前記ブロックは前記ピクチャ内の有効領域と前記ピクチャ外の無効領域とを含むか否かを判断するステップ;及び
前記ブロックは前記ピクチャ内の前記有効領域と前記ピクチャ外の前記無効領域とを含むと判断された場合に、前記ブロックの前記有効領域内の少なくとも1つのサンプルを再構成するステップ;
を含
み、前記有効領域は幅及び高さを有する矩形形状を有し、前記幅及び前記高さのうちの1つは2の冪乗ではなく;
前記少なくとも1つのサンプルを再構成する前記ステップは:
イントラ予測モード及びインター予測モードのうちの1つを利用して前記有効領域内の前記少なくとも1つのサンプルに対する少なくとも1つの予測を生成するステップ;及び
残差データによらず、前記少なくとも1つの予測に基づいて前記少なくとも1つのサンプルを再構成するステップ;
を含む、方法。
【請求項2】
前記少なくとも1つのサンプルを再構成する前記ステップは:
前記ブロックの前記有効領域内にのみ、前記少なくとも1つのサンプルを含むサンプルを再構成するステップを含む、請求項1に記載の方法。
【請求項3】
前記有効領域内の前記少なくとも1つのサンプルは同じ予測情報と同じ変換情報とを有する、請求項1に記載の方法。
【請求項4】
前記少なくとも1つのサンプルを再構成する前記ステップは:
前記同じ予測情報を利用して、前記有効領域内の前記少なくとも1つのサンプルに対する少なくとも1つの予測を生成するステップ;
前記同じ変換情報を利用して、前記少なくとも1つのサンプルに対する少なくとも1つの残差データを取得するステップ;及び
前記少なくとも1つの予測と前記少なくとも1つの残差データとに基づいて前記少なくとも1つのサンプルを再構成するステップ;
を含む、請求項3に記載の方法。
【請求項5】
前記ブロックは、2の冪乗である幅及び高さを有する複数の矩形サブ・ブロックに分割することが可能であり、前記矩形サブ・ブロックを取得するための分割数は所定の閾値より少ない、請求項1に記載の方法。
【請求項6】
前記ブロックの前記有効領域は、四分木分割及び二分木分割のうちの1つによる前記ブロックの単一分割によっては取得できない、請求項1に記載の方法。
【請求項7】
前記エンコーディング情報は、前記ブロックは前記ピクチャ内の前記有効領域と前記ピクチャ外の前記無効領域とを含むことを示す非分割フラグを含む、請求項1に記載の方法。
【請求項8】
符号化ビデオ・ビットストリームにおいてピクチャに関連付けられるブロックのエンコーディング情報を受信するステップ;
前記エンコーディング情報に基づいて、前記ブロックは前記ピクチャ内の有効領域と前記ピクチャ外の無効領域とを含むか否かを判断するステップ;及び
前記ブロックは前記ピクチャ内の前記有効領域と前記ピクチャ外の前記無効領域とを含むと判断された場合に、前記ブロックの前記有効領域内の少なくとも1つのサンプルを再構成するステップ;
を行うように構成された処理回路を有
し、
前記有効領域は幅及び高さを有する矩形形状を有し、前記幅及び前記高さのうちの1つは2の冪乗ではなく;
前記処理回路は更に:
イントラ予測モード及びインター予測モードのうちの1つを利用して前記有効領域内の前記少なくとも1つのサンプルに対する少なくとも1つの予測を生成するステップ;及び
残差データによらず、前記少なくとも1つの予測に基づいて前記少なくとも1つのサンプルを再構成するステップ;
を行うように構成されている、装置。
【請求項9】
前記処理回路は:
前記ブロックの前記有効領域内にのみ、前記少なくとも1つのサンプルを含むサンプルを再構成するステップを行うように更に構成されている、請求項
8に記載の装置。
【請求項10】
前記有効領域内の前記少なくとも1つのサンプルは同じ予測情報と同じ変換情報とを有する、請求項
8に記載の装置。
【請求項11】
前記処理回路は更に:
前記同じ予測情報を利用して、前記有効領域内の前記少なくとも1つのサンプルに対する少なくとも1つの予測を生成するステップ;
前記同じ変換情報を利用して、前記少なくとも1つのサンプルに対する少なくとも1つの残差データを取得するステップ;及び
前記少なくとも1つの予測と前記少なくとも1つの残差データとに基づいて前記少なくとも1つのサンプルを再構成するステップ;
を行うように構成されている、請求項
10に記載の装置。
【請求項12】
前記ブロックは、2の冪乗である幅及び高さを有する複数の矩形サブ・ブロックに分割することが可能であり、前記矩形サブ・ブロックを取得するための分割数は所定の閾値より少ない、請求項
8に記載の装置。
【請求項13】
前記ブロックの前記有効領域は、四分木分割及び二分木分割のうちの1つによる前記ブロックの単一分割によっては取得できない、請求項
8に記載の装置。
【請求項14】
前記エンコーディング情報は、前記ブロックは前記ピクチャ内の前記有効領域と前記ピクチャ外の前記無効領域とを含むことを示す非分割フラグを含む、請求項
8に記載の装置。
【請求項15】
非一時的なコンピュータ読み取り可能な記憶媒体であって:
符号化ビデオ・ビットストリームにおいてピクチャに関連付けられるブロックのエンコーディング情報を受信するステップ;
前記エンコーディング情報に基づいて、前記ブロックは前記ピクチャ内の有効領域と前記ピクチャ外の無効領域とを含むか否かを判断するステップ;及び
前記ブロックは前記ピクチャ内の前記有効領域と前記ピクチャ外の前記無効領域とを含むと判断された場合に、前記ブロックの前記有効領域内の少なくとも1つのサンプルを再構成するステップ;
を少なくとも1つのプロセッサに実行させるプログラムを格納し
、前記有効領域は幅及び高さを有する矩形形状を有し、前記幅及び前記高さのうちの1つは2の冪乗ではなく;
前記少なくとも1つのサンプルを再構成する前記ステップは:
イントラ予測モード及びインター予測モードのうちの1つを利用して前記有効領域内の前記少なくとも1つのサンプルに対する少なくとも1つの予測を生成するステップ;及び
残差データによらず、前記少なくとも1つの予測に基づいて前記少なくとも1つのサンプルを再構成するステップ;
を含む、記憶媒体。
【請求項16】
デコーダのコンピュータに:
符号化ビデオ・ビットストリームにおいてピクチャに関連付けられるブロックのエンコーディング情報を受信するステップ;
前記エンコーディング情報に基づいて、前記ブロックは前記ピクチャ内の有効領域と前記ピクチャ外の無効領域とを含むか否かを判断するステップ;及び
前記ブロックは前記ピクチャ内の前記有効領域と前記ピクチャ外の前記無効領域とを含むと判断された場合に、前記ブロックの前記有効領域内の少なくとも1つのサンプルを再構成するステップ;
を実行させ
、前記有効領域は幅及び高さを有する矩形形状を有し、前記幅及び前記高さのうちの1つは2の冪乗ではなく;
前記少なくとも1つのサンプルを再構成する前記ステップは:
イントラ予測モード及びインター予測モードのうちの1つを利用して前記有効領域内の前記少なくとも1つのサンプルに対する少なくとも1つの予測を生成するステップ;及び
残差データによらず、前記少なくとも1つの予測に基づいて前記少なくとも1つのサンプルを再構成するステップ;
を含む、コンピュータ・プログラム。
【発明の詳細な説明】
【背景技術】
【0001】
関連出願
本願は2018年12月28日付で出願された「METHOD AND APPARATUS FOR VIDEO CODING」と題する米国特許出願第16/235,614号による優先権を主張しており、その出願は2018年7月2日付で出願された米国仮出願第62/693,067号「Partial Coding Unit」に対する優先権を主張しており、それら内容全体は本願に組み込まれる。
【0002】
技術分野
本開示は一般的にビデオ・コーディングに関連する実施形態を記載している。
【0003】
背景技術
本願で提供される背景技術の説明は、開示の状況を一般的に提示するためのものである。研究がこの背景技術の欄で説明される限度において、指定された発明者の研究、及び出願時に従来技術としての適格を有しない可能性がある態様は、本開示に対する従来技術として明示的にも黙示的にも認められていない。
【0004】
ビデオ・コーディング及びデコーディングは、動き補償を伴うインター・ピクチャ予測を利用して実行されることが可能である。非圧縮ディジタル・ビデオは一連のピクチャを含むことが可能であり、各ピクチャは、例えば、1920×1080のルミナンス・サンプル及び関連するクロミナンス・サンプルの空間次元を有する。一連のピクチャは、毎秒60ピクチャ又は60Hzという固定または可変のピクチャ・レート(非公式にフレーム・レートとしても知られている)を有することが可能である。非圧縮ビデオは、かなりのビットレート要件を有する。例えば、サンプル当たり8ビットの1080p60 4:2:0ビデオ(60Hzのフレーム・レートで1920x1080の輝度サンプル解像度)は、1.5Gbit/sに近い帯域幅を必要とする。このようなビデオの1時間は、600Gバイトを超える記憶領域を必要とする。
【0005】
ビデオのコーディング及びデコーディングの目的の1つは、圧縮による入力ビデオ信号の冗長性の削減であるとすることが可能である。圧縮は、場合によっては、2桁以上の大きさで前述の帯域幅又は記憶領域の要求を低減するのに役立つ可能性がある。可逆圧縮(ロスレス圧縮)及び非可逆圧縮(ロッシー圧縮)の両方、並びにそれらの組み合わせを用いることができる。ロスレス圧縮は、オリジナル信号の正確なコピーが、圧縮されたオリジナル信号から再構成されることが可能な技術を指す。ロッシー圧縮を使用する場合、再構成された信号は、オリジナル信号と同一ではないかもしれないが、オリジナル信号と再構成された信号との間のズレは、再構成された信号を、意図された用途に使用できる程度に十分小さい。ビデオの場合、ロッシー圧縮が広く使用されている。許容される歪みの量は、アプリケーションに依存し:例えば、特定のカスタマー・ストリーミング・アプリケーションのユーザーは、テレビジョン配信アプリケーションのユーザーよりも高い歪みに耐えることができる。達成可能な圧縮比は:より高い許容可能な/耐えられる歪みは、より高い圧縮比をもたらし得ることを反映することができる。
【0006】
ビデオ・エンコーダ及びデコーダは、例えば動き補償、変換、量子化、及びエントロピー符号化を含む、幾つかの広範なカテゴリからの技術を利用することができる。
【0007】
ビデオ・コーデック技術は、イントラ・コーディングとして知られる技術を含むことが可能である。イントラ・コーディングでは、サンプル値は、以前に再構成されたリファレンス・ピクチャからのサンプル又は他のデータを参照することなく表現される。あるビデオ・コーデックでは、ピクチャはサンプルのブロックに空間的に分割される。サンプルの全てのブロックがイントラ・モードで符号化される場合、そのピクチャはイントラ・ピクチャであるとすることが可能である。イントラ・ピクチャとそれらの派生物(例えば、独立デコーダ・リフレッシュ・ピクチャ)は、デコーダ状態をリセットするために使用されることが可能であり、従って、符号化ビデオ・ビットストリーム及びビデオ・セッションにおける最初のピクチャとして、又は静止画像として使用することができる。イントラ・ブロックのサンプルは変換の作用を受けることが可能であり、変換係数はエントロピー符号化の前に量子化されることが可能である。イントラ予測は、変換前ドメインにおけるサンプル値を最小化する技術であり得る。場合によっては、変換後にDC値が小さいほど、及びAC係数が小さいほど、エントロピー符号化後のブロックを表現するために所与の量子化ステップ・サイズで必要とされるビット数は少なくなる。
【0008】
例えばMPEG-2世代の符号化技術などで知られているような伝統的なイントラ符号化は、イントラ予測を利用していない。しかしながら、幾つかのより新しいビデオ圧縮技術は、例えば空間的に隣接し及びデコード順に先行するデータのブロックをエンコード/デコードする際に取得されたメタデータ及び/又は周辺サンプル・データから試みる技術を含む。そのような技術は以後「イントラ予測」技術と呼ばれる。少なくとも幾つかのケースでは、イントラ予測は再構成中の現在のピクチャからのリファレンス・データのみを使用し、リファレンス・ピクチャからのものを使用しないことに留意を要する。
【0009】
多様な形式のイントラ予測が存在し得る。所与のビデオ符号化技術において、そのような技術の1つ以上を使用することができる場合、使用する技術は、イントラ予測モードで符号化されることが可能である。ある場合には、モードは、サブモード及び/又はパラメータを有することが可能であり、それらは、個別に符号化されることが可能であり、又はモード・コードワードに含められることが可能である。所与のモード/サブモード/パラメータの組み合わせに使用するコードワードが何であるかは、イントラ予測による符号化効率利得に影響を与える可能性があり、また、コードワードをビットストリームに変換するために使用されるエントロピー符号化技術もそのような可能性がある。
【0010】
ある種のイントラ予測モードがH.264で導入され、H.265で改良され、ジョイント・エクスプロレーション・モデル(JEM)、汎用ビデオ符号化(VVC)、ベンチマーク・セット(BMS)などの新しい符号化技術で更に改良されている。予測器ブロックは、既に利用可能なサンプルに属する隣接するサンプル値を使用して形成されることが可能である。隣接するサンプルのサンプル値は、方向に応じて予測器ブロックにコピーされる。使用中の方向に対するリファレンスは、ビットストリームで符号化されることが可能であり、又はそれ自体が予測されてもよい。
【0011】
図1Aを参照すると、右下に、H.265の35個の可能な予測方向から分かる9つの予測方向のサブセットが示されている。矢印が集まる点(101)は、予測されるサンプルを表す。矢印はサンプルが予測される方向を示す。例えば、矢印(102)は、サンプル(101)が、水平から45度の角度で、サンプル又はサンプル群から右上に向かって予測されることを示す。同様に、矢印(103)は、サンプル(101)が、水平から22.5度の角度で、サンプル又はサンプル群からサンプル(101)の左下へ向かって予測されることを示す
【0012】
図1Aを更に参照すると、左上に4×4サンプルの正方形ブロック(104)が示されている(太い破線で示されている)。正方形ブロック(104)は16個のサンプルを含み、各サンプルは、「S」、Y次元におけるその位置(例えば、行インデックス)、及びX次元におけるその位置(例えば、列インデックス)とともにラベル付けされている。例えば、サンプルS21は、Y次元の(上から)2番目のサンプル及びX次元の(左から)1番目のサンプルである。同様に、サンプルS44は、Y及びX次元の双方においてブロック(104)の4番目のサンプルである。ブロックのサイズは4×4サンプルであるので、S44は最も右下にある。更に、同様の番号付け方式に従ったリファレンス・サンプルが示されている。リファレンス・サンプルは、ブロック(104)に対して、R、そのY位置(例えば、行インデックス)と、X位置(列インデックス)とでラベル付けされる。H.264及びH.265の両方において、予測サンプルは再構成中のブロックに隣接しているので、負の値を使用する必要はない。
【0013】
合図された予測方向に応じて、隣接するサンプルからリファレンス・サンプル値をコピーすることによって、イントラ・ピクチャ予測がうまくいく。例えば、符号化ビデオ・ビットストリームが、このブロックについて、矢印(102)に一致する予測方向を示すシグナリングを含むと仮定すると、サンプルは、水平から45度の角度で、予測サンプル又はサンプル群から右上へ向かって予測される。その場合、サンプルS41、S32、S23、及びS14は、同じリファレンス・サンプルR05から予測される。そして、サンプルS44はリファレンス・サンプルR08から予測される。
【0014】
場合によっては、リファレンス・サンプルを計算するために、特に方向が45度で均等に割り切れない場合、補間により複数のリファレンス・サンプルの値が組み合わせられてもよい。
【0015】
ビデオ符号化技術が発達するにつれて、可能な方向の数は増加している。H.264(2003年)では、9つの異なる方向が表現できていた。これは、H.265(2013年)で33まで増加し、本開示の時点におけるJEM/VVC/BMSは、最大65の方向をサポートすることが可能である。最も可能性の高い方向を識別するために実験が行われており、少数のビットでそれらの可能性のある方向を表現するために、より可能性の低い方向に対してあるペナルティを受け入れて、エントロピー符号化におけるある技術が使用されている。更に、方向それ自体は、隣接する既にデコードされたブロックで使用される隣接方向から予測されることが可能である。
【0016】
図1Bは、経時的に増加する予測方向の数を示すために、JEMによる65のイントラ予測方向を示す概略図(110)を示す。
【0017】
方向を表す符号化ビデオ・ビットストリームにおけるイントラ予測方向ビットのマッピングは、ビデオ符号化技術ごとに異なる可能性があり;例えば、予測方向の単純な直接的なマッピングから、イントラ予測モード、コードワード、最も可能性の高いモードを含む複雑な適応方式、及び同様な技術にまで範囲が及ぶ可能性がある。しかしながら、どのような場合でも、ビデオ・コンテンツにおいて、他の特定の方向よりも統計的に起こりにくい特定の方向が存在し得る。ビデオ圧縮のゴールは冗長性の削減であるので、良好に動作するビデオ符号化技術においては、より可能性の高い方向よりもより多いビット数によって、より可能性の低い方向が表現される。
【0018】
動き補償はロッシー圧縮技術であることが可能であり、且つある技術に関連することが可能であり、その技術では、動きベクトル(以後MVという)で示される方向に空間的にシフトされた後、以前に再構成されたピクチャ又はその一部(リファレンス・ピクチャ)からのサンプル・データのブロックが、新しく再構成されたピクチャ又はその一部の予測に使用される。場合によっては、リファレンス・ピクチャは、現在再構成中のピクチャと同じであるとすることが可能である。MVは、X及びYの2つの次元、又は3つの次元を有し、第3次元は、使用中のリファレンス・ピクチャの指標である(後者は、間接的に、時間次元であり得る)。
【0019】
幾つかのビデオ圧縮技術では、サンプル・データの特定の領域に適用可能なMVは、他のMVから予測されることが可能であり、例えば、再構成中のエリアに空間的に隣接し、デコード順序でそのMVに先行する、サンプル・データの別のエリアに関連するものから予測されることが可能である。これにより、MVの符号化に必要なデータ量を大幅に削減することができ、それによって冗長性を削減し、圧縮を増加させることができる。例えば、カメラ(ナチュラル・ビデオとして知られる)から導出された入力ビデオ信号を符号化する際に、単一のMVが適用されるエリアよりも大きなエリアが同様な方向に移動する統計的な可能性があり、従って、ある場合には、隣接するエリアのMVから導出される同様な動きベクトルを用いて予測することができるので、MV予測は効果的に機能する可能性がある。その結果、MVは、与えられたエリアに対して、周囲のMVから予測されるMVと類似又は同一であることが見出され、そしてそれは、エントロピー符号化の後、MVを直接的に符号化する場合に使用されるであろうものよりも、より少ないビット数で表現されることが可能である。場合によっては、MV予測は、元の信号(即ち、サンプル・ストリーム)から導出された信号(即ち、MV)のロスレス圧縮の例である可能性がある。他の場合には、MV予測それ自体は、例えば、幾つかの周囲のMVから予測を計算する際の丸め誤差に起因して、非可逆的である可能性がある。
【0020】
H.265/HEVC(ITU-T Rec.H.265,“High Efficiency Video Coding”,December 2016)には様々なMV予測方式が記載されている。H.265が提供する多くのMV予測方式のうち、本願では、以後「空間マージ(spatial merge)」と呼ばれる技術が説明される。
【0021】
図1Cを参照すると、現在ブロック(121)は、空間的にシフトされた同じサイズの以前のブロックからの予測可能であることが、動き探索プロセス中にエンコーダによって見出されたサンプルを含む。そのMVを直接的に符号化する代わりに、MVは、1つ以上のリファレンス・ピクチャに関連付けられるメタデータから導出されることが可能であり、例えば、A0、A1、及びB0、B1、B2(それぞれ122から126)で示される5つの周辺サンプルのうちの何れかに関連するMVを使用して、(復号順に)最新のリファレンス・ピクチャから導出されることが可能である。H.265では、MV予測は、隣接ブロックが使用しているものと同じリファレンス・ピクチャからの予測を使用することができる。
【発明の概要】
【0022】
開示の態様はビデオ・デコーディングのための方法及び装置を提供する。ある実施形態において、装置は処理回路を含む。処理回路は、符号化ビデオ・ビットストリームにおいてピクチャに関連付けられるブロックのエンコーディング情報を受信する。処理回路は、エンコーディング情報に基づいて、ブロックはピクチャ内の有効領域とピクチャ外の無効領域とを含むか否かを判断する。更に、処理回路は、ブロックはピクチャ内の有効領域とピクチャ外の無効領域とを含むと判断された場合に、ブロックの有効領域内の少なくとも1つのサンプルを再構成する。
【0023】
実施形態において、処理回路は、ブロックの有効領域内にのみ、少なくとも1つのサンプルを含むサンプルを再構成する。
【0024】
実施形態において、有効領域内の少なくとも1つのサンプルは同じ予測情報と同じ変換情報とを有する。
【0025】
実施形態において、処理回路は、同じ予測情報を利用して、有効領域内の少なくとも1つのサンプルに対する少なくとも1つの予測を生成する。更に、処理回路は、同じ変換情報を利用して、少なくとも1つのサンプルに対する少なくとも1つの残差データを取得し、少なくとも1つの予測と少なくとも1つの残差データとに基づいて少なくとも1つのサンプルを再構成する。
【0026】
実施形態において、有効領域は幅及び高さを有する矩形形状を有し、幅及び高さのうちの1つは2の冪乗ではない。処理回路は、スキップ・モードを利用するだけで有効領域内の少なくとも1つのサンプルに対する少なくとも1つの予測を生成し、残差データによらず、少なくとも1つの予測に基づいて少なくとも1つのサンプルを再構成する。
【0027】
実施形態において、有効領域は幅及び高さを有する矩形形状を有し、幅及び高さのうちの1つは2の冪乗ではない。処理回路は、イントラ予測モード及びインター予測モードのうちの1つを利用して有効領域内の少なくとも1つのサンプルに対する少なくとも1つの予測を生成する。更に、処理回路は、残差データによらず、少なくとも1つの予測に基づいて少なくとも1つのサンプルを再構成する。
【0028】
実施形態において、ブロックは、2の冪乗である幅及び高を有する複数の矩形サブ・ブロックに分割することが可能であり、矩形サブ・ブロックを取得するための分割数は所定の閾値より少ない。
【0029】
実施形態において、ブロックの有効領域は、四分木分割及び二分木分割のうちの1つによるブロックの単一分割によっては取得できない。
【0030】
実施形態において、エンコーディング情報は、ブロックはピクチャ内の有効領域とピクチャ外の無効領域とを含むことを示す非分割フラグを含む。
【0031】
本開示の態様はまた、ビデオ・デコーディングのためにコンピュータによって実行される場合に、ビデオ・コーディング方法をコンピュータに実行させる命令を保存する非一時的なコンピュータ読み取り可能な記憶媒体を提供する。
【図面の簡単な説明】
【0032】
開示される対象事項の更なる特徴、性質、及び種々の利点は、以下の詳細な説明及び添付の図面から更に明らかになるであろう。
【0033】
【
図1A】イントラ予測モードの例示的なサブセットの概略図である。
【0034】
【
図1B】例示的なイントラ予測方向を示す図である。
【0035】
【
図1C】一例における現在ブロック及びその周囲の空間マージ候補の概略図である。
【0036】
【
図2】実施形態による通信システム(200)の簡略化されたブロック図の概略図である。
【0037】
【
図3】実施形態による通信システム(300)の簡略化されたブロック図の概略図である。
【0038】
【
図4】実施形態によるデコーダの簡略化されたブロック図の概略図である。
【0039】
【
図5】実施形態によるエンコーダの簡略化されたブロック図の概略図である。
【0040】
【
図6】別の実施形態によるエンコーダのブロック図を示す。
【0041】
【
図7】他の実施形態によるデコーダのブロック図を示す。
【0042】
【
図8】本開示の実施形態によるブロック分割構造の例を示す。
【0043】
【
図9A】本開示の実施形態によるブロック分割の例を示す。
【
図9B】本開示の実施形態によるブロック分割の例を示す。
【0044】
【
図10A】本開示の実施形態によるブロック分割の例を示す。
【
図10B】本開示の実施形態によるブロック分割の例を示す。
【0045】
【
図11】本開示の実施形態によるブロック分割の例を示す。
【0046】
【
図12A】ピクチャ外のエリアを含む本開示の実施形態による符号化ツリー・ユニットの例を示す。
【0047】
【
図12B】本開示の実施形態による部分的な符号化ユニットの例を示す。
【
図12C】本開示の実施形態による部分的な符号化ユニットの例を示す。
【0048】
【
図12D】本開示の実施形態に従ってピクチャが複数の符号化ツリー・ユニットに分割される例を示す。
【0049】
【
図13】本開示の実施形態による部分的な符号化ユニットの例を示す。
【0050】
【
図14】部分的な符号化ユニットが使用されない本開示の実施形態による例を示す。
【0051】
【
図15A】本開示の実施形態による部分的な符号化ユニットの例を示す。
【
図15B】本開示の実施形態による部分的な符号化ユニットの例を示す。
【0052】
【
図15C】部分的な符号化ユニットが使用されない本開示の実施形態による例を示す。
【0053】
【
図16】本開示の一実施形態による復号化プロセスを示す。
【0054】
【
図17】本開示の一実施形態による符号化プロセスを示す。
【0055】
【
図18】実施形態によるコンピュータ・システムの概略図である。
【発明を実施するための形態】
【0056】
図2は、本開示の実施形態による通信システム(200)の簡略化されたブロック図を示す。通信システム(200)は、例えばネットワーク(250)を介して互いに通信することが可能な複数の端末デバイスを含む。例えば、通信システム(200)は、ネットワーク(250)を介して相互接続された第1ペアの端末デバイス(210)及び(220)を含む。
図2の例では、第1ペアの端末デバイス(210)及び(220)は、データの一方向伝送を実行する。例えば、端末デバイス(210)は、ネットワーク(250)を介して他の端末デバイス(220)への伝送のために、ビデオ・データ(例えば、端末デバイス(210)によってキャプチャされたビデオ・ピクチャのストリーム)を符号化する可能性がある。エンコードされたビデオ・データは、1つ以上の符号化されたビデオ・ビットストリームの形態で伝送されることが可能である。端末デバイス(220)は、ネットワーク(250)から符号化されたビデオ・データを受信し、符号化されたビデオ・データをデコードし、復元されたビデオ・データに従ってビデオ・ピクチャを表示することができる。一方向性データ伝送は、メディア・サービング・アプリケーション等において一般的である可能性がある。
【0057】
別の例では、通信システム(200)は、例えばテレビ会議中に発生する可能性がある符号化ビデオ・データの双方向伝送を実行する第2ペアの端末デバイス(230)及び(240)を含む。データの双方向伝送のために、例えば、端末デバイス(230)及び(240)の各端末デバイスは、ネットワーク(250)を介して端末デバイス(230)及び(240)のうちの他方の端末デバイスへの伝送のために、ビデオ・データ(例えば、端末デバイスによってキャプチャされたビデオ・ピクチャのストリーム)を符号化することができる。端末デバイス(230)及び(240)の各端末デバイスは、端末デバイス(230)及び(240)のうちの他方の端末デバイスによって送信された符号化ビデオ・データを受信し、符号化ビデオ・データをデコードし、復元されたビデオ・データに従って、アクセス可能なディスプレイ装置でビデオ・ピクチャを表示することができる。
【0058】
図2の例では、端末デバイス(210)、(220)、(230)及び(240)は、サーバー、パーソナル・コンピュータ及びスマートフォンとして説明される可能性があるが、本開示の原理は、そのように限定されない。本開示の実施形態は、ラップトップ・コンピュータ、タブレット・コンピュータ、メディア・プレーヤ、及び/又は専用のビデオ会議装置を伴うアプリケーションを見出す。ネットワーク(250)は、例えば有線(配線された)及び/又は無線通信ネットワークを含む、端末装デバイス(210)、(220)、(230)及び(240)の間で符号化ビデオ・データを伝達する任意数のネットワークを表す。通信ネットワーク(250)は、回線交換及び/又はパケット交換チャネルでデータを交換することができる。代表的なネットワークは、通信ネットワーク、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク及び/又はインターネットを含む。本説明の目的のために、ネットワーク(250)のアーキテクチャ及びトポロジーは、以下に説明されない限り、本開示の動作には重要ではない。
【0059】
図3は、開示された対象事項の適用例として、ストリーミング環境におけるビデオ・エンコーダ及びビデオ・デコーダの配置を示す。開示される対象事項は、例えばビデオ会議、デジタルTV、CD、DVD、メモリ・スティックなどを含むデジタル・メディアにおける圧縮ビデオの記憶などを含む、他のビデオが利用可能なアプリケーションにも同様に適用されることが可能である。
【0060】
ストリーミング・システムは、例えばデジタル・カメラ等のビデオ・ソース(301)を含むことが可能なキャプチャ・サブシステム(313)を含み、例えば非圧縮のビデオ・ピクチャ(302)のストリームを生成する。実施例では、ビデオ・ピクチャのストリーム(302)は、デジタル・カメラによって撮影されたサンプルを含む。エンコードされたビデオ・データ(304)(又は符号化ビデオ・ビットストリーム)と比較した場合に高いデータ量を強調するために太い線として描かれているビデオ・ピクチャのストリーム(302)は、ビデオ・ソース(301)に結合されたビデオ・エンコーダ(303)を含む電子デバイス(320)によって処理されることが可能である。ビデオ・エンコーダ(303)は、ハードウェア、ソフトウェア、又はそれらの組み合わせを含むことができ、以下詳細に説明されるように、開示される対象事項の態様を可能にする又は実現する。エンコードされたビデオ・データ(304)(又はエンコードされたビデオ・ビットストリーム(304))は、ビデオ・ピクチャ(302)のストリームと比較した場合により低いデータ量を強調するために細い線として示され、将来の使用のためにストリーミング・サーバー(305)に記憶されることが可能である。
図3のクライアント・サブシステム(306)及び(308)のような1つ以上のストリーミング・クライアント・サブシステムは、ストリーミング・サーバー(305)にアクセスして、エンコードされたビデオ・データ(304)のコピー(307)及び(309)を取り出すことができる。クライアント・サブシステム(306)は、例えば電子デバイス(330)内にビデオ・デコーダ(310)を含むことができる。ビデオ・デコーダ(310)は、エンコードされたビデオ・データの到来するコピー(307)をデコードし、ディスプレイ(312)(例えばディスプレイ・スクリーン)又は他のレンダリング・デバイス(図示せず)上にレンダリングされることが可能なビデオ・ピクチャの出力ストリーム(311)を生成する。あるストリーミング・システムでは、エンコードされたビデオ・データ(304)、(307)、及び(309)(例えば、ビデオ・ビットストリーム)は、特定のビデオ符号化/圧縮規格に従ってエンコードされることが可能である。これらの規格の具体例は、ITU-T勧告H.265を含む。例えば、開発中のビデオ符号化規格は、非公式に汎用ビデオ符号化(VVC)として知られている。開示される対象事項はVVCの文脈で使用される可能性がある。
【0061】
電子デバイス(320)及び(330)は、他のコンポーネント(図示せず)を含むことができることに留意されたい。例えば、電子デバイス(320)は、ビデオ・デコーダ(図示せず)を含むことが可能であり、電子デバイス(330)は、ビデオ・エンコーダ(図示せず)を含むことも可能である。
【0062】
図4は、本開示の実施形態によるビデオ・デコーダ(410)のブロック図を示す。ビデオ・デコーダ(410)は電子デバイス(430)に含まれることが可能である。電子デバイス(430)は、受信機(431)(例えば、受信回路)を含むことが可能である。ビデオ・デコーダ(410)は
図3の例におけるビデオ・デコーダ(310)の代わりに使用されることが可能である。
【0063】
受信機(431)は、ビデオ・デコーダ(410)によって復号化されるべき1つ以上の符号化されたビデオ・シーケンスを受信することが可能であり;同じ実施形態又は別の実施形態では、一度に1つの符号化ビデオ・シーケンスを受信することができ、各符号化ビデオ・シーケンスの復号化は、他の符号化ビデオ・シーケンスから独立である。符号化ビデオ・シーケンスは、チャネル(401)から受信されることが可能であり、このチャネルは、エンコードされたビデオ・データを記憶する記憶装置に対するハードウェア/ソフトウェア・リンクであってもよい。受信機(431)は、エンコードされたビデオ・データを、他のデータ、例えば符号化されたオーディオ・データ及び/又は補助的なデータ・ストリームと共に受信することが可能であり、これらのデータは、(不図示の)エンティティを使用してそれぞれ転送されることができる。受信機(431)は、符号化ビデオ・シーケンスを他のデータから分離することができる。ネットワーク・ジッタに対処するために、バッファ・メモリ(415)は、受信機(431)とエントロピー・デコーダ/パーサ(420)(以後「パーサ(420)」と言及する)との間に結合される可能性がある。特定のアプリケーションでは、バッファ・メモリ(415)はビデオ・デコーダ(410)の一部である。他の場合においてそれはビデオ・デコーダ(410)の外側にあるとすることが可能である。更に別の例では、例えばネットワーク・ジッタに対処するために、ビデオ・デコーダ(410)の外側にバッファ・メモリ(図示せず)を設けることが可能であり、更に、例えば再生タイミングを取り扱うために、ビデオ・デコーダ(410)の内側に別のバッファ・メモリ(415)を設けることも可能である。受信機(431)が、十分な帯域幅及び制御可能性を有するストア/フォワード・デバイスから、又は同期ネットワークから、データを受信している場合、バッファ・メモリ(415)は必要とされない可能性があり、又は小さなものとすることが可能である。インターネットのようなベスト・エフォート型パケット・ネットワークでの使用のために、バッファ・メモリ(415)は、必要とされる可能性があり、比較的大きい可能性があり、好都合に適応的なサイズであるとすることが可能であり、ビデオ・デコーダ(410)の外側のオペレーティング・システム又は類似の要素(図示せず)において少なくとも部分的に実装される可能性がある。
【0064】
ビデオ・デコーダ(410)は、符号化ビデオ・シーケンスからシンボル(421)を再構成するために、パーサ(420)を含む可能性がある。これらのシンボルのカテゴリは、ビデオ・デコーダ(410)の動作を管理するために使用される情報、及び、
図4に示されているように、電子デバイス(430)の一体的な部分ではないが、電子デバイス(430)に結合されることが可能なレンダリング・デバイス(412)(例えば、表示スクリーン)のようなレンダリング・デバイスを制御するための潜在的な情報を含む。レンダリング・デバイスの制御情報は、補足拡張情報(SEIメッセージ)又はビデオ・ユーザビリティ情報(VUI)パラメータ・セット・フラグメント(図示せず)の形式におけるものであってもよい。パーサ(420)は、受信される符号化ビデオ・シーケンスを分析/エントロピー復号化することができる。符号化ビデオ・シーケンスの符号化は、ビデオ符号化技術又は規格に従うことが可能であり、可変長符号化、ハフマン符号化、コンテキスト感度を伴う又は伴わない算術符号化などを含む種々の原理に従うことが可能である。パーサ(420)は、グループに対応する少なくとも1つのパラメータに基づいて、ビデオ・デコーダ内のピクセルのサブグループのうちの少なくとも1つに対するサブグループ・パラメータのセットを、符号化ビデオ・シーケンスから抽出することができる。サブグループは、グループ・オブ・ピクチャ(GOP)、ピクチャ、タイル、スライス、マクロブロック、符号化ユニット(CU)、ブロック、変換ユニット(TU)、予測ユニット(PU)などを含むことが可能である。パーサ(420)はまた、変換係数、量子化パラメータ値、モーション・ベクトル等の符号化ビデオ・シーケンス情報から抽出することも可能である。
【0065】
パーサ(420)は、シンボル(421)を生成するために、バッファ・メモリ(415)から受信したビデオ・シーケンスに対してエントロピー・デコーディング/解析オペレーションを実行することができる。
【0066】
シンボル(421)の再構成は、符号化ビデオ・ピクチャ又はその一部の種類(インター及びイントラ・ピクチャ、インター及びイントラ・ブロックなど)又はその他の要因に応じて、複数の異なるユニットを含むことが可能である。どのユニットがどのように関与するかは、パーサ(420)によって符号化ビデオ・シーケンスから解析されたサブグループ制御情報によって制御されることが可能である。パーサ(420)と以下の複数ユニットとの間のこのようなサブグループ制御情報の流れは、明確性のために図示されていない。
【0067】
ビデオ・デコーダ(410)は、既に述べた機能ブロックを超えて、以下に説明するように複数の機能ユニットに概念的には細分されることが可能である。商業的制約の下で動作する実用的な実装において、これらのユニットのうちの多くは互いに密接に相互作用し、少なくとも部分的に互いに統合されることが可能である。しかしながら、開示された対象事項を説明するために、以下の機能ユニットへの概念的な細分化が適切である。
【0068】
第1ユニットは、スケーラ/逆変換ユニット(451)である。スケーラ/逆変換ユニット(451)は、パーサ(420)からシンボル(421)として、使用する変換、ブロックサイズ、量子化係数、量子化スケーリング行列などを含む制御情報と共に量子化された変換係数を受信する。スケーラ/逆変換ユニット(451)は、アグリゲータ(455)に入力されることが可能なサンプル値を含むブロックを出力することができる。
【0069】
場合によっては、スケーラ/逆変換(451)の出力サンプルは、イントラ符号化ブロック、即ち、以前に再構成されたピクチャからの予測情報を使用するのではなく、現在のピクチャのうちで以前に再構成された部分からの予測情報を使用することが可能なブロックに関連付けることが可能である。このような予測情報は、イントラ・ピクチャ予測ユニット(452)によって提供されることが可能である。場合によっては、イントラ・ピクチャ予測ユニット452は、現在のピクチャ・バッファ(458)から取り出された既に再構成された周囲の情報を使用して、再構成中のブロックと同じサイズ及び形状のブロックを生成する。現在のピクチャ・バッファ(458)は、例えば部分的に再構成された現在のピクチャ及び/又は完全に再構成された現在のピクチャをバッファリングする。アグリゲータ(455)は、場合によってはサンプル毎に、イントラ予測ユニット(452)が生成した予測情報を、スケーラ/逆変換ユニット(451)によって提供されるような出力サンプル情報と加算する。
【0070】
それ以外の場合には、スケーラ/逆変換ユニット(451)の出力サンプルは、インター符号化された、潜在的に動き補償されたブロックに関連付けることができる。このような場合、動き補正予測ユニット(453)は、予測に使用されるサンプルを取り出すためにリファレンス・ピクチャ・メモリ(457)にアクセスすることができる。ブロックに関連するシンボル(421)に応じて、取り出されたサンプルを動き補償した後、これらのサンプルは、アグリゲータ(455)によって、スケーラ/逆変換ユニット(451)の出力と追加され(この場合は、残留サンプル又は残留信号と呼ばれる)、出力サンプル情報を生成する。動き補償予測ユニット(453)が予測サンプルを取り出すリファレンス・ピクチャ・メモリ(457)内のアドレスは、例えばX、Y、及びリファレンス・ピクチャ成分を有することが可能なシンボル(421)の形式で動き補償予測ユニット(453)に利用可能な動きベクトルにより制御されることが可能である。また、動き補償は、サブ・サンプルの正確な動きベクトルが使用されている場合にリファレンス・ピクチャ・メモリ(457)からフェッチされるサンプル値の補間、動きベクトル予測メカニズムなどを含むことが可能である。
【0071】
アグリゲータ(455)の出力サンプルは、ループ・フィルタ・ユニット(456)内の様々なループ・フィルタリング技術の作用を受けることが可能である。ビデオ圧縮技術はループ内フィルタ技術を含むことができ、その技術は、符号化ビデオ・シーケンス(符号化ビデオ・ビットストリームとも呼ばれる)に含まれるパラメータによって制御され、パーサ(420)からシンボル(421)としてループ・フィルタ・ユニット(456)にとって利用可能にされるが、符号化ピクチャ又は符号化ビデオ・シーケンスの(復号化順に)以前の部分の復号化の間に得られたメタ情報に応答することができるとともに、以前に再構成されたループ・フィルタリングされたサンプル値に応答することができる。
【0072】
ループ・フィルタ・ユニット(456)の出力は、レンダリング・デバイス(412)に出力されることが可能であり、また、将来のインター・ピクチャ予測に使用するためにリファレンス・ピクチャ・メモリ(457)に記憶されることが可能なサンプル・ストリームとすることが可能である。
【0073】
所定の符号化ピクチャは、いったん完全に再構成されると、将来の予測のためのリファレンス・ピクチャとして使用されることが可能である。例えば、現在のピクチャに対応する符号化ピクチャが完全に再構成され、(例えば、パーサ(420)によって)符号化ピクチャがリファレンス・ピクチャとして識別されると、現在のピクチャ・バッファ(458)はリファレンス・ピクチャ・メモリ(457)の一部となることが可能であり、新しい現在のピクチャ・バッファは、次の符号化ピクチャの再構成を開始する前に再割り当てされことが可能である。
【0074】
ビデオ・デコーダ(410)は、ITU-T Rec.H.265等の規格において予め定められているビデオ圧縮技術に従ってデコーディング動作を実行することができる。符号化ビデオ・シーケンスは、符号化ビデオ・シーケンスが、ビデオ圧縮技術又は規格のシンタックス及びビデオ圧縮技術又は規格で文書化されているようなプロファイルの両方に従うという意味で、使用されるビデオ圧縮技術又は規格によって指定されたシンタックスに適合することができる。具体的には、プロファイルは、特定のツールを、そのプロファイルの下で使用できる唯一のツールとして、ビデオ圧縮技術又は規格で使用可能な全てのツールから選択することができる。また、コンプライアンスに必要なことは、符号化ビデオ・シーケンスの複雑性が、ビデオ圧縮技術又は規格のレベルによって定義される範囲内にあることである。ある場合には、レベルは、最大ピクチャ・サイズ、最大フレーム・レート、最大再構成サンプル・レート(例えば、毎秒当たりのメガサンプルで測定される)、最大リファレンス・ピクチャ・サイズなどを制限する。レベルによって設定された制限は、場合によっては、符号化ビデオ・シーケンスで通知されるHRDバッファ管理のためのHRD(Hypothetical Reference Decoder)仕様とメタデータにより更に制限することができる。
【0075】
実施形態では、受信機(431)は、エンコードされたビデオと共に追加の(冗長な)データを受信してもよい。追加データは、符号化ビデオ・シーケンスの一部として含まれる可能性がある。追加データは、データを適切にデコードするため、及び/又は元のビデオ・データをより正確に再構成するために、ビデオ・デコーダ(410)によって使用されることが可能である。追加のデータは、例えば、時間的、空間的、又は信号雑音比(SNR)エンハンスメント・レイヤ、冗長スライス、冗長ピクチャ、前方誤り訂正符号などの形態であり得る。
【0076】
図5は本開示の実施形態によるビデオ・エンコーダ(503)のブロック図を示す。ビデオ・エンコーダ(503)は電子デバイス(520)に含まれる。電子デバイス(520)は送信機(540)(例えば、送信回路)を含む。ビデオ・エンコーダ(503)は、
図3の例におけるビデオ・エンコーダ(303)の代わりに使用されることが可能である。
【0077】
ビデオ・エンコーダ(503)は、ビデオ・エンコーダ(503)によって符号化されるビデオ・イメージをキャプチャすることができるビデオ・ソース(501)(
図5の例では電子デバイス(520)の一部ではない)から、ビデオ・サンプルを受信することができる。別の例では、ビデオ・ソース(501)は、電子デバイス(520)の一部である。
【0078】
ビデオ・ソース(501)は、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、...)、任意の色空間(例えば、BT.601Y CrCB、RGB、...)、及び任意の適切なサンプリング構造(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)であるとすることが可能なデジタル・ビデオ・サンプル・ストリームの形態で、ビデオ・エンコーダ(503)によって符号化されるソース・ビデオ・シーケンスを提供する可能性がある。メディア・サービング・システムにおいて、ビデオ・ソース(501)は、事前に準備されたビデオを記憶する記憶装置であってもよい。テレビ会議システムでは、ビデオ・ソース(501)は、ローカルな画像情報をビデオ・シーケンスとして捕捉するカメラであってもよい。ビデオ・データは、シーケンスで眺めた場合に動きを伝える複数の個々のピクチャとして提供されてもよい。ピクチャ自体は、ピクセルの空間アレイとして構成されることが可能であり、各ピクセルは、使用中のサンプリング構造、色空間などに応じて、1つ以上のサンプルを含むことができる。当業者は、ピクセルとサンプルとの間の関係を容易に理解することができる。以下の説明は、サンプルに着目している。
【0079】
実施形態によれば、ビデオ・エンコーダ(503)は、リアル・タイムで又はアプリケーションによって要求される他の任意の時間的制約の下で、ソース・ビデオ・シーケンスのピクチャを符号化し、符号化されたビデオ・シーケンス(543)に圧縮することができる。適切な符号化レートを課すことは、コントローラ(550)の一つの機能である。幾つかの実施形態において、コントローラ(550)は、以下に説明されるように、他の機能ユニットを制御し、他の機能ユニットに機能的に結合される。結合は明確性のために描かれていない。コントローラ(550)によって設定されるパラメータは、レート制御関連パラメータ(ピクチャ・スキップ、量子化器、レート歪み最適化技術のラムダ値、...)、ピクチャ・サイズ、グループ・オブ・ピクチャ(GOP)レイアウト、最大動きベクトル探索範囲などを含むことができる。コントローラ(550)は、特定のシステム設計のために最適化されたビデオ・エンコーダ(503)に関連する他の適切な機能を有するように構成されることが可能である。
【0080】
幾つかの実施態様において、ビデオ・エンコーダ(503)は、符号化ループで動作するように構成される。かなり単純化した説明として、一例において、符号化ループは、ソース・コーダ(530)(例えば、符号化されるべき入力ピクチャ及びリファレンス・ピクチャに基づいて、シンボル・ストリームなどのシンボルを生成する責任を有する)と、ビデオ・エンコーダ(503)に組み込まれた(ローカル)デコーダ(533)とを含むことが可能である。デコーダ(533)は、(リモート)デコーダが生成するのと同様な方式で、サンプル・データを生成するためにシンボルを再構成する(シンボルと符号化ビデオ・ビットストリームとの間の任意の圧縮は、開示される対象事項で考慮されるビデオ圧縮技術においてロスレスであることに起因する)。再構成されたサンプル・ストリーム(サンプル・データ)は、リファレンス・ピクチャ・メモリ(534)に入力される。シンボル・ストリームの復号化は、デコーダ・ロケーション(ローカル又はリモート)に依存しないビット・イグザクト(bit-exact)の結果をもたらすので、リファレンス・ピクチャ・メモリ(534)中の内容もまた、ローカル・エンコーダとリモート・エンコーダとの間でビット・イグザクトである。言い換えると、エンコーダの予測部は、デコーダがデコーディング中に予測を使用する場合に「見る」のと全く同じサンプル値をリファレンス・ピクチャ・サンプルとして「見る」。リファレンス・ピクチャ同期(及び例えばチャネル・エラーに起因して同期が維持できない場合に結果的に生じるドリフト)のこの基本原理は、幾つかの関連技術においても同様に使用される。
【0081】
「ローカル」デコーダ(533)の動作は、
図4に関連して上記で既に詳細に説明したビデオ・デコーダ(410)のような「リモート」デコーダと同じあるとすることが可能である。しかしながら、
図4も簡単に参照すると、シンボルが利用可能であり、且つエントロピー符号化器(545)及びパーサ(420)による符号化ビデオ・シーケンスに対するシンボルの符号化/復号化はロスレスであるとすることが可能であるので、バッファ・メモリ(415)及びパーサ(420)を含むビデオ復号器(410)のエントロピー復号化部は、ローカル・デコーダ(533)で完全には実装されない可能性がある。
【0082】
この時点で行われ得る観察は、デコーダに存在する解析/エントロピー・デコーディング以外の如何なるデコーダ技術も、実質的に同一の機能形態で、対応するエンコーダ内に存在する必要があることである。この理由のために、開示される対象事項は、デコーダの動作に焦点を当てる。エンコーダ技術の説明は、包括的に説明されるデコーダ技術の逆であるため、省略されることが可能である。特定の分野においてのみ、より詳細な説明が必要とされ、以下に提供される。
【0083】
動作中に、ソース・コーダ(530)は、幾つかの例において、「リファレンス・ピクチャ」として指定されたビデオ・シーケンスからの1つ以上の以前に符号化されたピクチャを参照して入力ピクチャを予測的に符号化する、動き補償予測符号化を実行してもよい。このようにして、符号化エンジン(532)は、入力ピクチャのピクセル・ブロックと、入力ピクチャに対する予測リファレンスとして選択される可能性があるリファレンス・ピクチャのピクセル・ブロックとの間の差分を符号化する。
【0084】
ローカル・ビデオ・デコーダ(533)は、ソース・コーダ(530)によって生成されたシンボルに基づいて、リファレンス・ピクチャとして指定されることが可能なピクチャの符号化ビデオ・データを復号化することができる。符号化エンジン(532)の動作は、有利なことに、ロッシー・プロセスである可能性がある。符号化ビデオ・データがビデオ・デコーダ(
図5には示されていない)でデコードされる可能性がある場合、再構成されたビデオ・シーケンスは、典型的には、幾らかのエラーを伴うソース・ビデオ・シーケンスのレプリカである可能性がある。ローカル・ビデオ・デコーダ(533)は、リファレンス画像上でビデオ・デコーダによって実行される可能性があるデコーディング処理を繰り返し、再構成されたリファレンス・ピクチャを、リファレンス画像キャッシュ(534)に記憶させることができる。このようにして、ビデオ・エンコーダ(503)は、遠方端のビデオ・デコーダによって取得される再構成されたリファレンス・ピクチャと共通する内容を有する再構成されたリファレンス・ピクチャのコピーをローカルに記憶することができる。
【0085】
予測器(535)は、符号化エンジン(532)の予測検索を行うことが可能である。即ち、符号化されるべき新しいピクチャに関し、予測器(535)は、(候補リファレンス・ピクセル・ブロックとして)サンプル・データ、又は特定のメタデータ(リファレンス・ピクチャ動きベクトル、ブロック形状など)を求めて、リファレンス・ピクチャ・メモリ(534)を検索することができ、これらは、新しいピクチャに対する適切な予測リファレンスとして役立つ可能性がある。予測器(535)は、適切な予測リファレンスを発見するために、サンプル・ブロック_バイ_ピクセル・ブロックに基づいて動作することが可能である。場合によっては、予測器(535)が取得した検索結果により決定されるように、入力ピクチャは、リファレンス・ピクチャ・メモリ(534)に記憶された複数のリファレンス・ピクチャから引き出される予測リファレンスを有することが可能である。
【0086】
コントローラ(550)は、例えばビデオ・データを符号化するために使用されるパラメータ及びサブグループ・パラメータの設定を含む、ソース・コーダ(530)の符号化動作を管理することができる。
【0087】
前述の機能ユニットの全ての出力は、エントロピー符号化器(545)においてエントロピー符号化の作用を受ける可能性がある。エントロピー符号化器(545)は、ハフマン符号化、可変長符号化、算術符号化などの技術に従ってロスレス圧縮を行うことにより、種々の機能ユニットによって生成されるようなシンボルを、符号化ビデオ・シーケンスに変換する。
【0088】
送信機(540)は、エントロピー符号化器(545)によって作成された符号化ビデオ・シーケンスをバッファリングして、通信チャネル(560)を介した送信の準備を行うことができ、通信チャネル(560)は、符号化ビデオ・データを記憶する記憶装置に対するハードウェア/ソフトウェア・リンクであるとすることが可能である。送信機(540)は、ビデオ・コーダ(503)からの符号化ビデオ・データを、例えば符号化オーディオ・データ及び/又は補助的なデータ・ストリーム(図示せず)のような送信される他のデータとマージすることができる。
【0089】
コントローラ(550)は、ビデオ・エンコーダ(503)の動作を管理することができる。符号化の間、コントローラ(550)は、各符号化ピクチャに、特定の符号化ピクチャ・タイプを割り当てる可能性があり、これは、各ピクチャに適用され得る符号化技術に影響を及ぼす可能性がある。例えば、ピクチャは、しばしば、以下のピクチャ・タイプのうちの1つとして指定される可能性がある:
【0090】
イントラ・ピクチャ(Iピクチャ)は、シーケンス内の他の任意のピクチャを予測源として使用せずに、符号化及び復号化され得るものである可能性がある。あるビデオ・コーデックは、例えば独立デコーダ・リフレッシュ(「IDR」)ピクチャを含む、異なるタイプのイントラ・ピクチャを許容する。当業者は、I画像のこれらの変形例、並びにそれら各自の用途及び特徴を把握している。
【0091】
予測ピクチャ(Pピクチャ)は、各ブロックのサンプル値を予測するために、高々1つの動きベクトルとリファレンス・インデックスとを用いて、イントラ予測又はインター予測を用いて符号化及び復号化され得るものである可能性がある。
【0092】
双方向予測ピクチャ(Bピクチャ)は、各ブロックのサンプル値を予測するために、高々2つの動きベクトルとリファレンス・インデックスとを用いて、イントラ予測又はインター予測を用いて、符号化及び復号化され得るものである可能性がある。同様に、複数の予測画像は、1つのブロックの再構成のために、2つより多いリファレンス・ピクチャ及び関連するメタデータを使用することが可能である。
【0093】
ソース・ピクチャは、通常、複数のサンプル・ブロック(例えば、それぞれ4×4、8×8、4×8、16×16サンプル)に空間的に細分され、ブロック毎に符号化される可能性がある。ブロックは、ブロックのそれぞれのピクチャに適用される符号化割り当てによって決定される他の(既に符号化された)ブロックを参照して予測的に符号化されることが可能である。例えば、Iピクチャのブロックは、非予測的に符号化されてもよく、又は、それらは、同じピクチャの既に符号化されたブロックを参照して予測的に符号化されてもよい(空間予測又はイントラ予測)。Pピクチャのピクセル・ブロックは、以前に符号化された1つのリファレンス・ピクチャを参照して、空間的予測又は時間的予測により予測的に符号化されてもよい。Bピクチャのブロックは、1つ又は2つの以前に符号化されたリファレンス・ピクチャを参照して、空間的予測又は時間的予測により予測的に符号化されてもよい。
【0094】
ビデオ・エンコーダ(503)は、ITU-T Rec.H.265等の所定のビデオ符号化技術又は規格に従って符号化動作を行うことができる。その動作において、ビデオ・エンコーダ(503)は、入力ビデオ・シーケンスにおける時間的及び空間的な冗長性を利用する予測符号化動作を含む種々の圧縮動作を実行することができる。従って、符号化ビデオ・データは、使用されるビデオ符号化技術又は規格によって指定されるシンタックスに適合することができる。
【0095】
実施形態では、送信機(540)は符号化されたビデオと共に追加データを送信する可能性がある。ソース・コーダ(530)は、符号化ビデオ・シーケンスの一部としてそのようなデータを含むことができる。追加データは、時間的/空間的/SNRエンハンスメント・レイヤ、冗長データの他の形式(冗長ピクチャ及びスライス、SEIメッセージ、VUIパラメータ・セット・フラグメント等)を含む可能性がある。
【0096】
ビデオは、時間シーケンスにおける複数のソース・ピクチャ(ビデオ・ピクチャ)としてキャプチャされる可能性がある。イントラ・ピクチャ予測(しばしば、イントラ予測と略される)は所与のピクチャにおける空間的相関を利用しており、インター・ピクチャ予測はピクチャ間の(時間的又はその他の)相関を利用している。一例では、現在ピクチャとして言及される符号化/復号化中の特定のピクチャは、複数のブロックに区分される。現在ピクチャ内のブロックが、ビデオの中で以前に符号化され且つ依然としてバッファリングされているリファレンス・ピクチャ内のリファレンス・ブロックに類似する場合、現在ピクチャ内のブロックは、動きベクトルと呼ばれるベクトルによって符号化されることが可能である。動きベクトルは、リファレンス・ピクチャ内のリファレンス・ブロックを指し示し、複数のリファレンス・ピクチャが使用されている場合には、リファレンス・ピクチャを識別する第3の次元を有することが可能である。
【0097】
ある実施形態では、イントラ・ピクチャ予測に双予測技術が使用されることが可能である。双方向予測技術によれば、第1リファレンス・ピクチャ及び第2リファレンス・ピクチャ(ビデオの中で現在ピクチャに対して復号順序で両方とも先行している(ただし、表示順序では、過去及び将来におけるものである可能性がある))のような2つのリファレンス・ピクチャが使用される。現在ピクチャ内のブロックは、第1リファレンス・ピクチャ内の第1リファレンス・ブロックを指す第1動きベクトルと、第2リファレンス・ピクチャ内の第2リファレンス・ブロックを指す第2動きベクトルとによって符号化されることが可能である。ブロックは、第1リファレンス・ブロックと第2リファレンス・ブロックとの組み合わせによって予測されることが可能である。
【0098】
更に、符号化効率を改善するために、マージ・モード技術がインター・ピクチャ予測に使用されることが可能である。
【0099】
本開示の幾つかの実施形態によれば、インター・ピクチャ予測及びイントラ・ピクチャ予測などの予測は、ブロックの単位で実行される。例えば、HEVC規格によれば、ビデオ・ピクチャのシーケンス内のピクチャは、圧縮のために符号化ツリー・ユニット(CTU)に分割され、ピクチャ内のCTUは、64×64ピクセル、32×32ピクセル、又は16×16ピクセルのような同じサイズを有する。一般に、CTUは、1つのルマCTB及び2つのクロマCTBである3つの符号化ツリー・ブロック(CTB)を含む。各CTUは、1つ又は複数の符号化ユニット(CU)に再帰的に四分木分割されることが可能である。例えば、64×64ピクセルのCTUは、64×64ピクセルの1CU、32×32ピクセルの4CU、又は16×16ピクセルの16CUに分割されることが可能である。一例では、各CUは、インター予測タイプ又はイントラ予測タイプのようなCUの予測タイプを決定するために分析される。CUは時間的及び/又は空間的な予測性に依存して1つ以上の予測ユニット(PU)に分割される。一般に、各PUはルマ予測ブロック(PB)と2つのクロマPBとを含む。実施形態では、符号化(符号化/復号化)における予測動作は、予測ブロックのユニットで実行される。予測ブロックの一例としてルマ予測ブロックを用いると、予測ブロックは、8×8ピクセル、16×16ピクセル、8×16ピクセル、16×8ピクセル等のような、ピクセルに対する値(例えば、ルマ値)の行列を含む。
【0100】
図6は本開示の別の実施形態によるビデオ・エンコーダ(603)の図を示す。ビデオ・エンコーダ(603)は、ビデオ・ピクチャのシーケンス内の現在のビデオ・ピクチャ内のサンプル値の処理ブロック(例えば、予測ブロック)を受信し、処理ブロックを、符号化ビデオ・シーケンスの一部である符号化ピクチャにエンコードするように構成される。実施例においてビデオ・エンコーダ(603)は
図3の例におけるビデオ・エンコーダ(303)の代わりに使用される。
【0101】
HEVCの例では、ビデオ・エンコーダ(603)は、8×8サンプルの予測ブロック等の処理ブロックに対するサンプル値の行列を受信する。ビデオ・エンコーダ(603)は、処理ブロックが、イントラ・モード、インター・モード、又は双方向予測モードを使用して最良に符号化されるかどうかを、例えばレート歪み最適化を利用して決定する。
処理ブロックがイントラ・モードで符号化されるべき場合、ビデオ・エンコーダ(603)は、処理ブロックを符号化ピクチャにエンコードするためにイントラ予測技術を使用することが可能であり;処理ブロックがインター・モード又は双方向予測モードで符号化されるべき場合、ビデオ・エンコーダ(603)は、処理ブロックを符号化ピクチャにエンコードするために、それぞれインター予測技術又は双方向予測技術を使用することが可能である。ある種のビデオ符号化技術では、マージ・モードはインター・ピクチャ予測サブモードであるとすることが可能であり、その場合、予測器の外側の符号化動きベクトル成分の恩恵なしに、動きベクトルが1つ以上の動きベクトル予測器から導出される。特定の他のビデオ符号化技術では、対象ブロックに適用可能な動きベクトル成分が存在してもよい。実施例では、ビデオ・エンコーダ(603)は、処理ブロックのモードを決定するために、モード決定モジュール(図示せず)のような他の構成要素を含む。
【0102】
図6の例では、ビデオ・エンコーダ(603)は、インター・エンコーダ(630)、イントラ・エンコーダ(622)、残差計算器(623)、スイッチ(626)、残差エンコーダ(624)、汎用コントローラ(621)、及びエントロピー・エンコーダ(625)を
図6に示されるように共に結合された形式で含む。
【0103】
インター・エンコーダ(630)は、現在ブロック(例えば、処理ブロック)のサンプルを受信し、そのブロックを、リファレンス・ピクチャ内の1つ以上のリファレンス・ブロック(例えば、以前のピクチャ及び以後のピクチャにおけるブロック)と比較し、インター予測情報(例えば、インター符号化技術による冗長情報、動きベクトル、マージ・モード情報の記述)を生成し、任意の適切な技術を用いてインター予測情報に基づいてインター予測結果(例えば、予測ブロック)を計算するように構成される。幾つかの例では、リファレンス・ピクチャは、符号化ビデオ情報に基づいて復号化された復号化リファレンス・ピクチャである。
【0104】
イントラ・エンコーダ(622)は、現在ブロック(例えば、処理ブロック)のサンプルを受信し、場合によっては、ブロックを、同じピクチャ内で既に符号化されたブロックと比較し、変換後に量子化された係数を生成し、場合によっては、イントラ予測情報(例えば、1つ以上のイントラ符号化技術によるイントラ予測方向情報)も生成するように構成される。一例では、イントラ・エンコーダ(622)はまた、同じピクチャ内のリファレンス・ブロック及びイントラ予測情報に基づいて、イントラ予測結果(例えば、予測ブロック)を計算する。
【0105】
ゼネラル・コントローラ(621)は、一般的な制御データを決定し、一般的な制御データに基づいてビデオ・エンコーダ(603)の他の構成要素を制御するように構成される。一例では、ゼネラル・コントローラ(621)は、ブロックのモードを決定し、そのモードに基づいて制御信号をスイッチ(626)に提供する。例えば、モードがイントラ・モードである場合、ゼネラル・コントローラ(621)は、残差計算器(623)により使用するためにイントラ・モードの結果を選択するようにスイッチ(626)を制御し、及び、イントラ予測情報を選択してイントラ予測情報をビットストリームに含めるようにエントロピー・エンコーダ(625)を制御し;及びモードがインター・モードである場合、ゼネラル・コントローラ(621)は、残差計算器(623)により使用するためにインター予測結果を選択するようにスイッチ(626)を制御し、及びインター予測情報を選択してインター予測情報をビットストリームに含めるようにエントロピー・エンコーダ(625)を制御する。
【0106】
残差計算器(623)は、イントラ・エンコーダ(622)又はインター・エンコーダ(630)から選択された予測結果と受信ブロックとの間の差分(残差データ)を計算するように構成される。残差エンコーダ(624)は、残差データに基づいて動作し、残差データをエンコードして変換係数を生成するように構成される。一例では、残差エンコーダ(624)は、残留データを空間ドメインから周波数ドメインへ変換し、変換係数を生成するように構成される。次いで、変換係数は、量子化された変換係数を得るために量子化処理の作用を受ける。様々な実施形態において、ビデオ・エンコーダ(603)はまた、残差デコーダ(628)も含む。残差デコーダ(628)は、逆変換を実行し、デコードされた残差データを生成するように構成される。デコードされた残差データは、イントラ・エンコーダ(622)及びインター・エンコーダ(630)によって適切に使用されることが可能である。例えば、インター・エンコーダ(630)は、デコードされた残差データ及びインター予測情報に基づいて、デコードされたブロックを生成することが可能であり、及びイントラ・エンコーダ(622)は、デコードされた残差データ及びイントラ予測情報に基づいて、デコードされたブロックを生成することが可能である。デコードされたブロックは、デコードされたピクチャを生成するために適切に処理され、デコードされたピクチャは、メモリ回路(図示せず)にバッファリングされ、ある実施例ではリファレンス・ピクチャとして使用されることが可能である。
【0107】
エントロピー・エンコーダ(625)は、エンコードされたブロックを含むようにビットストリームをフォーマットするように構成される。エントロピー・エンコーダ(625)は、HEVC規格のような適切な規格に従う種々の情報を含むように構成される。一例では、エントロピー・エンコーダ(625)は、一般的な制御データ、選択された予測情報(例えば、イントラ予測情報又はインター予測情報)、残差情報、及び他の適切な情報をビットストリームに含めるように構成される。開示される対象事項によれば、インター・モード又は双方向予測モードの何れかのマージ・サブモードでブロックを符号化する場合に、残差情報は存在しないことに留意されたい。
【0108】
図7は、本開示の別の実施形態によるビデオ・デコーダ(710)の図を示す。ビデオ・デコーダ(710)は、符号化ビデオ・シーケンスの一部である符号化ピクチャを受信し、符号化ピクチャをデコードして再構成ピクチャを生成するように構成される。一例では、ビデオ・デコーダ(710)は、
図3の例のビデオ・デコーダ(310)の代わりに使用される。
【0109】
図7の例では、ビデオ・デコーダ(710)は、エントロピー・デコーダ(771)、インター・デコーダ(780)、残差デコーダ(773)、再構成モジュール(774)、及びイントラ・デコーダ(772)を
図7に示されるように共に結合され形式で含む。
【0110】
エントロピー・デコーダ(771)は、符号化ピクチャを構成するシンタックス要素を表す特定のシンボルを、符号化ピクチャから再構成するように構成されることが可能である。このようなシンボルは、例えば、ブロックが符号化されるモード(例えば、イントラ・モード、インター・モード、双方向予測モード、マージ・サブモード又は別のサブモードにおける後者の2つ)、イントラ・デコーダ(772)又はインター・デコーダ(780)によるそれぞれの予測に使用される特定のサンプル又はメタデータを識別することが可能な予測情報(例えば、イントラ予測情報又はインター予測情報)、残差情報(例えば、量子化された変換係数の形態におけるもの)などを含むことが可能である。一例として、予測モードがインター又は双方向予測モードである場合には、インター予測情報はインター・デコーダ(780)に提供され;予測タイプがイントラ予測タイプである場合には、イントラ予測情報がイントラ・デコーダ(772)に提供される。残差情報は、逆量子化の作用を受けることが可能であり、残留デコーダ(773)に提供される。
【0111】
インター・デコーダ(780)は、インター予測情報を受信し、インター予測情報に基づいてインター予測結果を生成するように構成される。
【0112】
イントラ・デコーダ(772)は、イントラ予測情報を受信し、イントラ予測情報に基づいて予測結果を生成するように構成される。
【0113】
残差デコーダ(773)は、逆量子化を行い、逆量子化変換係数を抽出し、逆量子化変換係数を処理して残差を周波数ドメインから空間ドメインへ変換するように構成される。残差デコーダ(773)はまた、特定の制御情報(量子化器パラメータ(QP)を含む)を必要とする可能性があり、その情報は、エントロピー・デコーダ(771)によって提供されることが可能である(これは、低ボリューム制御情報のみであるため、データ経路は図示されていない)。
【0114】
再構成モジュール(774)は、空間ドメインにおいて、残差デコーダ(773)による出力としての残差と、予測結果(ケースに応じてインター又はイントラ予測モジュールによる出力としての予測結果)とを組み合わせ、再構成されたブロックを形成するように構成されており、これは、再構成されたピクチャの一部であり、再構成されたビデオの一部である可能性がある。非ブロック化動作のような他の適切な動作が、視覚的な品質を改善するために実行されることが可能であることに留意されたい
【0115】
なお、ビデオ・エンコーダ(303)、(503)、(603)、並びにビデオ・デコーダ(310)、(410)、及び(710)は、任意の適切な技術を用いて実現されることが可能であることに留意を要する。実施形態では、ビデオ・エンコーダ(303)、(503)及び(603)、並びにビデオ・デコーダ(310)、(410)及び(710)は、1つ以上の集積回路を用いて実装されることが可能である。別の実施形態では、ビデオ・エンコーダ(303)、(503)、(503)、並びにビデオ・デコーダ(310)、(410)、及び(710)は、ソフトウェア命令を実行する1つ以上のプロセッサを使用して実現されることが可能である。
【0116】
一般に、ビデオ・ピクチャのシーケンス内のピクチャは、複数のCUに分割されることが可能である。ある実施形態では、例えばHEVC規格におけるように、CUの各々におけるサンプルは、インター予測タイプ、イントラ予測タイプなどの同じ予測タイプを使用して符号化されることが可能である。ある実施形態では、例えばVCC規格におけるように、各CUにおけるサンプルは、同じ予測情報及び変換情報を有することが可能である。開示の態様によれば、ピクチャのピクチャ境界に位置するCUは、更に分割されることなく、ピクチャの内側にある有効領域と、ピクチャの外側にある無効領域とを含む可能性がある。そのようなCUは部分的CU(a partial CU:PCU)と呼ばれることが可能であり、その場合において、CUの有効領域が符号化される。様々な実施形態において、無効領域は符号化されない。上述のように、CUは1つ以上の符号化ブロック(CB)を含むことが可能であり、ここでCBはCUに関連する単一カラー成分の2Dサンプル・アレイを含む。従って、上記の説明はCBに適用されることが可能である。
【0117】
明確化の目的により、以下の説明は主にCU及びPCUに方向付けられており、その説明はそれぞれのCB及びPCBに適切に適合させることが可能である。
【0118】
ピクチャは、任意の適切な方法を用いて複数のCUに分割されることが可能である。例えば、HEVC規格によれば、ピクチャは複数のCTUに分割されることが可能である。更に、CTUは、ピクチャの様々なローカルな特性に適応するために符号化ツリーとして示される四分木(QT)構造を使用することによって、複数のCUに分割されることが可能である。インター・ピクチャ予測(時間的予測、又はインター予測タイプとも呼ばれる)、イントラ・ピクチャ予測(空間的予測、又はイントラ予測タイプとも呼ばれる)などを用いて、ピクチャ・エリアを符号化するかどうかの判断は、CUレベルで行われる。各CUは、PU分割タイプに応じて、1つ、2つ、又は4つのPUに更に分割されることが可能である。1つのPUの内部では、同じ予測プロセスが適用され、同じ予測情報がPUベースでデコーダへ伝送される。PU分割タイプに基づく予測プロセスを適用することによって、残差データ又は残差情報を取得した後、CUは、CUの符号化ツリーに類似する別の四分木構造に従ってTUに分割されることが可能である。一例では、変換は同じ変換情報を有する各TUに適用される。HEVC構造は、CU、PU及びTUを含む複数の分割単位を有する。CUのサンプルは同じ予測タイプを有することが可能であり、PUのサンプルは同じ予測情報を有することが可能であり、TUのサンプルは同じ変換情報を有することが可能である。CU又はTUは正方形の形状を有するが、PUは矩形の形状を有する可能性があり、これはインター予測ブロックについて、ある実施形態では正方形の形状を含む。JEM規格におけるように、ある例では、矩形形状を有するPUが、イントラ予測のために使用されることが可能である。
【0119】
HEVC規格によれば、ピクチャ境界に位置するCTUに暗黙のQT分割が適用され、CTUを複数のCUに再帰的に分割し、その結果、各CUがピクチャ境界の内側に位置するようにする。
【0120】
HEVC規格におけるもののような種々の実施形態では、CTB、CB、PB、及び変換ブロック(TB)は、例えばそれぞれのCTU、CU、PU、及びTUに関連する1つのカラー成分の2Dサンプル・アレイを指定するためにそれぞれ使用されることが可能である。従って、CTUは、1つのルマCTB及び2つのクロマCTBのような1つ以上のCTBを含むことが可能である。同様に、CUは1つのルマCB及び2つのクロマCBのような1つ以上のCBを含むことが可能である。
【0121】
上述のブロック分割に加えて、
図8は本開示の実施形態に係るブロック分割構造の一例を示す。ブロック分割構造は、QTプラス・バイナリ・ツリー(BT)を使用し、QTBT構造又はQTBT分割と呼ぶことができる。上述のQT構造と比較して、QTBT構造は、CU、PU、及びTUの分離を除去し、CU分割形状に対してより豊富な柔軟性をサポートする。QTBT構造では、CTUは、QTBT構造を使用して複数のCUに分割され、CUは、幾つかの実施形態では正方形の形状を含む矩形の形状を有することが可能である。様々な実施形態において、CUは、予測及び変換のためのユニットとして機能し、従って、CU内のサンプルは、同じ予測タイプを有することが可能であり、同じ予測プロセスを使用して符号化されることが可能であり、同じ予測情報及び同じ変換情報を有することが可能である。
【0122】
図8(左)はQTBT分割を用いたブロック分割の例を示し、
図8(右)は対応するQTBTツリー表現(815)を示す。実線はQT分割を示し、点線はBT分割を示す。バイナリ・ツリーの各分割(即ち、非リーフ)ノードにおいて、使用される分割タイプ(即ち、対称的な水平分割又は対称的な垂直分割)を示すために、フラグが示される。例えば、“0”は対称的な水平分割を示し、“1”は対称的な垂直分割を示す。四分木分割では、分割タイプは通知も合図もされず、なぜなら四分木分割は、より小さな等しいサイズの4つのノードを生成するために、水平及び垂直の双方向に非リーフ・ノードを分割するからである。
【0123】
図8を参照すると、CTU(810)は、まず4分木構造によってノード(801)~(804)に分割(又は区分け)される。ノード(801)~(802)はそれぞれバイナリ・ツリー構造によって更に分割される。前述のように、BT分割は、2つの分割タイプ、即ち対称的な水平分割及び対称的な垂直分割を含む。四分木ノード(803)は、BT構造及びQT構造の組み合わせによって更に分割される。ノード(804)は、それ以上分割されない。従って、更に分割されない二分木リーフ・ノード(811)~(820)及び四分木リーフ・ノード(804)~(806)は、予測及び変換の処理に使用されるCUである。従って、CU、PU、及びTUはQTBT構造において同一である。例えば、CU内のサンプルは、同じ予測タイプ、同じ予測情報、及び同じ変換情報を有する。QTBT分割では、CUは異なるカラー成分のCBを含むことが可能であり、例えば、4:2:0のクロマ・フォーマットのP及びBスライスの場合、1つのCUは1つのルマCBと2つのクロマCBとを含む。幾つかの例において、CUは、単一成分のCBを含むことが可能であり、例えば1つのCUは、Iスライスの場合に、1つのルマCB又は2つのクロマCBを含む。
【0124】
QTBT分割には以下のパラメータが定義される。CTUサイズは、四分木のルート・ノード・サイズを示す。例えば、
図8の例におけるルート・ノード又はCTUは(810)である。MinQTSizeは、最小の許容される四分木リーフ・ノード・サイズを示す。MaxBTSizeは、最大の許容される二分木ルート・ノード・サイズを示す。例えば、ノード(801)は、
図8の例における二分木ルート・ノードである。MaxBTDepthは、最大の許容される二分木の深さを示す。MinBTSizeは、最小の許容される二分木リーフ・ノード・サイズを示す。
【0125】
QTBT分割の一例では、CTUサイズは128×128ルマ・サンプルとして、2つの対応する64×64ブロックのクロマ・サンプルとともに設定され、MinQTSizeは16×16に設定され、MaxBTSizeは64×64に設定され、MinBTSizeは(二分木リーフ・ノードの幅及び高さの両方に関して)4×4に設定され、MaxBTDepthは4に設定される。四分木分割は、四分木リーフ・ノードを生成するために最初にCTUに適用される。四分木リーフ・ノードは、16×16(即ち、MinQTSize)から128×128(即ち、CTUサイズ)までのサイズを有することが可能である。4分木リーフ・ノードが128×128の場合、サイズ128×128はMaxBTSize(即ち64×64)を超えるので、その4分木リーフ・ノードは2分木によってはそれ以上分割されない。そうでない場合、四分木リーフ・ノードは、二分木によって更に分割されることが可能である。従って、四分木リーフ・ノードは、二分木のルート・ノードであるとすることが可能であり、二分木ツリー深度として0を有する。二分木の深さがMaxBTDepth(即ち4)に到達すると、それ以上の分割は実行されない。二分木ノードがMinBTSizeに等しい幅(即ち4)を有する場合、それ以上の水平分割は実行されない。同様に、二分木ノードがMinBTSizeに等しい高さを有する場合、それ以上の垂直分割は実行されない。二分木のリーフ・ノードは、それ以上分割することなく、予測及び変換の処理によって更に処理され又は符号化される。JEM規格において、ある例では、最大CTUサイズが256×256ルマ・サンプルである。
【0126】
P及びBスライスなどの例では、1つのCTUのルマ及びクロマCTBは、同じQTBT構造を共有している。一方、QTBT分割は、ルマ及びクロマが別々のQTBT構造を有する能力をサポートする。例えば、Iスライスのように、ルマCTBはQTBT構造によってルマCUに分割され、クロマCTBは別のQTBT構造によってクロマCUに分割される。従って、IスライスのCUは、ルマ成分のCB、又は2つのクロマ成分のCBを含むことが可能であり、P又はBスライスのCUは、3つ全てのカラー成分のCBを含むことが可能である。
【0127】
ある実施例では、HEVC規格におけるように、動き補償のメモリ・アクセスを減らすために、小さなブロックのインター予測は制限され、その結果、4×8及び8×4ブロックに関して双方向予測はサポートされず、4×4に関してインター予測はサポートされない。ある実施態様では、例えばJEM規格で実行されるQTBTにおいて、上記の制限は取り除かれる。
【0128】
マルチ・タイプ・ツリー(MTT)構造は柔軟なツリー構造であるとすることが可能である。MTTでは、
図9A-9Bに示されるように、水平及び垂直のセンター・サイド・トリプル・ツリー(TT)分割又は区分けが使用されることが可能である。トリプル・ツリー分割はまた、三次ツリー分割と呼ばれることも可能である。
図9Aは、垂直センター・サイド・トリプル・ツリー分割の例を示す。例えば、エリア(920)は、3つのサブ・エリア(921)~(923)に垂直に分割され、サブ・エリア(922)はエリア(920)の中央に位置する。
図9Bは、水平センター・サイド・トリプル・ツリー分割の例を示す。例えば、エリア(930)は、より小さな3つのサブ・エリア(931)~(933)に水平に分割され、サブ・エリア(932)はエリア(930)の中央に位置する。様々な例において、エリア(920)及び(930)はCTU又はCUである可能性があり、ノード(801)のように更に分割されることが可能なノードである。サブ・エリア(921)~(923)及び(931)~(933)のうちの1つ以上は、更に分割されないCU、又は以後に分割され得るノードであるとすることが可能である。
【0129】
TT分割はQT分割及びBT分割を補完する。TT分割は、分割されるエリアの中央領域に位置するオブジェクトを捕らえることが可能である一方、四分木及び二分木分割は中央領域で分割される。様々な実施形態において、TT分割の幅及び高さは2の冪乗であり、従って2のべき乗以外の追加的な変換は必要とされない。
【0130】
2レベル・ツリーの設計は、複雑性の低減によって動機づけられる。幾つかの実施態様において、ツリーの横断の複雑さはTDであり、ここで、Tは分割タイプの数を示し、Dは分割ツリーの深さを示す。
【0131】
ある実施形態では、シフトを伴う二分木(a binary tree with shifting:BTS)分割又は区分けなどの一般化された二分木分割が使用されることが可能である。一例では、エリアは水平又は垂直に2つの矩形サブ・エリアに分割され、BTS分割に起因する(ルマ・サンプルにおける)CUの幅及び高さは両方とも4の整数倍である。パラメータ次元が、分割されるべきエリアの幅(垂直分割の場合)又は高さ(水平分割の場合)をルマ・サンプルで表す場合、
図10A-10Bに示される以下の分割が、水平及び垂直分割の双方について実行されることが可能である。
【0132】
図10Aの行(1000)は、1/2分割(1001)~(1002)の例を示す。1/2分割(1001)は、BT分割の対称的な水平分割と同様に、エリア(1003)が、エリア(1003)の中央で水平に分割されることを示す。1/2分割(1002)は、上記の対称的な垂直分割と同様に、エリア(1004)が、エリア(1004)の中央で垂直に分割されることを示す。1/2分割は、k・8及びk以上の寸法が任意の適切な正の整数である場合に実行されることが可能である。
【0133】
図10Aの行(1010)は、1/4及び3/4分割(1011)~(1014)の例を示す。1/4分割(1011)は、エリア(1015)がエリア(1015)の幅の1/4の位置に沿って垂直に分割されることを示す。3/4分割(1012)は、エリア(1016)がエリア(1016)の幅の3/4の位置に沿って垂直に分割されることを示す。1/4分割(1013)は、エリア(1017)が、エリア(1017)の高さの1/4の位置に沿って水平に分割されることを示す。3/4分割(1014)は、エリア(1018)が、エリア(1018)の高さの3/4の位置に沿って水平に分割されることを示す。1/4及び3/4分割は、次元が2の整数乗であり(即ち、次元=2
n、ここでnは任意の適切な正の整数)、且つ次元が16以上である場合に実現されることが可能である。
【0134】
図10Aの行(1020)は、3/8及び5/8分割(1021)~(1024)の例を示す。3/8分割(1021)は、エリア(1025)が、エリア(1025)の幅の3/8の位置に沿って垂直に分割されることを示す。5/8分割(1022)は、エリア(1026)が、エリア(1026)の幅の5/8の位置に沿って垂直に分割されることを示す。3/8分割(1023)は、エリア(1027)が、エリア(1027)の高さの3/8の位置に沿って水平に分割されることを示す。5/8分割(1024)は、エリア(1028)が、エリア(1028)の高さの5/8の位置に沿って水平に分割されることを示す。3/8及び5/8分割は、次元が2の整数乗であり(即ち、次元=2
n、ここでnは任意の適切な正の整数)、且つ次元が32以上である場合に実現されることが可能である。
【0135】
図10Bの行(1030)は、1/3及び2/3分割(1031)~(1034)の例を示す。1/3分割(1031)は、エリア(1035)が、エリア(1035)の幅の1/3の位置に沿って垂直に分割されることを示す。2/3分割(1032)は、エリア(1036)が、エリア(1036)の幅の2/3の位置に沿って垂直に分割されることを示す。1/3分割(1033)は、エリア(1037)が、エリア(1037)の高さの1/3の位置に沿って水平に分割されることを示す。2/3分割(1034)は、エリア(1038)が、エリア(1038)の高さの2/3の位置に沿って水平に分割されることを示す。1/3及び2/3分割は、次元が3の倍数でもあり(即ち、次元=3×2
n、ここでnは任意の適切な正の整数である)、且つ次元が12以上である場合に実現されることが可能である。
【0136】
図10の行(1040)及び(1050)はそれぞれ1/5分割、2/5分割、3/5分割、及び4/5分割の例(1041)~(1044)及び(1051)~(1054)を示す。1/5分割(1041)は、エリア(1045)が、エリア(1045)の幅の1/5の位置に沿って垂直に分割されることを示す。2/5分割(1042)は、エリア(1046)が、エリア(1046)の幅の2/5の位置に沿って垂直に分割されることを示す。3/5分割(1043)は、エリア(1047)が、エリア(1047)の幅の3/5の位置に沿って垂直に分割されることを示す。4/5分割(1044)は、エリア(1048)が、エリア(1048)の幅の4/5の位置に沿って垂直に分割されることを示す。
【0137】
1/5分割(1051)は、エリア(1055)が、エリア(1055)の高さの1/5の位置に沿って水平に分割されることを示す。2/5分割(1052)は、エリア(1056)が、エリア(1056)の高さの2/5の位置に沿って水平に分割されることを示す。3/5分割(1053)は、エリア(1057)が、エリア(1057)の高さの3/5の位置に沿って水平に分割されることを示す。4/5分割(1054)は、エリア(1058)が、エリア(1058)の高さの4/5の位置に沿って水平に分割されることを示す。1/5分割、2/5分割、3/5分割、及び4/5分割は、次元が5の倍数でもあり(即ち、次元=5x2n、ここでnは任意の適切な正の整数)、且つ次元が20以上である場合に実現されることが可能である。
【0138】
図10A-10Bを参照して上述したように、BTS分割は、分割比n/mを用いて指定することが可能であり、ここで、n/mは、1/2、1/4、3/4、3/8、5/8、1/3、2/3、1/5、2/5、3/5、4/5などとすることが可能である。
n/m水平分割では、第1高さmを有するエリアが2つのサブ・エリア、第2高さnを有するトップのサブ・エリアとボトムのサブ・エリアとに分割され、従って第1高さmに対する第2高さnの分割比はn/mとなる。同様に、n/m垂直分割では、第1幅mを有するエリアが2つのサブ・エリア、第2幅nを有する左サブ・エリアと右サブ・エリアとに分割される。第1幅mに対する第2幅nの分割比はn/mとなる。ある例では、分割される側のサイズ(垂直分割における幅、又は水平分割における高さ)が2
nに等しくない場合(nは適切な正の整数である)、そのサイズは、3x2
n及び5x2
nのうちの1つであるとすることが可能である(nは適切な正の整数である)。
【0139】
上述のように、BTS分割は、
図10Aの1/4垂直分割(1011)のように、分割方向及び分割比によって指定されることが可能である。現在のBTSの分割方向は、水平分割又は垂直分割として合図される代わりに、以前のBTSに関して符号化されることが可能である。従って、分割方向は、垂直分割又は平行分割として通知されることが可能である。垂直分割は、現在のBTSの分割方向が以前のバイナリ分割の分割方向に垂直であることを示す。同様に、平行分割は、現在のBTSの分割方向が以前の分割の分割方向に平行であることを示す。従って、垂直分割又は平行分割は、以前の分割の分割方向に基づいて、水平分割又は垂直分割に変換されることが可能である。CTUやバイナリ・ルート・ノードのようなルート・レベルでは、以前の分割は通知されず、従って第1の垂直分割は水平分割であり、第1の平行分割は垂直分割である。perpend_split_flagのようなバイナリ・フラグは、2つの分割方向(垂直分割及び平行分割)を区別するために使用されることが可能である。分割比率はBTSの位置を示す(
図10A~10B参照)。分割比率は、二分決定木を用いて符号化されることが可能である。分割方向及び分割比率の双方が、コンテキスト・ベースの(状況依存性の)適応バイナリ演算符号化(CABAC)を用いて符号化されることが可能である。一例では、二分木の深さのカウントは、垂直1/2分割ではない最初の分割から始まる。
【0140】
更に、非対称二分木(ABT)ブロック分割構造が使用されることが可能である。
図11を参照すると、エリアは、1:3又は3:1のパーティションを使用して分割されることが可能である。例えば、1:3水平分割(1151)は、エリア(1161)が、エリア(1161)の高さの1/4の位置に沿って水平に、トップ・サブ・エリア(1171)とボトム・サブ・エリア(1172)とに分割されることを示す。1:3水平分割では、比率1:3は、ボトム・サブ・エリア(1172)の高さに対するトップ・サブ・エリア(1171)の高さの比である。同様に、3:1水平分割(1152)は、エリア(1162)が、エリア(1162)の高さの3/4の位置に沿って水平に分割されることを示す。1:3垂直分割(1153)は、エリア(1163)が、エリア(1163)の幅の1/4の位置に沿って垂直に分割されることを示す。3:1垂直分割(1154)は、エリア(1164)が、エリア(1164)の幅の3/4の位置に沿って垂直に分割されることを示す。
【0141】
BTS又はABTを用いてエリアが2つのサブ・エリアに分割される場合、2つのサブ・エリアのうちの一方の幅又は高さは2の冪乗ではない可能性がある。
【0142】
ピクチャは複数のCTUに分割されることが可能である。ピクチャ境界において、CTUがピクチャの内側及び外側両方のエリアを含む場合、CTUは、各CUがピクチャの内側に位置するように、複数のCUに分割されることが可能である。HEVC規格におけるもののような幾つかの例では、CTUは、暗黙のQT分割を使用して再帰的に分割され、従って分割フラグはシグナリングされない。あるいは、様々な非QT分割がQT分割と適切に組み合わせられ、CTUを、ピクチャ内に位置するCUに分割することが可能である。非QT分割とは、QT分割以外の分割構造を指し、BT分割、TT分割、BTS分割、ABT分割等を含む。これにより、QT分割は、BT分割と組み合わせられることが可能であり、QT分割は、BT分割及びTT分割と組み合わせられることが可能であり、QT分割は、BT分割及びABT分割と組み合わせられることが可能であり、QT分割は、BTS分割及びTT分割と組み合わせられることが可能である、等々。各分割レベルにおいて、QT分割及び非QT分割の双方がピクチャ境界で利用可能である場合、1つ以上のフラグが分割タイプ等を示すためにシグナリングされることが可能である。上述の実施例では、ピクチャの内外両方のエリアを含むCTUは、複数のCUとして処理され又は符号化され、従ってCTUは単一の符号化ユニットとしては符号化されない。
【0143】
図12Aは、ピクチャ外側のエリアを含む本開示の実施形態によるCTUの例を示す。ピクチャ(1200A)は、複数のCTU(1211A)~(1215A)、(1221A)~(1225A)、(1231A)~(1235A)及び(1241A)~(1245A)に分割される。CTU(1211A)~(1214A)、(1221A)~(1224A)、及び(1231A)~(1234A)は、ピクチャ(1200A)の内側に位置する。CTU(1215A)、(1225A)、(1235A)、及び(1241A)~(1245A)の各々は、各自のピクチャ境界(1202)及び/又は(1204)に配置され、ピクチャ(1200A)の内側にある有効領域とピクチャ(1200A)の外側にある無効領域とを含む。例えば、
図12A及び12Bを参照すると、CTU(1215A)は、ピクチャ(1200A)の内側にある有効領域(1215B)と、ピクチャ(1200A)の外側にある無効領域(1215C)とを含む。同様に、CTU(1241A)は、有効領域(1241B)と無効領域(1241C)とを含む。一例では、ピクチャ(1200A)は、ソース・コーダ530などのエンコーダ503を使用して複数のCTUに分割されることが可能である。一例では、パーティション・コントローラが、分割プロセスを実行するために使用されることが可能であり、パーティション・コントローラからの出力は、ソース・コーダ530に送られる。
【0144】
一般に、CTUが有効領域及び無効領域を含んでいるか否かは、CTU(1225A)などのCTUとピクチャとの間の相対的な位置に基づいて決定されることが可能である。更に、CTU(1225A)とピクチャとの間の相対位置は、左上のサンプル(1281)の位置などのようなピクチャの位置、ピクチャのサイズ(ピクチャ幅(1284)及びピクチャ高さ(1285)など)、CTU(1225A)の位置(例えば左上のサンプル(1282)の位置により表現される)、及びCTU(1225A)のサイズ(CTU(1225A)が正方形である場合には幅(1283)など)に基づいて取得されることが可能である。従って、CTU(1225A)内の有効領域は、CTU(1225A)とピクチャとの間の相対位置に基づいて識別されることが可能である。
【0145】
本開示の実施形態によれば、ピクチャ内の有効領域とピクチャ外の無効領域とを含むCTUは、更に分割されることなく処理又は符号化されることが可能である。このような符号化ユニットは、無効領域を含み、PCUと称することが可能である。上述のように、PCUは、有効領域と無効領域とを含む符号化単位であり、それ以上分割されない。様々な実施形態において、PCU内の有効領域は符号化され、例えば、有効領域は予測され、変換される。従って、PCUの有効領域内のサンプルは、同じ予測タイプを有することが可能である。更に、有効領域内のサンプルは、同じ予測プロセスを用いて予測されることが可能であり、同じ予測情報及び同じ変換情報を有することが可能である。
図12Bを参照すると、CTU (1215A)は、それ以上分割されず、PCUである。有効領域(1215B)は符号化されることが可能である。ある例では、無効領域(1215C)は処理されない。CTU(1215A)がPCUであることを示すために、非分割フラグのようなビン(A bin)が合図されることが可能である。非分割フラグは、更に、有効領域(1215B)が符号化され、無効領域(1215C)が符号化されないことを意味することができる。
【0146】
一方、ピクチャ内の有効領域とピクチャ外の無効領域とを含むCTUは、複数のCUに分割されることが可能である。複数のCUのうちのCUが、ピクチャ内の有効領域とピクチャ外の無効領域とを含む場合、本開示の実施形態によれば、CUは更に分割されることなく処理されることが可能である。そのようなCUはPCUとして機能する。
図12Cを参照すると、CTU(1225A)は有効領域と無効領域とを含む。CTU(1225A)は、例えば、1/4水平分割(即ち、BTS分割)を用いて、第1CU(1260)及び第2CU(1270)に更に分割される。第1CU(1260)は有効領域(1261)と無効領域(1262)とを含み、第2CU(1270)は有効領域(1271)と無効領域(1272)とを含む。開示の態様によれば、第1CU (1260)はそれ以上分割されることなく処理され、第2CU(1270)はそれ以上分割されることなく処理される。更に、有効領域(1261)及び有効領域(1271)は処理され、無効領域(1262)及び無効領域(1272)は処理されない。第1CU(1260)及び第2CU(1270)はそれぞれPCUである。一例では、第1CU(1260)がPCUであることを示すために、非分割フラグのようなビンが合図されることが可能である。一例では、非分割フラグは、有効領域(1261)が処理され、無効領域(1262)は処理されないことも意味する。一実施形態では、ピクチャ(1200A)内のCUに対する最小サイズ制約がある。例えば、最小サイズ制約は、ピクチャ境界(1202)又は(1204)のようなピクチャ境界で実現され、従って、第1CU(1260)のサイズが最小サイズに達すると、第1CU (1260)のようなCUは、更に分割されることはできない。第1CU (1260)の一部分(即ち、無効領域(1262))は、ピクチャ(1200A)の外側にあるので、第1CU(1260)は、PCUであることが暗に示され、従って、非分割フラグのようなビンは、シグナリングされる必要はない。別の例では、最小サイズ制約が無視される場合、ピクチャ境界でPCUは許可されない。
【0147】
一般に、ピクチャは、任意の適切な形状及びサイズを有するCTUに分割されることが可能である。CTUの形状及びサイズは、同一であってもよいし、異なっていてもよい。
図12Aは、各CTUが、正方形の形状及び同じサイズを有する例を示す。
図12Dは、ピクチャ(1200B)が、正方形及び長方形の形状をそれぞれが有する複数のCTU(1211B)~(1215B)、(1221B~1225B)、(1231B)~(1235B)及び(1241B)~(1245B)に分割されている別の例を示す。例えば、CTU(1215B)は正方形、CTU(1225B)は長方形である。上述のように、CTU(1225B)は、PCUであるとすることが可能である。あるいは、CTU(1225B)は、より小さなCUに分割されることが可能であり、CUのうちの1つがPCUであるすることが可能である。
【0148】
図13は、本開示の実施形態によるPCU(1300)の一例を示す。ピクチャに関連するPCU(1300)は、ピクチャ内にある有効領域(1310)と、ピクチャ外にある無効領域(1320)とを含む。有効領域(1310)と無効領域(1320)とは、ピクチャ境界(1301)によって分離される。PCU(1300)は更には分割されない。有効領域(1310)は、単一の予測タイプで符号化されることが可能である。更に、有効領域(1310)は、同じ予測情報を有する同じ予測プロセスで符号化されることが可能である。有効領域(1310)もまた、同じ変換情報を有することが可能である。有効領域(1310)は、高さ(1302)及び幅(1303)を有する。
【0149】
開示の態様によれば、高さ(1302)及び幅(1303)のうちの1つが2の冪乗でない場合、例えば幅(1303)が12である場合、又は高さ(1302)が6である場合、有効領域(1310)を予測するためにスキップ・モードが使用される。有効領域(1310)の予測とサンプルとの間の残差データはゼロと見なされ、送信されず、2の冪乗でない変換はディセーブルにされる。本開示の態様によれば、PCU(1300)の幅(1303)及び高さ(1302)のうちの1つが2の冪乗でない場合、スキップ・フラグが暗に示され、したがってシグナリングされない。あるいは、幅(1302)及び高さ(1303)のうちの1つが2の冪乗でない場合、有効領域(1310)を予測するために、インター予測モード、イントラ予測モードなどの任意の適切な予測モードが使用されることが可能である。更に、有効領域(1310)の残差データはゼロと見なされ、送信されず、2の冪乗でない変換はディセーブルにされる。更に、予測モードを示すためにフラグが合図されることが可能である。
【0150】
一般に、PCUの有効領域は、以下に説明されるようにQT分割及びBT分割のうちの1つによるPCUの単独分割では得られない。ある条件下で、有効領域と無効領域を含むエリアの単独分割が、有効領域と同一のCUとなる場合、
図14に示すように、その領域は分割され、PCUは使用されない。エリア(1401)は、ピクチャ内にある有効領域(1410)と、ピクチャ外にある無効領域(1420)とを含む。有効領域(1410)と無効領域(1420)とは、ピクチャ境界(1403)によって分離される。
図14の例では、BT分割のような単一のパーティション又はスプリットは、エリア(1401)を、第1CU及び第2CUに分割することができ、ここで、第1CUは有効領域(1410)である。従って、第1CU又は有効領域(1410)は、単一のCUとして処理されることが可能である。従って、PCUはディセーブルにされ、エリア(1401)はPCUではない。更に、非分割フラグはシグナリングされない。QT分割又はBT分割がエリア1401を分割するために使用されることが可能である。
【0151】
ある実施形態では、PCUのサイズ及び/又は形状は一定の要件を満たす。例えば、PCUは、2の冪乗である幅及び高さを有する複数の矩形サブ・エリアに分割可能であり、矩形サブ・エリアを得るための分割数は、所定の閾値未満である。
図15Aは本開示の実施形態によるPCUの一例を示す。この例において、所定の閾値は3である。エリア(1501)は、ピクチャのピクチャ境界(1502)に位置している。エリア(1501)は、ピクチャ内の有効領域(1510)と、ピクチャ外の無効領域(1512)とを含む。有効領域(1510)及び無効領域(1512)は、ピクチャ境界(1502)によって分離される。更に、エリア(1501)は、12である幅(1525)と、16である高さ(1521)とを有する。従って、エリア(1501)は、1分割で2つのサブ領域に分割可能であり、例えば16(高さ)×4(幅)のサイズを有する第1サブ・エリア(1522)、及び16×8のサイズを有する第2サブ・エリア(1523)である。第1サブ・エリア(1522)の幅及び高さの両方は2の冪乗であり、第2サブ・エリア(1523)の幅及び高さの両方は2の冪乗である。従って、エリア(1501)は更に分割されることなくPCUであるとすることが可能である。
【0152】
一般に、所定の閾値は、2、3、4等のような任意の適切な正の整数であるとすることが可能である。更に、エリア(1501)は、
図15Bに示されるように、別様に分割されることが可能である。エリア1501は、16×8のサイズを有する第3サブ・エリア(1532)と、16×4のサイズを有する第4サブ・エリア(1533)とに分割可能である。第3サブ・エリア(1532)の幅及び高さの両方は2の冪乗であり、第4サブ・エリア(1533)の幅及び高さの両方は2の冪乗である。従って、エリア(1501)は更に分割されることなくPCUであるとすることが可能である。
【0153】
図15Cは、上記の要件を満たさず、従ってPCUではないエリアの例を示す。28×32のエリア(1541)は、ピクチャのピクチャ境界(1542)に位置する。エリア(1541)は、ピクチャ内の有効領域(1543)と、ピクチャ外の無効領域(1544)とを含み、それらはピクチャ境界(1542)によって分離される。更に、エリア(1541)は、28である幅(1555)と、32である高さ(1551)とを有する。従って、エリア(1541)は、2つのサブ・エリアのそれぞれが2の冪乗の幅及び高さを有する2つのサブ・エリアに分割することはできない。従って、所定の閾値が2である場合、エリア(1541)はPCUではなく、より小さなCUに更に分割される。従って、PCUはエリア(1541)に対してディセーブルにされ、従って、非分割フラグはシグナリングされない。
【0154】
図16~17は、本開示の実施形態によるプロセス1600及び1700をそれぞれ概略するフロー・チャートを示す。プロセス1600は、部分符号化ブロックを含むブロックの再構成に使用されることが可能である。プロセス1700は、部分的な符号化ブロックを有する符号化ブロックにピクチャを分割し、部分的な符号化ブロックをエンコードするために使用されることが可能である。様々な実施形態では、プロセス(1600)及び(1700)は、端末デバイス(210)、(220)、(230)及び(240)における処理回路のような適切な処理回路によって実行され、処理回路はビデオ・エンコーダ(303)の機能を実行し、処理回路はビデオ・デコーダ(310)の機能を実行し、処理回路はビデオ・デコーダ(410)の機能を実行し、処理回路はイントラ予測モジュール(452)の機能を実行し、処理回路はビデオ・エンコーダ(503)の機能を実行し、処理回路は予測器(535)の機能を実行し、処理回路はイントラ・エンコーダ(622)の機能を実行し、処理回路はデコーダ(710)の機能を実行し、処理回路はイントラ・デコーダ(772)の機能を実行し、処理回路はインター・デコーダ(780)の機能を実行し、処理回路はイントラ・デコーダ(772)の機能を実行し、処理回路は再構成(774)の機能などを実行する。ある実施形態では、プロセス(1600)及び/又は(1700)は、ソフトウェア命令で実装されることが可能であり、処理回路がソフトウェア命令を実行する場合、処理回路はプロセス(1600)及び/又は(1700)を実行する。
【0155】
図16は一実施形態による復号化処理を示す。プロセス(1600)は、(S1601)から始まり、(S1610)に進む。(S1610)において、符号化ビデオ・ビットストリーム内のピクチャに関連付けられたブロックのエンコーディング情報が受信される。一例では、エンコーディング情報は、非分割フラグ、QTフラグ、非QTフラグ、BTフラグなどの、符号化ビットストリームでシグナリングされる分割情報を含むことが可能である。ブロックは、ルマ符号化ブロック、クロマ符号化ブロック等であるとすることが可能である。ブロックは、任意の適切な形状、サイズ等を有することが可能である。ブロックは矩形の形状を有することが可能である。ある例ではブロックは正方形の形状を有する。
【0156】
(S1620)において、ブロックがピクチャ内の有効領域とピクチャ外の無効領域とを含んでいるか否かは、エンコーディング情報に基づいて決定される。一例において、エンコーディング情報が分割情報(例えば、非分割フラグ)を含む場合、ブロックは、有効領域と無効領域とを含むと判断され、それは部分的符号化ブロックである。エンコーディング情報がQT分割フラグを含む場合、ブロックは有効領域を含み、無効領域を含まないと判断される。
【0157】
実施形態では、ブロックのサイズ、形状、位置、ピクチャに対する相対位置などの特徴は、エンコーディング情報に基づいて取得されることが可能である。例えば、ピクチャに対するブロックの相対位置は、そのブロックが無効領域を含むことを暗黙に示す。ブロックが有効領域と無効領域とを含むと判断された場合、プロセス(1600)は(S1640)に進む。そうでなければ、プロセス(1600)は(S1630)に進む。
【0158】
(1630)において、ブロック中のサンプルは、例えば適切なビデオ符号化技術及び/又はビデオ符号化規格(HEVC規格、VVC規格等)に基づいて再構成される。プロセスは(S1699)に進み、終了する。
【0159】
(S1640)において、ピクチャ内のブロックの有効領域内の少なくとも1つのサンプルが再構成される。様々な実施形態において、有効領域内のサンプルのみが再構成され、サンプルは少なくとも1つのサンプルを含む。実施形態では、有効領域内の少なくとも1つのサンプルは、インター予測タイプ、イントラ予測タイプなどのような同じ予測タイプを利用して再構成される。更に、有効領域内の少なくとも1つのサンプルは、同じ予測情報及び同じ変換情報を利用して再構成されることが可能である。
【0160】
実施形態では、有効領域内の少なくとも1つのサンプルに対する少なくとも1つの予測は、同一の予測情報を利用して生成される。少なくとも1つの予測と少なくとも1つのサンプルの少なくとも1つの値との間の差分を示す少なくとも1つの残差データは、同じ変換情報を利用して取得される。その後、少なくとも1つのサンプルは、少なくとも1つの予測と少なくとも1つの残差データとに基づいて再構成される。ある条件下で、有効領域が幅と高さとを有する矩形形状を有し、幅と高さのうちの1つが2の冪乗でない場合、少なくとも1つのサンプルは、残差データによらず、少なくとも1つの予測に基づいて再構成される。幅及び高さのうちの一方が2の冪乗でない場合、少なくとも1つのサンプルは、スキップ・モード、イントラ予測モード、インター予測モード等を利用して再構成されることが可能である。プロセスはS1699に進み、終了する。
【0161】
図17は、一実施形態による符号化処理を示す。プロセス1700は、(S1701)から始まり、(S1710)に進む。(S1710)において、エンコードされるべきピクチャは、複数のブロックに分割される。ブロックは、ルマ符号化ブロック、クロマ符号化ブロック等とすることが可能である。ピクチャは、QT分割、QTBT分割、BT分割、TT分割、BTS分割、ABT分割、及びそれらの組み合わせのような上述した任意の適切な分割構造を利用して、複数のブロックに分割されることが可能である。実施形態では、図面は、
図12A及び
図12Dで説明されたようなCTBに分割され、1つ以上のCTBは、
図8~12Dを参照して上述したように、1つ以上の分割構造を使用して、CBに更に分割される。CTBは、
図12A及び12Dに記載されているように、矩形形状などの任意の適切な形状及びサイズを有することが可能である。幾つかの例において、CTBは正方形の形状を有することが可能である。一例では、(S1710)はソースコーダ(530)のようなエンコーダ(503)を利用して実現されることが可能である。一例では、パーティション・コントローラが(S1710)を実現するために使用されることが可能であり、複数のブロックがソースコーダ(530)に送信される。
【0162】
(S1720)において、複数のブロックのうちのブロックがピクチャの外側にある無効領域を含むか否かが、例えば
図12Aを参照して説明したようなピクチャに対するブロックの相対位置に基づいて判定される。
【0163】
ブロックが、ピクチャの外側にある無効領域を含むと判定された場合、プロセス(1700)は(S1740)に進む。そうでなければ、プロセス(1700)は(S1730)に進む。
【0164】
(S1730)において、ブロック中のサンプルは、例えば適切なビデオ符号化技術及び/又はビデオ符号化規格(HEVC規格、VVC規格等)に基づいてエンコードされる。プロセスは(S1799)に進み、終了する。
【0165】
(S1740)において、ピクチャ内のブロックの有効領域内の少なくとも1つのサンプルがエンコードされる。様々な実施形態において、ブロックの有効領域内のサンプルのみがエンコードされ、サンプルは少なくとも1つのサンプルを含む。有効領域内の少なくとも1つのサンプルは、インター予測タイプ、イントラ予測タイプなどの同じ予測タイプによって予測されることが可能である。更に、有効領域内の少なくとも1つのサンプルは、同じ予測情報及び同じ変換情報を有することが可能である。一例では、非分割フラグのようなフラグの形式で分割情報がシグナリングされ、ブロックはそれ以上分割されていないことを示し、それは部分的符号化ブロックとしてエンコードされる。一例では、非分割フラグ、又は他の形態の分割情報は、シグナリングされない。その代わりに、ピクチャとブロックの相対的な位置が、そのブロックは部分的符号化ブロックであることを示すことが可能である。実施形態では、有効領域内の少なくとも1つのサンプルについての少なくとも1つの予測は、同じ予測情報を利用して生成される。少なくとも1つのサンプルについての少なくとも1つの残差データは、同じ変換情報を利用して取得され、この場合において、少なくとも1つの残差データは、少なくとも1つのサンプルの少なくとも1つの値と少なくとも1つの予測との間の差を示す。続いて、少なくとも1つのサンプルに関連する少なくとも1つの残差データと少なくとも1つの予測とがエンコードされる。一例では、有効領域は幅と高さを有する矩形形状を有し、幅と高さのうちの一方は2の冪乗ではなく、従って残差データはゼロとみなされ、送信されない。幅及び高さのうちの一方が2の冪乗でない場合、少なくとも1つのサンプルは、スキップ・モード、イントラ予測モード、インター予測モード等を用いてエンコードされることが可能である。このプロセスは(S1799)に進み、終了する。
【0166】
上述の技術は、コンピュータ読み取り可能な命令を用いてコンピュータ・ソフトウェアとして実装され、1つ以上のコンピュータ読み取り可能な媒体に物理的に記憶されることが可能である。例えば、
図18は、開示される対象事項の所定の実施形態を実施するのに適したコンピュータ・システム(1800)を示す。
【0167】
コンピュータ・ソフトウェアは、アセンブリ、コンパイル、リンク、又は類似のメカニズムの対象となり得る任意の適切なマシン・コード又はコンピュータ言語を使用して符号化されることが可能であり、1つ以上のコンピュータ中央処理装置(CPU)、グラフィックス処理装置(GPU)などによって、直接的に又は解釈、マイクロコードの実行を介して実行されることが可能な命令を含むコードを作成することができる。
【0168】
命令は、例えばパーソナル・コンピュータ、タブレット・コンピュータ、サーバー、スマートフォン、ゲーム装置、IoTデバイス等を含む、種々のタイプのコンピュータ又はその構成要素において実行されることが可能である。
【0169】
コンピュータ・システム(1800)に関して
図18に示される構成要素は、その性質上例示的なものであり、本開示の実施形態を実現するコンピュータ・ソフトウェアの用途又は機能の範囲に関する何らかの制限を示唆するようには意図されていない。また、構成要素の構成は、コンピュータ・システム(1800)の実施例に示される構成要素の任意の1つ又は組み合わせに関する何らかの依存性又は条件を有するものとして解釈されてはならない。
【0170】
コンピュータ・システム(1800)は、特定のヒューマン・インターフェース入力デバイスを含む可能性がある。このようなヒューマン・インターフェース入力装置は、例えば、触覚入力(例えば、キーストローク、スワイプ、データ・グローブの動き)、音声入力(例えば、音声、拍手)、視覚入力(例えば、ジェスチャ)、嗅覚入力(図示せず)を介して、一人以上の人間ユーザーによる入力に応答することができる。また、ヒューマン・インターフェース装置は、オーディオ(例えば、スピーチ、音楽、周囲の音)、画像(例えば、走査された画像、静止画像カメラから得られる写真画像)、ビデオ(例えば、2次元ビデオ、立体ビデオを含む3次元ビデオ)のような、人間による意識的入力に必ずしも直接関係しない特定の媒体をキャプチャするために使用さえることが可能である。
【0171】
入力ヒューマン・インターフェース装置は、キーボード(1801)、マウス(1802)、トラックパッド(1803)、タッチ・スクリーン(1810)、データ・グローブ(図示せず)、ジョイスティック(1805)、マイクロフォン(1806)、スキャナ(1807)、カメラ(1808)のうちの1つ以上(又はそれぞれ描写されたもののうちの1つのみ)を含んでもよい。
【0172】
コンピュータ・システム(1800)は、特定のヒューマン・インターフェース出力装置を含む場合もある。このようなヒューマン・インターフェース出力装置は、例えば、触覚出力、音、光、及び嗅覚/味覚を通じて、1人以上の人間ユーザーの感覚を刺激することができる。そのようなヒューマン・インターフェース出力装置は、触覚出力装置(例えば、タッチ・スクリーン(1810)、データ・グローブ(図示せず)、又はジョイスティック(1805)による触覚フィードバックであるが、入力装置としては機能しない触覚フィードバックが存在してもよい)、オーディオ出力装置(例えば、スピーカー(1809)、ヘッドフォン(図示せず))、視覚的出力装置(例えば、CRTスクリーン、LCDスクリーン、プラズマ・スクリーン、OLEDスクリーンを含むスクリーン(1810)。各々はタッチ・スクリーン入力機能を備えていても備えていなくてもよい。各々は触覚フィードバック機能を備えていても備えていなくてもよい。それらのうちの幾つかは2次元視覚出力、立体出力のような手段による3次元以上の出力を行うことが可能であってもよい;仮想現実眼鏡(図示せず)、ホログラフィック・ディスプレイ、及びスモーク・タンク(図示せず))、及びプリンタ(図示せず))を含むことが可能である。
【0173】
コンピュータ・システム(1800)はまた、CD/DVD等の媒体(1821)を伴うCD/DVD ROM/RW(1820)を含む光媒体、サム・ドライブ(1822)、取り外し可能なハード・ドライブ又はソリッド・ステート・ドライブ(1823)、テープ及びフロッピー・ディスク(図示せず)のようなレガシー磁気媒体、セキュリティ・ドングル(図示せず)のような特殊化されたROM/ASIC/PLDベースの装置等の、人間がアクセス可能な記憶装置及びそれらの関連媒体を含むことも可能である。
【0174】
当業者は、ここに開示される対象事項に関連して使用される用語「コンピュータ読み取り可能な媒体」は、伝送媒体、搬送波、又は他の過渡的な信号を包含しないことも理解するはずである。
【0175】
コンピュータ・システム(1800)は、1つ以上の通信ネットワークに対するインターフェースを含むことも可能である。ネットワークは例えば無線、有線、光であるとすることが可能である。ネットワークは、更に、ローカル、ワイド・エリア、車両、産業、リアル・タイム、遅延耐性などであり得る。ネットワークの例は、イーサネット、無線LAN、セルラー・ネットワーク(GSM、3G、4G、5G、LTEなどを含む)、有線TV又は無線ワイド・エリア・デジタル・ネットワーク(ケーブルTV、衛星TV、及び地上放送TV)、車両及び産業(CANBusを含む)などを含む。特定のネットワークは、一般に、(例えば、コンピュータ・システム(1800)のUSBポートのような)特定の汎用データ・ポート又は周辺バス(1849)に取り付けられる外部ネットワーク・インターフェース・アダプタを必要とする;他のネットワークは、以下に説明されるようにシステム・バスへの取り付けによってコンピュータ・システム(1800)のコアに共通に統合される(例えば、イーサネット・インターフェースはPCコンピュータ・システムに統合され、セルラー・ネットワーク・インターフェースはスマートフォン・コンピュータ・システムに統合される)。これらのネットワークのいずれかを使用して、コンピュータ・システム(1800)は、他のエンティティと通信することができる。このような通信は、一方向性、受信専用(例えば、放送テレビ)、一方向性送信専用(例えば、特定のCANバス装置へのCANバス)、又は、例えばローカル又はワイド・エリア・デジタルネットワークを使用する他のコンピュータ・システムへの双方向性であってもよい。特定のプロトコル及びプロトコル・スタックは、上述のように、それらのネットワーク及びネットワーク・インタフェースの各々で使用されることが可能である。
【0176】
前述のヒューマン・インタフェース・デバイス、ヒューマン・アクセス可能記憶装置、及びネットワーク・インタフェースは、コンピュータ・システム(1800)のコア(1840)に取り付けられることが可能である。
【0177】
コア(1840)は、1つ以上の中央処理装置(CPU)(1841)、グラフィックス処理装置(GPU)(1842)、フィールド・プログラマブル・ゲート・アレイ(FPGA)(1843)の形式における専用プログラマブル処理装置、特定のタスクのためのハードウェア・アクセラレータ(1844)などを含むことが可能である。これらの装置は、リード・オンリ・メモリ(ROM)(1845)、ランダム・アクセス・メモリ(1846)、内部大容量記憶装置、例えば内部非ユーザアクセス可能ハード・ドライブ、SSD等(1847)に、システム・バス(1848)を介して接続される可能性がある。あるコンピュータ・システムでは、システム・バス(1848)は、追加のCPU、GPUなどによる拡張を可能にするために、1つ以上の物理プラグの形態でアクセス可能である。周辺装置は、コアのシステム・バス(1848)に直接的に、又は周辺バス(1849)を介して取り付けられることが可能である。周辺バスのアーキテクチャは、PCI、USBなどを含む。
【0178】
CPU(1841)、GPU(1842)、FPGA(1843)、アクセラレータ(1844)は、組み合わせにより、前述のコンピュータ・コードを構成することが可能な特定の命令を実行することが可能である。そのコンピュータ・コードは、ROM(1845)又はRAM(1846)に格納されることが可能である。一時的なデータはRAM(1846)に格納されることも可能であるが、永続的なデータは例えば内部大容量記憶装置(1847)に格納されることが可能である。1つ以上のCPU(1841)、GPU(1842)、大容量記憶装置(1847)、ROM(1845)、RAM(1846)などに密接に関連付けられることが可能なキャッシュメモリを使用することによって、いずれかのメモリ・デバイスへの高速記憶及び検索が可能にされることが可能である。
【0179】
コンピュータ読み取り可能な媒体は、様々なコンピュータで実行される動作を実行するためのコンピュータ・コードをそこに有することが可能である。媒体及びコンピュータ・コードは、本開示の目的のために特別に設計及び構築されることが可能であり、又はそれらは、コンピュータ・ソフトウェアの分野における当業者とって周知であり利用可能なものであるとすることが可能である。
【0180】
一例として限定ではなく、アーキテクチャ(1800)及び具体的にはコア(1840)を有するコンピュータ・システムは、1つ以上の有形のコンピュータ読み取り可能な媒体に具現化されたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)による機能を提供することが可能である。そのようなコンピュータ読み取り可能な媒体は、コア-内部大容量記憶装置(1847)又はROM(1845)のような一時的でない性質のコア(1840)の特定の記憶装置と同様に、上述のようにユーザーがアクセス可能な大容量記憶装置に関連する媒体であってもよい。本開示の様々な実施形態を実装するソフトウェアは、そのような装置に記憶され、コア(1840)によって実行されることが可能である。コンピュータ読み取り可能な媒体は、特定のニーズに応じて、1つ以上のメモリ・デバイス又はチップを含むことが可能である。ソフトウェアは、コア(1840)及び具体的にはその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、本願に記載された特定のプロセス又は特定のプロセスの特定の部分を実行させることが可能であり、特定のプロセスは、RAM(1846)に記憶されたデータ構造を定義し、ソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を修正することを含む。更に又は代替として、コンピュータ・システムは、回路(例えば、アクセラレータ(1844))内に配線された、又は他の方法で組み込まれたロジックの結果として機能を提供することが可能であり、これは、本願に記載される特定のプロセス又は特定のプロセスの特定の部分を実行するために、ソフトウェアの代わりに又はソフトウェアと共に動作することができる。ソフトウェアへの言及は、ロジックを含み、また、必要に応じてその逆も可能である。コンピュータ読み取り可能な媒体への言及は、実行のためのソフトウェアを記憶する回路、実行のためのロジックを具体化する回路、又はその双方を適宜含むことが可能である。本開示は、ハードウェア及びソフトウェアの任意の適切な組み合わせを包含する。
【0181】
本開示は幾つかの例示的な実施形態を説明してきたが、本開示の範囲に含まれる変更、置換、及び種々の代替的な均等物が存在する。本明細書に明示的に図示又は記述されていないが、本開示の原理を具体化し、従って本願の精神及び範囲内にある多くのシステム及び方法を当業者は考案できることが理解されるであろう。
【符号の説明】
【0182】
JEM:ジョイント探索モデル
VVC:汎用ビデオ符号化
BMS:ベンチマーク・セット
MV:動きベクトル
HEVC:高効率ビデオ符号化
SEI:補足エンハンスメント情報
VUI:ビデオ利用情報
GOP:グループ・オブ・ピクチャ
TU:変換単位、
PU:予測単位
CTU:符号化ツリー単位
CTB:符号化ツリー・ブロック
PB:予測ブロック
HRD:仮説リファレンス・デコーダ
SNR:信号雑音比
CPU:中央処理ユニット
GPU:グラフィックス処理ユニット
CRT:陰極線管
LCD:液晶ディスプレイ
OLED:有機発光ダイオード
CD:コンパクト・ディスク
DVD:デジタル・ビデオ・ディスク
ROM:リード・オンリ・メモリ
RAM:ランダム・アクセス・メモリ
ASIC:特定用途向け集積回路
PLD:プログラマブル・ロジック・デバイス
LAN:ローカル・エリア・ネットワーク
GSM:移動通信用グローバル・システム
LTE:ロング・ターム・エボリューション
CANBus:コントローラ・エリア・ネットワーク・バス
USB:ユニバーサル・シリアル・バス
PCI:ペリフェラル・コンポーネント相互接続
FPGA:フィールド・プログラマブル・ゲート・エリア
SSD:ソリッド・ステート・ドライブ
IC:集積回路
CU:符号化単位
QT:四分木