JP7453374B2 - 幾何学的分割を用いた簡易インター予測 - Google Patents

幾何学的分割を用いた簡易インター予測 Download PDF

Info

Publication number
JP7453374B2
JP7453374B2 JP2022531615A JP2022531615A JP7453374B2 JP 7453374 B2 JP7453374 B2 JP 7453374B2 JP 2022531615 A JP2022531615 A JP 2022531615A JP 2022531615 A JP2022531615 A JP 2022531615A JP 7453374 B2 JP7453374 B2 JP 7453374B2
Authority
JP
Japan
Prior art keywords
block
mode
geo
equal
geometric
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.)
Active
Application number
JP2022531615A
Other languages
English (en)
Other versions
JP2023503683A (ja
Inventor
ジピン ドン
リー ジャン
ホンビン リウ
カイ ジャン
ジジョン シュー
ヤン ワン
ユエ ワン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd, ByteDance Inc filed Critical Beijing ByteDance Network Technology Co Ltd
Publication of JP2023503683A publication Critical patent/JP2023503683A/ja
Priority to JP2023188613A priority Critical patent/JP2024012506A/ja
Application granted granted Critical
Publication of JP7453374B2 publication Critical patent/JP7453374B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)

Description

関連出願の相互参照
願は、2020年11月27日出願の国際特許出願PCT/CN2020/132162号に基づくものであり、2019年11月30日出願の国際特許出願PCT/CN2019/122256号、2020年1月8日出願の国際特許出願PCT/CN2020/071032号、2020年1月10日出願の国際特許出願PCT/CN2020/071552号の優先権および利益を主張する。前述の全ての特許出願は、その全体が参照により本明細書に組み込まれる。
この特許明細書は、映像符号化・復号化の技術、デバイスおよびシステムに関する。
現在、現在の映像コーデック技術の性能を向上させ、より優れた圧縮率を実現するか、又はより低い複雑度又は並列化された実装を可能にする映像符号化及び復号化方式を提供する努力が行われている。産業界の専門家は、最近、いくつかの新しい映像コーディングツールを提案し、それらの有効性を判定するための試験が現在進行中である。
デジタル映像コーディングに関し、具体的には、動きベクトルの管理に関するデバイス、システム、および方法が記載される。説明される方法は、既存の映像コーディング規格(例えば、高効率映像コーディング(High Efficiency Video Coding、HEVC)又は多様な映像コーディング)及び将来の映像コーディング規格又は映像コーデックに適用され得る。
1つの代表的な態様において、開示される技術は、映像処理の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換を行うことを含み、変換中、現在の映像ブロックに対して幾何学的分割モードの使用が許可され、第1の閾値より小さい第1の数の角度を含む角度のセット、および/または第2の閾値より小さい第2の数の距離を含む距離のセットを使用して、幾何学的分割モードのパラメータを計算する。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換のために、現在の映像ブロックの1つ以上の寸法および/または前記現在の映像の1つ以上の寸法の数学関数に依存する規則に基づいて幾何学的分割モードの適用可能性を判定することと、前記判定に基づいて前記変換を行うことと、を含む。
さらに別の代表的な態様において、開示される技術は、映像処理のさらに別の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックと映像のビットストリーム表現との変換のために、現在の映像ブロックのコーディング特性に依存する規則に従って、幾何学的分割モードの適用可能性を判定することと、この判定に基づいて変換を行うことと、を含む。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、除外の規則が、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換に適用可能であると判定することであって、前記除外の規則は、前記変換が、前記現在の映像ブロックに対して幾何学的分割モードおよびコーディングツールを併用することを許可しないことを規定する、判定することと、前記判定に基づいて前記変換を行うことと、を含む。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像と、前記映像のビットストリーム表現との変換のために、規則に従って、映像の異なる色成分に対する異なる幾何学的分割モードインデックスを判定することと、この判定に基づいてこの変換を行うことと、を含む。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像の現在のピクチャの現在の映像ブロックと前記映像のビットストリーム表現の変換のために、規則に従って幾何学的分割モードの適用可能性を判定することと、前記判定に基づいて、前記変換を行うことと、を含み、前記幾何学的分割モードは、現在の映像ブロックを2つ以上の予測サブ領域に分割することを含み、前記規則は、前記2つ以上の予測サブ領域に関連付けられた1つ以上の参照ピクチャの解像度に依存する。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換を行うことを含み、前記ビットストリーム表現は、フォーマット規則に準拠しており、前記フォーマット規則は、幾何学的分割モードが前記現在の映像ブロックに対して無効化されている場合に、前記ビットストリーム表現が幾何学的分割モードに関する構文要素を省略することを規定する。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像の1つ以上の映像ブロックを含む映像ユニットと前記映像のビットストリーム表現との変換のために、複数の幾何学的分割モードのセットが、規則に従って前記映像ユニットの前記1つ以上の映像ブロックをコーディングするために許可されることを判定することと、前記判定に基づいて前記変換を行うことと、を含む。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像ブロックを含む映像と映像のビットストリーム表現との変換を行うことを含み、変換中に、幾何学的分割モードの第1のカウントが分割角度インデックスおよび/または分割距離インデックスを計算するために利用可能であり、幾何学的分割モードの第2のカウントが前記ビットストリーム表現におけるコーディングに利用可能であり、幾何学的分割モードの第3のカウントが前記ビットストリーム表現における信号通知に利用可能であり、前記第1のカウントおよび/または前記第2のカウントおよび/または前記第3のカウントは、前記映像ブロックの対応する寸法に少なくとも基づく。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、規則に従って、映像の現在の映像ブロックと映像のビットストリーム表現との変換を行うことを含み、前記規則は、現在の映像ブロックのビットストリーム表現において第1の幾何学的分割モードインデックス値を信号通知し、現在の映像ブロックの分割角度インデックスおよび/または分割距離インデックスを計算するために第2の幾何学的分割モードインデックス値を使用することを規定し、第1の幾何学的分割モードインデックス値は第2の幾何学的分割モードインデックス値と異なる。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換を行うことを含み、規則に従って幾何学的分割モードインデックスの2値化を行うように、前記現在の映像ブロックの幾何学的分割モードインデックスをビットストリームでコーディングする。
別の代表的な態様において、開示される技術は、映像処理の別の方法を提供するために使用してもよい。この方法は、映像の映像ユニットのクロマブロックと映像のビットストリーム表現との変換のために、規則に従ってクロマブロックに対するブレンド重みおよび/または動き記憶重みを判定することと、この判定に基づいて、変換を行うことと、を含み、クロマブロックに幾何学的分割モードを適用し、前記規則は、対応する輝度サンプルに関して、クロマブロックにおける特定のクロマサンプルの相対位置を示すクロマサンプルの位置タイプに依存する。
さらに、代表的な態様において、プロセッサと、命令を搭載した非一時的メモリとを備える、映像システムにおける装置が開示される。命令は、プロセッサによって実行されると、プロセッサに、開示された方法のいずれか1つ以上を実装させる。
また、非一時的なコンピュータ可読媒体に記憶されたコンピュータプログラム製品であって、開示された方法のいずれか1つ以上を実行するためのプログラムコードを含むコンピュータプログラム製品が開示される。
開示される技術の上記および他の態様および特徴は、図面、説明および特許請求の範囲でより詳細に説明される。
空間的マージ候補の位置の例を示す。 空間的マージ候補の冗長性チェックに考慮される候補対の例を示す。 時間的マージ候補のための動きベクトルのスケーリングの例を示す。 時間的マージ候補の候補位置の例を示す。 三角形パーティションに基づくインター予測モードの例を示す。 三角形分割モードのための単一予測動きベクトル選択の例を示す。 輝度ブロックおよびクロマブロックのためのブレンド処理にそれぞれ使用される重みの例を示す。 三角形予測モードに関連して既存の形状案の例を示す。 幾何学的マージモード(GEO)分割境界の記述の例を示す。 GEOでサポートされるエッジの例を示す。 所与の画素位置と2つのエッジとの幾何学的関係の例を示す。 GEO向けの角度案の例を、それらに対応する幅対高さの比率とともに示す。 左上のクロマサンプルの例示的な位置をChromaLocType変数の関数として示す。 本特許明細書に記載されるビジュアルメディアの復号化又はビジュアルメディアの符号化技術を実現するためのハードウェアプラットフォームの一例を示すブロック図である。 本特許明細書に記載されるビジュアルメディアの復号化又はビジュアルメディアの符号化技術を実現するためのハードウェアプラットフォームの別の例を示すブロック図である。 映像処理のフローチャートを示す。 本開示のいくつかの実施形態による映像コーディングシステムを示すブロック図である。 本発明のいくつかの実施形態によるエンコーダを示すブロック図である。 本発明のいくつかの実施形態によるデコーダを示すブロック図である。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理のための例示的な方法のフローチャートを示す。 angleIdx値およびdistanceIdx値の仕様を示す表を示す。 merge_geo_partition_idxに基づいてangleIdx値およびdistanceIdx値の仕様を示す表36の古いバージョンを示しており、これは現在は関連する作業草案から削除されている。 merge_geo_partition_idx値に基づいてangleIdx値およびdistanceIdx値の仕様を示す表36の例を示す。 merge_geo_partition_idx値に基づいてangleIdx値およびdistanceIdx値の仕様を示す表36の例を示す。 merge_geo_partition_idx値に基づいてangleIdx値およびdistanceIdx値の仕様を示す表36の例を示す。 merge_geo_partition_idx値に基づいてangleIdx値およびdistanceIdx値の仕様を示す表36の例を示す。 merge_geo_partition_idx値に基づいてangleIdx値およびdistanceIdx値の仕様を示す表36の例を示す。 merge_geo_partition_idx値に基づいてangleIdx値およびdistanceIdx値の仕様を示す表36の例を示す。 例示的な第3の実施形態に対応し、wedge_partition_idx’値に基づいたangleIdx値およびdistanceIdx値の仕様を表示する表8-10を示す。 例示的な第4の実施形態に対応し、wedge_partition_idx’値に基づいたangleIdx値およびdistanceIdx値の仕様を表示する表8-10を示す。 関連する作業草案から現在削除されている表8-10の旧バージョンを示す。 wedge_partition_idx値に基づくangleIdx値およびdistanceIdx値の仕様を表示する表8-10の例を示す。 geo_partition_idx値に基づくgeo_partition_idx’値のマッピングテーブルを表示する表を示す。 geo_partition_idx値に基づくangleIdx値およびdistanceIdx値の仕様を表示する表36の旧バージョンを示しており、これは関連する作業草案から現在削除されている。 geo_partition_idx値に基づくangleIdx値およびdistanceIdx値の仕様を表示する表36の例を示す。 geo_partition_idx値に基づくangleIdx値およびdistanceIdx値の仕様を表示する表36の例を示す。 geo_partition_idx値に基づくangleIdx値およびdistanceIdx値の仕様を表示する表36の例を示す。
HEVC/H.265における映像コーディング
映像コーディング規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4 Visualを作り、両団体はH.262/MPEG-2 VideoとH.264/MPEG-4 AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像コーディング規格は、時間予測と変換コーディングが利用されるハイブリッド映像コーディング構造に基づく。HEVCを超えた将来の映像コーディング技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Mode)と呼ばれる参照ソフトウェアに組み込まれてきた。JVETは四半期に1回開催され、新しいコーディング規格はHEVCに比べて50%のビットレート低減を目指している。2018年4月のJVET会議において、新しい映像コーディング規格を「汎用映像コーディング(Versatile Video Coding:VVC)」と正式に命名し、その時、第1版のVVCテストモデル(VTM)をリリースした。VVCの標準化に寄与する努力が続けられているので、すべてのJVET会議において、VVC標準に新しいコーディング技術が採用されている。毎回の会議の後、VVC作業草案およびテストモデルVTMを更新する。VVCプロジェクトは、現在、2020年7月の会合における技術完成(FDIS)を目指している。
2.1.拡張マージ予測
VTMにおいて、マージ候補リストは、以下の5つのタイプの候補を順に含むことで構築される。
1) 空間的近傍のCUからの空間的MVP
2) 同一位置に配置されたCUからの時間的MVP
3) FIFO表からの履歴に基づくMVP
4) ペアワイズ平均MVP
5) ゼロMV
マージリストのサイズはスライスヘッダで信号通知され、マージリストの最大許容サイズはVTMで6である。マージモードにおける各CUコードに対して、短縮された単項2値化(TU)を使用して、最良のマージ候補のインデックスを符号化する。マージインデックスの第1のビンはコンテキストでコーディングされ、他のビンに対してはバイパスコーディングが使用される。
本セッションでは、マージ候補の各カテゴリの生成処理を提供する。
2.1.1.空間的候補導出
VVCにおける空間的マージ候補の導出は、HEVCにおけるものと同じである。図1に示す位置にある候補の中から、最大4つのマージ候補を選択する。導出の順序はA、B、B、A、Bである。位置A、B、B、AのいずれかのCUが利用可能でない場合(例えば、別のスライスまたはタイルに属しているため)、またはイントラコーディングされた場合にのみ、位置Bが考慮される。位置Aの候補を加えた後、残りの候補を加えると、冗長性チェックを受け、それにより、同じ動き情報を有する候補を確実にリストから排除でき、コーディング効率を向上させることができる。計算の複雑性を低減するために、前述の冗長性チェックにおいて、考えられる候補対のすべてを考慮することはしない。代わりに、図2において矢印でリンクされた対のみを考慮し、冗長性チェックに使用される対応する候補が同じ動き情報を有していない場合にのみ、その候補をリストに加える。
2.1.2.時間的候補導出
このステップにおいて、1つの候補のみがリストに追加される。特に、この時間的マージ候補を導出するにあたり、同一位置に配置された参照画像に属する同一位置に配置されたCUに基づいて、スケーリングされた動きベクトルを導出する。スライスヘッダにおいて、同一位置のCUの導出に用いられる参照ピクチャリストが明確に信号通知される。図3に点線で示すように、時間的マージ候補のスケーリングされた動きベクトルが得られる。これは、POC距離tbおよびtdを利用して、同一位置のCUの動きベクトルからスケーリングしたものである。tbは、現在のピクチャの参照ピクチャと現在のピクチャのPOC差として規定され、tdは、同一位置のPUの参照ピクチャと同一位置のピクチャのPOC差として規定される。時間的マージ候補の参照ピクチャインデックスをゼロに等しく設定する。
図4に示すように、候補Cと候補Cとの間で時間的候補の位置を選択する。位置CのCUが利用可能でない場合、イントラコーディングされている場合、または現在のCTU行の外側にある場合、位置Cが使用される。そうでない場合、位置Cが時間的マージ候補の導出に使用される。
2.1.3.履歴に基づくマージ候補の導出
履歴に基づくMVP(HMVP)マージ候補は、空間MVPおよびTMVPの後にマージリストに追加される。この方法では、あらかじめコーディングされたブロックの動き情報がテーブルに保存され、現在のCUのMVPとして使用される。符号化/復号化処理中、複数のHMVP候補を有するテーブルが維持される。新しいCTU行が検出されると、テーブルはリセット(空)される。非サブブロックインターコーディングCUがある場合は常に、関する動き情報が新しいHMVP候補としてテーブルの最後のエントリに追加される。
VTMでは、HMVPテーブルサイズSは6に設定されている。これは、最大6つの履歴に基づくMVP(HMVP)候補をテーブルに追加できることを示している。新しい動き候補をテーブルに挿入する際には、制約付き先入れ先出し(FIFO)規則が使用され、この規則では、冗長性チェックが最初に適用され、テーブルに同一のHMVPがあるかどうかが確認される。見つかった場合、同一のHMVPがテーブルから削除され、その後、すべてのHMVP候補が前方に移動される。
HMVP候補は、マージ候補リスト構築処理において使用され得る。表内の最新のいくつかのHMVP候補が順番にチェックされ、TMVP候補の後に候補リストに挿入される。冗長性チェックは、HMVP候補から空間的又は時間的マージ候補に適用される。
冗長性チェック動作の数を縮小するために、以下の簡略化を導入する。
1.マージリスト生成に使用されるHMPV候補の数は(N<=4)?M:(8-N)として設定され、Nはマージリストにおける既存の候補の数を表し、Mは表における利用可能なHMVP候補の数を表す。
2.利用可能なマージ候補の総数が最大許容マージ候補-1に達すると、HMVPからのマージ候補リスト構築処理を終了する。
2.1.4.ペアワイズ平均マージ候補導出
既存のマージ候補リストにおける予め定義された候補の対を平均することで、ペアワイズ平均候補を生成し、この予め定義された対を、{(0,1),(0,2),(1,2),(0,3),(1,3),(2,3)}として定義し、数字は、マージ候補リストへのマージインデックスを表す。平均化された動きベクトルは、各参照リストに別個に算出される。両方の動きベクトルが1つのリストにおいて利用可能である場合、これらの2つの動きベクトルは、異なる参照ピクチャを指したときにも平均され、1つの動きベクトルのみが利用可能である場合、この1つを直接使用し、動きベクトルが利用可能でない場合、このリストを無効に保つ。
ペアワイズ平均マージ候補を加えた後、マージリストがフルでない場合、最大マージ候補数に達するまで、末端にゼロMVPを挿入する。
2.2.インター予測のための三角形分割
VTMにおいて、インター予測のために三角形分割モード(TPM)がサポートされる。三角形分割モードは、64サンプル以上であり、スキップまたはマージモードでコーディングされるCUにのみ適用され、正規マージモード、またはMMVDモード、またはCIIPモードまたはサブブロックモードでは適用されない。CUレベルフラグを使用し、三角形分割モードが適用されるかどうかを示す。
このモードを使用する場合、対角分割または逆対角分割のいずれかを使用して、1つのCUを2つの三角形のパーティションに等分する(図5)。CUにおける各三角形のパーティションは、それ自体の動きを使用してインター予測され、各パーティションに対して単一予測のみが許可される。すなわち、各パーティションは、1つの動きベクトル及び1つの参照インデックスを有する。従来の双予測と同様にCUごとに2つの動き補償予測しか必要としないようにするために、単一予測動き制約を適用する。各分割のための単一予測動きは、2.1の拡張マージ予測のために構築されたマージ候補リストによって直接導出され、リストにおける所与のマージ候補からの単一予測の選択は、2.2.1.の手順に従う。
三角形分割モードを現在のCUに使用する場合、三角形パーティションの方向(対角または逆対角)を示すフラグ、及び2つのマージインデックス(各パーティションに1つ)をさらに信号通知する。各三角形パーティションの各々を予測した後、適応重み付きブレンド処理を使用して、対角または逆対角の縁部に沿ったサンプル値を調整する。これがCU全体の予測信号であり、他の予測モードと同様に、CU全体に対して変換及び量子化処理を適用する。最後に、2.2.3.で示すように、三角形分割モードを使用して予測されたCUの動きフィールドを4×4ユニットで記憶する。
2.2.1.単一予測候補リスト構築
マージ候補インデックスを規定すると、図6に例示されるように、2.1の処理を使用して拡張マージ予測のために構築されたマージ候補リストから、単一予測動きベクトルを導出する。リストにおける候補について、そのLX動きベクトル(Xはマージ候補インデックス値のパリティに等しい)を、三角形分割モードの単一予測動きベクトルとして使用する。これらの動きベクトルには、図6中に「x」が付けられている。対応するLX動きベクトルが存在しない場合、拡張マージ予測候補リストにおける同じ候補のL(1-X)動きベクトルを、三角形分割モードの単一予測動きベクトルとして使用する。
2.2.2.三角形の分割エッジに沿ったブレンド
各三角形パーティションをそれ自身の動きで予測した後、2つの予測信号にブレンドを適用し、対角線または逆対角の縁部付近のサンプルを導出する。ブレンド処理において、以下の重みを用いる。
図7に示すように、輝度に関しては{7/8,6/8,5/8,4/8,3/8,2/8,1/8}、クロマに関しては{6/8,4/8,2/8}である。
2.2.3.動きフィールド記憶域
三角形分割モードでコーディングされたCUの動きベクトルは、4×4のユニットで記憶される。各4×4ユニットの位置に基づいて、1つの予測動きベクトルまたは2つの予測動きベクトルのいずれかが記憶される。Mv1及びMv2をそれぞれ分割1及び分割2の単一予測動きベクトルとする。図7に示されるように、非重み付け領域に4×4のユニットが位置する場合、その4×4のユニットに対してMv1またはMv2のいずれかを記憶する。そうではなく、4×4のユニットが重み付け領域に位置する場合、双予測動きベクトルを記憶する。以下の処理に従って、Mv1及びMv2から双予測動きベクトルを導出する。
1)Mv1及びMv2が異なる参照ピクチャリスト(一方はL0から、他方はL1から)からのものである場合、Mv1及びMv2を単に組み合わせて双予測動きベクトルを形成する。
2)そうでない場合、Mv1とMv2が同じリストに由来し、一般性を損なわない場合、両方ともL0に由来すると仮定する。この場合、以下である。
2.a)Mv2(またはMv1)のいずれかの参照ピクチャがL1に現れる場合、そのMv2(またはMv1)は、L1におけるその参照ピクチャを使用してL1動きベクトルに変換される。次に、2つの動きベクトルを組み合わせ、双予測動きベクトルを形成する。
そうでない場合、双予測動きの代わりに、単一予測動きMv1のみが記憶される。
2.3.インター予測のための幾何学的分割(GEO)
以下の説明は、JVET-P0884、JVET-P0107、JVET-P0304およびJVET-P0264からの抜粋である。
既存の三角形予測モードの延長として、第15回ゴーテンブルグJVETミーティングにおいて幾何学的マージモード(GEO)を提案した。第16回ジュネーブJVETミーティングでは、JVET-P0884におけるよりシンプルな設計のGEOモードをさらなる研究のためのCEアンカとして選択した。現在、VVCにおける既存のTPMの代替として、GEOモードが研究されている。
図8は、VTM-6.0におけるTPMおよび非長方形インターブロックに対して提案された追加の形状を示す。
幾何学的マージモードの分割境界は、図9に示すように、角度φ及び距離オフセットρで表される。角度φは0~360度の量子化角度を表し、距離オフセットρは最大距離ρmaxの量子化オフセットを表す。さらに、二分木分割およびTPM分割と重複する分割方向は除外する。
JVET-P0884において、8×8以上のブロックサイズに対してGEOが適用され、ブロックサイズごとに、CUの中心に対して24個の角度および4個のエッジで差別化された82個の異なる分割方式が存在する。図10Aは、4つのエッジが、CUの中心を通過するEdge0から始まり、CU内の法線ベクトルの方向に沿って均一に分布していることを示す。GEOにおける各分割モード(即ち、角度インデックスとエッジインデックスの対)には、画素適応重み表が割り当てられ、2つの分割された部分におけるサンプルをブレンドし、サンプルの重み値は、0~8の範囲にあり、画素の中心位置からエッジまでのL2の距離によって判定される。基本的には、重み値を割り当てた場合、つまり、GEO分割に小さな重み値を割り当てた場合、単位利得制約を伴い、他の分割に大きな補完重み値を割り当て、合計で8となるようにする。
各画素の重み値の計算は、(a)画素位置から所与のエッジまでの変位を計算すること、(c)予め定義されたルックアップテーブルによって、計算された変位を重み値にマッピングすること、の2つの要素からなる。画素位置(x,y)から所与のエッジEdgeiまでの変位を計算する方法は、実際には、(x,y)からEdge0までの変位を計算し、この変位をEdge0とEdgeiとの距離ρだけ差し引くことと同じである。図10Bは、(x,y)とエッジとの幾何学的関係を示す。具体的には、(x,y)からEdgeiへの変位は、以下のように定式化することができる。
Figure 0007453374000001
ρの値は、法線ベクトルおよびエッジインデックスiの最大長(ρmaxで表される)の関数であり、即ち、以下のようになる。
Figure 0007453374000002
式中、NはGEOによってサポートされるエッジの数であり、「1」は、ある角度インデックスの場合、最後のエッジEdgeN-1がCUコーナーに近づき過ぎることを防止するためのものである。式(6)から式(8)を代入することで、各画素(x,y)から所与のエッジiまでの変位を計算することができる。つまり、PB ̄をwIdx(x,y)とする。ρの計算はCUごとに1回必要であり、wIdx(x,y)の計算はサンプルごとに1回必要であり、この計算には乗算が含まれる。
2.3.1.JVET-P0884
JVET-P0884は、JVET-P0107勾配ベースのバージョン2、JVET-P0304およびJVET-P0264試験1の簡素化案を、第16回ジュネーブJVETミーティングのCE4-1.14上に統合した。
a)結合した寄与において、GEO角度は、JVET-P0107およびJVET-P0264と同じ、定義された勾配(2べき乗の角度)である。本提案で使用される勾配は、(1,1/2,1/4,4,2)である。この場合、ブレンドマスクがオンザフライで計算される場合、乗算はシフト演算により置き換えられる。
b)JVET-P304に記載されているように、rhoの計算はオフセットXおよびオフセットYに置き換えられる。この場合、ブレンドマスクをオンザフライで計算しない場合、24個のブレンドマスクのみを記憶すればよい。
2.3.2.JVET-P0107 勾配ベースのバージョン2
勾配ベースのGEOバージョン2に基づいて、Dis[.]ルックアップテーブルを表1に示す。
Figure 0007453374000003
勾配に基づくGEOバージョン2では、GEOブレンドマスク導出の計算の複雑性は、乗算(最大2ビットシフト)および加算として考慮される。TPMと比較すると、異なる分割はない。さらに、ブレンドマスクをより簡単に記憶するために、distFromLineの丸め演算を取り除く。このバグ修正は、サンプル重みが各行または列においてシフトして繰り返されることを保証する。
Figure 0007453374000004
Figure 0007453374000005
2.3.3.JVET-P0264 Test 1
JVET-P0264において、GEOにおける角度は、2のべき乗を正接とする角度に置き換えられている。角度案の正接は2のべき乗であるので、ほとんどの乗算はビットシフトに置き換えることができる。また、これらの角度の重み値は、行ごとに、または列ごとに位相シフトを繰り返すことによって実装されてもよい。角度案では、1つのブロックサイズおよび1つの分割モードごとに記憶するために、1つの行または列が必要である。図11は、GEO向けの角度案を、それらに対応する幅対高さの比率とともに示す。
2.3.4.JVET-P0304
JVET-P0304において、一方はブレンド重み導出用、他方は動きフィールド記憶域のマスク用である、予め定義されたマスクの2つのセットから、すべてのブロックおよび分割モードについて、重みおよび動きフィールド記憶域のためのマスクを導出することが提案される。各セットには全部で16個のマスクがある。角度当たりの各マスクは、ブロック幅およびブロック高さを256に設定し、変位を0に設定して、GEOにおける同じ式を使用して計算される。角度φおよび距離ρを有するサイズW×Hのブロックの場合、輝度サンプルのためのブレンド重みは、予め定義されたマスクから、以下のように計算されたオフセットで直接クロップされる。
-変数offsetXおよびoffsetYは、以下のように算出される。
Figure 0007453374000006
2.4.JVET-P0884におけるGEOの仕様
JVET-O2001-vEの上部にあるJVET-P0884に提供された作業草案から、以下の仕様を抜粋する。以下の仕様において、GEOをマージウェッジモードとも呼ぶ。
Figure 0007453374000007
Figure 0007453374000008
変数wedge_merge_mode[x0][y0]は、Bスライスを復号化する時に、現在のコーディングユニットの予測サンプルを生成するために非長方形に基づく動き補償を使用するかどうかを規定し、以下のように導出される。
-以下のすべての条件が真である場合、wedge_merge_mode[x0][y0]は1に等しく設定される。
-sps_wedge_enabled_flagは1と等しい。
-slice_typeはBと等しい。
-general_merge_flag[x0][y0]は1と等しい。
-MaxNumWedgeMergeCandは2以上である。
-cbWidthは8より大きく、cbHeightは8より大きい。
-egular_merge_flag[x0][y0]は0と等しい。
-merge_subblock_flag[x0][y0]は0と等しい。
-ciip_flag[x0][y0]は0と等しい。
-そうでない場合、wedge_merge_mode[x0][y0]は0と等しい。
wedge_partition_idx[x0][y0]は、マージ幾何学的モードの幾何学的分割タイプを規定する。配列インデックスx0,y0は、ピクチャの左上輝度サンプルに対する、考慮されるコーディングブロックの左上輝度サンプルの位置(x0,y0)を指定する。
merge_merge_wedge_idx0[x0][y0]は、非長方形状に基づく動き補償候補リストの1番目のマージ候補インデックスを指定し、ここで、x0,y0は、ピクチャの左上の輝度サンプルに対する、想定されるコーディングブロックの左上の輝度サンプルの位置(x0,y0)を指定する。
wedge_partition_idx0[x0][y0]が存在しない場合、0に等しいと推測される。
merge_wedge_idx1[x0][y0]は、くさび形状に基づく動き補償候補リストの2番目のマージ候補インデックスを指定し、ここで、x0,y0は、ピクチャの左上の輝度サンプルに対する、想定されるコーディングブロックの左上の輝度サンプルの位置(x0,y0)を指定する。
merge_wedge_idx1[x0][y0]が存在しない場合、0に等しいと推測される。
ウェッジインターブロックのための復号化処理
一般
この処理は、1に等しいwedge_merge_mode[xCb][yCb]を用いてコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
この処理の出力は以下の通りである。
-輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-モジュールCbのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
1.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNとクロマサンプルの2つの順序付き2次元配列refPicLNCbおよびrefPicLNCrを含む参照ピクチャは、predListFlagNに等しく設定されたXおよびrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、および0に等しく設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、および1に設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、および2に設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理をで呼び出すことによって導出される。
2.表8-10で規定されるように、wedge_partition_idx[xCb][yCb]の値に従って、ウェッジマージモードangleIdx、distanceIdexの分割角度、距離を設定する。
3.x=0.cbWidth-1、y=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamplesL[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
4.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に設定されたcIdxを入力として用いて、8.5.7.2項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
5.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
6. 8.5.7.3項に規定されるマージウェッジモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、および予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。angleIdx値およびdistanceIdx値の仕様は、図19の表8-10に示されている。
ウェッジマージモードのための重み付けサンプル予測処理
この処理への入力は以下の通りである。
-現在のコーディングブロックの幅および高さを規定する2つの変数nCbWおよびnCbH、
-2つの(nCbW)×(nCbH)配列predSamplesLAおよびpredSamplesLB、
-ウェッジ分割の角度インデックスを規定する変数angleIdx、
-ウェッジ分割の距離idxを規定する可変distanceIdx、
-色成分インデックスを規定する変数cIdx。
この処理の出力は、予測サンプル値の(nCbW)×(nCbH)配列pbSamplesである。
変数bitDepthは、以下のように導出される。
-cIdxが0に等しい場合、bitDepthはBitDepthに等しく設定される。
-cIdxが0に等しい場合、nWおよびnHをそれぞれnCbWおよびnCbHに等しく設定し、そうでない場合(cIdxが0に等しくない)、nWおよびnHをそれぞれnCbW×SubWidthCおよびnCbH×SubHeightCに等しく設定する。
-cIdxが0に等しい場合、subWおよびsubHは両方とも1に設定され、そうでない場合(cIdxが0に等しくない)、subWおよびsubHはそれぞれSubWidthCおよびSubHeightCに等しく設定される。
-そうでない場合、変数bitDepthはBitDepthに等しく設定される。
変数shift1およびoffset1は、以下のように導出される。
-変数shift1は、Max(5,17-bitDepth)に等しく設定される。
-変数offset1は、1 << (shift1 - 1)に等しく設定される。
以下の変数の値を設定する。
-hwRatioはnH/nWに設定される。
-displacementXはangleIdxに設定される。
-displacementYは(displacementX+6)%24に設定される。
-angleIdx>=10&angleIdx<=20の場合、PART1およびPART2はそれぞれAおよびBに等しく設定され、そうでない場合、PART1およびPART2はそれぞれBおよびAに等しく設定される。
-表8-12に示されるDisと表されるルックアップテーブルを使用して、rhoを以下の値に設定する。
rho=(Dis[displacementX]<<8)+(Dis[displacementY]<<8)
以下の条件の1つが真である場合、変数shiftHorを0に等しく設定する。
angleIdx%12は6に等しい。
angleIdx%12は0に等しくなく、hwRatio≧1である。
そうでない場合、shiftHorは1に等しく設定される。
shiftHorが0に等しい場合、変数offsetXおよびoffsetYは、以下のように導出される。
offsetX=(256-nW)>>1
offsetY=(256-nH)>>1+angleIdx<12?(distanceIdx*nH)>>3:-((distanceIdx*nH)>>3)
そうでない場合、shiftHorが1に等しければ、offsetXおよびoffsetYは、以下のように導出される。
offsetX=(256-nW)>>1+angleIdx<12?(distanceIdx*nW)>>3:-((distanceIdx*nW)>>3)
offsetY=(256-nH)>>1
以下の順序ステップに従って、x=0..nCbW-1およびy=0..nCbH-1の予測サンプル値pbSamples[x][y]を設定する。
-ルックアップテーブル8-12を使用して、変数weightIdxおよびweightIdxAbを以下のように算出する。
weightIdx=(((x*subW+offsetX)<<1)+1)*Dis[displacementX]
+(((y*subH+offsetY)<<1)+1))*Dis[displacementY]-rho.
weightIdxAbs=Clip3(0,26,abs(weightIdx)).
-sampleWeightの値は、表8-13に従って以下のように導出される。
sampleWeight=weightIdx<=0?WedgeFilter[weightIdxAbs]:8-WedgeFilter[weightIdxAbs]
注:サンプルsampleWeight[x][y]の値は、sampleWeight[x-shiftX][y-shiftY]から導出することもできる。angleIdxが4より大きく12より小さい、またはangleIdxが20より大きく24より小さい場合、shiftXは分割角度の正接であり、shiftYは1であり、そうでない場合、shiftXは分割角度の1であり、shiftYは分割角度の余接である。正接(余接)の値が無限大の場合、shiftXは1(0)、シフトYは0(1)になる。
-予測サンプル値pbSamples[x][y]は、以下のように導出される。
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(predSamplesLPART1[x][y]*(8-sampleWeight)+
predSamplesLPART2[x][y]*sampleWeight+offset1)>>shift1)
Figure 0007453374000009
Figure 0007453374000010
ウェッジマージモードのための動きベクトル記憶処理
この処理は、1に等しいMergeWedgeFlag[xCb][yCb]でコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvにおける輝度動きベクトル、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
現在のコーディングブロックにおける水平および垂直方向の4×4ブロックの数を規定する変数numSbX,numSbYは、numSbX=cbWidth>>2およびnumSbY=cbHeight>>2に等しく設定される。
以下の変数の値を設定する。
-displacementXをangleIdxに設定し、displacementYを(displacementX+6)%24に設定する。
-hwRatioはnCbH/nCbWに等しく設定される。
以下の条件の1つが真である場合、変数shiftHorを0に等しく設定する。
angleIdx%12は8に等しい。
angleIdx%12は0に等しくなく、hwRatio≧1である。
そうでない場合、shiftHorは1に等しく設定される。
partIdxは、angleIdx>=10&&angleIdx<=20?に等しく設定される。
shiftHorが0に等しい場合、変数offsetXおよびoffsetYは、以下のように導出される。
-offsetX=(64-numSbX)>>1
-offsetY=(64-numSbY)>>1+angleIdx<12?(distanceIdx*nCbH)>>5:-((distanceIdx*nCbH)>>5)
そうでない場合、shiftHorが1に等しければ、offsetXおよびoffsetYは、以下のように導出される。
-offsetX=(64-numSbX)>>1+angleIdx<12?(distanceIdx*nCbW)>>5:-((distanceIdx*nCbW)>>5)
-offsetY=(64-numSbY)>>1
変数rhoの値は、下記の式および表8-12に示されるDisルックアップテーブルに従って導出される。
-rho=(Dis[displacementX]<<8)+(Dis[displacementY]<<8).
表8-11および表8-12に規定されるDisと表されるルックアップテーブルを使用して、motionOffsetを以下の値に等しく設定する。
-motionOffset=3*Dis[displacementX]+3*Dis[displacementY].
xSbIdx=0..numSbX-1、ySbIdx=0..numSbY-1のサブブロックインデックス(xSbIdx,ySbIdx)における各4×4サブブロックについて、以下が適用される。
変数motionIdxは、ルックアップテーブル8-12を使用して、以下のようにして算出される。
-motionIdx=(((xSbIdx+offsetX)<<3)+1)*Dis[displacementX]
+(((xSbIdx+offsetY<<3)+1))*Dis[displacementY]-rho+motionOffset
変数sTypeは、以下のように導出される。
-sType=abs(motionIdx)<32?2:motionIdx<=0?partIdx:1-partIdx
-sTypeの値に基づいて、以下の割り当てが行われる。
-sTypeが0に等しい場合、以下が適用される。
predFlagL0=(predListFlagA==0) ?1:0 (8-853)
predFlagL1=(predListFlagA==0) ?0:1 (8-854)
refIdxL0=(predListFlagA==0) ? refIdxA:-1 (8-855)
refIdxL1=(predListFlagA==0) ? -1:refIdxA (8-856)
mvL0[0]=(predListFlagA==0) ? mvA[0]:0 (8-857)
mvL0[1]=(predListFlagA==0) ? mvA[1]:0 (8-858)
mvL1[0]=(predListFlagA==0) ?0:mvA[0] (8-859)
mvL1[1]=(predListFlagA==0) ?0:mvA[1] (8-860)
-そうでない場合、sTypeが1に等しいか、または(sTypeが2に等しく、predListFlagA+predListFlagBが1に等しくない)場合、以下が適用される。
predFlagL0=(predListFlagB==0) ?1:0 (8-861)
predFlagL1=(predListFlagB==0) ?0:1 (8-862)
refIdxL0=(predListFlagB==0) ? refIdxB:-1 (8-863)
refIdxL1=(predListFlagB==0) ? -1:refIdxB (8-864)
mvL0[0]=(predListFlagB==0) ? mvB[0]:0 (8-865)
mvL0[1]=(predListFlagB==0) ? mvB[1]:0 (8-866)
mvL1[0]=(predListFlagB==0) ?0:mvB[0] (8-867)
mvL1[1]=(predListFlagB==0) ?0:mvB[1] (8-868)
-そうでない場合(sTypeが2に等しく、predListFlagA+predListFlagBが1に等しい)、以下が適用される。
predFlagL0=1 (8-869)
predFlagL1=1 (8-870)
refIdxL0=(predListFlagA==0) ? refIdxA:refIdxB (8-871)
refIdxL1=(predListFlagA==0) ? refIdxB:refIdxA (8-872)
mvL0[0]=(predListFlagA==0) ? mvA[0]:mvB[0] (8-873)
mvL0[1]=(predListFlagA==0) ? mvA[1]:mvB[1] (8-874)
mvL1[0]=(predListFlagA==0) ? mvB[0]:mvA[0] (8-875)
mvL1[1]=(predListFlagA==0) ? mvB[1]:mvA[1] (8-876)
- x=0..3、y=0..3について以下の割り当てを行う。
MvL0[(xSbIdx<<2)+x][(ySbIdx<<2)+y]=mvL0 (8-877)
MvL1[(xSbIdx<<2)+x][(ySbIdx<<2)+y]=mvL1 (8-878)
RefIdxL0[(xSbIdx<<2)+x][(ySbIdx<<2)+y]=refIdxL0 (8-879)
RedIdxL1[(xSbIdx<<2)+x][(ySbIdx<<2)+y]=refIdxL1 (8-880)
PredFlagL0[(xSbIdx<<2)+x][(ySbIdx<<2)+y]=predFlagL0 (8-881)
PredFlagL1[(xSbIdx<<2)+x][(ySbIdx<<2)+y]=predFlagL1 (8-882)
インター予測モードでコーディングされたコーディングブロックの残差信号に対する復号化処理
この処理への入力は以下の通りである。
-現在のピクチャの左上のサンプルに対する現在の変換ブロックの左上のサンプルを規定するサンプル位置(xTb0,yTb0)、
-現在の変換ブロックの幅を規定する変数nTbW、
-現在の変換ブロックの高さを規定する変数nTbH、
-現在のブロックの色成分を規定する変数cIdx。
この処理の出力は、(nTbW)×(nTbH)のアレイresSamplesである。
最大変換ブロック幅maxTbWidthおよび高さmaxTbHeightは、以下のように導出される。
maxTbWidth=(cIdx==0)?MaxTbSizeY:MaxTbSizeY/SubWidthC (8-883)
maxTbHeight=(cIdx==0)?MaxTbSizeY:MaxTb SizeY/SubHeightC (8-884)
輝度サンプル位置は、以下のように導出される。
(xTbY,yTbY)=(cIdx==0)?(xTb0,yTb0):(xTb0*SubWidthC,yTb0*SubHeightC) (8-885)
maxTbSizeに応じて、以下が適用される。
-nTbWがmaxTbWidthよりも大きい、またはnTbHがmaxTbHeightよりも大きい場合、以下の順序付けられたステップが適用される。
1.変数newTbWおよびnewTbHは、以下のように導出される。
newTbW=(nTbW>maxTbWidth)?(nTbW/2):nTbW(8-886)
newTbH=(nTbH>maxTbHeight)?(nTbH/2):nTbH (8-887)
2.位置(xTb0,yTb0)、newTbWと等しく設定された変換ブロック幅nTbW、newTbHと等しく設定された高さnTbH、および変数cIdxを入力として、本項に規定されるようなインター予測モードでコーディングされたコーディングユニットの残差信号に対する復号化処理を呼び出し、その出力は、ループ内フィルタリング前の修正された再構築ピクチャである。
3.nTbWがmaxTbWidthよりも大きい場合、(xTb0+newTbW,yTb0)と等しく設定された位置(xTb0,yTb0)、newTbWと等しく設定された変換ブロック幅nTbW、newTbHと等しく設定された高さnTbH、変数cIdxを入力として、本項に規定されるように、インター予測モードでコーディングされたコーディングユニットの残差信号の復号化処理を呼び出し、その出力は修正された再構築ピクチャである。
4.nTbHがmaxTbHeightよりも大きい場合、(xTb0,yTb0+newTbH)と等しく設定された位置(xTb0,yTb0)、newTbWと等しく設定された変換ブロック幅nTbW、newTbHと等しく設定された高さnTbH、変数cIdxを入力として、本項に規定されるように、インター予測モードでコーディングされたコーディングユニットの残差信号を復号化する処理を呼び出し、その出力は、インループフィルタリング前の修正された再構築ピクチャである。
5.nWTbWがmaxTbWidthより大きく、かつ、nTbHがmaxTbHeightより大きい場合、(xTb0+newTbW,yTb0+newTbH)と等しく設定された位置(xTb0,yTb0)、newTbWと等しく設定された変換ブロック幅nTbW、newTbHと等しく設定された高さnTbH、変数cIdxを入力として、本項に規定されるように、インター予測モードでコーディングされたコーディングユニットの残差信号を復号化する処理を呼び出し、その出力は、インループフィルタリング前の修正された再構築ピクチャである。
-あるいは、cu_sbt_flagが1に等しい場合、以下が適用される。
-変数sbtMinNumFourth、wPartIdx、およびhPartIdxは、以下のように導出される。
sbtMinNumFourths=cu_sbt_quad_flag?1:2(8-888)
wPartIdx=cu_sbt_horizontal_flag?4:sbtMinNumFourths (8-889)
hPartIdx=!cu_sbt_horizontal_flag?4:sbtMinNumFourths (8-890)
-変数xPartIdxおよびyPartIdxは、以下のように導出される。
-cu_sbt_pos_flagが0に等しい場合、xPartIdxおよびyPartIdxは0に等しく設定される。
-そうでない場合(cu_sbt_pos_flagが1に等しい)、変数xPartIdxおよびyPartIdxは、以下のように導出される。
xPartIdx=cu_sbt_horizontal_flag?0:(4-sbtMinNumFourths) (8-891)
yPartIdx=!cu_sbt_horizontal_flag?0:(4-sbtMinNumFourths) (8-892)
-変数xTbYSub、yTbYSub、xTb0Sub、yTb0Sub、nTbWSubandnTbHSubは、以下のように導出される。
xTbYSub=xTbY+((nTbW*((cIdx==0)?1:SubWidthC)*xPartIdx/4) (8-893)
yTbYSub=yTbY+((nTbH*((cIdx==0)?1:SubHeightC)*yPartIdx/4) (8-894)
xTb0Sub=xTb0+(nTbW*xPartIdx/4) (8-895)
yTb0Sub=yTb0+(nTbH*yPartIdx/4) (8-896)
nTbWSub=nTbW*wPartIdx/4 (8-897)
nTbHSub=nTbH*hPartIdx/4 (8-898)
-輝度位置(xTbYSub,yTbYSub)、変数cIdx、nTbWSub、nTbHSubを入力として、8.7.2項に規定されるようなスケーリングおよび変換処理を呼び出し、その出力は(nTbWSub)×(nTbHSub)配列resSamplesTbである。
-残差サンプルresSamples[x][y](x=0..nTbW-1,y=0..nTbH-1)を0に等しく設定する。
-残差サンプルresSamples[x][y](x=xTb0Sub..xTb0Sub+nTbWSub-1,y=yTb0Sub..yTb0Sub+nTbHSub-1)は、以下のように導出される。
resSamples[x][y]=resSamplesTb[x-xTb0Sub][y-yTb0Sub] (8-899)
-あるいは、輝度位置(xTbY,yTbY)、変数cIdx、変換幅nTbW、および変換高さnTbHを入力として、8.7.2項に規定されるようなスケーリングおよび変換処理を呼び出し、その出力は(nTbW)×(nTbH)配列resSamplesである。
Figure 0007453374000011
2.5.クロマサンプルの位置タイプ
クロマサンプルの位置タイプの定義のこのパラグラフは、JVET-P2007-v3からの抜粋である。図12は、chroma_format_idcが1(4:2:0クロマフォーマット)に等しく、chroma_sample_loc_type_top_field又はchroma_sample_loc_type_bottom_fieldが変数ChromaLocTypeの値に等しい場合の、示された左上のクロマサンプルの相対位置を示す。左上の4:2:0クロマサンプルによって表される領域(中心に大きな赤い点を有する大きな赤い正方形として示される)は、左上の輝度サンプルによって表される領域(中心に小さな黒い点を有する小さな黒い正方形として示される)に対して示される。隣接する輝度サンプルによって表される領域は、中心に小さな灰色の点を有する小さな灰色の正方形として示される。
既存の実装形態の欠点
現在のGEOの設計には、いくつかの潜在的な問題があり、それらについて以下に説明する。
(1)JVET-P0884のCEアンカーにおいて、ハードウェア検証のためのGEOモードの総数は、1558であり、これは、19個のPU形状に82個のGEOモードを乗算することによって算出される。専門家は、GEOコーディングツールのための1558件の検証ケースは多すぎると述べている。GEOの総数を縮小することが望ましい。
(2)JVET-P0884のCEアンカーにおいて、GEOモードは、8×8以上のブロックサイズ、すなわちW>=8、H>=8に適用される。
a)大きなブロックサイズの場合、GEOモードはそれほど必要でないことがある。GEOのための許容可能なブロックサイズを低減することによって、コーディング利得と複雑性とのより優れたトレードオフを考慮することができる。
b)4×NおよびN×4のブロックサイズは、コーディング利得に有益となり得る。
例示的な技術および実施形態
以下に詳述する実施形態の詳細は、一般的な概念を説明するための例であると考えられるべきである。これらの実施形態は狭義に解釈されるべきではない。さらに、これらの実施形態は、任意の方法で組み合わせることができる。
「GEO」という用語は、1つのブロックを2つ以上のサブ領域に分割するコーディング方法であって、既存の分割構造(例えば、QT/BT/TT)のいずれかによって少なくとも1つのサブ領域を生成することができないコーディング方法を表す場合がある。「GEO」という用語は、三角形予測モード(TPM)、および/または幾何学的マージモード(GEO)、および/またはウェッジ予測モードを示す場合がある。
「ブロック」という用語は、CUおよび/またはPUおよび/またはTUのコーディングブロックを表す場合がある。
いくつかの実施形態において、「GEOモードインデックス(またはGEOモード)」はコーディングビットストリームにおける信号通知されたGEOモードインデックスであってもよい。いくつかの実施形態において、GEOモードインデックス(またはGEOモード)は、ウェッジインターブロックの復号化処理において、GEO角度インデックスおよびGEO距離インデックスを導出するために使用される。いくつかの実施形態において、復号化過程において角度/距離インデックスを導出するためのGEOモードインデックス(またはGEOモード)はテーブルマッピングにより獲得されてもよい。規定されていない場合、GEOモードインデックスは、例えば、JVET-P0884-v8の作業草案の表8-10に定義されているような、復号化処理における角度/距離インデックスを導出するために使用されるwedge_partition_idxを意味することができる。
GEOモード時のブロックサイズ制限
ブロックの幅をWとし、ブロックの高さをHとする。
1.GEOが許可されるかどうかが、ブロックの幅および/またはブロックの高さに依存してもよい。
a) GEOが許可されるかどうかが、ブロックのサイズ(例えば、W*H)および/またはブロックのアスペクト比に依存してもよい。
i.例えば、W×Hブロックの場合、GEOは、W>=T1および/またはH>=T2および/またはW*H<T3および/またはW*H>T4の場合にのみ有効化されてもよく、T1、T2、T3、およびT4は、一定の値である。
ii.別の例として、W×Hブロックの場合、GEOは、W>=T1および/またはH>=T2および/またはW*H<=T3および/またはW*H>=T4の場合にのみ有効化されてもよく、T1、T2、T3、およびT4は、一定の値である。
iii.一例において、W×Hブロックの場合、GEOは、W*H<T1|(W*H<=T2&&W/H<=T3&&H/W<=T4)の場合にのみ有効化されてもよい。
1)一例において、T1、T2、T3、およびT4は、輝度ブロックを指す場合がある。
2)一例において、T1=512,T2=2048,T3=2,T4=2である。
iv.一例において、W×Hブロックの場合、GEOは、W*H<T1|(W*H<=T2&abs(logW-logH)<=T3)の場合にのみ有効化されてもよい。
1)一例において、T1、T2、T3、およびT4は、輝度ブロックを指す場合がある。
2)一例において、T1=512,T2=2048,T3=1である。
v.一例において、W×Hブロックの場合、GEOは、W*H<=T1&&W/H<=T2&&H/W<=T3の場合にのみ有効化されてもよい。
1)一例において、T1、T2、T3、およびT4は、輝度ブロックを指す場合がある。
2)一例において、T1=2048,T2=2,T3=4である。
vi.一例において、W×Hブロックの場合、GEOは、W>=Txであり、H>=Tyであり、および/または上記1.a.i~1.a.vのうちの1つが満たされる場合にのみ有効化されてもよい。
1)一例において、TxおよびTyは、輝度ブロックを指す場合がある。
2)一例において、Tx=8,Ty=8である。
vii.GEOは、ブロック幅がNよりも大きいまたは/およびブロック高さがMよりも大きいブロックに対しては許可されなくてもよい。
1)一例において、NおよびMは、輝度ブロックを指す場合がある。
2)一例において、N=M=64である。
3)一例において、N=M=32である。
viii.GEOは、ブロック幅がNに等しいまたは/およびブロック高さがMに等しいブロックに対しては許可されなくてもよい。
1)一例において、N=M=4である。
ix.例えば、W×Hブロックの場合、下記(1.a)~(1.f)のうち1つおよび/または複数の条件が満たされる場合、GEOは許可されなくてもよく、Ti(i=1…17)は一定の値である。
1)条件(1.a)~(1.f)は、以下のようであってもよい。
a)W<T1および/又はW>T2および/またはW=T3
b)H<T4および/又はH>T5および/またはH=T6
c)W*H<T7および/又はW*H>T8および/またはW*H=T8
d)W/H<T9および/又はW/H>T10および/またはW/H=T11
e)H/W<T12および/又はH/W>T13および/またはH/W=T14
f)Abs(logW-logH)>T15および/またはAbs(logW-logH)<T16および/またはAbs(logW-logH)=T17
2)代替的に、GEOは、上記(1.a)~(1.f)のうち1つまたは2つ以上の条件を満たす場合にのみ許可されてもよい。
3)例えば、W×Hブロックの場合、GEOは、W<T1またはH<T2またはW*H>T3または(W*H>=T4およびAbs(logW-logH)>T5の場合、許可されなくてもよい。
a)代替的に、W×Hブロックの場合、GEOは、W>=T1、H>=T2、およびW*H<T4(またはW*H<=T3、およびAbs(logW-logH)<=T5)の場合にのみ許可されてもよい。
b)一例において、Ti(i=1...5)は輝度ブロックを指す場合がある。
c)一例において、T1=8,T2=8,T3=2048,T4=512,T5=1である。
4)例えば、W×Hブロックの場合、GEOは、W<T1またはH<T2またはW*H>T3または(W*H>=T4および(W/H>T5またはH/W>T5)の場合、許可されなくてもよい。
a)代替的に、W×Hブロックの場合、GEOは、W>=T1およびH>=T2、ならびに(W*H<T4または(W*H<=T3およびW/H<=T5およびH/W<=T5))の場合にのみ許可されてもよい。
b)一例において、Ti(i=1...5)は輝度ブロックを指す場合がある。
c)一例において、T1=8,T2=8,T3=2048,T4=512,T5c)=2である。
5)例えば、W×Hブロックの場合、W<T1またはH<T2またはW*H>T3またはH/W>T4またはW/H>T5である場合、GEOは許可されなくてもよい。
a)代替的に、W×Hブロックの場合、GEOは、W>=T1およびH>=T2およびW*H<=T3およびH/W<=T4およびW/H<=T5の場合にのみ許可されてもよい。
b)一例において、Ti(i=1...5)は輝度ブロックを指す場合がある。
c)一例において、T1=8,T2=8,T3=2048,T4=4,T5=2である。
b)GEOを有効化するか無効化するかどうかは、ブロックの幅および高さの関数に依存してもよい。
i.例えば、この関数は、ブロックの幅および/または高さの比に依存してもよい。例えば、この関数は、max(H,W)/min(H,W)であってもよい。
ii.例えば、この関数は、ブロックの幅と高さとの差および/または比であってもよく、例えば、Abs(Log2(cbWidth)-Log2(cbHeight))であり、Abs(x)は、xの絶対値を返し、Log2(x)は数字xのログベース2を返す。
iii.例えば、この関数は、ブロック幅とブロック高さとの合計または差であってもよく、例えば、cbWdith+cbHeight、および/またはcbWidth-cbHeight、および/またはcbHeight-cbWidthである。
1)一例において、cbWdith+cbHeightが数Xに等しい(またはより小さい、またはより大きい)場合、GEOは無効化されてもよい。
2)一例において、cbWdith-cbHeightが数Xに等しい(またはより小さい、またはより大きい)場合、GEOは無効化されてもよい。
3)一例において、cbHeight-cbWidthが数Xに等しい(またはより小さい、またはより大きい)場合、GEOは無効化されてもよい。
4)この関数は、ブロック幅とブロック高さとの差の絶対値であってもよい。
iv.例えば、この関数は、A,B、・・・Fが定数を表す場合、以下のようであってもよい。
1)A*cbWidth<cbHeight、および/またはB*cbHeight<cbWidthおよび/またはC*cbWidth>cbHeight、および/またはD*cbHeight>cbWidth、および/またはlog2(cbWidth)-log2(cbHeight)<E、および/またはlog2(cbWidth)-log2(cbHeight)<F、および/または(cbWidth<<S)<cbHeight、および/または(cbHeight<<S)<cbWidth、および/または(cbWidth<<S)>cbHeight、および/または(cbHeight<<S)>cbWidth、および/またはabs(log2(cbWidth)-log2(cbHeight))<F。
a)一例において、A/B/C/Dは8に等しい。
b)一例において、Eは4に等しい。
c)Sは、2、または3、または4に等しくてもよい。
d)上記の「>」は、「>=」に置き換えられてもよい。
e)上記の「<」は、「<=」に置き換えられてもよい。
c)GEOは、X(例えば、X=2)よりも大きい(別の例において、xほど多くの)幅対高さの比または高さ対幅の比を有するブロックに対して許可されなくてもよい。
i.一例において、W×Hブロックの場合、W/H>X(例えば、X=2)である場合、GEOは無効化されてもよい。
ii.一例において、W×Hブロックの場合、H/W>X(例えば、X=2)である場合、GEOは無効化されてもよい。
d)一例において、GEOは、同じコーディングユニット/予測ユニット/ブロックにおける1つの色成分(例えば、輝度ブロック)に対して有効化されてもよいが、別の色成分(例えば、クロマブロック)に対して無効化されてもよい。
e)一例において、1つのコーディングユニット/予測ユニット/ブロックの場合、GEOを許可する/許可しないかは、輝度ブロックの寸法に依存してもよい。
i.一例において、輝度ブロックに対してGEOが許可されない場合、クロマブロックに対しても無効化される。
ii.一例において、輝度ブロックに対してGEOが許可される場合、クロマブロックに対してもGEOが許可される。
f)GEOが有効化されるかどうかは、ブロック幅および/またはブロック高さおよび/またはブロック幅対高さ比および/またはブロック高さ対幅比に依存してもよい。
i.例えば、W×Hブロックの場合、GEOは、W>=T1およびH>=T2およびW<=T3およびH<=T4およびW/H<=T5およびH/W<=T6の場合にのみ許可されてもよい。
1)一例において、T1=T2=8,T3=T4=64,T5=2,T6=4である。
2)一例において、T1=T2=8,T3=T4=64,T5=T6=4である。
3)一例において、T1=T2=8,T3=T4=32,T5=2,T6=4である。
4)一例において、T1=T2=8,T3=T4=32,T5=T6=4である。
ii.例えば、W×Hブロックの場合、GEOは、W>=T1およびH>=T2およびW<=T3およびH<=T4の場合にのみ許可されてもよい。
1)一例において、T1=T2=8,T3=T4=64である。
2)一例において、T1=T2=8,T3=T4=32である。
iii.代替的に、W×Hブロックの場合、W<T1またはH<T2またはW>T3またはH>T4またはW/H>T5またはH/W>T6の場合、GEOを無効化してもよい。
1)一例において、T1=T2=8,T3=T4=64,T5=2,T6=4である。
2)一例において、T1=T2=8,T3=T4=64,T5=T6=4である。
3)一例において、T1=T2=8,T3=T4=32,T5=2,T6=4である。
4)一例において、T1=T2=8,T3=T4=32,T5=T6=4である。
iv.代替的に、W×Hブロックの場合、W<T1またはH<T2またはW>T3またはH>T4の場合、GEOを無効化してもよい。
1)一例において、T1=T2=8,T3=T4=64である。
2)一例において、T1=T2=8,T3=T4=32である。
2.ブロックに対してGEOが許可されるかどうかは、最大変換サイズに依存してもよい。
a)一例において、GEOは、最大変換サイズよりも大きい幅または/および高さを有するブロックに対しては許可されなくてもよい。
3.1つのブロックに対してGEOが許可されるかどうかは、最大許容CUサイズに依存してもよい。
a)一例において、GEOは、ブロックの幅または/および高さが最大CUサイズに等しいブロックに対しては許可されなくてもよい。
4.GEOは、特定のクロマフォーマットに対して許可されなくてもよい。
a)一例において、GEOは、4:0:0のクロマフォーマットに対して許可されなくてもよい。
b)一例において、GEOは、4:4:4のクロマフォーマットに対して許可されなくてもよい。
c)一例において、GEOは、4:2:2のクロマフォーマットに対して許可されなくてもよい。
d)一例において、GEOは、特定のクロマフォーマットを有する特定の色成分(例えば、CbまたはCr)に対して許可されなくてもよい。
5.GEOおよびコーディングツールXは、互いに排他的であってもよい。
a)一例において、GEOがブロックに適用される場合、コーディングツールXは無効化される。
i.さらに代替的に、GEOが適用される場合、コーディングツールXの使用指示および/またはコーディングツールXの副情報の信号通知はスキップされる。
ii.代替的に、コーディングツールXを1つのブロックに適用する場合、GEOは適用されない。
1)さらに代替的に、Xが適用される場合、GEOの使用の指示および/またはGEOのサイド情報の信号通知は省略される。
b)一例において、Xを、適応型色変換と呼ぶ場合がある。
c)一例において、Xを、デュアルツリーコーディングモードと呼ぶ場合がある。
d)一例において、Xを、変換スキップモードと呼ぶ場合がある。
e)一例において、Xを、BDPCMコーディングモードと呼ぶ場合がある。
f)一例において、Xは、サブブロック変換(Sub-Block Transform、SBT)でありうる。
i.一例において、SBTを無効化するかどうかは、GEOにより、GEO角度インデックスおよび/またはGEO距離インデックスおよび/またはGEOモードインデックスおよび/またはサブ分割に依存してもよい。
1)一例において、GEOによるサブ分割のエッジとSBTによるサブ分割のエッジとが交差する場合、SBTは、GEOコーディングブロックに対して無効化されてもよい。
2)代替的に、GEOによるサブ分割のエッジとSBTによるサブ分割のエッジとが交差していない場合、SBTは、GEOコーディングブロックに対して有効化されてもよい。
ii.一例において、どの種類のSBT(例えば、水平SBT、垂直SBT等)がGEOコーディングブロックに使用されるかは、GEO角度インデックスおよび/またはGEO距離インデックスおよび/またはGEOモードインデックスおよび/またはGEOによるサブ分割に依存してもよい。
1)一例において、GEOによるサブ分割のエッジとSBTによるサブ分割のエッジとが交差する場合、GEOコーディングブロックのために、水平SBTおよび/または垂直SBTを無効化してもよい。
2)代替的に、GEOによるサブ分割のエッジとSBTによるサブ分割のエッジとが交差していない場合、GEOコーディングブロックのために、水平SBTおよび/または垂直SBTを有効化してもよい。
6.異なる色成分は、異なるGEOモードインデックスを有してもよい。
a)一例において、クロマ成分は、輝度成分とは異なるGEOインデックスを有してもよい。
b)一例において、GEOは、クロマ成分に適用されなくてもよい。
c)さらに代替的に、異なる色成分に対して異なるGEOモードインデックスを信号通知してもよい。
i.例えば、輝度成分に対してモードインデックスを信号通知し、クロマ成分に対してモードインデックスを信号通知してもよい。
ii.さらに代替的に、第2の色成分のモードインデックスから第1の色成分のモードインデックスを予測してもよい。
7.GEOにおける異なるサブ領域に関連付けられた参照ピクチャの解像度が異なる場合、GEOは許可されなくてもよい。
a)代替的に、GEOに使用される1つの参照ピクチャの解像度が現在のピクチャの解像度と異なる場合、GEOは許可されなくてもよい。
b)代替的に、参照ピクチャの解像度と現在のピクチャの解像度が異なる場合であっても、GEOを許可してもよい。
c)ピクチャの解像度は、ピクチャの幅/高さを指す場合があり、またはピクチャにおける窓、例えばピクチャの適合性窓またはスケーリング窓を指す場合がある。
8.GEOが無効化されるか、または許可されない場合、GEO構文要素(例えば、マージデータ信号通知の構文表のwedge_partition_idx、merge_wedge_idx0、およびmerge_wedge_idx1)は、信号通知されなくてもよい。
a)構文要素が信号通知されない場合、それは0などのデフォルト値であると推測されてもよい。
b)GEOが無効化されるか、または許可されない場合、GEOに関連する意味変数(例えば、wedge_merge_mode)は、デフォルト値(例えば、0)であると推測されてもよい。
ブロックサイズ依存GEOモード選択
9. 1つ以上の構文要素(例えば、フラグ)は、シーケンス/ピクチャ/スライス/タイル/ブリック/サブピクチャ/他の映像処理ユニット(例えば、VPDU)レベルで信号通知され、映像ユニットに対して許可されるGEOモードの数を規定してもよい(例えば、シーケンス/グループのピクチャ/サブピクチャ/スライス/タイル/VPDU/CTU行/CTU/CU/PU/TU)。
a)一例において、それらは、SPS/VPS/APS/PPS/PH/SH/ピクチャ/サブピクチャ/スライス/タイルレベルで信号通知されてもよい。
i.さらに代替的に、構文要素は、GEOモードが映像処理ユニットに対して有効であるかどうか(例えば、sps_geo_enabled_flagが1に等しいかどうか)、および/または現在のピクチャタイプが非イントラまたはBピクチャであるかどうか、および/または現在のスライスタイプがBスライスであるかどうか等、条件付きで信号通知されてもよい。
b)一例において、構文要素は、映像処理ユニットにおける許可GEOモードの数がX(例えば、X=16または32または30)に等しいかどうかを示してもよい。
i.一例において、1つの構文要素(例えば、1つのSPSフラグ、または1つのPPSフラグ、またはピクチャヘッダにおける1つのフラグ)が、X(例えば、X=16または32または30)個のGEOモードが映像ユニットにおけるすべてのブロックに対して許可されるかどうかを示すために信号通知されてもよい。
1)代替的に、1つのフラグは、X(例えば、X=16または32または30)個のGEOモードが、選択的ブロック、例えば、条件Cが満たされたブロックに対して許可されるかどうかを示すために信号通知されてもよい。
a)Cは、H/W<=Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
b)Cは、H/W>Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
ii.一例において、複数の構文要素(例えば、2つのSPSフラグ)は、ブロックの各カテゴリに対して許可GEOモードを示すように信号通知されてもよく、ブロックは、例えば、ブロック寸法に従って、複数のカテゴリに分類される。
1)一例において、1つが、条件Cを有するブロックに対してX(例えば、X=16または32または30)個のGEOモードが許可されるかどうかを示すためのものであり、もう1つが、条件Dを有するブロックに対してY(例えばY=16または32または30)個のGEOモードが許可されるかどうかを示すためのものである。
a)さらに代替的に、Cは、H/W<=T(例えば、T=1または2または4または8)を有するブロックであってもよく、Dは、H/W>T(例えば、T=1または2または4または8)を有するブロックであってもよい。
c)一例において、どのように1つのブロックのためのGEOモードインデックスを信号通知するかは、前述の構文要素(例えば、フラグ)に依存してもよい。
i.一例において、1つのブロックのためのGEOモードインデックスの2値化および/またはエントロピーコーディングは、構文要素および/またはブロック寸法に依存してもよい。
1)一例において、構文要素によって導出されたブロックのための許可GEOモードの数がXに等しい(例えば、X=16または32または30)場合、GEOモードインデックスコーディングのためのcMaxの値はXに等しくてもよい。
2)一例において、構文要素によって導出されたブロックのための許可GEOモードの数がXに等しい(例えば、X=16または32または30)、そしてブロック寸法が条件Cを満たす場合、GEOモードインデックスコーディングのためのcMaxの値はXに等しくてもよい。
a)Cは、H/W<=Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
b)Cは、H/W>Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
ii.一例において、GEOモードインデックスコーディングのための2値化法は、ブロック寸法および/または構文要素に従って異なってもよい。
d)一例において、merge_geo_partition_idx(例えば、wedge_partition_idx)の最大値の値は、前述の構文要素(例えば、フラグ)および/またはブロック寸法に依存してもよい。
i.一例において、merge_geo_partition_idx(例えば、wedge_partition_idx)の値がビットストリームにおける最大許可GEOモードよりも小さくなければならないという制約が、ビットストリーム制約として追加されてもよい。
ii.一例において、merge_geo_partition_idx(例えば、wedge_partition_idx)の値が条件Cを満たすブロック寸法を有するブロックに対する最大許可GEOモードよりも小さくなければならないという制約が、ビットストリーム制約として追加されてもよい。
a)Cは、H/W<=Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
b)Cは、H/W>Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
e)一例において、1つ以上の制約フラグは、映像ユニットのためのX(例えば、X=16または32または30)モードGEO方法の使用を制約するかどうかを規定するように、映像処理ユニットレベルで信号通知されてもよい。
1)一例において、制約フラグは、シーケンスにおけるすべてのブロックに対してXモードGEO方法が使用されるかどうかを制約するように信号通知されてもよい。
2)一例において、XモードGEO方法をどのように制約するかは、ブロック寸法に依存してもよい。
a)一例において、条件Cを有するブロックに対してXモードGEO方法が使用されるかどうかを制約するために、SPSレベルで制約フラグが信号通知されてもよい。
i.Cは、H/W<=Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
ii.Cは、H/W>Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
b)一例において、2つの制約フラグがSPSレベルで信号通知されてもよい。1つは、条件Cを有するブロックに対してXモードGEO方法を使用するかどうかを制約するものであり、もう1つは、条件Dを有するブロックに対してYモードGEO方法を使用するかどうかを制約するものである。
i.Cは、H/W<=T(例えば、T=1または2または4または8)を有するブロックであってもよく、Dは、H/W>T(例えば、T=1または2または4または8)を有するブロックであってもよい。
f)一例において、1つのブロックに対してどのGEOモードが許可されるかは、前述の構文要素(例えば、フラグ)に依存してもよい。
i.一例において、1つのブロックに対して1つのGEOモードのサブセットまたは1つのGEOモードのフルセットが許可されるかどうかは、前述の構文要素(例えば、フラグ)に依存してもよい。
ii.一例において、1つのブロックに対して1つのGEO角度のサブセットまたは1つのGEO角度のフルセットが許可されるかどうかは、前述の構文要素(例えば、フラグ)に依存してもよい。
iii.一例において、1つのブロックに対して1つのGEO変位のサブセットまたは1つのGEO変位のフルセットが許可されるかどうかは、前述の構文要素(例えば、フラグ)に依存してもよい。
1)一例において、非ゼロ変位インデックスを有するGEOモードが使用されるかどうかは、前述の構文要素(例えば、フラグ)に依存してもよい。
10.映像ユニット(例えば、ピクチャ/スライス/タイル/ブリック/CTU行/CTU)を処理するために、複数セットの許可GEOモードを利用することができる。
a)一例において、複数セットからのセットの選択は、復号化情報(例えば、ブロックのブロック寸法/ブロック形状)に依存してもよい。
b)一例において、複数セットの間で少なくとも2つのセットは、異なる数の許可GEOモードを有する。
c)一例において、複数セットの間でT(例えば、T=2)個のセットは、同じ数の許可GEOモードを有してもよいが、1つのセットに含まれる少なくとも1つのGEOモードは、別のセットにおいて除外される。
d)一例において、複数セットの間でT個(例えば、T=2)のセットは、同じGEOモードを有してもよいが、少なくとも1つのGEOモードが、T個のセットのうちの任意の2つのために異なる位置に配置される。
e)一例において、どのようにGEOモードインデックスを信号通知するかは、許可GEOモードの対応するセット、例えばセットの中の許可GEOモードの数に依存してもよい。
f)一例において、復号化されたGEOモードインデックスは、異なるGEOモード(例えば、異なる角度または異なる距離)に対応してもよい。
i.一例において、どのように復号化されたGEOモードインデックスをGEOモードにマッピングするかは、ブロックの対応するセットに依存してもよい。
g)一例において、ビットストリームにおける1つのブロックに使用できるGEOモードの数は、Aより小さい数(例えば、JVET-P0884-v8の作業草案の復号化処理のように、A=81)として定義されてもよい(Bと表す)。
a.例えば、Bは、ブロック寸法に関わらず、任意のGEOブロックに対して一定の値であってもよい。
b.例えば、Bは、ブロック寸法に依存して異なるブロックから変更され得る変数であってもよい。
h)一例において、ビットストリームにおけるブロックに信号通知できるGEOモードの数は、Aより小さい数(Cと表す)として定義されてもよい。
c.例えば、Cは、ブロック寸法に関わらず、任意のGEOブロックに対して一定の値であってもよい。
d.例えば、Cは、ブロック寸法に依存して異なるブロックから変更され得る変数であってもよい。
e.例えば、BはCに等しくてもよい。
f.例えば、BまたはCは、30、40、45または50に等しくてもよい。
i)一例において、BまたはCは、エンコーダからデコーダに信号通知されてもよい。
j)一例において、GEOコーディングブロックを処理するために、許可GEOモードの2つのセット(例えば、セットAおよびセットB)を定義してもよい。
i.一例において、セットAに含まれた少なくとも1つのGEOモードは、セットBにおいて除外されてもよい。
1)一例において、セットAにおけるGEOモードから導出された少なくとも1つのGEO角度は、セットBにおけるGEOモードから導出されたGEO角度において除外されてもよい。
ii.一例において、セットAおよびセットBは、同じ数の許可GEOモードを有してもよく、例えば、いずれかのセットに対してX(例えば、X=16または32または30)個のモードが使用される。
1)一例において、セットAおよびセットBは、同じ数の許可GEO角度を有してもよく、例えば、いずれかのセットに対してY(例えば、Y<24)角度が使用される。
1)一例において、セットAおよびセットBは、異なる数の許可GEOモード、例えばセットAに使用されるX1(例えば、X1=16)モードを有していてもよく、一方、セットBに使用されるX2(例えば、X2=32)モードとしてもよい。一例では、セットAおよびセットBは、異なる数の許可GEO角度、例えば、セットAに使用されるY1角度、一方、セットBに使用されるY2角度、例えばY1≠Y2、Y1<24、Y2<24を有していてもよい。
iii.一例において、ブロックがGEOモード/角度/セットAまたはセットBからの距離を使用するかどうかは、ブロック寸法、例えばブロック寸法が条件Cを満たすかどうかに依存してもよい。
1)Cは、H/W<=Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
2)Cは、H/W>Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
iv.一例において、どのようにブロックのためのGEOモードインデックスを信号通知するかは、ブロック寸法に依存してもよい。
1)一例において、GEOモードインデックスのためのTRコーディングのcMax値は、H/W<=T(例えば、T=1、2、4、8)であるとすると、X(例えば、X=16、32、30)に等しくてもよい。
v.IがGEOモードセットの総数を表し、Set(i=0~I-1)が1つのブロックに使用されるGEOモードセットを表し、L(i=0~I-1)がSetの長さを表すとする。一例において、GEOコーディングブロックは、復号化情報(例えば、関連する構文要素、ブロック寸法)に従って、複数のブロックカテゴリに分類されてもよい。
1)一例において、ブロックに対してどのGEOモードセットが使用されるかは、ブロックカテゴリおよび/または構文要素(例えば、黒丸9に記載のフラグ)に依存してもよい。
2)一例において、ブロックに対して許可されるGEOモードの数は、ブロックカテゴリおよび/または構文要素(例えば、黒丸9に記載されたフラグ)に依存してもよい。
3)ブロックに対する対応GEOモードセットをGEOモードセットi(例えば、Set)と表すとする。
a)一例において、このブロックのために許容可能なGEOモードの数量は、Setの長さより少なく、即ちLより少なくてもよい。
b)一例において、このブロックのために許容可能なGEOモードの数量は、Setの長さと等しく、即ちLと等しくてもよい。
c)一例において、このブロックに対して許容可能なすべてのGEOモードは、対応するGEOモードセットi(例えば、Set)に由来してもよい。
d)一例において、このブロックに対して許可されるGEOモードの一部は、対応するGEOモードセットi(例えば、Set)に由来してもよい。
e)一例において、このブロックのための許容可能なGEOモードは、対応するGEOモードセット(例えば、Set)において、少なくともN個(例えば、N<L)のモードを含んでもよい。
i.一例において、対応するGEOモードセットの中の第1のN個(例えば、N=16または14)のモードを使用してもよい。
ii.一例において、対応するGEOモードセットの中の最後のN個(例えば、N=16または14)のモードを使用してもよい。
iii.一例において、対応するGEOモードセットの中のM個(例えば、M=2)のモードのうちの1つを使用してもよい。
f)一例において、このブロックのための許容可能なGEOモードは、対応するGEOモードセットの中のいくつかのモードと、いくつかの他の予め定義されたGEOモード(例えば、ゼロ変位を有するGEOモード、例えば、距離インデックスが0に等しい)とから構成されていてもよい。
11.どのようにGEOモードインデックスを角度/距離インデックスにマッピングするかは、復号化情報(例えば、関連する構文要素、ブロック寸法)に依存してもよい。
a)一例において、どのようにGEOモードインデックスを角度/距離インデックスにマッピングするかは、ブロック寸法が条件Cを満たすかどうかに依存してもよい。
i.Cは、H/W<=Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
ii.Cは、H/W>Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
b)Iがブロックに対する許可GEOモードの総数を表し、Jがブロックに対する許可GEO角度の総数を表し、Kがブロックに対する許可GEO距離の総数を表し、M(i=0…I-1)がブロックに対するコーディング/信号通知されたGEOモードインデックスを表し、A(j=0…J-1)がブロックに対するマップされた角度インデックスを表し、D(k=0…K-1)がブロックに対する距離インデックスを表す。
i.一例において、マッピング角度インデックスAはGEOモードインデックスMとともに増加しなくてもよい。
1)一例において、複数の連続したコーディング/信号通知されたGEOモードインデックスMの場合、対応する角度インデックスAは、連続した数字でなくてもよく、および/または降順でなくてもよく、および/または昇順でなくてもよく、および/または順不同であってもよい。
2)代替的に、複数の連続したコーディング/信号通知されたGEOモードインデックスの場合、対応する角度インデックスAは、連続した数字であってもよく、および/または降順であってもよく、および/または昇順であってもよい。
ii.一例において、マッピングされた距離インデックスDはGEOモードインデックスMの値とともに増加しなくてもよい。
1)一例において、複数の連続したコーディング/信号通知されたGEOモードインデックスMの場合、対応する距離インデックスDは、連続した数字でなくてもよく、および/または降順でなくてもよく、および/または昇順でなくてもよく、および/または順不同であってもよい。
2)代替的に、複数の連続したコーディング/信号通知されたGEOモードインデックスの場合、対応する距離インデックスDは、連続した数字であってもよく、および/または降順であってもよく、および/または昇順であってもよい。
iii.一例において、コーディング/信号通知されたGEOモードインデックスを別の1セットのマッピングされたGEOモードインデックスにマッピングする場合、マッピングされたGEOモードインデックスは、コーディング/信号通知されたGEOモードインデックスとともに上昇しなくてもよい。
1)一例において、複数の連続したコーディング/信号通知されたGEOモードインデックスの場合、対応するマッピングされたGEOモードインデックスは、連続した数字でなくてもよく、および/または降順でなくてもよく、および/または昇順でなくてもよく、および/または順不同であってもよい。
2)代替的に、複数の連続したコーディング/信号通知されたGEOモードインデックスの場合、対応するマッピングされたGEOモードインデックスは、連続した数字であってもよく、および/または降順であってもよく、および/または昇順であってもよい。
12.GEOブロックに対する許可モード/角度/距離の数は、映像ユニットに対して考えられるGEOモード/角度/距離の数とは異なってもよい。
a)一例において、ブロックに対して信号通知される最大GEOモードインデックスは、シーケンスに対する許可GEOモードの総数より少なくてもよい。
b)一例において、ブロックに対して許可されるGEO角度の数は、シーケンスに対して定義される許可GEO角度の総数より少なくてもよい。
c)一例において、ブロックに対して許可されるGEOモード/角度/距離の数は、ブロック寸法(例えば、WまたはHまたはW/HまたはH/W)に依存してもよい。
13.ビットストリームにおいて信号通知できる、または使用できる異なるブロック寸法(例えば、ブロックの高さおよび/またはブロックの幅)毎のGEOモードの数は、異なってもよい。JVET-P0884-v8に定義されているように、復号化処理において角度/距離インデックスを導出するために使用し得るGEOモードの総数をAと表してもよい。ビットストリームにおける1つのブロックに使用できるGEOモードの数で定義し、Bと表してもよい。ビットストリームにおける1つのブロックに対して信号通知され得るGEOモードの数は、数として定義し、Cと表してもよい。
a)一例において、BまたはCは、Aと異なってもよい。
i.例えば、BはCに等しくてもよい。
ii.例えば、BまたはCは、Aより小さくもよい。
b)一例において、BまたはCは、異なるブロックカテゴリ毎に異なるように定義されてもよい。
1)一例において、ブロックカテゴリは、ブロックの幅と高さの比によって分類されてもよい。
a.一例において、W×Hブロックに対し、W/Hが1および/または2および/または3および/または4および/または8である場合、BまたはCは、Aより小さくてもよい。
b.一例において、W×Hブロックに対し、H/Wが1および/または2および/または3および/または4および/または8である場合、BまたはCは、Aより小さくてもよい。
2)一例において、ブロックカテゴリは、例えば、ブロックのサイズがW*Hに等しいなど、ブロックの幅および高さの関数によって分類されてもよい。
a.一例において、W×Hブロックに対し、W*H>Tである場合、BまたはCは、Aより小さくてもよい(例えば、T=512/1024/2048/4096)。
b.一例において、W×Hブロックに対し、BまたはCは、W*H<=Tである場合、Aより小さくてもよい(例えば、T=512/1024/2048/4096)。
3)一例において、ブロックカテゴリは、Wおよび/またはHなど、ブロック寸法によって分類されてもよい。
a.一例において、W×Hブロックに対し、W=T1および/またはH=T2(式中、T1およびT2は一定の値である)である場合、BまたはCはAより小さくてもよい。
b.一例において、W×Hブロックに対し、W>T1および/またはH>T2(式中、T1およびT2は一定の値である)の場合、BまたはCは、Aより小さくてもよい。
c.一例において、W×Hブロックに対し、W<T1および/またはH<T2(式中、T1およびT2は一定の値である)の場合、BまたはCは、Aより小さくてもよい。
4)一例において、1つのブロックカテゴリiに対して、BまたはCに対して固定数のセットB(i=0…N-1、式中、Nは、上記黒丸に定義されたようなブロックカテゴリの数を表す)を定義してもよい。
a.一例において、ブロック幅が32より小さく、ブロック高さが32より小さいブロックカテゴリ0の場合、Bは40または45または50に等しい。ブロック幅が32であり、ブロック高さが32であるブロックカテゴリ1の場合、Bは20または30または40に等しい。ブロック幅が32より大きく、ブロック高さが32より大きいブロックカテゴリ2の場合、Bは20または30に等しい。
5)各ブロックカテゴリのBまたはCは、エンコーダからデコーダに信号通知されてもよい。
a.代替的に、各ブロックカテゴリのBまたはCは、エンコーダおよびデコーダに対して予め定義されてもよい。
6)一例において、輝度ブロックの幅および高さは、Bまたは/およびCを導出するために用いられてもよい。
14.ビットストリームにおいて信号通知されるGEOモードインデックスの値は、復号化処理において角度/距離インデックスを導出するために使用されるGEOモードインデックスの値と異なってもよい。
a)一例において、GEOモード/角度/距離のフルセット(例えば、JVET-P0884の作業草案における表8-10に定義されるGEOモードのフルセット)に関してGEOモード/角度/距離のサブセットを、特定のブロックカテゴリに使用してもよく、上記黒丸で詳述したように、ブロックカテゴリは、ブロックの幅および/またはブロックの高さによって分類されてもよい。
b)一例において、マッピングテーブル(例えば、ルックアップテーブル)を使用して、信号通知されたGEOモードインデックスとマッピングされたGEOモードインデックスとの対応関係を規定してもよい(例えば、マッピングされたGEOモードを使用して、例えば、JVET-P0884の作業草案に提供される復号化処理の表8-10におけるwedge_partition_idxなどのような、角度インデックスおよび距離インデックスを導出してもよい)。
c)一例において、GEOブロックカテゴリに依存して、N個のマッピングテーブル(N>1)を定義してもよい。例えば、Nは19より小さい定数であってもよい。
a.一例において、マッピングテーブルの数は、ブロックカテゴリの数に依存してもよい。
b.これらのマッピングテーブルの長さは、異なるブロックカテゴリに対して許可されるGEOモードの数に従って、異なるブロックカテゴリに対して異なってもよい。
d)上記で定義されたような1つ以上のマッピングテーブルは、エンコーダからデコーダに信号通知してもよい。
a.代替的に、マッピングテーブルは、エンコーダおよびデコーダに対して予め定義されてもよい。
15.信号通知されたGEOモードインデックスのための2値化は、復号化情報(例えば、ブロックの寸法/カテゴリ)に依存してもよい。
a)一例において、信号通知されたウェッジモードインデックスの2値化中の最大値(cMaxと表す)は、ブロック寸法(例えば、ブロックの幅および/またはブロックの高さ)またはブロックカテゴリ(上記黒丸で詳述されるように)に依存してもよい。
b)一例において、ブロックサイズが条件Cを満たす場合、GEOモードインデックスコーディングのためのcMaxの値は、Xに等しくてもよい(例えば、X=16または32または30)。
i.Cは、H/W<=Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
ii.Cは、H/W>Tを有するブロック(例えば、T=1または2または4または8)として例示されてもよい。
16.GEOモードインデックスは、切り捨てられたライス、または切り捨てられたバイナリ、または切り捨てられた単項、または固定長のもの、またはk次の指数ゴロム、または限定されたk次の指数ゴロム2値化を使用してコーディングされてもよい。
a)信号通知されたGEOモードインデックスの2値化には、短縮された2値コードを使用してもよい。
i.一例において、ビットストリームにおける信号通知されたGEOモードインデックスは、復号化処理においてJVET-P0884-v8に定義されるような角度/距離インデックスを導出するために使用される、導出されたGEOモードインデックスとは異なってもよい。
b)信号通知されたGEOモードインデックスの2値化には、K次のEGコーディングを使用してもよい。
i.一例において、K=0または1または2または3である。
17.コンテキストコーディングは、GEOモードインデックスをコーディングするために使用してもよい。
a)一例において、GEOモードインデックスの第1のX(例えば、X=1)個のビンは、コンテキストコーディングによってコーディングされてもよい。そして、他のビンは、コンテキストモデル化なしで、バイパスコーディングによってコーディングされてもよい。
ブレンド重みおよび動き記憶重み生成
18.TPMおよび/またはGEOモードにおけるクロマ成分のためのブレンド重みおよび/または動き記憶重みは、クロマサンプルの位置タイプ(例えば、図12におけるChromaLocType)に依存してもよい。
a)クロマサンプルのための重み導出をブレンドするために使用されるダウンサンプリングフィルタのタイプは、映像ユニットレベル(例えば、SPS/VPS/PPS/ピクチャヘッダ/サブピクチャ/スライス/スライスヘッダ/Tile/Brick/CTU/VPDUレベル)で信号通知されてもよい。
a.一例において、ハイレベルフラグは、異なるクロマ位置タイプのコンテンツを切り替えるように信号通知されてもよい。
i.一例において、ハイレベルフラグは、クロマ位置タイプ0とクロマ位置タイプ2とを切り替えるように信号通知されてもよい。
ii.一例において、TPM/GEO予測モードにおける左上ダウンサンプリングされた輝度重みが左上輝度重みと同一位置に配置されているかどうか(すなわち、クロマサンプルの位置タイプ0)を規定するためのフラグを信号通知してもよい。
iii.一例において、TPM/GEO予測モードにおける左上ダウンサンプリングされた輝度サンプルが、左上輝度サンプルと水平に共座(co-sited)しているが、左上輝度サンプルに対して0.5ユニットの輝度サンプルだけ垂直にシフトされている(すなわち、クロマサンプルの位置タイプ2)かどうかを規定するためのフラグを信号通知してもよい。
b.一例において、4:2:0のクロマフォーマットおよび/または4:2:2のクロマフォーマットのためにこのタイプのダウンサンプリングフィルタを信号通知してもよい。
c.一例において、TPM/GEO予測に使用されるクロマダウンサンプリングフィルタのタイプを規定するために、フラグを信号通知してもよい。
i.一例において、TPM/GEO予測モードにおけるクロマ重み導出のためにダウンサンプリングフィルタAを使用するか、またはダウンサンプリングフィルタBを使用するかについてのフラグを信号通知してもよい。
b)クロマサンプルのための重み導出をブレンドするために使用されるダウンサンプリングフィルタのタイプは、映像ユニットレベル(例えば、SPS/VPS/PPS/ピクチャヘッダ/サブピクチャ/スライス/スライスヘッダ/タイル/ブリック/CTU/VPDUレベル)で導出されてもよい。
a.一例において、ルックアップテーブルは、クロマサブサンプリングフィルタのタイプとコンテンツのクロマフォーマットのタイプとの対応関係を規定するように定義されてもよい。
c)異なるクロマ位置タイプの場合、TPM/GEO予測モードのために、規定されたダウンサンプリングフィルタを使用してもよい。
a.一例において、TPM/GEOのクロマ重みは、特定のクロマサンプルの位置タイプ(例えば、クロマサンプルの位置タイプ0)の場合、同一位置に配置された左上の輝度重みからサブサンプリングされてもよい。
b.一例において、特定のクロマサンプルの位置タイプ(例えば、クロマサンプルの位置タイプ0または2)の場合、TPM/GEO予測モードにおけるクロマ重みサブサンプリングのために、規定されたXタップフィルタ(Xは、X=6または5などの定数である)を使用してもよい。
GEO角度/距離の縮小
19.ブロックに対する許可GEOモード/角度/変位/分割/分割パターンの数および/または候補は、復号化情報(例えば、ブロック寸法、および/または構文要素等)、および/または導出された情報(例えば、GEO角度)に依存してもよい。
a)一例において、ブロックはブロックタイプ(カテゴリ)に分類されてもよい。ブロックに対する許可GEOモード/角度/変位/分割/分割パターンの数および/または候補は、ブロックのタイプに依存してもよい。ブロックのタイプは、ブロック寸法に依存してもよい。
b)一例において、ブロックに対して許可される変位の数および/または候補は、ブロック寸法に依存してもよい。
i.一例において、ブロックのタイプに対して許可される変位の数は、ブロック幅がXに等しい(例えば、X=128または64)および/またはブロック高さがYに等しい(例えば、Y=128または64)ブロックの場合、N(例えば、N=1または2または3)に等しくてもよい。
ii.一例において、あるタイプのブロックに対して許可される変位の数は、ブロックの幅と高さの比がTに等しいブロック(例えば、T=1/8、および/または8、および/または1/4、および/または4)の場合、またはある範囲(例えば、T<=1/4,T>=4,T<=1/8,T>=8)のブロックの場合は、Nに等しくてもよい(例えばN=1、または2、または3)。
c)一例において、ブロックに対する許可変位の数および/または候補は、導出されたGEO角度に依存してもよい。
i.一例において、許可変位の数は、異なるGEO角に対して異なってもよい。
1)例えば、GEOモードでサポートされる角度のサブセットがN個(例えば、N>1)である場合、角度のサブセットに対して、許可変位の数はXに等しくてもよく(例えば、X=1または2または3)、角度の別のサブセットに対して、許可変位の数はYに等しくてもよい(例えば、Y=4)。
d)一例において、ブロックに対するGEOモードXの数は、構文要素(例えば、構文フラグ、および/または構文パラメータ等)によって導出されてもよい。
i.構文エレメントは、VPS/DPS/SPS/PPS/シーケンスヘッダ/ピクチャヘッダ/スライスヘッダ/CTU/CUにおいて信号通知されてもよい。
ii.XまたはY個のGEOモードを使用するかどうかは、構文フラグに依存してもよい。
1)例えば、数Xは数Yよりも小さくてもよい。
2)一例において、X=2または4または6または8または12または14または16である。
3)一例において、Y=16または32または48または54または64または82である。
iii.X0またはX1またはX2個のGEOモードを使用するかどうかは、構文要素に依存してもよい。
1)一例において、X0はX1より小さくてもよく,および/またはX1はX2より小さくてもよい。
2)一例において、X0=2または4または5または8または12または14である。
3)一例において、X1=8または12または14または16である。
4)一例において、X2=32または64または82である。
20.ブロックに対してどのGEOモード/角度/変位が許可されるかは、構文要素(例えば、構文フラグまたは構文パラメータ)および/またはブロック寸法に依存してもよい。
a)構文要素は、VPS/DPS/SPS/PPS/シーケンスヘッダ/ピクチャヘッダ/スライスヘッダ/CTU/CUにおいて信号通知されてもよい。
b)一例において、ブロックに対して非対角角度が許可されるかどうかは、構文要素(例えば、構文フラグ)および/またはブロック寸法に依存してもよい。
i.例えば、GEOモードの第1のセットAまたはGEOモードの第2のセットBをブロックに対して許可するかどうかは、構文要素に依存してもよい。例えば、セットAは、セットBよりも少ない要素を有してもよい。
1)一例において、Aは、変位が0に等しい対角線角度に投影されたGEOモードを示してもよい。
2)一例において、Aは、すべての変位の対角線角度に投影されたGEOモードを示してもよい。
3)一例において、Bは、対角角度および非対角角度の両方に投影されたGEOモードを示してもよい。
c)一例において、ブロックに対してゼロでない変位が許可されるかどうかは、構文要素(例えば、構文フラグ)および/またはブロック寸法に依存してもよい。
i.例えば、GEOモードマッピングテーブルにおける選択されたX個のGEOモード(例えば、JVET-Q0160_CE4_1_CommonBaseWD_w_fixesにおける表36)は、変位がゼロ(例えば、distanceIdx=0)であってもよい。例えば、選択されたX個のモードは、GEOモードマッピングテーブルにおける第1のX個のモードであってもよい。
1)一例において、X=2または4または6または8または12または14または16または20または24または32である。
2)例えば、構文要素によって導出されたブロックのための許可GEOモードの数がXに等しい場合、GEOマッピングテーブルにおける第1のX個のGEOモードを使用し、それらに対応する変位はゼロでもよい。
3)一例において、ゼロ変位に対応するGEOモード(例えば、distanceIdx=0)を、GEOモードマッピングテーブルの最初に配置してもよい。
4)一例において、非ゼロ変位に対応するGEOモード(例えば、distanceIdx=1、2、または3)は、ゼロ変位に対応するGEOモード(例えば、distanceIdx=0)の後に配置されてもよい。
d)一例において、許可GEOモード/角度/変位は、異なるブロックカテゴリごとに異なってもよい。ブロックカテゴリCiからのブロックに対して、GEOモード/角度/変位Si(i=0~N-1、ここで、Nはブロックカテゴリの合計数である)のサブセットを許可するとする。
i.一例において、ブロックのためにサブセットSi(i=0…N-1)を使用するかまたはサブセットSj(j=0…N-1)を使用するかどうかは、ブロックの幅と高さの比(例えば、幅/高さ)に依存してもよい。
ii.一例において、ブロックのためにサブセットSi(i=0~N-1)またはサブセットSj(j=0~N-1)を使用するかどうかは、ブロックカテゴリに依存してもよく、ブロックカテゴリは、ブロックの幅と高さとの関係(例えば、幅>高さ、および/または幅<高さ、および/または幅=高さ)によって分類されてもよい。
iii.一例において、Si(i=0~N-1)における少なくとも1つの要素は、Sj(j=0~N-1)に含まれていなくてもよい。
Figure 0007453374000012
Figure 0007453374000013
Figure 0007453374000014
7.4.10.7 マージデータ意味論
Figure 0007453374000015
8.5.7 geoインターブロックのための復号化処理
8.5.7.1一般
この処理は、1に等しいMergeGeoFlag[xCb][yCb]を有するコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
この処理の出力は以下の通りである。
-輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-成分Cbのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
7.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNとクロマサンプルの2つの順序付き2次元配列refPicLNCbおよびrefPicLNCrから構成される参照ピクチャは、predListFlagNに等しく設定されたXおよびrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、0に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、1に設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、2に設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
8.表36に従って、merge_geo_partition_idx[xCb][yCb]の値と、cbHeight>cbWidthに等しい変数isNarrowBlkセットとを入力として用いて、マージgeoモード変数angleIdxおよびdistanceIdxの分割角度および距離を設定する。
Figure 0007453374000016
10.x=0.cbWidth-1およびy=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamples[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
11.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
12.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
13. 8.5.7.3項に規定されるマージgeoモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、ならびに予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
Figure 0007453374000017
21.一例において、X(例えば、X<N)個の要素は、Si(i=0~N-1)およびSj(j=0~N-1)の両方に含まれてもよい。
22.GEOブロックのための角度の数は、T1未満であってもよい(例えば、T1=24)。復号化処理に使用される角度の数は、NUM_ANGLEと表される。
a)代替的に、GEOモードの数はT2未満であってもよい(例えば、T2=82)。
i.一例において、wedge_partition_idxからのangleIdxおよびdistanceIdxのマッピングは、GEOモードにおいてサポートされる角度の数および/または各角度においてサポートされる距離の数に依存してもよい。
b)代替的に、GEOブロックのための距離の数は、T3未満であってもよい(例えば、T3=4または3)。
i.一例において、1つ以上の角度に対する距離の数は、T3未満であってもよい。
1)例えば、垂直および水平の角度の距離の数は、Xに等しくてもよい(例えば、X=2)。
c)一例において、復号化処理に使用される角度の数NUM_ANGLEは、max angleIdxに1を加えたものに等しくてもよい。
i.例えば、NUM_ANGLE=24であり、例えば、JVET-P0884の作業草案における表8-10に定義されるmax angleIdxは、23に等しい。
ii.別の例として、NUM_ANGLE<T1(例えば、T1=24)。
d)一例において、GEOモードコーディングブロックに対する重み付けサンプル予測および/または動きベクトル記憶の処理において使用される変位Yの計算は、復号化処理に使用される角度の総数に依存してもよい。
i.一例において、変位Yは、(displacementX+(NUM_ANGLE>>2))% NUM_ANGLEに設定されてもよい。
e)一例において、GEOモードコーディングブロックに対する重み付けサンプル予測および/または動きベクトル記憶の処理において使用されるshiftHorの計算は、復号化処理に使用される角度の総数に依存してもよい。
i.一例において、shiftHorを0に設定することができ、以下の条件の1つが真である。そうでない場合、shiftHorは1に等しく設定される。
1)angleIdx%(NUM_ANGLE/2)は(NUM_ANGLE>>2)に等しい。
2)angleIdx%(NUM_ANGLE/2)は0に等しくなく、hwRatio≧1となり、hwRatioはH/Wに設定される。
f)一例において、GEOブロックのブレンド重みインデックスを導出するためのoffsetXおよび/またはoffsetYの導出は、角度の数量および/またはshiftHorの値に依存してもよい。
i.一例において、shiftHorが0に等しい場合、GEOブロックのブレンド重みインデックスを導出するためのoffsetYは、次のように導出されてもよい。
1)offsetY=(256-nH)>>1+angleIdx<(NUM_ANGLE/2)?(distanceIdx*nH)>>3:-((distanceIdx*nH)>>3)
ii.一例において、shiftHorが1に等しい場合、GEOブロックのブレンド重みインデックスを導出するためのoffsetXは、次のように導出されてもよい。
1)offsetX=(256-nW)>>1+angleIdx<(NUM_ANGLE/2)?(distanceIdx*nW)>>3:-((distanceIdx*nW)>>3)
g)一例において、GEOブロックの動きインデックスを導出するためのoffsetXおよび/またはoffsetYの導出は、角度の数量および/またはshiftHorの値に依存してもよい。
i.一例において、shiftHorが0に等しい場合、GEOブロックの動きインデックスを導出するためのoffsetYは、次のように導出されてもよい。
1)offsetY=(64-numSbY)>>1+angleIdx<(NUM_ANGLE/2)?(distanceIdx*nCbH)>>5:-((distanceIdx*nCbH)>>5)
ii.一例において、shiftHorが1に等しい場合、GEOブロックの動きインデックスを導出するためのoffsetXは、次のように導出されてもよい。
1)offsetX=(64-numSbX)>>1+angleIdx<(NUM_ANGLE/2)?(distanceIdx*nCbW)>>5:-((distanceIdx*nCbW)>>5)
h)一例において、GEO分割距離を導出するためのルックアップテーブルの長さは、GEOブロックの復号化処理に使用される角度の数に依存してもよい。
i.一例において、JVET-P0884の作業草案における表8-12に示すように、GEO分割距離導出用ルックアップテーブルの長さは、NUM_ANGLEに等しくてもよい。
1)一例において、NUM_ANGLE<24である。
i)一例において、GEO分割距離を導出するためのルックアップテーブルの値は、再設計されてもよく、その長さはNUM_ANGLEに等しい。
1)一例において、再設計されたルックアップテーブルは、JVET-P0884の作業草案における表8-12のサブセットであってもよい。
2)一例において、表は、NUM_ANGLE=20の場合、以下のように設計されてもよい。
Figure 0007453374000018
3)一例において、表は、NUM_ANGLE=20の場合、以下のように設計されてもよい。
Figure 0007453374000019
4)一例において、表は、NUM_ANGLE=20の場合、以下のように設計されてもよい。
Figure 0007453374000020
5)一例において、表は、NUM_ANGLE=20の場合、以下のように設計されてもよい。
Figure 0007453374000021
6)一例において、表は、NUM_ANGLE=16の場合、以下のように設計されてもよい。
Figure 0007453374000022
j)一例において、PART1およびPART2がAまたはBに等しく、GEOモードのための重み付けサンプル予測処理に使用されるかどうかは、角度インデックスT1および角度インデックスT2に依存してもよく、AおよびBは、GEOモードのための重み付けサンプル予測処理のための2つの入力配列predSamplesLAおよびpredSamplesLBを表し、PART1およびPART2は、GEO予測ブロックの出力重み付け予測サンプル値の導出のためのAおよびBの表現である。
i.一例において、angleIdx>=T1&&angleIdx<=T2である場合、PART1およびPART2は、それぞれAおよびBに等しく設定されてもよく、そうでない場合、PART1およびPART2は、それぞれBおよびAに等しく設定されてもよい。
ii.一例において、T1およびT2は、一定の値であり、T1<NUM_ANGLEおよびT2<=NUM_ANGLEでもよい。
1)一例において、NUM_ANGLE=24の場合、T1=10およびT2=20である。
2)一例において、NUM_ANGLE=20の場合、T1=8およびT2=16である。
3)一例において、NUM_ANGLE=20の場合、T1=8およびT2=17である。
4)一例において、NUM_ANGLE=20の場合、T1=9およびT2=16である。
5)一例において、NUM_ANGLE=16の場合、T1=7およびT2=13である。
iii.一例において、T1およびT2は、角度の数に基づいて算出されてもよい。
k)一例において、GEOモードのための動きベクトル記憶処理において使用されるpartIdxが0に設定されるか、または1に設定されるかは、角度インデックスT1および角度インデックスT2に依存し、partIdxは、GEO動き記憶のための動きベクトルを割り当てるための変数sTypeを導出するために使用される。
i.一例において、angleIdx>=T1&&angleIdx<=T2である場合、partIdxを1に設定することができ、そうでない場合、partIdxを0に設定することができる。sType=abs(motionIdx)<32?2:motionIdx<=0?partIdx:1-partIdx、式中、変数motionIdxは、GEO分割距離を導出するためのルックアップテーブルを使用して計算される(例えば、JVET-P0884の作業草案における表8-12)。
ii.一例において、T1およびT2は、一定の値であり、T1<NUM_ANGLEおよびT2<=NUM_ANGLEでもよい。
1)一例において、NUM_ANGLE=24の場合、T1=10およびT2=20である。
2)一例において、NUM_ANGLE=20の場合、T1=8およびT2=16である。
3)一例において、NUM_ANGLE=20の場合、T1=8およびT2=17である。
4)一例において、NUM_ANGLE=20の場合、T1=9およびT2=16である。
5)一例において、NUM_ANGLE=16の場合、T1=7およびT2=13である。
iii.一例において、T1およびT2は、角度の数に基づいて算出されてもよい。
l)一例において、GEO/ウェッジメトリック分割距離を導出するためのルックアップテーブルの値(例えば、Dis[i]、i=0…NUM_ANGLE-1)は、以下の表のように設定してもよい。
1)代替的に、GEO/ウェッジメトリック分割距離を導出するためのルックアップテーブルの値(例えば、Dis[i]、i=0…NUM_ANGLE_1)は、以下の表のサブセットのように設定してもよい。
2) 一例において、3および/または21に等しい角度インデックスのためのGEO/ウェッジメトリック分割距離は、4に等しくてもよい。
3) 一例において、9および/または15に等しい角度インデックスのためのGEO/ウェッジメトリック分割距離は、-4に等しくてもよい。
Figure 0007453374000023
GEO角度導出
23.GEOモードインデックスおよび/またはGEO角度インデックスおよび/またはGEO距離インデックスおよび/またはGEO変位および/またはGEOブレンド重み/GEO動き重みの導出は、ブロック寸法(例えば、ブロックの幅および/または高さを有する関数)に依存してもよい。
a)一例において、GEOモードインデックスおよび/または角度インデックスおよび/または距離インデックスの導出は、値Xに依存してもよい。
i.一例において、Xは、log2(高さ)および/またはlog2(幅)に依存してもよい。
ii.一例において、Xは、log2(高さ)-log2(幅)であってもよい。
iii.一例において、Xは、log2(高さ)+log2(幅)であってもよい。
iv.一例において、Xは、log2(幅)-log2(高さ)であってもよい。
v.一例において、Xは、abs(log2(幅)-log2(高さ))であってもよい。
vi.一例において、Xは、Clip3(M,N,log2(高さ)-log2(幅))であってもよく、MおよびNは、M=-2,N=2のような定数である。
vii.一例において、Xは、Clip3(M,N、log2(幅)-log2(高さ))であってもよく、MおよびNは、M=-2,N=2のような定数である。
viii.一例において、Xは、Clip3(M,N,log2(高さ)+log2(幅))であってもよく、MおよびNは、M=-2,N=2のような定数である。
ix.一例において、Xは、Clip3(M,N,abs(log2(高さ)-log2(幅))であってもよく、MおよびNは、M=-2,N=2のような定数である。
Figure 0007453374000024
8.5.7.2.geoマージモードのための重み付けサンプル予測処理
この処理への入力は以下の通りである。
-現在のコーディングブロックの幅および高さを規定する2つの変数 nCbWおよびnCbH
-predSamplesLAおよびpredSamplesLBの2つの(nCbW)×(nCbH)配列、
-正方形ブロックのgeo分割の角度インデックスを規定する変数angleSquareIdx、
-geo分割の距離インデックスを規定する変数distanceIdx、
-色成分インデックスを規定する変数cIdx。
この処理の出力は、予測サンプル値の(nCbW)×(nCbH)配列pbSamplesである。
変数nW,nHおよびnCbRは、以下のように導出される。
nCbWY=(cIdx==0)?nCbW:nCbW*SubWidthC (1027)
nCbHY=(cIdx==0)?nCbH:nCbH*SubHeightC (1028)
変数shift1およびoffset1は、以下のように導出される。
-変数shift1は、Max(5,17-BitDepth)に等しく設定される。
-変数offset1は、1 << (shift1 - 1)に等しく設定される。
Figure 0007453374000025
angleSquareIdx%6が0に等しくない場合、以下である。
angleIdx+=(angleSquareIdx%12<6)?-hwRatioLog2:hwRatioLog2
angleIdx=(angleIdx%6==0)?((angleSquareIdx%12<6)?angleSquareIdx+(hwRatioLog2>>1):angleSquareIdx-(hwRatioLog2>>1)):angleIdx
そうでない(angleSquareIdx%6が0に等しい)場合、かつhwRatioLog2が0より小さい場合、である。
angleIdx+=(angleSquareIdx%12<6)?6:-6- displacementXはangleIdxに設定される。
- displacementYは(displacementX+6)%24に設定される。
- angleIdx>=10&angleIdx<=20の場合、PART1およびPART2はそれぞれAおよびBに等しく設定され、そうでない場合、PART1およびPART2はそれぞれBおよびAに等しく設定される。
以下の条件の1つが真である場合、変数shiftHorを0に等しく設定する。
angleIdx%12は6に等しい。
angleIdx%12は0に等しくなく、hwRatio≧1である。
そうでない場合、shiftHorは1に等しく設定される。
shiftHorが0に等しい場合、変数offsetXおよびoffsetYは、以下のように導出される。
offsetX=(-nW)>>1
offsetY=((-nH)>>1)+(angleIdx<12 ? (distanceIdx*nH)>>3:-((distanceIdx*nH)>>3))
そうでない場合、shiftHorが1に等しければ、offsetXおよびoffsetYは、以下のように導出される。
offsetX=((-nW)>>1)+(angleIdx<12 ? (distanceIdx*nW)>>3:-((distanceIdx*nW)>>3))
offsetY=(-nH)>>1
-変数xLおよびyLは、以下のように導出される。
xL=(cIdx==0)? x:x*SubWidthC
yL=(cIdx==0)? y:y*SubHeightC
-予測サンプルの重みを規定する変数weightIdxおよびweightIdxAbは、以下のように導出される。
-ルックアップテーブルTable37を使用して、変数weightIdxおよびweightIdxAbを以下のように算出する。
weightIdx=(((xL+offsetX)<<1)+1)*Dis[displacementX]
+(((yL+offsetY)<<1)+1))*Dis[displacementY].
weightIdxAbs=Clip3(0,26,abs(weightIdx)).
-表38に従って、wValueの値を以下のように導出する。
wValue=weightIdx<=0?GeoFilter[weightIdxAbs]:8-GeoFilter[weightIdxAbs]
注記- (x,y)にあるサンプルwValueの値は、(x-shiftX,y-shiftY)にあるwValueから導出することもできる。angleIdxが4より大きく12より小さい、またはangleIdxが20より大きく24より小さい場合、shiftXは分割角度の正接であり、shiftYは1であり、そうでない場合、shiftXは分割角度の1であり、shiftYは分割角度の余接である。正接(余接)の値が無限大の場合、shiftXは1(0)、シフトYは0(1)になる。
-予測サンプル値は、以下のように導出される。
pbSamples[x][y]=Clip3(0,(1<<BitDepth)-1,(predSamplesLPART1[x][y]*wValue+(1032)
predSamplesLPART2[x][y]*(8-wValue)+offset1)>>shift1)
Figure 0007453374000026
Figure 0007453374000027
c)JVET-Q0268に基づく例示的な仕様変更は、以下のようになる。
8.5.7.2.geoマージモードのための重み付けサンプル予測処理
この処理への入力は以下の通りである。
-現在のコーディングブロックの幅および高さを規定する2つの変数nCbWおよびnCbH
-predSamplesLAおよびpredSamplesLBの2つの(nCbW)×(nCbH)配列、
-正方形ブロックのgeo分割の角度インデックスを規定する変数angleSquareIdx、
-geo分割の距離インデックスを規定する変数distanceIdx、
-色成分インデックスを規定する変数cIdx。
この処理の出力は、予測サンプル値の(nCbW)×(nCbH)配列pbSamplesである。
変数nW,nHおよびnCbRは、以下のように導出される。
nCbWY=(cIdx==0) ? nCbW:nCbW*SubWidthC (1027)
nCbHY=(cIdx==0) ? nCbH:nCbH*SubHeightC (1028)
変数shift1およびoffset1は、以下のように導出される。
-変数shift1は、Max(5,17-BitDepth)に等しく設定される。
-変数offset1は、1 << (shift1 - 1)に等しく設定される。
Figure 0007453374000028
angleSquareIdx%8が0に等しくない場合、以下である。
angleIdx+=(angleSquareIdx%16<8) ? -hwRatioLog2:hwRatioLog2
angleIdx=(angleIdx%8==0) ? angleSquareIdx:angleIdx
そうでない(angleSquareIdx%8が0に等しい)場合、かつhwRatioLog2が0より小さい場合、以下である。
angleIdx+=(angleSquareIdx%16<8) ?8:-8-displacementXはangleIdxに設定される。
-displacementYは(displacementX+6)%24に設定される。
-angleIdx>=10&angleIdx<=20の場合、PART1およびPART2はそれぞれAおよびBに等しく設定され、そうでない場合、PART1およびPART2はそれぞれBおよびAに等しく設定される。
以下の条件の1つが真である場合、変数shiftHorを0に等しく設定する。
angleIdx%12は6に等しい。
angleIdx%12は0に等しくなく、hwRatio≧1である。
そうでない場合、shiftHorは1に等しく設定される。
shiftHorが0に等しい場合、変数offsetXおよびoffsetYは、以下のように導出される。
offsetX=(-nW)>>1
offsetY=((-nH)>>1)+(angleIdx<12 ? (distanceIdx*nH)>>3:-((distanceIdx*nH)>>3))
そうでない場合、shiftHorが1に等しければ、offsetXおよびoffsetYは、以下のように導出される。
offsetX=((-nW)>>1)+(angleIdx<12 ? (distanceIdx*nW)>>3:-((distanceIdx*nW)>>3))
offsetY=(-nH)>>1
-変数xLおよびyLは、以下のように導出される。
xL=(cIdx==0) ? x:x*SubWidthC
yL=(cIdx==0) ? y:y*SubHeightC
-予測サンプルの重みを規定する変数weightIdxおよびweightIdxAbは、以下のように導出される。
-ルックアップテーブルTable37を使用して、変数weightIdxおよびweightIdxAbを以下のように算出する。
weightIdx=(((xL+offsetX)<<1)+1)*Dis[displacementX]
+(((yL+offsetY)<<1)+1))*Dis[displacementY].
weightIdxAbs=Clip3(0,26,abs(weightIdx)).
-表38に従って、wValueの値を以下のように導出する。
wValue=weightIdx<=0 ?GeoFilter[weightIdxAbs]:8-GeoFilter[weightIdxAbs]
注記-(x,y)にあるサンプルwValueの値は、(x-shiftX,y-shiftY)にあるwValueから導出することもできる。angleIdxが4より大きく12より小さい、またはangleIdxが20より大きく24より小さい場合、shiftXは分割角度の正接であり、shiftYは1であり、そうでない場合、shiftXは分割角度の1であり、shiftYは分割角度の余接である。正接(余接)の値が無限大の場合、shiftXは1(0)、シフトYは0(1)になる。
-予測サンプル値は、以下のように導出される。
pbSamples[x][y]=Clip3(0,(1<<BitDepth)-1,(predSamplesLPART1[x][y]*wValue+(1032)
predSamplesLPART2[x][y]*(8-wValue)+offset1)>>shift1)
Figure 0007453374000029
Figure 0007453374000030
他のコーディングツールと結合されたGEO
24.コーディングツールXは、GEOコーディングブロックに使用されてもよい。この場合、XおよびGEOの使用/サイド情報の表示は両方とも信号通知されてもよい。
a)一例において、XはSBTでもよい。
b)一例において、XはCIIPでもよい。
c)一例において、XはMMVDでもよい。
d)コーディングXを使用する場合としない場合とでGEO処理は異なってもよい。例えば、コーディングツールXが使用される時にGEO方向/距離を使用することができ、コーディングツールXが使用されない時にGEO方向/距離のサブセットを使用できる。
25.フィルタリング処理を適用するかどうか/どのように適用するかは、GEOの使用に依存してもよい。
a)一例において、非ブロック化処理中の境界フィルタリング強度(例えば、bS)の値は、ブロックがGEOを使用してコーディングされているかどうかに依存してもよい。
b)一例において、ブロックエッジが変換ブロックエッジであり、サンプルp0またはq0がMergeGeoFlagが1に等しいコーディングブロックに含まれている場合、bSの値はTに等しく設定されてもよい(例えば、T=2)。
c)一例において、GEOブロック内の非ブロック化エッジ(例えば、エッジフラグ)の値は、2でなくてもよい。
i.一例において、GEOブロック内の非ブロック化エッジ(例えば、エッジフラグ)の値は、2でもよい。
ii.一例において、ブロックエッジを考えると、サンプルp0またはq0が1に等しいMergeGeoFlagを有するコーディングブロック内にある場合、bSの値は、動きベクトルおよび/または参照ピクチャに依存してもよい。
追加の実施形態
以下は、VVC仕様に適用可能な例示的な実施形態である。その修正は、GEO作業草案(JVET-P0884_P0885_WD(on_top_of_JVET-O2001-vE)_r2)のCEアンカーに基づく。新規に追加された部分は下線の太字で強調表示し、VVC作業草案から削除した部分に二重括弧で印を付ける(例えば、[[a]]は、文字「a」の削除を表す)。
5.1.例示的な実施形態#1:GEOモード制約1
Figure 0007453374000031
Figure 0007453374000032
5.2.例示的な実施形態#2:GEOモード制約2
Figure 0007453374000033
Figure 0007453374000034
5.3.例示的な実施形態#3:ブロックサイズ依存GEOモード選択1
8.5.7ウェッジインターブロックのための復号化処理
8.5.7.1一般
この処理は、1に等しいwedge_merge_mode[xCb][yCb]を用いてコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
この処理の出力は以下の通りである。
- 輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
- 成分Cbのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
- 成分Crのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplescr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
1.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNとクロマサンプルの2つの順序付き2次元配列refPicLNCbおよびrefPicLNCrを含む参照ピクチャは、predListFlagNに等しく設定されたXおよびrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しい動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、および0に等しく設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、および1に等しく設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、および2に等しく設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
Figure 0007453374000035
3.表8-10で規定されるように、wedge_partition_idx’[xCb][yCb]の値に従って、ウェッジマージモードangleIdx、distanceIdexの分割角度、距離を設定する。
4.x=0.cbWidth-1およびy=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamplesL[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
5.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に設定されたcIdxを入力として用いて、8.5.7.2 項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
6.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
7. 8.5.7.3項に規定されるマージウェッジモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、および予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
Figure 0007453374000036
Figure 0007453374000037
図21は、wedge_partition_idx’値に基づいてangleIdxおよびdistanceIdx値の仕様を表す、対応する表8-10を示す。
Figure 0007453374000038
5.4.例示的な実施形態#4:ブロックサイズに依存するGEOモード選択2
8.5.7ウェッジインターブロックのための復号化処理
8.5.7.1一般
この処理は、1に等しいwedge_merge_mode[xCb][yCb]を用いてコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB、
この処理の出力は以下の通りである。
-輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-成分Cbのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplescr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
8.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNとクロマサンプルの2つの順序付き2次元配列refPicLNCbおよびrefPicLNCrを含む参照ピクチャは、predListFlagNに等しく設定されたXおよびrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しい動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、および0に等しく設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、および1に等しく設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、および2に等しく設定された変数cIdxを入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
Figure 0007453374000039
10.表8-10で規定されるように、wedge_partition_idx’[xCb][yCb]の値に従って、ウェッジマージモードangleIdx、distanceIdexの分割角度、距離を設定する。
11.x=0.cbWidth-1、y=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamplesL[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2 項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
12.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に設定されたcIdxを入力として用いて、8.5.7.2項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
13.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するウェッジマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
14. 8.5.7.3項に規定されるマージウェッジモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、および予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
Figure 0007453374000040
図22は、wedge_partition_idx’値に基づいてangleIdx値およびdistanceIdx値の仕様を表す対応する表8-10を示す。
Figure 0007453374000041
5.5.例示的な実施形態#5:20個の角度がサポートされる64GEOモード
Figure 0007453374000042
図23Aは、wedge_partition_idxに基づいてangleIdx値およびdistanceIdx値の仕様を表示する表8-10の旧バージョンを示しており、関連する作業草案から現在削除されている。図23Bは、wedge_partition_idx値に基づくangleIdx値およびdistanceIdx値の仕様を示す表8-10の例を示す。表8-10は、図23Bに示すように、NUM_ANGLE=20であり、angleIdx=0/5/10/15に許可される距離が2つのみである64個のモードの例を示す。
下記の説明において、新規に追加された部分は下線の太字で強調表示し、関連する作業草案から削除した部分に二重括弧で印を付ける(例えば、[[a]]は、文字「a」の削除を表す)。
8.5.7.2 ウェッジマージモードのための重み付けサンプル予測処理
この処理への入力は以下の通りである。
- 現在のコーディングブロックの幅および高さを規定する2つの変数nCbWおよびnCbH、
- 2つの(nCbW)×(nCbH)配列であるpredSamplesLAおよびpredSamplesLB、
- ウェッジ分割の角度インデックスを規定する変数angleIdx、
- ウェッジ分割の間隔idxを規定する変数distanceIdx、
- 色成分インデックスを規定する変数cIdx。
この処理の出力は、予測サンプル値の(nCbW)×(nCbH)配列pbSamplesである。
変数bitDepthは、以下のように導出される。
- cIdxが0に等しい場合、bitDepthはBitDepthに等しく設定される。
- cIdxが0に等しい場合、nWおよびnHをそれぞれnCbWおよびnCbHに等しく設定し、そうでない場合(cIdxが0に等しくない)、nWおよびnHをそれぞれnCbW×SubWidthCおよびnCbH×SubHeightCに等しく設定する。
- cIdxが0に等しい場合、subWおよびsubHは両方とも1に設定され、そうでない場合(cIdxが0に等しくない)、subWおよびsubHはそれぞれSubWidthCおよびSubHeightCに等しく設定される。
- そうでない場合、変数bitDepthはBitDepthに等しく設定される。
変数shift1およびoffset1は、以下のように導出される。
- 変数shift1は、Max(5,17-bitDepth)に等しく設定される。
- 変数offset1は、1<<(shift1-1)に等しく設定される。
Figure 0007453374000043
以下の順序ステップに従って、x=0..nCbW-1およびy=0..nCbH-1の予測サンプル値pbSamples[x][y]を設定する。
- ルックアップテーブル8-12を使用して、変数weightIdxおよびweightIdxAbを以下のように算出する。
weightIdx=(((x*subW+offsetX)<<1)+1)*Dis[displacementX]
+(((y*subH+offsetY)<<1)+1))*Dis[displacementY]-rho.
weightIdxAbs=Clip3(0,26,abs(weightIdx)).
- sampleWeightの値は、表8-13に従って以下のように導出される。
sampleWeight=weightIdx<=0?WedgeFilter[weightIdxAbs]:8-WedgeFilter[weightIdxAbs]
注:サンプルsampleWeight[x][y]の値は、sampleWeight[x-shiftX][y-shiftY]から導出することもできる。angleIdxが4より大きく12より小さい、またはangleIdxが20より大きく24より小さい場合、shiftXは分割角度の正接であり、shiftYは1であり、そうでない場合、shiftXは分割角度の1であり、shiftYは分割角度の余接である。正接(余接)の値が無限大の場合、shiftXは1(0)、シフトYは0(1)になる。
- 予測サンプル値pbSamples[x][y]は、以下のように導出される。
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(predSamplesLPART1[x][y]*(8-sampleWeight)+
predSamplesLPART2[x][y]*sampleWeight+offset1)>>shift1)
Figure 0007453374000044
Figure 0007453374000045
8.5.7.3 ウェッジマージモードのための動きベクトル記憶処理
この処理は、1に等しいMergeWedgeFlag[xCb][yCb]でコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
現在のコーディングブロックにおける水平および垂直方向の4×4ブロックの数を規定する変数numSbX、numSbYは、numSbX=cbWidth>>2andnumSbY=cbHeight>>2に等しく設定される。
Figure 0007453374000046
変数rhoの値は、下記の式および表8-12に示されるDisルックアップテーブルに従って導出される。
- rho=(Dis[displacementX]<<8)+(Dis[displacementY]<<8).
表8-11および表8-12に規定されるDisと表されるルックアップテーブルを使用して、motionOffsetを以下の値に等しく設定する。
- motionOffset=3*Dis[displacementX]+3*Dis[displacementY].
xSbIdx=0..numSbX-1、ySbIdx=0..numSbY-1のサブブロックインデックス(xSbIdx,ySbIdx)における各4×4サブブロックについて、以下が適用される。
変数motionIdxは、ルックアップテーブル8-12を使用して、以下のようにして算出される。
- motionIdx=(((xSbIdx+offsetX)<<3)+1)*Dis[displacementX]
+(((xSbIdx+offsetY<<3)+1))*Dis[displacementY]-rho+motionOffset
変数sTypeは、以下のように導出される。
- sType=abs(motionIdx)<32?2:motionIdx<=0 ? partIdx:1-partIdx
以下は、VVC仕様に適用可能な例示的な実施形態である。その修正は、GEO作業草案(JVET-P0884_P0885_WD(on_top_of_JVET-O2001-vE)_r2)のCEアンカーに基づく。新規に追加された部分は下線の太字で強調表示し、VVC作業草案から削除した部分に二重括弧で印を付ける(例えば、[[a]]は、文字「a」の削除を表す)。
例示的な実施形態:GEOモード制約
Figure 0007453374000047
例示的な実施形態:GEOモード制約
Figure 0007453374000048
例示的な実施形態:GEOモード制約
Figure 0007453374000049
例示的な実施形態:GEOモード制約
Figure 0007453374000050
例示的な実施形態:ブロックサイズに依存するGEOモード選択
8.5.7geoインターブロックのための復号化処理
8.5.7.1一般
この処理は、1に等しいMergeGeoFlag[xCb][yCb]を有するコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
この処理の出力は以下の通りである。
-輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-成分Cbのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplescr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
1.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNと2つのクロマサンプルの順序付き2次元配列refPicLNCbとrefPicLNCrから構成される参照ピクチャは、predListFlagNに等しく設定されたXとrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しい動きベクトルオフセットmvOffset、mvNに等しい動きベクトルmvLX、refPicLNに等しい参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、0に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、1に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、2に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
Figure 0007453374000051
3.表36で規定されるように、merge_geo_parition_idx[xCb][yCb]の値に従って、マージgeoモード変数angleIdx、distanceIdxの分割角度および間隔を設定する。
4.x=0.cbWidth-1、y=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamples[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
5.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
6.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
7. 8.5.7.3項に規定されるマージgeoモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、および予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
図24Aは、geo_partition_idx値に基づいてgeo_partition_idx’値のマッピングテーブルを示す。図24Bは、表36の旧バージョンを示し、この旧バージョンは、現在、関連する作業草案から削除されている。図24Cは、geo_partition_idxに基づいてangleIdx値およびdistanceIdx値の仕様を示す表36を示す。
Figure 0007453374000052
例示的な実施形態:ブロックサイズに依存するGEOモード選択
8.5.7geoインターブロックのための復号化処理
8.5.7.1一般
この処理は、1に等しいMergeGeoFlag[xCb][yCb]を有するコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
この処理の出力は以下の通りである。
、 -輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-成分Cbのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplescr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
1.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNと2つのクロマサンプルの順序付き2次元配列refPicLNCbとrefPicLNCrから構成される参照ピクチャは、predListFlagNに等しく設定されたXとrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、0に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、1に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、2に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
2.表36で規定されるように、merge_geo_parition_idx[xCb][yCb]の値に従って、マージgeoモード変数angleIdx、distanceIdxの分割角度および間隔を設定する。
3.x=0.cbWidth-1、y=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamples[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2 項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
4.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
5.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
6. 8.5.7.3項に規定されるマージgeoモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、ならびに予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
Figure 0007453374000053
Figure 0007453374000054
例示的な実施形態:ブロックサイズに依存するGEOモード選択
Figure 0007453374000055
Figure 0007453374000056
7.4.10.7 マージデータ意味論
Figure 0007453374000057
8.5.7 geoインターブロックのための復号化処理
8.5.7.1一般
この処理は、1に等しいMergeGeoFlag[xCb][yCb]を有するコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB、
この処理の出力は以下の通りである。
-輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-成分Cbのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplescr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
1.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNと2つのクロマサンプルの順序付き2次元配列refPicLNCbとrefPicLNCrから構成される参照ピクチャは、predListFlagNに等しく設定されたXとrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、0に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、1に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、2に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
Figure 0007453374000058
3.表36で規定されるように、merge_geo_parition_idx[xCb][yCb]の値に従って、マージgeoモード変数angleIdx、distanceIdxの分割角度および間隔を設定する。
4.x=0.cbWidth-1、y=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamples[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
5.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
6.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
7. 8.5.7.3項に規定されるマージgeoモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、および予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
この例では、図24Aに示すようなgeo_partition_idx値に基づくgeo_partition_idx’値のマッピングテーブルを使用する。図24Bに、作業草案から差し引かれたgeo_partition_idx値に基づくangleIdxおよびdistanceIdx値の仕様を表示する表36の旧バージョンを示す。図24Eは、geo_partition_idx値に基づくてangleIdx値およびdistanceIdx値をの仕様を示す表36を示す。
Figure 0007453374000059
例示的な実施形態:ブロックサイズに依存するGEOモード選択
Figure 0007453374000060
Figure 0007453374000061
7.4.10.7 マージデータ意味論
Figure 0007453374000062
8.5.7 geoインターブロックのための復号化処理
8.5.7.1一般
この処理は、1に等しいMergeGeoFlag[xCb][yCb]を有するコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
この処理の出力は以下の通りである。
-輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-成分Cbのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplescr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
1.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNと2つのクロマサンプルの順序付き2次元配列refPicLNCbとrefPicLNCrから構成される参照ピクチャは、predListFlagNに等しく設定されたXとrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、0に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、1に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、2に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
Figure 0007453374000063
3.表36で規定されるように、merge_geo_parition_idx[xCb][yCb]の値に従って、マージgeoモード変数angleIdx、distanceIdxの分割角度および間隔を設定する。
4.x=0.cbWidth-1、y=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamples[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
5.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に等しいcIdxを入力として用いて、8.5.7.2 項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
6.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
7. 8.5.7.3項に規定されるマージgeoモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、および予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
この例では、図24Aに示すようなgeo_partition_idx値に基づくgeo_partition_idx’値のマッピングテーブルを使用する。geo_partition_idxに基づいてangleIdx値およびdistanceIdx値を仕様を示す表36の旧バージョンを示しており、これは現在は関連する図24Bに示す作業草案から削除されている。geo_partition_idx値に基づくangleIdx値およびdistanceIdx値の仕様を示す表36を図24Eに示す。
Figure 0007453374000064
例示的な実施形態:ブロックサイズに依存するGEOモード選択
Figure 0007453374000065
Figure 0007453374000066
7.4.10.7 マージデータ意味論
Figure 0007453374000067
8.5.7.イントラブロックの復号化処理
8.5.7.1一般
この処理は、1に等しいMergeGeoFlag[xCb][yCb]を有するコーディングユニットを復号化するときに呼び出される。
この処理への入力は以下の通りである。
-現在のピクチャの左上の輝度サンプルに対する現在のコーディングブロックの左上のサンプルを規定する輝度位置(xCb,yCb)、
-輝度サンプルにおける現在のコーディングブロックの幅を規定する変数cbWidth、
-輝度サンプルにおける現在のコーディングブロックの高さを規定する変数cbHeight、
-1/16分数サンプル精度mvAおよびmvBにおける輝度動きベクトル、
-クロマ動きベクトルmvCAおよびmvCB、
-参照インデックスrefIdxAおよびrefIdxB、
-予測リストフラグpredListFlagAおよびpredListFlagB。
この処理の出力は以下の通りである。
-輝度予測サンプルの(cbWidth)×(cbHeight)配列predSamples
-成分Cbのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplesCb
-成分Crのためのクロマ予測サンプルの(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列predSamplescr
predSamplesLAおよびpredSamplesLBを、予測輝度サンプル値の(cbWidth)×(cbHeight)配列とし、predSamplesLACb、predSamplesLBCb、predSamplesLACr、およびpredSamplesLBCrを、予測クロマサンプル値の(cbWidth/SubWidthC)×(cbHeight/SubHeightC)配列とする。
predSamples、predSamplesCb、およびpredSamplesCrは、以下の順序付けられたステップによって導出される。
8.NがAおよびBの各々である場合、以下が適用される。
-輝度サンプルの順序付き2次元配列refPicLNと2つのクロマサンプルの順序付き2次元配列refPicLNCbとrefPicLNCrから構成される参照ピクチャは、predListFlagNに等しく設定されたXとrefIdxNに等しく設定されたrefIdxXを入力として用いて、8.5.6.2項に規定する処理を呼び出すことによって導出される。
-配列predSamplesLNは、輝度位置(xCb,yCb)、cbWidthに等しく設定された輝度コーディングブロック幅sbWidth、cbHeightに等しく設定された輝度コーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvNに等しく設定された動きベクトルmvLX、refPicLNに等しく設定された参照配列refPicLX、FALSEに等しく設定された変数bdofFLAG、0に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcbは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcbに等しく設定された参照配列refPicLXcb、FALSEに等しく設定された変数bdofFLAG、1に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
-配列predSamplesLNcrは、輝度位置(xCb,yCb)、cbWidth/SubWidthCに等しく設定された輝度コーディングブロック幅sbWidth、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さsbHeight、(0,0)に等しく設定された動きベクトルオフセットmvOffset、mvCNに等しく設定された動きベクトルmvLX、refPicLNcrに等しく設定された参照配列refPicLXcr、FALSEに等しく設定された変数bdofFLAG、2に等しく設定された変数cIdx、およびRefPicScale[predListFlagN][refIdxN]を入力として用いて、8.5.6.3項に規定する分数サンプル補間処理を呼び出すことによって導出される。
Figure 0007453374000068
10.表36で規定されるように、merge_geo_parition_idx’[xCb][yCb]の値に従って、マージgeoモード変数angleIdx、distanceIdxの分割角度および間隔を設定する。
11.x=0.cbWidth-1、y=0.cbHeight-1である場合の現在の輝度コーディングブロックpredSamples[x][y]内の予測サンプルは、cbWidthに等しく設定されたコーディングブロック幅nCbW、cbHeightに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAおよびpredSamplesLB、ならびに変数angleIdxおよびdistanceIdx、0に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
12.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CbコーディングブロックpredSamplesCb[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcbおよびpredSamplesLBcb、ならびに変数angleIdxおよびdistanceIdx、1に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
13.x=0..cbWidth/SubWidthC-1およびy=0..cbHeight/SubHeightC-1である場合の現在のクロマ成分CrコーディングブロックpredSamplesCr[x][y]内の予測サンプルは、cbWidth/SubWidthCに等しく設定されたコーディングブロック幅nCbW、cbHeight/SubHeightCに等しく設定されたコーディングブロック高さnCbH、サンプル配列predSamplesLAcrおよびpredSamplesLBcr、ならびに変数angleIdxおよびdistanceIdx、2に等しいcIdxを入力として用いて、8.5.7.2項に規定するgeoマージモード用の重み付けサンプル予測処理を呼び出すことによって導出される。
14. 8.5.7.3項に規定されるマージgeoモードのための動きベクトル記憶処理は、輝度コーディングブロックの位置(xCb,yCb)、輝度コーディングブロックの幅cbWidth、輝度コーディングブロックの高さcbHeight、分割方向angleIdxおよびdistanceIdx、輝度動きベクトルmvAおよびmvB、参照インデックスrefIdxAおよびrefIdxB、ならびに予測リストフラグpredListFlagAおよびpredListFlagBを入力として用いて、呼び出される。
この例では、図24Aに示すようなgeo_partition_idx値に基づくgeo_partition_idx’値のマッピングテーブルを使用する。図24Bに、作業草案から差し引かれたgeo_partition_idx値に基づくangleIdxおよびdistanceIdx値の仕様を表示する表36の旧バージョンを示す。図24Eは、geo_partition_idx値に基づくてangleIdx値およびdistanceIdx値をの仕様を示す表36を示す。
Figure 0007453374000069
開示される技術の例示的な実装形態
図13Aは、映像処理装置1300のブロック図である。装置1300は、本明細書に記載の方法の1つ以上を実装するために使用してもよい。装置1300は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機等に実施されてもよい。装置1300は、1つ以上の処理装置1302と、1つ以上のメモリ1304と、映像処理ハードウェア1306と、を含んでもよい。1つまたは複数の処理装置1302は、本明細書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(複数可)1304は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア1306を使用して、ハードウェア回路において、本明細書に記載されるいくつかの技術を実装してもよく、一部又は全部が処理装置1302の一部(例えば、グラフィック処理装置コアGPU又は他の信号処理回路)であってもよい。
本明細書では、「映像処理」という用語は、映像符号化、映像復号化、映像圧縮、または映像展開を指すことができる。例えば、映像圧縮アルゴリズムは、映像の画素表現から対応するビットストリーム表現への変換、またはその逆の変換中に適用されてもよい。現在の映像ブロックのビットストリーム表現は、例えば、構文によって規定されるように、ビットストリーム内の同じ場所または異なる場所に拡散されるビットに対応していてもよい。例えば、1つのマクロブロックは、変換およびコーディングされた誤り残差値の観点から、且つビットストリームにおけるヘッダおよび他のフィールドにおけるビットを使用して、コーディングされてもよい。
開示された方法及び技法は、本明細書に開示された技法を使用できるようにすることで、スマートフォン、ノートパソコン、卓上パソコン、及び類似した機器等の映像処理デバイスに組み込まれる映像エンコーダおよび/またはデコーダの実施形態に有益となることが理解される。
図13Bは、本明細書に開示される様々な技術を実装することができる例示的な映像処理システム1310を示すブロック図である。様々な実装形態は、システム1310のモジュールの一部又は全部を含んでもよい。システム1310は、映像コンテンツを受信するための入力ユニット1312を含んでもよい。映像コンテンツは、未加工又は非圧縮フォーマット、例えば、8又は10ビットのマルチコンポーネント画素値で受信されてもよく、又は圧縮又は符号化フォーマットで受信されてもよい。入力ユニット1312は、ネットワークインターフェース、周辺バスインターフェース、又は記憶インターフェースを表してもよい。ネットワークインターフェースの例は、イーサネット(登録商標)、パッシブ光ネットワーク(PON)等の有線インターフェース、およびWi-Fi(登録商標)またはセルラーインターフェース等の無線インターフェースを含む。
システム1310は、本明細書に記載される様々なコーディング又は符号化方法を実装することができるコーディングモジュール1314を含んでもよい。コーディングコンポーネント1314は、入力ユニット1312からの映像の平均ビットレートをコーディングコンポーネント1314の出力に低減し、映像のコーディング表現を生成してもよい。従って、このコーディング技術は、映像圧縮または映像コード変換技術と呼ばれることがある。コーディングコンポーネント1314の出力は、コンポーネント1316によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力ユニット1312において受信された、記憶された又は通信された映像のビットストリーム(又はコーディング)表現は、コンポーネント1318によって使用されて、表示インターフェース1320に送信される画素値又は表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像伸張(映像展開)と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作又はツールと呼ぶが、符号化ツール又は動作は、エンコーダで使用され、対応する復号化ツール又は動作であり符号化の結果を逆にするものは、デコーダによって行われることが理解されよう。
周辺バスインターフェースまたは表示インターフェースの例は、ユニバーサルシリアルバス(USB)または高精細マルチメディアインターフェース(HDMI(登録商標))またはディスプレイポート等を含んでもよい。ストレージインターフェースの例は、シリアルアドバンスドテクノロジーアタッチメント(SATA)、PCI、IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、又はデジタルデータ処理及び/又は映像表示を実施可能な他のデバイス等の様々な電子デバイスに実施されてもよい。
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを有効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが有効化される場合、エンコーダは、1つの映像ブロックを処理する際にこのツールまたはモードを使用するまたは実装するが、このツールまたはモードの使用に基づいて、結果として得られるビットストリームを必ずしも修正しなくてもよい。すなわち、映像のブロックから映像のビットストリーム表現への変換は、決定または判定に基づいて映像処理ツールまたはモードが有効化される場合に、この映像処理ツールまたはモードを使用する。別の例において、映像処理ツールまたはモードが有効化される場合、デコーダは、ビットストリームが映像処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用して、映像のビットストリーム表現から映像のブロックへの変換を行う。
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを無効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが無効にされている場合、エンコーダは、映像のブロックを映像のビットストリーム表現に変換する際に、このツールまたはモードを使用しない。別の例において、映像処理ツールまたはモードが無効にされている場合、デコーダは、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用してビットストリームが修正されていないことを知って、ビットストリームを処理する。
図14は、映像処理の方法1400の一例を示すフローチャートである。方法1400は、1402において、視覚メディアデータの現在の映像ブロックと視覚メディアデータのビットストリーム表現との変換を行い、変換中、現在の映像ブロックの1つ以上の寸法および/または現在の映像ブロックの1つ以上の寸法の数学関数が少なくとも1つの閾値条件を達成するという判定に少なくとも部分的に基づいて、幾何学的分割モードの使用を選択的に有効化または無効化することを含む。
図15は、本開示の技法を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
図15に示すように、映像コーディングシステム100は、送信元装置110と、送信先装置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)規格、汎用映像コーディング(VVVM)規格、および他の現在のおよび/またはさらなる規格等の映像圧縮規格に従って動作してもよい。
図16は、映像エンコーダ200の一例を示すブロック図であり、この映像エンコーダ200は、図15に示されるシステム100における映像エンコーダ114であってもよい。
映像エンコーダ200は、本開示の技術のいずれか又は全部を実行するように構成されてもよい。図16の実施例において、映像エンコーダ200は、複数の機能モジュールを備える。本開示で説明される技法は、映像エンコーダ200の様々なコンポーネント間で共有され得る。いくつかの例では、処理装置は、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
映像エンコーダ200の機能モジュールは、分割ユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205及びイントラ予測ユニット206を含んでもよい予測ユニット202と、残差生成ユニット207と、変換ユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆変換ユニット211と、再構成ユニット212と、バッファ213と、エントロピー符号化ユニット214と、を含んでもよい。
他の例において、映像エンコーダ200は、より多くの、より少ない、又は異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでもよい。IBCユニットは、少なくとも1つの参照ピクチャが現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測(predication)を行うことができる。
さらに、動き推定ユニット204及び動き補償ユニット205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、図16の例においては別々に表されている。
分割ユニット201は、1つのピクチャを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は、予測ユニット202が生成した1つ以上の予測映像ブロックから対応するサンプルに再構成された残差映像ブロックを加え、現在のブロックに関連付けられた再構成映像ブロックを生成し、バッファ213に記憶することができる。
再構成ユニット212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキングアーチファクトを縮小するために、ループフィルタリング演算を行ってもよい。
エントロピー符号化ユニット214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピー符号化ユニット214は、データを受信すると、1つ以上のエントロピー符号化演算を行い、エントロピー符号化データを生成し、エントロピー符号化データを含むビットストリームを出力してもよい。
図17は、映像デコーダ300の一例を示すブロック図であり、この映像デコーダ300は、図15に示されるシステム100における映像デコーダ114であってもよい。
映像デコーダ300は、本開示の技術のいずれか又は全部を実行するように構成されてもよい。図17の実施例において、映像デコーダ300は、複数の機能モジュールを備える。本開示で説明される技法は、映像デコーダ300の様々なモジュール間で共有されてもよい。いくつかの例では、処理装置は、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
図17の実施例において、映像デコーダ300は、エントロピー復号化ユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、及び再構成ユニット306、並びにバッファ307を備える。映像デコーダ300は、いくつかの例では、映像エンコーダ200(図16)に関して説明した符号化パスとほぼ逆の復号化パスを行ってもよい。
エントロピー復号化ユニット301は、符号化ビットストリームを取り出す。符号化ビットストリームは、エントロピー符号化された映像データ(例えば、映像データの符号化ブロック)を含んでもよい。エントロピー復号化ユニット301は、エントロピー符号化された映像データを復号化し、エントロピー復号された映像データから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を判定してもよい。動き補償ユニット302は、例えば、AMVP及びマージモードを実行することで、このような情報を判定してもよい。
動き補償ユニット302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を実行する。構文要素には、サブピクセルの精度で使用される補間フィルタのための識別子が含まれてもよい。
動き補償ユニット302は、映像ブロックの符号化中に映像エンコーダ20によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数ピクセルのための補間値を計算してもよい。動き補償ユニット302は、受信した構文情報に基づいて、映像エンコーダ200が使用する補間フィルタを判定し、この補間フィルタを使用して予測ブロックを生成してもよい。
動き補償ユニット302は、構文情報の一部を用いて、符号化された映像シーケンスのフレーム(複数可)および/またはスライス(複数可)を符号化するために使用されるブロックのサイズ、符号化された映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのように符号化されるかを示すモード、インター符号化ブロック間の各1つ以上の参照フレーム(および参照フレームリスト)、および符号化された映像シーケンスを復号化するための他の情報を判定してもよい。
イントラ予測ユニット303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリームに提供され、エントロピー復号化ユニット301によって復号された量子化された映像ブロック係数を逆量子化(すなわち、逆量子化)する。逆変換ユニット303は、逆変換を適用する。
再構成ユニット306は、残差ブロックと、動き補償ユニット202又はイントラ予測ユニット303によって生成された対応する予測ブロックとを合計し、復号化されたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、復号化されたブロックをフィルタリングするために非ブロック化フィルタを適用してもよい。復号化された映像ブロックは、バッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のために参照ブロックを提供し、且つ表示装置に表示するために復号化された映像を生成する。
次に、いくつかの実施形態において好適な項目を列挙する。
以下の項目は、前章(例えば、項目15)に記載された技術の例示的な実施形態を示す。
1.映像処理方法であって、視覚メディアデータの現在の映像ブロックと視覚メディアデータのビットストリーム表現との変換を行い、変換中、現在の映像ブロックの1つ以上の寸法および/または現在の映像ブロックの1つ以上の寸法の数学関数が少なくとも1つの閾値条件を達成するという判定に少なくとも部分的に基づいて、幾何学的分割モードの使用を選択的に有効化または無効化することを含む、方法。
2.前記幾何学的分割モードは、三角形予測モード(TPM)、幾何学的マージモード(GEO)、および/またはウェッジ予測モードを少なくとも含む、項目1に記載の方法。
3.前記幾何学的分割モードは、映像ブロックを2つ以上のサブ領域に分割することを含み、少なくとも1つのサブ領域は、QT、BT、および/または分割を含まない、項目1~2のいずれか1つ以上に記載の方法。
4.前記現在の映像ブロックの前記1つ以上の寸法は、前記現在の映像ブロックのブロック幅、ブロック高さ、および/またはアスペクト比を含む、項目1~3のいずれか1つ以上に記載の方法。
5.前記少なくとも1つの閾値条件を達成することは、現在の映像ブロックの1つ以上の寸法、またはその数学関数が対応する閾値よりも大きいおよび/または小さいことを含む、項目1~4のいずれか1つ以上に記載の方法。
6.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をT1、T2、T3、T4と表し、W>=T1、および/またはH>=T2、および/またはW*H<T3、および/またはW*H>T4である場合、幾何学的分割モードが有効化される、項目5に記載の方法。
7.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をT1、T2、T3、T4と表し、W>=T1、および/またはH>=T2、および/またはW*H<=T3、および/またはW*H>=T4である場合、幾何学的分割モードが有効化される、項目5に記載の方法。
8.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をT1、T2、T3、T4と表し、W*H<T1||(W*H<=T2&&W/H<=T3&&H/W<=T4)である場合、幾何学的分割モードが有効化される、項目5に記載の方法。
9.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をT1、T2、T3、T4と表し、W*H<T1||(W*H<=T2&&abs(logW-logH)<=T3)である場合、幾何学的分割モードが有効化される、項目5に記載の方法。
10.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をT1、T2、T3、T4と表し、W*H<=T1&&W/H<=T2&&H/W<=T3である場合、幾何学的分割モードが有効化される、項目5に記載の方法。
11.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をTx、Tyと表し、W>=Tx and H>=Tyである場合、幾何学的分割モードが有効化される、項目5に記載の方法。
12.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をN、Mと表し、W>Nおよび/またはH>Mである場合、幾何学的分割モードが無効化される、項目5に記載の方法。
13.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をTi(i=1…17)と表し、1つ以上の下記に規定する閾値条件が満たされると、幾何学的分割モードが無効化される、項目5に記載の方法、
W<T1および/またはW>T2および/またはW=T3
H<T4および/またはH>T5および/またはH=T6
W*H<T7および/またはW*H>T8および/またはW*H=T8
W/H>T9および/またはW/H>T10および/またはW/H=T11
H/W>T12および/またはH/W>T13および/またはH/W=T14
Abs(logW-logH)>T15および/またはAbs(logW-logH)<T16および/またはAbs(logW-logH)=T17。
14.前記ブロック幅をWと表し、前記ブロック高さをHと表し、閾値をTi(i=1…17)と表し、1つ以上の下記に規定する閾値条件が満たされると、幾何学的分割モードが有効化される、項目5に記載の方法、
W<T1および/またはW>T2および/またはW=T3
H<T4および/またはH>T5および/またはH=T6
W*H<T7および/またはW*H>T8および/またはW*H=T8
W/H>T9および/またはW/H>T10および/またはW/H=T11
H/W>T12および/またはH/W>T13および/またはH/W=T14
Abs(logW-logH)>T15および/またはAbs(logW-logH)<T16および/またはAbs(logW-logH)=T17。
15.現在の映像ブロックが輝度ブロックである、項目5~14のいずれか1項目以上に記載の方法。
16.現在の映像ブロックがクロマブロックである、項目5~14のいずれか1項目以上に記載の方法。
17.前記現在の映像ブロックは、輝度成分およびクロマ成分を含み、少なくとも1つの閾値条件から、輝度成分のために幾何学的分割モードが無効化されていると判定された場合、クロマ成分のために幾何学的分割モードも無効化される、項目5~14のいずれか1つ以上に記載の方法。
18.前記現在の映像ブロックは、輝度成分およびクロマ成分を含み、少なくとも1つの閾値条件から、輝度成分のために幾何学的分割モードが有効化されていると判定された場合、クロマ成分のために幾何学的分割モードも有効化される、項目5~14のいずれか1つ以上に記載の方法。
19.前記現在の映像ブロックは、輝度成分およびクロマ成分を含み、少なくとも1つの閾値条件が、前記輝度成分に対しては満たされ、クロマ成分に対しては満たされない、項目5~14のいずれか1つ以上に記載の方法。
20.現在の視覚メディアデータの映像ブロックと視覚メディアデータのビットストリーム表現との変換を行うことを含み、変換中、前記現在の映像ブロックに対して複数セットの幾何学的分割モードの使用が許可されており、前記複数セットの幾何学的分割モードは、前記現在の映像ブロックのサイズに少なくとも部分的に基づいて選択される、映像処理方法。
21.複数セットの幾何学的分割モードが許可される旨の指示が、ビットストリーム表現に含まれる、項目20に記載の方法。
22.前記複数セットの幾何学的分割モードのうちの少なくとも2つの幾何学的分割モードは、異なる数の幾何学的分割モードを含む、項目20に記載の方法。
23.前記複数セットの幾何学的分割モードのうちの少なくとも2つは、同じ数の幾何学的分割モードを含み、1つのセットに含まれる少なくとも1つの幾何学的分割モードは、別のセットにおいて除外される、項目20に記載の方法。
24.前記選択された複数セットの幾何学的分割モードの合計数の指示が、ビットストリーム表現に含まれる、項目20に記載の方法。
25.前記選択された複数の幾何学的分割モードの複数セットの合計数が閾値未満である、項目25に記載の方法。
26.許可される前記複数セットの幾何学的分割モードに関連付けられた幾何学的分割モードは、幾何学的分割モードインデックスによって識別され、前記幾何学的分割モードインデックスは、現在の映像ブロックに関連付けられたウェッジの対応する分割角度インデックスおよび/または対応する分割距離インデックスを含む、項目20~26のいずれか1つ以上に記載の方法。
27.前記幾何学的分割モードインデックスを第1の幾何学的分割モードにマッピングするステップは、複数セットの幾何学的分割モードのうちのどれが前記第1の幾何学的分割モードに関連付けられているかを判定することに基づく、項目26に記載の方法。
28.映像処理方法であって、視覚メディアデータの映像ブロックと視覚メディアデータのビットストリーム表現との変換を行うことを含み、変換中、幾何学的分割モードの第1のカウントが、第1の映像ブロックの分割角度インデックスおよび/または分割距離インデックスを計算するために使用され、第2の幾何学的分割モードの第2のカウントが第2の映像ブロックのビットストリーム表現に使用され、幾何学的分割モードの第3のカウントが第3の映像ブロックのビットストリーム表現で信号通知され、第1のカウントおよび/または第2のカウントおよび/または第3のカウントが、第1、第2、および第3の映像ブロックの対応する寸法に少なくとも基づいている、方法。
29.前記第2のカウントおよび/または前記第3のカウントが第1のカウントと異なる、項目28に記載の方法。
30.前記第2のカウントが前記第3のカウントに等しい、項目28に記載の方法。
31.前記第2のカウントおよび/または前記第3のカウントが第1のカウントより小さい、項目28に記載の方法。
32.前記第1、第2、および第3の映像ブロックは、映像ブロックの第1、第2、および第3のカテゴリに関連付けられる、項目28に記載の方法。
33.前記第1、第2、および第3の映像ブロックのカテゴリが異なり、前記第1、第2、および第3の映像ブロックのカテゴリが異なる寸法に関連付けられる、項目32に記載の方法。
34.前記第1のブロック寸法が1つ以上の閾値条件を満たす場合、前記第2のカウントおよび/または第3のカウントが前記第1のカウントより小さい、項目28に記載の方法。
35.映像処理方法であって、視覚メディアデータの現在の映像ブロックと視覚メディアデータのビットストリーム表現との変換を行うことを含み、変換中、前記規則は、現在の映像ブロックのビットストリーム表現において第1の幾何学的分割モードインデックス値を信号通知し、現在の映像ブロックの分割角度インデックスおよび/または分割距離インデックスを計算するために第2の幾何学的分割モードインデックス値を使用することを規定し、第1の幾何学的分割モードインデックス値は第2の幾何学的分割モードインデックス値と異なる、方法。
36.少なくとも1つのマッピングテーブルは、前記第1の幾何学的分割モードインデックス値と前記第2の幾何学的分割モードインデックス値との関係を規定する、項目35に記載の方法。
37.少なくとも1つのマッピングテーブルは、第1のマッピングテーブルおよび第2のマッピングテーブルを含み、第1のマッピングテーブルは、第1のタイプの映像ブロックに関連付けられ、第2のマッピングテーブルは、第2のタイプの映像ブロックに関連付けられる、項目36に記載の方法。
38.映像処理方法であって、視覚メディアデータの現在の映像ブロックと視覚メディアデータのビットストリーム表現との変換を行うことを含み、変換中、現在の映像ブロックに対して幾何学的分割モードの使用が許可され、幾何学的分割モードのパラメータは、縮小した角度のセットおよび/または縮小した距離のセットを使用して計算することを含む、方法。
39.前記縮小した角度のセットのカウントが閾値未満であり、前記閾値は24である、項目38に記載の方法。
40.前記縮小した距離のセットのカウントが閾値未満であり、前記閾値は82である、項目38に記載の方法。
41.前記縮小した距離のセットを計算する際にルックアップテーブルが使用され、ルックアップテーブルのサイズが、縮小した角度のセットに少なくとも部分的に基づいている、項目38に記載の方法。
42.項目1~41の1項目以上に記載の方法を実装するように構成された処理装置を備える、映像復号化装置。
43.項目1~41の1項目以上に記載の方法を実装するように構成された処理装置を備える映像符号化装置。
44.コンピュータコードが記憶されたコンピュータプログラム製品において、前記のコードが処理装置により実行されると、前記処理装置は、項目1~44のいずれかに記載の方法を実装する。
45.本明細書に記載の方法、装置またはシステム。
第2組の項目では、前章で開示された技術の特定の特徴及び態様を説明する。
1.映像処理方法(例えば図18Aに示す方法1810)であって、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換を行うこと1812を含み、変換中、現在の映像ブロックに対して幾何学的分割モードの使用が許可され、第1の閾値より小さい第1の数の角度を含む角度のセット、および/または第2の閾値より小さい第2の数の距離を含む距離のセットを使用して、幾何学的分割モードのパラメータを計算する、方法。
2.前記第1の閾値は24である、項目1に記載の方法。
3.前記幾何学的分割モードは1セットの幾何学的分割モードから選択され、前記幾何学的分割モードのセットは1つの第3の閾値未満の数のモードを含む、項目1に記載の方法。
4.前記第3の閾値は82である、項目3に記載の方法。
5.前記第2の閾値は3または4である、項目1に記載の方法。
6.1つ以上の角度に対する距離の数が第2の閾値より小さい、項目1に記載の方法。
7.垂直および水平の角度のための距離の数がXに等しく、Xが正の整数である、項目1に記載の方法。
8.Xは2である、項目1に記載の方法。
9.現在の映像ブロックの復号化処理に使用される角度の数は、1とangleIdxの変数の最大値との合計に等しく、前記angleIdxは、幾何学的分割モードの角度インデックスを規定する、項目1に記載の方法。
10.現在の映像ブロックのための重み付けサンプル予測および/または動きベクトル記憶の処理に使用される変位Yの変数の計算は、復号化処理に使用される角度の総数に依存し、変位Yは、(displacementX+(NUM_ANGLE>>2)))%NUM_ANGLEに設定され、displacementXは、幾何学的分割モードの角度インデックスを規定するangleIdxに設定され、NUM_ANGLEは、前記現在の映像ブロックの復号化処理に使用される角度の数を規定する、項目1に記載の方法。
11.前記現在の映像ブロックのための重み付けサンプル予測および/または動きベクトル記憶の処理に使用されるshiftHorの変数の計算は、復号化処理に使用される角度の総数に依存し、前記shiftHorを0または1に設定される、項目1に記載の方法。
12.以下の条件
1)angleIdx%(NUM_ANGLE/2)は(NUM_ANGLE>>2)に等しい、
2)angleIdx%(NUM_ANGLE/2)が0に等しくなく、hwRatio≧1であり、hwRatioがH/Wに設定されている、
という条件のうちの少なくとも1つを満たす場合に、前記shiftHorを0に設定し、
angleIdxは幾何学的分割モードの角度インデックスを規定し、NUM_ANGLEは現在の映像ブロックの復号化処理に使用される角度の数を規定し、HおよびWはそれぞれ現在の映像ブロックの高さおよび幅である、項目11に記載の方法。
13.前記現在の映像ブロックのブレンド重みインデックスを導出するためのオフセット値の導出処理は、shiftHorの角度の数および/または値に依存する、項目11に記載の方法。
14.前記現在の映像ブロックの動きインデックスを導出するためのオフセット値の導出処理は、shiftHorの角度の数および/または値に依存する、項目11に記載の方法。
15.前記距離のセットを計算する際にルックアップテーブルが使用され、ルックアップテーブルのサイズが、角度のセットに少なくとも部分的に基づいている、項目11に記載の方法。
16.前記ルックアップテーブルのサイズに基づいて前記ルックアップテーブルの値を判定する、項目15に記載の方法。
17.AおよびBが、幾何学的分割モードのための重み付けサンプル予測処理に使用される2つの入力配列、predSamplesLAおよびpredSamplesLBを表し、PART1およびPART2が、現在の映像ブロックの予測ブロックの出力重み付け予測サンプル値を導出するためのAおよびBの表現である場合、PART1およびPART2がAに等しいかまたはBに等しいかどうかは、角度インデックスT1およびT2に依存する、項目1に記載の方法。
18.角度インデックスT1およびT2に基づいて、幾何学的分割モードの動きベクトル記憶処理に使用されるpartIdxの変数を0または1に設定し、このpartIdxを使用して、動き記憶域に対して動きベクトルを割り当てるためのsTypeの別の変数を導出する、項目1に記載の方法。
19.映像処理方法(例えば図18Bに示す方法1820)は、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換のために、現在の映像ブロックの1つ以上の寸法および/または前記現在の映像の前記1つ以上の寸法の数学関数に依存する規則に基づいて、幾何学的分割モードの適用可能性を判定すること1822と、前記判定に基づいて前記変換を行うこと1824と、を含む、方法。
20.前記幾何学的分割モードは、三角形予測モード(TPM)、幾何学的マージモード(GEO)、および/またはウェッジ予測モードのうちの少なくとも1つを含む、項目19に記載の方法。
21.前記幾何学的分割モードは、現在の映像ブロックを2つ以上のサブ領域に分割することを含み、少なくとも1つのサブ領域は、QT、BT、および/または分割を含まない項目19または20に記載の方法。
22.前記規則は、前記現在の映像ブロックのブロック幅、ブロック高さ、および/またはアスペクト比に依存する、項目19~21のいずれか1つ以上に記載の方法。
23.前記規則は、W>=T1および/またはH>=T2および/またはW*H<T3および/またはW*H>T4の場合に前記幾何学的分割モードを適用することを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、T1、T2、T3およびT4が一定の値である、項目19~22のいずれか1つ以上に記載の方法。
24.前記規則は、W>=T1および/またはH>=T2および/またはW*H<=T3および/またはW*H>=T4の場合に前記幾何学的分割モードを適用することを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、T1、T2、T3およびT4が一定の値である、項目19~22のいずれか1つ以上に記載の方法。
25.前記規則は、W*H<T1||(W*H<=T2&&W/H<=T3&&H/W<=T4)の場合に、前記幾何学的分割モードを適用することを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、T1、T2、T3およびT4が一定の値である、項目19~22のいずれか1つ以上に記載の方法。
26.前記規則は、W*H<T1||(W*H<=T2&&abs(logW-logH)<=T3)の場合に、前記幾何学的分割モードを適用することを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、T1、T2、およびT3が一定の値である、項目19~22のいずれか1つ以上に記載の方法。
27.前記規則は、W*H<=T1&&W/H<=T2&&H/W<=T3の場合に、前記幾何学的分割モードを適用することを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、T1、T2、およびT3が一定の値である、項目19~22のいずれか1つ以上に記載の方法。
28.前記規則は、W>=TxおよびH>=Tyの場合に、前記幾何学的分割モードを適用することを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、Tx、Tyが一定の値である、項目19~22のいずれか1つ以上に記載の方法。
29.前記規則は、W>Nおよび/またはH>Mの場合に、前記幾何学的分割モードを適用しないことを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、N,Mが一定の値である、項目19~22のいずれか1つ以上に記載の方法。
30.前記規則は、W=Nおよび/またはH=Mの場合に、前記幾何学的分割モードを適用しないことを規定し、現在の映像ブロックの幅および高さをそれぞれWおよびHと表し、N,Mが一定の値である、項目19~22のいずれか1つ以上に記載の方法。
31.前記規則は、以下の条件のうちの1つ以上が満たされた場合に、前記幾何学的分割モードを適用しないことを規定し、
a)W<T1および/又はW>T2および/またはW=T3
b)H<T4および/又はH>T5および/またはH=T6
c)W*H<T7および/又はW*H>T8および/またはW*H=T8
d)W/H>T9および/またはW/H>T10および/またはW/H=T11
e)H/W<T12および/またはH/W>T13および/またはH/W=T14
f)Abs(logW-logH)>T15および/またはAbs(logW-logH)<T16および/またはAbs(logW-logH)=T17、
ブロックの幅および高さをそれぞれWおよびHと表し、Ti(i=1…17)が一定の値である、項目19~22のいずれか1つ以上に記載の方法。
32.前記規則は、以下の条件のうちの1つ以上が満たされた場合に、前記幾何学的分割モードを適用することを規定し、
a)W<T1および/又はW>T2および/またはW=T3
b)H<T4および/又はH>T5および/またはH=T6
c)W*H<T7および/又はW*H>T8および/またはW*H=T8
d)W/H>T9および/またはW/H>T10および/またはW/H=T11
e)H/W<T12および/またはH/W>T13および/またはH/W=T14
f)Abs(logW-logH)>T15および/またはAbs(logW-logH)<T16および/またはAbs(logW-logH)=T17、
ブロックの幅および高さをそれぞれWおよびHと表し、Ti(i=1…17)が一定の値である、項目19~22のいずれか1つ以上に記載の方法。
33.前記規則は、前記現在の映像ブロックの幅(W)および/または高さ(H)の比に依存する数学関数に依存する、項目19~22のいずれか1つ以上に記載の方法。
34.前記数学関数は、max(H,W)/min(H,W)である、項目33に記載の方法。
35.前記数学関数は、前記現在の映像ブロックの幅(W)および高さ(H)の差および/または比に関係する、項目19~22のいずれか1つ以上に記載の方法。
36.前記規則は、幅/高さ比(W/H)または高さ/幅比(H/W)がXよりも大きいまたは小さくない場合、幅(W)および高さ(H)を有する前記現在の映像ブロックに対して前記幾何学的分割モードを適用しないことを規定し、Xが一定の値である、項目19~22のいずれか1つ以上に記載の方法。
37.現在の映像ブロックが輝度ブロックまたはクロマブロックである、項目19~22のいずれか1つ以上に記載の方法。
38.前記現在の映像ブロックは、輝度成分とクロマ成分とを含み、前記規則は、前記輝度成分には前記幾何学的分割モードを適用するが、前記クロマブロックには前記幾何学的分割モードを適用しないことを規定する、項目19項から22のいずれか1つ以上に記載の方法。
39.前記現在の映像ブロックは、映像領域の輝度ブロックに対応し、幾何学的分割モードの映像領域におけるクロマブロックへの適用可能性は、この現在の映像ブロックの1つ以上の寸法に依存する、項目19から22のいずれか1つ以上に記載の方法。
40.映像処理方法(例えば図18Cに示す方法1830)であって、映像の現在の映像ブロックと映像のビットストリーム表現との変換のために、現在の映像ブロックのコーディング特性に依存する規則に従って、幾何学的分割モードの適用可能性を判定すること1832と、この判定に基づいてこの変換を行うこと1834と、を含む方法。
41.前記コーディング特性は、最大変換サイズ、最大許可コーディングユニット(CU)サイズ、またはクロマフォーマットのうちの少なくとも1つを含む、項目40に記載の方法。
42.前記規則は、最大変換サイズよりも大きい幅および/または高さを有する現在の映像ブロックに対して前記幾何学的分割モードを適用しないことを規定する、項目41に記載の方法。
43.前記規則は、最大許可CUサイズに等しい幅および/または高さを有する現在の映像ブロックに対して前記幾何学的分割モードを適用しないことを規定する、項目41に記載の方法。
44.前記規則は、4:0:0のクロマフォーマット、4:4:4のクロマフォーマットまたは4:2:2のクロマフォーマットを有する現在の映像ブロックに対して前記幾何学的分割モードを適用しないことを規定する項目41に記載の方法。
45.前記規則は、特定のクロマフォーマットを有する特定の色成分を有する現在の映像ブロックに対して前記幾何学的分割モードを適用しないことを規定する、項目41に記載の方法。
46.映像処理方法(例えば図18Dに記載の方法1840)であって、除外の規則が、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換に適用可能であると判定することであって、前記除外の規則は、前記変換が、前記現在の映像ブロックに対して幾何学的分割モードおよびコーディングツールを併用することを許可しないことを規定する、判定することと、前記判定に基づいて前記変換を行うことと、を含む、方法。
47.前記ビットストリーム表現は、前記幾何学的分割モードが前記現在の映像ブロックに適用される場合、前記コーディングツールの使用指示および/または前記コーディングツールの情報を省略する、項目46に記載の方法。
48.前記ビットストリーム表現は、前記コーディングツールが前記現在の映像ブロックに適用される場合、前記幾何学的分割モードの使用指示および/または前記幾何学的分割モードの情報を省略する、項目46に記載の方法。
49.前記符号化ツールは、適応型色変換、デュアルツリーコーディングモード、変換スキップモード、ブロック差動パルス符号変調(BDPCM)コーディングモード、またはサブブロック変換(SBT)を含む、項目46~48のいずれかに記載の方法。
50.映像処理方法(例えば図18Eに示す方法1850)であって、この方法は、映像と、前記映像のビットストリーム表現との変換のために、規則に従って映像の異なる色成分に対する、異なる幾何学的分割モードインデックスを判定すること1852と、この判定に基づいてこの変換を行うこと1854と、を含む、方法。
51.前記規則は、前記映像のクロマ成分が、前記映像の輝度成分の幾何学的分割モードインデックスとは異なる幾何学的分割モードインデックスを有することを規定する、項目50に記載の方法。
52.前記幾何学的分割モードは、前記映像のクロマ成分に適用されない、項目50に記載の方法。
53.前記ビットストリーム表現は、異なる幾何学的分割モードインデックスを含む、項目50に記載の方法。
54.前記異なる幾何学的分割モードインデックスは、前記映像の輝度成分のためのモードインデックスと、前記映像のクロマ成分のためのモードインデックスと、を含む、項目53に記載の方法。
55.前記ビットストリーム表現は、第2の色成分の幾何学的分割モードインデックスを含み、第1の色成分の幾何学的分割モードインデックスは、第2の色成分のモードインデックスから予測される、項目50に記載の方法。
56.映像処理方法(例えば図18Fに示す方法1860)であって、映像の現在のピクチャの現在の映像ブロックと前記映像のビットストリーム表現の変換のために、規則に従って幾何学的分割モードの適用可能性を判定すること1862と、前記判定に基づいて、前記変換を行うこと1864と、を含み、前記幾何学的分割モードは、現在の映像ブロックを2つ以上の予測サブ領域に分割することを含み、前記規則は、前記2つ以上の予測サブ領域に関連付けられた1つ以上の参照ピクチャの解像度に依存する、方法。
57.前記規則は、2つ以上の予測サブ領域に関連付けられた参照ピクチャの解像度が互いに異なる場合、前記幾何学的分割モードを適用しないことを規定する。項目56に記載の方法。
58.前記規則は、予測サブ領域に関連付けられた参照ピクチャの解像度が現在のピクチャの解像度と異なる場合、前記幾何学的分割モードを適用しないことを規定する、項目56に記載の方法。
59.前記規則は、予測サブ領域に関連付けられた参照ピクチャの解像度が現在のピクチャの解像度と異なる場合、前記幾何学的分割モードを適用することを規定する、項目56に記載の方法。
60.前記現在のピクチャの解像度は、現在のピクチャの幅または高さを指し、あるいはピクチャにおける窓を指す、項目56~59のいずれかに記載の方法。
61.映像処理方法であって、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換を行うことを含み、前記ビットストリーム表現は、フォーマット規則に準拠しており、前記フォーマット規則は、幾何学的分割モードが前記現在の映像ブロックに対して無効化されている場合に、前記ビットストリーム表現が幾何学的分割モードに関する構文要素を省略することを規定する、方法。
62.前記構文要素は、wedge_partition_idx、merge_wedge_idx0、またはmerge_wedge_idx1のうち少なくとも1つを含む、項目61に記載の方法。
63.ビットストリーム表現に含まれていない構文要素がデフォルト値であると推測される、項目61に記載の方法。
64.幾何学的分割モードが無効であるかまたは許可されない場合、幾何学的分割モードに関する意味変数がデフォルト値であると推測される、項目61に記載の方法。
65.映像処理方法(例えば図18Gに示す方法1870)であって、映像の1つ以上の映像ブロックを含む映像ユニットと前記映像のビットストリーム表現との変換のために、複数セットの幾何学的分割モードが規則に従って前記映像ユニットの前記1つ以上の映像ブロックをコーディングすることが許可されることを判定すること(1872)と、前記判定に基づいて前記変換を行うこと1874と、を含む、方法。
66.前記規則は、複数セットから1つのセットを選択することが、復号化情報に依存することを規定する、項目65に記載の方法。
67.前記復号化情報は、映像ブロック寸法および/または形状を含む、項目66に記載の方法。
68.前記規則は、複数セットのうちの少なくとも2つのセットが、異なる数の許可される幾何学的分割モードを有することを規定する、項目65に記載の方法。
69.前記規則は、複数セットの中でT個のセットが、同じ数の許可される幾何学的分割モードを有するが、T個のセットのうちの1つに含まれる少なくとも1つの幾何学的分割モードを、T個のセットのうちの別のセットにおいて除外することを規定する、項目65に記載の方法。
70.前記規則は、複数セットの中でT個のセットが、同じ幾何学的分割モードを有するが、少なくとも1つの幾何学的分割モードが、T個のセットのうちのいずれか2つに対して異なる位置に配置されることを規定する、項目65に記載の方法。
71.どのように幾何学的分割モードインデックスを信号通知するかは、許可された幾何学的分割モードの対応するセットに依存する、項目65に記載の方法。
72.復号化された幾何学的分割モードインデックスは、対応する幾何学的分割モードに依存する、項目65に記載の方法。
73.ビットストリーム表現における映像ブロックに使用されるべき複数の幾何学的分割モードの合計数が、一定の値未満の数として定義される、項目65に記載の方法。
74.ビットストリーム表現における映像ブロックに対して信号通知されるべき前記幾何学的分割モードの合計数が、一定の値未満の数として定義される、項目65に記載の方法。
75.前記数が信号通知される項目73または74に記載の方法。
76.映像処理方法であって、映像ブロックを含む映像と映像のビットストリーム表現との変換を行うことを含み、変換中に、幾何学的分割モードの第1のカウントが分割角度インデックスおよび/または分割距離インデックスを計算するために利用可能であり、幾何学的分割モードの第2のカウントが前記ビットストリーム表現におけるコーディングに利用可能であり、幾何学的分割モードの第3のカウントが前記ビットストリーム表現における信号通知に利用可能であり、前記第1のカウントおよび/または前記第2のカウントおよび/または前記第3のカウントは、前記映像ブロックの対応する寸法に少なくとも基づく、方法。
77.前記第2のカウントおよび/または前記第3のカウントは第1のカウントと異なる、項目76に記載の方法。
78.前記第2のカウントは前記第3のカウントに等しい、項目76に記載の方法。
79.前記第2のカウントおよび/または前記第3のカウントは前記第1のカウントより小さい、項目76に記載の方法。
80.前記第2のカウントおよび/または前記第3のカウントは、前記映像ブロックの異なるブロックカテゴリに対して異なるように定義される、項目76に記載の方法。
81.映像ブロックカテゴリが、映像ブロックの幅と高さの比、映像ブロックの幅と高さの数学関数、または映像ブロックの寸法に基づく、項目80に記載の方法。
82.前記第1のブロック寸法が1つ以上の閾値条件を満たす場合、前記第2のカウントおよび/または前記第3のカウントは前記第1のカウントより小さい、項目81に記載の方法。
83.固定数のセットが前記映像ブロックのカテゴリごとに第2のカウントおよび/または第3のカウントに対して定義される、項目80に記載の方法。
84.前記映像ブロックのカテゴリごとの前記第2のカウントおよび/または前記第3のカウントは、前記ビットストリーム表現に含まれる、項目80に記載の方法。
85.前記映像ブロックのカテゴリごとの前記第2のカウントおよび/または前記第3のカウントは、予め定義される、項目80に記載の方法。
86.輝度ブロックの幅および/または高さが、第2のカウントおよび/または第3のカウントを導出するために使用される、項目80に記載の方法。
87.映像処理方法であって、規則に従って、映像の現在の映像ブロックと映像のビットストリーム表現との変換を行うことを含み、前記規則は、現在の映像ブロックのビットストリーム表現において第1の幾何学的分割モードインデックス値を信号通知し、現在の映像ブロックの分割角度インデックスおよび/または分割距離インデックスを計算するために第2の幾何学的分割モードインデックス値を使用することを規定し、第1の幾何学的分割モードインデックス値は第2の幾何学的分割モードインデックス値と異なる、方法。
88.現在の映像ブロックは、この現在の映像ブロックの幅および/または高さに基づいて、特定のカテゴリに関連付けられ、この特定のカテゴリに対して、フルセットの幾何学的分割モード、分割角度、および/または分割距離のサブセットが使用される、項目87に記載の方法。
89.少なくとも1つのマッピングテーブルは、第1の幾何学的分割モードインデックス値と第2の幾何学的分割モードインデックス値との関係を規定する、項目87に記載の方法。
90.前記少なくとも1つのマッピングテーブルは、前記ビットストリーム表現に含まれる、項目89に記載の方法。
91.前記少なくとも1つのマッピングテーブルは、予め定義されている、項目89に記載の方法。
92.前記変換のためにN個のマッピングテーブルが使用され、Nは、前記映像ブロックのブロックカテゴリの数に依存する一定の値である、項目87に記載の方法。
93.N個のマッピングテーブルの長さは、映像ブロックのブロックカテゴリに依存する、項目92に記載の方法。
94.映像処理方法であって、映像の現在の映像ブロックと前記映像のビットストリーム表現との変換を行うことを含み、規則に従って幾何学的分割モードインデックスの2値化を行うように、前記現在の映像ブロックの幾何学的分割モードインデックスをビットストリームでコーディングする、方法。
95.前記規則は、前記2値化が前記現在の映像ブロックの復号化情報に依存することを規定する、項目94に記載の方法。
96.前記復号化情報は、現在の映像ブロックの寸法および/または前記現在の映像ブロックカテゴリを含む、項目95に記載の方法。
97.前記規則は、2値化のために切り捨てられた2進コードを使用することを規定する、項目94に記載の方法。
98.ビットストリーム表現に含まれる幾何学的分割モードインデックスは、分割角度インデックスおよび/または分割距離インデックスを導出するために使用される導出された幾何学的分割モードインデックスとは異なる、項目97に記載の方法。
99.前記規則は、2値化のためにK次の指数ゴロム(EG)コーディングを使用することを規定し、式中、Kは整数である項目94に記載の方法。
100.前記規則は、コンテキストコーディングを使用して前記幾何学的分割モードインデックスをコーディングすることを規定する、項目94に記載の方法。
101.前記規則は、前記幾何学的分割モードインデックスの第1のX個のビンをコンテキストコーディングによってコーディングし、残りのビンをコンテキストモデル化なしでバイパスコーディングによってコーディングすることを規定する、項目94に記載の方法。
102.映像処理方法(例えば図18Hに示す方法1880)であって、映像の映像ユニットのクロマブロックと映像のビットストリーム表現との変換のために、規則に従ってクロマブロックに対するブレンド重みおよび/または動き記憶重みを判定すること1882と、この判定に基づいて、変換を行うこと1884と、を含み、クロマブロックに幾何学的分割モードを適用し、前記規則は、対応する輝度サンプルに関して、クロマブロックにおける特定のクロマサンプルの相対位置を示すクロマサンプルの位置タイプに依存する、方法。
103.前記映像ユニットは、シーケンスパラメータセット(SPS)、映像パラメータセット(VPS)、ピクチャパラメータセット(PPS)、ピクチャヘッダ、サブピクチャ、スライス、スライスヘッダ、タイル、ブリック、コーディングツリーユニット、または仮想パイプラインデータユニット(VPDU)を含む、項目102に記載の方法。
104.クロマサンプルのためのブレンド重み導出に使用されるダウンサンプリングフィルタのタイプが、映像ユニットレベルで信号通知される、項目102に記載の方法。
105.前記ビットストリーム表現は、異なるクロマ位置タイプを切り替えるためのフラグを含む、項目104に記載の方法。
106.前記フラグは、幾何学的分割モードにおける左上ダウンサンプリングされた輝度サンプルが左上輝度サンプルと同一位置に配置されているかどうかを規定するか、または、前記フラグは、左上ダウンサンプリングされた輝度サンプルが左上輝度サンプルと水平に共座しているが、左上輝度サンプルに対して垂直にシフトされているかどうかを規定する、項目105に記載の方法。
107.前記ダウンサンプリングフィルタのタイプは、4:2:0のクロマフォーマットまたは4:2:2:クロマフォーマットを有するクロマブロックに対して信号通知される、項目104に記載の方法。
108.前記ビットストリーム表現は、幾何学的分割予測に使用されるクロマダウンサンプリングフィルタのタイプを規定するためのフラグを含む、項目104に記載の方法。
109.クロマサンプルのためのブレンド重み導出に使用されるダウンサンプリングフィルタのタイプが、映像ユニットレベルで信号通知される、項目102に記載の方法。
110.クロマサブサンプリングフィルタのタイプとクロマフォーマットのタイプとの対応関係を規定するために、ルックアップテーブルを定義する、項目109に記載の方法。
111.前記クロマブロックの幾何学的分割予測に使用されるダウンサンプリングフィルタは、前記クロマサンプルの位置タイプに依存する、項目102に記載の方法。
112.前記クロマブロックが特定のクロマサンプルの位置タイプを有する場合、前記クロマブロックのクロマ重みは、同一位置に配置された左上の輝度重みからサブサンプリングされる、項目111に記載の方法。
113.規定されたXタップフィルタが、クロマブロックが特定のクロマサンプルの位置タイプを有する場合、クロマ重みサブサンプリングのために使用される、項目111に記載の方法。
114.前記幾何学的分割モードは、1セットの幾何学的分割モードから選択され、前記1セットの幾何学的分割モードは、1つ以上の幾何学的分割モードを含み、1つのブロックを2つのパーティションに分離し、そのうちの少なくとも1つが非正方形および非長方形である、項目1~113のいずれかに記載の方法。
115.前記変換は、前記映像を前記ビットストリーム表現に符号化することを含む、項目1~114に記載の方法。
116.前記変換は、前記映像を前記ビットストリーム表現から復号化することを含む、項目1~114のいずれかに記載の方法。
117.項目1から116のいずれか1つまたは複数に記載された方法を実施するように構成された処理装置を含む映像処理装置。
118.実行されると、項目1から116までのいずれか1つ以上に記載された方法を処理装置に実施させるプログラムコードを格納したコンピュータ可読媒体。
119.上述した方法のいずれかに従って生成されたコーディング表現またはビットストリーム表現を記憶する、コンピュータ可読媒体。
本明細書に記載された開示された、およびその他の解決策、実施例、実施形態、モジュール、および機能動作の実装形態は、本明細書に開示された構造およびその構造的等価物を含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しくはハードウェアで実施されてもよく、またはそれらの1つ以上の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、またはこれらの1つ以上の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブル処理装置、コンピュータ、または複数の処理装置、若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、処理装置ファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1つ以上の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報を符号化するために生成される。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。1つのコンピュータプログラムを、1つのサイトに位置する1つのコンピュータ、または複数のサイトに分散され通信ネットワークによって相互接続される複数のコンピュータで実行させるように展開することも可能である。
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生成することによって機能を実行するための1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブル処理装置によって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
コンピュータプログラムの実行に適した処理装置は、例えば、汎用および専用マイクロ処理装置の両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上の処理装置を含む。一般的に、処理装置は、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するための処理装置と、命令およびデータを記憶するための1つ以上のメモリデバイスとである。一般的に、コンピュータは、データを記憶するための1つ以上の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュ記憶装置、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体記憶装置を含む。処理装置およびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
本特許明細書は多くの詳細を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている例における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
いくつかの実装形態および例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。

Claims (15)

  1. 映像データを処理する方法であって、
    映像の現在の映像ブロックと前記映像のビットストリームとの間で変換を行うことを含み、
    前記変換中に、前記現在の映像ブロックに対して幾何学的分割モードの使用が許可され、前記幾何学的分割モードは複数の分割方式を含み、
    前記幾何学的分割モードの前記複数の分割方式のパラメータは、第1の閾値より小さい第1の数の角度を含む角度のセットと、第2の閾値より小さい第2の数の距離を含む前記角度のセットのための距離のセットと、を使用して計算され、
    垂直角に対する距離の数は2に等しく、水平角に対する距離の数はに等しく
    前記現在の映像ブロックの高さに対する幅の比又は幅に対する高さの比が第4の閾値より大きいことに応じて、前記現在の映像ブロックに対して前記幾何学的分割モードが許可されない、
    方法。
  2. 前記第1の閾値は、24に等しい、
    請求項1に記載の方法。
  3. 前記第1の数は、20に等しい、
    請求項1又は2に記載の方法。
  4. 前記複数の分割方式の数は、第3の閾値未満であり、
    前記第3の閾値は、82に等しい、
    請求項1から3のいずれか1項に記載の方法。
  5. 前記現在の映像ブロックのために、第1の動き情報及び第2の動き情報を決定することをさらに含み、
    前記変換は、前記第1の動き情報及び前記第2の動き情報に基づくものであり、
    前記変換は、前記第1の動き情報及び前記第2の動き情報から導出される予測サンプルの加重和に基づいて、前記現在の映像ブロックに対する最終予測を生成するための重み付け処理を適用することを含み、
    前記現在の映像ブロックに対する前記重み付け処理で使用される第1の変数の計算は、前記幾何学的分割モードで使用される角度単位の総数に依存する、
    請求項1から4のいずれか1項に記載の方法。
  6. 変位Yとして示される第1の変数は、(変位X+(前記幾何学的分割モードで使用される角度単位の総数>>2))%前記幾何学的分割モードで使用される角度単位の総数に設定され、
    前記変位Xは、前記幾何学的分割モードの分割方式の角度インデックスを指定するangleIdxに設定される、
    請求項5に記載の方法。
  7. 前記重み付け処理で使用されるshiftHorの第2の変数の計算は、前記幾何学的分割モードで使用される角度単位の総数に依存し、
    shiftHorは、0又は1に設定される、
    請求項5または6に記載の方法。
  8. 以下の条件の少なくとも1つが満たされる場合、shiftHorを0に設定し、
    前記条件は、
    1)angleIdx%(前記幾何学的分割モードで使用される角度単位の総数/2)が(前記幾何学的分割モードで使用される角度単位の総数>>2)に等しいこと、または、
    2)angleIdx%(前記幾何学的分割モードで使用される角度単位の総数/2)が0以外であり、且つhwRatio≧1であり、hwRatioがH/Wに設定されていること、
    であり、
    angleIdxは、前記幾何学的分割モードの分割方式の角度インデックスを指定し、HとWとはそれぞれ、前記現在の映像ブロックの高さと幅を表す、
    請求項7に記載の方法。
  9. 記現在の映像ブロックの幅又は高さが第5の閾値より小さいことに応じて、前記現在の映像ブロックに対して前記幾何学的分割モードが許可されない、
    請求項1から8のいずれか1項に記載の方法。
  10. 前記幾何学的分割モードの構文要素が前記ビットストリームに存在しない場合、前記構文要素の値は0に等しいデフォルト値であると推測され、
    前記構文要素は、前記幾何学的分割モードの分割方式を指定する第1の構文要素、前記幾何学的分割モードの第1のマージ候補インデックスを指定する第2の構文要素、または、前記幾何学的分割モードの第2のマージ候補インデックスを指定する第3の構文要素、の少なくとも1つを含む、
    請求項1から9のいずれか1項に記載の方法。
  11. 前記変換は、前記映像を前記ビットストリームに符号化することを含む、
    請求項1から10のいずれか1項に記載の方法。
  12. 前記変換は、前記ビットストリームから前記映像を復号化することを含む、
    請求項1~10のいずれかに記載の方法。
  13. 処理装置と、命令を有する非一時的メモリと、を備える映像データ処理装置であって、
    前記処理装置による実行時に、命令は、前記処理装置に、
    映像の現在の映像ブロックと前記映像のビットストリームとの間で変換を行うこと、
    を実行させ、
    前記変換中に、前記現在の映像ブロックに対して幾何学的分割モードの使用が許可され、前記幾何学的分割モードは複数の分割方式を含み、
    前記幾何学的分割モードの前記複数の分割方式のパラメータは、第1の閾値より小さい第1の数の角度を含む角度のセットと、第2の閾値より小さい第2の数の距離を含む前記角度のセットのための距離のセットと、を使用して計算され、
    垂直角に対する距離の数は2に等しく、水平角に対する距離の数はに等しく
    前記現在の映像ブロックの高さに対する幅の比又は幅に対する高さの比が第4の閾値より大きいことに応じて、前記現在の映像ブロックに対して前記幾何学的分割モードが許可されない、
    装置。
  14. 命令を記憶する非一時的コンピュータ可読記憶媒体であって、
    前記命令は、処理装置に、
    映像の現在の映像ブロックと前記映像のビットストリームとの間で変換を行うこと、
    を実行させ、
    前記変換中に、前記現在の映像ブロックに対して幾何学的分割モードの使用が許可され、前記幾何学的分割モードは複数の分割方式を含み、
    前記幾何学的分割モードの前記複数の分割方式のパラメータは、第1の閾値より小さい第1の数の角度を含む角度のセットと、第2の閾値より小さい第2の数の距離を含む前記角度のセットのための距離のセットと、を使用して計算され、
    垂直角に対する距離の数は2に等しく、水平角に対する距離の数はに等しく
    前記現在の映像ブロックの高さに対する幅の比又は幅に対する高さの比が第4の閾値より大きいことに応じて、前記現在の映像ブロックに対して前記幾何学的分割モードが許可されない、
    記憶媒体。
  15. 映像処理装置によって実行される方法によって生成される映像のビットストリームを記憶する方法であって、
    前記方法は、
    映像の現在の映像ブロックのためのビットストリームを生成することと、
    前記ビットストリームを非一時的コンピュータ可読記録媒体に記憶することと、を含み、
    前記生成中に、前記現在の映像ブロックに対して幾何学的分割モードの使用が許可され、前記幾何学的分割モードは複数の分割方式を含み、
    前記幾何学的分割モードの前記複数の分割方式のパラメータは、第1の閾値より小さい第1の数の角度を含む角度のセットと、第2の閾値より小さい第2の数の距離を含む前記角度のセットのための距離のセットと、を使用して計算され、
    垂直角に対する距離の数は2に等しく、水平角に対する距離の数はに等しく
    前記現在の映像ブロックの高さに対する幅の比又は幅に対する高さの比が第4の閾値より大きいことに応じて、前記現在の映像ブロックに対して前記幾何学的分割モードが許可されない、
    方法
JP2022531615A 2019-11-30 2020-11-27 幾何学的分割を用いた簡易インター予測 Active JP7453374B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023188613A JP2024012506A (ja) 2019-11-30 2023-11-02 幾何学的分割を用いた簡易インター予測

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
CNPCT/CN2019/122256 2019-11-30
CN2019122256 2019-11-30
CN2020071032 2020-01-08
CNPCT/CN2020/071032 2020-01-08
CN2020071552 2020-01-10
CNPCT/CN2020/071552 2020-01-10
PCT/CN2020/132162 WO2021104433A1 (en) 2019-11-30 2020-11-27 Simplified inter prediction with geometric partitioning

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023188613A Division JP2024012506A (ja) 2019-11-30 2023-11-02 幾何学的分割を用いた簡易インター予測

Publications (2)

Publication Number Publication Date
JP2023503683A JP2023503683A (ja) 2023-01-31
JP7453374B2 true JP7453374B2 (ja) 2024-03-19

Family

ID=76129175

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022531615A Active JP7453374B2 (ja) 2019-11-30 2020-11-27 幾何学的分割を用いた簡易インター予測
JP2023188613A Pending JP2024012506A (ja) 2019-11-30 2023-11-02 幾何学的分割を用いた簡易インター予測

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023188613A Pending JP2024012506A (ja) 2019-11-30 2023-11-02 幾何学的分割を用いた簡易インター予測

