JP2023036776A - オプティカルフローを用いた予測リファインメントに関する方法および装置 - Google Patents
オプティカルフローを用いた予測リファインメントに関する方法および装置 Download PDFInfo
- Publication number
- JP2023036776A JP2023036776A JP2022203593A JP2022203593A JP2023036776A JP 2023036776 A JP2023036776 A JP 2023036776A JP 2022203593 A JP2022203593 A JP 2022203593A JP 2022203593 A JP2022203593 A JP 2022203593A JP 2023036776 A JP2023036776 A JP 2023036776A
- Authority
- JP
- Japan
- Prior art keywords
- prediction
- samples
- prof
- sample
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 128
- 230000003287 optical effect Effects 0.000 title claims abstract description 36
- 230000033001 locomotion Effects 0.000 claims abstract description 151
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims abstract description 99
- 239000013598 vector Substances 0.000 claims abstract description 20
- 239000000523 sample Substances 0.000 description 100
- 238000013461 design Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 34
- 230000008569 process Effects 0.000 description 25
- 238000009795 derivation Methods 0.000 description 22
- 230000002123 temporal effect Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 10
- 238000013139 quantization Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 8
- 238000000638 solvent extraction Methods 0.000 description 7
- 230000002457 bidirectional effect Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 239000013074 reference sample Substances 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000005286 illumination Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 102100029471 WD repeat and FYVE domain-containing protein 2 Human genes 0.000 description 1
- 101710175677 WD repeat and FYVE domain-containing protein 2 Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000009408 flooring Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/513—Processing of motion vectors
-
- 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/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/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
-
- 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/172—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 picture, frame or field
-
- 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/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/527—Global motion vector estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/537—Motion estimation other than block-based
- H04N19/54—Motion estimation other than block-based using feature points or meshes
-
- 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/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- 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/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】オプティカルフローによる予測リファインメント(PROF)の方法を提供する。【解決手段】方法は、エンコーダが、アフィンモードによって符号化されるビデオブロックを取得し、第1・第2参照ピクチャに関連付けられた第1・第2予測サンプルに基づいて、第1・第2水平・垂直勾配値を取得し、第1・第2参照ピクチャに関連付けられた制御点動きベクトル(CPMV)に基づいて、第1・第2水平・垂直動きリファインメントを取得し、第1・第2水平・垂直勾配値と、第1・第2水平・垂直動きリファインメントとに基づいて、第1・第2予測リファインメントを取得し、第1・第2予測サンプル及び第1・第2予測リファインメントに基づいて、リファインされた第1・第2サンプルを取得し、リファインされた第1・第2サンプル及び予測パラメータに基づいて、ビデオブロックの最終予測サンプルを取得する。【選択図】図1
Description
本開示は、ビデオ符号化および圧縮に関する。より具体的には、本開示は、VVC(versatile video coding)規格で検討される2つのインター予測ツールに関する方法および装置、すなわち、PROF(prediction refinement with optical flow)およびBDOF(bi-directional optical flow)に関する。
ビデオデータを圧縮するために、様々なビデオ符号化技術を使用することができる。ビデオ符号化は、一つ以上のビデオ符号化標準に従って実行される。例えば、ビデオ符号化規格は、VVC(versatile video coding)、JEM(joint exploration test model)、H.265/HEVC(high efficiency video coding)、H.264/AVC(advanced video coding)、MPEG(moving picture expert group)符号化などを含む。ビデオ符号化は一般に、ビデオ画像またはシーケンスに存在する冗長性を利用する予測方法(例えば、インター予測、イントラ予測など)を利用する。ビデオ符号化技術の重要な目標はビデオ品質の劣化を回避し、または最小限に抑えながら、ビデオデータをより低いビットレートを使用する形式に圧縮することである。
本開示の例は、PROF(prediction refinement with optical flow)による予測リファインメントのための方法および装置を提供する。
本開示の第1態様によれば、PROF(prediction refinement with optical flow:オプティカルフローによる予測リファインメント)が提供される。この方法は、アフィンモードによって符号化されるビデオブロックを取得し、ビデオブロックに関連する第1参照ピクチャI(0)および第2参照ピクチャI(1)を取得することを含み得る。この方法は、第1参照ピクチャI(0)、第2参照ピクチャI(1)に関連する第1予測サンプルI(0)(i,j)および第2予測サンプルI(1)(i,j)に基づいて、第1水平勾配値および第2垂直勾配値を取得することも含むことができる。本方法は、第1参照ピクチャI(0)および第2参照ピクチャI(1)に関連付けられたCPMV(control point motion vectors:制御点動きベクトル)に基づいて、第1および第2水平および垂直動きリファインメントを得ることを更に含むことができる。本方法は、第1および第2水平および垂直勾配値、ならびに第1および第2水平および垂直動きリファインメントに基づいて、第1および第2予測リファインメントを得ることを含んでもよい。この方法は、第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、ならびに第1および第2予測リファインメントに基づいて、リファインされた第1および第2サンプルを取得することをさらに含むことができる。この方法は、乗算オーバーフローを防止するためにリファインされた第1および第2サンプルおよび予測パラメータを操作することによって、リファインされた第1および第2サンプルに基づいてビデオブロックの最終予測サンプルを取得することを含むことができる。予測パラメータは、WP(weighted prediction:加重予測)のためのパラメータとBCW(biprediction with coding unit(CU)-level weight:符号化ユニットCU(coding unit:符号化ユニット)レベル重みによるバイ予測)のためのパラメータを含むことができる。
本開示の第2態様によれば、コンピューティングデバイスが提供される。このコンピューティングデバイスは、1つ以上のプロセッサと、1つ以上のプロセッサによって実行可能な命令を記憶する非一時的コンピュータ可読メモリと、を含んでもよい。1つ以上のプロセッサは、アフィンモードによって符号化されるビデオブロックを取得し、ビデオブロックに関連する第1参照ピクチャI(0)および第2参照ピクチャI(1)を取得するように構成され得る。1つ以上のプロセッサはまた、第1参照ピクチャI(0)、第2参照ピクチャI(1)に関連付けられた第1予測サンプルI(0)(i,j)および第2予測サンプルI(1)(i,j)に基づいて、第1水平勾配値および第2垂直勾配値を取得するように構成され得る。1つ以上のプロセッサは、第1参照ピクチャI(0)および第2参照ピクチャI(1)に関連するCPMV(control point motion vectors)に基づいて、第1および第2水平および垂直動きリファインメントを取得するように構成され得る。1つ以上のプロセッサは、第1および第2水平および垂直勾配値と、第1および第2水平および垂直動きリファインメントとに基づいて、第1および第2予測リファインメントを取得するようにさらに構成され得る。1つ以上のプロセッサは、第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、ならびに第1および第2予測リファインメントに基づいて、リファインされた第1および第2サンプルを取得するように構成され得る。1つ以上のプロセッサはさらに、乗算オーバーフローを防止するためにリファインされた第1および第2サンプルおよび予測パラメータを操作することによって、リファインされた第1および第2サンプルに基づいてビデオブロックの最終予測サンプルを取得するように構成され得る。予測パラメータは、WPのためのパラメータおよびBCWのためのパラメータを含むことができる。
本開示の第3の態様によれば、命令を格納した非一時的コンピュータ可読記憶媒体が提供される。命令が装置の1つまたは複数のプロセッサによって実行されると、命令は、アフィンモードによって符号化されるビデオブロックを取得し、ビデオブロックに関連する第1参照ピクチャI(0)および第2参照ピクチャI(1)を取得することを装置に実行させ得る。命令は装置に、第1参照ピクチャである第2参照ピクチャに関連する第1予測サンプルおよび第2予測サンプルに基づいて、第1水平勾配値および第2垂直勾配値を取得することを実行させることができる。命令は装置に、第1参照ピクチャI(0)および第2参照ピクチャI(1)に関連するCPMV(control point motion vectors)に基づいて、第1および第2水平および垂直動きリファインメントを取得することを実行させることができる。命令は更に、第1および第2水平および垂直勾配値、並びに第1および第2水平および垂直動きリファインメントに基づいて、第1および第2予測リファインメントを、取得することを装置に行わせることができる。命令は、第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、ならびに第1および第2予測リファインメントに基づいて、リファインされた第1および第2サンプルを取得することを、装置にさらに実行させることができる。命令は装置に、乗算オーバーフローを防ぐためにリファインされた第1および第2サンプルおよび予測パラメータを操作することによって、リファインされた第1および第2サンプルに基づいてビデオブロックの最終予測サンプルを取得することを実行させてもよい。予測パラメータは、WPのためのパラメータおよびBCWのためのパラメータを含んでもよい。
上記の一般的な説明および以下の詳細な説明は、例示的かつ説明的なものにすぎず、本開示を限定することを意図するものではないことを理解されたい。
本明細書に組み込まれ、その一部を構成する添付の図面は本開示と一致する例を示し、説明とともに、本開示の原理を説明する役割を果たす。
次に、例示的な実施形態を詳細に参照し、その例を添付の図面に示す。以下の説明は添付の図面を参照し、異なる図面中の同じ符号は、特に示さない限り、同じまたは類似の要素を表す。例示的な実施形態の以下の説明に記載される実装は、本開示と一致するすべての実装を表すわけではない。むしろ、それらは、添付の特許請求の範囲に記載されるような本開示に関連する態様と一致する装置および方法の単なる例である。
本開示で使用される用語は特定の実施形態を説明するためだけのものであり、本開示を限定することを意図するものではない。本開示および添付の特許請求の範囲で使用されるように、単数形「1つ」などは文脈がそうでないことを明確に示さない限り、複数形も含むことが意図される。また、本明細書で使用される「および/または」という用語は関連する列挙された項目のうちの1つまたは複数の任意のまたはすべての可能な組合せを意味し、含むことが意図されることを理解されたい。
「第1」、「第2」、「第3」などの用語は様々な情報を説明するために本明細書で使用され得るが、情報はこれらの用語によって限定されるべきではないことを理解されたい。これらの用語は、情報の1つのカテゴリを別のカテゴリから区別するためにのみ使用される。例えば、本開示の範囲から逸脱することなく、第1情報を第2情報と呼ぶことができ、同様に、第2情報も第1情報と呼ぶことができる。本明細書で使用されるように、用語「もし、~ならば」は、文脈に応じて、「ときに」または「際に」または「判定に応答して」を意味すると理解されてもよい。
HEVC規格の第1バージョンは2013年10月に完成し、これは、従来の世代のビデオ符号化規格H.264/MPEG AVCと比較して、約50%のビットレート節約または同等の知覚品質を提供する。HEVC規格はその先行技術よりも著しい符号化改善を提供するが、HEVCよりも優れた符号化効率が追加の符号化ツールを用いて達成され得るという証拠がある。これに基づき、VCEGとMPEGの両方が、将来のビデオ符号化標準化のための新しい符号化技術の探索作業を開始した。ITU-T VECGとISO/IEC MPEGが2015年10月に1つのJVET(Joint Video Exploration Team)を結成し、符号化効率の大幅な向上を可能にする高度な技術の研究を開始した。JEM(joint exploration model)と呼ばれる1つの参照ソフトウェアは、HEVC試験モデル(HM)の上にいくつかの追加の符号化ツールを統合することによって、JVETによって維持された。
2017年10月、ITU-TおよびISO/IECは、HEVCを超えたビデオ圧縮に関する共同CfP(Call for Proposals)を発表した。2018年4月には、第10回JVET会議で23のCfP回答を得て評価したところ、約40%のHEVCを超える圧縮効率の向上が示された。このような評価結果を踏まえ、JVETは、VVC(Versatile Video Coding)と呼ばれる新世代ビデオ符号化規格を開発するための新たなプロジェクトを立ち上げた。同月に、VVC試験モデル(VTM)と呼ばれる1つの参照ソフトウェアコードベースが、VVC標準の参照実装を実証するために確立された。
HEVCと同様に、VVCはブロックベースのハイブリッドビデオ符号化フレームワー
クに基づいて構築される。
クに基づいて構築される。
図1は、VVCのためのブロックベースのビデオエンコーダの一般的な図を示す。具体的には、図1は典型的なエンコーダ100を示す。エンコーダ100は、ビデオ入力110、動き補償112、動き推定114、イントラモード/インターモード決定116、ブロック予測子140、加算器128、変換130、量子化132、予測関連情報142、イントラ予測118、ピクチャバッファ120、逆量子化134、逆変換136、加算器126、メモリ124、インループフィルタ122、エントロピー符号化138、およびビットストリーム144を有する。
エンコーダ100において、ビデオフレームは、処理のために複数のビデオブロックに分割される。与えられた各ビデオブロックに対して、インター予測アプローチまたはイントラ予測アプローチのいずれかに基づいて予測が形成される。
ビデオ入力110の一部である現在のビデオブロックと、ブロック予測子140の一部であるその予測子との間の差を表す予測残差は、加算器128から変換器130に送られる。次に、変換係数はエントロピー低減のために、変換130から量子化132に送られる。次に、量子化された係数がエントロピー符号化138に供給されて、圧縮ビデオビットストリームが生成される。図1に示すように、ビデオブロック分割情報、動きベクトル(MV)、参照ピクチャインデックス、およびイントラ予測モードなどのイントラ/インターモード決定116からの予測関連情報142もエントロピー符号化138を介して供給され、圧縮ビットストリーム144に保存される。圧縮ビットストリーム144は、ビデオビットストリームを含む。
エンコーダ100では、予測の目的でピクセルを再構成するために、デコーダ関連の回路も必要である。まず、逆量子化134と逆変換136を通して予測残差を再構成する。この再構成された予測残差をブロック予測子140と組み合わせて、現在のビデオブロックに対してフィルタ処理されていない再構成ピクセルを生成する。
空間予測(または「イントラ予測」)は、現在のビデオブロックと同じビデオフレーム内の既に符号化された隣接ブロック(参照サンプルと呼ばれる)のサンプルからのピクセルを使用して、現在のビデオブロックを予測する。
時間予測(「インター予測」とも呼ばれる)は、既に符号化されたビデオピクチャからの再構成ピクセルを使用して、現在のビデオブロックを予測する。時間的予測は、ビデオ信号に固有の時間的冗長性を低減する。所与の符号化ユニット(CU)または符号化ブロックの時間予測信号は、通常、現在のCUとその時間基準との間の動きの量および方向を示す1つまたは複数のMVによってシグナリングされる。さらに、複数の参照ピクチャがサポートされる場合、1つの参照ピクチャインデックスがさらに送信され、参照ピクチャインデックスは、参照ピクチャストレージ内のどの参照ピクチャから時間予測信号が来るかを識別するために使用される。
動き推定114は、ビデオ入力110およびピクチャバッファ120からの信号を取り込み、動き推定信号である動き補償112に出力する。動き補償112はビデオ入力110、ピクチャバッファ120からの信号、および動き推定114からの動き推定信号を取り込み、動き補償信号であるイントラモード/インターモード決定116に出力する。
空間的および/または時間的予測が実行された後、エンコーダ100内のイントラ/インターモード決定116は例えば、レート歪み最適化法に基づいて、最良の予測モードを選択する。次いで、ブロック予測子140は現在のビデオブロックから減算され、結果と
して生じる予測残差は変換130および量子化132を使用して相関解除される。得られた量子化残差係数は逆量子化134によって逆量子化され、逆変換136によって逆変換されて再構成された残差を形成し、次いで、予測ブロックに加算されて、CUの再構成された信号を形成する。デブロッキングフィルタ、SAO(sample adaptive offset)、および/またはALF(adaptive in-loop filter)などのさらなるインループフィルタリング122を、再構成されたCUがピクチャバッファ120の参照ピクチャストレージに入れられ、将来のビデオブロックを符号化するために使用される前に、再構成されたCUに適用することができる。出力ビデオビットストリーム144を形成するために、符号化モード(インターまたはイントラ)、予測モード情報、動き情報、および量子化された残差係数はすべて、エントロピー符号化ユニット138に送られ、さらに圧縮され、パックされてビットストリームを形成する。
して生じる予測残差は変換130および量子化132を使用して相関解除される。得られた量子化残差係数は逆量子化134によって逆量子化され、逆変換136によって逆変換されて再構成された残差を形成し、次いで、予測ブロックに加算されて、CUの再構成された信号を形成する。デブロッキングフィルタ、SAO(sample adaptive offset)、および/またはALF(adaptive in-loop filter)などのさらなるインループフィルタリング122を、再構成されたCUがピクチャバッファ120の参照ピクチャストレージに入れられ、将来のビデオブロックを符号化するために使用される前に、再構成されたCUに適用することができる。出力ビデオビットストリーム144を形成するために、符号化モード(インターまたはイントラ)、予測モード情報、動き情報、および量子化された残差係数はすべて、エントロピー符号化ユニット138に送られ、さらに圧縮され、パックされてビットストリームを形成する。
図1は、一般的なブロックベースのハイブリッドビデオ符号化システムのブロック図を示す。入力ビデオ信号は、ブロック毎に処理される(符号化ユニット(CU)と呼ばれる)。VTM-1.0では、CUは128×128ピクセルまでであることができる。しかしながら、4分木のみに基づいてブロックを分割するHEVCとは異なり、VVCでは、1つの符号化ツリーユニット(CTU)が4分木/2分木/3分木に基づいて変化するローカル特性に適応するようにCUに分割される。さらに、HEVCにおける多重分割ユニットタイプの概念は除去され、すなわち、CU、予測ユニット(PU)および変換ユニット(TU)の分離はもはやVVCには存在せず、代わりに、各CUは、さらなる分割なしで、予測および変換の両方のための基本ユニットとして常に使用される。マルチタイプツリー構造では、まず、1つのCTUを4分木構造で分割する。次に、各4分木リーフノードは、2分木構造および3分木構造によってさらに分割することができる。
図3A、図3B、図3C、図3D、および図3Eに示すように、5つの分割タイプ、すなわち、4分割、水平2分割、垂直2分割、水平3分割、および垂直3分割がある。
図3Aは、本開示による、マルチタイプツリー構造におけるブロック4分割を示す図である。
図3Bは、本開示による、マルチタイプツリー構造におけるブロック垂直2分割を示す図である。
図3Cは、本開示による、マルチタイプツリー構造におけるブロック水平2分割を示す図である。
図3Dは、本開示による、マルチタイプツリー構造におけるブロック垂直3分割を示す図である。
図3Eは、本開示による、マルチタイプツリー構造におけるブロック水平3分割を示す図である。
図1では、空間予測および/または時間的予測を行ってもよい。空間予測(または「イントラ予測」)は現在のビデオブロックを予測するために、同じビデオピクチャ/スライス内の既に符号化された隣接ブロック(参照サンプルと呼ばれる)のサンプルからのピクセルを使用する。空間予測は、ビデオ信号に固有の空間冗長性を低減する。時間的予測(「インター予測」または「動き補償予測」とも呼ばれる)は、既に符号化されたビデオピクチャからの再構成されたピクセルを使用して、現在のビデオブロックを予測する。時間的予測は、ビデオ信号に固有の時間的冗長性を低減する。所与のCUについての時間予測信号は、通常、現在のCUとその時間基準との間の動きの量および方向を示す1つまたは
複数の動きベクトル(MV)によってシグナリングされる。また、複数の参照ピクチャがサポートされている場合、1つの参照ピクチャインデックスがさらに送信され、参照ピクチャインデックスは、参照ピクチャストア内のどの参照ピクチャから時間予測信号が来るかを識別するために使用される。空間的および/または時間的予測の後、エンコーダ内のモード決定ブロックは例えば、レート歪み最適化法に基づいて、最良の予測モードを選択する。次いで、予測ブロックは現在のビデオブロックから減算され、予測残差は変換を用いて相関解除され、量子化される。量子化残差係数を逆量子化し、逆変換して再構成残差を形成し、それを予測ブロックに再加算してCUの再構成信号を形成する。デブロッキングフィルタ、SAO(sample adaptive offset)およびALF(adaptive in-loop filter)などのさらなるインループフィルタリングを、再構成されたCUが参照ピクチャストアに入れられ、将来のビデオブロックを符号化するために使用される前に、再構成されたCUに適用することができる。出力ビデオビットストリームを形成するために、符号化モード(インターまたはイントラ)、予測モード情報、動き情報、および量子化された残差係数はすべて、エントロピー符号化ユニットに送られ、さらに圧縮され、パックされてビットストリームを形成する。
複数の動きベクトル(MV)によってシグナリングされる。また、複数の参照ピクチャがサポートされている場合、1つの参照ピクチャインデックスがさらに送信され、参照ピクチャインデックスは、参照ピクチャストア内のどの参照ピクチャから時間予測信号が来るかを識別するために使用される。空間的および/または時間的予測の後、エンコーダ内のモード決定ブロックは例えば、レート歪み最適化法に基づいて、最良の予測モードを選択する。次いで、予測ブロックは現在のビデオブロックから減算され、予測残差は変換を用いて相関解除され、量子化される。量子化残差係数を逆量子化し、逆変換して再構成残差を形成し、それを予測ブロックに再加算してCUの再構成信号を形成する。デブロッキングフィルタ、SAO(sample adaptive offset)およびALF(adaptive in-loop filter)などのさらなるインループフィルタリングを、再構成されたCUが参照ピクチャストアに入れられ、将来のビデオブロックを符号化するために使用される前に、再構成されたCUに適用することができる。出力ビデオビットストリームを形成するために、符号化モード(インターまたはイントラ)、予測モード情報、動き情報、および量子化された残差係数はすべて、エントロピー符号化ユニットに送られ、さらに圧縮され、パックされてビットストリームを形成する。
図2は、VVC用のビデオデコーダの一般的なブロック図を示す。具体的には、図2は典型的なデコーダ200のブロック図を示す。デコーダ200は、ビットストリーム210、エントロピー復号化212、逆量子化214、逆変換216、加算器218、イントラ/インターモード選択220、イントラ予測222、メモリ230、インループフィルタ228、動き補償224、ピクチャバッファ226、予測関連情報234、およびビデオ出力232を有する。
デコーダ200は、図1のエンコーダ100内に存在する再構成関連部分に類似している。デコーダ200において、入力ビデオビットストリーム210は量子化された係数レベルおよび予測関連情報を導出するために、エントロピー復号化212を介して最初に復号化される。次いで、量子化された係数レベルは、逆量子化214および逆変換216を介して処理され、再構成された予測残差を得る。イントラ/インターモードセレクタ220で実施されるブロック予測機構は、復号化された予測情報に基づいて、イントラ予測222または動き補償224のいずれかを実行するように構成される。逆変換216からの再構成予測残差とブロック予測機構により生成された予測出力とを加算器218を用いて合計することにより、フィルタ処理されない再構成ピクセルの集合が得られる。
再構成されたブロックは参照ピクチャストアとして機能するピクチャバッファ226に格納される前に、インループフィルタ228をさらに通過することができる。ピクチャバッファ226内の再構成されたビデオは、将来のビデオブロックを予測するために使用されるだけでなく、ディスプレイデバイスを駆動するために送信されてもよい。インループフィルタ228がオンになっている状況では、最終的な再構成ビデオ出力232を導出するために、これらの再構成ピクセルに対してフィルタリング操作が行われる。
図2は、ブロックベースのビデオデコーダの一般的なブロック図を与える。ビデオビットストリームは、最初にエントロピー復号化ユニットでエントロピー復号化される。符号化モードおよび予測情報は予測ブロックを形成するために、空間予測ユニット(イントラ符号化されている場合)または時間予測ユニット(インター符号化されている場合)のいずれかに送られる。残差変換係数は逆量子化ユニットと逆変換ユニットに送られ、残差ブロックを再構成する。次に、予測ブロックと残差ブロックとが加算される。再構成されたブロックは参照ピクチャストアに格納される前に、インループフィルタリングをさらに経ることができる。次に、参照ピクチャストア内の再構成されたビデオは、ディスプレイデバイスを駆動するために送出され、将来のビデオブロックを予測するために使用される。
一般に、VVCに適用される基本的なインター予測技法は、いくつかのモジュールがさらに拡張および/または強化されることを除いて、HEVCと同じに保たれる。特に、全ての先行するビデオ規格について、1つの符号化ブロックは、符号化ブロックが単一予測される場合には1つの単一MVにのみ関連付けられ、符号化ブロックがバイ予測される場合には2つのMVに関連付けられる。従来のブロックベース動き補償のこのような制限のために、小さな動きは、動き補償後もなお予測サンプル内にとどまることができ、従って、動き補償の全体効率に負の影響を与える。MVの粒度とリファインメントの両方を改善するために、オプティカルフローに基づく2つのサンプルワイズリファインメント法、即ち、アフィンモードに対するBDOF(bi-directional optical
flow)とPROF(prediction refinement with optical flow)を、現在、VVC規格に対して検討している。以下では、2つのインター符号化ツールの主な技術的側面を簡単に検討する。
flow)とPROF(prediction refinement with optical flow)を、現在、VVC規格に対して検討している。以下では、2つのインター符号化ツールの主な技術的側面を簡単に検討する。
双方向オプティカルフロー
VVCでは、双方向オプティカルフロー(BDOF)を、バイ予測符号化ブロックの予測サンプルをリファインするために適用した。具体的には図4に示すように、BDOFはバイ予測が使用されるときにブロックベースの動き補償予測のトップで実行される、サンプルワイズの動きリファインメントである。
VVCでは、双方向オプティカルフロー(BDOF)を、バイ予測符号化ブロックの予測サンプルをリファインするために適用した。具体的には図4に示すように、BDOFはバイ予測が使用されるときにブロックベースの動き補償予測のトップで実行される、サンプルワイズの動きリファインメントである。
図4は、本開示によるBDOFモデルの図を示す。
各4×4サブブロックの動きリファインメント(vx,vy)は、BDOFがサブブロックの周りの1つの6×6ウィンドウΩ内で適用された後、L0予測サンプルとL1予測サンプルとの間の差を最小化することによって計算される。具体的には(vx,vy)の値は以下のように導出される。
L字および左右反転したL字は、フロア関数である。clip3(min、max、x)は[min、max]の範囲内の所与の値xをクリッピングする関数である。記号>>はビットごとの右シフト演算を表し、記号<<はビットごとの左シフト演算を表す。thBDOFは、不規則な局所的動きによる伝播エラーを防止するための動きリファインメント閾値であり、1<<<max(5、bit-depth-7)に等しく、bit-depthは、内部ビット深度である。(1)では、以下の通りである。
L字および左右反転したL字は、フロア関数である。clip3(min、max、x)は[min、max]の範囲内の所与の値xをクリッピングする関数である。記号>>はビットごとの右シフト演算を表し、記号<<はビットごとの左シフト演算を表す。thBDOFは、不規則な局所的動きによる伝播エラーを防止するための動きリファインメント閾値であり、1<<<max(5、bit-depth-7)に等しく、bit-depthは、内部ビット深度である。(1)では、以下の通りである。
S1,S2,S3,S5,S6は以下のように算出される。
ここで、
I(k)(i,j)は、リストk、k=0,1の予測信号の座標(i,j)でのサンプル値であり、中レベルの高精度(すなわち、16ビット)で生成される。∂I(k)(i,j)/∂xおよび∂I(k)(i,j)/∂yは、その2つの隣接するサンプル間の差を直接計算することによって得られるサンプルの水平勾配および垂直勾配である。
ここで、
I(k)(i,j)は、リストk、k=0,1の予測信号の座標(i,j)でのサンプル値であり、中レベルの高精度(すなわち、16ビット)で生成される。∂I(k)(i,j)/∂xおよび∂I(k)(i,j)/∂yは、その2つの隣接するサンプル間の差を直接計算することによって得られるサンプルの水平勾配および垂直勾配である。
(1)で導出した動きリファインメントに基づいて、CUの最終バイ予測サンプルは次のように、オプティカルフローモデルに基づいて動き軌道に沿ってL0/L1予測サンプルを補間することによって計算される。
shiftおよびοoffsetは、それぞれ15-bitdepthおよび1<<(14-bitdepth)+2・(1<<13)に等しい、バイ予測のためにL0およびL1予測信号を結合するために適用される右シフト値およびオフセット値である。上記のビット深度制御方法に基づいて、全BDOFプロセスの中間パラメータの最大ビット深度が32ビットを超えず、乗算への最大入力が15ビット以内であること、すなわち、1つの15ビット乗算器がBDOF実施に十分であることが保証される。
shiftおよびοoffsetは、それぞれ15-bitdepthおよび1<<(14-bitdepth)+2・(1<<13)に等しい、バイ予測のためにL0およびL1予測信号を結合するために適用される右シフト値およびオフセット値である。上記のビット深度制御方法に基づいて、全BDOFプロセスの中間パラメータの最大ビット深度が32ビットを超えず、乗算への最大入力が15ビット以内であること、すなわち、1つの15ビット乗算器がBDOF実施に十分であることが保証される。
アフィンモード
HEVCでは、動き補償予測のために並進動きモデルのみを適用される。一方、現実世界では、ズームイン/ズームアウト、回転、パースペクティブモーション、および他の不規則な動きなど、多くの種類の動きがある。VVCでは、アフィン動き補償予測が各インター符号化ブロックに対して1つのフラグをシグナリングすることによって適用され、並進動きモデルまたはアフィン動きモデルがインター予測に適用されるかどうかを示す。現在のVVC設計では、4パラメータアフィンモードおよび6パラメータアフィンモードを含む2つのアフィンモードが1つのアフィン符号化ブロックに対してサポートされる。
HEVCでは、動き補償予測のために並進動きモデルのみを適用される。一方、現実世界では、ズームイン/ズームアウト、回転、パースペクティブモーション、および他の不規則な動きなど、多くの種類の動きがある。VVCでは、アフィン動き補償予測が各インター符号化ブロックに対して1つのフラグをシグナリングすることによって適用され、並進動きモデルまたはアフィン動きモデルがインター予測に適用されるかどうかを示す。現在のVVC設計では、4パラメータアフィンモードおよび6パラメータアフィンモードを含む2つのアフィンモードが1つのアフィン符号化ブロックに対してサポートされる。
4パラメータアフィンモデルは以下のパラメータ、すなわち、それぞれ水平方向および垂直方向の並進動きのための2つのパラメータと、ズーム動きのための1つのパラメータと、両方向の回転動きのための1つのパラメータとを有する。水平ズームパラメータは、垂直ズームパラメータと同じである。水平回転パラメータは、垂直回転パラメータと等しくなる。動きベクトルおよびアフィンパラメータのより良好な適応を達成するために、VVCにおいて、これらのアフィンパラメータは、現在のブロックの左上隅および右上隅に位置する2つのMV(制御点動きベクトル(CPMV)とも呼ばれる)に変換される。図5Aおよび図5Bに示すように、ブロックのアフィンモーションフィールドは、2つの制御点MV(V0、V1)によって記述される。
図5Aは、本開示による、4パラメータアフィンモデルの図を示す。
図5Bは、本開示による4パラメータアフィンモデルの図を示す。
6パラメータアフィンモードは、それぞれ水平および垂直方向の並進動きのための2つのパラメータ、ズーム動きのための1つのパラメータおよび水平方向の回転動きのための1つのパラメータ、ズーム動きのための1つのパラメータおよび垂直方向の回転動きのための1つのパラメータを有する。6パラメータアフィン動きモデルは、3つのCPMVで3つのMVで符号化される。
図6は、本開示による6パラメータアフィンモデルの図を示す。
図6に示すように、1つの6パラメータアフィンブロックの3つの制御点は、ブロックの左上、右上、左下隅に位置する。左上の制御点での動きは並進移動動きに関連し、右上の制御点での動きは水平方向の回転とズーム動きに関連し、左下の制御点での動きは垂直方向の回転とズーム動きに関連する。4パラメータアフィンモーションモデルと比較して、6パラメータの水平方向の回転とズーム動きは、垂直方向の動きと同じでないことがある。(V0、V1、V2)を図6の現在のブロックの左上隅、右上隅、左下隅のMVであると仮定すると、それぞれのサブブロックの動きベクトル(vx,vy)は、以下のように制御点で3つのMVを用いて導出される。
アフィンモードのオプティカルフローによる予測リファインメント(PROF)
アフィン動き補償精度を改善するために、PROFは、現在、オプティカルフローモデルに基づいてサブブロックベースのアフィン動き補償をリファインする現行VVCで検討されている。具体的には、サブブロックベースのアフィン動き補償を行った後、一つのアフィンブロックの輝度予測サンプルを、オプティカルフロー方程式に基づいて導出された一つのサンプルリファインメント値によって修正する。詳細には、PROFの動作が以下の4つのステップとして要約することができる。
アフィン動き補償精度を改善するために、PROFは、現在、オプティカルフローモデルに基づいてサブブロックベースのアフィン動き補償をリファインする現行VVCで検討されている。具体的には、サブブロックベースのアフィン動き補償を行った後、一つのアフィンブロックの輝度予測サンプルを、オプティカルフロー方程式に基づいて導出された一つのサンプルリファインメント値によって修正する。詳細には、PROFの動作が以下の4つのステップとして要約することができる。
ステップ1:サブブロックベースのアフィン動き補償は、4パラメータアフィンモデルについて(6)で、および6パラメータアフィンモデルについて(7)で導出されるようなサブブロックMVを使用してサブブロック予測I(i,j)を生成するために実行される。
勾配を計算するために、予測サンプルの1つの追加の行/列が、1つのサブブロックの各サイドで生成される必要がある。メモリ帯域幅および複雑さを低減するために、拡張境界上のサンプルは追加の補間プロセスを回避するために、参照ピクチャ内の最も近い整数ピクセル位置からコピーされる。
ステップ3:輝度予測リファインメント値は、以下によって計算される。
△v(i,j)は、サンプル位置(i,j)に対して計算され、v(i,j)によって表されるピクセルMVと、ピクセル(i,j)が位置するサブブロックのサブブロックMVとの間の差である。さらに、現在のPROF設計では、予測リファインメントをオリジナル予測サンプルに追加した後、リファインされた予測サンプルの値を15ビット以内にクリッピングするために、1つのクリッピング動作が実行される。すなわち、以下の通りである。
I(i,j)およびIr(i,j)は、それぞれ、位置(i,j)におけるオリジナル予測サンプルおよびリファインされた予測サンプルである。
△v(i,j)は、サンプル位置(i,j)に対して計算され、v(i,j)によって表されるピクセルMVと、ピクセル(i,j)が位置するサブブロックのサブブロックMVとの間の差である。さらに、現在のPROF設計では、予測リファインメントをオリジナル予測サンプルに追加した後、リファインされた予測サンプルの値を15ビット以内にクリッピングするために、1つのクリッピング動作が実行される。すなわち、以下の通りである。
I(i,j)およびIr(i,j)は、それぞれ、位置(i,j)におけるオリジナル予測サンプルおよびリファインされた予測サンプルである。
図7は、本開示による、アフィンモードのためのPROFプロセスを示す。
アフィンモデルパラメータとサブブロック中心に対するピクセル位置はサブブロックごとに変わらないので、△v(i,j)は、最初のサブブロックに対して計算でき、同じCU内の他のサブブロックに対して再利用できる。サンプル位置(i,j)からサンプルが属するサブブロックの中心までの水平および垂直オフセットを△xおよび△yとすると、△v(i,j)を以下のように導出することができる。
6パラメータアフィンモデルでは、以下の通りである。
(v0x,v0y),(v1x,v1y),(v2x,v2y)は現在の符号化ブロックの左上、右上、および左下の制御点MVであり、wおよびhはブロックの幅および高さである。既存のPROF設計では、MV差△vxおよび△vyは常に1/32‐pelの精度で導出される。
(v0x,v0y),(v1x,v1y),(v2x,v2y)は現在の符号化ブロックの左上、右上、および左下の制御点MVであり、wおよびhはブロックの幅および高さである。既存のPROF設計では、MV差△vxおよび△vyは常に1/32‐pelの精度で導出される。
局所照明補償
局所照明補償(LIC)は、時間的に隣接するピクチャ間に存在する局所照明変化の問題に対処するために使用される符号化ツールである。1対の重みおよびオフセットパラメータが参照サンプルに適用されて、1つの現在のブロックの予測サンプルが得られる。一般的な数学モデルは以下のように与えられる。
Pr[x+v]は動きベクトルvによって示される参照ブロックで、[α,β]は参照ブロックの対応する重みとオフセットパラメータの対であり、P[x]は最終予測ブロックである。重みおよびオフセットパラメータの対は現在のブロックのテンプレート(すなわち、隣接する再構成されたサンプル)およびテンプレートの参照ブロック(現在のブロックの動きベクトルを使用して導出される)に基づいて、LLMSE(least linear mean square error)アルゴリズムを使用して推定される。テンプレートサンプルとテンプレートの参照サンプルとの間の平均二乗差を最小化することによって、αおよびβの数学的表現は、以下のように導出することができる。
局所照明補償(LIC)は、時間的に隣接するピクチャ間に存在する局所照明変化の問題に対処するために使用される符号化ツールである。1対の重みおよびオフセットパラメータが参照サンプルに適用されて、1つの現在のブロックの予測サンプルが得られる。一般的な数学モデルは以下のように与えられる。
Pr[x+v]は動きベクトルvによって示される参照ブロックで、[α,β]は参照ブロックの対応する重みとオフセットパラメータの対であり、P[x]は最終予測ブロックである。重みおよびオフセットパラメータの対は現在のブロックのテンプレート(すなわち、隣接する再構成されたサンプル)およびテンプレートの参照ブロック(現在のブロックの動きベクトルを使用して導出される)に基づいて、LLMSE(least linear mean square error)アルゴリズムを使用して推定される。テンプレートサンプルとテンプレートの参照サンプルとの間の平均二乗差を最小化することによって、αおよびβの数学的表現は、以下のように導出することができる。
Iはテンプレート中のサンプルの数を表す。Pc[xi]は現在のブロックのテンプレートのi番目のサンプルであり、Pr[xi]は動きベクトルvに基づくi番目のテンプレートサンプルの参照サンプルである。
各予測方向(L0またはL1)に対して多くとも1つの動きベクトルを含む通常のインターブロックに適用されることに加えて、LICは、1つの符号化ブロックが複数のより小さいサブブロックにさらに分割され、各サブブロックが異なる動き情報に関連付けられ得るアフィンモード符号化ブロックにも適用される。アフィンモード符号化ブロックのL
ICのための参照サンプルを導出するために、図16Aおよび16B(後述)に示すように、1つのアフィン符号化ブロックの最上位テンプレートの参照サンプルは最上位サブブロック行の各サブブロックの動きベクトルを使用してフェッチされ、一方、左側テンプレートの参照サンプルは左側サブブロック列のサブブロックの動きベクトルを使用してフェッチされる。その後、(12)と同様のLLMSE導出方法を適用して、合成テンプレートに基づいてLICパラメータを導出する。
ICのための参照サンプルを導出するために、図16Aおよび16B(後述)に示すように、1つのアフィン符号化ブロックの最上位テンプレートの参照サンプルは最上位サブブロック行の各サブブロックの動きベクトルを使用してフェッチされ、一方、左側テンプレートの参照サンプルは左側サブブロック列のサブブロックの動きベクトルを使用してフェッチされる。その後、(12)と同様のLLMSE導出方法を適用して、合成テンプレートに基づいてLICパラメータを導出する。
図16Aは、本開示による、アフィンモードのためのテンプレートサンプルを導出するための図を示す。図は、Cur Frame1620およびCur CU1622を含む。Cur Frame1620は、現在のフレームである。Cur CU 1622は、現在の符号化ユニットである。
図16Bは、アフィンモードのためのテンプレートサンプルを導出するための図を示す。図は、Ref Frame1640、Col CU1642、A Ref1643、B
Ref1644、C Ref1645、D Ref1646、E Ref1647、F
Ref1648、およびG Ref1649を含む。Ref Frame1640は参照フレームである。Col CU1642は、並置された符号化ユニットである。A Ref1643、B Ref1644、C Ref1645、D Ref1646、E Ref1647、F Ref1648、G Ref1649は参照サンプルである。
Ref1644、C Ref1645、D Ref1646、E Ref1647、F
Ref1648、およびG Ref1649を含む。Ref Frame1640は参照フレームである。Col CU1642は、並置された符号化ユニットである。A Ref1643、B Ref1644、C Ref1645、D Ref1646、E Ref1647、F Ref1648、G Ref1649は参照サンプルである。
アフィンモードに対するオプティカルフローによる予測リファインメントの非効率性
PROFはアフィンモードの符号化効率を高めることができるが、その設計はまだ更に改善できる。特に、PROFおよびBDOFの両方がオプティカルフローコンセプトに基づいて構築されることを考えると、PROFがハードウェアの実装を容易にするためにBDOFの現存するロジックを最大限に活用できるように、PROFおよびBDOFの設計をできるだけ調和させることが極めて望ましい。このような考察に基づいて、現在のPROF設計とBDOF設計との間のインタラクションに関する以下の非効率性が、本開示で識別される。
PROFはアフィンモードの符号化効率を高めることができるが、その設計はまだ更に改善できる。特に、PROFおよびBDOFの両方がオプティカルフローコンセプトに基づいて構築されることを考えると、PROFがハードウェアの実装を容易にするためにBDOFの現存するロジックを最大限に活用できるように、PROFおよびBDOFの設計をできるだけ調和させることが極めて望ましい。このような考察に基づいて、現在のPROF設計とBDOF設計との間のインタラクションに関する以下の非効率性が、本開示で識別される。
1.「アフィンモードのオプティカルフローによる予測リファインメント」で説明したように、式(8)において、勾配の精度は内部ビット深度に基づいて決定される。一方、MV差、すなわち、△vxおよび△vyは、常に1/32-pelの精度で導出される。これに対応して、式(9)に基づいて、導出されたPROFリファインメントの精度は内部ビット深度に依存する。しかしながら、BDOFと同様に、PROFはより高いPROF導出精度を維持するために、中レベルの高ビット深度(すなわち、16ビット)で予測サンプル値の上に適用される。したがって、内部符号化ビット深度にかかわらず、PROFによって導出される予測リファインメントの精度は中間予測サンプル、すなわち16ビットの精度と一致しなければならない。言い換えると、既存のPROF設計におけるMV差分と勾配の表現ビット深度は予測サンプル精度(すなわち16ビット)と比較して正確な予測リファインメントを導出するために完全に整合していない。一方、式(1)、(4)および(8)の比較に基づいて、既存のPROFおよびBDOFはサンプル勾配およびMV差を表すために異なる精度を使用する。先に指摘したように、このような統一されていない設計は既存のBDOFロジックを再使用することができないので、ハードウェアにとって望ましくない。
2.「アフィンモードのオプティカルフローによる予測リファインメント」の項で検討したように、一つのカレントアフィンブロックがバイ予測されるとき、PROFをリストL0およびL1の予測サンプルに別々に適用し、それから、強化されたL0およびL1予測信号を平均化して最終バイ予測信号を生成する。反対に、各予測方向に対するPROFリファインメントを別々に導出する代わりに、BDOFは予測リファインメントを一旦導出
し、それは次に、結合L0およびL1予測信号を強化するために適用される。図8および図9(後述)はバイ予測のための現在のBDOFおよびPROFのワークフローを比較する。実際のコーデックハードウェアパイプライン設計では通常、より多くの符号化ブロックを並列に処理できるように、異なる主要な符号化/復号化モジュールを各パイプラインステージに割り当てる。しかしながら、BDOFワークフローとPROFワークフローとの間の差異のために、BDOFとPROFとによって共有されることができる1つの同じパイプライン設計を有することを困難にする可能性があり、これは実用的なコーデック実装には不利である。
し、それは次に、結合L0およびL1予測信号を強化するために適用される。図8および図9(後述)はバイ予測のための現在のBDOFおよびPROFのワークフローを比較する。実際のコーデックハードウェアパイプライン設計では通常、より多くの符号化ブロックを並列に処理できるように、異なる主要な符号化/復号化モジュールを各パイプラインステージに割り当てる。しかしながら、BDOFワークフローとPROFワークフローとの間の差異のために、BDOFとPROFとによって共有されることができる1つの同じパイプライン設計を有することを困難にする可能性があり、これは実用的なコーデック実装には不利である。
図8は本開示によるBDOFのワークフローを示す。ワークフロー800がL0動き補償810、L1動き補償820、およびBDOF830を含む。L0動き補償810は例えば、前の参照ピクチャからの動き補償サンプルのリストであり得る。前の参照ピクチャはビデオブロック内の現在のピクチャから前の参照ピクチャである。例えば、L1動き補償820は次の参照ピクチャからの動き補償サンプルのリストとすることができる。次の参照ピクチャがビデオブロック内の現在のピクチャの後の参照ピクチャである。BDOF830が図4に関して上述したように、L1動き補償810およびL1動き補償820から動き補償サンプルを取り込み、予測サンプルを出力する。
図9は本開示による既存のPROFのワークフローを示す。ワークフロー900がL0動き補償910、L1動き補償920、L0 PROF930、L1 PROF940、および平均化960を含む。L0動き補償910は例えば、前の参照ピクチャからの動き補償サンプルのリストであり得る。前の参照ピクチャはビデオブロック内の現在のピクチャから前の参照ピクチャである。例えば、L1動き補償920は次の参照ピクチャからの動き補償サンプルのリストとすることができる。次の参照ピクチャがビデオブロック内の現在のピクチャの後の参照ピクチャである。L0 PROF930が前述の図7に関して説明したように、L0動き補償910からL0動き補償サンプルを取り込み、動きリファインメント値を出力する。L1 PROF940は上述の図7に関して説明したように、L1動き補償920からL1動き補償サンプルを取り込み、動きリファインメント値を出力する。平均化960はL0 PROF930およびL1 PROF940の動きリファインメント値出力を平均化する。
3.BDOFおよびPROFの両方について、勾配は現在の符号化ブロック内の各サンプルについて計算される必要があり、これはブロックの各サイドで予測サンプルの1つの追加の行/列を生成することを必要とする。サンプル補間の付加的な計算の複雑さを回避するために、ブロックの周りの拡張領域内の予測サンプルは整数位置で(すなわち、補間なしで)参照サンプルから直接コピーされる。しかし、既存の設計ではBDOFとPROFの勾配値を生成するために、異なる位置の整数サンプルが選択されている。具体的にはBDOFでは予測サンプルの左側(水平勾配の場合)および予測サンプルの上側(垂直勾配の場合)に位置する整数参照サンプルが使用され、PROFでは予測サンプルに最も近い整数参照サンプルが勾配計算に使用される。ビット深度表現問題と同様に、このような統一されていない勾配計算方法はハードウェアコーデックの実装にとっても望ましくない。
4.先に指摘したように、PROFの動機は、各サンプルのMVと、サンプルが属するサブブロックの中心で導出されるサブブロックMVとの間の小さなMV差を補償することである。現在のPROF設計によれば、PROFは、1つの符号化ブロックがアフィンモードによって予測されるときに常に呼び出される。しかしながら、式(6)および(7)に示すように、1つのアフィンブロックのサブブロックMVは、制御点MVから導出される。したがって、制御点MV間の差が比較的小さい場合、各サンプル位置におけるMVは一貫しているべきである。そのような場合、PROFを適用する利点は非常に限定される可能性があるので、性能/複雑さのトレードオフを考慮すると、PROFを行う価値がない
場合がある。
場合がある。
アフィンモードに対するオプティカルフローによる予測リファインメントの改良
本開示では、ハードウェアコーデック実装を容易にするために、既存のPROF設計を改善し、単純化するための方法が提供される。特に、既存のBDOFロジックをPROFと最大限に共有するために、BDOFとPROFの設計を調和させることに特に注意する。一般に、本開示で提案される技術の主な態様を以下に要約する。
本開示では、ハードウェアコーデック実装を容易にするために、既存のPROF設計を改善し、単純化するための方法が提供される。特に、既存のBDOFロジックをPROFと最大限に共有するために、BDOFとPROFの設計を調和させることに特に注意する。一般に、本開示で提案される技術の主な態様を以下に要約する。
1.1つ以上の統一設計を達成しながらPROFの符号化効率を改善するために、BDOFおよびPROFによって使用されるサンプル勾配とMV差の表現ビット深さを統一する1つの方法を提案する。
2.ハードウェアパイプライン設計を容易にするために、バイ予測のためにPROFのワークフローをBDOFのワークフローと調和させることが提案される。具体的にはL0およびL1に対して別々に予測リファインメントを導出する既存のPROFとは異なり、提案した方法はL0およびL1の組み合わせ予測信号に適用される予測リファインメントを一旦導出する。
3.BDOFおよびPROFによって使用される勾配値を計算するために、整数参照サンプルの導出を調和させる2つの方法を提案する。
4.計算量を減らすために、ある条件が満たされたときにアフィン符号化ブロックのためのPROFプロセスを適応的に無効にする早期終了法を提案する。
PROF勾配とMV差のビット深度表現設計の改善
「問題記述」の項で分析したように、MV差の表現ビット深度と現在のPROF内のサンプル勾配は、正確な予測リファインメントを導き出すために整列されない。さらに、サンプル勾配の表現ビット深度およびMV差はBDOFとPROFとの間で一貫性がなく、これはハードウェアにとって不利である。本節ではBDOFのビット深度表現法をPROFに拡張することにより、1つの改良型ビット深度表現法を提案する。具体的には提案する方法では各サンプル位置における水平および垂直勾配を以下のように計算する。
「問題記述」の項で分析したように、MV差の表現ビット深度と現在のPROF内のサンプル勾配は、正確な予測リファインメントを導き出すために整列されない。さらに、サンプル勾配の表現ビット深度およびMV差はBDOFとPROFとの間で一貫性がなく、これはハードウェアにとって不利である。本節ではBDOFのビット深度表現法をPROFに拡張することにより、1つの改良型ビット深度表現法を提案する。具体的には提案する方法では各サンプル位置における水平および垂直勾配を以下のように計算する。
加えて、1つのサンプル位置からサンプルが属するサブブロックの中心までの1/4-ペル精度で表される水平および垂直オフセット△xおよび△yであると仮定すると、サンプル位置での対応するPROF MV差△v(x,y)は以下のように導出される。
dMvBitsは、BDOFプロセスによって使用される勾配値のビット深度であり、dMvBits=max(5,(bit-depth-7))+1である。式(13)および(14)において、c、d、e、およびfは、アフィン制御点MVに基づいて導出されるアフィンパラメータである。具体的には、4パラメータアフィンモデルでは以下の通りである。
dMvBitsは、BDOFプロセスによって使用される勾配値のビット深度であり、dMvBits=max(5,(bit-depth-7))+1である。式(13)および(14)において、c、d、e、およびfは、アフィン制御点MVに基づいて導出されるアフィンパラメータである。具体的には、4パラメータアフィンモデルでは以下の通りである。
6パラメータアフィンモデルでは、以下の通りである。
(v0x,v0y)(v1x,v1y)(v2x,v2y)は、1/16-pel精度で表される現在の符号化ブロックの左上、右上、および左下の制御点MVであり、wおよびhは、ブロックの幅および高さである。
(v0x,v0y)(v1x,v1y)(v2x,v2y)は、1/16-pel精度で表される現在の符号化ブロックの左上、右上、および左下の制御点MVであり、wおよびhは、ブロックの幅および高さである。
上記の説明では、式(13)および(14)に示すように、一対の固定右シフトを適用して、勾配およびMV差の値を計算する。実際には、(13)および(14)に異なるビットごとの右シフトを適用して、中間の計算精度と内部PROF導出プロセスのビット幅との間の異なるトレードオフのために、勾配およびMV差の様々な表現精度を達成することができる。例えば、入力ビデオが多くのノイズを含む場合、導出された勾配は、各サンプルにおける真の局所的な水平/垂直勾配値を表すのに信頼できないことがある。このような場合、勾配よりも多くのビットを使用してMV差を表現する方が意味がある。一方、入力ビデオが定常的な動きを示す場合、アフィンモデルによって導出されるMV差は非常に小さくなければならない。そうであれば、高精度MV差を使用することで、導出されたPROFリファインメントの精度を上げるための追加の有益性を得ることはできない。言い換えると、このような場合、勾配値を表すためにより多くのビットを使用する方が有益である。上記の考察に基づいて、本開示の一実施形態ではPROFの勾配およびMV差を計算するために、以下で提案される1つの一般的な方法、具体的には各サンプル位置における水平勾配および垂直勾配を仮定することは隣接する予測サンプルの差にna右シフトを適用することによって計算される。
サンプル位置における対応するPROF MV差△v(x,y)は、以下のように計算されるべきである。
△xおよび△yは、1つのサンプル位置からサンプルが属するサブブロックの中心までの
1/4-pel精度で表される水平および垂直オフセットであり、c、d、e、およびfは、1/16-pelアフィン制御点MVに基づいて導出されるアフィンパラメータである。最後に、サンプルの最終的なPROFリファインメントは、以下のように計算される。
サンプル位置における対応するPROF MV差△v(x,y)は、以下のように計算されるべきである。
△xおよび△yは、1つのサンプル位置からサンプルが属するサブブロックの中心までの
1/4-pel精度で表される水平および垂直オフセットであり、c、d、e、およびfは、1/16-pelアフィン制御点MVに基づいて導出されるアフィンパラメータである。最後に、サンプルの最終的なPROFリファインメントは、以下のように計算される。
本開示の別の実施形態では、別のPROFビット深度制御方法が以下のように提案される。この方法では、各サンプル位置における水平勾配および垂直勾配が隣接する予測サンプルの差分値に右シフトのnaビットを適用することによって、(18)のように依然として計算される。サンプル位置における対応するPROF MV差△v(x,y)は、以下のように計算されるべきである。
さらに、PROF導出全体を適切な内部ビット深度に保つために、クリッピングが、以下のように導出されたMV差に適用される。
limitは2のnb乗に等しい閾値であり、clip3(min、max、x)は[min、max]の範囲内の所与の値xをクリッピングする関数である。一例ではnbの値は2max(5,bitdepth-7)であるように設定される。最後に、サンプルのPROFリファインメントは、以下のように計算される。
limitは2のnb乗に等しい閾値であり、clip3(min、max、x)は[min、max]の範囲内の所与の値xをクリッピングする関数である。一例ではnbの値は2max(5,bitdepth-7)であるように設定される。最後に、サンプルのPROFリファインメントは、以下のように計算される。
バイ予測のためのPROFおよびBDOFの統合ワークフロー
上述したように、1つのアフィン符号化ブロックがバイ予測される場合、現在のPROFは一方向に適用される。より具体的には、PROFサンプルリファインメントが別々に導出され、リストL0およびL1内の予測サンプルに適用される。その後、リストL0およびL1からそれぞれリファインされた予測信号が平均化され、ブロックの最終バイ予測信号が生成される。これは、サンプルリファインメントが導出され、バイ予測信号に適用されるBDOF設計とは対照的である。BDOFとPROFのバイ予測ワークフロー間のこのような差は、実用的なコーデックパイプライン設計には不利であり得る。
上述したように、1つのアフィン符号化ブロックがバイ予測される場合、現在のPROFは一方向に適用される。より具体的には、PROFサンプルリファインメントが別々に導出され、リストL0およびL1内の予測サンプルに適用される。その後、リストL0およびL1からそれぞれリファインされた予測信号が平均化され、ブロックの最終バイ予測信号が生成される。これは、サンプルリファインメントが導出され、バイ予測信号に適用されるBDOF設計とは対照的である。BDOFとPROFのバイ予測ワークフロー間のこのような差は、実用的なコーデックパイプライン設計には不利であり得る。
ハードウェアパイプライン設計を容易にするために、本開示による1つの単純化方法は2つの予測リファインメント方法のワークフローが調和されるように、PROFのバイ予測プロセスを修正することである。具体的には、各予測方向に対するリファインメントを別々に適用する代わりに、提案したPROF法はリストL0およびL1の制御点MVに基づいて、予測リファインメントを一旦導出する。次に、品質を強化するために、導出した予測リファインメントを、結合されたL0およびL1予測信号に適用する。具体的には、
式(14)で導出したMV差に基づいて、1つのアフィン符号化ブロックの最終バイ予測サンプルを、以下のように提案した方法によって計算する。
shiftおよびοoffsetは、(15-bit-depth)および1<<(14-bit-depth)+(2<<13)に等しく、バイ予測のためのL0およびL1予測信号を結合するために適用される右シフト値およびオフセット値である。さらに、(18)に示すように、既存のPROF設計におけるクリッピング動作((9)に示すように)は、提案した方法で除去される。
式(14)で導出したMV差に基づいて、1つのアフィン符号化ブロックの最終バイ予測サンプルを、以下のように提案した方法によって計算する。
shiftおよびοoffsetは、(15-bit-depth)および1<<(14-bit-depth)+(2<<13)に等しく、バイ予測のためのL0およびL1予測信号を結合するために適用される右シフト値およびオフセット値である。さらに、(18)に示すように、既存のPROF設計におけるクリッピング動作((9)に示すように)は、提案した方法で除去される。
図12は、本開示による、提案されたバイ予測PROF方法が適用される場合のPROFプロセスの図を示す。PROFプロセス1200は、L0動き補償1210、L1動き補償1220、およびバイ予測PROF1230を含む。例えば、L0動き補償1210は、前の参照ピクチャからの動き補償サンプルのリストであり得る。前の参照ピクチャは、ビデオブロック内の現在のピクチャから前の参照ピクチャである。L1動き補償1220は例えば、次の参照ピクチャからの動き補償サンプルのリストとすることができる。次の参照ピクチャは、ビデオブロック内の現在のピクチャの後の参照ピクチャである。バイ予測PROF1230は上述のように、L1動き補償1210およびL1動き補償1220から動き補償サンプルを取り込み、バイ予測サンプルを出力する。
図12は、提案されたバイ予測PROF法が適用された場合の対応するPROFプロセスを示す。PROFプロセス1200は、L0動き補償1210、L1動き補償1220、およびバイ予測PROF1230を含む。例えば、L0動き補償1210は、前の参照ピクチャからの動き補償サンプルのリストであり得る。前の参照ピクチャは、ビデオブロック内の現在のピクチャから前の参照ピクチャである。L1動き補償1220は例えば、次の参照ピクチャからの動き補償サンプルのリストとすることができる。次の参照ピクチャは、ビデオブロック内の現在のピクチャの後の参照ピクチャである。バイ予測PROF1230は上述のように、L1動き補償1210およびL1動き補償1220から動き補償サンプルを取り込み、バイ予測サンプルを出力する。
ハードウェアパイプライン設計のための提案した方法の潜在的な利益を実証するために、図13は、BDOFと提案したPROFの両方が適用されるときのパイプラインステージを図示するための1つの例を示す。図13において、1つのインターブロックの復号化処理は、主に3つのステップを含む。
1.符号化ブロックのMVを解析/復号化し、参照サンプルをフェッチする。
2.符号化ブロックのL0および/またはL1予測信号を生成する。
3.符号化ブロックが非アフィンモードによって予測される場合には、BDOFに基づいて生成されたバイ予測サンプルのサンプルごとのリファインメントを実行し、符号化ブロックがアフィンモードによって予測される場合には、PROFに基づいて実行する。
2.符号化ブロックのL0および/またはL1予測信号を生成する。
3.符号化ブロックが非アフィンモードによって予測される場合には、BDOFに基づいて生成されたバイ予測サンプルのサンプルごとのリファインメントを実行し、符号化ブロックがアフィンモードによって予測される場合には、PROFに基づいて実行する。
図13は、本開示による、BDOFおよび提案されたPROFの両方が適用される場合のパイプラインステージの例を示す。図13は、ハードウェアパイプライン設計のための提案された方法の潜在的な利点を示す。パイプラインステージ1300は、解析/復号化MVおよびフェッチ参照サンプル1310、動き補償1320、BDOF/PROF13
30を含む。パイプラインステージ1300は、ビデオブロックBLK0、BKL1、BKL2、BKL3、およびBLK4を符号化する。各ビデオブロックはMVの解析/復号化を開始し、参照サンプル1310をフェッチし、動き補償1320に移動し、次に動き補償1320、BDOF/PROF1330に順次移動する。これは、BLK0は、BLK0が動き補償1320に移動するまで、パイプラインステージ1300の処理を開始しないことを意味する。時間がT0からT1、T2、T3、およびT4になるにつれて、すべてのステージおよびビデオブロックについて同じである。
30を含む。パイプラインステージ1300は、ビデオブロックBLK0、BKL1、BKL2、BKL3、およびBLK4を符号化する。各ビデオブロックはMVの解析/復号化を開始し、参照サンプル1310をフェッチし、動き補償1320に移動し、次に動き補償1320、BDOF/PROF1330に順次移動する。これは、BLK0は、BLK0が動き補償1320に移動するまで、パイプラインステージ1300の処理を開始しないことを意味する。時間がT0からT1、T2、T3、およびT4になるにつれて、すべてのステージおよびビデオブロックについて同じである。
図13において、1つのインターブロックの復号化処理は、主に3つのステップを含む。
第1に、符号化ブロックのMVを解析/復号化し、参照サンプルをフェッチする。
第2に、符号化ブロックのL0および/またはL1予測信号を生成する。
第3に、符号化ブロックが1つの非アフィンモードによって予測される場合には、BDOFに基づいて生成されたバイ予測サンプルのサンプルワイズリファインメントを実行し、符号化ブロックがアフィンモードによって予測される場合にはPROFに基づいて実行する。
第1に、符号化ブロックのMVを解析/復号化し、参照サンプルをフェッチする。
第2に、符号化ブロックのL0および/またはL1予測信号を生成する。
第3に、符号化ブロックが1つの非アフィンモードによって予測される場合には、BDOFに基づいて生成されたバイ予測サンプルのサンプルワイズリファインメントを実行し、符号化ブロックがアフィンモードによって予測される場合にはPROFに基づいて実行する。
図13に示すように、提案された調和方法が適用された後、BDOFとPROFの両方がバイ予測サンプルに直接適用される。BDOFおよびPROFが異なるタイプの符号化ブロックに適用される(すなわち、BDOFが非アフィンブロックに適用され、PROFがアフィンブロックに適用される)と仮定すると、2つの符号化ツールを同時に呼び出すことはできない。したがって、それらの対応する復号化処理は、同じパイプラインステージを共有することによって行うことができる。これはBDOFとPROFの両方に同じパイプラインステージを割り当てることが困難である既存のPROF設計よりも効率的であり、これはそれらの異なるバイ予測のワークフローによる。
以上では、提案手法はBDOFとPROFのワークフローの調和のみを考慮しているが、既存の設計では2つの符号化ツールの基本演算ユニットも異なるサイズで行われている。たとえば、BDOFの場合、1つの符号化ブロックは、サイズがWs×Hsの複数のサブブロックに分割される。ここで、Ws=min(W、16)およびHs=min(H、16)である。ここで、WおよびHは符号化ブロックの幅と高さである。勾配計算およびサンプルリファインメント導出のようなBODF演算は、各サブブロックに対して独立して実行される。一方、前述したように、アフィン符号化ブロックは4×4のサブブロックに分割され、各サブブロックには、4パラメータまたは6パラメータアフィンモデルのいずれかに基づいて導出された1つの個々のMVが割り当てられる。PROFはアフィンブロックにのみ適用されるため、その基本演算ユニットは4×4サブブロックである。バイ予測ワークフロー問題と同様に、PROFのためにBDOFと異なる基本演算ユニットサイズを使用することも、ハードウェア実装にとって不都合であり、BDOFおよびPROFが復号化プロセス全体の同じパイプラインステージを共有することを困難にする。このような問題を解決するために、一実施形態では、アフィンモードのサブブロックサイズをBDOFのサブブロックサイズと同じにすることが提案される。
提案手法によれば、1つの符号化ブロックがアフィンモードによって符号化されると、それはWs×Hsのサイズをもつサブブロックに分割される。ここで、Ws=min(W,16)およびHs=min(H,16)である。ここで、WおよびHは符号化ブロックの幅および高さである。各サブブロックには、1つの個別のMVが割り当てられ、1つの独立したPROF演算ユニットとみなされる。独立したPROF演算ユニットは、その上のPROF動作が隣接するPROF演算ユニットからの情報を参照することなく実行されることを保証することに言及する価値がある。具体的には1つのサンプル位置におけるPROF MV差がサンプル位置におけるMVと、サンプルが位置するPROF演算ユニッ
トの中心におけるMVとの間の差として計算され、PROF導出によって使用される勾配は各PROF演算ユニットに沿ってサンプルをパディングすることによって計算される。
トの中心におけるMVとの間の差として計算され、PROF導出によって使用される勾配は各PROF演算ユニットに沿ってサンプルをパディングすることによって計算される。
提案された方法の主張された利点は主に、以下の側面を含む。1)動き補償およびBDOF/PROF改良の両方のための統合基本演算ユニットサイズを有する簡略化されたパイプラインアーキテクチャ、2)アフィン動き補償のための拡大されたサブブロックサイズによるメモリ帯域幅使用の低減、3)分数サンプル補間のサンプル当たりの計算複雑さの低減。
提案した方法による計算量の削減(すなわち項目3))のために、アフィン符号化ブロックに対する既存の6タップ補間フィルタ制約を除去できることに言及すべきである。代わりに、非アフィン符号化ブロックのためのデフォルトの8タップ補間は、アフィン符号化ブロックのためにも使用される。この場合の全体的な計算量は、既存のPROF設計(6タップ補間フィルタを持つ4x4サブブロックに基づく)と依然として有利に比較できる。
BDOFおよびPROFの勾配導出の調和
前述のように、BDOFおよびPROFの両方は、ブロックの各サイドの予測サンプルの1つの追加の行/列にアクセスする、現在の符号化ブロック内の各サンプルの勾配を計算する。追加の補間の複雑さを回避するために、ブロック境界の周りの拡張領域における必要な予測サンプルは、整数参照サンプルから直接コピーされる。しかし、「問題記述」の項で指摘したように、異なる位置の整数サンプルを使用して、BDOFおよびPROFの勾配値を計算する。
前述のように、BDOFおよびPROFの両方は、ブロックの各サイドの予測サンプルの1つの追加の行/列にアクセスする、現在の符号化ブロック内の各サンプルの勾配を計算する。追加の補間の複雑さを回避するために、ブロック境界の周りの拡張領域における必要な予測サンプルは、整数参照サンプルから直接コピーされる。しかし、「問題記述」の項で指摘したように、異なる位置の整数サンプルを使用して、BDOFおよびPROFの勾配値を計算する。
一様設計を達成するために、BDOFおよびPROFが用いる勾配導出法を統合するために、次の二つの方法を提案する。第1方法では、BDOFと同じになるようにPROFの勾配導出法を整列させることを提案する。具体的には、第1方法によって、拡張領域内の予測サンプルを生成するために使用される整数位置は分数サンプル位置をフロアダウンすることによって決定され、すなわち、選択された整数サンプル位置は分数サンプル位置(水平勾配の場合)の左に、かつ分数サンプル位置(垂直勾配の場合)の上に配置される。第2方法ではBDOFの勾配導出方法をPROFと同じにすることが提案されており、より詳細には第2方法が適用される場合、予測サンプルに最も近い整数参照サンプルが勾配計算に使用される。
図14は、本開示による、BDOFの勾配導出方法を使用する例を示す。図14において、白い円は整数位置における参照サンプルを表し、三角は現在のブロックの分数予測サンプルを表し、グレーの円は現在のブロックの拡張領域を満たすために使用される整数参照サンプルを表す。
図15は、本開示による、PROFの勾配導出方法を使用する例を示す。図15において、白い円は整数位置における参照サンプルを表し、三角は現在のブロックの分数予測サンプルを表し、グレーの円は現在のブロックの拡張領域を満たすために使用される整数参照サンプルを表す。
図14および図15は第1方法(図12)および第2方法(図13)がそれぞれ適用される場合に、BDOFおよびPROFの勾配の導出に使用される対応する整数サンプル位置を示す。図14および図15において、白い円は整数位置における参照サンプルを表し、三角は現在のブロックの分数予測サンプルを表し、パターン化された円は勾配導出のために現在のブロックの拡張領域を満たすために使用される整数参照サンプルを表す。
さらに、既存のBDOFおよびPROF設計によれば、予測サンプルパディングは、異なる符号化レベルで行われる。具体的にはBDOFの場合、パディングは各sbWidth×sbHeightサブブロックの境界に沿って適用され、ここで、sbWidth=min(CUWidth,16)およびsbHeight=min(CUHeight,16)である。CUWidthおよびCUHeightは、CUの幅および高さである。一方、PROFのパディングは、4×4サブブロックレベルで常に適用される。上記の説明ではパディングサブブロックサイズは依然として異なるが、パディング方法のみがBDOFとPROFとの間で統合される。これはまた、BDOFおよびPROFのパディングプロセスのために異なるモジュールが実装される必要があることを考慮すると、実際のハードウェア実装には使い勝手が良くない。もう1つの統合設計を達成するために、BDOFおよびPROFのサブブロックパディングサイズを統一することが提案される。本開示の一実施形態では、4×4レベルでBDOFの予測サンプルパディングを適用することが提案される。具体的にはこの方法によって、CUはまず、複数の4×4サブブロックに分割され、各4×4サブブロックの動き補償の後、上/下および左/右境界に沿った拡張サンプルは対応する整数サンプル位置をコピーすることによってパディングされる。図18A、18B、18C、および18Dは提案されたパディング方法が1つの16x16BDOF CUに適用される1つの例を示す。ここで、破線は4x4サブブロック境界を表し、グレーバンドは各4x4サブブロックのパディングされたサンプルを表す。
図18Aは本開示による、16×16のBDOF CUに適用される提案されたパディング方法を示し、ここで、破線は、左上4×4サブブロック境界1820を表す。
図18Bは16×16のBDOF CUに適用される提案されたパディング方法を示し、ここで、破線は、本開示による、右上4×4サブブロック境界1840を表す。
図18Cは本開示による、16×16BDOF CUに適用される提案されたパディング方法を示し、破線は、左下4×4サブブロック境界1860を示す。
図18Dは本開示による、16×16のBDOF CUに適用される提案されたパディング方法を示し、破線は、右下4×4サブブロック境界1880を示す。
BDOF、PROF、DMVRを有効/無効にするためのハイレベルシグナリング構文
既存のBDOFおよびPROF設計では、2つの異なるフラグがシーケンスパラメータセット(SPS)においてシグナリングされ、2つの符号化ツールの有効化/無効化を別々に制御する。しかしながら、BDOFとPROFとの間の類似性のために、1つの同じ制御フラグによってBDOFおよびPROFをハイレベルから有効化および/または無効化することがより望ましい。このような考察に基づき、表1に示すように、SPSではsps_bdof_prof_enabled_flagと呼ばれる1つの新しいフラグが導入されている。
既存のBDOFおよびPROF設計では、2つの異なるフラグがシーケンスパラメータセット(SPS)においてシグナリングされ、2つの符号化ツールの有効化/無効化を別々に制御する。しかしながら、BDOFとPROFとの間の類似性のために、1つの同じ制御フラグによってBDOFおよびPROFをハイレベルから有効化および/または無効化することがより望ましい。このような考察に基づき、表1に示すように、SPSではsps_bdof_prof_enabled_flagと呼ばれる1つの新しいフラグが導入されている。
表1に示すように、BDOFの有効化および無効化はsps_bdof_prof_enabled_flagにのみ依存する。フラグが1に等しいとき、BDOFは、シーケンスのビデオコンテンツを符号化するために有効になる。それ以外の場合、sps_bdof_prof_enabled_flagが0に等しいとき、BDOFは適用されない。一方、sps_bdof_prof_enabled_flagに加えて、SPSレベルのアフィン制御フラグ、すなわちsps_affine_enabled_flagも条件付きでPROFを有効化および無効化するために使用される。sps_bdof_prof_enabled_flagおよびsps_affine_enabled_flagの両方が1に等しい場合、PROFはアフィンモードで符号化されるすべての符号化ブロックに対して有効化される。フラグsps_bdof_prof_enabled_
flagが1に等しく、sps_affine_enabled_flagが0に等しい場合、PROFは無効になる。
表1 提案されているBDOF/PROF有効化/無効化フラグを使用したSPS構文テーブルの変更
flagが1に等しく、sps_affine_enabled_flagが0に等しい場合、PROFは無効になる。
表1 提案されているBDOF/PROF有効化/無効化フラグを使用したSPS構文テーブルの変更
sps_bdof_prof_enabled_flagは、オプティカルフローによる予測リファインメントおよび双方向オプティカルフローを有効にするかどうかを指定する。sps_bdof_prof_enabled_flagが0に等しい場合、オプティカルフローによる予測リファインメントおよび双方向オプティカルフローの両方が無効化される。sps_bdof_prof_enabled_flagが1に等しく、sps_affine_enabled_flagが1に等しい場合、オプティカルフローによる予測リファインメントおよび双方向オプティカルフローの両方が有効になる。それ以外の場合(sps_bdof_prof_enabled_flagが1に等しく、sps_affine_enabled_flagが0に等しい場合)、双方向オプティカルフローが有効になり、オプティカルフローによる予測リファインメントが無効になる。
sps_bdof_prof_dmvr_slice_preset_flagは、slice_disable_bdof_prof_dmvr_flagがスライスレベルでいつシグナリングされるかを指定する。フラグが1に等しい場合、現在のシーケンスパラメータセットを参照するスライスごとに構文slice_disable_bdof_prof_dmvr_flagがシグナリングされる。それ以外の場合(sps_bdof_prof_dmvr_slice_present_flagが0の場合)、構文s
lice_disabled_bdof_prof_dmvr_flagはスライスレベルでシグナリングされない。フラグがシグナリングされない場合、0であると推測される。
lice_disabled_bdof_prof_dmvr_flagはスライスレベルでシグナリングされない。フラグがシグナリングされない場合、0であると推測される。
上記のSPS BDOF/PROF構文に加えて、スライスレベルで別の制御フラグを導入することが提案されている。すなわち、BDOF、PROFおよびDMVRを無効にするためにslice_disable_bdof_prof_dmvr_flagが導入されている。SPSフラグsps_bdof_prof_dmvr_slice_present_flagは、DMVRまたはBDOF/PROF spsレベル制御フラグのいずれかが真の場合にSPSでシグナリングされ、slice_disable_bdof_prof_dmvr_flagの存在を示すために使用される。存在する場合、slice_disable_bdof_dmvr_flagが通知される。表2は、提案された構文が適用された後の修正されたスライスヘッダ構文テーブルを示す。
表2 提案されているBDOF/PROF有効化/無効化フラグを使用したSPS構文テーブルの変更
表2 提案されているBDOF/PROF有効化/無効化フラグを使用したSPS構文テーブルの変更
制御点MV差に基づくPROFの早期終了
現在のPROF設計によれば、PROFは、1つの符号化ブロックがアフィンモードによって予測されるときに常に呼び出される。しかしながら、式(6)および(7)に示すように、1つのアフィンブロックのサブブロックMVは、制御点MVから導出される。したがって、制御点MV間の差が比較的小さい場合、各サンプル位置におけるMVは一貫しているべきである。このような場合、PROFを適用することの利点は、非常に限定され得る。従って、PROFの平均計算複雑性をさらに低減するために、1つの4×4サブブロック内でサンプルワイズMVとサブブロックワイズMVの間の最大MV差に基づいてPROFベースのサンプルリファインメントを適応的にスキップすることを提案した。1つの4×4サブブロック内部のサンプルのPROF MV差の値はサブブロック中心に対して対称であるため、最大水平および垂直PROF MV差は以下の式(10)に基づいて計算できる。
現在のPROF設計によれば、PROFは、1つの符号化ブロックがアフィンモードによって予測されるときに常に呼び出される。しかしながら、式(6)および(7)に示すように、1つのアフィンブロックのサブブロックMVは、制御点MVから導出される。したがって、制御点MV間の差が比較的小さい場合、各サンプル位置におけるMVは一貫しているべきである。このような場合、PROFを適用することの利点は、非常に限定され得る。従って、PROFの平均計算複雑性をさらに低減するために、1つの4×4サブブロック内でサンプルワイズMVとサブブロックワイズMVの間の最大MV差に基づいてPROFベースのサンプルリファインメントを適応的にスキップすることを提案した。1つの4×4サブブロック内部のサンプルのPROF MV差の値はサブブロック中心に対して対称であるため、最大水平および垂直PROF MV差は以下の式(10)に基づいて計算できる。
本開示によれば、MV差がPROFプロセスをスキップするのに十分小さいかどうかを判定する際に、異なるメトリックを使用することができる。
一例では、式(19)に基づいて、絶対最大水平MV差と絶対最大垂直MV差との和が1つの所定の閾値よりも小さい場合、PROFプロセスをスキップすることができる。即
ち、以下の通りである。
一例では、式(19)に基づいて、絶対最大水平MV差と絶対最大垂直MV差との和が1つの所定の閾値よりも小さい場合、PROFプロセスをスキップすることができる。即
ち、以下の通りである。
MAX(a、b)は、入力値aとbとの間の大きい方の値を返す関数である。
上記の2つの例に加えて、本開示の思想は、MV差がPROFプロセスをスキップするのに十分小さいかどうかを判定する際に他のメトリックが使用される場合にも適用可能である。
上記の方法では、MV差の大きさに基づいてPROFをスキップする。一方、MV差に加えて、PROFサンプルリファインメントも、1つの動き補償ブロック内の各サンプル位置における局所勾配情報に基づいて計算される。高周波数の詳細が少ない予測ブロック(フラットな領域など)では、導出されたサンプルリファインメントの値が小さくなるように、勾配値は小さくなる傾向がある。これを考慮して、本開示の別の実施形態によれば、十分に高い周波数情報を含むブロックの予測サンプルにのみPROFを適用することが提案される。
ブロックに対してPROFプロセスを呼び出す価値があるように、ブロックが十分に高い周波数の情報を含むかどうかを判定する際に、異なるメトリックを使用することができる。一例では、決定が予測ブロック内のサンプルの勾配の平均の大きさ(すなわち、絶対値)に基づいて行われる。平均の大きさが1つの閾値よりも小さい場合、予測ブロックは平坦領域として分類され、PROFは適用されるべきではなく、そうでない場合、予測ブロックは、PROFが依然として適用可能である十分な高周波詳細を含むと考えられる。別の例では、予測ブロック内のサンプルの勾配の最大の大きさを使用することができる。最大の大きさが1つの閾値より小さい場合、PROFはブロックについてスキップされるべきである。さらに別の例では、予測ブロックの最大サンプル値と最小サンプル値との差分Imax-Iminを使用して、PROFがブロックに適用されるかどうかを決定することができる。このような差分値が閾値より小さい場合、PROFはブロックについてスキップされる。本開示の思想は所与のブロックが十分な高周波数情報を含むか否かを決定する際に、いくつかの他のメトリックが使用される場合にも適用可能であることに留意されたい。
アフィンモードのLICとPROFと間のインタラクションの対処
現在のブロックの隣接する再構成されたサンプル(すなわち、テンプレート)は線形モデルパラメータを導出するためにLICによって使用されるので、1つのLIC符号化ブロックの復号化はその隣接するサンプルの完全な再構成に依存する。このような相互依存性のために、実際のハードウェア実装では、LICが隣接する再構成サンプルがLICパラメータ導出のために利用可能になる再構成段階で実行される必要がある。ブロック再構成は連続的に(すなわち、1つずつ)実行されなければならないので、スループット(すなわち、単位時間当たりに並列に実行され得る作業量)は、LIC符号化ブロックに他の符号化方法を結合して適用するときに考慮すべき1つの重要な問題である。この節では、
PROFとLICの両方がアフィンモードに対して有効である場合のインタラクションを扱うために、二つの方法を提案した。
現在のブロックの隣接する再構成されたサンプル(すなわち、テンプレート)は線形モデルパラメータを導出するためにLICによって使用されるので、1つのLIC符号化ブロックの復号化はその隣接するサンプルの完全な再構成に依存する。このような相互依存性のために、実際のハードウェア実装では、LICが隣接する再構成サンプルがLICパラメータ導出のために利用可能になる再構成段階で実行される必要がある。ブロック再構成は連続的に(すなわち、1つずつ)実行されなければならないので、スループット(すなわち、単位時間当たりに並列に実行され得る作業量)は、LIC符号化ブロックに他の符号化方法を結合して適用するときに考慮すべき1つの重要な問題である。この節では、
PROFとLICの両方がアフィンモードに対して有効である場合のインタラクションを扱うために、二つの方法を提案した。
本開示の第1実施形態では、1つのアフィン符号化ブロックに対して、PROFモードとLICモードとを排他的に適用することが提案される。前述のように、既存の設計では、PROFがシグナリングなしにすべてのアフィンブロックに暗黙的に適用され、一方、1つのLICフラグはLICモードが1つのアフィンブロックに適用されるかどうかを示すために、符号化ブロックレベルでシグナリングまたは継承される。本発明の方法によれば、1つのアフィンブロックのLICフラグの値に基づいてPROFを条件付きで適用することが提案される。フラグが1に等しい場合、LIC重みおよびオフセットに基づいて符号化ブロック全体の予測サンプルを調整することによって、LICのみが適用される。そうでない場合(すなわち、LICフラグが0に等しい場合)、PROFは、アフィン符号化ブロックに適用され、オプティカルフローモデルに基づいてそれぞれのサブブロックの予測サンプルをリファインする。
図17Aは、PROFおよびLICが同時に適用されることを禁止されている、提案された方法に基づく復号化プロセスの1つの例示的なフローチャートを示す。
図17Aは本開示による、PROFおよびLICが許可されない、提案された方法に基づく復号化プロセスの図を示す。復号化プロセス1720は、LICフラグがオン?1722ステップ、LIC1724、およびPROF1726を含む。LICフラグがオン?1722はLICフラグがセットされているか否かを決定し、その決定にしたがって次のステップをとるステップである。LIC1724は、LICフラグがセットされているLICのアプリケーションである。LICフラグがセットされていない場合、PROF1726はPROFのアプリケーションである。
本開示の第2実施形態では、1つのアフィンブロックの予測サンプルを生成するために、PROFの後にLICを適用することが提案される。具体的にはサブブロックベースのアフィン動き補償が行われた後、予測サンプルはPROFサンプルリファインメントに基づいてリファインされ、次いで、LICはPROF調整された予測サンプルに(テンプレートおよびその参照サンプルから導出されるように)重みおよびオフセットのペアを適用することによって行われ、以下のように、ブロックの最終予測サンプルを取得する。
ここで、Pr[x+v]は動きベクトルvによって示される現在のブロックの参照ブロックであり、αおよびβはLIC重みおよびオフセットであり、P[x]は最終予測ブロックであり、△I[x]は、(17)で導出されるPROFリファインメントである。
ここで、Pr[x+v]は動きベクトルvによって示される現在のブロックの参照ブロックであり、αおよびβはLIC重みおよびオフセットであり、P[x]は最終予測ブロックであり、△I[x]は、(17)で導出されるPROFリファインメントである。
図17Bは、本開示による、PROFおよびLICが適用される復号化プロセスの図を示す。復号化プロセス1760は、アフィン動き補償1762、LICパラメータ導出1764、PROF1766、およびLICサンプル調整1768を含む。アフィン動き補償1762はアフィン動きを適用し、LICパラメータ導出1764およびPROF1766への入力である。LICパラメータ導出1764は、LICパラメータを導出するために適用される。PROF1766はPROFが適用されている。LICサンプル調整1768は、PROFと組み合わせられているLIC重みおよびオフセットパラメータである。
図17Bは、第2方法を適用した場合の復号化ワークフローの一例を示す図である。図
17Bに示すように、LICはテンプレート(すなわち、隣接する再構成サンプル)を使用してLIC線形モデルを計算するので、LICパラメータは、隣接する再構成サンプルが利用可能になるとすぐに導出することができる。これは、PROFリファインメントとLICパラメータ導出とを同時に実行することができることを意味する。
17Bに示すように、LICはテンプレート(すなわち、隣接する再構成サンプル)を使用してLIC線形モデルを計算するので、LICパラメータは、隣接する再構成サンプルが利用可能になるとすぐに導出することができる。これは、PROFリファインメントとLICパラメータ導出とを同時に実行することができることを意味する。
LIC重みおよびオフセット(すなわち、αおよびβ)ならびにPROFリファインメント(すなわち、△i[x])は、一般に浮動小数点数である。フレンドリなハードウェア実装のために、これらの浮動小数点演算は、通常、1つの整数値と、それに続く右シフト演算と、多数のビットとの乗算として実装される。現行のLICおよびPROF設計では、2つのツールが別々に設計されているため、2つの異なる右シフトがそれぞれNLICビットとNPROFビットによって、2つのステージで適用される。
本開示の第3実施形態によれば、PROFおよびLICがアフィン符号化ブロックに結合して適用される場合の符号化利得を改善するために、LICベースおよびPROFベースのサンプル調整を高精度で適用することが提案される。これは、それらの2つの右シフト演算を1つに結合し、それを最後に適用して、現在のブロックの最終予測サンプル((12)に示すように)を導出することによって行われる。
PROFと重み付き予測およびBCW(bi-prediction with CU-level weight)とを組み合わせた場合の乗算オーバーフロー問題への対処
VVC作業ドラフトにおける現行のPROF設計によれば、PROFはWP(weighted prediction)と結合して適用できる。
VVC作業ドラフトにおける現行のPROF設計によれば、PROFはWP(weighted prediction)と結合して適用できる。
図10は、本開示によるビデオ信号を復号化するためのPROF(prediction refinement with optical flow)の方法を示す。この方法は例えば、デコーダに適用することができる。
ステップ1010において、デコーダは、ビデオ信号のアフィンモードによって符号化されるビデオブロックに関連する第1参照ピクチャI(0)および第2参照ピクチャI(1)を取得することができる。
ステップ1012では、デコーダが第1参照ピクチャI(0)、第2参照ピクチャI(1)に関連付けられた第1予測サンプルI(0)(i,j)および第2予測サンプルI(1)(i,j)に基づいて、第1および第2水平勾配値および垂直勾配値を得ることができる。
ステップ1014において、デコーダは、第1参照ピクチャI(0)および第2参照ピクチャI(1)に関連付けられたCPMV(control point motion
vectors)に基づいて、第1および第2水平および垂直動きリファインメントを取得することができる。
vectors)に基づいて、第1および第2水平および垂直動きリファインメントを取得することができる。
ステップ1016では、デコーダが第1および第2水平および垂直勾配値、ならびに第1および第2水平および垂直動きのリファインメントに基づいて、第1および第2予測リファインメントを得ることができる。
ステップ1018において、デコーダは、第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、ならびに第1および第2予測リファインメントに基づいて、リファインされた第1および第2サンプルを取得し得る。
ステップ1020において、デコーダは乗算オーバーフローを防止するために、リファ
インされた第1および第2サンプルおよび予測パラメータを操作することによって、リファインされた第1および第2サンプルに基づいて、ビデオブロックの最終予測サンプルを取得し得る。予測パラメータは、WP(weighted prediction)のためのパラメータと符号化ユニット(CU)レベル重み(BCW)によるバイ予測のためのパラメータを含むことができる。
インされた第1および第2サンプルおよび予測パラメータを操作することによって、リファインされた第1および第2サンプルに基づいて、ビデオブロックの最終予測サンプルを取得し得る。予測パラメータは、WP(weighted prediction)のためのパラメータと符号化ユニット(CU)レベル重み(BCW)によるバイ予測のためのパラメータを含むことができる。
具体的には、1つのアフィンCUの予測信号を合成する際には以下の手順で生成すればよい。
1. 位置(x,y)における各サンプルについて、PROFに基づいてL0予測リファインメント△I0(x,y)を計算し、リファインメントをオリジナルL0予測サンプルI0(x,y)に加える。すなわち、以下の通りである。
I0’(x,y)はリファインされたサンプルであり、gh0(x,y)、gv0(x,y)、△vx0(x,y)、△vy0(x,y)は、位置(x,y)におけるL0水平/垂直勾配およびL0水平/垂直動きリファインメントである。
I0’(x,y)はリファインされたサンプルであり、gh0(x,y)、gv0(x,y)、△vx0(x,y)、△vy0(x,y)は、位置(x,y)におけるL0水平/垂直勾配およびL0水平/垂直動きリファインメントである。
2. 位置(x,y)における各サンプルについて、PROFに基づいてL1予測リファインメント△I1(x,y)を計算し、リファインメントをオリジナルL1予測サンプルI1(x,y)に加える。すなわち、以下の通りである。
I1’(x,y)はリファインされたサンプルであり、gh1(x,y)、gv1(x,y)、△vx1(x,y)、△vy1(x,y)は位置(x,y)におけるL1水平/垂直勾配およびL1水平/垂直動きリファインメントである。
I1’(x,y)はリファインされたサンプルであり、gh1(x,y)、gv1(x,y)、△vx1(x,y)、△vy1(x,y)は位置(x,y)におけるL1水平/垂直勾配およびL1水平/垂直動きリファインメントである。
3. リファインされたL0およびL1予測サンプルを結合する。すなわち、以下の通りである。
W0およびW1は、WPおよびBCWの重みであり、shiftおよびOffsetはWPおよびBCWのバイ予測のためのL0およびL1予測信号の重み付け平均に適用されるオフセットおよび右シフトである。WPのパラメータはW0、W1、Offsetを含み、BCWのパラメータはW0、W1、shiftを含む。
W0およびW1は、WPおよびBCWの重みであり、shiftおよびOffsetはWPおよびBCWのバイ予測のためのL0およびL1予測信号の重み付け平均に適用されるオフセットおよび右シフトである。WPのパラメータはW0、W1、Offsetを含み、BCWのパラメータはW0、W1、shiftを含む。
上記の式から分かるように、サンプルごとのリファインメント、すなわち、△I0(x,y)、△I1(x,y)によって、PROFの後の予測サンプル(すなわち、I0’(x,y)およびI1’(x,y)のダイナミックレンジはオリジナル予測サンプル(すなわち、I0(x,y)およびI1(x,y))のダイナミックレンジよりも1つ大きくなる。リファインされた予測サンプルがWPおよびBCW重み係数で乗算されると仮定すると、必要とされる乗算器の長さを増加させる。例えば、現在の設計に基づいて、内部符号
化ビット深度が8~12ビットの範囲である場合、予測信号I0(x,y)およびI1(x,y)のダイナミックレンジは16ビットである。しかし、PROFの後、予測信号I0’(x,y)およびI1’(x,y)のダイナミックレンジは17ビットである。したがって、PROFが適用されると、16ビット乗算オーバーフロー問題を引き起こす可能性がある。
化ビット深度が8~12ビットの範囲である場合、予測信号I0(x,y)およびI1(x,y)のダイナミックレンジは16ビットである。しかし、PROFの後、予測信号I0’(x,y)およびI1’(x,y)のダイナミックレンジは17ビットである。したがって、PROFが適用されると、16ビット乗算オーバーフロー問題を引き起こす可能性がある。
図11は、本開示によるビデオブロックの最終予測サンプルを得ることを示す。この方法は例えば、デコーダに適用することができる。
ステップ1112において、デコーダは、第1シフト値だけ右にシフトすることによって、リファインされた第1および第2サンプルを調整することができる。
ステップ1114において、デコーダは、リファインされた第1および第2サンプルを結合することによって、結合された予測サンプルを得ることができる。
ステップ1116において、デコーダは、結合された予測サンプルを第1シフト値だけ左シフトすることによって、ビデオブロックの最終予測サンプルを得ることができる。
このようなオーバーフロー問題を解決するために、以下に複数の方法が提案される。
1.第1方法では、PROFが1つのアフィンCUに適用されるとき、WPおよびBCWを無効にすることが提案される。
2.第2方法では、オリジナル予測サンプルに加算する前に、導出されたサンプルリファインメントに1つのクリッピング操作を適用して、リファインされた予測サンプルI0’(x,y)およびI1’(x,y)のダイナミックレンジがオリジナル予測サンプルI0(x,y)およびI1(x,y)のダイナミックビット深度と同じダイナミックビット深度を有するようにすることが提案される。具体的には、このような方法によって、(23)および(24)におけるサンプルリファインメント△I0(x,y)および△I1(x,y)は以下に示すように、1つのクリッピング操作を導入することによって修正される。
dI=dIbase+max(0,BD-12)であり、BDは内部符号化ビット深度、dIbaseはベースビット深度の値である。一実施形態では、dIbaseの値を14に設定することが提案される。別の実施形態では、値を13に設定することが提案される。
dI=dIbase+max(0,BD-12)であり、BDは内部符号化ビット深度、dIbaseはベースビット深度の値である。一実施形態では、dIbaseの値を14に設定することが提案される。別の実施形態では、値を13に設定することが提案される。
3.第3方法では、リファインされたサンプルがオリジナル予測サンプルのダイナミックレンジと同じイナミックレンジを有するようにサンプルリファインメントをクリッピングする代わりに、リファインされた予測サンプルを直接クリッピングすることが提案される。具体的には第3方法によって、リファインされたL0およびL1サンプルは以下のよう
になる。
dR=16+max(0,BD-12)(または同等にmax(16,BD+4))であり、BDは内部符号化ビット深度である。
になる。
dR=16+max(0,BD-12)(または同等にmax(16,BD+4))であり、BDは内部符号化ビット深度である。
4. 第4方法ではWPおよびBCWの前に、リファインされたL0およびL1予測サンプルに特定の右シフトを適用することが提案され、次いで、最終予測サンプルは追加の左シフトによってオリジナル精度に調整される。具体的には、最終予測サンプルが以下のように導出される。
nbは適用される追加のビットシフトの数であり、PROFサンプルリファインメントの対応するダイナミックレンジに基づいて決定されてもよい。
nbは適用される追加のビットシフトの数であり、PROFサンプルリファインメントの対応するダイナミックレンジに基づいて決定されてもよい。
上記の方法は、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、コントローラ、マイクロコントローラ、マイクロプロセッサ、または他の電子構成要素を含む1つまたは複数の回路を含む装置を使用して実装され得る。装置は上述の方法を実行するために、他のハードウェアまたはソフトウェアコンポーネントと組み合わせて回路を使用することができる。上記で開示された各モジュール、サブモジュール、ユニット、またはサブユニットは、1つまたは複数の回路を使用して少なくとも部分的に実装され得る。
図19は、ユーザインターフェース1960に結合されたコンピューティング環境1910を示す。コンピューティング環境1910は、データ処理サーバの一部とすることができる。コンピューティング環境1910は、プロセッサ1920、メモリ1940、およびI/Oインターフェース1950を含む。
プロセッサ1920は、典型的には表示、データ取得、データ通信、および画像処理に関連する動作のような、コンピューティング環境1910の全体的な動作を制御する。プロセッサ1920は上述の方法におけるステップのすべてまたは一部を実行する命令を実行するために、1つ以上のプロセッサを含んでもよい。さらに、プロセッサ1920は、プロセッサ1920と他のコンポーネントとの間のインタラクションを容易にする1つ以上のモジュールを含んでもよい。プロセッサは、セントラルプロセッシングユニット(CPU)、マイクロプロセッサ、シングルチップマシン、GPUなどである。
メモリ1940はコンピューティング環境1910の動作をサポートするために、様々なタイプのデータを記憶するように構成される。メモリ1940は、所定のソフトウェア1942を含むことができる。そのようなデータの例は、コンピューティング環境1910上で動作する任意のアプリケーションまたは方法のための命令、ビデオデータセット、画像データなどを含む。メモリ1940は、スタティックランダムアクセスメモリ(SRAM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、消去可能プログラマブルリードオンリメモリ(EPROM)、プログラマブルリードオンリメモリ
(PROM)、リードオンリメモリ(ROM)、磁気メモリ、フラッシュメモリ、磁気ディスクまたは光ディスクなど、任意のタイプの揮発性または不揮発性メモリ装置、またはそれらの組合せを使用することによって実装され得る。
(PROM)、リードオンリメモリ(ROM)、磁気メモリ、フラッシュメモリ、磁気ディスクまたは光ディスクなど、任意のタイプの揮発性または不揮発性メモリ装置、またはそれらの組合せを使用することによって実装され得る。
I/Oインターフェース1950は、プロセッサ1920と、キーボード、クリックホイール、ボタンなどの周辺インターフェースモジュールとの間のインターフェースを提供する。ボタンはホームボタン、スタートスキャンボタン、およびストップスキャンボタンを含むことができるが、これらに限定されない。I/Oインターフェース1950は、エンコーダおよびデコーダに結合することができる。
いくつかの実施形態では、上述の方法を実行するために、コンピューティング環境1910内のプロセッサ1920によって実行可能な、メモリ1940に含まれるような複数のプログラムを含む、非一時的コンピュータ可読記憶媒体も提供される。例えば、非一時的コンピュータ可読記憶媒体は、ROM、RAM、CD-ROM、磁気テープ、フロッピー(登録商標)ディスク、光データストレージ等であってもよい。
非一時的コンピュータ可読記憶媒体は1つ以上のプロセッサを有するコンピューティングデバイスによって実行される複数のプログラムを記憶しており、複数のプログラムは、1つ以上のプロセッサによって実行されると、コンピューティングデバイスに上述の動き予測方法を実行させる。
いくつかの実施形態では、コンピューティング環境1910が上記の方法を実行するために、1つまたは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、グラフィカルプロセッシング(GPU)、コントローラ、マイクロコントローラ、マイクロプロセッサ、または他の電子構成要素を用いて実装され得る。
本開示の説明は例示の目的で提示されており、網羅的であることも、本開示に限定されることも意図されていない。前述の説明および関連する図面に提示された教示の恩恵を受ける当業者には、多くの修正形態、変形形態、および代替実施形態が明らかになるのであろう。
実施例は本開示の原理を説明し、他の当業者が様々な実施のための本開示を理解し、意図される特定の使用に適した様々な修正を伴う基礎となる原理および様々な実施を最良に利用することを可能にするために選択され、説明された。したがって、本開示の範囲は開示された実装の特定の例に限定されるべきではなく、修正および他の実装は本開示の範囲内に含まれることが意図されることを理解されたい。
Claims (14)
- エンコーダが実行する、PROF(prediction refinement with optical flow)の方法であって、
アフィンモードによって符号化されるビデオブロックを取得し、
前記ビデオブロックに関連付けられた第1参照ピクチャおよび第2参照ピクチャを取得し、
前記第1参照ピクチャおよび前記第2参照ピクチャに関連付けられた第1予測サンプルI(0)(i,j)および第2予測サンプルI(1)(i,j)に基づいて、第1および第2水平および垂直勾配値を取得し、
前記第1参照ピクチャおよび前記第2参照ピクチャに関連付けられたCPMV(control point motion vector)に基づいて、第
1および第2水平および垂直動きリファインメントを取得し、
前記第1および第2水平および垂直勾配値と、前記第1および第2水平および垂直動きリファインメントとに基づいて、第1および第2予測リファインメントを取得し、
前記第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、および前記第1および第2予測リファインメントに基づいて、リファインされた第1および第2サンプルを取得し、
前記リファインされた第1および第2サンプルおよび予測パラメータに基づいて、前記ビデオブロックの最終予測サンプルを取得し、
前記予測パラメータは、WP(weighted prediction)のためのパラメータまたはBCW(bi-prediction with coding unit(CU)-level weight)のためのパラメータを含む、
PROF(prediction refinement with optical
flow)の方法。 - 前記第1および第2予測リファインメントを取得することは、
前記第1および第2水平および垂直勾配値および第1および第2水平および垂直動きリファインメントに基づいて前記第1および第2予測リファインメントを取得し、
予測リファインメント閾値に基づいて、前記第1および第2予測リファインメントをクリッピングする、
請求項1に記載の方法。 - 前記予測リファインメント閾値は符号化ビット深度プラス1または13のいずれかの最大値に等しい、
請求項2に記載の方法。 - リファインされた前記第1および第2サンプルを取得することは、
前記第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、および前記第1および第2予測リファインメントに基づいて、前記リファインされた第1および第2サンプルを取得し、
リファインされたサンプル閾値に基づいて前記リファインされた第1および第2サンプルをクリッピングする、
ことを含む、請求項1に記載の方法。 - 前記リファインされたサンプル閾値は符号化ビット深度プラス4または16のいずれかの最大値に等しい、
請求項4に記載の方法。 - 前記リファインされた第1および第2サンプルおよび前記予測パラメータに基づいて、前記ビデオブロックの最終予測サンプルを取得することは、前記WPのみ、または、前記BCWのみを適用することを含む、
請求項1に記載の方法。 - 1つ以上のプロセッサと、
前記1つ以上のプロセッサによって実行可能な命令を記憶する非一時的コンピュータ可読記憶媒体と、
を含み、
前記1つ以上のプロセッサは、
アフィンモードによって符号化されるビデオブロックを取得し、
前記ビデオブロックに関連付けられた第1参照ピクチャおよび第2参照ピクチャを取得し、
前記第1参照ピクチャおよび前記第2参照ピクチャに関連付けられた第1予測サンプルI(0)(i,j)および第2予測サンプルI(1)(i,j)に基づいて、第1および第2水平および垂直勾配値を取得し、
前記第1参照ピクチャおよび前記第2参照ピクチャに関連付けられたCPMV(control point motion vector)に基づいて、第1および第2水平および垂直動きリファインメントを取得し、
前記第1および第2水平および垂直勾配値と、前記第1および第2水平および垂直動きリファインメントとに基づいて、第1および第2予測リファインメントを取得し、
前記第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、および前記第1および第2予測リファインメントに基づいて、リファインされた第1および第2サンプルを取得し、
前記リファインされた第1および第2サンプルおよび予測パラメータに基づいて、前記ビデオブロックの最終予測サンプルを取得し、
前記予測パラメータは、WP(weighted prediction)のためのパラメータまたはBCW(bi-prediction with coding unit(CU)-level weight)のためのパラメータを含む、
ように構成されている、
コンピューティングデバイス。 - 前記1つ以上のプロセッサが前記第1および第2予測リファインメントを取得するように構成されていることは、
前記第1および第2水平および垂直勾配値および第1および第2水平および垂直動きリファインメントに基づいて前記第1および第2予測リファインメントを取得し
予測リファインメント閾値に基づいて、前記第1および第2予測リファインメントをクリッピングする、
ようにさらに構成されている、
請求項7に記載のコンピューティングデバイス。 - 前記予測リファインメント閾値は符号化ビット深度プラス1または13のいずれかの最大値に等しい、
請求項8に記載のコンピューティングデバイス。 - 前記リファインされた前記第1および第2サンプルを取得する前記1つ以上のプロセッサは、
前記第1予測サンプルI(0)(i,j)、第2予測サンプルI(1)(i,j)、および前記第1および第2予測リファインメントに基づいて、前記リファインされた第1および第2サンプルを取得し、
リファインされたサンプル閾値に基づいて前記リファインされた第1および第2サンプルをクリッピングする、
ようにさらに構成されている、請求項7に記載のコンピューティングデバイス。 - 前記リファインされたサンプル閾値は符号化ビット深度プラス4または16のいずれかの最大値に等しい、
請求項10に記載のコンピューティングデバイス。 - 前記ビデオブロックの最終予測サンプルを取得するように構成されている前記1つ以上のプロセッサは、前記WPのみ、または、前記BCWのみを適用する、ように、さらに構成されている、
請求項7に記載のコンピューティングデバイス。 - 1つ以上のプロセッサを含むコンピューティングデバイスによって実行される複数のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記複数のプログラムは、前記1つ以上のプロセッサによって実行されると、請求項1~請求項6のいずれか1項に記載の方法を前記コンピューティングデバイスに実行させる、非一時的コンピュータ可読記憶媒体。
- 1つ以上のプロセッサを含むコンピューティングデバイスによって実行されるプログラムであって、前記プログラムは、前記1つ以上のプロセッサによって実行されると、請求項1~請求項6のいずれか1項に記載の方法を前記コンピューティングデバイスに実行させる、プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023180171A JP2023179747A (ja) | 2019-08-23 | 2023-10-19 | オプティカルフローを用いた予測リファインメントに関する方法および装置 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962891273P | 2019-08-23 | 2019-08-23 | |
US62/891,273 | 2019-08-23 | ||
JP2022512878A JP7199598B2 (ja) | 2019-08-23 | 2020-08-24 | Profの方法、コンピューティングデバイス、コンピュータ可読記憶媒体、およびプログラム |
PCT/US2020/047669 WO2021041332A1 (en) | 2019-08-23 | 2020-08-24 | Methods and apparatus on prediction refinement with optical flow |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022512878A Division JP7199598B2 (ja) | 2019-08-23 | 2020-08-24 | Profの方法、コンピューティングデバイス、コンピュータ可読記憶媒体、およびプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023180171A Division JP2023179747A (ja) | 2019-08-23 | 2023-10-19 | オプティカルフローを用いた予測リファインメントに関する方法および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023036776A true JP2023036776A (ja) | 2023-03-14 |
JP7372433B2 JP7372433B2 (ja) | 2023-10-31 |
Family
ID=74685758
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022512878A Active JP7199598B2 (ja) | 2019-08-23 | 2020-08-24 | Profの方法、コンピューティングデバイス、コンピュータ可読記憶媒体、およびプログラム |
JP2022203593A Active JP7372433B2 (ja) | 2019-08-23 | 2022-12-20 | オプティカルフローを用いた予測リファインメントに関する方法および装置 |
JP2023180171A Pending JP2023179747A (ja) | 2019-08-23 | 2023-10-19 | オプティカルフローを用いた予測リファインメントに関する方法および装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022512878A Active JP7199598B2 (ja) | 2019-08-23 | 2020-08-24 | Profの方法、コンピューティングデバイス、コンピュータ可読記憶媒体、およびプログラム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023180171A Pending JP2023179747A (ja) | 2019-08-23 | 2023-10-19 | オプティカルフローを用いた予測リファインメントに関する方法および装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20220182659A1 (ja) |
EP (1) | EP4018667A4 (ja) |
JP (3) | JP7199598B2 (ja) |
KR (2) | KR102486982B1 (ja) |
CN (2) | CN116320473A (ja) |
MX (1) | MX2022002254A (ja) |
WO (1) | WO2021041332A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020147747A1 (en) * | 2019-01-15 | 2020-07-23 | Beijing Bytedance Network Technology Co., Ltd. | Weighted prediction in video coding |
JP7431253B2 (ja) * | 2019-05-16 | 2024-02-14 | 北京字節跳動網絡技術有限公司 | 動き情報精緻化のサブ領域に基づいた決定 |
US11641475B2 (en) * | 2019-09-12 | 2023-05-02 | Alibaba Group Holding Limited | Method and apparatus for encoding or decoding video |
CN114424543A (zh) | 2019-09-12 | 2022-04-29 | 阿里巴巴集团控股有限公司 | 用于发送视频编解码信息的方法和装置 |
JP2021052225A (ja) * | 2019-09-20 | 2021-04-01 | Kddi株式会社 | 画像復号装置、画像復号方法及びプログラム |
TW202408243A (zh) * | 2022-05-16 | 2024-02-16 | 聯發科技股份有限公司 | 用於視頻編解碼的解碼器側運動向量優化和雙向光流的方法和裝置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019010156A1 (en) * | 2017-07-03 | 2019-01-10 | Vid Scale, Inc. | MOTION COMPENSATION PREDICTION BASED ON A BIDIRECTIONAL OPTICAL FLOW |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022544844A (ja) * | 2019-08-22 | 2022-10-21 | エルジー エレクトロニクス インコーポレイティド | 加重予測を行う画像符号化/復号化方法、装置、及びビットストリームを伝送する方法 |
-
2020
- 2020-08-24 KR KR1020227008482A patent/KR102486982B1/ko active IP Right Grant
- 2020-08-24 WO PCT/US2020/047669 patent/WO2021041332A1/en unknown
- 2020-08-24 EP EP20858358.3A patent/EP4018667A4/en active Pending
- 2020-08-24 KR KR1020237000398A patent/KR20230011479A/ko active Application Filing
- 2020-08-24 CN CN202211693052.2A patent/CN116320473A/zh active Pending
- 2020-08-24 CN CN202080059798.0A patent/CN114342379A/zh active Pending
- 2020-08-24 JP JP2022512878A patent/JP7199598B2/ja active Active
- 2020-08-24 MX MX2022002254A patent/MX2022002254A/es unknown
-
2022
- 2022-02-22 US US17/677,935 patent/US20220182659A1/en active Pending
- 2022-12-20 JP JP2022203593A patent/JP7372433B2/ja active Active
-
2023
- 2023-10-19 JP JP2023180171A patent/JP2023179747A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019010156A1 (en) * | 2017-07-03 | 2019-01-10 | Vid Scale, Inc. | MOTION COMPENSATION PREDICTION BASED ON A BIDIRECTIONAL OPTICAL FLOW |
Non-Patent Citations (6)
Title |
---|
CHEN-YEN LAI, ET AL.: "CE4-related: Alignment of displacement bitdepths for BDOF and PROF", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-O0281-v2, JPN6022032854, July 2019 (2019-07-01), pages 1 - 4, ISSN: 0005154567 * |
HUANBANG CHEN, AND HAITAO YANG: "CE4-related: Simplifications on PROF", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-O0664-v1, JPN6022032855, June 2019 (2019-06-01), pages 1 - 3, ISSN: 0005154568 * |
JIANCONG (DANIEL) LUO AND YUWEN HE: "CE2-related: Prediction refinement with optical flow for affine mode", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-N0236-r5, JPN6020047817, March 2019 (2019-03-01), pages 1 - 7, XP030202914, ISSN: 0005154566 * |
TZU-DER CHUANG, ET AL.: "CE4-related: PROF prediction sample range reduction", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-P0154-v4, JPN6022032857, October 2019 (2019-10-01), pages 1 - 7, ISSN: 0005154569 * |
XIAOYU XIU, ET AL.: "AHG16/Non-CE4: Addressing 16-bit multiplication overflow issue of the PROF", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-P0518, JPN6022032858, September 2019 (2019-09-01), pages 1 - 7, ISSN: 0005154570 * |
YAN YE, ET AL.: "AHG13: On bi-prediction with weighted averaging and weighted prediction", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JVET-M0111-v2, JPN6022032856, January 2019 (2019-01-01), pages 1 - 7, XP030201472, ISSN: 0005154565 * |
Also Published As
Publication number | Publication date |
---|---|
EP4018667A4 (en) | 2023-07-05 |
WO2021041332A1 (en) | 2021-03-04 |
KR20230011479A (ko) | 2023-01-20 |
JP7199598B2 (ja) | 2023-01-05 |
CN116320473A (zh) | 2023-06-23 |
JP2023179747A (ja) | 2023-12-19 |
JP2022536208A (ja) | 2022-08-12 |
CN114342379A (zh) | 2022-04-12 |
EP4018667A1 (en) | 2022-06-29 |
KR20220044832A (ko) | 2022-04-11 |
JP7372433B2 (ja) | 2023-10-31 |
MX2022002254A (es) | 2022-03-22 |
KR102486982B1 (ko) | 2023-01-10 |
US20220182659A1 (en) | 2022-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7199598B2 (ja) | Profの方法、コンピューティングデバイス、コンピュータ可読記憶媒体、およびプログラム | |
JP7305883B2 (ja) | Prof(prediction refinement with optical flow)の方法および装置 | |
JP7313533B2 (ja) | オプティカルフローによる予測洗練化における方法および装置 | |
JP2023100979A (ja) | オプティカルフローによる予測洗練化、双方向オプティカルフローおよびデコーダ側の動きベクトル洗練化のための方法および装置 | |
WO2020257629A1 (en) | Methods and apparatus for prediction refinement with optical flow | |
JP2023089255A (ja) | オプティカルフローを用いる予測改善のための方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221220 |
|
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: 20230919 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231019 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7372433 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |