本発明は、画像符号化/復号化方法、装置及びビットストリームを保存した記録媒体に関する。具体的には、本発明は、画面内予測を用いた画像符号化/復号化方法、装置、及び本発明の画像符号化方法又は装置によって生成されたビットストリームを保存した記録媒体に関する。
最近、高解像度、高品質の画像、例えばHD(High Definition)画像及びUHD(Ultra High Definition)画像への需要が多様な応用分野で増加している。画像データが高解像度、高品質になるほど、従来の画像データに比べて相対的にデータ量が増加するので、従来の有線・無線ブロードバンド回線などの媒体を用いて画像データを伝送したり従来の記憶媒体を用いて保存したりする場合には、伝送費用と保存費用が増加することになる。このような画像データの高解像度、高品質化に伴って発生する問題を解決するためには、より高い解像度及び画質を有する画像に対する高効率画像符号化(encoding)/復号化(decoding)技術が求められる。
画像圧縮技術として、現在ピクチャの以前又は以後のピクチャから、現在ピクチャに含まれている画素値を予測する画面間(inter)予測技術、現在ピクチャ内の画素情報を用いて、現在ピクチャに含まれている画素値を予測する画面内(intra)予測技術、残余信号のエネルギーを圧縮するための変換及び量子化技術、出現頻度の高い値に短い符号を割り当て、出現頻度の低い値に長い符号を割り当てるエントロピー符号化技術などの様々な技術が存在し、このような画像圧縮技術を利用して画像データを効果的に圧縮して伝送又は保存することができる。
本発明は、圧縮効率が向上した画像符号化/復号化方法及び装置を提供することを目的とする。
また、本発明は、圧縮効率が向上した画面内予測を用いた画像符号化/復号化方法及び装置を提供することを目的とする。
また、本発明は、本発明の画像符号化/復号化方法又は装置によって生成されたビットストリームを保存した記録媒体を提供することを目的とする。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画像復号化方法は、前記第1色成分ブロックを用いて予測パラメータを誘導するステップと、前記誘導された予測パラメータを用いて前記第2色成分ブロックを予測するステップとを含むことができる。
本発明に係る画像復号化方法において、前記第1色成分ブロックは輝度ブロックであり、前記第2色成分ブロックは色差ブロックであり得る。
本発明に係る画像復号化方法において、前記第2色成分ブロックのサイズ又は形状に基づいて、前記第1色成分ブロックを用いた第2色成分ブロックの予測を行うか否かを決定するステップをさらに含むことができる。
本発明に係る画像復号化方法において、前記第1色成分ブロックのサイズ及び前記第2色成分ブロックのサイズに基づいて、前記第1色成分ブロックを再構成するステップをさらに含むことができる。
本発明に係る画像復号化方法において、前記第1色成分ブロックのサイズが前記第2色成分ブロックのサイズよりも大きい場合、前記第1色成分ブロックを再構成するステップは、前記第1色成分ブロックをダウンサンプリングするステップを含むことができる。
本発明に係る画像復号化方法において、前記第1色成分ブロックのサイズが前記第2色成分ブロックのサイズよりも小さい場合、前記第1色成分ブロックを再構成するステップは、前記第1色成分ブロックをアップサンプリングするステップを含むことができる。
本発明に係る画像復号化方法において、前記第1色成分ブロックを再構成するステップは、前記第1色成分ブロックの境界又は前記第2色成分ブロックの境界が所定の画像領域の境界に該当するかに基づいて行われ得る。
本発明に係る画像復号化方法において、前記所定の画像領域は、ピクチャ、スライス、タイル、CTU及びCUのうちの少なくとも一つであり得る。
本発明に係る画像復号化方法において、前記第1色成分ブロックの境界又は前記第2色成分ブロックの境界が所定の画像領域の境界に該当する場合、前記第1色成分ブロックの再構成に用いられる上側参照サンプルラインの数と左側参照サンプルラインの数とは互いに異なり得る。
本発明に係る画像復号化方法において、前記第1色成分ブロックの再構成に用いられる参照サンプルは、前記第1色成分ブロックの画面内予測モードに基づいて決定できる。
本発明に係る画像復号化方法において、前記第1色成分ブロックの再構成に用いられる参照サンプルは、前記第1色成分ブロックの周辺ブロックの量子化パラメータに基づいて決定できる。
本発明に係る画像復号化方法において、前記第1色成分ブロックが正方形であり、前記第2色成分ブロックは長方形である場合、前記第1色成分ブロックの構成に用いられる参照サンプルは、前記正方形である第1色成分ブロックの周辺の参照サンプルであり得る。
本発明に係る画像復号化方法において、前記予測パラメータを誘導するステップは、前記第1色成分ブロックの参照サンプルと前記第2色成分ブロックの参照サンプルのうちの少なくとも一つを用いて行われ得る。
本発明に係る画像復号化方法において、前記予測パラメータを誘導することに用いられる前記参照サンプルは、前記第1色成分ブロックの画面内予測モードに基づいて決定できる。
本発明に係る画像復号化方法において、前記予測パラメータを誘導することに用いられる前記参照サンプルは、前記第1色成分ブロック又は前記第2色成分ブロックのサイズ又は形状に基づいて決定できる。
本発明に係る画像復号化方法において、前記予測パラメータを誘導するステップは、前記第1色成分ブロックの参照サンプルと前記第2色成分ブロックの参照サンプルとの関連性、変化量、平均値及び分布のうちの少なくとも一つに基づいて行われ得る。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画面内予測部を含む画像復号化装置において、前記画面内予測部は、前記第1色成分ブロックを用いて予測パラメータを誘導し、前記誘導された予測パラメータを用いて前記第2色成分ブロックを予測することができる。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画像符号化方法は、前記第1色成分ブロックを用いて予測パラメータを誘導するステップと、前記誘導された予測パラメータを用いて前記第2色成分ブロックを予測するステップとを含むことができる。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画面内予測部を含む画像符号化装置において、前記画面内予測部は、前記第1色成分ブロックを用いて予測パラメータを誘導し、前記誘導された予測パラメータを用いて前記第2色成分ブロックを予測することができる。
本発明に係る記録媒体は、本発明に係る画像符号化方法によって生成されたビットストリームを保存することができる。
本発明によれば、圧縮効率が向上した画像符号化/復号化方法及び装置が提供できる。
また、本発明によれば、圧縮効率が向上した画面内予測を用いた画像符号化/復号化方法及び装置が提供できる。
また、本発明によれば、本発明の画像符号化/復号化方法又は装置によって生成されたビットストリームを保存した記録媒体が提供できる。
本発明が適用される符号化装置の一実施形態に係る構成を示すブロック図である。
本発明が適用される復号化装置の一実施形態に係る構成を示すブロック図である。
画像を符号化及び復号化するときの画像の分割構造を示す概略図である。
画面内予測過程の実施形態を説明するための図である。
本発明に係る画面内予測を説明するための図である。
輝度ブロックと色差ブロックとの関係を説明するための例示図である。
現在ブロックのサイズ及び/又は形状によるDC予測を説明するための図である。
色成分間画面内予測実行過程を説明するための図である。
色成分ブロックの再構成を説明するための例示図である。
複数の上側及び/又は左側の参照サンプルラインを用いて再構成を行う実施形態を説明するための図である。
対応ブロックの画面内予測モード又は符号化パラメータに応じて再構成に用いられる参照サンプルを説明するための例示図である。
第2色成分予測対象ブロックが4x4である場合、再構成された第1色成分対応ブロックを説明するための例示図である。
第1色成分のサンプル及び第2色成分のサンプルを説明するための図である。
本発明は、様々な変更を加えることができ、様々な実施形態を有することができるので、特定の実施形態を図面に例示し、詳細な説明に詳細に説明する。ところが、これは本発明を特定の実施形態について限定するものではなく、本発明の思想及び技術範囲に含まれるすべての変更、均等物ないし代替物を含むものと理解されるべきである。図面において類似する参照符号は、様々な側面にわたって同一又は類似の機能を指し示す。図面における要素の形状及び大きさなどは、より明確な説明のために誇張することがある。後述する例示的実施形態についての詳細な説明は、特定の実施形態を例示として示す添付図面を参照する。これらの実施形態は、当業者が実施形態を実施し得る程度に十分に詳細に説明される。様々な実施形態は、互いに異なるが、相互排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施形態に関連して本発明の精神及び範囲を逸脱することなく、様々な実施形態に実現できる。また、それぞれの開示された実施形態内の個別構成要素の位置又は配置は実施形態の精神及び範囲を逸脱することなく変更可能であることが理解されるべきである。したがって、後述する詳細な説明は、限定的な意味として取るものではなく、例示的な実施形態の範囲は、適切に説明されるならば、それらの請求項が主張するのと均等なすべての範囲及び添付の請求項によってのみ限定される。
本発明において、用語「第1」、「第2」などは多様な構成要素の説明に使用できるが、これらの構成要素は上記の用語により限定されてはならない。これらの用語は、一つの構成要素を他の構成要素から区別する目的にのみ使われる。例えば、本発明の権利範囲を外れない限り、第1構成要素は第2構成要素と命名することができ、同様に、第2構成要素も第1構成要素と命名することができる。用語「及び/又は」は、複数の関連した記載項目の組み合わせ又は複数の関連した記載項目のいずれかを含む。
本発明のある構成要素が他の構成要素に「連結されて」いる或いは「接続されて」いるとした場合、その他の構成要素に直接連結されている或いは接続されていることもあるが、それらの間に別の構成要素が介在することもあると理解されるべきである。これに対し、ある構成要素が他の構成要素に「直接連結されて」いる或いは「直接接続されて」いるとした場合には、それらの間に別の構成要素が介在しないと理解されるべきである。
本発明の実施形態に示す構成部は、互いに異なる特徴的な機能を示すために独立に図示されるもので、各構成部が分離されたハードウェア又は一つのソフトウェア構成単位からなることを意味しない。すなわち、各構成部は、説明の便宜上、それぞれの構成部に羅列して含むもので、各構成部のうちの少なくとも2つの構成部が合わせられて一つの構成部をなすか、或いは一つの各構成部が複数の構成部に分けられて機能を行うことができ、このような各構成部の統合された実施形態及び分離された実施形態も本発明の本質から外れない限り、本発明の権利範囲に含まれる。
本発明で使用した用語は、単に特定の実施形態を説明するために使われたものであり、本発明を限定するものではない。単数の表現は、文脈上明白に異なる意味ではない限り、複数の表現を含む。本発明において、「含む」又は「有する」などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品又はこれらの組み合わせが存在することを指定するものであり、一つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品又はこれらの組み合わせの存在又は付加可能性を予め排除しないと理解すべきである。つまり、本発明において、特定の構成を「含む」と記述する内容は、該当構成以外の構成を排除するものではなく、追加の構成が本発明の実施又は本発明の技術的思想の範囲に含まれ得ることを意味する。
本発明の一部の構成要素は、本発明において本質的な機能を行う不可欠の構成要素ではなく、単に性能を向上させるための選択的構成要素であり得る。本発明は、単に性能向上のために使用される構成要素を除く、本発明の本質の実現に必要不可欠な構成部のみを含めて実現でき、単に性能向上のために使用される選択的構成要素を除く必須構成要素のみを含む構造も本発明の権利範囲に含まれる。
以下、図面を参照して、本発明の実施形態について具体的に説明する。本明細書の実施形態を説明するにあたり、関連した公知の構成又は機能についての具体的な説明が本明細書の要旨を曖昧にするおそれがあると判断された場合、その詳細な説明は省略し、図面上の同一の構成要素については同一の参照符号を使用し、同一の構成要素についての重複説明は省略する。
また、以下において、画像は動画像(video)を構成する一つのピクチャを意味することもあり、動画像自体を示すこともある。例えば、「画像の符号化及び/又は復号化」は、「ビデオの符号化及び/又は復号化」を意味することができ、「ビデオを構成する画像のうちの一つの画像の符号化及び/又は復号化」を意味することもできる。ここで、ピクチャは画像と同じ意味を持つことができる。
用語説明
符号化器(Encoder):符号化(Encoding)を行う装置を意味する。
復号化器(Decoder):復号化(Decoding))を行う装置を意味する。
ブロック(Block):サンプル(Sample)のMxN配列である。
ここで、MとNは正の整数値を意味し、ブロックは一般に2次元形状のサンプル配列を意味することができる。ブロックはユニットを意味することができる。現在ブロックは、符号化の際に符号化の対象となる符号化対象ブロック、復号化の際に復号化の対象となる復号化対象ブロックを意味することができる。また、現在ブロックは符号化ブロック、予測ブロック、残余ブロック及び変換ブロックの少なくとも一つであり得る。
サンプル(Sample):ブロックを構成する基本単位である。ビット深度(bit depth、Bd)に応じて0から2Bd−1までの値で表現できる。本発明において、サンプルは画素又はピクセルと同じ意味で使用できる。
ユニット(Unit):画像符号化及び復号化の単位を意味する。画像の符号化及び復号化において、ユニットは、一つの画像を分割した領域であり得る。また、ユニットは、一つの画像を細分化されたユニットに分割して符号化或いは復号化するとき、その分割された単位を意味することができる。画像の符号化及び復号化において、ユニットごとに、予め定義された処理が実行できる。一つのユニットは、ユニットに比べてより小さい大きさを持つ下位ユニットにさらに分割できる。機能によって、ユニットは、ブロック(Block)、マクロブロック(Macroblock)、符号化ツリーユニット(Coding Tree Unit)、符号化ツリーブロック(Coding Tree Block)、符号化ユニット(Coding Unit)、符号化ブロック(Coding Block)、予測ユニット(Prediction Unit)、予測ブロック(Prediction Block)、残余ユニット(Residual Unit)、残余ブロック(Residual Block)、変換ユニット(Transform Unit)、変換ブロック(Transform Block)などを意味することができる。また、ユニットは、ブロックと区分して指し示すために、輝度(Luma)成分ブロック、それに対応する色差(Chroma)成分ブロック、及び各ブロックに対する構文要素を含むことを意味することができる。ユニットは、様々なサイズと形状を持つことができ、特に、ユニットの形状は、長方形だけでなく、正方形、台形、三角形、五角形など、2次元的に表現できる幾何学的図形を含むことができる。また、ユニット情報は、符号化ユニット、予測ユニット、残余ユニット、変換ユニットなどを指し示すユニットのタイプ、ユニットのサイズ、ユニットの深さ、ユニットの符号化及び復号化順序などのうちの少なくとも一つを含むことができる。
符号化ツリーユニット(Coding Tree Unit):一つの輝度成分(Y)符号化ツリーブロックに関連する2つの色差成分(Cb、Cr)符号化ツリーブロックで構成される。また、前記ブロックと各ブロックに対する構文要素を含むことを意味することもできる。各符号化ツリーユニットは、符号化ユニット、予測ユニット、変換ユニットなどの下位ユニットを構成するために4分木(quad tree)、2分木(binary tree)などの一つ以上の分割方式を用いて分割できる。入力画像の分割のように画像の復号化/符号化過程で処理単位となるピクセルブロックを示すための用語として使用できる。
符号化ツリーブロック(Coding Tree Block):Y符号化ツリーブロック、Cb符号化ツリーブロック及びCr符号化ツリーブロックのうちのいずれかを示すための用語として使用できる。
周辺ブロック(Neighbor block):現在ブロックに隣接するブロックを意味する。現在ブロックに隣接するブロックは、現在ブロックに境界が当接するブロック、又は現在ブロックから所定の距離内にあるブロックを意味することができる。周辺ブロックは、現在ブロックの頂点に隣接するブロックを意味することができる。ここで、現在ブロックの頂点に隣接するブロックとは、現在ブロックに横方向に隣接する隣接ブロックに縦方向に隣接するブロック、又は現在ブロックに縦方向に隣接する隣接ブロックに横方向に隣接するブロックであり得る。周辺ブロックは、復元された周辺ブロックを意味することもできる。
復元された周辺ブロック(Reconstructed Neighbor Block):現在ブロックの周辺に空間的(Spatial)/時間的(Temporal)に既に符号化或いは復号化された周辺ブロックを意味する。このとき、復元された周辺ブロックは、復元された周辺ユニットを意味することができる。復元された空間的周辺ブロックは、現在ピクチャ内のブロックでありながら符号化及び/又は復号化を介して既に復元されたブロックであり得る。復元された時間的周辺ブロックは、参照ピクチャ内で現在ピクチャの現在ブロックと同じ位置の復元されたブロック又はその周辺ブロックであり得る。
ユニット深さ(Depth):ユニットが分割された程度を意味する。ツリー構造(Tree Structure)において、ルートノード(Root Node)は深さが最も浅く、リーフノード(Leaf Node)は深さが最も深いといえる。また、ユニットをツリー構造で表現したときにユニットが存在するレベル(Level)がユニット深さを意味することができる。
ビットストリーム(Bitstream):符号化された画像情報を含むビットの列を意味する。
パラメータセット(Parameter Set):ビットストリーム内の構造のうちのヘッダー情報に該当する。ビデオパラメータセット(video parameter set)、シーケンスパラメータセット(sequence parameter set)、ピクチャパラメータセット(picture parameter set)、及び適応パラメータセット(adaptation parameter set)のうちの少なくとも一つがパラメータセットに含まれ得る。また、パラメータセットはスライス(slice)ヘッダー及びタイル(tile)ヘッダー情報を含むこともできる。
パーシング(Parsing):ビットストリームをエントロピー復号化して構文要素(Syntax Element)の値を決定することを意味するか、或いはエントロピー復号化自体を意味することができる。
シンボル(Symbol):符号化/復号化対象ユニットの構文要素、符号化パラメータ(coding parameter)、及び変換係数(Transform Coefficient)の値などの少なくとも一つを意味することができる。また、シンボルはエントロピー符号化の対象或いはエントロピー復号化の結果を意味することができる。
予測ユニット(Prediction Unit):画面間予測、画面内予測、画面間補償、画面内補償、動き補償など、予測を行うときの基本ユニットを意味する。一つの予測ユニットは、大きさが小さい複数のパーティション(Partition)又は下位予測ユニットに分割されることも可能である。
予測ユニットパーティション(Prediction Unit Partition):予測ユニットが分割された形状を意味することができる。
変換ユニット(Transform Unit):変換、逆変換、量子化、逆量子化、変換係数符号化/復号化のように残余信号(residual signal)符号化/復号化を行うときの基本ユニットを意味する。一つの変換ユニットは、分割されて大きさが小さい複数の変換ユニットに分割できる。
図1は本発明が適用される符号化装置の一実施形態に係る構成を示すブロック図である。
符号化装置100は、エンコーダ、ビデオ符号化装置又は画像符号化装置であり得る。ビデオは一つ以上の画像を含むことができる。符号化装置100は一つ以上の画像を順次符号化することができる。
図1を参照すると、符号化装置100は、動き予測部111、動き補償部112、イントラ予測部120、スイッチ115、減算器125、変換部130、量子化部140、エントロピー符号化部150、逆量子化部160、逆変換部170、加算器175、フィルタ部180、及び参照ピクチャバッファ190を含むことができる。
符号化装置100は、入力画像に対してイントラモード及び/又はインターモードで符号化を行うことができる。また、符号化装置100は、入力画像に対する符号化を介してビットストリームを生成することができ、生成されたビットストリームを出力することができる。生成されたビットストリームは、コンピュータ可読の記録媒体に保存されるか、或いは有/無線伝送媒体を介してストリーミングできる。予測モードとしてイントラモードが使用される場合、スイッチ115はイントラに転換でき、予測モードとしてインターモードが使用される場合、スイッチ115はインターに転換できる。ここで、イントラモードは画面内予測モードを意味することができ、インターモードは画面間予測モードを意味することができる。符号化装置100は、入力画像の入力ブロックに対する予測ブロックを生成することができる。また、符号化装置100は、予測ブロックが生成された後、入力ブロック及び予測ブロックの差分(residual)を符号化することができる。入力画像は、現在符号化の対象である現在画像と称されることもある。入力ブロックは、現在符号化対象である現在ブロック或いは符号化対象ブロックと称されることもある。
予測モードがイントラモードである場合、イントラ予測部120は、現在ブロックの周辺に既に符号化/復号化されたブロックのピクセル値を参照画素としても用いることができる。イントラ予測部120は、参照画素を用いて空間予測を行うことができ、空間予測を介して入力ブロックに対する予測サンプルを生成することができる。ここで、イントラ予測は画面内予測を意味することができる。
予測モードがインターモードである場合には、動き予測部111は、動き予測過程で参照画像から入力ブロックと最もよくマッチする領域を検索することができ、検索された領域を用いて動きベクトルを導出することができる。参照画像は参照ピクチャバッファ190に保存できる。
動き補償部112は、動きベクトルを用いる動き補償を行うことにより、予測ブロックを生成することができる。ここで、インター予測は、画面間予測或いは動き補償を意味することができる。
減算器125は、入力ブロック及び予測ブロックの差分を用いて残余ブロック(residual block)を生成することができる。残余ブロックは残余信号とも称される。残余信号は、原信号及び予測信号間の差(difference)を意味することができる。また、残余信号は、原信号及び予測信号間の差を変換(transform)するか、量子化するか、或いは変換及び量子化することにより生成された信号であり得る。残余ブロックはブロック単位の残余信号であり得る。
変換部130は、残余ブロックに対して変換(transform)を行って変換係数(transform coefficient)を生成することができ、変換係数を出力することができる。ここで、変換係数は、残余ブロックに対する変換を行うことにより生成された係数値であり得る。変換省略(transform skip)モードが適用される場合、変換部130は残余ブロックに対する変換を省略することもできる。
変換係数又は残余信号に量子化を適用することにより、量子化されたレベル(quantized level)が生成できる。以下、実施形態では、量子化されたレベルも変換係数と称されることがある。
量子化部140は、変換係数又は残余信号を量子化パラメータに基づいて量子化することにより、量子化されたレベルを生成することができ、量子化されたレベルを出力することができる。このとき、量子化部140では、量子化行列を用いて変換係数を量子化することができる。
エントロピー符号化部150は、量子化部140で算出された値、又は符号化過程で算出された符号化パラメータ(Coding Parameter)値などに対して確率分布によるエントロピー符号化を行うことにより、ビットストリーム(bitstream)を生成することができ、ビットストリームを出力することができる。エントロピー符号化部150は、画像のピクセルに関する情報及び画像の復号化のための情報に対するエントロピー符号化を行うことができる。例えば、画像の復号化のための情報は構文要素(syntax element)などを含むことができる。
エントロピー符号化が適用される場合、高い発生確率を有するシンボル(symbol)に少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることにより、符号化対象シンボルに対するビット列のサイズが減少できる。エントロピー符号化部150は、エントロピー符号化のために指数ゴロム(exponential Golomb)、CAVLC(Context−Adaptive Variable Length Coding)、CABAC(Context−Adaptive Binary Arithmetic Coding)などの符号化方法を使用することができる。例えば、エントロピー符号化部150は、可変長符号化(Variable Length Coding/Code;VLC)テーブルを用いてエントロピー符号化を行うことができる。また、エントロピー符号化部150は、対象シンボルの2値化(binarization)方法及び対象シンボル/ビン(bin)の確率モデル(probability model)を導出した後、導出された2値化方法、確率モデル、コンテキストモデル(Context Model)を用いて算術符号化を行うこともできる。
エントロピー符号化部150は、変換係数レベルを符号化するために、変換係数スキャニング(Transform Coefficient Scanning)方法を介して2次元のブロック形状係数を1次元のベクトル形態に変更することができる。
符号化パラメータ(Coding Parameter)は、構文要素のように符号化器で符号化されて復号化器へシグナリングされる情報(フラグ、インデックスなど)だけでなく、符号化或いは復号化過程で誘導される情報を含むことができ、画像を符号化又は復号化するときに必要な情報を意味することができる。例えば、ブロックサイズ、ブロック深さ、ブロック分割情報、ユニットサイズ、ユニット深さ、ユニット分割情報、4分木分割フラグ、2分木分割フラグ、2分木分割方向、画面内予測モード、画面内予測方向、参照サンプルフィルタリング方法、予測ブロック境界フィルタリング方法、フィルタタップ、フィルタ係数、画面間予測モード、動き情報、動きベクトル、参照画像インデックス、画面間予測方向、画面間予測インジケータ、参照画像リスト、動きベクトル予測器、動きベクトル候補リスト、動きマージモード(motion merge mode)の使用有無、動きマージ候補、動きマージ候補リスト、スキップ(skip)モードの使用有無、補間フィルタの種類、動きベクトルのサイズ、動きベクトル表現の精度、変換種類、変換サイズ、追加(2次)変換の使用有無情報、残余信号の有無情報、符号化ブロックパターン(Coded Block Pattern)、符号化ブロックフラグ(Coded Block Flag;CBF)、量子化パラメータ、量子化行列、ループ内フィルタ情報、ループ内フィルタの適用有無情報、ループ内フィルタ係数、2値化/逆2値化方法、コンテキストモデル、コンテキストビン、バイパスビン、変換係数、変換係数レベル、変換係数レベルスキャニング方法、画像ディスプレイ/出力順序、スライス識別情報、スライスタイプ、スライス分割情報、タイル識別情報、タイルタイプ、タイル分割情報、ピクチャタイプ、ビット深度、輝度信号或いは色差信号に対する情報のうちの少なくとも一つの値又は組み合わせ形態が符号化パラメータに含まれ得る。
ここで、フラグ或いはインデックスをシグナリング(signaling)するというのは、エンコーダでは該当フラグ或いはインデックスをエントロピー符号化(Entropy Encoding)してビットストリーム(Bitstream)に含むことを意味することができ、デコーダではビットストリームから該当フラグ或いはインデックスをエントロピー復号化(Entropy Decoding)することを意味することができる。
符号化装置100がインター予測を用いた符号化を行う場合、符号化された現在画像は、後で処理される他の画像に対する参照画像として使用できる。よって、符号化装置100は、符号化された現在画像をさらに復元又は復号化することができ、復元又は復号化された画像を参照画像として保存することができる。
量子化されたレベルは、逆量子化部160で逆量子化(dequantization)でき、逆変換部170で逆変換(inverse transform)できる。逆量子化及び/又は逆変換された係数は、加算器175を介して予測ブロックと合わせられ得る。逆量子化及び逆変換された係数と予測ブロックとを合わせることにより、復元ブロック(reconstructed block)が生成できる。ここで、逆量子化及び/又は逆変換された係数は、逆量子化及び逆変換の少なくとも一つが行われた係数を意味し、復元された残余ブロックを意味することができる。
復元ブロックはフィルタ部180を経ることができる。フィルタ部180は、デブロッキングフィルタ(deblocking filter)、サンプル適応的オフセット(Sample Adaptive Offset;SAO)、適応的ループフィルタ(Adaptive Loop Filter;ALF)などの少なくとも一つを復元ブロック又は復元画像に適用することができる。フィルタ部180はループ内フィルタ(in−loop filter)とも称される。
デブロッキングフィルタは、ブロック間の境界に生じたブロック歪みを除去することができる。デブロッキングフィルタを行うか否かを判断するために、ブロックに含まれている幾つかの列又は行に含まれているピクセルに基づいて、現在ブロックにデブロッキングフィルタを適用するか否かを判断することができる。ブロックにデブロッキングフィルタを適用する場合、必要なデブロッキングフィルタリング強度に応じて、互いに異なるフィルタを適用することができる。
サンプル適応的オフセットを用いて符号化エラーを補償するために、ピクセル値に適正オフセット(offset)値を加えることができる。サンプル適応的オフセットは、デブロッキングを行った画像に対してピクセル単位で原本画像とのオフセットを補正することができる。画像に含まれているピクセルを一定数の領域に区分した後、オフセットを行うべき領域を決定し、該当領域にオフセットを適用する方法、又は各ピクセルのエッジ情報を考慮してオフセットを適用する方法を使用することができる。
適応的ループフィルタは、復元画像と原画像とを比較した値に基づいてフィルタリングを行うことができる。画像に含まれているピクセルを所定のグループに分けた後、当該グループに適用されるべきフィルタを決定してグループごとに差別的にフィルタリングを行うことができる。適応的ループフィルタを適用するか否かに関連した情報は、符号化ユニット(Coding Unit、CU)別にシグナリングでき、それぞれのブロックに応じて、適用される適応的ループフィルタの形状及びフィルタ係数は異なり得る。
フィルタ部180を経た復元ブロック又は復元画像は参照ピクチャバッファ190に保存できる。図2は本発明が適用される復号化装置の一実施形態に係る構成を示すブロック図である。
復号化装置200はデコーダ、ビデオ復号化装置又は画像復号化装置であり得る。
図2を参照すると、復号化装置200は、エントロピー復号化部210、逆量子化部220、逆変換部230、イントラ予測部240、動き補償部250、加算器255、フィルタ部260、及び参照ピクチャバッファ270を含むことができる。
復号化装置200は、符号化装置100から出力されたビットストリームを受信することができる。復号化装置10は、コンピュータ可読記録媒体に保存されたビットストリームを受信するか、或いは有/無線伝送媒体を介してストリーミングされるビットストリームを受信することができる。復号化装置200は、ビットストリームに対してイントラモード又はインターモードで復号化を行うことができる。また、復号化装置200は、復号化を介して復元された画像又は復号化された画像を生成することができ、復元された画像又は復号化された画像を出力することができる。
復号化に使用される予測モードがイントラモードである場合、スイッチがイントラに転換できる。復号化に使用される予測モードがインターモードである場合、スイッチがインターに転換できる。
復号化装置200は、入力されたビットストリームを復号化し、復元された残余ブロック(reconstructed residual block)を取得することができ、予測ブロックを生成することができる。復元された残余ブロック及び予測ブロックが取得されると、復号化装置200は、復元された残余ブロックと予測ブロックを加えることにより、復号化対象となる復元ブロックを生成することができる。復号化対象ブロックは現在ブロックと称されることがある。
エントロピー復号化部210は、ビットストリームに対する確率分布に基づくエントロピー復号化を行うことにより、シンボルを生成することができる。生成されたシンボルは、量子化されたレベル形態のシンボルを含むことができる。ここで、エントロピー復号化方法は、上述したエントロピー符号化方法の逆過程であり得る。
エントロピー復号化部210は、変換係数レベルを復号化するために、変換係数スキャニング方法によって1次元のベクトル形態係数を2次元のブロック形態に変更することができる。
量子化されたレベルは、逆量子化部220で逆量子化でき、逆変換部230で逆変換できる。量子化されたレベルは、逆量子化又は逆変換が行われた結果であって、復元された残余ブロックとして生成できる。このとき、逆量子化部220は、量子化されたレベルに量子化行列を適用することができる。
イントラモードが使用される場合、イントラ予測部240は、復号化対象ブロック周辺の、既に復号化されたブロックのピクセル値を用いる空間予測を行うことにより、予測ブロックを生成することができる。
インターモードが使用される場合、動き補償部250は、動きベクトル及び参照ピクチャバッファ270に保存されている参照画像を用いる動き補償を行うことにより、予測ブロックを生成することができる。
加算器255は、復元された残余ブロック及び予測ブロックを加算して復元ブロックを生成することができる。フィルタ部260は、デブロッキングフィルタ、サンプル適応的オフセット及び適応的ループフィルタなどの少なくとも一つを復元ブロック又は復元画像に適用することができる。フィルタ部260は復元画像を出力することができる。復元ブロック又は復元画像は参照ピクチャバッファ270に保存されてインター予測に使用できる。
図3は画像を符号化及び復号化するときの画像の分割構造を示す概略図である。図3は一つのユニットが複数の下位ユニットに分割される実施形態を概略的に示す。
画像を効率よく分割するために、符号化及び復号化において、符号化ユニット(Coding Unit;CU)が使用できる。画像符号化/復号化の基本単位として符号化ユニットが使用できる。また、画像符号化/復号化の際に画面内モード及び画面間モードが区分される単位として、符号化ユニットを使用することができる。符号化ユニットは、予測、変換、量子化、逆変換、逆量子化、又は変換係数の符号化/復号化の過程のために使用される基本単位であり得る。
図3を参照すると、画像300は、最大符号化ユニット(Largest Coding Unit;LCU)単位で順次分割され、LCU単位で分割構造が決定される。ここで、LCUは、符号化ツリーユニット(Coding Tree Unit;CTU)と同一の意味で使用できる。ユニットの分割は、ユニットに該当するブロックの分割を意味することができる。ブロック分割情報には、ユニットの深さ(depth)に関する情報が含まれ得る。深さ情報は、ユニットが分割される回数及び/又は程度を示すことができる。一つのユニットは、ツリー構造(tree structure)に基づいて深さ情報をもって階層的に分割できる。それぞれの分割された下位ユニットは深さ情報を持つことができる。深さ情報は、CUの大きさを示す情報であり、各CUごとに保存できる。
分割構造は、LCU310内での符号化ユニット(Coding Unit;CU)の分布を意味することができる。このような分布は、一つのCUを複数(2、4、8、16などを含む2以上の正の整数)のCUに分割するか否かによって決定することができる。分割により生成されたCUの横幅と縦幅は、それぞれ分割前のCUの横幅の半分及び縦幅の半分であるか、分割された個数に応じて分割前のCUの横幅よりも小さいサイズ及び縦幅よりも小さいサイズを持つことができる。CUは、複数のCUに再帰的に分割できる。CUの分割は所定の深さ又は所定のサイズまで再帰的に行われ得る。例えば、LCUの深さは0であり、最小符号化ユニット(Smallest Coding Unit;SCU)の深さは予め定義された最大深さであり得る。ここで、LCUは、上述したように、最大の符号化ユニットサイズを持つ符号化ユニットであり、SCUは、最小の符号化ユニットサイズを持つ符号化ユニットであり得る。LCU310から分割が始まり、分割によりCUの横幅及び/又は縦幅が減少するたびに、CUの深さは1ずつ増加する。
また、CUが分割されるか否かに関する情報は、CUの分割情報によって表現できる。分割情報は1ビットの情報であり得る。SCUを除いた全てのCUは分割情報を含むことができる。例えば、分割情報の値が第1値であれば、CUが分割されなくてもよく、分割情報の値が第2値であれば、CUが分割されてもよい。
図3を参照すると、深さが0であるLCUは64x64画素であり得る。0は最小深さであり得る。深さが3であるSCUは8x8画素であり得る。3は最大深さであり得る。32x32ブロック及び16x16ブロックのCUはそれぞれ深さ1及び深さ2で表現できる。
例えば、一つの符号化ユニットが4つの符号化ユニットに分割される場合、分割された4つの符号化ユニットの横幅及び縦幅は、分割される前の符号化ユニットの横幅及び縦幅と比較してそれぞれの半分のサイズを持つことができる。一例として、32x32サイズの符号化ユニットが4つの符号化ユニットに分割される場合、分割された4つの符号化ユニットはそれぞれ16x16のサイズを持つことができる。一つの符号化ユニットが4つの符号化ユニットに分割される場合、符号化ユニットは4分木(quad−tree)状に分割されたといえる。
例えば、一つの符号化ユニットが2つの符号化ユニットに分割される場合、分割された2つの符号化ユニットの横幅或いは縦幅は、分割される前の符号化ユニットの横幅或いは縦幅と比較して半分のサイズを持つことができる。一例として、32x32サイズの符号化ユニットが2つの符号化ユニットに縦分割される場合、分割された2つの符号化ユニットは、それぞれ16x32のサイズを持つことができる。一つの符号化ユニットが2つの符号化ユニットに分割される場合、符号化ユニットは2分木(binary−tree)状に分割されたといえる。図3のLCU32は4分木状の分割及び2分木状の分割が全て適用されたLCUの一例である。
図4は画面内予測過程の実施形態を説明するための図である。
画面内予測モードは非方向性モード又は方向性モードであり得る。非方向性モードは、DCモード又はプラナー(Planar)モードであり、方向性モードは、特定の方向又は角度を持つ予測モードであり得る。前記画面内予測モードは、モード番号、モード値、モード数及びモード角度のうちの少なくとも一つで表現できる。画面内予測モードの個数は、前記非方向性及び方向性モードを含む一つ以上のM個であり得る。
画面内予測モードの個数は、ブロックのサイズを問わずN個に固定できる。又は、画面内予測モードの個数は、ブロックのサイズ及び/又は色成分(color component)のタイプによって異なり得る。例えば、ブロックのサイズが大きくなるほど、画面内予測モードの個数は多くなることがある。又は、ルマ成分ブロックの画面内予測モードの個数は色差成分ブロックの画面内予測モードの個数よりも多いことがある。
現在ブロックを画面内予測するために復元された周辺ブロックに含まれるサンプルが、現在ブロックの参照サンプルとして利用可能であるかどうかを検査するステップが行われ得る。現在ブロックの参照サンプルとして利用できないサンプルが存在する場合、復元された周辺ブロックに含まれているサンプルのうちの少なくとも一つのサンプル値をコピー及び/又は補間した値を用いて、参照サンプルとして利用できないサンプルのサンプル値で代替した後、現在ブロックの参照サンプルとして利用することができる。
画面内予測時の画面内予測モード及び現在ブロックのサイズのうちの少なくとも一つに基づいて、参照サンプル又は予測サンプルの少なくとも一つにフィルタを適用することができる。
プラナーモードの場合、現在ブロックの予測ブロックを生成するとき、予測対象サンプルの予測ブロック内の位置に基づいて、現在サンプルの上側及び左側の参照サンプルを現在ブロックの右上側及び左下側参照サンプルの重み付け和を用いて予測対象サンプルのサンプル値を生成することができる。また、DCモードの場合、現在ブロックの予測ブロックを生成するとき、現在ブロックの上側及び左側参照サンプルの平均値を用いることができる。また、方向性モードの場合、現在ブロックの上側、左側、右上側及び/又は左下側参照サンプルを用いて予測ブロックを生成することができる。予測サンプル値を生成するために、実数単位の補間を行うこともできる。
現在ブロックの画面内予測モードは、現在ブロックの周辺に存在するブロックの画面内予測モードから予測してエントロピー符号化/復号化することができる。現在ブロックと周辺ブロックの画面内予測モードが同一であれば、所定のフラグ情報を用いて現在ブロックと周辺ブロックの画面内予測モードが同一であるという情報をシグナリングすることができる。また、複数の周辺ブロックの画面内予測モードのうち、現在ブロックの画面内予測モードと同じ画面内予測モードに対するインジケータ情報をシグナリングすることができる。現在ブロックと周辺ブロックの画面内予測モードが互いに異なる場合、周辺ブロックの画面内予測モードに基づいてエントロピー符号化/復号化を行って現在ブロックの画面内予測モード情報をエントロピー符号化/復号化することができる。
図5は本発明に係る画面内予測を説明するための図である。
現在ブロックに対する画面内予測は、画面内予測モード誘導ステップ(S510)、参照サンプル構成ステップ(S520)、及び/又は画面内予測実行ステップ(S530)を含むことができる。
ステップS510で、現在ブロックの画面内予測モードが誘導できる。現在ブロックの画面内予測モードは、周辺ブロックの画面内予測モードを用いる方法、ビットストリームから現在ブロックの画面内予測モードをエントロピー符号化/復号化する方法、周辺ブロックの符号化パラメータを用いる方法、又は色成分の画面内予測モードを用いる方法によって誘導できる。前記周辺ブロックの画面内予測モードを用いる方法によれば、周辺ブロックの画面内予測モード、周辺ブロックの一つ以上の画面内予測モードの組み合わせ、及び一つ以上のMPMを用いて誘導された画面内予測モードのうちの少なくとも一つを用いて、現在ブロックの画面内予測モードが誘導できる。
ステップS520で、参照サンプル選択及び参照サンプルフィルタリングのうちの少なくとも一つを行い、参照サンプルが構成できる。
ステップS530で、非方向性予測、方向性予測、位置情報ベース予測、及び色成分間予測のうちの少なくとも一つを行って画面内予測が実行できる。前記方向性予測が行われる場合は、現在ブロックの一つ以上のサンプルを含む所定の単位ごとに互いに異なる方向性を有する予測が実行できる。前記所定の単位は、例えば、単一サンプル、サンプルグループ、ライン及びブロックのうちの少なくとも一つであり得る。前記色成分間の予測は、色成分ブロックの再構成ステップ、予測パラメータの誘導ステップ及び/又は色成分間予測実行ステップを含むことができる。ステップS530で、予測サンプルに対するフィルタリングをさらに行うことができる。
現在ブロックの画面内予測モードを誘導するために一つ以上の復元された周辺ブロックが使用できる。復元された周辺ブロックの位置は、予め定義された固定位置、又は符号化/復号化して誘導された位置であり得る。以下、符号化/復号化は、エントロピー符号化及び復号化を意味することができる。例えば、WxHサイズの現在ブロックの左上側コーナーサンプルの座標を(0,0)とするとき、前記周辺ブロックは(−1,H−1)、(W−1,−1)、(W,−1)、(−1,H)及び(−1,−1)座標に隣接するブロック及び前記ブロックの周辺ブロックのうちの少なくとも一つであり得る。この時、前記W及びHは、前記現在ブロックの横幅W及び縦幅H又はサンプルの個数を示すことができる。
利用可能な周辺ブロックの画面内予測モードは、所定の画面内予測モードで代替することができる。前記所定の画面内予測モードは、例えば、DCモード、Planarモード、垂直モード、水平モード及び/又は対角モードであり得る。例えば、周辺ブロックがピクチャ、スライス、タイル、CTU(Coding Tree Unit)などのうちの少なくとも一つの所定のユニットの境界外に位置するか、或いは画面間予測されるか、或いはPCMモードで符号化された場合、当該周辺ブロックは利用不可能と判断できる。又は、前記周辺ブロックが利用不可能である場合、前記利用不可能な周辺ブロックの画面内予測モードを代替せず、前記利用不可能な周辺ブロックを用いなくてもよい。
現在ブロックの画面内予測モードは、所定の位置の周辺ブロックの画面内予測モード又は二つ以上の周辺ブロックの画面内予測モードの統計値を用いて誘導できる。本明細書において、統計値は、平均値、最大値、最小値、最頻値、中央値、加重平均値及び補間値のうちの少なくとも一つを意味することができる。
又は、周辺ブロックのサイズに基づいて、現在ブロックの画面内予測モードを誘導することができる。例えば、相対的にサイズが大きい周辺ブロックの画面内予測モードを現在ブロックの画面内予測モードとして誘導することができる。又は、相対的にサイズが大きいブロックの画面内予測モードに相対的に大きい重みを付与して統計値を計算することもできる。
又は、周辺ブロックの画面内予測モードが方向性であるか否かが考慮できる。例えば、周辺ブロックの画面内予測モードが非方向性である場合、前記非方向性モードを現在ブロックの画面内予測モードとして誘導することができる。又は、前記非方向性モードを除く他の周辺ブロックの画面内予測モードを用いて、現在ブロックの画面内予測モードを誘導することもできる。
現在ブロックの画面内予測モードを誘導するために、周辺ブロックの画面内予測モードを用いて一つ以上のMPM(Most Probable Mode)リストを構成することができる。MPMリストに含まれる候補モードの個数Nは、固定されるか、或いは現在ブロックのサイズ及び/又は形状に基づいて決定できる。MPMリストは、重複するモードがないように構成できる。利用可能な候補モードの個数がN未満の場合には、利用可能な候補モードのうち、所定の候補モード、例えば方向性モードに対して所定のオフセットを加減したモードを前記一つ以上のMPMリストに追加することができる。又は、水平モード、垂直モード、45度モード、135度モード、225度モード及び非方向性モードのうちの少なくとも一つをMPMリストに追加することができる。前記所定のオフセットは1、2、3、4、又は正の整数であり得る。
MPMリストは、周辺ブロックの位置に基づいた所定の順序で構成できる。例えば、前記所定の順序は、現在ブロックの左側、上側、左下側コーナー、右上側コーナー及び左上側コーナーに隣接するブロックの順序であり得る。非方向性モードは、MPMリストの任意の位置に含まれ得る。例えば、左側及び上側に隣接するブロックの画面内予測モードの次に追加できる。
他の実施形態として、MPMリストを用いて誘導された画面内予測モードと周辺ブロックの画面内予測モードを用いて、現在ブロックの画面内予測モードが誘導できる。たとえば、MPMリストを用いて誘導された画面内予測モードをPred_mpmとするとき、周辺ブロックの画面内予測モードを用いて前記Pred_mpmを変更することができる。例えば、Pred_mpmが周辺ブロックの画面内予測モード(又は二つ以上の画面内予測モードの統計値)よりも大きい場合には、Pred_mpmをnだけ増加させ、そうでない場合には、nだけ減少させることができる。この時、nは+1、+2、+3、0、−1、−2、−3などの所定の整数であり得る。現在ブロックの画面内予測モードは、変更されたPred_mpmによって誘導できる。又は、Pred_mpmと周辺ブロックの画面内予測モードのうちの少なくとも一つが非方向性モードである場合、現在ブロックの画面内予測モードは前記非方向性モードとして誘導されてもよい。又は、逆に、現在ブロックの画面内予測モードは方向性モードとして誘導されてもよい。
画面内予測モードを誘導する別の実施形態として、他の色成分の画面内予測モードを用いて現在ブロックの画面内予測モードを誘導することができる。たとえば、現在ブロックが色差ブロックである場合、前記色差ブロックに対応する輝度ブロックの画面内予測モードが使用できる。前記対応する輝度ブロックは一つ以上であり得る。前記対応する輝度ブロックは、色差ブロックのサイズ、形状及び/又は符号化パラメータのうちの少なくとも一つに基づいて決定できる。又は、前記対応する輝度ブロックは輝度ブロックのサイズ、形状及び/又は符号化パラメータのうちの少なくとも一つに基づいて決定できる。
色差ブロックに対応する輝度ブロックは複数のパーティションを含むことができる。前記複数のパーティションの全部又は一部は、互いに異なる画面内予測モードを持つことができる。色差ブロックの画面内予測モードは、対応する輝度ブロック内の複数のパーティションの全部又は一部に基づいて誘導できる。この際、色差ブロックと輝度ブロック(複数のパーティションの全部又は一部)とのブロックサイズ、形状、深さ情報などの比較に基づいて一部のパーティションが選択的に利用できる。色差ブロック内の所定の位置に対応する輝度ブロック内の位置のパーティションが選択的に利用されてもよい。前記所定の位置は、色差ブロックのコーナーサンプル(例えば、左上側サンプル)位置又は中央サンプル位置を意味することができる。
本発明に係る色成分間画面内予測モードの誘導方法は、対応する輝度ブロックの画面内予測モードを用いることに限定されない。例えば、対応する輝度ブロックのmpm_idx又はMPM listのうちの少なくとも一つを用いるか或いは共有して色差ブロックの画面内予測モードを誘導することもできる。
図6は輝度ブロックと色差ブロックとの関係を説明するための例示図である。
図6に示された例において、色成分間の比率は4:2:0であり、色差ブロックに対応する輝度ブロックはA、B、C及びDのうちの少なくとも一つであり得る。
図6に示された例において、色差ブロックの画面内予測モードは、色差ブロック内の左上側の位置(0,0)に対応する輝度ブロックAの画面内予測モード、又は色差ブロックの中央サンプル位置(nS/2,nS/2)に対応する輝度ブロックDの画面内予測モードを用いて誘導できる。前記色差ブロック内の所定の位置は(0,0)及び(nS/2、nS/2)に限定されない。例えば、前記所定の位置は、色差ブロック内の右上側、左下側及び/又は右下側コーナーサンプルの位置であり得る。
前記所定の位置は、色差ブロックの形状に応じて選択できる。例えば、色差ブロックが正方形である場合、前記所定の位置は中央サンプル位置であり得る。例えば、色差ブロックが長方形である場合、前記所定の位置は左上側サンプル位置であり得る。上記の例において、色差ブロックが正方形である場合と長方形である場合における前記所定の位置は反対であってもよい。
別の実施形態として、色差ブロックのサイズに対応する輝度ブロック内の一つ以上の画面内予測モードの統計値を用いて色差ブロックの画面内予測モードを誘導することができる。
図6に示された例において、例えば、輝度ブロックAとDの画面内予測モードの平均に該当するモード、又は色差ブロックのサイズに対応する輝度ブロック内のA、B、C、Dの画面内予測モードの平均に該当するモードを色差ブロックの画面内予測モードとして誘導することができる。
利用可能な輝度ブロックの画面内予測モードが複数存在する場合、そのうちの全部又は一部が選択できる。前記選択は、色差ブロック内の所定の位置に基づいて、或いは色差ブロック及び/又は輝度ブロックのサイズ、形状及び/又は深さに基づいて行われ得る。前記選択された輝度ブロックの画面内予測モードを用いて、色差ブロックの画面内予測モードを誘導することができる。
例えば、色差ブロック内の左上側サンプル位置(0,0)に対応する輝度ブロックAのサイズと色差ブロック内の中央サンプル位置(nS/2、nS/2)に対応する輝度ブロックDのサイズとを比較して相対的に大きい輝度ブロックDの画面内予測モードを利用して、色差ブロックの画面内予測モードを誘導することができる。
又は、色差ブロック内の所定の位置に対応する輝度ブロックが色差ブロックよりも大きいか同じであれば、該当輝度ブロックの画面内予測モードを用いて、色差ブロックの画面内予測モードを誘導することができる。
又は、色差ブロックのサイズが所定の範囲に該当する場合、色差ブロック内の左上端のサンプル位置(0,0)に対応する輝度ブロックの画面内予測モードを用いて色差ブロックの画面内予測モードを誘導することができる。
又は、色差ブロックのサイズが所定の範囲に該当する場合、色差ブロック内の所定の位置(0,0)及び(nS/2,nS/2)に対応する輝度ブロックのサイズを比較して大きいブロックの画面内予測モードを用いて、色差ブロックの画面内予測モードを誘導することができる。
前記所定の範囲は、ビットストリームを介してシグナリングされる情報、ブロック(色差ブロック及び/又は輝度ブロック)のサイズ(及び/又は深さ)に関する情報及び符号化器/復号化器で予め定義された情報のうちの少なくとも一つに基づいて誘導できる。
又は、色差ブロックの形状が長方形である場合、色差ブロック内の中央サンプル位置(nS/2、nS/2)に対応する輝度ブロックの画面内予測モードを用いて色差ブロックの画面内予測モードを誘導することができる。
又は、輝度ブロック内の複数のパーティションのうち、色差ブロックと同じ形状を有するパーティションが使用できる。例えば、色差ブロックが正方形又は非正方形である場合、輝度ブロック内の複数のパーティションのうち正方形又は非正方形のパーティションが使用できる。
図6を参照して説明した例において、輝度ブロックの画面内予測モードを用いて色差ブロックの画面内予測モードを誘導するという意味は、輝度ブロックの画面内予測モードが色差ブロックの画面内予測モードとしてそのまま用いられる場合を含む。また、輝度ブロックの画面内予測モードを用いることに限定されず、輝度ブロックのmpm_idx、MPMリストを含んで、輝度ブロックの画面内予測モードの誘導時に使用された情報を用いてもよい。
又は、前記所定の位置に対応する輝度ブロックの画面内予測モードを用いて色差ブロックに対するMPMリストを構成することもできる。この場合、色差ブロックに対するmpm_idx情報が符号化されてシグナリングできる。色差ブロックに対するMPMリストは、輝度ブロックに対するMPMリストと同様の方法で構成できる。しかし、色差ブロックのMPM候補は、周辺色差ブロックの画面内予測モード、及び/又は対応する輝度ブロックの画面内予測モードを含むことができる。
MPM flagが0である場合、一つ以上の画面内予測モードを含む2次MPMリストを構成し、2次MPMインデックス(2nd_mpm_idx)を用いて現在ブロックの画面内予測モードを誘導することができる。この際、現在ブロックの画面内予測モードが2次MPMリストに含まれるかを指示する2次インジケータ(例えば、2次MPM flag)が符号化/復号化できる。2次MPMリストは、1次MPMリストと同様に、周辺ブロックの画面内予測モードを用いて構成できる。このとき、1次MPMリストに含まれている画面内予測モードは、2次MPMリストに含まれなくてもよい。MPMリストの個数は、1つ又は2つに限定されず、N個のMPMリストが使用できる。
現在ブロックの画面内予測モードが複数のMPMリストのいずれかに含まれない場合、現在ブロックの輝度成分画面内予測モードは符号化/復号化できる。また、色差成分画面内予測モードは、対応する輝度成分画面内予測モードに基づいて誘導されるか或いは符号化/復号化され得る。
現在ブロックが複数のサブブロック(sub block)に分割される場合、分割されたそれぞれのサブブロックに対する画面内予測モードを誘導するために、前述した方法のうちの少なくとも一つが適用できる。
サブブロックのサイズ及び/又は形状は、所定のサイズ及び/又は形状(例えば、4x4)であるか、現在ブロックのサイズ及び/又は形状に応じて決定できる。又は、サブブロックのサイズは、現在ブロックの周辺ブロックの分割有無に基づいて決定されるか、或いは現在ブロックの周辺ブロックの画面内予測モードに基づいて決定され得る。例えば、周辺ブロックの画面内予測モードが互いに異なる境界を基準に、現在ブロックが分割できる。又は、周辺ブロックが画面内符号化ブロックであるか画面間符号化ブロックであるかに基づいて、現在ブロックが分割できる。
現在ブロックの画面内予測モードが周辺ブロックの画面内予測モードを用いて誘導されることを示すインジケータ(例えば、NDIP_flag)が符号化/復号化できる。前記インジケータは、現在ブロック又はサブブロックのうちの少なくとも一つの単位ごとに符号化/復号化できる。この時、現在ブロック又はサブブロックのサイズが所定のサイズ又は所定のサイズの範囲に該当する場合にのみ前記インジケータが符号化/復号化できる。
現在ブロックのサイズが所定のサイズに該当するかの判断は、現在ブロックの横幅又は縦幅に基づいて行われ得る。例えば、横幅又は縦幅が分割可能な長さであれば、現在ブロックのサイズが所定のサイズに該当すると判断できる。
現在ブロックが複数のサブブロックに分割される場合、複数のサブブロックの画面内予測モードは、ジグザグ順序で誘導されるか或いは並列的に誘導され得る。サブブロックの画面内予測モードは、現在ブロックの画面内予測モードを誘導する方法のうちの少なくとも一つの方法で誘導できる。この時、現在ブロックの周辺ブロックが各サブブロックの周辺ブロックとして使用されてもよい。又は、現在ブロック内のサブブロックが各サブブロックの周辺ブロックとして使用されてもよい。
現在ブロックに属するサブブロックの画面内予測モードは、現在ブロックの画面内予測モードと各サブブロックの(0,0)位置サンプルの左側と上側に隣接するブロックの画面内予測モードとの平均値を用いて誘導することができる。たとえば、現在ブロックの画面内予測モードが前記平均値よりも大きい場合、前記平均値の1/2だけを前記誘導した画面内予測モードから差し引くことができ、前記平均値より小さいか同じ場合には加えることができる。
画面内予測に関する情報は、VPS(video parameter set)、SPS(sequence parameter set)、PPS(picture parameter set)、APS(adaptation parameter set)、スライス(slice)ヘッダー及びタイル(tile)ヘッダーのうちの少なくとも一つを介してシグナリングできる。所定のブロックサイズ以下では、画面内予測に関する情報のうちの少なくとも一つがシグナリングされないことがある。この場合、以前に符号化/復号化されたブロック(例えば、上位ブロック)の画面内予測に関する情報が使用できる。
前記誘導された画面内予測モードに基づいて、画面内予測のための参照サンプルが構成できる。以下の説明において、現在ブロックは、予測ブロック、又は予測ブロックよりも小さいサイズ/形状を有するサブブロックを意味することができる。参照サンプルは、現在ブロックの周辺の復元された一つ以上のサンプル又はサンプル組み合わせを用いて構成できる。また、構成された参照サンプルに対してフィルタリングが適用できる。
参照サンプルの構成に使用される復元サンプルラインの数及び/又は位置は、符号化ツリーブロック内の現在ブロックの位置によって異なり得る。複数の復元サンプルライン上の各復元サンプルはそのまま参照サンプルとして使用できる。又は、復元サンプルに所定のフィルタを適用し、フィルタリングされた復元サンプルを用いて参照サンプルを生成することもできる。フィルタが適用される復元サンプルは、同じ復元サンプルラインに属するか、或いは異なる復元サンプルラインに属することができる。
前記構成された参照サンプルはref[m,n]で表し、周辺の復元されたサンプル又はこれをフィルタリングしたサンプルはrec[m,n]で表すことができる。このとき、m又はnは、サンプルの位置を示す所定の整数値であり得る。現在ブロック内の左上側サンプルの位置が(0,0)であるとき、現在ブロックの左上側参照サンプルの位置は(−1,−1)に設定できる。
前記参照サンプルを構成するために周辺の復元サンプルに対して可用性(availability)有無を判断することができる。前記周辺の復元サンプルがピクチャ、スライス、タイル及びCTUの少なくとも一つの領域外に位置する場合、利用不可能と判断することができる。又は、現在ブロックに対する限られた画面内予測(constrained intra prediction)を行う場合、前記周辺の復元サンプルが画面間で符号化/復号化されたブロックに位置する場合、利用不可能と判断することができる。
前記周辺の復元されたサンプルが利用不可能であると判断される場合、周辺の利用可能な復元サンプルを用いて利用不可能サンプルを代替することができる。たとえば、左下側サンプルの位置から始まり、隣接する利用可能サンプルを用いて利用不可能サンプルを満たすことができる。又は、利用可能サンプルの組み合わせを用いて利用不可能サンプルを満たすことができる。例えば、利用不可能サンプルの両端に位置する利用可能サンプルの平均値を用いて利用不可能サンプルを満たすことができる。
又は、利用可能参照サンプルの情報を用いて利用不可能サンプルを満たすことができる。このとき、隣接する利用可能サンプル値ではなく、任意の値で利用不可能サンプルを満たすことができる。前記任意の値は、利用可能サンプル値の平均値であってもよく、利用可能サンプル値の勾配(Gradient)を考慮した値であってもよい。又は、平均値と勾配の両方が使用されてもよい。前記勾配は、隣接する利用可能サンプルの差分値に基づいて決定できる。又は、前記平均値と利用可能サンプル値との差分値に基づいて決定されてもよい。前記平均値の他に、最大値、最小値、中央値又は任意の重みを用いた重み付け和が使用できる。前記任意の重みは、利用可能サンプルと利用不可能サンプルとの距離に基づいて決定できる。
これらの方法は、上側及び左側の参照サンプルの両方に適用されるか、或いは任意の方向に対してのみ適用できる。また、複数の復元サンプルラインを用いて現在ブロックの参照サンプルラインを構成する場合にも、これらの方法が適用できる。
現在ブロックの画面内予測モード又はブロックのサイズ/形状のうちの少なくとも一つに基づいて、前記構成した一つ以上の参照サンプルに対してフィルタリングを適用するか否かを決定することができる。フィルタリングを適用する場合には、前記現在ブロックの画面内予測モード、サイズ及び形状のうちの少なくとも一つに応じてフィルタの種類が変わり得る。
前記誘導された画面内予測モード及び参照サンプルに基づいて、前記現在ブロックに対する画面内予測を行うことができる。
DCモードの場合、前記構成した参照サンプルのうちの一つ以上の参照サンプルの平均値が使用できる。この際、現在ブロックの境界に位置する一つ以上の予測サンプルに対してフィルタリングが適用できる。DC予測は、現在ブロックのサイズ及び形状の少なくとも一つに基づいて異なるように行うことができる。例えば、現在ブロックのサイズ及び/又は形状に基づいて、DCモードに用いられる参照サンプルの範囲が特定できる。
図7は現在ブロックのサイズ及び/又は形状によるDC予測を説明するための図である。
図7の(a)に示すように、現在ブロックが正方形である場合、現在ブロックの上側と左側の参照サンプルの平均値を用いてDC予測を行うことができる。
現在ブロックが非正方形である場合、現在ブロックの左側又は上側に隣接する周辺サンプルが選択的に使用できる。例えば、図7の(b)に示すように、現在ブロックが長方形である場合、現在ブロックの横幅及び縦幅のうちの大きい方に隣接する参照サンプルの平均値を用いてDC予測を行うことができる。
又は、現在ブロックのサイズが所定のサイズであるか或いは所定の範囲に含まれる場合には、現在ブロックの上側又は左側の参照サンプルの中から所定のサンプルを選択し、選択されたサンプルの平均値を用いてDC予測を行うことができる。前記所定のサイズは、符号化器/復号化器で所定の固定サイズNxMを意味することができる。NとMは0よりも大きい整数であり、NとMは互いに同一でも異なってもよい。前記所定の範囲は、現在ブロックの参照サンプルを選択するための臨界値を意味することができる。前記臨界値は、最小値又は最大値の少なくとも一つで実現できる。最小値及び/又は最小値は、符号化器/復号化器で所定の固定値であってもよく、符号化器で符号化されてシグナリングされる可変値であってもよい。
前述したように、DC予測のためには一つ以上の参照サンプルの平均値が使用できる。平均値の演算のためには、参照サンプルの個数を用いた除算が実行できる。参照サンプルの個数が2n個である場合(nは正の整数)、前記除算はバイナリシフト演算で代替することができる。非正方形ブロックの場合、上側及び左側の参照サンプルをすべて用いると、参照サンプルの個数が2nではないことがある、この場合、除算演算の代わりにシフト演算が利用できない。したがって、前記実施形態での如く、上側又は左側の2n個の参照サンプルを用いることにより、除算をシフト演算で代替することができる。
プランナーモードの場合、前記現在ブロックの画面内予測対象サンプルの位置に応じて、前記構成した一つ以上の参照サンプルからの距離を考慮した重み付け和が使用できる。
方向性モードの場合、画面内予測対象サンプルの位置で所定の角度線上及び周辺に存在する一つ以上の参照サンプルが使用できる。
位置情報ベースの画面内予測モードの場合、符号化/復号化されるか或いは誘導される位置情報に基づいて生成される復元サンプルブロックを現在ブロックの画面内予測ブロックとして用いることができる。又は、復号化器が現在ブロックの画面内予測ブロックとして用いられる復元サンプルブロックを検索して誘導することができる。
色差信号に対する画面内予測は、現在ブロックの復元された輝度信号を用いて行われ得る。また、現在ブロックの復元された一つの色差信号Cb又はCbの残差信号を用いて、他の色差信号Crに対する画面内予測を行うこともできる。
前記一つ以上の予測方法を組み合わせて画面内予測を行うことができる。例えば、所定の非方向性画面内予測モードを用いて予測したブロックと、所定の方向性画面内予測モードを用いて予測したブロックとの重み付け和を介して、現在ブロックに対する画面内予測ブロックを構成することができる。このとき、重みは、現在ブロックの画面内予測モード、ブロックのサイズ及びサンプルの位置のうちの少なくとも一つによって異なるように適用できる。又は、色差ブロックの場合、所定の画面内予測モードを用いて予測したブロックと、輝度ブロックの復元された信号を用いて予測したブロックとの重み付け和を介して、前記色差ブロックに対する画面内予測ブロックを構成することができる。このとき、前記所定の画面内予測モードは、例えば、前記色差ブロックの画面内予測モードを誘導するために用いられるモードのいずれか一つであり得る。色差ブロックの場合、前述したように2つの予測ブロックの重み付け和を用いて最終予測ブロックを構成するかどうかは、符号化された情報によってシグナリングできる。
方向性モードの場合、方向性予測モードに基づいて、前記構成した参照サンプルを再構成することができる。例えば、前記方向性予測モードが左側及び上側に存在する参照サンプルをすべて用いるモードである場合、左側又は上側の参照サンプルに対して1次元配列を構成することができる。又は、左側参照サンプルを移動して上側の参照サンプルを構成することもでき、一つ以上の左側参照サンプルの重み付け和を用いて上側の参照サンプルを構成することもできる。
現在ブロックの所定のサンプルグループ単位で互いに異なる方向性画面内予測が行われてもよい。前記所定のサンプルグループ単位はブロック、サブブロック、ライン又は単一サンプルであり得る。
本発明に係る実施形態によれば、色成分(color component)間画面内予測を行うことができる。図8は色成分間画面内予測実行過程を説明するための図である。色成分間画面内予測は、色成分ブロック再構成ステップ(S810)、予測パラメータ誘導ステップ(S820)、及び/又は色成分間予測実行ステップ(S830)を含むことができる。前記色成分は、輝度(luma)信号、色差(chroma)信号、Red、Green、Blue、Y、Cb及びCrのうちの少なくとも一つを意味することができる。第2色成分、第3色成分及び第4色成分の少なくとも一つを用いて前記第1色成分に対する予測を行うことができる。このとき、予測に用いられる色成分の信号は、原本信号、復元された信号、残差/レジデュアル信号及び予測信号のうちの少なくとも一つであり得る。
第2色成分対象ブロックに対して画面内予測を行うとき、前記対象ブロックに対応する第1色成分対応ブロックのサンプル及び/又は対応ブロックの周辺ブロックのサンプルのうちの少なくとも一つのサンプルを用いることができる。例えば、色差成分ブロックCb又はCrに対して画面内予測を行うとき、前記色差成分ブロックに対応する復元された輝度成分ブロックYを用いることができる。又は、Cr成分ブロックに対して画面内予測を行うとき、Cb成分ブロックを用いることができる。又は、第4色成分ブロックに対して画面内予測を行うとき、前記ブロックに対応する第1色成分ブロック、第2色成分ブロック及び第3色成分ブロックのうちの少なくとも一つの組み合わせを用いることができる。
色成分間画面内予測を行うか否かは、現在対象ブロックのサイズ及び形状の少なくとも一つに基づいて決定できる。例えば、対象ブロックのサイズがCTUサイズであるか、所定のサイズ以上であるか或いは所定のサイズの範囲に該当する場合、前記対象ブロックに対して色成分間画面内予測を行うことができる。又は、対象ブロックの形状が所定の形状である場合、前記対象ブロックに対して色成分間画面内予測を行うことができる。前記所定の形状は正方形であり得る。この場合、対象ブロックが長方形であれば、色成分間画面内予測は行われなくてもよい。前記所定の形状が長方形である場合には、前述した実施形態は逆に動作することができる。
又は、色成分間画面内予測を行うか否かは、予測対象ブロックに対応する対応ブロック及び対応ブロックの周辺ブロックのうちの少なくとも一つの符号化パラメータに基づいて決定されてもよい。例えば、CIP(Constrained intra prediction)環境下で対応ブロックが画面間予測された場合、色成分間画面内予測は行われなくてもよい。又は、対応ブロックの画面内予測モードが所定のモードに該当する場合、色成分間画面内予測が行われ得る。又は、対応ブロック及び周辺ブロックのCBF情報のうちの少なくとも一つに基づいて、色成分間画面内予測を行うか否かを決定することもできる。前記符号化パラメータは、ブロックの予測モードに限定されず、符号化/復号化に使用できる前述した様々なパラメータが使用されてもよい。
以下、ステップS810の色成分ブロック再構成ステップについて説明する。
第1色成分ブロックを用いて第2色成分ブロックを予測するとき、前記第1色成分ブロックを再構成することができる。例えば、画像の色空間がYCbCrであり、色成分間の比率が4:4:4、4:2:2、4:2:0のうちのいずれかである場合、色成分間ブロックのサイズが互いに異なることがある。したがって、サイズの異なる第1色成分ブロックを用いて第2色成分ブロックを予測するとき、2つのブロックのサイズを同一にするために前記第1色成分ブロックを再構成することができる。このとき、再構成されたブロックは、前記第1色成分対応ブロックのサンプル及び周辺ブロックのサンプルのうちの少なくとも一つを含むことができる。図9は色成分ブロックの再構成を説明するための例示図である。
図9の(a)において、p1[x,y]は、第1色成分ブロックの(x,y)位置のサンプルを示すことができる。図9の(b)において、p1'[x,y]は、前記第1色成分ブロックを再構成したブロックの(x,y)位置のサンプルを示すことができる。
第1色成分ブロックのサイズが第2色成分ブロックのサイズよりも大きい場合、前記第1色成分ブロックをダウンサンプリング(down−sampling)して第2色成分ブロックのサイズと同じサイズのブロックに再構成することができる。前記ダウンサンプリングは、一つ以上のサンプルに対してN−tapフィルタを適用して行われ得る(Nは1以上の整数)。このとき、下記数式1乃至数式5のうちの少なくとも一つの数式が利用できる。複数のダウンサンプリング方法のいずれかが選択的に使用される場合、符号化器は、一つのダウンサンプリング方法を所定の方法として選択することができる。例えば、符号化器は、最適の効果を有するダウンサンプリング方法を選択することができる。選択されたダウンサンプリング方法は、符号化されて復号化器へシグナリングできる。シグナリングされる情報は、ダウンサンプリング方法を指示するインデックス情報であり得る。
[数式1]
p1’[x, y] = (p1[2x, 2y] + p1[2x, 2y+1] + 1) >> 1
[数式2]
p1’[x, y] = (p1[2x+1, 2y] + p1[2x+1, 2y+1] + 1) >> 1
[数式3]
p1’[x, y]= (p1[2x-1, 2y] + 2 x p1[2x, 2y] + p1[2x+1, 2y] + 2) >> 2
[数式4]
p1’[x, y] = (p1[2x-1, 2y+1] + 2 * p1[2x, 2y+1] + p1[2x+1, 2y+1] + 2) >> 2
[数式5]
p1’[x, y] = (p1[2x-1, 2y] + 2 * p1[2x, 2y] + p1[2x+1, 2y] + p1[2x-1, 2y+1] + 2 * p1[2x, 2y+1] + p1[2x+1, 2y+1] + 4) >> 3
2つ以上のサンプルを用いてダウンサンプリングを行う方法は、前記数式1乃至数式5の実施形態に限定されない。例えば、ダウンサンプリングされた値p1'[x,y]を計算するために使用できる2つ以上のサンプルは、p1[2x,2y]及びこれに隣接するサンプルから選択できる。前記隣接するサンプルは、p1[2x−1,2y−1]、p[2x−1,2y]、p1[2x−1,2y+1]、p1[2x,2y−1]、p1[2x,2y+1]、p1[2x+1,2y−1]、p1[2x+1、2y]及びp1[2x+1、2y+1]から選択できる。二つ以上のサンプルを用いて平均又は加重平均を計算することにより、ダウンサンプリングを行うことができる。
又は、前記ダウンサンプリングは、一つ以上のサンプルの中から特定のサンプルを選択して行われ得る。このとき、下記数式6乃至数式9のうちの少なくとも一つの数式が利用できる。
[数式6]
p1’[x, y] = p1[2x, 2y]
[数式7]
p1’[x, y] = p1[2x, 2y+1]
[数式8]
p1’[x, y] = p1[2x+1, 2y]
[数式9]
p1’[x, y] = p1[2x+1, 2y+1]
第1色成分ブロックのサイズが第2色成分ブロックのサイズよりも小さい場合、前記第1色成分ブロックをアップサンプリング(up−sampling)して第2色成分ブロックのサイズと同じサイズのブロックに再構成することができる。このとき、下記数式10が利用できる。
[数式10]
p1’[2x, 2y] = p1[x,y],
p1’[2x+1, 2y] = (p1[x, y] + p1[x+1, y]+1)>>1,
p1’[2x, 2y+1] = (p1[x, y] + p1[x, y+1]+1)>>1,
p1’[2x+1, 2y+1] = (p1[x+1, y] + p1[x, y+1]+1) >> 1
前記再構成過程を行うにあたり、一つ以上のサンプルに対してフィルタを適用することができる。例えば、前記第1色成分対応ブロック、対応ブロックの周辺ブロック、第2色成分対象ブロック、及び対象ブロックの周辺ブロックのうちの少なくとも一つに含まれた1つ以上のサンプルに対してフィルタを適用することができる。
前述した参照サンプル構成ステップで、複数の参照サンプルラインのうちの所定のラインに対応するインジケータがシグナリングできる。このとき、前記再構成過程では、前記シグナリングされたインジケータに該当する所定のラインを用いて再構成を行うことができる。
前記再構成過程を行うにあたり、第2色成分対象ブロックの境界又は対応する第1色成分対応ブロックの境界のうちの少なくとも1つが所定の領域の境界に該当する場合、再構成に用いられる参照サンプルを異なるように選択することができる。このとき、上側の参照サンプルラインの個数と左側の参照サンプルラインの個数とが互いに異なり得る。前記所定の領域は、例えば、ピクチャ、スライス、タイル、CTU及びCUの少なくとも一つであり得る。
例えば、前記第1色成分対応ブロックの上側境界が前記所定の領域の境界に該当する場合には、上側の参照サンプルは用いず、左側の参照サンプルだけを用いて再構成を行うことができる。前記第1色成分対応ブロックの左側境界が前記所定の領域の境界に該当する場合、左側の参照サンプルは用いず、上側の参照サンプルだけを用いて再構成を行うことができる。又は、N個の上側参照サンプルラインとM個の左側参照サンプルラインを用いることができ、このとき、NはMより小さくてもよい。例えば、上側境界が前記所定の領域の境界に該当する場合には、Nは1であり、左側の境界が前記所定の領域の境界に該当する場合には、Mは1であり得る。
又は、前記所定の領域の境界に該当するか否かを問わずに、前記第1色成分対応ブロックのN個の上側参照サンプルライン及び/又はM個の左側参照サンプルラインを用いて再構成を行うこともできる。
図10は複数の上側及び/又は左側の参照サンプルラインを用いて再構成を行う実施形態を説明するための図である。
図10の(a)に示すように、4つの上側参照サンプルライン及び4つの左側参照サンプルラインを用いて再構成を行うことができる。
例えば、第1色成分対応ブロックの上側又は左側の境界が前記所定の領域の境界に該当する場合、再構成に用いられる上側及び左側参照サンプルラインの個数は互いに異なり得る。例えば、図10の(b)乃至(d)に示すように、2つの上側参照サンプルライン及び4つの左側参照サンプルラインを用いるか、或いは1つの上側参照サンプルライン及び3つの左側参照サンプルラインを用いるか、或いは1つの上側参照サンプルライン及び2つの左側参照サンプルラインを用いることができる。
用いられる参照サンプルラインの数は、上記の例に限定されず、N個の上側参照サンプルラインとM個の左側参照サンプルラインが用いられてもよい。N、Mは同一でも異なってもよい。上側及び左側の境界がすべて前記所定領域の境界に該当する場合には、NとMは同一であり得るが、例えば1である。又は、同じ条件で、NはMよりも小さく設定できる。これは左側参照サンプルラインよりも上側参照サンプルラインの保存にさらに多くのリソース(メモリ)が必要だからである。
又は、図10の(e)に示すように、第1色成分対応ブロックの横幅及び縦幅から外れない一つ以上の参照サンプルを用いて再構成を行うこともできる。
前記再構成を行うにあたり、第1色成分対応ブロック及びその周辺ブロック、第2色成分対象ブロック及びその周辺ブロックのうちの少なくとも一つのブロックのサイズ、形状、符号化パラメータの少なくとも一つに応じて、第1色成分対応ブロックの参照サンプル再構成を異なるように行うことができる。
例えば、第1色成分対応ブロック又は周辺ブロックのうち、符号化モードが画面間符号化モードであるブロックのサンプルは用いず、画面内符号化モードであるブロックのサンプルを用いて参照サンプルを再構成することができる。
図11は対応ブロックの画面内予測モード又は符号化パラメータに応じて再構成に用いられる参照サンプルを説明するための例示図である。第1色成分対応ブロックの画面内予測モードに応じて、第1色成分ブロックの参照サンプルの再構成を異なるように行うことができる。例えば、対応ブロックの画面内予測モードがDCモード又はPlanarモードのように非方向性モードであるか、上側参照サンプルと左側参照サンプルの両方を用いる方向性モードである場合、図11の(a)に示すように、上側及び左側に存在する参照サンプルのうちの少なくとも1つを用いて再構成を行うことができる。又は、対応ブロックの画面内予測モードが上側参照サンプルと右上側参照サンプルを用いる方向性モードである場合、図11の(b)に示すように、上側及び右上側に存在する参照サンプルのうちの少なくとも一つを用いて再構成を行うことができる。又は、対応ブロックの画面内予測モードが左側及び左下側の参照サンプルを用いる方向性モードである場合、図11の(c)に示すように、左側及び左下側に存在する参照サンプルのうちの少なくとも一つを用いて再構成を行うことができる。
又は、第1色成分対応ブロック又は周辺ブロックのうちの少なくとも一つの量子化パラメータに応じて、第1色成分対応ブロックの参照サンプルの再構成を異なるように行うことができる。例えば、図11の(d)に示すように、周辺ブロックの量子化パラメータ値(QP)が相対的に小さい上側ブロックに属する参照サンプルを用いて再構成を行うことができる。
又は、第2色成分対象ブロックの形状が長方形である場合には、正方形である第1色成分対応ブロック周辺の参照サンプルを用いて再構成を行うことができる。
又は、第2色成分対象ブロックが2つのブロック(例えば、2つの16x8ブロック)に分割され、第1色成分対応ブロックは、例えば、32x16ブロックである場合には、32x32ブロックの周辺の参照サンプルを用いて再構成を行うことができる。この時、前記第2色成分対応ブロックのうち下側に位置する2番目の16x8ブロックに対応する第1色成分ブロックの参照サンプルとして、前記再構成した32x32ブロックの周辺の参照サンプルを共有することができる。
以下、ステップS820の予測パラメータ誘導ステップについて説明する。
前記再構成した第1色成分対応ブロックの参照サンプルと第2色成分予測対象ブロックの参照サンプルのうちの少なくとも一つを用いて予測パラメータを誘導することができる。以下、第1色成分及び第1色成分ブロックは、再構成した第1色成分及び再構成した第1色成分ブロックを意味することができる。
図12は、第2色成分予測対象ブロックが4x4である場合、再構成された第1色成分対応ブロックを説明するための例示図である。このとき、参照サンプルラインはN個であり得る。
予測パラメータは、図12の(a)に示すように、再構成された第1色成分対応ブロック又は第2色成分予測対象ブロックの上側と左側の参照サンプルを用いて誘導できる。
例えば、予測パラメータは、第1色成分対応ブロックの画面内予測モードに基づいて、前記再構成された第1色成分の参照サンプルを適応的に用いることにより誘導できる。このとき、第2色成分参照サンプルも、前記第1色成分対応ブロックの画面内予測モードに基づいて適応的に使用できる。
第1色成分対応ブロックの画面内予測モードがDCモード又はPlanarモードのように非方向性モードであるか、或いは上側参照サンプルと左側参照サンプルの両方を用いる方向性モードである場合、図12の(a)に示すように、第1色成分対応ブロックの上側と左側参照サンプルを用いることができる。
第1色成分対応ブロックの画面内予測モードが上側参照サンプルを用いる方向性モードである場合、図12の(b)又は(c)に示すように、第1色成分対応ブロックの上側参照サンプルを用いることができる。
第1色成分対応ブロックの画面内予測モードが左側参照サンプルを用いる方向性モードである場合、図12の(d)又は(e)に示すように、第1色成分対応ブロックの左側参照サンプルを用いることができる。
又は、第1色成分対応ブロックの画面内予測モードが方向性モードである場合、各モードごとに予測に利用する参照サンプルを前記第1色成分の参照サンプルとして用いることができる。例えば、前記画面内予測モードが垂直モードであれば、図12の(b)に示された参照サンプルを用いることができる。前記画面内予測モードが水平モードであれば、図12の(d)に示された参照サンプルを用いることができる。前記画面内予測モードが右上対角線モードであれば、図12の(c)に示された参照サンプルを用いることができる。前記画面内予測モードが左下対角線モードであれば、図12の(e)に示された参照サンプルを用いることができる。前記画面内予測モードが垂直モードと右上対角線モードとの間に存在するモードであれば、図12の(f)に示された参照サンプルを用いることができる。前記画面内予測モードが45度の対角線に該当する方向性モードである場合、図12の(g)に示すように右上側又は左下側の参照サンプルの少なくとも一つを用いることができる。画面内予測モードに応じて用いられる参照サンプルは、ルックアップテーブル(Look−up table)の形で保存して用いることができる。
予測パラメータの誘導は、第1色成分ブロック及び/又は第2色成分ブロックのサイズ及び/又は形状に応じて、前記第1色成分又は第2色成分の参照サンプルを適応的に用いて行われ得る。
例えば、前記第2色成分対象ブロックのサイズが64x64である場合、前記第1色成分又は第2色成分ブロックの上側又は左側の参照サンプルのうちの32個、16個又は8個の参照サンプルが使用できる。上述の如く、第2色成分対象ブロックのサイズが所定のサイズに該当する場合、前記第1又は第2色成分ブロックの参照サンプルが適応的に使用できる。前記所定のサイズは、64x64に限定されず、ビットストリームを介してシグナリングされるか、或いは現在ブロック及び周辺ブロックの符号化パラメータに基づいて誘導されるサイズであり得る。
又は、第2色成分対象ブロックの形状が長方形である場合、横及び縦のうちの長い方に隣接する参照サンプルが使用できる。例えば、前記対象ブロックの形状が32x8である場合、前記第1色成分又は第2色成分ブロックの上側参照サンプルが使用できる。
又は、第2色成分対象ブロックの形状が長方形である場合、正方形ブロックの参照サンプルを用いることができる。例えば、前記対象ブロックの形状が32x8である場合、32x32ブロックの周辺に位置する参照サンプルが使用できる。
予測パラメータの誘導は、前記再構成された第1色成分ブロックの参照サンプル及び第2色成分ブロックの参照サンプルを用いて行われ得る。前記色成分の参照サンプル間の関連性、変化量、平均値及び分布などの少なくとも一つに基づいて予測パラメータが誘導できる。この際、LS(Least Square)やLMS(Least Mean Square)などの方法のうちの少なくとも一つが使用できる。
LMS方法を用いて予測パラメータを誘導する場合、予測パラメータはa、b又はアルファ、ベータのうちの少なくとも一つであり得る。下記数式11を用いて、第1色成分参照サンプルと第2色成分参照サンプル間のエラーを最小化する予測パラメータを誘導することができる。
前記数式11において、p2nは第2色成分参照サンプルを示し、p1’nは再構成された第1色成分の参照サンプルを示すことができる。Nは用いられる参照サンプルの横又は縦の個数を示し、a及びbは予測パラメータを示すことができる。
このとき、下記数式12を用いて、参照サンプル間の関連性を計算することができる。
前記数式12において、BitDepthはビット深度を示すことができる。p1’は再構成された第1色成分のサンプルを示し、p2は第2色成分のサンプルを示すことができる。図13は第1色成分のサンプル及び第2色成分のサンプルを説明するための図である。
予測パラメータを誘導するとき、参照サンプルが存在しない領域がある場合、存在する参照サンプルだけを用いて予測パラメータを誘導することができる。
前記予測パラメータを一つ以上誘導することができる。例えば、前記予測パラメータを誘導するために用いる参照サンプルの値が特定の条件を満たす参照サンプルから、第1予測パラメータを誘導することができる。また、前記特定の条件を満たさない参照サンプルから第2予測パラメータを誘導することができる。前記特定の条件は、参照サンプルの値が参照サンプルの統計値(例えば、平均値)よりも小さい場合に該当することができる。
本発明の他の実施形態によれば、参照サンプルを用いて予測パラメータを誘導せず、基本予測パラメータ(default parameter)が使用されることもある。前記基本予測パラメータは符号化器と復号化器で既に定義できる。例えば、予測パラメータa、bはそれぞれ1、0であり得る。
又は、予測パラメータが誘導される場合、誘導された予測パラメータは符号化/復号化できる。
Y、Cb、Cr間の色成分間予測を行う場合、CbとCrを予測するための予測パラメータをYからそれぞれ誘導することもできる。又は、Crを予測するための予測パラメータをCbから誘導することができる。又は、Crを予測するための予測パラメータを誘導せず、Cbを予測するためにYから誘導した予測パラメータを用いることができる。
以下、ステップS830の色成分間予測実行ステップについて説明する。
前述したように、予測パラメータが誘導されると、誘導された予測パラメータのうちの少なくとも一つを用いて色成分間画面内予測を行うことができる。
例えば、下記数式13を用いて、再構成された第1色成分の復元された信号に、前記誘導された予測パラメータを適用することにより、第2色成分対象ブロックに対する予測を行うことができる。
前記数式13において、p2[x,y]は第2色成分対象ブロックの予測ブロックであり得る。p1’[x,y]は第1色成分ブロック又は再構成された第1色成分ブロックであり得る。
又は、下記数式14を用いて、再構成された第1色成分の残差信号に、前記誘導された予測パラメータを適用することにより、第2色成分対象ブロックに対する予測を行うこともできる。
前記数式14において、p1'_residualは第1色成分の残差信号を示すことができる。また、p2_predは第2色成分対象ブロックに対して画面内予測を行って予測した信号を示すことができる。
前記誘導した予測パラメータが一つ以上である場合には、前記第1色成分の復元されたサンプルに前記一つ以上の予測パラメータを適用することができる。例えば、前記第1色成分の復元されたサンプルが特定の条件を満足する場合には、前記特定の条件を満足する参照サンプルから誘導された第1予測パラメータを適用して、色成分間画面内予測を行うことができる。また、前記第1色成分の復元されたサンプルが前記特定の条件を満足しない場合、前記特定の条件を満足しない参照サンプルから誘導された第2予測パラメータを適用して、色成分間画面内予測を行うことができる。前記特定の条件は、参照サンプルの値が前記第1色成分の参照サンプルの統計値(例えば、平均値)よりも小さい場合に該当することができる。
前記色成分間予測方法は、画面間予測モードにも適用することができる。たとえば、現在ブロックに対する画面間予測を行うにあたり、第1色成分に対しては画面間予測を行い、第2色成分に対しては色成分間予測を行うことができる。例えば、前記第1色成分は輝度成分であり、第2色成分は色差成分であり得る。また、前記色成分間予測は、第1色成分の符号化パラメータに応じて適応的に行うことができる。例えば、前記第1色成分のCBF情報に基づいて、前記色成分間予測を行うか否かを決定することができる。前記CBF情報は残差信号の存否を示す情報であり得る。すなわち、前記第1色成分のCBFが1である場合、第2色成分に対して色成分間予測を行うことができる。前記第1色成分のCBFが0である場合には、第2色成分に対して色成分間予測を行わずに、前記画面間予測を行うことができる。又は、前記色成分間予測を行うか否かを示すフラグをシグナリングすることができる。
これらの実施形態は、符号化器及び復号化器で同様の方法で行われ得る。
これらの実施形態を適用する順序は、符号化器と復号化器で互いに異なってもよく、前記実施形態を適用する順序は、符号化器と復号化器で同一であってもよい。
輝度及び色差信号それぞれに対して前記実施形態を行うことができ、輝度及び色差信号に対する前記実施形態を同様に行うことができる。
上述した本発明の実施形態が適用されるブロックの形状は、正方形(square)あるいは非正方形(non−square)の形状を有することができる。
上述した本発明の実施形態は、符号化ブロック、予測ブロック、変換ブロック、ブロック、現在ブロック、符号化ユニット、予測ユニット、変換ユニット、ユニット、及び現在ユニットのうちの少なくとも一つのサイズに応じて適用できる。ここでのサイズは、これらの実施形態が適用されるために、最小サイズ及び/又は最大サイズと定義されることもあり、前記実施形態が適用される固定サイズと定義されることもある。また、これらの実施形態は、第1のサイズでは第1実施形態が適用でき、第2のサイズでは第2実施形態が適用できる。すなわち、これらの実施形態は、大きさに応じて複合的に適用できる。また、上述した本発明の実施形態は、最小サイズ以上及び最大サイズ以下の場合にのみ適用できる。すなわち、これらの実施形態を、ブロックのサイズが一定の範囲内に含まれる場合にのみ適用可能である。
例えば、現在ブロックのサイズが8x8以上である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが4x4である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが16x16以下である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが16x16以上、64×64以下である場合にのみ、前記実施形態が適用できる。
上述した本発明の実施形態は、時間的階層(temporal layer)に応じて適用できる。これらの実施形態が適用可能な時間的階層を識別するために、別途の識別子(identifier)がシグナリングされ、該当識別子によって特定された時間的階層に対してこれらの実施形態が適用できる。ここでの識別子は、前記実施形態に適用可能な最下位階層及び/又は最上位階層と定義されることもあり、前記実施形態が適用される特定の階層を指し示すものと定義されることもある。また、前記実施形態が適用される固定された時間的階層が定義されることもある。
例えば、現在画像の時間的階層が最下位階層である場合にのみ、前記実施形態が適用できる。例えば、現在画像の時間的階層識別子が1以上である場合にのみ、前記実施形態が適用できる。例えば、現在画像の時間的階層が最上位階層である場合にのみ、前記実施形態が適用できる。
上述した本発明の実施形態が適用されるスライスタイプ(slice type)が定義され、当該スライスタイプに応じて本発明の実施形態が適用できる。
上述した実施形態において、これらの方法は、一連のステップ又はユニットでフローチャートに基づいて説明されているが、本発明は、これらのステップの順序に限定されるものではなく、あるステップは、上述したのとは異なるステップと異なる順序で又は同時に発生することができる。また、当該技術分野における通常の知識を有する者であれば、フローチャートに示されたステップが排他的ではなく、他のステップが含まれるか、フローチャートの一つ又はそれ以上のステップが本発明の範囲に影響することなく削除できることを理解することができるだろう。
上述した実施形態は、様々な態様の例示を含む。様々な態様を示すためのすべての可能な組み合わせを記述することはできないが、当該技術分野における通常の知識を有する者は、他の組み合わせが可能であることを認識することができるだろう。よって、本発明は、以下の特許請求の範囲内に属するすべての様々な交替、修正及び変更を含むといえる。
以上説明した本発明に係る実施形態は、様々なコンピュータ構成要素を介して実行できるプログラム命令の形で実現され、コンピュータ可読記録媒体に記録できる。前記コンピュータ可読記録媒体は、プログラム命令、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記コンピュータ可読記録媒体に記録されるプログラム命令は、本発明のために特別に設計及び構成されたもの、又はコンピュータソフトウェア分野の当業者に公知されて使用可能なものである。コンピュータ可読記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープなどの磁気媒体、CD−ROM、DVDなどの光記録媒体、フロプティカルディスク(floptical disk)などの磁気−光媒体(magneto−optical media)、及びROM、RAM、フラッシュメモリなどのプログラム命令を保存し実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラによって作られる機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行できる高級言語コードも含まれる。前記ハードウェア装置は、本発明に係る処理を行うために一つ以上のソフトウェアモジュールとして作動するように構成でき、その逆も同様である。
以上で、本発明が、具体的な構成要素などの特定の事項、限定された実施形態及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものに過ぎず、本発明はこれらの実施形態に限定されるものではない。本発明の属する技術分野における通常の知識を有する者であれば、このような記載から多様な修正及び変形を図ることができる。
よって、本発明の思想は、上述した実施形態に限定されて定められてはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等に又は等価的に変形したすべてのものは本発明の思想の範疇に属するというべきである。
本発明は、画像を符号化/復号化することに利用可能である。
本発明は、画像符号化/復号方法、装置及びビットストリームを記憶した記録媒体に関する。具体的には、本発明は、画面内予測を用いた画像符号化/復号方法、装置、及び本発明の画像符号化方法又は装置によって生成されたビットストリームを記憶した記録媒体に関する。
最近、高解像度、高品質の画像、例えばHD(High Definition)画像及びUHD(Ultra High Definition)画像への需要が多様な応用分野で増加している。画像データが高解像度、高品質になるほど、従来の画像データに比べて相対的にデータ量が増加するので、従来の有線・無線ブロードバンド回線などの媒体を用いて画像データを伝送したり従来の記憶媒体を用いて記憶したりする場合には、伝送費用と記憶費用が増加することになる。このような画像データの高解像度、高品質化に伴って発生する問題を解決するためには、より高い解像度及び画質を有する画像に対する高効率画像符号化(encoding)/復号(decoding)技術が求められる。
画像圧縮技術として、現在ピクチャの以前又は以後のピクチャから、現在ピクチャに含まれている画素値を予測する画面間(inter)予測技術、現在ピクチャ内の画素情報を用いて、現在ピクチャに含まれている画素値を予測する画面内(intra)予測技術、残余信号のエネルギーを圧縮するための変換及び量子化技術、出現頻度の高い値に短い符号を割り当て、出現頻度の低い値に長い符号を割り当てるエントロピー符号化技術などの様々な技術が存在し、このような画像圧縮技術を利用して画像データを効果的に圧縮して伝送又は記憶することができる。
本発明は、圧縮効率が向上した画像符号化/復号方法及び装置を提供することを目的とする。
また、本発明は、圧縮効率が向上した画面内予測を用いた画像符号化/復号方法及び装置を提供することを目的とする。
また、本発明は、本発明の画像符号化/復号方法又は装置によって生成されたビットストリームを記憶した記録媒体を提供することを目的とする。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画像復号方法は、前記第1色成分ブロックを用いて予測パラメータを導出するステップと、前記導出された予測パラメータを用いて前記第2色成分ブロックを予測するステップとを含むことができる。
本発明に係る画像復号方法において、前記第1色成分ブロックは輝度ブロックであり、前記第2色成分ブロックは色差ブロックであり得る。
本発明に係る画像復号方法において、前記第2色成分ブロックのサイズ又は形状に基づいて、前記第1色成分ブロックを用いた第2色成分ブロックの予測を行うか否かを決定するステップをさらに含むことができる。
本発明に係る画像復号方法において、前記第1色成分ブロックのサイズ及び前記第2色成分ブロックのサイズに基づいて、前記第1色成分ブロックを再構成するステップをさらに含むことができる。
本発明に係る画像復号方法において、前記第1色成分ブロックのサイズが前記第2色成分ブロックのサイズよりも大きい場合、前記第1色成分ブロックを再構成するステップは、前記第1色成分ブロックをダウンサンプリングするステップを含むことができる。
本発明に係る画像復号方法において、前記第1色成分ブロックのサイズが前記第2色成分ブロックのサイズよりも小さい場合、前記第1色成分ブロックを再構成するステップは、前記第1色成分ブロックをアップサンプリングするステップを含むことができる。
本発明に係る画像復号方法において、前記第1色成分ブロックを再構成するステップは、前記第1色成分ブロックの境界又は前記第2色成分ブロックの境界が所定の画像領域の境界に該当するかに基づいて行われ得る。
本発明に係る画像復号方法において、前記所定の画像領域は、ピクチャ、スライス、タイル、CTU及びCUのうちの少なくとも一つであり得る。
本発明に係る画像復号方法において、前記第1色成分ブロックの境界又は前記第2色成分ブロックの境界が所定の画像領域の境界に該当する場合、前記第1色成分ブロックの再構成に用いられる上側参照サンプルラインの数と左側参照サンプルラインの数とは互いに異なり得る。
本発明に係る画像復号方法において、前記第1色成分ブロックの再構成に用いられる参照サンプルは、前記第1色成分ブロックの画面内予測モードに基づいて決定できる。
本発明に係る画像復号方法において、前記第1色成分ブロックの再構成に用いられる参照サンプルは、前記第1色成分ブロックの近傍ブロックの量子化パラメータに基づいて決定できる。
本発明に係る画像復号方法において、前記第1色成分ブロックが正方形であり、前記第2色成分ブロックは長方形である場合、前記第1色成分ブロックの構成に用いられる参照サンプルは、前記正方形である第1色成分ブロックの近傍の参照サンプルであり得る。
本発明に係る画像復号方法において、前記予測パラメータを導出するステップは、前記第1色成分ブロックの参照サンプルと前記第2色成分ブロックの参照サンプルのうちの少なくとも一つを用いて行われ得る。
本発明に係る画像復号方法において、前記予測パラメータを導出することに用いられる前記参照サンプルは、前記第1色成分ブロックの画面内予測モードに基づいて決定できる。
本発明に係る画像復号方法において、前記予測パラメータを導出することに用いられる前記参照サンプルは、前記第1色成分ブロック又は前記第2色成分ブロックのサイズ又は形状に基づいて決定できる。
本発明に係る画像復号方法において、前記予測パラメータを導出するステップは、前記第1色成分ブロックの参照サンプルと前記第2色成分ブロックの参照サンプルとの関連性、変化量、平均値及び分布のうちの少なくとも一つに基づいて行われ得る。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画面内予測部を含む画像復号装置において、前記画面内予測部は、前記第1色成分ブロックを用いて予測パラメータを導出し、前記導出された予測パラメータを用いて前記第2色成分ブロックを予測することができる。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画像符号化方法は、前記第1色成分ブロックを用いて予測パラメータを導出するステップと、前記導出された予測パラメータを用いて前記第2色成分ブロックを予測するステップとを含むことができる。
本発明に係る、第1色成分ブロックを用いて第2色成分ブロックを予測する画面内予測部を含む画像符号化装置において、前記画面内予測部は、前記第1色成分ブロックを用いて予測パラメータを導出し、前記導出された予測パラメータを用いて前記第2色成分ブロックを予測することができる。
本発明に係る記録媒体は、本発明に係る画像符号化方法によって生成されたビットストリームを記憶することができる。
本発明によれば、圧縮効率が向上した画像符号化/復号方法及び装置が提供できる。
また、本発明によれば、圧縮効率が向上した画面内予測を用いた画像符号化/復号方法及び装置が提供できる。
また、本発明によれば、本発明の画像符号化/復号方法又は装置によって生成されたビットストリームを記憶した記録媒体が提供できる。
本発明が適用される符号化装置の一実施形態に係る構成を示すブロック図である。
本発明が適用される復号装置の一実施形態に係る構成を示すブロック図である。
画像を符号化及び復号するときの画像の分割構造を示す概略図である。
画面内予測処理の実施形態を説明するための図である。
本発明に係る画面内予測を説明するための図である。
輝度ブロックと色差ブロックとの関係を説明するための例示図である。
現在ブロックのサイズ及び/又は形状によるDC予測を説明するための図である。
色成分間画面内予測実行処理を説明するための図である。
色成分ブロックの再構成を説明するための例示図である。
複数の上側及び/又は左側の参照サンプルラインを用いて再構成を行う実施形態を説明するための図である。
対応ブロックの画面内予測モード又は符号化パラメータに応じて再構成に用いられる参照サンプルを説明するための例示図である。
第2色成分予測対象ブロックが4x4である場合、再構成された第1色成分対応ブロックを説明するための例示図である。
第1色成分のサンプル及び第2色成分のサンプルを説明するための図である。
本発明は、様々な変更を加えることができ、様々な実施形態を有することができるので、特定の実施形態を図面に例示し、詳細な説明に詳細に説明する。ところが、これは本発明を特定の実施形態について限定するものではなく、本発明の思想及び技術範囲に含まれるすべての変更、均等物ないし代替物を含むものと理解されるべきである。図面において類似する参照符号は、様々な側面にわたって同一又は類似の機能を指し示す。図面における要素の形状及び大きさなどは、より明確な説明のために誇張することがある。後述する例示的実施形態についての詳細な説明は、特定の実施形態を例示として示す添付図面を参照する。これらの実施形態は、当業者が実施形態を実施し得る程度に十分に詳細に説明される。様々な実施形態は、互いに異なるが、相互排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施形態に関連して本発明の精神及び範囲を逸脱することなく、様々な実施形態に実現できる。また、それぞれの開示された実施形態内の個別構成要素の位置又は配置は実施形態の精神及び範囲を逸脱することなく変更可能であることが理解されるべきである。したがって、後述する詳細な説明は、限定的な意味として取るものではなく、例示的な実施形態の範囲は、適切に説明されるならば、それらの請求項が主張するのと均等なすべての範囲及び添付の請求項によってのみ限定される。
本発明において、用語「第1」、「第2」などは多様な構成要素の説明に使用できるが、これらの構成要素は上記の用語により限定されてはならない。これらの用語は、一つの構成要素を他の構成要素から区別する目的にのみ使われる。例えば、本発明の権利範囲を外れない限り、第1構成要素は第2構成要素と命名することができ、同様に、第2構成要素も第1構成要素と命名することができる。用語「及び/又は」は、複数の関連した記載項目の組み合わせ又は複数の関連した記載項目のいずれかを含む。
本発明のある構成要素が他の構成要素に「連結されて」いる或いは「接続されて」いるとした場合、その他の構成要素に直接連結されている或いは接続されていることもあるが、それらの間に別の構成要素が介在することもあると理解されるべきである。これに対し、ある構成要素が他の構成要素に「直接連結されて」いる或いは「直接接続されて」いるとした場合には、それらの間に別の構成要素が介在しないと理解されるべきである。
本発明の実施形態に示す構成部は、互いに異なる特徴的な機能を示すために独立に図示されるもので、各構成部が分離されたハードウェア又は一つのソフトウェア構成単位からなることを意味しない。すなわち、各構成部は、説明の便宜上、それぞれの構成部に羅列して含むもので、各構成部のうちの少なくとも2つの構成部が合わせられて一つの構成部をなすか、或いは一つの各構成部が複数の構成部に分けられて機能を行うことができ、このような各構成部の統合された実施形態及び分離された実施形態も本発明の本質から外れない限り、本発明の権利範囲に含まれる。
本発明で使用した用語は、単に特定の実施形態を説明するために使われたものであり、本発明を限定するものではない。単数の表現は、文脈上明白に異なる意味ではない限り、複数の表現を含む。本発明において、「含む」又は「有する」などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品又はこれらの組み合わせが存在することを指定するものであり、一つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品又はこれらの組み合わせの存在又は付加可能性を予め排除しないと理解すべきである。つまり、本発明において、特定の構成を「含む」と記述する内容は、該当構成以外の構成を排除するものではなく、追加の構成が本発明の実施又は本発明の技術的思想の範囲に含まれ得ることを意味する。
本発明の一部の構成要素は、本発明において本質的な機能を行う不可欠の構成要素ではなく、単に性能を向上させるための選択的構成要素であり得る。本発明は、単に性能向上のために使用される構成要素を除く、本発明の本質の実現に必要不可欠な構成部のみを含めて実現でき、単に性能向上のために使用される選択的構成要素を除く必須構成要素のみを含む構造も本発明の権利範囲に含まれる。
以下、図面を参照して、本発明の実施形態について具体的に説明する。本明細書の実施形態を説明するにあたり、関連した公知の構成又は機能についての具体的な説明が本明細書の要旨を曖昧にするおそれがあると判断された場合、その詳細な説明は省略し、図面上の同一の構成要素については同一の参照符号を使用し、同一の構成要素についての重複説明は省略する。
また、以下において、画像は動画像(video)を構成する一つのピクチャを意味することもあり、動画像自体を示すこともある。例えば、「画像の符号化及び/又は復号」は、「ビデオの符号化及び/又は復号」を意味することができ、「ビデオを構成する画像のうちの一つの画像の符号化及び/又は復号」を意味することもできる。ここで、ピクチャは画像と同じ意味を持つことができる。
用語説明
符号化器(Encoder):符号化(Encoding)を行う装置を意味する。
復号器(Decoder):復号(Decoding))を行う装置を意味する。
ブロック(Block):サンプル(Sample)のMxN配列である。
ここで、MとNは正の整数値を意味し、ブロックは一般に2次元形状のサンプル配列を意味することができる。ブロックはユニットを意味することができる。現在ブロックは、符号化の際に符号化の対象となる符号化対象ブロック、復号の際に復号の対象となる復号対象ブロックを意味することができる。また、現在ブロックは符号化ブロック、予測ブロック、残余ブロック及び変換ブロックの少なくとも一つであり得る。
サンプル(Sample):ブロックを構成する基本単位である。ビット深度(bit depth、Bd)に応じて0から2Bd−1までの値で表現できる。本発明において、サンプルは画素又はピクセルと同じ意味で使用できる。
ユニット(Unit):画像符号化及び復号の単位を意味する。画像の符号化及び復号において、ユニットは、一つの画像を分割した領域であり得る。また、ユニットは、一つの画像を細分化されたユニットに分割して符号化或いは復号するとき、その分割された単位を意味することができる。画像の符号化及び復号において、ユニットごとに、予め定義された処理が実行できる。一つのユニットは、ユニットに比べてより小さい大きさを持つ下位ユニットにさらに分割できる。機能によって、ユニットは、ブロック(Block)、マクロブロック(Macroblock)、符号化ツリーユニット(Coding Tree Unit)、符号化ツリーブロック(Coding Tree Block)、符号化ユニット(Coding Unit)、符号化ブロック(Coding Block)、予測ユニット(Prediction Unit)、予測ブロック(Prediction Block)、残余ユニット(Residual Unit)、残余ブロック(Residual Block)、変換ユニット(Transform Unit)、変換ブロック(Transform Block)などを意味することができる。また、ユニットは、ブロックと区分して指し示すために、輝度(Luma)成分ブロック、それに対応する色差(Chroma)成分ブロック、及び各ブロックに対する構文要素を含むことを意味することができる。ユニットは、様々なサイズと形状を持つことができ、特に、ユニットの形状は、長方形だけでなく、正方形、台形、三角形、五角形など、2次元的に表現できる幾何学的図形を含むことができる。また、ユニット情報は、符号化ユニット、予測ユニット、残余ユニット、変換ユニットなどを指し示すユニットのタイプ、ユニットのサイズ、ユニットの深さ、ユニットの符号化及び復号順序などのうちの少なくとも一つを含むことができる。
符号化ツリーユニット(Coding Tree Unit):一つの輝度成分(Y)符号化ツリーブロックに関連する2つの色差成分(Cb、Cr)符号化ツリーブロックで構成される。また、前記ブロックと各ブロックに対する構文要素を含むことを意味することもできる。各符号化ツリーユニットは、符号化ユニット、予測ユニット、変換ユニットなどの下位ユニットを構成するために4分木(quad tree)、2分木(binary tree)などの一つ以上の分割方式を用いて分割できる。入力画像の分割のように画像の復号/符号化処理で処理単位となるピクセルブロックを示すための用語として使用できる。
符号化ツリーブロック(Coding Tree Block):Y符号化ツリーブロック、Cb符号化ツリーブロック及びCr符号化ツリーブロックのうちのいずれかを示すための用語として使用できる。
近傍ブロック(Neighbor block):現在ブロックに隣接するブロックを意味する。現在ブロックに隣接するブロックは、現在ブロックに境界が当接するブロック、又は現在ブロックから所定の距離内にあるブロックを意味することができる。近傍ブロックは、現在ブロックの頂点に隣接するブロックを意味することができる。ここで、現在ブロックの頂点に隣接するブロックとは、現在ブロックに横方向に隣接する隣接ブロックに縦方向に隣接するブロック、又は現在ブロックに縦方向に隣接する隣接ブロックに横方向に隣接するブロックであり得る。近傍ブロックは、再構成された近傍ブロックを意味することもできる。
再構成された近傍ブロック(Reconstructed Neighbor Block):現在ブロックの近傍に空間的(Spatial)/時間的(Temporal)に既に符号化或いは復号された近傍ブロックを意味する。このとき、再構成された近傍ブロックは、再構成された近傍ユニットを意味することができる。再構成された空間的近傍ブロックは、現在ピクチャ内のブロックでありながら符号化及び/又は復号を介して既に再構成されたブロックであり得る。再構成された時間的近傍ブロックは、参照ピクチャ内で現在ピクチャの現在ブロックと同じ位置の再構成されたブロック又はその近傍ブロックであり得る。
ユニット深さ(Depth):ユニットが分割された程度を意味する。ツリー構造(Tree Structure)において、ルートノード(Root Node)は深さが最も浅く、リーフノード(Leaf Node)は深さが最も深いといえる。また、ユニットをツリー構造で表現したときにユニットが存在するレベル(Level)がユニット深さを意味することができる。
ビットストリーム(Bitstream):符号化された画像情報を含むビットの列を意味する。
パラメータセット(Parameter Set):ビットストリーム内の構造のうちのヘッダー情報に該当する。ビデオパラメータセット(video parameter set)、シーケンスパラメータセット(sequence parameter set)、ピクチャパラメータセット(picture parameter set)、及び適応パラメータセット(adaptation parameter set)のうちの少なくとも一つがパラメータセットに含まれ得る。また、パラメータセットはスライス(slice)ヘッダー及びタイル(tile)ヘッダー情報を含むこともできる。
パーシング(Parsing):ビットストリームをエントロピー復号して構文要素(Syntax Element)の値を決定することを意味するか、或いはエントロピー復号自体を意味することができる。
シンボル(Symbol):符号化/復号対象ユニットの構文要素、符号化パラメータ(coding parameter)、及び変換係数(Transform Coefficient)の値などの少なくとも一つを意味することができる。また、シンボルはエントロピー符号化の対象或いはエントロピー復号の結果を意味することができる。
予測ユニット(Prediction Unit):画面間予測、画面内予測、画面間補償、画面内補償、動き補償など、予測を行うときの基本ユニットを意味する。一つの予測ユニットは、大きさが小さい複数のパーティション(Partition)又は下位予測ユニットに分割されることも可能である。
予測ユニットパーティション(Prediction Unit Partition):予測ユニットが分割された形状を意味することができる。
変換ユニット(Transform Unit):変換、逆変換、量子化、逆量子化、変換係数符号化/復号のように残余信号(residual signal)符号化/復号を行うときの基本ユニットを意味する。一つの変換ユニットは、分割されて大きさが小さい複数の変換ユニットに分割できる。
図1は本発明が適用される符号化装置の一実施形態に係る構成を示すブロック図である。
符号化装置100は、エンコーダ、ビデオ符号化装置又は画像符号化装置であり得る。ビデオは一つ以上の画像を含むことができる。符号化装置100は一つ以上の画像を順次符号化することができる。
図1を参照すると、符号化装置100は、動き予測部111、動き補償部112、イントラ予測部120、スイッチ115、減算器125、変換部130、量子化部140、エントロピー符号化部150、逆量子化部160、逆変換部170、加算器175、フィルタ部180、及び参照ピクチャバッファ190を含むことができる。
符号化装置100は、入力画像に対してイントラモード及び/又はインターモードで符号化を行うことができる。また、符号化装置100は、入力画像に対する符号化を介してビットストリームを生成することができ、生成されたビットストリームを出力することができる。生成されたビットストリームは、コンピュータ可読の記録媒体に記憶されるか、或いは有/無線伝送媒体を介してストリーミングできる。予測モードとしてイントラモードが使用される場合、スイッチ115はイントラに切り替えることができ、予測モードとしてインターモードが使用される場合、スイッチ115はインターに切り替えることができる。ここで、イントラモードは画面内予測モードを意味することができ、インターモードは画面間予測モードを意味することができる。符号化装置100は、入力画像の入力ブロックに対する予測ブロックを生成することができる。また、符号化装置100は、予測ブロックが生成された後、入力ブロック及び予測ブロックの差分(residual)を符号化することができる。入力画像は、現在符号化の対象である現在画像と称されることもある。入力ブロックは、現在符号化対象である現在ブロック或いは符号化対象ブロックと称されることもある。
予測モードがイントラモードである場合、イントラ予測部120は、現在ブロックの近傍に既に符号化/復号されたブロックのピクセル値を参照画素としても用いることができる。イントラ予測部120は、参照画素を用いて空間予測を行うことができ、空間予測を介して入力ブロックに対する予測サンプルを生成することができる。ここで、イントラ予測は画面内予測を意味することができる。
予測モードがインターモードである場合には、動き予測部111は、動き予測処理で参照画像から入力ブロックと最もよくマッチする領域を検索することができ、検索された領域を用いて動きベクトルを導出することができる。参照画像は参照ピクチャバッファ190に記憶できる。
動き補償部112は、動きベクトルを用いる動き補償を行うことにより、予測ブロックを生成することができる。ここで、インター予測は、画面間予測或いは動き補償を意味することができる。
減算器125は、入力ブロック及び予測ブロックの差分を用いて残余ブロック(residual block)を生成することができる。残余ブロックは残余信号とも称される。残余信号は、原信号及び予測信号間の差(difference)を意味することができる。また、残余信号は、原信号及び予測信号間の差を変換(transform)するか、量子化するか、或いは変換及び量子化することにより生成された信号であり得る。残余ブロックはブロック単位の残余信号であり得る。
変換部130は、残余ブロックに対して変換(transform)を行って変換係数(transform coefficient)を生成することができ、変換係数を出力することができる。ここで、変換係数は、残余ブロックに対する変換を行うことにより生成された係数値であり得る。変換省略(transform skip)モードが適用される場合、変換部130は残余ブロックに対する変換を省略することもできる。
変換係数又は残余信号に量子化を適用することにより、量子化されたレベル(quantized level)が生成できる。以下、実施形態では、量子化されたレベルも変換係数と称されることがある。
量子化部140は、変換係数又は残余信号を量子化パラメータに基づいて量子化することにより、量子化されたレベルを生成することができ、量子化されたレベルを出力することができる。このとき、量子化部140では、量子化行列を用いて変換係数を量子化することができる。
エントロピー符号化部150は、量子化部140で算出された値、又は符号化処理で算出された符号化パラメータ(Coding Parameter)値などに対して確率分布によるエントロピー符号化を行うことにより、ビットストリーム(bitstream)を生成することができ、ビットストリームを出力することができる。エントロピー符号化部150は、画像のピクセルに関する情報及び画像の復号のための情報に対するエントロピー符号化を行うことができる。例えば、画像の復号のための情報は構文要素(syntax element)などを含むことができる。
エントロピー符号化が適用される場合、高い発生確率を有するシンボル(symbol)に少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることにより、符号化対象シンボルに対するビット列のサイズが減少できる。エントロピー符号化部150は、エントロピー符号化のために指数ゴロム(exponential Golomb)、CAVLC(Context−Adaptive Variable Length Coding)、CABAC(Context−Adaptive Binary Arithmetic Coding)などの符号化方法を使用することができる。例えば、エントロピー符号化部150は、可変長符号化(Variable Length Coding/Code;VLC)テーブルを用いてエントロピー符号化を行うことができる。また、エントロピー符号化部150は、対象シンボルの2値化(binarization)方法及び対象シンボル/ビン(bin)の確率モデル(probability model)を導出した後、導出された2値化方法、確率モデル、コンテキストモデル(Context Model)を用いて算術符号化を行うこともできる。
エントロピー符号化部150は、変換係数レベルを符号化するために、変換係数スキャニング(Transform Coefficient Scanning)方法を介して2次元のブロック形状係数を1次元のベクトル形態に変更することができる。
符号化パラメータ(Coding Parameter)は、構文要素のように符号化器で符号化されて復号器へシグナリングされる情報(フラグ、インデックスなど)だけでなく、符号化或いは復号処理で導出される情報を含むことができ、画像を符号化又は復号するときに必要な情報を意味することができる。例えば、ブロックサイズ、ブロック深さ、ブロック分割情報、ユニットサイズ、ユニット深さ、ユニット分割情報、4分木分割フラグ、2分木分割フラグ、2分木分割方向、画面内予測モード、画面内予測方向、参照サンプルフィルタリング方法、予測ブロック境界フィルタリング方法、フィルタタップ、フィルタ係数、画面間予測モード、動き情報、動きベクトル、参照画像インデックス、画面間予測方向、画面間予測インジケータ、参照画像リスト、動きベクトル予測器、動きベクトル候補リスト、動きマージモード(motion merge mode)の使用有無、動きマージ候補、動きマージ候補リスト、スキップ(skip)モードの使用有無、補間フィルタの種類、動きベクトルのサイズ、動きベクトル表現の精度、変換種類、変換サイズ、追加(2次)変換の使用有無情報、残余信号の有無情報、符号化ブロックパターン(Coded Block Pattern)、符号化ブロックフラグ(Coded Block Flag;CBF)、量子化パラメータ、量子化行列、ループ内フィルタ情報、ループ内フィルタの適用有無情報、ループ内フィルタ係数、2値化/逆2値化方法、コンテキストモデル、コンテキストビン、バイパスビン、変換係数、変換係数レベル、変換係数レベルスキャニング方法、画像ディスプレイ/出力順序、スライス識別情報、スライスタイプ、スライス分割情報、タイル識別情報、タイルタイプ、タイル分割情報、ピクチャタイプ、ビット深度、輝度信号或いは色差信号に対する情報のうちの少なくとも一つの値又は組み合わせ形態が符号化パラメータに含まれ得る。
ここで、フラグ或いはインデックスをシグナリング(signaling)するというのは、エンコーダでは該当フラグ或いはインデックスをエントロピー符号化(Entropy Encoding)してビットストリーム(Bitstream)に含むことを意味することができ、デコーダではビットストリームから該当フラグ或いはインデックスをエントロピー復号(Entropy Decoding)することを意味することができる。
符号化装置100がインター予測を用いた符号化を行う場合、符号化された現在画像は、後で処理される他の画像に対する参照画像として使用できる。よって、符号化装置100は、符号化された現在画像をさらに再構成又は復号することができ、再構成又は復号された画像を参照画像として記憶することができる。
量子化されたレベルは、逆量子化部160で逆量子化(dequantization)でき、逆変換部170で逆変換(inverse transform)できる。逆量子化及び/又は逆変換された係数は、加算器175を介して予測ブロックと合わせられ得る。逆量子化及び逆変換された係数と予測ブロックとを合わせることにより、再構成ブロック(reconstructed block)が生成できる。ここで、逆量子化及び/又は逆変換された係数は、逆量子化及び逆変換の少なくとも一つが行われた係数を意味し、再構成された残余ブロックを意味することができる。
再構成ブロックはフィルタ部180を経ることができる。フィルタ部180は、デブロッキングフィルタ(deblocking filter)、サンプル適応的オフセット(Sample Adaptive Offset;SAO)、適応的ループフィルタ(Adaptive Loop Filter;ALF)などの少なくとも一つを再構成ブロック又は再構成画像に適用することができる。フィルタ部180はループ内フィルタ(in−loop filter)とも称される。
デブロッキングフィルタは、ブロック間の境界に生じたブロック歪みを除去することができる。デブロッキングフィルタを行うか否かを判断するために、ブロックに含まれている幾つかの列又は行に含まれているピクセルに基づいて、現在ブロックにデブロッキングフィルタを適用するか否かを判断することができる。ブロックにデブロッキングフィルタを適用する場合、必要なデブロッキングフィルタリング強度に応じて、互いに異なるフィルタを適用することができる。
サンプル適応的オフセットを用いて符号化エラーを補償するために、ピクセル値に適正オフセット(offset)値を加えることができる。サンプル適応的オフセットは、デブロッキングを行った画像に対してピクセル単位で原本画像とのオフセットを補正することができる。画像に含まれているピクセルを一定数の領域に区分した後、オフセットを行うべき領域を決定し、該当領域にオフセットを適用する方法、又は各ピクセルのエッジ情報を考慮してオフセットを適用する方法を使用することができる。
適応的ループフィルタは、再構成画像と原画像とを比較した値に基づいてフィルタリングを行うことができる。画像に含まれているピクセルを所定のグループに分けた後、当該グループに適用されるべきフィルタを決定してグループごとに差別的にフィルタリングを行うことができる。適応的ループフィルタを適用するか否かに関連した情報は、符号化ユニット(Coding Unit、CU)別にシグナリングでき、それぞれのブロックに応じて、適用される適応的ループフィルタの形状及びフィルタ係数は異なり得る。
フィルタ部180を経た再構成ブロック又は再構成画像は参照ピクチャバッファ190に記憶できる。図2は本発明が適用される復号装置の一実施形態に係る構成を示すブロック図である。
復号装置200はデコーダ、ビデオ復号装置又は画像復号装置であり得る。
図2を参照すると、復号装置200は、エントロピー復号部210、逆量子化部220、逆変換部230、イントラ予測部240、動き補償部250、加算器255、フィルタ部260、及び参照ピクチャバッファ270を含むことができる。
復号装置200は、符号化装置100から出力されたビットストリームを受信することができる。復号装置10は、コンピュータ可読記録媒体に記憶されたビットストリームを受信するか、或いは有/無線伝送媒体を介してストリーミングされるビットストリームを受信することができる。復号装置200は、ビットストリームに対してイントラモード又はインターモードで復号を行うことができる。また、復号装置200は、復号を介して再構成された画像又は復号された画像を生成することができ、再構成された画像又は復号された画像を出力することができる。
復号に使用される予測モードがイントラモードである場合、スイッチがイントラに切り替えることができる。復号に使用される予測モードがインターモードである場合、スイッチがインターに切り替えることができる。
復号装置200は、入力されたビットストリームを復号し、再構成された残余ブロック(reconstructed residual block)を取得することができ、予測ブロックを生成することができる。再構成された残余ブロック及び予測ブロックが取得されると、復号装置200は、再構成された残余ブロックと予測ブロックを加えることにより、復号対象となる再構成ブロックを生成することができる。復号対象ブロックは現在ブロックと称されることがある。
エントロピー復号部210は、ビットストリームに対する確率分布に基づくエントロピー復号を行うことにより、シンボルを生成することができる。生成されたシンボルは、量子化されたレベル形態のシンボルを含むことができる。ここで、エントロピー復号方法は、上述したエントロピー符号化方法の逆処理であり得る。
エントロピー復号部210は、変換係数レベルを復号するために、変換係数スキャニング方法によって1次元のベクトル形態係数を2次元のブロック形態に変更することができる。
量子化されたレベルは、逆量子化部220で逆量子化でき、逆変換部230で逆変換できる。量子化されたレベルは、逆量子化又は逆変換が行われた結果であって、再構成された残余ブロックとして生成できる。このとき、逆量子化部220は、量子化されたレベルに量子化行列を適用することができる。
イントラモードが使用される場合、イントラ予測部240は、復号対象ブロック近傍の、既に復号されたブロックのピクセル値を用いる空間予測を行うことにより、予測ブロックを生成することができる。
インターモードが使用される場合、動き補償部250は、動きベクトル及び参照ピクチャバッファ270に記憶されている参照画像を用いる動き補償を行うことにより、予測ブロックを生成することができる。
加算器255は、再構成された残余ブロック及び予測ブロックを加算して再構成ブロックを生成することができる。フィルタ部260は、デブロッキングフィルタ、サンプル適応的オフセット及び適応的ループフィルタなどの少なくとも一つを再構成ブロック又は再構成画像に適用することができる。フィルタ部260は再構成画像を出力することができる。再構成ブロック又は再構成画像は参照ピクチャバッファ270に記憶されてインター予測に使用できる。
図3は画像を符号化及び復号するときの画像の分割構造を示す概略図である。図3は一つのユニットが複数の下位ユニットに分割される実施形態を概略的に示す。
画像を効率よく分割するために、符号化及び復号において、符号化ユニット(Coding Unit;CU)が使用できる。画像符号化/復号の基本単位として符号化ユニットが使用できる。また、画像符号化/復号の際に画面内モード及び画面間モードが区分される単位として、符号化ユニットを使用することができる。符号化ユニットは、予測、変換、量子化、逆変換、逆量子化、又は変換係数の符号化/復号の処理のために使用される基本単位であり得る。
図3を参照すると、画像300は、最大符号化ユニット(Largest Coding Unit;LCU)単位で順次分割され、LCU単位で分割構造が決定される。ここで、LCUは、符号化ツリーユニット(Coding Tree Unit;CTU)と同一の意味で使用できる。ユニットの分割は、ユニットに該当するブロックの分割を意味することができる。ブロック分割情報には、ユニットの深さ(depth)に関する情報が含まれ得る。深さ情報は、ユニットが分割される回数及び/又は程度を示すことができる。一つのユニットは、ツリー構造(tree structure)に基づいて深さ情報をもって階層的に分割できる。それぞれの分割された下位ユニットは深さ情報を持つことができる。深さ情報は、CUの大きさを示す情報であり、各CUごとに記憶できる。
分割構造は、LCU310内での符号化ユニット(Coding Unit;CU)の分布を意味することができる。このような分布は、一つのCUを複数(2、4、8、16などを含む2以上の正の整数)のCUに分割するか否かによって決定することができる。分割により生成されたCUの横幅と縦幅は、それぞれ分割前のCUの横幅の半分及び縦幅の半分であるか、分割された個数に応じて分割前のCUの横幅よりも小さいサイズ及び縦幅よりも小さいサイズを持つことができる。CUは、複数のCUに再帰的に分割できる。CUの分割は所定の深さ又は所定のサイズまで再帰的に行われ得る。例えば、LCUの深さは0であり、最小符号化ユニット(Smallest Coding Unit;SCU)の深さは予め定義された最大深さであり得る。ここで、LCUは、上述したように、最大の符号化ユニットサイズを持つ符号化ユニットであり、SCUは、最小の符号化ユニットサイズを持つ符号化ユニットであり得る。LCU310から分割が始まり、分割によりCUの横幅及び/又は縦幅が減少するたびに、CUの深さは1ずつ増加する。
また、CUが分割されるか否かに関する情報は、CUの分割情報によって表現できる。分割情報は1ビットの情報であり得る。SCUを除いた全てのCUは分割情報を含むことができる。例えば、分割情報の値が第1値であれば、CUが分割されなくてもよく、分割情報の値が第2値であれば、CUが分割されてもよい。
図3を参照すると、深さが0であるLCUは64x64画素であり得る。0は最小深さであり得る。深さが3であるSCUは8x8画素であり得る。3は最大深さであり得る。32x32ブロック及び16x16ブロックのCUはそれぞれ深さ1及び深さ2で表現できる。
例えば、一つの符号化ユニットが4つの符号化ユニットに分割される場合、分割された4つの符号化ユニットの横幅及び縦幅は、分割される前の符号化ユニットの横幅及び縦幅と比較してそれぞれの半分のサイズを持つことができる。一例として、32x32サイズの符号化ユニットが4つの符号化ユニットに分割される場合、分割された4つの符号化ユニットはそれぞれ16x16のサイズを持つことができる。一つの符号化ユニットが4つの符号化ユニットに分割される場合、符号化ユニットは4分木(quad−tree)状に分割されたといえる。
例えば、一つの符号化ユニットが2つの符号化ユニットに分割される場合、分割された2つの符号化ユニットの横幅或いは縦幅は、分割される前の符号化ユニットの横幅或いは縦幅と比較して半分のサイズを持つことができる。一例として、32x32サイズの符号化ユニットが2つの符号化ユニットに縦分割される場合、分割された2つの符号化ユニットは、それぞれ16x32のサイズを持つことができる。一つの符号化ユニットが2つの符号化ユニットに分割される場合、符号化ユニットは2分木(binary−tree)状に分割されたといえる。図3のLCU32は4分木状の分割及び2分木状の分割が全て適用されたLCUの一例である。
図4は画面内予測処理の実施形態を説明するための図である。
画面内予測モードは非方向性モード又は方向性モードであり得る。非方向性モードは、DCモード又はプラナー(Planar)モードであり、方向性モードは、特定の方向又は角度を持つ予測モードであり得る。前記画面内予測モードは、モード番号、モード値、モード数及びモード角度のうちの少なくとも一つで表現できる。画面内予測モードの個数は、前記非方向性及び方向性モードを含む一つ以上のM個であり得る。
画面内予測モードの個数は、ブロックのサイズを問わずN個に固定できる。又は、画面内予測モードの個数は、ブロックのサイズ及び/又は色成分(color component)のタイプによって異なり得る。例えば、ブロックのサイズが大きくなるほど、画面内予測モードの個数は多くなることがある。又は、ルマ成分ブロックの画面内予測モードの個数は色差成分ブロックの画面内予測モードの個数よりも多いことがある。
現在ブロックを画面内予測するために再構成された近傍ブロックに含まれるサンプルが、現在ブロックの参照サンプルとして利用可能であるかどうかを検査するステップが行われ得る。現在ブロックの参照サンプルとして利用できないサンプルが存在する場合、再構成された近傍ブロックに含まれているサンプルのうちの少なくとも一つのサンプル値をコピー及び/又は補間した値を用いて、参照サンプルとして利用できないサンプルのサンプル値で代替した後、現在ブロックの参照サンプルとして利用することができる。
画面内予測時の画面内予測モード及び現在ブロックのサイズのうちの少なくとも一つに基づいて、参照サンプル又は予測サンプルの少なくとも一つにフィルタを適用することができる。
プラナーモードの場合、現在ブロックの予測ブロックを生成するとき、予測対象サンプルの予測ブロック内の位置に基づいて、現在サンプルの上側及び左側の参照サンプルを現在ブロックの右上側及び左下側参照サンプルの重み付け和を用いて予測対象サンプルのサンプル値を生成することができる。また、DCモードの場合、現在ブロックの予測ブロックを生成するとき、現在ブロックの上側及び左側参照サンプルの平均値を用いることができる。また、方向性モードの場合、現在ブロックの上側、左側、右上側及び/又は左下側参照サンプルを用いて予測ブロックを生成することができる。予測サンプル値を生成するために、実数単位の補間を行うこともできる。
現在ブロックの画面内予測モードは、現在ブロックの近傍に存在するブロックの画面内予測モードから予測してエントロピー符号化/復号することができる。現在ブロックと近傍ブロックの画面内予測モードが同一であれば、所定のフラグ情報を用いて現在ブロックと近傍ブロックの画面内予測モードが同一であるという情報をシグナリングすることができる。また、複数の近傍ブロックの画面内予測モードのうち、現在ブロックの画面内予測モードと同じ画面内予測モードに対するインジケータ情報をシグナリングすることができる。現在ブロックと近傍ブロックの画面内予測モードが互いに異なる場合、近傍ブロックの画面内予測モードに基づいてエントロピー符号化/復号を行って現在ブロックの画面内予測モード情報をエントロピー符号化/復号することができる。
図5は本発明に係る画面内予測を説明するための図である。
現在ブロックに対する画面内予測は、画面内予測モード導出ステップ(S510)、参照サンプル構成ステップ(S520)、及び/又は画面内予測実行ステップ(S530)を含むことができる。
ステップS510で、現在ブロックの画面内予測モードが導出できる。現在ブロックの画面内予測モードは、近傍ブロックの画面内予測モードを用いる方法、ビットストリームから現在ブロックの画面内予測モードをエントロピー符号化/復号する方法、近傍ブロックの符号化パラメータを用いる方法、又は色成分の画面内予測モードを用いる方法によって導出できる。前記近傍ブロックの画面内予測モードを用いる方法によれば、近傍ブロックの画面内予測モード、近傍ブロックの一つ以上の画面内予測モードの組み合わせ、及び一つ以上のMPMを用いて導出された画面内予測モードのうちの少なくとも一つを用いて、現在ブロックの画面内予測モードが導出できる。
ステップS520で、参照サンプル選択及び参照サンプルフィルタリングのうちの少なくとも一つを行い、参照サンプルが構成できる。
ステップS530で、非方向性予測、方向性予測、位置情報ベース予測、及び色成分間予測のうちの少なくとも一つを行って画面内予測が実行できる。前記方向性予測が行われる場合は、現在ブロックの一つ以上のサンプルを含む所定の単位ごとに互いに異なる方向性を有する予測が実行できる。前記所定の単位は、例えば、単一サンプル、サンプルグループ、ライン及びブロックのうちの少なくとも一つであり得る。前記色成分間の予測は、色成分ブロックの再構成ステップ、予測パラメータの導出ステップ及び/又は色成分間予測実行ステップを含むことができる。ステップS530で、予測サンプルに対するフィルタリングをさらに行うことができる。
現在ブロックの画面内予測モードを導出するために一つ以上の再構成された近傍ブロックが使用できる。再構築された近傍ブロックの位置は、予め定義された固定位置、又は符号化/復U号して導出された位置であり得る。以下、符号化/復号は、エントロピー符号化及び復号を意味することができる。例えば、WxHサイズの現在ブロックの左上側コーナーサンプルの座標を(0,0)とするとき、前記近傍ブロックは(−1,H−1)、(W−1,−1)、(W,−1)、(−1,H)及び(−1,−1)座標に隣接するブロック及び前記ブロックの近傍ブロックのうちの少なくとも一つであり得る。この時、前記W及びHは、前記現在ブロックの横幅W及び縦幅H又はサンプルの個数を示すことができる。
利用可能な近傍ブロックの画面内予測モードは、所定の画面内予測モードで代替することができる。前記所定の画面内予測モードは、例えば、DCモード、Planarモード、垂直モード、水平モード及び/又は対角モードであり得る。例えば、近傍ブロックがピクチャ、スライス、タイル、CTU(Coding Tree Unit)などのうちの少なくとも一つの所定のユニットの境界外に位置するか、或いは画面間予測されるか、或いはPCMモードで符号化された場合、当該近傍ブロックは利用不可能と判断できる。又は、前記近傍ブロックが利用不可能である場合、前記利用不可能な近傍ブロックの画面内予測モードを代替せず、前記利用不可能な近傍ブロックを用いなくてもよい。
現在ブロックの画面内予測モードは、所定の位置の近傍ブロックの画面内予測モード又は二つ以上の近傍ブロックの画面内予測モードの統計値を用いて導出できる。本明細書において、統計値は、平均値、最大値、最小値、最頻値、中央値、加重平均値及び補間値のうちの少なくとも一つを意味することができる。
又は、近傍ブロックのサイズに基づいて、現在ブロックの画面内予測モードを導出することができる。例えば、相対的にサイズが大きい近傍ブロックの画面内予測モードを現在ブロックの画面内予測モードとして導出することができる。又は、相対的にサイズが大きいブロックの画面内予測モードに相対的に大きい重みを付与して統計値を計算することもできる。
又は、近傍ブロックの画面内予測モードが方向性であるか否かが考慮できる。例えば、近傍ブロックの画面内予測モードが非方向性である場合、前記非方向性モードを現在ブロックの画面内予測モードとして導出することができる。又は、前記非方向性モードを除く他の近傍ブロックの画面内予測モードを用いて、現在ブロックの画面内予測モードを導出することもできる。
現在ブロックの画面内予測モードを導出するために、近傍ブロックの画面内予測モードを用いて一つ以上のMPM(Most Probable Mode)リストを構成することができる。MPMリストに含まれる候補モードの個数Nは、固定されるか、或いは現在ブロックのサイズ及び/又は形状に基づいて決定できる。MPMリストは、重複するモードがないように構成できる。利用可能な候補モードの個数がN未満の場合には、利用可能な候補モードのうち、所定の候補モード、例えば方向性モードに対して所定のオフセットを加減したモードを前記一つ以上のMPMリストに追加することができる。又は、水平モード、垂直モード、45度モード、135度モード、225度モード及び非方向性モードのうちの少なくとも一つをMPMリストに追加することができる。前記所定のオフセットは1、2、3、4、又は正の整数であり得る。
MPMリストは、近傍ブロックの位置に基づいた所定の順序で構成できる。例えば、前記所定の順序は、現在ブロックの左側、上側、左下側コーナー、右上側コーナー及び左上側コーナーに隣接するブロックの順序であり得る。非方向性モードは、MPMリストの任意の位置に含まれ得る。例えば、左側及び上側に隣接するブロックの画面内予測モードの次に追加できる。
他の実施形態として、MPMリストを用いて導出された画面内予測モードと近傍ブロックの画面内予測モードを用いて、現在ブロックの画面内予測モードが導出できる。たとえば、MPMリストを用いて導出された画面内予測モードをPred_mpmとするとき、近傍ブロックの画面内予測モードを用いて前記Pred_mpmを変更することができる。例えば、Pred_mpmが近傍ブロックの画面内予測モード(又は二つ以上の画面内予測モードの統計値)よりも大きい場合には、Pred_mpmをnだけ増加させ、そうでない場合には、nだけ減少させることができる。この時、nは+1、+2、+3、0、−1、−2、−3などの所定の整数であり得る。現在ブロックの画面内予測モードは、変更されたPred_mpmによって導出できる。又は、Pred_mpmと近傍ブロックの画面内予測モードのうちの少なくとも一つが非方向性モードである場合、現在ブロックの画面内予測モードは前記非方向性モードとして導出されてもよい。又は、逆に、現在ブロックの画面内予測モードは方向性モードとして導出されてもよい。
画面内予測モードを導出する別の実施形態として、他の色成分の画面内予測モードを用いて現在ブロックの画面内予測モードを導出することができる。たとえば、現在ブロックが色差ブロックである場合、前記色差ブロックに対応する輝度ブロックの画面内予測モードが使用できる。前記対応する輝度ブロックは一つ以上であり得る。前記対応する輝度ブロックは、色差ブロックのサイズ、形状及び/又は符号化パラメータのうちの少なくとも一つに基づいて決定できる。又は、前記対応する輝度ブロックは輝度ブロックのサイズ、形状及び/又は符号化パラメータのうちの少なくとも一つに基づいて決定できる。
色差ブロックに対応する輝度ブロックは複数のパーティションを含むことができる。前記複数のパーティションの全部又は一部は、互いに異なる画面内予測モードを持つことができる。色差ブロックの画面内予測モードは、対応する輝度ブロック内の複数のパーティションの全部又は一部に基づいて導出できる。この際、色差ブロックと輝度ブロック(複数のパーティションの全部又は一部)とのブロックサイズ、形状、深さ情報などの比較に基づいて一部のパーティションが選択的に利用できる。色差ブロック内の所定の位置に対応する輝度ブロック内の位置のパーティションが選択的に利用されてもよい。前記所定の位置は、色差ブロックのコーナーサンプル(例えば、左上側サンプル)位置又は中央サンプル位置を意味することができる。
本発明に係る色成分間画面内予測モードの導出方法は、対応する輝度ブロックの画面内予測モードを用いることに限定されない。例えば、対応する輝度ブロックのmpm_idx又はMPM listのうちの少なくとも一つを用いるか或いは共有して色差ブロックの画面内予測モードを導出することもできる。
図6は輝度ブロックと色差ブロックとの関係を説明するための例示図である。
図6に示された例において、色成分間の比率は4:2:0であり、色差ブロックに対応する輝度ブロックはA、B、C及びDのうちの少なくとも一つであり得る。
図6に示された例において、色差ブロックの画面内予測モードは、色差ブロック内の左上側の位置(0,0)に対応する輝度ブロックAの画面内予測モード、又は色差ブロックの中央サンプル位置(nS/2,nS/2)に対応する輝度ブロックDの画面内予測モードを用いて導出できる。前記色差ブロック内の所定の位置は(0,0)及び(nS/2、nS/2)に限定されない。例えば、前記所定の位置は、色差ブロック内の右上側、左下側及び/又は右下側コーナーサンプルの位置であり得る。
前記所定の位置は、色差ブロックの形状に応じて選択できる。例えば、色差ブロックが正方形である場合、前記所定の位置は中央サンプル位置であり得る。例えば、色差ブロックが長方形である場合、前記所定の位置は左上側サンプル位置であり得る。上記の例において、色差ブロックが正方形である場合と長方形である場合における前記所定の位置は反対であってもよい。
別の実施形態として、色差ブロックのサイズに対応する輝度ブロック内の一つ以上の画面内予測モードの統計値を用いて色差ブロックの画面内予測モードを導出することができる。
図6に示された例において、例えば、輝度ブロックAとDの画面内予測モードの平均に該当するモード、又は色差ブロックのサイズに対応する輝度ブロック内のA、B、C、Dの画面内予測モードの平均に該当するモードを色差ブロックの画面内予測モードとして導出することができる。
利用可能な輝度ブロックの画面内予測モードが複数存在する場合、そのうちの全部又は一部が選択できる。前記選択は、色差ブロック内の所定の位置に基づいて、或いは色差ブロック及び/又は輝度ブロックのサイズ、形状及び/又は深さに基づいて行われ得る。前記選択された輝度ブロックの画面内予測モードを用いて、色差ブロックの画面内予測モードを導出することができる。
例えば、色差ブロック内の左上側サンプル位置(0,0)に対応する輝度ブロックAのサイズと色差ブロック内の中央サンプル位置(nS/2、nS/2)に対応する輝度ブロックDのサイズとを比較して相対的に大きい輝度ブロックDの画面内予測モードを利用して、色差ブロックの画面内予測モードを導出することができる。
又は、色差ブロック内の所定の位置に対応する輝度ブロックが色差ブロックよりも大きいか同じであれば、該当輝度ブロックの画面内予測モードを用いて、色差ブロックの画面内予測モードを導出することができる。
又は、色差ブロックのサイズが所定の範囲に該当する場合、色差ブロック内の左上端のサンプル位置(0,0)に対応する輝度ブロックの画面内予測モードを用いて色差ブロックの画面内予測モードを導出することができる。
又は、色差ブロックのサイズが所定の範囲に該当する場合、色差ブロック内の所定の位置(0,0)及び(nS/2,nS/2)に対応する輝度ブロックのサイズを比較して大きいブロックの画面内予測モードを用いて、色差ブロックの画面内予測モードを導出することができる。
前記所定の範囲は、ビットストリームを介してシグナリングされる情報、ブロック(色差ブロック及び/又は輝度ブロック)のサイズ(及び/又は深さ)に関する情報及び符号化器/復号器で予め定義された情報のうちの少なくとも一つに基づいて導出できる。
又は、色差ブロックの形状が長方形である場合、色差ブロック内の中央サンプル位置(nS/2、nS/2)に対応する輝度ブロックの画面内予測モードを用いて色差ブロックの画面内予測モードを導出することができる。
又は、輝度ブロック内の複数のパーティションのうち、色差ブロックと同じ形状を有するパーティションが使用できる。例えば、色差ブロックが正方形又は非正方形である場合、輝度ブロック内の複数のパーティションのうち正方形又は非正方形のパーティションが使用できる。
図6を参照して説明した例において、輝度ブロックの画面内予測モードを用いて色差ブロックの画面内予測モードを導出するという意味は、輝度ブロックの画面内予測モードが色差ブロックの画面内予測モードとしてそのまま用いられる場合を含む。また、輝度ブロックの画面内予測モードを用いることに限定されず、輝度ブロックのmpm_idx、MPMリストを含んで、輝度ブロックの画面内予測モードの導出時に使用された情報を用いてもよい。
又は、前記所定の位置に対応する輝度ブロックの画面内予測モードを用いて色差ブロックに対するMPMリストを構成することもできる。この場合、色差ブロックに対するmpm_idx情報が符号化されてシグナリングできる。色差ブロックに対するMPMリストは、輝度ブロックに対するMPMリストと同様の方法で構成できる。しかし、色差ブロックのMPM候補は、近傍色差ブロックの画面内予測モード、及び/又は対応する輝度ブロックの画面内予測モードを含むことができる。
MPM flagが0である場合、一つ以上の画面内予測モードを含む2次MPMリストを構成し、2次MPMインデックス(2nd_mpm_idx)を用いて現在ブロックの画面内予測モードを導出することができる。この際、現在ブロックの画面内予測モードが2次MPMリストに含まれるかを指示する2次インジケータ(例えば、2次MPM flag)が符号化/復号できる。2次MPMリストは、1次MPMリストと同様に、近傍ブロックの画面内予測モードを用いて構成できる。このとき、1次MPMリストに含まれている画面内予測モードは、2次MPMリストに含まれなくてもよい。MPMリストの個数は、1つ又は2つに限定されず、N個のMPMリストが使用できる。
現在ブロックの画面内予測モードが複数のMPMリストのいずれかに含まれない場合、現在ブロックの輝度成分画面内予測モードは符号化/復号できる。また、色差成分画面内予測モードは、対応する輝度成分画面内予測モードに基づいて導出されるか或いは符号化/復号され得る。
現在ブロックが複数のサブブロック(sub block)に分割される場合、分割されたそれぞれのサブブロックに対する画面内予測モードを導出するために、前述した方法のうちの少なくとも一つが適用できる。
サブブロックのサイズ及び/又は形状は、所定のサイズ及び/又は形状(例えば、4x4)であるか、現在ブロックのサイズ及び/又は形状に応じて決定できる。又は、サブブロックのサイズは、現在ブロックの近傍ブロックの分割有無に基づいて決定されるか、或いは現在ブロックの近傍ブロックの画面内予測モードに基づいて決定され得る。例えば、近傍ブロックの画面内予測モードが互いに異なる境界を基準に、現在ブロックが分割できる。又は、近傍ブロックが画面内符号化ブロックであるか画面間符号化ブロックであるかに基づいて、現在ブロックが分割できる。
現在ブロックの画面内予測モードが近傍ブロックの画面内予測モードを用いて導出されることを示すインジケータ(例えば、NDIP_flag)が符号化/復号できる。前記インジケータは、現在ブロック又はサブブロックのうちの少なくとも一つの単位ごとに符号化/復号できる。この時、現在ブロック又はサブブロックのサイズが所定のサイズ又は所定のサイズの範囲に該当する場合にのみ前記インジケータが符号化/復号できる。
現在ブロックのサイズが所定のサイズに該当するかの判断は、現在ブロックの横幅又は縦幅に基づいて行われ得る。例えば、横幅又は縦幅が分割可能な長さであれば、現在ブロックのサイズが所定のサイズに該当すると判断できる。
現在ブロックが複数のサブブロックに分割される場合、複数のサブブロックの画面内予測モードは、ジグザグ順序で導出されるか或いは並列的に導出され得る。サブブロックの画面内予測モードは、現在ブロックの画面内予測モードを導出する方法のうちの少なくとも一つの方法で導出できる。この時、現在ブロックの近傍ブロックが各サブブロックの近傍ブロックとして使用されてもよい。又は、現在ブロック内のサブブロックが各サブブロックの近傍ブロックとして使用されてもよい。
現在ブロックに属するサブブロックの画面内予測モードは、現在ブロックの画面内予測モードと各サブブロックの(0,0)位置サンプルの左側と上側に隣接するブロックの画面内予測モードとの平均値を用いて導出することができる。たとえば、現在ブロックの画面内予測モードが前記平均値よりも大きい場合、前記平均値の1/2だけを前記導出した画面内予測モードから差し引くことができ、前記平均値より小さいか同じ場合には加えることができる。
画面内予測に関する情報は、VPS(video parameter set)、SPS(sequence parameter set)、PPS(picture parameter set)、APS(adaptation parameter set)、スライス(slice)ヘッダー及びタイル(tile)ヘッダーのうちの少なくとも一つを介してシグナリングできる。所定のブロックサイズ以下では、画面内予測に関する情報のうちの少なくとも一つがシグナリングされないことがある。この場合、以前に符号化/復号されたブロック(例えば、上位ブロック)の画面内予測に関する情報が使用できる。
前記導出された画面内予測モードに基づいて、画面内予測のための参照サンプルが構成できる。以下の説明において、現在ブロックは、予測ブロック、又は予測ブロックよりも小さいサイズ/形状を有するサブブロックを意味することができる。参照サンプルは、現在ブロックの近傍の再構成された一つ以上のサンプル又はサンプル組み合わせを用いて構成できる。また、構成された参照サンプルに対してフィルタリングが適用できる。
参照サンプルの構成に使用される再構成サンプルラインの数及び/又は位置は、符号化ツリーブロック内の現在ブロックの位置によって異なり得る。複数の再構成サンプルライン上の各再構成サンプルはそのまま参照サンプルとして使用できる。又は、再構成サンプルに所定のフィルタを適用し、フィルタリングされた再構成サンプルを用いて参照サンプルを生成することもできる。フィルタが適用される再構成サンプルは、同じ再構成サンプルラインに属するか、或いは異なる再構成サンプルラインに属することができる。
前記構成された参照サンプルはref[m,n]で表し、近傍の再構成されたサンプル又はこれをフィルタリングしたサンプルはrec[m,n]で表すことができる。このとき、m又はnは、サンプルの位置を示す所定の整数値であり得る。現在ブロック内の左上側サンプルの位置が(0,0)であるとき、現在ブロックの左上側参照サンプルの位置は(−1,−1)に設定できる。
前記参照サンプルを構成するために近傍の再構成サンプルに対して可用性(availability)有無を判断することができる。前記近傍の再構成サンプルがピクチャ、スライス、タイル及びCTUの少なくとも一つの領域外に位置する場合、利用不可能と判断することができる。又は、現在ブロックに対する限られた画面内予測(constrained intra prediction)を行う場合、前記近傍の再構成サンプルが画面間で符号化/復号されたブロックに位置する場合、利用不可能と判断することができる。
前記近傍の再構成されたサンプルが利用不可能であると判断される場合、近傍の利用可能な再構成サンプルを用いて利用不可能サンプルを代替することができる。たとえば、左下側サンプルの位置から始まり、隣接する利用可能サンプルを用いて利用不可能サンプルを満たすことができる。又は、利用可能サンプルの組み合わせを用いて利用不可能サンプルを満たすことができる。例えば、利用不可能サンプルの両端に位置する利用可能サンプルの平均値を用いて利用不可能サンプルを満たすことができる。
又は、利用可能参照サンプルの情報を用いて利用不可能サンプルを満たすことができる。このとき、隣接する利用可能サンプル値ではなく、任意の値で利用不可能サンプルを満たすことができる。前記任意の値は、利用可能サンプル値の平均値であってもよく、利用可能サンプル値の勾配(Gradient)を考慮した値であってもよい。又は、平均値と勾配の両方が使用されてもよい。前記勾配は、隣接する利用可能サンプルの差分値に基づいて決定できる。又は、前記平均値と利用可能サンプル値との差分値に基づいて決定されてもよい。前記平均値の他に、最大値、最小値、中央値又は任意の重みを用いた重み付け和が使用できる。前記任意の重みは、利用可能サンプルと利用不可能サンプルとの距離に基づいて決定できる。
これらの方法は、上側及び左側の参照サンプルの両方に適用されるか、或いは任意の方向に対してのみ適用できる。また、複数の再構成サンプルラインを用いて現在ブロックの参照サンプルラインを構成する場合にも、これらの方法が適用できる。
現在ブロックの画面内予測モード又はブロックのサイズ/形状のうちの少なくとも一つに基づいて、前記構成した一つ以上の参照サンプルに対してフィルタリングを適用するか否かを決定することができる。フィルタリングを適用する場合には、前記現在ブロックの画面内予測モード、サイズ及び形状のうちの少なくとも一つに応じてフィルタの種類が変わり得る。
前記導出された画面内予測モード及び参照サンプルに基づいて、前記現在ブロックに対する画面内予測を行うことができる。
DCモードの場合、前記構成した参照サンプルのうちの一つ以上の参照サンプルの平均値が使用できる。この際、現在ブロックの境界に位置する一つ以上の予測サンプルに対してフィルタリングが適用できる。DC予測は、現在ブロックのサイズ及び形状の少なくとも一つに基づいて異なるように行うことができる。例えば、現在ブロックのサイズ及び/又は形状に基づいて、DCモードに用いられる参照サンプルの範囲が特定できる。
図7は現在ブロックのサイズ及び/又は形状によるDC予測を説明するための図である。
図7の(a)に示すように、現在ブロックが正方形である場合、現在ブロックの上側と左側の参照サンプルの平均値を用いてDC予測を行うことができる。
現在ブロックが非正方形である場合、現在ブロックの左側又は上側に隣接する近傍サンプルが選択的に使用できる。例えば、図7の(b)に示すように、現在ブロックが長方形である場合、現在ブロックの横幅及び縦幅のうちの大きい方に隣接する参照サンプルの平均値を用いてDC予測を行うことができる。
又は、現在ブロックのサイズが所定のサイズであるか或いは所定の範囲に含まれる場合には、現在ブロックの上側又は左側の参照サンプルの中から所定のサンプルを選択し、選択されたサンプルの平均値を用いてDC予測を行うことができる。前記所定のサイズは、符号化器/復号器で所定の固定サイズNxMを意味することができる。NとMは0よりも大きい整数であり、NとMは互いに同一でも異なってもよい。前記所定の範囲は、現在ブロックの参照サンプルを選択するための臨界値を意味することができる。前記臨界値は、最小値又は最大値の少なくとも一つで実現できる。最小値及び/又は最小値は、符号化器/復号器で所定の固定値であってもよく、符号化器で符号化されてシグナリングされる可変値であってもよい。
前述したように、DC予測のためには一つ以上の参照サンプルの平均値が使用できる。平均値の演算のためには、参照サンプルの個数を用いた除算が実行できる。参照サンプルの個数が2n個である場合(nは正の整数)、前記除算はバイナリシフト演算で代替することができる。非正方形ブロックの場合、上側及び左側の参照サンプルをすべて用いると、参照サンプルの個数が2nではないことがある、この場合、除算演算の代わりにシフト演算が利用できない。したがって、前記実施形態での如く、上側又は左側の2n個の参照サンプルを用いることにより、除算をシフト演算で代替することができる。
プランナーモードの場合、前記現在ブロックの画面内予測対象サンプルの位置に応じて、前記構成した一つ以上の参照サンプルからの距離を考慮した重み付け和が使用できる。
方向性モードの場合、画面内予測対象サンプルの位置で所定の角度線上及び近傍に存在する一つ以上の参照サンプルが使用できる。
位置情報ベースの画面内予測モードの場合、符号化/復号されるか或いは導出される位置情報に基づいて生成される再構成サンプルブロックを現在ブロックの画面内予測ブロックとして用いることができる。又は、復号器が現在ブロックの画面内予測ブロックとして用いられる再構成サンプルブロックを検索して導出することができる。
色差信号に対する画面内予測は、現在ブロックの再構成された輝度信号を用いて行われ得る。また、現在ブロックの再構成された一つの色差信号Cb又はCbの残差信号を用いて、他の色差信号Crに対する画面内予測を行うこともできる。
前記一つ以上の予測方法を組み合わせて画面内予測を行うことができる。例えば、所定の非方向性画面内予測モードを用いて予測したブロックと、所定の方向性画面内予測モードを用いて予測したブロックとの重み付け和を介して、現在ブロックに対する画面内予測ブロックを構成することができる。このとき、重みは、現在ブロックの画面内予測モード、ブロックのサイズ及びサンプルの位置のうちの少なくとも一つによって異なるように適用できる。又は、色差ブロックの場合、所定の画面内予測モードを用いて予測したブロックと、輝度ブロックの再構成された信号を用いて予測したブロックとの重み付け和を介して、前記色差ブロックに対する画面内予測ブロックを構成することができる。このとき、前記所定の画面内予測モードは、例えば、前記色差ブロックの画面内予測モードを導出するために用いられるモードのいずれか一つであり得る。色差ブロックの場合、前述したように2つの予測ブロックの重み付け和を用いて最終予測ブロックを構成するかどうかは、符号化された情報によってシグナリングできる。
方向性モードの場合、方向性予測モードに基づいて、前記構成した参照サンプルを再構成することができる。例えば、前記方向性予測モードが左側及び上側に存在する参照サンプルをすべて用いるモードである場合、左側又は上側の参照サンプルに対して1次元配列を構成することができる。又は、左側参照サンプルを移動して上側の参照サンプルを構成することもでき、一つ以上の左側参照サンプルの重み付け和を用いて上側の参照サンプルを構成することもできる。
現在ブロックの所定のサンプルグループ単位で互いに異なる方向性画面内予測が行われてもよい。前記所定のサンプルグループ単位はブロック、サブブロック、ライン又は単一サンプルであり得る。
本発明に係る実施形態によれば、色成分(color component)間画面内予測を行うことができる。図8は色成分間画面内予測実行処理を説明するための図である。色成分間画面内予測は、色成分ブロック再構成ステップ(S810)、予測パラメータ導出ステップ(S820)、及び/又は色成分間予測実行ステップ(S830)を含むことができる。前記色成分は、輝度(luma)信号、色差(chroma)信号、Red、Green、Blue、Y、Cb及びCrのうちの少なくとも一つを意味することができる。第2色成分、第3色成分及び第4色成分の少なくとも一つを用いて前記第1色成分に対する予測を行うことができる。このとき、予測に用いられる色成分の信号は、原本信号、再構成された信号、残差/レジデュアル信号及び予測信号のうちの少なくとも一つであり得る。
第2色成分対象ブロックに対して画面内予測を行うとき、前記対象ブロックに対応する第1色成分対応ブロックのサンプル及び/又は対応ブロックの近傍ブロックのサンプルのうちの少なくとも一つのサンプルを用いることができる。例えば、色差成分ブロックCb又はCrに対して画面内予測を行うとき、前記色差成分ブロックに対応する再構成された輝度成分ブロックYを用いることができる。又は、Cr成分ブロックに対して画面内予測を行うとき、Cb成分ブロックを用いることができる。又は、第4色成分ブロックに対して画面内予測を行うとき、前記ブロックに対応する第1色成分ブロック、第2色成分ブロック及び第3色成分ブロックのうちの少なくとも一つの組み合わせを用いることができる。
色成分間画面内予測を行うか否かは、現在対象ブロックのサイズ及び形状の少なくとも一つに基づいて決定できる。例えば、対象ブロックのサイズがCTUサイズであるか、所定のサイズ以上であるか或いは所定のサイズの範囲に該当する場合、前記対象ブロックに対して色成分間画面内予測を行うことができる。又は、対象ブロックの形状が所定の形状である場合、前記対象ブロックに対して色成分間画面内予測を行うことができる。前記所定の形状は正方形であり得る。この場合、対象ブロックが長方形であれば、色成分間画面内予測は行われなくてもよい。前記所定の形状が長方形である場合には、前述した実施形態は逆に動作することができる。
又は、色成分間画面内予測を行うか否かは、予測対象ブロックに対応する対応ブロック及び対応ブロックの近傍ブロックのうちの少なくとも一つの符号化パラメータに基づいて決定されてもよい。例えば、CIP(Constrained intra prediction)環境下で対応ブロックが画面間予測された場合、色成分間画面内予測は行われなくてもよい。又は、対応ブロックの画面内予測モードが所定のモードに該当する場合、色成分間画面内予測が行われ得る。又は、対応ブロック及び近傍ブロックのCBF情報のうちの少なくとも一つに基づいて、色成分間画面内予測を行うか否かを決定することもできる。前記符号化パラメータは、ブロックの予測モードに限定されず、符号化/復号に使用できる前述した様々なパラメータが使用されてもよい。
以下、ステップS810の色成分ブロック再構成ステップについて説明する。
第1色成分ブロックを用いて第2色成分ブロックを予測するとき、前記第1色成分ブロックを再構成することができる。例えば、画像の色空間がYCbCrであり、色成分間の比率が4:4:4、4:2:2、4:2:0のうちのいずれかである場合、色成分間ブロックのサイズが互いに異なることがある。したがって、サイズの異なる第1色成分ブロックを用いて第2色成分ブロックを予測するとき、2つのブロックのサイズを同一にするために前記第1色成分ブロックを再構成することができる。このとき、再構成されたブロックは、前記第1色成分対応ブロックのサンプル及び近傍ブロックのサンプルのうちの少なくとも一つを含むことができる。図9は色成分ブロックの再構成を説明するための例示図である。
図9の(a)において、p1[x,y]は、第1色成分ブロックの(x,y)位置のサンプルを示すことができる。図9の(b)において、p1’[x,y]は、前記第1色成分ブロックを再構成したブロックの(x,y)位置のサンプルを示すことができる。
第1色成分ブロックのサイズが第2色成分ブロックのサイズよりも大きい場合、前記第1色成分ブロックをダウンサンプリング(down−sampling)して第2色成分ブロックのサイズと同じサイズのブロックに再構成することができる。前記ダウンサンプリングは、一つ以上のサンプルに対してN−tapフィルタを適用して行われ得る(Nは1以上の整数)。このとき、下記数式1乃至数式5のうちの少なくとも一つの数式が利用できる。複数のダウンサンプリング方法のいずれかが選択的に使用される場合、符号化器は、一つのダウンサンプリング方法を所定の方法として選択することができる。例えば、符号化器は、最適の効果を有するダウンサンプリング方法を選択することができる。選択されたダウンサンプリング方法は、符号化されて復号器へシグナリングできる。シグナリングされる情報は、ダウンサンプリング方法を指示するインデックス情報であり得る。
[数式1]
p1’[x, y] = (p1[2x, 2y] + p1[2x, 2y+1] + 1) >> 1
[数式2]
p1’[x, y] = (p1[2x+1, 2y] + p1[2x+1, 2y+1] + 1) >> 1
[数式3]
p1’[x, y]= (p1[2x-1, 2y] + 2 x p1[2x, 2y] + p1[2x+1, 2y] + 2) >> 2
[数式4]
p1’[x, y] = (p1[2x-1, 2y+1] + 2 * p1[2x, 2y+1] + p1[2x+1, 2y+1] + 2) >> 2
[数式5]
p1’[x, y] = (p1[2x-1, 2y] + 2 * p1[2x, 2y] + p1[2x+1, 2y] + p1[2x-1, 2y+1] + 2 * p1[2x, 2y+1] + p1[2x+1, 2y+1] + 4) >> 3
2つ以上のサンプルを用いてダウンサンプリングを行う方法は、前記数式1乃至数式5の実施形態に限定されない。例えば、ダウンサンプリングされた値p1’[x,y]を計算するために使用できる2つ以上のサンプルは、p1[2x,2y]及びこれに隣接するサンプルから選択できる。前記隣接するサンプルは、p1[2x−1,2y−1]、p[2x−1,2y]、p1[2x−1,2y+1]、p1[2x,2y−1]、p1[2x,2y+1]、p1[2x+1,2y−1]、p1[2x+1、2y]及びp1[2x+1、2y+1]から選択できる。二つ以上のサンプルを用いて平均又は加重平均を計算することにより、ダウンサンプリングを行うことができる。
又は、前記ダウンサンプリングは、一つ以上のサンプルの中から特定のサンプルを選択して行われ得る。このとき、下記数式6乃至数式9のうちの少なくとも一つの数式が利用できる。
[数式6]
p1’[x, y] = p1[2x, 2y]
[数式7]
p1’[x, y] = p1[2x, 2y+1]
[数式8]
p1’[x, y] = p1[2x+1, 2y]
[数式9]
p1’[x, y] = p1[2x+1, 2y+1]
第1色成分ブロックのサイズが第2色成分ブロックのサイズよりも小さい場合、前記第1色成分ブロックをアップサンプリング(up−sampling)して第2色成分ブロックのサイズと同じサイズのブロックに再構成することができる。このとき、下記数式10が利用できる。
[数式10]
p1’[2x, 2y] = p1[x,y],
p1’[2x+1, 2y] = (p1[x, y] + p1[x+1, y]+1)>>1,
p1’[2x, 2y+1] = (p1[x, y] + p1[x, y+1]+1)>>1,
p1’[2x+1, 2y+1] = (p1[x+1, y] + p1[x, y+1]+1) >> 1
前記再構成処理を行うにあたり、一つ以上のサンプルに対してフィルタを適用することができる。例えば、前記第1色成分対応ブロック、対応ブロックの近傍ブロック、第2色成分対象ブロック、及び対象ブロックの近傍ブロックのうちの少なくとも一つに含まれた1つ以上のサンプルに対してフィルタを適用することができる。
前述した参照サンプル構成ステップで、複数の参照サンプルラインのうちの所定のラインに対応するインジケータがシグナリングできる。このとき、前記再構成処理では、前記シグナリングされたインジケータに該当する所定のラインを用いて再構成を行うことができる。
前記再構成処理を行うにあたり、第2色成分対象ブロックの境界又は対応する第1色成分対応ブロックの境界のうちの少なくとも1つが所定の領域の境界に該当する場合、再構成に用いられる参照サンプルを異なるように選択することができる。このとき、上側の参照サンプルラインの個数と左側の参照サンプルラインの個数とが互いに異なり得る。前記所定の領域は、例えば、ピクチャ、スライス、タイル、CTU及びCUの少なくとも一つであり得る。
例えば、前記第1色成分対応ブロックの上側境界が前記所定の領域の境界に該当する場合には、上側の参照サンプルは用いず、左側の参照サンプルだけを用いて再構成を行うことができる。前記第1色成分対応ブロックの左側境界が前記所定の領域の境界に該当する場合、左側の参照サンプルは用いず、上側の参照サンプルだけを用いて再構成を行うことができる。又は、N個の上側参照サンプルラインとM個の左側参照サンプルラインを用いることができ、このとき、NはMより小さくてもよい。例えば、上側境界が前記所定の領域の境界に該当する場合には、Nは1であり、左側の境界が前記所定の領域の境界に該当する場合には、Mは1であり得る。
又は、前記所定の領域の境界に該当するか否かを問わずに、前記第1色成分対応ブロックのN個の上側参照サンプルライン及び/又はM個の左側参照サンプルラインを用いて再構成を行うこともできる。
図10は複数の上側及び/又は左側の参照サンプルラインを用いて再構成を行う実施形態を説明するための図である。
図10の(a)に示すように、4つの上側参照サンプルライン及び4つの左側参照サンプルラインを用いて再構成を行うことができる。
例えば、第1色成分対応ブロックの上側又は左側の境界が前記所定の領域の境界に該当する場合、再構成に用いられる上側及び左側参照サンプルラインの個数は互いに異なり得る。例えば、図10の(b)乃至(d)に示すように、2つの上側参照サンプルライン及び4つの左側参照サンプルラインを用いるか、或いは1つの上側参照サンプルライン及び3つの左側参照サンプルラインを用いるか、或いは1つの上側参照サンプルライン及び2つの左側参照サンプルラインを用いることができる。
用いられる参照サンプルラインの数は、上記の例に限定されず、N個の上側参照サンプルラインとM個の左側参照サンプルラインが用いられてもよい。N、Mは同一でも異なってもよい。上側及び左側の境界がすべて前記所定領域の境界に該当する場合には、NとMは同一であり得るが、例えば1である。又は、同じ条件で、NはMよりも小さく設定できる。これは左側参照サンプルラインよりも上側参照サンプルラインの記憶にさらに多くのリソース(メモリ)が必要だからである。
又は、図10の(e)に示すように、第1色成分対応ブロックの横幅及び縦幅から外れない一つ以上の参照サンプルを用いて再構成を行うこともできる。
前記再構成を行うにあたり、第1色成分対応ブロック及びその近傍ブロック、第2色成分対象ブロック及びその近傍ブロックのうちの少なくとも一つのブロックのサイズ、形状、符号化パラメータの少なくとも一つに応じて、第1色成分対応ブロックの参照サンプル再構成を異なるように行うことができる。
例えば、第1色成分対応ブロック又は近傍ブロックのうち、符号化モードが画面間符号化モードであるブロックのサンプルは用いず、画面内符号化モードであるブロックのサンプルを用いて参照サンプルを再構成することができる。
図11は対応ブロックの画面内予測モード又は符号化パラメータに応じて再構成に用いられる参照サンプルを説明するための例示図である。第1色成分対応ブロックの画面内予測モードに応じて、第1色成分ブロックの参照サンプルの再構成を異なるように行うことができる。例えば、対応ブロックの画面内予測モードがDCモード又はPlanarモードのように非方向性モードであるか、上側参照サンプルと左側参照サンプルの両方を用いる方向性モードである場合、図11の(a)に示すように、上側及び左側に存在する参照サンプルのうちの少なくとも1つを用いて再構成を行うことができる。又は、対応ブロックの画面内予測モードが上側参照サンプルと右上側参照サンプルを用いる方向性モードである場合、図11の(b)に示すように、上側及び右上側に存在する参照サンプルのうちの少なくとも一つを用いて再構成を行うことができる。又は、対応ブロックの画面内予測モードが左側及び左下側の参照サンプルを用いる方向性モードである場合、図11の(c)に示すように、左側及び左下側に存在する参照サンプルのうちの少なくとも一つを用いて再構成を行うことができる。
又は、第1色成分対応ブロック又は近傍ブロックのうちの少なくとも一つの量子化パラメータに応じて、第1色成分対応ブロックの参照サンプルの再構成を異なるように行うことができる。例えば、図11の(d)に示すように、近傍ブロックの量子化パラメータ値(QP)が相対的に小さい上側ブロックに属する参照サンプルを用いて再構成を行うことができる。
又は、第2色成分対象ブロックの形状が長方形である場合には、正方形である第1色成分対応ブロック近傍の参照サンプルを用いて再構成を行うことができる。
又は、第2色成分対象ブロックが2つのブロック(例えば、2つの16x8ブロック)に分割され、第1色成分対応ブロックは、例えば、32x16ブロックである場合には、32x32ブロックの近傍の参照サンプルを用いて再構成を行うことができる。この時、前記第2色成分対応ブロックのうち下側に位置する2番目の16x8ブロックに対応する第1色成分ブロックの参照サンプルとして、前記再構成した32x32ブロックの近傍の参照サンプルを共有することができる。
以下、ステップS820の予測パラメータ導出ステップについて説明する。
前記再構成した第1色成分対応ブロックの参照サンプルと第2色成分予測対象ブロックの参照サンプルのうちの少なくとも一つを用いて予測パラメータを導出することができる。以下、第1色成分及び第1色成分ブロックは、再構成した第1色成分及び再構成した第1色成分ブロックを意味することができる。
図12は、第2色成分予測対象ブロックが4x4である場合、再構成された第1色成分対応ブロックを説明するための例示図である。このとき、参照サンプルラインはN個であり得る。
予測パラメータは、図12の(a)に示すように、再構成された第1色成分対応ブロック又は第2色成分予測対象ブロックの上側と左側の参照サンプルを用いて導出できる。
例えば、予測パラメータは、第1色成分対応ブロックの画面内予測モードに基づいて、前記再構成された第1色成分の参照サンプルを適応的に用いることにより導出できる。このとき、第2色成分参照サンプルも、前記第1色成分対応ブロックの画面内予測モードに基づいて適応的に使用できる。
第1色成分対応ブロックの画面内予測モードがDCモード又はPlanarモードのように非方向性モードであるか、或いは上側参照サンプルと左側参照サンプルの両方を用いる方向性モードである場合、図12の(a)に示すように、第1色成分対応ブロックの上側と左側参照サンプルを用いることができる。
第1色成分対応ブロックの画面内予測モードが上側参照サンプルを用いる方向性モードである場合、図12の(b)又は(c)に示すように、第1色成分対応ブロックの上側参照サンプルを用いることができる。
第1色成分対応ブロックの画面内予測モードが左側参照サンプルを用いる方向性モードである場合、図12の(d)又は(e)に示すように、第1色成分対応ブロックの左側参照サンプルを用いることができる。
又は、第1色成分対応ブロックの画面内予測モードが方向性モードである場合、各モードごとに予測に利用する参照サンプルを前記第1色成分の参照サンプルとして用いることができる。例えば、前記画面内予測モードが垂直モードであれば、図12の(b)に示された参照サンプルを用いることができる。前記画面内予測モードが水平モードであれば、図12の(d)に示された参照サンプルを用いることができる。前記画面内予測モードが右上対角線モードであれば、図12の(c)に示された参照サンプルを用いることができる。前記画面内予測モードが左下対角線モードであれば、図12の(e)に示された参照サンプルを用いることができる。前記画面内予測モードが垂直モードと右上対角線モードとの間に存在するモードであれば、図12の(f)に示された参照サンプルを用いることができる。前記画面内予測モードが45度の対角線に該当する方向性モードである場合、図12の(g)に示すように右上側又は左下側の参照サンプルの少なくとも一つを用いることができる。画面内予測モードに応じて用いられる参照サンプルは、ルックアップテーブル(Look−up table)の形で記憶して用いることができる。
予測パラメータの導出は、第1色成分ブロック及び/又は第2色成分ブロックのサイズ及び/又は形状に応じて、前記第1色成分又は第2色成分の参照サンプルを適応的に用いて行われ得る。
例えば、前記第2色成分対象ブロックのサイズが64x64である場合、前記第1色成分又は第2色成分ブロックの上側又は左側の参照サンプルのうちの32個、16個又は8個の参照サンプルが使用できる。上述の如く、第2色成分対象ブロックのサイズが所定のサイズに該当する場合、前記第1又は第2色成分ブロックの参照サンプルが適応的に使用できる。前記所定のサイズは、64x64に限定されず、ビットストリームを介してシグナリングされるか、或いは現在ブロック及び近傍ブロックの符号化パラメータに基づいて導出されるサイズであり得る。
又は、第2色成分対象ブロックの形状が長方形である場合、横及び縦のうちの長い方に隣接する参照サンプルが使用できる。例えば、前記対象ブロックの形状が32x8である場合、前記第1色成分又は第2色成分ブロックの上側参照サンプルが使用できる。
又は、第2色成分対象ブロックの形状が長方形である場合、正方形ブロックの参照サンプルを用いることができる。例えば、前記対象ブロックの形状が32x8である場合、32x32ブロックの近傍に位置する参照サンプルが使用できる。
予測パラメータの導出は、前記再構成された第1色成分ブロックの参照サンプル及び第2色成分ブロックの参照サンプルを用いて行われ得る。前記色成分の参照サンプル間の関連性、変化量、平均値及び分布などの少なくとも一つに基づいて予測パラメータが導出できる。この際、LS(Least Square)やLMS(Least Mean Square)などの方法のうちの少なくとも一つが使用できる。
LMS方法を用いて予測パラメータを
導出する場合、予測パラメータはa、b又はアルファ、ベータのうちの少なくとも一つであり得る。下記数式11を用いて、第1色成分参照サンプルと第2色成分参照サンプル間のエラーを最小化する予測パラメータを
導出することができる。
前記数式11において、p2nは第2色成分参照サンプルを示し、p1’nは再構成された第1色成分の参照サンプルを示すことができる。Nは用いられる参照サンプルの横又は縦の個数を示し、a及びbは予測パラメータを示すことができる。
このとき、下記数式12を用いて、参照サンプル間の関連性を計算することができる。
前記数式12において、BitDepthはビット深度を示すことができる。p1’は再構成された第1色成分のサンプルを示し、p2は第2色成分のサンプルを示すことができる。図13は第1色成分のサンプル及び第2色成分のサンプルを説明するための図である。
予測パラメータを導出するとき、参照サンプルが存在しない領域がある場合、存在する参照サンプルだけを用いて予測パラメータを導出することができる。
前記予測パラメータを一つ以上導出することができる。例えば、前記予測パラメータを導出するために用いる参照サンプルの値が特定の条件を満たす参照サンプルから、第1予測パラメータを導出することができる。また、前記特定の条件を満たさない参照サンプルから第2予測パラメータを導出することができる。前記特定の条件は、参照サンプルの値が参照サンプルの統計値(例えば、平均値)よりも小さい場合に該当することができる。
本発明の他の実施形態によれば、参照サンプルを用いて予測パラメータを導出せず、基本予測パラメータ(default parameter)が使用されることもある。前記基本予測パラメータは符号化器と復号器で既に定義できる。例えば、予測パラメータa、bはそれぞれ1、0であり得る。
又は、予測パラメータが導出される場合、導出された予測パラメータは符号化/復号できる。
Y、Cb、Cr間の色成分間予測を行う場合、CbとCrを予測するための予測パラメータをYからそれぞれ導出することもできる。又は、Crを予測するための予測パラメータをCbから導出することができる。又は、Crを予測するための予測パラメータを導出せず、Cbを予測するためにYから導出した予測パラメータを用いることができる。
以下、ステップS830の色成分間予測実行ステップについて説明する。
前述したように、予測パラメータが導出されると、導出された予測パラメータのうちの少なくとも一つを用いて色成分間画面内予測を行うことができる。
例えば、下記数式13を用いて、再構成された第1色成分の
再構成された信号に、前記
導出された予測パラメータを適用することにより、第2色成分対象ブロックに対する予測を行うことができる。
前記数式13において、p2[x,y]は第2色成分対象ブロックの予測ブロックであり得る。p1’[x,y]は第1色成分ブロック又は再構成された第1色成分ブロックであり得る。
又は、下記数式14を用いて、再構成された第1色成分の残差信号に、前記
導出された予測パラメータを適用することにより、第2色成分対象ブロックに対する予測を行うこともできる。
前記数式14において、p1’_residualは第1色成分の残差信号を示すことができる。また、p2_predは第2色成分対象ブロックに対して画面内予測を行って予測した信号を示すことができる。
前記導出した予測パラメータが一つ以上である場合には、前記第1色成分の再構成されたサンプルに前記一つ以上の予測パラメータを適用することができる。例えば、前記第1色成分の再構成されたサンプルが特定の条件を満足する場合には、前記特定の条件を満足する参照サンプルから導出された第1予測パラメータを適用して、色成分間画面内予測を行うことができる。また、前記第1色成分の再構成されたサンプルが前記特定の条件を満足しない場合、前記特定の条件を満足しない参照サンプルから導出された第2予測パラメータを適用して、色成分間画面内予測を行うことができる。前記特定の条件は、参照サンプルの値が前記第1色成分の参照サンプルの統計値(例えば、平均値)よりも小さい場合に該当することができる。
前記色成分間予測方法は、画面間予測モードにも適用することができる。たとえば、現在ブロックに対する画面間予測を行うにあたり、第1色成分に対しては画面間予測を行い、第2色成分に対しては色成分間予測を行うことができる。例えば、前記第1色成分は輝度成分であり、第2色成分は色差成分であり得る。また、前記色成分間予測は、第1色成分の符号化パラメータに応じて適応的に行うことができる。例えば、前記第1色成分のCBF情報に基づいて、前記色成分間予測を行うか否かを決定することができる。前記CBF情報は残差信号の存否を示す情報であり得る。すなわち、前記第1色成分のCBFが1である場合、第2色成分に対して色成分間予測を行うことができる。前記第1色成分のCBFが0である場合には、第2色成分に対して色成分間予測を行わずに、前記画面間予測を行うことができる。又は、前記色成分間予測を行うか否かを示すフラグをシグナリングすることができる。
これらの実施形態は、符号化器及び復号器で同様の方法で行われ得る。
これらの実施形態を適用する順序は、符号化器と復号器で互いに異なってもよく、前記実施形態を適用する順序は、符号化器と復号器で同一であってもよい。
輝度及び色差信号それぞれに対して前記実施形態を行うことができ、輝度及び色差信号に対する前記実施形態を同様に行うことができる。
上述した本発明の実施形態が適用されるブロックの形状は、正方形(square)あるいは非正方形(non−square)の形状を有することができる。
上述した本発明の実施形態は、符号化ブロック、予測ブロック、変換ブロック、ブロック、現在ブロック、符号化ユニット、予測ユニット、変換ユニット、ユニット、及び現在ユニットのうちの少なくとも一つのサイズに応じて適用できる。ここでのサイズは、これらの実施形態が適用されるために、最小サイズ及び/又は最大サイズと定義されることもあり、前記実施形態が適用される固定サイズと定義されることもある。また、これらの実施形態は、第1のサイズでは第1実施形態が適用でき、第2のサイズでは第2実施形態が適用できる。すなわち、これらの実施形態は、大きさに応じて複合的に適用できる。また、上述した本発明の実施形態は、最小サイズ以上及び最大サイズ以下の場合にのみ適用できる。すなわち、これらの実施形態を、ブロックのサイズが一定の範囲内に含まれる場合にのみ適用可能である。
例えば、現在ブロックのサイズが8x8以上である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが4x4である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが16x16以下である場合にのみ、前記実施形態が適用できる。例えば、現在ブロックのサイズが16x16以上、64×64以下である場合にのみ、前記実施形態が適用できる。
上述した本発明の実施形態は、時間的階層(temporal layer)に応じて適用できる。これらの実施形態が適用可能な時間的階層を識別するために、別途の識別子(identifier)がシグナリングされ、該当識別子によって特定された時間的階層に対してこれらの実施形態が適用できる。ここでの識別子は、前記実施形態に適用可能な最下位階層及び/又は最上位階層と定義されることもあり、前記実施形態が適用される特定の階層を指し示すものと定義されることもある。また、前記実施形態が適用される固定された時間的階層が定義されることもある。
例えば、現在画像の時間的階層が最下位階層である場合にのみ、前記実施形態が適用できる。例えば、現在画像の時間的階層識別子が1以上である場合にのみ、前記実施形態が適用できる。例えば、現在画像の時間的階層が最上位階層である場合にのみ、前記実施形態が適用できる。
上述した本発明の実施形態が適用されるスライスタイプ(slice type)が定義され、当該スライスタイプに応じて本発明の実施形態が適用できる。
上述した実施形態において、これらの方法は、一連のステップ又はユニットでフローチャートに基づいて説明されているが、本発明は、これらのステップの順序に限定されるものではなく、あるステップは、上述したのとは異なるステップと異なる順序で又は同時に発生することができる。また、当該技術分野における通常の知識を有する者であれば、フローチャートに示されたステップが排他的ではなく、他のステップが含まれるか、フローチャートの一つ又はそれ以上のステップが本発明の範囲に影響することなく削除できることを理解することができるだろう。
上述した実施形態は、様々な態様の例示を含む。様々な態様を示すためのすべての可能な組み合わせを記述することはできないが、当該技術分野における通常の知識を有する者は、他の組み合わせが可能であることを認識することができるだろう。よって、本発明は、以下の特許請求の範囲内に属するすべての様々な交替、修正及び変更を含むといえる。
以上説明した本発明に係る実施形態は、様々なコンピュータ構成要素を介して実行できるプログラム命令の形で実現され、コンピュータ可読記録媒体に記録できる。前記コンピュータ可読記録媒体は、プログラム命令、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記コンピュータ可読記録媒体に記録されるプログラム命令は、本発明のために特別に設計及び構成されたもの、又はコンピュータソフトウェア分野の当業者に公知されて使用可能なものである。コンピュータ可読記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープなどの磁気媒体、CD−ROM、DVDなどの光記録媒体、フロプティカルディスク(floptical disk)などの磁気−光媒体(magneto−optical media)、及びROM、RAM、フラッシュメモリなどのプログラム命令を記憶し実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラによって作られる機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行できる高級言語コードも含まれる。前記ハードウェア装置は、本発明に係る処理を行うために一つ以上のソフトウェアモジュールとして作動するように構成でき、その逆も同様である。
以上で、本発明が、具体的な構成要素などの特定の事項、限定された実施形態及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものに過ぎず、本発明はこれらの実施形態に限定されるものではない。本発明の属する技術分野における通常の知識を有する者であれば、このような記載から多様な修正及び変形を図ることができる。
よって、本発明の思想は、上述した実施形態に限定されて定められてはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等に又は等価的に変形したすべてのものは本発明の思想の範疇に属するというべきである。
本発明は、画像を符号化/復号することに利用可能である。