JP7282872B2 - ヒストリベースの動きベクトルに基づくインター予測方法及びその装置 - Google Patents

ヒストリベースの動きベクトルに基づくインター予測方法及びその装置 Download PDF

Info

Publication number
JP7282872B2
JP7282872B2 JP2021506710A JP2021506710A JP7282872B2 JP 7282872 B2 JP7282872 B2 JP 7282872B2 JP 2021506710 A JP2021506710 A JP 2021506710A JP 2021506710 A JP2021506710 A JP 2021506710A JP 7282872 B2 JP7282872 B2 JP 7282872B2
Authority
JP
Japan
Prior art keywords
hmvp
candidates
prediction
current block
merge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021506710A
Other languages
English (en)
Other versions
JP2021533681A (ja
Inventor
ネリ パク
チョンハク ナム
ヒョンムン チャン
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.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
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 LG Electronics Inc filed Critical LG Electronics Inc
Publication of JP2021533681A publication Critical patent/JP2021533681A/ja
Application granted granted Critical
Publication of JP7282872B2 publication Critical patent/JP7282872B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/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/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/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/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)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)

Description

本発明は、映像コーディング技術に関し、より詳しくは、ヒストリベースの動きベクトルに基づくインター予測方法及びその装置に関する。
最近、4Kまたは8K以上のUHD(Ultra High Definition)映像/ビデオのような高解像度、高品質の映像/ビデオに対する需要が多様な分野で増加している。映像/ビデオデータが高解像度、高品質になるほど既存の映像/ビデオデータに比べて相対的に送信される情報量またはビット量が増加するため、既存の有無線広帯域回線のような媒体を利用して映像データを送信し、または既存の格納媒体を利用して映像/ビデオデータを格納する場合、送信費用と格納費用が増加される。
また、最近VR(Virtual Reality)、AR(Artificial Realtiy)コンテンツやホログラムなどの実感メディア(Immersive Media)に対する関心及び需要が増加しており、ゲーム映像のように現実映像と異なる映像特性を有する映像/ビデオに対する放送が増加している。
それによって、前記のような多様な特性を有する高解像度、高品質の映像/ビデオの情報を効果的に圧縮して送信または格納し、再生するために高効率の映像/ビデオ圧縮技術が要求される。
本発明の技術的課題は、映像コーディング効率を上げる方法及び装置を提供することにある。
本発明の他の技術的課題は、効率的なインター予測方法及び装置を提供することにある。
本発明の他の技術的課題は、ヒストリベースの動きベクトルを導出する方法及び装置を提供することにある。
本発明の他の技術的課題は、HMVP(history-based motion vector prediction)候補を効率的に導出する方法及び装置を提供することにある。
本発明の他の技術的課題は、HMVPバッファを効率的に初期化する方法及び装置を提供することにある。
本発明の一実施例によると、デコーディング装置により実行される映像デコーディング方法を提供する。前記方法は、現在ブロックに対するHMVP(history-based motion vector prediction)バッファを導出するステップと、前記HMVPバッファに含まれているHMVP候補に基づいて前記現在ブロックの動き情報を導出するステップと、前記動き情報に基づいて前記現在ブロックに対する予測サンプルを生成するステップと、前記予測サンプルに基づいて復元サンプルを生成し、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUを処理する場合、初期化されることを特徴とする。
本発明の他の一実施例によると、映像デコーディングを実行するデコーディング装置が提供される。前記デコーディング装置は、現在ブロックに対するHMVP(history-based motion vector prediction)バッファを導出し、前記HMVPバッファに含まれているHMVP候補に基づいて前記現在ブロックの動き情報を導出し、前記動き情報に基づいて前記現在ブロックに対する予測サンプルを生成する予測部、及び前記予測サンプルに基づいて復元サンプルを生成する加算部を含み、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUを処理する場合、初期化されることを特徴とする。
本発明の他の一実施例によると、エンコーディング装置により実行される映像エンコーディング方法が提供される。前記方法は、現在ブロックに対するHMVP(history-based motion vector prediction)バッファを導出するステップと、前記HMVPバッファに含まれているHMVP候補に基づいて前記現在ブロックの動き情報を導出するステップと、前記動き情報に基づいて前記現在ブロックに対する予測サンプルを生成するステップと、前記予測サンプルに基づいてレジデュアルサンプルを導出するステップと、前記レジデュアルサンプルに対する情報を含む映像情報をエンコーディングするステップとを含み、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUを処理する場合、初期化されることを特徴とする。
本発明の他の一実施例によると、映像エンコーディングを実行するエンコーディング装置が提供される。前記エンコーディング装置は、現在ブロックに対するHMVP(history-based motion vector prediction)バッファを導出し、前記HMVPバッファに含まれているHMVP候補に基づいて前記現在ブロックの動き情報を導出し、前記動き情報に基づいて前記現在ブロックに対する予測サンプルを生成する予測部と、前記予測サンプルに基づいてレジデュアルサンプルを導出するレジデュアル処理部と、前記レジデュアルサンプルに対する情報を含む映像情報をエンコーディングするエントロピーエンコーディング部とを含み、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUを処理する場合、初期化されることを特徴とする。
本発明の他の一実施例によると、エンコーディング装置により実行された映像エンコーディング方法によって生成されたエンコーディングされた映像情報が含まれている映像データが格納されたデジタル格納媒体を提供する。
本発明の他の一実施例によると、デコーディング装置により前記映像デコーディング方法を実行するようにするエンコーディングされた映像情報が含まれている映像データが格納されたデジタル格納媒体を提供する。
本発明の一実施例によると、全般的な映像/ビデオ圧縮効率を上げることができる。
本発明の一実施例によると、効率的なインター予測を介してレジデュアル処理に必要な送信されるデータ量を減らすことができる。
本発明の一実施例によると、効率的にHMVPバッファを管理することができる。
本発明の一実施例によると、効率的なHMVPバッファ管理を介して並列処理をサポートすることができる。
本発明の一実施例によると、インター予測のための動きベクトルを効率的に導出することができる。
本発明が適用されることができるビデオ/映像コーディングシステムの例を概略的に示す。 本発明が適用されることができるビデオ/映像エンコーディング装置の構成を概略的に説明する図面である。 本発明が適用されることができるビデオ/映像デコーディング装置の構成を概略的に説明する図面である。 インター予測ベースのビデオ/映像エンコーディング方法の例を示す。 インター予測ベースのビデオ/映像エンコーディング方法の例を示す。 インター予測手順を例示的に示す。 従来のマージまたはAMVPモードで動き情報候補導出のために使われた空間的隣接ブロックを例示的に示す。 HMVP候補ベースのデコーディング手順の例を概略的に示す。 FIFO規則によるHMVPテーブルアップデートを例示的に示し、 制限されたFIFO規則によるHMVPテーブルアップデートを例示的に示す。 並列処理のための技法のうち一つであるWPP(Wavefront Parallel Processing)を例示的に示す。 並列処理を考慮して一般HMVP方法を適用する時の問題点を例示的に示す。 本発明の一実施例に係るヒストリ管理バッファ(HMVPバッファ)の初期化方法を例示的に示す。 本発明の一実施例に係るHMVPバッファ管理方法を例示的に示す。 本発明の他の一実施例に係るHMVPバッファ管理方法を例示的に示す。 本発明の他の一実施例に係るHMVPバッファ管理方法を例示的に示す。 HMVPバッファ管理方法を例示的に示す。 本発明の実施例に係るインター予測方法を含むビデオ/映像エンコーディング方法及び関連コンポーネントの一例を概略的に示す。 本発明の実施例に係るインター予測方法を含むビデオ/映像エンコーディング方法及び関連コンポーネントの一例を概略的に示す。 本発明の実施例に係るインター予測方法を含む映像デコーディング方法及び関連コンポーネントの一例を概略的に示す。 本発明の実施例に係るインター予測方法を含む映像デコーディング方法及び関連コンポーネントの一例を概略的に示す。 本文書で開示された発明が適用されることができるコンテンツストリーミングシステムの例を示す。
本発明は、多様な変更を加えることができ、様々な実施例を有することができ、特定の実施例を図面に例示して詳細に説明する。しかし、これは本発明を特定の実施例に限定するものではない。本明細書で使用する用語は、単に特定の実施例を説明するために使われたものであり、本発明の技術的思想を限定しようとする意図で使われるものではない。単数の表現は、文脈上明白に異なる意味ではない限り、複数の表現を含む。本明細書において、“含む”または“有する”などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品またはそれらを組合せたものが存在することを指定するものであり、一つまたはそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品またはそれらを組合せたものの存在または付加の可能性を予め排除しないと理解しなければならない。
一方、本発明で説明される図面上の各構成は、互いに異なる特徴的な機能に対する説明の便宜のために独立して図示されたものであり、各構成が互いに別個のハードウェアや別個のソフトウェアで具現されるということを意味しない。例えば、各構成のうち二つ以上の構成が合わせて一つの構成をなすこともあり、一つの構成が複数の構成に分けられることもある。各構成が統合及び/または分離された実施例も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
以下、添付図面を参照して、本発明の好ましい実施例をより詳細に説明する。以下、図面上の同じ構成要素に対しては同じ参照符号を使用し、同じ構成要素に対して重複した説明は省略する。
図1は、本発明が適用されることができるビデオ/映像コーディングシステムの例を概略的に示す。
図1を参照すると、ビデオ/映像コーディングシステムは、第1の装置(ソースデバイス)及び第2の装置(受信デバイス)を含むことができる。ソースデバイスは、エンコーディングされたビデオ(video)/映像(image)情報またはデータをファイルまたはストリーミング形態でデジタル格納媒体またはネットワークを介して受信デバイスに伝達できる。
前記ソースデバイスは、ビデオソース、エンコーディング装置、送信部を含むことができる。前記受信デバイスは、受信部、デコーディング装置、及びレンダラを含むことができる。前記エンコーディング装置は、ビデオ/映像エンコーディング装置とも呼ばれ、前記デコーディング装置は、ビデオ/映像デコーディング装置とも呼ばれる。送信機は、エンコーディング装置に含まれることができる。受信機は、デコーディング装置に含まれることができる。レンダラは、ディスプレイ部を含むこともでき、ディスプレイ部は、別個のデバイスまたは外部コンポーネントで構成されることもできる。
ビデオソースは、ビデオ/映像のキャプチャ、合成または生成過程などを介してビデオ/映像を取得することができる。ビデオソースは、ビデオ/映像キャプチャデバイス及び/またはビデオ/映像生成デバイスを含むことができる。ビデオ/映像キャプチャデバイスは、例えば、一つ以上のカメラ、以前にキャプチャされたビデオ/映像を含むビデオ/映像アーカイブなどを含むことができる。ビデオ/映像生成デバイスは、例えば、コンピュータ、タブレット、及びスマートフォンなどを含むことができ、(電子的に)ビデオ/映像を生成することができる。例えば、コンピュータなどを介して仮想のビデオ/映像が生成されることができ、この場合、関連データが生成される過程としてビデオ/映像キャプチャ過程に代える。
エンコーディング装置は、入力ビデオ/映像をエンコーディングすることができる。エンコーディング装置は、圧縮及びコーディング効率のために、予測、変換、量子化など、一連の手順を実行することができる。エンコーディングされたデータ(エンコーディングされたビデオ/映像情報)は、ビットストリーム(bitstream)形態で出力されることができる。
送信部は、ビットストリーム形態で出力されたエンコーディングされたビデオ/映像情報またはデータをファイルまたはストリーミング形態でデジタル格納媒体またはネットワークを介して受信デバイスの受信部に伝達できる。デジタル格納媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、多様な格納媒体を含むことができる。送信部は、あらかじめ決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介した送信のためのエレメントを含むことができる。受信部は、前記ビットストリームを受信/抽出してデコーディング装置に伝達できる。
デコーディング装置は、エンコーディング装置の動作に対応する逆量子化、逆変換、予測など、一連の手順を実行してビデオ/映像をデコーディングすることができる。
レンダラは、デコーディングされたビデオ/映像をレンダリングすることができる。レンダリングされたビデオ/映像は、ディスプレイ部を介してディスプレイされることができる。
この文書は、ビデオ/映像コーディングに関する。例えば、この文書で開示された方法/実施例は、VVC(versatile video coding)標準、EVC(essential video coding)標準、AV1(AOMedia Video 1)標準、AVS2(2nd generation of audio video coding standard)または次世代ビデオ/映像コーディング標準(例えば、H.267またはH.268等)に開示される方法に適用されることができる。
この文書ではビデオ/映像コーディングに対する多様な実施例を提示し、他の言及がない限り、前記実施例は、互いに組み合わせて実行されることもできる。
この文書において、ビデオ(video)は、時間の流れによる一連の映像(image)の集合を意味することができる。ピクチャ(picture)は、一般的に特定時間帯の一つの映像を示す単位を意味し、スライス(slice)/タイル(tile)は、コーディングにおいてピクチャの一部を構成する単位である。スライス/タイルは、一つ以上のCTU(coding tree unit)を含むことができる。一つのピクチャは、一つ以上のスライス/タイルで構成されることができる。一つのピクチャは、一つ以上のタイルグループで構成されることができる。一つのタイルグループは、一つ以上のタイルを含むことができる。ブリクは、ピクチャ内のタイル以内のCTU行の長方形領域を示すことができる(a brick may represent a rectangular region of CTU rows within a tile in a picture)。タイルは、多数のブリクでパーティショニングされることができ、各ブリクは、前記タイル内の一つ以上のCTU行で構成されることができる(A tile may be partitioned into multiple bricks、each of which consisting of one or more CTU rows within the tile)。また、多数のブリクでパーティショニングされないタイルは、ブリクとも呼ばれる(A tile that is not partitioned into multiple bricks may be also referred to as a brick)。ブリクスキャンは、ピクチャをパーティショニングするCTUの特定の順次的オーダリングを示すことができ、前記CTUは、ブリク内でCTUラスタスキャンに整列されることができ、タイル内のブリクは、前記タイルの前記ブリクのラスタスキャンに連続的に整列されることができ、そして、ピクチャ内のタイルは、前記ピクチャの前記タイルのラスタスキャンに連続的に整列されることができる(A brick scan is a specific sequential ordering of CTUs partitioning a picture in which the CTUs are ordered consecutively in CTU raster scan in a brick、bricks within a tile are ordered consecutively in a raster scan of the bricks of the tile、and tiles in a picture are ordered consecutively in a raster scan of the tiles of the picture)。タイルは、特定タイル列及び特定タイル列以内のCTUの長方形領域である(A tile is a rectangular region of CTUs within a particular tile column and a particular tile row in a picture)。前記タイル列は、CTUの長方形領域であり、前記長方形領域は、前記ピクチャの高さと同じ高さを有し、幅は、ピクチャパラメータセット内のシンタックス要素により明示されることができる(The tile column is a rectangular region of CTUs having a height equal to the height of the picture and a width specified by syntax elements in the picture parameter set)。前記タイル行は、CTUの長方形領域であり、前記長方形領域は、ピクチャパラメータセット内のシンタックス要素により明示される幅を有し、高さは、前記ピクチャの高さと同じである(The tile row is a rectangular region of CTUs having a height specified by syntax elements in the picture parameter set and a width equal to the width of the picture)。タイルスキャンは、ピクチャをパーティショニングするCTUの特定順次的オーダリングを示すことができ、前記CTUは、タイル内のCTUラスタスキャンに連続的に整列されることができ、ピクチャ内のタイルは、前記ピクチャの前記タイルのラスタスキャンに連続的に整列されることができる(A tile scan is a specific sequential ordering of CTUs partitioning a picture in which the CTUs are ordered consecutively in CTU raster scan in a tile whereas tiles in a picture are ordered consecutively in a raster scan of the tiles of the picture)。スライスは、ピクチャの整数個のブリクを含むことができ、前記整数個のブリクは、一つのNALユニットに含まれることができる(A slice includes an integer number of bricks of a picture that may be exclusively contained in a single NAL unit)。スライスは、多数の完全なタイルで構成されてもよく、または一つのタイルの完全なブリクの連続的なシーケンスであってもよい(A slice may consists of either a number of complete tiles or only a consecutive sequence of complete bricks of one tile)。この文書でタイルグループとスライスは混用されることができる。例えば、本文書でtile group/tile group headerは、slice/slice headerとも呼ばれる。
ピクセル(pixel)またはペル(pel)は、一つのピクチャ(または、映像)を構成する最小の単位を意味することができる。また、ピクセルに対応する用語として「サンプル(sample)」が使用されることができる。サンプルは、一般的にピクセルまたはピクセルの値を示し、ルマ(luma)成分のピクセル/ピクセルの値のみを示してもよく、クロマ(chroma)成分のピクセル/ピクセルの値のみを示してもよい。
ユニット(unit)は、映像処理の基本単位を示すことができる。ユニットは、ピクチャの特定領域及び該当領域に関連した情報のうち少なくとも一つを含むことができる。一つのユニットは、一つのルマブロック及び二つのクロマ(例えば、cb、cr)ブロックを含むことができる。ユニットは、場合によって、ブロック(block)または領域(area)などの用語と混用して使われることができる。一般的な場合、M×Nブロックは、M個の列とN個の行からなるサンプル(または、サンプルアレイ)または変換係数(transform coefficient)の集合(または、アレイ)を含むことができる。
この文書において、“/”と“、”は、“及び/または”と解釈される。例えば、“A/B”は“A及び/またはB”と解釈され、“A、B”は、“A及び/またはB”と解釈される。追加的に、“A/B/C”は、“A、B及び/またはCのうち少なくとも一つ”を意味する。また、“A、B、C”も“A、B及び/またはCのうち少なくとも一つ”を意味する。(In this document,the term“/”and“,” should be interpreted to indicate “and/or.”For instance,the expression “A/B” may mean “A and/or B.”Further,“A,B”may mean “A and/or B.”Further,“A/B/C” may mean “at least one of A,B,and/or C.”Also,“A/B/C” may mean “at least one of A,B,and/or C.”)
追加的に、本文書で“または”は“及び/または”と解釈される。例えば、“AまたはB”は、1)“A”のみを意味し、2)“B”のみを意味し、または3)“A及びB”を意味することができる。その他の表現として、本文での“または”は“追加的にまたは代替的に(additionally or alternatively)”を意味することができる。(Further,in the document,the term“or” should be interpreted to indicate “and/or.”For instance,the expression “A or B” may comprise 1)only A,2)only B,and/or 3)both A and B.In other words,the term “or” in this document should be interpreted to indicate “additionally or alternatively.”)
図2は、本発明が適用されることができるビデオ/映像エンコーディング装置の構成を概略的に説明する図面である。以下、ビデオエンコーディング装置とは、映像エンコーディング装置を含むことができる。
図2を参照すると、エンコーディング装置200は、映像分割部(image partitioner)210、予測部(predictor)220、レジデュアル処理部(residual processor)230、エントロピーエンコーディング部(entropy encoder)240、加算部(adder)250、フィルタリング部(filter)260、及びメモリ(memory)270を含んで構成されることができる。予測部220は、インター予測部221及びイントラ予測部222を含むことができる。レジデュアル処理部230は、変換部(transformer)232、量子化部(quantizer)233、逆量子化部(dequantizer)234、逆変換部(inverse transformer)235を含むことができる。レジデュアル処理部230は、減算部(subtractor)231をさらに含むことができる。加算部250は、復元部(reconstructor)または復元ブロック生成部(recontructged block generator)とも呼ばれる。前述した映像分割部210、予測部220、レジデュアル処理部230、エントロピーエンコーディング部240、加算部250、及びフィルタリング部260は、実施例によって一つ以上のハードウェアコンポーネント(例えば、エンコーダチップセットまたはプロセッサ)により構成されることができる。また、メモリ270は、DPB(decoded picture buffer)を含むことができ、デジタル格納媒体により構成されることもできる。前記ハードウェアコンポーネントは、メモリ270を内/外部コンポーネントとしてさらに含むこともできる。
映像分割部210は、エンコーディング装置200に入力された入力映像(または、ピクチャ、フレーム)を一つ以上の処理ユニット(processing unit)に分割できる。一例として、前記処理ユニットは、コーディングユニット(coding unit、CU)とも呼ばれる。この場合、コーディングユニットは、コーディングツリーユニット(coding tree unit、CTU)または最大コーディングユニット(largest coding unit、LCU)からQTBTTT(Quad-tree binary-tree ternary-tree)構造によって再帰的に(recursively)分割されることができる。例えば、一つのコーディングユニットは、クアッドツリー構造、バイナリツリー構造、及び/またはターナリに基づいて下位(deeper)デプスの複数のコーディングユニットに分割されることができる。この場合、例えば、クアッドツリー構造が先に適用され、バイナリツリー構造及び/またはターナリがその後に適用されることができる。または、バイナリツリー構造が先に適用されてもよい。それ以上分割されない最終コーディングユニットに基づいて、本発明によるコーディング手順が実行されることができる。この場合、映像特性によるコーディング効率などに基づいて、最大コーディングユニットが最終コーディングユニットとして使われることができ、または必要によって、コーディングユニットは、再帰的に(recursively)もっと下位デプスのコーディングユニットに分割されて最適のサイズのコーディングユニットが最終コーディングユニットとして使われることができる。ここで、コーディング手順とは、後述する予測、変換、及び復元などの手順を含むことができる。他の例として、前記処理ユニットは、予測ユニット(PU:Prediction Unit)または変換ユニット(TU:Transform Unit)をさらに含むことができる。この場合、前記予測ユニット及び前記変換ユニットは、各々、前述した最終コーディングユニットから分割またはパーティショニングされることができる。前記 予測ユニットは、サンプル予測の単位であり、または前記変換ユニットは、変換係数を誘導する単位及び/または変換係数からレジデュアル信号(residual signal)を誘導する単位である。
ユニットは、場合によって、ブロック(block)または領域(area)などの用語と混用して使われることができる。一般的な場合、M×Nブロックは、M個の列とN個の行からなるサンプルまたは変換係数(transform coefficient)の集合を示すことができる。サンプルは、一般的にピクセルまたはピクセルの値を示すことができ、輝度(luma)成分のピクセル/ピクセル値のみを示すこともでき、彩度(chroma)成分のピクセル/ピクセル値のみを示すこともできる。サンプルは、一つのピクチャ(または、映像)をピクセル(pixel)またはペル(pel)に対応する用語として使われることができる。
エンコーディング装置200は、入力映像信号(原本ブロック、原本サンプルアレイ)でインター予測部221またはイントラ予測部222から出力された予測信号(予測されたブロック、予測サンプルアレイ)を減算してレジデュアル信号(residual signal、残余ブロック、残余サンプルアレイ)を生成することができ、生成されたレジデュアル信号は、変換部232に送信される。この場合、図示されたように、エンコーダ200内で入力映像信号(原本ブロック、原本サンプルアレイ)で予測信号(予測ブロック、予測サンプルアレイ)を減算するユニットは、減算部231とも呼ばれる。予測部は、処理対象ブロック(以下、現在ブロックという)に対する予測を実行し、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、現在ブロックまたはCU単位でイントラ予測が適用されるかまたはインター予測が適用されるかを決定することができる。予測部は、各予測モードに対する説明で後述するように、予測モード情報など、予測に対する多様な情報を生成してエントロピーエンコーディング部240に伝達できる。予測に対する情報は、エントロピーエンコーディング部240でエンコーディングされてビットストリーム形態で出力されることができる。
イントラ予測部222は、現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。前記参照されるサンプルは、予測モードによって前記現在ブロックの隣接(neighbor)に位置し、または離れて位置することもできる。イントラ予測において、予測モードは、複数の非方向性モードと複数の方向性モードを含むことができる。非方向性モードは、例えば、DCモード及びプラナーモード(Planarモード)を含むことができる。方向性モードは、予測方向の細かさの度合いによって、例えば、33個の方向性予測モードまたは65個の方向性予測モードを含むことができる。ただし、これは例示に過ぎず、設定によってそれ以上またはそれ以下の個数の方向性予測モードが使われることができる。イントラ予測部222は、隣接ブロックに適用された予測モードを利用し、現在ブロックに適用される予測モードを決定することもできる。
インター予測部221は、参照ピクチャ上で動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘導することができる。このとき、インター予測モードで送信される動き情報の量を減らすために、隣接ブロックと現在ブロックとの間の動き情報の相関性に基づいて、動き情報をブロック、サブブロックまたはサンプル単位で予測できる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測等)情報をさらに含むことができる。インター予測の場合、隣接ブロックは、現在ピクチャ内に存在する空間的隣接ブロック(spatial neighboring block)と、参照ピクチャに存在する時間的隣接ブロック(temporal neighboring block)と、を含むことができる。前記参照ブロックを含む参照ピクチャと前記時間的隣接ブロックを含む参照ピクチャは、同じであってもよく、異なってもよい。前記時間的隣接ブロックは、同一位置参照ブロック(collocated reference block)、同一位置CU(colCU)などの名称で呼ばれることもあり、前記時間的隣接ブロックを含む参照ピクチャは、同一位置ピクチャ(collocated picture、colPic)とも呼ばれる。例えば、インター予測部221は、隣接ブロックに基づいて動き情報候補リストを構成し、前記現在ブロックの動きベクトル及び/または参照ピクチャインデックスを導出するためにどの候補が使われるかを指示する情報を生成することができる。多様な予測モードに基づいてインター予測が実行されることができ、例えば、スキップモードとマージモードの場合、インター予測部221は、隣接ブロックの動き情報を現在ブロックの動き情報として利用できる。スキップモードの場合、マージモードとは違ってレジデュアル信号が送信されない。動き情報予測(motion vector prediction、MVP)モードの場合、隣接ブロックの動きベクトルを動きベクトル予測子(motion vector predictor)として利用し、動きベクトル差分(motion vector difference)をシグナリングすることで、現在ブロックの動きベクトルを指示することができる。
予測部220は、後述する多様な予測方法に基づいて予測信号を生成することができる。例えば、予測部は、一つのブロックに対する予測のためにイントラ予測またはインター予測を適用することができるだけでなく、イントラ予測とインター予測を同時に適用できる。これはcombined inter and intra prediction(CIIP)とも呼ばれる。また、予測部は、ブロックに対する予測のためにイントラブロックコピー(intra block copy、IBC)予測モードに基づく場合もありまたはパレットモード(palette mode)に基づく場合もある。前記IBC予測モードまたはパレットモードは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動映像コーディングのために使われることができる。IBCは、基本的に現在ピクチャ内で予測を実行するが、現在ピクチャ内で参照ブロックを導出する点でインター予測と類似するように実行されることができる。即ち、IBCは、本文書で説明されるインター予測技法のうち少なくとも一つを利用することができる。パレットモードは、イントラコーディングまたはイントラ予測の一例と見なすこともできる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに対する情報に基づいてピクチャ内のサンプル値をシグナリングすることができる。
前記予測部(インター予測部221及び/または前記イントラ予測部222を含む)を介して生成された予測信号は、復元信号を生成するために利用され、またはレジデュアル信号を生成するために利用されることができる。変換部232は、レジデュアル信号に変換技法を適用して変換係数(transform coefficients)を生成することができる。例えば、変換技法は、DCT(Discrete Cosine Transform)、DST(Discrete Sine Transform)、KLT(Karhunen-Loeve Transform)、GBT(Graph-Based Transform)、またはCNT(Conditionally Non-linear Transform)のうち少なくとも一つを含むことができる。ここで、GBTは、ピクセル間の関係情報をグラフで表現するとする時、このグラフから得られた変換を意味する。CNTは、以前に復元された全てのピクセル(all previously reconstructed pixel)を利用して予測信号を生成し、それに基づいて取得される変換を意味する。また、変換過程は、正方形の同じ大きさを有するピクセルブロックに適用されることもでき、正方形でない可変大きさのブロックに適用されることもできる。
量子化部233は、変換係数を量子化してエントロピーエンコーディング部240に送信し、エントロピーエンコーディング部240は、量子化された信号(量子化された変換係数に対する情報)をエンコーディングしてビットストリームで出力できる。前記量子化された変換係数に対する情報は、レジデュアル情報とも呼ばれる。量子化部233は、係数スキャン順序(scan order)に基づいて、ブロック形態の量子化された変換係数を1次元ベクトル形態で再整列でき、前記1次元ベクトル形態の量子化された変換係数に基づいて、前記量子化された変換係数に対する情報を生成することもできる。エントロピーエンコーディング部240は、例えば、指数ゴロム(exponential Golomb)、CAVLC(context-adaptive variable length coding)、CABAC(context-adaptive binary arithmetic coding)などのような多様なエンコーディング方法を実行することができる。エントロピーエンコーディング部240は、量子化された変換係数外にビデオ/イメージ復元に必要な情報(例えば、シンタックス要素(syntax elements)の値等)を共にまたは別途にエンコーディングすることもできる。エンコーディングされた情報(例えば、エンコーディングされたビデオ/映像情報)は、ビットストリーム形態でNAL(network abstraction layer)ユニット単位で送信または格納されることができる。前記ビデオ/映像情報は、アダプテーションパラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)またはビデオパラメータセット(VPS)等、多様なパラメータセットに対する情報をさらに含むことができる。また、前記ビデオ/映像情報は、一般制限情報(general constraint information)をさらに含むことができる。本文書において、エンコーディング装置からデコーディング装置に伝達/シグナリングされる情報及び/またはシンタックス要素は、ビデオ/映像情報に含まれることができる。前記ビデオ/映像情報は、前述したエンコーディング手順を介してエンコーディングされて前記ビットストリームに含まれることができる。前記ビットストリームは、ネットワークを介して送信されることができ、またはデジタル格納媒体に格納されることができる。ここで、ネットワークは、放送網及び/または通信網などを含むことができ、デジタル格納媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、多様な格納媒体を含むことができる。エントロピーエンコーディング部240から出力された信号は、送信する送信部(図示せず)及び/または格納する格納部(図示せず)がエンコーディング装置200の内/外部エレメントとして構成されることができ、または送信部は、エントロピーエンコーディング部240に含まれることもできる。
量子化部233から出力された量子化された変換係数は、予測信号を生成するために利用されることができる。例えば、量子化された変換係数に逆量子化部234及び逆変換部235を介して逆量子化及び逆変換を適用することによってレジデュアル信号(レジデュアルブロックまたはレジデュアルサンプル)を復元することができる。加算部250は、復元されたレジデュアル信号にインター予測部221またはイントラ予測部222から出力された予測信号を加えることによって復元(reconstructed)信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)が生成されることができる。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使われることができる。加算部250は、復元部または復元ブロック生成部とも呼ばれる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使われることもでき、後述するようにフィルタリングを経て次のピクチャのインター予測のために使われることもできる。
一方、ピクチャエンコーディング及び/または復元過程でLMCS(luma mapping with chroma scaling)が適用されることもできる。
フィルタリング部260は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部260は、復元ピクチャに多様なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ270、具体的に、メモリ270のDPBに格納することができる。前記多様なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含むことができる。フィルタリング部260は、各フィルタリング方法に対する説明で後述するように、フィルタリングに対する多様な情報を生成してエントロピーエンコーディング部240に伝達できる。フィルタリングに対する情報は、エントロピーエンコーディング部240でエンコーディングされてビットストリーム形態で出力されることができる。
メモリ270に送信された修正された復元ピクチャは、インター予測部221で参照ピクチャとして使われることができる。エンコーディング装置は、これを介してインター予測が適用される場合、エンコーディング装置200とデコーディング装置での予測ミスマッチを避けることができ、符号化効率も向上させることができる。
メモリ270DPBは、修正された復元ピクチャをインター予測部221での参照ピクチャとして使用するために格納することができる。メモリ270は、現在ピクチャ内の動き情報が導出された(または、エンコーディングされた)ブロックの動き情報及び/または既に復元されたピクチャ内のブロックの動き情報を格納することができる。前記格納された動き情報は、空間的隣接ブロックの動き情報または時間的隣接ブロックの動き情報として活用するために、インター予測部221に伝達できる。メモリ270は、現在ピクチャ内の復元されたブロックの復元サンプルを格納することができ、イントラ予測部222に伝達できる。
図3は、本発明が適用されることができるビデオ/映像デコーディング装置の構成を概略的に説明する図面である。
図3を参照すると、デコーディング装置300は、エントロピーデコーディング部(entropy decoder)310、レジデュアル処理部(residual processor)320、予測部(predictor)330、加算部(adder)340、フィルタリング部(filter)350、及びメモリ(memoery)360を含んで構成されることができる。予測部330は、インター予測部331及びイントラ予測部332を含むことができる。レジデュアル処理部320は、逆量子化部(dequantizer)321及び逆変換部(inverse transformer)321を含むことができる。前述したエントロピーデコーディング部310、レジデュアル処理部320、予測部330、加算部340、及びフィルタリング部350は、実施例によって一つのハードウェアコンポーネント(例えば、デコーダチップセットまたはプロセッサ)により構成されることができる。また、メモリ360は、DPB(decoded picture buffer)を含むことができ、デジタル格納媒体により構成されることもできる。前記ハードウェアコンポーネントは、メモリ360を内/外部コンポーネントとしてさらに含むこともできる。
ビデオ/映像情報を含むビットストリームが入力されると、デコーディング装置300は、図2のエンコーディング装置でビデオ/映像情報が処理されたプロセスに対応して映像を復元することができる。例えば、デコーディング装置300は、前記ビットストリームから取得したブロック分割関連情報に基づいてユニット/ブロックを導出することができる。デコーディング装置300は、エンコーディング装置で適用された処理ユニットを利用してデコーディングを実行することができる。したがって、デコーディングの処理ユニットは、例えば、コーディングユニットであり、コーディングユニットは、コーディングツリーユニットまたは最大コーディングユニットからクアッドツリー構造、バイナリツリー構造及び/またはターナリツリー構造に応じて分割されることができる。コーディングユニットから一つ以上の変換ユニットが導出されることができる。そして、デコーディング装置300を介してデコーディング及び出力された復元映像信号は、再生装置を介して再生されることができる。
デコーディング装置300は、図2のエンコーディング装置から出力された信号をビットストリーム形態で受信することができ、受信された信号は、エントロピーデコーディング部310を介してデコーディングされることができる。例えば、エントロピーデコーディング部310は、前記ビットストリームをパーシングして映像復元(または、ピクチャ復元)に必要な情報(例えば、ビデオ/映像情報)を導出することができる。前記ビデオ/映像情報は、アダプテーションパラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)またはビデオパラメータセット(VPS)等、多様なパラメータセットに対する情報をさらに含むことができる。また、前記ビデオ/映像情報は、一般制限情報(general constraint information)をさらに含むことができる。また、デコーディング装置は、前記パラメータセットに対する情報及び/または前記一般制限情報に基づいてピクチャをデコーディングすることができる。本文書で後述されるシグナリング/受信される情報及び/またはシンタックス要素は、前記デコーディング手順を介してデコーディングされて前記ビットストリームから取得されることができる。例えば、エントロピーデコーディング部310は、指数ゴロム符号化、CAVLCまたはCABACなどのコーディング方法に基づいてビットストリーム内の情報をデコーディングし、映像復元に必要なシンタックスエレメントの値、レジデュアルに対する変換係数の量子化された値を出力することができる。より詳しくは、CABACエントロピーデコーディング方法は、ビットストリームで各シンタックス要素に該当するBINを受信し、デコーディング対象シンタックス要素情報と隣接及びデコーディング対象ブロックのデコーディング情報または以前ステップでデコーディングされたシンボル/BINの情報を利用して文脈(context)モデルを決定し、決定された文脈モデルによってBINの発生確率を予測してBINの算術デコーディング(arithmetic decoding)を実行することで、各シンタックス要素の値に該当するシンボルを生成することができる。このとき、CABACエントロピーデコーディング方法は、文脈モデル決定後、次のシンボル/BINの文脈モデルのためにデコーディングされたシンボル/BINの情報を利用して文脈モデルをアップデートすることができる。エントロピーデコーディング部310でデコーディングされた情報のうち予測に対する情報は、予測部(インター予測部332及びイントラ予測部331)に提供され、エントロピーデコーディング部310でエントロピーデコーディングが実行されたレジデュアル値、即ち、量子化された変換係数及び関連パラメータ情報は、レジデュアル処理部320に入力されることができる。レジデュアル処理部320は、レジデュアル信号(レジデュアルブロック、レジデュアルサンプル、レジデュアルサンプルアレイ)を導出することができる。また、エントロピーデコーディング部310でデコーディングされた情報のうちフィルタリングに対する情報は、フィルタリング部350に提供されることができる。一方、エンコーディング装置から出力された信号を受信する受信部(図示せず)がデコーディング装置300の内/外部エレメントとしてさらに構成されることができ、または受信部は、エントロピーデコーディング部310の構成要素であることもある。一方、本文書によるデコーディング装置は、ビデオ/映像/ピクチャデコーディング装置とも呼ばれ、前記デコーディング装置は、情報デコーダ(ビデオ/映像/ピクチャ情報デコーダ)及びサンプルデコーダ(ビデオ/映像/ピクチャサンプルデコーダ)に区分することもできる。前記情報デコーダは、前記エントロピーデコーディング部310を含むことができ、前記サンプルデコーダは、前記逆量子化部321、逆変換部322、加算部340、フィルタリング部350、メモリ360、インター予測部332、及びイントラ予測部331のうち少なくとも一つを含むことができる。
逆量子化部321では量子化された変換係数を逆量子化して変換係数を出力することができる。逆量子化部321は、量子化された変換係数を2次元のブロック形態で再整列できる。この場合、前記再整列は、エンコーディング装置で実行された係数スキャン順序に基づいて再整列を実行することができる。逆量子化部321は、量子化パラメータ(例えば、量子化ステップサイズ情報)を利用して量子化された変換係数に対する逆量子化を実行し、変換係数(transform coefficient)を取得することができる。
逆変換部322では変換係数を逆変換してレジデュアル信号(レジデュアルブロック、レジデュアルサンプルアレイ)を取得するようになる。
予測部は、現在ブロックに対する予測を実行し、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、エントロピーデコーディング部310から出力された前記予測に対する情報に基づいて、前記現在ブロックにイントラ予測が適用されるかまたはインター予測が適用されるかを決定することができ、具体的なイントラ/インター予測モードを決定することができる。
予測部330は、後述する多様な予測方法に基づいて予測信号を生成することができる。例えば、予測部は、一つのブロックに対する予測のためにイントラ予測またはインター予測を適用することができるだけでなく、イントラ予測とインター予測を同時に適用できる。これはcombined inter and intra prediction(CIIP)とも呼ばれる。また、予測部は、ブロックに対する予測のためにイントラブロックコピー(intra block copy、IBC)予測モードに基づく場合もあり、またはパレットモード(palette mode)に基づく場合もある。前記IBC予測モードまたはパレットモードは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動映像コーディングのために使われることができる。IBCは、基本的に現在ピクチャ内で予測を実行するが、現在ピクチャ内で参照ブロックを導出する点でインター予測と類似するように実行されることができる。即ち、IBCは、本文書で説明されるインター予測技法のうち少なくとも一つを利用することができる。パレットモードは、イントラコーディングまたはイントラ予測の一例と見なすこともできる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに対する情報が前記ビデオ/映像情報に含まれてシグナリングされることができる。
イントラ予測部331は、現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。前記参照されるサンプルは、予測モードによって前記現在ブロックの隣接(neighbor)に位置し、または離れて位置することもできる。イントラ予測において、予測モードは、複数の非方向性モードと複数の方向性モードを含むことができる。イントラ予測部331は、隣接ブロックに適用された予測モードを利用し、現在ブロックに適用される予測モードを決定することもできる。
インター予測部332は、参照ピクチャ上で動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘導することができる。このとき、インター予測モードで送信される動き情報の量を減らすために、隣接ブロックと現在ブロックとの間の動き情報の相関性に基づいて、動き情報をブロック、サブブロックまたはサンプル単位で予測できる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測等)情報をさらに含むことができる。インター予測の場合、隣接ブロックは、現在ピクチャ内に存在する空間的隣接ブロック(spatial neighboring block)と、参照ピクチャに存在する時間的隣接ブロック(temporal neighboring block)と、を含むことができる。例えば、インター予測部332は、隣接ブロックに基づいて動き情報候補リストを構成し、受信した候補選択情報に基づいて前記現在ブロックの動きベクトル及び/または参照ピクチャインデックスを導出することができる。多様な予測モードに基づいてインター予測が実行されることができ、前記予測に対する情報は、前記現在ブロックに対するインター予測のモードを指示する情報を含むことができる。
加算部340は、取得されたレジデュアル信号に予測部(インター予測部332及び/またはイントラ予測部331を含む)から出力された予測信号(予測されたブロック、予測サンプルアレイ)を加えることによって復元信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使われることができる。
加算部340は、復元部または復元ブロック生成部とも呼ばれる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使われることもでき、後述するようにフィルタリングを経て出力されることもでき、または次のピクチャのインター予測のために使われることもできる。
一方、ピクチャデコーディング過程でLMCS(luma mapping with chroma scaling)が適用されることもできる。
フィルタリング部350は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部350は、復元ピクチャに多様なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ360、具体的に、メモリ360のDPBに送信できる。前記多様なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含むことができる。
メモリ360のDPBに格納された(修正された)復元ピクチャは、インター予測部332で参照ピクチャとして使われることができる。メモリ360は、現在ピクチャ内の動き情報が導出された(または、デコーディングされた)ブロックの動き情報及び/または既に復元されたピクチャ内のブロックの動き情報を格納することができる。前記格納された動き情報は、空間的隣接ブロックの動き情報または時間的隣接ブロックの動き情報として活用するために、インター予測部332に伝達できる。メモリ360は、現在ピクチャ内の復元されたブロックの復元サンプルを格納することができ、イントラ予測部331に伝達できる。
本明細書において、エンコーディング装置200のフィルタリング部260、インター予測部221、及びイントラ予測部222で説明された実施例は、各々、デコーディング装置300のフィルタリング部350、インター予測部332、及びイントラ予測部331にも同一または対応されるように適用されることができる。
前述したように、ビデオコーディングを実行するにあたって圧縮効率を上げるために予測を実行する。それによって、コーディング対象ブロックである現在ブロックに対する予測サンプルを含む予測されたブロックを生成することができる。ここで、前記予測されたブロックは、空間ドメイン(または、ピクセルドメイン)での予測サンプルを含む。前記予測されたブロックは、エンコーディング装置及びデコーディング装置で同一に導出され、前記エンコーディング装置は、原本ブロックの原本サンプル値自体でない前記原本ブロックと前記予測されたブロックとの間のレジデュアルに対する情報(レジデュアル情報)をデコーディング装置にシグナリングすることで映像コーディング効率を上げることができる。デコーディング装置は、前記レジデュアル情報に基づいてレジデュアルサンプルを含むレジデュアルブロックを導出し、前記レジデュアルブロックと前記予測されたブロックを合わせて復元サンプルを含む復元ブロックを生成することができ、復元ブロックを含む復元ピクチャを生成することができる。
前記レジデュアル情報は、変換及び量子化手順を介して生成されることができる。例えば、エンコーディング装置は、前記原本ブロックと前記予測されたブロックとの間のレジデュアルブロックを導出し、前記レジデュアルブロックに含まれているレジデュアルサンプル(レジデュアルサンプルアレイ)に変換手順を実行して変換係数を導出し、前記変換係数に量子化手順を実行して量子化された変換係数を導出することで、関連したレジデュアル情報を(ビットストリームを介して)デコーディング装置にシグナリングできる。ここで、前記レジデュアル情報は、前記量子化された変換係数の値情報、位置情報、変換技法、変換カーネル、量子化パラメータなどの情報を含むことができる。デコーディング装置は、前記レジデュアル情報に基づいて、逆量子化/逆変換手順を実行してレジデュアルサンプル(または、レジデュアルブロック)を導出することができる。デコーディング装置は、予測されたブロックと前記レジデュアルブロックに基づいて復元ピクチャを生成することができる。また、エンコーディング装置は、以後ピクチャのインター予測のための参照のために量子化された変換係数を逆量子化/逆変換してレジデュアルブロックを導出し、これに基づいて復元ピクチャを生成することができる。
インター予測が適用される場合、エンコーディング装置/デコーディング装置の予測部は、ブロック単位でインター予測を実行して予測サンプルを導出することができる。インター予測は、現在ピクチャ以外のピクチャ(ら)のデータ要素(例えば、サンプル値、または動き情報等)に依存した方法で導出される予測を示すことができる(Inter prediction can be a prediction derived in a manner that is dependent on data elements(e.g.,sample values or motion information) of picture(s) other than the current picture)。現在ブロックにインター予測が適用される場合、参照ピクチャインデックスが指す参照ピクチャ上で動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロック(予測サンプルアレイ)を誘導することができる。このとき、インター予測モードで送信される動き情報の量を減らすために、隣接ブロックと現在ブロックとの間の動き情報の相関性に基づいて、現在ブロックの動き情報をブロック、サブブロックまたはサンプル単位で予測できる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測タイプ(L0予測、L1予測、Bi予測等)情報をさらに含むことができる。インター予測が適用される場合、隣接ブロックは、現在ピクチャ内に存在する空間的隣接ブロック(spatial neighboring block)と、参照ピクチャに存在する時間的隣接ブロック(temporal neighboring block)と、を含むことができる。前記参照ブロックを含む参照ピクチャと前記時間的隣接ブロックを含む参照ピクチャは、同じであってもよく、異なってもよい。前記時間的隣接ブロックは、同一位置参照ブロック(collocated reference block)、同一位置CU(colCU)などの名称で呼ばれることもあり、前記時間的隣接ブロックを含む参照ピクチャは、同一位置ピクチャ(collocated picture、colPic)とも呼ばれる。例えば、現在ブロックの隣接ブロックに基づいて動き情報候補リストが構成されることができ、前記現在ブロックの動きベクトル及び/または参照ピクチャインデックスを導出するためにどの候補が選択(使用)されるかを指示するフラグまたはインデックス情報がシグナリングされることができる。多様な予測モードに基づいてインター予測が実行されることができ、例えば、スキップモードと(ノーマル)マージモードの場合、現在ブロックの動き情報は、選択された隣接ブロックの動き情報と同じである。スキップモードの場合、マージモードとは違って、レジデュアル信号が送信されない。動き情報予測(motion vector prediction、MVP)モードの場合、選択された隣接ブロックの動きベクトルを動きベクトル予測子(motion vector predictor)として利用し、動きベクトル差分(motion vector difference)はシグナリングされることができる。この場合、前記動きベクトル予測子及び動きベクトル差分の和を利用して前記現在ブロックの動きベクトルを導出することができる。
インター予測に基づくビデオ/映像エンコーディング手順は、概略的に、例えば、下記を含むことができる。
図4は、インター予測ベースのビデオ/映像エンコーディング方法の例を示す。
エンコーディング装置は、現在ブロックに対するインター予測を実行する(S400)。エンコーディング装置は、現在ブロックのインター予測モード及び動き情報を導出し、前記現在ブロックの予測サンプルを生成することができる。ここで、インター予測モード決定、動き情報導出、及び予測サンプル生成手順は、同時に実行されてもよく、ある一手順が他の手順より以前に実行されてもよい。例えば、エンコーディング装置のインター予測部は、予測モード決定部、動き情報導出部、予測サンプル導出部を含むことができ、予測モード決定部で前記現在ブロックに対する予測モードを決定し、動き情報導出部で前記現在ブロックの動き情報を導出し、予測サンプル導出部で前記現在ブロックの予測サンプルを導出することができる。例えば、エンコーディング装置のインター予測部は、動き推定(motion estimation)を介して参照ピクチャの一定領域(サーチ領域)内で前記現在ブロックと類似したブロックをサーチし、前記現在ブロックとの差が最小または一定基準以下である参照ブロックを導出することができる。これに基づいて前記参照ブロックが位置する参照ピクチャを指す参照ピクチャインデックスを導出し、前記参照ブロックと前記現在ブロックの位置差に基づいて動きベクトルを導出することができる。エンコーディング装置は、多様な予測モードのうち前記現在ブロックに対して適用されるモードを決定することができる。エンコーディング装置は、前記多様な予測モードに対するRD costを比較して前記現在ブロックに対する最適の予測モードを決定することができる。
例えば、エンコーディング装置は、前記現在ブロックにスキップモードまたはマージモードが適用される場合、後述するマージ候補リストを構成し、前記マージ候補リストに含まれているマージ候補が指す参照ブロックのうち前記現在ブロックと前記現在ブロックとの差が最小または一定基準以下である参照ブロックを導出することができる。この場合、前記導出された参照ブロックと関連したマージ候補が選択され、前記選択されたマージ候補を指すマージインデックス情報が生成されてデコーディング装置にシグナリングされることができる。前記選択されたマージ候補の動き情報を利用して前記現在ブロックの動き情報が導出されることができる。
他の例として、エンコーディング装置は、前記現在ブロックに(A)MVPモードが適用される場合、後述する(A)MVP候補リストを構成し、前記(A)MVP候補リストに含まれているmvp(motion vector predictor)候補の中から選択されたmvp候補の動きベクトルを前記現在ブロックのmvpとして利用できる。この場合、例えば、前述した動き推定により導出された参照ブロックを指す動きベクトルが前記現在ブロックの動きベクトルとして利用されることができ、前記mvp候補のうち、前記現在ブロックの動きベクトルとの差が最も小さい動きベクトルを有するmvp候補が、前記選択されたmvp候補になる。前記現在ブロックの動きベクトルから前記mvpを引いた差分であるMVD(motion vector difference)が導出されることができる。この場合、前記MVDに対する情報がデコーディング装置にシグナリングされることができる。また、(A)MVPモードが適用される場合、前記参照ピクチャインデックスの値は、参照ピクチャインデックス情報で構成されて別途に前記デコーディング装置にシグナリングされることができる。
エンコーディング装置は、前記予測サンプルに基づいてレジデュアルサンプルを導出することができる(S410)。エンコーディング装置は、前記現在ブロックの原本サンプルと前記予測サンプルの比較を介して前記レジデュアルサンプルを導出することができる。
エンコーディング装置は、予測情報及びレジデュアル情報を含む映像情報をエンコーディングする(S420)。エンコーディング装置は、エンコーディングされた映像情報をビットストリーム形態で出力できる。前記予測情報は、前記予測手順に関連した情報であって、予測モード情報(例えば、skip flag、merge flagまたはmode index等)及び動き情報に対する情報を含むことができる。前記動き情報に対する情報は、動きベクトルを導出するための情報である候補選択情報(例えば、merge index、mvp flagまたはmvp index)を含むことができる。また、前記動き情報に対する情報は、前述したMVDに対する情報及び/または参照ピクチャインデックス情報を含むことができる。また、前記動き情報に対する情報は、L0予測、L1予測、または対(bi)予測が適用されるかどうかを示す情報を含むことができる。前記レジデュアル情報は、前記レジデュアルサンプルに対する情報である。前記レジデュアル情報は、前記レジデュアルサンプルに対する量子化された変換係数に対する情報を含むことができる。
出力されたビットストリームは、(デジタル)格納媒体に格納されてデコーディング装置に伝達されることもでき、またはネットワークを介してデコーディング装置に伝達されることもできる。
一方、前述したように、エンコーディング装置は、前記参照サンプル及び前記レジデュアルサンプルに基づいて復元ピクチャ(復元サンプル及び復元ブロックを含む)を生成することができる。これはデコーディング装置で実行されることと同じ予測結果をエンコーディング装置で導出するためであり、それによって、コーディング効率を上げることができる。したがって、エンコーディング装置は、復元ピクチャ(または、復元サンプル、復元ブロック)をメモリに格納し、インター予測のための参照ピクチャとして活用できる。前記復元ピクチャにインループフィルタリング手順などがさらに適用されることができることは、前述の通りである。
インター予測に基づくビデオ/映像デコーディング手順は、概略的に、例えば、下記を含むことができる。
図5は、インター予測ベースのビデオ/映像デコーディング方法の例を示す。
図5を参照すると、デコーディング装置は、前記エンコーディング装置で実行された動作と対応される動作を実行することができる。デコーディング装置は、受信された予測情報に基づいて現在ブロックに予測を実行して予測サンプルを導出することができる。
具体的に、デコーディング装置は、受信された予測情報に基づいて前記現在ブロックに対する予測モードを決定することができる(S500)。デコーディング装置は、前記予測情報内の予測モード情報に基づいて、前記現在ブロックにどのようなインター予測モードが適用されるかを決定することができる。
例えば、前記merge flagに基づいて、前記現在ブロックに前記マージモードが適用されるかまたは(A)MVPモードが決定されるかを決定することができる。または、前記mode indexに基づいて多様なインター予測モード候補の中から一つを選択することができる。前記インター予測モード候補は、スキップモード、マージモード及び/または(A)MVPモードを含むことができ、または後述する多様なインター予測モードを含むことができる。
デコーディング装置は、前記決定されたインター予測モードに基づいて前記現在ブロックの動き情報を導出する(S510)。例えば、デコーディング装置は、前記現在ブロックにスキップモードまたはマージモードが適用される場合、後述するマージ候補リストを構成し、前記マージ候補リストに含まれているマージ候補の中から一つのマージ候補を選択することができる。前記選択は、前述した選択情報(merge index)に基づいて実行されることができる。前記選択されたマージ候補の動き情報を利用して前記現在ブロックの動き情報が導出されることができる。前記選択されたマージ候補の動き情報が前記現在ブロックの動き情報として利用されることができる。
他の例として、デコーディング装置は、前記現在ブロックに(A)MVPモードが適用される場合、後述する(A)MVP候補リストを構成し、前記(A)MVP候補リストに含まれているmvp(motion vector predictor)候補の中から選択されたmvp候補の動きベクトルを前記現在ブロックのmvpとして利用できる。前記選択は、前述した選択情報(mvp flag または mvp index)に基づいて実行されることができる。この場合、前記MVDに対する情報に基づいて前記現在ブロックのMVDを導出することができ、前記現在ブロックのmvpと前記MVDに基づいて前記現在ブロックの動きベクトルを導出することができる。また、前記参照ピクチャインデックス情報に基づいて前記現在ブロックの参照ピクチャインデックスを導出することができる。前記現在ブロックに対する参照ピクチャリスト内で前記参照ピクチャインデックスが指すピクチャが、前記現在ブロックのインター予測のために参照される参照ピクチャとして導出されることができる。
一方、後述するように、候補リスト構成なしで前記現在ブロックの動き情報が導出されることができ、この場合、後述する予測モードで開示された手順によって前記現在ブロックの動き情報が導出されることができる。この場合、前述したような候補リスト構成は省略されることができる。
デコーディング装置は、前記現在ブロックの動き情報に基づいて前記現在ブロックに対する予測サンプルを生成することができる(S520)。この場合、前記現在ブロックの参照ピクチャインデックスに基づいて前記参照ピクチャを導出し、前記現在ブロックの動きベクトルが前記参照ピクチャ上で指す参照ブロックのサンプルを利用して前記現在ブロックの予測サンプルを導出することができる。この場合、後述するように、場合によって、前記現在ブロックの予測サンプルのうち全部または一部に対する予測サンプルフィルタリング手順がさらに実行されることができる。
例えば、デコーディング装置のインター予測部は、予測モード決定部、動き情報導出部、予測サンプル導出部を含むことができ、予測モード決定部で受信された予測モード情報に基づいて前記現在ブロックに対する予測モードを決定し、動き情報導出部で受信された動き情報に対する情報に基づいて前記現在ブロックの動き情報(動きベクトル及び/または参照ピクチャインデックス等)を導出し、予測サンプル導出部で前記現在ブロックの予測サンプルを導出することができる。
デコーディング装置は、受信されたレジデュアル情報に基づいて前記現在ブロックに対するレジデュアルサンプルを生成する(S530)。デコーディング装置は、前記予測サンプル及び前記レジデュアルサンプルに基づいて前記現在ブロックに対する復元サンプルを生成し、これに基づいて復元ピクチャを生成することができる。(S540)。以後、前記復元ピクチャにインループフィルタリング手順などがさらに適用されることができることは、前述の通りである。
図6は、インター予測手順を例示的に示す。
図6を参照すると、前述したように、インター予測手順は、インター予測モード決定ステップ、決定された予測モードによる動き情報導出ステップ、導出された動き情報に基づく予測実行(予測サンプル生成)ステップを含むことができる。前記インター予測手順は、前述したように、エンコーディング装置及びデコーディング装置で実行されることができる。本文書において、コーディング装置とは、エンコーディング装置及び/またはデコーディング装置を含むことができる。
図6を参照すると、コーディング装置は、現在ブロックに対するインター予測モードを決定する(S600)。ピクチャ内の現在ブロックの予測のために、多様なインター予測モードが使われることができる。例えば、マージモード、スキップモード、MVP(motion vector prediction)モード、アフィン(Affine)モード、サブブロックマージモード、MMVD(merge with MVD)モードなど、多様なモードが使われることができる。DMVR(Decoder side motion vector refinement)モード、AMVR(adaptive motion vector resolution)モード、Bi-prediction with CU-level weight(BCW)、Bi-directional optical flow(BDOF)などが付随的なモードとして使われまたはその代わりに使われることができる。アフィンモードは、アフィン動き予測(affine motion prediction)モードとも呼ばれる。MVPモードは、AMVP(advanced motion vector prediction)モードとも呼ばれる。本文書において、一部モード及び/または一部モードにより導出された動き情報候補は、他のモードの動き情報関連候補のうち一つとして含まれることもできる。例えば、HMVP候補は、前記マージ/スキップモードのマージ候補として追加されることもでき、または前記MVPモードのmvp候補として追加されることもできる。前記HMVP候補が前記マージモードまたはスキップモードの動き情報候補として使われる場合、前記HMVP候補は、HMVPマージ候補とも呼ばれる。
現在ブロックのインター予測モードを指す予測モード情報がエンコーディング装置からデコーディング装置にシグナリングされることができる。前記予測モード情報は、ビットストリームに含まれてデコーディング装置に受信されることができる。前記予測モード情報は、多数の候補モードのうち一つを指示するインデックス情報を含むことができる。または、フラグ情報の階層的シグナリングを介してインター予測モードを指示することもできる。この場合、前記予測モード情報は、一つ以上のフラグを含むことができる。例えば、スキップフラグをシグナリングしてスキップモード適用可否を指示し、スキップモードが適用されない場合にマージフラグをシグナリングしてマージモード適用可否を指示し、マージモードが適用されない場合にMVPモードが適用されることと指示し、または追加的な区分のためのフラグをさらにシグナリングすることもできる。アフィンモードは、独立的なモードでシグナリングされることもでき、またはマージモードまたはMVPモードなどに従属的なモードでシグナリングされることもできる。例えば、アフィンモードは、アフィンマージモード及びアフィンMVPモードを含むことができる。
コーディング装置は、前記現在ブロックに対する動き情報を導出する(S610)。前記動き情報導出は、前記インター予測モードに基づいて導出されることができる。
コーディング装置は、現在ブロックの動き情報を利用してインター予測を実行することができる。エンコーディング装置は、動き推定(motion estimation)手順を介して現在ブロックに対する最適の動き情報を導出することができる。例えば、エンコーディング装置は、現在ブロックに対する原本ピクチャ内の原本ブロックを利用して相関性が高い類似した参照ブロックを参照ピクチャ内の決められた探索範囲内で分数ピクセル単位で探索でき、それによって、動き情報を導出することができる。ブロックの類似性は、位相(phase)ベースのサンプル値の差に基づいて導出することができる。例えば、ブロックの類似性は、現在ブロック(または、現在ブロックのテンプレート)と参照ブロック(または、参照ブロックのテンプレート)との間のSADに基づいて計算されることができる。この場合、探索領域内のSADが最も小さい参照ブロックに基づいて動き情報を導出することができる。導出された動き情報は、インター予測モードに基づいて多様な方法によってデコーディング装置にシグナリングされることができる。
コーディング装置は、前記現在ブロックに対する動き情報に基づいてインター予測を実行する(S620)。コーディング装置は、前記動き情報に基づいて前記現在ブロックに対する予測サンプル(ら)を導出することができる。前記予測サンプルを含む現在ブロックは、予測されたブロックとも呼ばれる。
一方、インター予測において、従来のマージまたはAMVPモードによると、現在ブロックの空間的/時間的に隣接したブロックの動きベクトルを動き情報候補として使用することによって、動き情報量を減らす方法が使われた。例えば、現在ブロックの動き情報候補を導出するために使われる隣接ブロックは、現在ブロックの左下側コーナー隣接ブロック、左側隣接ブロック、右上側コーナー隣接ブロック、上側隣接ブロック、左上側コーナー隣接ブロックを含むことができた。
図7は、従来のマージまたはAMVPモードで動き情報候補導出のために使われた空間的隣接ブロックを例示的に示す。
基本的に、前記空間的隣接ブロックは、現在ブロックと接しているブロックに制限された。これはハードウェア具現性を高めるためであり、現在ブロックと遠く離れているブロックの情報を誘導するためにはラインバッファ増加などの問題が発生するためであった。しかし、現在ブロックの動き情報候補を導出するために隣接しないブロックの動き情報を使用することは、多様な候補を構成することができるため、性能向上をもたらす。ラインバッファ増加なしで隣接しないブロックの動き情報を使用するためにHMVP(History based Motion Vector Prediction)方法が使われることができる。本文書において、HMVPは、History based Motion Vector PredictionまたはHistory based Motion Vector Predictorを示すことができる。本発明によると、HMVPを利用して効率的にインター予測を実行することができ、並列プロセシングをサポートすることができる。例えば、本発明の実施例では並列化プロセシングのためにヒストリバッファを管理する多様な方法を提案しており、これに基づいて並列プロセシングがサポートされることができる。ただし、並列プロセシングをサポートするとは、並列プロセシングが必修的に実行されるべきであるという意味ではなく、ハードウェア性能やサービス形態を考慮してコーディング装置が並列プロセシングを実行してもよく、実行しなくてもよい。例えば、コーディング装置がマルチコアプロセッサを備えた場合、コーディング装置は、スライス、ブリク及び/またはタイルのうち一部を並列処理することができる。一方、コーディング装置がシングルコアプロセッサを備えた場合またはマルチコアプロセッサを備えた場合も、コーディング装置は、演算及びメモリ負担を減らしながら順次的プロセシングを実行することもできる。
前述したHMVP方法によるHMVP候補は、以前にコーディングされたブロックの動き情報を含むことができる。例えば、現在ピクチャ内のブロックコーディング順序によって以前にコーディングされたブロックの動き情報は、もし、前記以前にコーディングされたブロックが現在ブロックに隣接しない場合、前記現在ブロックの動き情報として考慮されなかった。しかし、HMVP候補は、前記以前にコーディングされたブロックが現在ブロックに隣接するかどうかを考慮せずに、現在ブロックの動き情報候補(例えば、マージ候補またはMVP候補)として考慮されることができる。この場合、複数個のHMVP候補がバッファに格納されることができる。例えば、現在ブロックにマージモードが適用される場合、HMVP候補(HMVPマージ候補)がマージ候補リストに追加されることができる。この場合、前記HMVP候補は、マージ候補リストに含まれる空間的マージ候補及び時間的マージ候補の次に追加されることができる。
HMVP方法によると、以前にコーディングされたブロックの動き情報は、テーブル形態で格納されることができ、現在ブロックの動き情報候補(例えば、マージ候補)として使われることができる。複数のHMVP候補を含むテーブル(または、バッファ、リスト)がエンコーディング/デコーディング手順の間に維持されることができる。前記テーブル(または、バッファ、リスト)は、HMVPテーブル(または、バッファ、リスト)とも呼ばれる。本発明の一実施例によると、前記テーブル(または、バッファ、リスト)は、新しいスライスを接する(encounter)場合に初期化されることができる。または、本発明の一実施例によると、前記テーブル(または、バッファ、リスト)は、新しいCTU行を接する場合に初期化されることができる。前記テーブルが初期化される場合、前記テーブルに含まれているHMVP候補の個数は、0に設定されることができる。前記テーブル(または、バッファ、リスト)のサイズは、特定値(例えば、5等)に固定されることができる。例えば、インターコーディングされたブロックがある場合、関連した動き情報が前記テーブルの最後のエントリで新しいHMVP候補として追加されることができる。前記(HMVP)テーブルは、(HMVP)バッファまたは(HMVP)リストとも呼ばれる。
図8は、HMVP候補ベースのデコーディング手順の例を概略的に示す。ここで、HMVP候補ベースのデコーディング手順は、HMVP候補ベースのインター予測手順を含むことができる。
図8を参照すると、デコーディング装置は、HMVP候補(ら)を含むHMVPテーブルをロードし、前記HMVP候補(ら)のうち少なくとも一つに基づいてブロックをデコーディングする。具体的に、例えば、デコーディング装置は、前記HMVP候補(ら)のうち少なくとも一つに基づいて現在ブロックの動き情報を導出することができ、前記動き情報に基づいて前記現在ブロックに対するインター予測を実行し、予測されたブロック(予測サンプルを含む)を導出することができる。前記予測されたブロックに基づいて復元ブロックが生成されることができることは、前述の通りである。前記現在ブロックの導出された動き情報は、前記テーブルにアップデートされることができる。この場合、前記動き情報が前記テーブルの最後のエントリで新しいHMVP候補として追加されることができる。もし、前記テーブルに既存に含まれているHMVP候補の個数が前記テーブルのサイズと同じ場合、前記テーブルに最初入った候補が削除され、前記導出された動き情報が前記テーブルの最後のエントリで新しいHMVP候補として追加されることができる。
図9は、FIFO規則によるHMVPテーブルアップデートを例示的に示し、図10は、制限されたFIFO規則によるHMVPテーブルアップデートを例示的に示す。
前記テーブルにはFIFO(first-in-first-out)規則が適用されることができる。例えば、もし、テーブルサイズSが16である場合、これは16個のHMVP候補が前記テーブルに含まれることができることを示す。もし、以前にコーディングされたブロックから16個より多いHMVP候補が発生する場合、FIFO規則が適用されることができ、それによって、前記テーブルは、最新コーディングされた最大16個の動き情報候補を含むことができる。この場合、前記図9に示すように、FIFO規則が適用されて最古HMVP候補が除去され、新しいHMVP候補が追加されることができる。
一方、コーディング効率をより向上させるために、図10に示すように制限されたFIFO規則が適用されることもできる。図10を参照すると、HMVP候補をテーブルに挿入する時、まず、重複チェック(redundancy check)が適用されることができる。それによって、同じ動き情報を有するHMVP候補が既に前記テーブルに存在するかどうかを判断することができる。もし、前記テーブルに同じ動き情報を有するHMVP候補が存在する場合、前記同じ動き情報を有するHMVP候補は、前記テーブルから除去され、前記除去されるHMVP候補以後のHMVP候補は、一間ずつ動いて(即ち、各インデックス-1)、以後新しいHMVP候補が挿入されることができる。
前述したように、HMVP候補は、マージ候補リスト構成手順で使われることができる。この場合、例えば、前記テーブル内の最後のエントリから最初のエントリまで挿入可能な全てのHMVP候補は、空間的マージ候補及び時間的マージ候補の次に挿入されることができる。この場合、プルーニングチェックがHMVP候補に対して適用されることができる。許容される最大マージ候補の個数はシグナリングされることができ、可用マージ候補の全体個数が最大マージ候補の個数に到達する場合、前記マージ候補リスト構成手順は終了されることができる。
同様に、HMVP候補は、(A)MVP候補リスト構成手順で使われることもできる。この場合、HMVPテーブル内の最後のk個のHMVP候補の動きベクトルがMVP候補リストを構成するTMVP候補の次に追加されることができる。この場合、例えば、MVPターゲット参照ピクチャと同じ参照ピクチャを有するHMVP候補が前記MVP候補リスト構成のために使われることができる。ここで、MVPターゲット参照ピクチャは、前記MVPモードが適用された現在ブロックのインター予測のための参照ピクチャを示すことができる。この場合、プルーニングチェックがHMVP候補に対して適用されることができる。前記kは、例えば、4である。ただし、これは例示に過ぎず、前記kは、1、2、3、4等、多様な値を有することができる。
一方、全体マージ候補の個数が15と同じまたは大きい場合、以下の表1のようにtruncated unary plus fixed length(with 3 bits)二進化(binarization)方法がマージインデックスコーディングのために適用されることができる。
Figure 0007282872000001
前記表は、Nmrg=15である場合を仮定したし、Nmrgは、マージ候補の全体個数を示す。
一方、ビデオコデックを適用したソリューション開発時、具現最適化のために映像/ビデオコーディングにおいて並列処理がサポートされることもできる。
図11は、並列処理のための技法のうち一つであるWPP(Wavefront Parallel Processing)を例示的に示す。
図11を参照すると、WPPが適用される場合、CTU行単位で並列化処理されることができる。この場合、X表示されたブロックをコーディング(エンコーディング/デコーディング)する場合に矢印が指す位置とディペンデンシーが存在するようになる。したがって、現在コーディングしようとするブロックの右上側CTUがコーディング完了することを待たなければならない。また、WPPが適用される場合、CABAC(コンテキスト)確率テーブルの初期化は、スライス単位で行われることができ、エントロピーエンコーディング/デコーディングを含んで並列化処理するためには、CTU行単位でCABAC確率テーブルが初期化されなければならない。WPPは、効率的な初期化位置を定めるために提案された技術と見なすこともできる。
前述したHMVP方法は、あらかじめ決められたバッファ(HMVPテーブル)大きさほど各ブロックのコーディング手順で導出された動き情報を候補として格納する。この場合、図9で付加条件なしで開示したようにバッファ数ほど候補を満たすこともでき、または新しく追加される候補とバッファ(HMVPテーブル)内に存在する候補との重複チェックを介して重複しないように候補を満たすこともできる。それによって、多様な候補を構成することができる。しかし、ビデオコデックを適用したソリューション開発時、HMVP候補がバッファに満たされる時点を一般的に知ることができないため、WPPを適用して、またはWPPを適用しなくても並列処理可能に具現することが不可能である。
図12は、並列処理を考慮して一般HMVP方法を適用する時の問題点を例示的に示す。
図12を参照すると、WPPのように各CTU行単位で並列化する場合、HMVPバッファのディペンデンシー問題が発生できる。例えば、N(N>=1)番目のCTU行での1番目のCTUのためのHMVPバッファは、N-1番目のCTU行に存在するブロック、例えば、N-1番目のCTU行の最後のCTU内のブロックのコーディング(エンコーディング/デコーディング)が完了しなければ満たされないためである。即ち、現在構造下で並列処理が適用される場合、デコーディング装置は、現在HMVPバッファに格納されたHMVP候補が現在(対象)ブロックのデコーディングのために使われるHMVPバッファが合うかどうかを知ることができない。これは順次的処理を適用する場合に現在ブロックのコーディング時点で導出されるHMVPバッファと並列処理を適用する場合に現在ブロックのコーディング時点で導出されるHMVPバッファに差が発生するおそれがあるためである。
本発明の一実施例では前記のような問題点を解決するために、HMVPを適用する時、ヒストリ管理バッファ(HMVPバッファ)を初期化することによって並列処理がサポートされるようにする。
図13は、本発明の一実施例に係るヒストリ管理バッファ(HMVPバッファ)の初期化方法を例示的に示す。
図13を参照すると、CTU行の最初のCTU毎にHMVPバッファが初期化されることができる。即ち、CTU行の最初のCTUをコーディングする場合、HMVPバッファを初期化することで、HMVPバッファに含まれているHMVP候補の個数が0になるようにすることができる。前記のように、CTU行毎にHMVPバッファを初期化することによって、並列処理がサポートされる場合も制約なしで現在ブロックの左側方向に位置するCTUのコーディング過程で導出されたHMVP候補を使用することができる。この場合、例えば、現在ブロックである現在CUがCTU行の1番目のCTUに位置し、現在CUが前記1番目のCTUの1番目のCUに該当する場合、前記HMVPバッファに含まれているHMVP候補の個数が0である。また、例えば、前記CTU行で現在CUより以前にコーディングされたCUがインターモードでコーディングされると、前記以前にコーディングされたCUの動き情報に基づいてHMVP候補が導出されて前記HMVPバッファに含まれることができる。
図14は、本発明の一実施例に係るHMVPバッファ管理方法を例示的に示す。
図14を参照すると、スライス単位でHMVPバッファを初期化することができ、スライス内のCTUに対してもコーディング対象CTU(現在CTU)が各CTU行の1番目のCTUかどうかを判断することができる。図14では例示として(ctu_idx % Num)が0である場合、1番目のCTUであると判断すると記述した。このとき、Numは、各CTU行でのCTU個数を意味する。他の例として、前述したブリク概念を利用する場合、ctu_idx_in_brick % BrickWidth)が0である場合、(該当ブリク内の)CTU行の1番目のCTUであると判断できる。ここで、ctu_idx_in_brickは、前記ブリク内の該当CTUのインデックスを示し、BrickWidthは、該当ブリクの幅をCTU単位で表す。即ち、BrickWidthは、該当ブリク内のCTU列の個数を示すことができる。現在CTUがCTU行の1番目のCTUである場合、HMVPバッファを初期化(即ち、HMVPバッファ内の候補の個数を0に設定)し、そうでない場合、HMVPバッファを維持する。以後、該当CTU内の各CU別予測過程(例えば、マージまたはMVPモードベース)を経て、このとき、HMVPバッファに格納された候補がマージモードまたはMVPモードの動き情報候補(例えば、マージ候補またはMVP候補)として含まれることができる。マージモードまたはMVPモードなどに基づくインター予測過程で導出された対象ブロック(現在ブロック)の動き情報は、HMVPバッファに新しいHMVP候補として格納(アップデート)される。この場合、前述した重複チェック過程がさらに実行されることもできる。以後、CU及びCTUに対しても前述した手順が繰り返しされることができる。
他の例として、HMVPを適用する時、CTU毎にHMVPバッファを初期化することでCTU単位のディペンデンシーを除去することもできる。この場合、CTU単位でHMVPバッファが初期化されるため、CTU内に存在するブロックの動き情報がHMVPテーブルに格納される。この場合、同一CTU内にあるブロック(例えば、CU)の動き情報に基づいてHMVP候補を導出することができ、下記のように現在CTUが各CTU行の1番目のCTUかどうかを判断することなしにHMVPバッファ初期化が可能になる。
図15は、本発明の他の一実施例に係るHMVPバッファ管理方法を例示的に示す。
図15を参照すると、現在CTUが各CTU行の1番目のCTUかどうかを判断することなしにCTU毎にHMVPバッファ初期化を実行することができる。
一方、CTU毎にHMVPバッファ初期化をする場合、該当CTU内に存在するブロックの動き情報を導出したHMVP候補のみがHMVPバッファに含まれるため、隣接しないブロックから導出される候補の使用が制限的である。したがって、現在CTUに隣接した左側CTUの候補をHMVPバッファに格納して可能な候補を増やすことができる。
図16は、本発明の他の一実施例に係るHMVPバッファ管理方法を例示的に示す。
図16を参照すると、現在CTU(N-th CTU)と左側に二つのCTU、即ち、(N-1)th、(N-2)th CTUが存在する時、現在CTU内に存在するCUは、(N-1)th CTU内のブロックから導出されたHMVP候補(ら)を使用することができる。この場合、(N-2)th CTU内のブロックから導出されたHMVP候補(ら)は使われることができず、初期化または除去される。
本実施例で提案する方法を適用するためのHMVPバッファは、下記のように制御または管理されることができる。
図17は、HMVPバッファ管理方法を例示的に示す。
図17を参照すると、HMVPのバッファ大きさがS(例えば、16)である時(buffer index 0~15)、各CTU内のCUは、図17に示すように格納され、これはブロックインデックスで表すことができる。(N-1)th CTUコーディングが完了すると、(N-2)th CTUで導出されたHMVP候補は、バッファから除去され、現在CTU内のブロックから導出された動き情報がHMVP候補としてHMVPバッファに格納される。バッファ管理のために図面に示したようにCTUインデックスで表したCTU指示子(indicator)が存在でき、コーディング装置は、CTUインデックスに基づいてバッファから除去する対象をさがすことができる。
前述したHMVPのヒストリ管理バッファ(HMVPバッファ)の大きさは、バッファ大きさによる性能増加幅、バッファに存在する候補との重複チェックなどのための計算量などを考慮して決定されることができる。前述した実施例のようにバッファ初期化によって既存HMVPと比較して利用可能なHMVP候補が減るため、HMVPのための管理バッファ大きさがさらに小さくなっても性能の変化がほとんどない。例えば、CTU行毎にHMVPバッファを初期化する実施例や、現在CTUの隣接した左側CTUから導出されたHMVP候補まで使用する実施例を適用する時、バッファサイズSを5または6に設定できる。また、例えば、前述したCTU毎にHMVPバッファを初期化する実施例を適用する時、バッファサイズSを4または5に設定でき、この場合、性能低下がほとんどない。また、ヒストリ管理バッファのバッファ大きさを決定する時、SIMD(Single Instruction Multiple Data)の適用可否が考慮されることができる。例えば、複数個(例えば、8個)のデータを一度に比較及び計算することが可能な場合、バッファサイズを減らす必要なしでSIMDを適用することが計算複雑度増加なしで性能を維持することができて効率的である。
図18及び図19は、本発明の実施例に係るインター予測方法を含むビデオ/映像エンコーディング方法及び関連コンポーネントの一例を概略的に示す。図18で開示された方法は、図2で開示されたエンコーディング装置により実行されることができる。具体的に、例えば、図18のS1800乃至S1830は、前記エンコーディング装置の予測部220により実行されることができ、図18のS1840は、前記エンコーディング装置のレジデュアル処理部230により実行されることができ、図18のS1850は、前記エンコーディング装置のエントロピーエンコーディング部240により実行されることができる。図18で開示された方法は、本文書で詳述した実施例を含むことができる。
図18を参照すると、エンコーディング装置は、現在ブロックに対するHMVPバッファを導出する(S1800)。エンコーディング装置は、本文書の実施例で詳述したHMVPバッファ管理方法を実行することができる。一例として、前記HMVPバッファは、スライス単位で初期化されることができる。
他の例として、前記HMVPバッファは、CTU行単位で初期化されることができる。エンコーディング装置は、前記現在CTUが前記CTU行の前記1番目のCTUかどうかを判断することができる。この場合、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUで初期化されることができる。即ち、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUを処理する場合に(when processing a first-ordered CTU)初期化されることができる。前記現在CTUが前記CTU行の前記1番目のCTUであると判断された場合、前記HMVPバッファは、前記現在CTU内で前記現在ブロックより以前にエンコーディングされたブロックの動き情報に基づいて導出されたHMVP候補を含むことができる。前記現在CTUが前記CTU行の前記1番目のCTUでないと判断された場合、前記HMVPバッファは、前記現在CTU内で前記現在ブロックより以前にエンコーディングされたブロックの動き情報に基づいて導出されたHMVP候補及び前記CTU行の以前CTU内で以前にエンコーディングされたブロックの動き情報に基づいて導出されたHMVP候補を含むことができる。また、例えば、現在ブロックである現在CUがCTU行の1番目のCTUに位置し、現在CUが前記1番目のCTUの1番目のCUに該当する場合、前記HMVPバッファに含まれているHMVP候補の個数が0である。また、例えば、前記CTU行で現在CUより以前にコーディングされたCU(例えば、現在CTUで現在CUより以前にコーディングされたCU及び/または現在CTU行で現在CTUより以前にコーディングされたCTU内のCU)がインターモードでコーディングされると、前記以前にコーディングされたCUの動き情報に基づいてHMVP候補が導出されて前記HMVPバッファに含まれることができる。もし、現在ブロックにマージモードが適用される場合、前記HMVP候補は、前記現在ブロックに対するマージ候補リスト内の可用なマージ候補(例えば、空間的マージ候補及び時間的マージ候補を含む)の個数があらかじめ決定された最大マージ候補個数より小さい場合に前記マージ候補リストに追加されることができる。この場合、前記HMVP候補は、前記マージ候補リスト内で前記空間的候補及び時間的候補の後に挿入されることができる。即ち、前記HMVP候補には前記マージ候補リスト内で前記空間的候補及び時間的候補に割り当てられるインデックスより大きいインデックス値が割り当てられることができる。
他の例として、前記HMVPバッファは、CTU単位で初期化されることができる。または、前記HMVPバッファは、現在CTUの左側CTUで導出されたHMVP候補まで含むことができる。前記HMVPバッファが初期化される場合、前記HMVPバッファに含まれるHMVP候補の個数は、0に設定されることができる。
エンコーディング装置は、前記HMVPバッファに基づいて前記現在ブロックの動き情報を導出する(S1810)。エンコーディング装置は、前記HMVPバッファに含まれているHMVP候補に基づいて前記現在ブロックの動き情報を導出することができる。例えば、前記現在ブロックにマージモードまたはMVP(motion vector prediction)モードが適用される場合、前記HMVPバッファに含まれている前記HMVP候補をマージ候補またはMVP候補として使用することができる。例えば、前記現在ブロックにマージモードが適用される場合、前記HMVPバッファに含まれている前記HMVP候補は、マージ候補リストの候補として含まれ、マージインデックスに基づいて前記マージ候補リストに含まれている候補の中で前記HMVP候補を指示することができる。前記マージインデックスは、予測関連情報として後述する映像情報に含まれることができる。この場合、前記HMVP候補は、前記マージ候補リストに含まれる空間的マージ候補及び時間的マージ候補より低い優先順位で前記マージ候補リスト内でインデックスが割り当てられることができる。即ち、前記HMVP候補に割り当てられるインデックス値は、前記空間的マージ候補及び時間的マージ候補のインデックス値より高い値が割り当てられることができる。
エンコーディング装置は、前記導出された動き情報に基づいて前記現在ブロックに対する予測サンプルを生成する(S1820)。エンコーディング装置は、前記動き情報に基づいてインター予測(動き補償)を実行することで、前記動き情報が参照ピクチャ上で指す参照サンプルを利用して予測サンプルを導出することができる。
エンコーディング装置は、前記予測サンプルに基づいてレジデュアルサンプルを生成する(S1830)。エンコーディング装置は、前記現在ブロックに対する原本サンプルと前記現在ブロックに対する予測サンプルに基づいてレジデュアルサンプルを生成することができる。
エンコーディング装置は、前記レジデュアルサンプルに基づいてレジデュアルサンプルに対する情報を導出し、前記レジデュアルサンプルに対する情報を含む映像情報をエンコーディングする(S1840)。前記レジデュアルサンプルに対する情報は、レジデュアル情報とも呼ばれ、量子化された変換係数に対する情報を含むことができる。エンコーディング装置は、前記レジデュアルサンプルに変換/量子化手順を実行することで量子化された変換係数を導出することができる。
エンコーディングされた映像情報は、ビットストリーム形態で出力されることができる。前記ビットストリームは、ネットワークまたは格納媒体を介してデコーディング装置に送信されることができる。映像情報は、予測関連情報をさらに含むことができ、前記予測関連情報は、多様な予測モード(例えば、マージモード、MVPモード等)に対する情報、MVD情報などをさらに含むことができる。
図20及び図21は、本発明の実施例に係るインター予測方法を含む映像デコーディング方法及び関連コンポーネントの一例を概略的に示す。図20で開示された方法は、図3で開示されたデコーディング装置により実行されることができる。具体的に、例えば、図20のS2000乃至S2030は、前記デコーディング装置の予測部330、S2040は、前記デコーディング装置の加算部340により実行されることができる。図20で開示された方法は、本文書で詳述した実施例を含むことができる。
図20を参照すると、デコーディング装置は、現在ブロックに対するHMVPバッファを導出する(S2000)。デコーディング装置は、本文書の実施例で詳述したHMVPバッファ管理方法を実行することができる。一例として、前記HMVPバッファは、スライス単位で初期化されることができる。
他の例として、前記HMVPバッファは、CTU行単位で初期化されることができる。デコーディング装置は、前記現在CTUが前記CTU行の前記1番目のCTUかどうかを判断することができる。この場合、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUで初期化されることができる。即ち、前記HMVPバッファは、前記現在ブロックを含む現在CTUが位置するCTU行の1番目のCTUを処理する場合に(when processing a first-ordered CTU)初期化されることができる。前記現在CTUが前記CTU行の前記1番目のCTUであると判断された場合、前記HMVPバッファは、前記現在CTU内で前記現在ブロックより以前にデコーディングされたブロックの動き情報に基づいて導出されたHMVP候補を含むことができる。前記現在CTUが前記CTU行の前記1番目のCTUでないと判断された場合、前記HMVPバッファは、前記現在CTU内で前記現在ブロックより以前にデコーディングされたブロックの動き情報に基づいて導出されたHMVP候補及び前記CTU行の以前CTU内で以前にデコーディングされたブロックの動き情報に基づいて導出されたHMVP候補を含むことができる。また、例えば、現在ブロックである現在CUがCTU行の1番目のCTUに位置し、現在CUが前記1番目のCTUの1番目のCUに該当する場合、前記HMVPバッファに含まれているHMVP候補の個数が0である。また、例えば、前記CTU行で現在CUより以前にコーディングされたCU(例えば、現在CTUで現在CUより以前にコーディングされたCU及び/または現在CTU行で現在CTUより以前にコーディングされたCTU内のCU)がインターモードでコーディングされると、前記以前にコーディングされたCUの動き情報に基づいてHMVP候補が導出されて前記HMVPバッファに含まれることができる。もし、現在ブロックにマージモードが適用される場合、前記HMVP候補は、前記現在ブロックに対するマージ候補リスト内の可用なマージ候補(例えば、空間的マージ候補及び時間的マージ候補を含む)の個数があらかじめ決定された最大マージ候補個数より小さい場合に前記マージ候補リストに追加されることができる。この場合、前記HMVP候補は、前記マージ候補リスト内で前記空間的候補及び時間的候補の後に挿入されることができる。即ち、前記HMVP候補には前記マージ候補リスト内で前記空間的候補及び時間的候補に割り当てられるインデックスより大きいインデックス値が割り当てられることができる。
他の例として、前記HMVPバッファは、CTU単位で初期化されることができる。または、前記HMVPバッファは、現在CTUの左側CTUで導出されたHMVP候補まで含むことができる。前記HMVPバッファが初期化される場合、前記HMVPバッファに含まれるHMVP候補の個数は、0に設定されることができる。
デコーディング装置は、前記HMVPバッファに基づいて前記現在ブロックの動き情報を導出する(S2010)。デコーディング装置は、前記HMVPバッファに含まれているHMVP候補に基づいて前記現在ブロックの動き情報を導出することができる。例えば、前記現在ブロックにマージモードまたはMVP(motion vector prediction)モードが適用される場合、前記HMVPバッファに含まれている前記HMVP候補をマージ候補またはMVP候補として使用することができる。例えば、前記現在ブロックにマージモードが適用される場合、前記HMVPバッファに含まれている前記HMVP候補は、マージ候補リストの候補として含まれ、ビットストリームから取得されたマージインデックスに基づいて前記マージ候補リストに含まれている候補の中で前記HMVP候補が指示されることできる。この場合、前記HMVP候補は、前記マージ候補リストに含まれる空間的マージ候補及び時間的マージ候補より低い優先順位で前記マージ候補リスト内でインデックスが割り当てられることができる。即ち、前記HMVP候補に割り当てられるインデックス値は、前記空間的マージ候補及び時間的マージ候補のインデックス値より高い値が割り当てられることができる。
デコーディング装置は、前記導出された動き情報に基づいて前記現在ブロックに対する予測サンプルを生成する(S2020)。デコーディング装置は、前記動き情報に基づいてインター予測(動き補償)を実行することで、前記動き情報が参照ピクチャ上で指す参照サンプルを利用して予測サンプルを導出することができる。前記予測サンプルを含む現在ブロックは、予測されたブロックとも呼ばれる。
デコーディング装置は、前記予測サンプルに基づいて復元サンプルを生成する(S2030)。前記復元サンプルに基づいて復元ブロック/ピクチャが生成されることができることは、前述の通りである。デコーディング装置は、前記ビットストリームからレジデュアル情報(量子化された変換係数に対する情報を含む)を取得することができ、前記レジデュアル情報に基づいてレジデュアルサンプルを導出することができ、前記予測サンプルと前記レジデュアルサンプルに基づいて前記復元サンプルが生成されることができることは、前述の通りである。以後、必要によって、主観的/客観的画質を向上させるために、デブロッキングフィルタリング、SAO及び/またはALF手順のようなインループフィルタリング手順が前記復元ピクチャに適用されることができることは、前述の通りである。
前述した実施例において、方法は、一連のステップまたはブロックで流れ図に基づいて説明されているが、本発明は、ステップの順序に限定されるものではなく、あるステップは、前述と異なるステップと、異なる順序にまたは同時に発生できる。また、当業者であれば、流れ図に示すステップが排他的でなく、他のステップが含まれ、または流れ図の一つまたはそれ以上のステップが本発明の範囲に影響を及ぼさずに削除可能であることを理解することができる。
前述した本発明による方法は、ソフトウェア形態で具現されることができ、本発明によるエンコーディング装置及び/またはデコーディング装置は、例えば、TV、コンピュータ、スマートフォン、セットトップボックス、ディスプレイ装置などの映像処理を実行する装置に含まれることができる。
本発明において、実施例がソフトウェアで具現される時、前述した方法は、前述した機能を遂行するモジュール(過程、機能など)で具現されることができる。モジュールは、メモリに格納され、プロセッサにより実行されることができる。メモリは、プロセッサの内部または外部にあり、よく知られた多様な手段でプロセッサと連結されることができる。プロセッサは、ASIC(application-specific integrated circuit)、他のチップセット、論理回路及び/またはデータ処理装置を含むことができる。メモリは、ROM(read-only memory)、RAM(random access memory)、フラッシュメモリ、メモリカード、格納媒体及び/または他の格納装置を含むことができる。即ち、本発明で説明した実施例は、プロセッサ、マイクロプロセッサ、コントローラまたはチップ上で具現されて実行されることができる。例えば、各図面で示す機能ユニットは、コンピュータ、プロセッサ、マイクロプロセッサ、コントローラまたはチップ上で具現されて実行されることができる。この場合、具現のための情報(例えば、information on instructions)またはアルゴリズムがデジタル格納媒体に格納されることができる。
また、本発明が適用されるデコーディング装置及びエンコーディング装置は、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ対話装置、ビデオ通信のようなリアルタイム通信装置、モバイルストリーミング装置、格納媒体、カムコーダ、注文型ビデオ(VoD)サービス提供装置、OTTビデオ(Over the top video)装置、インターネットストリーミングサービス提供装置、3次元(3D)ビデオ装置、VR(virtual reality)装置、AR(argumente reality)装置、画像電話ビデオ装置、運送手段端末(例えば、車両(自律走行車両を含む)端末、飛行機端末、船舶端末等)及び医療用ビデオ装置などに含まれることができ、ビデオ信号またはデータ信号を処理するために使われることができる。例えば、OTTビデオ(Over the top video)装置として、ゲームコンソール、ブルーレイプレイヤ、インターネット接続TV、ホームシアターシステム、スマートフォン、タブレットPC、DVR(Digital Video Recoder)などを含むことができる。
また、本発明が適用される処理方法は、コンピュータで実行されるプログラムの形態で生産されることができ、コンピュータが読み取りできる記録媒体に格納されることができる。また、本発明によるデータ構造を有するマルチメディアデータもコンピュータが読み取りできる記録媒体に格納されることができる。前記コンピュータが読み取りできる記録媒体は、コンピュータで読み取ることができるデータが格納される全ての種類の格納装置及び分散格納装置を含む。前記コンピュータが読み取りできる記録媒体は、例えば、ブルーレイディスク(BD)、汎用直列バス(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、及び光学的データ格納装置を含むことができる。また、前記コンピュータが読み取りできる記録媒体は、搬送波(例えば、インターネットを介する送信)の形態で具現されたメディアを含む。また、エンコーディング方法により生成されたビットストリームがコンピュータが読み取りできる記録媒体に格納され、または有無線通信ネットワークを介して送信されることができる。
また、本発明の実施例は、プログラムコードによるコンピュータプログラム製品で具現されることができ、前記プログラムコードは、本発明の実施例によりコンピュータで実行されることができる。前記プログラムコードは、コンピュータにより読み取り可能なキャリア上に格納されることができる。
図22は、本文書で開示された発明が適用されることができるコンテンツストリーミングシステムの例を示す。
図22を参照すると、本発明が適用されるコンテンツストリーミングシステムは、大きく、エンコーディングサーバ、ストリーミングサーバ、ウェブサーバ、メディア格納所、ユーザ装置、及びマルチメディア入力装置を含むことができる。
前記エンコーディングサーバは、スマートフォン、カメラ、カムコーダなどのようなマルチメディア入力装置から入力されたコンテンツをデジタルデータで圧縮してビットストリームを生成し、これを前記ストリーミングサーバに送信する役割をする。他の例として、スマートフォン、カメラ、カムコーダなどのようなマルチメディア入力装置がビットストリームを直接生成する場合、前記エンコーディングサーバは省略されることができる。
前記ビットストリームは、本発明が適用されるエンコーディング方法またはビットストリーム生成方法により生成されることができ、前記ストリーミングサーバは、前記ビットストリームを送信または受信する過程で一時的に前記ビットストリームを格納することができる。
前記ストリーミングサーバは、ウェブサーバを介するユーザ要求に基づいてマルチメディアデータをユーザ装置に送信し、前記ウェブサーバは、ユーザにどのようなサービスがあるかを知らせる媒介体役割をする。ユーザが前記ウェブサーバに所望のサービスを要求すると、前記ウェブサーバは、これをストリーミングサーバに伝達し、前記ストリーミングサーバは、ユーザにマルチメディアデータを送信する。このとき、前記コンテンツストリーミングシステムは、別途の制御サーバを含むことができ、この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命令/応答を制御する役割をする。
前記ストリーミングサーバは、メディア格納所及び/またはエンコーディングサーバからコンテンツを受信することができる。例えば、前記エンコーディングサーバからコンテンツを受信するようになる場合、前記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを一定時間の間に格納することができる。
前記ユーザ装置の例として、携帯電話、スマートフォン(smartphone)、ノートブックコンピュータ(laptop computer)、デジタル放送用端末、PDA(personal digital assistants)、PMP(portable multimedia player)、ナビゲーション、スレートPC(slate PC)、タブレットPC(tablet PC)、ウルトラブック(ultrabook)、ウェアラブルデバイス(wearable device、例えば、ウォッチ型端末(smartwatch)、グラス型端末(smart glass)、HMD(head mounted display))、デジタルTV、デスクトップコンピュータ、デジタルサイニジなどがある。
前記コンテンツストリーミングシステム内の各サーバは、分散サーバとして運営されることができ、この場合、各サーバで受信するデータは分散処理されることができる。

Claims (3)

  1. デコーディング装置により実行される映像デコーディング方法において、
    現在ブロックに対するHMVP(history-based motion vector prediction)バッファを導出するステップと、
    前記現在ブロックに対するマージ候補リストを構成するためのマージ候補を導出するステップであって、前記マージ候補は空間的候補ブロック(spacial candidate blocks)に基づいて導出された空間的候補と時間的候補ブロック(temporal candidate blocks)に基づいて導出された時間的候補とを含み、前記HMVPバッファに含まれるHMVP候補は前記マージ候補リストのマージ候補として挿入され、前記HMVP候補は前記マージ候補リストにおいて前記時間的候補の後に挿入される、ステップと、
    前記マージ候補リストの中の前記HMVP候補に基づいて前記現在ブロックの動き情報を導出するステップと、
    前記動き情報に基づいて前記現在ブロックに対する予測サンプルを生成するステップと、
    前記予測サンプルに基づいて復元サンプルを生成するステップとを含み、
    前記マージ候補リストに含まれる前記マージ候補の中の前記HMVP候補は、ビットストリームから取得されたマージインデックスに基づいて示され、
    前記現在ブロックは、コーディングトリーユニット(CTU)から分離されるコーディングユニット(CU)と関連し、
    現在ピクチャに含まれるスライスは1つ以上のCTU行を含み
    前記HMVPバッファは、前記スライスのCTU行の1番目のCTUで初期化される、映像デコーディング方法。
  2. エンコーディング装置により実行される映像エンコーディング方法において、
    現在ブロックに対するHMVP(history-based motion vector prediction)バッファを導出するステップと、
    前記現在ブロックに対するマージ候補リストを構成するためのマージ候補を導出するステップであって、前記マージ候補は空間的候補ブロック(spacial candidate blocks)に基づいて導出された空間的候補と時間的候補ブロック(temporal candidate blocks)に基づいて導出された時間的候補とを含み、前記HMVPバッファに含まれるHMVP候補は前記マージ候補リストのマージ候補として挿入され、前記HMVP候補は前記マージ候補リストにおいて前記時間的候補の後に挿入される、ステップと、
    前記マージ候補リストの前記HMVP候補に基づいて前記現在ブロックの動き情報を導出するステップと、
    前記動き情報に基づいて前記現在ブロックに対する予測サンプルを生成するステップと、
    前記予測サンプルに基づいてレジデュアルサンプルを導出するステップと、
    前記レジデュアルサンプルについての情報を含む映像情報をエンコーディングするステップとを含み、
    前記映像情報は、前記マージ候補リストに含まれる前記マージ候補の中の前記HMVP候補を示すマージインデックスを含み、
    前記現在ブロックは、コーディングトリーユニット(CTU)から分離されるコーディングユニット(CU)と関連し、
    現在ピクチャに含まれるスライスは1つ以上のCTU行を含み
    前記HMVPバッファは、前記スライスのCTU行の1番目のCTUで初期化される、映像エンコーディング方法。
  3. 映像に対するデータの送信方法であって、
    ビットストリームを取得するステップであって、前記ビットストリームは、現在ブロックに対するHMVP(history-based motion vector prediction)バッファを導出し、前記現在ブロックに対するマージ候補リストを構成するためのマージ候補を導出し、前記マージ候補は空間的候補ブロック(spacial candidate blocks)に基づいて導出された空間的候補と時間的候補ブロック(temporal candidate blocks)に基づいて導出された時間的候補とを含み、前記HMVPバッファに含まれるHMVP候補は前記マージ候補リストのマージ候補として挿入され、前記HMVP候補は前記マージ候補リストにおいて前記時間的候補の後に挿入され、前記マージ候補リストの前記HMVP候補に基づいて前記現在ブロックの動き情報を導出し、前記動き情報に基づいて前記現在ブロックに対する予測サンプルを生成し、前記予測サンプルに基づいてレジデュアルサンプルを導出し、前記レジデュアルサンプルについての情報を含む映像情報をエンコーディングすることにより前記ビットストリームを生成することを実行して生成される、ステップと、
    前記ビットストリームを含む前記データを送信するステップとを含み、
    前記映像情報は、前記マージ候補リストに含まれる前記マージ候補の中の前記HMVP候補を示すマージインデックスを含み、
    前記現在ブロックは、コーディングトリーユニット(CTU)から分離されるコーディングユニット(CU)と関連し、
    現在ピクチャに含まれるスライスは1つ以上のCTU行を含み
    前記HMVPバッファは、前記スライスのCTU行の1番目のCTUで初期化される、送信方法。
JP2021506710A 2018-08-13 2019-08-13 ヒストリベースの動きベクトルに基づくインター予測方法及びその装置 Active JP7282872B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2018-0094609 2018-08-13
KR20180094609 2018-08-13
PCT/KR2019/010312 WO2020036417A1 (ko) 2018-08-13 2019-08-13 히스토리 기반 움직임 벡터에 기반한 인터 예측 방법 및 그 장치

Publications (2)

Publication Number Publication Date
JP2021533681A JP2021533681A (ja) 2021-12-02
JP7282872B2 true JP7282872B2 (ja) 2023-05-29

Family

ID=69525664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021506710A Active JP7282872B2 (ja) 2018-08-13 2019-08-13 ヒストリベースの動きベクトルに基づくインター予測方法及びその装置

Country Status (8)

Country Link
US (4) US10841607B2 (ja)
EP (1) EP3813369A4 (ja)
JP (1) JP7282872B2 (ja)
KR (2) KR20230085219A (ja)
CN (4) CN112585966B (ja)
BR (4) BR122021008241A2 (ja)
MX (2) MX2021001670A (ja)
WO (1) WO2020036417A1 (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106713910B (zh) * 2011-06-14 2019-12-10 三星电子株式会社 对图像进行解码的设备
WO2020003274A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in lut
WO2020003261A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Selection from multiple luts
JP7460617B2 (ja) 2018-06-29 2024-04-02 北京字節跳動網絡技術有限公司 Lut更新条件
GB2588006B (en) 2018-06-29 2023-03-22 Beijing Bytedance Network Tech Co Ltd Number of motion candidates in a look up table to be checked according to mode
KR20240007299A (ko) 2018-06-29 2024-01-16 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 룩업 테이블의 업데이트: fifo, 제약된 fifo
CN110662054B (zh) 2018-06-29 2023-01-06 北京字节跳动网络技术有限公司 用于视频处理的方法、装置、计算机可读存储介质
EP4325861A3 (en) 2018-06-29 2024-03-06 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
EP3791586A1 (en) 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks
WO2020008346A1 (en) 2018-07-02 2020-01-09 Beijing Bytedance Network Technology Co., Ltd. Rules on updating luts
BR112021000004A8 (pt) * 2018-07-06 2023-02-07 Mediatek Inc Informações de movimento herdadas para decodificar uma unidade de codificação atual em um sistema de codificação de vídeo
BR122021008241A2 (pt) 2018-08-13 2021-05-04 Lg Electronics Inc. método de decodificação de imagem realizado por um aparelho de decodificação, método de codificação de imagem realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória
WO2020053798A1 (en) 2018-09-12 2020-03-19 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking hmvp candidates depend on total number minus k
BR122021011303B1 (pt) 2018-10-04 2022-06-14 Lg Electronics Inc Método e aparelho de decodificação de imagem, método e aparelho de codificação de imagem e mídias de armazenamento não transitória legíveis por computador
US11317099B2 (en) 2018-10-05 2022-04-26 Tencent America LLC Method and apparatus for signaling an offset in video coding for intra block copy and/or inter prediction
AU2019356644B2 (en) * 2018-10-10 2022-12-08 Huawei Technologies Co., Ltd. Inter prediction method and apparatus
CN117459721A (zh) * 2018-10-24 2024-01-26 华为技术有限公司 视频编解码器和方法
CN118042116A (zh) * 2018-12-07 2024-05-14 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法、解码方法和计算机可读取介质
EP3905685B1 (en) 2018-12-28 2024-03-20 JVCKenwood Corporation Image encoding device, image encoding method, image encoding program, image decoding device, image decoding method, and image decoding program
JP7275286B2 (ja) 2019-01-10 2023-05-17 北京字節跳動網絡技術有限公司 Lut更新の起動
US11025935B2 (en) * 2019-01-10 2021-06-01 Tencent America LLC Method and apparatus for history based motion information buffer update with parallel processing capability
WO2020143824A1 (en) 2019-01-13 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and shared merge list
CN113330739A (zh) 2019-01-16 2021-08-31 北京字节跳动网络技术有限公司 Lut中的运动候选的插入顺序
WO2020156548A1 (en) 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Buffer updating for intra block copy in video coding
KR20240117647A (ko) 2019-02-02 2024-08-01 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 복사를 위한 버퍼 관리
CN113508593A (zh) * 2019-02-27 2021-10-15 北京字节跳动网络技术有限公司 基于回退的运动矢量场的基于子块运动矢量推导
CN117395439A (zh) 2019-03-01 2024-01-12 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的基于方向的预测
CN113519158B (zh) 2019-03-01 2024-06-18 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的块矢量表示
CN117640927A (zh) 2019-03-04 2024-03-01 北京字节跳动网络技术有限公司 视频编解码中的帧内块复制中的实施方式方面
US10979716B2 (en) * 2019-03-15 2021-04-13 Tencent America LLC Methods of accessing affine history-based motion vector predictor buffer
KR102664876B1 (ko) * 2019-03-22 2024-05-10 로즈데일 다이나믹스 엘엘씨 Dmvr 및 bdof 기반의 인터 예측 방법 및 장치
WO2020192611A1 (en) * 2019-03-22 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
KR102662603B1 (ko) 2019-06-06 2024-04-30 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩을 위한 움직임 후보 리스트 구성
WO2020244658A1 (en) 2019-06-06 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Sub-block based intra block copy
US11277616B2 (en) * 2019-06-20 2022-03-15 Qualcomm Incorporated DC intra mode prediction in video coding
WO2020259426A1 (en) 2019-06-22 2020-12-30 Beijing Bytedance Network Technology Co., Ltd. Motion candidate list construction for intra block copy mode
KR20230170800A (ko) 2019-07-06 2023-12-19 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 카피를 위한 가상 예측 버퍼
BR112022000358A2 (pt) 2019-07-10 2022-05-10 Beijing Bytedance Network Tech Co Ltd Método e aparelho para processar dados de vídeo e meios de armazenamento e gravação não transitórios legíveis por computador
EP3981146A4 (en) * 2019-07-11 2022-08-03 Beijing Bytedance Network Technology Co., Ltd. BITSTREAM CONFORMITY RESTRICTIONS FOR INTRA-BLOCK COPY IN VIDEO ENCODING
US11223840B2 (en) * 2019-08-19 2022-01-11 Tencent America LLC Method and apparatus for video coding
WO2021034122A1 (ko) * 2019-08-21 2021-02-25 엘지전자 주식회사 Hmvp 후보에 기반하여 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
US12034949B2 (en) 2021-01-14 2024-07-09 Samsung Electronics Co., Ltd. Video decoding apparatus and video decoding method
KR102519664B1 (ko) 2021-08-31 2023-04-10 삼성전자주식회사 스토리지 장치, 스토리지 컨트롤러 및 스토리지 컨트롤러의 동작 방법
US20230345004A1 (en) * 2022-04-25 2023-10-26 Tencent America LLC Ctu level inheritance of cabac context initialization

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020014389A1 (en) 2018-07-10 2020-01-16 Qualcomm Incorporated MULTIPLE HISTORY BASED NON-ADJACENT MVPs FOR WAVEFRONT PROCESSING OF VIDEO CODING

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140048783A (ko) * 2012-10-09 2014-04-24 한국전자통신연구원 깊이정보값을 공유하여 움직임 정보를 유도하는 방법 및 장치
US20160134883A1 (en) * 2013-04-05 2016-05-12 Samsung Electronics Co., Ltd. Video stream coding method according to prediction struction for multi-view video and device therefor, and video stream decoding method according to prediction structure for multi-view video and device therefor
US10021418B2 (en) * 2014-06-19 2018-07-10 Hfi Innovation Inc. Method and apparatus of candidate generation for single sample mode in video coding
KR101748620B1 (ko) * 2014-06-20 2017-07-04 성균관대학교산학협력단 영상의 부호화/복호화 방법 및 이를 이용하는 장치
CN105187845B (zh) * 2015-08-10 2018-07-03 珠海全志科技股份有限公司 视频数据解码装置及解码方法
JP6740549B2 (ja) * 2016-03-16 2020-08-19 日本電気株式会社 動画像符号化装置、方法、プログラム、および動画像符号化システム
FI20165547A (fi) * 2016-06-30 2017-12-31 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodausta ja videokoodauksen purkua varten
CN109996081B (zh) * 2017-12-31 2023-09-12 华为技术有限公司 图像预测方法、装置以及编解码器
BR112021000004A8 (pt) * 2018-07-06 2023-02-07 Mediatek Inc Informações de movimento herdadas para decodificar uma unidade de codificação atual em um sistema de codificação de vídeo
US10440378B1 (en) * 2018-07-17 2019-10-08 Tencent America LLC Method and apparatus for history-based motion vector prediction with parallel processing
US10958934B2 (en) * 2018-07-27 2021-03-23 Tencent America LLC History-based affine merge and motion vector prediction
US10362330B1 (en) * 2018-07-30 2019-07-23 Tencent America LLC Combining history-based motion vector prediction and non-adjacent merge prediction
BR122021008241A2 (pt) * 2018-08-13 2021-05-04 Lg Electronics Inc. método de decodificação de imagem realizado por um aparelho de decodificação, método de codificação de imagem realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória
US11212550B2 (en) * 2018-09-21 2021-12-28 Qualcomm Incorporated History-based motion vector prediction for affine mode
US11070796B2 (en) * 2018-09-28 2021-07-20 Qualcomm Incorporated Ultimate motion vector expression based pruning for video coding
CN116708823A (zh) * 2018-10-02 2023-09-05 Lg电子株式会社 图像编解码方法、存储介质和数据发送方法
BR122021011303B1 (pt) * 2018-10-04 2022-06-14 Lg Electronics Inc Método e aparelho de decodificação de imagem, método e aparelho de codificação de imagem e mídias de armazenamento não transitória legíveis por computador
KR102578820B1 (ko) * 2018-10-05 2023-09-15 엘지전자 주식회사 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치
US10979716B2 (en) * 2019-03-15 2021-04-13 Tencent America LLC Methods of accessing affine history-based motion vector predictor buffer

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020014389A1 (en) 2018-07-10 2020-01-16 Qualcomm Incorporated MULTIPLE HISTORY BASED NON-ADJACENT MVPs FOR WAVEFRONT PROCESSING OF VIDEO CODING

Also Published As

Publication number Publication date
US20200186820A1 (en) 2020-06-11
US10841607B2 (en) 2020-11-17
EP3813369A1 (en) 2021-04-28
US20230013535A1 (en) 2023-01-19
CN112585966A (zh) 2021-03-30
BR122021008228A2 (pt) 2021-05-04
JP2021533681A (ja) 2021-12-02
KR20230085219A (ko) 2023-06-13
MX2021001670A (es) 2021-04-19
US20210029373A1 (en) 2021-01-28
MX2024002763A (es) 2024-03-27
BR122021008241A2 (pt) 2021-05-04
CN112585966B (zh) 2023-08-15
KR102541425B1 (ko) 2023-06-13
EP3813369A4 (en) 2021-04-28
CN116781931A (zh) 2023-09-19
BR112021002604A2 (pt) 2021-05-04
US11632564B2 (en) 2023-04-18
WO2020036417A1 (ko) 2020-02-20
US20240129517A1 (en) 2024-04-18
BR122021008224A2 (pt) 2021-05-04
CN116800982A (zh) 2023-09-22
US11895315B2 (en) 2024-02-06
CN116781930A (zh) 2023-09-19
KR20210010633A (ko) 2021-01-27

Similar Documents

Publication Publication Date Title
JP7282872B2 (ja) ヒストリベースの動きベクトルに基づくインター予測方法及びその装置
JP7342116B2 (ja) ヒストリベースの画像コーディング方法およびその装置
KR20210044889A (ko) 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치
JP7230189B2 (ja) シンタックスデザイン方法及びシンタックスを用いてコーディングを行う装置
JP7193624B2 (ja) Hmvpに基づいて予測候補を構成する方法及び装置
US11792404B2 (en) Method and device for signaling information on chroma format
JP7249441B2 (ja) 予測サンプルを生成するための加重値インデックス情報を導出する映像デコーディング方法、及びその装置
JP7303335B2 (ja) 変換カーネルセットに関する情報に対するコーディング
US20220174270A1 (en) Method and device for configuring mpm list
KR102708102B1 (ko) 히스토리 기반 영상 코딩 방법 및 그 장치
KR102707017B1 (ko) 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치
KR20240140181A (ko) 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210208

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220329

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220615

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20221101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230126

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20230126

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230206

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20230207

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230418

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230517

R150 Certificate of patent or registration of utility model

Ref document number: 7282872

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150