JP2022527012A - 映像符号化のためのon適応ループフィルタリング - Google Patents

映像符号化のためのon適応ループフィルタリング Download PDF

Info

Publication number
JP2022527012A
JP2022527012A JP2021559943A JP2021559943A JP2022527012A JP 2022527012 A JP2022527012 A JP 2022527012A JP 2021559943 A JP2021559943 A JP 2021559943A JP 2021559943 A JP2021559943 A JP 2021559943A JP 2022527012 A JP2022527012 A JP 2022527012A
Authority
JP
Japan
Prior art keywords
alf
temporal
filter
video
video block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021559943A
Other languages
English (en)
Other versions
JPWO2020211810A5 (ja
Inventor
ホンビン リウ
リー ジャン
カイ ジャン
チアン チュアン,シャオ
ジピン ドン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2022527012A publication Critical patent/JP2022527012A/ja
Publication of JPWO2020211810A5 publication Critical patent/JPWO2020211810A5/ja
Priority to JP2023160428A priority Critical patent/JP2023179557A/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/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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

Abstract

Figure 2022527012000001
【要約】
適応ループフィルタリングのためのデバイス、システムおよび方法が記載される。例示の態様において、映像処理方法は、映像の現在の映像ブロックに対して、フィルタ係数を使用し、少なくとも1つの中間結果を伴う2つ以上の演算を含むフィルタリング処理を行うことと、前記少なくとも1つの中間結果にクリッピング演算を適用することと、前記少なくとも1つの中間結果に基づいて、前記現在の映像ブロックと前記映像のビットストリーム表現との間での変換を行うこととを含み、前記少なくとも1つの中間結果は、前記フィルタ係数の重み付けの合計と、前記現在の映像ブロックの現在のサンプルと前記現在のサンプルの近傍のサンプルとの間の差とに基づく。
【選択図】図11A

Description

関連出願の相互参照
パリ条約に基づく適用可能な特許法および/または規則に基づいて、本願は、2019年4月16日出願の国際特許出願第PCT/CN2019/082855号の優先権および利益を適時に主張することを目的とする。米国法に基づくすべての目的のために、上記出願の開示全体は、本明細書の開示の一部として参照により援用される。
この特許文献は、映像符号化技術、デバイスおよびシステムに関する。
映像圧縮の進歩にもかかわらず、デジタル映像は、依然として、インターネット及び他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信及び表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
デジタル映像符号化に関し、具体的には、映像符号化のための適応ループフィルタリングに関するデバイス、システム、および方法について記載する。記載された方法は、既存の映像符号化規格(例えば、高効率映像符号化(HEVC))および将来の映像符号化規格(例えば、汎用映像符号化(VVC))、又はコーデックの両方に適用され得る。
映像符号化規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4 Visualを作り、両団体はH.262/MPEG-2 VideoとH.264/MPEG-4 AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像符号化規格は、時間予測と変換符号化が利用されるハイブリッド映像符号化構造に基づく。HEVCを超えた将来の映像符号化技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Mode)と呼ばれる参照ソフトウェアに組み込まれてきた。2018年4月には、VCEG(Q6/16)とISO/IEC JTC1 SC29/WG11(MPEG)の間にJoint Video Expert Team(JVET)が発足し、HEVCと比較して50%のビットレート削減を目標にVVC規格の策定に取り組んでいる。
1つの代表的な態様において、開示される技術は、映像処理の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックに対して、フィルタ係数を使用し、少なくとも1つの中間結果を伴う2つ以上の演算を含むフィルタリング処理を行うことと、前記少なくとも1つの中間結果にクリッピング演算を適用することと、前記少なくとも1つの中間結果に基づいて、前記現在の映像ブロックと前記映像のビットストリーム表現との間での変換を行うこととを含み、前記少なくとも1つの中間結果は、前記フィルタ係数の重み付けの合計と、前記現在の映像ブロックの現在のサンプルと前記現在のサンプルの近傍のサンプルとの間の差とに基づく。
別の代表的な態様では、開示される技術は、映像処理の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックを前記映像のビットストリーム表現に符号化することであって、前記現在の映像ブロックは、適応ループフィルタ(ALF)で符号化される、符号化することと、時間的適応フィルタの1つ以上のセットの可用性または使用に基づいて、前記ビットストリーム表現における前記時間的適応フィルタの前記1つ以上のセット内の時間的適応フィルタのセットの指示を選択的に含むことと、を含む。
さらに別の代表的な態様では、開示される技術は、映像処理の方法を提供するために使用してもよい。この方法は、映像のビットストリーム表現における時間的適応フィルタのセットの指示に基づいて、適応ループフィルタ(ALF)で符号化される映像の現在の映像ブロックに適用可能な時間的適応フィルタの前記セットを備える1つ以上のセットの前記時間的適応フィルタの可用性または使用を判定することと、前記判定することに基づいて、時間的適応フィルタの前記セットを選択的に適用することによって、前記ビットストリーム表現から復号化された現在の映像ブロックを生成することと、を含む。
さらに別の代表的な態様では、開示される技術は、映像処理の方法を提供するために使用してもよい。この方法は、適応ループフィルタで符号化された現在の映像ブロックに対して、利用可能な時間的ALF係数セットに基づいて、時間的適応ループフィルタリング(ALF)係数セットの数を判定することであって、前記利用可能な時間的ALF係数セットは、前記判定する前に符号化または復号化されており、前記ALF係数セットの数は、前記現在の映像ブロックを構成するタイルグループ、タイル、スライス、ピクチャ、符号化ツリーブロック(CTB)、または映像ユニットに使用される、判定することと、時間的ALF係数セットの前記数に基づいて、前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現の間での変換を行うことと、を含む。
さらに別の代表的な態様では、開示される技術は、映像処理の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域のヘッダにおける適応ループフィルタリング(ALF)の指示が、前記ビットストリーム表現に関連付けられた適応パラメータセット(APS)ネットワーク抽象化層(NAL)ユニットにおけるALFの指示と等しいことを判定することと、前記変換を行うことと、を含む。
さらに別の代表的な態様では、開示される技術は、映像処理の方法を提供するために使用してもよい。この方法は、現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域で使用される適応ループフィルタのタイプに基づいて、非線形適応ループフィルタリング(ALF)動作を選択的に有効化することと、前記選択的に有効化した後に、前記変換を行うことを含む。
さらに別の代表的な態様において、上記方法は、処理装置が実行可能なコードの形式で実施され、コンピュータ可読プログラム媒体に記憶される。
さらに別の代表的な態様において、上述した方法を行うように構成された、または動作可能なデバイスが開示される。この装置は、この方法を実装するようにプログラムされた処理装置を含んでもよい。
さらに別の代表的な態様において、映像デコーダ装置は、本明細書で説明されるような方法を実装してもよい。
開示される技術の上記および他の態様および特徴は、図面、説明および特許請求の範囲でより詳細に説明される。
映像符号化のためのエンコーダブロック図の例を示す。 形状変換に基づく適応ループフィルタ(GALF)フィルタ形状の例を示す。 形状変換に基づく適応ループフィルタ(GALF)フィルタ形状の例を示す。 形状変換に基づく適応ループフィルタ(GALF)フィルタ形状の例を示す。 GALFエンコーダ決定のためのフローグラフの例を示す。 適応ループフィルタ(ALF)分類のための例示的なサブサンプリングされたラプラシアン計算を示す。 適応ループフィルタ(ALF)分類のための例示的なサブサンプリングされたラプラシアン計算を示す。 適応ループフィルタ(ALF)分類のための例示的なサブサンプリングされたラプラシアン計算を示す。 適応ループフィルタ(ALF)分類のための例示的なサブサンプリングされたラプラシアン計算を示す。 輝度フィルタの形状の例を示す。 ワイド映像グラフィックアレイ(WVGA)シーケンスの領域分割の例を示す。 再整形を伴う復号化の流れの例示的なフロー図を示す。 双方向オプティカルフロー(BIO)アルゴリズムで使用されるオプティカルフローの軌跡の例を示す。 ブロック拡張なしの双方向オプティカルフロー(BIO)アルゴリズムを使用した例示的なスナップショットを示す。 ブロック拡張なしの双方向オプティカルフロー(BIO)アルゴリズムを使用した例示的なスナップショットを示す。 オプティカルフローを用いた予測微調整(PROF)の例を示す。 本開示の技術による適応ループフィルタリング方法の一例を示すフロー図である。 本開示の技術による適応ループフィルタリング方法の一例を示すフロー図である。 本開示の技術による適応ループフィルタリング方法の一例を示すフロー図である。 本開示の技術による適応ループフィルタリング方法の一例を示すフロー図である。 本開示の技術による適応ループフィルタリング方法の一例を示すフロー図である。 本開示の技術による適応ループフィルタリング方法の一例を示すフロー図である。 本特許明細書に記載されるビジュアルメディアの復号化又はビジュアルメディアの符号化技術を実現するためのハードウェアプラットフォームの一例を示すブロック図である。 開示された技術を実装することができる例示的な映像処理システムを示すブロック図である。
より高い解像度の映像の需要が増大しているため、近代技術において、映像符号化法および技術は、遍在している。ビデオコーデックは、一般的に、デジタル映像を圧縮又は展開する電子回路又はソフトウェアを含み、より高い符号化効率を提供するように絶えず改良されている。ビデオコーデックは、非圧縮映像を圧縮フォーマットに変換する、又はその逆である。映像の品質、映像を表現するために使用されるデータの数(ビットレートで決まる)、エンコーディングおよびデコーディングアルゴリズムの複雑性、データの損失およびエラーに対する敏感さ、編集のしやすさ、ランダムアクセス、およびエンドツーエンドの遅延(待ち時間)の間には複雑な関係がある。この圧縮フォーマットは、通常、標準的な映像圧縮仕様、例えば、高効率映像符号化(HEVC)規格(H.265またはMPEG-H Part 2としても知られている)、完成させるべき汎用映像符号化(VVC)規格、または他の現在のおよび/または将来の映像符号化基準に準拠する。
いくつかの実施形態において、将来の映像符号化技術は、共同探索モデル(JEM)として知られる参照ソフトウェアを使用して探索される。JEMでは、サブブロックベースの予測は、アフィン予測、代替時間的動きベクトル予測(ATMVP)、空間的-時間的動きベクトル予測(STMVP)、双方向オプティカルフロー(BIO)、フレームレートアップ変換(FRUC)、ローカル適応動きベクトル解像度(LAMVR)、オーバーラップブロック動き補償(OBMC)、ローカル照明補償(LIC)、デコーダ側動きベクトル改良(DMVR)などの、いくつかの符号化ツールで適用されている。
開示される技術の実施形態は、ランタイム性能を向上させるために、既存の映像符号化規格(例えば、HEVC、H.265)および将来の規格に適用されてもよい。本明細書では、説明の可読性を向上させるために章の見出しを使用しており、説明または実施形態(および/または実装形態)をそれぞれの章のみに限定するものではない。
1. 色空間およびクロマサブサンプリングの実施例
色空間はカラーモデル(またはカラーシステム)としても知られ、色の範囲を数字のタプル(tuple)として簡単に記述する抽象的な数学モデルであり、一般的に、3または4つの値または色成分(例えばRGB)である。基本的には、色空間は座標系とサブ空間とを精緻化したものである。
映像圧縮の場合、最も頻繁に使用される色空間は、YCbCrおよびRGBである。
YCbCr、Y’CbCr、またはY Pb/Cb Pr/Crは、YCBCRまたはY’CBCRとも呼ばれ、映像およびデジタル写真システムのカラー画像パイプラインの一部として使用される色空間のファミリーである。Y’は輝度成分であり、CBおよびCRは青色差および赤色差クロマ成分である。Y’(素数を有する)はYとは区別され、Yは輝度であり、ガンマ補正されたRGB原色に基づいて光強度が非線形に符号化されることを意味する。
クロマサブサンプリングは、人間の視覚システムが、輝度よりも色差の方が知覚が低いことを利用して、輝度情報よりもクロマ情報の方が解像度が低くなるように実装して画像を符号化する方法である。
1.1 4:4:4 カラーフォーマット
3つのY’CbCr成分の各々は、同じサンプルレートを有し、従って、クロマサブサンプリングは存在しない。このスキームは、ハイエンドのフィルムスキャナおよび映画のポストプロダクションに使用されることがある。
1.2 4:2:2 カラーフォーマット
2つのクロマ成分は、輝度のサンプルレートの半分でサンプリングされ、例えば、水平クロマ解像度が半分にされる。これにより、視覚的にほとんどまたは全く差がなく、非圧縮の映像信号の帯域幅を1/3に低減することができる。
1.3 4:2:0 カラーフォーマット
4:2:0では、水平サンプリングは4:1:1に比べて2倍になるが、このスキームではCbおよびCrチャネルを各1行おきのラインでのみサンプリングするので、垂直解像度は半分になる。従って、データレートは同じである。CbおよびCrはそれぞれ水平および垂直方向の両方向に2倍にサブサンプリングされる。異なる水平および垂直位置を有する4:2:0スキームの3つの変形がある。
○ MPEG-2において、CbおよびCrは水平方向に共座している。Cb、Crは垂直方向の画素間に位置する(格子間に位置する)。
○ JPEG/JFIFにおいて、H.261、およびMPEG-1、Cb、およびCrは、交互の輝度サンプルの中間の格子間に位置する。
○ 4:2:0 DVにおいて、CbおよびCrは、水平方向に共座している。垂直方向において、それらは交互に並ぶ線上に共座している。
2 典型的な映像コーデックの符号化フローの例
図1は、3つのインループフィルタリングブロック、すなわち非ブロック化フィルタ(DF)、サンプル適応オフセット(SAO)およびALFを含むVVCのエンコーダブロック図の例を示す。DF(予め規定されたフィルタを使用する)とは異なり、SAOおよびALFは、現在の画像のオリジナルサンプルを利用し、オフセットを追加し、且つ有限インパルス応答(FIR)フィルタを適用することによって、オフセットおよびフィルタ係数を信号通知する符号化側情報とともに、元のサンプルと再構成サンプルとの間の平均二乗誤差をそれぞれ低減する。ALFは、各ピクチャの最後の処理ステージに位置し、前のステージで生成されたアーチファクトを捕捉し、修正しようとするツールと見なすことができる。
3 JEMにおける形状変換に基づく適応ループフィルタの例
JEMにおいて、ブロックに基づくフィルタ適応「3」を用いた形状変換に基づく適応ループフィルタ(GALF)が適用される。輝度成分は、局所勾配の方向および働きに基づいて、2×2ブロックごとに25個のフィルタのうち1つを選択する。
3.1 フィルタ形状の例
本願において、輝度成分として、最大3つのダイヤモンドフィルタ形状(図2A、図2B、図2Cにそれぞれ示すように、5×5ダイヤモンド、7×7ダイヤモンド、9×9ダイヤモンド)を選択することができる。輝度成分に使用されるフィルタ形状を示すために、ピクチャレベルでインデックスが信号通知される。1つのピクチャにおけるクロマ成分に対して、5×5ダイヤモンド形状が常に使用される。
3.1.1 ブロック区分
各2×2ブロックを25個のクラスのうちの1つに分類する。分類インデックスCは、その方向性DおよびアクティビティA^の量子化値に基づいて、以下のように導出される。
Figure 2022527012000002
DおよびA^を計算するために、まず、1-Dラプラシアンを使用して、水平、垂直および2つの対角線方向の勾配を計算する。
Figure 2022527012000003
Figure 2022527012000004
Figure 2022527012000005
Figure 2022527012000006
iおよびjは、2×2ブロックの左上のサンプルの座標を表し、R(i,j)は、座標(i,j)において再構成されたサンプルを示す。
そして、水平方向および垂直方向の勾配のD最大値およびD最小値を以下のように設定する。
Figure 2022527012000007
および2つの対角線方向の勾配の最大値および最小値は、以下のように設定される。
Figure 2022527012000008
指向性Dの値を導出するために、これらの値を互いに且つ2つの閾値tおよびtと比較する。
ステップ1.
Figure 2022527012000009
の両方が真である場合、0に設定される。
ステップ2.
Figure 2022527012000010
の場合、ステップ3から続け、あるいは、ステップ4から続ける。
ステップ3.
Figure 2022527012000011
である場合、Dは2に設定され、あるいは、Dは1に設定される。
ステップ4.
Figure 2022527012000012
である場合、Dは4に設定され、あるいは、Dは3に設定される。
アクティビティ値Aは、以下のように計算される。
Figure 2022527012000013
Aをさらに0~4の範囲に量子化し、量子化された値をA^とする。
ピクチャにおける両クロマ成分に対して、分類方法は適用されず、即ち、単一のALF係数のセットが各クロマ成分に対して適用される。
3.1.2 フィルタ係数の幾何学的変換
各2×2輝度ブロックをフィルタリングする前に、そのブロックに対して計算された勾配値に基づいて、フィルタ係数f(k,l)に回転または対角線および垂直方向の反転等の幾何学的変換を施す。これは、これらの変換をフィルタ支持領域内のサンプルに適用することに等しい。その考えは、ALFが適用される異なるブロックを、それらの方向性を揃えることによって、より類似させることである。
対角線、垂直方向の反転および回転を含む3つの幾何学的変換を紹介する。
Figure 2022527012000014
ここで、Kはフィルタのサイズであり、0≦k,l≦K-1が係数座標であり、位置(0,0)は左上隅にあり、位置(K-1,K-1)は右下隅にある。この変換は、そのブロックに対して計算された勾配値に基づいて、フィルタ係数f(k,l)に適用される。変換と4方向の4つの勾配との関係を表1にまとめる。
Figure 2022527012000015
3.1.3 フィルタパラメータの信号通知
JEMにおいて、GALFフィルタパラメータは、第1のCTUのために、すなわち、スライスヘッダの後且つ第1のCTUのSAOパラメータの前に信号通知される。最大25組の輝度フィルタ係数を信号通知することができる。ビットオーバーヘッドを低減するために、異なる分類のフィルタ係数をマージすることができる。また、参照ピクチャのGALF係数を記憶し、現在のピクチャのGALF係数として再利用することができる。現在のピクチャは、参照ピクチャのために記憶されたGALF係数を使用し、GALF係数信号通知を回避することを選択してもよい。この場合、1つの参照ピクチャへのインデックスのみが信号通知され、記憶されている示された参照ピクチャのGALF係数が現在のピクチャに継承される。
GALF時間的予測をサポートするために、GALFフィルタセットの候補リストが保持される。新しいシーケンスを復号化する開始時は、候補リストは空である。1つのピクチャを復号化した後、対応するフィルタのセットを候補リストに加えてもよい。候補リストのサイズが最大許容値(すなわち、現在のJEMでは6)に達すると、新しい1組のフィルタが、最も古いセットを復号化の順序に上書きし、すなわち、先入れ先出し(FIFO)規則を適用して候補リストを更新する。重複を回避するために、対応するピクチャがGALF時間的予測を使用しない場合、1つのセットのみをリストに追加することができる。時間的スケーラビリティをサポートするために、複数のフィルタセットの候補リストがあり、各候補リストは1つの時間層に関連付けられる。具体的には、時間層インデックス(TempIdx)が割り当てられた各アレイは、TempIdxが小さい、前回復号化されたピクチャのフィルタセットを構成してもよい。例えば、k番目の配列は、kに等しいTempIdxに関連付けられるように割り当てられ、それは、TempIdxがk以下のピクチャからのフィルタセットのみを含む。特定のピクチャを符号化した後、このピクチャに関連付けられたフィルタセットを使用して、等しいまたはより高いTempIdxに関連付けられた配列を更新する。
GALF係数の時間的予測は、信号通知オーバーヘッドを最小限に抑えるために、インター符号化されたフレームに使用される。イントラフレームの場合、時間的予測は利用できず、各クラスに1組の16個の固定フィルタが割り当てられる。固定フィルタの使用を示すために、各クラスのためのフラグが信号通知され、必要に応じて、選択された固定フィルタのインデックスが信号通知される。所与のクラスに対して固定フィルタを選択した場合でも、このクラスに対して適応フィルタf(k,l)の係数を送信することができ、この場合、再構成画像に適用されるフィルタの係数は両方の係数セットの合計となる。
輝度成分のフィルタリング処理は、CUレベルで制御することができる。GALFがCUの輝度成分に適用されるかどうかを示すために、1つのフラグが信号通知される。クロマ成分の場合、GALFが適用されるかどうかは、ピクチャレベルでのみ示す。
3.1.4 フィルタリング処理
デコーダ側において、1つのブロックに対してGALFが有効化されると、このブロック内の各サンプルR(i,j)がフィルタリングされ、その結果、以下に示すように、サンプル値R’(i,j)が得られる。ここで、Lは、フィルタ長を表し、fm,nは、フィルタ係数を表し、f(k,l)は、復号化されたフィルタ係数を表す。
Figure 2022527012000016
3.1.5 エンコーダ側フィルタパラメータの判定処理
図3には、GALFのための全体的なエンコーダ決定処理が示されている。各CUの輝度サンプルに対して、エンコーダは、GALFが適用され、かつ適切な信号通知フラグがスライスヘッダに含まれているか否かを決定する。クロマサンプルの場合、フィルタを適用する決定は、CUレベルではなくピクチャレベルに基づいて行われる。さらに、ピクチャのためのクロマGALFは、このピクチャのために輝度GALFが有効化されている場合にのみチェックされる。
4 VVCにおける形状変換に基づく適応ループフィルタの例
現在のVVCにおけるGALFの設計は、JEMにおける設計に比べ、以下のような大きな変化を有している。
1)適応フィルタ形状を除去する。輝度成分に対しては7×7フィルタ形状のみが許可され、クロマ成分に対しては5×5フィルタ形状のみが許可される。
2)ALFパラメータの時間的予測および固定フィルタからの予測は、両方とも除去される。
3)各CTUに対して、ALFが有効化されるかまたは無効化されるかどうかに関わらず、1ビットのフラグが信号通知される。
4)クラスインデックスの計算は、2×2の代わりに、4×4レベルで行われる。また、JVET-L0147で提案されているように、ALF分類のためのサブサンプリングされたラプラシアン計算方法が利用される。具体的には、1つのブロック内の各サンプルごとに水平/垂直/45対角線/135度勾配を計算する必要がない。その代わりに、1:2サブサンプリングが利用される。
5 AVS2における領域に基づく適応ループフィルタの例
ALFは、インループフィルタリングの最終段階である。この処理には2つの段階がある。第1の段階は、フィルタ係数の導出である。フィルタ係数をトレーニングするために、エンコーダは、再構成された輝度成分の画素を16個の領域に分類し、wiener-hopf方程式を使用して、カテゴリ毎に1つのフィルタ係数のセットをトレーニングし、元のフレームと再構成されたフレームとの間の平均二乗誤差を最小限に抑える。これらの16個のフィルタ係数のセット間の冗長性を低減するために、エンコーダは、ひずみ率性能に基づいてそれらを適応的にマージする。その最大値において、16個の異なるフィルタセットを輝度成分に割り当てることができ、1つのフィルタセットのみをクロミナンス成分に割り当てることができる。第2の段階は、フレームレベルおよびLCUレベルの両方を含むフィルタ決定である。まず、エンコーダは、フレームレベル適応ループフィルタリングを行うかどうかを決定する。フレームレベルALFがオンである場合、エンコーダは、LCUレベルALFを行うかどうかをさらに決定する。
5.1 フィルタ形状
AVS-2に適応されたフィルタ形状は、7×7の十字形であり、輝度成分およびクロマ成分の両方について図5に示すように、3×3の正方形を重ね合わせたものである。図5中の四角はそれぞれサンプルに対応する。従って、合計17個のサンプルを使用して、位置C8のサンプルのためのフィルタリングされた値を導出する。係数を送信するオーバーヘッドを考慮して、点対称フィルタは、9つの係数だけを残して、{C0,C1,・・・,C8}を利用し、これにより、フィルタリングにおけるフィルタ係数の数を半分に減らすと共に乗算の数を減らす。この点対称フィルタは、1つのフィルタリングされたサンプルの計算の半分を減らすこともでき、例えば、1つのフィルタリングされたサンプルに対して9回の乗算および14回の加算演算のみを行う。
5.2 領域別適応マージ
異なる符号化エラーに適応するために、AVS-2は、輝度成分のために、領域に基づく複数の適応ループフィルタを採用する。輝度成分は、図6に示すように、各基本領域が最大符号化ユニット(LCU)の境界に位置合わせされた16個の略等分したサイズの基本領域に分割され、領域毎に1つのウィーナーフィルタを導出する。より多くのフィルタを使用するほど、より多くの歪みが低減されるが、これらの係数を符号化するために使用されるビットは、フィルタの数とともに増加する。最良のレートひずみ率を実現するために、これらの領域を、同じフィルタ係数を共有する、より少なく、より大きい領域にマージすることができる。マージ処理を簡単にするために、各領域には、画像の前置相関に基づいて修正されたヒルベルト順に従ってインデックスが割り当てられる。ひずみ率コストに基づいて、インデックスが連続する2つの領域をマージすることができる。
領域間のマッピング情報は、デコーダに信号通知されるべきである。AVS-2において、基本領域の数はマージ結果を示すために使用され、フィルタ係数はその領域の順に従って順次圧縮される。例えば、{0,1}、{2,3,4}、{5,6,7,8,9}および左側の基本領域をそれぞれ1つの領域にマージする場合、このマージマップを表すために3つの整数のみを符号化する(即ち、2,3,5)。
5.3 副情報の信号通知
複数のスイッチフラグも使用される。シーケンス切替フラグadaptive_loop_filter_enableは、シーケンス全体に適応ループフィルタを適用するかどうかを制御するために使用するフラグである。画像切り替えフラグpicture_alf_enble[i]、は、対応するi番目の画像成分に対してALFを適用するかどうかを制御する。picture_alf_enble[i]が有効になっている場合にのみ、その色成分に対応するLCUレベルのフラグおよびフィルタ係数を送信する。LCUレベルフラグ、lcu_alf_enable[k]、は、対応するk番目のLCUに対してALFが有効化されるかどうかを制御し、スライスデータにインターリーブされる。異なるレベルの調整済みフラグの決定はすべて、ひずみ率コストに基づく。柔軟性が高いので、ALFは、符号化効率をさらに有意に向上させる。
いくつかの実施形態において、輝度成分のために、16個までのフィルタ係数のセットが存在可能である。
いくつかの実施形態において、各クロマ成分(CbとCr)に対して1つのフィルタ係数セットを送信してもよい。
6 VTM-4におけるGALF
VTM4.0において、適応ループフィルタのフィルタリング処理は、以下のように行う。
Figure 2022527012000017
ここで、サンプルI(x+i,y+j)は入力サンプルであり、O(x,y)はフィルタリングされた出力サンプル(即ち、フィルタ結果)であり、w(i,j)はフィルタ係数を表す。実際において、VTM4.0は、固定小数点精度計算のために整数演算を使用して実装される。
Figure 2022527012000018
ここで、Lはフィルタ長を表し、w(i,j)は固定小数点精度におけるフィルタ係数である。
7 非線形適応ループフィルタリング(ALF)
7.1 フィルタリングの再形成
式(11)は、符号化効率に影響を及ぼすことなく、以下の式で再定式化することができる。
Figure 2022527012000019
ここで、w(i,j)は、式(11)におけるフィルタ係数と同じである[例外w(0,0)、式(13)においては1に等しいが、式(11)において、
Figure 2022527012000020
に等しい]。
7.2 修正されたフィルタ
上記(13)のフィルタ式を使用することで、単純なクリッピング関数を使用して、近傍のサンプル値(I(x+i,y+j))が現在のサンプル値(I(x,y))のフィルタリングと異なり過ぎている場合に、その影響を低減することで、非線形性を容易に導入し、ALFをより効率的にする。
この提案において、ALFフィルタは、以下のように修正される。
Figure 2022527012000021
ここで、K(d,b)=min(b,max(-b,d))はクリッピング関数であり、k(i,j)はクリッピングパラメータであり、これは(i,j)フィルタ係数に依存する。エンコーダは、最適化を行い、最良のk(i,j)を見出す。
JVET-N0242の実装形態において、1つのALFフィルタごとにクリッピングパラメータk(i,j)を指定し、1つのフィルタ係数ごとに1つのクリッピング値を信号通知する。これは、1つの輝度フィルタ当たりビットストリームにおいて、最大12個のクリッピング値を信号通知することができ、クロマフィルタに対しては最大6個のクリッピング値を信号通知することができることを意味する。
信号通知コストおよびエンコーダの複雑性を制限するために、クリッピング値の評価は、小さなセットの可能な値に限定する。本提案では、INTERおよびINTRAタイルグループに対して同じ4つの固定値のみを使用する。
局所的な差の分散は、輝度の場合、クロマの場合よりも大きいことが多いので、輝度フィルタおよびクロマフィルタの2つの異なるセットを使用する。各セットに最大サンプル値(ここでは、10ビットのビット深度の場合、1024)を含め、必要でない場合、クリッピングを無効にすることができる。
JVET-N0242試験に使用したクリッピング値のセットを表2に示す。4つの値は、対数ドメインにおいて、輝度についてのサンプル値(10ビットで符号化される)の全範囲を、およびクロマについての4~1024の範囲をほぼ等分することによって選択された。
より正確には、クリッピング値の輝度テーブルは、以下の式によって得られた。
Figure 2022527012000022
同様に、クリッピング値のクロマテーブルは、以下の式に従って取得される。
Figure 2022527012000023
Figure 2022527012000024
選択されたクリッピング値は、上記表2のクリッピング値のインデックスに対応するゴロム符号化方式を使用して、「alf_data」構文要素に符号化される。この符号化方式は、フィルタインデックスの符号化方式と同じである。
8 JVET-N0415におけるCTUに基づくALF
スライスレベルの時間的フィルタ。 VTM4には適応パラメータセット(APS)が採用された。各APSは、1つのセットの信号通知されたALFフィルタを含み、最大32個のAPSがサポートされる。本提案では、スライスレベルの時間的フィルタを試験する。1つのタイルグループは、APSからのALF情報を再利用することにより、オーバーヘッドを低減することができる。APSは、先入れ先出し(FIFO)バッファとして更新される。
CTBに基づくALF。 輝度成分のために、ALFが輝度CTBに適用される場合、16個の固定された、5個の時間的な、または1つの信号通知されたフィルタセットの中からの選択が示される。フィルタセットインデックスのみが信号通知される。1つのスライスに対して、25個のフィルタからなる1つの新しいセットのみを信号通知することができる。1つのスライスに対して新しいセットが信号通知された場合、同じスライス内のすべての輝度CTBはそのセットを共有する。固定フィルタセットを使用して新しいスライスレベルフィルタセットを予測することができ、これを輝度CTBの候補フィルタセットとして使用できる。フィルタの数は合計64個である。
クロマ成分の場合、ALFをクロマCTBに適用する時に、1つのスライスに対して新しいフィルタを信号通知する場合、CTBはこの新しいフィルタを使用し、そうでない場合、時間スケーラビリティ制約を満たす最も新しい時間的クロマフィルタを適用する。
スライスレベルの時間的フィルタとして、APSは、先入れ先出し(FIFO)バッファとして更新される。
仕様
JVET-K1001-v6に基づいて、{{fixed filter}},[[temporal filters]]、[[temporal filters]]および((CTB-based filter index))を使用して、すなわち、2重大括弧、2重角括弧、および2重丸括弧を使って修正する。
7.3.3.2 適応ループフィルタデータ構文
Figure 2022527012000025
7.3.4.2 符号化ツリーユニット構文
Figure 2022527012000026
7.4.4.2 適応ループフィルタデータ意味論
((alf_signal_new_filter_luma))が1である場合、新しい輝度フィルタセットが信号通知されることを示す。alf_signal_new_filter_lumaが0である場合、新しい輝度フィルタセットが信号通知されないことを示す。存在しない場合、0である。
{{alf_luma_use_fixed_filter_flag}}が1である場合、適応ループフィルタに信号通知するのに固定フィルタセットを使用することを示す。alf_luma_use_fixed_filter_flagが0である場合、適応ループフィルタを信号通知するのに固定フィルタ使用ないことを示す。
{{alf_luma_fixed_filter_set_index}}は、固定フィルタセットインデックスを示す。それは0...15であり得る。
{{alf_luma_fixed_filter_usage_pattern}}が0である場合、新しいフィルタすべてが固定フィルタを使用することを示す。alf_luma_fixed_filter_usage_patternが1である場合、新しいフィルタのうちいくつかが、固定フィルタを使用し、それ以外は使用しないことを示す。
{{alf_luma_fixed_filter_usage[i]}}が1である場合、i番目のフィルタは固定フィルタを使用することを示す。alf_luma_fixed_filter_usage[i]が0である場合、i番目のフィルタは、固定フィルタを使用しないことを示す。存在しない場合、1と推測される。
((alf_signal_new_filter_chroma))が1である場合、新しいクロマフィルタが信号通知されることを示す。alf_signal_new_filter_chromaが0である場合、新しいクロマフィルタが信号通知されないことを示す。
(((alf_num_available_temporal_filter_sets_luma))は、現在のスライスに使用できる利用可能な時間的フィルタセットの数を示す。この数は0...5であり得る。存在しない場合、0である。
変数alf_num_available_filter_setsは、16+alf_signal_new_filter_luma+alf_num_available_temporal_filter_sets_lumaとして導出される。

((alf_signal_new_filter_lumaが1の場合は、下記の処理))
sigFiltIdx=0..alf_luma_num_filters_signalled_minus1,j=0..11を有する変数フィルタCoefficients[sigFiltIdx][j]は、次のように初期化される。
filterCoefficients[sigFiltIdx][j]=alf_luma_coeff_delta_abs[sigFiltIdx][j]*(1-2*alf_luma_coeff_delta_sign[sigFiltIdx][j]) (7-50)
alf_luma_coeff_delta_prediction_flagが1である場合、sigFiltIdx=1..alf_luma_num_filters_signalled_minus1およびj=0..11を有するfilterCoefficients[sigFiltIdx][j]は、次のように修正される。
filterCoefficients[sigFiltIdx][j]+=filterCoefficients[sigFiltIdx-1][j] (7-51)
filtIdx=0..NumAlfFilters-1,j=0..11の要素AlfCoeff[filtIdx][j]を有する輝度フィルタ係数AlfCoeffは、以下のように導出される。
AlfCoeff[filtIdx][j]=filterCoefficients[alf_luma_coeff_delta_idx[filtIdx]][j] (7-52)
{{alf_luma_use_fixed_filter_flagが1で、alf_luma_fixed_filter_usage[filtidx]が1の場合、以下が適用される。
AlfCoeff[filtIdx][j]=AlfCoeff[filtIdx][j]+AlfFixedFilterCoeff[AlfClassToFilterMapping[alf_luma_fixed_filter_index][filtidx]][j]}}
filtIdx=0..NumAlfFilters-1に対する最後のフィルタ係数AlfCoeff[filtIdx][12]は、以下のように導出される。
AlfCoeff[filtIdx][12]=128-Σ(AlfCoeff[filtIdx][k]<<1),with k=0..11 (7-53)
filtIdx=0..NumAlfFilters-1,j=0..11の場合、AlfCoeff[filtIdx][j]の値は、-2~2-1の範囲内とし、AlfCoeff[filtIdx][12]の値は、0~2-1の範囲内とすることが、ビットストリーム適合性の要件である。

((輝度フィルタ係数))filtSetIdx=0..15、filtSetIdx=0..NumAlfFilters-1、j=0..12の場合、要素AlfCoeffLumaAll[filtSetIdx][filtIdx][j]を有するAlfCoeffLumaAllは、下記のようにして導出される。
AlfCoeffLumaAll[filtSetIdx][filtIdx][j]={{AlfFixedFilterCoeff[AlfClassToFilterMapping[}}filtSetIdx{{][filtidx]][j]}}

((輝度フィルタ係数))filtSetIdx=16,filtSetIdx=0..NumAlfFilters-1およびj=0..12を有するAlfCoeffLumaAll with elements AlfCoeffLumaAll[filtSetIdx][filtIdx][j]は次のようにして導出される。
変数closest_temporal_indexは、-1に初期化される。Tidは、現在のスライスの時間層インデックスである。
((alf_signal_new_filter_lumaが1ならば))
AlfCoeffLumaAll[16][filtIdx][j]=AlfCoeff[filtIdx][j]
((そうでない場合は、以下の処理が呼び出される))。
for(i=Tid;i>=0;i--)

for(k=0;k<temp_size_L;k++)

if(tempTid_L[k]==i)

closest_temporal_index is set as k;
break;



AlfCoeffLumaAll[16][filtIdx][j]=Temp[closest_temporal_index][filtIdx][j]

((輝度フィルタ係数))filtSetIdx=17..alf_num_available_filter_sets-1,filtSetIdx=0..NumAlfFilters-1 and j=0..12の場合、要素AlfCoeffLumaAll[filtSetIdx][filtIdx][j],を有するAlfCoeffLumaAllは、次のように導出される。
i=17;
for(k=0;k<temp_size_L and i<alf_num_available_filter_sets;j++)

(もしtempTid_L[k]<=Tid、かつkがclosest_temporal_indexに等しくない場合)

AlfCoeffLumaAll[i][filtIdx][j]=Temp[k][filtIdx][j];
i++;




{{AlfFixedFilterCoeff}}[64][13]=

{0,0,2,-3,1,-4,1,7,-1,1,-1,5,112},
{0,0,0,0,0,-1,0,1,0,0,-1,2,126},
{0,0,0,0,0,0,0,1,0,0,0,0,126},
{0,0,0,0,0,0,0,0,0,0,-1,1,128},
{2,2,-7,-3,0,-5,13,22,12,-3,-3,17,34},
{-1,0,6,-8,1,-5,1,23,0,2,-5,10,80},
{0,0,-1,-1,0,-1,2,1,0,0,-1,4,122},
{0,0,3,-11,1,0,-1,35,5,2,-9,9,60},
{0,0,8,-8,-2,-7,4,4,2,1,-1,25,76},
{0,0,1,-1,0,-3,1,3,-1,1,-1,3,122},
{0,0,3,-3,0,-6,5,-1,2,1,-4,21,92},
{-7,1,5,4,-3,5,11,13,12,-8,11,12,16},
{-5,-3,6,-2,-3,8,14,15,2,-7,11,16,24},
{2,-1,-6,-5,-2,-2,20,14,-4,0,-3,25,52},
{3,1,-8,-4,0,-8,22,5,-3,2,-10,29,70},
{2,1,-7,-1,2,-11,23,-5,0,2,-10,29,78},
{-6,-3,8,9,-4,8,9,7,14,-2,8,9,14},
{2,1,-4,-7,0,-8,17,22,1,-1,-4,23,44},
{3,0,-5,-7,0,-7,15,18,-5,0,-5,27,60},
{2,0,0,-7,1,-10,13,13,-4,2,-7,24,74},
{3,3,-13,4,-2,-5,9,21,25,-2,-3,12,24},
{-5,-2,7,-3,-7,9,8,9,16,-2,15,12,14},
{0,-1,0,-7,-5,4,11,11,8,-6,12,21,32},
{3,-2,-3,-8,-4,-1,16,15,-2,-3,3,26,48},
{2,1,-5,-4,-1,-8,16,4,-2,1,-7,33,68},
{2,1,-4,-2,1,-10,17,-2,0,2,-11,33,74},
{1,-2,7,-15,-16,10,8,8,20,11,14,11,14},
{2,2,3,-13,-13,4,8,12,2,-3,16,24,40},
{1,4,0,-7,-8,-4,9,9,-2,-2,8,29,54},
{1,1,2,-4,-1,-6,6,3,-1,-1,-3,30,74},
{-7,3,2,10,-2,3,7,11,19,-7,8,10,14},
{0,-2,-5,-3,-2,4,20,15,-1,-3,-1,22,40},
{3,-1,-8,-4,-1,-4,22,8,-4,2,-8,28,62},
{0,3,-14,3,0,1,19,17,8,-3,-7,20,34},
{0,2,-1,-8,3,-6,5,21,1,1,-9,13,84},
{-4,-2,8,20,-2,2,3,5,21,4,6,1,4},
{2,-2,-3,-9,-4,2,14,16,3,-6,8,24,38},
{2,1,5,-16,-7,2,3,11,15,-3,11,22,36},
{1,2,3,-11,-2,-5,4,8,9,-3,-2,26,68},
{0,-1,10,-9,-1,-8,2,3,4,0,0,29,70},
{1,2,0,-5,1,-9,9,3,0,1,-7,20,96},
{-2,8,-6,-4,3,-9,-8,45,14,2,-13,7,54},
{1,-1,16,-19,-8,-4,-3,2,19,0,4,30,54},
{1,1,-3,0,2,-11,15,-5,1,2,-9,24,92},
{0,1,-2,0,1,-4,4,0,0,1,-4,7,120},
{0,1,2,-5,1,-6,4,10,-2,1,-4,10,104},
{3,0,-3,-6,-2,-6,14,8,-1,-1,-3,31,60},
{0,1,0,-2,1,-6,5,1,0,1,-5,13,110},
{3,1,9,-19,-21,9,7,6,13,5,15,21,30},
{2,4,3,-12,-13,1,7,8,3,0,12,26,46},
{3,1,-8,-2,0,-6,18,2,-2,3,-10,23,84},
{1,1,-4,-1,1,-5,8,1,-1,2,-5,10,112},
{0,1,-1,0,0,-2,2,0,0,1,-2,3,124},
{1,1,-2,-7,1,-7,14,18,0,0,-7,21,62},
{0,1,0,-2,0,-7,8,1,-2,0,-3,24,88},
{0,1,1,-2,2,-10,10,0,-2,1,-7,23,94},
{0,2,2,-11,2,-4,-3,39,7,1,-10,9,60},
{1,0,13,-16,-5,-6,-1,8,6,0,6,29,58},
{1,3,1,-6,-4,-7,9,6,-3,-2,3,33,60},
{4,0,-17,-1,-1,5,26,8,-2,3,-15,30,48},
{0,1,-2,0,2,-8,12,-6,1,1,-6,16,106},
{0,0,0,-1,1,-4,4,0,0,0,-3,11,112},
{0,1,2,-8,2,-6,5,15,0,2,-7,9,98},
{1,-1,12,-15,-7,-2,3,6,6,-1,7,30,50},
};
{{AlfClassToFilterMapping}}[16][25]=

