【文献】
Minhua Zhou,Parallelized merge/skip mode for HEVC,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月22日,JCTVC-F069,P.1-P.13,URL,http://phenix.it-sudparis.eu/jct/doc_end_user/documents/6_Torino/wg11/JCTVC-F069-v2.zip
(58)【調査した分野】(Int.Cl.,DB名)
前記空間的なマージ候補ブロックが前記現在予測ブロックと同じMERに含まれるか否かは、前記並列的なマージレベル情報に加えて、位置情報を用いて決定され、前記位置情報は、前記現在予測ブロックの位置情報と前記空間的なマージ候補ブロックの位置情報を含むことを特徴とする請求項2に記載の方法。
前記現在予測ブロックの前記位置情報のビットシフト操作から生じた値は、前記空間的なマージ候補ブロックの前記位置情報のビットシフト操作から生じた値と同一でないとき、前記空間的なマージ候補ブロックは、前記現在予測ブロックと同一のMER内に含まれていないと決定することを特徴とする請求項3に記載の方法。
前記置き換えブロックは、置き換えられた前記隣接ブロックと同じ水平又は垂直ライン上に位置し、前記置き換えブロックは、前記符号化ブロックに隣接することを特徴とする請求項1に記載の方法。
【発明を実施するための形態】
【0010】
本発明は、多様な変更を加えることができ、様々な実施例を有することができるので、特定の実施例を図面に例示し、詳細な説明において詳しく説明する。ところが、これは本発明を特定の実施形態に限定するものではなく、本発明の思想及び技術範囲に含まれる全ての変更、均等物ないし代替物を含むものと理解しなければならない。各図面を説明するにあたって、類似する参照符号を類似する構成要素に対して使用する。
【0011】
第1、第2などの用語は、多様な構成要素を説明するのに使用されることができるが、上記構成要素は上記用語によって限定されるものではない。上記用語は、一つの構成要素を他の構成要素から区別する目的だけで使用される。例えば、本発明の権利範囲から外れない範囲で、第1の構成要素は第2の構成要素と命名されることができ、同様に第2の構成要素も第1の構成要素と命名されることができる。「及び/または」という用語は、複数の関連した記載の項目の組合わせまたは複数の関連した記載の項目のうちいずれかの項目を含む。
【0012】
ある構成要素が他の構成要素に「連結されて」いるとか「接続されて」いると言及されたときには、その他の構成要素に直接的に連結されているかまたは接続されている場合もあるが、その間に他の構成要素が存在することもできると理解しなければならない。一方、ある構成要素が他の構成要素に「直接連結されて」いるとか「直接接続されて」いると言及されたときには、その間に他の構成要素が存在しないことと理解しなければならない。
【0013】
本出願において使用する用語は、単に特定の実施例を説明するために使用されたものであって、本発明を限定しようとする意図ではない。単数の表現は、文脈上、明らかに異なる意味でない限り、複数の表現を含む。本出願において、「含む」または「有する」などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品またはこれらの組み合わせが存在することを指定するものであって、一つまたはそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品またはこれらの組み合わせたなどの存在または付加可能性を予め排除しないものと理解しなければならない。
【0014】
以下、添付の図面を参照して、本発明の好ましい実施例をより詳細に説明する。以下、図面において、同一の構成要素に対しては同一の参照符号を使用し、同一の構成要素に対して重複する説明は省略する。
【0015】
図1は、本発明の実施例に係る映像符号化装置を示すブロック図である。
【0016】
図1を参照すれば、映像符号化装置100は、ピクチャ分割部110、インター予測部120、イントラ予測部125、変換部130、量子化部135、再整列部160、エントロピー符号化部165、逆量子化部140、逆変換部145、フィルタ部150及びメモリ155を含むことができる。
【0017】
図1に示される各構成部は、映像符号化装置において互いに異なる特徴的な機能を示すために独立して図示したものであって、各構成部が分離したハードウェアや一つのソフトウェア構成単位からなることを意味しない。すなわち、各構成部は、説明の便宜上、それぞれの構成部として並べられて含まれるものであって、各構成部のうち少なくとも二つの構成部が結合して一つの構成部となるか、一つの構成部が複数個の構成部に分けられて機能を実行することができ、このような各構成部の統合した実施例及び分離した実施例も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【0018】
また、一部の構成要素は、本発明において本質的な機能を実行する必須の構成要素ではなく、単に性能向上のための選択的な構成要素であってもよい。本発明は、単に性能向上のために使用される構成要素を除く本発明の本質を実現するのに必須の構成部のみを含んで具現されることができ、単に性能向上のために使用される選択的な構成要素を除く必須の構成要素のみを含む構造も、本発明の権利範囲に含まれる。
【0019】
ピクチャ分割部110は、入力されたピクチャを少なくとも一つの処理単位に分割することができる。このとき、処理単位は、予測単位(Prediction Unit:PU)であってもよく、変換単位(Transform Unit:TU)であってもよく、符号化単位(Coding Unit:CU)であってもよい。ピクチャ分割部105では、一つのピクチャに対して複数の符号化単位、予測単位及び変換単位の組合わせに分割し、所定の基準(例えば、費用関数)に沿って一つの符号化単位、予測単位及び変換単位の組合わせを選択してピクチャを符号化することができる。
【0020】
例えば、一つのピクチャは複数個の符号化単位に分割されることができる。ピクチャにおいて符号化単位を分割するためには、4分木構造(Quad Tree Structure)のような再帰的なツリー構造を使用することができるが、一つの映像または最大の符号化単位を根として他の符号化単位に分割される符号化単位は、分割された符号化単位の個数だけの子ノードを持って分割されることができる。一定の制限によってそれ以上分割されない符号化単位は葉ノードとなる。すなわち、一つの符号化単位に対して正方形の分割だけが可能であると仮定する場合、一つの符号化単位は最大4つの他の符号化単位に分割されることができる。
【0021】
以下、本発明の実施例においては、符号化単位の意味を、符号化をする単位という意味だけでなく、復号化をする単位の意味としても使用することができる。
【0022】
予測単位は、一つの符号化単位内で同一の大きさの少なくとも一つの正方形または長方形などの形態を持って分割されることができる。
【0023】
符号化単位に基づいて画面内予測を行う予測単位を生成する際、最小符号化単位ではない場合、N×N単位の複数の予測単位に分割せずに画面内予測を行うことができる。
【0024】
予測部は、画面間予測を行うインター予測部120と、画面内予測を行うイントラ予測部125とを含むことができる。予測単位に対して画面間予測を行うかまたは画面内予測を行うかを決定し、各予測方法による具体的な情報(例えば、画面内予測モード、動きベクトル、参照ピクチャなど)を決定することができる。このとき、予測が行われる処理単位と予測方法及び具体的な内容が決定される処理単位は異なっていてもよい。例えば、予測方法と予測モードなどは予測単位で決定され、予測の実行は変換単位で実行されることもできる。生成された予測ブロックと原本ブロック間の残差値(残差ブロック)は、変換部130に入力されることができる。また、予測のために使用した予測モード情報、動きベクトル情報等は、残差値とともにエントロピー符号化部135で符号化されて復号器に伝達されることができる。特定の符号化モードを使用する場合、予測部120,125によって予測ブロックを生成せず、原本ブロックをそのまま符号化して復号化部に伝送することもできる。
【0025】
画面間予測部は、現在ピクチャの以前ピクチャまたは以後ピクチャのうち少なくとも一つのピクチャの情報に基づいて予測単位を予測することができる。画面間予測部は、参照ピクチャ補間部、動き予測部、動き補償部を含むことができる。
【0026】
参照ピクチャ補間部では、メモリ155から参照ピクチャ情報を提供され、参照ピクチャから整数画素以下の画素情報を生成することができる。輝度画素の場合、1/4画素単位で整数画素以下の画素情報を生成するために、フィルタ係数の異なるDCTベースの8タップ補間フィルタ(DCT−based Interpolation Filter)が使用されることができる。色差信号の場合、1/8画素単位で整数画素以下の画素情報を生成するために、フィルタ係数の異なるDCTベースの4タップ補間フィルタ(DCT−based Interpolation Filter)が使用されることができる。
【0027】
動き予測部は、参照ピクチャ補間部によって補間された参照ピクチャに基づいて動き予測を行うことができる。動きベクトルを算出するための方法として、FBMA(Full
search−based Block Matching Algorithm)、TSS(Three Step Search)、NTS(New Three−Step
Search Algorithm)など多様な方法が使用されることができる。動きベクトルは、補間された画素に基づいて1/2または1/4画素単位の動きベクトル値を持つことができる。動き予測部では、動き予測方法を異ならせて現在予測単位を予測することができる。動き予測方法として、スキップ(Skip)法、マージ(Merge)法、AMVP(Advanced Motion Vector Prediction)法など多様な方法が使用されることができる。
【0028】
本発明の実施例によれば、画面間予測を行うとき、MER(Motion Estimation Region)を定義して並列的に予測を行うことができる。例えば、マージまたはスキップを用いる画面間予測を行う際に、予測対象ブロックと空間的なマージ候補ブロックとが同一のMERに含まれているか否かを判断することができ、上記予測対象ブロックと上記空間的なマージ候補ブロックとが同一のMERに含まれていない場合、上記空間的なマージ候補ブロックを使用不可なマージ候補ブロックと決定するか、空間的なマージ候補ブロックがまだ復号化されていないMERに含まれるか否かを判断し、マージ候補ブロックを決定することができる。以下、本発明の実施例においては、画面間予測を行う際の予測部の動作に関して詳述する。
【0029】
画面内予測部は、現在ピクチャ内の画素情報である現在ブロック周辺の参照ピクセル情報に基づいて、予測単位を生成することができる。現在予測単位の周辺ブロックが画面間予測を行ったブロックであって、参照ピクセルが画面間予測を行ったピクセルである場合、画面間予測を行ったブロックに含まれる参照ピクセルを、周辺の画面内予測を行ったブロックの参照ピクセル情報に置き換えて使用することができる。すなわち、参照ピクセルが使用不可である場合、使用不可な参照ピクセル情報を使用可能な参照ピクセルのうち少なくとも一つの参照ピクセルに置き換えて使用することができる。
【0030】
画面内予測において、予測モードは、参照ピクセル情報を予測方向によって使用する方向性予測モードと、予測を行う際に方向性情報を使用しない非方向性モードとを有することができる。輝度情報を予測するためのモードと色差情報を予測するためのモードとが異なっていてもよく、色差情報を予測するために輝度情報を予測した画面内予測モード情報または予測された輝度信号情報を活用することができる。
【0031】
画面内予測を行う際に、予測単位の大きさと変換単位の大きさとが同一である場合、予測単位の左に存在するピクセル、左上に存在するピクセル、上に存在するピクセルに基づいて予測単位に対する画面内予測を行うが、画面内予測を行う際に、予測単位の大きさと変換単位の大きさとが異なっている場合、変換単位に基づく参照ピクセルを用いて画面内予測を行うことができる。また、最小符号化単位に対してのみN×N分割を使用する画面内予測を使用することができる。
【0032】
画面内予測方法は、予測モードによって参照画素にMDIS(Mode Dependent Intra Smoothing)フィルタを適用した後、予測ブロックを生成することができる。参照画素に適用されるMDISフィルタの種類は異なっていてもよい。画面内予測方法を行うために、現在予測単位の画面内予測モードは、現在予測単位の周辺に存在する予測単位の画面内予測モードから予測することができる。周辺予測単位から予測されたモード情報を用いて現在予測単位の予測モードを予測する場合、現在予測単位と周辺予測単位との画面内予測モードが同一である場合、所定のフラグ情報を用いて現在予測単位と周辺予測単位との予測モードが同一である旨の情報を伝送することができ、仮に、現在予測単位と周辺予測単位との予測モードが異なっている場合、エントロピー符号化を行って現在ブロックの予測モード情報を符号化することができる。
【0033】
また、予測部120,125で生成された予測単位に基づいて予測を行った予測単位と予測単位の原本ブロックとの差である残差値(Residual)情報を含む残差ブロックが生成されることができる。生成された残差ブロックは、変換部130に入力されることができる。変換部130では、原本ブロックと予測部120,125によって生成された予測単位との残差値(residual)情報を含む残差ブロックをDCT(Discrete Cosine Transform)またはDST(Discrete Sine Transform)のような変換方法を使用して変換させることができる。残差ブロックを変換するためにDCTを適用するかDSTを適用するかは、残差ブロックを生成するために使用された予測単位の画面内予測モード情報に基づいて決定することができる。
【0034】
量子化部135は、変換部130で周波数領域に変換された値を量子化することができる。ブロックによってまたは映像の重要度によって量子化係数は変わり得る。量子化部135で算出された値は、逆量子化部140と再整列部160に提供されることができる。
【0035】
再整列部160は、量子化された残差値に対して係数値の再整列を行うことができる。
【0036】
再整列部160は、係数スキャニング(Coefficient Scanning)法によって2次元のブロック形態の係数を1次元のベクトル形態に変更することができる。例えば、再整列部160では、ダイアゴナルスキャン(Diagonal Scan)法を用いて、DC係数から高周波数領域の係数までスキャンして1次元のベクトル形態に変更させることができる。変換単位の大きさ及び画面内予測モードによってダイアゴナルスキャン(Diagonal Scan)法でない2次元のブロック形態の係数を列方向にスキャンする垂直スキャン法、2次元のブロック形態の係数を行方向にスキャンする水平スキャン法が使用されることができる。すなわち、変換単位の大きさ及び画面内予測モードによってダイアゴナルスキャン、垂直方向スキャン及び水平方向スキャンのうちいずれのスキャン法が使用されるかを決定することができる。
【0037】
エントロピー符号化部165は、再整列部160によって算出された値に基づいてエントロピー符号化を行うことができる。エントロピー符号化は、例えば、指数ゴロム(Exponential Golomb)、CABAC(Context−Adaptive Binary Arithmetic Coding)のような多様な符号化方法を使用することができる。
【0038】
エントロピー符号化部165は、再整列部160及び予測部120, 125から符号化単位の残差値係数情報及びブロックタイプ情報、予測モード情報、分割単位情報、予測単位情報及び伝送単位情報、動きベクトル情報、参照フレーム情報、ブロックの補間情報、フィルタリング情報、MER情報など多様な情報を符号化することができる。
【0039】
エントロピー符号化部165では、再整列部160から入力された符号化単位の係数値をCABACのようなエントロピー符号化方法を使用してエントロピー符号化を行うことができる。
【0040】
逆量子化部140及び逆変換部145では、量子化部135で量子化された値を逆量子化し、変換部130で変換された値を逆変換する。逆量子化部140及び逆変換部145で生成された残差値(Residual)は、予測部120, 125に含まれた動き推定部、動き補償部及びイントラ予測部によって予測された予測単位と合せられて復元ブロック(Reconstructed Block)を生成することができる。
【0041】
フィルタ部150は、デブロッキングフィルタ、オフセット補正部、ALF(Adaptive Loop Filter)のうち少なくとも一つを含むことができる。
【0042】
デブロッキングフィルタは、復元されたピクチャにおいてブロック間の境界によって生じたブロック歪みを除去することができる。デブロッキングを行うか否かを判断するために、ブロックに含まれた数個の列または行に含まれたピクセルに基づいて、現在ブロックにデブロッキングフィルタを適用するか否かを判断することができる。ブロックにデブロッキングフィルタを適用する場合、必要なデブロッキングフィルタリングの強度によって強いフィルタ(Strong Filter)または弱いフィルタ(Weak Filter)を適用することができる。また、デブロッキングフィルタを適用するにあたって、垂直フィルタリング及び水平フィルタリングを行うとき、水平方向フィルタリング及び垂直方向フィルタリングが併行処理されるようにすることができる。
【0043】
オフセット補正部は、デブロッキングを行った映像に対してピクセル単位で原本映像とのオフセットを補正することができる。特定ピクチャに対するオフセット補正を行うために映像に含まれたピクセルを一定の数の領域に区分した後、オフセットを行う領域を決定して該当領域にオフセットを適用する方法、または各ピクセルのエッジ情報を考慮してオフセットを適用する方法を使用することができる。
【0044】
ALF(Adaptive Loop Filter)は、フィルタリングした復元映像と本来の映像とを比べた値に基づいてフィルタリングを行うことができる。映像に含まれたピクセルを所定のグループに分けた後、該当グループに適用される一つのフィルタを決定し、グループ毎に差別的にフィルタリングを行うことができる。ALFを適用するか否かに係る情報は、輝度信号は符号化単位(Coding Unit, CU)別に伝送されることができ、それぞれのブロックによって適用されるALFの大きさ及び係数は変わり得る。ALFは多様な形態を有することができ、それによってフィルタに含まれる係数の個数も変わることができる。このようなALFのフィルタリング関連情報(フィルタ係数情報、ALF On/Off情報、フィルタ形態情報)は、ビットストリームで所定のパラメータセットに含まれて伝送されることができる。
【0045】
メモリ155は、フィルタ部150によって算出された復元ブロックまたはピクチャを格納することができ、格納された復元ブロックまたはピクチャは、画面間予測を行う際に予測部120, 125に提供されることができる。
【0046】
図2は、本発明の別の実施例に係る映像復号器を示すブロック図である。
【0047】
図2を参照すれば、映像復号器は、エントロピー復号化部210、再整列部215、逆量子化部220、逆変換部225、予測部230, 235、フィルタ部240、メモリ245が含まれることができる。
【0048】
映像符号器から映像ビットストリームが入力された場合、入力されたビットストリームは映像符号器と逆の手順で復号化されることができる。
【0049】
エントロピー復号化部210は、映像符号器のエントロピー符号化部でエントロピー符号化を行ったことと逆の手順でエントロピー復号化を行うことができる。エントロピー復号化部210で復号化された情報のうち予測ブロックを生成するための情報は、予測部230, 235に提供され、エントロピー復号化部でエントロピー復号化を行った残差値は、再整列部215に入力されることができる。
【0050】
エントロピー復号化部210では、符号器で行われた画面内予測及び画面間予測に係る情報を復号化することができる。上述したように、映像符号器で画面内予測及び画面間予測を行う際に所定の制約がある場合、このような制約に基づくエントロピー復号化を行って、現在ブロックに対する画面内予測及び画面間予測に係る情報を提供されることができる。
【0051】
再整列部215は、エントロピー復号化部210でエントロピー復号化されたビットストリームを符号化部で再整列した方法に基づいて再整列を行うことができる。1次元ベクトルの形態で表現された係数をさらに2次元のブロック形態の係数に復元して再整列することができる。
【0052】
逆量子化部220は、符号器から提供された量子化パラメータと再整列されたブロックの係数値に基づいて逆量子化を行うことができる。
【0053】
逆変換部225は、映像符号器で行った量子化結果について変換部で行ったDCT及びDSTに対して、逆DCT及び逆DSTを行うことができる。逆変換は、映像符号器で決定された伝送単位に基づいて行われることができる。映像符号器の変換部では、DCTとDSTは予測方法、現在ブロックの大きさ及び予測方向など複数の情報によって選択的に行われることができ、映像復号器の逆変換部225では、映像符号器の変換部で行われた変換情報に基づいて逆変換を行うことができる。
【0054】
予測部230, 235は、エントロピー復号化部210から提供された予測ブロック生成関連情報と、メモリ245から提供された以前に復号化されたブロックまたはピクチャ情報に基づいて、予測ブロックを生成することができる。
【0055】
予測部230, 235は、予測単位判別部、画面間予測部及び画面内予測部を含むことができる。予測単位判別部は、エントロピー復号化部から入力される予測単位情報、画面内予測方法の予測モード情報、画面間予測方法の動き予測関連情報など多様な情報を入力され、現在符号化単位から予測単位を区分し、予測単位が画面間予測を行うのか、それとも画面内予測を行うのかを判別することができる。画面間予測部は、映像符号器から提供された現在予測単位の画面間予測に必要な情報を用いて、現在予測単位が含まれた現在ピクチャの以前ピクチャまたは以後ピクチャのうち少なくとも一つのピクチャに含まれた情報に基づいて現在予測単位に対する画面間予測を行うことができる。
【0056】
画面間予測を行うために符号化単位を基準に該当符号化単位に含まれた予測単位の動き予測方法が、スキップモード(Skip Mode)、マージモード(Merge Mode)、AMVPモード(AMVP Mode)のうちいずれの方法であるのかを判断することができる。
【0057】
本発明の実施例によれば、画面間予測を行う際に、MER(Motion Estimation Region)を定義して並列的に予測を行うことができる。例えば、マージまたはスキップを使用する画面間予測を行う際に、予測対象ブロックと空間的なマージ候補ブロックとが同一のMERに含まれているか否かを判断することができ、上記予測対象ブロックと上記空間的なマージ候補ブロックとが同一のMERに含まれていない場合、上記空間的なマージ候補ブロックを使用不可なマージ候補ブロックと決定するか、空間的なマージ候補ブロックがまだ復号化されていないMERに含まれるか否かを判断し、マージ候補ブロックを決定することができる。以下、本発明の実施例においては、予測部の動作について詳述する。
【0058】
画面内予測部は、現在ピクチャ内の画素情報に基づいて予測ブロックを生成することができる。予測単位が画面内予測を行った予測単位である場合、映像符号器から提供された予測単位の画面内予測モード情報に基づいて画面内予測を行うことができる。画面内予測部には、MDISフィルタ、参照画素補間部、DCフィルタを含むことができる。MDISフィルタは、現在ブロックの参照画素にフィルタリングを行う部分であって、現在予測単位の予測モードによってフィルタの適用有無を決定して適用することができる。映像符号器から提供された予測単位の予測モード及びMDISフィルタ情報を用いて、現在ブロックの参照画素にフィルタリングを行うことができる。現在ブロックの予測モードがフィルタリングを行わないモードである場合、MDISフィルタは適用されなくてもよい。
【0059】
参照画素補間部は、予測単位の予測モードが参照画素を補間した画素値に基づいて画面内予測を行う予測単位である場合、参照画素を補間して整数値以下の画素単位の参照画素を生成することができる。現在予測単位の予測モードが参照画素を補間せずに予測ブロックを生成する予測モードである場合、参照画素は補間されなくてもよい。DCフィルタは、現在ブロックの予測モードがDCモードである場合、フィルタリングによって予測ブロックを生成することができる。
【0060】
復元されたブロックまたはピクチャはフィルタ部240に提供されることができる。フィルタ部240は、デブロッキングフィルタ、オフセット補正部、ALFを含むことができる。
【0061】
映像符号器から該当ブロックまたはピクチャにデブロッキングフィルタを適用したか否かに関する情報、及びデブロッキングフィルタを適用した場合、強いフィルタを適用したのかまたは弱いフィルタを適用したのかに関する情報を提供されることができる。映像復号器のデブロッキングフィルタでは、映像符号器から提供されたデブロッキングフィルタ関連情報を提供され、映像復号器で該当ブロックに対するデブロッキングフィルタリングを行うことができる。映像符号器と同様に、まず垂直デブロッキングフィルタリング及び水平デブロッキングフィルタリングを行うが、重なる部分においては垂直デブロッキング及び水平デブロッキングのうち少なくとも一つを行うことができる。垂直デブロッキングフィルタリング及び水平デブロッキングフィルタリングが重なる部分で、以前に行われることができなかった垂直デブロッキングフィルタリングまたは水平デブロッキングフィルタリングが行われることができる。このようなデブロッキングフィルタリング過程を通じて、デブロッキングフィルタリングの並列処理(Parallel Processing)が可能である。
【0062】
オフセット補正部は、符号化の際に映像に適用されたオフセット補正の種類及びオフセット値情報などに基づいて復元された映像にオフセット補正を行うことができる。
【0063】
ALFは、フィルタリングを行った後、復元された映像と本来の映像とを比べた値に基づいてフィルタリングを行うことができる。符号器から提供されたALF適用有無情報、ALF係数情報などに基づいて符号化単位にALFを適用することができる。このようなALF情報は、特定のパラメータセットに含まれて提供されることができる。
【0064】
メモリ245は、復元されたピクチャまたはブロックを格納して参照ピクチャまたは参照ブロックとして使用できるようにし、また、復元されたピクチャを出力部に提供することができる。
【0065】
上述したように、以下、本発明の実施例においては、説明の便宜上、コーディングユニット(Coding Unit)を符号化単位という用語で使用するが、符号化だけでなく復号化を行う単位になってもよい。以下、本発明の実施例に係る
図3ないし
図11で説明する映像予測方法は、
図1及び
図2に含まれた予測部のような構成部で行われることができる。
【0066】
図3は、本発明の実施例に係るマージ及びスキップモードを使用するための候補ブロックを示す概念図である。
【0067】
以下、本発明の実施例では、説明の便宜上、マージモードに限定して説明するが、スキップモードでも同一の方法で適用されることができ、このような実施例も本発明の権利範囲に含まれる。
【0068】
図3を参照すれば、マージモードによる画面間予測を行うためには、空間的なマージ候補ブロック300, 305, 310, 315, 320と、時間的なマージ候補ブロック350, 355を使用することができる。
【0069】
空間的なマージ候補ブロック300, 305, 310, 315, 320は、予測対象ブロックの位置を基準に予測対象ブロックの左上に位置する点が(xP,yP)、予測対象ブロックの幅をnPSW、予測対象ブロックの幅をnPSHとする場合、(xP−1,yP+nPSH)である点を含む第4ブロック315、(xP−1,yP+nPSH−MinPuSize)である点を含む第1ブロック300、(xP+nPSW,yP−1)である点を含む第3ブロック310、(xP+nPSW−MinPuSize,yP−1)である点を含む第2ブロック305、(xP−MinPuSize,yP−1)である点を含む第5ブロック320になることができる。
【0070】
時間的なマージ候補は、複数個の候補ブロックが使用されることができ、第1コロケーテッド(collocated)ブロック350は、コロケーテッドピクチャに位置する点(xP+nPSW,yP+nPSH)を含むブロックになることができる。もし第1コロケーテッドブロック350が存在しないか使用不可である場合(例えば、第1コロケーテッドブロックが画面間予測を行っていない場合)、コロケーテッドピクチャに位置する点(xP+(nPSW>>1),yP+(nPSH>>1))を含む第2コロケーテッドブロック355を代用することができる。
【0071】
本発明の実施例によれば、動き予測が行われるとき、並列的にマージモードを使用した画面間予測を行うために、一定の領域を基準にマージ候補ブロックの使用有無を決定することができる。例えば、マージモードを行うためのマージ候補ブロックを決定するために、一定の大きさの領域を基準に同一の領域内にマージ候補ブロックが存在するか否かを判断し、マージ候補ブロックを使用するかそれとも使用しないかを決定するか、他のマージ候補ブロックに置き換える方法などを使用して一定の領域を基準に並列的に動き予測を行うことができる。以下、本発明の実施例では、このようなマージモードを用いた並列的な動き予測方法について詳述する。
【0072】
図4は、本発明の実施例に係るマージ候補ブロック決定方法を示す概念図である。
【0073】
図4を参照すれば、LCU(Largest Coding Unit)が4つのMER(Motion Estimation Region)に分割された場合を仮定して説明する。
【0074】
第1MER(MER0)に含まれている第1予測ブロックPU0の場合、
図4と同様に、第1予測ブロックPU0に対してマージモードを用いた画面間予測を行う際に、空間的なマージ候補ブロックは5つの空間的なマージ候補ブロック400, 405, 410, 415, 420が存在することができる。5つのマージ候補ブロック400, 405, 410, 415, 420は、第1MER(MER0)に含まれていない位置に存在し、符号化及び復号化が既に行われたブロックになることができる。
【0075】
第2予測ブロックPU1は、第2MER(MER1)に含まれている予測ブロックであって、マージモードを用いた画面間予測を行うための空間的なマージ候補ブロック430, 435, 440, 445, 450のうち4つのマージ候補ブロック430, 435, 445, 450は、第2MER(MER1)の内部に存在するブロックであって現在予測を行うMERと同一のMERに属しているブロックであり、残りの一つのマージ候補ブロック440は、現在MERの右に存在するブロックであって、まだ符号化及び復号化されていないLCUまたはMERに含まれているブロックである。
【0076】
本発明の実施例によれば、現在ブロックのマージ候補ブロックが現在ブロックと同一のMERに属する場合、現在ブロックの上記マージ候補ブロックは排除して、現在ブロックの大きさ及びMERの大きさによって少なくとも一つの他の位置のブロックの動き情報を上記マージ候補として追加することができる。
【0077】
垂直または水平方向に他のMERに存在する点を含むブロックをマージ候補ブロックとして追加することができる。または、上記候補ブロックと最も近い位置の他のMERに属するブロックをマージ候補ブロックとして追加することもできる。または、現在ブロックの形態及び大きさによって予め定められた位置のマージ候補ブロックを追加することができる。
【0078】
一例として、上に位置するマージ候補ブロック435と、上左に位置するマージ候補ブロック450の場合、上記垂直方向に第2MERの外部に位置する点を含む他のブロック455, 460を、変更されたマージ候補ブロックとして使用することができる。左に位置するマージ候補ブロック430及び左下に位置するマージ候補ブロック445は、水平方向に第1MER外部に位置する点を含む他のブロック465, 470を、変更されたマージ候補ブロックとして使用することができる。同一のMERに含まれていてマージ候補ブロックとして使用できない場合、マージ候補ブロックの位置によって他のMERに含まれた一つの点を含む他のブロックにマージ候補ブロックを変更させることができる。
【0079】
第3予測ブロックPU2の場合も同様に、同一のMERに含まれているマージ候補ブロック475を垂直方向の上に存在するブロック480に置き換えて使用することができる。上記のようにマージ候補ブロックの位置を変更する方法は、本発明に係る一つの実施例であって、上記のように垂直または水平方向ではない、他の方向に他のMERに含まれたブロックに空間的なマージ候補ブロックを位置変更する方法を使用してマージ候補ブロックの位置を変更することもでき、このような実施例も本発明の権利範囲に含まれる。
【0080】
マージ候補ブロックを決定するための方法を行うために、下記のようなステップを行うことができる。
【0081】
1) MER(Motion Estimation Region)関連情報を復号するステップ
【0082】
MER関連情報には、MERの大きさに係る情報が含まれることができ、このようなMERの大きさ情報またはブロックの大きさ情報に基づいて予測対象ブロックがMERに含まれているか否かを判断することができる。
【0083】
2) 予測対象ブロックと空間的なマージ候補ブロックとが同一のMERに含まれているか否かを判断するステップ
【0084】
上記予測対象ブロックと上記空間的なマージ候補ブロックとが同一のMERに含まれている場合、上記MERの大きさ及び上記予測対象ブロックの大きさによって適応的に空間的なマージ候補ブロックを決定するために、上記のようなステップを行うことができる。
【0085】
3) 予測対象ブロックと空間的なマージ候補ブロックとが同一のMERに含まれる場合、空間的なマージ候補ブロックを使用不可なマージ候補ブロックと決定するステップ
【0086】
予測対象ブロックと空間的なマージ候補ブロックとが同一のMERに含まれる場合、空間的なマージ候補ブロックを使用不可なマージ候補ブロックと決定し、同一のMERに含まれた空間的なマージ候補ブロックを他のマージ候補ブロックに変更して使用することができる。また、次に詳述するように、使用不可と決定されたマージ候補ブロックは、マージを用いた画面間予測で使用しないことも可能である。
【0087】
本発明のまた別の実施例によれば、同一のMERに属するマージ候補ブロックを使用しない方法も用いることができる。
【0088】
例えば、マージ候補ブロックのうち既に符号化及び復号化が進行され、現在予測を進行中のMERと異なるMERに属しているブロックは、並列的にマージモードを用いた画面間予測を行うために使用できるブロックであって、マージモードを用いた画面間予測候補ブロックとして使用されることができる。ところが、現在予測を進行中のMERと同一のMERに属しているブロックは、マージモードを用いた画面間予測を行うための画面間予測候補ブロックとして使用できず、また、符号化及び復号化が行われていないブロックも、画面間予測候補ブロックとして使用できないこともあり、このような実施例も本発明の権利範囲に含まれる。
【0089】
図5は、本発明の実施例に係るMERの大きさによってマージ候補ブロックを決定する方法を示す概念図である。
【0090】
図5を参照すれば、MERの大きさ及び現在予測ユニットの大きさによってマージ候補を適応的に決定することができる。例えば、マージ候補の位置(A, B, C, D, E)に対応するマージ候補が同一のMER内に属する場合、上記マージ候補を使用不可なものと処理し、現在ブロックの大きさ及びMERの大きさによって少なくとも一つの他の位置のブロックの動き情報を上記マージ候補として追加することができる。
【0091】
図5においては、MERの大きさが8×8であり、予測対象ブロックが4×8である場合を仮定して説明する。MERの大きさが8×8である場合、予測対象ブロックに含まれるブロックAは同一のMERに含まれており、ブロックB、C、D及びEは、同一でないMERに含まれている。
【0092】
ブロックAの場合、同一でないMERに含まれていないブロックの位置に変更されることができ、ブロックA’の位置に変更されることができる。したがって、本発明の実施例によれば、現在ブロックのマージ候補ブロックが現在ブロックと同一のMERに属する場合、現在ブロックの上記マージ候補ブロックは排除することで、現在ブロックの大きさ及びMERの大きさによって少なくとも一つの他の位置のブロックの動き情報を上記マージ候補として追加することができる。
【0093】
本発明の実施例によれば、MERの大きさ情報は、上位レベルシンタックス情報に含まれて伝送されることができる。
【0094】
下記表1は、上位レベルシンタックスでMERの大きさ情報を伝送する方法を示すものである。
【0096】
表1を参照すれば、ピクチャパラメータセットのような上位シンタックス構造に含まれた構文要素log2_parallel_merge_level_minus2値に基づいて、MERの大きさ情報を算出することができる。ピクチャパラメータセットではない他の上位シンタックス構造に構文要素log2_parallel_merge_level_minus2が含まれることもでき、このような実施例も本発明の権利範囲に含まれる。
【0097】
下記表2は、log2_parallel_merge_level_minus2値に基づいて、MERの大きさ間の関係を示すものである。
【0099】
表2を参照すれば、log2_parallel_merge_level_minus2値は0ないし4の値を持つことができ、構文要素の値によってMERの大きさが相違に定義されることができる。MERが0である場合、MERを使用せずにマージモードを用いた画面間予測を行う場合と同一である。
【0100】
MERの大きさ情報を含む構文要素は、以下、本発明の実施例においてMER大きさ情報構文要素という用語で定義して使用することができ、表2のようにMER大きさ情報構文要素を定義することは一つの例示であって、他の様々な方法を使用してMERの大きさを決定することも可能であり、このような構文要素の表現方式も本発明の権利範囲に含まれる。
【0101】
図6は、現在ブロックの空間的なマージ候補ブロックが使用可能であるか否かを判断する方法を示す概念図である。
【0102】
図6を参照すれば、予測対象ブロック600と予測対象ブロック600の周辺に位する空間的なマージ候補ブロック650の位置及びMER大きさ情報構文要素を基準に、空間的なマージ候補ブロックが使用可能であるか否かを判断することができる。
【0103】
(xP,yP)を予測対象ブロックの左上の位置に存在する点とし、(xN,yN)をマージ候補ブロックの左上の位置に存在する点と仮定する場合、下記の数式1と数式2を通じて、空間的なマージ候補ブロックが使用可能であるか否かを判断することができる。
【0106】
上記数式1及び数式2は、マージ候補ブロックと予測対象ブロックとが同一のMERに含まれているか否かを判断するための数式の例であって、本発明の本質から外れない限り、上記のような判断方法でない他の判断方法を使用してマージ候補ブロックと予測対象ブロックとが同一のMERに含まれているか否かを判断することができる。
【0107】
図7は、本発明の実施例に係るマージモードで空間的なマージ候補ブロックを算出する方法を示すフローチャートである。
【0108】
図7を参照すれば、MER関連情報を復号する(ステップS700)。
【0109】
MER関連情報は、上述したように構文要素情報として上位レベルシンタックス構造に含まれることができる。復号化されたMER関連情報に基づいて、空間的なマージ候補ブロックと予測対象ブロックとが同一のMERに含まれるか、それとも異なるMERに含まれるかを判断することができる。
【0110】
空間的なマージ候補ブロックと予測対象ブロックとが同一のMERに含まれているか否かを判断する(ステップS710)。
【0111】
本発明の実施例によれば、現在ブロックのマージ候補ブロックが現在ブロックと同一のMERに属する場合、現在ブロックの上記マージ候補ブロックは排除することで、現在ブロックの大きさ及びMERの大きさによって少なくとも一つの他の位置のブロックの動き情報を上記マージ候補として追加することができる(ステップS720)。本発明のまた別の実施例によれば、空間的なマージ候補ブロックと予測対象ブロックとが同一のMERに含まれた場合、同一のMERに含まれている空間的なマージ候補ブロックをマージ候補ブロックとして使用する代わりに、他の位置に存在する異なるMERに含まれたブロックを空間的なマージ候補ブロックに置き換えて画面間予測を行うことができる。
【0112】
また別の実施例として、空間的なマージ候補ブロックと予測対象ブロックとが同一のMERに含まれた場合、上述したように同一のMERに含まれている空間的なマージ候補ブロックをマージ候補ブロックとして使用しなくてもよい。
【0113】
空間的なマージ候補ブロックと予測対象ブロックとが同一のMERに含まれていない場合、当該空間的なマージ候補ブロックに基づいて画面間予測に行う(ステップS730)。
【0114】
図8は、本発明の実施例に係るマージモードを用いた画面間予測方法を示すフローチャートである。
【0115】
図8を参照すれば、空間的なマージ候補から動き予測関連情報を誘導する(ステップS800)。
【0116】
予測対象ブロックの周辺の予測単位から空間的なマージ候補(spatial merge candidate)を誘導することができる。空間的なマージ候補を誘導するために、予測単位の幅と高さ情報、MER(Motion Estimation Region)情報、singleMCLFlag情報、パーティション位置情報などを提供されることができる。上記のような入力情報に基づいて、空間的なマージ候補の位置による使用可能性情報(availableFlagN)、参照ピクチャ情報(refIdxL0,refIdxL1)、リスト利用情報(predFlagL0N, predFlagL1N)、動きベクトル情報(mvL0N, mvL1N)を誘導することができる。空間的なマージ候補は、予測対象ブロックの周辺に存在する複数のブロックになってもよい。
【0117】
本発明の実施例によれば、空間的なマージ候補ブロックは下記のように3種に分類されることができる。1) 同一のMERに属しておらず、既に符号化または復号化された空間的なマージ候補ブロック、2) 同一のMERに属している空間的なマージ候補ブロック、3) まだ符号化及び復号化が進行されていない空間的なマージ候補ブロック、に分類されることができる。
【0118】
本発明の実施例によれば、MER単位で並列的な画面間予測を行うために、画面間予測を行うための空間的なマージ候補ブロックのうち、同一のMERに属しておらず、既に符号化または復号化された空間的なマージ候補ブロックと同一のMERに属している空間的なマージ候補ブロックの位置に変更された空間的なマージ候補ブロックを空間的なマージ候補ブロックとして使用することができる。すなわち、本発明の実施例によれば、現在ブロックのマージ候補ブロックが現在ブロックと同一のMERに属する場合、現在ブロックの上記マージ候補ブロックは排除することで、現在ブロックの大きさ及びMERの大きさによって少なくとも一つの他の位置のブロックの動き情報を上記マージ候補として追加することができる。上述したように、マージ候補ブロックを決定するための方法は、MER(Motion Estimation Region)関連情報を復号するステップ、予測対象ブロックと空間的なマージ候補ブロックとが同一のMERに含まれているか否かを判断するステップ、及び予測対象ブロックと空間的なマージ候補ブロックとが同一のMERに含まれる場合、空間的なマージ候補ブロックを使用不可なマージ候補ブロックと決定するステップによって行われることができる。
【0119】
本発明のまた別の実施例によれば、画面間予測を行うための空間的なマージ候補ブロックのうち、同一のMERに属せず、既に符号化または復号化された空間的なマージ候補ブロックのみを空間的なマージ候補ブロックとして使用して画面間予測を行うことができる。
【0120】
時間的なマージ候補の参照ピクチャインデックス値を誘導する(ステップS810)。
【0121】
時間的なマージ候補の参照ピクチャインデックス値は、時間的なマージ候補(コロケーテッドブロック)が含まれたコロケーテッドピクチャのインデックス値であって、下記のような特定の条件を通じて誘導されることができる。下記の条件は任意のものであって、変わることができる。例えば、予測対象ブロックの左上に位置する点が(Xp,yP)、予測対象ブロックの幅をnPSW、予測対象ブロックの幅をnPSHとする場合、1) (xP−1,yP+nPSH−1)の位置に該当する予測対象ブロックの周辺予測単位が存在し(以下、「参照ピクチャインデックス算出周辺予測単位」という。)、2) 参照ピクチャインデックス算出周辺予測単位のパーティションインデックス値が0であり、3) 参照ピクチャインデックス算出周辺予測単位が画面内予測モードを使用して予測を行ったブロックではなく、4) 予測対象ブロックと参照ピクチャインデックス算出周辺予測ブロックとが同一のMER(Motion Estimation Region)に属しない場合、時間的なマージ候補の参照ピクチャインデックス値を参照ピクチャインデックス算出周辺予測単位の参照ピクチャインデックス値と同一の値と決定することができる。上記のような条件を満足しない場合、時間的なマージ候補の参照ピクチャインデックス値は0と設定することができる。
【0122】
時間的なマージ候補を決定し、時間的なマージ候補から動き予測関連情報を誘導する(ステップS820)。
【0123】
時間的なマージ候補ブロック(コロケーテッドブロック)を決定し、決定された時間的なマージ候補ブロック(コロケーテッドブロック)から動き予測関連情報を誘導するために、例えば、予測対象ブロックでコロケーテッドブロックが使用可能であるか否か、予測対象ブロックの位置がLCUを基準にどの位置に存在するか(予測対象ブロックの位置がLCUを基準に下側境界に位置するのかそれとも右側境界に位置するのかなど)などの条件に基づいて、時間的な予測動きベクトルを算出するために使用されるコロケーテッドブロックの位置を判断することができる。判断されたコロケーテッドブロックの参照ピクチャ情報及び動き予測ベクトル情報に基づいて、動き予測関連情報を誘導する方法によって時間的なマージ候補ブロック(コロケーテッドブロック)から動き予測関連情報を誘導することができる。
【0124】
マージ候補リストを構成する(ステップS830)。
【0125】
マージ候補リストは、空間的なマージ候補及び時間的マージ候補のうち少なくとも一つを含んで構成されることができる。マージ候補リストに含まれる空間的なマージ候補及び時間的なマージ候補は、一定の優先順位を持って配列されることができる。
【0126】
マージ候補リストは、固定された数のマージ候補を含んで構成されることができ、固定された数のマージ候補を生成するためにマージ候補が不足する場合、マージ候補が有する動き予測関連情報を組み合わせてマージ候補を生成するか、零ベクトル値をマージ候補として生成してマージ候補リストを生成することができる。
【0127】
上述したようなマージ候補誘導方法は、マージモードを用いた画面間予測方法のみならず、スキップモードを用いた画面間予測方法にも使用されることができ、このような実施例も本発明の権利範囲に含まれる。
【0128】
以上、実施例を参照して説明したが、当該技術分野の熟練した当業者は、下記の特許請求の範囲に記載された本発明の思想及び領域から逸脱しない範囲内で、本発明を多様に修正及び変更させ得ることを理解しなければならない。