JP7384939B2 - 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 - Google Patents
双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 Download PDFInfo
- Publication number
- JP7384939B2 JP7384939B2 JP2021576697A JP2021576697A JP7384939B2 JP 7384939 B2 JP7384939 B2 JP 7384939B2 JP 2021576697 A JP2021576697 A JP 2021576697A JP 2021576697 A JP2021576697 A JP 2021576697A JP 7384939 B2 JP7384939 B2 JP 7384939B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel sample
- integer pixel
- sub
- sample position
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 149
- 230000003287 optical effect Effects 0.000 title claims description 77
- 238000004364 calculation method Methods 0.000 title claims description 17
- 238000012937 correction Methods 0.000 title description 6
- 239000000523 sample Substances 0.000 claims description 383
- 230000033001 locomotion Effects 0.000 claims description 123
- 239000013598 vector Substances 0.000 claims description 106
- 238000012545 processing Methods 0.000 claims description 80
- 230000008569 process Effects 0.000 claims description 44
- 230000002457 bidirectional effect Effects 0.000 claims description 41
- 239000013074 reference sample Substances 0.000 claims description 34
- 230000006872 improvement Effects 0.000 claims description 32
- 238000006073 displacement reaction Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 9
- 238000013139 quantization Methods 0.000 description 83
- 230000006854 communication Effects 0.000 description 32
- 238000004891 communication Methods 0.000 description 32
- 238000000638 solvent extraction Methods 0.000 description 28
- 241000023320 Luma <angiosperm> Species 0.000 description 25
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 23
- 238000005192 partition Methods 0.000 description 23
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 22
- 239000000872 buffer Substances 0.000 description 19
- 230000006870 function Effects 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000009466 transformation Effects 0.000 description 12
- 230000006835 compression Effects 0.000 description 10
- 238000007906 compression Methods 0.000 description 10
- 238000003491 array Methods 0.000 description 9
- 230000000295 complement effect Effects 0.000 description 8
- 238000001914 filtration Methods 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 7
- 230000011664 signaling Effects 0.000 description 7
- 101001036283 Xenopus laevis DNA-binding protein inhibitor ID-3-A Proteins 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000012805 post-processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 101150039623 Clip1 gene Proteins 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000007620 mathematical function Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- VBRBNWWNRIMAII-WYMLVPIESA-N 3-[(e)-5-(4-ethylphenoxy)-3-methylpent-3-enyl]-2,2-dimethyloxirane Chemical compound C1=CC(CC)=CC=C1OC\C=C(/C)CCC1C(C)(C)O1 VBRBNWWNRIMAII-WYMLVPIESA-N 0.000 description 1
- 238000012952 Resampling Methods 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000011282 treatment 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/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/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
-
- 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/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/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/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
- H04N19/521—Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting 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/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/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- 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
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
本出願は、2019年6月24日にインド特許庁に出願したインド特許出願第IN201931025013号に基づく優先権を主張するものであり、その開示は、参照によりその全体が本明細書に組み込まれる。
x_pos = (x_spel_pos + (1 << (shift_val - 1))) >> shift_val
y_pos = (y_spel_pos + (1 << (shift_val - 1))) >> shift_val
式中、(x_spel_pos, y_spel_pos)は、取得されたサブピクセルサンプル位置であり、shift_valは、使用されたサブペルサンプル精度に従って選択される。半ペル、1/4ペル、ペルの1/8、またはペルの1/16のサブペルサンプル精度の場合、それぞれ、1、2、3、または4のshift_valが使用される可能性がある。
x_pos = x_spel_pos >> shift_val
y_pos = y_spel_pos >> shift_val
式中、(x_spel_pos, y_spel_pos)は、取得されたサブピクセルサンプル位置であり、shift_valは、使用されたサブペルサンプル精度に従って選択される。半ペル、1/4ペル、ペルの1/8、またはペルの1/16のサブペルサンプル精度の場合、それぞれ、1、2、3、または4のshift_valが使用される可能性がある。
図2は、本出願の技術を実装するように構成される例示的なビデオエンコーダ20の概略的なブロック図を示す。図2の例において、ビデオエンコーダ20は、入力201(または入力インターフェース201)、残差計算ユニット204、変換処理ユニット206、量子化ユニット208、逆量子化ユニット210、逆変換処理ユニット212、再構築ユニット214、ループフィルタユニット220、復号ピクチャバッファ(DPB: decoded picture buffer)230、モード選択ユニット260、エントロピー符号化ユニット270、および出力272(または出力インターフェース272)を含む。モード選択ユニット260は、インター予測ユニット244、イントラ予測ユニット254、および区分けユニット262を含む可能性がある。インター予測ユニット244は、動き推定ユニットおよび動き補償ユニット(図示せず)を含む可能性がある。図2に示されたビデオエンコーダ20は、ハイブリッドビデオエンコーダまたはハイブリッドビデオコーデックによるビデオエンコーダとも称される可能性がある。
エンコーダ20は、たとえば、入力201を介してピクチャ17(またはピクチャデータ17)、たとえば、ビデオまたはビデオシーケンスを形成するピクチャのシーケンスのピクチャを受け取るように構成される可能性がある。受け取られたピクチャまたはピクチャデータは、前処理されたピクチャ19(または前処理されたピクチャデータ19)である可能性もある。簡単にするために、以下の説明は、ピクチャ17に言及する。ピクチャ17は、(特に、ビデオコーディングにおいて、現在のピクチャを他のピクチャ、たとえば、同じビデオシーケンス、つまり、現在のピクチャも含むビデオシーケンスの既に符号化されたおよび/または復号されたピクチャと区別するために)現在のピクチャまたはコーディングされるピクチャとも称される可能性がある。
残差計算ユニット204は、たとえば、サンプル毎に(ピクセル毎に)ピクチャブロック203のサンプル値から予測ブロック265のサンプル値を差し引いてサンプル領域において残差ブロック205を取得することによって、ピクチャブロック203および予測ブロック265(予測ブロック265についてのさらなる詳細は後で与えられる)に基づいて残差ブロック205(残差205とも称される)を計算するように構成される可能性がある。
変換処理ユニット206は、残差ブロック205のサンプル値に対して、離散コサイン変換(DCT)または離散サイン変換(DST)のような変換を適用して変換領域において変換係数207を取得するように構成される可能性がある。変換係数207は、変換残差係数とも称され、変換領域において残差ブロック205を表現する可能性がある。
量子化ユニット208は、たとえば、スカラー量子化またはベクトル量子化を適用することによって変換係数207を量子化して量子化された係数209を取得するように構成される可能性がある。量子化された係数209は、量子化された変換係数209または量子化された残差係数209とも称される可能性がある。
あり、損失は、量子化ステップサイズが大きくなるにつれて増加する。
逆量子化ユニット210は、たとえば、量子化ユニット208と同じ量子化ステップサイズに基づいてまたはそれを使用して、量子化ユニット208により適用された量子化方式の逆を適用することによって、量子化された係数に量子化ユニット208の逆量子化を適用して量子化解除された係数211を取得するように構成される。量子化解除された係数211は、量子化解除された残差係数211とも称され、量子化による損失が原因で概して変換係数と同一ではないが、変換係数207に対応する可能性がある。
逆変換処理ユニット212は、変換処理ユニット206によって適用された変換の逆変換、たとえば、逆離散コサイン変換(DCT)または逆離散サイン変換(DST)または他の逆変換を適用してサンプル領域において再構築された残差ブロック213(または対応する量子化解除された係数213)を取得するように構成される。再構築された残差ブロック213は、変換ブロック(transform block)213とも称される可能性がある。
再構築ユニット214(たとえば、加算器または合算器214)は、たとえば、再構築された残差ブロック213のサンプル値と予測ブロック265のサンプル値とを、サンプル毎に、足すことによって予測ブロック265に変換ブロック213(すなわち、再構築された残差ブロック213)を足してサンプル領域において再構築されたブロック215を取得するように構成される。
ループフィルタユニット220(または短く「ループフィルタ」220)は、再構築されたブロック215をフィルタリングしてフィルタリングされたブロック221を取得する、または概して、再構築されたサンプルをフィルタリングしてフィルタリングされたサンプルを取得するように構成される。ループフィルタユニットは、ピクセルの遷移を平滑化するかまたはそれ以外の方法でビデオの品質を改善するように構成される可能性がある。ループフィルタユニット220は、デブロッキングフィルタ、サンプル適応オフセット(SAO: sample-adaptive offset)フィルタ、または、バイラテラルフィルタ、適応ループフィルタ(ALF: adaptive loop filter)、鮮鋭化、平滑化フィルタ、もしくは共同フィルタ(collaborative filter)、もしくはこれらの任意の組合せのような1つもしくは複数の他のフィルタなどの1つまたは複数のループフィルタを含む可能性がある。ループフィルタユニット220は図2にループ内フィルタであるものとして示されるが、他の構成において、ループフィルタユニット220は、ループ後フィルタとして実装される可能性がある。フィルタリングされたブロック221は、フィルタリングされた再構築されたブロック221とも称される可能性がある。
復号ピクチャバッファ(DPB)230は、ビデオエンコーダ20によってビデオデータを符号化するための参照ピクチャまたは概して参照ピクチャデータを記憶するメモリである可能性がある。DPB230は、同期DRAM(SDRAM)を含むダイナミックランダムアクセスメモリ(DRAM)、磁気抵抗RAM(MRAM)、抵抗変化型RAM(RRAM: resistive RAM)、または他の種類のメモリデバイスなどの様々なメモリデバイスのいずれかによって形成される可能性がある。復号ピクチャバッファ(DPB)230は、1つまたは複数のフィルタリングされたブロック221を記憶するように構成される可能性がある。復号ピクチャバッファ230は、同じ現在のピクチャまたは異なるピクチャ、たとえば、既に再構築されたピクチャの他の既にフィルタリングされたブロック、たとえば、既に再構築され、フィルタリングされたブロック221を記憶するようにさらに構成される可能性があり、たとえば、インター予測のために、完全な既に再構築された、つまり、復号されたピクチャ(および対応する参照ブロックおよびサンプル)ならびに/または部分的に再構築された現在のピクチャ(および対応する参照ブロックおよびサンプル)を提供する可能性がある。復号ピクチャバッファ(DPB)230は、たとえば、再構築されたブロック215がループフィルタユニット220によってフィルタリングされない場合、1つもしくは複数のフィルタリングされていない再構築されたブロック215もしくは概してフィルタリングされていない再構築されたサンプルを記憶し、または再構築されたブロックもしくはサンプルの任意の他のさらに処理されたバージョンを記憶するようにも構成される可能性がある。
モード選択ユニット260は、区分けユニット262、インター予測ユニット244、およびイントラ予測ユニット254を含み、元のブロック203(現在のピクチャ17の現在のブロック203)のような元のピクチャデータと、同じ(現在の)ピクチャの、および/またはたとえば復号ピクチャバッファ230もしくは他のバッファ(たとえば、図示されていないラインバッファ)からの1つもしくは複数の既に復号されたピクチャからのフィルタリングされたおよび/またはフィルタリングされていない再構築されたサンプルまたはブロックのような再構築されたピクチャデータとを受け取るかまたは取得するように構成される。再構築されたピクチャデータは、予測ブロック265または予測子(predictor)265を取得するための予測、たとえば、インター予測またはイントラ予測のための参照ピクチャデータとして使用される。
区分けユニット262は、現在のブロック203をより小さな区画、たとえば、正方形または長方形のサイズのより小さなブロックに区分けする(または分割する)可能性がある。これらのより小さなブロック(下位ブロックとも称される可能性がある)は、より一層小さな区画にさらに区分けされる可能性がある。これは、木区分けまたは階層的木区分けとも称され、たとえば、ルートツリーレベル0(階層レベル0、深さ0)のルートブロックが、再帰的に区分けされ、たとえば、次に低いツリーレベルの2つ以上のブロック、たとえば、ツリーレベル1(階層レベル1、深さ1)のノードに区分けされる可能性があり、これらのブロックが、次に低いレベル、たとえば、ツリーレベル2(階層レベル2、深さ2)の2つ以上のブロックに再び区分けされる可能性があり、たとえば、終了基準が満たされる、たとえば、最大のツリーの深さまたは最小のブロックサイズが達せられるので区分けが終了されるまで以下同様である。さらに区分けされないブロックは、木の葉ブロックまたは葉ノードとも称される。2つの区画への区分けを使用する木は、二分木(BT)と称され、3つの区画への区分けを使用する木は、三分木(TT)と称され、4つの区画への区分けを使用する木は、四分木(QT)と称される。
1組のイントラ予測モードは、たとえばHEVCにおいて定義された、DC(もしくは平均)モードおよび平面モードのような非方向性モード、または方向性モードなどの35個の異なるイントラ予測モードを含む可能性があり、あるいはたとえばVVCのために定義された、DC(もしくは平均)モードおよび平面モードのような非方向性モード、または方向性モードなどの67個の異なるイントラ予測モードを含む可能性がある。
1組の(または可能な)インター予測モードは、利用可能な参照ピクチャ(つまり、たとえば、DBP230に記憶された前の少なくとも部分的に復号されたピクチャ)ならびに他のインター予測パラメータ、たとえば、最もよく一致する参照ブロックを探索するために参照ピクチャ全体が使用されるのかもしくは参照ピクチャの一部のみ、たとえば、現在のブロックのエリアの周りの探索窓(search window)エリアのみが使用されるか、ならびに/またはたとえば、半/セミペル(half/semi-pel)および/もしくは4分の1ペル補間のようなピクセル補間が適用されるか否かに依存する。
エントロピー符号化ユニット270は、たとえば、ビデオデコーダ30がパラメータを受信し、復号のために使用する可能性があるように、たとえば、符号化されたビットストリーム21の形態で出力272を介して出力され得る符号化されたピクチャデータ21を得るために、量子化された係数209、インター予測パラメータ、イントラ予測パラメータ、ループフィルタパラメータ、および/または他のシンタックス要素に対して、たとえば、エントロピー符号化アルゴリズムもしくは方式(たとえば、可変長符号化(VLC: variable length coding)方式、コンテキスト適応VLC方式(CAVLC: context adaptive VLC)、算術符号化方式、2値化、コンテキスト適応2値算術符号化(CABAC: context adaptive binary arithmetic coding)、シンタックスに基づくコンテキスト適応2値算術符号化(SBAC: syntax-based context-adaptive binary arithmetic coding)、確率間隔区分エントロピー(PIPE: probability interval partitioning entropy)符号化、もしくは別のエントロピー符号化方法もしくは技術)またはバイパス(bypass)(非圧縮)を適用するように構成される。符号化されたビットストリーム21は、ビデオデコーダ30に送信されるか、または後の送信またはビデオデコーダ30による取り出しのためにメモリに記憶される可能性がある。
図3は、本出願の技術を実装するように構成されるビデオデコーダ30の例を示す。ビデオデコーダ30は、復号されたピクチャ331を取得するために、たとえば、エンコーダ20によって符号化された符号化されたピクチャデータ21(たとえば、符号化されたビットストリーム21)を受信するように構成される。符号化されたピクチャデータまたはビットストリームは、符号化されたピクチャデータ、たとえば、符号化されたビデオスライス(および/またはタイルグループもしくはタイル)のピクチャブロックならびに関連するシンタックス要素を表すデータを復号するための情報を含む。
エントロピー復号ユニット304は、ビットストリーム21(または概して符号化されたピクチャデータ21)を解析し、たとえば、符号化されたピクチャデータ21にエントロピー復号を実行して、たとえば、量子化された係数309ならびに/あるいはインター予測パラメータ(たとえば、参照ピクチャインデックスおよび動きベクトル)、イントラ予測パラメータ(たとえば、イントラ予測モードもしくはインデックス)、変換パラメータ、量子化パラメータ、ループフィルタパラメータ、および/または他のシンタックス要素のいずれかまたはすべてのような復号されたコーディングパラメータ366を取得するように構成される。エントロピー復号ユニット304は、エンコーダ20のエントロピー符号化ユニット270に関連して説明された符号化方式に対応する復号アルゴリズムまたは方式を適用するように構成される可能性がある。エントロピー復号ユニット304は、インター予測パラメータ、イントラ予測パラメータ、および/または他のシンタックス要素をモード適用ユニット360に提供し、他のパラメータをデコーダ30の他のユニットに提供するようにさらに構成される可能性がある。ビデオデコーダ30は、ビデオスライスのレベルおよび/またはビデオブロックのレベルでシンタックス要素を受信する可能性がある。スライスおよびそれぞれのシンタックス要素に加えて、またはスライスおよびそれぞれのシンタックス要素の代替として、タイルグループおよび/またはタイルならびにそれぞれのシンタックス要素が、受信されるおよび/または使用される可能性がある。
逆量子化ユニット310は、(たとえば、エントロピー復号ユニット304によって、たとえば、解析および/または復号することによって)符号化されたピクチャデータ21から量子化パラメータ(QP)(または概して逆量子化に関連する情報)および量子化された係数を受け取り、復号された量子化された係数309に対して量子化パラメータに基づいて逆量子化を適用して、変換係数311とも称される可能性がある量子化解除された係数311を取得するように構成される可能性がある。逆量子化プロセスは、量子化の度合いと、同様に、適用されるべき逆量子化の度合いとを決定するために、ビデオスライス(またはタイルまたはタイルグループ)内の各ビデオブロックに関してビデオエンコーダ20によって決定された量子化パラメータを使用することを含む可能性がある。
逆変換処理ユニット312は、変換係数311とも称される量子化解除された係数311を受け取り、サンプル領域において再構築された残差ブロック313を取得するために、量子化解除された係数311に変換を適用するように構成される可能性がある。再構築された残差ブロック313は、変換ブロック213とも称される可能性がある。変換は、逆変換、たとえば、逆DCT、逆DST、逆整数変換、または概念的に同様の逆変換プロセスである可能性がある。逆変換処理ユニット312は、量子化解除された係数311に適用される変換を決定するために、(たとえば、エントロピー復号ユニット304によって、たとえば、解析および/または復号することによって)符号化されたピクチャデータ21から変換パラメータまたは対応する情報を受け取るようにさらに構成される可能性がある。
再構築ユニット314(たとえば、加算器または合算器314)は、たとえば、再構築された残差ブロック313のサンプル値と予測ブロック365のサンプル値とを足すことによって予測ブロック365に再構築された残差ブロック313を足してサンプル領域において再構築されたブロック315を取得するように構成される可能性がある。
(コーディングループ内かまたはコーディングループの後かのどちらかの)ループフィルタユニット320は、たとえば、ピクセルの遷移を平滑化するかまたはそれ以外の方法でビデオの品質を改善するために再構築されたブロック315をフィルタリングしてフィルタリングされたブロック321を取得するように構成される。ループフィルタユニット320は、デブロッキングフィルタ、サンプル適応オフセット(SAO)フィルタ、または1つもしくは複数の他のフィルタ、たとえば、バイラテラルフィルタ、適応ループフィルタ(ALF)、鮮鋭化、平滑化フィルタ、もしくは共同フィルタ、もしくはこれらの任意の組合せなどの1つまたは複数のループフィルタを含む可能性がある。ループフィルタユニット320は図3にループ内フィルタであるものとして示されるが、他の構成において、ループフィルタユニット320は、ループ後フィルタとして実装される可能性がある。
それから、ピクチャの復号されたビデオブロック321は、他のピクチャに関するその後の動き補償のための参照ピクチャとしておよび/または出力もしくはそれぞれ表示するために復号されたピクチャ331を記憶する復号ピクチャバッファ330に記憶される。
インター予測ユニット344は、インター予測ユニット244と(特に動き補償ユニットと)同一である可能性があり、イントラ予測ユニット354は、イントラ予測ユニット254と機能的に同一である可能性があり、(たとえば、エントロピー復号ユニット304によって、たとえば、解析および/または復号することによって)復号されたピクチャデータ21から受け取られた区分けおよび/または予測パラメータまたはそれぞれの情報に基づいて分割または区分けの判断および予測を実行する。モード適用ユニット360は、予測ブロック365を得るために、(フィルタリングされたまたはフィルタリングされていない)再構築されたピクチャ、ブロック、またはそれぞれのサンプルに基づいてブロック毎に予測(イントラまたはインター予測)を実行するように構成される可能性がある。
ux = ( mvx+2bitDepth ) % 2bitDepth (1)
mvx = ( ux >= 2bitDepth-1 ) ? ( ux - 2bitDepth ) : ux (2)
uy= ( mvy+2bitDepth ) % 2bitDepth (3)
mvy = ( uy >= 2bitDepth-1 ) ? ( uy - 2bitDepth ) : uy (4)
式中、mvxは、画像ブロックまたは下位ブロックの動きベクトルの水平成分であり、mvyは、画像ブロックまたは下位ブロックの動きベクトルの垂直成分であり、uxおよびuyは、それぞれの中間値を示す。
ux= ( mvpx + mvdx +2bitDepth ) % 2bitDepth (5)
mvx = ( ux >= 2bitDepth-1 ) ? (ux - 2bitDepth ) : ux (6)
uy= ( mvpy + mvdy +2bitDepth ) % 2bitDepth (7)
mvy = ( uy >= 2bitDepth-1 ) ? (uy - 2bitDepth ) : uy (8)
演算は、式(5)から(8)に示されるように、動きベクトル予測子mvpと動きベクトルの差mvdとの合計中に適用される可能性がある。
vx = Clip3(-2bitDepth-1, 2bitDepth-1 -1, vx)
vy = Clip3(-2bitDepth-1, 2bitDepth-1 -1, vy)
式中、vxは、画像ブロックまたは下位ブロックの動きベクトルの水平成分であり、vyは、画像ブロックまたは下位ブロックの動きベクトルの垂直成分であり、x、y、およびzは、MVのクリッピングプロセスの3つの入力値にそれぞれ対応し、関数Clip3の定義は、以下の通りである。
通常、動きベクトルは、エンコーダ側で少なくとも部分的に決定され、符号化されたビットストリーム内でデコーダにシグナリングされる。しかし、動きベクトルは、ビットストリーム内に示された初期動きベクトルから開始してデコーダにおいて(およびエンコーダにおいても)改善される可能性もある。そのような場合、たとえば、初期動きベクトルによって指し示された既に復号されたピクセルのパッチまたはブロックの間の類似性が、初期動きベクトルの正確性を向上させるために使用される可能性がある。そのような動きベクトルの改善は、シグナリングのオーバーヘッドを削減するという利点をもたらし、つまり、初期の動きベクトルの正確性が、エンコーダとデコーダとの両方において同じ方法で高められ、したがって、改善のための追加のシグナリングが、必要とされない。
・(MV0, MV1)
・(MV0 + (0,1), MV1 + (0,-1))
・(MV0 + (1,0), MV1 + (-1,0))
・(MV0 + (0,-1), MV1 + (0,1))
・(MV0 + (-1,0), MV1 + (1,0))
・...
ここで、(1,-1)は、水平(またはx)方向の1整数ピクセルの変位および垂直(またはy)方向の-1整数ピクセルの変位を有するベクトルを表す。
・初期MVのペアの小数部を最も近い整数位置に丸め、再構築された参照ピクチャの整数グリッド値を得る。
・初期MVのペアによって示される小数ピクセルの正確性で予測されたサンプル値を得るために2タップ(たとえば、バイリニア)の分離可能なバイリニア補間を実行する。
・初期MVのペアによって示される小数ピクセルの正確性で予測されたサンプル値を得るためにより多いタップ(たとえば、8タップまたは6タップ)の分離可能な補間を実行する。
・現在のピクチャからサンプルのコーディングブロックの双予測のために使用される2つの参照ピクチャまでの(一様なフレームレートでサンプリングされるときの)ピクチャの数で表された距離、またはピクチャ順序カウント(POC)の差が、等しく、現在のピクチャの両側で減少する。
・初期MVのペアを使用して得られた2つの予測されたブロックの間の初期の相違が、予め決められたサンプル毎の閾値未満である。
双予測のオプティカルフロー(BPOF)または双方向のオプティカルフロー(BDOF)の改善は、双予測のためのシグナリング以外のビットストリーム内の明らかな追加的なシグナリングなしにブロックの双予測の正確性を高めるプロセスである。双予測のオプティカルフローまたは双方向のオプティカルフローの改善は、図2のインター予測ユニット244および図3の344の一部である。
Bi-prediction = Prediction1 * W1 + Prediction2 * W2 + K
に従って実行されることが可能であり、式中、W1およびW2は、ビットストリーム内でシグナリングされる可能性があり、またはエンコーダ側および/もしくはデコーダ側で予め定義される可能性がある重み係数である。Kは、やはりビットストリーム内でシグナリングされるかまたはエンコーダ側および/もしくはデコーダ側で予め定義される可能性がある加算因子である。例として、双予測は、
Bi-prediction = (Prediction1 + Prediction2)/2
を使用して得られる可能性があり、式中、W1およびW2は、1/2に設定され、Kは、0に設定される。
I(x,y,t) = I(x+dx, y+dy, t+dt)
によって与えられ、式中、I(x,y,t)は、座標(x,y,t)のピクセルの強度(サンプル値)を指定する。
1. サンプルの勾配を計算する
2. 第1の予測と第2の予測との間の差を計算する
3. オプティカルフローの式を使用して2つの参照パッチまたはブロックの間の誤差Δ
4. 以下のもののようなオプティカルフローの式の実装を使用する。
predBIO = 1/2・(I(0) + I(1) + vx/2・(τ1∂I(1)/∂x - τ0∂I(0)/∂x) + vy/2・(τ1∂I(1)/∂y - τ0∂I(0)/∂y))
式中、predBIOは、オプティカルフロー改善プロセスの出力である修正された予測を指定する。
・∂I(x, y, t)/∂x = I(x + 1, y, t) - I(x - 1, y, t)
・∂I(x, y, t)/∂y = I(x, y + 1, t) - I(x, y - 1, t)
- 現在のコーディングブロックの幅および高さを指定する2つの変数nCbWおよびnCbH
- 2つの(nCbW + 2)x(nCbH + 2)ルマ予測サンプル配列predSamplesL0およびpredSamplesL1
- 予測リストの利用フラグpredFlagL0およびpredFlagL1
- 参照インデックスrefIdxL0およびrefIdxL1
- 双方向オプティカルフローの利用フラグbdofUtilizationFlag[ xIdx ][ yIdx ] with xIdx = 0..( nCbW >> 2 ) - 1, yIdx = 0..( nCbH >> 2 ) - 1
- 変数bitDepthは、BitDepthY、すなわちルマ成分のビット深度に等しく設定される。
- 変数shift1は、Max( 6, bitDepth - 6 )に等しくなるように設定される。
- 変数shift2は、Max( 4, bitDepth - 8 )に等しくなるように設定される。
- 変数shift3は、Max( 1, bitDepth - 11 )に等しくなるように設定される。
- 変数shift4は、Max( 3, 15 - bitDepth )に等しく設定され、変数offset4は、1 << ( shift4 - 1 )に等しく設定される。
- 変数mvRefineThresは、1 << Max( 5, bitDepth - 7 )に等しく設定される。
- 変数xSbは、( xIdx << 2) + 1に等しく設定され、ySbは、( yIdx << 2 ) + 1に等しく設定される。
- bdofUtilizationFlag[ xIdx ][ yIdx ]がFALSEに等しい場合、x = xSb - 1..xSb + 2, y = ySb - 1.. ySb + 2に関して、現在のサブブロックの予測サンプル値は、以下のように導出される。
pbSamples[ x ][ y ] = Clip3( 0, ( 2bitDepth ) - 1, ( predSamplesL0[ x + 1 ][ y + 1 ] + offset4 + predSamplesL1[ x + 1 ][ y + 1 ] ) >> shift4 )
- そうでない場合(bdofUtilizationFlag[ xIdx ][ yIdx ]がTRUEに等しい)、現在のサブブロックの予測サンプル値は、以下のように導出される。
- x = xSb - 1..xSb + 4, y = ySb - 1..ySb + 4に関して、以下の順序付けられたステップが適用される。
1.予測サンプル配列内の対応するサンプル位置(x, y )の各々に関する位置( hx, vy )は、以下のように導出される。
hx = Clip3( 1, nCbW, x )
vy = Clip3( 1, nCbH, y )
2.変数gradientHL0[ x ][ y ]、gradientVL0[ x ][ y ]、gradientHL1[ x ][ y ]、およびgradientVL1[ x ][ y ]は、以下のように導出される。
gradientHL0[ x ][ y ] = (predSamplesL0[ hx + 1 ][vy] - predSampleL0[ hx - 1 ][ vy ] ) >> shift1
gradientVL0[ x ][ y ] = (predSampleL0[ hx ][ vy + 1 ] - predSampleL0[ hx ][vy - 1 ] ) >> shift1
gradientHL1[ x ][ y ] = (predSamplesL1[ hx + 1 ][vy] - predSampleL1[ hx - 1 ][ vy ] ) >> shift1
gradientVL1[ x ][ y ] = (predSampleL1[ hx ][ vy + 1 ] - predSampleL1[ hx ][vy - 1 ] ) >> shift1
3.変数diff[ x ][ y ]、tempH[ x ][ y ]、およびtempV[ x ][ y ]は、以下のように導出される。
diff[ x ][ y ] = (predSamplesL0[ hx ][ vy ] >> shift2 ) - ( predSamplesL1[ hx ][ vy ] >> shift2 )
tempH[ x ][ y ] = (gradientHL0[ x ][ y ] + gradientHL1[ x ][ y ] ) >> shift3
tempV[ x ][ y ] = (gradientVL0[ x ][ y ] + gradientVL1[ x ][ y ] ) >> shift3
- 変数sGx2、sGy2、sGxGy、sGxdI、およびsGydIは、以下のように導出される。
i, j = -1..4として、sGx2 = ΣiΣj( tempH[ xSb + i ][ ySb + j ] * tempH[ xSb + i ][ ySb + j ] )
i, j = -1..4として、sGy2 = ΣiΣj( tempV[ xSb + i ][ ySb + j ] * tempV[ xSb + i ][ ySb + j ] )
i, j -1..4として、sGxGy = ΣiΣj ( tempH[ xSb + i ][ ySb + j ] * tempV[ xSb + i ][ ySb + j ] )
sGxGym = sGxGy >> 12
sGxGys = sGxGy & ( ( 1 << 12 ) - 1 )
i, j = -1..4として、sGxdI = ΣiΣj( -tempH[ xSb + i ][ ySb + j ] * diff[ xSb + i ][ ySb + j ] )
i, j = -1..4として、sGydI = ΣiΣj( -tempV[ xSb + i ][ ySb + j ] * diff[ xSb + i ][ ySb + j ] )
- 現在のサブブロックの水平および垂直動きオフセットは、以下のように導出される。
vx = sGx2 > 0 ? Clip3( -mvRefineThres, mvRefineThres, -( sGxdI << 3 ) >> Floor( Log2( sGx2 ) ) ) : 0
vy = sGy2 > 0 ? Clip3( -mvRefineThres, mvRefineThres, ( ( sGydI << 3 ) - ( ( vx * sGxGym ) << 12 + vx * sGxGys ) >> 1 ) >> Floor( Log2( sGx2 ) ) ) : 0
- x =xSb - 1..xSb + 2, y = ySb - 1..ySb + 2に関して、現在のサブブロックの予測サンプル値は、以下のように導出される。
bdofOffset = Round( ( vx * ( gradientHL1[ x + 1 ][ y + 1 ] - gradientHL0[ x + 1 ][ y + 1 ] ) ) >> 1 ) + Round( ( vy * (gradientVL1[ x + 1 ][ y + 1 ] - gradientVL0[ x + 1 ][ y + 1 ] ) ) >> 1 )
[Round()演算は、float入力に対して定義される。Round()演算は、ここでは省略される可能性がある。]
pbSamples[ x ][ y ] = Clip3( 0, ( 2bitDepth ) - 1, ( predSamplesL0[ x + 1 ][ y + 1 ] + offset4 + predSamplesL1[ x + 1 ][ y + 1 ] + bdofOffset ) >> shift4 )
現在採用されているBPOFのバージョンにおいて、BPOFのためのメモリフットプリントを削減し、ハードウェア設計においてサブブロックレベルのパイプラインが確立されることを可能にするために、コーディングユニットが、サブブロックに区分けされる。16よりも大きい幅を有する任意のコーディングユニットが、16のサブブロック幅で水平方向に区分けされる。16よりも大きい高さを有する任意のコーディングユニットが、16のサブブロック高さで垂直方向に区分けされる。
本開示において、小数の水平および垂直部分の削除によって導入されるコーディング損失をほぼ除去しながら、拡張されたサンプル値を取得することの低い複雑さの側面を維持する方法が、提供される。
ステップ1310、現在のブロックの動きベクトル(MV)を取得する。
ステップ1320、MVに基づいて、参照ピクチャ内の予測されたブロックの拡張された領域内のサブピクセルサンプル位置を取得する。
ここで、参照ピクチャ内の予測されたブロックの拡張された領域は、MVに基づく。特に、MVを使用することによって、現在のブロックに対応する併置されたブロックへの参照としてMVによって示されるオフセットを有する予測ブロックが、見つけられ得る。拡張された領域は、予測ブロックに隣接し、予測ブロックを取り囲む/包含するピクセルの少なくとも1つの行/列を含む領域である。拡張された領域は、参照ピクチャ内の予測ブロックを取り囲むパディング領域と考えられ得、たとえば、ブロック境界におけるKタップ補間フィルタの適用および/または3タップサンプル勾配の計算に使用される。
ステップ1330、参照ピクチャ内の整数ピクセルサンプル位置を取得するために、取得されたサブピクセルサンプル位置を処理する。
ステップ1340、参照ピクチャ内の取得された整数ピクセルサンプル位置における参照サンプル値を参照することによって、双方向のオプティカルフロー予測を実行する。
BPOF/BDOFによる双予測が実行されている次元M×Nサンプルの現在のサブブロックの左上サンプルが、(sb_start_x, sb_start_y)にあるものとする。(mvx0, mvy0)が、第1の参照フレームL0に対する現在のサブブロックの1/16のピクセル精度のMVであり、(mvx1, mvxy1)が、第2の参照フレームL1に対する現在のサブブロックの1/16のピクセル精度のMVであるとする。
x_spel_posが、拡張されたサンプル位置の水平方向のサブペルサンプル精度の位置であり、y_spel_posが、垂直方向のサブペルサンプル精度の位置であるとする。この拡張されたサンプル位置に関するサンプル値は、以下の
x_pos = (x_spel_pos + (1 << (shift_val - 1))) >> shift_val
y_pos = (y_spel_pos + (1 << (shift_val - 1))) >> shift_val
のように計算された位置(x_pos, y_pos)における再構築された参照サンプル値として取得され、式中、shift_valは、使用されるサブペルサンプル精度に従って選択される。半ペル、1/4ペル、ペルの1/8、ペルの1/16のサブペル精度に関して、それぞれ、1、2、3、または4のshift_valが、使用される。
この実施形態において、拡張されたサンプル位置の値は、BPOF/BDOFが適用され、動きベクトルの改善(MVR)が、現在のサブブロックが属する所与のコーディングユニットに適用されない場合、またはMVRおよびBDOFが、両方とも、現在のサブブロックが属する所与のコーディングユニットに適用されるが、MVRが初期MVのペアと比較してMVRの整数距離改善段階中に整数変位を生じない場合はいつでも、実施形態1で説明された手順を使用して導出される。言い換えると、MVRおよびBDOFが、両方とも適用され、MVRの整数距離改善段階が初期MVのペア、すなわち、ゼロの変位のMVのペアを生じる場合、拡張されたサンプル位置の値は、実施形態1で説明された手順を使用して導出される。
x_pos = x_spel_pos >> shift_val
y_pos = y_spel_pos >> shift_val
のように計算された位置(x_pos, y_pos)における再構築された参照サンプル値として取得され、式中、shift_valは、使用されるサブペルサンプル精度に従って選択される。半ペル、1/4ペル、ペルの1/8、ペルの1/16のサブペル精度に関して、それぞれ、1、2、3、または4のshift_valが、使用される。言い換えると、この場合のサンプル位置を取得する際に、水平方向と垂直方向との両方における位置の小数部分は、無視される。
水平および垂直方向におけるサブペル位置を丸める説明された方法により、境界勾配は、より正確になる。これは、これらのサンプル勾配に基づいて計算されたオプティカルフローを改善し、計算されたオプティカルフローを使用して適用される補正も改善する。これは、拡張されたサンプル位置のための整数サンプル値を選択するときに、水平および垂直方向における小数オフセットを無視する以前の方法と比較して、一貫したコーディングゲインを提供する。同時に、水平および垂直の丸めオフセットの追加は、複雑さにおける唯一の増加であるので、複雑さは、あまり変更されない。
このプロセスへの入力は、以下である。
- フルサンプルユニットにおけるルマ位置( xIntL, yIntL )
- 小数サンプルユニットにおけるルマ位置( xFracL, yFracL )
- ルマ参照サンプル配列refPicLXL
このプロセスの出力は、予測されたルマサンプル値predSampleLXLである。
xOffset = xFracL > 7 ? 1 : 0
yOffset = yFracL > 7 ? 1 : 0
xInt = Clip3( 0, picW - 1, sps_ref_wraparound_enabled_flag ?
ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL - 1 + xOffset) : xIntL - 1 + xOffset)
yInt = Clip3( 0, picH - 1, yIntL - 1 + yOffset)
predSampleLXL = refPicLXL[ xInt ][ yInt ] << shift3
本出願において使用される数学演算子は、Cプログラミング言語において使用される数学演算子に似ている。しかし、整数の除算および算術シフト演算の結果は、より厳密に定義され、累乗および実数値の除算などの追加の演算が、定義される。付番およびカウントの規則は、概して0から始まり、つまり、「第1」は、0番と等価であり、「第2」は、1番と等価であり、以下同様である。
以下の算術演算子が、以下の通り定義される。
以下の論理演算子が、以下の通り定義される。
x && y xおよびyのブール論理「積」
x || y xおよびyのブール論理「和」
! ブール論理「否定」
x ? y : z xが真であるかまたは0に等しくない場合、値yと評価され、そうでない場合、値zと評価される。
以下の関係演算子が、以下の通り定義される。
> より大きい
>= 以上
< 未満
<= 以下
== 等しい
!= 等しくない
以下のビット演算子が、以下の通り定義される。
& ビット毎の「論理積」。整数引数に対する演算のとき、整数値の2の補数表現に対して作用する。別の引数よりも少ないビットを含む2進数引数に対する演算のとき、より短い引数が、0に等しいさらに上位桁のビットを追加することによって拡張される。
| ビット毎の「論理和」。整数引数に対する演算のとき、整数値の2の補数表現に対して作用する。別の引数よりも少ないビットを含む2進数引数に対する演算のとき、より短い引数が、0に等しいさらに上位桁のビットを追加することによって拡張される。
^ ビット毎の「排他的論理和」。整数引数に対する演算のとき、整数値の2の補数表現に対して作用する。別の引数よりも少ないビットを含む2進数引数に対する演算のとき、より短い引数が、0に等しいさらに上位桁のビットを追加することによって拡張される。
x>>y xの2の補数による整数の表現の、2進数のy桁分の算術右シフト。この関数は、yの非負の整数値に対してのみ定義される。右シフトの結果として最上位ビット(MSB)にシフトされるビットは、シフト演算の前のxのMSBに等しい値を有する。
x<<y xの2の補数による整数の表現の、2進数のy桁分の算術左シフト。この関数は、yの非負の整数値に対してのみ定義される。左シフトの結果として最下位ビット(LSB)にシフトされるビットは、0に等しい値を有する。
以下の算術演算子が、以下の通り定義される。
= 代入演算子
++ インクリメント、つまり、x++は、x = x + 1と等価であり、配列のインデックスに使用されるとき、インクリメント演算の前に変数の値と評価される。
-- デクリメント、つまり、x--は、x = x - 1と等価であり、配列のインデックスに使用されるとき、デクリメント演算の前に変数の値と評価される。
+= 指定された量のインクリメント、つまり、x += 3は、x = x + 3と等価であり、x += (-3)は、x = x + (-3)と等価である。
-= 指定された量のデクリメント、つまり、x -= 3は、x = x - 3と等価であり、x -= (-3)は、x = x - (-3)と等価である。
以下の表記が、値の範囲を指定するために使用される。
x = y..z xは、x、y、およびzが整数値であり、zがyよりも大きいものとして、yおよびzを含んでyからzまでの整数値を取る。
以下の数学関数が、定義される。
Atan( x ) 引数xに作用し、ラジアンを単位として-π÷2およびπ÷2を含んで-π÷2からπ÷2までの範囲の出力値を有する三角法の逆正接関数
Clip1Y( x ) = Clip3( 0, ( 1 << BitDepthY ) - 1, x )
Clip1C( x ) = Clip3( 0, ( 1 << BitDepthC ) - 1, x )
Floor(x) x以下の最大の整数。
Log2( x ) xの2を底とする対数。
Log10( x ) xの10を底とする対数。
式中の優先順位が括弧を使用して明示されないとき、以下の規則が、適用される。
- より高い優先度の演算は、より低い優先度のいかなる演算よりも前に評価される。
- 同じ優先度の演算は、左から右に順に評価される。
本文中、以下の形態で、すなわち、
if( 条件0 )
ステートメント0
else if( 条件1 )
ステートメント1
...
else /* 残りの条件に関する情報を伝えるコメント */
ステートメントn
の形態で数学的に記述される論理演算のステートメントは、以下のように記述される可能性がある。
以下のように... / ...以下が適用される。
- 条件0の場合、ステートメント0
- そうではなく、条件1の場合、ステートメント1
- ...
- それ以外の場合(残りの条件に関する情報を伝えるコメント)、ステートメントn
if( 条件0a && 条件0b )
ステートメント0
else if( 条件1a || 条件1b )
ステートメント1
...
else
ステートメントn
の形態で数学的に記述される論理演算のステートメントは、以下のように記述される可能性がある。
以下のように... / ...以下が適用される。
- 以下の条件のすべてが真である場合、ステートメント0
- 条件0a
- 条件0b
- そうでなく、以下の条件のうちの1つまたは複数が真である場合、ステートメント1
- 条件1a
- 条件1b
- ...
- それ以外の場合、ステートメントn
if( 条件0 )
ステートメント0
if( 条件1 )
ステートメント1
の形態で数学的に記述される論理演算のステートメントは、以下のように記述される可能性がある。
条件0のとき、ステートメント0
条件1のとき、ステートメント1
12 送信元デバイス
13 符号化されたピクチャデータ、通信チャネル
14 送信先デバイス
16 ピクチャソース
17 ピクチャ、ピクチャデータ、生ピクチャ、生ピクチャデータ、モノクロピクチャ、カラーピクチャ、現在のピクチャ
18 プリプロセッサ、前処理ユニット、ピクチャプリプロセッサ
19 前処理されたピクチャ、前処理されたピクチャデータ
20 ビデオエンコーダ、エンコーダ、符号化装置
21 符号化されたピクチャデータ、符号化されたビットストリーム
22 通信インターフェース、通信ユニット
28 通信インターフェース、通信ユニット
30 デコーダ、ビデオデコーダ、復号装置
31 復号されたピクチャデータ、復号されたピクチャ
32 ポストプロセッサ、後処理ユニット
33 後処理されたピクチャデータ、後処理されたピクチャ
34 ディスプレイデバイス
40 ビデオコーディングシステム
41 イメージングデバイス
42 アンテナ
43 プロセッサ
44 メモリストア
45 ディスプレイデバイス
46 処理回路
201 入力、入力インターフェース
203 ピクチャブロック、元のブロック、現在のブロック、区分けされたブロック、現在のピクチャブロック
204 残差計算ユニット、残差計算
205 残差ブロック、残差
206 変換処理ユニット、変換
207 変換係数
208 量子化ユニット、量子化
209 量子化された係数、量子化された変換係数、量子化された残差係数
210 逆量子化ユニット、逆量子化
211 逆量子化された係数、逆量子化された残差係数
212 逆変換処理ユニット、(逆)変換
213 再構築された残差ブロック、逆量子化された係数、変換ブロック
214 再構築ユニット、加算器、合算器
215 再構築されたブロック
220 ループフィルタユニット、ループフィルタ
221 フィルタリングされたブロック、フィルタリングされた再構築されたブロック
230 復号ピクチャバッファ(DPB)
231 復号されたピクチャ
244 インター予測ユニット
254 イントラ予測ユニット、イントラ予測
260 モード選択ユニット
262 区分けユニット、区分け
265 予測ブロック、予測子
266 シンタックス要素
270 エントロピー符号化ユニット、エントロピーコーディング
272 出力、出力インターフェース
304 エントロピー復号ユニット、残差計算、エントロピー復号
309 量子化された係数
310 逆量子化ユニット、逆量子化
311 逆量子化された係数、変換係数
312 逆変換処理ユニット、(逆)変換、出力
313 再構築された残差ブロック
314 再構築ユニット、合算器、加算器
315 再構築されたブロック
320 ループフィルタ、ループフィルタユニット
321 フィルタリングされたブロック、復号されたビデオブロック
330 復号ピクチャバッファ(DPB)
331 復号されたピクチャ
344 インター予測ユニット
354 イントラ予測ユニット、イントラ予測
360 モード適用ユニット
365 予測ブロック
400 ビデオコーディングデバイス
410 着信ポート、入力ポート
420 受信機ユニット(Rx)
430 プロセッサ、論理ユニット、中央演算処理装置(CPU)
440 送信機ユニット(Tx)
450 発信ポート、出力ポート
460 メモリ
470 コーディングモジュール
500 装置
502 プロセッサ
504 メモリ
506 データ
508 オペレーティングシステム
510 アプリケーションプログラム
512 バス
518 ディスプレイ
1410 第1の取得ユニット、取得ユニット
1420 第2の取得ユニット、取得ユニット
1430 処理ユニット
1440 予測ユニット
Claims (32)
- 符号化デバイスまたは復号デバイスによって実施される、現在のブロックの双方向のオプティカルフロー予測において使用される予測されたブロックの拡張された領域に属するサンプル位置からのサンプル値に基づく前記双方向のオプティカルフロー予測のための方法であって、
前記現在のブロックの動きベクトル(MV)を取得するステップと、
前記MVに基づいて参照ピクチャ内の前記予測されたブロックの前記拡張された領域内のサブピクセルサンプル位置を取得するステップと、
前記参照ピクチャ内の整数ピクセルサンプル位置を取得するために、前記取得されたサブピクセルサンプル位置を処理するステップと、
前記参照ピクチャ内の前記取得された整数ピクセルサンプル位置における参照サンプル値を参照することによって、双方向のオプティカルフロー予測を実行するステップと
を含み、
前記取得されたサブピクセルサンプル位置を処理するステップは、
前記取得されたサブピクセルサンプル位置を、水平方向および垂直方向において別々に、それぞれの方向におけるそれぞれの最も近い整数ピクセルサンプル位置に丸めるステップと、
前記水平方向および前記垂直方向における前記最も近い整数ピクセルサンプル位置に基づいて、前記参照ピクチャ内の前記整数ピクセルサンプル位置を取得するステップと
を含む、方法。 - 前記参照ピクチャ内の前記取得された整数ピクセルサンプル位置における前記参照サンプル値は、前記双方向のオプティカルフロー予測における前記サブピクセルサンプル位置からの前記サンプル値と称される、請求項1に記載の方法。
- 前記取得されたサブピクセルサンプル位置を処理するステップは、前記参照ピクチャ内の前記整数ピクセルサンプル位置を取得するために、前記取得されたサブピクセルサンプル位置を丸めるステップを含む、請求項1または2に記載の方法。
- 前記方法は、
前記双方向のオプティカルフロー予測を実行するステップの前に、前記参照ピクチャ内の前記取得された整数ピクセルサンプル位置における前記参照サンプル値を、前記双方向のオプティカルフロー予測において使用される予測サンプル値としてフェッチするステップをさらに含み、
参照サンプル値を参照して前記双方向のオプティカルフロー予測を実行するステップは、
前記予測サンプル値を使用して双方向のオプティカルフロー予測を実行するステップを含む、
請求項1から3のいずれか一項に記載の方法。 - 前記取得されたサブピクセルサンプル位置を前記水平方向および前記垂直方向において別々に丸めるステップは、
それぞれの方向における前記取得されたサブピクセルサンプル位置の小数部分を閾値と比較するステップを含み、
前記小数部分が前記閾値以上である場合、前記それぞれの方向における最も近いより高い整数ピクセルサンプル位置は、前記それぞれの方向における前記最も近い整数ピクセルサンプル位置として取得され、
前記小数部分が前記閾値よりも小さい場合、前記それぞれの方向における最も近いより低い整数ピクセルサンプル位置は、前記それぞれの方向における前記最も近い整数ピクセルサンプル位置として取得される、
請求項1に記載の方法。 - 前記それぞれの方向における前記最も近いより高い整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置の前記小数部分を破棄することによって取得された前記それぞれの方向における切り捨てられた整数ピクセルサンプル位置に1のオフセットを加えることによって取得され、
前記それぞれの方向における前記最も近いより低い整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置の前記小数部分を破棄することによって取得された前記それぞれの方向における前記切り捨てられた整数ピクセルサンプル位置に0のオフセットを加えることによって取得される、
請求項5に記載の方法。 - 前記閾値は、1/Pペルのサブピクセル精度の場合、P/2によって与えられる、請求項5または6に記載の方法。
- 前記閾値は、1/16ペルのサブピクセル精度の場合、8である、請求項7に記載の方法。
- 前記取得されたサブピクセルサンプル位置を前記水平方向および前記垂直方向において別々に丸めるステップは、
それぞれの方向における前記取得されたサブピクセルサンプル位置の成分にシフト演算を適用するステップを含む、
請求項1に記載の方法。 - 前記参照ピクチャ内の前記整数ピクセルサンプル位置(x_pos, y_pos)は、
x_pos = (x_spel_pos + (1 << (shift_val - 1))) >> shift_val
y_pos = (y_spel_pos + (1 << (shift_val - 1))) >> shift_val
に従って取得され、式中、(x_spel_pos, y_spel_pos)は、前記取得されたサブピクセルサンプル位置であり、shift_valは、使用されたサブペルサンプル精度に従って選択される、
請求項9に記載の方法。 - 半ペル、1/4ペル、ペルの1/8、またはペルの1/16のサブペルサンプル精度の場合、それぞれ、1、2、3、または4のshift_valが使用される、請求項10に記載の方法。
- 前記現在のブロックの前記MVは、初期MVに基づいて動きベクトルの改善(MVR)によって取得された改善されたMVである、請求項1から11のいずれか一項に記載の方法。
- 前記MVRは、前記初期MVに関する整数距離改善段階を含み、
前記MVRの前記整数距離改善段階が前記初期MVに対する前記改善されたMVの非ゼロの変位をもたらす場合、前記参照ピクチャ内の前記整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置を丸めることによって取得される、
請求項12に記載の方法。 - 前記MVRの整数距離改善段階が前記初期MVに対する前記改善されたMVのゼロの変位をもたらす場合、前記参照ピクチャ内の前記整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置の小数部分を破棄することによって取得される、請求項12に記載の方法。
- 前記MVRの前記整数距離改善段階が前記初期MVに対する前記改善されたMVのゼロの変位をもたらす場合、前記参照ピクチャ内の前記整数ピクセルサンプル位置(x_pos, y_pos)は、
x_pos = x_spel_pos >> shift_val
y_pos = y_spel_pos >> shift_val
に従って取得され、式中、(x_spel_pos, y_spel_pos)は、前記取得されたサブピクセルサンプル位置であり、shift_valは、使用されたサブペルサンプル精度に従って選択される、
請求項13に記載の方法。 - 半ペル、1/4ペル、ペルの1/8、またはペルの1/16のサブペルサンプル精度の場合、それぞれ、1、2、3、または4のshift_valが使用される、請求項15に記載の方法。
- 前記現在のブロックは、現在のコーディングブロック、または現在のコーディングサブブロック、または現在の予測ブロックである、請求項1から16のいずれか一項に記載の方法。
- 前記参照ピクチャ内の前記取得された整数ピクセルサンプル位置における前記参照サンプル値は、前記参照ピクチャ内の前記予測されたブロックの境界に対応する境界サンプル勾配の計算において使用される、請求項1から17のいずれか一項に記載の方法。
- 請求項1から18のいずれか一項に記載の方法を実行するための処理回路を含む、エンコーダ(20)。
- 請求項1から18のいずれか一項に記載の方法を実行するための処理回路を含む、デコーダ(30)。
- コンピュータによって実行されるときに、前記コンピュータに、請求項1から18のいずれか一項に記載の方法を行わせる命令を含む、コンピュータプログラム。
- 1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサに結合され、前記1つまたは複数のプロセッサによって実行するための命令を記憶する非一時的コンピュータ可読記憶媒体と
を含むエンコーダ(20)であって、前記命令は、前記1つまたは複数のプロセッサによって実行されるときに、請求項1から18のいずれか一項に記載の方法を行うように前記エンコーダを構成する、
エンコーダ(20)。 - 1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサに結合され、前記1つまたは複数のプロセッサによって実行するための命令を記憶する非一時的コンピュータ可読記憶媒体と
を含むデコーダ(30)であって、前記命令は、前記1つまたは複数のプロセッサによって実行されるときに、請求項1から18のいずれか一項に記載の方法を行うように前記デコーダを構成する、
デコーダ(30)。 - 現在のブロックの双方向のオプティカルフロー予測を実行するように構成された予測ユニットと、
前記現在のブロックの動きベクトル(MV)を取得するように構成された第1の取得ユニットと、
前記MVに基づいて参照ピクチャ内の予測されたブロックの拡張された領域内のサブピクセルサンプル位置を取得するように構成された第2の取得ユニットと、
前記参照ピクチャ内の整数ピクセルサンプル位置を取得するために、前記取得されたサブピクセルサンプル位置を処理するように構成された処理ユニットと
を含むエンコーダ(20)であって、
前記予測ユニットは、前記参照ピクチャ内の前記取得された整数ピクセルサンプル位置における参照サンプル値を参照することによって前記双方向のオプティカルフロー予測を実行するように構成され、
前記取得されたサブピクセルサンプル位置を処理することは、
前記取得されたサブピクセルサンプル位置を、水平方向および垂直方向において別々に、それぞれの方向におけるそれぞれの最も近い整数ピクセルサンプル位置に丸めることと、
前記水平方向および前記垂直方向における前記最も近い整数ピクセルサンプル位置に基づいて、前記参照ピクチャ内の前記整数ピクセルサンプル位置を取得することとを含む、
エンコーダ(20)。 - 前記取得されたサブピクセルサンプル位置を処理することは、前記参照ピクチャ内の前記整数ピクセルサンプル位置を取得するために、前記取得されたサブピクセルサンプル位置を丸めることを含む、請求項24に記載のエンコーダ(20)。
- 前記取得されたサブピクセルサンプル位置を前記水平方向および前記垂直方向において別々に丸めることは、
それぞれの方向における前記取得されたサブピクセルサンプル位置の小数部分を閾値と比較することを含み、
前記小数部分が前記閾値以上である場合、前記それぞれの方向における最も近いより高い整数ピクセルサンプル位置は、前記それぞれの方向における前記最も近い整数ピクセルサンプル位置として取得され、
前記小数部分が前記閾値よりも小さい場合、前記それぞれの方向における最も近いより低い整数ピクセルサンプル位置は、前記それぞれの方向における前記最も近い整数ピクセルサンプル位置として取得される、
請求項24に記載のエンコーダ(20)。 - 前記それぞれの方向における前記最も近いより高い整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置の前記小数部分を破棄することによって取得された前記それぞれの方向における切り捨てられた整数ピクセルサンプル位置に1のオフセットを加えることによって取得され、
前記それぞれの方向における前記最も近いより低い整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置の前記小数部分を破棄することによって取得された前記それぞれの方向における前記切り捨てられた整数ピクセルサンプル位置に0のオフセットを加えることによって取得される、
請求項26に記載のエンコーダ(20)。 - 現在のブロックの双方向のオプティカルフロー予測を実行するように構成された予測ユニットと、
符号化されたビデオのビットストリームから前記現在のブロックの動きベクトル(MV)を取得するように構成された第1の取得ユニットと、
前記MVに基づいて参照ピクチャ内の予測されたブロックの拡張された領域内のサブピクセルサンプル位置を取得するように構成された第2の取得ユニットと、
前記参照ピクチャ内の整数ピクセルサンプル位置を取得するために、前記取得されたサブピクセルサンプル位置を処理するように構成された処理ユニットと
を含むデコーダ(30)であって、
前記予測ユニットは、前記参照ピクチャ内の前記取得された整数ピクセルサンプル位置における参照サンプル値を参照することによって前記双方向のオプティカルフロー予測を実行するように構成され、
前記取得されたサブピクセルサンプル位置を処理することは、
前記取得されたサブピクセルサンプル位置を、水平方向および垂直方向において別々に、それぞれの方向におけるそれぞれの最も近い整数ピクセルサンプル位置に丸めることと、
前記水平方向および前記垂直方向における前記最も近い整数ピクセルサンプル位置に基づいて、前記参照ピクチャ内の前記整数ピクセルサンプル位置を取得することとを含む、
デコーダ(30)。 - 前記取得されたサブピクセルサンプル位置を処理することは、前記参照ピクチャ内の前記整数ピクセルサンプル位置を取得するために、前記取得されたサブピクセルサンプル位置を丸めることを含む、請求項28に記載のデコーダ(30)。
- 前記取得されたサブピクセルサンプル位置を前記水平方向および前記垂直方向において別々に丸めることは、
それぞれの方向における前記取得されたサブピクセルサンプル位置の小数部分を閾値と比較することを含み、
前記小数部分が前記閾値以上である場合、前記それぞれの方向における最も近いより高い整数ピクセルサンプル位置は、前記それぞれの方向における前記最も近い整数ピクセルサンプル位置として取得され、
前記小数部分が前記閾値よりも小さい場合、前記それぞれの方向における最も近いより低い整数ピクセルサンプル位置は、前記それぞれの方向における前記最も近い整数ピクセルサンプル位置として取得される、
請求項28に記載のデコーダ(30)。 - 前記それぞれの方向における前記最も近いより高い整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置の前記小数部分を破棄することによって取得された前記それぞれの方向における切り捨てられた整数ピクセルサンプル位置に1のオフセットを加えることによって取得され、
前記それぞれの方向における前記最も近いより低い整数ピクセルサンプル位置は、前記取得されたサブピクセルサンプル位置の前記小数部分を破棄することによって取得された前記それぞれの方向における前記切り捨てられた整数ピクセルサンプル位置に0のオフセットを加えることによって取得される、
請求項30に記載のデコーダ(30)。 - コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体は、プロセッサによって実行されうるコンピュータプログラムを記憶し、前記コンピュータプログラムが前記プロセッサによって実行されるとき、前記プロセッサは請求項1から18のいずれか一項に記載の方法を行う、コンピュータ可読記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023190926A JP7640647B2 (ja) | 2019-06-24 | 2023-11-08 | 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201931025013 | 2019-06-24 | ||
IN201931025013 | 2019-06-24 | ||
PCT/CN2020/097762 WO2020259507A1 (en) | 2019-06-24 | 2020-06-23 | Method for computing position of integer grid reference sample for block level boundary sample gradient computation in bi-predictive optical flow computation and bi-predictive correction |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023190926A Division JP7640647B2 (ja) | 2019-06-24 | 2023-11-08 | 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022540771A JP2022540771A (ja) | 2022-09-20 |
JP7384939B2 true JP7384939B2 (ja) | 2023-11-21 |
Family
ID=74060440
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021576697A Active JP7384939B2 (ja) | 2019-06-24 | 2020-06-23 | 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 |
JP2023190926A Active JP7640647B2 (ja) | 2019-06-24 | 2023-11-08 | 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023190926A Active JP7640647B2 (ja) | 2019-06-24 | 2023-11-08 | 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 |
Country Status (10)
Country | Link |
---|---|
US (2) | US12184862B2 (ja) |
EP (1) | EP3981156B1 (ja) |
JP (2) | JP7384939B2 (ja) |
KR (2) | KR102660120B1 (ja) |
CN (1) | CN114009041A (ja) |
AU (1) | AU2020308351A1 (ja) |
BR (1) | BR112021026327A2 (ja) |
CA (1) | CA3144797A1 (ja) |
MX (1) | MX2022000141A (ja) |
WO (1) | WO2020259507A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114009041A (zh) | 2019-06-24 | 2022-02-01 | 华为技术有限公司 | 双向预测光流计算和双向预测校正中用于块级边界样本梯度计算的整数网格参考样本位置的计算方法 |
WO2021001220A1 (en) * | 2019-07-01 | 2021-01-07 | Interdigital Vc Holdings France, Sas | Bi-directional optical flow refinement of affine motion compensation |
CN115272423B (zh) * | 2022-09-19 | 2022-12-16 | 深圳比特微电子科技有限公司 | 一种训练光流估计模型的方法、装置和可读存储介质 |
CN117834583B (zh) * | 2023-12-08 | 2024-08-30 | 南京智数科技有限公司 | 一种公辅车间的继电保护管理系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130272410A1 (en) | 2012-04-11 | 2013-10-17 | Qualcomm Incorporated | Motion vector rounding |
JP2013543318A (ja) | 2010-10-06 | 2013-11-28 | インテル コーポレイション | 低複雑度の動きベクトルを導出するシステム及び方法 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU1910800A (en) * | 1998-11-09 | 2000-05-29 | Broadcom Corporation | Graphics display system |
JP4114885B2 (ja) * | 2005-10-31 | 2008-07-09 | 松下電器産業株式会社 | 画像符号化装置、方法、及びプログラム |
WO2007091213A2 (en) * | 2006-02-10 | 2007-08-16 | Koninklijke Philips Electronics N.V. | Video processor comprising a motion estimator of the recursive type |
US8811484B2 (en) | 2008-07-07 | 2014-08-19 | Qualcomm Incorporated | Video encoding by filter selection |
JP2010161747A (ja) * | 2009-01-09 | 2010-07-22 | Toshiba Corp | サブピクセル生成装置及び方法並びに動き補償装置 |
EP2446629B1 (fr) * | 2009-06-23 | 2018-08-01 | Orange | Procédés de codage et de décodage d'images, dispositifs de codage et de décodage, et programme d'ordinateur correspondants |
US8811473B2 (en) * | 2009-07-07 | 2014-08-19 | Panasonic Corporation | Moving picture decoding device, moving picture decoding method, moving picture decoding system, integrated circuit, and program |
JP5323252B2 (ja) * | 2010-03-30 | 2013-10-23 | 株式会社東芝 | 動画像符号化方法、復号化方法、符号化装置および復号化装置 |
US9143799B2 (en) * | 2011-05-27 | 2015-09-22 | Cisco Technology, Inc. | Method, apparatus and computer program product for image motion prediction |
US10536701B2 (en) * | 2011-07-01 | 2020-01-14 | Qualcomm Incorporated | Video coding using adaptive motion vector resolution |
US9998726B2 (en) * | 2012-06-20 | 2018-06-12 | Nokia Technologies Oy | Apparatus, a method and a computer program for video coding and decoding |
TWI496453B (zh) * | 2012-10-05 | 2015-08-11 | Zhangjiagang Kangde Xin Optronics Material Co Ltd | A method of displaying a three - dimensional image in both directions |
WO2014107074A1 (ko) | 2013-01-04 | 2014-07-10 | 삼성전자 주식회사 | 스케일러블 비디오의 부호화 및 복호화를 위한 움직임 보상 방법 및 장치 |
CN105338352B (zh) * | 2014-07-24 | 2019-04-19 | 华为技术有限公司 | 一种视频编码中自适应反量化方法及装置 |
US10462480B2 (en) * | 2014-12-31 | 2019-10-29 | Microsoft Technology Licensing, Llc | Computationally efficient motion estimation |
CN107409226B (zh) * | 2015-03-02 | 2019-11-12 | 寰发股份有限公司 | 用于视频编解码中的具有分数像素块向量分辨率的IntraBC模式的方法和装置 |
US11153600B2 (en) * | 2016-02-08 | 2021-10-19 | Sharp Kabushiki Kaisha | Motion vector generation device, prediction image generation device, video decoding device, and video coding device |
US20170244981A1 (en) * | 2016-02-24 | 2017-08-24 | Mediatek Inc. | Reconfigurable interpolation filter and associated interpolation filtering method |
US11095893B2 (en) * | 2016-10-12 | 2021-08-17 | Qualcomm Incorporated | Primary transform and secondary transform in video coding |
US10701366B2 (en) | 2017-02-21 | 2020-06-30 | Qualcomm Incorporated | Deriving motion vector information at a video decoder |
US10523964B2 (en) * | 2017-03-13 | 2019-12-31 | Qualcomm Incorporated | Inter prediction refinement based on bi-directional optical flow (BIO) |
US10659788B2 (en) * | 2017-11-20 | 2020-05-19 | Google Llc | Block-based optical flow estimation for motion compensated prediction in video coding |
CN116744017A (zh) * | 2017-08-29 | 2023-09-12 | Sk电信有限公司 | 视频编码装置、视频解码装置和存储比特流的方法 |
US10728573B2 (en) * | 2017-09-08 | 2020-07-28 | Qualcomm Incorporated | Motion compensated boundary pixel padding |
US10841794B2 (en) * | 2017-09-18 | 2020-11-17 | Futurewei Technologies, Inc. | Adaptive motion vector resolution |
KR102595689B1 (ko) * | 2017-09-29 | 2023-10-30 | 인텔렉추얼디스커버리 주식회사 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
US11736713B2 (en) * | 2018-11-14 | 2023-08-22 | Tencent America LLC | Constraint on affine model motion vector |
CN114009041A (zh) | 2019-06-24 | 2022-02-01 | 华为技术有限公司 | 双向预测光流计算和双向预测校正中用于块级边界样本梯度计算的整数网格参考样本位置的计算方法 |
-
2020
- 2020-06-23 CN CN202080045664.3A patent/CN114009041A/zh active Pending
- 2020-06-23 BR BR112021026327A patent/BR112021026327A2/pt unknown
- 2020-06-23 CA CA3144797A patent/CA3144797A1/en active Pending
- 2020-06-23 KR KR1020227002313A patent/KR102660120B1/ko active Active
- 2020-06-23 EP EP20830554.0A patent/EP3981156B1/en active Active
- 2020-06-23 JP JP2021576697A patent/JP7384939B2/ja active Active
- 2020-06-23 AU AU2020308351A patent/AU2020308351A1/en active Pending
- 2020-06-23 KR KR1020247013014A patent/KR20240056654A/ko active Pending
- 2020-06-23 WO PCT/CN2020/097762 patent/WO2020259507A1/en unknown
- 2020-06-23 MX MX2022000141A patent/MX2022000141A/es unknown
-
2021
- 2021-12-22 US US17/645,608 patent/US12184862B2/en active Active
-
2023
- 2023-11-08 JP JP2023190926A patent/JP7640647B2/ja active Active
-
2024
- 2024-11-21 US US18/954,675 patent/US20250088637A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013543318A (ja) | 2010-10-06 | 2013-11-28 | インテル コーポレイション | 低複雑度の動きベクトルを導出するシステム及び方法 |
US20130272410A1 (en) | 2012-04-11 | 2013-10-17 | Qualcomm Incorporated | Motion vector rounding |
Non-Patent Citations (1)
Title |
---|
Sriram Sethuraman,CE9-related: A SIMD-friendly simplification for BDOF,JVET-N0312-v2,2019年03月20日 |
Also Published As
Publication number | Publication date |
---|---|
US20220116624A1 (en) | 2022-04-14 |
US20250088637A1 (en) | 2025-03-13 |
CA3144797A1 (en) | 2020-12-30 |
KR102660120B1 (ko) | 2024-04-22 |
KR20240056654A (ko) | 2024-04-30 |
JP2024009038A (ja) | 2024-01-19 |
KR20220024877A (ko) | 2022-03-03 |
AU2020308351A1 (en) | 2022-02-03 |
BR112021026327A2 (pt) | 2022-03-03 |
CN114009041A (zh) | 2022-02-01 |
EP3981156A1 (en) | 2022-04-13 |
MX2022000141A (es) | 2022-04-27 |
US12184862B2 (en) | 2024-12-31 |
WO2020259507A1 (en) | 2020-12-30 |
WO2020259507A8 (en) | 2021-02-25 |
EP3981156B1 (en) | 2025-03-26 |
JP2022540771A (ja) | 2022-09-20 |
JP7640647B2 (ja) | 2025-03-05 |
EP3981156A4 (en) | 2023-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7271697B2 (ja) | オプティカルフローの改善の早期終了 | |
JP7384939B2 (ja) | 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法 | |
CN113545073A (zh) | 在解码侧运动修正搜索期间使用扩展样本 | |
CN113615194B (zh) | 使用抽取预测块的dmvr | |
KR102611845B1 (ko) | 옵티컬 플로 기반 비디오 인터 예측 | |
CA3117627A1 (en) | Separate merge list for subblock merge candidates and intra-inter techniques harmonization for video coding | |
WO2020253853A1 (en) | Early termination for optical flow refinment | |
RU2820638C2 (ru) | Способ вычисления позиции опорной выборки целочисленной сетки для вычисления градиента граничной выборки блочного уровня в вычислении оптического потока с двойным предсказанием и коррекции с двойным предсказанием | |
RU2808608C2 (ru) | Раннее прекращение уточнения оптического потока | |
EP3981157A1 (en) | Motion field storage optimization for the line buffer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220222 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220222 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230320 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230403 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230629 |
|
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: 20231010 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231109 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7384939 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |