JP7446339B2 - 幾何学的分割モードコーディングを用いた動き候補リスト - Google Patents
幾何学的分割モードコーディングを用いた動き候補リスト Download PDFInfo
- Publication number
- JP7446339B2 JP7446339B2 JP2021571979A JP2021571979A JP7446339B2 JP 7446339 B2 JP7446339 B2 JP 7446339B2 JP 2021571979 A JP2021571979 A JP 2021571979A JP 2021571979 A JP2021571979 A JP 2021571979A JP 7446339 B2 JP7446339 B2 JP 7446339B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- merge
- candidates
- motion information
- candidate
- 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
Links
- 230000033001 locomotion Effects 0.000 title claims description 376
- 230000011218 segmentation Effects 0.000 title 1
- 238000000034 method Methods 0.000 claims description 411
- 239000013598 vector Substances 0.000 claims description 227
- 230000008569 process Effects 0.000 claims description 196
- 238000013138 pruning Methods 0.000 claims description 59
- 238000010276 construction Methods 0.000 claims description 48
- 238000005192 partition Methods 0.000 claims description 39
- 238000012545 processing Methods 0.000 claims description 39
- 230000009466 transformation Effects 0.000 claims description 30
- 238000006243 chemical reaction Methods 0.000 claims description 26
- 238000000638 solvent extraction Methods 0.000 claims description 10
- 230000015654 memory Effects 0.000 claims description 6
- 238000007689 inspection Methods 0.000 claims 3
- 230000004044 response Effects 0.000 claims 1
- 241000023320 Luma <angiosperm> Species 0.000 description 168
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical group COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 160
- 238000009795 derivation Methods 0.000 description 109
- 230000000007 visual effect Effects 0.000 description 58
- 230000002123 temporal effect Effects 0.000 description 37
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 34
- 238000003672 processing method Methods 0.000 description 17
- 101100508818 Mus musculus Inpp5k gene Proteins 0.000 description 10
- 101100366438 Rattus norvegicus Sphkap gene Proteins 0.000 description 10
- 238000012360 testing method Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 9
- 230000011664 signaling Effects 0.000 description 8
- 238000003491 array Methods 0.000 description 7
- 239000011449 brick Substances 0.000 description 7
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000000872 buffer Substances 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 230000007774 longterm Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 241000086194 Bulbophyllum affine Species 0.000 description 1
- 101100328895 Caenorhabditis elegans rol-8 gene Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/58—Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
この文献は映像符号化技術に関する。具体的には、これは、三角予測モードを含むマージコーディングに関連する。これは、HEVCのような既存の映像符号化標準に適用されてもよいし、成立される標準(バーサタイルビデオコーディング)に適用されてもよい。これは、将来の映像符号化標準又は映像コーデックにも適用可能である。
映像符号化標準は、主に、周知のITU-T及びISO/IEC標準の開発を通じて発展してきた。ITU-TがH.261及びH.263を作成し、ISO/IECがMPEG-1及びMPEG-4 Visualを作成し、そして、これら2つの組織が共同で、H.262/MPEG-2 Video及びH.264/MPEG-4 AVC(Advanced Video Coding)及びH.265/HEVC標準を作成した。H.262以来、映像符号化標準は、時間予測に加えて変換符号化が利用されるハイブリッド映像符号化構造に基づいている。HEVCの先の将来の映像符号化技術を探求するため、2015年にVCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、数多くの新しい方法が、JVETによって採用され、共同探索モデルJEM(Joint Exploration Model)と名付けられたリファレンスソフトウェアに入れられてきた。2018年4月には、HEVCと比較して50%のビットレート低減を目指すVVC標準に取り組むべく、VCEG(Q6/16)とISO/IEC JTC1 SC29/WG11(MPEG)との間でJVET(Joint Video Expert Team)を発足させた。
http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/14_Geneva/wg11/JVET-N1001-v7.zip
にて見つけることができる。
https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/tags/VTM-5.0
にて見つけることができる。
インター符号化される符号化ユニット(CU)について、それは、パーティションモードに従って、1つの予測ユニット(PU)、2つのPUで符号化され得る。インター予測による各PUは、1つ又は2つの参照ピクチャリストに関する動きパラメータを有する。動きパラメータは、動きベクトル及び参照ピクチャインデックスを含む。2つの参照ピクチャリストのうちの1つの使用がまた、inter_pred_idcを用いて信号伝達され得る。動きベクトルは、予測子に対するデルタとして明示的に符号化され得る。
HEVCにおいて、インター予測という用語は、現在復号されているピクチャ以外の参照ピクチャのデータ要素(例えば、サンプル値又は動きベクトル)から導出される予測を表記するために使用される。H.264/AVCにおいてと同様に、ピクチャは複数の参照ピクチャから予測されることができる。インター予測に使用される参照ピクチャは、1つ以上の参照ピクチャリストに編成される。予測信号を作成するためにリスト内の参照ピクチャのうちのどれが使用されるべきかを参照インデックスが特定する。
2.1.2.1 マージモードに関する候補の導出
マージモードを使用してPUが予測されるとき、マージ候補リスト内のエントリを指すインデックスがビットストリームから構文解析され、動き情報を取り出すために使用される。このリストの構築は、HEVC標準に規定されており、以下の一連のステップに従って要約され得る:
・ ステップ1:当初候補導出
- ステップ1.1:空間候補導出
- ステップ1.2:空間候補に関する冗長性検査
- ステップ1.3:時間候補導出
・ ステップ2:追加候補挿入
- ステップ2.1:双予測候補の作成
- ステップ2.2:ゼロ動き候補の挿入。
空間マージ候補の導出では、図2に示す位置にある候補の中から最大4つのマージ候補が選択される。導出の順序はA1、B1、B0、A0、及びB2である。位置B2は、位置A1、B1、B0、A0のうちのいずれかのPUが利用可能でない場合(例えば、それが別のスライス又はタイルに属するため)又はイントラ符号化される場合にのみ考慮される。位置A1の候補が追加された後、残りの候補の追加は、符号化効率が向上されるように、同じ動き情報を有する候補がリストから除外されることを保証する冗長性検査にかけられる。計算複雑性を低減させるために、前述の冗長性検査では、可能な全ての候補ペアが考慮されるわけではない。その代わりに、図3の矢印で結び付けられたペアのみが考慮され、冗長性検査に使用される対応する候補が同じ動き情報を持たない場合にのみ、候補がリストに追加される。重複動き情報の別の発生源は、2N×2Nとは異なる分割に関連する“第2のPU”である。一例として、図4は、それぞれ、N×2N及び2N×Nの場合の第2のPUを示している。現在PUがN×2Nに分割されるとき、A1にある候補はリスト構築に考慮されない。実際、この候補を追加することは、同じ動き情報を有する2つの予測ユニットにつながることになり、それは、符号化ユニット内に1つのみのPUを有することには冗長である。同様に、現在PUが2N×Nに分割されるとき、位置B1は考慮されない。
このステップでは、1つの候補のみがリストに追加される。特に、この時間マージ候補の導出では、コロケートピクチャ内のコロケートPUに基づいて、スケーリングされた動きベクトルが導出される。コロケートPUの導出に使用される参照ピクチャリストは、スライスヘッダ内で明示的に信号伝達される。時間マージ候補に関するスケーリングされた動きベクトルは、図5に点線で示すようにして得られ、それは、POC距離tb及びtdを用いて、コロケートPU(col_PU)の動きベクトルからスケーリングされるものであり、ここで、tbは、現在ピクチャ(curr_pic)の参照ピクチャ(curr_ref)と現在ピクチャとの間のPOC差であると定義され、tdは、コロケートピクチャ(col_pic)の参照ピクチャ(col_ref)とコロケートピクチャとの間のPOC差であると定義される。時間マージ候補の参照ピクチャインデックスは、ゼロに等しく設定される。スケーリングプロセスの実際の具現化はHEVC仕様書に定められている。Bスライスでは、一方が参照ピクチャリスト0に関し、他方が参照ピクチャリスト1に関するものである2つの動きベクトルが得られ、これらが組み合わされて、双予測マージ候補をなす。
TMVPが有効にされる場合(すなわち、slice_temporal_mvp_enabled_flagが1に等しい)、コロケートピクチャを表す変数ColPicが、次のように導出される:
- 現在スライスがBスライスであり、信号伝達されるcollocated_from_10_flagが0に等しい場合、ColPicはRefPicList1[collocated_ref_idx]に等しく設定され;
- それ以外の場合(slice_typeがBに等しく且つcollocated_from_l0_flagが1に等しい、又はslice_typeがPに等しい)、ColPicはRefPicList0[collocated_ref_idx]に等しく設定され;
ただし、collocated_ref_idx及びcollocated_from_10_flagは、スライスヘッダ内で信号伝達され得る2つの構文要素である。
より具体的には、TMVP候補を導出するために、以下のステップが実行される:
1)参照ピクチャリストX=0に設定し、ターゲット参照ピクチャを、リストX内の0に等しいインデックスを有する参照ピクチャ(すなわちcurr_ref)に設定する;
2)現在スライスがBスライスである場合、参照ピクチャリストX=1に設定し、ターゲット参照ピクチャを、リストX内の0に等しいインデックスを有する参照ピクチャ(すなわちcurr_ref)に設定する。curr_refを指すリストXに関するMVを取得するために、コロケート動きベクトルの導出プロセスを呼び出す。
コロケートブロックについて、それは、片予測又は双予測でイントラ符号化又はインター符号化され得る。それがイントラ符号化される場合、TMVP候補は利用不可に設定される。
- 参照ピクチャがいずれも、現在ピクチャに比べて大きいPOC値を持たない場合、AはXに等しく設定される;
- そうでない場合、Aはcollocated_from_10_flagに等しく設定される。
このプロセスへの入力は以下である:
- 現在予測ブロックを規定する変数currPb、
- ColPicによって規定されるコロケートピクチャの内側のコロケート予測ブロックを規定する変数colPb、
- ColPbによって規定されるコロケートルマ予測ブロックの左上サンプルを、ColPicによって規定されるコロケートピクチャの左上ルマサンプルに対して規定するルマ位置(xColPb,yColPb)、
- Xを0又は1とする参照インデックスrefIdxLX。
- 動きベクトル予測mvLXCol
- 利用可用性フラグavailableFlagLXCol。
- colPbがイントラ予測モードで符号化される場合、mvLXColの両方のコンポーネントが0に等しく設定され、availableFlagLXColが0に等しく設定される。
- それ以外の場合、動きベクトルmvCol、参照インデックスrefIdxCol、及び参照リスト識別子listColが、次のように導出される:
- predFlagL0Col[xColPb][yColPb]が0に等しい場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvL1Col[xColPb][yColPb]、refIdxL1Col[xColPb][yColPb]、及びL1に等しく設定される;
- そうでなく、predFlagL0Col[xColPb][yColPb]が1に等しく且つpredFlagL1Col[xColPb][yColPb]が0に等しい場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvL0Col[xColPb][yColPb]、refIdxL0Col[xColPb][yColPb]、及びL0に等しく設定される;
- それ以外の場合(predFlagL0Col[xColPb][yColPb]が1に等しく且つpredFlagL1Col[xColPb][yColPb]が1に等しい)、以下の割り当てが行われる:
- NoBackwardPredFlagが1に等しい場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvLXCol[xColPb][yColPb]、refIdxLXCol[xColPb][yColPb]、及びLXに等しく設定される;
- それ以外の場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvLNCol[xColPb][yColPb]、refIdxLNCol[xColPb][yColPb]、及びLNに等しく設定され、Nはcollocated_from_l0_flagの値である;
そして、mvLXCol及びavailableFlagLXColが、次のように導出される:
- LongTermRefPic(currPic,currPb,refIdxLX,LX)がLongTermRefPic(ColPic,colPb,refIdxCol,listCol)に等しくない場合、mvLXColの両方のコンポーネントが0に等しく設定され、availableFlagLXColが0に等しく設定される;
- それ以外の場合、変数availableFlagLXColが1に等しく設定され、refPicListCol[refIdxCol]が、ColPicによって規定されるコロケートピクチャ内の予測ブロックcolPbを含むスライスの参照ピクチャリストlistCol内の参照インデックスrefIdxColを有するピクチャであるように設定され、以下が適用される:
colPocDiff=DiffPicOrderCnt(ColPic,refPicListCol[refIdxCol]) (2-1)
currPocDiff=DiffPicOrderCnt(currPic,RefPicListX[refIdxLX]) (2-2)
- RefPicListX[refIdxLX]が長期参照ピクチャである、又はcolPocDiffがcurrPocDiffに等しい場合、mvLXColが、次のように導出される:
mvLXCol=mvCol (2-3)
- それ以外の場合、次のように、mvLXColが、動きベクトルmvColのスケーリングされたバージョンとして導出され:
tx=(16384+(Abs(td)>>1))/td (2-4)
distScaleFactor=Clip3(-4096,4095,(tb*tx+32)>>6) (2-5)
mvLXCol=Clip3(-32768,32767,Sign(distScaleFactor*mvCol)*
((Abs(distScaleFactor*mvCol)+127)>>8)) (2-6)
ここで、td及びtbは、次のように導出される:
td=Clip3(-128,127,colPocDiff) (2-7)
tb=Clip3(-128,127,currPocDiff) (2-8)
変数NoBackwardPredFlagは、次のように導出される:
- DiffPicOrderCnt(aPic,CurrPic)が、現在スライスのRefPicList0又はRefPicList1内の各ピクチャaPicに対して0以下である場合、NoBackwardPredFlagは1に設定される;
- それ以外の場合、NoBackwardPredFlagは0に等しく設定される。
空間及び時間マージ候補の他に、結合双予測マージ候補及びゼロマージ候補という2つの更なるタイプのマージ候補が存在する。結合双予測マージ候補は、空間及び時間マージ候補を利用することによって生成される。結合双予測マージ候補はBスライスのみに使用される。結合双予測候補は、当初候補の第1の参照ピクチャリスト動きパラメータを別のものの第2の参照ピクチャリスト動きパラメータと組み合わせることによって生成される。これら2つのタプルが異なる動き仮説を提供する場合、それらは新たな双予測候補を形成する。一例として、図7は、mvL0とrefIdxL0、又はmvL1とrefIdxL1、を有するものである元のリスト(左側)内の2つの候補を用いて、最終的なリスト(右側)に追加される結合双予測マージ候補が作成される場合を示している。これらの追加マージ候補を生成するために考慮される組み合わせに関するルールが数多く存在する。
AMVPは、隣接PUとの動きベクトルの空間-時間相関を利用し、それが動きパラメータの明示的伝送に使用される。各参照ピクチャリストに対して、先ず、左上の時間的に隣接するPU位置の利用可能性を検査し、冗長候補を除去し、そして、ゼロベクトルを追加して候補リストを一定長さにすることによって、動きベクトル候補リストが構築される。そして、エンコーダは、候補リストから最良の予測子を選択し、選択した候補を指し示す対応するインデックスを送信することができる。同様に、マージインデックス信号伝達では、最良の動きベクトル候補のインデックスがtruncated unaryを用いて符号化される。この場合に符号化される最大値は2である(図8を参照)。以下のセクションにて、動きベクトル予測候補の導出プロセスの詳細を提供する。
図8は、動きベクトル予測候補に関する導出プロセスをまとめている。
空間動きベクトル候補の導出においては、図2で示したような位置にあるPUから導出されるものである5つの可能性ある候補の中の最大2つの候補が考慮され、それらの位置は動きマージの位置と同じである。現在PUの左側についての導出の順序が、A0、A1、及びスケーリングされたA0、スケーリングされたA1として定められる。現在PUの上側についての導出の順序が、B0、B1、B2、スケーリングされたB0、スケーリングされたB1、スケーリングされたB2として定められる。従って、各側について、動きベクトル候補として使用され得る4つのケースが存在し、2つのケースは空間スケーリングを使用する必要がなく、2つのケースでは空間スケーリングが使用される。それら4つの異なるケースは、以下のようにまとめられる:
・ 空間スケーリングなし
- (1)同一参照ピクチャリスト、且つ同一参照ピクチャインデックス(同一POC)
- (2)異なる参照ピクチャリスト、しかし、同一参照ピクチャ(同一POC)
・ 空間スケーリング
- (3)同一参照ピクチャリスト、しかし、異なる参照ピクチャ(異なるPOC)
- (4)異なる参照ピクチャリスト、且つ異なる参照ピクチャ(異なるPOC)。
参照ピクチャインデックスの導出は別にして、時間マージ候補の導出のための全てのプロセスは、空間動きベクトル候補の導出に関してと同じである(図6を参照)。参照ピクチャインデックスがデコーダに信号伝達される。
例えば、MVDを信号伝達するための適応動きベクトル差レゾリューション(Adaptive Motion Vector difference Resolution;AMVR)、動きベクトル差付きマージ(Merge with Motion Vector Differences;MMVD)、三角予測モード(Triangular prediction mode;TPM)、結合インター-イントラモード(Combined intra-inter prediction;CIIP)アドバンストTMVP(ATMVP、SbTMVPとしても知られる)、アフィン予測モード、一般化双予測(Generalized Bi-Prediction;GBI)、デコーダ側動きベクトル精緻化(Decoder-side Motion Vector Refinement;DMVR)、及び双方向オプティカルフロー(Bi-directional Optical flow;BIO、BDOFとしても知られる)などの、インター予測改良のための新たな符号化ツールが幾つか存在する。
1)サブブロックマージ候補リスト:これは、ATMVP候補及びアフィンマージ候補を含む。1つのマージリスト構築プロセスが、アフィンモード及びATMVPモードの双方で共有される。ここで、ATMVP候補及びアフィンマージ候補が順に追加され得る。サブブロックマージリストサイズはスライスヘッダ内で信号伝達され、最大値は5である;
2)通常マージリスト:インター符号化ブロックでは、1つのマージリスト構築プロセスが共有される。ここで、空間/時間マージ候補、HMVP、ペアワイズマージ候補、及びゼロ動き候補が、順に挿入され得る。通常マージリストサイズはスライスヘッダ内で信号伝達され、最大値は6である。MMVD、TPM、CIIPは、通常マージリストを当てにする;
3)IBCマージリスト:これは、通常マージリストと同様のやり方で行われる。
1)アフィンAMVP候補リスト;
2)通常AMVP候補リスト;
3)IBC AMVP候補リスト:JVET-N0843の採用によりIBCマージリストと同じ構築プロセス。
VVCでは、ピクチャを正方形又は長方形のブロックに分割するために、四分木/二分木/三分木(Quad-Tree/Binary-Tree/Ternary-Tree;QT/BT/TT)構造が採用されている。
HEVCでは、動き補償予測(motion compensation prediction;MCP)に並進動きモデルのみが適用されている。一方、現実世界では、例えばズームイン/アウト、回転、遠近動作、及び他の不規則な動きといった、多くの種類の動きが存在する。VVCでは、4パラメータアフィンモデル及び6パラメータアフィンモデルを用いて、簡略化されたアフィン変換動き補償予測が適用されている。図10に示すように、ブロックのアフィン動き場が、4パラメータアフィンモデルでは2つの制御点動きベクトル(CPMV)、そして6パラメータアフィンモデルでは3つのCPMVによって記述される。
2.2.3.1 並進通常マージモードのマージリスト構築
2.2.3.1.1 履歴ベース動きベクトル予測(HMVP)
マージリスト設計とは異なり、VVCでは、履歴ベース動きベクトル予測(History-based Motion Vector Prediction;HMVP)法が採用されている。
通常(regular)マージリスト(並進運動向け)の構築は、以下の一連のステップに従ってまとめることができる:
・ ステップ1:空間候補の導出;
・ ステップ2:HMVP候補の挿入;
・ ステップ3:ペアワイズ平均候補の挿入;
・ ステップ4:デフォルト動き候補。
候補は、冗長性検査に使用される対応する候補が同じ動き情報を持たない場合にのみリストに追加される。このような比較プロセスを剪定(プルーニング)プロセスと呼ぶ。
VVCでは、インター予測のために三角パーティションモードがサポートされる。三角パーティションモードは、8×8以上であり且つMMVD又はCIIPモードではなくマージモードで符号化されるCUのみに適用される。これらの条件を満たすCUについて、三角パーティションモードが適用されるか否かを指し示すためにCUレベルのフラグが信号伝達される。
基本的に、JVET-N0340で提案されるように通常マージリスト構築プロセスが適用される。しかし、いくらかの変更が加えられる。
1)剪定プロセスをどのように行うかは、現在ブロックに対するTPMの使用に依存し、
- 現在ブロックがTPMで符号化されない場合、空間マージ候補に適用されるHEVC 5剪定が呼び出される;
- そうでない場合(現在ブロックがTPMで符号化される場合)、新たな空間マージ候補を追加する時に完全剪定が適用される。すなわち、B1がA1と比較され、B0がA1及びB1と比較され、A0がA1、B1及びB0と比較され、そして、B2がA1、B1、A0及びB0と比較される;
2)B2からの動き情報を検査すべきかについての条件は、現在ブロックに対するTPMの使用に依存し、
- 現在ブロックがTPMで符号化されない場合、B2を検査する前に4つ未満の空間マージ候補しか存在しない場合にのみ、B2がアクセスされて検査される;
- そうでない場合(現在ブロックがTPMで符号化される場合)、B2を追加する前に利用可能な空間マージ候補が何個あるかに関係なく、B2は常にアクセスされて検査される。
各三角予測ユニットを予測した後、CU全体についての最終的な予測を導出するために、2つの三角予測ユニット間の対角線エッジに適応重み付けプロセスが適用される。2つの重み付け係数グループが、以下のように定義される:
・ 第1重み付け係数グループ:輝度サンプル及び色度サンプルに対して、それぞれ、{7/8,6/8,4/8,2/8,1/8}及び{7/8,4/8,1/8}が使用される;
・ 第2重み付け係数グループ:輝度サンプル及び色度サンプルに対して、それぞれ、{7/8,6/8,5/8,4/8,3/8,2/8,1/8}及び{6/8,4/8,2/8}が使用される。
- 2つの三角予測ユニットの参照ピクチャが互いに異なる;
- 2つの動きベクトルの水平値の差の絶対値が16ピクセルよりも大きい;
- 2つの動きベクトルの垂直値の差の絶対値が16ピクセルよりも大きい。
三角予測ユニットの動きベクトル(図16のMv1及びMv2)は、4×4グリッドに格納される。各4×4グリッドについて、CU内での該4×4グリッドの位置に応じて、片予測又は双予測のいずれかの動きベクトルが格納される。図16に示すように、非加重領域に位置する(すなわち、対角エッジに位置しない)4×4グリッドに対しては、Mv1又はMv2のいずれかである片予測動きベクトルが格納される。一方で、加重領域に位置する4×4グリッドに対しては、双予測動きベクトルが格納される。双予測動きベクトルは、以下のルールに従ってMv1及びMv2から導出される:
1)Mv1及びMv2が相異なる方向(L0又はL1)からの動きベクトルを持つ場合、Mv1とMv2とを単純に結合して双予測動きベクトルを形成する;
2)Mv1及びMv2の両方が同じL0(又はL1)方向からである場合、
- Mv2の参照ピクチャがL1(又はL0)参照ピクチャリスト内のピクチャと同じである場合、Mv2がそのピクチャにスケーリングされる。Mv1とスケーリングされたMv2とを結合して双予測動きベクトルを形成する;
- Mv1の参照ピクチャがL1(又はL0)参照ピクチャリスト内のピクチャと同じである場合、Mv1がそのピクチャにスケーリングされる。スケーリングされたMv1とMv2とを結合して双予測動きベクトルを形成する;
- それ以外の場合、加重領域に対してMv1のみが格納される。
six_minus_max_num_merge_candは、スライス内でサポートされるマージ動きベクトル予測(MVP)候補の最大数を6から差し引いたものを規定する。マージMVP候補の最大スMaxNumMergeCandは、次のように導出される:
MaxNumMergeCand=6-six_minus_max_num_merge_cand (7-57)
MaxNumMergeCandの値は、両端を含めて1から6の範囲内とする。
MaxNumSubblockMergeCand=5-five_minus_max_num_subblock_merge_cand (7-58)
MaxNumSubblockMergeCandの値は、両端を含めて1から5
の範囲内とする。
0に等しいpred_mode_flagは、現在符号化ユニットがインター予測モードで符号化されることを規定する。1に等しいpred_mode_flagは、現在符号化ユニットがイントラ予測モードで符号化されることを規定する。
- cbWidthが4に等しく且つcbHeightが4に等しい場合、pred_mode_flagは1に等しいと推定される;
- それ以外の場合、pred_mode_flagは、Iスライスを復号するときは1に等しく、P又はBスライスを復号するときは0に等しいと推測される。
- pred_mode_flagが0に等しい場合、CuPredMode[x][y]はMODE_INTERに等しく設定される;
- それ以外の場合(pred_mode_flagが1に等しい)、CuPredMode[x][y]はMODE_INTRAに等しく設定される。
- cu_skip_flag[x0][y0]が1に等しく、cbWidthが4に等しく、且つcbHeightが4に等しい場合、pred_mode_ibc_flagは1に等しいと推定される;
- そうでなく、cbWidth及びcbHeightの両方が128に等しい場合、pred_mode_ibc_flagは0に等しいと推定される;
- それ以外の場合、pred_mode_ibc_flagは、Iスライスを復号するときはsps_ibc_enabled_flagの値に等しいと推測され、P又はBスライスを復号するときは0に等しいと推測される。
- cu_skip_flag[x0][y0]が1に等しい場合、general_merge_flag[x0][y0]は1に等しいと推定される;
- それ以外の場合、general_merge_flag[x0][y0]は0に等しいと推定される。
1に等しいregular_merge_flag[x0][y0]は、現在符号化ユニットのインター予測パラメータを生成するために通常マージモードが使用されることを規定する。配列インデックスx0、y0は、検討される符号化ブロックの左上ルマサンプルの位置(x0,y0)を、ピクチャの左上ルマサンプルに対して規定する。
- 以下の全ての条件が真である場合、regular_merge_flag[x0][y0]は1に等しいと推定される:
- sps_mmvd_enabled_flagが0に等しい;
- general_merge_flag[x0][y0]が1に等しい;
- cbWidth*cbHeightが32に等しい;
- それ以外の場合、regular_merge_flag[x0][y0]は0に等しいと推定される。
- 以下の全ての条件が真である場合、mmvd_merge_flag[x0][y0]は1に等しいと推定される:
- sps_mmvd_enabled_flagが1に等しい;
- general_merge_flag[x0][y0]が1に等しい;
- cbWidth*cbHeightが32に等しい;
- regular_merge_flag[x0][y0]が0に等しい;
- それ以外の場合、mmvd_merge_flag[x0][y0]は0に等しいと推定される。
MmvdOffset[x0][y0][0]=(MmvdDistance[x0][y0]<<2)*MmvdSign[x0][y0][0]
(7-124)
MmvdOffset[x0][y0][1]=(MmvdDistance[x0][y0]<<2)*MmvdSign[x0][y0][1]
(7-125)
現在符号化ユニットの予測サンプルを生成するために三角形の形状に基づく動き補償が使用されるかを規定するものである変数MergeTriangleFlag[x0][y0]が、Bスライスを復号するときに、次のように導出される:
- 以下の全ての条件が満たされる場合、MergeTriangleFlag[x0][y0]は1に等しく設定される:
- sps_triangle_enabled_flagが1に等しい;
- slice_typeがBに等しい;
- general_merge_flag[x0][y0]が1に等しい;
- MaxNumTriangleMergeCandが2以上である;
- cbWidth*cbHeightが64以上である;
- regular_merge_flag[x0][y0]が0に等しい;
- mmvd_merge_flag[x0][y0]が0に等しい;
- merge_subblock_flag[x0][y0]が0に等しい;
- cip_flag[x0][y0]が0に等しい;
- それ以外の場合、MergeTriangleFlag[x0][y0]は0に等しく設定される。
- mmvd_merge_flag[x0][y0]が1に等しい場合、merge_idx[x0][y0]は、mmvd_cand_flag[x0][y0]に等しいと推定される;
- それ以外の場合(mmvd_merge_flag[x0][y0]が0に等しい)、merge_idx[x0][y0]は0に等しいと推定される。
JVET-N0340にて提供される復号プロセスは、以下のように定められている。
このプロセスは、general_merge_flag[xCb][yCb]が1に等しいときにのみ呼び出され、(xCb,yCb)は、現在ルマ符号化ブロックの左上サンプルを、現在ピクチャの左上ルマサンプルに対して規定する。
- 現在ピクチャの左上ルマサンプルに対する現在ルマ符号化ブロックの左上サンプルのルマ位置(xCb,yCb);
- ルマサンプル内の現在符号化ブロックの幅を規定する変数cbWidth;
- ルマサンプル内の現在符号化ブロックの高さを規定する変数cbHeight。
- 1/16分数サンプル精度でのルマ動きベクトルmvL0[0][0]及びmvL1[0][0];
- 参照インデックスrefIdxL0及びrefIdxL1;
- 予測リスト利用フラグpredFlagL0[0][0]及びpredFlagL1[0][0];
- 双予測重みインデックスbcwIdx;
- マージ候補リストmergeCandList。
1. 第8.5.2.3項に規定される隣接符号化ユニットからの空間マージ候補の導出プロセスが、ルマ符号化ブロック位置(xCb,yCb)、ルマ符号化ブロック幅cbWidth、ルマ符号化ブロック高さcbHeightを入力として呼び出され、その出力は、Xが0又は1での、利用可能性フラグavailableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1、及びavailableFlagB2、参照インデックスrefIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1、及びrefIdxLXB2、予測リスト利用フラグpredFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1、及びpredFlagLXB2、並びに動きベクトルmvLXA0、mvLXA1、mvLXB0、mvLXB1、及びmvLXB2と、双予測重みインデックスbcwIdxA0、bcwIdxA1、bcwIdxB0、bcwIdxB1、bcwIdxB2である;
2. Xが0又は1での参照インデックスrefIdxLXCol、及び時間マージ候補Colに対する双予測重みインデックスbcwIdxColが、0に等しく設定される;
3. 第8.5.2.11項に規定される時間ルマ動きベクトル予測の導出プロセスが、ルマ位置(xCb,yCb)、ルマ符号化ブロック幅cbWidth、ルマ符号化ブロック高さcbHeight、及び変数refIdxL0Colを入力として呼び出され、その出力は、利用可能性フラグavailableFlagL0Col、及び時間動きベクトルmvL0Colである。変数availableFlagCol、predFlagL0Col及びpredFlagL1Colが次のように導出される:
availableFlagCol=availableFlagL0Col (8-263)
predFlagL0Col=availableFlagL0Col (8-264)
predFlagL1Col=0 (8265)
4. slice_typeがBに等しいとき、第8.5.2.11項に規定される時間ルマ動きベクトル予測の導出プロセスが、ルマ位置(xCb,yCb)、ルマ符号化ブロック幅cbWidth、ルマ符号化ブロック高さcbHeight、及び変数refIdxL1Colを入力として呼び出され、その出力は、利用可能性フラグavailableFlagL1Col、及び時間動きベクトルmvL1Colである。変数availableFlagCol及びpredFlagL1Colが次のように導出される:
availableFlagCol=availableFlagL0Col||availableFlagL1Col (8-266)
predFlagL1Col=availableFlagL1Col (8-267)
5. マージ候補リストmergeCandListが次のように構築される:
i=0
if(availableFlagA1)
mergeCandList[i++]=A1
if(availableFlagB1)
mergeCandList[i++]=B1
if(availableFlagB0)
mergeCandList[i++]=B0 (8-268)
if(availableFlagA0)
mergeCandList[i++]=A0
if(availableFlagB2)
mergeCandList[i++]=B2
if(availableFlagCol)
mergeCandList[i++]=Col
6. 変数numCurrMergeCand及びnumOrigMergeCandが、mergeCandList内のマージ候補の数に等しく設定される;
7. numCurrMergeCandが(MaxNumMergeCand-1)よりも小さく、且つnumHmvpCandが0よりも大きいとき、以下が適用される:
- 第8.5.2.6項に規定される履歴ベースマージ候補の導出プロセスが、mergeCandList及びnumCurrMergeCandを入力とし、変更されたmergeCandList及びnumCurrMergeCandを出力として呼び出される;
- numOrigMergeCandがnumCurrMergeCandに等しく設定される;
8. numCurrMergeCandがMaxNumMergeCandよりも小さく且つ1よりも大きい場合、以下が適用される:
- 第8.5.2.4項に規定されるペアワイズ平均マージ候補の導出プロセスが、mergeCandList、該mergeCandList内の全候補Nの、参照インデックスrefIdxL0N及びrefIdxL1N、予測リスト利用フラグpredFlagL0N及びpredFlagL1N、動きベクトルmvL0N及びmvL1N、並びにnumCurrMergeCandを入力として呼び出され、その出力が、mergeCandList、numCurrMergeCand、mergeCandListに追加される候補avgCandの、参照インデックスrefIdxL0avgCand及びrefIdxL1avgCand、予測リスト利用フラグpredFlagL0avgCand及びpredFlagL1avgCand、並びに動きベクトルmvL0avgCand及びmvL1avgCandに割り当てられる。mergeCandListに追加される候補avgCandの双予測重みインデックスbcwIdxが0に等しく設定される;
- numOrigMergeCandがnumCurrMergeCandに等しく設定される;
9. 第8.5.2.5項に規定されるゼロ動きベクトルマージ候補の導出プロセスが、mergeCandList、該mergeCandList内の全候補Nの、参照インデックスrefIdxL0N及びrefIdxL1N、予測リスト利用フラグpredFlagL0N及びpredFlagL1N、動きベクトルmvL0N及びmvL1N、並びにnumCurrMergeCandを入力として呼び出され、その出力が、mergeCandList、numCurrMergeCand、mergeCandListに追加される全ての新たな候補zeroCandmの、参照インデックスrefIdxL0zeroCandm及びrefIdxL1zeroCandm、予測リスト利用フラグpredFlagL0zeroCandm及びpredFlagL1zeroCandm、並びに動きベクトルmvL0zeroCandm及びmvL1zeroCandmに割り当てられる。mergeCandListに追加される全ての新たな候補zeroCandmの双予測重みインデックスbcwIdxが0に等しく設定される。追加される候補の数numZeroMergeCandは、(numCurrMergeCand-numOrigMergeCand)に等しく設定される。numZeroMergeCandが0よりも大きいとき、mは、両端を含めて0からnumZeroMergeCand-1までの範囲である。
refIdxLX=refIdxLXN (8-269)
predFlagLX[0][0]=predFlagLXN (8-270)
mvLX[0][0][0]=mvLXN[0] (8-271)
mvLX[0][0][1]=mvLXN[1] (8-272)
bcwIdx=bcwIdxN (8-273)
11. mmvd_merge_flag[xCb][yCb]が1に等しいとき、以下が適用される:
- 8.5.2.7に規定されるマージ動きベクトル差の導出プロセスが、ルマ位置(xCb,yCb)、参照インデックスrefIdxL0及びrefIdxL1、並びに予測リスト利用フラグpredFlagL0[0][0]及びpredFlagL1[0][0]を入力とし、動きベクトル差mMvdL0及びmMvdL1を出力として呼び出される;
- 0又は1であるXで、次のように、マージ動きベクトルmvLXに動きベクトル差mMvdLXが加えられる:
mvLX[0][0][0]+=mMvdLX[0] (8-274)
mvLX[0][0][1]+=mMvdLX[1] (8-275)
mvLX[0][0][0]=Clip3(-217,217-1,mvLX[0][0][0]) (8-276)
mvLX[0][0][1]=Clip3(-217,217-1,mvLX[0][0][1]) (8-277)
このプロセスへの入力は以下である:
- 現在ピクチャの左上ルマサンプルに対する現在ルマ符号化ブロックの左上サンプルのルマ位置(xCb,yCb);
- ルマサンプル内の現在符号化ブロックの幅を規定する変数cbWidth;
- ルマサンプル内の現在符号化ブロックの高さを規定する変数cbHeight。
- 隣接符号化ユニットの利用可能性フラグavailableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1、及びavailableFlagB2;
- 隣接符号化ユニットの参照インデックスrefIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1、及びrefIdxLXB2;
- 隣接符号化ユニットの予測リスト利用フラグpredFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1、及びpredFlagLXB2;
- 隣接符号化ユニットの1/16分数サンプル精度での動きベクトルmvLXA0、mvLXA1、mvLXB0、mvLXB1、及びmvLXB2;
- 双予測重みインデックスgbiIdxA0、gbiIdxA1、gbiIdxB0、gbiIdxB1、及びgbiIdxB2。
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA1,yNbA1)が(xCb-1,yCb+cbHeight-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA1,yNbA1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA1に割り当てられる;
- 変数availableFlagA1、refIdxLXA1、predFlagLXA1、及びmvLXA1が、次のように導出される:
- availableA1がFALSEに等しい場合、0又は1であるXで、availableFlagA1が0に等しく設定され、mvLXA1の両方のコンポーネントが0に等しく設定され、refIdxLXA1が-1に等しく設定され、predFlagLXA1が0に等しく設定され、そして、gbiIdxA1が0に等しく設定される;
- それ以外の場合、availableFlagA1は1に等しく設定されて、以下の割り当てが行われる:
mvLXA1=MvLX[xNbA1][yNbA1] (8-294)
refIdxLXA1=RefIdxLX[xNbA1][yNbA1] (8-295)
predFlagLXA1=PredFlagLX[xNbA1][yNbA1] (8-296)
gbiIdxA1=GbiIdx[xNbA1][yNbA1] (8-297)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB1,yNbB1)が(xCb+cbWidth-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB1,yNbB1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB1に割り当てられる;
- 変数availableFlagB1、refIdxLXB1、predFlagLXB1、及びmvLXB1が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB1が0に等しく設定され、mvLXB1の両方のコンポーネントが0に等しく設定され、refIdxLXB1が-1に等しく設定され、predFlagLXB1が0に等しく設定され、そして、gbiIdxB1が0に等しく設定される;
- availableB1がFALSEに等しい;
- availableA1がTRUEに等しく、且つルマ位置(xNbA1,yNbA1)及び(xNbB1,yNbB1)が同じ動きベクトル及び同じ参照インデックスを持つ;
- それ以外の場合、availableFlagB1は1に等しく設定されて、以下の割り当てが行われる:
mvLXB1=MvLX[xNbB1][yNbB1] (8-298)
refIdxLXB1=RefIdxLX[xNbB1][yNbB1] (8-299)
predFlagLXB1=PredFlagLX[xNbB1][yNbB1] (8-300)
gbiIdxB1=GbiIdx[xNbB1][yNbB1] (8-301)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB0,yNbB0)が(xCb+cbWidth,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB0,yNbB0)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB0に割り当てられる;
- 変数availableFlagB0、refIdxLXB0、predFlagLXB0、及びmvLXB0が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB0が0に等しく設定され、mvLXB0の両方のコンポーネントが0に等しく設定され、refIdxLXB0が-1に等しく設定され、predFlagLXB0が0に等しく設定され、そして、gbiIdxB0が0に等しく設定される;
- availableB0がFALSEに等しい;
- availableB1がTRUEに等しく、且つルマ位置(xNbB1,yNbB1)及び(xNbB0,yNbB0)が同じ動きベクトル及び同じ参照インデックスを持つ;
- availableA1がTRUEに等しく、ルマ位置(xNbA1,yNbA1)及び(xNbB0,yNbB0)が同じ動きベクトル及び同じ参照インデックスを持ち、且つmerge_triangle_flag[xCb][yCb]が1に等しい;
- それ以外の場合、availableFlagB0は1に等しく設定されて、以下の割り当てが行われる:
mvLXB0=MvLX[xNbB0][yNbB0] (8-302)
refIdxLXB0=RefIdxLX[xNbB0][yNbB0] (8-303)
predFlagLXB0=PredFlagLX[xNbB0][yNbB0] (8-304)
gbiIdxB0=GbiIdx[xNbB0][yNbB0] (8-305)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA0,yNbA0)が(xCb-1,yCb+cbWidth)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA0,yNbA0)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA0に割り当てられる;
- 変数availableFlagA0、refIdxLXA0、predFlagLXA0、及びmvLXA0が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagA0が0に等しく設定され、mvLXA0の両方のコンポーネントが0に等しく設定され、refIdxLXA0が-1に等しく設定され、predFlagLXA0が0に等しく設定され、そして、gbiIdxA0が0に等しく設定される;
- availableA0がFALSEに等しい;
- availableA1がTRUEに等しく、且つルマ位置(xNbA1,yNbA1)及び(xNbA0,yNbA0)が同じ動きベクトル及び同じ参照インデックスを持つ;
- availableB1がTRUEに等しく、ルマ位置(xNbB1,yNbB1)及び(xNbA0,yNbA0)が同じ動きベクトル及び同じ参照インデックスを持ち、且つmerge_triangle_flag[xCb][yCb]が1に等しい;
- availableB0がTRUEに等しく、ルマ位置(xNbB0,yNbB0)及び(xNbA0,yNbA0)が同じ動きベクトル及び同じ参照インデックスを持ち、且つmerge_triangle_flag[xCb][yCb]が1に等しい;
- それ以外の場合、availableFlagA0は1に等しく設定されて、以下の割り当てが行われる:
mvLXA0=MvLX[xNbA0][yNbA0] (8-306)
refIdxLXA0=RefIdxLX[xNbA0][yNbA0] (8-307)
predFlagLXA0=PredFlagLX[xNbA0][yNbA0] (8-308)
gbiIdxA0=GbiIdx[xNbA0][yNbA0] (8-309)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB2,yNbB2)が(xCb-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB2,yNbB2)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB2に割り当てられる;
- 変数availableFlagB2、refIdxLXB2、predFlagLXB2、及びmvLXB2が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB2が0に等しく設定され、mvLXB2の両方のコンポーネントが0に等しく設定され、refIdxLXB2が-1に等しく設定され、predFlagLXB2が0に等しく設定され、そして、gbiIdxB2が0に等しく設定される;
- availableB2がFALSEに等しい;
- availableA1がTRUEに等しく、且つルマ位置(xNbA1,yNbA1)及び(xNbB2,yNbB2)が同じ動きベクトル及び同じ参照インデックスを持つ;
- availableB1がTRUEに等しく、且つルマ位置(xNbB1,yNbB1)及び(xNbB2,yNbB2)が同じ動きベクトル及び同じ参照インデックスを持つ;
- availableB0がTRUEに等しく、ルマ位置(xNbB0,yNbB0)及び(xNbB2,yNbB2)が同じ動きベクトル及び同じ参照インデックスを持ち、且つmerge_triangle_flag[xCb][yCb]が1に等しい;
- availableA0がTRUEに等しく、ルマ位置(xNbA0,yNbA0)及び(xNbB2,yNbB2)が同じ動きベクトル及び同じ参照インデックスを持ち、且つmerge_triangle_flag[xCb][yCb]が1に等しい;
- availableFlagA0+availableFlagA1+availableFlagB0+availableFlagB1が4に等しく、且つmerge_triangle_flag[xCb][yCb]が0に等しい;
- それ以外の場合、availableFlagB2は1に等しく設定されて、以下の割り当てが行われる:
mvLXB2=MvLX[xNbB2][yNbB2] (8-310)
refIdxLXB2=RefIdxLX[xNbB2][yNbB2] (8-311)
predFlagLXB2=PredFlagLX[xNbB2][yNbB2] (8-312)
gbiIdxB2=GbiIdx[xNbB2][yNbB2] (8-313)
JVET-L0054では、最終動きベクトル表現(UMVE、これはMMVDとしても知られる)が提示されている。UMVEは、提案する動きベクトル表現法とともにスキップモード又はマージモードのいずれかに使用される。
JVET-L0100にて多重仮説(multi-hypothesis)予測が提案されており、それにおいては、結合イントラ・インター予測が、複数の仮説を生成するための1つの手法である。
全てのサブブロック関係の動き候補を、非サブブロックマージ候補用の通常マージリストに加えての別個のマージリストに入れることが提案される。
a. ATMVP候補(利用可能であることもあればないこともある);
b. アフィンマージリスト(継承アフィン候補及び構築アフィン候補を含む);
c. ゼロMV 4パラメータアフィンモデルとしてのパディング。
ATMVPの基本アイディアは、1つのブロックに対して複数セットの時間動きベクトル予測子を導出するというものである。各サブブロックに一組の動き情報が割り当てられる。ATMVPマージ候補が生成されるとき、全体ブロックレベルではなく、8×8レベルで動き補償が行われる。
初期化動きベクトルをtempMvにより表記する。ブロックA1が利用可能であり且つ非イントラ符号化されるとき(すなわち、インターモード又はIBCモードで符号化される)、初期化動きベクトルを導出するために、以下が適用される:
- 以下の条件の全てが真である場合、tempMvは、mvL1A1により表記されるリスト1のブロックA1の動きベクトルに等しく設定される:
- リスト1の参照ピクチャインデックスが利用可能であり(-1に等しくない)、且つそれがコロケートピクチャと同じPOC値を持つ(すなわち、DiffPicOrderCnt(ColPic,RefPicList[1][refIdxL1A1])が0に等しい);
- 全ての参照ピクチャが現在ピクチャと比較して大きいPOCを持たない(すなわち、現在スライスの全ての参照ピクチャリスト内の全てのピクチャaPicに対して、DiffPicOrderCnt(aPic,currPic)が0以下である);
- 現在スライスがBスライスに等しい;
- collocated_from_l0_flagが0に等しい;
- そうでなく、以下の条件の全てが真である場合、tempMvは、mvL0A1により表記されるリスト0のブロックA1の動きベクトルに等しく設定される:
- リスト0の参照ピクチャインデックスが利用可能である(-1に等しくない);
- それが、コロケートピクチャと同じPOC値を持つ(すなわち、DiffPicOrderCnt(ColPic,RefPicList[0][refIdxL0A1])が0に等しい);
- それ以外の場合、ゼロ動きベクトルが初期化MVとして使用される。
第2ステップは、現在CUを複数のサブCUに分割し、コロケートピクチャ内の各サブCUに対応するブロックから各サブCUの動き情報を取得するというものである。
8.5.2.12 コロケート動きベクトルの導出プロセス
このプロセスへの入力は以下である:
- 現在符号化ブロックを規定する変数currCb;
- ColPicによって規定されるコロケートピクチャの内側のコロケート符号化ブロックを規定する変数colCb;
- colCbによって規定されるコロケート符号化ブロックの左上サンプルを、ColPicによって規定されるコロケートピクチャの左上ルマサンプルに対して規定するルマ位置(xColCb,yColCb);
- 0又は1であるXでの参照インデックスrefIdxLX;
- サブブロック時間マージ候補を指し示すフラグsbFlag。
- 1/16分数サンプル精度での動きベクトル予測mvLXCol;
- 利用可能性フラグavailableFlagLXCol。
- colCbがイントラ又はIBC予測モードで符号化される場合、mvLXColの両方のコンポーネントが0に等しく設定され、availableFlagLXColが0に等しく設定される;
- それ以外の場合、動きベクトルmvCol、参照インデックスrefIdxCol、及び参照リスト識別子listColが、次のように導出される:
- sbFlagが0に等しい場合、availableFlagLXColが1に設定されて、以下が適用される:
- predFlagL0Col[xColCb][yColCb]が0に等しい場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvL1Col[xColCb][yColCb]、refIdxL1Col[xColCb][yColCb]、及びL1に等しく設定される;
- そうでなく、predFlagL0Col[xColCb][yColCb]が1に等しく且つpredFlagL1Col[xColCb][yColCb]が0に等しい場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvL0Col[xColCb][yColCb]、refIdxL0Col[xColCb][yColCb]、及びL0に等しく設定される;
- それ以外の場合(predFlagL0Col[xColCb][yColCb]が1に等しく且つpredFlagL1Col[xColCb][yColCb]が1に等しい)、以下の割り当てが行われる:
- NoBackwardPredFlagが1に等しい場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvLXCol[xColCb][yColCb]、refIdxLXCol[xColCb][yColCb]、及びLXに等しく設定される;
- それ以外の場合、mvCol、refIdxCol、及びlistColが、それぞれ、mvLNCol[xColCb][yColCb]、refIdxLNCol[xColCb][yColCb]、及びLNに等しく設定され、Nはcollocated_from_l0_flagの値である;
(外1)
- availableFlagLXColがTRUEに等しいとき、mvLXCol及びavailableFlagLXColが、次のように導出される:
- LongTermRefPic(currPic,currCb,refIdxLX,LX)がLongTermRefPic(ColPic,colCb,refIdxCol,listCol)に等しくない場合、mvLXColの両方のコンポーネントが0に等しく設定され、availableFlagLXColが0に等しく設定される;
- それ以外の場合、変数availableFlagLXColが1に等しく設定され、refPicList[listCol][refIdxCol]が、ColPicによって規定されるコロケートピクチャ内の符号化ブロックcolCbを含むスライスの参照ピクチャリストlistCol内の参照インデックスrefIdxColを有するピクチャであるように設定され、以下が適用される:
colPocDiff=DiffPicOrderCnt(ColPic,refPicList[listCol][refIdxCol])
(8-402)
currPocDiff=DiffPicOrderCnt(currPic,RefPicList[X][refIdxLX])
(8-403)
- 第8.5.2.15節に規定されるコロケート動きベクトルに対する時間動きバッファ圧縮プロセスが、mvColを入力とし、変更されたmvColを出力として呼び出される;
- RefPicList[X][refIdxLX]が長期参照ピクチャである、又はcolPocDiffがcurrPocDiffに等しい場合、mvLXColが、次のように導出される:
mvLXCol=mvCol (8-404)
- それ以外の場合、次のように、mvLXColが、動きベクトルmvColのスケーリングされたバージョンとして導出され:
tx=(16384+(Abs(td)>>1))/td (8-405)
distScaleFactor=Clip3(-4096,4095,(tb*tx+32)>>6) (8-406)
mvLXCol=Clip3(-131072,131071,(distScaleFactor*mvCol+
128-(distScaleFactor*mvCol>=0))>>8)) (8-407)
ここで、td及びtbは、次のように導出される:
td=Clip3(-128,127,colPocDiff) (8-408)
tb=Clip3(-128,127,currPocDiff) (8-409)
2.2.8.1 AMVP動き候補リスト
HEVCにおけるAMVP設計と同様に、最大2つのAMVP候補が導出され得る。しかしながら、TMVP候補の後にHMVP候補も追加され得る。HMVPテーブル内のHMVP候補は、インデックスの昇順に(すなわち、最も古いものである0に等しいインデックスから)検討される。その参照ピクチャがターゲット参照ピクチャと同じ(すなわち、同じPOC値)であるかを見出すために、最大4つのHMVP候補が検査され得る。
HEVCでは、スライスヘッダ内でuse_integer_mv_flagが0に等しい場合に、(動きベクトルとPUの予測動きベクトルとの間の)動きベクトル差(MVD)が、1/4ルマサンプルの単位で信号伝達される。VVCでは、局所適応動きベクトルレゾリューション(locally adaptive motion vector resolution;AMVR)が導入されている。VVCにおいて、MVDは、1/4ルマサンプル、整数ルマサンプル、4ルマサンプル(すなわち、1/4ペル、1ペル、4ペル)の単位で符号化されることができる。このMVD分解能は、符号化ユニット(CU)レベルで制御され、MVD分解能フラグが、少なくとも1つの非ゼロのMVD成分を持つ各CUに対して条件付きで信号伝達される。
JVET-N1001-v2では、双予測における動き情報コーディングに対称動きベクトル差(SMVD)が適用される。
2.2.9.1 デコーダ側動きベクトル精緻化(DMVR)
双予測演算では、1つのブロック領域の予測のために、list0の動きベクトル(MV)とlist1のMVとを用いて形成される2つの予測ブロックが結合されて単一の予測信号を形成する。デコーダ側動きベクトル精緻化(decoder-side motion vector refinement;DMVR)法においては、双予測の二つの動きベクトルが更に精緻化される。
MvdX=-1;
MvdY=-1;
If(Sad(1,0)<Sad(-1,0))
MvdX=1;
If(Sad(0,1)<Sad(0,-1))
MvdY=1;
・ list0とlist1の間の(0,0)位置SADが閾値よりも小さいときの早期終了;
・ list0とlist1との間のSADが何らかの位置でゼロであるときの早期終了;
・ W及びHはブロックの幅及び高さであるとして、DMVRに関するブロックサイズ:W*H>=64&&H>=8;
・ CUサイズ>16×16のDMVRに対してCUを複数の16×16サブブロックに分割する。CUの幅又は高さのみが16よりも大きい場合、垂直方向又は水平方向にそれのみが分割される;
・ 参照ブロックサイズ(W+7)*(H+7)(ルマに関して);
・ 25ポイントSADベース整数ペル探索(すなわち、(±)2精緻化探索範囲、単一ステージ);
・ バイリニア補間ベースのDMVR;
・ “パラメトリック誤差表面方程式”ベースのサブペル精緻化。この手順は、最小SADコストがゼロに等しくなく、且つ最良のMVDが最後のMV精緻化イテレーションにおいて(0,0)である場合にのみ実行される;
・ (必要に応じて)参照ブロックパディングありでのルマ/クロマMC;
・ MC及びTMVPのみに使用される精緻化MV。
以下の条件が全て真であるとき、DMVRが有効にされ得る:
- SPS内のDMVR有効化フラグ(すなわち、sps_dmvr_enabled_flag)が1に等しい;
- TPMフラグ、インターアフィンフラグ、サブブロックマージフラグ(ATMVP又はアフィンマージのいずれか)、MMVDフラグが全て0に等しい;
- マージフラグが1に等しい;
- 現在ブロックが双予測され、現在ピクチャとリスト1の参照ピクチャとの間のPOC距離が、リスト0の参照ピクチャと現在ピクチャとの間のPOC距離に等しい;
- 現在CUの高さが8以上である;
- ルマサンプルの数(CUの幅*高さ)が64以上である。
当該方法は、以下のようにまとめられる:
1. パラメトリック誤差表面フィッティングが、中心位置が所与のイテレーションにおいて最良のコスト位置である場合にのみ計算される;
2. 中心位置コスト、及び中心から(-1,0)、(0,-1)、(1,0)及び(0,1)の位置のコストを用いて、以下の形態:
E(x,y)=A(x-x0)2+B(y-y0)2+C
の2Dパラボリック誤差表面方程式をフィッティングし、ここで、(x0,y0)は最小コストの位置に対応し、Cは最小コスト値に対応する。5つの未知数の5つの方程式を解くことにより、(x0,y0)が:
x0=(E(-1,0)-E(1,0))/(2(E(-1,0)+E(1,0)-2E(0,0)))
y0=(E(0,-1)-E(0,1))/(2((E(0,-1)+E(0,1)-2E(0,0)))
として計算される。(x0,y0)は、除算が実行される精度(すなわち、何ビットの商が計算されるか)を調節することによって、任意の必要なサブピクセル精度まで計算されることができる。1/16ペル精度の場合、商の絶対値における4ビットだけ計算すればよく、これは、CUごとに必要とされる2回の除算の高速シフト減算ベースの実装に資する;
3. 計算された(x0,y0)を整数距離精緻化MVに加算して、サブピクセル精度のデルタMVを得る。
HEVCスクリーンコンテンツコーディング拡張(HEVC-SCC)及び現行のVVCテストモデル(VTM-4.0)にて、現在ピクチャ参照としても知られるイントラブロックコピー(IBC)が採用されている。IBCは、動き補償の概念をインターフレームコーディングからイントラフレームコーディングまで拡張する。図21に示すように、IBCが適用されるとき、現在ブロックは、同じピクチャ内の参照ブロックによって予測される。現在ブロックが符号化又は復号される前に、参照ブロック内のサンプルが既に再構成されていなければならない。IBCは、大抵のカメラキャプチャシーケンスに対してそれほど効率的ではないが、スクリーンコンテンツに対して有意な符号化利得を示す。その理由は、スクリーンコンテンツピクチャ内には例えばアイコン及びテキスト文字などの多数の繰り返しパターンが存在するからである。IBCは、それらの繰り返しパターン間の冗長性を効果的に除去することができる。HEVC-SCCでは、インター符号化される符号化ユニット(CU)がその参照ピクチャとして現在ピクチャを選択する場合に、IBCを適用することができる。この場合、MVはブロックベクトル(BV)と呼び変えられ、BVは常に整数ピクセル精度を持つ。メインプロファイルHEVCとの互換性があるように、現在ピクチャは、復号ピクチャバッファ(DPB)内で“長期”参照ピクチャとしてマークされる。なお、同様に、マルチビュー/3D映像符号化標準において、インタビュー参照ピクチャも“長期”参照ピクチャとしてマークされる。
現行のVVCテストモデル、すなわち、VTM-4.0設計では、参照ブロック全体が現在符号化ツリーユニット(CTU)であるべきであり、且つ現在ブロックと重なり合わない。従って、参照ブロック又は予測ブロックをパディングする必要はない。IBCフラグは、現在CUの予測モードとして符号化される。故に、各CUに対して、MODE_INTRA、MODE_INTER、及びMODE_IBCの3つの予測モードが存在する。
IBCマージモードでは、IBCマージ候補リスト内のエントリを指すインデックスがビットストリームから構文解析される。IBCマージリストの構築は、以下の一連の手順に従ってまとめることができる:
・ ステップ1:空間候補の導出;
・ ステップ2:HMVP候補の挿入;
・ ステップ3:ペアワイズ平均候補の挿入;
空間マージ候補の導出では、図2に示すようにA1、B1、B0、A0、及びB2に示す位置にある候補の中から最大4つのマージ候補が選択される。導出の順序はA1、B1、B0、A0、及びB2である。位置B2は、位置A1、B1、B0、A0のうちのいずれかのPUが利用可能でない(例えば、それが別のスライス又はタイルに属するため)又はIBCモードで符号化されない場合にのみ考慮される。位置A1の候補が追加された後、残りの候補の挿入は、符号化効率が向上されるように、同じ動き情報を持つ候補がリストから除外されることを確保する冗長性検査にかけられる。
IBC AMVPモードでは、IBC AMVPリスト内のエントリを指すAMVPインデックスがビットストリームから構文解析される。IBC AMVPリストの構築は、以下の一連の手順に従ってまとめることができる:
・ ステップ1:空間候補の導出;
- 利用可能な候補が見つかるまでA0、A1を検査する;
- 利用可能な候補が見つかるまでB0、B1、B2を検査する;
・ ステップ2:HMVP候補の挿入;
・ ステップ3:ゼロ候補の挿入;
空間候補の挿入後、IBC AMVPリストのサイズが依然として最大IBC AMVPリストサイズよりも小さい場合、HMVPテーブルからのIBC候補が挿入され得る。
現行VVCでは、クロマIBCモードにおける動き補償はサブブロックレベルで実行される。クロマブロックは、幾つかのサブブロックに分割されることになる。各サブブロックが、対応するルマブロックがブロックベクトルを持っているかと、それが存在する場合の有効性とを決定する。現行VTMにはエンコーダ制約があり、現在クロマCU内の全てのサブブロックが有効なルマブロックベクトルを持つ場合にクロマIBCモードがテストされることになる。例えば、YUV 420映像で、クロマブロックはN×Mであり、コロケートのルマ領域は2N×2Mである。クロマブロックのサブブロックサイズは2×2である。クロマmv導出、そしてブロックコピープロセスを実行するための幾つかのステップが存在する:
1)先ず、クロマブロックが(N>>1)*(M>>1)サブブロックに分割される;
2)左上サンプルの座標を(x,y)とする各サブブロックが、座標を(2x,2y)とする同じ左上サンプルをカバーする対応するルマブロックをフェッチする;
3)エンコーダが、フェッチされたルマブロックのブロックベクトル(bv)を検査する。以下の条件のうちの1つが満たされる場合、そのbvは無効とみなされる:
a. 対応するルマブロックのbvが存在しない;
b. bvによって特定される予測ブロックが未だ再構築されていない;
c. bvによって特定される予測ブロックが現在ブロックと部分的又は完全に重なっている;
4)サブブロックのクロマ動きベクトルが、対応するルマサブブロックの動きベクトルに設定される。
JVET-N0843がVVCに採用されている。JVET-N0843では、IBCにおけるマージモード及びAMVPモード向けのBV予測子は、以下の要素で構成されるものである共通の予測子リストを共有する:
・ 2つの空間隣接位置(図2においてのようなA1、B1);
・ 5つのHMVPエントリ;
・ デフォルトのゼロベクトル。
マージモードの現行設計は以下の問題を有し得る:
1. 通常マージリスト構築プロセスが、現在ブロックに対するTPMの使用に依存する:
a. TPM符号化ブロックでは、空間マージ候補の間で完全剪定が適用される;
b. 非TPM符号化ブロックでは、空間マージ候補の間で部分的剪定が適用される;
2. 現行設計によれば、全てのマージ関連ツール(IBCマージ、通常マージ、MMVD、サブブロックマージ、CIIP、TPMを含む)が、general_merge_flagという名称の1つのフラグによって信号伝達される。しかしながら、このフラグが真であるときに、全てのマージ関連ツールが無効にされるように信号伝達されたり導出されることになったりすることが可能になってしまっている。この場合にどのように対処するのか知れていない。また、マージモードをオフにすることは許されず、すなわち、マージ候補の最大数が0に等しくないものとされている。しかしながら、高スループットのエンコーダ/デコーダでは、マージモードを強制的に無効にすることを必要とすることがある;
3. ATMVPプロセスでの初期化MVの決定が、スライスタイプ、全ての参照ピクチャのPOC値、collocated_from_l0_flagなどに依存し、そのことがMVのスループットを遅らせる;
4. コロケートMVの導出プロセスが、例えば追加ロジックを必要とする従来のTMVPプロセス又はATMVPプロセスなどの、サブブロック技術の使用に依存する;
5. ATMVP符号化ブロック内のサブCUについて、たとえそれに対応するコロケートブロックがインター符号化されても、そのサブCUの動き情報が、対応するコロケートブロックから導出されずに、他の動き情報で充たされることが可能になってしまっている。このような設計は、符号化効率及びスループットの両方にとって次善的である。
以下の詳細な列挙は、一般的概念を説明するための例とみなされるべきである。これらの実施形態は狭義に解釈されるべきではない。さらに、これらの技術は、任意のやり方で組み合わされることができる。例えば、この文書で説明される実施形態は、現在映像ブロックが少なくとも2つの非矩形サブブロックに分割される幾何学的パーティションモード(GPM)に適用可能である。非矩形ブロックは、矩形以外の任意の幾何学的形状のものとすることができる。例えば、GPMは、第1の映像ブロックを、動き予測を別々に適用する複数の予測パーティションに分けることを有し、少なくとも1つのパーティションが、非矩形の形状を持つ。また、ここでの実施形態は、代替時間動きベクトル予測コーディング(ATMVP)の例を用いて説明されるが、一部の実施形態において、サブブロックベース時間動きベクトル予測子コーディング(SbTMVP)も適用可能である。
1. 従来のマージ及びTPM符号化ブロック向けの通常マージリスト構築プロセスが、現在ブロックの符号化方法から切り離される:
a. 一例において、1つのブロックにTPMが適用されるときに、部分的剪定が空間マージ候補に適用される:
i. 一例において、2つの候補が互いに比較されるかが、非TPMマージ符号化ブロックに使用されるのと同じやり方で決定される;
ii. 一例において、B1がA1と比較され、B0がB1と比較され、A0がA1と比較され、B2がB1及びA1と比較される;
iii. あるいは、1つのブロックにTPMが使用されなくても、完全剪定が空間マージ候補に適用される;
iv. あるいは、さらに、一部の特定のブロック寸法に対して完全剪定が適用されてもよい:
1. 例えば、TPMが許容されるブロック寸法に対して完全剪定が適用され得る;
2. 例えば、ブロックサイズが、例えば16又は32又は64ルマサンプルといった、M*H未満のサンプルを含むとき、完全剪定は許可されない;
3. 例えば、ブロックの幅>th1又は>=th1であり、且つ/或いはブロックの高さ>th2又は>=th2である場合、完全剪定は許可されない;
b. 一例において、B2を検査するかは、1つのブロックにTPMが適用されるときにB2を検査する前の利用可能なマージ候補の数に基づく:
i. あるいは、非TPMマージ符号化ブロックに対して利用可能なマージ候補の数にかかわらず、B2は常に検査される;
2. ATMVPが利用可能であるか否かを決定するためにブロックを特定するのに使用される初期化MVが、単に、空間隣接ブロック(例えば、A1)のリストX情報を当てにすることができ、Xは、時間動きベクトル予測のために使用されるコロケートピクチャがそこから導出されるところに設定される(例えば、collocated_from_l0_flag):
a. あるいは、Xは、全ての参照リスト内の全ての参照ピクチャ内が、現在ピクチャと比較して小さいPOC値又はそれ以下のPOC値を持つかに従って決定される:
i. 一例において、それが真である場合、Xは1に設定される。そうでない場合、Xは0に設定される;
b. あるいは、空間隣接ブロック(例えば、A1)のリストXに関連する参照ピクチャが利用可能であり、且つコロケートピクチャと同じPOC値を持つ場合、初期化MVは、その空間隣接ブロックのリストXに関連するMVに設定される。そうでない場合、デフォルトMV(例えば(0,0))が利用される;
c. あるいは、HMVPテーブルに格納された動き情報が、ATMVPにおける初期化MVとして使用されてもよい:
i. 例えば、HMVPテーブルに格納された最初の利用可能な動き情報が使用され得る;
ii. 例えば、特定の参照ピクチャ(例えば、コロケートピクチャ)に関連付けられた、HMVPテーブルに格納された最初の利用可能な動き情報が使用され得る;
d. あるいは、Xは例えば0又は1などの固定数である;
3. サブブロックベース符号化ツール及び非サブブロックベース符号化ツールに使用されるコロケートMVの導出プロセスを揃えることができ、すなわち、特定の符号化ツールの使用からプロセスが独立になる:
a. 一例において、サブブロックベース符号化ツール向けのコロケートMVの導出プロセスの全体又は一部が、TMVPに使用されるものに揃えられる:
i. 一例において、それがリストYからの片予測である場合、リストYの動きベクトルがターゲット参照ピクチャリストXにスケーリングされる;
ii. 一例において、それが双予測であり且つターゲット参照ピクチャリストがXである場合、リストYの動きベクトルがターゲット参照ピクチャリストXにスケーリングされ、Yは以下のルールに従って決定され得る:
- 参照ピクチャのいずれもが、現在ピクチャと比較して大きいPOCを持たない場合、又は全ての参照ピクチャが、現在ピクチャと比較して小さいPOC値を持つ場合、YはXに等しく設定される;
- それ以外の場合、Yはcollocated_from_l0_flagに等しく設定される;
b. 一例において、TMVP向けのコロケートMVの導出プロセスの全体又は一部が、サブブロックベース符号化ツールに使用されるものに揃えられる;
4. 動き候補リスト構築プロセス(例えば、通常マージリスト、IBCマージ/AMVPリスト)が、ブロック寸法及び/又はマージ共有条件に依存し得る。ブロックの幅及び高さをそれぞれW及びと表記する。条件Cは、WとH及び/又はマージ共有条件に依存し得る:
a. 一例において、条件Cが満たされる場合、空間マージ候補の導出がスキップされる;
b. 一例において、条件Cが満たされる場合、HMVP候補の導出がスキップされる;
c. 一例において、条件Cが満たされる場合、ペアワイズマージ候補の導出がスキップされる;
d. 一例において、条件Cが満たされる場合、最大剪定処理回数が減らされ又は0に設定される;
e. 一例において、条件Cは、W*Hが閾値(例えば、64又は32)よりも小さい又はそれ以下であるときに満たされる;
f. 一例において、条件Cは、W及び/又はHが閾値(例えば、4又は8)よりも小さい又はそれ以下であるときに満たされる;
g. 一例において、条件Cは、現在ブロックが共有ノードの下にあるときに満たされる;
5. 許容される通常マージ候補の最大数/許容されるIBC候補の最大数/許容されるサブブロックマージ候補の最大数を0に設定することができる。従って、特定のツールを無効にすることができ、関連する構文要素を信号伝達する必要がない:
a. 一例において、許容される通常マージ候補の最大数が0に等しいとき、通常マージリストを当てにする符号化ツールが無効にされ得る。該符号化ツールは、通常マージ、MMVD、CIIP、TPM、DMVRなどとし得る;
b. 一例において、許容されるIBC候補の最大数が0に等しいとき、IBC AMVP及び/又はIBCマージが無効にされ得る;
c. 一例において、許容されるサブブロックベースマージ候補の最大数が0に等しいとき、例えばATMVP、アフィンマージモードといったサブブロックベース技術あ無効にされ得る;
d. 許容される候補の最大数に従ってツールが無効にされるとき、関連する構文要素の信号伝達はスキップされる:
i. あるいは、さらに、マージ関連ツールの信号伝達は、許容される候補の最大数が0に等しくないかを検査する必要があるとし得る;
ii. あるいは、さらに、マージ関連ツールに関するプロセスの呼び出しは、許容される候補の最大数が0に等しくないかを検査する必要があるとし得る;
6. general_merge_flag及び/又はcu_skip_flagの信号伝達が、許容される通常のマージ候補の最大数/許容されるIBC候補の最大数/許容されるサブブロックマージ候補の最大数/マージ関連の符号化ツールの使用に依存することができる:
a. 一例において、マージ関連の符号化ツールは、IBCマージ、通常マージ、MMVD、サブブロックマージ、CIIP、TPM、DMVRなどを含み得る;
b. 一例において、許容される通常マージ候補の最大数、許容されるIBCマージ/AMVP候補の最大数、許容されるサブブロックマージ候補の最大数が0に等しいとき、general_merge_flag及び/又はcu_skip_flagは信号伝達されない:
i. あるいは、さらに、general_merge_flag及び/又はcu_skip_flagは0であると推定される;
7. 適合ビットストリームは、現在ブロックのgeneral_merge_flag又はcu_skip_flagが真であるときに、IBCマージ、通常マージ、MMVD、サブブロックマージ、CIIP、TPM、DMVRなどを含むのマージ関連ツールのうちの少なくとも1つが有効にされることを満足するものとする;
8. 適合ビットストリームは、現在ブロックの(general_merge_flag又はcu_skip_flag)が真であり、且つ1つのスライス/タイル/ブリック/ピクチャ/現在ブロックに対してIBCが無効にされるときに、通常マージ、MMVD、サブブロックマージ、CIIP、TPM、DMVRなどを含むマージ関連ツールのうちの少なくとも1つが有効にされることを満足するものとする;
9. 適合ビットストリームは、現在ブロックの(general_merge_flag又はcu_skip_flag)が真であり、且つ1つのスライス/タイル/ブリック/ピクチャ/現在ブロックに対してMMVDが無効にされるときに、IBCマージ、通常マージ、サブブロックマージ、CIIP、TPMを含むマージ関連ツールのうちの少なくとも1つが有効にされることを満足するものとする;
10. 適合ビットストリームは、現在ブロックの(general_merge_flag又はcu_skip_flag)が真であり、且つ1つのスライス/タイル/ブリック/ピクチャ/現在ブロックに対してCIIPが無効にされるときに、IBCマージ、通常マージ、MMVD、サブブロックマージ、TPMを含むマージ関連ツールのうちの少なくとも1つが有効にされることを満足するものとする;
11. 適合ビットストリームは、現在ブロックの(general_merge_flag又はcu_skip_flag)が真であり、且つ1つのスライス/タイル/ブリック/ピクチャ/現在ブロックに対してTPMが無効にされるときに、IBCマージ、通常マージ、MMVD、サブブロックマージ、CIIPを含むマージ関連ツールのうちの少なくとも1つが有効にされることを満足するものとする;
12. 適合ビットストリームは、現在ブロックのgeneral_merge_flag又はcu_skip_flagが真であるときに、IBCマージ、通常マージ、MMVD、サブブロックマージ、CIIP、TPMを含む有効にされたマージ関連ツールのうちの少なくとも1つが適用されることを満足するものとする。第1ブロックを符号化するとき、第2ブロックの利用可能性の検査は、第1ブロックの符号化モード情報に依存することができ、例えば、第1ブロックと第2ブロックとに異なるモードが使用される場合、第2ブロックは、他条件の検査結果(例えば、構築済みである)にかかわらず、利用不可として扱われてもよい:
a. 一例において、第1ブロックがインター符号化され、第2ブロックがIBC符号化される場合、第2ブロックは利用不可としてマークされる;
b. 一例において、第1ブロックがIBC符号化され、第2ブロックがインター符号化される場合、第2ブロックは利用不可としてマークされる;
c. 第2ブロックが利用不可としてマークされるとき、関連する符号化情報(例えば、動き情報)は、第1ブロックを符号化するのに利用されることが許されない。
最新のVVC作業草案(JVET-N1001_v7)に加えて提案する変更が、以下に与えられる。削除されるテキストを、太字の大文字にしたフォントでマークする。新たに追加される部分を、太字の下線付きの斜体フォントで強調する。
この実施形態は、非TPM符号化ブロックに対する剪定プロセスを、TPM符号化ブロックに対する剪定プロセスに揃える、すなわち、非TPM符号化ブロックに対して完全剪定操作とするものである。
このプロセスへの入力は以下である:
- 現在ピクチャの左上ルマサンプルに対する現在ルマ符号化ブロックの左上サンプルのルマ位置(xCb,yCb);
- ルマサンプル内の現在符号化ブロックの幅を規定する変数cbWidth;
- ルマサンプル内の現在符号化ブロックの高さを規定する変数cbHeight。
- 隣接符号化ユニットの利用可能性フラグavailableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1、及びavailableFlagB2;
- 隣接符号化ユニットの参照インデックスrefIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1、及びrefIdxLXB2;
- 隣接符号化ユニットの予測リスト利用フラグpredFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1、及びpredFlagLXB2;
- 隣接符号化ユニットの1/16分数サンプル精度での動きベクトルmvLXA0、mvLXA1、mvLXB0、mvLXB1、及びmvLXB2;
- 双予測重みインデックスgbiIdxA0、gbiIdxA1、gbiIdxB0、gbiIdxB1、及びgbiIdxB2。
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA1,yNbA1)が(xCb-1,yCb+cbHeight-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA1,yNbA1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA1に割り当てられる;
- 変数availableFlagA1、refIdxLXA1、predFlagLXA1、及びmvLXA1が、次のように導出される:
- availableA1がFALSEに等しい場合、0又は1であるXで、availableFlagA1が0に等しく設定され、mvLXA1の両方のコンポーネントが0に等しく設定され、refIdxLXA1が-1に等しく設定され、predFlagLXA1が0に等しく設定され、そして、gbiIdxA1が0に等しく設定される;
- それ以外の場合、availableFlagA1は1に等しく設定されて、以下の割り当てが行われる:
mvLXA1=MvLX[xNbA1][yNbA1] (8-294)
refIdxLXA1=RefIdxLX[xNbA1][yNbA1] (8-295)
predFlagLXA1=PredFlagLX[xNbA1][yNbA1] (8-296)
gbiIdxA1=GbiIdx[xNbA1][yNbA1] (8-297)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB1,yNbB1)が(xCb+cbWidth-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB1,yNbB1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB1に割り当てられる;
- 変数availableFlagB1、refIdxLXB1、predFlagLXB1、及びmvLXB1が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB1が0に等しく設定され、mvLXB1の両方のコンポーネントが0に等しく設定され、refIdxLXB1が-1に等しく設定され、predFlagLXB1が0に等しく設定され、そして、gbiIdxB1が0に等しく設定される;
- availableB1がFALSEに等しい;
- availableA1がTRUEに等しく、且つルマ位置(xNbA1,yNbA1)及び(xNbB1,yNbB1)が同じ動きベクトル及び同じ参照インデックスを持つ;
- それ以外の場合、availableFlagB1は1に等しく設定されて、以下の割り当てが行われる:
mvLXB1=MvLX[xNbB1][yNbB1] (8-298)
refIdxLXB1=RefIdxLX[xNbB1][yNbB1] (8-299)
predFlagLXB1=PredFlagLX[xNbB1][yNbB1] (8-300)
gbiIdxB1=GbiIdx[xNbB1][yNbB1] (8-301)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB0,yNbB0)が(xCb+cbWidth,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB0,yNbB0)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB0に割り当てられる;
- 変数availableFlagB0、refIdxLXB0、predFlagLXB0、及びmvLXB0が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB0が0に等しく設定され、mvLXB0の両方のコンポーネントが0に等しく設定され、refIdxLXB0が-1に等しく設定され、predFlagLXB0が0に等しく設定され、そして、gbiIdxB0が0に等しく設定される;
(外2)
- それ以外の場合、availableFlagB0は1に等しく設定されて、以下の割り当てが行われる:
mvLXB0=MvLX[xNbB0][yNbB0] (8-302)
refIdxLXB0=RefIdxLX[xNbB0][yNbB0] (8-303)
predFlagLXB0=PredFlagLX[xNbB0][yNbB0] (8-304)
gbiIdxB0=GbiIdx[xNbB0][yNbB0] (8-305)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA0,yNbA0)が(xCb-1,yCb+cbWidth)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA0,yNbA0)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA0に割り当てられる;
- 変数availableFlagA0、refIdxLXA0、predFlagLXA0、及びmvLXA0が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagA0が0に等しく設定され、mvLXA0の両方のコンポーネントが0に等しく設定され、refIdxLXA0が-1に等しく設定され、predFlagLXA0が0に等しく設定され、そして、gbiIdxA0が0に等しく設定される;
(外3)
- それ以外の場合、availableFlagA0は1に等しく設定されて、以下の割り当てが行われる:
mvLXA0=MvLX[xNbA0][yNbA0] (8-306)
refIdxLXA0=RefIdxLX[xNbA0][yNbA0] (8-307)
predFlagLXA0=PredFlagLX[xNbA0][yNbA0] (8-308)
gbiIdxA0=GbiIdx[xNbA0][yNbA0] (8-309)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB2,yNbB2)が(xCb-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB2,yNbB2)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB2に割り当てられる;
- 変数availableFlagB2、refIdxLXB2、predFlagLXB2、及びmvLXB2が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB2が0に等しく設定され、mvLXB2の両方のコンポーネントが0に等しく設定され、refIdxLXB2が-1に等しく設定され、predFlagLXB2が0に等しく設定され、そして、gbiIdxB2が0に等しく設定される;
(外4)
- それ以外の場合、availableFlagB2は1に等しく設定されて、以下の割り当てが行われる:
mvLXB2=MvLX[xNbB2][yNbB2] (8-310)
refIdxLXB2=RefIdxLX[xNbB2][yNbB2] (8-311)
predFlagLXB2=PredFlagLX[xNbB2][yNbB2] (8-312)
gbiIdxB2=GbiIdx[xNbB2][yNbB2] (8-313)
この実施形態は、TPM符号化ブロックに対する剪定プロセスを、非TPM符号化ブロックに対する剪定プロセスに揃える、すなわち、TPM符号化ブロックに対して限られた剪定操作とするものである。
このプロセスへの入力は以下である:
- 現在ピクチャの左上ルマサンプルに対する現在ルマ符号化ブロックの左上サンプルのルマ位置(xCb,yCb);
- ルマサンプル内の現在符号化ブロックの幅を規定する変数cbWidth;
- ルマサンプル内の現在符号化ブロックの高さを規定する変数cbHeight。
- 隣接符号化ユニットの利用可能性フラグavailableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1、及びavailableFlagB2;
- 隣接符号化ユニットの参照インデックスrefIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1、及びrefIdxLXB2;
- 隣接符号化ユニットの予測リスト利用フラグpredFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1、及びpredFlagLXB2;
- 隣接符号化ユニットの1/16分数サンプル精度での動きベクトルmvLXA0、mvLXA1、mvLXB0、mvLXB1、及びmvLXB2;
- 双予測重みインデックスgbiIdxA0、gbiIdxA1、gbiIdxB0、gbiIdxB1、及びgbiIdxB2。
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA1,yNbA1)が(xCb-1,yCb+cbHeight-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA1,yNbA1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA1に割り当てられる;
- 変数availableFlagA1、refIdxLXA1、predFlagLXA1、及びmvLXA1が、次のように導出される:
- availableA1がFALSEに等しい場合、0又は1であるXで、availableFlagA1が0に等しく設定され、mvLXA1の両方のコンポーネントが0に等しく設定され、refIdxLXA1が-1に等しく設定され、predFlagLXA1が0に等しく設定され、そして、gbiIdxA1が0に等しく設定される;
- それ以外の場合、availableFlagA1は1に等しく設定されて、以下の割り当てが行われる:
mvLXA1=MvLX[xNbA1][yNbA1] (8-294)
refIdxLXA1=RefIdxLX[xNbA1][yNbA1] (8-295)
predFlagLXA1=PredFlagLX[xNbA1][yNbA1] (8-296)
gbiIdxA1=GbiIdx[xNbA1][yNbA1] (8-297)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB1,yNbB1)が(xCb+cbWidth-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB1,yNbB1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB1に割り当てられる;
- 変数availableFlagB1、refIdxLXB1、predFlagLXB1、及びmvLXB1が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB1が0に等しく設定され、mvLXB1の両方のコンポーネントが0に等しく設定され、refIdxLXB1が-1に等しく設定され、predFlagLXB1が0に等しく設定され、そして、gbiIdxB1が0に等しく設定される;
- availableB1がFALSEに等しい;
- availableA1がTRUEに等しく、且つルマ位置(xNbA1,yNbA1)及び(xNbB1,yNbB1)が同じ動きベクトル及び同じ参照インデックスを持つ;
- それ以外の場合、availableFlagB1は1に等しく設定されて、以下の割り当てが行われる:
mvLXB1=MvLX[xNbB1][yNbB1] (8-298)
refIdxLXB1=RefIdxLX[xNbB1][yNbB1] (8-299)
predFlagLXB1=PredFlagLX[xNbB1][yNbB1] (8-300)
gbiIdxB1=GbiIdx[xNbB1][yNbB1] (8-301)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB0,yNbB0)が(xCb+cbWidth,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB0,yNbB0)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB0に割り当てられる;
- 変数availableFlagB0、refIdxLXB0、predFlagLXB0、及びmvLXB0が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB0が0に等しく設定され、mvLXB0の両方のコンポーネントが0に等しく設定され、refIdxLXB0が-1に等しく設定され、predFlagLXB0が0に等しく設定され、そして、gbiIdxB0が0に等しく設定される;
(外5)
- それ以外の場合、availableFlagB0は1に等しく設定されて、以下の割り当てが行われる:
mvLXB0=MvLX[xNbB0][yNbB0] (8-302)
refIdxLXB0=RefIdxLX[xNbB0][yNbB0] (8-303)
predFlagLXB0=PredFlagLX[xNbB0][yNbB0] (8-304)
gbiIdxB0=GbiIdx[xNbB0][yNbB0] (8-305)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA0,yNbA0)が(xCb-1,yCb+cbWidth)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA0,yNbA0)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA0に割り当てられる;
- 変数availableFlagA0、refIdxLXA0、predFlagLXA0、及びmvLXA0が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagA0が0に等しく設定され、mvLXA0の両方のコンポーネントが0に等しく設定され、refIdxLXA0が-1に等しく設定され、predFlagLXA0が0に等しく設定され、そして、gbiIdxA0が0に等しく設定される;
(外6)
- それ以外の場合、availableFlagA0は1に等しく設定されて、以下の割り当てが行われる:
mvLXA0=MvLX[xNbA0][yNbA0] (8-306)
refIdxLXA0=RefIdxLX[xNbA0][yNbA0] (8-307)
predFlagLXA0=PredFlagLX[xNbA0][yNbA0] (8-308)
gbiIdxA0=GbiIdx[xNbA0][yNbA0] (8-309)
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB2,yNbB2)が(xCb-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB2,yNbB2)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB2に割り当てられる;
- 変数availableFlagB2、refIdxLXB2、predFlagLXB2、及びmvLXB2が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB2が0に等しく設定され、mvLXB2の両方のコンポーネントが0に等しく設定され、refIdxLXB2が-1に等しく設定され、predFlagLXB2が0に等しく設定され、そして、gbiIdxB2が0に等しく設定される;
(外7)
- それ以外の場合、availableFlagB2は1に等しく設定されて、以下の割り当てが行われる:
mvLXB2=MvLX[xNbB2][yNbB2] (8-310)
refIdxLXB2=RefIdxLX[xNbB2][yNbB2] (8-311)
predFlagLXB2=PredFlagLX[xNbB2][yNbB2] (8-312)
gbiIdxB2=GbiIdx[xNbB2][yNbB2] (8-313)
この実施形態は、B2の検査を呼び出すための条件を揃えるものである。
このプロセスへの入力は以下である:
- 現在ピクチャの左上ルマサンプルに対する現在ルマ符号化ブロックの左上サンプルのルマ位置(xCb,yCb);
- ルマサンプル内の現在符号化ブロックの幅を規定する変数cbWidth;
- ルマサンプル内の現在符号化ブロックの高さを規定する変数cbHeight。
- 隣接符号化ユニットの利用可能性フラグavailableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1、及びavailableFlagB2;
- 隣接符号化ユニットの参照インデックスrefIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1、及びrefIdxLXB2;
- 隣接符号化ユニットの予測リスト利用フラグpredFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1、及びpredFlagLXB2;
- 隣接符号化ユニットの1/16分数サンプル精度での動きベクトルmvLXA0、mvLXA1、mvLXB0、mvLXB1、及びmvLXB2;
- 双予測重みインデックスgbiIdxA0、gbiIdxA1、gbiIdxB0、gbiIdxB1、及びgbiIdxB2。
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA1,yNbA1)が(xCb-1,yCb+cbHeight-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA1,yNbA1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA1に割り当てられる;
- 変数availableFlagA1、refIdxLXA1、predFlagLXA1、及びmvLXA1が、次のように導出される:
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB1,yNbB1)が(xCb+cbWidth-1,yCb-1)に等しく設定される;
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB0,yNbB0)が(xCb+cbWidth,yCb-1)に等しく設定される;
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA0,yNbA0)が(xCb-1,yCb+cbWidth)に等しく設定される;
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB2,yNbB2)が(xCb-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB2,yNbB2)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB2に割り当てられる;
- 変数availableFlagB2、refIdxLXB2、predFlagLXB2、及びmvLXB2が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB2が0に等しく設定され、mvLXB2の両方のコンポーネントが0に等しく設定され、refIdxLXB2が-1に等しく設定され、predFlagLXB2が0に等しく設定され、そして、gbiIdxB2が0に等しく設定される;
(外8)
- それ以外の場合、availableFlagB2は1に等しく設定されて、以下の割り当てが行われる:
mvLXB2=MvLX[xNbB2][yNbB2] (8-310)
refIdxLXB2=RefIdxLX[xNbB2][yNbB2] (8-311)
predFlagLXB2=PredFlagLX[xNbB2][yNbB2] (8-312)
gbiIdxB2=GbiIdx[xNbB2][yNbB2] (8-313)
この実施形態は、B2の検査を呼び出すための条件を揃えるものである。
このプロセスへの入力は以下である:
- 現在ピクチャの左上ルマサンプルに対する現在ルマ符号化ブロックの左上サンプルのルマ位置(xCb,yCb);
- ルマサンプル内の現在符号化ブロックの幅を規定する変数cbWidth;
- ルマサンプル内の現在符号化ブロックの高さを規定する変数cbHeight。
- 隣接符号化ユニットの利用可能性フラグavailableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1、及びavailableFlagB2;
- 隣接符号化ユニットの参照インデックスrefIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1、及びrefIdxLXB2;
- 隣接符号化ユニットの予測リスト利用フラグpredFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1、及びpredFlagLXB2;
- 隣接符号化ユニットの1/16分数サンプル精度での動きベクトルmvLXA0、mvLXA1、mvLXB0、mvLXB1、及びmvLXB2;
- 双予測重みインデックスgbiIdxA0、gbiIdxA1、gbiIdxB0、gbiIdxB1、及びgbiIdxB2。
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA1,yNbA1)が(xCb-1,yCb+cbHeight-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbA1,yNbA1)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableA1に割り当てられる;
- 変数availableFlagA1、refIdxLXA1、predFlagLXA1、及びmvLXA1が、次のように導出される:
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB1,yNbB1)が(xCb+cbWidth-1,yCb-1)に等しく設定される;
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB0,yNbB0)が(xCb+cbWidth,yCb-1)に等しく設定される;
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbA0,yNbA0)が(xCb-1,yCb+cbWidth)に等しく設定される;
...
- 隣接ルマ符号化ブロックの内側のルマ位置(xNbB2,yNbB2)が(xCb-1,yCb-1)に等しく設定される;
- 第6.4.X項[Ed.(BB):Neighbouring blocks availability checking process tbd]に規定されるブロックの利用可能性導出プロセスが、(xCb,yCb)に等しく設定される現在ルマ位置(xCurr,yCurr)及び隣接ルマ位置(xNbB2,yNbB2)を入力として呼び出され、その出力が、ブロック利用可能性フラグavailableB2に割り当てられる;
- 変数availableFlagB2、refIdxLXB2、predFlagLXB2、及びmvLXB2が、次のように導出される:
- 以下の条件のうちの1つ以上が真である場合、0又は1であるXで、availableFlagB2が0に等しく設定され、mvLXB2の両方のコンポーネントが0に等しく設定され、refIdxLXB2が-1に等しく設定され、predFlagLXB2が0に等しく設定され、そして、gbiIdxB2が0に等しく設定される;
(外9)
- それ以外の場合、availableFlagB2は1に等しく設定されて、以下の割り当てが行われる:
mvLXB2=MvLX[xNbB2][yNbB2] (8-310)
refIdxLXB2=RefIdxLX[xNbB2][yNbB2] (8-311)
predFlagLXB2=PredFlagLX[xNbB2][yNbB2] (8-312)
gbiIdxB2=GbiIdx[xNbB2][yNbB2] (8-313)
この実施形態は、ATMVPプロセスにおける初期化MVの決定を単純化するものである。
このプロセスへの入力は以下である:
- 現在符号化ブロックを含むルマ符号化ツリーブロックの左上サンプルの位置(xCtb,yCtb);
- 右下の中央サンプルをカバーするコロケートルマ符号化ブロックの左上サンプルの位置(xColCtrCb,yColCtrCb);
- 隣接符号化ユニットの利用可能性フラグavailableFlagA1;
- 隣接符号化ユニットの参照インデックスrefIdxLXA1;
- 隣接符号化ユニットの予測リスト利用フラグpredFlagLXA1;
- 隣接符号化ユニットの1/16分数サンプル精度での動きベクトルmvLXA1。
- 動きベクトルctrMvL0及びctrMvL1;
- 予測リスト利用フラグctrPredFlagL0及びctrPredFlagL1;
- 時間動きベクトルtempMv。
tempMv[0]=0 (8-529)
tempMv[1]=0 (8-530)
変数currPicは現在ピクチャを規定する。
xColCb=Clip3(xCtb,
Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),
xColCtrCb+(tempMv[0]>>4)) (8-531)
yColCb=Clip3(yCtb,
Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),
yColCtrCb+(tempMv[1]>>4)) (8-532)
...
サブブロックベースの方法及び非サブブロックベースの方法でコロケートMVの導出プロセスを揃えることの例。
このプロセスへの入力は以下である:
- 現在符号化ブロックを規定する変数currCb;
- ColPicによって規定されるコロケートピクチャの内側のコロケート符号化ブロックを規定する変数colCb;
- colCbによって規定されるコロケート符号化ブロックの左上サンプルを、ColPicによって規定されるコロケートピクチャの左上ルマサンプルに対して規定するルマ位置(xColCb,yColCb);
- 0又は1であるXでの参照インデックスrefIdxLX;
- サブブロック時間マージ候補を指し示すフラグsbFlag。
- 1/16分数サンプル精度での動きベクトル予測mvLXCol;
- 利用可能性フラグavailableFlagLXCol。
- colCbがイントラ又はIBC予測モードで符号化される場合、mvLXColの両方のコンポーネントが0に等しく設定され、availableFlagLXColが0に等しく設定される;
- それ以外の場合、動きベクトルmvCol、参照インデックスrefIdxCol、及び参照リスト識別子listColが、次のように導出される:
(外11)
(外12)
- availableFlagLXColがTRUEに等しいとき、mvLXCol及びavailableFlagLXColが、次のように導出される:
- LongTermRefPic(currPic,currCb,refIdxLX,LX)がLongTermRefPic(ColPic,colCb,refIdxCol,listCol)に等しくない場合、mvLXColの両方のコンポーネントが0に等しく設定され、availableFlagLXColが0に等しく設定される;
- それ以外の場合、変数availableFlagLXColが1に等しく設定され、refPicList[listCol][refIdxCol]が、ColPicによって規定されるコロケートピクチャ内の符号化ブロックcolCbを含むスライスの参照ピクチャリストlistCol内の参照インデックスrefIdxColを有するピクチャであるように設定され、以下が適用される:
...
ビジュアルメディアデータの第1の映像ブロックが幾何学的分割モード(GPM)を使用し、ビジュアルメディアデータの第2の映像ブロックが非GPMモードを使用することを決定するステップと、
統一剪定プロセスに基づいて、前記第1の映像ブロックのための第1のマージリスト及び前記第2の映像ブロックのための第2のマージリストを構築するステップであり、当該第1のマージリスト及び当該第2のマージリストはマージ候補を有し、前記統一剪定プロセスは、マージリストに新たなマージ候補を、該新たなマージ候補の動き情報と該マージリスト内の少なくとも1つのマージ候補の動き情報とを比較することに基づいて追加することを含む、ステップと、
を有し、
前記GPMは、前記第1の映像ブロックを、動き予測を別々に適用する複数の予測パーティションに分けることを有し、少なくとも1つのパーティションは、非矩形の形状を持つ、
方法。
ビジュアルメディアデータの現在映像ブロックと前記ビジュアルメディアデータのビットストリーム表現との間での変換のために、前記現在映像ブロックに適用可能な動き情報の初期値をルールに基づいて決定するステップであり、前記ルールは、前記現在映像ブロックに対してサブブロックベース時間動きベクトル予測子コーディング(SbTMVP)モードが利用可能であるかを、前記現在映像ブロックの隣接ブロックの参照リスト(リストXと表記)に基づいて検査することを規定し、ただし、Xは整数であり、Xの値は、少なくとも、前記隣接ブロックの符号化条件に依存する、ステップと、
前記決定に基づいて前記変換を実行するステップと、
を有する方法。
前記SbTMVPモードにおける動き情報の前記初期値を、前記現在映像ブロックの前記隣接ブロックのリストXに関連する動き情報に設定するステップ、
を有する、項B2に記載の方法。
ビジュアルメディアデータの現在映像ブロックと前記ビジュアルメディアデータのビットストリーム表現との間での変換のために、前記現在映像ブロックの1つ以上のサブブロックに対する1つ以上のコロケート動きベクトルをルールに基づいて導出するステップであり、前記ルールは、前記現在映像ブロックを前記ビットストリーム表現へと符号化するのに使用される符号化ツールに関係なく前記1つ以上のコロケート動きベクトルを導出する統一導出プロセスを使用することを規定する、ステップと、
前記1つ以上のコロケート動きベクトルを有するマージリストを用いて前記変換を実行するステップと、
を有する方法。
ビジュアルメディアデータの現在映像ブロックの寸法に関連する1つ以上の条件を特定するステップであり、前記現在映像ブロックにイントラブロックコピー(IBC)モードが適用される、ステップと、
前記現在映像ブロックの前記寸法に関連する前記1つ以上の条件が満たされるかに基づいて、前記現在映像ブロック向けの動き候補リストの動き候補リスト構築プロセスを決定するステップと、
前記動き候補リストに基づいて前記現在映像ブロックと前記現在映像ブロックのビットストリーム表現との間での変換を実行するステップと、
を有する方法。
映像の現在映像ブロックと前記映像のビットストリーム表現との間での変換のために、前記現在映像ブロックの寸法に関連する1つ以上の条件に基づく動きリスト構築プロセスを使用して、動き候補リストを構築するステップと、
前記動き候補リストを用いて前記変換を実行するステップであり、前記動き候補リストは、ゼロ個以上のイントラブロックコピーモード候補及び/又はゼロ個以上のアドバンスト動きベクトル予測子候補を含む、ステップと、
を有する方法。
ビジュアルメディアデータの現在映像ブロックと前記ビジュアルメディアデータのビットストリーム表現との間での変換のために、前記変換のために符号化技術が無効にされることの決定を行うステップであり、前記ビットストリーム表現は、前記符号化技術のためのマージ候補の最大数がゼロであることを指し示すフィールドを含むように構成される、ステップと、
前記符号化技術が無効にされることの前記決定に基づいて前記変換を実行するステップと、
を有する方法。
現在映像ブロックと該現在映像ブロックのビットストリーム表現との間での変換のために、ルールを用いて決定を行うステップであり、前記ルールは、前記ビットストリーム表現内の第1の構文要素が、前記現在映像ブロックに適用される少なくとも1つの符号化技術に関連するマージ候補の最大数を指し示す前記ビットストリーム表現内の第2の構文要素に基づいて条件付きで含められることを規定する、ステップと、
前記決定に基づいて前記現在映像ブロックと前記現在映像ブロックのビットストリーム表現との間での前記変換を実行するステップと、
を有する方法。
前記第2の構文要素がゼロであると推定するステップ、
を有する、項F4に記載の方法。
Claims (15)
- 映像データを処理する方法であって、
映像の第1のブロックと前記映像のビットストリームとの間での第1の変換において、前記第1のブロックが、予測モードである幾何学的分割モードでコーディングされることを決定するステップと、
前記第1のブロック向けの第1の候補リストを構築するステップであり、当該構築は、前記第1の候補リスト内の利用可能な候補の数に基づいて、前記第1のブロックの左上隅にある特定の隣接ブロックB2における空間候補の利用可能性を検査することを含む、ステップと、
前記第1の候補リストに基づいて、前記第1のブロックの第1の幾何学的パーティションに関する第1の動き情報、及び前記第1のブロックの第2の幾何学的パーティションに関する第2の動き情報を決定するステップと、
前記第1の動き情報と前記第2の動き情報とに基づいて導出される予測サンプルの加重和に基づいて、前記第1のブロックのサンプルの最終的な予測を生成するための重み付けプロセスを適用するステップと、
前記適用に基づいて前記第1の変換を実行するステップと、
を有し、
当該方法は更に、
前記映像内の第2のブロックと前記映像の前記ビットストリームとの間での第2の変換において、前記第2のブロックが第2の予測モードでコーディングされることを決定するステップであり、前記第2の予測モードにおいては、シグナリングされる動きベクトル予測子が、前記ビットストリーム内で明示的にシグナリングされるオフセットに基づいて精緻化される、ステップと、
前記第2のブロックの幅及び高さに関する条件が満たされるかに基づいて、前記第2のブロック向けの第2の候補リストの第2の候補リスト構築プロセスを決定するステップであり、前記第2のブロックの前記幅と前記高さとの積が第2の閾値以下であるとき、前記第2のブロックの前記幅及び前記高さに関する前記条件が満たされる、ステップと、
前記第2の候補リストに基づいて前記第2の変換を実行するステップと、
を有する、
方法。 - 前記第1の候補リスト内の利用可能な候補の前記数が4であるとき、前記特定の隣接ブロックB2における前記空間候補は利用可能でない、請求項1に記載の方法。
- 前記第1の候補リストは剪定プロセスに基づいて構築され、該剪定プロセスは、同じ空間候補を避けるために少なくとも2つの空間候補の間で動き情報を比較することを有する、請求項1又は2に記載の方法。
- 前記第1のブロックに関する前記第1の候補リストを前記剪定プロセスに基づいて前記構築することは、前記第1のブロックの左下隅に隣接する特定の隣接ブロックA1における空間候補の利用可能性を検査することを含み、当該検査することは、
前記第1の候補リストが、前記第1のブロックの右上隅に隣接する特定の隣接ブロックB1における空間候補を含むときに、前記特定の隣接ブロックA1における前記空間候補と前記特定の隣接ブロックB1における前記空間候補との間で動き情報を比較することと、
A1における前記空間候補の前記動き情報がB1におけるそれと同じであることを前記比較の結果が指し示すことに基づいて、前記特定の隣接ブロックA1における前記空間候補が利用可能でないと決定することと、
を有する、請求項3に記載の方法。 - 前記第1のブロックに関する前記第1の候補リストを前記剪定プロセスに基づいて前記構築することは、前記第1のブロックの右上隅にある特定の隣接ブロックB0における空間候補の利用可能性を検査することを含み、当該検査することは、
前記第1の候補リストが、前記第1のブロックの右上隅に隣接する特定の隣接ブロックB1における空間候補を含むときに、前記特定の隣接ブロックB0における前記空間候補と前記特定の隣接ブロックB1における前記空間候補との間で動き情報を比較することと、
B0における前記空間候補の前記動き情報がB1におけるそれと同じであることを該比較の結果が指し示すことに基づいて、前記特定の隣接ブロックB0における前記空間候補が利用可能でないと決定することと、
を有する、請求項3又は4に記載の方法。 - 前記第1のブロックに関する前記第1の候補リストを前記剪定プロセスに基づいて前記構築することは、前記第1のブロックの左下隅にある特定の隣接ブロックA0における空間候補の利用可能性を検査することを含み、当該検査することは、
前記第1の候補リストが、前記第1のブロックの左下隅に隣接する特定の隣接ブロックA1における空間候補を含むときに、前記特定の隣接ブロックA0における前記空間候補と前記特定の隣接ブロックA1における前記空間候補との間で動き情報を比較することと、
A0における前記空間候補の前記動き情報がA1におけるそれと同じであることを該比較の結果が指し示すことに基づいて、前記特定の隣接ブロックA0における前記空間候補が利用可能でないと決定することと、
を有する、請求項3乃至5のいずれかに記載の方法。 - 前記特定の隣接ブロックB2における前記空間候補の前記利用可能性を検査することは更に、
前記第1の候補リストが、前記第1のブロックの左下隅に隣接する特定の隣接ブロックA1における空間候補、及び前記第1のブロックの右上隅に隣接する特定の隣接ブロックB1における空間候補を含むときに、前記特定の隣接ブロックB2における前記空間候補と前記特定の隣接ブロックA1及びB1における前記空間候補との間で動き情報を比較することと、
B2における前記空間候補の前記動き情報がA1又はB1におけるそれと同じであることを該比較の結果が指し示すことに基づいて、前記特定の隣接ブロックB2における前記空間候補が利用可能でないと決定することと、
を有する、請求項3乃至6のいずれかに記載の方法。 - 前記第1の動き情報が第1の参照ピクチャリストLXからであり且つ前記第2の動き情報が第2の参照ピクチャリストL(1-X)からであることに応答して、前記第1のブロックの重み付け領域内の4×4サブブロックに関する双予測動き情報を格納するステップであり、該双予測動き情報は、前記第1の動き情報と前記第2の動き情報とを組み合わせることによって形成され、ここで、X=0又はX=1である、ステップ、
を更に有する請求項1乃至7のいずれかに記載の方法。 - 前記第1のブロックの非重み付け領域内の4×4サブブロックに関する片予測動き情報を格納するステップであり、該片予測動き情報は、前記第1の動き情報又は前記第2の動き情報に基づく、ステップ、
を更に有する請求項1乃至8のいずれかに記載の方法。 - イントラブロックコピーモードでコーディングされる隣接ブロックに対応する空間候補は、前記第1のブロック向けの前記第1の候補リストから除外され、前記イントラブロックコピーモードにおいて、前記隣接ブロックの予測サンプルは、ブロックベクトルによって決定される前記隣接ブロックと同じピクチャの復号済みの映像領域のサンプル値のブロックから導出される、請求項1乃至9のいずれかに記載の方法。
- 前記第1の変換は、前記第1のブロックを前記ビットストリームへと符号化することを含み、前記第2の変換は、前記第2のブロックを前記ビットストリームへと符号化することを含む、請求項1乃至10のいずれかに記載の方法。
- 前記第1の変換は、前記ビットストリームから前記第1のブロックを復号することを含み、前記第2の変換は、前記ビットストリームから前記第2のブロックを復号することを含む、請求項1乃至10のいずれかに記載の方法。
- プロセッサと、命令を有する非一時的なメモリと、を有する映像データを処理する装置であって、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
映像の第1のブロックと前記映像のビットストリームとの間での第1の変換において、前記第1のブロックが、予測モードである幾何学的分割モードでコーディングされることを決定させ、
前記第1のブロック向けの第1の候補リストを構築させ、当該構築は、前記第1の候補リスト内の利用可能な候補の数に基づいて、前記第1のブロックの左上隅にある特定の隣接ブロックB2における空間候補の利用可能性を検査することを含み、
前記第1の候補リストに基づいて、前記第1のブロックの第1の幾何学的パーティションに関する第1の動き情報、及び前記第1のブロックの第2の幾何学的パーティションに関する第2の動き情報を決定させ、
前記第1の動き情報と前記第2の動き情報とに基づいて導出される予測サンプルの加重和に基づいて、前記第1のブロックのサンプルの最終的な予測を生成するための重み付けプロセスを適用させ、
前記重み付けプロセスに基づいて前記第1の変換を実行させ、
前記命令は、前記プロセッサによって実行されると、前記プロセッサに更に、
前記映像内の第2のブロックと前記映像の前記ビットストリームとの間での第2の変換において、前記第2のブロックが第2の予測モードでコーディングされることを決定させ、前記第2の予測モードにおいては、シグナリングされる動きベクトル予測子が、前記ビットストリーム内で明示的にシグナリングされるオフセットに基づいて精緻化され、
前記第2のブロックの幅及び高さに関する条件が満たされるかに基づいて、前記第2のブロック向けの第2の候補リストの第2の候補リスト構築プロセスを決定させ、前記第2のブロックの前記幅と前記高さとの積が第2の閾値以下であるとき、前記第2のブロックの前記幅及び前記高さに関する前記条件が満たされ、
前記第2の候補リストに基づいて前記第2の変換を実行させる、
装置。 - 命令を格納した非一時的なコンピュータ読み取り可能記憶媒体であって、前記命令は、プロセッサに、
映像の第1のブロックと前記映像のビットストリームとの間での第1の変換において、前記第1のブロックが、予測モードである幾何学的分割モードでコーディングされることを決定させ、
前記第1のブロック向けの第1の候補リストを構築させ、当該構築は、前記第1の候補リスト内の利用可能な候補の数に基づいて、前記第1のブロックの左上隅にある特定の隣接ブロックB2における空間候補の利用可能性を検査することを含み、
前記第1の候補リストに基づいて、前記第1のブロックの第1の幾何学的パーティションに関する第1の動き情報、及び前記第1のブロックの第2の幾何学的パーティションに関する第2の動き情報を決定させ、
前記第1の動き情報と前記第2の動き情報とに基づいて導出される予測サンプルの加重和に基づいて、前記第1のブロックのサンプルの最終的な予測を生成するための重み付けプロセスを適用させ、
前記重み付けプロセスに基づいて前記第1の変換を実行させ、
前記命令は、プロセッサに更に、
前記映像内の第2のブロックと前記映像の前記ビットストリームとの間での第2の変換において、前記第2のブロックが第2の予測モードでコーディングされることを決定させ、前記第2の予測モードにおいては、シグナリングされる動きベクトル予測子が、前記ビットストリーム内で明示的にシグナリングされるオフセットに基づいて精緻化され、
前記第2のブロックの幅及び高さに関する条件が満たされるかに基づいて、前記第2のブロック向けの第2の候補リストの第2の候補リスト構築プロセスを決定させ、前記第2のブロックの前記幅と前記高さとの積が第2の閾値以下であるとき、前記第2のブロックの前記幅及び前記高さに関する前記条件が満たされ、
前記第2の候補リストに基づいて前記第2の変換を実行させる、
コンピュータ読み取り可能記憶媒体。 - 映像のビットストリームを格納する方法であって、
前記映像の第1のブロックについて、該第1のブロックが、予測モードである幾何学的分割モードでコーディングされることを決定するステップと、
前記第1のブロック向けの第1の候補リストを構築するステップであり、当該構築は、前記第1の候補リスト内の利用可能な候補の数に基づいて、前記第1のブロックの左上隅にある特定の隣接ブロックB2における空間候補の利用可能性を検査することを含む、ステップと、
前記第1の候補リストに基づいて、前記第1のブロックの第1の幾何学的パーティションに関する第1の動き情報、及び前記第1のブロックの第2の幾何学的パーティションに関する第2の動き情報を決定するステップと、
前記第1の動き情報と前記第2の動き情報とに基づいて導出される予測サンプルの加重和に基づいて、前記第1のブロックのサンプルの最終的な予測を生成するための重み付けプロセスを適用するステップと、
前記適用に基づいて前記第1のブロックの前記ビットストリームを生成するステップと、
前記ビットストリームを非一時的なコンピュータ読み取り可能記録媒体に格納するステップと、
を有し、
当該方法は更に、
前記映像の第2のブロックについて、前記第2のブロックが第2の予測モードでコーディングされることを決定するステップであり、前記第2の予測モードにおいては、シグナリングされる動きベクトル予測子が、前記ビットストリーム内で明示的にシグナリングされるオフセットに基づいて精緻化される、ステップと、
前記第2のブロックの幅及び高さに関する条件が満たされるかに基づいて、前記第2のブロック向けの第2の候補リストの第2の候補リスト構築プロセスを決定するステップであり、前記第2のブロックの前記幅と前記高さとの積が第2の閾値以下であるとき、前記第2のブロックの前記幅及び前記高さに関する前記条件が満たされる、ステップと、
前記第2の候補リストに基づいて前記第2のブロックの前記ビットストリームを生成するステップと、
を有する、
方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019089970 | 2019-06-04 | ||
CNPCT/CN2019/089970 | 2019-06-04 | ||
PCT/CN2020/094305 WO2020244568A1 (en) | 2019-06-04 | 2020-06-04 | Motion candidate list with geometric partition mode coding |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022536090A JP2022536090A (ja) | 2022-08-12 |
JP7446339B2 true JP7446339B2 (ja) | 2024-03-08 |
Family
ID=73652347
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021571979A Active JP7446339B2 (ja) | 2019-06-04 | 2020-06-04 | 幾何学的分割モードコーディングを用いた動き候補リスト |
JP2021571916A Active JP7425808B2 (ja) | 2019-06-04 | 2020-06-04 | 動き候補リスト構築プロセスの条件付き実行 |
JP2023182535A Pending JP2024008948A (ja) | 2019-06-04 | 2023-10-24 | 動き候補リスト構築プロセスの条件付き実行 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021571916A Active JP7425808B2 (ja) | 2019-06-04 | 2020-06-04 | 動き候補リスト構築プロセスの条件付き実行 |
JP2023182535A Pending JP2024008948A (ja) | 2019-06-04 | 2023-10-24 | 動き候補リスト構築プロセスの条件付き実行 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11611743B2 (ja) |
EP (2) | EP3963889A4 (ja) |
JP (3) | JP7446339B2 (ja) |
KR (2) | KR20220016839A (ja) |
CN (2) | CN113994698B (ja) |
WO (2) | WO2020244568A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020156464A1 (en) * | 2019-01-31 | 2020-08-06 | Mediatek Inc. | Method and apparatus of combined inter and intraprediction for video coding |
EP3963890A4 (en) | 2019-06-04 | 2022-11-02 | Beijing Bytedance Network Technology Co., Ltd. | BUILDING A LIST OF MOVEMENT CANDIDATES USING NEIGHBOR BLOCK INFORMATION |
JP7446339B2 (ja) | 2019-06-04 | 2024-03-08 | 北京字節跳動網絡技術有限公司 | 幾何学的分割モードコーディングを用いた動き候補リスト |
CN114128295B (zh) | 2019-07-14 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 视频编解码中几何分割模式候选列表的构建 |
CN117596389A (zh) | 2019-09-28 | 2024-02-23 | 北京字节跳动网络技术有限公司 | 视频编解码中的几何分割模式 |
EP4052469A4 (en) * | 2019-12-03 | 2023-01-25 | Huawei Technologies Co., Ltd. | METHOD, DEVICE, CODING SYSTEM WITH FUSION MODE |
CN115699735A (zh) * | 2020-05-29 | 2023-02-03 | 北京达佳互联信息技术有限公司 | 使用几何分区的视频编解码方法及装置 |
CN117652142A (zh) * | 2021-04-09 | 2024-03-05 | 抖音视界有限公司 | 用于视频处理的方法、设备和介质 |
WO2022217159A1 (en) * | 2021-04-09 | 2022-10-13 | Beijing Dajia Internet Information Technology Co., Ltd. | Geometric partition mode with explicit motion signaling |
CN118339830A (zh) * | 2021-11-25 | 2024-07-12 | 交互数字Ce专利控股有限公司 | 用于图片编码和解码的方法与设备 |
WO2023143119A1 (en) * | 2022-01-28 | 2023-08-03 | Mediatek Inc. | Method and apparatus for geometry partition mode mv assignment in video coding system |
US20230336773A1 (en) * | 2022-04-18 | 2023-10-19 | Tencent America LLC | On motion compensated picture boundary padding |
WO2024153093A1 (en) * | 2023-01-17 | 2024-07-25 | Mediatek Inc. | Method and apparatus of combined intra block copy prediction and syntax design for video coding |
WO2024191196A1 (ko) * | 2023-03-13 | 2024-09-19 | 현대자동차주식회사 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020184555A1 (ja) | 2019-03-11 | 2020-09-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
Family Cites Families (155)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050111545A1 (en) | 2003-11-25 | 2005-05-26 | Ram Prabhakar | Dynamic packet size control for MPEG-4 data partition mode |
CN101415121B (zh) * | 2007-10-15 | 2010-09-29 | 华为技术有限公司 | 一种自适应的帧预测的方法及装置 |
CN101822064A (zh) * | 2007-10-16 | 2010-09-01 | 汤姆逊许可公司 | 用于几何分割超级块的视频编码和解码的方法和设备 |
TWI428023B (zh) | 2008-11-18 | 2014-02-21 | Ind Tech Res Inst | 解碼方法及裝置 |
KR101098739B1 (ko) | 2008-11-24 | 2011-12-23 | 한국전자통신연구원 | 비디오 신호의 부호화/복호화 장치 및 방법 |
US9036692B2 (en) * | 2010-01-18 | 2015-05-19 | Mediatek Inc. | Motion prediction method |
KR101722420B1 (ko) * | 2010-01-20 | 2017-04-18 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 휴대 전자 기기 |
US8879632B2 (en) | 2010-02-18 | 2014-11-04 | Qualcomm Incorporated | Fixed point implementation for geometric motion partitioning |
US9819966B2 (en) | 2010-09-01 | 2017-11-14 | Qualcomm Incorporated | Filter description signaling for multi-filter adaptive filtering |
US9071851B2 (en) | 2011-01-10 | 2015-06-30 | Qualcomm Incorporated | Adaptively performing smoothing operations |
US9826238B2 (en) | 2011-06-30 | 2017-11-21 | Qualcomm Incorporated | Signaling syntax elements for transform coefficients for sub-sets of a leaf-level coding unit |
JP5884697B2 (ja) * | 2011-09-28 | 2016-03-15 | 株式会社Jvcケンウッド | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、送信装置、送信方法及び送信プログラム |
US20130107973A1 (en) | 2011-10-28 | 2013-05-02 | Qualcomm Incorporated | Loop filtering control over tile boundaries |
US20130114717A1 (en) * | 2011-11-07 | 2013-05-09 | Qualcomm Incorporated | Generating additional merge candidates |
US9451277B2 (en) * | 2012-02-08 | 2016-09-20 | Qualcomm Incorporated | Restriction of prediction units in B slices to uni-directional inter prediction |
WO2013139250A1 (en) * | 2012-03-22 | 2013-09-26 | Mediatek Inc. | Method and apparatus of scalable video coding |
US9549180B2 (en) | 2012-04-20 | 2017-01-17 | Qualcomm Incorporated | Disparity vector generation for inter-view prediction for video coding |
US20130294513A1 (en) * | 2012-05-07 | 2013-11-07 | Qualcomm Incorporated | Inter layer merge list construction for video coding |
US20130329007A1 (en) | 2012-06-06 | 2013-12-12 | Qualcomm Incorporated | Redundancy removal for advanced motion vector prediction (amvp) in three-dimensional (3d) video coding |
US20130336406A1 (en) * | 2012-06-14 | 2013-12-19 | Qualcomm Incorporated | Redundancy removal for merge/skip mode motion information candidate list construction |
US9749645B2 (en) | 2012-06-22 | 2017-08-29 | Microsoft Technology Licensing, Llc | Coded-block-flag coding and derivation |
US9088770B2 (en) | 2012-08-15 | 2015-07-21 | Intel Corporation | Size based transform unit context derivation |
US20140071235A1 (en) | 2012-09-13 | 2014-03-13 | Qualcomm Incorporated | Inter-view motion prediction for 3d video |
US9491461B2 (en) | 2012-09-27 | 2016-11-08 | Qualcomm Incorporated | Scalable extensions to HEVC and temporal motion vector prediction |
US9699450B2 (en) | 2012-10-04 | 2017-07-04 | Qualcomm Incorporated | Inter-view predicted motion vector for 3D video |
US9924168B2 (en) | 2012-10-05 | 2018-03-20 | Hfi Innovation Inc. | Method and apparatus of motion vector derivation 3D video coding |
US9357214B2 (en) | 2012-12-07 | 2016-05-31 | Qualcomm Incorporated | Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video |
US10334259B2 (en) | 2012-12-07 | 2019-06-25 | Qualcomm Incorporated | Advanced residual prediction in scalable and multi-view video coding |
US9538180B2 (en) | 2012-12-17 | 2017-01-03 | Qualcomm Incorporated | Motion vector prediction in video coding |
WO2014165555A1 (en) | 2013-04-02 | 2014-10-09 | Vid Scale, Inc. | Enhanced temporal motion vector prediction for scalable video coding |
US9609347B2 (en) | 2013-04-04 | 2017-03-28 | Qualcomm Incorporated | Advanced merge mode for three-dimensional (3D) video coding |
US9288507B2 (en) | 2013-06-21 | 2016-03-15 | Qualcomm Incorporated | More accurate advanced residual prediction (ARP) for texture coding |
US9800895B2 (en) | 2013-06-27 | 2017-10-24 | Qualcomm Incorporated | Depth oriented inter-view motion vector prediction |
WO2015003383A1 (en) | 2013-07-12 | 2015-01-15 | Mediatek Singapore Pte. Ltd. | Methods for inter-view motion prediction |
US10045014B2 (en) | 2013-07-15 | 2018-08-07 | Mediatek Singapore Pte. Ltd. | Method of disparity derived depth coding in 3D video coding |
NZ715990A (en) | 2013-07-24 | 2019-11-29 | Microsoft Technology Licensing Llc | Scanning orders for non-transform coding |
US9762927B2 (en) | 2013-09-26 | 2017-09-12 | Qualcomm Incorporated | Sub-prediction unit (PU) based temporal motion vector prediction in HEVC and sub-PU design in 3D-HEVC |
WO2015070739A1 (en) | 2013-11-15 | 2015-05-21 | Mediatek Inc. | Method of block-based adaptive loop filtering |
US9432685B2 (en) | 2013-12-06 | 2016-08-30 | Qualcomm Incorporated | Scalable implementation for parallel motion estimation regions |
US20150271515A1 (en) * | 2014-01-10 | 2015-09-24 | Qualcomm Incorporated | Block vector coding for intra block copy in video coding |
EP3114839A4 (en) | 2014-03-07 | 2018-02-14 | Qualcomm Incorporated | Simplified sub-prediction unit (sub-pu) motion parameter inheritence (mpi) |
KR20160132891A (ko) | 2014-03-13 | 2016-11-21 | 퀄컴 인코포레이티드 | 3d 비디오 코딩에 대한 제약된 깊이 인트라 모드 코딩 |
CN103942793B (zh) | 2014-04-16 | 2016-11-16 | 上海交通大学 | 基于热扩散的视频一致运动区域检测方法 |
WO2015180014A1 (en) * | 2014-05-26 | 2015-12-03 | Mediatek Singapore Pte. Ltd. | An improved merge candidate list construction method for intra block copy |
WO2015192286A1 (en) | 2014-06-16 | 2015-12-23 | Qualcomm Incorporated | Simplified shifting merge candidate and merge list derivation in 3d-hevc |
CN106464921B (zh) | 2014-06-19 | 2019-10-15 | Vid拓展公司 | 用于块内复制搜索增强的方法和系统 |
KR102034938B1 (ko) * | 2014-09-01 | 2019-10-21 | 에이치에프아이 이노베이션 인크. | 스크린 콘텐츠 및 비디오 코딩을 위한 인트라 픽처 블록 카피의 방법 |
CN107079157B (zh) | 2014-09-12 | 2020-12-22 | Vid拓展公司 | 用于视频编码的分量间去相关 |
JP2017532885A (ja) * | 2014-09-26 | 2017-11-02 | ヴィド スケール インコーポレイテッド | 時間ブロックベクトル予測を用いたイントラブロックコピー符号化 |
GB2531003A (en) | 2014-10-06 | 2016-04-13 | Canon Kk | Method and apparatus for vector encoding in video coding and decoding |
US9854237B2 (en) * | 2014-10-14 | 2017-12-26 | Qualcomm Incorporated | AMVP and merge candidate list derivation for intra BC and inter prediction unification |
US11477477B2 (en) * | 2015-01-26 | 2022-10-18 | Qualcomm Incorporated | Sub-prediction unit based advanced temporal motion vector prediction |
WO2016123388A1 (en) | 2015-01-29 | 2016-08-04 | Vid Scale, Inc. | Palette coding modes and palette flipping |
US10057574B2 (en) | 2015-02-11 | 2018-08-21 | Qualcomm Incorporated | Coding tree unit (CTU) level adaptive loop filter (ALF) |
GB2539213A (en) * | 2015-06-08 | 2016-12-14 | Canon Kk | Schemes for handling an AMVP flag when implementing intra block copy coding mode |
US10356416B2 (en) | 2015-06-09 | 2019-07-16 | Qualcomm Incorporated | Systems and methods of determining illumination compensation status for video coding |
CN105141957B (zh) | 2015-07-31 | 2019-03-15 | 广东中星电子有限公司 | 图像和视频数据编解码的方法和设备 |
AU2016316309B2 (en) * | 2015-09-02 | 2019-01-24 | Hfi Innovation Inc. | Method and apparatus of decoder side motion derivation for video coding |
US10218975B2 (en) | 2015-09-29 | 2019-02-26 | Qualcomm Incorporated | Transform precision manipulation in video coding |
WO2017059415A1 (en) | 2015-10-02 | 2017-04-06 | Vid Scale, Inc. | Color correction with a lookup table |
US10812822B2 (en) | 2015-10-02 | 2020-10-20 | Qualcomm Incorporated | Intra block copy merge mode and padding of unavailable IBC reference region |
WO2017076221A1 (en) * | 2015-11-05 | 2017-05-11 | Mediatek Inc. | Method and apparatus of inter prediction using average motion vector for video coding |
US20170150186A1 (en) | 2015-11-25 | 2017-05-25 | Qualcomm Incorporated | Flexible transform tree structure in video coding |
US11064195B2 (en) | 2016-02-15 | 2021-07-13 | Qualcomm Incorporated | Merging filters for multiple classes of blocks for video coding |
FI20165256L (fi) * | 2016-03-24 | 2017-09-25 | Nokia Technologies Oy | Laitteisto, menetelmä ja tietokoneohjelma videokoodaukseen ja -dekoodaukseen |
FI20165257A (fi) * | 2016-03-24 | 2017-09-25 | Nokia Technologies Oy | Laitteisto, menetelmä ja tietokoneohjelma videokoodaukseen ja -dekoodaukseen |
JP2019519972A (ja) | 2016-05-05 | 2019-07-11 | ヴィド スケール インコーポレイテッド | イントラコーディングのための制御点ベースのイントラ方向表現 |
US10560718B2 (en) * | 2016-05-13 | 2020-02-11 | Qualcomm Incorporated | Merge candidates for motion vector prediction for video coding |
US10419755B2 (en) | 2016-05-16 | 2019-09-17 | Qualcomm Incorporated | Confusion of multiple filters in adaptive loop filtering in video coding |
US20180041778A1 (en) | 2016-08-02 | 2018-02-08 | Qualcomm Incorporated | Geometry transformation-based adaptive loop filtering |
US10326986B2 (en) | 2016-08-15 | 2019-06-18 | Qualcomm Incorporated | Intra video coding using a decoupled tree structure |
US10271069B2 (en) | 2016-08-31 | 2019-04-23 | Microsoft Technology Licensing, Llc | Selective use of start code emulation prevention |
US10721489B2 (en) | 2016-09-06 | 2020-07-21 | Qualcomm Incorporated | Geometry-based priority for the construction of candidate lists |
US10448010B2 (en) | 2016-10-05 | 2019-10-15 | Qualcomm Incorporated | Motion vector prediction for affine motion models in video coding |
US20210136400A1 (en) * | 2016-11-29 | 2021-05-06 | Mediatek Inc. | Method and apparatus of merge mode derivation for video coding |
US20180184127A1 (en) | 2016-12-22 | 2018-06-28 | Qualcomm Incorporated | Determining neighboring samples for bilateral filtering in video coding |
US10506230B2 (en) | 2017-01-04 | 2019-12-10 | Qualcomm Incorporated | Modified adaptive loop filter temporal prediction for temporal scalability support |
US11025903B2 (en) | 2017-01-13 | 2021-06-01 | Qualcomm Incorporated | Coding video data using derived chroma mode |
CN106961606B (zh) | 2017-01-26 | 2020-04-07 | 浙江工业大学 | 基于纹理划分特征的hevc帧内编码模式选择方法 |
KR102559063B1 (ko) | 2017-02-24 | 2023-07-24 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
WO2018166357A1 (en) * | 2017-03-16 | 2018-09-20 | Mediatek Inc. | Method and apparatus of motion refinement based on bi-directional optical flow for video coding |
US10523934B2 (en) * | 2017-05-31 | 2019-12-31 | Mediatek Inc. | Split based motion vector operation reduction |
WO2019001734A1 (en) * | 2017-06-30 | 2019-01-03 | Huawei Technologies Co., Ltd. | ENCODER, DECODER, COMPUTER PROGRAM, AND COMPUTER PROGRAM PRODUCT FOR PROCESSING A FRAME OF A VIDEO SEQUENCE |
US10778974B2 (en) | 2017-07-05 | 2020-09-15 | Qualcomm Incorporated | Adaptive loop filter with enhanced classification methods |
US11172203B2 (en) * | 2017-08-08 | 2021-11-09 | Mediatek Inc. | Intra merge prediction |
CN116761001A (zh) * | 2017-08-29 | 2023-09-15 | Sk电信有限公司 | 视频编码装置、视频解码装置和存储比特流的方法 |
CN111567045A (zh) * | 2017-10-10 | 2020-08-21 | 韩国电子通信研究院 | 使用帧间预测信息的方法和装置 |
US10785494B2 (en) | 2017-10-11 | 2020-09-22 | Qualcomm Incorporated | Low-complexity design for FRUC |
CN111213379B (zh) | 2017-10-16 | 2023-11-21 | 数字洞察力有限公司 | 用于将图像编码/解码的方法、装置和存储比特流的记录介质 |
US20190116374A1 (en) | 2017-10-17 | 2019-04-18 | Qualcomm Incorporated | Coding motion information of video data using coding structure-based candidate list construction |
WO2019079611A1 (en) | 2017-10-18 | 2019-04-25 | Huawei Technologies Co., Ltd. | GENERATION OF MOVEMENT VECTOR CANDIDATES LIST DEPENDING ON THE AVAILABILITY OF A NEIGHBORING BLOCK |
JP2021016016A (ja) * | 2017-10-20 | 2021-02-12 | シャープ株式会社 | 動画像符号化装置及び動画像復号装置 |
SG11202003927TA (en) | 2017-11-01 | 2020-05-28 | Vid Scale Inc | Methods for simplifying adaptive loop filter in video coding |
EP3711299A1 (en) | 2017-11-14 | 2020-09-23 | Qualcomm Incorporated | Unified merge candidate list usage |
US10721469B2 (en) | 2017-11-28 | 2020-07-21 | Qualcomm Incorporated | Line buffer reduction for adaptive loop filtering in video coding |
WO2019136657A1 (en) * | 2018-01-11 | 2019-07-18 | Qualcomm Incorporated | Video coding using local illumination compensation |
US20190238845A1 (en) | 2018-01-26 | 2019-08-01 | Qualcomm Incorporated | Adaptive loop filtering on deblocking filter results in video coding |
JP2021514162A (ja) * | 2018-02-22 | 2021-06-03 | エルジー エレクトロニクス インコーポレイティド | 映像コーディングシステムにおけるブロック分割構造による映像デコーディング方法及び装置 |
CN108449599B (zh) * | 2018-03-23 | 2021-05-18 | 安徽大学 | 一种基于面透射变换的视频编码与解码方法 |
US20190306502A1 (en) | 2018-04-02 | 2019-10-03 | Qualcomm Incorporated | System and method for improved adaptive loop filtering |
CN117135346A (zh) | 2018-04-02 | 2023-11-28 | 深圳市大疆创新科技有限公司 | 用于图像处理的方法和图像处理装置 |
US10506251B2 (en) * | 2018-05-08 | 2019-12-10 | Tencent America LLC | Method and apparatus for video coding |
US10397603B1 (en) * | 2018-05-08 | 2019-08-27 | Tencent America LLC | Method and apparatus for video coding |
GB2588531B (en) | 2018-06-29 | 2023-02-01 | Beijing Bytedance Network Tech Co Ltd | Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks |
TWI731358B (zh) | 2018-06-29 | 2021-06-21 | 大陸商北京字節跳動網絡技術有限公司 | 改進的時域運動向量預測推導 |
SG11202011714RA (en) | 2018-06-29 | 2020-12-30 | Beijing Bytedance Network Technology Co Ltd | Partial/full pruning when adding a hmvp candidate to merge/amvp |
TWI728389B (zh) | 2018-07-01 | 2021-05-21 | 大陸商北京字節跳動網絡技術有限公司 | 基於優先級的非相鄰merge設計 |
US10531090B1 (en) * | 2018-07-02 | 2020-01-07 | Tencent America LLC | Method and apparatus for video coding |
TWI735902B (zh) | 2018-07-02 | 2021-08-11 | 大陸商北京字節跳動網絡技術有限公司 | 具有幀內預測模式的lut和來自非相鄰塊的幀內預測模式 |
US11051010B2 (en) | 2018-07-18 | 2021-06-29 | Mediatek Inc. | Merge candidates with multiple hypothesis |
US10362330B1 (en) * | 2018-07-30 | 2019-07-23 | Tencent America LLC | Combining history-based motion vector prediction and non-adjacent merge prediction |
US10523963B1 (en) * | 2018-07-30 | 2019-12-31 | Tencent America LLC | Method and apparatus for merge mode in video coding |
CN110858904B (zh) | 2018-08-26 | 2023-04-18 | 北京字节跳动网络技术有限公司 | 基于多运动模型的视频编码和解码 |
CN111064959B (zh) | 2018-09-12 | 2023-09-01 | 北京字节跳动网络技术有限公司 | 要检查多少个hmvp候选 |
CN118524204A (zh) | 2018-09-19 | 2024-08-20 | 韩国电子通信研究院 | 图像编码/解码方法和装置以及存储有比特流的记录介质 |
TWI822862B (zh) | 2018-09-23 | 2023-11-21 | 大陸商北京字節跳動網絡技術有限公司 | 8參數仿射模型 |
TWI822863B (zh) | 2018-09-27 | 2023-11-21 | 美商Vid衡器股份有限公司 | 360度視訊寫碼樣本導出 |
WO2020084552A1 (en) | 2018-10-24 | 2020-04-30 | Beijing Bytedance Network Technology Co., Ltd. | Motion candidate derivation based on spatial neighboring block in sub-block motion vector prediction |
CN111147855B (zh) | 2018-11-02 | 2024-10-29 | 北京字节跳动网络技术有限公司 | 几何分割预测模式与其他工具之间的协调 |
WO2020094077A1 (en) | 2018-11-06 | 2020-05-14 | Beijing Bytedance Network Technology Co., Ltd. | Weights derivation for geometric partitioning |
KR102711051B1 (ko) | 2018-11-06 | 2024-09-27 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 기하학적 파티션을 이용한 인터 예측을 위한 사이드 정보 시그널링 |
CN116886926A (zh) | 2018-11-10 | 2023-10-13 | 北京字节跳动网络技术有限公司 | 成对平均候选计算中的取整 |
CN117880493A (zh) | 2018-11-13 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 用于空域运动候选列表的构建方法 |
CN112970253B (zh) | 2018-11-13 | 2024-05-07 | 北京字节跳动网络技术有限公司 | 用于预测的运动候选列表构建 |
WO2020098809A1 (en) | 2018-11-17 | 2020-05-22 | Beijing Bytedance Network Technology Co., Ltd. | Construction of affine candidates in video processing |
CN113170112B (zh) | 2018-11-22 | 2024-05-10 | 北京字节跳动网络技术有限公司 | 用于具有几何分割的帧间预测的构建方法 |
WO2020108574A1 (en) | 2018-11-28 | 2020-06-04 | Beijing Bytedance Network Technology Co., Ltd. | Improving method for transform or quantization bypass mode |
CN113170128B (zh) | 2018-12-03 | 2024-05-28 | 北京字节跳动网络技术有限公司 | 帧间预测的部分修剪方法 |
CN113261290B (zh) | 2018-12-28 | 2024-03-12 | 北京字节跳动网络技术有限公司 | 基于修改历史的运动预测 |
CN109874011B (zh) * | 2018-12-28 | 2020-06-09 | 杭州海康威视数字技术股份有限公司 | 编码方法、解码方法及装置 |
EP3905684B1 (en) | 2018-12-29 | 2024-09-04 | SZ DJI Technology Co., Ltd. | Video processing method and device |
CN111164976A (zh) | 2019-01-03 | 2020-05-15 | 北京大学 | 视频处理方法和装置 |
KR20240010576A (ko) | 2019-01-10 | 2024-01-23 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | Lut 업데이트의 호출 |
WO2020143824A1 (en) | 2019-01-13 | 2020-07-16 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between lut and shared merge list |
WO2020147804A1 (en) | 2019-01-17 | 2020-07-23 | Beijing Bytedance Network Technology Co., Ltd. | Use of virtual candidate prediction and weighted prediction in video processing |
US10904557B2 (en) * | 2019-01-22 | 2021-01-26 | Tencent America LLC | Method and apparatus for video coding |
WO2020164629A1 (en) | 2019-02-17 | 2020-08-20 | Beijing Bytedance Network Technology Co., Ltd. | Restriction of applicability for intra block copy mode |
BR112021016953A2 (pt) | 2019-02-27 | 2021-11-23 | Huawei Tech Co Ltd | Codificador, decodificador e métodos correspondentes |
KR20230163584A (ko) | 2019-02-28 | 2023-11-30 | 엘지전자 주식회사 | Aps 시그널링 기반 비디오 또는 영상 코딩 |
MX2021011027A (es) | 2019-03-11 | 2021-11-12 | Huawei Tech Co Ltd | Un codificador, un decodificador y métodos correspondientes. |
CN116320484A (zh) | 2019-03-13 | 2023-06-23 | 北京大学 | 视频处理方法和设备 |
CN117499644A (zh) | 2019-03-14 | 2024-02-02 | 北京字节跳动网络技术有限公司 | 环路整形信息的信令和语法 |
JP7233565B2 (ja) | 2019-03-24 | 2023-03-06 | 北京字節跳動網絡技術有限公司 | ビデオ処理におけるマルチパラメータ適応ループフィルタリング |
CN115914627A (zh) | 2019-04-15 | 2023-04-04 | 北京字节跳动网络技术有限公司 | 自适应环路滤波器中的裁剪参数推导 |
CN113767623B (zh) | 2019-04-16 | 2024-04-02 | 北京字节跳动网络技术有限公司 | 用于视频编解码的自适应环路滤波 |
US11284114B2 (en) | 2019-04-23 | 2022-03-22 | Qualcomm Incorporated | Adaptive loop filter set index signaling |
WO2020231140A1 (ko) | 2019-05-14 | 2020-11-19 | 엘지전자 주식회사 | 적응적 루프 필터 기반 비디오 또는 영상 코딩 |
US11019334B2 (en) | 2019-05-17 | 2021-05-25 | Qualcomm Incorporated | Multiple adaptive loop filter sets for video coding |
JP7446339B2 (ja) | 2019-06-04 | 2024-03-08 | 北京字節跳動網絡技術有限公司 | 幾何学的分割モードコーディングを用いた動き候補リスト |
EP3963890A4 (en) | 2019-06-04 | 2022-11-02 | Beijing Bytedance Network Technology Co., Ltd. | BUILDING A LIST OF MOVEMENT CANDIDATES USING NEIGHBOR BLOCK INFORMATION |
US11166033B2 (en) | 2019-06-06 | 2021-11-02 | Qualcomm Incorporated | Adaptation parameter set in access unit in video coding |
US11736688B2 (en) | 2019-06-21 | 2023-08-22 | Qualcomm Incorporated | Adaptive loop filter signalling |
CN114128295B (zh) | 2019-07-14 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 视频编解码中几何分割模式候选列表的构建 |
US11432016B2 (en) | 2019-12-05 | 2022-08-30 | Hfi Innovation Inc. | Methods and apparatuses of syntax signaling constraint for cross-component adaptive loop filter in video coding system |
US11563980B2 (en) | 2020-04-02 | 2023-01-24 | Qualcomm Incorporated | General constraint information syntax in video coding |
-
2020
- 2020-06-04 JP JP2021571979A patent/JP7446339B2/ja active Active
- 2020-06-04 KR KR1020217038805A patent/KR20220016839A/ko not_active Application Discontinuation
- 2020-06-04 WO PCT/CN2020/094305 patent/WO2020244568A1/en unknown
- 2020-06-04 CN CN202080041789.9A patent/CN113994698B/zh active Active
- 2020-06-04 KR KR1020217038504A patent/KR20220016075A/ko not_active Application Discontinuation
- 2020-06-04 JP JP2021571916A patent/JP7425808B2/ja active Active
- 2020-06-04 WO PCT/CN2020/094306 patent/WO2020244569A1/en unknown
- 2020-06-04 CN CN202080043277.6A patent/CN114097228B/zh active Active
- 2020-06-04 EP EP20817785.7A patent/EP3963889A4/en active Pending
- 2020-06-04 EP EP20818357.4A patent/EP3963883A4/en active Pending
-
2021
- 2021-11-30 US US17/538,916 patent/US11611743B2/en active Active
- 2021-12-01 US US17/540,068 patent/US11463687B2/en active Active
-
2023
- 2023-10-24 JP JP2023182535A patent/JP2024008948A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020184555A1 (ja) | 2019-03-11 | 2020-09-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
Non-Patent Citations (5)
Also Published As
Publication number | Publication date |
---|---|
WO2020244568A1 (en) | 2020-12-10 |
JP2022536090A (ja) | 2022-08-12 |
US20220086433A1 (en) | 2022-03-17 |
EP3963883A4 (en) | 2023-06-14 |
KR20220016839A (ko) | 2022-02-10 |
CN113994698B (zh) | 2023-11-24 |
EP3963889A4 (en) | 2023-01-25 |
CN114097228A (zh) | 2022-02-25 |
JP2024008948A (ja) | 2024-01-19 |
US20220094914A1 (en) | 2022-03-24 |
CN113994698A (zh) | 2022-01-28 |
WO2020244569A1 (en) | 2020-12-10 |
US11611743B2 (en) | 2023-03-21 |
EP3963889A1 (en) | 2022-03-09 |
US11463687B2 (en) | 2022-10-04 |
CN114097228B (zh) | 2023-12-15 |
JP2022536622A (ja) | 2022-08-18 |
KR20220016075A (ko) | 2022-02-08 |
EP3963883A1 (en) | 2022-03-09 |
JP7425808B2 (ja) | 2024-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7446339B2 (ja) | 幾何学的分割モードコーディングを用いた動き候補リスト | |
CN114128258B (zh) | 视频编解码中的变换块尺寸的限制 | |
WO2020259426A1 (en) | Motion candidate list construction for intra block copy mode | |
WO2020244659A1 (en) | Interactions between sub-block based intra block copy and different coding tools | |
CN114450959A (zh) | 视频编解码中的几何分割模式 | |
JP7460661B2 (ja) | 映像符号化のための動き候補リストの構成 | |
KR102627821B1 (ko) | 이웃 블록 정보를 사용한 모션 후보 리스트 구성 | |
CN113557720B (zh) | 视频处理方法、装置以及非暂态计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211207 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220526 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230424 |
|
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: 20231107 |
|
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: 20240130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7446339 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |