JP2022523903A - ビデオコード化のための残差コード化における通常のビンの柔軟な割り当て - Google Patents

ビデオコード化のための残差コード化における通常のビンの柔軟な割り当て Download PDF

Info

Publication number
JP2022523903A
JP2022523903A JP2021541621A JP2021541621A JP2022523903A JP 2022523903 A JP2022523903 A JP 2022523903A JP 2021541621 A JP2021541621 A JP 2021541621A JP 2021541621 A JP2021541621 A JP 2021541621A JP 2022523903 A JP2022523903 A JP 2022523903A
Authority
JP
Japan
Prior art keywords
coding
bins
budget
conversion
decoding
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
JP2021541621A
Other languages
English (en)
Other versions
JPWO2020185530A5 (ja
JP7520853B2 (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 JP2022523903A publication Critical patent/JP2022523903A/ja
Publication of JPWO2020185530A5 publication Critical patent/JPWO2020185530A5/ja
Application granted granted Critical
Publication of JP7520853B2 publication Critical patent/JP7520853B2/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/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/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/124Quantisation
    • 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/127Prioritisation of hardware or computational resources
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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
    • 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/172Methods 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 picture, frame or field
    • 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/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/18Methods 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 a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

少なくとも1つの実施形態では、ビデオを符号化/復号するための方法及び装置は、ビンのCABACコード化に基づき、ビンの通常のCABACコード化の最大使用量に対する高レベルの制約が実施される。言い換えれば、通常のコード化ビンのバジェットは、コード化グループより大きなピクチャエリアにわたって割り当てられ、従って、多数のコード化グループがカバーされ、その数は、単位エリアあたりの通常のビンの平均許容数から決定される。

Description

技術分野
本実施形態の少なくとも1つは、概して、ビデオ符号化又は復号のための残差コード化における通常のビン(bin)の割り当てに関する。
背景
高圧縮効率を達成するために、画像及びビデオコード化スキームは、通常、予測及び変換を採用してビデオコンテンツにおける空間的及び時間的冗長性を活用する。一般に、イントラ又はインターフレーム相互関係を利用するためにイントラ又はインター予測が使用され、次いで、オリジナルのブロックと予測ブロックとの差(予測誤差又は予測残差として表される場合が多い)の変換、量子化及びエントロピーコード化が行われる。ビデオを再構築するために、圧縮データは、エントロピーコード化、量子化、変換及び予測に対する逆のプロセスによって復号される。
概要
本実施形態の1つ又は複数は、高レベルの制約が尊重され、現在の手法と比べて圧縮効率が改善されるように、ブロック及びそれらの係数グループの残差コード化プロセスにおけるビンの通常のCABACコード化の最大使用量に対する高レベルの制約を取り扱う。
少なくとも1つの実施形態の第1の態様によれば、ビデオ符号化方法は、限られた数の通常のビンを使用してコード化グループを含むピクチャエリアを表す構文要素をコード化する残差符号化プロセスを含み、コード化は、CABAC符号化であり、通常のビンの数は、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される。
少なくとも1つの実施形態の第2の態様によれば、ビデオ復号方法は、通常のビンを使用してコード化グループを含むピクチャエリアを表すビットストリームを解析する残差復号プロセスを含み、復号は、CABAC復号を使用して行われ、通常のビンの数は、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される。
少なくとも1つの実施形態の第3の態様によれば、装置は、ピクチャ又はビデオの少なくとも1つのブロックに対するピクチャデータを符号化するためのエンコーダを含み、エンコーダは、限られた数の通常のビンを使用してコード化グループを含むピクチャエリアを表す構文要素をコード化する残差符号化プロセスを実行するように構成され、コード化は、CABAC符号化であり、通常のビンの数は、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される。
少なくとも1つの実施形態の第4の態様によれば、装置は、ピクチャ又はビデオの少なくとも1つのブロックに対するピクチャデータを復号するためのデコーダを含み、デコーダは、通常のビンを使用してコード化グループを含むピクチャエリアを表すビットストリームを解析する残差復号プロセスを実行するように構成され、復号は、CABAC復号を使用して行われ、通常のビンの数は、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される。
少なくとも1つの実施形態の第5の態様によれば、プロセッサによって実行可能なプログラムコード命令を含むコンピュータプログラムが提示され、コンピュータプログラムは、少なくとも第1又は第2の態様による方法のステップを実施する。
少なくとも1つの実施形態の第6の態様によれば、非一時的なコンピュータ可読媒体上に格納され、プロセッサによって実行可能なプログラムコード命令を含むコンピュータプログラム製品が提示され、コンピュータプログラム製品は、少なくとも第1又は第2の態様による方法のステップを実施する。
図面の簡単な説明
高効率ビデオコード化(HEVC)エンコーダなどのビデオエンコーダ100の例のブロック図を示す。 HEVCデコーダなどのビデオデコーダ200の例のブロック図を示す。 様々な態様及び実施形態が実装されるシステムの例のブロック図を示す。 圧縮領域におけるコード化木単位及びコード化木の例を示す。 コード化単位、予測単位及び変換単位へのCTUの分割の例を示す。 依存性スカラ量子化における2つのスカラ量子化器の使用を示す。 スカラ量子化器間で切り替えるためのメカニズムの例を示す。 スカラ量子化器間で切り替えるためのメカニズムの例を示す。 8×8変換ブロックのVVCにおいて使用されるようなCG間及び係数間の走査順序の例を示す。 変換ブロックに対するコード化/解析のための構文要素の例を示す。 CGレベルの残差コード化構文の例を示す。 CUレベルの構文の例を示す。 transform#tree構文構造の例を示す。 変換単位レベルの構文配列を示す。 CABAC復号プロセスを示す。 CABAC符号化プロセスを示す。 本原理の実施形態による、CABACオプティマイザを含むCABAC符号化プロセスを示す。 本原理の実施形態による符号化プロセスにおいて使用されるCABACオプティマイザのフローチャートの例を示す。 CABACオプティマイザを使用してコード化グループを符号化/復号するための修正されたプロセスの例を示す。 通常のビンのバジェットが変換ブロックレベルで決定される実施形態の例を示す。 通常のビンのバジェットが最終有意係数の位置に従って変換ブロックレベルで決定される実施形態の例を示す。 通常のビンのバジェットが変換単位レベルで決定される実施形態の例を示す。 通常のビンのバジェットが、変換単位レベルで決定され、異なる変換ブロック間の相対表面の関数として及び考慮される変換単位の既にコード化/解析されている変換ブロックにおいて使用される通常のビンの関数として変換ブロック間で割り当てられる実施形態の例を示す。 TBレベルの残差コード化/解析のためのプロセスの実施形態の例を示す。 通常のビンのバジェットがコード化単位レベルで割り当てられる実施形態の例を示す。 CUレベルで割り当てられた通常のビンのバジェットに基づく現在のCUと関連付けられた変換木のコード化/解析の実施形態の例を示す。 バジェットがCUレベルで固定された際のコード化木コード化/解析プロセスの変形実施形態の例を示す。 通常のビンのバジェットがCUレベルで固定された際の、本実施形態用に適応させた変換単位コード化/解析プロセスを示す。 通常のビンのバジェットがCUレベルで固定された際の、本実施形態用に適応させた変換単位コード化/解析プロセスを示す。 通常のビンのバジェットがCGレベルより高いレベルで割り当てられる実施形態の例を示し、第1のタイプのCGコード化/解析プロセスを使用するためのものである。 通常のビンのバジェットがCGレベルより高いレベルで割り当てられる実施形態の例を示し、第2のタイプのCGコード化/解析プロセスを使用するためのものである。
詳細な説明
様々な実施形態は、量子化済みの変換係数のエントロピーコード化に関連する。ビデオコーデックのこの段階は、残差コード化ステップとも呼ばれる。少なくとも1つの実施形態は、単一のエリアあたりの最大数の通常のコード化ビンの制約の下で、ビデオコーデックのコード化効率を最適化することを目的とする。
この出願において説明される様々な方法及び他の態様は、図1及び2に示されるようなビデオエンコーダ100及びデコーダ200の少なくともエントロピーコード化及び/又は復号モジュール(145、230)を修正するために使用することができる。その上、本態様は、VVC(多目的ビデオコード化)又はHEVC(高効率ビデオコード化)仕様の特定の草稿に関連する原理を説明しているが、VVC又はHEVCに限定されず、例えば、先在するか又は今後開発されるかにかかわらず、他の規格及び勧告並びにそのような規格及び勧告の拡張版(VVC及びHEVCを含む)に適用することができる。別段の指示がない限り又は技術的に除外されない限り、この出願において説明される態様は、個別に使用することも、組み合わせて使用することもできる。
図1は、HEVCエンコーダなどのビデオエンコーダ100の例のブロック図を示す。また、図1は、HEVC規格に対する改善が行われたエンコーダ、又は、VVCにおける共同ビデオ探査チーム(JVET:Joint Video Exploration Team)による開発の下での共同探査モデル(JEM:Joint Exploration Model)若しくはVVCテストモデル(VTM:VVC Test Model)エンコーダなどのHEVCと同様の技術を採用するエンコーダも示す。
符号化される前、ビデオシーケンスは、符号化前の処理(101)を行うことができる。例えば、この処理は、入力カラーピクチャに色変換を適用することによって(例えば、RGB 4:4:4からYCbCr 4:2:0への変換)、又は、圧縮に対する回復力がより早い信号分布を得るために入力ピクチャ成分のリマッピングを実行することによって(例えば、色成分のうちの1つのヒストグラム平坦化を使用する)実行される。メタデータは、前処理と関連付け、ビットストリームに載せることができる。
HEVCでは、1つ又は複数のピクチャを有するビデオシーケンスを符号化するため、ピクチャは、1つ又は複数のスライスに区分化され(102)、各スライスは、1つ又は複数のスライスセグメントを含み得る。スライスセグメントは、コード化単位、予測単位及び変換単位に整理される。HEVC仕様は、「ブロック」と「単位」とを区別し、「ブロック」は、サンプルアレイの特定のエリア(例えば、ルマ、Y)に対処し、「単位」は、ブロック(例えば、動きベクトル)と関連付けられたすべての符号化済みの色成分(Y、Cb、Cr又はモノクロ)、構文要素及び予測データの配列ブロックを含む。
HEVCでコード化するため、ピクチャは、構成可能なサイズを有する正方形のコード化木ブロック(CTB)に区分化され、コード化木ブロックの連続セットは、スライスにグループ分けされる。コード化木単位(CTU)は、符号化済みの色成分のCTBを内包する。CTBは、コード化ブロック(CB)に区分化された四分木のルートであり、コード化ブロックは、1つ又は複数の予測ブロック(PB)に区分化することができ、変換ブロック(TB)に区分化された四分木のルートを形成する。コード化ブロック、予測ブロック及び変換ブロックに対応して、コード化単位(CU)は、予測単位(PU)及び変換単位(TU)の木構造セットを含み、PUは、すべての色成分に対する予測情報を含み、TUは、各色成分に対する残差コード化構文構造を含む。ルマ成分のCB、PB及びTBのサイズは、対応するCU、PU及びTUに当てはまる。本出願では、「ブロック」という用語は、例えば、CTU、CU、PU、TU、CB、PB及びTBのいずれかを指すために使用することができる。それに加えて、「ブロック」は、H.264/AVC又は他のビデオコード化規格において指定されるようなマクロブロック及びパーティションを指すために使用することもでき、より一般的には、様々なサイズのデータのアレイを指すために使用することもできる。
エンコーダ100の例では、ピクチャは、以下で説明されるようなエンコーダ要素によって符号化される。符号化予定のピクチャは、CUの単位で処理される。各CUは、イントラ又はインターモードを使用して符号化される。CUがイントラモードで符号化される際は、イントラ予測(160)が実行される。インターモードでは、動き推定(175)及び動き補償(170)が実行される。エンコーダは、CUの符号化に対してイントラモードとインターモードのどちらを使用するかを決定し(105)、予測モードフラグによって、イントラ/インター決定を示す。予測残差は、オリジナルの画像ブロックから予測ブロックを減じること(110)によって計算される。
イントラモードにおけるCUは、同じスライス内の再構築された近隣のサンプルから予測される。HEVCでは、35個のイントラ予測モードのセットが利用可能であり、1つのDCモード、1つの平面モード及び33個の角度予測モードを含む。イントラ予測参照は、現在のブロックに隣接する行及び列から再構築される。参照は、以前に再構築されたブロックから利用可能なサンプルを使用して、水平及び垂直方向にブロックサイズの2倍以上に及ぶ。イントラ予測に対して角度予測モードが使用される際は、参照サンプルは、角度予測モードによって示される方向に沿ってコピーすることができる。
現在のブロックに対して適用可能なルマイントラ予測モードは、2つの異なるオプションを使用してコード化することができる。適用可能なモードが3つの最確モード(MPM)の構築リストに含まれる場合は、モードは、MPMリストのインデックスによってシグナルされる。そうでなければ、モードは、モードインデックスの固定長二進化によってシグナルされる。3つの最確モードは、上隣及び左隣のブロックのイントラ予測モードから導出される。
インターCUの場合は、対応するコード化ブロックは、1つ又は複数の予測ブロックにさらに区分化される。インター予測は、PBレベルで実行され、対応するPUは、インター予測がどのように実行されるかについての情報を内包する。動き情報(例えば、動きベクトル及び参照ピクチャインデックス)は、2つの方法、すなわち、「マージモード」及び「高度な動きベクトル予測(AMVP)」でシグナルすることができる。
マージモードでは、ビデオエンコーダ又はデコーダは、既にコード化されているブロックに基づいて候補リストを組み立て、ビデオエンコーダは、候補リスト内の候補のうちの1つに対するインデックスをシグナルする。デコーダ側では、動きベクトル(MV)及び参照ピクチャインデックスは、シグナルされた候補に基づいて再構築される。
AMVPでは、ビデオエンコーダ又はデコーダは、既にコード化されているブロックから決定された動きベクトルに基づいて候補リストを組み立てる。次いで、ビデオエンコーダは、動きベクトル予測因子(MVP)を識別するために候補リストのインデックスをシグナルし、動きベクトル差(MVD)をシグナルする。デコーダ側では、動きベクトル(MV)は、MVP+MVDとして再構築される。また、適用可能な参照ピクチャインデックスは、AMVPに対するPU構文において明示的にコード化される。
次いで、以下で説明されるクロマ量子化パラメータを適応させるための少なくとも1つの実施形態を含めて、予測残差の変換(125)及び量子化(130)が行われる。変換は、一般に、分離可能な変換に基づく。例えば、DCT変換は、最初に、水平方向に適用され、次いで、垂直方向に適用される。以前のコーデックでは、所定のブロックサイズに対する多様な2D変換は通常は限定されるが、JEMなどの最近のコーデックでは、両方向において使用される変換は異なり得(例えば、一方の方向ではDCT、他方ではDST)、それにより、多種多様な2D変換が可能になる。
量子化済みの変換係数並びに動きベクトル及び他の構文要素は、ビットストリームを出力するために、エントロピーコード化(145)される。また、エンコーダは、変換をスキップして、4×4TUベースで非変換残差信号に量子化を直接適用することもできる。また、エンコーダは、変換と量子化の両方を回避することもできる(すなわち、残差は、変換プロセスも量子化プロセスも適用することなく直接コード化される)。直接PCMコード化では、予測は適用されず、コード化単位サンプルは、直接コード化され、ビットストリームに埋め込まれる。
エンコーダは、さらなる予測に対する参照を提供するために、符号化済みのブロックを復号する。量子化済みの変換係数は、予測残差を復号するために、逆量子化(140)及び逆変換(150)が行われる。復号済みの残差と予測ブロックを組み合わせること(155)で、画像ブロックが再構築される。インループフィルタ(165)は、例えば、符号化アーチファクトを低減するためにデブロッキング/SAO(サンプル適応オフセット)フィルタリングを実行するため、再構築されたピクチャに適用される。フィルタリング済みの画像は、参照ピクチャバッファ(180)に格納される。
図2は、HEVCデコーダなどのビデオデコーダ200の例のブロック図を示す。デコーダ200の例では、ビットストリームは、以下で説明されるようなデコーダ要素によって復号される。ビデオデコーダ200は、一般に、ビデオデータの符号化の一部としてビデオ復号を実行する図1において説明されるような符号化パスとは逆の復号パスを実行する。また、図2は、HEVC規格に対する改善が行われたデコーダ、又は、JEM又はVVCデコーダなどのHEVCと同様の技術を採用するデコーダも示す。
具体的には、デコーダの入力は、ビデオビットストリームを含み、ビデオビットストリームは、ビデオエンコーダ100によって生成することができる。ビットストリームは、最初に、変換係数、動きベクトル、ピクチャ区分化情報及び他のコード化情報を得るために、エントロピー復号される(230)。ピクチャ区分化情報は、CTUのサイズや、CTUがCUに分けられた方法を示し、適用可能な場合は、恐らくはPUに分けられた方法を示す。従って、デコーダは、復号済みのピクチャ区分化情報に従って、ピクチャをCTUに分割し、各CTUをCUに分割すること(235)ができる。変換係数は、予測残差を復号するために、以下で説明されるクロマ量子化パラメータを適応させるための少なくとも1つの実施形態を含めて、逆量子化(240)及び逆変換(250)が行われる。
復号済みの予測残差と予測ブロックを組み合わせること(255)で、画像ブロックが再構築される。予測ブロックは、イントラ予測(260)又は動き補償予測(すなわち、インター予測)(275)から得ることができる(270)。上記で説明されるように、動き補償に対する動きベクトルを導出するためにAMVP及びマージモード技法を使用することができ、動き補償では、参照ブロックのサブ整数サンプルに対する補間値を計算するために補間フィルタを使用することができる。インループフィルタ(265)は、再構築されたピクチャに適用される。フィルタリング済みの画像は、参照ピクチャバッファ(280)で格納される。
復号済みのピクチャは、復号後の処理(285)をさらに行うことができ、例えば、逆色変換(例えば、YCbCr 4:2:0からRGB 4:4:4への変換)又は符号化前の処理(101)において実行されるリマッピングプロセスの逆を実行する逆リマッピングを行うことができる。復号後の処理は、メタデータを使用することができ、メタデータは、符号化前の処理において導出され、ビットストリームでシグナルされる。
図3は、様々な態様及び実施形態が実装されるシステムの例のブロック図を示す。システム300は、以下で説明される様々なコンポーネントを含むデバイスとして具体化することができ、この出願において説明される態様のうちの1つ又は複数を実行するように構成される。そのようなデバイスの例は、これらに限定されないが、パーソナルコンピュータ、ラップトップコンピュータ、スマートフォン、タブレットコンピュータ、デジタルマルチメディアセットトップボックス、デジタルテレビレシーバ、パーソナルビデオ記録システム、接続された家庭用器具、エンコーダ、トランスコーダ及びサーバなどの様々な電子デバイスを含む。システム300の要素は、単独で又は組み合わせて、単一の集積回路、複数のIC及び/又は離散コンポーネントにおいて具体化することができる。例えば、少なくとも1つの実施形態では、システム300の処理及びエンコーダ/デコーダ要素は、複数のIC及び/又は離散コンポーネントにわたって分散される。様々な実施形態では、システム300の要素は、内部バス310を通じて通信可能に結合される。様々な実施形態では、システム300は、例えば、通信バスを介して或いは専用入力及び/又は出力ポートを通じて、他の同様のシステム又は他の電子デバイスに通信可能に結合される。様々な実施形態では、システム300は、上記で説明される及び以下で説明されるように修正されるビデオエンコーダ100及びビデオデコーダ200など、この文書において説明される態様のうちの1つ又は複数を実装するように構成される。
システム300は、例えば、この文書において説明される様々な態様を実装するためにその中にロードされた命令を実行するように構成された少なくとも1つのプロセッサ301を含む。プロセッサ301は、当技術分野で知られているような埋め込みメモリ、入力出力インタフェース及び様々な他の回路を含み得る。システム300は、少なくとも1つのメモリ302(例えば、揮発性メモリデバイス及び/又は不揮発性メモリデバイス)を含む。システム300は、不揮発性メモリ及び/又は揮発性メモリを含み得る記憶装置304を含み、これらに限定されないが、EEPROM、ROM、PROM、RAM、DRAM、SRAM、フラッシュ、磁気ディスクドライブ及び/又は光ディスクドライブを含む。記憶装置304は、非限定的な例として、内部記憶装置、取り付けられた記憶装置及び/又はネットワークアクセス可能記憶装置を含み得る。
システム300は、例えば、符号化済みのビデオ又は復号済みのビデオを提供するためにデータを処理するように構成されたエンコーダ/デコーダモジュール303を含み、エンコーダ/デコーダモジュール303は、それ自体のプロセッサ及びメモリを含み得る。エンコーダ/デコーダモジュール303は、符号化及び/又は復号機能を実行するためにデバイスに含めることができるモジュールを表す。知られているように、デバイスは、符号化及び復号モジュールの一方又は両方を含み得る。それに加えて、エンコーダ/デコーダモジュール303は、当業者に知られているように、システム300の別個の要素として実装することも、ハードウェアとソフトウェアの組合せとしてプロセッサ301内に組み込むこともできる。
この文書において説明される様々な態様を実行するためにプロセッサ301又はエンコーダ/デコーダ303にロードされる予定のプログラムコードは、記憶装置304に格納し、その後、プロセッサ301による実行のためにメモリ302にロードすることができる。様々な実施形態によれば、プロセッサ301、メモリ302、記憶装置304及びエンコーダ/デコーダモジュール303のうちの1つ又は複数は、この文書において説明されるプロセスの実行の間、様々なアイテムのうちの1つ又は複数を格納することができる。そのような格納されるアイテムは、これらに限定されないが、入力ビデオ、復号済みのビデオ又は復号済みのビデオの一部分、ビットストリーム、行列、変数、並びに、方程式、公式、演算及び演算論理の処理からの中間又は最終結果を含み得る。
いくつかの実施形態では、命令を格納するため及び符号化又は復号の間に必要なものを処理するためのワーキングメモリを提供するため、プロセッサ301及び/又はエンコーダ/デコーダモジュール303の内部のメモリが使用される。しかし、他の実施形態では、これらの機能のうちの1つ又は複数に対して、処理デバイス(例えば、処理デバイスは、プロセッサ301又はエンコーダ/デコーダモジュール303であり得る)の外部のメモリが使用される。外部のメモリは、メモリ302及び/又は記憶装置304であり得、例えば、動的揮発性メモリ及び/又は不揮発性フラッシュメモリであり得る。いくつかの実施形態では、外部の不揮発性フラッシュメモリは、テレビのオペレーティングシステムを格納するために使用される。少なくとも1つの実施形態では、RAMなどの外部の高速動的揮発性メモリは、MPEG-2、HEVC又はVVCに対するものなどのビデオコード化及び復号動作のためのワーキングメモリとして使用される。
システム300の要素への入力は、ブロック309に示されるような様々な入力デバイスを通じて提供することができる。そのような入力デバイスは、これらに限定されないが、(i)例えば放送局によって無線で送信されたRF信号を受信するRF部分、(ii)複合入力端末、(iii)USB入力端末及び/又は(iv)HDMI入力端末を含む。
様々な実施形態では、ブロック309の入力デバイスは、当技術分野で知られているようなそれぞれの関連入力処理要素を有する。例えば、RF部分は、(i)所望の周波数を選択すること(信号を選択すること又は周波数の帯域に信号を帯域制限することとも呼ばれる)、(ii)選択された信号をダウンコンバートすること、(iii)信号周波数帯域(ある実施形態では、チャネルとも呼ぶことができる)を選択するために(例えば)、周波数のより狭い帯域に再び帯域制限すること、(iv)ダウンコンバート済みの且つ帯域制限済みの信号を復調すること、(v)誤り訂正を実行すること、及び、(vi)データパケットの所望のストリームを選択するために逆多重化することに対して必要な要素と関連付けることができる。様々な実施形態のRF部分は、これらの機能を実行するための1つ又は複数の要素を含み、例えば、周波数セレクタ、信号セレクタ、バンドリミッタ、チャネルセレクタ、フィルタ、ダウンコンバータ、復調器、誤り訂正器及びデマルチプレクサが挙げられる。RF部分は、チューナを含み得、チューナは、例えば、より低い周波数(例えば、中間周波数若しくはベースバンド近くの周波数)への又はベースバンドへの受信信号のダウンコンバートを含む、これらの様々な機能を実行する。セットトップボックスの一実施形態では、RF部分及びその関連入力処理要素は、有線(例えば、ケーブル)媒体上で送信されたRF信号を受信し、次いで、所望の周波数帯域を得るために、フィルタリングを行い、ダウンコンバートを行い、再びフィルタリングを行うことによって周波数選択を実行する。様々な実施形態は、上記で説明される(及び他の)要素の順序を再構成すること、これらの要素のいくつかを取り除くこと及び/又は同様の若しくは異なる機能を実行する他の要素を追加することを行う。要素を追加することは、既存の要素の間に要素を挿入すること(例えば、増幅器及びアナログ/デジタル変換器を挿入することなど)を含み得る。様々な実施形態では、RF部分はアンテナを含む。
それに加えて、USB及び/又はHDMI端末は、USB及び/又はHDMI接続を通じてシステム300を他の電子デバイスに接続するためのそれぞれのインタフェースプロセッサを含み得る。入力処理の様々な態様(例えば、リードソロモン誤り訂正)は、例えば、必要に応じて、別個の入力処理IC内又はプロセッサ301内で実装できることを理解されたい。同様に、USB又はHDMIインタフェース処理の態様は、必要に応じて、別個のインタフェースIC内又はプロセッサ301内で実装することができる。復調済みの、誤り訂正済みの及び逆多重化済みのストリームは、必要に応じて出力デバイス上で提示するためのデータストリームを処理するために、様々な処理要素(例えば、メモリ及び記憶素子と連動するプロセッサ301及びエンコーダ/デコーダ303を含む)に提供される。
システム300の様々な要素は、統合筐体内に提供することができる。統合筐体内では、様々な要素を相互接続することができ、例えば、当技術分野で知られている内部バス(I2Cバス、配線及びプリント基板を含む)などの適切な接続配列を使用して、様々な要素間でデータを送信することができる。
システム300は、通信チャネル320を介して他のデバイスとの通信を可能にする通信インタフェース305を含む。通信インタフェース305は、これらに限定されないが、通信チャネル320上でデータを送信及び受信するように構成されたトランシーバを含み得る。通信インタフェース305は、これらに限定されないが、モデム又はネットワークカードを含み得、通信チャネル320は、例えば、有線及び/又は無線媒体内で実装することができる。
データは、様々な実施形態では、IEEE802.11などのWi-Fiネットワークを使用して、システム300にストリーミングされる。これらの実施形態のWi-Fi信号は、Wi-Fi通信用に適応させた通信チャネル320及び通信インタフェース305上で受信される。これらの実施形態の通信チャネル320は、典型的には、ストリーミングアプリケーション及び他のオーバーザトップ通信を可能にするためのインターネットを含む外部のネットワークへのアクセスを提供するアクセスポイント又はルータに接続される。他の実施形態は、入力ブロック309のHDMI接続上でデータを伝達するセットトップボックスを使用して、ストリーミングされたデータをシステム300に提供する。さらなる他の実施形態は、入力ブロック309のRF接続を使用して、ストリーミングされたデータをシステム300に提供する。
システム300は、ディスプレイ330、スピーカ340及び他の周辺デバイス350を含む様々な出力デバイスに出力信号を提供することができる。他の周辺デバイス350は、実施形態の様々な例では、スタンドアロンDVR、ディスクプレーヤ、ステレオシステム、照明システム、及び、システム300の出力に基づいて機能を提供する他のデバイスのうちの1つ又は複数を含む。様々な実施形態では、制御信号は、AV.Link、CEC、又は、ユーザ介入の有無にかかわらずデバイス間制御を可能にする他の通信プロトコルなどのシグナリングを使用して、システム300とディスプレイ330、スピーカ340又は他の周辺デバイス350との間で伝達される。出力デバイスは、専用接続を介して、それぞれのインタフェース306、307及び308を通じて、システム300に通信可能に結合することができる。或いは、出力デバイスは、通信チャネル320を使用して、通信インタフェース305を介して、システム300に接続することができる。ディスプレイ330及びスピーカ340は、電子デバイス(例えば、テレビなど)のシステム300の他のコンポーネントと共に単一のユニットに統合することができる。様々な実施形態では、ディスプレイインタフェース306は、例えば、タイミングコントローラ(T Con)チップなどのディスプレイドライバを含む。
例えば、入力309のRF部分が別個のセットトップボックスの一部である場合は、ディスプレイ330及びスピーカ340は、他のコンポーネントのうちの1つ又は複数から選択的に分離することができる。ディスプレイ330及びスピーカ340が外部のコンポーネントである様々な実施形態では、出力信号は、専用出力接続(例えば、HDMIポート、USBポート又はCOMP出力を含む)を介して提供することができる。本明細書で説明される実装形態は、例えば、方法若しくはプロセス、装置、ソフトウェアプログラム、データストリーム、又は、信号で実装することができる。実装の単一の形態の文脈においてのみ論じられる(例えば、方法としてのみ論じられる)場合であっても、論じられる特徴の実装形態は、他の形態(例えば、装置又はプログラム)でも実装することができる。装置は、例えば、適切なハードウェア、ソフトウェア及びファームウェアで実装することができる。方法は、例えば、コンピュータ、マイクロプロセッサ、集積回路又はプログラマブル論理デバイスを含む、例えば、一般に処理デバイスを指す装置(例えば、プロセッサなど)で実装することができる。また、プロセッサは、例えば、コンピュータ、携帯電話、ポータブル/携帯情報端末(「PDA」)、及び、エンドユーザ間の情報の通信を容易にする他のデバイスなどの通信デバイスも含む。
図4Aは、圧縮領域におけるコード化木単位及びコード化木の例を示す。HEVCビデオ圧縮規格では、動き補償時間予測は、ビデオの連続ピクチャ間に存在する冗長性を利用するために採用される。その達成のため、ピクチャは、いわゆるコード化木単位(CTU)に区分化され、そのサイズは、典型的には、64×64、128×128又は256×256画素である。各CTUは、圧縮領域(例えば、CTUの四分木分割)におけるコード化木によって表される。各リーフは、コード化単位(CU)と呼ばれる。
図4Bは、コード化単位、予測単位及び変換単位へのCTUの分割の例を示す。各CUには、次いで、いくつかのイントラ又はインター予測パラメータ予測情報)が与えられる。その達成のため、各CUは、1つ又は複数の予測単位(PU)に空間的に区分化され、各PUには、動きベクトルなどのいくつかの予測情報が割り当てられる。イントラ又はインターコード化モードは、CUレベルで割り当てられる。
本出願では、「再構築される」及び「復号される」という用語は、交換可能に使用することができ、「符号化される」及び「コード化される」という用語は、交換可能に使用することができ、「画像」、「ピクチャ」及び「フレーム」という用語は、交換可能に使用することができる。通常、一概には言えないが、「再構築される」という用語は、エンコーダ側で使用され、「復号される」という用語は、デコーダ側で使用される。「ブロック」又は「ピクチャブロック」という用語は、CTU、CU、PU、TU、CB、PB及びTBのいずれか1つを指すために使用することができる。それに加えて、「ブロック」又は「ピクチャブロック」という用語は、H.264/AVC又は他のビデオコード化規格において指定されるようなマクロブロック、パーティション及びサブブロックを指すために使用することができ、より一般的には、多くのサイズのサンプルのアレイを指すために使用することができる。
図5は、依存性スカラ量子化における2つのスカラ量子化器の使用を示す。依存性スカラ量子化は、JVET(寄稿JVET-J0014)において提案されるように、量子化に対する異なる再構築レベルを有する2つのスカラ量子化器を使用する。従来のスカラ量子化(例えば、HEVC及びVTM-1において使用されるような)と比べて、この手法の主効果は、変換係数の許容再構築値のセットが、再構築順序において現在の変換係数レベルに先行する変換係数レベルの値に依存することである。依存性スカラ量子化の手法は、(a)異なる再構築レベルを有する2つのスカラの量子化器を定義することと、(b)2つのスカラの量子化器間で切り替えるためのプロセスを定義することとによって実現される。使用される2つのスカラの量子化器は、図5に示される(Q0及びQ1によって表される)。利用可能な再構築レベルの場所は、量子化ステップサイズΔによって一意に指定される。変換係数の実際の再構築が整数演算を使用するという事実を無視すると、2つのスカラの量子化器Q0及びQ1は、以下の通り特徴付けられる。
Q0:第1の量子化器Q0の再構築レベルは、量子化ステップサイズΔの偶数の整数倍によって与えられる。この量子化器が使用される際は、逆量子化済みの変換係数t’は、
t’=2?k?Δ
に従って計算され、式中、kは、関連する量子化済みの係数(送信された量子化インデックス)を表す。
Q1:第2の量子化器Q1の再構築レベルは、ゼロに等しい再構築レベルに加えて、量子化ステップサイズΔの奇数の整数倍によって与えられる。逆量子化済みの変換係数t’は、
t’=(2?k-sgn(k))?Δ
のように、量子化済みの係数kの関数として演算され、式中、sgn(?)は、
sgn(x)=(k==0?0:(k<0?-1:1))
として定義される符号関数である。
使用されるスカラ量子化器(Q0又はQ1)は、ビットストリームで明示的にシグナルされるものではない。代わりに、現在の変換係数に対して使用される量子化器は、コード化/再構築順序において現在の変換係数に先行する量子化済みの係数のパリティ及び以下で紹介される有限状態機械の状態によって決定される。
図6A及び6Bは、VVCにおいてスカラ量子化器間で切り替えるためのメカニズムの例を示す。2つのスカラ量子化器(Q0とQ1)間の切り替えは、図6Aに示されるように、4つの状態(0、1、2又は3としてそれぞれラベル付けされる)を有する有限状態機械を介して実現される。所定の量子化済みの係数に対して考慮される有限状態機械の状態は、コード化/再構築順序において現在の量子化済みの係数に先行する量子化済みの係数kのパリティ及びこの先行する係数を処理する際に考慮される有限状態機械の状態によって一意に決定される。変換ブロックに対する逆量子化の開始時、状態は、0に等しく設定される。変換係数は、走査順(すなわち、エントロピー復号される順序と同じ順序)に再構築される。現在の変換係数が再構築された後、状態は更新される。kは、量子化済みの係数である。次の状態は、
state=stateTransTable[current#state][k&1]
のように現在の状態及び現在の量子化済みの係数kのパリティ(k&1)に依存し、式中、stateTransTableは、図6Bに示される状態遷移表を表し、演算子&は、2の補数演算におけるビット「積」演算子を指定する。
その上、いわゆる変換ブロック(TB)に含まれる量子化済みの係数は、以下で説明されるようにエントロピーコード化及び復号することができる。
最初に、変換ブロックは、コード化グループと呼ばれる(場合により、係数グループとも名付けられ、CGと略される)量子化済みの係数の4×4サブブロックに分割される。エントロピーコード化/復号は、いくつかの走査パスから作られており、走査パスは、図6Cによって示される対角方向走査順序に従ってTBを走査する。
VVCにおける変換係数コード化は、5つの主要なステップ、すなわち、走査、最終有意係数コード化、有意性マップコード化、係数レベル残余コード化、絶対レベル及び符号データコード化を伴う。
図6Cは、8×8変換ブロックのVVCにおいて使用されるようなCG間及び係数間の走査順序の例を示す。TBにわたる走査パスは、対角方向走査順序に従って順次に各CGを処理することを含み、各CG内の16個の係数も同様に、考慮される走査順序に従って走査される。走査パスは、TBの最終有意係数から始まり、DC係数に至るまですべての係数を処理する。
変換係数のエントロピーコード化は、以下のリスト内の最大で7つの構文要素を含む。
- coded#sub#block#flag:係数グループ(CG)の有意性
- sig#flag:係数の有意性 (ゼロ/非ゼロ)
- gt1#flag:係数レベルの絶対値が1より大きいかどうかを示す
- par#flag:1より大きい係数のパリティを示す
- gt3#flag:係数レベルの絶対値が3より大きいかどうかを示す
- remainder:係数レベルの絶対値に対する残存値(以前のパスにおいてコード化されたものより値が大きい場合)
- abs#level:係数レベルの絶対値の値(最大数のビンバジェット問題に対する現在の係数に対してCABACビンがシグナルされていない場合)
- sign#data:考慮されるCGに含まれるすべての有意係数の符号。それは、一連のビンを含み、各々は、各非ゼロ変換係数の符号(0:正、1:負)をシグナルする。
上記の要素(符号は別として)のサブセットを復号することによって量子化済みの係数の絶対値が分かった時点で、その絶対値に関するその係数に対するさらなる構文要素のコード化は行われなくなる。同じように、符号フラグは、非ゼロ係数に対してのみシグナルされる。
所定のCGに必要なすべての走査パスは、次のCGに進む前に、そのCGのすべての量子化済みの係数を再構築できるまでコード化される。
全体的な復号TB解析プロセスは、以下の主要なステップから作られている。
1.最終有意係数座標を復号する。これは、last#sig#coeff#x#prefix、last#sig#coeff#y#prefix、last#sig#coeff#x#suffix及びlast#sig#coeff#y#suffixという構文要素を含む。これにより、TB全体における最終非ゼロ係数の空間位置(x座標及びy座標)がデコーダに提供される。
次いで、TBの最終有意係数を含むCGからTBの左上のCGまでの連続するCGごとに、以下のステップが適用される。
2.CG有意性フラグを復号する(VVC仕様においてcoded#sub#block#flagと呼ばれる)
3.考慮されるCGの各係数に対する有意係数フラグを復号する。これは、sig#flagという構文要素に相当する。これは、CGのどの係数が非ゼロであるかを示す。
次の解析段階は、考慮されるCGの、非ゼロとして知られている係数に対する、係数レベルに関連する。これは、以下の構文要素に関与する。
4.gt1#flag:このフラグは、現在の係数の絶対値が1より大きいか否かを示す。1より大きくない場合は、絶対値は1に等しい。
5.par#flag:このフラグは、現在の量子化済みの係数が偶数か否かを示す。現在の量子化済みの係数のgt1#flagが真である場合は、コード化される。par#flagがゼロである場合は、量子化済みの係数は偶数であり、そうでない場合は、量子化済みの係数は奇数である。par#flagがデコーダ側で解析された後、部分的に復号された量子化済みの係数は、(1+gt1#flag+par#flag)に等しく設定される。
6.gt3#flag:このフラグは、現在の係数の絶対値が3より大きいか否かを示す。3より大きくない場合は、1+gt1#flag+par#flagに等しい場合は、絶対値。1+gt1#flag+par#flagが2以上である場合は、gt3#flagはコード化される。gt3#flagが解析された時点で、量子化済みの係数値は、デコーダ側で1+gt1#flag+par#flag +(2*gt3#flag)になる。
7.remainder:これは、係数の絶対値を符号化する。これは、部分的に復号された絶対値が4より等しいもののより大きい場合に当てはまる。VVC草稿3の例では、各コード化グループに対して、通常のコード化ビンのバジェットの最大数は固定されることに留意されたい。従って、いくつかの係数に対しては、sig#flag、gt1#flag及びpar#flagという要素のみをシグナルできる一方で、他の係数に対しては、gt3#flagもシグナルすることができる。従って、コード化済み及び解析済みのremainderの値は、考慮される係数に対して既に復号されているフラグに対して演算され、従って、部分的に復号された量子化済みの係数の関数として演算される。
8.abs#level:これは、通常のコード化ビンの最大数の問題に対する、考慮されるCGのどのフラグ(sig#flag、gt1#flag、papr#flag又はgt3#flagの間)もコード化されていない係数の絶対値を示す。この構文要素は、remainderという構文要素と同様に、ライス-ゴロム二進化及びバイパスコード化が行われる。
9.sign#flag:これは、非ゼロ係数の符号を示す。これは、バイパスコード化される。
図7Aは、VVC草稿4による変換ブロックに対するコード化/解析のための構文要素を示す。コード化/ペアリングは、4パスプロセスを含む。図から分かるように、所定の変換ブロックに対し、最終有意係数の位置が最初にコード化される。次いで、最終有意係数を含むCG(このCGを除く)及び第1のCGからの各CGに対し、CGの有意性がシグナルされ(coded#sub#block#flag)、CGが有意である事例では、図7Bによって示されるように、そのCGに対する残差コード化が行われる。
図7Bは、VVC草稿4において指定されるようなCGレベル残差コード化構文を示す。その構文は、以前に紹介した考慮されるCGのsig#flag、gt1#flag、par#flag、gt3#flag、remainder、abs#level及びsign#dataという構文要素をシグナルする。図は、VVC草稿4による、sig#flag、gt1#flag、par#flag、gt3#flag、remainder及びabs#levelという構文要素のシグナリング及び解析を示す。EPは、「等確率の(equi-probable)」を意味し、該当ビンは算術的にはコード化されないが、バイパスモードでコード化されることを意味する。バイパスモードは、ビットの直接的な書き込み/解析を行い、それは、一般に、符号化又は解析を希望するバイナリ構文要素(ビン)に等しい。
その上、VVC草稿4は、CUレベルから残差サブブロック(CG)レベルに至るまでの階層的な構文配列を指定する。
図8Aは、VVC草稿4の例において指定されるようなCUレベル構文を示す。その構文は、考慮されるCUのコード化モードをシグナルすることを含む。cu#skip#flagは、CUがマージスキップモードである場合にシグナルする。CUがマージスキップモードではない場合は、cu#pred#mode#flagは、cuPredModeの変数値を示し、従って、現在のCUの予測モードがイントラ予測(cuPredMode=MODE#INTRA)又はインター予測(cuPredMode=MODE#INTER)を通じてコード化される場合は。
非スキップ及び非イントラモードの事例では、次のフラグは、現在のCUに対するイントラブロックコピー(IBC)モードの使用を示す。構文の続きは、現在のCUのイントラ又はインター予測データを含む。構文の最後は、現在のCUと関連付けられた変換木のシグナリング専用である。この変換木のシグナリングは、cu#cbfという構文要素から始まり、それは、いくつかの非ヌル残差データが現在のCUに対してコード化されることを示す。このフラグが真に等しい事例では、図8Bによって示される構文配列に従って、現在のCUと関連付けられたtransform#treeがシグナルされる。
図8Bは、VVC草稿4の例のtransform#treeという構文構造を示す。その構文は、基本的に、CUが1つ又はいくつかの変換単位(TU)を内包する場合にシグナルすることを含む。最初に、CUサイズが最大許容TUサイズより大きい場合は、CUは、四分木方式で4つのサブ変換木に分割される。そうでない場合及び現在のCUに対してISP(イントラサブ区分化)又はSBT(サブブロック変換)が使用されない場合は、現在の変換木は区分化されず、まさに1つのTUを内包し、図8Cの変換単位構文表を通じてシグナルされる。そうでなければ、CUがイントラモードであり、ISP(イントラサブ区分化)モードが使用される場合は、CUは、いくつか(実際には、2つ)のTUに分けられる。2つのTUの各々は、図8Cの変換単位構文表を通じて相次いでシグナルされる。そうでなければ、CUがインターモードであり、SBT(サブブロック変換)モードが使用される場合は、CUは、CUレベルのSBT関連の復号済みの構文に従って2つのTUに分けられる。2つのTUの各々は、図8Cの変換単位構文表を通じて相次いでシグナルされる。
図8Cは、VVC草稿4の例における変換単位レベル構文配列を示す。その構文は、以下のものから作られている。最初に、tu#cbf#luma、tu#cbf#cb及びtu#cbf#crフラグはそれぞれ、各成分に対応する非ヌル残差データが現在のTUの各変換ブロックに内包されていることを示す。各成分に対し、対応するcbfフラグが真である場合は、対応する残差変換ブロックをコード化するために、変換ブロックレベルのresidual#tb構文表が使用される。また、transform#unitレベルの構文は、いくつかのコード化済み、変換済み及び量子化済みのブロック関連構文(すなわち、デルタQP情報(存在する場合)及び考慮されるTUをコード化するために使用された変換のタイプ)も含む。
図9A及び9Bはそれぞれ、CABAC復号及び符号化プロセスを示す。CABACは、コンテキスト適応型二進算術コード化(CABAC)を表し、優れた圧縮効率でロスレス圧縮を提供するため、例えば、HEVC又はVVCにおいて使用されるエントロピー符号化の形態である。図9Aのプロセスへの入力は、コード化済みのビットストリームを含み、典型的には、HEVC仕様又はそのさらなる進化型に準拠する。復号プロセスのいずれの時点においても、デコーダは、どの構文要素を次に復号すべきか分かっている。これは、標準化されたビットストリーム構文及び復号プロセスにおいて十分に指定されている。その上、デコーダは、復号予定の現在の構文要素をどのように二進化するか(すなわち、各々は「1」又は「0」に等しい、ビンと呼ばれるバイナリシンボルのシーケンスとして表される)及びビン文字列の各ビンがどのように符号化されているかについても分かっている。
従って、CABAC復号プロセスの第1の段階(図9Aの左側)は、一連のビンを復号する。各ビンに対し、デコーダは、各ビンがバイパスモードに従って符号化されているか又は通常のモードに従って符号化されているかについて分かっている。バイパスモードでは、ビットは、単純にビットストリームから読み取られ、得られた値は、現在のビンに割り当てられる。このモードは、単刀直入であり、従って、高速であり、集約的な資源利用を必要としないという利点を有する。それは、典型的には効率的であり、従って、均一な統計的分布(すなわち、「1」に等しい確率と「0」に等しい確率が等しい)を有するビンに対して使用される。
それとは逆に、現在のビンがバイパスモードでコード化されていない場合は、それは、いわゆる通常のコード化で(すなわち、コンテキストベースの算術コード化を通じて)コード化されていることを意味する。このモードは、はるかに資源集約的なものである。
その事例では、考慮されるビンの復号は、次のように進む。最初に、現在のビンの復号のためのコンテキストが得られる。コンテキストは、図9Aのコンテキストモデラによって与えられる。コンテキストの目標は、何らかのコンテキストのプライア(prior)又は情報Xを考慮して、現在のビンが「0」の値を有する条件付きの確率を得ることである。ここでのプライアXは、現在のビンが復号されている際に、エンコーダ側とデコーダ側の両方で同期的に利用可能な、何らかの既に復号されている構文要素の値である。
典型的には、ビンの復号のために使用されるプライアXは、規格において指定されており、復号予定の現在のビンと統計的に相関していることを理由に選ばれる。このコンテキスト情報の使用において興味深いことは、ビンのコード化のレートコストが低減されることである。これは、ビンとXとの間に相関性があることを理由にXが与えられれば、ビンの条件付きのエントロピーが低くなるという事実に基づく。以下の関係は、情報理論において周知である。
H(bin│X)<H(bin)
それは、ビンとXが統計的に相関している場合にXが既知であるビンの条件付きのエントロピーは、ビンのエントロピーより低いことを意味する。従って、コンテキスト情報Xは、ビンが「0」である確率又は「1」である確率を得るために使用される。これらの条件付きの確率を考慮すると、図14の通常の復号エンジンは、二進値ビンの算術復号を実行する。次いで、ビンの値は、現在のコンテキスト情報Xが既知である現在のビンと関連付けられた条件付きの確率の値を更新するために使用される。これは、図9Aのコンテキストモデル更新ステップと呼ばれる。ビンが復号されている(又はコード化されている)限り、各ビンに対してコンテキストモデルを更新することにより、各バイナリ要素に対するコンテキストモデリングの漸進的な精緻化が可能になる。従って、CABACデコーダは、通常の符号化ビンの各々の統計的な挙動を漸進的に学習する。
コンテキストモデラ及びコンテキストモデル更新ステップは、エンコーダ側とデコーダ側において厳密に同一の動作である。
現在のビンの通常の算術復号又はそのバイパス復号により、どのようにコード化されたかに応じて、一連の復号ビンが得られる。
図9Aの右側に示されるCABAC復号の第2の段階は、この一連のバイナリシンボルをより高いレベルの構文要素に変換することを含む。構文要素は、フラグの形態を取ることができ、その事例では、現在の復号ビンの値を直接取り入れる。その一方で、考慮される標準仕様に従って現在の構文要素の二進化がいくつかのビンのセットに対応する場合は、図9Aの「構文要素に対するバイナリコードワード」と呼ばれる変換ステップが行われる。
このステップは、図9Bに示されるようなエンコーダによって行われた二進化ステップの逆を進める。従って、ここで実行される逆変換は、これらの構文要素のそれぞれの復号済みの二進化バージョンに基づいて、それらの構文要素の値を得ることを含む。
図1のエンコーダ100、図2のデコーダ200及び図3のシステム1000は、以下で説明される実施形態の少なくとも1つを実装するように適応される。
現在のビデオコード化システム(例えば、VVC草稿4)では、係数グループコード化プロセスに対して何らかのハード制約が課され、ハードコード化される最大数の通常のCABACビンは、一方の側では、sig#flag、gt1#flag及びparity#flagという構文要素に対して採用することができ、他方の側では、gt3#flagという構文要素に対して採用することができる。より正確に言えば、4×4コード化グループ(又は係数グループ若しくはCG)レベル制約は、CABACデコーダエンジンによって単位エリアあたり最大数の通常のビンを解析しなければならないことを保証する。しかし、通常のビンのCABACコード化の使用の制限により、レート歪みが非最適なビデオ圧縮につながる可能性がある。実際に、ピクチャに対して限られた数の通常のビンしか許容されない場合は、コード化予定の考慮されるピクチャの一部がスキップモード(従って、残差なし)でコード化される有意エリアを内包する一方で、ピクチャの別の有意エリアが残差コード化を採用する事例では、この総バジェットの利用率は大幅に低くなり得る。そのような事例では、最大数の通常のビンに対する低レベル(すなわち、4×4CGレベル)の制約により、ピクチャの通常のビンの総数は、許容可能なピクチャレベル閾値をはるかに下回ることになり得る。
少なくとも1つの実施形態は、高レベルの制約が尊重され、現在の手法と比べて圧縮効率が改善されるように、ブロック及びそれらの係数グループの残差コード化プロセスにおけるビンの通常のCABACコード化の最大使用量に対する高レベルの制約を取り扱うことに関連する。言い換えれば、通常のコード化ビンのバジェットは、CGより大きなピクチャエリアにわたって割り当てられ、従って、多数のCGがカバーされ、その数は、単位エリアあたりの通常のビンの平均許容数から決定される。例えば、1つのサンプルあたり平均で1.75の通常のコード化ビンを許容することができる。次いで、このバジェットは、より小さな単位にわたってより効率的に分配することができる。異なる実施形態では、より高いレベルの制約は、変換ブロック、変換単位、コード化単位、コード化木単位又はピクチャレベルで設定される。これらの実施形態は、図10に示されるようなCABACオプティマイザによって実装することができる。
少なくとも1つの実施形態では、より高いレベルの制約は、変換単位レベルで設定される。そのような実施形態では、符号化/復号のために全変換単位に対して許容される通常のビンの数は、単位エリアあたりの通常のビンの平均許容数から決定される。TUに対して得られた通常のビンのバジェットから、TUの各変換ブロック(TB)に対して許容される通常のビンの数が導出される。変換ブロックは、同じTU及び同じ色成分に属する変換係数のセットである。次に、変換ブロックにおいて許容される通常のビンの数を考慮して、全TBに対して許容される通常のビンのこの数の制約の下で、残差コード化又は復号が適用される。従って、本明細書では、修正された残差コード化及び復号プロセスが提案され、修正された残差コード化及び復号プロセスでは、CGレベルの通常のビンのバジェットの代わりに、TBレベルの通常のビンのバジェットが考慮される。この目的のため、いくつかの実施形態が提案される。
図10は、本原理の実施形態による、CABACオプティマイザを含むCABAC符号化プロセスを示す。少なくとも1つの実施形態では、CABACオプティマイザ190は、コード化グループのセットに対して通常のコード化を使用して符号化された(又は符号化予定の)ビンの最大数を表すバジェットを取り扱う。このバジェットは、例えば、通常のコード化ビンの1つのサンプルあたりのバジェットに考慮されるデータ単位の表面(すなわち、その表面に含まれるサンプルの数)を乗じることによって決定される。例えば、TBレベルで固定された通常のコード化ビンのバジェットの事例では、1つのサンプルあたりの通常のコード化ビンの許容数には、考慮される変換ブロックに含まれるサンプルの数が乗じられる。CABACオプティマイザ190の出力は、通常のコード化モード又はバイパスコード化モードでコード化を制御し、従って、コード化の効率に大いに影響を与える。
図11は、本原理の実施形態による符号化プロセスにおいて使用されるCABACオプティマイザのフローチャートの例を示す。このフローチャートは、考慮されるコード化グループの新しいセットの各々に対して実行される。従って、異なる実施形態によれば、このフローチャートは、各ピクチャ、各CTU、各CU、各TU又は各TBに対して起こり得る。ステップ191では、プロセッサ301は、上記で説明されるように決定された通常のコード化に対するバジェットを割り当てる。ステップ192では、プロセッサ301は、コード化グループのセットにわたってループし、ステップ193では、最後のコード化グループに達したかをチェックする。ステップ194では、各コード化グループに対し、プロセッサは、通常のコード化ビンの入力バジェットでコード化グループを処理する。通常のコード化ビンのバジェットは、考慮されるコード化済みのグループの処理の間に減少する(すなわち、通常のコード化ビンのバジェットは、ビンが通常のモードでコード化される度にデクリメントされる)。通常のコード化ビンのバジェットは、コード化グループコード化又は復号プロセスの出力パラメータとして返される。
図12は、CABACオプティマイザを使用してコード化グループを符号化/復号するための修正されたプロセスの例を示す。上記で紹介したように、残差コード化専用の通常のCABACビンの数の割り当ては、4×4コード化グループより高いレベルで実行される。これを行うため、コード化グループを符号化/復号するためのプロセスは、従来の機能と比べて、CGがコード化又は復号されている際に通常のビンの現在のバジェットを表す入力パラメータを追加することによって修正される。従って、このバジェットは、現在のCGを符号化/復号するために使用された通常のビンの数に従って現在のCGをコード化又は復号することによって修正される。通常のビンのバジェットを表す入力/出力パラメータは、図12では、numRegBins#in#outと呼ばれる。所定のCGの残差データ自体をコード化するためのプロセスは、通常のCABACビンの許容数が外部の手段によって与えられること以外は、従来の方式と同じであり得る。図12の事例と同様に、通常のビンがコード化/復号される度、このバジェットは、1ずつデクリメントされる。
従って、本開示の少なくとも1つの実施形態は、係数グループコード化/解析機能の入力/出力パラメータとして通常のビンのバジェットを処理することを含む。従って、通常のビンのバジェットは、CGコード化/解析レベルより高いレベルで決定することができる。異なる実施形態は、異なるレベル(すなわち、変換ブロック、変換単位、コード化単位、コード化木単位又はピクチャレベル)でバジェットを決定することを提案する。
図13Aは、通常のビンのバジェットが変換ブロックレベルで決定される実施形態の例を示す。そのような実施形態では、バジェットは、2つの主要なパラメータ(現在の変換ブロックのサイズ及びピクチャエリアの所定の単体に対して固定された通常のビンの基本バジェット)の関数として決定される。本明細書では、考慮されるエリア単位はサンプルである。現在のVVC草稿2では、4×4CGに対して32個の通常のビンが許容されているため、それは、1つの成分サンプルあたり平均で2つの通常のビンが許容されていることを意味する。提案される変換ブロックレベルの通常のビンの割り当ては、単一のエリアあたりの通常のビンのこの平均レートに基づく。
少なくとも1つの実施形態では、考慮される変換ブロックに割り当てられるバジェットは、変換ブロック表面と1つのサンプルあたりの通常の割り当てられた数との積として計算される。次に、バジェットは、考慮される変換ブロックにおける各有意係数グループに対するCG残差コード化/解析プロセスに渡される。
図13Bは、通常のビンのバジェットが最終有意係数の位置に従って変換ブロックレベルで決定される実施形態の例を示す。この変形実施形態によれば、現在の変換ブロックに対して許容される通常のビンの数は、考慮される変換ブロックにおける最終有意係数の位置の関数として計算される。そのような手法の利点は、通常のビンを割り当てる際、考慮される変換ブロックに含まれるエネルギーにより良く適合することである。典型的には、高エネルギー変換ブロックには、より多くのビンを割り当てることができ、低エネルギー変換ブロックには、より少ない通常のビンを割り当てることができる。
図14Aは、通常のビンのバジェットが変換単位レベルで決定される実施形態の例を示す。示されるように、unitary#budget(すなわち、1つのサンプルあたり許容される通常のビンの平均レート)は、依然として2に等しい。通常のビンのTUレベルのバジェットは、このレートに考慮される変換単位に内包されるサンプルの総数を乗じることによって決定される(すなわち、4:2:0のカラーフォーマットの例では、width*height*3/2)。次いで、この総バジェットは、考慮される変換単位に内包されるすべての変換ブロックのコード化のために使用される。そのバジェットは、各色成分に対する残差変換ブロックコード化/解析プロセスに入力/出力パラメータとして渡される。言い換えれば、考慮される変換単位の変換ブロックがコード化/解析される度、バジェットは、その変換単位において相次いでコード化/解析される変換ブロックのコード化/解析において通常のビンの数だけ減少する。
図14Bは、通常のビンのバジェットが、変換単位レベルで決定され、異なる変換ブロック間の相対表面の関数として及び考慮される変換単位の既にコード化/解析されている変換ブロックにおいて使用される通常のビンの関数として変換ブロック間で割り当てられる実施形態の例を示す。この実施形態では、ルマTBに割り当てられる通常のビンは、TUレベルの総バジェットの2/3である。次に、Cb TBバジェットは、ルマTBがコード化/解析された後の残りのバジェットの半分である。最後に、Cr TBバジェットは、2つの最初のTBがコード化/解析された後の残りのTUレベルのバジェットに設定される。その上、さらなる実施形態では、変換単位全体のバジェットは、そのTUの1つ又は複数のTBがヌル残差でコード化されるという知識に基づいて、そのTUの変換ブロック間で共有できることに留意されたい。これは、例えば、tu#cbf#luma、tu#cbf#cb又はtu#cbf#crフラグの解析を通じて分かっている。従って、TBレベルの残差コード化/解析プロセスは、図14Cに示される修正されたプロセスによって示されるように、この変形実施形態に適応される。そのような実施形態は、バジェットが階層のより低いレベルで割り当てられた際より優れたコード化効率をもたらす。実際に、いくつかのCG又はTBが非常に低いエネルギーのものである場合は、それらのCG又はTBでは、他のものと比べて低減された数のビンが採用され得る。従って、より大きな数のビンのコード化/解析が必要とされるCG又はTBにおいて、より大きな数の通常のビンを使用することができる。
図15Aは、通常のビンのバジェットがコード化単位レベルで割り当てられる実施形態の例を示す。そのバジェットは、以前のTUレベルで固定される実施形態に対するものと同様に演算されるが、通常のビンのサンプルレート及びCUサイズに基づいて演算される。次いで、演算された通常のビンのバジェットは、図15Bの変換木コード化/解析手順に渡される。図15Bは、CUレベルで割り当てられた通常のビンのバジェットに基づく現在のCUと関連付けられた変換木の適応させたコード化/解析を示す。ここでは、CUレベルは、基本的には、考慮される変換木に内包される各変換単位のコード化に相次いで渡される。また、そのバジェットは、各TUのコード化において採用される通常のビンの数だけ減少する。図15Cは、バジェットがCUレベルで固定された際のコード化木コード化/解析プロセスの変形実施形態を示す。典型的には、このプロセスは、考慮される変換木の現在のTUをコード化する際、既にコード化/解析されているTUにおいて使用される通常のビンの関数として、CUレベルの総バジェットを更新する。例えば、インターCUのSBT(サブブロック変換)モードの事例では、VVC草稿4は、CUが2つのTUに分けられ、そのうちの1つがヌル残差を有することについて述べている。その事例では、この実施形態は、CUレベルの通常のビンの総バジェットが非ヌル残差を有するTU専用であることを提案し、それにより、SBTモードでのそのようなインターCUに対するコード化効率がより優れたものになる。その上、事例がISP(イントラサブ区分化)では、イントラCUのこのVVC区分化モードは、CUをいくつかのTUに分ける。その事例では、TUのコード化/解析は、同じCU内の先行するTUに割り当てられた未使用の通常のビンのバジェットの再利用を試みる。図15D及び図15Eは、通常のビンのバジェットがCUレベルで固定された際の、本実施形態用に適応させた変換単位コード化/解析プロセスを示す。それらは、図14A及び図14Bのプロセスのそれぞれを本実施形態に適応させたものである。
少なくとも実施形態では、残差コード化において使用される通常のCABACビンのバジェットは、CTUレベルで固定される。これにより、許容される通常のビンの総バジェットをよりうまく利用することができ、従って、以前の実施形態と比べてコード化効率を改善することができる。典型的には、最初にスキップCU専用とされたビンは、有利には、他の非スキップCUに対して使用することができる。
少なくとも実施形態では、残差コード化において使用される通常のCABACビンのバジェットは、ピクチャレベルで固定される。これにより、許容される通常のビンの総バジェットをより一層うまく利用することができ、従って、以前の実施形態と比べてコード化効率を改善することができる。典型的には、最初にCUのスキップ専用とされたビンは、有利には、他の非スキップCUに対して使用することができる。
少なくとも実施形態では、所定のピクチャの許容される通常のビンの平均レートは、考慮されるピクチャが属する時間層/深度に従って固定される。例えば、ランダムアクセスコード化構造では、ピクチャのグループの時間的構造は、階層Bピクチャ配列に順応する。この構成では、ピクチャは、スケーラブルな時間層において整理される。上位層からのピクチャは、下位時間層からの参照ピクチャに依存する。それに反して、下位層のピクチャは、いかなる上位層のピクチャにも依存しない。上位時間層は、典型的には、下位層のピクチャより高い量子化パラメータでコード化され、従って、より低い質でコード化される。その上、下位層からのピクチャは、全シーケンスにわたる全体的なコード化効率に多大な影響を与える。従って、最適なコード化効率でこれらのピクチャを符号化することが興味深い。この実施形態によれば、上位時間層からのピクチャよりも下位層からのピクチャの方に通常のCABACビンのより高いサンプルベースのレートを割り当てることが提案される。
図16A及び図16Bは、通常のビンのバジェットがCGレベルより高いレベルで割り当てられる実施形態の例を示し、2つのタイプのCGコード化/解析プロセスを使用するためのものである。図16Aによって示される第1のタイプは、「all#bypass」と呼ばれ、CGと関連付けられたすべてのビンをバイパスモードでコード化することを含む。これは、CGの変換係数の大きさがabs#levelという構文要素のみを通じてコード化されることを含意する。図16Bによって示される第2のタイプは、「all#regular」と呼ばれ、sig#flag、gt1#flag、par#flag及びgt3#flagという構文要素に対応するすべてのビンを通常のモードでコード化するものである。この実施形態では、CGレベルより高いレベルで固定された通常のビンのバジェットを考慮して、TBコード化プロセスは、現在考慮されている通常のビンの考慮されるバジェットが十分に使用されているか否かに従って、「all#regular」CGコード化モードと「all#bypass」CGコード化モードとの間で切り替えることができる。
様々な実装形態は復号を伴う。「復号」は、この出願で使用される場合は、例えば、表示に適した最終的な出力を生成するために、受信された符号化済みのシーケンスに対して実行されるプロセスのすべて又は一部を包含し得る。様々な実施形態では、そのようなプロセスは、例えば、エントロピー復号、逆量子化、逆変換及び差分復号など、典型的にはデコーダによって実行されるプロセスのうちの1つ又は複数を含む。様々な実施形態では、そのようなプロセスは、同様に又はその代替として、例えば、図10~図16の図で提示される実施形態など、この出願において説明される様々な実装形態のデコーダによって実行されるプロセスを含む。
さらなる例として、一実施形態では、「復号」は、エントロピー復号のみを指し、別の実施形態では、「復号」は、差分復号のみを指し、別の実施形態では、「復号」は、エントロピー復号と差分復号との組合せを指す。「復号プロセス」という記載が具体的にある動作のサブセットを指すことを意図するか又は概してより広範な復号プロセスを指すことを意図するかは、特定の説明の文脈に基づいて明らかになり、当業者によって十分理解されていると考えられている。
様々な実装形態は符号化を伴う。「復号」についての上記の論考に類似した方法では、「符号化」は、この出願で使用される場合は、例えば、符号化済みのビットストリームを生成するために、入力ビデオシーケンスに対して実行されるプロセスのすべて又は一部を包含し得る。様々な実施形態では、そのようなプロセスは、例えば、区分化、差分符号化、変換、量子化及びエントロピー符号化など、典型的にはエンコーダによって実行されるプロセスのうちの1つ又は複数を含む。様々な実施形態では、そのようなプロセスは、同様に又はその代替として、例えば、図10~図16の図の実施形態など、この出願において説明される様々な実装形態のエンコーダによって実行されるプロセスを含む。
さらなる例として、一実施形態では、「符号化」は、エントロピー符号化のみを指し、別の実施形態では、「符号化」は、差分符号化のみを指し、別の実施形態では、「符号化」は、差分符号化とエントロピー符号化との組合せを指す。「符号化プロセス」という記載が具体的にある動作のサブセットを指すことを意図するか又は概してより広範な符号化プロセスを指すことを意図するかは、特定の説明の文脈に基づいて明らかになり、当業者によって十分理解されていると考えられている。
本明細書で使用される構文要素は記述的用語であることに留意されたい。従って、それらの構文要素は、他の構文要素名の使用を除外しない。
この出願は、ツール、特徴、実施形態、モデル、手法などを含む、多様な態様を説明する。これらの態様の多くは、特異性を持たせて説明しており、少なくとも個々の特性を示すために、制限を意図すると思われるような方法で説明している場合が多い。しかし、これは、説明を明確にするためであり、それらの態様の応用又は範囲を制限するものではない。現に、異なる態様はすべて、さらなる態様を提供するために、組み合わせたり交換したりすることができる。その上、態様は、先の出願において説明されている態様と組み合わせたり交換したりすることもできる。この出願において説明される及び企図される態様は、多くの異なる形態で実装することができる。上記の図1、図2及び図3の図は、いくつかの実施形態を提供するが、他の実施形態も企図され、図の論考は、実装形態の幅広さを制限しない。
本出願では、「再構築される」及び「復号される」という用語は、交換可能に使用することができ、「画素」及び「サンプル」という用語は、交換可能に使用することができ、「画像」、「ピクチャ」及び「フレーム」という用語は、交換可能に使用することができる。通常、一概には言えないが、「再構築される」という用語は、エンコーダ側で使用され、「復号される」という用語は、デコーダ側で使用される。
本明細書では様々な方法が説明されており、方法の各々は、説明される方法を達成するための1つ又は複数のステップ又は行動を含む。方法の正しい動作のためにステップ又は行動の特定の順序が必要でない限り、特定のステップ及び/又は行動の順序及び/又は使用を修正することも、組み合わせることもできる。
本出願では、例えば、ブロックサイズに関して、様々な数値が使用されている。具体的な値は、例示を目的とするものであり、説明される態様は、これらの具体的な値に限定されない。
「一実施形態」、「実施形態」、「一実装形態」又は「実装形態」及びその他の変形形態への言及は、実施形態と関係して説明される特定の特徴、構造、特性などが少なくとも1つの実施形態に含まれることを意味する。従って、本明細書全体を通じて様々な場所に現れる「一実施形態では」、「実施形態では」、「一実装形態では」又は「実装形態では」という記載及び他の任意の変形形態の出現は、必ずしもすべてが同じ実施形態を指すとは限らない。
それに加えて、この出願又はその特許請求の範囲は、様々な情報片を「決定すること」について言及し得る。情報を決定することは、例えば、情報を推定すること、情報を計算すること、情報を予測すること、又は、メモリから情報を回収することのうちの1つ又は複数を含み得る。
さらに、この出願又はその特許請求の範囲は、様々な情報片に「アクセスすること」について言及し得る。情報にアクセスすることは、例えば、情報を受信すること、情報を回収すること(例えば、メモリから)、情報を格納すること、情報を移動すること、情報をコピーすること、情報を計算すること、情報を予測すること、又は、情報を推定することのうちの1つ又は複数を含み得る。
それに加えて、この出願又はその特許請求の範囲は、様々な情報片を「受信すること」について言及し得る。受信することは、「アクセスすること」と同様に、幅広い用語であることを意図する。情報を受信することは、例えば、情報にアクセスすること又は情報を回収すること(例えば、メモリ若しくは光媒体記憶装置から)のうちの1つ又は複数を含み得る。さらに、「受信すること」は、典型的には、例えば、情報を格納すること、情報を処理すること、情報を送信すること、情報を移動すること、情報をコピーすること、情報を消去すること、情報を計算すること、情報を決定すること、情報を予測すること、又は、情報を推定することなど、動作の間にいろいろな方法で関与する。
次の「/」、「及び/又は」、「~の少なくとも1つ」のいずれかの使用は、例えば、「A/B」、「A及び/又はB」、「A及びBの少なくとも1つ」の事例では、第1のリストオプション(A)のみの選択、第2のリストオプション(B)のみの選択、又は、両方のオプション(AとB)の選択を包含することを意図することを理解されたい。さらなる例として、「A、B及び/又はC」並びに「A、B及びCの少なくとも1つ」の事例では、そのような記載は、第1のリストオプション(A)のみの選択、第2のリストオプション(B)のみの選択、第3のリストオプション(C)のみの選択、第1及び第2のリストオプション(A及びB)のみの選択、第1及び第3のリストオプション(A及びC)のみの選択、第2及び第3のリストオプション(B及びC)のみの選択、又は、すべての3つのオプション(A、B及びC)の選択を包含することを意図する。これは、この分野及び関連分野の当業者にとって容易に明らかであるように、リストされるアイテムの数だけ拡張することができる。
当業者には明らかであるように、実装形態は、例えば、格納又は送信することができる情報を伝えるようにフォーマットされた多様な信号を生成することができる。情報は、例えば、方法を実行するための命令、又は、説明される実装形態のうちの1つによって生成されたデータを含み得る。例えば、信号は、説明される実施形態のビットストリームを伝えるようにフォーマットすることができる。そのような信号は、例えば、電磁波として(例えば、スペクトルの高周波部分を使用して)又はベースバンド信号としてフォーマットすることができる。フォーマットすることは、例えば、データストリームを符号化すること、及び、符号化済みのデータストリームを有する搬送波を変調することを含み得る。信号が伝える情報は、例えば、アナログ又はデジタル情報であり得る。信号は、知られているように、多様な異なる有線又は無線リンク上で送信することができる。信号は、プロセッサ可読媒体上に格納することができる。

Claims (15)

  1. 限られた数の通常のビンを使用してコード化グループを含むピクチャエリアを表す構文要素をコード化する残差符号化プロセスを含むビデオ符号化方法であって、前記コード化が、CABAC符号化であり、前記通常のビンの数が、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される、ビデオ符号化方法。
  2. 通常のビンを使用してコード化グループを含むピクチャエリアを表すビットストリームを解析する残差復号プロセスを含むビデオ復号方法であって、前記復号が、CABAC復号を使用して行われ、前記通常のビンの数が、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される、ビデオ復号方法。
  3. 限られた数の通常のビンを使用してコード化グループを含むピクチャエリアを表す構文要素をコード化する残差符号化プロセスを含むビデオ符号化装置であって、前記コード化が、CABAC符号化であり、前記通常のビンの数が、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される、ビデオ符号化装置。
  4. 通常のビンを使用してコード化グループを含むピクチャエリアを表すビットストリームを解析する残差復号プロセスを含むビデオ復号装置であって、前記復号が、CABAC復号を使用して行われ、前記通常のビンの数が、多数のコード化グループ間で割り当てられたバジェットに基づいて決定される、ビデオ復号装置。
  5. 処理/コード化又は復号されているコード化グループに対し、多数のコード化グループ間で割り当てられる前記バジェットが、通常のCABACコード化又は復号モードを使用してバイナリ要素が処理/コード化又は復号される度にデクリメントされる、請求項1若しくは2に記載の方法又は請求項3若しくは4に記載の装置。
  6. 前記多数のコード化グループが、変換ブロックである、請求項5に記載の方法又は装置。
  7. 前記通常のビンの数が、前記変換ブロックの最終有意係数の位置に基づいて決定される、請求項6に記載の方法又は装置。
  8. 前記バジェットが、変換ブロックの表面に基づいて変換ブロック間で割り当てられる、請求項7に記載の方法又は装置。
  9. 前記多数のコード化グループが、変換単位である、請求項5に記載の方法又は装置。
  10. 前記バジェットが、前記変換単位の異なる変換ブロック間の相対表面の関数として、前記変換単位の変換ブロック間で割り当てられる、請求項9に記載の方法又は装置。
  11. 前記多数のコード化グループが、コード化単位である、請求項5に記載の方法又は装置。
  12. 前記多数のコード化グループが、コード化木単位である、請求項5に記載の方法又は装置。
  13. 前記多数のコード化グループが、ピクチャである、請求項5に記載の方法又は装置。
  14. プロセッサによって実行されると、請求項1~13の少なくとも一項に記載の方法のステップを実施するためのプログラムコード命令を含むコンピュータプログラム。
  15. 非一時的なコンピュータ可読媒体上に格納され、プロセッサによって実行されると、請求項1~13の少なくとも一項に記載の方法のステップを実施するためのプログラムコード命令を含むコンピュータプログラム製品。
JP2021541621A 2019-03-12 2020-03-06 ビデオコード化のための残差コード化における通常のビンの柔軟な割り当て Active JP7520853B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
EP19305292 2019-03-12
EP19305292.5 2019-03-12
EP19305645 2019-05-21
EP19305645.4 2019-05-21
EP19305649 2019-05-23
EP19305649.6 2019-05-23
PCT/US2020/021281 WO2020185530A1 (en) 2019-03-12 2020-03-06 Flexible allocation of regular bins in residual coding for video coding

Publications (3)

Publication Number Publication Date
JP2022523903A true JP2022523903A (ja) 2022-04-27
JPWO2020185530A5 JPWO2020185530A5 (ja) 2023-03-08
JP7520853B2 JP7520853B2 (ja) 2024-07-23

Family

ID=70918946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541621A Active JP7520853B2 (ja) 2019-03-12 2020-03-06 ビデオコード化のための残差コード化における通常のビンの柔軟な割り当て

Country Status (10)

Country Link
US (1) US20220150501A1 (ja)
EP (1) EP3939285A1 (ja)
JP (1) JP7520853B2 (ja)
KR (1) KR20210133978A (ja)
CN (1) CN113615183B (ja)
CA (1) CA3133210A1 (ja)
SG (1) SG11202108108TA (ja)
TW (1) TW202044835A (ja)
WO (1) WO2020185530A1 (ja)
ZA (1) ZA202105031B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979641A (zh) * 2021-02-21 2022-08-30 腾讯科技(深圳)有限公司 视频编解码方法、装置、计算机可读介质及电子设备
CN112995671B (zh) * 2021-02-21 2022-10-28 腾讯科技(深圳)有限公司 视频编解码方法、装置、计算机可读介质及电子设备
CN115706797A (zh) * 2021-08-05 2023-02-17 腾讯科技(深圳)有限公司 多媒体数据编码方法、装置、设备以及介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080151998A1 (en) 2006-12-21 2008-06-26 General Instrument Corporation Method and Apparatus for Providing Rate Control for Panel-Based Real Time Video Encoder
US8559499B2 (en) 2007-10-26 2013-10-15 Zoran (France) S.A. Frame buffer compression for video processing devices
HUE062605T2 (hu) * 2011-06-16 2023-11-28 Ge Video Compression Llc Mozgásvektor különbségek entrópia kódolása
CN107659813B (zh) * 2011-12-23 2020-04-17 韩国电子通信研究院 图像解码方法、图像编码方法和记录介质
US9191670B2 (en) 2012-01-17 2015-11-17 Qualcomm Incorporated Throughput improvement for CABAC coefficient level coding
CN108259900B (zh) * 2013-01-16 2021-01-01 黑莓有限公司 针对视频的上下文自适应二进制熵编码的变换系数编码
BR112016015109A2 (pt) * 2013-12-30 2017-08-08 Qualcomm Inc Simplificação de codificação residual dc delta em codificação de vídeo 3d
US9942551B2 (en) * 2015-01-30 2018-04-10 Qualcomm Incorporated Palette index grouping for video coding
EP3292690B1 (en) * 2015-06-23 2020-05-06 MediaTek Singapore Pte Ltd. Method and apparatus for transform coefficient coding of non-square blocks
WO2019027074A1 (ko) * 2017-08-04 2019-02-07 엘지전자(주) 멀티 심볼 엔트로피 코딩을 위한 멀티 심볼 매핑을 수행하는 방법 및 장치
WO2019029951A1 (en) * 2017-08-08 2019-02-14 Thomson Licensing METHOD AND APPARATUS FOR VIDEO ENCODING AND DECODING
US11483575B2 (en) * 2018-08-24 2022-10-25 Hfi Innovation Inc. Coding transform coefficients with throughput constraints
CN112956205B (zh) * 2018-10-05 2024-06-11 罗斯德尔动力有限责任公司 变换系数编码方法及其装置
KR20240018691A (ko) * 2019-01-14 2024-02-13 로즈데일 다이나믹스 엘엘씨 영상 코딩 시스템에서 레지듀얼 정보를 사용하는 영상 디코딩 방법 및 그 장치
US11523136B2 (en) * 2019-01-28 2022-12-06 Hfi Innovation Inc. Methods and apparatuses for coding transform blocks

Also Published As

Publication number Publication date
WO2020185530A1 (en) 2020-09-17
TW202044835A (zh) 2020-12-01
KR20210133978A (ko) 2021-11-08
CA3133210A1 (en) 2020-09-17
CN113615183A (zh) 2021-11-05
CN113615183B (zh) 2024-09-10
ZA202105031B (en) 2023-01-25
SG11202108108TA (en) 2021-09-29
EP3939285A1 (en) 2022-01-19
JP7520853B2 (ja) 2024-07-23
US20220150501A1 (en) 2022-05-12

Similar Documents

Publication Publication Date Title
US11936868B2 (en) Quantization for video encoding or decoding based on the surface of a block
US12075051B2 (en) Scalar quantizer decision scheme for dependent scalar quantization
JP2022521809A (ja) ビデオコーディングにおける係数領域ブロック差分パルスコード変調
JP7520853B2 (ja) ビデオコード化のための残差コード化における通常のビンの柔軟な割り当て
US11876968B2 (en) Method and device for picture encoding and decoding
JP2021525468A (ja) 部分的に共有されている輝度および彩度のコード化木を用いたビデオ符号化および復号化の方法および装置
JP2022518378A (ja) 画像予測方法、機器、及びシステム、装置、及び記憶媒体
JP2022523287A (ja) 通常コード化ビンの数の削減
US11463712B2 (en) Residual coding with reduced usage of local neighborhood
JP2022549312A (ja) コンテキストコード化bin(ccb)カウント方法の統合
WO2020185492A1 (en) Transform selection and signaling for video encoding or decoding
WO2020185387A1 (en) Method and device for picture encoding and decoding with forward and inverse mapping models
EP3742730A1 (en) Scalar quantizer decision scheme for dependent scalar quantization
JP2022541723A (ja) アフィン及びsbtmvp動きベクトル予測モードのためのhmvc
EP4082214A1 (en) Residual processing for video encoding and decoding
CN113273198A (zh) 用于视频编码和解码的多个编码单元之间的参数分组
CN113170137B (zh) 降低本地邻域的使用的残差译码
EP3576408A1 (en) Adaptive transformation and coefficient scan order for video coding
KR20240089756A (ko) 다층 코딩 및 디코딩을 위한 alf aps
JP2024513657A (ja) ビデオエンコード及びデコードのためのテンプレートマッチング予測
KR20210074388A (ko) 코딩 유형 또는 코딩 트리 유형의 시그널링을 이용한 비디오 인코딩 및 디코딩을 위한 방법 및 장치
JP2021520698A (ja) ビデオのコード化および復号。

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230228

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240213

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20240513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240515

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240710

R150 Certificate of patent or registration of utility model

Ref document number: 7520853

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150