JP2022552537A - サブピクチャのパラメータセットシグナリングにおける構文制約 - Google Patents

サブピクチャのパラメータセットシグナリングにおける構文制約 Download PDF

Info

Publication number
JP2022552537A
JP2022552537A JP2022522764A JP2022522764A JP2022552537A JP 2022552537 A JP2022552537 A JP 2022552537A JP 2022522764 A JP2022522764 A JP 2022522764A JP 2022522764 A JP2022522764 A JP 2022522764A JP 2022552537 A JP2022552537 A JP 2022552537A
Authority
JP
Japan
Prior art keywords
picture
sub
equal
video
flag
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
JP2022522764A
Other languages
English (en)
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.)
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
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 Beijing ByteDance Network Technology Co Ltd, ByteDance Inc filed Critical Beijing ByteDance Network Technology Co Ltd
Publication of JP2022552537A publication Critical patent/JP2022552537A/ja
Priority to JP2023189118A priority Critical patent/JP2024009018A/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/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/117Filters, e.g. for pre-processing or post-processing
    • 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/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/174Methods 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 slice, e.g. a line of blocks or a group of 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/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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain

Abstract

ビデオ処理の例示的な方法は、ビデオのピクチャとビデオのビットストリーム表現との間の変換を実行することを含む。ピクチャは1つ以上のサブピクチャを含み、ビットストリーム表現は、構文要素の長さがCeil(Log2(SS))ビットに等しいことを指定するフォーマット規則に適合する。SSは0より大きく、構文要素はピクチャのサブピクチャのコーディングツリーユニットの左上コーナーの水平位置または垂直位置を示す。

Description

