JP2023085351A - Cbfフラグの効率的なシグナリング方法 - Google Patents

Cbfフラグの効率的なシグナリング方法 Download PDF

Info

Publication number
JP2023085351A
JP2023085351A JP2023042641A JP2023042641A JP2023085351A JP 2023085351 A JP2023085351 A JP 2023085351A JP 2023042641 A JP2023042641 A JP 2023042641A JP 2023042641 A JP2023042641 A JP 2023042641A JP 2023085351 A JP2023085351 A JP 2023085351A
Authority
JP
Japan
Prior art keywords
transform
flag
unit
value
cbf
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.)
Pending
Application number
JP2023042641A
Other languages
English (en)
Inventor
イゴレヴィッチ チェーンヤク、ロマン
Igorevich Chernyak Roman
ツァオ、イン
Yin Zhao
ユリエビッチ イコニン、セルゲイ
Yurievich Ikonin Sergey
チェン、ジアンレ
Jianle Chen
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2023085351A publication Critical patent/JP2023085351A/ja
Pending legal-status Critical Current

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/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/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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

【課題】変換フラグシグナリングに関するデコーディングおよびエンコーディングのための装置および方法を提供する。【解決手段】コーディング方法は、ビットストリームを取得する段階を備え、ビットストリームは、変換ユニット構文を含み、変換ユニット構文は、クロマブロックのための少なくとも2つのCBFフラグを含み、クロマCBFフラグは、特定のブロックが対応する色平面に残差を持つかどうかを指定する、cu_cbfフラグの値、現在の変換ユニットまたはサブ変換ユニットに対応する2つのクロマCBFフラグの値、変換ユニット内のサブ変換ユニットの位置、現在の変換ユニット内の前のサブ変換ユニットに対応するルマCBFフラグおよびクロマCBFフラグの値のいずれかまたは任意の組み合わせに基づいて、ルマCBFフラグtu_cbf_lumaの値を導出する。【選択図】図7

Description