Country Status (7)

Country Link
US (2) US11659180B2 (ja)
EP (1) EP4049451A4 (ja)
JP (2) JP7453374B2 (ja)
KR (1) KR20220101638A (ja)
CN (2) CN114902675A (ja)
BR (1) BR112022010230A2 (ja)
WO (1) WO2021104433A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7506470B2 (ja) 2019-12-10 2024-06-26 シャープ株式会社 動画像復号装置、動画像符号化装置、動画像復号方法および動画像符号化方法
CN114902663A (zh) * 2019-12-30 2022-08-12 鸿颖创新有限公司 用于编码视频数据的设备和方法
US20230156181A1 (en) * 2021-11-17 2023-05-18 Mediatek Inc. Methods and Apparatuses for a High-throughput Video Encoder or Decoder
WO2024111820A1 (ko) * 2022-11-21 2024-05-30 현대자동차주식회사 기하학적 분할에 기반하여 크로마 블록을 인트라 예측하는 비디오 코딩을 위한 방법 및 장치
WO2024114652A1 (en) * 2022-11-29 2024-06-06 Douyin Vision Co., Ltd. Method, apparatus, and medium for video processing
US20240205459A1 (en) * 2022-12-14 2024-06-20 Tencent America LLC Systems and methods for wedge-based prediction mode signaling
WO2024145229A1 (en) * 2022-12-29 2024-07-04 Bytedance Inc. Method, apparatus, and medium for video processing

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8634457B2 (en) * 2008-09-26 2014-01-21 Qualcomm Incorporated Determining availability of video data units
JP5826747B2 (ja) 2009-06-26 2015-12-02 トムソン ライセンシングThomson Licensing 適応的な幾何学的な分割を使用した映像符号化及び復号化の方法及び装置
KR101515696B1 (ko) * 2010-04-12 2015-04-27 퀄컴 인코포레이티드 기하학적 모션 파티셔닝을 위한 고정 소수점 구현
CN102611884B (zh) 2011-01-19 2014-07-09 华为技术有限公司 图像编解码方法及编解码设备
CN103561276B (zh) 2013-11-07 2017-01-04 北京大学 一种图像视频编解码方法
US20150373327A1 (en) * 2014-06-20 2015-12-24 Qualcomm Incorporated Block adaptive color-space conversion coding
US10362331B2 (en) * 2015-03-02 2019-07-23 Hfi Innovation Inc. Method and apparatus for intraBC mode with fractional-pel block vector resolution in video coding
US20160277751A1 (en) * 2015-03-19 2016-09-22 Patrick J. Sweeney Packaging/mux and unpackaging/demux of geometric data together with video data
CN115134609A (zh) 2015-06-11 2022-09-30 杜比实验室特许公司 使用自适应去块滤波编码和解码图像的方法及其装置
EP3357227A1 (en) 2015-10-02 2018-08-08 VID SCALE, Inc. Color correction with a lookup table
WO2017183751A1 (ko) 2016-04-22 2017-10-26 엘지전자(주) 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
EP3453173B1 (en) 2016-05-05 2021-08-25 InterDigital Madison Patent Holdings, SAS Control-point based intra direction representation for intra coding
US11095922B2 (en) 2016-08-02 2021-08-17 Qualcomm Incorporated Geometry transformation-based adaptive loop filtering
WO2018045108A1 (en) 2016-09-02 2018-03-08 Vid Scale, Inc. Method and system for signaling of 360-degree video information
EP3523784A1 (en) 2016-10-07 2019-08-14 VID SCALE, Inc. Geometry conversion and frame packing associated with 360-degree videos
WO2018093184A1 (ko) 2016-11-18 2018-05-24 주식회사 케이티 비디오 신호 처리 방법 및 장치
EP3646590A4 (en) 2017-06-30 2020-11-18 Sharp Kabushiki Kaisha SYSTEMS AND METHODS FOR GEOMETRY ADAPTIVE BLOCK DIVISION OF AN IMAGE IN VIDEO BLOCKS FOR VIDEO ENCODING
KR20190046704A (ko) 2017-10-26 2019-05-07 한국전자통신연구원 비대칭 서브 블록 기반 영상 부호화/복호화 방법 및 장치
WO2019151284A1 (ja) 2018-01-30 2019-08-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
MX2021004677A (es) 2018-11-02 2021-06-04 Beijing Bytedance Network Tech Co Ltd Mantenimiento de tabla para almacenamiento de candidatos de hmvp.
EP3847814A4 (en) 2018-11-06 2021-07-14 Beijing Bytedance Network Technology Co. Ltd. POSITION DEPENDENT STORAGE, MOVEMENT INFORMATION
CN109327703A (zh) * 2018-11-13 2019-02-12 长春理工大学 一种基于不同采样块的深度图编解码方法
CN113170170B (zh) 2018-11-22 2024-07-26 北京字节跳动网络技术有限公司 用于具有几何分割的帧间预测的混合方法
CN109299060A (zh) * 2018-11-22 2019-02-01 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于影像矩形分块的分布式文件方法及系统
AU2020294669B2 (en) * 2019-06-21 2024-03-28 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods for sub-block partitioning mode
JP2022538969A (ja) * 2019-06-24 2022-09-07 アリババ グループ ホウルディング リミテッド 映像コード化における動きフィールド記憶のための方法及び装置
WO2021129694A1 (en) 2019-12-24 2021-07-01 Beijing Bytedance Network Technology Co., Ltd. High level syntax for inter prediction with geometric partitioning

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
DENG, Zhipin et al.,CE4-related: Further Constraints on Block Shapes for GEO,JVET-Q0309 (version 1),ITU,2019年12月31日,pp.1-9,[online],[retrieved on 2023-07-28],Retrieved from the Internet: <URL: https://jvet-experts.org/doc_end_user/documents/17_Brussels/wg11/JVET-Q0309-v1.zip>,JVET-Q0309.docx
GAO, Han et al.,CE4-related: Geometric Merge Mode (GEO) Simplifications,JVET-P0107 (version 3),ITU,2019年10月06日,pp.1-9,[online],[retrieved on 2023-07-27],Retrieved from the Internet: <URL: https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0107-v3.zip>,JVET-P0107_v3_clean.docx
GAO, Han et al.,Simplified GEO without Multiplication and Minimum Blending Mask Storage (Harmonization of JVET-P0107, JVET-P0264 and JVET-P0304),JVET-P0884 (version 8),ITU,2019年10月24日,pp.71, 146-148, 269-274,[online],[retrieved on 2023-07-27],Retrieved from the Internet: <URL: https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0884-v8.zip>,JVET-P0884_P0885_WD(on_top_of_JVET-O2001-vE)_r1.docx
REUZE, Kevin et al.,CE4-related: Simplification of GEO using Angles with Power-of-Two Tangents,JVET-P0264 (version 4),ITU,2019年10月07日,pp.1-6,[online],[retrieved on 2023-07-27],Retrieved from the Internet: <URL: https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0264-v4.zip>,JVET-P0264-v4-clean.docx

