JP7509978B2 - マトリックスに基づくイントラ予測装置及び方法 - Google Patents

マトリックスに基づくイントラ予測装置及び方法 Download PDF

Info

Publication number
JP7509978B2
JP7509978B2 JP2023146224A JP2023146224A JP7509978B2 JP 7509978 B2 JP7509978 B2 JP 7509978B2 JP 2023146224 A JP2023146224 A JP 2023146224A JP 2023146224 A JP2023146224 A JP 2023146224A JP 7509978 B2 JP7509978 B2 JP 7509978B2
Authority
JP
Japan
Prior art keywords
mip
current block
intra prediction
information
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023146224A
Other languages
English (en)
Other versions
JP2023158175A (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 JP2023158175A publication Critical patent/JP2023158175A/ja
Priority to JP2024099927A priority Critical patent/JP2024111220A/ja
Application granted granted Critical
Publication of JP7509978B2 publication Critical patent/JP7509978B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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)

Description

本文書は、映像コーディング技術に関し、マトリックスに基づくイントラ予測装置及び方法に対する映像コーディング技術に関する。
近年、4Kまたは8K以上のUHD(Ultra High Definition)映像/ビデオのような高解像度、高品質の映像/ビデオに対する需要が様々な分野で増加している。映像/ビデオデータが高解像度、高品質になるほど、既存の映像/ビデオデータに比べて相対的に送信される情報量またはビット量が増加するので、既存の有無線広帯域回線のような媒体を利用して映像データを送信するか、既存の保存媒体を利用して映像/ビデオデータを保存する場合、送信費用と保存費用が増加する。
また、近年、VR(Virtual Reality)、AR(Artificial Realtiy)コンテンツやホログラムなどの実感メディア(Immersive Media)に対する関心及び需要が増加しており、ゲーム映像のように、現実映像と異なる映像特性を有する映像/ビデオに対する放送が増加している。
これに伴って、前記のような様々な特性を有する高解像度・高品質の映像/ビデオの情報を効果的に圧縮して送信するか保存し、再生するために高効率の映像/ビデオ圧縮技術が求められる。
本文書の技術的課題は、映像のコーディング効率を高める方法及び装置を提供することにある。
本文書の別の技術的課題は、効率的なイントラ予測方法及び装置を提供することにある。
本文書のまた別の技術的課題は、マトリックスに基づくイントラ予測に対する映像コーディング方法及び装置を提供することにある。
本文書のまた別の技術的課題は、マトリックスに基づくイントラ予測に対するモード情報をコーディングする映像コーディング方法及び装置を提供することにある。
本文書の一実施形態に係ると、デコーディング装置によって実行される映像デコーディング方法が提供される。前記方法は、現在ブロックにマトリックスに基づくイントラ予測(MIP)が適用可能か否かを指示する第1フラグ情報に基づいて、前記現在ブロックに対して、前記MIPが使用されるか否かを示す第2フラグ情報を受信するステップと、前記第2フラグ情報に基づいて、前記マトリックスに基づくイントラ予測(MIP)モード情報を受信するステップと、前記MIPモード情報に基づいて、前記現在ブロックに対するイントラ予測サンプルを生成するステップと、前記イントラ予測サンプルに基づいて、前記現在ブロックに対する復元サンプルを生成するステップと、を含むことができる。
前記第1フラグ情報は、シーケンスパラメータセット(Sequence parameter set、SPS)のシンタックス情報を介してシグナリングされ、前記第2フラグ情報は、コーディングユニットのシンタックス情報を介してシグナリングされることができる。
前記MIPモード情報は、前記現在ブロックに適用されるMIPモードを指示するインデックス情報であり得る。
前記イントラ予測サンプルを生成するステップは、前記現在ブロックに隣接した参照サンプルをダウンサンプリングして縮小された境界サンプルを導出するステップと、前記縮小された境界サンプルとMIPマトリックスの掛け算に基づいて縮小された予測サンプルを導出するステップと、前記縮小された予測サンプルをアップサンプリングして、前記現在ブロックに対する前記イントラ予測サンプルを生成するステップと、を含むことができる。
ここで、前記縮小された境界サンプルは、前記参照サンプルの平均化によりダウンサンプリングされ、前記イントラ予測サンプルは、前記縮小された予測サンプルの線形補間によりアップサンプリングされることができる。
前記MIPマトリックスは、前記現在ブロックの大きさと前記インデックス情報に基づいて導出されることができる。
前記MIPマトリックスは、前記現在ブロックの大きさに応じて分類される3個のマトリックスセットのいずれかから選択されることができ、前記3個のマトリックスセットのそれぞれは、複数のMIPマトリックスを含むことができる。
本文書の一実施形態に係ると、エンコーディング装置によって実行される映像エンコーディング方法を提供する。前記方法は、現在ブロックに対して、マトリックスに基づくイントラ予測(MIP)が適用されるか否かを導出するステップと、前記現在ブロックに前記MIPが適用されると、前記MIPに基づいて現在ブロックのイントラ予測サンプルを導出するステップと、前記イントラ予測サンプルに基づいて前記現在ブロックに対するレジデュアルサンプルを導出するステップと、前記レジデュアルサンプルに対する情報及び前記MIPに対する情報をエンコーディングするステップと、を含み、前記MIPに対する情報は、前記現在ブロックにマトリックスに基づくイントラ予測(MIP)が適用可能か否かを指示する第1フラグ情報と、前記現在ブロックに前記MIPが適用されるか否かを指示する第2フラグ情報と、前記マトリックスに基づくイントラ予測(MIP)モード情報と、を含むことができる。
本文書のまた別の一実施形態に係ると、エンコーディング装置によって実行された映像エンコーディング方法によって生成されたエンコーディングされた映像情報及びビットストリームが含まれた映像データが保存されたデジタル保存媒体が提供できる。
本文書のまた別の一実施形態に係ると、デコーディング装置により前記映像デコーディング方法を行うように引き起こすエンコーディングされた映像情報、及びビットストリームが含まれた映像データが保存されたデジタル保存媒体が提供できる。
本文書は多様な効果を有することができる。例えば、本文書の一実施形態に係ると、全般的な映像/ビデオの圧縮効率を高めることができる。或いは、本文書の一実施形態に係ると、効率的なイントラ予測を介して、具現の複雑度を減らして、予測性能を向上させることによって、全般的なコーディングの効率を向上させることができる。又は、本文書の一実施形態に係ると、マトリックスに基づくイントラ予測の際に、これを指示するインデックス情報を効率的にコーディングして、コーディングの効率を向上させることができる。
本文書の具体的な一例を介して得られる効果は、以上で羅列された効果に制限されない。例えば、関連する技術分野における通常の技術者を有する者(a person having ordinary skill in the related art)が、本文書から理解または誘導できる多様な技術的効果が存在し得る。これによって、本文書の具体的な効果は、本文書に明示的に記載されているものに制限されず、本文書の技術的特徴から理解または誘導できる多様な効果を含み得る。
本文書の実施形態に適用されることができるビデオ/映像コーディングシステムの例を概略的に示す。 本文書の実施形態に適用されることができるビデオ/映像エンコーディング装置の構成を概略的に説明する図である。 本文書の実施形態に適用されることができるビデオ/映像デコーディング装置の構成を概略的に説明する図である。 本文書で開示された実施形態が適用できるコンテンツストリーミングシステムの例を示す。 シンタックスエレメント(syntax element)をエンコーディングするためのCABAC(context-adaptive binary arithmetic coding)を例示的に示す。 本文書の実施形態が適用できる概略的なイントラ予測に基づく映像エンコーディング方法の一例を示す。 本文書の実施形態が適用できる概略的なイントラ予測に基づく映像デコーディング方法の一例を示す。 本文書の実施形態が適用できるイントラ予測モードの一例を示す。 本文書の実施形態が適用できるエンコーディング装置におけるMPMモードに基づくイントラ予測方法の一例を示す。 本文書の実施形態が適用できるデコーディング装置におけるMPMモードに基づくイントラ予測方法の一例を示す。 一例に係るMIPに基づく予測サンプルの生成手順を説明する図である。 4×4ブロックに対するMIP手順を示す図である。 8×8ブロックに対するMIP手順を示す図である。 8×4ブロックに対するMIP手順を示す図である。 16×16ブロックに対するMIP手順を示す図である。 MIP手順のうち、境界の平均化手順を説明するための図である。 MIP手順のうち、線形補間を説明するための図である。 本文書の一例に係るMIP技法を説明するための図である。 本文書の一実施形態に係るデコーディング装置によって実行されることができるデコーディング方法を概略的に示すフローチャートである。 本文書の一実施形態に係るエンコーディング装置によって実行されることができるエンコーディング方法を概略的に示すフローチャートである。
本文書は、様々な変更を加えることができ、様々な実施形態を有することができるが、特定の実施形態を図面に例示し、詳細に説明しようとする。しかし、これは、本文書を特定の実施形態に限定しようとするわけではない。本文書で常用する用語は、単に特定の実施形態を説明するために使用されたものであって、本文書における技術的思想を限定しようとする意図に使用されるわけではない。単数の表現は、文脈上明らかに異なる意味ではない限り、複数の表現を含む。本文書において、「含む」又は「有する」等の用語は、文書上に記載された特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを指定しようとするものであり、1つ又はそれ以上の異なる特徴や、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものの存在又は付加の可能性を予め排除しないものと理解されるべきである。
一方、本文書で説明される図面上の各構成は、互いに異なる特徴的な機能に関する説明の便宜のために独立して示すものであって、各構成が互いに別個のハードウェアや別個のソフトウェアで具現されるということを意味するのではない。例えば、各構成のうち、2つ以上の構成が合わせられて1つの構成をなすこともあり、1つの構成が複数の構成に分けられることもある。各構成が統合及び/又は分離された実施形態も、本文書の本質から外れない限り、本文書の権利範囲に含まれる。
本文書において、「A又はB(A or B)」は、「ただA」、「ただB」、又は「A及びB両方」を意味し得る。言い換えると、本文書において、「A又はB(A or B)」は、「A及び/又はB(A and/or B)」と解釈され得る。例えば、本文書において、「A、B又はC(A, B or C)」は、「ただA」、「ただB」、「ただC」、又は「A、B及びCの任意の全ての組み合わせ(any combination of A, B and C)」を意味し得る。
本文書で使用されるスラッシュ(/)や休止符(comma)は、「及び/又は(and/or)」を意味し得る。例えば、「A/B」は、「A及び/又はB」を意味し得る。これによって、「A/B」は、「ただA」、「ただB」、又は「A及びB両方」を意味し得る。例えば、「A、B、C」は、「A、B又はC」を意味し得る。
本文書において、「少なくとも一つのA及びB(at least one of A and B)」は、「ただA」、「ただB」又は「A及びB両方」を意味し得る。また、本文書において、「少なくとも一つのA又はB(at least one of A or B)」や「少なくとも一つのA及び/又はB(at least one of A and/or B)」という表現は、「少なくとも一つのA及びB(at least one of A and B)」と同様に解釈され得る。
また、本文書において、「少なくとも一つのA、B及びC(at least one of A, B and C)」は、「ただA」、「ただB」、「ただC」、又は「A、B及びCの任意の全ての組み合わせ(any combination of A, B and C)」を意味し得る。さらに、「少なくとも一つのA、B又はC(at least one of A, B or C)」や「少なくとも一つのA、B及び/又はC(at least one of A, B and/or C)」は、「少なくとも一つのA、B及びC(at least one of A, B and C)」を意味し得る。
また、本文書で使用される括弧は、「例えば(for example)」を意味し得る。具体的に、「予測(イントラ予測)」と表示された場合、「予測」の一例として「イントラ予測」が提案されたものであり得る。言い換えると、本文書の「予測」は、「イントラ予測」に制限(limit)されず、「イントラ予測」が「予測」の一例として提案されたものであり得る。また、「予測(すなわち、イントラ予測)」と表示された場合にも、「予測」の一例として「イントラ予測」が提案されたものであり得る。
本文書において一つの図面内で個別的に説明される技術的特徴は、個別的に具現されてもよく、同時に具現されてもよい。
本文書は、ビデオ/映像コーディングに関する。例えば、本文書で開示された方法/実施形態は、VVC(versatile video coding)標準、EVC(essential video coding)標準、AV1(AOMedia Video 1)標準、AVS2(2nd generation of audio video coding standard)、又は次世代ビデオ/映像コーディング標準(ex.H.267 or H.268等)に開示される方法に適用されることができる。
本文書では、ビデオ/映像コーディングに関する多様な実施形態を提示し、別の言及がない限り、前記実施形態は互いに組み合わせて実行することもある。
本文書で、ビデオ(video)は、時間の流れによる一連の映像(image)の集合を意味することができる。ピクチャ(picture)は、一般的に特定の時間帯における1つの映像を示す単位を意味し、スライス(slice)/タイル(tile)は、コーディングにおいてピクチャの一部を構成する単位である。スライス/タイルは、1つ以上のCTU(coding tree unit)を含むことができる。1つのピクチャは、1つ以上のスライス/タイルで構成されることができる。1つのピクチャは、1つ以上のタイルグループで構成されることができる。1つのタイルグループは、1つ以上のタイルを含むことができる。ブリックは、ピクチャ内タイル以内のCTU行の四角領域を示し得る(a brick may represent a rectangular region of CTU rows within a tile in a picture)。タイルは、多数のブリックにパーティショニングされ得、各ブリックは、前記タイル内の1つ以上の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)。スライスはピクチャの整数個のブリックを含んでもよく、前記整数個のブリックは、1つのNALユニットに含まれてもよい(A slice includes an integer number of bricks of a picture that may be exclusively contained in a single NAL unit)。スライスは多数の完全なタイルで構成されてもよく、若しくは1つのタイルの完全なブリックの連続的なシーケンスであってもよい(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)は、1つのピクチャ(又は映像)を構成する最小の単位を意味し得る。また、ピクセルに対応する用語として「サンプル(sample)」が使用され得る。サンプルは、一般的にピクセル又はピクセルの値を示すことがあり、ルマ(luma)成分のピクセル/ピクセル値のみを示すこともあり、クロマ(chroma)成分のピクセル/ピクセル値のみを示すこともある。或いは、サンプルは空間ドメインでのピクセル値を意味することもあり、このようなピクセル値が周波数ドメインに変換されると、周波数ドメインでの変換係数を意味することもある。
ユニット(unit)は、映像処理の基本単位を示すことができる。ユニットは、ピクチャの特定領域及び該当領域に関する情報の少なくとも一つを含むことができる。1つのユニットは、1つのルマブロック及び2つのクロマ(例えば、cb、cr)ブロックを含むことができる。ユニットは、場合に応じて、ブロック(block)又は領域(area)等の用語と混用して使用されてもよい。一般的な場合、M×Nブロックは、M個の列とN個の行とからなるサンプル(又はサンプルアレイ)又は変換係数(transform coefficient)の集合(又はアレイ)を含むことができる。
以下、添付した図面を参照として、本文書の好ましい実施形態をより詳細に説明しようとする。以下、図面上の同じ構成要素に対しては、同じ参照符号を使用し、同じ構成要素に対して重複する説明は省略され得る。
図1は、本文書の実施形態に適用されることができるビデオ/映像コーディングシステムの例を概略的に示す。
図1を参照すると、ビデオ/映像コーディングシステムは、第1装置(ソースデバイス)及び第2装置(受信デバイス)を含むことができる。ソースデバイスは、エンコーディングされたビデオ(video)/映像(image)情報又はデータをファイル又はストリーミングの形態でデジタル保存媒体又はネットワークを介して受信デバイスに伝達することができる。
前記ソースデバイスは、ビデオソース、エンコーディング装置、送信部を含むことができる。前記受信デバイスは、受信部、デコーディング装置、及びレンダラーを含むことができる。前記エンコーディング装置は、ビデオ/映像エンコーディング装置と呼ばれ得、前記デコーディング装置は、ビデオ/映像デコーディング装置と呼ばれ得る。送信機は、エンコーディング装置に含まれることができる。受信機は、デコーディング装置に含まれることができる。レンダラーは、ディスプレイ部を含むこともでき、ディスプレイ部は、別個のデバイスまたは外部コンポーネントで構成されることもできる。
ビデオソースは、ビデオ/映像のキャプチャ、合成、または生成過程などを介してビデオ/映像を獲得できる。ビデオソースは、ビデオ/映像のキャプチャデバイス及び/又はビデオ/映像の生成デバイスを含むことができる。ビデオ/映像のキャプチャデバイスは、例えば、1つ以上のカメラ、以前にキャプチャされたビデオ/映像を含むビデオ/映像アーカイブなどを含むことができる。ビデオ/映像の生成デバイスは、例えば、コンピュータ、タブレット、及びスマートフォンなどを含むことができ、(電子的に)ビデオ/映像を生成できる。例えば、コンピュータなどを介して仮想のビデオ/映像が生成され得るし、この場合、関連データが生成される過程にビデオ/映像キャプチャ過程が代替されることができる。
エンコーディング装置は、入力ビデオ/映像をエンコーディングすることができる。エンコーディング装置は、圧縮及びコーディング効率のために、予測、変換、量子化など、一連の手順を行うことができる。エンコーディングされたデータ(エンコーディングされたビデオ/映像情報)は、ビットストリーム(bitstream)の形態で出力されることができる。
送信部は、ビットストリームの形態で出力されたエンコーディングされたビデオ/映像情報またはデータをファイルまたはストリーミングの形態でデジタル保存媒体またはネットワークを介して受信デバイスの受信部に伝達することができる。デジタル保存媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、様々な保存媒体を含むことができる。送信部は、予め決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介した送信のためのエレメントを含むことができる。受信部は、前記ビットストリームを受信/抽出してデコーディング装置に伝達することができる。
デコーディング装置は、エンコーディング装置の動作に対応する逆量子化、逆変換、予測など、一連の手順を行ってビデオ/映像をデコーディングすることができる。
レンダラーは、デコーディングされたビデオ/映像をレンダリングすることができる。レンダリングされたビデオ/映像は、ディスプレイ部を介してディスプレイされることができる。
図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は、実施形態によって1つ以上のハードウェアコンポーネント(例えば、エンコーダチップセットまたはプロセッサ)によって構成されることができる。また、メモリ270は、DPB(decoded picture buffer)を含むことができ、デジタル保存媒体によって構成されることもできる。前記ハードウェアコンポーネントは、メモリ270を内/外部コンポーネントとしてさらに含むこともできる。
映像分割部210は、エンコーディング装置200に入力された入力映像(または、ピクチャ、フレーム)を1つ以上の処理ユニット(processing unit)に分割することができる。一例として、前記処理ユニットは、コーディングユニット(coding unit、CU)と呼ばれ得る。この場合、コーディングユニットは、コーディングツリーユニット(coding tree unit、CTU)または最大コーディングユニット(largest coding unit、LCU)からQTBTTT(Quad-tree binary-tree ternary-tree)構造によって再帰的に(recursively)分割されることができる。例えば、1つのコーディングユニットは、クアッドツリー構造、バイナリツリー構造、及び/又はターナリ構造に基づいて下位(deeper)デプスの複数のコーディングユニットに分割されることができる。この場合、例えば、クアッドツリー構造が先に適用され、バイナリツリー構造及び/又はターナリ構造がその後に適用されることができる。または、バイナリツリー構造が先に適用されることもできる。それ以上分割されない最終コーディングユニットに基づいて、本文書に係るコーディング手順が行われ得る。この場合、映像特性によるコーディング効率などに基づいて、最大コーディングユニットがすぐに最終コーディングユニットとして使用されることができ、または、必要に応じてコーディングユニットは、再帰的に(recursively)もっと下位デプスのコーディングユニットに分割されて、最適のサイズのコーディングユニットが最終コーディングユニットとして使用されることができる。ここで、コーディング手順とは、後述する予測、変換、及び復元などの手順を含むことができる。他の例として、前記処理ユニットは、予測ユニット(PU:Prediction Unit)または変換ユニット(TU:Transform Unit)をさらに含むことができる。この場合、前記予測ユニット及び前記変換ユニットは、各々上述した最終コーディングユニットから分割またはパーティショニングされることができる。前記予測ユニットは、サンプル予測の単位であってもよく、前記変換ユニットは、変換係数を導く単位及び/又は変換係数からレジデュアル信号(residual signal)を導く単位であってもよい。
ユニットは、場合に応じて、ブロック(block)または領域(area)などの用語と混用して使用されることができる。一般的な場合、M×Nブロックは、M個の列とN個の行とからなるサンプルまたは変換係数(transform coefficient)の集合を示すことができる。サンプルは、一般的にピクセルまたはピクセルの値を示すことができ、輝度(luma)成分のピクセル/ピクセル値のみを示すこともでき、彩度(chroma)成分のピクセル/ピクセル値のみを示すこともできる。サンプルは、1つのピクチャ(または、映像)をピクセル(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(col CU)などの名前で呼ばれ得、前記時間的周辺ブロックを含む参照ピクチャは、同一位置ピクチャ(collocated picture、colPic)とも呼ばれ得る。例えば、インター予測部221は、周辺ブロックに基づいて動き情報候補リストを構成し、前記現在ブロックの動きベクトル及び/又は参照ピクチャのインデックスを導出するために、どの候補が使用されるかを指示する情報を生成できる。様々な予測モードに基づいてインター予測が行われ得、例えば、スキップモードとマージモードの場合に、インター予測部221は、周辺ブロックの動き情報を現在ブロックの動き情報として用いることができる。スキップモードの場合、マージモードとは異なり、レジデュアル信号が送信されないことがある。動き情報予測(motion vector prediction、MVP)モードの場合、周辺ブロックの動きベクトルを動きベクトル予測子(motion vector predictor)として用い、動きベクトル差分(motion vector difference)をシグナリングすることにより、現在ブロックの動きベクトルを指示することができる。
予測部220は、後述する様々な予測方法に基づいて予測信号を生成できる。例えば、予測部は、1つのブロックに対する予測のために、イントラ予測またはインター予測を適用できるだけでなく、イントラ予測とインター予測とを同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれ得る。また、予測部は、ブロックに対する予測のために、イントラブロックコピー(intra block copy、IBC)予測モードに基づくこともあり、又はパレットモード(palette mode)に基づくこともある。前記IBC予測モード又はパレットモードは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動画のコーディングのために使用されることができる。IBCは、基本的に現在ピクチャ内で予測を行うが、現在ピクチャ内で参照ブロックを導出する点においてインター予測と同様に実行されることができる。すなわち、IBCは、本文書において説明されるインター予測技法の少なくとも1つを用いることができる。パレットモードは、イントラコーディング又はイントラ予測の一例とみることができる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに関する情報に基づいて、ピクチャ内のサンプル値をシグナリングすることができる。
前記予測部(インター予測部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とデコーディング装置における予測のミスマッチを避けることができ、符号化効率も向上させることができる。
メモリ270のDPBは、修正された復元ピクチャをインター予測部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は、実施形態によって1つのハードウェアコンポーネント(例えば、デコーダチップセットまたはプロセッサ)により構成されることができる。また、メモリ360は、DPB(decoded picture buffer)を含むことができ、デジタル保存媒体により構成されることもできる。前記ハードウェアコンポーネントは、メモリ360を内/外部コンポーネントとしてさらに含むこともできる。
ビデオ/映像情報を含むビットストリームが入力されると、デコーディング装置300は、図2のエンコーディング装置でビデオ/映像情報が処理されたプロセスに対応して映像を復元できる。例えば、デコーディング装置300は、前記ビットストリームから獲得したブロック分割に関する情報に基づいてユニット/ブロックを導出できる。デコーディング装置300は、エンコーディング装置で適用された処理ユニットを用いてデコーディングを実行することができる。したがって、デコーディングの処理ユニットは、例えば、コーディングユニットであってもよく、コーディングユニットは、コーディングツリーユニットまたは最大コーディングユニットからクアッドツリー構造、バイナリツリー構造、及び/又はターナリツリー構造によって分割されることができる。コーディングユニットから1つ以上の変換ユニットが導出できる。そして、デコーディング装置300を介してデコーディング及び出力された復元映像信号は、再生装置を介して再生されることができる。
デコーディング装置300は、図2のエンコーディング装置から出力された信号をビットストリームの形態で受信することができ、受信された信号は、エントロピーデコーディング部310を介してデコーディングされることができる。例えば、エントロピーデコーディング部310は、前記ビットストリームをパーシングして映像復元(または、ピクチャ復元)に必要な情報(例えば、ビデオ/映像情報)を導出できる。前記ビデオ/映像情報は、アダプテーションパラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)、またはビデオパラメータセット(VPS)など、様々なパラメータセットに関する情報をさらに含むことができる。また、前記ビデオ/映像情報は、一般制限情報(general constraint information)をさらに含むことができる。デコーディング装置は、前記パラメータセットに関する情報及び/又は前記一般制限情報に基づいてさらにピクチャをデコーディングすることができる。本文書において後述されるシグナリング/受信される情報及び/又はシンタックス要素は、前記デコーディング手順を介してデコーディングされて、前記ビットストリームから獲得されることができる。例えば、エントロピーデコーディング部310は、指数ゴロム符号化、CAVLC、またはCABACなどのコーディング方法を基にビットストリーム内の情報をデコーディングし、映像の復元に必要なシンタックスエレメントの値、レジデュアルに関する変換係数の量子化された値を出力できる。より詳細に、CABACエントロピーデコーディング方法は、ビットストリームで各シンタックス要素に該当するビンを受信し、デコーディング対象のシンタックス要素情報、周辺及びデコーディング対象ブロックのデコーディング情報、あるいは以前ステップでデコーディングされたシンボル/ビンの情報を利用してコンテキスト(context)モデルを決定し、決定されたコンテキストモデルによってビン(bin)の発生確率を予測してビンの算術デコーディング(arithmetic decoding)を実行し、各シンタックス要素の値に該当するシンボルを生成できる。このとき、CABACエントロピーデコーディング方法は、コンテキストモデルの決定後、次のシンボル/ビンのコンテキストモデルのためにデコーディングされたシンボル/ビンの情報を用いてコンテキストモデルをアップデートすることができる。エントロピーデコーディング部310でデコーディングされた情報のうち、予測に関する情報は、予測部(インター予測部332及びイントラ予測部331)に提供され、エントロピーデコーディング部部310でエントロピーデコーディングが実行されたレジデュアル値、すなわち、量子化された変換係数及び関連のパラメータ情報は、レジデュアル処理部320に入力されることができる。レジデュアル処理部320は、レジデュアル信号(レジデュアルブロック、レジデュアルサンプル、レジデュアルサンプルアレイ)を導出することができる。また、エントロピーデコーディング310でデコーディングされた情報のうち、フィルタリングに関する情報は、フィルタリング部350に提供されることができる。一方、エンコーディング装置から出力された信号を受信する受信部(図示せず)がデコーディング装置300の内/外部エレメントとしてさらに構成され得、または受信部は、エントロピーデコーディング部310の構成要素であり得る。一方、本文書に係るデコーディング装置は、ビデオ/映像/ピクチャデコーディング装置と呼ばれ得、前記デコーディング装置は、情報デコーダ(ビデオ/映像/ピクチャ情報デコーダ)及びサンプルデコーダ(ビデオ/映像/ピクチャサンプルデコーダ)に区分することもできる。前記情報デコーダは、前記エントロピーデコーディング部310を含むことができ、前記サンプルデコーダは、前記逆量子化部321、逆変換部322、加算部340、フィルタリング部350、メモリ360、インター予測部332、及びイントラ予測部331の少なくとも1つを含むことができる。
逆量子化部321では、量子化された変換係数を逆量子化して変換係数を出力できる。逆量子化部321は、量子化された変換係数を2次元のブロック形態で再整列することができる。この場合、前記再整列は、エンコーディング装置で実行された係数のスキャン順序に基づいて再整列を実行することができる。逆量子化部321は、量子化パラメータ(例えば、量子化ステップサイズ情報)を用いて量子化された変換係数に対する逆量子化を実行し、変換係数(transform coefficient)を獲得できる。
逆変換部322では、変換係数を逆変換してレジデュアル信号(レジデュアルブロック、レジデュアルサンプルアレイ)を獲得することになる。
予測部は、現在ブロックに対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成できる。予測部は、エントロピーデコーディング部310から出力された前記予測に関する情報に基づいて、前記現在ブロックにイントラ予測が適用されるか、またはインター予測が適用されるか決定することができ、具体的なイントラ/インター予測モードを決定できる。
予測部320は、後述する様々な予測方法に基づいて予測信号を生成できる。例えば、予測部は、1つのブロックに対する予測のために、イントラ予測またはインター予測を適用できるだけでなく、イントラ予測とインター予測とを同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれ得る。また、予測部は、ブロックに対する予測のために、イントラブロックコピー(intra block copy、IBC)予測モードに基づくこともあり、又はパレットモード(palette mode)に基づくこともある。前記IBC予測モード又はパレットモードは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動画コーディングのために使用されることができる。IBCは、基本的に現在ピクチャ内で予測を行うが、現在ピクチャ内で参照ブロックを導出する点においてインター予測と同様に実行されることができる。すなわち、IBCは、本文書において説明されるインター予測技法の少なくとも1つを用いることができる。パレットモードは、イントラコーディング又はイントラ予測の一例とみることができる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに関する情報が、前記ビデオ/映像情報に含まれてシグナリングされることができる。
イントラ予測部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のフィルタリング部250、インター予測部332及びイントラ予測部331にも同一または対応するように適用されることができる。
前述したように、ビデオコーディングを実行するにあたって、圧縮効率を高めるために予測を行う。これを通じて、コーディングの対象ブロックである現在ブロックに対する予測サンプルを含む予測されたブロックを生成することができる。ここで、予測されたブロックは、空間ドメイン(又はピクセルドメイン)での予測サンプルを含む。予測されたブロックは、エンコーディング装置及びデコーディング装置で同様に導出され、エンコーディング装置は、原本ブロックの原本サンプル値そのものではなく、原本ブロックと予測されたブロックとの間のレジデュアルに対する情報(レジデュアル情報)をデコーディング装置にシグナリングすることによって映像コーディングの効率を高めることができる。デコーディング装置は、レジデュアル情報に基づいてレジデュアルサンプルを含むレジデュアルブロックを導出し、レジデュアルブロックと予測されたブロックとを合わせて、復元サンプルを含む復元ブロックを生成することができ、復元ブロックを含む復元ピクチャを生成することができる。
前記レジデュアル情報は、変換及び量子化手順を通じて生成されることができる。例えば、エンコーディング装置は、原本ブロックと予測されたブロックとの間のレジデュアルブロックを導出し、レジデュアルブロックに含まれたレジデュアルサンプル(レジデュアルサンプルアレイ)に変換手順を行って変換係数を導出し、変換係数に量子化手順を行って量子化された変換係数を導出し、関連したレジデュアル情報を(ビットストリームを介して)デコーディング装置にシグナリングできる。ここで、レジデュアル情報は、量子化された変換係数の値情報、位置情報、変換技法、変換カーネル、量子化パラメータ等の情報を含むことができる。デコーディング装置は、レジデュアル情報に基づいて逆量子化/逆変換手順を行い、レジデュアルサンプル(又はレジデュアルブロック)を導出することができる。デコーディング装置は、予測されたブロックとレジデュアルブロックに基づいて復元ピクチャを生成することができる。また、エンコーディング装置は、以降のピクチャのインター予測のための参照のために量子化された変換係数を逆量子化/逆変換してレジデュアルブロックを導出し、これに基づいて復元ピクチャを生成することができる。
図4は、本文書で開示された実施形態が適用できるコンテンツストリーミングシステムの例を示す。
図4を参照すると、本文書の実施形態に適用されるコンテンツストリーミングシステムは、大きくエンコーディングサーバ、ストリーミングサーバ、ウェブサーバ、メディアストレージ、ユーザ装置、及びマルチメディア入力装置を含むことができる。
前記エンコーディングサーバは、スマートフォン、カメラ、カムコーダ等のようなマルチメディア入力装置から入力されたコンテンツをデジタルデータに圧縮してビットストリームを生成し、これを前記ストリーミングサーバに送信する役割をする。別の例として、スマートフォン、カメラ、カムコーダなどのようなマルチメディア入力装置がビットストリームを直接生成する場合、前記エンコーディングサーバは省略され得る。
前記ビットストリームは、本文書の実施形態に適用されるエンコーディング方法又はビットストリームの生成方法により生成されることができ、前記ストリーミングサーバは、前記ビットストリームを送信又は受信する過程で、一時的に前記ビットストリームを保存することができる。
前記ストリーミングサーバは、ウェブサーバを介してのユーザ要請に基づいてマルチメディアデータをユーザ装置に送信し、前記ウェブサーバは、ユーザにどのようなサービスがあるかを知らせる媒介体の役割をする。ユーザが前記ウェブサーバに所望のサービスを要請すれば、前記ウェブサーバは、これをストリーミングサーバに伝達し、前記ストリーミングサーバは、ユーザにマルチメディアデータを送信する。このとき、前記コンテンツストリーミングシステムは、別の制御サーバを含むことができ、この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命令/応答を制御する役割をする。
前記ストリーミングサーバは、メディアストレージ及び/又はエンコーディングサーバからコンテンツを受信することができる。例えば、前記エンコーディングサーバからコンテンツを受信するようになる場合、前記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを一定時間保存することができる。
前記ユーザ装置の例としては、携帯電話、スマートフォン(smart phone)、ノートパソコン(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、デスクトップコンピュータ、デジタルサイネージなどがあり得る。
前記コンテンツストリーミングシステム内の各サーバは、分散サーバとして運営されることができ、この場合、各サーバで受信するデータは、分散処理されることができる。
図5は、シンタックスエレメント(syntax element)をエンコーディングするためのCABAC(context-adaptive binary arithmetic coding)を例示的に示す。例えば、CABACの符号化過程は、エンコーディング装置は入力信号が2進値ではなく、シンタックスエレメントの場合には、前記入力信号の値を2進化(binarization)し、入力信号を2進値に変換することができる。また、前記入力信号が既に2進値である場合(すなわち、前記入力信号の値が2進値である場合)には、2進化が行われずにバイパス(bypass)できる。ここで、2進値を構成するそれぞれの2進数0又は1をビン(bin)といえる。例えば、2進化された後の2進ストリングが110である場合、1、1、0それぞれを一つのビンという。一つのシンタックスエレメントに対する前記ビンは、前記シンタックスエレメントの値を示すことができる。このような2進化は、Truncated Rice binarization process、Fixed-length binarization process等の多様な2進化方法に基づくことができ、対象のシンタックスエレメントに対する2進化方法は、予め定義されることができる。前記2進化手順は、エントロピーエンコーディング部内の2進化部によって実行されることができる。
以降、前記シンタックスエレメントの2進化されたビンは、正規(regular)符号化エンジン又はバイパス符号化エンジンに入力されることができる。エンコーディング装置の正規符号化エンジンは、該当ビンに対して確率値を反映するコンテキストモデル(context model)を割り当てることができ、割り当てられたコンテキストモデルに基づいて該当ビンをエンコーディングすることができる。エンコーディング装置の前記正規符号化エンジンは、各ビンに対するエンコーディングを実行した後に、該当ビンに対するコンテキストモデルを更新することができる。前述した内容のように、エンコーディングされるビンは、コンテキスト符号化ビン(context-coded bin)と示すことができる。
一方、前記シンタックスエレメントの2進化されたビンが、前記バイパス符号化エンジンに入力される場合には、次のようにコーディングされることができる。例えば、エンコーディング装置のバイパス符号化エンジンは、入力されたビンに対して、確率を推定する手順と、符号化後に前記ビンに適用した確率モデルを更新する手順を省略する。バイパスエンコーディングが適用される場合、エンコーディング装置は、コンテキストモデルを割り当てる代わりに、均一な確率分布を適用し、入力されるビンをエンコーディングすることができ、これを通じて、エンコーディングの速度を向上させることができる。前述した内容のように、エンコーディングされるビンは、バイパスビン(bypass bin)と示すことができる。
エントロピーデコーディングは、前述したエントロピーエンコーディングと同じ過程を逆順に実行する過程を示すことができる。
デコーディング装置(エントロピーデコーディング部)は、エンコーディングされた映像/ビデオ情報をデコーディングすることができる。前記映像/ビデオ情報は、パーティショニングに関する情報、予測に関する情報(ex.インター/イントラ予測区分情報、イントラ予測モード情報、インター予測モード情報等)、レジデュアル情報、インループフィルタリングに関する情報等を含むことができ、又は、それに関する多様なシンタックスエレメントを含むことができる。前記エントロピーコーディングは、シンタックス要素の単位で実行されることができる。
デコーディング装置は、対象のシンタックスエレメントに対する2進化を実行することができる。ここで、前記2進化は、Truncated Rice binarization process、Fixed-length binarization process等の多様な2進化方法に基づくことができ、対象のシンタックスエレメントに対する2進化方法は、予め定義されることができる。デコーディング装置は、前記2進化手順を介して、対象のシンタックスエレメントの可用値に対する可用のビンストリング(ビンストリングの候補)を導出することができる。前記2進化手順は、エントロピーデコーディング部内の2進化部によって実行されることができる。
デコーディング装置は、ビットストリーム内の入力ビットから前記対象のシンタックスエレメントに対する各ビンを順次にデコーディング及びパーシングするとともに、導出されたビンストリングを該当シンタックスエレメントに対する可用のビンストリングと比較する。もし、導出されたビンストリングが前記可用のビンストリングのうちの一つと同じであれば、該当ビンストリングに対応する値が、該当シンタックス要素の値として導出される。もし、そうでなければ、前記ビットストリーム内の次のビットをさらにパーシングした後、前述した手順を再度実行する。このような過程を通じて、ビットストリーム内に特定の情報(特定のシンタックスエレメント)に対するスタートビットやエンドビットを使用しなくても、可変長さのビットを用いて、該当情報をシグナリングすることができる。これを介して、低い値に対しては、相対的により少ないビットを割り当てることができ、全般的なコーディング効率を高めることができる。
デコーディング装置は、CABAC又はCAVLC等のエントロピーコーディング技法に基づいて、ビットストリームから前記ビンストリング内の各ビンをコンテキストモデルに基づいて、又はバイパスに基づいてデコーディングできる。
シンタックスエレメントがコンテキストモデルに基づいてデコーディングされる場合、デコーディング装置は、ビットストリームを介して前記シンタックスエレメントに該当するビンを受信することができ、前記シンタックスエレメントとデコーディングの対象ブロック又は周辺ブロックのデコーディング情報、或いは以前のステップでデコーディングされたシンボル/ビンの情報を用いて、コンテキストモデル(context model)を決定することができ、決定されたコンテキストモデルによって、前記受信されたビン(bin)の発生確率を予測してビンの算術デコーディング(arithmetic decoding)を実行し、前記シンタックスエレメントの値を導出することができる。以降、前記決定されたコンテキストモデルで、次にデコーディングされるビンのコンテキストモデルがアップデートされることができる。
コンテキストモデルは、コンテキストコーディング(正規コーディング)されるビン別に割当及びアップデートされることができ、コンテキストモデルは、ctxIdx又はctxIncに基づいて指示されることができる。ctxIdxは、ctxIncに基づいて導出されることができる。具体的に、例えば、前記正規コーディングされるビンそれぞれに対するコンテキストモデルを指すコンテキストインデックス(ctxIdx)は、context index increment(ctxInc)及びcontext index offset(ctxIdxOffset)の和で導出されることができる。ここで、前記ctxIncは、各ビン別に異なって導出されることができる。前記ctxIdxOffsetは、前記ctxIdxの最小値(the lowest value)で表されることができる。前記ctxIdxOffsetは、一般的に他のシンタックス要素に対するコンテキストモデルとの区分のために用いられる値であって、一つのシンタックス要素に対するコンテキストモデルは、ctxIncに基づいて区分/導出されることができる。
エントロピーエンコーディング手順で、正規コーディングエンジンを介してエンコーディングを実行するか、バイパスコーディングエンジンを介してエンコーディングを実行するかを決定し、コーディング経路を切り替えることができる。エントロピーデコーディングは、エントロピーエンコーディングと同じ過程を逆順に実行する。
一方、例えば、シンタックスエレメントがバイパスデコーディングされる場合、デコーディング装置は、ビットストリームを介して、前記シンタックスエレメントに該当するビンを受信することができ、均一な確率分布を適用して入力されるビンをデコーディングすることができる。この場合、デコーディング装置は、シンタックスエレメントのコンテキストモデルを導出する手順と、デコーディング後に前記ビンに適用したコンテキストモデルを更新する手順は省略され得る。
前述したように、レジデュアルサンプルは、変換、量子化過程を経て、量子化された変換係数として導出されることができる。量子化された変換係数は、変換係数とも呼ばれ得る。この場合、ブロック内の変換係数は、レジデュアル情報の形態でシグナリングされることができる。前記レジデュアル情報は、レジデュアルコーディングシンタックスを含むことができる。すなわち、エンコーディング装置は、レジデュアル情報でレジデュアルコーディングシンタックスを構成し、これをエンコーディングしてビットストリームの形態で出力することができ、デコーディング装置は、ビットストリームからレジデュアルコーディングシンタックスをデコーディングし、レジデュアル(量子化された)変換係数を導出することができる。前記レジデュアルコーディングシンタックスは、後述するように、該当ブロックに対して変換が適用されているのか、ブロック内の最後の有効変換係数の位置がどこなのか、サブブロック内の有効変換係数が存在するか、有効変換係数の大きさ/符号がどうであるか等を示すシンタックスエレメント(syntax elements)を含むことができる。
一方、イントラ予測が行われる場合、サンプル間の相関関係が用いられることができ、原本ブロックと予測ブロックとの差、すなわち、レジデュアル(residual)が獲得できる。前記レジデュアルには、前述した変換及び量子化が適用できるが、これを介して空間的リダンダンシー(spatial redundancy)が除去できる。以下では、イントラ予測が使用されるエンコーディング方法及びデコーディング方法に関して具体的に説明する。
イントラ予測は、現在ブロックを含むピクチャ(以下、現在ピクチャ)内の現在ブロックの外部の参照サンプルに基づいて現在ブロックに対する予測サンプルを生成する予測を言う。ここで、現在ブロックの外部の参照サンプルは、現在ブロックの周辺に位置するサンプルをいえる。現在ブロックにイントラ予測が適用される場合、現在ブロックのイントラ予測に使用する周辺(neighboring)の参照サンプルが導出できる。
例えば、現在ブロックの大きさ(幅×高さ)がnW×nHの大きさであるとき、現在ブロックの周辺参照サンプルは、現在ブロックの左側(left)境界に隣接したサンプル、及び左下側(bottom-left)に隣接する計2×nH個のサンプル、現在ブロックの上側(top)境界に隣接したサンプル、及び右上側(top-right)に隣接する計2×nW個のサンプル、現在ブロックの左上側(top-left)に隣接する1個のサンプルを含むことができる。或いは、現在ブロックの周辺参照サンプルは、複数列の上側周辺サンプル及び複数行の左側周辺サンプルを含むこともできる。また、現在ブロックの周辺参照サンプルは、nW×nH大きさの現在ブロックの右側(right)境界に隣接した計nH個のサンプル、現在ブロックの下側(bottom)境界に隣接した計nW個のサンプル、現在ブロックの右下側(bottom-right)に隣接する1個のサンプルを含むこともできる。
但し、現在ブロックの周辺参照サンプルのうち一部はまだデコーディングされていないか、利用可能ではないことがある。この場合、デコーディング装置は、利用可能ではないサンプルを利用可能なサンプルに代替(substitution)し、予測に使用する周辺参照サンプルを構成することができる。或いは、利用可能なサンプルの補間(interpolation)を介して、予測に使用する周辺参照サンプルを構成することができる。
周辺参照サンプルが導出された場合、(i)現在ブロックの周辺参照サンプルの平均(average)或いは補間(interpolation)に基づいて予測サンプルを誘導することができ、(ii)現在ブロックの周辺参照サンプルのうち予測サンプルに対して特定の(予測)方向に存在する参照サンプルに基づいて予測サンプルを誘導することもできる。(i)の場合は、イントラ予測モードが非方向性モード又は非角度モードであるときに適用されることができ、(ii)の場合は、イントラ予測モードが方向性(directional)モード又は角度(angular)モードであるときに適用されることができる。
また、周辺参照サンプルのうち、現在ブロックの予測サンプルを基準に現在ブロックのイントラ予測モードの予測方向に位置する第1周辺サンプルと前記予測方向の反対方向に位置する第2周辺サンプルとの補間を介して予測サンプルが生成されることもできる。前述した場合は、線形補間イントラ予測(Linear interpolation intra prediction、LIP)と呼ばれ得る。また、線形モデル(linear model)を用いて、ルマサンプルに基づいてクロマ予測サンプルが生成されることもできる。この場合は、LMモードと呼ばれ得る。
また、フィルタリングされた周辺参照サンプルに基づいて現在ブロックの仮の予測サンプルを導出し、既存の周辺参照サンプル、すなわち、フィルタリングされていない周辺参照サンプルのうち、イントラ予測モードによって導出された少なくとも一つの参照サンプルと、前記仮の予測サンプルを加重和(weighted sum)して、現在ブロックの予測サンプルを導出することもできる。前述した場合は、PDPC(Position dependent intra prediction)と呼ばれ得る。
また、現在ブロックの周辺の多重参照サンプルラインのうち、最も予測正確度の高い参照サンプルラインを選択し、該当ラインで予測方向に位置する参照サンプルを用いて予測サンプルを導出して、このとき、使用された参照サンプルラインをデコーディング装置に指示(シグナリング)する方法でイントラ予測の符号化を行うことができる。前述した場合は、multi-reference line(MRL)intra prediction又はMRLに基づくイントラ予測と呼ばれ得る。
また、現在ブロックを垂直又は水平のサブパーティションに分けて、同じイントラ予測モードに基づいてイントラ予測を行い、サブパーティション単位で周辺参照サンプルを導出して用いることができる。すなわち、この場合、現在ブロックに対するイントラ予測モードがサブパーティションに同じように適用され、サブパーティション単位で周辺参照サンプルを導出して用いることによって、場合に応じて、イントラ予測の性能を高めることができる。このような予測方法は、intra sub-partitions(ISP)又はISPに基づくイントラ予測と呼ばれ得る。
前述したイントラ予測方法は、イントラ予測モードと区分し、イントラ予測タイプと呼ばれ得る。イントラ予測タイプは、イントラ予測技法又は付加のイントラ予測モード等の多様な用語で呼ばれ得る。例えば、イントラ予測タイプ(又は付加のイントラ予測モード等)は、前述したLIP、PDPC、MRL、ISPの少なくとも一つを含むことができる。前記LIP、PDPC、MRL、ISP等の特定のイントラ予測タイプを除いた一般のイントラ予測方法は、ノーマルイントラ予測タイプと呼ばれ得る。ノーマルイントラ予測タイプは、前記のような特定のイントラ予測タイプが適用されない場合、一般的に適用されることができ、前述したイントラ予測モードに基づいて予測が行われることがある。一方、必要に応じて、導出された予測サンプルに対する後処理フィルタリングが行われることもある。
一方、前述したイントラ予測タイプの他にも、イントラ予測に対する一つの方法としてマトリックスに基づくイントラ予測(Matrix based intra prediction、以下、MIP)が使用できる。MIPは、アフィン線形加重イントラ予測(Affine linear weighted intra predictio、ALWIP)又はマトリックス加重イントラ予測(Matrix weighted intra prediction、MWIP)と指称され得る。
MIPが現在ブロックに対して適用される場合、i)平均化(averaging)手順が行われた周辺参照サンプルを用いて、ii)マトリックスベクトル掛け算(matrix-vector-multiplication)手順を行い、iii)必要に応じて、水平/垂直補間(interpolation)手順をさらに行って、前記現在ブロックに対する予測サンプルを導出することができる。前記MIPのために使用されるイントラ予測モードは、前述したLIP、PDPC、MRL、ISPイントラ予測や、ノーマルイントラ予測で使用されるイントラ予測モードと異なって構成されることができる。
MIPのためのイントラ予測モードは、「affine linear weighted intra prediction mode」又はマトリックスに基づくイントラ予測モードと呼ばれ得る。例えば、前記MIPのためのイントラ予測モードにより、マトリックスベクトル掛け算で使用されるマトリックス及びオフセットが異なって設定されることができる。ここで、マトリックスは、(アフィン)加重値マトリックスと呼ばれ得、オフセットは、(アフィン)オフセットベクトル又は(アフィン)バイアス(bias)ベクトルと呼ばれ得る。本文書で、MIPのためのイントラ予測モードは、MIPイントラ予測モード、linear weighted intra prediction mode又はmatrix weighted intra prediction mode又はmatrix based intra prediction modeと呼ばれ得る。具体的なMIP方法については後述する。
以下の図面は、本文書の具体的な一例を説明するために作成された。図面に記載された具体的な装置の名称や、具体的な用語や名称(例えば、シンタックスの名称等)は、例示的に提示されたものであるため、本文書の技術的特徴が、以下の図面に使用された具体的な名称に制限されない。
図6は、本文書の実施形態が適用できる概略的なイントラ予測に基づく映像エンコーディング方法の一例を示す。
図6を参照すると、S600は、エンコーディング装置のイントラ予測部222によって実行されることができ、S610は、エンコーディング装置のレジデュアル処理部230によって実行されることができる。具体的に、S610は、エンコーディング装置の減算部231によって実行されることができる。S620において、予測情報はイントラ予測部222により導出され、エントロピーエンコーディング部240によりエンコーディングされることができる。S620において、レジデュアル情報は、レジデュアル処理部230により導出され、エントロピーエンコーディング部240によりエンコーディングされることができる。レジデュアル情報は、レジデュアルサンプルに関する情報である。レジデュアル情報は、レジデュアルサンプルに対する量子化された変換係数に関する情報を含むことができる。前述したように、レジデュアルサンプルは、エンコーディング装置の変換部232を介して変換係数として導出され、変換係数は、量子化部233を介して量子化された変換係数として導出されることができる。量子化された変換係数に関する情報がレジデュアルコーディング手順を介してエントロピーエンコーディング部240でエンコーディングされることができる。
エンコーディング装置は、現在ブロックに対するイントラ予測を行う(S600)。エンコーディング装置は、現在ブロックに対するイントラ予測モード/タイプを導出し、現在ブロックの周辺参照サンプルを導出することができ、イントラ予測モード/タイプ及び周辺参照サンプルに基づいて、現在ブロック内の予測サンプルを生成する。ここで、イントラ予測モード/タイプの決定、周辺参照サンプルの導出、及び予測サンプルの生成手順は、同時に行われることもあり、いずれかの手順が他の手順より先に行われることもある。
一方、示していないが、予測サンプルのフィルタリング手順が行われる場合、イントラ予測部222は予測サンプルフィルタ部(図示せず)をさらに含むこともある。エンコーディング装置は、複数のイントラ予測モード/タイプのうち、現在ブロックに対して適用されるモード/タイプを決定することができる。エンコーディング装置は、イントラ予測モード/タイプに対するRDコスト(RD cost)を比較し、現在ブロックに対する最適のイントラ予測モード/タイプを決定することができる。
前述したように、エンコーディング装置は、予測サンプルのフィルタリング手順を行うこともできる。予測サンプルのフィルタリングは、ポストフィルタリングと呼ばれ得る。予測サンプルのフィルタリング手順により、予測サンプルのうち一部又は全部がフィルタリングできる。場合に応じて、予測サンプルのフィルタリング手順は省略され得る。
エンコーディング装置は、(フィルタリングされた)予測サンプルに基づいて現在ブロックに対するレジデュアルサンプルを生成する(S610)。エンコーディング装置は、現在ブロックの原本サンプルで予測サンプルを位相ベースと比較し、レジデュアルサンプルを導出することができる。
エンコーディング装置は、イントラ予測に関する情報(予測情報)、及びレジデュアルサンプルに関するレジデュアル情報を含む映像情報をエンコーディングすることができる(S620)。予測情報は、イントラ予測モード情報、イントラ予測タイプ情報を含むことができる。レジデュアル情報は、レジデュアルコーディングのシンタックスを含むことができる。エンコーディング装置は、レジデュアルサンプルを変換/量子化し、量子化された変換係数を導出することができる。レジデュアル情報は、前記量子化された変換係数に対する情報を含むことができる。
エンコーディング装置は、エンコーディングされた映像情報をビットストリームの形態で出力することができる。出力されたビットストリームは、保存媒体又はネットワークを介してデコーディング装置に伝達されることができる。
前述したように、エンコーディング装置は復元ピクチャ(復元サンプル及び復元ブロックを含む)を生成することができる。このため、エンコーディング装置は、量子化された変換係数を再度逆量子化/逆変換処理して(修正された)レジデュアルサンプルを導出することができる。このようにレジデュアルサンプルを変換/量子化後、再度逆量子化/逆変換を行う理由は、前述したように、デコーディング装置から導出されるレジデュアルサンプルと同一のレジデュアルサンプルを導出するためである。エンコーディング装置は、予測サンプルと(修正された)レジデュアルサンプルに基づいて、現在ブロックに対する復元サンプルを含む復元ブロックを生成することができる。前記復元ブロックに基づいて、現在ピクチャに対する復元ピクチャが生成できる。前記復元ピクチャにインループフィルタリング手順等がさらに適用できることは前述した通りである。
図7は、本文書の実施形態が適用できる概略的なイントラ予測に基づく映像デコーディング方法の一例を示す。
図7を参照すると、デコーディング装置は、前述したエンコーディング装置で実行された動作と対応する動作を実行することができる。S700乃至S720は、デコーディング装置のイントラ予測部331によって実行されることができ、S700の予測情報及びS730のレジデュアル情報は、デコーディング装置のエントロピーデコーディング部310によりビットストリームから獲得されることができる。デコーディング装置のレジデュアル処理部320は、レジデュアル情報に基づいて、現在ブロックに対するレジデュアルサンプルを導出することができる。具体的に、レジデュアル処理部320の逆量子化部321は、レジデュアル情報に基づいて導出された量子化された変換係数に基づき、逆量子化を行って変換係数を導出し、レジデュアル処理部の逆変換部322は、変換係数に対する逆変換を行い、現在ブロックに対するレジデュアルサンプルを導出することができる。S740は、デコーディング装置の加算部340又は復元部によって実行されることができる。
デコーディング装置は、受信された予測情報(イントラ予測モード/タイプ情報)に基づいて、現在ブロックに対するイントラ予測モード/タイプを導出することができる(S700)。デコーディング装置は、現在ブロックの周辺参照サンプルを導出することができる(S710)。デコーディング装置は、イントラ予測モード/タイプ及び周辺参照サンプルに基づいて、現在ブロック内の予測サンプルを生成する(S720)。この場合、デコーディング装置は、予測サンプルのフィルタリング手順を行うことができる。予測サンプルのフィルタリングは、ポストフィルタリングと呼ばれ得る。予測サンプルのフィルタリング手順により、予測サンプルのうち一部又は全部がフィルタリングできる。場合に応じて、予測サンプルのフィルタリング手順は省略され得る。
デコーディング装置は、受信されたレジデュアル情報に基づいて、現在ブロックに対するレジデュアルサンプルを生成する(S730)。デコーディング装置は、予測サンプル及びレジデュアルサンプルに基づいて、現在ブロックに対する復元サンプルを生成し、復元サンプルを含む復元ブロックを導出することができる(S740)。前記復元ブロックに基づいて、現在ピクチャに対する復元ピクチャが生成できる。前記復元ピクチャにインループフィルタリング手順等がさらに適用できることは前述した通りである。
一方、示していないが、前述した予測サンプルのフィルタリング手順が行われる場合、イントラ予測部331は、予測サンプルフィルタ部(図示せず)をさらに含むこともできる。
一方、イントラ予測モードは、非方向性(non-directional、又は非角度性(non-angular))イントラ予測モードと方向性(directional、又は角度性(angular))イントラ予測モードとを含むことができる。例えば、HEVC標準では、2個の非方向性予測モードと33個の方向性予測モードとを含むイントラ予測モードを使用する。非方向性予測モードには0番であるプラナー(planar)イントラ予測モード及び1番であるDCイントラ予測モードを含むことができ、方向性予測モードには2番乃至34番のイントラ予測モードを含むことができる。プラナーイントラ予測モードはプラナーモードと呼ばれ得、DCイントラ予測モードはDCモードと呼ばれ得る。
又は、自然映像(natural video)で提示された任意のエッジ方向(edge direction)をキャプチャするために、方向性イントラ予測モードは、後述する図10のように、既存の33個から65個に拡張されることができる。この場合、イントラ予測モードは、2個の非方向性イントラ予測モードと65個の方向性イントラ予測モードとを含むことができる。非方向性イントラ予測モードは、0番であるプラナー(planar)イントラ予測モード及び1番であるDCイントラ予測モードを含むことができ、方向性イントラ予測モードは、2番乃至66番のイントラ予測モードを含むことができる。拡張された方向性イントラ予測モードは、全てのサイズのブロックに適用されることができ、ルマ成分及びクロマ成分全てに適用されることができる。但し、これは例示であって、本文書の実施形態は、イントラ予測モードの数が異なる場合にも適用されることができる。場合に応じて、67番のイントラ予測モードがさらに使用されることがあり、67番のイントラ予測モードは、LM(linear model)モードを示すことがある。
図8は、本文書の実施形態が適用できるイントラ予測モードの一例を示す。
図8を参照すると、左上方対角の予測方向を有する34番のイントラ予測モードを中心に水平方向性(horizontal directionality)を有するイントラ予測モードと、垂直方向性(vertical directionality)を有するイントラ予測モードとを区分することができる。図10のHとVはそれぞれ水平方向性と垂直方向性を意味し、-32~32の数字はサンプルグリッドポジション(sample grid position)上で1/32単位の変位を示す。2番乃至33番のイントラ予測モードは、水平方向性、34番乃至66番のイントラ予測モードは垂直方向性を有する。18番のイントラ予測モードと50番のイントラ予測モードは、それぞれ水平イントラ予測モード(horizontal intra prediction mode)、垂直イントラ予測モード(vertical intra prediction mode)を示し、2番のイントラ予測モードは左下方対角のイントラ予測モード、34番のイントラ予測モードは左上方対角のイントラ予測モード、66番のイントラ予測モードは右上方対角のイントラ予測モードと呼ばれ得る。
前記イントラ予測モード情報は、例えば、MPM(most probable mode)が現在ブロックに適用されるか、それともリメイニングモード(remaining mode)が適用されるか否かを示すフラグ情報(ex.intra_luma_mpm_flag)を含むことができる。このとき、MPMが現在ブロックに適用される場合、予測モード情報は、イントラ予測モードの候補(MPM候補)の一つを指すインデックス情報(ex.intra_luma_mpm_idx)をさらに含むことができる。イントラ予測モードの候補(MPM候補)は、MPM候補リスト又はMPMリストで構成されることができる。また、MPMが現在ブロックに適用されない場合、イントラ予測モード情報はイントラ予測モードの候補(MPM候補)を除いた残りのイントラ予測モードの一つを指すリメイニングモード情報(ex.intra_luma_mpm_remainder)をさらに含むことができる。デコーディング装置は、イントラ予測モード情報に基づいて、現在ブロックのイントラ予測モードを決定することができる。
また、イントラ予測タイプ情報は、多様な形態で具現されることができる。一例として、イントラ予測タイプ情報は、イントラ予測タイプの一つを指示するイントラ予測タイプのインデックス情報を含むことができる。別の例として、イントラ予測タイプ情報は、MRLが現在ブロックに適用されるか、及びMRLが適用される場合には、何番目の参照サンプルラインが用いられるか否かを示す参照サンプルライン情報(ex.intra_luma_ref_idx)、ISPが現在ブロックに適用されるかを示すISPフラグ情報(ex.intra_subpartitions_mode_flag)、ISPが適用される場合に、サブパーティションの分割タイプを指示するISPタイプ情報(ex.intra_subpartitions_split_flag)、PDCPの適用可否を示すフラグ情報、又はLIPの適用可否を示すフラグ情報の少なくとも一つを含むことができる。また、イントラ予測タイプ情報は、現在ブロックにMIPが適用されるか否かを示すMIPフラグを含むことができる。
前述したイントラ予測モード情報及び/又はイントラ予測タイプ情報は、本文書で説明したコーディング方法を通じてエンコーディング/デコーディングされることができる。例えば、前述したイントラ予測モード情報及び/又はイントラ予測タイプ情報は、truncated (rice) binary codeに基づいてエントロピーコーディング(ex.CABAC, CAVLC)を介してエンコーディング/デコーディングされることができる。
一方、イントラ予測が適用される場合、周辺ブロックのイントラ予測モードを用いて現在ブロックに適用されるイントラ予測モードが決定できる。例えば、デコーディング装置は、現在ブロックの周辺ブロック(例えば、左側及び/又は上側の周辺ブロック)のイントラ予測モード、及び追加の候補モードに基づいて導出されたmpm(most probable mode)リスト内のmpm候補の一つを受信されたmpmインデックスに基づいて選択することができ、又は前記mpm候補(及びプラナーモード)に含まれていない残りのイントラ予測モードの一つをリメイニングイントラ予測モード情報に基づいて選択できる。mpmリストは、プラナーモードを候補に含むか、又は含まないように構成されることができる。例えば、mpmリストがプラナーモードを候補に含む場合、mpmリストは6個の候補を有し得、mpmリストがプラナーモードを候補に含まない場合、mpmリストは5個の候補を有し得る。mpmリストがプラナーモードを候補に含まない場合、現在ブロックのイントラ予測モードがプラナーモードではないかを示すnotプラナーフラグ(ex.intra_luma_not_planar_flag)がシグナリングできる。例えば、mpmフラグが先にシグナリングされ、mpmインデックス及びnotプラナーフラグは、mpmフラグの値が1である場合、シグナリングされることができる。また、mpmインデックスは、notプラナーフラグの値が1である場合、シグナリングされることができる。ここで、mpmリストがプラナーモードを候補に含まないように構成されることは、プラナーモードがmpmではないというよりは、mpmとして常時プラナーモードが考慮されるため、先にフラグ(not planar flag)をシグナリングし、プラナーモードであるか否かを先に確認するためである。
例えば、現在ブロックに適用されるイントラ予測モードがmpm候補(及びプラナーモード)の中にあるか、それともリメイニングモードの中にあるかは、mpm flag(ex.intra_luma_mpm_flag)に基づいて指示されることができる。mpm flagの値1は、現在ブロックに対するイントラ予測モードがmpm候補(及びプラナーモード)内にあることを示すことができ、mpm flagの値0は、現在ブロックに対するイントラ予測モードがmpm候補(及びプラナーモード)内にないことを示すことができる。not planar flag(ex.intra_luma_not_planar_flag)の値0は、現在ブロックに対するイントラ予測モードがプラナーモードであることを示すことができ、not planar flagの値1は、現在ブロックに対するイントラ予測モードがプラナーモードではないことを示すことができる。mpmインデックスは、mpm_idx又はintra_luma_mpm_idxのシンタックス要素の形態でシグナリングされることができ、リメイニングイントラ予測モード情報は、rem_intra_luma_pred_mode又はintra_luma_mpm_remainderのシンタックス要素の形態でシグナリングされることができる。例えば、リメイニングイントラ予測モード情報は、全体イントラ予測モードのうち、mpm候補(及びプラナーモード)に含まれていない残りのイントラ予測モードを予測モードの番号順にインデキシングし、そのうちの一つを指すことができる。イントラ予測モードは、ルマ成分(サンプル)に対するイントラ予測モードであり得る。以下、イントラ予測モード情報は、mpm flag(ex.intra_luma_mpm_flag)、not planar flag(ex.intra_luma_not_planar_flag)、mpmインデックス(ex.mpm_idx又はintra_luma_mpm_idx)、リメイニングイントラ予測モード情報(rem_intra_luma_pred_mode又はintra_luma_mpm_remainder)の少なくとも一つを含むことができる。本文書において、mpmリストは、mpm候補リスト、候補モードリスト(candModeList)、候補イントラ予測モードリスト等の多様な用語で呼ばれ得る。
一般的に映像に対してブロック分割されると、コーディングしようとする現在ブロックと周辺ブロックは類似の映像特性を有することになる。従って、現在ブロックと周辺ブロックは互いに同一であるか、類似するイントラ予測モードを有する確率が高い。よって、エンコーダは、現在ブロックのイントラ予測モードをエンコーディングするために周辺ブロックのイントラ予測モードを用いることができる。例えば、エンコーダ/デコーダは、現在ブロックに対するMPM(most probable modes)リストを構成することができる。MPMリストは、MPM候補リストと示すこともできる。ここで、MPMとは、イントラ予測モードのコーディング時、現在ブロックと周辺ブロックの類似性を考慮し、コーディング効率を向上させるために用いられるモードを意味することができる。
図9は、本文書の実施形態が適用できるエンコーディング装置でのMPMモードに基づくイントラ予測方法の一例を示す。
図9を参照すると、エンコーディング装置は、現在ブロックに対するMPMリストを構成する(S900)。MPMリストは、現在ブロックに適用される可能性の高い候補イントラ予測モード(MPM候補)を含むことができる。MPMリストは、周辺ブロックのイントラ予測モードを含むこともでき、予め決められた方法によって特定のイントラ予測モードをさらに含むこともできる。具体的なMPMリストの構成方法は後述される。
エンコーディング装置は、現在ブロックのイントラ予測モードを決定する(S910)。エンコーディング装置は、多様なイントラ予測モードに基づいて予測を行うことができ、これに基づくRDO(rate-distortion optimization)に基づいて最適のイントラ予測モードを決定することができる。エンコーディング装置は、この場合、MPMリストに構成されたMPM候補及びプラナーモードのみを用いて、最適のイントラ予測モードを決定することもでき、又はMPMリストに構成されたMPM候補及びプラナーモードだけでなく、残りのイントラ予測モードをさらに用いて、最適のイントラ予測モードを決定することもできる。
具体的に、例えば、もし現在ブロックのイントラ予測タイプがノーマルイントラ予測タイプではなく、特定のタイプ(例えば、LIP、MRL、又はISP)である場合には、エンコーディング装置は、MPM候補及びプラナーモードのみを現在ブロックに対するイントラ予測モードの候補として考慮し、最適のイントラ予測モードを決定することができる。すなわち、この場合には、現在ブロックに対するイントラ予測モードは、MPM候補及びプラナーモードからのみ決定されることができ、この場合には、mpm flagをエンコーディング/シグナリングしないことがある。デコーディング装置は、この場合には、mpm flagを、別途シグナリングを受けなくても、mpm flagが1であると推定し得る。
一般的に現在ブロックのイントラ予測モードがプラナーモードではなく、MPMリスト内にあるMPM候補の一つである場合、エンコーディング装置は、MPM候補の一つを指すmpmインデックス(mpm idx)を生成する。もし、現在ブロックのイントラ予測モードが、MPMリスト内にもない場合には、MPMリスト(及びプラナーモード)に含まれていない残りのイントラ予測モードのうち、現在ブロックのイントラ予測モードと同じモードを指すリメイニングイントラ予測モード情報を生成する。
エンコーディング装置は、イントラ予測モード情報をエンコーディングしてビットストリームの形態で出力することができる(S920)。イントラ予測モード情報は、前述したmpm flag、not planar flag、mpmインデックス及び/又はリメイニングイントラ予測モード情報を含むことができる。一般的にmpmインデックスとリメイニングイントラ予測モード情報は、代替(alternative)関係であって、一つのブロックに対するイントラ予測モードを指示するにあたって、同時にシグナリングされない。すなわち、mpm flagの値1とnot planar flag or mpmのインデックスが共にシグナリングされるか、mpm flagの値0とリメイニングイントラ予測モード情報が共にシグナリングされる。但し、前述したように、現在ブロックに特定のイントラ予測タイプが適用される場合には、mpm flagがシグナリングされず、not planar flag and/or mpmインデックスのみシグナリングされることもある。すなわち、この場合、イントラ予測モード情報は、not planar flag and/or mpmのインデックスのみを含むこともある。
図10は、本文書の実施形態が適用できるデコーディング装置におけるMPMモードに基づくイントラ予測方法の一例を示す。図10のデコーディング装置は、図9のエンコーディング装置で決定及びシグナリングされたイントラ予測モード情報に対応して、イントラ予測モードを決定することができる。
図10を参照すると、デコーディング装置は、ビットストリームからイントラ予測モード情報を獲得する(S1000)。イントラ予測モード情報は、前述したように、mpm flag、not planar flag、mpmインデックス、リメイニングイントラ予測モードの少なくとも一つを含むことができる。
デコーディング装置は、MPMリストを構成する(S1010)。MPMリストは、エンコーディング装置で構成されたMPMリストと同じように構成される。すなわち、MPMリストは、周辺ブロックのイントラ予測モードを含むこともあり、予め決められた方法によって、特定のイントラ予測モードをさらに含むこともある。具体的なMPMリストの構成方法は後述する。
S1010はS1000よりも後で行われると図示されているが、これは例示であって、S1010はS1000よりも先に行われることもあり、同時に行われることもある。
デコーディング装置は、MPMリスト及びイントラ予測モード情報に基づいて、現在ブロックのイントラ予測モードを決定する(S1020)。
一例として、mpm flagの値が1である場合、デコーディング装置は、プラナーモードを現在ブロックのイントラ予測モードとして導出するか(not planar flagに基づく)MPMリスト内のMPM候補の中からmpmインデックスの指す候補を現在ブロックのイントラ予測モードとして導出することができる。ここで、MPM候補とは、MPMリストに含まれる候補のみを示すこともあり、又はMPMリストに含まれる候補だけでなく、mpm flagの値が1である場合に適用されることができるプラナーモードも含まれることがある。
別の例として、mpm flagの値が0である場合、デコーディング装置は、MPMリスト及びプラナーモードに含まれていない残りのイントラ予測モードの中からリメイニングイントラ予測モード情報が指すイントラ予測モードを現在ブロックのイントラ予測モードとして導出することができる。
また別の例として、現在ブロックのイントラ予測タイプが特定のタイプ(例えば、LIP、MRL又はISP等)である場合、デコーディング装置は、mpm flagの確認がなくても、プラナーモード又はMPMリスト内でmpmインデックスの指す候補を現在ブロックのイントラ予測モードとして導出することもできる。
MPMリストを構成するにあたって、一実施形態として、エンコーディング装置/デコーディング装置は、現在ブロックの左側周辺ブロックに対する候補イントラ予測モードである左側モードを導出し、現在ブロックの上側周辺ブロックに対する候補イントラ予測モードである上側モードを導出することができる。ここで、左側周辺ブロックは、現在ブロックの左側に隣接して位置する左側周辺ブロックのうち、最下側に位置する周辺ブロックを示すことができ、上側周辺ブロックは、現在ブロックの上側に隣接して位置する上側周辺ブロックのうち、最右側に位置する周辺ブロックを示すことができる。例えば、現在ブロックのサイズがW×Hであり、現在ブロックの左上側(top-left)サンプルポジションのx成分がxN及びy成分がyNである場合、左側周辺ブロックは、(xN-1,yN+H-1)座標のサンプルを含むブロックであり得、上側周辺ブロックは、(xN+W-1,yN-1)座標のサンプルを含むブロックであり得る。
例えば、エンコーディング装置/デコーディング装置は、左側周辺ブロックが可用であり(available)、左側周辺ブロックにイントラ予測が適用された場合、左側周辺ブロックのイントラ予測モードを左側候補イントラ予測モード(すなわち、左側モード)として導出することができる。デコーディング装置は、上側周辺ブロックが可用であり(available)、上側周辺ブロックにイントラ予測が適用され、上側周辺ブロックが現在のCTUに含まれた場合、上側周辺ブロックのイントラ予測モードを上側候補イントラ予測モード(すなわち、上側モード)として導出することができる。或いは、エンコーディング装置/デコーディング装置は、左側周辺ブロックが可用ではないか、又は左側周辺ブロックにイントラ予測が適用されない場合、プラナーモードを左側モードとして導出することができる。デコーディング装置は、上側周辺ブロックが可用ではないか、又は上側周辺ブロックにイントラ予測が適用されないか、又は上側周辺ブロックが現在のCTUに含まれない場合、プラナーモードを上側モードとして導出することができる。
エンコーディング装置/デコーディング装置は、左側周辺ブロックから導出された左側モード及び上側周辺ブロックから導出された上側モードに基づいて、現在ブロックに対する候補イントラ予測モードを導出して、MPMリストを構成することができる。このとき、MPMリストは、左側モード及び上側モードを含むこともでき、予め決められた方法によって特定のイントラ予測モードをさらに含むこともできる。
また、MPMリストを構成するにあたって、一般イントラ予測方法(ノーマルイントラ予測タイプ)が適用されることもでき、或いは特定のイントラ予測タイプ(例えば、MRL、ISP)が適用されることもできる。本文書では、このように一般イントラ予測方法(ノーマルイントラ予測タイプ)だけでなく、特定のイントラ予測タイプ(例えば、MRL、ISP)が適用される場合、MPMリストを構成する方法を提案し、これに関しては後述する。
一方、前述したMIPに使用されるイントラ予測モードは、既存の方向性モードではなく、イントラ予測に使用されるマトリックス及びオフセットを指示することができる。すなわち、MIPのためのイントラモードを介して、イントラ予測のためのマトリックス及びオフセットを導出することができる。この場合、前述した通常のイントラ予測又はMPMリストを生成するためのイントラモードの導出時、MIPと予測されたブロックのイントラ予測モードは、既設定されたモード、例えば、プラナーモード又はDCモードに設定されることができる。或いは、別の例によって、ブロックサイズに基づいて、MIPのためのイントラモードをプラナーモード、DCモード又は方向性イントラモードにマッピングすることもできる。
以下では、イントラ予測の一つの方法であるMIP(Matrix based intra prediction)について見てみる。
前述したように、マトリックスに基づくイントラ予測(Matrix based intra prediction、以下、MIP)は、アフィン線形加重イントラ予測(Affine linear weighted intra predictio、ALWIP)又はマトリックス加重イントラ予測(Matrix weighted intra prediction、MWIP)と指称され得る。幅(W)及び高さ(H)を有する長方形ブロックのサンプルを予測するために、MIPは、ブロックの復元された周辺の左側境界サンプルのうちの一つのHラインと、ブロックの復元された周辺の上側境界サンプルのうちの一つのWラインを入力値として使用する。もし、復元されたサンプルが利用可能ではない場合、通常のイントラ予測で適用された補間方法で参照サンプルが生成できる。
図11は、一例に係るMIPに基づく予測サンプルの生成手順を説明する図であって、図11を参照として、MIP手順を説明すると次の通りである。
1.平均化手順(Averaging process)
境界サンプルのうち、W=H=4である場合、4個のサンプル、他の全ての場合、8個のサンプルが平均化手順により抽出される。
2.マトリックスベクトル掛け算手順(Matix vector multiplication process)
平均化されたサンプルを入力として行列ベクトルの掛け算が行われ、後続的にオフセットが加わる。このような演算を介して、元のブロック内にサブサンプリングされたサンプルセットに対する縮小された予測サンプルが導出できる。
3.補間手順((linear)Interpolation process)
残りの位置での予測サンプルは、各方向でのシングルステップ(single step)の線形補間である線形補間によりサブサンプリングされたサンプルセットの予測サンプルから生成される。
予測ブロック又は予測サンプルを生成するのに必要な行列、及びオフセットベクトルは、マトリックスに対する三つのセットS、S、Sから選択されることができる。
セットSは、16個のマトリックスA 、i∈{0,…,15}で構成され、各マトリックスは、16個の行と、4個の列と、16個のオフセットベクトルb 、i∈{0,…,15}で構成されることができる。セットSのマトリックスとオフセットベクトルは、大きさが4×4のブロックに使用されることができる。また別の例によると、セットSは、18個のマトリックスを含むこともできる。
セットSは、8個のマトリックスA 、i∈{0,…,7}で構成され、各マトリックスは、16個の行と8個の列と8個のオフセットベクトルb 、i∈{0,…,7}で構成されることができる。また別の例によると、セットSは、6個のマトリックスを含むこともできる。セットSのマトリックスとオフセットベクトルは、大きさが4×8、8×4、及び8×8のブロックに使用されることができる。或いは、セットSのマトリックスとオフセットベクトルは、大きさが4×H又はW×4のブロックに使用されることができる。
最後に、セットSは、6個のマトリックスA 、i∈{0,…,5}で構成され、各マトリックスは、64個の行と8個の列と6個のオフセットベクトルb 、i∈{0,…,5}で構成されることができる。セットSのマトリックスとオフセットベクトル、又はその一部は、セットS及びセットSが適用されない他の全ての大きさのブロック形態に使用されることができる。例えば、セットSのマトリックスとオフセットベクトルは、高さ及び幅が8以上であるブロックの演算に使用されることができる。
マトリックスベクトル掛け算に必要な計掛け算の数は、常時4×W×Hよりも小さいか等しい。すなわち、MIPモードには、サンプル当たり最大4個の掛け算が要求される。
以下では、全般的なMIP手順について概略的に説明される。下記説明されていない残りのブロックは、記述された4つの場合のいずれかで処理されることができる。
図12乃至図15は、ブロックの大きさによるMIP手順を示した図であり、図12は、4×4ブロックに対するMIP手順を示した図であり、図13は、8×8ブロックに対するMIP手順を示した図であり、図14は、8×4ブロックに対するMIP手順を示した図であり、図15は、16×16ブロックに対するMIP手順を示した図である。
図12に示すように、4×4ブロックが与えられると、MIPは、境界の各軸に沿って、2個のサンプルに対する平均をとる。結果的に、4個の入力サンプルがマトリックスベクトル掛け算の入力値となり、マトリックスは、セットSから持ってくる。オフセットが加わると、16個の最終の予測サンプルが生成される。4×4ブロックの場合、予測サンプルを生成するための線形補間が必要ではない。したがって、サンプル当たりいずれも(4×16)/(4×4)=4の掛け算を行うことができる。
図13に示すように、8×8ブロックが与えられると、MIPは境界の各軸に沿って、4個のサンプルに対する平均をとる。結果的に、8個の入力サンプルがマトリックスベクトル掛け算の入力値となり、マトリックスは、セットSから持ってくる。マトリックスベクトル掛け算により奇数の位置(odd positions)に16個のサンプルが生成される。
8×8ブロックの場合、予測サンプルを生成するために、サンプル当たりいずれも(8×16)/(8×8)=2の掛け算が行われる。オフセットを加えた後、縮小された上側境界サンプルを使用してサンプルを垂直方向に補間し、元の左側境界サンプルを用いて水平方向に補間する。この場合、補間手順で掛け算の演算が必要ではないため、MIPのためにサンプル当たり計2個の掛け算の演算が必要である。
図14に示すように、8×4ブロックが与えられると、MIPは境界の横軸に沿って、4個のサンプルに対する平均をとり、縦軸に対しては、左側境界の4個のサンプル値を使用する。結果的に、8個の入力サンプルがマトリックスベクトル掛け算の入力値となり、マトリックスは、セットSから持ってくる。マトリックスベクトル掛け算により、 奇数の水平位置並びに該当垂直位置に、16個のサンプルが生成される。
8×4ブロックの場合、予測サンプルを生成するために、サンプル当たりいずれも(8×16)/(8×4)=4の掛け算が行われる。オフセットを加えた後、元の左側境界サンプルを用いて水平方向に補間する。この場合、補間手順で掛け算の演算を必要としないため、MIPのためにサンプル当たり計4個の掛け算の演算が必要である。
図15に示すように、16×16ブロックが与えられると、MIPは、各軸に沿って、4個のサンプルに対する平均をとり、結果的に、8個の入力サンプルがマトリックスベクトル掛け算の入力値となり、マトリックスはセットSから持ってくる。マトリックスベクトル掛け算により、奇数の位置に64個のサンプルが生成される。16×16ブロックの場合、予測サンプルを生成するためにサンプル当たり、いずれも(8×64)/(16×16)=2の掛け算が行われる。オフセットを加えた後、縮小された上側境界サンプル8個を使用してサンプルを垂直方向に補間し、元の左側境界サンプルを用いて水平方向に補間する。この場合、補間手順で掛け算の演算が必要ではないため、MIPのためにサンプル当たり、計2個の掛け算の演算が必要である。
より大きいブロックの場合、MIP手順は、詳述される手順と本質的に同一であり、サンプル当たりの掛け算の数が4未満であることを容易に確認することができる。
幅が8よりも大きい(W>8)W×8ブロックの場合、サンプルが奇数の水平及び各垂直位置に生成されるので、水平補間のみ必要である。この場合、縮小されたサンプルの予測演算のためにサンプル当たり(8×64)/(W×8)=64/Wの掛け算が行われる。W=16の場合、線形補間のための追加の掛け算が必要ではなく、W>16の場合、線形補間に必要なサンプル当たりの追加の掛け算の数が2よりも小さい。すなわち、サンプル当たりの計掛け算の数は4よりも小さいか等しい。
また、幅が4よりも大きい(W>4)W×4ブロックの場合、ダウンサンプリングされたブロックの水平軸に沿って、奇数エントリーに対応する全ての行を省略することによって発生する行列をAとする。したがって、出力の大きさは32であり、水平補間のみ行われる。縮小されたサンプルの予測演算のために、サンプル当たり(8×32)/(W×4)=64/Wの掛け算が行われる。W=16の場合、追加の掛け算が必要ではなく、W>16の場合、線形補間に必要なサンプル当たりの追加の掛け算の数が2よりも小さい。すなわち、サンプル当たりの総掛け算の数は4よりも小さいか等しい。
マトリックスが前置された場合、それによって処理されることができる。
図16は、MIP手順のうち、境界の平均化手順を説明するための図である。図16を参照として、平均化手順を具体的に説明する。
平均化手順によると、平均化は、各境界、すなわち、左側境界又は上側境界に適用される。ここで、境界は、図16のように現在ブロックの境界に隣接した周辺参照サンプルを示す。例えば、左側境界(bdryleft)は、現在ブロックの左側境界に隣接した左側周辺参照サンプルを示し、上側境界(bdrytop)は、上側に隣接した上側周辺参照サンプルを示す。
現在ブロックが4×4ブロックであると、各境界の大きさは、平均化手順を介して、2個のサンプルに縮小されることができる。現在ブロックが4×4ブロックでなければ、各境界の大きさは、平均化手順を介して4個のサンプルに縮小されることができる。
平均化手順の最初のステップは、入力境界(bdryleft及びbdrytop)をより小さい境界に縮小するものである

