JP7285954B2 - ビデオコーディングのための方法および装置 - Google Patents

ビデオコーディングのための方法および装置 Download PDF

Info

Publication number
JP7285954B2
JP7285954B2 JP2021558852A JP2021558852A JP7285954B2 JP 7285954 B2 JP7285954 B2 JP 7285954B2 JP 2021558852 A JP2021558852 A JP 2021558852A JP 2021558852 A JP2021558852 A JP 2021558852A JP 7285954 B2 JP7285954 B2 JP 7285954B2
Authority
JP
Japan
Prior art keywords
mode
transform
separable
smooth
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.)
Active
Application number
JP2021558852A
Other languages
English (en)
Other versions
JP2022526400A (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 JP2022526400A publication Critical patent/JP2022526400A/ja
Application granted granted Critical
Publication of JP7285954B2 publication Critical patent/JP7285954B2/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/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/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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
    • 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

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)

Description

参照による援用
本出願は、2019年11月27日に出願された米国仮出願第62/941,359号の「イントラコーディングのための二次変換」の優先権を主張する、2020年9月24日に出願された米国特許出願第17/031,272号の「ビデオコーディングのための方法および装置」の優先権を主張する。その内容を全て参照により本明細書に組み込むものとする。
本開示は、一般にビデオコーディングに関する実施形態を説明する。
本明細書中に提供される「背景技術」の記述は、本開示の内容を大まかに示すことを目的とする。ここに名を挙げられている発明者の成果は、この背景技術に記載された範囲において、出願時に従来技術として通常見なされえない記載の態様と共に、明示的にも黙示的にも本開示に対する従来技術として認められてはいない。
ビデオコーディングおよび復号は、動き補償を伴うイントラピクチャ予測を使用して実行されることができる。非圧縮デジタルビデオは一連のピクチャを含むことができ、各ピクチャは、例えば、1920×1080ルマサンプルと関連するクロマサンプルの空間次元を持っている。該一連のピクチャは、例えば毎秒60ピクチャまたは60Hzの固定または可変ピクチャレート(非公式には「フレームレート」とも呼ばれる)を持つことができる。非圧縮ビデオには、顕著なビットレート要件がある。例えば、サンプルあたり8ビットでの1080p60 4:2:0ビデオ(60Hzフレームレートでの1920×1080ルマサンプル解像度)には、1.5Gbit/sに近い帯域幅が必要となる。このようなビデオを1時間使用するには、600GBytesを超えた記憶空間が必要である。
ビデオコーディングおよび復号の1つの目的は、圧縮によって入力ビデオ信号の冗長性を減らすことであり得る。圧縮は、前述の帯域幅または記憶空間の要件を、場合によっては2桁以上削減するのに役立つ。可逆圧縮と非可逆圧縮の両方、およびそれらの組み合わせを使用することができる。可逆圧縮とは、圧縮された元の信号から元の信号の正確なコピーを再構築できる技法を指す。非可逆圧縮を使用する場合、再構築された信号は元の信号と同一ではない可能性があるが、元の信号と再構築された信号の間の歪みは、再構築された信号を意図されたアプリケーションに役立てる程度に小さい。ビデオの場合、非可逆圧縮が広く採用されている。許容される歪みの量はアプリケーションによって異なる。例えば、特定のコンシューマストリーミングアプリケーションのユーザは、テレビ発行アプリケーションのユーザよりも高い歪みを許容できる。達成可能な圧縮率は、受け入れ可能/許容可能な歪みが大きいほど、圧縮率が高くなることを反映することができる。
ビデオエンコーダおよびデコーダは、例えば、動き補償、変換、量子化、およびエントロピーコーディングを含むいくつかの広範なカテゴリからの技術を利用することができる。
ビデオコーデック技術は、イントラコーディングとして知られる技法を含み得る。イントラコーディングでは、サンプル値は、予め再構築された参照ピクチャからのサンプルまたは他のデータを参照せずに表される。一部のビデオコーデックでは、ピクチャは空間的にサンプルのブロックに細分される。サンプルのすべてのブロックがイントラモードで符号化されると、そのピクチャはイントラピクチャになる可能性がある。イントラピクチャとその独立したデコーダリフレッシュピクチャなどの派生物は、デコーダの状態をリセットするために使用できるため、符号化されたビデオビットストリームとビデオセッションの最初のピクチャとして、または静止画像として使用されることができる。イントラブロックのサンプルは変換にさらされることができ、変換係数はエントロピーコーディングの前に量子化されることができる。イントラ予測は、事前変換領域でサンプル値を最小化する技法であり得る。場合によっては、変換後のDC値が小さく、AC係数が小さいほど、エントロピーコーディング後のブロックを表すために所定の量子化ステップサイズで必要なビットが少なくなる。
例えばMPEG-2世代コーディング技術から知られているような従来のイントラコーディングは、イントラ予測を使用しない。しかしながら、いくつかのより新しいビデオ圧縮技術は、例えば、空間的に隣接し、デコード順の先に位置する、エンコード/デコード中に得られたサンプルデータおよび/またはメタデータの周りのデータブロックのから試みる技法を含む。そのような技法は、以降、「イントラ予測」技法と呼ばれる。少なくともいくつかのケースでは、イントラ予測は、再構築中の現在ピクチャからの参照データのみを使用し、参照ピクチャからの参照データを使用しないことに注意されたい。
イントラ予測はさまざまな形態で存在し得る。そのような技法の2つまたは複数が所定のビデオコーディング技術に使用できる場合、使用中の技法はイントラ予測モードで符号化されることができる。場合によっては、モードはサブモードやパラメータを有することができ、それらを個別に符号化するか、もしくはモードコードワードに含めることができる。どのコードワードが所定のモード/サブモード/パラメータの組み合わせに使用されるかは、イントラ予測によるコーディング効率の向上に影響を与える可能性があるので、コードワードをビットストリームに変換するために使用されるエントロピーコーディング技術に影響を与える可能性がある。
イントラ予測の特定のモードはH.264で提出され、H.265で改良され、さらに共同探索モデル(JEM)、多用途ビデオコーディング(VVC)、およびベンチマークセット(BMS)などのより新しいコーディング技術で改良された。予測器ブロックは、すでに利用可能なサンプルに属する隣接サンプル値を使用して形成されることができる。隣接サンプルのサンプル値は、方向に従って予測器ブロックにコピーされる。使用中の方向への参照は、ビットストリームで符号化されるか、もしくはそれ自体を予測され得る。
図1を参照し、右下に示されたのは、H.265の33通りの予測可能な予測器方向(35通りのイントラモードの33通りの角度モードに対応する)である。矢印が収束する点(101)は、予測されているサンプルを表す。矢印は、サンプルが予測されている方向を表す。例えば、矢印(102)は、サンプル(101)が、1つまたは複数のサンプルから右上に向けて、水平軸から45度の角度で予測されることを示す。同様に、矢印(103)は、サンプル(101)が、1つまたは複数のサンプルからサンプル(101)の左下に向けて、水平軸から22.5度の角度で予測されることを示す。
引き続き図1を参照し、左上には、4×4サンプルの正方形ブロック(104)(太い破線で示される)が示されている。正方形ブロック(104)は、それぞれが、「S」、Y次元におけるその位置(例えば、行インデックス)、およびX次元におけるその位置(例えば、列インデックス)でラベル付けされた16個のサンプルを含む。例えば、サンプルS21は、Y次元(上から)における2番目のサンプルかつX次元(左から)における1番目のサンプルである。同様に、サンプルS44は、YおよびX次元の両方においてブロック(104)における4番目のサンプルである。ブロックがサイズで4×4サンプルなので、S44は、右下にある。さらに、同様な番号付け体系に従う参照サンプルが示されている。参照サンプルは、R、ブロック(104)に対するそのY位置(例えば、行インデックス)およびX位置(列インデックス)でラベル付けされる。H.264とH.265の両方で、予測サンプルは再構築中のブロックに隣接している。したがって、負の値を使用する必要はない。
イントラピクチャ予測は、シグナリングされた予測方向で適切の隣接サンプルから参照サンプル値をコピーすることで機能することができる。例えば、仮に、符号化されたビデオビットストリームは、このブロックについて矢印(102)(すなわち、サンプルが、1つまたは複数の予測サンプルから右上に、水平から45度の角度で予測される)と一致する予測方向を示すシグナリングを含むとする。この場合、サンプルS41、S32、S23、およびS14は同一の参照サンプルR05から予測される。その後、サンプルS44は、参照サンプルR08から予測される。
特定の場合において、複数の参照サンプルの値は、参照サンプルを算出するために、特に方向が45度で均等に分割されていない場合に、例えば補間によって組み合わせられることができる。
ビデオコーディング技術が発展するにつれて、予測可能な方向の数は増加した。H.264(2003年)では、9通りの異なる方向を表すことができた。H.265(2013年)で33通りに増加し、JEM/VVC/BMSは開示時に最大65通りの方向をサポートできる。最も見込みのある方向を識別するための実験が行われ、エントロピーコーディングにおける特定の技法は、数が少ないビットにおける見込みの高い方向を表すために使用され、見込みの低い方向に対する特定のペナルティを受け入れる。さらに、方向自体は、隣接する、すでにデコードされたブロックで使用される隣接方向から予測される場合がある。
図2は、経時的な予測方向の増加数を示すために、JEMによる65通りのイントラ予測方向を示す概略図(201)を示す。
方向を表す符号化されたビデオビットストリームにおけるイントラ予測方向ビットのマッピングは、ビデオコーディング技術ごとに異なる可能性があり、また、例えば、イントラ予測モードへ乃至コードワードへの予測方向の単純な直接マッピングから、最も可能性の高いモードや類似した技法を含む複雑な適応方式までの範囲とすることができる。しかしながら、すべての場合において、他の特定の方向よりも統計的にビデオコンテンツで発生する可能性が低い特定の方向が存在する可能性がある。ビデオ圧縮の目的は冗長性の削減であるため、適切に機能するビデオコーディング技術では、これらの可能性の低い方向は、可能性の高い方向よりも多くのビット数で表される。
本開示の態様は、ビデオエンコード/デコードのための方法および装置を提供する。いくつかの例では、ビデオエンコードおよび/またはデコードのための装置は、処理回路を備える。前記処理回路は、符号化されたビデオビットストリームから、再構築されるべきブロックのコーディング情報をエンコードおよび/またはデコードすることができ、前記コーディング情報は、前記ブロックのイントラ予測情報を示すことができる。方向性モードで符号化された前記ブロックに対して、前記処理回路は、公称モードおよび角度オフセットに基づいて、前記方向性モードを決定することができる。前記コーディング情報は、前記公称モードおよび前記角度オフセットを示すことができる。前記処理回路は、前記公称モードに基づいて、前記ブロックの非分離変換を決定し、前記方向性モードおよび前記非分離変換に基づいて、前記ブロックを再構築することができる。
一態様では、前記処理回路は、前記公称モードに関連付けられる変換セットモードを決定し、前記変換セットモードは、前記非分離変換を含む1つまたは複数の非分離変換のセットを示す。
一態様では、前記コーディング情報は、非分離変換インデックスをさらに示す。前記処理回路は、前記非分離変換インデックスに基づいて、1つまたは複数の非分離変換のセットにおける前記非分離変換を決定し、前記方向性モードおよび前記非分離変換に基づいて、前記ブロックを再構築することができる。
一態様では、前記非分離変換は、非分離二次変換である。一例では、前記非分離二次変換は、PAETHモードと再帰的フィルタリングモードとのうちの少なくとも1つに適用されない。一例では、前記処理回路は、前記ブロックの最初の変換係数をエントロピー符号化するために使用される走査順序に沿って、前記非分離二次変換を前記最初のN個の変換係数にのみ適用する。一例では、前記処理回路は、前記非分離二次変換を前記ブロックの第1の変換係数にのみ適用し、前記第1の変換係数のそれぞれは座標(x,y)を有し、それぞれのx座標およびy座標の合計は閾値よりも小さい。一例では、前記ブロックの一次変換における水平変換および垂直変換は、折れ線グラフ変換のセットのサブセットに含まれる。
一例では、前記非分離変換は、非分離二次変換である。前記ブロックは、前記非分離二次変換を用いて得られた第1の変換係数と、前記非分離二次変換を用いずに得られた第2の変換係数とを含む。前記処理回路は、前記第1の変換係数と第2の変換係数とを別々にエントロピーデコードすることができる。
一態様では、非方向性モードは、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、SMOOTH_Hモード、再帰的フィルタリングモード、およびルマに基づくクロマ(CfL)モードを含む。前記DCモード、前記PAETHモード、前記SMOOTHモード、前記SMOOTH_Vモード、および前記SMOOTH_Hモードは、前記ブロックの隣接サンプルの平均化に基づくことができる。前記非方向性モードのうちの1つで符号化されたブロックに対して、前記処理回路は、前記非方向性モードのうちの1つに関連付けられた1つまたは複数の非分離変換のセットを決定することができる。(a)前記非方向性モードのうちの少なくとも他の1つ、および、(b)公称モード、のうちの1つは、前記1つまたは複数の非分離変換のセットに関連付けられることができる。前記処理回路は、前記コーディング情報によって示される非分離変換インデックスに基づいて、前記1つまたは複数の非分離変換のセットにおける非分離変換を決定することができる。前記処理回路は、前記非方向性モードおよび前記非分離変換に基づいて、前記ブロックを再構築することができる。
一態様では、前記非方向性モードのうちの1つ、および、前記非方向性モードのうちの少なくとも他の1つと前記公称モードとのうちの1つは、(a)前記再帰的フィルタリングモード、および、前記DCモードと前記SMOOTHモードとのうちの1つと、(b)前記SMOOTHモード、前記SMOOTH_Hモード、および前記SMOOTH_Vモードと、(c)前記SMOOTHモード、前記SMOOTH_Hモード、前記SMOOTH_Vモード、および前記PAETHモードと、(d)前記再帰的フィルタリングモード、前記SMOOTHモード、および前記PAETHモードと、(e)前記公称モードの垂直モード、および前記SMOOTH_Vモードと、(f)前記公称モードの水平モード、および前記SMOOTH_Hモードと、(v)前記CfLモード、および、前記DCモードと前記SMOOTHモードと前記PAETHモードとのうちの1つと、のうちの1つを含む。
本開示の態様は、ビデオエンコードおよび/またはデコードのためのコンピュータによって実行されると、前記コンピュータにビデオエンコードおよび/またはデコードのための方法を実行させる命令を記憶した非一時的なコンピュータ読取可能な媒体も提供する。
開示された主題のさらなる特徴、本質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかになるであろう。
イントラ予測モードの例示的なサブセットの概略図である。 例示的なイントラ予測方向の説明図である。 一実施形態による通信システム(300)の概略ブロック図である。 一実施形態による通信システム(400)の概略ブロック図である。 一実施形態によるデコーダの概略ブロック図である。 一実施形態によるエンコーダの概略ブロック図である。 別の実施形態によるエンコーダのブロック図を示す。 別の実施形態によるデコーダのブロック図を示す。 本開示の一実施形態によるコーディングブロックの公称モードの一例を示す。 本開示の態様による非方向性平滑イントラ予測モードの例を示す。 本開示の一実施形態による再帰的フィルタリングベースのイントラ予測器の一例を示す。 本開示の一実施形態によるコーディングブロックのマルチラインイントラ予測の一例を示す。 本開示の実施形態による2つの例示的な変換コーディングプロセスを示す。 本開示の実施形態による2つの例示的な変換コーディングプロセスを示す。 本開示の一実施形態による折れ線グラフ変換の一例を示す。 本開示の一実施形態による例示的な一般化グラフラプラシアン行列を示す。 本開示の一実施形態によるプロセス(1600)を概説するフローチャートを示す。 一実施形態によるコンピュータシステムの概略図である。
図3は、本開示の一実施形態による通信システム(300)の概略ブロック図を示している。通信システム(300)は、例えばネットワーク(350)を介して互いに通信可能な複数の端末装置を含む。例えば、通信システム(300)は、ネットワーク(350)を介して相互接続された第1の対の端末装置(310)および(320)を含む。図3の例では、第1の対の端末装置(310)および(320)は、データの単方向送信を実行する。例えば、端末装置(310)は、ネットワーク(350)を介して他方の端末装置(320)へ送信するためにビデオデータ(例えば、端末装置(310)によってキャプチャされたビデオピクチャのストリーム)を符号化し得る。エンコードされたビデオデータは、1つまたは複数の符号化されたビデオビットストリームの形で送信されることができる。端末装置(320)は、ネットワーク(350)から符号化ビデオデータを受信し、符号化ビデオデータをデコードしてビデオピクチャを復元し、復元されたビデオデータに従ってビデオピクチャを表示することができる。単方向のデータ送信は、メディア供給アプリケーションなどで一般的である。
他の例では、通信システム(300)は、例えば、ビデオ会議中に発生し得る符号化ビデオデータの双方向送信を実行する第2の対の端末装置(330)および(340)を含む。データの双方向送信の場合、一例では、端末装置(330)および(340)のそれぞれは、ネットワーク(350)を介して端末装置(330)および(340)のうちの他方の端末装置へ送信するためにビデオデータ(例えば、端末装置によってキャプチャされたビデオピクチャのストリーム)を符号化し得る。端末装置(330)および(340)のそれぞれは、端末装置(330)および(340)のうちの他方の端末装置で送信された符号化ビデオデータを受信することができ、符号化ビデオデータをデコードしてビデオピクチャを復元することができ、復元されたビデオデータに従ってビデオピクチャをアクセス可能な表示装置に表示することができる。
図3の例では、端末装置(310)、(320)、(330)および(340)は、サーバ、パーソナルコンピュータおよびスマートフォンとして示され得るが、しかし、本開示の原理はこれに制限されることはない。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤー、および/または専用のビデオ会議機器における用途を見出す。ネットワーク(350)は、例えば有線および/または無線通信ネットワークを含む、端末装置(310)、(320)、(330)および(340)間で符号化ビデオデータを伝達する任意の数のネットワークを表す。通信ネットワーク(350)は、回線交換および/またはパケット交換チャネルでデータを交換することができる。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワークおよび/またはインターネットを含む。本議論の目的のために、ネットワーク(350)のアーキテクチャおよびトポロジーは、以下で説明されない限り、本開示の動作にとって重要でないかもしれない。
図4は、開示された主題の適用の例として、ストリーミング環境におけるビデオエンコーダおよびビデオデコーダの配置を示している。開示された主題は、例えば、ビデオ会議、デジタルTV、および、CD、DVD、メモリスティックなどを含むデジタルメディアへの圧縮ビデオの記憶など、を含む他のビデオ対応アプリケーションに等しく適用可能である。
ストリーミングシステムは、例えば非圧縮のビデオピクチャ(402)のストリームを作成するデジタルカメラなどのビデオソース(401)を含むことができるキャプチャサブシステム(413)を含んでもよい。一例では、ビデオピクチャ(402)のストリームは、デジタルカメラによって取得されたサンプルを含む。エンコードされたビデオデータ(404)(又は符号化されたビデオビットストリーム)と比較して高データ量を強調するために太線で示されたビデオピクチャ(402)のストリームは、ビデオソース(401)に結合されたビデオエンコーダ(403)を含む電子デバイス(420)によって処理されることができる。ビデオエンコーダ(403)は、以下でより詳細に説明されるように、開示された主題の態様を可能にするか或いは実施するためのハードウェア、ソフトウェア、またはそれらの組み合わせを含むことができる。ビデオピクチャ(402)のストリームと比較してより低いデータ量を強調するために細い線で示された、エンコードされたビデオデータ(404)(またはエンコードされたビデオビットストリーム(404))は、将来使うためにストリーミングサーバ(405)に記憶されることができる。図4のクライアントサブシステム(406)および(408)のような1つまたは複数のストリーミングクライアントサブシステムは、ストリーミングサーバ(405)にアクセスして、エンコードされたビデオデータ(404)のコピー(407)および(409)を検索することができる。クライアントサブシステム(406)は、例えば、電子デバイス(430)におけるビデオデコーダ(410)を含むことができる。ビデオデコーダ(410)は、エンコードされたビデオデータの入り方向コピー(407)をデコードし、ディスプレイ(412)(例えば、表示画面)または他のレンダリングデバイス(示されていない)でレンダリングできるビデオピクチャ(411)の出方向ストリームを作成する。一部のストリーミングシステムにおいて、エンコードされたビデオデータ(404)、(407)、および(409)(例えば、ビデオビットストリーム)は、特定のビデオコーディング/圧縮規格に従ってエンコードされることができる。これらの規格の例は、ITU-T勧告H.265を含む。一例では、開発中のビデオコーディング規格は、非公式的に多用途ビデオコーディング(VVC)として知られている。開示された主題は、VVCの文脈に使用され得る。
なお、電子デバイス(420)および(430)は、他の構成要素(図示せず)を含むことができる。例えば、電子デバイス(420)は、ビデオデコーダ(図示せず)を含むことができ、電子デバイス(430)は、ビデオエンコーダ(図示せず)を含むこともできる。
図5は、本開示の一実施形態によるビデオデコーダ(510)のブロック図を示す。ビデオデコーダ(510)は、電子デバイス(530)に含まれることができる。電子デバイス(530)は、受信機(531)(例えば、受信回路)を含むことができる。ビデオデコーダ(510)は、図4の例におけるビデオデコーダ(410)の代わりに使用されることができる。
受信機(531)は、ビデオデコーダ(510)によってデコードされる1つまたは複数の符号化ビデオシーケンスを受信することができ、同一または別の実施形態では、一度に1つの符号化ビデオシーケンスを受信してもよく、各符号化ビデオシーケンスのデコードは、他の符号化ビデオシーケンスから独立している。符号化ビデオシーケンスは、エンコードされたビデオデータを記憶する記憶装置へのハードウェア/ソフトウェアリンクであり得るチャネル(501)から受信されることができる。受信機(531)は、それぞれの使用エンティティ(示されていない)に転送され得る他のデータ、例えば、符号化オーディオデータおよび/または補助データストリームとともに、エンコードされたビデオデータを受信し得る。受信機(531)は、符号化ビデオシーケンスを他のデータから分離することができる。ネットワークジッタを防止するために、バッファメモリ(515)は、受信機(531)とエントロピーデコーダ/パーサ(520)(以降、「パーサ(520)」)の間に結合されてもよい。特定のアプリケーションでは、バッファメモリ(515)は、ビデオデコーダ(510)の一部である。他の場合、ビデオデコーダ(510)(示されていない)の外部に存在し得る。さらに他の場合、例えば、ネットワークジッタを防止するためにビデオデコーダ(510)の外部にバッファメモリ(示されていない)が存在し、さらに、例えば、再生タイミングを取り扱うためにビデオデコーダ(510)の内部に別のバッファメモリ(515)が存在し得る。受信機(531)が十分な帯域幅および可制御性を有する記憶/転送装置から、または等同期ネットワークからデータを受信する際に、バッファメモリ(515)は必要とされないことがあり、または小さくされることがある。インターネットなどのベストエフォートパケットネットワークで使用するために、バッファメモリ(515)が必要になる場合があり、バッファメモリ(515)は、比較的大きいことがあり、有利には適応サイズであることができ、オペレーティングシステムまたはビデオデコーダ(510)の外部の類似の要素(示されていない)に少なくとも部分的に実施され得る。
ビデオデコーダ(510)は、符号化ビデオシーケンスからシンボル(521)を再構築するパーサ(520)を含んでもよい。これらのシンボルのカテゴリは、ビデオデコーダ(510)の操作を管理するために使用される情報、および、電子デバイス(530)の不可欠な部分ではないが、図5に示されるように電子デバイス(530)に結合され得るレンダリングデバイス(512)(例えば、表示画面)のようなレンダリングデバイスを制御する潜在的情報を含む。レンダリングデバイスのための制御情報は、補助強化情報(SEIメッセージ)またはビデオユーザビリティ情報(VUI)パラメータセットフラグメント(示されていない)の形態であってよい。パーサ(520)は、受信された符号化ビデオシーケンスを構文解析/エントロピーデコードすることができる。符号化ビデオシーケンスのコーディングは、ビデオコーディング技術または規格に合わせることができ、可変長コーディング、ハフマンコーディング、文脈感受性を有するもしくは有さない算術コーディングなどを含む様々な原理に従うことができる。パーサ(520)は、グループに対応する少なくとも1つのパラメータに基づいて、符号化ビデオシーケンスからビデオデコーダ内の画素の少なくとも1つのサブグループのためのサブグループパラメータのセットを抽出することができる。サブグループは、ピクチャ群(GOP)、ピクチャ、タイル、スライス、マクロブロック、コーディングユニット(CU)、ブロック、変換ユニット(TU)、予測ユニット(PU)などを含むことができる。パーサ(520)は、符号化ビデオシーケンスから変換係数、量子化パラメータ値、動きベクトルなどのような情報をも抽出することができる。
パーサ(520)は、シンボル(521)を作成するために、バッファメモリ(515)から受信されたビデオシーケンスに対してエントロピーデコード/構文解析操作を実行することができる。
シンボル(521)の再構築は、符号化ビデオピクチャまたはその一部(例えば、インターおよびイントラピクチャ、インターおよびイントラブロック)のタイプ、および他の要因に応じて、複数の異なるユニットが関与することができる。どのユニットが、どのように関与するかは、パーサ(520)によって符号化ビデオシーケンスから構文解析されたサブグループ制御情報によって制御されることができる。パーサ(520)と以下の複数のユニットとの間のそのようなサブグループ制御情報の流れは、明確にするために示されていない。
すでに述べた機能ブロックに加え、ビデオデコーダ(510)は、以下で説明されるようにいくつかの機能ユニットに概念的に細分されることができる。商業的な制約の下で実際の実施操作にあたっては、これらのユニットの多くは互いに密接に相互作用し、少なくとも一部は互いに統合することができる。しかしながら、開示された主題の説明の目的で、以下の機能ユニットへの概念的な細分は、適切に行われる。
第1のユニットは、スケーラ/逆変換ユニット(551)である。スケーラ/逆変換ユニット(551)は、使用する変換、ブロックサイズ、量子化因子、量子化スケーリング行列などを含む制御情報と、量子化された変換係数をシンボル(521)としてパーサ(520)から受信する。スケーラ/逆変換ユニット(551)は、アグリゲータ(555)に入力可能なサンプル値を含むブロックを出力することができる。
場合によっては、スケーラ/逆変換(551)の出力サンプルは、イントラコーディングブロック、すなわち、予め再構築されたピクチャからの予測情報を使用していないが、現在ピクチャの予め再構築された部分からの予測情報を使用できるブロックに関係することがある。このような予測情報は、イントラピクチャ予測ユニット(552)によって提供されることができる。場合によっては、イントラピクチャ予測ユニット(552)は、現在ピクチャバッファ(558)から取り出された周囲の既に再構築された情報を用いて、再構築中のブロックの同じサイズおよび形状のブロックを生成する。現在ピクチャバッファ(558)は、例えば、一部再構築された現在ピクチャおよび/または完全に再構築された現在ピクチャをバッファリングする。アグリゲータ(555)は、場合によっては、サンプルごとに、イントラ予測ユニット(552)が生成した予測情報を、スケーラ/逆変換ユニット(551)によって提供される出力サンプル情報に追加する。
他の場合では、スケーラ/逆変換ユニット(551)の出力サンプルは、インター符号化された、潜在的に動き補償されたブロックに関係することがある。このような場合、動き補償予測ユニット(553)は、参照ピクチャメモリ(557)にアクセスして、予測に使用されるサンプルを取り出すことができる。取り出されたサンプルをブロックに関係するシンボル(521)に従って動き補償した後、出力サンプル情報を生成するように、これらのサンプルは、アグリゲータ(555)によってスケーラ/逆変換ユニット(551)の出力に追加されることができる(この場合、残差サンプルまたは残差信号と呼ばれる)。動き補償予測ユニット(553)が予測サンプルを取り出す参照ピクチャメモリ(557)内のアドレスは、例えば、X、Y、および参照ピクチャ成分を有し得るシンボル(521)の形態で動き補償予測ユニット(553)に利用可能な動きベクトルによって制御されることができる。動き補償は、サブサンプル正確な動きベクトルが使用中であるときに参照ピクチャメモリ(557)から取り出されたサンプル値の補間、動きベクトル予測メカニズムなどを含むこともできる。
アグリゲータ(555)の出力サンプルは、ループフィルタユニット(556)において様々なループフィルタリング技法を受けられる。ビデオ圧縮技術は、符号化ビデオシーケンス(符号化されたビデオビットストリームとも呼ばれる)に含まれる、パーサ(520)からのシンボル(521)としてループフィルタユニット(556)に利用可能とされたパラメータによって制御されることができ、それに、符号化ピクチャまたは符号化ビデオシーケンスの(デコード順で)前の部分のデコード中に取得されたメタ情報に応じるとともに、予め再構築されループフィルタリングされたサンプル値に応じることもできるループ内フィルタ技術を含むことができる。
ループフィルタユニット(556)の出力は、レンダリングデバイス(512)へ出力されることができるとともに、将来のインターピクチャ予測で使用するために参照ピクチャメモリ(557)に記憶されることができるサンプルストリームであり得る。
特定の符号化ピクチャは、完全に再構築されると、将来の予測のために参照ピクチャとして使用されることができる。例えば、現在ピクチャに対応する符号化ピクチャが完全に再構築され、符号化ピクチャが(例えば、パーサ(520)によって)参照ピクチャとして識別されると、現在ピクチャバッファ(558)は、参照ピクチャメモリ(557)の一部になることができ、次の符号化ピクチャの再構築を開始する前に新しい現在ピクチャバッファを再割当てすることができる。
ビデオデコーダ(510)は、ITU-T Rec.H.265のような規格での所定のビデオ圧縮技術に従ってデコード操作を実行することができる。符号化ビデオシーケンスが、ビデオ圧縮技術または規格のシンタックスと、ビデオ圧縮技術または規格で文書化されたプロファイルとの両方に準拠しているという意味で、符号化ビデオシーケンスは、使用されているビデオ圧縮技術または規格によって指定されるシンタックスに準拠し得る。具体的には、プロファイルは、ビデオ圧縮技術または規格で使用可能なすべてのツールから、特定のツールをそのプロファイルで使用できる唯一のツールとして選択することができる。符号化ビデオシーケンスの複雑さがビデオ圧縮技術または規格のレベルで定義される範囲内にあることも、コンプライアンスに必要である。場合によっては、最大ピクチャサイズ、最大フレームレート、最大再構築サンプルレート(例えば、1秒あたりのメガサンプルで測定される)、最大参照ピクチャサイズなどがレベルによって制限される。レベルによって設定された制限は、場合によっては、符号化ビデオシーケンスでシグナリングされたHRDバッファ管理のための仮想参照デコーダ(HRD)仕様およびメタデータによってさらに制限され得る。
一実施形態では、受信機(531)は、エンコードされたビデオとともに追加の(冗長な)データを受信することができる。追加のデータは、符号化ビデオシーケンスの一部として含まれてもよい。追加のデータは、データを適切にデコードし、および/または、元のビデオデータをより正確に再構築するためにビデオデコーダ(510)によって使用され得る。追加のデータは、例えば、時間的、空間的、または信号対雑音比(SNR)エンハンスメントレイヤ、冗長スライス、冗長ピクチャ、前方向誤り訂正コードなどの形態にされることができる。
図6は、本開示の一実施形態によるビデオエンコーダ(603)のブロック図を示す。ビデオエンコーダ(603)は、電子デバイス(620)に含まれる。電子デバイス(620)は、送信機(640)(例えば、送信回路)を含む。図4の例におけるビデオエンコーダ(403)の代わりにビデオエンコーダ(603)を使用することができる。
ビデオエンコーダ(603)は、ビデオエンコーダ(603)によって符号化されるビデオ画像をキャプチャし得るビデオソース(60l)(図6の例では電子デバイス(620)の一部ではない)からビデオサンプルを受信することができる。他の例では、ビデオソース(601)は、電子デバイス(620)の一部である。
ビデオソース(601)は、ビデオエンコーダ(603)によって符号化されるソースビデオシーケンスを、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、・・・)、任意の色空間(例えば、BT.601 Y CrCB、RGB、・・・)および任意の適切なサンプリング構造(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)であり得るデジタルビデオサンプルストリームの形態で提供し得る。メディア供給システムでは、ビデオソース(601)は、予め準備されたビデオを記憶する記憶装置であり得る。ビデオ会議システムでは、ビデオソース(601)は、ローカル画像情報をビデオシーケンスとしてキャプチャするカメラであり得る。ビデオデータは、順番に見られるときに動きが与えられる複数の個別のピクチャとして提供されてもよい。ピクチャ自体は、画素の空間アレイとして編成されてもよく、各画素は、使用中のサンプリング構造、色空間などに応じて1つまたは複数のサンプルを含むことができる。当業者は、画素とサンプルとの関係を容易に理解することができる。以下の説明ではサンプルを中心に説明する。
一実施形態によれば、ビデオエンコーダ(603)は、リアルタイムでまたはアプリケーションが要求する任意の他の時間制約の下でソースビデオシーケンスのピクチャを符号化し、符号化ビデオシーケンス(643)に圧縮することができる。適切なコーディング速度を実施することは、コントローラ(650)の機能の1つである。一部の実施形態では、コントローラ(650)は、以下で説明される他の機能ユニットを制御し、他の機能ユニットに機能的に結合される。分かりやすくするために、カップリングは示されていない。コントローラ(650)によって設定されるパラメータは、レート制御関連パラメータ(ピクチャスキップ、量子化、レート歪み最適化技法のラムダ値、・・・)、ピクチャサイズ、ピクチャ群(GOP)レイアウト、最大動きベクトル検索範囲などを含むことができる。コントローラ(650)は、特定のシステム設計に対して最適化されたビデオエンコーダ(603)に関する他の適切な機能を有するように構成されることができる。
一部の実施形態では、ビデオエンコーダ(603)は、コーディングループで動作するように構成される。過度に簡略化した説明として、一例では、コーディングループは、ソースコーダ(630)(例えば、符号化対象となる入力ピクチャおよび参照ピクチャに基づくシンボルストリームなどのシンボルの作成を担当する)、およびビデオエンコーダ(603)に埋め込まれた(ローカル)デコーダ(633)を含むことができる。デコーダ(633)は、シンボルを再構築して、(リモート)デコーダが作成するのと同様な方法でサンプルデータを作成する(シンボルと符号化されたビデオビットストリーム間の如何なる圧縮は、開示された主題で考慮されるビデオ圧縮技術では可逆であるためである)。再構築されたサンプルストリーム(サンプルデータ)は参照ピクチャメモリ(634)に入力される。シンボルストリームのデコードにより、デコーダの位置(ローカルまたはリモート)に関係なくビット正確な結果が得られるため、参照ピクチャメモリ(634)のコンテンツもローカルエンコーダとリモートエンコーダの間でビット正確である。言い換えれば、エンコーダの予測部分は、参照ピクチャサンプルとして、デコード中に予測を使用するときにデコーダが「見る」のと全く同じサンプル値を「見る」。参照ピクチャの同期性の該基本原理(および例えばチャネルエラーに起因して同期性を維持できない場合に生じるドリフト)は、いくつかの関連分野にも使用されている。
「ローカル」デコーダ(633)の動作は、前文で図5に関連して既に詳細に説明された、ビデオデコーダ(510)などの「リモート」デコーダの動作と同様であり得る。しかしながら、図5も簡単に参照し、シンボルが使用可能であり、エントロピーコーダ(645)およびパーサ(520)による符号化ビデオシーケンスへのシンボルのエンコード/デコードは可逆であり得るので、バッファメモリ(515)、およびパーサ(520)を含むビデオデコーダ(510)のエントロピーデコード部分は、ローカルデコーダ(633)では完全に実施されない場合がある。
これで分かるように、デコーダに存在する構文解析/エントロピーデコード以外の如何なるデコーダ技術も、対応するエンコーダに実質的に同一の機能的形態で必ず存在する必要がある。このため、開示された主題は、デコーダ操作に焦点を合わせている。エンコーダ技術の説明は、包括的に説明されたデコーダ技術の逆であるため、省略できる。特定の領域でのみ、より詳細な説明が必要であり、以下に提供される。
操作中、一部の例では、ソースコーダ(630)は、「参照ピクチャ」として指定されたビデオシーケンスからの1つまたは複数の予め符号化されたピクチャを参照して入力ピクチャを予測的に符号化する動き補償予測コーディングを実行してもよい。このようにして、コーディングエンジン(632)は、入力ピクチャの画素ブロックと、入力ピクチャへの予測基準として選択され得る参照ピクチャの画素ブロックとの差異を符号化する。
ローカルビデオデコーダ(633)は、ソースコーダ(630)で作成されたシンボルに基づいて、参照ピクチャとして指定され得るピクチャの符号化ビデオデータをデコードすることができる。コーディングエンジン(632)の操作は、有利にはロッシープロセスであり得る。符号化ビデオデータがビデオデコーダ(図6に示されていない)でデコードされ得るとき、再構築されたビデオシーケンスは、通常、いくつかのエラーを伴うソースビデオシーケンスのレプリカであってもよい。ローカルビデオデコーダ(633)は、ビデオデコーダによって参照ピクチャに対して実行され得るデコードプロセスを再現し、再構築された参照ピクチャを参照ピクチャキャッシュ(634)に記憶させることができる。このようにして、ビデオエンコーダ(603)は、遠端ビデオデコーダによって取得される再構築された参照ピクチャと共通するコンテンツ(送信エラー無し)を有する再構築された参照ピクチャのコピーをローカルに記憶し得る。
予測器(635)は、コーディングエンジン(632)の予測検索を実行することができる。つまり、符号化対象となる新しいピクチャについて、予測器(635)は、(候補の参照画素ブロックとしての)サンプルデータ、または、参照ピクチャの動きベクトル、ブロック形状など、新しいピクチャの適切な予測基準として機能し得る特定のメタデータを参照ピクチャメモリ(634)で検索することができる。予測器(635)は、適切な予測基準を見つけるために、サンプルブロック/画素ブロックごとに操作することができる。場合によっては、予測器(635)で取得された検索結果によって決定されるように、入力ピクチャは、参照ピクチャメモリ(634)に記憶された複数の参照ピクチャから引き出された予測基準を有してもよい。
コントローラ(650)は、例えば、ビデオデータをエンコードするために使用されるパラメータおよびサブグループパラメータの設定を含む、ソースコーダ(630)のコーディング操作を管理することができる。
前述のすべての機能ユニットの出力は、エントロピーコーダ(645)においてエントロピーコーディングを受けられる。エントロピーコーダ(645)は、例えば、ハフマンコーディング、可変長コーディング、算術コーディングなどの技術に従ってシンボルを可逆圧縮することにより、様々な機能ユニットによって生成されたシンボルを符号化ビデオシーケンスに変換する。
送信機(640)は、エンコードされたビデオデータを記憶する記憶装置へのハードウェア/ソフトウェアリンクであり得る通信チャネル(660)を介した送信の準備のために、エントロピーコーダ(645)によって作成された符号化ビデオシーケンスをバッファリングすることができる。送信機(640)は、ビデオコーダ(603)からの符号化ビデオデータを、送信されるべき他のデータ、例えば、符号化オーディオデータおよび/または補助データストリーム(ソースは示されていない)とマージすることができる。
コントローラ(650)は、ビデオエンコーダ(603)の操作を管理し得る。コーディング中、コントローラ(650)は、各符号化ピクチャに特定の符号化ピクチャタイプを割り当てることができ、これは、それぞれのピクチャに適用され得るコーディング技法に影響を及ぼし得る。例えば、ピクチャは、多くの場合、次のピクチャタイプのいずれかとして割り当てられ得る。
イントラピクチャ(Iピクチャ)は、予測のソースとしてシーケンス内の他のいかなるピクチャを使用せずに符号化および復号され得るものであり得る。一部のビデオコーデックは、例えば、インディペンデントデコーダリフレッシュ(Independent Decoder Refresh、「IDR」)ピクチャを含む、異なるタイプのイントラピクチャを許容する。当業者は、Iピクチャの変形およびそれらのそれぞれの用途および特徴を知っている。
予測ピクチャ(Pピクチャ)は、各ブロックのサンプル値を予測するために最大1つの動きベクトルおよび参照インデックスを使用したイントラ予測またはインター予測により符号化および復号され得るものであり得る。
双方向予測ピクチャ(Bピクチャ)は、各ブロックのサンプル値を予測するために最大2つの動きベクトルおよび参照インデックスを使用したイントラ予測またはインター予測により符号化および復号され得るものであり得る。同様に、多重予測ピクチャは、単数のブロックの再構築のために2つを超えた参照ピクチャおよび関連メタデータを使用することができる。
ソースピクチャは、一般に、複数のサンプルブロック(例えば、それぞれ、4×4、8×8、4×8、または16×16サンプルのブロック)に空間的に細分され、ブロック単位で符号化され得る。ブロックは、ブロックのそれぞれのピクチャに適用されるコーディング割り当てによって決定された他の(既に符号化された)ブロックを参照して予測的に符号化され得る。例えば、Iピクチャのブロックは、非予測的に符号化されてもよく、或いは、同一のピクチャの既に符号化されたブロック(空間予測またはイントラ予測)を参照して予測的に符号化されてもよい。Pピクチャの画素ブロックは、1つの予め符号化された参照ピクチャを参照して、空間予測を介してまたは時間予測を介して予測的に符号化され得る。Bピクチャのブロックは、1つまたは2つの予め符号化された参照ピクチャを参照して、空間予測を介してまたは時間予測を介して予測的に符号化され得る。
ビデオエンコーダ(603)は、ITU-T Rec.H.265などの予め設定されたビデオコーディング技術または規格に従って、コーディング操作を実行することができる。操作中、ビデオエンコーダ(603)は、入力ビデオシーケンスの時間的および空間的冗長性を利用する予測コーディング操作を含む、様々な圧縮操作を実行することができる。したがって、符号化ビデオデータは、使用されるビデオコーディング技術または規格によって指定されたシンタックスに準拠する場合がある。
一実施形態では、送信機(640)は、エンコードされたビデオとともに追加のデータを送信することができる。ソースコーダ(630)は、このようなデータを符号化ビデオシーケンスの一部として含み得る。追加のデータは、時間的/空間的/SNRエンハンスメントレイヤ、冗長なピクチャやスライスなどの他の形態での冗長データ、SEIメッセージ、VUIパラメータセットフラグメントなどを含み得る。
ビデオは、時系列で複数のソースピクチャ(ビデオピクチャ)としてキャプチャされ得る。イントラピクチャ予測(「イントラ予測」と略されることが多い)は、所定のピクチャにおける空間相関を利用し、インターピクチャ予測は、ピクチャ間の(時間的または他の)相関を利用する。一例では、現在ピクチャと呼ばれるエンコード/デコード中の特定のピクチャは、ブロックに分割される。現在ピクチャにおけるブロックが、ビデオにおける予め符号化され、まだバッファリングされている参照ピクチャの参照ブロックに類似している場合、現在ピクチャにおけるブロックは、動きベクトルと呼ばれるベクトルによって符号化されることができる。動きベクトルは、参照ピクチャの参照ブロックを指し、複数の参照ピクチャが使用されている場合、参照ピクチャを識別する第3次元を有することができる。
一部の実施形態では、インターピクチャ予測において双予測法を使用することができる。双予測法によれば、ビデオにおける現在ピクチャよりもデコード順序がそれぞれ前である(ただし、表示順序でそれぞれ過去および未来にあり得る)第1の参照ピクチャおよび第2の参照ピクチャのような2つの参照ピクチャを使用する。現在ピクチャ内のブロックは、第1の参照ピクチャ内の第1の参照ブロックを指す第1の動きベクトル、および第2の参照ピクチャ内の第2の参照ブロックを指す第2の動きベクトルによって符号化されることができる。ブロックは、第1の参照ブロックと第2の参照ブロックとの組み合わせによって予測されることができる。
さらに、マージモード技法をインターピクチャ予測に適用して、コーディング効率を向上させることができる。
本開示の一部の実施形態によれば、インターピクチャ予測およびイントラピクチャ予測などの予測は、ブロック単位で実行される。例えば、HEVC規格によれば、一連のビデオピクチャ内のピクチャは、圧縮のためにコーディングツリーユニット(CTU)に分割され、ピクチャ内のCTUは、64×64画素、32×32画素、または16×16画素など、同一のサイズを有する。一般に、CTUは、1つの輝度CTBと2つの彩度CTBである3つのコーディングツリーブロック(CTB)を含む。各CTUは、1つまたは複数のコーディングユニット(CU)に再帰的に四分木分割されることができる。例えば、64×64画素のCTUは、1つの64×64画素のCU、4つの32×32画素のCU、または16つの16×16画素のCUに分割されることができる。一例では、各CUを解析して、インター予測タイプまたはイントラ予測タイプなど、CUの予測タイプを決定する。CUは、時間的および/または空間的予測可能性に応じて、1つまたは複数の予測ユニット(PU)に分割される。通常、各PUは、1つの輝度予測ブロック(PB)と2つの彩度PBを含む。一実施形態では、コーディング(エンコード/デコード)における予測操作は、予測ブロックの単位で実行される。輝度予測ブロックを予測ブロックの例として用いて、予測ブロックは、8×8画素、16×16画素、8×16画素、16×8画素などの画素の値(例えば、輝度値)の行列を含む。
図7は、本開示の他の実施形態によるビデオエンコーダ(703)の図を示す。ビデオエンコーダ(703)は、一連のビデオピクチャ内の現在ビデオピクチャにおけるサンプル値の処理ブロック(例えば、予測ブロック)を受信し、処理ブロックを、符号化ビデオシーケンスの一部である符号化ピクチャにエンコードするように構成される。一例では、図4の例におけるビデオエンコーダ(403)の代わりにビデオエンコーダ(703)を使用する。
HEVCの例では、ビデオエンコーダ(703)は、8×8サンプルのような予測ブロックなどの処理ブロックのサンプル値の行列を受信する。ビデオエンコーダ(703)は、例えばレート歪み最適化を用いて、処理ブロックをイントラモード、インターモード、または双予測モードにより最も良く符号化するか否かを決定する。処理ブロックがイントラモードで符号化されようとする場合、ビデオエンコーダ(703)は、イントラ予測法を用いて処理ブロックを符号化ピクチャにエンコードすることができる。また、処理ブロックがインターモードまたは双予測モードで符号化されようとする場合、ビデオエンコーダ(703)は、それぞれインター予測または双予測法を用いて、処理ブロックを符号化ピクチャにエンコードすることができる。特定のビデオコーディング技術では、マージモードは、予測器外の符号化動きベクトル成分の利便を介することなく、1つまたは複数の動きベクトル予測器から動きベクトルを導出するインターピクチャ予測サブモードであり得る。特定の他のビデオコーディング技術では、対象ブロックに適用可能な動きベクトル成分が存在し得る。一例では、ビデオエンコーダ(703)は、処理ブロックのモードを決定するためのモード決定モジュール(図示せず)などの他の構成要素を含む。
図7の例では、ビデオエンコーダ(703)は、図7に示すように互いに結合されたインターエンコーダ(730)、イントラエンコーダ(722)、残差算出部(723)、スイッチ(726)、残差エンコーダ(724)、統括制御部(721)およびエントロピーエンコーダ(725)を含む。
インターエンコーダ(730)は、現在ブロック(例えば、処理ブロック)のサンプルを受信し、該ブロックを参照ピクチャ内の1つまたは複数の参照ブロック(例えば、前のピクチャおよび後のピクチャ内のブロック)と比較し、インター予測情報(例えば、インターエンコード法による冗長情報の記述、動きベクトル、マージモード情報)を生成し、インター予測情報に基づいて任意の適切な技法を用いてインター予測結果(例えば、予測ブロック)を算出するように構成される。一部の例では、参照ピクチャは、エンコードされたビデオ情報に基づいてデコードされたデコード参照ピクチャである。
イントラエンコーダ(722)は、現在ブロック(例えば、処理ブロック)のサンプルを受信し、場合によっては該ブロックを同一のピクチャで既に符号化されたブロックと比較し、変換後に、量子化された係数を生成し、場合によってはイントラ予測情報(例えば、1つまたは複数のイントラエンコード法によるイントラ予測方向情報)をも生成するように構成される。一例では、イントラエンコーダ(722)は、イントラ予測情報および同一のピクチャ内の参照ブロックに基づいてイントラ予測結果(例えば、予測ブロック)も算出する。
統括制御部(721)は、統括制御データを決定し、統括制御データに基づいてビデオエンコーダ(703)の他の構成要素を制御するように構成される。一例では、統括制御部(721)は、ブロックのモードを決定し、モードに基づいて制御信号をスイッチ(726)に提供する。例えば、モードがイントラモードである場合、統括制御部(721)は、残差算出部(723)が使用するためのイントラモード結果を選択するようにスイッチ(726)を制御するとともに、イントラ予測情報を選択してイントラ予測情報をビットストリームに含ませるようにエントロピーエンコーダ(725)を制御する。また、モードがインターモードである場合、統括制御部(721)は、残差算出部(723)が使用するためのインター予測結果を選択するようにスイッチ(726)を制御するとともに、インター予測情報を選択してインター予測情報をビットストリームに含ませるようにエントロピーエンコーダ(725)を制御する。
残差算出部(723)は、受信されたブロックとイントラエンコーダ(722)またはインターエンコーダ(730)から選択された予測結果との差(残差データ)を算出するように構成される。残差エンコーダ(724)は、残差データに基づいて動作し、残差データをエンコードして変換係数を生成するように構成される。一例では、残差エンコーダ(724)は、残差データを空間領域から周波数領域へと変換し、変換係数を生成するように構成される。その後、変換係数は量子化処理を受けて、量子化された変換係数が得られる。様々な実施形態では、ビデオエンコーダ(703)は、残差デコーダ(728)をも含む。残差デコーダ(728)は、逆変換を実行し、デコード残差データを生成するように構成される。デコード残差データは、イントラエンコーダ(722)およびインターエンコーダ(730)によって適切に使用されることができる。例えば、インターエンコーダ(730)は、デコード残差データよびインター予測情報に基づいて、デコードブロックを生成することができ、イントラエンコーダ(722)は、デコード残差データおよびイントラ予測情報に基づいて、デコードブロックを生成することができる。一部の例では、デコードブロックは、デコードピクチャを生成するように適切に処理され、デコードピクチャは、メモリ回路(図示せず)にバッファリングされ、参照ピクチャとして使用されることができる。
エントロピーエンコーダ(725)は、ビットストリームをフォーマットしてエンコードブロックを生成するように構成される。エントロピーエンコーダ(725)は、HEVC規格などの適切な規格に従う様々な情報をビットストリームに含ませるように構成される。一例では、エントロピーエンコーダ(725)は、統括制御データ、選択された予測情報(例えば、イントラ予測情報またはインター予測情報)、残差情報、および他の適切な情報をビットストリームに含ませるように構成される。開示された主題によれば、インターモードまたは双予測モードのマージサブモードでブロックを符号化する場合、残差情報はないことに留意されたい。
図8は、本開示の他の実施形態によるビデオデコーダ(810)の図を示す。ビデオデコーダ(810)は、符号化ビデオシーケンスの一部である符号化ピクチャを受信し、符号化ピクチャをデコードして、再構築ピクチャを生成するように構成される。一例では、図4の例におけるビデオデコーダ(410)の代わりにビデオデコーダ(810)を使用する。
図8の例では、ビデオデコーダ(810)は、図8に示されるように互いに結合されたエントロピーデコーダ(871)、インターデコーダ(880)、残差デコーダ(873)、再構築モジュール(874)、およびイントラデコーダ(872)を含む。
エントロピーデコーダ(871)は、符号化ピクチャから、符号化ピクチャを構成するシンタックス要素を表す特定のシンボルを再構築するように構成されることができる。このようなシンボルは、例えば、ブロックが符号化されるモード(例えば、イントラモード、インターモード、双予測モード、後の2つのマージサブモードまたは他のサブモード)、それぞれイントラデコーダ(872)またはインターデコーダ(880)による予測に使用される特定のサンプルまたはメタデータを識別できる予測情報(例えば、イントラ予測情報またはインター予測情報)、例えば、量子化された変換係数の形態での残差情報などを含むことができる。一例では、予測モードがインターまたは双予測モードであれば、インター予測情報は、インターデコーダ(880)に提供される。また、予測タイプがイントラ予測タイプであれば、イントラ予測情報は、イントラデコーダ(872)に提供される。残差情報は、逆量子化を施されることができ、残差デコーダ(873)に提供される。
インターデコーダ(880)は、インター予測情報を受信し、インター予測情報に基づいてインター予測結果を生成するように構成される。
イントラデコーダ(872)は、イントラ予測情報を受信し、イントラ予測情報に基づいて予測結果を生成するように構成される。
残差デコーダ(873)は、逆量子化を実行して、逆量子化された変換係数を抽出し、逆量子化された変換係数を処理して残差を周波数領域から空間領域に変換するように構成される。残差デコーダ(873)は、(量子化器パラメータ(QP)を含めるように)特定の制御情報をも必要とする場合があり、この情報は、エントロピーデコーダ(871)によって提供されてもよい(データパスは、低ボリューム制御情報のみであり得るため、示されていない)。
再構築モジュール(874)は、空間領域において、残差デコーダ(873)によって出力された残差と、(場合によってはインターまたはイントラ予測モジュールによって出力される)予測結果とを組み合わせて、再構築ビデオの一部となり得る再構築ピクチャの一部であり得る再構築ブロックを形成するように構成される。なお、視覚的品質を改善するために、デブロッキング操作などの他の適切な操作を実行することができる。
なお、ビデオエンコーダ(403)、(603)および(703)とビデオデコーダ(410)、(510)および(810)は、任意の適切な技法を用いて実施されることができる。一実施形態では、ビデオエンコーダ(403)、(603)および(703)とビデオデコーダ(410)、(510)および(810)は、1つまたは複数の集積回路を用いて実施されることができる。他の実施形態では、ビデオエンコーダ(403)、(603)および(703)とビデオデコーダ(410)、(510)および(810)は、ソフトウェア命令を実行する1つまたは複数のプロセッサを用いて実施されることができる。
イントラコーディングのための、例えば、一次変換および/または二次変換で使用される、非分離変換に関するビデオコーディング技術が開示されている。非分離変換は、任意の適切なビデオコーディングフォーマットまたは規格において適用可能である。ビデオコーディングフォーマットは、AOMedia Video 1(AV1)またはAV1を超える次世代のAOMedia Videoフォーマットのような、インターネット上のビデオ伝送のために設計されたオープンビデオコーディングフォーマットを含み得る。また、ビデオコーディング規格は、高効率ビデオコーディング(High Efficiency Video Coding、HEVC)規格や、HEVCを超える次世代のビデオコーディング(例えば、多用途ビデオコーディング(Versatile Video Coding、VVC))などを含み得る。
様々なイントラ予測モードは、イントラ予測において、例えばAV1、VVCなどにおいて使用され得る。一実施形態では、例えばAV1において、方向性イントラ予測が使用される。一例では、例えばオープンビデオコーディングフォーマットVP9では、45°から207°までの8つの角度に対応する8通りの方向性モードが使用される。方向性テクスチャのより多様な空間的冗長性を利用するために、例えばAV1では、方向性モード(方向性イントラモード、方向性イントラ予測モード、角度モードとも呼ばれる)は、図9に示すように、より細かい粒度の角度セットに拡張されることができる。
図9は、本開示の一実施形態によるコーディングブロック(CB)(910)の公称モードの一例を示す。特定の角度(公称角度と呼ばれる)は、公称モードに対応することができる。一例では、8つの公称角度(または公称イントラ角度)(901)~(908)は、8通りの公称モード(例えば、V_PRED、H_PRED、D45_PRED、D135_PRED、D113_PRED、D157_PRED、D203_PRED、およびD67_PRED)に対応する。また、8つの公称角度(901)~(908)および8通りの公称モードは、それぞれ、V_PRED、H_PRED、D45_PRED、D135_PRED、D113_PRED、D157_PRED、D203_PRED、およびD67_PREDと呼ばれることができる。さらに、各公称角度は、複数のより細かい角度(例えば、7つのより細かい角度)に対応することができ、したがって、56個の角度(または予測角度)または56通りの方向性モード(または角度モード、方向性イントラ予測モード)は、例えば、AV1において使用されることができる。各予測角度は、公称角度および角度オフセット(または角度デルタ)によって表されることができる。角度オフセットは、オフセット整数I(例えば、-3、-2、-1、0、1、2、または3)にステップサイズ(例えば、3°)を乗算することによって取得されることができる。一例では、予測角度は、公称角度と角度オフセットの合計に等しい。一例では、例えばAV1において、公称モード(例えば、8通りの公称モード(901)~(908))は、特定の非角度平滑モード(例えば、後述するDCモード、PAETHモード、SMOOTHモード、垂直SMOOTHモード、および水平SMOOTHモード)とともにシグナリングされることができる。続いて、現在の予測モードが方向性モード(または角度モード)である場合、公称角度に対応する角度オフセット(例えば、オフセット整数I)を示すインデックスをさらにシグナリングすることができる。一例では、汎用的な方法を介して方向性予測モードを実施するために、AV1で使用されるような56通りの方向性モードは、各画素を参照サブ画素位置に投影し、2タップバイリニアフィルタによって参照画素を補間することができる統一された方向性予測器で実施される。
非方向性平滑イントラ予測器(非方向性平滑イントラ予測モード、非方向性平滑モード、非角度平滑モードとも呼ばれる)は、CBのイントラ予測に使用されることができる。いくつかの例では(例えば、AV1では)、5通りの非方向性平滑イントラ予測モードは、DCモードまたはDC予測器(例えば、DC)、PAETHモードまたはPAETH予測器(例えば、PAETH)、SMOOTHモードまたはSMOOTH予測器(例えば、SMOOTH)、垂直SMOOTHモード(SMOOTH_Vモード、SMOOTH_V予測器、SMOOTH_Vと呼ばれる)、および水平SMOOTHモード(SMOOTH_Hモード、SMOOTH_H予測器、SMOOTH_Hと呼ばれる)を含む。
図10は、本開示の態様による、非方向性平滑イントラ予測モード(例えば、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、およびSMOOTH_Hモード)に関する例を示す。DC予測器に基づいてCB(1000)内のサンプル(1001)を予測するために、左隣接サンプル(1012)の第1の値と、上隣接サンプル(またはトップ隣接サンプル)(1011)の第2の値との平均値を予測器として使用することができる。
PAETH予測器に基づいてサンプル(1001)を予測するために、左隣接サンプル(1012)の第1の値、トップ隣接サンプル(1011)の第2の値、および左上隣接サンプル(1013)の第3の値を取得することができる。そして、式1を用いて参照値を求める。
参照値=第1の値+第2の値-第3の値 (式1)
参照値に最も近い第1の値、第2の値、第3の値のいずれかをサンプル(1001)の予測器として設定することができる。
SMOOTH_Vモード、SMOOTH_Hモード、およびSMOOTHモードは、それぞれ、垂直方向、水平方向、および垂直方向と水平方向の平均の二次補間を用いて、CB(1000)を予測することができる。SMOOTH予測器に基づいてサンプル(1001)を予測するために、第1の値、第2の値、右サンプル(1014)の値、およびボトムサンプル(1016)の値の平均(例えば、加重組み合わせ)を使用することができる。様々な例では、右サンプル(1014)およびボトムサンプル(1016)は再構築されていないため、右上隣接サンプル(1015)の値および左下隣接サンプル(1017)の値は、それぞれ右サンプル(1014)およびボトムサンプル(1016)の値を置き換えることができる。したがって、第1の値、第2の値、右上隣接サンプル(1015)の値、および左下隣接サンプル(1017)の値の平均(例えば、加重組み合わせ)を、SMOOTH予測器として使用することができる。SMOOTH_V予測器に基づいてサンプル(1001)を予測するために、トップ隣接サンプル(1011)の第2の値と左下隣接サンプル(1017)の値の平均(例えば、加重組み合わせ)を使用することができる。SMOOTH_H予測器に基づいてサンプル(1001)を予測するために、左隣接サンプル(1012)の第1の値と右上隣接サンプル(1015)の値の平均(例えば、加重組み合わせ)を使用することができる。
図11は、本開示の一実施形態による再帰的フィルタリングベースのイントラ予測器(フィルタイントラモード、または再帰的フィルタリングモードとも呼ばれる)の一例を示す。エッジ上の参照との減衰する空間相関をキャプチャするために、フィルタイントラモードをCB(1100)に使用することができる。一例では、CB(1100)は、ルマブロックである。ルマブロック(1100)は、複数のパッチ(例えば、8つの4×2パッチB0~B7)に分割されることができる。パッチB0~B7のそれぞれは、複数の隣接サンプルを有することができる。例えば、パッチB0は、4つのトップ隣接サンプルR01~R04、2つの左隣接サンプルR05~R06、および、左上隣接サンプルR00を含む7つの隣接サンプル(または7つの近傍)R00~R06を有する。同様に、パッチB7は、4つのトップ隣接サンプルR71~R74、2つの左隣接サンプルR75~R76、および左上隣接サンプルR70を含む7つの隣接サンプルR70~R76を有する。
いくつかの例では、例えばAV1のために、複数(例えば5つ)のフィルタイントラモード(または複数の再帰的フィルタリングモード)が事前設計されている。各フィルタイントラモードは、対応する4×2パッチ(例えば、B0)内のサンプル(または画素)と、4×2パッチB0に隣接する7つの近傍(例えば、R00~R06)との間の相関を反映する8つの7タップフィルタのセットで表されることができる。7タップフィルタの重み係数は、位置に依存することができる。パッチB0~B7のそれぞれについて、7つの近傍(例えば、B0についてはR00~R06、B7についてはR70~R76)は、対応するパッチ内のサンプルを予測するために使用されることができる。一例では、近傍R00~R06は、パッチB0内のサンプルを予測するために使用される。一例では、近傍R70~R76は、パッチB7内のサンプルを予測するために使用される。パッチB0のようなCB(1100)内の特定のパッチについては、7つの近傍(例えば、R00~R06)のすべてが既に再構築されている。CB(1100)内の他のパッチについては、7つの近傍のうち少なくとも1つは再構築されていないため、直近の近傍の予測値(または直近の近傍の予測サンプル)を基準として使用することができる。例えば、パッチB7の7つの近傍R70~R76は再構築されていないので、直近の近傍の予測サンプルを使用することができる。
クロマサンプルは、ルマサンプルから予測されることができる。一実施形態では、ルマに基づくクロマ(chroma from luma)モード(例えば、CfLモード、CfL予測器)は、クロマサンプル(または画素)を、一致する再構築されたルマサンプル(または画素)の線形関数としてモデリングできるクロマのみのイントラ予測器である。例えば、CfL予測は、以下のように式2を用いて表現されることができる。
CfL (α)=α L+D (式2)
ここで、Lはルマ成分のAC寄与率を表し、αは線形モデルのスケーリングパラメータを表し、Dはクロマ成分のDC寄与率を表す。一例では、再構築されたルマ画素は、クロマ解像度に基づいてサブサンプリングされ、平均値が減算されてAC寄与率(例えば、L)が形成される。AC寄与率からクロマAC成分を近似するために、デコーダに対してスケーリングパラメータαを計算するよう求める代わりに、いくつかの例では、例えば、AV1において、CfLモードはオリジナルのクロマ画素に基づいてスケーリングパラメータαを決定し、ビットストリームでスケーリングパラメータαをシグナリングすることで、デコーダの複雑さを軽減し、より正確な予測を得ることができる。クロマ成分のDC寄与率は、イントラDCモードを用いて算出されることができる。イントラDCモードは、ほとんどのクロマコンテンツに対して十分であり、成熟した高速実装が可能である。
マルチラインイントラ予測は、イントラ予測のために、より多くの参照線を使用することができる。参照線は、ピクチャ内の複数のサンプルを含み得る。一例では、参照線は、行のサンプルおよび列のサンプルを含む。一例では、エンコーダは、イントラ予測器を生成するために使用される参照線を決定し、シグナリングすることができる。参照線を示すインデックス(参照線インデックスとも呼ばれる)は、イントラ予測モードの前にシグナリングされることができる。一例では、非ゼロの参照線インデックスがシグナリングされた場合、MPMのみが許可される。図12は、CB(1210)のための4つの参照線の一例を示す。図12を参照すると、参照線は、最大で6つのセグメント、例えばセグメントA~Fと、左上参照サンプルとを含み得る。例えば、参照線0は、セグメントBおよびEと左上参照サンプルとを含む。例えば、参照線3は、セグメントA~Fと左上参照サンプルとを含む。セグメントAおよびFは、それぞれセグメントBおよびEからの最近接サンプルでパディングされることができる。いくつかの例では、例えば、HEVCにおいて、1つの参照線(例えば、CB(1210)に隣接する参照線0)のみがイントラ予測に使用される。いくつかの例では、例えば、VVCにおいて、複数の参照線(例えば、参照線0、1、3)がイントラ予測に使用される。
一次変換、二次変換などの変換は、CBに適用されることができる。変換は、非分離変換または分離型変換であり得る。本開示の態様によれば、変換(例えば、一次変換、二次変換)は、非分離変換であり得る。非分離変換の適用は、4×4入力ブロック(または入力行列)Xを一例として用いて、以下のように説明することができる(式3に示す)。4×4非分離変換を適用するために、4×4入力ブロックXは、式3~4に示すように、ベクトル
Figure 0007285954000001
で表されることができる。
Figure 0007285954000002
非分離変換は、
Figure 0007285954000003
として計算されることができる。ここで、
Figure 0007285954000004
は変換係数ベクトルを示し、Tは16×16変換行列である。16×1係数ベクトル
Figure 0007285954000005
は、その後、4×4入力ブロックに対する走査順序(例えば、水平走査順序、垂直走査順序、ジグザグ走査順序、または対角走査順序)を用いて、4×4出力ブロック(または出力行列、係数ブロック)に再編成されることができる。より小さなインデックスを持つ変換係数は、4×4係数ブロックにおいて小さな走査インデックスで配置されることができる。
本開示の態様によれば、縮小非分離変換は、一次変換で使用されることができる。また、縮小非分離変換は、低周波非分離変換(LFNST)などの二次変換で使用されることができる。
非分離二次変換は、CBに適用されることができる。いくつかの例では、例えば、VVCにおいて、LFNSTは、図13~14に示すように、順方向一次変換と量子化との間(例えば、エンコーダ側で)、および、逆量子化と逆方向一次変換との間(例えば、デコーダ側で)に適用される。一例では、LFNSTは、縮小二次変換(RST)と呼ばれる。
図13~14は、それぞれ、16×64変換(または、変換が順方向二次変換であるか逆方向二次変換であるかに応じて64×16変換)および16×48変換(または、変換が順方向二次変換であるか逆方向二次変換であるかに応じて48×16変換)を用いた2つの変換コーディングプロセス(1300)および(1400)の例を示す。図13を参照すると、プロセス(1300)において、エンコーダ側では、まず、ブロック(例えば、残差ブロック)に対して順方向一次変換(1310)を実行して、係数ブロック(1313)を取得することができる。続いて、順方向二次変換(または順方向LFNST)(1312)を、係数ブロック(1313)に適用することができる。順方向二次変換(1312)では、係数ブロック(1313)の左上隅にある4×4サブブロックA~Dの64個の係数を64長のベクトルで表すことができ、64長のベクトルに64×16(すなわち、幅64および高さ16)の変換行列を乗算することで16長のベクトルを得ることができる。16長のベクトル内の要素は、係数ブロック(1313)の左上の4×4サブブロックAに埋め戻される。サブブロックB~D内の係数はゼロであり得る。順方向二次変換(1312)の後結果として得られた係数は、次に、ステップで量子化され(1314)、エントロピー符号化されて、ビットストリーム内に符号化ビットを生成する(1316)。
符号化ビットは、デコーダ側で受信され、エントロピーデコードされ、続いて逆量子化(1324)されて、係数ブロック(1323)を生成することができる。逆方向RST8×8などの逆方向二次変換(または逆方向LFNST)(1322)を実行して、例えば、左上の4×4サブブロックEにおける16個の係数から64個の係数を取得することができる。また、64個の係数を4×4サブブロックE~Hに埋め戻すことができる。さらに、逆方向二次変換(1322)後の係数ブロック(1323)内の係数を逆方向一次変換(1320)で処理して、復元された残差ブロックを取得することができる。
図14の例のプロセス(1400)は、順方向二次変換(1412)の間に、より少ない(すなわち、48個の)係数が処理されることを除いて、プロセス(1300)と同様である。具体的には、サブブロックA~C内の48個の係数は、48×16のサイズのより小さい変換行列で処理される。48×16のより小さい変換行列を使用することで、変換行列を記憶するためのメモリサイズおよび計算回数(例えば、乗算、加算、減算など)を減らすことができ、したがって、算出の複雑さを軽減することができる。
一例では、CBのブロックサイズに応じて、4×4非分離変換(例えば、4×4 LFNST)または8×8非分離変換(例えば、8×8 LFNST)を適用する。CBのブロックサイズは、幅、高さなどを含み得る。例えば、4×4 LFNSTは、幅と高さの最小値が8のような閾値よりも小さい(例えば、min(幅,高さ)<8)CBに対して適用される。例えば、8×8 LFNSTは、幅と高さの最小値が4のような閾値よりも大きい(例えば、min(幅,高さ)>4)CBに対して適用される。
非分離変換(例えば、LFNST)は、直接行列乗算アプローチに基づくことができ、したがって、反復せずにシングルパスで実施することができる。非分離変換行列の次元を縮小し、算出上の複雑さおよび変換係数を記憶するためのメモリ空間を最小化するために、LFNSTでは、縮小非分離変換法(またはRST)を使用することができる。したがって、縮小非分離変換では、N(例えば、8×8非分離二次変換(NSST)ではNは64)次元のベクトルを、異なる空間におけるR次元のベクトルにマッピングすることができ、ここで、N/R(R<N)は縮小係数である。したがって、RST行列は、N×N行列の代わりに、式5で説明されるように、R×N行列となる。
Figure 0007285954000006
式5において、R×N変換行列のR行は、N次元空間のR基底である。逆方向変換行列は、順方向変換で使用される変換行列(例えば、TR×N)の転置であり得る。8×8LFNSTの場合、縮小係数4を適用することができ、図13に示すように、8×8非分離変換で使用される64×64直接行列を16×64直接行列に縮小することができる。あるいはまた、4よりも大きい縮小係数を適用してもよく、図14に示すように、8×8非分離変換で使用される64×64直接行列を16×48直接行列に縮小することができる。したがって、48×16逆方向RST行列をデコーダ側で使用して、8×8左上領域のコア(一次)変換係数を生成することができる。
図14を参照すると、同じ変換セット構成を有する16×64行列の代わりに16×48行列が適用される場合、16×48行列への入力は、右下の4×4ブロックDを除く左上の8×8ブロック内の3つの4×4ブロックA、B、Cからの48個の入力データを含んでいる。次元の縮小に従って、LFNST行列を記憶するためのメモリ使用量を、例えば、10KBから8KBに、最小限の性能低下で減らすことができる。
複雑さを軽減するために、LFNSTは、第1の係数サブグループ外の係数が非有意の場合に適用できるように制限されることができる。一例では、LFNSTは、第1の係数サブグループ外のすべての係数が非有意の場合にのみ適用できるように制限されることができる。図13~14を参照すると、第1の係数サブグループは、左上ブロックEに対応しており、したがって、ブロックE外にある係数は、非有意である。
一例では、LFNSTが適用された場合、一次のみの変換係数は非有意である(例えば、ゼロ)。一次のみの変換係数は、二次変換を伴わない一次変換から得られる変換係数を指すことができる。したがって、LFNSTインデックスシグナリングは、最後有意位置を条件とすることができ、その結果、LFNSTにおける余分な係数走査を回避することができる。いくつかの例では、余分な係数走査は、特定の位置で有意変換係数をチェックするために使用される。一例では、LFNSTの最悪の取り扱いは、例えば、画素あたりの乗算に関しては、4×4ブロックと8×8ブロックの非分離変換を、それぞれ8×16変換と8×48変換に制限する。上記の場合、LFNSTが適用されると、最後有意走査位置は8より小さくすることができる。その他のサイズの場合、LFNSTが適用されると、最後有意走査位置は16よりも小さくすることができる。4×NとN×4(Nが8より大きい)のCBの場合、制限は、CBの左上の4×4領域にLFNSTが適用されることを意味することができる。一例では、この制限は、CBの左上の4×4領域のみに、LFNSTが一度だけ適用されることを意味する。一例では、LFNSTが適用されたときに、すべての一次のみの係数が非有意である(例えば、ゼロ)ので、一次変換のための演算回数が減少する。エンコーダの観点からは、LFNST変換がテストされた場合、変換係数の量子化を大幅に簡素化することができる。レート歪み最適化による量子化は、例えば走査順序で最初の16個の係数に対して最大で行うことができ、残りの係数はゼロにすることができる。
LFNST変換(例えば、変換カーネルまたは変換行列)は、以下で説明するように選択されることができる。一実施形態では、複数の変換セットを使用することができ、1つまたは複数の非分離変換行列(またはカーネル)は、LFNSTにおける複数の変換セットのそれぞれに含まれ得る。本開示の態様によれば、複数の変換セットから変換セットを選択することができ、変換セット内の1つまたは複数の非分離変換行列から非分離変換行列を選択することができる。
表1は、本開示の一実施形態によるイントラ予測モードから複数の変換セットへの例示的なマッピングを示す。マッピングは、イントラ予測モードと複数の変換セットとの間の関係を示す。表1に示されるような関係は、事前定義されることができ、エンコーダおよびデコーダに記憶されることができる。
表1を参照すると、複数の変換セットは、4つの変換セット、例えば、0から3までの変換セットインデックス(例えば、Tr. set index)でそれぞれ表される変換セット0から3を含む。インデックス(例えば、IntraPredMode)は、イントラ予測モードを示すことができ、変換セットインデックスは、インデックスと表1に基づいて取得されることができる。したがって、変換セットはイントラ予測モードに基づいて決定されることができる。一例では、3つのクロスコンポーネント線形モデル(CCLM)モード(例えば、INTRA_LT_CCLM、INTRA_T_CCLMまたはINTRA_L_CCLM)のうちの1つがCBに使用されると(例えば、81<=IntraPredMode<=83)、CBに対して変換セット0が選択される。
上述のように、各変換セットは、1つまたは複数の非分離変換行列を含み得る。1つまたは複数の非分離変換行列のうちの1つは、明示的にシグナリングされるLFNSTインデックスによって選択され得る。LFNSTインデックスは、例えば、変換係数をシグナリングした後に、イントラ符号化されたCU(例えば、CB)ごとに1回、ビットストリームでシグナリングされることができる。一実施形態では、各変換セットは、2つの非分離変換行列(カーネル)を含み、選択された非分離二次変換候補は、2つの非分離変換行列のうちの1つであり得る。いくつかの例では、LFNSTは、CBに適用されない(例えば、変換スキップモードで符号化されたCB、またはCBの非ゼロ係数の数が閾値よりも小さい)。一例では、LFNSTがCBに適用されない場合、CBに対してLFNSTインデックスをシグナリングしない。LFNSTインデックスのデフォルト値は、ゼロであり、シグナリングされない場合があり、これは、CBにLFNSTを適用しないことを示す。
Figure 0007285954000007
一実施形態では、LFNSTは、第1の係数サブグループ外のすべての係数が非有意の場合にのみ適用できるように制限され、LFNSTインデックスのコーディングは、最後有意係数の位置に依存することができる。LFNSTインデックスは、コンテキスト符号化されることができる。一例では、LFNSTインデックスのコンテキストコーディングは、イントラ予測モードに依存せず、第1のbinのみがコンテキスト符号化される。LFNSTは、イントラスライスまたはインタースライス内のイントラ符号化されたCUに適用されることができ、ルマ成分とクロマ成分の両方に適用されることができる。デュアルツリーが有効な場合、ルマ成分とクロマ成分のLFNSTインデックスは別々にシグナリングされることができる。インタースライスの場合(例えば、デュアルツリーが無効な場合)、ルマ成分とクロマ成分の両方に対して、単一のLFNSTインデックスをシグナリングして使用することができる。
イントラサブパーティション(Intra sub-partition、ISP)コーディングモードを使用することができる。ISPコーディングモードでは、ルマイントラ予測ブロックを、ブロックサイズに応じて、垂直方向または水平方向に2つまたは4つのサブパーティションに分割することができる。いくつかの例では、RSTがすべての実行可能なサブパーティションに適用される場合、パフォーマンスの向上は限界に達する。したがって、いくつかの例では、ISPモードが選択された場合、LFNSTは無効化され、LFNSTインデックス(またはRSTインデックス)はシグナリングされない。ISP予測された残差に対してRSTまたはLFNSTを無効化することで、コーディングの複雑さを軽減することができる。いくつかの例では、行列ベースのイントラ予測モード(MIP)が選択された場合、LFNSTは無効化され、LFNSTインデックスはシグナリングされない。
いくつかの例では、最大変換サイズの制限(例えば64×64)のため、64×64よりも大きいCUは暗黙的に分割(TUタイリング)され、LFNSTインデックス検索は、一定数の復号パイプラインステージのためにデータバッファリングを4倍に増やすことができる。したがって、LFNSTが許容される最大サイズを64×64に制限することができる。一例では、LFNSTは離散コサイン変換(DCT)タイプ2(DCT-2)変換のみで有効にされる。
折れ線グラフ変換(LGT)は、例えば、一次変換などの変換において使用されることができる。一例では、LGTは、以下に説明するように、様々なDCT、離散サイン変換(DST)を含む。LGTは、32点および64点の1次元(1D)DSTを含み得る。
グラフは、関心対象間のアフィニティ関係のモデリングに使用できる、頂点と辺のセットを含む一般的な数学的構造である。重みのセットが辺とオプションで頂点に割り当てられた重み付きグラフは、信号/データのロバストなモデリングのためのスパースな表現を提供することができる。LGTは、多様なブロック統計にうまく適応することで、コーディング効率を向上させることができる。分離型LGTは、ブロックの残差信号の基礎となる行および列ごとの統計をモデリングするために、データから折れ線グラフを学習することで設計および最適化されることができ、関連する一般化グラフラプラシアン(GGL)行列は、LGTを導出するために使用されることができる。
図15Aは、本開示の一実施形態による自己ループ重み(例えば、vc1、vc2)およびエッジ重みwによって特徴付けられる一般化LGTの一例を示す。重み付きグラフG(W,V)が与えられた場合、GGL行列は以下のように定義されることができる。
Figure 0007285954000008
ここで、Wは、非負のエッジ重みwを含む隣接行列とすることができ、Dは、対角次数行列とすることができ、Vは、自己ループ重みvc1およびvc2を示す対角行列とすることができる。図15Bは、行列Lの一例を示す。
LGTは、以下のように、GGL行列Lの固有値分解によって導出されることができる。
Figure 0007285954000009
ここで、直交行列Uの列は、LGTの基底ベクトルとすることができ、Φは、対角固有値行列とすることができる。
様々な例において、特定のDCTおよびDST(例えば、DCT-2、DCT-8およびDST-7)は、GGLの特定の形態から導出されるLGTのセットのサブセットである。DCT-2は、vc1を0(例えば、vc1=0)に設定することで導出されることができる。DST-7は、vc1をw(例えば、vc1=w)に設定することで導出されることができる。DCT-8は、vc2をw(例えば、vc2=w)に設定することで導出されることができる。DST-4は、vc1を2w(例えば、vc1=2w)に設定することで導出されることができる。DCT-4は、vc2を2w(例えば、vc2=2w)に設定することで導出されることができる。
いくつかの例では、LGTは行列乗算として実施されることができる。4p LGTコアは、Lcでvc1を2wに設定することで導出されることができ、したがって、4p LGTコアはDST-4である。8p LGTコアは、Lcでvc1を1.5wに設定することで導出されることができる。一例では、LGTコアは、vc1をwとし、vc2を0とすることで導出されることができ、LGTコアはDST-7となり得る。
いくつかの例では、例えば、AV1において、変換スキームは分離型だけであり、45°方向に沿った特定のエッジのような特定の方向性テクスチャパターンをキャプチャするためには効率的ではないかもしれない。より効率的なビデオ及び画像コーディング技術(例えば、AV1イントラコーディングを超える高度なビデオ及び画像コーディング技術)を開発するために、非分離変換は、例えば、特定の方向性画像パターンに対するコーディング効率の向上に使用されることができる。
いくつかの例では、非分離変換がVVCで使用される。VVCにおける二次変換スキーム(例えば、非分離二次変換スキーム)は、イントラ予測スキームに依存することができる。しかし、AV1とVVCのイントラ予測スキームは異なる可能性がある。したがって、VVCにおける二次変換スキームは、AV1イントラコーディングスキームと完全に互換性がない可能性がある。したがって、AV1を超える次世代のAOMedia Videoフォーマットのように、AV1に基づく二次変換を適用するためには、本開示に記載されているように、さらなる変更が適用される。
様々な実施形態および実施例は、別々に使用しても、任意の順序で組み合わせてもよい。本開示において、予測方向に従って予測サンプルを生成するために使用されるイントラ予測モードは、図9を参照して上述したように、角度モード(または角度イントラ予測モード)または方向性モード(または方向性イントラ予測モード)と呼ばれることができる。また、予測方向に基づかずに予測サンプルを生成するために使用されるイントラ予測モードは、図10~11を参照して上述したように、非方向性イントラ予測モード(または非方向性モード)と呼ばれることができる。非方向性イントラ予測モード(または非方向性モード)は、図10を参照して説明したような非方向性平滑モード(例えば、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、およびSMOOTH_Hモード)、図11を参照して説明したようなフィルタイントラモード(または再帰的フィルタリングモード)、およびCfLモードなどを含み得る。なお、特定の非方向性イントラ予測モード(例えば、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、およびSMOOTH_Hモードを含む非方向性平滑モード、及びフィルタイントラモード)は、平滑モードと呼ばれることができる。
再構築されるべきブロック(例えば、CB)のコーディング情報は、符号化されたビデオビットストリームからデコードされ得る。このコーディング情報は、ブロックのイントラ予測情報を示すことができる。イントラ予測情報は、ブロックの予測に使用されるイントラ予測モードを示すことができる。ブロックの残差は、非分離変換を用いて符号化されることができる。非分離変換は、一次変換または二次変換であり得る。
一例では、イントラ予測モードは方向性モードであり、ブロックは方向性モードで符号化される。コーディング情報は、ブロックの公称モード情報および角度オフセット情報を示すことができる。公称モード情報は、ブロックに対する公称モード(例えば、D45_PRED)を示す、符号化されたビデオビットストリームでシグナリングされた第1のインデックス(例えば、公称モードインデックス)を含み得る。角度オフセット情報は、公称モードに対応する公称角度(例えば、45°)からの角度オフセットを示す、符号化されたビデオビットストリームでシグナリングされた第2のインデックス(例えば、角度オフセットインデックス)を含み得る。
本開示の態様によれば、方向性モードは、コーディング情報によって示される公称モードおよび角度オフセットに基づいて決定されることができる。
公称角度(例えば、45°)は、図9に示すような公称モード(例えば、D45_PRED)に基づいて取得されることができる。例えば、第2のインデックスは、オフセット整数Iを示すことができる。したがって、角度オフセットは、オフセット整数Iおよびステップサイズ(例えば、3°)に基づいて取得されることができ、例えば、角度オフセットは、オフセット整数Iにステップサイズを乗じたものに等しい。したがって、予測角度は、公称角度および角度オフセットに基づいて取得されることができる。一例では、図9を参照して上述したように、予測角度は、公称角度と角度オフセットとの和に等しい。したがって、図9を参照して上述したように、方向性モード(またはイントラ予測モード)は、予測角度に応じて決定されることができる。
ブロックの非分離変換は、公称モードに基づいて決定されることができる。一実施形態では、公称モードに関連付けられる変換セットモード(例えば、stMode)を決定することができ、ここで、変換セットモードは、非分離変換を含む1つまたは複数の非分離変換のセットを示すことができる。1つまたは複数の非分離変換のセットは、変換セットと呼ばれることができる。
一例では、方向性モードは、複数の公称モードと変換セットモード(例えば、stMode)との間のマッピング関係に基づいて、変換セットモードにマッピングされる。このマッピング関係は、エンコーダおよびデコーダに記憶されることができる。このマッピング関係は、ルックアップテーブルであり得る。本開示の態様によれば、方向性モードは、方向性モードに関連付けられた公称モード(例えば、公称モードインデックスによって示される)に基づいて、かつ方向性モードに関連付けられた角度オフセットに関係なく、変換セットモードにマッピングされる。そして、変換セットモード(例えば、stMode)の値を、変換セットを識別するために使用することができる。
上述したように、変換セットは、1つまたは複数の非分離変換を含み得る。シグナリングされた非分離変換インデックス(例えば、stIdx)は、変換セットにおける非分離変換をさらに識別するために使用されることができる。コーディング情報は、符号化されたビデオビットストリームでシグナリングされた非分離変換インデックス(例えば、stIdx)をさらに含み得る。変換セットにおける非分離変換は、非分離変換インデックスに基づいて決定されることができる。ブロックは、非分離変換に基づいてデコードされることができる。
ブロックは、方向性モードおよび非分離変換に基づいて再構築されることができる。
一例では、ブロックが変換スキップモードで符号化された場合、非分離変換はブロックに適用されない。例えば、非分離変換インデックス(例えば、stIdx)はシグナリングされず、したがって、これは非分離変換がブロックに適用されないことを示す。
一実施形態では、非分離変換は、非分離二次変換である。いくつかの例では、この非分離二次変換は、PAETHモードまたは再帰的フィルタリングモードに適用されない。いくつかの例では、非分離二次変換は、ブロックの最初のN個の変換係数をエントロピー符号化するために使用される走査順序に沿って、当該最初の変換係数にのみ適用される。例えば、エンコーダ側では、順方向二次変換(例えば、順方向非分離二次変換)の入力は、順方向走査順序に沿った最初のN個の変換係数であり、順方向二次変換の出力は、当該最初のN個の変換係数を置き換えるN個の修正された変換係数である。デコーダ側では、逆方向二次変換(例えば、逆方向非分離二次変換)の入力は、順方向走査順序に沿った最初のN個の変換係数(例えば、順方向二次変換の出力におけるN個の修正された変換係数)であり、逆方向二次変換の出力は、当該最初のN個の変換係数を置き換えるN個の変換係数である。順方向走査順序などの走査順序は、ジグザグ走査順序、対角線走査順序など、任意の適切な走査順序とすることができる。一例では、例えばVVCにおいて、係数コーディングのために対角線走査順序が適用される。Nは、例えば0から127の範囲内の任意の非負の整数である。一例では、Nが0の場合、ブロックには二次変換が適用されない。一例では、Nは正の整数である。
一実施形態では、非分離変換は、非分離二次変換である。この非分離二次変換は、ブロック内の第1の変換係数にのみ適用される。第1の変換係数のそれぞれは、座標(x,y)を有することができ、それぞれのx座標およびy座標の合計は、閾値Tよりも小さくなることができる。例えば、ブロック内のそれぞれの変換係数に関連付けられた座標(x,y)が、それぞれのx座標およびy座標の合計が閾値T以上であるという条件を満たす場合、その変換係数は0に設定されることができる。その変換係数は第1の変換係数に含まれない。閾値Tは、非負の整数など、任意の適切な数とすることができる。一例では、Tは、0から32の範囲内である。
一実施形態では、非分離変換は、非分離二次変換として適用される。一例では、非分離二次変換は、ブロックに対する一次変換のタイプが条件を満たす場合にのみ適用され、シグナリングされる。本開示の態様によれば、ブロックに対する一次変換における水平変換および垂直変換は、LGTのセットのサブセットに含まれ得る。水平変換と垂直変換は、同じLGTを使用することも、異なるLGTを使用することもできる。LGTのセットのサブセットは、エッジ重みwと自己ループ重み(例えば、vc1および/またはvc2)との間の関係によって特徴付けられることができる。例えば、LGTのセットのサブセットは、特定の自己ループ比によって特徴付けられる。自己ループ比は、エッジ重みwおよび自己ループ重み(例えば、vc1またはvc2)に基づく比とすることができる。
一例では、非分離二次変換は、一次変換の水平変換および垂直変換がDCT-2である場合にのみ適用される。DCT-2は、vc1=0を有する(例えば、自己ループ比が0である)LGTに対応することができる。
一例では、非分離二次変換は、一次変換の水平変換および垂直変換がDST-4(またはDST-7)である場合にのみ適用される。DST-7は、vc1=wを有する(例えば、自己ループ比が1である)LGTに対応することができる。
一例では、非分離二次変換は、以下の条件が満たされた場合にのみ適用される。一次変換の水平変換は、DCT-2、DST-4、またはDST-7であり、一次変換の垂直変換は、DCT-2、DST-4、またはDST-7である。水平変換と垂直変換は、同じタイプの変換行列を持つことも、異なるタイプの変換行列を持つこともできる。
一実施形態では、非分離変換は、非分離二次変換として適用される。本開示の態様によれば、ブロックは、非分離二次変換を用いて得られた第1の変換係数と、非分離二次変換を用いずに得られた第2の変換係数とを含み得る。第1の変換係数および第2の変換係数は、別々にエントロピー符号化(例えば、デコード)され得る。一例では、第1の変換係数は、第2の変換係数をエントロピー符号化(例えば、デコード)する前にエントロピー符号化(例えば、デコード)される。一例では、第2の変換係数は、第1の変換係数をエントロピー符号化(例えば、デコード)する前にエントロピー符号化(例えば、デコード)される。
上述したように、非方向性イントラ予測モード(または非方向性モード)は、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、SMOOTH_Hモード、再帰的フィルタリングモード、およびCfLモードを含み得る。非方向性平滑モードは、図10を参照して上述したように、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、およびSMOOTH_Hモードを含み得る。
一実施形態では、ブロックは、非方向性モードのうちの1つで符号化される。したがって、非方向性モードのうちの1つに関連付けられた1つまたは複数の非分離変換のセットを決定することができ、ここで、(a)非方向性モードのうちの少なくとも他の1つ、および、(b)公称モード、のうちの1つは、1つまたは複数の非分離変換のセットに関連付けられることができる。公称モードは、図9で説明したように、8つの公称モード(901)~(908)V_PRED、H_PRED、D45_PRED、D135_PRED、D113_PRED、D157_PRED、D203_PRED、およびD67_PREDのうちの1つであり得る。また、1つまたは複数の非分離変換のセットにおける非分離変換は、上述と同様に、コーディング情報によって示される非分離変換インデックスに基づいて決定されることができる。その後、ブロックは、非方向性モードおよび非分離変換に基づいて再構築されることができる。
非方向性モードのうちの1つ、および、非方向性モードのうちの少なくとも他の1つと公称モードとのうちの1つは、(a)再帰的フィルタリングモード、および、DCモードとSMOOTHモードとのうちの1つと、(b)SMOOTHモード、SMOOTH_Hモード、およびSMOOTH_Vモードと、(c)SMOOTHモード、SMOOTH_Hモード、SMOOTH_Vモード、およびPAETHモードと、(d)再帰的フィルタリングモード、SMOOTHモード、およびPAETHモードと、(e)V_PRED(または公称モードの垂直モード)およびSMOOTH_Vモードと、(f)H_PRED(または公称モードの水平モード)およびSMOOTH_Hモードと、(v)CfLモード、および、DCモードとSMOOTHモードとPAETHモードとのうちの1つと、のうちの1つを含み得る。
一般に、1つまたは複数の非分離変換の同じセットは、複数の公称モード(例えば、公称モード(901)~(908))と、複数の非方向性モード(例えば、上述した非方向性モード)とを含むモードセット内の2つまたは複数のモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、再帰的フィルタリングモード(または再帰的フィルタリングモード)およびDCモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、再帰的フィルタリングモード(または再帰的フィルタリングモード)およびSMOOTHモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、SMOOTHモード、SMOOTH_Hモード、およびSMOOTH_Vモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、SMOOTHモード、SMOOTH_Hモード、SMOOTH_Vモード、およびPAETHモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、再帰的フィルタリングモード、SMOOTHモード、およびPAETHモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、垂直モード(V_PRED)およびSMOOTH_Vモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、水平モード(H_PRED)およびSMOOTH_H予測モードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、CfLモードおよびDCモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、CfLモードおよびSMOOTHモードに適用されることができる。
1つまたは複数の非分離変換の同じセット(または1つまたは複数の非分離変換カーネルの同じセット)は、CfLモードおよびPAETHモードに適用されることができる。
図16は、本開示の一実施形態によるプロセス(1600)を概説するフローチャートを示す。プロセス(1600)は、ブロックの再構築に使用されることができる。様々な実施形態において、該プロセス(1600)は、端末装置(310)、(320)、(330)および(340)内の処理回路、ビデオエンコーダ(403)の機能を実行する処理回路、ビデオデコーダ(410)の機能を実行する処理回路、ビデオデコーダ(510)の機能を実行する処理回路、ビデオエンコーダ(603)の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、該プロセス(1600)はソフトウェア命令で実施されるため、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(1600)を実行する。該プロセスは、(S1601)で開始し、(S1610)に進む。
(S1610)では、符号化されたビデオビットストリームから、再構築されるべきブロックのコーディング情報をデコードすることができる。コーディング情報は、そのブロックのイントラ予測情報を示すことができる。
(S1620)では、方向性モードで符号化されたブロックに対して、上述したように、公称モードおよび角度オフセットに基づいて方向性モードを決定することができる。コーディング情報は、公称モード(例えば、符号化されたビデオビットストリームでシグナリングされた公称モードインデックスを用いる)および角度オフセット(例えば、符号化されたビデオビットストリームでシグナリングされた角度オフセットインデックス)を示すことができる。
(S1630)では、方向性モードで符号化されたブロックに対して、上述したように、公称モードに基づいて、ブロックの非分離変換を決定することができる。また、非分離変換を含む1つまたは複数の非分離変換のセットを、公称モードに基づいて決定することができる。例えば、公称モードに関連付けられる変換セットモードを決定し、この変換セットモードは、1つまたは複数の非分離変換のセットを示す。さらに、コーディング情報は、非分離変換インデックスを示すことができる。1つまたは複数の非分離変換のセットにおける非分離変換を、非分離変換インデックスに基づいて決定することができる。
(S1640)では、方向性モードで符号化されたブロックに対して、方向性モードおよび非分離変換に基づいて、このブロックを再構築することができる。一例では、非分離変換は、一次変換であり、非分離型一次変換は、ブロックに適用される。一例では、非分離変換は、二次変換であり、非分離二次変換は、ブロックに適用される。プロセス(1600)は、(S1699)に進み、終了する。
プロセス(1600)は、様々なシナリオに好適に対応することができ、プロセス(1600)内のステップは、それに応じて調整されることができる。プロセス(1600)内の1つまたは複数のステップは、適用され、省略され、繰り返され、および/または組み合わせられることができる。プロセス(1600)を実施するために任意の適切な順序を使用することができる。
方法(または実施形態)、エンコーダ、およびデコーダのそれぞれは、処理回路(たとえば、1つまたは複数のプロセッサ、または1つまたは複数の集積回路)によって実施されてもよい。一例では、1つまたは複数のプロセッサは、非一時的なコンピュータ読取可能な媒体に記憶されているプログラムを実行する。
以上で説明された技法は、コンピュータ読取可能な命令を使用するコンピュータソフトウェアとして実行され、1つまたは複数のコンピュータ読取可能な媒体に物理的に記憶されることができる。例えば、図17は、開示された主題の特定の実施形態を実行することに適したコンピュータシステム(1700)を示す。
コンピュータソフトウェアは、アセンブリ、コンパイル、リンク、またはそのようなメカニズムを施されて、1つまたは複数のコンピュータ中央処理装置(CPU)、グラフィックスプロセッシングユニット(GPU)などによって直接、または解釈、マイクロコード実行などによって実行されることができる命令を含むコードを作成する任意の適切な機械コードまたはコンピュータ言語を用いて符号化されることができる。
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、モノのインターネットデバイスなどを含む、様々なタイプのコンピュータまたはそのコンポーネント上で実行されることができる。
コンピュータシステム(1700)について、図17に示される例示的なコンポーネントは、本質的に例示的なものであり、本開示の実施形態を実施するコンピュータソフトウェアの使用または機能の範囲に関していかなる限定を示唆することも意図しない。コンポーネントの構成は、コンピュータシステム(1700)の例示的な実施形態で示されるコンポーネントのうちのいずれか1つ又は組み合わせに関する任意の依存性又は必要性を有するとして解釈されるべきではない。
コンピュータシステム(1700)は、特定のヒューマンインターフェース入力デバイスを含み得る。このようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(キーストローク、スワイプ、データグローブの動きなど)、オーディオ入力(音声、拍手など)、視覚入力(ジェスチャーなど)、嗅覚入力(示されていない)によって、1人以上のユーザによる入力に応答することができる。ヒューマンインターフェースデバイスは、オーディオ(音声、音楽、環境音など)、画像(走査画像、静止画像カメラから取得される写真画像など)、ビデオ(2次元ビデオ、立体ビデオを含む3次元ビデオなど)など、人間による意識的な入力に必ずしも直接関係しない特定のメディアをキャプチャすることにも使用できる。
入力ヒューマンインターフェースデバイスは、キーボード(1701)、マウス(1702)、トラックパッド(1703)、タッチスクリーン(1710)、データグローブ(図示せず)、ジョイスティック(1705)、マイクフォン(1706)、スキャナ(1707)、カメラ(1708)(それぞれ1つのみ示されている)のうちの1つまたは複数を含み得る。
コンピュータシステム(1700)は、特定のヒューマンインターフェース出力デバイスをも含み得る。このようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音声、光、および嗅覚/味覚を介して1人以上のユーザの感覚を刺激し得る。このようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン(1710)、データグローブ(図示せず)、またはジョイスティック(1705)による触覚フィードバックがあるが、入力デバイスとして機能しない触覚フィードバックデバイスであってもよい)、オーディオ出力デバイス(スピーカ(1709)、ヘッドホン(示されていない)など)、視覚出力デバイス(CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン(1710)(それぞれタッチスクリーン入力能力を有するかもしくは有せず、それぞれ触覚フィードバック能力を有するかもしくは有しない。それらの一部は、ステレオグラフィック出力などの手段を介して、2次元の視覚出力または3次元以上の出力を出力することができる)、仮想現実眼鏡(示されていない)、ホログラフィックディスプレおよびスモークタンク(示されていない)など)、およびプリンタ(示されていない)を含み得る。
コンピュータシステム(1700)は、人間がアクセス可能な記憶装置およびそれらの関連する媒体、例えば、CD/DVDなどの媒体(1721)付きのCD/DVD ROM/RW(1720)を含む光学媒体、サムドライブ(1722)、リムーバブルハードドライブまたはソリッドステートドライブ(1723)、テープやフロッピー(登録商標)ディスクなどの従来の磁気媒体(示されていない)、セキュリティドングルなどの専用のROM/ASIC/PLDベースのデバイス(示されていない)などをも含むことができる。
ここで開示された主題に関連して使用される「コンピュータ読取可能な媒体」という用語は、送信媒体、搬送波、または他の一時的な信号を包含しないことをも当業者が理解するべきである。
コンピュータシステム(1700)は、1つまたは複数の通信ネットワーク(1755)へのインターフェース(1754)をさらに含むことができる。ネットワークは、例えば、無線、有線、光学的であり得る。ネットワークは、さらに、ローカル、広域、大都市圏、車両用および産業用、リアルタイム、遅延耐性などであり得る。ネットワークの例は、イーサネット(登録商標)、無線LANなどのローカルエリアネットワーク、GSM、3G、4G、5G、LTEなどを含むセルラーネットワーク、ケーブルTV、衛星TV、および地上放送TVを含むTV有線または無線広域デジタルネットワーク、CANBusを含む車両用や産業用などを含む。特定のネットワークは、一般に、特定の汎用データポートまたは周辺バス(1749)(例えば、コンピューターシステム(1700)のUSBポートなど)に接続された外部ネットワークインターフェースアダプターを必要とする。他のものは一般に、以下で説明するようにシステムバスに接続することにより、コンピューターシステム(1700)のコアに統合される(例えば、PCコンピュータシステムへのイーサネット(登録商標)インターフェースまたはスマートフォンコンピューターシステムへのセルラーネットワークインターフェース)。これらのネットワークのいずれかを用いて、コンピュータシステム(1700)は、他のエンティティと通信することができる。このような通信は、単方向、受信のみ(例えば、放送TV)、単方向の送信のみ(例えば、特定のCANbusデバイスへのCANbus)、または双方向、例えばローカルまたはワイドエリアデジタルネットワークを用いる他のコンピュータシステムへの送信であり得る。特定のプロトコルおよびプロトコルスタックを上述したこれらのネットワークおよびネットワークインターフェースのそれぞれで使用することができる。
前述のヒューマンインターフェースデバイス、人間がアクセス可能な記憶装置、およびネットワークインターフェースは、コンピュータシステム(1700)のコア(1740)に接続されることができる。
コア(1740)は、1つまたは複数の中央処理装置(CPU)(1741)、グラフィックスプロセッシングユニット(GPU)(1742)、フィールドプログラマブルゲートアレイ(FPGA)(1743)の形態での専用プログラマブル処理ユニット、特定のタスクのためのハードウェアアクセラレータ(1744)、グラフィックアダプタ(1750)などを含むことができる。これらのデバイスは、リードオンリーメモリ(ROM)(1745)、ランダムアクセスメモリ(1746)、非ユーザアクセス可能な内部ハードドライブ、SSDなどの内部大容量記憶装置(1747)とともに、システムバス(1748)を介して接続されてもよい。一部のコンピュータシステムでは、システムバス(1748)は、1つまたは複数の物理プラグの形態でアクセスでき、追加のCPU、GPUなどによる拡張を可能にする。周辺機器は、コアのシステムバス(1748)に直接、または周辺バス(1749)を介して接続されることができる。一例では、ディスプレイ(1710)は、グラフィックアダプタ(1750)に接続されることができる。周辺バスのアーキテクチャは、PCI、USBなどを含む。
CPU(1741)、GPU(1742)、FPGA(1743)、およびアクセラレータ(1744)は、組み合わせて、前述のコンピュータコードを構成することができる特定の命令を実行することができる。そのコンピュータコードは、ROM(1745)またはRAM(1746)に記憶されることができる。推移データはRAM(1746)にも記憶できるが、永続データは、例えば、内部大容量ストレージ(1747)に記憶されることができる。1つまたは複数のCPU(1741)、GPU(1742)、大容量ストレージ(1747)、ROM(1745)、RAM(1746)などと密接に関連付けることができるキャッシュメモリを使用することにより、任意のメモリデバイスへの高速保存および検索が可能になる。
コンピュータ読取可能な媒体は、様々なコンピュータ実施操作を実行するためのコンピュータコードを備えることができる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであり得るか、もしくは、それらは、コンピュータソフトウェア技術の当業者に周知であって利用可能な種類のものであり得る。
限定ではなく、一例として、アーキテクチャを有するコンピュータシステム(1700)、特にコア(1740)は、1つまたは複数の有形のコンピュータ読取可能な媒体に組み込まれたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果としての機能性を提供することができる。このようなコンピュータ読取可能な媒体は、以上で紹介したようにユーザがアクセス可能な大容量ストレージ、および、コア内部大容量ストレージ(1747)またはROM(1745)などの非一時的な性質を持つコア(1740)の特定のストレージに関連付けられた媒体であり得る。本開示の様々な実施形態を実行するソフトウェアは、このようなデバイスに記憶され、コア(1740)によって実行されることができる。コンピュータ読取可能な媒体は、特定の必要に応じて、1つまたは複数のメモリデバイスまたはチップを含むことができる。ソフトウェアは、コア(1740)、具体的にはその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM(1746)に記憶されたデータ構造を定義すること、および、ソフトウェアで定義されたプロセスに従ってこのようなデータ構造を変更する言を含む、ここで説明する特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えて、または、代替として、コンピュータシステムは、本明細書に記載された特定のプロセスまたは特定のプロセスの特定の部分を実行するためにソフトウェアの代わりにまたは一緒に動作することができる回路(例えば、アクセラレータ(1744))に有線接続されたまたは組み込まれたロジックの結果としての機能性を提供することができる。ソフトウェアへの言及は、必要に応じて、ロジックを含むことができ、その逆も同様である。コンピュータ読取可能な媒体への言及は、必要に応じて、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のためのロジックを具現化する回路、またはその両方を含むことができる。本開示は、ハードウェアとソフトウェアの任意の適切な組み合わせを含む。
付録A:頭字語
JEM:Joint Exploration Model(共同探索モデル)
VVC:Versatile Video Coding(多用途ビデオコーディング)
BMS:Benchmark Set(ベンチマークセット)
MV:Motion Vector(動きベクトル)
HEVC:High Efficiency Video Coding(高効率ビデオコーディング)
SEI:Supplementary Enhancement Information(補助強化情報)
VUI:Video Usability Information(ビデオユーザビリティ情報)
GOP:Groups of Pictures(ピクチャ群)
TU:Transform Units(変換ユニット)
PU:Prediction Units(予測ユニット)
CTU:Coding Tree Units(コーディングツリーユニット)
CTB:Coding Tree Blocks(コーディングツリーブロック)
PB:Prediction Blocks(予測ブロック)
HRD:Hypothetical Reference Decoder(仮想参照デコーダ)
SNR:Signal Noise Ratio(信号対雑音比)
CPU:Central Processing Units(中央処理装置)
GPU:Graphics Processing Units(グラフィックスプロセッシングユニット)
CRT:Cathode Ray Tube(陰極線管)
LCD:Liquid-Crystal Display(液晶ディスプレイ)
OLED:Organic Light-Emitting Diode(有機発光ダイオード)
CD:Compact Disc(コンパクトディスク)
DVD:Digital Video Disc(デジタルビデオディスク)
ROM:Read-Only Memory(リードオンリーメモリ)
RAM:Random Access Memory(ランダムアクセスメモリ)
ASIC:Application-Specific Integrated Circuit(特定用途向け集積回路)
PLD:Programmable Logic Device(プログラマブルロジックデバイス)
LAN:Local Area Network(ローカルエリアネットワーク)
GSM:Global System for Mobile Communications(グローバルモバイル通信システム)
LTE:Long-Term Evolution(長期的な進化)
CANBus:Controller Area Network Bus(コントローラエリアネットワークバス)
USB:Universal Serial Bus(ユニバーサルシリアルバス)
PCI:Peripheral Component Interconnect(ペリフェラルコンポーネントインターコネクト)
FPGA:Field Programmable Gate Array(フィールドプログラマブルゲートアレイ)
SSD:Solid-State Drive(ソリッドステートドライブ)
IC:Integrated Circuit(集積回路)
CU:Coding Unit(コーディングユニット)
本開示は一部の例示的な実施形態を説明してきたが、本開示の範囲内に含まれる変更、置換、および様々な代替の均等物が存在する。したがって、当業者は、本明細書では明示的に示されていないか、または記載されていないが、本開示の原理を具現化し、その思想および範囲内に含まれる様々なシステムおよび方法を考案できることが理解されるであろう。
300 通信システム
310,320,330,340 端末装置
350 ネットワーク
400 ストリーミングシステム
401 ビデオソース
402 ビデオピクチャ
403 ビデオエンコーダ
404 エンコードされたビデオデータ(エンコードされたビデオビットストリーム)
405 ストリーミングサーバ
406,408 クライアントサブシステム
407,409 エンコードされたビデオデータのコピー
410 ビデオコーダ
411 ビデオピクチャ
412 ディスプレイ
413 キャプチャサブシステム
420,430 電子デバイス
501 チャネル
510 ビデオデコーダ
512 レンダリングデバイス
515 バッファメモリ
520 エントロピーデコーダ/パーサ
521 シンボル
530 電子デバイス
531 受信機
551 スケーラ/逆変換ユニット
552 イントラ予測ユニット
553 動き補償予測ユニット
555 アグリゲータ
556 ループフィルタユニット
557 参照ピクチャメモリ
558 現在ピクチャバッファ
601 ビデオソース
603 ビデオエンコーダ
620 電子デバイス
630 ソースコーダ
632 コーディングエンジン
633 (ローカル)デコーダ
634 参照ピクチャメモリ
635 予測器
640 送信機
643 符号化ビデオシーケンス
645 エントロピーコーダ
650 コントローラ
660 通信チャネル
703 ビデオエンコーダ
721 統括制御部
722 イントラエンコーダ
723 残差算出部
724 残差エンコーダ
725 エントロピーエンコーダ
726 スイッチ
728 残差デコーダ
730 インターエンコーダ
810 ビデオデコーダ
871 エントロピーデコーダ
872 イントラデコーダ
873 残差デコーダ
874 再構築モジュール
880 インターデコーダ
1210 コーディングブロック
1300,1400 変換プロセス
1310 順方向一次変換
1312 順方向二次変換(順方向低周波非分離変換(LFNST))
1313 係数ブロック
1314 量子化
1320 逆方向一次変換
1322 逆方向二次変換(逆方向LFNST)
1323 係数ブロック
1324 逆量子化
1412 順方向二次変換
1413 係数ブロック
1416 ビットストリーム
1422 逆方向二次変換
1423 係数ブロック
1700 コンピュータシステム
1701 キーボード
1702 マウス
1703 トラックパッド
1705 ジョイスティック
1706 マイクロフォン
1707 スキャナ
1708 カメラ
1709 スピーカ
1710 (タッチ)スクリーン
1720 CD/DVD ROM/RW
1721 媒体
1722 サムドライブ
1723 ソリッドステートドライブ
1740 コア
1741 中央処理装置(CPU)
1742 グラフィックプロセッシングユニット(GPU)
1743 フィールドプログラマブルゲートアレイ(FPGA)
1744 ハードウェアアクセラレータ
1745 リードオンリーメモリ(ROM)
1746 ランダムアクセスメモリ(RAM)
1747 内部大容量記憶装置
1748 システムバス
1749 周辺バス
1750 グラフィックスアダプタ
1754 ネットワークインターフェース
1755 通信ネットワーク

