JP7448549B2 - ビデオ符号化におけるビデオブロックのための量子化パラメータを導出するシステム及び方法 - Google Patents

ビデオ符号化におけるビデオブロックのための量子化パラメータを導出するシステム及び方法 Download PDF

Info

Publication number
JP7448549B2
JP7448549B2 JP2021541468A JP2021541468A JP7448549B2 JP 7448549 B2 JP7448549 B2 JP 7448549B2 JP 2021541468 A JP2021541468 A JP 2021541468A JP 2021541468 A JP2021541468 A JP 2021541468A JP 7448549 B2 JP7448549 B2 JP 7448549B2
Authority
JP
Japan
Prior art keywords
luminance
video
quantization parameter
tree
quantization
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
JP2021541468A
Other languages
English (en)
Other versions
JP2022518716A (ja
Inventor
ボッセン,フランク
ムケシュ ミスラ,キラン
アンドリュー セガール,クリストファー
ウェイジャ チュー,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FG Innovation Co Ltd
Original Assignee
FG Innovation Co Ltd
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 FG Innovation Co Ltd filed Critical FG Innovation Co Ltd
Publication of JP2022518716A publication Critical patent/JP2022518716A/ja
Application granted granted Critical
Publication of JP7448549B2 publication Critical patent/JP7448549B2/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/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/167Position within a video image, e.g. region of interest [ROI]
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/96Tree coding, e.g. quad-tree coding
    • 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/186Methods 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 colour or a chrominance component

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)

Description

