【文献】
Wei-Jung Chien(外2名),Parsing friendly intra mode coding,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC-F459,米国,ITU-T,2011年 7月22日,p.1-5
【文献】
Tzu-Der Chuang(外5名),Luma Intra Prediction Mode Coding,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC-F062,米国,ITU-T,2011年 7月22日,p.1-5
【文献】
Toru Kumakura(外1名),Intra prediction mode coding based on direction difference,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC-F339,米国,ITU-T,2011年 7月22日,p.1-13
【文献】
Yunfei Zheng(外5名),CE11: Mode Dependent Coefficient Scanning,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC-D393,米国,ITU-T,2011年 1月28日,p.1-5
【文献】
Joel Sole(外2名),CE11: Unified scans for the significance map and coefficient level coding in high efficiency,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC-F288,米国,ITU-T,2011年 7月22日,p.1-9
【文献】
Toru Kumakura(外2名),Fixing the number of mpm candidates,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC-F340,米国,ITU-T,2011年 7月22日,p.1-8
【文献】
Jianle Chen,BoG report on intra mode coding with fixed number of MPM candidates,Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting:Torino,IT,14-22 July,2011,米国,JCTVC,2011年 7月20日,JCTVC-F765,P.1-P.3,URL,http://phenix.it-sudparis.eu/jct/index.php
(58)【調査した分野】(Int.Cl.,DB名)
垂直モード及び前記垂直モードに隣接した予め決められた個数のイントラ予測モードでは水平スキャンが適用され、水平モードと前記水平モードに隣接した予め決められた個数のイントラ予測モードでは垂直スキャンが適用され、残りのイントラ予測モードでは対角線スキャンが適用されることを特徴とする請求項2に記載の方法。
ノンゼロサブセットフラグを利用して生成されるサブセットを決定し、前記サブセットは、重要フラグ、係数符号及び係数レベルに前記逆スキャンパターンを適用して生成されることを特徴とする請求項6に記載の方法。
【発明を実施するための形態】
【0009】
以下、本発明の多様な実施例を例示図面を参照して詳細に説明する。本発明は、多様な変更を加えることができ、多様な実施例を有することができ、本発明を特定の実施形態に対して限定するものではなく、本発明の思想及び技術範囲に含まれる全ての変更、均等物乃至代替物を含むと理解しなければならない。各図面の説明において、類似の構成要素に対して類似の参照符号を使用した。
【0010】
図1は、本発明による映像符号化装置100を示すブロック図である。
【0011】
図1を参照すると、本発明による映像符号化装置100は、ピクチャ分割部101、変換部103、量子化部104、スキャニング部105、エントロピー符号化部106、逆量子化部107、逆変換部108、後処理部110、ピクチャ格納部111、イントラ予測部112、インター予測部113、減算部102及び加算部109を含む。
【0012】
ピクチャ分割部101は、ピクチャ又はスライスを複数個のLCU(Largest Coding Unit)に分割し、前記各々のLCUを一つ以上のコーディングユニットに分割する。ピクチャ分割部101は、各コーディングユニットの予測モード、予測ユニットのサイズ及び変換ユニットのサイズを決定する。
【0013】
一つのLCUは、一個又は複数個のコーディングユニット(coidng unit)を含む。前記LCUは、分割構造を示すために、再帰的クワッドツリー構造(recursive quadtree structure)を有する。コーディングユニットの最大サイズ及び最小サイズを示す情報がシーケンスパラメータセット(sequence parameter set)に含まれる。前記分割構造は、一個又は複数個の分割コーディングユニットフラグ(split_cu_flag)を利用して表現される。コーディングユニットは、2N×2Nのサイズを有する。
【0014】
コーディングユニットは、一個又は複数個の予測ユニット(prediction unit)を含む。イントラ予測において、前記予測ユニットのサイズは、2N×2N又はN×Nである。インター予測において、前記予測ユニットのサイズは、2N×2N、2N×N、N×2N又はN×Nである。インター予測において、予測ユニットが非対称パーティション(asymmetric partition)の場合、前記予測ユニットのサイズは、hN×2N、(2−h)N×2N、2N×hN及び2N×(2−h)Nのうち一つである。ここで、hは、1/2である。
【0015】
コーディングユニットは、一個又は複数個の変換ユニット(transform unit)を含む。変換ユニットは、分割構造を示すために、再帰的クワッドツリー構造(recursive quadtree structure)を有する。分割構造は、一個又は複数個の分割変換ユニットフラグ(split_tu_flag)により表現される。変換ユニットの最大サイズ及び最小サイズを示す情報がシーケンスパラメータセットに含まれる。
【0016】
イントラ予測部112は、現在予測ユニットのイントラ予測モードを決定し、前記イントラ予測モードを利用して一個又は複数個の予測ブロックを生成する。予測ブロックは、変換ユニットと同じサイズを有する。
【0017】
図2は、本発明によるイントラ予測モードを説明する概念的ブロック図である。
図2に示すように、イントラ予測モードの数は、35個である。DCモードとプラナー(Planar)モードは、非方向性イントラ予測モードであり、残りは、方向性モードである。
【0018】
インター予測部113は、ピクチャ格納部111に格納されている一つ以上の参照ピクチャを利用して現在予測ユニットの動き情報を決定し、前記予測ユニットの予測ブロックを生成する。前記動き情報は、一つ以上の参照ピクチャインデックスと一つ以上の動きベクトルを含む。
【0019】
変換部103は、原本ブロックと予測ブロックを利用して生成される残差信号を変換して変換ブロックを生成する。残差信号は、変換ユニット単位に変換される。変換タイプは、予測モード及び変換ユニットのサイズによって決定される。変換タイプは、DCTベースの整数変換又はDSTベースの整数変換である。
【0020】
量子化部104は、前記変換ブロックを量子化するための量子化パラメータを決定する。量子化パラメータは、量子化ステップサイズである。量子化パラメータは、量子化ユニット毎に決定される。前記量子化ユニットのサイズは、コーディングユニットの許容可能なサイズのうち一つである。コーディングユニットのサイズが量子化ユニットの最小サイズより大きい又は同じ場合、前記コーディングユニットが量子化ユニットとして設定される。複数個のコーディングユニットが一つの量子化ユニットに含まれることもできる。前記量子化ユニットの最小サイズは、ピクチャ毎に決定され、前記量子化ユニットの最小サイズを特定するために、一つのパラメータが使われる。前記パラメータは、ピクチャパラメータセット(picture parameter set)に含まれる。
【0021】
量子化部104は、量子化パラメータ予測子を生成し、量子化パラメータから量子化パラメータ予測子を引いて差分量子化パラメータを生成する。前記差分量子化パラメータは、符号化されて復号器に送信される。コーディングユニット内に送信される残差信号が存在しない場合、前記コーディングユニットの差分量子化パラメータは送信されない。
【0022】
前記量子化パラメータ予測子は、隣接コーディングユニットの量子化パラメータと以前コーディングユニットの量子化パラメータを利用して下記のように生成される。
【0023】
左側量子化パラメータ、上側量子化パラメータ及び以前量子化パラメータは、前記順序通りに検索される。2個以上の量子化パラメータが利用可能な場合、前記順序に検索される最初の2個の利用可能な量子化パラメータの平均値が量子化パラメータ予測子に設定され、一つの量子化パラメータのみ利用可能な場合は、前記利用可能な量子化パラメータが量子化パラメータ予測子に設定される。即ち、前記左側量子化パラメータ及び前記上側量子化パラメータが利用可能の場合、前記左側及び上側量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。前記左側量子化パラメータ及び前記上側量子化パラメータのうち一つのみが利用可能の場合、前記利用可能な量子化パラメータと前記以前量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。前記左側及び上側量子化パラメータが両方とも利用可能でない場合、前記以前量子化パラメータが前記量子化パラメータ予測子に設定される。前記平均値は、四捨五入した平均値である。
【0024】
前記差分量子化パラメータは、前記差分量子化パラメータの絶対値と前記差分量子化パラメータの符号を示す符号フラグに変換される。前記差分量子化パラメータの絶対値は、トランケーテッドユーナリ(truncated unary)に二進化される。その後、前記絶対値と前記符号フラグが算術符号化される。前記絶対値が0の場合、符号フラグは存在しない。
【0025】
量子化部104は、量子化マトリクス及び量子化パラメータを利用して変換ブロックを量子化する。量子化ブロックは、逆量子化部107とスキャニング部105に提供される。
【0026】
スキャニング部105は、スキャンパターンを決定し、前記スキャンパターンを前記量子化ブロックに適用する。
【0027】
イントラ予測では、量子化された変換係数の分布がイントラ予測モード及び変換ユニットのサイズにより変わる。したがって、スキャンパターンは、前記イントラ予測モード及び前記変換ユニットのサイズにより決定される。
【0028】
図3は、本発明によるスキャンパターンを説明する概念図である。
図4は、本発明による対角線スキャンを説明する概念図である。
図3に示すように、第1のスキャンパターンはジグザグスキャンであり、第2のスキャンパターンは水平スキャンであり、第3のスキャンパターンは垂直スキャンである。
【0029】
CAVLC(Context adaptive variable length coding)がエントロピーコーディングに使われると、ジグザグスキャン、水平スキャン及び垂直スキャンの中から一つが選択される。しかし、CABAC(Context adaptive binary arithmetic coding)がエントロピーコーディングに使われると、対角線スキャン、水平スキャン及び垂直スキャンの中から一つが選択され、前記選択されたスキャンパターンが量子化ブロックの重要フラグ、係数符号及び係数レベルに各々適用される。前記重要フラグは、対応する量子化変換係数が0であるか否かを示す。前記係数符号は、0でない量子化変換係数の符号を示す。前記係数レベルは、0でない量子化変換係数の絶対値を示す。
【0030】
図5は、本発明によるイントラ予測モードと変換ユニットのサイズにより決定される例示的なスキャンパターンを説明する概念図である。CABACがエントロピーコーディングに使われると、スキャンパターンは、下記のように決定される。
【0031】
変換ユニットのサイズが4×4の場合、垂直モード(モード1)と前記垂直モードに隣接した第1の個数のイントラ予測モードで水平スキャンが適用され、水平モード(モード2)と前記水平モードに隣接した第1の個数のイントラ予測モードで垂直スキャンが適用され、残りのイントラ予測モードで対角線スキャンが適用される。即ち、4×4変換ユニットに対して許容可能なイントラ予測モードがモード0〜17の場合、モード5、モード6及びモード5とモード6との間の許容可能なモードで水平スキャンが適用され、モード8、モード9及びモード8とモード9との間の許容可能なモードで垂直スキャンが適用される。4×4変換ユニットにモード0〜34が許容されると、適用されるスキャンパターンは、以下の8×8変換ユニットのスキャンパターンと同じである。
【0032】
変換ユニットのサイズが8×8の場合、垂直モード(モード1)と前記垂直モードに隣接した第2の個数のイントラ予測モードで水平スキャンが適用され、水平モード(モード2)と前記水平モードに隣接した第2の個数のイントラ予測モードで垂直スキャンが適用され、残りのイントラ予測モードで対角線スキャンが適用される。即ち、モード5、モード6及びモード5とモード6との間の許容可能なモードで水平スキャンが適用され、モード8、モード9及びモード8とモード9との間の許容可能なモードで垂直スキャンが適用され、残りのイントラ予測モードで対角線スキャンが適用される。モード5とモード6との間の許容可能なイントラ予測モードは、モード21、モード12、モード22、モード1、モード23、モード13及びモード24である。モード8とモード9との間の許容可能なモードは、モード29、モード16、モード30、モード2、モード31、モード17、モード32及びモード9である。
【0033】
インター予測では、変換ユニットのサイズに関係なく予め決められたスキャンが使われる。CABACがエントロピーコーディングに使われると、前記予め決められたスキャンパターンは、対角線スキャンである。
【0034】
変換ユニットのサイズが第2のサイズより大きい場合、前記量子化ブロックは、メインサブセットと複数個の残余サブセットに分割され、前記決定されたスキャンパターンが各サブセットに適用される。各サブセットの重要フラグ、係数符号及び係数レベルが各々前記決定されたスキャンパターンによってスキャンされる。量子化された変換係数は、重要フラグ、係数符号及び係数レベルに分離される。
【0035】
メインサブセットは、DC係数を含み、残余サブセットは、前記メインサブセットがカバーする領域以外の領域をカバーする。前記第2のサイズは4×4である。サブセットのサイズは4×4ブロックであってもよく、スキャンパターンによって決定される非正方形ブロックであってもよい。前記非正方形ブロックは、16個の変換係数を含む。例えば、前記サブセットのサイズは、水平スキャン時は8×2、垂直スキャン時は2×8、対角線スキャン時は4×4である。
【0036】
サブセットをスキャンするためのスキャンパターンは、前記各サブセットの量子化された変換係数をスキャンするためのスキャンパターンと同じである。各サブセットの量子化された変換係数は、逆方向にスキャンされる。前記サブセットも逆方向にスキャンされる。
【0037】
0でない最後の係数位置(last non−zero coefficient position)が符号化されて復号器に送信される。0でない最後の係数位置は、変換ユニット内での0でない最後の量子化された変換係数の位置を示す。前記0でない最後の係数位置は、復号器がシグナリングされるサブセットの数を決定するのに使われる。ノンゼロサブセットフラグ(non−zero subset flag)がメインサブセットと最後のサブセット以外の各サブセットに対して設定される。前記最後のサブセットは、0でない最後の係数をカバーする。ノンゼロサブセットフラグは、サブセットが0でない係数を含むかどうかを示す。
【0038】
逆量子化部107は、量子化ブロックの量子化された変換係数を逆量子化する。
【0039】
逆変換部108は、逆量子化ブロックを逆変換して空間領域が残差信号を生成する。
【0040】
加算部109は、残差ブロックと予測ブロックを加えて復元ブロックを生成する。
【0041】
後処理部110は、復元されたピクチャで発生するブロッキングアーチファクトを除去するためのデブロッキングフィルタリング過程を実行する。
【0042】
ピクチャ格納部111は、後処理部110から後処理された映像を受信し、ピクチャ単位に前記映像を格納する。ピクチャは、フレーム又はフィールドである。
【0043】
エントロピー符号化部106は、スキャニング部105から受信される1次元係数情報、イントラ予測部112から受信されるイントラ予測情報、インター予測部113から受信される動き情報などをエントロピー符号化する。
【0044】
図6は、本発明による映像復号化装置200を示すブロック図である。
【0045】
本発明による映像復号化装置200は、エントロピー復号化部201、逆スキャニング部202、逆量子化部203、逆変換部204、加算部205、後処理部206、ピクチャ格納部207、イントラ予測部208及びインター予測部209を含む。
【0046】
エントロピー復号化部201は、受信されたビットストリームからイントラ予測情報、インター予測情報及び1次元係数情報を抽出する。エントロピー復号化部201は、インター予測情報をインター予測部209に送信し、イントラ予測情報をイントラ予測部208に送信し、前記係数情報を逆スキャニング部202に送信する。
【0047】
逆スキャニング部202は、逆スキャンパターンを使用して量子化ブロックを生成する。CABACがエントロピー符号化方法として使われると、スキャンパターンは、下記のように決定される。
【0048】
逆スキャンパターンは、対角線スキャン、垂直スキャン及び水平スキャンの中から選択される。
【0049】
イントラ予測では、イントラ予測モード及び変換ユニットのサイズにより逆スキャンパターンが決定される。逆スキャンパターンは、対角線スキャン、垂直スキャン及び水平スキャンの中から選択される。前記選択された逆スキャンパターンが重要フラグ、係数符号及び係数レベルに各々適用されて量子化ブロックを生成する。
【0050】
変換ユニットのサイズが前記第1のサイズより小さい又は同じ場合、垂直モード及び前記垂直モードに隣接した予め決められた個数のイントラ予測モードでは水平スキャンが選択され、水平モード及び前記水平モードに隣接した予め決められた個数のイントラ予測モードでは垂直スキャンが選択され、残りのイントラ予測モードでは対角線スキャンが選択される。変換ユニットのサイズが前記第1のサイズより大きい場合、全てのイントラ予測モードに対角線スキャンが適用される。前記第1のサイズは、8×8である。
【0051】
変換ユニットのサイズが4×4の場合、垂直モード(モード1)と前記垂直モードに隣接した第1の個数のイントラ予測モードで水平スキャンが適用され、水平モード(モード2)と前記水平モードに隣接した第1の個数のイントラ予測モードで垂直スキャンが適用され、残りのイントラ予測モードで対角線スキャンが適用される。即ち、4×4変換ユニットに対して許容可能なイントラ予測モードがモード0〜17の場合、モード5、モード6及びモード5とモード6との間の許容可能なモードで水平スキャンが適用され、モード8、モード9及びモード8とモード9との間の許容可能なモードで垂直スキャンが適用される。4×4変換ユニットにモード0〜34が許容されると、適用されるスキャンパターンは、以下の8×8変換ユニットのスキャンパターンと同じである。
【0052】
変換ユニットのサイズが8×8の場合、垂直モード(モード1)と前記垂直モードに隣接した第2の個数のイントラ予測モードで水平スキャンが適用され、水平モード(モード2)と前記水平モードに隣接した第2の個数のイントラ予測モードで垂直スキャンが適用され、残りのイントラ予測モードで対角線スキャンが適用される。即ち、モード5、モード6及びモード5とモード6との間の許容可能なモードで水平スキャンが適用され、モード8、モード9及びモード8とモード9との間の許容可能なモードで垂直スキャンが適用され、残りのイントラ予測モードで対角線スキャンが適用される。モード5とモード6との間の許容可能なイントラ予測モードは、モード21、モード12、モード22、モード1、モード23、モード13及びモード24である。モード8とモード9との間の許容可能なモードは、モード29、モード16、モード30、モード2、モード31、モード17、モード32及びモード9である。
【0053】
インター予測では、対角線スキャンが使われる。
【0054】
変換ユニットのサイズが第2のサイズより大きい場合、重要フラグ、係数符号及び係数レベル(levels)が前記決定された逆スキャンパターンによってサブセット単位に逆スキャンされてサブセットを生成し、前記サブセットは、逆スキャンされて量子化ブロックを生成する。前記第2のサイズは、4×4である。サブセットがサイズは、4×4であってもよく、スキャンパターンによって決定される非正方形ブロックであってもよい。前記非正方形ブロックは、16個の変換係数を含む。例えば、水平スキャンではサブセットのサイズが8×2であり、垂直スキャンではサブセットのサイズが2×8であり、対角線スキャンではサブセットのサイズが4×4である。
【0055】
各サブセットを生成するために使われる逆スキャンパターンは、量子化ブロックを生成するために使われる逆スキャンパターンと同じである。重要フラグ、係数符号及び係数レベルは、逆方向に逆スキャンされる。サブセットも逆方向に逆スキャンされる。
【0056】
0でない最後の係数位置及びノンゼロサブセットフラグが符号化器から受信される。0でない最後の係数位置及び逆スキャンパターンによって、符号化されたサブセットの数が決定される。ノンゼロサブセットフラグは、生成されるサブセットを選択するために使われる。メインサブセットと最後のサブセットは、前記逆スキャンパターンを利用して生成される。
【0057】
逆量子化部203は、エントロピー復号化部201から差分量子化パラメータを受信し、量子化パラメータ予測子を生成する。量子化パラメータ予測子は、
図1の量子化部104による動作と同様な過程を介して生成される。その後、逆量子化部203は、前記差分量子化パラメータと前記量子化パラメータ予測子を加えて現在コーディングユニットの量子化パラメータを生成する。現在コーディングユニットが最小量子化ユニットより大きい又は同じであり、現在コーディングユニットの差分量子化パラメータが符号器から受信されない場合、前記差分量子化パラメータは、0に設定される。
【0058】
逆量子化パラメータは、量子化ユニット毎に生成される。コーディングユニットのサイズが量子化ユニットの最小サイズより大きい又は同じ場合、前記コーディングユニットに対する量子化パラメータが生成される。複数個のコーディングユニットが一つの量子化ユニットに含まれると、0でない係数を含む復号化順序上、1番目のコーディングユニットに対する量子化パラメータが生成される。前記1番目のコーディングユニット以後の前記量子化ユニット内に存在するコーディングユニットは、前記1番目のコーディングユニットと同じ量子化パラメータを有する。
【0059】
量子化ユニットの最小サイズは、ピクチャパラメータセットに含まれている一つのパラメータと最大コーディングユニットのサイズを利用してピクチャ毎に誘導される。
【0060】
差分量子化パラメータが量子化ユニット毎に復元される。符号化された差分量子化パラメータを算術復号化して差分量子化パラメータの絶対値と前記差分量子化パラメータの符号を示す符号フラグを生成する。前記差分量子化パラメータの絶対値は、トランケーテッドユーナリ(truncated unary)形態のビンストリング(bin string)である。前記差分量子化パラメータは、前記絶対値と符号フラグを利用して復元される。前記絶対値が0の場合、前記符号フラグは存在しない。
【0061】
逆量子化部203は、量子化ブロックを逆量子化する。
【0062】
逆変換部204は、前記逆量子化されたブロックを逆変換して残差ブロックを復元する。逆変換タイプは、予測モード及び変換ユニットのサイズによって決定される。逆変換タイプは、DCTベースの整数変換又はDSTベースの整数変換である。
【0063】
イントラ予測部208は、受信されたイントラ予測情報を利用して現在予測ユニットのイントラ予測モードを復元し、前記復元されたイントラ予測モードに応じて予測ブロックを生成する。
【0064】
インター予測部209は、受信されたインター予測情報を利用して現在予測ユニットの動き情報を復元し、前記動き情報を利用して予測ブロックを生成する。
【0065】
後処理部206は、
図1の後処理部110と同様に動作する。
【0066】
ピクチャ格納部207は、後処理部206から後処理された映像を受信し、ピクチャ単位に前記映像を格納する。ピクチャは、フレーム又はフィールドである。
【0067】
加算部205は、復元された残差ブロックと予測ブロックを加えて復元ブロックを生成する。
【0068】
図7は、本発明による予測ブロックを生成する方法を説明するフローチャートである。
【0069】
現在予測ユニットのイントラ予測情報がエントロピー復号化される(S110)。
【0070】
前記イントラ予測情報は、モードグループ指示子及び予測モードインデックスを含む。前記モードグループ指示子は、現在予測ユニットのイントラ予測モードがMPMグループ(most probable mode group)に属するかどうかを示すフラグである。前記フラグが1の場合、現在予測ユニットのイントラ予測モードはMPMグループに属する。前記フラグが0の場合、現在予測ユニットのイントラ予測モードは残余モードグループ(residual mode group)に属する。前記残余モードグループは、前記MPMグループに属するイントラ予測モード以外の全てのイントラ予測モードを含む。前記予測モードインデックスは、前記モードグループ指示子により特定されるグループ内での現在予測ユニットのイントラ予測モードを特定する。
【0071】
隣接予測ユニットのイントラ予測モードを利用してMPMグループが構成される(S120)。
【0072】
前記MPMグループのイントラ予測モードは、左側イントラ予測モード及び上側イントラ予測モードにより適応的に決定される。前記左側イントラ予測モードは、左側に隣接した予測ユニットのイントラ予測モードであり、前記上側イントラ予測モードは、上側に隣接した予測ユニットのイントラ予測モードである。前記MPMグループは、3個のイントラ予測モードで構成される。
【0073】
前記左側又は上側に隣接した予測ユニットが存在しない場合、前記左側又は上側の隣接予測ユニットのイントラ予測モードは利用可能でないと設定される。例えば、現在予測ユニットがピクチャの左側又は上側の境界に位置すると、左側又は上側に隣接した予測ユニットが存在しない。左側又は上側に隣接した予測ユニットが他のスライス又は他のタイルに属すると、左側又は上側に隣接した予測ユニットのイントラ予測モードは利用可能でないと設定される。左側又は上側に隣接した予測ユニットがインター符号化されると、左側又は上側に隣接した予測ユニットのイントラ予測モードが利用可能でないと設定される。上側予測ユニットが他のLCUに属すると、前記上側予測に隣接した予測ユニットのイントラ予測モードが利用可能でないと設定される。
【0074】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能であり、且つ互いに異なる場合は、前記左側イントラ予測モード及び前記上側イントラ予測モードが前記MPMグループに含まれ、1個の追加イントラ予測モードが前記MPMグループに追加される。二つのうち、モード番号が小さいイントラ予測モードにインデックス0が割り当てられ、残りの一つにインデックス1が割り当てられる。または、左側イントラ予測モードにインデックス0が割り当てられ、上側イントラ予測モードにインデックス1が割り当てられてもよい。前記追加イントラ予測モードは、前記左側及び上側イントラ予測モードにより下記のように決定される。
【0075】
左側及び上側イントラ予測モードのうち一つが非方向性モード(non−directional mode)であり、他の一つが方向性モード(directional mode)の場合、残りの一つの非方向性モードが前記MPMグループに追加される。例えば、前記左側及び上側イントラ予測モードのうち、一つがDCモードの場合、プラナーモードが前記MPMグループに追加され、前記左側及び上側イントラ予測モードのうち、一つがプラナーモードの場合、DCモードが前記MPMグループに追加される。左側及び上側イントラ予測モードが両方とも非方向性モードの場合、垂直モードが前記MPMグループに追加される。左側及び上側イントラ予測モードが両方とも方向性モードの場合、DCモード又はプラナーモードが前記MPMグループに追加される。
【0076】
左側イントラ予測モード及び上側イントラ予測モードのうち一つのみ利用可能な場合は、前記利用可能なイントラ予測モードが前記MPMグループに含まれ、2個の追加イントラ予測モードが前記MPMグループに追加される。前記2個の追加イントラ予測モードは、前記利用可能なイントラ予測モードにより下記のように決定される。
【0077】
前記利用可能なイントラ予測モードが非方向性モードの場合、残りの一つの非方向性モードと垂直モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがDCモードの場合、プラナーモードと垂直モードが前記MPMグループに追加される。前記利用可能なイントラ予測モードがプラナーモードの場合、DCモードと垂直モードが前記MPMグループに追加される。前記利用可能なイントラ予測モードが方向性モードの場合、2個の非方向性モード(DCモード及びプラナーモード)が前記MPMグループに追加される。
【0078】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能であり、且つ互いに同じ場合、前記利用可能なイントラ予測モードがMPMグループに含まれ、2個の追加イントラ予測モードが前記MPMグループに追加される。前記追加される2個のイントラ予測モードは、前記利用可能なイントラ予測モードにより下記のように決定される。
【0079】
前記利用可能なイントラ予測モードが方向性モードの場合、2個の隣接方向性モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがモード23の場合、左側隣接モード(モード1)と右側隣接モード(モード13)が前記MPMグループに追加される。前記利用可能なイントラ予測モードがモード30の場合、2個の隣接モード(モード2とモード16)が前記MPMグループに追加される。前記利用可能なイントラ予測モードが非方向性モードの場合、残りの一つの非方向性モードと垂直モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがDCモードの場合、プラナーモードと垂直モードが前記MPMグループに追加される。
【0080】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能でない場合は、3個の追加イントラ予測モードが前記MPMグループに追加される。前記3個のイントラ予測モードは、DCモード、プラナーモード及び垂直モードである。DCモード、プラナーモード及び垂直モードの順序に又はプラナーモード、DCモード及び垂直モードの順序にインデックス0、1及び2が前記3個のイントラ予測モードに割り当てられる。
【0081】
前記モードグループ指示子がMPMグループを指示するかどうかを決定する(S130)。
【0082】
前記モードグループ指示子が前記MPMグループを示す場合、前記予測モードインデックスにより特定されるMPMグループ内のイントラ予測モードが現在予測ユニットのイントラ予測モードとして設定される(S140)。
【0083】
前記モードグループ指示子が前記MPMグループを示さない場合、イントラ予測モードは、前記予測モードインデックス及び前記MPMグループのイントラ予測モードを比較して下記の順序に誘導される(S150)。
【0084】
1)MPMグループ内の3個のイントラ予測モードのうち、最も小さいモード番号を有するイントラ予測モードが第1の候補に設定され、中間モード番号を有するイントラ予測モードが第2の候補に設定され、最も大きいモード番号を有するイントラ予測モードが第3の候補に設定される。
【0085】
2)前記予測モードインデックスを第1の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第1の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0086】
3)前記予測モードインデックスを第2の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第2の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0087】
4)前記予測モードインデックスを第3の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第3の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0088】
5)前記最終予測モードインデックスが現在予測ユニットのイントラ予測モードのモード番号に設定される。
【0089】
前記予測ブロックのサイズは、前記変換ユニットのサイズを示す変換サイズ指示子に基づいて決定される(S160)。変換サイズ指示子は、前記変換ユニットのサイズを特定するための一つの分割変換フラグ(split_transform_flag)である。
【0090】
変換ユニットのサイズが現在予測ユニットのサイズと同じ場合、予測ブロックは、下記のステップ(S170〜S190)を介して生成される。
【0091】
変換ユニットのサイズが現在予測ユニットのサイズより小さい場合、現在予測ユニットの1番目のサブブロックの予測ブロックは,ステップS170乃至S190を介して生成され、前記1番目のサブブロックの残差ブロックが生成され、前記予測ブロックと残差ブロックを加えて前記1番目のサブブロックの復元ブロックが生成される。その後、復号化順序上,次のサブブロックの復元ブロックが生成される。同じイントラ予測モードが全てのサブブロックに利用される。前記サブブロックは、変換ユニットのサイズである。
【0092】
現在ブロックの参照画素が全て利用可能かどうかを判断し、一つ以上の参照画素が利用可能でない場合、参照画素を生成する(S170)。現在ブロックは、現在予測ユニット又はサブブロックである。前記現在ブロックのサイズは、変換ユニットのサイズである。
【0093】
前記イントラ予測モード及び現在ブロックのサイズに基づいて前記参照画素が適応的にフィルタリングされる(S180)。現在ブロックのサイズは、変換ブロックのサイズである。
【0094】
DCモード、垂直モード及び水平モードでも参照画素がフィルタリングされない。前記垂直モード及び水平モード以外の方向性モードでは、参照画素が前記現在ブロックのサイズによって適応的にフィルタリングされる。
【0095】
現在ブロックのサイズが4×4の場合、全てのイントラ予測モードで前記参照画素がフィルタリングされない。8×8、16×16及び32×32のサイズで、参照画素がフィルタリングされなければならないイントラ予測モードの数は、現在ブロックのサイズが大きくなるほど増加する。例えば、垂直モード及び前記垂直モードに隣接した予め決められた個数のイントラ予測モードでは、参照画素がフィルタリングされない。水平モード及び前記水平モードに隣接した前記予め決められた個数のイントラ予測モードでは、参照画素がフィルタリングされない。前記予め決められた個数は、現在ブロックのサイズが大きくなるほど減少する。
【0096】
前記現在予測ユニットのイントラ予測モードと参照画素を利用して現在ブロックの予測ブロックが生成される(S190)。
【0097】
垂直モードでは、垂直参照画素の値を複写して予測画素を生成する。左側参照画素に接する予測画素は、前記左側隣接参照画素とコーナー参照画素を利用してフィルタリングされる。
【0098】
水平モードでは、水平参照画素の値を複写して予測画素を生成する。上側参照画素に接する予測画素は、前記上側隣接参照画素とコーナー参照画素を利用してフィルタリングされる。
【0099】
以上、実施例を参照して説明したが、該当技術分野の熟練された当業者は、特許請求の範囲に記載された本発明の思想及び領域から外れない範囲内で本発明を多様に修正及び変更可能であることを理解することができる。