JP2022511902A - インターpdpcモードの改善 - Google Patents

インターpdpcモードの改善 Download PDF

Info

Publication number
JP2022511902A
JP2022511902A JP2021532464A JP2021532464A JP2022511902A JP 2022511902 A JP2022511902 A JP 2022511902A JP 2021532464 A JP2021532464 A JP 2021532464A JP 2021532464 A JP2021532464 A JP 2021532464A JP 2022511902 A JP2022511902 A JP 2022511902A
Authority
JP
Japan
Prior art keywords
prediction
current block
mode
video
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021532464A
Other languages
English (en)
Other versions
JPWO2020185943A5 (ja
JP7416450B2 (ja
Inventor
リャン・ジャオ
シアン・リ
シン・ジャオ
シャン・リュウ
Original Assignee
テンセント・アメリカ・エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テンセント・アメリカ・エルエルシー filed Critical テンセント・アメリカ・エルエルシー
Publication of JP2022511902A publication Critical patent/JP2022511902A/ja
Publication of JPWO2020185943A5 publication Critical patent/JPWO2020185943A5/ja
Application granted granted Critical
Publication of JP7416450B2 publication Critical patent/JP7416450B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本開示の態様は、ビデオ符号化/復号化のための方法および装置を提供する。ビデオ復号化のための装置は、符号化されたビデオシーケンスの一部である現在ピクチャ内の現在ブロックの予測情報を復号化する処理回路を含む。予測情報は、特定のインター予測モード、位置依存予測組合せ(PDPC)処理、および現在ブロックに対する符号化残差を示す。処理回路は、予測情報に基づいて、(i)変換プロセスが適用される現在ブロックの分割、および、(ii)現在ブロックに対する変換プロセスの変換タイプ、のうちの少なくとも1つを決定する。処理回路は、復号化残差を生成するために、符号化残差に対して変換プロセスを実行する。処理回路は、復号化残差に基づいて現在ブロックを再構築する。

Description

関連出願の相互参照
本出願は、2019年3月11日に出願された米国仮出願第62/816,855号「インターPDPCモードの改善」に対する優先権の利益を主張する、2020年3月11日に出願された米国特許出願第16/816,011号「インターPDPCモードの改善」に対する優先権の利益を主張する。先行出願の開示全体は、参照によりその全体が本発明に組み込まれる。
本発明は、一般的に、ビデオ符号化に関連する実施形態を説明する。
本明細書で提供される背景技術の説明は、本発明の背景を一般的に提示することを目的としている。本発明者らの研究は、出願時に別の形で先行技術としての資格を有しない明細書の態様と同様に、背景技術に記載される範囲で、明示または黙示を問わず、本発明に対する先行技術として認めるものではない。
ビデオ符号化および復号化は、動き補償を伴うインターピクチャ(ピクチャ間)予測を使用して実行できる。非圧縮デジタルビデオは、一連のピクチャを含むことができ、各ピクチャは、例えば1920×1080の輝度サンプルおよび関連する色差サンプルの空間次元を有する。一連のピクチャは、例えば、毎秒60ピクチャまたは60 Hzの固定または可変ピクチャレート(非公式にはフレームレートとしても知られる)を有し得る。非圧縮ビデオは、膨大なビットレートの要件を有する。例えば、サンプルあたり8ビットの1080p60 4:2:0ビデオ(60 Hzのフレームレートで1920×1080の輝度サンプル解像度)は、1.5 Gbit/sに近い帯域幅を必要とする。そのようなビデオの1時間は、600 GByteを超える記憶領域を必要とする。
ビデオの符号化および復号化の目的の1つは、圧縮による入力ビデオ信号の冗長性低減であり得る。圧縮は、前述の帯域幅または記憶領域要件を、場合によっては2桁以上低減するのに役立ち得る。可逆圧縮および非可逆圧縮の両方、ならびにそれらの組み合わせを採用し得る。可逆圧縮とは、圧縮された元信号から、元信号の正確なコピーを再構築することができる技術を指す。非可逆圧縮を使用する場合、再構築された信号は元信号と同一ではない可能性があるが、元信号と再構築された信号との間の歪みは十分小さいので、再構築された信号を意図された用途に使用できる。ビデオの場合、非可逆圧縮が広く採用されている。許容される歪みの量は用途に依存し、例えば、特定の消費者ストリーミング用途のユーザは、テレビ配信用途のユーザよりも高い歪みを許容し得る。達成可能な圧縮比には、使用可能な/許容可能な歪みがより高くなれば、圧縮比をより高くすることができることが、反映される。
ビデオエンコーダおよびデコーダは、例えば、動き補償、変換、量子化、およびエントロピーコーディングを含む、いくつかの広範なカテゴリからの技術を利用し得る。
ビデオコーデック技術は、イントラ符号化として知られる技術を含み得る。イントラ符号化では、サンプルまたは以前に再構成された参照ピクチャからの他のデータを参照せずにサンプル値が表される。いくつかのビデオコーデックでは、ピクチャはサンプルのブロックに、空間的に細分される。サンプルのすべてのブロックが、イントラモードで符号化される場合、そのピクチャは、イントラピクチャであり得る。イントラピクチャおよび独立したデコーダリフレッシュピクチャなどのそれらの派生は、デコーダ状態をリセットするために使用され得、したがって、符号化ビデオビットストリームおよびビデオセッション内の第1のピクチャとして、または静止画像として使用され得る。イントラブロックのサンプルは、変換され得、変換係数は、エントロピー符号化の前に量子化され得る。イントラ予測は、変換前領域におけるサンプル値を最小化する技術であり得る。場合によっては、変換後のDC値が小さいほど、およびAC係数が小さいほど、エントロピー符号化後のブロックを表すための所与の量子化ステップサイズにおいて、必要とされるビットが少なくなる。
例えばMPEG-2生成符号化技術から知られているような従来のイントラ符号化は、イントラ予測を使用しない。しかしながら、いくつかのより新しいビデオ圧縮技術は、例えば、空間的に隣接する、および、復号化順序で先行する、データブロックの符号化/復号化中に取得された、周囲のサンプルデータおよび/またはメタデータから試行する技術を含む。そのような技術は、これ以降は「イントラ予測」技術と呼ばれる。少なくともいくつかの場合において、イントラ予測は、再構成中の現在ピクチャからの参照データのみを使用し、参照ピクチャからの参照データは使用しないことに留意されたい。
イントラ予測には、多くの異なる形態があり得る。そのような技術のうちの2つ以上が、所与のビデオ符号化技術において使用され得る場合、使用される技術は、イントラ予測モードで符号化され得る。ある場合には、モードはサブモードおよび/またはパラメータを有することができ、それらは個別に符号化されるかまたはモードのコードワードに含まれ得る。所与のモード/サブモード/パラメータの組合せにどのコードワードを使用するかは、イントラ予測を介して符号化効率向上に影響を与える可能性があり、そのため、コードワードをビットストリームに変換するために使用されるエントロピー符号化技術も影響を与える可能性がある。
イントラ予測の特定のモードは、H.264で導入され、H.265で改良され、共同探索モデル(JEM)、多用途ビデオ符号化(VVC)、およびベンチマークセット(BMS)などの新しい符号化技術でさらに改良された。予測器ブロックは、既に利用可能なサンプルに属する隣接サンプル値を使用して形成し得る。隣接するサンプルのサンプル値は、方向に従って予測器ブロックにコピーされる。使用される方向への参照は、ビットストリーム内で符号化することができ、またはそれ自体を予測し得る。
図1Aを参照すると、右下に示されているのは、H.265の33個の可能な予測器方向から知られている9つの予測器方向のサブセットである(35個のイントラモードのうちの33個の角度モードに対応する)。矢印の集中点(101)は、予測対象のサンプルを表す。矢印は、サンプルが予測されている方向を表す。例えば、矢印(102)は、サンプル(101)が、サンプルから右上へ、水平から45度の角度で、予測されることを示す。同様に、矢印(103)は、サンプル(101)が、サンプルからサンプル(101)の左下へ、水平から22.5度の角度で、予測されることを示す。
さらに図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の両方において、予測サンプルは、再構成中のブロックに隣接する。したがって、負の値を使用する必要はない。
イントラピクチャ予測は、シグナリングされた予測方向によって適切にされるように、隣接するサンプルからの参照サンプル値をコピーすることによって機能できる。例えば、符号化ビデオビットストリームが、このブロックについて、矢印(102)と一致する予測方向を示すシグナリングを含む、すなわち、サンプルは予測サンプルから右上のサンプルへ、水平から45度の角度で予測されると仮定する。その場合、サンプルS41、S32、S23、S14が、同じ参照サンプルR05から予測される。次に、サンプルS44が、参照サンプルR08から予測される。
特定の場合、特に、方向が45度で均等に割り切れない場合に、参照サンプルを計算するために、例えば補間によって複数の参照サンプル値を組み合わせることができる。
可能な方向数は、ビデオ符号化技術が発展するにつれて増加している。H.264(2003年)では、9個の異なる方向を表すことができた。これは、H.265(2013年)では33個に増加し、JEM/VVC/BMSは、本開示の時点で、最大65個の方向をサポートすることができる。最も可能性の高い方向を識別するために実験が行われており、エントロピー符号化における特定の技術が、それらの可能性の高い方向において少数ビットで表すために使用され、可能性の低い方向に対する特定の不利益を受け入れている。さらに、方向自体は、隣接する(既に復号化された)ブロックで使用される隣接方向から、予測できる場合がある。
図1Bは、経時的に増加する予測方向の数を示すためにJEMによる65個のイントラ予測方向を示す概略図(105)を示す。
方向を表す符号化ビデオビットストリーム内のイントラ予測方向ビットのマッピングは、ビデオ符号化技術によって異なり得る。例えば、予測方向が単純な直接マッピングから、イントラ予測モード、コードワード、最確モードおよび同様の技術を含む、複雑な適応方式まで、広がり得る。しかしながら、すべての場合で、ビデオコンテンツにおいて、特定の他の方向よりも統計的に発生する可能性が低い特定の方向が、存在し得る。ビデオ圧縮の目的は冗長性の低減であるため、うまく機能するビデオ符号化技術においては、それらの可能性の低い方向は、可能性の高い方向よりも多くのビット数で表される。
動き補償は非可逆圧縮技術であり得、以前に再構成されたピクチャまたはその一部(参照ピクチャ)からのサンプルデータのブロックが、動きベクトル(これ以降はMV)によって示される方向に空間的にシフトされた後、新たに再構成されたピクチャまたはピクチャ部分の予測に使用される技術と関連し得る。場合によっては、参照ピクチャは、現在再構成中のピクチャと同じであり得る。MVは、2つの次元XおよびY、または3つの次元を有することができ、第3の次元は、使用される参照ピクチャ(後者は、間接的に、時間次元であり得る)の表示である。
いくつかのビデオ圧縮技術では、サンプルデータの特定領域に適用可能なMVは、他のMVから、例えば再構成中の領域に空間的に隣接し、復号化順でそのMVに先行する、サンプルデータの別の領域に関連するMVから、予測し得る。そうすることにより、MVの符号化に必要なデータ量を大幅に削減することができ、それによって冗長性が排除され、圧縮が大きくなる。例えば、カメラ(自然映像として知られている)から導出された入力ビデオ信号を符号化するとき、単一MVが適用可能な領域よりも大きい領域が、同様方向に移動する統計的尤度があり、したがって、場合によっては、隣接領域のMVから導出された同様の動きベクトルを使用して予測することができるため、MV予測が、効果的に機能することができる。これにより、所与の領域について見つかったMVは、周囲のMVから予測されたMVと、類似または同じになるので、その結果として、エントロピー符号化後に、MVを直接符号化する場合に使用されるよりも少ないビット数で表すことができる。場合によっては、MV予測は、元信号(すなわち、サンプルストリーム)から導出された信号(すなわち、MV)の可逆圧縮の一例とすることができる。他の場合では、例えば、いくつかの周囲のMVから予測器を計算するときの丸め誤差のために、MV予測自体が非可逆であり得る。
様々なMV予測メカニズムは、H.265/HEVC(ITU-T Rec.H.265、「高効率ビデオ符号化」、2016年12月)に記載されている。H.265が提供する多くのMV予測メカニズムのうち、本明細書に記載されるのは、これ以降は「空間マージ」と呼ばれる技術である。
図1Cを参照すると、現在ブロック(111)は、空間的にシフトされた同じサイズの以前のブロックから予測可能であるように、動き探索プロセス中にエンコーダによって見つけられたサンプルを含み得る。そのMVを直接符号化する代わりに、A0、A1、およびB0、B1、B2(それぞれ112~116)で示される5つの周囲サンプルのいずれか1つに関連付けられたMVを使用して、1つまたは複数の参照ピクチャに関連付けられたメタデータから、例えば、(復号化順序で)最新の参照ピクチャから、MVを導出し得る。H.265では、MV予測は、隣接ブロックが使用しているのと同じ参照ピクチャからの予測器を使用し得る。
本開示の態様は、ビデオ符号化/復号化のための方法および装置を提供する。いくつかの例では、ビデオ復号化のための装置は処理回路を含む。
本開示の態様によれば、デコーダにおけるビデオ復号化方法が提供される。この方法では、処理回路は、符号化されたビデオシーケンスの一部である現在ピクチャ内の現在ブロックの予測情報を復号化する。予測情報は、特定のインター予測モード、位置依存予測組合せ(PDPC)処理、および現在ブロックに対する符号化残差を示す。処理回路は、予測情報に基づいて、(i)変換プロセスが適用される現在ブロックの分割、および、(ii)現在ブロックに対する変換プロセスの変換タイプ、のうちの少なくとも1つを決定する。処理回路は、復号化残差を生成するために、符号化残差に対して変換プロセスを実行する。処理回路は、復号化残差に基づいて現在ブロックを再構築する。
本開示の態様によれば、処理回路は、変換タイプを、複数のサブブロック変換(SBT)タイプのうちの1つであると決定する。複数のSBTタイプのそれぞれは、現在ブロックの異なる部分に適用される。一実施形態では、複数のSBTタイプのうちの1つの適用は、現在ブロックの特定のインター予測モードとは無関係である。一実施形態において、複数のSBTタイプのうちの1つが適用される部分は、現在ブロックの複数部分のうちの右端部分および下端部分のうちの1つである。
本開示の態様によれば、処理回路は、変換タイプが選択されるDCT-2変換、DST-7変換、およびDCT-8変換のサブセットを決定する。
一実施形態では、予測情報は、(i)符号化されたコンテキスト、および、(ii)現在ブロックのPDPC処理を示す、シグナリングされたフラグを含む。
一実施形態では、現在ブロックに対してイントラブロックコピー(IBC)モードは許可されない。
一実施形態では、PDPC処理の複数の重み付けパラメータは、現在ブロックに隣接する隣接ブロックの予測情報に基づく。
本開示の態様はまた、ビデオ復号化のためにコンピュータによって実行される場合、ビデオ復号化方法のうちの任意の1つまたは組み合わせをコンピュータに実行させる命令を格納する、非一時的コンピュータ可読媒体を提供する。
開示内容のさらなる特徴、性質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかになるであろう。
イントラ予測モードの例示的なサブセットの概略図である。 イントラ予測方向の例示的な図である。 現在ブロックおよびその周囲の空間マージ候補の一例における概略図である。 一実施形態による、通信システムの簡略ブロック図の概略図である。 一実施形態による、通信システムの簡略ブロック図の概略図である。 一実施形態による、デコーダの簡略ブロック図の概略図である。 一実施形態による、エンコーダの簡略ブロック図の概略図である。 別の実施形態による、エンコーダのブロック図である。 別の実施形態による、デコーダのブロック図である。 いくつかの例(例えば、VVC)における、例示的なイントラ予測方向および対応するイントラ予測モードの図を示す。 一実施形態による、DCモードの(0,0)における予測サンプルの例示的な重み係数を示す図である。 一実施形態による、DCモードの(1,0)における予測サンプルの例示的な重み係数を示す図である。 いくつかの例(例えば、VVC)における、色差ブロックの例示的なイントラモード符号化を示す表である。 一実施形態による、CUの対角分割を示す図である。 一実施形態による、CUの反対角分割を示す図である。 いくつかの実施形態による、例示的なサブブロック変換モードを示す図である。 いくつかの実施形態による、例示的なサブブロック変換モードを示す図である。 いくつかの実施形態による、例示的なサブブロック変換モードを示す図である。 いくつかの実施形態による、例示的なサブブロック変換モードを示す図である。 選択されたDST/DCTの基底関数の例示的な表である。 マルチ変換選択(MTS)インデックスに応じた水平変換タイプおよび垂直変換タイプの例示的な表である。 一実施形態による、例示的なプロセスの概要を示すフローチャートである。 一実施形態による、コンピュータシステムの概略図である。
ビデオエンコーダおよびデコーダ
図2は、本開示の一実施形態による通信システム(200)の簡略ブロック図を示す。通信システム(200)は、例えばネットワーク(250)を介して互いに通信可能な複数の端末デバイスを含む。例えば、通信システム(200)は、ネットワーク(250)を介して相互接続された端末デバイスの第1のペア(210)および(220)を含む。図2の例では、端末デバイスの第1のペア(210)および(220)は、データの単方向の送信を実行する。例えば、端末デバイス(210)は、ネットワーク(250)を介して他の端末デバイス(220)に送信するために、ビデオデータ(例えば、端末デバイス(210)によって取り込まれたビデオピクチャのストリーム)を符号化し得る。符号化ビデオデータは、1つまたは複数の符号化ビデオビットストリームの形態で送信し得る。端末デバイス(220)は、ネットワーク(250)から符号化ビデオデータを受信し、符号化ビデオデータを復号化してビデオピクチャを復元し、復元されたビデオデータに従ってビデオピクチャを表示し得る。単方向データ送信は、メディアサービングアプリケーションなどにおいて一般的であり得る。
別の例では、通信システム(200)は、例えばビデオ会議中に発生し得る符号化されたビデオデータの双方向送信を実行する端末デバイス(230)および(240)の第2のペアを含む。データの双方向送信のために、一例では、端末デバイス(230)および(240)の各端末デバイスは、ネットワーク(250)を介して端末デバイス(230)および(240)の他方の端末デバイスに送信するために、ビデオデータ(例えば、端末デバイスによって取り込まれたビデオピクチャのストリーム)を符号化し得る。端末デバイス(230)および(240)の各端末デバイスはまた、端末デバイス(230)および(240)の他方の端末デバイスによって送信された符号化ビデオデータを受信でき、符号化ビデオデータを復号化してビデオピクチャを復元でき、復元されたビデオデータに従ってアクセス可能な表示デバイスにビデオピクチャを表示できる。
図2の例では、端末デバイス(210)、(220)、(230)、および(240)は、サーバ、パーソナルコンピュータ、およびスマートフォンとして示され得るが、本開示の原理はそのように限定されなくてもよい。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤおよび/または専用ビデオ会議機器に適用される。ネットワーク(250)は、例えば有線(配線された)および/または無線通信ネットワークを含む、端末デバイス(210)、(220)、(230)および(240)の間で符号化ビデオデータを伝達する任意の数のネットワークを表す。通信ネットワーク(250)は、回線交換チャネルおよび/またはパケット交換チャネルでデータをやり取りできる。代表的なネットワークには、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、および/またはインターネットが含まれる。本説明の目的のために、ネットワーク(250)のアーキテクチャおよびトポロジは、本明細書で以下に説明されない限り、本開示の動作に重要ではない場合がある。
図3は、開示内容の用途の一例として、ストリーミング環境におけるビデオエンコーダおよびビデオデコーダの配置を示す。開示内容は、例えば、ビデオ会議、デジタルTV、CD、DVD、メモリスティックなどを含むデジタル媒体への圧縮ビデオの格納を含む、他のビデオ対応アプリケーションにも等しく適用可能であり得る。
ストリーミングシステムは、例えば非圧縮のビデオピクチャのストリーム(302)を生成する、例えばデジタルカメラなどのビデオソース(301)を含み得るキャプチャサブシステム(313)を含み得る。一例では、ビデオピクチャのストリーム(302)は、デジタルカメラによって撮影されたサンプルを含む。符号化ビデオデータ(304)(または符号化ビデオビットストリーム)と比較して、高いデータ量を強調するために太線として示されているビデオピクチャのストリーム(302)は、ビデオソース(301)に結合されたビデオエンコーダ(303)を含む電子デバイス(320)によって、処理され得る。ビデオエンコーダ(303)は、以下でより詳細に説明するように、開示内容の態様を可能にするかまたは実施するために、ハードウェア、ソフトウェア、またはそれらの組み合わせを含み得る。ビデオピクチャのストリーム(302)と比較して、より低いデータ量を強調するために細い線として示されている符号化ビデオデータ(304)(または符号化ビデオビットストリーム(304))は、将来使用するために、ストリーミングサーバ(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の関連で使用され得る。
電子デバイス(320)および(330)は、他の構成要素(図示せず)を含み得ることに留意されたい。例えば、電子デバイス(320)はビデオデコーダ(図示せず)を含み得、電子デバイス(330)はビデオエンコーダ(図示せず)も含み得る。
図4は、本開示の一実施形態によるビデオデコーダ(410)のブロック図を示す。ビデオデコーダ(410)は、電子デバイス(430)に含まれ得る。電子デバイス(430)は、レシーバ(431)(例えば、受信回路)を含み得る。ビデオデコーダ(410)は、図3の例のビデオデコーダ(310)の代わりに使用され得る。
レシーバ(431)は、ビデオデコーダ(410)によって復号化されるべき、1つまたは複数の符号化されたビデオシーケンスを受信し得る。同じまたは別の実施形態では、一度に1つの符号化ビデオシーケンスであり、各符号化ビデオシーケンスの復号化は、他の符号化ビデオシーケンスから独立している。符号化ビデオデータを格納する記憶デバイスへのハードウェアリンク/ソフトウェアリンクであり得るチャネル(401)から、符号化ビデオシーケンスが、受信され得る。レシーバ(431)は、エンティティ(図示せず)を使用してそれぞれに転送され得る他のデータ、例えば、符号化オーディオデータおよび/または補助データストリーム、を有する符号化ビデオデータを受信し得る。レシーバ(431)は、符号化ビデオシーケンスを他のデータから分離し得る。ネットワークジッタに対抗するために、バッファメモリ(415)が、レシーバ(431)とエントロピーデコーダ/パーサ(420)(これ以降は「パーサ(420)」)との間に結合され得る。特定の用途では、バッファメモリ(415)は、ビデオデコーダ(410)の一部である。他の場合には、ビデオデコーダ(410)の外部にあってもよい(図示せず)。さらに他のものでは、例えばネットワークジッタに対抗するために、ビデオデコーダ(410)の外部にバッファメモリ(図示せず)があり、さらに、例えば再生タイミングに対処するために、ビデオデコーダ(410)の内部に別のバッファメモリ(415)があり得る。十分な帯域幅および制御性がある格納デバイス/転送デバイスから、または等時ネットワークから、レシーバ(431)がデータを受信している場合、バッファメモリ(415)は必要ないか、または、小さくてもよい。インターネットなどのベストエフォート型パケットネットワークで使用するために、バッファメモリ(415)が必要とされてもよく、比較的大きくてもよく、有利には適応サイズであってもよく、そして、ビデオデコーダ(410)の外部のオペレーティングシステムまたは同様の要素(図示せず)に少なくとも部分的に実装されてもよい。
ビデオデコーダ(410)は、符号化ビデオシーケンスからシンボル(421)を再構築するために、パーサ(420)を含み得る。これらのシンボルのカテゴリは、ビデオデコーダ(410)の動作を管理するために使用される情報、および潜在的に、図4に示すように、電子デバイス(430)の不可欠な部分ではないが電子デバイス(430)に結合し得る描画デバイス(412)(例えば、表示画面)などの描画デバイスを制御するための情報を含む。描画デバイスの制御情報は、補足強化情報(SEIメッセージ)またはビデオユーザビリティ情報(VUI)のパラメータセット断片(図示せず)の形態であってもよい。パーサ(420)は、受信された符号化ビデオシーケンスを解析/エントロピー復号化し得る。符号化ビデオシーケンスの符号化は、ビデオ符号化技術または規格に従うことができ、可変長符号化、ハフマン符号化、コンテキスト感度ありまたはなしの算術符号化など、を含む様々な原理に従い得る。パーサ(420)は、グループに対応する少なくとも1つのパラメータに基づいて、符号化ビデオシーケンスから、ビデオデコーダ内の画素サブグループのうちの少なくとも1つに対して、サブグループパラメータのセットを抽出し得る。サブグループは、ピクチャのグループ(GOP)、ピクチャ、タイル、スライス、マクロブロック、符号化ユニット(CU)、ブロック、変換ユニット(TU)、予測ユニット(PU)などを含み得る。パーサ(420)はまた、変換係数、量子化器パラメータ値、動きベクトルなどのような、符号化ビデオシーケンス情報を抽出し得る。
パーサ(420)は、シンボル(421)を作成するために、バッファメモリ(415)から受信したビデオシーケンスに対してエントロピー復号化/解析の動作を実行し得る。
シンボル(421)の再構成は、符号化ビデオピクチャまたはその一部(例えば、インターピクチャおよびイントラピクチャ、インターブロックおよびイントラブロック)のタイプ、およびその他の要因、に依存する、複数の異なるユニットを含み得る。どのユニットがどのように関与するかは、パーサ(420)によって符号化ビデオシーケンスから解析されたサブグループ制御情報によって制御され得る。パーサ(420)と以下の複数ユニットとの間のそのようなサブグループ制御情報のフローは、見やすくするために示されていない。
既に述べた機能ブロックを超えて、ビデオデコーダ(410)は、以下に説明するように、概念上は、いくつかの機能ユニットに細分することができる。商業的制約の下で動作する実際の実装では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的に互いに統合することができる。しかしながら、開示内容を説明することを目的として、概念上は、以下の機能ユニットへの細分化が適切である。
第一のユニットはスケーラ/逆変換ユニット(451)である。量子化変換係数だけでなく、どの変換を使用するか、ブロックサイズ、量子化因子、量子化スケーリング行列など、をシンボル(421)として含む制御情報も、スケーラ/逆変換ユニット(451)は、パーサ(420)から受信する。スケーラ/逆変換ユニット(451)は、アグリゲータ(455)に入力され得るサンプル値を含むブロックを出力し得る。
場合によっては、スケーラ/逆変換(451)の出力サンプルは、イントラ符号化ブロックに関連し得る。すなわち、ブロックは、以前に再構成されたピクチャからの予測情報を使用していないが、現在ピクチャの以前に再構成された部分からの予測情報を使用し得る。そのような予測情報は、イントラピクチャ予測ユニット(452)によって提供され得る。場合によっては、イントラピクチャ予測ユニット(452)は、現在ピクチャのバッファ(458)から取り出された、既に再構成された周囲の情報を用いて、再構成中のブロックと同じサイズおよび形状のブロックを生成する。現在ピクチャのバッファ(458)は、例えば、部分的に再構成された現在ピクチャ、および/または、完全に再構成された現在ピクチャ、をバッファリングする。アグリゲータ(455)は、場合によっては、イントラ予測ユニット(452)が生成した予測情報を、スケーラ/逆変換ユニット(451)からの出力サンプル情報に、サンプル単位で追加する。
他の場合には、スケーラ/逆変換ユニット(451)の出力サンプルは、インター符号化された、潜在的に動き補償されたブロックに関連し得る。そのような場合、動き補償予測ユニット(453)は、予測に使用されるサンプルを取り出すために参照ピクチャメモリ(457)にアクセスし得る。ブロックに関連するシンボル(421)に従って取り出されたサンプルを動き補償した後、これらのサンプルは、スケーラ/逆変換ユニット(451)の出力(この場合、残差サンプルまたは残差信号と呼ばれる)に、出力サンプル情報を生成するために、アグリゲータ(455)によって追加され得る。動き補償予測ユニット(453)が予測サンプルを取り出す参照ピクチャメモリ(457)内のアドレスは、例えば、X、Y、および参照ピクチャ成分を有することができるシンボル(421)の形態で動き補償予測ユニット(453)に利用できるように、動きベクトルによって制御され得る。動き補償はまた、サブサンプルの正確な動きベクトルが使用されている場合の参照ピクチャメモリ(457)から取り出されたサンプル値の補間、動きベクトル予測メカニズムなどを含み得る。
アグリゲータ(455)の出力サンプルは、ループフィルタユニット(456)における様々なループフィルタ処理技術を適用できる。ビデオ圧縮技術は、符号化ビデオシーケンス(符号化ビデオビットストリームとも呼ばれる)に含まれるパラメータによって制御され、パーサ(420)からシンボル(421)としてループフィルタユニット(456)に利用できるインループフィルタ技術を含み得るが、符号化ピクチャまたは符号化ビデオシーケンスの以前の(復号化順の)部分の復号化中に取得されたメタ情報に応答することもできるとともに、以前に再構成されループフィルタリングされたサンプル値に応答することもできる。
ループフィルタユニット(456)の出力は、描画デバイス(412)に出力することができるとともに、将来のピクチャ間予測に使用するために、参照ピクチャメモリ(457)に格納され得るサンプルストリームとすることもできる。
完全に再構築されると、特定の符号化ピクチャは、将来の予測のための参照ピクチャとして使用され得る。例えば、現在ピクチャに対応する符号化ピクチャが完全に再構成され、符号化ピクチャが、(例えば、パーサ(420)により)参照ピクチャとして識別されると、現在ピクチャのバッファ(458)は参照ピクチャメモリ(457)の一部になり得、新しい現在ピクチャのバッファは、後続の符号化ピクチャの再構成を開始する前に再配置され得る。
ビデオデコーダ(410)は、例えばITU-T Rec.H.265のような規格における所定のビデオ圧縮技術にしたがって、復号化動作を実行し得る。符号化ビデオシーケンスがビデオ圧縮技術または規格のシンタックス、およびビデオ圧縮技術または規格に文書化されたプロファイル、の両方に準拠するという意味で、符号化ビデオシーケンスは、使用されているビデオ圧縮技術または規格によって指定されたシンタックスに準拠し得る。具体的には、プロファイルは、ビデオ圧縮技術または規格で利用可能なすべてのツールから、そのプロファイルの下で使用可能な唯一のツールとして、特定のツールを選択し得る。また、コンプライアンスのために必要なのは、符号化ビデオシーケンスの複雑さが、ビデオ圧縮技術または規格のレベルによって定義される境界内にあることであり得る。場合によっては、レベルは、最大ピクチャサイズ、最大フレームレート、最大再構成サンプルレート(例えば、毎秒当たりのメガサンプルで測定される)、最大参照ピクチャサイズなどを、制限する。場合によっては、レベルによって設定される制限は、符号化ビデオシーケンスにおいてシグナリングされた仮想参照デコーダ(HRD)バッファ管理のためのメタデータおよびHRD仕様によってさらに制限され得る。
一実施形態では、レシーバ(431)は、符号化ビデオを有する追加(冗長な)データを受信し得る。追加データは、符号化ビデオシーケンスの一部として含まれ得る。追加データは、データを適切に復号化するために、および/または元のビデオデータをより正確に再構成するために、ビデオデコーダ(410)によって使用され得る。追加データは、例えば、時間、空間、または信号雑音比(SNR)強化層、冗長スライス、冗長ピクチャ、前方誤り訂正符号などの形態であり得る。
図5は、本開示の一実施形態によるビデオエンコーダ(503)のブロック図を示す。ビデオエンコーダ(503)は、電子デバイス(520)に含まれる。電子デバイス(520)は、トランスミッタ(540)(例えば、送信回路)を含む。ビデオエンコーダ(503)は、図3の例のビデオエンコーダ(303)の代わりに使用し得る。
ビデオエンコーダ(503)は、ビデオエンコーダ(503)によって符号化されるビデオ画像を取り込み得るビデオソース(501)(図5の例では、電子デバイス(520)の一部ではない)からビデオサンプルを受信し得る。別の例では、ビデオソース(501)は電子デバイス(520)の一部である。
ビデオソース(501)は、ビデオエンコーダ(503)によって符号化されるソースビデオシーケンスを、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、...)、任意の色空間(例えば、BT.601 Y CrCB、RGB、...)、および、任意の適切なサンプリング構造(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)であり得るデジタルビデオサンプルストリームの形態で提供できる。メディアサービングシステムにおいて、ビデオソース(501)は、予め用意されたビデオを格納する記憶デバイスであり得る。ビデオ会議システムでは、ビデオソース(501)は、ビデオシーケンスとしてローカル画像情報を取り込むカメラであり得る。ビデオデータは、連続して見たときに動きを与える、複数の個々のピクチャとして提供し得る。ピクチャ自体は、画素の空間アレイとして編成することができ、各画素は、使用中のサンプリング構造、色空間などに応じて、1つまたは複数のサンプルを含み得る。当業者であれば、画素とサンプルとの関係を容易に理解することができる。以下、サンプルに着目して説明する。
一実施形態によれば、ビデオエンコーダ(503)は、リアルタイムで、またはアプリケーションによって要求される任意の他の時間制約下で、ソースビデオシーケンスのピクチャを符号化ビデオシーケンス(543)に、符号化して圧縮し得る。適切な符号化速度を適用することが、コントローラ(550)の一機能である。いくつかの実施形態では、コントローラ(550)は、以下に説明するように他の機能ユニットを制御し、他の機能ユニットに機能的に結合される。結合は、見やすくするために示されていない。コントローラ(550)によって設定されるパラメータは、レート制御関連パラメータ(画像スキップ、量子化器、レート歪み最適化技術のラムダ値など)、ピクチャサイズ、ピクチャグループ(GOP)レイアウト、最大動きベクトル許容参照領域などを含み得る。コントローラ(550)は、特定のシステム設計に最適化されたビデオエンコーダ(503)に関する他の適切な機能を有するように構成し得る。
いくつかの実施形態では、ビデオエンコーダ(503)は、符号化ループで動作するように構成される。過度に簡略化された説明として、一例では、符号化ループは、ソースコーダ(530)(例えば、符号化される入力ピクチャおよび参照ピクチャに基づいて、シンボルストリームのようなシンボルを生成することを担当する)、および、ビデオエンコーダ(503)に組み込まれた(ローカル)デコーダ(533)を含み得る。デコーダ(533)はシンボルを再構成し、(開示内容で考慮されるビデオ圧縮技術においては、シンボルと符号化ビデオビットストリームとの間の任意の圧縮が可逆的であるため)、(リモート)デコーダが作成するのと同様の方法でサンプルデータを作成する。再構成されたサンプルストリーム(サンプルデータ)は、参照ピクチャメモリ(534)に入力される。シンボルストリームの復号化は、デコーダ位置(ローカルまたはリモート)とは無関係に、ビットに正確な結果をもたらすので、参照ピクチャメモリ(534)内のコンテンツも、ローカルエンコーダとリモートエンコーダとの間でビットに正確である。換言すれば、参照ピクチャとしてエンコーダが「見る」予測部分は、復号化中に予測を使用するときに、デコーダが「参照」するのと全く同じサンプル値をサンプリングする。参照ピクチャの同期性、(および、例えばチャネル誤差のために同期性を維持することができない場合、結果として生じるドリフト)、のこの基本原理は、いくつかの関連技術においても使用される。
「ローカル」デコーダ(533)の動作は、図4に関連して既に詳細に説明したビデオデコーダ(410)などの「リモート」デコーダの動作と同じであり得る。しかしながら、図4も簡単に参照すると、シンボルが利用可能であり、エントロピーコーダ(545)およびパーサ(420)による符号化ビデオシーケンスへのシンボルの符号化/復号化は可逆であり得るため、バッファメモリ(415)およびパーサ(420)を含むビデオデコーダ(410)のエントロピー復号化部分は、ローカルデコーダ(533)に完全には実装され得ない。
この時点でなされ得る観測は、デコーダ内に存在する構文解析/エントロピー復号化を除く任意のデコーダ技術もまた、対応するエンコーダ内に実質的に同一の機能形態で存在する必要があるということである。このため、開示内容は、デコーダ動作に焦点を合わせている。エンコーダ技術の説明は、それらが包括的に説明されたデコーダ技術の逆であるので、省略ができる。特定の領域においてのみ、より詳細な説明が必要とされ、以下に提供される。
動作中、いくつかの例では、ソースコーダ(530)は、「参照ピクチャ」として指定されたビデオシーケンスからの1つまたは複数の以前の符号化ピクチャを参照して入力ピクチャを予測的に符号化する、動き補償予測符号化を実行し得る。このようにして、符号化エンジン(532)は、入力ピクチャの画素ブロックと、入力ピクチャに対する予測参照として選択され得る参照ピクチャの画素ブロックとの間の差分を符号化する。
ローカルビデオデコーダ(533)は、ソースコーダ(530)によって生成されたシンボルに基づいて、参照ピクチャとして指定され得るピクチャの符号化ビデオデータを復号化し得る。符号化エンジン(532)の動作は、有利には非可逆プロセスであり得る。符号化ビデオデータが、ビデオデコーダ(図5では図示せず)で復号化され得る場合、再構築されたビデオシーケンスは、通常、いくつかのエラーを有するソースビデオシーケンスの複製であり得る。ローカルビデオデコーダ(533)は、ビデオデコーダによって参照ピクチャに対して実行され得る復号化処理を複製し、再構築された参照ピクチャを参照ピクチャキャッシュ(534)に格納させることができる。このようにして、ビデオエンコーダ(503)は、リモートビデオデコーダによって取得されることになる再構築された参照ピクチャとして共通のコンテンツを有する再構築された参照ピクチャのコピーをローカルに格納することができる(伝送エラーがない)。
予測器(535)は、符号化エンジン(532)のために、予測検索を実行し得る。すなわち、符号化されるべき新しいピクチャについて、(候補参照画素ブロックとしての)サンプルデータ、または、新しいピクチャの適切な予測参照として機能し得る参照ピクチャの動きベクトル、ブロック形状などの特定のメタデータを求めて、予測器(535)が、参照ピクチャメモリ(534)を探索し得る。予測器(535)は、適切な予測参照を見つけるために、ピクセルブロックごとのサンプルブロックを基本として動作し得る。場合によっては、予測器(535)によって取得された検索結果により決定されるように、入力ピクチャは、参照ピクチャメモリ(534)に格納された複数の参照ピクチャから描画された予測参照を有し得る。
コントローラ(550)は、例えば、ビデオデータを符号化するために使用されるパラメータおよびサブグループパラメータの設定を含む、ソースコーダ(530)の符号化動作を管理し得る。
前述したすべての機能ユニットの出力は、エントロピーコーダ(545)においてエントロピー符号化され得る。エントロピーコーダ(545)は、ハフマン符号化、可変長符号化、算術符号化などの技術に従ってシンボルを可逆圧縮することによって、様々な機能ユニットによって生成されたシンボルを符号化ビデオシーケンスに変換する。
トランスミッタ(540)は、エントロピーコーダ(545)によって生成された符号化ビデオシーケンスをバッファリングすることができ、符号化ビデオデータを格納する記憶デバイスへのハードウェア/ソフトウェアリンクであり得る通信チャネル(560)を介した送信の準備をすることができる。トランスミッタ(540)は、ビデオコーダ(503)からの符号化ビデオデータを、送信される他のデータ、例えば、符号化オーディオデータおよび/または補助データストリーム(ソースは図示せず)とマージすることができる。
コントローラ(550)は、ビデオエンコーダ(503)の動作を管理し得る。符号化中、コントローラ(550)は、各符号化ピクチャに特定の符号化ピクチャタイプを割り当てることができ、これは、それぞれのピクチャに適用され得る符号化技術に影響を及ぼし得る。例えば、画像は、以下の画像タイプのうちの1つとして割り当てられることが多い。
なお、イントラピクチャ(Iピクチャ)は、シーケンス内の任意の他のピクチャを予測元とせずに符号化および復号化可能なピクチャであり得る。いくつかのビデオコーデックは、例えば、独立デコーダリフレッシュ(「IDR」)ピクチャを含む異なるタイプのイントラピクチャを可能にする。当業者は、Iピクチャの変形、ならびに、それらのそれぞれの用途および機能を認識している。
予測ピクチャ(Pピクチャ)は、各ブロックのサンプル値を予測するために、最大で1つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して、符号化および復号化され得るピクチャであり得る。
双方向予測ピクチャ(Bピクチャ)は、各ブロックのサンプル値を予測するために、最大で2つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して、符号化および復号化され得るピクチャであり得る。同様に、複数予測ピクチャは、単一ブロックの再構成のために3つ以上の参照ピクチャおよび関連するメタデータを使用し得る。
ソースピクチャは、一般に、複数のサンプルブロック(例えば、各々、4x4、8x8、4x8、または16x16のブロック)に空間的に細分化され、ブロックごとに符号化され得る。ブロックは、ブロックのそれぞれのピクチャに適用される符号化割当によって決定されるように、他の(既に符号化された)ブロックを参照して、予測的に符号化され得る。例えば、Iピクチャのブロックは、非予測的に符号化され得るし、または、同じピクチャの以前に符号化されたブロックを参照して、予測的に符号化され得る(空間予測またはイントラ予測)。Pピクチャの画素ブロックは、以前に符号化された1つの参照ピクチャを参照して、空間予測を介して、または時間予測を介して、予測的に符号化され得る。Bピクチャのブロックは、1つまたは2つの以前に符号化された参照ピクチャを参照して、空間予測を介して、または時間予測を介して、予測的に符号化され得る。
ビデオエンコーダ(503)は、例えばITU-T Rec.H.265のような所定のビデオ符号化技術または規格にしたがって、符号化動作を実行し得る。その動作において、ビデオエンコーダ(503)は、入力ビデオシーケンス内の時間的および空間的冗長性を利用する予測符号化動作を含む、様々な圧縮動作を実行し得る。したがって、符号化ビデオデータは、使用されているビデオ符号化技術または規格によって指定されたシンタックスに準拠し得る。
一実施形態では、トランスミッタ(540)は、符号化ビデオとともに追加データを送信し得る。ソースコーダ(530)は、符号化ビデオシーケンスの一部としてそのようなデータを含み得る。追加データは、時間/空間/SNR強化レイヤ、冗長ピクチャおよびスライスなどの他の形態の冗長データ、SEIメッセージ、VUIパラメータセット断片などを、含み得る。
ビデオは、複数のソースピクチャ(ビデオピクチャ)として、時系列に撮像され得る。ピクチャ内予測(しばしばイントラ予測と略される)は、所与のピクチャにおける空間相関を利用し、ピクチャ間予測は、ピクチャ間の(時間的または他の)相関を利用する。一例では、現在ピクチャと呼ばれる、符号化/復号化中の特定のピクチャがブロックに分割される。現在ピクチャ内のブロックがビデオ内の以前に符号化されてまだバッファされている参照ピクチャ内の参照ブロックに類似している場合、現在ピクチャ内のブロックは、動きベクトルと呼ばれるベクトルによって符号化され得る。動きベクトルは、参照ピクチャ内の参照ブロックを指し、複数の参照ピクチャが使用されている場合、参照ピクチャを識別する第3の次元を有し得る。
いくつかの実施形態では、ピクチャ間予測に、双予測技術を使用し得る。双予測技術によれば、第1の参照ピクチャおよび第2の参照ピクチャなどの2つの参照ピクチャが使用され、これらは両方ともビデオ内の現在ピクチャの復号化順より前にある。(しかし、表示順序は、それぞれ過去および未来であり得る)現在ピクチャ内のブロックは、第1の参照ピクチャ内の第1の参照ブロックを指す第1の動きベクトル、および、第2の参照ピクチャ内の第2の参照ブロックを指す第2の動きベクトル、によって符号化され得る。ブロックは、第1の参照ブロックと第2の参照ブロックとの組み合わせによって予測し得る。
さらに、符号化効率を改善するために、ピクチャ間予測にマージモード技術を使用し得る。
本開示のいくつかの実施形態によれば、ピクチャ間予測およびピクチャ内予測などの予測は、ブロック単位で実行される。例えば、HEVC規格によれば、ビデオピクチャのシーケンス内のピクチャは、圧縮のために符号化ツリーユニット(CTU)に分割され、ピクチャ内のCTUは、64x64画素、32x32画素、または16x16画素などの同じサイズを有する。一般に、CTUは、1つの輝度CTBおよび2つの色差CTBである3つの符号化ツリーブロック(CTB)を含む。各CTUは、1つまたは複数の符号化ユニット(CU)に、再帰的に4分木分割できる。例えば、64x64画素のCTUは、64x64画素の1つのCU、または32x32画素の4つのCU、または16x16画素の16個のCUに分割できる。一例では、各CUは、インター予測タイプまたはイントラ予測タイプなどのCUの予測タイプを決定するために分析される。CUは、時間的および/または空間的な予測可能性に応じて、1つまたは複数の予測ユニット(PU)に分割される。一般に、各PUは、輝度予測ブロック(PB)と、2つの色差PBとを含む。一実施形態では、符号化(符号化/復号化)における予測演算は、予測ブロックの単位で実行される。予測ブロックの例として輝度予測ブロックを使用すると、予測ブロックは、8×8画素、16×16画素、8×16画素、16×8画素などの画素値の行列(例えば、輝度値)を含む。
図6は、本開示の別の実施形態によるビデオエンコーダ(603)の図を示す。ビデオエンコーダ(603)は、ビデオピクチャのシーケンス内の現在ビデオピクチャ内のサンプル値の処理ブロック(例えば、予測ブロック)を受信し、処理ブロックを、符号化ビデオシーケンスの一部である符号化ピクチャに符号化するように構成される。一例では、ビデオエンコーダ(603)は、図3の例のビデオエンコーダ(303)の代わりに使用される。
HEVCの例では、ビデオエンコーダ(603)は、例えば8×8サンプルの予測ブロックのような処理ブロックのためのサンプル値の行列を受信する。ビデオエンコーダ(603)は、イントラモード、インターモード、または双予測モードを使用して、例えば、レート歪み最適化を使用して、処理ブロックが最良に符号化されるかどうかを判定する。処理ブロックがイントラモードで符号化される場合、ビデオエンコーダ(603)は、処理ブロックを符号化ピクチャへ符号化するために、イントラ予測技術を使用し得る。そして、処理ブロックがインターモードまたは双予測モードで符号化される場合、ビデオエンコーダ(603)は、処理ブロックを符号化ピクチャに符号化するために、インター予測技術または双予測技術をそれぞれ使用し得る。特定のビデオ符号化技術では、マージモードは、インターピクチャ予測サブモードであり得、そこでは、予測器の外側の符号化された動きベクトル成分の恩恵を受けずに、動きベクトルが1つまたは複数の動きベクトル予測器から導出される。特定の他のビデオ符号化技術では、対象ブロックに適用可能な動きベクトル成分が存在し得る。一例では、ビデオエンコーダ(603)は、処理ブロックのモードを決定するためのモード決定モジュール(図示せず)などの他の構成要素を含む。
図6の例では、ビデオエンコーダ(603)は、図6に示すように互いに結合されたインターエンコーダ(630)、イントラエンコーダ(622)、残差演算部(623)、スイッチ(626)、残差エンコーダ(624)、全体コントローラ(621)、およびエントロピーエンコーダ(625)を含む。
インターエンコーダ(630)は、現在ブロック(例えば、処理ブロック)のサンプルを受信し、そのブロックを参照ピクチャ(例えば、前のピクチャおよび後のピクチャ内のブロック)内の1つまたは複数の参照ブロックと比較し、インター予測情報(例えば、インター符号化技術、動きベクトル、マージモード情報による冗長情報の記述)を生成し、任意の適切な技術を使用してインター予測情報に基づいてインター予測結果(例えば、予測ブロック)を計算するように構成される。いくつかの例では、参照ピクチャは、符号化ビデオ情報に基づいて復号化される復号化参照ピクチャである。
イントラエンコーダ(622)は、現在ブロック(例えば、処理ブロック)のサンプルを受信し、場合によっては、そのブロックを同じピクチャ内で既に符号化されているブロックと比較し、変換後に量子化係数を生成し、場合によっては、イントラ予測情報(例えば、1つまたは複数のイントラ符号化技術によるイントラ予測方向情報)も、生成するように構成される。一例では、イントラエンコーダ(622)は、イントラ予測情報および同一ピクチャ内の参照ブロックに基づいて、イントラ予測結果(例えば、予測ブロック)も計算する。
全体コントローラ(621)は、全体制御データを決定し、全体制御データに基づいてビデオエンコーダ(603)の他の構成要素を制御するように構成される。一例では、全体コントローラ(621)は、ブロックのモードを決定し、モードに基づいてスイッチ(626)に制御信号を提供する。例えば、モードがイントラモードである場合、全体コントローラ(621)は、残差演算部(623)が用いるイントラモード結果を選択するようにスイッチ(626)を制御するともに、イントラ予測情報を選択して、ビットストリームにイントラ予測情報を含めるように、エントロピーエンコーダ(625)を制御する。モードがインターモードである場合、全体コントローラ(621)は、残差演算部(623)が用いるインター予測結果を選択するようにスイッチ(626)を制御するとともに、インター予測情報を選択して、ビットストリームにインター予測情報を含めるように、エントロピーエンコーダ(625)を制御する。
残差演算部(623)は、受信されたブロックと、イントラエンコーダ(622)またはインターエンコーダ(630)から選択された予測結果との差分(残差データ)を、計算するように構成される。残差エンコーダ(624)は、残差データを符号化するために残差データに基づいて動作し、変換係数を生成するように構成される。一例では、残差エンコーダ(624)は、残差データを空間領域から周波数領域に変換し、変換係数を生成するように構成される。変換係数はその後、量子化された変換係数を得るために量子化処理を受ける。様々な実施形態において、ビデオエンコーダ(603)はまた、残差デコーダ(628)を含む。残差デコーダ(628)は、逆変換を実行し、復号化された残差データを生成するように構成される。復号化された残差データは、イントラエンコーダ(622)およびインターエンコーダ(630)において好適に用いることができる。例えば、インターエンコーダ(630)は、復号化された残差データとインター予測情報とに基づいて復号化ブロックを生成し、イントラエンコーダ(622)は、復号化された残差データとイントラ予測情報とに基づいて、復号化ブロックを生成し得る。いくつかの例では、復号化ブロックは、復号化ピクチャを生成するために適切に処理され、復号化ピクチャは、メモリ回路(図示せず)にバッファされ、参照ピクチャとして使用され得る。
エントロピーエンコーダ(625)は、符号化ブロックを含むようにビットストリームをフォーマットするよう構成される。エントロピーエンコーダ(625)は、HEVC規格などの適切な規格に従って様々な情報を含むように構成される。一例では、エントロピーエンコーダ(625)は、全体制御データ、選択された予測情報(例えば、イントラ予測情報またはインター予測情報)、残差情報、および他の適切な情報をビットストリームに含めるように構成される。開示内容によれば、インターモードまたは双予測モードのいずれかのマージサブモードでブロックを符号化する場合、残差情報は存在しないことに留意されたい。
図7は、本開示の別の実施形態によるビデオデコーダ(710)の図を示す。ビデオデコーダ(710)は、符号化ビデオシーケンスの一部である符号化ピクチャを受信し、符号化ピクチャを復号化して再構築されたピクチャを生成するように構成される。一例では、ビデオデコーダ(710)は、図3の例のビデオデコーダ(310)の代わりに使用される。
図7の例では、ビデオデコーダ(710)は、図7に示すように互いに結合された、エントロピーデコーダ(771)、インターデコーダ(780)、残差デコーダ(773)、再構成モジュール(774)、およびイントラデコーダ(772)を含む。
エントロピーデコーダ(771)は、符号化ピクチャから、符号化ピクチャが構成されるシンタックス要素を表す特定のシンボルを再構築するように構成され得る。そのようなシンボルは、例えば、ブロックが符号化されるモード(例えば、イントラモード、インターモード、双予測モード、後者の2つはマージサブモードまたは別のサブモードである)、イントラデコーダ(772)またはインターデコーダ(780)によって、それぞれ予測に使用される特定のサンプルまたはメタデータを識別することができる予測情報(例えば、イントラ予測情報やインター予測情報等)、例えば量子化変換係数の形態の残差情報など、を含み得る。一例では、予測モードが、インター予測モードまたは双予測モードである場合、インター予測情報が、インターデコーダ(780)に提供される。予測タイプがイントラ予測タイプである場合、イントラ予測情報が、イントラデコーダ(772)に提供される。残差情報は逆量子化を受けることができ、残差デコーダ(773)に提供され得る。
インターデコーダ(780)は、インター予測情報を受信し、インター予測情報に基づいて、インター予測結果を生成するように構成される。
イントラデコーダ(772)は、イントラ予測情報を受信し、イントラ予測情報に基づいて、予測結果を生成するように構成される。
残差デコーダ(773)は、逆量子化を実行して逆量子化された変換係数を抽出し、逆量子化された変換係数を処理して、残差を周波数領域から空間領域に変換するように構成される。残差デコーダ(773)はまた、(量子化器パラメータ(QP)を含むために)特定の制御情報を必要とする場合があり、その情報はエントロピーデコーダ(771)によって提供される場合がある(これとして示されていないデータ経路は、少量の制御情報のみであり得る)。
再構成モジュール(774)は、空間領域において、残差デコーダ(773)による出力としての残差、および、(場合によってはインターまたはイントラ予測モジュールによる出力としての)予測結果を組み合わせて、再構成ピクチャの一部であり得る再構成ブロックを形成するように構成され、再構成ブロックは再構成ビデオの一部であり得る。視覚的品質を改善するために、非ブロック化動作などの他の適切な動作を実行できることに留意されたい。
ビデオエンコーダ(303)、(503)、および(603)、ならびにビデオデコーダ(310)、(410)、および(710)は、任意の適切な技術を使用して実装できることに留意されたい。一実施形態では、ビデオエンコーダ(303)、(503)、および(603)、ならびにビデオデコーダ(310)、(410)、および(710)は、1つまたは複数の集積回路を使用して実装できる。別の実施形態では、ビデオエンコーダ(303)、(503)、および(603)、ならびにビデオデコーダ(310)、(410)、および(710)は、ソフトウェア命令を実行する1つまたは複数のプロセッサを使用して実装できる。
VVCにおけるイントラ予測
図8は、いくつかの例(例えば、VVC)における例示的なイントラ予測方向および対応するイントラ予測モードの図を示す。図8では、合計95個のイントラ予測モード(モード-14からモード80)があり、モード18は水平モードであり、モード50は垂直モードであり、モード2、モード34、およびモード66は対角モードである。モード-1~-14およびモード67~80は、広角イントラ予測(WAIP)モードと呼ばれる。
位置依存予測組合せ(PDPC)フィルタリング処理
本開示の態様によれば、位置依存予測組合せ(PDPC)は、シグナリングなしに以下のイントラモード、すなわち、平面、DC、WAIPモード、水平、垂直、左下角度モード(モード2)およびその8つの隣接角度モード(モード3からモード10)、ならびに、右上角度モード(モード66)およびその8つの隣接角度モード(モード58からモード65)に適用される。
一実施形態では、現在ブロック内の位置(x、y)に位置する予測サンプルpred’[x][y]は、イントラ予測モード(例えば、DC、平面、または角度モード)および数式1に従って参照サンプルの線形組合せを使用して、予測される。
pred’[x][y]=(wL×R(-1,y)+wT×R(x,-1)-wTL×R(-1,-1)+(64-wL-wT+wTL)×pred[x][y]+32)>>6 (式1)
数式中、pred[x][y]はイントラ予測モードからもたらされるイントラ予測値であり、R(x、-1)は、現在サンプル(x、y)の先頭参照ラインに位置し、現在サンプル(x、y)と同じ水平座標を有する(フィルタリングされていない)参照サンプルを表し、R(-1,y)は、現在サンプル(x、y)の左参照ラインに位置し、現在サンプル(x、y)と同じ垂直座標を有する(フィルタリングされていない)参照サンプルを表し、R(-1,-1)は、現在ブロックの左上隅に位置する参照サンプルを表し、wT、wL、およびwTLは重み係数を表す。
一実施形態では、イントラ予測モードがDCモードである場合、重み係数は、数式2~数式5によって計算される。
wT=32>>((y<<1)>>nScale) (式2)
wL=32>>((x<<1)>>nScale) (式3)
wTL=+(wL>>4)+(wT>>4) (式4)
nScale=(log2(幅)+log2(高さ)-2)>>2 (式5)
数式中、wTは、参照サンプル(x,-1)の重み係数を表し、wLは、参照サンプル(-1,y)の重み係数を表し、wTLは、左上参照サンプル(-1,-1)の重み係数を表し、nScale(重み係数減少率と呼ばれる)は、これらの重み係数が軸に沿って(例えば、wLはx軸に沿って左から右に減少し、または、wTはy軸に沿って上から下に減少する)、どれだけ速く減少するかを指定する。数式2および数式3の定数32は、隣接サンプル(例えば、上に隣接するサンプル、左に隣接するサンプル、または左上に隣接するサンプル)の初期重み係数を示す。初期重み係数は、現在ブロックの左上サンプルにも割り当てられる。PDPCフィルタ処理における隣接サンプルの重み係数は、初期重み係数以下である。
一実施形態では、イントラ予測モードが平面モードである場合、wTL=0、イントラ予測モードが水平モードである場合、wTL=wT、また、イントラ予測モードが垂直モードである場合、wTL=wLである。PDPC重み係数は、加算演算およびシフト演算を用いて計算し得る。pred’[x][y]の値は、数式1を使用して、単一ステップで計算し得る。
図9Aは、DCモードの(0,0)における予測サンプルの例示的な重み係数を示す。図9Aの例では、現在ブロックは4×4ブロック(幅=高さ=4)であるため、nScaleは0である。すると、wTは32、wLは32、wTLは4となる。
図9Bは、DCモードの(1,0)における予測サンプルの例示的な重み係数を示す。図9Bの例では、現在ブロックは4×4ブロック(幅=高さ=4)であるため、nScaleは0である。すると、wTは32、wLは8、wTLは2となる。
いくつかの実施形態では、PDPCフィルタ処理がDC、平面、水平、および垂直イントラモードに適用される場合、HEVC DCモード境界フィルタまたは水平/垂直モードエッジフィルタなどの追加の境界フィルタは必要とされない。
いくつかの実施形態では、PDPCフィルタリング処理の入力は、以下を含む。
-preModeIntraで表されるイントラ予測モード、
-nTbWで表される現在ブロックの幅、
-nTbHによって表される現在ブロックの高さ、
-refWによって表される参照サンプルの幅、
-refHによって表される参照サンプルの高さ、
-predSamples[x][y]で表され、x=0..nTbW-1、y=0..nTbH-1である予測サンプル
-p[x][y]で表され、x=-1、y=-1..refH-1、およびx=0..refW-1、y=-1であるフィルタリングされていない参照(隣接するとも呼ばれる)サンプル、および
-cIdxによって表される現在ブロックの色成分。
cIdxの値に応じて、関数clip1Cmpは以下のように設定される。
-cIdxが0に等しい場合、clip1CmpはClip1Yに等しく設定される
-そうでない場合、clip1CmpはClip1Cと等しく設定される
さらに、PDPCフィルタ処理の出力は、x=0..nTbW-1およびy=0..nTbH-1を有する修正予測サンプルpredSamples’[x][y]である。
そして、スケーリング係数nScaleは、数式6により計算される。
nScale=((Log2(nTbW)+Log2(nTbH)-2)>>2) (式6)
さらに、いくつかの実施形態では、x=0..refWを有する参照サンプルアレイmainRef[x]は、現在ブロックの上のフィルタリングされていない参照サンプルのアレイとして定義され、y=0..refHを有する別の参照サンプルアレイsideRef[y]は、現在ブロックの左側のフィルタリングされていない参照サンプルのアレイとして定義される。参照サンプルアレイmainRef[x]およびsideRef[y]は、それぞれ、数式7~数式8に従って、フィルタリングされていない参照サンプルから導出される。
mainRef[x]=p[x][-1] (式7)
sideRef[y]=p[-1][y] (式8)
現在ブロック内の各位置(x、y)について、PDPC計算は、refT[x][y]として示される上部の参照サンプル、refL[x][y]として示される左側の参照サンプル、および、角p[-1,-1]の参照サンプルを使用し得る。いくつかの例では、修正された予測サンプルは数式9により計算され、結果は、色成分を示す変数cIdxに従って適切に切り取られる。
predSamples’[x][y]=(wL×refL(x,y)+wT×refT(x,y)-wTL×p(-1,-1)+(64-wL-wT+wTL)×predSamples[x][y]+32)>>6 (式9)
参照サンプルrefT[x][y]、refL[x][y]、重み係数wL,wT,およびwTLは、イントラ予測モードpreModeIntraに基づいて決定し得る。
一例では、イントラ予測モードpreModeIntraが、INTRA_PLANAR(例えば、0、平面モード、またはモード0)、INTRA_DC(例えば、1、DCモード、またはモード1)、INTRA_ANGULAR 18(例えば、18、水平モード、またはモード18)、またはINTRA_ANGULAR 50(例えば、50、垂直モード、またはモード50)と等しい場合、参照サンプルrefT[x][y]、refL[x][y]、ならびに重み係数wL、wT、およびwTLは、数式10~数式14に従って決定され得る。
refL[x][y]=p[-1][y] (式10)
refT[x][y]=p[x][-1] (式11)
wT[y]=32>>((y<<1)>>nScale) (式12)
wL[x]=32>>((x<<1)>>nScale) (式13)
wTL[x][y]=(predModeIntra==INTRA_DC)?((wL[x]>>4)+(wT[y]>>4)):0 (式14)
別の例では、イントラ予測モードpreModeIntraがINTRA_ANGULAR2(例えば、2、またはモード2)、またはINTRA_ANGULAR66(例えば、66、またはモード66)と等しい場合、参照サンプルrefT[x][y]、refL[x][y]、および重み係数wL、wT、およびwTLは、数式15~数式19に従って決定し得る。
refL[x][y]=p[-1][x+y+1] (式15)
refT[x][y]=p[x+y+1][-1] (式16)
wT[y]=32>>((y<<1)>>nScale) (式17)
wL[x]=32>>((x<<1)>>nScale) (式18)
wTL[x][y]=0 (式19)
別の例では、イントラ予測モードpreModeIntraがINTRA_ANGULAR10(例えば、10、またはモード10)以下である場合、location(x,y)については、イントラ予測モードpreModeIntraの関数である変数invAngleに基づいて、変数dXPos[y]、dXFrac[y]、dXInt[y]、dX[y]が導出される。一例では、invAngleは、各イントラ予測モードに対応するinvAngle値を格納するルックアップテーブルに基づいて決定され得、次いで、参照サンプルrefT[x][y]、refL[x][y]、ならびに、重み係数wL、wT、およびwTLは、変数dXPos[y]、dXFrac[y]、dXInt[y]、およびdX[y]に基づいて決定され得る。
例えば、変数dXPos[y]、dXFrac[y]、dXInt[y]、およびdX[y]は、数式20~数式23に従って決定される。
dXPos[y]=((y+1)×invAngle+2)>>2 (式20)
dXFrac[y]=dXPos[y]&63 (式21)
dXInt[y]=dXPos[y]>>6 (式22)
dX[y]=x+dXInt[y] (式23)
次いで、参照サンプルrefT[x][y]、refL[x][y]、ならびに、重み係数wL、wT、およびwTLは、数式24~数式28に従って、決定され得る
refL[x][y]=0 (式24)
refT[x][y]=(dX[y]<refW-1)?((64-dXFrac[y])×mainRef[dX[y]]+dXFrac[y]×mainRef[dX[y]+1]+32)>>6:0 (式25)
wT[y]=(dX[y]<refW-1)?32>>((y<<1)>>nScale):0 (式26)
wL[x]=0 (式27)
wTL[x][y]=0 (式28)
別の例では、イントラ予測モードpreModeIntraがINTRA_ANGULAR 58(例えば、58、またはモード58)以上である場合、イントラ予測モードpreModeIntraの関数である変数invAngleに基づいて、変数dXPos[x]、dXFrac[x]、dXInt[x]、およびdX[x]が導出される。一例では、invAngleは、イントラ予測モードごとに対応するinvAngle値を格納するルックアップテーブルに基づいて決定され得、次いで、参照サンプルrefT[x][y]、refL[x][y]、ならびに、重み係数wL、wT、およびwTLは、変数dXPos[x]、dXFrac[x]、dXInt[x]、およびdX[x]に基づいて決定される。
例えば、変数dXPos[x]、dXFrac[x]、dXInt[x]、およびdX[x]は、数式29~数式32に従って決定される。
dYPos[x]=((x+1)×invuAngle+2)>>2 (式29)
dYFrac[x]=dYPos[x]&63 (式30)
dYInt[x]=dYPos[x]>>6 (式31)
dY[x]=x+dYInt[x] (式32)
そして、参照サンプルrefT[x][y]、refL[x][y]、および重み係数wL、wT、およびwTLは、数式33~数式37に従って決定される。
refL[x][y]=(dY[x]<refH-1)?((64-dYFrac[x])×sideRef[dY[x]]+dYFrac[x]×sideRef[dY[x]+1]+32)>>6:0 (式33)
refT[x][y]=0 (式34)
wT[y]=0 (式35)
wL[x]=(dY[x]<refH-1)?32>>((x<<1)>>nScale):0 (式36)
wTL[x][y]=0 (式37)
いくつかの例では、変数preModeIntraがモード11~57の間にあり、モード18およびモード50のうちの一方ではない場合、refT[x][y]、refL[x][y]、ならびに、重み係数wL、wT、およびwTLはすべて0に等しく設定される。次に、x=0..nTbW-1、y=0..nTbH-1であるフィルタリングされたサンプルfiltSamples[x][y]の値は、数式38に従って、導出される
filtSamples[x][y]=clip1Cmp((refL[x][y]×wL+refT[x][y]×wT-p[-1][-1]×wTL[x][y]+(64-wL[x]-wT[y]+wTL[x][y])×predSamples[x][y]+32)>>6) (式38)
色差イントラ予測モード
図10は、いくつかの例(例えば、VVC)における色差ブロックの例示的なイントラモード符号化を示す表である。図10では、色差ブロックのイントラモード符号化のための5つのイントラモード、すなわち、平面モード(モードインデックス0)、DCモード(モードインデックス1)、水平モード(モードインデックス18)、垂直モード(モードインデックス50)、対角モード(モードインデックス66)、および、色差成分に関連付けられた輝度成分のイントラ予測モードの直接コピーである導出モード(DM)がある。
一実施形態では、重複モードを回避するために、DM以外の4つのモードは、関連する輝度成分のイントラ予測モードに従って割り当てられる。例えば、図10では、色差成分のイントラ予測モード番号が4である場合、関連する輝度成分のイントラ予測方向が、色差成分のイントラ予測サンプル生成に使用される。色差成分のイントラ予測モード番号が4ではなく、かつ、関連する輝度成分のイントラ予測モード番号と同一である場合、色差成分のイントラ予測サンプル生成には、イントラ予測方向66が用いられる。
VVCにおけるマージおよびスキップモード
本開示の態様によれば、ピクチャ間予測(インター予測とも呼ばれる)は、マージモードおよびスキップモードを含む。
ピクチャ間予測のマージモードでは、明示的にシグナリングされるのではなく、ブロックの動きデータ(例えば、動きベクトル)が推論される。一例では、候補動きパラメータのマージ候補リストが構築され、現在ブロックを予測するためのマージ候補リスト内の候補を識別するために、インデックスがシグナリングされる。
いくつかの実施形態では、マージ候補リストは、非サブCUマージ候補リスト、およびサブCUマージ候補リストを含む。非サブCUマージ候補リストは、空間的に隣接する動きベクトル、配列された時間的な動きベクトル、および履歴ベースの動きベクトルに基づいて構築される。サブCUマージ候補リストは、アフィンマージ候補と、ATMVPマージ候補とを含む。サブCUマージ候補リストは、現在CUの複数の動きベクトルを導出するために使用され、現在CU内のサンプルの異なる部分は、異なる動きベクトルを有し得る。
スキップモードでは、ブロックの動きデータは、明示的にシグナリングされる代わりに推測され、ブロックの予測残差は0である(すなわち、変換係数は送信されない)。ピクチャ間予測スライス内の各CUの先頭では、skip_flagがシグナリングされる。動きデータを導出するためにマージモードが使用され、符号化ビデオビットストリームに残差データが存在しないことを、skip_flagが示す。
イントラモードおよびインターモードのためのマルチ仮説予測
本開示のいくつかの態様によれば、マルチ仮説イントラインター予測のように、イントラ予測とインター予測とを適切に組み合わせることができる。マルチ仮説イントラインター予測は、1つのイントラ予測と1つのマージインデックス付き予測とを組み合わせたものであり、本開示ではイントラインター予測モードと呼ばれる。一例では、CUがマージモードにあるとき、イントラモードのための特定のフラグがシグナリングされる。特定フラグが「真」である場合、イントラ候補リストからイントラモードを選択し得る。輝度成分については、DCモード、平面モード、水平モード、垂直モードの4つのイントラ予測モードからイントラ候補リストが導出され、ブロック形状に応じてイントラモード候補リストのサイズを3または4とすることができる。一例では、CU幅がCU高さの2倍より大きい場合、イントラモード候補リストから水平モードが削除され、CU高さがCU幅の2倍より大きい場合、イントラモード候補リストから垂直モードが削除される。いくつかの実施形態では、イントラ予測は、イントラモードインデックスによって選択されたイントラ予測モードに基づいて実行され、インター予測は、マージインデックスに基づいて実行される。イントラ予測とインター予測は、加重平均を用いて合成される。色差成分の場合、いくつかの例では、DMは余分なシグナリングなしで常に適用される。
いくつかの実施形態では、イントラ予測とインター予測とを組み合わせるための重みを適切に決定することができる。一例では、DCモードまたは平面モードが選択されるか、あるいは、符号化ブロック(CB)の幅または高さが4より小さい場合、インター予測およびイントラ予測に等しい重みが適用される。一例では、CB幅およびCB高さが4以上のCBの場合、水平または垂直モードが選択されると、CBは、4つの等しい面積領域に、垂直または水平に最初に分割される。各領域は、(w_intrai,w_interi)として示される重みセットを有し、iは1から4である。一例では、第1の重みセット(w_intra1、w_inter1)=(6,2)、第2の重みセット(w_intra2、w_inter2)=(5,3)、第3の重みセット(w_intra3、w_inter3)=(3,5)、および第4の重みセット(w_intra4、w_inter4)=(2,6)である。各重みセットは、対応する領域に適用し得る。例えば、第1の重みセット(w_intra1、w_inter1)は、参照サンプルに最も近い領域に適用され、第4の重みセット(w_intra4、w_inter4)は、参照サンプルから最も遠い領域に適用される。
一実施形態では、組合せ予測は、2つの重み付き予測を合計し、3ビットを右シフトすることによって計算し得る。また、隣接CBをイントラ符号化する際に、以下の隣接CBのイントラモード符号化のために、予測器のイントラ仮説に対するイントラ予測モードが、節約され得る。
インターPDPCモード
本開示の態様によれば、PDPCフィルタリング処理は、インター予測モードに適用し得る。PDPCフィルタ処理を採用したインター予測モードは、インターPDPCモードと呼ばれる。インターPDPCモードでは、PDPCフィルタリング処理がインター予測サンプル(またはインター符号化CUの再構成サンプル)に適用される。一例では、数式1は、インターPDPCモード用に適宜修正し得る。例えば、インターPDPCモードにおけるインター予測値を示すように、pred[x][y]が修正される。いくつかの例では、インター予測においてPDPCフィルタリング処理を適用するかどうかを示すために、interPDPCFlagと呼ばれるフラグが、シグナリングされる。例えば、フラグinterPDPCFlagが真である場合、予測サンプル(またはインター符号化CUの再構成サンプル)は、PDPCフィルタリング処理においてさらに修正される。
なお、インターPDPCモードは、インター予測サンプルをさらに改善するために、任意の適切なインター符号化モードと組み合わせ得る。しかしながら、インターPDPCモードをどのインター符号化モードと組み合わせることができるかについては、いくつかの制限があり得る。一例では、インターPDPCモードは、通常マージモードおよび/またはサブブロックマージモードにのみ適用されることが可能である。別の例では、インターPDPCモードはマージスキップモードに適用できない。
インター予測のための三角分割
本開示の態様によれば、三角分割は、インター予測において使用され得る。例えば、VVCテストモデル(VTM)3では、インター予測のために新たな三角分割モードが導入される。三角分割モードは、8x8以上であり、スキップモードまたはマージモードで符号化されるCUにのみ適用される。これらの条件を満たすCUの場合、三角分割モードが適用されるか否かを示すためにCUレベルフラグがシグナリングされる。
三角分割モードが使用される場合、CUは、対角分割または反対角分割のいずれかを使用して、2つの三角形の分割に均等に分割される。
図11AはCUの対角分割を示し、図11BはCUの反対角分割を示す。CU内の各三角分割はそれ自体の動き情報を有し、それ自体の動き情報を使用して、インター予測することができる。一例では、各三角分割に対して単予測のみが許容される。すなわち、各分割は、1つの動きベクトルおよび1つの参照インデックスを有する。従来の双予測と同じように、各CUに対して2つの動き補償予測のみが必要とされることを保証するために、単予測動き制約が適用される。各分割の単予測動きは、プロセスを使用して構築された単予測候補リストから導出される。
いくつかの例では、現在CUが三角分割モードを使用して符号化されていることを、CUレベルフラグが示す場合、[0,39]の範囲内のインデックスが、さらにシグナリングされる。この三角分割インデックスを使用して、三角分割の方向(対角または反対角)、ならびに分割の各々の動きを、ルックアップテーブルを介して取得し得る。三角分割の各々を予測した後、対角または反対角エッジに沿ったサンプル値は、適応重みによるブレンド処理を使用して調整される。CU全体が予測された後、変換および量子化プロセスは、他の予測モードと同様にCU全体に適用される。最後に、三角分割モードを使用して予測されたCUの動きフィールドが、4×4単位で格納される。
サブブロック変換(SBT)
いくつかの実施形態では、空間変動変換(SVT)とも呼ばれるサブブロック変換(SBT)が採用される。SBTは、インター予測の残差に適用し得る。例えば、符号化ブロックはサブブロックに分割することができ、サブブロックの一部のみが残差ブロックで処理される。サブブロックの残りの部分については、0残差が仮定される。したがって、残差ブロックは符号化ブロックよりも小さく、SBTにおける変換サイズは符号化ブロックサイズよりも小さい。残差ブロックでカバーされていない領域については、変換処理は行われない。
図12A~図12Dは、本開示のいくつかの実施形態による例示的なSBTモードを示す。SBTモードは、異なるSBTタイプ(SVT-H、SVT-V)(例えば、垂直または水平に分割されている)、サイズおよび位置(例えば、左半分、左四半分、右半分、右四半分、上半分、上四半分、下半分、下四半分)をサポートする。文字「A」でラベル付けされた斜線領域は変換ありの残差ブロックであり、他の領域は変換なしの0残差であると仮定される。
マルチ変換選択(MTS)
HEVCでは、変換基底関数としてDCT-2および4×4 DST-7が用いられる。VVCでは、DCT-2および4×4 DST-7に加えて、適応マルチ変換(AMT、拡張マルチ変換(EMT)またはマルチ変換選択(MTS)とも呼ばれる)方式が、インター符号化ブロックとイントラ符号化ブロックの両方に対する残差符号化のために使用されている。AMT方式は、HEVCにおける現在の変換以外のDCT/DSTファミリから選択された複数の変換を使用できる。新たに導入された変換行列は、DST-7、DCT-8である。図13は、選択されたDST/DCTの基底関数の例示的な表を示す。
いくつかの実施形態では、VVCにおけるプライマリ変換行列は、8ビット表現とともに使用され得る。AMTは、幅と高さの両方が32以下のCUに、変換行列を適用する。AMTを適用するか否かは、mts_flagと呼ばれるフラグによって制御され得る。一例では、mts_flagが0に等しい場合、残差を符号化するためにDCT-2のみが適用される。一例では、mts_flagが1に等しい場合、インデックスmts_idxは、使用される水平および垂直変換タイプを識別するために、2つのビンを使用してさらにシグナリングされ得る。図14は、インデックスmts_idxに応じた水平変換タイプtrTypeHorおよび垂直変換タイプtrTypeVerの例示的な表を示し、変換タイプについて、値1はDST-7を使用することを意味し、値2はDCT-8を使用することを意味する。
変換コアは、基底ベクトルで構成される行列である。付録Bは、DST-7およびDCT-8のいくつかの変換コアを示す。
いくつかの実施形態(例えば、VVC)では、符号化ブロックの高さおよび幅の両方が64以下である場合、変換サイズは、常に符号化ブロックサイズと同じである。符号化ブロックの高さまたは幅のいずれかが64より大きい場合、符号化ブロックは、残差変換またはイントラ予測のために複数のサブブロックにさらに分割される。各サブブロックの幅および高さは64以下であり、各サブブロックに対して、それぞれの変換が実行される。
インターPDPC改善技術
インターPDPCモードは、通常マージモードまたはサブブロックマージモードなどの異なるインター予測モードと組み合わせることができるので、PDPCフィルタリング処理を適用した後のインター予測残差のエネルギー分布は、様々なインター予測モードに対して異なり得る。したがって、インターPDPCモードとその他のインター予測モードとの異なる組み合わせに対して、異なる変換設計が考慮され得る。
本開示の態様は、インターPDPCモードのための改善技術を提供する。本方法または実施形態は、別々に使用されてもよく、任意の順序で組み合わされてもよい。以下の説明では、ブロックという用語は、予測ブロック、符号化ブロック、または符号化ユニット(CU)として解釈され得る。本開示で上述したようなPDPCフィルタリング処理、または変形例は、インターPDPCモードで使用し得る。
本開示の態様によれば、PDPCフィルタリング処理を適用した後のインター予測残差に使用される現在ブロックの変換設計は、現在ブロックおよびその隣接ブロックの符号化情報に依存する。符号化情報は、インター予測モード、マージフラグ、ブロックサイズ、および色成分などを含むが、これらに限定されない。
一実施形態では、インターPDPCモードが採用される場合(例えば、インターPDPCフラグがオン/真である)、インターPDPCモードがどのインター符号化モードに適用されるかに関わらず、SBTは常に許可される(例えば、SBTフラグは常にオン/真である)か、または、許可されない(例えば、SBTフラグは常にオフ/偽である)。一例では、インターPDPCモードが採用され、SBTが常に許可される場合、SBTフラグはシグナリングされず、オン/真として導出される。別の例では、インターPDPCモードが採用され、SBTが常に許可されない場合、SBTフラグはシグナリングされず、オフ/偽として導出される。
一実施形態では、インターPDPCモードがサブブロックマージモードに適用される場合、SBTが許可される(例えば、SBTフラグはオン/真である)。一方、インターPDPCモードがサブブロックマージモード以外のマージモードに適用される場合、SBTは許可されない(例えば、SBTフラグは常にオフ/偽である)。一例では、インターPDPCモードがサブブロックマージモードに適用され、SBTが許可される場合、SBTフラグがシグナリングされる。別の例では、インターPDPCモードが非サブブロックマージモードに適用され、SBTが許可されない場合、SBTフラグはシグナリングされないが、オフ/偽として導出される。
一実施形態では、インターPDPCモードが三角マージモードに適用される場合、SBTが許可される(例えば、SBTフラグはオン/真である)。あるいは、インターPDPCモードが三角マージモードに適用される場合、SBTは許可されない(例えば、SBTフラグは常にオフ/偽である)。一例では、インターPDPCモードが三角マージモードに適用され、SBTが許可されると、SBTフラグがシグナリングされる。別の例では、インターPDPCモードが三角マージモードに適用され、SBTが許可されない場合、SBTフラグはシグナリングされず、オフ/偽として導出される。
一実施形態では、インターPDPCモードが採用される場合(例えば、インターPDPCフラグがオン/真である)、SBTタイプのサブセットのみが許可され得る。一例では、インターPDPCフラグおよびSBTフラグの両方がオン/真であるとき、現在CUの残差分割(すなわち、非ゼロ係数を有することが可能にされる分割)は、常に現在CUの右端または下端の分割である。別の例では、インターPDPCフラグおよびSBTフラグの両方がオン/真である場合、現在CUの左端または上端の分割は常にゼロ残差分割である。
一実施形態では、インターPDPCモードが採用される場合(例えば、インターPDPCフラグがオン/真である)、利用可能な変換タイプのサブセットのみが使用され得る。一例では、インターPDPCモードが採用される場合(例えば、インターPDPCフラグがオン/真である)、DCT-8は、許可される変換タイプから除外される。一例では、インターPDPCモードが採用される場合、DCT-2およびDST-7のみがインター予測残差に使用され得る。一例では、インターPDPCモードが採用される場合、DST-7は、許容される変換タイプから除外される。一例では、インターPDPCモードが採用される場合、DCT-2およびDCT-8のみがインター予測残差に使用され得る。一例では、インターPDPCモードが採用される場合、DST-7のみが適用され得る。
1つの実施形態では、インターPDPCモードが採用される(例えば、インターPDPCフラグがオン/真である)場合、MTSは、インターPDPCモードがどのインター符号化モードに適用されるかに関わらず、常に許可される(例えば、MTSフラグは常にオン/真である)か、または、許可されない(例えば、MTSフラグは常にオフ/偽である)。一例では、インターPDPCモードが採用され、MTSが常に許可される場合、MTSフラグはシグナリングされず、オン/真として導出される。別の例では、インターPDPCモードが採用され、MTSが常に許可されない場合、MTSフラグはシグナリングされず、オフ/偽として導出される。
本開示の態様によれば、インターPDPCフラグは、コンテキスト符号化される。コンテキストは、現在ブロックおよびその隣接ブロックの符号化情報に依存する。符号化情報は、イントラインターフラグ、イントラモードフラグ、インターモードフラグ、スキップフラグ、マージフラグ、およびインターPDPCフラグなどを含むが、これらに限定されない。
一実施形態では、1つのコンテキストのみが、インターPDPCモードのエントロピー符号化に使用される。別の実施形態では、M個のコンテキストがインターPDPCモードのエントロピー符号化に使用される。例えば、Mは、2または3など、1より大きい任意の正の整数であり得る。Mが1より大きい例では、隣接ブロックのうちの1つがイントラ符号化またはイントラインター符号化またはインターPDPC符号化されている場合、第1のコンテキストが使用される。そうでなければ、第2のコンテキストが使用される。Mが2より大きい別の例では、両方の隣接ブロックがイントラ符号化またはインターイントラ符号化またはインターPDPC符号化されている場合、第1のコンテキストが使用される。隣接ブロックのうちの1つのみがイントラ符号化またはイントラインター符号化またはインターPDPC符号化されている場合、第2のコンテキストが使用される。そうでなければ、第3のコンテキストが使用される。
本開示の態様によれば、インターPDPCモードは、イントラブロックコピー(IBC)モードとともに使用されることは、許可されない。
本開示の態様によれば、インターPDPCモードにおいて適用される重み係数(例えば、wL、wTおよび/またはwTL)は、現在ブロックの隣接ブロックの符号化情報に依存する。隣接ブロックの符号化情報には、隣接ブロックが、イントラインターモード、イントラ予測モード、インター予測モード、スキップモード、マージモード、またはインターPDPCモードなどによって符号化されているかどうかを含む。
図15は、本開示の一実施形態による例示的なプロセス(1500)の概要を示すフローチャートを示す。様々な実施形態において、プロセス(1500)は、端末デバイス(210)、(220)、(230)および(240)内の処理回路、ビデオエンコーダ(303)の機能を実行する処理回路、ビデオデコーダ(310)の機能を実行する処理回路、ビデオデコーダ(410)の機能を実行する処理回路、イントラ予測モジュール(452)の機能を実行する処理回路、ビデオエンコーダ(503)の機能を実行する処理回路、予測器(535)の機能を実行する処理回路、イントラエンコーダ(622)の機能を実行する処理回路、イントラデコーダ(772)の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、プロセス(1500)はソフトウェア命令で実施され、したがって、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(1500)を実行する。
プロセス(1500)は、一般に、ステップ(S1510)で開始することができ、プロセス(1500)は、符号化ビデオシーケンスの一部である現在ピクチャ内の現在ブロックの予測情報を復号化する。予測情報は、特定のインター予測モード、位置依存予測組合せ(PDPC)処理、および現在ブロックに対する符号化残差を示す。そして、プロセス(1500)は、ステップ(S1520)に進む。
ステップ(S1520)において、プロセス(1500)は、予測情報に基づいて、(i)変換プロセスが適用される現在ブロックの分割、および(ii)現在ブロックに対する変換プロセスの変換タイプ、のうちの少なくとも1つを決定する。そして、プロセス(1500)は、ステップ(S1530)に進む。
ステップ(S1530)において、プロセス(1500)は、復号化残差を生成するために符号化残差に対して変換プロセスを実行する。そして、プロセス(1500)は、ステップ(S1540)に進む。
ステップ(S1540)において、プロセス(1500)は、復号化残差に基づいて現在ブロックを再構成する。
プロセス(1500)は、現在ブロックの再構成後、終了する。
いくつかの実施形態では、プロセス(1500)は、変換タイプを複数のサブブロック変換(SBT)タイプのうちの1つであると決定し、複数のSBTタイプの各々は、現在ブロックの異なる部分に適用される。一実施形態では、複数のSBTタイプのうちの1つの適用は、現在ブロックの特定のインター予測モードとは無関係である。一実施形態において、複数のSBTタイプのうちの1つが適用される部分は、現在ブロックの複数部分のうちの右端部分および下端部分のうちの1つである。
一実施形態では、プロセス(1500)は、変換タイプが選択されるDCT-2変換、DST-7変換、およびDCT-8変換のサブセットを決定する。
一実施形態では、予測情報は、(i)符号化されたコンテキスト、および、(ii)現在ブロックのPDPC処理を示す、シグナリングされたフラグを含む。
一実施形態では、現在ブロックに対してイントラブロックコピー(IBC)モードは許可されない。
一実施形態では、PDPC処理の複数の重み付けパラメータは、現在ブロックに隣接する隣接ブロックの予測情報に基づく。
コンピュータシステム
上述した技術は、コンピュータ可読命令を使用し、1つまたは複数のコンピュータ可読媒体に物理的に格納されたコンピュータソフトウェアとして実装し得る。例えば、図16は、開示内容の特定の実施形態を実施するのに適したコンピュータシステム(1600)を示す。
コンピュータソフトウェアは、アセンブリ、コンパイル、リンクなどのメカニズムを受けることができる任意の適切な機械コードまたはコンピュータ言語を使用してコード化され得、1つまたは複数のコンピュータ中央処理装置(CPU)、グラフィック処理装置(GPU)などによって直接、または解釈、マイクロコード実行などを介して、実行することができる命令を含むコードが作成され得る。
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、IoTデバイスなどを含む様々な種類のコンピュータまたはその構成要素上で、実行され得る。
コンピュータシステム(1600)について図16に示す構成要素は、本質的に例示的なものであり、本開示の実施形態を実施するコンピュータソフトウェアの使用または機能の範囲に関するいかなる制限を示唆することを意図するものではない。構成要素の構成は、コンピュータシステム(1600)の例示的な実施形態に示されている構成要素のいずれかまたは組み合わせに関連する依存関係または要件を有すると解釈されるべきではない。
コンピュータシステム(1600)は、特定のヒューマンインターフェース入力デバイスを含み得る。そのようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き)、音声入力(例えば、声、拍手)、視覚入力(例えば、ジェスチャ)、嗅覚入力(図示せず)を介した、1人または複数の人間のユーザによる入力に応答し得る。ヒューマンインターフェースデバイスは、オーディオ(例えば、音声、音楽、周囲音)、画像(例えば、走査画像、写真画像は静止画像カメラから取得)、ビデオ(2次元映像、立体映像を含む3次元映像など)など、必ずしも人間による意識的な入力に直接関連しない特定の媒体を取り込むために使用され得る。
入力ヒューマンインターフェースデバイスは、キーボード(1601)、マウス(1602)、トラックパッド(1603)、タッチスクリーン(1610)、データグローブ(図示せず)、ジョイスティック(1605)、マイクロフォン(1606)、スキャナ(1607)、カメラ(1608)のうちの1つまたは複数(各々のうちの1つのみを示す)を含み得る。
コンピュータシステム(1600)はまた、特定のヒューマンインターフェース出力デバイスを含み得る。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および匂い/味によって1人または複数の人間ユーザの感覚を刺激し得る。そのようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン(1610)、データグローブ(図示せず)、またはジョイスティック(1605)による触覚フィードバックであるが、入力デバイスとして機能しない触覚フィードバックデバイスも存在し得る)、音声出力デバイス(例えば、スピーカ(1609)、ヘッドホン(図示せず))、視覚出力デバイス(例えば、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン(1610)(それぞれがタッチスクリーン入力機能を有するかまたは有さず、それぞれが触覚フィードバック機能を有するかまたは有しない。その一部は、ステレオ出力などの手段を介して、二次元視覚出力または三次元以上の出力を出力する能力を持ち得る)、仮想現実メガネ(図示せず)、ホログラフィックディスプレイ、および煙タンク(図示せず))、およびプリンタ(図示せず)を含み得る。これらの視覚出力デバイス(スクリーン(1610)など)は、グラフィックスアダプタ(1650)を介してシステムバス(1648)に接続し得る。
コンピュータシステム(1600)はまた、人間がアクセス可能な記憶デバイスおよびそれらの関連媒体、例えば、CD/DVDなどの媒体(1621)を有するCD/DVD ROM/RW(1620)を含む光学媒体、サムドライブ(thumb-drive)(1622)、リムーバブルハードドライブまたはソリッドステートドライブ(1623)、テープおよびフロッピーディスクなどのレガシー磁気媒体(図示せず)、セキュリティドングル(図示せず)などの専用ROM/ASIC/PLDベースのデバイスなどを含み得る。
当業者はまた、本開示内容に関連して使用される「コンピュータ可読媒体」という用語が、伝送媒体、搬送波、または他の一時的信号を包含しないことを理解すべきである。
コンピュータシステム(1600)はまた、1つまたは複数の通信ネットワーク(1655)へのネットワークインターフェース(1654)を含み得る。1つまたは複数の通信ネットワーク(1655)は、例えば、無線、有線、光であり得る。さらに、1つまたは複数の通信ネットワーク(1655)は、ローカル、広域、都市、車両および産業、リアルタイム、遅延耐性などであり得る。1つまたは複数の通信ネットワーク(1655)としては、例えば、イーサネット等のローカルエリアネットワーク、無線LAN、GSM、3G、4G、5G、LTE等を含むセルラーネットワーク、ケーブルTV、衛星TV、地上波TV等を含む有線もしくは無線のTV広域デジタルネットワーク、CANBus等を含む車載用もしくは産業用等が挙げられる。特定のネットワークは、一般に、特定の汎用データポートまたは周辺機器用バス(1649)(例えば、コンピュータシステム(1600)のUSBポートなど)に取り付けられた外部ネットワークインターフェースアダプタを必要とする。他のものは、一般に、後述するようなシステムバス(例えば、PCコンピュータシステムへのイーサネットインターフェース、または、スマートフォンコンピュータシステムへのセルラーネットワークインターフェース)へ取り付けにより、コンピュータシステム(1600)のコアに統合される。これらのネットワークのいずれかを使用して、コンピュータシステム(1600)は、他のエンティティと通信し得る。そのような通信は、例えば、ローカルまたは広域デジタルネットワークを使用する他のコンピュータシステムに対して、単方向で受信のみ(例えば、放送TV)、単方向で送信のみ(例えば、特定のCANbusデバイスへのCANbus)、または双方向であり得る。特定のプロトコルおよびプロトコルスタックは、上述したように、それらのネットワークおよびネットワークインターフェースのそれぞれで使用し得る。
前述のヒューマンインターフェースデバイス、ヒューマンアクセスストレージデバイス、およびネットワークインターフェースは、コンピュータシステム(1600)のコア(1640)に取り付け得る。
コア(1640)は、1つまたは複数の中央処理装置(CPU)(1641)、グラフィック処理装置(GPU)(1642)、フィールドプログラマブルゲートエリア(FPGA)(1643)の形態の専用プログラマブル処理装置、特定のタスク用のハードウェアアクセラレータ(1644)などを含み得る。これらのデバイスは、読み出し専用メモリ(ROM)(1645)、ランダムアクセスメモリ(1646)、内部の非ユーザがアクセス可能なハードドライブ、SSDなどの内部大容量記憶装置(1647)とともに、システムバス(1648)を介して接続され得る。いくつかのコンピュータシステムでは、システムバス(1648)は、追加のCPU、GPUなどによる拡張を可能にするために、1つまたは複数の物理的なプラグの形態で、アクセス可能であり得る。周辺デバイスは、コアのシステムバス(1648)に直接取り付けることも、周辺機器用バス(1649)を介して取り付けることもできる。周辺機器用バスのアーキテクチャには、PCI、USBなどが含まれる。
CPU(1641)、GPU(1642)、FPGA(1643)、およびアクセラレータ(1644)は、組み合わせて上述のコンピュータコードを構成し得る特定の命令を実行し得る。そのコンピュータコードは、ROM(1645)またはRAM(1646)に格納され得る。過渡的データはまた、RAM(1646)に格納され得、一方、永続データは、例えば内部大容量記憶装置(1647)に、格納され得る。1つまたは複数のCPU(1641)、GPU(1642)、大容量記憶装置(1647)、ROM(1645)、RAM(1646)などと密接に関連付け得るキャッシュメモリを使用することで、記憶デバイスのいずれかへの高速格納および検索が可能となる。
コンピュータ可読媒体は、様々なコンピュータ実装動作を実行するためのコンピュータコードを有し得る。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであってもよく、またはコンピュータソフトウェア技術の当業者に、良く知られた利用可能な種類のものであってもよい。
限定ではなく、例として、アーキテクチャ(1600)特にコア(1640)を有するコンピュータシステムは、1つまたは複数の有形のコンピュータ可読媒体で具現化されたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果として、機能を提供し得る。そのようなコンピュータ可読媒体は、上述のようなユーザがアクセス可能な大容量記憶装置、および、コア内部大容量記憶装置(1647)またはROM(1645)などの非一時的な性質のコア(1640)の特定の記憶装置に関連付けられた媒体とし得る。本開示の様々な実施形態を実施するソフトウェアは、そのようなデバイスに格納され、コア(1640)によって実行し得る。コンピュータ可読媒体は、特定の必要性に応じて、1つまたは複数のメモリデバイスまたはチップを含み得る。ソフトウェアは、コア(1640)、具体的にはその中のプロセッサ(CPU、GPU、FPGA等を含む)に、本明細書に記載の特定プロセスまたは特定プロセスの特定部分を実行させ得る。プロセスには、RAM(1646)に格納されたデータ構造を定義すること、および、ソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を修正することを含む。加えて、または代替として、コンピュータシステムは、ハードワイヤードまたは他の方法で回路(例えば、アクセラレータ(1644))に具現化された論理回路の結果として、機能を提供することができ、ソフトウェアの代わりに、またはソフトウェアとともに動作して、本明細書に記載の特定プロセスまたは特定プロセスの特定部分を実行し得る。ソフトウェアへの参照は、論理回路を包含することができ、適切な場合には逆もまた同様である。コンピュータ可読媒体への参照は、適切な場合には、実行のためにソフトウェアを格納する回路(集積回路(IC)など)、実行のための論理回路を具現化する回路、またはその両方を包含することができる。本開示は、ハードウェアとソフトウェアとの任意の適切な組み合わせを包含する。
本開示はいくつかの例示的な実施形態を説明してきたが、本開示の範囲内に入る修正、置換、および様々な代替等価物がある。したがって、当業者は、本明細書に明示的に示されていないまたは記載されていないが、本開示の原理を具体化し、したがってその精神および範囲内にある、多数のシステムおよび方法を考案し得ることが理解されよう。
別表A、略語
AMVP:高度な動きベクトル予測
ASIC:特定用途向け集積回路
ATMVP:代替/高度時間動きベクトル予測
BDOF:双方向オプティカルフロー
BIO:双方向オプティカルフロー
BMS:ベンチマークセット
BV:ブロックベクトル
CANBus:コントローラエリアネットワークバス
CB:符号化ブロック
CBF:符号化ブロックフラグ
CCLM:交差成分線形モード/モデル
CD:コンパクトディスク
CPR:現在ピクチャの参照
CPU:中央処理装置
CRT:ブラウン管
CTB:符号化ツリーブロック
CTU:符号化ツリーユニット
CU:符号化ユニット
DPBデコーダピクチャバッファ
DVD:デジタルビデオディスク
FPGA:フィールドプログラマブルゲートエリア
GOP:ピクチャグループ
GPU:グラフィックス処理ユニット
GSM:グローバル移動体通信システム
HDR:高ダイナミックレンジ
HEVC:高効率ビデオ符号化
HRD:仮想参照デコーダ
IBC:イントラブロックコピー
IC:集積回路
JEM:共同探査モデル
JVET:共同ビデオ探索チーム
LAN:ローカルエリアネットワーク
LCD:液晶ディスプレイ
LTE:ロング・ターム・エボリューション
MPM:最確モード
MTS:マルチ変換選択
MV:動きベクトル
OLED:有機発光ダイオード
PB:予測ブロック
PCI:ペリフェラルコンポーネント接続
PDPC:位置依存予測組合せ
PLD:プログラマブル論理デバイス
PU:予測ユニット
RAM:ランダムアクセスメモリ
ROM:リードオンリーメモリ
SBT:サブブロック変換
SCC:スクリーンコンテンツ符号化
SDR:標準ダイナミックレンジ
SEI:補足エンハンスメント情報
SNR:信号雑音比
SSD:ソリッドステートドライブ
TU:変換ユニット
USB:ユニバーサルシリアルバス
VPDU:視覚的処理データユニット
VUI:ビデオユーザビリティ情報
VVC:多用途ビデオ符号化
WAIP:広角イントラ予測
別表B、変換コア
4点DST-7
{a,b,c,d}
{c,c,0,-c}
{d,-a,-c,b}
{b,-d,c,-a}
ここで、{a、b、c、d}={29,55,74,84}
8ポイントDST-7
{a,b,c,d,e,f,g,h,}
{c,f,h,e,b,-a,-d,-g,}
{e,g,b,-c,-h,-d,a,f,}
{g,c,-d,-f,a,h,b,-e,}
{h,-a,-g,b,f,-c,-e,d,}
{f,-e,-a,g,-d,-b,h,-c,}
{d,-h,e,-a,-c,g,-f,b,}
{b,-d,f,-h,g,-e,c,-a,}
ここで、{a,b,c,d,e,f,g,h}={17,32,46,60,71,78,85,86}
16ポイントDST-7
{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,}
{c,f,i,l,o,o,l,i,f,c,0,-c,-f,-i,-l,-o,}
{e,j,o,m,h,c,-b,-g,-l,-p,-k,-f,-a,d,i,n,}
{g,n,l,e,-b,-i,-p,-j,-c,d,k,o,h,a,-f,-m,}
{i,o,f,-c,-l,-l,-c,f,o,i,0,-i,-o,-f,c,l,}
{k,k,0,-k,-k,0,k,k,0,-k,-k,0,k,k,0,-k,}
{m,g,-f,-n,-a,l,h,-e,-o,-b,k,i,-d,-p,-c,j,}
{o,c,-l,-f,i,i,-f,-l,c,o,0,-o,-c,l,f,-i,}
{p,-a,-o,b,n,-c,-m,d,l,-e,-k,f,j,-g,-i,h,}
{n,-e,-i,j,d,-o,a,m,-f,-h,k,c,-p,b,l,-g,}
{l,-i,-c,o,-f,-f,o,-c,-i,l,0,-l,i,c,-o,f,}
{j,-m,c,g,-p,f,d,-n,i,a,-k,l,-b,-h,o,-e,}
{h,-p,i,-a,-g,o,-j,b,f,-n,k,-c,-e,m,-l,d,}
{f,-l,o,-i,c,c,-i,o,-l,f,0,-f,l,-o,i,-c,}
{d,-h,l,-p,m,-i,e,-a,-c,g,-k,o,-n,j,-f,b,}
{b,-d,f,-h,j,-l,n,-p,o,-m,k,-i,g,-e,c,-a,}
ここで、{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={9,17,25,33,41,49,56,62,66,72,77,81,83,87,89,90}
32ポイントDST-7
{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,}
{c,f,i,l,o,r,u,x,A,D,F,C,z,w,t,q,n,k,h,e,b,-a,-d,-g,-j,-m,-p,-s,-v,-y,-B,-E,}
{e,j,o,t,y,D,D,y,t,o,j,e,0,-e,-j,-o,-t,-y,-D,-D,-y,-t,-o,-j,-e,0,e,j,o,t,y,D,}
{g,n,u,B,D,w,p,i,b,-e,-l,-s,-z,-F,-y,-r,-k,-d,c,j,q,x,E,A,t,m,f,-a,-h,-o,-v,-C,}
{i,r,A,C,t,k,b,-g,-p,-y,-E,-v,-m,-d,e,n,w,F,x,o,f,-c,-l,-u,-D,-z,-q,-h,a,j,s,B,}
{k,v,F,u,j,-a,-l,-w,-E,-t,-i,b,m,x,D,s,h,-c,-n,-y,-C,-r,-g,d,o,z,B,q,f,-e,-p,-A,}
{m,z,z,m,0,-m,-z,-z,-m,0,m,z,z,m,0,-m,-z,-z,-m,0,m,z,z,m,0,-m,-z,-z,-m,0,m,z,}
{o,D,t,e,-j,-y,-y,-j,e,t,D,o,0,-o,-D,-t,-e,j,y,y,j,-e,-t,-D,-o,0,o,D,t,e,-j,-y,}
{q,E,n,-c,-t,-B,-k,f,w,y,h,-i,-z,-v,-e,l,C,s,b,-o,-F,-p,a,r,D,m,-d,-u,-A,-j,g,x,}
{s,A,h,-k,-D,-p,c,v,x,e,-n,-F,-m,f,y,u,b,-q,-C,-j,i,B,r,-a,-t,-z,-g,l,E,o,-d,-w,}
{u,w,b,-s,-y,-d,q,A,f,-o,-C,-h,m,E,j,-k,-F,-l,i,D,n,-g,-B,-p,e,z,r,-c,-x,-t,a,v}
{w,s,-d,-A,-o,h,E,k,-l,-D,-g,p,z,c,-t,-v,a,x,r,-e,-B,-n,i,F,j,-m,-C,-f,q,y,b,-u,}
{y,o,-j,-D,-e,t,-e,-D,-j,o,y,0,-y,-o,j,D,e,-t,-t,e,D,j,-o,-y,0,y,o,-j,-D,-e,t,}
{A,k,-p,-v,e,F,f,-u,-q,j,B,a,-z,-l,o,w,-d,-E,-g,t,r,-i,-C,-b,y,m,-n,-x,c,D,h,-s,}
{C,g,-v,-n,o,u,-h,-B,a,D,f,-w,-m,p,t,-i,-A,b,E,e,-x,-l,q,s,-j,-z,c,F,d,-y,-k,r,}
{E,c,-B,-f,y,i,-v,-l,s,o,-p,-r,m,u,-j,-x,g,A,-d,-D,a,F,b,-C,-e,z,h,-w,-k,t,n,-q,}
{F,-a,-E,b,D,-c,-C,d,B,-e,-A,f,z,-g,-y,h,x,-i,-w,j,v,-k,-u,l,t,-m,-s,n,r,-o,-q,p,}
{D,-e,-y,j,t,-o,-o,t,j,-y,-e,D,0,-D,e,y,-j,-t,o,-t,-j,y,e,-D,0,D,-e,-y,j,t,-o,}
{B,-i,-s,r,j,-A,-a,C,-h,-t,q,k,-z,-b,D,-g,-u,p,l,-y,-c,E,-f,-v,o,m,-x,-d,F,-e,-w,n,}
{z,-m,-m,z,0,-z,m,m,-z,0,z,-m,-m,z,0,-z,m,m,-z,0,z,-m,-m,z,0,-z,m,m,-z,0,z,-m,}
{x,-q,-g,E,-j,-n,A,-c,-u,t,d,-B,m,k,-D,f,r,-w,-a,y,-p,-h,F,-i,-o,z,-b,-v,s,e,-C,l,}
{v,-u,-a,w,-t,-b,x,-s,-c,y,-r,-d,z,-q,-e,A,-p,-f,B,-o,-g,C,-n,-h,D,-m,-i,E,-l,-j,F,-k,}
{t,-y,e,o,-D,j,j,-D,o,e,-y,t,0,-t,y,-e,-o,D,-j,-j,D,-o,-e,y,-t,0,t,-y,e,o,-D,j,}
{r,-C,k,g,-y,v,-d,-n,F,-o,-c,u,-z,h,j,-B,s,-a,-q,D,-l,-f,x,-w,e,m,-E,p,b,-t,A,-i,}
{p,-F,q,-a,-o,E,-r,b,n,-D,s,-c,-m,C,-t,d,l,-B,u,-e,-k,A,-v,f,j,-z,w,-g,-i,y,-x,h,}
{n,-B,w,-i,-e,s,-F,r,-d,-j,x,-A,m,a,-o,C,-v,h,f,-t,E,-q,c,k,-y,z,-l,-b,p,-D,u,-g,}
{l,-x,C,-q,e,g,-s,E,-v,j,b,-n,z,-A,o,-c,-i,u,-F,t,-h,-d,p,-B,y,-m,a,k,-w,D,-r,f,}
{j,-t,D,-y,o,-e,-e,o,-y,D,-t,j,0,-j,t,-D,y,-o,e,e,-o,y,-D,t,-j,0,j,-t,D,-y,o,-e,}
{h,-p,x,-F,y,-q,i,-a,-g,o,-w,E,-z,r,-j,b,f,-n,v,-D,A,-s,k,-c,-e,m,-u,C,-B,t,-l,d,}
{f,-l,r,-x,D,-C,w,-q,k,-e,-a,g,-m,s,-y,E,-B,v,-p,j,-d,-b,h,-n,t,-z,F,-A,u,-o,i,-c,}
{d,-h,l,-p,t,-x,B,-F,C,-y,u,-q,m,-i,e,-a,-c,g,-k,o,-s,w,-A,E,-D,z,-v,r,-n,j,-f,b,}
{b,-d,f,-h,j,-l,n,-p,r,-t,v,-x,z,-B,D,-F,E,-C,A,-y,w,-u,s,-q,o,-m,k,-i,g,-e,c,-a,}
ここで、{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={4,9,13,17,21,26,30,34,38,42,45,50,53,56,60,63,66,68,72,74,77,78,80,82,84,85,86,88,88,89,90,90}
4ポイントDCT-8
{a,b,c,d,}
{b,0,-b,-b,}
{c,-b,-d,a,}
{d,-b,a,-c,}
ここで、{a,b,c,d}={84,74,55,29}
8ポイントDCT-8:
{a,b,c,d,e,f,g,h,}
{b,e,h,-g,-d,-a,-c,-f,}
{c,h,-e,-a,-f,g,b,d,}
{d,-g,-a,-h,c,e,-f,-b,}
{e,-d,-f,c,g,-b,-h,a,}
{f,-a,g,e,-b,h,d,-c,}
{g,-c,b,-f,-h,d,-a,e,}
{h,-f,d,-b,a,-c,e,-g,}
ここで、{a,b,c,d,e,f,g,h}={86,85,78,71,60,46,32,17}
16ポイントDCT-8
{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,}
{b,e,h,k,n,0,-n,-k,-h,-e,-b,-b,-e,-h,-k,-n,}
{c,h,m,-p,-k,-f,-a,-e,-j,-o,n,i,d,b,g,l,}
{d,k,-p,-i,-b,-f,-m,n,g,a,h,o,-l,-e,-c,-j,}
{e,n,-k,-b,-h,0,h,b,k,-n,-e,-e,-n,k,b,h,}
{f,0,-f,-f,0,f,0,-f,-f,0,f,0,-f,-f,-f,}
{g,-n,-a,-m,h,f,-o,-b,-l,i,e,-p,-c,-k,j,d,}
{h,-k,-e,n,b,0,-b,-n,e,k,-h,-h,k,e,-n,-b,}
{i,-h,-j,g,k,-f,-l,e,m,-d,-n,c,o,-b,-p,a,}
{j,-e,-o,a,-n,-f,i,k,-d,-p,b,-m,-g,h,l,-c,}
{k,-b,n,h,-e,0,e,-h,-n,b,-k,-k,b,-n,-h,e,}
{l,-b,i,o,-e,f,-p,-h,c,-m,-k,a,-j,-n,d,-g,}
{m,-e,d,-l,-n,f,-c,k,o,-g,b,-j,-p,h,-a,i,}
{n,-h,b,-e,k,0,-k,e,-b,h,-n,-n,h,-b,e,-k,}
{o,-k,g,-c,b,-f,j,-n,-p,l,-h,d,-a,e,-i,m,}
{p,-n,l,-j,h,-f,d,-b,a,-c,e,-g,i,-k,m,-o,}
ここで、{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}={90,89,87,83,81,77,72,66,62,56,49,41,33,25,17,9}
32ポイントDCT-8
{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,}
{b,e,h,k,n,q,t,w,z,C,F,-E,-B,-y,-v,-s,-p,-m,-j,-g,-d,-a,-c,-f,-i,-l,-o,-r,-u,-x,-A,-D,}
{c,h,m,r,w,B,0,-B,-w,-r,-m,-h,-c,-c,-h,-m,-r,-w,-B,0,B,w,r,m,h,c,c,h,m,r,w,B,}
{d,k,r,y,F,-A,-t,-m,-f,-b,-i,-p,-w,-D,C,v,o,h,a,g,n,u,B,-E,-x,-q,-j,-c,-e,-l,-s,-z}
{e,n,w,F,-y,-p,-g,-c,-l,-u,-D,A,r,i,a,j,s,B,-C,-t,-k,-b,-h,-q,-z,E,v,m,d,f,o,x,}
{f,q,B,-A,-p,-e,-g,-r,-C,z,o,d,h,s,D,-y,-n,-c,-i,-t,-E,x,m,b,j,u,F,-w,-l,-a,-k,-v}
{g,t,0,-t,-g,-g,-t,0,t,g,g,t,0,-t,-g,-g,-t,0,t,g,g,t,0,-t,-g,-g,-t,0,t,g,g,t,}
{h,w,-B,-m,-c,-r,0,r,c,m,B,-w,-h,-h,-w,B,m,c,r,0,-r,-c,-m,-B,w,h,h,w,-B,-m,-c,-r,}
{i,z,-w,-f,-l,-C,t,c,o,F,-q,-a,-r,E,n,d,u,-B,-k,-g,-x,y,h,j,A,-v,-e,-m,-D,s,b,p,}
{j,C,-r,-b,-u,z,g,m,F,-o,-e,-x,w,d,p,-E,-l,-h,-A,t,a,s,-B,-i,-k,-D,q,c,v,-y,-f,-n,}
{k,F,-m,-i,-D,o,g,B,-q,-e,-z,s,c,x,-u,-a,-v,w,b,t,-y,-d,-r,A,f,p,-C,-h,-n,E,j,l,}
{l,-E,-h,-p,A,d,t,-w,-a,-x,s,e,B,-o,-i,-F,k,m,-D,-g,-q,z,c,u,-v,-b,-y,r,f,C,-n,-j,}
{m,-B,-c,-w,r,h,0,-h,-r,w,c,B,-m,-m,B,c,w,-r,-h,0,h,r,-w,-c,-B,m,m,-B,-c,-w,r,h,}
{n,-y,-c,-D,i,s,-t,-h,E,d,x,-o,-m,z,b,C,-j,-r,u,g,-F,-e,-w,p,l,-A,-a,-B,k,q,-v,-f,}
{o,-v,-h,C,a,D,-g,-w,n,p,-u,-i,B,b,E,-f,-x,m,q,-t,-j,A,c,F,-e,-y,l,r,-s,-k,z,d,}
{p,-s,-m,v,j,-y,-g,B,d,-E,-a,-F,c,C,-f,-z,i,w,-l,-t,o,q,-r,-n,u,k,-x,-h,A,e,-D,-b,}
{q,-p,-r,o,s,-n,-t,m,u,-l,-v,k,w,-j,-x,i,y,-h,-z,g,A,-f,-B,e,C,-d,-D,c,E,-b,-F,a,}
{r,-m,-w,h,B,-c,0,c,-B,-h,w,m,-r,-r,m,w,-h,-B,c,0,-c,B,h,-w,-m,r,r,-m,-w,h,B,-c,}
{s,-j,-B,a,-C,-i,t,r,-k,-A,b,-D,-h,u,q,-l,-z,c,-E,-g,v,p,-m,-y,d,-F,-f,w,o,-n,-x,e,}
{t,-g,0,g,-t,-t,g,0,-g,t,t,-g,0,g,-t,-t,g,0,-g,t,t,-g,0,g,-t,-t,g,0,-g,t,t,-g,}
{u,-d,B,n,-k,-E,g,-r,-x,a,-y,-q,h,-F,-j,o,A,-c,v,t,-e,C,m,-l,-D,f,-s,-w,b,-z,-p,i}
{v,-a,w,u,-b,x,t,-c,y,s,-d,z,r,-e,A,q,-f,B,p,-g,C,o,-h,D,n,-i,E,m,-j,F,l,-k,}
{w,-c,r,B,-h,m,0,-m,h,-B,-r,c,-w,-w,c,-r,-B,h,-m,0,m,-h,B,r,-c,w,w,-c,r,B,-h,m,}
{x,-f,m,-E,-q,b,-t,-B,j,-i,A,u,-c,p,F,-n,e,-w,-y,g,-l,D,r,-a,s,C,-k,h,-z,-v,d,-o,}
{y,-i,h,-x,-z,j,-g,w,A,-k,f,-v,-B,l,-e,u,C,-m,d,-t,-D,n,-c,s,E,-o,b,-r,-F,p,-a,q,}
{z,-l,c,-q,E,u,-g,h,-v,-D,p,-b,m,-A,-y,k,-d,r,-F,-t,f,-i,w,C,-o,a,-n,B,x,-j,e,-s,}
{A,-o,c,-j,v,F,-t,h,-e,q,-C,-y,m,-a,l,-x,-D,r,-f,g,-s,E,w,-k,b,-n,z,B,-p,d,-i,u,}
{B,-r,h,-c,m,-w,0,w,-m,c,-h,r,-B,-B,r,-h,c,-m,w,0,-w,m,-c,h,-r,B,B,-r,h,-c,m,-w,}
{C,-u,m,-e,d,-l,t,-B,-D,v,-n,f,-c,k,-s,A,E,-w,o,-g,b,-j,r,-z,-F,x,-p,h,-a,i,-q,y,}
{D,-x,r,-l,f,-a,g,-m,s,-y,E,C,-w,q,-k,e,-b,h,-n,t,-z,F,B,-v,p,-j,d,-c,i,-o,u,-A,}
{E,-A,w,-s,o,-k,g,-c,b,-f,j,-n,r,-v,z,-D,-F,B,-x,t,-p,l,-h,d,-a,e,-i,m,-q,u,-y,C,}
{F,-D,B,-z,x,-v,t,-r,p,-n,l,-j,h,-f,d,-b,a,-c,e,-g,i,-k,m,-o,q,-s,u,-w,y,-A,C,-E,}
ここで、{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F}={90,90,89,88,88,86,85,84,82,80,78,77,74,72,68,66,63,60,56,53,50,45,42,38,34,30,26,21,17,13,9,4}
101 サンプル、集中点
102 矢印
103 矢印
104 正方形ブロック
111 現在ブロック
200 通信システム
210 端末デバイス(第1のペア)
220 端末デバイス(第1のペア)
230 端末デバイス(第2のペア)
240 端末デバイス(第2のペア)
250 通信ネットワーク
301 ビデオソース
302 ビデオピクチャのストリーム
303 ビデオエンコーダ
304 符号化ビデオデータ(符号化ビデオビットストリーム)
305 ストリーミングサーバ
306 クライアントサブシステム
307 符号化ビデオデータ(304)のコピー
308 クライアントサブシステム
309 符号化ビデオデータ(304)のコピー
310 ビデオデコーダ
311 ビデオピクチャのストリーム
312 ディスプレイ
313 キャプチャサブシステム
320 電子デバイス
330 電子デバイス
401 チャネル
410 ビデオデコーダ
412 描画デバイス
415 バッファメモリ
420 エントロピーデコーダ/パーサ
421 シンボル
430 電子デバイス
431 レシーバ
451 スケーラ/逆変換ユニット
452 イントラピクチャ予測ユニット
453 動き補償予測ユニット
455 アグリゲータ
456 ループフィルタユニット
457 参照ピクチャメモリ
458 現在ピクチャのバッファ
501 ビデオソース
503 ビデオエンコーダ
520 電子デバイス
530 ソースコーダ
532 符号化エンジン
533 デコーダ
534 参照ピクチャメモリ
535 予測器
540 トランスミッタ
543 コード化されたビデオシーケンス
545 エントロピーコーダ
550 コントローラ
560 通信チャネル
603 ビデオエンコーダ
621 全体コントローラ
622 イントラエンコーダ
623 残差演算部
624 残差エンコーダ
625 エントロピーエンコーダ
626 スイッチ
628 残差デコーダ
630 インターエンコーダ
710 ビデオデコーダ
771 エントロピーデコーダ
772 イントラデコーダ
773 残差デコーダ
774 再構成モジュール
780 インターデコーダ
1500 プロセス
1600 コンピュータシステム、アーキテクチャ
1601 キーボード
1602 マウス
1603 トラックパッド
1605 ジョイスティック
1606 マイクロフォン
1607 スキャナ
1608 カメラ
1609 スピーカ
1610 タッチスクリーン
1620 CD/DVD ROM/RW
1621 CD/DVDなどの媒体
1622 サムドライブ
1623 リムーバブルハードドライブまたはソリッドステートドライブ
1640 コア
1641 中央処理装置(CPU)
1642 グラフィック処理装置(GPU)
1643 フィールドプログラマブルゲートエリア(FPGA)
1644 ハードウェアアクセラレータ
1645 読み出し専用メモリ(ROM)
1646 ランダムアクセスメモリ(RAM)
1647 コア内部大容量記憶装置
1648 システムバス
1649 汎用データポートまたは周辺機器用バス
1650 グラフィックスアダプタ
1654 ネットワークインターフェース
1655 通信ネットワーク

Claims (20)

  1. デコーダにおけるビデオ復号化方法であって、
    符号化ビデオシーケンスの一部である現在ピクチャ内の現在ブロックの予測情報を復号化するステップであって、前記予測情報は、特定のインター予測モード、位置依存予測組合せ(PDPC)処理、および前記現在ブロックの符号化残差を示す、ステップと、
    前記予測情報に基づいて、(i)変換プロセスが適用されるべき前記現在ブロックの分割、および、(ii)前記現在ブロックに対する前記変換プロセスの変換タイプ、のうちの少なくとも1つを決定するステップと、
    復号化残差を生成するために前記符号化残差に対して前記変換プロセスを実行するステップと、
    前記復号化残差に基づいて前記現在ブロックを再構成するステップと
    を含む方法。
  2. 決定する前記ステップは、
    前記変換タイプを、複数のサブブロック変換(SBT)タイプのうちの1つであると決定するステップであって、前記複数のSBTタイプの各々は、前記現在ブロックの異なる部分に適用される、ステップをさらに含む、請求項1に記載の方法。
  3. 前記複数のSBTタイプのうちの前記1つの適用は、前記現在ブロックの前記特定のインター予測モードとは無関係である、請求項2に記載の方法。
  4. 前記複数のSBTタイプのうちの前記1つが適用される前記部分は、前記現在ブロックの複数部分のうちの右端部分および下端部分のうちの1つである、請求項2に記載の方法。
  5. 前記変換タイプが選択される、DCT-2変換、DST-7変換、およびDCT-8変換のサブセットを決定するステップ、
    をさらに含む、請求項1に記載の方法。
  6. 前記予測情報は、(i)符号化されたコンテキスト、および、(ii)前記現在ブロックの前記PDPC処理を示す、シグナリングされたフラグを含む、請求項1に記載の方法。
  7. 前記現在ブロックに対してイントラブロックコピー(IBC)モードが許可されていない、請求項1に記載の方法。
  8. 前記PDPC処理の複数の重み付けパラメータは、前記現在ブロックに隣接する隣接ブロックの予測情報に基づく、請求項1に記載の方法。
  9. 装置であって、
    符号化ビデオシーケンスの一部である現在ピクチャ内の現在ブロックの予測情報を復号化し、前記予測情報は、特定のインター予測モード、位置依存予測組合せ(PDPC)処理、および前記現在ブロックの符号化残差を示し、
    前記予測情報に基づいて、(i)変換プロセスが適用されるべき前記現在ブロックの分割、および(ii)前記現在ブロックに対する前記変換プロセスの変換タイプ、のうちの少なくとも1つを決定し、
    復号化残差を生成するために前記符号化残差に対して前記変換プロセスを実行し、
    前記復号化残差に基づいて前記現在ブロックを再構築する、
    ように構成される、処理回路を含む、装置。
  10. 前記処理回路は、前記変換タイプを、複数のサブブロック変換(SBT)タイプのうちの1つであると決定し、前記複数のSBTタイプの各々は、前記現在ブロックの異なる部分に適用される、
    ようにさらに構成される、請求項9に記載の装置。
  11. 前記複数のSBTタイプのうちの前記1つの適用は、前記現在ブロックの前記特定のインター予測モードとは無関係である、請求項10に記載の装置。
  12. 前記複数のSBTタイプのうちの前記1つが適用される前記部分は、前記現在ブロックの複数部分のうちの右端部分および下端部分のうちの1つである、請求項10に記載の装置。
  13. 前記処理回路は、前記変換タイプが選択される、DCT-2変換、DST-7変換、およびDCT-8変換のサブセットを決定する、
    ようにさらに構成される、請求項9に記載の装置。
  14. 前記予測情報は、(i)符号化されたコンテキスト、および、(ii)前記現在ブロックの前記PDPC処理を示す、シグナリングされたフラグを含む、請求項9に記載の装置。
  15. 前記現在ブロックに対してイントラブロックコピー(IBC)モードが許可されていない、請求項9に記載の装置。
  16. 前記PDPC処理の複数の重み付けパラメータが、前記現在ブロックに隣接する隣接ブロックの予測情報に基づく、請求項9に記載の装置。
  17. 少なくとも1つのプロセッサによって実行可能なプログラムを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラムは、
    符号化ビデオシーケンスの一部である現在ピクチャ内の現在ブロックの予測情報を復号化するステップであって、前記予測情報は、特定のインター予測モード、位置依存予測組合せ(PDPC)処理、および前記現在ブロックの符号化残差を示す、ステップと、
    前記予測情報に基づいて、(i)変換プロセスが適用されるべき前記現在ブロックの分割、および、(ii)前記現在ブロックに対する前記変換プロセスの変換タイプ、のうちの少なくとも1つを決定するステップと、
    復号化残差を生成するために前記符号化残差に対して前記変換プロセスを実行するステップと、
    前記復号化残差に基づいて前記現在ブロックを再構成するステップと、を実施する、
    非一時的コンピュータ可読記憶媒体。
  18. 前記格納プログラムは、
    前記変換タイプを、複数のサブブロック変換(SBT)タイプのうちの1つであると決定するステップであって、前記複数のSBTタイプの各々は、前記現在ブロックの異なる部分に適用される、ステップを、さらに実施する、請求項17に記載の非一時的コンピュータ可読記憶媒体。
  19. 前記複数のSBTタイプのうちの前記1つの適用は、前記現在ブロックの前記特定のインター予測モードとは無関係である、請求項18に記載の非一時的コンピュータ可読記憶媒体。
  20. 前記複数のSBTタイプのうちの前記1つが適用される前記部分は、前記現在ブロックの複数部分のうちの右端部分および下端部分のうちの1つである、請求項18に記載の非一時的コンピュータ可読記憶媒体。
JP2021532464A 2019-03-11 2020-03-11 インターpdpcモードの改善 Active JP7416450B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962816855P 2019-03-11 2019-03-11
US62/816,855 2019-03-11
US16/816,011 US11470354B2 (en) 2019-03-11 2020-03-11 Inter PDPC mode
PCT/US2020/022163 WO2020185943A1 (en) 2019-03-11 2020-03-11 Improvement for inter pdpc mode
US16/816,011 2020-03-11

Publications (3)

Publication Number Publication Date
JP2022511902A true JP2022511902A (ja) 2022-02-01
JPWO2020185943A5 JPWO2020185943A5 (ja) 2023-10-05
JP7416450B2 JP7416450B2 (ja) 2024-01-17

Family

ID=72423611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021532464A Active JP7416450B2 (ja) 2019-03-11 2020-03-11 インターpdpcモードの改善

Country Status (5)

Country Link
US (1) US11470354B2 (ja)
EP (1) EP3939312A4 (ja)
JP (1) JP7416450B2 (ja)
CN (1) CN113574895B (ja)
WO (1) WO2020185943A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115174908B (zh) * 2022-06-30 2023-09-15 北京百度网讯科技有限公司 视频编码的变换量化方法、装置、设备以及存储介质
US20240129454A1 (en) * 2022-10-17 2024-04-18 Tencent America LLC Boundary filtering on intrabc and intratmp coded blocks

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10212445B2 (en) * 2014-10-09 2019-02-19 Qualcomm Incorporated Intra block copy prediction restrictions for parallel processing
US10306229B2 (en) * 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
US10425648B2 (en) * 2015-09-29 2019-09-24 Qualcomm Incorporated Video intra-prediction using position-dependent prediction combination for video coding
US10708164B2 (en) * 2016-05-03 2020-07-07 Qualcomm Incorporated Binarizing secondary transform index
EP3590256B1 (en) * 2017-03-10 2023-12-20 HFI Innovation Inc. Method and apparatus of implicit intra coding tool settings with intra directional prediction modes for video coding
CN108810552B (zh) * 2017-04-28 2021-11-09 华为技术有限公司 图像预测方法和相关产品
US10805641B2 (en) * 2017-06-15 2020-10-13 Qualcomm Incorporated Intra filtering applied together with transform processing in video coding
US20180376148A1 (en) * 2017-06-23 2018-12-27 Qualcomm Incorporated Combination of inter-prediction and intra-prediction in video coding

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
JIANLE CHEN, ET AL.: "Algorithm description for Versatile Video Coding and Test Model 4 (VTM 4)", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-M1002-v1, JPN6022020595, 16 February 2019 (2019-02-16), pages 42 - 44, ISSN: 0004946530 *
LUONG PHAM VAN, ET AL.: "CE10-related: Inter-intra prediction combination", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-M0096-v3, JPN6022020592, 10 January 2019 (2019-01-10), ISSN: 0004946527 *
VERSATILE VIDEO CODING (DRAFT 4): "Benjamin Bross, et al.", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-M1001-v6, JPN6022020593, 9 March 2019 (2019-03-09), pages 28 - 30, ISSN: 0004946528 *
YIN ZHAO, ET AL.: "CE6: Sub-block transform for inter blocks (CE6.1.2)", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-L0358-v2, JPN6022020594, 30 September 2018 (2018-09-30), ISSN: 0004946529 *

Also Published As

Publication number Publication date
EP3939312A4 (en) 2022-04-27
US11470354B2 (en) 2022-10-11
US20200296421A1 (en) 2020-09-17
WO2020185943A1 (en) 2020-09-17
JP7416450B2 (ja) 2024-01-17
CN113574895B (zh) 2024-01-30
EP3939312A1 (en) 2022-01-19
CN113574895A (zh) 2021-10-29

Similar Documents

Publication Publication Date Title
JP7443455B2 (ja) 映像復号化のための方法、装置及びコンピュータ・プログラム
JP7046220B2 (ja) 小ブロックの予測と変換のための方法、装置、及びプログラム
JP7187702B2 (ja) ビデオ符号化の方法、装置及びコンピュータ・プログラム
JP7242705B2 (ja) ビデオ符号化のための方法、装置、及びコンピュータプログラム
KR102637562B1 (ko) 비디오 압축에서의 비-정사각형 블록들에 대한 인트라 예측을 위한 방법 및 장치
KR102442931B1 (ko) 비디오 코딩을 위한 방법 및 장치
CN113892270B (zh) 视频编解码方法、装置和存储介质
KR20200118896A (ko) 비디오 코딩을 위한 방법 및 장치
KR20200131328A (ko) 가장 가능성이 높은 모드를 도출하기 위한 방법 및 장치
JP2022515813A (ja) ビデオ符号化及び復号するための方法、装置及びコンピュータ・プログラム
JP2022517114A (ja) ビデオ復号用の方法、装置およびプログラム
JP7258168B2 (ja) ビデオコーディングのための方法並びにその、装置およびコンピュータプログラム
JP2022526161A (ja) ビデオ・コーディング方法及び装置
JP2022510354A (ja) ビデオ符号化における隣接ブロックの利用可能性のための方法および装置
JP2023171907A (ja) イントラ予測モードとブロック差分パルスコード変調モードとの間の相互作用のための方法および装置
JP2023054257A (ja) ビデオ符号化のための方法、及び装置
JP2022515799A (ja) ビデオ復号の方法および装置、並びにプログラム
JP2022525748A (ja) ビデオ符号化のための色変換
JP7236558B2 (ja) ビデオコーディングのための方法および装置
JP7416450B2 (ja) インターpdpcモードの改善
JP2022525056A (ja) ビデオ符号化方法、装置及びコンピュータプログラム
JP7050942B2 (ja) ビデオ・コーディングのための方法、装置、及びコンピュータ・プログラム
JP2023508303A (ja) ビデオコーディングのための方法、装置およびコンピュータプログラム
JP7439344B2 (ja) ビデオデコーディングのための方法、デバイス、およびコンピュータプログラム
JP7490299B2 (ja) スキップ変換フラグ符号化

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210608

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221219

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20230315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230710

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20230927

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231222

R150 Certificate of patent or registration of utility model

Ref document number: 7416450

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150