本開示は、ビデオ符号化に関し、より具体的には、量子化パラメータを導出するための技法に関する。
デジタルビデオ機能は、デジタルテレビ、ラップトップ又はデスクトップコンピュータ、タブレット型コンピュータ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲーミングデバイス、いわゆるスマートフォンを含むセルラー電話、医療用イメージングデバイスなどを含む、広範囲のデバイスに組み込むことができる。デジタルビデオは、ビデオ符号化規格に従って符号化することができる。ビデオ符号化規格は、ビデオ圧縮技術を組み込むことができる。ビデオ符号化規格の例としては、ISO/IEC MPEG-4 Visual及びITU-T H.264(ISO/IEC MPEG-4 AVCとしても既知である)並びにHigh-Efficiency Video Coding(HEVC)が挙げられる。HEVCは、参照により本明細書に組み込まれ、本明細書ではITU-T H.265と称される、High-Efficiency Video Coding(HEVC),Rec.ITU-T H.265(2016年12月)に記載されている。ITU-T H.265に関する拡張及び改良が、次世代ビデオ符号化規格の開発のために現在検討されている。例えば、ITU-T Video Coding Experts Group(VCEG)及びISO/IEC (Moving PiCTUre Experts Group(MPEG)(Joint Video Exploration Team (JVET)と集合的に呼ばれる)は、現在のHEVC規格の圧縮能力を著しく上回る圧縮能力を有する将来のビデオ符号化技術の標準化についての潜在的必要性を検討している。参照により本明細書に組み込まれる、The Joint Exploration Model 7 (JEM 7),Algorithm Description of Joint Exploration Test Model 7 (JEM 7), ISO/IEC JTC1/SC29/WG11 Document:JVET-G1001,July 2017,Torino,ITは、ITU-T H.265の能力を超えてビデオ符号化技術を向上させる可能性を有するものとして、JVETによって協調的試験モデル研究中の符号化特徴を記載している。JEM 7の符号化特徴は、JEM参照ソフトウェアで実施されることに留意されたい。本明細書で使用されるとき、JEMという用語は、JEM 7に含まれるアルゴリズム及びJEM参照ソフトウェアの実施を集合的に表し得る。
ビデオ圧縮技術は、ビデオデータを記憶し送信するためのデータ要件を低減することを可能にする。ビデオ圧縮技術は、ビデオシーケンスにおける固有の冗長性を利用することにより、データ要件を低減することができる。ビデオ圧縮技術は、ビデオシーケンスを連続的により小さな部分(すなわち、ビデオシーケンス内のフレームのグループ、フレームのグループ内のフレーム、フレーム内のスライス、スライス内の符号化ツリーユニット(例えば、マクロブロック)、符号化ツリーユニット内の符号化ブロックなど)に再分割することができる。イントラ予測符号化技法(例えば、イントラピクチャ(空間的))及びインター予測技法(すなわち、インターピクチャ(時間的))を使用して、符号化されるビデオデータのユニットとビデオデータの参照ユニットとの間の差値を生成することができる。差値は、残差データと称されることがある。残差データは、量子化された変換係数として符号化することができる。シンタックス要素は、残差データと参照符号化ユニット(例えば、イントラ予測モードインデックス、動きベクトル、及びブロックベクトル)を関連付けることができる。残差データ及びシンタックス要素は、エントロピ符号化することができる。エントロピ符号化された残差データ及びシンタックス要素は、準拠ビットストリームに含めることができる。
一実施例では、ビデオデータを符号化する方法であって、方法は、符号化ツリーを区画(partition)するためにシングルツリーを使用するか、それともデュアルツリーを使用するかを指定するツリータイプを使用することによって、予測輝度量子化パラメータを導出することと、予測輝度量子化パラメータを使用することによって輝度量子化パラメータを生成することと、を含み、予測輝度量子化パラメータは、現在の量子化グループ及び隣接ブロックの可用性を使用することによって、隣接位置をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータに等しく設定されている。
一実施例では、画像データを復号する方法は、符号化ツリーを区画するためにシングルツリーを使用するか、それともデュアルツリーを使用するかを指定するツリータイプを使用することによって、予測輝度量子化パラメータを導出することと、予測輝度量子化パラメータを使用することによって、輝度量子化パラメータを生成することと、を含み、予測輝度量子化パラメータは、現在の量子化グループ及び隣接ブロックの可用性を使用することによって、隣接位置をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータに等しく設定されている。
図1は本開示の1つ以上の技法による、四分(quad)ツリー二分(binary)ツリー区画に従って符号化されたピクチャのグループの例を示す概念図である。 図2は本開示の1つ以上の技法による、四分ツリー二分ツリーの例を示す概念図である。 図3は本開示の1つ以上の技法による、ビデオ成分の四分ツリー二分ツリー区画を示す概念図である。 図4は本開示の1つ以上の技法による、ビデオ成分のサンプリングフォーマットの例を示す概念図である。 図5は本開示の1つ以上の技法による、ビデオデータのブロックについての可能な符号化構造を示す概念図である。 図6Aは本開示の1つ以上の技法による、ビデオデータのブロックの符号化の例を示す概念図である。 図6Bは本開示の1つ以上の技法による、ビデオデータのブロックの符号化の例を示す概念図である。 図7は、本開示の1つ以上の技法による、ビデオ成分の区画を示す概念図である。 図8は、本開示の1つ以上の技法による、ビデオ成分の四分ツリー二分ツリー区画を示す概念図である。 図9は、本開示の1つ以上の技法による、ビデオ成分の区画を示す概念図である。 図10は、本開示の1つ以上の技法による、ビデオデータを符号化及び復号するように構成することができるシステムの一例を示すブロック図である。 図11は、本開示の1つ以上の技法による、ビデオデータを符号化するように構成され得るビデオエンコーダの一例を示すブロック図である。 図12は、本開示の1つ以上の技法による、ビデオ成分の区画及び隣接ビデオブロックを示す概念図である。 図13は、本開示の1つ以上の技法による、ビデオ成分の区画及び隣接ビデオブロックを示す概念図である。 図14は、本開示の1つ以上の技法による、ビデオ成分の区画及び隣接ビデオブロックを示す概念図である。 図15は、本開示の1つ以上の技法による、ビデオ成分の区画及び隣接ビデオブロックを示す概念図である。 図16は、本開示の1つ以上の技法による、四分ツリー二分ツリーの例を示す概念図である。 図17は、本開示の1つ以上の技法による、ビデオ成分の区画及び量子化グループを示す概念図である。 図18は、本開示の1つ以上の技法による、ビデオデータを復号するように構成され得るビデオデコーダの例を示すブロック図である。
概して、本開示は、ビデオデータを符号化する様々な技法を説明する。特に、本開示は、量子化パラメータを導出するための技法について説明する。本開示の技法は、ITU-T H.264、ITU-T H.265、及びJEMに関して記載されているが、本開示の技法は、ビデオ符号化に一般的に適用可能であることに留意されたい。例えば、本明細書で説明する符号化技法は、ITU-T H.265及びJEMに含まれるもの以外のブロック構造、イントラ予測技術、インター予測技術、変換技術、フィルタリング技術、及び/又はエントロピ符号化技術を含むビデオ符号化システム(将来のビデオ符号化規格に基づくビデオ符号化システムを含む)に組み込むことができる。従って、ITU-T H.264、ITU-T H.265、及び/又はJEMの参照は、説明のためのものであり、本明細書で説明する技術の範囲を限定するように解釈すべきではない。更に、本明細書での文書の参照による組み込みは、説明のためのものであり、本明細書で使用される用語に関して限定する又は曖昧さを生むように解釈されるべきではないことに留意されたい。例えば、組み込まれた参照が、別の組み込まれた参照のものとは異なる用語の定義を与える場合、かつ/又はその用語が本明細書で使用されるような場合には、その用語は、それぞれの対応する定義を幅広く含むように、及び/又は代わりに特定の定義のそれぞれを含むように解釈されたい。
一実施例では、ビデオデータを符号化する方法は、参照ビデオブロックに関連付けられた量子化パラメータ、当該参照ビデオブロックを生成するために使用される区画、及び現在のビデオブロックを生成するために使用される区画、に少なくとも部分的に基づいて、現在のビデオブロックに関する予測量子化パラメータを決定することと、当該決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成することと、を含む。
一実施例では、ビデオデータを符号化するデバイスは、参照ビデオブロックに関連付けられた量子化パラメータ、当該参照ビデオブロックを生成するために使用される区画、及び現在のビデオブロックを生成するために使用される区画、に少なくとも部分的に基づいて、現在のビデオブロックについての予測量子化パラメータを決定し、当該決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成するように構成された1つ以上のプロセッサを含む。
一実施例では、非一時的コンピュータ可読記憶媒体は、そこに記憶された命令であって、当該命令が実行されると、1つ以上のデバイスのプロセッサに、参照ビデオブロックに関連付けられた量子化パラメータ、当該参照ビデオブロックを生成するために使用される区画、及び現在のビデオブロックを生成するために使用される区画、に少なくとも部分的に基づいて、現在のビデオブロックについての予測量子化パラメータを決定させ、当該決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成させる命令を含む。
一実施例では、装置は、参照ビデオブロックに関連付けられた量子化パラメータ、参照ビデオブロックを生成するために使用される区画、及び現在のビデオブロックを生成するために使用される区画、に少なくとも部分的に基づいて、現在のビデオブロックについての予測量子化パラメータを決定するための手段と、決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成するための手段と、を含む。
1つ以上の実施例の詳細は、添付の図面及び以下の明細書に記述されている。他の特徴、目的、及び利点は、明細書及び図面から、並びに特許請求の範囲から明白である。
ビデオコンテンツは、典型的には、一連のフレーム(又はピクチャ)からなるビデオシーケンスを含む。一連のフレームはまた、グループオブピクチャ(group of pictures、GOP)と呼ばれることがある。各ビデオフレーム又はピクチャは、複数のスライス又はタイルを含むことができ、スライス又はタイルは、複数のビデオブロックを含む。本明細書で使用されるとき、ビデオブロックという用語は、一般的に、ピクチャの部分を指すことがある、又は、より具体的には、予測的に符号化することができるサンプル値の最大配列、その再分割、及び/又は対応する構造を指すことがある。更に、現在のビデオブロックという用語は、符号化又は復号されているピクチャの部分を指すことがある。ビデオブロックは、予測的に符号化され得るサンプル値の配列として定義することができる。いくつかの場合では、画素値が、色成分(例えば、輝度成分(Y)及び彩度成分(Cb及びCr)、あるいは赤色、緑色、及び青色の成分)とも呼ばれることがあるビデオデータのそれぞれの成分についてのサンプル値を含むものとして説明できることに留意されたい。いくつかの場合では、画素値及びサンプル値という用語は互換的に使用されることに留意されたい。ビデオブロックは、走査パターン(例えば、ラスター走査)に従って、ピクチャ内で順序付けすることができる。ビデオエンコーダは、ビデオブロック及びその再分割に対して予測符号化を実行することができる。ビデオブロック及びその再分割は、ノードと称されることがある。
ITU-T H.264は、16×16の輝度サンプルを含むマクロブロックを指定している。すなわち、ITU-T H.264では、ピクチャはマクロブロックに分割される。ITU-T H.265は、類似の符号化ツリーユニット(Coding Tree Unit)(CTU)構造を指定し、これは、最大符号化ユニット(LCU)とも称され得る。ITU-T H.265では、ピクチャはCTUに分割される。ITU-T H.265では、1つのピクチャに関して、CTUサイズは、16×16、32×32、又は64×64の輝度サンプルを含むものとして設定することができる。ITU-T H.265では、CTUは、ビデオデータのそれぞれの成分(例えば、輝度(Y)及び彩度(Cb及びCr)についてのそれぞれの符号化ツリーブロック(CTB)(Coding Tree Block)から構成される。1つの輝度成分及び2つの対応する彩度成分を有するビデオは、2つのチャネル、すなわち、輝度チャネル及び彩度チャネルを有するものとして記述され得ることに留意されたい。更に、ITU-T H.265では、CTUを四分ツリー(QT)分割構造に従って区画することができ、その結果、CTUのCTBが、符号化ブロック(CB:Coding Block)に区画される。すなわち、ITU-T H.265では、CTUを四分ツリーリーフノードに分割することができる。ITU-T H.265によれば、2つの対応する彩度CB及び関連するシンタックス要素を伴う1つの輝度CBは、符号化ユニット(CU)と呼ばれる。ITU-T H.265では、CBの最小許容サイズをシグナリングすることができる。ITU-T H.265では、輝度CBの最も小さい最小許容サイズは、8×8の輝度サンプルである。ITU-T H.265では、イントラ予測又はインター予測を用いてピクチャ領域を符号化する決定は、CUレベルで行われる。
ITU-T H.265では、CUは、CUにおけるそのルートを有する予測ユニット(PU)構造に関連付けられている。ITU-T H.265では、PU構造は、対応する参照サンプルを生成する目的で、輝度CB及び彩度CBを分割することを可能にする。すなわち、ITU-T H.265では、輝度CB及び彩度CBを、それぞれの輝度及び彩度予測ブロック(PB)に分割することができ、ここでPBは、同じ予測が適用されるサンプル値のブロックを含む。ITU-T H.265では、CBを1、2、又は4個のPBに分割することができる。ITU-T H.265は、64×64のサンプルから4×4のサンプルまでのPBサイズをサポートする。ITU-T H.265では、正方形のPBがイントラ予測のためにサポートされ、ここでCBはPBを形成することができるか、又はCBを4つの正方形のPBに分けることができる(すなわち、イントラ予測PBタイプは、M×M又はM/2×M/2を含み、ここでMは正方形のCBの高さ及び幅である)。ITU-T H.265では、正方形のPBの他に、矩形のPBがインター予測のためにサポートされ、ここでCBを垂直又は水平に二等分してPBを形成することができる(すなわち、インター予測PBタイプはM×M、M/2×M/2、M/2×M、又はM×M/2を含む)。更に、ITU-T H.265では、インター予測のために、4つの非対称PB分割がサポートされ、ここでCBは、CBの高さ(上部又は下部で)又は幅(左又は右)の4分の1で2つのPBに分割される(すなわち、非対称区分としては、M/4×M左、M/4×M右、M×M/4上部、及びM×M/4下部を含む)ことに留意されたい。PBに対応するイントラ予測データ(例えば、イントラ予測モードシンタックス要素)又はインター予測データ(例えば、動きデータシンタックス要素)を使用して、PBに関する参照サンプル値及び/又は予測サンプル値が生成される。
JEMは、256×256の輝度サンプルの最大サイズを有するCTUを規定している。JEMは、四分ツリー+二分ツリー(quadtree plus binary tree:QTBT)ブロック構造を指定している。JEMでは、QTBT構造は、四分ツリーリーフノードを二分ツリー構造(BT)によって更に区画することを可能にする。すなわち、JEMでは、二分ツリー構造は、四分ツリーリーフノードを垂直又は水平に再帰的に分割することを可能にする。図1は、四分ツリーリーフノードに区画され、また四分ツリーリーフノードが二分ツリーに従って更に区画された、CTU(例えば、256×256の輝度サンプルのサイズを有するCTU)の例を示す。すなわち、図1では、破線が、四分ツリーにおける付加的な二分ツリー区画を示している。したがって、JEMでの二分ツリー構造は、正方形のリーフノード及び矩形のリーフノードを可能にし、それぞれのリーフノードは、1つのCBを含む。図1に示すように、GOPに含まれるピクチャは複数のスライスを含むことができ、各スライスはCTUのシーケンスを含み、各CTUはQTBT構造に従って区画することができる。図1は、1つのスライスに含まれる1つのCTUのQTBT分割の例を示す。図2は、図1に示すQTBT区分の例に対応するQTBTの例を示す概念図である。
JEMでは、QT分割フラグ及びBT分割モードシンタックス要素をシグナリングすることによって、QTBTがシグナリングされる。QT分割フラグが1の値を有する場合、QT分割が示される。QT分割フラグが0の値を有する場合、BT分割モードシンタックス要素がシグナリングされる。BT分割モードシンタックス要素が0の値を有する(すなわち、BT分割モード符号化ツリー=0)場合、二分割は示されない。BT分割モードシンタックス要素が3の値を有する(すなわち、BT分割モード符号化ツリー=11)場合、垂直分割モードが示される。BT分割モードシンタックス要素が2の値を有する(すなわち、BT分割モード符号化ツリー=10)場合、水平分割モードが示される。更に、BT分割は、最大BT深さに達するまで行うことができる。したがって、JEMに従って、図2に示すQTBTを、表1に示す擬似シンタックスに基づいてシグナリングすることができる:
Figure 0007448549000001
図2及び表1に示すように、QT分割フラグシンタックス要素及びBT分割モードシンタックス要素は、深さに関連付けられており、ゼロの深さはQTBTのルートに対応し、より大きい値の深さは、ルートを超えた後続の深さに対応する。更に、JEMでは、輝度チャネル及び彩度チャネルは、別個のQTBT区画を有することができる。すなわち、JEMでは、輝度チャネル及び彩度チャネルは、各QTBTをシグナリングすることによって独立して区画することができる。図3は、輝度成分に対するQTBTと、彩度成分に対する独立したQTBTに従って区画されたCTUの例を示す。図3に示すように、CTUを区画するために独立したQTBTが使用されるとき、輝度成分のCBは、彩度成分のCBと整列することは要求されず、また必ずしも整列するとは限らない。現在のところ、JEMでは、独立したQTBT構造は、イントラ予測スライスのために有効化される。イントラタイプ(イントラ予測スライスと称されることがある)を有するビデオデータのスライスについては、イントラ予測モードのみが有効化され、インタータイプ(インター予測スライスと称されることがある)を有するビデオデータのスライスについては、イントラ予測モード及びインター予測モードの両方が有効化されることに留意されたい。
更に、JEMは、QTBT木のシグナリングについて以下のパラメータを含むことに留意されたい。
CTUサイズ:四分ツリーのルートノードサイズ(例えば、256×256、128×128、64×64、32×32、16×16の輝度サンプル)、
MinQTSize:最小許容四分ツリーリーフノードサイズ(例えば、16×16、8×8の輝度サンプル)、
MaxBTSize:最大許容二分ツリールートノードサイズ、すなわち、二分割によって区画することができるリーフ四分ノードの最大サイズ(例えば、64×64の輝度サンプル)、
MaxBTDepth:最大許容二分ツリー深さ、すなわち、四分ツリーリーフノードがルートである場合に、二分割を行うことができる最低レベル(例えば、3)、
MinBTSize:最小許容二分ツリーリーフノードサイズ;すなわち、二分リーフノードの最小幅又は最小高さ(例えば、4つの輝度サンプル)。
いくつかの例では、MinQTSize、MaxBTSize、MaxBTDepth、及び/又はMinBTSizeは、ビデオの成分の異なりによって異なり得ることに留意されたい。
JEMでは、CBは、追加の区画の無い予測のために使用される。すなわち、JEMでは、CBは、同じ予測が適用されるサンプル値のブロックであってよい。したがって、JEM QTBTリーフノードは、ITU-T H.265におけるPBに類似するものであってよい。
彩度フォーマットと称されることもあるビデオサンプリングフォーマットは、CUに含まれる輝度サンプルの数に対するCUに含まれる彩度サンプルの数を規定することができる。例えば、4:2:0サンプリングフォーマットの場合は、輝度成分に対するサンプリングレートは、水平方向及び垂直方向の両方に対して彩度成分のサンプリングレートの2倍である。結果として、4:2:0フォーマットに従ってフォーマットされたCUの場合は、輝度成分に対するサンプルの配列の幅及び高さは、彩度成分に対するサンプルのそれぞれの配列の幅及び高さの2倍である。図4は、4:2:0サンプルフォーマットに従ってフォーマットされた符号化ユニットの例を示す概念図である。図4は、CU内の輝度サンプルに対する彩度サンプルの相対位置を示す。上記したように、CUは、典型的には、水平輝度サンプル及び垂直輝度サンプルの数に従って定義される。したがって、図4に示すように、4:2:0サンプルフォーマットに従ってフォーマットされた16×16のCUは、16×16の輝度成分のサンプル及びそれぞれの彩度成分に対して8×8のサンプルを含む。更に、図4に示す例では、16×16のCUに隣接するビデオブロックについての輝度サンプルに対する、彩度サンプルの相対位置が示されている。4:2:2フォーマットに従ってフォーマットされたCUの場合、輝度成分に対するサンプルの配列の幅は、それぞれの彩度成分に対するサンプルの配列の幅の2倍であるが、輝度成分に対するサンプルの配列の高さは、それぞれの彩度成分に対するサンプルの配列の高さに等しい。更に、4:4:4フォーマットに従ってフォーマットされたCUの場合は、輝度成分に対するサンプルの配列は、それぞれの彩度成分に対するサンプルの配列と同じ幅及び高さを有する。
上記したように、イントラ予測データ又はインター予測データは、サンプル値のブロックに対する参照サンプル値を生成するために使用される。現在のPB又は別の種類のピクチャ領域構造に含まれるサンプル値と、関連する参照サンプル(例えば、予測を用いて生成された参照サンプル)との差は、残差データと称されることがある。残差データは、ビデオデータのそれぞれの成分に対応する差値のそれぞれの配列を含むことができる。残差データは、画素領域内とすることができる。離散コサイン変換(discrete cosine transform)(DCT)、離散サイン変換(discrete sine transform)(DST)、整数変換、ウェーブレット変換、又は概念的類似変換などの変換を、差値の配列に適用して、変換係数を生成することができる。場合によっては、変換プロセスは、回転及び/又は1つ以上の一次元変換の実行を含み得る。ITU-T H.265では、CUは、ルートをCUレベルにおいて有する変換ユニット(TU)構造に関連することに留意されたい。すなわち、ITU-T H.265では、変換係数を生成する目的で、差値の配列を再分割することができる(例えば、4つの8×8変換を残差値の16×16の配列に適用することができる)。ビデオデータの各成分について、差値のこのような再分割は、変換ブロック(TB)(Transform Block)と称されることがある。ITU-T H.265では、必ずしもTBをPBに整列する必要はないことに留意されたい。図5は、特定のCBを符号化するために使用することができる代替のPBとTBとの組み合わせの例を示す。更に、ITU-T H.265では、TBは、以下のサイズ4×4、8×8、16×16、及び32×32を有することができることに留意されたい。
JEMでは、CBに対応する残差値を使用して、更なる分割を行うことなく変換係数が生成されることに留意されたい。すなわち、JEMでは、QTBTリーフノードは、ITU-T H.265におけるPB及びTBの両方に類似のものとすることができる。JEMでは、コア変換及び後続の二次変換を(ビデオエンコーダで)適用して変換係数を生成することができる。ビデオデコーダに対しては、変換の順序は逆転される。更に、JEMでは、二次変換を適用して変換係数を生成するか否かは、予測モードに依存し得る。
量子化プロセスは、例えば、パレット符号化量子化の場合、変換係数又は残留サンプル値に直接実行され得る。量子化を、特定の値のセットに制限された振幅によって変換係数に近似する。量子化は、変換係数のグループを表すために必要なデータの量を変更するために、変換係数を本質的にスケーリングする。量子化は、量子化倍率による変換係数(変換係数にオフセット値を加算して結果として生じる値)の除算及び任意の関連する丸め機能(例えば、最も近い整数への丸め)を含むことができる。量子化された変換係数は、係数レベル値と称されることがある。逆量子化(Inverse quantization)(すなわち、「脱量子化(dequantization)」)は、量子化倍率による係数レベル値の乗算と、任意の逆数丸め又はオフセット加算演算と、を含み得る。本明細書で使用されるとき、量子化プロセスという用語は、いくつかの場合では、レベル値を生成する倍率による除算を指し、かつ、いくつかの場合では、変換係数を回復する倍率による乗算を指すことがあることに留意されたい。すなわち、量子化プロセスは、いくつかの場合では、量子化、及び、いくつかの場合では、逆量子化を指すことがある。更に、以下の例の一部では、量子化プロセスは、10進数表記に関連する算術演算に対して説明されるが、そのような説明は例示を目的としたものであり、限定として解釈されるべきではないことに留意されたい。例えば、本明細書で説明する技術は、2進演算などを使用するデバイスにおいて実施されてもよい。例えば、本明細書で説明する乗算演算及び除算演算は、ビットシフト演算などを使用して実施されてもよい。
本明細書で使用される式に関して、以下の算術演算子が使用され得る。
Figure 0007448549000002
更に、以下の論理演算子を使用してもよい。
Figure 0007448549000003
更に、以下の関係演算子を適用してもよい。
Figure 0007448549000004
更に、以下のビット演算子を適用してもよい。
Figure 0007448549000005
更に、以下の数学関数を使用することができる。
Figure 0007448549000006
図6A~図6Bは、ビデオデータのブロックを符号化する例を示す概念図である。図6Aに示すように、ビデオデータの現在のブロック(例えば、ビデオ成分に対応するCB)は、ビデオデータの現在のブロックから予測値のセットを減算して残差を生成し、残差に対して変換を実行し、変換係数を量子化してレベル値を生成することによって符号化される。図6Bに示すように、ビデオデータの現在のブロックは、レベル値に対して逆量子化を実行し、逆変換を実行し、予測値のセットを、結果として生じた残差に加算することによって復号される。図6A~図6Bの例では、復元されたブロックのサンプル値は、符号化された現在のビデオブロックのサンプル値とは異なることに留意すべきである。このように、符号化は非可逆であると言うことができる。しかしながら、サンプル値の差は、復元されたビデオの観察者に対して許容されるか、又は知覚されないと見なすことができる。
更に、図6A~図6Bに示すように、倍率の配列を使用して係数レベル値が生成される。ITU-T H.265では、スケーリング行列を選択し、スケーリング行列における各エントリに量子化倍率を乗算することによって、倍率の配列が生成される。ITU-T H.265では、スケーリング行列が予測モード及び色成分に部分的に基づいて選択され、以下のサイズのスケーリング行列が定義される:4×4、8×8、16×16、及び32×32。いくつかの実施例では、スケーリング行列は、各エントリに対して同じ値を提供することができる(すなわち、全ての係数は単一の値に従ってスケーリングされる)ことに留意されたい。ITU-T H.265では、量子化倍率の値は、量子化パラメータQPによって決定することができる。ITU-T H.265では、8ビットのビット深度については、QPは、0から51の52個の値をとることができ、QPに関する1の変化は、一般的に、約12%の量子化倍率の値の変化に対応する。より一般的には、ITU-T H.265では、ソースビット深度に対するQP値の有効な範囲は以下になることに留意されたい。-6*(ビット深度-8)~+51(両端を含む)。したがって、例えば、ビット深度が10ビットである場合、QPは、-12~51の64個の値をとり、これは脱量子化中に0~63の値にマッピングされ得る。
更に、ITU-T H.265では、変換係数のセットに対するQP値は、予測量子化パラメータ値(予測QP値又はQP予測値と称されることがある)と、任意選択的にシグナリングされる量子化パラメータデルタ値(QPデルタ値又はデルタQP値と呼ばれることがある)を使用して導出することができる。ITU-T H.265では、量子化パラメータは、CU毎に更新することができ、またそれぞれの量子化パラメータは、輝度チャネル及び彩度チャネル毎に導出することができる。ITU-T H.265では、現在のCUについては、予測QP値がCUに継承され(すなわち、スライスレベルでシグナリングされたQP、又は前のCUからのQP)、デルタQP値は、CU内の各TUに対して任意選択的にシグナリングされてもよい。輝度チャネルについては、各輝度TBのQPは、予測QP値と、シグナリングされたデルタQP値との合計である。更に、ITU-T H.265のほとんどのプロファイルの場合、現在のCUの彩度チャネルについては、彩度QPは、輝度チャネルに対して決定されたQP、スライスヘッダにおいてシグナリングされる彩度QPオフセット、及び/又はピクチャパラメータセット(PPS)でシグナリングされた彩度QPオフセットの関数である。
上記のように、ITU-T H.265では、デルタQP値は、CU内の各TUに対して任意選択的にシグナリングされ得る。具体的には、ITU-T H.265では、量子化グループサイズを使用して、デルタQPが特定のTUに対してシグナリングされ得るかどうかを判定する。例えば、ビデオエンコーダは、64×64のCTUサイズと、32×32の量子化グループサイズを選択することができる。この場合、CTUがそれぞれの32×32のTUを有する4つの32×32のCUに区画されるならば、デルタQPは、各TUに対してシグナリングされ得る。しかし、4つの32×32のCUが、より小さいTU(例えば、8×8、16×16)に更に区画される場合、デルタQPは、各32×32CU領域において第1の8×8 TUに対してのみ送信される。ITU-T H.265では、TU構造は、各輝度チャネル及び彩度チャネルに対してTBを整列させることに留意されたい。すなわち、ITU-T H.265では、成分(例えば、彩度成分)のTBは、別の成分のTBに直接対応する。ITU-T H.265では、差値は、輝度CTBサイズと量子化グループサイズとの間の差を示すように、PPS(すなわち、シンタックス要素diff_cu_qp_delta_depth)でシグナリングされる。例えば、CTBサイズが64×64であり、量子化グループサイズが16×16である場合、差値(対数表記)が量子化グループサイズを示すようにシグナリングされる。ITU-T H.265では、量子化グループは常に正方形であることに留意されたい。
上記のように、量子化は、量子化倍率による変換係数の除算及び任意の関連する丸め機能(例えば、最も近い整数への丸め)を含むことができる。いくつかの場合では、量子化は、結果としてゼロのレベル値をもたらすことがあり、これは、例えば、比較的高い量子化パラメータに対してなどである。非ゼロのレベル値は、有意として記載され得る。ITU-T H.265では、符号化されたブロックフラグ(cbf)は、それぞれの成分に対してシグナリングされて、変換ブロックが0に等しくない1つ以上の変換係数レベル(例えば、符号化されたブロックフラグ、cbf_luma、cbf_cb、及びcbf_cr)を含むかどうかを示すことができる。更に、ITU-T H.265では、cbfは、ルート(root_cbf)でシグナリングされて、cbf_luma、cbf_cb、及びcbf_crの存在、したがって、ルートに対応するブロックが有意な係数を含まないかどうかを示してもよい。ITU-T H.265では、デルタQP値のシグナリングは、成分の1つ以上の変換係数レベルが0に等しくないことを示す、cbf_luma、cbf_cb、又はcbf_cr(論理的発現cbf_cb又はcbf_crのcbfChroma)のうちの1つで調整される(すなわち、TUが有意なレベル値を含むときにデルタQP値をシグナリングすることができる)。すなわち、デルタQP値、delta_qp()を示すシンタックスは、表2の疑似シンタックスの例で提供されるようにTUユニットシンタックス中に存在してもよい。
Figure 0007448549000007
delta_qp()シンタックスに関して、ITU-T H.265は、表3に示す以下のシンタックスを含む。
Figure 0007448549000008
cu_qp_delta_enabled_flagは、ITU-T H.265において以下のように定義される。
1に等しいcu_qp_delta_enabled_flagは...cu_qp_delta_absが変換ユニットシンタックスに存在し得ることを指定し、...0に等しいcu_qp_delta_enabled_flagは...cu_qp_delta_absが変換ユニットシンタックスに存在しない...ことを指定する
シンタックス要素cu_qp_delta_abs及びcu_qp_delta_sign_flagは、以下で更に詳細に説明される。IsCuQpDeltaCodedはまた、量子化グループの最初の非ゼロTUがシグナリングされ、delta_qp値が受信される場合、1に設定されている。IsCuQpDeltaCodedは、新しい量子化グループの開始時に0に設定されている。新しい量子化グループの開始は、量子化グループサイズに基づいて決定される。例えば、量子化グループサイズがCTUサイズと同じである場合、IsCuQpDeltaCodedはCTUの開始時に0に設定されている。
x×y配列における各エントリについてのITU-T H.265で定義された脱量子化プロセスは、以下のように要約することができる:
Figure 0007448549000009
d[0][0]における変換係数は、DC変換係数と称されることもあり、配列内の他の変換係数は、場合によっては(例えば、DCTに関して)AC変換係数と称されることがあることに留意されたい。
上記のように、ITU-T H.265では、輝度成分の場合、各輝度TBのQPは、予測QP値と任意のシグナリングされたデルタQP値との合計である。具体的には、現在のCUに関して、ビデオデコーダは、隣接するCUのQP値から導出された予測に基づいて、輝度QPの値を導出することができる。すなわち、ITU-T H.265では、輝度QP(Qp’Y)は、以下のように導出される。
Qp’Y = QpY + QpBdOffsetY;
ここで、
QpY = ((qPY_PRED + CuQpDeltaVal + 52 + 2* QpBdOffsetY)%(52 + QpBdOffsetY))- QpBdOffsetY;
ここで、
qPY_PRED = ((qPY_A + qPY_B + 1)>> 1;
ここで、
qPY_Aは、ほとんどの場合、現在のCUの左の符号化ユニットのQpYに等しく設定され、
qPY_B は、ほとんどの場合、現在のCUより上の符号化ユニットのQpYに等しく設定され、
ここで、
CuQpDeltaVal = cu_qp_delta_abs*(1-2*cu_qp_delta_sign_flag);
ここで、
cu_qp_delta_absは、現在の符号化ユニットの輝度量子化パラメータとその予測値との間の差分CuQpDeltaValの絶対値を指定する変換ユニットレベルにおけるビットストリームに条件付きで含まれるシンタックス要素である。
cu_qp_delta_sign_flagは、次のようにCuQpDeltaValの記号を指定する変換ユニットレベルにおけるビットストリームに条件付きで含まれるシンタックス要素である。
-cu_qp_delta_sign_flagが0に等しい場合、対応するCuQpDeltaValは正の値を有する。
-そうでなければ(cu_qp_delta_sign_flagは1に等しい)、対応するCuQpDeltaValは負の値を有する。
ここで、
QpBdOffsetY = 6*bit_depth_luma_minus8;
ここで、
bit_depth_luma_minus8は、輝度量子化パラメータ範囲オフセットの値QpBdOffsetYを指定するシーケンスレベルにおけるビットストリームに含まれるシンタックス要素であり、両端値を含む0~8の範囲に含まれるものとする。
いくつかの場合において、qPY_A及びqPY_Bは、例えば、隣接ブロックが利用できない場合に、変数qPY_PREVに等しく設定されていることがあることに留意されたい。ITU-T H.265では、qPY_PREVは、復号化順で前の量子化グループ内の最後の符号化ユニットのQpYに等しく設定されているか、又はSliceQpYに等しく設定され、これは、スライスヘッダにおけるビットストリーム内でシグナリングされたシンタックス要素slice_qp_deltaに基づいて決定される。ここで
slice_qp_deltaは、符号化ユニット層内のCuQpDeltaValの値によって修正されるまで、スライス内の符号化ブロックに使用されるQpYの初期値を指定する。スライスのQpY量子化パラメータSliceQpYの初期値は、以下のように導出される。
SliceQpY = 26 + init_qp_minus26+ slice_qp_delta
SliceQpYの値は、両端値を含む、-QpBdOffsetY~+51の範囲にあるものとする。
上記のように、現在のところ、JEMでは、輝度チャネル及び彩度チャネルに関する独立したQTBT区画は、イントラ予測スライスに対して有効化され、QTBTリーフノードはITU-T H.265のTBと類似し得る。JEMでは、独立したQTBT区画が有効でない場合(すなわち、インタースライス)、デルタQP値を示すシンタックスが、表2の疑似シンタックスの例に関して上記したように、ITU-T H.265に提供されるのと同様の方法で、CUユニットシンタックス内に存在する。JEMでは、独立したQTBT構造が有効である場合(すなわち、イントラスライスの場合)、輝度チャネル及び彩度チャネルが別個の区画ツリーを有する場合、QP値は、輝度成分及び彩度成分に対して独立してシグナリングされる。具体的には、デルタQPを示す2組のシンタックス(すなわち、輝度のdelta_qp()及び彩度のdelta_qp())は、cbfLuma及びcbfLumaでそれぞれ独立して調整される。すなわち、各独立したQTBT区画については、表4A及び表4Bの疑似シンタックスの例で提供されるように、delta_qp()が存在してもよい。
Figure 0007448549000010
Figure 0007448549000011
再び図6Aを参照すると、量子化された変換係数はビットストリームに符号化される。量子化された変換係数及びシンタックス要素(例えば、ビデオブロックの符号化構造を示すシンタックス要素)は、エントロピ符号化技法に従ってエントロピ符号化することができる。エントロピ符号化技法の例としては、コンテンツ適応型可変長符号化(content adaptive variable length coding)(CAVLC)、コンテキスト適応型バイナリ算術符号化(context adaptive binary arithmetic coding)(CABAC)、確率間隔分割エントロピ符号化(probability interval partitioning entropy coding)(PIPE)などが挙げられる。エントロピ符号化され量子化された変換係数及び対応するエントロピ符号化されたシンタックス要素は、ビデオデコーダでビデオデータを再生するために使用することができる適合したビットストリームを形成することができる。エントロピ符号化プロセスは、シンタックス要素での二値化の実行を含むことができる。二値化は、シンタックス値の値を一連の1つ以上のビットに変換するプロセスを指す。これらのビットは、「ビン」と呼ばれることがある。二値化は無損失のプロセスであり、以下の符号化技術:固定長符号化、単項符号化、短縮単項符号化、短縮Rice符号化、Golomb符号化、k次指数Golomb符号化、及びGolomb-Rice符号化のうちの1つ又は組み合わせを含むことができる。例えば、二値化は、8ビットの固定長二値化技術を使用して、00000101としてシンタックス要素の5の整数値を表すこと、又は単項符号化二値化技術を使用して、11110として5の整数値を表すことを含んでもよい。本明細書で使用されるとき、固定長符号化、単項符号化、短縮単項符号化、短縮Rice符号化、Golomb符号化、k次指数Golomb符号化、及びGolomb-Rice符号化という用語のそれぞれは、これらの技術の一般的な実装形態及び/又はこれらの符号化技術のより特定の実装形態を指すことがある。例えば、Golomb-Rice符号化の実装形態は、ビデオ符号化規格、例えば、ITU-T H.265に従って具体的に定義することができる。エントロピ符号化プロセスは、可逆データ圧縮アルゴリズムを使用してビン値を符号化することを更に含む。CABACの例では、特定のビンに対して、コンテキストモデルは、ビンに関連する使用可能なコンテキストモデルのセットから選択することができる。いくつかの例では、コンテキストモデルは、前のビン及び/又は前のシンタックス要素の値に基づいて選択することができる。コンテキストモデルは、ビンが特定の値を有している確率を割り出すことができる。例えば、コンテキストモデルは、0の値のビンを符号化する0.7の確率、及び1の値のビンを符号化する0.3の確率を示すことができる。いくつかの場合では、0値のビンを符号化する確率及び1値ビンを符号化する確率は、合計で1にならない場合があることに留意されたい。使用可能なコンテキストモデルを選択した後で、CABACエントロピエンコーダは、割り出されたコンテキストモデルに基づいて、ビンを算術的に符号化することができる。コンテキストモデルは、符号化されたビンの値に基づいて更新することができる。コンテキストモデルは、コンテキストと一緒に記憶された関連する変数、例えば、適応ウィンドウサイズ、コンテキストを使用して符号化されたビンの数に基づいて更新することができる。ITU-T H.265に従って、一部のシンタックス要素が、明示的に割り当てられたコンテキストモデルの使用なしに、算術符号化を用いてエントロピ符号化することができるように、CABACエントロピエンコーダを実装することができ、そのような符号化はバイパス符号化と呼ばれることがあることに留意されたい。
上記したように、イントラ予測データ又はインター予測データは、ピクチャ(例えば、PB又はCB)の領域を、対応する参照サンプルと関連付けることができる。イントラ予測符号化のために、イントラ予測モードは、ピクチャ内の参照サンプルの位置を指定することができる。ITU-T H.265では、定義された可能なイントラ予測モードは、プレーナ(すなわち、表面適合)予測モード(predMode:0)、DC(すなわち、フラット全体平均化)予測モード(predMode:1)、及び33個の角度予測モード(predMode:2-34)を含む。JEMでは、定義された可能なイントラ予測モードは、プレーナ予測モード(predMode:0)、DC予測モード(predMode:1)、及び65個の角度予測モード(predMode:2-66)を含む。プレーナ及びDC予測モードは、非方向性予測モードと称されることがあり、角度予測モードは、方向性予測モードと称されることがあることに留意されたい。本明細書で説明する技術は、定義された可能な予測モードの数にかかわらず、一般的に適用可能であり得ることに留意されたい。
インター予測符号化のために、動きベクトル(MV)は、符号化されるビデオブロックのピクチャ以外のピクチャ内の参照サンプルを識別し、それによってビデオの時間的冗長性を利用する。例えば、現在のビデオブロックは、以前に符号化されたフレーム(単数又は複数)内に位置する参照ブロック(単数又は複数)から予測することができ、動きベクトルは、参照ブロックの位置を示すために使用することができる。動きベクトル及び関連するデータは、例えば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルに対する解像度(例えば、四分の一画素の精度、二分の一画素の精度、一画素の精度、二画素の精度、四画素の精度)、予測方向、及び/又は参照ピクチャのインデックス値を記述することができる。更に、例えば、ITU-T H.265などの符号化規格は、動きベクトル予測をサポートすることができる。動きベクトル予測は、隣接するブロックの動きベクトルを用いて動きベクトルを指定することを可能にする。動きベクトル予測の例としては、高度動きベクトル予測(advanced motion vector prediction)(AMVP)、時間動きベクトル予測(temporal motion vector prediction)(TMVP)、いわゆる「結合」モード、並びに「スキップ」及び「ダイレクト」動き推測が挙げられる。更に、JEMは、高度時間動きベクトル予測(advanced temporal motion vector prediction)(ATMVP)及び空間時間動きベクトル予測(Spatial-temporal motion vector prediction)(STMVP)をサポートする。
上記のように、JEMでは、輝度チャネル及び彩度チャネルは、独立したQTBTを使用して独立して区画されてもよい。場合によっては、CTUの区画を有効化することが有用であり得るので、輝度チャネル及び彩度チャネルが、CUレベルまでの共通の区画構造を有し、輝度チャネル及び彩度チャネルの一方又は両方を更に区画するように有効化される。例えば、2017年12月14日に出願された、本願と同一出願人の米国特許仮出願第62/598,956号は、CUレベルまでの共通の区画構造を使用する技法を記載しており、輝度チャネル及び彩度チャネルのそれぞれは、CU条件が満たされた場合に更に区画されてもよい。例えば、CUがイントラ予測スライスに含まれたイントラ予測CUである場合、CUは、更なる区画に対応する予測を生成する目的で更に区画されてもよい。図7は、CTUの場合、輝度チャネル及び彩度チャネルが、CUレベルまでの共通の区画構造を有する例を示し、CU(すなわち、CUFP)の輝度チャネル及び彩度チャネルのそれぞれが更に区画されている。図7に関しては、説明を簡略化にするために、CTU内のCUのうちの1つのみが、更に区画されているものとして示されていることに留意されたい。図7に示す例では、示されている各CBは、同じ予測が適用されるサンプル値のブロックであってもよい。すなわち、図7に示すCBは、ITU-T H.265内のPBと類似し得る。しかし、図7のCBは、ITU-T H.265に定義されたPB形状に限定されない(すなわち、CBはQTBT区画から得られる形状を有し得る)ことに留意されたい。
図7を参照すると、CUFPの輝度チャネルは、四分分割(quad split)に従って更に区画され、CUFPの彩度チャネルは、垂直分割(vertical split)に従って更に区画される。図8は、図7に示す例示のQTBT区画に対応するQTBTの例を示す概念図である。図8に示すように、共通区画に関連付けられたCUに到達すると、QTBTは、輝度チャネル及び彩度チャネルのそれぞれに対してシグナリングされ得る。表5は、図8に示す例の場合、輝度チャネル及び彩度チャネルに関する共有QTBT及び独立QTBTをシグナリングするために使用され得る疑似シンタックスの例を示す。表5に関しては、説明のため、FI_Part flagは単に、追加の独立区画が基づき得る条件(例えば、予測モードなど)を示していることに留意されたい。表5では、表1に関して上記したように、QT flag = 0はQT splitがないことを示し、QT flag = 1はQT splitを示し、BT flag = 0はBT splitがないことを示し、BT flag = 1はvertical BT splitを示し、BT flag = 2はhorizontal BT splitを示す。更に、表5に示す例におけるシグナリングは、いわゆるz走査に基づく。
Figure 0007448549000012
表5に示すように、符号化ユニット(BT split = 0)に到達すると、追加の独立区画条件が決定される。条件が偽である場合は、符号化ユニットに対して更なる区画シグナリングが発生しない。条件が真である場合は、QTBTは、輝度チャネルに対してシグナリングされ、QTBTは、彩度チャネルに対してシグナリングされる。
表6は、符号化ユニットに生じるシグナリングの一般的な事例を示す。いくつかの実施例では、更なる区画は、輝度チャネル又は彩度チャネルのうちの1つに対して無効化されてもよい。このような例では、表6のcoding_tree_unit_luma()又はcoding_tree_unit_chroma()のいずれかが、coding_block_luma()又はcoding_block_chroma()で置き換えられてもよい。
Figure 0007448549000013
更に、輝度チャネル及び/又は彩度チャネルがCUを越えて更に区画され得るかどうか、また、どのように区画され得るかどうかを判定するために、様々な技法を使用することができる。したがって、表6では、coding_tree_unit_luma()及びcoding_tree_unit_chroma()は、様々なタイプの区画を有効化するセマンティクスを提供し得る。一実施例では、輝度チャネル及び彩度チャネルは、別個の区画ツリー又は共有区画ツリーに従ってCUを越えて更に区画されてもよい。図7は、別個の区画ツリーに従ってCUを越えて更に区画されている輝度チャネル及び彩度チャネルの例を示す。図9は、共有区画ツリーに従ってCUを越えて更に区画されている輝度チャネル及び彩度チャネルの例を示す。一実施例では、フラグは、輝度チャネル及び彩度チャネルが、別個の区画ツリーに従って更に区画されているか、それとも共有区画ツリーに従って更に区画されているかを示すことができる。表7は、ある例を示し、ここでは、輝度チャネル及び彩度チャネルが別個の区画ツリー(すなわち、coding_tree_unit_luma()及びcoding_tree_unit_chroma())に従って、更に区画されているか、それとも共有区画ツリー(すなわち、coding_tree_unit_shared())に従って、更に区画されているかをフラグ(すなわち、separate_tree_flag)が示しており、この場合には、coding_tree_unit_shared()は、様々なタイプの区画を有効化するセマンティクスを提供する。
Figure 0007448549000014
上記のように、JEMでは、QTBTリーフノードは、ITU-T H.265内のTBに類似し得る。したがって、図7を参照すると、上記のようにJEMに従って、QP値は、CUレベルで導出されるであろう。したがって、JEMに記載される技法は、理想的とは言えない場合がある。例えば、輝度チャネル及び彩度チャネルが、CUレベルまで共通の区画構造を有し、輝度チャネル及び彩度チャネルの一方又は両方を、予測を生成する目的で更に区画し得るようなケースにおいて、QP値を導出するJEMに記載の技法を適用することは、困難な可能性がある。
図10は、本開示の1つ以上の技法による、ビデオデータを符号化する(符号化及び/又は復号する)ように構成され得るシステムの例を示すブロック図である。システム100は、本開示の1つ以上の技法にしたがって記載の区画技法を使用してビデオ符号化を実行することができるシステムの例を表す。図8に示すように、システム100は、ソースデバイス102と、通信媒体110と、目的デバイス120と、を含む。図10に示す例では、ソースデバイス102は、ビデオデータを符号化し、符号化したビデオデータを通信媒体110に送信するように構成された任意のデバイスを含むことができる。目的デバイス120は、通信媒体110を介して符号化したビデオデータを受信し、符号化したビデオデータを復号するように構成された、任意のデバイスを含むことができる。ソースデバイス102及び/又は目的デバイス120は、有線及び/又は無線通信のために搭載されたコンピューティングデバイスを含むことができ、セットトップボックス、デジタルビデオレコーダ、テレビ、デスクトップ、ラップトップ、又はタブレット型コンピュータ、ゲーム機、例えば、「スマート」フォン、セルラー電話、及びパーソナルゲーミングデバイスを含むモバイルデバイス、並びに医療用イメージングデバイスを含むことができる。
通信媒体110は、無線及び有線の通信媒体及び/又は記憶デバイスの任意の組み合わせを含むことができる。通信媒体110としては、同軸ケーブル、光ファイバケーブル、ツイストペアケーブル、無線送信機及び受信機、ルータ、スイッチ、リピータ、基地局、又は様々なデバイスとサイトとの間の通信を容易にするために有用であり得る任意の他の機器を挙げることができる。通信媒体110は、1つ以上のネットワークを含むことができる。例えば、通信媒体110は、ワールドワイドウェブ、例えば、インターネットへのアクセスを可能にするように構成されたネットワークを含むことができる。ネットワークは、1つ以上の電気通信プロトコルの組み合わせに従って動作することができる。電気通信プロトコルは、専用の態様を含むことができ、かつ/又は規格化された電気通信プロトコルを含むことができる。標準化された電気通信プロトコルの例としては、Digital Video Broadcasting(DVB)規格、Advanced Television Systems Committee(ATSC)規格、Integrated Services Digital Broadcasting(ISDB)規格、Data Over Cable Service Interface Specification(DOCSIS)規格、Global System Mobile Communications(GSM)規格、符号分割多重アクセス(code division multiple access、CDMA)規格、第三世代パートナーシッププロジェクト(3rd Generation Partnership Project、3GPP)規格、欧州電気通信標準化機構(European Telecommunications Standards Institute、ETSI)規格、インターネットプロトコル(Internet Protocol、IP)規格、ワイヤレスアプリケーションプロトコル(Wireless Application Protocol、WAP)規格、及びInstitute of Electrical and Electronics Engineers(IEEE)規格が挙げられる。
記憶デバイスは、データを記憶することができる任意の種類のデバイス又は記憶媒体を含むことができる。記憶媒体は、有形又は非一時的コンピュータ可読媒体を含むことができる。コンピュータ可読媒体としては、光学ディスク、フラッシュメモリ、磁気メモリ、又は任意の他の好適なデジタル記憶媒体を挙げることができる。いくつかの例では、メモリデバイス又はその一部分は不揮発性メモリとして説明されることがあり、他の例では、メモリデバイスの一部分は揮発性メモリとして説明されることがある。揮発性メモリの例としては、ランダムアクセスメモリ(random access memory、RAM)、ダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)、及びスタティックランダムアクセスメモリ(static random access memory、SRAM)を挙げることができる。不揮発性メモリの例としては、磁気ハードディスク、光学ディスク、フロッピーディスク、フラッシュメモリ、又は電気的プログラム可能メモリ(electrically programmable memory、EPROM)若しくは電気的消去可能及びプログラム可能メモリ(electrically erasable and programmable、EEPROM)の形態を挙げることができる。記憶デバイス(単数又は複数)としては、メモリカード(例えば、セキュアデジタル(Secure Digital、SD)メモリカード)、内蔵/外付けハードディスクドライブ、及び/又は内蔵/外付けソリッドステートドライブを挙げることができる。データは、定義されたファイルフォーマットに従って記憶デバイス上に記憶することができる。
図10を再び参照すると、ソースデバイス102は、ビデオソース104と、ビデオエンコーダ106と、インターフェース108と、を含む。ビデオソース104は、ビデオデータをキャプチャ及び/又は記憶するように構成された任意のデバイスを含むことができる。例えば、ビデオソース104は、ビデオカメラ及びそれに動作可能に結合された記憶デバイスを含むことができる。ビデオエンコーダ106は、ビデオデータを受信し、ビデオデータを表す準拠ビットストリームを生成するように構成された、任意のデバイスを含むことができる。準拠ビットストリームは、ビデオデコーダが受信し、それからビデオデータを再生成することができるビットストリームを指すことがある。準拠ビットストリームの態様は、ビデオ符号化標準に従って定義することができる。準拠ビットストリームを生成するとき、ビデオエンコーダ106は、ビデオデータを圧縮することができる。圧縮は、非可逆性(認識可能又は認識不能)又は可逆性とすることができる。インターフェース108は、適合したビデオビットストリームを受信し、適合したビデオビットストリームを通信媒体に送信及び/又は記憶するように構成された、任意のデバイスを含むことができる。インターフェース108は、イーサネットカードなどのネットワークインターフェースカードを含むことができ、光送受信機、無線周波数送受信機、又は情報を送信及び/若しくは受信することができる任意の他の種類のデバイスを含むことができる。更に、インターフェース108は、適合したビデオビットストリームを記憶デバイスに記憶することを可能にすることができるコンピュータシステム用インターフェースを含むことができる。例えば、インターフェース108は、Peripheral Component Interconnect(PCI)及びPeripheral Component Interconnect Express(PCIe)バスプロトコル、独自のバスプロトコル、ユニバーサルシリアルバス(Universal Serial Bus、USB)プロトコル、I2C、又はピアデバイスを相互接続するために使用することができる任意の他の論理構造及び物理構造をサポートする、チップセットを含むことができる。
図10を再び参照すると、目的デバイス120は、インターフェース122と、ビデオデコーダ124と、ディスプレイ126と、を含む。インターフェース122は、適合したビデオビットストリームを通信媒体から受信するように構成された任意のデバイスを含むことができる。インターフェース108は、イーサネットカードなどのネットワークインターフェースカードを含むことができ、光送受信機、無線周波数送受信機、又は情報を受信及び/若しくは送信することができる任意の他の種類のデバイスを含むことができる。更に、インターフェース122は、準拠ビデオビットストリームを記憶デバイスから取得することを可能にするコンピュータシステム用インターフェースを含むことができる。例えば、インターフェース122は、PCI及びPCIeバスプロトコル、独自のバスプロトコル、USBプロトコル、I2C、又はピアデバイスを相互接続するために使用することができる任意の他の論理構造及び物理構造をサポートする、チップセットを含むことができる。ビデオデコーダ124は、適合したビットストリーム及び/又はその許容可能な変形を受信し、それからビデオデータを再生するように構成された、任意のデバイスを含むことができる。ディスプレイ126は、ビデオデータを表示するように構成された任意のデバイスを含むことができる。ディスプレイ126は、液晶ディスプレイ(liquid crystal display、LCD)、プラズマディスプレイ、有機発光ダイオード(organic light emitting diode、OLED)ディスプレイ、又は別の種類のディスプレイなどの、様々なディスプレイデバイスのうちの1つを含むことができる。ディスプレイ126は、高解像度ディスプレイ又は超高解像度ディスプレイを含むことができる。図8に示す例では、ビデオデコーダ124は、データをディスプレイ126に出力するように説明されているが、ビデオデコーダ124は、ビデオデータを様々な種類のデバイス及び/又はそのサブコンポーネントに出力するように構成することができることに留意されたい。例えば、ビデオデコーダ124は、本明細書で説明するような任意の通信媒体にビデオデータを出力するように構成することができる。
図11は、本明細書で説明するビデオデータを符号化するための技術を実施することができる、ビデオエンコーダ200の例を示すブロック図である。例のビデオエンコーダ200は、別個の機能ブロックを有するように示されているが、そのような例示は、説明のためのものであり、ビデオエンコーダ200及び/又はそのサブコンポーネントを特定のハードウェア又はソフトウェアアーキテクチャに限定するものではないことに留意されたい。ビデオエンコーダ200の機能は、ハードウェア、ファームウェア、及び/又はソフトウェアの実装形態の任意の組み合わせを用いて実現することができる。一例では、ビデオエンコーダ200は、本明細書で説明する技術に従ってビデオデータを符号化するように構成することができる。ビデオエンコーダ200は、ピクチャ部分のイントラ予測符号化及びインター予測符号化を実行することができ、このような点から、複合ビデオエンコーダと称されることがある。図11に示す例では、ビデオエンコーダ200は、ソースビデオブロックを受信する。いくつかの例では、ソースビデオブロックは、符号化構造に従って分割されているピクチャの部分を含むことができる。例えば、ソースビデオデータは、マクロブロック、CTU、CB、その再分割、及び/又は別の同等の符号化ユニットを含むことができる。いくつかの例では、ビデオエンコーダ200は、ソースビデオブロックの追加の再分割を実行するように構成することができる。本明細書で説明するいくつかの技法は、符号化の前及び/又は符号化中にソースビデオデータがどのように区画されるかにかかわらず、ビデオ符号化に一般的に適用可能であることに留意されたい。図11に示す例では、ビデオエンコーダ200は、加算器202と、変換係数発生装置204と、係数量子化部206と、逆量子化/変換処理部208と、加算器210と、イントラ予測処理部212と、インター予測処理部214と、フィルタ部216と、エントロピ符号化部218と、を含む。
図11に示すように、ビデオエンコーダ200は、ソースビデオブロックを受信し、ビットストリームを出力する。ビデオエンコーダ200は、ソースビデオブロックから予測ビデオブロックを減算することにより、残差データを生成することができる。加算器202は、この減算演算を実行するように構成された構成要素を表す。一例では、ビデオブロックの減算は、画素領域で行われる。変換係数発生装置204は、離散コサイン変換(DCT)、離散サイン変換(DST)、又は概念的に類似の変換などの変換を残差ブロック又はその再分割に適用し(例えば、4つの8×8の変換を残差値の16×16の配列に適用することができる)、残差変換係数のセットを生成する。変換係数発生装置204は、離散三角変換のファミリーに含まれる変換の任意の及び全ての組み合わせを実行するように構成することができる。上記したように、ITU-T H.265では、TBは、以下のサイズ、4×4、8×8、16×16、及び32×32に制限される。一例では、変換係数発生装置204は、4×4、8×8、16×16、及び32×32のサイズを有する配列に従って変換を実行するように構成されてもよい。一例では、変換係数発生装置204は、別の次元を有する配列に従って変換を実行するようにさらに構成されてもよい。特に、いくつかの場合では、差値の矩形配列に対して変換を実行することが有用な場合がある。一例では、変換係数発生装置204は、アレイの以下のサイズ:2×2、2×4N、4M×2、及び/又は4M×4Nに従って変換を実行するように構成されてもよい。一例では、2次元(2D)のM×N逆変換は、1次元(1D)のM点逆変換と、それに続く1DのN点逆変換として実施されてもよい。一例では、2Dの逆変換は、1DのN点垂直変換と、それに続く1DのN点水平変換として実施されてもよい。一例では、2Dの逆変換は、1DのN点水平変換と、それに続く1DのN点垂直変換として実施されてもよい。変換係数発生装置204は、変換係数を係数量子化部206に出力することができる。
係数量子化部206は、変換係数の量子化を実行するように構成することができる。上記したように、量子化の程度は、量子化パラメータを調節することにより、変更することができる。係数量子化部206は、量子化パラメータを決定し、ビデオ復号中に量子化パラメータを復元し、逆量子化を実行するビデオデコーダによって使用することができるQPデータ(例えば、量子化グループサイズ及び/又はデルタQP値を決定するために使用されるデータ)を出力するように更に構成することができる。他の例では、1つ以上の追加的又は代替的パラメータを使用して、量子化のレベル(例えば、倍率)を決定することができることに留意されたい。本明細書で説明する技法は、一般的に、ビデオデータの成分に対応する変換係数についての量子化のレベルを、ビデオデータの別の成分に対応する変換係数についての量子化のレベルに基づいて決定するために適用することができる。
上記のように、JEMにおけるQP値を導出する技法は、理想的ではない場合がある。本明細書に記載する技法によれば、係数量子化部206は、輝度チャネル及び彩度チャネルが、特定のレベルまでの共通の区画構造を有し得る場合に、ビデオブロックの量子化パラメータを決定するように更に構成されてもよく、輝度チャネル及び彩度チャネルの一方又は両方は、別個の又は共有区画構造に従って、(例えば、予測を生成する目的のために)更に区画されることが可能になる。図7及び図9を参照すると、本明細書に記載する技法により、図示されるCBは、同じ予測が適用されるサンプル値のブロックであってもよい。更に、図示されたCUは、変換量子化グループに対応し得る。すなわち、残差は、変換及び/又は量子化の目的で、図示されたCUと整合されてもよい。したがって、CUは、輝度チャネル及び彩度チャネルのそれぞれに対応するQP値を有し得る。
図12は、現在のCUに対し、左隣接CU、上隣接CU、最後に符号化されたCU、及び一時的隣接CUの例を示す。図12は、表5に関して上記した例示的な区画に対応する。したがって、隣接するCUは、(1つ以上の参照ピクチャに含まれる)空間的及び/又は時間的サンプル位置に基づいて定義されてもよく、最後に符号化されたCUは、ビデオ符号化のセマンティクスに従って(例えば、走査順序(例えば、z走査)に従って)以前に符号化されたビデオブロックを指すことができる。更に、上記のように、各CUは、輝度チャネル及び彩度チャネルのそれぞれに対応するQP値を有し得る。一実施例では、現在のビデオブロックに対するQP値の導出は、隣接する空間的若しくは時間的ビデオブロックのQP値、及び/又は最後に符号化されたQP値のうちの1つ以上に基づいて、QP値を導出することを含み得る。以下に更に詳細に記載するように、時間的ビデオブロックは、並置されてもよいし、空間位置オフセット(例えば、動きベクトル)を使用して決定されてもよい。
図13は、最後に符号化されたCU及び隣接するCUが、輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する実施例を示す。一実施例では、本明細書の技法によれば、最後の符号化されたブロックが、輝度チャネル及び彩度チャネルを更に分割するために別個のツリーを使用する場合には、現在のCUのためのQP値を導出するために使用される最後の符号化されたQP値(lastCodedQP)は、最後に符号化されたCUの輝度QP値(lastCodedLumaQP)及び/又は最後に符号化されたCUの彩度QP値(lastCodedChromaQP)に基づいて導出され得る。例えば、lastCodedQPは、以下の式のうちの1つにしたがって導出され得る。
lastCodedQP=
(lastCodedLumaQP+lastCodedChromaQp+1)>>1;
lastCodedQP=
lastCodedLumaQP;
lastCodedQP=
max(lastCodedLumaQP, lastCodedChromaQp); 又は
lastCodedQP=
min(lastCodedLumaQP, lastCodedChromaQp)
一実施例では、本明細書の技法によれば、隣接するCUが、輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する場合には、現在のCUのためのQP値を導出するために使用される隣接QP値(neighborQP)は、隣接するCUの輝度QP値(neighborLumaQP)及び/又は隣接するCUの彩度QP値(neighborChromaQP)に基づいて導出され得る。例えば、neighborQPは、以下の式のうちの1つにしたがって導出され得る。
neighborQP=
(neighborLumaQP + neighborChromaQP + 1)>> 1;
neighborQP=
neighborLumaQP;
neighborQP=
min(neighborLumaQP, neihborChromaQP); 又は
neighborQP=
max(neighborLumaQP, neihborChromaQP)
図14は、最後に符号化されたCU、隣接するCU、及び現在のCUが輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する実施例を示す。一実施例では、本明細書の技法によれば、最後の符号化されたブロック及び現在のCUが、輝度及び彩度チャネルを更に区画するために別個のツリーを使用する場合には、現在のブロックの輝度チャネル及び彩度チャネルのそれぞれに対する、現在のCUのためのQP値を導出するために使用される最後の符号化されたQP値(lastCodedQP)は、最後に符号化されたCUの輝度QP値(lastCodedLumaQP)、及び/又は、最後に符号化されたCUの彩度QP値(lastCodedChromaQP)に基づいて導出され得る。例えば、現在のブロックの輝度チャネル及び彩度チャネルのそれぞれについてのlastCodedQPは、以下の式のうちの1つにしたがって導出され得る。
lastCodedQP for both luma and chroma channels =
lastCodedLumaQP;
lastCodedQP for luma channel =
lastCodedLumaQP, 及び
lastCoded for chroma channel =
lastCodedChromaQP;
lastCodedQP for both luma and chroma channel =
(lastCodedLumaQP + lastCodedChromaQP + 1)>> 1;
lastCodedQP for both luma and chroma channels =
max(lastCodedLumaQP + lastCodedChromaQP); 又は
lastCodedQP for both luma and chroma channels =
min(lastCodedLumaQP + lastCodedChromaQP).
一実施例では、本明細書の技法によれば、隣接するビデオブロック及び現在のCUが、輝度及び彩度チャネルを更に区画するために別個のツリーを使用する場合には、現在のブロックの輝度チャネル及び彩度チャネルのそれぞれに対する、現在のCUのためのQP値を導出するために使用される隣接するQP値(neighborQP)は、隣接するCUの輝度QP値(neighborLumaQP)、及び/又は、隣接するCUの彩度QP値(neighborChromaQP)に基づいて導出され得る。例えば、neighborQPは、以下の式のうちの1つにしたがって導出され得る。
neighborQP for both luma and chroma channels =
neighborLumaQP;
neighborQP for luma channel =
neighborLumaQP, 及び
neighborQP for chroma channel =
neighborChromaQP;
neighborQP for both luma and chroma channel =
(neighborLumaQP + neighborChromaQP + 1)>> 1;
neighborQP for both luma and chroma channels =
max(neighborLumaQP + neighborChromaQP); 又は
neighborQP for both luma and chroma channel =
min(neighborLumaQP , neighborChromaQP).
図15は、最後に符号化されたCU及び隣接するCUが輝度チャネル及び彩度チャネルを更に区画するための共有区画を使用し、現在のCUが輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する例を示す。一実施例では、本明細書の技法によれば、最後に符号化されたブロックが輝度チャネル及び彩度チャネルを更に区画するための共有区画を使用し、現在のCUが輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する場合には、現在のブロックの輝度チャネル及び彩度チャネルのそれぞれについての、現在のCUのQP値を導出するために使用される最後の符号化されたQP値(lastCodedQP)は、最後に符号化されたCUの輝度QP値(lastCodedLumaQP)、及び/又は最後に符号化されたCUの彩度QP値(lastCodedChromaQP)に基づいて導出され得る。例えば、現在のブロックの輝度チャネル及び彩度チャネルのそれぞれについてのlastCodedQPは、以下の式のうちの1つにしたがって導出され得る。
lastCodedQP for both luma and chroma channels =
lastCodedLumaQP;
lastCodedQP for luma channel =
lastCodedLumaQP, 及び
lastCodedQP for lchroma channel =
lastCodedChromaQP;
lastCodedQP for both luma and chroma channel =
(lastCodedLumaQP + lastCodedChromaQP + 1)>> 1;
lastCodedQP for both luma and chroma channels =
max(lastCodedLumaQP, lastCodedChromaQP); 又は
lastCodedQP for lboth luma and chroma channels =
min(lastCodedLumaQP, lastCodedChromaQP).
一実施例では、本明細書の技法によれば、隣接するビデオブロックが輝度チャネル及び彩度チャネルを更に区画するために共有区画を使用し、現在のCUが輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する場合には、現在のブロックの輝度チャネル及び彩度チャネルのそれぞれについて、現在のCUに対するQP値を導出するために使用される隣接するQP値(neighborQP)は、隣接するCUの輝度QP値(neighborLumaQP)、及び/又は隣接するCUの彩度QP値(neighborChromaQP)に基づいて導出され得る。例えば、neighborQPは、以下の式のうちの1つにしたがって導出され得る。
neighborQP for both luma and chroma channels =
neighborLumaQP;
neighborQP for luma channel =
neighborLumaQP, 及び
neighborQP for chroma channel =
neighborChromaQP;
neighborQP for both luma and chroma channel =
(neighborLumaQP + neighborChromaQP + 1)>> 1;
neighborQP for both luma and chroma channels =
max(neighborLumaQP, neighborChromaQP); 又は
neighborQP for both luma and chroma channels =
min(neighborLumaQP, neighborChromaQP).
現在のCUのためのQP値は、本明細書に記載される様々な技法に従って、lastCodedQP又はneighborQPに基づいて導出され得る。すなわち、導出されたlastCodedQP又はneighborQP値を予測QP値として使用することができる。例えば、場合によっては、輝度チャネルの場合、lastCodedQP又はneighborQPは、上記の式でqPY_PREDに置換されてもよい。すなわち、現在のCUのQP値は、デルタ値をlastCodedQP又はneighborQPに加算することにより導出され得る。更に、いくつかの実施例では、現在のCUについての彩度QPは、現在のCUの輝度QPに基づいて導出されてもよい。例えば、彩度QP値は、上記したものと同様の方法で1つ以上の彩度QPオフセットを使用して導出されてもよい。1つ以上の彩度オフセットは、様々な位置でシグナリングされてもよい(例えば、パラメータセット(例えば、PPS)、スライスヘッダなど)。いくつかの場合(例えば、高ダイナミックレンジビデオ)では、対応する復号された輝度サンプル値のDC値、対応する復号された輝度サンプル値の分散値、対応する輝度サンプル値に使用される予測のDC値、対応する輝度サンプル値に使用される予測の分散値などの、対応する輝度サンプル値の特性を使用して、彩度ブロックに関するQP予測を決定することができることに留意されたい。更に、いくつかの実施例では、現在のCUについての彩度QPは、輝度QPとは独立して導出され得る。すなわち、例えば、それぞれの予測QP値は、輝度チャネル及び彩度チャネルのそれぞれについて導出される場合がある。
場合によっては、最後に符号化されたCU及び隣接するCUが、輝度チャネル及び彩度チャネルを更に区画するために共有区画を使用し、現在のCUが、輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する例では、lastCodedQP又はneighborQPを使用せずに予測QPを導出することが有用であり得ることに留意されたい。すなわち、場合によっては、lastCodedQP又はneighborQPは、この場合、良い予測因子として機能しない場合がある。すなわち、シグナリングされたデルタQP値は、比較的大きい場合がある。一実施例では、本明細書に記載の技法によれば、最後に符号化されたCU及び隣接するCUが、輝度チャネル及び彩度チャネルを更に区画するために共有区画を使用し、現在のCUが、輝度チャネル及び彩度チャネルを更に区画するために別個のツリーを使用する場合には、係数量子化部206は、分散ベースの技法に基づいて、輝度チャネル及び/又は彩度チャネルに関する予測QP値を計算するように構成されてもよい。
一実施例では、本明細書の技法によれば、予測QPは、以下のプロセスに従って導出され得る。
qP_PRED0 = qP_L + qP_A - qp_AL;
qP_PRED1 = max(qP_PRED0, min (qP_L, qp_A));
qP_PREDF = min(qP_PRED1, max (qP_L, qp_A)).
ここで、
ほとんどの場合、(例えば、可用性に応じて)qP_Lは、現在のCUの左の位置における符号化ユニットのQP値と等しく設定され、
ほとんどの場合、qP_Aは、現在のCUの上の位置における符号化ユニットのQP値と等しく設定され、
ほとんどの場合、qP_ALは、現在のCUの左上の位置における符号化ユニットのQP値と等しく設定され、
上記のプロセスに従って予測QPを導出することは、典型的には、デルタQPの値が平均的により小さくなり、デルタQPの確度がゼロである可能性が増大し、更に、QPデータのシグナリングを圧縮することに留意されたい。
本明細書の技法による一実施例では、CUについてのQP値は、以下のように算出され得る。
QP = QP_Rate + dQP_Visual;
QP_Rate = lastCodedQPRate + delta_QPRate;
dQP_Visual = dQP_VisualPRED + delta_dQPVisual;
ここで、
lastCodedQPRateは、前に符号化されたCUのQP_Rate値であり、前に符号化されたCUがない場合、例えば、スライスの開始時等の場合には、lastCodedQpRateは、スライスヘッダ内でシグナリングされた値sliceQPをとり、
delta_QPRateは、現在のCUのQP_RateとlastCodedQPRateの差であり、
dQP_VisualPREDは、qP_PRED0、qP_RED1、及びqP_PREDFを使用して計算される予測dQP_Visual値であり、qP_L、qP_A、及びqP_ALは、対応する隣接するCUのdQP_Visual値に設定されており、
delta_dQPVisualは、現在のCUのdQP_VisualとdQP_VisualPREDとの差である。
このようにして、現在のCUのQP値は、現在のレート成分QP値と、以前に符号化されたCUのレート成分QP値に基づく予測因子レート成分QP値との間の差値をシグナリングすることによって、また、現在の視覚成分QP値と、1つ以上の隣接するCUの視覚成分QP値に基づく予測因子視覚成分QP値との間の差値をシグナリングすることによって、示されてもよい。
いくつかの実施例では、dQP_VisualPREDは、以下の式に基づいて決定され得ることに留意されたい。
dQP_VisualPRED = dQPSV;
ここで、
dQPSVは、ビデオデータの参照ブロックの平均輝度値及び対応する関数(1つ又は2つ以上のルックアップテーブルを含む)に基づいて決定されてもよく、
例えば、ビデオデータの参照ブロックの平均輝度値は、dQPSV値にインデックスされ得る。ビデオデータの現在のブロックについて、ビデオの参照ブロックは、例えば、(i)1つ以上の並置されたブロック、(ii)動き補償予測を形成するブロック、及び/又は(iii)1つ以上の空間的隣接ブロックを含み得る。
一実施例では、現在のCUについてのQP値が、QP_Rate及び/又はdQP_Visualに従って決定されるかどうかは、パラメータセット又はスライスヘッダに含まれるフラグのセットに従って決定され得る。すなわち、QP_Rate及びdQP_Visualは、独立してオン/オフスイッチされてもよく、パラメータセットに含まれるインデックスによって決定される、異なる空間的粒度で符号化されてもよい。QP_Rate又はdQP_Visualのうちの1つが「オフ」である場合、対応するデルタQP値は0であると想定されることに留意されたい。したがって、QP_Rateがスイッチオフされる場合、QP_Rateの値は、スライス内の全てのCUのsliceQPに等しいと推測される。dQP_Visualがスイッチオフされる場合、dQP_Visualの値は、スライス中の全てのCUについて0に等しいと推測される。場合によっては、QP_Rateに対する粗空間粒度及びdQP_Visualに対する微細空間粒度を使用することが有用な場合がある。
本明細書に参照により組み込まれ、Ribas Corberaと称される、Ribas-Corbera,J. et al.,Rate Control for Low-Delay Video Communications,Contribution Q15-A-20 to ITU-T Video Coding Experts Group First Meeting(ITU-T SG16 Q.15研究期間1997-2000)、Portland,Oregon,USA 1997年6月は、最適化されたビット割り当て戦略に従って、フレーム内のマクロブロックに対するQPを適応させるレート制御技法を記載している。予測QP技法を導出するための分散ベースの技法は、以下に記載されるように、Ribas-Corberaに基づくことができる。上記したように、ITU-T H.265は、前のビデオ符号化規格の16×16マクロブロックに類似したCTU構造を指定することに留意されたい。場合によっては、マクロブロックは量子化グループに対応し得ることに留意されたい。したがって、以下に更に詳細に記載されるように、Ribas-Corberaに記載される技法は、16×16以外のサイズを有するCUに適用され得る。Ribas-Corberaの記載によれば、Qi(i番目のマクロブロックの量子化ステップサイズ)が、最適化された量子化ステップサイズQi *に基づいて計算される。Ribas-Corberaは、QP=2*Qiであるビデオ符号化規格に基づくことに留意されたい。ITU-T H.265では、ほとんどのプロファイルの場合、Qi=2(QP-4)/6である。具体的には、Ribas-Corberaの記載によれば、ピクチャがN個のマクロブロックを有し、Bがピクチャを符号化するために割り当てられたビットの総数であるものについては、Qiは、最適化された量子化ステップサイズQi *に基づいて計算され、それは以下のように指定される。
Figure 0007448549000015
但し、
Aはマクロブロック内のサンプルの数であり、
Bは、ピクチャを符号化するために割り当てられたビットBの総数であり、
Nは、ピクチャ内のマクロブロックの数であり、
σiは、i番目のマクロブロックにおける予測値と元の輝度サンプル及び彩度サンプルとの間の差の実験標準偏差であり、
Figure 0007448549000016
ここで、B’LC,iは、i番目のマクロブロックの輝度及び彩度を符号化するために使用されるビット数であり、B’iは、i番目のマクロブロックのDCT係数を符号化するために使用されるビットの実際の数である。
Ribas-Corberaにおける最適化された量子化パラメータから、分散と量子化ステップサイズとの間の関係は、以下のように導出され得る。
Figure 0007448549000017
式中、b’iは、DTC係数に関連付けられていないi番目のマクロブロック内のビット数(例えば、予測モードを符号化するために使用されるビットなど)である。
更に、
Figure 0007448549000018
(式中、bは、DTC係数に関連付けられていないピクチャ内のビット数である。
これらの数式をKi-1及びCi-1導出のものに代入する。
Figure 0007448549000019
Ki-1及びCi-1についての上記数式をQi *の数式に更に代入し、導出を単純化する。
Figure 0007448549000020
ITU-T H.265の場合は、量子化ステップサイズの数式Qiは、以下のように導出され得る。
Figure 0007448549000021
上記式中のqPY_PREDを解くと、以下が得られる。
Figure 0007448549000022
更に、上記の式では、QPi-1は、上記のqPY_Aと置き換えられてもよく、したがって、本明細書に記載する技法によれば、ビデオエンコーダ200は、以下の式に基づいてqPY_PREDを決定するように構成されてもよい。
Figure 0007448549000023
上記式において、以下の事柄を考慮されたい。
-項
Figure 0007448549000024
は、QPがDCT係数のビットレートのみに影響する(又は同様に、QPは、変換プロセス、例えば、2-D DST、他の2-D変換、1-D変換、一次及び二次変換の結果のビットレートに影響するか、又は変換なし(残差に影響))という事実を説明し、以前に符号化されたフレームを使用して推定することができ、かつ/又は定数に設定することができる。
-
Figure 0007448549000025
の値は、前のCUの復号された輝度及び彩度係数値の分散を計算することによって、デコーダにより推定することができる。
-
Figure 0007448549000026
の値は、ピクチャ内の以前に復号されたCUの輝度係数値及び彩度係数値の標準偏差の平均として推定することができる。
iの値は、i番目のCUにおける復号された輝度係数値及び彩度係数値についての推定値の実験標準偏差を使用して推定することができる。輝度係数及び彩度係数を復号するために、i番目のCUに関連するQP値を知る必要があることに留意されたい。i番目のCUのQP値は先験的に知られていないため、その値の推定値を代わりに使用することができる。一実施例では、i番目のCUに関連するQPは、i番目のCUの前に復号されたピクチャ内の全てのCU’sに関連するQP’sの算術平均として推定することができる。ピクチャ内の最初のCUについてのQPは、ピクチャQP値として推定することができる。
したがって、本明細書に記載する技法によれば、ビデオエンコーダ200は、以下の式に基づいてqPY_PREDを決定するように構成されてもよい。
Figure 0007448549000027
ここで、
σ* iは、現在のCUにおける予測値と元の輝度値及び彩度値との間の差の推定された実験標準偏差であり、
SDavg_pは、ピクチャ内の以前に復号されたCUの輝度係数値及び彩度係数値の標準偏差の平均であり、
Vari-1前のCUの復号された輝度及び彩度係数値の分散、及び
Cは所定の定数である。
このようにして、係数量子化部206は、σi *とSDavg_Pの積がVari-1よりも大きいかどうかに基づいて、以前に符号化されたCUのQP値を調整することによって、現在のCUのqPY_PREDを決定するように構成され、この場合、現在のCUのqPY_PREDは、以前に符号化されたCUのQPよりも大きいように調整される。
上記の式の項
Figure 0007448549000028
に関して、3の倍率が理論的な導出から生じることに留意されたい。いくつかの実施例では、経験的に導出され得る異なる定数を使用することが有利であり得る。すなわち、いくつかの例では、3以外の倍率が使用される場合がある。
Cに関して、b/Bの値は、ビデオ符号化規格に基づいて制約されることに留意されたい。すなわち、ビデオ符号化規格は、b/Bの理論的最小値及び最大値を有する。更に、QPの値は、高いQP値に関して、b/Bの値に影響を及ぼし、少ない数のビットしかDCT係数を符号化するために使用されないことによってb/Bが増加する。全ての係数レベルがゼロに等しくなるように、QPを十分に高く(すなわち、ゼロビットが係数値を符号化するのに使用される)できるため、b/Bの理論的最大値は1となる。b/Bの理論的最小値は、ビデオ符号化規格に依存することになる。b/Bの典型的な値は、目標ビットレートに依存することになる。高品質ビデオの典型例では、例えば、b/Bは約0.3となり、Cは0.77に等しくなるであろう。本明細書に記載する技法についての説明の目的上、符号化されたピクチャにおいて、b/Bは、典型的には0.25~0.75の範囲であると説明することができるので、Cは、典型的には、0.5714~0.8の範囲内となりえる。
正確な予測は残差分散を低くすることになり、不正確な予測は、残差分散を高くすることになるので、上記の式における項((σi * SDavg_p)/Vari-1)は現在のCUの相対予測精度を示すことに留意されたい。すなわち、Vari-1は、前のCUの予測精度の指標であり、σiが相対的に大きい場合には、現在のCUの予測精度が比較的低いことを示し、(σi * SDavg_P)はVari-1よりも大きくなる可能性が高い。(σi * SDavg_P)がVari-1よりも大きい場合、
Figure 0007448549000029
が典型的に正であり、qPY_PREDがqPY_Aと比較して増加する。同様に、(σi *SDavg_P)がVari-1未満である場合、
Figure 0007448549000030
は、典型的にはゼロ未満であり、qPYPREDがqPY_Aと比較して減少する。ピクチャの十分に予測領域は、ピクチャ(例えば、顔)の視覚的に重要な領域に対応することがあり、ピクチャの予測が不十分の領域は、ピクチャの視覚的に重要でない領域(例えば、ツリーのリーフなどの高テクスチャ領域)に対応することがあることに留意されたい。このようにして、係数量子化部206は、現在のCUの相対的予測品質に基づいて以前に符号化されたCUのQP値を調整することによって、現在のCUのqPY_PREDを決定するように構成され、CUが相対的に十分に予測されていない場合には、量子化が増大し、CUが相対的に高く予測される場合には、量子化が減少する。
上記のように、JEMでは、CBに対応する残差値を使用して、更なる区画なしに変換係数を生成することができ、すなわち、JEMでは、QTBTのリーフノードは、ITU-T H.265のTUに類似し得るので、JEMにおけるQP値は、CUレベルで導出される。本明細書に記載する技法によれば、QP値はCUレベル以外の深さで導出することができる。図7に示す例を参照すると、本明細書に記載する技法による一実施例では、QP値は、指定された深さに対して導出され、指定された深さでシグナリングされてもよい。図16は、各深さ1ノードに対してQP値が導出される例示的なQTBTを示す。すなわち、QP1、QP2、QP3、及びQP4は、深さ1ノードごとに導出され、深さ1ノードを超える深さにあるリーフノードは変換係数グループを形成する。表8は、輝度チャネル及び彩度チャネルに対する共有QTBT及び独立QTBTをシグナリングするために、また、図16に示す例の場合の深さ1ノードにおけるQP値を更にシグナリングするために使用され得る疑似シンタックスの例を示す。図16のツリー及び表8の疑似シンタックスは、z走査に従って導出されることに留意されたい。
Figure 0007448549000031
上記のように、QP値は、指定された深さに対して導出され、指定された深さでシグナリングされ得る。一実施例では、量子化グループが深さ3ノードにより定義される場合は、この深さを上回る変換ユニット(又はCU又は変換区画ツリーのリーフ)もまた、QP値をシグナリングすることができる。したがって、一般に、QP値がシグナリングされ得る最大深さ値以下の深さを有するツリー内の任意のリーフ又はノードは、シグナリングされたQP値を含み得る。更に、QP値をシグナリングすることができる最大深さ値を下回る全てのリーフ/ノードは、それらの親/祖先ノードからQP値を継承することができる。
上記のように、本明細書に記載する技法によれば、輝度チャネル及び彩度チャネルは、別個の区画ツリー又は共有区画ツリーに従って予測する目的のために、CUを越えて更に区画されてもよい。一実施例では、輝度チャネル及び彩度チャネルが共有区画ツリーに従ってCUを越えて更に区画される場合には、輝度チャネル及び彩度チャネルのQP値は、親深さにおいてシグナリングされたQP値に基づいて導出されることができ、輝度チャネル及び彩度チャネルが別個の区画ツリーに従ってCUを越えて更に区画される場合には、QP値は、別個のツリーのルート(root)でシグナリングされるQP値(単数又は複数)に基づいた輝度チャネル及び彩度チャネルのそれぞれに対して、導出され得る(すなわち、ビデオエンコーダによってシグナリングされ、ビデオデコーダによって受信され得る)。場合によっては、共通のQP値が、輝度チャネル及び彩度チャネルに対して導出され得る。表9は、別個の区画ツリーを有する輝度チャネル及び彩度チャネルのそれぞれについてのQP値をシグナリングするために使用され得る疑似シンタックスの例を示す。
Figure 0007448549000032
一実施例では、本明細書に記載する技法によれば、変換量子化グループは、予測の目的のために使用される区画に無関係に導出され得る。すなわち、例えば、変換量子化グループは、所定の/シグナリングされたブロックサイズに基づいて設定されてもよく、QP値は、区画と無関係な各ブロックについてシグナリングされてもよい。場合によっては、ピクチャ境界におけるQPブロックは異なるサイズを有してもよい(例えば、部分的なQPブロックは、境界で形成され得る)ことに留意されたい。図17は、例示的な区画とは無関係に、QP値が各ブロックについてのシグナリングである一例を示す。すなわち、図17では、QP値が並置されたQP値に基づいてCUについて導出される。いくつかの場合において、図17に示すように、左下矩形CUに関してCUは、複数の並置されたQP値を含み得ることに留意されたい。このようにして、ルールのセットは、そのようなCUについてのQP値を導出するために定義され得る。例えば、並置されたQP値は、CUの左上のサンプルと並置されたQP値として定義することができる。すなわち、この例では、ブロック内のサンプル(単数又は複数)の空間的位置を使用して、ブロックに使用されるQPを決定する。一実施例では、輝度チャネル及び彩度チャネルが別個のツリーに従って更に区画される場合には、輝度チャネル及び彩度チャネルは、1つの量子化グループとして考慮されてもよく、輝度チャネル及び彩度チャネルに、同じ並置されたQPを割り当ててもよい。一実施例では、輝度チャネル及び彩度チャネルが、別個のツリーに従って更に区画される場合には、QPシグナリングは、cbfLuma及びcbfChromaの両方に依存する場合があり、また、isCuQpDeltaCodedは、例えば、表2に示すように、輝度及び彩度量子化グループにおいて1回だけ設定されている。
VCEG 及び MPEGによって共に提起された「Joint Call for Proposals on Video Compression with Capabilities beyond HEVC」に応答して、ビデオ符号化の複数の説明が様々なグループによって、10th Meeting of ISO/IEC JTC1/SC29/WG11 16-20 April 2018,San Diego,CA.において提案されている。ビデオ符号化の複数の説明の結果として、ビデオ符号化仕様のドラフトテキストが、「Versatile Video Coding (Draft 1),」10th Meeting of ISO/IEC JTC1/SC29/WG11 16-20 April 2018,San Diego,CA,document JVET-J1001-v2において説明され、これは本明細書に参考として組み込まれ、JVET-J1001として参照される。本明細書に参考として組み込まれ、JVET-K1001と称する、「Versatile Video Coding (Draft 2),」11th Meeting of ISO/IEC JTC1/SC29/WG11 10-18 July 2018,Ljubljana,SI,document JVET-K1001-v7、がJVET-J1001の更新版である。更に、本明細書に参考として組み込まれ、JVET-L1001と称する、「Versatile Video Coding (Draft 3),」12th Meeting of ISO/IEC JTC1/SC29/WG11 3-12 October 2018,Macao,CN,document JVET-L1001-v7、がJVET-K1001の更新版である。JVET-L1001は、量子化パラメータの導出プロセスを提供する。
一実施例では、本明細書の技法によれば、量子化パラメータの導出プロセスは、以下の通りであり得る。
このプロセスへの入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在の符号化ブロックの左上の輝度サンプルを指定する輝度位置(xCb、yCb)と、
-輝度サンプルにおける現在の符号化ブロックの幅を指定する変数cbWidthと、
-輝度サンプルにおける現在の符号化ブロックの高さを指定する変数cbHeightと、
-CTUを区画するためにシングルツリー(SINGLE_TREE)を使用するか、それともデュアルツリーを使用するか、デュアルツリーが使用される場合は、輝度成分(DUAL_TREE_LUMA)を現在処理するか、それとも彩度成分(DUAL_TREE_CHROMA)を現在処理するかを指定する変数tree Typeと、である。
このプロセスでは、輝度量子化パラメータQp’y及び彩度量子化パラメータQp’Cb及びQp’Crが導出される。
輝度位置(xQg、yQg)は、現在のピクチャの左上の輝度サンプルに対する現在の量子化グループの左上の輝度サンプルを指定する。水平位置xQg及び垂直位置yQgは、それぞれCuQgTopLeftX及びCuQgTopLeftYに等しく設定されている。
注記:現在の量子化グループは、同一のqPY_PREDを共有する符号化ツリーブロック内の矩形領域である。その幅及び高さは、左上の輝度サンプル位置が変数CuQgTopLeftX及びCuQgTopLeftYに割り当てられる符号化ツリーノードの幅及び高さに等しい。
treeTypeがSINGLE_TREE又はDUAL_TREE_LUMAに等しい場合には、予測輝度量子化パラメータqPY_PREDは、次の順序のステップによって導出される。
1.変数qPY_PREVは、以下のように導出される。
-以下の条件のうちの1つ以上が真である場合、qPY_PREVはTileGroupQpYに等しく設定されている。
-現在の量子化グループは、タイルグループ内の最初の量子化グループである。
-現在の量子化グループは、タイル内の最初の量子化グループである。
-そうでなければ、以下の条件の両方が真である場合、qPY_PREVは、(xQg, yQg - 1)をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータQpYに等しく設定され、
-現在の量子化グループは、タイル行内の最初の量子化グループである。
-現在の量子化グループは、(xQg, yQg - 1)をカバーする輝度符号化ブロックと同じタイルである。
-そうでなければ、qPY_PREVは、復号化順の前の量子化グループ内の最後の輝度符号化ユニットの輝度量子化パラメータQpYに等しく設定されている。
2.ブロックに対する可用性導出プロセスは、入力として、(xCb,yCb)に等しく設定された位置(xCurr,yCurr)と、(xQg-1,yQg)に等しく設定された隣接位置(xNbY, yNbY)を用いて起動され、出力はavailableAに割り当てられる。変数qPY_Aは、以下のように導出される。
-以下の条件のうちの1つ以上が真である場合、qPY_Aは、qPY_PREVに等しく設定されている。
-availableAはFALSEに等しい。
-輝度位置(xQg - 1, yQg)をカバーする輝度符号化ブロックを含むCTBのCTBアドレスctbAddrAは、CtbAddrInTsに等しくなく、この場合、ctbAddrAは以下のように導出される。
xTmp = (xQg - 1) >> MinTbLog2SizeY
yTmp = yQg >> MinTbLog2SizeY
minTbAddrA = MinTbAddrZs[xTmp][yTmp]
ctbAddrA = minTbAddrA >> (2*(CtbLog2SizeY - MinTbLog2SizeY))
- そうでなければ、qPY_Aは、(xQg - 1, yQg)をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータQpYに等しく設定されている。
3.ブロックに対する可用性導出プロセスは、出力として、(xCb, yCb)に等しく設定された位置(xCurr, yCurr)と、(xQg, yQg - 1)に等しく設定された隣接位置(xNbY, yNbY)と、を用いて起動され、出力はavailableBに割り当てられる。変数qPY_Bは、以下のように導出される。
-以下の条件のうちの1つ以上が真である場合には、qPY_Bは、qPY_PREVに等しく設定されている。
-availableBはFALSEに等しい。
-輝度位置(xQg、yQg-1)をカバーする輝度符号化ロックを含むCTBのCTBアドレスctbAddrBは、CtbAddrInTsに等しくなく、この場合、ctbAddrBは以下のように導出される。
xTmp = xQg >> MinTbLog2SizeY
yTmp = (yQg - 1) >> MinTbLog2SizeY
minTbAddrB = MinTbAddrZs[xTmp][yTmp]
ctbAddrB = minTbAddrB >> (2*(CtbLog2SizeY - MinTbLog2SizeY))
-そうでなければ、qPY_Bは、(xQg, yQg - 1)をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータQPYに等しく設定されている。
4.予測輝度量子化パラメータqPY_PREDは、以下のように導出される。
qPY_PRED = (qPY_A + qPY_B + 1) >> 1
変数QpYは、以下のように導出される。
QpY =
((qPY_PRED + CuQpDeltaVal + 64 + 2* QpBdOffsetY)%(64 + QpBdOffsetY))- QpBdOffsetY
輝度量子化パラメータQp’Yは、以下のように導出される。
Qp’Y = QpY + QpBdOffsetY
ChromaArrayTypeが0に等しくなく、treeTypeがSINGLE_TREE又はDUAL_TREE_CHROMAに等しいとき、以下が適用される。
-treeTypeがDUAL_TREE_CHROMAに等しいとき、変数QpYは、輝度位置(xCb + cbWidth / 2, yCb + cbHeigh /2)をカバーする輝度符号化ユニットの輝度量子化パラメータQpYに等しく設定されている。
-変数qPCb及びqPCrは、以下のように導出される。
qPiCb = Clip3(-QpBdOffsetc, 69, QpY + pps_cb_qp_offset + tile_group_cb_qp_offset)
qPiCr = Clip3(-QpBdOffsetc, 69, QpY + pps_cr_qp_offset + tile_group_cr_qp_offset)
-ChromaArrayTypeが1に等しい場合、変数qPCb及び変数qPCrは、それぞれqPiCb及びqPiCrに等しいインデックスqPiに基づいて、表10で指定されるQpCの値に等しく設定されている。
-そうでなければ、変数qPCb及び変数qPCrは、それぞれqPiCb及びqPiCrに等しいインデックスqPiに基づいて、Min (qPi, 63)に等しく設定されている。
-Cb成分及びCr成分についての彩度量子化パラメータQp’Cb及びQp’Crは、以下のように導出される。
Qp’Cb = qPCb + QpBdOffsetC
Qp’Cr = qPCr + QpBdOffsetC
Figure 0007448549000033
一実施例では、本明細書の技法による量子化パラメータの導出プロセスは、以下の通りであり得る。
このプロセスへの入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在の符号化ブロックの左上の輝度サンプルを指定する輝度位置(xCb、yCb)と、
-輝度サンプルにおける現在の符号化ブロックの幅を指定する変数cbWidthと、
-輝度サンプルにおける現在の符号化ブロックの高さを指定する変数cbHeightと、
-CTUを区画するためにシングルツリー(SINGLE_TREE)を使用するか、それともデュアルツリーを使用するかを指定し、デュアルツリーが使用されるとき、輝度(DUAL_TREE_LUMA)が現在処理されているか、それとも彩度成分(DUAL_TREE_CHROMA)が現在処理されているかを指定する変数treeTypeと、
このプロセスでは、輝度量子化パラメータQp’Y及び彩度量子化パラメータQp’Cb and Qp’Crが導出される。
輝度位置(xQg、yQg)は、現在のピクチャの左上の輝度サンプルに対する現在の量子化グループの左上の輝度サンプルを指定する。水平位置xQg及び垂直位置yQgは、それぞれCuQgTopLeftX及びCuQgTopLeftYに等しく設定されている。
注記:現在の量子化グループは、同一のqPY_PREDを共有した符号化ツリーブロック内の矩形領域である。その幅及び高さは、左上の輝度サンプル位置が変数CuQgTopLeftX及びCuQgTopLeftYに割り当てられる符号化ツリーノードの幅及び高さに等しい。
treeTypeがSINGLE_TREE又はDUAL_TREE_LUMAに等しいとき、予測輝度量子化パラメータqPY_PREDは、次の順序のステップによって導出される。
1.変数qPY_PREVは、以下のように導出される。
-以下の条件のうちの1つ以上が真である場合、qPY_PREVはTileGroupQpYに等しく設定されている。
-現在の量子化グループは、タイルグループ内の最初の量子化グループである。
-現在の量子化グループは、タイル内の最初の量子化グループである。
-そうでなければ、qPY_PREVは、復号化順の前の量子化グループ内の最後の輝度符号化ユニットの輝度量子化パラメータQpYに等しく設定されている。
2.ブロックに対する可用性導出プロセスは、入力として、(xCb,yCb)に等しく設定された位置(xCurr,yCurr)と、(xQg-1,yQg)に等しく設定された隣接位置(xNbY, yNbY)と、を用いて起動され、出力はavailableAに割り当てられる。変数qPY_Aは、以下のように導出される。
-以下の条件のうちの1つ以上が真である場合、qPY_Aは、qPY_PREVに等しく設定されている。
-availableAはFALSEに等しい。
-輝度位置(xQg - 1, yQg)をカバーする輝度符号化ブロックを含むCTBのCTBアドレスctbAddrAは、CtbAddrInTsに等しくなく、この場合、ctbAddAは以下のように導出される。
xTmp = (xQg - 1)>> MinTbLog2SizeY
yTmp = yQg >> MinTbLog2SizeY
minTbAddrA = minTbAddrZs[xTmp][yTmp]
ctbAddrA = minTbAddrA >> (2*(CtbLog2SizeY - MinTbLog2SizeY))
-そうでなければ、qPY_Aは、(xQg - 1, yQg)をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータQpYに等しく設定されている。
3.ブロックに対する可用性導出プロセスは、出力として(xCb, yCb)に等しく設定された位置(xCurr, yCurr)と、(xQg, yQg-1)に等しく設定された隣接位置(xNbY, yNbY)を用いて起動され、出力はavailableBに割り当てられる。変数qPY_Bは、以下のように導出される。
-以下の条件のうちの1つ以上が真である場合、qPY_Bは、qPY_PREVに等しく設定されている。
-availableBはFALSEに等しい。
-輝度位置(xQg、yQg-1)をカバーする輝度符号化ブロックを含むCTBのCTBアドレスctbAddrBは、CtbAddrInTsに等しくなく、この場合、ctbAddrBは以下のように導出される。
xTmp = xQg >> MinTbLog2SizeY
yTmp = (yQg - 1)>> MinTbLog2SizeY
minTbAddrB = MinTbAddrZs[xTmp][yTmp]
ctbAddrB = minTbAddrB >> (2*(CtbLog2SizeY - MinTbLog2SizeY))
-そうでなければ、qPY_Bは、(xQg, yQg - 1)をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータQpYに等しく設定されている。
4.予測輝度量子化パラメータqPY_PREDは、以下のように導出される。
-以下の条件が真である場合、qPY_PREDは、(xQg, yQg - 1)をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータQpYに等しく設定されている。
-availableBは、TUREに等しい。
-現在の量子化グループは、タイル内のCTB行における最初の量子化グループである。
-そうでなければ、qPY_PREDは、以下のように導出される。
qPY_PRED = (qPY_A + qPY_B + 1)>> 1
変数QpYは、以下のように導出される。
QpY =
((qPY_PRED + CuQpDeltaVal + 64 + 2* QpBdOffsetY)%(64 + QpBdOffsetY)) - QpBdOffsetY
輝度量子化パラメータQp’Yは、以下のように導出される。
Qp’Y = QpY + QpBdOffsetY
ChromaArrayTypeが0に等しくなく、treeTypeがSINGLE_TREE又はDUAL_TREE_CHROMAに等しいとき、以下が適用される。
-treeTypeがDUAL_TREE_CHROMAに等しいとき、変数QpYは、輝度位置(xCb + cbWidth / 2, yCb + cbHeight /2)をカバーする輝度符号化ユニットの輝度量子化パラメータQPYに等しく設定されている。
-変数qPCb及びqPCrは、以下のように導出される。
qPiCb = Clip3(-QpBdOffsetC, 69, QpY + pps_cb_qp_offset + tile_group_cb_qp_offset)
qPiCr = Clip3(-QpBdOffsetC, 69, QpY + pps_cr_qp_offset + tile_group_cr_qp_offset)
-ChromaArrayTypeが1に等しい場合、変数qPCb及びqPCrは、それぞれqPiCb及びqPiCrに等しいインデックスqPiに基づいて、表10で指定されるQpCの値に等しく設定されている。
-そうでなければ、変数qPCb及びqPCrは、それぞれqPiCb及びqPiCrに等しいインデックスqPiに基づいて、Min (qPi, 63)に等しく設定されている。
-Cb成分及びCr成分についての彩度量子化パラメータQp’Cb及びQp’Crは、以下のように導出される。
Qp’Cb = qP’Cb+ QpBdOffsetC
Qp’Cr = qP’Cr+ QpBdOffsetC
本明細書の技法にしたがって量子化パラメータを導出することは、行の開始時のQPが、前の行の終了時のQPに依存しないことを提供し、これは、並列処理エンコーダの設計を簡略化し、また、QPパラメータを符号化する効率性を改善する利点を有することに留意されたい。
再び図11を参照すると、量子化された変換係数は、逆量子化/変換処理部208に出力される。逆量子化/変換処理部208は、逆量子化及び逆変換を適用し、復元された残差データを生成するように構成することができる。図11に示すように、加算器210において、復元された残差データを、予測ビデオブロックに加算することができる。このようにして、符号化ビデオブロックを復元することができ、結果として得られる復元されたビデオブロックを使用して、所与の予測、変換、及び/又は量子化についての符号化品質を評価することができる。ビデオエンコーダ200は、複数の符号化パスを実行する(例えば、予測、変換パラメータ及び量子化パラメータの1つ以上を変更しながら符号化を実行する)ように構成することができる。ビットストリームのレートディストーション又は他のシステムパラメータは、復元されたビデオブロックの評価に基づいて最適化することができる。更に、復元されたビデオブロックは、その後のブロックを予測するための参照として記憶して使用することができる。
上記したように、ビデオブロックは、イントラ予測を用いて符号化することができる。イントラ予測処理部212は、符号化することになるビデオブロックに対してイントラ予測モードを選択するように構成することができる。イントラ予測処理部212は、フレーム及び/又はその部分を評価し、現在のブロックを符号化するために使用するイントラ予測モードを判定するように構成することができる。図11に示すように、イントラ予測処理部212は、イントラ予測データ(例えば、シンタックス要素)をエントロピ符号化部218及び変換係数発生装置204に出力する。上記したように、残差データに対して実行される変換はモード依存であってもよい。上記したように、可能なイントラ予測モードは、平面予測モード、DC予測モード、及び角度予測モードを含んでもよい。更に、いくつかの例では、彩度成分についての予測は、輝度予測モードについてのイントラ予測から推測することができる。インター予測処理部214は、現在のビデオブロックに対するインター予測符号化を実行するように構成することができる。インター予測処理部214は、ソースビデオブロックを受信し、ビデオブロックのPUに対する動きベクトルを計算するように構成することができる。動きベクトルは、参照フレーム内の予測ブロックに対する現在のビデオフレーム内のビデオブロックのPU(又は類似の符号化構造)の変位を示すことができる。インター予測符号化は、1つ以上の参照ピクチャを使用することができる。更に、動き予測は、単一予測(1つの動きベクトルを用いる)又は双予測(2つの動きベクトルを用いる)とすることができる。インター予測処理部214は、例えば、絶対差の合計(sum of absolute difference)(SAD)、平方差の合計(sum of square difference)(SSD)、又は他の差の測定法によって判定された画素差を計算することにより、予測ブロックを選択するように構成することができる。上記したように、動きベクトルは、動きベクトル予測に従って判定及び特定することができる。インター予測処理部214は、上記したように、動きベクトル予測を実行するように構成することができる。インター予測処理部214は、動き予測データを用いて予測ブロックを生成するように構成することができる。例えば、インター予測処理部214は、フレームバッファ(図11に示されていない)内に予測ビデオブロックを配置することができる。インター予測処理部214は、復元された残差ブロックに1つ以上の補間フィルタを適用して、動き予測に使用するための整数未満の画素値を算出するように更に構成することができることに留意されたい。インター予測処理部214は、計算された動きベクトルに対する動き予測データをエントロピ符号化部218に出力することができる。図11に示すように、インター予測処理部214は、フィルタ部216を介して復元されたビデオブロックを受信することができる。フィルタ部216は、デブロッキング及び/又はサンプル適応オフセット(Sample Adaptive Offset)(SA0)フィルタリングを実行するように構成することができる。デブロッキングとは、復元されたビデオブロックの境界を平滑化する(例えば、観察者にとって境界を知覚しにくくする)プロセスを指す。SA0フィルタリングは、復元されたビデオデータにオフセットを加えることにより復元を向上するために使用することができる、非線形振幅マッピングである。
図11を再び参照すると、エントロピ符号化部218は、量子化された変換係数及び予測シンタックスデータ(すなわち、イントラ予測データ、動き予測データ、QPデータなど)を受信する。いくつかの例では、係数量子化部206は、係数がエントロピ符号化部218に出力される前に、量子化された変換係数を含む行列の走査を実行することができることに留意されたい。他の例では、エントロピ符号化部218は、走査を実行することができる。エントロピ符号化部218は、本明細書で説明する技術の1つ以上に従ってエントロピ符号化を実行するように構成することができる。エントロピ符号化部218は、適合したビットストリーム、すなわち、ビデオデコーダがそれからビデオデータを受信し再生することができるビットストリームを出力するように構成することができる。
このようにして、ビデオエンコーダ200は、参照ビデオブロックに関連付けられた量子化パラメータ、参照ビデオブロックを生成するために使用される区画、及び現在のビデオブロックを生成するために使用される区画、に少なくとも部分的に基づいて、現在のビデオブロックについての予測量子化パラメータを決定し、決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成するように構成されたデバイスの例を表す。
図18は、本開示の1つ以上の技法による、ビデオデータを復号するように構成することができるビデオデコーダの例を示すブロック図である。一例では、ビデオデコーダ300は、上記した技法の1つ以上に基づいて、ビデオデータを復元するように構成することができる。すなわち、ビデオデコーダ300は、上記したビデオエンコーダ200と相反する方法で動作することができる。ビデオデコーダ300は、イントラ予測復号及びインター予測復号を実行するように構成される場合があり、そのために、ハイブリッドデコーダと称される場合がある。図18に示す例では、ビデオデコーダ300は、エントロピ復号部302と、逆量子化部304と、逆変換処理部306と、イントラ予測処理部308と、インター予測処理部310と、加算器312と、フィルタ部314と、参照バッファ316と、を含む。ビデオデコーダ300は、ビデオ符号化規格の1つ以上の態様を実装することができるビデオ符号化システムと一致する方法で、ビデオデータを復号するように構成することができる。例のビデオデコーダ300が別個の機能ブロックを有するように示されているが、そのような例示は説明のためのものであり、ビデオデコーダ300及び/又はその下位構成要素を特定のハードウェア又はソフトウェアアーキテクチャに限定するものではないことに留意されたい。ビデオデコーダ300の機能は、ハードウェア、ファームウェア、及び/又はソフトウェアの実装形態の任意の組み合わせを用いて実現することができる。
図18に示すように、エントロピ復号部302は、エントロピ符号化されたビットストリームを受信する。エントロピ復号部302は、エントロピ符号化プロセスに相反のプロセスに従って、ビットストリームから量子化されたシンタックス要素及び量子化された係数を復号するように構成することができる。エントロピ復号部302は、上記したエントロピ符号化技法のいずれかに従ってエントロピ復号を実行するように構成することができる。エントロピ復号部302は、ビデオ符号化規格と一致する方法で、符号化されたビットストリームをパースすることができる。ビデオデコーダ300は、符号化されたビットストリームをパースするように構成することができ、符号化されたビットストリームは、上記の技法に基づいて生成される。すなわち、例えば、ビデオデコーダ300は、ビデオデータを復元する目的で、上記の技法のうち1つ以上に基づいて生成及び/又はシグナリングされた区画構造を決定するように構成することができる。例えば、ビデオデコーダ300は、区画を決定するために、シンタックス要素をパース(parse)し、かつ/又はビデオデータの特性を評価するように構成することができる。
図18を再び参照すると、逆量子化部304は、エントロピ復号部302から量子化された変換係数(すなわち、レベル値)及び量子化パラメータデータを受信する。量子化パラメータデータは、上記したデルタQP値及び/又は量子化グループサイズ値などの任意の組み合わせ並びに全ての組み合わせを含むことができる。ビデオデコーダ300及び/又は逆量子化部304は、ビデオエンコーダによって、並びに/又はビデオ特性及び/若しくは符号化パラメータを介して、シグナリングされた値に基づいて、逆量子化のために使用されるQP値を決定するように構成することができる。すなわち、逆量子化部304は、上記した係数量子化部206と相反する方法で動作することができる。例えば、逆量子化部304は、上記の技法に従って、所定の値、許容量子化グループサイズなどを推測するように構成することができる。逆量子化部304は、逆量子化を適用するように構成することができる。逆変換処理部306は、逆変換を実行して、復元された残差データを生成するように構成することができる。逆量子化部304及び逆変換処理部306によってそれぞれ実行される技術は、上記した逆量子化/変換処理部208によって実行される技術と同様なものとすることができる。逆変換処理部306は、画素領域で残差ブロックを生成するために、逆DCT、逆DST、逆整数変換、非分離二次変換(Non-Separable Secondary Transform)(NSST)、又は概念的に類似の逆変換プロセスを変換係数に適用するように構成することができる。更に、上記したように、特定の変換(又は特定の変換の種類)が実行されるか否かは、イントラ予測モードに依存し得る。図18に示すように、復元された残差データを加算器312に提供することができる。加算器312は、復元された残差データを予測ビデオブロックに加えて、復元されたビデオデータを生成することができる。予測ビデオブロックは、予測ビデオ技術(すなわち、イントラ予測及びフレーム間予測)に従って判定することができる。一例では、ビデオデコーダ300及びフィルタ部314は、QP値を決定し、ポストフィルタリング(例えば、デブロッキング)のためにそれらを使用するように構成することができる。一実施例では、QPを使用するビデオデコーダ300の他の機能ブロックは、受信したシグナリングに基づいてQPを決定し、復号のためにそれを使用することができる。
イントラ予測処理部308は、イントラ予測シンタックス要素を受信し、参照バッファ316から予測ビデオブロックを取得するように構成することができる。参照バッファ316は、ビデオデータの1つ以上のフレームを記憶するように構成されたメモリデバイスを含むことができる。イントラ予測シンタックス要素は、上記したイントラ予測モードなどのイントラ予測モードを識別することができる。一実施例では、イントラ予測処理部308は、本明細書で説明するイントラ予測符号化技法の1つ以上に従って用いて、ビデオブロックを復元することができる。インター予測処理部310は、インター予測シンタックス要素を受信し、動きベクトルを生成して、参照バッファ316に記憶された1つ以上の参照フレーム内の予測ブロックを識別することができる。インター予測処理部310は、場合によっては補間フィルタに基づく補間を実行して、動き補償されたブロックを生成することができる。シンタックス要素には、画素未満の精度を有する動き予測に使用されることになる補間フィルタの識別子を含めることができる。インター予測処理部310は、補間フィルタを使用して、参照ブロックのサブ整数の画素に対する補間された値を算出することができる。フィルタ部314は、復元されたビデオデータに対してフィルタリングを実行するように構成することができる。例えば、フィルタ部314は、フィルタ部216に関して上記したように、デブロッキング及び/又はSAOフィルタリングを実行するように構成することができる。更に、いくつかの例では、フィルタ部314は、独自の任意のフィルタ(例えば、視覚強調)を実行するように構成することができることに留意されたい。図18に示すように、復元されたビデオブロックは、ビデオデコーダ300によって出力することができる。このようにして、ビデオデコーダ300は、本明細書で説明する技法の1つ以上に従って復元されたビデオデータを生成するように構成することができる。このようにして、ビデオデコーダ300は、参照ビデオブロックに関連付けられた量子化パラメータ、参照ビデオブロックを生成するために使用される区画、及び現在のビデオブロックを生成するために使用される区画、に少なくとも部分的に基づいて、現在のビデオブロックについての予測量子化パラメータを決定し、決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成するように構成されたデバイスの例を表す。
1つ以上の例では、記載された機能は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの任意の組み合わせで実装することができる。ソフトウェアで実装される場合に、この機能は、コンピュータ可読媒体上の1つ以上の命令又はコードとして記憶するか又は伝送され、ハードウェアベースの処理部によって実行することができる。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、データ記憶媒体又は通信媒体などの有形の媒体に対応する、コンピュータ可読記憶媒体を含むことができる。このようにして、コンピュータ可読媒体は、一般に、(1)非一時的な有形のコンピュータ可読記憶媒体、又は(2)信号又は搬送波などの通信媒体に対応することができる。データ記憶媒体は、本開示中に記載された技術の実現のための命令、コード、及び/又はデータ構造を取り出すために、1つ以上のコンピュータ又は1つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含むことができる。
一例として、非限定的に、このようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM、又は他の光学ディスク記憶装置、磁気ディスク記憶装置、他の磁気記憶装置、フラッシュメモリ、又は任意の他の媒体、すなわち命令若しくはデータ構造の形式で所望のプログラムコードを記憶するために使用可能であり、かつコンピュータによりアクセス可能な任意の他の媒体を含むことができる。また、任意の接続は、コンピュータ可読媒体と適切に呼ばれる。例えば、命令がウェブサイト、サーバ、又は他のリモートソースから、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者線(digital subscriber line、DSL)、あるいは赤外線、無線及びマイクロ波などの無線技術を使用して伝送される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、あるいは赤外線、無線及びマイクロ波などの無線技術は、媒体の定義に含まれる。しかし、コンピュータ可読媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一過性媒体を含まないが、代わりに非一時的な有形記憶媒体を対象としていることを理解されたい。本発明で使用する場合、ディスク(disk)及びディスク(disc)は、コンパクトディスク(Compact Disc、CD)、レーザーディスク(laser disc)、光学ディスク(optical disc)、デジタル多用途ディスク(Digital Versatile Disc、DVD)、フロッピーディスク(floppy disk)及びブルーレイ(登録商標)ディスク(Blu-ray(登録商標)disc)を含み、ディスク(disk)は通常データを磁気的に再生し、ディスク(disc)はレーザを用いてデータを光学的に再生する。上記の組み合わせもまた、コンピュータ可読媒体の範囲内に含まれなければならない。
命令は、1つ以上のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジック配列(FPGA)、又は他の同等の集積又はディスクリートロジック回路などの1つ以上のプロセッサによって実行することができる。したがって、本明細書で使用されるとき、用語「プロセッサ」は、の構造、又は本明細書で説明する技術の実装に好適な任意の他の構造のいずれかを指すことができる。加えて、いくつかの態様において、本明細書に記載の機能は、符号化及び復号化するように構成された、又は複合コーデックに組み込まれた専用のハードウェアモジュール及び/又はソフトウェアモジュール内に設けられ得る。また、この技術は、1つ以上の回路又は論理素子中に完全に実装することができる。
本開示の技術は、無線ハンドセット、集積回路(integrated circuit、IC)、又はICのセット(例えば、チップセット)を含む多種多様なデバイス又は装置に実装することができる。様々なコンポーネント、モジュール、又はユニットを本開示中に示し、開示された技術を実行するように構成されたデバイスの機能的な態様を強調しているが、異なるハードウェアユニットによって実現することは必ずしも必要ではない。むしろ、前述したように、様々なユニットは、コーデックハードウェアユニットに組み合わせてもよく、又は好適なソフトウェア及び/又はファームウェアと共に、前述の1つ以上のプロセッサを含む、相互動作ハードウェアユニットの集合によって提供することができる。
更に、上記の各実装形態で用いた基地局装置や端末装置の各機能ブロックや各種の機能は、一般的には集積回路又は複数の集積回路によって実現又は実行することができる。本明細書に記載の機能を実行するように設計された回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け又は汎用アプリケーション集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)若しくは他のプログラマブルロジックデバイス、ディスクリートゲート若しくはトランジスタロジック、若しくは個々のハードウェアコンポーネント、又はそれらの組み合わせを備えていてもよい。汎用プロセッサは、マイクロプロセッサでもよく、あるいは、プロセッサは、従来のプロセッサ、コントローラ、マイクロコントローラ、又はステートマシンでもよい。上記した汎用プロセッサ又は各回路は、デジタル回路で構成されても、又はアナログ回路で構成されてもよい。更に、半導体技術の進歩により現時点での集積回路に置き換わる集積回路化技術が現れれば、この技術による集積回路もまた使用可能となる。
様々な実施例について説明した。これら及び他の実施例は、以下の特許請求の範囲内である。
<概要>
一実施例では、ビデオデータを符号化する方法は、参照ビデオブロックに関連付けられた量子化パラメータ、参照ビデオブロックを生成するために使用される区画、及び現在のビデオブロックを生成するために使用される区画、に少なくとも部分的に基づいて、現在のビデオブロックに関する予測量子化パラメータを決定することと、決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成することと、を含む。
一実施例では、ビデオデータを符号化する方法は、レート成分予測量子化パラメータ及び視覚成分予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての予測量子化パラメータを決定することと、決定された予測量子化パラメータに少なくとも部分的に基づいて、現在のビデオブロックについての量子化パラメータを生成することと、を含む。
一実施例では、生成された量子化パラメータを使用して、現在のビデオブロックに関連付けられた値に対して量子化演算を実行することを更に含む方法である。
一実施例では、予測量子化パラメータに関連付けられたシグナリング情報を更に含む方法である。
一実施例では、生成された量子化パラメータを使用して、現在のビデオブロックに関連付けられた値に対して逆量子化演算を実行することを更に含む方法である。
一実施例では、参照ビデオブロックは、最後に符号化されたビデオブロック又は隣接ビデオブロックのうちの1つを含む方法である。
一実施例では、区画化は、別個の区画構造に従って輝度チャネル及び彩度チャネルを更に区画するか、それとも共有区画構造に従って輝度チャネル及び彩度チャネルを更に区画することのうちの1つを含む方法である。
一実施例では、ステップのいずれか及び全ての組み合わせを実行するように構成された1つ以上のプロセッサを備える、ビデオデータを符号化するデバイスである。
一実施例では、デバイスはビデオエンコーダを含む。
一実施例では、デバイスはビデオデコーダを含む。
一実施例では、システムは、デバイスと、デバイスと、を備える。
一実施例では、ステップのいずれか及び全ての組み合わせを実行する手段を備える、ビデオデータを符号化する装置である。
一実施例では、そこに記憶された命令を含む非一時的コンピュータ可読記憶媒体であって、命令は、実行されると、ビデオデータを符号化するデバイスの1つ以上のプロセッサに、ステップのいずれか及び全ての組み合わせを実行させる、非一時的コンピュータ可読記憶媒体である。
一実施例では、ビデオデータを符号化する方法であって、方法は、符号化ツリーを区画するためにシングルツリーを使用するか、それともデュアルツリーを使用するかを指定するツリータイプを使用することによって、予測輝度量子化パラメータを導出することと、予測輝度量子化パラメータを使用することによって輝度量子化パラメータを生成することと、を含み、予測輝度量子化パラメータは、現在の量子化グループ及び隣接ブロックの可用性を使用することによって、隣接位置をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータに等しく設定されている。
一実施例では、現在の量子化グループがタイル内の符号化ツリーブロック行内の最初の量子化グループである場合には、予測輝度量子化パラメータは、輝度量子化パラメータに等しく設定されている。
一実施例では、隣接ブロックの可用性は、符号化ブロック位置に等しく設定された現在の位置と、隣接位置と、を使用することによって導出される方法である。
一実施例では、現在の量子化グループは、同じ予測輝度量子化パラメータを共有する符号化ツリーブロック内の矩形領域である方法である。
一実施例では、予測輝度量子化パラメータは、ツリータイプがシングルツリー又はデュアルツリー輝度に等しいときに導出され、デュアルツリーが使用されるときに、デュアルツリー輝度が処理される方法である。
一実施例では、隣接位置は、(xQg、yQg-1)として表され、xQgは、現在のピクチャの左上の輝度サンプルに対して、現在の量子化グループの左上のサンプルを指定する水平位置であり、yQgは、現在のピクチャの左上の輝度サンプルに対して現在の量子化グループの左上のサンプルを指定する垂直位置である方法である。
一実施例では、画像データを復号する方法は、符号化ツリーを区画するためにシングルツリーを使用するか、それともデュアルツリーを使用するかを指定するツリータイプを使用することによって、予測輝度量子化パラメータを導出することと、予測輝度量子化パラメータを使用することによって、輝度量子化パラメータを生成することと、を含み、予測輝度量子化パラメータは、現在の量子化グループ及び隣接ブロックの可用性を使用することによって、隣接位置をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータに等しく設定されている、方法である。
一実施例では、工程のいずれか及び全ての組み合わせを実行するように構成された1つ以上のプロセッサを備える、デバイスである。
<相互参照>
この非仮出願は、35U.S.C.119の下で、2019年1月16日の仮出願第62/793,305号及び2019年1月17日の第62/793,515号の優先権を主張するものであり、その内容の全体は、参照により本明細書に組み込まれる。

Claims (7)

  1. ビデオデータを符号化する方法であって、
    符号化ツリーを区画するためにシングルツリーを使用するか、それともデュアルツリーを使用するかを指定するツリータイプを使用することによって、予測輝度量子化パラメータを導出することと、
    前記予測輝度量子化パラメータを使用することによって、輝度量子化パラメータを生成することと、を含み、
    前記予測輝度量子化パラメータは、現在の量子化グループ及び隣接ブロックの可用性を使用することによって、隣接位置をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータに等しく設定されており、
    前記現在の量子化グループがタイル内の符号化ツリーブロック行内の最初の量子化グループである場合には、前記予測輝度量子化パラメータは前記輝度量子化パラメータに等しく設定されている、方法。
  2. 前記隣接ブロックの可用性は、符号化ブロック位置に等しく設定された現在位置と、前記隣接位置を使用することによって導出される、請求項1に記載の方法。
  3. 前記現在の量子化グループは、同じ予測輝度量子化パラメータを共有する符号化ツリーブロック内の矩形領域である、請求項1に記載の方法。
  4. 前記予測輝度量子化パラメータは、前記ツリータイプが前記シングルツリー又はデュアルツリー輝度に等しいときに導出され、前記デュアルツリーが使用されるときに前記デュアルツリー輝度が処理される、請求項1に記載の方法。
  5. 前記隣接位置は、(xQg、yQg-1)として表され、xQgは、現在のピクチャの左上の輝度サンプルに対する前記現在の量子化グループの左上のサンプルを指定する水平位置であり、yQgは、現在のピクチャの左上の輝度サンプルに対する現在の量子化グループの左上のサンプルを指定する垂直位置である、請求項1に記載の方法。
  6. 画像データを復号する方法であって、
    符号化ツリーを区画するためにシングルツリーを使用するか、それともデュアルツリーを使用するかを指定するツリータイプを使用することによって、予測輝度量子化パラメータを導出することと、
    前記予測輝度量子化パラメータを使用することによって、輝度量子化パラメータを生成することと、を含み、
    前記予測輝度量子化パラメータは、現在の量子化グループ及び隣接ブロックの可用性を使用することによって、隣接位置をカバーする輝度符号化ブロックを含む符号化ユニットの輝度量子化パラメータに等しく設定されており、
    前記現在の量子化グループがタイル内の符号化ツリーブロック行内の最初の量子化グループである場合には、前記予測輝度量子化パラメータは前記輝度量子化パラメータに等しく設定されている、方法。
  7. 請求項1に記載のステップの全てを実行するように構成された1つ以上のプロセッサを備える、デバイス。
JP2021541468A 2019-01-16 2020-01-15 ビデオ符号化におけるビデオブロックのための量子化パラメータを導出するシステム及び方法 Active JP7448549B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962793305P 2019-01-16 2019-01-16
US62/793,305 2019-01-16
US201962793515P 2019-01-17 2019-01-17
US62/793,515 2019-01-17
PCT/JP2020/001060 WO2020149298A1 (en) 2019-01-16 2020-01-15 Systems and methods for deriving quantization parameters for video blocks in video coding

Publications (2)

Publication Number Publication Date
JP2022518716A JP2022518716A (ja) 2022-03-16
JP7448549B2 true JP7448549B2 (ja) 2024-03-12

Family

ID=71613639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541468A Active JP7448549B2 (ja) 2019-01-16 2020-01-15 ビデオ符号化におけるビデオブロックのための量子化パラメータを導出するシステム及び方法

Country Status (6)

Country Link
US (1) US11889074B2 (ja)
EP (1) EP3912345A4 (ja)
JP (1) JP7448549B2 (ja)
KR (1) KR20210113373A (ja)
CN (1) CN113366840A (ja)
WO (1) WO2020149298A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11432018B2 (en) * 2020-05-11 2022-08-30 Tencent America LLC Semi-decoupled partitioning for video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015187978A1 (en) 2014-06-04 2015-12-10 Qualcomm Incorporated Block adaptive color-space conversion coding

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130058524A (ko) * 2011-11-25 2013-06-04 오수미 색차 인트라 예측 블록 생성 방법
EP2843949B1 (en) * 2013-06-28 2020-04-29 Velos Media International Limited Methods and devices for emulating low-fidelity coding in a high-fidelity coder
WO2016074147A1 (en) * 2014-11-11 2016-05-19 Mediatek Singapore Pte. Ltd. Separated coding tree for luma and chroma
WO2018018486A1 (en) * 2016-07-28 2018-02-01 Mediatek Inc. Methods of reference quantization parameter derivation for signaling of quantization parameter in quad-tree plus binary tree structure
US11438590B2 (en) * 2018-08-16 2022-09-06 Hfi Innovation Inc. Methods and apparatuses of chroma quantization parameter derivation in video processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015187978A1 (en) 2014-06-04 2015-12-10 Qualcomm Incorporated Block adaptive color-space conversion coding

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BROSS, Benjamin et al.,Versatile Video Coding (Draft 3),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macao, CN, 3-12 Oct. 2018, [JVET-L1001-v9],JVET-L1001 (version 13),ITU-T,2019年01月08日,<URL:https://jvet-experts.org/doc_end_user/documents/12_Macao/wg11/JVET-L1001-v13.zip>: JVET-L1001-v9.docx: pp.172-174
MISRA, K. and SEGALL, A.,Non-CE7: On derivation of quantization parameter predictor,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, 9-18 Jan. 2019, [JVET-M0685],JVET-M0685 (version 3),ITU-T,2019年01月17日,<URL:https://jvet-experts.org/doc_end_user/documents/13_Marrakech/wg11/JVET-M0685-v3.zip>: JVET-M0685.docx: pp.1-3, JVET-M0685_text.docx: pp.1-3
MISRA, K. and SEGALL. A.,Non-CE7: On derivation of quantization parameter predictor,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, 9-18 Jan. 2019, [JVET-M0685],JVET-M0685 (version 2),ITU-T,2019年01月13日,<URL:https://jvet-experts.org/doc_end_user/documents/13_Marrakech/wg11/JVET-M0685-v2.zip>: JVET-M0685.docx: pp.1-6

Also Published As

Publication number Publication date
EP3912345A1 (en) 2021-11-24
EP3912345A4 (en) 2022-11-09
CN113366840A (zh) 2021-09-07
US11889074B2 (en) 2024-01-30
US20220094923A1 (en) 2022-03-24
WO2020149298A1 (en) 2020-07-23
JP2022518716A (ja) 2022-03-16
KR20210113373A (ko) 2021-09-15

Similar Documents

Publication Publication Date Title
AU2017397390B2 (en) Systems and methods for scaling transform coefficient level values
US11470359B2 (en) Systems and methods for partitioning video blocks at a boundary of a picture for video coding
WO2019151257A1 (en) Systems and methods for deriving quantization parameters for video blocks in video coding
US11805254B2 (en) Systems and methods for deriving quantization parameters for video blocks in video coding
US11778182B2 (en) Device for decoding video data, device for encoding video data, and method for decoding video data
WO2020184637A1 (en) Systems and methods for performing intra prediction coding in video coding
WO2020129950A1 (en) Systems and methods for performing inter prediction in video coding
WO2020141598A1 (en) Systems and methods for performing intra prediction coding
WO2020090841A1 (en) Systems and methods for reference offset signaling in video coding
US11438626B2 (en) Image decoding apparatus and image coding apparatus
WO2020262470A1 (en) Systems and methods for performing intra prediction coding in video coding
WO2018066242A1 (en) Systems and methods for adaptively clipping sample values
JP7448549B2 (ja) ビデオ符号化におけるビデオブロックのための量子化パラメータを導出するシステム及び方法
WO2020262176A1 (en) Systems and methods for deriving quantization parameters for video blocks in video coding
US11330260B2 (en) Systems and methods for adaptively partitioning video blocks for video coding
WO2020166556A1 (en) Systems and methods for performing inter prediction in video coding

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231114

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240229

R150 Certificate of patent or registration of utility model

Ref document number: 7448549

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150