Also Published As

Publication number Publication date
US20230247199A1 (en) 2023-08-03
WO2021104433A1 (en) 2021-06-03
US11659180B2 (en) 2023-05-23
JP2023503683A (ja) 2023-01-31
EP4049451A4 (en) 2022-12-28
EP4049451A1 (en) 2022-08-31
BR112022010230A2 (pt) 2023-03-14
US20220303533A1 (en) 2022-09-22
JP2024012506A (ja) 2024-01-30
CN114902675A (zh) 2022-08-12
KR20220101638A (ko) 2022-07-19
CN117729330A (zh) 2024-03-19

Similar Documents

Publication Publication Date Title
JP7453374B2 (ja) 幾何学的分割を用いた簡易インター予測
CN114303370B (zh) 视频编解码中预测权重的对准
US11700378B2 (en) High level syntax for inter prediction with geometric partitioning
JP2023156417A (ja) イントラブロックコピーコーディングされたブロックにおけるブロックベクトルのコーディング
CN114556915B (zh) 几何分割模式中被编解码的块的去块
WO2021204190A1 (en) Motion vector difference for block with geometric partition
WO2021129685A1 (en) Spatial-temporal motion vector prediction
US20220337867A1 (en) Motion vector difference for block with geometric partition

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220527

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231108

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240307

R150 Certificate of patent or registration of utility model

Ref document number: 7453374

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150