パリ条約に準拠した適用可能な特許法および/または規則に基づき、この出願は、2019年10月18日に出願された国際特許出願第PCT/CN2019/111807号の優先権および利益を適時に主張するように行われている。法に基づくすべての目的のために、前述の出願の開示全体は、この出願の開示の一部として参照により組み込まれる。
本文書は、ビデオおよび画像コーディングおよび復号技術に関する。
デジタルビデオは、インターネットおよび他のデジタル通信ネットワークにおける最大の帯域幅使用を占めている。ビデオを受信および表示することが可能な接続ユーザデバイスの数が増加するにつれて、デジタルビデオの利用に対する帯域幅需要は増加し続けることが予想される。
開示された技術は、サブピクチャベースのコーディングまたは復号が実行されるビデオまたは画像復号器または符号化器の実施形態によって使用されてもよい。
1つの例示的な態様において、ビデオ処理の方法が開示される。方法は、ビデオのピクチャとビデオのビットストリーム表現との間の変換を実行することを含む。ピクチャは1つ以上のサブピクチャを含み、ビットストリーム表現は、構文要素の長さがCeil(Log2(SS))ビットに等しいことを指定するフォーマット規則に適合する。SSは0より大きく、構文要素はピクチャのサブピクチャのコーディングツリーユニットの左上コーナーの水平位置または垂直位置を示す。
さらに別の態様において、ビデオ処理の方法が開示される。方法は、ビデオのピクチャとビデオのビットストリーム表現との間の変換を実行することを含み、ピクチャは1つ以上のサブピクチャを含む。ビットストリーム表現は、異なるサブピクチャが異なる識別子を有することを指定するフォーマット規則に適合する。
さらに別の態様において、ビデオ処理の方法が開示される。方法は、ビデオの第1のビデオ領域内のビデオブロックに対して、アフィンモードを使用して、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換に対して時間的動きベクトル予測子が決定される位置が、第2のビデオ領域内にあるかどうかを決定することと、その決定に基づいて変換を実行することと、を含む。
さらに別の例示的な態様において、ビデオ処理の方法が開示される。方法は、ビデオの第1のビデオ領域内のビデオブロックについて、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換に対して参照ピクチャ内の整数サンプルがフェッチされる位置が、第2のビデオ領域内にあるかどうかを決定することであって、参照ピクチャが、変換中に補間処理において使用されない、ことと、その決定に基づいて変換を実行することと、を含む。
さらに別の例示的な態様において、ビデオ処理の方法が開示される。方法は、ビデオの第1のビデオ領域内のビデオブロックに対して、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換に対して、再構成された輝度サンプル値がフェッチされる位置が、第2のビデオ領域内にあるかどうかを決定することと、その決定に基づいて変換を実行することと、を含む。
さらに別の例示的な態様において、ビデオ処理の方法が開示される。方法は、ビデオの第1のビデオ領域内のビデオブロックについて、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換中に、ビデオブロックに対する分割、深さ導出またはスプリットフラグシグナリングに関するチェックが実行される位置が第2のビデオ領域内にあるかどうかを決定するステップと、決定に基づいて変換を実行するステップとを含む。
さらに別の例示的な態様において、ビデオ処理の方法が開示される。方法は、1つ以上のビデオブロックを含む1つ以上のビデオピクチャを含むビデオと、ビデオのコーディングされた表現との間の変換を実行することを含み、コーディングされた表現は、変換がサブピクチャコーディング/復号および動的解像度コーディング/復号ツール、またはビデオユニット内の参照ピクチャ再サンプリングツールを使用しないというコーディング構文要件に準拠する。
さらに別の例示的な態様において、ビデオ処理の方法が開示される。方法は、1つ以上のビデオブロックを含む1つ以上のビデオピクチャを含むビデオと、ビデオのコーディングされた表現との間の変換を実行することを含み、コーディングされた表現は、第1の構文要素subpic_grid_idx[i][j]が、第2の構文要素max_subpics_minus1より大きくないというコーディング構文要件に準拠する。
さらに別の例示的な態様において、上述の方法は、プロセッサを含むビデオ符号化器装置によって実装されてもよい。
さらに別の例示的な態様において、上述の方法は、プロセッサを含むビデオ復号器装置によって実装されてもよい。
さらに別の例示的な態様において、上述の方法は、プロセッサ実行可能命令の形態で具体化され、コンピュータ可読プログラム媒体に記憶されてもよい。
これらおよび他の態様は、本文書においてさらに記載される。
時間的動きベクトル予測(TMVP)およびサブブロックTMVPにおける領域制約の一例を示す。 階層的動き予測スキームの一例を示す。 本文書において記載された技法を実装するためのハードウェアプラットフォームの一例のブロック図である。 ビデオ処理のための例示的な方法のフローチャートを示す。 12のタイルと3つのラスタ走査スライス(参考)にパーティショニングされる18×12の輝度CTUを有するピクチャの一例を示す。 24のタイルと9つの矩形スライス(参考)にパーティショニングされる18×12の輝度CTUを有するピクチャの一例を示す。 4つのタイル、11のブリック、および4つの矩形スライス(参考)にパーティショニングされるピクチャの一例を示す。 本明細書に開示される様々な技術を実装することができる例示的なビデオ処理システムを示すブロック図である。 例示的なビデオコーディングシステムを示すブロック図である。 本開示のいくつかの実施形態による符号化器を示すブロック図である。 本開示のいくつかの実施形態による復号器を示すブロック図である。 本技術によるビデオ処理のための方法のフローチャート表現である。 本技術によるビデオ処理のための別の方法のフローチャート表現である。 本技術によるビデオ処理のための別の方法のフローチャート表現である。 本技術によるビデオ処理のための別の方法のフローチャート表現である。 本技術によるビデオ処理のための別の方法のフローチャート表現である。 本技術によるビデオ処理のための別の方法のフローチャート表現である。 本技術によるビデオ処理のための別の方法のフローチャート表現である。 本技術によるビデオ処理のためのさらに別の方法のフローチャート表現である。
本文書は、解凍または復号されたデジタルビデオまたは画像の品質を改善するために、画像またはビデオビットストリームの復号器によって使用され得る様々な技法を提供する。簡潔さのために、本明細書では、用語「ビデオ」は、一連のピクチャ(伝統的にビデオと呼ばれる)と個々の画像の両方を含むように使用される。さらに、ビデオ符号化器はまた、さらなる符号化のために使用される復号されたフレームを再構成するために、符号化の処理中にこれらの技法を実装してもよい。
セクション見出しは、理解を容易にするために本文書で使用されるが、実施形態および技法を対応するセクションに限定するものではない。したがって、1つのセクションからの実施形態は、他のセクションからの実施形態と組み合わせることができる。
1.概要
本文書は、ビデオコーディング技術に関係する。具体的には、ビデオコーディングにおいて基本色ベース表現を用いたパレットコーディングに関する。これは、HEVCのような既存のビデオコーディング規格、または完結される規格(Versatile Video Coding)に適用されることがある。これは、将来のビデオコーディング規格またはビデオコーデックにも適用可能である。
2.最初の議論
ビデオコーディング標準は、主に、周知のITU-TおよびISO/IEC標準の開発を通じて発展してきた。ITU-TはH.261とH.263を、ISO/IECはMPEG-1とMPEG-4 Visualを、2つの組織はH.262/MPEG-2 VideoおよびH.264/MPEG-4 AVC(Advanced Video Coding)とH.265/HEVC規格[1,2]を共同で作成した。H.262から、ビデオコーディング標準は、時間的予測にトランスフォームコーディングを加えたものが利用されるハイブリッドビデオコーディング構造に基づいている。HEVCを越えた将来のビデオコーディング技術を探求するため、2015年にVCEGとMPEGによって共同でJVET(Joint Video Exploration Team)が設立された。それ以来、JVETによって多くの新しい方法が採用され、JEM(Joint Exploration Model)と名付けられた参照ソフトウェアに入れられた。2018年4月には、VCEG(Q6/16)とISO/IEC JTC1 SC29/WG11(MPEG)とのJVET(Joint Video Expert Team)が発足され、HEVCに対して50%のビットレート低減を目指すVVC標準に取り組んだ。
2.1 VVCにおけるTMVPおよびサブブロックTMVPにおける領域制約
図1は、TMVPおよびサブブロックTMVPにおける例示的な領域制約を示す。TMVPおよびサブブロックTMVPにおいては、図1に示すように、並置された(collocated)CTU+4×4ブロックの列からのみ、時間的MVをフェッチすることができることに制約される。
2.2 例示的なサブピクチャ
いくつかの実施形態において、柔軟なタイリングアプローチに基づくサブピクチャベースのコーディング技法を実装することができる。サブピクチャベースのコーディング技法の概要は、以下を含む。
(1) ピクチャは、サブピクチャに分割され得る。
(2) サブピクチャの存在の表示は、サブピクチャの他のシーケンスレベルの情報と共に、SPSにおいて示される。
(3) サブピクチャが復号処理(ループ内フィルタリング動作を除く)においてピクチャとして処理されるどうかは、ビットストリームによって制御され得る。
(4) サブピクチャ境界にわたるループ内フィルタリングが無効であるかどうかは、各サブピクチャに対するビットストリームによって制御され得る。DBF、SAO、およびALF処理が、サブピクチャ境界にわたるループ内フィルタリング動作を制御するために更新される。
(5) 簡単にするために、開始点として、サブピクチャ幅、高さ、水平オフセット、および垂直オフセットが、SPSの輝度サンプルにおいて単位でシグナリングされる。サブピクチャ境界は、スライス境界であるように制約される。
(6) サブピクチャを復号処理(ループ内フィルタリング動作を除く)においてピクチャとして処理することは、coding_tree_unit()構文を若干更新することによって指定され、以下の復号処理に更新される。
- (高度な)時間的動きベクトル予測のための導出処理
- 輝度サンプル双線形補間処理
- 輝度サンプル8タップ補間フィルタリング処理
- 色差サンプル補間処理
(7) サブピクチャIDはSPSにおいて明示的に指定され、VCL NALユニットを変更する必要なくサブピクチャシーケンスの抽出を可能にするようにタイルグループヘッダに含まれる。
(8) 出力サブピクチャセット(OSPS)は、サブピクチャとそのセットのための規範抽出と適合点を明記するために提案されている。
2.3 Versatile Video Codingにおける例示的なサブピクチャ
Figure 2022552537000002
1に等しいsubpics_present_flagは、SPS RBSP構文において現在サブピクチャパラメータが存在することを示す。0に等しいsubpics_present_flagは、SPS RBSP構文において現在サブピクチャパラメータが存在しないことを示す。
注2 - ビットストリームがサブビットストリーム抽出処理の結果であり、サブビットストリーム抽出処理への入力ビットストリームのサブピクチャのサブセットのみを含むときに、SPSのRBSPにおいて1に等しいsubpics_present_flagの値をセットする必要があるかもしれない。
max_subpics_minus1+1は、CVSにおいて存在し得るサブピクチャの最大数を指定する。max_subpics_minus1は、0~254の範囲にある。255の値は、ITU-T|ISO/IECによって将来使用するために予約されている。
subpic_grid_col_width_minus1+1は、サブピクチャ識別子グリッドの各要素の幅を4サンプル単位で指定する。構文要素の長さは、Ceil(Log2(pic_width_max_in_luma_samples/4))ビットである。変数NumSubPicGridColsは、以下のように導出される。
Figure 2022552537000003
subpic_grid_row_height_minus1+1は、サブピクチャ識別子グリッドの各要素の高さを4サンプル単位で指定する。構文要素の長さは、Ceil(Log2(pic_height_max_in_luma_samples/4))ビットである。変数NumSubPicGridRowsは、以下のように導出される。
Figure 2022552537000004
subpic_grid_idx[i][j]は、グリッド位置(i,j)のサブピクチャインデックスを指定する。構文要素の長さは、Ceil(Log2(max_subpics_minus1+1))ビットである。
変数SubPicTop[subpic_grid_idx[i][j]]、SubPicLeft[subpic_grid_idx[i][j]]、SubPicWidth[subpic_grid_idx[i][j]]、SubPicHeight[subpic_grid_idx[i][j]]、およびNumSubPicsは、以下のように導出される。
Figure 2022552537000005
1に等しいsubpic_treated_as_pic_flag[i]は、CVSにおいて各コーディングされたピクチャのi番目のサブピクチャが、ループ内フィルタリング動作を除く復号処理においてピクチャとして処理されることを指定する。0に等しいsubpic_treated_as_pic_flag[i]は、CVSにおいて各コーディングされたピクチャのi番目のサブピクチャが、ループ内フィルタリング動作を除く復号処理においてピクチャとして処理されないことを指定する。存在しないときは、subpic_treated_as_pic_flag[i]の値は、0に等しいと推論される。
1に等しいloop_filter_across_subpic_enabled_flag[i]は、CVSにおいて各コーディングされたピクチャにおけるi番目のサブピクチャの境界にわたってループ内フィルタリング動作が実行されてもよいことを指定する。
0に等しいloop_filter_across_subpic_enabled_flag[i]は、CVSにおいて各コーディングされたピクチャにおけるi番目のサブピクチャの境界にわたってループ内フィルタリング動作が実行されないことを指定する。存在しないときは、loop_filter_across_subpic_enabled_pic_flag[i]の値は、1に等しいと推論される。
以下の制約が適用されるのはビットストリーム適合性の要件である。
- サブピクチャsubpicAとsubpicBの任意の2つのサブピクチャに対して、subpicAのインデックスがsubpicBのインデックスより小さいときに、サブPicAの任意のコーディングされたNALユニットは、サブPicBのコーディングされた任意のNALユニットを復号順に継承するものとする。
- サブピクチャの形状は、各サブピクチャが、復号されるときに、その全体の左境界および全体の上境界を、ピクチャ境界からなるか、以前に復号されたサブピクチャの境界からなるようにするものとする。
ピクチャラスタ走査におけるCTBアドレスからサブピクチャインデックスへの変換を指定する、0~PicSizeInCtbsY-1の範囲(両端含む)のctbAddrRsに対するリストCtbToSubPicIdx[ctbAddrRs]は、以下のように導出される。
Figure 2022552537000006
num_bricks_in_slice_minus1は、存在するときは、スライス内のブリック数から1引いたもの指定する。num_bricks_in_slice_minus1の値は、0~NumBricksInPic-1の範囲(両端含む)にあるものとする。rect_slice_flagが0に等しく、single_brick_per_slice_flagが1に等しいときは、num_bricks_in_slice_minus1の値は0に等しいと推論される。single_brick_per_slice_flagが1に等しいときは、num_bricks_in_slice_minus1の値は0に等しいと推論される。
現在のスライスにおけるブリックの数を指定する変数NumBricksInCurrSliceと、現在のスライスにおけるi番目のブリックのブリックインデックスを指定するSliceBrickIdx[i]は、以下のように導出される。
Figure 2022552537000007
変数SubPicIdx、SubPicLeftBoundaryPos、SubPicTopBoundaryPos、SubPicRightBoundaryPos、およびSubPicBotBoundaryPosは、以下のように導出される。
Figure 2022552537000008
...
時間的輝度動きベクトル予測のための導出処理
この処理への入力は、以下のようである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度コーディングブロックの左上のサンプルの輝度位置(xCb,yCb)
- 輝度サンプルにおける現在のコーディングブロックの幅を指定する変数cbWidth
- 輝度サンプルにおける現在のコーディングブロックの高さを指定する変数cbHeight
- 参照インデックスrefIdxLX(Xは、0または1)
この処理の出力は、以下のようである。
- 1/16分数サンプル精度における動きベクトル予測mvLXCol
- 可用性フラグavailableFlagLXCol
変数currCbは、輝度位置(xCb,yCb)での現在の輝度コーディングブロックを指定する。
変数mvLXColおよびavailableFlagLXColは、以下のように導出される。
- slice_temporal_mvp_enabled_flag=0または(cbWidth* cbHeight)が32以下である場合は、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
- それ以外の場合(slice_temporal_mvp_enabled_flagが1に等しい場合)、以下の順序付けされたステップが適用される。
1. 右下の並置された動きベクトルと、右下の境界サンプル位置は、以下のように導出される。
Figure 2022552537000009
- yCb>>CtbLog2SizeYが、yColBr>>CtbLog2SizeYに等しく、yColBrが、botBoundaryPos以下であり、xColBrが、rightBoundaryPos以下である場合、以下が適用される。
- 変数colCbは、ColPicによって指定される並置されたピクチャ内の((xColBr>>3)<<3,(yColBr>>3)<<3)で与えられる修正された位置をカバーする輝度コーディングブロックを指定する。
- 輝度位置(xColCb,yColCb)は、ColPicによって指定された並置されたピクチャの左上の輝度サンプルに対する、colCbによって指定された並置された輝度コーディングブロックの左上のサンプルに等しくセットされる。
- 8.5.2.12項において指定されている並置された動きベクトルに対する導出処理は、currCb、colCb、(xColCb,yColCb)、refIdxLX、0に等しくセットされたsbFlagを入力として呼び出され、出力は、mvLXColおよびavailableFlagLXColに割り当てられる。
それ以外の場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
...
輝度サンプル双線形補間処理
この処理への入力は、以下のようである。
- フルサンプル単位における輝度位置(xInt,yInt
- 分数サンプル単位における輝度位置(xFrac,yFrac
- 輝度参照サンプルアレイrefPicLX
この処理の出力は、予測輝度サンプル値predSampleLXである。
変数shift1、shift2、shift3、shift4、offset1、offset2、およびoffset3は、以下のように導出される。
Figure 2022552537000010
変数picWは、pic_width_in_luma_samplesに等しくセットされ、変数picHは、pic_height_in_luma_samplesに等しくセットされる。
xFracまたはyFracに等しい各1/16分数サンプル位置pに対する輝度補間フィルタ係数fb[p]は、表8-10において指定される。
フルサンプル単位における輝度位置(xInt,yInt)は、i=0..1に対して、以下のように導出される。
- subpic_treated_as_pic_flag[SubPicIdx]が1に等しい場合、以下が適用される。
Figure 2022552537000011
- それ以外の場合(subpic_treated_as_pic_flag[SubPicIdx]が0に等しい場合)、以下が適用される。
Figure 2022552537000012
...
サブブロックベースの時間的マージ候補のための導出処理
この処理への入力は、以下のようである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度コーディングブロックの左上のサンプルの輝度位置(xCb,yCb)
- 輝度サンプルにおける現在のコーディングブロックの幅を指定する変数cbWidth
- 輝度サンプルにおける現在のコーディングブロックの高さを指定する変数cbHeight
- 近隣のコーディングユニットの可用性フラグavailableFlagA
- 近隣のコーディングユニットの参照インデックスrefIdxLXA(Xは、0または1)
- 近隣のコーディングユニットの予測リスト利用フラグpredFlagLXA(Xは、0または1)
- 近隣のコーディングユニットの1/16分数サンプル精度における動きベクトルmvLXA(Xは、0または1)
この処理の出力は、以下のようである。
- 可用性フラグavailableFlagSbCol
- 水平方向numSbXと垂直方向numSbYにおける輝度コーディングサブブロックの数
- 参照インデックスrefIdxL0SbColとrefIdxL1SbCol
- xSbIdx=0..numSbX-1、ySbIdx=0..numSbY-1である1/16分数サンプル精度における輝度動きベクトルmvL0SbCol[xSbIdx][ySbIdx]およびmvL1SbCol[xSbIdx][ySbIdx]
- xSbIdx=0..numSbX-1、ySbIdx=0..numSbY-1である予測リスト利用フラグpredFlagL0SbCol[xSbIdx][ySbIdx]およびpredFlagL1SbCol[xSbIdx][ySbIdx]
可用性フラグavailableFlagSbColは、以下のように導出される。
- 次の条件のうちの1つ以上が真である場合、availableFlagSbColは、0に等しくセットされる。
- slice_temporal_mvp_enabled_flagが0に等しい。
- sps_sbtmvp_enabled_flagが0に等しい。
- cbWidthが8より小さい。
- cbHeightが8より小さい。
- それ以外の場合、以下の順序付されたステップが適用される。
1. 現在のコーディングブロックを含む輝度コーディングツリーブロックの左上のサンプルの位置(xCtb,yCtb)と、現在の輝度コーディングブロックの右下のサンプルの位置(xCtr,yCtr)は、以下のように導出される。
Figure 2022552537000013
2. 輝度位置(xColCtrCb,yColCtrCb)は、ColPicによって指定された並置されたピクチャの左上の輝度サンプルに対する、ColPic内の(xCtr,yCtr)によって与えられる位置をカバーする並置された輝度コーディングブロックの左上のサンプルに等しくセットされる。
3. 8.5.5.4項に指定されているサブブロックベースの時間的マージベースの基本動きデータのための導出処理は、位置(xCtb,yCtb)、位置(xColCtrCb,yColCtrCb)、可用性フラグavailableFlagA、予測リスト利用フラグpredFlagLXA、参照インデックスrefIdxLXA、および動きベクトルmvLXA(Xは、0または1)を入力として呼び出され、動きベクトルctrMvLX、並置されたブロックの予測リスト利用フラグctrPredFlagLX(Xは0、1)、および時間的動きベクトルtempMvを出力とする。
4. 変数availableFlagSbColは、以下のように導出される。
- ctrPredFlagL0とctrPredFlagL1の両方が0に等しい場合、availableFlagSbColは、0に等しくセットされる。
- それ以外の場合、availableFlagSbColは、1に等しくセットされる。
availableFlagSbColが1に等しい場合、以下が適用される。
- 変数numSbX、numSbY、sbWidth、sbHeight、およびrefIdxLXSbColは、以下のように導出される。
Figure 2022552537000014
- xSbIdx=0..numSbX-1およびySbIdx=0..numSbY-1に対して、動きベクトルmvLXSbCol[xSbIdx][ySbIdx]および予測リスト利用フラグpredFlagLXSbCol[xSbIdx][ySbIdx]は、以下のように導出される。
- 現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを指定する輝度位置(xCb,yCb)は、以下のように導出される。
Figure 2022552537000015
- ColPic内の並置されたサブブロックの位置(xColSb,yColSb)は、以下のように導出される。
- 以下が適用される。
Figure 2022552537000016
- subpic_treated_as_pic_flag[SubPicIdx]が1に等しい場合、以下が適用される。
Figure 2022552537000017
- それ以外の場合(subpic_treated_as_pic_flag[SubPicIdx]が0に等しい場合)、以下が適用される。
Figure 2022552537000018
...
サブブロックベースの時間的マージベースの動きデータのための導出処理
この処理への入力は、以下のようである。
- 現在のコーディングブロックを含む輝度コーディングツリーブロックの左上のサンプルの位置(xCtb,yCtb)
- 右下の中央のサンプルをカバーする、並置された輝度コーディングブロックの左上のサンプルの位置(xColCtrCb,yColCtrCb)
- 近隣のコーディングユニットの可用性フラグavailableFlagA
- 近隣のコーディングユニットの参照インデックスrefIdxLXA
- 近隣のコーディングユニットの予測リスト利用フラグpredFlagLXA
- Xが0または1である近隣のコーディングユニットの1/16分数サンプル精度における動きベクトルmvLXA
この処理の出力は、以下のようである。
- 動きベクトルctrMvL0およびctrMvL1
- 予測リスト利用フラグctrPredFlagL0およびctrPredFlagL1
- 時間的動きベクトルtempMv
変数tempMvは、以下のようにセットされる。
Figure 2022552537000019
変数currPicは現在のピクチャを指定する。
availableFlagAがTRUEに等しいときに、以下が適用される。
- 以下の条件の全てが真である場合、tempMvは、mvL0Aに等しくセットされる。
- predFlagL0Aが1に等しい。
- DiffPicOrderCnt(ColPic,RefPicList[0][refIdxL0A])が0に等しい。
- それ以外の場合、次の条件の全てが真である場合、tempMvは、mvL1Aに等しくセットされる。
- slice_typeがBに等しい。
- predFlagL1Aが1に等しい。
- DiffPicOrderCnt(ColPic,RefPicList[1][refIdxL1A])が0に等しい。
ColPic内の並置されたコロケーションされたブロックの位置(xColCb,yColCb)は、以下のように導出される。
- 以下が適用される。
Figure 2022552537000020
- subpic_treated_as_pic_flag[SubPicIdx]が1に等しい場合、以下が適用される。
Figure 2022552537000021
- それ以外の場合(subpic_treated_as_pic_flag[SubPicIdx]が0に等しい場合)、以下が適用される。
Figure 2022552537000022
...
輝度サンプル双線形補間処理
この処理への入力は、以下のようである。
- フルサンプル単位における輝度位置(xInt,yInt
- 分数サンプル単位における輝度位置(xFrac,yFrac
- 参照ピクチャの左上のサンプルに対する参照サンプルパディングのための境界ブロックの左上のサンプルを指定する、フルサンプル単位における輝度位置(xSbInt,ySbInt
- 輝度参照サンプルアレイrefPicLX
- ハーフサンプル補間フィルタ指数hpelIfIdx
- 現在のサブブロックの幅を指定する変数sbWidth
- 現在のサブブロックの高さを指定する変数sbHeight
- 現在のピクチャの左上のサンプルに対する現在のサブブロックの左上のサンプルを指定する輝度位置(xSb,ySb)
この処理の出力は、予測輝度サンプル値predSampleLXLである。
変数shift1、shift2およびshift3は、以下のように導出される。
- 変数shift1は、Min(4,BitDepth-8)に等しくセットされ、変数shift2は、6に等しくセットされ、変数shift3は、Max(2,14-BitDepth)に等しくセットされる。
- 変数picWは、pic_width_in_luma_samplesに等しくセットされ、変数picHは、pic_height_in_luma_samplesに等しくセットされる。
xFracまたはyFracに等しい各1/16分数サンプル位置pに対する輝度補間フィルタ係数f[p]は、以下のように導出される。
- MotionModelIdc[xSb][ySb]が0より大きく、sbWidthとsbHeightが両方とも4に等しい場合、輝度補間フィルタ係数f[p]は、表8-12において指定される。
- それ以外の場合、輝度補間フィルタ係数f[p]は、hpelIfIdxに応じて表8-11において指定される。
フルサンプル単位における輝度位置(xInt,yInt)は、i=0..7に対して、以下のように導出される。
- subpic_treated_as_pic_flag[SubPicIdx]が1に等しい場合、以下が適用される。
Figure 2022552537000023
- それ以外の場合(subpic_treated_as_pic_flag[SubPicIdx]が0に等しい場合)、以下が適用される。
Figure 2022552537000024
...
色差サンプル補間処理
この処理への入力は、以下のようである。
- フルサンプル単位における色差位置(xInt,yInt
- 分数サンプル単位における色差位置(xFrac,yFrac
- 参照ピクチャの左上のサンプルに対する参照サンプルパディングのための境界ブロックの左上のサンプルを指定する、フルサンプル単位における色差位置(xSbInt,ySbInt
- 現在のサブブロックの幅を指定する変数sbWidth
- 現在のサブブロックの高さを指定する変数sbHeight
- 色差参照サンプルアレイrefPicLX
この処理の出力は、予測色差サンプル値predSampleLXである。
変数shift1、shift2およびshift3は、以下のように導出される。
- 変数shift1は、Min(4,BitDepth-8)に等しくセットされ、変数shift2は、6に等しくセットされ、変数shift3は、Max(2,14-BitDepth)に等しくセットされる。
- 変数picWは、pic_width_in_luma_samples/SubWidthCに等しくセットされ、変数picHは、pic_height_in_luma_samples/SubHeightCに等しくセットされる。
xFracまたはyFracに等しい各1/32分数サンプル位置pに対する色差補間フィルタ係数fC[p]は、表8-13において指定される。
変数xOffsetは、(sps_ref_wraparound_offset_minus1+1)*MinCbSizeY)/SubWidthCに等しくセットされる。
フルサンプル単位における色差位置(xInt,yInt)は、i=0..3に対して、以下のように導出される。
- subpic_treated_as_pic_flag[SubPicIdx]が1に等しい場合、以下が適用される。
Figure 2022552537000025
- それ以外の場合(subpic_treated_as_pic_flag[SubPicIdx]が0に等しい場合)、以下が適用される。
Figure 2022552537000026
2.4 例示的な符号化器のみのGOPベースの時間的フィルタ
いくつかの実施形態において、符号化器のみの時間的フィルタが実装され得る。フィルタリングは、前処理ステップとして符号化器側で行われる。符号化する選択されたピクチャの前後のソースピクチャが読み込まれ、選択されたピクチャに対するブロックベースの動き補償方法がそれらのソースピクチャに適用される。選択されたピクチャ内のサンプルは、動き補正後のサンプル値を使用して時間的にフィルタリングされる。
全体のフィルタ強度は、選択されたピクチャの時間的サブレイヤとQPに応じてセットされる。時間的サブレイヤ0および1でのピクチャのみがフィルタリングされ、レイヤ0のピクチャはレイヤ1のピクチャよりも強力なフィルタリングによってフィルタリングされる。サンプル当たりのフィルタ強度は、選択されたピクチャのサンプル値と、動き補正されたピクチャの並置されたサンプルとの間の差に応じて調整され、動き補正されたピクチャと選択されたピクチャとの間のわずかな差が、大きな差よりも強力フィルタリングされるようにする。
GOPベースの時間的フィルタ
時間的フィルタは、ピクチャを読み込んだ直後および符号化の前に導入される。以下に、より詳細にステップを記載する。
動作1:符号化器によってピクチャを読み込む
動作2: ピクチャがコーディング階層において十分に低い場合、符号化の前にフィルタリングされる。それ以外の場合、ピクチャはフィルタリングされずに符号化される。POC%8==0のRAピクチャは、POC%4==0のLDピクチャと同様にフィルタリングされる。AIピクチャはフィルタリングされない。
全体のフィルタ強度Sは、RAに対して以下の式に従ってセットされる。
Figure 2022552537000027
ここで、nは、読み込まれるピクチャの数である。
LDのケースに対して、S(n)=0.95が使用される。
動作3:選択されたピクチャ(以下、オリジナルピクチャ呼ばれる)の前および/または後の2つのピクチャが読み込まれる。エッジのケースにおいて、例えば、最初のピクチャであるか、最後のピクチャに近い場合において、利用可能なピクチャのみが読み込まれる。
動作4:オリジナルピクチャに対して前および後に読み込まれたピクチャの動きは、8×8ピクチャブロックごとに推定される。
階層的動き推定スキームが使用され、レイヤL0、L1およびL2が図2に示されている。サブサンプリングされたピクチャ。例えば図1のL1は、全ての読み込まれたピクチャおよびオリジナルピクチャに対して、各2×2ブロックを平均化することによって生成される。L2は、同じサブサンプリング法を使用して、L1から導出される。
図2は、階層的動き推定の異なる層の例を示す。L0は、元の解像度である。L1は、L0のサブサンプリングされたバージョンである。L2は、L1のサブサンプリングされたバージョンである。
最初に、L2における16×16ブロックごとに動き推定を行う。二乗差が、選択された動きベクトルごとに計算され、最小差に対応する動きベクトルが選択される。次いで、選択された動きベクトルが、L1において動きを推定するときの初期値として使用される。次いで、L0における動きを推定するために同じことが行われる。最終ステップとして、L0上の補間フィルタを使用することによって、8×8ブロックごとにサブピクセル動きを推定する。
VTM6タップ補間フィルタを使用することができる。
Figure 2022552537000028
動作5:各ブロックに対して最良にマッチングする動きに従って、オリジナルピクチャの前および後のピクチャに動き補償が適用され、例えば、各ブロックおけるオリジナルピクチャのサンプル座標が参照されるピクチャにおいて最良にマッチングする座標を有するようにする。
動作6:以下のステップで記載される輝度チャンネルと色差チャンネルに対して、サンプルを1つずつ処理する。
動作7:新しいサンプル値lnは、以下の式を使用して計算される。
Figure 2022552537000029
ここで、Iがオリジナルサンプルのサンプル値である場合、I(i)は、動き補償されたピクチャiの対応するサンプルの強度であり、w(i,a)は、利用可能な動き補償されたピクチャの数がaであるときに、動き補償されたピクチャiの重みである。
輝度チャンネルにおいて、重みw(i,a)は、以下ように定義される。
Figure 2022552537000030
ここで、
Figure 2022552537000031
iおよびaの他の全てのケースに対して、a:s(i,a)=0.3であり、
Figure 2022552537000032
色差チャンネルに対して、重みw(i,a)は、以下ように定義される。
Figure 2022552537000033
ここで、s=0.55であり、σ=30である。
動作8:現在のサンプルにフィルタが適用される。
得られたサンプル値は、別々に記憶される。
動作9:フィルタリング処理されたピクチャが符号化される。
2.5 例示的なピクチャーパーティション(タイル、ブリック、スライス)
いくつかの実施形態において、ピクチャは、1つ以上のタイル行及び1つ以上のタイル列に分割される。タイルは、ピクチャの矩形領域をカバーするCTUのシーケンスである。
タイルは、1つ以上のブリックに分割され、各々は、タイル内の複数のCTU行から構成される。
複数のブリックにパーティショニングされないタイルも、ブリックと呼ばれる。しかし、タイルの真のサブセットであるブリックはタイルとは呼ばれない。
スライスは、ピクチャの複数のタイル、またはタイルの複数のブリックを含む。
サブピクチャは、ピクチャの矩形領域をまとめてカバーする1つ以上のスライスを含む。
スライスの2つのモード、すなわち、ラスタ走査スライスモードと矩形スライスモードがサポートされている。ラスタ走査スライスモードにおいて、スライスは、ピクチャのタイルラスタ走査におけるタイルのシーケンスを含む。矩形スライスモードにおいて、スライスは、ピクチャの矩形領域をまとめて形成するピクチャの複数のブリックを含む。矩形スライス内のブリックは、スライスのブリックラスタ走査の順序である。
図5は、ピクチャのラスタ走査スライスパーティショニングの例を示し、ピクチャは、12のタイルと3つのラスタ走査スライスに分割される。
図6は、ピクチャの矩形スライスパーティショニングの例を示し、ピクチャは、24のタイル(6つのタイル行および4つのタイル列)と9つの矩形スライスに分割される。
図7は、タイル、ブリック、矩形スライスにパーティショニングされたピクチャの例を示し、ピクチャは、4つのタイル(2つのタイル行および2つのタイル列)、11のブリック(左上のタイルは1つのブリックを含み、右上のタイルは5つのブリックを含み、左下のタイルは2つのブリックを含み、右下のタイルは3つのブリックを含む)、ならびに4つの矩形スライスに分割されている。
Figure 2022552537000034
Figure 2022552537000035
1に等しいsingle_tile_in_pic_flagは、各ピクチャにおいてPPSを参照するタイルが1つだけあることを指定する。
0に等しいsingle_tile_in_pic_flagは、各ピクチャにおいてPPSを参照するタイルが複数あることを指定する。
注-タイル内でさらにブリックスプリットがない場合、タイル全体がブリックと呼ばれる。ピクチャがさらなるブリックスプリットがない単一タイルのみを含んでいる場合、それは、単一ブリックと呼ばれる。
ビットストリーム適合性の要件は、single_tile_in_pic_flagの値が、CVS内のコーディングされたピクチャによって参照されるすべてのPPSに対して同じであるものとする。
1に等しいuniform_tile_spacing_flagは、タイル列境界、同様にタイル行境界がピクチャ全体に均一に分布し、構文要素tile_cols_width_minus1およびtile_rows_height_minus1を使用してシグナリングされることを指定する。0に等しいuniform_tile_spacing_flagは、タイル列境界、同様にタイル行境界がピクチャ全体に均一に分布しても、しなくてもよく、構文要素num_tile_columns_minus1およびnum_tile_rows_minus1および構文要素対のリストtile_column_width_minus1[i]およびtile_row_height_minus1[i]を使用してシグナリングされることを指定する。存在しないときは、uniform_tile_spacing_flagの値は、1に等しいと推論される。
tile_cols_width_minus1+1は、uniform_tile_spacing_flagが1に等しいときに、ピクチャの最も右のタイル列を除くタイル列の幅をCTB単位で指定する。tile_cols_width_minus1の値は、0~PicWidthInCtbsY-1の範囲(両端含む)にあるものとする。存在しないときは、tile_cols_width_minus1の値は、PicWidthInCtbsY-1に等しいと推論される。
tile_rows_height_minus1+1は、uniform_tile_spacing_flagが1に等しいときに、ピクチャの底部のタイル行を除くタイル行の高さをCTB単位で指定する。tile_rows_height_minus1の値は、0~PicHeightInCtbsY-1の範囲(両端含む)にあるものとする。存在しないときは、tile_rows_height_minus1の値は、PicHeightInCtbsY-1に等しいと推論される。
num_tile_columns_minus1+1は、uniform_tile_spacing_flagが0に等しいときに、ピクチャをパーティショニングするタイル列の数を指定する。num_tile_columns_minus1の値は、0~PicWidthInCtbsY-1の範囲(両端含む)にあるものとする。single_tile_in_pic_flagが1に等しい場合、num_tile_columns_minus1の値は0に等しいと推論される。それ以外の場合、uniform_tile_spacing_flagが1に等しいときに、num_tile_columns_minus1の値は、6.5.1項において指定されるように推論される。
num_tile_rows_minus1+1は、uniform_tile_spacing_flagが0に等しいときに、ピクチャをパーティショニングするタイル行の数を指定する。num_tile_rows_minus1の値は、0~PicHeightInCtbsY-1の範囲(両端含む)にあるものとする。single_tile_in_pic_flagが1に等しい場合、num_tile_rows_minus1の値は0に等しいと推論される。それ以外の場合、uniform_tile_spacing_flagが1に等しいときに、num_tile_rows_minus1の値は、6.5.1項において指定されるように推論される。
変数NumTilesInPicは、(num_tile_columns_minus1+1)*(num_tile_rows_minus1+1)に等しくセットされる。
single_tile_in_pic_flagが0に等しいときに、NumTilesInPicは、1より大きいものとする。
tile_column_width_minus1[i]+1は、i番目のタイル列の幅をCTB単位で指定する。
tile_row_height_minus1[i]+1は、i番目のタイル行の高さをCTB単位で指定する。
1に等しいbrick_splitting_present_flagは、PPSを参照するピクチャの1つ以上のタイルを2つ以上のブリックに分割し得ることを指定する。0に等しいbrick_splitting_present_flagは、PPSを参照するピクチャのタイルを2つ以上のブリックに分割しないことを指定する。
num_tiles_in_pic_minus1+1は、各ピクチャにおいて、PPSを参照するタイルの数を指定する。num_tiles_in_pic_minus1の値はNumTilesInPic-1に等しいものとする。存在しないときは、num_tiles_in_pic_minus1の値は、NumTilesInPic-1に等しいと推論される。
1に等しいbrick_split_flag[i]は、i番目のタイルが2つ以上のブリックに分割されることを指定する。0に等しいbrick_split_flag[i]は、i番目のタイルが2つ以上のブリックに分割されないことを指定する。存在しないときは、brick_split_flag[i]の値は、0に等しいと推論される。いくつかの実施形態において、SPSに対するPPS構文解析依存性は、構文条件「if(RowHeight[i]>1)」(例えば、uniform_brick_spacing_flag[i]に対して同様に)を追加することによって導入される。
1に等しいuniform_brick_spacing_flag[i]は、水平方向のブリック境界がi番目のタイルにわたって均一に分布し、構文要素brick_height_minus1[i]を使用してシグナリングされることを指定する。0に等しいuniform_brick_spacing_flag[i]は、水平方向のブリック境界がi番目のタイルにわたって均一に分布しても、しなくてもよく、構文要素num_brick_rows_minus2[i]および構文要素のリストbrick_row_height_minus1[i][j]を使用してシグナリングされることを指定する。存在しないときは、uniform_brick_spacing_flag[i]の値は、1に等しいと推論される。
brick_height_minus1[i]+1は、uniform_brick_spacing_flag[i]が1に等しいときに、i番目のタイルの底部のブリックを除くブリック行の高さをCTB単位で指定する。存在するときは、brick_height_minus1の値は、0~RowHeight[i]-2の範囲(両端含む)にあるものとする。存在しないときは、brick_height_minus1[i]の値は、RowHeight[i]-1に等しいと推論される。
num_brick_rows_minus2[i]は、uniform_brick_spacing_flag[i]が0に等しいときに、i番目のタイルをパーティショニングするブリックの数を指定する。存在するときは、num_brick_rows_minus2[i]の値は、0~RowHeight[i]-2の範囲(両端含む)にあるものとする。brick_split_flag[i]が0に等しい場合、num_brick_rows_minus2[i]の値は-1に等しいと推論される。それ以外の場合、uniform_brick_spacing_flag[i]が1に等しいときに、num_brick_rows_minus2[i]の値は、6.5.1項において指定されるように推論される。
brick_row_height_minus1[i][j]+1は、uniform_tile_spacing_flagが0に等しいときに、i 番目のタイル内のj番目のブリックの高さをCTB単位で指定する。
以下の変数が導出され、uniform_tile_spacing_flagが1に等しいときに、num_tile_columns_minus1およびnum_tile_rows_minus1の値が推論され、0~NumTilesInPic-1の範囲(両端を含む)の各iに対して、uniform_brick_spacing_flag[i]が1に等しいときに、num_brick_rows_minus2[i]の値が、第6.5.1項に指定されているなCTBラスタおよびブリック走査変換処理を呼び出すことによって推論される。
- j番目のタイル行の高さをCTB単位で指定する、0~num_tile_rows_minus1の範囲のリストRowHeight[j]
- ピクチャのCTBラスタ走査におけるCTBアドレスからブリック走査におけるCTBアドレスへの変換を指定する、0~PicSizeInCtbsY-1の範囲(両端含む)のctbAddrRsに対するリストCtbAddrRsToBs[ctbAddrRs]
- ブリック走査におけるCTBアドレスからピクチャのCTBラスタ走査におけるCTBアドレスへの変換を指定する、0~PicSizeInCtbsY-1の範囲(両端含む)のctbAddrBsに対するリストCtbAddrBsToRs[ctbAddrBs]
- ブリック走査におけるCTBブリックIDへの変換を指定する、0~PicSizeInCtbsY-1の範囲(両端含む)のctbAddrBsに対するリストBrickId[ctbAddrBs]
- ブリックインデックスからブリック内のCTUの数への変換を指定する、0~NumBricksInPic-1の範囲(両端を含む)のblickIdxに対するリストNumCtusInBrick[brickIdx]
- ブリックIDからブリック内の最初のCTBのブリック走査におけるCTBアドレスへの変換を指定する、0~NumBricksInPic-1の範囲(両端を含む)のbrickIdxに対するリストFirstCtbAddrBs[brickIdx]
1に等しいsingle_brick_per_slice_flagは、このPPSを参照する各スライスが1つのブリックを含むことを指定する。
0に等しいsingle_brick_per_slice_flagは、このPPSを参照する各スライスが複数のブリックを含むことを指定する。存在しないときは、single_brick_per_slice_flagの値は、1に等しいと推論される。
0に等しいrect_slice_flagは、各スライス内のブリックがラスタ走査の順序であり、スライス情報がPPSにおいてシグナリングされないことを指定する。1に等しいrect_slice_flagは、各スライス内のブリックがピクチャの矩形領域をカバーし、スライス情報がPPSにおいてシグナリングされることを指定する。brick_splitting_present_flagが1に等しいときに、rect_slice_flagの値は、1に等しいものとする。
存在しないときは、rect_slice_flagは、1に等しいと推論される。
num_slices_in_pic_minus1+1は、各ピクチャにおいて、PPSを参照するスライスの数を指定する。num_slices_in_pic_minus1の値は、0~NumBricksInPic-1の範囲(両端を含む)にあるものとする。存在せず、single_brick_per_slice_flagが1に等しいときに、num_slices_in_pic_minus1の値は、NumBricksInPic-1に等しいと推論される。
bottom_right_brick_idx_length_minus1+1は、情報要素bottom_right_brick_idx_delta[i]を表すために使用されるビット数を指定する。bottom_right_brick_idx_length_minus1の値は、0~Ceil(Log2(NumBricksInPic))-1の範囲(両端を含む)にあるものとする。
iが0より大きいときに、bottom_right_brick_idx_delta[i]は、i番目のスライスの右下のコーナーに位置するブリックのブリックインデックスと(i-1)番目のスライスの右下のコーナーのブリックインデックスとの差を指定する。bottom_right_brick_idx_delta[0]は、0番目のスライスの右下のコーナーのブリックインデックスを指定する。single_brick_per_slice_flagが1に等しいときに、bottom_right_brick_idx_delta[i]の値は、1に等しいと推論される。BottomRightBrickIdx[num_slices_in_pic_minus1]の値は、NumBricksInPic-1に等しいと推論される。bottom_right_brick_idx_delta[i]構文要素の長さは、bottom_right_brick_idx_length_minus1+1ビットである。
1に等しいbrick_idx_delta_sign_flag[i]は、bottom_right_brick_idx_delta[i]の正符号を示す。0に等しいsign_bottom_right_brick_idx_delta[i]は、bottom_right_brick_idx_delta[i]の負符号を示す。ビットストリーム適合性の要件は、スライスが、複数のフルタイル、または1つのタイルのフルブリックの連続したシーケンスのみを含むものとすることである。
i番目のスライスの左上のコーナーに位置するブリックのブリックインデックス、i番目のスライスの右下のコーナーに位置するブリックのブリックインデックス、i番目のスライス内のブリックの数、およびブリックのスライスへのマッピングを指定する変数TopLeftBrickIdx[i]、BottomRightBrickIdx[i]、NumBricksInSlice[i]、および BricksToSliceMap[j]は、以下のように導出される。
Figure 2022552537000036
一般的なスライスヘッダ意味
存在するときに、スライスヘッダ構文要素slice_pic_parameter_set_id、non_reference_picture_flag、colour_plane_id、slice_pic_order_cnt_lsb、recovery_poc_cnt、no_output_of_prior_pics_flag、pic_output_flag、およびslice_temporal_mvp_enabled_flagの各々の値は、コーディングされたピクチャのすべてのスライスヘッダにおいて同じであるものとする。
cu_qp_delta_absを含むコーディングユニットに対する輝度量子化パラメータとその予測との差を指定する変数CuQpDeltaValは、0にセットされる。cu_chroma_qp_offset_flagを含むコーディングユニットに対するQp’Cb、Qp’Cr、およびQp’CbCr量子化パラメータのそれぞれの値を決定するときに使用される値を指定する変数CuQpOffsetCb、CuQpOffsetCr、およびCuQpOffsetCbCrは、全て0にセットされる。
slice_pic_parameter_set_idは、使用中のPPSに対するpps_pic_parameter_set_idの値を指定する。slice_pic_parameter_set_idの値は、0~63の範囲(両端を含む)にあるものとする。
ビットストリーム適合性の要件は、現在のピクチャのTemporalIdの値が、slice_pic_parameter_set_idに等しいpps_pic_parameter_set_idを有するPPSのTemporalIdの値以上であるものとすることである。
slice_addressは、スライスのスライスアドレスを指定する。
存在しないときは、slice_addressの値は、0に等しいと推論される。
rect_slice_flagが0に等しい場合、以下が適用される。
- スライスアドレスは、式(7-59)によって指定されるようにブリックIDである。
- slice_addressの長さは、Ceil(Log2(NumBricksInPic))ビットである。
- slice_addressの値は、0~NumBricksInPic-1の範囲(両端を含む)にあるものとする。
それ以外の場合(rect_slice_flagが1に等しい場合)、以下が適用される。
- スライスアドレスは、スライスのスライスIDである。
- slice_addressの長さは、signalled_slice_id_length_minus1+1ビットである。
- signalled_slice_id_flagが0に等しい場合、slice_addressの値は、0~num_slices_in_pic_minus1の範囲(両端を含む)にあるものとする。
それ以外の場合、slice_addressの値は、0~2(signalled_slice_id_length_minus1+1)-1の範囲(両端を含む)にあるものとする。
以下の制約が適用されるのはビットストリーム適合性の要件である。
- slice_addressの値は、同じコーディングされたピクチャの任意の他のコーディングされたスライスNALユニットのslice_addressの値に等しくないものとする。
- rect_slice_flagが0に等しいときに、ピクチャのスライスはそれらのslice_address値の昇順にあるものとする。
- ピクチャのスライスの形状は、各ブリックが、復号されるときに、その全体の左境界および全体の上境界を、ピクチャ境界からなるか、以前に復号されたブリックの境界からなるようにするものとする。
num_bricks_in_slice_minus1は、存在するときは、スライス内のブリック数から1引いたもの指定する。num_bricks_in_slice_minus1の値は、0~NumBricksInPic-1の範囲(両端含む)にあるものとする。rect_slice_flagが0に等しく、single_brick_per_slice_flagが1に等しいときは、num_bricks_in_slice_minus1の値は0に等しいと推論される。single_brick_per_slice_flagが1に等しいときは、num_bricks_in_slice_minus1の値は0に等しいと推論される。
現在のスライスにおけるブリックの数を指定する変数NumBricksInCurrSliceと、現在のスライスにおけるi番目のブリックのブリックインデックスを指定するSliceBrickIdx[i]は、以下のように導出される。
Figure 2022552537000037
変数SubPicIdx、SubPicLeftBoundaryPos、SubPicTopBoundaryPos、SubPicRightBoundaryPos、およびSubPicBotBoundaryPosは、以下のように導出される。
Figure 2022552537000038
2.6 例示的な構文および意味
Figure 2022552537000039
Figure 2022552537000040
Figure 2022552537000041
Figure 2022552537000042
Figure 2022552537000043
Figure 2022552537000044
Figure 2022552537000045
Figure 2022552537000046
Figure 2022552537000047
Figure 2022552537000048
Figure 2022552537000049
Figure 2022552537000050
Figure 2022552537000051
1に等しいsubpics_present_flagは、SPS RBSP構文において現在サブピクチャパラメータが存在することを示す。0に等しいsubpics_present_flagは、SPS RBSP構文において現在サブピクチャパラメータが存在しないことを示す。
注2 - ビットストリームがサブビットストリーム抽出処理の結果であり、サブビットストリーム抽出処理への入力ビットストリームのサブピクチャのサブセットのみを含むときに、SPSのRBSPにおいて1に等しいsubpics_present_flagの値をセットする必要があるかもしれない。
sps_num_subpics_minus1+1は、サブピクチャの数を指定する。sps_num_subpics_minus1は、0~254の範囲にある。存在しないときは、sps_num_subpics_minus1の値は、0に等しいと推論される。
subpic_ctu_top_left_x[i]は、CtbSizeYの単位でi番目のサブピクチャの左上のCTUの水平位置を指定する。構文要素の長さは、
[外1]
Figure 2022552537000052
ビットである。存在しないときは、subpic_ctu_top_left_x[i]の値は、0に等しいと推論される。
subpic_ctu_top_left_y[i]は、CtbSizeYの単位でi番目のサブピクチャの左上のCTUの垂直位置を指定する。構文要素の長さは、
[外2]
Figure 2022552537000053
ビットである。存在しないときは、subpic_ctu_top_left_y[i]の値は、0に等しいと推論される。
ubpic_width_minus1[i]+1は、CtbSizeYの単位でi番目のサブピクチャの幅を指定する。構文要素の長さは、Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY))ビットである。存在しないときは、subpic_width_minus1[i]の値は、
[外3]
Figure 2022552537000054
-1に等しいと推論される。
subpic_height_minus1[i]+1は、CtbSizeYの単位でi番目のサブピクチャの高さを指定する。構文要素の長さは、Ceil(Log2(pic_height_max_in_luma_samples/CtbSizeY))ビットである。存在しないときは、subpic_height_minus1[i]の値は、
[外4]
Figure 2022552537000055
-1に等しいと推論される。
1に等しいsubpic_treated_as_pic_flag[i]は、CVSにおいて各コーディングされたピクチャのi番目のサブピクチャが、ループ内フィルタリング動作を除く復号処理においてピクチャとして処理されることを指定する。0に等しいsubpic_treated_as_pic_flag[i]は、CVSにおいて各コーディングされたピクチャのi番目のサブピクチャが、ループ内フィルタリング動作を除く復号処理においてピクチャとして処理されないことを指定する。存在しないときは、subpic_treated_as_pic_flag[i]の値は、0に等しいと推論される。
1に等しいloop_filter_across_subpic_enabled_flag[i]は、CVSにおいて各コーディングされたピクチャにおけるi番目のサブピクチャの境界にわたってループ内フィルタリング動作が実行されてもよいことを指定する。
0に等しいloop_filter_across_subpic_enabled_flag[i]は、CVSにおいて各コーディングされたピクチャにおけるi番目のサブピクチャの境界にわたってループ内フィルタリング動作が実行されないことを指定する。
存在しないときは、loop_filter_across_subpic_enabled_pic_flag[i]の値は、1に等しいと推論される。
以下の制約が適用されるのはビットストリーム適合性の要件である。
- サブピクチャsubpicAとsubpicBの任意の2つのサブピクチャに対して、subpicAのインデックスがsubpicBのインデックスより小さいときに、サブPicAの任意のコーディングされたNALユニットは、サブPicBのコーディングされた任意のNALユニットを復号順に継承するものとする。
- サブピクチャの形状は、各サブピクチャが、復号されるときに、その全体の左境界および全体の上境界を、ピクチャ境界からなるか、以前に復号されたサブピクチャの境界からなるようにするものとする。
1に等しいsps_subpic_id_present_flagは、サブピクチャIdマッピングがSPSに存在することを指定する。
0に等しいsps_subpic_id_present_flagは、サブピクチャIdマッピングがSPSに存在しないことを指定する。
1に等しいsps_subpic_id_signalling_present_flagは、サブピクチャIdマッピングがSPSにおいてシグナリングされることを指定する。
0に等しいsps_subpic_id_signalling_present_flagは、サブピクチャIdマッピングがSPSにおいてシグナリングされないことを指定する。
存在しないときは、sps_subpic_id_signalling_present_flagの値は0に等しいと推論される。
sps_subpic_id_len_minus1+1は、構文要素sps_subpic_id[i]を表すために使用されるビット数を指定する。sps_subpic_id_len_minus1の値は、0~15の範囲(両端を含む)にあるものとする。
sps_subpic_id[i]は、i番目のサブピクチャのサブピクチャIdを指定する。sps_subpic_id[i]の構文要素の長さは、sps_subpic_id_len_minus1+1ビットである。存在しないとき、およびsps_subpic_id_present_flagが0に等しいときに、sps_subpic_id[i]の値は、0~sps_num_subpics_minus1の範囲(両端を含む)の各iに対してiに等しいと推論される。
ph_pic_parameter_set_idは、使用中のPPSに対するpps_pic_parameter_set_idの値を指定する。ph_pic_parameter_set_idの値は、0~63の範囲(両端を含む)にあるものとする。
ビットストリーム適合性の要件は、ピクチャヘッダのTemporalIdの値が、ph_pic_parameter_set_idに等しいpps_pic_parameter_set_idを有するPPSのTemporalIdの値以上であるものとすることである。
1に等しいph_subpic_id_signalling_present_flagは、プクチャヘッダにおいてサブピクチャIdマッピングがシグナリングされることを指定する。0に等しいph_subpic_id_signalling_present_flagは、プクチャヘッダにおいてサブピクチャIdマッピングがシグナリングされないことを指定する。
ph_subpic_id_len_minus1+1は、構文要素ph_subpic_id[i]を表すために使用されるビット数を指定する。pic_subpic_id_len_minus1の値は、0~15の範囲(両端を含む)にあるものとする。ビットストリーム適合性の要件は、ph_subpic_id_len_minus1の値が、CVSにおけるコーディングされたピクチャによって参照されるすべてのピクチャヘッダに対して同じであるものとすることである。
ph_subpic_id[i]は、i番目のサブピクチャのサブピクチャIdを指定する。ph_subpic_id[i]構文要素の長さは、ph_subpic_id_len_minus1+1ビットである。
リストSubpicIdList[i]は、以下のように導出される。
Figure 2022552537000056
デブロッキングフィルタ処理
一般
この処理への入力は、デブロッキングの前に再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
この処理の出力は、デブロッキングの後に修正され再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
ピクチャの垂直エッジが、最初にフィルタリングされる。次いで、ピクチャの水平エッジが、垂直エッジフィルタリング処理によって修正されたサンプルを入力としてフィルタリングされる。各CTUのCTBの垂直エッジと水平エッジは、コーディングユニットベースで別々に処理される。コーディングユニット内のコーディングブロックの垂直エッジは、コーディングブロックの左側のエッジから開始して、幾何学的順序でコーディングブロックの右側に向かってエッジを通して進むように、フィルタリングされる。コーディングユニット内のコーディングブロックの水平エッジは、コーディングブロックの上側のエッジから開始して、幾何学的順序でコーディングブロックの下側に向かってエッジを通して進むように、フィルタリングされる。
注 - フィルタリング処理は、本明細書ではピクチャベースで指定されているが、同じ出力値を生成するように復号器が処理依存性の順序を適切に説明するのであれば、フィルタリング処理は、同等の結果を持つコーディングユニットベースで実装され得る。
デブロッキングフィルタ処理は、以下のタイプのエッジを除き、ピクチャのすべてのコーディングサブブロックエッジおよびトランスフォームブロックエッジに適用される。
- ピクチャの境界でのエッジ

[外5]
Figure 2022552537000057
- pps_loop_filter_across_virtual_boundaries_disabled_flagが1に等しいときに、ピクチャの仮想境界と一致するエッジ
- loop_filter_across_tiles_enabled_flag が0に等しいときに、タイル境界と一致するエッジ
- loop_filter_across_slices_enabled_flagが0に等しいときに、スライス境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライスの上側または左側の境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライス内のエッジ
- 輝度コンポーネントの4×4のサンプルグリッド境界に対応しないエッジ
- 色差コンポーネントの8×8のサンプルグリッド境界に対応しないエッジ
- エッジの両側が1に等しいintra_bdpcm_luma_flagを有する輝度コンポーネント内のエッジ
- エッジの両側が1に等しいintra_bdpcm_chroma_flagを有する色差コンポーネント内のエッジ
- 関連するトランスフォームユニットのエッジでない色差サブブロックのエッジ
...
一方向のためのデブロッキングフィルタ処理
この処理への入力は、以下のようである。
- 輝度(DUAL_TREE_LUMA)または色差コンポーネント(DUAL_TREE_CHROMA)が現在処理されているかどうかを指定する変数treeType
- treeTypeがDUAL_TREE_LUMAに等しいときは、デブロッキング前の再されたピクチャ、すなわちrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
- 垂直(EDGE_VER)をフィルタリングするか、水平(EDGE_HOR)をフィルタリングするかを指定する変数edgeType
この処理の出力は、デブロッキング後に修正され再構成されたピクチャ、すなわち、
- treeTypeがDUAL_TREE_LUMAに等しいときに、アレイrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
変数firstCompIdxおよびlastCompIdxは、以下のように導出される。
Figure 2022552537000058
コーディングブロック幅nCbW、コーディングブロック高さnCbHおよびコーディングブロックの左上のサンプルの位置(xCb,yCb)を有する、firstCompIdx~lastCompIdxの範囲(両端を含む)の色コンポーネントインデックスcIdxによって示されるコーディングユニットの色コンポーネントごとの各コーディングユニット及び各コーディングブロックに対して、cIdxが0に等しいとき、cIdxが0に等しくなく、edgeTypeがEDGE_VERに等しく、xCb%8が0に等しいとき、またはcIdxが0に等しくなく、edgeTypeがEDGE_HORに等しく、yCb%8が0に等しいときに、エッジは以下の順序付けされたステップによってフィルタリングされる。
1. 変数filterEdgeFlagは、以下のように導出される。
- edgeTypeがEDGE_VERに等しく、以下の条件のうちの1つ以上が真である場合、filterEdgeFlagは、0に等しくセットされる。
- 現在のコーディングブロックの左境界は、ピクチャの左境界である。
[外6]
Figure 2022552537000059
- 現在のコーディングブロックの左境界は、タイルの左境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、スライスの左境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、ピクチャの垂直仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、edgeTypeがEDGE_HORに等しく、以下の条件のうちの1つ以上が真である場合、変数filterEdgeFlagは、0に等しくセットされる。
- 現在の輝度コーディングブロックの上境界は、ピクチャの上境界である。
[外7]
Figure 2022552537000060
- 現在のコーディングブロックの上境界は、タイルの上境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、スライスの上境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、ピクチャの水平仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、filterEdgeFlagは、1に等しくセットされる。
2.7 例示的なTPM、HMVPおよびGEO
VVCにおけるTPM(triangular Prediction Mode)は、ブロックを異なる動き情報を有する2つの三角形に分割する。
VVCにおけるHMVP(History-based Motion vector Prediction)は、動きベクトル予測に使用される動き情報のテーブルを維持する。テーブルは、インターコーディングされたブロックを復号した後に更新されるが、インターコーディングされたブロックがTPMコーディングされている場合、更新されない。
GEO(Geometry Partition Mode)はTPMの拡張である。GEOでは、ブロックを直線によって2つのパーティションに分割することができ、このパーティションは、三角形であってもなくてもよい。
2.8 ALF、CC-ALFおよび仮想境界
VVCにおけるALF(Adaptive Loop-Filter)は、ピクチャが復号された後に適用され、ピクチャ品質を向上させる。
VB(Virtual Boundary)がVVCにおいて採用され、ALFをハードウェア設計にフレンドリーなものにした。VBでは、ALFは2つのALF仮想境界によって区切られたALF処理ユニットにおいて実行される。
CC-ALF(クロスコンポーネントALF)は、輝度サンプルの情報を参照して色差サンプルをフィルタリングする。
3.開示された実施形態によって解決される技術的課題の例
(1) サブピクチャの制約を違反する可能性のある設計がいくつかある。
A. アフィン構成された候補におけるTMVPは、現在のサブピクチャの範囲から、並置されたピクチャにおけるMVをフェッチすることがある。
B. BDOF(Bi-Directional Optical Flow)とPROF(Prediction Refinement Optical Flow)における勾配を導出するときに、整数参照サンプルの2つの拡張行と2つの拡張列がフェッチされる必要がある。
これらの参照サンプルは、現在のサブピクチャの範囲外となることがある。
C. LMCS(luma mapping chroma scaling)における色差残差スケーリング因子を導出するときに、アクセスされた再構成輝度サンプルは、現在のサブピクチャの範囲外となることがある。
D. 近隣のブロックは、輝度イントラ予測モード、イントラ予測のための参照サンプル、CCLMのための参照サンプル、マージ/AMVP/CIIP/IBC/LMCSのための空間的近隣候補のための近隣のブロックの可用性、量子化パラメータ、CABAC初期化処理、左上の構文要素を使用したctxInc導出、および構文要素mtt_split_cu_vertical_flagのためのctxIncforを導出するときに、現在のサブピクチャの範囲外となることがある。サブピクチャの表示は、不完全なCTUを有するサブピクチャにつながることがある。CTUパーティションおよびCUスプリット処理は、不完全なCTUを考慮する必要があることがある。
(2) サブピクチャに関するシグナリングされた構文要素は任意の大きさであることがあり、オーバーフロー問題を引き起こすことがある。
(3) サブピクチャの表現は、非矩形サブピクチャにつながることがある。
(4) 現在、サブピクチャおよびサブピクチャグリッドは4つのサンプル単位で定義されている。構文要素の長さは、ピクチャの高さを4で割ったものに依存する。しかし、現在のpic_width_in_luma_samplesとpic_height_in_luma_samplesはMax(8, MinCbSizeY)の整数倍数とするものであるため、サブピクチャグリッドは8サンプルの単位で定義する必要があってもよい。
(5) SPS構文pic_width_max_in_luma_samples
およびpic_height_max_in_luma_samplesは、8以上に制限される必要があってもよい。
(6) 参照ピクチャの再サンプリング/スケーラビリティとサブピクチャとの間の相互作用は、現在の設計では考慮されていない。
(7) 時間的フィルタリングにおいて、異なるサブピクチャにわたるサンプルが必要とされることがある。
(8) スライスをシグナリングするときに、情報は場合によってはシグナリングせずに推論され得る。
(9) 定義されたスライスの全てが、ピクチャ全体またはサブピクチャをカバーすることができない可能性がある。
(10) 2つのサブピクチャのIDは、同一であることがある。
(11) pic_width_max_in_luma_samples/CtbSizeYが0 に等しくなることがあり、意味のないLog2()動作をもたらす。
(12) PHにおけるIDはPPSよりも好ましいが、SPSよりは好ましくなく、一貫性がない。
(13) PPSにおけるlog2_transform_skip_max_size_minus2は、SPSにおけるsps_transform_skip_enabled_flagに依存して解析され、解析依存をもたらす。
(14) デブロッキングのためのloop_filter_across_subpic_enabled_flagは、隣接するサブピクチャを考慮せずに、現在のサブピクチャのみを考慮する。
4.例示的な技法および実施形態
以下の詳細なリストは、一般的な概念を説明するための例として考慮されるべきである。これらの項目は、狭義に解釈されるべきではない。さらに、これらの項目は、任意の方式で組み合わせることができる。以下、時間的フィルタは、他のピクチャにおけるサンプルを必要とするフィルタを表すために使用される。Max(x,y)は、xおよびyのうちの大きい方のものを返す。Max(x,y)は、xおよびyのうちの小さい方のものを返す。
1. アフィン動き候補を生成するためにピクチャにおいて時間的MV予測子がフェッチされる位置(位置RBという名前)は、必要なサブピクチャ内になければならず、必要なサブピクチャの左上のコーナー座標が(xTL,yTL)であり、必要なサブピクチャの右下の座標が(xBR,yBR)であると想定している。
a. 一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b. 一例では、座標(x,y)を有する位置RBが必要なサブピクチャから外れている場合、時間的MV予測子は、利用不可として処理される。
i. 一例では、位置RBは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置RBは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置RBは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置RBは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置RBは、必要なサブピクチャから外れている場合、RBの置換が利用される。
i. 代替的には、さらに、置換位置は、必要なサブピクチャ内にあるものとする。
d. 一例では、位置RBは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
iv. 一例では、xは、y=Max(y,yTL)としてクリップされる。
e. 一例では、位置RBは、並置されたピクチャ内の現在のブロックの対応するブロック内の右下の位置であってもよい。
f. 提案した方法は、現在のピクチャとは異なるピクチャからの動き情報にアクセスすることを必要とする他のコーディングツールにおいて利用されてもよい。
g. 一例では、上記の方法が適用されるかどうか(例えば、位置RBは、必要なサブピクチャ(例えば、1.aおよび/または1.bで主張されているようにするために)内になければならないかどうか)は、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
2. 補間処理において使用されない参照で整数サンプルがフェッチされる位置(位置Sという名前)は、必要なサブピクチャ内になければならず、必要なサブピクチャの左上のコーナー座標が(xTL,yTL)であり、必要なサブピクチャの右下の座標が(xBR,yBR)であると想定している。
a.
一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b.
一例では、座標(x,y)を有する位置Sが必要なサブピクチャから外れている場合、参照サンプルは、利用不可として処理される。
i. 一例では、位置Sは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置Sは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置Sは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置Sは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置Sは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
iv. 一例では、xは、y=Max(y,yTL)としてクリップされる。
d. 一例では、位置Sは、要求されたサブピクチャ(例えば、2.aおよび/または2.bで主張されているようにするために)内になければならないかどうかは、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
e. 一例では、フェッチされた整数サンプルは、BDOFおよび/またはPORFにおける勾配を生成するために使用される。
3. 再構成された輝度サンプル値がフェッチされる位置(位置Rという名前)は、必要なサブピクチャ内にあってもよく、必要なサブピクチャの左上のコーナー座標が(xTL, yTL)であり、必要なサブピクチャの右下の座標が(xBR, yBR)であると想定している。
a. 一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b. 一例では、座標(x,y)を有する位置Rが必要なサブピクチャから外れている場合、参照サンプルは、利用不可として処理される。
i. 一例では、位置Rは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置Rは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置Rは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置Rは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置Rは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
iv. 一例では、xは、y=Max(y,yTL)としてクリップされる。
d. 一例では、位置Rは、要求されたサブピクチャ(例えば、4.aおよび/または4.bで主張されているようにするために)内になければならないかどうかは、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。
例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
e. 一例では、フェッチされた輝度サンプルは、LMCSにおける色差コンポーネントのためのスケーリング係数を導出するために使用される。
4. BT/TT/QTスプリット、BT/TT/QT深度導出、および/またはCUスプリットフラグのシグナリングのためのピクチャ境界チェックの位置(位置Nという名前)は、必要なサブピクチャ内になければならず、必要なサブピクチャの左上のコーナー座標が(xTL,yTL)であり、必要なサブピクチャの右下の座標が(xBR,yBR)であると想定している。
a. 一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b. 一例では、座標(x,y)を有する位置Nが必要なサブピクチャから外れている場合、参照サンプルは、利用不可として処理される。
i. 一例では、位置Nは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置Nは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置Nは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置Nは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置Nは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
d. 一例では、xは、y=Max(y,yTL)としてクリップされる。一例では、位置Nは、要求されたサブピクチャ(例えば、5.aおよび/または5.bで主張されているようにするために)内になければならないかどうかは、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
5. HMVP(History-based Motion Vector Prediction)テーブルは、1つのピクチャ内の新しいサブピクチャを復号する前にリセットされてもよい。
a. 一例では、IBCコーディングのために使用されるHMVPテーブルがリセットされてもよい。
b. 一例では、インターコーディングのために使用されるHMVPテーブルは、リセットされてもよい。
c. 一例では、イントラコーディングのために使用されるHMVPテーブルは、リセットされてもよい。
6. サブピクチャ構文要素は、N(N=8,32など)個のサンプル単位で定義されてもよい。
a. 一例では、N個のサンプル単位のサブピクチャ識別子グリッドの各要素の幅
b. 一例では、N個のサンプル単位のサブピクチャ識別子グリッドの各要素の高さ
c. 一例では、Nは、CTUの幅および/または高さにセットされる。
7. ピクチャ幅とピクチャ高さの構文要素は、K(K>=8)以上に制限されてもよい。
a. 一例では、ピクチャ幅を8以上に制限する必要があってもよい。
b. 一例では、ピクチャ高さを8以上に制限する必要があってもよい。
8. 適合ビットストリームは、ARC(Adaptive resolution conversion)/DRC(Dynamic resolution conversion)/RPR(Reference picture resampling)が1つのビデオユニット(例えば、シーケンス)に対して有効にされることが禁止されることを満たすものである。
a. 一例では、サブピクチャコーディングを有効にするシグナリングは、ARC/DRC/RPRを禁止する条件下であってもよい。
i. 一例では、subpics_present_flagが1に等しいように、サブピクチャが有効であるときに、このSPSがアクティブな全てのピクチャに対するpic_width_in_luma_samplesは、max_width_in_luma_samplesに等しい。
b. 代替的には、サブピクチャコーディングおよびARC/DRC/RPRは、両方とも、1つのビデオユニット(例えば、シーケンス)に対して有効にしてもよい。
i. 一例では、適合ビットストリームは、ARC/DRC/RPRによりダウンサンプリングされたサブピクチャが、依然として幅においてK個のCTUと高さにおいてM個のCTUの形式(KとMが両方とも整数である)にあることを満たすものとする。
ii. 一例では、適合ビットストリームは、ピクチャ境界(例えば、右境界および/または下境界)に位置しないサブピクチャに対して、ARC/DRC/RPRによりダウンサンプリングされたサブピクチャが、依然として幅においてK個のCTUと高さにおいてM個のCTUの形式(KとMが両方とも整数である)にあることを満たすものとする。
iii. 一例では、CTUサイズは、ピクチャ解像度に基づいて適応的に変更されてもよい。
1) 一例では、最大CTUサイズは、SPSにおいてシグナリングされてもよい。解像度の低い各ピクチャに対して、CTUサイズは、それに応じて、低減された解像度に基づいて変更され得る。
2) 一例では、CTUサイズは、SPSおよびPPS、および/またはサブピクチャレベルでシグナリングされてもよい。
9. 構文要素subpic_grid_col_width_minus1とsubpic_grid_row_height_minus1は制約されてもよい。
a. 一例では、subpic_grid_col_width_minus1がT1以下(またはT2より小さく)なければならない。
b. 一例では、subpic_grid_row_height_minus1がT2以下(またはT2より小さく)なければならない。
c. 一例では、適合ビットストリームにおいて、subpic_grid_col_width_minus1および/またはsubpic_grid_row_height_minus1は、項目3.aまたは3.bなどの制約に従わなければならない。
d. 一例では、3.aにおけるT1および/または3.bにおけるT2は、ビデオコーディング規格のプロファイル/レベル/階層に依存してもよい。
e. 一例では、3.aにおけるT1は、ピクチャ幅に依存してもよい。
i. たとえば、T1は、pic_width_max_in_luma_samples/4またはpic_width_max_in_luma_samples/4+Offに等しい。offは、1、2、-1、-2などであってもよい。
f. 一例では、3.bにおけるT2は、ピクチャ幅に依存してもよい。
i. たとえば、T1は、pic_height_max_in_luma_samples/4またはpic_height_max_in_luma_samples/4-1+Offに等しい。offは、1、2、-1、-2などであってもよい。
10. 2つのサブピクチャ間の境界は、2つのCTU間の境界でなければならないことが制約される。
a. 言い換えれば、CTUは、複数のサブピクチャでカバーすることはできない。
b. 一例では、subpic_grid_col_width_minus1の単位は、VVCのように4ではなく、CTU幅(32、64、128など)であってもよい。サブピクチャのグリッド幅は、(subpic_grid_col_width_minus1+1)*CTU幅とするべきである。
c. 一例では、subpic_grid_col_height_minus1の単位は、VVCにおけるように4ではなく、CTU高さ(32、64、128など)であってもよい。サブピクチャのグリッド高さは、(subpic_grid_col_height_minus1+1)*CTU高さとするべきである。
d. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
11. サブピクチャの形状は、矩形でなければならないことが制約される。
a. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
b. サブピクチャは矩形スライスのみを含んでもよい。例えば、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
12. 2つのサブピクチャはオーバラップすることができないことが制約される。
a. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
b. 代替的には、2つのサブピクチャが互いにオーバラップしてもよい。
13. ピクチャ内の任意の位置が、1つのサブピクチャのみによってカバーされなければならないことが制約される。
a. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
b. 代替的には、1つのサンプルがいずれのサブピクチャにも属さなくてもよい。
c. 代替的には、1つのアンプルが複数のサブピクチャに属してもよい。
14. 同じシーケンスにおいて提示されるすべての解像度にマッピングされる、SPSにおいて定義されるサブピクチャは、上述の制約された位置および/またはサイズに従うべきであることが制約されてもよい。
a. 一例では、同じシーケンスにおいて提示される解像度にマッピングされたSPSにおいて定義されるサブピクチャの幅と高さは、N個の(8、16、32のような)輝度サンプルの整数倍とするべきである。
b. 一例では、サブピクチャは、特定のレイヤに対して定義されてもよく、他のレイヤにマッピングされてもよい。
i. 例えば、サブピクチャは、シーケンス内で最も高い解像度を有するレイヤに対して定義されてもよい。
ii. 例えば、サブピクチャは、シーケンス内で最も低い解像度を有するレイヤに対して定義されてもよい。
iii. サブピクチャがどのレイヤに対して定義されているかは、SPS/VPS/PPS/PPS/スライスヘッダにおいてシグナリングされてもよい。
c. 一例では、サブピクチャおよび異なる解像度の両方が適用されるときに、すべての解像度(例えば、幅または高さ)は、所与の解像度の整数倍であってもよい。
d. 一例では、SPSにおいて定義されるサブピクチャの幅および/または高さは、CTUサイズの整数倍(例えば、M)であってもよい。
e. 代替的には、シーケンス内のサブピクチャおよび異なる解像度は、同時には許可されなくてもよい。
15. サブピクチャは特定のレイヤにのみ適用されてもよい。
a. 一例では、SPSにおいて定義されるサブピクチャは、シーケンス内で最も解像度の高いレイヤにのみ適用されてもよい。
b. 一例では、SPSにおいて定義されたサブピクチャは、シーケンス内で最も低い時間的IDを持つレイヤにのみ適用されてもよい。
c. サブピクチャをどのレイヤに適用し得るかは、SPS/VPS/PPSにおける1つ以上の構文要素によって示されてもよい。
d. サブピクチャをどのレイヤに適用することができないかは、SPS/VPS/PPSにおける1つ以上の構文要素によって示されてもよい。
16. 一例では、サブピクチャの位置および/または寸法は、subpic_grid_idxを使用せずにシグナリングされてもよい。
a. 一例では、サブピクチャの左上の位置がシグナリングされてもよい。
b. 一例では、サブピクチャの右下の位置がシグナリングされてもよい。
c. 一例では、サブピクチャの幅が、シグナリングされてもよい。
d. 一例では、サブピクチャの高さが、シグナリングされてもよい。
17. 時間的フィルタに対して、試料の時間的フィルタリングを実行するときに、現在のサンプルが属するのと同じサブピクチャ内のサンプルのみが使用されてもよい。必要なサンプルは、現在のサンプルが属しているものと同じピクチャ、または他のピクチャ内にあってもよい。
18. 一例では、パーティショニング方法(QT、水平BT、垂直BT、水平TT、垂直TT、スプリットなしなど)を適用するかどうか、および/またはどのように適用するかは、現在のブロック(またはパーティション)がサブピクチャの1つ以上の境界を越えるかどうかに依存してもよい。
a. 一例では、VVCにおけるパーティショニングのためのピクチャ境界処理方法は、ピクチャ境界がサブピクチャ境界に置き換えられるときにも適用され得る。
b. 一例では、パーティショニング方法(QT、水平BT、垂直BT、水平TT、垂直TT、スプリットなしなど)を表す構文要素(例えば、フラグ)を解析するかどうかは、現在のブロック(又はパーティション)がサブピクチャの1つ以上の境界を越えるかどうかに依存してもよい。
19. 各サブピクチャの独立したコーディングで1つのピクチャを複数のサブピクチャに分割する代わりに、ピクチャを少なくとも2つのサブ領域のセットに分割することが提案されており、第1のセットは複数のサブピクチャを含み、第2のセットは残りのすべてのサンプルを含む。
a. 一例では、第2のセットにおけるサンプルは、いかなるサブピクチャにもない。
b. 代替的には、さらに、第2のセットは、第1のセットの情報に基づいて符号化/復号されてもよい。
c. 一例では、デフォルト値は、サンプル/MxKサブ領域が第2のセットに属するかどうかをマークするために利用されてもよい。
i. 一例では、デフォルト値は、(max_subpics_minus1+K)に等しくセットされてもよく、ここで、Kは1より大きい整数である。
ii. デフォルト値は、subpic_grid_idx[i][j]に割り当てられ、グリッドが2番目のセットに属することを示す。
20. 構文要素subpic_grid_idx[i][j]をmax_subpics_minus1より大きくすることができないことを提案する。
a. 例えば、適合ビットストリームにおいて、subpic_grid_idx[i][j]をmax_subpics_minus1より大きくすることができないことが制約される。
b. 例えば、subpic_grid_idx[i][j]をコーディングするコードワードをmax_subpics_minus1より大きくすることができない。
21. 0~max_subpics_minus1の任意の整数は、少なくとも1つのsubpic_grid_idx[i][j]に等しくなければならないことを提案する。
22. IBC仮想バッファは、1つのピクチャ内の新しいサブピクチャを復号する前にリセットされてもよい。
a. 一例では、IBC仮想バッファ内の全てのサンプルは、-1にリセットされてもよい。
23. パレットエントリリストは、1つのピクチャ内の新しいサブピクチャを復号する前にリセットされてもよい。
a. 一例では、PredictorPaletteSizeは、1つのピクチャ内の新しいサブピクチャを復号する前に、0に等しくセットされてもよい。
24. スライスの情報(例えば、スライスの数および/またはスライスの範囲)をシグナリングするかどうかは、タイルの数および/またはブリックの数に依存してもよい。
a. 一例では、ピクチャ内のブリックの数が1である場合、num_slices_in_pic_minus1はシグナリングされず、0であると推論される。
b. 一例では、ピクチャ内のブリックの数が1である場合、スライスの情報(例えば、スライスの数および/またはスライスの範囲)は、シグナリングされなくてもよい。
c. 一例では、ピクチャ内のブリックの数が1である場合、スライスの数は1であると推論されてもよい。スライスは、ピクチャ全体をカバーする。一例では、ピクチャ内のブリックの数が1である場合、single_brick_per_slice_flagはシグナリングされず、0であると推論される。
i. 代替的には、ピクチャ内のブリックの数が1である場合、single_brick_per_slice_flagはシグナリングされず、0であると推論される。
d. 例示的な構文設計は、以下の通りである。
Figure 2022552537000061
25. slice_addressをシグナリングするかどうかは、スライスが矩形であるとシグナリングされるかどうか(例えば、rect_slice_flagが0か1か)から切り離されてもよい。
a. 例示的な構文設計は、以下の通りである。
Figure 2022552537000062
26. slice_addressをシグナリングするかどうかは、スライスが矩形であるとシグナリングされるときのスライスの数に依存してもよい。
Figure 2022552537000063
27. num_bricks_in_slice_minus1をシグナリングするかどうかは、slice_addressおよび/またはピクチャ内のブリックの数に依存してもよい。
a. 例示的な構文設計は、以下の通りである。
Figure 2022552537000064
28. loop_filter_across_bricks_enabled_flagをシグナリングするかどうかは、タイルの数および/またはピクチャ内のブリックの数に依存してもよい。
a. 一例では、ブリックの数が2より小さい場合、loop_filter_across_bricks_enabled_flagは、シグナリングされない。
b. 例示的な構文設計は、以下の通りである。
Figure 2022552537000065
29. ビットストリーム適合性の要件は、ピクチャのすべてのスライスがピクチャ全体をカバーしなければならないことである。
a. スライスが矩形であることがシグナリングされるときに(例えば、rect_slice_flagが1に等しいときに)、この要件が満たさなければならない。
30. ビットストリーム適合性の要件は、サブピクチャのすべてのスライスがサブピクチャ全体をカバーしなければならないことである。
a. スライスが矩形であることがシグナリングされるときに(例えば、rect_slice_flagが1に等しいときに)、この要件が満たさなければならない。
31. ビットストリーム適合性の要件は、スライスが複数のサブピクチャとオーバラップできないことである。
32. ビットストリーム適合性の要件は、タイルが複数のサブピクチャとオーバラップできないことである。
33. ビットストリーム適合性の要件は、ブリックが複数のサブピクチャとオーバラップできないことである。
以下の議論では、寸法CW×CHを有する基本ユニットブロック(BUB)は、矩形領域である。例えば、BUBはコーディングツリーブロック(CTB)であってもよい。
34. 一例では、サブピクチャの数(Nとして示される)が、シグナリングされてもよい。
a. 適合ビットストリームについて、サブピクチャが使用される場合(例えば、subpics_present_flagが1に等しい場合)、ピクチャ中に少なくとも2つのサブピクチャがあることが必要であってもよい。
b. 代替的には、Nマイナスd(すなわち、N-d)は、シグナリングされてもよく、ここで、dは、0、1、または2などの整数である。
c. 例えば、N-dは、固定長コーディング、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、N-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。
シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUBの総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(W/CW)×Ceiling(H/CH)として導出されてもよく、ここで、WおよびHは、ピクチャの幅および高さを表し、CWおよびCHは、BUBの幅および高さを表す。
d. 例えば、N-dは、unary符号または切り詰められたunary符号でコーディングされてもよい。
e. 一例では、N-dの許容最大値は固定数であってもよい。
i. 代替的には、N-dの許容最大値は、ピクチャ中のBUBの総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
35. 一例では、サブピクチャは、その選択された位置(例えば、左上/右上/左下/右下)および/またはその幅および/または高さのうちの1つ以上の表示によってシグナリングされてもよい。
a. 一例では、サブピクチャの左上の位置は、寸法CW×CHを有する基本ユニットブロックの粒度でシグナリングされてもよい。
i. 例えば、サブピクチャの左上のBUBのBUBに関して列インデックス(Colとして示される)が、シグナリングされてもよい。
1) 例えば、Col-dが、シグナリングされてもよく、ここで、dは、0、1、または2などの整数である。
a) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのColに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
b) Col-dの符号がシグナリングされてもよい。
ii. 例えば、サブピクチャの左上のBUBのBUBに関する行インデックス(Rowとして示される)が、シグナリングされてもよい。
1) 例えば、Row-dが、シグナリングされてもよく、ここで、dは、0、1、または2などの整数である。
a) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのRowに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
b) Row-dの符号がシグナリングされてもよい。
iii. 上述の行/列インデックス(Rowとして示される)が、CTB(Codling Tree Block)において表わされてもよく、例えば、ピクチャの左上の位置に対するxまたはy座標は、CTBサイズによって分割され、シグナリングされてもよい。
iv. 一例では、サブピクチャの位置をシグナリングするかどうかは、サブピクチャインデックスに依存してもよい。
1)一例では、ピクチャ内の最初のサブピクチャに対して、左上の位置がシグナリングされなくてもよい。
a) 代替的には、さらに、左上の位置が、例えば、(0,0)であると推論されてもよい。
2) 一例では、ピクチャ内の最後のサブピクチャに対して、左上の位置がシグナリングされなくてもよい。
a) 左上の位置は、以前にシグナリングされたサブピクチャの情報に依存して推論されてもよい。
b. 一例では、サブピクチャの幅/高さ/選択された位置の表示は、切り詰められた一進法/切り詰められた二進法/一進号/固定長/K-th EG符号(例えば、K=0,1,2,3)でシグナリングされてもよい。
c. 一例では、サブピクチャの幅は、寸法CW×CHを有するBUBの粒度でシグナリングされてもよい。
i. 例えば、サブピクチャ内のBUBの列の数(Wとして示される)が、シグナリングされてもよい。
ii. 例えば、W-dが、シグナリングされてもよく、ここで、dは、0、1または2などの整数である。
1) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのWに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
2) W-dの符号がシグナリングされてもよい。
d. 一例では、サブピクチャの高さは、寸法CW×CHを有するBUBの粒度でシグナリングされてもよい。
i. 例えば、サブピクチャ内のBUBの行の数(Hとして示される)は、シグナリングされてもよい。
ii. 例えば、H-dが、シグナリングされてもよく、ここで、dは、0、1または2などの整数である。
1) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのHに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
2) H-dの符号がシグナリングされてもよい。
e. 一例では、Col-dは、固定長符号、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、Col-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB列の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(W/CW)として導出されてもよく、ここで、Wは、ピクチャの幅を表し、CWは、BUBの幅を表す。
f. 一例では、Row-dは、固定長符号、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、Row-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。
シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB行の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(H/CH)として導出されてもよく、ここで、Hは、ピクチャの高さを表し、CHは、BUBの高さを表す。
g. 一例では、W-dは、固定長符号、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 例えば、xまたはx-dxは、W-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB列の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(W/CW)として導出されてもよく、ここで、Wは、ピクチャの幅を表し、CWは、BUBの幅を表す。
h. 一例では、H-dは、固定長符号、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、H-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。
シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB行の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(H/CH)として導出されてもよく、ここで、Hは、ピクチャの高さを表し、CHは、BUBの高さを表す。
i. Col-dおよび/またはRow-dは、全てのサブピクチャに対してシグナリングされてもよい。
i. 代替的には、Col-dおよび/またはRow-dは、全てのサブピクチャに対してシグナリングされなくてもよい。
1) Col-dおよび/またはRow-dは、サブピクチャの数が2より小さい(1に等しい)場合、シグナリングされなくてもよい。
2) 例えば、Col-dおよび/またはRow-dは、最初のサブピクチャ(例えば、サブピクチャインデックス(またはサブピクチャID)が0に等しい)に対してシグナリングされなくてもよい。
a) シグナリングされないときに、それらは、0であると推論されてもよい。
3) 例えば、Col-dおよび/またはRow-dは、最後のサブピクチャ(例えば、サブピクチャインデックス(またはサブピクチャID)がNumSubPics-1に等しい)に対してシグナリングされてなくてもよい。
a) シグナリングされないときに、それらは、すでにシグナリングされているサブピクチャの位置や寸法に依存して推論されてもよい。
j. W-dおよび/またはH-dは、全てのサブピクチャに対してシグナリングされてもよい。
i. 代替的には、W-dおよび/またはH-dは、全てのサブピクチャに対してシグナリングされなくてもよい。
1) W-dおよび/またはH-dは、サブピクチャの数が2より小さい(1に等しい)場合、シグナリングされなくてもよい。
2) 例えば、Wl-dおよび/またはH-dは、最後のサブピクチャ(例えば、サブピクチャインデックス(またはサブピクチャID)がNumSubPics-1に等しい)に対してシグナリングされてなくてもよい。
a) シグナリングされないときに、それらは、すでにシグナリングされているサブピクチャの位置や寸法に依存して推論されてもよい。
k. 上記の項目において、BUBは、CTB(Coding Tree Block)であってもよい。
36. 一例では、サブピクチャの情報は、CTBサイズの情報(例えば、log2_ctu_size_minus5)が既にシグナリングされた後にシグナリングされるべきである。
37. subpic_treated_as_pic_flag[i]は、各サブピクチャに対してシグナリングされなくてもよい。その代わりに、1つのsubpic_treated_as_pic_flagは、サブピクチャが全てのサブピクチャに対するピクチャとして処理されるかどうかを制御するためにシグナリングされる。
38. loop_filter_across_subpic_enabled_flag[i]は、各サブピクチャに対してシグナリングされなくてもよい。その代わりに、1つのloop_filter_across_subpic_enabled_flagは、ループフィルタが全てのサブピクチャに対してサブピクチャにわたって適用され得るかどうかを制御するためにシグナリングされる。
39. subpic_treated_as_pic_flag[i](subpic_treated_as_pic_flag)および/またはloop_filter_across_subpic_enabled_flag[i](loop_filter_across_subpic_enabled_flag)が、条件付きでシグナリングされてもよい。
a. 一例では、subpic_treated_as_pic_flag[i]および/またはloop_filter_across_subpic_enabled_flag[i]は、サブピクチャの数が2より小さい(1に等しい)場合、シグナリングされなくてもよい。
40. RPRは、サブピクチャが使用されるときに、適用されてもよい。
a. 一例では、RPRにおけるスケーリング比は、{1:1、1:2および/または2:1}または{1:1、1:2および/または2:1、1:4および/または4:1}、{1:1、1:2および/または2:1、1:4および/または4:1、1:8および/または8:1}などのサブピクチャが使用されるときに、限定的にセットされるように制約されてもよい。
b. 一例では、ピクチャAとピクチャBの解像度が異なる場合、ピクチャAのCTBサイズとピクチャBのCTBサイズが異なってもよい。
c. 一例として、寸法SAW×SAHのサブピクチャSAがピクチャA内にあり、寸法SBW×SBHのサブピクチャSBがピクチャB内にあり、SAがSBに対応し、ピクチャAとピクチャBの間のスケーリング比が水平方向と垂直方向に沿ってRwとRhであるとすると、
i. SAW/SBWまたはSBW/SAWは、Rwに等しくなければならない。
ii. SAH/SBHまたはSBH/SAHは、Rhに等しくなければならない。
41. サブピクチャが使用されるときに例えば、sub_picts_present_flagが真であるときに)、サブピクチャインデックス(またはサブピクチャID)は、スライスヘッダにおいてシグナリングされてもよく、スライスアドレスは、ピクチャ全体ではなく、サブピクチャにおけるアドレスとして中断される。
42. 第1のサブピクチャと第2のサブピクチャが同じサブピクチャでない場合、第1のサブピクチャのサブピクチャIDは、第2のサブピクチャのサブピクチャIDとは異なっていなくてはならないことが必要とされる。
a. 一例では、iがjに等しくない場合、sps_subpic_id[i]がsps_subpic_id[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
b. 一例では、iがjに等しくない場合、pps_subpic_id[i]がpps_subpic_id[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
c. 一例では、iがjに等しくない場合、ph_subpic_id[i]がph_subpic_id[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
d. 一例では、iがjに等しくない場合、SubpicIdList[i]がSubpicIdList[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
e. 一例では、X_subpic_id[i]X_subpic_id[ i -P]に等しいD[i]として示される差分が、シグナリングされてもよい。
i. 例えば、Xはsps、ppsまたはphであってもよい。
ii. 例えば、Pが1に等しい。
iii. 例えば、i>Pである。
iv. 例えば、D[i]は0より大きくなければならない。
v. 例えば、D[i]-1は、シグナリングされてもよい。
43. Ceil(Log2(SS))ビットであるように、左上のCTUの水平位置または垂直位置(例えば、subpic_ctu_top_left_x または subpic_ctu_top_left_y)を指定する構文要素の長さが導出され得ることが提案され、SSは0より大きくなければならない。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
a. 一例では、構文要素が左上のCTUの水平位置(例えば、subpic_ctu_top_left_x)を指定するときに、SS=(pic_width_max_in_luma_samples+RR)/CtbSizeYである。
b. 一例では、構文要素が左上のCTUの垂直位置(例えば、subpic_ctu_top_left_y)を指定するときに、SS=(pic_height_max_in_luma_samples+RR)/CtbSizeYである。
c. 一例では、RRは、CtbSizeY-1などの非ゼロの整数である。
44. Ceil(Log2(SS))ビットであるように、サブピクチャの左上のCTUの水平位置または垂直位置(例えば、subpic_ctu_top_left_x または subpic_ctu_top_left_y)を指定する構文要素の長さが導出され得ることが提案され、SSは0より大きくなければならない。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
a. 一例では、構文要素がサブピクチャの左上のCTUの水平位置(例えば、subpic_ctu_top_left_x)を指定するときに、SS=(pic_width_max_in_luma_samples+RR)/CtbSizeYである。
b. 一例では、構文要素がサブピクチャの左上のCTUの垂直位置(例えば、subpic_ctu_top_left_y)を指定するときに、SS=(pic_height_max_in_luma_samples+RR)/CtbSizeYである。
c. 一例では、RRは、CtbSizeY-1などの非ゼロの整数である。
45. Ceil(Log2(SS))-Pであるように、サブピクチャの幅または高さ(例えば、subpic_width_minus1またはsubpic_height_minus1)を指定する構文要素の長さのデフォルト値(1などのオフセットPを加えてもよい)が導出され得ることが提案され、SSは0より大きくなければならない。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
a. 一例では、構文要素がサブピクチャのデフォルト幅(例えば、subpic_width_minus1)(オフセットPを加えてもよい)を指定するときに、SS=(pic_width_max_in_luma_samples+RR)/CtbSizeYである。
b. 一例では、構文要素がサブピクチャのデフォルト高さ(例えば、subpic_height_minus1)(オフセットPを加えてもよい)を指定するときに、SS=(pic_height_max_in_luma_samples+RR)/CtbSizeYである。
c. 一例では、RRは、CtbSizeY-1などの非ゼロの整数である。
46. サブピクチャのIDの情報は、その情報がシグナリングされるべきであると決定されたときに、少なくともSPS、PPS、およびピクチャヘッダのいずれかでシグナリングされるべきであることが提案されている。
a. 一例では、sps_subpic_id_present_flagが1に等しい場合、sps_subpic_id_signalling_present_flag、pps_subpic_id_signalling_present_flag、およびph_subpic_id_signalling_present_flagのうちの少なくとも1つが、1に等しくあるべきことが、適合ビットストリームの要件である。
47. サブピクチャのIDの情報が、SPS、PPS、およびピクチャヘッダのいずれでもシグナリングされない場合、その情報がシグナリングされるべきであると決定されることが提案されている。デフォルトIDが割り当てられるべきである。
a. 一例では、sps_subpic_id_signalling_present_flag、pps_subpic_id_signalling_present_flag、ph_subpic_id_signalling_present_flagがすべて0であり、sps_subpic_id_present_flagが1に等しい場合、SubpicIdList[i]はi+Pに等しくセットされるべきであり、Pは0などのオフセットである。例示的な説明は:以下の通りである。
Figure 2022552537000066
48. サブピクチャIDの情報は、対応するPPSでシグナリングされる場合、ピクチャヘッダでシグナリングされないことを提案する。
a. 例示的な構文設計は、以下の通りである。
Figure 2022552537000067
b. 一例では、サブピクチャIDは、SPSにおいてシグナリングされる場合、SPSにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、PPSにおいてシグナリングされる場合、PPSにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、ピクチャヘッダにおいてシグナリングされる場合、ピクチャヘッダにおいてシグナリングされるサブピクチャIDの情報に従ってセットされる。例示的な説明は、以下の通りである。
Figure 2022552537000068
c. 一例では、サブピクチャIDは、ピクチャヘッダにおいてシグナリングされる場合、ピクチャヘッダにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、PPSにおいてシグナリングされる場合、PPSにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、SPSにおいてシグナリングされる場合、SPSダにおいてシグナリングされるサブピクチャIDの情報に従ってセットされる。例示的な説明は、以下の通りである。
Figure 2022552537000069
49. エッジE上のデブロッキング処理は、エッジの両側(P側とQ側で示される)のサブピクチャ境界を超えてループフィルタリングが許可されているかどうかの決定(例えば、loop_filter_across_subpic_enabled_flagによって決定される)に依存すべきであることを提案する。P側は、現在のブロックの側を表し、Q側は、隣接するブロックの側を表し、これは、異なるサブピクチャに属してもよい。以下の議論では、P側とQ側が2つの異なるサブピクチャに属すると想定する。loop_filter_across_subpic_enabled_flag[P]=0/1は、P側を含むサブピクチャのサブピクチャ境界を超えてループフィルタリングが許可されていない/許可されていることを意味する。loop_filter_across_subpic_enabled_flag[Q]=0/1は、Q側を含むサブピクチャのサブピクチャ境界を超えてループフィルタリングが許可されていない/許可されていることを意味する。
a. 一例では、loop_filter_across_subpic_enabled_flag[P]が0に等しいか、またはloop_filter_across_subpic_enabled_flag[Q]が0に等しい場合、Eはフィルタリングされない。
b. 一例では、loop_filter_across_subpic_enabled_flag[P]が0に等しく、loop_filter_across_subpic_enabled_flag[Q]が0に等しい場合、Eはフィルタリングされない。
c. 一例では、Eの両側をフィルタリングするかどうかは、別々に制御される。
i. 例えば、EのP側は、loop_filter_across_subpic_enabled_flag[P]が1に等しい場合にのみフィルタリングされる。
ii. 例えば、EのQ側は、loop_filter_across_subpic_enabled_flag[Q]が1に等しい場合にのみフィルタリングされる。
50. トランスフォームスキップに使用される最大ブロックサイズ(log2_transform_skip_max_size_minus2など)を指定するPPSにおける構文要素SEのシグナリング/解析は、SPSにおいて任意の構文要素(sps_transform_skip_enabled_flagなど)から切り離すべきであることを提案する。
a. 例示的な構文変更は、以下の通りである。
Figure 2022552537000070
b. 代替的には、SEは、SPSにおいてシグナリングされてもよく、例えば、以下の通りである。
Figure 2022552537000071
c. 代替的には、SEは、ピクチャヘッダにおいてシグナリングされてもよく、例えば、以下の通りである。
Figure 2022552537000072
51. 最初のブロックを復号した後にHMVPテーブル(またはリスト/ストレージ/マップなどと名付けられる)を更新するかどうか、および/またはどのように更新するかは、最初のブロックがGEOでコーディングされているかどうかに依存してもよい。
a. 一例では、最初のブロックがGEOでコーディングされている場合、最初のブロックを復号した後でHMVPテーブルが更新されなくてもよい。
b. 一例では、HMVPテーブルは、最初のブロックがGEOでコーディングされている場合、最初のブロックを復号した後に更新されてもよい。
i. 一例では、HMVPテーブルは、GEOによって分割された1つのパーティションの動き情報で更新されてもよい。
ii. 一例では、HMVPテーブルは、GEOによって分割された複数のパーティションの動き情報で更新されてもよい
52. CC-ALFでは、現在の処理ユニット(例えば、2つのALF仮想境界によって区切られたALF処理ユニット)から外れた輝度サンプルは、対応する処理ユニットの色差サンプルのフィルタリングから除外される。
a. 現在の処理ユニットから外れたパディングされた輝度サンプルを使用して、対応する処理ユニットの色差サンプルをフィルタリングしてもよい。
i. 本文書に開示されている任意のパディング方法は、輝度サンプルをパディングするために使用されてもよい。
b. 代替的には、現在の処理ユニットから外れた輝度サンプルを使用して、対応する処理ユニットの色差サンプルをフィルタリングしてもよい。
5. 実施形態
以下の実施形態において、新たに追加されたテキストは、太字のイタリック体になっており、削除されたテキストは、[[]]によってマークされる。
5.1 実施形態1:アフィン構成されたマージ候補についてのサブピクチャ制約
8.5.5.6 構成されたアフィン制御点動きベクトルマージ候補に対する導出処理
この処理への入力は、以下のようである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度コードブロックの左上のサンプルを指定する輝度位置(xCb,yCb)
- 現在の輝度コーディングブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
- 可用性フラグavailableA、availableA、availableA、availableB、availableB、availableB、availableB
- サンプル位置(xNbA,yNbA)、(xNbA,yNbA)、(xNbA,yNbA)、(xNbB,yNbB)、(xNbB,yNbB)、(xNbB,yNbB)、および(xNbB,yNbB
この処理の出力は、以下のようである。
- 構成されたアフィン制御点動きベクトルマージ候補の可用性フラグavailableFlagConstK(K=1..6)
- 参照インデックスrefIdxLXConstK(K=1..6、Xは、0または1)
- 予測リスト利用フラグpredFlagLXConstK(K=1..6、Xは、0または1)、
- アフィン動きモデルインデックスModelIdcConstK(K=1..6)
- 双方向予測重みインデックスbcwIdxConstK(K=1..6)
- 構成されたアフィン制御点動きベクトルcpMvLXConstK[cpIdx](cpIdx=0..2、K=1..6、Xは0または1)
...
4番目の(並置された右下の)制御点動きベクトルcpMvLXCorner[3]、参照インデックスrefIdxLXCorner[3]、予測リスト利用フラグpredFlagLXCorner[3]、および可用性フラグavalableFlagCorner[3](Xは0および1)は、以下のように導出される。
- 時間的マージ候補のための参照インデックスrefIdxLXCorner[3](Xは、0または1)、0に等しくセットされる。
- 変数mvLXColおよびavailableFlagLXCol(Xは、0または1)は、以下のように導出される。
- slice_temporal_mvp_enabled_flagが0に等しい場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
- それ以外の場合(rect_slice_flagが1に等しい場合)、以下が適用される。
Figure 2022552537000073
- yCb>>CtbLog2SizeYが、yColBr>>CtbLog2SizeYに等しく、
[外8]
Figure 2022552537000074
- 変数colCbは、ColPicによって指定される並置されたピクチャ内の((xColBr>>3)<<3,(yColBr>>3)<<3)で与えられる修正された位置をカバーする輝度コーディングブロックを指定する。
- 輝度位置(xColCb,yColCb)は、ColPicによって指定された並置されたピクチャの左上の輝度サンプルに対する、colCbによって指定された並置された輝度コーディングブロックの左上のサンプルに等しくセットされる。
- 8.5.2.12項において指定されている並置された動きベクトルに対する導出処理は、currCb、colCb、(xColCb,yColCb)、refIdxLXCorner[3]、0に等しくセットされたsbFlagを入力として呼び出され、出力は、mvLXColおよびavailableFlagLXColに割り当てられる。
- それ以外の場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
...
5.2 実施形態2:アフィン構成されたマージ候補についてのサブピクチャ制約
8.5.5.6 構成されたアフィン制御点動きベクトルマージ候補に対する導出処理
この処理への入力は、以下のようである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度コードブロックの左上のサンプルを指定する輝度位置(xCb,yCb)
- 現在の輝度コーディングブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
- 可用性フラグavailableA、availableA、availableA、availableB、availableB、availableB、availableB
- サンプル位置(xNbA,yNbA)、(xNbA,yNbA)、(xNbA,yNbA)、(xNbB,yNbB)、(xNbB,yNbB)、(xNbB,yNbB)、および(xNbB,yNbB
この処理の出力は、以下のようである。
- 構成されたアフィン制御点動きベクトルマージ候補の可用性フラグavailableFlagConstK(K=1..6)
- 参照インデックスrefIdxLXConstK(K=1..6、Xは、0または1)
- 予測リスト利用フラグpredFlagLXConstK(K=1..6、Xは0または1)、
- アフィン動きモデルインデックスModelIdcConstK(K=1..6)
- 双方向予測重みインデックスbcwIdxConstK(K=1..6)
- 構成されたアフィン制御点動きベクトルcpMvLXConstK[cpIdx](cpIdx=0..2、K=1..6、Xは0または1)
...
4番目の(並置された右下の)制御点動きベクトルcpMvLXCorner[3]、参照インデックスrefIdxLXCorner[3]、予測リスト利用フラグpredFlagLXCorner[3]、および可用性フラグavalableFlagCorner[3](Xは0および1)は、以下のように導出される。
- 時間的マージ候補のための参照インデックスrefIdxLXCorner[3](Xは、0または1)、0に等しくセットされる。
- 変数mvLXColおよびavailableFlagLXCol(Xは、0または1)は、以下のように導出される。
- slice_temporal_mvp_enabled_flagが0に等しい場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
- それ以外の場合(rect_slice_flagが1に等しい場合)、以下が適用される。
Figure 2022552537000075
yCb>>CtbLog2SizeYがyColBr>>>CtbLog2SizeYに等しい場合、[[yColBrがpic_height_in_luma_samplesより小さく、xColBrがpic_width_in_luma_samplesより小さい場合、以下が適用される]]、
- 変数colCbは、ColPicによって指定される並置されたピクチャ内の((xColBr>>3)<<3,(yColBr>>3)<<3)で与えられる修正された位置をカバーする輝度コーディングブロックを指定する。
- 輝度位置(xColCb,yColCb)は、ColPicによって指定された並置されたピクチャの左上の輝度サンプルに対する、colCbによって指定された並置された輝度コーディングブロックの左上のサンプルに等しくセットされる。
- 8.5.2.12項において指定されている並置された動きベクトルに対する導出処理は、currCb、colCb、(xColCb,yColCb)、refIdxLXCorner[3]、0に等しくセットされたsbFlagを入力として呼び出され、出力は、mvLXColおよびavailableFlagLXColに割り当てられる。
- それ以外の場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
...
5.3 実施形態3:サブピクチャ制約下での整数サンプルのフェッチ
8.5.6.3.3 輝度整数サンプルフェッチ処理
この処理への入力は、以下のようである。
- フルサンプル単位における輝度位置(xInt,yInt
- 輝度参照サンプルアレイrefPicLX
この処理の出力は、予測輝度サンプル値predSampleLXLである。
変数shiftは、Max(2,14-BitDepthY)に等しくセットされる。
変数picWは、pic_width_in_luma_samplesに等しくセットされ、変数picHは、pic_height_in_luma_samplesに等しくセットされる。
フルサンプル単位おける輝度位置(xInt,yInt)は、以下のように導出される。
[外9]
Figure 2022552537000076
Figure 2022552537000077
[外10]
Figure 2022552537000078
Figure 2022552537000079
予測輝度サンプル値predSampleLXLは、以下のように導出される。
Figure 2022552537000080
5.4 実施形態4:LMCSの色差残差スケーリングにおける変数invAvgLumaの導出
8.7.5.3 色差サンプルに対する輝度依存色差残差スケーリング処理によるピクチャ再構成
この処理への入力は、以下のようである。
- 現在のピクチャの左上の色差サンプルに対する現在の色差トランスフォームブロックの左上のサンプルの色差位置(xCurr,yCurr)
- トランスフォームブロック幅を指定する変数nCurrSw
- 色差変換ブロック高さを指定する変数nCurrSh
- 現在の色差トランスフォームブロックのコーディングされたブロックフラグを指定する変数tuCbfChroma
- 現在のブロックの色差予測サンプルを指定する(nCurrSw)x(nCurrSh)アレイpredSamples
- 現在のブロックの色差残差サンプルを指定する(nCurrSw)x(nCurrSh)アレイresSamples
この処理の出力は、再構成された色差ピクチャサンプルアレイrecSamples
変数sizeYは、Min(CtbSizeY,64)に等しくセットされる。
再構成された色差ピクチャサンプルrecSamplesは、i=0..nCurrSw-1,j=0..nCurrSh-1に対して、以下のように導出される。
- ...
- それ以外の場合、以下が適用される。
- ...
- 変数cursPicは、現在のピクチャにおいて再構成された輝度サンプルの配列を指定する。
- 変数varScaleの導出に対して、以下の順序付されたステップが適用される。
1. 変数invAvgLumaは、以下のように導出される。
- アレイrecLuma[i](i=0...(2 * sizeY - 1))と変数cntは、以下のように導出される。
- 変数cntは、0に等しくセットされる。
- 変数variablerightBoundaryPosおよびbotBoundaryPosは、以下のように導出される。
Figure 2022552537000081
- avalLがTRUEに等しいときに、アレイrecLuma[i](i=0..sizeY -1)は、currPic[xCuCb-1][Min(yCuCb+i,[[pic_height_in_luma_samples-1]]
[外11]
Figure 2022552537000082
)](i=0..sizeY-1)に等しくセットされ、cntは、sizeYに等しくセットされる。
- avalTがTRUEに等しいときに、アレイrecLuma[cnt+i](i=0..sizeY -1)は、currPic[Min(xCuCb+i,[[pic_width_in_luma_samples-1]]
[外12]
Figure 2022552537000083
)][yCuCb-1](i=0..sizeY-1)に等しくセットされ、cntは、(cnt+sizeY)に等しくセットされる。
- 変数invAvgLumaは、以下のように導出される。
- cntが0より大きい場合、以下が適用される。
Figure 2022552537000084
- それ以外の場合(cntが0に等しい)、以下が適用される。
Figure 2022552537000085
5.5 実施形態5:サブピクチャ要素を4つのサンプル以外のN個(N=8、32など)の単位で定義する例
7.4.3.3 シーケンスパラメータセットRBSP意味
subpic_grid_col_width_minus1+1は、サブピクチャ識別子グリッドの各要素の幅を4Nサンプル単位で指定する。構文要素の長さは、Ceil(Log2(pic_width_max_in_luma_samples/4N))ビットである。
変数NumSubPicGridColsは、以下のように導出される。
Figure 2022552537000086
subpic_grid_row_height_minus1+1は、サブピクチャ識別子グリッドの各要素の高さを4サンプル単位で指定する。構文要素の長さは、Ceil(Log2(pic_height_max_in_luma_samples/4N))ビットである。変数NumSubPicGridRowsは、以下のように導出される。
Figure 2022552537000087
7.4.7.1 一般的なスライスヘッダ意味
変数SubPicIdx、SubPicLeftBoundaryPos、SubPicTopBoundaryPos、SubPicRightBoundaryPos、およびSubPicBotBoundaryPosは、以下のように導出される。
Figure 2022552537000088
5.6 実施形態6:ピクチャ幅及びピクチャ高さを8以上に制限する。
7.4.3.3 シーケンスパラメータセットRBSP意味
pic_width_max_in_luma_samplesは、SPSを参照する復号された各ピクチャの最大幅を輝度サンプルの単位で指定する。pic_width_max_in_luma_samplesは、0に等しくなく、[[MinCbSizeY]]
[外13]
Figure 2022552537000089
の整数倍数とする。
pic_height_max_in_luma_samplesは、SPSを参照する復号された各ピクチャの最大高さを輝度サンプルの単位で指定する。pic_height_max_in_luma_samplesは、0に等しくなく、[[MinCbSizeY]]
[外14]
Figure 2022552537000090
の整数倍数とする。
5.7 実施携帯7:BT/TT/QTスプリット、BT/TT/QT深度導出、および/またはCUスプリットフラグのシグナリングのサブピクチャ境界チェック
6.4.2 許可されているバイナリスプリット処理
変数allowBtSplitは、以下のように導出される。
- ...
- それ以外の場合、次の条件の全てが真である場合、allowBtSplitは、FALSEに等しくセットされる。
- btSplitがSPLIT_BT_VERに等しい。
- y0+cbHeightが、[[pic_height_in_luma_samples]]
[外15]
Figure 2022552537000091
より大きい。
- それ以外の場合、次の条件の全てが真である場合、allowBtSplitは、FALSEに等しくセットされる。
- btSplitがSPLIT_BT_VERに等しい。
- cbHeightがMaxTbSizeYより大きい。
- x0+cbWidthが、[[pic_width_in_luma_samples]]
[外16]
Figure 2022552537000092
より大きい。
- それ以外の場合、次の条件の全てが真である場合、allowBtSplitは、FALSEに等しくセットされる。
- btSplitがSPLIT_BT_HORに等しい。
- cbWidthがMaxTbSizeYより大きい。
- y0+cbHeightが、[[pic_height_in_luma_samples]]
[外17]
Figure 2022552537000093
より大きい。
- それ以外の場合、次の条件の全てが真である場合、allowBtSplitは、FALSEに等しくセットされる。
- x0+cbWidthが、[[pic_width_in_luma_samples]]
[外18]
Figure 2022552537000094
より大きい。
- y0+cbHeightが、[[pic_height_in_luma_samples]]
[外19]
Figure 2022552537000095
より大きい。
- cbWidthがminQtSizeより大きい。
- それ以外の場合、次の条件の全てが真である場合、allowBtSplitは、FALSEに等しくセットされる。
- btSplitがSPLIT_BT_HORに等しい。
- x0+cbWidthが、[[pic_width_in_luma_samples]]
[外20]
Figure 2022552537000096
より大きい。
- y0+cbHeightが、[[pic_height_in_luma_samples]]
[外21]
Figure 2022552537000097
より小さい。
6.4.2 許可されている三値(ternary)スプリット処理
変数allowTtSplitは、以下のように導出される。
- 以下の条件のうちの1つ以上が真である場合、allowTtSplitは、FALSEに等しくセットされる。
- cbSizeが、2*MinTtSizeYより小さい。
- cbWidthが、Min(MaxTbSizeY,maxTtSize)より大きい。
- cbHeightが、Min(MaxTbSize,maxTtSize)より大きい。
- mttDepthが、maxMttDepth以上である。
- x0+cbWidthが、[[pic_width_in_luma_samples]]
[外22]
Figure 2022552537000098
より大きい。
- y0+cbHeightが、[[pic_height_in_luma_samples]]
[外23]
Figure 2022552537000099
より大きい。
- treeTypeが、DUAL_TREE_CHROMAに等しく、(cbWidth/SubWidthC)*(cbHeight/SubHeightC)が、32以下である。
- treeTypeが、DUAL_TREE_CHROMAに等しく、modeTypeが、MODE_TYPE_INTRAに等しい。
- それ以外の場合、allowTtSplitは、TRUEに等しくセットされる。
7.3.8.2 コーディングツリーユニット構文
Figure 2022552537000100
7.3.8.4 コーディングツリー構文
Figure 2022552537000101
5.8 実施形態8:サブピクチャの定義例
Figure 2022552537000102
5.9 実施形態9:サブピクチャの定義例
Figure 2022552537000103
5.10 実施形態10:サブピクチャの定義例
Figure 2022552537000104
5.11 実施形態11:サブピクチャの定義例
Figure 2022552537000105
5.12 実施形態:サブピクチャを考慮したデブロッキング
デブロッキングフィルタ処理
一般
この処理への入力は、デブロッキングの前に再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
この処理の出力は、デブロッキングの後に修正され再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
ピクチャの垂直エッジが、最初にフィルタリングされる。次いで、ピクチャの水平エッジが、垂直エッジフィルタリング処理によって修正されたサンプルを入力としてフィルタリングされる。各CTUのCTBの垂直エッジと水平エッジは、コーディングユニットベースで別々に処理される。コーディングユニット内のコーディングブロックの垂直エッジは、コーディングブロックの左側のエッジから開始して、幾何学的順序でコーディングブロックの右側に向かってエッジを通して進むように、フィルタリングされる。コーディングユニット内のコーディングブロックの水平エッジは、コーディングブロックの上側のエッジから開始して、幾何学的順序でコーディングブロックの下側に向かってエッジを通して進むように、フィルタリングされる。
注 - フィルタリング処理は、本明細書ではピクチャベースで指定されているが、同じ出力値を生成するように復号器が処理依存性の順序を適切に説明するのであれば、フィルタリング処理は、同等の結果を持つコーディングユニットベースで実装され得る。
デブロッキングフィルタ処理は、以下のタイプのエッジを除き、ピクチャのすべてのコーディングサブブロックエッジおよびトランスフォームブロックエッジに適用される。
- ピクチャの境界でのエッジ
- [[loop_filter_across_subpic_enabled_flag[SubPicIdx]が0に等しいサブピクチャの境界と一致するエッジ]]
- pps_loop_filter_across_virtual_boundaries_disabled_flagが1に等しいときに、ピクチャの仮想境界と一致するエッジ
- loop_filter_across_tiles_enabled_flag が0に等しいときに、タイル境界と一致するエッジ
- loop_filter_across_slices_enabled_flagが0に等しいときに、スライス境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライスの上側または左側の境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライス内のエッジ
- 輝度コンポーネントの4×4のサンプルグリッド境界に対応しないエッジ
- 色差コンポーネントの8×8のサンプルグリッド境界に対応しないエッジ
- エッジの両側が1に等しいintra_bdpcm_luma_flagを有する輝度コンポーネント内のエッジ
- エッジの両側が1に等しいintra_bdpcm_chroma_flagを有する色差コンポーネント内のエッジ
- 関連するトランスフォームユニットのエッジでない色差サブブロックのエッジ
...
一方向のためのデブロッキングフィルタ処理
この処理への入力は、以下のようである。
- 輝度(DUAL_TREE_LUMA)または色差コンポーネント(DUAL_TREE_CHROMA)が現在処理されているかどうかを指定する変数treeType
- treeTypeがDUAL_TREE_LUMAに等しいときは、デブロッキング前の再されたピクチャ、すなわちrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
- 垂直(EDGE_VER)をフィルタリングするか、水平(EDGE_HOR)をフィルタリングするかを指定する変数edgeType
この処理の出力は、デブロッキング後に修正され再構成されたピクチャ、すなわち、
- treeTypeがDUAL_TREE_LUMAに等しいときに、アレイrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
変数firstCompIdxおよびlastCompIdxは、以下のように導出される。
Figure 2022552537000106
コーディングブロック幅nCbW、コーディングブロック高さnCbHおよびコーディングブロックの左上のサンプルの位置(xCb,yCb)を有する、firstCompIdx~lastCompIdxの範囲(両端を含む)の色コンポーネントインデックスcIdxによって示されるコーディングユニットの色コンポーネントごとの各コーディングユニット及び各コーディングブロックに対して、cIdxが0に等しいとき、cIdxが0に等しくなく、edgeTypeがEDGE_VERに等しく、xCb%8が0に等しいとき、またはcIdxが0に等しくなく、edgeTypeがEDGE_HORに等しく、yCb%8が0に等しいときに、エッジは以下の順序付けされたステップによってフィルタリングされる。
2. 変数filterEdgeFlagは、以下のように導出される。
- edgeTypeがEDGE_VERに等しく、以下の条件のうちの1つ以上が真である場合、filterEdgeFlagは、0に等しくセットされる。
- 現在のコーディングブロックの左境界は、ピクチャの左境界である。
- [[現在のコーディングブロックの左境界は、サブピクチャの左または右境界であり、loop_filter_across_subpic_enabled_flag[SubPicIdx]は0に等しい。]]
- 現在のコーディングブロックの左境界は、タイルの左境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、スライスの左境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、ピクチャの垂直仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、edgeTypeがEDGE_HORに等しく、以下の条件のうちの1つ以上が真である場合、変数filterEdgeFlagは、0に等しくセットされる。
- 現在の輝度コーディングブロックの上境界は、ピクチャの上境界である。
- [[現在のコーディングブロックの上境界は、サブピクチャの上または下境界であり、loop_filter_across_subpic_enabled_flag[SubPicIdx]は0に等しい。]]
- 現在のコーディングブロックの上境界は、タイルの上境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、スライスの上境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、ピクチャの水平仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、filterEdgeFlagは、1に等しくセットされる。
...
ショートフィルタを使用した輝度サンプルに対するフィルタ処理
この処理への入力は、以下のようである。
- サンプル値pおよびq(i=0..3)
- pおよびqの位置(xP,yP)および(xQ,yQ)(i=0..2)
- 変数dE
- それぞれサンプルp1およびq1をフィルタリングする判定を含む変数dEpおよびdEq
- 変数tC
この処理の出力は、以下のようである。
- フィルタリングされたサンプルの数nDpおよびnDq
- フィルタリングされたサンプル値p’およびq’(i=0..nDp-1、j=0..nDq-1)
dEの値に依存して、以下が適用される。
- 変数dEが2に等しい場合、nDpとnDqは両方とも3に等しくセットされ、以下の強いフィルタリングが適用される。
Figure 2022552537000107
- それ以外の場合、nDpおよびnDqは両方とも0にセットされ、次の弱いフィルタリングが適用される。
- 以下が適用される。
Figure 2022552537000108
- Abs(ΔΔ)がtC*10より小さいときに、以下の順序付けられたステップが適用される。
- フィルタリングされたサンプル値p0’およびq0’が、以下のように指定される。
Figure 2022552537000109
- dEpが1に等しいときに、フィルタリングされたサンプル値p1’は以下のように指定される。
Figure 2022552537000110
- dEqが1に等しいときに、フィルタリングされたサンプル値q1’は以下のように指定される。
Figure 2022552537000111
- nDpはdEp+1に等しくセットされ、nDqはdEq+1に等しくセットされる。
nDpが0より大きく、サンプルp0を含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、nDpは0に等しくセットされる。
nDqが0より大きく、サンプルq0を含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、nDqは0に等しくセットされる。
[外24]
Figure 2022552537000112
長いフィルタを使用した輝度サンプルに対するフィルタリング処理
この処理への入力は、以下のようである。
- 変数maxFilterLengthPおよびmaxFilterLengthQ
- サンプル値pおよびq(i=0..maxFilterLengthPおよびj=0..maxFilterLengthQ)
- pおよびqの位置(xP,yP)および(xQ,yQ)(i=0..maxFilterLengthP-1およびj=0..maxFilterLengthQ-1)
- 変数tC
この処理の出力は、以下のようである。
- フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthP-1、j=0..maxFilterLenghtQ-1)
変数refMiddleは、以下のように導出される。
- maxFilterLengthPがmaxFilterLengthQに等しく、maxFilterLengthPが5に等しい場合、以下が適用される。
Figure 2022552537000113
- それ以外の場合、maxFilterLengthPがmaxFilterLengthQに等しく、maxFilterLengthPが5に等しくない場合、以下が適用される。
Figure 2022552537000114
- それ以外の場合、以下の条件のうちの1つが真である場合、
- maxFilterLengthQは7に等しく、maxFilterLengthPは5に等しい。
- maxFilterLengthQは5に等しく、maxFilterLengthPは7に等しい。
以下が適用される。
Figure 2022552537000115
- それ以外の場合、以下の条件のうちの1つが真である場合、
- maxFilterLengthQは5に等しく、maxFilterLengthPは3に等しい。
- maxFilterLengthQは3に等しく、maxFilterLengthPは5に等しい。
以下が適用される。
Figure 2022552537000116
- それ以外の場合、maxFilterLengthQが7に等しく、maxFilterLengthPが3に等しい場合、以下が適用される。
Figure 2022552537000117
- それ以外の場合、以下が適用される。
Figure 2022552537000118
変数refPおよびrefQは、以下のように導出される。
Figure 2022552537000119
変数fiおよびtC PDiは、以下のように導出される。
- maxFilterLengthPが7に等しい場合、以下が適用される。
Figure 2022552537000120
- それ以外の場合、maxFilterLengthPが5に等しい場合、以下が適用される。
Figure 2022552537000121
- それ以外の場合は、以下が適用される。
Figure 2022552537000122
変数gjおよびtC QDjは、以下のように定義される。
- maxFilterLengthQが7に等しい場合、以下が適用される。
Figure 2022552537000123
- それ以外の場合、maxFilterLengthQが5に等しい場合、以下が適用される。
Figure 2022552537000124
- それ以外の場合は、以下が適用される。
Figure 2022552537000125
フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthP-1およびj=0..maxFilterLengthQ-1)は、以下のように導出される。
Figure 2022552537000126
サンプルpを含むコードブロックを含むコードユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値p’は、対応する入力サンプル値p(i=0..maxFilterLengthP-1)によって置き換えられる。
サンプルqを含むコードブロックを含むコードユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値q’は、対応する入力サンプル値q(j=0..maxFilterLengthQ-1)によって置き換えられる。
[外25]
Figure 2022552537000127
色差サンプルに対するフィルタリング処理
この処理は、ChromaArrayTypeが0に等しくないときにのみ呼び出される。
この処理への入力は、以下のようである。
- 変数maxFilterLength
- 色差サンプル値pおよびq(i=0..maxFilterLengthCbCr)
- pおよびqの色差位置(xP,yP)および(xQ,yQ)(i=0..maxFilterLengthCbCr-1)
- 変数t
この処理の出力は、フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthCbCr-1)である。
フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthCbCr-1)は、以下のように導出される。
- maxFilterLengthQが3に等しい場合、以下の強いフィルタリングが適用される。
Figure 2022552537000128
- それ以外の場合、以下の弱いフィルタリングが適用される。
Figure 2022552537000129
サンプルpを含むコードブロックを含むコードユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値p’は、対応する入力サンプル値p(i=0..maxFilterLengthCbCr-1)によって置き換えられる。
サンプルqを含むコードブロックを含むコードユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値q’は、対応する入力サンプル値q(i=0..maxFilterLengthCbCr-1)によって置き換えられる。
[外26]
Figure 2022552537000130
図3は、ビデオ処理装置300のブロック図である。装置300は、本明細書に記載される方法のうちの1つ以上を実装するために使用されてもよい。装置300は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機などで具体化されてもよい。装置300は、1つ以上のプロセッサ312、1つ以上のメモリ314、およびビデオ処理ハードウェア316を含んでもよい。プロセッサ312は、本文書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(複数のメモリ)314は、本明細書に記載される方法および技法を実装するために使用されるデータおよびコードを記憶するために使用されてもよい。ビデオ処理ハードウェア316は、ハードウェア回路において、本文書に記載されるいくつかの技法を実装するために使用されてもよい。
図4は、ビデオを処理する方法400のフローチャートである。この方法400は、ビデオの第1のビデオ領域内のビデオブロックに対して、アフィンモードを使用して、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換に対して時間的動きベクトル予測子が決定される位置が、第2のビデオ領域内にあるかどうかを決定すること(402)と、その決定に基づいて変換を実行すること(404)と、を含む。
以下の解決策は、いくつかの実施形態において好ましい解決策として実装されてもよい。
以下の解決策は、前のセクション(例えば、項目1)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策1.ビデオ処理の方法であって、ビデオの第1のビデオ領域内のビデオブロックに対して、アフィンモードを使用して、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換に対して時間的動きベクトル予測子が決定される位置が、第2のビデオ領域内にあるかどうかを決定することと、その決定に基づいて変換を実行することと、を含む、方法。
解決策2.ビデオブロックが、第1の領域および第2の領域によってカバーされる、解決策1に記載の方法。
解決策3.時間的動きベクトル予測子の位置が第2のビデオ領域外にある場合に、時間的動きベクトル予測子が、利用不可能としてマークされ、変換において使用されない、解決策1~2のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目2)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策4.ビデオ処理の方法であって、ビデオの第1のビデオ領域内のビデオブロックについて、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換に対して参照ピクチャ内の整数サンプルがフェッチされる位置が、第2のビデオ領域内にあるかどうかを決定することであって、参照ピクチャが、変換中に補間処理において使用されない、ことと、その決定に基づいて変換を実行することと、を含む、方法。
解決策5.ビデオブロックが、第1の領域および第2の領域によってカバーされる、解決策4に記載の方法。
解決策6.サンプルの位置が第2のビデオ領域外にある場合に、サンプルが、利用不可能としてマークされ、変換において使用されない、解決策4~5のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目3)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策7.ビデオの第1のビデオ領域内のビデオブロックに対して、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換に対して、再構成された輝度サンプル値がフェッチされる位置が、第2のビデオ領域内にあるかどうかを決定することと、その決定に基づいて変換を実行することと、を含む、方法。
解決策8.輝度サンプルが、第1の領域および第2の領域によってカバーされる、解決策7の方法。
解決策9.輝度サンプルの位置が第2のビデオ領域外にある場合に、輝度サンプルが、利用不可能としてマークされ、変換において使用されない、解決策7~8のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目4)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策10.ビデオの第1のビデオ領域内のビデオブロックに対して、ビデオブロックと現在のビデオブロックのビットストリーム表現との間の変換中に、ビデオブロックに対する分割、深さ導出またはスプリットフラグシグナリングに関するチェックが実行される位置が、第2のビデオ領域内にあるかどうかを決定することと、その決定に基づいて変換を実行することと、を含む、方法。
解決策11.位置が、第1の領域および第2の領域によってカバーされる、解決策10に記載の方法。
解決策12.位置が、第2のビデオ領域外にある場合に、輝度サンプルが、利用不可能としてマークされ、変換において使用されない、解決策10~11のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目8)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策13.ビデオ処理の方法であって、1つ以上のビデオブロックを含む1つ以上のビデオピクチャを含むビデオと、ビデオのコーディングされた表現との間の変換を実行することを含み、コーディングされた表現は、変換がサブピクチャコーディング/復号および動的解像度コーディング/復号ツール、またはビデオユニット内の参照ピクチャ再サンプリングツールを使用しないというコーディング構文要件に準拠する、方法。
解決策14.ビデオユニットが、1つ以上のビデオピクチャのシーケンスに対応する、解決策13に記載の方法。
解決策15.動的解像度変換コーディング/復号ツールが、適応解像度変換コーディング/復号ツールを含む、解決策13~14のいずれか1つに記載の方法。
解決策16.動的解像度変換コーディング/復号ツールが、動的解像度変換コーディング/復号ツールを含む、解決策13~14のいずれか1つに記載の方法。
解決策17.コーディングされた表現は、ビデオユニットがコーディング構文要件に準拠することを示す、解決策13~16のいずれか1つに記載の方法。
解決策18.コーディングされた表現は、ビデオユニットがサブピクチャコーディングを使用することを示す、解決策17に記載の方法。
解決策19.コーディングされた表現は、ビデオユニットが動的解像度変換コーディング/復号ツールまたは参照ピクチャ再サンプリングツールを使用することを示す、解決策17に記載の方法。
以下の解決策は、前のセクション(例えば、項目10)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策20.第2のビデオ領域が、ビデオサブピクチャを含み、第2のビデオ領域と別のビデオ領域の境界が、2つのコーディングツリーユニットの間の境界でもある、解決策1~19のいずれか1つに記載の方法。
解決策21.第2のビデオ領域が、ビデオサブピクチャを含み、第2のビデオ領域と別のビデオ領域の境界が、2つのコーディングツリーユニットの間の境界でもある、解決策1~19のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目11)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策22.第1のビデオ領域および第2のビデオ領域が、矩形形状を含む、解決策1~21のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目12)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策23.第1のビデオ領域および第2のビデオ領域が、オーバラップしない、解決策1~22のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目13)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策24.ビデオピクチャが、ビデオピクチャ内のピクセルが1つのビデオ領域のみによってカバーされるように、ビデオ領域に分割される、解決策1~23のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目15)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策25.ビデオピクチャがビデオシーケンスの特定の層に存在することにより、ビデオピクチャが第1のビデオ領域および第2のビデオ領域にスプリットされる、解決策1~24のいずれか1つに記載の方法。
以下の解決策は、前のセクション(例えば、項目10)にリストされた項目に記載された追加の技法と共に実装され得る。
解決策26.ビデオ処理の方法であって、1つ以上のビデオブロックを含む1つ以上のビデオピクチャを含むビデオと、ビデオのコーディングされた表現との間の変換を実行することを含み、コーディングされた表現は、第1の構文要素subpic_grid_idx[i][j]が、第2の構文要素max_subpics_minus1より大きくないというコーディング構文要件に準拠する、方法。
解決策27.第1の構文要素を表すコードワードが、第2の構文要素を表すコードワードより大きくない、解決策26に記載の方法。
解決策28.第1のビデオ領域が、ビデオサブピクチャを含む、解決策1~27のいずれか1つに記載の方法。
解決策29.第2のビデオ領域が、ビデオサブピクチャを含む、解決策1~28のいずれか1つに記載の方法。
解決策30.変換が、ビデオをコーディングされた表現に符号化することを含む、解決策1~29のいずれか1つに記載の方法。
解決策31.変換が、ビデオの画素値を生成するために、コーディングされた表現を復号することを含む、解決策1~29のいずれか1つに記載の方法。
解決策32.解決策1~31のうちの1つ以上に規定された方法を実装するように構成されているプロセッサを含む、ビデオ復号装置。
解決策33.解決策1~31のうちの1つ以上に規定された方法を実装するように構成されているプロセッサを含む、ビデオ符号化装置。
解決策34.コンピュータコードを記憶したコンピュータプログラム製品であって、コードは、プロセッサによって実行されるときに、プロセッサに、解決策1~31のいずれか1つに記載の方法を実装させる、コンピュータプログラム製品。
解決策35.本文書に記載された方法、装置またはシステム。
図8は、本明細書に開示される様々な技法を実装することができる例示的なビデオ処理システム800を示すブロック図である。様々な実装は、システム800のコンポーネントの一部または全部を含んでもよい。システム800は、ビデオコンテンツを受信するための入力802を含んでもよい。ビデオコンテンツは、生または圧縮されていないフォーマット、例えば、8または10ビットのマルチコンポーネント画素値で受信されてもよいし、圧縮されたか、または符号化されたフォーマットであってもよい。入力802は、ネットワークインターフェース、周辺バスインターフェース、または記憶インターフェースを表してもよい。ネットワークインターフェースの例は、Ethernet(登録商標)、PON(passive optical network)などの有線インターフェース、およびWi-Fi(登録商標)またはセルラーインターフェースなどの無線インターフェースを含む。
システム800は、本文書に記載されている様々なコーディングまたは符号化方法を実装し得るコーディングコンポーネント804を含んでもよい。コーディングコンポーネント804は、ビデオのコーディングされた表現を生成するために、入力802からコーディングコンポーネント804の出力へのビデオの平均ビットレートを低減してもよい。したがって、コーディング技法は、ビデオ圧縮またはビデオトランスコーディング技法と呼ばれることがある。コーディングコンポーネント804の出力は、コンポーネント806によって表されるように、記憶されるか、または接続された通信を介して送信されてもよい。入力802で受信されたビデオの記憶されたか、または通信されたビットストリーム(またはコーディングされた)表現は、ディスプレイインターフェース810に送信される画素値または表示可能なビデオを生成するために、コンポーネント808によって使用されてもよい。ビットストリーム表現からユーザが見ることができるビデオを生成する処理は、ビデオ解凍と呼ばれることがある。さらに、特定のビデオ処理動作は、「コーディング」動作またはツールと称されるが、コーディングツールもしくは動作は、符号化器で使用されるか、またはコーディングの結果を反転する、対応する復号ツールもしくは動作は、復号器によって実行されることが理解されるであろう。
周辺バスインターフェースまたはディスプレイインターフェースの例としては、USB(universal serial bus)、HDMI(登録商標)(high definition multimedia interface)またはディスプレイポートなどを含む。記憶インターフェースの例としては、SATA(serial advanced technology attachment)、PCI、IDEインターフェースなどを含む。本明細書に記載されている技法は、携帯電話、ラップトップ、スマートフォン、またはデジタルデータ処理および/またはビデオディスプレイを実行することが可能な他のデバイスなどの様々な電子デバイスに具体化されてもよい。
図9は、本開示の技法を利用することができる例示的なビデオコーディングシステム100を示すブロック図である。
図9に示すように、ビデオコーディングシステム100は、ソースデバイス110および宛先デバイス120を含んでもよい。ソースデバイス110は、ビデオ符号化デバイスと称され得る符号化されたビデオデータを生成する。宛先デバイス120は、ビデオ復号デバイスと称され得るソースデバイス110によって生成された符号化されたビデオデータを復号してもよい。
ソースデバイス110は、ビデオソース112、ビデオ符号化器114、および入力/出力(I/O)インターフェース116を含んでもよい。
ビデオソース112は、ビデオ捕捉デバイスなどのソース、ビデオコンテンツプロバイダからビデオデータを受信するためのインターフェース、および/またはビデオデータを生成するためのコンピュータグラフィックスシステム、またはそのようなソースの組み合わせを含んでもよい。ビデオデータは、1つ以上のピクチャを含んでもよい。ビデオ符号化器114は、ビデオソース112からのビデオデータを符号化してビットストリームを生成する。ビットストリームは、ビデオデータのコーディングされた表現を形成するビットのシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連するデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディングされた表現である。関連するデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。入出力インターフェース116は、変調器/復調器(モデム)および/または送信機を含んでもよい。符号化されたビデオデータは、ネットワーク130aを通してI/Oインターフェース116を介して宛先デバイス120に直接送信されてもよい。符号化されたビデオデータはまた、宛先デバイス120によるアクセスのために記憶媒体/サーバ130b上に記憶されてもよい。
宛先デバイス120は、I/Oインターフェース126、ビデオ復号器124、およびディスプレイデバイス122を含んでもよい。
I/Oインターフェース126は、受信機および/またはモデムを含んでもよい。入出力インターフェース126は、ソースデバイス110または記憶媒体/サーバ130bから符号化されたビデオデータを取得してもよい。ビデオ復号器124は、符号化されたビデオデータを復号してもよい。ディスプレイデバイス122は、復号されたビデオデータをユーザに表示してもよい。ディスプレイデバイス122は、宛先デバイス120と一体化されてもよく、または外部ディスプレイデバイスとインターフェースするように構成されている宛先デバイス120の外部にあってもよい。
ビデオ符号化器114およびビデオ復号器124は、HEVC(High Efficiency Video Coding)標準、VVC(Versatile Video Coding)標準、および他の現在および/または更なる標準などのビデオ圧縮標準に従って動作してもよい。
図10は、図9に示すシステム100内のビデオ符号化器114であってもよいビデオ符号化器200の一例を示すブロック図である。
ビデオ符号化器200は、本開示の技法のいずれかまたはすべてを実行するように構成されてもよい。図10の例では、ビデオ符号化器200は、複数の機能コンポーネントを含む。本開示に記載される技法は、ビデオ符号化器200の様々なコンポーネント間で共有され得る。いくつかの例において、プロセッサは、本開示に記載される技法のいずれかまたはすべてを実行するように構成されてもよい。
ビデオ符号化器200の機能コンポーネントは、パーティションユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、およびイントラ予測ユニット206を含み得る予測ユニット202と、残差生成ユニット207と、トランスフォームユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆トランスフォームユニット211と、再構成ユニット212と、バッファ213と、エントロピー符号化ユニット214と、を含んでもよい。
他の例では、ビデオ符号化器200は、より多くの、より少ない、または異なる機能コンポーネントを含んでもよい。一例では、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでもよい。IBCユニットは、少なくとも1つの参照ピクチャが現在のビデオブロックが位置するピクチャであるIBCモードで予測を実行してもよい。
さらに、動き推定ユニット204や動き補償ユニット205などのいくつかのコンポーネントは、高度に一体化されてもよいが、説明のために図5の例では別々に表されている。
パーティションユニット201は、ピクチャを1つ以上のビデオブロックにパーティショニングしてもよい。ビデオ符号化器200およびビデオ復号器300は、様々なビデオブロックサイズをサポートしてもよい。
モード選択ユニット203は、例えばエラー結果に基づいて、コーディングモードのうちの1つ、イントラまたはインターのものを選択し、残差ブロックデータを生成するために残差生成ユニット207に、また、参照ピクチャとして使用するために符号化ブロックを再構成するために再構成ユニット212に、結果として生じるイントラまたはインターコーディングされたブロックを提供する。いくつかの例では、モード選択ユニット203は、予測がインター予測信号およびイントラ予測信号に基づく、イントラおよびインター予測の組み合わせ(CIIP)モードを選択してもよい。モード選択ユニット203はまた、インター予測の場合に、ブロックに対する動きベクトルに対する解像度(例えば、サブピクセルまたは整数ピクセル精度)を選択してもよい。
現在のビデオブロックでインター予測を実行するために、動き推定ユニット204は、バッファ213からの1つ以上の参照フレームを現在のビデオフレームと比較することによって、現在のビデオブロックのための動き情報を生成してもよい。動き補償ユニット205は、動き情報および現在のビデオブロックに関連するピクチャ以外の、バッファ213からのピクチャの復号されたサンプルに基づいて、現在のビデオブロックための予測されるビデオブロックを決定してもよい。
動き推定ユニット204と動き補償ユニット205は、例えば、現在のビデオブロックがIスライス内にあるか、Pスライス内にあるか、Bスライス内にあるかに依存して、現在のビデオブロックに対して異なる動作を実行してもよい。
いくつかの例では、動き推定ユニット204は、現在のビデオブロックに対して単一方向の予測を実行してもよく、動き推定ユニット204は、現在のビデオブロックに対する参照ビデオブロックについてリスト0またはリスト1の参照ピクチャを検索することができる。次に、動き推定ユニット204は、参照ビデオブロックと、現在のビデオブロックと参照ビデオブロックとの間の空間的変位を示す動きベクトルとを含むリスト0またはリスト1内の参照ピクチャを示す参照インデックスを生成してもよい。動き推定ユニット204は、現在のビデオブロックの動き情報として、参照インデックス、予測方向インジケータ、および動きベクトルを出力してもよい。動き補償ユニット205は、現在のビデオブロックの動き情報によって示される参照ビデオブロックに基づいて、現在のブロックの予測ビデオブロックを生成してもよい。
他の例では、動き推定ユニット204は、現在のビデオブロックに対して双方向予測を実行してもよく、動き推定ユニット204は、リスト0内の参照ピクチャを現在のビデオブロックについての参照ビデオブロックについて検索してもよく、また、リスト1内の参照ピクチャを現在のビデオブロックについての別の参照ビデオブロックについて検索してもよい。次に、動き推定ユニット204は、参照ビデオブロックと、参照ビデオブロックと現在のビデオブロックとの間の空間的変位を示す参照ビデオブロックと動きベクトルを含むリスト0とリスト1内の参照ピクチャを示す参照インデックスを生成してもよい。動き推定ユニット204は、現在のビデオブロックの動き情報として、現在のビデオブロックの参照インデックスおよび動きベクトルを出力してもよい。動き補償ユニット205は、現在のビデオブロックの動き情報によって示される参照ビデオブロックに基づいて、現在のブロックの予測ビデオブロックを生成してもよい。
いくつかの例では、動き推定ユニット204は、復号器の復号処理のための動き情報のフルセットを出力してもよい。
いくつかの例では、動き推定ユニット204は、現在のビデオに対する完全なセットの動き情報を出力しなくてもよい。むしろ、動き推定ユニット204は、他のビデオブロックの動き情報を参照して現在のビデオブロックの動き情報をシグナリングしてもよい。例えば、動き推定ユニット204は、現在のビデオブロックの動き情報が隣接するビデオブロックの動き情報と十分に類似していると決定してもよい。
一例では、動き推定ユニット204は、現在のビデオブロックに関連する構文構造において、現在のビデオブロックが別のビデオブロックと同じ動き情報を有することをビデオ復号器300に示す値を示してもよい。
別の例では、動き推定ユニット204は、現在のビデオブロックに関連する構文構造において、別のビデオブロックおよび動きベクトル差(NVD)を識別してもよい。動きベクトル差は、現在のビデオブロックの動きベクトルと示されたビデオブロックの動きベクトルとの間の差を示す。ビデオ復号器300は、示されたビデオブロックの動きベクトルと動きベクトルの差を使用して、現在のビデオブロックの動きベクトルを決定してもよい。
上述のように、ビデオ符号化器200は、動きベクトルを予測的にシグナリングしてもよい。ビデオ符号化器200によって実装され得る予測シグナリング技法の2つの例は、高度な動きベクトル予測(AMVP)およびマージモードシグナリングを含む。
イントラ予測ユニット206は、現在のビデオブロックに対してイントラ予測を実行してもよい。イントラ予測ユニット206が現在のビデオブロックに対してイントラ予測を行うときに、イントラ予測ユニット206は、同じピクチャ内の他のビデオブロックの復号されたサンプルに基づいて、現在のビデオブロックに対する予測データを生成してもよい。現在のビデオブロックに対する予測データは、予測ビデオブロックおよび様々な構文要素を含んでもよい。
残差生成ユニット207は、現在のビデオブロックから現在のビデオブロックの予測ビデオブロックを減算することによって(例えば、マイナス記号によって示される)、現在のビデオブロックの残差データを生成してもよい。現在のビデオブロックの残差データは、現在のビデオブロック内のサンプルの異なるサンプルコンポーネントに対応する残差ビデオブロックを含んでもよい。
他の例では、例えばスキップモードにおいて、現在のビデオブロックについての現在のビデオブロックに対する残差データが存在しないことがあり、残差生成ユニット207は減算動作を実行しなくてもよい。
トランスフォーム処理ユニット208は、現在のビデオブロックに関連する残差ビデオブロックに1つ以上の変換を適用することによって、現在のビデオブロックのための1つ以上の変換係数ビデオブロックを生成してもよい。
トランスフォーム処理ユニット208が現在のビデオブロックに関連する変換係数ビデオブロックを生成した後に、量子化ユニット209は、現在のビデオブロックに関連する1つ以上の量子化パラメータ(QP)値に基づいて、現在のビデオブロックに関連する変換係数ビデオブロックを量子化してもよい。
逆量子化ユニット210および逆トランスフォームユニット211は、変換係数ビデオブロックから残差ビデオブロックを再構成するために、それぞれ変換係数ビデオブロックに逆量子化および逆変換を適用してもよい。再構成ユニット212は、予測ユニット202によって生成された1つ以上の予測ビデオブロックからの対応するサンプルに、再構成された残差ビデオブロックを追加して、バッファ213に記憶するために現在のブロックに関連する再構成されたビデオブロックを生成してもよい。
再構成ユニット212がビデオブロックを再構成した後に、ループフィルタリング動作を実行して、ビデオブロック内のビデオブロッキングのアーチファクトを低減してもよい。
エントロピー符号化ユニット214は、ビデオ符号化器200の他の機能コンポーネントからデータを受信してもよい。エントロピー符号化ユニット214がデータを受信するときに、エントロピー符号化ユニット214は、1つ以上のエントロピー符号化動作を実行して、エントロピー符号化データを生成し、エントロピー符号化データを含むビットストリームを出力する。
図11は、図9に示すシステム100内のビデオ符号化器114であってもよいビデオ復号器300の一例を示すブロック図である。
ビデオ復号器300は、本開示の技法のいずれかまたはすべてを実行するように構成されてもよい。図11の例では、ビデオ復号器300は、複数の機能コンポーネントを含む。本開示に記載される技法は、ビデオ復号器300の様々なコンポーネント間で共有され得る。いくつかの例において、プロセッサは、本開示に記載される技法のいずれかまたはすべてを実行するように構成されてもよい。
図11の例では、ビデオ復号器300は、エントロピー復号ユニット301と、動き補償ユニット302と、イントラ予測ユニット303と、逆量子化ユニット304と、逆トランスフォームユニット305と、再構成ユニット306と、バッファ307を含む。ビデオ復号器300は、いくつかの例では、ビデオ符号化器200(例えば、図10)に関して記載された符号化パスと概ね逆の復号パスを実行してもよい。
エントロピー復号ユニット301は、符号化されたビットストリームを検索してもよい。符号化されたビットストリームは、エントロピーコーディングされたビデオデータ(例えば、ビデオデータの符号化されたブロック)を含んでもよい。エントロピー復号ユニット301は、エントロピーコーディングされたビデオデータを復号してもよく、エントロピー復号されたビデオデータから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償ユニット302は、例えば、AMVPおよびマージモードを実行することによって、そのような情報を決定してもよい。
動き補償ユニット302は、動き補償されたブロックを生成することができ、場合により補間フィルタに基づいて補間を実行してもよい。サブピクセル精度で使用される補間フィルタのための識別子は、構文要素に含まれてもよい。
動き補償ユニット302は、ビデオブロックの符号化の際にビデオ符号化器20によって使用される補間フィルタを使用して、参照ブロックのサブ整数ピクセルに対する補間値を計算してもよい。動き補償ユニット302は、受信された構文情報に従ってビデオ符号化器200によって使用された補間フィルタを決定し、補間フィルタを使用して、予測ブロックを生成する。
動き補償ユニット302は、構文情報のうちのいくつかを使用して、符号化されたビデオシーケンスのフレームおよび/またはスライスを符号化するために使用されるブロックのサイズ、符号化されたビデオシーケンスのピクチャの各マクロブロックがどのようにパーティショニングされるかを記載するパーティショニング情報、各パーティショニングがどのように符号化されるかを示すモード、各インター符号化ブロックに対する1つ以上の参照フレーム(および参照フレームリスト)、および符号化されたビデオシーケンスを復号するための他の情報を決定してもよい。
イントラ予測ユニット303は、例えばビットストリームで受信されたイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリーム内で提供され、エントロピー復号ユニット301によって復号された量子化されたビデオブロック係数を逆量子化する、すなわち、量子化解除する。逆変換ユニット303は、逆変換を適用する。
再構成ユニット306は、残差ブロックを、動き補償ユニット202またはイントラ予測ユニット303によって生成された対応する予測ブロックと合算して、復号されたブロックを形成してもよい。所望であれば、ブロック性アーチファクトを除去するために、復号されたブロックをフィルタリング処理するためにデブロッキングフィルタを適用してもよい。次いで、復号されたビデオブロックはバッファ307に記憶され、バッファ307はまた、後の動き補償/イントラ予測のための参照ブロックを提供し、ディスプレイデバイス上に提示するための復号されたビデオを生成する。
図12は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1200は、動作1210で、ビデオのピクチャとビデオのビットストリーム表現との間の変換を実行することを含む。ピクチャは1つ以上のサブピクチャを含み、ビットストリーム表現は、構文要素の長さがCeil(Log2(SS))ビットに等しいことを指定するフォーマット規則に適合する。SSは0より大きく、構文要素はピクチャのサブピクチャのコーディングツリーユニットの左上コーナーの水平位置または垂直位置を示す。
いくつかの実施形態において、フォーマット規則は、さらに、第2の構文要素の長さのデフォルト値がCeil(Log2(SS))-Pに等しいことを指定し、SSは0より大きい。第2の構文要素は、ピクチャのサブピクチャのデフォルト幅またはデフォルト高さを示す。いくつかの実施形態において、輝度サンプルの最大ピクチャ幅はpic_width_max_in_luma_samplesとして表され、コーディングツリーブロックの寸法はCtbSizeYとして表される。SSは、構文要素がコーディングツリーユニットの左上コーナーの水平位置またはサブピクチャのデフォルト幅を指定する場合に、(pic_width_max_in_luma_samples+RR)/CtbSizeYに等しく、RRが非ゼロの整数である。いくつかの実施形態において、輝度サンプルの最大ピクチャ高さはpic_height_max_in_luma_samplesとして表され、コーディングツリーブロックの寸法はCtbSizeYとして表される。SSは、構文要素がコーディングツリーユニットの左上コーナーの垂直位置またはサブピクチャのデフォルト高さを指定する場合に、(pic_width_max_in_luma_samples+RR)/CtbSizeYに等しく、RRが非ゼロの整数である。いくつかの実施形態において、RR=CtbSizeY-1である。
図13は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1300は、動作1310で、ビデオのピクチャとビデオのビットストリーム表現との間の変換を実行することを含み、ピクチャは1つ以上のサブピクチャを含む。ビットストリーム表現は、異なるサブピクチャが異なる識別子を有することを指定するフォーマット規則に適合する。
いくつかの実施形態において、フォーマット規則は、1つ以上のサブピクチャの識別子がビデオユニットレベルで含まれることを指定し、ビデオユニットは、シーケンスパラメータセット、ピクチャパラメータセット、またはピクチャヘッダを含む。いくつかの実施形態において、シーケンスパラメータセットでの第1の構文フラグは、シーケンスパラメータセットレベルで1つ以上のサブピクチャの識別子のシグナリングが存在するかどうかを示し、ピクチャパラメータセットでの第2の構文フラグは、ピクチャパラメータセットレベルで1つ以上のサブピクチャの識別子のシグナリングが存在するかどうかを示し、ピクチャヘッダでの第3の構文フラグは、ピクチャヘッダレベルで1つ以上のサブピクチャの識別子のシグナリングが存在するかどうかを示す。第1の構文フラグ、第2の構文フラグ、第3の構文フラグのうちの少なくとも1つが1に等しい。いくつかの実施形態において、第1の構文フラグが、シーケンスパラメータセットレベルで1つ以上のサブピクチャの識別子のシグナリングが存在することを示す場合に、1つ以上のサブピクチャの識別子のシグナリングがピクチャヘッダレベルで省略される。
いくつかの実施形態において、フォーマット規則は、1つ以上のサブピクチャの識別子がサブピクチャ識別子のリストに含まれることを指定する。いくつかの実施形態において、リストにおける第1のサブピクチャの識別子がSubpicIdList[i]として示され、第2のサブピクチャの識別子がSubpicIdList[j]として示され、j=i-Pであり、フォーマット規則は、SubpicIdList[i]とSubpicIdList[j]との間の差分D[i]がビットストリーム表現において示されることを指定する。いくつかの実施形態において、Pが1に等しい。いくつかの実施形態において、i>Pである。いくつかの実施形態において、D[i]が0より大きい。いくつかの実施形態において、D[I]-1がビットストリーム表現に含まれる。
いくつかの実施形態において、サブピクチャ識別子のリストは、シーケンスパラメータセットが最初に考慮され、ピクチャパラメータセットが次に考慮され、ピクチャヘッダが最後に考慮される順序に基づいて決定される。いくつかの実施形態において、サブピクチャ識別子のリストは、ピクチャヘッダが最初に考慮され、ピクチャパラメータセットが次に考慮され、シーケンスパラメータセットが最後に考慮される順序に基づいて決定される。
いくつかの実施形態において、フォーマット規則は、1つ以上のサブピクチャの識別子が1つ以上のビデオユニットレベルで省略される場合に、デフォルト値がサブピクチャ識別子のリストにおいて識別子に割り当てられることを指定する。1つ以上のビデオユニットは、少なくともシーケンスパラメータセット、ピクチャパラメータセット、またはピクチャヘッダを含む。いくつかの実施形態において、リストにおけるサブピクチャの識別子がSubpicIdList[i]として示され、SubpicIdList[i]のデフォルト値がi+Pであり、Pがオフセット値である。
図14は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1400は、動作1410で、ビデオの第1のサブピクチャのブロックとビデオのビットストリーム表現との間の変換に対して、ループフィルタリング処理がサブピクチャ境界を越えて許可されているかどうかに基づいて、ブロックと第2のサブピクチャの隣接ブロックとの間のエッジを超えてデブロッキング処理を適用するかどうかを決定することを含む。方法1400はまた、動作1420で、決定に基づいて変換を実行することを含む。
いくつかの実施形態において、第1の構文フラグは、ループフィルタリング処理がエッジの第1の側の境界を越えてサンプルにアクセスすることが許可されているどうかを示し、第2の構文フラグは、ループフィルタリング処理がエッジの第2の側の境界を越えてサンプルにアクセスすることが許可されているかどうかを示す。エッジは、第1の構文フラグまたは第2の構文フラグのうちの少なくとも1つが、ループフィルタリング処理が許可されていないことを示す場合に、フィルタリングされない。いくつかの実施形態において、第1の構文フラグは、ループフィルタリング処理が、エッジの第1の側の境界を越えてサンプルにアクセスすることが許可されていることを示し、第2の構文フラグが、ループフィルタリング処理がエッジの第2の側の境界を越えてサンプルにアクセスすることが許可されていないことを示すことにより、エッジはフィルタリングされない。
いくつかの実施形態において、エッジの第1の側がフィルタリングされ、エッジの第2の側がフィルタリングされるかどうかは、互いに別々に決定される。いくつかの実施形態において、エッジの第1の側のサンプルは、第1の構文フラグが1であることによりフィルタリングされる。いくつかの実施形態において、エッジの第2の側のサンプルは、第2の構文フラグが1であることによりフィルタリングされる。いくつかの実施形態において、エッジの第1の側は、第1のサブピクチャにあり、エッジの第2の側面は、第2のサブピクチャにある。
図15は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1500は、動作1510で、ビデオとビデオのビットストリーム表現との間の変換を実行することを含む。ビットストリーム表現は、ピクチャパラメータセットにおいてトランスフォームスキップコーディングツールに使用される最大ブロックサイズを示す構文要素が、シーケンスパラメータセットにおける任意の構文フラグから独立してシグナリングされることを指定するフォーマット規則に適合する。
図16は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1600は、動作1610で、ビデオとビデオのビットストリーム表現との間の変換を実行することを含む。ビットストリーム表現は、ピクチャパラメータセットにおいてトランスフォームスキップコーディングツールに使用される最大ブロックサイズを示す構文要素が、シーケンスパラメータセットにおける構文フラグに基づいてシグナリングされることを指定するフォーマット規則に適合する。
いくつかの実施形態において、構文要素は、シーケンスパラメータセットまたはピクチャヘッダに含まれる。いくつかの実施形態において、構文要素はlog2_transform_skip_max_size_minus2を含む。いくつかの実施形態において、シーケンスパラメータセットにおける構文フラグは、sps_transform_skip_enabled_flagを含む。
図17は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1700は、動作1710で、ビデオの現在のブロックとビデオのビットストリーム表現との間の変換を実行することを含む。方法1700はまた、動作1720で、変換後に、ブロックが少なくとも2つの予測の重み付き和によって予測される幾何学的パーティションモードを使用して現在のブロックがコーディングされたかどうかに基づいて、履歴ベースの動きベクトル予測テーブルを更新する方式を決定することを含む。重み付き和の重みは、少なくとも2つのパーティションに対して生成される。少なくともいくつかのパーティションは角度エッジを有し、履歴ベースの動きベクトル予測テーブルは、ビデオの以前にコーディングされたブロックに基づく動き候補を含む。
いくつかの実施形態において、現在のブロックが幾何学的パーティションモードを使用してコーディングされる場合に、履歴ベースの動きベクトル予測テーブルは更新されない。いくつかの実施形態において、現在のブロックが幾何学的パーティションモードを使用してコーディングされる場合に、履歴ベースの動きベクトル予測テーブルが更新される。いくつかの実施形態において、履歴ベースの動作ベクトル予測テーブルは、現在のブロックの1つの予測の動き情報を使用して更新される。いくつかの実施形態において、履歴ベースの動作ベクトル予測テーブルは、現在のブロックの複数の予測の動き情報を使用して更新される。
図18は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1800は、動作1810で、色差サンプルが対応する輝度サンプルに基づいてフィルタリングされるクロコンポーネント適応ループフィルタリング処理を使用して、ビデオの現在の処理ユニットとビデオのビットストリーム表現との間の変換を実行することを含む。現在の処理ユニットは、2つの仮想境界によって決定される適応ループフィルタリング処理ユニットを含む。現在の処理ユニットの外側に位置する輝度サンプルは、現在の処理ユニットの色差サンプルをフィルタリングするために除外される。
いくつかの実施形態において、現在の処理ユニットの外側に位置する輝度サンプルは、パディングされ、パディングされた輝度サンプルは、現在の処理ユニットの色差サンプルをフィルタリングするために使用される。
図19は、本技術によるビデオ処理のための方法のフローチャート表現である。方法1900は、動作1910で、動作1910で、色差サンプルが対応する輝度サンプルに基づいてフィルタリングされるクロコンポーネント適応ループフィルタリング処理を使用して、ビデオの現在の処理ユニットとビデオのビットストリーム表現との間の変換を実行することを含む。現在の処理ユニットは、2つの仮想境界によって区切られる適応ループフィルタリング処理ユニットを含む。現在の処理ユニットの外側に位置する輝度サンプルは、現在の処理ユニットの色差サンプルをフィルタリングするために使用される。
いくつかの実施形態において、変換は、ビットストリーム表現からビデオを生成する。いくつかの実施形態において、変換は、ビデオからビットストリーム表現を生成する。
開示された技術のいくつかの実施形態は、ビデオ処理ツールまたはモードを有効にする判定または決定を行うことを含む。一例では、ビデオ処理ツールまたはモードが有効にされるときに、符号化器は、ビデオのブロックの処理においてツールまたはモードを使用または実装するが、必ずしもツールまたはモードの使用に基づいて結果として生じるビットストリームを修正しないことがある。すなわち、ビデオのブロックからビデオのビットストリーム表現への変換は、判定または決定に基づいて有効にされるときに、ビデオ処理ツールまたはモードを使用する。別の例では、ビデオ処理ツールまたはモードが有効にされるときに、復号器は、ビットストリームがビデオ処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、ビデオのビットストリーム表現からビデオのブロックへの変換は、判定または決定に基づいて有効にされたビデオ処理ツールまたはモードを使用して実行される。
開示された技術のいくつかの実施形態は、ビデオ処理ツールまたはモードを無効にする判定または決定を行うことを含む。一例では、ビデオ処理ツールまたはモードが無効にされるときに、符号化器は、ビデオのブロックをビデオのビットストリーム表現に変換する際に、ツールまたはモードを使用しない。別の例では、ビデオ処理ツールまたはモードが無効にされるときに、復号器は、ビットストリームが、判定または決定に基づいて有効にされたビデオ処理ツールまたはモードを使用して修正されていないことを知って、ビットストリームを処理する。
開示された、および他の解決策、例、実施形態、モジュールならびにこの文書に記載された機能動作は、この文書に開示される構造およびそれらの構造的等価物を含む、デジタル電子回路、もしくはコンピュータソフトウェア、ファームウェア、もしくはハードウェアにおいて、またはそれらのうちの1つ以上の組み合わせにおいて実装することができる。開示された、および他の実施形態は、1つ以上のコンピュータプログラム製品、例えば、データ処理装置による、またはデータ処理装置の動作を制御するための、コンピュータ可読媒体に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして実装することができる。コンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝搬信号に影響を与える組成物、またはそれらのうちの1つ以上の組み合わせとすることができる。用語「データ処理装置」は、例として、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を包含する。装置は、ハードウェアに加えて、問題のコンピュータプログラムの実行環境を生成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つ以上の組み合わせを構成するコードを含むことができる。伝搬信号は、人工的に生成された信号、例えば、好適な受信機装置に送信するための情報を符号化するために生成される機械生成電気信号、光信号、または電磁信号である。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイル型またはインタープリタ型言語を含む、任意の形式のプログラミング言語で書くことができ、それは、スタンドアロン・プログラムとして、またはコンピューティング環境における使用に好適なモジュール、コンポーネント、サブルーチン、または他のユニットとしてのものを含む、任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応しない。プログラムは、他のプログラムまたはデータを保持するファイルの一部分(例えば、マークアップ言語文書に記憶される1つ以上のスクリプト)、問題のプログラム専用の単一ファイル、または複数の洗練されたファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部分を記憶するファイル)に記憶することができる。コンピュータプログラムは、1つのコンピュータまたは1つのサイトに配置されるか、または複数のサイトに分散され、通信ネットワークによって相互接続される複数のコンピュータで実行されるように展開することができる。
本文書に記載される処理および論理フローは、入力データ上で動作し、出力を生成することによって機能を実行するために、1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって実行することができる。処理および論理フローはまた、特別目的論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行することができ、装置は、これらとして実装することができる。
コンピュータプログラムの実行に好適なプロセッサは、例として、汎用および専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般的に、プロセッサは、読み出し専用メモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信するだろう。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つ以上のメモリデバイスである。一般的に、コンピュータはまた、データを記憶するための1つ以上の大容量記憶デバイス、例えば、磁気ディスク、光磁気ディスク、または光ディスクからデータを受信したり、これらにデータを転送したり、またはその両方を行うことを含むか、それらを行うように動作可能に結合されるだろう。しかし、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに好適なコンピュータ可読媒体は、例として、EPROM、EEPROM、およびフラッシュメモリデバイスである半導体メモリデバイス、例えば、内部ハードディスクまたはリムーバブルディスクである磁気ディスク、光磁気ディスク、ならびにCD ROMディスクおよびDVD-ROMディスクを含む、すべての形態の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、特別目的論理回路によって補足されるか、またはこれに組み込むことができる。
この特許文書は多くの詳細が含むが、これらは、いずれかの主題の範囲または請求項に記載され得るものに対する限定ではなく、特定の技法の特定の実施形態に固有であり得る特徴の記載として解釈されるべきである。別々の実施形態のコンテキストでこの特許文書に記載されている特定の特徴はまた、単一の実施形態で組み合わせて実装することができる。逆に、単一の実施形態のコンテキストで記載される様々な特徴はまた、複数の実施形態において別々に、または任意の好適なサブコンビネーションで実装することができる。さらに、特徴は、特定の組み合わせにおいて作用するものとして上述され、最初にそれ自体請求項に記載されてもよいが、請求項に記載された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから削除することができ、請求項に記載された組み合わせは、サブコンビネーションまたはサブコンビネーションの変形を対象としてもよい。
同様に、図面には特定の順序で動作が示されているが、これは、所望の結果を達成するために、このような動作を特定の順序でまたは順次に実行すること、または、示されたすべての動作を実行することを要求するものとして理解されるべきではない。さらに、この特許文書に記載されている実施形態における様々なシステムコンポーネントの分離は、すべての実施形態においてこのような分離を必要とするものとして理解されるべきではない。
少数の実装および例が記載されているに過ぎず、この特許文書に記載され、示されているものに基づいて、他の実装、拡張および変形を行うことができる。
の出願は、2019年10月18日に出願された国際特許出願第PCT/CN2019/111807号の優先権および利益を主張する2020年10月19日に出願された国際特許出願第PCT/CN2020/121767号の国内段階である。前述の出願の開示全体は、この出願の開示の一部として参照により組み込まれる。
いくつかの実施形態において、ピクチャは、1つ以上のタイル行および1つ以上のタイル列に分割される。タイルは、ピクチャの矩形領域をカバーするCTUのシーケンスである。
2.6 例示的な構文および意味
Figure 2022552537000150
Figure 2022552537000151
Figure 2022552537000152
Figure 2022552537000153
Figure 2022552537000154
Figure 2022552537000155
Figure 2022552537000156
Figure 2022552537000157
Figure 2022552537000158
Figure 2022552537000159
Figure 2022552537000160
Figure 2022552537000161
Figure 2022552537000162
1に等しいsubpics_present_flagは、SPS RBSP構文において現在サブピクチャパラメータが存在することを示す。0に等しいsubpics_present_flagは、SPS RBSP構文において現在サブピクチャパラメータが存在しないことを示す。
注2 - ビットストリームがサブビットストリーム抽出処理の結果であり、サブビットストリーム抽出処理への入力ビットストリームのサブピクチャのサブセットのみを含むときに、SPSのRBSPにおいて1に等しいsubpics_present_flagの値をセットする必要があるかもしれない。
sps_num_subpics_minus1+1は、サブピクチャの数を指定する。sps_num_subpics_minus1は、0~254の範囲にある。存在しないときは、sps_num_subpics_minus1の値は、0に等しいと推論される。
subpic_ctu_top_left_x[i]は、CtbSizeYの単位でi番目のサブピクチャの左上のCTUの水平位置を指定する。構文要素の長さは、
[外1]
Figure 2022552537000163
ビットである。存在しないときは、subpic_ctu_top_left_x[i]の値は、0に等しいと推論される。
subpic_ctu_top_left_y[i]は、CtbSizeYの単位でi番目のサブピクチャの左上のCTUの垂直位置を指定する。構文要素の長さは、
[外2]
Figure 2022552537000164
ビットである。存在しないときは、subpic_ctu_top_left_y[i]の値は、0に等しいと推論される。
ubpic_width_minus1[i]+1は、CtbSizeYの単位でi番目のサブピクチャの幅を指定する。構文要素の長さは、Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY))ビットである。存在しないときは、subpic_width_minus1[i]の値は、
[外3]
Figure 2022552537000165
-1に等しいと推論される。
subpic_height_minus1[i]+1は、CtbSizeYの単位でi番目のサブピクチャの高さを指定する。構文要素の長さは、Ceil(Log2(pic_height_max_in_luma_samples/CtbSizeY))ビットである。存在しないときは、subpic_height_minus1[i]の値は、
[外4]
Figure 2022552537000166
-1に等しいと推論される。
1に等しいsubpic_treated_as_pic_flag[i]は、CVSにおいて各コーディングされたピクチャのi番目のサブピクチャが、ループ内フィルタリング動作を除く復号処理においてピクチャとして処理されることを指定する。0に等しいsubpic_treated_as_pic_flag[i]は、CVSにおいて各コーディングされたピクチャのi番目のサブピクチャが、ループ内フィルタリング動作を除く復号処理においてピクチャとして処理されないことを指定する。存在しないときは、subpic_treated_as_pic_flag[i]の値は、0に等しいと推論される。
1に等しいloop_filter_across_subpic_enabled_flag[i]は、CVSにおいて各コーディングされたピクチャにおけるi番目のサブピクチャの境界にわたってループ内フィルタリング動作が実行されてもよいことを指定する。
0に等しいloop_filter_across_subpic_enabled_flag[i]は、CVSにおいて各コーディングされたピクチャにおけるi番目のサブピクチャの境界にわたってループ内フィルタリング動作が実行されないことを指定する。
存在しないときは、loop_filter_across_subpic_enabled_pic_flag[i]の値は、1に等しいと推論される。
以下の制約が適用されるのはビットストリーム適合性の要件である。
- サブピクチャsubpicAとsubpicBの任意の2つのサブピクチャに対して、subpicAのインデックスがsubpicBのインデックスより小さいときに、サブPicAの任意のコーディングされたNALユニットは、サブPicBのコーディングされた任意のNALユニットを復号順に継承するものとする。
- サブピクチャの形状は、各サブピクチャが、復号されるときに、その全体の左境界および全体の上境界を、ピクチャ境界からなるか、以前に復号されたサブピクチャの境界からなるようにするものとする。
1に等しいsps_subpic_id_present_flagは、サブピクチャIdマッピングがSPSに存在することを指定する。
0に等しいsps_subpic_id_present_flagは、サブピクチャIdマッピングがSPSに存在しないことを指定する。
1に等しいsps_subpic_id_signalling_present_flagは、サブピクチャIdマッピングがSPSにおいてシグナリングされることを指定する。
0に等しいsps_subpic_id_signalling_present_flagは、サブピクチャIdマッピングがSPSにおいてシグナリングされないことを指定する。
存在しないときは、sps_subpic_id_signalling_present_flagの値は0に等しいと推論される。
sps_subpic_id_len_minus1+1は、構文要素sps_subpic_id[i]を表すために使用されるビット数を指定する。sps_subpic_id_len_minus1の値は、0~15の範囲(両端を含む)にあるものとする。
sps_subpic_id[i]は、i番目のサブピクチャのサブピクチャIdを指定する。sps_subpic_id[i]の構文要素の長さは、sps_subpic_id_len_minus1+1ビットである。存在しないとき、およびsps_subpic_id_present_flagが0に等しいときに、sps_subpic_id[i]の値は、0~sps_num_subpics_minus1の範囲(両端を含む)の各iに対してiに等しいと推論される。
ph_pic_parameter_set_idは、使用中のPPSに対するpps_pic_parameter_set_idの値を指定する。ph_pic_parameter_set_idの値は、0~63の範囲(両端を含む)にあるものとする。
ビットストリーム適合性の要件は、ピクチャヘッダのTemporalIdの値が、ph_pic_parameter_set_idに等しいpps_pic_parameter_set_idを有するPPSのTemporalIdの値以上であるものとすることである。
1に等しいph_subpic_id_signalling_present_flagは、プクチャヘッダにおいてサブピクチャIdマッピングがシグナリングされることを指定する。0に等しいph_subpic_id_signalling_present_flagは、プクチャヘッダにおいてサブピクチャIdマッピングがシグナリングされないことを指定する。
ph_subpic_id_len_minus1+1は、構文要素ph_subpic_id[i]を表すために使用されるビット数を指定する。pic_subpic_id_len_minus1の値は、0~15の範囲(両端を含む)にあるものとする。ビットストリーム適合性の要件は、ph_subpic_id_len_minus1の値が、CVSにおけるコーディングされたピクチャによって参照されるすべてのピクチャヘッダに対して同じであるものとすることである。
ph_subpic_id[i]は、i番目のサブピクチャのサブピクチャIdを指定する。ph_subpic_id[i]構文要素の長さは、ph_subpic_id_len_minus1+1ビットである。
リストSubpicIdList[i]は、以下のように導出される。
Figure 2022552537000167
デブロッキングフィルタ処理
一般
この処理への入力は、デブロッキングの前に再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
この処理の出力は、デブロッキングの後に修正され再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
ピクチャの垂直エッジが、最初にフィルタリングされる。次いで、ピクチャの水平エッジが、垂直エッジフィルタリング処理によって修正されたサンプルを入力としてフィルタリングされる。各CTUのCTBの垂直エッジと水平エッジは、コーディングユニットベースで別々に処理される。コーディングユニット内のコーディングブロックの垂直エッジは、コーディングブロックの左側のエッジから開始して、幾何学的順序でコーディングブロックの右側に向かってエッジを通して進むように、フィルタリングされる。コーディングユニット内のコーディングブロックの水平エッジは、コーディングブロックの上側のエッジから開始して、幾何学的順序でコーディングブロックの下側に向かってエッジを通して進むように、フィルタリングされる。
注 - フィルタリング処理は、本明細書ではピクチャベースで指定されているが、同じ出力値を生成するように復号器が処理依存性の順序を適切に説明するのであれば、フィルタリング処理は、同等の結果を持つコーディングユニットベースで実装され得る。
デブロッキングフィルタ処理は、以下のタイプのエッジを除き、ピクチャのすべてのコーディングサブブロックエッジおよびトランスフォームブロックエッジに適用される。
- ピクチャの境界でのエッジ

[外5]
Figure 2022552537000168
- pps_loop_filter_across_virtual_boundaries_disabled_flagが1に等しいときに、ピクチャの仮想境界と一致するエッジ
- loop_filter_across_tiles_enabled_flag が0に等しいときに、タイル境界と一致するエッジ
- loop_filter_across_slices_enabled_flagが0に等しいときに、スライス境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライスの上側または左側の境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライス内のエッジ
- 輝度コンポーネントの4×4のサンプルグリッド境界に対応しないエッジ
- 色差コンポーネントの8×8のサンプルグリッド境界に対応しないエッジ
- エッジの両側が1に等しいintra_bdpcm_luma_flagを有する輝度コンポーネント内のエッジ
- エッジの両側が1に等しいintra_bdpcm_chroma_flagを有する色差コンポーネント内のエッジ
- 関連するトランスフォームユニットのエッジでない色差サブブロックのエッジ
...
一方向のためのデブロッキングフィルタ処理
この処理への入力は、以下のようである。
- 輝度(DUAL_TREE_LUMA)または色差コンポーネント(DUAL_TREE_CHROMA)が現在処理されているかどうかを指定する変数treeType
- treeTypeがDUAL_TREE_LUMAに等しいときは、デブロッキング前の再されたピクチャ、すなわちrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
- 垂直(EDGE_VER)をフィルタリングするか、水平(EDGE_HOR)をフィルタリングするかを指定する変数edgeType
この処理の出力は、デブロッキング後に修正され再構成されたピクチャ、すなわち、
- treeTypeがDUAL_TREE_LUMAに等しいときに、アレイrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
変数firstCompIdxおよびlastCompIdxは、以下のように導出される。
Figure 2022552537000169
コーディングブロック幅nCbW、コーディングブロック高さnCbHおよびコーディングブロックの左上のサンプルの位置(xCb,yCb)を有する、firstCompIdx~lastCompIdxの範囲(両端を含む)の色コンポーネントインデックスcIdxによって示されるコーディングユニットの色コンポーネントごとの各コーディングユニットおよび各コーディングブロックに対して、cIdxが0に等しいとき、cIdxが0に等しくなく、edgeTypeがEDGE_VERに等しく、xCb%8が0に等しいとき、またはcIdxが0に等しくなく、edgeTypeがEDGE_HORに等しく、yCb%8が0に等しいときに、エッジは以下の順序付けされたステップによってフィルタリングされる。
1. 変数filterEdgeFlagは、以下のように導出される。
- edgeTypeがEDGE_VERに等しく、以下の条件のうちの1つ以上が真である場合、filterEdgeFlagは、0に等しくセットされる。
- 現在のコーディングブロックの左境界は、ピクチャの左境界である。
[外6]
Figure 2022552537000170
- 現在のコーディングブロックの左境界は、タイルの左境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、スライスの左境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、ピクチャの垂直仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、edgeTypeがEDGE_HORに等しく、以下の条件のうちの1つ以上が真である場合、変数filterEdgeFlagは、0に等しくセットされる。
- 現在の輝度コーディングブロックの上境界は、ピクチャの上境界である。
[外7]
Figure 2022552537000171
- 現在のコーディングブロックの上境界は、タイルの上境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、スライスの上境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、ピクチャの水平仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、filterEdgeFlagは、1に等しくセットされる。
以下の詳細なリストは、一般的な概念を説明するための例として考慮されるべきである。これらの項目は、狭義に解釈されるべきではない。さらに、これらの項目は、任意の方式で組み合わせることができる。以下、時間的フィルタは、他のピクチャにおけるサンプルを必要とするフィルタを表すために使用される。Max(x,y)は、xおよびyのうちの大きい方のものを返す。Max(x,y)は、xおよびyのうちの小さい方のものを返す。
1. アフィン動き候補を生成するためにピクチャにおいて時間的MV予測子がフェッチされる位置(位置RBという名前)は、必要なサブピクチャ内になければならず、必要なサブピクチャの左上のコーナー座標が(xTL,yTL)であり、必要なサブピクチャの右下の座標が(xBR,yBR)であると想定している。
a. 一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b. 一例では、座標(x,y)を有する位置RBが必要なサブピクチャから外れている場合、時間的MV予測子は、利用不可として処理される。
i. 一例では、位置RBは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置RBは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置RBは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置RBは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置RBは、必要なサブピクチャから外れている場合、RBの置換が利用される。
i. 代替的には、さらに、置換位置は、必要なサブピクチャ内にあるものとする。
d. 一例では、位置RBは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
iv. 一例では、xは、y=Max(y,yTL)としてクリップされる。
e. 一例では、位置RBは、並置されたピクチャ内の現在のブロックの対応するブロック内の右下の位置であってもよい。
f. 提案した方法は、現在のピクチャとは異なるピクチャからの動き情報にアクセスすることを必要とする他のコーディングツールにおいて利用されてもよい。
g. 一例では、上記の方法が適用されるかどうか(例えば、位置RBは、必要なサブピクチャ(例えば、1.aおよび/または1.bで主張されているようにするために)内になければならないかどうか)は、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
2. 補間処理において使用されない参照で整数サンプルがフェッチされる位置(位置Sという名前)は、必要なサブピクチャ内になければならず、必要なサブピクチャの左上のコーナー座標が(xTL,yTL)であり、必要なサブピクチャの右下の座標が(xBR,yBR)であると想定している。
a.
一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b.
一例では、座標(x,y)を有する位置Sが必要なサブピクチャから外れている場合、参照サンプルは、利用不可として処理される。
i. 一例では、位置Sは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置Sは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置Sは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置Sは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置Sは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
iv. 一例では、xは、y=Max(y,yTL)としてクリップされる。
d. 一例では、位置Sは、要求されたサブピクチャ(例えば、2.aおよび/または2.bで主張されているようにするために)内になければならないかどうかは、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
e. 一例では、フェッチされた整数サンプルは、BDOFおよび/またはPORFにおける勾配を生成するために使用される。
3. 再構成された輝度サンプル値がフェッチされる位置(位置Rという名前)は、必要なサブピクチャ内にあってもよく、必要なサブピクチャの左上のコーナー座標が(xTL, yTL)であり、必要なサブピクチャの右下の座標が(xBR, yBR)であると想定している。
a. 一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b. 一例では、座標(x,y)を有する位置Rが必要なサブピクチャから外れている場合、参照サンプルは、利用不可として処理される。
i. 一例では、位置Rは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置Rは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置Rは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置Rは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置Rは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
iv. 一例では、xは、y=Max(y,yTL)としてクリップされる。
d. 一例では、位置Rは、要求されたサブピクチャ(例えば、4.aおよび/または4.bで主張されているようにするために)内になければならないかどうかは、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。
例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
e. 一例では、フェッチされた輝度サンプルは、LMCSにおける色差コンポーネントのためのスケーリング係数を導出するために使用される。
4. BT/TT/QTスプリット、BT/TT/QT深度導出、および/またはCUスプリットフラグのシグナリングのためのピクチャ境界チェックの位置(位置Nという名前)は、必要なサブピクチャ内になければならず、必要なサブピクチャの左上のコーナー座標が(xTL,yTL)であり、必要なサブピクチャの右下の座標が(xBR,yBR)であると想定している。
a. 一例では、必要なサブピクチャは、現在のブロックをカバーするサブピクチャである。
b. 一例では、座標(x,y)を有する位置Nが必要なサブピクチャから外れている場合、参照サンプルは、利用不可として処理される。
i. 一例では、位置Nは、x>xBRである場合、必要なサブピクチャから外れている。
ii. 一例では、位置Nは、y>yBRである場合、必要なサブピクチャから外れている。
iii. 一例では、位置Nは、x<xTLである場合、必要なサブピクチャから外れている。
iv. 一例では、位置Nは、y<yTLである場合、必要なサブピクチャから外れている。
c. 一例では、位置Nは、必要なサブピクチャ内にクリップされる。
i. 一例では、xは、x=Min(x,xBR)としてクリップされる。
ii. 一例では、xは、y=Min(y,yBR)としてクリップされる。
iii. 一例では、xは、x=Max(x,xTL)としてクリップされる。
d. 一例では、xは、y=Max(y,yTL)としてクリップされる。一例では、位置Nは、要求されたサブピクチャ(例えば、5.aおよび/または5.bで主張されているようにするために)内になければならないかどうかは、VPS/DPS/SPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいてシグナリングされる1つ以上の構文要素に依存してもよい。例えば、構文要素は、subpic_treated_as_pic_flag[SubPicIdx]であってもよく、ここで、SubPicIdxは、現在のブロックをカバーするサブピクチャのサブピクチャインデックスである。
5. HMVP(History-based Motion Vector Prediction)テーブルは、1つのピクチャ内の新しいサブピクチャを復号する前にリセットされてもよい。
a. 一例では、IBCコーディングのために使用されるHMVPテーブルがリセットされてもよい。
b. 一例では、インターコーディングのために使用されるHMVPテーブルは、リセットされてもよい。
c. 一例では、イントラコーディングのために使用されるHMVPテーブルは、リセットされてもよい。
6. サブピクチャ構文要素は、N(N=8,32など)個のサンプル単位で定義されてもよい。
a. 一例では、N個のサンプル単位のサブピクチャ識別子グリッドの各要素の幅
b. 一例では、N個のサンプル単位のサブピクチャ識別子グリッドの各要素の高さ
c. 一例では、Nは、CTUの幅および/または高さにセットされる。
7. ピクチャ幅とピクチャ高さの構文要素は、K(K>=8)以上に制限されてもよい。
a. 一例では、ピクチャ幅を8以上に制限する必要があってもよい。
b. 一例では、ピクチャ高さを8以上に制限する必要があってもよい。
8. 適合ビットストリームは、サブピクチャコーディングおよびARC(Adaptive resolution conversion)/DRC(Dynamic resolution conversion)/RPR(Reference picture resampling)が1つのビデオユニット(例えば、シーケンス)に対して有効にされることが禁止されることを満たすものである。
a. 一例では、サブピクチャコーディングを有効にするシグナリングは、ARC/DRC/RPRを禁止する条件下であってもよい。
i. 一例では、subpics_present_flagが1に等しいように、サブピクチャが有効であるときに、このSPSがアクティブな全てのピクチャに対するpic_width_in_luma_samplesは、max_width_in_luma_samplesに等しい。
b. 代替的には、サブピクチャコーディングおよびARC/DRC/RPRは、両方とも、1つのビデオユニット(例えば、シーケンス)に対して有効にしてもよい。
i. 一例では、適合ビットストリームは、ARC/DRC/RPRによりダウンサンプリングされたサブピクチャが、依然として幅においてK個のCTUと高さにおいてM個のCTUの形式(KとMが両方とも整数である)にあることを満たすものとする。
ii. 一例では、適合ビットストリームは、ピクチャ境界(例えば、右境界および/または下境界)に位置しないサブピクチャに対して、ARC/DRC/RPRによりダウンサンプリングされたサブピクチャが、依然として幅においてK個のCTUと高さにおいてM個のCTUの形式(KとMが両方とも整数である)にあることを満たすものとする。
iii. 一例では、CTUサイズは、ピクチャ解像度に基づいて適応的に変更されてもよい。
1) 一例では、最大CTUサイズは、SPSにおいてシグナリングされてもよい。解像度の低い各ピクチャに対して、CTUサイズは、それに応じて、低減された解像度に基づいて変更され得る。
2) 一例では、CTUサイズは、SPSおよびPPS、および/またはサブピクチャレベルでシグナリングされてもよい。
9. 構文要素subpic_grid_col_width_minus1とsubpic_grid_row_height_minus1は制約されてもよい。
a. 一例では、subpic_grid_col_width_minus1がT1以下(またはT2より小さく)なければならない。
b. 一例では、subpic_grid_row_height_minus1がT2以下(またはT2より小さく)なければならない。
c. 一例では、適合ビットストリームにおいて、subpic_grid_col_width_minus1および/またはsubpic_grid_row_height_minus1は、項目3.aまたは3.bなどの制約に従わなければならない。
d. 一例では、3.aにおけるT1および/または3.bにおけるT2は、ビデオコーディング規格のプロファイル/レベル/階層に依存してもよい。
e. 一例では、3.aにおけるT1は、ピクチャ幅に依存してもよい。
i. たとえば、T1は、pic_width_max_in_luma_samples/4またはpic_width_max_in_luma_samples/4+Offに等しい。offは、1、2、-1、-2などであってもよい。
f. 一例では、3.bにおけるT2は、ピクチャ幅に依存してもよい。
i. たとえば、T1は、pic_height_max_in_luma_samples/4またはpic_height_max_in_luma_samples/4-1+Offに等しい。offは、1、2、-1、-2などであってもよい。
10. 2つのサブピクチャ間の境界は、2つのCTU間の境界でなければならないことが制約される。
a. 言い換えれば、CTUは、複数のサブピクチャでカバーすることはできない。
b. 一例では、subpic_grid_col_width_minus1の単位は、VVCのように4ではなく、CTU幅(32、64、128など)であってもよい。サブピクチャのグリッド幅は、(subpic_grid_col_width_minus1+1)*CTU幅とするべきである。
c. 一例では、subpic_grid_col_height_minus1の単位は、VVCにおけるように4ではなく、CTU高さ(32、64、128など)であってもよい。サブピクチャのグリッド高さは、(subpic_grid_col_height_minus1+1)*CTU高さとするべきである。
d. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
11. サブピクチャの形状は、矩形でなければならないことが制約される。
a. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
b. サブピクチャは矩形スライスのみを含んでもよい。例えば、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
12. 2つのサブピクチャはオーバラップすることができないことが制約される。
a. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
b. 代替的には、2つのサブピクチャが互いにオーバラップしてもよい。
13. ピクチャ内の任意の位置が、1つのサブピクチャのみによってカバーされなければならないことが制約される。
a. 一例では、適合ビットストリームにおいて、サブピクチャアプローチが適用される場合、制約が満たされなければならない。
b. 代替的には、1つのサンプルがいずれのサブピクチャにも属さなくてもよい。
c. 代替的には、1つのアンプルが複数のサブピクチャに属してもよい。
14. 同じシーケンスにおいて提示されるすべての解像度にマッピングされる、SPSにおいて定義されるサブピクチャは、上述の制約された位置および/またはサイズに従うべきであることが制約されてもよい。
a. 一例では、同じシーケンスにおいて提示される解像度にマッピングされたSPSにおいて定義されるサブピクチャの幅と高さは、N個の(8、16、32のような)輝度サンプルの整数倍とするべきである。
b. 一例では、サブピクチャは、特定のレイヤに対して定義されてもよく、他のレイヤにマッピングされてもよい。
i. 例えば、サブピクチャは、シーケンス内で最も高い解像度を有するレイヤに対して定義されてもよい。
ii. 例えば、サブピクチャは、シーケンス内で最も低い解像度を有するレイヤに対して定義されてもよい。
iii. サブピクチャがどのレイヤに対して定義されているかは、SPS/VPS/PPS/PPS/スライスヘッダにおいてシグナリングされてもよい。
c. 一例では、サブピクチャおよび異なる解像度の両方が適用されるときに、すべての解像度(例えば、幅または高さ)は、所与の解像度の整数倍であってもよい。
d. 一例では、SPSにおいて定義されるサブピクチャの幅および/または高さは、CTUサイズの整数倍(例えば、M)であってもよい。
e. 代替的には、シーケンス内のサブピクチャおよび異なる解像度は、同時には許可されなくてもよい。
15. サブピクチャは特定のレイヤにのみ適用されてもよい。
a. 一例では、SPSにおいて定義されるサブピクチャは、シーケンス内で最も解像度の高いレイヤにのみ適用されてもよい。
b. 一例では、SPSにおいて定義されたサブピクチャは、シーケンス内で最も低い時間的IDを持つレイヤにのみ適用されてもよい。
c. サブピクチャをどのレイヤに適用し得るかは、SPS/VPS/PPSにおける1つ以上の構文要素によって示されてもよい。
d. サブピクチャをどのレイヤに適用することができないかは、SPS/VPS/PPSにおける1つ以上の構文要素によって示されてもよい。
16. 一例では、サブピクチャの位置および/または寸法は、subpic_grid_idxを使用せずにシグナリングされてもよい。
a. 一例では、サブピクチャの左上の位置がシグナリングされてもよい。
b. 一例では、サブピクチャの右下の位置がシグナリングされてもよい。
c. 一例では、サブピクチャの幅が、シグナリングされてもよい。
d. 一例では、サブピクチャの高さが、シグナリングされてもよい。
17. 時間的フィルタに対して、試料の時間的フィルタリングを実行するときに、現在のサンプルが属するのと同じサブピクチャ内のサンプルのみが使用されてもよい。必要なサンプルは、現在のサンプルが属しているものと同じピクチャ、または他のピクチャ内にあってもよい。
18. 一例では、パーティショニング方法(QT、水平BT、垂直BT、水平TT、垂直TT、スプリットなしなど)を適用するかどうか、および/またはどのように適用するかは、現在のブロック(またはパーティション)がサブピクチャの1つ以上の境界を越えるかどうかに依存してもよい。
a. 一例では、VVCにおけるパーティショニングのためのピクチャ境界処理方法は、ピクチャ境界がサブピクチャ境界に置き換えられるときにも適用され得る。
b. 一例では、パーティショニング方法(QT、水平BT、垂直BT、水平TT、垂直TT、スプリットなしなど)を表す構文要素(例えば、フラグ)を解析するかどうかは、現在のブロック(またはパーティション)がサブピクチャの1つ以上の境界を越えるかどうかに依存してもよい。
19. 各サブピクチャの独立したコーディングで1つのピクチャを複数のサブピクチャに分割する代わりに、ピクチャを少なくとも2つのサブ領域のセットに分割することが提案されており、第1のセットは複数のサブピクチャを含み、第2のセットは残りのすべてのサンプルを含む。
a. 一例では、第2のセットにおけるサンプルは、いかなるサブピクチャにもない。
b. 代替的には、さらに、第2のセットは、第1のセットの情報に基づいて符号化/復号されてもよい。
c. 一例では、デフォルト値は、サンプル/MxKサブ領域が第2のセットに属するかどうかをマークするために利用されてもよい。
i. 一例では、デフォルト値は、(max_subpics_minus1+K)に等しくセットされてもよく、ここで、Kは1より大きい整数である。
ii. デフォルト値は、subpic_grid_idx[i][j]に割り当てられ、グリッドが2番目のセットに属することを示す。
20. 構文要素subpic_grid_idx[i][j]をmax_subpics_minus1より大きくすることができないことを提案する。
a. 例えば、適合ビットストリームにおいて、subpic_grid_idx[i][j]をmax_subpics_minus1より大きくすることができないことが制約される。
b. 例えば、subpic_grid_idx[i][j]をコーディングするコードワードをmax_subpics_minus1より大きくすることができない。
21. 0~max_subpics_minus1の任意の整数は、少なくとも1つのsubpic_grid_idx[i][j]に等しくなければならないことを提案する。
22. IBC仮想バッファは、1つのピクチャ内の新しいサブピクチャを復号する前にリセットされてもよい。
a. 一例では、IBC仮想バッファ内の全てのサンプルは、-1にリセットされてもよい。
23. パレットエントリリストは、1つのピクチャ内の新しいサブピクチャを復号する前にリセットされてもよい。
a. 一例では、PredictorPaletteSizeは、1つのピクチャ内の新しいサブピクチャを復号する前に、0に等しくセットされてもよい。
24. スライスの情報(例えば、スライスの数および/またはスライスの範囲)をシグナリングするかどうかは、タイルの数および/またはブリックの数に依存してもよい。
a. 一例では、ピクチャ内のブリックの数が1である場合、num_slices_in_pic_minus1はシグナリングされず、0であると推論される。
b. 一例では、ピクチャ内のブリックの数が1である場合、スライスの情報(例えば、スライスの数および/またはスライスの範囲)は、シグナリングされなくてもよい。
c. 一例では、ピクチャ内のブリックの数が1である場合、スライスの数は1であると推論されてもよい。スライスは、ピクチャ全体をカバーする。一例では、ピクチャ内のブリックの数が1である場合、single_brick_per_slice_flagはシグナリングされず、0であると推論される。
i. 代替的には、ピクチャ内のブリックの数が1である場合、single_brick_per_slice_flagはシグナリングされず、0であると推論される。
d. 例示的な構文設計は、以下の通りである。
Figure 2022552537000172
25. slice_addressをシグナリングするかどうかは、スライスが矩形であるとシグナリングされるかどうか(例えば、rect_slice_flagが0か1か)から切り離されてもよい。
a. 例示的な構文設計は、以下の通りである。
Figure 2022552537000173
26. slice_addressをシグナリングするかどうかは、スライスが矩形であるとシグナリングされるときのスライスの数に依存してもよい。
Figure 2022552537000174
27. num_bricks_in_slice_minus1をシグナリングするかどうかは、slice_addressおよび/またはピクチャ内のブリックの数に依存してもよい。
a. 例示的な構文設計は、以下の通りである。
Figure 2022552537000175
28. loop_filter_across_bricks_enabled_flagをシグナリングするかどうかは、タイルの数および/またはピクチャ内のブリックの数に依存してもよい。
a. 一例では、ブリックの数が2より小さい場合、loop_filter_across_bricks_enabled_flagは、シグナリングされない。
b. 例示的な構文設計は、以下の通りである。
Figure 2022552537000176
29. ビットストリーム適合性の要件は、ピクチャのすべてのスライスがピクチャ全体をカバーしなければならないことである。
a. スライスが矩形であることがシグナリングされるときに(例えば、rect_slice_flagが1に等しいときに)、この要件が満たさなければならない。
30. ビットストリーム適合性の要件は、サブピクチャのすべてのスライスがサブピクチャ全体をカバーしなければならないことである。
a. スライスが矩形であることがシグナリングされるときに(例えば、rect_slice_flagが1に等しいときに)、この要件が満たさなければならない。
31. ビットストリーム適合性の要件は、スライスが複数のサブピクチャとオーバラップできないことである。
32. ビットストリーム適合性の要件は、タイルが複数のサブピクチャとオーバラップできないことである。
33. ビットストリーム適合性の要件は、ブリックが複数のサブピクチャとオーバラップできないことである。
以下の議論では、寸法CW×CHを有する基本ユニットブロック(BUB)は、矩形領域である。例えば、BUBはコーディングツリーブロック(CTB)であってもよい。
34. 一例では、サブピクチャの数(Nとして示される)が、シグナリングされてもよい。
a. 適合ビットストリームについて、サブピクチャが使用される場合(例えば、subpics_present_flagが1に等しい場合)、ピクチャ中に少なくとも2つのサブピクチャがあることが必要であってもよい。
b. 代替的には、Nマイナスd(すなわち、N-d)は、シグナリングされてもよく、ここで、dは、0、1、または2などの整数である。
c. 例えば、N-dは、固定長コーディング、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、N-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。
シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUBの総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(W/CW)×Ceiling(H/CH)として導出されてもよく、ここで、WおよびHは、ピクチャの幅および高さを表し、CWおよびCHは、BUBの幅および高さを表す。
d. 例えば、N-dは、unaryコードまたは切り詰められたunaryコードでコーディングされてもよい。
e. 一例では、N-dの許容最大値は固定数であってもよい。
i. 代替的には、N-dの許容最大値は、ピクチャ中のBUBの総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
35. 一例では、サブピクチャは、その選択された位置(例えば、左上/右上/左下/右下)および/またはその幅および/または高さのうちの1つ以上の表示によってシグナリングされてもよい。
a. 一例では、サブピクチャの左上の位置は、寸法CW×CHを有する基本ユニットブロックの粒度でシグナリングされてもよい。
i. 例えば、サブピクチャの左上のBUBのBUBに関して列インデックス(Colとして示される)が、シグナリングされてもよい。
1) 例えば、Col-dが、シグナリングされてもよく、ここで、dは、0、1、または2などの整数である。
a) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのColに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
b) Col-dの符号がシグナリングされてもよい。
ii. 例えば、サブピクチャの左上のBUBのBUBに関する行インデックス(Rowとして示される)が、シグナリングされてもよい。
1) 例えば、Row-dが、シグナリングされてもよく、ここで、dは、0、1、または2などの整数である。
a) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのRowに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
b) Row-dの符号がシグナリングされてもよい。
iii. 上述の行/列インデックス(Rowとして示される)が、CTB(Codling Tree Block)において表わされてもよく、例えば、ピクチャの左上の位置に対するxまたはy座標は、CTBサイズによって分割され、シグナリングされてもよい。
iv. 一例では、サブピクチャの位置をシグナリングするかどうかは、サブピクチャインデックスに依存してもよい。
1)一例では、ピクチャ内の最初のサブピクチャに対して、左上の位置がシグナリングされなくてもよい。
a) 代替的には、さらに、左上の位置が、例えば、(0,0)であると推論されてもよい。
2) 一例では、ピクチャ内の最後のサブピクチャに対して、左上の位置がシグナリングされなくてもよい。
a) 左上の位置は、以前にシグナリングされたサブピクチャの情報に依存して推論されてもよい。
b. 一例では、サブピクチャの幅/高さ/選択された位置の表示は、切り詰められた一進法/切り詰められた二進法/一進号/固定長/K-th EGコーディング(例えば、K=0,1,2,3)でシグナリングされてもよい。
c. 一例では、サブピクチャの幅は、寸法CW×CHを有するBUBの粒度でシグナリングされてもよい。
i. 例えば、サブピクチャ内のBUBの列の数(Wとして示される)が、シグナリングされてもよい。
ii. 例えば、W-dが、シグナリングされてもよく、ここで、dは、0、1または2などの整数である。
1) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのWに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
2) W-dの符号がシグナリングされてもよい。
d. 一例では、サブピクチャの高さは、寸法CW×CHを有するBUBの粒度でシグナリングされてもよい。
i. 例えば、サブピクチャ内のBUBの行の数(Hとして示される)は、シグナリングされてもよい。
ii. 例えば、H-dが、シグナリングされてもよく、ここで、dは、0、1または2などの整数である。
1) 代替的には、dは、d1によって加算された、以前にコーディングされたサブピクチャのHに等しくてもよく、ここで、d1は、-1、0または1などの整数である。
2) H-dの符号がシグナリングされてもよい。
e. 一例では、Col-dは、固定長コーディング、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、Col-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB列の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(W/CW)として導出されてもよく、ここで、Wは、ピクチャの幅を表し、CWは、BUBの幅を表す。
f. 一例では、Row-dは、固定長コーディング、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、Row-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。
シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB行の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(H/CH)として導出されてもよく、ここで、Hは、ピクチャの高さを表し、CHは、BUBの高さを表す。
g. 一例では、W-dは、固定長コーディング、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 例えば、xまたはx-dxは、W-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB列の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(W/CW)として導出されてもよく、ここで、Wは、ピクチャの幅を表し、CWは、BUBの幅を表す。
h. 一例では、H-dは、固定長コーディング、例えば、u(x)でコーディングされてもよい。
i. 一例では、xは、8などの固定数であってもよい。
ii. 一例では、xまたはx-dxは、H-dがシグナリングされる前にシグナリングされてもよく、ここで、dxは、0、1または2などの整数である。
シグナリングされたxは、適合ビットストリームの最大値より大きくなくてもよい。
iii. 一例では、xはオンザフライで導出されてもよい。
1) 例えば、xは、ピクチャ内のBUB行の総数(Mとして示される)の関数として導出されてもよい。例えば、x=Ceil(log2(M+d0))+d1であり、ここで、d0およびd1は、-2、-1、0、1、2などの2つの整数である。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
2) Mは、M=Ceiling(H/CH)として導出されてもよく、ここで、Hは、ピクチャの高さを表し、CHは、BUBの高さを表す。
i. Col-dおよび/またはRow-dは、全てのサブピクチャに対してシグナリングされてもよい。
i. 代替的には、Col-dおよび/またはRow-dは、全てのサブピクチャに対してシグナリングされなくてもよい。
1) Col-dおよび/またはRow-dは、サブピクチャの数が2より小さい(1に等しい)場合、シグナリングされなくてもよい。
2) 例えば、Col-dおよび/またはRow-dは、最初のサブピクチャ(例えば、サブピクチャインデックス(またはサブピクチャID)が0に等しい)に対してシグナリングされなくてもよい。
a) シグナリングされないときに、それらは、0であると推論されてもよい。
3) 例えば、Col-dおよび/またはRow-dは、最後のサブピクチャ(例えば、サブピクチャインデックス(またはサブピクチャID)がNumSubPics-1に等しい)に対してシグナリングされてなくてもよい。
a) シグナリングされないときに、それらは、すでにシグナリングされているサブピクチャの位置や寸法に依存して推論されてもよい。
j. W-dおよび/またはH-dは、全てのサブピクチャに対してシグナリングされてもよい。
i. 代替的には、W-dおよび/またはH-dは、全てのサブピクチャに対してシグナリングされなくてもよい。
1) W-dおよび/またはH-dは、サブピクチャの数が2より小さい(1に等しい)場合、シグナリングされなくてもよい。
2) 例えば、Wl-dおよび/またはH-dは、最後のサブピクチャ(例えば、サブピクチャインデックス(またはサブピクチャID)がNumSubPics-1に等しい)に対してシグナリングされてなくてもよい。
a) シグナリングされないときに、それらは、すでにシグナリングされているサブピクチャの位置や寸法に依存して推論されてもよい。
k. 上記の項目において、BUBは、CTB(Coding Tree Block)であってもよい。
36. 一例では、サブピクチャの情報は、CTBサイズの情報(例えば、log2_ctu_size_minus5)が既にシグナリングされた後にシグナリングされるべきである。
37. subpic_treated_as_pic_flag[i]は、各サブピクチャに対してシグナリングされなくてもよい。その代わりに、1つのsubpic_treated_as_pic_flagは、サブピクチャが全てのサブピクチャに対するピクチャとして処理されるかどうかを制御するためにシグナリングされる。
38. loop_filter_across_subpic_enabled_flag[i]は、各サブピクチャに対してシグナリングされなくてもよい。その代わりに、1つのloop_filter_across_subpic_enabled_flagは、ループフィルタが全てのサブピクチャに対してサブピクチャにわたって適用され得るかどうかを制御するためにシグナリングされる。
39. subpic_treated_as_pic_flag[i](subpic_treated_as_pic_flag)および/またはloop_filter_across_subpic_enabled_flag[i](loop_filter_across_subpic_enabled_flag)が、条件付きでシグナリングされてもよい。
a. 一例では、subpic_treated_as_pic_flag[i]および/またはloop_filter_across_subpic_enabled_flag[i]は、サブピクチャの数が2より小さい(1に等しい)場合、シグナリングされなくてもよい。
40. RPRは、サブピクチャが使用されるときに、適用されてもよい。
a. 一例では、RPRにおけるスケーリング比は、{1:1、1:2および/または2:1}または{1:1、1:2および/または2:1、1:4および/または4:1}、{1:1、1:2および/または2:1、1:4および/または4:1、1:8および/または8:1}などのサブピクチャが使用されるときに、限定的にセットされるように制約されてもよい。
b. 一例では、ピクチャAとピクチャBの解像度が異なる場合、ピクチャAのCTBサイズとピクチャBのCTBサイズが異なってもよい。
c. 一例として、寸法SAW×SAHのサブピクチャSAがピクチャA内にあり、寸法SBW×SBHのサブピクチャSBがピクチャB内にあり、SAがSBに対応し、ピクチャAとピクチャBの間のスケーリング比が水平方向と垂直方向に沿ってRwとRhであるとすると、
i. SAW/SBWまたはSBW/SAWは、Rwに等しくなければならない。
ii. SAH/SBHまたはSBH/SAHは、Rhに等しくなければならない。
41. サブピクチャが使用されるときに例えば、sub_picts_present_flagが真であるときに)、サブピクチャインデックス(またはサブピクチャID)は、スライスヘッダにおいてシグナリングされてもよく、スライスアドレスは、ピクチャ全体ではなく、サブピクチャにおけるアドレスとして中断される。
42. 第1のサブピクチャと第2のサブピクチャが同じサブピクチャでない場合、第1のサブピクチャのサブピクチャIDは、第2のサブピクチャのサブピクチャIDとは異なっていなくてはならないことが必要とされる。
a. 一例では、iがjに等しくない場合、sps_subpic_id[i]がsps_subpic_id[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
b. 一例では、iがjに等しくない場合、pps_subpic_id[i]がpps_subpic_id[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
c. 一例では、iがjに等しくない場合、ph_subpic_id[i]がph_subpic_id[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
d. 一例では、iがjに等しくない場合、SubpicIdList[i]がSubpicIdList[j]と異なっていなくてはならないことが、適合ビットストリームの要件である。
e. 一例では、X_subpic_id[i]X_subpic_id[ i -P]に等しいD[i]として示される差分が、シグナリングされてもよい。
i. 例えば、Xはsps、ppsまたはphであってもよい。
ii. 例えば、Pが1に等しい。
iii. 例えば、i>Pである。
iv. 例えば、D[i]は0より大きくなければならない。
v. 例えば、D[i]-1は、シグナリングされてもよい。
43. Ceil(Log2(SS))ビットであるように、左上のCTUの水平位置または垂直位置(例えば、subpic_ctu_top_left_x または subpic_ctu_top_left_y)を指定する構文要素の長さが導出され得ることが提案され、SSは0より大きくなければならない。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
a. 一例では、構文要素が左上のCTUの水平位置(例えば、subpic_ctu_top_left_x)を指定するときに、SS=(pic_width_max_in_luma_samples+RR)/CtbSizeYである。
b. 一例では、構文要素が左上のCTUの垂直位置(例えば、subpic_ctu_top_left_y)を指定するときに、SS=(pic_height_max_in_luma_samples+RR)/CtbSizeYである。
c. 一例では、RRは、CtbSizeY-1などの非ゼロの整数である。
44. Ceil(Log2(SS))ビットであるように、サブピクチャの左上のCTUの水平位置または垂直位置(例えば、subpic_ctu_top_left_x または subpic_ctu_top_left_y)を指定する構文要素の長さが導出され得ることが提案され、SSは0より大きくなければならない。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
a. 一例では、構文要素がサブピクチャの左上のCTUの水平位置(例えば、subpic_ctu_top_left_x)を指定するときに、SS=(pic_width_max_in_luma_samples+RR)/CtbSizeYである。
b. 一例では、構文要素がサブピクチャの左上のCTUの垂直位置(例えば、subpic_ctu_top_left_y)を指定するときに、SS=(pic_height_max_in_luma_samples+RR)/CtbSizeYである。
c. 一例では、RRは、CtbSizeY-1などの非ゼロの整数である。
45. Ceil(Log2(SS))-Pであるように、サブピクチャの幅または高さ(例えば、subpic_width_minus1またはsubpic_height_minus1)を指定する構文要素の長さのデフォルト値(1などのオフセットPを加えてもよい)が導出され得ることが提案され、SSは0より大きくなければならない。ここで、Ceil()関数は、入力値以上の最小整数値を返す。
a. 一例では、構文要素がサブピクチャのデフォルト幅(例えば、subpic_width_minus1)(オフセットPを加えてもよい)を指定するときに、SS=(pic_width_max_in_luma_samples+RR)/CtbSizeYである。
b. 一例では、構文要素がサブピクチャのデフォルト高さ(例えば、subpic_height_minus1)(オフセットPを加えてもよい)を指定するときに、SS=(pic_height_max_in_luma_samples+RR)/CtbSizeYである。
c. 一例では、RRは、CtbSizeY-1などの非ゼロの整数である。
46. サブピクチャのIDの情報は、その情報がシグナリングされるべきであると決定されたときに、少なくともSPS、PPS、およびピクチャヘッダのいずれかでシグナリングされるべきであることが提案されている。
a. 一例では、sps_subpic_id_present_flagが1に等しい場合、sps_subpic_id_signalling_present_flag、pps_subpic_id_signalling_present_flag、およびph_subpic_id_signalling_present_flagのうちの少なくとも1つが、1に等しくあるべきことが、適合ビットストリームの要件である。
47. サブピクチャのIDの情報が、SPS、PPS、およびピクチャヘッダのいずれでもシグナリングされない場合、その情報がシグナリングされるべきであると決定されることが提案されている。デフォルトIDが割り当てられるべきである。
a. 一例では、sps_subpic_id_signalling_present_flag、pps_subpic_id_signalling_present_flag、ph_subpic_id_signalling_present_flagがすべて0であり、sps_subpic_id_present_flagが1に等しい場合、SubpicIdList[i]はi+Pに等しくセットされるべきであり、Pは0などのオフセットである。例示的な説明は:以下の通りである。
Figure 2022552537000177
48. サブピクチャIDの情報は、対応するPPSでシグナリングされる場合、ピクチャヘッダでシグナリングされないことを提案する。
a. 例示的な構文設計は、以下の通りである。
Figure 2022552537000178
b. 一例では、サブピクチャIDは、SPSにおいてシグナリングされる場合、SPSにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、PPSにおいてシグナリングされる場合、PPSにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、ピクチャヘッダにおいてシグナリングされる場合、ピクチャヘッダにおいてシグナリングされるサブピクチャIDの情報に従ってセットされる。例示的な説明は、以下の通りである。
Figure 2022552537000179
c. 一例では、サブピクチャIDは、ピクチャヘッダにおいてシグナリングされる場合、ピクチャヘッダにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、PPSにおいてシグナリングされる場合、PPSにおいてシグナリングされるサブピクチャIDの情報に従ってセットされ、それ以外の場合、サブピクチャIDは、SPSにおいてシグナリングされる場合、SPSダにおいてシグナリングされるサブピクチャIDの情報に従ってセットされる。例示的な説明は、以下の通りである。
Figure 2022552537000180
49. エッジE上のデブロッキング処理は、エッジの両側(P側とQ側で示される)のサブピクチャ境界を超えてループフィルタリングが許可されているかどうかの決定(例えば、loop_filter_across_subpic_enabled_flagによって決定される)に依存すべきであることを提案する。P側は、現在のブロックの側を表し、Q側は、隣接するブロックの側を表し、これは、異なるサブピクチャに属してもよい。以下の議論では、P側とQ側が2つの異なるサブピクチャに属すると想定する。loop_filter_across_subpic_enabled_flag[P]=0/1は、P側を含むサブピクチャのサブピクチャ境界を超えてループフィルタリングが許可されていない/許可されていることを意味する。loop_filter_across_subpic_enabled_flag[Q]=0/1は、Q側を含むサブピクチャのサブピクチャ境界を超えてループフィルタリングが許可されていない/許可されていることを意味する。
a. 一例では、loop_filter_across_subpic_enabled_flag[P]が0に等しいか、またはloop_filter_across_subpic_enabled_flag[Q]が0に等しい場合、Eはフィルタリングされない。
b. 一例では、loop_filter_across_subpic_enabled_flag[P]が0に等しく、loop_filter_across_subpic_enabled_flag[Q]が0に等しい場合、Eはフィルタリングされない。
c. 一例では、Eの両側をフィルタリングするかどうかは、別々に制御される。
i. 例えば、EのP側は、loop_filter_across_subpic_enabled_flag[P]が1に等しい場合にのみフィルタリングされる。
ii. 例えば、EのQ側は、loop_filter_across_subpic_enabled_flag[Q]が1に等しい場合にのみフィルタリングされる。
50. トランスフォームスキップに使用される最大ブロックサイズ(log2_transform_skip_max_size_minus2など)を指定するPPSにおける構文要素SEのシグナリング/解析は、SPSにおいて任意の構文要素(sps_transform_skip_enabled_flagなど)から切り離すべきであることを提案する。
a. 例示的な構文変更は、以下の通りである。
Figure 2022552537000181
b. 代替的には、SEは、SPSにおいてシグナリングされてもよく、例えば、以下の通りである。
Figure 2022552537000182
c. 代替的には、SEは、ピクチャヘッダにおいてシグナリングされてもよく、例えば、以下の通りである。
Figure 2022552537000183
51. 最初のブロックを復号した後にHMVPテーブル(またはリスト/ストレージ/マップなどと名付けられる)を更新するかどうか、および/またはどのように更新するかは、最初のブロックがGEOでコーディングされているかどうかに依存してもよい。
a. 一例では、最初のブロックがGEOでコーディングされている場合、最初のブロックを復号した後でHMVPテーブルが更新されなくてもよい。
b. 一例では、HMVPテーブルは、最初のブロックがGEOでコーディングされている場合、最初のブロックを復号した後に更新されてもよい。
i. 一例では、HMVPテーブルは、GEOによって分割された1つのパーティションの動き情報で更新されてもよい。
ii. 一例では、HMVPテーブルは、GEOによって分割された複数のパーティションの動き情報で更新されてもよい
52. CC-ALFでは、現在の処理ユニット(例えば、2つのALF仮想境界によって区切られたALF処理ユニット)から外れた輝度サンプルは、対応する処理ユニットの色差サンプルのフィルタリングから除外される。
a. 現在の処理ユニットから外れたパディングされた輝度サンプルを使用して、対応する処理ユニットの色差サンプルをフィルタリングしてもよい。
i. 本文書に開示されている任意のパディング方法は、輝度サンプルをパディングするために使用されてもよい。
b. 代替的には、現在の処理ユニットから外れた輝度サンプルを使用して、対応する処理ユニットの色差サンプルをフィルタリングしてもよい。
5.1 実施形態1:アフィン構成されたマージ候補についてのサブピクチャ制約
8.5.5.6 構成されたアフィン制御点動きベクトルマージ候補に対する導出処理
この処理への入力は、以下のようである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度コーディングブロックの左上のサンプルを指定する輝度位置(xCb,yCb)
- 現在の輝度コーディングブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
- 可用性フラグavailableA、availableA、availableA、availableB、availableB、availableB、availableB
- サンプル位置(xNbA,yNbA)、(xNbA,yNbA)、(xNbA,yNbA)、(xNbB,yNbB)、(xNbB,yNbB)、(xNbB,yNbB)、および(xNbB,yNbB
この処理の出力は、以下のようである。
- 構成されたアフィン制御点動きベクトルマージ候補の可用性フラグavailableFlagConstK(K=1..6)
- 参照インデックスrefIdxLXConstK(K=1..6、Xは、0または1)
- 予測リスト利用フラグpredFlagLXConstK(K=1..6、Xは、0または1)、
- アフィン動きモデルインデックスModelIdcConstK(K=1..6)
- 双方向予測重みインデックスbcwIdxConstK(K=1..6)
- 構成されたアフィン制御点動きベクトルcpMvLXConstK[cpIdx](cpIdx=0..2、K=1..6、Xは0または1)
...
4番目の(並置された右下の)制御点動きベクトルcpMvLXCorner[3]、参照インデックスrefIdxLXCorner[3]、予測リスト利用フラグpredFlagLXCorner[3]、および可用性フラグavalableFlagCorner[3](Xは0および1)は、以下のように導出される。
- 時間的マージ候補のための参照インデックスrefIdxLXCorner[3](Xは、0または1)、0に等しくセットされる。
- 変数mvLXColおよびavailableFlagLXCol(Xは、0または1)は、以下のように導出される。
- slice_temporal_mvp_enabled_flagが0に等しい場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
- それ以外の場合(rect_slice_flagが1に等しい場合)、以下が適用される。
Figure 2022552537000184
- yCb>>CtbLog2SizeYが、yColBr>>CtbLog2SizeYに等しく、
[外8]
Figure 2022552537000185
- 変数colCbは、ColPicによって指定される並置されたピクチャ内の((xColBr>>3)<<3,(yColBr>>3)<<3)で与えられる修正された位置をカバーする輝度コーディングブロックを指定する。
- 輝度位置(xColCb,yColCb)は、ColPicによって指定された並置されたピクチャの左上の輝度サンプルに対する、colCbによって指定された並置された輝度コーディングブロックの左上のサンプルに等しくセットされる。
- 8.5.2.12項において指定されている並置された動きベクトルに対する導出処理は、currCb、colCb、(xColCb,yColCb)、refIdxLXCorner[3]、0に等しくセットされたsbFlagを入力として呼び出され、出力は、mvLXColおよびavailableFlagLXColに割り当てられる。
- それ以外の場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
...
5.2 実施形態2:アフィン構成されたマージ候補についてのサブピクチャ制約
8.5.5.6 構成されたアフィン制御点動きベクトルマージ候補に対する導出処理
この処理への入力は、以下のようである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度コーディングブロックの左上のサンプルを指定する輝度位置(xCb,yCb)
- 現在の輝度コーディングブロックの幅および高さを指定する2つの変数cbWidthおよびcbHeight
- 可用性フラグavailableA、availableA、availableA、availableB、availableB、availableB、availableB
- サンプル位置(xNbA,yNbA)、(xNbA,yNbA)、(xNbA,yNbA)、(xNbB,yNbB)、(xNbB,yNbB)、(xNbB,yNbB)、および(xNbB,yNbB
この処理の出力は、以下のようである。
- 構成されたアフィン制御点動きベクトルマージ候補の可用性フラグavailableFlagConstK(K=1..6)
- 参照インデックスrefIdxLXConstK(K=1..6、Xは、0または1)
- 予測リスト利用フラグpredFlagLXConstK(K=1..6、Xは0または1)、
- アフィン動きモデルインデックスModelIdcConstK(K=1..6)
- 双方向予測重みインデックスbcwIdxConstK(K=1..6)
- 構成されたアフィン制御点動きベクトルcpMvLXConstK[cpIdx](cpIdx=0..2、K=1..6、Xは0または1)
...
4番目の(並置された右下の)制御点動きベクトルcpMvLXCorner[3]、参照インデックスrefIdxLXCorner[3]、予測リスト利用フラグpredFlagLXCorner[3]、および可用性フラグavalableFlagCorner[3](Xは0および1)は、以下のように導出される。
- 時間的マージ候補のための参照インデックスrefIdxLXCorner[3](Xは、0または1)、0に等しくセットされる。
- 変数mvLXColおよびavailableFlagLXCol(Xは、0または1)は、以下のように導出される。
- slice_temporal_mvp_enabled_flagが0に等しい場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
- それ以外の場合(rect_slice_flagが1に等しい場合)、以下が適用される。
Figure 2022552537000186
yCb>>CtbLog2SizeYがyColBr>>>CtbLog2SizeYに等しい場合、[[yColBrがpic_height_in_luma_samplesより小さく、xColBrがpic_width_in_luma_samplesより小さい場合、以下が適用される]]、
- 変数colCbは、ColPicによって指定される並置されたピクチャ内の((xColBr>>3)<<3,(yColBr>>3)<<3)で与えられる修正された位置をカバーする輝度コーディングブロックを指定する。
- 輝度位置(xColCb,yColCb)は、ColPicによって指定された並置されたピクチャの左上の輝度サンプルに対する、colCbによって指定された並置された輝度コーディングブロックの左上のサンプルに等しくセットされる。
- 8.5.2.12項において指定されている並置された動きベクトルに対する導出処理は、currCb、colCb、(xColCb,yColCb)、refIdxLXCorner[3]、0に等しくセットされたsbFlagを入力として呼び出され、出力は、mvLXColおよびavailableFlagLXColに割り当てられる。
- それ以外の場合、mvLXColの両方のコンポーネントとも、0に等しくセットされ、availableFlagLXColは、0に等しくセットされる。
...
5.6 実施形態6:ピクチャ幅およびピクチャ高さを8以上に制限する。
7.4.3.3 シーケンスパラメータセットRBSP意味
pic_width_max_in_luma_samplesは、SPSを参照する復号された各ピクチャの最大幅を輝度サンプルの単位で指定する。pic_width_max_in_luma_samplesは、0に等しくなく、[[MinCbSizeY]]
[外13]
Figure 2022552537000187
の整数倍数とする。
pic_height_max_in_luma_samplesは、SPSを参照する復号された各ピクチャの最大高さを輝度サンプルの単位で指定する。pic_height_max_in_luma_samplesは、0に等しくなく、[[MinCbSizeY]]
[外14]
Figure 2022552537000188
の整数倍数とする。
5.11 実施形態11:サブピクチャの定義例
Figure 2022552537000189
5.12 実施形態:サブピクチャを考慮したデブロッキング
デブロッキングフィルタ処理
一般
この処理への入力は、デブロッキングの前に再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
この処理の出力は、デブロッキングの後に修正され再構成されたピクチャ、すなわち、アレイrecPictureであり、ChromaArrayTypeが0に等しくないときは、アレイrecPictureCbおよびrecPictureCrである。
ピクチャの垂直エッジが、最初にフィルタリングされる。次いで、ピクチャの水平エッジが、垂直エッジフィルタリング処理によって修正されたサンプルを入力としてフィルタリングされる。各CTUのCTBの垂直エッジと水平エッジは、コーディングユニットベースで別々に処理される。コーディングユニット内のコーディングブロックの垂直エッジは、コーディングブロックの左側のエッジから開始して、幾何学的順序でコーディングブロックの右側に向かってエッジを通して進むように、フィルタリングされる。コーディングユニット内のコーディングブロックの水平エッジは、コーディングブロックの上側のエッジから開始して、幾何学的順序でコーディングブロックの下側に向かってエッジを通して進むように、フィルタリングされる。
注 - フィルタリング処理は、本明細書ではピクチャベースで指定されているが、同じ出力値を生成するように復号器が処理依存性の順序を適切に説明するのであれば、フィルタリング処理は、同等の結果を持つコーディングユニットベースで実装され得る。
デブロッキングフィルタ処理は、以下のタイプのエッジを除き、ピクチャのすべてのコーディングサブブロックエッジおよびトランスフォームブロックエッジに適用される。
- ピクチャの境界でのエッジ
- [[loop_filter_across_subpic_enabled_flag[SubPicIdx]が0に等しいサブピクチャの境界と一致するエッジ]]
- pps_loop_filter_across_virtual_boundaries_disabled_flagが1に等しいときに、ピクチャの仮想境界と一致するエッジ
- loop_filter_across_tiles_enabled_flag が0に等しいときに、タイル境界と一致するエッジ
- loop_filter_across_slices_enabled_flagが0に等しいときに、スライス境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライスの上側または左側の境界と一致するエッジ
- slice_deblocking_filter_disabled_flagが1に等しいスライス内のエッジ
- 輝度コンポーネントの4×4のサンプルグリッド境界に対応しないエッジ
- 色差コンポーネントの8×8のサンプルグリッド境界に対応しないエッジ
- エッジの両側が1に等しいintra_bdpcm_luma_flagを有する輝度コンポーネント内のエッジ
- エッジの両側が1に等しいintra_bdpcm_chroma_flagを有する色差コンポーネント内のエッジ
- 関連するトランスフォームユニットのエッジでない色差サブブロックのエッジ
...
一方向のためのデブロッキングフィルタ処理
この処理への入力は、以下のようである。
- 輝度(DUAL_TREE_LUMA)または色差コンポーネント(DUAL_TREE_CHROMA)が現在処理されているかどうかを指定する変数treeType
- treeTypeがDUAL_TREE_LUMAに等しいときは、デブロッキング前の再されたピクチャ、すなわちrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
- 垂直(EDGE_VER)をフィルタリングするか、水平(EDGE_HOR)をフィルタリングするかを指定する変数edgeType
この処理の出力は、デブロッキング後に修正され再構成されたピクチャ、すなわち、
- treeTypeがDUAL_TREE_LUMAに等しいときに、アレイrecPicture
- ChromaArrayTypeが0に等しくなく、treeTypeがDUAL_TREE_CHROMAに等しいときは、アレイrecPictureCbおよびrecPictureCr
変数firstCompIdxおよびlastCompIdxは、以下のように導出される。
Figure 2022552537000190
コーディングブロック幅nCbW、コーディングブロック高さnCbHおよびコーディングブロックの左上のサンプルの位置(xCb,yCb)を有する、firstCompIdx~lastCompIdxの範囲(両端を含む)の色コンポーネントインデックスcIdxによって示されるコーディングユニットの色コンポーネントごとの各コーディングユニットおよび各コーディングブロックに対して、cIdxが0に等しいとき、cIdxが0に等しくなく、edgeTypeがEDGE_VERに等しく、xCb%8が0に等しいとき、またはcIdxが0に等しくなく、edgeTypeがEDGE_HORに等しく、yCb%8が0に等しいときに、エッジは以下の順序付けされたステップによってフィルタリングされる。
2. 変数filterEdgeFlagは、以下のように導出される。
- edgeTypeがEDGE_VERに等しく、以下の条件のうちの1つ以上が真である場合、filterEdgeFlagは、0に等しくセットされる。
- 現在のコーディングブロックの左境界は、ピクチャの左境界である。
- [[現在のコーディングブロックの左境界は、サブピクチャの左または右境界であり、loop_filter_across_subpic_enabled_flag[SubPicIdx]は0に等しい。]]
- 現在のコーディングブロックの左境界は、タイルの左境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、スライスの左境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの左境界は、ピクチャの垂直仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、edgeTypeがEDGE_HORに等しく、以下の条件のうちの1つ以上が真である場合、変数filterEdgeFlagは、0に等しくセットされる。
- 現在の輝度コーディングブロックの上境界は、ピクチャの上境界である。
- [[現在のコーディングブロックの上境界は、サブピクチャの上または下境界であり、loop_filter_across_subpic_enabled_flag[SubPicIdx]は0に等しい。]]
- 現在のコーディングブロックの上境界は、タイルの上境界であり、loop_filter_across_tiles_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、スライスの上境界であり、loop_filter_across_slices_enabled_flagは0に等しい。
- 現在のコーディングブロックの上境界は、ピクチャの水平仮想境界の1つであり、VirtualBoundariesDisabledFlagは1に等しい。
- それ以外の場合、filterEdgeFlagは、1に等しくセットされる。
...
ショートフィルタを使用した輝度サンプルに対するフィルタ処理
この処理への入力は、以下のようである。
- サンプル値pおよびq(i=0..3)
- pおよびqの位置(xP,yP)および(xQ,yQ)(i=0..2)
- 変数dE
- それぞれサンプルp1およびq1をフィルタリングする判定を含む変数dEpおよびdEq
- 変数tC
この処理の出力は、以下のようである。
- フィルタリングされたサンプルの数nDpおよびnDq
- フィルタリングされたサンプル値p’およびq’(i=0..nDp-1、j=0..nDq-1)
dEの値に依存して、以下が適用される。
- 変数dEが2に等しい場合、nDpとnDqは両方とも3に等しくセットされ、以下の強いフィルタリングが適用される。
Figure 2022552537000191
- それ以外の場合、nDpおよびnDqは両方とも0にセットされ、次の弱いフィルタリングが適用される。
- 以下が適用される。
Figure 2022552537000192
- Abs(ΔΔ)がtC*10より小さいときに、以下の順序付けられたステップが適用される。
- フィルタリングされたサンプル値p0’およびq0’が、以下のように指定される。
Figure 2022552537000193
- dEpが1に等しいときに、フィルタリングされたサンプル値p1’は以下のように指定される。
Figure 2022552537000194
- dEqが1に等しいときに、フィルタリングされたサンプル値q1’は以下のように指定される。
Figure 2022552537000195
- nDpはdEp+1に等しくセットされ、nDqはdEq+1に等しくセットされる。
nDpが0より大きく、サンプルp0を含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、nDpは0に等しくセットされる。
nDqが0より大きく、サンプルq0を含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、nDqは0に等しくセットされる。
[外24]
Figure 2022552537000196
長いフィルタを使用した輝度サンプルに対するフィルタリング処理
この処理への入力は、以下のようである。
- 変数maxFilterLengthPおよびmaxFilterLengthQ
- サンプル値pおよびq(i=0..maxFilterLengthPおよびj=0..maxFilterLengthQ)
- pおよびqの位置(xP,yP)および(xQ,yQ)(i=0..maxFilterLengthP-1およびj=0..maxFilterLengthQ-1)
- 変数tC
この処理の出力は、以下のようである。
- フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthP-1、j=0..maxFilterLenghtQ-1)
変数refMiddleは、以下のように導出される。
- maxFilterLengthPがmaxFilterLengthQに等しく、maxFilterLengthPが5に等しい場合、以下が適用される。
Figure 2022552537000197
- それ以外の場合、maxFilterLengthPがmaxFilterLengthQに等しく、maxFilterLengthPが5に等しくない場合、以下が適用される。
Figure 2022552537000198
- それ以外の場合、以下の条件のうちの1つが真である場合、
- maxFilterLengthQは7に等しく、maxFilterLengthPは5に等しい。
- maxFilterLengthQは5に等しく、maxFilterLengthPは7に等しい。
以下が適用される。
Figure 2022552537000199
- それ以外の場合、以下の条件のうちの1つが真である場合、
- maxFilterLengthQは5に等しく、maxFilterLengthPは3に等しい。
- maxFilterLengthQは3に等しく、maxFilterLengthPは5に等しい。
以下が適用される。
Figure 2022552537000200
- それ以外の場合、maxFilterLengthQが7に等しく、maxFilterLengthPが3に等しい場合、以下が適用される。
Figure 2022552537000201
- それ以外の場合、以下が適用される。
Figure 2022552537000202
変数refPおよびrefQは、以下のように導出される。
Figure 2022552537000203
変数fiおよびtC PDiは、以下のように導出される。
- maxFilterLengthPが7に等しい場合、以下が適用される。
Figure 2022552537000204
- それ以外の場合、maxFilterLengthPが5に等しい場合、以下が適用される。
Figure 2022552537000205
- それ以外の場合は、以下が適用される。
Figure 2022552537000206
変数gjおよびtC QDjは、以下のように定義される。
- maxFilterLengthQが7に等しい場合、以下が適用される。
Figure 2022552537000207
- それ以外の場合、maxFilterLengthQが5に等しい場合、以下が適用される。
Figure 2022552537000208
- それ以外の場合は、以下が適用される。
Figure 2022552537000209
フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthP-1およびj=0..maxFilterLengthQ-1)は、以下のように導出される。
Figure 2022552537000210
サンプルpを含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値p’は、対応する入力サンプル値p(i=0..maxFilterLengthP-1)によって置き換えられる。
サンプルqを含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値q’は、対応する入力サンプル値q(j=0..maxFilterLengthQ-1)によって置き換えられる。
[外25]
Figure 2022552537000211
色差サンプルに対するフィルタリング処理
この処理は、ChromaArrayTypeが0に等しくないときにのみ呼び出される。
この処理への入力は、以下のようである。
- 変数maxFilterLength
- 色差サンプル値pおよびq(i=0..maxFilterLengthCbCr)
- pおよびqの色差位置(xP,yP)および(xQ,yQ)(i=0..maxFilterLengthCbCr-1)
- 変数t
この処理の出力は、フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthCbCr-1)である。
フィルタリングされたサンプル値p’およびq’(i=0..maxFilterLengthCbCr-1)は、以下のように導出される。
- maxFilterLengthQが3に等しい場合、以下の強いフィルタリングが適用される。
Figure 2022552537000212
- それ以外の場合、以下の弱いフィルタリングが適用される。
Figure 2022552537000213
サンプルpを含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値p’は、対応する入力サンプル値p(i=0..maxFilterLengthCbCr-1)によって置き換えられる。
サンプルqを含むコーディングブロックを含むコーディングユニットのpred_mode_plt_flagが1に等しいときに、フィルタリングされたサンプル値q’は、対応する入力サンプル値q(i=0..maxFilterLengthCbCr-1)によって置き換えられる。
[外26]
Figure 2022552537000214
図11は、図9に示すシステム100内のビデオ復号器14であってもよいビデオ復号器300の一例を示すブロック図である。

Claims (24)

  1. ビデオ処理の方法であって、
    ビデオのピクチャと前記ビデオのビットストリーム表現との間の変換を実行することであって、前記ピクチャが1つ以上のサブピクチャを含み、
    前記ビットストリーム表現が、フォーマット規則に適合し、
    前記フォーマット規則は、構文要素の長さがCeil(Log2(SS))ビットに等しいことを指定し、SSが0より大きく、前記構文要素が前記ピクチャのサブピクチャのコーディングツリーユニットの左上コーナーの水平位置または垂直位置を示す、方法。
  2. 前記フォーマット規則は、第2の構文要素の長さのデフォルト値がCeil(Log2(SS))-Pに等しいことを指定し、SSが0より大きく、前記第2の構文要素が、前記ピクチャのサブピクチャのデフォルト幅またはデフォルト高さを示す、請求項1に記載の方法。
  3. 輝度サンプルの最大ピクチャ幅がpic_width_max_in_luma_samplesとして表され、コーディングツリーブロックの寸法がCtbSizeYとして表され、SSは、前記構文要素が前記コーディングツリーユニットの左上コーナーの前記水平位置または前記サブピクチャのデフォルト幅を指定する場合に、(pic_width_max_in_luma_samples+RR)/CtbSizeYに等しく、RRが非ゼロの整数である、請求項1または2に記載の方法。
  4. 輝度サンプルの最大ピクチャ高さがpic_height_max_in_luma_samplesとして表され、コーディングツリーブロックの寸法がCtbSizeYとして表され、SSは、前記構文要素が前記コーディングツリーユニットの左上コーナーの前記垂直位置または前記サブピクチャのデフォルト高さを指定する場合に、(pic_height_max_in_luma_samples+RR)/CtbSizeYに等しく、RRが非ゼロの整数である、請求項1または2に記載の方法。
  5. RR=CtbSizeY-1である、請求項3または4に記載の方法。
  6. ビデオ処理の方法であって、
    ビデオのピクチャと前記ビデオのビットストリーム表現との間の変換を実行することであって、前記ピクチャが1つ以上のサブピクチャを含み、
    前記ビットストリーム表現が、フォーマット規則に適合し、
    前記フォーマット規則は、異なるサブピクチャが異なる識別子を有することを指定する、方法。
  7. 前記フォーマット規則は、1つ以上のサブピクチャの識別子がビデオユニットレベルで含まれることを指定し、前記ビデオユニットは、シーケンスパラメータセット、ピクチャパラメータセット、またはピクチャヘッダを含む、請求項6に記載の方法。
  8. 前記シーケンスパラメータセットでの第1の構文フラグは、前記シーケンスパラメータセットレベルで前記1つ以上のサブピクチャの前記識別子のシグナリングが存在するかどうかを示し、前記ピクチャパラメータセットでの第2の構文フラグは、前記ピクチャパラメータセットレベルで前記1つ以上のサブピクチャの前記識別子のシグナリングが存在するかどうかを示し、前記ピクチャヘッダでの第3の構文フラグは、前記ピクチャヘッダレベルで前記1つ以上のサブピクチャの前記識別子のシグナリングが存在するかどうかを示し、前記第1の構文フラグ、前記第2の構文フラグ、または前記第3の構文フラグのうちの少なくとも1つは1に等しい、請求項7に記載の方法。
  9. 前記第1の構文フラグが、前記シーケンスパラメータセットレベルで前記1つ以上のサブピクチャの前記識別子のシグナリングが存在することを示す場合に、前記1つ以上のサブピクチャの前記識別子のシグナリングが前記ピクチャヘッダレベルで省略される、請求項8に記載の方法。
  10. 前記フォーマット規則は、1つ以上のサブピクチャの識別子がサブピクチャ識別子のリストに含まれることを指定する、請求項6~9のいずれか一項に記載の方法。
  11. 前記リストにおける第1のサブピクチャの前記識別子がSubpicIdList[i]として示され、第2のサブピクチャの前記識別子がSubpicIdList[j]として示され、j=i-Pであり、前記フォーマット規則は、SubpicIdList[i]とSubpicIdList[j]との間の差分D[i]が前記ビットストリーム表現において示されることを指定する、請求項10に記載の方法。
  12. Pが1に等しい、請求項11に記載の方法。
  13. i>Pである、請求項11に記載の方法。
  14. D[i]が0より大きい、請求項11に記載の方法。
  15. D[i]-1がビットストリーム表現に含まれる、請求項11に記載の方法。
  16. 前記サブピクチャ識別子のリストは、前記シーケンスパラメータセットが最初に考慮され、前記ピクチャパラメータセットが次に考慮され、前記ピクチャヘッダが最後に考慮される順序に基づいて決定される、請求項10~15のいずれか一項に記載の方法。
  17. 前記サブピクチャ識別子のリストは、前記ピクチャヘッダが最初に考慮され、前記ピクチャパラメータセットが次に考慮され、前記シーケンスパラメータセットが最後に考慮される順序に基づいて決定される、請求項10~15のいずれか一項に記載の方法。
  18. 前記フォーマット規則は、1つ以上のサブピクチャの識別子が1つ以上のビデオユニットレベルで省略される場合に、デフォルト値が前記サブピクチャ識別子のリストにおいて前記識別子に割り当てられることを指定し、前記1つ以上のビデオユニットが、少なくともシーケンスパラメータセット、ピクチャパラメータセット、またはピクチャヘッダを含む、請求項6に記載の方法。
  19. 前記リストにおけるサブピクチャの識別子がSubpicIdList[i]として示され、SubpicIdList[i]のデフォルト値がi+Pであり、Pがオフセット値である、請求項18に記載の方法。
  20. 前記変換が、前記ビットストリーム表現から前記ビデオを生成する、請求項1~19のいずれか一項に記載の方法。
  21. 前記変換が、前記ビデオから前記ビットストリーム表現を生成する、請求項1~19のいずれか一項に記載の方法。
  22. 請求項1~21のうちの1つ以上に規定された方法を実装するように構成されているプロセッサを含む、ビデオ処理装置。
  23. コードが記憶されたコンピュータ可読媒体であって、前記コードは、実行されたとき、プロセッサに請求項1~21のいずれか1つ以上に規定の方法を実装させる、コンピュータ可読媒体。
  24. 請求項1~21のいずれか一項により生成されたコーディングされた表現を記憶するコンピュータ可読媒体。
JP2022522764A 2019-10-18 2020-10-19 サブピクチャのパラメータセットシグナリングにおける構文制約 Pending JP2022552537A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023189118A JP2024009018A (ja) 2019-10-18 2023-11-06 サブピクチャのパラメータセットシグナリングにおける構文制約

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2019/111807 2019-10-18
CN2019111807 2019-10-18
PCT/CN2020/121767 WO2021073630A1 (en) 2019-10-18 2020-10-19 Syntax constraints in parameter set signaling of subpictures

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023189118A Division JP2024009018A (ja) 2019-10-18 2023-11-06 サブピクチャのパラメータセットシグナリングにおける構文制約

Publications (1)

Publication Number Publication Date
JP2022552537A true JP2022552537A (ja) 2022-12-16

Family

ID=75537710

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022522764A Pending JP2022552537A (ja) 2019-10-18 2020-10-19 サブピクチャのパラメータセットシグナリングにおける構文制約
JP2023189118A Pending JP2024009018A (ja) 2019-10-18 2023-11-06 サブピクチャのパラメータセットシグナリングにおける構文制約

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023189118A Pending JP2024009018A (ja) 2019-10-18 2023-11-06 サブピクチャのパラメータセットシグナリングにおける構文制約

Country Status (8)

Country Link
US (3) US11962771B2 (ja)
EP (2) EP4032290A4 (ja)
JP (2) JP2022552537A (ja)
KR (1) KR20220078600A (ja)
CN (3) CN114631317B (ja)
BR (1) BR112022007408A2 (ja)
MX (1) MX2022004409A (ja)
WO (2) WO2021073631A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG11202107546UA (en) * 2019-01-09 2021-08-30 Huawei Tech Co Ltd Temporal motion constrained sub-picture signaling in video coding
CN113796073A (zh) * 2019-03-11 2021-12-14 瑞典爱立信有限公司 涉及基于gop的时间过滤的视频译码
CN114208165B (zh) 2019-08-10 2023-12-15 北京字节跳动网络技术有限公司 子图片解码中的缓冲器管理
CN117528082A (zh) 2019-10-02 2024-02-06 北京字节跳动网络技术有限公司 包括子图片的视频比特流中的条带级信令通知
KR20220078600A (ko) 2019-10-18 2022-06-10 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브픽처들의 파라미터 세트 시그널링에서의 신택스 제약들
EP4044598A4 (en) * 2019-11-05 2022-12-07 LG Electronics Inc. METHOD AND DEVICE FOR PROCESSING IMAGE INFORMATION FOR IMAGE/VIDEO CODING
CA3160471A1 (en) * 2019-11-05 2021-05-14 Lg Electronics Inc. Image/video coding method and device
WO2021134055A1 (en) 2019-12-27 2021-07-01 Bytedance Inc. Subpicture signaling in parameter sets
WO2021137295A1 (en) * 2019-12-30 2021-07-08 Sharp Kabushiki Kaisha Systems and methods for signaling subpicture information in video coding
CN114930830A (zh) 2020-01-09 2022-08-19 字节跳动有限公司 波前并行处理的信令通知
US11863786B2 (en) * 2021-05-21 2024-01-02 Varjo Technologies Oy Method of transporting a framebuffer

Family Cites Families (215)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6047112A (en) 1992-06-30 2000-04-04 Discovision Associates Technique for initiating processing of a data stream of encoded video information
GB2382940A (en) 2001-11-27 2003-06-11 Nokia Corp Encoding objects and background blocks
FI114679B (fi) 2002-04-29 2004-11-30 Nokia Corp Satunnaisaloituspisteet videokoodauksessa
US20040177383A1 (en) 2003-01-24 2004-09-09 Chyron Corporation Embedded graphics metadata
JP3967691B2 (ja) 2003-03-31 2007-08-29 株式会社東芝 情報記憶媒体と情報再生装置と情報記録再生装置
KR100983268B1 (ko) 2003-07-21 2010-09-24 엘지전자 주식회사 트릭 플레이시 서브픽쳐 표시 방법
CN100502511C (zh) 2004-09-14 2009-06-17 华为技术有限公司 用于分数像素精度运动预测的插值图像内存组织方法
US7688333B2 (en) 2007-02-28 2010-03-30 Lsi Corporation Method and/or apparatus for color space reduction for transcoding subpicture elements
CN101669360B (zh) 2007-04-26 2016-08-03 宝利通公司 去块滤波器设备
KR100891768B1 (ko) 2007-05-02 2009-04-07 삼성전자주식회사 모션 벡터 탐색 방법
CN101668219B (zh) 2008-09-02 2012-05-23 华为终端有限公司 3d视频通信方法、发送设备和系统
WO2010041858A2 (en) 2008-10-06 2010-04-15 Lg Electronics Inc. A method and an apparatus for decoding a video signal
JP2012504924A (ja) 2008-10-06 2012-02-23 エルジー エレクトロニクス インコーポレイティド ビデオ信号の処理方法及び装置
EP3101897B1 (en) 2010-04-09 2021-10-20 Xylene Holding S.A. Moving image encoding device and method, moving image decoding device and method, bitstream
US8988531B2 (en) 2010-07-08 2015-03-24 Texas Instruments Incorporated Method and apparatus for sub-picture based raster scanning coding order
US10327008B2 (en) 2010-10-13 2019-06-18 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
CN101990103B (zh) 2010-11-10 2013-01-16 香港应用科技研究院有限公司 用于多视点视频编码的方法和装置
US20120294353A1 (en) * 2011-05-16 2012-11-22 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components
US9641866B2 (en) 2011-08-18 2017-05-02 Qualcomm Incorporated Applying partition-based filters
SE538057C2 (sv) 2011-09-09 2016-02-23 Kt Corp Metod för att härleda en temporal prediktionsrörelsesvektoroch en anordning som använder metoden.
US9699457B2 (en) 2011-10-11 2017-07-04 Qualcomm Incorporated Most probable transform for intra prediction coding
US9807403B2 (en) 2011-10-21 2017-10-31 Qualcomm Incorporated Adaptive loop filtering for chroma components
US9584819B2 (en) * 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
CN103891292B (zh) * 2011-10-24 2018-02-02 寰发股份有限公司 视频数据环路滤波处理方法及其装置
US20130182772A1 (en) * 2012-01-13 2013-07-18 Qualcomm Incorporated Determining contexts for coding transform coefficient data in video coding
US9749661B2 (en) * 2012-01-18 2017-08-29 Qualcomm Incorporated Sub-streams for wavefront parallel processing in video coding
US9538200B2 (en) 2012-01-19 2017-01-03 Qualcomm Incorporated Signaling of deblocking filter parameters in video coding
US10244246B2 (en) * 2012-02-02 2019-03-26 Texas Instruments Incorporated Sub-pictures for pixel rate balancing on multi-core platforms
NZ616358A (en) * 2012-02-03 2015-03-27 Mediatek Inc Method and apparatus for loop filtering cross tile or slice boundaries
US9525861B2 (en) 2012-03-14 2016-12-20 Qualcomm Incorporated Disparity vector prediction in video coding
US10200709B2 (en) 2012-03-16 2019-02-05 Qualcomm Incorporated High-level syntax extensions for high efficiency video coding
US9565431B2 (en) * 2012-04-04 2017-02-07 Qualcomm Incorporated Low-delay video buffering in video coding
US20130294524A1 (en) 2012-05-04 2013-11-07 Qualcomm Incorporated Transform skipping and lossless coding unification
US9762903B2 (en) 2012-06-01 2017-09-12 Qualcomm Incorporated External pictures in video coding
US20130336406A1 (en) 2012-06-14 2013-12-19 Qualcomm Incorporated Redundancy removal for merge/skip mode motion information candidate list construction
US9800869B2 (en) 2012-06-15 2017-10-24 Google Technology Holdings LLC Method and apparatus for efficient slice header processing
US20140003504A1 (en) 2012-07-02 2014-01-02 Nokia Corporation Apparatus, a Method and a Computer Program for Video Coding and Decoding
US9716892B2 (en) 2012-07-02 2017-07-25 Qualcomm Incorporated Video parameter set including session negotiation information
US10110890B2 (en) 2012-07-02 2018-10-23 Sony Corporation Video coding system with low delay and method of operation thereof
US10021394B2 (en) * 2012-09-24 2018-07-10 Qualcomm Incorporated Hypothetical reference decoder parameters in video coding
US9491457B2 (en) 2012-09-28 2016-11-08 Qualcomm Incorporated Signaling of regions of interest and gradual decoding refresh in video coding
US8989508B2 (en) * 2012-09-28 2015-03-24 Sharp Kabushiki Kaisha Electronic device for signaling a sub-picture buffer parameter
EP2904800A4 (en) 2012-10-05 2016-05-04 Mediatek Singapore Pte Ltd METHOD AND DEVICE FOR MOTION VECTOR REMOVAL FOR 3D VIDEO CODING
US20150304678A1 (en) 2012-12-26 2015-10-22 Sony Corporation Image processing device and method
KR102149959B1 (ko) 2013-01-04 2020-08-31 지이 비디오 컴프레션, 엘엘씨 효율적인 확장가능한 코딩 개념
CA2897152C (en) 2013-01-07 2019-03-05 Kemal Ugur Inter-layer video encoding and decoding with adaptive resolution change at indicated switching points
US20140218473A1 (en) 2013-01-07 2014-08-07 Nokia Corporation Method and apparatus for video coding and decoding
US9445130B2 (en) 2013-01-09 2016-09-13 Qualcomm Incorporated Blockiness metric for large HEVC block artifacts
WO2014107853A1 (en) 2013-01-09 2014-07-17 Mediatek Singapore Pte. Ltd. Methods for disparity vector derivation
TWI550599B (zh) 2013-02-20 2016-09-21 弗勞恩霍夫爾協會 使用瞬態位置相依重疊以編碼或解碼音頻信號之設備、解碼器、電腦程式及方法
TWI652936B (zh) 2013-04-02 2019-03-01 Vid衡器股份有限公司 針對可縮放視訊編碼的增強型時間運動向量預測
US9591321B2 (en) 2013-04-07 2017-03-07 Dolby International Ab Signaling change in output layer sets
US20140307803A1 (en) * 2013-04-08 2014-10-16 Qualcomm Incorporated Non-entropy encoded layer dependency information
US10015515B2 (en) 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
US9648326B2 (en) * 2013-07-02 2017-05-09 Qualcomm Incorporated Optimizations on inter-layer prediction signalling for multi-layer video coding
JP2015015575A (ja) 2013-07-04 2015-01-22 シャープ株式会社 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法、画像復号プログラムおよび画像符号化プログラム
CN105531999B (zh) 2013-07-09 2019-08-09 诺基亚技术有限公司 涉及用于信号传输运动信息的语法的视频编码方法及装置
EP3020202B1 (en) 2013-07-10 2019-09-04 Sharp Kabushiki Kaisha Scaling list signaling and parameter sets activation
WO2015003383A1 (en) 2013-07-12 2015-01-15 Mediatek Singapore Pte. Ltd. Methods for inter-view motion prediction
WO2015008479A1 (en) 2013-07-14 2015-01-22 Sharp Kabushiki Kaisha Signaling indications and constraints
GB2516424A (en) 2013-07-15 2015-01-28 Nokia Corp A method, an apparatus and a computer program product for video coding and decoding
WO2015006951A1 (en) 2013-07-18 2015-01-22 Mediatek Singapore Pte. Ltd. Methods for fast encoder decision
GB2516824A (en) * 2013-07-23 2015-02-11 Nokia Corp An apparatus, a method and a computer program for video coding and decoding
US20150078457A1 (en) 2013-09-13 2015-03-19 Qualcomm Incorporated Representation format signaling in multi-layer video coding
EP3056005A4 (en) 2013-10-11 2017-05-17 Sharp Kabushiki Kaisha Signaling information for coding
US20150103924A1 (en) * 2013-10-13 2015-04-16 Sharp Laboratories Of America, Inc. On operation of decoded picture buffer for interlayer pictures
WO2015056941A1 (ko) 2013-10-14 2015-04-23 한국전자통신연구원 다계층 기반의 영상 부호화/복호화 방법 및 장치
KR20150057591A (ko) 2013-11-20 2015-05-28 주식회사 디오텍 동영상파일에 대한 자막데이터 생성방법 및 장치
WO2015101716A1 (en) * 2014-01-03 2015-07-09 Nokia Technologies Oy Parameter set coding
US20150271515A1 (en) 2014-01-10 2015-09-24 Qualcomm Incorporated Block vector coding for intra block copy in video coding
US20150215631A1 (en) 2014-01-23 2015-07-30 Broadcom Corporation Parallel Coding with Overlapped Tiles
JP6280679B2 (ja) 2014-02-24 2018-02-14 日本放送協会 フレーム間引き装置、フレーム補間装置、映像符号化装置、映像復号装置、及びこれらのプログラム
EP3120561B1 (en) * 2014-03-16 2023-09-06 VID SCALE, Inc. Method and apparatus for the signaling of lossless video coding
CA2942838C (en) 2014-03-17 2019-10-01 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN108965888B (zh) 2014-03-19 2021-05-04 株式会社Kt 针对多视图视频信号生成合并候选列表的方法及解码装置
US10750198B2 (en) 2014-05-22 2020-08-18 Qualcomm Incorporated Maximum palette parameters in palette-based video coding
CN107005708A (zh) 2014-09-26 2017-08-01 Vid拓展公司 使用时间块向量预测的块内复制译码
CN107079164B (zh) 2014-09-30 2020-07-10 寰发股份有限公司 用于视频编码的自适应运动向量分辨率的方法
US20170295369A1 (en) 2014-10-06 2017-10-12 Sony Corporation Image processing device and method
US9800898B2 (en) 2014-10-06 2017-10-24 Microsoft Technology Licensing, Llc Syntax structures indicating completion of coded regions
US9918105B2 (en) 2014-10-07 2018-03-13 Qualcomm Incorporated Intra BC and inter unification
GB2531993B (en) * 2014-10-14 2018-04-25 Canon Kk Description of image composition with HEVC still image file format
WO2016100424A1 (en) 2014-12-19 2016-06-23 Mediatek Inc. Methods of palette based prediction for non-444 color format in video and image coding
US11477477B2 (en) 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
RU2686559C2 (ru) 2015-01-29 2019-04-29 Кэнон Кабусики Кайся Инициализатор предсказателя палитры при кодировании или декодировании самостоятельных кодируемых структур
US20160234522A1 (en) 2015-02-05 2016-08-11 Microsoft Technology Licensing, Llc Video Decoding
EP3243330B1 (en) 2015-02-13 2021-10-27 MediaTek Inc. Method for palette syntax coding in video and image compression
CN104702963B (zh) * 2015-02-13 2017-11-24 北京大学 一种自适应环路滤波的边界处理方法及装置
WO2016172395A1 (en) 2015-04-21 2016-10-27 Arris Enterprises Llc Scalable video coding system with parameter signaling
US10200713B2 (en) 2015-05-11 2019-02-05 Qualcomm Incorporated Search region determination for inter coding within a particular picture of video data
JP2017017629A (ja) 2015-07-03 2017-01-19 富士通株式会社 動画像符号化装置、動画像符号化方法、及びプログラム
AU2016299036B2 (en) 2015-07-27 2019-11-21 Hfi Innovation Inc. Method of system for video coding using intra block copy mode
US10715843B2 (en) 2015-08-20 2020-07-14 Koninklijke Kpn N.V. Forming one or more tile streams on the basis of one or more video streams
US10375413B2 (en) 2015-09-28 2019-08-06 Qualcomm Incorporated Bi-directional optical flow for video coding
WO2017083784A1 (en) 2015-11-11 2017-05-18 Apple Inc. Adaptive chroma downsampling and color space conversion techniques
CN108781294B (zh) 2016-02-05 2021-08-31 联发科技股份有限公司 视频数据的运动补偿方法及装置
CN113347439B (zh) 2016-02-09 2022-05-17 弗劳恩霍夫应用研究促进协会 解码器、编码器、方法、网络设备以及可读存储介质
US10349067B2 (en) 2016-02-17 2019-07-09 Qualcomm Incorporated Handling of end of bitstream NAL units in L-HEVC file format and improvements to HEVC and L-HEVC tile tracks
WO2017147765A1 (en) 2016-03-01 2017-09-08 Mediatek Inc. Methods for affine motion compensation
RU2696551C1 (ru) 2016-03-15 2019-08-02 МедиаТек Инк. Способ и устройство для кодирования видео с компенсацией аффинного движения
US20170272758A1 (en) 2016-03-16 2017-09-21 Mediatek Inc. Video encoding method and apparatus using independent partition coding and associated video decoding method and apparatus
KR20230143623A (ko) 2016-03-28 2023-10-12 로즈데일 다이나믹스 엘엘씨 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
CN116193116A (zh) 2016-03-30 2023-05-30 韩国电子通信研究院 使用画面划分信息对视频进行编码和解码的方法和设备
WO2017188566A1 (ko) 2016-04-25 2017-11-02 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측 방법 및 장치
US10419755B2 (en) 2016-05-16 2019-09-17 Qualcomm Incorporated Confusion of multiple filters in adaptive loop filtering in video coding
EP3449630A4 (en) 2016-05-28 2019-11-27 MediaTek Inc. METHOD AND APPARATUS FOR CURRENT IMAGE REFERENCING FOR VIDEO CODING
CN107566848B (zh) 2016-06-30 2020-04-14 华为技术有限公司 编解码的方法及装置
CN107801039B (zh) 2016-08-30 2020-04-14 华为技术有限公司 运动补偿预测方法和装置
US10419757B2 (en) * 2016-08-31 2019-09-17 Qualcomm Incorporated Cross-component filter
US20180098090A1 (en) 2016-10-04 2018-04-05 Mediatek Inc. Method and Apparatus for Rearranging VR Video Format and Constrained Encoding Parameters
CN109983773A (zh) 2016-11-29 2019-07-05 联发科技股份有限公司 用于合并模式推导的视频编解码方法和装置
AU2016273973A1 (en) 2016-12-16 2018-07-05 Canon Kabushiki Kaisha Transcode PCL delta-row compressed image to edges
EP3556096A4 (en) 2016-12-22 2020-05-27 MediaTek Inc. MOTION REFINING METHOD AND APPARATUS FOR VIDEO CODING
CN110140355B (zh) 2016-12-27 2022-03-08 联发科技股份有限公司 用于视频编解码的双向模板运动向量微调的方法及装置
GB2573443B (en) 2016-12-28 2020-04-01 Arris Entpr Llc Adaptive unequal weight planar prediction
US10931969B2 (en) 2017-01-04 2021-02-23 Qualcomm Incorporated Motion vector reconstructions for bi-directional optical flow (BIO)
US20180199057A1 (en) 2017-01-12 2018-07-12 Mediatek Inc. Method and Apparatus of Candidate Skipping for Predictor Refinement in Video Coding
US10523964B2 (en) 2017-03-13 2019-12-31 Qualcomm Incorporated Inter prediction refinement based on bi-directional optical flow (BIO)
US20180310017A1 (en) 2017-04-21 2018-10-25 Mediatek Inc. Sub-prediction unit temporal motion vector prediction (sub-pu tmvp) for video coding
KR102435881B1 (ko) 2017-05-26 2022-08-24 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
CN107277316B (zh) 2017-06-12 2020-05-12 京东方科技集团股份有限公司 显示装置及其制造方法
US10904565B2 (en) 2017-06-23 2021-01-26 Qualcomm Incorporated Memory-bandwidth-efficient design for bi-directional optical flow (BIO)
EP3422724B1 (en) 2017-06-26 2024-05-01 Nokia Technologies Oy An apparatus, a method and a computer program for omnidirectional video
CN117478885A (zh) 2017-07-03 2024-01-30 Vid拓展公司 用于视频编解码的设备、方法
KR20240038175A (ko) 2017-07-06 2024-03-22 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 분할된 비디오 스트리밍 개념
US10483493B2 (en) 2017-08-01 2019-11-19 Apple Inc. Electronic device having display with thin-film encapsulation
US10856003B2 (en) 2017-10-03 2020-12-01 Qualcomm Incorporated Coding affine prediction motion information for video coding
US11166013B2 (en) 2017-10-09 2021-11-02 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US20190116376A1 (en) 2017-10-12 2019-04-18 Qualcomm Incorporated Motion vector predictors using affine motion model in video coding
JP2021016016A (ja) 2017-10-20 2021-02-12 シャープ株式会社 動画像符号化装置及び動画像復号装置
US10776688B2 (en) 2017-11-06 2020-09-15 Nvidia Corporation Multi-frame video interpolation using optical flow
CN111527752B (zh) * 2017-12-28 2024-04-12 韩国电子通信研究院 图像编码和解码的方法和装置以及存储比特流的记录介质
CN109996072B (zh) 2018-01-03 2021-10-15 华为技术有限公司 视频图像的处理方法及装置
US11388398B2 (en) 2018-01-11 2022-07-12 Qualcomm Incorporated Video coding using local illumination compensation
US10757417B2 (en) 2018-01-20 2020-08-25 Qualcomm Incorporated Affine motion compensation in video coding
EP3744103B1 (en) * 2018-01-25 2024-03-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Efficient sub-picture extraction
US11012715B2 (en) 2018-02-08 2021-05-18 Qualcomm Incorporated Intra block copy for video coding
WO2019169339A1 (en) 2018-03-01 2019-09-06 Arris Enterprises Llc System and method of motion information storage for video coding and signaling
CN116684590A (zh) 2018-04-01 2023-09-01 Lg电子株式会社 图像编码/解码方法、视频数据发送方法和存储介质
CN116708840A (zh) 2018-04-03 2023-09-05 英迪股份有限公司 对图像解码和编码的方法、非暂态计算机可读存储介质
RU2020135518A (ru) 2018-04-06 2022-04-29 Вид Скейл, Инк. Метод двунаправленного оптического потока с упрощенным выведением градиента
US11457233B2 (en) 2018-04-12 2022-09-27 Arris Enterprises Llc Motion information storage for video coding and signaling
US10873748B2 (en) 2018-05-12 2020-12-22 Qualcomm Incorporated Storage of high precision motion vectors in video coding
WO2019244117A1 (en) 2018-06-21 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Unified constrains for the merge affine mode and the non-merge affine mode
WO2020005719A1 (en) 2018-06-27 2020-01-02 Vid Scale, Inc. Methods and apparatus for reducing the coding latency of decoder-side motion refinement
TWI747000B (zh) 2018-06-29 2021-11-21 大陸商北京字節跳動網絡技術有限公司 虛擬Merge候選
EP3815375A1 (en) 2018-06-29 2021-05-05 VID SCALE, Inc. Adaptive control point selection for affine motion model based video coding
TWI722467B (zh) 2018-06-29 2021-03-21 大陸商北京字節跳動網絡技術有限公司 視頻處理方法、視頻系統中的裝置及電腦程式產品
WO2020008334A1 (en) 2018-07-01 2020-01-09 Beijing Bytedance Network Technology Co., Ltd. Efficient affine merge motion vector derivation
WO2020008328A1 (en) 2018-07-01 2020-01-09 Beijing Bytedance Network Technology Co., Ltd. Shape dependent merge mode and amvp mode coding
WO2020008352A1 (en) 2018-07-02 2020-01-09 Beijing Bytedance Network Technology Co., Ltd. Update of look-up tables
CN112544077B (zh) 2018-07-16 2023-12-08 Lg电子株式会社 用于子块单元中的时间运动信息预测的帧间预测方法及其装置
WO2020017892A1 (ko) 2018-07-17 2020-01-23 엘지전자 주식회사 서브블록 단위의 시간적 움직임 벡터 예측을 위한 방법 및 그 장치
TWI752341B (zh) 2018-08-04 2022-01-11 大陸商北京字節跳動網絡技術有限公司 不同解碼器側運動矢量推導模式之間的交互
CN110933420B (zh) 2018-09-19 2023-09-01 北京字节跳动网络技术有限公司 仿射模式中自适应运动矢量分辨率的快速算法
CN112771873A (zh) 2018-09-20 2021-05-07 夏普株式会社 用于发信号通知视频编码中的参数的系统和方法
US11546605B2 (en) 2018-09-20 2023-01-03 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium storing bitstream
GB2577318B (en) 2018-09-21 2021-03-10 Canon Kk Video coding and decoding
WO2020058958A1 (en) 2018-09-23 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. Construction for motion candidates list
WO2020058961A1 (en) 2018-09-23 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. Modification of motion vector with adaptive motion vector resolution
WO2020058955A1 (en) 2018-09-23 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. Multiple-hypothesis affine mode
TW202029755A (zh) 2018-09-26 2020-08-01 美商Vid衡器股份有限公司 視訊編碼雙預測
JP7230189B2 (ja) 2018-10-08 2023-02-28 エルジー エレクトロニクス インコーポレイティド シンタックスデザイン方法及びシンタックスを用いてコーディングを行う装置
CN117880513A (zh) 2018-10-22 2024-04-12 北京字节跳动网络技术有限公司 基于编解码信息的解码器侧运动矢量推导的限制
CN111083489A (zh) 2018-10-22 2020-04-28 北京字节跳动网络技术有限公司 多次迭代运动矢量细化
WO2020084470A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Storage of motion parameters with clipping for affine mode
WO2020084502A1 (en) 2018-10-23 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Video processing using local illumination compensation
EP3861731A4 (en) 2018-11-05 2021-11-24 Beijing Bytedance Network Technology Co. Ltd. INTERPOLATION TO INTERPRDICTION WITH REFINEMENT
KR20210089133A (ko) 2018-11-06 2021-07-15 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 인트라 예측에 대한 단순화된 파라미터 유도
CN109600611B (zh) * 2018-11-09 2021-07-13 北京达佳互联信息技术有限公司 环路滤波方法、环路滤波装置、电子设备和可读介质
CN112997487A (zh) 2018-11-15 2021-06-18 北京字节跳动网络技术有限公司 仿射模式与其他帧间编解码工具之间的协调
WO2020098814A1 (en) 2018-11-16 2020-05-22 Beijing Bytedance Network Technology Co., Ltd. History-based affine parameters inheritance
CN113039790B (zh) 2018-11-17 2023-04-14 北京字节跳动网络技术有限公司 视频处理的方法、装置和非暂时性计算机可读介质
CN113170171B (zh) 2018-11-20 2024-04-12 北京字节跳动网络技术有限公司 组合帧间帧内预测模式的预测细化
US11146810B2 (en) 2018-11-27 2021-10-12 Qualcomm Incorporated Decoder-side motion vector refinement
WO2020108649A1 (en) 2018-11-29 2020-06-04 Beijing Bytedance Network Technology Co., Ltd. Interaction between intra block copy mode and inter prediction tools
US11627310B2 (en) 2019-01-02 2023-04-11 Lg Electronics Inc. Affine motion prediction-based video decoding method and device using subblock-based temporal merge candidate in video coding system
EP3908004A4 (en) 2019-01-02 2022-08-24 SZ DJI Technology Co., Ltd. METHOD AND DEVICE FOR CONSTRUCTING A LIST OF CANDIDATES MV
EP3906677A4 (en) 2019-01-02 2022-10-19 Nokia Technologies Oy DEVICE, METHOD AND COMPUTER PROGRAM FOR VIDEO ENCODING AND DECODING
SG11202107546UA (en) 2019-01-09 2021-08-30 Huawei Tech Co Ltd Temporal motion constrained sub-picture signaling in video coding
WO2020156576A1 (en) 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Multi-hmvp for affine
GB201902829D0 (en) * 2019-03-01 2019-04-17 Canon Kk Method and apparatus for encoding and decoding a video bitsream for merging regions of interest
MX2021011025A (es) 2019-03-11 2021-11-12 Huawei Tech Co Ltd Un codificador, un decodificador y métodos correspondientes.
US20200296405A1 (en) 2019-03-14 2020-09-17 Qualcomm Incorporated Affine motion compensation refinement using optical flow
WO2020187198A1 (en) 2019-03-17 2020-09-24 Beijing Bytedance Network Technology Co., Ltd. Prediction refinement based on optical flow
AU2020240048B2 (en) 2019-03-18 2022-12-22 Tencent America LLC Method and apparatus for video coding
WO2020200277A1 (en) 2019-04-02 2020-10-08 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering in video processing
KR20230169434A (ko) 2019-04-02 2023-12-15 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 디코더 측 움직임 벡터 유도
EP4304178A3 (en) 2019-04-19 2024-03-06 Beijing Bytedance Network Technology Co., Ltd. Gradient calculation in different motion vector refinements
CN113711609B (zh) 2019-04-19 2023-12-01 北京字节跳动网络技术有限公司 利用光流的预测细化过程中的增量运动矢量
CN113711608B (zh) 2019-04-19 2023-09-01 北京字节跳动网络技术有限公司 利用光流的预测细化过程的适用性
KR20210149759A (ko) 2019-04-30 2021-12-09 주식회사 윌러스표준기술연구소 적응적 모션 벡터 해상도를 이용한 비디오 신호 처리 방법 및 장치
US11523109B2 (en) 2019-05-02 2022-12-06 Tencent America LLC Method and apparatus for improvements of affine prof
KR102628896B1 (ko) 2019-05-15 2024-01-23 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 코딩에서 참조 픽처 리샘플링을 위한 양방향 광 흐름(bio) 코딩 도구의 취급
JP7323641B2 (ja) 2019-05-21 2023-08-08 北京字節跳動網絡技術有限公司 アフィンモードのための適応動きベクトル差分分解
CA3140549A1 (en) 2019-06-03 2020-12-10 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US20220272378A1 (en) 2019-06-23 2022-08-25 Sharp Kabushiki Kaisha Systems and methods for performing an adaptive resolution change in video coding
BR112021026341A2 (pt) 2019-06-24 2022-02-08 Sharp Kk Sistemas e métodos para reduzir um erro de reconstrução na codificação de vídeo com base em uma correlação entre componentes
CN114073073B (zh) 2019-07-08 2023-06-06 华为技术有限公司 一种支持混合nal单元的编解码方法和编解码器
MX2022000987A (es) * 2019-07-25 2022-10-28 Hfi Innovation Inc Metodo y aparato de filtrado de bucle adaptativo de componentes cruzados con limite virtual para codificacion de video.
KR20220088681A (ko) 2019-08-06 2022-06-28 오피 솔루션즈, 엘엘씨 적응적 해상도 관리 시그널링
US11363307B2 (en) 2019-08-08 2022-06-14 Hfi Innovation Inc. Video coding with subpictures
CN114208165B (zh) 2019-08-10 2023-12-15 北京字节跳动网络技术有限公司 子图片解码中的缓冲器管理
GB2586484B (en) * 2019-08-20 2023-03-08 Canon Kk A filter
CN114521331A (zh) 2019-09-13 2022-05-20 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
US11202068B2 (en) * 2019-09-16 2021-12-14 Mediatek Inc. Method and apparatus of constrained cross-component adaptive loop filtering for video coding
US11451834B2 (en) * 2019-09-16 2022-09-20 Tencent America LLC Method and apparatus for cross-component filtering
GB201913403D0 (en) 2019-09-17 2019-10-30 Canon Kk Method and apparatus for encoding and decoding a video stream with subpictures
US11240507B2 (en) 2019-09-24 2022-02-01 Qualcomm Incorporated Simplified palette predictor update for video coding
CN117528082A (zh) 2019-10-02 2024-02-06 北京字节跳动网络技术有限公司 包括子图片的视频比特流中的条带级信令通知
CN116016936A (zh) 2019-10-10 2023-04-25 北京达佳互联信息技术有限公司 使用调色板模式的视频编解码的方法和装置
KR20220078600A (ko) 2019-10-18 2022-06-10 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브픽처들의 파라미터 세트 시그널링에서의 신택스 제약들
US11539982B2 (en) 2019-11-01 2022-12-27 Qualcomm Incorporated Merge estimation region for multi-type-tree block structure
CN115280774A (zh) 2019-12-02 2022-11-01 抖音视界有限公司 在仿射模式下与运动向量差分merge
US11212523B2 (en) 2020-01-12 2021-12-28 Mediatek Inc. Video processing methods and apparatuses of merge number signaling in video coding systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS, ET AL.: ""Versatile Video Coding (Draft 7)"", DOCUMENT: JVET-P2001-V9, [ONLINE], vol. JVET-P2001 (version 9), JPN6023016029, 17 October 2019 (2019-10-17), pages 3 - 12, ISSN: 0005046081 *

Also Published As

Publication number Publication date
CN114631321A (zh) 2022-06-14
CN117676135A (zh) 2024-03-08
US20220256148A1 (en) 2022-08-11
JP2024009018A (ja) 2024-01-19
EP4333431A1 (en) 2024-03-06
EP4032290A4 (en) 2022-11-30
EP4032290A1 (en) 2022-07-27
CN114631317B (zh) 2024-03-15
KR20220078600A (ko) 2022-06-10
US20240048699A1 (en) 2024-02-08
BR112022007408A2 (pt) 2022-09-27
CN114631317A (zh) 2022-06-14
WO2021073631A1 (en) 2021-04-22
MX2022004409A (es) 2022-05-18
US11962771B2 (en) 2024-04-16
WO2021073630A1 (en) 2021-04-22
US20220256146A1 (en) 2022-08-11
US11956432B2 (en) 2024-04-09
CN114631321B (zh) 2024-04-12

Similar Documents

Publication Publication Date Title
WO2021027773A1 (en) Subpicture size definition in video processing
JP2022552537A (ja) サブピクチャのパラメータセットシグナリングにおける構文制約
JP7322290B2 (ja) ビデオビットストリームにおけるサブピクチャシグナリングのための構文
JP7454681B2 (ja) ビデオコーディング及び復号の制約
WO2021202178A1 (en) Methods and devices for high-level syntax in video coding
WO2021129805A1 (en) Signaling of parameters at sub-picture level in a video bitstream
JP7478225B2 (ja) サブピクチャ復号のバッファ管理
CN115280768A (zh) 视频编解码中的子图片边界滤波

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220620

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220502

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240409