[関連出願の相互参照]
本特許出願は、2019年3月1日に出願された米国仮特許出願第US62/812,282号、ならびに2019年3月12日に出願された米国仮特許出願第US62/817,498号、ならびに2019年3月27日に出願された米国仮特許出願第US62/825,005号、ならびに2019年5月31日に出願された国際特許出願PCT/EP2019/064224号の優先権を主張するものである。
本出願(開示)の実施形態は、一般的には画像処理の分野に関し、より具体的には変換フラグシグナリングに関するものである。変換ツリーや変換ユニットの構文要素で提示され、互いの構文要素および他の利用可能な構文要素に応じてシグナリングすることができるCBFフラグが開示された。
ビデオコーディング(ビデオエンコーディングおよびデコーディング)は、例えば、放送デジタルTV、インターネットおよびモバイルネットワークを介したビデオ送信、またはビデオチャット、ビデオ会議、DVDおよびブルーレイディスク、ビデオコンテンツの取得および編集システム、セキュリティアプリケーションのカムコーダー等のリアルタイムの会話型アプリケーションといった、広範なデジタルビデオアプリケーションで使用される。
比較的短いビデオを描画するのであっても、必要とされるビデオデータの量は、かなりのものであり得、その結果、限定的な帯域幅容量を有する通信ネットワークを介してデータがストリームされるかまたは別の形で通信されることになる場合に困難が生じる場合がある。従って、ビデオデータは一般に、現代の遠隔通信ネットワークを介して通信される前に圧縮される。ビデオのサイズは、メモリリソースが限定的である場合があるので、ビデオがストレージデバイス上に保存される場合にも問題となり得る。ビデオ圧縮デバイスは、しばしば、ソースにおけるソフトウェアおよび/またはハードウェアを用いて、送信または保存の前にビデオデータをコードし、それによりデジタルビデオイメージを表現するのに必要なデータの量を低減させる。その後、圧縮データは、デスティネーションにおいて、ビデオデータをデコードするビデオ解凍デバイスによって受信される。限定的なネットワークリソースおよび増大し続ける高ビデオ品質の需要に鑑みて、画像品質をほとんどから全く犠牲にせずに圧縮比を改善する、改善された圧縮および解凍技術が望まれている。
本開示の実施形態は、独立請求項によるエンコーディングおよびデコーディングのための装置および方法を提供する。
前述の目的および他の目的が、独立請求項の主題によって達成される。従属請求項、明細書および図から、さらなる実装形式が明らかになる。
本発明の第1の態様による方法は、本発明の第3の態様による装置によって実行することができる。本発明の第3の態様による方法のさらなる特徴および実施形態は、本発明の第1の態様による装置の特徴および実施形態に対応する。
本発明の第4の態様による方法は、本発明の第2の態様による装置によって実行することができる。本発明の第4の態様による方法のさらなる特徴および実施形態は、本発明の第2の態様による装置の特徴および実施形態に対応する。
第5の態様によると、本発明は、プロセッサとメモリを含む、ビデオストリームをデコードするための装置に関する。メモリは、第1の態様による方法をプロセッサに実行させる命令を格納している。
第6の態様によると、本発明は、プロセッサとメモリを含む、ビデオストリームをエンコードするための装置に関する。メモリは、第2の態様による方法をプロセッサに実行させる命令を格納している。
第7の態様によると、実行されるとビデオデータをコード化するように構成された1つまたは複数のプロセッサを引き起こす命令をその上に記憶したコンピュータ読み取り可能な記憶媒体が提案される。命令は、1つまたは複数のプロセッサに、第1の態様または第2の態様、または第1の態様または第2の態様の任意の可能な実施形態による方法を実行させる。
第8の態様によると、本発明は、コンピュータ上で実行されたときに、第1の態様または第2の態様、または第1の態様または第2の態様の任意の可能な実施形態による方法を実行するためのプログラムコードを含むコンピュータプログラムに関する。
より詳細的に、本開示は、デコーディング装置またはエンコーディング装置により実施されるビデオコーディング方法を提供し、当該方法は、
ビットストリームを取得する段階を備え、
前記ビットストリームは、変換ユニット構文を備える、
前記変換ユニット構文に従って、現在の変換ユニットまたは前記現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得する段階を備え、少なくとも前記2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する、
少なくとも、コーディングユニットCBFフラグの値、cu_cbfフラグの値、および少なくとも前記2つのクロマCBFフラグの値に基づいて、ルマCBFフラグの値を導出する段階
を備える、方法。
従って、本開示の実施形態では、コーディング効率を向上させ、CBFフラグシグナリングの統一的なメカニズムを提案する。従って、CBFフラグのシグナリングの統一的なメカニズムが提案されている。
さらに、CBFフラグとサブ変換ユニット区分化ツールの関係から、ビットストリームの冗長性を除去することができる。
上述した方法において、ルマCBFフラグの値は、現在の変換ユニット内の現在のサブ変換ユニットの位置に基づいてさらに導出されてよい。
上述した方法において、変換ユニット構文は、少なくとも2つのクロマCBFフラグを備えてよく、変換ユニット構文に従って、少なくとも2つのクロマCBFフラグの値を取得する段階は、変換ユニット構文から少なくとも2つのクロマCBFフラグの値を取得する段階を備えてよい。
上記で定義した方法において、ルマCBFフラグはtu_cbf_lumaフラグであってよい。
上記で定義した方法において、変換ユニット構文において、変換ユニットの構文要素は、
ブロック全体にシグナリングされてよく、または
インターブロックのサブブロック変換(SBT)で取得された複数のサブ変換ユニットにシグナリングされてよく、または
最大変換ユニットサイズの制限を満たすようにシグナリングされてよい。
上記で定義した方法において、現在の変換ユニットまたは現在のサブ変換ユニットは、2つのクロマCBFフラグを含み、各クロマ平面に対してそれぞれ1つのフラグを持ってよい。
上記で定義した方法において、ルマCBFフラグの値は、cu_cbfフラグの値と、現在の変換ユニットに対応する2つのクロマCBFフラグの値とに基づいて導出されてよい。
上記で定義した方法において、現在の変換ユニットがサブ変換ユニットに分割されていない場合、ビットストリームでcu_cbfフラグがシグナリングされてよく、cu_cbfフラグの値が1に等しくてよく、tu_cbf_cbフラグの値が0であってよく、tu_cbf_crフラグの値が0であってよく、次に現在の変換ユニットの前記tu_cbf_lumaフラグの値が1に導出されてよい。
上記で定義した方法において、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000002
上述した方法において、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000003
上述した方法において、現在の変換ユニットがサブブロック変換(SBT)によって分割されている場合、非ゼロのCBFフラグを許容する前記サブ変換ユニットの前記tu_cbf_lumaフラグの値は、以下の条件に従って導出されてよい:
前記cu_cbfフラグの値が1であり、前記tu_cbf_cbフラグの値が0であり、前記tu_cbf_crフラグの値が0であり、次に前記現在のサブ変換ユニットの前記tu_cbf_lumaフラグの値は1であると導出される。
上述した方法において、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000004
上述した方法において、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000005
上述した方法において、変換ユニット構文に対応する変換ツリー構文表が以下の表に従ってシグナリングされてよい:
Figure 2023085351000006
ここで、変換ツリー構文表に対応するコーディングユニット構文表は、以下の表に従ってシグナリングされてよい:
Figure 2023085351000007
上述した方法において、treeTypeは、SINGLE_TREEに等しくてよい。
上述した方法において、ルマCBFフラグがtu_cbf_lumaフラグであってよく、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、以下の条件に従って導出されてよい。
Figure 2023085351000008
上述した方法において、ルマCBFフラグがtu_cbf_lumaフラグであってよく、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、以下の条件に従って導出されてよい。
Figure 2023085351000009
上述した方法において、1に等しいtu_cbf_luma[x0][y0]は、ルマ変換ブロックが0に等しくない1つまたは複数の変換係数レベルを含むことを指定してよく、配列インデックスx0、y0は、画像の左上のルマサンプルに対する、考慮された変換ブロックの左上のルマサンプルの位置(x0,y0)を指定してよい、変換係数レベルは、変換係数値の計算のためにスケーリングする前の前記デコーディング処理において、特定の2次元周波数インデックスに関連する値を表す整数量であってよい。
本開示は、上述した方法を実行するための処理回路を含むエンコーダをさらに提供する。
本開示は、上述した方法を実行するための処理回路を含むデコーダをさらに提供する。
本開示は、上述した方法を実行するためのプログラムコードを含むコンピュータプログラム製品をさらに提供する。
本開示はさらに、デコーダまたはエンコーダを提供する。当該デコーダまたはエンコーダは、1つまたは複数のプロセッサと、プロセッサに結合され、プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、プログラミングは、プロセッサによって実行されると、上述した方法を実行するようにデコーダを構成する、非一時的コンピュータ可読記憶媒体とを備える。
本開示はさらにエンコーダを提供する。当該エンコーダは、ビットストリームを取得する取得ユニットを備え、ビットストリームは、変換ユニット構文を含んでいる、取得ユニットは、前記変換ユニット構文に従って、現在の変換ユニットまたは現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得するように構成され、少なくとも2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する、少なくともコーディングユニットCBFフラグの値、cu_cbfフラグの値、および少なくとも2つのクロマCBFフラグの値に基づいて、ルマCBFフラグの値を導出する導出ユニットを備える。
本開示はさらにデコーダを提供する。当該デコーダは、ビットストリームを取得する取得ユニットを備え、ビットストリームは、変換ユニット構文を含んでいる、取得ユニットは、前記変換ユニット構文に従って、現在の変換ユニットまたは現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得するように構成され、少なくとも2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する、少なくともコーディングユニットCBFフラグの値、cu_cbfフラグの値、および少なくとも2つのクロマCBFフラグの値に基づいて、ルマCBFフラグの値を導出する導出ユニットを備える。
上述したデコーダにおいて、ルマCBFフラグの値は、現在の変換ユニット内の現在のサブ変換ユニットの位置に基づいてさらに導出されてよい。
上述したデコーダにおいて、変換ユニット構文は、少なくとも2つのクロマCBFフラグを備えてよく、変換ユニット構文に従って、少なくとも2つのクロマCBFフラグの値を取得する段階は、変換ユニット構文から少なくとも2つのクロマCBFフラグの値を取得する段階を備える。
上述したデコーダにおいて、ルマCBFフラグはtu_cbf_lumaフラグであってよい。
上述したデコーダにおいて、変換ユニット構文において、変換ユニットの構文要素は、
ブロック全体にシグナリングされてよく、または
インターブロックのサブブロック変換(SBT)で取得された複数のサブ変換ユニットにシグナリングされてよく、または
最大変換ユニットサイズの制限を満たすようにシグナリングされてよい。
上述したデコーダにおいて、現在の変換ユニットまたは現在のサブ変換ユニットは、2つのクロマCBFフラグを含み、各クロマ平面に対してそれぞれ1つのフラグを持ってよい。
上述したデコーダにおいて、ルマCBFフラグの値は、cu_cbfフラグの値と、現在の変換ユニットに対応する2つのクロマCBFフラグの値とに基づいて導出されてよい。
上述したデコーダにおいて、現在の変換ユニットがサブ変換ユニットに分割されていない場合、ビットストリームでcu_cbfフラグがシグナリングされ、cu_cbfフラグの値が1に等しく、tu_cbf_cbフラグの値が0であって、tu_cbf_crフラグの値が0であって、次に現在の変換ユニットの前記tu_cbf_lumaフラグの値が1に導出されてよい。
上述したデコーダにおいて、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000010
上述したデコーダにおいて、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000011
上述したデコーダにおいて、現在の変換ユニットがサブブロック変換(SBT)によって分割されている場合、非ゼロのCBFフラグを許容する前記サブ変換ユニットの前記tu_cbf_lumaフラグの値は、以下の条件に従って導出されてよい:
前記cu_cbfフラグの値が1であり、前記tu_cbf_cbフラグの値が0であり、前記tu_cbf_crフラグの値が0であり、次に前記現在のサブ変換ユニットの前記tu_cbf_lumaフラグの値は1であると導出される。
上述したデコーダにおいて、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000012
上述したデコーダにおいて、変換ユニット構文に対応する変換ユニット構文表が以下の表に従ってシグナリングされてよい。
Figure 2023085351000013
上述したデコーダにおいて、変換ユニット構文に対応する変換ツリー構文表が以下の表に従ってシグナリングされてよい:
Figure 2023085351000014
ここで、変換ツリー構文表に対応するコーディングユニット構文表は、以下の表に従ってシグナリングされてよい:
Figure 2023085351000015
上述したデコーダにおいて、treeTypeは、SINGLE_TREEに等しくてよい。
上述したデコーダにおいて、ルマCBFフラグがtu_cbf_lumaフラグであってよく、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、以下の条件に従って導出されてよい。
Figure 2023085351000016
上述したデコーダにおいて、ルマCBFフラグがtu_cbf_lumaフラグであってよく、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、以下の条件に従って導出されてよい。
Figure 2023085351000017
上述したデコーダにおいて、1に等しいtu_cbf_luma[x0][y0]は、ルマ変換ブロックが0に等しくない1つまたは複数の変換係数レベルを含むことを指定してよく、配列インデックスx0、y0は、画像の左上のルマサンプルに対する、考慮された変換ブロックの左上のルマサンプルの位置(x0,y0)を指定してよい、変換係数レベルは、変換係数値の計算のためにスケーリングする前の前記デコーディング処理において、特定の2次元周波数インデックスに関連する値を表す整数量であってよい。
1つまたは複数の実施形態の詳細は、添付図面および以下の説明に記載されている。他の特徴、目的、および利点が、本明細書、図面、および特許請求の範囲から明らかになるであろう。
以下において、本発明の実施形態は、添付の図および図面を参照してより詳細に説明される。
本発明の実施形態を実装するように構成されるビデオコーディングシステムの一例を示すブロック図である。
本発明の実施形態を実装するように構成されるビデオコーディングシステムの別の例を示すブロック図である。
本発明の実施形態を実装するように構成されるビデオエンコーダの一例を示すブロック図である。
本発明の実施形態を実装するように構成されるビデオデコーダの例示的な構造を示すブロック図である。
エンコーディング装置またはデコーディング装置の一例を示すブロック図である。
エンコーディング装置またはデコーディング装置の別の例を示すブロック図である。
CBFフラグのシグナリング方法の一実施形態を示すブロック図である。
本開示によるデコーディング装置またはエンコーディング装置が実施するコーディング方法のフローチャートを示す図である。
本開示によるエンコーダの一例を模式的に示す図である。
本開示によるデコーダの一例を模式的に示す図である。
図6と同様のブロック図である。
以下、別途明示的に指定されていない限り、同一の参照符号は、同一または少なくとも機能的に等価な特徴を指す。
以下の説明では、本開示の一部を形成し、例として、本発明の実施形態の具体的態様または本発明の実施形態が使用され得る具体的態様を示す添付の図面を参照する。本発明の実施形態は他の態様で使用されてもよく、図に示されない構造的または論理的変化を含んでもよいことが理解される。従って、以下の詳細な説明は、制限的な意味で解釈されるべきではなく、本発明の範囲は、添付の特許請求の範囲によって定義される。
例えば、説明された方法に関連する開示は、方法を実行するように構成されている対応するデバイスまたはシステムにも当てはまり得、逆もまた同様であることが理解される。例えば、特定の方法のステップのうちの1つまたは複数が説明される場合、対応するデバイスは、説明された1つまたは複数の方法のステップ(例えば、上記1つまたは複数のステップを実行する1つのユニット、または、それぞれ複数のステップのうちの1つまたは複数を実行する複数のユニット)を実行するために、1つまたは複数のユニットが明示的に説明もまたは図面に示しもされていない場合であっても、そのような1つまたは複数のユニット、例えば、機能ユニットを含んでよい。他方で、例えば、特定の装置が1つまたは複数のユニット、例えば、機能ユニットに基づいて説明される場合、対応する方法は、上記1つまたは複数のユニットの機能を実行するために、1つまたは複数のステップが明示的に説明もまたは図面に示しもされていない場合であっても、そのような1つのステップ(例えば、1つまたは複数のユニットの機能を実行する1つのステップ、またはそれぞれ複数のユニットのうちの1つまたは複数の機能を実行する複数のステップ)を含んでよい。さらに、別途特に注記されない限り、本明細書で説明する様々な例示的な実施形態および/または態様の特徴が互いに組み合わされ得ることが理解される。
ビデオコーディングは典型的には、ビデオまたはビデオシーケンスを形成する一連の画像の処理を指す。「画像」という用語の代わりに、「フレーム」または「イメージ」という用語がビデオコーディングの分野での同義語として用いられる場合がある。ビデオコーディング(または一般的にコーディング)は、ビデオエンコーディングおよびビデオデコーディングの2つの部分を含む。ビデオエンコーディングは、ソース側で実行され、典型的には、(より効率的な保存および/または送信のために)ビデオ画像を表現するために要求されるデータ量を低減させるように、元のビデオ画像を処理(例えば、圧縮による)することを含む。ビデオデコーディングは、デスティネーション側で実行され、典型的には、ビデオ画像を再構成するように、エンコーダと比較して逆の処理を含む。ビデオ画像(または一般に画像)の「コーディング」に言及する実施形態は、ビデオ画像またはそれぞれのビデオシーケンスの「エンコーディング」または「デコーディング」に関すると理解されるものとする。エンコーディング部分とデコーディング部分との組み合わせは、コーデック(コーディングおよびデコーディング)とも称される。
無損失ビデオコーディングの場合、元のビデオ画像を再構成でき、すなわち、再構成されたビデオ画像は元のビデオ画像と同じ品質である(保存中または送信中に伝送損失またはその他のデータ損失がないと仮定)。不可逆ビデオコーディングの場合、ビデオ画像を表現するデータ量を低減するために、例えば量子化によるさらなる圧縮が実行されるが、これはデコーダにおいて完全には再構成できない、すなわち、再構成されたビデオ画像の品質は、元のビデオ画像の品質に比較して低下または劣化する。
いくつかのビデオコーディング規格は、「不可逆ハイブリッドビデオコーデック」のグループに属する(すなわち、サンプル領域における空間的および時間的予測と、変換領域における量子化を適用するための2D変換コーディングとを組み合わせる)。ビデオシーケンスの各画像は、典型的には、非重複ブロックのセットへと区分化され、コーディングは、典型的には、ブロックレベルで実行される。換言すれば、エンコーダにおいて、ビデオは、例えば、空間的(画像内)予測および/または時間的(画像間)予測を使用して予測ブロックを生成し、現在のブロック(現在処理されている/処理されることになるブロック)から予測ブロックを減算して残差ブロックを取得し、残差ブロックを変換するとともに変換領域における残差ブロックを量子化して、送信されることになるデータ量を低減(圧縮)することによって、典型的にはブロック(ビデオブロック)レベルで処理される、すなわちエンコードされ、一方で、デコーダにおいて、現在のブロックを表現のために再構成するために、エンコーダと比較して逆の処理がエンコードまたは圧縮されたブロックに適用される。さらに、エンコーダがデコーダの処理ループを繰り返すことにより、後続のブロックの処理のために、すなわちコーディングのために、両方が同一の予測(例えば、イントラおよびインター予測)および/または再構成物を生成することになる。
以下、ビデオコーディングシステム10、ビデオエンコーダ20、およびビデオデコーダ30の実施形態が、図1~図3に基づいて説明される。
図1Aは、本願の技術を使用し得る例示的なコーディングシステム10、例えばビデオコーディングシステム10(または略してコーディングシステム10)を示す概略ブロック図である。ビデオコーディングシステム10のビデオエンコーダ20(または略してエンコーダ20)およびビデオデコーダ30(または略してデコーダ30)は、本願において説明される様々な例に従って技術を実行するように構成され得るデバイスの例を表す。
図1Aに示すように、コーディングシステム10は、エンコード済みの画像データ21を、例えば、このエンコード済みの画像データをデコードするためにデスティネーションデバイス14に提供する(13)ように構成されているソースデバイス12を備える。
ソースデバイス12は、エンコーダ20を備え、加えて、すなわち任意選択で、画像ソース16と、プリプロセッサ(または前処理ユニット)18、例えば画像プリプロセッサ18と、通信インタフェースまたは通信ユニット22とを備えてよい。
画像ソース16は、任意の種類の画像捕捉デバイス、例えば、現実世界の画像を捕捉するカメラ、および/または、任意の種類の画像生成デバイス、例えば、コンピュータアニメーション化画像を生成するコンピュータグラフィックプロセッサ、または、現実世界の画像、コンピュータ生成画像(例えば、スクリーンコンテンツ、仮想現実(VR)画像)、および/またはそれらの任意の組み合わせ(例えば、拡張現実(AR)画像)を取得および/または提供する任意の種類の他のデバイスを含むかまたはそれらのデバイスであってよい。画像ソースは、上述の画像の任意のものを保存する任意の種類のメモリまたはストレージであってよい。
プリプロセッサ18および前処理ユニット18によって実行される処理と区別するように、画像または画像データ17は、生画像または生画像データ17とも称され得る。
プリプロセッサ18は、(生)の画像データ17を受信するとともに、画像データ17に対して前処理を実行して、前処理済みの画像19または前処理済みの画像データ19を取得するように構成されている。プリプロセッサ18によって実行される前処理は、例えば、トリミング、色フォーマット変換(例えば、RGBからYCbCr)、色補正、またはノイズ除去を含んでよい。前処理ユニット18は任意選択のコンポーネントでもよいことが理解できる。
ビデオエンコーダ20は、前処理済みの画像データ19を受信するとともに、エンコード済みの画像データ21を提供するように構成されている(さらなる詳細は、例えば図2に基づいて下記で説明される)。
ソースデバイス12の通信インタフェース22は、通信チャネル13を介して、エンコード済みの画像データ21を受信するとともに、エンコード済みの画像データ21(またはその任意のさらなる処理バージョン)を、保存または直接の再構成のために、別のデバイス、例えばデスティネーションデバイス14または任意の他のデバイスに送信するよう構成されてよい。
デスティネーションデバイス14は、デコーダ30(例えばビデオデコーダ30)を備え、加えて、すなわち任意選択で、通信インタフェースまたは通信ユニット28と、ポストプロセッサ32(または後処理ユニット32)と、ディスプレイデバイス34とを備えてよい。
デスティネーションデバイス14の通信インタフェース28は、エンコード済みの画像データ21(またはその任意のさらなる処理バージョン)を、例えばソースデバイス12から直接または任意の他のソース、例えばストレージデバイス、例えばエンコード済みの画像データストレージデバイスから受信するとともに、エンコード済みの画像データ21をデコーダ30に提供するように構成されている。
通信インタフェース22および通信インタフェース28は、ソースデバイス12とデスティネーションデバイス14との間で、直接的な通信リンク、例えば、直接的な有線若しくは無線接続を介して、または、任意の種類のネットワーク、例えば、有線若しくは無線ネットワーク若しくはそれらの任意の組み合わせ、若しくは、任意の種類のプライベートおよびパブリックネットワーク若しくはそれらの任意の種類の組み合わせを介して、エンコード済みの画像データ21またはエンコード済みのデータを送信または受信する(13)ように構成されてよい。
通信インタフェース22は、例えば、エンコード済みの画像データ21を適切なフォーマットに、例えばパケットにパッケージ化する、および/または、通信リンクまたは通信ネットワークを介した送信のための任意の種類の送信エンコーディングまたは処理を用いて、エンコード済みの画像データを処理するように構成されてよい。
通信インタフェース22のカウンターパートをなす通信インタフェース28は、例えば、送信されたデータを受信するとともに、任意の種類の対応する送信デコーディングまたは処理および/またはデパッケージングを用いて送信データを処理して、エンコード済みの画像データ21を取得するように構成されてよい。
通信インタフェース22および通信インタフェース28は両方とも、図1Aにおいてソースデバイス12からデスティネーションデバイス14に向く通信チャネル13の矢印で示すように単方向通信インタフェースとして、または、双方向通信インタフェースとして構成されてよく、例えば、メッセージを送信および受信する、例えば、接続を設定し、通信リンクおよび/またはデータ送信、例えばエンコード済みの画像データ送信に関連する任意の他の情報を確認およびやりとりするように構成されてよい。
デコーダ30は、エンコード済みの画像データ21を受信するとともに、デコード済みの画像データ31またはデコード済みの画像31を提供するように構成されている(さらなる詳細は、例えば図3または図5に基づいて下記で説明される)。
デスティネーションデバイス14のポストプロセッサ32は、デコード済みの画像データ31(再構成画像データとも称される)、例えばデコード済みの画像31を後処理して、後処理済みの画像データ33、例えば後処理済みの画像33を取得するように構成されている。後処理ユニット32により行われる後処理は、例えば、デコード済みの画像データ31を、例えば、ディスプレイデバイス34による表示のために準備する目的で、例えば、色フォーマット変換(例えば、YCbCrからRGBへ)、色補正、トリミング、若しくは再サンプリング、または任意の他の処理を含んでよい。
デスティネーションデバイス14のディスプレイデバイス34は、画像を例えばユーザまたは視聴者に表示するために、後処理済みの画像データ33を受信するように構成されている。ディスプレイデバイス34は、再構成画像を表現するための任意の種類のディスプレイ、例えば、一体型または外付けのディスプレイまたはモニタであってもよく、またはこれを含んでもよい。ディスプレイは、例えば、液晶ディスプレイ(LCD)、有機発光ダイオード(OLED)ディスプレイ、プラズマディスプレイ、プロジェクタ、マイクロLEDディスプレイ、液晶オンシリコン(LCoS)、デジタル光プロセッサ(DLP)、または任意の種類の他のディスプレイを含んでよい。
図1Aはソースデバイス12とデスティネーションデバイス14とを別個のデバイスとして示しているが、デバイスの実施形態は、それらの両方または両方の機能、すなわち、ソースデバイス12または対応する機能と、デスティネーションデバイス14または対応する機能とを備えてもよい。そのような実施形態では、ソースデバイス12または対応する機能およびデスティネーションデバイス14または対応する機能は、同じハードウェアおよび/またはソフトウェアを使用して、または別個のハードウェアおよび/またはソフトウェアまたはそれらの任意の組み合わせによって実装され得る。
本説明に基づいて当業者には明らかであるように、図1Aに示すような、異なるユニットの機能またはソースデバイス12および/またはデスティネーションデバイス14内の機能の存在および(正確な)分割は、実際のデバイスおよびアプリケーションに応じて変わり得る。
エンコーダ20(例えば、ビデオエンコーダ20)またはデコーダ30(例えば、ビデオデコーダ30)またはエンコーダ20およびデコーダ30の両方は、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリートロジック、ハードウェア、ビデオコーディング専用またはそれらの任意の組み合わせ等の、図1Bに示すような処理回路を介して実装されてよい。エンコーダ20は、図2のエンコーダ20および/または本明細書に記載の任意の他のエンコーダシステムまたはサブシステムに関連して説明される様々なモジュールを具現するために処理回路46を介して実装されてよい。デコーダ30は、図3のデコーダ30および/または本明細書に記載の任意の他のデコーダシステムまたはサブシステムに関連して説明される様々なモジュールを具現するために処理回路46を介して実施されてよい。処理回路は、後で説明されるように様々な操作を実行するように構成されてよい。図5に示すように、本技術がソフトウェアにおいて部分的に実施される場合、デバイスは、好適な非一時的コンピュータ可読記憶媒体にソフトウェアのための命令を保存してよく、ハードウェア内で1つまたは複数のプロセッサを用いて命令を実行して、本開示の技術を実施してよい。ビデオエンコーダ20およびビデオデコーダ30のいずれかは、図1Bに示すように、例えば、単一のデバイス内の組み合わされたエンコーダ/デコーダ(コーデック)の一部として統合されてよい。
ソースデバイス12およびデスティネーションデバイス14は、任意の種類のハンドヘルドまたはステーショナリデバイス、例えば、ノートブックまたはラップトップコンピュータ、携帯電話、スマートフォン、タブレットまたはタブレットコンピュータ、カメラ、デスクトップコンピュータ、セットトップボックス、テレビ、ディスプレイデバイス、デジタルメディアプレイヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイス(コンテンツサービスサーバまたはコンテンツ配信サーバ等)、ブロードキャスト受信機デバイス、ブロードキャスト送信機デバイス等を含む、広範なデバイスのいずれかを備えてよく、オペレーティングシステムを用いないまたは任意の種類のオペレーティングシステムを用いてよい。いくつかの場合、ソースデバイス12およびデスティネーションデバイス14は、無線通信に対応してよい。従って、ソースデバイス12およびデスティネーションデバイス14は、無線通信デバイスとしてよい。
いくつかの場合、図1Aに示すビデオコーディングシステム10は、単に例であり、本願の技術は、エンコーディング装置とデコーディング装置との間の任意のデータ通信を必ずしも含まないビデオコーディング設定(例えば、ビデオエンコーディングまたはビデオデコーディング)に適用されてよい。他の例において、データは、ローカルメモリから取得され、ネットワークを介してストリーム等される。ビデオエンコーディング装置は、データをメモリにエンコードして格納してよく、および/または、ビデオデコーディング装置は、データをメモリからデコードして取得してよい。いくつかの例において、エンコーディングおよびデコーディングは、互いに通信しないが単にデータをメモリにエンコードするおよび/またはデータをメモリから取得するとともにデコードするデバイスによって実行される。
説明の便宜上、例えば、ITU-Tビデオコーディング専門家グループ(VCEG)およびISO/IEC動画像専門家グループ(MPEG)のビデオコーディングに関する共同作業チーム(JCT-VC)によって開発された次世代ビデオコーディング規格である、高効率ビデオコーディング(HEVC)または多目的ビデオコーディング(VVC)のリファレンスソフトウェアを参照して、本発明の実施形態が本明細書で説明される。当業者であれば、本発明の実施形態がHEVCまたはVVCに限定されないことを理解するであろう。
[エンコーダおよびエンコーディング方法]
図2は、本願の技術を実施するように構成されている例示のビデオエンコーダ20の概略ブロック図を示している。図2の例において、ビデオエンコーダ20は、入力201(または入力インタフェース201)と、残差計算ユニット204と、変換処理ユニット206と、量子化ユニット208と、逆量子化ユニット210と、逆変換処理ユニット212と、再構成ユニット214と、ループフィルタユニット220と、デコード済みの画像バッファ(DPB)230と、モード選択ユニット260と、エントロピーエンコーディングユニット270と、出力272(または出力インタフェース272)とを備える。モード選択ユニット260は、インター予測ユニット244、イントラ予測ユニット254、および区分化ユニット262を含み得る。インター予測ユニット244は、動き推定ユニットおよび動き補償ユニットを含んでよい(不図示)。図2に示すビデオエンコーダ20は、ハイブリッドビデオエンコーダまたはハイブリッドビデオコーデックによるビデオエンコーダとも称されることがある。
残差計算ユニット204と、変換処理ユニット206と、量子化ユニット208と、モード選択ユニット260とは、エンコーダ20の順方向信号経路を形成するものとして言及されてよく、一方、逆量子化ユニット210と、逆変換処理ユニット212と、再構成ユニット214と、バッファ216と、ループフィルタ220と、デコード済みの画像バッファ(DPB)230と、インター予測ユニット244と、イントラ予測ユニット254とは、ビデオエンコーダ20の逆方向信号経路を形成するものとして言及されてよい。ビデオエンコーダ20の逆方向信号経路は、デコーダの信号経路に対応する(図3のビデオデコーダ30を参照)。逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、デコード済みの画像バッファ(DPB)230、インター予測ユニット244、およびイントラ予測ユニット254はまた、ビデオエンコーダ20の「内蔵デコーダ」を形成していると表現される。
[画像および画像区分化(画像およびブロック)]
エンコーダ20は、例えば、入力201を介して、画像17(または画像データ17)、例えば、ビデオまたはビデオシーケンスを形成する一連の画像のうちの画像を受信するように構成されてよい。受信された画像または画像データは、前処理済みの画像19(または前処理済みの画像データ19)であってもよい。簡潔にするために、以下の説明では画像17が参照される。画像17は、現在の画像またはコードされる画像とも称され得る(特に、ビデオコーディングにおいて、現在の画像を他の画像、例えば、同じビデオシーケンス、すなわち現在の画像も含むビデオシーケンスの、以前にエンコード済みおよび/またはデコード済みの画像から区別するために)。
(デジタル)画像は、強度値を持つサンプルの2次元アレイまたはマトリックスであるか、それとみなされ得る。アレイ内のサンプルは、画素(画像要素の略称)またはペルとも称され得る。アレイまたは画像の水平および垂直方向(または軸)のサンプル数は、画像のサイズおよび/または解像度を定義する。色を表現するために、典型的には3つの色成分が使用され、すなわち、画像は、3つのサンプルアレイで表されてもまたはこれを含んでもよい。RBG形式または色空間では、画像は対応する赤、緑、および青のサンプルアレイを含む。しかしながら、ビデオコーディングでは、各画素は、典型的には輝度およびクロミナンス形式または色空間、例えばYCbCrで表され、これには、Y(代わりにLが用いられる場合もある)で示される輝度成分と、CbおよびCrで示される2つのクロミナンス成分とが含まれる。輝度(または略してルマ(luma))成分Yは、明るさまたは(例えば、グレースケール画像でのような)グレーレベルの強度を表し、2つのクロミナンス(または略してクロマ(chroma))成分であるCbおよびCrは、色度または色情報成分を表す。従って、YCbCr形式の画像は、輝度サンプル値(Y)の輝度サンプルアレイと、クロミナンス値(CbおよびCr)の2つのクロミナンスサンプルアレイとを含む。RGB形式の画像は、YCbCr形式に転換または変換され得、その逆もまた同様であり、この処理は、色変換または転換としても知られている。画像がモノクロの場合、画像は輝度サンプルアレイのみを含んでよい。従って、画像は例えば、単色フォーマットのルマサンプルのアレイ、または、4:2:0、4:2:2、および、4:4:4の色フォーマットであるルマサンプルのアレイ、および、クロマサンプルの2つの対応するアレイであり得る。
ビデオエンコーダ20の実施形態は、画像17を複数の(典型的には非重複)画像ブロック203に区分化するように構成されている画像区分化ユニット(図2には示されない)を備えてよい。これらのブロックは、根ブロック、マクロブロック(H.264/AVC)またはコーディングツリーブロック(CTB)またはコーディングツリーユニット(CTU)(H.265/HEVCおよびVVC)とも称され得る。画像区分化ユニットは、ビデオシーケンスの全ての画像およびブロックサイズを画定する対応するグリッドに同じブロックサイズを使用するか、または、画像または画像のサブセット若しくはグループ間でブロックサイズを変化させて、各画像を対応するブロックに区分化するように構成されてよい。
さらなる実施形態において、ビデオエンコーダは、画像17のブロック203、例えば、画像17を形成する1つ、いくつか、または全てのブロックを直接受信するように構成されてよい。画像ブロック203は、現在の画像ブロックまたはコードされる画像ブロックとも称され得る。
画像17と同様にここでも、画像ブロック203は、画像17よりも寸法が小さいが、強度値(サンプル値)を持つサンプルの2次元アレイまたはマトリックスであるか、または、それとみなすことができる。換言すれば、ブロック203は、例えば、1つのサンプルアレイ(例えば、単色画像17の場合はルマアレイ、または、カラー画像の場合はルマ若しくはクロマアレイ)、または3つのサンプルアレイ(例えば、カラー画像17の場合はルマおよび2つのクロマアレイ)、または、適用される色フォーマットに応じた任意の他の数および/または種類のアレイを備えてよい。ブロック203の水平および垂直方向(または軸)のサンプル数は、ブロック203のサイズを定義する。従って、ブロックは、例えば、サンプルのM×N(M列×N行)アレイ、または変換係数のM×Nアレイであってよい。
図2に示すビデオエンコーダ20の実施形態は、画像17をブロック毎にエンコードするように構成されてよく、例えば、エンコーディングおよび予測がブロック203毎に実行される。
図2に示すようなビデオエンコーダ20の実施形態は、スライス(ビデオスライスとも称される)を使用して画像を区分および/またはエンコードするようにさらに構成されていてよく、画像は1つまたは複数のスライス(典型的には非重複)に区分されるか、またはそれを使用してエンコードされてもよく、各スライスは1つまたは複数のブロック(例えばCTU)を備えてよい。
図2に示すようなビデオエンコーダ20の実施形態は、タイルグループ(ビデオタイルグループとも称される)および/またはタイル(ビデオタイルとも称される)を使用して画像を区分化および/またはエンコードするようにさらに構成されてもよく、画像は、1つまたは複数のタイルグループ(典型的には非重複)に区分化されるか、またはそれを使用してエンコードされてもよく、各タイルグループは、例えば、1つまたは複数のブロック(例えばCTU)または、1つまたは複数のタイルを備えてよい。各タイルは、例えば、長方形形状であってもよく、1つまたは複数のブロック(例えばCTU)、例えば、完全なまたは分数ブロックを備えてよい。
[残差計算]
残差計算ユニット204は、例えば、サンプル毎(画素毎)に画像ブロック203のサンプル値から予測ブロック265のサンプル値を減算し、サンプル領域における残差ブロック205を取得することによって、画像ブロック203および予測ブロック265に基づいて(予測ブロック265に関するさらなる詳細は後で提供される)、残差ブロック205(残差205とも称される)を計算するように構成されてよい。
[変換]
変換処理ユニット206は、残差ブロック205のサンプル値に対して変換、例えば、離散余弦変換(DCT)または離散正弦変換(DST)を適用し、変換領域における変換係数207を取得するように構成されてよい。変換係数207は、変換残差係数とも称され得、変換領域における残差ブロック205を表し得る。
変換処理ユニット206は、H.265/HEVCに指定された変換等のDCT/DSTの整数近似を適用するように構成されてよい。直交DCT変換に比較して、そのような整数近似は、典型的には特定の係数によってスケーリングされる。順変換および逆変換によって処理される残差ブロックのノルムを保存するべく、変換プロセスの一部として追加のスケーリング係数が適用される。スケーリング係数は、典型的には、シフト操作に関して2のべき乗であるスケーリング係数、変換係数のビット深度、確度と実装コストとの間のトレードオフ等のような特定の制約に基づいて選択される。例えば、特定のスケーリング係数が、例えば、逆変換処理ユニット212による逆変換(および、例えばビデオデコーダ30における逆変換処理ユニット312による対応する逆変換)に指定され、例えば、エンコーダ20における変換処理ユニット206による順方向変換のための対応するスケーリング係数が、相応に指定されてよい。
ビデオエンコーダ20の実施形態は(それぞれ変換処理ユニット206)は、変換パラメータ、例えば単数または複数の変換のタイプを、例えば、直接またはエントロピーエンコーディングユニット270を介してエンコード若しくは圧縮してから出力するように構成されてよく、それにより、例えば、ビデオデコーダ30は、デコーディングのための変換パラメータを受信して使用してよい。
[量子化]
量子化ユニット208は、例えば、スカラ量子化またはベクトル量子化を適用することによって、変換係数207を量子化して、量子化係数209を取得するように構成されてよい。量子化係数209は、量子化変換係数209または量子化残差係数209とも称され得る。
量子化プロセスは、変換係数207のいくつかまたは全てに関連付けられたビット深度を減少させ得る。例えば、nビット変換係数は、量子化中にmビット変換係数に丸められてよく、ここでnはmよりも大きい。量子化の程度は、量子化パラメータ(QP)を調整することによって変更されてよい。例えば、スカラ量子化の場合、より細かいまたはより粗い量子化を達成するために、異なるスケーリングが適用されてよい。量子化ステップサイズが小さいほど細かい量子化に対応し、一方で、量子化ステップサイズが大きいほど粗い量子化に対応する。適用可能な量子化ステップサイズは、量子化パラメータ(QP)によって示され得る。量子化パラメータは、例えば、適用可能な量子化ステップサイズの予め定義されたセットへのインデックスであり得る。例えば、小さな量子化パラメータは細かい量子化(小さな量子化ステップサイズ)に対応し得、大きな量子化パラメータは粗い量子化(大きな量子化ステップサイズ)に対応し得るか、または逆もまた同様である。量子化は、量子化ステップサイズによる除算を含んでよく、例えば逆量子化ユニット210による対応するおよび/または逆の量子化解除は、量子化ステップサイズによる乗算を含んでよい。いくつかの規格、例えばHEVCに従った実施形態は、量子化ステップサイズを決定するのに量子化パラメータを使用するように構成されてよい。概して、量子化ステップサイズは、除算を含む方程式の固定小数点近似を使用する量子化パラメータに基づいて算出され得る。残差ブロックのノルムを復元するために、量子化および量子化解除に追加のスケーリング係数を導入し得、これは、量子化ステップサイズおよび量子化パラメータの方程式の固定小数点近似で使用されるスケーリングに起因して変更され得る。一例の実装では、逆変換および量子化解除のスケーリングは組み合わされ得る。代替的には、カスタマイズされた量子化表が使用され、例えばビットストリームにおいてエンコーダからデコーダにシグナリングされてよい。量子化は不可逆演算であり、損失は量子化ステップサイズの増加に伴って増加する。
ビデオエンコーダ20の実施形態(それぞれ量子化ユニット208)は、量子化パラメータ(QP)を、例えば直接かまたはエントロピーエンコーディングユニット270を介してエンコードしてから出力するように構成されてよく、それにより、例えば、ビデオデコーダ30は、デコーディングのための量子化パラメータを受信して適用してよい。
[逆量子化]
逆量子化ユニット210は、例えば、量子化ユニット208と同じ量子化ステップサイズに基づいてまたはそれを使用して量子化ユニット208によって適用された量子化スキームの逆を適用することによって、量子化係数に対して量子化ユニット208の逆量子化を適用し、量子化解除係数211を取得するように構成されている。量子化解除係数211は、量子化解除残差係数211とも称され得、典型的には量子化による損失に起因して変換係数とは同一でないが、変換係数207に対応する。
[逆変換]
逆変換処理ユニット212は、変換処理ユニット206によって適用された変換の逆変換、例えば、逆離散余弦変換(DCT)または逆離散正弦変換(DST)または他の逆変換を適用し、サンプル領域における再構成残差ブロック213(または対応する量子化解除係数213)を取得するように構成されている。再構成残差ブロック213は、変換ブロック213とも称され得る。
[再構成]
再構成ユニット214(例えば、加算器または合算器214)は、例えば、サンプル毎に、再構成残差ブロック213のサンプル値と予測ブロック265のサンプル値とを加算することによって、変換ブロック213(すなわち、再構成残差ブロック213)を予測ブロック265に加算し、サンプル領域における再構成ブロック215を取得するように構成されている。
[フィルタリング]
ループフィルタユニット220(または、略して「ループフィルタ」220)は、再構成ブロック215をフィルタして、フィルタリング済みのブロック221を取得する、または、一般に、再構成サンプルをフィルタして、フィルタリング済みのサンプルを取得するように構成されている。ループフィルタユニットは、例えば、画素遷移を円滑にする、または、別様にビデオ品質を改善するように構成されている。ループフィルタユニット220は、デブロッキングフィルタ、サンプル適応オフセット(SAO)フィルタ、または、1つまたは複数の他のフィルタ、例えば、バイラテラルフィルタ、適応ループフィルタ(ALF)、鮮明化、平滑化フィルタ若しくは協調フィルタ、または、それらの任意の組み合わせ等の、1つまたは複数のループフィルタを備えてよい。ループフィルタユニット220が、ループフィルタ内にあるものとして図2に示されているが、他の構成では、ループフィルタユニット220はポストループフィルタとして実装されてもよい。フィルタリング済みのブロック221は、フィルタリング済みの再構成ブロック221とも称され得る。
ビデオエンコーダ20の実施形態(それぞれループフィルタユニット220)は、ループフィルタパラメータ(サンプル適応オフセット情報等)を、例えば、直接またはエントロピーエンコーディングユニット270を介してエンコードしてから出力するように構成されてよく、それにより、例えば、デコーダ30は、デコーディングのために同じループフィルタパラメータまたはそれぞれのループフィルタを受信して適用してよい。
[デコード済みの画像バッファ]
デコード済みの画像バッファ(DPB)230は、ビデオエンコーダ20によってビデオデータをエンコードするための参照画像、または一般に参照画像データを保存するメモリであってよい。DPB230は、シンクロナスDRAM(SDRAM)、磁気抵抗RAM(MRAM)、抵抗RAM(RRAM(登録商標))、または他のタイプのメモリデバイスを含む、ダイナミックランダムアクセスメモリ(DRAM)等の様々なメモリデバイスのうちの任意のものによって形成されてよい。デコード済みの画像バッファ(DPB)230は、1つまたは複数のフィルタリング済みのブロック221を保存するように構成されてよい。デコード済みの画像バッファ230は、同じ現在の画像または異なる画像、例えば、以前に再構成された画像の他の以前にフィルタリング済みのブロック、例えば、以前に再構成され且つフィルタリング済みのブロック221を保存するようにさらに構成されてよく、例えば、インター予測のために、以前に再構成された、すなわちデコード済みの、完全な画像(並びに、対応する参照ブロックおよびサンプル)、および/または、部分的に再構成された現在の画像(並びに、対応する参照ブロックおよびサンプル)を提供してよい。デコード済みの画像バッファ(DPB)230は、例えば、再構成ブロック215がループフィルタユニット220によってフィルタリングされていない場合、1つまたは複数のフィルタリングされていない再構成ブロック215、または一般に、フィルタリングされていない再構成サンプル、または、再構成ブロック若しくはサンプルの任意の他のさらに処理されたバージョンを保存するように構成されてもよい。
[モード選択(区分化および予測)]
モード選択ユニット260は、区分化ユニット262と、インター予測ユニット244と、イントラ予測ユニット254とを備え、元の画像データ、例えば元のブロック203(現在の画像17の現在のブロック203)、および再構成画像データ、例えば、同じ(現在の)画像のおよび/または1つまたは複数の以前にデコード済みの画像からの、例えばデコード済みの画像バッファ230若しくは他のバッファ(例えば、図示しないラインバッファ)からのフィルタリング済みおよび/またはフィルタリングされていない再構成サンプル若しくはブロックを受信または取得するように構成されている。再構成画像データは、予測ブロック265または予測因子265を得るために、予測、例えばインター予測またはイントラ予測のための参照画像データとして使用される。
モード選択ユニット260は、現在のブロック予測モード(区分化を含まない)のための区分化および予測モード(例えば、イントラまたはインター予測モード)を決定または選択し、対応する予測ブロック265を生成するように構成されてよく、予測ブロック265は、残差ブロック205の計算のためおよび再構成ブロック215の再構成のために使用される。
モード選択ユニット260の実施形態は、区分化および予測モード(例えば、モード選択ユニット260によってサポートされているものまたはモード選択ユニット260に利用可能なものから)選択するように構成されてよく、これにより、最良のマッチ、または換言すれば、最小残差(最小残差は、送信または保存のための圧縮率がより良好であることを意味する)、または、最小シグナリングオーバヘッド(最小シグナリングオーバヘッドは、送信または保存のための圧縮率がより良好であることを意味する)、またはこれらの両方を考慮した若しくはバランスを取ったものが提供される。モード選択ユニット260は、レート歪み最適化(RDO)に基づいて区分化および予測モードを決定する、すなわち、最小レート歪みを提供する予測モードを選択するように構成されてよい。この文脈において「最良」、「最小」、「最適」等のような用語は、全般的な「最良」、「最小」、「最適」等を必ずしも指さず、値が閾値または他の制約を超過または下回り、潜在的に「最適未満選択」につながるが複雑性および処理時間を低減するような、終了または選択基準の達成を指してもよい。
換言すれば、区分化ユニット262は、例えば、クアッドツリー区分化(QT)、バイナリツリー区分化(BT)、若しくはトリプルツリー区分化(TT)、またはそれらの任意の組み合わせを繰り返し用いて、ブロック203をより小さいブロック区分またはサブブロック(ここでもブロックを形成する)に区分化するように、また、例えば、ブロック区分またはサブブロックのそれぞれのための予測を実行するように構成されてよく、モード選択は、区分化されたブロック203のツリー構造の選択を含み、予測モードは、ブロック区分またはサブブロックのそれぞれに適用される。
以下では、例示のビデオエンコーダ20によって実行される、区分化(例えば、区分化ユニット260による)および予測処理(インター予測ユニット244およびイントラ予測ユニット254による)をより詳細に説明する。
[区分化]
区分化ユニット262は、現在のブロック203をより小さい区分、例えば、正方形または長方形サイズのより小さいブロックに区分化(または分割)してよい。これらのより小さいブロック(サブブロックとも称され得る)は、さらにより小さい区分にさらに区分化されてよい。これは、ツリー区分化若しくは階層的ツリー区分化とも称され、ここで、例えば根ツリーレベル0(階層レベル0、深度0)にある根ブロックは、再帰的に区分化、例えば、次に低いツリーレベル、例えばツリーレベル1(階層レベル1、深度1)にある節点の2または2より多いブロックに区分化されてよく、これらのブロックは、例えば終了基準が達成されたことで、例えば最大ツリー深度または最小ブロックサイズに達したことで、区分化が終了するまで、次に低いレベル、例えばツリーレベル2(階層レベル2、深度2)の2または2より多いブロックに再度区分化される等してよい。さらに区分化されないブロックは、ツリーの葉ブロックまたは葉節点とも称される。2つの区分への区分化を用いるツリーは、バイナリツリー(BT)と称され、3つの区分への区分化を用いるツリーは、ターナリツリー(TT)と称され、4つの区分への区分化を用いるツリーは、クアッドツリー(QT)と称される。
前で言及したように、本明細書で使用される「ブロック」という用語は、画像の部分、特に正方形または長方形部分であってよい。例えばHEVCおよびVVCを参照すると、ブロックは、コーディングツリーユニット(CTU)、コーディングユニット(CU)、予測ユニット(PU)、および変換ユニット(TU)、および/または、対応するブロック、例えば、コーディングツリーブロック(CTB)、コーディングブロック(CB)、変換ブロック(TB)、若しくは予測ブロック(PB)であるか、またはそれらに対応してよい。
例えば、コーディングツリーユニット(CTU)は、3つのサンプルアレイを有する画像のルマサンプルのCTB、クロマサンプルの2つの対応するCTB、または、単色画像の若しくはサンプルをコードするために使用された3つの別個の色平面および構文構造を用いてコードされた画像のサンプルのCTBであるか、またはそれらを含んでよい。対応して、コーディングツリーブロック(CTB)は、CTBへの構成要素の分割が区分化であるように、或るNの値に関してサンプルのN×Nのブロックであってよい。コーディングユニット(CU)は、ルマサンプルのコーディングブロック、3つのサンプルアレイを有する画像のクロマサンプルの2つの対応するコーディングブロック、または、単色画像、もしくは、サンプルをコーディングするために使用された3つの別個の色平面および構文構造を使用してコーディングされた画像のサンプルのコーディングブロックであり得る、または、それを含み得る。対応して、コーディングブロック(CB)は、コーディングブロックへのCTBの分割が区分化であるように、或るMおよびNの値に関してサンプルのM×Nのブロックであってよい。
例えばHEVCに従う実施形態において、コーディングツリーユニット(CTU)は、コーディングツリーとして表されるクアッドツリー構造を用いることによってCUに分割されてよい。画像エリアを、インター画像(時間)予測を用いてコードするのかまたはイントラ画像(空間)予測を用いてコードするのかの決定は、CUレベルで行われる。各CUはさらに、PUの分割タイプに従って、1つ、2つ、または4つのPUに分割することができる。1つのPUの内部では、同じ予測処理が適用され、関連情報はPUベースでデコーダに送信される。PUの分割タイプに基づいて予測処理を適用することによって残差ブロックを取得した後、CUは、CUのコーディングツリーと同様の別のクアッドツリー構造に従って変換ユニット(TU)に区分化できる。
例えば、多目的ビデオコーディング(VVC)と称される、現在開発中の最新のビデオコーディング規格に従う実施形態において、組み合わされたクアッドツリーおよびバイナリツリー(QTBT)区分化が、例えば、コーディングブロックを区分化するのに使用される。QTBTブロック構造では、CUは、正方形または長方形のいずれかを有することができる。例えば、コーディングツリーユニット(CTU)はまず、クアッドツリー構造によって区分化される。クアッドツリー葉節点はさらに、バイナリツリーまたはターナリ(またはトリプル)ツリー構造によって区分化される。区分化ツリーの葉節点は、コーディングユニット(CU)と称され、そのセグメンテーションは、いかなるさらなる区分化も行わずに予測および変換処理に使用される。つまり、CU、PU、およびTUはQTBTコーディングブロック構造において同じブロックサイズを有する。並行して、複数の区分化、例えば、トリプルツリー区分もQTBTブロック構造と一緒に用いてよい。
一例において、ビデオエンコーダ20のモード選択ユニット260は、本明細書に記載の区分化技術の任意の組み合わせを実行するように構成されてよい。
上述したように、ビデオエンコーダ20は、(例えば、事前決定された)予測モードのセットから最良または最適な予測モードを決定または選択するように構成されている。予測モードのセットは、例えば、イントラ予測モードおよび/またはインター予測モードを含んでよい。
[イントラ予測]
イントラ予測モードのセットは、35の異なるイントラ予測モード、例えば、DC(またはミーン)モードおよび平面モードのような無方向性モード、若しくは、例えばHEVCにおいて定義されているような、方向性モードを含んでよく、または、67の異なるイントラ予測モード、例えば、DC(またはミーン)モードおよび平面モードのような無方向性モード、若しくは、例えばVVCに定義されている、方向性モードを含んでよい。
イントラ予測ユニット254は、同じ現在の画像の隣接ブロックの再構成サンプルを使用して、イントラ予測モードのセットのうちのイントラ予測モードに従って、イントラ予測ブロック265を生成するように構成されている。
イントラ予測ユニット254(または一般にモード選択ユニット260)は、イントラ予測パラメータ(または一般に、ブロックのために選択されたイントラ予測モードを示す情報)を、エンコード済みの画像データ21に含まれるように構文要素266の形態でエントロピーエンコーディングユニット270に出力するようにさらに構成され、それにより、例えば、ビデオデコーダ30は、デコーディングのための予測パラメータを受信して使用してよい。
[インター予測]
インター予測モードのセット(または可能なインター予測モード)は、利用可能な参照画像(すなわち、例えばDBP230に保存された、以前の少なくとも部分的にデコード済みの画像)および他のインター予測パラメータ、例えば、最良にマッチする参照ブロックの検索に使用されたのは、参照画像の全体なのか若しくは参照画像の一部のみ、例えば、現在のブロックのエリアの周りの検索窓エリアなのか、および/または、例えば、画素補間、例えばハーフ/セミペルおよび/またはクオータペル補間が適用されたか否かに依拠する。
上記の予測モードに加えて、スキップモードおよび/または直接モードが適用されてもよい。
インター予測ユニット244は、動き予測(ME)ユニットおよび動き補償(MC)ユニット(両方とも図2には図示せず)を備えてよい。動き推定ユニットは、動き予測のために、画像ブロック203(現在の画像17の現在の画像ブロック203)およびデコード済みの画像231、または、少なくとも1つまたは複数の以前に再構成済のブロック、例えば1つまたは複数の他の/異なる以前にデコード済みの画像231の再構成ブロックを受信または取得するように構成されてよい。例えば、ビデオシーケンスは、現在の画像および以前にデコード済みの画像231を含んでよく、または換言すれば、現在の画像および以前にデコード済みの画像231は、ビデオシーケンスを形成する一連の画像の一部であるかまたはそれを形成してよい。
エンコーダ20は、例えば、複数の他の画像のうちの同じまたは異なる画像の複数の参照ブロックから参照ブロックを選択し、インター予測パラメータとして参照画像(または参照画像インデックス)および/または参照ブロックの位置(x、y座標)と現在のブロックの位置との間のオフセット(空間的オフセット)を動き推定ユニットに提供するように構成してよい。このオフセットは、動きベクトル(MV)とも称される。
動き補償ユニットは、インター予測パラメータを取得、例えば受信するとともに、そのインター予測パラメータに基づいてまたはそれを使用してインター予測を実行して、インター予測ブロック265を取得するように構成されている。動き補償ユニットによって実行される動き補償は、動き予測によって決定された動き/ブロックベクトルに基づいて予測ブロックをフェッチまたは生成し、場合によって副画素精度までの補間を実行することを伴ってよい。補間フィルタリングは、既知の画素サンプルからさらなる画素サンプルを生成してよく、従って、画像ブロックをコードするのに用いられ得る候補予測ブロックの数を潜在的に増加させる。現在の画像ブロックのPUのための動きベクトルを受信すると、動き補償ユニットは、参照画像リストのうちの1つにおいて動きベクトルが指し示す予測ブロックを位置特定してよい。
動き補償ユニットは、ビデオスライスの画像ブロックをデコードする際にビデオデコーダ30によって用いられる、ブロックおよびビデオスライスに関連付けられる構文要素を生成してもよい。スライスとそれぞれの構文要素に加えて、またはそれに代わるものとして、タイルグループおよび/またはタイルとそれぞれの構文要素を生成または使用してよい。
[エントロピーコーディング]
エントロピーエンコーディングユニット270は、例えば、エントロピーエンコーディングアルゴリズムまたはスキーム(例えば、可変長コーディング(VLC)スキーム、コンテキスト適応VLCスキーム(CAVLC)、算術コーディングスキーム、バイナリゼーション、コンテキスト適応バイナリ算術コーディング(CABAC)、構文ベースのコンテキスト適応バイナリ算術コーディング(SBAC)、確率インターバル区分化エントロピー(PIPE)コーディング、または、別のエントロピーエンコーディング方法若しくは技術)、またはバイパス(無圧縮)を、量子化係数209、インター予測パラメータ、イントラ予測パラメータ、ループフィルタパラメータ、および/または他の構文要素に適用し、例えばエンコード済みのビットストリーム21の形態で出力272を介して出力できるエンコード済みの画像データ21を取得するように構成され、それにより、例えば、ビデオデコーダ30は、デコーディングのためのパラメータを受信して使用してよい。エンコード済みのビットストリーム21は、ビデオデコーダ30に送信、または、後でビデオデコーダ30によって送信または取得するためにメモリに保存されてよい。
ビデオエンコーダ20の他の構造上の変形を、ビデオストリームをエンコードするのに用いることができる。例えば、非変換ベースのエンコーダ20は、特定のブロックまたはフレームのための変換処理ユニット206を用いずに直接的に残差信号を量子化できる。別の実装において、エンコーダ20は、単一のユニットに組み合わされた量子化ユニット208および逆量子化ユニット210を有することができる。
[デコーダおよびデコーディング方法]
図3は、本願の技術を実施するように構成されているビデオデコーダ30の例を示している。ビデオデコーダ30は、例えばエンコーダ20によってエンコードされた、エンコード済みの画像データ21(例えば、エンコード済みのビットストリーム21)を受信して、デコード済みの画像331を取得するように構成されている。エンコード済みの画像データまたはビットストリームは、エンコード済みの画像データをデコードするための情報、例えば、エンコード済みのビデオスライス(および/またはタイルグループまたはタイル)の画像ブロックおよび関連する構文要素を表すデータを含む。
図3の例において、デコーダ30は、エントロピーデコーディングユニット304、逆量子化ユニット310、逆変換処理ユニット312、再構成ユニット314(例えば、合算器314)、ループフィルタ320、デコード済みの画像バッファ(DBP)330、モードアプリケーションユニット360、インター予測ユニット344、およびイントラ予測ユニット354を備える。インター予測ユニット344は、動き補償ユニットであるかまたはこれを備えてよい。ビデオデコーダ30は、いくつかの例では、図2のビデオエンコーダ100に関して説明されたエンコーディングパスに対して概ね逆のデコーディングパスを実行してよい。
エンコーダ20に関して説明したように、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、デコード済みの画像バッファ(DPB)230、インター予測ユニット344、およびイントラ予測ユニット354も、ビデオエンコーダ20の「内蔵デコーダ」を形成するものとして言及される。従って、逆量子化ユニット310は、逆量子化ユニット110と機能的に同一であってよく、逆変換処理ユニット312は、逆変換処理ユニット212と機能的に同一であってよく、再構成ユニット314は、再構成ユニット214と機能的に同一であってよく、ループフィルタ320は、ループフィルタ220と機能的に同一であってよく、デコード済みの画像バッファ330は、デコード済みの画像バッファ230と機能的に同一であってよい。従って、ビデオ20エンコーダのそれぞれのユニットおよび機能について提供される説明は、ビデオデコーダ30のそれぞれのユニットおよび機能に対応して適用される。
[エントロピーデコーディング]
エントロピーデコーディングユニット304は、ビットストリーム21(または一般にエンコード済みの画像データ21)をパースし、例えば、エンコード済みの画像データ21にエントロピーデコーディングを実行して、例えば量子化係数309および/またはデコードされたコーディングパラメータ(図3には図示せず)、例えば、インター予測パラメータ(例えば、参照画像インデックスおよび動きベクトル)、イントラ予測パラメータ(例えば、イントラ予測モードまたはインデックス)、変換パラメータ、量子化パラメータ、ループフィルタパラメータ、および/または他の構文要素のいずれかまたは全てを取得するように構成されている。エントロピーデコーディングユニット304は、エンコーダ20のエントロピーエンコーディングユニット270に関して記載されたエンコーディングスキームに対応するデコーディングアルゴリズムまたはスキームを適用するように構成されてよい。エントロピーデコーディングユニット304は、インター予測パラメータ、イントラ予測パラメータ、および/または他の構文要素をモードアプリケーションユニット360に、また他のパラメータをデコーダ30の他のユニットに提供するようにさらに構成されてよい。ビデオデコーダ30は、ビデオスライスレベルでおよび/またはビデオブロックレベルで、構文要素を受信してよい。スライスとそれぞれの構文要素に加えて、またはそれに代わるものとして、タイルグループおよび/またはタイルとそれぞれの構文要素を受信および/または使用してよい。
[逆量子化]
逆量子化ユニット310は、エンコード済みの画像データ21から量子化パラメータ(QP)(または一般に逆量子化に関連する情報)および量子化係数を受信する(例えばエントロピーデコーディングユニット304によって、例えばパースおよび/またはデコードすることによって)とともに、量子化パラメータに基づいて、デコード済みの量子化係数309に逆量子化を適用し、変換係数311とも称され得る量子化解除係数311を取得するように構成されてよい。逆量子化プロセスは、量子化の程度、また同様に適用されるべき逆量子化の程度を決定するために、ビデオスライス(または、タイルまたはタイルグループ)内のビデオブロック毎にビデオエンコーダ20によって決定される量子化パラメータの使用を含んでよい。
[逆変換]
逆変換処理ユニット312は、変換係数311とも称される量子化解除係数311を受信するとともに、サンプル領域における再構成残差ブロック213を取得するべく、量子化解除係数311に変換を適用するように構成されてよい。再構成残差ブロック213は、変換ブロック313とも称され得る。変換は、逆変換、例えば、逆DCT、逆DST、逆整数変換、または概念的に同様の逆変換プロセスであってよい。逆変換処理ユニット312は、エンコード済みの画像データ21から変換パラメータまたは対応する情報を受信し(例えばエントロピーデコーディングユニット304によって、例えばパースおよび/またはデコードすることによって)、量子化解除係数311に適用されるべき変換を決定するようにさらに構成されてよい。
[再構成]
再構成ユニット314(例えば、加算器または合算器314)は、再構成残差ブロック313を予測ブロック365に加算し、例えば、再構成残差ブロック313のサンプル値と予測ブロック365のサンプル値とを加算することによって、サンプル領域における再構成ブロック315を取得するように構成されてよい。
[フィルタリング]
ループフィルタユニット320(コーディングループ内またはコーディングループの後のいずれかにある)は、例えば、画素遷移を滑らかにするようにまたはビデオ品質を別様に改善するように、再構成ブロック315をフィルタして、フィルタリング済みのブロック321を取得するように構成されている。ループフィルタユニット320は、デブロッキングフィルタ、サンプル適応オフセット(SAO)フィルタ、または、1つまたは複数の他のフィルタ、例えば、バイラテラルフィルタ、適応ループフィルタ(ALF)、鮮明化、平滑化フィルタ若しくは協調フィルタ、または、それらの任意の組み合わせ等の、1つまたは複数のループフィルタを備えてよい。ループフィルタユニット320が、ループフィルタ内にあるものとして図3に示されているが、他の構成では、ループフィルタユニット320はポストループフィルタとして実装されてもよい。
[デコード済みの画像バッファ]
画像のデコード済みのビデオブロック321は、その後、デコード済みの画像バッファ330に保存され、デコード済みの画像バッファ330は、デコード済みの画像331を他の画像の後続の動き補償のためのおよび/またはそれぞれ表示を出力するための参照画像として保存する。
デコーダ30は、例えば出力312を介して、ユーザに提示または閲覧させるために、デコード済みの画像311を出力するように構成されている。
[予測]
インター予測ユニット344は、インター予測ユニット244(特に、動き補償ユニット)と同一であってよく、イントラ予測ユニット354は、インター予測ユニット254と機能的に同一であってよく、エンコード済みの画像データ21から受信(例えば、エントロピーデコーディングユニット304によって、例えば、パースおよび/またはデコードすることによって)された区分化および/または予測パラメータまたはそれぞれの情報に基づいて分割または区分化の決定および予測を実行する。モードアプリケーションユニット360は、再構成画像、ブロック、またはそれぞれのサンプル(フィルタリング済みまたはフィルタリングされていない)に基づいてブロック毎に予測(イントラまたはインター予測)を実行し、予測ブロック365を取得するように構成されてよい。
ビデオスライスがイントラコード済み(I)スライスとしてコードされている場合、モードアプリケーションユニット360のイントラ予測ユニット354は、シグナリングされたイントラ予測モードおよび現在の画像の以前にデコード済みのブロックからのデータに基づいて、現在のビデオスライスの画像ブロックのための予測ブロック365を生成するように構成されている。ビデオ画像がインターコード済みの(すなわち、BまたはP)スライスとしてコードされている場合、モードアプリケーションユニット360のインター予測ユニット344(例えば、動き補償ユニット)は、動きベクトルおよびエントロピーデコーディングユニット304から受信された他の構文要素に基づいて、現在のビデオスライスのビデオブロックのための予測ブロック365を生成するように構成されている。インター予測では、予測ブロックは、複数の参照画像リストのうちの1つに含まれる複数の参照画像のうちの1つから生成されてよい。ビデオデコーダ30は、リスト0およびリスト1という参照フレームリストを、デフォルトの構成技法を用いて、DPB330に保存された参照画像に基づいて構成してよい。スライス(例えばビデオスライス)に加えて、または代わりに、タイルグループ(例えばビデオタイルグループ)および/またはタイル(例えばビデオタイル)を使用する実施形態について、または実施形態によって、同じまたは同様のことが適用されてもよく、例えば、ビデオは、I、PまたはBのタイルグループおよび/またはタイルを用いてコードされてもよい。
モードアプリケーションユニット360は、動きベクトルまたは関連情報および他の構文要素をパースすることによって、現在のビデオスライスのビデオブロックのための予測情報を決定するように構成され、デコードされている現在のビデオブロックのための予測ブロックを生成するために上記予測情報を用いる。例えば、モードアプリケーションユニット360は、受信された構文要素のいくつかを用いて、ビデオスライスのビデオブロックをコードするのに用いられた予測モード(例えば、イントラまたはインター予測)、インター予測スライスタイプ(例えば、Bスライス、Pスライス、またはGPBスライス)、スライスのための参照画像リストのうちの1つ若しくは複数に関する構成情報、スライスの各インターエンコード済みのビデオブロック毎の動きベクトル、スライスのインターコード済みのビデオブロック毎のインター予測ステータス、および現在のビデオスライス内のビデオブロックをデコードするための他の情報を決定する。スライス(例えばビデオスライス)に加えて、または代わりに、タイルグループ(例えばビデオタイルグループ)および/またはタイル(例えばビデオタイル)を使用する実施形態について、または実施形態によって、同じまたは同様のことが適用されてもよく、例えば、ビデオは、I、PまたはBのタイルグループおよび/またはタイルを用いてコードされてもよい。
図3に示すようなビデオデコーダ30の実施形態は、スライス(ビデオスライスとも称される)を使用して画像を区分および/またはデコードするようにさらに構成されていてもよく、画像は1つまたは複数のスライス(典型的には非重複)に区分されるか、またはそれを使用してデコードされてもよく、各スライスは1つまたは複数のブロック(例えばCTU)を備えてよい。
図3に示すようなビデオデコーダ30の実施形態は、タイルグループ(ビデオタイルグループとも称される)および/またはタイル(ビデオタイルとも称される)を使用して画像を区分化および/またはデコードするように構成されてもよく、画像は、1つまたは複数のタイルグループ(典型的には非重複)に区分化されるか、またはそれを使用してデコードされてもよく、各タイルグループは、例えば、1つまたは複数のブロック(例えばCTU)または、1つまたは複数のタイルを備えてよい。各タイルは、例えば、長方形の形状であってもよく、1つまたは複数のブロック(例えばCTU)、例えば、完全なまたは分数ブロックを備えてよい。
ビデオデコーダ30の他の変形を、エンコード済みの画像データ21をデコードするのに用いることができる。例えば、デコーダ30は、ループフィルタリングユニット320を用いずに、出力ビデオストリームを生成することができる。例えば、非変換ベースのデコーダ30は、特定のブロックまたはフレームのための逆変換処理ユニット312を用いずに、残差信号を直接的に逆量子化することができる。別の実装において、ビデオデコーダ30は、単一のユニットに組み合わされた逆量子化ユニット310および逆変換処理ユニット312を有することができる。
エンコーダ20およびデコーダ30において、現在のステップの処理結果は、さらに処理されて、その後、次のステップに出力されてよいことが理解されるべきである。例えば、補間フィルタリング、動きベクトル導出またはループフィルタリングの後に、クリップまたはシフト等のさらなる操作を、補間フィルタリング、動きベクトル導出またはループフィルタリングの処理結果に対して実行してよい。
図4は、本開示の一実施形態に係るビデオコーディング装置400の概略図である。ビデオコーディング装置400は、本明細書に記載の開示される実施形態を実施するのに好適なものである。実施形態において、ビデオコーディング装置400は、図1Aのビデオデコーダ30などのデコーダ、または、図1Aのビデオエンコーダ20などのエンコーダであり得る。
ビデオコーディング装置400は、データを受信するための入口ポート410(または、入力ポート410)および受信器ユニット(Rx)420と、データを処理するためのプロセッサ、ロジックユニット、または中央演算処理装置(CPU)430と、データを送信するための送信器ユニット(Tx)440および出口ポート450(または出力ポート450)と、データを保存するためのメモリ460とを備える。ビデオコーディング装置400は、光または電気信号の出力または入力のために、入口ポート410、受信器ユニット420、送信器ユニット440、および出口ポート450に連結されている光/電気(OE)コンポーネントおよび電気/光(EO)コンポーネントを備えてもよい。
プロセッサ430は、ハードウェアおよびソフトウェアによって実施される。プロセッサ430は、1つまたは複数のCPUチップ、コア(例えば、マルチコアプロセッサ)、FPGA、ASIC、およびDSPとして実装され得る。プロセッサ430は、入口ポート410、受信器ユニット420、送信器ユニット440、出口ポート450、およびメモリ460と通信する。プロセッサ430は、コーディングモジュール470を含む。コーディングモジュール470は、上記の開示された実施形態を実装する。例えば、コーディングモジュール470は、様々なコーディング操作を実装、処理、準備または提供する。従って、コーディングモジュール470を含めることにより、ビデオコーディング装置400の機能の大幅な改善が提供され、ビデオコーディング装置400の異なる状態への変換をもたらす。代替的には、コーディングモジュール470は、メモリ460に保存され、プロセッサ430によって実行される命令として実装される。
メモリ460は、1つまたは複数のディスク、テープドライブ、およびソリッドステートドライブを備えてよく、プログラムが実行のために選択された場合に係るプログラムを保存するとともに、プログラムの実行中に読み取られる命令およびデータを保存するために、オーバフローデータストレージデバイスとして使用されてよい。メモリ460は、例えば、揮発性および/または不揮発性であってよく、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、三値連想メモリ(TCAM)、および/または、スタティックランダムアクセスメモリ(SRAM)であってよい。
図5は、例示的な実施形態に係る図1によるソースデバイス12およびデスティネーションデバイス14のいずれかまたは両方として使用されてよい装置500の概略ブロック図である。
装置500におけるプロセッサ502は、中央演算処理装置とすることができる。代替的には、プロセッサ502は、現在既存のまたは今後開発される情報の操作または処理が可能な任意の他のタイプのデバイス、または複数のデバイスとすることができる。開示される実装は、示されるような単一のプロセッサ、例えばプロセッサ502を用いて実施できるが、1つまたは複数のプロセッサを使用して、速度および効率における利点を達成できる。
装置500におけるメモリ504は、一実装において、リードオンリメモリ(ROM)デバイスまたはランダムアクセスメモリ(RAM)デバイスとすることができる。任意の他の好適なタイプのストレージデバイスを、メモリ504として使用できる。メモリ504は、バス512を用いてプロセッサ502によってアクセスされるコードおよびデータ506を備えることができる。メモリ504は、オペレーティングシステム508およびアプリケーションプログラム510をさらに備えることができ、アプリケーションプログラム510は、プロセッサ502が本明細書に記載の方法を実行することを可能にする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム510は、アプリケーション1~Nを含むことができ、アプリケーション1~Nは、本明細書に記載の方法を実行するビデオコーディングアプリケーションをさらに含む。
装置500は、ディスプレイ518等の、1つまたは複数の出力デバイスも備えることができる。ディスプレイ518は、一例において、ディスプレイと、タッチ入力を検知するように動作可能なタッチセンサ素子とを組み合わせたタッチセンサ式ディスプレイであってよい。ディスプレイ518は、バス512を介してプロセッサ502に連結することができる。
単一のバスとして本明細書に示従、装置500のバス512は、複数のバスから構成することができる。さらに、セカンダリストレージ514は、装置500の他の構成要素に直接連結でき、または、ネットワークを介してアクセスでき、メモリカード等の単一の一体型ユニットまたは複数のメモリカード等の複数のユニットを含むことができる。従って、装置500は、多種多様な構成で実施することができる。
現代のビデオコーデックは、通常、最大変換サイズの制限を満たすインターブロックのサブブロック変換、ブロック内のイントラ区分化コーディングモード、変換ユニット区分化など、様々な変換ユニット区分化方法を含む。また、変換ユニットはさらなる分割をせずに直接にコード化できます。それ以降のステップでは、各変換ユニットまたはサブ変換ユニットにはCBFフラグのセットが含まれており、各色成分に現在のブロックの残差があるかどうかを対応して指定する。注目すべきのは、CBFフラグにはある程度の冗長性があり、各特定の変換ユニットの区分化の特定の特徴により利用できること。
本発明の実施形態では、CBFフラグシグナリングにおける冗長性除去の一般的な統一方式を提案する。
本開示では、第1の実施形態において、変換ユニット分割が使用されない場合、tu_cbf_lumaは、cu_cbfフラグが1に設定され、現在のTUの2つのクロマフラグが0に設定されている場合、cu_cbfフラグから導出することができる。この場合、tu_cbf_lumaは1に等しく設定され、シグナリングはされない。それ以外の場合、tu_cbf_lumaのシグナリングは通常の方式で実行される。本開示では、cu_cbfフラグが1に等しい場合、現在のコーディングユニットにtransform_tree構文構造が存在することを指定し、cu_cbfフラグが0に等しい場合、現在のコーディングユニットにtransform_tree構文構造が存在しないことを指定する。
第2の実施形態では、SBTによって変換ユニットが2つのサブ変換ユニットに分割され、そのうちの1つにtu_cbf_luma、tu_cbf_cb、tu_cbf_crフラグで制御される残差が含まれる場合、tu_cbf_lumaは以下の規則に従ってcu_cbfフラグから導出することができる。cu_cbfフラグが1に設定され、現在のTUの2つのクロマフラグが0に設定されている場合、tu_cbf_lumaは1に等しく設定され、シグナリングはされない。それ以外の場合、tu_cbf_lumaのシグナリングは通常の方式で実行される。
第3の実施形態では、最大変換ユニットサイズの制限を満たすために、変換ユニットがサブ変換ユニットによって分割される場合、変換ユニットの最後のサブ変換ユニットのluma cbfフラグは、以下の条件に従って導出される。cu_cbfフラグが1であり、現在の変換ユニットにおける以前にエンコードされた全てのサブ変換ユニットのtu_cbf_luma、tu_cbf_cb、tu_cbf_crの全てが0であり、現在のサブ変換ユニットのtu_cbf_cb、tu_cbf_crが0である場合、tu_cbf_lumaは1に等しく設定され、シグナリングはされない。それ以外の場合、tu_cbf_lumaのシグナリングは通常の方式で実行される。
本開示の実施形態では、コーディング効率を向上させ、CBFフラグシグナリングの統一的なメカニズムを提案する。従って、CBFフラグのシグナリングの統一的なメカニズムが提案されている。
CBFフラグとサブ変換ユニット区分化ツールの関係から、ビットストリームの冗長性を除去することができる。
言い換えれば、本開示の実施形態は、VVC4本明細書とVTM4.0.1SWの間のCBFフラグシグナリングの一部の不整合を取り除くことを目的とした変更を提案する。第1の態様では、VTM SWから、本明細書に提示されていない変換ユニット深度に基づく階層的なクロマCBFシグナリングを削除し、本明細書にSWに提示されているクロマCBFフラグに基づく通常のTUとSBT TUのための欠落したルマCBFフラグ導出方法を含めることを提案する。第2の態様は、第1の態様の上に提案され、既存の全てのルマCBFフラグ導出方法の統一設計を前提としている。
VVC4で表現されるTUの可能性は4つある。
1.通常のTUはCUサイズに等しい(分割なし)、
2.SBT TUの区分化、
3.ISP TUの区分化、
4.最大変換サイズの制限によるTUの区分化。
以下の表はその可能性を示している。
Figure 2023085351000018
Figure 2023085351000019
表1と表2によると、ルマとクロマのCBFシグナリング両方は互いに独立して実行され、クロマCBFフラグには階層的な依存関係がないことに留意されよう。
SWの観点から、VTM4.0.1は上記の態様両方を含んでいる。
階層的クロマCBFシグナリング方法は、VTM4.0.1でテストされ、コーディング効率への無視できない影響が実証される。一方で、この特徴をサポートするためには、SWと本明細書の両方で自明ではないロジックを追加する必要がある。
一実施形態において、SWの階層的なクロマCBFシグナリング方法を削除し、スペックのルマCBFの導出に含めることを提案する。
以下の表は、変更された構文表を示している。
Figure 2023085351000020
別の実施形態では、最大のTU制限を満たすために分割されたTUに対して、同様の方法を適用してルマCBFを導出することを提案する。この統合は、ISPのための最後のルマCBF導出の既存のメカニズムを共有することができる。以下の表は、提案された変更を示している。
Figure 2023085351000021
本発明の実施形態では、コーディング効率の向上、本明細書の簡素化、CBFフラグシグナリングの統一的なメカニズムを提案することができる。従って、CBFフラグのシグナリングの統一的なメカニズムが提案されている。
CBFフラグとサブ変換ユニット区分化ツールの関係から、ビットストリームの冗長性を取り除くことができる。
さらに換言すれば、VVC4でTUが表現される可能性は4つあるということである。
1.通常のTUはCUサイズに等しい(分割なし)、
2.SBT TUの区分化、
3.ISP TUの区分化、
4.最大変換サイズの制限によるTUの区分化。
以下の表はその可能性を示している。
Figure 2023085351000022
Figure 2023085351000023
表1と表2によると、ルマとクロマのCBFシグナリング両方は互いに独立して実行され、クロマCBFフラグには階層的な依存関係がないことに留意されよう。
SWの観点から、VTM4.0.1は上記の態様両方を含んでいる。
階層的クロマCBFシグナリング方法は、VTM4.0.1でテストされ、コーディング効率への無視できない影響が実証される。一方で、この特徴をサポートするためには、SWと本明細書の両方で自明ではないロジックを追加する必要がある。
一実施形態において、SWの階層的なクロマCBFシグナリング方法を削除し、スペックのルマCBFの導出に含めることを提案する。
以下の表は、変更された構文表を示している。
Figure 2023085351000024
本実施形態では、tu_cbf_luma[x0][y0]フラグ導出方法は、1)TUがCUに等しい場合の通常の場合と、2)CBFフラグを含むサブTUのSBTの場合に実行する。導出処理は、ブロックタイプ(CuPredMode[x0][y0])と、tu_cbf_luma[x0][y0]以前のビットストリームで既に送信されているCbとCrのCBFフラグ(tu_cbf_cb[x0][y0]およびtu_cbf_cr[x0][y0])の値に基づいて実行される。なお、最大変換ユニットサイズの制限を満たすためにサブTUに分割されているTUには、本導出技術は適用されない。
本発明の実施形態では、コーディング効率の向上、本明細書の簡素化、CBFフラグシグナリングの統一的なメカニズムを提案することができる。
CBFフラグとサブ変換ユニット区分化ツールの関係から、ビットストリームの冗長性を取り除くことができる。
さらに別の実施形態では、前述の実施形態に関連して、SWの階層的なクロマCBFシグナリング方法を削除し、スペックにルマCBFの導出を含めることが提案されている。
次の表は、変換ユニット構文の変更された構文表を示しており、すなわち、変換ユニット構文は以下の表に従ってシグナリングされる。
Figure 2023085351000025
本実施形態では、tu_cbf_luma[x0][y0]フラグ導出方法は、1)TUがCUに等しい場合の通常の場合と、2)CBFフラグを含むサブTUのSBTの場合に実行する。導出処理は、ブロックタイプ(CuPredMode[x0][y0])と、tu_cbf_luma[x0][y0]以前のビットストリームで既に送信されているCbとCrのCBFフラグ(tu_cbf_cb[x0][y0]およびtu_cbf_cr[x0][y0])の値に基づいて実行される。なお、最大変換ユニットサイズの制限を満たすためにサブTUに分割されているTUには、本導出技術は適用されない。
本実施形態では、本発明の他の実施形態と同様に、コーディング効率の向上、本明細書の簡素化、CBFフラグシグナリングの統一的なメカニズムを提案することができる。
また、本実施形態では、CBFフラグとサブ変換ユニット区分化ツールの関係から、ビットストリームの冗長性を取り除くことができる。
図6は、CBFフラグのシグナリング方法の一実施形態を示すブロック図である。図6は、通常のTUがCUサイズと等しく、そのTUがSBT区分化によって縦方向に2つのサブTU:サブTU0およびサブTU1、に分割される場合を示している。ここで、SBTの設計によれば、1つのサブTUのみが非ゼロのtu_cbf_cb、tu_cbf_cr、tu_cbf_lumaフラグを有してよい。図6の例では、サブTU0は、非ゼロのtu_cbf_cb、tu_cbf_cr、tu_cbf_lumaフラグを有してもよい。コーディングユニット全体のcu_cbfフラグが1に等しく、サブTU0のtu_cbf_cb、tu_cbf_crの両方がシグナリングされて0になっていると仮定すると、tu_cbf_lumaの値は、明示的なシグナリングなしに1に導くことができる。
これは、図10にもさらに示されており、TUがCUに等しく、分割がない場合と、パイプラインの分割がある場合とが示されている。
図7は、本開示によるデコーディング装置またはエンコーディング装置が実施するビデオコーディング方法の各ステップを示すフローチャートである。図7では、本方法は、ビットストリームを取得することを定義するステップ1601を含み、ビットストリームは、変換ユニット構文を含む。ステップ1601について、変換ユニット構文は、現在の変換ユニットまたは現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対して、少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)を有し、少なくとも2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、あるブロックが対応する色平面に残差を有するかどうかを指定するものである。図7は、さらに、ルマCBFフラグの値を導出するステップ1602を示す。ステップ1602におけるルマCBFフラグの導出は、コーディングユニットCBFフラグ、cu_cbfフラグの値、および少なくとも2つのクロマCBFフラグの値の1つまたは任意の組み合わせ、および/または現在の変換ユニット内の現在のサブ変換ユニットの位置、および/または現在のサブ変換ユニットよりも前の現在の変換ユニット内のサブ変換ユニットに対応するルマCBFフラグおよびクロマCBFフラグの値に基づいて行われる。本開示において、ブロックが残差を有するとは、ブロックが0にならない値の変換係数を少なくとも1つ含むことを意味する。
図8は、本開示によるエンコーダ20を示す図である。図8において、エンコーダ20は、ビットストリームを取得するように構成された取得ユニット2001を備え、ビットストリームは、変換ユニット構文を含んでいる。取得ユニット2001は、変換ユニット構文に従って、現在の変換ユニットまたは現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得するように構成され、少なくとも2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する。エンコーダ20はさらに、少なくとも以下に基づいて、ルマCBFフラグの値を導出するように構成された導出ユニット2003、を備える:コーディングユニットCBFフラグの値、cu_cbfフラグの値、および少なくとも2つのクロマCBFフラグの値。1つまたは複数の取得ユニットを使用してもよいことは理解されるべきである。
図9は、本開示によるデコーダ30を示す図である。図9において、デコーダ30は、ビットストリームを取得するように構成された取得ユニット3001を備え、ビットストリームは、変換ユニット構文を含んでいる。取得ユニット3001は、変換ユニット構文に従って、現在の変換ユニットまたは現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得するように構成され、少なくとも2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する。デコーダ30はさらに、少なくとも以下に基づいて、ルマCBFフラグの値を導出するように構成された導出ユニット3003、を備える:コーディングユニットCBFフラグの値、cu_cbfフラグの値、および少なくとも2つのクロマCBFフラグの値。1つまたは複数の取得ユニットを使用してもよいことは理解されるべきである。
[数学演算子]
このアプリケーションで使用されている数学演算子は、Cプログラミング言語で使用されているものと同様である。しかし、整数除算や算術シフト演算の結果がより正確に定義され、また、指数演算や実数除算などの追加演算も定義されている。例えば、「the first」は0番目、「the second」は1番目というように、一般的に0から始まる。
[算術演算子]
以下のように算術演算子が定義されている:
Figure 2023085351000026
[論理演算子]
以下のように論理演算子が定義されている:
Figure 2023085351000027
関係演算子
以下のように関係演算子が定義されている:
Figure 2023085351000028
関係演算子が、値「na」(非該当)をアサインされている構文要素または変数に適用された場合、値「na」は、その構文要素または変数の区別的な値として扱われる。値「na」は、任意の他の値に等しくないとみなされる。
[ビット単位演算子]
以下のビット単位演算子が次のように定義される:
Figure 2023085351000029
[代入演算子]
以下のように算術演算子が定義されている:
Figure 2023085351000030
[範囲表記]
値の範囲を指定するには、次のような記法を用いる:
Figure 2023085351000031
[数学関数]
以下の数学関数が定義されている:
Figure 2023085351000032
[演算順序の優先順位]
式の中での優先順位を括弧で明示しない場合、以下のルールが適用される:
-優先順位の高い演算は、優先順位の低い演算よりも先に評価される。
-同じ優先順位の演算は、左から右に向かって順に評価される。
下の表は、演算の優先順位を最も高いものから最も低いものへと示しており、表の順位が高いほど優先順位が高いことを示している。
Cプログラミング言語でも使用されている演算子については、本明細書で使用されている優先順位は、Cプログラミング言語で使用されているものと同じである。
Figure 2023085351000033
演算の優先順位が最も高いもの(表の上部)から最も低いもの(表の下部)までである。
[論理演算のテキスト記述]
本テキストにおいて、次の形式のような論理演算の記述が数学的に記述されることになる:
Figure 2023085351000034
本テキストにおいて、それぞれの「If....Otherwise, if...Otherwise,...」の記述は、「...as follows」または「...the following applies」で始まり、すぐに「If...」が続く。「If .... Otherwise, if ... Otherwise,...」の最後の条件は常に「Otherwise, ...」である。交互に配置された「If ....Otherwise, if ... Otherwise,...」の記述は、「... as follows」または「... the following applies」と末尾の「Otherwise,...」を一致させることで識別できる。
本テキストでは、次の形式のような論理演算の記述が数学的に記述されることになる:
Figure 2023085351000035
本テキストでは、次の形式のような論理演算の記述が数学的に記述されることになる:
Figure 2023085351000036
本発明の実施形態は、主にビデオコーディングに基づいて記載されているが、本明細書に記載のコーディングシステム10、エンコーダ20、およびデコーダ30(および対応してシステム10)の実施形態、並びに他の実施形態は、静止画像処理またはコーディング、すなわち、ビデオコーディングにおけるような任意の前のまたは連続する画像とは独立した個々の画像の処理またはコーディングのために構成されてもよいことに留意すべきである。一般に、画像処理コーディングが単一の画像17に限定される場合、インター予測ユニット244(エンコーダ)および344(デコーダ)だけは利用可能でなくてよい。ビデオエンコーダ20およびビデオデコーダ30の全ての他の機能(ツールまたは技術とも称される)は、静止画像処理、例えば、残差計算204/304、変換206、量子化208、逆量子化210/310、(逆)変換212/312、区分化262/362、イントラ予測254/354、および/またはループフィルタリング220、320、並びにエントロピーコーディング270およびエントロピーデコーディング304に等しく用いられ得る。
例えばエンコーダ20およびデコーダ30の実施形態、並びに、例えばエンコーダ20およびデコーダ30を参照して本明細書に記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせで実施されてよい。ソフトウェアにおいて実施される場合、機能は、コンピュータ可読媒体上に保存されるか、または、通信媒体を介して1つまたは複数の命令若しくはコードとして送信され、ハードウェアベースの処理ユニットによって実行されてよい。コンピュータ可読媒体は、データ記憶媒体等の有形の媒体に対応するコンピュータ可読記憶媒体、または、例えば通信プロトコルに従った1つの場所から別の場所へのコンピュータプログラムの移動を容易にする任意の媒体を含む通信媒体を含んでよい。このように、コンピュータ可読媒体は、一般に、(1)非一時的な有形コンピュータ可読記憶媒体、または、(2)信号若しくは搬送波等の通信媒体に対応してよい。データ記憶媒体は、本開示に説明されている技術の実装のための命令、コード、および/またはデータ構造を取得するために1つまたは複数のコンピュータまたは1つまたは複数のプロセッサによってアクセスできる任意の利用可能な媒体であってよい。コンピュータプログラム製品は、コンピュータ可読媒体を含んでよい。
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM若しくは他の光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令若しくはデータ構造の形の所望のプログラムコードを保存するのに使用でき、コンピュータによってアクセスできる、任意の他の媒体を含むことができる。さらに、あらゆる接続がコンピュータ可読媒体と呼ぶのに適切である。例えば、同軸ケーブル、光ファイバケーブル、ツイストペアデジタル加入者線(DSL)、または赤外線、ラジオ、およびマイクロ波等の無線技術を使用して、ウェブサイト、サーバ、または他のリモートソースから命令が伝送される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、ラジオおよびマイクロ波等の無線技術は、媒体の定義に含まれる。一方、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まず、代わりに非一時的有形記憶媒体を指すことを理解されたい。本明細書で使用されるディスク(disk and disc)は、コンパクトディスク(CD)、レーザディスク、光学ディスク、デジタル多用途ディスク(DVD)、フロッピディスク、およびブルーレイディスクを含み、通例、ディスク(disk)は、データを磁気的に再現するものであり、ディスク(disc)は、レーザを用いてデータを光学的に再現するものである。上記の組み合わせも、コンピュータ可読媒体の範囲に含まれるべきである。
命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、または他の等価な集積若しくはディスクリート論理回路等の、1つまたは複数のプロセッサによって実行されてよい。従って、本明細書で使用される「プロセッサ」という用語は、前述の構造のいずれか、または、本明細書に記載の技術の実装に好適な任意の他の構造を指してよい。加えて、いくつかの態様では、本明細書に記載の機能は、エンコーディングおよびデコーディングのために構成されている専用ハードウェアおよび/またはソフトウェアモジュール内に提供されるか、または、組み合わされたコーデックに組み込まれてよい。加えて、本技術は、1つ若しくは複数の回路またはロジック要素において完全に実施することができる。
本開示の技術は、無線ハンドセット、集積回路(IC)またはICのセット(例えば、チップセット)を含む、多種多様なデバイスまたは装置において実施してよい。様々な構成要素、モジュール、またはユニットが、開示された技術を実行するように構成されているデバイスの機能的態様を強調するように本開示において記載されているが、異なるハードウェアユニットによる実現は必ずしも要求されない。むしろ、上述したように、好適なソフトウェアおよび/またはファームウェアと連動して、様々なユニットがコーデックハードウェアユニットにして組み合わされるか、または、上述したように、1つまたは複数のプロセッサを含む相互運用ハードウェアユニットの集合によって提供されてよい。
本開示では、以下の13の態様が開示されている。
第1の態様は、デコーディング装置またはエンコーディング装置によって実施されるコーディング方法を提供する。前記方法は、
ビットストリームを取得する段階を備え、前記ビットストリームは、変換ユニット構文を含む(一例として、変換ユニット構文要素は、ブロック全体に対してコーディングされるか、SBT(インターブロックのサブブロック変換)によって得られる複数のサブ変換ユニットに対してコーディングされるか、または、最大変換ユニットサイズ制限を満たすためにコーディングされる)、
前記構文は、クロマブロックのための少なくとも2つのCBFフラグを含み(一例として、変換ユニットの構文は、2つのクロマCBFフラグ:tu_cbf_cbおよびtu_cbf_cb(各クロマ平面に1つのフラグ)を含む変換ユニットまたはサブ変換ユニットのいずれかに対応する)、クロマCBFフラグは、特定のブロックが対応する色平面に残差を持つかどうかを指定する、
cu_cbfフラグの値、現在の変換ユニットまたはサブ変換ユニットに対応する2つのクロマCBFフラグの値、変換ユニット内のサブ変換ユニットの位置、現在の変換ユニット内の前のサブ変換ユニットに対応するルマCBFフラグおよびクロマCBFフラグの値のいずれかまたは任意の組み合わせに基づいて、ルマCBFフラグtu_cbf_lumaの値を導出する段階を、さらに備える。
第2の態様は、第1の態様の方法を提供し、ルマCBFフラグの値(例えば、tu_cbf_lumaフラグ)は、cu_cbfフラグの値と、現在の変換ユニットに対応する2つのクロマCBFフラグの値とに基づいて導出される。
第3の態様は、第2の態様の方法を提供し、現在の変換ユニットがサブ変換ユニットに分割されておらず、cu_cbfフラグの値が1であり、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0であり、次に現在の変換ユニットのtu_cbf_lumaフラグの値が1に導出される。
第4の態様は、第3の態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000037
第5の態様は、第1または第2の態様による方法を提供し、現在の変換ユニットがSBTによって分割されるとき、非ゼロのCBFフラグを許容するサブ変換ユニットのtu_cbf_lumaフラグの値は、以下の条件に従って導出される:
-cu_cbfフラグの値が1であり、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0である場合、現在のサブ変換ユニットのtu_cbf_lumaフラグの値が1に導出される。
第6の態様は、第1から第5の態様のいずれか1つによる方法を提供し、変換ユニット構文表が、以下の表に従ってシグナリングされる。
Figure 2023085351000038
第7の態様は、第1または第2の態様の方法を提供し、最大変換ユニットサイズ制限を満たすために現在の変換ユニットがサブ変換ユニットによって分割されるとき、変換ユニットの最後のサブ変換ユニットに対するtu_cbf_lumaフラグの値は、以下の条件に従って導出される:
-cu_cbfフラグの値が1であり、現在の変換ユニットにおいて以前にコード化されたすべてのサブ変換ユニットのtu_cbf_lumaフラグ、tu_cbf_cbフラグ、tu_cbf_crフラグの値が0であり、現在のサブ変換ユニットのtu_cbf_cbフラグの値が0であり、現在のサブ変換ユニットのtu_cbf_crフラグの値が0である場合には、tu_cbf_lumaフラグの値が1に導出される。
第8の態様は、第1から第7の態様のいずれか1つの態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000039
第9の態様は、第1から第8の態様のいずれか1つの態様の方法を提供し、コーディングユニット構文表および変換ツリー構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000040
Figure 2023085351000041
第10の態様は、第1から第9の態様のいずれか1つに記載の方法を実行するための処理回路を備えるエンコーダ(20)を提供する。
第11の態様では、第1から第9の態様のいずれか1つに記載の方法を実施するための処理回路を備えるデコーダ(30)を提供する。
第12の態様は、第1から第9の態様のいずれか1つに記載の方法を実行するためのプログラムコードを含むコンピュータプログラム製品を提供する。
第13の態様は、デコーダまたはエンコーダを提供し、
1つまたは複数のプロセッサと、
前記プロセッサに結合され、前記プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラミングは、前記プロセッサによって実行されると、第1から第9の態様のいずれか1つによる方法を実行するように前記デコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。
また、本開示は、以下の13の態様を含む。
第1の態様は、デコーディング装置またはエンコーディング装置によって実施されるコーディング方法を提供する。前記方法は、
ビットストリームを取得する段階を備え、前記ビットストリームは、変換ユニット構文を含む(一例として、変換ユニット構文要素は、ブロック全体に対してコーディングされるか、SBT(インターブロックのサブブロック変換)によって得られる複数のサブ変換ユニットに対してコーディングされるか、または、最大変換ユニットサイズ制限を満たすためにコーディングされる)、
前記構文は、クロマブロックのための少なくとも2つのCBFフラグを含み(一例として、変換ユニットの構文は、2つのクロマCBFフラグ:tu_cbf_cbおよびtu_cbf_cb(各クロマ平面に1つのフラグ)を含む変換ユニットまたはサブ変換ユニットのいずれかに対応する)、クロマCBFフラグは、特定のブロックが対応する色平面に残差を持つかどうかを指定する、
cu_cbfフラグの値、現在の変換ユニットまたはサブ変換ユニットに対応する2つのクロマCBFフラグの値、変換ユニット内のサブ変換ユニットの位置、現在の変換ユニット内の前のサブ変換ユニットに対応するルマCBFフラグおよびクロマCBFフラグの値のいずれかまたは任意の組み合わせに基づいて、ルマCBFフラグtu_cbf_lumaの値を導出する段階を、さらに備える。
第2の態様は、第1の態様の方法を提供し、ルマCBFフラグの値(例えば、tu_cbf_lumaフラグ)は、cu_cbfフラグの値と、現在の変換ユニットに対応する2つのクロマCBFフラグの値とに基づいて導出される。
第3の態様は、第2の態様の方法を提供し、現在の変換ユニットがサブ変換ユニットに分割されておらず、cu_cbfフラグの値が1であり、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0であり、次に現在の変換ユニットのtu_cbf_lumaフラグの値が1に導出される。
第4の態様は、第3の態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000042
第5の態様は、第1または第2の態様による方法を提供し、現在の変換ユニットがSBTによって分割されるとき、非ゼロのCBFフラグを許容するサブ変換ユニットのtu_cbf_lumaフラグの値は、以下の条件に従って導出される:
-cu_cbfフラグの値が1であり、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0である場合、現在のサブ変換ユニットのtu_cbf_lumaフラグの値が1に導出される。
第6の態様は、第1から第5の態様のいずれか1つによる方法を提供し、変換ユニット構文表が、以下の表に従ってシグナリングされる。
Figure 2023085351000043
第7の態様は、第1または第2の態様の方法を提供し、最大変換ユニットサイズ制限を満たすために現在の変換ユニットがサブ変換ユニットによって分割されるとき、変換ユニットの最後のサブ変換ユニットに対するtu_cbf_lumaフラグの値は、以下の条件に従って導出される:
-cu_cbfフラグの値が1であり、現在の変換ユニットにおいて以前にコード化されたすべてのサブ変換ユニットのtu_cbf_lumaフラグ、tu_cbf_cbフラグ、tu_cbf_crフラグの値が0であり、現在のサブ変換ユニットのtu_cbf_cbフラグの値が0であり、現在のサブ変換ユニットのtu_cbf_crフラグの値が0である場合には、tu_cbf_lumaフラグの値が1に導出される。
第8の態様は、第1から第7の態様のいずれか1つの態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000044
第9の態様は、第1から第8の態様のいずれか1つの態様の方法を提供し、コーディングユニット構文表および変換ツリー構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000045
Figure 2023085351000046
第10の態様は、第1から第9の態様のいずれか1つに記載の方法を実行するための処理回路を備えるエンコーダ(20)を提供する。
第11の態様では、第1から第9の態様のいずれか1つに記載の方法を実施するための処理回路を備えるデコーダ(30)を提供する。
第12の態様は、第1から第9の態様のいずれか1つに記載の方法を実行するためのプログラムコードを含むコンピュータプログラム製品を提供する。
第13の態様は、デコーダまたはエンコーダを提供し、
1つまたは複数のプロセッサと、
前記プロセッサに結合され、前記プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラミングは、前記プロセッサによって実行されると、第1から第9の態様のいずれか1つによる方法を実行するように前記デコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。
また、本開示は、以下の13の態様を含む。
第1の態様は、デコーディング装置またはエンコーディング装置によって実施されるコーディング方法を提供する。前記方法は、
ビットストリームを取得する段階を備え、前記ビットストリームは、変換ユニット構文を含む(一例として、変換ユニット構文要素は、ブロック全体に対してコーディングされるか、SBT(インターブロックのサブブロック変換)によって得られる複数のサブ変換ユニットに対して符号化されるか、または、最大変換ユニットサイズ制限を満たすために符号化される)、
前記構文は、クロマブロックのための少なくとも2つのCBFフラグを含み(一例として、変換ユニットの構文は、2つのクロマCBFフラグ:tu_cbf_cbおよびtu_cbf_cb(各クロマ平面に1つのフラグ)を含む変換ユニットまたはサブ変換ユニットのいずれかに対応する)、クロマCBFフラグは、特定のブロックが対応する色平面に残差を持つかどうかを指定する、
cu_cbfフラグの値、現在の変換ユニットまたはサブ変換ユニットに対応する2つのクロマCBFフラグの値、変換ユニット内のサブ変換ユニットの位置、現在の変換ユニット内の前のサブ変換ユニットに対応するルマCBFフラグおよびクロマCBFフラグの値のいずれかまたは任意の組み合わせに基づいて、ルマCBFフラグtu_cbf_lumaの値を導出する段階を、さらに備える。
第2の態様は、第1の態様の方法を提供し、ルマCBFフラグの値(例えば、tu_cbf_lumaフラグ)は、cu_cbfフラグの値と、現在の変換ユニットに対応する2つのクロマCBFフラグの値とに基づいて導出される。
第3の態様は、第2の態様の方法を提供し、現在の変換ユニットがサブ変換ユニットに分割されていない場合、ビットストリームにおいてcu_cbfフラグがシグナリングされ、cu_cbfフラグの値が1に等しく、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0であり、次に現在の変換ユニットのtu_cbf_lumaフラグの値が1に導出される。
第4の態様は、第3の態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000047
第5の態様は、第3の態様による方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000048
第6の態様は、第1または第2の態様の方法を提供し、現在の変換ユニットがSBTによって分割されるとき、非ゼロのCBFフラグを許容するサブ変換ユニットのtu_cbf_lumaフラグの値は、以下の条件に従って導出される:
-cu_cbfフラグの値が1であり、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0であり、次に現在のサブ変換ユニットのtu_cbf_lumaフラグの値は1に導出される。
第7の態様は、第1から第6の態様のいずれか1つの態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000049
第8の態様は、第1から第6の態様のいずれか1つの態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000050
第9の態様は、第1から第8の態様のいずれか1つの態様の方法を提供し、コーディングユニット構文表および変換ツリー構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000051
Figure 2023085351000052
第10の態様は、第1から第9の態様のいずれか1つに記載の方法を実行するための処理回路を備えるエンコーダ(20)を提供する。
第11の態様では、第1から第9の態様のいずれか1つに記載の方法を実施するための処理回路を備えるデコーダ(30)を提供する。
第12の態様は、第1から第9の態様のいずれか1つに記載の方法を実行するためのプログラムコードを含むコンピュータプログラム製品を提供する。
第13の態様は、デコーダまたはエンコーダを提供し、
1つまたは複数のプロセッサと、
前記プロセッサに結合され、前記プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラミングは、前記プロセッサによって実行されると、第1から第9の態様のいずれか1つによる方法を実行するように前記デコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。
本開示は、さらに以下の14の態様を含む。
第1の態様は、デコーディング装置またはエンコーディング装置によって実施されるコーディング方法を提供する。前記方法は、
ビットストリームを取得する段階を備え、前記ビットストリームは、変換ユニット構文を含む(一例として、変換ユニット構文要素は、ブロック全体に対してコーディングされるか、SBT(インターブロックのサブブロック変換)によって得られる複数のサブ変換ユニットに対してコーディングされるか、または、最大変換ユニットサイズ制限を満たすためにコーディングされる)、
前記構文は、クロマブロックのための少なくとも2つのCBFフラグを含み(一例として、変換ユニットの構文は、2つのクロマCBFフラグ:tu_cbf_cbおよびtu_cbf_cb(各クロマ平面に1つのフラグ)を含む変換ユニットまたはサブ変換ユニットのいずれかに対応する)、クロマCBFフラグは、特定のブロックが対応する色平面に残差を持つかどうかを指定する、
cu_cbfフラグの値、現在の変換ユニットまたはサブ変換ユニットに対応する2つのクロマCBFフラグの値、変換ユニット内のサブ変換ユニットの位置、現在の変換ユニット内の前のサブ変換ユニットに対応するルマCBFフラグおよびクロマCBFフラグの値のいずれかまたは任意の組み合わせに基づいて、ルマCBFフラグtu_cbf_lumaの値を導出する段階を、さらに備える。
第2の態様は、第1の態様の方法を提供し、ルマCBFフラグの値(例えば、tu_cbf_lumaフラグ)は、cu_cbfフラグの値と、現在の変換ユニットに対応する2つのクロマCBFフラグの値とに基づいて導出される。
第3の態様は、第2の態様の方法を提供し、現在の変換ユニットがサブ変換ユニットに分割されていない場合、ビットストリームにおいてcu_cbfフラグがシグナリングされ、cu_cbfフラグの値が1に等しく、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0であり、次に現在の変換ユニットのtu_cbf_lumaフラグの値が1に導出される。
第4の態様は、第3の態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000053
第5の態様は、第3の態様による方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000054
第6の態様は、第1の態様または第2の態様による方法を提供し、現在の変換ユニットがSBTによって分割されるとき、非ゼロのCBFフラグを許容するサブ変換ユニットのtu_cbf_lumaフラグの値は、以下の条件に従って導出される:
-cu_cbfフラグの値が1であり、tu_cbf_cbフラグの値が0であり、tu_cbf_crフラグの値が0である場合、現在のサブ変換ユニットのtu_cbf_lumaフラグの値が1に導出される。
第7の態様は、第1から第6の態様のいずれか1つの態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000055
第8の態様は、第1から第6の態様の方法を提供し、変換ユニット構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000056
第9の態様は、第1から第8の態様のいずれか1つの態様の方法を提供し、コーディングユニット構文表および変換ツリー構文表が以下の表に従ってシグナリングされる。
Figure 2023085351000057
Figure 2023085351000058
第10の態様は、第1から第9の態様のいずれか1つの態様の方法であって、tu_cbf_luma[x0][y0]の値が存在しない場合、およびtu_cbf_luma[x0][y0]の値が以下の条件に従って導出される:
Figure 2023085351000059
第11の態様では、第1から第10の態様のいずれか1つに記載の方法を実施するための処理回路を備えるエンコーダ(20)を提供する。
第12の態様は、第1から第10の態様のいずれか1つに記載の方法を実行するための処理回路を備えるデコーダ(30)を提供する。
第13の態様は、第1から第10の態様のいずれか1つに記載の方法を実行するためのプログラムコードを含むコンピュータプログラム製品を提供する。
第14の態様は、デコーダまたはエンコーダを提供し、
1つまたは複数のプロセッサと、
前記プロセッサに結合され、前記プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラミングは、前記プロセッサによって実行されると、第1から第10の態様のいずれか1つによる方法を実行するように前記デコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える。

[他の考えられる項目]
[項目1]
デコーディング装置またはエンコーディング装置により実施されるビデオコーディング方法であって、
ビットストリームを取得する段階であって、前記ビットストリームは、変換ユニット構文を備える、取得する段階と、
前記変換ユニット構文に従って、現在の変換ユニットまたは前記現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得する段階であって、少なくとも前記2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する、取得する段階と、
コーディングユニットCBFフラグの値、cu_cbfフラグの値、および少なくとも前記2つのクロマCBFフラグの値に少なくとも基づいて、ルマCBFフラグの値を導出する段階と、
を備える、方法。
[項目2]
前記ルマCBFフラグの値は、前記現在の変換ユニット内の前記現在のサブ変換ユニットの位置に基づいてさらに導出される、項目1に記載の方法。
[項目3]
前記変換ユニット構文は、少なくとも2つのクロマCBFフラグを備え、変換ユニット構文に従って、少なくとも2つのクロマCBFフラグの値を取得する段階は、
前記変換ユニット構文から少なくとも2つのクロマCBFフラグの値を取得する段階を備える、項目1または2に記載の方法。
[項目4]
前記ルマCBFフラグは、tu_cbf_lumaフラグである、項目1から3のいずれか一項に記載の方法。
[項目5]
前記変換ユニット構文において、変換ユニットの構文要素は、
ブロック全体にシグナリングされる、または
インターブロックのサブブロック変換(SBT)で取得された複数のサブ変換ユニットにシグナリングされる、または
最大変換ユニットサイズの制限を満たすようにシグナリングされる
項目1から4のいずれか一項に記載の方法。
[項目6]
前記現在の変換ユニットまたは前記現在のサブ変換ユニットは、2つのクロマCBFフラグを含み、各クロマ平面に対してそれぞれ1つのフラグを持つ
項目1から5のいずれか一項に記載の方法。
[項目7]
前記現在の変換ユニットがサブ変換ユニットに分割されていない場合、前記ビットストリームで前記cu_cbfフラグがシグナリングされ、前記cu_cbfフラグの値が1に等しく、tu_cbf_cbフラグの値が0で、tu_cbf_crフラグの値が0であり、次に現在の変換ユニットのtu_cbf_lumaフラグの値が1に導出される、項目1から6のいずれか一項に記載の方法。
[項目8]
前記変換ユニット構文に対応する変換ユニット構文表が、
Figure 2023085351000060
に従ってシグナリングされる、項目1から7のいずれか一項に記載の方法。
[項目9]
前記変換ユニット構文に対応する変換ユニット構文表が、
Figure 2023085351000061
に従ってシグナリングされる、項目1から7のいずれか一項に記載の方法。
[項目10]
前記現在の変換ユニットが前記サブブロック変換(SBT)によって分割されている場合、非ゼロのCBFフラグを許容する前記サブ変換ユニットの前記tu_cbf_lumaフラグの値は、以下の条件に従って導出される:
前記cu_cbfフラグの値が1であり、前記tu_cbf_cbフラグの値が0であり、前記tu_cbf_crフラグの値が0である場合、前記現在のサブ変換ユニットの前記tu_cbf_lumaフラグの値は1であると導出される
項目1から6のいずれか一項に記載の方法。
[項目11]
前記変換ユニット構文に対応する変換ユニット構文表が
Figure 2023085351000062
に従ってシグナリングされる、項目1から7、および10のいずれか一項に記載の方法。
[項目12]
前記変換ユニット構文に対応する変換ユニット構文表が
Figure 2023085351000063
に従ってシグナリングされる、項目1から7、および10のいずれか一項に記載の方法。
[項目13]
前記変換ユニット構文に対応する変換ツリー構文表が以下の表に従ってシグナリングされ、
Figure 2023085351000064
前記変換ツリー構文表に対応するコーディングユニット構文表が以下の表にシグナリングされる、
Figure 2023085351000065
項目1から7、および10のいずれか一項に記載の方法。
[項目14]
treeTypeは、SINGLE_TREEに等しい、項目8、9および11から13のいずれか一項に記載の方法。
[項目15]
前記ルマCBFフラグがtu_cbf_lumaフラグであり、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、
Figure 2023085351000066
に従って導出される、項目1から14のいずれか一項に記載の方法。
[項目16]
前記ルマCBFフラグがtu_cbf_lumaフラグであり、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、
Figure 2023085351000067
に従って導出される、項目1から14のいずれか一項に記載の方法。
[項目17]
1に等しいtu_cbf_luma[x0][y0]は、ルマ変換ブロックが0に等しくない1つまたは複数の変換係数レベルを含むことを指定し、配列インデックスx0、y0は、画像の左上のルマサンプルに対する、考慮された変換ブロックの左上のルマサンプルの位置(x0,y0)を指定する、変換係数レベルは、変換係数値の計算のためにスケーリングする前の前記デコーディング処理において、特定の2次元周波数インデックスに関連する値を表す整数量である、項目1から16のいずれか一項に記載の方法。
[項目18]
項目1から17のいずれか一項に記載の方法を実行するための処理回路を備える、エンコーダ。
[項目19]
項目1から17のいずれか一項に記載の方法を実行するための処理回路を備える、デコーダ。
[項目20]
コンピュータに、項目1から17のいずれか一項に記載の方法を実行させるためのプログラム。
[項目21]
1つまたは複数のプロセッサと、
前記プロセッサに結合され、前記プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラミングは、前記プロセッサによって実行されると、項目1から17のいずれか一項に記載の方法を実行するようにデコーダを構成する、非一時的コンピュータ可読記憶媒体と、
を備える、デコーダ、または、エンコーダ。
[項目22]
ビットストリームを取得するように構成される取得ユニットであって、前記ビットストリームは、変換ユニット構文を含み、前記取得ユニットは、前記変換ユニット構文に従って、現在の変換ユニットまたは現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得するように構成され、少なくとも前記2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する、取得ユニットと、
コーディングユニットCBFフラグの値、cu_cbfフラグの値、および前記少なくとも2つのクロマCBFフラグの値に少なくとも基づいて、ルマCBFフラグの値を導出するように構成される導出ユニットと
を備える、エンコーダ。
[項目23]
ビットストリームを取得するように構成される取得ユニットであって、前記ビットストリームは、変換ユニット構文を含み、前記取得ユニットは、前記変換ユニット構文に従って、現在の変換ユニットまたは現在の変換ユニット内の現在のサブ変換ユニットに対応するクロマブロックに対する少なくとも2つのクロマCBFフラグ(クロマコード化ブロックフラグ)の値を取得するように構成され、少なくとも前記2つのクロマCBFフラグのうちの1つのクロマCBFフラグは、対応するブロックが対応する色平面に残差を有するかどうかを指定する、取得ユニットと、
コーディングユニットCBFフラグの値、cu_cbfフラグの値、および前記少なくとも2つのクロマCBFフラグの値に少なくとも基づいて、ルマCBFフラグの値を導出するように構成される導出ユニットと
を備える、デコーダ。
[項目24]
前記ルマCBFフラグの値は、前記現在の変換ユニット内の前記現在のサブ変換ユニットの位置に基づいてさらに導出される、項目23に記載のデコーダ。
[項目25]
前記変換ユニット構文は、少なくとも2つのクロマCBFフラグを備え、変換ユニット構文に従って、少なくとも2つのクロマCBFフラグの値を取得する段階は、
前記変換ユニット構文から少なくとも2つのクロマCBFフラグの値を取得する段階を備える、項目23または24に記載のデコーダ。
[項目26]
前記ルマCBFフラグは、tu_cbf_lumaフラグである、項目23から25のいずれか一項に記載のデコーダ。
[項目27]
前記変換ユニット構文において、変換ユニットの構文要素は、
ブロック全体にシグナリングされる、または
インターブロックのサブブロック変換(SBT)で取得された複数のサブ変換ユニットにシグナリングされる、または
最大変換ユニットサイズの制限を満たすようにシグナリングされる
項目23から26のいずれか一項に記載のデコーダ。
[項目28]
前記変換ユニットまたは前記サブ変換ユニットは、2つのクロマCBFフラグを含み、各クロマ平面に対してそれぞれ1つのフラグを持つ
項目23から27のいずれか一項に記載のデコーダ。
[項目29]
前記ルマCBFフラグの値は、前記cu_cbfフラグの値と、前記現在の変換ユニットに対応する前記2つのクロマCBFフラグの値とに基づいて導出される、項目23から28のいずれか一項に記載のデコーダ。
[項目30]
前記現在の変換ユニットがサブ変換ユニットに分割されていない場合、前記ビットストリームで前記cu_cbfフラグがシグナリングされ、前記cu_cbfフラグの値が1に等しく、tu_cbf_cbフラグの値が0で、tu_cbf_crフラグの値が0であり、次に現在の変換ユニットのtu_cbf_lumaフラグの値が1に導出される、項目23から29のいずれか一項に記載のデコーダ。
[項目31]
前記変換ユニット構文に対応する変換ユニット構文表が
Figure 2023085351000068
に従ってシグナリングされる、項目23から30のいずれか一項に記載のデコーダ。
[項目32]
前記変換ユニット構文に対応する変換ユニット構文表が
Figure 2023085351000069
に従ってシグナリングされる、項目23から30のいずれか一項に記載のデコーダ。
[項目33]
前記現在の変換ユニットが前記サブブロック変換(SBT)によって分割されている場合、非ゼロのCBFフラグを許容する前記サブ変換ユニットの前記tu_cbf_lumaフラグの値は、以下の条件に従って導出される:
前記cu_cbfフラグの値が1であり、前記tu_cbf_cbフラグの値が0であり、前記tu_cbf_crフラグの値が0である場合、前記現在のサブ変換ユニットの前記tu_cbf_lumaフラグの値は1であると導出される
項目23から29のいずれか一項に記載のデコーダ。
[項目34]
前記変換ユニット構文に対応する変換ユニット構文表が
Figure 2023085351000070
に従ってシグナリングされる、項目23から30、および33のいずれか一項に記載のデコーダ。
[項目35]
前記変換ユニット構文に対応する変換ユニット構文表が
Figure 2023085351000071
に従ってシグナリングされる、項目23から30、および33のいずれか一項に記載のデコーダ。
[項目36]
前記変換ユニット構文に対応する変換ツリー構文表が以下の表に従ってシグナリングされ、
Figure 2023085351000072
前記変換ツリー構文表に対応するコーディングユニット構文表が以下の表にシグナリングされる、
Figure 2023085351000073
項目23から30、および33のいずれか一項に記載のデコーダ。
[項目37]
treeTypeは、SINGLE_TREEに等しい、項目31、32および34から36のいずれか一項に記載のデコーダ。
[項目38]
前記ルマCBFフラグがtu_cbf_lumaフラグであり、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、
Figure 2023085351000074
に従って導出される、項目23から37のいずれか一項に記載のデコーダ。
[項目39]
前記ルマCBFフラグがtu_cbf_lumaフラグであり、tu_cbf_luma[x0][y0]の値が存在しない場合、前記tu_cbf_luma[x0][y0]の値は、以下の条件
Figure 2023085351000075
に従って導出される、項目23から38のいずれか一項に記載のデコーダ。
[項目40]
1に等しいtu_cbf_luma[x0][y0]は、ルマ変換ブロックが0に等しくない1つまたは複数の変換係数レベルを含むことを指定し、配列インデックスx0、y0は、画像の左上のルマサンプルに対する、考慮された変換ブロックの左上のルマサンプルの位置(x0,y0)を指定する、変換係数レベルは、変換係数値の計算のためにスケーリングする前の前記デコーディング処理において、特定の2次元周波数インデックスに関連する値を表す整数量である、項目23から39のいずれか一項に記載のデコーダ。

Claims (20)

  1. ビデオコーディングの方法であって、
    変換ユニット構文及びコーディングユニット構文を含むビットストリームを取得する段階、ここで、前記変換ユニット構文は、現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第1クロマ変換ブロックに関連する第1フラグの値、現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第2クロマ変換ブロックに関連する第2フラグの値を含み、ここで、前記第1フラグは、前記第1クロマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定し、前記第2フラグは、前記第2クロマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定し;ここで、前記コーディングユニット構文は、変換ツリー構造が存在するかどうかを指定する第3フラグの値を含む;及び、
    少なくとも前記第1フラグ、前記第2フラグ、及び前記第3フラグの前記値に基づいて、第4フラグの値を導出する段階、ここで、前記第4フラグの前記値は、ルマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定する、
    を備える方法。
  2. 前記第4フラグの前記値はさらに、前記現在の変換ユニット内の前記現在のサブ変換ユニットの位置に基づいて導出される、請求項1に記載の方法。
  3. 前記変換ユニット構文について、前記変換ユニット構文の要素は、
    ブロック全体についてシグナリングされ、又は、
    インターブロックのために、サブブロック変換(SBT)によって取得された複数のサブ変換ユニットについてシグナリングされ、又は、
    最大変換ユニットサイズ制限を満たすべくシグナリングされる、
    請求項1に記載の方法。
  4. 前記第1フラグの前記値が1に等しいとき、前記第1クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項1に記載の方法。
  5. 前記第2フラグの前記値が1に等しいとき、前記第2クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項1に記載の方法。
  6. 前記第4フラグの前記値が1に等しいとき、前記ルマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項1に記載の方法。
  7. 変換ユニット構文及びコーディングユニット構文を含むビットストリームを保存するように構成されている非一時的メモリストレージ、ここで、前記変換ユニット構文は、現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第1クロマ変換ブロックに関連する第1フラグの値、現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第2クロマ変換ブロックに関連する第2フラグの値を含み、ここで、前記第1フラグは、前記第1クロマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定し、前記第2フラグは、前記第2クロマ変換ブロックは、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定し;前記コーディングユニット構文は、変換ツリー構造が存在するかどうかを指定する第3フラグの値を含む;及び、
    前記ビットストリームを取得し、
    少なくとも前記第1フラグ、前記第2フラグ、及び、前記第3フラグの前記値に基づいて、第4フラグの値を導出し、ここで、前記第4フラグの前記値は、ルマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定する、
    よう構成されているデコーダ
    を備える装置。
  8. 前記第4フラグの前記値はさらに、前記現在の変換ユニット内の前記現在のサブ変換ユニットの位置に基づいて導出される、請求項7に記載の装置。
  9. 前記変換ユニット構文について、前記変換ユニット構文の要素は、
    ブロック全体についてシグナリングされ、又は、
    インターブロックのために、サブブロック変換(SBT)によって取得された複数のサブ変換ユニットについてシグナリングされ、又は、
    最大変換ユニットサイズ制限を満たすべくシグナリングされる、
    請求項7に記載の装置。
  10. 前記第1フラグの前記値が1に等しいとき、前記第1クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項7に記載の装置。
  11. 前記第2フラグの前記値が1に等しいとき、前記第2クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項7に記載の装置。
  12. 前記第4フラグの前記値が1に等しいとき、前記ルマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項7に記載の装置。
  13. 変換ユニット構文及びコーディングユニット構文を含むビットストリームを取得するよう構成されているエンコーダ、ここで、前記変換ユニット構文は、現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第1クロマ変換ブロックに関連する第1フラグの値、現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第2クロマ変換ブロックに関連する第2フラグの値を含み、ここで、前記第1フラグは、前記第1クロマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定し、前記第2フラグは、前記第2クロマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定し、ここで、前記コーディングユニット構文は、変換ツリー構造が存在するかどうかを指定する第3フラグの値を含む;
    前記エンコーダに連結されており、デコーダが少なくとも前記第1フラグ、前記第2フラグ、及び前記第3フラグの前記値に基づいて第4フラグの値を導出するように前記ビットストリームを前記デコーダにシグナリングするよう構成されている送信機、ここで、前記第4フラグの前記値は、ルマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定する、
    を備える装置。
  14. 前記第4フラグの前記値はさらに、前記現在の変換ユニット内の前記現在のサブ変換ユニットの位置に基づいて導出される、請求項13に記載の装置。
  15. 前記変換ユニット構文について、前記変換ユニット構文の要素は、
    ブロック全体についてシグナリングされ、又は、
    インターブロックのために、サブブロック変換(SBT)によって取得された複数のサブ変換ユニットについてシグナリングされ、又は、
    最大変換ユニットサイズ制限を満たすべくシグナリングされる、
    請求項13に記載の装置。
  16. 前記第1フラグの前記値が1に等しいとき、前記第1クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項13に記載の装置。
  17. 前記第2フラグの前記値が1に等しいとき、前記第2クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項13に記載の装置。
  18. 前記第4フラグの前記値が1に等しいとき、前記ルマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、請求項13に記載の装置。
  19. 変換ユニット構文及びコーディングユニット構文を含む、ビデオ信号のためのエンコード済みのビットストリームを格納する非一時的記憶媒体であって;
    前記変換ユニット構文は、
    現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第1クロマ変換ブロックに関連する第1フラグの値、ここで、第1フラグは、前記第1クロマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定する;
    現在の変換ユニット又は前記現在の変換ユニット内の現在のサブ変換ユニットに対応する第2クロマ変換ブロックに関連する第2フラグの値、ここで、前記第2フラグは、前記第2クロマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定する;
    を含み、
    ここで、前記コーディングユニット構文は、変換ツリー構造が存在するかどうかを指定する第3フラグの値を含み;
    前記第1フラグ、前記第2フラグ、及び前記第3フラグの前記値は、ルマ変換ブロックが、0に等しくない少なくとも1の変換係数レベルを含むかどうかを指定する第4フラグの値を導出するために使用される、
    非一時的記憶媒体。
  20. 前記第1フラグの前記値が1に等しいとき、前記第1クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定され;
    前記第2フラグの前記値が1に等しいとき、前記第2クロマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定され;又は、
    前記第4フラグの前記値が1に等しいとき、前記ルマ変換ブロックが0に等しくない少なくとも1の変換係数レベルを含むことが指定される、
    請求項19に記載の非一時的記憶媒体。
JP2023042641A 2019-03-01 2023-03-17 Cbfフラグの効率的なシグナリング方法 Pending JP2023085351A (ja)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US201962812282P 2019-03-01 2019-03-01
US62/812,282 2019-03-01
US201962817498P 2019-03-12 2019-03-12
US62/817,498 2019-03-12
US201962825005P 2019-03-27 2019-03-27
US62/825,005 2019-03-27
EPPCT/EP2019/064224 2019-05-31
EP2019064224 2019-05-31
JP2021526293A JP7251882B2 (ja) 2019-03-01 2020-03-02 Cbfフラグの効率的なシグナリング方法
PCT/RU2020/050033 WO2020180214A1 (en) 2019-03-01 2020-03-02 The method of efficient signalling of cbf flags

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021526293A Division JP7251882B2 (ja) 2019-03-01 2020-03-02 Cbfフラグの効率的なシグナリング方法

Publications (1)

Publication Number Publication Date
JP2023085351A true JP2023085351A (ja) 2023-06-20

Family

ID=72337453

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021526293A Active JP7251882B2 (ja) 2019-03-01 2020-03-02 Cbfフラグの効率的なシグナリング方法
JP2023042641A Pending JP2023085351A (ja) 2019-03-01 2023-03-17 Cbfフラグの効率的なシグナリング方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021526293A Active JP7251882B2 (ja) 2019-03-01 2020-03-02 Cbfフラグの効率的なシグナリング方法

Country Status (11)

Country Link
US (3) US11375213B2 (ja)
EP (1) EP3868100A4 (ja)
JP (2) JP7251882B2 (ja)
KR (2) KR20240011253A (ja)
CN (1) CN113039797A (ja)
AU (1) AU2020232820A1 (ja)
BR (1) BR112020026183A2 (ja)
CA (1) CA3121220A1 (ja)
IL (1) IL286033B2 (ja)
MX (1) MX2021008404A (ja)
WO (1) WO2020180214A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117676139A (zh) * 2019-03-11 2024-03-08 北京达佳互联信息技术有限公司 视频编解码中变换系数的编解码
JP7390395B2 (ja) * 2019-03-12 2023-12-01 フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 画像及びビデオコード化のための選択的成分間変換(ict)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9807426B2 (en) * 2011-07-01 2017-10-31 Qualcomm Incorporated Applying non-square transforms to video data
WO2013018296A1 (ja) * 2011-07-29 2013-02-07 パナソニック株式会社 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、及び動画像符号化復号装置
US8804816B2 (en) * 2011-08-30 2014-08-12 Microsoft Corporation Video encoding enhancements
US9807401B2 (en) * 2011-11-01 2017-10-31 Qualcomm Incorporated Transform unit partitioning for chroma components in video coding
LT3197162T (lt) * 2011-12-15 2020-05-11 Tagivan Ii Llc Skaisčio-spalvio koduoto bloko žymų (cbf) signalo perdavimas vaizdo kodavime
WO2013107027A1 (en) * 2012-01-19 2013-07-25 Mediatek Singapore Pte. Ltd. Methods and apparatuses of cbf coding in hevc
US9467701B2 (en) * 2012-04-05 2016-10-11 Qualcomm Incorporated Coded block flag coding
WO2018045332A1 (en) * 2016-09-02 2018-03-08 Vid Scale, Inc. Methods and apparatus for coded block flag coding in quad-tree plus binary-tree block partitioning
US10523966B2 (en) * 2017-03-31 2019-12-31 Mediatek Inc. Coding transform blocks

