JP2023103284A - ビデオコーディングのためのデブロッキングフィルタ - Google Patents
ビデオコーディングのためのデブロッキングフィルタ Download PDFInfo
- Publication number
- JP2023103284A JP2023103284A JP2023071920A JP2023071920A JP2023103284A JP 2023103284 A JP2023103284 A JP 2023103284A JP 2023071920 A JP2023071920 A JP 2023071920A JP 2023071920 A JP2023071920 A JP 2023071920A JP 2023103284 A JP2023103284 A JP 2023103284A
- Authority
- JP
- Japan
- Prior art keywords
- block
- video
- filter
- boundary
- boundaries
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 241
- 230000008569 process Effects 0.000 claims abstract description 75
- 238000001914 filtration Methods 0.000 claims abstract description 63
- 238000012545 processing Methods 0.000 claims description 71
- 239000013598 vector Substances 0.000 claims description 47
- 238000006243 chemical reaction Methods 0.000 claims description 26
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 22
- 230000015654 memory Effects 0.000 claims description 10
- 230000002123 temporal effect Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 9
- 238000003672 processing method Methods 0.000 abstract 1
- 230000000007 visual effect Effects 0.000 description 34
- 238000005516 engineering process Methods 0.000 description 28
- 230000003287 optical effect Effects 0.000 description 28
- 241000023320 Luma <angiosperm> Species 0.000 description 24
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 24
- 239000011159 matrix material Substances 0.000 description 22
- 230000009466 transformation Effects 0.000 description 19
- 230000002457 bidirectional effect Effects 0.000 description 13
- 230000001419 dependent effect Effects 0.000 description 12
- 230000004044 response Effects 0.000 description 11
- 230000003044 adaptive effect Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 9
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 7
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005192 partition Methods 0.000 description 6
- 238000013139 quantization Methods 0.000 description 5
- 230000000717 retained effect Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 101100277553 Caenorhabditis elegans dep-1 gene Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】デブロッキングフィルタリングプロセスを改善するビデオデータ処理方法、装置及び非一時的コンピュータ読み出し可能格納媒体を提供する。【解決手段】方法は、2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別するステップと、垂直エッジ又は水平エッジを横切る2つのビデオブロックのうちの少なくとも1つに基づくフィルタの境界強度の計算を、コンバインド・インター・イントラ予測(CIIP)モードを用いてコード化するステップと、フィルタをオン又はオフにするべきかどうか決めるステップと、フィルタをオンにする場合のフィルタの強度を選択するその選択に基づいて、ビデオブロックへのデブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。【選択図】図22
Description
関連出願の相互参照
本出願は、2021年11月11日に出願された日本国特許出願第2021-567799号の分割出願であり、パリ条約に基づく適用特許法及び/又は規則に基づいて2019年5月11日に出願された国際特許出願第PCT/CN2019/086488号の優先権及び利益を適時に主張するために行われる。法に基づくすべての目的のために、前述の出願の開示全体は、本出願の開示の一部として引用により援用される。
本出願は、2021年11月11日に出願された日本国特許出願第2021-567799号の分割出願であり、パリ条約に基づく適用特許法及び/又は規則に基づいて2019年5月11日に出願された国際特許出願第PCT/CN2019/086488号の優先権及び利益を適時に主張するために行われる。法に基づくすべての目的のために、前述の出願の開示全体は、本出願の開示の一部として引用により援用される。
本発明は、ビデオコーディング/デコーディング技術、デバイス及びシステムに関する。
ビデオ圧縮の進歩にもかかわらず、デジタルビデオは、依然として、インターネット及び他のデジタル通信ネットワークにおける最大の帯域幅使用を占めている。映像の受信・表示が可能な接続ユーザデバイスの数が増加するにつれて、デジタル映像の利用に対する帯域幅需要は増加し続けることが予想される。
ビデオコーディング/デコーディング技術、特にイメージ/ビデオコーディングにおけるデブロッキングフィルタに関連するデバイス、システム及び方法について記載されている。記載された方法は、開発中の規格、例えば、Versatile Video Coding及びfuture video coding標準又はビデオコーデックに適用され得る。
一態様では、開示された技術は、ビジュアルメディア処理のための方法を提供するために使用することができる。この方法は、2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別するステップと、垂直エッジ又は水平エッジを横切る2つのビデオブロックのうちの少なくとも1つに基づくフィルタの境界強度の計算は、コンバインド・インター・イントラ予測(CIIP)モードを用いてコード化されるステップと、フィルタをオン又はオフにするべきかどうかを決めるステップ(deciding)と、フィルタをオンにする場合のフィルタの強度を選択するステップと、その選択に基づいて、ビデオブロックへのデブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。
別の態様においては、開示された技術は、ビジュアルメディア処理のための方法を提供するために用いることができる。この方法は、ビジュアルメディアデータのビデオブロックとビデオブロックのビットストリーム表現との間のコンバートに適用可能なコーディングスキームを決定するステップと、コーディングスキームの決定に基づいて、ビデオブロックのコンバート中に、ビデオブロックへのインループフィルタの適用を選択的にイネーブル又はディセーブルにするステップと、を含む。
さらに別の態様においては、開示された技術は、ビジュアルメディア処理のための方法を提供するために用いることができる。この方法は、ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバートに適用可能な変換マトリックスのタイプを決定するステップと、変換マトリックスのタイプの決定に基づいて、ビデオブロックのコンバート中に、ビデオブロックへのデブロッキング(DB)フィルタプロセスの適用を選択的にイネーブル又はディセーブルにするステップと、を含む。
さらに別の態様においては、開示された技術は、ビジュアルメディア処理のための方法を提供するために用いることができる。この方法は、ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバート中に、ビデオブロックへのインループフィルタリングステップの適用を決定するステップであって、インループフィルタリングステップは、フィルタされるべき前記ビデオブロック内のサンプルに適用されるクリッピング動作を含む、ステップと、ビデオブロックに関連する1つ以上の条件を決定することに応答して、前記クリッピング動作を選択的にイネーブル又はディセーブルにするステップと、を含む。
さらに別の態様では、上述の方法は、プロセッサ実行可能コードの形態で具体化され、コンピュータ読み取り可能プログラム媒体に格納される。
さらに別の態様では、上述の方法を実行するように構成又は動作可能なデバイスが開示される。デバイスは、この方法を実装するようにプログラムされたプロセッサを含み得る。
さらに別の態様では、ビデオデコーダ装置は、本明細書に記載される方法を実装し得る。
さらに別の態様では、ビデオエンコーダ装置は、本明細書に記載の方法を実装合い得る。
開示された技術の上記の態様及び特徴は、図面、明細書及び特許請求の範囲により詳細に記載されている。
より高解像度のビデオに対する要求が高まっているため、ビデオコーディング方法及び技術は、現代の技術では至るところに存在している。ビデオコーデックは、典型的には、デジタルビデオを圧縮又は解凍する電子回路又はソフトウェアを含み、より高いコーディング効率を提供するために絶えず改良されている。ビデオコーデックは、圧縮されていないビデオを圧縮形式にコンバートする。ビデオ品質、ビデオを表現するために使用されるデータ量(ビットレートによって決定される)、エンコーディング及びデコーディングアルゴリズムの複雑さ、データ損失及びエラーに対する感度、編集の容易さ、ランダムアクセス、及びエンドツーエンド遅延(待ち時間)の間には複雑な関係がある。圧縮フォーマットは、通常、標準的なビデオ圧縮仕様、例えば、高効率ビデオコーディング(High Efficiency Video Coding:HEVC)標準(H.265又はMPEG-H Part 2としても知られている)、最終化される汎用ビデオコーディング(VVC)標準、又は他の現在及び/又は将来のビデオコーディング標準に準拠している。
いくつかの実施態様では、ジョイント探索モデル (JEM:Joint Exploration Model)として知られる参照ソフトウェアを用いて、将来のビデオコーディング技術が調査される。JEMでは、サブブロックベース予測は、アフィン予測、代替時間動きベクトル予測(ATMVP:alternative temporal motion vector prediction)、空間時間動きベクトル予測(STMVP:spatial-temporal motion vector prediction)、双方向オプティカルフロー(BIO:bi-directional optical flow)、フレームレートアップコンバージョン(FRUC:Frame-Rate Up Conversion)、局所適応動きベクトル解像度(LAMVR:Locally Adaptive Motion Vector Resolution)、オーバーラップブロック動き補償(OBMC:Overlapped Block Motion Compensation)、局所照明補償(LIC:Local Illumination Compensation)、デコーダ側動きベクトル洗練化(DMVR:Decoder-side Motion Vector Refinemen)などのいくつかのコーディングツールに適応される。
開示された技術の実施形態は、ランタイム性能を改善するために、既存のビデオコーディング標準(例えば、HEVC、H.265)及び将来の標準に適用され得る。本明細書は、解凍又はデコードされたデジタルビデオ又は画像の品質を改善するために、画像又はビデオビットストリームのデコーダによって使用され得る種々の技術を提供する。簡潔さのために、本明細書では、用語「ビデオ」は、一連の画像(伝統的にビデオと称される)と個々の画像の両方を含むために使用される。さらに、ビデオエンコーダは、さらなるエンコードのために使用されるデコードされたフレームを再構成するために、エンコードのプロセス中にこれらの技術を実装することもできる。
本明細書では、説明の可読性を向上させるためにセクション見出しを使用しており、説明又は実施形態(及び/又は実装)を各セクションのみに限定するものではない。
1 典型的なビデオコーデックのコーディングフローの例
図1は、VVCのエンコーダブロック図の実施例を示し、3ループのフィルタブロック:デブロックフィルタ(DF)、サンプル適応オフセット(SAO)及びALFを含む。所定のフィルタを使用するDFと異なり、SAO及びALFが、現在画像のオリジナルサンプルを利用して、オフセットを加えることによって、また、フィルタ係数及びオフセットをシグナリングするコード化された追加情報(side information)のぞれぞれで有限インパルス応答(FIR)フィルタを適用することによって、オリジナルのサンプルと再構成されたサンプルとの間の平均二乗エラーを減少させる。ALFは、各画像の最終処理ステージに位置し、前のステージで生成されたアーチファクトを捕捉し修復しようとするツールと見なすことができる。
図1は、VVCのエンコーダブロック図の実施例を示し、3ループのフィルタブロック:デブロックフィルタ(DF)、サンプル適応オフセット(SAO)及びALFを含む。所定のフィルタを使用するDFと異なり、SAO及びALFが、現在画像のオリジナルサンプルを利用して、オフセットを加えることによって、また、フィルタ係数及びオフセットをシグナリングするコード化された追加情報(side information)のぞれぞれで有限インパルス応答(FIR)フィルタを適用することによって、オリジナルのサンプルと再構成されたサンプルとの間の平均二乗エラーを減少させる。ALFは、各画像の最終処理ステージに位置し、前のステージで生成されたアーチファクトを捕捉し修復しようとするツールと見なすことができる。
2 HEVCにおけるデブロッキングスキームの例
デブロッキングフィルタプロセスは、デコーディングプロセスと同じ順序で各CUに対して実行される。まず垂直エッジをフィルタリング(水平フィルタリング)し、次に水平エッジをフィルタリング(垂直フィルタリング)する。フィルタリングは、ルマコンポーネントとクロマコンポーネントの両方について、フィルタリングされると決定された8×8ブロック境界に適用される。4×4ブロック境界は、複雑さを低減するために処理されない。
デブロッキングフィルタプロセスは、デコーディングプロセスと同じ順序で各CUに対して実行される。まず垂直エッジをフィルタリング(水平フィルタリング)し、次に水平エッジをフィルタリング(垂直フィルタリング)する。フィルタリングは、ルマコンポーネントとクロマコンポーネントの両方について、フィルタリングされると決定された8×8ブロック境界に適用される。4×4ブロック境界は、複雑さを低減するために処理されない。
図2は、デブロッキングフィルタプロセスの全体的な処理フローを示す。境界には、フィルタリングなし、弱フィルタリング、強フィルタリングの3つのフィルタリングステータスがある。各フィルタリング決定は、境界強度、Bs、及び閾値、β及びtCに基づく。
2.1 境界決定
フィルタリングプロセスには、CU境界、TU境界、PU境界の3種類の境界が含まれ得る。CUの外側エッジであるCU境界は、常にTU境界又はPU境界でもあるので、CU境界は常にフィルタリングに含まれる。PU形状が2N×N(N>4)でRQT深さが1に等しい場合、8×8ブロックグリッドにおけるTU境界とCU内部の各PU間のPU境界がフィルタリングに含まれる。例外の1つは、PU境界がTU内にある場合、その境界はフィルタリングされないことである。
フィルタリングプロセスには、CU境界、TU境界、PU境界の3種類の境界が含まれ得る。CUの外側エッジであるCU境界は、常にTU境界又はPU境界でもあるので、CU境界は常にフィルタリングに含まれる。PU形状が2N×N(N>4)でRQT深さが1に等しい場合、8×8ブロックグリッドにおけるTU境界とCU内部の各PU間のPU境界がフィルタリングに含まれる。例外の1つは、PU境界がTU内にある場合、その境界はフィルタリングされないことである。
2.2 境界強度計算
図3は、Bs計算のためのフローチャートを示す。一般的に言えば、境界強度(Bs)は、境界に対してどの程度強いフィルタリングが必要であるかを反映する。Bsが大きい場合は、強力なフィルタリングを考慮すべきである。PとQをフィルタリングに関与するブロックとして定義すると、Pは境界の左側(垂直エッジの場合)又は上方(水平エッジの場合)に位置するブロック、Qは境界の右側(垂直エッジの場合)又は上方(水平エッジの場合)に位置するブロックを表す。図3は、イントラコーディングモード、非ゼロ変換係数及び動き情報の存在、参照画像、動きベクトルの数、及び動きベクトルの差に基づいてBs値がどのように計算されるかを示す。
図3は、Bs計算のためのフローチャートを示す。一般的に言えば、境界強度(Bs)は、境界に対してどの程度強いフィルタリングが必要であるかを反映する。Bsが大きい場合は、強力なフィルタリングを考慮すべきである。PとQをフィルタリングに関与するブロックとして定義すると、Pは境界の左側(垂直エッジの場合)又は上方(水平エッジの場合)に位置するブロック、Qは境界の右側(垂直エッジの場合)又は上方(水平エッジの場合)に位置するブロックを表す。図3は、イントラコーディングモード、非ゼロ変換係数及び動き情報の存在、参照画像、動きベクトルの数、及び動きベクトルの差に基づいてBs値がどのように計算されるかを示す。
Bsは4×4ブロックベースで計算されるが、8×8グリッドに再マッピングされる。4×4グリッドのラインで構成される8画素に対応するBsの2つの値の最大値が、8×8グリッドの境界のBsとして選択される。
図4は、CTU境界のBs計算のための参照情報の一例を示す。ラインバッファメモリ要求を低減するために、CTU境界についてのみ、左側又は上側の2ブロック(4×4グリッド)毎の情報が、図4に示されるように再使用される。
2.3 β及びtCの決定
弱フィルタリングプロセス、強フィルタ及び弱フィルタの選択、フィルタのオン/オフ決定、に関与する閾値βとtCは、それぞれ、QPP及びQPQ、P及びQブロックのルマ量子化パラメータに基づいて導出した。β及びtCを導くために用いたQは、次のように計算される。
Q=((QPP+QPQ+1)>>1)
弱フィルタリングプロセス、強フィルタ及び弱フィルタの選択、フィルタのオン/オフ決定、に関与する閾値βとtCは、それぞれ、QPP及びQPQ、P及びQブロックのルマ量子化パラメータに基づいて導出した。β及びtCを導くために用いたQは、次のように計算される。
Q=((QPP+QPQ+1)>>1)
変数βは、Qに基づいて、表1に示すように導出される。Bsが1より大きい場合、変数tCは、入力としてClip3(0,55,Q+2)で、表1のように特定される。それ以外の場合(BSが1以下)、変数tCは、Qを入力として表1のように特定される。
2.4 各4ラインに対するフィルタのオン/オフ決定
図5は、フィルタのオン/オフ決定に関する画素の例を示す。なお、以下の説明では、pNMは垂直エッジに関してM行目における左側のN番目のサンプル、又は、水平エッジに関してM列目における上側のN番目のサンプルを表し、qNMは垂直エッジに関してM行目における右側のN番目のサンプル、又は、水平エッジに関してM列目における下側のN番目のサンプルを表す。pNM及びqNMの例を図5に示す。
図5は、フィルタのオン/オフ決定に関する画素の例を示す。なお、以下の説明では、pNMは垂直エッジに関してM行目における左側のN番目のサンプル、又は、水平エッジに関してM列目における上側のN番目のサンプルを表し、qNMは垂直エッジに関してM行目における右側のN番目のサンプル、又は、水平エッジに関してM列目における下側のN番目のサンプルを表す。pNM及びqNMの例を図5に示す。
なお、以下の説明では、pNは垂直エッジに関する行における左側のN番目のサンプル、又は、水平エッジに関する列における上側のN番目のサンプルを表し、qNは垂直エッジに関する行における右側のN番目のサンプル、又は、水平エッジに関関する列における下側のN番目のサンプルを表す。
フィルタのON/OFFは、4ラインを単位として行う。図5は、フィルタのオン/オフ決定に関する画素の例を示す。最初の4ラインの赤い2つのボックス内の6画素は、4ラインに対するフィルタのオン/オフを決定するために使用される。2番目の4ラインの赤い2つのボックス内の6画素は、2番目の4行のフィルタのオン/オフを決定するために使用される。
条件が満たされないと、第一の4ラインに対するフィルタリングは行われない。さらに、条件が満たされると、dE、dEp1、及びdEp2が弱フィルタリングプロセスに対して導出される。変数dEは1に設定される。dp0+dp3<(β+(β>1))>>3である場合、可変dEp1は1に等しく設定される。dq0+dq3<(β+(β>1))>>3である場合、可変dEq1は1に等しく設定される。第二の4ラインに対して、上記と同様の方法で決定が行われる。
2.5 4ラインに対する強弱フィルタ選択
フィルタをイネーブルにすることを決めるために第一の4ラインをチェックした後、以下の2つの条件が満たされれば、第一の4ラインのフィルタに強フィルタを使用する。それ以外の場合、フィルタリングに弱フィルタが使用される。関与する画素は、図5に示すように、フィルタのオン/オフ決定に使用される画素と同じである。
フィルタをイネーブルにすることを決めるために第一の4ラインをチェックした後、以下の2つの条件が満たされれば、第一の4ラインのフィルタに強フィルタを使用する。それ以外の場合、フィルタリングに弱フィルタが使用される。関与する画素は、図5に示すように、フィルタのオン/オフ決定に使用される画素と同じである。
2.5.1 強フィルタリング(Strong filtering)
強フィルタリングについて、フィルタリングされた画素値は、以下の式によって得られる。3つの画素は、各P及びQブロックに対する入力としてそれぞれ4つの画素を用いて変更される(modified)ことに留意されたい。
強フィルタリングについて、フィルタリングされた画素値は、以下の式によって得られる。3つの画素は、各P及びQブロックに対する入力としてそれぞれ4つの画素を用いて変更される(modified)ことに留意されたい。
最大2画素は、それぞれ、各Pブロック及びQブロックに対する入力として3画素を用いて変更されることに留意すべきである。
2.5.3 クロマフィルタリング
クロマフィルタリングのBsはルマから引き継がれる。Bs>1であるか又はコード化されたクロマ係数が存在すれば、クロマフィルタリングが実行される。他のフィルタリングの決定はない。また、1つのフィルタだけがクロマに適用される。クロマに対してフィルタ選択プロセスは使用されない。フィルタされたサンプル値p0’及びq0’は、以下のように導出される。
クロマフィルタリングのBsはルマから引き継がれる。Bs>1であるか又はコード化されたクロマ係数が存在すれば、クロマフィルタリングが実行される。他のフィルタリングの決定はない。また、1つのフィルタだけがクロマに適用される。クロマに対してフィルタ選択プロセスは使用されない。フィルタされたサンプル値p0’及びq0’は、以下のように導出される。
3 VTM-4.0におけるデブロッキングスキームの例
現在のVTM、すなわちVTM-4.0では、JVET-M0471に記載されているデブロッキングスキームが使用される。画像の垂直エッジは、最初にフィルタリングされる。その後、画像の水平エッジは、入力として垂直エッジフィルタリングプロセスによって変更されたサンプルを用いてフィルタリングされる。各CTUのCTBの垂直エッジと水平エッジは、コーディング単位ベースで別々に処理される。コーディングユニット内のコーディングブロックの垂直エッジは、コーディングブロックの左側のエッジから開始して、幾何学的順序で、エッジを通って、コーディングブロックの右側に向かって進むようにフィルタリングされる。コーディングユニット内のコーディングブロックの水平エッジは、コーディングブロックの上部のエッジから始まって、その幾何学的順序で、エッジを通ってコード化ブロックの下部に向かって進無用にフィルタ負リングされる。
現在のVTM、すなわちVTM-4.0では、JVET-M0471に記載されているデブロッキングスキームが使用される。画像の垂直エッジは、最初にフィルタリングされる。その後、画像の水平エッジは、入力として垂直エッジフィルタリングプロセスによって変更されたサンプルを用いてフィルタリングされる。各CTUのCTBの垂直エッジと水平エッジは、コーディング単位ベースで別々に処理される。コーディングユニット内のコーディングブロックの垂直エッジは、コーディングブロックの左側のエッジから開始して、幾何学的順序で、エッジを通って、コーディングブロックの右側に向かって進むようにフィルタリングされる。コーディングユニット内のコーディングブロックの水平エッジは、コーディングブロックの上部のエッジから始まって、その幾何学的順序で、エッジを通ってコード化ブロックの下部に向かって進無用にフィルタ負リングされる。
3.1 境界決定
フィルタリングは、8×8ブロック境界に適用される。さらに、それは変換ブロック境界又はコーディングサブブロック境界でなければならない(例えば、アフィン動き予測、ATMVPの使用による)。このような境界ではない場合、フィルタはディセーブルになる。
フィルタリングは、8×8ブロック境界に適用される。さらに、それは変換ブロック境界又はコーディングサブブロック境界でなければならない(例えば、アフィン動き予測、ATMVPの使用による)。このような境界ではない場合、フィルタはディセーブルになる。
3.2 境界強度計算
変換ブロック境界/コーディングサブブロック境界について、8x8グリッドに位置すれば、フィルタリングされ得、bS[xDi][yDj](ここで、[xDi][yDj]は座標を示す)の設定は、このエッジに対して次のように定義される:
変換ブロック境界/コーディングサブブロック境界について、8x8グリッドに位置すれば、フィルタリングされ得、bS[xDi][yDj](ここで、[xDi][yDj]は座標を示す)の設定は、このエッジに対して次のように定義される:
‐ サンプルp0又はq0がイントラ予測モードでコード化されたコーディングユニットのコーディングブロック内にある場合、bS[xDi][yDj]は2に設定される。
‐ それ以外の場合、ブロックエッジも変換ブロックエッジであり、サンプルp0又はq0が1つ以上の非ゼロ変換係数レベルを含む変換ブロック内にあれば、bS[xDi][yDj]は1に等しく設定される。
‐ それ以外の場合、サンプルp0を含むコーディングサブブロックの予測モードがサンプルq0を含むコーディングサブブロックの予測モードと異なれば、bS[xDi][yDj]は1に等しく設定される
‐ それ以外の場合、以下の条件の1つ以上が真である場合、bS[xDi][yDj]は1に等しく設定される:
‐ サンプルp0を含むコーディングサブブロック及びサンプルq0を含むコーディングサブブロックは、両方ともIBC予測モードでコーディングされ、2つのコーディングサブブロックの予測に使用される動きベクトルの水平又は垂直コンポーネント間の絶対差は、4分の1ルマサンプルのユニットにおいて4以上である。
‐ サンプルp0を含むコーディングサブブロックの予測に対して、サンプルq0を含むコーディングサブブロックの予測に対してとは異なる参照画像又は異なる数の動きベクトルが使用される。
‐注1‐ 2つのコーディングサブブロックに使用される参照画像が同一であるか異なるかの決定は、参照画像リスト0へのインデックスを用いて予測が形成されるか、参照画像リスト1へのインデックスを用いて予測が形成されるかに関係なく、また参照画像リスト内のインデックス位置が異なるかどうかに関係なく、参照される画像のみに基づいて行われる。
‐注2‐ (xSb, ySb)をカバーする左上のサンプルを有するコーディングサブブロックの予測に使用される運動ベクトルの数は、PredFlagL0[xSb][ySb]+PredFlagL1[xSb][ySb]に等しい。
‐ サンプルp0を含むコーディングサブブロックを予測するために1つの動きベクトルを使用し、サンプルq0を含むコーディングサブブロックを予測するために1つの動きベクトルを使用し、使用される動きベクトルの水平コンポーネント又は垂直コンポーネントの間の絶対差は、1/4ルマサンプルの単位において4以上である。
‐ サンプルp0を含むコーディングサブブロックを予測するために2つの動きベクトルと2つの異なる参照画像を使用し、サンプルq0を含むコーディングサブブロックを予測するために同じ2つの参照画像についての2つの動きベクトルを使用し、同じ参照画像についての2つのコーディングサブブロックの予測に使用される2つの動きベクトルの水平コンポーネント又は垂直コンポーネントの間の絶対差は、1/4ルマのサンプルの単位で4以上である。
‐ サンプルp0を含むコーディングサブブロックを予測するために、同じ参照画像に対する2つの動きベクトルを使用し、サンプルq0を含むコーディングサブブロックを予測するために同じ参照画像に対する2つの動きベクトルを使用し、以下の条件の両方が真である:
‐ 2つのコーディングサブブロックの予測に使用されるリスト0動きベクトルの水平又は垂直コンポーネントの間の絶対差は、4分の1ルマサンプルで4以上であるか、又は、2つのコーディングサブブロックの予測に使用されるリスト1動きベクトルの水平又は垂直コンポーネントの間の絶対差は、4分の1ルマサンプルの単位で4以上である。
‐ サンプルp0を含むコーディングサブブロックの予測に使用されるリスト0動きベクトルの水平又は垂直コンポーネントと、サンプルq0を含むコーディングサブブロックの予測に使用されるリスト1動きベクトルの水平又は垂直コンポーネントとの間の絶対差は、4分の1ルマサンプルの単位で4以上であるか、又はサンプルp0を含むコーディングサブブロックの予測に使用されるリスト1動きベクトルの水平又は垂直コンポーネントと、サンプルq0を含むコーディングサブブロックの予測に使用されるリスト0動きベクトルとの間の絶対差は、4分の1ルマサンプルの単位で4以上である。
‐ それ以外の場合、変数bS[xDi][yDj]は0に設定される。
3.3 ルマコンポーネントのデブロッキング決定
このサブセクションでは、デブロッキング決定プロセスについて記載する。
より強力なルマフィルタは、条件1、条件2、条件3のすべてがTRUEの場合にのみ使用される。
このサブセクションでは、デブロッキング決定プロセスについて記載する。
より強力なルマフィルタは、条件1、条件2、条件3のすべてがTRUEの場合にのみ使用される。
条件1は「ラージブロック条件(large block condition)」である。
この条件は、P側とQ側のサンプルが、それぞれ変数bSidePisLargeBlkとbSideQisLargeBlkによって表されるラージブロックに属するかどうかを検出する。bSidePisLargeBlk及びbSideQisLargeBlkは以下のように定義される。
この条件は、P側とQ側のサンプルが、それぞれ変数bSidePisLargeBlkとbSideQisLargeBlkによって表されるラージブロックに属するかどうかを検出する。bSidePisLargeBlk及びbSideQisLargeBlkは以下のように定義される。
bSidePisLargeBlk及びbSideQisLargeBlkに基づいて、条件1は、以下のように定義される。
最後に、条件1と条件2の両方が有効である場合、提案したデブロッキング方法は条件3(ラージブロック強フィルタ条件)をチェックし、これは以下のように定義される。
HEVCのように、StrongFilterCondition=(dpqは、(β>>2)未満であり、sp3+sq3は(3*β>>5)であり、Abs(p0-q0)は(5*tC+1)>>1)未満である?TRUE:FALSE
3.4 (より大きなブロックのために設計された)ルマに対するの強デブロッキングフィルタ
バイリニアフィルタは、境界の一側のサンプルがラージブロックに属する場合に使用される。ラージブロックに属するサンプルは、垂直エッジについては幅が32以上であり、水平エッジについては高さが32以上である場合に、定義される。バイリニアフィルタは、以下の通りである。
バイリニアフィルタは、境界の一側のサンプルがラージブロックに属する場合に使用される。ラージブロックに属するサンプルは、垂直エッジについては幅が32以上であり、水平エッジについては高さが32以上である場合に、定義される。バイリニアフィルタは、以下の通りである。
i=0~Sp-1に対するブロック境界サンプルpiと、j=0~Sq-1に対するブロック境界サンプルqi(pi及びqiは、上述のHEVCデブロッキングにおける垂直エッジをフィルタリングするための行内のi番目のサンプル、又は水平エッジをフィルタリングするための列内のi番目のサンプル)は、次のように線形補間で置き換えられる:
3.5 クロマに対するデブロッキング制御
クロマ強フィルタ(chroma strong filters)をブロック境界の両側に使用する。ここで、クロマフィルタは、クロマエッジの両側が8(クロマ位置)以上の場合で、次の3つの条件を満たす場合に選択される:第一条件は、境界強度とラージブロックの決定のためのものである。提案のフィルタは、ブロックを直角に横切るブロック幅又は高さがクロマサンプルドメインにおいて8以上である場合に適用できる。第二及び第三条件は、基本的にHEVCルマデブロッキング決定と同じであり、オン/オフ決定及び強フィルタ決定である。
クロマ強フィルタ(chroma strong filters)をブロック境界の両側に使用する。ここで、クロマフィルタは、クロマエッジの両側が8(クロマ位置)以上の場合で、次の3つの条件を満たす場合に選択される:第一条件は、境界強度とラージブロックの決定のためのものである。提案のフィルタは、ブロックを直角に横切るブロック幅又は高さがクロマサンプルドメインにおいて8以上である場合に適用できる。第二及び第三条件は、基本的にHEVCルマデブロッキング決定と同じであり、オン/オフ決定及び強フィルタ決定である。
第一決定では、表2に示すように、クロマフィルタリングのために境界強度(bS)が変更される。表2の条件は、順次チェックされる。1つの条件が満たされると、優先度の低い残りの条件はスキップされる。
クロマデブロッキングは、bSが2に等しい場合、又は、ラージブロック境界が検出された場合にbSが1に等しい場合に実行される。
第二及び第三条件は、基本的にHEVCルマ強フィルタ決定と同じである。第二条件では:dはHEVCルマデブロッキングのように導出される。
dがβ未満のとき、第二条件は真である。
dがβ未満のとき、第二条件は真である。
HEVC設計と同様に、StrongFilterCondition=(dpqは(β>>2)未満、sp3+sq3は(β>>3)未満、Abs(p0?q0)は(5*tC+1)>>1)未満である。
提案のクロマフィルタは、4×4クロマサンプルグリッド上でデブロッキングを実行する。
3.7 位置依存クリッピング
位置依存クリッピングtcPDを、境界で7、5及び3サンプルを変更する強・長フィルタ(strong and long filters)を含むルマフィルタリングプロセスの出力サンプルに適用した。量子化誤差分布を仮定して、より高い量子化ノイズを有することが期待され、したがって、真のサンプル値から再構成されたサンプル値のより高い偏差を有することが期待されるサンプルに対して、クリッピング値を増加させることを提案した。
位置依存クリッピングtcPDを、境界で7、5及び3サンプルを変更する強・長フィルタ(strong and long filters)を含むルマフィルタリングプロセスの出力サンプルに適用した。量子化誤差分布を仮定して、より高い量子化ノイズを有することが期待され、したがって、真のサンプル値から再構成されたサンプル値のより高い偏差を有することが期待されるサンプルに対して、クリッピング値を増加させることを提案した。
非対称フィルタでフィルタリングされた各P又はQ境界に対して、セクション3.2の意思決定プロセスの結果に応じて、位置依存閾値テーブルは、副情報としてデコーダに提供される2つのテーブル(すなわち、以下に表に示すTc7及びTc3)から選択される:
閾値を定義した後、フィルタリングされたp’i及びq’iサンプル値は、tcP及びtcQのクリッピング値に従ってクリップされる。
ここで、p’iとq’iはフィルタリングされたサンプル値、p’iとq’jはクリッピング後の出力サンプル値、tcPiとtcQiはVVCのtcパラメータとtcPDとtcQDから導出されるクリッピング閾値である。関数Clip3は、VVCで指定したクリッピング関数である。
3.8 サブブロック・デブロッキング調整
長フィルタとサブブロックの両方を使用した並列フレンドリデブロッキングをイネーブルにするには、長フィルタのルマ制御に示されるように、サブブロック・デブロッキング(AFFINE、ATMVP、又はDMVR)を使用する側で最大5つのサンプルを変更するように制限される。さらに、サブブロック・デブロッキングは、CU又は暗黙的TU境界(implicit TU boundary)に近い8x8グリッド上のサブブロック境界が、各側で最大2つのサンプルを変更するように制限されるように調整される。
長フィルタとサブブロックの両方を使用した並列フレンドリデブロッキングをイネーブルにするには、長フィルタのルマ制御に示されるように、サブブロック・デブロッキング(AFFINE、ATMVP、又はDMVR)を使用する側で最大5つのサンプルを変更するように制限される。さらに、サブブロック・デブロッキングは、CU又は暗黙的TU境界(implicit TU boundary)に近い8x8グリッド上のサブブロック境界が、各側で最大2つのサンプルを変更するように制限されるように調整される。
以下は、CU境界に整列していないサブブロック境界に適用される。
ここで、0に等しいエッジはCU境界に対応し、2に等しい又は直交長-2に等しいエッジは、CU境界からのサブブロック境界8サンプルに対応する。ここで、TUの暗黙的分割が用いられる場合、暗黙的TUが真である。
3.9 ルマ/クロマに対する4CTU/2CTUラインバッファへの制限
水平エッジのフィルタリングは、水平エッジがCTU境界に整列される場合、ルマに対してはSp=3、クロマに対してはSp=1、Sq=1に制限される。
水平エッジのフィルタリングは、水平エッジがCTU境界に整列される場合、ルマに対してはSp=3、クロマに対してはSp=1、Sq=1に制限される。
4 イントラサブブロックパーテション(ISP)の例
図6Aは、4×8及び8×4ブロックの分割の一例を示す。図6Bは、4×8、8×4及び4×4を除くすべてのブロックの分割の実施例を示す。
図6Aは、4×8及び8×4ブロックの分割の一例を示す。図6Bは、4×8、8×4及び4×4を除くすべてのブロックの分割の実施例を示す。
JVET-M0102では、表3に示すように、ブロックサイズ寸法(block size dimensions)に応じて、垂直又は水平に、ルマイントラ予測ブロックを2つ又は4つのサブパーテションに分割するISPを提案している。図6A及び図6Bは、2つの可能性の例を示す。すべてのサブパーテションは、16サンプル以上を有するという条件を満たす。ブロックサイズが4×N又はN×4(N>8)の場合、可能であれば、1×N又はN×1のサブパーテションが存在してもよい。
これらのサブパーテションの各々について、エンコーダによって送信された係数をエントロピーデコードし、その後それらを逆量子化し、逆変換することによって、残差信号が生成される。その後、サブパーテションをイントラ予測し、最後に、残差信号を予測信号に加えることによって対応する再構成サンプルを得る。したがって、各サブパーテションの再構成値は、プロセスを繰り返す等の次のサブパーテションの予測値を生成するために利用可能である。すべてのサブパーテションは同じイントラモードを共有する。
5 アフィン線形加重イントラ予測(ALWIP、別名マトリックスベースイントラ予測)の例
アフィン線形加重イントラ予測(ALWIP、別名マトリックスベースイントラ予測(MIP))は、JVET-N0217において提唱される。
アフィン線形加重イントラ予測(ALWIP、別名マトリックスベースイントラ予測(MIP))は、JVET-N0217において提唱される。
5.1 マトリックスベクトル乗算による低減予測信号の生成
隣接する参照サンプルは、まず、平均化を介してダウンサンプリングされ、低減参照信号(reduced reference signal)
(外1)
(以下、pred_redと記載する。)を生成する。その後、マトリックスベクトル積を計算し、オフセットを加えることによって、低減予測信号pred_redを計算する:
隣接する参照サンプルは、まず、平均化を介してダウンサンプリングされ、低減参照信号(reduced reference signal)
(外1)
(以下、pred_redと記載する。)を生成する。その後、マトリックスベクトル積を計算し、オフセットを加えることによって、低減予測信号pred_redを計算する:
5.2 ALWIPプロセス全体の説明
平均化、マトリックスベクトル乗算、及び線形補間の全プロセスは、図7A~7Dの異なる形状について示されている。残りの形状は、図示のケースの1つと同様に扱われることに留意されたい。
平均化、マトリックスベクトル乗算、及び線形補間の全プロセスは、図7A~7Dの異なる形状について示されている。残りの形状は、図示のケースの1つと同様に扱われることに留意されたい。
図7Aは、4×4ブロックのためのアフィン線形加重イントラ予測(ALWIP)の一例を示す。4×4ブロックが与えられた場合、ALWIPは境界の各軸に沿って2つの平均を取得する。マトリックスは、セットS0から取得される。オフセットを加えた後、これにより16の最終予測サンプルが得られる。線形補間は、予測信号を生成するために必須ではないしたがって、サンプル毎に、合計(4・16)/(4・4)=4の乗算が行われる。
図7Bは、8×8ブロックのためのALWIPの一例を示す。8×8ブロックが与えられた場合、ALWIPは境界の各軸に沿って4つの平均を取得する。得られた8つの入力サンプルは、マトリックスベクトル乗算に入る。マトリックスは、セットS1から取得される。これにより、予測ブロックの奇数位置に16のサンプルが得られる。したがって、サンプル毎に、合計(8・16)/(8・8)=2の乗算が行われる。オフセットを加えた後、これらのサンプルは、低減された頂部境界を使用することによって垂直に補間される。水平補間は、元の左境界を使用して行われる。
図7Cは、8×4ブロックのためのALWIPの一例を示す。8×4ブロックが与えられた場合、ALWIPは境界の横軸に沿って4つの平均を取得し、左境界の4つの元の境界値を取得する。得られた8つの入力サンプルは、マトリックスベクトル乗算に入る。マトリックスは、セットS1から取得される。これにより、予測ブロックの奇数の水平位置及び各垂直位置に16のサンプルが得られる。したがって、サンプル毎に、合計(8・16)/(8・4)=4の乗算が行われる。オフセットを加えた後、これらのサンプルは、元の左境界を使用することによって水平に補間される。転置されたケース(transposed case)はそれに応じて処理される。
図7Dは、16×16ブロックのためのALWIPの一例を示す。16×16ブロックが与えられた場合、ALWIPは境界の各軸に沿って4つの平均を取得する。得られた8つの入力サンプルは、マトリックスベクトル乗算に入る。マトリックスは、セットS2から取得される。これにより、予測ブロックの奇数位置に64のサンプルが得られる。したがって、サンプル毎に、合計(8・64)/(16・16)=2の乗算が行われる。オフセットを加えた後、これらのサンプルは、頂部境界の8つの平均を使用することによって垂直に補間される。水平補間は、元の左境界を使用して行われる。この場合、補間プロセスはいかなる乗算も追加しない。したがって、ALWIP予測を計算するには、サンプル毎に2回の乗算が必要である。
より大きな形状について、手順は基本的に同じであり、サンプル毎の乗算の数が4未満であることを簡単に確認できる。
W×8ブロック、ただしW>8、のために、サンプルが奇数水平位置及び各垂直位置で与えられるので、水平補間のみが必要である。
最後に、W×4ブロック、ただしW>8、のために、Akはダウンサンプリングされたブロックの水平軸に沿った奇数エントリに対応するすべての行を除外することによって生じるマトリックスとする。このように、出力サイズは32である、そして、また、水平補間だけは実行されないままである。転置されたケースはそれに応じて処理される。
6 VVCにおけるマルチ変換集合(MTS)の例
6.1 明示的マルチ変換集合(MTS)
VTM4では、64×64までのサイズの大きなブロックサイズの変換が可能であり、これは主に高解像度ビデオ、例えば1080p及び4Kシーケンスに有用である。高周波変換係数は、サイズ(幅又は高さ、又は幅及び高さの両方)が64に等しい変換ブロックに対してゼロ出力され、その結果、低周波係数のみが保持される。たとえば、M×N変換ブロックでは、Mをブロック幅、Nをブロック高さとして、Mが64に等しい場合、変換係数の左32列のみが保持される。同様に、Nが64に等しい場合、変換係数の上部32行のみが保持される。大きなブロックに対して変換スキップモードを使用した場合、値をゼロにすることなくブロック全体が使用される。
6.1 明示的マルチ変換集合(MTS)
VTM4では、64×64までのサイズの大きなブロックサイズの変換が可能であり、これは主に高解像度ビデオ、例えば1080p及び4Kシーケンスに有用である。高周波変換係数は、サイズ(幅又は高さ、又は幅及び高さの両方)が64に等しい変換ブロックに対してゼロ出力され、その結果、低周波係数のみが保持される。たとえば、M×N変換ブロックでは、Mをブロック幅、Nをブロック高さとして、Mが64に等しい場合、変換係数の左32列のみが保持される。同様に、Nが64に等しい場合、変換係数の上部32行のみが保持される。大きなブロックに対して変換スキップモードを使用した場合、値をゼロにすることなくブロック全体が使用される。
HEVCで使用されてきたDCT‐IIに加えて、マルチ変換選択(MTS)スキームが、コーディングブロックインター及びイントラブロックの両方の残差コーディングに使用される。DCT8/DST7から選択した複数の変換を使用する。新しく導入された変換マトリックスはDST-VIIとDCT-VIIIである。表7は、選択されたDST/DCTの基底関数を示す。
変換行列の直交性を維持するために、変換行列をHEVCにおける変換行列よりも正確に量子化した。変換された係数の中間値を、水平変換の後、垂直変換の後に、16ビットの範囲内に維持するために、すべての係数は10ビットとする。
MTSスキームを制御するために、別々のイネーブルフラグが、それぞれイントラ及びインターに対してSPSレベルで指定される。SPSでMTSがイネーブルにされると、CUレベルフラグはMTSが適用されているか否かを示すためにシグナリングされる。ここでは、MTSはルマのみに適用される。MTS CUレベルフラグは、以下の条件が満たされたときにシグナリングされる。
‐ 幅、高さとも32以下
‐ CBFフラグが1に等しい
‐ 幅、高さとも32以下
‐ CBFフラグが1に等しい
MTS CUフラグがゼロに等しい場合、DCT2は両方向に適用される。しかしながら、もしMTS CUフラグが1に等しいなら、2つの他のフラグが水平方向と垂直方向のそれぞれの変換タイプを示すために追加的にシグナリングされる。変換及びシグナリングマッピングテーブルを表8に示す。変換マトリックスの精度については、8ビットの一次変換コアが使用される。したがって、HEVCで使用される変換コアは、4点DCT-2及びDST-7、8点DCT-2、16点DCT-2、32点DCT-2を含み、すべて同じに保たれる。また、64点DCT-2、4点DCT-8、8点DCT-8、16点DST-7及びDCT-8、32点DCT-7及びDCT-8を含む他の変換コアは、8ビット一次変換コアを使用する。
大きなサイズのDST-7及びDCT-8の複雑さを低減するために、サイズ(幅又は高さ、又は幅及び高さの両方)が32に等しいDST-7及びDCT-8ブロックに対しては、高周波変換係数がゼロ出力される。16×16のより低い周波領域内の係数のみが保持される。異なる変換が適用される場合に加えて、VVCは、HEVCにおけるTSの概念に似た変換スキップ(TS)と称されるモードもサポートする。TSはMTSの特殊なケースとして取り扱われる。
6.2 暗黙的多重変換集合(MTS)
ISP、SBT、及びMTSは有効であるが、暗黙的のシグナリング(implicit signaling)がある場合は、すべて暗黙的MTSとして取り扱われることに留意されたい。
ISP、SBT、及びMTSは有効であるが、暗黙的のシグナリング(implicit signaling)がある場合は、すべて暗黙的MTSとして取り扱われることに留意されたい。
この特許文書では、暗黙的MTSがイネーブルかどうかを定義するためにimplicitMtsEnabledが使用される。
8.7.4 スケール変換係数の変換プロセス
8.7.4.1 全般
inclusitMtsEnabled変数は次のように導出される:
‐ sps_mts_enabled_flagが1に等しく、次の条件のいずれかが真の場合、inclusitMtsEnabledが1に設定される:
‐ IntraSubpartitionsSplitTypeがISP_NO_SPLITと等しくない
‐ cu_sbt_flagが1、Max(nTbW, nTbH)が32以下
‐ sps_explicit_mts_intr_enabled_flagとsps_explicit_mts_inter_enabled_flagは両方とも0であり、CuPredMode[xTbY][yTbY]はMODE_INTRAと等しい
‐ それ以外の場合は、inclusitMtsEnabledが0に設定される。
8.7.4.1 全般
inclusitMtsEnabled変数は次のように導出される:
‐ sps_mts_enabled_flagが1に等しく、次の条件のいずれかが真の場合、inclusitMtsEnabledが1に設定される:
‐ IntraSubpartitionsSplitTypeがISP_NO_SPLITと等しくない
‐ cu_sbt_flagが1、Max(nTbW, nTbH)が32以下
‐ sps_explicit_mts_intr_enabled_flagとsps_explicit_mts_inter_enabled_flagは両方とも0であり、CuPredMode[xTbY][yTbY]はMODE_INTRAと等しい
‐ それ以外の場合は、inclusitMtsEnabledが0に設定される。
水平変換カーネルを指定する変数trTypeHorと垂直変換カーネルを指定する変数trTypeVerは、次のように導出される:
‐ cIdxが0より大きい場合、trTypeHor及びtrTypeVerは0に等しく設定される。
‐ それ以外の場合、implicitMtsEnabledが1に等しい場合、以下を適用する:
‐ IntraSubpartitionsSplitTypeがISP_NO_SPLITと等しくない場合、trTypeHor及びtrTypeVerは、intraPredModeに依存して表8-15に指定される。
‐ それ以外の場合で、cu_sbt_flagが1に等しい場合、trTypeHor及びtrTypeVerは、cu_sbt_horizontal_flag及びcu_sbt_pos_flagに依存して表8-14に指定される。
‐ それ以外の場合(sps_explicit_mts_intr_enabled_flag及びsps_explicit_mts_inter_enabled_flagが0に等しい)、trTypeHor及びtrTypeVerは以下のように導出される:
‐ それ以外の場合、tu_mts_idx[xTbY][yTbY]に依存して、trTypeHor及びtrTypeVerは表8-13に指定される。
‐ cIdxが0より大きい場合、trTypeHor及びtrTypeVerは0に等しく設定される。
‐ それ以外の場合、implicitMtsEnabledが1に等しい場合、以下を適用する:
‐ IntraSubpartitionsSplitTypeがISP_NO_SPLITと等しくない場合、trTypeHor及びtrTypeVerは、intraPredModeに依存して表8-15に指定される。
‐ それ以外の場合で、cu_sbt_flagが1に等しい場合、trTypeHor及びtrTypeVerは、cu_sbt_horizontal_flag及びcu_sbt_pos_flagに依存して表8-14に指定される。
‐ それ以外の場合(sps_explicit_mts_intr_enabled_flag及びsps_explicit_mts_inter_enabled_flagが0に等しい)、trTypeHor及びtrTypeVerは以下のように導出される:
7 JVET-N0193で提案されている低減二次変換(RST:reduced Secondary Transform)の例
7.1 JEMにおける非分離二次変換(NSST:Non-Separable Secondary Transform)
図8は、JEMにおける二次変換の一例を示す。JEMでは、二次変換を順一次変換と量子化(エンコーダにおいて)との間、及び量子化解除(de-quantization)と逆一次変換(デコーダ側において)の間に適用する。図8に示すように、4×4(又は8×8)の二次変換が実行されるのは、ブロックサイズに依存する。例えば、4×4二次変換は小さなブロック(すなわち、min(width, height)<8)に適用され、8×8二次変換は、8×8ブロック毎のより大きなブロック(すなわち、min(width, height)>4)に適用される。
7.1 JEMにおける非分離二次変換(NSST:Non-Separable Secondary Transform)
図8は、JEMにおける二次変換の一例を示す。JEMでは、二次変換を順一次変換と量子化(エンコーダにおいて)との間、及び量子化解除(de-quantization)と逆一次変換(デコーダ側において)の間に適用する。図8に示すように、4×4(又は8×8)の二次変換が実行されるのは、ブロックサイズに依存する。例えば、4×4二次変換は小さなブロック(すなわち、min(width, height)<8)に適用され、8×8二次変換は、8×8ブロック毎のより大きなブロック(すなわち、min(width, height)>4)に適用される。
非分離可能変換は、
として計算され、
ここで
(外4)
(以下、F_ベクトルと記載する。)は変換係数ベクトルを表し、Tは16×16変換マトリックスとして計算される。16×1係数ベクトルF_ベクトルは、その後、そのブロックに対する走査順序(水平、垂直、又は対角)を使用して、4×4ブロックとして再編成される。より小さいインデックスを有する係数は、4×4係数ブロック内のより小さい走査インデックスに配置される。変換集合には合計35の変換セットがあり、変換セットあたり3の非分離可能変換行列(カーネル)が使用される。イントラ予測モードから変換セットへのマッピングは、予め定義される。各変換セットに対して、選択された非分離可能な二次変換(NSST:non-separable secondary transform)候補は、明示的にシグナリングされた二次変換インデックスによってさらに指定される。インデックスは、変換係数の後、イントラCU毎に一度ビットストリームでシグナリングされる。
ここで
(外4)
(以下、F_ベクトルと記載する。)は変換係数ベクトルを表し、Tは16×16変換マトリックスとして計算される。16×1係数ベクトルF_ベクトルは、その後、そのブロックに対する走査順序(水平、垂直、又は対角)を使用して、4×4ブロックとして再編成される。より小さいインデックスを有する係数は、4×4係数ブロック内のより小さい走査インデックスに配置される。変換集合には合計35の変換セットがあり、変換セットあたり3の非分離可能変換行列(カーネル)が使用される。イントラ予測モードから変換セットへのマッピングは、予め定義される。各変換セットに対して、選択された非分離可能な二次変換(NSST:non-separable secondary transform)候補は、明示的にシグナリングされた二次変換インデックスによってさらに指定される。インデックスは、変換係数の後、イントラCU毎に一度ビットストリームでシグナリングされる。
7.2 JVET-N0193における還元二次変換(RST)
図9は、開示された技術の実施例に基づく減少した第2の変換(RST)の一例を示す。RST(Low Frequency Non-Separable Transform(LFNST))はJVET-K0099に導入され、4変換セット(35変換セットに代えて)はJVET-L0133に導入された。このJVET-N0193では、16×48及び16×16マトリックスは、それぞれ8×8及び4×4ブロックに対して使用される。表記の便宜上、16×48変換はRST8x8、16×16変換はRST4x4と表記される。
図9は、開示された技術の実施例に基づく減少した第2の変換(RST)の一例を示す。RST(Low Frequency Non-Separable Transform(LFNST))はJVET-K0099に導入され、4変換セット(35変換セットに代えて)はJVET-L0133に導入された。このJVET-N0193では、16×48及び16×16マトリックスは、それぞれ8×8及び4×4ブロックに対して使用される。表記の便宜上、16×48変換はRST8x8、16×16変換はRST4x4と表記される。
7.3 RSTの適用
RSTの選択は、以下のように定められる:
‐ 4*N又はN*4ブロック(N≦8)について、RST4x4を左上4*4CG(例えば、4x4、4x8、8x4)に適用する
‐ 4*N又はN*4ブロック(N>8)について、RST4x4を2つの隣接する左上4*4CG(例えば4x16、16x4等)に、2回適用する
‐ すべての他のケースについて、二次変換を左上3つの4*4CGに適用して、左上4x4CG及びゼロ係数を有する他の2つのCGを生成する。
RSTの選択は、以下のように定められる:
‐ 4*N又はN*4ブロック(N≦8)について、RST4x4を左上4*4CG(例えば、4x4、4x8、8x4)に適用する
‐ 4*N又はN*4ブロック(N>8)について、RST4x4を2つの隣接する左上4*4CG(例えば4x16、16x4等)に、2回適用する
‐ すべての他のケースについて、二次変換を左上3つの4*4CGに適用して、左上4x4CG及びゼロ係数を有する他の2つのCGを生成する。
8 サブブロック変換の例
cu_cbfが1に等しいインター予測CUに対して、cu_sbt_flagは、残差ブロック全体又は残差ブロックのサブ部分がデコードされるかどうかを示すためにシグナリングされ得る。前者の場合、CUの変換タイプを決定するために、イントラMTS情報がさらに解析される。後者の場合、残差ブロックの一部は推定適応変換でコード化され、残差ブロックの他の部分はゼロ出力される。SBTはコンバインド・インター・イントラモードには適用されない。
cu_cbfが1に等しいインター予測CUに対して、cu_sbt_flagは、残差ブロック全体又は残差ブロックのサブ部分がデコードされるかどうかを示すためにシグナリングされ得る。前者の場合、CUの変換タイプを決定するために、イントラMTS情報がさらに解析される。後者の場合、残差ブロックの一部は推定適応変換でコード化され、残差ブロックの他の部分はゼロ出力される。SBTはコンバインド・インター・イントラモードには適用されない。
図10は、サブブロック変換モードSBT-V及びSBT-Hの一例を示す。サブブロック変換では、位置依存変換を、SBT-V及びSBT-H(DCT-2を常に使用するクロマTB)のルマ変換ブロックに適用する。SBT‐H及びSBT‐Vの2つの位置は異なるコア変換と関連する。より詳しくは、各SBT位置に対する水平及び垂直変換は、図10に指定される。例えば、SBT-V位置0に対する水平及び垂直変換は、それぞれDCT-8及びDST-7である。残差TUの一側が32を超える場合、対応する変換はDCT-2に設定される。したがって、サブブロック変換は、残差ブロックのTUタイリング、cbf、及び水平及び垂直変換を共同で指定し、これは、ブロックの主残差がブロックの一側にある場合のシンタックスショートカットと考えられる。
9 JVET-N0054におけるジョイントクロマ残差コーディングの例
CbとCr残差は互いに反比例的に相関する(correlate inversely)ように見えるので、この現象を利用し、クロマ残差のジョイントコーディングのためのモードを導入することを提案した。このモードでは、変換ユニットの2つのクロマブロックに単一残差が示されている。示された残差は、第一チャネル(典型的にはCbを表す)の予測ブロックに加算され、第二チャネル(典型的にはCrを表す)の予測ブロックから差し引かれる。
CbとCr残差は互いに反比例的に相関する(correlate inversely)ように見えるので、この現象を利用し、クロマ残差のジョイントコーディングのためのモードを導入することを提案した。このモードでは、変換ユニットの2つのクロマブロックに単一残差が示されている。示された残差は、第一チャネル(典型的にはCbを表す)の予測ブロックに加算され、第二チャネル(典型的にはCrを表す)の予測ブロックから差し引かれる。
CbとCrの両方のコード化ブロックフラグ(cbf)が真ならば、ジョイント残差モードはビットストリーム内のフラグで示される。モードがアクティブ化されると、単一の残差ブロックがデコードされる。ジョイント残差ブロックのビットストリーム構文とデコーディングプロセスは、VTM-4内のCb残差に従う。Crブロックの残差は、デコードされたジョイント残差をネガティブ化すること(negating)によって生成される。単一の残差が2つのブロックの残差を表現するために使用されるので、このモードでは、クロマ残差の別個のコーディングに使用されるものよりも低いQPを使用することが望ましい場合が多い。CE試験では、ジョイントモードにクロマQPオフセット-1を使用し、別個のクロマコーディングには+1を使用した(JVET共通試験条件で規定)。
10 JVET-N0236の例
この寄与は、サブブロックベースアフィン動き補償予測をオプティカルフローによって洗練化する方法を提案する。サブブロックベースアフィン動き補償が実行された後、予測サンプルは、オプティカルフローによる予測値洗練化(PROF:prediction refinement with optical flow)と称される、オプティカルフロー方程式によって導出される差分を加えることによって洗練化される。提案した方法は、メモリアクセス帯域幅を増加させることなく、画素レベルの粒度でインター予測を達成できる。
この寄与は、サブブロックベースアフィン動き補償予測をオプティカルフローによって洗練化する方法を提案する。サブブロックベースアフィン動き補償が実行された後、予測サンプルは、オプティカルフローによる予測値洗練化(PROF:prediction refinement with optical flow)と称される、オプティカルフロー方程式によって導出される差分を加えることによって洗練化される。提案した方法は、メモリアクセス帯域幅を増加させることなく、画素レベルの粒度でインター予測を達成できる。
動き補償のより細かい粒度を達成するために、この寄与は、オプティカルフローによるサブブロックベースアフィン動き補償予測を洗練化する方法を提案する。サブブロックベースアフィン動き補償が実行された後、ルマ予測サンプルは、オプティカルフロー方程式によって導出された差分を加えることによって洗練化される。提案したPROF(オプティカルフローによる予測値洗練化)は、以下の4つのステップで記述される。
ステップ1) サブブロックベースアフィン動き補償を行い、サブブロック予測I(i,j)を生成する。
図11は、サブブロックMV VSB及び画素Δv(i,j)の一例を示す。サブブロック予測は、勾配算出のために各側上で1画素拡張される。メモリ帯域幅と複雑性を低減するために、拡張境界上の画素は、参照画像の最も近い整数画素位置からコピーされる。したがって、パディング領域に対する追加の補間は回避される。
ステップ3)オプティカルフロー方程式で計算したルマ予測洗練化(ΔI)。
ここで、デルタMV (Δv(i,j)として示される)は、図11に示されるように、v(i,j)で示される、サンプル位置(i,j)について計算された画素MVと、画素(i,j)が属するサブブロックのサブブロックMVとの差である。
サブブロック中心に対するアフィンモデルパラメータ及び画素位置はサブブロックからサブブロックに変更されないので、Δv(i,j)は最初のサブブロックについて計算することができ、同じCU内の他のサブブロックについて再利用することができる。xとyを画素位置からサブブロックの中心までの水平及び垂直オフセットとすると、Δv(x,y)は次の式で導出できる。、
11 既存の実装の欠点
いくつかの既存の実装(例えば、現在のVVC/VTMデブロッキング設計)では、以下の問題が発生する:
いくつかの既存の実装(例えば、現在のVVC/VTMデブロッキング設計)では、以下の問題が発生する:
(1) BDOFは各予測サンプルを精緻化する。したがって、デブロッキングプロセスにおいてそれらを再度フィルタリングする必要はない。
(2) CIIPコード化ブロックは、まだイントラ予測プロセスを実行する必要がある間、デブロッキングフィルタプロセスにおいてインター予測モードとして取り扱われる。
12 デブロッキングフィルタリング(DB)における改善のための例示的方法
本開示の技術の実施形態は、既存の実施形態の欠点を克服し、それにより、より高いコーディング効率を有するビデオ符号化を提供する。開示された技術に基づくデブロッキングフィルタリング(DB)の改良は、現存及び将来の両方のビデオコーディング標準を向上させることができ、種々の実装について説明される以下の実施例において解明される。以下に提供される開示された技術の例は、全般的概念を説明するものであり、限定的なものとして解釈されることを意図するものではない。
例において、明示的にそうでないと示されない限り、これらの実施例に記載された種々の特徴を組み合わせることができる。
本開示の技術の実施形態は、既存の実施形態の欠点を克服し、それにより、より高いコーディング効率を有するビデオ符号化を提供する。開示された技術に基づくデブロッキングフィルタリング(DB)の改良は、現存及び将来の両方のビデオコーディング標準を向上させることができ、種々の実装について説明される以下の実施例において解明される。以下に提供される開示された技術の例は、全般的概念を説明するものであり、限定的なものとして解釈されることを意図するものではない。
例において、明示的にそうでないと示されない限り、これらの実施例に記載された種々の特徴を組み合わせることができる。
開示された技術のいくつかの実施形態では、いくつかの方法でデブロッキングフィルタ(DB)プロセスを変更することが提案されている。しかしながら、本文書に提示された方法は、他の種類のインループフィルタリング方法(例えば、SAO、ALF)及び再構成後フィルタ(例えば、デブロッキングフィルタの前に、予測信号又は再構成信号に適用される、バイラテラルフィルタ、拡散フィルタ、予測信号又は再構成信号に適用されるHadamard変換ドメインフィルタ)にも適用可能であることに留意されたい。
クロマコンポーネントは、Cb/Cr色コンポーネント、又はRGBフォーマットのB/R色コンポーネントを表すことができることに留意されたい。以下の説明では、例として「Cb/Cr」を取り上げる。
実施例1:DBをイネーブルにするかどうか、及び/又は、DBプロセスにおいてフィルタリングを適用する方法は、BDOF及び/又は、動き/予測サンプル/再構成サンプルを洗練化するためにオプティカルフローを使用する他のコーディングツールの使用に依存し得る。
(a)一実施例において、BDOFコーディングブロック内に位置するサンプルについては、DBを適用する必要はない。
(b)あるいは、境界強度/フィルタ強度は、BDOFの使用に依存し得る。
(i)あるいは、BDOF符号化ブロック内に位置するサンプルについては、より弱いフィルタが適用され得る。
実施例2:DBをイネーブルにするかどうか、及び/又は、DBプロセスにおいてフィルタリングを適用する方法は、変換マトリックスのタイプ(例えば、DCT-II、DST-VII、DCT-VIII、変換スキップモード(識別マトリックス付き)、RDPCM/QR-BDPCMモードなどの変換を適用しないコーディング方法)に依存する。
(a)一実施例において、位置依存クリッピングは、特定の変換タイプでコード化されたブロック(例えば、変換スキップコード化ブロック)に位置するようにフィルタリングされるサンプルに対してディセーブルにされ得る。
(i)あるいは、さらに、フィルタリングされるべき全てのサンプルは、同じクリッピングパラメータを使用する。
(b)一実施例において、位置依存クリッピングパラメータは、そのブロックに適用される変換マトリックスに基づいて依存し得る。
(c)一実施例において、DBは、変換スキップモードのブロック又はRDPCMモードなどの変換を適用しないコーディング方法のブロックに対して実行されない場合がある。
実施例3:クリッピング動作及び/又は位置依存クリッピングは、次の条件に基づいてディセーブルにされ得る:
(a)ビデオコンテンツ(画面コンテンツ、自然コンテンツ等)
(b) SPS/VPS/PPS/PPS/画像ヘッダ/スライスヘッダ/タイルグループヘッダ/最大コーディングユニット(LCU)/コーディングユニット(CU)/LCU列/LCUsグループにシグナリングされたメッセージ
実施例4:DBをイネーブルにするかどうか、及び/又は、DBプロセスでフィルタリングを適用する方法は、コンバインド・イントラ・インター予測(CIIP:Combined Intra-Inter Prediction)の使用法に依存し得る。
(a)一実施例において、CIIP符号化ブロックは、イントラコーディングブロックと同様に扱うことができる。
(b)一実施例において、エッジを横切る2つのブロックのうちの少なくとも1つがCIIPモードでコード化される場合、境界強度は2に設定される。
(c)あるいは、エッジを横切る2つのブロックのうち一方のみがCIIPモードでコード化され、他方がインターコード化される場合、境界強度は1に設定される。
(d)あるいは、エッジを横切る2つのブロックのうちの一方のみがCIIPモードでコード化され、他方がインターコード化又はIBCコード化される場合、境界強度は1に設定される。
実施例5:IBCコード化ブロックの境界強度(BS)は、動きベクトル差から独立であり得る。
(a)一実施例では、隣接するブロックが両方ともIBCコード化される場合、境界強度は、MV差に関係なく、また非ゼロ係数があるかどうかに関係なく、M(例えば、M=0/1/2)に設定される。
(b)あるいは、BSは、水平及び/又は垂直MV差がM0/M1-pels より大きいかどうかに依存する(M>1)。
(i)一実施例において、M0とM1は両方とも4に設定される。
(ii)一実施例において、M0は水平コンポーネントのMV差に対して最小CU幅に設定され、M1は水平コンポーネントのMV差に対して最小CU高さに設定される。
(iii)一実施例において、水平コンポーネントのMV差に対してM0が最小許容IBCコード化CU幅に設定され、水平コンポーネントのMV差に対してM1が最小許容IBCコード化CU高さに設定される。
(c)あるいは、DBは、2つのIBCコード化ブロック間の境界には適用されない場合がある。
(d)あるいは、IBCコード化ブロックのサンプルにDBを適用されない場合がある。
実施例6:P側又はQ側の境界強度(BS)値が異なり得る。
(a)一実施例において、P側又はQ側のブロックは、それ自身の境界強度を有し得る。
P側又はQ側で実施したデブロッキンングは、それぞれP側又はQ側でのBS値に基づき得る。
P側又はQ側で実施したデブロッキンングは、それぞれP側又はQ側でのBS値に基づき得る。
(i)一実施例において、P側のブロックがイントラブロックであり、Q側のブロックがRDPCMコード化ブロックである場合、デブロッキング条件はP側でチェックされ、デブロッキングはP側でのみ実行され得る。
(ii)一実施例において、P側又はQ側のBSは、両側のQPに依存し得る。
(iii)一実施例において、P側又はQ側のBSは、両側で使用されるLMCS係数に依存し得る。
実施例7:RDPCMコード化ブロックは、デブロッキングにおけるイントラブロックとして取り扱われることができる。
(a)一実施例において、境界強度(BS)値は、RDPCMコード化ブロックがP側及び/又はQ側にある場合、1又は2に設定され得る。
実施例8:三角モードコード化ブロック内の斜めエッジは、デブロッキングされ得る。
(a)一実施例において、現在VVCにおけるデブロッキングフィルタ及び/又はデブロッキング制御ロジックは、三角モードコード化ブロックにおける傾斜エッジにも適用し得る。
実施例9:
(a)一実施例において、パレットコード化ブロックがQ側にあり、パレットモードでコード化されていないブロックがP側にある場合、デブロッキングをP側に適用し得る。
(b)一実施例において、パレットコード化ブロックがP側にあり、パレットモードでコード化されていないブロックがQ側にある場合、デブロッキングをQ側に適用し得る。
(c)一実施例において、P側及びQ側の両方がパレットコード化ブロックである場合、デブロッキングは、両側に適用されない場合がある。
実施例10:DMVR又は他のデコーダ側動き洗練化コーディングツールでコード化された1つのブロック内のサブ領域は、サブブロック境界として取り扱われることがあり、フィルタリングされ得る。
(a)一実施例において、サブ領域は、動きベクトル精密化が適用されるサブユニットとして定義される。
(i)一実施例において、サブ領域は、DMVRコード化ブロック内のMxNサブブロックとして定義され、ここで、M及びNは、64又は16に設定され得る。
実施例11:DBプロセスでDBをイネーブルにするかどうか、及び/又は、フィルタリングを適用する方法は、二次変換(別名、NSST又はRST又はLFNST)が適用されるか否かに依存する。
(a)一実施例において、RSTが適用されるサブ領域の境界は、変換ブロック境界又はコーディングサブブロック境界として取り扱われることができる。
(i)あるいは、RST適用サブ領域にあるサンプルは、フィルタリングされることもできる。
(ii)あるいは、位置依存クリッピングは、RST適用サブ領域に対してディセーブルであり得る。
実施例12:デブロッキングがアフィンモードブロック内のサブブロック境界(例えば、インナーサブブロック境界)で実行されるかどうかは、インターウェーブ予測又は/及びPROF又は/及び位相変形アフィンサブブロック動き補償がブロックに適用されるかどうかに依存し得る。
(a)一実施例において、デブロッキングは、インターウェーブ予測又は/及びPROF又は/及び位相変形アフィンサブブロック動き補償がブロックに適用されるときにディセーブルにされ得る。
(b)デブロッキングは、インターウェーブ予測又は/及びPROF又は/及び位相変形アフィンサブブロック動き補償がブロックに適用されない場合にイネーブルにされ得る。
図12は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法1200のフローチャートを示す。ビデオ処理のための方法1200は、ステップ1210において、ビデオブロックと、ビデオブロックのビットストリーム表現と、の間のコンバートに適用可能なコーディングスキームを決定するステップと、ステップ1220において、コーディングスキームの決定に基づいて、デブロッキングフィルタ(DB)プロセス、サンプル適応オフセット(SAO)及び適用ループフィルタリング(ALF)のうちの少なくとも1つを含むインループフィルタリングプロセスのモードを決定するステップと、ステップ1230において、インループのフィルタリングモードを使用するコンバートを実行するステップと、を含む。ビデオ処理のための方法1200に関する付加的な特徴は、上記の実施例1、実施例2、実施例3、実施例11で見出される。
図13は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法1300のフローチャートを示す。ビデオ処理のための方法1300は、ステップ1310において、コンバインド・イントラ・インター予測(CIIP)コーディングが現在ブロックに適用できると決定するステップと、ステップ1320において、現在ブロックと、現在ブロックのビットストリーム表現と、の間のコンバートを実行するステップと、CIIPの使用に基づいて、デブロッキングフィルタ(DB)プロセスを実行するステップと、ブロックと、垂直及び水平エッジとの間の境界を識別するステップと、境界強度を計算するステップと、フィルタをオン又はオフにするべきかどうか決めるステップと、フィルタ強度を選択するステップと、を含む。ビデオ処理のための方法1300に関する付加的な特徴は、上記の実施例4で見出される。
図14は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法1400のフローチャートを示す。ビデオ処理のための方法1400は、ステップ1410において、隣接するブロックが両方ともイントラブロックコピー(IBC)コード化されるかどうかを決定するステップと、ステップ1420において、その決定に基づいて、ブロックと、垂直及び水平エッジとの間の境界を識別するステップ、境界強度を計算するステップ、フィルタをオン又はオフにするべきかどうか決めるステップ、及び、フィルタ強度を選択するステップ、によって、デブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。境界強度は、動きベクトル差から独立である。ビデオ処理のための方法1400に関する付加的な特徴は、上記の実施例5で見出される。
図15は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法1500のフローチャートを示す。ビデオ処理のための方法1500は、ステップ1510において、P側及びQ側で境界強度を決定するステップと、ステップ1520において、その決定に基づいて、ブロックと、垂直及び水平エッジとの間の境界を識別するステップ、境界強度を計算するステップ、フィルタをオン又はオフにするべきかどうか決めるステップ、及び、フィルタ強度を選択するステップ、によって、P側及びQ側におけるデブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。ビデオ処理のための方法1500に関する付加的な特徴は、上記の実施例6で見出される。
図16は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法のフローチャート1600を示す。ビデオ処理のための方法1600は、ステップ1610において、残差差分パルスコード変調(RDPCM)コード化ブロックを決定するステップと、ステップ1620において、その決定に基づいて、ブロックと、垂直及び水平エッジとの間の境界を識別するステップ、境界強度を計算するステップ、フィルタをオン又はオフにするべきかどうか決めるステップ、及び、フィルタ強度を選択するステップ、によって、P側及びQ側におけるデブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。RDPCMコード化ブロックは、デブロッキングフィルタ(DB)プロセスのイントラブロックとして取り扱われる。ビデオ処理のための方法1600に関する付加的な特徴は、上記の実施例7で見出される。
図17は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法1700のフローチャートを示す。ビデオ処理のための方法1700は、ステップ1710において、三角モードコード化ブロックの斜めエッジを決定するステップと、ステップ1720において、その決定に基づいて、ブロックと、垂直及び水平エッジとの間の境界を識別するステップ、境界強度を計算するステップ、フィルタをオン又はオフにするべきかどうか決めるステップ、及び、フィルタ強度を選択するステップ、によって、斜めエッジのデブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。ビデオ処理のための方法1700に関する付加的な特徴は、上記の実施例8で見出される。
図18は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法1800のフローチャートを示す。ビデオ処理のための方法1800は、ステップ1810において、パレットコード化ブロックがP側又はQ側にあるかどうか決定するステップと、ステップ1720において、その決定に基づいて、ブロックと、垂直及び水平エッジとの間の境界を識別するステップ、境界強度を計算するステップ、フィルタをオン又はオフにするべきかどうか決めるステップ、及び、フィルタ強度を選択するステップ、によって、斜めエッジにデブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。デブロックフィルタ(DB)プロセスは、パレットコード化ブロックがP側又はQ側にある場合に一方の側に適用される。ビデオ処理のための方法1800に関する付加的な特徴は、上記の実施例8で見出される。
図19は、開示された技術のいくつかの実施形態に基づくビデオ処理のための例示的方法1900のフローチャートを示す。ビデオ処理のための方法1900は、ステップ1910において、デコーダ側動きベクトル洗練化(DMVR)又は他のデコーダ側動き洗練化コード化ツールでコード化された1つのブロック内でサブ領域を決定するステップと、ステップ1920において、その決定に基づいて、ブロックと、垂直及び水平エッジとの間の境界を識別するステップ、境界強度を計算するステップ、フィルタをオン又はオフにするべきかどうか決めるステップ、及び、フィルタ強度を選択するステップ、サブ領域上でデブロッキングフィルタ(DB)プロセスを実行するステップと、を含む。ビデオ処理のための方法1900に関する付加的な特徴は、上記の実施例10で見出される。
図20は、ビデオ処理装置2000のブロック図である。装置2000は、本明細書に記載される1つ以上の方法を実装するために使用され得る。装置2000は、スマートフォン、タブレット、コンピュータ、Internet of Things(IoT)受信機などで具体化することができる。装置2000は、1つ以上のプロセッサ602、1つ以上のメモリ2004、及びビデオ処理ハードウェア2006を含み得る。(1つ以上の)プロセッサ2002は、本明細書に記載されている1つ以上の方法(方法1200~1900を含むがこれに限らず)を実施するように構成され得る。(1つ以上の)メモリ2004は、ここに記載される方法及び技術を実施するために使用されるデータ及びコードを記憶するために使用され得る。ビデオ処理ハードウェア2006は、ハードウェア回路において、本文書に記載されるいくつかの技術を実装するために使用され得る。
いくつかの実施形態では、ビデオコーディング方法は、図20に関して説明したようにハードウェアプラットフォーム上に実装される装置を使用して実装され得る。
図21は、本明細書に開示される様々な技術を実装し得る例示的なビデオ処理システム2100を示すブロック図である。様々な実装は、システム2100の構成要素の一部又は全部を含んでもよい。
システム2100は、ビデオコンテンツを受信するための入力2102を含むことができる。ビデオコンテンツは、生若しくは非圧縮フォーマット、例えば、8又は10ビットのマルチコンポーネント画素値で受信されてもよく、又は、圧縮若しくはエンコードされたフォーマットで受信され得る。入力2102は、ネットワークインタフェース、周辺バスインタフェース、又は記憶インタフェースを表し得る。ネットワークインタフェースの例には、イーサネット、受動光ネットワークなどの有線インタフェース、及び、Wi-Fi又はセルラーインタフェースなどの無線インタフェースが含まれる。システム2100は、本文書に記載される種々のコーディング又はエンコーディング方法を実装し得るコーディングコンポーネント2104を含み得る。コーディングコンポーネント2104は、コーディングコンポーネント2104の入力702から出力へのビデオの平均ビットレートを低減して、ビデオのコーディング表現を生成することができる。したがって、コーディング技術は、ビデオ圧縮又はビデオトランスコーディング技術と称されることがある。コーディングコンポーネント2104の出力は、コンポーネント2106によって表されるように、記憶されるか、又は接続された通信を介して送信され得る。入力2102で受信されたビデオの格納された又は通信されたビットストリーム(又はコーディングされた)表現は、表示インタフェース2110に送られる画素値又は表示可能なビデオを生成するために、コンポーネント2108によって使用され得る。ビットストリーム表現からユーザ可視の(user-viewable)ビデオを生成するプロセスは、ビデオ解凍と称されることがある。さらにまた、特定のビデオ処理動作は、「コーディング」動作又はツールと称され、コーディングツール又は動作は、エンコーダで使用され、コーディングの結果をリバースする対応するデコーディングツール又は動作は、デコーダで実行されることが理解されるであろう。
周辺バスインタフェース又はディスプレイインタフェースの実施例は、ユニバーサルシリアルバス(USB)又は高精細度マルチメディアインタフェース(HDMI(登録商標))又はディスプレイポートなどを含み得る。記憶インタフェースの実施例は、SATA(シリアル・アドバンスド・テクノロジー・アタッチメント)、PCI、IDEインタフェースなどが挙げられる。本明細書に記載される技術は、携帯電話、ラップトップ、スマートフォン、又はデジタルデータ処理及び/又はビデオ表示を実行することができる他のデバイスなどの種々の電子デバイスに具体化することができる。
図22は、ビジュアルメディア処理のための例示的方法のフローチャートを示す。このフローチャートのステップは、本明細書のセクション12の実施例4に関連して述べられる。ステップ2220において、プロセスは、2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別する。ステップ2204において、プロセスは、垂直エッジ又は水平エッジを横切る前記2つのビデオブロックのうちの少なくとも1つに基づいてフィルタの境界強度を計算し、コンバインド・インター・イントラ予測(CIIP)モードを用いてコード化される。ステップ2206において、プロセスは、フィルタをオン又はオフにするべきかどうか決める。ステップ2208において、プロセスは、フィルタをオンにする場合のフィルタの強度を選択する。ステップ2210において、プロセスは、その選択に基づいて、ビデオブロックへのデブロッキングフィルタ(DB)プロセスを実行する。
図23は、ビジュアルメディア処理のための例示的方法のフローチャートを示す。このフローチャートのステップは、本明細書のセクション12の実施例1に関連して述べられる。ステップ2302において、プロセスは、ビジュアルメディアデータのビデオブロックとビデオブロックのビットストリーム表現との間のコンバートに適用可能なコーディングスキームを決定する。コーディングスキームの決定に基づいて、ステップ2304において、プロセスは、ビデオブロックのコンバート中に、ビデオブロックへのインループフィルタの適用を選択的にイネーブル又はディセーブルにする。
図24は、ビジュアルメディア処理のための例示的方法のフローチャートを示す。このフローチャートのステップは、本明細書のセクション12の実施例2に関連して述べられる。ステップ2402において、プロセスは、ビジュアルメディアデータのビデオブロックと、ビデオブロックのビットストリーム表現との間のコンバートに適用可能な変換マトリックスのタイプを決定する。変換マトリックスのタイプの決定に基づいて、ステップ2404において、プロセスは、ビデオブロックのコンバート中に、ビデオブロックへのデブロッキング(DB)フィルタプロセスの適用を選択的にイネーブル又はディセーブルにする。
図25は、ビジュアルメディア処理のための例示的方法のフローチャートを示す。このフローチャートのステップは、本明細書のセクション12の実施例4に関連して述べられる。ステップ2502において、ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバート中に、プロセスは、ビデオブロックへのインループフィルタリングステップの適用を決定し、インループフィルタリングステップは、フィルタされるべきビデオブロック内のサンプルに適用されるクリッピング動作を含む。ステップ2504において、プロセスは、ビデオブロックに関連する1つ以上の条件を決定することに応答して、前記クリッピング動作を選択的にイネーブル又はディセーブルにする。
本明細書に開示されるいくつかの実施形態は、ここで、条項ベースの形式で提示されている。
X1. ビジュアルメディア処理のための方法であって、
2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別するステップと、
垂直エッジ又は水平エッジを横切る(crossing)2つのビデオブロックのうちの少なくとも1つに基づくフィルタの境界強度の計算は、コンバインド・インター・イントラ予測(CIIP)モードを用いてコード化されるステップと、
フィルタをオン又はオフにするべきかどうか決めるステップと、
フィルタをオンにする場合のフィルタの強度を選択するステップと、
その選択に基づいて、ビデオブロックへのデブロッキングフィルタ(DB)プロセスを実行するステップと、
を含む。
を含む。
X2. 条項X1の方法であって、CIIPコード化ブロックは、境界強度の計算において、イントラコード化ブロックとして処理される。
X3. 条項X1の方法であって、境界強度は、垂直又は水平エッジを横切る2つのビデオブロックのうちの少なくとも1つがCIIPでコード化される場合に、2として選択される。
X4. 条項X1の方法であって、境界強度は、垂直又は水平エッジを横切る2つのブロックのうちの一方のみがCIIPでコード化され、他方のビデオブロックがインターコード化される場合に、1として選択される。
X5. 条項X1の方法であって、境界強度は、エッジを横切る2つのブロックのうちの1つのみがCIIPでコード化され、他方のビデオブロックがインター又はイントラブロックコピー(IBC)コード化される場合に、1として選択される。
A1. ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックとビデオブロックのビットストリーム表現との間のコンバートに適用可能なコーディングスキームを決定するステップと、
前記コーディングスキームの決定に基づいて、前記ビデオブロックのコンバート中に、前記ビデオブロックへのインループフィルタの適用を選択的にイネーブル又はディセーブルにするステップと、
を含む。
を含む。
A2. 条項A1の方法であって、インループフィルタは、デブロッキングフィルタ(DB)、サンプル適応オフセット(SAO)フィルタ、及び/又は適応ループフィルタのうちの1つを含む。
A3. 条項A1~A2のいずれかの方法であって、コーディングスキームは、予測サンプル及び/又は動き情報及び/又は再構成サンプルを洗練化するためのオプティカルフローの使用を含む。
A4. 条項A3の方法であって、予測サンプルを洗練化するためのオプティカルフローを使用するコーディングスキームは、双方向オプティカルフロー(BDOF)を含む。
A5. 条項A4の方法であって、コーディングスキームの決定は、予測サンプルが双方向オプティカルフロー(BDOF)内に位置するかどうかを識別することを含み、予測サンプルが双方向オプティカルフロー(BDOF)内に位置するという決定に応答して、ループ内フィルタの適用をディセーブルにする。
A6. 条項A5の方法であって、インループフィルタの境界強度及び/又はフィルタ強度のうちの少なくとも1つは、双方向オプティカルフロー(BDOF)の使用に基づいて決定される。
A7. 条項A4の方法であって、
コーディングスキームの決定は、予測サンプルが双方向オプティカルフロー(BDOF)内に位置するかどうかを識別することを含み、
インループフィルタの適用は、予測サンプルが双方向オプティカルフロー(BDOF)内に位置することを決定することに応答してイネーブルにされ、
さらに、インループフィルタは、BDOF内に位置しない予測サンプルに関連する他のインループフィルタよりも弱い強度を有する。
コーディングスキームの決定は、予測サンプルが双方向オプティカルフロー(BDOF)内に位置するかどうかを識別することを含み、
インループフィルタの適用は、予測サンプルが双方向オプティカルフロー(BDOF)内に位置することを決定することに応答してイネーブルにされ、
さらに、インループフィルタは、BDOF内に位置しない予測サンプルに関連する他のインループフィルタよりも弱い強度を有する。
B1. ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックとそのビデオブロックのビットストリーム表現との間のコンバートに適用可能な変換マトリックスのタイプを決定するステップと、
変換マトリックスのタイプの決定に基づいて、ビデオブロックのコンバート中に、そのビデオブロックへのデブロッキング(DB)フィルタプロセスの適用を選択的にイネーブル又はディセーブルにするステップと、
を含む。
を含む。
B2. 条項B1の方法であって、変換マトリックスのタイプは、DCT-II、DST-VII、DCT-VIII及び/又は変換スキップモードを含む。
B3. 条項B1~B2のいずれかの方法であって、デブロッキングフィルタリングプロセスの前記適用は、クリッピング動作をさらに含む。
B4. 条項B3の方法であって、クリッピング動作は、DBフィルタに関してビデオブロックのサンプルの位置に基づいて、位置に依存する。
B5. 条項B4の方法であって、変換スキップコード化ビデオブロック内のサンプルに対して、クリッピング動作は、ディセーブルである。
B6. 条項B5の方法であって、デブロッキングフィルタ(DB)プロセスは、変換スキップコード化ブロック上で、又は、ビデオブロックコーディングが変換ベースコーディング技術から免除され(exempt)るという決定に応じて、デブロックフィルタ(DB)プロセスはディセーブルである。
B7. 条項B6の方法であって、変換ベースコーディング技術は、残差差分パルスコード変調(RDPCM:residue differential pulse-code modulation)又は量子化残差差分パルスコード変調(QR-BDPCM)を含む。
B8. 条項B3の方法であって、DBフィルタプロセスがサンプルのセット上でイネーブルである場合、そのセットに含まれる全てのサンプルは、クリッピング動作の同じパラメータに付される。
B9. 条項B4の方法であって、位置に依存するクリッピング動作のパラメータは、コンバートに適用できる変換マトリックスの基底関数に関連する。
C1. ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックとビデオブロックのビットストリーム表現との間のコンバート中に、ビデオブロックへのインループフィルタリングステップの適用を決定するステップであって、インループフィルタリングステップは、フィルタされるべきビデオブロック内のサンプルに適用されるクリッピング動作を含む、ステップと、
ビデオブロックに関連する1つ以上の条件を決定することに応答して、クリッピング動作を選択的にイネーブルにし又はディセーブルにするステップと、
を含む。
を含む。
C2. 条項C1の方法であって、ビデオブロックに関係する1つ以上の条件は、
(a)ビデオブロックの内容、又は、
(b)シーケンスパラメータセット(SPS)/ビデオパラメータセット(VPS)/画像パラメータ一セット(PPS)/画像ヘッダ/スライスヘッダ/タイルグループヘッダ/最大コーディングユニット(LCU)/コーディングユニット(CU)/LCU列/LCUグループに含まれるフィールド、
を含む。
を含む。
C3. 条項X1~C2のいずれかの方法であって、コンバートは、ビデオブロックからのビットストリーム表現を生成するステップを含む。
C4. 条項X1~C2のいずれかの方法であって、コンバートは、ビットストリーム表現からのビデオブロックの画素値を生成するステップを含む。
C5. 条項X1~C2のうちの1つ以上に記載された方法を実装するように構成されたプロセッサを含むビデオエンコーダ装置。
C6. 条項X1~C2のうちの1つ以上に記載された方法を実装するように構成されたプロセッサを含むビデオデコーダ装置。
C7. 格納されたコードを有するコンピュータ可読媒体であって、コードは、条項X1~C2のうちの1つ以上に記載された方法を、プロセッサによって実装するために、プロセッサ実行可能命令を実施する、
本文書において、「ビデオ処理」又は「ビジュアルメディア処理」という用語は、ビデオエンコーディング、ビデオデコーディング、ビデオ圧縮又はビデオ解凍を指すことができる。例えば、ビデオ圧縮アルゴリズムは、ビデオの画素表現から対応するビットストリーム表現へ、又はその逆へのコンバートの間に適用されてもよい。現在ビデオブロックのビットストリーム表現は、例えば、構文によって定義されるように、ビットストリーム内の異なる場所に同時配置されるか又は拡散されるビットに対応し得る。例えば、ブロックは、変換されコーディングされたエラー残差値の観点から、また、ビットストリーム内のヘッダ及び他のフィールド内のビットを使用してコーディングされ得る。本願明細書において、ブロックは、コーディングユニット又は予測ユニット又は変換ユニット等の、実行される動作による画素のグループ化であり得る。さらに、コンバート中に、デコーダは、上記の解決策で説明されているように、決定に基づいて、いくつかのフィールドが存在するか、又は存在しない可能性があるという知識でビットストリームを解析することができる。同様に、エンコーダは、特定の構文フィールドが含まれるか含まれないかを決定し、それに応じて、コード化表現から構文フィールドを含めるか除外することによって、コード化表現を生成することができる。
上記のことから、本明細書において、説明の目的で、本開示の技術の特定の実施形態を説明したが、本発明の範囲を逸脱することなく、種々の変更を行うことができることが理解されるであろう。したがって、現在開示されている技術は、添付の特許請求の範囲による場合を除き、限定されない。
この特許文献に記載されている主題の実装及び機能動作は、本明細書に開示されている構造及びそれらの構造的均等物を含む、種々のシステム、デジタル電子回路、又はコンピュータ・ソフトウェア、ファームウェア、もしくはハードウェアにおいて、又はそれらの1つ以上の組み合わせにおいて実施することができる。本明細書に記載された主題の実装は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置によって実行するために、又はデータ処理装置の動作を制御するための、有形及び非一時的コンピュータ読み取り可能媒体上にエンコードされたコンピュータプログラム命令の1つ以上のモジュールとして実装することができる。コンピュータ読取可能媒体は、機械読取可能記憶装置、機械読取可能記憶基板、メモリデバイス、機械読取可能伝搬信号に影響を与える事項の合成、又はそれらの1つ以上の組み合わせであり得る。用語「データ処理ユニット」又は「データ処理装置」は、例えば、プログラマブルプロセッサ、コンピュータ、又は複数のプロセッサ又はコンピュータを含む、データを処理するためのすべての装置、デバイス、及び機械を包含する。装置は、ハードウェアに加えて、問題のコンピュータプログラムの実行環境を生成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、又はそれらの1つ以上の組み合わせを構成するコードを含むことができる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られる)は、コンパイル又は解釈された言語を含む、任意の形態のプログラミング言語で書かれることができ、それは、スタンドアロンプログラムとして、又はコンピューティング環境での使用に適したモジュール、コンポーネント、サブルーチン、又は他のユニットとして、を含む、任意の形態で展開することができる。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応するものではない。プログラムは、他のプログラム又はデータを保持するファイルの一部分(例えば、マークアップ言語文書に記憶される1つ以上のスクリプト)、問題のプログラム専用の単一ファイル、又は複数のコーディネイトファイル(例えば、1つ以上のモジュール、サブプログラム、又はコードの一部分を記憶するファイル)に記憶することができる。コンピュータプログラムは、1つのコンピュータ又は1つのサイトに配置されるか、又は複数のサイトに分散され、通信ネットワークによって相互接続される複数のコンピュータ上で実行されるようにデプロイすることができる。
本明細書に記載されるプロセス及び論理フローは、1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって実行することができ、入力データ上で動作して出力を生成することによって機能を実行することができる。プロセス及び論理フローはまた、FPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)などの特定目的論理回路(special purpose logic circuitry)によって実行されることができ、また、装置は特定目的論理回路として実装されることができる。
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用及び専用マイクロプロセッサの両方、及び任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。概して、プロセッサは、読み出し専用メモリ又はランダムアクセスメモリ又はその両方から命令及びデータを受信する。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令及びデータを記憶するための1つ以上のメモリデバイスである。概して、コンピュータはまた、データを記憶するための1つ以上の大容量記憶装置、例えば、磁気光ディスク、磁気光ディスク、又は光ディスクからデータを受信したり、そこにデータを転送したり、又はその両方のために動作可能に結合される。しかし、コンピュータは、かかるデバイスを有する必要はない。コンピュータプログラム命令及びデータを記憶するのに適したコンピュータ読取可能媒体は、例えば、EPROM、EEPROM、及びフラッシュメモリデバイスのような半導体メモリデバイスを含む、あらゆる形態の不揮発性メモリ、媒体及びメモリデバイスを含む。プロセッサ及びメモリは、特定目的論理回路によって補足されるか、又は内蔵され得る。
明細書は、図面と共に、単に例示的とみなされるが、例示的は実施例を意味する。本明細書において、前後関係が別途明らかに指示しない限り、単数形「1つ(”a”,”an”)」及び「その(”the”)」は複数形も含むことを目的とする。本明細書中で使用される場合、「又は」の使用は、文脈が他のことを明確に示さない限り、「及び/又は」を含むことが意図される。
この特許文献には多くの詳細が含まれるが、これらは、いずれかの発明の範囲又は特許請求されることができるものを限定するものではなく、特定の発明の特定の実施形態に特有の特徴の説明と解釈されるべきである。別々の実施形態の文脈でこの特許文献に記載されている特定の特徴は、単一の実施形態で組み合わせて実施することもできる。反対に、単一の実施形態の文脈において説明される種々の特徴は、複数の実施形態において別々に、又は任意の適切なサブコンビネーションで実施することもできる。クレームされた組み合わせからの1つ以上の特徴として最初にそのようにクレームされたものであっても、はいくつかのケースではその組み合わせから切り離されることもでき、クレームされた組み合わせは、サブコンビネーション又はサブコンビネーション変形例に向けられることもできる。
同様に、図面には特定の順序で操作又は動作が示されているが、これは、所望の結果を達成するために、かかる動作を、示された特定の順序で又は連続的な順序で実行すること、又は、例示されたすべての動作を実行することを要求するものとして理解されるべきではない。さらに、この特許文献に記載されている実施形態における種々のシステム構成要素の分離は、すべての実施形態においてかかる分離を必要とするものとして理解されるべきではない。
この特許文献に記載され、説明されている内容に基づいて、少数の実施形態及び実施例のみが記載され、他の実施形態、拡張及び変形が行われ得る。
[付記1]
ビジュアルメディア処理のための方法であって、
2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別するステップと、
垂直エッジ又は水平エッジを横切る前記2つのビデオブロックのうちの少なくとも1つに基づくフィルタの境界強度の計算は、コンバインド・インター・イントラ予測(CIIP)モードを用いてコード化されるステップと、
前記フィルタをオン又はオフにするべきかどうか決めるステップと、
前記フィルタをオンにする場合の前記フィルタの強度を選択するステップと、
前記選択に基づいて、前記ビデオブロックへのデブロッキングフィルタ(DB)プロセスを実行するステップと、
を含む方法。
[付記2]
CIIPコード化ブロックは、前記境界強度の計算において、イントラコード化ブロックとして処理される、
付記1記載の方法。
[付記3]
前記境界強度は、垂直又は水平エッジを横切る2つのビデオブロックのうちの少なくとも1つがCIIPでコード化される場合に、2として選択される、
付記1記載の方法。
[付記4]
前記境界強度は、垂直又は水平エッジを横切る2つのブロックのうちの一方のみがCIIPでコード化され、他方のビデオブロックがインターコード化される場合に、1として選択される、
付記1記載の方法。
[付記5]
前記境界強度は、垂直又は水平エッジを横切る2つのブロックのうちの1つのみがCIIPでコード化され、他方のビデオブロックがインター又はイントラブロックコピー(IBC)コード化される場合に、1として選択される、
付記1記載の方法。
[付記6]
ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバートに適用可能なコーディングスキームを決定するステップと、
前記コーディングスキームの決定に基づいて、前記ビデオブロックのコンバート中に、前記ビデオブロックへのインループフィルタの適用を選択的にイネーブル又はディセーブルにするステップと、
を含む、方法。
[付記7]
前記インループフィルタは、デブロッキングフィルタ(DB)、サンプル適応オフセット(SAO)フィルタ、及び/又は適応ループフィルタのうちの1つを含む、
付記6記載の方法。
[付記8]
前記コーディングスキームは、予測サンプル及び/又は動き情報及び/又は再構成サンプルを洗練化するためのオプティカルフローの使用を含む、
付記6又は7記載の方法。
[付記9]
前記予測サンプルを洗練化するために前記オプティカルフローを使用する前記コーディングスキームは、双方向オプティカルフロー(BDOF)を含む、
付記8記載の方法。
[付記10]
前記コーディングスキームの前記決定は、前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置するかどうかを識別することを含み、
前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置するという決定に応答して、前記インループフィルタの前記適用をディセーブルにする、
付記9記載の方法。
[付記11]
前記インループフィルタの境界強度及び/又はフィルタ強度のうちの少なくとも1つは、前記双方向オプティカルフロー(BDOF)の使用に基づいて決定される、
付記10記載の方法。
[付記12]
前記コーディングスキームの前記決定は、前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置するかどうかを識別することを含み、
前記インループフィルタの前記適用は、前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置すると決定することに応答してイネーブルにされ、
さらに、前記インループフィルタは、前記BDOF内に位置しない予測サンプルに関連する他のインループフィルタよりも弱い強度を有する、
付記9記載の方法。
[付記13]
ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバートに適用可能な変換マトリックスのタイプを決定するステップと、
前記変換マトリックスのタイプの前記決定に基づいて、前記ビデオブロックのコンバート中に、前記ビデオブロックへのデブロッキングフィルタ(DBフィルタ)プロセスの適用を選択的にイネーブル又はディセーブルにするステップと、
を含む、方法。
[付記14]
前記変換マトリックスのタイプは、DCT-II、DST-VII、DCT-VIII及び/又は変換スキップモードを含む、
付記13記載の方法。
[付記15]
デブロッキングフィルタリングプロセスの前記適用は、クリッピング動作をさらに含む、
付記13又は14記載の方法。
[付記16]
前記クリッピング動作は、前記DBフィルタに関して前記ビデオブロックのサンプルの位置に基づいて、位置依存する、
付記15記載の方法。
[付記17]
前記クリッピング動作は、変換スキップコード化ビデオブロック内に位置するサンプルに対して、ディセーブルである、
付記16記載の方法。
[付記18]
前記デブロッキングフィルタ(DBフィルタ)プロセスは、変換スキップコード化ブロック上で、又は、前記ビデオブロックのコーディングが変換ベースコーディング技術から免除されているという決定に応じて、ディセーブルである、
付記17記載の方法。
[付記19]
前記変換ベースコーディング技術は、残差差分パルスコード変調(RDPCM)又は量子化残差差分パルスコード変調(QR-BDPCM)を含む、
付記18記載の方法。
[付記20]
前記DBフィルタプロセスがサンプルのセット上でイネーブルである場合、前記セットに含まれる全てのサンプルは、前記クリッピング動作の同じパラメータに付される、
付記15記載の方法。
[付記21]
位置依存のクリッピング動作のパラメータは、前記コンバートに適用できる変換マトリックスの基底関数に関連する、
付記16記載の方法。
[付記22]
ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバート中に、
前記ビデオブロックへのインループフィルタリングステップの適用を決定するステップであって、
前記インループフィルタリングステップは、フィルタされるべき前記ビデオブロック内のサンプルに適用されるクリッピング動作を含む、ステップと、
前記ビデオブロックに関連する1つ以上の条件を決定することに応答して、前記クリッピング動作を選択的にイネーブル又はディセーブルにするステップと、
を含む方法。
[付記23]
前記ビデオブロックに関係する前記1つ以上の条件は、
(a)前記ビデオブロックの内容、又は、
(b)シーケンスパラメータセット(SPS)/ビデオパラメータセット(VPS)/画像パラメータ一セット(PPS)/画像ヘッダ/スライスヘッダ/タイルグループヘッダ/最大コーディングユニット(LCU)/コーディングユニット(CU)/LCU列/LCUグループに含まれるフィールド、
を含む、付記22記載の方法。
[付記24]
前記コンバートは、ビデオブロックからビットストリーム表現を生成するステップを含む、
付記1乃至23いずれか1項記載の方法。
[付記25]
前記コンバートは、前記ビットストリーム表現からビデオブロックの画素値を生成するステップを含む、
付記1乃至23いずれか1項記載の方法。
[付記26]
付記1乃至23いずれか1項記載の方法を実装するように構成されたプロセッサを含むビデオエンコーダ装置。
[付記27]
付記1乃至23いずれか1項記載の方法を実装するように構成されたプロセッサを含むビデオデコーダ装置。
[付記28]
格納されたコードを有するコンピュータ可読媒体であって、
前記コードは、付記1乃至23いずれか1項記載の方法を、プロセッサによって実装するために、プロセッサ実行可能命令を実施する、
コンピュータ可読媒体。
ビジュアルメディア処理のための方法であって、
2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別するステップと、
垂直エッジ又は水平エッジを横切る前記2つのビデオブロックのうちの少なくとも1つに基づくフィルタの境界強度の計算は、コンバインド・インター・イントラ予測(CIIP)モードを用いてコード化されるステップと、
前記フィルタをオン又はオフにするべきかどうか決めるステップと、
前記フィルタをオンにする場合の前記フィルタの強度を選択するステップと、
前記選択に基づいて、前記ビデオブロックへのデブロッキングフィルタ(DB)プロセスを実行するステップと、
を含む方法。
[付記2]
CIIPコード化ブロックは、前記境界強度の計算において、イントラコード化ブロックとして処理される、
付記1記載の方法。
[付記3]
前記境界強度は、垂直又は水平エッジを横切る2つのビデオブロックのうちの少なくとも1つがCIIPでコード化される場合に、2として選択される、
付記1記載の方法。
[付記4]
前記境界強度は、垂直又は水平エッジを横切る2つのブロックのうちの一方のみがCIIPでコード化され、他方のビデオブロックがインターコード化される場合に、1として選択される、
付記1記載の方法。
[付記5]
前記境界強度は、垂直又は水平エッジを横切る2つのブロックのうちの1つのみがCIIPでコード化され、他方のビデオブロックがインター又はイントラブロックコピー(IBC)コード化される場合に、1として選択される、
付記1記載の方法。
[付記6]
ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバートに適用可能なコーディングスキームを決定するステップと、
前記コーディングスキームの決定に基づいて、前記ビデオブロックのコンバート中に、前記ビデオブロックへのインループフィルタの適用を選択的にイネーブル又はディセーブルにするステップと、
を含む、方法。
[付記7]
前記インループフィルタは、デブロッキングフィルタ(DB)、サンプル適応オフセット(SAO)フィルタ、及び/又は適応ループフィルタのうちの1つを含む、
付記6記載の方法。
[付記8]
前記コーディングスキームは、予測サンプル及び/又は動き情報及び/又は再構成サンプルを洗練化するためのオプティカルフローの使用を含む、
付記6又は7記載の方法。
[付記9]
前記予測サンプルを洗練化するために前記オプティカルフローを使用する前記コーディングスキームは、双方向オプティカルフロー(BDOF)を含む、
付記8記載の方法。
[付記10]
前記コーディングスキームの前記決定は、前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置するかどうかを識別することを含み、
前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置するという決定に応答して、前記インループフィルタの前記適用をディセーブルにする、
付記9記載の方法。
[付記11]
前記インループフィルタの境界強度及び/又はフィルタ強度のうちの少なくとも1つは、前記双方向オプティカルフロー(BDOF)の使用に基づいて決定される、
付記10記載の方法。
[付記12]
前記コーディングスキームの前記決定は、前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置するかどうかを識別することを含み、
前記インループフィルタの前記適用は、前記予測サンプルが前記双方向オプティカルフロー(BDOF)内に位置すると決定することに応答してイネーブルにされ、
さらに、前記インループフィルタは、前記BDOF内に位置しない予測サンプルに関連する他のインループフィルタよりも弱い強度を有する、
付記9記載の方法。
[付記13]
ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバートに適用可能な変換マトリックスのタイプを決定するステップと、
前記変換マトリックスのタイプの前記決定に基づいて、前記ビデオブロックのコンバート中に、前記ビデオブロックへのデブロッキングフィルタ(DBフィルタ)プロセスの適用を選択的にイネーブル又はディセーブルにするステップと、
を含む、方法。
[付記14]
前記変換マトリックスのタイプは、DCT-II、DST-VII、DCT-VIII及び/又は変換スキップモードを含む、
付記13記載の方法。
[付記15]
デブロッキングフィルタリングプロセスの前記適用は、クリッピング動作をさらに含む、
付記13又は14記載の方法。
[付記16]
前記クリッピング動作は、前記DBフィルタに関して前記ビデオブロックのサンプルの位置に基づいて、位置依存する、
付記15記載の方法。
[付記17]
前記クリッピング動作は、変換スキップコード化ビデオブロック内に位置するサンプルに対して、ディセーブルである、
付記16記載の方法。
[付記18]
前記デブロッキングフィルタ(DBフィルタ)プロセスは、変換スキップコード化ブロック上で、又は、前記ビデオブロックのコーディングが変換ベースコーディング技術から免除されているという決定に応じて、ディセーブルである、
付記17記載の方法。
[付記19]
前記変換ベースコーディング技術は、残差差分パルスコード変調(RDPCM)又は量子化残差差分パルスコード変調(QR-BDPCM)を含む、
付記18記載の方法。
[付記20]
前記DBフィルタプロセスがサンプルのセット上でイネーブルである場合、前記セットに含まれる全てのサンプルは、前記クリッピング動作の同じパラメータに付される、
付記15記載の方法。
[付記21]
位置依存のクリッピング動作のパラメータは、前記コンバートに適用できる変換マトリックスの基底関数に関連する、
付記16記載の方法。
[付記22]
ビジュアルメディア処理のための方法であって、
ビジュアルメディアデータのビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバート中に、
前記ビデオブロックへのインループフィルタリングステップの適用を決定するステップであって、
前記インループフィルタリングステップは、フィルタされるべき前記ビデオブロック内のサンプルに適用されるクリッピング動作を含む、ステップと、
前記ビデオブロックに関連する1つ以上の条件を決定することに応答して、前記クリッピング動作を選択的にイネーブル又はディセーブルにするステップと、
を含む方法。
[付記23]
前記ビデオブロックに関係する前記1つ以上の条件は、
(a)前記ビデオブロックの内容、又は、
(b)シーケンスパラメータセット(SPS)/ビデオパラメータセット(VPS)/画像パラメータ一セット(PPS)/画像ヘッダ/スライスヘッダ/タイルグループヘッダ/最大コーディングユニット(LCU)/コーディングユニット(CU)/LCU列/LCUグループに含まれるフィールド、
を含む、付記22記載の方法。
[付記24]
前記コンバートは、ビデオブロックからビットストリーム表現を生成するステップを含む、
付記1乃至23いずれか1項記載の方法。
[付記25]
前記コンバートは、前記ビットストリーム表現からビデオブロックの画素値を生成するステップを含む、
付記1乃至23いずれか1項記載の方法。
[付記26]
付記1乃至23いずれか1項記載の方法を実装するように構成されたプロセッサを含むビデオエンコーダ装置。
[付記27]
付記1乃至23いずれか1項記載の方法を実装するように構成されたプロセッサを含むビデオデコーダ装置。
[付記28]
格納されたコードを有するコンピュータ可読媒体であって、
前記コードは、付記1乃至23いずれか1項記載の方法を、プロセッサによって実装するために、プロセッサ実行可能命令を実施する、
コンピュータ可読媒体。
Claims (12)
- ビデオデータを処理する方法であって、
ビデオの2つのビデオブロックと、前記ビデオのビットストリームとの間のコンバート中の、前記2つのビデオブロックへのデブロッキングフィルタリングプロセスのために、前記2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別するステップと、
前記境界の境界強度を決定するステップと、
前記境界強度に基づいて、前記境界に対するフィルタをオンにするかオフにするかを決めるステップと、
前記フィルタをオンにする場合の前記フィルタの強度を選択するステップと、
前記選択に基づいて前記コンバートを実行するステップと、を含み、
前記境界は、変換サブブロック境界、コーディングユニット境界又は予測サブブロック境界のうちの少なくとも1つであり、
前記予測サブブロック境界は、サブブロックベースの時間動きベクトル予測モード又はアフィン動き補償モードによって導かれる予測ユニット境界を含む、
方法。 - 前記垂直エッジ又は前記水平エッジを横切る前記2つのビデオブロックのうちの少なくとも1つが、コンバインド・インター・イントラ予測モードを用いてコード化される場合には、前記境界強度は2に等しく、
前記コンバインド・インター・イントラ予測モードにおいて、前記2つのビデオブロックのうちの少なくとも1つの予測信号を、少なくとも、イントラ予測信号及びインター予測信号に基づいて生成する、
請求項1記載の方法。 - デブロッキングフィルタリングプロセスは、予測サブブロック境界線の8×8グリッドに適用される、
請求項1記載の方法。 - 前記2つのビデオブロックの両方がイントラブロックコピー予測モードを用いてコード化される場合、前記2つのビデオブロックの予測に用いられるブロックベクトルの水平又は垂直コンポーネント間の絶対差が閾値以上かどうかに基づいて、前記境界強度を決定する、
請求項1記載の方法。 - 前記2つのビデオブロックの予測において、異なる参照画像又は異なる動きベクトルの数が用いられるかどうかに基づいて、前記境界強度を決定する、
請求項1記載の方法。 - 前記境界のいずれかの一側におけるサンプルがラージブロックに属する場合、前記デブロッキングフィルタリングプロセスにおいて強デブロッキングフィルタが用いられ、ここで、前記ラージブロックに属するサンプルは、前記垂直エッジについては幅が32以上であり、前記水平エッジについては高さが32以上である場合に定義される、
請求項1記載の方法。 - 強デブロッキングフィルタは、バイリニアフィルタである。
請求項6記載の方法。 - 前記コンバートは前記2つのビデオブロックをビットストリームにエンコードすることを含む、
請求項1乃至7いずれか1項記載の方法。 - 前記コンバートは前記2つのビデオブロックをビットストリームからデコードすることを含む、
請求項1乃至7いずれか1項記載の方法。 - ビデオデータを処理するための装置であって、プロセッサと、命令を有する非一時的メモリとを備え、
前記命令は、前記プロセッサによって実行される際に、前記プロセッサに:
ビデオの2つのビデオブロックと、前記ビデオのビットストリームとの間のコンバート中の、前記2つのビデオブロックへのデブロッキングフィルタリングプロセスのために、前記2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別させ、
前記境界の境界強度を決定させ
前記境界強度に基づいて、前記境界に対するフィルタをオンにするかオフにするかを決めさせ、
前記フィルタをオンにする場合の前記フィルタの強度を選択させ、
前記選択に基づいて前記コンバートを実行させ、
前記境界は、変換サブブロック境界、コーディングユニット境界又は予測サブブロック境界のうちの少なくとも1つであり、
前記予測サブブロック境界は、サブブロックベースの時間動きベクトル予測モード又はアフィン動き補償モードによって導かれる予測ユニット境界を含む、装置。 - 命令を格納する非一時的コンピュータ読み出し可能格納媒体であって、
前記命令はプロセッサに、
ビデオの2つのビデオブロックと、前記ビデオのビットストリームとの間のコンバート中の、前記2つのビデオブロックへのデブロッキングフィルタリングプロセスのために、前記2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別させ、
前記境界の境界強度を決定させ
前記境界強度に基づいて、前記境界に対するフィルタをオンにするかオフにするかを決めさせ、
前記フィルタをオンにする場合の前記フィルタの強度を選択させ、
前記選択に基づいて前記コンバートを実行させ、
前記境界は、変換サブブロック境界、コーディングユニット境界又は予測サブブロック境界のうちの少なくとも1つであり、
前記予測サブブロック境界は、サブブロックベースの時間動きベクトル予測モード又はアフィン動き補償モードによって導かれる予測ユニット境界を含む、
非一時的コンピュータ読み出し可能格納媒体。 - ビデオ処理装置によって実行される方法によって生成されるビデオのビットストリームを格納する非一時的コンピュータ読み出し可能格納媒体であって、前記方法は、
前記ビデオの2つのビデオブロックへのデブロッキングフィルタリングプロセスのために、前記2つのビデオブロックの垂直エッジ及び/又は水平エッジにおける境界を識別するステップと、
前記境界の境界強度を決定するステップと、
前記境界強度に基づいて、前記境界に対するフィルタをオンにするかオフにするかを決めるステップと、
前記フィルタをオンにする場合の前記フィルタの強度を選択するステップと、
前記選択に基づいてビットストリームを生成するステップと、を含み、
前記垂直エッジ又は前記水平エッジを横切る前記2つのビデオブロックのうちの少なくとも1つが、コンバインド・インター・イントラ予測モードを用いてコード化される場合には、前記境界強度は2に等しく、
前記コンバインド・インター・イントラ予測モードにおいて、前記2つのビデオブロックのうちの少なくとも1つの予測信号は、少なくとも、イントラ予測信号及びインター予測信号に基づいて生成される、
非一時的コンピュータ読み出し可能格納媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019086488 | 2019-05-11 | ||
CNPCT/CN2019/086488 | 2019-05-11 | ||
JP2021567799A JP7271723B2 (ja) | 2019-05-11 | 2020-05-11 | ビデオコーディングのためのデブロッキングフィルタ |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021567799A Division JP7271723B2 (ja) | 2019-05-11 | 2020-05-11 | ビデオコーディングのためのデブロッキングフィルタ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023103284A true JP2023103284A (ja) | 2023-07-26 |
Family
ID=73289773
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021567799A Active JP7271723B2 (ja) | 2019-05-11 | 2020-05-11 | ビデオコーディングのためのデブロッキングフィルタ |
JP2023071920A Pending JP2023103284A (ja) | 2019-05-11 | 2023-04-26 | ビデオコーディングのためのデブロッキングフィルタ |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021567799A Active JP7271723B2 (ja) | 2019-05-11 | 2020-05-11 | ビデオコーディングのためのデブロッキングフィルタ |
Country Status (6)
Country | Link |
---|---|
US (2) | US12003711B2 (ja) |
EP (1) | EP3954128A4 (ja) |
JP (2) | JP7271723B2 (ja) |
KR (1) | KR20220006054A (ja) |
CN (2) | CN113812163B (ja) |
WO (1) | WO2020228661A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114041285B (zh) * | 2019-05-11 | 2024-04-19 | 北京字节跳动网络技术有限公司 | 视频处理中去方块滤波器的边界强度确定 |
JP7505869B2 (ja) * | 2019-09-20 | 2024-06-25 | 日本放送協会 | 符号化装置、復号装置、及びプログラム |
WO2024205296A1 (ko) * | 2023-03-30 | 2024-10-03 | 현대자동차주식회사 | 비 지역적 샘플을 이용하여 인루프필터링을 수행하는 비디오 부호화/복호화 방법 및 장치 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005022919A1 (en) | 2003-08-26 | 2005-03-10 | Thomson Licensing S.A. | Method and apparatus for decoding hybrid intra-inter coded blocks |
US9001899B2 (en) * | 2006-09-15 | 2015-04-07 | Freescale Semiconductor, Inc. | Video information processing system with selective chroma deblock filtering |
US8787443B2 (en) * | 2010-10-05 | 2014-07-22 | Microsoft Corporation | Content adaptive deblocking during video encoding and decoding |
US9729879B2 (en) * | 2011-03-10 | 2017-08-08 | Hfi Innovation Inc. | Method and apparatus of deblocking filter |
US9167269B2 (en) * | 2011-10-25 | 2015-10-20 | Qualcomm Incorporated | Determining boundary strength values for deblocking filtering for video coding |
US20130107973A1 (en) | 2011-10-28 | 2013-05-02 | Qualcomm Incorporated | Loop filtering control over tile boundaries |
DK2742691T3 (en) * | 2011-10-31 | 2018-12-10 | Hfi Innovation Inc | METHOD AND APPARATUS FOR FILTER DEBLOCK WITH SIMPLIFIED INTERFACE STRENGTH |
KR102218002B1 (ko) | 2011-11-04 | 2021-02-19 | 엘지전자 주식회사 | 영상 정보 인코딩/디코딩 방법 및 장치 |
US20140321552A1 (en) | 2011-11-18 | 2014-10-30 | Dolby Laboratories Licensing Corporation | Optimization of Deblocking Filter Parameters |
US9538200B2 (en) | 2012-01-19 | 2017-01-03 | Qualcomm Incorporated | Signaling of deblocking filter parameters in video coding |
KR20130090465A (ko) * | 2012-02-06 | 2013-08-14 | 삼성전자주식회사 | 순차 주사 기반의 디블록킹 필터링 장치 및 방법 |
US10321130B2 (en) | 2013-01-07 | 2019-06-11 | Vid Scale, Inc. | Enhanced deblocking filters for video coding |
CN103491373B (zh) * | 2013-09-06 | 2018-04-27 | 复旦大学 | 一种适用于hevc标准的去方块滤波器的四级流水滤波方法 |
WO2015054811A1 (en) | 2013-10-14 | 2015-04-23 | Microsoft Corporation | Features of intra block copy prediction mode for video and image coding and decoding |
JP2015144423A (ja) * | 2013-12-25 | 2015-08-06 | 三星電子株式会社Samsung Electronics Co.,Ltd. | 画像符号化装置、画像復号化装置、それらの方法、プログラム及び画像処理システム |
AU2014202921B2 (en) * | 2014-05-29 | 2017-02-02 | Canon Kabushiki Kaisha | Method, apparatus and system for de-blocking a block of video samples |
CN111988606B (zh) * | 2014-09-15 | 2022-09-20 | 寰发股份有限公司 | 去区块滤波方法、相应地编码装置和存储介质 |
CN115134609A (zh) * | 2015-06-11 | 2022-09-30 | 杜比实验室特许公司 | 使用自适应去块滤波编码和解码图像的方法及其装置 |
CN116320493A (zh) * | 2016-11-28 | 2023-06-23 | 韩国电子通信研究院 | 用于滤波的方法和装置 |
CN110169062A (zh) | 2017-01-10 | 2019-08-23 | 瑞典爱立信有限公司 | 去块滤波控制 |
US10708591B2 (en) | 2017-03-20 | 2020-07-07 | Qualcomm Incorporated | Enhanced deblocking filtering design in video coding |
WO2018180841A1 (en) * | 2017-03-29 | 2018-10-04 | Sharp Kabushiki Kaisha | Systems and methods for filtering reconstructed video data using bilateral filtering techniques |
CN107172423B (zh) * | 2017-03-31 | 2018-08-21 | 武汉斗鱼网络科技有限公司 | 一种对视频帧进行滤波的方法及装置 |
CN117956195A (zh) * | 2018-01-08 | 2024-04-30 | 三星电子株式会社 | 编码方法及其设备以及解码方法及其设备 |
US10972729B2 (en) | 2018-01-20 | 2021-04-06 | Qualcomm Incorporated | Deblocking filter selection and application in video coding |
US20190238845A1 (en) | 2018-01-26 | 2019-08-01 | Qualcomm Incorporated | Adaptive loop filtering on deblocking filter results in video coding |
RU2768016C1 (ru) | 2018-03-30 | 2022-03-23 | Шарп Кабусики Кайся | Системы и способы применения фильтров деблокирования к восстановленным видеоданным |
US10708592B2 (en) | 2018-04-02 | 2020-07-07 | Qualcomm Incorporated | Deblocking filter for video coding and processing |
CA3103003A1 (en) * | 2018-06-21 | 2019-12-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Deblocking of video picture boundaries |
NZ777166A (en) | 2018-12-07 | 2022-11-25 | Huawei Tech Co Ltd | An encoder, a decoder and corresponding methods of boundary strength derivation of deblocking filter |
CN113545036B (zh) | 2019-03-02 | 2023-11-28 | 北京字节跳动网络技术有限公司 | 对环路内滤波的限制 |
CN114041285B (zh) | 2019-05-11 | 2024-04-19 | 北京字节跳动网络技术有限公司 | 视频处理中去方块滤波器的边界强度确定 |
-
2020
- 2020-05-11 CN CN202080035421.1A patent/CN113812163B/zh active Active
- 2020-05-11 CN CN202211386673.6A patent/CN117176969A/zh active Pending
- 2020-05-11 EP EP20805536.8A patent/EP3954128A4/en active Pending
- 2020-05-11 WO PCT/CN2020/089557 patent/WO2020228661A1/en unknown
- 2020-05-11 JP JP2021567799A patent/JP7271723B2/ja active Active
- 2020-05-11 KR KR1020217035465A patent/KR20220006054A/ko unknown
-
2021
- 2021-11-10 US US17/523,131 patent/US12003711B2/en active Active
-
2022
- 2022-09-28 US US17/954,905 patent/US12003715B2/en active Active
-
2023
- 2023-04-26 JP JP2023071920A patent/JP2023103284A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
CN113812163B (zh) | 2022-11-25 |
JP7271723B2 (ja) | 2023-05-11 |
US20230032798A1 (en) | 2023-02-02 |
US12003715B2 (en) | 2024-06-04 |
KR20220006054A (ko) | 2022-01-14 |
CN113812163A (zh) | 2021-12-17 |
EP3954128A4 (en) | 2022-06-15 |
WO2020228661A1 (en) | 2020-11-19 |
US20220070454A1 (en) | 2022-03-03 |
CN117176969A (zh) | 2023-12-05 |
EP3954128A1 (en) | 2022-02-16 |
US12003711B2 (en) | 2024-06-04 |
JP2022533074A (ja) | 2022-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7233565B2 (ja) | ビデオ処理におけるマルチパラメータ適応ループフィルタリング | |
JP7271723B2 (ja) | ビデオコーディングのためのデブロッキングフィルタ | |
JP2024041836A (ja) | ビデオ・データ処理方法、装置、及び記憶媒体 | |
KR102359415B1 (ko) | 비디오 코딩을 위한 인터 예측 장치 및 방법을 위한 보간 필터 | |
JP7544921B2 (ja) | コーディングブロック又はサブブロック境界でのデブロッキングフィルタリング | |
JP2023109795A (ja) | ビデオ・データを処理する方法、装置、及び記憶媒体 | |
US11546638B2 (en) | Method and apparatus for video filtering | |
JPWO2020192645A5 (ja) | ||
KR20220100069A (ko) | 비디오 필터링에서의 오프셋을 위한 방법 및 장치 | |
EP4070550A1 (en) | Method and apparatus for video filtering | |
EP4101169A1 (en) | Sample offset with predefined filters | |
US20230353792A1 (en) | Non-linear mapping based filter use in loop filter chain | |
US20220070455A1 (en) | Boundary strength determination for deblocking filters in video processing | |
US11785213B2 (en) | Method and apparatus for video filtering | |
US11706461B2 (en) | Method and apparatus for video coding | |
EP4413729A1 (en) | Combining deblock filtering and another filtering for video encoding and/or decoding | |
CN118525512A (zh) | 用于图像编码和解码的滤波 | |
CN114503597A (zh) | 视频编解码中的色度去方块 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230526 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240305 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240605 |