Claims (9)

  1. デコーダにおけるビデオデコードのための方法であって、
    符号化されたビデオビットストリームから、再構築されるべきブロックのコーディング情報をデコードするステップであって、前記コーディング情報は、前記ブロックのイントラ予測情報を示すものである、ステップと、
    方向性モードで符号化された前記ブロックに対して、
    公称モードおよび角度オフセットに基づいて、前記方向性モードを決定するステップであって、前記コーディング情報は、前記公称モードおよび前記角度オフセットを示すものである、ステップと、
    前記公称モードに基づいて、前記ブロックの非分離変換を決定するステップであって、前記非分離変換は、非分離二次変換である、ステップと、
    前記方向性モードおよび前記非分離変換に基づいて、前記ブロックを再構築するステップと、
    を含み、
    前記方向性モードおよび前記非分離二次変換に基づいて、前記ブロックを再構築するステップは、
    前記非分離二次変換を前記ブロックの第1の変換係数にのみ適用するステップであって、前記第1の変換係数のそれぞれは座標(x,y)を有し、それぞれのx座標およびy座標の合計は閾値よりも小さい、ステップをさらに含む、方法。
  2. 非分離変換を決定する前記ステップは、
    前記公称モードに関連付けられる変換セットモードを決定するステップであって、前記変換セットモードは、前記非分離変換を含む1つまたは複数の非分離変換のセットを示すものである、ステップをさらに含む、請求項1に記載の方法。
  3. 前記コーディング情報は、非分離変換インデックスをさらに示しており、
    前記ブロックを再構築する前記ステップは、
    前記非分離変換インデックスに基づいて、前記1つまたは複数の非分離変換のセットにおける前記非分離変換を決定するステップと、
    前記方向性モードおよび前記非分離変換に基づいて、前記ブロックを再構築するステップと、をさらに含む、請求項2に記載の方法。
  4. 前記非分離二次変換は、PAETHモードと再帰的フィルタリングモードとのうちの少なくとも1つに適用されない、請求項に記載の方法。
  5. 前記ブロックは、前記非分離二次変換を用いて得られた第1の変換係数と、前記非分離二次変換を用いずに得られた第2の変換係数とを含み、
    前記ブロックを再構築する前記ステップは、前記第1の変換係数と前記第2の変換係数とを別々にエントロピーデコードするステップをさらに含む、請求項に記載の方法。
  6. 非方向性モードは、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、SMOOTH_Hモード、再帰的フィルタリングモード、およびルマに基づくクロマ(CfL)モードを含み、前記DCモード、前記PAETHモード、前記SMOOTHモード、前記SMOOTH_Vモード、および前記SMOOTH_Hモードは、前記ブロックの隣接サンプルの平均化に基づいており、
    前記非方向性モードのうちの1つで符号化された前記ブロックに対して、
    前記非方向性モードのうちの1つに関連付けられた1つまたは複数の非分離変換のセットを決定し、(a)前記非方向性モードのうちの少なくとも他の1つ、および、(b)公称モード、のうちの1つは、前記1つまたは複数の非分離変換のセットに関連付けられており、
    前記コーディング情報によって示される非分離変換インデックスに基づいて、前記1つまたは複数の非分離変換のセットにおける非分離変換を決定し、
    前記非方向性モードおよび前記非分離変換に基づいて、前記ブロックを再構築する、請求項1に記載の方法。
  7. 前記非方向性モードのうちの1つ、および、前記非方向性モードのうちの少なくとも他の1つと前記公称モードとのうちの1つは、(a)前記再帰的フィルタリングモード、および、前記DCモードと前記SMOOTHモードとのうちの1つと、(b)前記SMOOTHモード、前記SMOOTH_Hモード、および前記SMOOTH_Vモードと、(c)前記SMOOTHモード、前記SMOOTH_Hモード、前記SMOOTH_Vモード、および前記PAETHモードと、(d)前記再帰的フィルタリングモード、前記SMOOTHモード、および前記PAETHモードと、(e)前記公称モードの垂直モード、および前記SMOOTH_Vモードと、(f)前記公称モードの水平モード、および前記SMOOTH_Hモードと、(v)前記CfLモード、および、前記DCモードと前記SMOOTHモードと前記PAETHモードとのうちの1つと、のうちの1つを含む、請求項に記載の方法。
  8. ビデオデコードのための装置であって、
    請求項1からのいずれか一項に記載の方法を実行するように構成される処理回路
    を備える装置。
  9. コンピュータに、請求項1からのいずれか一項に記載の方法を実行させるように構成されるプログラム。
