JP2024516014A - 調整ベースの局所照明補償 - Google Patents

調整ベースの局所照明補償 Download PDF

Info

Publication number
JP2024516014A
JP2024516014A JP2023567031A JP2023567031A JP2024516014A JP 2024516014 A JP2024516014 A JP 2024516014A JP 2023567031 A JP2023567031 A JP 2023567031A JP 2023567031 A JP2023567031 A JP 2023567031A JP 2024516014 A JP2024516014 A JP 2024516014A
Authority
JP
Japan
Prior art keywords
block
sub
parameter
blocks
predictor
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.)
Pending
Application number
JP2023567031A
Other languages
English (en)
Inventor
リェン-フェイ・チェン
シアン・リ
シャン・リュウ
Original Assignee
テンセント・アメリカ・エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テンセント・アメリカ・エルエルシー filed Critical テンセント・アメリカ・エルエルシー
Publication of JP2024516014A publication Critical patent/JP2024516014A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Circuit Arrangement For Electric Light Sources In General (AREA)

Abstract

本開示の態様は、ビデオ復号のための方法および装置を提供する。装置は、コーディングされたビデオビットストリームからカレントブロックを含む1つ以上のブロックの予測情報を復号する処理回路を含む。予測情報は、局所照明補償(LIC)が1つ以上のブロックに適用されることを示し、1つ以上のブロックのLIC情報を含む。処理回路は、LIC情報に基づいて、カレントブロック内の第1のサブブロックの最終スケーリング係数αf1および最終オフセットβf1を決定する。処理回路は、最終スケーリング係数αf1、最終オフセットβf1、および第1の予測子サブブロックに基づいて、カレントブロックに対応する予測子内の更新された第1の予測子サブブロックを決定する。第1の予測子サブブロック内の第1のサンプルの更新値はαf1×pi1+βf1に等しい。pi1は第1のサンプルの値である。

Description