は、4×4ブロックの場合には2個のサンプルで構成され、残りの全ての異なる場合には4個のサンプルで構成される。
4×4ブロックの場合、0≦i<2に対する
を数式で表すと次の通りであり、
もやはり同様に定義されることができる。
一方、0≦i<4に対して、ブロックの幅がW=4×2と与えられると、
は、次の数式で表すことができ、
もやはり同様に定義されることができる。
2個の縮小された境界
は、縮小された境界ベクトルbdryredに連結されるので、bdryredは、4×4形態のブロックの場合、大きさが4であり、他の全てのブロックの場合、大きさは8である。
「mode」をMIPモードと指称する場合、縮小された境界ベクトルbdryredとMIPモード値(mode)の範囲は、下記の数式のようにブロックの大きさとintra_mip_transposed_flag値に基づいて定義することができる。
前記数式で、intra_mip_transposed_flagはMIP transposeと指称され得、このようなフラグ情報は、縮小された予測サンプルがトランスポーズ(transpose)されているか否かを示すことができる。このようなシンタックス要素に対するセマンティクスは、「intra_mip_transposed_flag[x0][y0] specifies whether the input vector for matrix-based intra prediction mode for luma samples is transposed or not.」で表すことができる。
最終的に、サブサンプリングされた予測サンプルの補間のために、大きいブロックでは、平均化された境界の第2バージョンが必要である。すなわち、もし、幅及び高さのうち、小さい値が8よりも大きく

幅が高さよりも等しいか大きいと(W≧H)、W=8*2とし、0≦i<8に対して、
は、下記数式のように定義されることができる。また、幅及び高さのうち、小さい値が8よりも大きく
、高さが幅より大きいと(H>W)
もやはり同様に定義されることができる。
次に、マトリックスベクトル掛け算による縮小された予測サンプルの生成手順を見てみる。
縮小された入力ベクトルbdryredのうちの一つが縮小された予測サンプル
を生成する。予測サンプルは、幅Wred及び高さHredのダウンサンプリングされたブロックに対する信号である。ここで、WredとHredは、次のように定義される。
縮小された予測サンプル
は、マトリックスベクトル掛け算の演算後、オフセットを追加することによって計算されることができ、下記のような数式を介して導出されることができる。
ここで、Aは、Wred×hred行と、WとHが4であるとき(W=H=4)に4列と、他の全ての場合であるときに8列を有するマトリックスであり、bは、Wred×hredの大きさのベクトルである。
マトリックスAとベクトルbは、下記のようにセットS、S、Sから選択され、インデックスidx=idx(W,H)は、数式7又は数式8のように定義されることができる。
idxが1以下(idx≦1)であるか、idxが2であり、W及びHのうち小さい値が4よりも大きいと
、Aは

、bは
に設定される。idxが2であり、W及びHのうち小さい値が4であり
、Wが4である場合、Aは、ダウンサンプリングされたブロック内の奇数x座標に対応する
の各行を除去したマトリックスになる。或いは、Hが4であると、Aは、ダウンサンプリングされたブロック内の奇数y座標に対応する
の各列を除去したマトリックスになる。
最終的に、縮小された予測サンプルは、数式9で自分のトランスポーズにより代替されることができる。
の計算に必要な掛け算の数は、W=H=4である場合、Aが4個の列と16個の行とで構成されるので、4である。他の全ての場合、Aが8個の列とWred×hred個の行で構成されるので、
の計算するために、サンプル当たり最大4個の掛け算が必要であることを確認することができる。
図17は、MIP手順のうち、線形補間を説明するための図である。図17を参照として、線形補間手順を具体的に説明すると次の通りである。
補間手順は、線形補間又は二重線形補間手順と指称され得る。補間手順は、示すように、1)垂直補間、及び2)水平補間の二つのステップを含むことができる。
W≧Hであると、垂直線形補間が先に適用でき、続いて水平線形補間が適用できる。W<Hであると、水平線形補間が先に適用でき、続いて垂直線形補間が適用できる。4×4ブロックの場合、補間手順が省略され得る。
であるW×Hブロックで、予測サンプルは、Wred×Hred上の縮小された予測サンプル
から導出される。ブロックの形態に応じて、線形補間は垂直、水平又は両方向に行われる。線形補間が両方向に適用される場合、W<Hであると、水平方向に先に適用され、そうでなければ、垂直方向に先に適用される。
であり、W≧HであるW×Hブロックの場合、一般性(generality)の損失がないとみなされることができる。それでは、1次元の線形補間は、次のように行われる。一般性の損失がなければ、垂直方向に対する線形補間が充分に説明される。
まず、縮小された予測サンプルは、境界信号により上段に拡張される。垂直アップサンプリングの係数
を定義し、
を設定すると、拡張された縮小の予測サンプルを下記数式のように設定することができる。
その後、このような拡張された縮小の予測サンプルから垂直の線形補間の予測サンプルが下記数式により生成できる。
ここで、xは、0≦x<Wred、yは、0≦y<Hred、kは、0≦k<Uverであり得る。
以下では、MIP技法に対する複雑度を低くするとともに、性能を最大化する方法について見てみる。後述される実施形態は、独立して実行されることもあり、組み合わせられて実行されることもある。
一方、現在ブロックにMIPが適用される場合、前記MIPが適用される現在ブロックのためのMPMリストが別に構成されることができる。前記MPMリストは、現在ブロックにALWIPが適用されない場合のMPMリストと区分するために、MIP MPMリスト(又はLWIP MPMリスト、candLwipModeList)等の多様な名称で呼ばれ得る。以下、区分のために、MIP MPMリストと表現するが、これは、MPMリストと呼ばれ得る。
前記MIP MPMリストは、n個の候補を含むことができ、例えば、nは3であり得る。前記MIP MPMリストは、前記現在ブロックの左側周辺ブロック及び上側周辺ブロックに基づいて構成されることができる。ここで、前記左側周辺ブロックは、前記現在ブロックの左側境界に隣接した周辺ブロックのうち、最も上側に位置したブロックを示すことができる。また、前記上側周辺ブロックは、前記現在ブロックの上側境界に隣接した周辺ブロックのうち、最も左側に位置したブロックを示すことができる。
例えば、前記左側周辺ブロックにMIPが適用された場合、第1候補イントラ予測モード(又はcandLwipModeA)は、前記左側周辺ブロックのMIPモードと同じように設定されることができる。また、例えば、前記上側周辺ブロックにMIPが適用された場合、第2候補イントラ予測モード(又はcandLwipModeB)は、前記上側周辺ブロックのMIPモードの予測モードと同じように設定されることができる。
一方、前記左側周辺ブロックや前記上側周辺ブロックは、MIPではないイントラ予測に基づいてコーディングされることができる。すなわち、 前記左側周辺ブロック又は前記上側周辺ブロックのコーディングの際に、MIPではない他のイントラ予測タイプが適用できる。この場合、MIPが適用されない周辺ブロック(左側周辺ブロック/上側周辺ブロック)の一般イントラ予測モードの番号をそのままMIPが適用された現在ブロックのための候補イントラモードに使用することは適していない。したがって、この場合、一例として、MIPが適用されない周辺ブロック(左側周辺ブロック/上側周辺ブロック)のMIPモードは、特定値(例えば、0、1又は2等)のMIPモードの予測モードであるとみなすことができる。或いは、別の例として、MIPが適用されない周辺ブロック(左側周辺ブロック/上側周辺ブロック)の一般イントラ予測モードを所定のマッピングテーブルに基づいてMIPモードにマッピングさせて、MIP MPMリストの構成に用いることができる。この場合、現在ブロックの前記ブロックサイズタイプに基づいて、前記マッピングを実行することができる。
また、前記周辺ブロック(例えば、左側周辺ブロック/上側周辺ブロック)が可用ではないか(例えば、現在ピクチャの外部に位置、現在タイル/タイルグループの外部に位置など)、MIPが適用されたとしても、ブロックサイズタイプに応じて、現在ブロックに可用ではないMIPモードが使用されることもできる。この場合には、第1候補及び/又は第2候補のために、予め定義された特定のMIPモードが前記第1候補イントラ予測モード又は第2候補イントラ予測モードとして使用されることができる。また、第3候補のために予め定義された特定のMIP予測モードが第3候補イントラ予測モードとして使用されることもできる。
一方、既存のMIPモードは、既存のイントラ予測モードの導出方法と同様にnon-MPMモードとMPMモードとに区分し、MPMフラグを送り、MPMモード又はnon-MPMモードに基づいて、現在ブロックのMIPモードがコーディングされた。
一例によって、MIP技法が適用されたブロックに対して、MPMモードとnon-MPMモードとに区別せず、直接MIPモードをコーディングする構造が提案できる。このような映像コーディング構造では、複雑なシンタックス構造を単純化させることができる。また、MIPモードに対する実際の発生頻度数が各モード別に比較的均一に分布され、既存のイントラモードで示された発生頻度数とはっきりと異なるため、提案するコーディング構造を通じてMIPモード情報の符号化及び復号化の効率を最大化することができる。
本実施形態に係るMIPのために送受信された映像情報は、次の通りである。後述されるシンタックスは、前述したエンコーディング装置からデコーディング装置へ伝達されるビデオ/映像情報に含まれ得、エンコーディング装置で構成/エンコーディングされて、ビットストリームの形態でデコーディング装置にシグナリングされることができ、デコーディング装置は、シンタックスに開示された条件/順序によって含まれた情報(シンタックス要素)をパーシング/デコーディングすることができる。
表1のように、現在ブロックにMIPモードのためのシンタックスintra_mip_flag及びintra_mip_mode_idxは、コーディングユニットに対するシンタックス情報に含まれてシグナリングされることができる。
一方、現在ブロックにマトリックスに基づくイントラ予測(MIP)が適用できるか否かを指示するフラグ情報であるsps_mip_enabled_flagがさらに受信でき、これによって、intra_mip_flagがシグナリングできる。
フラグ情報sps_mip_enabled_flagは、シーケンスパラメータセット(Sequence parameter set、SPS)のシンタックス情報を介してシグナリングされることができる。
intra_mip_flagが1であると、ルマサンプルのためのイントラ予測タイプがマトリックスに基づくイントラ予測であることを示し、その値が0であると、ルマサンプルのためのイントラ予測タイプがマトリックスに基づくイントラ予測ではないことを示す。
intra_mip_mode_idxは、intra_mip_flagが1であると、シグナリングされると、ルマサンプルに対するマトリックスに基づくイントラ予測モードを指示する。このようなマトリックスに基づくイントラ予測モードは、前述したように、MIPのためのマトリックス及びオフセット又はマトリックスを指示することができる。
また、一例によって、コーディングユニットのシンタックスを介して、マトリックスに基づくイントラ予測のための入力ベクトルがトランスポーズされるか否かを指示するフラグ情報、例えば、intra_mip_transposed_flagがさらにシグナリングできる。intra_mip_transposed_flagが1であると、マトリックスに基づくイントラ予測のための入力ベクトルがトランスポーズされるもので、このようなフラグ情報によりマトリックスに基づくイントラ予測のためのマトリックスの数を減らすことができる。
一方、intra_mip_mode_idxは、下記表のようにトランケーテッド2進化(Truncated Binarization)方式で符号化及び復号化されることができる。
表2のように、intra_mip_flagは、固定長さコード(Fixed Length Code)に2進化されるが、intra_mip_mode_idxは、トランケーテッド2進化方式で2進化され、2進化の最大長さ(cMax)は、コーディングブロックの大きさによって設定されることができる。2進化の最大長さは、コーディングブロックの幅及び高さが4(cbWidth==4 && cbHeight==4)であると34に設定され、そうでない場合、コーディングブロックの幅及び高さが8以下であるか否かによって((cbWidth≦8 && cbHeight≦8)?)18又は10に設定されることができる。
一方、intra_mip_mode_idxは、コンテキストモデルに基づくのではなく、バイパス方式でコーディングされることができる。バイパス方式でコーディングされることによって、コーディング速度及び効率を高めることができる。
別の例によって、intra_mip_mode_idxがトランケーテッド2進化方式で2進化されるとき、2進化の最大長さは次の表の通りである。
表3のように、intra_mip_mode_idxのための2進化の最大長さは、コーディングブロックの幅及び高さが4であると((cbWidth==4 && cbHeight==4))15に設定され、そうでない場合、コーディングブロックの幅又は高さが4であるか((cbWith==4||cbHeight==4))コーディングブロックの幅及び高さが8(cbWith==8 && cbHeight==8)である場合、7に設定され、コーディングブロックの幅又は高さが4であるか((cbWith==4||cbHeight==4))コーディングブロックの幅及び高さが8(cbWith==8 && cbHeight==8)ではない場合、5に設定されることができる。
また別の例によって、intra_mip_mode_idxは、固定長さコード(Fixed Length Code)で符号化されることができる。このとき、符号化の効率を高めるために利用可能なMIPモードの数は、ブロックサイズ別に2の指数個に限定される(例えば、A=2K1-1、B=2K2-1、2K3-1、ここで、K1、K2、K3は正の定数)こともできる。
これを表で示すと次の通りである。
表4で、K1=5、K2=4、K3=3である場合、intra_mip_modeは次のように2進化されることができる。
或いは、一例によって、K1が4に設定され、コーディングブロックの幅及び高さが4であるブロックのintra_mip_modeに対する2進化の最大長さは、15に設定されることができる。また、K2が3に設定され、コーディングブロックの幅又は高さが4であるか、コーディングブロックの幅及び高さが8である場合、2進化の最大長さは、7に設定されることができる。
一方、一例によって、MIP技法が効率的に適用されることができる特定のブロックにのみMIPを使用する方法が提案できる。本実施形態に係る方法を適用すると、MIPのために必要なマトリックスベクトル(Matrix Vector)の数が減少し、マトリックスベクトルを保存するために要求されるメモリが大きく減少し得る(50%)。このような効果が伴われながらも、符号化効率はほぼ一定に維持される(less than 0.1%)。
本実施形態により、MIP技法が適用される特定の条件を含むシンタックスは、次の表の通りである。
表6に示すように、MIPは、大きいブロックにのみ適用されるようにする条件(cbWidth>K1||cbHeight>K2)が付加されており、ブロックの大きさは、予め設定された値(K1とK2)により決定されることができる。MIPを大きいブロックにのみ適用する理由は、MIPの符号化効率が比較的大きいブロックで示されるためである。
下記表は、表6でK1とK2が8と予め定義された例を示している。
表6及び表7のintra_mip_flag及びintra_mip_mode_idxに対するセマンティクスは表1と同一である。
一方、intra_mip_mode_idxが11個の可能なモードを有する場合、次のようにトランケーテッド2進化(cMax=10)方式で符号化されることができる。
或いは、利用可能なMIPモードが8個に限定される場合、intra_mip_mode_idx[x0][y0]は、次のように固定長さコードで符号化されることができる。
表8及び表9は、いずれもintra_mip_mode_idxはバイパス方式でコーディングされることができる。
一方、一例によって、MIP技法がメモリ節約の観点から効率的に適用できるように大きいブロックに使用された加重値マトリックス(A)とオフセットベクトル(b)を小さいブロックにも適用できるMIP技法が提案できる。本実施形態に係る方法を適用すると、MIPのために必要なマトリックスベクトル(Matrix Vector)の数が減少し、マトリックスベクトルを保存するために要求されるメモリが大きく減少し得る(50%)。このような効果が伴われながら、符号化効率はほぼ一定に維持される(less than 0.05%)。
図18は、本文書の一例に係るMIP技法を説明するための図である。
示したように、図18の(a)は、大きいブロックのインデックスiに対するマトリックス及びオフセットベクトルの演算を示しており、図18の(b)は、小さいブロックに適用されるサンプリングされたマトリックスとオフセットベクトルの演算を示している。
図18のように、大きいブロックに使用された加重値マトリックスをサブサンプリングして得たサブサンプリングされた加重値マトリックス(Sub(A))と大きいブロックに使用されたオフセットベクトルをサブサンプリングして得たオフセットベクトル(Sub(b))をそれぞれ小さいブロックに対する加重値マトリックスとオフセットベクトルとみなして、既存のMIP手順を適用することができる。
ここで、サブサンプリングは、水平方向(horizontal)と垂直方向(vertical)のいずれか一方にのみ適用されることもあり、両方の方向にすべて適用されることもある。特に、サブサンプリングファクター(sub-sampling factor)(例えば、2のうちの1、または4のうちの1)と垂直又は水平に対するサンプリング方向は、該当ブロックの幅(Width)と高さ(Height)に基づいて設定されることができる。
また、本実施形態が適用されるMIPのためのイントラ予測モードの数は、現在ブロックのサイズに基づいて異なって設定されることができる。例えば、i)現在ブロック(コーディングブロック又は変換ブロック)の高さ及び幅がそれぞれ4である場合、35個のイントラ予測モード(すなわち、イントラ予測モード0乃至34)が可用であり得、ii)現在ブロックの高さ及び幅が両方とも8以下である場合、19個のイントラ予測モード(すなわち、イントラ予測モード0乃至18)が可用であり得、iii)その他の場合には、11個のイントラ予測モード(すなわち、イントラ予測モード0乃至10)が可用であり得る。
例えば、現在ブロックの高さ及び幅がそれぞれ4である場合をブロックサイズタイプ0といい、現在ブロックの高さ及び幅が両方とも8以下である場合をブロックサイズタイプ1といい、その他の場合をブロックサイズタイプ2というとき、MIPのためのイントラ予測モードの数は、次の表のように整理できる。
大きいブロック(例えば、block size type=2)に使用された加重値マトリックスとオフセットベクトルを小さいブロック(例えば、block size=0又はblock size=1)に適用するためには、次の表のように各ブロックサイズ別に可用なイントラ予測モードの数を同じように適用できる。
或いは、下記表12のように、block size type1と2にのみMIPを適用し、block size type1では、block size type2で定義された加重値マトリックスとオフセットベクトルをサブサンプリングして使用できる。これを介して、メモリを効率的に節約することができる(50%)。
以下の図面は、本明細書の具体的な一例を説明するために作成された。図面に記載された具体的な装置の名称や具体的な信号/メッセージ/フィールドの名称は例示的に提示されたものであるため、本明細書の技術的特徴が以下の図面に使用された具体的な名称に制限されない。
図19は、本文書の一実施形態に係るデコーディング装置によって実行されることができるデコーディング方法を概略的に示すフローチャートである。
図19に開示された方法は、図3で開示されたデコーディング装置300によって実行されることができる。具体的に、図19のステップS1900~S1940は、図3に開示されたエントロピーデコーディング部310及び/又は予測部330(具体的に、イントラ予測部331)によって実行されることができ、図19のステップS1950は、図3に開示された加算部340によって実行されることができる。また、図19に開示された方法は、本文書で前述した実施形態を含むことができる。したがって、図19では、前述した実施形態と重複する内容についての具体的な説明を省略するか簡単にすることとする。
図19を参照すると、デコーディング装置は、ビットストリームから現在ブロックに対してマトリックスに基づくイントラ予測(MIP)が適用可能か否かを指示する第1フラグ情報に基づいて、現在ブロックに対してMIPが使用されるか否かを示す第2フラグ情報を受信することができる(S1900)。
第1フラグ情報は、sps_mip_enabled_flagとしてシーケンスパラメータセット(Sequence parameter set、SPS)のシンタックス情報を介してシグナシグナリングされることができる。
このような第1フラグ情報が1であると、現在ブロックに対してマトリックスに基づくイントラ予測(MIP)が使用されるか否かを示す第2フラグ情報がビットストリームから獲得できる。
このようなフラグ第2フラグ情報は、intra_mip_flagのようなシンタックスでコーディングユニットのシンタックス情報に含まれてシグナリングされることができる。
デコーディング装置は、受信された第2フラグ情報に基づいて、マトリックスに基づくイントラ予測(MIP)モード情報を受信することができる(S1910)。
MIPモード情報は、intra_mip_mode_idxで表現されることができ、intra_mip_flagが1であるとシグナリングされることができる。intra_mip_mode_idxは、現在ブロックに適用されるMIPモードを指示するインデックス情報であり得、このようなインデックス情報は、予測サンプルの生成時、マトリックスを導出するのに使用されることができる。
また、一例によって、コーディングユニットのシンタックスを介して、マトリックスに基づくイントラ予測のための入力ベクトルがトランスポーズされるか否かを指示するフラグ情報、例えば、intra_mip_transposed_flagがさらにシグナリングされることができる。
デコーディング装置は、MIP情報に基づいて現在ブロックに対するイントラ予測サンプルを生成することができる。デコーディング装置は、イントラ予測サンプルを生成するために、現在ブロックの周辺参照サンプルの少なくとも一つの周辺参照サンプルを導出することができ、周辺参照サンプルに基づいて予測サンプルを生成することができる。
MIPが適用されると、デコーディング装置は、現在ブロックに隣接した参照サンプルをダウンサンプリングし、縮小された境界サンプルを導出することができる(S1920)。
縮小された境界サンプルは、参照サンプルの平均化によりダウンサンプリングされることによって導出されることができる。
縮小された境界サンプルは、現在ブロックの幅及び高さが4であると、4個が導出され、残りの別の場合には、8個のサンプルが導出できる。
ダウンサンプリングのための平均化手順は、現在ブロックの各境界、左側境界又は上側境界に適用されることができ、これは、現在ブロックの境界に隣接した周辺参照サンプルに適用されることができる。
一例によって、現在ブロックが4×4ブロックであれば、各境界の大きさは平均化手順を介して2個のサンプルに縮小され得、現在ブロックが4×4ブロックでなければ、各境界の大きさは平均化手順を介して4個のサンプルに縮小され得る。
その後、デコーディング装置は、現在ブロックの大きさとインデックス情報に基づいて導出されたMIPマトリックスと縮小された境界サンプルとの掛け算の演算に基づいて縮小された予測サンプルを導出することができる(S1930)。
MIPマトリックスは、現在ブロックの大きさと受信されたインデックス情報に基づいて導出されることができる。
MIPマトリックスは、現在ブロックの大きさに応じて分類される3個のマトリックスセットのいずれかから選択されることができ、3個のマトリックスセットのそれぞれは、複数のMIPマトリックスを含むことができる。
すなわち、MIPのための3個のマトリックスセットが設定でき、各マトリックスセットは、複数のマトリックスとオフセットベクトルで構成されることができる。このようなマトリックスセットは、現在ブロックの大きさによって区分されて適用されることができる。
例えば、4×4のブロックには、16個の行と4個の列とで構成された18個又は16個のマトリックス、及び18個又は16個のオフセットベクトルを含むマトリックスセットが適用できる。インデックス情報は、一つのマトリックスセットに含まれている複数のマトリックスのいずれかを指示する情報であり得る。
4×8、8×4及び8×8のブロック、又は、4×H又はW×4のブロックには、16個の行と8個の列とで構成された10個又は8個のマトリックス、及び10個又は8個のオフセットベクトルを含むマトリックスセットが適用できる。
或いは、前述したブロック以外のブロック又は高さ及び幅が8以上のブロックには、64個の行と8個の列とで構成された6個のマトリックス、及び6個のオフセットベクトルを含むマトリックスセットが適用できる。
MIPマトリックスと縮小された境界サンプルとの掛け算の演算の後、オフセットを加える演算に基づいて縮小された予測サンプル、すなわち、MIPマトリックスが適用された予測サンプルが導出される。
デコーディング装置は、縮小された予測サンプルをアップサンプリングして、現在ブロックに対するイントラ予測サンプルを生成することができる(S1940)。
イントラ予測サンプルは、縮小された予測サンプルの線形補間によってアップサンプリングされることができる。
補間手順は、線形補間又は二重線形補間手順と指称され得、1)垂直補間、及び2)水平補間の2つのステップを含むことができる。
W>=Hであると、垂直線形補間が先に適用でき、続いて水平線形補間が適用できる。W<Hであると、水平線形補間が先に適用でき、続いて垂直線形補間が適用できる。4×4ブロックの場合、補間手順が省略され得る。
デコーディング装置は、予測サンプルに基づいて、現在ブロックに対する復元サンプルを生成することができる(S1950)。
一実施形態として、デコーディング装置は、予測モードに応じて予測サンプルをすぐに復元サンプルとして用いることもあり、或いは前記予測サンプルにレジデュアルサンプルを加えて復元サンプルを生成することもある。
デコーディング装置は、現在ブロックに対するレジデュアルサンプルが存在する場合、現在ブロックに対するレジデュアルに関する情報を受信することができる。レジデュアルに関する情報は、レジデュアルサンプルに関する変換係数を含むことができる。デコーディング装置は、レジデュアル情報に基づいて、現在ブロックに対するレジデュアルサンプル(又はレジデュアルサンプルアレイ)を導出することができる。デコーディング装置は、予測サンプルとレジデュアルサンプルに基づいて復元サンプルを生成することができ、前記復元サンプルに基づいて復元ブロック又は復元ピクチャを導出することができる。以降、デコーディング装置は、必要に応じて主観的/客観的画質を向上させるために、デブロッキングフィルタリング及び/又はSAO手順のようなインループフィルタリング手順を前記復元ピクチャに適用することができるのは前述した通りである。
図20は、本文書の一実施形態に係るエンコーディング装置によって実行されることができるエンコーディング方法を概略的に示すフローチャートである。
図20に開示された方法は、図2に開示されたエンコーディング装置200によって実行されることができる。具体的に、図20のステップS2000~S2030は、図2に開示された予測部220(具体的にイントラ予測部222)によって実行されることができ、図20のステップS2040は、図2に開示された減算部231によって実行されることができ、図20のステップS2050は、図2に開示されたエントロピーエンコーディング部240によって実行されることができる。また、図20に開示された方法は、本文書で前述した実施形態を含むことができる。したがって、図20では、前述した実施形態と重複する内容についての具体的な説明を省略するか簡単にすることとする。
図20を参照すると、エンコーディング装置は、現在ブロックに対してマトリックスに基づくイントラ予測(MIP)が適用されるか否かを導出することができる(S2000)。
エンコーディング装置は、現在ブロックに対する最適の予測モードを見つけるために、多様な予測技法を適用することができ、RDO(rate-distortion optimization)に基づいて、最適のイントラ予測モードを決定することができる。
現在ブロックにMIPが適用されるものと決定されると、エンコーディング装置は現在ブロックに隣接した参照サンプルをダウンサンプリングして、縮小された境界サンプルを導出することができる(S2010)。
縮小された境界サンプルは、参照サンプルの平均化によってダウンサンプリングされることによって導出されることができる。
縮小された境界サンプルは、現在ブロックの幅及び高さが4であると、4個が導出され、残りの別の場合には、8個のサンプルが導出できる。
ダウンサンプリングのための平均化手順は、現在ブロックの各境界、左側境界又は上側境界に適用されることができ、これは、現在ブロックの境界に隣接した周辺参照サンプルに適用されることができる。
一例によって、現在ブロックが4×4ブロックであると、各境界の大きさは、平均化手順を介して2個のサンプルに縮小されることができ、現在ブロックが4×4ブロックでないと、各境界の大きさは、平均化手順を介して4個のサンプルに縮小されることができる。
縮小された境界サンプルが導出されると、エンコーディング装置は、現在ブロックの大きさに基づいて選択されたMIPマトリックスと縮小された境界サンプルとの掛け算の演算に基づいて、縮小された予測サンプルを導出することができる(S2020)。
MIPマトリックスは、現在ブロックの大きさに応じて分類される3個のマトリックスセットのいずれかから選択されることができ、3個のマトリックスセットのそれぞれは、複数のMIPマトリックスを含むことができる。
すなわち、MIPのための3個のマトリックスセットが設定でき、各マトリックスセットは、複数のマトリックスとオフセットベクトルとで構成されることができる。このようなマトリックスセットは、現在ブロックの大きさに応じて区分されて適用されることができる。
例えば、4×4のブロックには、16個の行と4個の列とで構成された18個又は16個のマトリックス、及び18個又は16個のオフセットベクトルを含むマトリックスセットが適用できる。インデックス情報は、一つのマトリックスセットに含まれている複数のマトリックスのいずれかを指示する情報であり得る。
4×8、8×4及び8×8のブロック、又は、4×H又はW×4のブロックには、16個の行と8個の列とで構成された10個又は8個のマトリックス、及び10個又は8個のオフセットベクトルを含むマトリックスセットが適用できる。
或いは、前述したブロック以外のブロック又は高さ及び幅が8以上であるブロックには、64個の行と8個の列とで構成された6個のマトリックス、及び6個のオフセットベクトルを含むマトリックスセットが適用できる。
MIPマトリックスと縮小された境界サンプルとの掛け算演算の後、オフセットを加える演算に基づいて縮小された予測サンプル、すなわち、MIPマトリックスが適用された予測サンプルが導出できる。
その後、エンコーディング装置は、縮小された予測サンプルをアップサンプリングし、現在ブロックに対するイントラ予測サンプルを生成することができる(S2030)。
イントラ予測サンプルは、縮小された予測サンプルの線形補間によりアップサンプリングされることができる。
補間手順は、線形補間又は二重線形補間手順と指称され得、1)垂直補間、及び2)水平補間の二つのステップを含むことができる。
W>=Hであると、垂直線形補間が先に適用でき、続いて水平線形補間が適用できる。W<Hであると、水平線形補間が先に適用でき、続いて垂直線形補間が適用できる。4×4ブロックの場合、補間手順が省略され得る。
また、エンコーディング装置は、現在ブロックの予測サンプルと現在ブロックの原本サンプルに基づいて、現在ブロックに対するレジデュアルサンプルを導出することができる(S2040)。
そして、エンコーディング装置は、レジデュアルサンプルに基づいて現在ブロックに対するレジデュアル情報を生成し、レジデュアル情報及び現在ブロックにマトリックスに基づくイントラ予測(MIP)が適用可能か否かを指示する第1フラグ情報、現在ブロックに対してMIPが使用されるか否かを示す第2フラグ情報、及びMIPモード情報を含む映像情報をエンコーディングすることができる(S2050)。
ここで、レジデュアル情報は、レジデュアルサンプルに変換及び量子化を行い、導出された量子化された変換係数の値情報、位置情報、変換技法、変換カーネル、量子化パラメータ等の情報を含むことができる。
現在ブロックにマトリックスに基づくイントラ予測(MIP)が適用可能か否かを指示する第1フラグ情報は、sps_mip_enabled_flagとしてシーケンスパラメータセット(Sequence parameter set、SPS)のシンタックス情報を介してエンコーディングされることができる。
MIPが適用されるか否かを指示する第2フラグ情報は、intra_mip_flagのようなシンタックスでコーディングユニットのシンタックス情報に含まれてエンコーディングされることができる。
また、MIPモード情報は、intra_mip_mode_idxで表現されることができ、intra_mip_flagが1であるとき、エンコーディングされることができる。intra_mip_mode_idxは、現在ブロックに適用されるMIPモードを指示するインデックス情報であり得、このようなインデックス情報は、予測サンプルの生成時にマトリックスを導出するのに使用されることができる。インデックス情報は、一つのマトリックスセットに含まれている前記複数のMIPマトリックスのいずれかを指示することができる。
また、一例によって、コーディングユニットのシンタックスを介してマトリックスに基づくイントラ予測のための入力ベクトルがトランスポーズされるか否かを指示するフラグ情報、例えば、intra_mip_transposed_flagがさらにシグナリングできる。
すなわち、エンコーディング装置は、前述した現在ブロックのMIPモード情報及び/又はレジデュアル情報を含む映像情報をエンコーディングし、ビットストリームに出力することができる。
ビットストリームは、ネットワーク又は(デジタル)保存媒体を介してデコーディング装置に送信されることができる。ここで、ネットワークは、放送網及び/又は通信網等を含むことができ、デジタル保存媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSD等の多様な保存媒体を含むことができる。
前述した現在ブロックに対する予測サンプルを生成する過程は、図2に開示されたエンコーディング装置200のイントラ予測部222によって実行されることができ、レジデュアルサンプルを導出する過程は、図2に開示されたエンコーディング装置200の減算部231によって実行されることができ、レジデュアル情報を生成してエンコーディングする過程は、図2に開示されたエンコーディング装置200のレジデュアル処理部230及びエントロピーエンコーディング部240によって実行されることができる。
前述した実施形態において、方法は、一連のステップ又はブロックとしてフローチャートに基づいて説明されているが、本文書の実施形態はステップの順序に限定されるわけではなく、あるステップは、前述したところと異なるステップと異なる順序で、又は同時に発生し得る。また、当業者であれば、フローチャートに示されているステップが排他的ではなく、異なるステップが含まれるか、フローチャートの一つ又はそれ以上のステップが本文書の範囲に影響を与えずに削除され得ることを理解することができる。
前述した本文書にかかる方法は、ソフトウェアの形態で具現されることができ、本文書にかかるエンコーディング装置及び/又はデコーディング装置は、例えば、TV、コンピュータ、スマートフォン、セットトップボックス、ディスプレイ装置等の映像処理を実行する装置に含まれ得る。
本文書で、実施形態がソフトウェアで具現される際、前述した方法は、前述した機能を行うモジュール(過程、機能等)で具現されることができる。モジュールはメモリに保存され、プロセッサにより実行されることができる。メモリは、プロセッサの内部又は外部にあってもよく、よく知られている様々な手段でプロセッサと連結されてもよい。プロセッサは、ASIC(application-specific integrated circuit)、他のチップセット、論理回路及び/又はデータ処理装置を含むことができる。メモリは、ROM(read-only memory)、RAM(random access memory)、フラッシュメモリ、メモリカード、保存媒体及び/又は他の保存装置を含むことができる。即ち、本文書で説明した実施形態は、プロセッサ、マイクロプロセッサ、コントローラ又はチップ上で具現されて実行されることができる。例えば、各図面で示している機能ユニットは、コンピュータ、プロセッサ、マイクロプロセッサ、コントローラ又はチップ上で具現されて実行されることができる。この場合、具現のための情報(ex.information on instructions)又はアルゴリズムが、デジタル保存媒体に保存されることができる。
また、本文書が適用されるデコーディング装置及びエンコーディング装置は、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ対話装置、ビデオ通信のようなリアルタイム通信装置、モバイルストリーミング装置、保存媒体、カムコーダ、オーダーメイド型ビデオ(VoD)サービス提供装置、OTTビデオ(Over the top video)装置、インターネットストリーミングサービス提供装置、3次元(3D)ビデオ装置、VR(virtual reality)装置、AR(argumente reality)装置、画像電話ビデオ装置、運送手段端末(ex.車両(自律走行車両含む)端末、飛行機端末、船舶端末など)及び医療用ビデオ装置等に含まれ得、ビデオ信号又はデータ信号を処理するために使用されることができる。例えば、OTTビデオ(Over the top video)装置としては、ゲームコンソール、ブルーレイプレーヤー、インターネットアクセスTV、ホームシアターシステム、スマートフォン、タブレットPC、DVR(Digital Video Recoder)等を含むことができる。
また、本文書が適用される処理方法は、コンピュータで実行されるプログラムの形態で生産されることができ、コンピュータが読み取ることができる記録媒体に保存されることができる。本文書にかかるデータ構造を有するマルチメディアデータもまた、コンピュータが読み取ることができる記録媒体に保存されることができる。前記コンピュータが読み取ることができる記録媒体は、コンピュータで読み取ることができるデータが保存される全ての種類の保存装置及び分散保存装置を含む。前記コンピュータが読み取ることができる記録媒体は、例えば、ブルーレイディスク(BD)、汎用直列バス(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁気テープ、フロッピディスク、及び光学的データ保存装置を含むことができる。また、前記コンピュータが読み取ることができる記録媒体は、搬送波(例えば、インターネットを介した送信)の形態で具現されたメディアを含む。また、エンコーディング方法で生成されたビットストリームが、コンピュータが読み取ることができる記録媒体に保存されるか、有無線通信ネットワークを介して送信されることができる。
また、本文書の実施形態は、プログラムコードによるコンピュータプログラム製品で具現されることができ、前記プログラムコードは、本文書の実施形態によってコンピュータで実行されることができる。前記プログラムコードは、コンピュータによって読み取り可能なキャリア上に保存されることができる。
本文書に記載された請求項は、多様な方式で組み合わせられることができる。例えば、本文書の方法請求項の技術的特徴が組み合わせられて装置として具現されることができ、本文書の装置請求項の技術的特徴が組み合わせられて方法として具現されることができる。また、本文書の方法請求項の技術的特徴と装置請求項の技術的特徴とが組み合わせられて装置として具現されることができ、本明細書の方法請求項の技術的特徴と装置請求項の技術的特徴とが組み合わせられて方法として具現されることができる。(Claims in the present description can be combined in a various way. For instance,technical features in method claims of the present description can be combined to be implemented or performed in an apparatus,and technical features in apparatus claims can be combined to be implemented or performed in a method.Further,technical features in method claim(s) and apparatus claim(s) can be combined to be implemented or performed in an apparatus.Further,technical features in method claim(s) and apparatus claim(s) can be combined to be implemented or performed in a method.)

Claims (3)

  1. デコーディング装置によって実行される映像デコーディング方法において、
    レジデュアル情報を受信するステップと、
    IP(matrix-based intra prediction)が適用可能かどうかに関連する第1フラグ情報に基づいて、現在ブロックに対して前記MIPが使用されるかどうかに関連する第2フラグ情報を受信するステップと、
    前記第2フラグ情報に基づいて、MIPモード情報を受信するステップと、
    前記MIPモード情報に基づいて、前記現在ブロックに対するイントラ予測サンプルを生成するステップと、
    前記レジデュアル情報に基づいてレジデュアルサンプルを導出するステップと、
    前記イントラ予測サンプルと前記レジデュアルサンプルに基づいて、前記現在ブロックに対する復元サンプルを生成するステップと、を含み、
    前記MIPモード情報は、前記現在ブロックに対するMIPマトリックスに関連するインデックス情報であり、
    前記MIPマトリックスは、前記現在ブロックの大きさと前記インデックス情報に基づいて導出され、
    前記イントラ予測サンプルは、前記MIPマトリックスに基づいて生成され、
    前記MIPモード情報に対するシンタックス要素ビンストリングは、トランケーテッド2進化方式によって2進化され、
    前記シンタックス要素ビンストリングの最大長さは、前記現在ブロックの前記大きさに基づいて異なる3つの値に設定され、
    前記現在ブロックの幅及び高さが4であることに基づき、前記最大長さは、最大値を有する、方法。
  2. エンコーディング装置によって実行される映像エンコーディング方法において、
    現在ブロックにMIP(matrix-based intra prediction)が適用されるかどうかを導出するステップと、
    前記現在ブロックに前記MIPが適用されることを決定するステップに基づいて前記現在ブロックに対するイントラ予測サンプルを導出するステップと、
    前記イントラ予測サンプルに基づいて前記現在ブロックに対するレジデュアルサンプルを導出するステップと、
    前記レジデュアルサンプルに基づいてレジデュアル情報を生成するステップと、
    前記レジデュアル情報と前記MIPに関する情報をエンコーディングすることによってビットストリームを生成するステップと、を含み、
    前記MIPに関する前記情報は、前記MIPが適用可能かどうかに関連する第1フラグ情報と、前記MIPが前記現在ブロックに適用されているかどうかに関連する第2フラグ情報と、前記現在ブロックに対するMIPマトリックスに関連するインデックス情報であるMIPモード情報と、を含み、
    前記MIPマトリックスは、前記現在ブロックの大きさと前記インデックス情報に基づいて導出され、
    前記イントラ予測サンプルは、前記MIPマトリックスに基づいて導出され、
    前記MIPモード情報に対するシンタックス要素ビンストリングは、トランケーテッド2進化方式によって2進化され、
    前記シンタックス要素ビンストリングの最大長さは、前記現在ブロックの前記大きさに基づいて異なる3つの値に設定され、
    前記現在ブロックの幅及び高さが4であることに基づき、前記最大長さは、最大値を有する、方法。
  3. 映像に対するデータの送信方法であって、
    前記映像に対するビットストリームを取得するステップであって、前記ビットストリームは、
    現在ブロックにMIP(matrix-based intra prediction)が適用されるかどうかを導出するステップと、
    前記現在ブロックに前記MIPが適用されることを決定するステップに基づいて前記現在ブロックに対するイントラ予測サンプルを導出するステップと、
    前記イントラ予測サンプルに基づいて前記現在ブロックに対するレジデュアルサンプルを導出するステップと、
    前記レジデュアルサンプルに基づいてレジデュアル情報を生成するステップと、
    前記レジデュアル情報と前記MIPに関する情報をエンコーディングするステップと、によってビットストリームを生成するステップと、に基づいて生成される、ステップと、
    前記ビットストリームを含む前記データを送信するステップと、を含み、
    前記MIPに関する前記情報は、前記MIPが適用可能かどうかに関連する第1フラグ情報と、前記MIPが前記現在ブロックに適用されているかどうかに関連する第2フラグ情報と、前記現在ブロックに対するMIPマトリックスに関連するインデックス情報であるMIPモード情報と、を含み、
    前記MIPマトリックスは、前記現在ブロックの大きさと前記インデックス情報に基づいて導出され、
    前記イントラ予測サンプルは、前記MIPマトリックスに基づいて導出され、
    前記MIPモード情報に対するシンタックス要素ビンストリングは、トランケーテッド2進化方式によって2進化され、
    前記シンタックス要素ビンストリングの最大長さは、前記現在ブロックの前記大きさに基づいて異なる3つの値に設定され、
    前記現在ブロックの幅及び高さが4であることに基づき、前記最大長さは、最大値を有する、方法。
JP2023146224A 2019-06-03 2023-09-08 マトリックスに基づくイントラ予測装置及び方法 Active JP7509978B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2024099927A JP2024111220A (ja) 2019-06-03 2024-06-20 マトリックスに基づくイントラ予測装置及び方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962856715P 2019-06-03 2019-06-03
US62/856,715 2019-06-03
PCT/KR2020/007221 WO2020246806A1 (ko) 2019-06-03 2020-06-03 매트릭스 기반 인트라 예측 장치 및 방법
JP2021571622A JP7379543B2 (ja) 2019-06-03 2020-06-03 マトリックスに基づくイントラ予測装置及び方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021571622A Division JP7379543B2 (ja) 2019-06-03 2020-06-03 マトリックスに基づくイントラ予測装置及び方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024099927A Division JP2024111220A (ja) 2019-06-03 2024-06-20 マトリックスに基づくイントラ予測装置及び方法

Publications (2)

Publication Number Publication Date
JP2023158175A JP2023158175A (ja) 2023-10-26
JP7509978B2 true JP7509978B2 (ja) 2024-07-02

Family

ID=73653254

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2021571622A Active JP7379543B2 (ja) 2019-06-03 2020-06-03 マトリックスに基づくイントラ予測装置及び方法
JP2023146224A Active JP7509978B2 (ja) 2019-06-03 2023-09-08 マトリックスに基づくイントラ予測装置及び方法
JP2024099927A Pending JP2024111220A (ja) 2019-06-03 2024-06-20 マトリックスに基づくイントラ予測装置及び方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021571622A Active JP7379543B2 (ja) 2019-06-03 2020-06-03 マトリックスに基づくイントラ予測装置及び方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024099927A Pending JP2024111220A (ja) 2019-06-03 2024-06-20 マトリックスに基づくイントラ予測装置及び方法

Country Status (5)

Country Link
US (3) US11589057B2 (ja)
EP (1) EP3958571A4 (ja)
JP (3) JP7379543B2 (ja)
KR (1) KR20210138115A (ja)
WO (1) WO2020246806A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020207502A1 (en) 2019-04-12 2020-10-15 Beijing Bytedance Network Technology Co., Ltd. Most probable mode list construction for matrix-based intra prediction
SG11202112517QA (en) 2019-05-22 2021-12-30 Beijing Bytedance Network Technology Co Ltd Matrix-based intra prediction using upsampling
CN113924775B (zh) 2019-05-31 2023-11-14 北京字节跳动网络技术有限公司 基于矩阵的帧内预测中的限制的上采样
CN118509604A (zh) * 2019-06-03 2024-08-16 Lg电子株式会社 图像解码方法、图像编码方法和数据发送方法
WO2020244610A1 (en) * 2019-06-05 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Context determination for matrix-based intra prediction
CN117241014A (zh) * 2019-06-05 2023-12-15 华为技术有限公司 Mpm列表构建方法、色度块的帧内预测模式获取方法及装置
JP7401566B2 (ja) * 2019-06-24 2023-12-19 ヒョンダイ モーター カンパニー 動画データのイントラ予測コーディングのための方法及び記録媒体
EP4228256A1 (en) * 2019-06-25 2023-08-16 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Image encoding method, image decoding method, decoder and storage medium for picture coding in mip mode
KR20220082847A (ko) 2019-10-28 2022-06-17 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 색상 성분에 기초한 신택스 시그널링 및 파싱

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100667808B1 (ko) 2005-08-20 2007-01-11 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
KR20110044145A (ko) 2009-10-22 2011-04-28 한국전자통신연구원 영상 부호화 장치
GB2495990A (en) 2011-10-28 2013-05-01 Canon Kk Motion compensated image coding with omission of coding mode cost calculation for a motion predictor in a set.
US10277915B2 (en) * 2011-11-07 2019-04-30 Qualcomm Incorporated Signaling quantization matrices for video coding
US20130188691A1 (en) * 2012-01-20 2013-07-25 Sony Corporation Quantization matrix design for hevc standard
WO2016123388A1 (en) 2015-01-29 2016-08-04 Vid Scale, Inc. Palette coding modes and palette flipping
WO2016137166A1 (ko) * 2015-02-23 2016-09-01 엘지전자(주) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
US20180255304A1 (en) 2015-03-29 2018-09-06 Lg Electronics Inc. Method and device for encoding/decoding video signal
CN114339227B (zh) 2016-05-04 2024-04-12 夏普株式会社 用于对变换数据进行编码的系统和方法
WO2018066863A1 (ko) 2016-10-04 2018-04-12 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US20180332312A1 (en) * 2017-05-09 2018-11-15 Futurewei Technologies, Inc. Devices And Methods For Video Processing
US11831910B2 (en) 2017-08-21 2023-11-28 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding video, and recording medium storing bit stream
KR20200028856A (ko) * 2018-09-07 2020-03-17 김기백 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치
WO2020207502A1 (en) * 2019-04-12 2020-10-15 Beijing Bytedance Network Technology Co., Ltd. Most probable mode list construction for matrix-based intra prediction
EP3922034B1 (en) * 2019-04-17 2024-02-07 Huawei Technologies Co., Ltd. Harmonizing matrix-based intra prediction and secondary transform core selection
US11381808B2 (en) * 2019-04-25 2022-07-05 Hfi Innovation Inc. Method and apparatus of matrix based intra prediction in image and video processing
US11277637B2 (en) * 2019-05-09 2022-03-15 Qualcomm Incorporated Reference sampling for matrix intra prediction mode
CN113924775B (zh) * 2019-05-31 2023-11-14 北京字节跳动网络技术有限公司 基于矩阵的帧内预测中的限制的上采样

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Benjamin Bross, Jianle Chen, and Shan Liu,Versatile Video Coding (Draft 5),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-N1001 (version 7),14th Meeting: Geneva, CH,2019年05月29日,pp.32-34,53-56,126-130,136-141
Jonathan Pfaff, et al.,CE3: Affine linear weighted intra prediction (CE3-4.1, CE3-4.2),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-N0217,14th Meeting: Geneva, CH,2019年03月,pp.1-17
Mehdi Salehifar, and Seung-Hwan Kim,CE3 Related: No MPM Derivation for Matrix Based Intra Prediction (MIP),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-O0169-V2,15th Meeting: Gothenburg, SE,2019年07月,pp.1-4

Also Published As

Publication number Publication date
KR20210138115A (ko) 2021-11-18
JP2023158175A (ja) 2023-10-26
WO2020246806A1 (ko) 2020-12-10
JP2024111220A (ja) 2024-08-16
CN114009043A (zh) 2022-02-01
EP3958571A1 (en) 2022-02-23
EP3958571A4 (en) 2022-07-27
US20240064310A1 (en) 2024-02-22
JP2022535049A (ja) 2022-08-04
US20230164326A1 (en) 2023-05-25
US11843786B2 (en) 2023-12-12
JP7379543B2 (ja) 2023-11-14
US20220078450A1 (en) 2022-03-10
US11589057B2 (en) 2023-02-21
US12120317B2 (en) 2024-10-15

Similar Documents

Publication Publication Date Title
JP7509978B2 (ja) マトリックスに基づくイントラ予測装置及び方法
JP7550942B2 (ja) Mrl基盤のイントラ予測を実行する映像コーディング方法及び装置
JP7509977B2 (ja) マトリックスに基づくイントラ予測装置及び方法
KR20200108085A (ko) 인트라 예측 기반 영상/비디오 코딩 방법 및 그 장치
JP7528338B2 (ja) 変換インデックスを利用する映像コーディング
US11729393B2 (en) Matrix-based intra prediction device and method
KR20210118113A (ko) Mpm 리스트 기반 인트라 예측 방법 및 장치
KR102707059B1 (ko) Mpm 리스트를 사용하는 인트라 예측 기반 영상 코딩 방법 및 장치
US20230362406A1 (en) Intra prediction device and method involving matrix-based intra prediction
KR20210092829A (ko) Mpm 리스트를 사용하는 인트라 예측 기반 영상 코딩 방법 및 장치
US20220182639A1 (en) Matrix intra prediction-based image coding apparatus and method
KR20220038127A (ko) 매트릭스 기반 인트라 예측 장치 및 방법
CN114556949B (en) Intra-frame prediction device and method
CN114009043B (zh) 基于矩阵的帧内预测装置和方法
JP7573024B2 (ja) クロス-コンポーネント適応的ループフィルタリングベースの映像コーディング装置及び方法
JP2024150650A (ja) 変換インデックスを利用する映像コーディング

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230908

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230908

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: 20240521

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240620

R150 Certificate of patent or registration of utility model

Ref document number: 7509978

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150