(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0007】
本発明の一実施形態による残差ブロックの符号化方法は、現在ブロックの予測ブロックを生成する段階と、前記予測ブロックと前記現在ブロックとの差である残差ブロックを生成する段階と、前記残差ブロックを周波数領域に変換して変換残差ブロックを生成する段階と、前記変換残差ブロックを所定周波数帯域単位に分割する段階と、前記分割された周波数帯域単位ごとに、0でない有効変換係数が存在するか否かを示す周波数帯域単位別有効係数フラグを符号化する段階と、を含むことを特徴とする。
【0008】
本発明の一実施形態による残差ブロックの符号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、低周波数帯域の分割された単位サイズが、高周波数帯域の分割された単位サイズより小さくなるように、前記変換残差ブロックを分割することを特徴とする。
【0009】
本発明の一実施形態による残差ブロックの符号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、前記変換残差ブロックを4等分し、4等分された変換残差ブロックのうち、最も低い周波数帯域をさらに4等分することを特徴とする。
【0010】
本発明の一実施形態による残差ブロックの符号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、同一サイズの周波数帯域単位に、前記変換残差ブロックを分割することを特徴とする。
【0011】
本発明の一実施形態による残差ブロックの符号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、所定間隔で、同じ値を有する水平周波数及び垂直周波数を連結し、前記変換残差ブロックを分割することを特徴とする。
【0012】
本発明の一実施形態による残差ブロックの符号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、前記変換残差ブロックを構成する変換係数を利用し、前記変換残差ブロックの映像特性を判断する段階と、前記判断された映像特性を利用し、前記変換残差ブロックの周波数帯域別に分割する大きさを決定する段階と、前記決定された周波数帯域別分割サイズによって、前記変換残差ブロックを分割する段階と、を含むことを特徴とする。
【0013】
本発明の一実施形態による残差ブロックの符号化方法において、前記変換残差ブロックの映像特性を判断する段階は、前記変換残差ブロックの各周波数帯域内に存在する変換係数の個数及び分布図のうち、少なくとも一つを利用することを特徴とする。
【0014】
本発明の一実施形態による残差ブロックの符号化方法において、前記周波数帯域単位別有効係数フラグを符号化する段階は、前記分割された周波数帯域単位のうち、最も小さい低周波数帯域単位については、前記有効係数フラグを別途に符号化しないことを特徴とする。
【0015】
本発明の一実施形態による残差ブロックの符号化方法において、前記分割された周波数帯域単位のうち、0ではない有効変換係数が存在する周波数帯域単位内に存在する有効変換係数の位置を示す有効性マップ(significance map)を符号化する段階をさらに含むことを特徴とする。
【0016】
本発明の一実施形態による残差ブロックの符号化方法において、前記有効性マップを符号化する段階は、前記分割された周波数帯域単位ごとに独立した所定のスキャン順序によって、前記周波数帯域単位内の有効変換係数を読み取り、前記周波数帯域単位内の有効変換係数の位置を示すフラグを符号化することを特徴とする。
【0017】
本発明の一実施形態による残差ブロックの符号化方法において、前記有効性マップを符号化する段階は、所定スキャン順序によって、前記変換残差ブロック内の全体有効変換係数を読み取り、前記分割された周波数帯域単位別に存在する有効変換係数の位置を示すフラグを符号化することを特徴とする。
【0018】
本発明の一実施形態による残差ブロックの符号化方法において、前記有効性マップを符号化する段階は、所定のスキャン順序によって、前記周波数帯域単位内の有効変換係数を読み取り、各周波数帯域単位別に最後の有効変換係数が存在するか否かを示すフラグ(Tlast)を設定し、最後の有効変換係数が存在する周波数帯域単位に存在する有効変換係数についてのみ、全体変換残差ブロックの最後の有効変換係数であるか否かを示すフラグを設定することを特徴とする。
【0019】
本発明の一実施形態による残差ブロックの符号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、前記周波数帯域単位の大きさ及び形態によって事前に決められた複数個の分割形態のうち選択された1つの分割形態によって、前記変換残差ブロックを前記周波数帯域単位に分割し、前記選択された分割形態を示す分割形態インデックス情報を、符号化されたビットストリームに付加する段階をさらに含むことを特徴とする。
【0020】
本発明の一実施形態による残差ブロックの符号化装置は、現在ブロックの予測ブロックを生成する予測部;前記予測ブロックと前記現在ブロックとの差である残差ブロックを生成する減算部;前記残差ブロックを周波数領域に変換して変換残差ブロックを生成する変換部;及び前記変換残差ブロックを周波数帯域別に分割し、前記分割された周波数帯域別に、0ではない有効変換係数が存在するか否かを示す帯域別有効係数フラグを符号化するエントロピ符号化部;を含むことを特徴とする。
【0021】
本発明の一実施形態による残差ブロックの復号化方法は、符号化されたビットストリームから、現在ブロックの変換残差ブロックを分割した所定周波数帯域単位別に、有効変換係数が存在するか否かを示す有効係数フラグを抽出する段階と、前記変換残差ブロックを所定周波数帯域単位に分割する段階と、前記有効係数フラグを利用し、前記変換残差ブロックを分割した周波数帯域単位のうち、有効変換係数が存在する周波数帯域単位を判断する段階と、を含むことを特徴とする。
【0022】
本発明の一実施形態による残差ブロックの復号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、低周波数帯域の分割された単位サイズが、高周波数帯域の分割された単位サイズより小さくなるように、前記変換残差ブロックを分割することを特徴とする。
【0023】
本発明の一実施形態による残差ブロックの復号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、前記変換残差ブロックを4等分し、4等分された変換残差ブロックのうち、最も低い周波数帯域をさらに4等分することを特徴とする。
【0024】
本発明の一実施形態による残差ブロックの復号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、同一サイズの周波数帯域単位に、前記変換残差ブロックを分割することを特徴とする。
【0025】
本発明の一実施形態による残差ブロックの復号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、所定間隔で、同じ値を有する水平周波数及び垂直周波数を連結し、前記変換残差ブロックを分割することを特徴とする。
【0026】
本発明の一実施形態による残差ブロックの復号化方法において、前記変換残差ブロックを所定周波数帯域単位に分割する段階は、前記ビットストリームから、前記周波数帯域単位の大きさ及び形態によって事前に決められた複数個の分割形態のうち、前記変換残差ブロックの分割に利用された分割形態を示す分割形態インデックス情報を抽出する段階と、前記抽出された分割形態インデックス情報を利用し、前記変換残差ブロックを、前記事前に決められた大きさ及び形態を有する周波数帯域単位に分割する段階と、をさらに含むことを特徴とする。
【0027】
本発明の一実施形態による残差ブロックの復号化方法において、前記ビットストリームから、有効変換係数が存在する周波数帯域単位に存在する有効変換係数の位置を示す有効性マップ(significance map)を抽出する段階と、前記有効性マップを利用し、前記有効変換係数が存在する周波数帯域単位内に存在する有効変換係数の位置を判断する段階と、をさらに含むことを特徴とする。
【0028】
本発明の一実施形態による残差ブロックの復号化方法において、前記有効性マップは、前記分割された周波数帯域単位ごとに独立した所定のスキャン順序によって、前記周波数帯域単位内の有効変換係数の位置を示すことを特徴とする。
【0029】
本発明の一実施形態による残差ブロックの復号化方法において、前記有効性マップは、所定スキャン順序によって、前記変換残差ブロック内の全体有効変換係数を読み取ったときに検出された有効変換係数の位置を示すことを特徴とする。
【0030】
本発明の一実施形態による残差ブロックの復号化方法において、前記有効性マップは、所定のスキャン順序によって、前記周波数帯域単位内の有効変換係数を読み取り、各周波数帯域単位別に最後の有効変換係数が存在するか否かを示すフラグ(Tlast)、及び最後の有効変換係数が存在する周波数帯域単位に存在する有効変換係数についてのみ、全体変換残差ブロックの最後の有効変換係数であるか否かを示すフラグを含むことを特徴とする。
【0031】
本発明の一実施形態による残差ブロックの復号化装置は、符号化されたビットストリームから、現在ブロックの変換残差ブロックを所定周波数帯域単位に分割した周波数帯域単位別に有効変換係数が存在するか否かを示す有効係数フラグを抽出するパージング部;及び前記変換残差ブロックを所定周波数帯域単位に分割し、前記抽出された有効係数フラグを利用し、前記周波数帯域単位のうち、有効変換係数が存在する周波数帯域単位を判断するエントロピ復号化部;を含むことを特徴とする。
【0032】
本発明の他の実施形態による残差ブロックの符号化方法は、残差ブロックを周波数領域に変換することによって変換残差ブロックを生成する段階と、変換残差ブロックを周波数帯域単位に分割する段階と、0ではない有効変換係数が存在する周波数帯域単位の有効係数フラグを符号化する段階と、を含むことを特徴とする。
【0033】
以下、図面を参照しつつ、本発明の実施形態について詳細に説明する。構成要素リストに先行する「少なくとも一つ」のような表現は、構成要素リスト全体を変更するものであり、リスト上の構成要素を個別的に変更するものではない。
【0034】
実施形態で、符号化単位(coding unit)は、エンコーダ側で、映像データを符号化するのに利用されるデータ単位、及びデコーダ側で、符号化された映像データを復号化するのに利用されるデータ単位である。また、符号化深度(depth)は、符号化単位が符号化される深度を示す。
【0035】
図1は、本発明の一実施形態による映像符号化装置のブロック図である。
図1を参照すれば、本発明の一実施形態による映像符号化装置100は、最大符号化単位分割部110、符号化単位決定部120及び出力部130を含む。
【0036】
最大符号化単位分割部110は、最大サイズの符号化単位の最大符号化単位に基づいて、現在ピクチャまたは現在スライスを分割する。現在ピクチャまたは現在スライスは、少なくとも1つの最大符号化単位に分割される。一実施形態による最大符号化単位は、サイズ32x32,64x64,128x128,256x256などのデータ単位であり、縦横に大きさが8より大きい2の二乗である正方形のデータ単位であってもよい。分割された映像データは、少なくとも1つの最大符号化単位別に、符号化単位決定部120に出力されもする。
【0037】
本発明の一実施形態によれば、最大符号化単位及び深度を利用して符号化単位が表現されてもよい。深度は、最大符号化単位から、符号化単位が空間的に分割された回数を示す。深度が深くなるほど、深度別符号化単位は、最大符号化単位から最小符号化単位まで分割され、最大符号化単位の深度が最上位深度であり、最小符号化単位が最下位符号化単位であると定義される。最大符号化単位は、深度が深くなるにつれて、深度別符号化単位の大きさは減少するので、上位深度の符号化単位は、複数個の下位深度の符号化単位を含むことができる。
【0038】
前述のように、符号化単位の最大サイズによって、現在ピクチャの映像データを最大符号化単位に分割し、それぞれの最大符号化単位は、深度別に分割される符号化単位を含むことができる。本発明の一実施形態による最大符号化単位は、深度別に分割されるので、最大符号化単位に含まれた空間領域(spatial domain)の映像データが、深度によって階層的に分類されもする。
【0039】
最大符号化単位の高さ及び幅を階層的に分割することができる総回数を制限する最大深度及び符号化単位の最大サイズがあらかじめ設定されていてもよい。
【0040】
符号化深度決定部120は、深度ごとに最大符号化単位の領域が分割された少なくとも1つの分割領域を符号化し、少なくとも1つの分割領域別に、最終符号化結果が出力される深度を決定する。すなわち、符号化深度決定部120は、現在ピクチャの最大符号化単位ごとに、深度別符号化単位で映像データを符号化し、最も小さい符号化誤差が発生する深度を選択し、符号化深度に決定する。従って、決定された符号化深度に対応する符号化単位の符号化された映像データが、最終的に出力される。また、符号化深度に対応する符号化単位は、符号化された符号化単位と見なされもする。
【0041】
決定された符号化深度及び決定された符号化深度による符号化された映像データは、出力部130に出力される。
【0042】
最大符号化単位内の映像データは、最大深度以下の少なくとも1つの深度によって、深度別符号化単位に基づいて符号化され、それぞれの深度別符号化単位に基づいた符号化結果が比較される。深度別符号化単位の符号化誤差の比較結果、符号化誤差が最も小さい深度が選択されもする。それぞれの最大符号化単位ごとに、少なくとも1つの符号化深度が決定される。
【0043】
最大符号化単位の大きさは、深度が深くなるにつれて符号化単位が階層的に分割され、符号化単位の個数は増加する。また、1つの最大符号化単位に含まれる同じ深度の符号化単位であるとしても、それぞれのデータに係わる符号化誤差を測定し、下位深度への分割いかんが決定される。従って、1つの最大符号化単位に含まれるデータであるとしても、位置によって、深度別符号化誤差が異なるので、位置によって符号化深度が異なって決定される。従って、1つの最大符号化単位について、符号化深度が一つ以上設定され、最大符号化単位のデータは、一つ以上の符号化深度の符号化単位によって分割されもする。
【0044】
従って、一実施形態による符号化深度決定部120は、現在最大符号化単位に含まれるツリー構造による符号化単位を決定することができる。一実施形態による「ツリー構造による符号化単位」は、現在最大符号化単位に含まれるあらゆる深度別符号化単位のうち、符号化深度に決定された深度の符号化単位を含む。符号化深度の符号化単位は、最大符号化単位内で同一領域では、深度によって階層的に決定され、他の領域については、独立して決定される。同様に、現在領域に係わる符号化深度は、他の領域に係わる符号化深度と独立して決定されてもよい。
【0045】
一実施形態による最大深度は、最大符号化単位から最小符号化単位までの分割回数と関連した指標である。一実施形態による第1最大深度は、最大符号化単位から最小符号化単位までの総分割回数を示すことができる。一実施形態による第2最大深度は、最大符号化単位から最小符号化単位までの深度レベルの総個数を示すことができる。例えば、最大符号化単位の深度が0であるとするとき、最大符号化単位が1回分割された符号化単位の深度は、1に設定され、2回分割された符号化単位の深度は、2に設定される。この場合、最大符号化単位から4回分割された符号化単位が、最小符号化単位であるならば、深度0,1,2,3及び4の深度レベルが存在するので、第1最大深度は、4、第2最大深度は、5に設定される。
【0046】
最大符号化単位の予測符号化及び周波数変換は、最大符号化単位によって行われる。最大符号化単位による予測符号化及び変換は、また最大深度以下の深度によるさらに深い深度の符号化単位に基づいて行われる。変換は、直交変換法または整数変換法によって行われる。
【0047】
深度によって、最大符号化単位が分割されるたびに、下位深度の符号化単位の個数が増加するために、予測符号化及び変換を含む符号化過程は、深度が深くなるにつれて生じるあらゆる下位深度の符号化単位に対して行われる。説明の便宜のために、予測符号化及び変換は、最大符号化単位で、現在深度の符号化単位に基づいて説明する。
【0048】
符号化装置100は、映像データを符号化するために、多様なサイズまたは形態のデータ単位を選択することができる。映像データを符号化するために、予測符号化過程、変換過程及びエントロピ符号化過程のような動作が行われ、このとき、同じデータ単位があらゆる動作に利用されたり、あるいは各動作ごとに互いに異なるデータ単位が利用される。
【0049】
例えば、符号化装置100は、映像データを符号化するための符号化単位だけではなく、符号化単位内の映像データに係わる予測符号化のために、符号化単位と異なるデータ単位を選択することができる。
【0050】
最大符号化単位の予測符号化のために、予測符号化は、符号化深度の符号化単位、すなわち、それ以上下位深度に対応する符号化単位に分割されない符号化単位を基に遂行される。以下、それ以上分割されずに、予測の基になるデータ単位は、「予測単位」とする。予測単位が分割されたパーティションは、予測単位、または予測単位の高さ及び幅のうち、少なくとも一つが分割されたデータ単位を含むことができる。
【0051】
例えば、大きさ2Nx2N(ただし、Nは、正の整数)の符号化単位が、それ以上分割されない場合、サイズ2Nx2Nの予測単位になり、パーティションの大きさは、2Nx2N、2NxN、Nx2N、NxNなどであってもよい。一実施形態によるパーティションタイプは、予測単位の高さまたは幅が、対称的比率で分割された対称的パーティションだけではなく、1:nまたはn:1のように、非対称的比率で分割されたパーティション、幾何学的な形態に分割されたパーティション、任意的形態のパーティションなどを選択的に含むこともできる
予測単位の予測モードは、イントラモード、インターモード及びスキップモードのうち、少なくとも一つであってもよい。例えば、イントラモード及びインターモードは、2Nx2N,2NxN,Nx2N,NxNサイズのパーティションについて遂行される。また、スキップモードは、2Nx2Nサイズのパーティションについてのみ遂行される。符号化単位の内部に、複数の予測単位があるならば、それぞれの予測単位について、独立して符号化が行われ、符号化誤差が最も小さい予測モードが選択されもする。
【0052】
また、映像符号化装置100は、符号化単位と異なる大きさのデータ単位に基づいて、映像データを周波数変換することができる。
【0053】
符号化単位の周波数変換のために、符号化単位より小さいか、あるいは同じサイズのデータ単位を基に周波数変換が行われる。例えば、変換のためのデータ単位は、イントラモードのデータ単位及びインターモードのデータ単位を含んでもよい。
【0054】
以下、周波数変換の基礎になる処理単位を「変換単位」とする。変換単位についても、符号化単位の高さ及び幅が分割され、変換単位に至るまでの分割回数を示す変換深度が設定される。例えば、サイズ2Nx2Nの現在符号化単位の変換単位が、現在符号化単位と大きさが同じであるサイズ2Nx2Nの変換単位であるならば、変換深度0に設定され、現在符号化単位の高さ及び幅がそれぞれ半分になり、全て4^1個に分割されたサイズNxNの変換単位であるならば、変換深度1に設定され、現在符号化単位の高さ及び幅がそれぞれ四分され、全てで4^2個に分割されたサイズN/2xN/2の変換単位であるならば、変換深度2に設定される。例えば、変換階層的変換深度によって、上位変換深度の変換単位が、4個の下位変換深度の変換単位に分割される階層的ツリー構造による変換単位が設定される。
【0055】
符号化単位と同様に、符号化単位内の変換単位も、再帰的に(recursively)さらに小サイズの領域に分割され、変換単位は、領域単位で独立して決定される。従って、符号化単位の残差(resudual)データが変換深度によって、ツリー構造による変換単位によって分割されもする。
【0056】
符号化深度別符号化情報は、符号化深度だけではなく、予測関連情報及び周波数変換関連情報が必要である。従って、符号化単位深度決定部120は、最小符号化誤差を発生させた符号化深度だけではなく、符号化深度の符号化予測単位を予測単位パーティションに分割したパーティションタイプ、予測単位別予測モード、周波数変換のための変換単位の大きさなどを決定することができる。
【0057】
本発明の一実施形態によって、最大符号化単位のツリー構造による符号化単位、及びパーティションを決定する方法は、
図3ないし
図12を参照して後述する。
【0058】
符号化単位決定部120は、ラグランジュ乗数(Lagrangian multiplier)基盤の率歪曲最適化技法(rate-distortion optimization)を利用して、深度別符号化単位の符号化誤差を測定する。
【0059】
出力部130は、符号化単位決定部120で決定された少なくとも1つの符号化深度に基づいて符号化された最大符号化単位の映像データ、及び符号化深度による符号化モード情報をビットストリームとして出力する。
【0060】
符号化された映像データは、映像の残差データを符号化して獲得される。
【0061】
符号化深度による符号化モード情報は、符号化深度、予測単位のパーティション類型に係わる情報、予測モード情報及び変換単位サイズ情報を含んでもよい。
【0062】
符号化深度情報は、現在深度に対して符号化せずに、下位深度の符号化単位で符号化するか否かを示す深度別分割情報を利用して定義される。現在符号化単位の現在深度が符号化深度であるならば、現在符号化単位は、現在深度の符号化単位で符号化されるので、現在深度の分割情報は、それ以上下位深度で分割されないように定義される。一方、現在符号化単位の現在深度が符号化深度ではないなら、下位深度の符号化単位を利用した符号化を試みなければならないので、現在深度の分割情報は、下位深度の符号化単位に分割されるように定義される。
【0063】
現在深度が符号化深度ではないならば、符号化は、下位深度の符号化単位に分割された符号化単位に対して行われる。現在深度の1つの符号化単位には、少なくとも1つの下位深度の符号化単位が存在するために、符号化は、下位深度の各符号化単位に対して反復的に行われ、同じ深度の符号化単位に対して再帰的に符号化が行われる。
【0064】
1つの最大符号化単位内に、ツリー構造の符号化単位が決定され、符号化深度の符号化単位ごとに、少なくとも1つの符号化モードに係わる情報が決定されねばならないので、1つの最大符号化単位については、少なくとも1つの符号化モードに係わる情報が決定される。また、最大符号化単位のデータは、深度によって階層的に区画され、位置別に符号化深度が異なることもあるので、データについて、符号化深度及び符号化モードに係わる情報が設定される。
【0065】
従って、出力部130は、最大符号化単位に含まれている符号化単位、予測単位及び最小単位のうち、少なくとも一つについて、当該符号化深度及び符号化モードに係わる符号化情報を割り当てることができる。
【0066】
一実施形態による最小単位は、最下位符号化深度の最小符号化単位が4分割された大きさの正方形のデータ単位である。代案としては、最小単位は、最大符号化単位に含まれるあらゆる符号化単位内、予測単位内及び変換単位内に含まれる最大サイズの正方形データ単位であってもよい。
【0067】
例えば、出力部130を介して出力される符号化情報は、符号化単位別符号化情報と、予測単位別符号化情報とに分類されもする。符号化単位別符号化情報は、予測モード情報、パーティションサイズ情報を含んでもよい。予測単位別に符号化情報は、インターモードの推定方向に係わる情報、インターモードの参照映像インデックスに係わる情報、動きベクトルに係わる情報、イントラモードのクロマ成分に係わる情報、イントラモードの補間方式に係わる情報などを含んでもよい。また、ピクチャ別、スライス別またはGOP別に定義される符号化単位の最大サイズに係わる情報、及び最大深度に係わる情報は、SPS(sequence parameter set)またはビットストリームのヘッダに挿入されてもよい。
【0068】
映像符号化装置100で、下位深度の符号化単位は、上位深度の符号化単位の高さ及び幅を半分にした大きさの符号化単位である。すなわち、現在深度の符号化単位の大きさが2Nx2Nであるならば、下位深度の符号化単位の大きさは、NxNである。従って、2Nx2Nサイズの現在符号化単位は、NxNサイズの下位深度符号化単位を最大4個含んでもよい。
【0069】
従って、映像符号化装置100は、現在ピクチャの特性を考慮して決定された最大符号化単位の大きさ及び最大深度を基に、それぞれの最大符号化単位ごとに、最適の形態及び大きさの符号化単位を決定し、ツリー構造による符号化単位を構成することができる。また、それぞれの最大符号化単位ごとに、多様な予測モード、周波数変換方式で符号化することができるので、多様な映像サイズの符号化単位の映像特性を考慮して、最適の符号化モードが決定される。
【0070】
映像の解像度が非常に高いか、あるいはデータ量が非常に多い映像を、従来のマクロブロック単位で符号化するならば、ピクチャ当たりマクロブロックの数が過度に多くなる。従って、マクロブロックごとに生成される圧縮情報も多くなるので、圧縮情報の伝送負担が大きくなり、データ圧縮効率が低下する。しかし、本発明の一実施形態による映像符号化装置100は、映像の大きさを考慮して、符号化単位の最大サイズを増加させつつ、映像特性を考慮して符号化単位を調節することができるので、映像圧縮効率が上昇する。
【0071】
図2は、本発明の一実施形態による映像復号化装置のブロック図を図示している。
図2を参照すれば、本発明の一実施形態による映像復号化装置200は、受信部210、映像データ及び符号化情報抽出部220及び映像データ復号化部230を含む。一実施形態による映像復号化装置200の各種プロセシングのための符号化単位、深度、予測単位、変換単位、各種符号化モードに係わる情報など各種用語の定義は、
図1及び映像符号化装置100を参照して説明したところと同一である。
【0072】
受信部210は、ビットストリームを受信してパージングする。映像データ及び符号化情報抽出部220は、各最大符号化単位別に、ツリー構造の符号化単位に係わる符号化された映像データを抽出し、抽出された映像データを獲得し、映像データ復号化部230に出力する。映像データ及び符号化情報抽出部220は、受信された現在ピクチャの符号化単位の最大サイズに係わる情報を、現在ピクチャに係わるヘッダまたはSPSから抽出することができる。
【0073】
また、映像データ及び符号化情報抽出部220は、ビットストリームをパージングし、最大符号化単位別に、ツリー構造による符号化単位に係わる符号化深度及び符号化モードに係わる情報を抽出する。抽出された符号化深度及び符号化モードに係わる情報は、映像データ復号化部230に出力される。言い換えれば、ビットストリームの映像データは、最大符号化単位に分割され、映像データ復号化部230は、各最大符号化単位の映像データを復号化する。
【0074】
最大符号化単位別の符号化深度及び符号化モードに係わる情報は、一つ以上の符号化深度情報について設定され、符号化深度別符号化モードに係わる情報は、当該符号化単位のパーティションタイプ情報、予測モード情報及び変換単位のサイズ情報などを含んでもよい。また、符号化深度情報として、深度別分割情報が抽出されもする。
【0075】
符号化情報抽出部220が抽出した最大符号化単位別の符号化深度及び符号化モードに係わる情報は、一実施形態による映像符号化装置100のように、符号化端で、最大符号化単位別に、深度別符号化単位ごとに反復的に符号化を行い、最小符号化誤差を発生させると決定された符号化深度及び符号化モードに係わる情報である。従って、映像復号化装置200は、最小符号化誤差を発生させる符号化深度及び符号化モードによって、データを復号化して映像を復元することができる。
【0076】
符号化深度及び符号化モードに係わる符号化情報は、当該符号化単位、当該予測単位及び当該最小単位のうち、所定データ単位に対して割り当てられているので、符号化情報抽出部220は、所定データ単位別に、符号化深度及び符号化モードに係わる情報を抽出することができる。所定データ単位別に、当該最大符号化単位の符号化深度及び符号化モードに係わる情報が記録されているならば、同じ符号化深度及び符号化モードに係わる情報を有している所定データ単位は、同じ最大符号化単位に含まれるデータ単位であると類推される。
【0077】
映像データ復号化部230は、符号化情報抽出部で抽出された最大符号化単位別の符号化深度及び符号化モード情報に基づいて、それぞれの最大符号化単位の映像データを復号化して現在ピクチャを復元する。すなわち、映像データ復号化部230は、最大符号化単位に含まれたツリー構造による符号化単位のうちでそれぞれの符号化単位ごとに、パーティションタイプ、予測モード、変換単位に基づいて、符号化された映像データを復号化することができる。復号化過程は、イントラ予測及び動き補償を含む動き予測過程、及び逆変換過程を含んでもよい。逆変換過程は、逆直交変換または逆整数変換の方法によって行われる。
【0078】
映像データ復号化部230は、符号化深度別符号化単位の予測単位のパーティションタイプ情報及び予測モード情報に基づいて、符号化単位ごとにそれぞれのパーティション及び予測モードによって、イントラ予測または動き補償を行うことができる。
【0079】
また、映像データ復号化部230は、最大符号化単位別の逆変換のために、符号化深度別符号化単位の変換単位のサイズ情報に基づいて、符号化単位ごとにそれぞれの変換単位によって、逆変換を行うことができる。
【0080】
映像データ復号化部230は、深度別分割情報を利用する現在最大符号化単位の少なくとも1つの符号化深度を決定することができる。もし分割情報が、現在深度で、それ以上分割されないということを示しているならば、現在深度が符号化深度である。従って、映像データ復号化部230は、現在最大符号化単位の映像データに対して、現在深度の符号化単位を、予測単位の分割タイプ、予測モード及び変換単位サイズ情報を利用して復号化することができる。
【0081】
例えば、符号化単位、予測単位及び最小単位のうち、所定データ単位について設定されている符号化情報を観察し、同じ分割情報を含んだ符号化情報を保有しているデータ単位が集まり、映像データ復号化部230によって同じ符号化モードで復号化する1つのデータ単位と見なされもする。
【0082】
映像復号化装置200は、符号化過程で最大符号化単位ごとに、再帰的に符号化を行い、最小符号化誤差を発生させた符号化単位に係わる情報を獲得し、現在ピクチャに係わる復号化に利用することができる。すなわち、最大符号化単位ごとに、最適符号化単位で決定されたツリー構造による符号化単位の符号化された映像データが復号化される。また、符号化単位の最大サイズは、解像度及び映像データの量を考慮して決定される。
【0083】
従って、高い解像度の映像、またはデータ量が過度に多い映像でも、符号化端から伝送された最適符号化モードに係わる情報を利用し、映像の特性に適応的に決定された符号化単位の大きさ及び符号化モードによって、効率的に映像データを復号化して復元することができる。
【0084】
図3ないし
図13を参照し、本発明の一実施形態によって、ツリー構造の符号化単位、予測単位及び変換単位を決定する方法について説明する。
【0085】
図3は、本発明の一実施形態による符号化単位の概念について説明するための図面である。
【0086】
符号化単位の大きさは、幅x高さで表現され、サイズ64x64である符号化単位から、32x32、16x16、8x8を含んでもよい。サイズ64x64の符号化単位は、サイズ64x64,64x32,32x64,32x32のパーティションに分割され、サイズ32x32の符号化単位は、サイズ32x32,32x16,16x32,16x16のパーティションに分割され、サイズ16x16の符号化単位は、サイズ16x16,16x8,8x16,8x8のパーティションに分割され、サイズ8x8の符号化単位は、サイズ8x8,8x4,4x8,4x4のパーティションに分割されもする。
【0087】
ビデオデータ310については、解像度が1920x1080、最大符号化単位の大きさが64、最大深度が2に設定されている。ビデオデータ320については、解像度が1920x1080、符号化単位の最大サイズが64、最大深度が3に設定されている。また、ビデオデータ330については、解像度が352x288、符号化単位の最大サイズが16、最大深度が1に設定されている。
図3に図示された最大深度は、最大符号化単位から最小符号化単位までの総分割回数を示す。
【0088】
解像度が高いか、あるいはデータ量が多い場合、圧縮率向上だけではなく、映像特性を正確に反映するために、符号化サイズの最大サイズが相対的に大きいことが望ましい。従って、ビデオデータ330に比べ、解像度の高いビデオデータ310,320は、符号化サイズの最大サイズが64に選択されもする。
【0089】
ビデオデータ310の最大深度が2であるから、ビデオデータ310の符号化単位315は、長軸サイズが64である最大符号化単位から、2回分割されて深度が2階層深くなり、長軸サイズが32,16である符号化単位まで含んでもよい。一方、ビデオデータ330の最大深度が1であるから、ビデオデータ330の符号化単位335は、長軸サイズが16である符号化単位から、1回分割されて深度が1階層深くなり、長軸サイズが8である符号化単位まで含んでもよい。
【0090】
ビデオデータ320の最大深度が3であるから、ビデオデータ320の符号化単位325は、長軸サイズが64である最大符号化単位から、3回分割されて深度が3階層深くなり、長軸サイズが32,16,8である符号化単位まで含んでもよい。深度が深くなるほど、さらに小さい符号化単位に基づいて映像を符号化するので、さらに精密な場面を含んでいる映像を符号化するのに適する。
【0091】
図4は、本発明の一実施形態による符号化単位に基づいた映像符号化部のブロック図を示したものである。
【0092】
一実施形態による映像符号化部400は、前述のビデオ符号化装置100の符号化深度決定部120で映像データを符号化する作業を含んで遂行する。言い換えれば、イントラ予測部410は、現在フレーム405において、イントラモードの予測単位について、イントラ予測を行い、動き推定部420及び動き補償部425は、インターモードの予測単位について、現在フレーム405及び参照フレーム495を利用して、インター予測及び動き補償を行う。
【0093】
イントラ予測部410、動き推定部420及び動き補償部425から出力された予測単位に基づいて残差値が生成され、生成された残差値は、周波数変換部430及び量子化部440を経て、量子化された変換係数として出力される。量子化された変換係数は、逆量子化部460、周波数逆変換部470を介して、再び残差値に復元され、復元された残差値は、デブロッキング部480及びループ・フィルタリング部490を経て後処理され、参照フレーム495として出力される。量子化された変換係数は、エントロピ符号化部450を経て、ビットストリーム455として出力されもする。
【0094】
本発明の一実施形態による映像符号化装置100に適用するために、映像符号化部400の構成要素であるイントラ予測部410、動き推定部420、動き補償部425、周波数変換部430、量子化部440、エントロピ符号化部450、逆量子化部460、周波数逆変換部470、デブロッキング部480及びループ・フィルタリング部490は、いずれも最大符号化単位ごとに最大深度を考慮し、ツリー構造による符号化単位のうち、それぞれの符号化単位に基づいて、映像符号化過程を処理する。
【0095】
特に、イントラ予測部410、動き推定部420及び動き補償部425は、現在最大符号化単位の最大サイズ及び最大深度を考慮し、ツリー構造による符号化単位のうち、それぞれの符号化単位のパーティション及び予測モードを決定し、周波数変換部430は、ツリー構造による符号化単位のうち、それぞれの符号化単位内の変換単位の大きさを考慮し、変換単位の大きさを決定せねばならない。
【0096】
図5は、本発明の一実施形態による符号化単位に基づいた映像復号化部500のブロック図を示したものである。
【0097】
パージング部510は、ビットストリーム505から、符号化された映像データ、及び復号化のために必要な符号化情報をパージングする。符号化された映像データは、エントロピ復号化部520及び逆量子化部530を経て、逆量子化されたデータとして出力され、逆量子化されたデータは、周波数逆変換部540を経て、空間領域の映像データとして復元される。
【0098】
イントラ予測部550は、空間領域の映像データについて、イントラモードで符号化単位に係わるイントラ予測を行い、動き補償部560は、参照ピクチャ585を利用し、インターモードで符号化単位に係わる動き補償を行う。
【0099】
イントラ予測部550及び動き補償部560を経た空間領域の映像データは、デブロッキング部570及びループ・フィルタリング部580を経て後処理されて出力される。また、デブロッキング部570及びループ・フィルタリング部580を経て後処理された映像データは、参照フレーム585として出力される。
【0100】
本発明の一実施形態による映像復号化装置200に適用するために、映像復号化装置500の構成要素であるパージング部510、エントロピ復号化部520、逆量子化部530、周波数逆変換部540、イントラ予測部550、動き補償部560、デブロッキング部570及びループ・フィルタリング部580は、最大符号化単位ごとに、ツリー構造による符号化単位に基づいて動作を遂行する。
【0101】
特に、イントラ予測部550、動き補償部560は、ツリー構造による符号化単位ごとにそれぞれ、パーティション及び予測モードに基づいて動作を行い、周波数逆変換部540は、符号化単位ごとに、変換単位の大きさに基づいて動作を遂行する。
【0102】
図6は、本発明の一実施形態による深度別符号化単位及び予測パーティションを図示している。
【0103】
一実施形態による映像符号化装置100、及び一実施形態による映像復号化装置200は、映像特性を考慮するために、階層的な符号化単位を使用する。符号化単位の最大高さ及び最大幅、最大深度は、映像の特性によって適応的に決定され、ユーザの要求によって、多様に設定されもする。あらかじめ設定された符号化単位の最大サイズによって、深度別符号化単位の大きさが決定されもする。
【0104】
本発明の一実施形態による符号化単位の階層構造600は、符号化単位の最大高さ及び最大幅が64であり、最大深度が4である場合を図示している。一実施形態による符号化単位の階層構造600の縦軸に沿って深度が深くなるので、深度別符号化単位の高さ及び幅がそれぞれ分割される。また、符号化単位の階層構造600の横軸に沿って、それぞれの深度別符号化単位の予測基盤になる予測単位及びパーティションが図示されている。
【0105】
符号化単位610は、符号化単位の階層構造600において最大符号化単位であり、深度が0であり、符号化単位の大きさ、すなわち、高さ及び幅が64x64である。縦軸に沿って深度が深くなり、サイズ32x32である深度1の符号化単位620、サイズ16x16である深度2の符号化単位630、サイズ8x8である深度3の符号化単位640、サイズ4x4である深度4の符号化単位650が存在する。サイズ4x4である深度4の符号化単位650は、最小符号化単位である。
【0106】
それぞれの深度別に横軸に沿って、符号化単位の予測単位及びパーティションが配列される。すなわち、深度0のサイズ64x64の最大符号化単位610が予測単位であるならば、予測単位は、サイズ64x64の符号化単位610に含まれるサイズ64x64のパーティション610、サイズ64x32のパーティション612、サイズ32x64のパーティション614、サイズ32x32のパーティション616に分割されもする。
【0107】
同様に、深度1のサイズ32x32の符号化単位620の予測単位は、サイズ32x32の符号化単位620に含まれるサイズ32x32のパーティション620、サイズ32x16のパーティション622、サイズ16x32のパーティション624、サイズ16x16のパーティション626に分割されもする。
【0108】
深度2のサイズ16x16の符号化単位630の予測単位は、サイズ16x16の符号化単位630に含まれるサイズ16x16のパーティション630、サイズ16x8のパーティション632、サイズ8x16のパーティション634、サイズ8x8のパーティション636に分割されもする。
【0109】
深度3のサイズ8x8の符号化単位640の予測単位は、サイズ8x8の符号化単位640に含まれるサイズ8x8のパーティション640、サイズ8x4のパーティション642、サイズ4x8のパーティション644、サイズ4x4のパーティション646に分割されもする。
【0110】
深度4のサイズ4x4の符号化単位650は、最小符号化単位であり、最下位深度の符号化単位である。符号化単位650の予測単位は、サイズ4x4のパーティションだけに設定される。
【0111】
一実施形態による映像符号化装置の符号化深度決定部120は、最大符号化単位610の符号化深度を決定するために、最大符号化単位610に含まれるそれぞれの深度の符号化単位ごとに符号化を行わねばならない。
【0112】
同じ範囲及び大きさのデータを含むための深度別符号化単位の個数は、深度が深くなるほど、深度別符号化単位の個数も増加する。例えば、深度1の符号化単位1個が含むデータに対して、深度2の符号化単位は、4個が必要である。従って、同じデータの符号化結果を深度別に比較するために、1個の深度1の符号化単位及び4個の深度2の符号化単位を利用し、それぞれ符号化されねばならない。
【0113】
深度のうち現在深度によって符号化を行うために、符号化単位の階層構造600の横軸に沿って、現在深度の符号化単位の予測単位ごとに符号化を行い、現在深度の最も小さい符号化誤差が選択されもする。また、符号化単位の階層構造600の縦軸に沿って深度が深くなるにつれて、それぞれの深度ごとに符号化を行って深度別最小符号化誤差を比較し、最小符号化誤差が検索される。最大符号化単位610において最小符号化誤差が発生する深度及びパーティションが、最大符号化単位610の符号化深度及びパーティションタイプとして選択されもする。
【0114】
図7は、本発明の一実施形態による、符号化単位710及び変換単位720の関係を図示している。
【0115】
映像符号化装置100及び映像復号化装置200は、最大符号化単位ごとに最大符号化単位より小さいか、あるいは同じサイズの符号化単位で映像を分割し、符号化したり復号化する。符号化過程中、周波数変換のための変換単位の大きさは、それぞれの符号化単位より大きくないデータ単位を基に選択されもする。
【0116】
例えば、符号化単位710の大きさが64x64サイズであるとき、32x32,16x16,8x8、4x4サイズの変換単位で、それぞれ周波数変換を行って符号化した後、原本との誤差が最も少ない変換単位が選択される。
【0117】
図8は、本発明の一実施形態による深度別符号化情報を図示している。
【0118】
本発明の一実施形態による映像符号化装置100の符号化情報出力部130は、符号化モードに係わる情報であり、それぞれの符号化深度の符号化単位ごとに、パーティションタイプに係わる情報800、予測モードに係わる情報810、変換単位サイズに係わる情報820を符号化して伝送することができる。
【0119】
パーティションタイプに係わる情報800は、現在符号化単位の動き予測のためのデータ単位として、現在符号化単位の予測単位が分割されたパーティションの形態に係わる情報を示す。例えば、サイズ2Nx2Nの現在符号化単位CU_0は、サイズ2Nx2Nのパーティション802、サイズ2NxNのパーティション804、サイズNx2Nのパーティション806、サイズNxNのパーティション808のうちいずれか1つのタイプに分割されて利用される。その場合、現在符号化単位のパーティションタイプに係わる情報800は、サイズ2Nx2Nのパーティション802、サイズ2NxNのパーティション804、サイズNx2Nのパーティション806及びサイズNxNのパーティション808のうち一つを示すように設定される。
【0120】
予測モードに係わる情報810は、それぞれのパーティションの動き予測モードを示す。例えば、予測モードに係わる情報810を介して、分割タイプに係わる情報800が指すパーティションが、イントラモード812、インターモード814及びスキップモード816のうち一つで動き予測が行われているかが設定される。
【0121】
また、変換単位サイズに係わる情報820は、現在符号化単位をいかなる変換単位を基に周波数変換を行うかを示す。例えば、変換単位は、第1イントラ変換単位サイズ822、第2イントラ変換単位サイズ824、第1インター変換単位サイズ826、第2イントラ変換単位サイズ828のうち一つであってもよい。
【0122】
本発明の一実施形態による映像復号化装置200の符号化情報抽出部210は、それぞれの深度別符号化単位ごとに、パーティションタイプに係わる情報800、予測モードに係わる情報810、変換単位サイズに係わる情報820を抽出して復号化に利用することができる。
【0123】
図9は、本発明の一実施形態による深度別符号化単位を図示している。
【0124】
深度の変化いかんを示すために、分割情報が利用される。分割情報は、現在深度の符号化単位が、下位深度の符号化単位に分割されるか否かを示す。
【0125】
図9を参照すれば、深度0及び2N_0x2N_0サイズの符号化単位900の予測符号化のための予測単位910は、2N_0x2N_0サイズのパーティションタイプ912、2N_0xN_0サイズのパーティションタイプ914、N_0x2N_0サイズのパーティションタイプ916、N_0xN_0サイズのパーティションタイプ918を含んでもよい。予測単位が対称的比率で分割されたパーティション912,914,916,918だけ例示されているが、前述のように、パーティションタイプは、これに限定されるものではなく、非対称的パーティション、任意的形態のパーティション、幾何学的形態のパーティションなどを含んでもよい。
【0126】
パーティションタイプごとに、1個の2N_0x2N_0サイズのパーティション、2個の2N_0xN_0サイズのパーティション、2個のN_0x2N_0サイズのパーティション、4個のN_0xN_0サイズのパーティションごとに、反復して予測符号化が行われねばならない。サイズ2N_0xN_0、サイズN_0xN_0、サイズN_0x2N_0及びサイズN_0xN_0のパーティションについては、イントラモード及びインターモードで予測符号化が行われる。スキップモードは、サイズ2N_0x2N_0のパーティションに対して行われる。
【0127】
サイズ2N_0x2N_0、2N_0xN_0、N_0x2N_0及びN_0xN_0のパーティションタイプ912,914,916,918による符号化誤差が比較され、パーティションタイプのうち最も小さい符号化誤差が決定される。もしパーティションタイプ912,914,916のうち一つによる符号化誤差が最も小さいならば、予測単位910は、それ以上下位深度に分割されない。
【0128】
例えば、サイズN_0xN_0のパーティションタイプ918による符号化誤差が最も小さいならば、動作920で深度0は、1に変更されてパーティションタイプ918を分割し、深度2及びサイズN_0xN_0のパーティションタイプの符号化単位930に対して反復して符号化を行い、最小符号化誤差を検索して行くことができる。
【0129】
深度1及びサイズ2N_1x2N_1(=N_0xN_0)の符号化単位930の予測符号化のための予測単位940は、サイズ2N_1x2N_1のパーティションタイプ942、サイズ2N_1xN_1のパーティションタイプ944、サイズN_1x2N_1のパーティションタイプ946、サイズN_1xN_1のパーティションタイプ948を含んでもよい。
【0130】
例えば、サイズN_1xN_1サイズのパーティションタイプ948による符号化誤差が最も小さいならば、動作950で深度1は、深度2に変更されてパーティションタイプ949を分割し、深度2及びサイズN_2xN_2の符号化単位960に対して反復して符号化を行い、最小符号化誤差を検索して行くことができる。
【0131】
最大深度がdである場合、深度による分割動作は、深度d−1であるまで行われ、分割情報は、0からd−2までの深度に対して符号化される。例えば、動作970で、深度d−2に対応する符号化単位が分割され、深度d−1まで符号化が行われる場合、深度d−1及びサイズ2N_(d−1)x2N_(d−1)の符号化単位980の予測符号化のための予測単位990は、サイズ2N_(d−1)x2N_(d−1)のパーティションタイプ992、サイズ2N_(d−1)xN_(d−1)のパーティションタイプ994、サイズN_(d−1)x2N_(d−1)のパーティションタイプ996、サイズN_(d−1)xN_(d−1)のパーティションタイプ998を含んでもよい。
【0132】
パーティションタイプにおいて、1個のサイズ2N_(d−1)x2N_(d−1)のパーティション、2個のサイズ2N_(d−1)xN_(d−1)のパーティション、2個のサイズN_(d−1)x2N_(d−1)のパーティション、4個のサイズN_(d−1)xN_(d−1)のパーティションごとに、反復して予測符号化を介した符号化が行われてこそ、最小符号化誤差が発生するパーティションタイプが検索される。
【0133】
サイズN_(d−1)xN_(d−1)のパーティションタイプ998による符号化誤差が最も小さくても、最大深度がdであるから、深度d−1の符号化単位CU_(d−1)は、それ以上下位深度への分割過程を経ず、現在最大符号化単位900に対する符号化深度が深度d−1に決定され、パーティションタイプは、N_(d−1)xN_(d−1)に決定される。また、最大深度がdであり、d−1の最下位深度を有する最小符号化単位980は、それ以上下位深度に分割されないために、符号化単位980に対して分割情報は、設定されない。
【0134】
データ単位999は、現在最大符号化単位に係わる最小単位であってもよい。一実施形態による最小単位は、最小符号化単位980を4分割して獲得された正方形のデータ単位であってもよい。かような反復的符号化過程を介して、ビデオ符号化装置100は、符号化単位900の深度別符号化誤差を比較し、最も小さい符号化誤差が発生する深度を選択して符号化深度を決定し、当該パーティションタイプ及び予測モードを、符号化深度の符号化モードに設定することができる。
【0135】
かような方法で、深度0,1,…,d−1,dのあらゆる深度別最小符号化誤差を比較し、誤差が最も小さい深度が選択され、符号化深度に決定される。符号化深度、予測単位のパーティションタイプ及び予測モードは、符号化モードに係わる情報として符号化されて伝送される。また、深度0から符号化深度に至るまで符号化単位が分割されねばならないので、符号化深度の分割情報だけ0に設定され、符号化深度を除外した深度別分割情報は、1に設定される。
【0136】
映像復号化装置200の符号化情報抽出部220は、符号化単位900に係わる符号化深度、及び予測単位に係わる情報を抽出し、符号化単位900を復号化するのに利用することができる。映像復号化装置200は、深度別分割情報を利用し、分割情報が0である深度を符号化深度に決定し、当該深度に係わる符号化モードに係わる情報を復号化に利用することができる。
【0137】
図10ないし
図12は、本発明の一実施形態による、符号化単位、予測単位及び周波数変換単位の関係を図示している。
【0138】
図10を参照すれば、符号化単位1010は、最大符号化単位に対して、一実施形態による映像符号化装置100が決定した符号化深度別符号化単位である。
図11及び
図12を参照すれば、予測単位1060は、符号化単位1010において、それぞれの符号化深度別符号化単位の予測単位のパーティションであり、変換単位1070は、それぞれの符号化深度別符号化単位の変換単位である。
【0139】
深度別符号化単位1010で、最大符号化単位の深度が0であるとすれば、符号化単位1012,1054は、深度が1、符号化単位1014,1016,1018,1028,1050,1052は、深度が2、符号化単位1020,1022,1024,1026,1030,1032,1038は、深度が3、符号化単位1040,1042,1044,1046は、深度が4である。
【0140】
予測単位1060において、一部パーティション1014,1016,1022,1032,1048,1050,1052,1054は、符号化単位1010が分割された形態である。すなわち、パーティション1014,1022,1050,1054は、2NxNのパーティションタイプであり、パーティション1016,1048,1052は、Nx2Nのパーティションタイプであり、パーティション1032は、NxNのパーティションタイプである。深度別符号化単位1010の予測単位及びパーティションは、それぞれの符号化単位より小さいか、あるいは同じである。
【0141】
変換単位1070において、一部変換単位1052,1054の映像データについては、符号化単位に比べて、小サイズのデータ単位であり、周波数変換または周波数逆変換が行われる。また、変換単位1014,1016,1022,1032,1048,1050,1052,1054は、予測単位1060における当該予測単位及びパーティションと比較すれば、互いに異なる大きさまたは形態のデータ単位である。すなわち、映像符号化装置100及び映像復号化装置200は、同じ符号化単位に係わる予測及び周波数変換/逆変換作業であるとしても、それぞれ別個のデータ単位を基に行うことができる。
【0142】
単位ごとに再帰的に符号化が行われて最適符号化単位が決定されることによって、再帰的ツリー構造による符号化単位が構成される。符号化情報は、符号化単位に係わる分割情報、パーティションタイプ情報、予測モード情報、変換単位サイズ情報を含んでもよい。下記表1は、ビデオ符号化装置100及びビデオ復号化装置200で設定される一例を示している。
【0143】
【表1】
ビデオ符号化装置100の出力部130は、ツリー構造による符号化単位に係わる符号化情報を出力し、一実施形態によるビデオ復号化装置200の符号化情報抽出部220は、受信されたビットストリームから、ツリー構造による符号化単位に係わる符号化情報を抽出することができる。
【0144】
分割情報は、現在符号化単位が、下位深度の符号化単位に分割されているか否かを示す。現在深度dの分割情報が0であるならば、現在符号化単位が、下位符号化単位で、それ以上分割されない深度が符号化深度であるから、符号化深度に対して、パーティションタイプ情報、予測モード、変換単位サイズ情報が定義される。分割情報によって、1段階さらに分割されねばならない場合には、分割された4個の下位深度の符号化単位ごとに、独立して符号化が行われねばならない。
【0145】
予測モードは、イントラモード、インターモード及びスキップモードのうち一つで示すことができる。イントラモード及びインターモードは、あらゆるパーティションタイプで定義され、スキップモードは、パーティションタイプ2Nx2Nでのみ定義される。
【0146】
パーティションタイプ情報は、予測単位の高さまたは幅が、対称的比率で分割された対称的パーティションタイプ2Nx2N,2NxN,Nx2N及びNxNと、非対称的比率で分割された非対称的パーティションタイプ2NxnU,2NxnD,nLx2N,nRx2Nを示すことができる。非対称的パーティションタイプ2NxnU及び2NxnDは、それぞれ高さが1:3及び3:1に分割された形態であり、非対称的パーティションタイプnLx2N及びnRx2Nは、それぞれ幅が1:3及び3:1に分割された形態を示す。
【0147】
変換単位サイズは、イントラモードで2種のサイズ、インターモードで2種のサイズに設定される。すなわち、変換単位分割情報が0であるならば、変換単位の大きさが、現在符号化単位のサイズ2Nx2Nに設定される。変換単位分割情報が1であるならば、現在符号化単位が、分割された大きさの変換単位に設定される。また、サイズ2Nx2Nである現在符号化単位に係わるパーティションタイプが、対称形パーティションタイプであるならば、変換単位の大きさは、NxN、非対称型パーティションタイプであるならば、N/2xN/2に設定される。
【0148】
一実施形態によるツリー構造による符号化単位の符号化情報は、符号化深度の符号化単位、予測単位及び最小単位のうち、少なくとも一つに割り当てられる。符号化深度の符号化単位は、同じ符号化情報を保有している予測単位及び最小単位を一つ以上含んでもよい。
【0149】
従って、隣接したデータ単位間で、それぞれ保有している符号化情報を確認すれば、同じ符号化深度の符号化単位に含まれるか否かが確認される。また、データ単位が保有している符号化情報を利用すれば、当該符号化深度の符号化単位を確認することができるので、最大符号化単位内の符号化深度の分布が類推される。
【0150】
従って、その場合、現在符号化単位が、周辺データ単位を参照して予測される場合、現在符号化単位に隣接する下位深度の符号化単位内のデータ単位の符号化情報が直接参照されて利用される。
【0151】
他の実施形態で、現在符号化単位が周辺符号化単位を参照して予測符号化が行われる場合、隣接する深度別符号化単位の符号化情報を利用し、深度別符号化単位内で、現在符号化単位に隣接するデータが検索されることによって、周辺符号化単位が参照されもする。
【0152】
しかし、本発明の他の実施形態は、それに限定されるものではないということを理解することができる。例えば、現在符号化単位が、周辺データ単位の符号化情報に基づいて予測される場合、現在符号化単位の周辺データ単位は、データ単位の符号化情報を利用して検索され、検索された周辺符号化単位は、現在符号化単位の予測のために参照される。
【0153】
図13は、表1の符号化モード情報による符号化単位、予測単位及び変換単位の関係を図示している。
【0154】
最大符号化単位1300は、符号化深度の符号化単位1302,1304,1306,1312,1314,1316,1318を含む。このうちの1つの符号化単位1318は、符号化深度の符号化単位であるから、分割情報が0に設定される。サイズ2Nx2Nの符号化単位1318のパーティションタイプ情報は、パーティションタイプ2Nx2N 1322、2NxN 1324、Nx2N 1326、NxN 1328、2NxnU 1332、2NxnD 1334、nLx2N 1336及びnRx2N 1338のうち一つに設定される。
【0155】
パーティションタイプ情報が、対称形パーティションタイプ2Nx2N 1322、2NxN 1324、Nx2N 1326及びNxN 1328のうち一つに設定されている場合、変換単位分割情報(TU size flag)が0であるならば、サイズ2Nx2Nの変換単位1342が設定され、変換単位分割情報が1であるならば、サイズNxNの変換単位1344が設定される。
【0156】
パーティションタイプ情報が非対称型パーティションタイプ2NxnU 1332、2NxnD 1334、nLx2N 1336及びnRx2N 1338のうち一つに設定された場合、変換単位分割情報(TU size flag)が0であるならば、サイズ2Nx2Nの変換単位1352が設定され、変換単位分割情報が1であるならば、サイズN/2xN/2の変換単位1354が設定される。
【0157】
図13を参照すれば、変換単位分割情報(TU size flag)は、0または1を有するが、変換単位分割情報(TU size flag)は、1ビットに限定されるものではなく、変換単位分割情報(TU size flag)が0から増加するにつれて、変換単位は、階層的に分割されてツリー構造を有することができる。
【0158】
その場合、実際に利用される変換単位の大きさは、変換単位の最大サイズ及び最小サイズと共に、変換単位の変換単位分割情報(TU size flag)を利用して表現される。一実施形態によれば、符号化装置100は、最大変換単位サイズ情報、最小変換単位サイズ情報及び最大変換単位分割情報(TU size flag)を符号化することができる。最大変換単位サイズ情報、最小変換単位サイズ情報及び最大変換単位分割情報(TU size flag)を符号化した結果は、SPSに挿入される。一実施形態によれば、復号化装置200は、最大変換単位サイズ情報、最小変換単位サイズ情報及び最大変換単位分割情報(TU size flag)を利用し、ビデオを復号化することができる。
【0159】
例えば、現在符号化単位がサイズ64x64であり、最大変換単位サイズが32x32であるならば、変換単位分割情報(TU size flag)が0であるとき、変換単位の大きさが32x32、変換単位分割情報(TU size flag)が1であるとき、変換単位の大きさが16x16、変換単位分割情報(TU size flag)が2であるとき、変換単位の大きさが8x8に設定される。
【0160】
他の例として、現在符号化単位がサイズ32x32であり、最小変換単位サイズが32x32であるならば、変換単位分割情報(TU size flag)が0であるとき、変換単位の大きさが32x32に設定され、変換単位の大きさが32x32より小さい数ではないので、それ以上の変換単位分割情報が設定されない。
【0161】
さらに他の例で、現在符号化単位がサイズ64x64であり、最大変換単位分割情報が1であるならば、変換単位分割情報(TU size flag)は、0または1であって、他の変換単位分割情報が設定されない。
【0162】
従って、最大変換単位分割情報(TU size flag)を「MaxTransformSizeIndex」、最小変換単位サイズを「MinTransformSize」、変換単位分割情報(TU size flag)が0である場合の変換単位サイズを「RootTuSize」であると定義するとき、現在符号化単位で可能な最小変換単位サイズ「CurrMinTuSize」は、下記数式(1)のように定義される。
【0163】
CurrMinTuSize
=max(MinTransformSize,RootTuSize/(2^MaxTransformSizeIndex)) (1)
現在符号化単位で可能な最小変換単位サイズ「CurrMinTuSize」と比較し、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」は、システム上、採択可能な最大変換単位サイズを示すことができる。すなわち、数式(1)によれば、「RootTuSize/(2^MaxTransformSizeIndex)」は、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」を最大変換単位分割情報に相応する回数ほど分割した変換単位サイズであり、「MinTransformSize」は、最小変換単位サイズである。従って、「RootTuSize/(2^MaxTransformSizeIndex)」及び「MinTransformSize」において小さい値が、現在現在符号化単位で可能な最小変換単位サイズ「CurrMinTuSize」である。
【0164】
一実施形態による最大変換単位サイズRootTuSizeは、予測モードによって変わることもある。
【0165】
例えば、現在予測モードがインターモードであるならば、RootTuSizeは、下記数式(2)によって決定される。数式(2)で「MaxTransformSize」は、最大変換単位サイズ、「PUSize」は、現在予測単位サイズを示す。
【0166】
RootTuSize=min(MaxTransformSize,PUSize) (2)
すなわち、現在予測モードがインターモードであるならば、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」は、最大変換単位サイズ及び現在予測単位サイズのうち小さい値に設定される。
【0167】
現在パーティション単位の予測モードが、予測モードがイントラモードであるならば、「RootTuSize」は、下記数式(3)によって決定される。「PartitionSize」は、現在パーティション単位の大きさを示す。
【0168】
RootTuSize=min(MaxTransformSize,PartitionSize) (3)
すなわち、現在予測モードがイントラモードであるならば、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」は、最大変換単位サイズ及び現在パーティション単位サイズのうち小さい値に設定される。
【0169】
ただし、パーティション単位の予測モードによって変動する一実施形態による現在最大変換単位サイズ「RootTuSize」は、一実施形態であるのみ、現在最大変換単位サイズを決定する要因がこれに限定されるものではないということに留意せねばならない。
【0170】
以下、
図4の本発明の一実施形態による映像符号化装置400のエントロピ符号化部450、及び
図5の映像復号化装置500のエントロピ復号化部520で行われる残差ブロックの符号化過程及び復号化過程について具体的に説明する。以下の説明で、符号化単位は、映像の符号化段階で、現在符号化されるブロックを指す用語であり、復号化単位は、映像の復号化段階で、現在復号化されるブロックを指す用語である。符号化単位及び復号化単位という用語は、映像の符号化段階及び復号化段階のうち、いずれの段階で指すかという差であるのみ、符号化段階での符号化単位は、復号化段階での復号化単位と呼ばれもする。用語の統一性のために、特別の場合を除いては、符号化段階及び復号化段階で、同一に符号化単位に統一して呼ぶ。また、本発明の一実施形態による残差ブロックの符号化方法及び復号化方法及びその装置は、一般的な映像コーデックでの残差ブロックの符号化及び復号化にも適用されるということを本発明が属する技術分野で当業者であるならば、明細書を介して理解することができるであろう。
【0171】
図14Aないし
図14Cは、本発明が属する技術分野と関連した技術分野で、変換残差ブロック(transformation residual block)を符号化する過程について説明するための参照図である。
【0172】
図14Aを参照すれば、残差ブロックに対する周波数変換が行われ、変換残差ブロック1410が生成されれば、ジグザグスキャン順序によって、変換残差ブロック1410内の変換係数をスキャンしつつ、変換残差ブロック1410内の0ではない値を有する有効変換係数の位置を示す有効性マップ(significance map)及び有効変換係数のレベル情報が符号化される。例えば、変換残差ブロックの大きさが4x4であるとき、
図14Bに図示されているような変換残差ブロック1420を符号化する過程について説明する。
図14Bで、Χと表示された位置の変換係数は、0ではない値を有する有効変換係数であると仮定する。かような場合、
図14Cに図示されているように、残差ブロック1430内の変換係数において、有効変換係数を1と表示し、0である変換係数は、そのまま0と表示するのがまさに有効性マップである。有効性マップは、所定のスキャン順序によってスキャニングされつつ、コンテクスト基盤二進算術符号化(context adaptive binary arithmetic coding)される。一例として、
図14Cに図示されているような有効性マップを、左側から右側、上側から下側の順序でスキャニングするラスタースキャニング(raster scanning)順序によって符号化するときには、「111111110101000」の二進ストリングに該当する有効性マップをコンテクスト基盤符号化する。かような有効性マップが符号化された後、有効係数のレベル情報、すなわち、有効係数の符号(sign)及び絶対値(abs)が符号化される。
【0173】
かような関連技術分野での変換残差ブロックを符号化する方法は、8x8サイズまたは4x4サイズの比較的小サイズの変換残差ブロックの符号化には適するが、本発明の一実施形態による映像符号化装置のように、16x16、32x32、64x64のような大サイズを有する変換残差ブロックを符号化するには適さない。なぜならば、大サイズを有する変換残差ブロックに対して、
図14Aないし
図14Cを参照して説明したような関連技術によって、変換残差ブロック内のあらゆる変換係数をスキャニングして符号化する場合、有効性マップに対応する二進ストリングの長さが増大し、符号化効率が低下しうるためである。
【0174】
従って、本発明の一実施形態による残差ブロックの符号化方法及びその装置は、変換残差ブロックを所定周波数帯域単位に分割し、分割された周波数帯域単位ごとに、0ではない有効変換係数が存在するか否かを示す周波数帯域単位別有効係数フラグを符号化する一方、周波数帯域単位別有効係数フラグが1の値を有する周波数帯域についてのみ有効変換係数情報、すなわち、有効性マップ及び有効係数のレベル情報を符号化することによって、さらに効率的な変換残差ブロックの符号化を可能にする。
【0175】
図15は、本発明の一実施形態による残差ブロックの符号化装置1500の構成を示したブロック図である。
図15の残差ブロック符号化装置1500は、
図4のエントロピ符号化部450に対応するか、あるいは内部に含まれもする。
【0176】
図15を参照すれば、残差ブロック符号化装置1500は、周波数帯域分割部1510、有効係数フラグ生成部1520及び有効係数符号化部1530を含む。
【0177】
周波数帯域分割部1510は、変換残差ブロックを所定周波数帯域単位に分割する。前述の
図14Aを再び参照すれば、変換残差ブロック1410は、左上側に位置した変換係数であるほど、低周波数成分の変換係数に該当し、右下側に行くほど、高周波数成分の変換係数に該当する。一般的に、変換残差ブロック1410の変換係数は、低周波数成分側に集まっており、高周波数成分の変換係数は、0である値が多い。すなわち、高周波数成分の変換係数のうち、0ではない値を有する有効変換係数は、まれに(sparse)存在する。特に、本発明の一実施形態による映像符号化装置400のように、従来4x4,8x8サイズの変換単位より大サイズを有する16x16、32x32、64x64及びそれ以上の大きさの変換単位で周波数変換を行い、生成された変換残差の場合は、高周波数成分の有効変換係数の分布は、さらにまれになる。従って、周波数帯域分割部1510は、かような変換残差ブロック内に存在する変換係数の周波数帯域による分布特性を考慮し、変換残差ブロックを、所定周波数帯域単位に分割する。
【0178】
図16Aないし
図16Jは、本発明によって、変換残差ブロックを所定周波数帯域単位に分割する実施形態を示した図である。
【0179】
図16Aを参照すれば、周波数帯域分割部1510は、低周波数帯域から水平周波数H1及び垂直周波数V1まで、所定周波数間隔で変換残差ブロックを分割し、周波数帯域単位1611ないし1614を生成する。
図16Aでは、周波数帯域単位1611ないし1614の横辺と縦辺とが同じ長さを有する場合を図示したが、これに限定されるものではなく、横辺と縦辺との長さは、互いに異なるように設定されてもよい。もし水平周波数H1から最大水平周波数までの残った周波数帯域の長さが、周波数帯域単位1611ないし1614の横辺の長さに該当する周波数間隔より小さい場合、または垂直周波数V1から最大垂直周波数までの残った周波数帯域の長さが、周波数帯域単位1611ないし1614の縦辺の長さに該当する周波数間隔より小さい場合には、周波数帯域分割部1510は、それ以上変換残差ブロックを分割せずに、高周波数帯域成分に該当する1つの周波数帯域単位1615を生成する。一般的に、有効変換係数は、低周波数成分に該当する周波数帯域単位1611ないし1614に集中的に分布し、高周波数成分の有効変換係数の分布は、希薄である。従って、所定周波数間隔で変換残差ブロックを分割することによって生成された周波数帯域単位1611ないし1614以外の残った高周波数帯域成分全体を、1つの周波数帯域単位1615に生成しても、周波数帯域単位1615内の変換係数を符号化するときのオーバーヘッドは大きく増加しない。
【0180】
また、
図16Bに図示されているように、周波数帯域分割部1510は、前述の
図16Aと同様に、低周波数帯域から水平周波数H2及び垂直周波数V2までの変換残差ブロック1620を分割し、周波数帯域単位1621ないし1624を生成し、残りの高周波数帯域成分の変換残差ブロックを、水平周波数H2及び垂直周波数V2を基準に分割し、周波数帯域単位1625,1626,1627を生成することができる。
【0181】
また、
図16Cに図示されているように、周波数帯域分割部1510は、前述の
図16Aと同様に、低周波数帯域から水平周波数H3及び垂直周波数V3までの変換残差ブロック1630を分割し、周波数帯域単位1631ないし1634を生成し、残りの高周波数帯域成分の変換残差ブロックを、垂直周波数V3を基準に二分割することにより、高周波数成分の周波数帯域単位1635及び1636を生成することができる。
【0182】
また、
図16Dに図示されているように、周波数帯域分割部1510は、前述の
図16Aと同様に、低周波数帯域から水平周波数H4及び垂直周波数V4までの変換残差ブロック1640を分割し、周波数帯域単位1641ないし1644を生成し、残りの高周波数帯域成分の変換残差ブロックを、水平周波数H4を基準に二分割することにより、高周波数成分の周波数帯域単位1645及び1646を生成することができる。
【0183】
前述のように、有効変換係数の分布は、低周波数帯域に集中し、高周波数帯域に行くほど希薄になる。従って、かような有効変換係数の分布特性を考慮し、
図16Eに図示されているように、周波数帯域分割部1510は、低周波数帯域の分割された単位サイズが、高周波数帯域の分割された単位サイズに比べて小さくなるように、変換残差ブロック1650を分割する。言い換えれば、周波数帯域分割部1510は、低周波数帯域に集中的に分布する有効変換係数をさらに精密に符号化することができるように、低周波数帯域はさらに細密に分割し、高周波数帯域は、相対的に大きく分割する。例えば、
図16Eに図示されているように、周波数帯域分割部1510は、所定の水平周波数H5及び垂直周波数V5と、水平周波数H5の倍数より大きい値を有する水平周波数H6、及び垂直周波数V5の倍数より大きい値を有する垂直周波数V6を基準に、変換残差ブロック1650を分割することによって、周波数帯域分割単位1651,1652,1653,1654,1655,1656,1657を生成することができる。すなわち、周波数帯域分割単位1651,1652,1653,1654,1655,1656,1657の大きさをそれぞれA1651,A1652,A1653,A1654,A1655,A1656,A1657であるとすれば、A1651が最小サイズを有し、A1657が最大サイズを有するように分割する。
【0184】
また、
図16Fに図示されているように、周波数帯域分割部1510は、変換残差ブロック1660を同一サイズの周波数帯域単位1661に分割することができる。
【0185】
また、
図16Gに図示されているように、周波数帯域分割部1510は、変換残差ブロック1670を4等分し、4等分された周波数帯域単位のうち、最も小さい低周波数帯域単位1671をさらに4等分することにより、周波数帯域単位を生成することができる。周波数帯域分割部1510は、低周波数帯域単位1671を4等分した周波数帯域単位のうち、最も小さい低周波数帯域単位1672をさらに4等分することができる。かような分割過程は、4等分された周波数帯域単位の大きさが所定の大きさ以下になるまで反復される。
【0186】
また、
図16Hに図示されているように、周波数帯域分割部1510は、低周波数から水平周波数H7及び垂直周波数V7までの低周波数成分の周波数帯域単位1681を生成し、変換残差ブロック1680の残りの高周波数成分を、対角線で分離し、周波数帯域単位1682,1683を生成することができる。
【0187】
また、
図16I及び
図16Jに図示されているように、周波数帯域分割部1510は、所定値を有する水平周波数及び垂直周波数を連結し、変換残差ブロック1690,1695を分割することができる。
図16Iの場合は、変換残差ブロック1690について、同じ周波数間隔を有する水平周波数及び垂直周波数を連結した場合を図示した場合であり、
図16Jの場合は、高周波数側に行くほど、周波数間隔が増大するように、すなわち、a1<a2<a3<a4及びb1<b2<b3<b4の関係を満足するa1及びb1、a2及びb2、a3及びb3、a4及びとb4を連結し、変換残差ブロック1695を分割した場合である。
【0188】
また、周波数帯域分割部1510は、
図16Aないし
図16Jに図示されているように、あらかじめ設定された分割形態を利用する代わりに、変換残差ブロックを構成する有効変換係数の分布特性、または各周波数帯域ごとに存在する有効変換係数の個数を利用し、変換残差ブロックの映像特性を判断し、判断された変換残差ブロックの映像特性を利用し、各周波数帯域別に変換残差ブロックを分割する周波数単位の大きさを決定することができる。例えば、変換残差ブロック内の有効変換係数が、水平周波数H8及び垂直周波数V8より小さい周波数帯域内にだけ存在し、水平周波数H8及び垂直周波数V8より大きい周波数帯域内には、有効変換係数が存在しないと仮定すれば、周波数帯域分割部1510は、低周波数帯域から水平周波数H8及び垂直周波数V8までの変換残差ブロック全体を1つの周波数帯域単位に設定するか、あるいは同一大きさの周波数帯域単位に分割し、残りの水平周波数H8及び垂直周波数V8より大きい周波数帯域を、1つの周波数帯域単位に設定してもよい。
【0189】
前述の
図16Aないし
図16Jに図示された変換残差ブロックを、周波数帯域単位に分割する実施形態に限定されるものではなく、本発明が属する技術分野で当業者であるならば、多様な形態で変換残差ブロックを分割することができるということを、本明細書に記載された内容を介して理解することができるであろう。
【0190】
一方、周波数帯域分割部1510で、変換残差ブロックを分割する形態は、符号化側及び復号化側で同一に設定するか、あるいは、
図16Aないし
図16Jに図示されているような多様な分割形態ごとに、所定のインデックスを付与した後、符号化側での変換残差ブロックの符号化時に利用された分割情報に係わる分割インデックスを、符号化されたビットストリームに付加することができる。例えば、分割インデックス(div_index)0〜9までの整数値が、それぞれ
図16Aないし
図16Jに図示された各分割形態を示すと仮定し、現在変換残差ブロックの符号化時に利用された分割形態が、
図16Fに図示されているようなdiv_index=5の値を有する場合であるならば、かような分割インデックス情報を、現在変換残差ブロックの符号化情報に付加することができる。
【0191】
再び
図15を参照すれば、周波数帯域分割部1510によって、変換残差ブロックを所定周波数帯域単位に分割した後、有効係数フラグ生成部1520は、各周波数帯域単位ごとに有効変換係数が存在するか否かを示す有効係数フラグを生成する。このとき、有効係数フラグ生成部1520は、最も小さい低周波数帯域単位については、別途に有効係数フラグを生成しないことが望ましい。例えば、
図16Aに図示されているように、変換残差1610を分割した場合、有効係数フラグ生成部1520は、最も小さい低周波数帯域単位1611を除外した残りの周波数帯域単位1612,1613,1614,1615ごとに有効変換係数が存在するか否かを示す有効係数フラグを生成する。周波数帯域単位1612,1613,1614,1615ごとに、有効係数フラグをそれぞれCoeff_exist_1612、Coeff_exist_1613、Coeff_exist_1614、Coeff_exist_1615とし、周波数帯域単位1612,1613,1614,1615において、周波数帯域単位1612,1613にだけ有効係数が存在すると仮定すれば、有効係数フラグ生成部1520は、Coeff_exist_1612=1、Coeff_exist_1613=1、Coeff_exist_1614=0、Coeff_exist_1615=0のように、各周波数帯域単位の有効係数フラグを生成する。前述のように、最も小さい低周波数帯域単位1611の場合、一般的に、有効変換係数が存在する可能性が非常に高いために、最も小さい低周波数帯域単位1611については、別途に有効変換係数の存在を示す有効係数フラグを生成しないことが望ましい。また、最も小さい低周波数帯域単位1611に有効変換係数の存在を示す有効係数フラグを別途に生成せずに、従来残差ブロック内に有効変換係数が存在するか否かを示すcoded_block_flagを利用し、最も小さい低周波数帯域単位1611での有効変換係数の存在いかんを示すようにすることができる。前述の有効係数フラグ生成過程は、
図16Aに図示された分割形態に限定されるものではなく、
図16Bないし
図16Jに図示された他の分割形態にも同一に適用されてもよい。
【0192】
一方、変換過程及び逆変換過程は、各周波数帯域単位で、互いに異なる変換及び逆変換方式を利用して独立して行われる。また、変換過程及び逆変換過程は、ただ有効係数フラグが1の値を有する周波数帯域単位についてのみ行われ、有効係数フラグが0の値を有する周波数帯域単位については、スキップされる。
【0193】
再び
図15を参照すれば、有効係数符号化部1530は、有効係数フラグ生成部1520によって生成された有効係数フラグが1の値を有する、すなわち、有効変換係数が存在する周波数帯域単位内に存在する有効変換係数の位置を示す有効性マップ及び有効変換係数のレベル情報を符号化する。
【0194】
図17A及び
図17Bは、本発明の一実施形態による有効変換係数の符号化過程について説明するための参照図である。
図17A及び
図17Bでは、変換残差ブロックを4等分し、低周波数帯域をさらに4等分して周波数帯域単位を生成する前述の
図16Eに対応する分割形態を例示しているが、これに限定されるものではなく、前述の
図16Aないし
図16Jに図示された他の分割形態の周波数帯域単位にも、以下説明する有効変換係数の符号化過程は、同一に適用される。
【0195】
有効係数符号化部1530は、変換残差ブロック全体をスキャニングして有効変換係数を符号化したり、各周波数帯域単位ごとに、独立してスキャニングを行い周波数帯域単位で有効変換係数を符号化することができる。具体的には、
図17Aを参照すれば、有効係数符号化部1530は、変換残差ブロック1710全体を所定のスキャニング順序、例えば、図示されているように、ラスタースキャニング順序によってスキャニングしつつ、変換残差ブロック1710内に存在する有効変換係数の位置を示す有効性マップ及び各有効変換係数の大きさ並びに符号情報を符号化することができる。その場合、有効係数フラグが0の値を有する周波数帯域単位、すなわち、有効変換係数が存在しない周波数帯域単位のスキャニング過程は、スキップされる。
【0196】
また、
図17Bを参照すれば、有効係数符号化部1530は、周波数帯域分割部1510で分割された変換残差ブロック1720の分割形態によって、各周波数帯域単位ごとに、有効性マップ及び有効変換係数のレベル情報を符号化することができる。
【0197】
図18A及び
図18Bは、本発明の一実施形態による残差ブロックの符号化過程についてさらに具体的に説明するための参照図である。
図18A及び
図18Bで、Χで表示された変換係数は、有効変換係数であり、何の表示のない部分は、0の値を有する変換係数であると仮定する。
【0198】
図18Aを参照すれば、周波数帯域分割部1510は、
図16Aないし
図16Jに図示されているような分割形態のうち1つの分割形態によって、変換残差ブロック1810を分割する。
図18Aでは、
図16Eに対応する分割形態を例示したが、これに限定されるものではなく、多様な分割形態にも、以下説明する変換残差ブロックの符号化過程が適用されるのである。有効係数フラグ生成部1520は、有効変換係数が存在する周波数帯域単位1811,1812,1813の有効係数フラグをそれぞれ1に設定し、残りの有効変換係数が存在しない周波数帯域単位1814,1815,1816,1817の有効係数フラグをそれぞれ0に設定する。有効係数符号化部1530は、変換残差ブロック1810全体をスキャニングしつつ、有効変換係数の位置を示す有効性マップ及び各有効変換係数のレベル情報を符号化する。前述のように、有効性マップは、各スキャン・インデックスによる変換係数が有効変換係数であるか、あるいは0であるかを示す。有効変換係数のレベル情報は、有効変換係数の符号及び絶対値情報を含む。例えば、有効変換係数が存在する周波数帯域単位1811,1812,1813の有効性マップは、
図18Aに図示されているようなラスタースキャニング順序によってスキャニングされるとき、「1000100010101110100100100010001」のような二進ストリング値を有する。
【0199】
また、
図18Aに図示されているように、変換残差ブロック1810全体をスキャニングしつつ、有効変換係数の情報を符号化する場合、有効変換係数が最後の有効変換係数であるか否かを示すEOB(End−Of−Block)フラグは、全体変換残差ブロック1810全体に対して設定されるか、あるいは各周波数帯域単位で設定される。全体変換残差1810に対してEOBフラグを設定する場合、
図18Aに図示された変換係数において、スキャニング順序上、最後の有効変換係数である、図面符号1802に対応する変換係数のみがEOBフラグが1の値を有する。すなわち、前述のように、
図18Aによる有効性マップは、「1000100010101110100100100010001」のような値を有するが、かような有効性マップに対応するEOBフラグは、「1000100010101110100100100010001」に含まれた全12個の有効変換係数において、最後の有効変換係数のみに1の値が設定されるので、「000000000001」のような値を有する。すなわち、
図18Aの有効性マップに対応するEOBフラグを表現するために、全12ビットが必要である。
【0200】
本発明の他の実施形態によれば、EOBフラグを表現するために必要なビット数を減少させるために、有効係数符号化部1530は、各周波数帯域単位別に、最後の有効変換係数が存在するか否かを示すフラグ(Tlast)を定義し、各周波数帯域単位別に最後の有効変換係数が存在する場合は、Tlastを1に、最後の有効変換係数が存在しない場合は、Tlastを0に設定した後、Tlastが1である周波数帯域単位についてのみEOBフラグを設定することによって、全体変換残差ブロック内で、有効変換係数の位置と、最後の有効変換係数とを識別するために必要なビット数を減少させることができる。具体的には、
図18Aを参照すれば、有効係数符号化部1530は、有効変換係数が存在する周波数帯域単位1811,1812,1813それぞれについて、最後の有効変換係数が存在するか否かを確認し、最後の有効変換係数が存在する周波数帯域単位1812には、Tlast値を1に設定し、残りの周波数帯域単位1811,1813には、Tlast値を0に設定する。初めてスキャニングされる変換係数の順序を基準に、Tlastフラグの各ビットが、各周波数帯域単位1811,1812,1813に最後の有効変換係数が存在するか否かを示すと仮定すれば、TlastのMSB(most significant bit)は、最も低い周波数帯域単位に、最後の有効変換係数が存在するか否かを示し、LSB(least significant bit)は、周波数帯域単位1812に、最後の有効変換係数が存在するか否かを示す。すなわち、Tlastは、周波数帯域単位1811について「0」、周波数帯域単位1813について「0」及び周波数帯域単位(1812)について「1」の値を有するので、全体的に「001」のビット値が設定される。このとき一般的に、変換残差ブロック内で、有効変換係数は、最も低い周波数帯域1811で終わる場合が多いために、最も低い周波数帯域1811について、別途のTlast値を割り当てない。すなわち、スキャニング順序によってスキャニングされる周波数帯域単位のうち、最も低い周波数帯域1811を除き、残りの周波数帯域1812,1813についてのみ、Tlast値が設定される。この場合、Tlastフラグで、「01」の2ビット値が設定される。「01」のMSBである「0」は、周波数帯域単位1813に全体変換残差ブロックの最後の有効変換係数が存在しないということを示し、「01」のLSBである「1」は、周波数帯域単位1812に全体変換残差ブロックの最後の有効変換係数が存在するということを示す。もし全体変換残差ブロックの最後の有効変換係数が、最も低い周波数帯域単位1811に存在する場合、Tlast値は、「00」の値を有するので、このように、Tlastのあらゆるビットが0である場合には、最も低い周波数帯域単位1811に、全体変換残差ブロックの最後の変換係数が存在するということを識別することができる。
【0201】
次に、有効係数符号化部1530は、Tlastが1である周波数帯域単位、すなわち、全体変換残差ブロックの最後の有効変換係数が存在する周波数帯域単位についてのみEOBフラグを設定する。
図18Aを参照すれば、有効係数符号化部1530は、Tlastが1である周波数帯域単位1812に存在する各有効変換係数についてのみEOBフラグを設定する。周波数帯域単位1812には、全4個の有効変換係数が存在するので、この場合、EOBフラグは、「0001」の4ビットの値を有する。本発明の他の実施形態によれば、Tlast値として2〜3ビット値が設定され、EOBフラグとして4ビット値が設定され、全体的に6〜7ビットの値が全体変換残差ブロック内で、有効変換係数の位置と、最後の有効変換係数とを識別するために使われる。従って、前述の本発明の一実施形態によって、「000000000001」のように、全12ビットを利用してEOBフラグを設定する場合に比べて、本発明の他の実施形態によれば、5〜6ビットを節約することができる。
【0202】
本発明のさらに他の実施形態として、各周波数帯域単位ごとにEOBフラグを設定する場合であるならば、周波数帯域単位1811内の図面符号1801に該当する変換係数、周波数帯域単位1812内の図面符号1802に該当する変換係数、周波数帯域単位1813内の図面符号1803に該当する変換係数のEOBフラグが1に設定される。有効変換係数が存在しない周波数帯域単位1814,1815,1816,1817については、EOBフラグが設定される必要がない。このように、有効変換係数が存在する各周波数帯域単位ごとにEOBフラグを設定する場合、所定周波数帯域単位での有効変換係数のスキャニングが完了した後、すぐに次の周波数帯域単位の有効変換係数のスキャニングが開始される。例えば、周波数帯域単位1813の最後の有効変換係数1803のスキャニングが完了した後、周波数帯域単位1802内に存在する変換係数のスキャニングが開始される。
図18Bは、各周波数帯域単位ごとに独立して、有効変換係数情報を符号化する場合を図示したものである。有効係数符号化部1530は、変換残差ブロック1820の各周波数帯域単位を独立してスキャニングしつつ、有効変換係数の位置を示す有効性マップ及び各有効変換係数のレベル情報を符号化する。例えば、周波数帯域単位1821の有効性マップは、
図18Bに図示されているようなラスタースキャニング順序によってスキャニングされるとき、「1000100010011」のような二進ストリング値を有する。また、有効係数符号化部1530は、周波数帯域単位1821内の有効変換係数のうち、最後の有効変換係数に該当する図面符号1831の有効変換係数のEOBフラグを1に設定する。同様に、有効係数符号化部1530は、周波数帯域単位1822の有効性マップとして、「101010001」のような二進ストリング値を生成する。また、有効係数符号化部1530は、周波数帯域単位1822内の有効変換係数のうち、図面符号1832の有効変換係数のEOBフラグを1に設定する。同様に、有効係数符号化部1530は、周波数帯域単位1823の有効性マップとして、「11001」のような二進ストリング値を生成し、図面符号1833の有効変換係数のEOBフラグを1に設定する。
【0203】
一方、有効係数符号化部1530は、各周波数帯域単位の最後の有効変換係数1831,1832,1833が、当該周波数帯域単位の最後の有効変換係数であることを示すEOBフラグ以外に、全体変換残差ブロック1820において、最後の有効変換係数であるか否か示すフラグ(End_Of_WholeBlock)を別途に符号化することができる。
図18Bの場合、図面符号1821,1822,1823,1824,1825,1826,1827の順序に、周波数帯域単位が独立してスキャニングされるとするとき、有効変換係数1833は、周波数帯域単位1823の最後の有効変換係数であると同時に、全体変換残差ブロック1820の最後の有効変換係数となる。従って、有効変換係数1833のEOBフラグ及びEnd_Of_WholeBlockフラグは、いずれも1の値を有する。周波数帯域単位1821,1822の最後の有効変換係数1831,1832は、EOBフラグは、1の値を有するが、End_Of_WholeBlockフラグは、0の値を有する。
【0204】
このように、各周波数帯域単位別に、最後の有効変換係数について、EOBフラグ及びEnd_Of_WholeBlockフラグを設定する場合、復号化時に、まず前述の有効係数フラグを利用して、当該周波数帯域単位に有効変換係数が存在するか否かを判断することによって、有効係数フラグが0である周波数帯域単位のスキャニングは、スキップされる。また、有効係数フラグが1である周波数帯域単位、すなわち、有効変換係数が存在する周波数帯域単位内の変換係数をスキャニングするとき、EOBフラグが1である変換係数までスキャニングされれば、次の周波数帯域単位のスキャニングを開始することができる。もしEOBフラグが1でありつつ、End_Of_WholeBlockフラグも1である有効変換係数がスキャニングされれば、全体変換残差ブロックの有効変換係数のスキャニングが完了したものであるので、当該変換残差ブロックのスキャニング過程を終了する。
【0205】
図19A及び
図19Bは、有効係数符号化部1530によって生成された変換残差ブロックの符号化情報の実施形態を示した参照図である。
【0206】
図19Aを参照すれば、有効係数符号化部1530は、各周波数帯域別に生成された有効性マップ及び有効係数フラグ情報を順次に符号化することができる。第1周波数帯域を、変換残差ブロックの最も小さい周波数帯域であるとするとき、図示されているように、第1周波数帯域については、第1周波数帯域の有効性マップ1911情報だけ符号化され、第1周波数帯域に有効変換係数が存在するか否かを示す第1周波数帯域フラグの符号化は、別途に行われない。また、
図19Bを参照すれば、各周波数帯域等の有効係数フラグ1921をまず符号化し、各周波数帯域の有効性マップ1925は、以後に符号化することもできる。
【0207】
図20は、本発明の一実施形態による残差ブロックの符号化方法を示したフローチャートである。
図20を参照すれば、段階2010で、イントラ予測部410または動き補償部425によるインター予測またはイントラ予測を介して、予測ブロックを生成する。
【0208】
段階2020で、減算部によって、予測ブロックと現在ブロックとの差値である残差ブロックを生成する。
【0209】
段階2030で、周波数変換部430は、残差ブロックを周波数領域に変換し、変換残差ブロックを生成する。一例として、DCT(discrete cosine transform)を介して、残差ブロックを周波数領域に変換することができる。
【0210】
段階2040で、周波数帯域分割部1510は、変換残差ブロックを所定周波数帯域単位に分割する。前述のように、周波数帯域分割部1510は、
図16Aないし
図16Jに例示されたような多様な形態で変換残差ブロックを分割することができる。具体的には、周波数帯域分割部1510は、低周波数帯域の分割された単位サイズが、高周波数帯域の分割された単位サイズより小さくなるように変換残差ブロックを分割したり、あるいは変換残差ブロックを4等分し、4等分された変換残差ブロックのうち、最も低い周波数帯域をさらに4等分する過程を反復することによって、変換残差ブロックを分割したり、あるいは同一サイズの周波数帯域単位で変換残差ブロックを分割したり、同じ値を有する水平周波数及び垂直周波数を連結して変換残差ブロックを分割したり、あるいは変換残差ブロックを構成する変換係数を利用して判断された変換残差ブロックの映像特性を利用し、変換残差ブロックの周波数帯域別に分割する大きさを決定し、決定された周波数帯域別分割サイズによって変換残差ブロックを分割することができる。
【0211】
段階2050で、有効係数フラグ生成部1520は、分割された周波数帯域単位ごとに、0ではない有効変換係数が存在するか否かを示す周波数帯域単位別有効係数フラグを生成する。かような有効係数フラグは、変換残差ブロックの分割された周波数帯域単位のうち、最も小さい周波数帯域単位については、別途に生成されないことが望ましい。また、有効係数符号化部1530は、有効係数フラグが0ではない、すなわち、有効変換係数が含まれた周波数帯域単位について、
図17A、
図17B、
図18A及び
図18Bを参照して説明したように、全体変換残差ブロックを所定のスキャニング順序によってスキャニングしたり、あるいは各周波数帯域単位別に独立してスキャニングを行いつつ、有効変換係数の位置を示す有効性マップ及び有効変換係数のレベル情報を符号化する。
【0212】
前述の本発明の一実施形態による残差ブロックの符号化方法及びその装置によれば、16x16以上の大サイズを有する変換残差ブロックを周波数帯域単位に分割して処理することによって、変換残差ブロック内の有効変換係数の分布特性によって、さらに効率的に有効変換係数情報を符号化することができる。すなわち、本発明によれば、大サイズの変換残差ブロックを周波数帯域単位に分割し、分割された周波数帯域単位別に有効変換係数の存在いかんを示す有効係数フラグを生成することによって、変換残差ブロック内に有効変換係数が存在しない周波数帯域のスキャニング過程をスキップさせ、また有効変換係数の符号化に必要なビット発生量を減少させることができる。
【0213】
図21は、本発明の一実施形態による残差ブロックの復号化装置を示したブロック図である。本発明の一実施形態による残差ブロックの復号化装置2100は、
図5のエントロピ復号化部520に対応するか、あるいは内部に含まれる。
【0214】
図21を参照すれば、残差ブロックの復号化装置2100は、周波数帯域分割部2110、有効周波数帯域判断部2120及び有効係数復号化部2130を含む。
【0215】
周波数帯域分割部2110は、変換残差ブロックを所定周波数帯域単位に分割する。具体的には、周波数帯域分割部2110は、前述の
図16Aないし
図16Jに例示されたように、低周波数帯域の分割された単位サイズが、高周波数帯域の分割された単位サイズより小さくなるように、変換残差ブロックを分割したり、あるいは変換残差ブロックを4等分し、4等分された変換残差ブロックのうち、最も低い周波数帯域をさらに4等分する過程を反復することによって、変換残差ブロックを分割したり、あるいは同一サイズの周波数帯域単位で変換残差ブロックを分割したり、あるいは同じ値を有する水平周波数及び垂直周波数を連結して変換残差ブロックを分割したり、あるいは変換残差ブロックを構成する変換係数を利用して判断された変換残差ブロックの映像特性を利用して、変換残差ブロックの周波数帯域別に分割する大きさを決定し、決定された周波数帯域別分割サイズによって変換残差ブロックを分割することができる。多様な分割形態のうち、いかなる形態で変換残差ブロックを分割するかは、あらかじめ符号化装置及び復号化装置で決定された形態によるか、あるいは多様な分割形態ごとに所定の分割インデックスを設定し、符号化時に、現在変換残差ブロックの分割に利用された分割インデックス情報をビットストリームに付加すれば、周波数帯域分割部2110で、ビットストリームに含まれた分割インデックス情報から、現在変換残差ブロックをいかなる形態に分割したかを決定することもできる。
【0216】
有効周波数帯域判断部2120は、ビットストリームから、変換残差ブロックを分割した周波数帯域単位別に、有効変換係数が存在するか否かを示す有効係数フラグを抽出する。かような有効係数フラグを利用し、有効周波数帯域判断部2120は、変換残差ブロックを分割した周波数帯域単位のうち、有効変換係数が存在する周波数帯域単位を判断することができる。例えば、符号化された変換残差ブロックが、前述の
図18Bのようであると仮定すれば、図面符号1821,1822,1823で表示された周波数帯域単位だけ有効係数フラグが1の値を有し、図面符号1824,1825,1826,1827で表示された周波数帯域単位は、有効係数フラグが0の値を有するので、有効周波数帯域判断部2120は、抽出された周波数帯域別有効係数フラグから、有効変換係数が存在する周波数帯域単位を判断される。
【0217】
有効係数復号化部2130は、有効周波数帯域判断部2120によって、有効変換係数が存在すると判断された周波数帯域単位内の有効変換係数を復号化する。具体的には、有効係数復号化部2130は、ビットストリームから、有効変換係数の位置を示す有効性マップ及び有効変換係数のレベル情報を抽出する。そして、有効係数復号化部2130は、前述の
図17A及び
図17Bに図示されているように、全体変換残差ブロックをスキャニングしたり、あるいは分割された周波数帯域単位ごとに独立した所定のスキャニング順序によって各周波数帯域単位をスキャニングしつつ抽出された有効性マップ情報を利用して、変換残差ブロック内の有効変換係数の位置を判断し、レベル情報を利用して有効変換係数の値を復元する。
【0218】
図22は、本発明の一実施形態による残差ブロックの復号化方法を示したフローチャートである。
【0219】
段階2210で、有効周波数帯域判断部2120は、符号化されたビットストリームから、現在ブロックの変換残差ブロックを分割した所定周波数帯域単位別に、有効変換係数が存在するか否かを示す有効係数フラグを抽出する。
【0220】
段階2220で、周波数帯域分割部2110は、変換残差ブロックを所定周波数帯域単位に分割する。周波数帯域分割部2110は、前述の
図16Aないし
図16Jに例示されたように、低周波数帯域の分割された単位サイズが、高周波数帯域の分割された単位サイズより小さくなるように変換残差ブロックを分割したり、あるいは変換残差ブロックを4等分し、4等分された変換残差ブロックのうち、最も低い周波数帯域をさらに4等分する過程を反復することによって変換残差ブロックを分割したり、あるいは同一サイズの周波数帯域単位で変換残差ブロックを分割したり、あるいは同じ値を有する水平周波数及び垂直周波数を連結して変換残差ブロックを分割したり、あるいは変換残差ブロックを構成する変換係数を利用して判断された変換残差ブロックの映像特性を利用して変換残差ブロックの周波数帯域別に分割する大きさを決定し、決定された周波数帯域別分割サイズによって変換残差ブロックを分割する。かような分割形態は、前述のように符号化側と同一に、あらかじめ決定された形態によるか、あるいはビットストリームに別途に付加された分割インデックス情報を利用して決定される。段階2210及び段階2220の遂行順序は、変更されてもよい。
【0221】
段階2230で、有効周波数帯域判断部2110は、抽出された有効係数フラグを利用し、分割された周波数帯域単位のうち、有効変換係数が存在する周波数帯域単位を判断する。有効係数復号化部2130は、有効係数が存在すると判断された周波数帯域単位に係わる有効性マップ及び有効変換係数のレベル情報を利用し、有効変換係数を復元する。
【0222】
本発明による映像の符号化、復号化方法はまた、コンピュータで読み取り可能な記録媒体に、コンピュータで読み取り可能なコードとして具現することが可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取り可能なデータが保存されるあらゆる種類の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ROM(read-only memory)、RAM(random-access memory)、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置などが含まれる。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散され、分散方式でコンピュータで読み取り可能なコードが保存されて実行される。
【0223】
以上、本発明についてその望ましい実施形態を中心に説明した。本発明が属する技術分野で当業者であるならば、本発明の本質的な特性から外れない範囲で変形された形態で具現されるということを理解することができるであろう。従って、開示された実施形態は、限定的な観点ではなく、説明的な観点から考慮されねばならない。本発明の範囲は、前述の説明ではなく、特許請求の範囲に示されており、それと同等な範囲内にあるあらゆる差異点は、本発明に含まれたものであると解釈されねばならない。