JP2021558852A 2019-11-27 2020-09-28 ビデオコーディングのための方法および装置 Active JP7285954B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962941359P 2019-11-27 2019-11-27
US62/941,359 2019-11-27
US17/031,272 2020-09-24
US17/031,272 US11375220B2 (en) 2019-11-27 2020-09-24 Method and apparatus for video decoding using a nominal directional mode and an angular offset
PCT/US2020/053056 WO2021108027A1 (en) 2019-11-27 2020-09-28 Method and apparatus for video coding

Publications (2)

Publication Number Publication Date
JP2022526400A JP2022526400A (ja) 2022-05-24
JP7285954B2 true JP7285954B2 (ja) 2023-06-02

Family

ID=75974480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021558852A Active JP7285954B2 (ja) 2019-11-27 2020-09-28 ビデオコーディングのための方法および装置

Country Status (6)

Country Link
US (3) US11375220B2 (ja)
EP (1) EP4066385A4 (ja)
JP (1) JP7285954B2 (ja)
KR (1) KR20210135320A (ja)
CN (1) CN113853745A (ja)
WO (1) WO2021108027A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117812271A (zh) * 2019-02-01 2024-04-02 Lg电子株式会社 图像解码方法、图像编码方法、存储介质和发送方法
US11310504B2 (en) 2020-07-30 2022-04-19 Tencent America LLC Complexity reduction for 32-p and 64-p LGT
US12081742B2 (en) 2021-06-11 2024-09-03 Tencent America LLC Intra mode coding
WO2023282625A1 (ko) * 2021-07-06 2023-01-12 엘지전자 주식회사 비분리 1차 변환에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
US20230078100A1 (en) * 2021-08-30 2023-03-16 Tencent America LLC Scan order of secondary transform coefficients
WO2023059056A1 (ko) * 2021-10-05 2023-04-13 엘지전자 주식회사 비분리 1차 변환에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
WO2023090894A1 (ko) * 2021-11-17 2023-05-25 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체
WO2024081862A1 (en) * 2022-10-13 2024-04-18 Qualcomm Incorporated Transforming video data using non-separable primary transforms
WO2024104476A1 (en) * 2022-11-18 2024-05-23 Douyin Vision Co., Ltd. Method, apparatus, and medium for video processing
WO2024123148A1 (ko) * 2022-12-09 2024-06-13 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024129334A1 (en) * 2022-12-14 2024-06-20 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Video encoder, video encoding method, video decoder, video decoding method
WO2024136484A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024136473A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024136486A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024136475A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024136471A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024136481A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024136476A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024136483A1 (ko) * 2022-12-20 2024-06-27 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2024151389A1 (en) * 2023-01-13 2024-07-18 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Video encoder, video encoding method, video decoder, video decoding method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017058614A1 (en) 2015-09-29 2017-04-06 Qualcomm Incorporated Non-separable secondary transform for video coding
WO2017195555A1 (ja) 2016-05-13 2017-11-16 シャープ株式会社 画像復号装置および画像符号化装置
US20180103252A1 (en) 2016-10-12 2018-04-12 Qualcomm Incorporated Primary transform and secondary transform in video coding
US20190124339A1 (en) 2017-10-23 2019-04-25 Google Llc Directional intra-prediction coding
WO2019185883A1 (en) 2018-03-29 2019-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Determination of set of candidate transforms for video encoding

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8483285B2 (en) * 2008-10-03 2013-07-09 Qualcomm Incorporated Video coding using transforms bigger than 4×4 and 8×8
KR101623124B1 (ko) * 2009-12-03 2016-05-24 에스케이 텔레콤주식회사 비디오 인코딩 장치 및 그 인코딩 방법, 비디오 디코딩 장치 및 그 디코딩 방법, 및 거기에 이용되는 방향적 인트라 예측방법
KR101772459B1 (ko) * 2010-05-17 2017-08-30 엘지전자 주식회사 신규한 인트라 예측 모드
US8855188B2 (en) * 2010-07-15 2014-10-07 Sharp Laboratories Of America, Inc. Method of parallel video coding based on mapping
US8848779B2 (en) * 2010-07-15 2014-09-30 Sharp Laboratories Of America, Inc. Method of parallel video coding based on block size
JP2012039590A (ja) * 2010-07-16 2012-02-23 Sony Corp 画像処理装置、画像処理方法、及びプログラム
US10142623B2 (en) * 2011-04-12 2018-11-27 Electronics And Telecommunications Research Institute Image encoding method using a skip mode, and a device using the method
RU2011131824A (ru) * 2011-07-28 2013-02-10 ЭлЭсАй Корпорейшн Поиск интра-режима для кодирования видеоинформации
CN105338347B (zh) 2011-10-24 2018-11-13 英孚布瑞智有限私人贸易公司 用于图像解码的方法和装置
WO2013070629A1 (en) * 2011-11-07 2013-05-16 Huawei Technologies Co., Ltd. New angular table for improving intra prediction
US9253481B2 (en) * 2012-01-13 2016-02-02 Qualcomm Incorporated Determining contexts for coding transform coefficient data in video coding
US10038917B2 (en) * 2015-06-12 2018-07-31 Microsoft Technology Licensing, Llc Search strategies for intra-picture prediction modes
US10349085B2 (en) * 2016-02-15 2019-07-09 Qualcomm Incorporated Efficient parameter storage for compact multi-pass transforms
US10455228B2 (en) * 2016-03-21 2019-10-22 Qualcomm Incorporated Determining prediction parameters for non-square blocks in video coding
US10547854B2 (en) 2016-05-13 2020-01-28 Qualcomm Incorporated Neighbor based signaling of intra prediction modes
US20170347094A1 (en) * 2016-05-31 2017-11-30 Google Inc. Block size adaptive directional intra prediction
US10645381B2 (en) * 2018-04-30 2020-05-05 Google Llc Intra-prediction for smooth blocks in image/video
US11025907B2 (en) * 2019-02-28 2021-06-01 Google Llc Receptive-field-conforming convolution models for video coding

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017058614A1 (en) 2015-09-29 2017-04-06 Qualcomm Incorporated Non-separable secondary transform for video coding
JP2018530245A (ja) 2015-09-29 2018-10-11 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオコーディングのための非分離可能2次変換
WO2017195555A1 (ja) 2016-05-13 2017-11-16 シャープ株式会社 画像復号装置および画像符号化装置
US20180103252A1 (en) 2016-10-12 2018-04-12 Qualcomm Incorporated Primary transform and secondary transform in video coding
US20190124339A1 (en) 2017-10-23 2019-04-25 Google Llc Directional intra-prediction coding
WO2019185883A1 (en) 2018-03-29 2019-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Determination of set of candidate transforms for video encoding
JP2021519546A (ja) 2018-03-29 2021-08-10 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 映像符号化のための候補変換セットの決定

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Jianle Chen, et al.,"Algorithm Description of Joint Exploration Test Model 2",JVET-B1001,version 3,[online], Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2016年03月25日,Pages 21-23,[令和4年8月9日検索], インターネット, <URL: https://jvet-experts.org/doc_end_user/current_document.php?id=2616> and <URL: https://jvet-experts.org/doc_end_user/documents/2_San%20Diego/wg11/JVET-B1001-v3.zip>,(See document file "JVET-B1001_V3.doc" in the zip file "JVET-B1001-v3.zip".).
Jinwoo Jeong, et al.,"A Fast Intra Mode Decision Based on Accuracy of Rate Distortion Model for AV1 Intra Encoding",Proceedings of 2019 34th International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC),IEEE,2019年06月26日,Pages 1-3,ISBN: 978-1-7281-3271-6, <DOI: 10.1109/ITC-CSCC.2019.8793367>.
Keng-Shih Lu, et al.,"Symmetric Line Graph Transforms for Inter Predictive Video Coding",Proceedings of 2016 Picture Coding Symposium (PCS),IEEE,2016年12月07日,Pages 1-5,ISBN: 978-1-5090-5966-9, <DOI: 10.1109/PCS.2016.7906350>.
Moonmo Koo, et al.,"CE6: Reduced Secondary Transform (RST) (test 6.5.1)",JVET-M0292,version 5,[online], Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2019年01月12日,Pages 1-14,[令和4年6月15日検索], インターネット, <URL: http://phenix.it-sudparis.eu/jvet/doc_end_user/current_document.php?id=5099> and <URL: http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/13_Marrakech/wg11/JVET-M0292-v5.zip>,(See document file "JVET-M0292_r5.docx" in the zip file "JVET-M0292-v5.zip".).
Yue Chen, et al.,"An Overview of Core Coding Tools in the AV1 Video Codec",Proceedings of 2018 Picture Coding Symposium (PCS),IEEE,2018年06月27日,Pages 41-45,ISBN: 978-1-5386-4160-6, <DOI: 10.1109/PCS.2018.8456249>.

Also Published As

Publication number Publication date
US11375220B2 (en) 2022-06-28
US20230421790A1 (en) 2023-12-28
KR20210135320A (ko) 2021-11-12
WO2021108027A1 (en) 2021-06-03
US20210160519A1 (en) 2021-05-27
JP2022526400A (ja) 2022-05-24
EP4066385A4 (en) 2023-01-25
US11800126B2 (en) 2023-10-24
US20220295086A1 (en) 2022-09-15
EP4066385A1 (en) 2022-10-05
CN113853745A (zh) 2021-12-28

Similar Documents

Publication Publication Date Title
JP7285954B2 (ja) ビデオコーディングのための方法および装置
JP7223018B2 (ja) ビデオ符号化/復号化の方法及び装置
JP7413552B2 (ja) デコーダが実行するビデオデコーディングの方法、装置、及びプログラム、並びにエンコーダが実行するビデオコーディングの方法
US20240163455A1 (en) Entropy coding a secondary transform index based on primary transform type
JP2023521556A (ja) ビデオコーディングのための方法および装置
JP2024069325A (ja) 部分空間制約を有する直交変換生成
JP2024088772A (ja) ビデオコーティングのための方法、及び装置
JP7508705B2 (ja) イントラ予測モード向けのエントロピーコーディングのための方法、装置、及びコンピュータプログラム
JP2024111184A (ja) イントラモードコーディングのための改良
KR20230170759A (ko) 1차원 변환 스킵을 위한 eob의 시그널링
JP2024516763A (ja) 適応型多重変換セット選択
JP2023525214A (ja) 変換パーティショニングとプライマリ/セカンダリ変換タイプ選択との間の相互作用
JP7537025B2 (ja) 複合インターイントラ予測モードのための適応変換
JP7544433B2 (ja) イントラ双方向予測及び複数参照ライン選択のための調和設計
JP2024535959A (ja) 複合インターイントラ予測モードのための二次変換
KR20230075498A (ko) 2차 변환 계수들의 스캔 순서

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210930

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230116

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: 20230424

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230523

R150 Certificate of patent or registration of utility model

Ref document number: 7285954

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150