参照による援用
本出願は、2022年1月12日に出願された米国仮出願第63/298,788号「ADJUSTMENT BASED LOCAL ILLUMINATION COMPENSATION」に対する優先権の利益を主張するものである、2022年9月6日に出願された米国特許出願第17/903,697号「ADJUSTMENT BASED LOCAL ILLUMINATION COMPENSATION」に対する優先権の利益を主張する。先行出願の開示は、その全体が参照により本明細書に組み込まれる。
本開示は、一般に、ビデオコーディングに関連する実施形態を説明する。
本明細書で提供される背景技術の説明は、本開示の文脈を概略的に提示することを目的としている。本発明者らの研究は、この背景技術の項に記載されている限りにおいて、および出願時に先行技術として認められない可能性がある説明の態様は、本開示に対する先行技術として明示的にも暗示的にも認められない。
非圧縮デジタル画像および/またはビデオは一連のピクチャを含むことができ、各ピクチャは、例えば、1920×1080の輝度サンプルおよび関連するクロミナンスサンプルの空間次元を有する。一連のピクチャは、例えば毎秒60ピクチャまたは60Hzの固定または可変のピクチャレート(非公式にはフレームレートとしても知られる)を有することができる。非圧縮画像および/またはビデオは、特定のビットレート要件を有する。例えば、サンプルあたり8ビットの1080p60 4:2:0ビデオ(60Hzのフレームレートで1920×1080の輝度サンプル解像度)は、1.5Gbit/sに近い帯域幅を必要とする。1時間分のそのようなビデオは、600GByteを超える記憶空間を必要とする。
画像および/またはビデオのコーディングおよび復号の1つの目的は、圧縮による入力画像および/またはビデオ信号の冗長性の低減であり得る。圧縮は、前述の帯域幅および/または記憶空間要件を、場合によっては2桁以上低減するのに役立ち得る。本明細書の説明は、説明例としてビデオ符号化/復号を使用するが、同じ技術は、本開示の趣旨から逸脱することなく、同様のやり方で画像の符号化/復号に適用されることが可能である。可逆圧縮と非可逆圧縮の両方、およびそれらの組合せを採用することが可能である。可逆圧縮は、原信号の正確なコピーが、圧縮された原信号から再構成され得る技術を指す。非可逆圧縮を使用する場合、再構成された信号は原信号と同一ではない場合もあるが、原信号と再構成された信号との間の歪みは、再構成された信号を意図された用途に役立てるのに十分なほど小さい。ビデオの場合、非可逆圧縮が広く採用されている。許容される歪みの量は用途に依存し、例えば、特定の消費者ストリーミング用途のユーザは、テレビ配信用途のユーザよりも高い歪みを許容することができる。達成可能な圧縮比は、より高い容認可能/許容可能な歪みがより高い圧縮比をもたらし得ることを反映し得る。
ビデオエンコーダおよびビデオデコーダは、例えば、動き補償、変換処理、量子化、およびエントロピーコーディングを含む、いくつかの広範なカテゴリからの技術を利用することができる。
ビデオコーデック技術は、イントラコーディングとして知られる技術を含むことができる。イントラコーディングでは、サンプル値は、以前に再構成された参照ピクチャからのサンプルまたは他のデータを参照することなく表される。いくつかのビデオコーデックでは、ピクチャは、サンプルのブロックに空間的に細分化される。サンプルのすべてのブロックがイントラモードでコーディングされるとき、そのピクチャはイントラピクチャであり得る。イントラピクチャおよび独立デコーダリフレッシュピクチャなどのそれらの派生物は、デコーダ状態をリセットするために使用されることが可能であり、したがって、コーディングされたビデオビットストリームおよびビデオセッションにおける最初のピクチャとして、または静止画像として使用されることが可能である。イントラブロックのサンプルは変換を受けることができ、変換係数は、エントロピーコーディングの前に量子化されることが可能である。イントラ予測は、変換前領域におけるサンプル値を最小化する技術であり得る。場合によっては、変換後のDC値が小さいほど、およびAC係数が小さいほど、エントロピーコーディング後のブロックを表すために所与の量子化ステップサイズで必要とされるビット数が少なくなる。
例えば、MPEG-2世代のコーディング技術で使用される従来のイントラコーディングは、イントラ予測を使用しない。しかしながら、いくつかのより新しいビデオ圧縮技術は、例えば、データのブロックの符号化および/または復号中に取得された周囲のサンプルデータおよび/またはメタデータに基づいて予測を実施しようと試みる技術を含む。このような技術は、以後「イントラ予測」技術と呼ばれる。少なくともいくつかの場合において、イントラ予測は、再構成中のカレントピクチャからの参照データのみを使用し、参照ピクチャからの参照データは使用しないことに留意されたい。
イントラ予測には、多くの異なる形態があり得る。そのような技術のうちの2つ以上が所与のビデオコーディング技術において使用され得るとき、使用中の特定の技術は、特定の技術を使用する特定のイントラ予測モードとしてコーディングされることが可能である。特定の場合には、イントラ予測モードはサブモードおよび/またはパラメータを有することができ、サブモードおよび/またはパラメータは、個別にコーディングされるか、または使用される予測モードを定義するモードコードワードに含まれることが可能である。所与のモード、サブモード、および/またはパラメータの組み合わせにどのコードワードを使用するかは、イントラ予測を介したコーディング効率向上に影響を与える可能性があり、そのため、コードワードをビットストリームに変換するために使用されるエントロピーコーディング技術も影響を与える可能性がある。
イントラ予測の特定のモードは、H.264で導入され、H.265において改良され、共同探索モデル(JEM)、多用途ビデオコーディング(VVC)、およびベンチマークセット(BMS)などのより新しいコーディング技術においてさらに改良された。予測子ブロックは、すでに利用可能なサンプルの隣接サンプル値を使用して形成されることが可能である。隣接サンプルのサンプル値は、方向に従って予測子ブロックにコピーされる。使用中の方向への参照は、ビットストリーム内でコーディングされ得るか、またはそれ自体が予測され得る。
図1Aを参照すると、右下に描かれているのは、H.265で定義された(35個のイントラモードのうちの33個の角度モードに対応する)33個の可能な予測子方向から知られる9つの予測子方向のサブセットである。矢印が収束する点(101)は、予測されているサンプルを表す。矢印は、サンプルが予測されている方向を表す。例えば、矢印(102)は、サンプル(101)が、1つまたは複数のサンプルから右上へ、水平から45度の角度で予測されることを示している。同様に、矢印(103)は、サンプル(101)が、1つまたは複数のサンプルからサンプル(101)の左下へ、水平から22.5度の角度で予測されることを示している。
さらに図1Aを参照すると、左上の4×4サンプルの正方形のブロック(104)が示されている(破線の太字の線で示されている)。正方形ブロック(104)は16個のサンプルを含み、各々、「S」、Y次元のその位置(例えば、行インデックス)、およびX次元のその位置(例えば、列インデックス)でラベル付けされている。例えば、サンプルS21は、Y次元の(上から)2番目のサンプルであり、X次元の(左から)1番目のサンプルである。同様に、サンプルS44は、ブロック(104)内のY次元とX次元の両方の4番目のサンプルである。ブロックはサイズが4×4サンプルなので、S44は右下にある。同様の番号付け方式に従う参照サンプルがさらに示されている。参照サンプルは、R、ブロック(104)に対するそのY位置(例えば、行インデックス)、およびX位置(列インデックス)でラベル付けされている。H.264とH.265の両方において、予測サンプルは再構成中のブロックに隣接しており、したがって、負の値が使用される必要はない。
イントラピクチャ予測は、シグナリングされた予測方向によって示される隣接サンプルから参照サンプル値をコピーすることによって機能することができる。例えば、コーディングされたビデオビットストリームは、このブロックについて、矢印(102)と一致する予測方向を示すシグナリングを含む、すなわち、サンプルはサンプルから右上へ、水平から45度の角度で予測されると仮定する。その場合、サンプルS41、S32、S23、S14が、同じ参照サンプルR05から予測される。次いで、サンプルS44が、参照サンプルR08から予測される。
特定の場合には、参照サンプルを計算するために、特に方向が45度によって均等に割り切れないときは、複数の参照サンプルの値は、例えば補間によって組み合わされてもよい。
可能な方向の数は、ビデオコーディング技術が発展するにつれて増加している。H.264(2003年)では、9つの異なる方向を表すことができた。これが、H.265(2013年)では33に増加した。現在、JEM/VVC/BMSは、最大65の方向をサポートすることができる。最も可能性が高い方向を識別するために実験が行われており、エントロピーコーディングの特定の技術は、それらの可能性が高い方向を少数のビットで表すために使用され、可能性が低い方向に関しては一定のペナルティを受け入れる。さらに、方向自体が、隣接する、すでに復号されたブロックで使用された隣接する方向から予測され得る場合もある。
図1Bは、経時的に増加する予測方向の数を示すためにJEMによる65のイントラ予測方向を示す概略図(110)を示す。
コーディングされたビデオビットストリーム内の方向を表すイントラ予測方向ビットのマッピングは、ビデオコーディング技術によって異なり得る。このようなマッピングは、単純な直接マッピングから、コードワード、最確モードを含む複雑な適応方式、および同様の技術にまで及び得る。しかしながら、ほとんどの場合、ビデオコンテンツ内で特定の他の方向よりも統計的に発生する可能性が低い特定の方向が存在することができる。ビデオ圧縮の目的は冗長性の低減であるので、それらの可能性が低い方向は、うまく機能するビデオコーディング技術では、可能性が高い方向よりも多いビット数で表される。
画像および/またはビデオのコーディングおよび復号は、動き補償を伴うインターピクチャ予測を使用して実行されることが可能である。動き補償は、非可逆圧縮技術であり得、以前に再構成されたピクチャまたはその一部(参照ピクチャ)からのサンプルデータのブロックが、動きベクトル(以後、MV)によって示された方向に空間的にシフトされた後に、新しく再構成されるピクチャまたはピクチャの一部の予測に使用される技術に関連し得る。場合によっては、参照ピクチャは、現在再構成中のピクチャと同じであり得る。MVは、2つの次元XおよびY、または3つの次元を有することができ、第3の次元は、使用中の参照ピクチャの指示である(後者は、間接的に時間次元であり得る)。
いくつかのビデオ圧縮技術では、サンプルデータの特定のエリアに適用可能なMVが、他のMVから、例えば、再構成中のエリアに空間的に隣接し、復号順でそのMVに先行するサンプルデータの他のエリアに関連するMVから予測されることが可能である。そうすることで、MVのコーディングに必要なデータの量を大幅に削減することができ、それによって冗長性が排除され、圧縮率が増加する。MV予測が効果的に機能することができるのは、例えば、(自然なビデオとして知られている)カメラから導出された入力ビデオ信号をコーディングするときに、単一のMVが適用可能なエリアよりも大きいエリアが同様の方向に移動し、したがって、場合によっては、隣接エリアのMVから導出された同様の動きベクトルを使用して予測されることが可能である統計的尤度があるからである。その結果、所与のエリアについて検出されたMVが周囲のMVから予測されたMVと同様かまたは同じになり、これは、エントロピーコーディング後に、MVを直接コーディングした場合に使用されるはずのビット数より少ないビット数で表されることが可能である。場合によっては、MV予測は、原信号(すなわち、サンプルストリーム)から導出された信号(すなわち、MV)の可逆圧縮の一例となり得る。他の場合には、MV予測自体は、例えばいくつかの周囲のMVから予測子を計算するときの丸め誤差のために、非可逆であり得る。
様々なMV予測メカニズムが、H.265/HEVC(ITU-T Rec. H.265、「High Efficiency Video Coding」、2016年12月)に記載されている。H.265が提供する多くのMV予測メカニズムのうち、図2を参照して説明するのは、以後「空間マージ」と呼ばれる技術である。
図2を参照すると、カレントブロック(201)は、動き探索プロセス中にエンコーダによって、空間的にシフトされた同じサイズの以前のブロックから予測可能であることがわかっているサンプルを含む。そのMVを直接コーディングする代わりに、MVは、A0、A1、およびB0、B1、B2(それぞれ、202~206)と表記された5つの周囲のサンプルのいずれか1つに関連付けられたMVを使用して、1つ以上の参照ピクチャと関連付けられたメタデータから、例えば、(復号順で)最新の参照ピクチャから導出されることが可能である。H.265では、MV予測は、隣接ブロックが使用している同じ参照ピクチャからの予測子を使用することができる。
本開示の態様は、ビデオ符号化および復号のための方法および装置を提供する。いくつかの例では、ビデオ復号のための装置は処理回路を含む。処理回路は、コーディングされたビデオビットストリームから1つ以上のブロックの予測情報を復号するように構成される。予測情報は、局所照明補償(local illumination compensation,LIC)が1つ以上のブロックに適用されることを示し、1つ以上のブロックのLIC情報を含む。1つ以上のブロックは、再構成されるカレントブロックを含む。処理回路は、LIC情報に基づいて、カレントブロック内の第1のサブブロックの最終スケーリング係数αf1およびカレントブロック内の第1のサブブロックの最終オフセットβf1を決定する。処理回路は、予測子内の最終スケーリング係数αf1、最終オフセットβf1、および第1の予測子サブブロックに基づいて、カレントブロックに対応する予測子内の更新された第1の予測子サブブロックを決定する。一例では、予測子における第1の予測子サブブロック内の第1のサンプルの更新値はαf1×pi1+βf1に等しく、pi1は、予測子における第1の予測子サブブロック内の第1のサンプルの値である。処理回路は、予測子内の更新された第1の予測子サブブロックに基づいて、カレントブロック内の第1のサブブロックを再構成する。
一実施形態では、カレントブロック内の第1のサブブロックの初期スケーリング係数αi1およびカレントブロック内の第1のサブブロックの初期オフセットβi1が、カレントブロックのカレントテンプレートの第1の部分および参照ブロックの参照テンプレートの第1の部分に基づいて決定される。予測子は、参照ブロックに基づくことができる。1つ以上のブロックのLIC情報は、コーディングされたビデオビットストリームでシグナリングされ、1つ以上のブロックの第1のパラメータμ1および1つ以上のブロックの第2のパラメータμ2のうちの少なくとも1つを示す。処理回路は、1つ以上のブロックの第1のパラメータμ1およびカレントブロック内の第1のサブブロックの初期スケーリング係数αi1に基づいて、カレントブロック内の第1のサブブロックの最終スケーリング係数αf1を決定する。処理回路は、1つ以上のブロックの第2のパラメータμ2およびカレントブロック内の第1のサブブロックの初期オフセットβi1に基づいて、カレントブロック内の第1のサブブロックの最終オフセットβf1を決定する。
一例では、1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方を示し、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の他方は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方に基づいて決定される。
一例では、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方はゼロに等しく、1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方を示さない。
一例では、1つ以上のブロックのLIC情報は、第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つを示す少なくとも1つのインデックスを含む。
一例では、第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つは、浮動小数点値であり、複数ビットで量子化され、1つ以上のブロックのLIC情報は複数ビットを含む。
一例では、処理回路は、カレントブロック内の第1のサブブロックの最終スケーリング係数αf1を、1つ以上のブロックの第1のパラメータμ1とカレントブロック内の第1のサブブロックの初期スケーリング係数αi1との和となるように決定する。
一例では、処理回路は、カレントテンプレートの第1の部分または参照テンプレートの第1の部分のうちの少なくとも1つに基づいて、カレントブロック内の第1のサブブロックのパラメータTavg,1を決定し、カレントブロック内の第1のサブブロックの最終オフセットβf1を、(βi1+μ2×Tavg,1)となるように決定する。
一例では、1つ以上のブロックのLIC情報は、コーディングユニット(CU)レベルでシグナリングされる。
一例では、1つ以上のブロックのLIC情報は、CUレベルよりも高いレベルでシグナリングされる。
一例では、第1のサブブロックはカレントブロックを含み、第1の予測子サブブロックは予測子を含み、カレントテンプレートの第1の部分はカレントテンプレートを含み、参照テンプレートの第1の部分は参照テンプレートを含む。
一例では、カレントブロックは、第1のサブブロックおよび第2のサブブロックを含み、1つ以上のブロックのLIC情報に示される第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つは、第1のサブブロックおよび第2のサブブロックに適用され、第2のサブブロックは、第1のサブブロックの初期スケーリング係数αi1とは異なる別の初期スケーリング係数αi2および第1のサブブロックの初期オフセットとは異なる別の初期オフセットβi2に関連付けられる。
本開示の態様はまた、ビデオ復号のための方法を実行するために少なくとも1つのプロセッサによって実行可能なプログラムを記憶した非一時的なコンピュータ可読記憶媒体も提供する。
開示された主題のさらなる特徴、性質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかになるだろう。
イントラ予測モードの例示的なサブセットの概略図である。 例示的なイントラ予測方向の図である。 カレントブロック(201)および周囲のサンプルの一例を示す図である。 通信システム(300)の例示的なブロック図の概略図である。 通信システム(400)の例示的なブロック図の概略図である。 デコーダの例示的なブロック図の概略図である。 エンコーダの例示的なブロック図の概略図である。 例示的なエンコーダを示すブロック図である。 例示的なデコーダを示すブロック図である。 本開示の一実施形態による空間マージ候補の位置を示す図である。 本開示の一実施形態による空間マージ候補の冗長性チェックについて考慮される候補ペアを示す図である。 時間マージ候補の例示的な動きベクトルスケーリングを示す図である。 カレントコーディングユニットの時間マージ候補の例示的な候補位置を示す図である。 アフィンモデルの例を示す図である。 アフィンモデルの例を示す図である。 アフィン予測に基づくサブブロックの一例を示す図である。 カレントCUのアフィンマージリスト内の制御点動きベクトル(CPMV)候補を決定する一例を示す図である。 カレントブロックの空間近傍および時間近傍の一例を示す図である。 パラメータ調整を伴う例示的なLICを示す図である。 本開示の一実施形態による符号化プロセスを概説するフローチャートである。 本開示の一実施形態による復号プロセスを概説するフローチャートである。 一実施形態によるコンピュータシステムの概略図である。
図3は、通信システム(300)の例示的なブロック図を示している。通信システム(300)は、例えばネットワーク(350)を介して互いに通信することができる複数の端末デバイスを含む。例えば、通信システム(300)は、ネットワーク(350)を介して相互接続された端末デバイス(310)および(320)の第1のペアを含む。図3の例において、端末デバイス(310)および(320)の第1のペアは、データの単方向送信を実行する。例えば、端末デバイス(310)は、ネットワーク(350)を介して他方の端末デバイス(320)に送信するためにビデオデータ(例えば、端末デバイス(310)によってキャプチャされたビデオピクチャのストリーム)をコーディングしてもよい。符号化ビデオデータは、1つ以上のコーディングされたビデオビットストリームの形式で送信され得る。端末デバイス(320)は、ネットワーク(350)からコーディングされたビデオデータを受信し、コーディングされたビデオデータを復号してビデオピクチャを復元し、復元されたビデオデータに従ってビデオピクチャを表示し得る。単方向データ伝送は、メディアサービング用途などにおいて一般的であり得る。
別の例では、通信システム(300)は、例えばビデオ会議中のコーディングされたビデオデータの双方向伝送を実行する端末デバイス(330)および(340)の第2のペアを含む。データの双方向伝送の場合、一例では、端末デバイス(330)および(340)の各端末デバイスは、ネットワーク(350)を介して端末デバイス(330)および(340)の他方の端末デバイスに送信するために、ビデオデータ(例えば、端末デバイスによってキャプチャされたビデオピクチャのストリーム)をコーディングすることができる。端末デバイス(330)および(340)の各端末デバイスはまた、端末デバイス(330)および(340)の他方の端末デバイスによって送信されたコーディングされたビデオデータを受信することができ、コーディングされたビデオデータを復号してビデオピクチャを復元することができ、復元されたビデオデータに従ってアクセス可能な表示デバイスにビデオピクチャを表示することができる。
図3の例において、端末デバイス(310)、(320)、(330)および(340)は、サーバ、パーソナルコンピュータ、およびスマートフォンとしてそれぞれ例示されているが、本開示の原理はそのように限定されなくてもよい。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤおよび/または専用ビデオ会議機器と共に適用される。ネットワーク(350)は、例えば有線(配線)および/または無線通信ネットワークを含む、端末デバイス(310)、(320)、(330)および(340)間でコーディングされたビデオデータを伝達する任意の数のネットワークを表す。通信ネットワーク(350)は、回路交換チャネルおよび/またはパケット交換チャネルでデータを交換し得る。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、広域ネットワークおよび/またはインターネットを含む。本説明の目的のために、ネットワーク(350)のアーキテクチャおよびトポロジーは、本明細書で以下に説明されない限り、本開示の動作にとって重要でない可能性がある。
図4は、開示の主題についての用途の一例として、ストリーミング環境におけるビデオエンコーダおよびビデオデコーダを示している。開示の主題は、例えば、ビデオ会議、デジタルテレビ、ストリーミングサービス、CD、DVD、メモリスティックなどを含むデジタルメディアへの圧縮ビデオの記憶などを含む他のビデオ対応用途に等しく適用可能であり得る。
ストリーミングシステムは、例えば、圧縮されていないビデオピクチャのストリーム(402)を作成するビデオソース(401)、例えば、デジタルカメラを含むことができるキャプチャサブシステム(413)を含み得る。一例では、ビデオピクチャのストリーム(402)は、デジタルカメラによって撮影されたサンプルを含む。符号化ビデオデータ(404)(またはコーディングされたビデオビットストリーム)と比較したときに多いデータ量を強調するために太線として示されたビデオピクチャのストリーム(402)は、ビデオソース(401)に接続されたビデオエンコーダ(403)を含む電子デバイス(420)によって処理され得る。ビデオエンコーダ(403)は、以下でより詳細に記載されるように、開示された主題の態様を可能にするかまたは実装するために、ハードウェア、ソフトウェア、またはそれらの組合せを含むことができる。ビデオピクチャのストリーム(402)と比較してより少ないデータ量を強調するために細線として描写された符号化ビデオデータ(404)(または符号化ビデオビットストリーム)は、将来の使用のためにストリーミングサーバ(405)に記憶することができる。図4のクライアントサブシステム(406)および(408)などの1つ以上のストリーミングクライアントサブシステムは、符号化ビデオデータ(404)のコピー(407)および(409)を取り出すために、ストリーミングサーバ(405)にアクセスすることができる。クライアントサブシステム(406)は、例えば電子デバイス(430)内にビデオデコーダ(410)を含むことができる。ビデオデコーダ(410)は、符号化ビデオデータの入力コピー(407)を復号し、ディスプレイ(412)(例えば、表示画面)または他のレンダリングデバイス(図示せず)上でレンダリングされ得るビデオピクチャの出力ストリーム(411)を作成する。いくつかのストリーミングシステムでは、符号化ビデオデータ(404)、(407)、および(409)(例えば、ビデオビットストリーム)は、特定のビデオコーディング/圧縮規格に従って符号化され得る。これらの規格の例は、ITU-T勧告H.265を含む。一例では、開発中のビデオコーディング規格は、多用途ビデオコーディング(VVC)として非公式に知られている。開示された主題は、VVCの文脈で使用され得る。
電子デバイス(420)および(430)は、他の構成要素(図示せず)を含むことができることに留意されたい。例えば、電子デバイス(420)はビデオデコーダ(図示せず)を含むことができ、電子デバイス(430)もビデオエンコーダ(図示せず)を含むことができる。
図5は、ビデオデコーダ(510)の例示的なブロック図を示している。ビデオデコーダ(510)は、電子デバイス(530)に含まれ得る。電子デバイス(530)は、受信機(531)(例えば、受信回路)を含むことができる。ビデオデコーダ(510)は、図4の例のビデオデコーダ(410)の代わりに使用され得る。
受信機(531)は、ビデオデコーダ(510)によって復号されるべき1つ以上のコーディングされたビデオシーケンスを受信し得る。一実施形態では、一度に1つのコーディングされたビデオシーケンスが受信され、各コーディングされたビデオシーケンスの復号は、他のコーディングされたビデオシーケンスの復号から独立している。コーディングされたビデオシーケンスはチャネル(501)から受信され得、チャネル(501)は、符号化ビデオデータを記憶する記憶装置へのハードウェア/ソフトウェアリンクであり得る。受信機(531)は、それぞれの使用エンティティ(図示せず)に転送され得る、他のデータ、例えばコーディングされたオーディオデータストリームおよび/または補助データストリームと共に、符号化ビデオデータを受信し得る。受信機(531)は、コーディングされたビデオシーケンスを他のデータから分離し得る。ネットワークジッタに対抗するために、受信機(531)とエントロピーデコーダ/パーサ(520)(以後、「パーサ(520)」)との間にバッファメモリ(515)が接続され得る。特定の用途では、バッファメモリ(515)はビデオデコーダ(510)の一部である。他の用途では、バッファメモリ(515)はビデオデコーダ(510)の外部にあり得る(図示せず)。さらに他の用途では、例えば、ネットワークジッタに対抗するために、ビデオデコーダ(510)の外部にバッファメモリ(図示せず)が存在し、加えて、例えば、プレイアウトタイミングを処理するために、ビデオデコーダ(510)の内部に他のバッファメモリ(515)が存在し得る。受信機(531)が十分な帯域幅および可制御性の記憶/転送デバイスから、またはアイソシンクロナスネットワークからデータを受信しているとき、バッファメモリ(515)は不要な場合があり、または小さくすることができる。インターネットなどのベストエフォートパケットネットワークで使用するために、バッファメモリ(515)が必要とされてもよく、比較的大きくてもよく、有利には適応サイズであってもよく、ビデオデコーダ(510)の外部のオペレーティングシステムまたは同様の要素(図示せず)に少なくとも部分的に実装されてもよい。
ビデオデコーダ(510)は、コーディングされたビデオシーケンスからシンボル(521)を再構成するためにパーサ(520)を含み得る。これらのシンボルのカテゴリは、ビデオデコーダ(510)の動作を管理するために使用される情報、および潜在的に、図5に示されるように、電子デバイス(530)の不可欠な部分ではないが電子デバイス(530)に接続されることが可能であるレンダリングデバイス(512)(例えば、表示画面)などのレンダリングデバイスを制御するための情報を含む。(1つまたは複数の)レンダリングデバイスのための制御情報は、補足強化情報(SEI)メッセージまたはビデオユーザビリティ情報(VUI)パラメータセットフラグメント(描写せず)の形式であってもよい。パーサ(520)は、受信されたコーディングされたビデオシーケンスを構文解析/エントロピー復号し得る。コーディングされたビデオシーケンスのコーディングは、ビデオコーディング技術または規格に従うことができ、コンテキスト依存性ありまたはなしの可変長コーディング、ハフマンコーディング、算術コーディングなどを含む様々な原理に従うことができる。パーサ(520)は、グループに対応する少なくとも1つのパラメータに基づいて、コーディングされたビデオシーケンスから、ビデオデコーダ内のピクセルのサブグループのうちの少なくとも1つのサブグループパラメータのセットを抽出し得る。サブグループは、ピクチャグループ(GOP)、ピクチャ、タイル、スライス、マクロブロック、コーディングユニット(CU)、ブロック、変換ユニット(TU)、予測ユニット(PU)などを含むことができる。パーサ(520)はまた、コーディングされたビデオシーケンスから、変換係数、量子化パラメータ値、動きベクトルなどの情報を抽出することができる。
パーサ(520)は、シンボル(521)を作成するために、バッファメモリ(515)から受け取ったビデオシーケンスに対してエントロピー復号/構文解析動作を実行し得る。
シンボル(521)の再構成は、コーディングされたビデオピクチャまたはその部分のタイプ(インターピクチャおよびイントラピクチャ、インターブロックおよびイントラブロックなど)、ならびに他の要因に応じて、複数の異なるユニットを関与させることができる。どのユニットがどのように関与するかは、パーサ(520)によってコーディングされたビデオシーケンスからパースされたサブグループ制御情報によって制御され得る。パーサ(520)と以下の複数のユニットとの間のそのようなサブグループ制御情報の流れは、明確にするために描写されていない。
すでに述べられた機能ブロック以外に、ビデオデコーダ(510)は、以下に記載されるように、概念的にいくつかの機能ユニットに細分化することができる。商業的制約の下で動作する実際の実装形態では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的に、互いに統合することができる。しかしながら、開示された主題を記載する目的のために、以下の機能ユニットへの概念的な細分化が適切である。
第1のユニットはスケーラ/逆変換ユニット(551)である。スケーラ/逆変換ユニット(551)は、量子化変換係数、ならびにどの変換を使用するか、ブロックサイズ、量子化係数、量子化スケーリング行列などを含む制御情報を、パーサ(520)から(1つまたは複数の)シンボル(521)として受信する。スケーラ/逆変換ユニット(551)は、アグリゲータ(555)に入力することができるサンプル値を含むブロックを出力することができる。
場合によっては、スケーラ/逆変換ユニット(551)の出力サンプルは、イントラコーディングされたブロックに関係し得る。イントラコーディングされたブロックは、以前に再構成されたピクチャからの予測情報を使用しておらず、カレントピクチャの以前に再構成された部分からの予測情報を使用することができるブロックである。そのような予測情報は、イントラピクチャ予測ユニット(552)によって提供され得る。場合によっては、イントラピクチャ予測ユニット(552)は、カレントピクチャバッファ(558)からフェッチされた周囲のすでに再構成された情報を使用して、再構成中のブロックと同じサイズおよび形状のブロックを生成する。カレントピクチャバッファ(558)は、例えば、部分的に再構成されたカレントピクチャおよび/または完全に再構成されたカレントピクチャをバッファリングする。アグリゲータ(555)は、場合によっては、サンプルごとに、イントラ予測ユニット(552)が生成した予測情報を、スケーラ/逆変換ユニット(551)によって提供される出力サンプル情報に追加する。
他の場合には、スケーラ/逆変換ユニット(551)の出力サンプルは、インターコーディングされ、潜在的に動き補償されたブロックに関係し得る。そのような場合、動き補償予測ユニット(553)は、参照ピクチャメモリ(557)にアクセスして、予測に使用されるサンプルをフェッチすることができる。ブロックに関係するシンボル(521)に従ってフェッチされたサンプルを動き補償した後、これらのサンプルは、出力サンプル情報を生成するために、アグリゲータ(555)によってスケーラ/逆変換ユニット(551)の出力に追加されることが可能である(この場合、残差サンプルまたは残差信号と呼ばれる)。動き補償予測ユニット(553)が予測サンプルをフェッチする参照ピクチャメモリ(557)内のアドレスは、例えば、X、Y、および参照ピクチャ成分を有することができるシンボル(521)の形式で動き補償予測ユニット(553)に利用可能な動きベクトルによって制御されることが可能である。動き補償はまた、サブサンプルの正確な動きベクトルが使用されているときに参照ピクチャメモリ(557)からフェッチされたサンプル値の補間、動きベクトル予測メカニズムなどを含むことができる。
アグリゲータ(555)の出力サンプルは、ループフィルタユニット(556)において様々なループフィルタリング技術を受けることができる。ビデオ圧縮技術は、コーディングされたビデオシーケンス(コーディングされたビデオビットストリームとも呼ばれる)に含まれるパラメータによって制御され、パーサ(520)からのシンボル(521)としてループフィルタユニット(556)に提供されるインループフィルタ技術を含むことができる。ビデオ圧縮はまた、コーディングされたピクチャまたはコーディングされたビデオシーケンスの(復号順で)前の部分の復号中に取得されたメタ情報に応答して行うこともでき、以前に再構成およびループフィルタリングされたサンプル値に応答して行うこともできる。
ループフィルタユニット(556)の出力は、レンダリングデバイス(512)に出力されるだけでなく、将来のインターピクチャ予測で使用するために参照ピクチャメモリ(557)に記憶することができるサンプルストリームであり得る。
特定のコーディングされたピクチャは、完全に再構成されると、将来の予測のための参照ピクチャとして使用されることが可能である。例えば、カレントピクチャに対応するコーディングピクチャが完全に再構成され、コーディングピクチャが(例えば、パーサ(520)によって)参照ピクチャとして識別されると、カレントピクチャバッファ(558)は参照ピクチャメモリ(557)の一部になることができ、次のコーディングされたピクチャの再構成を開始する前に新しいカレントピクチャバッファを再割り当てすることができる。
ビデオデコーダ(510)は、ITU-T Rec. H.265などの所定のビデオ圧縮技術または規格に従って復号動作を実行することができる。コーディングされたビデオシーケンスは、コーディングされたビデオシーケンスが、ビデオ圧縮技術または規格の構文とビデオ圧縮技術または規格に文書化されているプロファイルの両方を順守しているという意味で、使用されているビデオ圧縮技術または規格によって指定されている構文に準拠し得る。具体的には、プロファイルは、映像圧縮技術または映像圧縮規格で利用可能なすべてのツールから、そのプロファイルの下で使用可能な唯一のツールとして特定のツールを選択してもよい。また、コンプライアンスのために必要なのは、コーディングされたビデオシーケンスの複雑さが、ビデオ圧縮技術または規格のレベルによって定義された範囲内にあることであり得る。場合によっては、レベルは、最大ピクチャサイズ、最大フレームレート、(例えば、毎秒メガサンプル単位で測定された)最大再構成サンプルレート、最大参照ピクチャサイズなどを制限する。レベルによって設定される制限は、場合によっては、仮想参照デコーダ(HRD)の仕様、およびコーディングされたビデオシーケンス内でシグナリングされるHRDバッファ管理用のメタデータによってさらに制限され得る。
一実施形態では、受信機(531)は、符号化ビデオと共に追加の(冗長な)データを受信することができる。追加のデータは、(1つまたは複数の)コーディングされたビデオシーケンスの一部として含まれ得る。追加のデータは、データを適切に復号するために、および/または元のビデオデータをより正確に再構成するために、ビデオデコーダ(510)によって使用され得る。追加のデータは、例えば、時間、空間、または信号雑音比(SNR)拡張レイヤ、冗長スライス、冗長ピクチャ、前方誤り訂正コードなどの形式であり得る。
図6は、ビデオエンコーダ(603)の例示的なブロック図を示している。ビデオエンコーダ(603)は電子デバイス(620)に含まれる。電子デバイス(620)は送信機(640)(例えば、送信回路)を含む。ビデオエンコーダ(603)は、図4の例のビデオエンコーダ(403)の代わりに使用されることが可能である。
ビデオエンコーダ(603)は、ビデオエンコーダ(603)によってコーディングされるビデオ画像をキャプチャすることができる(図6の例では電子デバイス(620)の一部ではない)ビデオソース(601)からビデオサンプルを受信することができる。別の例では、ビデオソース(601)は電子デバイス(620)の一部である。
ビデオソース(601)は、ビデオエンコーダ(603)によってコーディングされるべきソースビデオシーケンスを、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、…)、任意の色空間(例えば、BT.601 Y CrCB、RGB、…)、および任意の適切なサンプリング構造(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)のものとすることができるデジタルビデオサンプルストリームの形式で提供することができる。メディアサービングシステムにおいて、ビデオソース(601)は、予め用意された映像を記憶する記憶装置であってもよい。ビデオ会議システムでは、ビデオソース(601)は、ビデオシーケンスとしてローカル画像情報をキャプチャするカメラであり得る。ビデオデータは、順番に見たときに動きを伝える複数の個別のピクチャとして提供されてもよい。ピクチャ自体は、ピクセルの空間配列として編成することができ、各ピクセルは、使用中のサンプリング構造、色空間などに応じて、1つ以上のサンプルを含むことができる。当業者は、ピクセルとサンプルとの間の関係を容易に理解することができる。以下の説明は、サンプルに焦点を当てている。
一実施形態によれば、ビデオエンコーダ(603)は、リアルタイムで、または必要とされる任意の他の時間制約の下で、ソースビデオシーケンスのピクチャをコーディングされたビデオシーケンス(643)にコーディングし、圧縮し得る。適切なコーディング速度を強制することが、コントローラ(650)の1つの機能である。いくつかの実施形態では、コントローラ(650)は、以下で説明される他の機能ユニットを制御し、他の機能ユニットに機能的に接続されている。明確にするために、接続は描かれない。コントローラ(650)によって設定されるパラメータは、レート制御関連パラメータ(ピクチャスキップ、量子化器、レート歪み最適化技術のラムダ値、…)、ピクチャサイズ、ピクチャグループ(GOP)レイアウト、最大動きベクトル探索範囲などを含むことができる。コントローラ(650)は、特定のシステム設計のために最適化されたビデオエンコーダ(603)に関係する他の適切な機能を有するように構成され得る。
いくつかの実施形態では、ビデオエンコーダ(603)は、コーディングループで動作するように構成される。過度に簡略化された説明として、一例では、コーディングループは、ソースコーダ(630)(例えば、コーディングされるべき入力ピクチャと、(1つまたは複数の)参照ピクチャとに基づいて、シンボルストリームなどのシンボルを作成する役割を担う)と、ビデオエンコーダ(603)に組み込まれた(ローカル)デコーダ(633)とを含むことができる。デコーダ(633)は、(リモート)デコーダも作成することになるのと同様の方式でシンボルを再構成してサンプルデータを作成する。再構成されたサンプルストリーム(サンプルデータ)は、参照ピクチャメモリ(634)に入力される。シンボルストリームの復号は、デコーダの位置(ローカルまたはリモート)に関係なくビットイグザクトな結果をもたらすため、参照ピクチャメモリ(634)の内容も、ローカルエンコーダとリモートエンコーダとの間でビットイグザクトである。言い換えれば、エンコーダの予測部分は、復号中に予測を使用するときにデコーダが「見る」ことになるのと全く同じサンプル値を参照ピクチャサンプルとして「見る」。参照ピクチャの同期性(および、例えば、チャネル誤差のために同期性が維持できない場合に結果として生じるドリフト)のこの基本原理は、いくつかの関連技術でも使用される。
「ローカル」デコーダ(633)の動作は、図5と併せて上記で詳細にすでに説明されている、ビデオデコーダ(510)などの「リモート」デコーダの動作と同じであり得る。しかしながら、図5も簡単に参照すると、シンボルが利用可能であり、エントロピーコーダ(645)およびパーサ(520)によるコーディングビデオシーケンスへのシンボルの符号化/復号は可逆であり得るので、バッファメモリ(515)を含むビデオデコーダ(510)のエントロピー復号部分、およびパーサ(520)は、ローカルデコーダ(633)に完全に実装されていない可能性がある。
一実施形態では、デコーダに存在する構文解析/エントロピー復号を除くデコーダ技術は、対応するエンコーダに同一または実質的に同一の機能形態で存在する。したがって、開示された主題は、デコーダの動作に焦点を当てている。エンコーダ技術の説明は、包括的に記載されたデコーダ技術の逆であるため、省略することができる。特定の領域において、より詳細な説明が以下に提供される。
動作中、いくつかの例では、ソースコーダ(630)は、「参照ピクチャ」として指定されたビデオシーケンスからの1つ以上の以前にコーディングされたピクチャを参照して入力ピクチャを予測的にコーディングする、動き補償予測コーディングを実行することができる。このようにして、コーディングエンジン(632)は、入力ピクチャのピクセルブロックと、入力ピクチャへの(1つまたは複数の)予測参照として選択され得る(1つまたは複数の)参照ピクチャのピクセルブロックとの間の差分をコーディングする。
ローカルビデオデコーダ(633)は、ソースコーダ(630)によって作成されたシンボルに基づいて、参照ピクチャとして指定され得るピクチャのコーディングされたビデオデータを復号し得る。コーディングエンジン(632)の動作は、有利には、非可逆プロセスであってもよい。コーディングビデオデータが(図6には示されていない)ビデオデコーダで復号され得るとき、再構成されたビデオシーケンスは、通常、いくつかの誤差を伴うソースビデオシーケンスの複製であり得る。ローカルビデオデコーダ(633)は、参照ピクチャに対してビデオデコーダによって実行され得る復号プロセスを複製し、再構成された参照ピクチャを参照ピクチャメモリ(634)に記憶させ得る。このようにして、ビデオエンコーダ(603)は、(送信エラーなしで)遠端ビデオデコーダによって取得されることになる再構成された参照ピクチャとして共通のコンテンツを有する再構成された参照ピクチャのコピーをローカルに記憶させ得る。
予測子(635)は、コーディングエンジン(632)のための予測検索を実行し得る。すなわち、コーディングされる新しいピクチャの場合、予測子(635)は、新しいピクセルのための適切な予測参照として役立つことができる、(候補参照ピクセルブロックとしての)サンプルデータまたは参照ピクチャ動きベクトル、ブロック形状などの特定のメタデータを求めて、参照ピクチャメモリ(634)を検索することができる。予測子(635)は、適切な予測参照を見つけるために、ピクセルブロックごとにサンプルブロックに対して動作することができる場合によっては、予測子(635)によって取得された検索結果によって決定されるように、入力ピクチャは、参照ピクチャメモリ(634)に記憶された複数の参照ピクチャから引き出された予測参照を有してもよい。
コントローラ(650)は、例えば、ビデオデータを符号化するために使用されるパラメータおよびサブグループパラメータの設定を含む、ソースコーダ(630)のコーディング動作を管理し得る。
すべての前述の機能ユニットの出力は、エントロピーコーダ(645)においてエントロピーコーディングを受け得る。エントロピーコーダ(645)は、様々な機能ユニットによって生成されたシンボルを、ハフマンコーディング、可変長コーディング、算術コーディングなどといった技術に従ってシンボルに可逆圧縮を適用することによってコーディングされたビデオシーケンスに変換する。
送信機(640)は、エントロピーコーダ(645)によって作成された(1つまたは複数の)コーディングされたビデオシーケンスを、符号化されたビデオデータを記憶することになる記憶デバイスへのハードウェア/ソフトウェアリンクであり得る、通信チャネル(660)を介した送信に備えてバッファリングし得る。送信機(640)は、ビデオエンコーダ(603)からのコーディングビデオデータを、送信される他のデータ、例えば、コーディングオーディオデータおよび/または補助データストリーム(ソースは図示せず)とマージし得る。
コントローラ(650)は、ビデオエンコーダ(603)の動作を管理し得る。コーディング中、コントローラ(650)は、各コーディングされたピクチャに特定のコーディングされたピクチャタイプを割り当てることができ、これは、それぞれのピクチャに適用され得るコーディング技法に影響を及ぼす場合がある。例えば、ピクチャは多くの場合、以下のピクチャタイプのうちの1つとして割り当てられ得る。
イントラピクチャ(Iピクチャ)は、予測のソースとしてシーケンス内の他のピクチャを使用せずにコーディングおよび復号され得るものであり得る。いくつかのビデオコーデックは、例えば、独立デコーダリフレッシュ(「IDR」)ピクチャを含む、異なるタイプのイントラピクチャを可能にする。当業者は、Iピクチャのこれらの変形、ならびにそれらのそれぞれの用途および特徴を認識している。
予測ピクチャ(Pピクチャ)は、各ブロックのサンプル値を予測するために、最大で1つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して、コーディングおよび復号され得るピクチャであり得る。
双方向予測ピクチャ(Bピクチャ)は、各ブロックのサンプル値を予測するために、最大で2つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して、コーディングおよび復号され得るピクチャであり得る。同様に、複数予測ピクチャは、単一ブロックの再構成のために3つ以上の参照ピクチャおよび関連するメタデータを使用することができる。
ソースピクチャは、一般的には、複数のサンプルブロック(例えば、4×4、8×8、4×8、または16×16のサンプルそれぞれのブロック)に空間的に細分され、ブロックごとにコーディングされ得る。ブロックは、ブロックのそれぞれのピクチャに適用されたコーディング割り当てによって決定される他の(すでにコーディングされた)ブロックを参照して予測的にコーディングされ得る。例えば、Iピクチャのブロックは、非予測的にコーディングされ得るか、または、同じピクチャのすでにコーディングされたブロックを参照して予測的にコーディングされ得る(空間予測またはイントラ予測)。Pピクチャの画素ブロックは、1つの以前にコーディングされた参照ピクチャを参照して、空間予測を介して、または時間予測を介して、予測的にコーディングされ得る。Bピクチャのブロックは、空間的予測を介して、または以前にコーディングされた1つまたは2つの参照ピクチャを参照する時間的予測を介して、予測的にコーディングされ得る。
ビデオエンコーダ(603)は、ITU-T勧告H.265などの所定のビデオコーディング技術または規格に従ってコーディング動作を実行し得る。その動作において、ビデオエンコーダ(603)は、入力ビデオシーケンスにおける時間および空間の冗長性を利用する予測コーディング動作を含む、様々な圧縮動作を実行することができる。したがって、コーディングされたビデオデータは、使用されているビデオコーディング技術または規格によって指定された構文に準拠し得る。
一実施形態では、送信機(640)は、符号化されたビデオと共に追加のデータを送信し得る。ソースコーダ(630)は、そのようなデータをコーディングされたビデオシーケンスの一部として含み得る。追加のデータは、時間/空間/SNR拡張層、冗長なピクチャおよびスライスなどの他の形式の冗長データ、SEIメッセージ、VUIパラメータセットフラグメントなどを含み得る。
ビデオは、複数のソースピクチャ(ビデオピクチャ)として時系列にキャプチャされ得る。イントラピクチャ予測(しばしば、イントラ予測と省略される)は、所与のピクチャ内の空間相関を利用し、インターピクチャ予測は、ピクチャ間の(時間または他の)相関を利用する。一例では、カレントピクチャと呼ばれる、符号化/復号中の特定のピクチャがブロックに分割される。カレントピクチャ内のブロックが、ビデオ内の以前にコーディングされた、まだバッファされている参照ピクチャ内の参照ブロックに類似しているとき、カレントピクチャ内のブロックは、動きベクトルと呼ばれるベクトルによってコーディングされることが可能である。動きベクトルは、参照ピクチャ内の参照ブロックを指し、複数の参照ピクチャが使用されている場合、参照ピクチャを識別する第3の次元を有することができる。
いくつかの実施形態では、インターピクチャ予測に、双予測技術を使用し得る。双予測技術によれば、第1の参照ピクチャおよび第2の参照ピクチャなどの2つの参照ピクチャが使用され、これらは両方とも復号順でビデオ内のカレントピクチャより前にある(しかし、表示順序は、それぞれ過去および未来のものであってもよい)。カレントピクチャ内のブロックは、第1の参照ピクチャ内の第1の参照ブロックを指し示す第1の動きベクトル、および第2の参照ピクチャ内の第2の参照ブロックを指し示す第2の動きベクトルによってコーディングされ得る。ブロックは、第1の参照ブロックと第2の参照ブロックとの組み合わせによって予測され得る。
さらに、コーディング効率を改善するために、インターピクチャ予測においてマージモード技術を使用することができる。
本開示のいくつかの実施形態によれば、インターピクチャ予測およびイントラピクチャ予測などの予測は、ブロック単位で実施される。例えば、HEVC規格によれば、ビデオピクチャのシーケンス内のピクチャは、圧縮のためにコーディングツリーユニット(CTU)に分割され、ピクチャ内のCTUは、64×64ピクセル、32×32ピクセル、16×16ピクセルなどの同じサイズを有する。一般に、CTUは3つのコーディングツリーブロック(CTB)を含み、それらは1つのルマCTBおよび2つのクロマCTBである。各CTUは、1つまたは複数のコーディングユニット(CU)に再帰的に四分木分割されることが可能である。例えば、64×64ピクセルのCTUは、64×64ピクセルの1つのCUに、または32×32ピクセルの4つのCUに、または16×16ピクセルの16個のCUに分割されることが可能である。一例では、各CUが、インター予測タイプやイントラ予測タイプなどのCUの予測タイプを決定するために解析される。CUは、時間的予測可能性および/または空間的予測可能性に応じて、1つ以上の予測ユニット(PU)に分割される。一般に、各PUは、1つのルマ予測ブロック(PB)および2つのクロマPBを含む。一実施形態では、コーディング(符号化/復号)における予測動作は、予測ブロックの単位で実行される。予測ブロックの一例としてルマ予測ブロックを使用すると、予測ブロックは、8×8ピクセル、16×16ピクセル、8×16ピクセル、16×8ピクセルなどのピクセルの値(例えば、ルマ値)の行列を含む。
図7は、ビデオエンコーダ(703)の例示的な図を示している。ビデオエンコーダ(703)は、ビデオピクチャのシーケンス内のカレントビデオピクチャ内のサンプル値の処理ブロック(例えば、予測ブロック)を受け取り、処理ブロックを、コーディングされたビデオシーケンスの一部であるコーディングされたピクチャに符号化するように構成される。一例では、ビデオエンコーダ(703)は、図4の例のビデオエンコーダ(403)の代わりに使用される。
HEVCの例では、ビデオエンコーダ(703)は、8×8サンプルの予測ブロックなどの処理ブロック用のサンプル値の行列を受信する。ビデオエンコーダ(703)は、処理ブロックが例えばレート歪み最適化を使用して、イントラモード、インターモード、または双予測モードのいずれを使用して最良にコーディングされるか否かを決定する。処理ブロックがイントラモードでコーディングされることになる場合、ビデオエンコーダ(703)は、イントラ予測技術を使用して、処理ブロックをコーディングされたピクチャに符号化し、処理ブロックがインターモードまたは双予測モードでコーディングされることになる場合、ビデオエンコーダ(703)は、それぞれ、インター予測技術または双予測技術を使用して、処理ブロックをコーディングされたピクチャに符号化し得る。特定のビデオコーディング技術では、マージモードは、予測子の外側のコーディングされた動きベクトル成分の助けを借りずに動きベクトルが1つまたは複数の動きベクトル予測子から導出されるインターピクチャ予測サブモードであり得る。特定の他のビデオコーディング技術では、対象ブロックに適用可能な動きベクトル成分が存在してもよい。一例では、ビデオエンコーダ(703)は、処理ブロックのモードを決定するためにモード決定モジュール(図示せず)などの他の構成要素を含む。
図7の例では、ビデオエンコーダ(703)は、図7に示されるように互いに接続されたインターエンコーダ(730)、イントラエンコーダ(722)、残差計算器(723)、スイッチ(726)、残差エンコーダ(724)、汎用コントローラ(721)、およびエントロピーエンコーダ(725)を含む。
インターエンコーダ(730)は、カレントブロック(例えば、処理ブロック)のサンプルを受け取り、ブロックを参照ピクチャ内の1つまたは複数の参照ブロック(例えば、前のピクチャおよび後のピクチャ内のブロック)と比較し、インター予測情報(例えば、インター符号化技術による冗長情報、動きベクトル、マージモード情報の記述)を生成し、任意の適切な技術を使用して、インター予測情報に基づいてインター予測結果(例えば、予測ブロック)を計算するように構成される。いくつかの例では、参照ピクチャは、符号化ビデオ情報に基づいて復号された復号された参照ピクチャである。
イントラエンコーダ(722)は、カレントブロック(例えば、処理ブロック)のサンプルを受け取り、場合によっては、ブロックを同じピクチャ内のすでにコーディングされたブロックと比較し、変換後の量子化係数を生成し、場合によっては、イントラ予測情報(例えば、1つ以上のイントラエンコーディング技術によるイントラ予測方向情報)も生成するように構成される。一例では、イントラエンコーダ(722)はまた、イントラ予測情報および同じピクチャ内の参照ブロックに基づいて、イントラ予測結果(例えば、予測ブロック)を計算する。
汎用コントローラ(721)は、汎用制御データを決定し、汎用制御データに基づいてビデオエンコーダ(703)の他の構成要素を制御するように構成される。一例では、汎用コントローラ(721)は、ブロックのモードを決定し、モードに基づいてスイッチ(726)に制御信号を提供する。例えば、モードがイントラモードであるとき、汎用コントローラ(721)は、スイッチ(726)を制御して残差計算器(723)が使用するためのイントラモード結果を選択し、エントロピーエンコーダ(725)を制御してイントラ予測情報を選択し、ビットストリームにイントラ予測情報を含め、モードがインターモードであるとき、汎用コントローラ(721)は、スイッチ(726)を制御して残差計算器(723)が使用するためのインター予測結果を選択し、エントロピーエンコーダ(725)を制御してインター予測情報を選択し、ビットストリームにインター予測情報を含める。
残差計算器(723)は、受信ブロックと、イントラエンコーダ(722)またはインターエンコーダ(730)から選択された予測結果との間の差(残差データ)を計算するように構成される。残差エンコーダ(724)は、残差データに基づいて、残差データをエンコーディングして変換係数を生成するよう動作するように構成される。一例では、残差エンコーダ(724)は、残差データを空間領域から周波数領域に変換し、変換係数を生成するように構成される。次いで、変換係数は、量子化変換係数を取得するために量子化処理を受ける。様々な実施形態において、ビデオエンコーダ(703)は残差デコーダ(728)も含む。残差デコーダ(728)は、逆変換を実行し、復号された残差データを生成するように構成される。復号された残差データは、イントラエンコーダ(722)およびインターエンコーダ(730)によって適切に使用されることが可能である。例えば、インターエンコーダ(730)は、復号された残差データおよびインター予測情報に基づいて復号されたブロックを生成することができ、イントラエンコーダ(722)は、復号された残差データおよびイントラ予測情報に基づいて復号されたブロックを生成することができる。復号されたブロックは、復号されたピクチャを生成するために適切に処理され、復号されたピクチャは、メモリ回路(図示せず)にバッファリングされ、いくつかの例では参照ピクチャとして使用することができる。
エントロピーエンコーダ(725)は、エンコーディングされたブロックを含めるようビットストリームをフォーマットするように構成される。エントロピーエンコーダ(725)は、HEVC規格などの適切な規格に従ってビットストリームに様々な情報を含めるように構成される。一例では、エントロピーエンコーダ(725)は、ビットストリームに、汎用制御データ、選択された予測情報(例えば、イントラ予測情報またはインター予測情報)、残差情報、および他の適切な情報を含めるように構成される。開示された主題によれば、インターモードまたは双予測モードのいずれかのマージサブモードでブロックをコーディングするときに残差情報が存在しないことに留意されたい。
図8は、ビデオデコーダ(810)の例示的な図を示している。ビデオデコーダ(810)は、コーディングされたビデオシーケンスの一部であるコーディングされたピクチャを受け取り、コーディングされたピクチャを復号して再構成されたピクチャを生成するように構成される。一例では、ビデオデコーダ(810)は、図4の例のビデオデコーダ(410)の代わりに使用される。
図8の例では、ビデオデコーダ(810)は、図8に示されたように一緒に接続されたエントロピーデコーダ(871)、インターデコーダ(880)、残差デコーダ(873)、再構成モジュール(874)、およびイントラデコーダ(872)を含む。
エントロピーデコーダ(871)は、コーディングされたピクチャから、コーディングされたピクチャが構成される構文要素を表す特定のシンボルを再構成するように構成され得る。そのようなシンボルは、例えば、ブロックがコーディングされているモード(例えば、イントラモード、インターモード、双予測モード、マージサブモードまたは他のサブモードのインターモードおよび双予測モードなど)、ならびにイントラデコーダ(872)またはインターデコーダ(880)によって、それぞれ、予測のために使用される特定のサンプルまたはメタデータを識別することができる予測情報(例えば、イントラ予測情報またはインター予測情報など)を含むことができる。シンボルはまた、例えば、量子化変換係数の形態の残差情報なども含むことができる。一例では、予測モードがインターモードまたは双予測モードである場合、インター予測情報がインターデコーダ(880)に提供され、予測タイプがイントラ予測タイプである場合、イントラ予測情報がイントラデコーダ(872)に提供される。残差情報は逆量子化を受けることができ、残差デコーダ(873)に提供される。
インターデコーダ(880)は、インター予測情報を受信し、インター予測情報に基づいてインター予測結果を生成するように構成される。
イントラデコーダ(872)は、イントラ予測情報を受信し、イントラ予測情報に基づいて予測結果を生成するように構成される。
残差デコーダ(873)は、逆量子化を実施して逆量子化変換係数を抽出し、逆量子化変換係数を処理して、残差情報を周波数領域から空間領域に変換するように構成される。残差デコーダ(873)はまた、(量子化パラメータ(QP)を含めるために)特定の制御情報を必要とする場合もあり、その情報は、エントロピーデコーダ(871)によって提供され得る(これは、少量の制御情報のみであり得るので、データパスは描かれていない)。
再構成モジュール(874)は、空間領域において、残差デコーダ(873)によって出力される残差情報と(場合によってインター予測モジュールまたはイントラ予測モジュールによって出力される)予測結果とを組み合わせて、再構成されたピクチャの一部になり得る再構成ブロックを形成するように構成され、再構成されたピクチャは再構成されたビデオの一部になり得る。視覚的品質を改善するために、デブロッキング動作などの他の適切な動作を実行することができることに留意されたい。
ビデオエンコーダ(403)、(603)、および(703)、ならびにビデオデコーダ(410)、(510)、および(810)は、任意の適切な技術を使用して実装され得ることに留意されたい。一実施形態では、ビデオエンコーダ(403)、(603)、および(703)、ならびにビデオデコーダ(410)、(510)、および(810)は、1つまたは複数の集積回路を使用して実装され得る。別の実施形態では、ビデオエンコーダ(403)、(603)、および(603)、ならびにビデオデコーダ(410)、(510)、および(810)は、ソフトウェア命令を実行する1つまたは複数のプロセッサを使用して実装され得る。
VVCでは様々なインター予測モードを使用することができる。インター予測されたCUに対して、動きパラメータは、(1つまたは複数の)MV、1つまたは複数の参照ピクチャインデックス、参照ピクチャリスト使用インデックス、およびインター予測されたサンプル生成に使用されるべき特定のコーディング特徴についての追加情報を含むことができる。動きパラメータは、明示的または暗黙的にシグナリングすることができる。CUがスキップモードでコーディングされる場合、CUは、PUと関連付けることができ、有意な残差係数も、コーディングされた動きベクトルデルタも、MV差分(例えばMVD)も、参照ピクチャインデックスも有し得ない。カレントCUの動きパラメータが、空間的候補および/または時間的候補、ならびに任意選択的にVVCで導入されるような追加の情報を含む(1つまたは複数の)隣接するCUから得られる場合、マージモードが指定され得る。マージモードは、スキップモードに対してだけでなく、インター予測されたCUにも適用され得る。一例では、マージモードの代替は動きパラメータの明示的な送信であり、その場合、(1つまたは複数の)MV、各参照ピクチャリストの対応する参照ピクチャインデックスおよび参照ピクチャリスト使用フラグその他の情報がCUごとに明示的にシグナリングされる。
VVCなどの一実施形態では、VVCテストモデル(VTM)参照ソフトウェアは、拡張マージ予測、マージ動きベクトル差分(MMVD)モード、対称MVDシグナリングを用いる適応動きベクトル予測(AMVP)モード、アフィン動き補償予測、サブブロックベース時間的動きベクトル予測(SbTMVP)、適応動きベクトル解像度(AMVR)、動きフィールドストレージ(1/16のルマサンプルMV記憶装置および8×8の動きフィールド圧縮)、CUレベル重みを用いる双予測(BCW)、双方向オプティカルフロー(BDOF)、オプティカルフローを用いる予測改良(PROF)、デコーダ側動きベクトル改良(DMVR)、組み合わされたインターおよびイントラ予測(CIIP)、幾何学的分割モード(GPM)などを含む、1つ以上の改良されたインター予測符号化ツールを含む。インター予測および関連する方法は、以下で詳細に説明される。
いくつかの例では、拡張マージ予測が使用され得る。VTM4などの一例では、マージ候補リストは、以下の5つのタイプの候補を順に含むことによって構築される:空間的に隣接する(1つまたは複数の)CUからの(1つまたは複数の)空間動きベクトル予測子(MVP)、配列された(1つまたは複数の)CUからの(1つまたは複数の)時間MVP、先入れ先出し(FIFO)テーブルからの(1つまたは複数の)履歴ベースのMVP、(1つまたは複数の)ペアの平均MVP、および(1つまたは複数の)ゼロMV。
マージ候補リストのサイズは、スライスヘッダでシグナリングされ得る。一例では、マージ候補リストの最大許容サイズは、VTM4において6である。マージモードでコーディングされた各CUについて、最良のマージ候補のインデックス(例えば、マージインデックス)は、切り捨てられた単項2値化(TU)を使用して符号化され得る。マージインデックスの最初のビンは、コンテキスト(例えば、コンテキスト適応型バイナリ算術コーディング(CABAC))でコーディングすることができ、他のビンにはバイパスコーディングを使用することができる。
異なるカテゴリのマージ候補の生成プロセスのいくつかの例が、以下に提供される。一実施形態では、(1つまたは複数の)空間候補は、以下のように導出される。VVCなどにおける空間マージ候補の導出は、HEVCのものと同一であり得る。一例では、図9に示される位置に配置された候補の中から、最大4つのマージ候補が選択される。図9は、本開示の一実施形態による空間マージ候補の位置を示す。図9を参照すると、導出の順序はB1、A1、B0、A0、およびB2である。位置B2は、(例えば、CUが他のスライスまたは他のタイルに属するため)位置A0、B0、B1、およびA1のいずれのCUも利用可能ではないか、またはイントラコーディングされたときにのみ考慮される。位置A1の候補が追加された後、残りの候補の追加は、コーディング効率が向上するように、同じ動き情報を有する候補が候補から除外されることを保証する冗長性チェックを受ける。
計算の複雑さを低減するために、いくつかの実施形態では、すべての可能な候補ペアが言及された冗長検査で考慮されるわけではない。代わりに、図10の矢印を用いてつなげられたペアなどの特定のペアのみが考慮され、冗長検査に使用された対応する候補が同じ動き情報を有さない場合にのみ、候補が候補リストに追加される。図10は、本開示の一実施形態による空間マージ候補の冗長性チェックについて考慮される候補ペアを示す。図10を参照すると、それぞれの矢印で連結されたペアは、A1およびB1、A1およびA0、A1およびB2、B1およびB0、ならびにB1およびB2を含む。したがって、位置B1、A0および/またはB2にある候補は、位置A1にある候補と比較することができ、位置B0および/またはB2にある候補は、位置B1にある候補と比較することができる。
一実施形態では、(1つまたは複数の)時間候補は、以下のように導出される。一例では、1つの時間マージ候補のみが候補リストに追加される。図11は、時間マージ候補の例示的な動きベクトルスケーリングを示す。カレントピクチャ(1101)内のカレントCU(1111)の時間マージ候補を導出するために、スケーリングされたMV(1121)(例えば、図11の点線で示される)は、配列された参照ピクチャ(1104)に属するコロケートCU(1112)に基づいて導出され得る。コロケートCU(1112)を導出するために使用される参照ピクチャリストは、スライスヘッダで明示的にシグナリングされ得る。時間マージ候補用のスケーリングされたMV(1121)は、図11の点線で示されるように取得され得る。スケーリングされたMV(1121)は、ピクチャオーダカウント(POC)距離tbおよびtdを使用して、コロケートCU(1112)のMVからスケーリングされ得る。POC距離tbは、カレントピクチャ(1101)のカレント参照ピクチャ(1102)とカレントピクチャ(1101)との間のPOC差として定義され得る。POC距離tdは、コロケートピクチャ(1103)のコロケート参照ピクチャ(1104)とコロケートピクチャ(1103)との間のPOC差として定義され得る。時間マージ候補の参照ピクチャインデックスは、ゼロに設定され得る。
図12は、カレントCUの時間マージ候補の例示的な候補位置(例えば、C0およびC1)を示す。時間マージ候補の位置は、候補位置C0とC1との間で選択され得る。候補位置C0は、カレントCUのコロケートCU(1210)の右下隅に位置する。候補位置C1は、カレントCU(1210)のコロケートCU(1210)の中心に位置する。候補位置C0のCUが利用可能ではないか、イントラコーディングされているか、またはCTUのカレント行の外側にある場合、時間マージ候補を導出するために候補位置C1が使用される。そうでなければ、例えば、候補位置C0のCUが利用可能であり、イントラコーディングされ、CTUのカレント行にあり、時間マージ候補を導出するために候補位置C0が使用される。
いくつかの例では、並進運動モデルが動き補償予測(MCP)に適用される。しかしながら、並進運動モデルは、ズームイン/アウト、回転、遠近運動、および他の不規則な運動をモデリングするのに適していない場合がある。いくつかの実施形態では、ブロックベースのアフィン変換動き補償予測が適用される。図13Aでは、ブロックのアフィン動きフィールドは、4パラメータアフィンモデルが使用されるときの2つの制御点(CP)、CP0およびCP1の2つの制御点動きベクトル(CPMV)、CPMV0およびCPMV1によって記述される。図13Bでは、ブロックのアフィン動きフィールドは、6パラメータアフィンモデルが使用されるときのCP、CP0、CP1、およびCP2の3つのCPMV、CPMV0、CPMV1、およびCPMV3によって記述される。
4パラメータアフィン動きモデルでは、ブロック内のサンプル位置(x,y)における動きベクトルは、以下のように導出される。
6パラメータアフィン動きモデルでは、ブロック内のサンプル位置(x,y)における動きベクトルは、以下のように導出される。
式1~2において、(mv0x,mv0y)は左上隅制御点の動きベクトルであり、(mv1x,mv1y)は左下隅制御点の動きベクトルであり、(mv2x,mv2y)は左下隅制御点の動きベクトルである。加えて、座標(x,y)はそれぞれのブロックの左上隅に対するものであり、WおよびHは、それぞれのブロックの幅および高さを示す。
動き補償予測を簡略化するために、いくつかの実施形態では、サブブロックベースのアフィン変換予測が適用される。例えば、図14では、4パラメータアフィン動きモデルが使用され、2つのCPMV
が決定される。カレントブロック(1410)から分割された4×4(サンプル)ルマサブブロック(1402)ごとの動きベクトルを導出するために、サブブロック(1402)の中心サンプルの動きベクトル(1401)が式1に従って計算され、1/16の分数精度に丸められる。次いで、導出された動きベクトル(1401)を用いて各サブブロック(1402)の予測を生成するために、動き補償補間フィルタが適用される。クロマ成分のサブブロックサイズは、4×4となるように設定される。4×4のクロマサブブロックのMVは、4つの対応する4×4のルマサブブロックのMVの平均として計算される。
並進運動インター予測と同様に、いくつかの実施形態では、アフィンマージモードおよびアフィンAMVPモードの2つのアフィン動きインター予測モードが採用される。
いくつかの実施形態では、幅と高さの両方が8以上であるCUのために、アフィンマージモードが適用され得る。カレントCUのアフィンマージ候補は、空間的に隣接するCUの動き情報に基づいて生成され得る。最大5つのアフィンマージ候補があってもよく、カレントCUに使用されるものを示すためにインデックスがシグナリングされる。例えば、アフィンマージ候補リストを形成するために、以下の3つのタイプのアフィンマージ候補が使用される。
(i)隣接CUのCPMVから外挿された継承アフィンマージ候補;
(ii)隣接CUの並進MVを使用して導出された構築アフィンマージ候補;および
(iii)ゼロMV。
いくつかの実施形態では、隣接ブロックのアフィン動きモデルから導出された最大で2つの継承アフィン候補があってもよく、1つは左隣接CUから、もう1つは上隣接CUから導出される。候補ブロックは、例えば、図9に示される位置に配置され得る。左の予測子では、走査順序はA0>A1であり、上の予測子では、走査順序はB0>B1>B2である。各側からの最初の継承候補のみが選択される。2つの継承候補の間でプルーニングチェックは実行されない。
隣接アフィンCUが識別されると、識別された隣接アフィンCUのCPMVは、カレントCUのアフィンマージリスト内のCPMVを導出するために使用される。図15に示されるように、カレントCU(1510)の隣接する左下のブロックAは、アフィンモードでコーディングされる。ブロックAを含むCU(1520)の左上隅、右上隅、および左下隅の動きベクトル
が達成される。ブロックAが4パラメータアフィンモデルでコーディングされるとき、カレントCU(1510)の2つのCPMV
は、
に従って計算される。ブロックAが6パラメータアフィンモデルでコーディングされる場合には、カレントCUの3つのCPMV(図示せず)は、
に従って計算される。
各制御点の隣接する並進運動情報を組み合わせることによって、構築アフィン候補が構築される。制御点の動き情報は、図16に示される指定された空間近傍および時間近傍から導出される。CPMVk(k=1,2,3,4)は、k番目の制御点を表す。CPMV1では、B2>B3>A2ブロックが順にチェックされ、最初の利用可能なブロックのMVが使用される。CPMV2では、B1>B0ブロックがチェックされ、CPMV3では、A1>A0ブロックがチェックされる。ブロックTにおけるTMVPは、利用可能であればCPMV4として使用される。
4つの制御点のMVが達成された後、その動き情報に基づいてアフィンマージ候補が構築される。構築するには、制御点MVの以下の組合せが順に使用される:{CPMV1,CPMV2,CPMV3}、{CPMV1,CPMV2,CPMV4}、{CPMV1,CPMV3,CPMV4}、{CPMV2,CPMV3,CPMV4}、{CPMV1,CPMV2}、{CPMV1,CPMV3}。
3つのCPMVの組合せは6パラメータアフィンマージ候補を構築し、2つのCPMVの組合せは4パラメータアフィンマージ候補を構築する。動きスケーリング処理を回避するために、制御点の参照インデックスが異なる場合、制御点MVの関連する組合せは破棄される。
継承アフィンマージ候補および構築アフィンマージ候補がチェックされた後、リストがまだ一杯でない場合、ゼロMVがマージ候補リストの最後に挿入される。
いくつかの実施形態では、幅と高さの両方が16以上であるCUのために、アフィンAMVPモードが適用され得る。アフィンAMVPモードが使用されるか否かを示すために、CUレベルのアフィンフラグがビットストリームでシグナリングされ、4パラメータアフィンまたは6パラメータアフィンが使用されるか否かを示すために、別のフラグがシグナリングされる。カレントCUのCPMVとそれらの予測子との差がビットストリームでシグナリングされる。アフィンAVMP候補リストサイズは2であり、以下の4つのタイプのCPVM候補を順に使用して生成され得る。
(i)隣接するCUのCPMVから外挿された継承アフィンAMVP候補;
(ii)隣接するCUの並進MVを使用して導出された構築アフィンAMVP候補;
(iii)隣接するCUからの並進MV;および
(iv)ゼロMV。
継承アフィンAMVP候補のチェック順序は、一例における継承アフィンマージ候補のチェック順序と同様である。違いは、AVMP候補について、カレントブロックと同じ参照ピクチャを有するアフィンCUが考慮されることである。継承アフィン動き予測子を候補リストに挿入するときにプルーニングプロセスは適用されない。
構築されたAMVP候補は、図16に示される指定された空間近傍から導出される。アフィンマージ候補構築で行われたのと同じチェック順序が使用される。加えて、隣接ブロックの参照ピクチャインデックスもチェックされる。インターコーディングされ、カレントCUと同じ参照ピクチャを有する、チェック順序で最初のブロックが使用される。カレントCUが4パラメータアフィンモデルでコーディングされ、CPMV0およびCPMV1が両方とも利用可能であるとき、利用可能なCPMVは、アフィンAMVPリスト内の1つの候補として追加される。カレントCUが6パラメータアフィンモードでコーディングされ、3つすべてのCPMV(CPMV0、CPMV1、およびCPMV2)が利用可能であるとき、利用可能なCPMVは、アフィンAMVPリスト内の1つの候補として追加される。そうでなければ、構築されたAMVP候補は利用不可能として設定される。
アフィンAMVPリスト候補は、継承アフィンAMVP候補および構築されたAMVP候補がチェックされた後も依然として2未満であり、制御点に隣接する並進運動ベクトルは、利用可能であれば、カレントCUのすべての制御点MVを予測するために追加される。最後に、アフィンAMVPリストがまだ満たされていない場合、アフィンAMVPリストを満たすためにゼロMVが使用される。
一実施形態では、動きベクトル差を有するアフィンマージ(アフィンMMVD)モードを使用することができる。利用可能なアフィンマージ候補は、ベース予測子として、サブブロックベースのマージリストから選択され得る。ベース予測子からの各制御点の動きベクトル値に対する動きベクトルオフセットを適用することができる。アフィンマージ候補が利用可能ではない場合、アフィンMMVDは使用されない。アフィンMMVDが使用される場合、距離インデックスおよびオフセット方向インデックスが後にシグナリングされ得る。
表1に示されるものなどのオフセットテーブルからどの距離オフセットを使用するかを示すために、距離インデックス(IDX)がシグナリングされ得る。
距離インデックスは、表2に示されるように、4つの方向を表し、両方の方向ではなく、x方向またはy方向のみがMV差を有することができる。
インター予測が単予測である場合、シグナリングされた距離オフセットは、制御点予測子ごとにオフセット方向に対して適用することができる。結果は、各制御点のMV値であり得る。
インター予測が双予測である場合、シグナリングされた距離オフセットは、制御点予測子のL0動きベクトルのためのシグナリングされたオフセット方向に対して適用することができ、L1 MVに対して適用されるオフセットは、以下で指定されるように、ミラーリングまたはスケーリングに基づいて適用することができる。
インター予測が双予測である場合、シグナリングされた距離オフセットは、制御点予測子のL0動きベクトルのためのシグナリングされたオフセット方向に対して適用される。L1 CPMVでは、オフセットは、反対方向と同じ量の距離オフセットが適用されるミラーリングに基づいて適用することができる。
一実施形態では、POC距離ベースのオフセットミラーリング方法が双予測に使用され得る。ベース候補が双予測されると、L0適用されたオフセットがシグナリングされ、L1上のオフセットは、リスト0およびリスト1上の参照ピクチャの時間位置に依存することができる。両方の参照ピクチャがカレントピクチャの同じ時間側にある場合、L0およびL1のCPMVには同じ距離オフセットおよび同じオフセット方向が適用され得る。2つの参照ピクチャがカレントピクチャの異なる側にあるとき、L1のCPMVは、反対のオフセット方向に適用された距離オフセットを有することができる。
一実施形態では、POC距離ベースのオフセットスケーリング方法が双予測に使用される。ベース候補が双予測されると、L0に適用されたオフセットはシグナリングされた通りであり、L1に適用されたオフセットは、リスト0およびリスト1上の参照ピクチャの時間距離に基づいてスケーリングされ得る。
一実施形態では、距離オフセット値範囲は、表3に示される3つの異なるエントリなどの3つのオフセットテーブルに拡張される。各オフセットテーブル(例えば、表3の各行)は、ピクチャ解像度に基づいて適応的に選択される。一例では、オフセットテーブルは、ピクチャ解像度に基づいて選択される。図3を参照すると、第1のオフセットテーブル(例えば、「距離オフセット1」)は、ピクチャ高さが1080以上であるときに選択される。第2のオフセットテーブル(例えば、「距離オフセット2」)は、ピクチャ高さが1080未満であり720以上であるときに選択される。第3のオフセットテーブル(例えば、「距離オフセット3」)は、ピクチャ高さが720未満であるときに選択される。
局所照明補償(LIC)は、一次関数を使用してカレントブロックとカレントブロックの予測子(予測子ブロックとも呼ばれる)との間の局所照明変動をモデリングするための、インター予測技術などの予測技術である。LICは、単予測モードに適用され得るが、単予測モードに限定されない。予測子は、カレントブロックの参照ブロックに基づいて決定され得る。参照ブロックは、参照ピクチャ内にある。単予測モードなどの一例では、カレントブロックのMVはカレントブロックから参照ブロックを指し示し、予測子は、カレントブロックの参照ブロックである。一例では、予測子(例えば、参照ブロック)内のサンプル(例えば、参照サンプル)の値pi[x,y]は、式3に示されるような、更新された予測子内のサンプルの更新値pf[x,y]を決定するための関数を使用して修正される。
pf[x,y]=α×pi[x,y]+β 式3
一次関数のパラメータは、照明変化を補償するためのスケーリング係数(スケールとも呼ばれる)αおよびオフセットβによって示されることが可能である。pi[x,y]は、参照ピクチャ上の位置[x,y]における参照サンプルであってもよく、参照サンプルは、カレントブロックのMVによって指し示されることが可能である。スケーリング係数αおよびオフセットβは、最小二乗法などの任意の適切な方法を使用して、カレントブロックのカレントテンプレート(カレントブロックテンプレートとも呼ばれる)および参照ブロックの参照テンプレート(参照ブロックテンプレートとも呼ばれる)に基づいて導出され得る。様々な実施形態では、スケーリング係数αおよびオフセットβはシグナリングされず、スケーリング係数αおよびオフセットβにシグナリングオーバヘッドは必要とされない。一例では、LICの使用を示すために、LICフラグがシグナリングされる。LICは、VVC内およびVVCを超えてなど、任意の適切な規格で使用され得る。
カレントブロックは、マージモード、スキップモードなどで、更新された予測子に基づいてコーディングされ得る。カレントブロックは、AMVPモードで、更新された予測子および残差データなどの追加情報に基づいてコーディングされ得る。
関連技術では、LICは、LICが有効化されているか否かを示すためにフラグ(例えば、LICフラグ)を使用するのみであり、LICが有効化されたときに照度補償の精度を向上させるためのパラメータ調整を有していない。
本開示の一態様によれば、LICのパラメータセット(例えば、スケーリング係数αおよびオフセットβを含む)の1つ以上のパラメータを調整することができる。1つ以上のパラメータは、単一のインデックスまたは複数のインデックスを使用して調整され得る。一例では、スケーリング係数αおよび/またはオフセットβは、1つ以上のインデックスを使用して調整される。
図17は、パラメータ調整を伴う例示的なLICを示す。カレントピクチャ内のカレントブロック(1701)は、カレントテンプレート(隣接再構成テンプレートとも呼ばれる)(1721)を有する。カレントテンプレート(1721)は、任意の適切な形状および任意の適切なサイズを有することができる。カレントテンプレート(1721)は、カレントブロック(1701)の(1つまたは複数の)隣接再構成ブロックのサンプル(例えば、再構成サンプル)を含むことができる。
図17に示される例では、カレントブロック(1701)のカレントテンプレート(1721)は、上テンプレート(1722)および左テンプレート(1723)を含む。上テンプレート(1722)および左テンプレート(1723)の各々は、任意の適切な形状および任意の適切なサイズを有することができる。上テンプレート(1722)は、カレントブロック(1701)の1つ以上の上隣接ブロック内にサンプルを含むことができる。一例では、上テンプレート(1722)は、カレントブロック(1701)の1つ以上の上隣接ブロック内に4行のサンプルを含む。左テンプレート(1723)は、カレントブロック(1701)の1つ以上の左隣接ブロック内にサンプルを含むことができる。一例では、左テンプレート(1723)は、カレントブロック(1701)の1つ以上の左隣接ブロック内に4列のサンプルを含む。
一例では、カレントブロック(1701)のカレントテンプレートは、上テンプレート(1722)のみまたは左テンプレート(1723)のみを含む。一例では、カレントブロック(1701)のカレントテンプレートは、上テンプレート(1722)、左テンプレート(1723)、および左上テンプレート(1731)を含む。
カレントブロック(1701)のMV(1702)は、参照ピクチャ内の参照ブロック(1703)を指し示すことができる。参照ブロック(1703)は、カレントテンプレート(1721)に対応する、参照テンプレート(1725)などの参照テンプレートを有することができる。
参照テンプレート(1725)は、カレントテンプレートの形状およびサイズとそれぞれ同一の形状および同一のサイズを有することができる。図17の例では、参照ブロック(1703)の参照テンプレート(1725)は、上テンプレート(1726)および左テンプレート(1727)を含む。上テンプレート(1722)に対応する上テンプレート(1726)は、参照ブロック(1703)の1つ以上の上隣接ブロック内にサンプルを含むことができる。左テンプレート(1723)に対応する左テンプレート(1727)は、参照ブロック(1703)の1つ以上の左隣接ブロック内にサンプルを含むことができる。
カレントブロック(1701)の予測子は、参照ブロック(1703)に基づいて決定され得る。単予測モードなどの一例では、予測子は参照ブロック(1703)であり、例えば、予測子のサンプル値は、参照ブロック(1703)のそれぞれのサンプル値に等しい。
カレントブロック(1701)の予測子のサンプル値は、局所照明変動を補償するためにLICを使用して修正され得る。本開示の一実施形態によれば、予測子内のサンプル(例えば、参照サンプル)の更新値pf[x,y]は、式4に示されるような予測子内のサンプルの値pi[x,y]の一次関数に基づくことができる。
pf[x,y]=(α+μ1)×pi[x,y]+(β+μ2×Tavg) 式4
式4は、以下の式5として記述され得る。
pf[x,y]=αf×pi[x,y]+βf 式5
式5において、最終スケーリング係数αfは、スケーリング係数αと第1のパラメータμ1との和に等しく、最終オフセットβfは、オフセットβおよび第2のパラメータμ2に基づく。一例では、最終オフセットβfは(β+μ2×Tavg)に等しい。式5は、更新された予測子が、最終スケーリング係数αf、最終オフセットβf、および予測子(例えば、参照ブロック(1703))に基づいて決定され得ることを示している。
パラメータ調整は、式4の第1のパラメータμ1および第2のパラメータμ2がゼロに等しいときにはLICに適用されない。
上述のように、スケーリング係数αおよびオフセットβは、最小二乗法などの任意の適切な方法を使用して、カレントブロック(1701)のカレントテンプレート(例えば、カレントテンプレート(1721))および参照ブロック(1703)の参照テンプレート(例えば、参照テンプレート(1725))に基づいて決定され得る。
パラメータTavgは、カレントブロック(1701)の参照テンプレート(例えば、参照テンプレート(1725))および/またはカレントテンプレート(例えば、カレントテンプレート(1721))から決定され得る。一例では、パラメータTavgは、参照テンプレート(例えば、参照テンプレート(1725))の平均値である。例えば、パラメータTavgは、参照テンプレート(例えば、参照テンプレート(1725))の全体またはサブセットのサンプル値の平均値である。一例では、パラメータTavgは、カレントテンプレート(例えば、カレントテンプレート(1721))の平均値である。例えば、パラメータTavgは、カレントテンプレートの全体またはサブセットのサンプル値の平均値である。
一例では、パラメータTavgを決定するために使用される参照テンプレートは、スケーリング係数αおよびオフセットβを決定するために使用される参照テンプレートとは異なる。一例では、パラメータTavgを決定するために使用されるカレントテンプレートは、スケーリング係数αおよびオフセットβを決定するために使用されるカレントプレートとは異なる。
一例では、パラメータTavgは1であり、したがって最終オフセットβfは(β+μ2)に等しい。したがって、更新値pf[x,y]は、(α+μ1)×pi[x,y]+(β+μ2)に等しい。
第1のパラメータμ1および/または第2のパラメータμ2は、カレントブロック(1701)を含む1つ以上のブロックのLIC情報によってシグナリングされること、例えば示されることが可能である。一実施形態では、1つ以上のブロックのLIC情報は、ビデオビットストリームでシグナリングされる。
第1のパラメータμ1および/または第2のパラメータμ2は、-5から+5などの限られた値の範囲内でシグナリングされ得る。一例では、第1のパラメータμ1は、正の値の限られた範囲または負の値の限られた範囲内でシグナリングされる。一例では、第2のパラメータμ2は、正の値の限られた範囲または負の値の限られた範囲内でシグナリングされる。
一実施形態では、1つ以上のブロックのLIC情報は、第1のパラメータμ1および第2のパラメータμ2の一方を示し、第1のパラメータμ1および第2のパラメータμ2の他方は、第1のパラメータμ1および第2のパラメータμ2の一方に基づいて決定され得る。
一例では、μ2=-μ1である。1つ以上のブロックのLIC情報は第1のパラメータμ1を示し、第2のパラメータμ2は第1のパラメータμ1から-μ1として決定される。一例では、1つ以上のブロックのLIC情報は第2のパラメータμ2を示し、第1のパラメータμ1は、第2のパラメータμ2から-μ2として決定される。
第1のパラメータμ1と第2のパラメータμ2との間の関係(例えば、μ2=-μ1)が、例えばデコーダに知られているとき、第1のパラメータμ1および第2のパラメータμ2の一方のみを示す情報(例えば、LIC情報)がビットストリームでシグナリングされる。例えば、第1のパラメータμ1のみを示すLIC情報であるμ2=-μ1がビットストリームでシグナリングされる。一例では、第1のパラメータμ1のみがビットストリームでシグナリングされる。
一実施形態では、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方はゼロに等しく、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方はシグナリングされない。一実施形態では、1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方を示さない。例えば、第1のパラメータμ1はゼロに等しく、1つ以上のブロックのLIC情報は第1のパラメータμ1を示さない。一例では、第1のパラメータμ1はゼロに等しく、ビットストリームでシグナリングされない。一例では、第2のパラメータμ2はゼロに等しく、ビットストリームでシグナリングされない。
1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および/または第2のパラメータμ2または(ii)第1のパラメータμ1および/または第2のパラメータμ2を示す1つ以上のインデックスを含むことができる。
第1のパラメータμ1は、浮動小数点値であり得、第1の複数ビットで量子化され得る。1つ以上のブロックのLIC情報は、第1の複数ビットを含むことができる。第2のパラメータμ2は、浮動小数点値であり得、第2の複数ビットで量子化され得る。1つ以上のブロックのLIC情報は、第2の複数ビットを含むことができる。
1つ以上のブロックのLIC情報は、第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つを示す少なくとも1つのインデックスを含むことができる。第1のパラメータμ1および/または第2のパラメータμ2は、(1つまたは複数の)ルックアップテーブルを指し示す1つ以上のインデックスによってシグナリングされ得る。
一例では、ルックアップテーブルは、インデックスと対応するパラメータペア(例えば、第1のパラメータμ1および第2のパラメータμ2)との間の関係を示し、LIC情報は、第1のパラメータμ1および第2のパラメータμ2を示す単一のインデックスを含む。
一例では、第1のルックアップテーブルは、第1のインデックスと第1のパラメータμ1との間の第1の関係を示し、第2のルックアップテーブルは、第2のインデックスと第2のパラメータμ2との間の第2の関係を示し、したがって、LIC情報は、第1のパラメータμ1を示す第1のインデックスと、第2のパラメータμ2を示す第2のインデックスとを含む。第1のパラメータμ1または第2のパラメータμ2がゼロであるとき、ゼロではない第1のパラメータμ1または第2のパラメータμ2を示すために単一のインデックスが使用される。第1のパラメータμ1と第2のパラメータμ2との間の関係(例えば、μ2=-μ1)が知られているとき、第1のパラメータμ1または第2のパラメータμ2を示すために単一のインデックスが使用され得る。
1つ以上のブロックのLIC情報は、コーディングユニット(CU)レベルまたはCUレベルよりも高い高レベル(例えば、CTUレベル、スライスレベルなど)などの任意の適切なレベルでシグナリングされ得る。
一例では、1つ以上のブロックのLIC情報はCUレベルでシグナリングされ、1つ以上のブロックは同じCU内にあり、第1のパラメータμ1および第2のパラメータμ2はCUに適用可能である。異なるCUは、異なる第1のパラメータおよび/または異なる第2のパラメータを有することができる。例えば、第1のCUの第1のパラメータμ1および第2のパラメータμ2は、それぞれ第2のCUの第1のパラメータμ1および第2のパラメータμ2とは異なっている。
一例では、1つ以上のブロックのLIC情報は、スライスレベルなどの高レベルでシグナリングされる。1つ以上のブロックは、スライスにおける複数のCU内のブロックを含む。第1のパラメータμ1および第2のパラメータμ2は、スライス内の複数のCUに適用可能である。スライス内の複数のCUは、同じ第1のパラメータμ1を有することができる。スライス内の複数のCUは、同じ第2のパラメータμ2を有することができる。
一例では、第1のパラメータμ1および/または第2のパラメータμ2を示す1つ以上のインデックスは、CUレベル、CTUレベル、スライスレベルなどの異なるレベルでシグナリングされる。
上記の実施形態は、LICがCU内のサブブロックレベルで動作されるとき、例えば、LICがカレントブロック内のサブブロックレベルで実行されるときに、適切に適合され得る。カレントブロックは、複数のサブブロックを含むことができる。各サブブロックは、カレントブロック内の1つ以上のサンプルを含むことができる。例えば、複数のサブブロックの各々は、それぞれのサブブロックのMVに関連付けられる。それぞれの複数のサブブロックに関連付けられたMVは異なっていてもよい。MVの各々は、参照ピクチャ内のそれぞれの参照サブブロックを指し示すことができる。複数のサブブロックは、それぞれのMVに関連付けられた複数の参照サブブロックに基づいてそれぞれ予測され得る。一例では、複数のサブブロックは、アフィンマージモード、アフィンAMVPモード、アフィンMMVDモードなどを使用して予測される。
複数のサブブロックは、第1のサブブロックおよび第2のサブブロックを含むことができる。第1のパラメータμ1および/または第2のパラメータμ2を示す1つ以上のブロックのLIC情報は、カレントブロックの複数のサブブロックのうちの1つ以上に適用することができる。第1のパラメータμ1および第2のパラメータμ2は、複数のサブブロックに適用することができる。例えば、第1のサブブロックおよび第2のサブブロックは同じ第1のパラメータμ1を有し、第1のサブブロックおよび第2のサブブロックは同じ第2のパラメータμ2を有する。
一実施形態では、各サブブロックは、LICで使用されるそれぞれの導出パラメータセットを有する。
カレントブロック内の第1のサブブロックでは、式4は式6に適合され得る。第1の予測子サブブロック(例えば、第1の参照サブブロック)内の第1のサンプルの更新値pf1[x1,y1]は、第1のサンプルの値の一次関数pi1[x1,y1]であり得る。
pf1[x1,y1]=(αi1+μ1)×pi1[x1,y1]+(βi1+μ2×Tavg,1) 式6
第1のサブブロックの第1のMVは、第1の参照サブブロックを指し示す。第1の初期スケーリング係数αi1および第1の初期オフセットβi1は、第1のサブブロックに対する局所照明変化を補償するために、第1のサブブロックに関連付けられる。パラメータTavg,1は、第1のサブブロックに対する局所照明変化を補償するために、第1のサブブロックに関連付けられることが可能である。第1の初期スケーリング係数αi1および第1の初期オフセットβi1は、カレントテンプレートの第1の部分および参照テンプレートの第1の部分に基づいて決定され得る。例えば、カレントテンプレートの第1の部分は、第1のサブブロックの再構成された空間的に隣接する(1つまたは複数の)ブロックのサンプルを含む。参照テンプレートの第1の部分は、第1の参照サブブロックの再構成された空間的に隣接する(1つまたは複数の)ブロックのサンプルを含む。パラメータTavg,1は、カレントテンプレートの第1の部分および/または参照テンプレートの第1の部分に基づいて決定され得る。
カレントブロック内の第2のサブブロックでは、式4は式7に適合され得る。予測子における第2の予測子サブブロック(例えば、第2の参照サブブロック)内の第2のサンプルの更新値pf2[x2,y2]は、第2のサンプルの値の一次関数pi2[x2,y2]であり得る。
pf2[x2,y2]=(αi2+μ1)×pi2[x2,y2]+(βi2+μ2×Tavg,2) 式7
第2のサブブロックの第2のMVは、第2の参照サブブロックを指し示す。第2の初期スケーリング係数αi2および第2の初期オフセットβi2は、第2のサブブロックに対する局所照明変化を補償するために、第2のサブブロックに関連付けられる。パラメータTavg,2は、第2のサブブロックに対する局所照明変化を補償するために、第2のサブブロックに関連付けられることが可能である。第2の初期スケーリング係数αi2および第2の初期オフセットβi2は、カレントテンプレートの第2の部分および参照テンプレートの第2の部分に基づいて決定され得る。例えば、カレントテンプレートの第2の部分は、第2のサブブロックの再構成された空間的に隣接する(1つまたは複数の)ブロックのサンプルを含む。参照テンプレートの第2の部分は、第2の参照サブブロックの再構成された空間的に隣接する(1つまたは複数の)ブロックのサンプルを含む。パラメータTavg,2は、カレントテンプレートの第2の部分および/または参照テンプレートの第2の部分に基づいて決定され得る。
一実施形態では、複数のサブブロックは、同じ導出パラメータセット(例えば、第1の初期スケーリング係数αi1、第1の初期オフセットβi1、および/またはパラメータTavg,1を含む)を共有する。例えば、第1の初期スケーリング係数αi1は第2の初期スケーリング係数αi2に等しく、第1の初期オフセットβi1は第2の初期オフセットβi2に等しい。一例では、パラメータTavg,1はパラメータTavg,2に等しい。複数のサブブロックの共有パラメータセットは、カレントテンプレートおよび参照テンプレートに基づいて決定され得る。一例では、参照テンプレートは、カレントブロックの外側にある他の(1つまたは複数の)ブロックの近傍であるカレントブロックの境界サブブロックに基づいて決定され得る。例えば、境界サブブロックに関連付けられたMVは、参照ブロック内の複数のサブブロックを指し示すことができ、参照テンプレートは、参照ブロック内の複数のサブブロックの再構成された空間的に隣接する(1つまたは複数の)ブロックのサンプルを含む。一例では、参照テンプレートは、第1のMVに基づいて決定され得る参照テンプレートの第1の部分と、第2のMVに基づいて決定され得る参照テンプレートの第2の部分とを含む。
図18は、本開示の一実施形態による符号化プロセス(1800)を概説するフローチャートを示す。様々な実施形態では、プロセス(1800)は、端末デバイス(310)、(320)、(330)、および(340)内の処理回路、ビデオエンコーダ(例えば、(403)、(603)、(703))の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、プロセス(1800)はソフトウェア命令で実装され、したがって、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(1800)を実行する。プロセスは(S1801)から始まり、(S1810)に進む。
(S1810)において、カレントブロック内の第1のサブブロックの初期スケーリング係数αi1、第1のサブブロックの初期オフセットβi1、ならびに1つ以上のブロックの第1のパラメータμ1および第2のパラメータμ2のうちの少なくとも1つが決定され得る。1つ以上のブロックは、LICで符号化されるカレントブロックを含むことができる。第1のサブブロックの第1のMVは、参照ピクチャ内の参照ブロックの第1の参照ブロックを指し示す。参照ブロックは、カレントブロックに対応する。
カレントブロック内の第1のサブブロックの初期スケーリング係数αi1およびカレントブロック内の第1のサブブロックの初期オフセットβi1は、カレントブロックのカレントテンプレートの第1の部分および参照ブロックの参照テンプレートの第1の部分に基づいて決定され得る。
一例では、カレントブロック内の第1のサブブロックの初期スケーリング係数αi1およびカレントブロック内の第1のサブブロックの初期オフセットβi1は、カレントブロックのカレントテンプレートおよび参照ブロックの参照テンプレートに基づいて決定され得る。
1つ以上のブロックの第1のパラメータμ1および/または1つ以上のブロックの第2のパラメータμ2は、1つ以上のブロックに基づいて決定され得る。
一例では、CUよりも高い高レベル(例えば、CTUまたはスライス)は、LICでコーディングされた(1つまたは複数の)第1のブロックおよびLICでコーディングされていない(1つまたは複数の)第2のブロックを含む。(1つまたは複数の)第1のブロックは、例えば、(1つまたは複数の)第1のブロックのうちの1つ以上に基づいて決定された、同一の第1のパラメータμ1および同一の第2のパラメータμ2を有することができる。あるいは、(1つまたは複数の)第1のブロックは、異なる第1のパラメータμ1および異なる第2のパラメータμ2を有することができる。
(S1820)において、一例では、第1のサブブロックの最終スケーリング係数αf1が、第1のパラメータμ1および初期スケーリング係数αi1に基づいて決定される。例えば、カレントブロック内の第1のサブブロックの最終スケーリング係数αf1は、1つ以上のブロックの第1のパラメータμ1とカレントブロック内の第1のサブブロックの初期スケーリング係数αi1との和となるように決定される。
一例では、第1のサブブロックの最終オフセットβf1は、第2のパラメータμ2および初期オフセットβi1に基づいて決定される。例えば、カレントブロック内の第1のサブブロックのパラメータTavg,1は、カレントテンプレートの第1の部分または参照テンプレートの第1の部分のうちの少なくとも1つに基づいて決定される。カレントブロック内の第1のサブブロックの最終オフセットβf1は、(βi1+μ2×Tavg,1)となるように決定される。
一例では、パラメータTavg,1は、カレントブロックのカレントテンプレートおよび参照ブロックの参照テンプレートに基づいて決定され得る。
(S1830)において、カレントブロックに対応する予測子(例えば、参照ブロック)内の更新された第1の予測子サブブロック(例えば、更新された第1の参照サブブロック)が、最終スケーリング係数αf1、最終オフセットβf1、および予測子内の第1の予測子サブブロック(例えば、第1の参照サブブロック)に基づいて決定され得る。
(S1840)において、カレントブロック内の第1のサブブロックが、更新された第1の予測子サブブロックに基づいてコーディングされ得る。第1のパラメータμ1および/または第2のパラメータμ2を示す1つ以上のブロックのLIC情報が符号化され得る。
1つ以上のブロックの符号化されたLIC情報は、ビデオビットストリームでシグナリングされ得る。1つ以上のブロックのLIC情報は、コーディングユニット(CU)レベルまたはCUレベルよりも高いレベルでシグナリングされ得る。
一例では、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方はゼロに等しく、1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方を示さない。
一例では、1つ以上のブロックのLIC情報は、第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つを示す少なくとも1つのインデックスを含む。
一例では、第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つは、浮動小数点値であり、複数ビットで量子化され、1つ以上のブロックのLIC情報は複数ビットを含む。
プロセス(1800)はその後、(S1899)に進み、終了する。
プロセス(1800)は、様々なシナリオに適切に適合することができ、プロセス(1800)内のステップは、それに応じて調整することができる。プロセス(1800)内のステップのうちの1つ以上は、適合、省略、反復、および/または組み合わせられることが可能である。プロセス(1800)を実施するために、任意の適切な順序を使用することができる。(1つまたは複数の)追加のステップが追加され得る。
一例では、1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方を示し、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の他方は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方に基づいて決定される。
一例では、カレントブロック内の第1のサブブロックはカレントブロックであり、予測子内の第1の予測子サブブロックは予測子(例えば、参照ブロック)であり、カレントテンプレートの第1の部分はカレントテンプレートであり、参照テンプレートの第1の部分は参照テンプレートである。一例では、更新された予測子は、式4または式5を使用して決定される。
一実施形態では、カレントブロックは、第1のサブブロックおよび第2のサブブロックを含み、1つ以上のブロックのLIC情報に示される第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つは、第1のサブブロックおよび第2のサブブロックに適用される。第2のサブブロックは、第1のサブブロックの初期スケーリング係数αi1と同一または異なり得る別の初期スケーリング係数αi2および第1のサブブロックの初期オフセットβi1と同一または異なり得る別の初期オフセットβi2に関連付けられる。第2のサブブロックに対応する予測子内の更新された第2の予測子サブブロック(例えば、更新された第2の参照サブブロック)は、式7を使用して決定され得る。第2のサブブロックは、更新された第2の予測子サブブロックに基づいて符号化され得る。
図19は、本開示の一実施形態による復号プロセス(1900)を概説するフローチャートを示す。様々な実施形態において、プロセス(1900)は、端末デバイス(310)、(320)、(330)、および(340)内の処理回路、ビデオエンコーダ(403)の機能を実行する処理回路、ビデオデコーダ(410)の機能を実行する処理回路、ビデオデコーダ(510)の機能を実行する処理回路、ビデオエンコーダ(603)の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、プロセス(1900)はソフトウェア命令で実装され、したがって、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(1900)を実行する。プロセスは(S1901)から開始し、(S1910)に進む。
(S1910)において、1つ以上のブロックの予測情報が、コーディングされたビデオビットストリームから復号され得る。予測情報は、局所照明補償(LIC)が1つ以上のブロックに適用されることを示し、再構成されるカレントブロックを含む1つ以上のブロックのLIC情報を含むことができる。
一例では、1つ以上のブロックのLIC情報は、コーディングユニット(CU)レベルでシグナリングされる。
一例では、1つ以上のブロックのLIC情報は、CUレベルよりも高いレベルでシグナリングされる。
(S1920)において、カレントブロック内の第1のサブブロックの最終スケーリング係数αf1およびカレントブロック内の第1のサブブロックの最終オフセットβf1が、LIC情報に基づいて決定され得る。
一実施形態では、カレントブロック内の第1のサブブロックの初期スケーリング係数αi1およびカレントブロック内の第1のサブブロックの初期オフセットβi1が、カレントブロックのカレントテンプレートの第1の部分および参照ブロックの参照テンプレートの第1の部分に基づいて決定される。
一例では、カレントブロック内の第1のサブブロックの初期スケーリング係数αi1およびカレントブロック内の第1のサブブロックの初期オフセットβi1は、カレントブロックのカレントテンプレートおよび参照ブロックの参照テンプレートに基づいて決定され得る。
1つ以上のブロックのLIC情報は、コーディングされたビデオビットストリームでシグナリングされることが可能であり、1つ以上のブロックの第1のパラメータμ1および1つ以上のブロックの第2のパラメータμ2のうちの少なくとも1つを示すことができる。カレントブロック内の第1のサブブロックの最終スケーリング係数αf1は、1つ以上のブロックの第1のパラメータμ1およびカレントブロック内の第1のサブブロックの初期スケーリング係数αi1に基づいて決定され得る。カレントブロック内の第1のサブブロックの最終オフセットβf1は、1つ以上のブロックの第2のパラメータμ2およびカレントブロック内の第1のサブブロックの初期オフセットβi1に基づいて決定され得る。
一例では、カレントブロック内の第1のサブブロックの最終スケーリング係数αf1は、1つ以上のブロックの第1のパラメータμ1とカレントブロック内の第1のサブブロックの初期スケーリング係数αi1との和となるように決定される。
一例では、カレントブロック内の第1のサブブロックのパラメータTavg,1は、カレントテンプレートの第1の部分または参照テンプレートの第1の部分のうちの少なくとも1つに基づいて決定され、カレントブロック内の第1のサブブロックの最終オフセットβf1は、(βi1+μ2×Tavg,1)となるように決定される。
一例では、パラメータTavg,1は、カレントブロックのカレントテンプレートおよび参照ブロックの参照テンプレートに基づいて決定され得る。
一例では、1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方を示し、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の他方は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方に基づいて決定される。
一例では、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方はゼロに等しく、1つ以上のブロックのLIC情報は、(i)第1のパラメータμ1および(ii)第2のパラメータμ2の一方を示さない。
一例では、1つ以上のブロックのLIC情報は、第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つを示す少なくとも1つのインデックスを含む。
一例では、第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つは、浮動小数点値であり、複数ビットで量子化され、1つ以上のブロックのLIC情報は複数ビットを含む。
(S1930)において、カレントブロックに対応する予測子内の更新された第1の予測子サブブロックは、予測子内の最終スケーリング係数αf1、最終オフセットβf1、および第1の予測子サブブロックに基づいて決定され得る。上述のように、予測子は、参照ブロックに基づいて決定され得る。一例では、予測子は参照ブロックであり、例えば、予測子のサンプル値は、参照ブロックのそれぞれのサンプル値に等しい。予測子における第1の予測子サブブロック内の第1のサンプルの更新値は、αf1×pi1+βf1に等しくてもよい。pi1は、予測子における第1の予測子サブブロック内の第1のサンプルの値であり得る。
(S1940)において、カレントブロック内の第1のサブブロックは、予測子内の更新された第1の予測子サブブロックに基づいて再構成され得る。
一例では、カレントブロック内の第1のサブブロックのサンプル値は、予測子における更新された第1の予測子サブブロック内の対応するサンプル値に等しい。
一例では、カレントブロック内の第1のサブブロックは、予測子内の更新された第1の予測子サブブロックおよび追加情報(例えば、残差データ)に基づいて再構成される。
プロセス(1900)は、様々なシナリオに適切に適合することができ、プロセス(1900)内のステップは、それに応じて調整することができる。プロセス(1900)内のステップのうちの1つ以上は、適合、省略、反復、および/または組み合わせられることが可能である。プロセス(1900)を実施するために、任意の適切な順序を使用することができる。(1つまたは複数の)追加のステップが追加され得る。
一実施形態では、カレントブロック内の第1のサブブロックはカレントブロックであり、予測子内の第1の予測子サブブロックは予測子(例えば、カレントブロックの参照ブロック)であり、カレントテンプレートの第1の部分はカレントテンプレートであり、参照テンプレートの第1の部分は参照ブロックの参照テンプレートである。一例では、更新された予測子は、式4または式5を使用して決定される。
一実施形態では、カレントブロックは、第1のサブブロックおよび第2のサブブロックを含み、1つ以上のブロックのLIC情報に示される第1のパラメータμ1または第2のパラメータμ2のうちの少なくとも1つは、第1のサブブロックおよび第2のサブブロックに適用される。第2のサブブロックは、第1のサブブロックの初期スケーリング係数αi1と同一または異なり得る別の初期スケーリング係数αi2および第1のサブブロックの初期オフセットβi1と同一または異なり得る別の初期オフセットβi2に関連付けられる。第2のサブブロックに対応する予測子内の更新された第2の予測子サブブロックは、式7を使用して決定され得る。第2のサブブロックは、更新された第2の予測子サブブロックに基づいて符号化され得る。
本開示の実施形態は、別々に使用されてもよく、任意の順序で組み合わされてもよい。さらに、方法(または実施形態)の各々、エンコーダ、およびデコーダは、処理回路(例えば、1つ以上のプロセッサまたは1つ以上の集積回路)によって実装されてもよい。一例では、1つ以上のプロセッサは、非一時的なコンピュータ可読媒体に記憶されたプログラムを実行する。
上述した技術は、1つ以上のコンピュータ可読媒体に物理的に記憶された、コンピュータ可読命令を使用するコンピュータソフトウェアとして実装されることができる。例えば、図20は、開示の主題の特定の実施形態を実装するのに適したコンピュータシステム(2000)を示している。
コンピュータソフトウェアは、1つ以上のコンピュータ中央処理装置(CPU)およびグラフィックスプロセッシングユニット(GPU)などによって直接的に、または解釈、マイクロコードの実行などを介して実行することができる命令を含むコードを作成するために、アセンブリ、コンパイル、リンク、または同様のメカニズムを受け得る、任意の適切な機械コードまたはコンピュータ言語を使用してコーディングすることができる。
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲーム機、モノのインターネットデバイスなどを含む様々なタイプのコンピュータまたはコンピュータの構成要素上で実行されることが可能である。
コンピュータシステム(2000)について図20に示す構成要素は、本質的に例示的なものであり、本開示の実施形態を実装するコンピュータソフトウェアの使用または機能の範囲に関する限定を示唆することを意図するものではない。構成要素の構成は、コンピュータシステム(2000)の例示的な実施形態に示されている構成要素のいずれか1つまたは組合せに関する依存関係または要件を有すると解釈されるべきではない。
コンピュータシステム(2000)は、特定のヒューマンインターフェース入力デバイスを含み得る。そのようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き)、オーディオ入力(例えば、声、拍手)、視覚入力(例えば、ジェスチャ)、嗅覚入力(図示せず)を介した、1人以上の人間のユーザによる入力に応答し得る。ヒューマンインターフェースデバイスは、オーディオ(発話、音楽、環境音など)、画像(走査画像、写真画像は静止画像カメラから取得など)、ビデオ(二次元ビデオ、立体ビデオを含む三次元ビデオなど)といった、必ずしも人間による意識的な入力に直接関連しない特定の媒体をキャプチャするために使用することもできる。
入力ヒューマンインターフェースデバイスは、キーボード(2001)、マウス(2002)、トラックパッド(2003)、タッチスクリーン(2010)、データグローブ(図示せず)、ジョイスティック(2005)、マイクロフォン(2006)、スキャナ(2007)、カメラ(2008)のうちの1つ以上(図示された各々のうちの1つのみ)を含み得る。
コンピュータシステム(2000)はまた、特定のヒューマンインターフェース出力デバイスを含み得る。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および匂い/味によって1人以上の人間ユーザの感覚を刺激し得る。そのようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン(2010)、データグローブ(図示せず)、またはジョイスティック(2005)による触覚フィードバック、ただし、入力デバイスとして機能しない触覚フィードバックデバイスもあり得る)、オーディオ出力デバイス(例えば、スピーカ(2009)、ヘッドホン(図示せず))、視覚出力デバイス(例えば、各々タッチスクリーン入力機能ありまたはなしの、各々触覚フィードバック機能ありまたはなしの、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン(2010)など、それらの一部は、二次元視覚出力、または立体画像出力、仮想現実眼鏡(図示せず)、ホログラフィックディスプレイおよびスモークタンク(図示せず)などの手段による四次元以上の出力が可能であり得る)、ならびにプリンタ(図示せず)を含み得る。
コンピュータシステム(2000)はまた、人間がアクセス可能な記憶デバイスおよびそれらの関連媒体、例えば、CD/DVDなどの媒体(2021)を有するCD/DVD ROM/RW(2020)を含む光学媒体、サムドライブ(2022)、リムーバブルハードドライブまたはソリッドステートドライブ(2023)、テープやフロッピーディスクなどのレガシー磁気媒体(図示せず)、セキュリティドングルなどの専用ROM/ASIC/PLDベースのデバイス(図示せず)なども含むことができる。
当業者はまた、本開示の主題に関連して使用される「コンピュータ可読媒体」という用語が、送信媒体、搬送波、または他の一時的な信号を包含しないことを理解するべきである。
コンピュータシステム(2000)はまた、1つ以上の通信ネットワーク(2055)へのインターフェース(2054)を含むことができる。ネットワークは、例えば、無線、有線、光であり得る。ネットワークはさらに、ローカル、ワイドエリア、メトロポリタン、車両用および産業用、リアルタイム、遅延耐性などであり得る。ネットワークの例は、イーサネット、無線LANなどのローカルエリアネットワーク、GSM、3G、4G、5G、LTEなどを含むセルラーネットワーク、ケーブルテレビ、衛星テレビ、および地上波放送テレビを含むテレビ有線または無線広域デジタルネットワーク、CANBusを含む車両および産業用などを含む。特定のネットワークは、通常、(例えば、コンピュータシステム(2000)のUSBポートなどの)特定の汎用データポートまたは周辺バス(2049)に取り付けられた外部ネットワークインターフェースアダプタを必要とし、他のネットワークは、通常、以下で説明するようなシステムバスに取り付けることによってコンピュータシステム(2000)のコアに統合される(例えば、PCコンピュータシステムへのイーサネットインターフェース、またはスマートフォンコンピュータシステムへのセルラーネットワークインターフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム(2000)は他のエンティティと通信することができる。このような通信は、単方向、受信のみ(例えば、テレビ放送)、単方向送信のみ(例えば、特定のCANbusデバイスへのCANbus)、または例えば、ローカルもしくはワイドエリアデジタルネットワークを使用した他のコンピュータシステムに対する双方向のものであり得る。特定のプロトコルおよびプロトコルスタックは、上述したように、それらのネットワークおよびネットワークインターフェースの各々で使用され得る。
前述のヒューマンインターフェース装置、人間がアクセス可能な記憶装置、およびネットワークインターフェースは、コンピュータシステム(2000)のコア(2040)に取り付けることができる。
コア(2040)は、1つ以上の中央処理装置(CPU)(2041)、グラフィックス処理装置(GPU)(2042)、フィールドプログラマブルゲートエリア(FPGA)(2043)の形の専用プログラマブル処理装置、特定のタスク用のハードウェアアクセラレータ(2044)、グラフィックスアダプタ(2050)などを含むことができる。これらのデバイスは、読み出し専用メモリ(ROM)(2045)、ランダムアクセスメモリ(2046)、内部非ユーザアクセス可能ハードドライブ、SSDなどの内部大容量ストレージ(2047)と共に、システムバス(2048)を介して接続され得る。いくつかのコンピュータシステムでは、システムバス(2048)は、1つ以上の物理プラグの形式でアクセス可能であり、追加のCPU、GPUなどによる拡張を可能にする。周辺デバイスは、コアのシステムバス(2048)に直接取り付けることも、または周辺バス(2049)を通して取り付けることもできる。一例では、スクリーン(2010)は、グラフィックスアダプタ(2050)に接続され得る。周辺バスのアーキテクチャは、PCI、USBなどを含む。
CPU(2041)、GPU(2042)、FPGA(2043)、およびアクセラレータ(2044)は、組み合わされて前述のコンピュータコードを構成することができる特定の命令を実行することができる。そのコンピュータコードは、ROM(2045)またはRAM(2046)に記憶され得る。移行データもRAM(2046)に記憶することができるが、永続データは、例えば、内部大容量ストレージ(2047)に記憶することができる。メモリデバイスのいずれかへの高速記憶および検索は、1つまたは複数のCPU(2041)、GPU(2042)、大容量ストレージ(2047)、ROM(2045)、RAM(2046)などと密接に関連付けることができるキャッシュメモリの使用によって可能にされ得る。
コンピュータ可読媒体は、様々なコンピュータ実装動作を実行するためのコンピュータコードを有することができる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであってもよく、またはコンピュータソフトウェア技術の当業者に周知の利用可能な種類のものであってもよい。
限定ではなく例として、アーキテクチャを有するコンピュータシステム(2000)、特にコア(2040)は、(CPU、GPU、FPGA、アクセラレータなどを含む)(1つまたは複数の)プロセッサが、1つ以上の有形のコンピュータ可読媒体において具現化されたソフトウェアを実行した結果として機能を提供することができる。そのようなコンピュータ可読媒体は、上述のようなユーザアクセス可能な大容量ストレージ、ならびにコア内部大容量ストレージ(2047)やROM(2045)などの非一時的な性質のものであるコア(2040)の特定のストレージと関連付けられた媒体であり得る。本開示の様々な実施形態を実装するソフトウェアは、そのようなデバイスに記憶され、コア(2040)によって実行され得る。コンピュータ可読媒体は、特定の必要性に応じて、1つまたは複数のメモリデバイスまたはチップを含むことができる。ソフトウェアは、コア(2040)、具体的にはその中の(CPU、GPU、FPGAなどを含む)プロセッサに、RAM(2046)に記憶されたデータ構造を定義すること、およびソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を変更することを含む、本明細書に記載される特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えて、または代替として、コンピュータシステムは、回路(例えば、アクセラレータ(2044))にハードワイヤードまたは他の方法で具現化された論理の結果としての機能を提供することができ、これは、本明細書で説明される特定のプロセスまたは特定のプロセスの特定の部分を実行するためにソフトウェアの代わりに、またはソフトウェアと共に動作し得る。ソフトウェアへの言及は、必要に応じて、ロジックを包含することができ、その逆も同様である。コンピュータ可読媒体への言及は、必要に応じて、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のための論理を具現化する回路、またはその両方を包含することができる。本開示は、ハードウェアとソフトウェアの任意の適切な組合せを包含する。
付記A:頭字語
JEM:joint exploration model(共同探索モデル)
VVC:versatile video coding(多用途ビデオコーディング)
BMS:benchmark set(ベンチマークセット)
MV:Motion Vector(動きベクトル)
HEVC:High Efficiency Video Coding(高効率ビデオコーディング)
SEI:Supplementary Enhancement Information(補足拡張情報)
VUI:Video Usability Information(ビデオユーザビリティ情報)
GOP:Groups of Pictures(ピクチャグループ)
TU:Transform Units(変換ユニット)
PU:Prediction Units(予測ユニット)
CTU:Coding Tree Units(コーディングツリーユニット)
CTB:Coding Tree Blocks(コーディングツリーブロック)
PB:Prediction Blocks(予測ブロック)
HRD:Hypothetical Reference Decoder(仮想参照デコーダ)
SNR:Signal Noise Ratio(信号雑音比)
CPU:Central Processing Units(中央処理装置)
GPU:Graphics Processing Units(グラフィックス処理装置)
CRT:Cathode Ray Tube(陰極線管)
LCD:Liquid-Crystal Display(液晶ディスプレイ)
OLED:Organic Light-Emitting Diode(有機発光ダイオード)
CD:Compact Disc(コンパクトディスク)
DVD:Digital Video Disc(デジタルビデオディスク)
ROM:Read-Only Memory(読み出し専用メモリ)
RAM:Random Access Memory(ランダムアクセスメモリ)
ASIC:Application-Specific Integrated Circuit(特定用途向け集積回路)
PLD:Programmable Logic Device(プログラマブル論理デバイス)
LAN:Local Area Network(ローカルエリアネットワーク)
GSM:Global System for Mobile communications(グローバル移動体通信システム)
LTE:Long-Term Evolution(ロングタームエボリューション)
CANBus:Controller Area Network Bus(コントローラエリアネットワークバス)
USB:Universal Serial Bus(ユニバーサルシリアルバス)
PCI:Peripheral Component Interconnect(周辺構成要素相互接続)
FPGA:Field Programmable Gate Areas(フィールドプログラマブルゲートエリア)
SSD:solid-state drive(ソリッドステートドライブ)
IC:Integrated Circuit(集積回路)
CU:Coding Unit(コーディングユニット)
R-D:Rate-Distortion(レート歪み)
本開示はいくつかの例示的な実施形態を記載しているが、変更、置換、および様々な代替の均等物が存在し、それらは本開示の範囲内にある。したがって、当業者は、本明細書に明示的に示されていないかまたは記載されていないが、本開示の原理を具現化し、したがって本開示の趣旨および範囲内にある多数のシステムおよび方法を考案することができることが理解されよう。
101 サンプル
102,103 矢印
104 正方形ブロック
201 カレントブロック
202,203,204,205,206 サンプル
300 通信システム
310,320,330,340 端末デバイス
350 通信ネットワーク
400 通信システム
401 ビデオソース
402 ビデオピクチャのストリーム
403 ビデオエンコーダ
404 符号化ビデオデータ
405 ストリーミングサーバ
406 クライアントサブシステム
407 符号化ビデオデータの入力コピー
408 クライアントサブシステム
409 符号化ビデオデータのコピー
410 ビデオデコーダ
411 ビデオピクチャの出力ストリーム
412 ディスプレイ
413 キャプチャサブシステム
420 電子デバイス
430 電子デバイス
501 チャネル
510 ビデオデコーダ
512 レンダリングデバイス
515 バッファメモリ
520 エントロピーデコーダ/パーサ
521 シンボル
530 電子デバイス
531 受信機
551 スケーラ/逆変換ユニット
552 イントラピクチャ予測ユニット
553 動き補償予測ユニット
555 アグリゲータ
556 ループフィルタユニット
557 参照ピクチャメモリ
558 カレントピクチャバッファ
601 ビデオソース
603 ビデオエンコーダ
620 電子デバイス
630 ソースコーダ
632 コーディングエンジン
633 ローカルビデオデコーダ
634 参照ピクチャメモリ
635 予測子
640 送信機
643 ビデオシーケンス
645 エントロピーコーダ
650 コントローラ
660 通信チャネル
703 ビデオエンコーダ
721 汎用コントローラ
722 イントラエンコーダ
723 残差計算器
724 残差エンコーダ
725 エントロピーエンコーダ
726 スイッチ
728 残差デコーダ
730 インターエンコーダ
810 ビデオデコーダ
871 エントロピーデコーダ
872 イントラデコーダ
873 残差デコーダ
874 再構成モジュール
880 インターデコーダ
901 カレントブロック
1101 カレントピクチャ
1102 カレント参照ピクチャ
1103 コロケートピクチャ
1104 コロケート参照ピクチャ
1111 カレントCU
1112 コロケートCU
1121 スケーリングされたMV
1401 動きベクトル
1402 ルマサブブロック
1410 カレントブロック
1510 カレントCU
1520 カレントCU
1701 カレントブロック
1703 参照ブロック
1721 カレントテンプレート
1722 上テンプレート
1723 左テンプレート
1725 参照テンプレート
1727 左テンプレート
1731 左上テンプレート
1800 符号化プロセス
1900 復号プロセス
2000 コンピュータシステム
2001 キーボード
2002 マウス
2003 トラックパッド
2005 ジョイスティック
2006 マイクロフォン
2007 スキャナ
2008 カメラ
2009 スピーカ
2010 タッチスクリーン
2020 CD/DVD ROM/RW
2021 CD/DVDなどの媒体
2022 サムドライブ
2023 リムーバブルハードドライブまたはソリッドステートドライブ
2040 コア
2041 中央処理装置(CPU)
2042 グラフィックス処理装置(GPU)
2043 フィールドプログラマブルゲートエリア(FPGA)
2044 ハードウェアアクセラレータ
2045 読み出し専用メモリ(ROM)
2046 ランダムアクセスメモリ、RAM
2047 内部大容量ストレージ
2048 システムバス
2049 周辺バス
2050 グラフィックスアダプタ
2054 インターフェース
2055 通信ネットワーク

Claims (20)

  1. ビデオデコーダにおけるビデオ復号のための方法であって、
    コーディングされたビデオビットストリームから1つ以上のブロックの予測情報を復号するステップであって、前記予測情報は、局所照明補償(LIC)が前記1つ以上のブロックに適用されることを示し、前記1つ以上のブロックのLIC情報を含み、前記1つ以上のブロックは、再構成されるカレントブロックを含む、ステップと、
    前記LIC情報に基づいて、前記カレントブロック内の第1のサブブロックの最終スケーリング係数αf1および前記カレントブロック内の前記第1のサブブロックの最終オフセットβf1を決定するステップと、
    前記最終スケーリング係数αf1、前記最終オフセットβf1、および予測子内の第1の予測子サブブロックに基づいて、前記カレントブロックに対応する前記予測子内の更新された第1の予測子サブブロックを決定するステップであって、前記予測子における前記第1の予測子サブブロック内の第1のサンプルの更新値はαf1×pi1+βf1に等しく、pi1は、前記予測子における前記第1の予測子サブブロック内の前記第1のサンプルの値である、ステップと、
    前記予測子内の前記更新された第1の予測子サブブロックに基づいて、前記カレントブロック内の前記第1のサブブロックを再構成するステップと
    を含む方法。
  2. 前記カレントブロック内の前記第1のサブブロックの初期スケーリング係数αi1および前記カレントブロック内の前記第1のサブブロックの初期オフセットβi1は、前記カレントブロックのカレントテンプレートの第1の部分および参照ブロックの参照テンプレートの第1の部分に基づいて決定され、前記予測子は前記参照ブロックに基づいており、
    前記1つ以上のブロックの前記LIC情報は、前記コーディングされたビデオビットストリームでシグナリングされ、前記1つ以上のブロックの第1のパラメータμ1および前記1つ以上のブロックの第2のパラメータμ2のうちの少なくとも1つを示し、
    前記方法は、
    前記1つ以上のブロックの前記第1のパラメータμ1および前記カレントブロック内の前記第1のサブブロックの前記初期スケーリング係数αi1に基づいて、前記カレントブロック内の前記第1のサブブロックの前記最終スケーリング係数αf1を決定するステップと、
    前記1つ以上のブロックの前記第2のパラメータμ2および前記カレントブロック内の前記第1のサブブロックの前記初期オフセットβi1に基づいて、前記カレントブロック内の前記第1のサブブロックの前記最終オフセットβf1を決定するステップと
    を含む、請求項1に記載の方法。
  3. 前記1つ以上のブロックの前記LIC情報は、(i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の一方を示し、
    (i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の他方は、(i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の前記一方に基づいて決定される、請求項2に記載の方法。
  4. (i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の一方はゼロに等しく、
    前記1つ以上のブロックの前記LIC情報は、(i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の前記一方を示さない、請求項2に記載の方法。
  5. 前記1つ以上のブロックの前記LIC情報は、前記第1のパラメータμ1または前記第2のパラメータμ2のうちの前記少なくとも1つを示す少なくとも1つのインデックスを含む、請求項2に記載の方法。
  6. 前記第1のパラメータμ1または前記第2のパラメータμ2のうちの前記少なくとも1つは、浮動小数点値であり、複数ビットで量子化され、
    前記1つ以上のブロックの前記LIC情報は前記複数ビットを含む、請求項2に記載の方法。
  7. 前記最終スケーリング係数を決定する前記ステップは、
    前記カレントブロック内の前記第1のサブブロックの前記最終スケーリング係数αf1を、前記1つ以上のブロックの前記第1のパラメータμ1と前記カレントブロック内の前記第1のサブブロックの前記初期スケーリング係数αi1との和となるように決定するステップ
    を含む、請求項2に記載の方法。
  8. 前記最終オフセットを決定する前記ステップは、
    前記カレントテンプレートの前記第1の部分または前記参照テンプレートの前記第1の部分のうちの少なくとも1つに基づいて、前記カレントブロック内の前記第1のサブブロックのパラメータTavg,1を決定するステップと、
    前記カレントブロック内の前記第1のサブブロックの前記最終オフセットβf1を、(βi1+μ2×Tavg,1)となるように決定するステップと
    を含む、請求項2に記載の方法。
  9. 前記1つ以上のブロックの前記LIC情報は、コーディングユニット(CU)レベルでシグナリングされる、請求項1に記載の方法。
  10. 前記1つ以上のブロックの前記LIC情報は、コーディングユニット(CU)レベルよりも高いレベルでシグナリングされる、請求項1に記載の方法。
  11. 前記第1のサブブロックは前記カレントブロックを含み、
    前記第1の予測子サブブロックは前記予測子を含み、
    前記カレントテンプレートの前記第1の部分は前記カレントテンプレートを含み、
    前記参照テンプレートの前記第1の部分は前記参照テンプレートを含む、請求項2に記載の方法。
  12. 前記カレントブロックは、前記第1のサブブロックおよび第2のサブブロックを含み、
    前記1つ以上のブロックの前記LIC情報で示される前記第1のパラメータμ1または前記第2のパラメータμ2のうちの前記少なくとも1つは、前記第1のサブブロックおよび前記第2のサブブロックに適用され、
    前記第2のサブブロックは、前記第1のサブブロックの前記初期スケーリング係数αi1とは異なる別の初期スケーリング係数αi2および前記第1のサブブロックの前記初期オフセットβi1とは異なる別の初期オフセットβi2に関連付けられる、請求項2に記載の方法。
  13. ビデオ復号のための装置であって、
    コーディングされたビデオビットストリームから1つ以上のブロックの予測情報を復号することであって、前記予測情報は、局所照明補償(LIC)が前記1つ以上のブロックに適用されることを示し、前記1つ以上のブロックのLIC情報を含み、前記1つ以上のブロックは、再構成されるカレントブロックを含む、ことと、
    前記LIC情報に基づいて、前記カレントブロック内の第1のサブブロックの最終スケーリング係数αf1および前記カレントブロック内の前記第1のサブブロックの最終オフセットβf1を決定することと、
    前記最終スケーリング係数αf1、前記最終オフセットβf1、および予測子内の第1の予測子サブブロックに基づいて、前記カレントブロックに対応する前記予測子内の更新された第1の予測子サブブロックを決定することであって、前記予測子における前記第1の予測子サブブロック内の第1のサンプルの更新値はαf1×pi1+βf1に等しく、pi1は、前記予測子における前記第1の予測子サブブロック内の前記第1のサンプルの値である、ことと、
    前記予測子内の前記更新された第1の予測子サブブロックに基づいて、前記カレントブロック内の前記第1のサブブロックを再構成することと
    を行うように構成された処理回路
    を備える装置。
  14. 前記カレントブロック内の前記第1のサブブロックの初期スケーリング係数αi1および前記カレントブロック内の前記第1のサブブロックの初期オフセットβi1は、前記カレントブロックのカレントテンプレートの第1の部分および参照ブロックの参照テンプレートの第1の部分に基づいて決定され、前記予測子は前記参照ブロックに基づいており、
    前記1つ以上のブロックの前記LIC情報は、前記コーディングされたビデオビットストリームでシグナリングされ、前記1つ以上のブロックの第1のパラメータμ1および前記1つ以上のブロックの第2のパラメータμ2のうちの少なくとも1つを示し、
    前記処理回路は、
    前記1つ以上のブロックの前記第1のパラメータμ1および前記カレントブロック内の前記第1のサブブロックの前記初期スケーリング係数αi1に基づいて、前記カレントブロック内の前記第1のサブブロックの前記最終スケーリング係数αf1を決定することと、
    前記1つ以上のブロックの前記第2のパラメータμ2および前記カレントブロック内の前記第1のサブブロックの前記初期オフセットβi1に基づいて、前記カレントブロック内の前記第1のサブブロックの前記最終オフセットβf1を決定することと
    を行うように構成されている、請求項13に記載の装置。
  15. 前記1つ以上のブロックの前記LIC情報は、(i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の一方を示し、
    (i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の他方は、(i)前記第1のパラメータμ1および(ii)前記第2のパラメータμ2の前記一方に基づいて決定される、請求項14に記載の装置。
  16. 前記処理回路は、
    前記カレントブロック内の前記第1のサブブロックの前記最終スケーリング係数αf1を、前記1つ以上のブロックの前記第1のパラメータμ1と前記カレントブロック内の前記第1のサブブロックの前記初期スケーリング係数αi1との和となるように決定すること
    を行うように構成されている、請求項14に記載の装置。
  17. 前記処理回路は、
    前記カレントテンプレートの前記第1の部分または前記参照テンプレートの前記第1の部分のうちの少なくとも1つに基づいて、前記カレントブロック内の前記第1のサブブロックのパラメータTavg,1を決定することと、
    前記カレントブロック内の前記第1のサブブロックの前記最終オフセットβf1を、(βi1+μ2×Tavg,1)となるように決定することと
    を行うように構成されている、請求項14に記載の装置。
  18. 前記第1のサブブロックは前記カレントブロックを含み、
    前記第1の予測子サブブロックは前記予測子を含み、
    前記カレントテンプレートの前記第1の部分は前記カレントテンプレートを含み、
    前記参照テンプレートの前記第1の部分は前記参照テンプレートを含む、請求項14に記載の装置。
  19. 前記カレントブロックは、前記第1のサブブロックおよび第2のサブブロックを含み、
    前記1つ以上のブロックの前記LIC情報で示される前記第1のパラメータμ1または前記第2のパラメータμ2のうちの前記少なくとも1つは、前記第1のサブブロックおよび前記第2のサブブロックに適用され、
    前記第2のサブブロックは、前記第1のサブブロックの前記初期スケーリング係数αi1とは異なる別の初期スケーリング係数αi2および前記第1のサブブロックの前記初期オフセットβi1とは異なる別の初期オフセットβi2に関連付けられる、請求項14に記載の装置。
  20. プログラムを記憶した非一時的なコンピュータ可読記憶媒体であって、前記プログラムは、
    コーディングされたビデオビットストリームから1つ以上のブロックの予測情報を復号することであって、前記予測情報は、局所照明補償(LIC)が前記1つ以上のブロックに適用されることを示し、前記1つ以上のブロックのLIC情報を含み、前記1つ以上のブロックは、再構成されるカレントブロックを含む、ことと、
    前記LIC情報に基づいて、前記カレントブロック内の第1のサブブロックの最終スケーリング係数αf1および前記カレントブロック内の前記第1のサブブロックの最終オフセットβf1を決定することと、
    前記最終スケーリング係数αf1、前記最終オフセットβf1、および予測子内の第1の予測子サブブロックに基づいて、前記カレントブロックに対応する前記予測子内の更新された第1の予測子サブブロックを決定することであって、前記予測子における前記第1の予測子サブブロック内の第1のサンプルの更新値はαf1×pi1+βf1に等しく、pi1は、前記予測子における前記第1の予測子サブブロック内の前記第1のサンプルの値である、ことと、
    前記予測子内の前記更新された第1の予測子サブブロックに基づいて、前記カレントブロック内の前記第1のサブブロックを再構成することと
    を実行するように少なくとも1つのプロセッサによって実行可能である、非一時的なコンピュータ可読記憶媒体。
JP2023567031A 2022-01-12 2022-09-08 調整ベースの局所照明補償 Pending JP2024516014A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202263298788P 2022-01-12 2022-01-12
US63/298,788 2022-01-12
US17/903,697 US20230224474A1 (en) 2022-01-12 2022-09-06 Adjustment based local illumination compensation
US17/903,697 2022-09-06
PCT/US2022/076122 WO2023136940A1 (en) 2022-01-12 2022-09-08 Adjustment based local illumination compensation

Publications (1)

Publication Number Publication Date
JP2024516014A true JP2024516014A (ja) 2024-04-11

Family

ID=87069232

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023567031A Pending JP2024516014A (ja) 2022-01-12 2022-09-08 調整ベースの局所照明補償

Country Status (7)

Country Link
US (1) US20230224474A1 (ja)
JP (1) JP2024516014A (ja)
KR (1) KR20230138511A (ja)
CN (1) CN116762335A (ja)
AU (1) AU2022432847A1 (ja)
CA (1) CA3216208A1 (ja)
WO (1) WO2023136940A1 (ja)

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170150176A1 (en) * 2015-11-25 2017-05-25 Qualcomm Incorporated Linear-model prediction with non-square prediction units in video coding
US9948930B2 (en) * 2016-05-17 2018-04-17 Arris Enterprises Llc Template matching for JVET intra prediction
US10284845B2 (en) * 2016-05-25 2019-05-07 Arris Enterprises Llc JVET quadtree plus binary tree (QTBT) structure with multiple asymmetrical partitioning
KR102147447B1 (ko) * 2016-09-22 2020-08-24 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측 방법 및 장치
US10631002B2 (en) * 2016-09-30 2020-04-21 Qualcomm Incorporated Frame rate up-conversion coding mode
WO2018125944A1 (en) * 2016-12-28 2018-07-05 Arris Enterprises Llc Improved video bitstream coding
KR102306562B1 (ko) * 2017-11-27 2021-09-30 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측에 따른 영상 디코딩 방법 및 장치
CN111630855B (zh) * 2018-01-16 2024-06-21 Vid拓展公司 基于局部照明补偿的运动补偿双向预测
CN111630856B (zh) * 2018-01-26 2024-05-07 交互数字Vc控股公司 基于响应于相邻样本的线性模型进行视频编码和解码的方法和设备
EP3547686A1 (en) * 2018-03-29 2019-10-02 InterDigital VC Holdings, Inc. Method and apparatus for decoder side prediction based on weighted distortion
EP3780608A4 (en) * 2018-04-02 2021-12-01 SZ DJI Technology Co., Ltd. IMAGE PROCESSING PROCESS AND IMAGE PROCESSING DEVICE
WO2019210829A1 (en) * 2018-04-30 2019-11-07 Mediatek Inc. Signaling for illumination compensation
CN113115046A (zh) * 2018-06-21 2021-07-13 北京字节跳动网络技术有限公司 分量相关的子块分割
EP4307679A3 (en) * 2018-07-02 2024-06-19 Beijing Bytedance Network Technology Co., Ltd. Luts with intra prediction modes and intra mode prediction from non-adjacent blocks
US11632546B2 (en) * 2018-07-18 2023-04-18 Electronics And Telecommunications Research Institute Method and device for effective video encoding/decoding via local lighting compensation
BR112021004858A2 (pt) * 2018-09-19 2021-06-01 Interdigital Vc Holdings, Inc. compensação de iluminação local para codificação e decodificação de vídeo usando parâmetros armazenados
US10999589B2 (en) * 2018-10-04 2021-05-04 Tencent America LLC Method and apparatus for video coding
WO2020084462A1 (en) * 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Restrictions on decoder side motion vector derivation based on block size
WO2020084461A1 (en) * 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Restrictions on decoder side motion vector derivation based on coding information
WO2020084502A1 (en) * 2018-10-23 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Video processing using local illumination compensation
CN115514958A (zh) * 2018-11-02 2022-12-23 抖音视界有限公司 用于基于历史的运动矢量预测的表维护
CN111418207B (zh) * 2018-11-06 2024-04-19 北京字节跳动网络技术有限公司 依赖块尺寸的对运动信息的存储
US10904548B2 (en) * 2018-12-06 2021-01-26 Qualcomm Incorporated Coefficient processing for video encoding and decoding
MX2021007225A (es) * 2018-12-17 2021-09-21 Interdigital Vc Holdings Inc Combinacion de herramientas de codificacion de diferencia de vector de movimiento con otros modos de movimiento.
US11388394B2 (en) * 2019-01-04 2022-07-12 Qualcomm Incorporated Local illumination compensation (LIC) for virtual pipeline data units (VPDUS)
WO2020151764A1 (en) * 2019-01-27 2020-07-30 Beijing Bytedance Network Technology Co., Ltd. Improved method for local illumination compensation
EP3709648A1 (en) * 2019-03-12 2020-09-16 InterDigital VC Holdings, Inc. Method and apparatus for video encoding and decoding with subblock based local illumination compensation
WO2020235511A1 (en) * 2019-05-17 2020-11-26 Panasonic Intellectual Property Corporation Of America System and method for video coding
US11197030B2 (en) * 2019-08-08 2021-12-07 Panasonic Intellectual Property Corporation Of America System and method for video coding
US11595689B2 (en) * 2020-03-20 2023-02-28 Tencent America LLC Local weighted prediction
US11315486B1 (en) * 2020-10-05 2022-04-26 Novatek Microelectronics Corp. Image processing circuit and image processing method with overdriving illumination element

Also Published As

Publication number Publication date
US20230224474A1 (en) 2023-07-13
AU2022432847A1 (en) 2023-10-12
CN116762335A (zh) 2023-09-15
WO2023136940A1 (en) 2023-07-20
KR20230138511A (ko) 2023-10-05
CA3216208A1 (en) 2023-07-20

Similar Documents

Publication Publication Date Title
JP7223116B2 (ja) 動画の符号化及び復号の方法、装置及びコンピュータプログラム
JP7534025B2 (ja) ビデオコーディングのための方法及び機器
JP7223018B2 (ja) ビデオ符号化/復号化の方法及び装置
JP7171925B2 (ja) ビデオデコードおよびエンコード方法、プログラム、および装置
JP7152512B2 (ja) 動画の符号化及び復号方法、装置、並びにコンピュータプログラム
JP7502190B2 (ja) ビデオ符号化のための方法並びにその装置及びコンピュータプログラム
JP7337166B2 (ja) アフィン履歴ベース動きベクトル予測子バッファにアクセスする方法及び装置並びにコンピュータプログラム
JP7419506B2 (ja) 映像コーディングのための方法及び装置
JP7236558B2 (ja) ビデオコーディングのための方法および装置
JP2023158110A (ja) ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法
JP2024137976A (ja) ビデオコーディングのための方法および装置
JP2024107165A (ja) Mmvdシグナリングの改善
JP7514325B2 (ja) ビデオコーディングのための方法、装置、非一時的コンピュータ可読記憶媒体およびコンピュータプログラム
JP7512430B2 (ja) ゼロ残差フラグコーディング
JP7493613B2 (ja) ビデオコーディングのための方法および装置
KR20240049367A (ko) 성분 의존적 인트라 및 인터 예측 시그널링
KR20240068714A (ko) 인트라 템플릿 매칭 예측의 모션 정보를 이용하는 인트라 블록 복사(ibc) 후보 리스트 구성
JP7471722B2 (ja) ビデオ符号化のための方法および装置
JP2024520986A (ja) 対称アフィンモード
KR20230104682A (ko) 템플릿-정합을 이용하는 것에 의한 대안적인 모션 벡터 차이를 갖는 병합 모드
KR20220122767A (ko) 비디오 코딩을 위한 방법 및 장치
JP7570753B2 (ja) ビデオコーディングのための方法、コンピュータプログラム及び装置
JP7476426B2 (ja) ビデオコーディングのための方法、装置、およびコンピュータプログラム
JP7342275B2 (ja) ビデオコーディングのための方法、装置およびコンピュータプログラム
JP7458503B2 (ja) イントラ文字列コピーの方法及び機器

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231031

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231031