{8,2,2,2,3,4,53,9,9,52,4,4,5,9,2,8,10,9,1,3,39,39,10,9,52},
{11,12,13,14,15,30,11,17,18,19,16,20,20,4,53,21,22,23,14,25,26,26,27,28,10},
{16,12,31,32,14,16,30,33,53,34,35,16,20,4,7,16,21,36,18,19,21,26,37,38,39},
{35,11,13,14,43,35,16,4,34,62,35,35,30,56,7,35,21,38,24,40,16,21,48,57,39},
{11,31,32,43,44,16,4,17,34,45,30,20,20,7,5,21,22,46,40,47,26,48,63,58,10},
{12,13,50,51,52,11,17,53,45,9,30,4,53,19,0,22,23,25,43,44,37,27,28,10,55},
{30,33,62,51,44,20,41,56,34,45,20,41,41,56,5,30,56,38,40,47,11,37,42,57,8},
{35,11,23,32,14,35,20,4,17,18,21,20,20,20,4,16,21,36,46,25,41,26,48,49,58},
{12,31,59,59,3,33,33,59,59,52,4,33,17,59,55,22,36,59,59,60,22,36,59,25,55},
{31,25,15,60,60,22,17,19,55,55,20,20,53,19,55,22,46,25,43,60,37,28,10,55,52},
{12,31,32,50,51,11,33,53,19,45,16,4,4,53,5,22,36,18,25,43,26,27,27,28,10},
{5,2,44,52,3,4,53,45,9,3,4,56,5,0,2,5,10,47,52,3,63,39,10,9,52},
{12,34,44,44,3,56,56,62,45,9,56,56,7,5,0,22,38,40,47,52,48,57,39,10,9},
{35,11,23,14,51,35,20,41,56,62,16,20,41,56,7,16,21,38,24,40,26,26,42,57,39},
{33,34,51,51,52,41,41,34,62,0,41,41,56,7,5,56,38,38,40,44,37,42,57,39,10},
{16,31,32,15,60,30,4,17,19,25,22,20,4,53,19,21,22,46,25,55,26,48,63,58,55},};

((alf_signal_new_filter_chromaが1である場合、次の処理)。
j=0..5の場合、クロマフィルタ係数AlfCoeff[j]は、以下のように導出される。
AlfCoeff[j]=alf_chroma_coeff_abs[j]*(1-2*alf_chroma_coeff_sign[j]) (7-57)
j=6の場合の最後のフィルタ係数は、以下のように導出される。
AlfCoeff[6]=128-Σ(AlfCoeff[k]<<1),with k=0..5 (7-58)
filtIdx=0..NumAlfFilters-1,j=0..5の場合、AlfCoeff[j]の値は、-2~2-1の範囲内とし、AlfCoeff[6]の値は、0~2-1の範囲内とすることが、ビットストリーム適合性の要件である。
そうでない場合、(((alf_signal_new_filter_chroma is 0)))以下が呼び出される。
for(i=Tid;i>=0;i--)

for(k=0;k<temp_size_C;k++)

if(tempTid_C[k]==i)

closest_temporal_index is set as k;
break;



j=0..6の場合、クロマフィルタ係数AlfCoeff[j]は、以下のように導出される。
AlfCoeff[j]=Temp[closest_temporal_index][j]

7.4.5.2 符号化ツリーユニット構文
((alf_luma_ctb_filter_set_index[xCtb>>Log2CtbSize][yCtb>>Log2CtbSize]))は、位置(xCtb,yCtb))における輝度CTBのフィルタセットインデックスを指定する。
(((alf_use_new_filter))が1である場合、alf_luma_ctb_filter_set_index[xCtb>>Log2CtbSize][yCtb>>Log2CtbSize]は16であることを示す。alf_use_new_filterが0である場合、alf_luma_ctb_filter_set_index[xCtb>>Log2CtbSize][yCtb>>Log2CtbSize]は16に等しくないことを示す。
((alf_use_fixed_filter))が1である場合、固定フィルタセットの1つを使用することを示し、alf_use_fixed_filterが0である場合、現在の輝度CTBは固定フィルタセットを使用しないことを示す。
(((alf_fixed_filter_index))は、固定フィルタセットのインデックスを示し、このインデックスは0~15までとすることができる。
(((alf_temporal_index))は、時間的フィルタセットインデックスを示し、これは、0からalf_num_available_temporal_filter_sets_luma-1とすることができる。

[[8.5.1 一般]]
1. sps_alf_enabled_flagが1である場合、以下が適用される。
- [[8.5.4.5項に規定された時間的フィルタ更新処理が呼び出される。]]
- 8.5.4.1項で規定された適応ループフィルタ処理は、再構成されたピクチャサンプルアレイS、SCbおよびSCrを入力とし、サンプル適応オフセット後の修正された再構成されたピクチャサンプルアレイS’、S’CbおよびS’Crが、出力として呼び出される。
- 配列S’、S’Cb、S’Crは、それぞれ配列S、SCb、SCr(復号化されたピクチャを表す)に割り当てられている。
- [[8.5.4.6項で規定された時間的フィルタ更新処理が呼び出される。]]


((8.5.4.2 輝度サンプルのための符号化ツリーブロックフィルタリング処理))
- filtIdx[x][y]で指定されたフィルタに対応する輝度フィルタ係数の配列f[j]は,j=0..12として以下のように導出される。
f[j]=((AlfCoeffLumaAll))[alf_luma_ctb_filter_set_index[xCtb>>Log2CtbSize][yCtb>>Log2CtbSize]]][filtIdx[x][y]][j] (8-732)
[[8.5.4.5 時間的フィルタ更新]]
以下の条件のいずれかが真である場合、
- 現在のピクチャはIDRピクチャである。
- 現在のピクチャはBLA画像である。
- 復号化の順序では、現在のピクチャは、POCが前回の復号化されたIRAPピクチャのPOCよりも大きい1つ目のピクチャ、すなわち先頭ピクチャの後ろかつ後続ピクチャの後ろにあるピクチャである。

次に、temp_size_Lおよびtemp_size_Cを0に設定する。
[[8.5.4.6 時間的フィルタの更新]]
slice_alf_enabled_flagが1であり、alf_signal_new_filter_lumaが1である場合、以下が適用される。
輝度時間的フィルタバッファサイズ、temp_size_L<5の場合、temp_size_L=temp_size_L+1である。
i=temp_size_L-1...1,j=0...NumAlfFilters-1,k=0...12の場合、Temp[i][j][k]は、次のように更新される。
Temp[i][j][k]=Temp[i-1][j][k]
j=0...NumAlfFilters-1、k=0..12の場合、Temp[0][j][k]は、次のように更新される。
Temp[0][j][k]=AlfCoeff[j][k]
i=temp_size_L-1...1の場合、TempTid_L[i]は、次のように更新される。
TempTid_L[i]=TempTid_L[i-1]
TempTid_L[0]を現在のスライスの時間層インデックスTidとして設定する。

alf_chroma_idxが0でなく、alf_signal_new_filter_chromaが1の場合、以下が適用される。
i=temp_size_c-1...1、j=0...6のTemp[i][j]は、次のように更新される。
Temp[i][j]=Temp[i-1][j]
j=0...6の場合、Temp[0][j]は、次のように更新される。
Temp[0][j]=AlfCoeff[j]
i=temp_size_C-1...1の場合、TempTid_C[i]は、次のように更新される。
TempTid_C[i]=TempTid_C[i-1]
TempTid_C[0]を現在のスライスのTidとして設定する。
Figure 2022527012000027
Figure 2022527012000028
9. JVET-M0427におけるインループリシェイプ(ILR)
インループリシェイプ(ILR)の基本的な考えは、元の(第1のドメインにおける)信号(予測/再構成信号)を第2のドメイン(リシェイプされたドメイン)に変換することである。
インループ輝度リシェイパは、1対のルックアップテーブル(LUT)として実装されるが、信号通知されたLUTから他方を計算することができるので、2つのLUTのうちの一方のみを信号通知する必要がある。各LUTは、1次元10ビット1024エントリマッピングテーブル(1D-LUT)である。1つのLUTは、フォワードLUT、FwdLUTであり、これは、入力輝度コード値Yを変更された値Y:Y=FwdLUT[Y]にマッピングする。他方のLUTは、逆LUT、InvLUTであり、変更されたコード値YをY^:Y^=InvLUT[Y]にマッピングする。(Y^はYの再構成値を表す)。
9.1 PWLモデル
概念的には、区分線形(PWL)は、以下のように実装される。
x1、x2を2つの入力支点とし、y1、y2を1つのピースに対応する出力支点とする。x1とx2との間の任意の入力値xに対する出力値yは、以下の式によって補間することができる
y=((y2-y1)/(x2-x1))*(x-x1)+y1
固定点実装では、この式は、以下のように書き換えることができる。
y=((m*x+2FP_PREC-1)>>FP_PREC)+c
ここで、mはスカラーであり、cはオフセットであり、FP_PRECは精度を規定するための定数である。
なお、CE-12ソフトウェアでは、PWLモデルは、1024エントリのFwdLUTマッピングテーブルおよびInvLUTマッピングテーブルを予め計算するために使用されるが、PWLモデルは、LUTを予め計算することなく、実装において同一のマッピング値をオンザフライで計算することも可能にする。
9.2 第4回VVC協議におけるCE12-2のテスト
9.2.1 輝度のリシェイプ
インループ輝度リシェイプのテスト2(すなわち、提案におけるCE-12ー2)は、より複雑性低いパイプラインを提供し、且つインタースライス再構成におけるブロック単位のイントラ予測のための復号化待ち時間を排除する。イントラ予測は、インタースライスおよびイントラスライスの両方のために、リシェイプされたドメインにおいて行われる。
イントラ予測は、スライスタイプにかかわらず、常にリシェイプされたドメインで行われる。このような構成によれば、前回のTU再構成を行った直後にイントラ予測を開始することができる。このような構成は、スライスに依存する代わりに、イントラモードのための統一された処理を提供することもできる。図7は、CE12-2の方式に基づく復号化処理を示すブロック図である。
CE12-2は、16個の区分線形(PWL)モデルをCE12-1の32個のPWLモデルの代わりに使用して輝度およびクロマ残差スケーリングを行ってもよい。
CE-12ー2におけるインループ輝度リシェイパを用いたインタースライス再構成(薄い影が付けられたブロックは、リシェイプされたドメインにおける信号を示す。輝度残差、輝度内予測、および輝度内再構成)
9.2.2 輝度依存クロマ残差スケーリング
輝度依存クロマ残差スケーリングは、固定小数点整数演算で実装される乗算処理である。クロマ残差スケーリングは、輝度信号のクロマ信号との相互作用を補償する。TUレベルでクロマ残差スケーリングを適用する。具体的には、対応する輝度予測ブロックの平均値を利用する。
この平均値は、PWLモデルにおけるインデックスを特定するために使用される。このインデックスは、スケーリング係数cScaleInvを特定する。クロマ残差にその数を乗算する。
なお、クロマスケーリング係数は、再構成された輝度値ではなく、フォワードマップされた予測輝度値から算出される。
9.2.3 ILR副情報の信号通知
パラメータは(現在)タイルグループヘッダ(ALFに類似)で送信される。これらは、40~100ビットを要すると報告されている。
以下の規格は、JVET-L1001のバージョン9に基づいている。追加された構文は黄色で強調表示されている。
7.3.2.1におけるシーケンスパラメータセットRBSP構文
Figure 2022527012000029
7.3.3.1におけるタイルグループヘッダ構文
Figure 2022527012000030
新しい構文表タイルグループリシェイパを追加する。
Figure 2022527012000031
{{一般的に、シーケンスパラメータセットRBSPの意味論では、次の意味論を追加する。}}
sps_reshaper_enabled_flagが1と等しい場合は、符号化映像シーケンス(CVS)においてリシェイパが使用されていることを規定している。sps_reshaper_enabled_flagが0と等しい場合は、CVSにおいてリシェイパが使用されていないことを規定している。

{{タイルグループヘッダ構文において、以下の意味論を追加する。}}
tile_group_reshaper_model_present_flagが1と等しい場合は、tile_group_reshaper_model()がタイルグループ内に存在することを規定している。tile_group_reshaper_model_present_flagが0と等しい場合は、tile_group_reshaper_model()がタイルグループヘッダに存在しないことを規定している。tile_group_reshaper_model_present_flagが存在しない場合は、0に等しいと推論される。
tile_group_reshaper_enabled_flagが1と等しい場合は、現在のタイルグループに対してリシェイパが有効になっていることを規定している。tile_group_reshaper_enabled_flagが0と等しい場合は、現在のタイルグループに対してリシェイパが有効になっていないことを規定している。tile_group_reshaper_enable_flagが存在しない場合、0であると推論される。
tile_group_reshaper_chroma_residual_scale_flagが1と等しい場合は、現在のタイルグループに対してクロマ残差スケーリングを有効であることを規定している。tile_group_reshaper_chroma_residual_scale_flagが0と等しい場合は、現在のタイルグループに対してクロマ残差スケーリングが有効でないことを規定している。tile_group_reshaper_chroma_residual_scale_flagが存在しない場合は、0であると推測される。

{{tile_group_reshaper_model()構文を追加する}}
reshape_model_min_bin_idxは、最小のビン(またはピース)インデックスを、リシェイパ構築処理に使用するように規定している。reshape_model_min_bin_idxの値が0~MaxBinIdxの範囲内にあるものとする。MaxBinIdxの値は15と等しいとする。
reshape_model_delta_max_bin_idxは、最大許容ビン(またはピース)インデックスMaxBinIdxから最大ビンインデックスを引いたものが、リシェイパ構築処理で使用されることを規定している。reshape_model_max_bin_idxの値は、MaxBinIdx-reshape_model_delta_max_bin_idxに等しく設定される。
reshaper_model bin_delta_abs_cw_prec_minus1+1は、構文reshape_model_bin_delta_abs_CW[i]の表現に使用するビット数を規定している。
reshape_model_bin_delta_abs_CW[i]は、i番目のビンの絶対デルタコード名値を規定する。
reshaper_model_bin_delta_sign_CW_flag[i]は、reshape_model_bin_delta_abs_CW[i]のサインを次のように記述する。
- reshape_model_bin_delta_sign_CW_flag[i]が0と等しい場合、対応する変数RspDeltaCW[i]は正の値である。
- そうでない場合(reshape_model_bin_delta_sign_CW_flag[i]が0と等しくない)、対応する変数RspDeltaCW[i]は負の値である。
reshape_model_bin_delta_sign_CW_flag[i]が存在しない場合、0に等しいと推測される。
変数RspDeltaCW[i]=(1 2*reshape_model_bin_delta_sign_CW[i])*reshape_model_bin_delta_abs_CW[i];
変数RspCW[i]は、以下のステップとして導出される。
変数OrgCWは、(1<<BitDepth)/(MaxBinIdx+1)に等しく設定される。
- If reshaper_model_min_bin_idx<=i<=reshaper_model_max_bin_idx
RspCW[i]=OrgCW+RspDeltaCW[i].
- そうでない場合、RspCW[i]=0である。
BitDepthの値が10に等しい場合、RspCW[i]の値は、32~2*OrgCW_1の範囲内にくる。
iが0~MaxBinIdx+1の範囲にある変数InputPivot[i]は、以下のように導出される。
InputPivot[i]=i*OrgCW
iが0~MaxBinIdx+1の範囲にあり、変数ScaleCoef[i]およびInvScaleCoeff[i]がそれぞれ0~MaxBinIdxの範囲にあり、iが0~MaxBinIdxの範囲にある変数ReshapePivot[i]は、以下のように導出される。
shiftY=14
ReshapePivot[0]=0;
for(i=0;i<=MaxBinIdx;i++){
ReshapePivot[i+1]=ReshapePivot[i]+RspCW[i]
ScaleCoef[i]=(RspCW[i]*(1<<shiftY)+(1<<(Log2(OrgCW)-1)))>>(Log2(OrgCW))
if(RspCW[i]==0)
InvScaleCoeff[i]=0
else
InvScaleCoeff[i]=OrgCW*(1<<shiftY)/RspCW[i]


iが0~MaxBinIdxの範囲内にある変数ChromaScaleCoef[i]は、以下のように導出される。
ChromaResidualScaleLut[64]={16384,16384,16384,16384,16384,16384,16384,8192,8192,8192,8192,5461,5461,5461,5461,4096,4096,4096,4096,3277,3277,3277,3277,2731,2731,2731,2731,2341,2341,2341,2048,2048,2048,1820,1820,1820,1638,1638,1638,1638,1489,1489,1489,1489,1365,1365,1365,1365,1260,1260,1260,1260,1170,1170,1170,1170,1092,1092,1092,1092,1024,1024,1024,1024};

shiftC=11
- if(RspCW[i]==0)
ChromaScaleCoef[i]=(1<<shiftC)
- Otherwise(RspCW[i]!=0),ChromaScaleCoef[i]=ChromaResidualScaleLut[RspCW[i]>>1]
9.2.4 ILRの使用方法
エンコーダ側では、まず、各ピクチャ(またはタイルグループ)をリシェイプされたドメインに変換する。そして、すべての符号化処理は、リシェイプされたドメインで行われる。イントラ予測の場合、近傍のブロックはリシェイプされたドメインにあり、インター予測の場合、まず、参照ブロック(復号化ピクチャバッファからの元のドメインから生成される)をリシェイプされたドメインに変換する。そして、残差を生成し、ビットストリームに符号化する。
ピクチャ全体(またはタイルグループ)の符号化/復号化が終わった後、リシェイプされたドメインのサンプルを元のドメインに変換し、次いで、非ブロック化フィルタおよび他のフィルタを適用する。
以下の場合、予測信号へのフォワードリシェイプは無効化される。
○ 現在のブロックはイントラ符号化されている
○ 現在のブロックはCPR(現在のピクチャを参照し、別名イントラブロックコピー、IBC)として符号化される。
○ 現在のブロックは、結合されたインターイントラモード(CIIP)として符号化され、イントラ予測ブロックのためにフォワードリシェイプは無効化される。
10 双方向オプティカルフロー(BDOF)
10.1 BIOの概要と分析
BIOにおいて、まず、動き補償を行い、現在のブロックの(各予測方向における)第1の予測を生成する。第1の予測は、ブロック内の各サブブロックまたは画素の空間的勾配、時間的勾配、およびオプティカルフローを導出するために用いられ、これらを使用して第2の予測、例えば、サブブロックまたは画素の最終予測を生成する。以下、その詳細を説明する。
双方向オプティカルフロー(BIO)方法は、双方向予測のためにブロック単位の動き補償の上で実行されるサンプル単位の動きの改良である。いくつかの実施例において、サンプルレベルの動きの改良は、シグナリングを用いない。
ブロック動き補償後の基準k(k=0,1)からの輝度をI(k)とし、
Figure 2022527012000032
をそれぞれI(k)勾配の水平成分、垂直成分とする。オプティカルフローが有効であると仮定すると、動きベクトルフィールド(v,v)は、以下の式によって求められる。
Figure 2022527012000033
このオプティカルフロー方程式を各サンプルの動き軌跡に対してエルミート補間によって組み合わせることにより、両端にある両機能値I(k)および導関数
Figure 2022527012000034
に合致する固有の3次多項式が得られる。t=0におけるこの多項式の値は、BIO次式のような、BIO予測となる。
Figure 2022527012000035
図8は、双方向オプティカルフロー(BIO)法におけるオプティカルフローの軌跡の一例を示す。ここで、τおよびτは、参照フレームまでの距離を示す。距離τ,τは、RefおよびRefのPOC:τ=POC(current)-POC(Ref),τ=POC(current)-POC(Ref)に基づいて算出される。両方の予測が同じ時間方向から来たものである場合(両方とも過去から来たものであるか、または両方とも将来から来たものである場合)、符号が異なる(即ち、τ・τ<0)。このケースでは、予測が同じ時刻(例えば、τ≠τ)からのものでない場合、BIOが適用される。
動きベクトルフィールド(v,v)は、点AおよびBにおける値の差Δを最小化することによって判定される。図8は、動き軌跡と参照フレーム平面の交差における例を示す。モデルは、Δに対するローカルテーラー展開の第1の線形項のみを以下のように使用する。
Figure 2022527012000036
上記式におけるすべての値は、(i’,j’)として表されるサンプル位置に依存する。動きがローカル周辺エリアにおいて一貫していると仮定すると、Δは、現在の予測点(i,j)を中心とする(2M+1)×(2M+1)個の正方形窓Ωの内側で最小化することができる。式中、Mは2に等しい。
Figure 2022527012000037
この最適化問題に対して、JEMは、まず垂直方向に最小化し、次に水平方向に最小化する簡単なアプローチを使用する。その結果、以下のようになる。
Figure 2022527012000038
Figure 2022527012000039
ここで
Figure 2022527012000040
ゼロまたは非常に小さな数値での除算を回避するために、式(15)および式(16)において、正則化パラメータrおよびmを導入する。式中、
Figure 2022527012000041
Figure 2022527012000042
ここで、dは映像サンプルのビット深度である。
バイオメモリアクセスを通常の双方向予測動き補償と同じにするために、現在のブロック内の位置について、すべての予測値および勾配値
Figure 2022527012000043
を計算する。図9Aは、ステップ900の外部におけるアクセス位置を例示している。図9Aに示すとおり、式(17)において、予測ブロックの境界上の現在の予測点を中心とする(2M+1)×(2M+1)個の正方形窓Ωは、ブロックの外側の位置にアクセスする必要がある。JEMにおいて、ブロックの外部の
Figure 2022527012000044
の値はブロックの内部で最も近い利用可能な数値に等しくなるように設定される。例えば、これは、図9Bに示すように、パディング領域901として実装することができる。
BIOを用いることで、サンプル毎に動きフィールドを改良することができる。計算の複雑性を低減するために、JEMではブロックに基づくBIOの設計が用いられている。動きの改良は、4×4ブロックに基づいて計算することができる。ブロックに基づくBIOにおいて、4×4ブロックにおけるすべてのサンプルの、式(17)におけるsの値を統合し、次いで、この統合したsの値を使用して、4×4ブロックのためのBIO動きベクトルオフセットを導出する。具体的には、ブロックに基づくBIO導出には、以下の式を用いることができる。
Figure 2022527012000045
式中、bは、予測ブロックのk番目の4×4ブロックに属するサンプルのセットを表し、式(15)および式(16)におけるsを((sn,bk)>>4)に置き換え、関連する動きベクトルオフセットを導出する。
シナリオによってはBIOのMVレジメンがノイズや不規則な動きで信頼できない場合がある。従って、BIOにおいて、MVレジメンの大きさは閾値にクリップされる。閾値は、現在のピクチャの参照ピクチャがすべて一方向からのものであるか否かに基づいて判定される。例えば、現在のピクチャのすべての参照ピクチャが一方向からのものである場合、閾値を12×214-dに設定し、そうでない場合、閾値を12×213-dに設定する。
BIOの勾配は、HEVC動き補償処理(例えば、2D分離可能有限インパルス応答(FIR))に準拠した演算を使用して、動き補償補間と同時に計算してもよい。いくつかの実施形態において、前記2D分離可能なFIRのための入力は、ブロック動きベクトルの端数部分に従って、動き補償処理および端数位置(fracX,fracY)のためのものと同じ参照フレームサンプルである。水平方向勾配
Figure 2022527012000046
の場合、まず、信号は、デスケーリングシフトd-8で、端数位置fracYに対応するBIOfilterSを使用して垂直方向に補間される。次に、18-dによるデスケーリングシフトで端数位置fracXwithに対応する、水平方向に勾配フィルタBIOfilterGを適用する。垂直方向勾配
Figure 2022527012000047
の場合、デスケーリングシフトd-8で、端数位置fracYに対応するBIOfilterGを使用して勾配フィルタを垂直方向に適用する。そして、18-dによるデスケーリングシフトで端数位置fracXに対応する水平方向のBIOfilterSを使用して信号の移動を行う。適度な複雑性を保持するために、勾配計算BIOfilterGおよび信号変位BIOfilterFのための補間フィルタの長さはより短くてもよい(例えば6タップ)。表2は、BIOにおけるブロック動きベクトルの異なる端数位置の勾配計算に使用できる例示的なフィルタを示す。表3は、BIOにおける予測信号の生成に使用できる例示的な補間フィルタを示す。
Figure 2022527012000048
Figure 2022527012000049
本JEMにおいて、2つの予測が異なる参照ピクチャからのものである場合、BIOをすべての双方向予測ブロックに適用することができる。CUのローカル照明補償(LIC)を有効にすると、BIOを無効にすることができる。
いくつかの実施形態において、OBMCは、通常のMC処理の後、1つのブロックに適用される。計算の複雑性を低減するために、OBMC処理中にBIOを適用しなくてもよい。つまり、BIOは、それ自身のMVを使用する場合、1つのブロックのMC処理において適用され、OBMC処理において近傍のブロックのMVを使用する場合、MC処理においては適用されない。
11 JVET-N0236におけるオプティカルフロー(PROF)による予測微調整
本寄稿では、オプティカルフローを用いたサブブロックに基づくアフィン動き補償予測を微調整する方法を提案している。サブブロックに基づくアフィン動き補償を行った後、オプティカルフロー方程式で導出された差を加算することで、予測サンプルを微調整し、これをオプティカルフロー予測微調整(PROF)と呼ぶ。提案した方法は、メモリアクセス帯域幅を増大させることなく、画素レベルの粒度におけるインター予測を実現することができる。
動き補償の粒度をより細かくするために、本寄稿では、オプティカルフローを用いたサブブロックに基づくアフィン動き補償予測を微調整する方法を提案している。サブブロックに基づくアフィン動き補償を行った後、オプティカルフロー方程式で導出された差を加算することで、輝度予測サンプルを微調整する。提案されたPROFは、以下の4つのステップとして説明する。
ステップ1)サブブロックに基づくアフィン動き補償を行い、サブブロック予測I(i,j)を生成する。
ステップ2)3タップフィルタ[-1,0,1]を使用して、個々のサンプル位置において、サブブロック予測の空間的勾配g(i,j)およびg(i,j)を算出する。
Figure 2022527012000050
Figure 2022527012000051
サブブロック予測は、勾配計算のために各側で1つの画素だけ拡張される。メモリの帯域幅および複雑性を低減するために、拡大された境界上の画素は、参照ピクチャにおける最も近い整数画素位置からコピーされる。従って、パディング領域のための追加の補間が回避される。
ステップ3)オプティカルフロー方程式によって輝度予測の微調整を計算する。
Figure 2022527012000052
ここで、Δv(i,j)は、図10に示すように、(i,j)によって表される、サンプル位置v(i,j)について算出された画素MVと、画素(i,j)が属するサブブロックMVのサブブロックMVとの差分である。
サブブロック中心に対するアフィンモデルパラメータおよび画素位置は、サブブロックからサブブロックに変化しないので、第1のサブブロックについてΔv(i,j)を計算し、同じCUにおける他のサブブロックに再利用することができる。画素位置からサブブロックの中心までの水平および垂直オフセットをx、yとすると、Δv(x,y)は、以下の式で導出することができる。
Figure 2022527012000053
4パラメータアフィンモデルの場合、
Figure 2022527012000054
6パラメータアフィンモデルの場合、
Figure 2022527012000055
ここで、(v0x,v0y)、(v1x,v1y)、(v2x,v2y)は、左上、右上、左下の制御点動きベクトルであり、w、hは、CUの幅および高さである。
ステップ4)最後に、輝度予測の微調整がサブブロック予測I(i,j)に加えられる。最終予測I’は、次式のように生成される。
Figure 2022527012000056
12 既存の実装形態の欠点
JVET-N0242の設計における非線形ALF(NLALF)には、以下の問題がある。
(1)NLALFでは、多くのクリッピング演算が必要である。
(2)CTUに基づくALFで、alf_num_available_temporal_filter_sets_lumaが0である場合、利用可能な時間的輝度フィルタはない。しかしながら、alf_temporal_indexは、引き続き信号通知してもよい。
(3)CTUに基づくALFにおいて、alf_signal_new_filter_chromaが0である場合、クロマ成分のために新しいフィルタは信号通知されず、時間的クロマフィルタが使用されると仮定される。しかしながら、時間的クロマフィルタが利用可能であることは保証されていない。
(4)CTUに基づくALFにおいて、alf_num_available_temporal_filter_sets_lumaは、利用可能な時間的フィルタセットよりも大きくてもよい。
13 映像符号化のための適応ループフィルタリングのための例示的な方法
本開示の技術の実施形態は、既存の実装の欠点を克服し、それにより、より高い符号化効率を有する映像符号化を提供する。開示される技術に基づいた適応ループフィルタリングのための技術は、既存のおよび将来の映像符号化規格の両方を向上させることができ、様々な実施形態のために以下の例で解明される。以下に提供される開示される技術の例は、一般的な概念を説明するものであり、限定するものと解釈されるべきではない。一例において、明確に示されていない限り、逆に示されていない限り、これらの例に記載されている様々な特徴を組み合わせることができる。
1. サンプル差をクリッピングする代わりに、フィルタリング処理中の中間結果にクリッピング演算を適用することが提案される。フィルタリング処理に利用される現在のサンプルの近傍のサンプル(隣接または非隣接)を、N(N≧1)個のグループに分類してもよい。
a. 一例において、1つのグループに対して1つ又は複数の中間結果を計算し、この1つまたは複数の中間結果に対してクリッピングを行ってもよい。
i. 例えば、1つのグループについて、まず各近傍の画素と現在の画素との間の差を計算し、次に、これらの差を、対応するALF係数を使用して重み平均してもよい(wAvgDiffと表記する)。グループに対してwAvgDiffに対して1回クリッピングを行ってもよい。
b. 異なるグループに対して異なるクリッピングパラメータを使用してもよい。
c. 一例において、クリッピングは、サンプル差を乗算した、フィルタ係数の最終的な重み付けの合計に適用される。
i. 例えば、N=1であり、クリッピングは、K(d,b)=min(b,max(-b,d))がクリッピング関数であり、kがクリッピングパラメータである場合、以下のように行ってもよい。
Figure 2022527012000057
1)さらに、代替的に、重み付けの合計は、次のようになる。
Figure 2022527012000058
をさらに整数値に丸めてもよく、例えば、丸めて、あるいは丸めないでシフトしてもよい。
2. 1つのサンプルをフィルタリングするとき、N(N>1)個の近傍のサンプルが1つのフィルタ係数を共有する場合、N個の近傍の画素すべてに対してクリッピング(例えば、非線形ALFによって必要とされる)を1回行ってもよい。
a. 例えば、I(x+i1,y+j1)とI(x+i2,y+j2)が1つのフィルタ係数w(i1,j1)(または/および1つのクリッピングパラメータk(i1,j1))を共有する場合、クリッピングは以下のように1回行ってもよい。
Figure 2022527012000059
を使用して、式(14)における
Figure 2022527012000060
を置き換えてもよい。
i. 一例において、i1およびi2は、対称的な位置にあってもよい。また、j1およびj2は、対称的な位置にあってもよい。
1. 一例において、i1は(-i2)に等しく、j1は(-j2)に等しい。
ii. 一例において、(x+i1,y+j1)と(x,y)との間の距離と、(x+i2,j+j2)と(x,y)との間の距離とは、同じであってもよい。
iii. ブレット2に開示された方法は、フィルタ形状が対称モードにある場合に有効化される。
iv. さらに、代替的に、I(x+i1,y+j1)に関連付けられたクリッピングパラメータを、ClipParamと呼ばれるビットストリームから信号通知/導出してもよく、上述のk(i1,j1)を、例えば2*ClipParamのような信号通知されたクリッピングパラメータから導出する。
b. 例えば、(i,j)∈Cが1つのフィルタ係数w1(または/および1つのクリッピングパラメータk1)を共有し、CがN個の要素を含む場合、クリッピングは以下のように1回行われてもよい。
Figure 2022527012000061
ここで、k1は、Cに関連付けられたクリッピングパラメータであり、clipValue*w1は、式(14)における以下の項目を置き換えるために使用してもよい。
Figure 2022527012000062
i. さらに、代替的に、I(x+i,y+j)に関連付けられたクリッピングパラメータを、ClipParamと呼ばれるビットストリームから信号通知/導出してもよく、k1を、例えばN*ClipParamのような信号通知されたクリッピングパラメータから導出する。
ii. 代替的に、
Figure 2022527012000063
を右シフトしてからクリップしてもよい。
c. 一例において、クリッピングは、N個の近傍のサンプルのM1(M1<=N)に対して1回行ってもよい。
d. 一例において、N個の近傍のサンプルをM2個のグループに分類し、各グループに対して1回クリッピングを行ってもよい。
e. 一例において、この方法は、特定のまたはすべての色成分に適用してもよい。
i. 例えば、輝度成分に適用してもよい。
ii. 例えば、Cbおよび/またはCr成分に適用してもよい。
3. 本開示では、入力をminおよびmaxを含む[min,max]の範囲にクリップするクリッピング関数K(min,max,input)を使用してもよい。
a. 一例において、入力を、minおよびmaxを除く範囲(min,max)にクリップするクリッピング関数K(min,max,input)を、上記黒丸に使用してもよい。
b. 一例において、上記黒丸において、maxを含むがminを含まない範囲(min,max)にあるように入力をクリップするクリッピング関数K(min,max,input)を使用してもよい。
c. 一例において、上記黒丸において、minを含むがmaxを含まない範囲[min,max]にあるように入力をクリップするクリッピング関数K(min,max,input)を使用してもよい。
4. 時間的ALF係数セットが利用できない(例えば、前にALF係数が符号化/復号化されていない、または符号化/復号化されたALF係数が「利用不可能」とマークされている)場合、どの時間的ALF係数セットが使用されるかを示す信号通知を省略してもよい。
a. 一例において、時間的ALF係数セットが利用不可能な場合、CTB/ブロック/タイルグループ/タイル/スライス/ピクチャに対して新しいALF係数も固定ALF係数も使用されない場合、CTB/ブロック/タイルグループ/タイル/スライス/ピクチャに対してALFが許可されないと推測される。
i. さらに、代替的に、この場合、CTB/ブロック/タイルグループ/タイル/スライス/ピクチャに対してALFが適用されることが示されてもよいとしても(例えば、CTU/ブロックに対してalf_ctb_flagが真)、ALFは、CTB/ブロック/タイルグループ/タイル/スライス/ピクチャに対して最終的に許可されないと推測されてもよい。
b. 一例において、時間的ALF係数セットが利用不可能な場合、適合ビットストリームにおけるCTB/ブロック/タイルグループ/タイル/スライス/ピクチャのために、新しいALF係数または固定ALF係数等のみを使用するように指示されてもよい。
i. 例えば、alf_use_new_filterまたはalf_use_fixed_filterのいずれかが真であるとする。
c. 一例において、時間的ALF係数セットが利用不可能な場合、ALFの採用が指示されているCTB/ブロック/タイルグループ/タイル/スライス/ピクチャに対して、新規のALF係数も固定のALF係数も使用することが示されていない、という条件が満たされた場合、そのビットストリームは不適合ビットストリームと見なされる。
i. 例えば、alf_use_new_filterおよびalf_use_fixed_filterの両方が偽であるビットストリームは、不適合ビットストリームと見なされる。
d. 一例において、alf_num_available_temporal_filter_sets_lumaが0である場合、alf_temporal_indexは信号通知されなくてもよい。
e. 提案した方法は、異なる色成分に対して異なる方法で適用されてもよい。
5. 1つのタイルグループ/タイル/スライス/ピクチャ/CTB/ブロック/映像ユニットに対して何個の時間的ALF係数セットを使用できるかは、使用可能な時間的ALF係数セット(ALFavaiと示す)、例えば、「利用可能」とマークされた前に符号化/復号化されたALF係数セットに依存してもよい。
a. 一例において、1つのタイルグループ/タイル/スライス/ピクチャ/CTB/ブロックに対してALFavai以下の時間的ALF係数セットを使用できる。
b. 1つのタイルグループ/タイル/スライス/ピクチャ/CTB/ブロックに対して、N>=0として、min(N,ALFavai)個以下の時間的ALF係数セットを使用できる。例えば、N=5である。
6. 新しいALF係数セットは、符号化/復号化された後、“利用可能”とマークしてもよい。一方、すべての“利用可能な”ALF係数セットは、イントラランダムアクセスポイント(IRAP)アクセスユニットまたは/およびIRAPピクチャ、または/および瞬時復号化リフレッシュ(IDR)アクセスユニットまたは/およびIDRピクチャに遭遇したときに、すべて“利用不可能”とマークしてもよい。
a. “利用可能な”ALF係数セットは、後続の符号化ピクチャ/タイル/タイルグループ/スライス/CTB/ブロックのための時間的ALF係数セットとして使用してもよい。
b. “利用可能な”ALF係数セットは、Nに等しい最大サイズ(N>0)の1つのALF係数セットリストに保持してもよい。
i. ALF係数セットリストは、先入れ先出し順に保持してもよい。
c. “利用不可能”とマークされている場合、関連するALF APS情報をビットストリームから削除するか、または他のALF APS情報に置き換える。
7. 各時間層に1つのALF係数セットリストを保持してもよい。
8. K個の近傍の時間層に対して1つのALF係数セットリストを保持してもよい。
9. 前のピクチャからの予測(表示順)のみを行うかどうかに基づいて、異なるピクチャごとに異なるALF係数セットリストを保持してもよい。
a. 例えば、1つのALF係数セットリストは、前のピクチャのみから予測されたピクチャに対して保持してもよい。
b. 例えば、前のピクチャおよび後のピクチャの両方から予測されたピクチャに対して、1つのALF係数セットリストを保持してもよい。
10. ALF係数セットリストは、IRAPアクセスユニットおよび/またはIRAPピクチャおよび/またはIDRアクセスユニットおよび/またはIDRピクチャに遭遇した後、空にしてもよい。
11. 異なる色成分に対して異なるALF係数セットリストを保持してもよい。
a. 一例において、1つのALF係数セットリストは、輝度成分のために保持される。
b. 一例において、Cbおよび/またはCr成分のために、1つのALF係数セットリストが保持される。
12. 1つのALF係数セットリストを保持してもよいが、異なるピクチャ/タイルグループ/タイル/スライス/CTUに対して、リストにおけるエントリに異なるインデックス(または優先順位)を割り当ててもよい。
a. 一例において、ALF係数セットには、現在のピクチャ/タイルグループ/タイル/スライス/CTUとの間の上り絶対時間層差のための上りインデックスが割り当てられてもよい。
b. 一例において、ALF係数セットは、現在のピクチャ/タイルグループ/タイル/スライス/CTUとの間に昇順絶対POC(ピクチャオーダカウント)差の昇順インデックスを割り当てられてもよい。
c. 一例において、現在のピクチャ/タイルグループ/タイル/スライス/CTUによって許可されるK個のALF係数セットが存在し、これらのK個のALF係数セットは、最小のインデックスを有するK個のALF係数セットであってもよい。
d. 一例において、現在のピクチャ/タイルグループ/タイル/スライス/CTUがどの時間的ALF係数セットを使用するかの指示は、リストにおける元のエントリインデックスの代わりに、割り当てられたインデックスに依存してもよい。
13. ALFで使用される近傍のサンプルは、K(K>=1)個のグループに分類されてもよく、各グループに1つのクリッピングパラメータのセットが信号通知されてもよい。
14. クリッピングパラメータは、特定のまたは全ての固定ALFフィルタセットに対して予め規定されてもよい。
a. 代替的に、現在のタイルグループ/スライス/ピクチャ/タイルによって使用される特定のまたはすべての固定フィルタセットに対して、クリッピングパラメータを信号通知してもよい。
i. 一例において、クリッピングパラメータは、特定の色成分(例えば、輝度成分)についてのみ信号通知してもよい。
b. 代替的に、固定ALFフィルタセットを使用する場合、クリッピングを行わなくてもよい。
i. 一例において、クリッピングは、特定の色成分に対して行われてもよく、他の色成分に対して行われなくてもよい。
15. クリッピングパラメータはALF係数と共に記憶されてもよく、符号化されたCTU/CU/タイル/タイルグループ/スライス/ピクチャをフォローすることで継承してもよい。
a. 一例において、CTU/CU/タイル/タイルグループ/スライス/ピクチャが時間的ALF係数セットを使用する場合、対応するALFクリッピングパラメータを使用してもよい。
i. 一例において、クリッピングパラメータは、特定の色成分(例えば、輝度成分)についてのみ継承してもよい。
b. 代替的に、CTU/CU/タイル/タイルグループ/スライス/ピクチャが時間的ALF係数セットを使用する場合、クリッピングパラメータを信号通知してもよい。
i. 一例において、クリッピングパラメータは、特定の色成分(例えば、輝度成分)についてのみ信号通知してもよい。
c. 一例において、クリッピングパラメータは、特定の色成分に対して継承されてもよく、他の色成分に対して信号通知してもよい。
d. 一例において、時間的ALF係数セットが使用される場合、クリッピングは行われない。
i. 一例において、クリッピングは、特定の色成分に対して行われてもよく、他の色成分に対して行われなくてもよい。
16. 非線形ALFを使用するかどうかは、ALFフィルタセットのタイプ(例えば、固定ALFフィルタセット、時間的ALFフィルタセット、または信号通知ALF係数セット)に依存してもよい。
a. 一例において、現在のCTUが固定ALFフィルタセットまたは時間的ALFフィルタセット(別名、前に信号通知されたフィルタセットが使用される)を使用する場合、非線形ALFは、現在のCTUに使用されなくてもよい。
b. 一例において、alf_luma_use_fixed_filter_flagが1である場合、現在のスライス/タイルグループ/タイル/CTUに対して非線形ALFを使用してもよい。
17. 非線形ALFクリッピングパラメータは、ALFフィルタセットの種類(例えば、固定ALFフィルタセット、時間的ALFフィルタセット、または信号通知されたALF係数セット)に基づいて、条件付きで信号通知してもよい。
a. 一例において、非線形ALFクリッピングパラメータは、すべてのALFフィルタセットに対して信号通知してもよい。
b. 一例において、非線形ALFクリッピングパラメータは、信号通知されたALFフィルタ係数セットに対してのみ信号通知してもよい。
c. 一例において、非線形ALFクリッピングパラメータは、固定ALFフィルタ係数セットに対してのみ信号通知してもよい。
上述した例は、以下に説明する方法、例えば、方法1110,1120,1130,1140,1150および1160のコンテキストに含まれてもよく、これらの方法は、映像デコーダおよび/または映像エンコーダにおいて実装されてもよい。
図11Aは、例示的な映像処理方法のフローチャートを示す。方法1110は、動作1112において、映像の現在の映像ブロックに対して、フィルタ係数を使用し、少なくとも1つの中間結果を伴う2つ以上の演算を含むフィルタリング処理を行うことを含む。
方法1110は、動作1114において、前記少なくとも1つの中間結果にクリッピング演算を適用することを含む。
方法1110は、動作1116において、少なくとも1つの中間結果に基づいて、前記現在の映像ブロックと前記映像のビットストリーム表現との間での変換を行うこととを含む。いくつかの実施形態において、前記少なくとも1つの中間結果は、前記フィルタ係数の重み付けの合計と、前記現在の映像ブロックの現在のサンプルと前記現在のサンプルの近傍のサンプルとの間の差とに基づく。
図11Bは、例示的な映像処理方法のフローチャートを示す。方法1120は、動作1122において、映像の現在の映像ブロックを映像のビットストリーム表現に符号化することを含み、現在の映像ブロックは、適応ループフィルタ(ALF)で符号化される。
方法1120は、動作1124において、時間的適応フィルタの1つ以上の集合の可用性または使用に基づいて、前記ビットストリーム表現における前記時間的適応フィルタの前記1つ以上の集合内の時間的適応フィルタの集合の指示を選択的に含むことと、を含む。
図11Cは、例示的な映像処理方法のフローチャートを示す。この方法1130は、動作1132において、映像のビットストリーム表現における時間的適応フィルタのセットの指示に基づいて、適応ループフィルタ(ALF)で符号化される映像の現在の映像ブロックに適用可能な時間的適応フィルタの前記セットを備える1つ以上のセットの前記時間的適応フィルタの可用性または使用を判定することを含む。
方法1130は、動作1134において、前記判定することに基づいて、時間的適応フィルタの前記セットを選択的に適用することによって、前記ビットストリーム表現から復号化された現在の映像ブロックを生成することを含む。
図11Dは、例示的な映像処理方法のフローチャートを示す。この方法1140は、動作1142において、適応ループフィルタで符号化された現在の映像ブロックに対して、利用可能な時間ALF係数セットに基づいて、時間的適応ループフィルタリング(ALF)係数セットの数を判定することを含み、前記利用可能な時間ALF係数セットは、前記判定する前に符号化または復号化されており、前記ALF係数セットの数は、前記現在の映像ブロックを構成するタイルグループ、タイル、スライス、ピクチャ、符号化ツリーブロック(CTB)、または映像ユニットに使用される。
方法1140は、動作1144において、時間的ALF係数セットの前記数に基づいて、前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現の間での変換を行うことを含む。
図11Eは、例示的な映像処理方法のフローチャートを示す。この方法1150は、動作1152において、映像の現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域のヘッダにおける適応ループフィルタリング(ALF)の指示が、前記ビットストリーム表現に関連付けられた適応パラメータセット(APS)ネットワーク抽象化層(NAL)ユニットにおけるALFの指示と等しいことを判定することを含む。
方法1150は、動作1154において、変換を行うことを含む。
図11Fは、例示的な映像処理方法のフローチャートを示す。この方法1160は、動作1162において、現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域で使用される適応ループフィルタのタイプに基づいて、非線形適応ループフィルタリング(ALF)動作を選択的に有効化することを含む。
この方法1160は、動作1164において、前記選択的に有効化した後に、前記変換を行うことを含む。
10 開示される技術の例示的な実装形態
10.1 実施形態#1
輝度およびクロマそれぞれについて1つのALF係数セットリストが保持され、2つのリストのサイズがそれぞれlumaALFSetSizeおよびchromaALFSetSizeであるとする。ALF係数セットリストの最大サイズは、それぞれlumaALFSetMax(例えば、lumaALFSetMaxが5に等しい)およびchromaALFSetMax(例えば、chromaALFSetMaxが5に等しい)である。
新規に追加された部品は、二重の太い大括弧で囲まれ、即ち、{{a}}は、“a”が追加されており、且つ、削除された部品は、二重の角括弧で囲まれ、即ち、[[a]]は、“a”が削除されていることを意味する。
7.3.3.2 適応ループフィルタデータ構文
Figure 2022527012000064
7.3.4.2 符号化ツリーユニット構文
Figure 2022527012000065
alf_signal_new_filter_lumaが1に等しい場合、新しい輝度フィルタセットが信号通知されることを指定する。alf_signal_new_filter_lumaが0に等しい場合、新しい輝度フィルタセットが信号通知されないことを示す。存在しない場合、0である。
alf_luma_use_fixed_filter_flagが1に等しい場合、適応ループフィルタに信号通知するのに固定フィルタセットを使用することを示す。alf_luma_use_fixed_filter_flagが0に等しい場合、適応ループフィルタを信号通知するのに固定フィルタ使用ないことを示す。
alf_num_available_temporal_filter_sets_lumaは、現在のスライスに使用できる利用可能な時間的フィルタセットの数を示す。この数は0[[5]]{{lumaALFSetSize}}であり得る。存在しない場合、0である。
{{alf_num_available_temporal_filter_sets_lumaが0のとき、alf_signal_new_filter_lumaまたはalf_luma_use_fixed_filter_flagのどちらかが1にならなければならないという制約がある。}}
alf_signal_new_filter_chromaが1に等しい場合、新しいクロマフィルタが信号通知されることを指定する。alf_signal_new_filter_chromaが0に等しい場合、新しいクロマフィルタが信号通知されないことを示す。
{{chromaALFSetSizeが0の時にalf_signal_new_filter_chromaが1にならないといけないという制約がある。}}
10.2 実施形態#2
輝度およびクロマそれぞれについて1つのALF係数セットリストが保持され、2つのリストのサイズがそれぞれlumaALFSetSizeおよびchromaALFSetSizeであるとする。ALF係数セットリストの最大サイズは、それぞれlumaALFSetMax(例えば、lumaALFSetMaxが5に等しい)およびchromaALFSetMax(例えば、chromaALFSetMaxが5に等しい)である。
新規に追加された部品は、二重の太い大括弧で囲まれ、即ち、{{a}}は、“a”が追加されており、且つ、削除された部品は、二重の角括弧で囲まれ、即ち、[[a]]は、“a”が削除されていることを意味する。
7.3.3.2 適応ループフィルタデータ構文
Figure 2022527012000066
7.3.4.2 符号化ツリーユニット構文
Figure 2022527012000067
alf_signal_new_filter_lumaが1に等しい場合、新しい輝度フィルタセットが信号通知されることを指定する。alf_signal_new_filter_lumaが0に等しい場合、新しい輝度フィルタセットが信号通知されないことを示す。存在しない場合、0である。
alf_luma_use_fixed_filter_flagが1に等しい場合、適応ループフィルタに信号通知するのに固定フィルタセットを使用することを示す。alf_luma_use_fixed_filter_flagが0に等しい場合、適応ループフィルタを信号通知するのに固定フィルタ使用ないことを示す。
alf_num_available_temporal_filter_sets_lumaは、現在のスライスに使用できる利用可能な時間的フィルタセットの数を示し、この数は0[[5]]{{lumaALFSetSize}}であり得る。存在しない場合、0である。
{{alf_num_available_temporal_filter_sets_lumaが0のとき、alf_signal_new_filter_lumaまたはalf_luma_use_fixed_filter_flagのどちらかが1にならなければならないという制約がある。}}
alf_signal_new_filter_chromaが1に等しい場合、新しいクロマフィルタが信号通知されることを指定する。alf_signal_new_filter_chromaが0に等しい場合、新しいクロマフィルタが信号通知されないことを示す。
{{chromaALFSetSizeが0の時にalf_signal_new_filter_chromaが1にならないといけないという制約がある。}}
いくつかの実施形態において、下記のような技術的解決策を実装することができる。
A1.映像の現在の映像ブロックに対して、フィルタ係数を使用し、少なくとも1つの中間結果を伴う2つ以上の演算を含むフィルタリング処理を行うことと、前記少なくとも1つの中間結果にクリッピング演算を適用することと、前記少なくとも1つの中間結果に基づいて、前記現在の映像ブロックと前記映像のビットストリーム表現との間での変換を行うこととを含み、前記少なくとも1つの中間結果は、前記フィルタ係数の重み付けの合計と、前記現在の映像ブロックの現在のサンプルと前記現在のサンプルの近傍のサンプルとの間の差とに基づく、映像処理方法。
A2.前記現在のサンプルに対して、前記現在のサンプルの近傍のサンプルを複数のグループに分類することをさらに含み、前記複数のグループの各々における中間結果に異なるパラメータを使用して前記クリッピング演算を適用する、解決策A1に記載の方法。
A3.前記少なくとも1つの中間結果は、前記現在のサンプルと前記複数のグループの各々における前記近傍のサンプルとの間の差の重み付け平均を含む、解決策A2に記載の方法。
A4.前記現在の映像ブロックのサンプルの複数の近傍のサンプルが1つのフィルタ係数を共有し、前記複数の近傍のサンプルの各々に1回の前記クリッピング演算を適用する、解決策A1に記載の方法。
A5.前記複数の近傍のサンプルのうちの少なくとも2つのサンプルの位置が、前記現在の映像ブロックの前記サンプルに対して対称である、解決策A4に記載の方法。
A6.前記フィルタリング処理に関連付けられたフィルタ形状が対称モードである、解決策A4またはA5に記載の方法。
A7.前記クリッピング演算の1つ以上のパラメータが前記ビットストリーム表現で信号通知される解決策A4~A6のいずれかに記載の方法。
A8.前記現在の映像ブロックのサンプルがN個の近傍のサンプルを含み、前記N個の近傍のサンプルのM1個の近傍のサンプルにクリッピング演算を1回適用し、M1およびNは正の整数であり、M1≦Nである、解決策A1に記載の方法。
A9.前記現在の映像ブロックのサンプルに対して、前記サンプルのN個の近傍のサンプルをM2個のグループに分類することをさらに含み、前記クリッピング演算は、前記M2個のグループの各々に1回適用され、M2およびNは、正の整数である、解決策A1に記載の方法。
A10.前記クリッピング演算は、前記現在の映像ブロックに関連付けられた輝度成分に適用される、解決策A1に記載の方法。
A11.前記クリッピング演算は、現在の映像ブロックに関連付けられたCb成分またはCr成分に適用される、解決策A1に記載の方法。
A12.前記クリッピング演算は、K(min,max,input)として定義され、式中、inputは、前記クリッピング演算への入力であり、minは、前記クリッピング演算の出力の公称最小値であり、maxは、前記クリッピング演算の出力の公称最大値である、解決策A1~A11のいずれかに記載の方法。
A13.前記クリッピング演算の出力の実際の最大値が前記公称最大値よりも小さく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値よりも大きい、解決策A12に記載の方法。
A14.前記クリッピング演算の出力の実際の最大値が前記公称最大値と等しく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値よりも大きい、解決策A12に記載の方法。
A15.前記クリッピング演算の出力の実際の最大値が前記公称最大値よりも小さく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値と等しい、解決策A12に記載の方法。
A16.前記クリッピング演算の出力の実際の最大値が前記公称最大値と等しく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値と等しい、解決策A12に記載の方法。
A17.前記フィルタリング処理は、複数のALFフィルタ係数セットで構成される適応ループフィルタリング(ALF)処理を含む、解決策A1に記載の方法。
A18.前記複数のALFフィルタ係数セットのうちの1つ以上のALFフィルタ係数セットに対して、前記クリッピング演算のための少なくとも1つのパラメータを予め規定する、解決策A17に記載の方法。
A19.前記現在の映像ブロックを構成するタイルグループ、スライス、ピクチャまたはタイルのビットストリーム表現において、前記クリッピング演算のための少なくとも1つのパラメータを信号通知する、解決策A17に記載の方法。
A20.前記少なくとも1つのパラメータは、現在の映像ブロックに関連付けられた1つ以上の色成分のみに対して信号通知される、解決策A19に記載の方法。
A21.前記複数のALFフィルタ係数セットのうちの少なくとも1つと、前記クリッピング演算のための1つ以上のパラメータとが、同じ記憶位置に記憶され、かつ、前記複数のALFフィルタ係数セットのうちの前記少なくとも1つ以上または、前記1つ以上のパラメータが、前記現在の映像ブロックを含む符号化ツリーユニット(CTU)、符号化ユニット(CU)、タイル、タイルグループ、スライス、またはピクチャによって継承される、解決策A17に記載の方法。
A22.前記クリッピング演算は、現在の映像ブロックを構成するCTU、CU、タイル、タイルグループ、スライス、またはピクチャのフィルタリング処理に時間的ALF係数セットを使用すると判定された場合、複数のALFフィルタ係数セットの時間的ALF係数セットに対応する1つ以上のパラメータを使用するように構成される、解決策A21に記載の方法。
A23.時間的ALF係数セットに対応する1つ以上のパラメータは、現在の映像ブロックに関連付けられた1つ以上の色成分に対してのみ使用される、解決策A22に記載の方法。
A24.前記複数のALFフィルタ係数セットの時間的ALF係数セットに対応する1つ以上のパラメータは、時間的ALF係数セットが、現在の映像ブロックを構成する前記CTU、前記CU、前記タイル、前記タイルグループ、前記スライス、または前記ピクチャのフィルタリング処理で使用されていると判定されたときに、前記ビットストリーム表現で信号通知される、解決策A21に記載の方法。
A25.前記時間的ALF係数セットに対応する前記1つ以上のパラメータは、前記現在の映像ブロックに関連付けられた1つ以上の色成分に対してのみ信号通知される、解決策A24に記載の方法。
A26.前記現在の映像ブロックに関連付けられた第1の色成分のための前記1つ以上のパラメータの第1のセットのパラメータを信号通知し、前記現在の映像ブロックに関連付けられた第2の色成分のための前記1つ以上のパラメータの第2のセットのパラメータを継承する、解決策A21に記載の方法。
A27.前記変換は、前記ビットストリーム表現から前記現在のブロックを生成する、解決策A1~A26のいずれかに記載の方法。
A28.前記変換は、前記現在の映像ブロックから前記ビットストリーム表現を生成することを含む、解決策A1~A26のいずれかに記載の方法。
A29.処理装置と、その処理装置に命令が記憶された非一時的メモリとを備える装置であって、命令が処理装置によって実装されることにより、処理装置に、解決策A1~A28のいずれかに記載の方法を実施させる映像システムの装置。
A30.非一時的なコンピュータ可読媒体に記憶されたコンピュータプログラム製品であって、解決策A1~A28のいずれかに記載の方法を実行するためのプログラムコードを含む、コンピュータプログラム製品。
いくつかの実施形態において、下記のような技術的解決策を実装することができる。
B1.映像の現在の映像ブロックを前記映像のビットストリーム表現に符号化することであって、前記現在の映像ブロックは、適応ループフィルタ(ALF)で符号化される、符号化することと、時間的適応フィルタの1つ以上のセットの可用性または使用に基づいて、前記ビットストリーム表現における前記時間的適応フィルタの前記1つ以上のセット内の時間的適応フィルタのセットの指示を選択的に含むことと、を含む、映像処理方法。
B2.前記時間的適応フィルタのセットが利用不可能な場合、前記セットの指示を前記ビットストリーム表現から排除する、解決策B1に記載の方法。
B3.前記時間的適応フィルタのセットが利用不可能な場合、前記セットの指示を前記ビットストリーム表現に含める、解決策B1またはB2に記載の方法。前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、この指示はビットストリーム表現から除外される、解決策B1~B3のいずれかに記載の方法。
B4.前記1つ以上の時間的適応フィルタのセットの各々が、1つのフィルタインデックスに関連付けられる、解決策B1~B3のいずれかに記載の方法。
B5.前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、固定フィルタを使用する指示は真に等しいものとする、解決策B1~B3のいずれかに記載の方法。
B6.前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、時間的適応フィルタを使用する指示は偽に等しいものとする、解決策B1~B3のいずれかに記載の方法。
B7.前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、固定フィルタのインデックスの指示がビットストリーム表現に含まれる、解決策B1~B3のいずれかに記載の方法。
B8.映像のビットストリーム表現における時間的適応フィルタのセットの指示に基づいて、適応ループフィルタ(ALF)で符号化される映像の現在の映像ブロックに適用可能な時間的適応フィルタの前記セットを備える1つ以上のセットの前記時間的適応フィルタの可用性または使用を判定することと、前記判定することに基づいて、時間的適応フィルタの前記セットを選択的に適用することによって、前記ビットストリーム表現から復号化された現在の映像ブロックを生成することと、を含む、映像処理方法。
B9.前記時間的適応フィルタのセットが利用不可能な場合、前記生成は、前記時間的適応フィルタのセットを適用せずに行われる、解決策B8に記載の方法。
B10.前記時間的適応フィルタのセットが利用不可能な場合、前記生成を行うことは、前記時間的適応フィルタのセットを適用することを含む、解決策B8またはB9に記載の方法。
B11.前記1つ以上の時間的適応フィルタのセットが1つの適応パラメータセット(APS)に含まれ、前記指示が1つのAPSインデックスである、解決策B1~B10のいずれかに記載の方法。
B12.異なる方向の勾配計算に基づいて、1つ以上の時間的適応フィルタのセットのうちの少なくとも1つの時間的適応フィルタのためのフィルタインデックスを判定することをさらに含む、解決策B1~B10のいずれかに記載の方法。
B13.前記時間的適応フィルタの1つ以上のセットのいずれも利用可能でなく、かつ新しいALF係数セットおよび固定ALF係数セットが、前記現在の映像ブロックを構成する符号化ツリーブロック(CTB)、ブロック、タイルグループ、タイル、スライス、またはピクチャにおいて使用されないことを判定することと、前記判定に基づいて、適応ループフィルタリングが無効であると推論することと、をさらに含む、解決策B1~B11のいずれかに記載の方法。
B14.前記ビットストリーム表現は、前記1つ以上のセットの時間的適応フィルタの少なくとも1つが利用不可能であることに呼応して、新しいALF係数セットの使用の第1の指示と、固定ALF係数セットの使用の第2の指示とを含み、第1の指示と第2の指示のうちの1つが正確に前記ビットストリーム表現において真である、解決策B1~B11のいずれかに記載の方法。
B15.前記ビットストリーム表現は、前記ALFの演算に関連付けられたフォーマット規則に準拠する、解決策B14に記載の方法。
B16.前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でないことに呼応して、前記ビットストリーム表現は、前記ALFが有効化されていること、および新しいALF係数セットおよび固定ALF係数セットが、前記現在の映像ブロックを構成する符号化ツリーブロック(CTB)、ブロック、タイルグループ、タイル、スライス、またはピクチャにおいて使用されないことを示す指示を含む、解決策B1~B11のいずれかに記載の方法。
B17.前記ビットストリーム表現は、前記ALFの動作に関連付けられたフォーマット規則に準拠しない、解決策B16に記載の方法。
B18.前記ALFが、現在の映像ブロックに関連付けられた1つ以上の色成分に適用される、解決策B1~B17のいずれかに記載の方法。
B19.適応ループフィルタで符号化された現在の映像ブロックに対して、利用可能な時間的ALF係数セットに基づいて、時間的適応ループフィルタリング(ALF)係数セットの数を判定することであって、前記利用可能な時間的ALF係数セットは、前記判定する前に符号化または復号化されており、前記ALF係数セットの数は、前記現在の映像ブロックを構成するタイルグループ、タイル、スライス、ピクチャ、符号化ツリーブロック(CTB)、または映像ユニットに使用される、判定することと、時間的ALF係数セットの前記数に基づいて、前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現の間での変換を行うことと、を含む、映像処理方法。
B20.時間的ALF係数セットの数の最大数が、利用可能な時間的ALF係数セットの数に等しく設定される、解決策B19に記載の方法。
B21.前記時間的ALF係数セットの数は、利用可能な時間的ALF係数セットの数と予め規定された数Nとのうちの小さい方に等しく設定され、ここで、Nは整数であり、N≧0である、解決策B20に記載の方法。
B22.N=5である、解決策B21に記載の方法。
B23.映像の現在の映像ブロックと映像のビットストリーム表現との間での変換の一部として、1つ以上の新しい適応ループフィルタリング(ALF)係数セットを処理することであって、現在の映像ブロックが適応ループフィルタで符号化される、処理することと、前記処理の後に、この1つ以上の新しいALF係数セットを利用可能なALF係数セットとして指定することと、を含む、映像処理方法。
B24.イントラランダムアクセスポイント(IRAP)アクセスユニット、IRAP ピクチャ、瞬時復号化リフレッシュ(IDR)アクセスユニット、またはIDR ピクチャに遭遇することと、前記遭遇したことに基づいて、前記利用可能なALF係数セットを、利用不可能なALF係数セットとして指定することと、をさらに含む解決策B23に記載の方法。
B25.前記利用可能なALF係数セットのうちの少なくとも1つは、前記現在の映像ブロックの後続の映像ブロックのための時間的ALF係数セットである、解決策B23またはB24に記載の方法。
B26.前記利用可能なALF係数セットが、最大サイズがNであるALF係数セットリストに保持され、ここで、Nが整数である、解決策B23~B25のいずれかに記載の方法。
B27.前記ALF係数セットリストは、先入れ先出し(FIFO)の順序で保持される、解決策B26に記載の方法であって、方法。
B28.前記現在の映像ブロックに関連付けられた各時間層に1つのALF係数セットリストを保持する、解決策B1~B27のいずれかに記載の方法。
B29.前記現在の映像ブロックに関連付けられたK個の近傍の時間層ごとに1つのALF係数セットリストを保持する、解決策B1~B27のいずれかに記載の方法。
B30.前記現在の映像ブロックを含む現在のピクチャのために第1のALF係数セットリストを保持し、前記現在のピクチャの後続のピクチャのために第2のALF係数セットリストを保持する、解決策B1~B27のいずれかに記載の方法。
B31.前記現在のピクチャに基づいて、前記現在のピクチャに続く前記ピクチャ画像を予測し、前記第1のALF係数セットリストが前記第2のALF係数セットリストと同じである、解決策B30に記載の方法。
B32.前記現在のピクチャに続く前記ピクチャおよび前記現在のピクチャの前のピクチャに基づいて、現在のピクチャを予測し、前記第1のALF係数セットリストが前記第2のALF係数セットリストと同じである、解決策B30に記載の方法。
B33.イントラランダムアクセスポイント(IRAP)アクセスユニット、IRAP ピクチャ、瞬時復号化リフレッシュ(IDR)アクセスユニット、またはIDRピクチャに遭遇することと、前記遭遇した後に、1つ以上のALF係数セットリストを空にすること、をさらに含む解決策B23に記載の方法。
B34.現在の映像ブロックに関連付けられた異なる色成分について、異なるALF係数セットリストを保持する、解決策B23に記載の方法。
B35.前記異なる色成分は、輝度成分、Cr成分、およびCb成分のうちの1つ以上を含む、解決策B34に記載の方法。
B36.複数のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)に対して1つのALF係数セットリストを保持し、前記1つのALF係数セットリストのインデックス付けは、前記複数のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)の各々に対して異なる、解決策B23に記載の方法。
B37.前記インデックス付けは、昇順であり、前記現在の映像ブロックに関連付けられた第1の時間層インデックスと、前記現在の映像ブロックを構成する現在のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)に関連付けられた第2の時間層インデックスとに基づいている、解決策B36に記載の方法。
B38.前記インデックス付けは、昇順であり、前記現在の映像ブロックに関連付けられたピクチャオーダカウント(POC)と、前記現在の映像ブロックを構成する現在のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)に関連付けられた第2のPOCとに基づいている、解決策B36に記載の方法。
B39.前記インデックス付けは、前記利用可能なALF係数セットに割り当てられる最小のインデックスを含む、解決策B36に記載の方法。
B40.前記変換は、クリッピング演算を含み、前記方法は、現在の映像ブロックのサンプルに対して、前記サンプルの近傍のサンプルを複数のグループに分類することと、ビットストリーム表現で信号通知された単一のパラメータのセットを使用して、前記複数のグループの各々についてのクリッピング演算を行うことと、をさらに含む、解決策B23に記載の方法。
B41.前記変換は、クリッピング演算を含み、前記クリッピング演算のための1つのパラメータのセットが、前記1つ以上の新しいALF係数セットに対して予め規定される、解決策B23に記載の方法。
B42.前記変換は、クリッピング演算を含み、前記クリッピング演算のための1つのパラメータのセットが、前記1つ以上の新しいALF係数セットに対して前記ビットストリーム表現で信号通知される、解決策B23に記載の方法。
B43.映像の現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域のヘッダにおける適応ループフィルタリング(ALF)の指示が、前記ビットストリーム表現に関連付けられた適応パラメータセット(APS)ネットワーク抽象化層(NAL)ユニットにおけるALFの指示と等しいことを判定することと、前記変換を行うことと、を含む、映像処理方法。
B44.前記映像領域は1つのピクチャである、解決策B43に記載の方法。
B45.前記映像領域は1つのスライスである、解決策B43に記載の方法。
B46.現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域で使用される適応ループフィルタのタイプに基づいて、非線形適応ループフィルタリング(ALF)動作を選択的に有効化することと、前記選択的に有効化した後に、前記変換を行うことを含む、映像処理方法。
B47.前記映像領域は符号化ツリーユニット(CTU)であり、前記適応ループフィルタのタイプが固定ALFセットまたは時間的ALFセットを含むと判定されると、前記非線形ALF動作は無効化される、解決策B46に記載の方法。
B48.前記映像領域は、スライス、タイルグループ、タイルまたは符号化ツリーユニット(CTU)であり、前記非線形ALF動作は、前記適応ループフィルタのタイプが固定ALFセットを含むと判定されると、有効化される、解決策B46に記載の方法。
B49.前記非線形ALF動作のためのビットストリーム表現において、1つ以上のクリッピングパラメータを選択的に信号通知することをさらに含む、解決策B46に記載の方法。
B50.前記1つ以上のクリッピングパラメータが信号通知される、解決策B49に記載の方法。
B51.前記1つ以上のクリッピングパラメータは、前記ビットストリーム表現で信号通知されるALFフィルタ係数セットに対して信号通知される、解決策B49に記載の方法。
B52.前記適応ループフィルタのタイプが固定ALFセットを含むと判定されると、前記1つ以上のクリッピングパラメータが信号通知される、解決策B49に記載の方法。
B53.前記変換は、前記ビットストリーム表現から前記現在のブロックを生成する、解決策B19~B52のいずれかに記載の方法。
B54.前記変換は、前記現在の映像ブロックから前記ビットストリーム表現を生成することを含む、解決策B19~B52のいずれかに記載の方法。
B55.処理装置と、その処理装置に命令が記憶された非一時的メモリとを備える装置であって、命令が処理装置によって実装されることにより、処理装置に、解決策B1~A54のいずれかに記載の方法を実施させる映像システムの装置。
B56.非一時的なコンピュータ可読媒体に記憶されたコンピュータプログラム製品であって、解決策B1~B54のいずれかに記載の方法を実行するためのプログラムコードを含む、コンピュータプログラム製品。
いくつかの実施形態において、下記のような技術的解決策を実装することができる。
C1.現在の映像ブロックに対して、少なくとも1つの中間結果を伴う2つ以上の演算を含むフィルタリング処理を行うことと、前記少なくとも1つの中間結果にクリッピング演算を適用することと、前記フィルタリング演算に基づいて、前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現との間での変換を行うこと、を含む映像処理方法。
C2.前記現在の映像ブロックのサンプルに対して、前記サンプルのうちの近傍のサンプルを複数のグループに分類することをさらに含み、前記複数のグループの各々における中間結果に異なるパラメータを使用して前記クリッピング演算を適用する、解決策C1に記載の方法。
C3.前記少なくとも1つの中間結果は、前記現在のサンプルと前記複数のグループの各々における前記近傍のサンプルとの間の差の重み付け平均を含む、解決策C2に記載の方法。
C4.前記フィルタリング処理は、フィルタ係数を使用し、前記少なくとも1つの中間結果は、前記フィルタ係数と、前記現在のサンプルと前記近傍のサンプルとの間の差との重み付けの合計を含む、解決策C2に記載の方法。
C5.前記現在の映像ブロックのサンプルのうちの複数の近傍のサンプルがフィルタ係数を共有し、前記複数の近傍のサンプルの各々に1回のクリッピング演算を適用する、解決策C1に記載の方法。
C6.前記フィルタリング演算に関連付けられたフィルタ形状が対称モードである、解決策C5に記載の方法。
C7.前記クリッピング演算の1つ以上のパラメータが前記ビットストリーム表現で信号通知される解決策C5またはC6に記載の方法。
C8.前記クリッピング演算は、K(min,max,input)として定義され、式中、inputは、前記クリッピング演算への入力であり、minは、前記クリッピング演算の出力の公称最小値であり、maxは、前記クリッピング演算の出力の公称最大値である、解決策C1~C7のいずれかに記載の方法。
C9.前記クリッピング演算の出力の実際の最大値が前記公称最大値よりも小さく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値よりも大きい、解決策C8に記載の方法。
C10.前記クリッピング演算の出力の実際の最大値が前記公称最大値と等しく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値よりも大きい、解決策C8に記載の方法。
C11.前記クリッピング演算の出力の実際の最大値が前記公称最大値よりも小さく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値と等しい、解決策C8に記載の方法。
C12.前記クリッピング演算の出力の実際の最大値が前記公称最大値と等しく、かつ前記クリッピング演算の出力の実際の最小値が前記公称最小値と等しい、解決策C8に記載の方法。
C13.時間的適応ループフィルタリング係数セットが利用不可能であることに基づいて、前記ビットストリーム表現が前記時間的適応ループフィルタリング係数セットの指示を省略するような前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現との間での変換を行うことを含む、映像処理方法。
C14.現在の映像ブロックを構成する符号化ツリーブロック(CTB)、ブロック、タイルグループ、タイル、スライス、またはピクチャにおいて、新しい適応ループフィルタリング(ALF)係数および固定ALF係数を使用しないことを判定することと、適応ループフィルタリングが無効化されていることを推測することをさらに含む、解決策C13に記載の方法。
C15.適合ビットストリームは、新しい適応ループフィルタリング(ALF)係数の指示または固定ALF係数の指示を含む、解決策C13に記載の方法。
C16.現在の映像ブロックに対して、利用可能な時間的ALF係数セットに基づいて、1つ以上の時間的適応ループフィルタリング(ALF)係数セットの数を判定することであって、前記利用可能な時間的ALF係数セットは、前記判定する前に符号化または復号化されている、判定することと、前記1つ以上の時間的ALF係数セットに基づいて、前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現の間での変換を行うことと、を含む、映像処理方法。
C17.前記1つ以上の時間的ALF係数セットの最大数がALFavailableである、解決策16に記載の方法。
C18.前記1つ以上の時間的ALF係数セットの数は、min(N,ALFavailable)であり、ここで、Nは整数であり、N≧0である、解決策C17に記載の方法。
C19.N=5である、解決策C18に記載の方法。
C20.現在の映像ブロックに対して、1つ以上の新しい適応ループフィルタリング(ALF)係数セットを処理することと、この処理の後に、前記1つ以上の新しいALF係数セットを利用可能なALF係数セットに指定することと、利用可能なALF係数セットに基づいて、前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現との間での変換を行うステップとを含む、映像処理方法。
C21.イントラランダムアクセスポイント(IRAP)アクセスユニット、IRAPピクチャ、瞬時復号化リフレッシュ(IDR)アクセスユニット、またはIDRピクチャに遭遇することと、前記利用可能なALF係数セットを、利用不可能なALF係数セットとして指定することと、をさらに含む解決策C20に記載の方法。
C22.前記利用可能なALF係数セットは、前記現在の映像ブロックの後続の映像ブロックのための時間的ALF係数セットである、解決策C20またはC21に記載の方法。
C23.前記利用可能なALF係数セットが、最大サイズがNであるALF係数セットリストに保持され、ここで、Nが整数である、解決策C20~C22のいずれかに記載の方法。
C24.前記ALF係数セットリストは、先入れ先出し(FIFO)の順序で保持される、解決策C23に記載の方法であって、方法。
C25.前記現在の映像ブロックに関連付けられた各時間層に1つのALF係数セットリストを保持する、解決策C13~C24のいずれかに記載の方法。
C26.前記現在の映像ブロックに関連付けられたK個の近傍の時間層ごとに1つのALF係数セットリストを保持する、解決策C13~C24のいずれかに記載の方法。
C27.前記現在の映像ブロックを含む現在のピクチャのために第1のALF係数セットリストを保持し、前記現在のピクチャの後続のピクチャのために第2のALF係数セットリストを保持する、解決策C13~C24のいずれかに記載の方法。
C28.前記現在のピクチャに基づいて、前記現在のピクチャに続く前記ピクチャ画像を予測し、前記第1のALF係数セットリストが前記第2のALF係数セットリストと同じである、解決策C27に記載の方法。
C29.イントラランダムアクセスポイント(IRAP)アクセスユニット、IRAP ピクチャ、瞬時復号化リフレッシュ(IDR)アクセスユニット、またはIDR ピクチャに遭遇することと、前記遭遇した後に、1つ以上のALF係数セットリストを空にすること、をさらに含む解決策C20に記載の方法。
C30.現在の映像ブロックの異なる色成分について、異なるALF係数セットリストを保持する、解決策C20に記載の方法。
C31.処理装置と、その処理装置に命令が記憶された非一時的メモリとを備える装置であって、命令が処理装置によって実装されることにより、処理装置に、解決策C1~C30のいずれかに記載の方法を実施させる映像システムの装置。
C32.非一時的なコンピュータ可読媒体に記憶されたコンピュータプログラム製品であって、解決策C1~C30のいずれかに記載の方法を実行するためのプログラムコードを含む、コンピュータプログラム製品。
図12は、映像処理装置1200のブロック図である。装置1200は、本明細書に記載の方法の1つ以上を実装するために使用してもよい。装置1200は、スマートフォン、タブレット、コンピュータ、IoT(モノのインターネット)受信機等により実施されてもよい。装置1200は、1つ以上の処理装置1202と、1つ以上のメモリ1204と、映像処理ハードウェア1206と、を含んでもよい。1つまたは複数の処理装置1202は、本明細書に記載される1つ以上の方法(方法1100および1150を含むが、これに限定されない)を実装するように構成されてもよい。メモリ(複数可)1204は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア1206は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい。
いくつかの実施形態において、映像符号化法は、図12を参照して説明したように、ハードウェアプラットフォームに実装される装置を使用して実施してもよい。
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを有効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが有効化される場合、エンコーダは、1つの映像ブロックを処理する際にこのツールまたはモードを使用するまたは実装するが、このツールまたはモードの使用に基づいて、結果として得られるビットストリームを必ずしも修正しなくてもよい。すなわち、映像のブロックから映像のビットストリーム表現への変換は、決定または判定に基づいて映像処理ツールまたはモードが有効化される場合に、この映像処理ツールまたはモードを使用する。別の例において、映像処理ツールまたはモードが有効化される場合、デコーダは、ビットストリームが映像処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用して、映像のビットストリーム表現から映像のブロックへの変換を行う。
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを無効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが無効にされている場合、エンコーダは、映像のブロックを映像のビットストリーム表現に変換する際に、このツールまたはモードを使用しない。別の例において、映像処理ツールまたはモードが無効にされている場合、デコーダは、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用してビットストリームが修正されていないことを知って、ビットストリームを処理する。
図13は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム1300を示すブロック図である。様々な実装形態は、システム1300のモジュールの一部又は全部を含んでもよい。システム1300は、映像コンテンツを受信するための入力ユニット1302を含んでもよい。映像コンテンツは、未加工又は非圧縮フォーマット、例えば、8又は10ビットのマルチモジュール画素値で受信されてもよく、又は圧縮又は符号化フォーマットで受信されてもよい。入力ユニット1302は、ネットワークインターフェース、周辺バスインターフェース、又は記憶インターフェースを表してもよい。ネットワークインターフェースの例は、イーサネット(登録商標)、パッシブ光ネットワーク(PON)等の有線インターフェース、およびWi-Fi(登録商標)またはセルラーインターフェース等の無線インターフェースを含む。
システム1300は、本明細書に記載される様々な符号化又は符号化方法を実装することができる符号化モジュール1304を含んでもよい。符号化モジュール1304は、入力ユニット1302からの映像の平均ビットレートを符号化モジュール1304の出力に低減し、映像の符号化表現を生成してもよい。従って、この符号化技術は、映像圧縮または映像コード変換技術と呼ばれることがある。符号化モジュール1304の出力は、モジュール1306によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力ユニット1302において受信された、記憶された又は通信された映像のビットストリーム(又は符号化)表現は、モジュール1308によって使用されて、表示インターフェースユニット1310に送信される画素値又は表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像伸張(映像展開)と呼ばれることがある。さらに、特定の映像処理動作を“符号化”動作又はツールと呼ぶが、符号化ツール又は動作は、エンコーダ及びそれに対応する、復号化の結果を逆にする復号化ツール又は動作が、デコーダによって行われることが理解されよう。
周辺バスインターフェースユニットまたは表示インターフェースユニットの例は、ユニバーサルシリアルバス(USB)または高精細マルチメディアインターフェース(HDMI(登録商標))またはディスプレイポート等を含んでもよい。ストレージインターフェースの例は、シリアルアドバンスドテクノロジーアタッチメント(SATA)、PCI、IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、又はデジタルデータ処理及び/又は映像表示を実施可能な他のデバイス等の様々な電子デバイスに実施されてもよい。
以上、説明の目的で本開示の技術の特定の実施形態を説明したが、本発明の範囲から逸脱することなく様々な修正が可能であることは、理解されるであろう。従って、本開示の技術は、添付の特許請求の範囲による場合を除き、限定されない。
本特許明細書に記載された主題および機能操作の実装形態は、本明細書に開示された構造およびその構造的等価物を含め、様々なシステム、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しくはハードウェアで実施されてもよく、またはそれらの1つ以上の組み合わせで実施してもよい。本明細書に記載された主題の実装形態は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置によって実行されるため、又はデータ処理装置の操作を制御するために、有形で非可搬性のコンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして実装することができる。このコンピュータ可読媒体は、機械可読記憶装置、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、又はこれらの1つ以上の組み合わせであってもよい。“データ処理ユニット”又は“データ処理装置”という用語は、例えば、プログラマブル処理装置、コンピュータ、又は複数の処理装置若しくはコンピュータを含め、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、処理装置ファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1つ以上の組み合わせを構成するコードを含むことができる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、成分、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。1つのコンピュータプログラムを、1つのサイトに位置する1つのコンピュータ、または複数のサイトに分散され通信ネットワークによって相互接続される複数のコンピュータで実行させるように展開することも可能である。
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生成することによって機能を実行するための1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブル処理装置によって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
コンピュータプログラムの実行に適した処理装置は、例えば、汎用および専用マイクロ処理装置の両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上の処理装置を含む。一般的に、処理装置は、読み出し専用メモリ又はランダムアクセスメモリ又はその両方から命令及びデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つ以上の記憶装置とである。一般的に、コンピュータは、データを記憶するための1つ以上の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュメモリデバイス等の半導体メモリデバイスを含む。処理装置およびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
本特許明細書は多くの詳細を含むが、これらは、任意の発明の範囲又は特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の発明の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態の文脈で説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている例における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
いくつかの実装形態および例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。
関連出願の相互参照
本願は、2019年4月16日出願の国際特許出願第PCT/CN2019/082855号の優先権と利益を主張する、2020年4月16日出願の国際特許出願第PCT/CN2020/085075号に基づく。米国法に基づくすべての目的のために、上記出願の開示全体は、本明細書の開示の一部として参照により援用される。

Claims (56)

  1. 映像の現在の映像ブロックを前記映像のビットストリーム表現に符号化することであって、前記現在の映像ブロックは、適応ループフィルタ(ALF)で符号化される、符号化することと、
    時間的適応フィルタの1つ以上のセットの可用性または使用に基づいて、前記ビットストリーム表現における前記時間的適応フィルタの前記1つ以上のセット内の時間的適応フィルタのセットの指示を選択的に含むことと、を含む、
    映像処理方法。
  2. 前記時間的適応フィルタの前記セットが利用不可能な場合、前記セットの前記指示を前記ビットストリーム表現から排除する、請求項1に記載の方法。
  3. 前記時間的適応フィルタの前記セットが利用不可能な場合、前記セットの前記指示を前記ビットストリーム表現に含める、請求項1または2に記載の方法。
    前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、前記指示は前記ビットストリーム表現から除外される、請求項1~3のいずれかに記載の方法。
  4. 前記1つ以上の時間的適応フィルタのセットの各々が、1つのフィルタインデックスに関連付けられる、請求項1~3のいずれかに記載の方法。
  5. 前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、固定フィルタを使用する指示は真に等しいものとする、請求項1~3のいずれかに記載の方法。
  6. 前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、時間的適応フィルタを使用する指示は偽に等しいものとする、請求項1~3のいずれかに記載の方法。
  7. 前記1つ以上の時間的適応フィルタのセットのいずれも利用可能でない場合、固定フィルタのインデックスの指示が前記ビットストリーム表現に含まれる、請求項1~3のいずれかに記載の方法。
  8. 映像のビットストリーム表現における時間的適応フィルタのセットの指示に基づいて、適応ループフィルタ(ALF)で符号化される前記映像の現在の映像ブロックに適用可能な前記時間的適応フィルタの前記セットを備える前記時間的適応フィルタの1つ以上のセットの可用性または使用を判定することと、
    前記判定することに基づいて、前記時間的適応フィルタの前記セットを選択的に適用することによって、前記ビットストリーム表現から復号化された現在の映像ブロックを生成することと、を含む、
    映像処理方法。
  9. 前記時間的適応フィルタの前記セットが利用不可能な場合、前記生成することは、前記時間的適応フィルタの前記セットを適用せずに行われる、請求項8に記載の方法。
  10. 前記時間的適応フィルタの前記セットが利用不可能な場合、前記生成を行うことは、前記時間的適応フィルタの前記セットを適用することを含む、請求項8または9に記載の方法。
  11. 前記時間的適応フィルタの前記1つ以上のセットが適応パラメータセット(APS)に含まれ、前記指示がAPSインデックスである、請求項1~10のいずれかに記載の方法。
  12. 異なる方向の勾配計算に基づいて、前記時間的適応フィルタの前記1つ以上のセットのうちの少なくとも1つのためのフィルタインデックスを判定することをさらに含む、請求項1~10のいずれかに記載の方法。
  13. 前記時間的適応フィルタの前記1つ以上のセットのいずれも利用可能でなく、かつ新しいALF係数セットおよび固定ALF係数セットが、前記現在の映像ブロックを構成する符号化ツリーブロック(CTB)、ブロック、タイルグループ、タイル、スライス、またはピクチャにおいて使用されないことを判定することと、
    前記判定することに基づいて、適応ループフィルタリングが無効であると推論することと、をさらに含む、
    請求項1~11のいずれかに記載の方法。
  14. 前記ビットストリーム表現は、前記時間的適応フィルタの前記1つ以上のセットの少なくとも1つが利用不可能であることに呼応して、新しいALF係数セットの使用の第1の指示と、固定ALF係数セットの使用の第2の指示とを含み、前記第1の指示と前記第2の指示のうちの1つが正確に前記ビットストリーム表現において真である、請求項1~11のいずれかに記載の方法。
  15. 前記ビットストリーム表現は、前記ALFの動作に関連付けられたフォーマット規則に準拠する、請求項14に記載の方法。
  16. 前記時間的適応フィルタの前記1つ以上のセットのいずれも利用可能でないことに呼応して、前記ビットストリーム表現は、前記ALFが有効化されていること、および新しいALF係数セットおよび固定ALF係数セットが、前記現在の映像ブロックを構成する符号化ツリーブロック(CTB)、ブロック、タイルグループ、タイル、スライス、またはピクチャにおいて使用されないことの指示を含む、請求項1~11のいずれかに記載の方法。
  17. 前記ビットストリーム表現は、前記ALFの動作に関連付けられたフォーマット規則に準拠しない、請求項16に記載の方法。
  18. 前記ALFが、前記現在の映像ブロックに関連付けられた1つ以上の色成分に適用される、請求項1~17のいずれかに記載の方法。
  19. 適応ループフィルタで符号化された現在の映像ブロックに対して、利用可能な時間的ALF係数セットに基づいて、時間的適応ループフィルタリング(ALF)係数セットの数を判定することであって、前記利用可能な時間的ALF係数セットは、前記判定することの前に符号化または復号化されており、前記ALF係数セットの数は、前記現在の映像ブロックを構成するタイルグループ、タイル、スライス、ピクチャ、符号化ツリーブロック(CTB)、または映像ユニットに使用される、判定することと、
    前記時間的ALF係数セットの前記数に基づいて、前記現在の映像ブロックと前記現在の映像ブロックのビットストリーム表現の間での変換を行うことと、を含む、
    映像処理方法。
  20. 時間的ALF係数セットの数の最大数が、利用可能な時間的ALF係数セットの数に等しく設定される、請求項19に記載の方法。
  21. 前記時間的ALF係数セットの数は、利用可能な時間的ALF係数セットの数と予め規定された数Nとのうちの小さい方に等しく設定され、ここで、Nは整数であり、N≧0である、請求項20に記載の方法。
  22. N=5である、請求項21に記載の方法。
  23. 映像の現在の映像ブロックと前記映像のビットストリーム表現との間での変換の一部として、1つ以上の新しい適応ループフィルタリング(ALF)係数セットを処理することであって、前記現在の映像ブロックが適応ループフィルタで符号化される、処理することと、
    前記処理することの後に、前記1つ以上の新しいALF係数セットを利用可能なALF係数セットとして指定することと、を含む、
    映像処理方法。
  24. イントラランダムアクセスポイント(IRAP)アクセスユニット、IRAPピクチャ、瞬時復号化リフレッシュ(IDR)アクセスユニット、またはIDRピクチャに遭遇することと、
    前記遭遇することに基づいて、前記利用可能なALF係数セットを、利用不可能なALF係数セットとして指定することと、
    をさらに含む請求項23に記載の方法。
  25. 前記利用可能なALF係数セットのうちの少なくとも1つは、前記現在の映像ブロックの後続の映像ブロックのための時間的ALF係数セットである、請求項23または24に記載の方法。
  26. 前記利用可能なALF係数セットが、最大サイズがNであるALF係数セットリストに保持され、ここで、Nが整数である、請求項23~25のいずれかに記載の方法。
  27. 前記ALF係数セットリストは、先入れ先出し(FIFO)の順序で保持される、請求項26に記載の方法。
  28. 前記現在の映像ブロックに関連付けられた各時間層に1つのALF係数セットリストを保持する、請求項1~27のいずれかに記載の方法。
  29. 前記現在の映像ブロックに関連付けられたK個の近傍の時間層ごとに1つのALF係数セットリストを保持する、請求項1~27のいずれかに記載の方法。
  30. 前記現在の映像ブロックを含む現在のピクチャのために第1のALF係数セットリストを保持し、前記現在のピクチャの後続のピクチャのために第2のALF係数セットリストを保持する、請求項1~27のいずれかに記載の方法。
  31. 前記現在のピクチャに基づいて、前記現在のピクチャに続く前記ピクチャ画像を予測し、前記第1のALF係数セットリストが前記第2のALF係数セットリストと同じである、請求項30に記載の方法。
  32. 前記現在のピクチャに続く前記ピクチャおよび前記現在のピクチャの前のピクチャに基づいて、現在のピクチャを予測し、前記第1のALF係数セットリストが前記第2のALF係数セットリストと同じである、請求項30に記載の方法。
  33. イントラランダムアクセスポイント(IRAP)アクセスユニット、IRAPピクチャ、瞬時復号化リフレッシュ(IDR)アクセスユニット、またはIDRピクチャに遭遇することと、
    前記遭遇することの後に、1つ以上のALF係数セットリストを空にすること、をさらに含む、
    請求項23に記載の方法。
  34. 前記現在の映像ブロックに関連付けられた異なる色成分について、異なるALF係数セットリストを保持する、請求項23に記載の方法。
  35. 前記異なる色成分は、輝度成分、Cr成分、およびCb成分のうちの1つ以上を含む、請求項34に記載の方法。
  36. 複数のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)に対して1つのALF係数セットリストを保持し、前記1つのALF係数セットリストのインデックス付けは、前記複数のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)の各々に対して異なる、請求項23に記載の方法。
  37. 前記インデックス付けは、昇順であり、前記現在の映像ブロックに関連付けられた第1の時間層インデックスと、前記現在の映像ブロックを構成する現在のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)に関連付けられた第2の時間層インデックスとに基づいている、請求項36に記載の方法。
  38. 前記インデックス付けは、昇順であり、前記現在の映像ブロックに関連付けられたピクチャオーダカウント(POC)と、前記現在の映像ブロックを構成する現在のピクチャ、タイルグループ、タイル、スライス、または符号化ツリーユニット(CTU)に関連付けられた第2のPOCとに基づいている、請求項36に記載の方法。
  39. 前記インデックス付けは、前記利用可能なALF係数セットに割り当てられる最小のインデックスを含む、請求項36に記載の方法。
  40. 前記変換は、クリッピング演算を含み、前記方法は、
    前記現在の映像ブロックのサンプルに対して、前記サンプルの近傍のサンプルを複数のグループに分類することと、
    前記複数のグループの各々についての前記クリッピング演算のために、前記ビットストリーム表現で信号通知された単一のパラメータのセットを使用することと、をさらに含む、
    請求項23に記載の方法。
  41. 前記変換は、クリッピング演算を含み、前記クリッピング演算のためのパラメータのセットが、前記1つ以上の新しいALF係数セットに対して予め規定される、請求項23に記載の方法。
  42. 前記変換は、クリッピング演算を含み、前記クリッピング演算のためのパラメータのセットが、前記1つ以上の新しいALF係数セットに対して前記ビットストリーム表現で信号通知される、請求項23に記載の方法。
  43. 映像の現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域のヘッダにおける適応ループフィルタリング(ALF)の指示が、前記ビットストリーム表現に関連付けられた適応パラメータセット(APS)ネットワーク抽象化層(NAL)ユニットにおけるALFの指示と等しいことを判定することと、
    前記変換を行うことと、を含む、
    映像処理方法。
  44. 前記映像領域は、ピクチャである、請求項43に記載の方法。
  45. 前記映像領域は、スライスである、請求項43に記載の方法。
  46. 映像の現在の映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記映像の映像領域で使用される適応ループフィルタのタイプに基づいて、非線形適応ループフィルタリング(ALF)動作を選択的に有効化することと、
    前記選択的に有効化することの後に、前記変換を行うことを含む、
    映像処理方法。
  47. 前記映像領域は符号化ツリーユニット(CTU)であり、前記適応ループフィルタの前記タイプが固定ALFセットまたは時間的ALFセットを含むと判定されると、前記非線形ALF動作は無効化される、請求項46に記載の方法。
  48. 前記映像領域は、スライス、タイルグループ、タイルまたは符号化ツリーユニット(CTU)であり、前記非線形ALF動作は、前記適応ループフィルタの前記タイプが固定ALFセットを含むと判定されると、有効化される、請求項46に記載の方法。
  49. 前記ビットストリーム表現において、前記非線形ALF動作のために1つ以上のクリッピングパラメータを選択的に信号通知することをさらに含む、請求項46に記載の方法。
  50. 前記1つ以上のクリッピングパラメータが信号通知される、請求項49に記載の方法。
  51. 前記1つ以上のクリッピングパラメータは、前記ビットストリーム表現で信号通知されるALFフィルタ係数セットに対して信号通知される、請求項49に記載の方法。
  52. 前記適応ループフィルタの前記タイプが固定ALFセットを含むと判定されると、前記1つ以上のクリッピングパラメータが信号通知される、請求項49に記載の方法。
  53. 前記変換は、前期ビットストリーム表現から現在の映像ブロックを生成する、請求項19~52のいずれかに記載の方法。
  54. 前記変換は、現在の映像ブロックから前記ビットストリーム表現を生成する、請求項19~52のいずれかに記載の方法。
  55. 処理装置と、命令を搭載した非一時的メモリとを備え、前記処理装置が実行すると、前記命令は、前記処理装置に、請求項1~54のいずれか1項以上に記載の前記方法を実装する、映像システムにおける装置。
  56. 非一時的なコンピュータ可読媒体に記憶されたコンピュータプログラム製品であって、請求項1~54のいずれか1つ以上に記載の前記方法を実行するためのプログラムコードを含む、コンピュータプログラム製品。
JP2021559943A 2019-04-16 2020-04-16 映像符号化のためのon適応ループフィルタリング Pending JP2022527012A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023160428A JP2023179557A (ja) 2019-04-16 2023-09-25 映像符号化のためのon適応ループフィルタリング

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2019082855 2019-04-16
CNPCT/CN2019/082855 2019-04-16
PCT/CN2020/085075 WO2020211810A1 (en) 2019-04-16 2020-04-16 On adaptive loop filtering for video coding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023160428A Division JP2023179557A (ja) 2019-04-16 2023-09-25 映像符号化のためのon適応ループフィルタリング

Publications (2)

Publication Number Publication Date
JP2022527012A true JP2022527012A (ja) 2022-05-27
JPWO2020211810A5 JPWO2020211810A5 (ja) 2022-06-27

Family

ID=72838028

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021559943A Pending JP2022527012A (ja) 2019-04-16 2020-04-16 映像符号化のためのon適応ループフィルタリング
JP2023160428A Pending JP2023179557A (ja) 2019-04-16 2023-09-25 映像符号化のためのon適応ループフィルタリング

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023160428A Pending JP2023179557A (ja) 2019-04-16 2023-09-25 映像符号化のためのon適応ループフィルタリング

Country Status (6)

Country Link
US (2) US11611747B2 (ja)
EP (1) EP3928516A4 (ja)
JP (2) JP2022527012A (ja)
KR (1) KR20210145749A (ja)
CN (3) CN117499679A (ja)
WO (2) WO2020211809A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3963889A4 (en) 2019-06-04 2023-01-25 Beijing Bytedance Network Technology Co., Ltd. CONDITIONAL IMPLEMENTATION OF A MOVEMENT CANDIDATE LIST CONSTRUCTION PROCESS
CN117395397A (zh) 2019-06-04 2024-01-12 北京字节跳动网络技术有限公司 使用临近块信息的运动候选列表构建
KR20220030953A (ko) 2019-07-09 2022-03-11 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 적응적 루프 필터링을 위한 샘플 결정
AU2020309130B2 (en) 2019-07-11 2023-06-08 Beijing Bytedance Network Technology Co., Ltd. Sample padding in adaptive loop filtering
WO2021008513A1 (en) 2019-07-14 2021-01-21 Beijing Bytedance Network Technology Co., Ltd. Transform block size restriction in video coding
MX2022000120A (es) 2019-07-15 2022-02-16 Beijing Bytedance Network Tech Co Ltd Clasificacion en filtrado de bucle adaptativo.
CN117294847A (zh) 2019-09-18 2023-12-26 北京字节跳动网络技术有限公司 视频编解码中自适应环路滤波器的两部分信令
EP4018652A4 (en) 2019-09-22 2022-11-02 Beijing Bytedance Network Technology Co., Ltd. FILLING METHOD IN AN ADAPTIVE LOOP FILTER
KR20220063177A (ko) 2019-09-27 2022-05-17 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 상이한 비디오 유닛들 간의 적응적 루프 필터링
CN117596389A (zh) 2019-09-28 2024-02-23 北京字节跳动网络技术有限公司 视频编解码中的几何分割模式
WO2021072177A1 (en) 2019-10-09 2021-04-15 Bytedance Inc. Cross-component adaptive loop filtering in video coding
CN117956146A (zh) 2019-10-10 2024-04-30 北京字节跳动网络技术有限公司 自适应环路滤波中不可用样点位置处的填充处理
WO2021076475A1 (en) 2019-10-14 2021-04-22 Bytedance Inc. Joint coding of chroma residual and filtering in video processing
EP4042692A4 (en) 2019-10-29 2022-11-30 Beijing Bytedance Network Technology Co., Ltd. COMPONENT ADAPTIVE LOOP FILTER
WO2021118977A1 (en) 2019-12-09 2021-06-17 Bytedance Inc. Using quantization groups in video coding
KR102619404B1 (ko) 2019-12-11 2023-12-28 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 크로스 컴포넌트 적응적 루프 필터링을 위한 샘플 패딩
WO2021138293A1 (en) 2019-12-31 2021-07-08 Bytedance Inc. Adaptive color transform in video coding
US11863742B2 (en) * 2020-12-03 2024-01-02 Alibaba Group Holding Limited Method for using adaptive loop filter and system thereof
WO2023020305A1 (en) * 2021-08-14 2023-02-23 Beijing Bytedance Network Technology Co., Ltd. Improved fusion mode for adaptive loop filter in video coding
WO2023051561A1 (en) * 2021-09-29 2023-04-06 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing
CN114401020B (zh) * 2022-03-25 2022-07-01 北京航空航天大学 基于多维维纳霍夫方程的高速非理想信道自适应补偿方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013524678A (ja) * 2010-04-05 2013-06-17 サムスン エレクトロニクス カンパニー リミテッド 変換及び逆変換に基づいた補間方法及び装置
WO2013145174A1 (ja) * 2012-03-28 2013-10-03 株式会社 東芝 動画像符号化方法、動画像復号方法、動画像符号化装置及び動画像復号装置
JP2015080002A (ja) * 2012-01-19 2015-04-23 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2017513335A (ja) * 2014-03-14 2017-05-25 ヴィド スケール インコーポレイテッド Rgbビデオコーディングエンハンスメントのためのシステムおよび方法
JP2018509074A (ja) * 2015-02-11 2018-03-29 クアルコム,インコーポレイテッド コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf)

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070058713A1 (en) 2005-09-14 2007-03-15 Microsoft Corporation Arbitrary resolution change downsizing decoder
EP2080382B1 (en) 2006-10-20 2016-07-20 Nokia Technologies Oy System and method for implementing low-complexity multi-view video coding
WO2009050658A2 (en) 2007-10-15 2009-04-23 Nokia Corporation Motion skip and single-loop encoding for multi-view video content
MX2012011695A (es) 2010-04-09 2012-11-16 Mitsubishi Electric Corp Dispositivo codificador de imagen en movimiento y dispositivo decodificador de imagen en movimento.
CN103460699B (zh) * 2011-03-30 2017-06-20 Lg电子株式会社 环路滤波方法及其设备
CN105120271B (zh) * 2011-04-21 2018-05-15 寰发股份有限公司 视频编解码方法与装置
WO2012163199A1 (en) * 2011-05-27 2012-12-06 Mediatek Inc. Method and apparatus for line buffer reduction for video processing
CN102857746B (zh) * 2011-06-28 2017-03-29 中兴通讯股份有限公司 环路滤波编解码方法及装置
US9432700B2 (en) * 2011-09-27 2016-08-30 Broadcom Corporation Adaptive loop filtering in accordance with video coding
US9357235B2 (en) * 2011-10-13 2016-05-31 Qualcomm Incorporated Sample adaptive offset merged with adaptive loop filter in video coding
US20130107973A1 (en) 2011-10-28 2013-05-02 Qualcomm Incorporated Loop filtering control over tile boundaries
CN103096054B (zh) * 2011-11-04 2015-07-08 华为技术有限公司 一种视频图像滤波处理方法和装置
CN107835413A (zh) * 2011-11-08 2018-03-23 株式会社Kt 对视频信号进行解码的方法
US9591331B2 (en) 2012-03-28 2017-03-07 Qualcomm Incorporated Merge signaling and loop filter on/off signaling
WO2013144144A1 (en) * 2012-03-30 2013-10-03 Panasonic Corporation Syntax and semantics for adaptive loop filter and sample adaptive offset
GB2501535A (en) * 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
TW201507443A (zh) 2013-05-15 2015-02-16 Vid Scale Inc 基於單迴路解碼之多層視訊編碼
US20150049821A1 (en) 2013-08-16 2015-02-19 Qualcomm Incorporated In-loop depth map filtering for 3d video coding
CN105765974B (zh) 2013-10-14 2019-07-02 微软技术许可有限责任公司 用于视频和图像编码和解码的帧内块复制预测模式的特征
US11070810B2 (en) 2014-03-14 2021-07-20 Qualcomm Incorporated Modifying bit depths in color-space transform coding
KR20220133337A (ko) 2014-03-16 2022-10-04 브이아이디 스케일, 인크. 무손실 비디오 코딩의 시그널링을 위한 방법 및 장치
US10063867B2 (en) 2014-06-18 2018-08-28 Qualcomm Incorporated Signaling HRD parameters for bitstream partitions
CN104735450B (zh) * 2015-02-26 2019-06-07 北京大学 一种在视频编解码中进行自适应环路滤波的方法及装置
US11405611B2 (en) * 2016-02-15 2022-08-02 Qualcomm Incorporated Predicting filter coefficients from fixed filters for video coding
US10764576B2 (en) 2016-05-04 2020-09-01 Microsoft Technology Licensing, Llc Intra-picture prediction using non-adjacent reference lines of sample values
US10694204B2 (en) 2016-05-06 2020-06-23 Vid Scale, Inc. Systems and methods for motion compensated residual prediction
EP3457690A4 (en) * 2016-05-13 2019-05-01 Sharp Kabushiki Kaisha IMAGE DECODING DEVICE AND IMAGE ENCODING DEVICE
US11095922B2 (en) 2016-08-02 2021-08-17 Qualcomm Incorporated Geometry transformation-based adaptive loop filtering
EP3297282A1 (en) * 2016-09-15 2018-03-21 Thomson Licensing Method and apparatus for video coding with adaptive clipping
US10694202B2 (en) 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
US10506230B2 (en) * 2017-01-04 2019-12-10 Qualcomm Incorporated Modified adaptive loop filter temporal prediction for temporal scalability support
US10708591B2 (en) * 2017-03-20 2020-07-07 Qualcomm Incorporated Enhanced deblocking filtering design in video coding
US10440396B2 (en) * 2017-03-28 2019-10-08 Qualcomm Incorporated Filter information sharing among color components
US10567768B2 (en) * 2017-04-14 2020-02-18 Apple Inc. Techniques for calculation of quantization matrices in video coding
US20180359486A1 (en) * 2017-06-07 2018-12-13 Mediatek Inc. Non-local adaptive loop filter processing
US10778974B2 (en) * 2017-07-05 2020-09-15 Qualcomm Incorporated Adaptive loop filter with enhanced classification methods
JP7390300B2 (ja) 2017-11-01 2023-12-01 ヴィド スケール インコーポレイテッド ビデオコーディングにおける適応ループフィルタを簡略化する方法
US10721469B2 (en) 2017-11-28 2020-07-21 Qualcomm Incorporated Line buffer reduction for adaptive loop filtering in video coding
WO2019126170A1 (en) 2017-12-19 2019-06-27 Vid Scale, Inc. Face discontinuity filtering for 360-degree video coding
US20190238845A1 (en) 2018-01-26 2019-08-01 Qualcomm Incorporated Adaptive loop filtering on deblocking filter results in video coding
US20190306502A1 (en) 2018-04-02 2019-10-03 Qualcomm Incorporated System and method for improved adaptive loop filtering
CN109031227B (zh) * 2018-06-25 2021-03-23 深圳大学 一种共轭梯度空时自适应处理方法及系统
WO2020143824A1 (en) 2019-01-13 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and shared merge list

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013524678A (ja) * 2010-04-05 2013-06-17 サムスン エレクトロニクス カンパニー リミテッド 変換及び逆変換に基づいた補間方法及び装置
JP2015080002A (ja) * 2012-01-19 2015-04-23 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
WO2013145174A1 (ja) * 2012-03-28 2013-10-03 株式会社 東芝 動画像符号化方法、動画像復号方法、動画像符号化装置及び動画像復号装置
JP2017513335A (ja) * 2014-03-14 2017-05-25 ヴィド スケール インコーポレイテッド Rgbビデオコーディングエンハンスメントのためのシステムおよび方法
JP2018509074A (ja) * 2015-02-11 2018-03-29 クアルコム,インコーポレイテッド コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NAN HU, ET AL.: ""CE5: Coding tree block based adaptive loop filter (CE5-4)", Document: JVET-N0415-v2", JVET-N0415, vol. version 2, JPN6022047954, 19 March 2019 (2019-03-19), pages 1 - 15, ISSN: 0004921356 *
SUNG-CHANG LIM, ET AL.: ""CE2: Subsampled sum-modified-Laplacian (Test 4.1.1)", Document: JVET-K0164_r1", JVET-K0164, vol. version 2, JPN6022047952, 6 July 2018 (2018-07-06), pages 1 - 9, ISSN: 0004921355 *

Also Published As

Publication number Publication date
WO2020211809A1 (en) 2020-10-22
CN113767623B (zh) 2024-04-02
EP3928516A4 (en) 2022-06-15
WO2020211810A1 (en) 2020-10-22
EP3928516A1 (en) 2021-12-29
CN113767623A (zh) 2021-12-07
US11611747B2 (en) 2023-03-21
CN113767632A (zh) 2021-12-07
US20230217021A1 (en) 2023-07-06
JP2023179557A (ja) 2023-12-19
US20210385446A1 (en) 2021-12-09
KR20210145749A (ko) 2021-12-02
CN117499679A (zh) 2024-02-02
CN113767632B (zh) 2023-08-25

Similar Documents

Publication Publication Date Title
JP2022527012A (ja) 映像符号化のためのon適応ループフィルタリング
JP7425241B2 (ja) 双方向オプティカルフローに基づく映像符号化及び復号化
JP7405865B2 (ja) 非線形適応ループフィルタにおけるパラメータの時間的予測
JP7389251B2 (ja) 輝度の差分を用いるクロスコンポーネント適応ループフィルタ
JP2022529479A (ja) クロミナンス残差の結合符号化のための構文要素の信号通知
US20240048735A1 (en) Cross-component adaptive loop filter
US11671594B2 (en) Selective application of sample padding in adaptive loop filtering
JP7323711B2 (ja) ビデオコーディングにおける適応ループフィルタの二部分シグナリング
JP2023501192A (ja) クロス成分適応ループフィルタ
CN115104302A (zh) 跨分量适应性回路滤波的样点填充
JP2023531223A (ja) 適応ループフィルタリングのための境界位置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211008

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230929

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20231110

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20240119