JP2023158110A - ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法 - Google Patents

ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法 Download PDF

Info

Publication number
JP2023158110A
JP2023158110A JP2023144320A JP2023144320A JP2023158110A JP 2023158110 A JP2023158110 A JP 2023158110A JP 2023144320 A JP2023144320 A JP 2023144320A JP 2023144320 A JP2023144320 A JP 2023144320A JP 2023158110 A JP2023158110 A JP 2023158110A
Authority
JP
Japan
Prior art keywords
motion vector
predictions
vector prediction
threshold
video
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
JP2023144320A
Other languages
English (en)
Other versions
JP2023158110A5 (ja
Inventor
シャオジョン・シュ
Xiaozhong Xu
シアン・リ
Xiang Li
シャン・リュウ
Shan Liu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent America LLC
Original Assignee
Tencent America LLC
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 Tencent America LLC filed Critical Tencent America LLC
Publication of JP2023158110A publication Critical patent/JP2023158110A/ja
Publication of JP2023158110A5 publication Critical patent/JP2023158110A5/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/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
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/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
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】ビデオ符号化/復号のための方法および装置を提供する。【解決手段】本開示の態様は、ビデオ符号化/復号のための方法および装置を提供する。いくつかの例では、ビデオ復号のための装置は、処理回路を含む。処理回路は、対象ピクチャ内の対象ブロックについて予測情報を復号する。処理回路は、対象ブロックの面積がしきい値以下であるかどうかを決定する。処理回路は、動きベクトル予測の数を含む動きベクトル予測リストを構築する。動きベクトル予測の数は、対象ブロックの面積がしきい値以下であると決定されたかどうかに基づいている。処理回路は、動きベクトル予測リストに基づいて対象ブロックを再構築する。【選択図】図9

Description

参照による組み込み
本出願は、2018年12月10日出願の「小さい符号化ブロックのための簡単化されたマージリストの構築」なる名称の米国仮出願第62/777,735号に基づく優先権の利益を主張する2019年8月29日出願の「小さい符号化ブロックのための簡単化されたマージリストの構築」なる名称の米国特許出願第16/555,549号に基づく優先権の利益を主張する。先行する出願の開示全体は、参照によりその全体が本明細書に組み込まれる。
本開示は、映像符号化に一般的に関連する実施形態を記載する。
本明細書において与えられる背景技術の記載は、本開示の文脈を一般的に提示する目的のものである。現在名前が挙げられている発明者の研究は、その研究がこの背景技術の欄に記載されている範囲において、ならびに、さもなければ出願時における先行技術として適格でないであろう記載の態様は、本開示に対して明示的または黙示的に先行技術として自認されるものではない。
映像の符号化と復号は、動き補償のあるピクチャ間予測を用いて行うことができる。非圧縮デジタル映像は、一連のピクチャを含むことができ、各ピクチャは、たとえば1920×1080の輝度サンプルおよび関連付けられる色差サンプルの空間的な寸法を有する。一連のピクチャは、たとえば毎秒60ピクチャまたは60Hzの固定または可変ピクチャレート(非公式にはフレームレートとも呼ばれる)を持つことができる。非圧縮映像には、重要なビットレート要件がある。たとえば、サンプルあたり8ビットでは1080p60の4:2:0映像(60Hzフレームレートで1920×1080の輝度サンプル解像度)は、1.5ギガビット/秒に近い帯域幅を必要とする。1時間のこのような映像は、600ギガバイトを超えるストレージスペースを必要とする。
映像の符号化と復号の1つの目的は、圧縮によって入力ビデオ信号の冗長性を減らすことであり得る。圧縮は、前述の帯域幅またはストレージスペース要件を、場合によっては2桁以上減らすのに役立ち得る。可逆圧縮と非可逆圧縮の両方、およびそれらの組み合わせを使用できる。可逆圧縮とは、圧縮された元の信号から元の信号の正確な複製を再構築できる手法を指す。非可逆圧縮を使用する場合、再構築された信号は元の信号と同一ではない可能性があるが、元の信号と再構築された信号との間の歪みは、再構築された信号を意図したアプリケーションに有用なものとするのに十分に小さい。映像の場合、非可逆圧縮が広く採用されている。許容される歪みの量はアプリケーションによって異なり、たとえば、いくつかのコンシューマ・ストリーミング・アプリケーションのユーザは、テレビ配信アプリケーションのユーザよりも高い歪みを許容できる。達成可能な圧縮率は、より高い容認/許容歪みにより、より高い圧縮率が得られることを反映しうる。
ビデオエンコーダとデコーダは、たとえば、動き補償、変換、量子化、エントロピー符号化など、いくつかの広範なカテゴリの手法を利用できる。
ビデオコーデック技術は、イントラ符号化と呼ばれる手法を含みうる。イントラ符号化では、サンプル値は、以前に再構築された参照ピクチャからのサンプルまたは他のデータを参照せずに表される。一部のビデオコーデックでは、ピクチャはサンプルのブロックに空間的に細分される。サンプルのすべてのブロックがイントラモードで符号化されると、そのピクチャはイントラピクチャでありうる。イントラピクチャと、独立したデコーダリフレッシュピクチャなどのその派生物は、デコーダの状態をリセットするために使用でき、したがって、符号化されたビデオビットストリームとビデオセッションの最初のピクチャとして、または静止画像として使用されうる。イントラブロックのサンプルは変換を受けることができ、変換係数はエントロピー符号化の前に量子化され得る。イントラ予測は、変換前のドメインでサンプル値を最小化する手法であり得る。場合によっては、変換後のDC値が小さければ小さいほど、また、AC係数が小さければ小さいほど、与えられた量子化ステップサイズでエントロピー符号化後のブロックを表すために必要なビットは少なくなる。
たとえば、MPEG-2世代の符号化技術から知られているような従来のイントラ符号化は、イントラ予測を使用しない。しかしながら、いくつかの新しい映像圧縮技術は、たとえば、周囲のサンプルデータおよび/または空間的に近傍であり、データブロックの復号順序で先行する符号化/復号の間に得られたメタデータから試みる手法を含む。このような手法は、以下「イントラ予測」手法と呼ばれる。少なくともいくつかのケースでは、イントラ予測は、再構築中の対象ピクチャからの参照データのみを使用し、参照ピクチャからの参照データは使用しないことに注意されたい。
イントラ予測には様々な形式があり得る。与えられたビデオ符号化手法でそのような手法の2つ以上が使用できる場合、使用されている手法はイントラ予測モードで符号化できる。場合によっては、モードにサブモードおよび/またはパラメータを含めることができ、それらを個別に符号化するか、モードコードワードに含めることができる。与えられたモード/サブモード/パラメータの組み合わせに使用するコードワードは、イントラ予測による符号化効率の向上に影響を与える可能性があり、コードワードをビットストリームに変換するために使用されるエントロピー符号化技術にも影響を与える可能性がある。
イントラ予測のあるモードがH.264で導入され、H.265で改良され、さらに共同探索モデル(JEM)、Versatile Video Coding(VVC)、およびベンチマークセット(BMS)などの新しい符号化技術においてさらに改良された。予測ブロックは、すでに利用可能なサンプルに属する近傍サンプル値を使用して形成されうる。近傍サンプルのサンプル値は、方向に従って予測ブロックに複製される。使用中の方向への参照は、ビットストリームの中で符号化されうる、それ自体で予測されうる。
図1Aを参照すると、右下に示されているのは、H.265の33の可能な予測方向(35のイントラモードのうちの33の角度モードに対応する)からわかる9つの予測方向のサブセットである。矢印が収束する点(101)は、予測されているサンプルを表す。矢印は、サンプルが予測されている方向を表す。たとえば、矢印(102)は、サンプル(101)が右上の1つまたは複数のサンプルから、水平から45度の角度で予測されることを示す。同様に、矢印(103)は、サンプル(101)がサンプル(101)の左下の1つまたは複数のサンプルから、水平から22.5度の角度で予測されることを示す。
やはり図1Aを参照すると、左上に4×4のサンプルの正方形ブロック(104)が示されている(破線の太線で示されている)。正方形ブロック(104)は16個のサンプルを含む。各サンプルは、「S」と、Y次元におけるその位置(たとえば、行インデックス)と、X次元におけるその位置(たとえば、列インデックス)とでラベル付けされている。たとえば、サンプルS21は、Y次元の(上から)2番目のサンプルであり、X次元の(左から)1番目のサンプルである。同様に、サンプルS44は、YおよびX次元の両方において、ブロック(104)の4番目のサンプルである。ブロックのサイズは4×4サンプルなので、S44は右下にある。さらに、同様の番号付けスキームに従う参照サンプルが示されている。参照サンプルは、Rと、ブロック(104)に対するそのY位置(たとえば、行インデックス)と、X位置(列インデックス)とでラベル付けされている。H.264とH.265のいずれにおいても、予測サンプルは再構築中のブロックの近傍であるので、負の値を使用する必要はない。
ピクチャ内予測は、通知された予測方向に応じて、近傍のサンプルから参照サンプル値をコピーすることで機能しうる。たとえば、符号化されたビデオビットストリームに、このブロックについて、矢印(102)と一致する予測方向を示す通知が含まれていると想定すると、サンプルは、1つまたは複数の予測サンプルから右上に、水平から45度の角度で予測される。その場合、サンプルS41、S32、S23、およびS14は、同じ参照サンプルR05から予測される。次に、サンプルS44は参照サンプルR08から予測される。
いくつかの場合において、特に方向が45度で均等に分割できない場合、複数の参照サンプルの値は、参照サンプルを計算するために、たとえば補間によって組み合わされてもよい。
ビデオ符号化技術が発展するにつれて、可能な方向の数は増えている。H.264(2003年)では、9つの異なる方向を表すことができた。これはH.265(2013年)で33に増え、JEM/VVC/BMSは開示時点で最大65の方向をサポートできる。最も可能性の高い方向を特定するための実験が行われ、エントロピー符号化のいくつかの手法は、これらの可能性のある方向を少数のビットで表現し、可能性の低い方向のあるペナルティを受け入れるために使用される。さらに、方向自体が、近傍の、すでに復号されたブロックで使用される近傍の方向から予測される場合がありうる。
図1Bは、時間とともに増加する予測方向の数を説明するために、JEMによる65のイントラ予測方向を示す概略図(105)を示す。
方向を表す符号化されたビデオビットストリーム内のイントラ予測方向ビットのマッピングは、ビデオ符号化技術ごとに異なりうる。たとえば、予測方向の単純な直接マッピングからイントラ予測モード、コードワード、最も可能性の高いモードや類似の手法を含む複雑な適応スキームまで、様々な範囲に及びうる。しかし、すべての場合において、他のいくつかの方向よりも統計的にビデオコンテンツで発生する可能性が低いいくつかの方向が存在しうる。ビデオ圧縮の目的は冗長性の低減であるため、適切に機能するビデオ符号化技術では、これらの可能性が低い方向は、可能性が高い方向よりも多くのビット数で表される。
動き補償は不可逆圧縮技術でありえ、以前に再構築されたピクチャまたはその一部(参照ピクチャ)からのサンプルデータのブロックが、動きベクトル(以下、MV)によって示される方向に空間的にシフトされた後、新しく再構築されたピクチャまたはピクチャ部分の予測に使用される技術に関しうる。場合によっては、参照ピクチャは現在再構築中のピクチャと同じでありうる。MVは、XおよびYの2次元、または3次元を持つことができ、3番目は使用中の参照ピクチャを示すものである(後者は間接的に時間次元でありうる)。
いくつかのビデオ圧縮技術では、サンプルデータのある領域に適用可能なMVは、他のMVから、たとえば、再構築中の領域に空間的に隣接し、復号順序においてそのMVに先行するサンプルデータの他の領域に関連するMVから予測することができる。そうすることで、MVの符号化に必要なデータ量を大幅に削減できるため、冗長性が排除され、圧縮率が向上する。たとえば、カメラから導出された入力ビデオ信号(ナチュラルビデオと呼ばれる)を符号化する場合、単一のMVが適用可能な領域よりも大きい領域は同様の方向に移動する統計的な尤度があり、したがって、場合によっては、近傍の領域のMVから導出された同様の動きベクトルを使用して予測できるため、MV予測は効果的に機能しうる。その結果、与えられた領域について見つけられたMVは、周囲のMVから予測されたMVと類似または同一であり、つぎに、エントロピー符号化の後、MVを直接符号化する場合に使用されるビット数よりも少ないビット数で表すことができる。場合によっては、MV予測は、元の信号(すなわち、サンプルストリーム)から導出された信号(すなわち、MV)の可逆圧縮の例になりうる。その他の場合、たとえば、周囲のいくつかのMVから予測(predictor)を計算するときの丸め誤差により、MV予測自体が不可逆的となる可能性がある。
様々なMV予測メカニズムが、H.265/HEVC(ITU-T勧告H.265、「高効率ビデオ符号化」、2016年12月)に記載されている。H.265が提供する多くのMV予測メカニズムのうち、高度な動きベクトル予測(AMVP)モードおよびマージモードについてここで説明する。
AMVPモードでは、対象ブロックの空間的および時間的に近傍のブロックの動き情報は、対象ブロックの動き情報を予測するために使用されえ、予測残差はさらに符号化される。空間的および時間的に近傍の候補の例は、それぞれ図1Cおよび図1Dに示されている。2つの候補の動きベクトル予測リストが形成される。第1の候補予測は、図1Cに示されるように、対象ブロック(111)の左下隅にある2つのブロックA0(112)、A1(113)の最初の利用可能な動きベクトルからのものである。第2の候補予測は、対象ブロック(111)の上の3つのブロックB0(114)、B1(115)、およびB2(116)の最初の利用可能な動きベクトルからのものである。チェックした場所から有効な動きベクトルが見つからない場合、候補はリストに入れられない。2つの利用可能な候補が同じ動き情報を有する場合、1つの候補のみがリストに保持される。リストがいっぱいでない場合、すなわちリストに2つの異なる候補がない場合、図1Dに示されるように、参照ピクチャ内の同一位置のブロック(121)の右下隅にあるC0(122)からの時間的に同一位置の動きベクトル(スケーリング後)が他の候補として使用される。C0(122)位置の動き情報が利用できない場合は、代わりに、参照ピクチャ内の同一位置のブロックの中心位置C1(123)が使用される。上記の導出では、まだ十分な動きベクトル予測候補がない場合、ゼロ動きベクトルがリストをいっぱいにするために使用される。2つのフラグmvp_l0_flagおよびmvp_l1_flagがビットストリームで通知され、それぞれMV候補リストL0およびL1のためのAMVPインデックス(0または1)を示す。
ピクチャ間予測のマージモードでは、マージフラグ(スキップフラグを含む)がTRUEとして通知されると、マージ候補リスト内のどの候補が対象ブロックの動きベクトルを示すために使用されるかを示すために、マージインデックスが通知される。デコーダにおいて、マージ候補リストは、対象ブロックの空間的および時間的な近傍に基づいて構築される。図1Cに示されるように、5つの空間近傍ブロック(A0~B2)から導出された最大4つのMVが、マージ候補リストに追加される。さらに、図1Dに示されるように、参照ピクチャ内の2つの時間的に同一位置のブロック(C0およびC1)からの最大1つのMVがリストに追加される。追加のマージ候補は、結合された双方向予測候補およびゼロ動きベクトル候補を含む。ブロックの動き情報をマージ候補として取得する前に、冗長性チェックが実行され、現在のマージ候補リスト内の要素と同一であるかどうかがチェックされる。現在のマージ候補リスト内の各要素と異なる場合は、マージ候補としてマージ候補リストに追加される。MaxMergeCandsNumは、候補番号に関してマージ候補リストのサイズとして定義される。HEVCでは、MaxMergeCandsNumはビットストリームで通知される。スキップモードは、残余がゼロの特別なマージモードと考えられうる。
VVCでは、サブブロックベースの時間動きベクトル予測(SbTMVP)方法は、HEVCの時間動きベクトル予測(TMVP)と同様に、同一位置のピクチャの動きフィールドを使用して、対象ピクチャ内のCUの動きベクトル予測およびマージモードを改善できる。TMVPで使用されるのと同じ同一位置のピクチャがSbTVMPに使用される。SbTMVPは、次の2つの主な点でTMVPと異なる。(1)TMVPはCUレベルで動きを予測するが、SbTMVPはサブCUレベルで動きを予測する。(2)TMVPは、同一位置のピクチャ内の同一位置のブロックから時間動きベクトルをフェッチするが(同一位置のブロックは、対象CUに対して右下または中央のブロックである)、SbTMVPは、同一位置のピクチャから時間動き情報をフェッチする前に動きシフトを適用し、動きシフトは、対象CUに空間近傍ブロックの1つからの動きベクトルから取得される。
SbTVMPプロセスは、図1Eおよび図1Fに示されている。SbTMVPは、対象CU内のサブCUの動きベクトルを2つのステップで予測する。第1のステップでは、図1Eに示されるように、対象ブロック(131)の空間近傍が、A1(132)、B1(133)、B0(134)、およびA0(135)の順序で検査される。同一位置のピクチャを参照ピクチャとして使用する動きベクトルを有する最初の利用可能な空間近傍ブロックが識別されると、この動きベクトルが、適用される動きシフトとして選択される。そのような動きベクトルが空間近傍から識別されない場合、動きシフトは(0、0)に設定される。
第2のステップでは、図1Fに示されるように、第1のステップで識別された動きシフトが適用され(すなわち、対象ブロックの座標に追加され)、同一位置のピクチャからサブCUレベルの動き情報(たとえば、動きベクトルおよび参照インデックス)を取得する。図1Fの例は、動きシフト(149)が空間近傍ブロックA1(143)の動きベクトルに設定されていると仮定している。次に、対象ピクチャ(141)の対象ブロック(142)内の対象サブCU(たとえば、サブCU(144))について、同一位置のピクチャ(151)の同一位置のブロック(152)内の対応する同一位置のサブCU(たとえば、同一位置のサブCU(154))の動き情報は、対象サブCUの動き情報を導出するために使用される。対応する同一位置のサブCU(たとえば、同一位置のサブCU(154))の動き情報は、時間動きスケーリングを適用して、時間動きベクトルの参照ピクチャを対象CUの参照ピクチャと整列させるHEVCのTMVPプロセスと同様の方法で、対象サブCU(たとえば、サブCU(144))の動きベクトルおよび参照インデックスに変換される。
VVCでは、SbTVMP候補およびアフィンマージ候補の両方を含む結合されたサブブロックベースのマージリストを、サブブロックベースのマージモードで使用できる。SbTVMPモードは、シーケンス・パラメータ・セット(SPS)フラグによって有効化/無効化される。SbTMVPモードが有効化されている場合、SbTMVP予測は、サブブロックベースのマージリストの最初のエントリとして追加され、その後にアフィンマージ候補が続く。一部のアプリケーションでは、サブブロックベースのマージリストの最大許容サイズは5である。SbTMVPで使用されるサブCUサイズは、たとえば8×8に固定されている。アフィンマージモードの場合と同様に、SbTMVPモードは、幅および高さの両方が8以上の場合にのみCUに適用できる。
追加のSbTMVPマージ候補の符号化ロジックは、他のマージ候補の符号化ロジックと同じである。すなわち、PまたはBスライス内のCUごとに、追加のレート歪み(RD)チェックが実行され、SbTMVP候補を使用するかどうかが決定される。
VVCでは、履歴ベースのMVP(HMVP)方法は、以前に符号化されたブロックの動き情報として定義されたHMVP候補を含む。複数のHMVP候補を含むテーブルは、符号化/復号プロセスの間、維持される。新しいスライスが検出されると、テーブルは空になる。インター符号化された非アフィンブロックがある場合は常に、関連付けられた動き情報が新しいHMVP候補としてテーブルの最後のエントリに追加される。HMVP方法のコーディングの流れを図1Gに示す。
テーブルサイズSは6に設定されており、これは、最大6つのHMVP候補をテーブルに追加できることを示している。新しい動き候補をテーブルに挿入するとき、冗長性チェックが最初に適用されて、同一のHMVPがテーブルにあるかどうかが決定されるよう、制約付きFIFOルールが使用される。見つかった場合、テーブルから同一のHMVPが削除され、その後、すべてのHMVP候補が前に移動し、すなわち、インデックスが1つ減る。図1Hは、新しい動き候補をHMVPテーブルに挿入する例を示している。
HMVP候補は、マージ候補リストの構築プロセスで使用されうる。テーブル内の最新のいくつかのHMVP候補が順番にチェックされ、TMVP候補の後に候補リストに挿入される。サブブロック動き候補(すなわち、ATMVP)を除く空間的または時間的マージ候補へのHMVP候補に、プルーニングが適用される。
プルーニング操作の数を減らすために、チェックされるHMVP候補の数(Lで示される)は、L=(N<=4)?M:(8-N)として設定され、ここで、Nはテーブル内の利用可能な非サブブロックマージ候補の数を示し、Mは利用可能なHMVP候補の数を示す。さらに、利用可能なマージ候補の総数が、通知された最大許容マージ候補から1を引いた数に達すると、HMVPリストからのマージ候補リストの構築プロセスが終了する。さらに、結合された双方向予測マージ候補導出のペアの数が、12から6に減少する。
HMVP候補は、AMVP候補リストの構築プロセスでも使用できる。テーブルの最後のK個のHMVP候補の動きベクトルが、TMVP候補の後に挿入される。AMVP候補リストの構築には、AMVPターゲット参照ピクチャと同じ参照ピクチャを持つHMVP候補のみが使用される。プルーニングがHMVP候補に適用される。一部のアプリケーションでは、Kは4に設定されるが、AMVPリストのサイズは変更されず、2である。
ペアワイズ平均候補は、現在のマージ候補リスト内の事前定義された候補のペアを平均することによって生成される。VVCでは、ペアワイズ平均候補の数は6であり、事前定義されたペアは{(0、1)、(0、2)、(1、2)、(0、3)、(1、3)、(2、3)}と定義され、ここで、数字はマージ候補リストへのマージインデックスを示す。平均化された動きベクトルは、参照リストごとに個別に計算される。両方の動きベクトルが1つのリストで利用可能である場合、これら2つの動きベクトルは、異なる参照ピクチャを指している場合でも平均化される。利用可能な動きベクトルが1つだけの場合は、1つの動きベクトルが直接使用される。利用可能な動きベクトルがない場合、このリストは無効と考えられる。ペアワイズ平均候補は、HEVC標準の結合された候補と置き換えることができる。
多重仮説予測は、AMVPモードの単一予測を改善するために使用されうる。多重仮説予測を有効化または無効化するために、1つのフラグが通知される。さらに、フラグがtrueの場合、1つの追加のマージインデックスが通知される。このように、多重仮説予測は、単一予測を二重予測にし、一方の予測はAMVPモードの元の構文要素を使用して取得され、もう一方の予測はマージモードを使用して取得される。最終的な予測では、双方向予測の場合と同様に、1:1の重みを使用してこれら2つの予測を組み合わせる。マージ候補リストは、最初に、サブCU候補(アフィン、代替時間動きベクトル予測(ATMVP)など)が除外されたマージモードから導出される。次に、マージ候補リストは2つの個別のリストに分割され、1つは候補からのすべてのL0動きを含むリスト0(L0)用で、もう1つはすべてのL1動きを含むリスト1(L1)用である。冗長性を削除して空きを埋めた後、L0およびL1それぞれに対して2つのマージリストが生成される。AMVPモードを改善するために多重仮説測を適用する場合、2つの制約がある。第1に、輝度符号化ブロック(CB)領域が64以上のCUについて有効になる。第2に、低遅延BピクチャについてのL1にのみ適用される。
本開示の態様は、ビデオ符号化/復号のための方法および装置を提供する。いくつかの例では、ビデオ復号のための装置は、受信回路および処理回路を含む。
処理回路は、符号化されたビデオシーケンスの一部である対象ピクチャ内の対象ブロックについて予測情報を復号する。処理回路は、対象ブロックの面積がしきい値以下であるかどうかを決定する。処理回路は、動きベクトル予測の数を含む動きベクトル予測リストを構築する。動きベクトル予測の数は、対象ブロックの面積がしきい値以下であると決定されたかどうかに基づいている。処理回路は、動きベクトル予測リストに基づいて対象ブロックを再構築する。
本開示の態様によれば、動きベクトル予測リストに含まれる動きベクトル予測の数は、対象ブロックの面積がしきい値以下であると決定された場合は第1の数であり、対象ブロックの面積がしきい値よりも大きいと決定された場合、動きベクトル予測リストに含まれる動きベクトル予測の数は、第1の数よりも大きい第2の数である。
本開示の態様によれば、予測情報は、対象ブロックがさらに複数のより小さいブロックに分割されることを示す。処理回路は、対象ブロックを複数のより小さいブロックに分割する。処理回路は、複数のより小さいブロックのうちの1つの面積がしきい値以下であるかどうかを決定する。処理回路は、複数のより小さいブロックのうちの1つの面積がしきい値以下であると決定されるかどうかに基づいて、動きベクトル予測リストを構築する。動きベクトル予測リストに含まれる動きベクトル予測の数は、複数のより小さいブロックのうちの1つの面積がしきい値以下であると決定された場合は第1の数であり、複数のより小さいブロックのうちの1つの面積がしきい値よりも大きいと決定された場合、動きベクトル予測リストに含まれる動きベクトル予測の数は、第2の数である。
本開示の態様によれば、予測情報は、対象ブロックのパーティションサイズを示す。処理回路は、パーティションサイズがしきい値以下であるかどうかを決定する。処理回路は、パーティションサイズがしきい値以下であると決定されたかどうかに基づいて、動きベクトル予測リストを構築する。動きベクトル予測リストに含まれる動きベクトル予測の数は、パーティションサイズがしきい値以下であると決定された場合は第1の数であり、パーティションサイズがしきい値よりも大きいと決定された場合、動きベクトル予測リストに含まれる動きベクトル予測の数は、第2の数である。
一実施形態では、しきい値は、予め設定された数の輝度サンプルである。
一実施形態では、しきい値は、対象ピクチャのピクチャ解像度に対応する。
一実施形態では、しきい値は、符号化されたビデオシーケンスで通知される。
一実施形態では、第1の数の動きベクトル予測を含む動きベクトル予測リストは、空間的または時間動きベクトル予測の第1のセットに基づいて構築される。空間的または時間動きベクトル予測の第1のセットは、第2の数の動きベクトル予測を含む動きベクトル予測リストを構築するために使用される空間的または時間動きベクトル予測の第2のセットよりも小さい。
一実施形態では、第1の数の動きベクトル予測を含む動きベクトル予測リストは、空間的または時間動きベクトル予測を含まない。
一実施形態では、第1の数の冗長性チェックを実行して、第1の数の動きベクトル予測を含む動きベクトル予測リストを構築し、第2の数の冗長性チェックを実行して、第2の数の動きベクトル予測を含む動きベクトル予測リストを構築する。第1の数の冗長性チェックは、第2の数の冗長性チェックよりも少ない。
一実施形態では、第1の数の冗長性チェックは、(i)可能な空間的動きベクトル予測と動きベクトル予測リスト内の第1の既存の空間動きベクトル予測との間、(ii)可能な時間動きベクトル予測と動きベクトル予測リスト内の第1の既存の時間的動きベクトル予測との間、(iii)可能な履歴ベースの動きベクトル予測と動きベクトル予測リスト内の第1または他の既存の空間動きベクトル予測との間、および(iv)可能な履歴ベースの動きベクトル予測と動きベクトル予測リスト内の第1または他の既存の時間的動きベクトル予測との間の比較の少なくとも1つを含まない。
一実施形態では、第1の数の動きベクトル予測を含む動きベクトル予測リストは、冗長性チェックなしで構築される。
一実施形態では、動きベクトル予測の少なくとも1つは、動きベクトル予測の少なくとも1つの参照ブロックが対象ピクチャ内にあるように、対象ピクチャを参照ピクチャとして使用する。
本開示の態様はまた、ビデオ復号のためにコンピュータによって実行されたときに、コンピュータにビデオ復号のための方法のいずれか1つまたは組み合わせを実行させる命令を格納する非一時的なコンピュータ可読媒体を提供する。
開示される主題のさらなる特徴、性質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかになるであろう。
イントラ予測モードの例示的なサブセットの概略図である。 例示的なイントラ予測方向の図である。 一例における対象ブロックおよびその周囲の空間マージ候補の概略図である。 一例における同一位置のブロックおよび時間的マージ候補の概略図である。 一例による、サブブロックベースの時間的動きベクトル予測(SbTMVP)のための対象ブロックおよびその周囲の空間的マージ候補の概略図である。 一例によるSbTMVP候補を導出する例示的なプロセスである。 一例における履歴ベースの動きベクトル予測(HMVP)方法の復号フローである。 一例によるHMVP内のテーブルを更新する例示的なプロセスである。 一実施形態による通信システムの簡略ブロック図の概略図である。 一実施形態による通信システムの簡略ブロック図の概略図である。 一実施形態によるデコーダの簡略ブロック図の概略図である。 一実施形態によるエンコーダの簡略ブロック図の概略図である。 他の実施形態によるエンコーダのブロック図を示す。 他の実施形態によるデコーダのブロック図を示す。 本開示のいくつかの実施形態による例示的なプロセスを概説するフローチャートを示す。 本開示のいくつかの実施形態による例示的なプロセスを概説する他のフローチャートを示す。 一実施形態によるコンピュータシステムの概略図である。
図2は、本開示の実施形態による通信システム(200)の簡略ブロック図を示す。通信システム(200)は、たとえば、ネットワーク(250)を介して互いに通信可能な複数の端末デバイスを含む。たとえば、通信システム(200)は、ネットワーク(250)を介して相互接続された第1のペアの端末デバイス(210)および(220)を含む。図2の例では、第1のペアの端末デバイス(210)および(220)は、データの単方向送信を行う。たとえば、端末デバイス(210)は、ネットワーク(250)を介して他の端末デバイス(220)に送信するために、ビデオデータ(たとえば、端末デバイス(210)によってキャプチャされたビデオピクチャのストリーム)を符号化しうる。符号化されたビデオデータは、1つまたは複数の符号化されたビデオビットストリームの形で送信されうる。端末デバイス(220)は、ネットワーク(250)から符号化されたビデオデータを受け取り、符号化されたビデオデータをビデオピクチャを回復するために復号し、回復されたビデオデータに従ってビデオピクチャを表示することができる。一方向のデータ送信は、メディア・サービング・アプリケーションなどでは一般的でありうる。
他の例では、通信システム(200)は、たとえば、ビデオ会議中に発生する可能性がある符号化されたビデオデータの双方向送信を実行する第2のペアの端末デバイス(230)および(240)を含む。データの双方向送信の場合、一例では、端末デバイス(230)および(240)の各端末デバイスは、ネットワーク(250)を介して端末デバイス(230)および(240)の他の端末デバイスに送信するために、ビデオデータ(たとえば、端末デバイスによってキャプチャされたビデオピクチャのストリーム)を符号化することができる。端末デバイス(230)および(240)の各端末デバイスはまた、端末デバイス(230)および(240)の他の端末デバイスによって送信された符号化されたビデオデータを受け取り、符号化されたビデオデータをビデオピクチャを回復するために復号して、回復されたビデオデータに従ってアクセス可能な表示装置でビデオピクチャを表示することができる。
図2の例では、端末デバイス(210)、(220)、(230)および(240)は、サーバ、パーソナルコンピュータおよびスマートフォンとして示され得るが、本開示の原理はそのように限定されなくともよい。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤ、および/または専用のビデオ会議機器での用途を見出す。ネットワーク(250)は、たとえばワイヤライン(有線)および/または無線通信ネットワークを含む、端末デバイス(210)、(220)、(230)および(240)間で符号化されたビデオデータを伝達する任意の数のネットワークを表す。通信ネットワーク(250)は、回路交換および/またはパケット交換チャネルでデータを交換することができる。代表的なネットワークには、通信ネットワーク、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、インターネットなどがある。本議論の目的のために、ネットワーク(250)のアーキテクチャおよびトポロジは、以下に本明細書で説明されない限り、本開示の動作にとって重要ではない場合がある。
図3は、開示された主題のアプリケーションの例として、ストリーミング環境におけるビデオエンコーダおよびビデオデコーダの配置を示す。開示された主題は、たとえば、ビデオ会議、デジタルTV、そしてCD、DVD、メモリスティックなどを含むデジタル媒体への圧縮ビデオの格納などを含む他のビデオ対応アプリケーションに等しく適用可能であり得る。
ストリーミングシステムは、たとえばデジタルカメラなどのビデオソース(301)を含むことができるキャプチャサブシステム(313)を含むことができ、たとえば非圧縮のビデオピクチャのストリーム(302)を作成する。一例では、ビデオピクチャのストリーム(302)は、デジタルカメラによって取得されたサンプルを含む。ビデオピクチャのストリーム(302)は、符号化されたビデオデータ(304)(または符号化されたビデオビットストリーム)と比較してデータ量が多いことを強調するために太い線で示され、ビデオソース(301)に結合されたビデオエンコーダ(303)を含む電子デバイス(320)で処理されうる。ビデオエンコーダ(303)は、以下詳述するような、開示された主題の態様を可能にするまたは実装するためのハードウェア、ソフトウェア、またはそれらの組み合わせを含むことができる。符号化されたビデオデータ(304)(または符号化されたビデオビットストリーム(304))は、ビデオピクチャのストリーム(302)と比較してデータ量が少ないことを強調するために細い線で示され、将来の使用のためにストリーミングサーバ(305)に格納されうる。図3のクライアントサブシステム(306)および(308)などの1つまたは複数のストリーミング・クライアント・サブシステムは、ストリーミングサーバ(305)にアクセスして、符号化されたビデオデータ(304)のコピー(307)および(309)を取り出すことができる。クライアントサブシステム(306)は、たとえば、電子デバイス(330)内にビデオデコーダ(310)を含みうる。ビデオデコーダ(310)は、符号化されたビデオデータの着信コピー(307)を復号し、ディスプレイ(312)(たとえば、ディスプレイ画面)または他のレンダリングデバイス(図示せず)にレンダリングされうるビデオピクチャの出力ストリーム(311)を作成する。一部のストリーミングシステムでは、符号化されたビデオデータ(304)、(307)、および(309)(たとえば、ビデオビットストリーム)は、いくつかのビデオ符号化/圧縮標準に従って符号化されうる。これらの標準の例には、ITU-T勧告H.265が含まれる。一例として、開発中のビデオ符号化標準は、非公式にVVCとして知られている。開示された主題は、VVCの文脈で使用されてもよい。
電子デバイス(320)および(330)は、他の構成要素(図示せず)を含みうることに留意されたい。たとえば、電子デバイス(320)はビデオデコーダ(図示せず)を含むことができ、電子デバイス(330)は同様にビデオエンコーダ(図示せず)を含みうる。
図4は、本開示の実施形態によるビデオデコーダ(410)のブロック図を示す。ビデオデコーダ(410)は、電子デバイス(430)に含まれ得る。電子デバイス(430)は、受信器(431)(たとえば、受信回路)を含みうる。ビデオデコーダ(410)は、図3の例におけるビデオデコーダ(310)の代わりに使用されうる。
受信器(431)は、ビデオデコーダ(410)によって復号される1つまたは複数の符号化されたビデオシーケンスを受け取ることができ、同じまたは他の実施形態では、一度に1つの符号化されたビデオシーケンスであり、各符号化されたビデオシーケンスの復号は、他の符号化されたビデオシーケンスから独立している。符号化されたビデオシーケンスは、符号化されたビデオデータを格納する記憶装置へのハードウェア/ソフトウェアリンクであり得るチャネル(401)から受け取ることができる。受信器(431)は、符号化されたビデオデータを他のデータ、たとえば、符号化されたオーディオデータおよび/または補助データストリームとともに受け取ることができ、それらはそれぞれの使用エンティティ(図示せず)に転送され得る。受信器(431)は、符号化されたビデオシーケンスを他のデータから分離することができる。ネットワークジッタに対抗するために、バッファメモリ(415)は、受信器(431)とエントロピーデコーダ/パーサ(420)(以下「パーサ(420)」)との間に結合され得る。いくつかの適用では、バッファメモリ(415)はビデオデコーダ(410)の一部である。他の場合には、それはビデオデコーダ(410)の外側にあってもよい(図示せず)。さらに他の場合には、たとえばネットワークジッタに対抗するために、ビデオデコーダ(410)の外側にバッファメモリ(図示せず)があってもよく、さらに、たとえば再生タイミングを処理するために、ビデオデコーダ(410)の内側に他のバッファメモリ(415)があってもよい。受信器(431)が十分な帯域幅および制御可能性を有する格納/転送デバイスから、または同期ネットワークからデータを受け取っているとき、バッファメモリ(415)は必要とされないか、または小さいものであってもよい。インターネットなどのベスト・エフォート・パケット・ネットワークで使用する場合、バッファメモリ(415)が必要になる場合があり、比較的大きく、有利にサイズを調整でき、オペレーティングシステムまたはビデオデコーダ(410)の外側の同様の要素(図示せず)に少なくとも部分的に実装されてもよい。
ビデオデコーダ(410)は、符号化されたビデオシーケンスからシンボル(421)を再構築するためのパーサ(420)を含み得る。これらのシンボルのカテゴリには、ビデオデコーダ(410)の動作を管理するために使用される情報、および場合によっては、レンダリングデバイス(412)などのレンダリングデバイス(たとえば、表示画面)を制御するための情報が含まれ、レンダリングデバイスは、図4に示されているように、電子デバイス(430)の一体部分ではないが、電子デバイス(430)に結合されうる。レンダリングデバイスの制御情報は、補足拡張情報(SEIメッセージ)またはビデオユーザビリティ情報(VUI)パラメータ・セット・フラグメント(図示せず)の形であり得る。パーサ(420)は、受け取られた符号化されたビデオシーケンスを解析/エントロピー復号することができる。符号化されたビデオシーケンスの符号化は、ビデオ符号化技術または標準に従うことができ、可変長符号化、ハフマン符号化、文脈依存性のある、またはない算術符号化などを含む様々な原理に従うことができる。パーサ(420)は、符号化されたビデオシーケンスから、グループに対応する少なくとも1つのパラメータに基づいて、ビデオデコーダにおけるピクセルのサブグループのうちの少なくとも1つのサブグループパラメータのセットを抽出することができる。サブグループには、Group of Pictures(GOP)、ピクチャ、タイル、スライス、マクロブロック、符号化ユニット(CU)、ブロック、変換ユニット(TU)、予測ユニット(PU)などを含みうる。パーサ(420)はまた、符号化されたビデオシーケンスから、変換係数、量子化パラメータ値、動きベクトルなどのような情報を抽出することができる。
パーサ(420)は、シンボル(421)を作成するために、バッファメモリ(415)から受け取られたビデオシーケンスに対してエントロピー復号/解析動作を行いうる。
シンボル(421)の再構築には、符号化されたビデオピクチャまたはその一部(インターおよびイントラピクチャ、インターおよびイントラブロックなど)のタイプ、およびその他の要因に応じて、複数の異なるユニットが含まれ得る。どのユニットがどのように関与するかは、パーサ(420)によって符号化されたビデオシーケンスから解析されたサブグループ制御情報によって制御されうる。パーサ(420)と以下の複数のユニットとの間のそのようなサブグループ制御情報の流れは、明確性のため示されていない。
すでに述べた機能ブロックの他に、ビデオデコーダ(410)は、以下で説明するように、概念的にいくつかの機能ユニットに細分されうる。商業的な制約の下で動作する実際の実装では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的には互いに統合されうる。しかしながら、開示された主題を説明するために、以下の機能ユニットへの概念的な細分が適切である。
最初のユニットは、スケーラ/逆変換ユニット(451)である。スケーラ/逆変換ユニット(451)は、パーサ(420)から、使用する変換、ブロックサイズ、量子化係数、量子化スケーリングマトリックスなどを含む制御情報と、量子化された変換係数をシンボル(421)として受け取る。スケーラ/逆変換ユニット(451)は、アグリゲータ(455)に入力できるサンプル値を含むブロックを出力しうる。
場合によっては、スケーラ/逆変換(451)の出力サンプルは、イントラ符号化されたブロックに関係することがあり、すなわち、以前に再構築されたピクチャからの予測情報を使用していないが、対象ピクチャの以前に再構築された部分からの予測情報を使用しうるブロックである。そのような予測情報は、イントラピクチャ予測ユニット(452)によって提供されうる。場合によっては、イントラピクチャ予測ユニット(452)は、対象ピクチャバッファ(458)からフェッチされた周囲のすでに再構築された情報を使用して、再構築中のブロックと同じサイズおよび形状のブロックを生成する。対象ピクチャバッファ(458)は、たとえば、部分的に再構築された対象ピクチャおよび/または完全に再構築された対象ピクチャをバッファリングする。アグリゲータ(455)は、場合によっては、サンプルごとに、イントラ予測ユニット(452)が生成した予測情報を、スケーラ/逆変換ユニット(451)によって提供された出力サンプル情報に追加する。
他の場合では、スケーラ/逆変換ユニット(451)の出力サンプルは、インター符号化された、場合によっては動き補償されたブロックに関係することがある。そのような場合、動き補償予測ユニット(453)は、参照ピクチャメモリ(457)にアクセスして、予測に使用されるサンプルをフェッチすることができる。フェッチされたサンプルをブロックに関連するシンボル(421)に従って動き補償した後、これらのサンプルは、出力サンプル情報を生成するために、アグリゲータ(455)によってスケーラ/逆変換ユニット(451)の出力に追加できる(この場合、残差サンプルまたは残差信号と呼ばれる)。動き補償予測ユニット(453)が予測サンプルをフェッチする参照ピクチャメモリ(457)内のアドレスは、たとえば、X、Y、および参照ピクチャ成分を有し得るシンボル(421)の形で動き補償予測ユニット(453)に利用可能な動きベクトルによって制御されうる。動き補償はまた、サブサンプルの正確な動きベクトルが使用されているときに参照ピクチャメモリ(457)からフェッチされたサンプル値の補間、動きベクトル予測メカニズムなどを含みうる。
アグリゲータ(455)の出力サンプルは、ループ・フィルタ・ユニット(456)における様々なループフィルタリング手法を受けうる。ビデオ圧縮技術には、符号化されたビデオシーケンス(符号化されたビデオビットストリームとも呼ばれる)に含まれるパラメータによって制御され、パーサ(420)からのシンボル(421)としてループ・フィルタ・ユニット(456)で利用できるループ内フィルタ技術を含めることができるが、符号化されたピクチャまたは符号化されたビデオシーケンスの以前の(復号順の)部分の復号中に得られたメタ情報に反応するものであってよく、以前に再構築されループフィルタリングされたサンプル値に反応するものであってもよい。
ループ・フィルタ・ユニット(456)の出力は、レンダリングデバイス(412)に出力されてもよく、かつ将来のインターピクチャ予測で使用するために参照ピクチャメモリ(457)に格納できるサンプルストリームとすることができる。
いくつかの符号化されたピクチャは、完全に再構築されると、将来の予測のための参照ピクチャとして使用されうる。たとえば、対象ピクチャに対応する符号化されたピクチャが完全に再構築され、符号化されたピクチャが(たとえば、パーサ(420)によって)参照ピクチャとして識別されると、対象ピクチャバッファ(458)は参照ピクチャメモリ(457)の一部になることができ、次の符号化されたピクチャの再構築を開始する前に、新しい対象ピクチャバッファが再割り当てされうる。
ビデオデコーダ(410)は、ITU-T勧告H.265などの標準における所定のビデオ圧縮技術に従って復号動作を実行することができる。符号化されたビデオシーケンスは、ビデオ圧縮技術または標準の構文と、ビデオ圧縮技術または標準のドキュメントとしてのプロファイルの両方に準拠しているという意味で、使用されているビデオ圧縮技術または標準によって指定された構文に従っていてもよい。具体的には、プロファイルは、ビデオ圧縮技術または標準で利用可能なすべてのツールから、そのプロファイルで使用できる唯一のツールとしていくつかのツールを選択できる。また、符号化されたビデオシーケンスの複雑さが、ビデオ圧縮技術または標準のレベルで定義されているレベル内にあることも、コンプライアンスに必要である。場合によっては、レベルによって、最大ピクチャサイズ、最大フレームレート、最大再構築サンプルレート(たとえば、メガサンプル/秒で測定)、最大参照ピクチャサイズなどが制限される。レベルによって設定された制限は、場合によっては、仮想参照デコーダ(HRD)の仕様と、符号化されたビデオシーケンスで通知されるHRDバッファ管理のメタデータによってさらに制限されることがある。
一実施形態では、受信器(431)は、符号化されたビデオとともに追加の(冗長な)データを受け取ってもよい。追加のデータは、符号化されたビデオシーケンスの一部として含まれてもよい。追加のデータは、データを適切に復号し、および/または元のビデオデータをより正確に再構築するためにビデオデコーダ(410)によって使用されてもよい。追加のデータは、たとえば、時間的、空間的、または信号ノイズ比(SNR)エンハンスメントレイヤ、冗長スライス、冗長ピクチャ、前方誤り訂正コードなどの形式にすることができる。
図5は、本開示の実施形態によるビデオエンコーダ(503)のブロック図を示す。ビデオエンコーダ(503)は、電子デバイス(520)に含まれる。電子デバイス(520)は、送信器(540)(たとえば、送信回路)を含む。ビデオエンコーダ(503)は、図3の例におけるビデオエンコーダ(303)の代わりに使用されうる。
ビデオエンコーダ(503)は、(図5の例では電子デバイス(520)の一部ではない)ビデオソース(501)からビデオサンプルを受け取ることができ、ビデオソース(501)は、ビデオエンコーダ(503)によって符号化されるビデオ画像をキャプチャすることができる。他の例では、ビデオソース(501)は、電子デバイス(520)の一部である。
ビデオソース(501)は、任意の適切なビット深度(たとえば、8ビット、10ビット、12ビット、・・・)、任意の色空間(たとえば、BT.601 Y CrCB、RGB、・・・)および任意の適切なサンプリング構造(たとえば、Y CrCb 4:2:0、Y CrCb 4:4:4)であり得るデジタル・ビデオ・サンプル・ストリームの形態でビデオエンコーダ(503)によって符号化されるソース・ビデオ・シーケンスを提供することができる。メディアサービングシステムでは、ビデオソース(501)は、以前に準備されたビデオを格納するストレージデバイスであり得る。ビデオ会議システムでは、ビデオソース(501)は、ローカル画像情報をビデオシーケンスとしてキャプチャするカメラであり得る。ビデオデータは、順番に見たときに動きを与える複数の個別のピクチャとして提供されてもよい。ピクチャ自体は、空間的なピクセルのアレイとして編成することができ、各ピクセルは、使用中のサンプリング構造、色空間などに応じて、1つまたは複数のサンプルを含むことができる。当業者は、ピクセルとサンプルとの関係を容易に理解することができる。以下の説明は、サンプルに重点を置く。
一実施形態によれば、ビデオエンコーダ(503)は、リアルタイムまたはアプリケーションによって要求される任意の他の時間制約の下で、ソース・ビデオ・シーケンスのピクチャを符号化し、符号化されたビデオシーケンス(543)に圧縮し得る。適切な符号化速度を強制することは、コントローラ(550)の1つの機能である。一部の実施形態では、コントローラ(550)は、以下で説明するように他の機能ユニットを制御し、他の機能ユニットに機能的に結合される。明確性のため、結合は図示していない。コントローラ(550)によって設定されるパラメータには、レート制御関連のパラメータ(ピクチャスキップ、量子化、レート歪み最適化手法のラムダ値など)、ピクチャサイズ、Group of Pictures(GOP)レイアウト、最大動きベクトル検索範囲、などが含まれ得る。コントローラ(550)は、あるシステム設計に対して最適化されたビデオエンコーダ(503)に関係する他の適切な機能を有するように構成することができる。
一部の実施形態では、ビデオエンコーダ(503)は、符号化ループで動作するように構成される。過度に単純化した説明として、一例では、符号化ループは、ソースコーダ(530)(たとえば、符号化される入力ピクチャおよび参照ピクチャに基づいて、シンボルストリームなどのシンボルを作成する責任を負う)、およびビデオエンコーダ(503)に埋め込まれた(ローカル)デコーダ(533)を含み得る。デコーダ(533)は、シンボルを再構築して、(リモート)デコーダが作成するのと同様の方法でサンプルデータを作成する(シンボルと符号化されたビデオビットストリーム間の圧縮は、開示された主題で検討されているビデオ圧縮技術では可逆であるため)。再構築されたサンプルストリーム(サンプルデータ)は、参照ピクチャメモリ(534)に入力される。シンボルストリームの復号は、デコーダの場所(ローカルまたはリモート)に関係なくビットパーフェクトな結果をもたらすため、参照ピクチャメモリ(534)のコンテンツもローカルエンコーダとリモートエンコーダ間でビットパーフェクトである。言い換えると、エンコーダの予測部分は、参照ピクチャのサンプルを、デコーダが復号中に予測を使用するときに「見る」のとまったく同じサンプル値として「見る」。参照ピクチャの同期性のこの基本原理(および、たとえばチャネルエラーのために同期性を維持できない場合に生じるドリフト)は、いくつかの関連技術でも使用されている。
「ローカル」デコーダ(533)の動作は、図4に関連してすでに詳細に説明されている、ビデオデコーダ(410)などの「リモート」デコーダの動作と同じであり得る。しかしながら、図4も簡単に参照すると、シンボルが利用可能であり、エントロピーコーダ(545)およびパーサ(420)による符号化されたビデオシーケンスへのシンボルの符号化/復号は可逆であり得るため、ビデオデコーダ(410)のエントロピー復号部分、ならびにバッファメモリ(415)およびパーサ(420)は、ローカルデコーダ(533)で完全に実装されない場合がある。
この時点で注目できることは、デコーダに存在する解析/エントロピー復号以外のいかなるデコーダ技術も、対応するエンコーダに実質的に同一の機能形式で必ず存在する必要があることである。このため、開示された主題は、デコーダの動作に重点を置く。エンコーダ技術の説明は、包括的に説明されたデコーダ技術の逆であるため、省略できる。いくつかの領域についてのみ、より詳細な説明が必要であり、以下に与えられる。
動作中、場合によっては、ソースコーダ(530)は、「参照ピクチャ」として指定されたビデオシーケンスからの1つまたは複数の以前に符号化されたピクチャを参照して入力ピクチャを予測的に符号化する動き補償予測符号化を実行し得る。このようにして、符号化エンジン(532)は、入力ピクチャのピクセルブロックと、入力ピクチャに対する予測参照として選択され得る参照ピクチャのピクセルブロックとの間の差分を符号化する。
ローカル・ビデオ・デコーダ(533)は、ソースコーダ(530)によって作成されたシンボルに基づいて、参照ピクチャとして指定され得るピクチャの符号化されたビデオデータを復号し得る。符号化エンジン(532)の動作は、損失の多いプロセスであることが有利であり得る。符号化されたビデオデータがビデオデコーダ(図5には図示せず)で復号され得るとき、再構築されたビデオシーケンスは、通常、いくつかのエラーを伴うソース・ビデオ・シーケンスのレプリカであり得る。ローカル・ビデオ・デコーダ(533)は、参照ピクチャに対してビデオデコーダによって実行され得る復号プロセスを複製し、再構築された参照ピクチャを参照ピクチャキャッシュ(534)に格納させ得る。このようにして、ビデオエンコーダ(503)は、遠端ビデオデコーダによって取得される再構築参照ピクチャとして(送信エラーはない)、共通のコンテンツを有する再構築参照ピクチャのコピーをローカルに格納し得る。
予測器(535)は、符号化エンジン(532)の予測検索を実行しうる。すなわち、符号化される新しいピクチャについて、予測器(535)は、(候補参照ピクセルブロックとして)サンプルデータまたは参照ピクチャの動きベクトル、ブロック形状などのあるメタデータについて参照ピクチャメモリ(534)を検索することができ、これらは新しいピクチャの適切な予測参照として役立ちうる。予測器(535)は、適切な予測参照を見つけるために、サンプルブロックのピクセルブロックごとに動作しうる。場合によっては、予測器(535)によって得られた検索結果によって決定されるように、入力ピクチャは、参照ピクチャメモリ(534)に格納された複数の参照ピクチャから引き出された予測参照を有し得る。
コントローラ(550)は、たとえば、ビデオデータを符号化するために使用されるパラメータおよびサブグループパラメータの設定を含む、ソースコーダ(530)の符号化動作を管理しうる。
前述のすべての機能ユニットの出力は、エントロピーコーダ(545)でエントロピー符号化を受けることができる。エントロピーコーダ(545)は、たとえばハフマン符号化、可変長符号化、算術符号化などの技術に従ってシンボルを可逆圧縮することにより、様々な機能ユニットによって生成されたシンボルを符号化されたビデオシーケンスに変換する。
送信器(540)は、エントロピーコーダ(545)によって作成された符号化されたビデオシーケンスをバッファリングして、符号化されたビデオデータを格納するストレージデバイスへのハードウェア/ソフトウェアリンクであり得る通信チャネル(560)を介した送信に備えることができる。送信器(540)は、ビデオコーダ(503)からの符号化されたビデオデータを、送信される他のデータ、たとえば符号化オーディオデータおよび/または補助データストリーム(ソースは図示せず)とマージすることができる。
コントローラ(550)は、ビデオエンコーダ(503)の動作を管理しうる。符号化中、コントローラ(550)は、各符号化されたピクチャに対してある符号化されたピクチャタイプを割り当てることができ、これは、それぞれのピクチャに適用され得る符号化手法に影響を及ぼし得る。たとえば、多くの場合、ピクチャは次のピクチャタイプのいずれかを割り当てられ得る。
イントラピクチャ(Iピクチャ)は、シーケンス内の他のピクチャを予測のソースとして使用せずに符号化および復号できるものであり得る。一部のビデオコーデックでは、たとえばIndependent Decoder Refresh(「IDR」)ピクチャなど、様々なタイプのイントラピクチャを使用できる。当業者は、Iピクチャのそれらの変形およびそれらのそれぞれの用途および特徴を知っている。
予測ピクチャ(Pピクチャ)は、各ブロックのサンプル値を予測するために最大で1つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して符号化および復号され得るものであり得る。
双方向予測ピクチャ(Bピクチャ)は、各ブロックのサンプル値を予測するために最大で2つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して符号化および復号され得るものであり得る。同様に、複数の予測ピクチャは、単一のブロックの再構築に3つ以上の参照ピクチャと関連メタデータを使用できる。
ソースピクチャは、通常、空間的に複数のサンプルブロック(たとえば、それぞれ4×4、8×8、4×8、または16×16サンプルのブロック)に分割され、ブロックごとに符号化される。ブロックは、ブロックのそれぞれのピクチャに適用される符号化割り当てによって決定された、他の(すでに符号化された)ブロックを参照して予測的に符号化され得る。たとえば、Iピクチャのブロックは非予測的に符号化されてもよいし、または同じピクチャのすでに符号化されたブロック(空間予測またはイントラ予測)を参照して予測的に符号化されてもよい。Pピクチャのピクセルブロックは、空間的予測を介して、または1つの以前に符号化された参照ピクチャを参照して時間的予測を介して、予測的に符号化され得る。Bピクチャのブロックは、空間的予測を介して、または1つまたは2つの以前に符号化された参照ピクチャを参照して時間的予測を介して、予測的に符号化され得る。
ビデオエンコーダ(503)は、所定のビデオ符号化技術またはITU-T勧告H.265などの標準に従って符号化動作を実行することができる。その動作において、ビデオエンコーダ(503)は、入力ビデオシーケンスにおける時間的および空間的冗長性を活用する予測符号化動作を含む、様々な圧縮動作を実行することができる。したがって、符号化されたビデオデータは、ビデオ符号化技術または使用されている標準で指定された構文に従うことができる。
一実施形態では、送信器(540)は、符号化されたビデオとともに追加のデータを送信することができる。ソースコーダ(530)は、そのようなデータを、符号化されたビデオシーケンスの一部として含み得る。追加データは、時間的/空間的/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には輝度予測ブロック(PB)と2つの色差PBが含まれる。一実施形態では、符号化(符号化/復号)における予測動作は、予測ブロックの単位で実行される。輝度予測ブロックを予測ブロックの例として使用すると、予測ブロックは、8×8ピクセル、16×16ピクセル、8×16ピクセル、16×8ピクセルなどのピクセルの値(輝度値など)のマトリックスを含む。
図6は、本開示の他の実施形態によるビデオエンコーダ(603)の図を示す。ビデオエンコーダ(603)は、ビデオピクチャのシーケンス内の対象ビデオピクチャ内のサンプル値の処理ブロック(たとえば、予測ブロック)を受け取り、処理ブロックを、符号化されたビデオシーケンスの一部である符号化されたピクチャに符号化するように構成される。一例では、ビデオエンコーダ(603)は、図3の例におけるビデオエンコーダ(303)の代わりに使用される。
HEVCの例では、ビデオエンコーダ(603)は、8×8のサンプルなどの予測ブロックなどの処理ブロックのサンプル値の行列を受け取る。ビデオエンコーダ(603)は、たとえば、レート歪み最適化を使用して、イントラモード、インターモード、または双方向予測モードを使用して、処理ブロックが最良に符号化されるかどうかを決定する。処理ブロックがイントラモードで符号化される場合、ビデオエンコーダ(603)は、イントラ予測手法を使用して、処理ブロックを符号化されたピクチャに符号化することができ、処理ブロックがインターモードまたは双方向予測モードで符号化される場合、ビデオエンコーダ(603)は、それぞれインター予測または双方向予測手法を使用して、処理ブロックを符号化されたピクチャに符号化することができる。いくつかのビデオ符号化技術では、マージモードは、動きベクトルが予測(predictors)の外の符号化された動きベクトル成分の恩恵を受けることなく1つまたは複数の動きベクトル予測から導き出される、ピクチャ間予測サブモードでありうる。いくつかの他のビデオ符号化技術では、対象ブロックに適用可能な動きベクトル成分が存在しうる。一例では、ビデオエンコーダ(603)は、処理ブロックのモードを決定するためのモード決定モジュール(図示せず)などの他の構成要素を含む。
図6の例では、ビデオエンコーダ(603)は、図6に示されるように一緒に結合されたインターエンコーダ(630)、イントラエンコーダ(622)、残差計算器(623)、スイッチ(626)、残差エンコーダ(624)、一般コントローラ(621)およびエントロピーエンコーダ(625)を含む。
インターエンコーダ(630)は、対象ブロック(たとえば、処理ブロック)のサンプルを受け取り、そのブロックを参照ピクチャ(たとえば、前のピクチャおよび後のピクチャのブロック)の1つまたは複数の参照ブロックと比較し、インター予測情報(たとえば、インター符号化手法、動きベクトル、マージモード情報による冗長情報の記述)を生成し、任意の適切な手法を使用してインター予測情報に基づいてインター予測結果(たとえば予測ブロック)を計算するように構成される。いくつかの例では、参照ピクチャは、符号化されたビデオ情報に基づいて復号される復号された参照ピクチャである。
イントラエンコーダ(622)は、対象ブロック(たとえば、処理ブロック)のサンプルを受け取るように構成されており、場合によっては、ブロックを同じピクチャ内のすでに符号化されているブロックと比較し、変換後に量子化係数を生成し、場合によってはイントラ予測情報(たとえば、1つまたは複数のイントラ符号化手法によるイントラ予測方向情報)も生成するように構成される。一例では、イントラエンコーダ(622)はまた、同じピクチャ内のイントラ予測情報および参照ブロックに基づいてイントラ予測結果(たとえば、予測ブロック)を計算する。
一般コントローラ(621)は、一般制御データを決定し、一般制御データに基づいてビデオエンコーダ(603)の他の構成要素を制御するように構成される。一例では、一般コントローラ(621)は、ブロックのモードを決定し、モードに基づいてスイッチ(626)に制御信号を提供する。たとえば、モードがイントラモードである場合、一般コントローラ(621)は、スイッチ(626)を制御して、残差計算器(623)が使用するイントラモードの結果を選択し、エントロピーエンコーダ(625)を制御してイントラ予測情報を選択し、ビットストリームにイントラ予測情報を含め、そしてモードがインターモードである場合、一般コントローラ(621)は、スイッチ(626)を制御して、残差計算器(623)が使用するインター予測結果を選択し、エントロピーエンコーダ(625)を制御してインター予測情報を選択し、ビットストリームにインター予測情報を含める。
残差計算器(623)は、受信したブロックと、イントラエンコーダ(622)またはインターエンコーダ(630)から選択された予測結果との間の差分(残差データ)を計算するように構成される。残差エンコーダ(624)は、残差データに基づいて動作して、残差データを符号化して変換係数を生成するように構成される。一例では、残差エンコーダ(624)は、残差データを空間領域から周波数領域に変換し、変換係数を生成するように構成される。次に、量子化された変換係数を取得するために、変換係数に量子化処理を行う。様々な実施形態では、ビデオエンコーダ(603)はまた、残差デコーダ(628)を含む。残差デコーダ(628)は、逆変換を実行し、復号された残差データを生成するように構成される。復号された残差データは、イントラエンコーダ(622)およびインターエンコーダ(630)によって適切に使用することができる。たとえば、インターエンコーダ(630)は、復号された残差データおよびインター予測情報に基づいて復号されたブロックを生成することができ、イントラエンコーダ(622)は、復号された残差データおよびイントラ予測情報に基づいて復号されたブロックを生成することができる。復号されたブロックは、復号されたピクチャを生成するために適切に処理され、復号されたピクチャは、メモリ回路(図示せず)にバッファリングされ、いくつかの例では参照ピクチャとして使用され得る。
エントロピーエンコーダ(625)は、符号化されたブロックを含むようにビットストリームをフォーマットするように構成される。エントロピーエンコーダ(625)は、HEVC標準などの適切な標準に従って様々な情報を含むように構成される。一例では、エントロピーエンコーダ(625)は、一般制御データ、選択された予測情報(たとえば、イントラ予測情報またはインター予測情報)、残差情報、およびビットストリーム内の他の適切な情報を含むように構成される。開示された主題によれば、インターモードまたは双方向予測モードのいずれかのマージサブモードでブロックを符号化する場合、残差情報はないことに留意されたい。
図7は、本開示の他の実施形態によるビデオデコーダ(710)の図を示す。ビデオデコーダ(710)は、符号化されたビデオシーケンスの一部である符号化されたピクチャを受け取り、符号化されたピクチャを復号して再構築されたピクチャを生成するように構成される。一例では、ビデオデコーダ(710)は、図3の例におけるビデオデコーダ(310)の代わりに使用される。
図7の例では、ビデオデコーダ(710)は、図7に示されるように一緒に結合されたエントロピーデコーダ(771)、インターデコーダ(780)、残差デコーダ(773)、再構築モジュール(774)、およびイントラデコーダ(772)を含む。
エントロピーデコーダ(771)は、符号化されたピクチャから、符号化されたピクチャを構成する構文要素を表すいくつかのシンボルを再構築するように構成することができる。そのようなシンボルは、たとえば、ブロックが符号化されるモード(たとえば、イントラモード、インターモード、双方向予測モード、マージサブモードまたは他のサブモードにおけるインターモードおよび双方向予測モード)、イントラデコーダ(772)またはインターデコーダ(780)それぞれによる予測に使用されるあるサンプルまたはメタデータを識別できる予測情報(たとえば、イントラ予測情報またはインター予測情報)、たとえば量子化された変換係数の形式の残差情報などを含むことができる。一例では、予測モードがインター予測モードまたは双方向予測モードである場合、インター予測情報はインターデコーダ(780)に提供され、予測タイプがイントラ予測タイプである場合、イントラ予測情報はイントラデコーダ(772)に提供される。残差情報は逆量子化を受ける可能性があり、残差デコーダ(773)に提供される。
インターデコーダ(780)は、インター予測情報を受け取り、インター予測情報に基づいてインター予測結果を生成するように構成される。
イントラデコーダ(772)は、イントラ予測情報を受け取り、イントラ予測情報に基づいて予測結果を生成するように構成される。
残差デコーダ(773)は、逆量子化を実行して逆量子化変換係数を抽出し、逆量子化変換係数を処理して残差を周波数領域から空間領域に変換するように構成される。残差デコーダ(773)はまた、(量子化パラメータ(QP)を含むために)ある制御情報を必要とする場合があり、その情報は、エントロピーデコーダ(771)によって提供される場合がある(データパスは、低ボリューム制御情報のみであるため、図示されてない)。
再構築モジュール(774)は、空間領域において、残差デコーダ(773)によって出力された残差と(場合によってはインターまたはイントラ予測モジュールによって出力された)予測結果とを組み合わせて再構築されたブロックを形成するように構成され、再構築されたブロックは再構築されたピクチャの一部である可能性があり、再構築されたピクチャは再構築されたビデオの一部である可能性がある。視覚的品質を改善するために、デブロッキング操作などの他の適切な操作を実行できることに留意されたい。
ビデオエンコーダ(303)、(503)および(603)、ならびにビデオデコーダ(310)、(410)および(710)は、任意の適切な手法を使用して実装できることに留意されたい。一実施形態では、ビデオエンコーダ(303)、(503)および(603)、ならびにビデオデコーダ(310)、(410)および(710)は、1つまたは複数の集積回路を使用して実装できる。他の実施形態では、ビデオエンコーダ(303)、(503)および(603)、ならびにビデオデコーダ(310)、(410)および(710)は、ソフトウェア命令を実行する1つまたは複数のプロセッサを使用して実装できる。
非サブブロックモードで符号化されたブロックの場合、動きベクトル予測リスト(motion vector predictor list)は次のように構築できる。(1)空間的および時間的に近傍のブロックからの候補予測(candidate predictors)、(2)HMVPバッファからの候補予測、(3)既存の動きベクトル予測のペアワイズ平均からの候補予測、(4)異なる参照ピクチャを使用したゼロ動きベクトル予測。これらの候補予測の例は上述のとおりである。
動きベクトル予測リストを構築するとき、可用性チェックおよび冗長性チェックを含む一連の操作が実行され得る。可用性チェックは、空間または時間隣接ブロックがインター予測モードで符号化されているかどうかをチェックする。冗長性チェックは、新しい動きベクトル予測が、動きベクトル予測リスト内の既存の動きベクトル予測と重複しているかどうかをチェックする。たとえば、可用性チェックおよび冗長性チェックは、空間的および時間的候補に対して実行される。冗長性チェックは、既存の候補に対して実行される。さらに、HMVPバッファからの候補について、既存の空間的/時間的候補に対する冗長性チェックが実行される。動きベクトル予測リストが長い場合、これらの操作の実行には数サイクルが必要になる場合がある。最悪の場合、ピクチャは多くの小さいブロックに分割される。これらすべての小さいブロックの動きベクトル予測リストの構築を完了するために必要なサイクルの総数は、望ましい値よりも多い場合がある。たとえば、各符号化ブロックのマージ候補リストは、隣接ブロックと同じではない場合がある。したがって、特に小さいブロックの場合、操作の数を減らし、動きベクトル予測リストの構築プロセスを単純化することが望ましい。
本開示は、いくつかのブロックサイズの制約が満たされる場合に、動きベクトル予測リストの構築プロセスを単純化するための改善技術(たとえば、マージモード、スキップモード、またはAMVPモード)を与える。すなわち、対象ブロックが小さいブロックと考えられる場合、対象ブロックの動きベクトル予測リストの構築プロセスを単純化して、含まれる動きベクトル予測の数を減らしたり、実行される可用性チェックおよび/または冗長性チェックの操作を少なくしたりすることができる。
様々なしきい値を使用して、小さいブロックを示すことができる。一実施形態では、対象ブロックのブロック面積がしきい値以下である場合、対象ブロックは小さいブロックと考えられうる。他の実施形態では、対象ブロックがさらに複数のより小さいブロックに分割され、複数のより小さいブロックのうちの1つがしきい値以下である場合、対象ブロックは小さいブロックと考えられる。しきい値は、32または64の輝度サンプルなど、予め設定された数の輝度サンプルにすることができる。しきい値は、対象ピクチャのピクチャ解像度に対応することができる。たとえば、解像度の高いピクチャの場合、解像度の低いピクチャのしきい値に比べてしきい値を大きくすることができる。さらに、しきい値は、シーケンス・パラメータ・セット(SPS)、ピクチャパラメータセット(PPS)、スライスまたはタイルヘッダなどのようなビットストリームまたは符号化されたビデオシーケンスで通知されうる。
本開示の態様によれば、対象ブロックが小さいブロックと考えられる場合、対象ブロックの動きベクトル予測リストの構築プロセスは、小さいブロックとは考えられないブロックと比較して、含まれる動きベクトル予測の数が減るように単純化することができる。
空間動きベクトル予測、時間動きベクトル予測、および履歴ベースの動きベクトル予測などの動きベクトル予測カテゴリは、それぞれ、複数の動きベクトル予測を含むことができる。一実施形態では、対象ブロックが小さいブロックと考えられる場合、これらのカテゴリの1つまたは複数からの動きベクトル予測の数を減らすことができる。たとえば、各動きベクトル予測カテゴリについて、それぞれの複数の動きベクトル予測のサブセットが動きベクトル予測リストに含まれ、その結果、動きベクトル予測リストは、すべての動きベクトル予測をリストに含めるよりも短い。動きベクトル予測のサブセットは、各またはいくつかのカテゴリからの最初のN個(たとえば、N=1、2など)の候補であり得、ここで、Nは、それぞれのカテゴリの可能な候補の数よりも小さい整数である。しかしながら、他の所定の候補が、他の実施形態において選択され得る。各カテゴリまたはいくつかのカテゴリの数Nは、同じであっても異なっていてもよい。さらに、各カテゴリまたはいくつかのカテゴリの動きベクトル予測のサブセットの選択は、同じであっても異なっていてもよい。一例では、最初のN個の空間的および/または時間的候補のみが動きベクトル予測リスト内で許可され、ここで、数Nは、可能な空間的および時間的候補の数よりも小さい。いくつかの例では、Nは、空間的候補と時間的候補とで異なる場合がある。
一実施形態では、空間的動きベクトル予測カテゴリおよび時間的動きベクトル予測カテゴリについて、空間的動きベクトル予測のサブセットおよび時間的動きベクトル予測のサブセットが動きベクトル予測リストに含まれ、HMVP候補などが続く。他の実施形態では、動きベクトル予測リストは、空間的および/または時間的動きベクトル予測を含まない。すなわち、空間的および/または時間的候補は許可されず、動きベクトル予測リストはHMVP候補で始まる。
本開示の態様によれば、対象ブロックが小さいブロックと考えられる場合、対象ブロックの動きベクトル予測リストの構築プロセスは、実行される冗長性チェック操作などの操作が少なくなるように単純化することができる。冗長性チェックは、新しい動きベクトル予測を、動きベクトル予測リスト内の既存の動きベクトル予測と比較する。
一実施形態では、2つの空間的および/または時間的候補間の1つまたは複数の冗長性チェックをなくすことができる。たとえば、動きベクトル予測リストは、可能な空間的動きベクトル予測と動きベクトル予測リスト内の既存の空間的動きベクトル予測との間の冗長性チェックを実行しない。他の例では、動きベクトル予測リストは、可能な時間的動きベクトル予測と、動きベクトル予測リスト内の既存の時間的動きベクトル予測との間の冗長性チェックを実行しない。
一実施形態では、HMVPバッファからの候補と空間的および/または時間的隣接位置からの既存の候補との間の1つまたは複数の冗長性チェックをなくすことができる。たとえば、動きベクトル予測リストは、可能な履歴ベースの動きベクトル予測と、動きベクトル予測リスト内の既存の空間的動きベクトル予測との間の冗長性チェックを実行しない。他の例では、動きベクトル予測リストは、可能な履歴ベースの動きベクトル予測と、動きベクトル予測リスト内の既存の時間的動きベクトル予測との間の冗長性チェックを実行しない。
一実施形態では、冗長性チェックは実行されない。すなわち、動きベクトル予測リストは、冗長性チェックを実行せずに構築される。
図8は、本開示のいくつかの実施形態による、動きベクトル予測リストの構築プロセスを単純化する例示的なプロセス(800)を概説するフローチャートを示す。様々な実施形態では、プロセス(800)は、端末デバイス(210)、(220)、(230)および(240)の処理回路、ビデオエンコーダ(303)の機能を実行する処理回路、ビデオデコーダ(310)の機能を実行する処理回路、ビデオデコーダ(410)の機能を実行する処理回路、イントラ予測モジュール(452)の機能を実行する処理回路、ビデオエンコーダ(503)の機能を実行する処理回路、予測器(535)の機能を実行する処理回路、イントラエンコーダ(622)の機能を実行する処理回路、イントラデコーダ(772)の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、プロセス(800)はソフトウェア命令に実装され、したがって、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(800)を実行する。
プロセス(800)は、一般に、ステップ(S801)で開始することができ、プロセス(800)は、対象ブロックをさらに分割するかどうかを決定する。対象ブロックをそれ以上分割しないと決定された場合、プロセス(800)はステップ(S802)に進み、そうでない場合、プロセス(800)はステップ(S803)に進む。
ステップ(S802)で、プロセス(800)は、対象ブロックのブロック面積がしきい値以下であるかどうかを決定する。対象ブロックのブロック面積がしきい値以下であると決定された場合、プロセス(800)はステップ(S805)に進み、そうでない場合、プロセス(800)はステップ(S806)に進む。
ステップ(S803)で、プロセス(800)は、対象ブロックを複数のより小さいブロックに分割し、次にステップ(S804)に進む。
ステップ(S804)で、プロセス(800)は、複数のより小さいブロックのうちの1つのブロック面積がしきい値以下であるかどうかを決定する。しきい値は、予め設定された数の輝度サンプルにすることも、対象ピクチャのピクチャ解像度に対応させることも、符号化されたビデオシーケンスで信号を送ることもできる。複数の小さいブロックのうちの1つのブロック面積がしきい値以下であると決定された場合、プロセス(800)はステップ(S805)に進み、そうでない場合、プロセス(800)はステップ(S806)に進む。
いくつかの実施形態では、ステップ(S801)および/またはステップ(S803)は任意であり、実行されない場合がある。たとえば、対象ブロックの復号された予測情報が対象ブロックのパーティションサイズを示す場合、パーティションサイズは、対象ブロックが複数のより小さいブロックにさらに分割されることを示す。プロセス(800)は、パーティションサイズがしきい値以下であるかどうかを決定する。この手順は、ステップ(S804)と同じである。パーティションサイズがしきい値以下であると決定された場合、プロセス(800)はステップ(S805)に進み、そうでない場合、プロセスはステップ(S806)に進む。他の実施形態では、ブロックとしきい値との比較は、ブロック分割がすでに実行された後に実行される。
ステップ(S805)で、プロセス(800)は、第1の数の動きベクトル予測を含む動きベクトル予測リストを構築し、次にステップ(S807)に進む。
ステップ(S806)で、プロセス(800)は、第2の数の動きベクトル予測を含む動きベクトル予測リストを構築する。第2の数は第1の数よりも大きい。すなわち、動きベクトル予測リストは、たとえば上記の方法で、第2の数の動きベクトル予測を第1の数の動きベクトル予測まで減らすことによって単純化される。次に、プロセス(800)はステップ(S807)に進む。
ステップ(S807)で、プロセス(800)は、動きベクトル予測リストに基づいて対象ブロックを再構築する。その後、プロセス(800)は終了する。
図9は、本開示のいくつかの実施形態による例示的なプロセス(900)を概説するフローチャートを示す。様々な実施形態では、プロセス(900)は、端末デバイス(210)、(220)、(230)および(240)の処理回路、ビデオエンコーダ(303)の機能を行う処理回路、ビデオデコーダ(310)の機能を行う処理回路、ビデオデコーダ(410)の機能を行う処理回路、イントラ予測モジュール(452)の機能を行う処理回路、ビデオエンコーダ(503)の機能を行う処理回路、予測器(535)の機能を行う処理回路、イントラエンコーダ(622)の機能を行う処理回路、イントラデコーダ(772)の機能を行う処理回路などの処理回路によって実行される。いくつかの実施形態では、プロセス(900)はソフトウェア命令で実装され、したがって、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(900)を行う。
プロセス(900)は、一般に、ステップ(S901)で開始することができ、プロセス(900)は、符号化されたビデオシーケンスの一部である対象ピクチャ内の対象ブロックための予測情報を復号する。予測情報を復号した後、プロセス(900)はステップ(S902)に進む。
ステップ(S902)で、プロセス(900)は、対象ブロックの面積がしきい値以下であるかどうかを決定する。次に、プロセス(900)はステップ(S903)に進む。しきい値は、32または64の輝度サンプルなど、予め設定された数の輝度サンプルでありうる。しきい値は、対象ピクチャのピクチャ解像度に対応しうる。しきい値は、符号化されたビデオシーケンスで通知されうる。
ステップ(S903)で、プロセス(900)は、動きベクトル予測の数を含む動きベクトル予測リストを構築する。動きベクトル予測の数は、対象ブロックの面積がしきい値以下であると決定されたかどうかに基づいている。一実施形態では、対象ブロックの面積がしきい値以下であると決定された場合、動きベクトル予測リストに含まれる動きベクトル予測の数は第1の数であり、そうでない場合、動きベクトル予測リストに含まれる動きベクトル予測の数は、第1の数よりも大きい第2の数である。
いくつかの実施形態では、予測情報は、対象ブロックが複数のより小さいブロックにさらに分割されることを示し、プロセス(900)は、対象ブロックを複数のより小さいブロックに分割し、複数のより小さいブロックのうちの1つの面積がしきい値以下であるかどうかを決定する。プロセス(900)は、複数のより小さいブロックのうちの1つの面積がしきい値以下であると決定されるかどうかに基づいて、動きベクトル予測リストをさらに構築する。複数の小さいブロックのうちの1つの面積がしきい値以下であると決定された場合、動きベクトル予測リストに含まれる動きベクトル予測の数は第1の数であり、そうでない場合、動きベクトル予測リストに含まれる動きベクトル予測の数は第2の数である。
いくつかの実施形態では、予測情報は、対象ブロックのパーティションサイズを示す。そのような実施形態では、プロセス(900)は、パーティションサイズがしきい値以下であるかどうかを決定する。プロセス(900)は、パーティションサイズがしきい値以下であると決定されたかどうかに基づいて、動きベクトル予測リストをさらに構築する。パーティションサイズがしきい値以下であると決定された場合、動きベクトル予測リストに含まれる動きベクトル予測の数は第1の数であり、そうでない場合、動きベクトル予測リストに含まれる動きベクトル予測の数は、第2の数である。
一実施形態では、第1の数の動きベクトル予測を含む動きベクトル予測リストは、空間的または時間的動きベクトル予測の第1のセットに基づいて構築される。空間的または時間的動きベクトル予測の第1のセットは、第2の数の動きベクトル予測を含む動きベクトル予測リストを構築するために使用される空間的または時間的動きベクトル予測の第2のセットよりも小さい。
一実施形態では、第1の数の動きベクトル予測を含む動きベクトル予測リストは、空間的または時間的動きベクトル予測を含まない。
一実施形態では、第1の数の動きベクトル予測を含む動きベクトル予測リストを構築するために、いくつかの冗長性チェックが削減される。たとえば、第1の数の冗長性チェックを実行して、第1の数の動きベクトル予測を含む動きベクトル予測リストを構築し、第2の数の冗長性チェックを実行して、第2の数の動きベクトル予測を含む動きベクトル予測リストを構築する。第1の数の冗長性チェックは、第2の数の冗長性チェックよりも少ない。
一実施形態では、第1の数の冗長性チェックは、(i)可能な空間的動きベクトル予測と動きベクトル予測リスト内の第1の既存の空間動きベクトル予測との間、(ii)可能な時間的動きベクトル予測と動きベクトル予測リスト内の第1の既存の時間的動きベクトル予測との間、(iii)可能な履歴ベースの動きベクトル予測と動きベクトル予測リスト内の第1または他の既存の空間動きベクトル予測との間、および(iv)可能な履歴ベースの動きベクトル予測と動きベクトル予測リスト内の第1または他の既存の時間的動きベクトル予測との間の比較の少なくとも1つを含まない。
一実施形態では、第1の数の動きベクトル予測を含む動きベクトル予測リストは、冗長性チェックなしで構築される。
一実施形態では、動きベクトル予測の少なくとも1つは、動きベクトル予測の少なくとも1つの参照ブロックが対象ピクチャ内にあるように、対象ピクチャを参照ピクチャとして使用する。
ステップ(S904)で、プロセス(900)は、動きベクトル予測リストに基づいて対象ブロックを再構築する。
対象ブロックを再構築した後、プロセス(900)は終了する。
上記の実施形態は、動きベクトル予測の数に加えて冗長性チェックの数を減らすことに基づいているが、他の実施形態では、動きベクトル予測の数を減らすことなく、冗長性チェックの数を減らすことができることに留意されたい。
動きベクトルの予測方法は、対象ピクチャとは異なるピクチャを参照ピクチャとして使用することができる。しかしながら、動きベクトル予測またはブロック補償は、対象ピクチャ内の以前に再構築された領域から行われ得る。そのような動きベクトル予測またはブロック補償は、ピクチャ内ブロック補償、対象ピクチャ参照(CPR)、またはブロック内コピー(IBC)と呼ばれることがある。IBC予測モードでは、対象ピクチャ内の対象ブロックと参照ブロックとの間のオフセットを示す変位ベクトルは、ブロックベクトル(BV)と呼ばれる。参照ブロックは、対象ブロックの前にすでに再構築されている。BVは、本出願で説明されているMVと見なすことができることに留意されたい。
上記の手法は、コンピュータ可読命令を使用してコンピュータソフトウェアとして実装でき、1つまたは複数のコンピュータ可読媒体に物理的に格納できる。たとえば、図10は、開示された主題のいくつかの実施形態を実装するのに適したコンピュータシステム(1000)を示す。
コンピュータソフトウェアは、任意の適切な機械コードまたはコンピュータ言語を使用して符号化でき、アセンブリ、コンパイル、リンク、または同様のメカニズムの対象となり、1つまたは複数のコンピュータ中央処理装置(CPU)、グラフィック処理装置(GPU)などによる直接、または解釈、マイクロコードの実行などを通じて実行できる命令を含むコードを作成する。
命令は、たとえば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、モノのインターネットデバイスなどを含む、様々なタイプのコンピュータまたはその構成要素上で実行することができる。
コンピュータシステム(1000)について図10に示される構成要素は、本質的に例示であり、本開示の実施形態を実装するコンピュータソフトウェアの使用または機能の範囲に関していかなる制限も示唆することを意図しない。また、構成要素の構成は、コンピュータシステム(1000)の例示的な実施形態に示されている構成要素のいずれか1つまたはそれらの組み合わせに関する依存性または要件を有するものとして解釈されるべきではない。
コンピュータシステム(1000)は、いくつかのヒューマンインタフェース入力デバイスを含み得る。そのようなヒューマンインタフェース入力デバイスは、たとえば、触覚入力(キーストローク、スワイプ、データグローブの動きなど)、オーディオ入力(音声、拍手など)、視覚入力(ジェスチャーなど)、嗅覚入力(図示せず)など、1人または複数のユーザによる入力に応答し得る。ヒューマン・インタフェース・デバイスを使用して、音声(会話、音楽、環境音など)、画像(スキャンした画像、静止画像カメラから取得される写真画像など)、ビデオ(2次元ビデオ、立体ビデオを含む3次元ビデオなど)など、人間による意識的な入力に必ずしも直接関係しないあるメディアをキャプチャすることもできる。
入力ヒューマン・インタフェース・デバイスは、キーボード(1001)、マウス(1002)、トラックパッド(1003)、タッチ画面(1010)、データグローブ(図示せず)、ジョイスティック(1005)、マイクロフォン(1006)、スキャナ(1007)、カメラ(1008)などを含み得る(それぞれ1つのみ図示)。
コンピュータシステム(1000)はまた、いくつかのヒューマンインタフェース出力デバイスを含み得る。そのようなヒューマンインタフェース出力デバイスは、たとえば、触覚出力、音、光、および嗅覚/味覚を通じて、1人または複数のユーザの感覚を刺激している可能性がある。そのようなヒューマンインタフェース出力デバイスは、触覚出力デバイス(たとえば、タッチ画面(1010)、データグローブ(図示せず)、またはジョイスティック(1005)による触覚フィードバックだが、入力デバイスとして機能しない触覚フィードバックデバイスも存在する可能性がある)、オーディオ出力デバイス(スピーカ(1009)、ヘッドホン(図示せず)など)、視覚出力デバイス(CRT画面、LCD画面、プラズマ画面、OLED画面を含む画面(1010)などであり、それぞれタッチ画面入力機能があってもなくてもよく、それぞれ触覚フィードバック機能があってもなくてもよく、ステレオグラフィック出力、仮想現実の眼鏡(図示せず)、ホログラフィックディスプレイおよびスモークタンク(図示せず)などの手段を介して2次元の視覚的出力または3次元を超える出力を出力できるものもある)、およびプリンタ(図示せず)を含み得る。これらの視覚出力デバイス(画面(1010)など)は、グラフィックアダプタ(1050)を介してシステムバス(1048)に接続されうる。
コンピュータシステム(1000)はまた、人間がアクセス可能なストレージデバイスおよびそれらの関連媒体、たとえば、CD/DVDなどの媒体(1021)とともにCD/DVD ROM/RW(1020)を含む光学媒体、サムドライブ(1022)、取り外し可能なハードドライブまたはソリッド・ステート・ドライブ(1023)、テープおよびフロッピーディスク(図示せず)などのレガシー磁気媒体、セキュリティドングル(図示せず)などの専用のROM/ASIC/PLDベースのデバイスなどを含み得る。
当業者はまた、ここで開示される主題に関連して使用される「コンピュータ可読媒体」という用語は、送信媒体、搬送波、または他の一時的な信号を包含しないことを理解するべきである。
コンピュータシステム(1000)は、1つまたは複数の通信ネットワーク(1055)へのネットワークインタフェース(1054)も含むことができる。1つまたは複数の通信ネットワーク(1055)は、たとえば、無線、有線、光であり得る。さらに、1つまたは複数の通信ネットワーク(1055)は、ローカル、広域、大都市圏、車両および産業、リアルタイム、遅延耐性などであり得る。1つまたは複数のネットワーク(1055)の例は、イーサネット、無線LAN、GSM、3G、4G、5G、LTEなどを含むセルラーネットワークなどのローカル・エリア・ネットワーク、ケーブルテレビ、衛星テレビ、地上波放送テレビを含むTV有線または無線ワイド・エリア・デジタル・ネットワーク、車両用、CANBusを含む産業用などを含む。いくつかのネットワークは一般に、いくつかの一般データポートまたは周辺バス(1049)(たとえば、コンピュータシステム(1000)のUSBポートなど)に接続された外部ネットワーク・インタフェース・アダプタを必要とし、他のものは、一般に、以下に説明するようにシステムバスに接続することにより、コンピュータシステム(1000)のコアに統合される(たとえば、PCコンピュータシステムへのイーサネットインタフェースまたはスマートフォン・コンピュータ・システムへのセルラー・ネットワーク・インタフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム(1000)は他のエンティティと通信できる。このような通信は、単方向、受信のみ(たとえば、放送TV)、単方向送信のみ(たとえば、CANbusからいくつかのCANbusデバイス)、または双方向、たとえば、ローカルエリアまたはワイド・エリア・デジタル・ネットワークを使用した他のコンピュータシステムへの通信である。上記のように、いくつかのプロトコルとプロトコルスタックは、これらのネットワークとネットワークインタフェースのそれぞれで使用できる。
前述のヒューマン・インタフェース・デバイス、ヒューマンアクセス可能ストレージデバイス、およびネットワークインタフェースは、コンピュータシステム(1000)のコア(1040)に接続されうる。
コア(1040)には、1つまたは複数の中央処理装置(CPU)(1041)、グラフィック処理装置(GPU)(1042)、フィールド・プログラマブル・ゲート領域(FPGA)(1043)形式の特殊なプログラマブル処理装置、いくつかのタスク用のハードウェアアクセラレータ(1044)などを含めることができる。これらのデバイスは、読み取り専用メモリ(ROM)(1045)、ランダム・アクセス・メモリ(1046)、ユーザがアクセスできない内部ハードドライブ、SSDなどの内部大容量記憶装置(1047)とともに、システムバス(1048)を介して接続されうる。一部のコンピュータシステムでは、システムバス(1048)に1つまたは複数の物理プラグの形でアクセスして、追加のCPU、GPUなどによる拡張を可能にすることができる。周辺機器は、コアのシステムバス(1048)に直接、または周辺バス(1049)を介して接続されうる。周辺バスのアーキテクチャには、PCI、USBなどが含まれる。
CPU(1041)、GPU(1042)、FPGA(1043)、およびアクセラレータ(1044)は、組み合わせて前述のコンピュータコードを構成できるいくつかの命令を実行できる。そのコンピュータコードは、ROM(1045)またはRAM(1046)に格納できる。移行データはRAM(1046)にも格納できるが、永続データは、たとえば内部大容量記憶装置(1047)に格納できる。1つまたは複数のCPU(1041)、GPU(1042)、大容量記憶装置(1047)、ROM(1045)、RAM(1046)などと密接に関連付けることができるキャッシュメモリを使用することにより、任意のメモリデバイスへの高速格納および取り出しが可能になる。
コンピュータ可読媒体は、様々なコンピュータ実装動作を実行するためのコンピュータコードを内部に有することができる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであり得るか、またはそれらは、コンピュータソフトウェア技術の当業者に周知であり利用可能な種類のものであり得る。
限定ではなく一例として、アーキテクチャ、特にコア(1040)を有するコンピュータシステム(1000)は、1つまたは複数の有形のコンピュータ可読媒体に組み込まれたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果として機能を提供することができる。そのようなコンピュータ可読媒体は、上で紹介したユーザがアクセス可能な大容量記憶装置、およびコア内部大容量記憶装置(1047)やROM(1045)などの非一時的な性質を持つコア(1040)のある記憶装置に関連付けられた媒体であり得る。本開示の様々な実施形態を実装するソフトウェアは、そのようなデバイスに格納され、コア(1040)によって実行され得る。コンピュータ可読媒体は、特定のニーズに従って、1つまたは複数のメモリデバイスまたはチップを含むことができる。ソフトウェアは、コア(1040)および特にその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM(1046)に格納されたデータ構造の定義やソフトウェアで定義されたプロセスに従ってそのようなデータ構造を変更することを含む、ここで説明する特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えて、または代替として、コンピュータシステムは、ここで説明する特定のプロセスまたは特定のプロセスの特定の部分を実行するために、ソフトウェアの代わりにまたはソフトウェアと一緒に動作することができる回路(たとえばアクセラレータ(1044))にハードワイヤードまたは他の方法で組み込まれたロジックの結果として機能を提供できる。ソフトウェアへの言及はロジックを含むことができ、必要に応じてその逆も可能である。コンピュータ可読媒体への言及は、実行のためのソフトウェア、実行のためのロジックを具体化する回路、またはその両方を必要に応じて格納する回路(集積回路(IC)など)を包含することができる。本開示は、ハードウェアとソフトウェアの任意の適切な組み合わせを包含する。
本開示はいくつかの例示的な実施形態を説明してきたが、本開示の範囲内にある変更、置換、および様々な代替均等物が存在する。したがって、当業者は、本明細書では明示的に示されていないか、または記載されていないが、本開示の原理を具現化し、したがってその精神および範囲内にある多数のシステムおよび方法を考案できることが理解されよう。
付録A:頭字語
AMVP:Advanced Motion Vector Prediction(高度な動きベクトル予測)
ASIC:Application-Specific Integrated Circuit(特定用途向け集積回路)
BMS:Benchmark Set(ベンチマークセット)
BS:Boundary Strength(境界強度)
BV:Block Vector(ブロックベクトル)
CANBus:Controller Area Network Bus(コントローラ・エリア・ネットワーク・バス)
CD:Compact Disc(コンパクトディスク)
CPR:Current Picture Referencing(対象ピクチャ参照)
CPU:Central Processing Units(中央処理装置)
CRT:Cathode Ray Tube(陰極線管)
CTB:Coding Tree Blocks(符号化ツリーブロック)
CTU:Coding Tree Units(符号化ツリーユニット)
CU:Coding Unit(符号化ユニット)
DPB:Decoder Picture Buffer(デコーダピクチャバッファ)
DVD:Digital Video Disc(デジタル・ビデオ・ディスク)
FPGA:Field Programmable Gate Areas(フィールド・プログラマブル・ゲート領域)
GOP:Groups of Pictures (Group of Pictures)
GPU:Graphics Processing Units(グラフィック処理ユニット)
GSM:Global System for Mobile communications(汎ヨーロッパデジタル移動通信システム)
HDR:High Dynamic Range(ハイ・ダイナミック・レンジ)
HEVC:High Efficiency Video Coding(高効率ビデオ符号化)
HRD:Hypothetical Reference Decoder(仮想参照デコーダ)
IBC:Intra Block Copy(ブロック内コピー)
IC:Integrated Circuit(集積回路)
JEM:Joint Exploration Model(共同探査モデル)
LAN:Local Area Network(ローカル・エリア・ネットワーク)
LCD:Liquid-Crystal Display(液晶ディスプレイ)
LIC:Local Illumination Compensation(局所照明補正)
LTE:Long-Term Evolution(ロングタームエボリューション)
MR-SAD:Mean-Removed Sum of Absolute Difference(絶対差の平均除去和)
MR-SATD:Mean-Removed Sum of Absolute (Hadamard-Transformed Difference絶対アダマール変換された差の平均除去和)
MV:Motion Vector(動きベクトル)
OLED:Organic Light-Emitting Diode(有機発光ダイオード)
PB:Prediction Blocks(予測ブロック)
PCI:Peripheral Component Interconnect(周辺機器相互接続)
PLD:Programmable Logic Device(プログラマブル・ロジック・デバイス)
PPS:Picture Parameter Set(ピクチャパラメータセット)
PU:Prediction Units(予測ユニット)
RAM:Random Access Memory(ランダム・アクセス・メモリ)
ROM:Read-Only Memory(読み取り専用メモリ)
SCC:Screen Content Coding(画面コンテンツ符号化)
SDR:Standard Dynamic Range(標準ダイナミックレンジ)
SEI:Supplementary Enhancement Information(付加拡張情報)
SMVP:Spatial Motion Vector Predictor(空間的動きベクトル予測)
SNR:Signal Noise Ratio(信号ノイズ比)
SPS:Sequence Parameter Set(シーケンス・パラメータ・セット)
SSD:Solid-state Drive(ソリッド・ステート・ドライブ)
TMVP:Temporal Motion Vector Predictor(時間的動きベクトル予測)
TU:Transform Units(変換ユニット)
USB:Universal Serial Bus(ユニバーサル・シリアル・バス)
VUI:Video Usability Information(ビデオユーザビリティ情報)
VVC:Versatile Video Coding(多用途ビデオ符号化)
111 対象ブロック
121 同一位置のブロック
131 対象ブロック
141 対象ピクチャ
142 対象ブロック
144 サブCU
149 動きシフト
151 同一位置のピクチャ
152 同一位置のブロック
154 サブCU
200 通信システム
210 端末デバイス
220 端末デバイス
230 端末デバイス
240 端末デバイス
250 通信ネットワーク
301 ビデオソース
302 ビデオピクチャのストリーム
303 ビデオエンコーダ
304 符号化されたビデオデータ
305 ストリーミングサーバ
306 クライアントサブシステム
307 コピー
308 クライアントサブシステム
309 着信コピー、ビデオデータ
310 ビデオデコーダ
311 ビデオピクチャの出力ストリーム
312 ディスプレイ
313 キャプチャサブシステム
320 電子デバイス
330 電子デバイス
401 チャネル
410 ビデオデコーダ
412 レンダリングデバイス
415 バッファメモリ
420 パーサ
421 シンボル
430 電子デバイス
431 受信器
451 スケーラ/逆変換ユニット
452 イントラピクチャ予測ユニット、イントラ予測モジュール
453 動き補償予測ユニット
455 アグリゲータ
456 ループフィルタユニット
457 参照ピクチャメモリ
458 対象ピクチャバッファ
501 ビデオソース
503 ビデオエンコーダ
520 電子デバイス
530 ソースコーダ
532 符号化エンジン
533 デコーダ
534 参照ピクチャメモリ
535 予測器
540 送信器
543 符号化されたビデオシーケンス
545 エントロピーコーダ
550 コントローラ
560 通信チャネル
603 ビデオエンコーダ
621 一般コントローラ
622 イントラエンコーダ
623 残差計算器
624 残差エンコーダ
625 エントロピーエンコーダ
626 スイッチ
628 残差デコーダ
630 インターエンコーダ
710 ビデオデコーダ
771 エントロピーデコーダ
772 イントラデコーダ
773 残差デコーダ
774 再構築モジュール
780 インターデコーダ
800 プロセス
900 プロセス
1000 コンピュータシステム、アーキテクチャ
1001 キーボード
1002 マウス
1003 トラックパッド
1005 ジョイスティック
1006 マイク
1007 スキャナ
1008 カメラ
1009 スピーカ
1010 タッチ画面
1020 CD/DVD ROM/RW
1021 CD/DVD
1022 サムドライブ
1023 取り外し可能なハードドライブまたはソリッド・ステート・ドライブ
1040 コア
1041 中央処理装置(CPU)
1042 グラフィック処理装置(GPU)
1043 フィールド・プログラマブル・ゲート領域(FPGA)
1044 ハードウェアアクセラレータ
1045 読み取り専用メモリ(ROM)
1046 ランダム・アクセス・メモリ
1047 コア内部大容量記憶装置
1048 システムバス
1049 周辺バス
1050 グラフィックアダプタ
1054 ネットワークインタフェース
1055 通信ネットワーク

Claims (20)

  1. デコーダにおけるビデオ復号のための方法であって、
    符号化されたビデオシーケンスの一部である対象ピクチャ内の対象ブロックについて予測情報を復号するステップと、
    前記対象ブロックの面積がしきい値以下であるかどうかを決定するステップと、
    動きベクトル予測の数を含む動きベクトル予測リストを構築するステップであって、動きベクトル予測の前記数は、前記対象ブロックの前記面積が前記しきい値以下であると決定されるかどうかに基づく、ステップと、
    前記動きベクトル予測リストに基づいて前記対象ブロックを再構築するステップと、
    を含む、方法。
  2. 前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は、前記対象ブロックの前記面積が前記しきい値以下であると決定された場合は第1の数であり、
    前記対象ブロックの前記面積が前記しきい値よりも大きいと決定された場合、前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は、前記第1の数よりも大きい第2の数である、
    請求項1に記載の方法。
  3. 前記予測情報が前記対象ブロックのパーティションサイズを示す場合、前記構築は、
    前記パーティションサイズが前記しきい値以下であると決定されたかどうかに基づいて前記動きベクトル予測リストを構築するステップをさらに含み、
    前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は、前記パーティションサイズが前記しきい値以下であると決定された場合は前記第1の数であり、
    前記パーティションサイズが前記しきい値よりも大きいと決定された場合、前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は前記第2の数である、
    請求項2に記載の方法。
  4. 前記しきい値は、予め設定された数の輝度サンプルである、請求項1に記載の方法。
  5. 前記しきい値は、前記対象ピクチャのピクチャ解像度に対応する、請求項1に記載の方法。
  6. 前記しきい値は、前記符号化されたビデオシーケンスで通知される、請求項1に記載の方法。
  7. 前記第1の数の動きベクトル予測を含む前記動きベクトル予測リストは、空間的または時間的動きベクトル予測の第1のセットに基づいて構築され、空間的または時間的動きベクトル予測の前記第1のセットは、前記第2の数の動きベクトル予測を含む前記動きベクトル予測リストを構築するために使用される空間的または時間的動きベクトル予測の第2のセットよりも小さい、請求項2に記載の方法。
  8. 前記第1の数の動きベクトル予測を含む前記動きベクトル予測リストは、空間的または時間的動きベクトル予測を含まない、請求項2に記載の方法。
  9. 第1の数の冗長性チェックを実行して、前記第1の数の動きベクトル予測を含む前記動きベクトル予測リストを構築し、第2の数の冗長性チェックを実行して、前記第2の数の動きベクトル予測を含む前記動きベクトル予測リストを構築し、前記第1の数の冗長性チェックは、前記第2の数の冗長性チェックよりも少ない、請求項2に記載の方法。
  10. 前記第1の数の冗長性チェックは、(i)可能な空間的動きベクトル予測と前記動きベクトル予測リスト内の第1の既存の空間動きベクトル予測との間、(ii)可能な時間的動きベクトル予測と前記動きベクトル予測リスト内の第1の既存の時間的動きベクトル予測との間、(iii)可能な履歴ベースの動きベクトル予測と前記動きベクトル予測リスト内の前記第1または他の既存の空間動きベクトル予測との間、および(iv)前記可能な履歴ベースの動きベクトル予測と前記動きベクトル予測リスト内の前記第1または他の既存の時間的動きベクトル予測との間の比較の少なくとも1つを含まない、請求項9に記載の方法。
  11. 前記第1の数の動きベクトル予測を含む前記動きベクトル予測リストは、冗長性チェックなしで構築される、請求項2に記載の方法。
  12. 前記動きベクトル予測のうちの少なくとも1つは、前記対象ピクチャを参照ピクチャとして使用する、請求項1に記載の方法。
  13. ビデオ復号のための装置であって、
    符号化されたビデオシーケンスの一部である対象ピクチャ内の対象ブロックについて予測情報を復号し、
    前記対象ブロックの面積がしきい値以下であるかどうかを決定し、
    動きベクトル予測の数を含む動きベクトル予測リストを構築し、動きベクトル予測の前記数は、前記対象ブロックの前記面積が前記しきい値以下であると決定されるかどうかに基づいており、
    前記動きベクトル予測リストに基づいて前記対象ブロックを再構築するように構成される処理回路、
    を含む、ビデオ復号のための装置。
  14. 前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は、前記対象ブロックの前記面積が前記しきい値以下であると決定された場合は第1の数であり、
    前記対象ブロックの前記面積が前記しきい値よりも大きいと決定された場合、前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は、前記第1の数よりも大きい第2の数である、
    請求項13に記載の装置。
  15. 前記処理回路は、
    前記予測情報が前記対象のパーティションサイズを示す場合、
    前記パーティションサイズが前記しきい値以下であると決定されたかどうかに基づいて前記動きベクトル予測リストを構築するようにさらに構成され、
    前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は、前記パーティションサイズが前記しきい値以下であると決定された場合は前記第1の数であり、
    前記パーティションサイズが前記しきい値よりも大きいと決定された場合、前記動きベクトル予測リストに含まれる動きベクトル予測の前記数は前記第2の数である、
    請求項14に記載の装置。
  16. 前記しきい値は、予め設定された数の輝度サンプルである、請求項13に記載の装置。
  17. 前記しきい値は、前記対象ピクチャのピクチャ解像度に対応する、請求項13に記載の装置。
  18. 前記しきい値は、前記符号化されたビデオシーケンスで通知される、請求項13に記載の装置。
  19. 前記第1の数の動きベクトル予測を含む前記動きベクトル予測リストは、空間的または時間的動きベクトル予測の第1のセットに基づいて構築され、空間的または時間的動きベクトル予測の前記第1のセットは、前記第2の数の動きベクトル予測を含む前記動きベクトル予測リストを構築するために使用される空間的または時間的動きベクトル予測の第2のセットよりも小さい、請求項14に記載の装置。
  20. 符号化されたビデオシーケンスの一部である対象ピクチャ内の対象ブロックについて予測情報を復号するステップと、
    前記対象ブロックの面積がしきい値以下であるかどうかを決定するステップと、
    動きベクトル予測の数を含む動きベクトル予測リストを構築するステップであって、動きベクトル予測の前記数は、前記対象ブロックの前記面積が前記しきい値以下であると決定されるかどうかに基づく、ステップと、
    前記動きベクトル予測リストに基づいて前記対象ブロックを再構築するステップと、
    を実行するための少なくとも1つのプロセッサによって実行可能なプログラムを格納する非一時的なコンピュータ可読記憶媒体。
JP2023144320A 2018-12-10 2023-09-06 ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法 Pending JP2023158110A (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862777735P 2018-12-10 2018-12-10
US62/777,735 2018-12-10
US16/555,549 US11470340B2 (en) 2018-12-10 2019-08-29 Simplified merge list construction for small coding blocks
US16/555,549 2019-08-29
PCT/US2019/064422 WO2020123223A1 (en) 2018-12-10 2019-12-04 Simplified merge list construction for small coding blocks
JP2021526340A JP7346566B2 (ja) 2018-12-10 2019-12-04 ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021526340A Division JP7346566B2 (ja) 2018-12-10 2019-12-04 ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法

Publications (2)

Publication Number Publication Date
JP2023158110A true JP2023158110A (ja) 2023-10-26
JP2023158110A5 JP2023158110A5 (ja) 2024-02-16

Family

ID=70971347

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021526340A Active JP7346566B2 (ja) 2018-12-10 2019-12-04 ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法
JP2023144320A Pending JP2023158110A (ja) 2018-12-10 2023-09-06 ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021526340A Active JP7346566B2 (ja) 2018-12-10 2019-12-04 ビデオ復号方法、ビデオ復号装置、コンピュータプログラム、およびビデオ符号化方法

Country Status (6)

Country Link
US (3) US11470340B2 (ja)
EP (1) EP3895427A4 (ja)
JP (2) JP7346566B2 (ja)
KR (1) KR20210069720A (ja)
CN (2) CN118042127A (ja)
WO (1) WO2020123223A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2768375C1 (ru) * 2018-12-28 2022-03-24 ДжейВиСиКЕНВУД Корпорейшн Устройство декодирования динамических изображений, способ декодирования динамических изображений, программа декодирования динамических изображений, устройство кодирования динамических изображений, способ кодирования динамических изображений и программа кодирования динамических изображений
CN112954317B (zh) * 2018-12-28 2022-02-11 Jvc建伍株式会社 动图像编码装置和方法、以及动图像解码装置和方法
JP7343097B2 (ja) * 2018-12-29 2023-09-12 エスゼット ディージェイアイ テクノロジー カンパニー リミテッド 動画処理方法、装置、およびコンピュータプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103430547B (zh) * 2011-03-08 2017-03-29 Jvc建伍株式会社 动图像解码装置、动图像解码方法
HUE063217T2 (hu) 2011-06-27 2024-01-28 Samsung Electronics Co Ltd Eljárás mozgásinformáció dekódolásához és kódolásához, berendezés mozgásinformáció kódolásához és számítógéppel olvasható eszköz
WO2013047805A1 (ja) * 2011-09-29 2013-04-04 シャープ株式会社 画像復号装置、画像復号方法および画像符号化装置
US9571833B2 (en) * 2011-11-04 2017-02-14 Nokia Technologies Oy Method for coding and an apparatus
US9426463B2 (en) 2012-02-08 2016-08-23 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
WO2014072571A1 (en) * 2012-10-01 2014-05-15 Nokia Corporation Method and apparatus for scalable video coding
WO2015006884A1 (en) 2013-07-19 2015-01-22 Qualcomm Incorporated 3d video coding with partition-based depth inter coding
CN108028939B (zh) * 2015-09-02 2021-10-15 联发科技股份有限公司 用于视频编解码的解码器侧的运动推导的方法和装置
US10623774B2 (en) * 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US10506228B2 (en) 2016-10-04 2019-12-10 Qualcomm Incorporated Variable number of intra modes for video coding
JP2020031252A (ja) 2016-12-22 2020-02-27 シャープ株式会社 画像復号装置及び画像符号化装置
US10506230B2 (en) * 2017-01-04 2019-12-10 Qualcomm Incorporated Modified adaptive loop filter temporal prediction for temporal scalability support
US10986360B2 (en) * 2017-10-16 2021-04-20 Qualcomm Incorproated Various improvements to FRUC template matching
US10362330B1 (en) 2018-07-30 2019-07-23 Tencent America LLC Combining history-based motion vector prediction and non-adjacent merge prediction
US11558622B2 (en) * 2018-10-09 2023-01-17 Samsung Electronics Co., Ltd. Video decoding method and apparatus, and video encoding method and apparatus involving sub-block merge index context and bypass model
WO2020125738A1 (en) * 2018-12-21 2020-06-25 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods using history based motion vector prediction

Also Published As

Publication number Publication date
EP3895427A1 (en) 2021-10-20
US11470340B2 (en) 2022-10-11
US20230232035A1 (en) 2023-07-20
JP7346566B2 (ja) 2023-09-19
US20220417548A1 (en) 2022-12-29
JP2022507423A (ja) 2022-01-18
EP3895427A4 (en) 2022-08-17
CN112771869B (zh) 2024-01-30
WO2020123223A1 (en) 2020-06-18
KR20210069720A (ko) 2021-06-11
CN112771869A (zh) 2021-05-07
CN118042127A (zh) 2024-05-14
US20200186819A1 (en) 2020-06-11
US11665364B2 (en) 2023-05-30

Similar Documents

Publication Publication Date Title
JP7358464B2 (ja) ビデオ符号化のための方法及び機器
JP7358487B2 (ja) イントラ画像ブロック補償のためのデコードされたブロックベクトルの変換
JP2022532032A (ja) ビデオコーディングのための方法及び装置
JP2023111920A (ja) ビデオ符号化における隣接ブロックの利用可能性のための方法および装置
US11665364B2 (en) Simplified merge list construction for small coding blocks
WO2020118143A1 (en) Methods and apparatuses for video coding
JP7210732B2 (ja) ビデオをデコードするための方法、装置及びプログラム
JP7419506B2 (ja) 映像コーディングのための方法及び装置
KR20200124749A (ko) 비디오 코딩을 위한 방법 및 장치
JP7203996B2 (ja) 映像を復号する方法、装置、およびコンピュータプログラム
WO2020214495A1 (en) Method and apparatus for video coding
WO2020186016A1 (en) Signaling of cu based interpolation filter selection
JP7471722B2 (ja) ビデオ符号化のための方法および装置
JP2024508430A (ja) イントラ及びインター予測を伴うジオメトリックパーティションモードの改善
JP2023546730A (ja) インターおよびイントラ予測のある幾何学的パーティション・モードのためのイントラ・モードの制約に関する方法、装置、プログラム
JP2023548300A (ja) イントラブロックコピーのある幾何学的パーティション・モードに関する方法、装置およびプログラム
JP2023522704A (ja) ビデオコーディングのための方法および装置、およびコンピュータプログラム
JP7458503B2 (ja) イントラ文字列コピーの方法及び機器
JP7169451B2 (ja) ビデオ復号の方法、装置、及びコンピュータプログラム
JP2024516060A (ja) テンプレートマッチングベースの適応動きベクトル解像度(amvr)
JP2023549155A (ja) ビデオコーディング方法、装置、およびコンピュータプログラム
JP2023550038A (ja) Ibc及びイントラ予測を用いた幾何学的パーティションモードのためのイントラ予測モード情報伝搬
JP2023549181A (ja) ブロック・ベクトルを用いたibcブロックのイントラ予測モード情報の伝搬について
EP4052463A1 (en) Method and apparatus for video coding

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230906

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240206