JP2022553363A - ビデオ・データを処理する方法、装置及び記憶媒体 - Google Patents
ビデオ・データを処理する方法、装置及び記憶媒体 Download PDFInfo
- Publication number
- JP2022553363A JP2022553363A JP2022523814A JP2022523814A JP2022553363A JP 2022553363 A JP2022553363 A JP 2022553363A JP 2022523814 A JP2022523814 A JP 2022523814A JP 2022523814 A JP2022523814 A JP 2022523814A JP 2022553363 A JP2022553363 A JP 2022553363A
- Authority
- JP
- Japan
- Prior art keywords
- syntax element
- video
- wraparound
- picture
- 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 description 268
- 238000012545 processing Methods 0.000 title claims description 14
- 230000001131 transforming effect Effects 0.000 claims abstract description 15
- 238000003672 processing method Methods 0.000 claims abstract description 14
- 230000008569 process Effects 0.000 claims description 107
- 239000013598 vector Substances 0.000 claims description 71
- 241000023320 Luma <angiosperm> Species 0.000 claims description 62
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 60
- 230000006978 adaptation Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 239000011449 brick Substances 0.000 claims description 3
- 241001508691 Martes zibellina Species 0.000 claims 7
- 230000009466 transformation Effects 0.000 abstract description 9
- 239000000523 sample Substances 0.000 description 114
- 239000013074 reference sample Substances 0.000 description 23
- 238000001914 filtration Methods 0.000 description 14
- 230000001143 conditioned effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000013139 quantization Methods 0.000 description 8
- 238000012952 Resampling Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 230000015654 memory Effects 0.000 description 5
- 238000005192 partition Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 101150067055 minC gene Proteins 0.000 description 4
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual 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/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/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/174—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 slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/55—Motion estimation with spatial constraints, e.g. at image or region borders
-
- 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/563—Motion estimation with padding, i.e. with filling of non-object values in an arbitrarily shaped picture block or region for estimation purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
パリ条約に関して適用可能な特許法及び/又は規則に基づいて、本願は、2019年10月23日付で出願された国際特許出願第PCT/CN2019/112820号についての優先権及び利益を適時に主張するために行われている。法に基づく全ての目的に関し、前述の出願の全ての開示は、本願の開示の一部として参照により援用される。
本件特許明細書等はビデオ・コーディング及びデコーディングに関する。
ビデオ圧縮の進歩にもかかわらず、デジタル・ビデオは、インターネット及びその他のデジタル通信ネットワークにおいて利用する最大の帯域幅を占めている。ビデオを受信及び表示することが可能な接続ユーザー・デバイスの台数が増加するにつれて、デジタル・ビデオの利用に対する帯域幅需要は増加し続けるであろうということが予想される。
本件はビデオ・コーディング技術に関連する。具体的には、本件はビデオ・コーディングにおける適応解像度変換に関連する。これは、HEVCのような既存のビデオ/画像コーディング規格、又はファイナライズされる予定の規格(Versatile Video Coding, VVC)に適用される可能性がある。本件は将来のビデオ・コーディング規格又はビデオ・コーデックに適用される可能性もある。
ビデオ・コーディング規格は、周知のITU-T及びISO/IEC規格の開発を通じて主に発展してきた。ITU-TはH.261とH.263を作成し、ISO/IECはMPEG-1とMPEG-4 Visualを作成し、2つの組織は共同してH.262/MPEG-2 VideoとH.264/MPEG-4 Advanced Video Coding(AVC)とH.265/HEVC規格とを作成した。H.262以来、ビデオ・コーディング規格はハイブリッド・ビデオ・コーディング構造に基づいており、そこでは時間的予測と変換コーディングが使用される。HEVCを越える将来のビデオ・コーディング技術を探求するため、2015年に共同ビデオ探査チーム(Joint Video Exploration Team,JVET)がVCEGとMPEGにより共同で設立された。それ以来、多くの新しい方法がJVETによって採用されており、共同探索モデル(Joint Exploration Model,JEM)[3][4]と名付けられる参照ソフトウェアに入れられている。2018年4月には、VCEG(Q6/16)とISO/IEC JTC1 SC29/WG11(MPEG)との間で共同ビデオ・エキスパート・チーム(JVET)が誕生し、HEVCと比較して対して50%のビットレート低減を目指すVVC規格に取り組んでいる。
- テレビ電話及び会議におけるレート・アダプテーション:コーディングされるビデオを、変化するネットワーク条件に適応させるために、ネットワーク条件が悪化して利用可能な帯域幅が小さくなると、エンコーダは、より小さな解像度のピクチャを符号化することによって、それに合わせることができる。現在、ピクチャの解像度を変化させることは、IRAPピクチャの後でしか行うことができないが;これには幾つかの問題がある。妥当な品質のIRAPピクチャは、インター・コーディングされたピクチャよりもはるかに大きく、相応して復号化がより複雑化するであろう:これには時間とリソースがかかる。解像度の変更が、ローディングの理由でデコーダによって要求された場合、それは問題となる。また、低遅延バッファ条件に違反し、オーディオの再同期を強制し、ストリームのエンド・ツー・エンド遅延が少なくとも一時的に増加する可能性がある。これは貧弱なユーザー体験をもたらす可能性がある。
このモードは、参照ピクチャを、予測のために使用する前にワープする(warp)アルゴリズムを記述している。これは、予測されるピクチャとは異なるソース・フォーマットを有する参照ピクチャを、リサンプリングするのに有用である可能性がある。それはまた、参照ピクチャの形状、サイズ、及び位置をワーピング(warping)することによって、グローバル動き推定又は回転運動の推定に使用することも可能である。シンタックスは、リサンプリング・アルゴリズムにも使用されるべきワーピング・パラメータを含む。参照ピクチャ・リサンプリング・モードに関する動作の最もシンプルなレベルは、4リサンプリングの暗黙的なファクターであり、なぜならFIRフィルタがアップサンプリング及びダウンサンプリング・プロセスに適用されることを必要とするだけだからである。この場合、追加的なシグナリング・オーバヘッドは必要とされず、なぜなら、それを使用することは、新たなピクチャ(ピクチャ・ヘッダで示される)のサイズが以前のピクチャのサイズと異なる場合であると理解されるからである。
以下に挙げられているように、ARCに対処する幾つかの貢献(contributions)が提案されている:
[0033] JVET-M0135, JVET-M0259, JVET-N0048, JVET-N0052, JVET-N0118, JVET-N0279.
[0034] JVET-O2001-v14におけるARC
ARCは、リファレンス・ピクチャ・リサンプリング(Reference Picture Resampling, RPR)としても知られており、これはJVET-O2001-v14で導入されている。
8.5.6.3.1 概要
このプロセスへの入力は以下の通りである:
- 現在のピクチャの左上ルマ・サンプルに対する、現在のコーディング・サブブロックの左上サンプルを指定するルマ位置( xSb, ySb ) ,
- 現在のコーディング・サブブロックの幅を指定する変数sbWidth,
- 現在のコーディング・サブブロックの高さを指定する変数sbHeight,
- 動きベクトルオフセットmvOffset,
- 精密化された動きベクトルrefMvLX,
- 選択された参照ピクチャ・サンプル配列refPicLX,
- ハーフ・サンプル補間フィルタ・インデックスhpelIfIdx,
- 双方向オプティカル・フロー・フラグbdofFlag,
- 現在のブロックの色成分インデックスを指定する変数cIdx
このプロセスの出力は以下の通りである:
- 予測サンプル値の(sbWidth + brdExtSize)x(sbHeight + brdExtSize)の配列predSamplesLX。
brdExtSize = ( bdofFlag | | ( inter_affine_flag[ xSb ][ ySb ] && sps_affine_prof_enabled_flag ) ) ? 2 : 0 (8-752)
変数fRefWidthは、ルマ・サンプルの参照ピクチャのPicOutputWidthLに等しく設定される。
変数fRefHeightは、ルマ・サンプルの参照ピクチャのPicOutputHeightLに等しく設定される。
動きベクトルmvLXは、( refMvLX - mvOffset )に等しく設定される。
- cIdxが0に等しい場合、以下が適用される:
- スケーリング因子とその固定小数点表現は、次のように定義される
hori_scale_fp = ( ( fRefWidth << 14 ) + ( PicOutputWidthL >> 1 ) ) / PicOutputWidthL (8-753)
vert_scale_fp = ( ( fRefHeight << 14 ) + ( PicOutputHeightL >> 1 ) ) / PicOutputHeightL (8-754)
- (xIntL, yIntL)を、フル・サンプル単位で与えられるルマ位置であるとし、(xFracL, yFracL)を、1/16サンプル単位で与えられるオフセットであるとする。これらの変数は、参照サンプル配列refPicLX内の分数サンプル位置を指定するためにこの条項においのみ使用される。
- ( refxSbL, refySbL ) と ( refxL, refyL )を、1/16サンプル単位で与えられる動きベクトル( refMvLX[0], refMvLX[1] )により指し示されるルマ位置であるとする。変数refxSbL, refxL, refySbL, 及び refyLは、以下のように導出される:
refxSbL = ( ( xSb << 4 ) + refMvLX[ 0 ] ) * hori_scale_fp (8-755)
refxL = ( ( Sign( refxSb ) * ( ( Abs( refxSb ) + 128 ) >> 8 )
+ xL * ( ( hori_scale_fp + 8 ) >> 4 ) ) + 32 ) >> 6 (8-756)
refySbL = ( ( ySb << 4 ) + refMvLX[ 1 ] ) * vert_scale_fp (8-757)
refyL = ( ( Sign( refySb ) * ( ( Abs( refySb ) + 128 ) >> 8 ) + yL *
( ( vert_scale_fp + 8 ) >> 4 ) ) + 32 ) >> 6 (8-758)
- 変数xIntL, yIntL, xFracL 及び yFracLは、以下のように導出される:
xIntL = refxL >> 4 (8-759)
yIntL = refyL >> 4 (8-760)
xFracL = refxL & 15 (8-761)
yFracL = refyL & 15 (8-762)
- bdofFlagがTRUEに等しいか、又は( sps_affine_prof_enabled_flag がTRUEに等しく、inter_affine_flag[ xSb ][ ySb ]がTRUEに等しい)、且つ以下の条件のうちの1つ以上が真である場合、予測ルマ・サンプル値predSamplesLX[ xL ][ yL ]は、条項8.5.6.3.3で規定されているようなルマ整数サンプル・フェッチ・プロセスを、( xIntL + ( xFracL >> 3) - 1), yIntL + ( yFracL >> 3 ) - 1 ) 及び refPicLXを入力として起動することにより、導出される。
- ( xIntC, yIntC )を、フル・サンプル単位で与えられるクロマ位置であるとし、( xFracC, yFracC )を、1/32サンプル単位で与えられるオフセットであるとする。これらの変数は、参照サンプル配列refPicLX内の一般的な分数サンプル位置を指定するためにこの条項においてのみ使用される。
- (refxSbC, refySbC) と ( refxC, refyC )を、1/32サンプル単位で与えられる動きベクトル(mvLX[ 0 ], mvLX[ 1 ])により指し示されるクロマ位置であるとする。変数refxSbC, refySbC, refxC 及び refyCは、以下のように導出される:
refxSbC = ( ( xSb / SubWidthC << 5 ) + mvLX[ 0 ] ) * hori_scale_fp (8-763)
refxC = ( ( Sign( refxSbC ) * ( ( Abs( refxSbC ) + 256 ) >> 9 )
+ xC * ( ( hori_scale_fp + 8 ) >> 4 ) ) + 16 ) >> 5 (8-764)
refySbC = ( ( ySb / SubHeightC << 5 ) + mvLX[ 1 ] ) * vert_scale_fp (8-765)
refyC = ( ( Sign( refySbC ) * ( ( Abs( refySbC ) + 256 ) >> 9 )
+ yC* ( ( vert_scale_fp + 8 ) >> 4 ) ) + 16 ) >> 5 (8-766)
- 変数xIntC, yIntC, xFracC 及び yFracCは、以下のように導出される:
xIntC = refxC >> 5 (8-767)
yIntC = refyC >> 5 (8-768)
xFracC = refyC & 31 (8-769)
yFracC = refyC & 31 (8-770)
- 予測サンプル値predSamplesLX[ xC ][ yC ]は、条項8.5.6.3.4で規定されるプロセスを、( xIntC, yIntC ), ( xFracC, yFracC ), ( xSbIntC, ySbIntC ), sbWidth, sbHeight 及び refPicLXを入力として起動することによって、導出される。
ルマ・サンプル補間フィルタリング・プロセス
このプロセスへの入力は以下の通りである:
- フル・サンプル単位におけるルマ位置( xIntL, yIntL ) ,
- 分数サンプル単位におけるルマ位置( xFracL, yFracL ),
- 参照ピクチャの左上ルマ・サンプルに対する、参照サンプル・パディングのための境界ブロックの左上サンプルを指定するフル・サンプル単位におけるルマ位置( xSbIntL, ySbIntL ),
- ルマ参照サンプル配列refPicLXL,
- ハーフ・サンプル補間フィルタ・インデックスhpelIfIdx,
- 現在のサブ・ブロックの幅を指定する変数sbWidth,
- 現在のサブ・ブロックの高さを指定する変数sbHeight,
- 現在のピクチャの左上ルマ・サンプルに対する、現在のサブ・ブロックの左上サンプルを指定するルマ位置( xSb, ySb ) ,
このプロセスの出力は、予測されたルマ・サンプル値predSampleLXLである。
変数shift1, shift2 及びshift3は、以下のように導出される。
xFracL又はyFracLに等しい1/16分数サンプル位置p各々に関し、ルマ補間フィルタ係数fL[ p ]は、以下のように導出される:
- MotionModelIdc[ xSb ][ ySb ]が0より大きく、sbWidthとsbHeightが双方とも4に等しい場合、ルマ補間フィルタ係数fL[ p ]は、テーブル8-12で規定される。
フル・サンプル単位におけるルマ位置( xInti, yInti )は、i = 0..7に対して以下のように導出される:
- subpic_treated_as_pic_flag[ SubPicIdx ]が1に等しい場合、以下が適用される:
xInti = Clip3( SubPicLeftBoundaryPos, SubPicRightBoundaryPos, xIntL + i - 3 ) (8-771)
yInti = Clip3( SubPicTopBoundaryPos, SubPicBotBoundaryPos, yIntL + i - 3 ) (8-772)
- それ以外の場合(subpic_treated_as_pic_flag[ SubPicIdx ]が0に等しい)、以下が適用される:
xInti = Clip3( 0, picW - 1, sps_ref_wraparound_enabled_flag ?
ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL + i - 3 ) : (8-773)
xIntL + i - 3 )
yInti = Clip3( 0, picH - 1, yIntL + i - 3 ) (8-774)
フル・サンプル単位におけるルマ位置は、i = 0..7に対して以下のように更に修正される:
xInti = Clip3( xSbIntL - 3, xSbIntL + sbWidth + 4, xInti ) (8-775)
yInti = Clip3( ySbIntL - 3, ySbIntL + sbHeight + 4, yInti ) (8-776)
予測されたルマ・サンプル値predSampleLXLは、以下のように導出される:
- xFracLと yFracLの双方が0に等しい場合、predSampleLXLの値は、以下のように導出される:
predSampleLXL = refPicLXL[ xInt3 ][ yInt3 ] << shift3 (8-777)
- それ以外の場合、xFracL isが0に等しくなく、且つyFracLが0に等しいならば、predSampleLXLの値は、以下のように導出される:
- サンプル配列temp[ n ](n = 0..7)は、以下のように導出される:
このプロセスへの入力は以下の通りである:
- フル・サンプル単位におけるルマ位置( xIntL, yIntL ),
- ルマ参照サンプル配列refPicLXL,
このプロセスの出力は、予測されたルマ・サンプル値predSampleLXLである。
変数shiftは、Max( 2, 14 - BitDepthY )に等しく設定される。
変数picWは、pic_width_in_luma_samplesに等しく設定され、変数picHは、pic_height_in_luma_samplesに等しく設定される。
フル・サンプル単位におけるルマ位置( xInt, yInt )は、以下のように導出される:
xInt = Clip3( 0, picW - 1, sps_ref_wraparound_enabled_flag ? (8-782)
ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL ) : xIntL )
yInt = Clip3( 0, picH - 1, yIntL ) (8-783)
予測されたルマ・サンプル値predSampleLXLは、以下のように導出される:
predSampleLXL = refPicLXL[ xInt ][ yInt ] << shift3 (8-784)
クロマ・サンプル補間プロセス
このプロセスへの入力は以下の通りである:
- フル・サンプル単位におけるクロマ位置( xIntC, yIntC ),
- 1/32分数サンプル単位におけるクロマ位置( xFracC, yFracC ),
- 参照ピクチャの左上クロマ・サンプルに対する、参照サンプル・パディングのための境界ブロックの左上サンプルを指定するフル・サンプル単位におけるクロマ位置( xSbIntC, ySbIntC )
- 現在のサブ・ブロックの幅を指定する変数sbWidth,
- 現在のサブ・ブロックの高さを指定する変数sbHeight,
- クロマ参照サンプル配列refPicLXC.
このプロセスの出力は、予測されたクロマ・サンプル値predSampleLXCである。
変数shift1, shift2 及びshift3は、以下のように導出される:
- 変数shift1は、Min( 4, BitDepthC - 8 )に等しく設定され、変数shift2は、6に等しく設定され、変数shift3は、Max( 2, 14 - BitDepthC )に等しく設定される。
- 変数picWCは、pic_width_in_luma_samples / SubWidthCに等しく設定され、変数picHCは、pic_height_in_luma_samples / SubHeightCに等しく設定される。
xFracC又はyFracC に等しい1/32分数サンプル位置p各々に関するクロマ補間フィルタ係数fC[ p ] は、テーブル8-13で規定される。
変数xOffsetは、( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY ) / SubWidthCに等しく設定される。
フル・サンプル単位におけるクロマ位置( xInti, yInti )は、i = 0..3に関して以下のように導出される:
- subpic_treated_as_pic_flag[ SubPicIdx ]が1に等しい場合、以下が適用される:
xInti = Clip3( SubPicLeftBoundaryPos / SubWidthC, SubPicRightBoundaryPos / SubWidthC, xIntL + i ) (8-785)
yInti = Clip3( SubPicTopBoundaryPos / SubHeightC, SubPicBotBoundaryPos / SubHeightC, yIntL + i ) (8-786)
- それ以外の場合(subpic_treated_as_pic_flag[ SubPicIdx ]が0に等しい)、以下が適用される:
xInti = Clip3( 0, picWC - 1, sps_ref_wraparound_enabled_flag ? ClipH( xOffset, picWC, xIntC + i - 1 ) : (8-787)
xIntC + i - 1 )
yInti = Clip3( 0, picHC - 1, yIntC + i - 1 ) (8-788)
フル・サンプル単位におけるクロマ位置( xInti, yInti )は、i = 0..3に関して以下のように更に修正される:
xInti = Clip3( xSbIntC - 1, xSbIntC + sbWidth + 2, xInti ) (8-789)
yInti = Clip3( ySbIntC - 1, ySbIntC + sbHeight + 2, yInti ) (8-790)
予測されたクロマ・サンプル値predSampleLXCは、以下のように導出される:
- xFracCとyFracCの双方が0に等しい場合、predSampleLXCの値は、以下のように導出される:
predSampleLXC = refPicLXC[ xInt1 ][ yInt1 ] << shift3 (8-791)
- それ以外の場合、xFracC が0に等しくなく、且つyFracC が0に等しい場合、predSampleLXCの値は、以下のように導出される:
- サンプル配列temp[ n ] (n = 0..3)は、以下のように導出される:
predSampleLXC =( fC[ yFrac"C " ][ 0 ] * temp[ 0 ] +
fC[ yFrac"C" ][ 1 ] * temp[ 1 ] +
fC[ yFrac"C" ][ 2 ] * temp[ 2 ] + (8-795)
fC[ yFrac"C" ][ 3 ] * temp[ 3 ] ) >> shift2
テーブル8-13 - 1/32分数サンプル位置p各々に関するクロマ補間フィルタ係数fC[ p ]の仕様
図5に示すように、ERP又はPERPピクチャ・フォーマットに対処するために、ラップ・アラウンド・クリッピング(Wrap-Around clipping)がJVET-L0231により提案された。
フル・サンプル単位におけるルマ位置( xInti, yInti )は、i=0..7に対して以下のように導出される:
- subpic_treated_as_pic_flag[ SubPicIdx ]が1に等しい場合、以下が適用される:
xInti = Clip3( SubPicLeftBoundaryPos, SubPicRightBoundaryPos, xIntL + i - 3 ) (8-754)
yInti = Clip3( SubPicTopBoundaryPos, SubPicBotBoundaryPos, yIntL + i - 3 ) (8-755)
- それ以外の場合(subpic_treated_as_pic_flag[ SubPicIdx ]が0に等しい)、以下が適用される:
xInti = Clip3( 0, picW - 1, sps_ref_wraparound_enabled_flag ?
ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL + i - 3 ) : (8-756)
xIntL + i - 3 )
yInti = Clip3( 0, picH - 1, yIntL + i - 3 ) (8-757)
[0040] 2.5 VVCにおけるCCLM
JVET-P2001-v9で規定されているように、VVCにおけるクロス・コンポーネント線型モデル(CCLM)予測のためにパラメータが導出される:
8.4.5.2.13 INTRA_LT_CCLM, INTRA_L_CCLM 及びINTRA_T_CCLMイントラ予測モードの仕様
・・・
7. 変数a,b,及びkは、以下のように導出される:
- numSampLが0に等しく、且つnumSampTが0に等しい場合、以下が適用される:
k = 0 (8-211)
a = 0 (8-212)
b = 1 << ( BitDepth - 1 ) (8-213)
- それ以外の場合、以下が適用される:
diff = maxY - minY (8-214)
- diffが0に等しくない場合、以下が適用される:
diffC = maxC - minC (8-215)
x = Floor( Log2( diff ) ) (8-216)
normDiff = ( ( diff << 4 ) >> x ) & 15 (8-217)
x += ( normDiff != 0 ) ? 1 : 0 (8-218)
y = Floor( Log2( Abs ( diffC ) ) ) + 1 (8-219)
a = ( diffC * ( divSigTable[ normDiff ] | 8 ) + 2y - 1 ) >> y (8-220)
k = ( ( 3 + x - y ) < 1 ) ? 1 : 3 + x - y (8-221)
a = ( ( 3 + x - y ) < 1 ) ? Sign( a ) * 15 : a (8-222)
b = minC - ( ( a * minY ) >> k ) (8-223)
ここで、divSigTable[ ]は、以下のように規定される:
divSigTable[ ] = { 0, 7, 6, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1, 0 } (8-224)
- それ以外の場合(diffが0に等しい)、以下が適用される:
k = 0 (8-225)
a = 0 (8-226)
b = minC (8-227)
・・・
[0041] 2.6 VVCにおける角度予測
VVCにおける角度予測は、JVET-P2001-v9で以下のように規定されている:
8.4.5.2.12 INTRA_ANGULAR2..INTRA_ANGULAR66イントラ予測モードの仕様
このプロセスへの入力は以下の通りである:
- イントラ予測モードpredModeIntra,
- イントラ予測参照ライン・インデックスを指定する変数refIdx,
- 変換ブロック幅を指定する変数nTbW,
- 変換ブロック高さを指定する変数nTbH,
- 参照サンプル幅を指定する変数refW,
- 参照サンプル高さを指定する変数refH,
- コーディング・ブロック幅を指定する変数nCbW,
- コーディング・ブロック高さを指定する変数nCbH,
- 参照フィルタ・フラグの値を指定する変数refFilterFlag,
- 現在のブロックの色成分を指定する変数cIdx,
- 隣接サンプルp[ x ][ y ],(x = -1- refIdx, y = -1- refIdx..refH - 1 及び x = -refIdx..refW - 1, y = -1- refIdx)
このプロセスの出力は、予測されたサンプルpredSamples[ x ][ y ]である(x = 0..nTbW - 1, y = 0..nTbH - 1)。
変数nTbSは、 ( Log2 ( nTbW ) + Log2 ( nTbH ) ) >> 1に等しく設定される。
変数filterFlagは、以下のように導出される:
- 以下の条件のうちの1つ以上が真である場合、filterFlagは0に等しく設定される。
- それ以外の場合、以下が適用される:
- 変数minDistVerHorは、Min( Abs( predModeIntra - 50 ), Abs( predModeIntra - 18 ) )に等しく設定される。
- minDistVerHorが、intraHorVerDistThres[ nTbS ]より大きく、refFilterFlagが0に等しい場合、filterFlagは1に等しく設定される。
テーブル8-17 - 様々な変換ブロック・サイズnTbSに対するintraHorVerDistThres[ nTbS ]の仕様
2.7 VVCにおけるインター予測のためのサンプル・フェッチ
8.5.6.3.2 ルマ・サンプル補間フィルタリング・プロセス
・・・
フル・サンプル単位におけるルマ位置( xInti, yInti )は、i = 0..7に対して以下のように導出される:
- subpic_treated_as_pic_flag[ SubPicIdx ]が1に等しい場合、以下が適用される:
xInti = Clip3( SubPicLeftBoundaryPos, SubPicRightBoundaryPos, xIntL + i - 3 ) (8-754)
yInti = Clip3( SubPicTopBoundaryPos, SubPicBotBoundaryPos, yIntL + i - 3 ) (8-755)
- それ以外の場合(subpic_treated_as_pic_flag[ SubPicIdx ]が0に等しい)、以下が適用される:
xInti = Clip3( 0, picW - 1, sps_ref_wraparound_enabled_flag ?
ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL + i - 3 ) :
xIntL + i - 3 )
yInti = Clip3( 0, picH - 1, yIntL + i - 3 )
フル・サンプル単位におけるルマ位置は、i = 0..7に対して以下のように更に修正される:
xInti = Clip3( xSbIntL - 3, xSbIntL + sbWidth + 4, xInti )
yInti = Clip3( ySbIntL - 3, ySbIntL + sbHeight + 4, yInti )
予測されたルマ・サンプル値predSampleLXLは、以下のように導出される:
- xFracLとyFracL の双方が0に等しく、且つhori_scale_fpとvert_scale_fpが20481より小さい場合、predSampleLXLの値は、以下のように導出される:
predSampleLXL = refPicLXL[ xInt3 ][ yInt3 ] << shift3
・・・
8.5.6.3.4 クロマ・サンプル補間プロセス
・・・
フル・サンプル単位におけるクロマ位置( xInti, yInti )は、i = 0..3に対して以下のように更に修正される:
xInti = Clip3( xSbIntC - 1, xSbIntC + sbWidth + 2, xInti ) (8-774)
yInti = Clip3( ySbIntC - 1, ySbIntC + sbHeight + 2, yInti ) (8-775)
[0042] 3. 開示される技術的解決策により解決される技術的課題の具体例
RPRがVVCに適用される場合、RPR(ARC)は、以下の問題を有する可能性がある:
1. RPRでは、補間フィルタが、ブロック内の隣接するサンプルに対して異なる可能性があり、これは単一命令複数データ(Single Instruction Multiple Data, SIMD)の実装では望ましくない。
[0043] 4.実施形態と技術の一覧
以下のリストは、一般的な概念を説明するための例として考察されるべきである。これらのアイテムは、狭義に解釈されるべきではない。更に、これらのアイテムは任意の方法で組み合わせることが可能である。
2. 参照ピクチャの解像度が現在のピクチャと異なる場合、動き補償プロセスを実行して現在のブロックの予測ブロックを導出するために、整数MVのみが許容されることを提案する。
3. 現在のブロック内のサンプルに対する動き補償プロセスで使用される動きベクトル(例えば、上記の箇条書きで言及された共有MV/共有水平又は垂直又は分数成分/MV’)は、復号化されたピクチャ・バッファに格納され、現在の/異なるピクチャ内の後続するブロックの動きベクトル予測のために使用される可能性がある。
4. 現在のブロックの予測ブロックを導出するために動き補償プロセスで使用される補間フィルタは、参照ピクチャの解像度が現在のピクチャと異なるかどうかに依存して選択されてもよいことを提案する。
5. 参照ピクチャの解像度が現在のピクチャと異なる場合、予測ブロック生成のための2段階プロセスが適用されることを提案する。
6. JVET-O2001-v14の8.5.6.3.1で定義されているような参照サンプル・パディングのための境界ブロックの左上座標( xSbIntL, ySbIntL )の計算は、現在のピクチャと参照ピクチャの幅及び/又は高さに依存して導出されてもよいことを提案する。
xInti = Clip3( xSbIntL - Dx, xSbIntL + sbWidth + Ux, xInti ),
yInti = Clip3( ySbIntL - Dy, ySbIntL + sbHeight + Uy, yInti ),
ここで、Dx及び/又はDy及び/又はUx及び/又はUyは、現在のピクチャ及び参照ピクチャの幅及び/又は高さに依存する可能性がある。
xInti = Clip3( xSbIntC - Dx, xSbIntC + sbWidth + Ux, xInti )
yInti = Clip3( ySbIntC - Dy, ySbIntC + sbHeight + Uy, yInti )
ここで、Dx及び/又はDy及び/又はUx及び/又はUyは、現在のピクチャ及び参照ピクチャの幅及び/又は高さに依存する可能性がある。
7. (例えば、JVET-O2001-v14の8.5.6.3.1で規定されているような( xSbIntL, ySbIntL )のような)参照サンプル・パディングのための境界ブロックに従ってMVをクリップするかどうか、及び/又はどのようにクリップするかは、DMVRの用法に依存してもよいことを提案する。
8. (例えば、JVET-O2001-v14の8.5.6.3.1で規定されているような( xSbIntL, ySbIntL )のような)参照サンプル・パディングのための境界ブロックに従ってMVをクリップするかどうか、及び/又はどのようにクリップするかは、ピクチャ・ラッピングが使用されるかどうか(例えば、sps_ref_wraparound_enabled_flagが0に等しいか又は1に等しいかどうか)に依存してもよいことを提案する。
xInti = Clip3( xSbIntL - Dx, xSbIntL + sbWidth + Ux, xInti ),
yInti = Clip3( ySbIntL - Dy, ySbIntL + sbHeight + Uy, yInti ),
ここで、Dx及び/又はDy及び/又はUx及び/又はUyは、ピクチャ・ラッピングが使用されるかどうかに依存してもよい。
xInti = Clip3( xSbIntC - Dx, xSbIntC + sbWidth + Ux, xInti )
yInti = Clip3( ySbIntC - Dy, ySbIntC + sbHeight + Uy, yInti )
ここで、Dx及び/又はDy及び/又はUx及び/又はUyは、ピクチャ・ラッピングが使用されるかどうかに依存してもよい。
9. フィルタリング・プロセス(例えば、デブロッキング・フィルタ)を適用するかどうか/どのように適用するかは、参照ピクチャが異なる解像度を伴うかどうかに依存する可能性がある。
10. 現在のピクチャと同じ参照ピクチャ解像度に基づくブロックの動きベクトルを記憶/使用する代わりに、解像度の差を考慮した実際の動きベクトルを使用することを提案する。
11. 一例において、サブ・ピクチャが存在する場合、参照ピクチャは現在のピクチャと同じ解像度を有する必要がある。
12. 一例において、サブ・ピクチャは、異なる解像度を有するピクチャに対して別々に定義されてもよい。
13. 一例において、参照ピクチャが現在のピクチャとは異なる解像度を有する場合、参照ピクチャ内の対応するサブ・ピクチャは、現在のピクチャのサブ・ピクチャをスケーリング及び/又はオフセット処理を行うことによって導出することができる。
14. ラップ・アラウンド・クリッピングに関連する情報の全部又は一部は、ピクチャ/ビュー/スライス/タイル/ブリック/サブ・ピクチャ/CTU行レベルなどのような、シーケンス・レベル以外のビデオ・ユニットでシグナリングされてもよいことを提案する。
15. Xが0以下であるLog2(X)の数式は、アフィン・マージ候補を導出するためには回避されるべきであることを提案する。
8.5.5.6 構築されたアフィン制御ポイント動きベクトル・マージ候補に対する導出プロセス
・・・
6. availableFlagCorner[ 0 ]がTRUEに等しく、且つavailableFlagCorner[ 2 ]がTRUEに等しい場合、以下が適用される:
- Xが0又は1に置き換えられる場合に関し、以下が適用される:
- 変数availableFlagLXは、以下のように導出される:
- 以下の全ての条件がTRUEである場合、availableFlagLXはTRUEに等しく設定される:
- predFlagLXCorner[ 0 ]は、1に等しい。
- 第2制御ポイント動きベクトルcpMvLXCorner[ 1 ]は、以下のように導出される:
predFlagLXConst6 = 1 (8-627)
refIdxLXConst6 = refIdxLXCorner[ 0 ] (8-628)
cpMvLXConst6[ 0 ] = cpMvLXCorner[ 0 ] (8-629)
cpMvLXConst6[ 1 ] = cpMvLXCorner[ 1 ] (8-630)
cpMvLXConst6[ 0 ][ 0 ] = Clip3( -217, 217 - 1, cpMvLXConst6[ 0 ][ 0 ] ) (8-631)
cpMvLXConst6[ 0 ][ 1 ] = Clip3( -217, 217 - 1, cpMvLXConst6[ 0 ][ 1 ] ) (8-632)
cpMvLXConst6[ 1 ][ 0 ] = Clip3( -217, 217 - 1, cpMvLXConst6[ 1 ][ 0 ] ) (8-633)
cpMvLXConst6[ 1 ][ 1 ] = Clip3( -217, 217 - 1, cpMvLXConst6[ 1 ][ 1 ] ) (8-634)
- 双-予測ウェイト・インデックスbcwIdxConst6は、bcwIdxCorner[ 0 ]に等しく設定される。
- availableFlagL0又はavailableFlagL1が1に等しい場合、availableFlagConst6は、TRUEに等しく設定され、motionModelIdcConst6は、1に等しく設定される。
16. クロス・コンポーネント線型モデル(Cross‐Component Linear Model, CCLM)におけるパラメータを導出する手順において、Xが0以下のLog2(X)の数式は回避されるべきであることを提案する。
8.4.5.2.13 INTRA_LT_CCLM, INTRA_L_CCLM、及びINTRA_T_CCLMのイントラ予測モードの仕様
・・・
7.7 変数a, b, 及びkは、以下のように導出される:
- numSampLが0に等しく、且つnumSampTが0に等しい場合、以下が適用される:
k = 0 (8-211)
a = 0 (8-212)
b = 1 << ( BitDepth - 1 ) (8-213)
- それ以外の場合、以下が適用される:
diff = maxY - minY (8-214)
- diffが0に等しくない場合、以下が適用される:
k = 0 (8-225)
a = 0 (8-226)
b = minC (8-227)
・・・
17. 角度イントラ予測の手順において、0で除算することは回避されるべきであることを提案する。
8.4.5.2.12 INTRA_ANGULAR2..INTRA_ANGULAR66のイントラ予測モードの仕様
このプロセスへの入力は以下の通りである:
- イントラ予測モードpredModeIntra,
- イントラ予測参照ライン・インデックスを指定する変数refIdx,
- 変換ブロック幅を指定する変数nTbW,
- 変換ブロックの高さを指定する変数nTbH,
- 参照サンプル幅を指定する変数refW,
- 参照サンプルの高さを指定する変数refH,
- コーディング・ブロック幅を指定する変数nCbW,
- コーディング・ブロックの高さを指定する変数nCbH,
- 参照フィルタ・フラグの値を指定する変数refFilterFlag,
- 現在のブロックの色成分を指定する変数cIdx,
- 隣接サンプルp[ x ][ y ], (x = -1- refIdx, y = -1- refIdx..refH - 1及びx = -refIdx..refW - 1, y = -1- refIdx)
このプロセスの出力は、予測されたサンプルpredSamples[ x ][ y ], x = 0..nTbW - 1, y = 0..nTbH - 1である。
変数nTbSは、( Log2 ( nTbW ) + Log2 ( nTbH ) ) >> 1. に等しく設定される。
変数filterFlagは、以下のように導出される:
- 以下の条件のうちの1つ以上が真である場合、filterFlagは0に等しく設定される。
- それ以外の場合、以下が適用される:
- 変数minDistVerHorは、Min( Abs( predModeIntra - 50 ), Abs( predModeIntra - 18 ) )に等しく設定される。
- minDistVerHorが、intraHorVerDistThres[ nTbS ]より大きく、refFilterFlagが、0に等しい場合、filterFlagは、1に等しく設定される。
テーブル8-7 - 様々な変換ブロック・サイズnTbSに対するintraHorVerDistThres[ nTbS ]の仕様
8.5.6.3.2 ルマ・サンプル補間フィルタリング・プロセス
・・・
フル・サンプル単位におけるルマ位置( xInti, yInti )は、i = 0..7に対して以下のように導出される:
- subpic_treated_as_pic_flag[ SubPicIdx ]が1に等しい場合、以下が適用される:
xInti = Clip3( SubPicLeftBoundaryPos, SubPicRightBoundaryPos, xIntL + i - 3 ) (8-754)
yInti = Clip3( SubPicTopBoundaryPos, SubPicBotBoundaryPos, yIntL + i - 3 ) (8-755)
- それ以外の場合(subpic_treated_as_pic_flag[ SubPicIdx ]が0に等しい)、以下が適用される:
xInti = Clip3( 0, picW - 1, sps_ref_wraparound_enabled_flag ?
ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL + i - 3 ) :
xIntL + i - 3 )
yInti = Clip3( 0, picH - 1, yIntL + i - 3 )
- xFracLとyFracLの双方が0に等しく、hori_scale_fpとvert_scale_fpの双方が20481より小さい場合、predSampleLXLの値は、以下のように導出される:
predSampleLXL = refPicLXL[ xInt3 ][ yInt3 ] << shift3
・・・
8.5.6.3.4 クロマ・サンプル補間プロセス
・・・
f. JVET-P2001-v9に基づく例示的な仕様変更は以下の通りである:
8.5.6.3.2 ルマ・サンプル補間フィルタリング・プロセス
・・・
フル・サンプル単位におけるルマ位置( xInti, yInti )は、i=0..7に対して以下のように導出される:
- subpic_treated_as_pic_flag[ SubPicIdx ]が1に等しい場合、以下が適用される:
xInti = Clip3( SubPicLeftBoundaryPos, SubPicRightBoundaryPos, xIntL + i - 3 ) (8-754)
yInti = Clip3( SubPicTopBoundaryPos, SubPicBotBoundaryPos, yIntL + i - 3 ) (8-755)
- それ以外の場合(subpic_treated_as_pic_flag[ SubPicIdx ]が0に等しい)、以下が適用される:
xInti = Clip3( 0, picW - 1, sps_ref_wraparound_enabled_flag ?
ClipH( ( sps_ref_wraparound_offset_minus1 + 1 ) * MinCbSizeY, picW, xIntL + i - 3 ) :
xIntL + i - 3 )
yInti = Clip3( 0, picH - 1, yIntL + i - 3 )
フル・サンプル単位におけるルマ位置は、i=0..7に対して以下のように更に修正される:
- xFracLとyFracLの双方が0に等しく、hori_scale_fpとvert_scale_fpの双方が20481より小さい場合、predSampleLXLの値は、以下のように導出される:
predSampleLXL = refPicLXL[ xInt3 ][ yInt3 ] << shift3
・・・
8.5.6.3.4 クロマ・サンプル補間プロセス
・・・
フル・サンプル単位におけるクロマ位置( xInti, yInti )は、i=0..3に対して以下のように更に修正される:
[0045] 図3は、ビデオ処理装置300のブロック図である。装置300は、本願で説明される1つ以上の方法を実装するために使用されてもよい。装置300は、スマートフォン、タブレット、コンピュータ、モノのインターネット(Internet of Things,IoT)受信機などで具体化されてもよい。装置300は、1つ以上のプロセッサ302、1つ以上のメモリ304、及びビデオ処理ハードウェア306を含んでもよい。プロセッサ302は、本件明細書で説明される1つ以上の方法を実装するように構成されてもよい。メモリ(memories)304は、本願で説明される方法及び技術を実装するために使用されるデータ及びコードを記憶するために使用されてもよい。ビデオ処理ハードウェア306は、ハードウェア回路において、本件明細書で説明される幾つかの技術を実装するために使用されてもよい。幾つかの実施形態では、ハードウェア306は、例えばグラフィックス・プロセッサのようなプロセッサ302内に部分的に又は全体的に含まれていてもよい。
xInti = Clip3( xSbIntL - Dx, xSbIntL + sbWidth + Ux, xInti ),
yInti = Clip3( ySbIntL - Dy, ySbIntL + sbHeight + Uy, yInti ),
[0067] ここで、Dx及び/又はDy及び/又はUx及び/又はUyは現在のピクチャ又は参照ピクチャの幅及び/又は高さに依存し、( xSbIntL, ySbIntL )は左上座標である。
xInti = Clip3( xSbIntC - Dx, xSbIntC + sbWidth + Ux, xInti )
yInti = Clip3( ySbIntC - Dy, ySbIntC + sbHeight + Uy, yInti )
[0069] ここで、Dx及び/又はDy及び/又はUx及び/又はUyは現在のピクチャ又は参照ピクチャの幅及び/又は高さに依存し、( xSbIntL, ySbIntL )は左上座標である。
xInti = Clip3( xSbIntL - Dx, xSbIntL + sbWidth + Ux, xInti ),
yInti = Clip3( ySbIntL - Dy, ySbIntL + sbHeight + Uy, yInti ),
[0079] ここで、Dx及び/又はDy及び/又はUx及び/又はUyはピクチャ・ラッピングの使用に依存し、( xSbIntL, ySbIntL )は境界ブロックを示す。
[0126] 開示された技術的解決策の幾つかの好ましい実施形態を以下に説明する。これらの解決策の更なる詳細は、例えば、先行するセクションのアイテム14を含めて、本件明細書を通じて説明されている。
本願は、2020年10月22日付で出願された国際特許出願PCT/CN2020/122644に基づいており、同出願は、2019年10月23日付で出願された国際特許出願第PCT/CN2019/112820号についての優先権及び利益を主張している。前述の全ての特許出願は全体的に参照により援用される。
Claims (43)
- ビデオ処理方法であって:
ビデオの現在のピクチャの現在のブロックと前記ビデオのコーディングされた表現との間の変換を実行するステップ;
を含み、前記コーディングされた表現はフォーマット・ルールに従っており、
前記フォーマット・ルールは、前記現在のビデオ・ブロックに対する予測ブロックを決定するための参照ピクチャに適用されるラップアラウンド・クリッピング処理に関する1つ以上のシンタックス要素を選択的に含むことを規定しており、前記ラップアラウンド・クリッピング処理は、動きベクトルが、前記参照ピクチャの境界ブロック外側のサンプルを指す場合に、前記参照ピクチャ内のサンプルを再選択するために使用される、方法。 - 請求項1に記載の方法において、前記フォーマット・ルールは、前記1つ以上のシンタックス要素のうちのシンタックス要素が、ピクチャ・パラメータ・セット(PPS)に含まれることを規定している、方法。
- 請求項2に記載の方法において、前記PPSに含まれる前記シンタックス要素は、前記ラップアラウンド・クリッピング処理が水平方向でイネーブルにされるかどうかことを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項3に記載の方法において、前記シンタックス要素の値“1”は、前記ラップアラウンド・クリッピング処理が前記水平方向でイネーブルにされることを示し、前記シンタックス要素の値“0”は、前記ラップアラウンド・クリッピング処理が前記水平方向でディセーブルにされることを示す、方法。
- 請求項1に記載の方法において、前記ルールは、第1ビデオ・ユニット・レベルにおける第1シンタックス要素と、前記ラップアラウンド・クリッピング処理がイネーブルにされるかどうかを示す第2ユニット・レベルにおける第2シンタックス要素とを含むことを規定している、方法。
- 請求項5に記載の方法において、前記第2シンタックス要素は、前記第1シンタックス要素を参照している、方法。
- 請求項5又は6に記載の方法であって、前記第1シンタックス要素及び/又は前記第2シンタックス要素信号は、前記ラップアラウンド・クリッピング処理が前記現在のブロックに対してイネーブルにされるかどうかを示している、方法。
- 請求項5-7のうちの何れか1項に記載の方法において、前記フォーマット・ルールは、前記第2シンタックス要素の値は前記第1シンタックス要素の値に依存することを規定している、方法。
- 請求項8に記載の方法において、前記フォーマット・ルールは、前記第1シンタックス要素が、前記ラップアラウンド・クリッピング処理はディセーブルにされることを示す場合に、前記第2シンタックス要素も、前記ラップアラウンド・クリッピング処理はディセーブルにされることを示す、ということを規定している、方法。
- 請求項1又は2に記載の方法において、前記フォーマット・ルールは、前記ラップアラウンド・クリッピング処理に使用されるオフセットを示すシンタックス要素を含むことを規定している、方法。
- 請求項1に記載の方法において、前記1つ以上のシンタックス要素は、
前記ラップアラウンド・クリッピング処理がイネーブルにされるかどうかを示す第1シンタックス要素と、前記ラップアラウンド・クリッピング処理の実施可能性に依存して条件付きで包含される第2シンタックス要素とを含む、方法。 - 請求項11に記載の方法において、前記第2シンタックス要素は、前記第1シンタックス要素が値1を有する場合に、前記コーディングされた表現に条件付きで含まれる、方法。
- 請求項5-9のうちの何れか1項に記載の方法において、前記第1ビデオ・ユニット・レベルはビデオ・シーケンス・レベルであり、前記第1シンタックス要素はシンタックス・パラメータ・セットに含まれている、方法。
- 請求項5-9又は13のうちの何れか1項に記載の方法において、前記第2ビデオ・ユニット・レベルは、ビデオ・ピクチャ・レベル又はビデオ・スライス・レベルである、方法。
- 請求項5-9又は13のうちの何れか1項に記載の方法において、前記第2シンタックス要素は、ピクチャ・パラメータ・セット、スライス・ヘッダ、ピクチャ・ヘッダ、又は適応パラメータ・セット内にある、方法。
- 請求項5-9のうちの何れか1項に記載の方法において、前記第1シンタックス要素及び/又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理に使用されるべきラップアラウンド・オフセットの量をシグナリングするものである、方法。
- 請求項8-16のうちの何れか1項に記載の方法において、前記フォーマット・ルールは、前記第1シンタックス要素と前記第2シンタックス要素が互いに等しいことを規定している、方法。
- 請求項8-16のうちの何れか1項に記載の方法において、前記第1シンタックス要素が前記ラップアラウンド・クリッピング処理はイネーブルにされていることを示す場合に、前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理がイネーブルにされることを示す第1値、又は前記ラップアラウンド・クリッピング処理がディセーブルにされることを示す第2値を有することが許可されることを、前記フォーマット・ルールは規定している、方法。
- 請求項5-18のうちの何れか1項に記載の方法において、前記第1シンタックス要素と前記第2シンタックス要素の双方が前記コーディングされた表現に含まれる場合に、前記第1シンタックス要素の値は、前記コーディングされた表現からの前記現在のブロックを復号化する際に無視されることを、前記フォーマット・ルールは規定している、方法。
- 請求項7-17のうちの何れか1項に記載の方法において、前記第1シンタックス要素と前記第2シンタックス要素の双方が前記コーディングされた表現に含まれる場合に、前記第2シンタックス要素の値は、前記コーディングされた表現からの前記現在のブロックを復号化する際に無視されることを、前記フォーマット・ルールは規定している、方法。
- 請求項7-20のうちの何れか1項に記載の方法において、前記第1シンタックス要素の値及び/又は前記第2シンタックス要素の値は、前記現在のブロックのコーディング・ツリー・ブロックに関連する第1サイズ、及び前記現在のブロックを含む前記現在のピクチャの幅に関連する第2サイズに依存することを、前記フォーマット・ルールは規定している、方法。
- 請求項20に記載の方法において、前記第1サイズは、(CtbSizeY / MinCbSizeY + Offset1) に等しく、CtbSizeYは前記コーディング・ツリー・ブロックの高さ又は幅であり、MinCbSizeYは前記変換におけるコーディング・ブロックに対する最小許容サイズを示し、Offset1は整数であり、前記第2サイズは、( pic_width_in_luma_samples / MinCbSizeY - Offset2 ) に等しく、pic_width_in_luma_samplesは、ピクチャ・パラメータ・セットで示されるルマ・サンプルにおける前記現在のピクチャの幅を示し、Offset2は他の整数である、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズより大きくないことに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズ以下ではないことに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズより小さくないことに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズ以上であることに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項21-26のうちの何れか1項に記載の方法において、前記ピクチャ・パラメータ・セットは、前記現在のピクチャに適用可能なシーケンス・パラメータ・セットを参照している、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズより大きいことに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズ以下ではないことに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズより小さくないことに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項21に記載の方法において、前記第1シンタックス要素又は前記第2シンタックス要素は、前記ラップアラウンド・クリッピング処理が、前記第1サイズが前記第2サイズ以上ではないことに起因してディセーブルにされることを示す、ということを前記フォーマット・ルールは規定している、方法。
- 請求項22-31のうちの何れか1項に記載の方法において、offset2 = offset1 = 1である、方法。
- 請求項1に記載の方法において、前記フォーマット・ルールは、前記シンタックス要素が適応パラメータ・セットに含まれることを規定している、方法。
- 請求項1に記載の方法において、前記フォーマット・ルールは、前記シンタックス要素が、前記現在のブロックを含む現在のスライス又は前記現在のピクチャのヘッダ・フィールドに含まれることを規定している、方法。
- 請求項1に記載の方法において、前記フォーマット・ルールは、ピクチャ・レベル、ビュー・レベル、スライス・レベル、タイル・レベル、ブリック・レベル、サブ・ピクチャ・レベル、又はコーディング・ツリー・ユニット・レベルで含まれることを規定している、方法。
- 請求項1-35のうちの何れか1項に記載の方法において、前記変換は、前記ビデオを、前記コーディングされた表現に符号化することを含む、方法。
- 請求項1-35のうちの何れか1項に記載の方法において、前記変換は、前記コーディングされた表現を復号化して、前記ビデオのピクセル値を生成することを含む、方法。
- 請求項1-37のうちの何れか1項に記載の方法を実行するように構成されたプロセッサを含むビデオ復号化装置。
- 請求項1-37のうちの何れか1項に記載の方法を実行するように構成されたプロセッサを含むビデオ符号化装置。
- コンピュータ・コードを記憶したコンピュータ・プログラム製品であって、前記コンピュータ・コードは、プロセッサにより実行されると、前記プロセッサに、請求項1-37のうちの何れか1項に記載の方法を実行させる、コンピュータ・プログラム製品。
- コードを記憶したコンピュータ読み取り可能な媒体であって、前記コードは、プロセッサにより実行されると、前記プロセッサに、請求項1-37のうちの何れか1項に記載の方法を実行させる、記憶媒体。
- 請求項1-37のうちの何れか1項に記載の方法により生成されたビットストリームを記憶したコンピュータ読み取り可能な記憶媒体。
- 本件で説明された方法、装置、又はシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNPCT/CN2019/112820 | 2019-10-23 | ||
CN2019112820 | 2019-10-23 | ||
PCT/CN2020/122644 WO2021078177A1 (en) | 2019-10-23 | 2020-10-22 | Signaling for reference picture resampling |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022553363A true JP2022553363A (ja) | 2022-12-22 |
JP7394985B2 JP7394985B2 (ja) | 2023-12-08 |
Family
ID=75620400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022523814A Active JP7394985B2 (ja) | 2019-10-23 | 2020-10-22 | ビデオ・データを処理する方法、装置及び記憶方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11706409B2 (ja) |
EP (1) | EP4035356A4 (ja) |
JP (1) | JP7394985B2 (ja) |
KR (1) | KR20220080107A (ja) |
CN (1) | CN114641992B (ja) |
WO (1) | WO2021078177A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113812149B (zh) * | 2019-03-22 | 2024-04-12 | Lg电子株式会社 | 图像编译系统中的图像解码方法和设备以及图像编码方法和设备 |
WO2021036977A1 (en) | 2019-08-23 | 2021-03-04 | Beijing Bytedance Network Technology Co., Ltd. | Clipping in reference picture resampling |
CN114600461A (zh) | 2019-10-23 | 2022-06-07 | 北京字节跳动网络技术有限公司 | 用于多编解码工具的计算 |
WO2021093837A1 (en) * | 2019-11-15 | 2021-05-20 | Mediatek Inc. | Method and apparatus for signaling horizontal wraparound motion compensation in vr360 video coding |
WO2021101356A1 (ko) * | 2019-11-22 | 2021-05-27 | 한국전자통신연구원 | 참조 픽처의 해상도를 이용하는 비디오 처리 방법, 장치 및 기록 매체 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018534827A (ja) * | 2015-09-23 | 2018-11-22 | ノキア テクノロジーズ オーユー | 360度パノラマビデオの符号化方法、符号化装置、及びコンピュータプログラム |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2421515T3 (es) * | 2001-03-08 | 2013-09-03 | Sony Corp | Aparato y método de reproducción de datos |
GB0128888D0 (en) | 2001-12-03 | 2002-01-23 | Imagination Tech Ltd | Method and apparatus for compressing data and decompressing compressed data |
KR100961313B1 (ko) | 2002-11-20 | 2010-06-04 | 파나소닉 주식회사 | 동화상 부호화 방법 및 장치 |
US7724827B2 (en) | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
JP5065051B2 (ja) | 2005-02-18 | 2012-10-31 | トムソン ライセンシング | 低解像度画像から高解像度画像の符号化情報を導出する方法、並びに、係る方法を実現する符号化及び復号化装置 |
US20120230393A1 (en) | 2011-03-08 | 2012-09-13 | Sue Mon Thet Naing | Methods and apparatuses for encoding and decoding video using adaptive interpolation filter length |
EP2595382B1 (en) | 2011-11-21 | 2019-01-09 | BlackBerry Limited | Methods and devices for encoding and decoding transform domain filters |
US9503720B2 (en) * | 2012-03-16 | 2016-11-22 | Qualcomm Incorporated | Motion vector coding and bi-prediction in HEVC and its extensions |
US9992493B2 (en) | 2013-04-01 | 2018-06-05 | Qualcomm Incorporated | Inter-layer reference picture restriction for high level syntax-only scalable video coding |
US9509999B2 (en) | 2013-06-11 | 2016-11-29 | Qualcomm Incorporated | Inter-layer prediction types in multi-layer video coding |
WO2016070845A1 (en) | 2014-11-06 | 2016-05-12 | Mediatek Inc. | Method for sub-block based palette coding |
US9699461B2 (en) | 2015-08-14 | 2017-07-04 | Blackberry Limited | Scaling in perceptual image and video coding |
AU2015410097B2 (en) | 2015-09-25 | 2020-01-23 | Huawei Technologies Co., Ltd. | Apparatus and method for video motion compensation with selectable interpolation filter |
WO2017201141A1 (en) | 2016-05-17 | 2017-11-23 | Arris Enterprises Llc | Template matching for jvet intra prediction |
KR102437110B1 (ko) | 2016-07-14 | 2022-08-26 | 삼성전자주식회사 | 비디오 복호화 방법 및 그 장치 및 비디오 부호화 방법 및 그 장치 |
JP6962325B2 (ja) | 2016-08-24 | 2021-11-05 | ソニーグループ株式会社 | 画像処理装置、画像処理方法、及びプログラム |
US20180242016A1 (en) * | 2017-02-21 | 2018-08-23 | Intel Corporation | Deblock filtering for 360 video |
CN116781893A (zh) | 2017-07-05 | 2023-09-19 | 艾锐势有限责任公司 | 对视频编码、解码的方法和计算机可读存储器或存储装置 |
WO2019072370A1 (en) | 2017-10-09 | 2019-04-18 | Huawei Technologies Co., Ltd. | MEMORY ACCESS WINDOW AND FILLING FOR VECTOR MOVEMENT REFINEMENT |
WO2019072368A1 (en) | 2017-10-09 | 2019-04-18 | Huawei Technologies Co., Ltd. | LIMITED MEMORY ACCESS WINDOW FOR MOTION VECTOR REFINEMENT |
AU2018393019A1 (en) * | 2017-12-22 | 2020-07-23 | Magic Leap, Inc. | Methods and system for generating and displaying 3D videos in a virtual, augmented, or mixed reality environment |
US20210120262A1 (en) | 2018-04-18 | 2021-04-22 | Mediatek Inc. | Candidate Reorganizing with Advanced Control in Video Coding |
US10701384B2 (en) | 2018-08-01 | 2020-06-30 | Tencent America LLC | Method and apparatus for improvement on decoder side motion derivation and refinement |
CN109819264B (zh) | 2018-12-28 | 2020-05-12 | 杭州海康威视数字技术股份有限公司 | 编码方法、解码方法及装置 |
BR112021013110A2 (pt) | 2019-01-02 | 2021-09-21 | Sharp Kabushiki Kaisha | Dispositivo de geração de imagens de predição, dispositivo de decodificação de imagens em movimento, dispositivo de codificação de imagens em movimento e método de geração de imagens de predição |
BR122021012448B1 (pt) * | 2019-01-15 | 2022-03-22 | Lg Electronics Inc | Método de decodificação de uma imagem realizado por um aparelho de decodificação, método de codificação de uma imagem realizado por um aparelho de codificação, aparelho de decodificação para decodificação de imagem, aparelho de codificação para codificação de imagem e mídia de armazenamento digital legível por computador não transitória |
MX2021011032A (es) * | 2019-03-11 | 2021-12-15 | Huawei Tech Co Ltd | Un codificador, un decodificador y métodos correspondientes. |
CN113632464B (zh) | 2019-05-21 | 2023-04-28 | 华为技术有限公司 | 分量间预测的方法和设备 |
US11095916B2 (en) * | 2019-07-23 | 2021-08-17 | Qualcomm Incorporated | Wraparound motion compensation in video coding |
US11375238B2 (en) * | 2019-09-20 | 2022-06-28 | Tencent America LLC | Method for padding processing with sub-region partitions in video stream |
CN114600461A (zh) | 2019-10-23 | 2022-06-07 | 北京字节跳动网络技术有限公司 | 用于多编解码工具的计算 |
-
2020
- 2020-10-22 CN CN202080075407.4A patent/CN114641992B/zh active Active
- 2020-10-22 JP JP2022523814A patent/JP7394985B2/ja active Active
- 2020-10-22 WO PCT/CN2020/122644 patent/WO2021078177A1/en unknown
- 2020-10-22 EP EP20880056.5A patent/EP4035356A4/en active Pending
- 2020-10-22 KR KR1020227012629A patent/KR20220080107A/ko not_active Application Discontinuation
-
2022
- 2022-04-22 US US17/727,542 patent/US11706409B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018534827A (ja) * | 2015-09-23 | 2018-11-22 | ノキア テクノロジーズ オーユー | 360度パノラマビデオの符号化方法、符号化装置、及びコンピュータプログラム |
Non-Patent Citations (1)
Title |
---|
BRIAN HENG, ET AL.: ""AHG16/AHG8: Proposed Cleanup for Reference Wraparound"", DOCUMENT: JVET-N0070-V2, [ONLINE], vol. JVET-N0070 (version 2), JPN6023018675, 26 March 2019 (2019-03-26), pages 1 - 8, ISSN: 0005059762 * |
Also Published As
Publication number | Publication date |
---|---|
CN114641992B (zh) | 2024-04-05 |
EP4035356A1 (en) | 2022-08-03 |
CN114641992A (zh) | 2022-06-17 |
EP4035356A4 (en) | 2022-11-30 |
WO2021078177A1 (en) | 2021-04-29 |
US11706409B2 (en) | 2023-07-18 |
US20220272324A1 (en) | 2022-08-25 |
JP7394985B2 (ja) | 2023-12-08 |
KR20220080107A (ko) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7305873B2 (ja) | ビデオ処理方法、ビデオ・データ処理装置、記憶媒体及び記憶方法 | |
JP7391203B2 (ja) | ビデオコーディングツールを洗練する使用およびシグナリング | |
JP7394985B2 (ja) | ビデオ・データを処理する方法、装置及び記憶方法 | |
JP7395727B2 (ja) | ビデオ・データを処理する方法、装置及び記憶方法 | |
JP2022551937A (ja) | 参照ピクチャリサンプリングと映像コーディングツールとの間の相互作用 | |
KR20220066045A (ko) | 비디오 코딩의 스케일링 윈도우 | |
JP7391199B2 (ja) | 映像コーディングツールのレベルベースシグナリング | |
KR20220073752A (ko) | 비디오 코딩 툴들을 위한 상위 레벨 신택스 | |
KR20220061108A (ko) | 비디오 코딩에서 레퍼런스 샘플 위치 유도 | |
JP2023508427A (ja) | ビデオピクチャヘッダ内でのスライスタイプのシグナリング |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220512 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220512 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230516 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230809 |
|
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: 20231031 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231128 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7394985 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |