JPWO2020211807A5 - - Google Patents
Download PDFInfo
- Publication number
- JPWO2020211807A5 JPWO2020211807A5 JP2021560955A JP2021560955A JPWO2020211807A5 JP WO2020211807 A5 JPWO2020211807 A5 JP WO2020211807A5 JP 2021560955 A JP2021560955 A JP 2021560955A JP 2021560955 A JP2021560955 A JP 2021560955A JP WO2020211807 A5 JPWO2020211807 A5 JP WO2020211807A5
- Authority
- JP
- Japan
- Prior art keywords
- block
- video block
- alwip
- mode
- video
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 199
- 239000013598 vector Substances 0.000 claims description 63
- 239000011159 matrix material Substances 0.000 claims description 53
- 238000012545 processing Methods 0.000 claims description 42
- 238000006243 chemical reaction Methods 0.000 claims description 24
- 238000001914 filtration Methods 0.000 claims description 19
- 230000015654 memory Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 10
- 230000006870 function Effects 0.000 claims description 2
- 239000013074 reference sample Substances 0.000 claims 3
- 230000001131 transforming effect Effects 0.000 claims 2
- 239000000523 sample Substances 0.000 claims 1
- 241000023320 Luma <angiosperm> Species 0.000 description 44
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 44
- 238000005516 engineering process Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 23
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 15
- 238000005192 partition Methods 0.000 description 13
- 238000013139 quantization Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000010276 construction Methods 0.000 description 9
- 230000009466 transformation Effects 0.000 description 9
- 238000009795 derivation Methods 0.000 description 8
- 230000011664 signaling Effects 0.000 description 8
- 230000006835 compression Effects 0.000 description 7
- 238000007906 compression Methods 0.000 description 7
- 238000012935 Averaging Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 101100129500 Caenorhabditis elegans max-2 gene Proteins 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 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
- 230000002123 temporal effect Effects 0.000 description 2
- FZEIVUHEODGHML-UHFFFAOYSA-N 2-phenyl-3,6-dimethylmorpholine Chemical compound O1C(C)CNC(C)C1C1=CC=CC=C1 FZEIVUHEODGHML-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- OVBPIULPVIDEAO-LBPRGKRZSA-N folic acid Chemical compound C=1N=C2NC(N)=NC(=O)C2=NC=1CNC1=CC=C(C(=O)N[C@@H](CCC(O)=O)C(O)=O)C=C1 OVBPIULPVIDEAO-LBPRGKRZSA-N 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Description
本特許文書は、ビデオコーディング技術、装置、およびシステムに関する。
関連出願の相互参照
本出願は、2019年4月16日に出願された国際特許出願PCT/CN2019/082813について優先権および利益を主張する、2020年4月16日に出願された国際特許出願PCT/CN2020/085050に基づくものである。上記の全ての特許出願は、その全体が、参照によりここにおいて包含されている。
本出願は、2019年4月16日に出願された国際特許出願PCT/CN2019/082813について優先権および利益を主張する、2020年4月16日に出願された国際特許出願PCT/CN2020/085050に基づくものである。上記の全ての特許出願は、その全体が、参照によりここにおいて包含されている。
ビデオ圧縮の進歩にもかかわらず、デジタルビデオは、依然として、インターネットおよび他のデジタル通信ネットワークにおける最大の帯域幅使用を占めている。映像の受信および表示が可能な接続ユーザデバイスの数が増加するにつれて、デジタルビデオの利用に対する帯域幅需要は増加し続けることが予想される。
デジタルビデオコーディング(digital video coding)に関連する装置、システム、および方法、そして、具体的には、ビデオコーディングのためのマトリクスベースのイントラ予測方法が説明される。説明される方法は、既存のビデオコーディング標準(例えば、高効率ビデオコーディング(HEVC))、および、将来のビデオコーディング標準(例えば、バーサタイルビデオコーディング(VVC))またはコーデックの両方に適用され得る。
ビデオ処理の第1の例示的な方法は、ルールに従って、ビデオの現在ビデオブロックと前記現在ビデオブロックのビットストリーム表現との間の変換を実行するステップを含み、ここで、前記ルールは、前記現在ビデオブロックのサンプルと、前記変換の最中にマトリクス加重イントラ予測(MIP)モードにおいて適用されるマトリクスまたはオフセット値を指定し、かつ、ここで、前記MIPモードは、前記ビデオの以前にコード化されたサンプルについて、境界ダウンサンプリング操作、それに続く行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作を実行することによって、前記現在ビデオブロックの予測ブロックを決定することを含む。
ビデオ処理の第2の例示的な方法は、現在ビデオブロックについて、マトリクス加重イントラ予測(MIP)モードを使用して、中間予測ブロックを生成するステップであり、前記MIPモードにおいて、前記現在ビデオブロックの前記中間予測ブロックは、ビデオの以前にコード化されたサンプルについて、境界ダウンサンプリング操作、それに続く行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作を実行することによって決定される、ステップと、前記中間予測ブロックに基づいて、追加的操作に基づく最終的な予測ブロックを生成するステップと、前記最終的な予測信号に基づいて、前記現在ビデオブロックと前記現在ビデオブロックのビットストリーム表現との間の変換を実行するステップと、を含む。
ビデオ処理の第3の例示的な方法は、ビデオの現在ビデオブロックと前記現在ビデオブロックのビットストリーム表現との間の変換を実行するステップを含み、ここで、前記変換は、マトリクス加重イントラ予測(MIP)モードにおける前記現在ビデオブロックの少なくとも一部に係る複数のサンプルを予測することを含み、そこでは、前記ビデオの以前にコード化されたサンプルについて、境界ダウンサンプリング操作、それに続く行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作を実行することによって、前記現在ビデオブロックの予測ブロックを実行することによって、前記現在ビデオブロックの一部に係る予測ブロックが決定される。
ビデオ処理の第4の例示的な方法は、ビデオの現在ビデオブロックと前記現在ビデオブロックのビットストリーム表現との間の変換を実行するステップを含み、ここで、前記変換は、前記変換の最中にマトリクス加重イントラ予測(MIP)モードを適用する以前に、現在ビデオブロックの隣接サンプルをフィルタリングするか否かを示すルールに基づいており、かつ、ここで、前記MIPモードは、前記ビデオの以前にコード化されたサンプルについて、境界ダウンサンプリング操作、それに続く行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作を実行することによって、前記現在ビデオブロックの予測ブロックを決定することを含む。
さらに別の代表的な態様において、開示される技術は、ビデオ処理のための方法を提供するために使用され得る。この例示的な方法は、現在ビデオブロックが、アフィン線形加重イントラ予測(ALWIP)モードを使用してコード化されることを決定するステップと、前記決定に基づいて、ALWIPモードのための最確モード(MPM)リストの少なくとも一部を、非ALWIPイントラモードに対するMPMリストの少なくとも一部に基づいて構築するステップと、ALWIPモードに対するMPMリストに基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行するステップと、を含む。
さらに別の代表的な態様において、開示される技術は、ビデオ処理のための方法を提供するために使用され得る。この例示的な方法は、現在ビデオブロックのルマコンポーネントが、アフィン線形加重イントラ予測(ALWIP)モードを使用してコード化されることを決定すること、決定に基づいて、クロマイントラモードを推定すること、および、クロマイントラモードに基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
さらに別の代表的な態様において、開示される技術は、ビデオ処理のための方法を提供するために使用され得る。この例示的な方法は、現在ビデオブロックが、アフィン線形加重イントラ予測(ALWIP)モードを使用してコード化されることを決定すること、および、決定に基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
さらに別の代表的な態様において、開示される技術は、ビデオ処理のための方法を提供するために使用され得る。この例示的な方法は、現在ビデオブロックが、アフィン線形加重イントラ予測(ALWIP)モードとは異なるコーディングモードを使用してコード化されることを決定すること、および、決定に基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
さらに別の代表的な態様において、開示される技術は、ビデオ処理のための方法を提供するために使用され得る。この例示的な方法は、現在ビデオブロックに対して、アフィン線形加重イントラ予測(ALWIP)モードを使用して、第1予測を生成すること、第1予測に基づいて、位置依存イントラ予測結合(PDPC)を使用して、第2予測を生成すること、および、第2予測に基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
さらに別の代表的な態様において、開示される技術は、ビデオ処理のための方法を提供するために使用され得る。この例示的な方法は、現在ビデオブロックが、アフィン線形加重イントラ予測(ALWIP)モードを使用してコード化されることを決定すること、ALWIPモードに基づいて、現在ビデオブロックの複数のサブブロックを予測すること、および、予測に基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
さらに別の代表的な態様において、上述の方法は、プロセッサ実行可能コードの形態で具体化され、そして、コンピュータで読取り可能なプログラム媒体に保管される。
さらに別の代表的な態様において、上述の方法を実行するように構成され、または、動作可能なデバイスが開示される。デバイスは、この方法を実装するようにプログラムされたプロセッサを含んでよい。
さらに別の代表的な態様において、ビデオデコーダ装置は、ここにおいて説明される方法を実装することができる。
開示される技術に係る上記の態様および特徴は、図面、明細書、および請求項においてより詳細に説明されている。
より高解像度のビデオに対する要求が増加しているため、ビデオコーディング方法および技術は、現代の技術においては至るところに存在している(ubiquitous)。ビデオコーデックは、典型的には、デジタルビデオを圧縮(compress)または解凍(decompress)する電子回路またはソフトウェアを含み、そして、より高いコーディング効率を提供するために絶えず改良されている。ビデオコーデックは、圧縮されていないビデオを圧縮形式に変換する。ビデオ品質、ビデオを表現するために使用されるデータ量(ビットレートによって決定される)、コーディングおよびデコーディングアルゴリズムの複雑さ、データ損失およびエラーに対する感度、編集の容易さ、ランダムアクセス、および、エンドツーエンド遅延(レイテンシ(latency))の間には複雑な関係が存在している。圧縮フォーマットは、たいてい、標準的なビデオ圧縮仕様、例えば、高効率ビデオコーディング(High Efficiency Video Coding)標準(H.265またはMPEG-H Part2としても、また、知られているもの)、最終化されるバーサタイルビデオコーディング(VVC)標準、または、他の現在及び/又は将来のビデオコーディング標準に準拠している。
開示される技術の実施形態は、ランタイム性能を改善するために、既存のビデオコーディング標準(例えば、HEVC、H.265)および将来の標準に適用され得る。本文書では、説明の可読性を向上させるためにセクション見出しを使用している。そして、説明または実施形態(及び/又は実装)を各セクションのみに決して限定するものではない。
1 HEVCに関する簡潔なレビュー
1.1 HEVC/H.265におけるイントラ予測
イントラ予測は、考慮されるカラーチャネルにおいて以前に再構成されたサンプルを使用して、所与のTB(変換ブロック(transform block))のサンプルを生成することを含む。イントラ予測モードは、ルマ(luma)チャンネルおよびクロマ(chroma)チャンネルに対して別々に信号化され、クロマチャンネルイントラ予測モードは「DM_CHROMA」モードを介してルマチャンネルイントラ予測モードに任意的に依存している。イントラ予測モードはPB(予測ブロック(prediction block))レベルで信号化されるが、CUの残りのクワッドツリー階層に従って、イントラ予測プロセスがTBレベルで適用され、それにより、1つのTBのコーディングがCU内の次のTBのコーディングに影響することができ、そして、従って、基準値として使用されるサンプルまでの距離が短縮している。
1.1 HEVC/H.265におけるイントラ予測
イントラ予測は、考慮されるカラーチャネルにおいて以前に再構成されたサンプルを使用して、所与のTB(変換ブロック(transform block))のサンプルを生成することを含む。イントラ予測モードは、ルマ(luma)チャンネルおよびクロマ(chroma)チャンネルに対して別々に信号化され、クロマチャンネルイントラ予測モードは「DM_CHROMA」モードを介してルマチャンネルイントラ予測モードに任意的に依存している。イントラ予測モードはPB(予測ブロック(prediction block))レベルで信号化されるが、CUの残りのクワッドツリー階層に従って、イントラ予測プロセスがTBレベルで適用され、それにより、1つのTBのコーディングがCU内の次のTBのコーディングに影響することができ、そして、従って、基準値として使用されるサンプルまでの距離が短縮している。
HEVCは、35のイントラ予測モードを含んでいる。DCモード、平面モード(planar mode)モード、および33の方向性(directional)または「角度(angular)」イントラ予測モードである。33の角度イントラ予測モードが図1に示されている。
クロマカラーチャネルに関連するPBについて、イントラ予測モードは、平面、DC、水平、垂直、「DM_CHROMA」モード、または、ときどき対角モード「34」のいずれかで指定される。
クロマフォーマット4:2:2および4:2:0について、クロマPBはそれぞれ2つまたは4つのルマPBと(それぞれに)オーバーラップすることがあり、この場合に、DM_CHROMAのルマ方向は、これらのルマPBの左上から取得される。
DM_CHROMAモードは、ルマカラーチャネルPBのイントラ予測モードがクロマカラーチャネルPBに適用されることを示している。これのことは比較的に一般的なので、intra_croma_pred_modeの最確モード(most probable mode)符号化方式は、選択さているこのモードを指示してバイアスされている。
2 VVCにおけるイントラ予測の例
2.1 67のイントラ予測モードによるイントラモードコーディング
ナチュラルビデオで提示される任意のエッジ方向をキャプチャするために、方向性イントラモードの数は、HEVCで使用されるように、33から65に拡張される。追加的な方向性モードは、図2において赤色の点線の矢印として描かれており、そして、平面モードおよびDCモードは、同じままである。これらのより高密度の方向性イントラ予測モードは、全てのブロックサイズについて、および、ルマとクロマイントラ予測の両方について適用される。
2.1 67のイントラ予測モードによるイントラモードコーディング
ナチュラルビデオで提示される任意のエッジ方向をキャプチャするために、方向性イントラモードの数は、HEVCで使用されるように、33から65に拡張される。追加的な方向性モードは、図2において赤色の点線の矢印として描かれており、そして、平面モードおよびDCモードは、同じままである。これらのより高密度の方向性イントラ予測モードは、全てのブロックサイズについて、および、ルマとクロマイントラ予測の両方について適用される。
2.2 クロスコンポーネント線形モデル(CCLM)の例
いくつかの実施態様において、そして、クロスコンポーネント冗長性を縮小するために、クロスコンポーネント線形モデル(CCLM)予測モード(LMとも呼ばれるもの)が、JEMにおいて使用される。クロマサンプルは、以下のような線形モデルを使用することによって、同じCUの再構成ルマサンプルに基づいて予測される。
いくつかの実施態様において、そして、クロスコンポーネント冗長性を縮小するために、クロスコンポーネント線形モデル(CCLM)予測モード(LMとも呼ばれるもの)が、JEMにおいて使用される。クロマサンプルは、以下のような線形モデルを使用することによって、同じCUの再構成ルマサンプルに基づいて予測される。
predc(i,j)=α・recL′(i,j)+β (1)
ここで、predc(i,j)は、CU内の予測クロマサンプルを表し、そして、recL′(i,j)は、同じCUのダウンサンプリングされた再構成ルマサンプルを表している。線形モデルパラメータであるαおよびβは、2つのサンプルからのルマ値とクロマ値との間の関係から導出される。それらは、ダウンサンプリングされた隣接するルマサンプルのセット内で最小サンプル値および最大サンプルを持つルマサンプルであり、そして、対応するクロマサンプルである。図3は、左上のサンプルの位置、および、CCLMモードに関与する現在ブロック(current block)のサンプルの一つの例を示している。
このパラメータ計算は、デコーディング処理の一部として実行され、そして、単にエンコーダ探索操作として実行されるだけではない。その結果として、αおよびβの値をデコーダに伝達するためにシンタックスが使用されない。
クロマイントラモードコーディングでは、クロマイントラモードコーディングのために合計8つのイントラモードが許可されている。これらのモードは、5つの従来のイントラモードと3つのクロスコンポーネント線形モデルモード(CCLM、LM_A、およびLM_L)を含む。クロマモードコーディングは、対応するルマブロックのイントラ予測モードに直接的に依存している。Iスライスではルマ成分およびクロマ成分について別個のブロック分割構造が有効になっている(enabled)ため、1つのクロマブロックが複数のルマブロックに対応することがある。従って、クロマDMモードについて、現在のクロマブロックの中心位置をカバーしている対応するルマブロックのイントラ予測モードが直接的に継承される。
2.3多重基準線(MRL)イントラ予測
多重基準線(multiple reference line、MRL)イントラ予測は、イントラ予測のためにより多くの基準線を使用する。図4においては、4つの基準線の例が示されている。ここで、セグメントAおよびFのサンプルは、再構成された隣接サンプルからフェッチされるのではなく、それぞれセグメントBおよびEからの最も近いサンプルで埋め込まれる(padded)。HEVC画像内(intra-picture)予測は、最も近い基準線(すなわち基準線0)を使用する。MRLでは、2つの追加ライン(基準線1および基準線3)が使用される。選択された基準線のインデックス(mrl_idx)は、信号化され、そして、イントラ予測子(predictor)を生成するために使用される。0より大きい、基準線idxは、MPMリストに追加の基準線モードのみ、および、残りのモードがない信号mpmインデックスのみを含む。
多重基準線(multiple reference line、MRL)イントラ予測は、イントラ予測のためにより多くの基準線を使用する。図4においては、4つの基準線の例が示されている。ここで、セグメントAおよびFのサンプルは、再構成された隣接サンプルからフェッチされるのではなく、それぞれセグメントBおよびEからの最も近いサンプルで埋め込まれる(padded)。HEVC画像内(intra-picture)予測は、最も近い基準線(すなわち基準線0)を使用する。MRLでは、2つの追加ライン(基準線1および基準線3)が使用される。選択された基準線のインデックス(mrl_idx)は、信号化され、そして、イントラ予測子(predictor)を生成するために使用される。0より大きい、基準線idxは、MPMリストに追加の基準線モードのみ、および、残りのモードがない信号mpmインデックスのみを含む。
2.4 イントラサブパーティション(ISP)
イントラサブパーティション(Intra Sub Partitions、ISP)ツールは、ブロックサイズに応じて、ルマ・イントラ予測ブロックを垂直方向または水平方向に2つまたは4つのサブパーティションへと分割する。例えば、ISPの最小ブロックサイズは4×8(または8×4)である。ブロックサイズが4×8(または8×4)を超える場合、対応するブロックは、4つのサブパーティションで分割される。図5は、2つの可能性の例を示している。全てのサブパーティションは、16サンプル以上を有することの条件を満たしている。
イントラサブパーティション(Intra Sub Partitions、ISP)ツールは、ブロックサイズに応じて、ルマ・イントラ予測ブロックを垂直方向または水平方向に2つまたは4つのサブパーティションへと分割する。例えば、ISPの最小ブロックサイズは4×8(または8×4)である。ブロックサイズが4×8(または8×4)を超える場合、対応するブロックは、4つのサブパーティションで分割される。図5は、2つの可能性の例を示している。全てのサブパーティションは、16サンプル以上を有することの条件を満たしている。
各サブパーティションについて、再構成されたサンプルは、予測信号に残留信号を加えることによって獲得される。ここで、残留信号は、エントロピーデコーディング、逆量子化、および逆変換といったプロセスによって生成される。従って、各サブパーティションの再構成されたサンプル値は、次のサブパーティションの予測を生成するために利用可能であり、そして、各サブパーティションは繰り返し処理される。加えて、処理される第1サブパーティションは、CUの左上のサンプルを含んでおり、そして、次いで、下向き(水平分割)または右向き(垂直分割)に続いている。その結果として、サブパーティション予測信号を生成するために使用される参照サンプル(reference sample)は、ラインの左側および上方にのみ配置される。全てのサブパーティションは、同じイントラモードを共有する。
2.5 アフィン線形加重イントラ予測(ALWIPまたはマトリクスベースのイントラ予測)
アフィン線形加重イントラ予測(Affine linear weighted intra prediction、ALWIP、別名マトリクスベースイントラ予測(MIP))が、JVET‐N0217において提案されている。
アフィン線形加重イントラ予測(Affine linear weighted intra prediction、ALWIP、別名マトリクスベースイントラ予測(MIP))が、JVET‐N0217において提案されている。
JVET-N0217では、2つの試験が実施される。テスト1において、ALWIPは、8Kバイトのメモリ制限およびサンプル当たり最大4乗算で設計されている。テスト2はテスト1と同様であるが、さらに、メモリ要求およびモデルアーキテクチャの観点から設計を単純化している。
- 全てのブロック形状に対する行列およびオフセットベクトルの単一セット
- 全てのブロック形状についてモードの数を19まで削減
- メモリ要求を5760の10ビット値、すなわち7.20キロバイトまで削減
-予測されたサンプルの線形補間を、第1テストのように、反復補間を置き換えて、方向ごとに単一ステップで実行
2.5.12.5.1JVET-N0217試験1
幅Wおよび高Hの矩形ブロックのサンプルを予測するために、アフィン線形加重イントラ予測(ALWIP)は、入力として、ブロックの左の再構成隣接境界サンプルの1つのラインHと、ブロックの上の再構成隣接境界サンプルの1つのラインWをとる。再構成されたサンプルが利用可能でない場合は、従来のイントラ予測と同様に生成される。
予測信号の生成は、次の3個のステップに基づいている。
幅Wおよび高Hの矩形ブロックのサンプルを予測するために、アフィン線形加重イントラ予測(ALWIP)は、入力として、ブロックの左の再構成隣接境界サンプルの1つのラインHと、ブロックの上の再構成隣接境界サンプルの1つのラインWをとる。再構成されたサンプルが利用可能でない場合は、従来のイントラ予測と同様に生成される。
予測信号の生成は、次の3個のステップに基づいている。
境界サンプルから、W=H=4の場合には4個のサンプル、および、他の全ての場合には8個のサンプルが平均化によって抽出される。
入力として平均化されたサンプルを用いて、行列ベクトル乗算が実行され、オフセットの加算がその後に続く。その結果、元の(original)ブロック内のサンプルのサブサンプリングされたセットについて減少した予測信号が得られる。
残りの位置での予測信号は、各方向における単一ステップ線形補間である線形補間によるサブサンプリングされたセットに対する予測信号から生成される。
予測信号を生成するために必要なマトリクスおよびオフセットベクトルは、マトリクスの3個の集合(set)S0、S1、S2から得られる。集合S0は、それぞれが16個の行と4個の列を有する18個のマトリクスAi
0、i∈{0,...,17}と、それぞれがサイズ16の18個のオフセットベクトルbi
0、i∈{0,...,17}から構成されている。その集合のマトリクスおよびオフセットベクトルは、サイズ4×4のブロックについて使用される。集合S1は、それぞれが16個の行と8個の列を有する、10個のマトリクスAi
1、i∈{0,...,9}と、それぞれがサイズ16の10個のオフセットベクトルbi
1、i∈{0,...,9}から構成されている。その集合のマトリクスおよびオフセットベクトルは、サイズ4×8、8×4、および8×8のブロックに使用される。最後に、集合S2は、それぞれが64個の行と8個の列を有する6個のマトリクスAi
2、i∈{0,...,5}と、サイズ16の6個のオフセットベクトルbi
2、i∈{0,...,5}から構成されている。その集合のマトリクスおよびオフセットベクトル、または、これらのマトリクスの一部およびオフセットベクトルは、他の全てのブロック形状に使用される。
行列ベクトル積の計算に必要とされる乗算の総数は、常に、4×W×H以下である。言い換えれば、ALWIPモードについて、サンプル当たり最大4回の乗算が必要とされる。
2.5.2境界の平均化
第1ステップにおいて、入力境界bdrytopおよびbdryleftが、より小さい境界bdrytop redおよびbdryleft redに縮小される。ここで、bdrytop redおよびbdryleft redは、4×4ブロックの場合は両方とも2個のサンプルで構成され、そして、他の全ての場合は両方とも4個のサンプルで構成される。
第1ステップにおいて、入力境界bdrytopおよびbdryleftが、より小さい境界bdrytop redおよびbdryleft redに縮小される。ここで、bdrytop redおよびbdryleft redは、4×4ブロックの場合は両方とも2個のサンプルで構成され、そして、他の全ての場合は両方とも4個のサンプルで構成される。
そして、bdryleft
redを類似的に定義する。
そして、bdryleft
redを類似的に定義する。
2つの縮小された境界bdrytop
redおよびbdryleft
redは、縮小された境界ベクトルbdryredに連結され、それは、形状4×4のブロックに対してはサイズ4であり、そして、他の全ての形状のブロックに対してはサイズ8である。ALWIPモードを参照する場合、この連結(concatenation)は、以下のように定義される。
最後に、サブサンプル予測信号の補間のために、大きなブロックにおいて、平均化境界の第2バージョンが必要とされる。つまり、min(W,H)>8かつW≧Hである場合、W=8*2lであり、0≦i<8について、以下を定義する。
min(W,H)>8かつH>Wである場合、bdryleft
redIIを類似的に定義する。
2.5.3 行列ベクトル乗算による縮小予測信号の生成
縮小入力ベクトルbdryredから、縮小予測信号predredを生成する。後者の信号は、幅Wredおよび高さHredのダウンサンプルブロック上の信号である。ここで、WredおよびHredは、以下のように定義される。
縮小入力ベクトルbdryredから、縮小予測信号predredを生成する。後者の信号は、幅Wredおよび高さHredのダウンサンプルブロック上の信号である。ここで、WredおよびHredは、以下のように定義される。
縮小予測信号predredは、行列ベクトル積を計算し、かつ、オフセットを加算することによって計算される。
predred=A・bdryred+b
ここでAは、マトリクスであり、Wred・Hred行、および、W=H=4の場合に4列、かつ、他の全ての場合に列を有する。bは、サイズWred・Hredのベクトルである。
マトリクスAおよびベクトルbは、集合S0、S1、S2のうち1つから、以下のように得られる。インデックスidx=idx(W,H)を以下のように定義する。
さらに、mを以下のように置く。
次いで、idx≦1またはidx=2、かつ、min(W,H)>4である場合に、A=Am
idxかつb=bm
idxである。idx=2、かつ、min(W,H)=4である場合に、A=Am
idxかつb=bm
idxである。
idx=2、かつ、min(W,H)=4である場合には、Aを、Am idxの全ての行を除外することによって生じる行列とする。W=4である場合には、Aを、ダウンサンプリングされたブロック内の奇数のx座標に対応する行列とし、もしくは、H=4である場合には、Aを、ダウンサンプリングされたブロック内の奇数のy座標に対応する行列とする。
idx=2、かつ、min(W,H)=4である場合には、Aを、Am idxの全ての行を除外することによって生じる行列とする。W=4である場合には、Aを、ダウンサンプリングされたブロック内の奇数のx座標に対応する行列とし、もしくは、H=4である場合には、Aを、ダウンサンプリングされたブロック内の奇数のy座標に対応する行列とする。
最終的に、以下の場合には、縮小された予測シグナルが、その転置(transpose)で置き換えられる。
- W=H=4、かつ、mode≧18
- max(W,H)=8、かつ、mode≧10
- max(W,H)>8、かつ、mode≧6
predredの計算に必要な乗法の数は、W=H=4である場合には4である。この場合に、Aは、4列および16行を有するからである。他の全ての場合において、Aは、8列およびWred・Hred個の行を有し、そして、これらの場合には、8・Wred・Hred≦4・W・Hの乗算必要であることを直ちに検証する。すなわち、これらの場合においても、predredを計算するために、1サンプル当たり最大4乗算が必要とされる。
2.5.4 ALWIPプロセス全体の説明図
平均化、行列ベクトル乗算、および線形補間の全プロセスが、図6-図9における異なる形状について示されている。残りの形状は、図示のケースの1つと同様に扱われることに注意されたい。
平均化、行列ベクトル乗算、および線形補間の全プロセスが、図6-図9における異なる形状について示されている。残りの形状は、図示のケースの1つと同様に扱われることに注意されたい。
1. 4×4ブロックが与えられた場合、ALWIPは、境界の各軸に沿って2つの平均をとる。結果として生じる4個の入力サンプルは、行列ベクトル乗算に入る。マトリクスは、集合S0からとられる。オフセットを加えた後で、このことは、16個の最終予測サンプルを生じる。予測信号を生成するために、線形補間は必要でない。従って、サンプル当たり合計(4・16)/(4・4)=4回の乗算が実行される。
2. 8×8ブロックが与えられた場合、ALWIPは境界の各軸に沿って4つの平均をとる。結果として生じる8個の入力サンプルは、行列ベクトル乗算に入る。マトリクスは、集合S1からとられる。このことは、予測ブロックの奇数位置に16個のサンプルを生じる。従って、サンプル当たり合計(8・16)/(8・8)=2回の乗算が実行される。オフセットを加えた後で、これらのサンプルは、縮小された上部境界を使用することによって垂直に補間される。水平補間が、元の左側の境界を使用することによって続く。
3. 8×4ブロックが与えられた場合、ALWIPは境界の水平軸に沿って4つの平均、および、左側境界の4つの元の境界値をとる。結果として生じる8個の入力サンプルは、行列ベクトル乗算に入る。マトリクスは、集合S1からとられる。このことは、予測ブロックの奇数の水平位置および各垂直位置に16個のサンプルを生じる。従って、サンプル当たり合計(8・16)/(8・4)=4回の乗算が実行される。オフセットを加えた後で、これらのサンプルは、元の左側境界を使用して水平方向に補間される。
4. 16×16ブロックが与えられた場合、ALWIPは境界の各軸に沿って4つの平均をとる。結果として生じる8個の入力サンプルは、行列ベクトル乗算に入る。マトリクスは、集合S2からとられる。このことは、予測ブロックの奇数位置に64個のサンプルを生じる。従って、サンプル当たり合計(8・64)/(16・16)=2回の乗算が実行される。オフセットを加えた後で、これらのサンプルは、上部境界の8個の平均を使用することにより垂直方向に補間される。水平補間が、元の左側境界を使用することにより後に続く。補間処理は、この場合、いかなる乗法も追加しない。従って、全体として、ALWIP予測を計算するためには、サンプル当たり2回の乗算が必要とされる。
より大きな形状について、手順は本質的に同じであり、かつ、サンプル当たりの乗算数が4未満であることをチェックすることは容易である。
W>8であるW×8ブロックについては、サンプルが奇数の水平位置および各垂直位置で与えられるので、水平補間のみが必要である。
最後に、W>8であるW×4ブロックについて、A_kbeは、ダウンサンプリングされたブロックの水平に沿った奇数エントリに対応する各行を除外することによって生じる行列とする。従って、出力サイズは32であり、そして、再び、水平補間のみが実行されるように残る。
転置された場合は、それに応じて取り扱われる。
2.5.5 単一ステップ線形補間
max(W,H)≧8であるW×Hブロックについて、予測信号は、線形補間によるWred×Hredに対する縮小予測信号predredから生じる。ブロックの形状に応じて、垂直方向、水平方向、または、両方向において線形補間が実行される。線形補間が両方向に適用される場合には、W<Hであれば、水平方向において最初に適用され、そして、それ以外であれば、垂直方向において最初に適用される。
max(W,H)≧8であるW×Hブロックについて、予測信号は、線形補間によるWred×Hredに対する縮小予測信号predredから生じる。ブロックの形状に応じて、垂直方向、水平方向、または、両方向において線形補間が実行される。線形補間が両方向に適用される場合には、W<Hであれば、水平方向において最初に適用され、そして、それ以外であれば、垂直方向において最初に適用される。
一般性を損なうことなく、max(W,H)≧8であり、かつ、W≧HであるW×Hブロックを考慮する。次いで、一次元線形補間が以下のように実行される。一般性を損なうことなく、垂直方向における線形補間を説明することで十分である。最初に、縮小予測信号が、境界信号によって先頭(top)まで拡張される。垂直のアップサンプリング係数Uver=H/Hredを定義し、かつ、Uver=2Uverを書き込む。次に、以下のように拡張縮小予測信号を定義する。
次いで、この拡張された縮小予測信号から、垂直線形補間予測信号が、以下によって生成される。
predups,ver
red[x][Uver・y+k]=((Uver―k-1)・predred[x][y-1]+(k+1)・predred[x][y]+Uver/2)>>uver
ここで、0≦x<Wred、0≦y<Hred、および、0≦k<Uver
2.5.6 提案されるイントラ予測モードの信号化
イントラモードにおける各コーディングユニット(CU)に対して、ALWIPモードが対応する予測ユニット(PU)に適用されるか否かを示しているフラグがビットストリームで送信される。後者のインデックスの信号化は、JVET-M0043と同様にMRLと調和している。ALWIPモードを適用する場合、ALWIPモードのインデックスpredmodeは、3MPMSでMPM-listを使用して信号化される。
イントラモードにおける各コーディングユニット(CU)に対して、ALWIPモードが対応する予測ユニット(PU)に適用されるか否かを示しているフラグがビットストリームで送信される。後者のインデックスの信号化は、JVET-M0043と同様にMRLと調和している。ALWIPモードを適用する場合、ALWIPモードのインデックスpredmodeは、3MPMSでMPM-listを使用して信号化される。
ここで、MPMの導出は、以下のように、上および左PUのイントラモードを使用して実行される。従来のイントラ予測モードpredmodeAngularにALWIPモードを割り当てる、3つの固定テーブルが存在する。
map_angular_to_alwipidx,idx∈{0,1,2}
map_angular_to_alwipidx,idx∈{0,1,2}
predmodeALWIP=map_angular_to_alwipidx[predmodeAngular]
幅Wおよび高さHの各PUに対して、インデックスを定義する。
idx(PU)=idx(W,H)∈{0,1,2}
セクション2.5.3のように、3個のセットのうちどれからALWIP-parametersがとられるかを示す。
上の予測ユニットUnitaboveが利用可能であり、現在PUと同じCTUに属し、かつ、イントラモードにある場合、idx(PU)=idx(PUabove)、かつ、ALWIPがPUaboveにALWIPモードpredmodeabove
ALWIPで適用される場合には、以下を置く。
modeabove
ALWIP=predmodeabove
ALWIP
上PUが利用可能であり、現在PUと同じCTUに属し、かつ、イントラモードにある場合、そして、従来のイントラ予測モードpredmodeabove
Angularが上PUに適用される場合には、以下を置く。
modeabove
ALWIP=map_angular_to_alwipidx(PUabove)[predmodeabove
Angular]
他の全ての場合においては、以下を置く。
modeabove
ALWIP=-1
それは、このモードが利用可能でないことを意味している。同様にして、しかし、左PUが現在PUと同じCTUに所属する必要があるという制約なしに、modeleft
ALWIPモードを導出する。
最終的に、3個の固定デフォルトリストlistidx,idx∈{0,1,2}が提供され、それぞれが3個の異なるALWIPモードを含んでいる。デフォルトリストlistidx(PU)、および、modeabove
ALWIPとmodeleft
ALWIPから、デフォルト値を-1に置き換え、かつ、繰り返しを省略することによって、3個の別個のMPMを構成する。
ALWIP MPMリスト構成で使用される左隣接ブロックおよび上隣接ブロックは、図10に示されるようにA1およびB1である。
2.5.7 従来のルマおよびクロマイントラ予測モードのための適応MPMリスト導出
提案されるALWIPモードは、従来のイントラ予測モードのMPMベースコーディングと以下のように調和されている。従来のイントラ予測モードのためのルマおよびクロマMPMリスト導出プロセスは、固定テーブルmap_alwip_to_angularidx,idx∈{0,1,2}を使用し、所与のPU上のALWIPモードpremodeALWIPを従来のイントラ予測モードの1つにマッピングする。
提案されるALWIPモードは、従来のイントラ予測モードのMPMベースコーディングと以下のように調和されている。従来のイントラ予測モードのためのルマおよびクロマMPMリスト導出プロセスは、固定テーブルmap_alwip_to_angularidx,idx∈{0,1,2}を使用し、所与のPU上のALWIPモードpremodeALWIPを従来のイントラ予測モードの1つにマッピングする。
premodeAngular=map_alwip_to_angularidx(PU)[premodeALWIP]
ルマMPMリストの導出では、ALWIPモードpremodeALWIPを使用する隣接ルマブロックに遭遇するときはいつでも、このブロックが、従来のイントラ予測モードpremodeAngularを使用しているかのように扱われる。クロマMPMリストの導出では、現在ルマブロックがLWIPモードを使用するときはいつでも、ALWIPモードを従来のイントラ予測モードに変換するために同じマッピングが使用される。
2.5.8 対応する修正された作業原案
いくつかの実施態様においては、このセクションで説明されるように、開示される技術の実施形態に基づいて、intra_lwip_flag、intra_lwip_mpm_flag、intra_lwip_mpm_idx、およびintra_lwip_mpm_lesterに関する部分が作業原案に追加されている。
いくつかの実施態様においては、このセクションで説明されるように、開示される技術の実施形態に基づいて、intra_lwip_flag、intra_lwip_mpm_flag、intra_lwip_mpm_idx、およびintra_lwip_mpm_lesterに関する部分が作業原案に追加されている。
ALWIPのまとめ
幅Wおよび高さHの矩形ブロックのサンプルを予測するために、アフィン線形加重イントラ予測(ALWIP)は、ブロックの左のH再構成隣接境界サンプルの1ラインと、ブロックの上のW再構成隣接境界サンプルの1ラインを入力としてとる。再構成されたサンプルが利用で可能でない場合は、通常のイントラ予測と同様に生成される。ALWIPは、ルマイントラブロックにのみ適用される。クロマイントラブロックに対しては、従来のイントラコーディングモードが適用される。
幅Wおよび高さHの矩形ブロックのサンプルを予測するために、アフィン線形加重イントラ予測(ALWIP)は、ブロックの左のH再構成隣接境界サンプルの1ラインと、ブロックの上のW再構成隣接境界サンプルの1ラインを入力としてとる。再構成されたサンプルが利用で可能でない場合は、通常のイントラ予測と同様に生成される。ALWIPは、ルマイントラブロックにのみ適用される。クロマイントラブロックに対しては、従来のイントラコーディングモードが適用される。
予測信号の生成は、次の3個のステップに基づいている
1.境界サンプルのうち,W=H=4の場合は4サンプル、および、それ以外の場合は8サンプルが平均化によって抽出される。
2.平均化されたサンプルを入力として使用して、行列ベクトル乗算、その後に続いてオフセットの加算が実行される。その結果、元のブロック中のサブサンプリングされたサンプルのセットについて縮小予測信号が得られる。
3 残りの位置での予測信号は、各方向での単一ステップ線形補間である、線形補間によってサブサンプリングされたセットにおける予測信号から生成される。
ALWIPモードが適用される場合、ALWIPモードのインデックスは、3MPMSでMPM-listを使用して信号化される。ここで、MPMの導出は、以下のように、上および左PUのイントラモードを使用して実行される。3個の固定テーブルmap_angular_to_alwipidx,idx∈{0,1,2}が存在し、それぞれ従来のイントラ予測モードpredmodeAngularにALWIPモードを割り当てる。
predmodeALWIP=map_angular_to_alwipidx[predmodeAngular]
幅Wおよび高さHの各PUに対して、インデックスを定義する。
idx(PU)=idx(W,H)∈{0,1,2}
3個のセットのうちどれからALWIP-parametersがとられるかを示している。
上の予測ユニットUnitaboveが利用可能であり、現在PUと同じCTUに属し、かつ、イントラモードにある場合、idx(PU)=idx(PUabove)、かつ、ALWIPがPUaboveにALWIPモードpredmodeabove
ALWIPで適用される場合には、以下を置く。
modeabove
ALWIP=predmodeabove
ALWIP
上PUが利用可能であり、現在PUと同じCTUに属し、かつ、イントラモードにある場合、そして、従来のイントラ予測モードpredmodeabove
Angularが上PUに適用される場合には、以下を置く。
modeabove
ALWIP=map_angular_to_alwipidx(PUabove)[predmodeabove
Angular]
他の全ての場合においては、以下を置く。
modeabove
ALWIP=-1
それは、このモードが利用可能でないことを意味している。同様にして、しかし、左PUが現在PUと同じCTUに所属する必要があるという制約なしに、modeleft
ALWIPモードを導出する。
最終的に、3個の固定デフォルトリストlistidx,idx∈{0,1,2}が提供され、それぞれが3個の異なるALWIPモードを含んでいる。デフォルトリストlistidx(PU)、および、modeabove
ALWIPとmodeleft
ALWIPから、デフォルト値を-1に置き換え、かつ、繰り返しを省略することによって、3個の別個のMPMを構成する。
ルマMPMリストの導出では、ALWIPモードpremodeALWIPを使用する隣接ルマブロックに遭遇するときはいつでも、このブロックが、従来のイントラ予測モードpremodeAngularを使用しているかのように扱われる。
premodeAngular=map_alwip_to_angularidx(PU)[premodeALWIP]
3 VVCにおける変換
3.1 多重変換選択(MTS)
HEVCで使用されてきたDCT-IIに加えて、多重変換選択(Multiple Transform Selection、MTS)方式が、インターコーディングコード化ブロックおよびイントラコード化ブロック両方の残留コーディングについて使用される。DCT8/DST7から選択された複数の変換を使用する。新しく導入される変換行列は、DST-VIIおよびDCT-VIIIである。
3.1 多重変換選択(MTS)
HEVCで使用されてきたDCT-IIに加えて、多重変換選択(Multiple Transform Selection、MTS)方式が、インターコーディングコード化ブロックおよびイントラコード化ブロック両方の残留コーディングについて使用される。DCT8/DST7から選択された複数の変換を使用する。新しく導入される変換行列は、DST-VIIおよびDCT-VIIIである。
3.2 JVET-N0193で提案された縮小二次変換(RST)
縮小二次変換(reduced secondary transform、RST)は、4×4および8×8ブロックに対して、それぞれ、16×16および16×64非分離(non-separable)変換を適用する。一次(primary)順変換および逆変換は、なおも、2つの一次元水平/垂直変換パスと同じ方法で実行される。二次順変換および逆変換は、一次変換とは別のプロセスステップである。エンコーダに対しては、一次順変換が最初に実行され、次いで、二次順変換と量子化、およびCABACビットエンコーディングが続く。デコーダに対しては、CABACビットデコーディングおよび逆量子化、次いで、二次逆変換が最初に実行され、次に、一次逆変換が実行される。RSTは、イントラスライスおよびインタースライスの両方においてイントラコード化TUに対してのみ適用される。
縮小二次変換(reduced secondary transform、RST)は、4×4および8×8ブロックに対して、それぞれ、16×16および16×64非分離(non-separable)変換を適用する。一次(primary)順変換および逆変換は、なおも、2つの一次元水平/垂直変換パスと同じ方法で実行される。二次順変換および逆変換は、一次変換とは別のプロセスステップである。エンコーダに対しては、一次順変換が最初に実行され、次いで、二次順変換と量子化、およびCABACビットエンコーディングが続く。デコーダに対しては、CABACビットデコーディングおよび逆量子化、次いで、二次逆変換が最初に実行され、次に、一次逆変換が実行される。RSTは、イントラスライスおよびインタースライスの両方においてイントラコード化TUに対してのみ適用される。
3.3 JVET-N0185におけるイントラモードコーディングのための統一MPM
リスト多重基準線(MRL)およびイントラサブパーティション(ISP)コーディングツールが適用されるか否かに関係なく、イントラブロックに対して統一6MPMリストが提案されている。MPMリストは、VTM4.0のように、隣接するブロックの左および上のイントラモードに基づいて構築される。左のモードがLeftとして示され、かつ、上のブロックのモードがAboveとして示されるとすれば、統一MPMリスト(unified MPM list)は
以下のように構築される。
・ 隣接ブロックが利用可能でない場合、そのイントラモードがデフォルトでプラナー(Planar)に対して設定される。
・ LeftモードおよびAboveモードの両方が非角度(non-angular)モードである場合:
a. MPMリスト→{Planar,C,V,H,V-4,V+4}
・ LeftモードおよびAboveモードのうち一方が角度モードであり、かつ、他方が非角度モードである場合:
a. モードMaxをLeftおよびAbove内のより大きなモードとして設定する。
b. MPMリスト→{Planar,Max,DC,Max-1,Max+1,Max-2}
・ LeftモードおよびAboveモードの両方が角度モードであり、かつ、それらが異なる場合:
a. モードMaxをLeftおよびAbove内のより大きなモードとして設定する。
b. LeftモードとAboveモードの差異が2-62の範囲である場合、
i. MPMリスト→{Planar,Left,Above,DC,Max-1,Max+1}
c.それ以外の場合、
i. MPMリスト→{Planar,Left,Above,DC,Max-2,Max+2}
・ LeftモードおよびAboveモードの両方が角度モードであり、かつ、それらが同じである場合:
a. MPMリスト→{Planar,Left,Left-1,Left+1,DC,Left-2}
リスト多重基準線(MRL)およびイントラサブパーティション(ISP)コーディングツールが適用されるか否かに関係なく、イントラブロックに対して統一6MPMリストが提案されている。MPMリストは、VTM4.0のように、隣接するブロックの左および上のイントラモードに基づいて構築される。左のモードがLeftとして示され、かつ、上のブロックのモードがAboveとして示されるとすれば、統一MPMリスト(unified MPM list)は
以下のように構築される。
・ 隣接ブロックが利用可能でない場合、そのイントラモードがデフォルトでプラナー(Planar)に対して設定される。
・ LeftモードおよびAboveモードの両方が非角度(non-angular)モードである場合:
a. MPMリスト→{Planar,C,V,H,V-4,V+4}
・ LeftモードおよびAboveモードのうち一方が角度モードであり、かつ、他方が非角度モードである場合:
a. モードMaxをLeftおよびAbove内のより大きなモードとして設定する。
b. MPMリスト→{Planar,Max,DC,Max-1,Max+1,Max-2}
・ LeftモードおよびAboveモードの両方が角度モードであり、かつ、それらが異なる場合:
a. モードMaxをLeftおよびAbove内のより大きなモードとして設定する。
b. LeftモードとAboveモードの差異が2-62の範囲である場合、
i. MPMリスト→{Planar,Left,Above,DC,Max-1,Max+1}
c.それ以外の場合、
i. MPMリスト→{Planar,Left,Above,DC,Max-2,Max+2}
・ LeftモードおよびAboveモードの両方が角度モードであり、かつ、それらが同じである場合:
a. MPMリスト→{Planar,Left,Left-1,Left+1,DC,Left-2}
さらに、MPMインデックスコードワードの第1ビンは、CABACコンテキストコード化されている。合計3個のコンテキストが使用され、現在のイントラブロックがMRLイネーブルであるか、ISPイネーブルであるか、または、通常のイントラブロックであるかに対応している。
統一MPMリスト構成で使用される左隣接ブロックおよび上隣接ブロックは、図10で示されるようにA2およびB2である。
1つのMPMフラグが最初にコード化される。ブロックがMPMリスト内のモードのうちの1つでコード化されている場合、MPMインデックスが、さらにコード化される。そうでなければ、残りのモードのインデックス(MPMを除く)がコード化される。
4 既存の実装における欠点の例
JVET-N0217におけるALWIPの設計は、以下の問題を有している。
JVET-N0217におけるALWIPの設計は、以下の問題を有している。
1)2019年3月のJVETミーティングでは、MRLモード、ISPモード、通常のイントラモードについて、統一6MPMリスト(unified 6-MPM list)生成が採用された。しかし、アフィン線形加重予測モードは、異なる3MPMリスト構成を使用し、MPMリスト構成を複雑にしている。複雑なMPMリスト構成は、特に4×4サンプルといった小さなブロックについて、デコーダのスループットを妥協することがある。
2)ALWIPは、ブロックのルマコンポーネントにのみ適用される。ALWPコード化ブロックのクロマ成分については、クロマモードインデックスがコード化され、そして、デコーダに送信される。これは、不必要な信号化を生じ得る。
3)ALWIPと他のコーディングツールとの相互作用が考慮されるべきである。
4)upsBdryXを以下のように計算する場合、
upsBdryX[x]=(
+(1<<(Log2(uDwn)-1)))>>Log2(uDwn) (8-X31)
Log2(uDwn)-1が-1に等しく、かつ、-1の左シフトが定義されていない可能性がある。
upsBdryX[x]=(
Log2(uDwn)-1が-1に等しく、かつ、-1の左シフトが定義されていない可能性がある。
5) 予測サンプルをアップサンプリングする場合に、丸め(rounding)は適用されない。
6)デブロッキングプロセスにおいて、ALWIPコード化ブロックは、通常のイントラブロックとして扱われる。
5 マトリクスベースのイントラコーディングのための例示的な方法
本開示の技術の実施形態は、既存の実施形態の欠点を克服し、それにより、より高い符号化効率を有するが、計算量はより少ない、ビデオコーディングを提供する。ビデオコーディングのためのマトリクスベースのイントラ予測法は、本文書で説明されるように、既存および将来のビデオコーディング規格の両方を向上させる可能性があり、種々の実装について説明されている以下の実施例において解明されている。以下に提供される、開示される技術の例は、一般的な概念を説明するものであり、限定的なものとして解釈されることを意図するものではない。一つの例においては、明示的に反対に示されない限り、これらの実施例に説明される種々の特徴を組み合わせることができる。
本開示の技術の実施形態は、既存の実施形態の欠点を克服し、それにより、より高い符号化効率を有するが、計算量はより少ない、ビデオコーディングを提供する。ビデオコーディングのためのマトリクスベースのイントラ予測法は、本文書で説明されるように、既存および将来のビデオコーディング規格の両方を向上させる可能性があり、種々の実装について説明されている以下の実施例において解明されている。以下に提供される、開示される技術の例は、一般的な概念を説明するものであり、限定的なものとして解釈されることを意図するものではない。一つの例においては、明示的に反対に示されない限り、これらの実施例に説明される種々の特徴を組み合わせることができる。
以下の説明において、イントラ予測モードは、角度イントラ予測モード(DC、プラナー、CCLM、および、他の可能なイントラ予測モードを含む)を指し、そして、イントラモードは、通常(normal)のイントラモード、またはMRL、もしくは、ISPまたはALWIPを指す。
以下の説明において、「他のイントラモード(“other intra modes”)」とは、通常のイントラモード、またはMRL、もしくはISPといった、ALWIP以外の1つまたは複数のイントラモードを指す。
以下の説明において、SatShift(x,n)は以下のように定義される。
Shift(x,n)は、Shift(x,n)=(x+offset0)>>nとして定義される。
一つの例において、offset0及び/又はoffset1は、(1<<n)>>1または(1<<(n-1))に設定される。別の例において、offset0及び/又はoffset1は、0に設定される。
別の例においては、offset0=offset1=((1<n)>>1)-1または(1<(n-1))-1である。
ALWIPのMPMリスト構成
1. ALWIP用のMPMリストの全部または一部は、非ALWIPイントラモード(通常イントラモード、MRL、ISPなど)用のMPMリストを構築するために、全部または一部の手順に従って構築することが提案されている。
a. 一つの例において、ALWIP用のMPMリストのサイズは、非ALWIPイントラモードのMPMリストのサイズと同じにすることができる。
i. 例えば、ALWIPモードと非ALWIPイントラモードの両方で、MPMリストのサイズは6である。
b. 一つの例において、ALWIPのためのMPMリストは、非ALWIPイントラモードに対するMPMリストから導出することができる。
i. 一つの例において、非ALWIPイントラモードに対するMPMリストを最初に構築することができる。その後、それらの一部または全部をMPMに変換することができ、これをさらにALWIPコード化ブロックのMPMリストに追加することができる。
1) 代わりに、また、ALWIPコード化ブロックのMPMリストに変換したMPMを追加する場合には、剪定を適用してもよい。
2) デフォルトモードは、ALWIPコード化ブロックのMPMリストに追加することができる。
a.一つの例において、デフォルトモードを、非ALWIPイントラモードのMPMリストから変換される前に追加することができる。
b.代わりに、非ALWIPイントラモードのMPMリストから変換した後にデフォルトモードを追加することもできる。
c.代わりに、デフォルトモードを、非ALWIPイントラモードのMPMリストから変換されたモードとインターリーブ方式で追加することもできる。
d.一つの例において、デフォルトモードは、全ての種類のブロックに対して同一であるように固定することができる。
e.代わりに、デフォルトモードは、隣接ブロックの利用可能性、隣接ブロックのモード情報、ブロック寸法(dimension)のようなコード化情報に従って決定されてもよい。
ii. 一つの例において、非ALWIPイントラモードのMPMリストの1つのイントラ予測モードは、それがALWIPのMPMリストに入れられるときに、対応するALWIPイントラ予測モードに変換され得る。
1) 代わりに、非ALWIPイントラモードのMPMリストの全てのイントラ予測モードは、ALWIPのMPMリストを構築するために使用される前に、対応するALWIPイントラ予測モードに変換されてもよい。
2) 代わりに、全ての候補イントラ予測モード(隣接ブロックからのイントラ予測モードおよびプラナーおよびDCなどのデフォルトイントラ予測モードを含むことができる)は、非ALWIPイントラモードのMPMリストを構築するために使用される前に、非ALWIPイントラモードのMPMリストをさらにALWIPのMPMリストを導出するために使用することができるならば、対応するALWIPイントラ予測モードに変換することができる。
3) 一つの例において、2つの変換されたALWIPイントラ予測モードを比較することができる。
a.ある例では、それらが同じであれば、ALWIPのMPMリストに入れられるのはそれらのうちの1つだけである。
b.ある例では、それらが同じであれば、ALWIP以外のイントラモードでは、そのうちの1つだけをMPMリストに入れることができる。
iii. 一つの例において、非ALWIPイントラモードのMPMリストのSイントラ予測モードのうちのKを、ALWIPモードのMPMリストとして選択することができる。例えば、Kは3に等しく、Sは6に等しい。
1) 一つの例において、非ALWIPイントラモードに対するMPMリストの最初のKイントラ予測モードが、ALWIPモードに対するMPMリストとして選択され得る。
2. ALWIPのためのMPMリストを導出するために使用される1つまたは複数の隣接ブロックが、非ALWIPイントラモード(通常イントラモード、MRL、またはISPなど)のためのMPMリストを導出するために使用され得ることが提案される。
a. 一つの例において、ALWIPのMPMリストを導出するために使用される現在ブロックに残された隣接ブロックは、非ALWIPイントラモードのMPMリストを導出するために使用されるものと同じであるべきである。
i. 現在ブロックの左上隅が(xCb,yCb)で、現在ブロックの幅と高さがWとHであると仮定すると、一つの例において、ALWIPと非ALWIPイントラモードの両方のMPMリストを導出するために使用される左隣接ブロックが位置をカバーすることができる(xCb-1,yCb)。別の例では、ALWIPモードと非ALWIPイントラモードの両方のMPMリストを導出するために使用される左隣接ブロックが、位置(xCb-1、yCb+H-1)をカバーし得る。
ii. 例えば、統一されたMPMリスト構成で使用される左隣接ブロック及び上隣接ブロックは、図10に示されるようにA2及びB2である。
b. 一つの例において、ALWIPのMPMリストを導出するために使用される現在ブロックの上の隣接ブロックは、非ALWIPイントラモードのMPMリストを導出するために使用されるものと同じであるべきである。
i. 現在ブロックの左上隅が(xCb,yCb)で、現在ブロックの幅と高さがWとHであると仮定すると、一つの例では、ALWIPと非ALWIPイントラモードの両方のMPMリストを導出するために使用される上記の隣接するブロックが位置をカバーする可能性がある(xCb,yCb-1)。別の例では、ALWIPモードと非ALWIPイントラモードの両方のMPMリストを導出するために使用される上記の隣接ブロックは、位置(xCb+W-1、yCb-1)をカバーしてもよい。
ii. 例えば、統一されたMPMリスト構成で使用される左隣接ブロック及び上隣接ブロックは、図10に示されるようにA1及びB1である。
3. ALWIPのためのMPMリストは、現在ブロックの幅及び/又は高さに応じて異なる方法で構築できることを提案する。
a. 一つの例において、異なるブロック寸法のために異なる隣接ブロックにアクセスすることができる。
4. ALWIPのためのMPMリストと非ALWIPイントラモードに対するMPMリストは、同じ手順で構成できるが、異なるパラメータで構成できることを提案する。
a. 一つの例において、非ALWIPイントラモードのMPMリスト構築手順におけるSイントラ予測モードのうちKを、ALWIPモードで使用されるMPMリストに対して導出することができる。例えば、Kは3に等しく、Sは6に等しい。
i. 一つの例において、MPMリスト構築手順における最初のKイントラ予測モードは、ALWIPモードで使用されるMPMリストに対して導出することができる。
b. 一つの例において、MPMリストの最初のモードは異なる場合がある。
i. 例えば、非ALWIPイントラモードのMPMリストの最初のモードはプラナーかもしれないが、ALWIPのMPMリストのモードX0かもしれない。
1) 一つの例において、X0は、Planarから変換されたALWIPイントラ予測モードであってもよい。
c. 一つの例において、MPMリスト内のスタッフィングモードが異なる可能性がある。
i. 例えば、非ALWIPイントラモードのMPMリストの最初の3つのスタッフィングモードは、DC、VerticalおよびHorizontalであってもよいが、ALWIPのMPMリストのMode X1、X2、X3であってもよい。
1) 一つの例において、X1、X2、X3は、異なるサイズIdに対して異なる場合がある。
ii. 一つの例において、スタッフィングモードの数は異なる場合がある。
d. 一つの例において、MPMリスト内の隣接モードが異なる可能性がある。
i. 例えば、隣接ブロックの通常のイントラ予測モードは、非ALWIPイントラモードに対するMPMリストを構築するために使用される。そして、それらをALWIPイントラ予測モードに変換し、ALWIPモードに対するMPMリストを構築する。
e. 一つの例において、MPMリスト内のシフトされたモードは異なる場合がある。
i. 例えば、Xが通常のイントラ予測モードであり、K0が整数であるX+K0は、非ALWIPイントラモードのためにMPMリストに入れることができる。また、YがALWIPイントラ予測モード、K1が整数であるY+K1は、ALWIP用のMPMリストに入れることができる。K0はK1とは異なる場合がある。
1) 一つの例において、K1は幅および高さに依存し得る。
5. 非ALWIPイントラモードで現在ブロックのMPMリストを構築する際に、隣接ブロックがALWIPでコード化されている場合、隣接ブロックは利用不可として扱われることを提案する。
a. 代わりに、隣接するブロックが、非ALWIPイントラモードで現在ブロックのMPMリストを構築する際に、ALWIPでコード化されている場合、予め定義されたイントラ予測モード(例えば、Planar)でコード化されているとして扱われる。
6. ALWIPモードで現在ブロックのMPMリストを構成する際に、隣接ブロックが非ALWIPイントラモードでコード化されている場合、隣接ブロックは利用不可として扱われることを提案する。
a. 代わりに、隣接するブロックが、ALWIPモードで現在ブロックのMPMリストを構成する際に、非ALWIPイントラモードでコード化されている場合、予め定義されたALWIPイントラ予測モードXでコード化されているものとして扱われる。
i. 一つの例において、Xは、幅及び/又は高さのようなブロック寸法に依存し得る。
7. ラインバッファからALWIPフラグの保管を削除することを提案した。
a. 一つの例において、アクセスされるべき2番目のブロックが現在ブロックとは異なるLCU/CTU行/領域にある場合、2番目のブロックがALWIPでコード化されているか否かの条件付きチェックはスキップされる。
b. 一つの例において、アクセスされるべき2番目のブロックが現在ブロックとは異なるLCU/CTU行/領域に位置する場合、2番目のブロックは、通常のイントラコード化ブロックとして扱われるように、非ALWIPモードと同様に扱われる。
8. ALWIPフラグをエンコーディングする時、K(K>=0)コンテキスト以下が使われ得る。
a. 一つの例において、K=1である。
9. ALWIPモードに関連したモードインデックスを直接保管する代わりに、ALWIPコード化ブロックの変換されたイントラ予測モードを保管することを提案した。
a. 一つの例において、1つのALWIPコード化ブロックに関連するデコーディングされたモードインデックスは、通常のイントラモードにマッピングされる。セクション2.5.7に記述されるように、map_alwip_to_angularに従う、といったものである。
b. 代わりに、さらに、ALWIPフラグの保管は、完全に除去される。
c. 代わりに、さらに、ALWIPモードの保管は、完全に除去される。
d. 代わりに、さらに、隣接/現在ブロックの一つがALWIPフラグでコード化されているかの状態チェックを省略してもよい。
e. 代わりに、さらに、ALWIPコード化ブロックに割り当てられたモードの変換および1つのアクセスされたブロックに関連する通常のイントラ予測をスキップしてもよい。
異なるカラー成分におけるALWIP
10. もし対応するルマブロックがALWIPモードでコード化されるなら、推定クロマイントラモード(例えば、DMモード)が常に適用され得ることが提案される。
a. 一つの例において、クロマイントラモードは、対応するルマブロックがALWIPモードでコード化されている場合、信号なしのDMモードであると推測される。
b. 一つの例において、対応するルマブロックは、所与の位置に位置するクロマ・サンプルの対応するサンプル(例えば、現在のクロマブロックの左上、現在のクロマブロックの中心)をカバーするものであってもよい。
c. 一つの例において、DMモードは、例えば(ALWIP)モードを通常のイントラモードの1つにマッピングすることによって、対応するルマブロックのイントラ予測モードに従って導出することができる。
11. クロマブロックの対応するルマブロックがALWIPモードでコード化される場合、いくつかのDMモードが導出され得る。
12. 1つの対応するルマブロックがALWIPモードでコード化される場合、特殊モードがクロマブロックに割り当てられることを提案した。
a. 一つの例において、特殊モードは、ALWIPコード化ブロックに関連するイントラ予測モードにかかわらず、所与のノーマルイントラ予測モードであると定義される。
b. 一つの例において、この特殊なモードに異なる方法でイントラ予測を割り当てることができる。
13. ALWIPをクロマ成分にも適用できることを提案した。
a. 一つの例において、マトリクス及び/又はバイアスベクトルは、異なる色成分に対して異なる場合がある。
b. 一実施形態では、行列及び/又はバイアスベクトルは、CbおよびCrに対して一緒に定義されてもよい。
i. 一つの例において、CbおよびCr成分を連結することができる。
ii. 一つの例において、CbおよびCr成分がインターリーブされてもよい。
c. 一つの例において、クロマ成分は、対応するルマブロックと同じALWIPイントラ予測モードを共有することができる。
i. 一つの例において、対応するルマブロックがALWIPモードを適用し、クロマブロックがDMモードでコード化されている場合、同じALWIPイントラ予測モードがクロマ・コンポーネントに適用される。
ii. 一つの例において、同じALWIPイントラ予測モードがクロマ成分に適用され、その後の線形補間をスキップすることができる。
iii. 一つの例において、同じALWIPイントラ予測モードが、サブサンプリングされた行列及び/又はバイアスベクトルを有するクロマ成分に適用される。
d. 一つの例において、異なるコンポーネントに対するALWIPイントラ予測モードの数が異なる可能性がある。
i. 例えば、クロマコンポーネントのALWIPイントラ予測モードの数は、同じブロック幅と高さのルマコンポーネントの数よりも少ない場合がある。
ALWIPの適用性
14. ALWIPを適用できるか否かを信号化することを提案した。
a. 例えば、シーケンスレベル(例えば、SPSにおけるもの)、画像レベル(例えば、PPSまたは画像ヘッダにおけるもの)、スライスレベル(例えば、スライスヘッダにおけるもの)、タイルグループレベル(例えば、タイルグループヘッダにおけるもの)、タイルレベル、CTU行レベル、またはCTUレベルで信号化することができる。
b. 例えば、もしALWIPが適用できなければ、intra_lwip_flagは信号化されず、0であると推測され得る。
15. ALWIPを適用できるか否かは、ブロック幅(W)及び/又は高さ(H)に依存することが提案される。
c. 例えば、W>=T1(またはW>T1)かつH>=T2(またはH>T2)の場合は、ALWIPを適用しないことがある。例:T1=T2=32;
i. 例えば、W<=T1(またはW<T1)かつH<=T2(またはH<T2)の場合、ALWIPは適用されない可能性がある。例:T1=T2=32;
d. 例えば、W>=T1(またはW>T1)またはH>=T2(またはH>T2)の場合は、ALWIPを適用しないことがある。例:T1=T2=32;
i. 例えば、W<=T1(またはW<T1)またはH<=T2(またはH< T2)の場合、ALWIPは適用されない可能性がある。例:T1=T2=32;
e. 例えば、W+H>=T(またはW*H>T)の場合、ALWIPは適用されない。例えば、T=256;
i. 例えば、W+H<=T(またはW+H<T)の場合、ALWIPは適用されない。例えば、T=256;
f. 例えば、W*H>=T(またはW*H>T)の場合、ALWIPは適用されない。例えば、T=256;
i. 例えば、W*H<=T(またはW*H<T)の場合、ALWIPは適用されない。例えば、T=256;
g. 例えば、もしALWIPが適用できなければ、intra_lwip_flagは信号化されず、0であると推測され得る。
ALWIPにおける計算上の問題
16. ALWIPに関与するシフト演算は、Sが0より大きいか等しくなければならない場合、Sによる数の左シフトまたは右シフトのみが可能であることが提案される。
a. 一つの例において、Sが0または0より大きい場合、右シフト動作は異なる場合がある。
i. ある例では、upsBdryX[x]は次のように計算される。
uDwn>1の場合、
upsBdryX[x]=(
+(1<<(Log2(uDwn)-1)))>>Log2(uDwn) 、かつ、
uDwnが1に等しい場合、
upsBdryX[x]=
b. ある例では、upsBdryX[x]は次のように計算される。
upsBdryX[x]=(
+(1<<(Log2(uDwn)>>1))>>Log2(uDwn)
17. 結果は、ALWIPのアップサンプリング過程においてゼロに近づくかゼロから離れるように丸められるべきであることが提案される。
a. 一つの例において、
predSamples[xHor+dX][yHor]=((upHor-dX)*predSamples[xHor][yHor]+dX*predSamples[xHor+upHor][yHor]+offsetHor)/upHor (8-X39)、
かつ、
predSamples[xVer][yVer+dY]=((upVer-dY)*predSamples[xVer][yVer]+dY*predSamples[xVer][yVer+upVer]+offsetVer)/upVer (8-X40)、
ここで、offsetHorとoffsetVerは整数である。例えば、offsetHor=upHor/2、かつ、offsetVer=upVer/2である。
他のコードディングツールとの相互作用
18. ALWIPはCIIPコード化ブロックに使用できることを提案した。
a. 一つの例において、CIIPコード化ブロックにおいては、ALWIPイントラ予測モードまたはプラナーのような通常イントラ予測モードがイントラ予測信号を生成するために使用されるか否かを明示的に信号化することができる。
b. 一つの例において、ALWIPイントラ予測モードまたはプラナーなどの通常イントラ予測モードを使用してイントラ予測信号を生成することができるか否かを暗黙のうちに推定することができる。
i. 一つの例において、ALWIPイントラ予測モードは、CIIPコード化ブロックでは使用されない可能性がある。
1) 代わりに、CIIPコード化ブロックでは、通常のイントラ予測を使用することはできない。
ii. 一つの例において、隣接ブロックの情報から、ALWIPイントラ予測モードまたはプラナーのような通常イントラ予測モードがイントラ予測信号を生成するために使用されるか否かを推測することができる。
19. CCLMモードで隣接するルマサンプルをダウンサンプリングするために使用される手順の全部または一部が、ALWIPモードで隣接サンプルをダウンサンプリングするために使用され得ることが提案される。
a. 代わりに、ALWIPモードで隣接するルマサンプルをダウンサンプリングするために使用される手順の全部または一部が、CCLMモードで隣接サンプルをダウンサンプリングするために使用されてもよい。
b. ダウンサンプリング手順は、CCLMプロセスおよびALWIPプロセスで使用される場合、異なるパラメータ/引数で呼び出される。
c. 一つの例において、CCLMプロセスにおけるダウンサンプリング方法(隣接するルマ位置の選択、ダウンサンプリングフィルタなど)は、ALWIPプロセスにおいて利用され得る。
d. 隣接するルマサンプルをダウンサンプリングする手順には、少なくともダウンサンプリング位置の選択、ダウンサンプリングフィルタ、丸め、クリッピング操作が含まれる。
20. ALWIPモードでコード化されたブロックは、RST及び/又は二次変換及び/又は回転変換及び/又は非分離二次変換(NSST)を適用できないことを提案する。
a. 一つの例において、そのような制約が適用され得るか否かは、例えば、(15)に記載される条件と同じように、ブロックの寸法情報に依存し得る。
b. 代わりに、RST及び/又は二次変換及び/又は回転変換及び/又はNSSTが適用される場合、ALWIPモードは許可されない。
c. 代わりに、ALWIPモードでコード化されたブロックは、RST及び/又は二次変換及び/又は回転変換及び/又は非分離二次変換(NSST)を適用することができる。
i. 一つの例において、変換行列の選択は、ALWIPイントラ予測モードに依存し得る。
ii. 一つの例において、変換行列の選択は、ALWIPイントラ予測モードから変換される正規イントラ予測モードに依存し得る。
iii. 一つの例において、変換行列の選択は、ALWIPイントラ予測モードから変換される正規イントラ予測モードに基づいて分類することができる。
21. ALWIPモードでコード化されたブロックは、ブロックベースDPCM(BDPCM)または残留RDPCMを適用できないことを提案する。
a. 代わりに、BDPCMまたはRDPCMが適用されている場合は、ALWIPモードは許可されない場合がある。
22. ALWIPモードでコード化されたブロックは変換としてDCT-IIのみを使用することができると提案した。
a. 一つの例において、変換行列インデックスの信号化は常にスキップされる。
b. 代わりに、ALWIPモードでコード化されたブロックに使用される変換は、明示的に信号化されるのではなく、暗黙的に導出される可能性があることが提案される。例えば、変換は、JVET-M0303で提案された方法に従って選択されてもよい。
c. 代わりに、ALWIPモードでコード化されたブロックは変換スキップのみを使用できることが提案されている。
i. また、ALWIPを使用した場合、変換スキップの使用を示している信号はスキップされる。
d. 一つの例において、ALWIPモード情報(有効/無効、予測モードインデックスなど)は、変換マトリクスの表示後に条件付きで信号化することができる。
i. 一つの例において、所与の変換マトリクス(例えば、変換スキップまたはDCT-II)に対して、ALWIPモード情報の表示は、信号化されてもよい。
ii. 代わりに、さらに、ALWIPモード情報の指示は、いくつかの予め定義された変換行列に対してスキップされてもよい。
23. ALWIPモードでコード化されたブロックは、選択された変換がモードに依存するとき、ALWIP内予測モードから変換された正規内予測でコード化されると考えられる。
24. ALWIPモードでは、変換スキップは使用できない。
a. 例えば、この場合、変換スキップの使用の指示をさらにシグナルする必要はない。
b. 代わりに、変換スキップを適用した場合、ALWIPモードを使用できない場合がある。
i. 例えば、この場合、変換スキップが適用される場合、ALWIPモード情報をシグナルする必要はない。
25. デブロックフィルタ、サンプル適応オフセット(SAO)、適応ループフィルタ(ALF)、フィルタの選択方法及び/又はサンプルをフィルタするか否かは、ALWIPの使用により決定され得る。
26. ALWIPモードでは、フィルタリングされていない隣接サンプルを使用することができる。
a. 代わりに、フィルタリングされた隣接サンプルがALWIPモードで使用されてもよい。
b. 一つの例において、フィルタリングされた隣接サンプルをダウンサンプリングのために使用してもよく、フィルタリングされていない隣接サンプルをアップサンプリングのために使用してもよい。
c. 一つの例において、フィルタ処理されていない隣接サンプルをダウンサンプリングに使用し、フィルタ処理された隣接サンプルをアップサンプリングに使用することができる。
d. 一実施形態では、フィルタリングされた左隣接サンプルを上方サンプリングに使用し、フィルタリングされていない隣接サンプルを上方サンプリングに使用することができる。
e. 一実施形態では、フィルタリングされていない左隣接サンプルを上方サンプリングに使用し、上隣接サンプルをフィルタリングしたものを上方サンプリングに使用することができる。
f. 一つの例において、フィルタを使用するか、フィルタを使用しない隣接サンプルを使用するかは、ALWIPモードに依存し得る。
i. 一つの例において、ALWIPモードは、従来のイントラ予測モードに変換されてもよく、フィルタリングされたまたはフィルタリングされていない隣接サンプルが使用されるか否かは、変換された従来のイントラ予測モードに依存してもよい。例えば、このような決定は従来のなイントラ予測モードと同じである。
ii. 代わりに、フィルタを使用するか、フィルタを使用しない隣接サンプルをALWIPモードに使用するかを信号で送ってもよい。
g. 一つの例において、フィルタリングされたサンプルは、従来のイントラ予測モードと同じように生成されてもよい。
27. どの行列及び/又はオフセットベクトルが使用されるかは、再形成(別名:LMCS、クロマスケーリングを用いたルママッピング(luma mapping with chroma scaling))情報に依存する可能性がある。
a. 一つの例において、再形成がオンおよびオフのときに、異なるマトリクス及び/又はオフセットベクトルが使用されてもよい。
b. 一つの例において、異なるマトリクスまたはオフセットベクトルが、異なる再形成パラメータのために使用されてもよい。
c. 一つの例において、ALWIPは、常にオリジナルのドメインで実行されてもよい。
i. 例えば、隣接サンプルは、ALWIPで使用される前に、元のドメイン(再形成が適用される場合)にマッピングされる。
28. ALWIPは、再成形が適用されると無効になる場合がある。
a. 代わりに、ALWIPを有効にすると、再成形が無効になる場合がある。
b. 一つの例において、ALWIPは、再形成が適用されるときにHDR(高ダイナミックレンジ)コンテンツに対して無効にされる可能性がある。
29. ALWIPで使用される行列は、サンプルのビット深度に依存する可能性がある。
a. 代わりに、さらに、ALWIPで使用されるオフセット値は、サンプルのビット深度に依存し得る。
b. 代わりに、行列パラメータおよびオフセット値は、Nビットサンプル(M<=N)に対してMビット精度で保管することができ、例えば、行列パラメータおよびオフセット値は、10ビットサンプルに対して8ビット精度で保管することができる。
c. サンプルのビット深さは、ルマのような色成分のための入力アレイのビット深さであってもよい。
d. サンプルビット深さは、ルマのような色成分のための内部アレイ/再構成されたサンプルのビット深さであってもよい。
30. 指定されたブロックサイズに対するマトリクスパラメータ及び/又はオフセット値は、マトリクスパラメータ及び/又は他のブロックサイズに対するオフセット値から導出されてもよい。
31. 一つの例において、8×8ブロックの16×8行列は、4×4ブロックの16×4行列から導出することができる。
32. ALWIPによって生成された予測は、さらに使用される予測信号を得るために処理される中間信号として扱うことができることを提案した。
a. 一つの例において、位置依存イントラ予測組み合わせは、ALWIPによって生成された予測に適用され、さらに使用される予測信号を生成することができる。
i. 一つの例において、PDPCは、ALWIPコード化ブロック上で、ブロックがプラナーまたはDCのような特定の通常のイントラ予測モードでコード化されるのと同じ方法で実行される。
ii. 一つの例において、PDPCは、ALWIPイントラ予測モードから変換される通常イントラ予測モードでコード化されるブロックと同様に、ALWIPコード化ブロック上で実行される。
iii. 一つの例において、PDPCは、条件付きでALWIPコード化ブロックに適用される。
1) 例えば、ALWIPイントラ予測モードから変換された通常のイントラ予測モードでPDPCを適用した場合にのみ、ALWIPコード化ブロックにPDPCが適用される。
b. 一つの例において、ALWIPによって生成された境界サンプル予測は、隣接サンプルでフィルタリングされて、さらに使用されるべき予測信号を生成することができる。
i. 一つの例において、境界サンプル上のフィルタリングは、ALWIPコード化ブロックがプラナーまたはDCのような特定の通常のイントラ予測モードでコード化されるのと同じ方法で、ALWIPコード化ブロック上で実行される。
ii. 一つの例において、境界サンプル上のフィルタリングは、ALWIPイントラ予測モードから変換された通常イントラ予測モードでコード化されたブロックと同じ方法で、ALWIPコード化ブロック上で実行される。
iii. 一つの例において、境界サンプル上のフィルタリングは、条件付きでALWIPコード化ブロック上に適用される。
1) 例えば、境界サンプル上のフィルタリングが、ALWIPイントラ予測モードから変換された通常のイントラ予測モードに適用されるときにのみ、境界サンプル上のフィルタリングがALWIPコード化ブロックに適用される。
33. バイリニア補間フィルタ以外の補間フィルタをALWIPのアップサンプリングプロセスで使用できることを提案した。
a. 一つの例において、4タップ補間フィルタは、ALWIPのアップサンプリングプロセスにおいて使用され得る。
i. 例えば、クロマ成分の運動補償を行うために使用されるVVCの4タップ補間フィルタは、ALWIPのアップサンプリングプロセスにおいて使用され得る。
ii. 例えば、角度イントラ予測を行うために使用されるVVCの4タップ補間フィルタは、ALWIPのアップサンプリングプロセスにおいて使用され得る。
iii. 例えば、ルマコンポーネントの動作補正を行うために使用されるVVCの8タップ補間フィルタは、ALWIPのアップサンプリングプロセスで使用され得る。
34. ALWIPモードでコード化されたブロック内のサンプルは、異なる方法で予測され得る。
a. 一つの例において、W*Hブロックに対して、それにsW*sH ALWIPを適用することによって、その中のsW*sHサブブロックの予測を生成することができる。
i. 一つの例において、W*Hブロックに対して、その左上のW/2*H/2ブロックの予測は、それにW/2*H/2 ALWIPを適用することによって生成され得る。
ii. 一つの例において、W*Hブロックに対して、その左W/2*Hブロックの予測は、それにW/2*H ALWIPを適用することによって生成され得る。
iii. 一つの例において、W*Hブロックに対して、その上部W*H/2ブロックの予測は、W*H/2 ALWIPをそれに適用することによって生成され得る。
iv. 一つの例において、sW*sHサブブロックは、左及び/又は上の隣接サンプルを利用可能であってもよい。
b. 一つの例において、サブブロックの位置を決定する方法は、ブロックの寸法に依存し得る。
i. 例えば、W≧Hの場合、W/2*H ALWIPを適用することにより、その左側W/2*Hブロックの予測を生成することができる。
ii. 例えば、H≧Wの場合、W*H/2 ALWIPを適用することによって、その上部W*H/2ブロックの予測を生成することができる。
iii. 例えば、WがHに等しい場合、W/2*H/2 ALWIPを適用することにより、その左上のW/2*H/2ブロックの予測を生成することができる。
c. さらに、一つの例において、W*H ALWIPを適用することによって、残りのサンプル(例えば、サンプルがsW*sHサブブロックに属していない)の予測を生成することができる。
i. 代わりに、残りのサンプルの予測は、従来のイントラ予測(例えば、イントラモードとして変換されたイントラ予測モードを使用する)を適用することによって生成されてもよい。
ii. さらに、sW*sHサブブロック内のサンプルについて計算をスキップしてもよい。
35. ALWIPモードでコード化されたブロック内のサンプルは、サブブロック(例えば、サイズsW*sH)レベルで予測され得る。
a. 一つの例において、sW*sH ALWIPは、隣接する再構成されたサンプル(例えば、境界サブブロックについて)または隣接する予測サンプル(例えば、内部サブブロックについて)を使用して各サブブロックに適用され得る。
b. 一つの例において、サブブロックは、ラスタ走査順序で予測されてもよい。
c. 一つの例において、サブブロックは、ジグザグ順に予測されてもよい。
d. 一つの例において、サブブロックの幅(高さ)は、sWMax(sHMax)以下であってもよい。
e. 一つの例において、幅または高さのいずれか、または幅および高さの両方を有するブロックが、閾値Lよりも大きい(または、等しい)場合、そのブロックは、複数のサブブロックに分割され得る。
f. 閾値Lは、SPS/PPS/ピクチャ/スライス/タイルグループ/タイルレベルで予め定義されていてもよいし、信号化されていてもよい。
i. 代わりに、閾値は、ブロックサイズ、画像タイプ、時間層インデックス等の特定のコード化情報に依存し得る。
36. 隣接サンプル(隣接または非隣接)は、ALWIPで使用される前にフィルタリングされることが提案されている。
a. 代わりに、隣接サンプルは、ALWIPで使用される前にフィルタリングされない。
b. 代わりに、隣接サンプルは、ALWIPで使用される前に条件的にフィルタリングされる。
i. 例えば、隣接サンプルは、ALWIP内予測モードが1つまたはいくつかの特定の値に等しい場合にのみ、ALWIPで使用される前にフィルタリングされる。
1. ALWIP用のMPMリストの全部または一部は、非ALWIPイントラモード(通常イントラモード、MRL、ISPなど)用のMPMリストを構築するために、全部または一部の手順に従って構築することが提案されている。
a. 一つの例において、ALWIP用のMPMリストのサイズは、非ALWIPイントラモードのMPMリストのサイズと同じにすることができる。
i. 例えば、ALWIPモードと非ALWIPイントラモードの両方で、MPMリストのサイズは6である。
b. 一つの例において、ALWIPのためのMPMリストは、非ALWIPイントラモードに対するMPMリストから導出することができる。
i. 一つの例において、非ALWIPイントラモードに対するMPMリストを最初に構築することができる。その後、それらの一部または全部をMPMに変換することができ、これをさらにALWIPコード化ブロックのMPMリストに追加することができる。
1) 代わりに、また、ALWIPコード化ブロックのMPMリストに変換したMPMを追加する場合には、剪定を適用してもよい。
2) デフォルトモードは、ALWIPコード化ブロックのMPMリストに追加することができる。
a.一つの例において、デフォルトモードを、非ALWIPイントラモードのMPMリストから変換される前に追加することができる。
b.代わりに、非ALWIPイントラモードのMPMリストから変換した後にデフォルトモードを追加することもできる。
c.代わりに、デフォルトモードを、非ALWIPイントラモードのMPMリストから変換されたモードとインターリーブ方式で追加することもできる。
d.一つの例において、デフォルトモードは、全ての種類のブロックに対して同一であるように固定することができる。
e.代わりに、デフォルトモードは、隣接ブロックの利用可能性、隣接ブロックのモード情報、ブロック寸法(dimension)のようなコード化情報に従って決定されてもよい。
ii. 一つの例において、非ALWIPイントラモードのMPMリストの1つのイントラ予測モードは、それがALWIPのMPMリストに入れられるときに、対応するALWIPイントラ予測モードに変換され得る。
1) 代わりに、非ALWIPイントラモードのMPMリストの全てのイントラ予測モードは、ALWIPのMPMリストを構築するために使用される前に、対応するALWIPイントラ予測モードに変換されてもよい。
2) 代わりに、全ての候補イントラ予測モード(隣接ブロックからのイントラ予測モードおよびプラナーおよびDCなどのデフォルトイントラ予測モードを含むことができる)は、非ALWIPイントラモードのMPMリストを構築するために使用される前に、非ALWIPイントラモードのMPMリストをさらにALWIPのMPMリストを導出するために使用することができるならば、対応するALWIPイントラ予測モードに変換することができる。
3) 一つの例において、2つの変換されたALWIPイントラ予測モードを比較することができる。
a.ある例では、それらが同じであれば、ALWIPのMPMリストに入れられるのはそれらのうちの1つだけである。
b.ある例では、それらが同じであれば、ALWIP以外のイントラモードでは、そのうちの1つだけをMPMリストに入れることができる。
iii. 一つの例において、非ALWIPイントラモードのMPMリストのSイントラ予測モードのうちのKを、ALWIPモードのMPMリストとして選択することができる。例えば、Kは3に等しく、Sは6に等しい。
1) 一つの例において、非ALWIPイントラモードに対するMPMリストの最初のKイントラ予測モードが、ALWIPモードに対するMPMリストとして選択され得る。
2. ALWIPのためのMPMリストを導出するために使用される1つまたは複数の隣接ブロックが、非ALWIPイントラモード(通常イントラモード、MRL、またはISPなど)のためのMPMリストを導出するために使用され得ることが提案される。
a. 一つの例において、ALWIPのMPMリストを導出するために使用される現在ブロックに残された隣接ブロックは、非ALWIPイントラモードのMPMリストを導出するために使用されるものと同じであるべきである。
i. 現在ブロックの左上隅が(xCb,yCb)で、現在ブロックの幅と高さがWとHであると仮定すると、一つの例において、ALWIPと非ALWIPイントラモードの両方のMPMリストを導出するために使用される左隣接ブロックが位置をカバーすることができる(xCb-1,yCb)。別の例では、ALWIPモードと非ALWIPイントラモードの両方のMPMリストを導出するために使用される左隣接ブロックが、位置(xCb-1、yCb+H-1)をカバーし得る。
ii. 例えば、統一されたMPMリスト構成で使用される左隣接ブロック及び上隣接ブロックは、図10に示されるようにA2及びB2である。
b. 一つの例において、ALWIPのMPMリストを導出するために使用される現在ブロックの上の隣接ブロックは、非ALWIPイントラモードのMPMリストを導出するために使用されるものと同じであるべきである。
i. 現在ブロックの左上隅が(xCb,yCb)で、現在ブロックの幅と高さがWとHであると仮定すると、一つの例では、ALWIPと非ALWIPイントラモードの両方のMPMリストを導出するために使用される上記の隣接するブロックが位置をカバーする可能性がある(xCb,yCb-1)。別の例では、ALWIPモードと非ALWIPイントラモードの両方のMPMリストを導出するために使用される上記の隣接ブロックは、位置(xCb+W-1、yCb-1)をカバーしてもよい。
ii. 例えば、統一されたMPMリスト構成で使用される左隣接ブロック及び上隣接ブロックは、図10に示されるようにA1及びB1である。
3. ALWIPのためのMPMリストは、現在ブロックの幅及び/又は高さに応じて異なる方法で構築できることを提案する。
a. 一つの例において、異なるブロック寸法のために異なる隣接ブロックにアクセスすることができる。
4. ALWIPのためのMPMリストと非ALWIPイントラモードに対するMPMリストは、同じ手順で構成できるが、異なるパラメータで構成できることを提案する。
a. 一つの例において、非ALWIPイントラモードのMPMリスト構築手順におけるSイントラ予測モードのうちKを、ALWIPモードで使用されるMPMリストに対して導出することができる。例えば、Kは3に等しく、Sは6に等しい。
i. 一つの例において、MPMリスト構築手順における最初のKイントラ予測モードは、ALWIPモードで使用されるMPMリストに対して導出することができる。
b. 一つの例において、MPMリストの最初のモードは異なる場合がある。
i. 例えば、非ALWIPイントラモードのMPMリストの最初のモードはプラナーかもしれないが、ALWIPのMPMリストのモードX0かもしれない。
1) 一つの例において、X0は、Planarから変換されたALWIPイントラ予測モードであってもよい。
c. 一つの例において、MPMリスト内のスタッフィングモードが異なる可能性がある。
i. 例えば、非ALWIPイントラモードのMPMリストの最初の3つのスタッフィングモードは、DC、VerticalおよびHorizontalであってもよいが、ALWIPのMPMリストのMode X1、X2、X3であってもよい。
1) 一つの例において、X1、X2、X3は、異なるサイズIdに対して異なる場合がある。
ii. 一つの例において、スタッフィングモードの数は異なる場合がある。
d. 一つの例において、MPMリスト内の隣接モードが異なる可能性がある。
i. 例えば、隣接ブロックの通常のイントラ予測モードは、非ALWIPイントラモードに対するMPMリストを構築するために使用される。そして、それらをALWIPイントラ予測モードに変換し、ALWIPモードに対するMPMリストを構築する。
e. 一つの例において、MPMリスト内のシフトされたモードは異なる場合がある。
i. 例えば、Xが通常のイントラ予測モードであり、K0が整数であるX+K0は、非ALWIPイントラモードのためにMPMリストに入れることができる。また、YがALWIPイントラ予測モード、K1が整数であるY+K1は、ALWIP用のMPMリストに入れることができる。K0はK1とは異なる場合がある。
1) 一つの例において、K1は幅および高さに依存し得る。
5. 非ALWIPイントラモードで現在ブロックのMPMリストを構築する際に、隣接ブロックがALWIPでコード化されている場合、隣接ブロックは利用不可として扱われることを提案する。
a. 代わりに、隣接するブロックが、非ALWIPイントラモードで現在ブロックのMPMリストを構築する際に、ALWIPでコード化されている場合、予め定義されたイントラ予測モード(例えば、Planar)でコード化されているとして扱われる。
6. ALWIPモードで現在ブロックのMPMリストを構成する際に、隣接ブロックが非ALWIPイントラモードでコード化されている場合、隣接ブロックは利用不可として扱われることを提案する。
a. 代わりに、隣接するブロックが、ALWIPモードで現在ブロックのMPMリストを構成する際に、非ALWIPイントラモードでコード化されている場合、予め定義されたALWIPイントラ予測モードXでコード化されているものとして扱われる。
i. 一つの例において、Xは、幅及び/又は高さのようなブロック寸法に依存し得る。
7. ラインバッファからALWIPフラグの保管を削除することを提案した。
a. 一つの例において、アクセスされるべき2番目のブロックが現在ブロックとは異なるLCU/CTU行/領域にある場合、2番目のブロックがALWIPでコード化されているか否かの条件付きチェックはスキップされる。
b. 一つの例において、アクセスされるべき2番目のブロックが現在ブロックとは異なるLCU/CTU行/領域に位置する場合、2番目のブロックは、通常のイントラコード化ブロックとして扱われるように、非ALWIPモードと同様に扱われる。
8. ALWIPフラグをエンコーディングする時、K(K>=0)コンテキスト以下が使われ得る。
a. 一つの例において、K=1である。
9. ALWIPモードに関連したモードインデックスを直接保管する代わりに、ALWIPコード化ブロックの変換されたイントラ予測モードを保管することを提案した。
a. 一つの例において、1つのALWIPコード化ブロックに関連するデコーディングされたモードインデックスは、通常のイントラモードにマッピングされる。セクション2.5.7に記述されるように、map_alwip_to_angularに従う、といったものである。
b. 代わりに、さらに、ALWIPフラグの保管は、完全に除去される。
c. 代わりに、さらに、ALWIPモードの保管は、完全に除去される。
d. 代わりに、さらに、隣接/現在ブロックの一つがALWIPフラグでコード化されているかの状態チェックを省略してもよい。
e. 代わりに、さらに、ALWIPコード化ブロックに割り当てられたモードの変換および1つのアクセスされたブロックに関連する通常のイントラ予測をスキップしてもよい。
異なるカラー成分におけるALWIP
10. もし対応するルマブロックがALWIPモードでコード化されるなら、推定クロマイントラモード(例えば、DMモード)が常に適用され得ることが提案される。
a. 一つの例において、クロマイントラモードは、対応するルマブロックがALWIPモードでコード化されている場合、信号なしのDMモードであると推測される。
b. 一つの例において、対応するルマブロックは、所与の位置に位置するクロマ・サンプルの対応するサンプル(例えば、現在のクロマブロックの左上、現在のクロマブロックの中心)をカバーするものであってもよい。
c. 一つの例において、DMモードは、例えば(ALWIP)モードを通常のイントラモードの1つにマッピングすることによって、対応するルマブロックのイントラ予測モードに従って導出することができる。
11. クロマブロックの対応するルマブロックがALWIPモードでコード化される場合、いくつかのDMモードが導出され得る。
12. 1つの対応するルマブロックがALWIPモードでコード化される場合、特殊モードがクロマブロックに割り当てられることを提案した。
a. 一つの例において、特殊モードは、ALWIPコード化ブロックに関連するイントラ予測モードにかかわらず、所与のノーマルイントラ予測モードであると定義される。
b. 一つの例において、この特殊なモードに異なる方法でイントラ予測を割り当てることができる。
13. ALWIPをクロマ成分にも適用できることを提案した。
a. 一つの例において、マトリクス及び/又はバイアスベクトルは、異なる色成分に対して異なる場合がある。
b. 一実施形態では、行列及び/又はバイアスベクトルは、CbおよびCrに対して一緒に定義されてもよい。
i. 一つの例において、CbおよびCr成分を連結することができる。
ii. 一つの例において、CbおよびCr成分がインターリーブされてもよい。
c. 一つの例において、クロマ成分は、対応するルマブロックと同じALWIPイントラ予測モードを共有することができる。
i. 一つの例において、対応するルマブロックがALWIPモードを適用し、クロマブロックがDMモードでコード化されている場合、同じALWIPイントラ予測モードがクロマ・コンポーネントに適用される。
ii. 一つの例において、同じALWIPイントラ予測モードがクロマ成分に適用され、その後の線形補間をスキップすることができる。
iii. 一つの例において、同じALWIPイントラ予測モードが、サブサンプリングされた行列及び/又はバイアスベクトルを有するクロマ成分に適用される。
d. 一つの例において、異なるコンポーネントに対するALWIPイントラ予測モードの数が異なる可能性がある。
i. 例えば、クロマコンポーネントのALWIPイントラ予測モードの数は、同じブロック幅と高さのルマコンポーネントの数よりも少ない場合がある。
ALWIPの適用性
14. ALWIPを適用できるか否かを信号化することを提案した。
a. 例えば、シーケンスレベル(例えば、SPSにおけるもの)、画像レベル(例えば、PPSまたは画像ヘッダにおけるもの)、スライスレベル(例えば、スライスヘッダにおけるもの)、タイルグループレベル(例えば、タイルグループヘッダにおけるもの)、タイルレベル、CTU行レベル、またはCTUレベルで信号化することができる。
b. 例えば、もしALWIPが適用できなければ、intra_lwip_flagは信号化されず、0であると推測され得る。
15. ALWIPを適用できるか否かは、ブロック幅(W)及び/又は高さ(H)に依存することが提案される。
c. 例えば、W>=T1(またはW>T1)かつH>=T2(またはH>T2)の場合は、ALWIPを適用しないことがある。例:T1=T2=32;
i. 例えば、W<=T1(またはW<T1)かつH<=T2(またはH<T2)の場合、ALWIPは適用されない可能性がある。例:T1=T2=32;
d. 例えば、W>=T1(またはW>T1)またはH>=T2(またはH>T2)の場合は、ALWIPを適用しないことがある。例:T1=T2=32;
i. 例えば、W<=T1(またはW<T1)またはH<=T2(またはH< T2)の場合、ALWIPは適用されない可能性がある。例:T1=T2=32;
e. 例えば、W+H>=T(またはW*H>T)の場合、ALWIPは適用されない。例えば、T=256;
i. 例えば、W+H<=T(またはW+H<T)の場合、ALWIPは適用されない。例えば、T=256;
f. 例えば、W*H>=T(またはW*H>T)の場合、ALWIPは適用されない。例えば、T=256;
i. 例えば、W*H<=T(またはW*H<T)の場合、ALWIPは適用されない。例えば、T=256;
g. 例えば、もしALWIPが適用できなければ、intra_lwip_flagは信号化されず、0であると推測され得る。
ALWIPにおける計算上の問題
16. ALWIPに関与するシフト演算は、Sが0より大きいか等しくなければならない場合、Sによる数の左シフトまたは右シフトのみが可能であることが提案される。
a. 一つの例において、Sが0または0より大きい場合、右シフト動作は異なる場合がある。
i. ある例では、upsBdryX[x]は次のように計算される。
uDwn>1の場合、
upsBdryX[x]=(
uDwnが1に等しい場合、
upsBdryX[x]=
upsBdryX[x]=(
17. 結果は、ALWIPのアップサンプリング過程においてゼロに近づくかゼロから離れるように丸められるべきであることが提案される。
a. 一つの例において、
predSamples[xHor+dX][yHor]=((upHor-dX)*predSamples[xHor][yHor]+dX*predSamples[xHor+upHor][yHor]+offsetHor)/upHor (8-X39)、
かつ、
predSamples[xVer][yVer+dY]=((upVer-dY)*predSamples[xVer][yVer]+dY*predSamples[xVer][yVer+upVer]+offsetVer)/upVer (8-X40)、
ここで、offsetHorとoffsetVerは整数である。例えば、offsetHor=upHor/2、かつ、offsetVer=upVer/2である。
他のコードディングツールとの相互作用
18. ALWIPはCIIPコード化ブロックに使用できることを提案した。
a. 一つの例において、CIIPコード化ブロックにおいては、ALWIPイントラ予測モードまたはプラナーのような通常イントラ予測モードがイントラ予測信号を生成するために使用されるか否かを明示的に信号化することができる。
b. 一つの例において、ALWIPイントラ予測モードまたはプラナーなどの通常イントラ予測モードを使用してイントラ予測信号を生成することができるか否かを暗黙のうちに推定することができる。
i. 一つの例において、ALWIPイントラ予測モードは、CIIPコード化ブロックでは使用されない可能性がある。
1) 代わりに、CIIPコード化ブロックでは、通常のイントラ予測を使用することはできない。
ii. 一つの例において、隣接ブロックの情報から、ALWIPイントラ予測モードまたはプラナーのような通常イントラ予測モードがイントラ予測信号を生成するために使用されるか否かを推測することができる。
19. CCLMモードで隣接するルマサンプルをダウンサンプリングするために使用される手順の全部または一部が、ALWIPモードで隣接サンプルをダウンサンプリングするために使用され得ることが提案される。
a. 代わりに、ALWIPモードで隣接するルマサンプルをダウンサンプリングするために使用される手順の全部または一部が、CCLMモードで隣接サンプルをダウンサンプリングするために使用されてもよい。
b. ダウンサンプリング手順は、CCLMプロセスおよびALWIPプロセスで使用される場合、異なるパラメータ/引数で呼び出される。
c. 一つの例において、CCLMプロセスにおけるダウンサンプリング方法(隣接するルマ位置の選択、ダウンサンプリングフィルタなど)は、ALWIPプロセスにおいて利用され得る。
d. 隣接するルマサンプルをダウンサンプリングする手順には、少なくともダウンサンプリング位置の選択、ダウンサンプリングフィルタ、丸め、クリッピング操作が含まれる。
20. ALWIPモードでコード化されたブロックは、RST及び/又は二次変換及び/又は回転変換及び/又は非分離二次変換(NSST)を適用できないことを提案する。
a. 一つの例において、そのような制約が適用され得るか否かは、例えば、(15)に記載される条件と同じように、ブロックの寸法情報に依存し得る。
b. 代わりに、RST及び/又は二次変換及び/又は回転変換及び/又はNSSTが適用される場合、ALWIPモードは許可されない。
c. 代わりに、ALWIPモードでコード化されたブロックは、RST及び/又は二次変換及び/又は回転変換及び/又は非分離二次変換(NSST)を適用することができる。
i. 一つの例において、変換行列の選択は、ALWIPイントラ予測モードに依存し得る。
ii. 一つの例において、変換行列の選択は、ALWIPイントラ予測モードから変換される正規イントラ予測モードに依存し得る。
iii. 一つの例において、変換行列の選択は、ALWIPイントラ予測モードから変換される正規イントラ予測モードに基づいて分類することができる。
21. ALWIPモードでコード化されたブロックは、ブロックベースDPCM(BDPCM)または残留RDPCMを適用できないことを提案する。
a. 代わりに、BDPCMまたはRDPCMが適用されている場合は、ALWIPモードは許可されない場合がある。
22. ALWIPモードでコード化されたブロックは変換としてDCT-IIのみを使用することができると提案した。
a. 一つの例において、変換行列インデックスの信号化は常にスキップされる。
b. 代わりに、ALWIPモードでコード化されたブロックに使用される変換は、明示的に信号化されるのではなく、暗黙的に導出される可能性があることが提案される。例えば、変換は、JVET-M0303で提案された方法に従って選択されてもよい。
c. 代わりに、ALWIPモードでコード化されたブロックは変換スキップのみを使用できることが提案されている。
i. また、ALWIPを使用した場合、変換スキップの使用を示している信号はスキップされる。
d. 一つの例において、ALWIPモード情報(有効/無効、予測モードインデックスなど)は、変換マトリクスの表示後に条件付きで信号化することができる。
i. 一つの例において、所与の変換マトリクス(例えば、変換スキップまたはDCT-II)に対して、ALWIPモード情報の表示は、信号化されてもよい。
ii. 代わりに、さらに、ALWIPモード情報の指示は、いくつかの予め定義された変換行列に対してスキップされてもよい。
23. ALWIPモードでコード化されたブロックは、選択された変換がモードに依存するとき、ALWIP内予測モードから変換された正規内予測でコード化されると考えられる。
24. ALWIPモードでは、変換スキップは使用できない。
a. 例えば、この場合、変換スキップの使用の指示をさらにシグナルする必要はない。
b. 代わりに、変換スキップを適用した場合、ALWIPモードを使用できない場合がある。
i. 例えば、この場合、変換スキップが適用される場合、ALWIPモード情報をシグナルする必要はない。
25. デブロックフィルタ、サンプル適応オフセット(SAO)、適応ループフィルタ(ALF)、フィルタの選択方法及び/又はサンプルをフィルタするか否かは、ALWIPの使用により決定され得る。
26. ALWIPモードでは、フィルタリングされていない隣接サンプルを使用することができる。
a. 代わりに、フィルタリングされた隣接サンプルがALWIPモードで使用されてもよい。
b. 一つの例において、フィルタリングされた隣接サンプルをダウンサンプリングのために使用してもよく、フィルタリングされていない隣接サンプルをアップサンプリングのために使用してもよい。
c. 一つの例において、フィルタ処理されていない隣接サンプルをダウンサンプリングに使用し、フィルタ処理された隣接サンプルをアップサンプリングに使用することができる。
d. 一実施形態では、フィルタリングされた左隣接サンプルを上方サンプリングに使用し、フィルタリングされていない隣接サンプルを上方サンプリングに使用することができる。
e. 一実施形態では、フィルタリングされていない左隣接サンプルを上方サンプリングに使用し、上隣接サンプルをフィルタリングしたものを上方サンプリングに使用することができる。
f. 一つの例において、フィルタを使用するか、フィルタを使用しない隣接サンプルを使用するかは、ALWIPモードに依存し得る。
i. 一つの例において、ALWIPモードは、従来のイントラ予測モードに変換されてもよく、フィルタリングされたまたはフィルタリングされていない隣接サンプルが使用されるか否かは、変換された従来のイントラ予測モードに依存してもよい。例えば、このような決定は従来のなイントラ予測モードと同じである。
ii. 代わりに、フィルタを使用するか、フィルタを使用しない隣接サンプルをALWIPモードに使用するかを信号で送ってもよい。
g. 一つの例において、フィルタリングされたサンプルは、従来のイントラ予測モードと同じように生成されてもよい。
27. どの行列及び/又はオフセットベクトルが使用されるかは、再形成(別名:LMCS、クロマスケーリングを用いたルママッピング(luma mapping with chroma scaling))情報に依存する可能性がある。
a. 一つの例において、再形成がオンおよびオフのときに、異なるマトリクス及び/又はオフセットベクトルが使用されてもよい。
b. 一つの例において、異なるマトリクスまたはオフセットベクトルが、異なる再形成パラメータのために使用されてもよい。
c. 一つの例において、ALWIPは、常にオリジナルのドメインで実行されてもよい。
i. 例えば、隣接サンプルは、ALWIPで使用される前に、元のドメイン(再形成が適用される場合)にマッピングされる。
28. ALWIPは、再成形が適用されると無効になる場合がある。
a. 代わりに、ALWIPを有効にすると、再成形が無効になる場合がある。
b. 一つの例において、ALWIPは、再形成が適用されるときにHDR(高ダイナミックレンジ)コンテンツに対して無効にされる可能性がある。
29. ALWIPで使用される行列は、サンプルのビット深度に依存する可能性がある。
a. 代わりに、さらに、ALWIPで使用されるオフセット値は、サンプルのビット深度に依存し得る。
b. 代わりに、行列パラメータおよびオフセット値は、Nビットサンプル(M<=N)に対してMビット精度で保管することができ、例えば、行列パラメータおよびオフセット値は、10ビットサンプルに対して8ビット精度で保管することができる。
c. サンプルのビット深さは、ルマのような色成分のための入力アレイのビット深さであってもよい。
d. サンプルビット深さは、ルマのような色成分のための内部アレイ/再構成されたサンプルのビット深さであってもよい。
30. 指定されたブロックサイズに対するマトリクスパラメータ及び/又はオフセット値は、マトリクスパラメータ及び/又は他のブロックサイズに対するオフセット値から導出されてもよい。
31. 一つの例において、8×8ブロックの16×8行列は、4×4ブロックの16×4行列から導出することができる。
32. ALWIPによって生成された予測は、さらに使用される予測信号を得るために処理される中間信号として扱うことができることを提案した。
a. 一つの例において、位置依存イントラ予測組み合わせは、ALWIPによって生成された予測に適用され、さらに使用される予測信号を生成することができる。
i. 一つの例において、PDPCは、ALWIPコード化ブロック上で、ブロックがプラナーまたはDCのような特定の通常のイントラ予測モードでコード化されるのと同じ方法で実行される。
ii. 一つの例において、PDPCは、ALWIPイントラ予測モードから変換される通常イントラ予測モードでコード化されるブロックと同様に、ALWIPコード化ブロック上で実行される。
iii. 一つの例において、PDPCは、条件付きでALWIPコード化ブロックに適用される。
1) 例えば、ALWIPイントラ予測モードから変換された通常のイントラ予測モードでPDPCを適用した場合にのみ、ALWIPコード化ブロックにPDPCが適用される。
b. 一つの例において、ALWIPによって生成された境界サンプル予測は、隣接サンプルでフィルタリングされて、さらに使用されるべき予測信号を生成することができる。
i. 一つの例において、境界サンプル上のフィルタリングは、ALWIPコード化ブロックがプラナーまたはDCのような特定の通常のイントラ予測モードでコード化されるのと同じ方法で、ALWIPコード化ブロック上で実行される。
ii. 一つの例において、境界サンプル上のフィルタリングは、ALWIPイントラ予測モードから変換された通常イントラ予測モードでコード化されたブロックと同じ方法で、ALWIPコード化ブロック上で実行される。
iii. 一つの例において、境界サンプル上のフィルタリングは、条件付きでALWIPコード化ブロック上に適用される。
1) 例えば、境界サンプル上のフィルタリングが、ALWIPイントラ予測モードから変換された通常のイントラ予測モードに適用されるときにのみ、境界サンプル上のフィルタリングがALWIPコード化ブロックに適用される。
33. バイリニア補間フィルタ以外の補間フィルタをALWIPのアップサンプリングプロセスで使用できることを提案した。
a. 一つの例において、4タップ補間フィルタは、ALWIPのアップサンプリングプロセスにおいて使用され得る。
i. 例えば、クロマ成分の運動補償を行うために使用されるVVCの4タップ補間フィルタは、ALWIPのアップサンプリングプロセスにおいて使用され得る。
ii. 例えば、角度イントラ予測を行うために使用されるVVCの4タップ補間フィルタは、ALWIPのアップサンプリングプロセスにおいて使用され得る。
iii. 例えば、ルマコンポーネントの動作補正を行うために使用されるVVCの8タップ補間フィルタは、ALWIPのアップサンプリングプロセスで使用され得る。
34. ALWIPモードでコード化されたブロック内のサンプルは、異なる方法で予測され得る。
a. 一つの例において、W*Hブロックに対して、それにsW*sH ALWIPを適用することによって、その中のsW*sHサブブロックの予測を生成することができる。
i. 一つの例において、W*Hブロックに対して、その左上のW/2*H/2ブロックの予測は、それにW/2*H/2 ALWIPを適用することによって生成され得る。
ii. 一つの例において、W*Hブロックに対して、その左W/2*Hブロックの予測は、それにW/2*H ALWIPを適用することによって生成され得る。
iii. 一つの例において、W*Hブロックに対して、その上部W*H/2ブロックの予測は、W*H/2 ALWIPをそれに適用することによって生成され得る。
iv. 一つの例において、sW*sHサブブロックは、左及び/又は上の隣接サンプルを利用可能であってもよい。
b. 一つの例において、サブブロックの位置を決定する方法は、ブロックの寸法に依存し得る。
i. 例えば、W≧Hの場合、W/2*H ALWIPを適用することにより、その左側W/2*Hブロックの予測を生成することができる。
ii. 例えば、H≧Wの場合、W*H/2 ALWIPを適用することによって、その上部W*H/2ブロックの予測を生成することができる。
iii. 例えば、WがHに等しい場合、W/2*H/2 ALWIPを適用することにより、その左上のW/2*H/2ブロックの予測を生成することができる。
c. さらに、一つの例において、W*H ALWIPを適用することによって、残りのサンプル(例えば、サンプルがsW*sHサブブロックに属していない)の予測を生成することができる。
i. 代わりに、残りのサンプルの予測は、従来のイントラ予測(例えば、イントラモードとして変換されたイントラ予測モードを使用する)を適用することによって生成されてもよい。
ii. さらに、sW*sHサブブロック内のサンプルについて計算をスキップしてもよい。
35. ALWIPモードでコード化されたブロック内のサンプルは、サブブロック(例えば、サイズsW*sH)レベルで予測され得る。
a. 一つの例において、sW*sH ALWIPは、隣接する再構成されたサンプル(例えば、境界サブブロックについて)または隣接する予測サンプル(例えば、内部サブブロックについて)を使用して各サブブロックに適用され得る。
b. 一つの例において、サブブロックは、ラスタ走査順序で予測されてもよい。
c. 一つの例において、サブブロックは、ジグザグ順に予測されてもよい。
d. 一つの例において、サブブロックの幅(高さ)は、sWMax(sHMax)以下であってもよい。
e. 一つの例において、幅または高さのいずれか、または幅および高さの両方を有するブロックが、閾値Lよりも大きい(または、等しい)場合、そのブロックは、複数のサブブロックに分割され得る。
f. 閾値Lは、SPS/PPS/ピクチャ/スライス/タイルグループ/タイルレベルで予め定義されていてもよいし、信号化されていてもよい。
i. 代わりに、閾値は、ブロックサイズ、画像タイプ、時間層インデックス等の特定のコード化情報に依存し得る。
36. 隣接サンプル(隣接または非隣接)は、ALWIPで使用される前にフィルタリングされることが提案されている。
a. 代わりに、隣接サンプルは、ALWIPで使用される前にフィルタリングされない。
b. 代わりに、隣接サンプルは、ALWIPで使用される前に条件的にフィルタリングされる。
i. 例えば、隣接サンプルは、ALWIP内予測モードが1つまたはいくつかの特定の値に等しい場合にのみ、ALWIPで使用される前にフィルタリングされる。
上述の例は、以下で説明される方法、例えば、方法1100-1400および2000-2300のコンテキストに組み込まれてよく、ビデオエンコーダ及び/又はデコーダで実装され得る。
図11は、ビデオ処理のための例示的な方法のフローチャートを示している。本方法1100は、ステップ1110において、現在ビデオブロックが、アフィン線形加重イントラ予測モード(ALWIP)を使用してコード化されることを決定すること、を含む。
方法1100は、ステップ1120において、決定に基づいて、非ALWIPイントラモードに対するMPMリストの少なくとも一部に基づいて、ALWIPモードに対する最確モード(MPM)リストの少なくとも一部を構築すること、を含む。
方法1100は、ステップ1130において、ALWIPモードに対するMPMリストに基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
いくつかの実施態様において、ALWIPモードのMPMリストのサイズは、非ALWIPイントラモードのMPMリストのサイズと同一である。一つの例において、ALWIPモードのMPMリストのサイズは6である。
いくつかの実施形態において、方法1100は、さらにALWIPモードに対するMPMリストにデフォルトモードを挿入すること、を含む。一つの例では、デフォルトモードは、非ALWIPイントラモードに対するMPMリストに基づく、ALWIPモードに対するMPMリストの部分の以前に挿入される。別の例では、デフォルトモードは、非ALWIPイントラモードに対するMPMリストに基づく、ALWIPモードに対するMPMリストの部分の後に挿入される。さらに別の例では、デフォルトモードは、非ALWIPイントラモードに対するMPMリストに基づく、ALWIPモードに対するMPMリストの部分とインターリーブ方式で挿入される。
いくつかの実施態様において、ALWIPモードに対するMPMリスト及び非ALWIPイントラモードに対するMPMリストを構築することは、1つ以上の隣接するブロックに基づいている。
いくつかの実施態様において、ALWIPモードに対するMPMリスト及び非ALWIPイントラモードに対するMPMリストを構築することは、現在ビデオブロックの高さ又は幅に基づいている。
いくつかの実施形態において、ALWIPモードに対するMPMリストを構築することは、非ALWIPイントラモードに対するMPMリストを構築することに使用されるパラメータの第2セットとは異なる第1セットのパラメータに基づいている。
いくつかの実施形態において、本方法1100は、さらに、現在ビデオブロックの隣接ブロックがALWIPモードでコード化されたことを決定し、かつ、非ALWIPイントラモードに対するMPMリストを構築する際に、隣接ブロックを利用不可として指定するステップ、を含む。
いくつかの実施形態において、本方法1100は、さらに、現在ビデオブロックの隣接ブロックが非ALWIPイントラモードでコード化されたことを決定し、かつ、ALWIPモードに対するMPMリストを構築する際に、隣接ブロックを利用不可として指定するステップ、を含む。
いくつかの実施態様において、非ALWIPイントラモードは、通常イントラモード、多重基準線イントラ予測モード(MRL)、またはイントラサブパーティション(ISP)ツールに基づいている。
図12は、ビデオ処理のための例示的な方法のフローチャートを示している。本方法1200は、ステップ1210において、現在ビデオブロックのルマ成分が、アフィン線形加重イントラ予測モードを使用してコード化されることを決定すること、を含む。
方法1200は、ステップ1220において、決定に基づいて、クロマイントラモードを推測する(inferring)こと、を含む。
方法1200は、ステップ1230において、クロマイントラモードに基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
いくつかの実施態様において、ルマ成分は、クロマ成分の既定のクロマサンプルをカバーする。一つの実施形態において、既定のクロマサンプルは、クロマ成分の左上サンプルまたは中央サンプルである。
いくつかの実施態様において、推測されるクロマイントラモードは、DMモードである。
いくつかの実施態様において、推測されるクロマイントラモードは、ALWIPモードである。
いくつかの実施形態において、ALWIPモードは、現在ビデオブロックの1つ以上のクロマ成分に適用される。
いくつかの実施態様において、ALWIPモードの異なるマトリクス又はバイアスベクトルが、現在ビデオブロックの異なるカラー成分に適用される。一つの例では、異なる行列またはバイアスベクトルが、CbおよびCr成分について一緒に定義される。別の例では、CbおよびCr成分が連結される。さらに別の例では、CbおよびCr成分がインターリーブされる。
図13は、ビデオ処理のための例示的な方法のフローチャートを示している。方法1300は、ステップ1310において、現在ビデオブロックが、アフィン線形加重イントラ予測(ALWIP)モードを使用してコード化されることを決定すること、を含む。
方法1300は、ステップ1320において、決定に基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
いくつかの実施形態において、決定は、シーケンスパラメータセット(SPS)、画像パラメータセット(PPS)、スライスヘッダ、タイルグループヘッダ、タイルヘッダ、コーディングツリーユニット(CTU)行、またはCTU領域における信号に基づいている。
いくつかの実施態様において、決定は、現在ビデオブロックの高さ(H)又は幅(W)に基づいている。一つの例では、W>T1またはH>T2である。別の例では、W≧T1またはH≧T2である。さらに別の例では、W<T1またはH<T2である。さらに別の例では、W≦T1またはH≦T2である。さらに別の例では、T1=32かつT2=32である。
いくつかの実施態様において、決定は、現在ビデオブロックの高さ(H)又は幅(W)に基づいている。一つの例では、W+H≦Tである。別の実施例では、W+H≧Tである。さらに別の実施例では、W×H≦Tである。さらに別の実施例では、W×H≧Tである。さらに別の実施例では、T=256である。
図14は、ビデオ処理のための例示的な方法のフローチャートを示している。この方法1400は、ステップ1410において、現在ビデオブロックが、アフィン線形加重イントラ予測(ALWIP)モードとは異なるコーディングモードを使用してコード化されることを決定すること、を含む。
方法1400は、ステップ1420において、決定に基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行すること、を含む。
いくつかの実施形態において、コーディングモードは、結合されたイントラおよびインター予測(CIIP)モードであり、そして、方法1400は、さらに、ALWIPモードと通常イントラ予測モードとの間で選択を実行するステップを含む。一つの例では、選択を実行することは、現在ビデオブロックのビットストリーム表現における明示的な信号化に基づいている。別の例では、選択を実行することは、既定のルールに基づいている。さらに別の例では、既定のルールは、現在ビデオブロックがCIIPモードを使用してコード化される場合、常にALWIPモードを選択する。さらに別の例では、既定のルールは、現在ビデオブロックがCIIPモードを使用してコード化される場合、常に通常のイントラ予測モードを選択する。
いくつかの実施形態において、コーディングモードは、クロスコンポーネント線形モデル(CCLM)予測モードである。一つの例において、ALWIPモードのダウンサンプリング手順は、CCLM予測モードのダウンサンプリング手順に基づいている。別の例では、ALWIPモードのダウンサンプリング手順は、パラメータの第1セットに基づいており、CCLM予測モードのダウンサンプリング手順は、パラメータの第1セットとは異なるパラメータの第2セットに基づいている。さらに別の例では、ALWIPモードまたはCCLM予測モードのためのダウンサンプリング手順は、ダウンサンプリング位置の選択、ダウンサンプリングフィルタの選択、丸め操作、またはクリッピング操作のうちの少なくとも1つを含んでいる。
いくつかの実施形態において、方法1400は、さらに、縮小二次変換(RST)、二次変換、回転変換、または非分離二次変換(NSST)のうちの1つ以上を適用するステップ、を含む。
いくつかの実施形態において、方法1400は、さらに、ブロックベースの差動パルスコード化変調(DPCM)または残留DPCMを適用するステップ、を含む。
6 開示される技術の例示的な実施
図15は、ビデオ処理装置1500のブロック図である。装置1500は、ここにおいて説明される1つ以上の方法を実装するために使用され得る。装置1500は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信器、などで具体化することができる。装置1500は、1つ以上のプロセッサ1502、1つ以上のメモリ1504、およびビデオ処理ハードウェア1506を含んでよい。プロセッサ1502は、本文書において説明される1つ以上の方法(方法1100から1400まで、および、2000から2300までを含むが、これらに限定されない)を実装するように構成されてよい。メモリ(複数のメモリ)1504は、ここにおいて記説明される方法および技術を実施するために使用されるデータおよびコードを保管するために使用されてよい。ビデオ処理ハードウェア1506は、ハードウェア回路において、本文書において説明されるいくつかの技術を実装するために使用されてよい。
図15は、ビデオ処理装置1500のブロック図である。装置1500は、ここにおいて説明される1つ以上の方法を実装するために使用され得る。装置1500は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信器、などで具体化することができる。装置1500は、1つ以上のプロセッサ1502、1つ以上のメモリ1504、およびビデオ処理ハードウェア1506を含んでよい。プロセッサ1502は、本文書において説明される1つ以上の方法(方法1100から1400まで、および、2000から2300までを含むが、これらに限定されない)を実装するように構成されてよい。メモリ(複数のメモリ)1504は、ここにおいて記説明される方法および技術を実施するために使用されるデータおよびコードを保管するために使用されてよい。ビデオ処理ハードウェア1506は、ハードウェア回路において、本文書において説明されるいくつかの技術を実装するために使用されてよい。
いくつかの実施形態において、ビデオコーディング方法は、図15に関して説明されるようにハードウェアプラットフォーム上に実装される装置を使用して実装されてよい。
図16は、ここにおいて開示される様々な技術が実装され得る例示的なビデオ処理システム1600を示しているブロック図である。種々の実装は、システム1600のコンポーネントの一部または全部を含んでよい。システム1600は、ビデオコンテンツを受信するための入力1602を含んでよい。ビデオコンテンツは、生で(raw)または非圧縮フォーマット、例えば、8または10ビットのマルチコンポーネント画素値で受信されてよく、または、圧縮またはエンコーディングフォーマットで受信されてもよい。入力1602は、ネットワークインターフェイス、ペリフェラルバスインターフェイス、またはストレージインターフェイスを表すことができる。ネットワークインターフェイスの例は、イーサネット、受動光ネットワーク(PON)といった有線インターフェイス、および、Wi-Fiまたはセルラーインターフェイスといった無線インターフェイスを含む。
システム1600は、本文書において説明される種々のコーディングまたはエンコーディング方法を実装し得るコーディングコンポーネント1604を含んでよい。コーディングコンポーネント1604は、入力1602からコーディングコンポーネント1604の出力までのビデオの平均ビットレートを縮小することができ、ビデオのコード化表現を生成する。従って、コーディング技術は、ときどき、ビデオ圧縮またはビデオトランスコーディング技術と呼ばれる。コーディングコンポーネント1604の出力は、コンポーネント1606によって表されるように、保管されるか、または、接続された通信を介して送信されてよい。入力1602で受信されたビデオに係る保管され、または、通信されたビットストリーム(または、コード化された)表現は、ディスプレイインターフェイス1610に送信される、画素値または表示可能なビデオを生成するために、コンポーネント1608によって使用されてよい。ビットストリーム表現からユーザが閲覧可能な(user-viewable)ビデオを生成するプロセスは、ときどき、ビデオ解凍(decompression)と呼ばれる。さらに、所定のビデオ処理操作は、「コーディング」操作またはツールと称されるが、コーディングツールまたは操作は、エンコーダで使用され、コーディングの結果を反転する、対応するデコーディングツールまたは操作は、デコーダで実行されることが理解されるだろう。
ペリフェラルバスインターフェイスまたはディスプレイインターフェイスの例は、ユニバーサルシリアルバス(USB)または高精細度マルチメディアインターフェイス(HDMI(登録商標))、もしくはディスプレイポート、などを含んでよい。ストレージインターフェイスの例は、SATA(serial advanced technology attachment)、PCI、IDEインターフェイス、などを含んでよい。ここにおいて説明される技術は、移動電話、ラップトップ、スマートフォン、または、デジタルデータ処理及び/又はビデオ表示を実行することができる他の装置といった、種々の電子装置において具体化することができる。
開示される技術のいくつかの実施形態は、ビデオ処理ツールまたはモードを可能にする決定または決定を行うこと、を含む。一つの例において、ビデオ処理ツールまたはモードがイネーブルである場合、エンコーダは、ビデオのブロックの処理においてツールまたはモードを使用または実装するが、必ずしもツールまたはモードの使用に基づいて結果として生じるビットストリームを修正しなくてよい。すなわち、ビデオのブロックからビデオのビットストリーム表現への変換は、決定または判定に基づいてイネーブルされた場合に、ビデオ処理ツールまたはモードを使用する。別の例では、ビデオ処理ツールまたはモードがイネーブルである場合、デコーダは、ビットストリームがビデオ処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、ビデオのビットストリーム表現からビデオのブロックへの変換は、決定または判定に基づいてイネーブルされたビデオ処理ツールまたはモードを使用して実行される。
開示される技術のいくつかの実施形態は、ビデオ処理ツールまたはモードをディセーブルする決定または決定を行うことを含む。一つの例において、ビデオ処理ツールまたはモードがディセーブルされている場合、エンコーダは、ビデオのブロックをビデオのビットストリーム表現に変換する際に、ツールまたはモードを使用しない。別の例では、ビデオ処理ツールまたはモードがディセーブルされている場合、デコーダは、ビットストリームが、決定または判定に基づいてディセーブルされたビデオ処理ツールまたはモードを使用して修正されていないことを知って、ビットストリームを処理する。
図17は、本開示の技術を利用することができる例示的なビデオコーディングシステム100を示しているブロック図である。図17に示されるように、ビデオコーディングシステム100は、送信元デバイス(source device)110および宛先デバイス(destination device)120を含んでよい。送信元デバイス110は、エンコーディングされたビデオデータを生成し、ビデオエンコーディング装置として称されてよい。宛先デバイス120は、送信元デバイス110によって生成された、エンコーディングされたビデオデータをデコーディングすることができ、ビデオデコーディング装置として称されてよい。送信元デバイス110は、ビデオソース112、ビデオエンコーダ114、および入力/出力(I/O)インターフェイス116を含むことができる。
ビデオソース112は、ビデオキャプチャ装置といったソース、ビデオコンテンツ・プロバイダからビデオデータを受信するためのインターフェイス、及び/又は、ビデオデータを生成するためのコンピュータグラフィックスシステム、または、そのようなソースの組み合わせを含んでよい。ビデオデータは、1つ以上の画像を含んでよい。ビデオエンコーダ114は、ビデオソース112からのビデオデータをエンコーディングしてビットストリームを生成する。ビットストリームは、ビデオデータのコード化表現を形成するビットのシーケンスを含んでよい。ビットストリームは、コード化された画像および関連するデータを含んでよい。コード化画像は、画像のコード化表現である。関連するデータは、シーケンスパラメータセット、画像パラメータセット、および、他のシンタックス構造を含んでよい。I/Oインターフェイス116は、変調器/復調器(モデム)及び/又は送信器を含んでよい。エンコーディングされたビデオデータは、ネットワーク130aを通じてI/Oインターフェイス116を介して宛先デバイス120に対して直接的に送信され得る。エンコーディングされたビデオデータは、また、宛先デバイス120によるアクセスのためにストレージ媒体/サーバ130b上にも保管され得る。
宛先デバイス120は、I/Oインターフェイス126、ビデオデコーダ124、および、ディスプレイ装置122を含んでよい。
I/Oインターフェイス126は、受信器及び/又はモデムを含んでよい。I/Oインターフェイス126は、送信元デバイス110またはストレージ媒体/サーバ130bからエンコーディングされたビデオデータを取得することができる。ビデオデコーダ124は、エンコーディングされたビデオデータをデエンコーディングすることができる。ディスプレイ装置122は、デコードされたビデオデータをユーザに表示することができる。ディスプレイ装置122は、宛先デバイス120と一体化されてよく、または、外部ディスプレイ装置とインターフェイスするように構成された宛先デバイス120の外部にあってよい。
ビデオエンコーダ114及びビデオデコーダ124は、高効率ビデオコーディング(HEVC)標準、バーサタイルビデオコーディング(VVM)標準、および、その他の現在の、かつ/あるいは、さらなる標準といった、ビデオ圧縮標準に従って動作し得る。
図18は、ビデオエンコーダ200の一つの例を示しているブロック図であり、それは、図17に示されるシステム100内のビデオエンコーダ114であってよい。
ビデオエンコーダ200は、本開示の技術のいずれかまたは全てを実行するように構成することができる。図18の例では、ビデオエンコーダ200は、複数の機能コンポーネントを含む。本開示に記載される技術は、ビデオエンコーダ200の種々のコンポーネント間で共有され得る。いくつかの例において、プロセッサは、本開示に記載される技術のいずれかまたは全てを実行するように構成されてもよい。
ビデオエンコーダ200の機能コンポーネントは、パーティション(partition)ユニット201、モード選択ユニット203、動作推定ユニット204、動作補償ユニット205、イントラ予測ユニット206、残差(residual)生成ユニット207、変換ユニット208、量子化ユニット209、逆量子化ユニット210、逆変換ユニット211、再構成ユニット212、バッファ213、および、エントロピー符号化ユニット214を含んでよい。
他の例では、ビデオエンコーダ200は、より多くの、より少ない、または、異なる機能コンポーネントを含み得る。一つの例では、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含み得る。IBCユニットは、IBCモードで予測を実行することができ、そこでは、少なくとも1つの参照画像は、現在ビデオブロックが配置されている画像である。
さらに、動作推定ユニット204や動作補償ユニット205といった、いくつかのコンポーネントは、高度に統合されてもよいが、説明のために図18の例では別々に示されている。
パーティションユニット201は、画像を1つ以上のビデオブロックへと分割することができる。ビデオエンコーダ200およびビデオデコーダ300は、様々なビデオブロックサイズをサポートすることができる。
モード選択ユニット203は、例えば、エラー結果に基づいて、コーディングモードのうちの1つ、イントラまたはインター、を選択することができ、そして、結果として生じるイントラまたはインターコード化ブロックを、残留ブロックデータを生成するために残差生成ユニット207に、かつ、参照画像として使用するためにエンコーディングされたブロックを再構成するように再構成ユニット212に提供することができる。いくつかの例では、モード選択ユニット203は、結合イントラおよびインター予測(CIIP)モードを選択することができ、そこでは、予測が、インター予測信号およびイントラ予測信号に基づいている。モード選択ユニット203は、また、インター予測の場合に、ブロックに対する運動ベクトルの解像度(例えば、サブピクセルまたは整数ピクセル精度)を選択することもできる。
現在ビデオブロックについてインター予測を実行するために、動作推定ユニット204は、バッファ213から現在ビデオブロックへの1つ以上の参照フレームを比較することによって、現在ビデオブロックの動作情報を生成することができる。動作補償ユニット205は、現在ビデオブロックに関連する画像以外のバッファ213からの画像の動作情報及びデコーディングされたサンプルに基づいて、現在ビデオブロックについて予測されるビデオブロックを決定することができる。
動作推定ユニット204および動作補償ユニット205は、例えば、現在ビデオブロックがIスライス内にあるか、Pスライス内にあるか、または、Bスライス内にあるかによって、現在ビデオブロックに対して異なる動作を実行することができる。
いくつかの例において、動作推定ユニット204は、現在ビデオブロックに対して単一方向の予測を実行することができ、動作推定ユニット204は、現在ビデオブロックに対する参照ビデオブロックについてリスト0またはリスト1の参照画像を検索することができる。動作推定ユニット204は、次いで、リスト0またはリスト1内の参照ピクチャを示している基準インデックスを生成することができる。参照ビデオブロック、および、現在ビデオブロックと参照ビデオブロックとの間の空間的変位を示す動きベクトルを含むものである。動作推定ユニット204は、現在ビデオブロックの動作情報として、基準インデックス、予測方向インジケータ、及び動きベクトルを出力することができる。動作補償ユニット205は、現在ビデオブロックの動作情報によって示される参照ビデオブロックに基づいて、現在ブロックの予測ビデオブロックを生成することができる。
他の例において、動作推定ユニット204は、現在ビデオブロックについて双方向予測を実行することができ、動作推定ユニット204は、リスト0内の参照ピクチャを現在ビデオブロックについての参照ビデオブロックについて検索することができ、リスト1内の参照ピクチャを現在ビデオブロックについての別の参照ビデオブロックについても検索することができる。動作推定ユニット204は、次いで、リスト0およびリスト1内の参照ピクチャを示す基準インデックスを生成することができる。参照ビデオブロック、および、現在ビデオブロックと参照ビデオブロックとの間の空間的変位を示す動きベクトルを含んでいるものである。動作推定ユニット204は、現在ビデオブロックの動作情報として、現在ビデオブロックの基準インデックス及び動きベクトルを出力することができる。動作補償ユニット205は、現在ビデオブロックの動作情報によって示される参照ビデオブロックに基づいて、現在ビデオブロックの予測ビデオブロックを生成することができる。
いくつかの例において、動作推定ユニット204は、デコーダのデコーディング処理のための動作情報の全セットを出力することができる。
いくつかの例において、動作推定ユニット204は、現在のビデオに対する完全なセットの動作情報を出力しないことがある。むしろ、動作推定ユニット204は、他のビデオブロックの動作情報を参照して現在ビデオブロックの動作情報を信号化することができる。例えば、動作推定ユニット204は、現在ビデオブロックの動作情報が、隣接するビデオブロックの動作情報と十分に類似していると判断することができる。
一つの例において、動作推定ユニット204は、現在ビデオブロックに関連するシンタックス構造において、現在ビデオブロックが別のビデオブロックと同じ動作情報を有することをビデオデコーダ300に対して示す値を示すことができる。
別の例において、動作推定ユニット204は、現在ビデオブロックに関連するシンタックス構造において、別のビデオブロックおよび動きベクトル差(MVD)を識別することができる。動きベクトル差は、現在ビデオブロックの動きベクトルと、示されたビデオブロックの動きベクトルとの間の差を示している。ビデオデコーダ300は、示されたビデオブロックの動きベクトル、および、動きベクトル差を使用して、現在ビデオブロックの動きベクトルを決定することができる。
上述のように、ビデオエンコーダ200は、運動ベクトルを予測的に信号化することができる。ビデオエンコーダ200によって実現され得る予測信号化技術の2つの例は、高度な動きベクトル予測(AMVP)およびマージモード信号化を含む。
イントラ予測ユニット206は、現在ビデオブロックに対してイントラ予測を実行することができる。イントラ予測ユニット206が現在ビデオブロックに対してイントラ予測を行う場合、イントラ予測ユニット206は、同じピクチャ内の他のビデオブロックのデコーディングされたサンプルに基づいて、現在ビデオブロックに対する予測データを生成することができる。現在ビデオブロックに対する予測データは、予測されるビデオブロックおよび種々のシンタックス要素を含んでよい。
残差生成ユニット207は、現在ビデオブロックから現在ビデオブロックの予測ビデオブロックを差し引くことによって(例えば、マイナス記号によって示される)、現在ビデオブロックの残差データを生成することができる。現在ビデオブロックの残差データは、現在ビデオブロック内のサンプルの異なるサンプル成分に対応する、残差ビデオブロックを含んでよい。
他の例では、例えば、スキップモードにおいて、現在ビデオブロックについて現在ビデオブロックのための残差データが存在しないことがあり、残差生成ユニット207は減算動作を実行しないことがある。
変換処理ユニット208は、現在ビデオブロックに関連する残差ビデオブロックに対して1つ以上の変換を適用することによって、現在ビデオブロックのための1つ以上の変換係数ビデオブロックを生成することができる。
変換処理ユニット208が現在ビデオブロックに関連する変換係数ビデオブロックを生成した後で、量子化ユニット209は、現在ビデオブロックに関連する1つ以上の量子化パラメータ(QP)値に基づいて、現在ビデオブロックに関連する変換係数ビデオブロックを量子化することができる。
逆量子化ユニット210および逆変換ユニット211は、変換係数ビデオブロックから残差ビデオブロックを再構成するために、変換係数ビデオブロックに対して逆量子化および逆変換を、それぞれに、適用することができる。再構成ユニット212は、バッファ213内に保管するための現在ブロックに関連する再構成ビデオブロックを生成するために、予測ユニット202によって生成された1つ以上の予測ビデオブロックからの対応するサンプルに対して、再構成残差ビデオブロックを追加することができる。
再構成ユニット212がビデオブロックを再構成した後で、ループフィルタリング動作を実施して、ビデオブロック内のビデオブロッキングのアーチファクトを削減することができる。
エントロピー符号化ユニット214は、ビデオエンコーダ200の他の機能コンポーネントからデータを受信することができる。エントロピー符号化ユニット214がデータを受信すると、エントロピー符号化ユニット214は、エントロピー符号化データを生成し、かつ、エントロピー符号化データを含むビットストリームを出力するために、1つ以上のエントロピー符号化動作を実行することができる。
図19は、図17に示すシステム100内のビデオデコーダ114であり得る、ビデオデコーダ300の一つの例を示しているブロック図である。
ビデオデコーダ300は、本開示の技術のいずれか又は全てを実行するように構成することができる。図19の例では、ビデオデコーダ300は、複数の機能コンポーネントを含んでいる。本開示で説明される技術は、ビデオデコーダ300の種々のコンポーネント間で共有され得る。いくつかの例において、プロセッサは、本開示で説明される技術のいずれか又は全てを実行するように構成されてよい。
図19の例では、ビデオデコーダ300は、エントロピー復号化ユニット301、動作補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、再構成ユニット306、バッファ307を含んでいる。ビデオデコーダ300は、いくつかの例において、ビデオエンコーダ200(図18)に関して説明したコーディングパスと概ね相対する(reciprocal)デコーディングパスを実行することができる。
エントロピー復号化ユニット301は、符号化ビットストリームを検索することができる。符号化ビットストリームは、エントロピー符号化ビデオデータ(例えば、ビデオデータのコード化ブロック)を含み得る。エントロピー復号化ユニット301は、エントロピー符号化ビデオデータを復号することができ、そして、エントロピー復号化ビデオデータから、動作補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および、他の動作情報を含んでいる動作情報を決定することができる。動作補償ユニット302は、例えば、AMVP及びマージモードを実行することによって、そうした情報を決定することができる。
動作補償ユニット302は、動作補償ブロックを生成することができ、補償フィルタに基づいて補間をおそらく実行する。サブピクセル精度で使用される補間フィルタのための識別子は、シンタックス要素に含まれてよい。
動作補償ユニット302は、ビデオブロックのエンコーディングの最中にビデオエンコーダ20によって使用される補間フィルタを使用して、参照ブロックのサブ整数ピクセルに対する補間値を計算することができる。動作補償ユニット302は、受信されたシンタックス情報に従って、ビデオエンコーダ200によって使用される補間フィルタを決定し、かつ、予測ブロックを生成するために補間フィルタを使用することができる。
動作補償ユニット302は、エンコーディングされたビデオシーケンスのフレーム及び/又はスライスをエンコーディングするために使用されるブロックのサイズ、エンコーディングされたビデオシーケンスの画像の各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのようにエンコーディングされるかを示しているモード、各相互コード化ブロックに対する1つ以上の参照フレーム(および参照フレームリスト)、および、エンコーディングされたビデオシーケンスをデコーディングするための他の情報を決定するために、シンタックス情報のいくつかを使用することができる。
イントラ予測ユニット303は、例えば、ビットストリームで受信されたイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成することができる。逆量子化ユニット303は、ビットストリーム内で提供され、エントロピー復号化ユニット301によって復号される量子化ビデオブロック係数を逆量子化、すなわち、脱量子化(de-quantize)する。逆変換ユニット303は、逆変換を適用する。
再構成ユニット306は、残差ブロックを、動作補償ユニット202またはイントラ予測ユニット303によって生成された対応する予測ブロックと合算して、デコーディングされたブロックを形成することができる。所望であれば、ブロック性(blockiness)アーチファクトを除去するために、デコーディングされたブロックをフィルタリングするようにデブロックフィルタも、また、適用されてよい。デコーディングされたビデオブロックは、次いで、バッファ307に保管され、バッファ307は、後続の動作補償/イントラ予測のための参照ブロックを提供し、そして、ディスプレイ装置上に提示するためのデコーディングされたビデオも、また、生成する。
いくつかの実施形態では、ALWIPモードまたはMIPモードにおいて、現在ビデオブロックの予測ブロックは、行および列ごとの平均化、それに続く行列乗算、それに続く補間によって決定され、予測ブロックが決定される。
図20は、マトリクスベースのイントラ予測のための例示的な方法2000に係る例示的なフローチャートを示している。動作2002は、ビデオの現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を、ルールに従って実行することを含み、ここで、ルールは、現在ビデオブロックのサンプルと、マトリクス加重イントラ予測(MIP)モードで適用されるマトリクスまたはオフセット値との間の関係を、変換の最中に指定する。そして、ここで、MIPモードは、ビデオの以前にコード化されたサンプルに対して、境界ダウンサンプリング操作を行い、それに続いて、行列ベクトル乗算操作を行い、そして、選択的に、それに続いてアップサンプリング操作を行うことによって、現在ビデオブロックの予測ブロックを決定することを含む。
方法2000の実施形態において、ルールは、MIPモードで適用されるマトリクスの要素がサンプルのビット深度に依存することを規定している。方法2000の実施形態において、ルールは、MIPモードで適用されるオフセット値がサンプルのビット深度に依存することを規定している。方法2000の実施形態において、ルールは、マトリクスの要素およびオフセット値が、Nビット精度を有するサンプルに対してMビット精度を有することを規定している。ここで、MはN以下である。方法2000の実施形態において、Mは8であり、Nは10である。方法2000の実施形態において、サンプルのビット深度は、色成分に対する入力アレイの第2ビット深度と同じである。方法2000の実施形態において、サンプルのビット深さは、色成分についての内部アレイまたは再構成されたサンプルの第2ビット深さと同じである。方法2000のいくつかの実施態様において、色成分は、ルマ成分を含む。方法2000の実施形態において、現在ビデオブロックのマトリクス及び/又はオフセット値のパラメータの第1セットは、別のビデオブロックのマトリクスの第2セット、及び/又は、オフセット値の第2セットに係るパラメータの第2セットから導出される。方法2000のいくつかの実施態様において、現在ビデオブロックは、8×8ビデオブロックを含み、別のビデオブロックは、4×4ビデオブロックを含み、16×8マトリクスのパラメータの第1セットは、16×4マトリクスのパラメータの第2セットから導出される。
図21は、マトリクスベースのイントラ予測のための例示的な方法2100に係る例示的なフローチャートを示している。動作2102は、現在ビデオブロックに対して、マトリクス加重イントラ予測(MIP)モードを使用して中間予測ブロックを生成することを含み、ここで、現在ビデオブロックの中間予測ブロックは、ビデオの以前にコード化されたサンプルに対して境界ダウンサンプリング操作を行い、それに続いて、行列ベクトル乗算操作を行い、そして、選択的に、それに続いてアップサンプリング操作を行うことによって決定される。動作2104は、中間予測ブロックに基づいて、追加的操作に基づいた最終予測ブロックを生成することを含む。動作2106は、最終予測信号に基づいて、現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行することを含む。
方法2100のいくつかの実施形態において、追加的操作は、位置依存イントラ予測組み合わせ(position dependent intra prediction combination、PDPC)である。方法2100の実施形態において、PDPCを使用して最終予測信号を生成することを含む第1動作は、イントラ予測モードを使用して生成される予測信号にPDPCを適用することを含む第2動作と同一である。方法2100のいくつかの実施形態において、イントラ予測モードは、平面モードまたはDCモードを含む。方法2100のいくつかの実施形態において、PDPCを使用して最終予測信号を生成することを含む第1動作は、イントラ予測モードを使用して生成される予測信号にPDPCを適用することを含む第2動作と同一であり、イントラ予測モードは、MIPモードから変換される。
方法2100のいくつかの実施形態において、PDPCは、ルールに基づいて、現在ビデオブロックの中間予測ブロックに適用される。方法2100の実施形態において、ルールは、PDPCが、MIPモードから変換されるイントラ予測モードによって生成される予測信号に適用されるPDPCに応答して、現在ビデオブロックの中間予測ブロックに適用されることを示している。方法2100のいくつかの実施形態において、追加的操作は、現在ビデオブロックの境界サンプルが、現在ビデオブロックの隣接サンプルでフィルタリングされるフィルタリング動作である。方法2100のいくつかの実施形態において、MIPモードでコード化された現在ビデオブロックの境界サンプルをフィルタリングするためのフィルタリング動作は、イントラ予測モードを使用して境界サンプルをフィルタリングするための別のフィルタリング動作と同一である。
方法2100のいくつかの実施形態において、イントラ予測モードは、平面モードまたは直流(direct current、DC)モードを含む。方法2100のいくつかの実施形態において、MIPモードで符号化された現在ビデオブロックの境界サンプルをフィルタリングするためのフィルタリング動作は、イントラ予測モードを使用して境界サンプルをフィルタリングするための別のフィルタリング動作と同一であり、イントラ予測モードは、MIPモードから変換される。方法2100のいくつかの実施形態において、フィルタリング動作は、ルールに基づいて適用される。方法2100のいくつかの実施形態において、このルールは、MIPモードから変換されるイントラ予測モードでフィルタリングされる境界サンプルに応答して、境界サンプルをフィルタリングするためにフィルタリング動作が適用されることを示している。
図22は、マトリクスベースのイントラ予測のための例示的な方法2200に係る例示的なフローチャートを示している。動作2202は、ビデオの現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行することを含み、この変換は、現在ビデオブロックの少なくとも一部の複数のサンプルをマトリクス加重イントラ予測(MIP)モードで予測するステップを含み、ここで、現在ビデオブロックの一部の予測ブロックは、ビデオの以前にコード化されたサンプルに対して境界ダウンサンプリング操作を行い、それに続いて、行列ベクトル乗算操作を行い、そして、選択的に、それに続いてアップサンプリング操作を行うことによって決定される。
方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、現在ビデオブロックは、幅(W)および高さ(H)を有し、サブブロックは、幅(sW)および高さ(sH)を有し、そして、サブブロックの複数のサンプルは、MIPをサブブロックに適用することによって予測される。方法2200のいくつかの実施形態において、幅(sW)および高さ(sH)を有するサブブロックの複数のサンプルは、現在ビデオブロックの左隣接サンプル、または現在ビデオブロックの上隣接サンプルを含む。方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、現在ビデオブロックは、幅(W)および高さ(H)を有し、サブブロックは、現在ビデオブロックの左上のW/2*H/2ブロックであり、そして、サブブロックの複数のサンプルは、MIPをサブブロックに適用することによって予測される。方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、現在ビデオブロックは、幅(W)および高さ(H)を有し、サブブロックは、現在ビデオブロックの左W/2*Hブロックであり、そして、サブブロックの複数のサンプルは、MIPをサブブロックに適用することによって予測される。
方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、現在ビデオブロックは、幅(W)および高さ(H)を有し、サブブロックは、現在ビデオブロックの上W*H/2ブロックであり、そして、サブブロックの複数のサンプルは、MIPをサブブロックに適用することによって予測される。方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、現在ビデオブロックは、幅(W)および高さ(H)を有し、サブブロックは、幅(sW)および高さ(sH)を有し、そして、サブブロックの複数のサンプルは、現在ビデオブロックの左隣接サンプルを使用することにより、または、現在ビデオブロックの上隣接サンプルを使用することにより、サブブロックにMIPを適用することによって予測される。
方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、サブブロックの位置は、現在ビデオブロックの幅(W)と高さ(H)との間の関係に基づいている。方法2200のいくつかの実施形態において、サブブロックは、W≧Hに応答する現在ビデオブロックの左W/2*Hブロックであり、そして、サブブロックの複数のサンプルは、MIPをサブブロックに適用することによって予測される。方法2200のいくつかの実施形態において、サブブロックは、H≧Wに応答する現在ビデオブロックの上W*H/2ブロックであり、そして、サブブロックの複数のサンプルは、MIPをサブブロックに適用することによって予測される。
方法2200のいくつかの実施形態において、サブブロックは、W=Hに応答して、現在ビデオブロックの左上W/2*H/2ブロックであり、そして、サブブロックの複数のサンプルは、MIPをサブブロックに適用することによって予測される。方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、そして、本方法は、さらに、現在ビデオブロックのサンプルの第2セットを予測することを含み、ここで、サンプルの第2セットは、サブブロックの外側に配置されており、そして、ここで、サンプルの第2セットは、MIPを現在ビデオブロックに適用することによって予測される。
方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、そして、ここで、本方法は、さらに、現在ビデオブロックのサンプルの第2セットを予測することを含み、ここで、サンプルの第2セットは、サブブロックの外側に配置されており、そして、ここで、サンプルの第2セットは、現在ビデオブロックにイントラ予測モードを適用することによって予測され、そして、ここで、イントラ予測モードは、MIPモードから変換される。方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックのサブブロックに属し、そして、ここで、本方法は、さらに、現在ビデオブロックのサンプルの第2セットを予測することを含み、ここで、サンプルの第2セットは、サブブロックの外側に配置されており、そして、ここで、サンプルの第2セットは、サブブロックを除外する現在ビデオブロックの領域にMIPを適用することによって予測される。
方法2200のいくつかの実施形態において、複数のサンプルは、現在ビデオブロックの少なくとも1つのサブブロックに属する。方法2200のいくつかの実施形態において、各サブブロックについて、複数のサンプルが、MIPをサブブロックに適用することによって予測され、各サブブロックについて、MIPは、サブブロックについての隣接する再構成されたサンプルを使用することによって、及び/又は、サブブロックについての隣接する予測されたサンプルを使用することによって、サブブロックに適用される。方法2200のいくつかの実施形態において、隣接する再構成されたサンプルは、現在ビデオブロックの境界に位置するサブブロックに使用される。方法2200のいくつかの実施形態において、隣接する再構成されたサンプルは、サブブロックの境界の一部が現在ビデオブロックの境界の一部と同一の広がり(coextensive)を有さないように、現在ビデオブロック内に位置するサブブロックに使用される。方法2200のいくつかの実施形態において、複数のサブブロックは、ラスタ走査順序(raster-scan order)で予測される。方法2200のいくつかの実施形態において、複数のサブブロックは、ジグザグ順序で予測される。
方法2200のいくつかの実施形態において、少なくとも1つのサブブロックの幅および高さは、それぞれに、最大幅および最大高さ以下である。実施形態において、本方法2200は、さらに、現在ビデオブロックを、1つ以上の幅および現在ビデオブロックの高さのうちいずれか1つ以上が閾値以上であることに応答して、複数のサブブロックに分割することを含む。方法2200のいくつかの実施形態において、閾値は、事前に定義される。方法2200のいくつかの実施形態において、閾値は、シーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)、ピクチャヘッダ、スライスヘッダ、タイルグループヘッダ、またはタイルヘッダで信号化される。方法2200のいくつかの実施形態において、閾値は、現在ビデオブロックに関連するコード化情報に基づいている。方法2200のいくつかの実施形態において、コード化情報は、現在ビデオブロックのブロックサイズ、現在ビデオブロックの画像タイプ、または現在ビデオブロックの時間層(temporal layer)インデックスを含む。
図23は、マトリクスベースのイントラ予測のための例示的な方法2300に係る例示的なフローチャートを示している。動作2302は、ビデオの現在ビデオブロックと現在ビデオブロックのビットストリーム表現との間の変換を実行することを含み、ここで、変換は、変換の最中にマトリクス加重イントラ予測(MIP)モードを適用する以前に、現在ビデオブロックの隣接サンプルをフィルタリングするか否かを示すルールに基づいており、そして、ここで、MIPモードは、ビデオの以前にコード化されたサンプルに対して、境界ダウンサンプリング操作を行い、それに続いて、行列ベクトル乗算操作を行い、そして、選択的に、それに続いてアップサンプリング操作を行うことによって、現在ビデオブロックの予測ブロックを決定することを含む。
方法2300のいくつかの実施形態において、ルールは、MIPモードで使用される前に、隣接サンプルがフィルタリングされることを示している。方法2300のいくつかの実施形態において、ルールは、MIPモードで使用される前に、隣接サンプルがフィルタリングされないことを示している。方法2300のいくつかの実施形態において、ルールは、MIPモードが特定の値に等しいことに応答して、MIPモードで使用される前に、隣接サンプルがフィルタリングされることを示している。
本文書において、「ビデオ処理(“video processing”)」または「変換(“conversion”)」という用語は、ビデオエンコーディング、ビデオデコーディング、ビデオ圧縮、またはビデオ解凍を参照することができる。例えば、ビデオ圧縮アルゴリズムは、ビデオの画素表現から対応するビットストリーム表現への変換の最中に適用されてよく、その逆もまた同様である。現在ビデオブロックのビットストリーム表現は、例えば、シンタックスによって定義されるように、ビットストリーム内の異なる場所に同時配置され、または、拡散されるビットに対応し得る。例えば、マクロブロックは、変換され、かつ、コード化されたエラー残差値の観点から、また、ビットストリーム内のヘッダおよび他のフィールド内のビットを使用してエンコーディングされてもよい。さらに、変換の最中に、デコーダは、上述のソリューションで説明されるように、決定に基づいて、いくつかのフィールドが存在し得るか、または存在しないかの知識を用いて、ビットストリームを解析することができる。同様に、エンコーダは、特定のシンタックスフィールドが含まれているか、または含まれないかを決定し、そして、それに応じて、コード化表現にシンタックスフィールドを含めるか、または除外することによって、コード化表現を生成することができる。
以上から、説明の目的で、本開示の技術の特定の実施形態をここにおいて説明してきたが、本発明の範囲を逸脱することなく、種々の修正を行うことができることが理解されるだろう。従って、現在開示されている技術は、添付の請求項によるものを除いて、限定されるものではない。
この特許文献で説明されている技術的事項(subject matter)の実装および機能動作は、ここにおいて開示されている構造およびそれらの構造的等価物を含む、種々のシステム、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェアにおいて、または、それらの1つ以上の組み合わせにおいて実施することができる。ここにおいて説明される技術的事項の実装は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置による、またはデータ処理装置の動作を制御するための、有形および非一時的なコンピュータ読取り可能な媒体上にエンコーディングされたコンピュータプログラム命令の1つ以上のモジュールとして実装することができる。コンピュータ読取り可能な媒体は、マシンで読取り可能なストレージ装置、マシンで読取り可能なストレージ基板、メモリ装置、マシンで読取り可能な伝搬信号に影響を与える事項の組成、または、それらの1つ以上の組み合わせであり得る。用語「データ処理ユニット(“data processing unit”)」または「データ処理装置(“data processing apparatus”)」は、例えば、プログラマブルプロセッサ、コンピュータ、または、複数のプロセッサまたはコンピュータを含む、データを処理するための全ての装置、デバイス、およびマシンを包含する。装置は、ハードウェアに加えて、問題のコンピュータプログラムの実行環境を生成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、または、それらの1つ以上の組み合わせを構成するコードを含み得る。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られるもの)は、コンパイルまたは解釈された言語を含む、任意の形態のプログラミング言語で書くことができる。そして、それは、スタンドアロンプログラムとして、または、コンピューティング環境での使用に適したモジュール、コンポーネント、サブルーチン、または他のユニットとして、を含む、任意の形態で展開することができる。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応するものではない。プログラムは、他のプログラムまたはデータを保持するファイルの一部分(例えば、マークアップ言語文書に保管される1つ以上のスクリプト)、問題のプログラム専用の単一ファイル、または、複数の調整されたファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部分を保管するファイル)に保管することができる。コンピュータプログラムは、1つのコンピュータまたは1つのサイトに配置されるか、または、複数のサイトに分散され、通信ネットワークによって相互接続される複数のコンピュータ上で実行されるように展開され得る。
ここにおいて説明されるプロセスおよび論理フローは、入力データ上で動作し、出力を生成することによって機能を実行するために、1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって実行することができる。プロセスおよび論理フローは、また、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)のような特殊目的論理回路によって実行することができ、装置も、また、実行することができる。
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用および専用マイクロプロセッサの両方、および、任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般的に、プロセッサは、読出し専用メモリまたはランダムアクセスメモリ、またはその両方から命令およびデータを受信する。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令およびデータを保管するための1つ以上のメモリデバイスである。一般的に、コンピュータは、また、データを保管するための1つ以上の大容量ストレージ装置、例えば、磁気ディスク、磁気光ディスク、または光ディスクからデータを受信し、または、データを転送するために動作可能に結合される。しかし、コンピュータは、そのような装置を有する必要はない。コンピュータプログラム命令及びデータを保管するのに適したコンピュータ読取り可能な媒体は、例えば、EPROM、EEPROM、及びフラッシュメモリデバイスのような半導体メモリデバイスを含む、あらゆる形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサおよびメモリは、特殊目的論理回路によって補足されるか、または内蔵され得る。
明細書は、図面と共に、単に例示的なものとみなされる。ここで、例示的は、一つの例を意味するものである。ここにおいて使用されるように、「または(“or”)」の使用は、コンテキストが他のことを明確に示さない限り、「及び/又は(“and/or”)」を含むように意図されている。
この特許文献には多くの詳細が含まれているが、これらは、いずれかの発明の範囲または特許請求されることができるものを限定するものではなく、特定の発明の特定の実施形態に特有な特徴の説明として解釈されるべきである。別個の実施形態のコンテキストでこの特許文献に記載されている特定の特徴は、単一の実施形態で組み合わせて実施することもできる。逆に、単一の実施形態のコンテキストにおいて説明される種々の特徴は、複数の実施形態において別々に、または、任意の適切なサブコンビネーションで実施することもできる。さらに、特徴は、特定の組み合わせにおいて作用するものとして上述され、最初にそのように請求されてよいが、請求された組み合わせからの1つ以上の特徴は、場合によって、組み合わせから切り出されてよく、請求された組み合わせは、サブコンビネーション又はサブコンビネーションのバリエーションに向けられてよい。
同様に、図面には特定の順序で動作が示されているが、これは、所望の結果を達成するために、このような動作を特定の順序で、または、連続的な順序で実行すること、もしくは、例示された全ての動作を実行することを要求するものとして理解されるべきではない。さらに、この特許文献において説明されている実施形態における種々のシステムコンポーネントの分離は、そうした分離を全ての実施形態において必要とするものとして理解されるべきではない。
少数の実施形態および実施例のみが記述されており、この特許文献に記載され、かつ、説明されている内容に基づいて、他の実施形態、拡張、およびバリエーションが行われ得る。
Claims (18)
- ビデオデータを処理する方法であって、
ビデオの第1ビデオブロックと前記ビデオのビットストリームとの間の第1変換のために、前記ビデオの前記第1ビデオブロックについて第1イントラモードが適用されることを決定するステップと、
前記第1ビデオブロックの参照サンプルを導出するステップと、
前記第1ビデオブロックに対する予測サンプルを生成するために、前記第1ビデオブロックのサイズに基づいて、前記第1ビデオブロックの前記参照サンプルについて、境界ダウンサンプリング操作、それに続く、行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作実行する、ステップと、
前記第1ビデオブロックの前記予測サンプルに基づいて、前記第1変換を実行するステップと、を含み、
前記行列ベクトル乗算操作において適用されるマトリクスの要素またはオフセット値は、固定の精度を有する、
方法。 - 前記固定の精度は、8ビット精度である、
請求項1に記載の方法。 - 前記第1ビデオブロックおよび前記参照サンプルの精度は、10ビット深さである、
請求項1または2に記載の方法。 - 異なるサイズを有する少なくとも2つのブロックが、前記第1イントラモードにおいて、同じサイズを有するマトリクスを共有する、
請求項1乃至3いずれか一項に記載の方法。 - 前記参照サンプルは、参照サンプルフィルタリング操作を呼び出すことなく導出される、
請求項1乃至4いずれか一項に記載の方法。 - 前記参照サンプルフィルタリング操作は、前記第1イントラモードとは異なる通常のイントラモードにおいて適用される、
請求項5に記載の方法。 - 前記第1イントラモードが適用されているか否かは、シーケンスレベルで提示される第1シンタックス要素およびコーディングユニットレベルで提示される第2シンタックス要素によって特定される、
請求項1乃至6いずれか一項に記載の方法。 - 前記第2シンタックス要素の少なくとも1つのビンは、コンテキストベースでコード化される、
請求項7に記載の方法。 - 前記第1ビデオブロックの幅-高さ比率が2より大きいことに応答して、前記第2シンタックス要素の第1ビンについて、3のインデックスを有するコンテキストが使用される、
請求項8に記載の方法。 - 前記第1ビデオブロックの幅-高さ比率が2以下であることに応答して、前記第2シンタックス要素の第1ビンについて、0、1、または2のインデックスを有するコンテキストから選択された単一のコンテキストが使用される、
請求項8に記載の方法。 - 前記境界ダウンサンプリング操作は、少なくとも1つの参照サンプルの合計に対して左ビットシフト動作または右ビットシフト動作を適用することによって、ルールに従って、境界サンプルを導出するステップ、を含み、かつ、
前記ルールは、前記左ビットシフト動作または前記右ビットシフト動作のいずれを適用するかを決定する、
請求項1乃至10いずれか一項に記載の方法。 - 前記ルールは、シフトされたビットの数がゼロより大きいことに応答して、右ビットシフト動作が適用されることを定義している、
請求項11に記載の方法。 - 前記変換は、現在ビデオブロックを前記ビットストリームへエンコーディングすることを含む、
請求項1乃至13いずれか一項に記載の方法。 - 前記変換は、前記ビットストリームから現在ビデオブロックをデコーディングすることを含む、
請求項1乃至13いずれか一項に記載の方法。 - プロセッサ、および、命令を含む非一時的なメモリを備える、ビデオデータを処理するための装置であって、前記プロセッサによって実行されると、前記命令は、前記プロセッサに、
ビデオの第1ビデオブロックと前記ビデオのビットストリームとの間の第1変換のために、前記ビデオの前記第1ビデオブロックについて第1イントラモードが適用されることを決定し、
前記第1ビデオブロックの参照サンプルを導出し、
前記第1ビデオブロックに対する予測サンプルを生成するために、前記第1ビデオブロックのサイズに基づいて、前記第1ビデオブロックの前記参照サンプルについて、境界ダウンサンプリング操作、それに続く、行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作実行し、かつ、
前記第1ビデオブロックの前記予測サンプルに基づいて、前記第1変換を実行する、
ようにさせ、
前記行列ベクトル乗算操作において適用されるマトリクスの要素またはオフセット値は、固定の精度を有する、
装置。 - 命令を保管している非一時的なコンピュータ読取り可能記憶媒体であって、前記命令は、プロセッサに、
ビデオの第1ビデオブロックと前記ビデオのビットストリームとの間の第1変換のために、前記ビデオの前記第1ビデオブロックについて第1イントラモードが適用されることを決定し、
前記第1ビデオブロックの参照サンプルを導出し、
前記第1ビデオブロックに対する予測サンプルを生成するために、前記第1ビデオブロックのサイズに基づいて、前記第1ビデオブロックの前記参照サンプルについて、境界ダウンサンプリング操作、それに続く、行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作実行し、かつ、
前記第1ビデオブロックの前記予測サンプルに基づいて、前記第1変換を実行する、
ようにさせ、
前記行列ベクトル乗算操作において適用されるマトリクスの要素またはオフセット値は、固定の精度を有する、
非一時的なコンピュータ読取り可能記憶媒体。 - ビデオ処理装置によって実行される方法によって生成されたビデオのビットストリームを保管している非一時的なコンピュータ読取可能な記録媒体であって、前記方法は、
ビデオの第1ビデオブロックについて第1イントラモードが適用されることを決定するステップと、
前記第1ビデオブロックの参照サンプルを導出するステップと、
前記第1ビデオブロックに対する予測サンプルを生成するために、前記第1ビデオブロックのサイズに基づいて、前記第1ビデオブロックの前記参照サンプルについて、境界ダウンサンプリング操作、それに続く、行列ベクトル乗算操作、および、選択的にそれに続くアップサンプリング操作実行する、ステップと、
前記第1ビデオブロックの前記予測サンプルに基づいて、前記ビットストリームを生成するステップと、を含み、
前記行列ベクトル乗算操作において適用されるマトリクスの要素またはオフセット値は、固定の精度を有する、
非一時的なコンピュータ読取可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023150924A JP2023169300A (ja) | 2019-04-16 | 2023-09-19 | イントラコーディングモードにおけるマトリクスの導出 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019082813 | 2019-04-16 | ||
CNPCT/CN2019/082813 | 2019-04-16 | ||
PCT/CN2020/085050 WO2020211807A1 (en) | 2019-04-16 | 2020-04-16 | Matrix derivation in intra coding mode |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023150924A Division JP2023169300A (ja) | 2019-04-16 | 2023-09-19 | イントラコーディングモードにおけるマトリクスの導出 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2022529432A JP2022529432A (ja) | 2022-06-22 |
JPWO2020211807A5 true JPWO2020211807A5 (ja) | 2022-08-10 |
JP7403555B2 JP7403555B2 (ja) | 2023-12-22 |
Family
ID=72838026
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021560955A Active JP7403555B2 (ja) | 2019-04-16 | 2020-04-16 | イントラコーディングモードにおけるマトリクスの導出 |
JP2023150924A Pending JP2023169300A (ja) | 2019-04-16 | 2023-09-19 | イントラコーディングモードにおけるマトリクスの導出 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023150924A Pending JP2023169300A (ja) | 2019-04-16 | 2023-09-19 | イントラコーディングモードにおけるマトリクスの導出 |
Country Status (6)
Country | Link |
---|---|
US (3) | US11457207B2 (ja) |
EP (1) | EP3939270A4 (ja) |
JP (2) | JP7403555B2 (ja) |
KR (1) | KR20210145757A (ja) |
CN (2) | CN113748676B (ja) |
WO (1) | WO2020211807A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117336469A (zh) | 2019-04-12 | 2024-01-02 | 北京字节跳动网络技术有限公司 | 根据基于矩阵的帧内预测的变换编码 |
KR20210145757A (ko) * | 2019-04-16 | 2021-12-02 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 인트라 코딩 모드에서의 행렬 도출 |
BR112021019205A2 (pt) * | 2019-04-17 | 2021-11-30 | Huawei Tech Co Ltd | Codificador, decodificador e métodos correspondentes que harmonizam predição intra com base em matriz e seleção de núcleo de transformada secundária |
JP2022531147A (ja) | 2019-05-01 | 2022-07-06 | 北京字節跳動網絡技術有限公司 | フィルタリングを用いた行列ベースイントラ予測 |
WO2020221372A1 (en) | 2019-05-01 | 2020-11-05 | Beijing Bytedance Network Technology Co., Ltd. | Context coding for matrix-based intra prediction |
KR20220011127A (ko) | 2019-05-22 | 2022-01-27 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 업샘플링을 이용한 행렬 기반 인트라 예측 |
CN114051735A (zh) | 2019-05-31 | 2022-02-15 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测中的一步下采样过程 |
CN117768652A (zh) | 2019-06-05 | 2024-03-26 | 北京字节跳动网络技术有限公司 | 视频处理方法、装置、介质、以及存储比特流的方法 |
WO2020259630A1 (en) * | 2019-06-28 | 2020-12-30 | Mediatek Inc. | Method and apparatus of matrix based intra prediction in image and video processing |
WO2021034161A1 (ko) * | 2019-08-22 | 2021-02-25 | 엘지전자 주식회사 | 인트라 예측 장치 및 방법 |
EP4042689A4 (en) | 2019-10-28 | 2023-06-07 | Beijing Bytedance Network Technology Co., Ltd. | SIGNALING AND SYNTAX ANALYSIS BASED ON A COLOR COMPONENT |
US11683514B2 (en) * | 2020-12-22 | 2023-06-20 | Tencent America LLC | Method and apparatus for video coding for machine |
US20220337875A1 (en) * | 2021-04-16 | 2022-10-20 | Tencent America LLC | Low memory design for multiple reference line selection scheme |
Family Cites Families (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100323676B1 (ko) | 2000-01-27 | 2002-02-07 | 구자홍 | 디지털 동영상 수신 장치 |
US8340177B2 (en) | 2004-07-12 | 2012-12-25 | Microsoft Corporation | Embedded base layer codec for 3D sub-band coding |
CN100461867C (zh) | 2004-12-02 | 2009-02-11 | 中国科学院计算技术研究所 | 一种帧内图像预测编码方法 |
JP5026092B2 (ja) | 2007-01-12 | 2012-09-12 | 三菱電機株式会社 | 動画像復号装置および動画像復号方法 |
KR101365575B1 (ko) | 2007-02-05 | 2014-02-25 | 삼성전자주식회사 | 인터 예측 부호화, 복호화 방법 및 장치 |
CN101848383A (zh) | 2009-03-24 | 2010-09-29 | 虹软(上海)科技有限公司 | 对mpeg2格式视频进行降采样解码的方法 |
US20120069906A1 (en) | 2009-06-09 | 2012-03-22 | Kazushi Sato | Image processing apparatus and method (as amended) |
CN101646081A (zh) | 2009-06-18 | 2010-02-10 | 杭州高特信息技术有限公司 | 一种avs快速帧内预测方法及装置 |
CN102045560B (zh) | 2009-10-23 | 2013-08-07 | 华为技术有限公司 | 一种视频编解码方法及设备 |
KR20110045949A (ko) | 2009-10-28 | 2011-05-04 | 삼성전자주식회사 | 회전 변환을 이용한 영상 부호화, 복호화 방법 및 장치 |
JP5544996B2 (ja) | 2010-04-09 | 2014-07-09 | ソニー株式会社 | 画像処理装置および方法 |
CN102377993B (zh) | 2010-08-05 | 2014-09-03 | 富士通株式会社 | 帧内预测模式选择方法和系统 |
US8885701B2 (en) | 2010-09-08 | 2014-11-11 | Samsung Electronics Co., Ltd. | Low complexity transform coding using adaptive DCT/DST for intra-prediction |
US8923395B2 (en) | 2010-10-01 | 2014-12-30 | Qualcomm Incorporated | Video coding using intra-prediction |
CN101977316B (zh) | 2010-10-27 | 2012-07-25 | 无锡中星微电子有限公司 | 一种可伸缩编码方法 |
US9167252B2 (en) | 2010-12-01 | 2015-10-20 | Texas Instruments Incorporated | Quantization matrix compression in video coding |
KR102086145B1 (ko) | 2010-12-13 | 2020-03-09 | 한국전자통신연구원 | 인트라 예측 방법 및 그 장치 |
CN103314588B (zh) | 2011-01-07 | 2016-05-11 | 联发科技(新加坡)私人有限公司 | 编码方法与装置以及解码方法与装置 |
US8861593B2 (en) | 2011-03-15 | 2014-10-14 | Sony Corporation | Context adaptation within video coding modules |
JP2012238927A (ja) * | 2011-05-09 | 2012-12-06 | Sony Corp | 画像処理装置及び画像処理方法 |
US9894353B2 (en) | 2011-06-13 | 2018-02-13 | Sun Patent Trust | Method and apparatus for encoding and decoding video using intra prediction mode dependent adaptive quantization matrix |
CN102427530B (zh) | 2011-10-11 | 2013-10-23 | 北京工业大学 | 帧内预测方法 |
DK3300370T3 (da) | 2012-02-29 | 2019-05-20 | Sony Corp | Anordning og fremgangsmåde til billedbehandling |
JPWO2013154028A1 (ja) * | 2012-04-13 | 2015-12-17 | ソニー株式会社 | 画像処理装置および方法 |
US9277211B2 (en) | 2012-04-20 | 2016-03-01 | Futurewei Technologies, Inc. | Binarization scheme for intra prediction residuals and improved intra prediction in lossless coding in HEVC |
US9998727B2 (en) | 2012-09-19 | 2018-06-12 | Qualcomm Incorporated | Advanced inter-view residual prediction in multiview or 3-dimensional video coding |
US20160073107A1 (en) | 2013-04-15 | 2016-03-10 | Intellectual Discovery Co., Ltd | Method and apparatus for video encoding/decoding using intra prediction |
US10148971B2 (en) | 2013-09-24 | 2018-12-04 | Vid Scale, Inc. | Inter-layer prediction for scalable video coding |
AU2013403224B2 (en) * | 2013-10-14 | 2018-10-18 | Microsoft Technology Licensing, Llc | Features of intra block copy prediction mode for video and image coding and decoding |
US10110910B2 (en) * | 2013-10-21 | 2018-10-23 | Vid Scale, Inc. | Parallel decoding method for layered video coding |
AU2014362246B2 (en) | 2013-12-13 | 2018-01-25 | Vid Scale, Inc. | Color gamut scalable video coding device and method for the phase alignment of luma and chroma using interpolation |
WO2015103124A1 (en) * | 2014-01-02 | 2015-07-09 | Vid Scale, Inc. | Color space conversion |
US10182241B2 (en) | 2014-03-04 | 2019-01-15 | Microsoft Technology Licensing, Llc | Encoding strategies for adaptive switching of color spaces, color sampling rates and/or bit depths |
WO2016074147A1 (en) | 2014-11-11 | 2016-05-19 | Mediatek Singapore Pte. Ltd. | Separated coding tree for luma and chroma |
TWI511530B (zh) | 2014-12-09 | 2015-12-01 | Univ Nat Kaohsiung 1St Univ Sc | Distributed video coding system and decoder for distributed video coding system |
US10097839B2 (en) | 2014-12-19 | 2018-10-09 | Qualcomm Incorporated | Palette mode for subsampling format |
US10958927B2 (en) | 2015-03-27 | 2021-03-23 | Qualcomm Incorporated | Motion information derivation mode determination in video coding |
CN113473120A (zh) | 2015-06-11 | 2021-10-01 | 英迪股份有限公司 | 使用自适应去块滤波编码和解码图像的方法及其装置 |
CN107736027B (zh) | 2015-06-12 | 2021-06-01 | 松下知识产权经营株式会社 | 图像编码方法、图像解码方法、图像编码装置及图像解码装置 |
KR20180008797A (ko) | 2015-06-15 | 2018-01-24 | 엘지전자 주식회사 | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
US20160373770A1 (en) * | 2015-06-18 | 2016-12-22 | Qualcomm Incorporated | Intra prediction and intra mode coding |
US20160373782A1 (en) | 2015-06-18 | 2016-12-22 | Qualcomm Incorporated | Intra prediction and intra mode coding |
US20160373742A1 (en) | 2015-06-18 | 2016-12-22 | Qualcomm Incorporated | Intra prediction and intra mode coding |
US10142627B2 (en) | 2015-06-18 | 2018-11-27 | Qualcomm Incorporated | Intra prediction and intra mode coding |
US10841593B2 (en) | 2015-06-18 | 2020-11-17 | Qualcomm Incorporated | Intra prediction and intra mode coding |
US11477484B2 (en) | 2015-06-22 | 2022-10-18 | Qualcomm Incorporated | Video intra prediction using hybrid recursive filters |
CN113810691A (zh) | 2015-07-08 | 2021-12-17 | 交互数字麦迪逊专利控股公司 | 用于使用交叉平面滤波的增强色度编码的方法和装置 |
TWI764870B (zh) | 2015-07-28 | 2022-05-21 | 法商內數位麥德遜專利控股有限公司 | 視訊訊號處理裝置及方法 |
US10491922B2 (en) | 2015-09-29 | 2019-11-26 | Qualcomm Incorporated | Non-separable secondary transform for video coding |
KR20180059482A (ko) | 2015-10-22 | 2018-06-04 | 엘지전자 주식회사 | 비디오 코딩 시스템에서 인트라 예측 방법 및 장치 |
US20180332292A1 (en) * | 2015-11-18 | 2018-11-15 | Mediatek Inc. | Method and apparatus for intra prediction mode using intra prediction filter in video and image compression |
US10200719B2 (en) | 2015-11-25 | 2019-02-05 | Qualcomm Incorporated | Modification of transform coefficients for non-square transform units in video coding |
US10448011B2 (en) | 2016-03-18 | 2019-10-15 | Mediatek Inc. | Method and apparatus of intra prediction in image and video processing |
CN113438477A (zh) | 2016-04-06 | 2021-09-24 | 株式会社Kt | 对视频进行编码、解码的方法及存储压缩视频数据的设备 |
KR20190015216A (ko) | 2016-05-05 | 2019-02-13 | 브이아이디 스케일, 인크. | 인트라 코딩을 위한 제어 포인트 기반의 인트라 방향 표현 |
KR20180136555A (ko) | 2016-06-03 | 2018-12-24 | 엘지전자 주식회사 | 영상 코딩 시스템에서 인트라 예측 방법 및 장치 |
US10484712B2 (en) | 2016-06-08 | 2019-11-19 | Qualcomm Incorporated | Implicit coding of reference line index used in intra prediction |
US20170374369A1 (en) | 2016-06-24 | 2017-12-28 | Mediatek Inc. | Methods and Apparatuses of Decoder Side Intra Mode Derivation |
CN116708776A (zh) | 2016-07-18 | 2023-09-05 | 韩国电子通信研究院 | 图像编码/解码方法和装置以及存储比特流的记录介质 |
GB2552323B (en) | 2016-07-18 | 2020-04-29 | Imagination Tech Ltd | Mip map compression |
US10368107B2 (en) | 2016-08-15 | 2019-07-30 | Qualcomm Incorporated | Intra video coding using a decoupled tree structure |
US10721489B2 (en) | 2016-09-06 | 2020-07-21 | Qualcomm Incorporated | Geometry-based priority for the construction of candidate lists |
EP3516869B1 (en) | 2016-10-04 | 2022-06-08 | HFI Innovation Inc. | Method and apparatus for intra chroma coding in image and video coding |
CN116916018A (zh) | 2016-10-28 | 2023-10-20 | 韩国电子通信研究院 | 视频编码/解码方法和设备以及存储比特流的记录介质 |
US20180199062A1 (en) * | 2017-01-11 | 2018-07-12 | Qualcomm Incorporated | Intra prediction techniques for video coding |
CN110622515A (zh) | 2017-05-09 | 2019-12-27 | 谷歌有限责任公司 | 定向帧内预测代码化 |
US10951908B2 (en) | 2017-05-24 | 2021-03-16 | Lg Electronics Inc. | Method and device for decoding image according to intra prediction in image coding system |
KR102622465B1 (ko) | 2017-06-21 | 2024-01-09 | 엘지전자 주식회사 | 영상 코딩 시스템에서 인트라 예측에 따른 영상 디코딩 방법 및 장치 |
CN117499634A (zh) | 2017-07-06 | 2024-02-02 | Lx 半导体科技有限公司 | 图像编码/解码方法、发送方法和数字存储介质 |
CN109302608B (zh) | 2017-07-25 | 2021-06-22 | 华为技术有限公司 | 图像处理方法、设备及系统 |
US11172203B2 (en) | 2017-08-08 | 2021-11-09 | Mediatek Inc. | Intra merge prediction |
WO2019050385A2 (ko) | 2017-09-07 | 2019-03-14 | 엘지전자 주식회사 | 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치 |
KR102487032B1 (ko) | 2018-02-14 | 2023-01-11 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | 레이트 왜곡 최적화를 이용한 비디오 코딩에서의 이미지 재성형 |
WO2019172676A1 (ko) | 2018-03-08 | 2019-09-12 | 삼성전자 주식회사 | 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치 |
KR20200028856A (ko) | 2018-09-07 | 2020-03-17 | 김기백 | 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치 |
BR112021004890A2 (pt) * | 2018-09-13 | 2021-06-01 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e. V. | intrapredições ponderadas lineares afins |
CN117880501A (zh) | 2018-10-07 | 2024-04-12 | 三星电子株式会社 | 用于编码或解码视频信号的视频信号处理方法和设备 |
CA3118882C (en) | 2018-11-08 | 2023-09-26 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Refinement of motion vector derived from merge candidate based on offset vector |
BR112021011929A2 (pt) * | 2018-12-20 | 2021-09-08 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Unidade de armazenamento não transitória, decodificador para decodificação e codificador para codificação de uma figura a partir de um fluxo contínuo de dados e método de decodificação e codificação |
US11445203B2 (en) | 2019-01-04 | 2022-09-13 | Qualcomm Incorporated | Sub-partition intra prediction in video coding |
WO2020175915A1 (ko) | 2019-02-26 | 2020-09-03 | 주식회사 엑스리스 | 영상 신호 부호화/복호화 방법 및 이를 위한 장치 |
KR102608847B1 (ko) | 2019-02-28 | 2023-12-04 | 애플 인크. | 영상 신호 부호화/복호화 방법 및 이를 위한 장치 |
CN112673637A (zh) | 2019-03-12 | 2021-04-16 | 株式会社 Xris | 用于对图像信号进行编码/解码的方法及其装置 |
US11134257B2 (en) | 2019-04-04 | 2021-09-28 | Tencent America LLC | Simplified signaling method for affine linear weighted intra prediction mode |
CN117336469A (zh) | 2019-04-12 | 2024-01-02 | 北京字节跳动网络技术有限公司 | 根据基于矩阵的帧内预测的变换编码 |
KR20210145757A (ko) * | 2019-04-16 | 2021-12-02 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 인트라 코딩 모드에서의 행렬 도출 |
WO2020218793A1 (ko) | 2019-04-20 | 2020-10-29 | 엘지전자 주식회사 | Bdpcm에 기반한 영상 코딩 방법 및 그 장치 |
US11381808B2 (en) | 2019-04-25 | 2022-07-05 | Hfi Innovation Inc. | Method and apparatus of matrix based intra prediction in image and video processing |
EP4340367A3 (en) * | 2019-04-27 | 2024-04-24 | Huawei Technologies Co., Ltd. | An encoder, a decoder and corresponding methods of intra prediction |
CN113785566A (zh) | 2019-04-27 | 2021-12-10 | 韦勒斯标准与技术协会公司 | 基于帧内预测处理视频信号的方法和设备 |
WO2020221372A1 (en) * | 2019-05-01 | 2020-11-05 | Beijing Bytedance Network Technology Co., Ltd. | Context coding for matrix-based intra prediction |
JP2022531147A (ja) | 2019-05-01 | 2022-07-06 | 北京字節跳動網絡技術有限公司 | フィルタリングを用いた行列ベースイントラ予測 |
US11284093B2 (en) | 2019-05-09 | 2022-03-22 | Qualcomm Incorporated | Affine linear weighted intra prediction in video coding |
US11363284B2 (en) | 2019-05-09 | 2022-06-14 | Qualcomm Incorporated | Upsampling in affine linear weighted intra prediction |
TWI771679B (zh) | 2019-05-10 | 2022-07-21 | 弗勞恩霍夫爾協會 | 以區塊為基礎之預測技術 |
US20230057982A1 (en) * | 2019-05-15 | 2023-02-23 | Beijing Bytedance Network Technology Co., Ltd. | Matrix-based intra prediction using filtering |
KR20220011127A (ko) | 2019-05-22 | 2022-01-27 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 업샘플링을 이용한 행렬 기반 인트라 예측 |
CN114051735A (zh) | 2019-05-31 | 2022-02-15 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测中的一步下采样过程 |
CN117768652A (zh) | 2019-06-05 | 2024-03-26 | 北京字节跳动网络技术有限公司 | 视频处理方法、装置、介质、以及存储比特流的方法 |
EP3984229A4 (en) * | 2019-06-14 | 2022-07-06 | Telefonaktiebolaget Lm Ericsson (Publ) | SIMPLIFIED SUB-SAMPLING FOR MATRIX-BASED INTRA PREDICTION |
US11197025B2 (en) * | 2019-06-21 | 2021-12-07 | Qualcomm Incorporated | Signaling of matrix intra prediction parameters in video coding |
EP3886435A4 (en) | 2019-06-25 | 2022-01-26 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | MAPPING PROCESS, ENCODER, DECODER AND COMPUTER STORAGE MEDIA |
WO2021006612A1 (ko) | 2019-07-08 | 2021-01-14 | 현대자동차주식회사 | 동영상 데이터의 인트라 예측 코딩을 위한 방법 및 장치 |
CN110708559B (zh) * | 2019-09-03 | 2022-03-25 | 北京达佳互联信息技术有限公司 | 图像处理方法、装置及存储介质 |
US20210092405A1 (en) | 2019-09-19 | 2021-03-25 | Qualcomm Incorporated | Matrix combination for matrix-weighted intra prediction in video coding |
-
2020
- 2020-04-16 KR KR1020217032310A patent/KR20210145757A/ko not_active Application Discontinuation
- 2020-04-16 JP JP2021560955A patent/JP7403555B2/ja active Active
- 2020-04-16 WO PCT/CN2020/085050 patent/WO2020211807A1/en unknown
- 2020-04-16 CN CN202080028965.5A patent/CN113748676B/zh active Active
- 2020-04-16 CN CN202311457029.8A patent/CN117499656A/zh active Pending
- 2020-04-16 EP EP20791054.8A patent/EP3939270A4/en active Pending
-
2021
- 2021-08-11 US US17/399,879 patent/US11457207B2/en active Active
-
2022
- 2022-08-25 US US17/895,511 patent/US20220417503A1/en active Pending
-
2023
- 2023-09-19 JP JP2023150924A patent/JP2023169300A/ja active Pending
- 2023-11-06 US US18/502,636 patent/US20240080441A1/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7303325B2 (ja) | ビデオ処理方法、装置、記憶媒体、及び記憶方法 | |
JP7403555B2 (ja) | イントラコーディングモードにおけるマトリクスの導出 | |
KR102630415B1 (ko) | 코딩 된 비디오의 양자화된 잔차 차동 펄스 코드 변조 표현의 제약 | |
JP2024003124A (ja) | 行列ベースイントラ予測における制約されたアップサンプリングプロセス | |
JP2022534320A (ja) | マトリクスベースイントラ予測のためのコンテキスト決定 | |
CN114765685A (zh) | 基于多帧内预测模式的用于解码或编解码图像的技术 | |
JP2023164589A (ja) | フィルタリングを用いた行列ベースイントラ予測 | |
KR20220011127A (ko) | 업샘플링을 이용한 행렬 기반 인트라 예측 | |
JP7311627B2 (ja) | 量子化残差差分パルス符号変調符号化を使用したイントラ符号化映像 | |
CN113853791A (zh) | 数字视频中的变换旁路编解码残差块 | |
JPWO2020211807A5 (ja) | ||
RU2815175C2 (ru) | Составление списка наиболее вероятных режимов для матричного внутрикадрового предсказания |