Also Published As

Publication number Publication date
CA3121220A1 (en) 2020-09-10
IL286033B2 (en) 2023-03-01
US11375213B2 (en) 2022-06-28
US20210352304A1 (en) 2021-11-11
AU2020232820A8 (en) 2021-07-08
JP7251882B2 (ja) 2023-04-04
CN113039797A (zh) 2021-06-25
WO2020180214A1 (en) 2020-09-10
KR20240011253A (ko) 2024-01-25
BR112020026183A2 (pt) 2021-09-08
MX2021008404A (es) 2021-08-16
IL286033B (en) 2022-11-01
KR102626200B1 (ko) 2024-01-19
AU2020232820A1 (en) 2021-06-10
US20220295082A1 (en) 2022-09-15
KR20210087088A (ko) 2021-07-09
IL286033A (en) 2021-10-31
JP2022522083A (ja) 2022-04-14
US20230353760A1 (en) 2023-11-02
EP3868100A4 (en) 2021-12-29
EP3868100A1 (en) 2021-08-25
US11716479B2 (en) 2023-08-01

Similar Documents

Publication Publication Date Title
JP7271683B2 (ja) エンコーダ、デコーダ、および対応するイントラ予測方法
JP7375125B2 (ja) ルーマおよびクロマ成分についてibc専用バッファおよびデフォルト値リフレッシュを使用するエンコーダ、デコーダおよび対応する方法
JP7401556B2 (ja) イントラ予測のためのエンコーダ、デコーダおよび対応する方法
JP7366149B2 (ja) 行列ベースのイントラ予測と二次変換コア選択を調和させるエンコーダ、デコーダ、および対応する方法
JP7454633B2 (ja) パレット符号化を使用するエンコード装置、デコード装置および対応する方法
JP7391991B2 (ja) イントラ平滑化のための方法および装置
JP2024026231A (ja) イントラ予測モードに関連するエンコーダ、デコーダ、および対応する方法
JP2023085351A (ja) Cbfフラグの効率的なシグナリング方法
JP2023153802A (ja) イントラ・サブパーティション・コーディング・ツールによって引き起こされるサブパーティション境界のためのデブロッキングフィルタ
JP2022515003A (ja) コンパクトなmvストレージを用いるエンコーダ、デコーダ、及び対応する方法
JP7397878B2 (ja) イントラ・サブ・パーティション・コーディング・モードのための方法及び装置
KR20220051399A (ko) 시퀀스 파라미터 세트에서의 서브픽처 시그널링을 위한, 인코더, 디코더 및 대응하는 방법
JP2023162243A (ja) Dct2が有効である高レベルフラグを使用するエンコーダ、デコーダ及び対応する方法
JP2023126795A (ja) ビデオコーディングにおけるクロマイントラ予測のための方法及び装置
KR20220054442A (ko) 색차 양자화 파라미터 시그널링을 위한 방법 및 장치
JP2023100701A (ja) イントラ予測のためのイントラモードコーディングを使用するエンコーダ、デコーダ、および対応する方法
JP2022515518A (ja) イントラ予測のための成分間線形モデリングの方法および装置
RU2803063C2 (ru) Кодер, декодер и соответствующие способы, которые используются для процесса преобразования
RU2801589C2 (ru) Кодер, декодер и соответствующие способы, использующие высокоуровневый флаг разрешения dct2
KR20210122800A (ko) 인트라 서브 파티션 코딩 모드 도구로부터 서브 파티션의 크기를 제한하는 인코더, 디코더 및 대응하는 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240319