本発明の一実施形態によるビデオ復号化のためのSAO(sample adaptive offset)調整方法は、受信されたビットストリームのスライスヘッダから、現在スライスに係わるスライスSAOパラメータを獲得する段階と、前記スライスSAOパラメータのうちから、前記現在スライスのルマ成分のためのルマSAO使用情報、及びクロマ成分のためのクロマSAO使用情報を獲得する段階と、前記獲得されたルマSAO使用情報に基づいて、前記現在スライスのルマ成分についてSAO調整を行うか否かということを決定する段階と、前記獲得されたクロマSAO使用情報に基づいて、前記現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定する段階と、を含む。
一実施形態による前記SAO調整方法は、前記現在スライスの最大符号化単位のうちから、現在最大符号化単位(largest codin gunit)に係わる最大符号化単位SAOパラメータを獲得する段階と、前記最大符号化単位SAOパラメータのうちから、左側SAO併合情報を獲得する段階と、前記左側SAO併合情報に基づいて、前記現在最大符号化単位の上端に隣接する最大符号化単位のルマ成分、及び第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、前記現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定する段階と、を含んでもよい。
一実施形態によって、前記予測するか否かということを決定する段階は、前記左側SAO併合情報に基づいて、前記左側最大符号化単位の前記SAOパラメータを利用して、前記現在最大符号化単位の前記SAOパラメータを予測しないと決定される場合、前記最大符号化単位SAOパラメータのうちから、上端SAO併合情報を獲得する段階と、前記上端SAO併合情報に基づいて、前記現在最大符号化単位の上端に隣接する最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、前記現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定する段階と、を含んでもよい。
一実施形態による前記SAO調整方法は、前記最大符号化単位SAOパラメータのうちから、前記現在最大符号化単位のルマ成分のためのルマSAOタイプ情報、及びクロマ成分のためのクロマSAOタイプ情報を獲得する段階と、前記獲得されたルマSAOタイプ情報に基づいて、前記現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを決定する段階と、前記獲得されたクロマSAOタイプ情報に基づいて、前記現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定する段階と、をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記獲得されたルマSAOタイプ情報に基づいて、前記現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを決定する段階と、前記獲得されたクロマSAOタイプ情報に基づいて、前記現在最大符号化単位の第1クロマ成分及び第2クロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを同一に決定する段階と、をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記獲得されたSAOパラメータに基づいて、前記現在最大符号化単位の第1クロマ成分及び第2クロマ成分について同一のエッジ方向を決定する段階をさらに含んでもよい。
一実施形態によって、前記ルマSAOタイプ情報及び前記クロマSAOタイプ情報を獲得する段階は、前記ルマSAOタイプ情報のうち最初のコンテクストビンについてCABAC復号化を行い、前記現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを示す情報を獲得する段階と、前記ルマSAOタイプ情報のうち残りのコンテクストビンについて、バイパスモードで、CABAC復号化を行い、前記現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示す情報を獲得する段階と、前記クロマSAOタイプ情報のうち最初のコンテクストビンについてCABAC復号化を行い、前記現在最大符号化単位のクロマ成分についてSAO調整を行うか否かということを示す情報を獲得する段階と、前記クロマSAOタイプ情報のうち残りのコンテクストビンについて、バイパスモードで、CABAC復号化を行い、前記現在最大符号化単位のクロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示す情報を獲得する段階と、を含んでもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位の前記ルマ成分及び前記クロマ成分のための前記左側SAO併合情報及び上端SAO併合情報のために、同一のコンテクストモードを利用して、CABAC復号化を行う段階をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記最大符号化単位SAOパラメータのうちからオフセットのサイズ値(magnitude)情報を獲得するために、バイパスモードで、CABAC復号化を行う段階をさらに含んでもよい。
一実施形態によって、前記獲得されたオフセットのサイズ値情報は、ビデオのビットデプスに基づく範囲内の値であるオフセットサイズ値を示すことができる。前記ビットデプスが8ビットであるならば、前記オフセットサイズ値は、0より大きいか、あるいはそれと同じであり、7より小さいか、あるいはそれと同じ値であり、前記ビットデプスが10ビットであるならば、前記オフセットサイズ値は、0より大きいか、あるいはそれと同じであり、31より小さいか、あるいはそれと同じ値であってもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位について、前記バンドSAO調整を行うと決定された場合、前記獲得されたルマSAOクロマタイプ情報、及び前記獲得されたクロマSAOタイプ情報のうち少なくとも一つから、バンドの左側開始時点についての情報を獲得するために、固定ビットトレングスのビットについて、バイパスモードで、CABAC復号化を行う段階をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位について、前記バンドSAO調整を行うと決定された場合、前記最大符号化単位SAOパラメータから、前記SAO調整のためのオフセット値を獲得する段階と、前記獲得されたオフセット値が0ではない場合、前記最大符号化単位SAOパラメータから、前記オフセット値の符号情報をさらに獲得する段階をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記最大符号化単位SAOパラメータから、前記エッジタイプのSAO調整のためのオフセット値を獲得する段階と、前記決定されたエッジ方向に基づいて、前記オフセット値の符号を決定する段階と、をさらに含んでもよい。
本発明の一実施形態によるビデオ符号化のためのSAO調整方法は、現在スライスのルマ成分についてSAO調整を行うか否かということを決定する段階と、前記現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定する段階と、前記ルマ成分についてSAO調整を行うか否かということを示すルマSAO使用情報、並びに前記第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを示すクロマSAO使用情報を含む、現在スライスに係わるスライスSAOパラメータを生成する段階と、前記スライスSAOパラメータを含むスライスヘッダを出力する段階と、を含む。
一実施形態による前記SAO調整方法は、前記現在スライスの最大符号化単位のうち、現在最大符号化単位の左側に隣接する最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、前記現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定する段階と、前記予測いかんに基づいて、前記現在最大符号化単位のための左側SAO併合情報を生成する段階と、をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位の上端に隣接する最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、前記現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定する段階と、前記予測いかんに基づいて、上端SAO併合情報を生成する段階と、前記左側SAO併合情報、及び前記上端SAO併合情報のうち少なくとも一つを含む、前記現在最大符号化単位に係わる最大符号化単位SAOパラメータを生成する段階と、をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを決定する段階と、前記現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定する段階と、前記現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを示すルマSAOタイプ情報、並びに前記第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを示すクロマSAOタイプ情報を含む前記現在最大符号化単位に係わる最大符号化単位SAOパラメータを生成する段階と、をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを決定する段階と、前記現在最大符号化単位の第1クロマ成分及び第2クロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを同一に決定する段階と、前記ルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示すルマSAOタイプ情報、並びに前記第1クロマ成分及び第2クロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示すクロマSAOタイプ情報を生成する段階と、をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位の第1クロマ成分及び第2クロマ成分の同一のエッジ方向についての情報を生成する段階をさらに含んでもよい。
一実施形態による前記ルマSAOタイプ情報、及び前記クロマSAOタイプ情報を生成する段階は、前記ルマSAOタイプ情報のうち、前記現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを示す情報を示す最初のコンテクストビンについてCABAC符号化を行う段階と、前記ルマSAOタイプ情報のうち、前記現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示す情報を示す残りのコンテクストビンについて、バイパスモードで、CABAC符号化を行う段階と、を含んでもよい。
一実施形態による前記最大符号化単位SAOパラメータを生成する段階は、前記現在最大符号化単位に係わる最大符号化単位SAOパラメータのうち、前記左側SAO併合情報及び上端SAO併合情報について、同一のコンテクストモードを利用して、CABAC符号化を行う段階を含んでもよい。
一実施形態による前記SAO調整方法は、前記最大符号化単位SAOパラメータのうち、オフセットのサイズ値情報について、バイパスモードで、CABAC符号化を行う段階をさらに含んでもよい。
一実施形態による前記SAO調整方法は、前記現在最大符号化単位について、前記バンドSAO調整を行うと決定された場合、前記獲得されたルマSAOクロマタイプ情報、及び前記獲得されたクロマSAOタイプ情報のうち少なくとも一つにおいて、バンドの左側開始時点についての情報の固定ビットトレングスのビットについて、バイパスモードで、CABAC符号化を行う段階をさらに含んでもよい。
一実施形態による前記最大符号化単位SAOパラメータを生成する段階は、前記現在最大符号化単位について、前記バンドSAO調整を行うと決定された場合、前記バンドSAO調整のためのオフセット値を決定する段階と、前記決定されたオフセット値をさらに含む前記最大符号化単位SAOパラメータを生成する段階と、を含み、前記最大符号化単位SAOパラメータを生成する段階は、前記決定されたオフセット値が0ではない場合、前記オフセット値の符号を決定する段階と、前記オフセット値の符号情報をさらに含む前記最大符号化単位SAOパラメータを生成する段階と、をさらに含んでもよい。
本発明の一実施形態によるビデオ復号化装置は、受信されたビットストリームのスライスヘッダから、現在スライスに係わるスライスSAOパラメータを獲得し、前記スライスSAOパラメータのうちから、前記現在スライスのルマ成分のためのルマSAO使用情報、及びクロマ成分のためのクロマSAO使用情報を獲得するSAOパラメータ獲得部;前記獲得されたルマSAO使用情報に基づいて、前記現在スライスのルマ成分についてSAO調整を行うか否かということを決定し、前記獲得されたクロマSAO使用情報に基づいて、前記現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定するSAO決定部;及び前記受信されたビットストリームから獲得された前記現在スライスの符号化シンボルに対して復号化を行って復元された前記現在スライスのルマ成分、並びに前記第1クロマ成分及び第2クロマ成分について、それぞれ前記SAO決定部の決定によってSAO調整を行うSAO調整部;を含む。
本発明の一実施形態によるビデオ符号化装置は、ビデオの現在スライスに対して、予測、変換及び量子化を行い、量子化された変換係数に対して、逆量子化、逆変換及び動き補償を行う符号化部;現在スライスのルマ成分についてSAO調整を行うか否かということを決定し、前記現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定するSAO決定部;及び前記SAO決定部の決定によって、前記ルマ成分についてSAO調整を行うか否かということを示すルマSAO使用情報、並びに前記第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを示すクロマSAO使用情報を含む、現在スライスに係わるスライスSAOパラメータを生成し、前記スライスSAOパラメータを含むスライスヘッダを生成するSAOパラメータ符号化部;を含む。
本発明は、一実施形態によるSAO調整方法を遂行するためのプログラムが記録されたコンピューターで読み取り可能な記録媒体を含む。
以下、図1A及び図1Bないし図7Fを参照し、一実施形態による、ピクセル分類によるSAO調整を利用するビデオ符号化技法及びビデオ復号化技法について開示する。また、図8ないし図20を参照し、一実施形態による、ツリー構造の符号化単位に基づいた、ビデオ符号化技法及びビデオ復号化技法で、ピクセル分類によるSAO調整が利用される実施形態について開示する。以下、「映像」は、ビデオの静止映像や動画、すなわち、ビデオそのものを示すものである。
まず、図1A及び図1Bないし図7Fを参照し、一実施形態による、ピクセル分類によるSAO調整を利用するビデオ符号化技法及びビデオ復号化技法について開示する。また、図1A、図1B、図2A及び図2Bを参照して説明する一実施形態による、ビデオ符号化装置10及びビデオ復号化装置20は、原本ピクセルと復元ピクセルとの誤差を最小化するためにSAO調整を行う。一実施形態によるSAO調整によって、ビデオ符号化装置10は、映像ブロックごとに、ピクセルを既定ピクセルグループに分類し、各ピクセルを当該ピクセルグループに割り当て、同一のピクセルグループに含まれた原本ピクセルと復元ピクセルとの誤差の平均値を示すオフセット値を符号化する。
ビデオ符号化装置10と、ビデオ復号化装置20との間にサンプルがシグナリングされる。すなわち、ビデオ符号化装置10は、サンプルを符号化してビットストリーム形状で伝送し、ビデオ復号化装置20は、受信したビットストリームから、サンプルをパージングして復元することができる。一実施形態による、ビデオ符号化装置10とビデオ復号化装置20は、ピクセル分類を介して決定されたオフセットほど復元ピクセル値を調整し、原本ピクセルと復元ピクセルとの誤差を最小化するために、SAO調整のためのSAOパラメータをシグナリングする。ビデオ符号化装置10及びビデオ復号化装置20の間に、SAOパラメータとしてオフセット値が符号化されて伝送されて受信され、SAOパラメータから、オフセット値が復号化される。
従って、一実施形態によるビデオ復号化装置20は、受信されたビットストリームを復号化し、映像ブロックごとに復元ピクセルを生成し、ビットストリームからオフセット値を復元し、復元ピクセルを当該オフセットほど調整することにより、原本映像との誤差が最小化された復元映像を生成することができる。
以下、図1A及び図1Bを参照し、SAO調整を行うビデオ符号化装置10の動作について詳細に説明し、図2A及び図2Bを参照し、SAO調整を行うビデオ復号化装置20の動作について詳細に説明する。
図1A及び図1Bは、一実施形態による、ビデオ符号化装置10のブロック図と、ビデオ符号化装置のSAO調整方法のフローチャートと、を図示している。
一実施形態によるビデオ符号化装置10は、符号化部12、SAO決定部14及びSAOパラメータ符号化部16を含む。
一実施形態によるビデオ符号化装置10は、ビデオのスライスのような映像を入力され、それぞれの映像をブロックに区画してブロック別に符号化する。ブロックのタイプは、正方形または長方形であり、任意の幾何学的形態であってもよい。一定サイズのデータ単位に制限されるものではない。一実施形態によるブロックは、ツリー構造による符号化単位のうち、最大符号化単位(LCU:largest coding unit)、符号化単位(CU:coding unit)などであってもよい。ツリー構造による符号化単位に基づいたビデオ符号化/復号化方式は、図8ないし図20を参照して後述する。
一実施形態によるビデオ符号化装置10は、それぞれの入力映像を最大符号化単位に区画し、最大符号化単位ごとに、サンプルに対して、予測、変換、エントロピー符号化を行い、生成された結果データをビットストリーム形態で出力することができる。最大符号化単位のサンプルは、最大符号化単位に含まれたピクセルのピクセル値データであってもよい。
一実施形態による符号化部12は、ピクチャーの最大符号化単位ごとに、符号化を個別的に行うことができる。一実施形態による符号化部12は、現在最大符号化単位から分割されたツリー構造の符号化単位を基に、現在最大符号化単位を符号化することができる。
一実施形態による符号化部12は、現在最大符号化単位の符号化のために、現在符号化単位に含まれたツリー構造の符号化単位ごとに、イントラ予測、インター予測、変換、量子化を行ってサンプルを符号化することができる。
一実施形態による符号化部12は、符号化されたサンプルに対して、さらにツリー構造の符号化単位ごとに、逆量子化、逆変換、インター予測またはイントラ補償を介して復号化し、現在最大符号化単位に含まれたサンプルを復元することができる。
一実施形態によるビデオ符号化装置10は、現在最大符号化単位が符号化される前の原本ピクセルと、さらに復号化した後の復元復元ピクセルとの誤差を最小化するために、原本ピクセルと復元ピクセルとの差値を示すオフセット値を決定することができる。
一実施形態による符号化部12は、ビデオの現在スライスに対して、予測、変換及び量子化を行い、量子化された変換係数に対して、逆量子化、逆変換及び動き補償を行うことができる。符号化部12は、まず、ビデオの現在スライスの符号化単位ごとに、予測、変換及び量子化を行うことができる。符号化部12は、インター予測のための参照映像を生成するために、量子化された変換係数に対して、逆量子化、逆変換及び動き補償を行って復元映像を生成することができる。次の映像のインター予測のために、以前映像の復元映像が参照される。
一実施形態によるSAO決定部14は、カラー成分別にSAO調整を行う。例えば、YCrCbカラー映像については、ルマ成分(Y成分)、並びに第1クロマ成分及び第2クロマ成分(Cr,Cb成分)別にSAO調整が遂行される。
一実施形態によるSAO決定部14は、現在スライスのルマ成分についてSAO調整を行うか否かということを決定することができる。一実施形態によるSAO決定部14は、現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを決定するが、同一に決定することができる。すなわち、第1クロマカラー成分についてSAO調整が行われるならば、第2クロマ成分についてもSAO調整が行われ、第1クロマカラー成分についてSAO調整が行われないならば、第2クロマ成分についてもSAO調整が行われない。
一実施形態によるSAOパラメータ符号化部16は、現在スライスに係わるスライスSAOパラメータを生成し、現在スライスに係わるスライスヘッダにSAOパラメータを含める。
一実施形態によるSAOパラメータ符号化部16は、SAO決定部14の決定によって、ルマ成分についてSAO調整を行うか否かということを示すルマSAO使用情報を生成することができる。また、一実施形態によるSAOパラメータ符号化部16は、AO調整決定部14の決定によって、第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを示すクロマSAO使用情報を生成することができる。
一実施形態によるSAOパラメータ符号化部16は、ルマSAO使用情報及びクロマSAO使用情報をスライスSAOパラメータに含める。
一実施形態によるSAO決定部14は、最大符号化単位別にオフセット値を決定することができる。オフセット値、SAOタイプ及びSAOクラスを含むSAOパラメータも、最大符号化単位別に決定することができる。
一実施形態によるSAO決定部14は、現在最大符号化単位のピクセル値分類方式によって、SAOタイプを決定することができる。一実施形態によるSAOタイプは、エッジタイプまたはバンドタイプによって決定される。現在ブロックのピクセル値分類方式によって、現在ブロックをエッジタイプによってピクセルを分類するか、あるいはバンド形態によってピクセルを分類することが適するかということが決定される。
一実施形態によるSAOタイプがエッジタイプである場合、現在最大符号化単位の復元ピクセルが隣接ピクセルと形成するエッジの方向及び形態によって、復元ピクセルと原本ピクセルとのオフセットが決定される。
一実施形態によるSAOタイプがバンドタイプである場合、現在最大符号化単位の復元ピクセルのピクセル値の全範囲を分割した多数のバンドのうち、各バンドに属する復元ピクセルと原本ピクセルとのオフセットが決定される。場合によってバンドは、ピクセル値の全範囲を均等な間隔に分割するか、あるいは非均等間隔に分割することもできる。
従って、一実施形態によるSAO決定部14は、現在最大符号化単位のピクセル値の空間的特性に基づいて、エッジタイプであるか、あるいはバンドタイプであるかということを示す現在最大符号化単位のSAOタイプを決定することができる。
一実施形態によるSAO決定部14は、現在最大符号化単位のSAOタイプによって、復元ピクセルごとに、SAOクラスを決定することができる。一実施形態によるSAOクラスは、エッジクラスまたはバンドクラスとして決定される。
エッジタイプの場合、一実施形態によるエッジクラスは、復元ピクセルが隣接ピクセルと形成するエッジの方向を示すことができる。一実施形態によるエッジクラスは、0゜、90゜、45゜または135゜のエッジ方向を示すことができる。
一実施形態によるSAO決定部14は、SAOタイプがエッジタイプである場合、現在最大符号化単位の復元ピクセルごとに、エッジクラスを決定することができる。
バンドタイプの場合、一実施形態によるバンドクラスは、現在最大符号化単位のピクセル値の全範囲が所定個数の連続されるピクセル値区間に分割されるとき、各ピクセル値区間をバンドと称し、復元ピクセルのピクセル値が属するバンドを示すバンド位置を示すことができる。
例えば、一実施形態によるピクセル値が8ビットのサンプルである場合、ピクセル値の全範囲は、0ないし255であり、ピクセル値は、総32個のバンドに分割される。その場合、総32個のバンドのうち、復元ピクセルのピクセル値が属する所定個数のバンドが決定される。一実施形態によるバンドクラスは、連続する所定個数のバンドの開始位置(左側開始地点)を示し、最も先立つバンドの位置を、0ないし31のバンドインデックスでもって表現することもできる。
エッジタイプの場合、現在最大符号化単位の復元ピクセルは、隣接ピクセルと形成するエッジ形態によって、所定個数のカテゴリーに分類される。例えば、凹状エッジの局部最低点(local valley)、凹状エッジの曲線コーナー、凸状エッジの曲線コーナー、凸状エッジの局部最高点(local peak)の4種エッジ形態によって、復元ピクセルが4個のカテゴリーに分類される。現在最大符号化単位の復元ピクセルごとに、いずれの形態のエッジを形成するかということによって、4個のカテゴリーのうち1つのカテゴリーに属すると決定される。
バンドタイプの場合、現在最大符号化単位の復元ピクセルのピクセル値が属するバンド位置によって、所定個数のカテゴリーに分類される。例えば、バンドクラスが示す開始位置、すなわち、最左側バンドの開始地点から連続する4個のバンドのバンドインデックスによって、復元ピクセルが4個のカテゴリーに分類される。現在最大符号化単位の復元ピクセルごとに、4個のバンドのうちいずれのバンドに属するかということによって、4個のカテゴリーのうち1つのカテゴリーに属すると決定される。
一実施形態によるSAO決定部14は、現在最大符号化単位の復元ピクセルごとに、カテゴリーを決定することができる。一実施形態によるSAO決定部14は、現在符号化単位において、同一のカテゴリーに属する復元ピクセルについて、復元ピクセルと原本ピクセルとの差値を利用して、オフセット値を決定することができる。各カテゴリーごとに、復元ピクセルと原本ピクセルとの差値の平均、すなわち、復元ピクセルの平均誤差を、現在カテゴリーに対応するオフセット値として決定することができる。一実施形態によるSAO決定部14は、カテゴリーごとにオフセット値を決定し、現在最大符号化単位のためのオフセット値として、すべてのカテゴリーのオフセット値を決定することができる。
例えば、現在最大符号化単位のSAOタイプがエッジタイプであり、エッジ形態によって、復元ピクセルが4個のカテゴリーに分類されるか、あるいは現在最大符号化単位のSAOタイプがバンドタイプであり、連続する4個のバンドのインデックスによって、復元ピクセルが4個のカテゴリーに分類される場合、一実施形態によるSAO決定部14は、4個のカテゴリーごとに、属する復元ピクセルと原本ピクセルとの平均誤差を決定するので、4個のオフセット値を決定することができる。
一実施形態によるオフセット値は、それぞれ事前に設定された最小値より大きいか、あるいはそれと同じであり、事前に設定された最大値より小さいか、あるいは同じである。
一実施形態によるSAOパラメータ符号化部16は、SAO決定部14で決定された現在最大符号化単位のSAOタイプ、SAOクラス及びオフセット値を含むSAOパラメータを符号化して出力することができる。
各ブロックのSAOパラメータは、各ブロックのSAOタイプとオフセット値とを含んでもよい。SAOタイプとして、オフ(off)タイプ、エッジ(edge)タイプ、バンド(band)タイプが出力される。
SAOタイプがオフタイプである場合、現在最大符号化単位に対してSAO調整技法が適用されないということを示すことができる。その場合、現在最大符号化単位の残りのSAOパラメータも、それ以上符号化される必要がない。
SAOタイプがエッジタイプである場合、SAOパラメータは、エッジクラスのうち各エッジクラスごとに対応するオフセット値を含んでもよい。また、SAOタイプがバンドタイプである場合、SAOパラメータは、バンドのうち各バンドごとに対応するオフセット値を含んでもよい。すなわち、SAOパラメータ符号化部16は、各ブロックごとに、SAOパラメータを符号化することができる。
SAOパラメータを出力する実施形態は、以下図1BのSAO調整方法のフローチャートを参照して詳細に説明する。
一実施形態による符号化部12は、現在スライスの最大符号化単位のうち現在最大符号化単位を、ツリー構造の符号化単位を基に符号化することができる。
段階11で、SAO決定部14は、現在スライスのルマ成分についてSAO調整を行うか否かということを決定することができる。また、段階13で、SAO決定部14は、現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定することができる。
段階15で、SAO決定部14は、段階11の決定によって、ルマSAO使用情報を生成し、段階13の決定によって、クロマSAO使用情報を生成することができる。SAO決定部14は、現在スライスに係わる、ルマSAO使用情報及びクロマSAO使用情報を含むスライスSAOパラメータを生成することができる。
段階17で、SAO決定部14は、段階15で生成されたスライスSAOパラメータを含むスライスヘッダを出力することができる。
一実施形態によるSAO決定部14は、現在最大符号化単位の第1 SAOパラメータを決定することができる。第1
SAOパラメータは、現在最大符号化単位のピクセル値分類方式がエッジタイプであるか、あるいはバンドタイプであるかということ示すSAOタイプ;エッジタイプによるエッジ方向、またはバンドタイプによるバンド範囲を示すSAOクラス;及びSAOクラスに含まれる復元ピクセルと原本ピクセルとの差値を示すオフセット値;を含んでもよい。
一実施形態によるSAOパラメータ符号化部16は、所定個数のカテゴリー別に対応するオフセット値を出力することができる。
段階17で、SAOパラメータ符号化部16が、エッジタイプを示すSAOタイプ情報を出力する場合、現在最大符号化単位内に含まれた復元ピクセルのエッジ方向によって、0゜、90゜、45゜または135゜の方向を示すエッジクラスを出力することができる。
段階17で、SAOパラメータ符号化部16が、バンドタイプを示すSAOタイプ情報を出力する場合、現在最大符号化単位内に含まれた復元ピクセルのバンド位置を示すバンドクラスを出力することができる。
段階17で、SAOパラメータ符号化部16が、バンドタイプを示すSAOタイプ情報を出力する場合、オフセット値として、オフセット値が0であるか否かということを示すゼロ値情報を出力することができる。オフセット値が0であるならば、SAOパラメータ符号化部16は、オフセット値としてゼロ値情報のみを出力すればよい。
オフセット値が0ではないならば、SAOパラメータ符号化部16は、ゼロ値情報に続き、オフセット値が正数であるか負数であるかということを示す符号情報、及び残りのオフセット値をさらに出力することができる。
段階17で、SAOパラメータ符号化部16が、エッジタイプを示すSAOタイプ情報を出力する場合、ゼロ値情報及び残りのオフセット値を出力することができる。エッジタイプの場合、オフセット値の符号情報を出力する必要がない。エッジ形態によるカテゴリーのみでもってオフセット値の符号が予測されるからである。オフセット値符号の予測については、図5A及び図5Bを参照して後述する。
また、SAO決定部14は、カラー成分によって、最大符号化単位のSAO調整いかん及びSAOタイプを決定することができる。
一実施形態によるSAO決定部14は、現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを決定することができる。SAOパラメータ符号化部16は、現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを示すルマSAOタイプ情報を生成することができる。
一実施形態によるSAO決定部14は、現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定することができる。SAOパラメータ符号化部16は、現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを示すクロマSAOタイプ情報を生成することができる。
また、一実施形態によるSAO決定部14は、現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを決定することができる。SAOパラメータ符号化部16は、現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示すルマSAOタイプ情報を生成することができる。
一実施形態によるSAO決定部14は、現在最大符号化単位の第1クロマ成分及び第2クロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを同一に決定することができる。SAOパラメータ符号化部16は、現在最大符号化単位の第1クロマ成分及び第2クロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示すクロマSAOタイプ情報を生成することができる。
現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてエッジSAO調整を行うと決定された場合、一実施形態によるSAO決定部14は、現在最大符号化単位の第1クロマ成分及び第2クロマ成分について同一のエッジ方向のSAOクラスを決定することができる。従って、SAOパラメータ符号化部16は、現在最大符号化単位の第1クロマ成分及び第2クロマ成分の同一のエッジ方向についての情報を含むSAOパラメータを生成することができる。
一実施形態によるSAOパラメータ符号化部16は、現在最大符号化単位に係わるSAOパラメータに、ルマSAOタイプ情報及びクロマSAOタイプ情報を含める。
一実施形態によるSAOパラメータ符号化部16は、現在最大符号化単位の第1 SAOパラメータと隣接する左側最大符号化単位または上端最大符号化単位の第2 SAOパラメータの同一性に基づいて、現在最大符号化単位の第1 SAOパラメータとして、第2 SAOパラメータを採択するか否かということを示す現在最大符号化単位のSAO併合情報を出力することができる。
一実施形態によるSAOパラメータ符号化部16は、現在最大符号化単位の左側最大符号化単位及び上端最大符号化単位のうち少なくとも1つのSAOパラメータが、現在最大符号化単位のSAOパラメータと同一であるならば、現在ブロックのSAOパラメータは除外し、SAO併合情報だけ符号化することもできる。その場合、現在最大符号化単位のSAOパラメータとして、左側最大符号化単位または上端最大符号化単位のSAOパラメータを採択することを示すSAO併合情報を出力することができる。
一実施形態によるSAOパラメータ符号化部16は、左側最大符号化単位及び上端最大符号化単位のSAOパラメータが、現在最大符号化単位のSAOパラメータと異なっているならば、現在ブロックのSAO併合情報とSAOパラメータとを符号化することができる。その場合、現在最大符号化単位のSAOパラメータとして、左側最大符号化単位または上端最大符号化単位のSAOパラメータを採択しないということを示すSAO併合情報を出力することができる。
現在最大符号化単位の左側最大符号化単位または上端最大符号化単位の第2 SAOパラメータと、第1 SAOパラメータとが同一であるならば、第2 SAOパラメータを参照し、第1 SAOパラメータが予測される。一実施形態によるSAOパラメータ符号化部16が、第1 SAOパラメータとして、第2 SAOパラメータを採択する場合には、SAO併合情報のみを出力し、それ以外に、現在最大符号化単位のSAOタイプ、SAOクラス、オフセット値を出力しない。
ただし、現在最大符号化単位の左側最大符号化単位または上端最大符号化単位の第2S Oパラメータと、第1 SAOパラメータとが同一ではなければ、第2 SAOパラメータとは別個に、第1 SAOパラメータが予測される。段階19で、SAOパラメータ符号化部16が、第1 SAOパラメータとして、第2 SAOパラメータを採択しない場合には、現在最大符号化単位のSAO併合情報に続き、現在最大符号化単位のSAOタイプ、オフセット値及びSAOクラスを含むように、第1 SAOパラメータを出力することができる。
一実施形態によるSAOパラメータ符号化部16は、第1 SAOパラメータのSAOタイプ、オフセット値及びSAOクラスを出力する場合、現在最大符号化単位のSAOタイプ、カテゴリー別オフセット値、そしてSAOクラスの順序で出力することができる。
SAO調整が行われるならば、SAO決定部14は、最大符号化単位ごとに、それぞれのSAO併合情報と、SAOパラメータとを決定することができる。その場合、SAOパラメータ符号化部16は、現在スライスにSAO調整が行われるということを示すSAO使用情報を出力した後、最大符号化単位ごとに決定されたそれぞれのSAO併合情報と、SAOパラメータとを出力することができる。
もし現在スライスでSAO調整が行われないならば、SAO決定部14は、現在スライスの最大符号化単位のオフセットを決定する必要がなく、SAOパラメータ符号化部16は、現在スライスでオフセットが調整されないということを示すSAO調整情報のみを出力すればよい。
一実施形態によるSAO決定部14は、現在最大符号化単位の左側または上端に隣接する最大符号化単位のSAOパラメータを参照し、現在最大符号化単位のSAOパラメータを決定するか否かということを、カラー成分ごとに異なって決定するのではなく、ルマ成分及びクロマ成分について同一に決定することができる。
まず、一実施形態によるSAO決定部14が、現在スライスの最大符号化単位のうち、現在最大符号化単位の左側最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定することができる。
左側最大符号化単位のSAOパラメータを利用して、現在最大符号化単位のSAOパラメータを予測するか否かということに基づいて、一実施形態によるSAOパラメータ符号化部16は、現在最大符号化単位のための左側SAO併合情報を生成することができる。すなわち、ルマ成分、第1クロマ成分及び第2クロマ成分の区別なしに、同一の左側SAO併合情報が生成される。
次に、SAO決定部14が、現在スライスの最大符号化単位のうち、現在最大符号化単位の上端最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定することができる。
上端最大符号化単位のSAOパラメータを利用して、現在最大符号化単位のSAOパラメータを予測するか否かということに基づいて、一実施形態によるSAOパラメータ符号化部16は、現在最大符号化単位のための上端SAO併合情報を生成することができる。
一実施形態によるSAOパラメータ符号化部16は、現在最大符号化単位に係わる、左側最大符号化単位SAO併合情報及び上端最大符号化単位SAO併合情報を含む最大符号化単位SAOパラメータを生成することができる。
ビデオ符号化装置10は、量子化された変換係数及び符号化情報を含む符号化シンボルについてエントロピー符号化を行い、ビットストリームを生成することができる。一実施形態によるビデオ符号化装置10は、SAOパラメータについて、CABAC(context-adaptive binary arithemeti ccoding)基盤のエントロピー符号化を行うことができる。
一実施形態によるビデオ符号化装置10は、ルマSAOタイプ情報のうち、現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを示す情報を示す最初のコンテクストビンについてCABAC符号化を行うことができる。
一実施形態によるビデオ符号化装置10は、ルマSAOタイプ情報のうち、現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示す情報を示す残りのコンテクストビンについては、バイパスモードで、CABAC符号化を行うことができる。
一実施形態によるビデオ符号化装置10は、現在最大符号化単位に係わる最大符号化単位SAOパラメータのうち、左側SAO併合情報及びSAO併合情報について、同一のコンテクストモードを利用して、CABAC符号化を行うことができる。
一実施形態によるビデオ符号化装置10は、最大符号化単位SAOパラメータのうち、オフセットのサイズ値情報について、バイパスモードで、CABAC符号化を行うことができる。オフセットのサイズ値情報は、ビデオのビットデプスに基づく範囲内の値であるオフセットサイズ値を示すことができる。例えば、ビットデプスが8ビットである場合、オフセットサイズ値は、0より大きいか、あるいはそれと同じであり、7より小さいか、あるいはそれと同じ値であってもよい。他の例として、ビットデプスが10ビットである場合、オフセットサイズ値は、0より大きいか、あるいはそれと同じであり、31より小さいか、あるいはそれと同じ値であってもよい。
現在最大符号化単位についてバンドSAO調整を行うと決定された場合、一実施形態によるビデオ符号化装置10は、ルマSAOクロマタイプ情報及びクロマSAOタイプ情報のうち少なくとも一つにおいて、バンドの左側開始時点についての情報の固定ビットトレングスのビットについて、バイパスモードで、CABAC符号化を行うことができる。
現在最大符号化単位についてバンドSAO調整を行うと決定された場合、SAO決定部140は、バンドSAO調整のためのオフセット値を決定することができる。それによって、SAOパラメータ符号化部10も、バンドSAO調整のためのオフセット値をさらに含む最大符号化単位SAOパラメータを生成することができる。
ただし、バンドSAO調整のために決定されたオフセット値が0ではない場合、SAO決定部140は、オフセット値の符号をさらに決定することができる。それによって、SAOパラメータ符号化部10も、オフセット値の符号情報をさらに含む最大符号化単位SAOパラメータを生成することができる。
一実施形態によるビデオ符号化装置10は、符号化部12、SAO決定部14及びSAOパラメータ符号化部16を総括的に制御する中央プロセッサ(図示せず)を含んでもよい。または、符号化部12、SAO決定部14及びSAOパラメータ符号化部16がそれぞれの自体プロセッサ(図示せず)によって作動し、プロセッサ(図示せず)が相互有機的に作動することにより、ビデオ符号化装置10が全体的に作動することもできる。または、一実施形態によるビデオ符号化装置10の外部プロセッサ(図示せず)の制御によって、符号化部12、SAO決定部14及びSAOパラメータ符号化部16が制御されてもよい。
一実施形態によるビデオ符号化装置10は、符号化部12、SAO決定部14及びSAOパラメータ符号化部16の入出力データが保存される一つ以上のデータ保存部(図示せず)を含んでもよい。ビデオ符号化装置10は、データ保存部(図示せず)のデータ入出力を管轄するメモリ制御部(図示せず)を含んでもよい。
一実施形態によるビデオ符号化装置10は、ビデオ符号化結果を出力するために、内部に搭載されたビデオエンコーディング・プロセッサまたは外部ビデオエンコーディング・プロセッサと連繋して作動することにより、変換を含んだビデオ符号化動作を遂行することができる。一実施形態によるビデオ符号化装置10の内部ビデオエンコーディング・プロセッサは、別個のプロセッサとして、ビデオ符号化動作を具現することができる。また、ビデオ符号化装置10、中央演算装置またはグラフィック演算装置が、ビデオエンコーディング・プロセッシング・モジュールを含むことにより、基本的なビデオ符号化動作を具現する場合も含んでもよい。
図2A及び図2Bは、一実施形態によるビデオ復号化装置20のブロック図と、ビデオ復号化装置のSAO調整方法のフローチャートとを図示している。
一実施形態によるビデオ復号化装置20は、SAOパラメータ獲得部22、SAO決定部24及びSAO調整部26を含む。
一実施形態によるビデオ復号化装置20は、ビデオの符号化されたデータを含むビットストリームを受信する。ビデオ復号化装置20は、受信したビットストリームから、符号化されたビデオサンプルをパージングし、映像ブロック別に、エントロピー復号化、逆量子化、逆変換、予測及び動き補償を行って復元ピクセルを生成し、結果として、復元映像を生成することができる。
また、一実施形態によるビデオ復号化装置20は、原本ピクセルと復元ピクセルとの差値を示すオフセット値を受信し、原本映像と復元映像との誤差を最小化することができる。ビデオ復号化装置20は、ビデオの最大符号化単位別に符号化されたデータを受信し、それぞれの最大符号化単位から分割されたツリー構造の符号化単位を基に、それぞれの最大符号化単位を復元することができる。
一実施形態によるSAOパラメータ獲得部22は、受信されたビットストリームのスライスヘッダから、現在スライスに係わるスライスSAOパラメータを獲得することができる。SAOパラメータ獲得部22は、スライスSAOパラメータのうちから、現在スライスのルマ成分のためのルマSAO使用情報、及びクロマ成分のためのクロマSAO使用情報を獲得することができる。
一実施形態によるSAO決定部24は、SAOパラメータ獲得部22によって獲得されたルマSAO使用情報に基づいて、現在スライスのルマ成分についてSAO調整を行うか否かということを決定することができる。
一実施形態によるSAO決定部24は、SAOパラメータ獲得部22によって獲得されたクロマSAO使用情報に基づいて、現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定することができる。すなわち、第1クロマカラー成分についてSAO調整が行われるならば、第2クロマ成分についてもSAO調整が行われ、第1クロマカラー成分についてSAO調整が行われないならば、第2クロマ成分についてもSAO調整が行われない。
一実施形態によるビデオ復号化装置20は、受信されたビットストリームから獲得された現在スライスの符号化サンプル及び符号化情報を含む符号化シンボルについて復号化を行い、現在スライスを復元することができる。一実施形態によるSAO調整部26は、復元された現在スライスのルマ成分、並びに第1クロマ成分及び第2クロマ成分について、それぞれSAO決定部24の決定によって、SAO調整を行うことができる。
以下、現在最大符号化単位のサンプルを復元してオフセットを調整する方法について、図2Bを参照して詳細に説明する。
段階21で、一実施形態によるSAOパラメータ獲得部22は、受信されたビットストリームのスライスヘッダから、現在スライスに係わるスライスSAOパラメータを獲得することができる。段階23で、SAOパラメータ獲得部22は、スライスSAOパラメータのうちから、ルマSAO使用情報及びクロマSAO使用情報を獲得することができる。
段階25で、SAO決定部24は、段階23で獲得されたルマSAO使用情報に基づいて、現在スライスのルマ成分についてSAO調整を行うか否かということを決定することができる。ルマSAO使用情報がSAO調整が行われるということを示しているならば、SAO調整部26は、現在スライスのルマカラー成分についてSAO調整を行うことができる。
段階27で、SAO決定部24は、段階23で獲得されたクロマSAO使用情報に基づいて、現在スライスの第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定することができる。クロマSAO使用情報が、SAO調整が行われるということを示しているならば、SAO調整部26は、現在スライスの第1クロマカラー成分及び第2クロマカラー成分についてSAO調整を行うことができる。
また、一実施形態によるSAOパラメータ獲得部22は、受信したビットストリームから、現在最大符号化単位のSAO併合情報を抽出することができる。現在最大符号化単位のSAO併合情報は、現在最大符号化単位の第1 SAOパラメータとして、現在最大符号化単位の左側最大符号化単位または上端最大符号化単位の第2 SAOパラメータを採択するか否かということを示す。
一実施形態によるSAOパラメータ獲得部22は、SAO併合情報に基づいて、現在最大符号化単位のSAOタイプ、オフセット値及びSAOクラスを含む第1 SAOパラメータを復元することができる。
一実施形態によるSAOパラメータ獲得部22は、SAO併合情報に基づいて、現在最大符号化単位のSAOタイプ、オフセット値及びSAOクラスを、第2 SAOパラメータと同一に復元するか、あるいはビットストリームから、SAOタイプ、オフセット値及びSAOクラスを抽出するか否かということを決定することができる。
一実施形態によるSAO決定部24は、SAOパラメータ獲得部22によって決定されたSAOタイプに基づいて、現在最大符号化単位のピクセル値分類方式が、エッジタイプであるか、あるいはバンドタイプであるかということ決定することができる。SAOタイプから、オフタイプ、エッジタイプ、バンドタイプが決定される。
SAOタイプがオフタイプである場合、現在最大符号化単位で、SAO調整技法が適用されないということが決定される。その場合、現在最大符号化単位の残りのSAOパラメータも、それ以上パージングされる必要がない。
一実施形態によるSAO決定部24は、SAOパラメータ獲得部22によって決定されたSAOクラスに基づいて、現在最大符号化単位のエッジタイプによるエッジ方向、またはバンドタイプによるバンド範囲を決定することができる。
一実施形態によるSAO決定部24は、SAOパラメータ獲得部22によって決定されたオフセット値に基づいて、先立って決定されたSAOクラスに含まれる復元ピクセルと原本ピクセルとの差値を決定することができる。
一実施形態によるSAO調整部26は、現在最大符号化単位から分割されたツリー構造の符号化単位に基づいて復元されたサンプルのピクセル値を、SAO決定部24によって決定された差値ほど調整することができる。
一実施形態によるSAOパラメータ獲得部22は、SAO併合情報に基づいて、第1SAOパラメータとして、左側最大符号化単位または上端最大符号化単位の第2 SAOパラメータを採択すると決定することができる。その場合、SAO決定部24は、現在最大符号化単位の第1 SAOパラメータを抽出せず、先に復元された第2 SAOパラメータと同一に、第1 SAOパラメータを復元することもできる。
一実施形態によるSAOパラメータ獲得部22は、SAO併合情報に基づいて、第1SAOパラメータとして、第2 SAOパラメータを採択しないと決定することもできる。その場合、SAO決定部24は、ビットストリームから、SAO併合情報に続く第1 SAOパラメータを抽出して復元することができる。
一実施形態によるSAOパラメータ獲得部22は、現在最大符号化単位のルマ成分、第1クロマ成分及び第2クロマ成分のために、共通のSAO併合情報を抽出することができる。SAO決定部24は、共通のSAO併合情報に基づいて、ルマ成分のSAOパラメータ、第1クロマ成分のSAOパラメータ、及び第2クロマ成分のSAOパラメータを、隣接する最大符号化単位のSAOパラメータと同一に復元するか否かということを決定することができる。
一実施形態によるSAO決定部24は、現在最大符号化単位の第1クロマ成分及び第2クロマ成分のために、共通のSAOタイプを復元することができる。
一実施形態によるSAO決定部24は、SAOパラメータから、所定個数のカテゴリーに対応するオフセット値を決定することができる。それぞれのオフセット値は、事前に設定された最小値より大きいか、あるいはそれと同じであり、事前に設定された最大値より小さいか、あるいは同じである。
一実施形態によるSAOタイプ情報がエッジタイプを示す場合、オフセットSAO決定部24は、クラスに基づいて、現在最大符号化単位内に含まれた復元ピクセルのエッジの方向を、0゜、90゜、45゜または135゜のうち一つに決定することができる。
一実施形態によるSAOタイプ情報がバンドタイプを示す場合、SAO決定部24は、SAOクラスに基づいて、復元ピクセルのピクセル値が属するバンドの位置を決定することができる。
一実施形態によるSAOタイプ情報がバンドタイプを示す場合、SAO決定部24は、オフセット値のうちゼロ値情報に基づいて、オフセット値が0であるか否かということを決定することができる。ゼロ値情報に基づいて、オフセット値が0であると決定される場合、オフセット値からゼロ値情報以外の情報は復元されない。
ゼロ値情報に基づいて、オフセット値が0ではないならば、SAO決定部24は、オフセット値のうち、ゼロ値情報に続く符号情報に基づいて、オフセット値が正数であるか負数であるかということを決定することができる。また、オフセット値のうち、符号情報に続く残りのオフセット値を復元することにより、SAO決定部24は、最終オフセット値を決定することができる。
また、一実施形態によるSAOタイプ情報がエッジタイプを示す場合、SAO決定部24は、オフセット値のうちゼロ値情報に基づいて、オフセット値が0ではないならば、オフセット値のうちゼロ値情報に続く残りのオフセット値を復元することにより、SAO決定部24は、最終オフセット値を決定することができる。
一実施形態によるビデオ復号化装置20は、カラー成分によって、SAOパラメータを獲得してSAO調整を行うことができる。
一実施形態によるSAOパラメータ獲得部22は、ビットストリームから、現在スライスの最大符号化単位別に、最大符号化単位SAOパラメータを獲得することができる。SAOパラメータ獲得部22は、最大符号化単位SAOパラメータのうちから、左側SAO併合情報及び上端SAO併合情報のうち少なくとも一つを獲得することができる。
一実施形態によるSAOパラメータ獲得部22は、左側SAO併合情報に基づいて、現在最大符号化単位の上端に隣接する最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定することができる。
左側SAO併合情報が、左側最大符号化単位のSAOパラメータを利用して、現在SAOパラメータを予測するように表示しているのであるならば、カラー成分ごとに、現在最大符号化単位のカラー成分別SAOパラメータとして、左側最大符号化単位に係わるカラー成分別SAOパラメータが採択される。
ただし、左側SAO併合情報に基づいて、左側最大符号化単位のSAOパラメータを利用して、現在最大符号化単位のSAOパラメータを予測しないと決定される場合、一実施形態によるSAOパラメータ獲得部22は、ビットストリームから、上端SAO併合情報をさらに獲得することができる。
一実施形態によるSAOパラメータ獲得部22は、上端SAO併合情報に基づいて、現在最大符号化単位の上端に隣接する最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを利用して、現在最大符号化単位のルマ成分、並びに第1クロマ成分及び第2クロマ成分に係わるSAOパラメータを予測するか否かということを決定することができる。
上端SAO併合情報が上端最大符号化単位のSAOパラメータを利用して、現在SAOパラメータを予測するように表示しているのであるならば、カラー成分ごとに、現在最大符号化単位のカラー成分別SAOパラメータとして、上端最大符号化単位に係わるカラー成分別SAOパラメータが採択される。
ただし、上端SAO併合情報が上端最大符号化単位のSAOパラメータを利用して、現在SAOパラメータを予測しないように表示しているのであるならば、SAOパラメータ獲得部22は、カラー成分ごとに、現在最大符号化単位のカラー成分別SAOパラメータを、ビットストリームから獲得することができる。
一実施形態によるSAOパラメータ獲得部22は、最大符号化単位SAOパラメータのうちから、現在最大符号化単位のルマ成分のためのルマSAOタイプ情報、及びクロマ成分のためのクロマSAOタイプ情報を獲得することができる。
一実施形態によるSAO決定部24は、ルマSAOタイプ情報に基づいて、現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを決定することができる。一実施形態によるSAO調整部26は、SAO決定部24の決定によって、現在最大符号化単位のルマ成分についてSAO調整を行うこともあり、あるいは行わないこともある。
一実施形態によるSAO決定部24は、クロマSAOタイプ情報に基づいて、現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを同一に決定することができる。一実施形態によるSAO調整部26は、SAO決定部24の決定によって、現在最大符号化単位の第1クロマ成分及び第2クロマ成分について共にSAO調整を行うか、あるいは共に行わないこともある。
一実施形態によるSAO決定部24は、ルマSAOタイプ情報及びクロマSAOタイプ情報の最初のビットに基づいて、SAO遂行いかんを決定することができる。カラー成分別に、SAO調整が行われると決定されるのであるならば、当該SAOタイプ情報の2番目のビット及び残りのビットが獲得される。
一実施形態によるSAO決定部24は、ルマSAOタイプ情報に基づいて、現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを決定することができる。ルマSAOタイプ情報の2番目のビットがエッジSAO調整であるか、あるいはバンドSAO調整であるかということを示すことができる。一実施形態によるSAO調整部26は、SAO決定部24の決定によって、現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれか一つを行うことができる。
一実施形態によるSAO決定部24は、クロマSAOタイプ情報に基づいて、現在最大符号化単位の第1クロマ成分及び第2クロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを同一に決定することができる。クロマSAOタイプ情報の2番目のビットがエッジSAO調整であるか、あるいはバンドSAO調整であるかということを示すことができる。一実施形態によるSAO調整部26は、SAO決定部24の決定によって、現在最大符号化単位の第1クロマ成分及び第2クロマ成分について共にエッジSAO調整を行うか、あるいは共にバンドSAO調整を行うことができる。
また、現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてエッジSAO調整を行うと決定された場合、SAO決定部24は、クロマSAOタイプ情報に基づいて、現在最大符号化単位の第1クロマ成分及び第2クロマ成分が同一のエッジ方向を有するということを決定することができる。
一実施形態によるSAOパラメータ獲得部24は、ルマSAOタイプ情報を獲得するために、ルマSAOタイプ情報のうち最初のコンテクストビンについてCABAC復号化を行うことができる。ルマSAOタイプ情報のうち、最初のコンテクストビンを復号化することにより、現在最大符号化単位のルマ成分についてSAO調整を行うか否かということを示す情報が獲得される。
一実施形態によるSAOパラメータ獲得部24は、ルマSAOタイプ情報のうち残りのコンテクストビンについて、バイパスモードで、CABAC復号化を行うことができる。ルマSAOタイプ情報のうち残りのコンテクストビンを復号化することにより、現在最大符号化単位のルマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示す情報が獲得される。
それと同様に、一実施形態によるSAOパラメータ獲得部24は、クロマSAOタイプ情報を獲得するために、クロマSAOタイプ情報のうち、最初のコンテクストビンについてCABAC復号化を行うことができる。クロマSAOタイプ情報のうち、最初のコンテクストビンを復号化することにより、現在最大符号化単位の第1クロマ成分及び第2クロマ成分についてSAO調整を行うか否かということを示す情報が獲得される。
一実施形態によるSAOパラメータ獲得部24は、クロマSAOタイプ情報のうち残りのコンテクストビンについて、バイパスモードで、CABAC復号化を行うことができる。クロマSAOタイプ情報のうち残りのコンテクストビンを復号化することにより、現在最大符号化単位の第1クロマ成分及び第2クロマ成分について、エッジSAO調整及びバンドSAO調整のうちいずれを行うかということを示す情報が獲得される。
一実施形態によるSAOパラメータ獲得部24は、現在最大符号化単位の左側SAO併合情報及び上端SAO併合情報を獲得するために、同一のコンテクストモードを利用して、CABAC復号化を行うことができる。
一実施形態によるSAOパラメータ獲得部24は、最大符号化単位SAOパラメータのうちからオフセットのサイズ値情報を獲得するために、バイパスモードで、CABAC復号化を行うことができる。獲得されたオフセットのサイズ値情報は、ビデオのビットデプスに基づく限界値以下の値に制限される。ビデオのビットデプスに基づく範囲内の値であるオフセットサイズ値を示すことができる。例えば、8ビットのビットデプスの場合、オフセットサイズ値は、0以上7以下の値であり、10ビットのビットデプスの場合、オフセットサイズ値は、0以上31以下の値であってもよい。
また、クロマSAOタイプ情報の2番目のビットから、現在最大符号化単位についてバンドSAO調整を行うと読み取られた場合、一実施形態によるSAOパラメータ獲得部24は、クロマSAOタイプ情報の2番目のビットの次に続く固定ビットトレングスのビットについて、バイパスモードで、CABAC復号化を行うことができる。ルマSAOクロマタイプ情報及びクロマSAOタイプ情報のうち少なくとも1つの固定ビットトレングスのビットから、バンドの左側開始時点についての情報が獲得される。
また、一実施形態によるSAOパラメータ獲得部24は、最大符号化単位SAOパラメータから、SAO調整のためのオフセット値を獲得することができる。
ルマSAOタイプ情報またはクロマSAOタイプ情報から、現在最大符号化単位についてバンドSAO調整を行うと決定された場合、獲得されたオフセット値が0ではないならば、SAOパラメータ獲得部24は、最大符号化単位SAOパラメータから、オフセット値の符号情報をさらに獲得することができる。
ルマSAOタイプ情報またはクロマSAOタイプ情報から、現在最大符号化単位についてエッジSAO調整を行うと決定された場合には、SAOクラス情報によって決定されたエッジ方向に基づいて、オフセット値の符号が決定される。
一実施形態によるビデオ復号化装置20は、SAOパラメータ獲得部22、SAO決定部24及びSAO調整部26を総括的に制御する中央プロセッサ(図示せず)を含んでもよい。または、SAOパラメータ獲得部22、SAO決定部24及びSAO調整部26がそれぞれの自体プロセッサ(図示せず)によって作動し、プロセッサ(図示せず)が相互有機的に作動することにより、ビデオ復号化装置20が全体的に作動することもできる。または、一実施形態によるビデオ復号化装置20の外部プロセッサ(図示せず)の制御によって、SAOパラメータ獲得部22、SAO決定部24及びSAO調整部26が制御されてもよい。
一実施形態によるビデオ復号化装置20は、SAOパラメータ獲得部22、SAO決定部24及びSAO調整部26の入出力データが保存される一つ以上のデータ保存部(図示せず)を含んでもよい。ビデオ復号化装置20は、データ保存部(図示せず)のデータ入出力を管轄するメモリ制御部(図示せず)を含んでもよい。
一実施形態によるビデオ復号化装置20は、ビデオ復号化を介してビデオを復元するために、内部に搭載されたビデオデコーディング・プロセッサまたは外部ビデオデコーディング・プロセッサと連繋して作動することにより、ビデオ復号化動作を遂行することができる。一実施形態によるビデオ復号化装置20の内部ビデオデコーディング・プロセッサは、別個のプロセッサとして、基本的なビデオ復号化動作を具現することができる。また、ビデオ復号化装置20、中央演算装置またはグラフィック演算装置がビデオデコーディングプロセッシングモジュールを含むことにより、基本的なビデオ復号化動作を具現する場合も含んでもよい。
以下、図3を参照し、SAO技法を利用するビデオ復号化方式について詳細に説明する。図3は、他の実施形態によるビデオ復号化装置30のブロック図を図示している。
ビデオ復号化装置30は、エントロピー復号化部31、逆量子化部32、逆変換部33、復元部34、イントラ予測部35、参照ピクチャバッファ36、動き補償部37、デブロッキング・フィルタリング部38、SAO部39を含む。
ビデオ復号化装置30は、符号化されたビデオデータを含むビットストリームを受信することができる。エントロピー復号化部31で、ビットストリ−ムから、イントラモード情報、インターモード情報、SAO情報、残差データ(residues)がパージングされる。
エントロピー復号化部31によって抽出された残差データは、量子化された変換係数であってもよい。従って、逆量子化部32で、残差データについて逆量子化を行って変換係数を復元し、逆変換部33で、復元された復元係数について逆変換を行い、空間領域の残差値を復元することができる。
空間領域の残差値を予測復元するために、イントラ予測または動き補償が行われる。
エントロピー復号化部31で、イントラモード情報が抽出された場合には、イントラ予測部35がイントラモード情報を利用して、現在サンプルに空間的に隣接する隣接サンプルのうちいずれのサンプルを参照し、現在サンプルを復元するかということを決定することができる。参照する隣接サンプルを、復元部34によって、以前に復元されたサンプルのうちから選択する。復元部34は、イントラモード情報に基づいて、決定された参照サンプルと、逆変換部33で復元された残差値とを利用して、現在サンプルを復元することができる。
エントロピー復号化部31で、インターモード情報が抽出された場合には、動き補償部37が、インターモード情報を利用して、現在ピクチャより先に復元されたピクチャのうちいずれのサンプルを参照し、現在ピクチャの現在サンプルを復元するかということを決定することができる。インターモード情報は、動きベクトル、参照インデックスなどを含んでもよい。参照インデックスを利用して、現在ピクチャより先に復元され、参照ピクチャバッファ36に保存されたピクチャのうち、現在サンプルの動き補償のための参照ピクチャが決定される。動きベクトルを利用して、参照ピクチャのうち現在ブロックの動き補償のための参照ブロックが決定される。復元部34は、インターモード情報に基づいて、決定された参照ブロックと、逆変換部33で復元された残差値とを利用して、現在サンプルを復元することができる。
復元部34でサンプルが復元され、復元ピクセルが出力される。復元部34は、最大符号化単位ごとに、ツリー構造の符号化単位を基に、復元ピクセルを生成することができる。
デブロッキング・フィルタリング部38で、最大符号化単位またはツリー構造の符号化単位ごとに、符号化単位の境界領域に位置するピクセルについて、ブロッキング現象を軽減させるためのフィルタリングが行われる。
また、一実施形態によるSAO部39は、SAO技法によって最大符号化単位別に、復元ピクセルのオフセットを調整することができる。SAO部39は、エントロピー復号化部31によって抽出されたSAO情報から、現在最大符号化単位のためのSAOタイプ、SAOクラス、オフセット値を決定することができる。
エントロピー復号化部31で、SAO情報から抽出する動作は、ビデオ復号化装置20のSAOパラメータ抽出部22の動作に相応し、SAO部39の動作は、ビデオ復号化装置20のSAO決定部24及びSAO調整部26の動作に相応する。
SAO部39は、SAOオフセット値から、現在最大符号化単位の復元ピクセルごとに、オフセット値の符号及び差値を決定することができる。SAO部39は、復元ピクセルごとに、オフセット値から決定された差値ほどピクセル値を増減させることにより、復元ピクセルと原本ピクセルとの誤差を低減させることができる。
一実施形態によるSAO部39によってオフセットが調整された復元ピクセルを含むピクチャが、参照ピクチャバッファ36に保存される。従って、一実施形態によるSAO技法によって、復元サンプルと原本ピクセルとの誤差が最小化された参照ピクチャを利用して、次のピクチャの動き補償が行われる。
一実施形態によるSAO技法によれば、復元ピクセルごとに、原本ピクセルとの差値を基に、復元ピクセルを含むピクセルグループのオフセットが決定される。まず、一実施形態によるSAO技法のために、復元ピクセルをピクセルグループに分類する実施形態について詳細に説明する。
一実施形態によるSAO技法によれば、(i)復元ピクセルが構成するエッジタイプによってピクセルが分類されるか、あるいは(ii)復元ピクセルのバンドタイプによってピクセルが分類される。一実施形態によって、ピクセルがエッジタイプによって分類されるか、またはバンドタイプによって分類されるかということは、SAOタイプによって定義される。
まず、一実施形態によるSAO技法によって、エッジタイプによってピクセルを分類する実施形態について詳細に説明する。
現在最大符号化単位について、エッジタイプのオフセットを決定する場合、現在最大符号化単位に含まれた各復元ピクセルのエッジクラスが決定される。すなわち、現在復元ピクセルと隣接ピクセルとのピクセル値を比較し、現在復元ピクセルのエッジクラスが定義される。エッジクラスが決定される一例について、図4を参照し、以下で説明る。
図4は、一実施形態によるエッジタイプのエッジクラスを図示している。
エッジクラス(EO)41,42,43,44のインデックスが、順に0、1、2、3と割り当てられる。エッジタイプの発生頻度が高いほど、エッジタイプのインデックスは、小さく割り当てられる。
エッジクラスは、現在復元ピクセルX0と隣接する2個の隣接ピクセルが形成する一次元エッジの方向を示すことができる。インデックス0のエッジクラス41は、現在復元ピクセルX0と水平方向に隣接する2個の隣接ピクセルX1,X2がエッジを形成する場合を示す。インデックス1のエッジクラス42は、現在復元ピクセルX0と垂直方向に隣接する2個の隣接ピクセルX3,X4がエッジを形成する場合を示す。インデックス2のエッジクラス43は、現在復元ピクセルX0に135゜対角方向に隣接する2個の隣接ピクセルX5,X8がエッジを形成する場合を示す。インデックス3のエッジクラス44は、現在復元ピクセルX0に45゜対角方向に隣接する2個の隣接ピクセルX6,X7がエッジを形成する場合を示す。
従って、現在最大符号化単位内に含まれた復元ピクセルのエッジ方向を分析し、現在最大符号化単位で、強いエッジの方向を決定することにより、現在最大符号化単位のエッジクラスが決定される。
各エッジクラスごとに、現在ピクセルのエッジ形態によって、カテゴリーが分類される。エッジ形態によるカテゴリーの一例について、図5A及び図5Bを参照し、以下で説明する。
図5A及び図5Bは、一実施形態によるエッジタイプのカテゴリーを図示している。
エッジカテゴリーは、現在ピクセルが凹状エッジの最低点であるか、凹状エッジの最低点周囲に位置する曲線コーナーのピクセルであるか、凸状エッジの最高点であるか、あるいは凸状エッジの最高点周囲に位置する曲線コーナーのピクセルであるかということを示す。
図5Aは、エッジのカテゴリーを決定するための条件を例示している。図5Bは、復元ピクセルと隣接ピクセルとのエッジ形態、及びピクセル値c,a,bのグラフを例示している。
cは、復元ピクセルのインデックス、a,bは、エッジ方向によって、現在復元ピクセルの両側に隣接する隣接ピクセルのインデックスを示す。Xa,Xb,Xcは、それぞれインデックスa,b,cである復元ピクセルのピクセル値を示す。図5Bのグラフのx軸は、復元ピクセルと両側に隣接する隣接ピクセルのインデックスを、y軸は、各サンプルのピクセル値を示す。
カテゴリー1は、現在サンプルが凹状エッジの最低点、すなわち、ローカルバレー地点の場合を示す(Xc<Xa && Xc<Xb)。グラフ51のように、隣接ピクセルa,bの間で、現在復元ピクセルcが凹状エッジの最低点である場合、現在復元ピクセルは、カテゴリー1に分類される。
カテゴリー2は、現在サンプルが凹状エッジの最低点周辺に位置する曲線コーナーに位置する場合を示す(Xc<Xa && Xc==Xb || Xc==Xa && Xc<Xb)。グラフ52のように、隣接ピクセルa,bの間で、現在復元ピクセルcが凹状エッジの下降カーブが終了する地点に位置するか(Xc<Xa && Xc==Xb)、あるいはグラフ53のように、現在復元ピクセルcが凹状エッジの上昇カーブが始まる地点に位置(Xc==Xa && Xc<Xb)する場合、現在復元ピクセルは、カテゴリー2に分類される。
カテゴリー3は、現在サンプルが凸状エッジの最高点周辺に位置する曲線コーナに位置する場合を示す(Xc>Xa && Xc==Xb || Xc==Xa && Xc>Xb)。グラフ54のように、隣接ピクセルa,bの間で、現在復元ピクセルcが凹状エッジの下降カーブが始まる地点に位置するか(Xc==Xa && Xc>Xb)、あるいはグラフ55のように、現在復元ピクセルcが凹状エッジの上昇カーブが終了する地点に位置(Xc>Xa && Xc==Xb)場合、現在復元ピクセルは、カテゴリー3に分類される。
カテゴリー4は、現在サンプルが凸状エッジの最高点、すなわち、ローカルピーク地点である場合を示す(Xc>Xa && Xc>Xb)。グラフ56のように、隣接ピクセルa,bの間で、現在復元ピクセルcが凸状エッジの最高点である場合、現在復元ピクセルは、カテゴリー4に分類される。
現在復元ピクセルについて、カテゴリー1,2,3,4の条件がいずれも充足されない場合には、エッジではないので、カテゴリー0に分類され、カテゴリー0に係わるオフセットは、別途に符号化される必要はない。
一実施形態によって、同一カテゴリーに該当する復元ピクセルについて、復元ピクセルと原本ピクセルとの差値の平均値が、現在カテゴリーのオフセットとして決定される。また、各カテゴリーごとに、オフセットが決定される。
カテゴリー1,2の凹状エッジは、正数オフセット値によって、復元ピクセル値が調整されるのであるならば、エッジが平坦になるスムージング(smoothing)効果が生じ、負数オフセット値によって、エッジの先鋭度(sharpeness)が高くなるシャープニング(sharpening)効果が生じる。カテゴリー3,4の凸状エッジは、負数オフセット値によって、エッジのスムージング効果が生じ、正数オフセット値によって、エッジのシャープニング効果が生じる。
一実施形態によるビデオ符号化装置10は、エッジのシャープニング効果を許容しない。その場合には、カテゴリー1,2の凹状エッジについては、正数オフセット値が必要であり、カテゴリー3,4の凸状エッジについては、負数オフセット値が必要である。その場合、エッジのカテゴリーが分かるのであるならば、オフセット値の符号を決定することができる。従って、ビデオ符号化装置10と、ビデオ復号化装置20は、オフセット値の符号は除外し、オフセット値の絶対値さえ送受信すればよい。
従って、ビデオ符号化装置10は、現在エッジクラスのカテゴリーごとに対応するオフセット値を符号化して送信し、ビデオ復号化装置20は、受信されたカテゴリー別オフセット値を利用して、復元ピクセルごとに、当該カテゴリーのオフセット値ほど調整することができる。
例えば、エッジタイプのオフセット値が0であると決定される場合、ビデオ符号化装置10は、オフセット値としてゼロ値情報のみを伝送することができる。
例えば、エッジタイプのオフセット値が0ではない場合には、ビデオ符号化装置10は、オフセット値としてゼロ値情報と絶対値とを伝送することができる。オフセット値の符号を伝送する必要がない。
ビデオ復号化装置20は、受信されたオフセット値からゼロ値情報を読み取り、0ではないならば、オフセット値の絶対値を読み取ることができる。オフセット値の符号は、復元ピクセルと隣接ピクセルとのエッジ形態によるエッジカテゴリーによって予測される。
従って、一実施形態によるビデオ符号化装置10は、エッジ方向、エッジ形態によってピクセルを分類し、同一特性のピクセル間の平均誤差値をオフセット値として決定し、カテゴリー別にオフセット値を決定することができる。ビデオ符号化装置10は、エッジタイプであるということを示すSAOタイプ情報、エッジ方向を示すSAOクラス情報、及びオフセット値を符号化して伝送することができる。
一実施形態によるビデオ復号化装置20は、SAOタイプ情報、SAOクラス情報及びオフセット値を受信し、SAOタイプ情報及びSAOクラス情報によって、エッジ方向を決定することができる。ビデオ復号化装置20は、復元ピクセルごとに、エッジ方向によるエッジ形態に対応するカテゴリー別オフセット値を決定し、復元ピクセルのピクセル値をオフセット値ほど調整することにより、原本映像と復元映像との誤差を最小化することができる。
次に、一実施形態によるSAO技法によって、バンドタイプによって、ピクセルを分類する実施形態について詳細に説明する。
一実施形態による、復元ピクセルのピクセル値は、それぞれバンドのうち一つに属することができる。例えば、ピクセル値の最小値Min及び最大値Maxは、pビットサンプリングによって、全範囲が0,…,2^(p−1)であってもよい。ピクセル値全範囲Min,Maxは、K個のピクセル値区間に分割される場合、各ピクセル値区間をバンドと称する。Bkがk番目バンドの最大値を示す場合、バンドは、[B0,B1−1]、[B1,B2−1]、[B2,B3−1],…,[BK−1,BK]に分割される。現在復元ピクセルRec(x,y)のピクセル値が[Bk−1,Bk]に属する場合、現在バンドは、kと決定される。バンドは、均等なタイプに分割されるか、あるいは非均等タイプに分割されてもよい。
例えば、ピクセル値分類タイプが、8ビットピクセルの均等バンドである場合、ピクセル値は、32個のバンドに分割される。具体的には、[0,7]、[8,15],…,[240,247]、[248,255]のバンドに分類される。
バンドタイプによって分類された多数のバンドのうち、復元ピクセルごとに、それぞれのピクセル値が属するバンドが決定される。また、それぞれのバンドごとに、原本ピクセルと復元ピクセルとの誤差の平均を示すオフセット値が決定される。
従って、ビデオ符号化装置10及びビデオ復号化装置20は、現在バンドタイプによって分類されたバンドごとに対応するオフセットを符号化して送受信し、復元ピクセルをオフセットほど調整することができる。
従って、一実施形態によるビデオ符号化装置10及びビデオ復号化装置20は、バンドタイプの場合、復元ピクセルをそれぞれのピクセル値が属するバンドによって分類し、同一バンドに属する復元ピクセル間の平均誤差値をオフセットとして決定し、復元ピクセルをオフセットほど調整することにより、原本映像と復元映像との誤差を最小化することができる。
一実施形態によるビデオ符号化装置10及びビデオ復号化装置20は、バンドタイプによるオフセットを決定するとき、復元ピクセルをバンド位置によるカテゴリーに分類することができる。例えば、ピクセル値の全範囲がK個のバンドに分類される場合、k番目バンドを示すバンドインデックスkによって、カテゴリーがインデクシングされる。バンド個数に相応し、カテゴリーの個数が決定される。
ただし、データ節減のために、ビデオ符号化装置10及びビデオ復号化装置20は、SAO技法によってオフセットを決定するために利用されるカテゴリーの個数を制限することができる。例えば、所定開始位置のバンドから、バンドインデックスが増加する方向に連続する所定個数のバンドだけがそれぞれカテゴリーに割り当てられ、各カテゴリーについてのみフセットが決定される。
例えば、インデックス12であるバンドが開始バンドとして決定される場合、開始バンドから4個のバンド、すなわち、インデックス12,13,14,15のバンドがそれぞれカテゴリー1,2,3,4に割り当てられる。従って、インデックス12のバンドに含まれる復元ピクセルの原本ピクセルとの平均誤差が、カテゴリー1のオフセットとして決定される。それと同様に、インデックス13のバンドに含まれる復元ピクセルの原本ピクセルとの平均誤差が、カテゴリー2のオフセットであり、インデックス14のバンドに含まれる復元ピクセルの原本ピクセルとの平均誤差が、カテゴリー3のオフセットであり、インデックス15のバンドに含まれる復元ピクセルの原本ピクセルとの平均誤差が、カテゴリー4のオフセットとして決定される。
そのような場合、カテゴリーに割り当てられるバンドの位置を決定するために、バンド範囲が始まる位置、すなわち、左側バンドの位置についての情報が必要である。従って、一実施形態によるビデオ符号化装置10は、SAOクラスとして、左側バンドの位置を示す左側開始地点情報を符号化して送信することができる。ビデオ符号化装置10は、バンドタイプであるということを示すSAOタイプ、SAOクラス及びカテゴリー別オフセット値を符号化して伝送することができる。
一実施形態によるビデオ復号化装置20は、SAOタイプ、SAOクラス及びカテゴリー別オフセット値を受信することができる。ビデオ復号化装置20は、受信されたSAOタイプがバンドタイプである場合、SAOクラスから、開始バンドの位置を読み取ることができる。ビデオ復号化装置20は、復元ピクセルが、開始バンドから4個のバンドのうちいずれのバンドに属するかということを決定し、カテゴリー別オフセット値のうち、現在バンドに割り当てられたオフセット値を決定し、復元ピクセル値をオフセット値ほど調整することができる。
以上、SAOタイプとして、エッジタイプ及びバンドタイプを紹介し、SAOタイプによるSAOクラス及びカテゴリーについて詳細に説明した。以下、ビデオ符号化装置10及びビデオ復号化装置20が符号化して送受信するSAOパラメータについて詳細に説明する。
一実施形態によるビデオ符号化装置10及びビデオ復号化装置20は、最大符号化単位ごとに、復元ピクセルのピクセル分類方式によって、SAOタイプを決定することができる。
各ブロックの映像特性によって、SAOタイプが決定される。例えば、垂直エッジ、水平エッジ、対角エッジなどを含む最大符号化単位は、エッジ値修正のために、エッジタイプによってピクセル値を分類し、オフセット値を決定する方が有利である。エッジ領域ではない場合には、バンド分類によってオフセット値を決定する方が有利でもある。従って、ビデオ符号化装置10及びビデオ復号化装置20は、最大符号化単位ごとに、SAOタイプをシグナリングすることができる。
一実施形態によるビデオ符号化装置10及びビデオ復号化装置20は、最大符号化単位ごとに、SAOパラメータを決定することができる。すなわち、最大符号化単位の復元ピクセルのSAOタイプを決定し、最大符号化単位の復元ピクセルをカテゴリー別に分類し、カテゴリー別にオフセット値が決定される。
ビデオ符号化装置10は、最大符号化単位に含まれた復元ピクセルのうち、同一カテゴリーに分類された復元ピクセルの平均誤差をオフセット値として決定することができる。各カテゴリーごとに、オフセット値が決定される。
一実施形態によるSAOパラメータは、SAOタイプ、オフセット値、SAOクラスを含んでもよい。ビデオ符号化装置10及びビデオ復号化装置20は、最大符号化単位ごとに決定されたSAOパラメータを送受信することができる。
一実施形態によるビデオ符号化装置10は、最大符号化単位のSAOパラメータのうち、SAOタイプ及びオフセット値を符号化して伝送することができる。SAOタイプがエッジタイプである場合、一実施形態によるビデオ符号化装置10は、SAOタイプ、カテゴリー別オフセット値に続いて、エッジ方向を示すSAOクラスをさらに伝送することができる。SAOタイプがバンドタイプである場合、一実施形態によるビデオ符号化装置10は、SAOタイプ、カテゴリー別オフセット値に続いて、開始バンドの位置を示すSAOクラスをさらに伝送することができる。
一実施形態によるビデオ復号化装置20は、最大符号化単位ごとに、SAOタイプ、オフセット値及びSAOクラスを含むSAOパラメータを受信することができる。また一実施形態によるビデオ復号化装置20は、カテゴリー別オフセット値のうちそれぞれの復元ピクセルが属するカテゴリーのオフセット値を選択し、復元ピクセルごとに選択されたオフセット値ほど調整することができる。
一実施形態によるSAOパラメータのうち、オフセット値を送受信する実施形態について、以下で説明する。
一実施形態によるビデオ符号化装置10は、オフセット値を伝送するために、ゼロ値情報をさらに伝送することができる。ゼロ値情報によって、符号情報、残りのオフセット値をさらに伝送することもできる。
一実施形態によるゼロ値情報は、1ビットフラグであってもよい。すなわち、オフセット値が0であるということを示す「0」フラグ、または0ではないということを示す「1」フラグが伝送される。
ゼロ値情報が「0」フラグである場合には、符号情報や残りのオフセット値がそれ以上符号化される必要がない。ただし、ゼロ値情報が「1」フラグである場合には、符号情報及び残りのオフセット値がさらに伝送される。
ただし、前述のように、エッジタイプの場合、カテゴリーによって、オフセット値が正数あるか、あるいは負数であるかということが予測可能であるので、符号情報が伝送される必要はない。従って、ゼロ値情報が「1」フラグである場合、残りのオフセット値がさらに伝送される。
一実施形態によるオフセット値Off-Setは、オフセット値を決定する以前に、事前に最小値MinOffSet及び最大値MaxOffSetの範囲に制限される(MinOffSet≦Off−Set≦MaxOffSet)。
例えば、エッジタイプの場合、カテゴリー1,2の復元ピクセルに係わるオフセット値は、最小値0及び最大値7の範囲内で決定される。エッジタイプの場合、カテゴリー3,4の復元ピクセルに係わるオフセット値は、最小値−7及び最大値0の範囲内で決定される。
例えば、バンドタイプの場合、すべてのカテゴリーの復元ピクセルに係わるオフセット値は、最小値−7ないし最大値7の範囲内で決定される。
一実施形態によるオフセット値に係わる伝送ビットを節減するために、残りのオフセット値Remainderを負数ではないpビット値に制限することができる。その場合、残りのオフセット値は、0より大きいか、あるいはそれと同じであるが、最大値と最小値のと差値よりは、小さいか、あるいはそれと同じである(0≦Remainder≦MaxOffSet−MinOffSet+1≦2^p)。ビデオ符号化装置10が残りのオフセット値を伝送し、ビデオ復号化装置20がオフセット値の最大値及び最小値のうち少なくとも一を知ることができるのであるならば、受信された残りのオフセット値だけで、原本オフセット値を復元することができる。
図6A、図6B及び図6Cは、第1クロマ成分と第2クロマ成分との関係を図示している。
一般的に、カラー映像のビデオ符号化/復号化過程で、映像情報は、ルマ成分、並びに第1クロマ成分及び第2クロマ成分に、カラー成分別に区分してメモリに保存される。図6A、図6B及び図6Cは、同一映像ブロックのカラー成分のうち、第1クロマ成分61と第2クロマ成分62とがインターリービング順序(interleaved-order)でメモリに区分して保存された形態を図示する。
まず、図6Aは、第1クロマ成分61及び第2クロマ成分62についてイントラ予測を行うとき、左側ブロック及び上端ブロックの隣接サンプルのうち参照するサンプルを図示する。第1クロマ成分61は、左側ブロックの隣接する第1クロマ成分65や、上端ブロックの隣接する第1クロマ成分63を参照することができる。第2クロマ成分62は、左側ブロックの隣接する第2クロマ成分66や、上端ブロックの隣接する第2クロマ成分64を参照することができる。
ただし、イントラ予測において、第1クロマ成分61及び第2クロマ成分62は、イントラ予測方向を共有することができる。従って、メモリに、インターリービング順序でそれぞれ保存されている左側ブロックまたは上端ブロックの第1クロマ成分63,65及び第2クロマ成分64,66を獲得し、第1クロマ成分61及び第2クロマ成分62に対するイントラ予測を同時に行うことができる。
また、動き補償を行うときにも、同一映像ブロックのルマ成分、第1クロマ成分61及び第2クロマ成分62は、いずれも動きベクトルを共有するので、第1クロマ成分61及び第2クロマ成分62に対するインター予測が同時に行われる。
また、ループフィルタリングを行うときにも、第1クロマ成分61及び第2クロマ成分62のために、同一サイズ及び同一係数のフィルターが利用されるので、第1クロマ成分61及び第2クロマ成分62に対するループフィルタリングが同時に行われる。
例えば、エッジタイプのSAO調整を行うとき、第1クロマ成分61及び第2クロマ成分62に対するSAO方式の関係について、図6B及び6Cを参照して詳細に説明する。
もし図6Bのように、現在第1クロマ成分611のSAOエッジ方向は、垂直方向に、現在第2クロマ成分621のSAOエッジ方向は、水平方向に異なって決定された場合を想定する。現在第1クロマ成分611のSAO調整のためには、現在第1クロマ成分611の上下に位置する第1クロマ成分613,615がメモリから獲得される。現在第2クロマ成分621のSAO調整のためには、現在第2クロマ成分621の左右に位置する第2クロマ成分623,625がメモリから獲得される。
第1クロマ成分61と第2クロマ成分62は、メモリにインターリービング順序で保存されているので、互いに異なる方向に保存されたサンプルが、デインターリービング過程を介して、メモリから同時に獲得されることはない。デインターリービング過程を介して、第1クロマ成分61に対するSAO動作を遂行した後、第2クロマ成分62に対するSAO動作を遂行し、さらにインターリービング過程を経なければならない。
従って、SAOエッジ方向が異なる場合、第1クロマ成分61及び第2クロマ成分62に対するSAO調整は、同時に行われることがない。第1クロマ成分61及び第2クロマ成分62に対するSAO動作を順次に遂行するならば、ビデオコーディングの並列処理過程でレイテンシが発生し、ビデオコーディング過程全体が遅延される。
しかし、図6Cのように、現在第1クロマ成分611と、現在第2クロマ成分621とのSAOエッジ方向が、同一に水平方向に決定された場合をさらに想定する。現在第1クロマ成分611のSAO調整のために、現在第1クロマ成分611の左右に位置する第1クロマ成分617,619がメモリから獲得される。現在第2クロマ成分621のSAO調整のために、現在第2クロマ成分621の左右に位置する第2クロマ成分623,625がメモリから獲得される。その場合、互いに同一方向に保存されたサンプルがメモリから同時に獲得されるので、第1クロマ成分61及び第2クロマ成分62に対するSAO調整は同時に行われる。
従って、図6Cのように、第1クロマ成分61及び第2クロマ成分62のように、SAOタイプが共有されるのであるならば、並列処理のレイテンシ発生を事前に防止し、クロマ成分に係わるSAOパラメータのビット数も2倍減縮される。
以下、一実施形態によるSAOパラメータのうちSAO併合情報について詳細に説明する。
各ブロックのSAOタイプ及び/またはオフセット値は、隣接したブロック間に同一であるという可能性が高い。一実施形態によるビデオ符号化装置10は、現在ブロックのSAOパラメータを隣接ブロックのSAOパラメータと比較し、SAOパラメータが同一である場合、現在ブロックと隣接ブロックとのSAOパラメータを一つに併合して符号化することができる。隣接ブロックのSAOパラメータが先に符号化されるのであるならば、現在ブロックのSAOパラメータとして、隣接ブロックのSAOパラメータを採択することができる。従って、ビデオ符号化装置10は、現在ブロックのSAOパラメータを符号化せず、現在ブロックについてSAO併合情報だけ符号化することができる。
一実施形態によるビデオ復号化装置20は、受信したビットストリームから、SAOパラメータをパージングする前に、SAO併合情報を先にパージングし、SAOパラメータのパージングいかんを決定することができる。ビデオ復号化装置20は、現在ブロックのSAO併合情報に基づいて、隣接ブロックのうち、現在ブロックと、SAOパラメータが同一であるブロックがあるか否かということを決定することができる。
例えば、SAO併合情報に基づいて、隣接ブロックのSAOパラメータのうち、現在ブロックのSAOパラメータが同一であるブロックがある場合、ビデオ復号化装置20は、現在ブロックのSAOパラメータをパージングせず、現在ブロックのSAOパラメータとして、隣接ブロックの復元されたSAOパラメータを採択することができる。従って、ビデオ復号化装置20は、隣接ブロックのSAOパラメータと同一に、現在ブロックのSAOパラメータを復元することができる。また、SAO併合情報に基づいて、隣接ブロックのうちいずれの隣接ブロックのSAOパラメータを参照するかということも決定される。
例えば、SAO併合情報に基づいて、隣接ブロックのSAOパラメータが、現在ブロックのSAOパラメータと異なっているいる場合、ビデオ復号化装置20は、ビットストリームから、現在ブロックのSAOパラメータをパージングして復元することができる。
図7Aは、一実施形態による、SAOパラメータを併合するために参照される隣接最大符号化単位652,653を図示している。
一実施形態によるビデオ符号化装置10は、現在最大符号化単位651より先行して復元された隣接最大符号化単位のうち、現在最大符号化単位のSAOパラメータの参照対象になる隣接最大符号化単位の候補リストを決定することができる。ビデオ符号化装置10は、候補リストの隣接最大符号化単位と、現在最大符号化単位とのSAOパラメータを比較することができる。
単純な例として、現在ブロック651と同一の現在ピクチャ65に位置する左側最大符号化単位653、上端最大符号化単位652が候補リストに属することができる。
従って、一実施形態によるビデオ符号化装置10は、候補リストに含まれた隣接最大符号化単位を参照順序により、現在最大符号化単位と、それぞれのSAOパラメータが同一であるか否かということを比較することができる。例えば、左側最大符号化単位653、上端最大符号化単位652の順序により、現在最大符号化単位と、SAOパラメータが比較される。比較された最大符号化単位653,652において、SAOパラメータが同一の最大符号化単位が、参照最大符号化単位として決定される。
ビデオ符号化装置10及びビデオ復号化装置20は、現在最大符号化単位のSAOパラメータを予測するために、同一の隣接最大符号化単位を参照することができる。また、いずれの最大符号化単位のSAOパラメータを参照するかということを示すSAO併合情報を送受信することができる。一実施形態によるビデオ復号化装置10は、SAO併合情報に基づいて、隣接する最大符号化単位のうち一つを選択し、選択された隣接最大符号化単位のSAOパラメータと同一に、現在最大符号化単位のSAOパラメータを復元することができる。
例えば、左側最大符号化単位653及び上端最大符号化単位652を参照する場合を想定する。一実施形態によるSAOパラメータ符号化部16は、SAO併合情報として、現在最大符号化単位651の左側最大符号化単位653のSAOパラメータが、現在最大符号化単位651のSAOパラメータと同一であるか否かということを示す左側SAO併合情報と、上端最大符号化単位652のSAOパラメータが、現在最大符号化単位651のSAOパラメータと同一であるか否かということを示す上端SAO併合情報と、を符号化することができる。その場合、まず、現在最大符号化単位651と、左側最大符号化単位653とのSAOパラメータが同一であるか否かということを比較し、その次に、現在最大符号化単位651と上端最大符号化単位652とのSAOパラメータが同一であるか否かということを比較することができる。比較結果によって、SAO併合情報が決定される。
最大符号化単位ブロック653及び最大符号化単位ブロック652のうち少なくとも1つのSAOパラメータが、現在最大符号化単位651のSAOパラメータと同一であるならば、SAOパラメータ符号化部16は、当該左側SAO併合情報及び上端SAO併合情報だけ符号化し、現在最大符号化単位651のSAOパラメータは、符号化しない。
左側最大符号化単位653及び上端最大符号化単位652のSAOパラメータが、いずれも現在最大符号化単位651のSAOパラメータと異なっているならば、SAOパラメータ符号化部16は、当該左側SAO併合情報及び上端SAO併合情報と、現在最大符号化単位651のSAOパラメータと、を符号化することができる。
以下、カラー成分別SAOパラメータについて詳細に説明する。
一実施形態によるビデオ符号化装置10及びビデオ復号化装置20は、カラー成分間で、SAOパラメータを相互予測することができる。
一実施形態によるビデオ符号化装置10及びビデオ復号化装置20は、YCrCbカラーフォーマットのルマブロック及びクロマブロックについて、いずれもSAO調整を行うことができる。現在最大符号化単位のルマ(Y)成分、第1クロマ(Cr)成分及び第2クロマ(Cb)成分ごとにオフセット値が決定される。
例えば、現在最大符号化単位のY成分、Cr成分及びCb成分について共通のSAO併合情報が適用される。すなわち、1つのSAO併合情報に基づいて、Y成分のSAOパラメータが、隣接最大符号化単位のY成分のSAOパラメータと同一であるか否かということが決定され、Cr成分のSAOパラメータが、隣接最大符号化単位のCr成分のSAOパラメータと同一であるか否かということが決定され、Cb成分のSAOパラメータが、隣接最大符号化単位のCb成分のSAOパラメータと同一であるか否かということが決定される。
例えば、現在最大符号化単位のCr成分及びCb成分について、共通のSAOタイプ情報が適用される。すなわち、1つのSAOタイプ情報に基づいて、Cr成分及びCb成分について同時にSAO調整が行われるか、あるいは同時に行われないかということが決定される。また、1つのSAOタイプ情報に基づいて、Cr成分及びCb成分がエッジタイプであるか、あるいはバンドタイプであるかということにより、オフセット値が決定されるかということが分かる。1つのSAOタイプ情報に基づいて、SAOタイプがエッジタイプであるならば、Cr成分及びCb成分が、同一のエッジ方向を共有することができる。
すなわち、1つのSAOタイプ情報に基づいて、Cr成分及びCb成分がエッジタイプであるか、あるいはバンドタイプであるかということにより、オフセット値が決定されるかということが分かる。
また、1つのSAOタイプ情報に基づいて、Cr成分及びCb成分が同一のSAOクラスを共有することができる。1つのSAOタイプ情報に基づいて、SAOタイプがエッジタイプであるならば、Cr成分及びCb成分が同一のエッジ方向を共有することができる。1つのSAOタイプ情報に基づいて、SAOタイプがバンドタイプであるならば、Cr成分及びCb成分が、同一の左側バンド開始位置を共有することができる。
以下、図7Bないし図7Fを参照し、現在最大符号化単位のカラー成分別に、SAOパラメータが定義されたシンタックス構造について詳細に説明する。一実施形態によるビデオ復号化装置20は、図7Bないし図7Fに図示されたシンタックスをパージングしてSAOパラメータを獲得し、SAO調整を行うことができる。
図7Bは、一実施形態によるスライスヘッダ700と、スライスデータ705とのシンタックス構造を図示している。
一実施形態によるスライスヘッダ700は、現在スライスでSAO調整が行われるか否かということを示す少なくとも1つのSAOパラメータ701,702,703を含んでいる。
まず、一実施形態によるビデオ復号化装置20は、スライスヘッダ700から、「slice_sample_adaptive_offset_flag[0]」701を獲得し、ルマ成分のためのSAO調整が行われるか否かということを決定することができる。
もしルマ成分のためのSAO調整が行われるならば、一実施形態によるビデオ復号化装置20は、スライスヘッダ700から、「slice_sample_adaptive_offset_flag[1]」702を獲得し、第1クロマ成分のためのSAO調整が行われるか否かということを決定することができる。
そのとき、一実施形態によるビデオ復号化装置20は、スライスヘッダ700から、第2クロマ成分のためのSAO調整が行われるか否かということを示すパラメータを追加して獲得しなくてもよい。第2クロマ成分のためのSAO調整が行われるか否かということを示す情報「slice_sample_adaptive_offset_flag[2]」703は、まず、スライスヘッダ700から獲得された「slice_sample_adaptive_offset_flag[1]」702と同一に予測することができる。従って、第1クロマ成分及び第2クロマ成分については、SAO調整が同時に行われるか、あるいは同時に行われない。
ビデオ復号化装置20は、スライスヘッダ700から決定された「slice_sample_adaptive_offset_flag[0]」701、「slice_sample_adaptive_offset_flag[1]」、「slice_sample_adaptive_offset_flag[2]」703に基づいて、スライスデータ705から最大符号化単位別に、SAOパラメータ706を獲得するか否かということを決定することができる。
図7C及び図7Dは、一実施形態による、最大符号化単位に係わるSAOパラメータ706,709のシンタックス構造を図示している。
一実施形態によるビデオ復号化装置20は、最大符号化単位に係わるSAOパラメータ「sao_unit_cabac(rx,ry,cIdx)」706から、左側SAO併合情報707を獲得することができる。そのとき、ルマ成分、第1クロマ成分及び第2クロマ成分を区別せずに、共通の左側SAO併合情報「sao_merge_left_flag[rx]」[ry]」707が獲得される。それにより、ビデオ復号化装置20は、共通の左側SAO併合情報707に基づいて、現在最大符号化単位のルマ成分、第1クロマ成分及び第2クロマ成分のSAOパラメータとして、左側最大符号化単位のSAOパラメータが利用されるか否かということを同時に同一に決定することができる。
また、左側SAO併合情報707に基づいて、左側最大符号化単位のSAOパラメータを参照しないと判断されれば、一実施形態によるビデオ復号化装置20は、最大符号化単位に係わるSAOパラメータ706から、上端SAO併合情報「sao_merge_up_flag[rx]」[ry]」708を獲得することができる。同様に、ルマ成分、第1クロマ成分及び第2クロマ成分を区別せずに、共通の上端SAO併合情報707が獲得される。それにより、ビデオ復号化装置20は、共通の上端SAO併合情報708に基づいて、現在最大符号化単位のルマ成分、第1クロマ成分及び第2クロマ成分のSAOパラメータとして、上端最大符号化単位のSAOパラメータが利用されるか否かということを同時に決定することができる。
もし上端SAO併合情報708に基づいて、上端最大符号化単位のSAOパラメータも、参照しないと判断されれば、一実施形態によるビデオ復号化装置20は、最大符号化単位に係わるSAOパラメータ706から、現在最大符号化単位に係わる現在SAOパラメータ709を直接獲得することができる。
一実施形態による現在SAOパラメータ709は、現在最大符号化単位のSAOタイプ情報711を含んでもよい。一実施形態によるビデオ復号化装置20は、現在SAOパラメータ709から、ルマ成分及びクロマ成分について別個に定義されたSAOタイプ情報711を獲得することができる。従って、第1クロマ成分及び第2クロマ成分については、共通のSAOタイプ情報「sao_type_idx[cIdx]」[rx][ry]」711が獲得される。例えば、現在最大符号化単位の第1クロマ成分について、SAOタイプ情報711が獲得されれば、第2クロマ成分に係わるSAOタイプ情報は、第1クロマ成分について、SAOタイプ情報711から予測される。
一実施形態によるSAOタイプ情報711から、現在最大符号化単位についてSAO調整が行われるか否かということを示す1ビットが獲得される。最初の1ビットから、SAO調整が行われると決定されるのであるならば、SAOタイプ情報711から、2番目の1ビットが獲得され、2番目の1ビットから、エッジタイプであるかバンドタイプであるかということが決定される。
SAOタイプ情報711の2番目の1ビットから、エッジタイプであると決定されるのであるならば、一実施形態によるビデオ復号化装置20は、SAOタイプ情報711の残りのビットから、エッジカテゴリーについての情報を獲得することができる。
SAOタイプ情報711の2番目の1ビットから、バンドタイプであると決定されるのであるならば、一実施形態によるビデオ復号化装置20は、SAOタイプ情報711の残りのビットから、バンドカテゴリーについての情報を獲得することができる。
また、一実施形態によるビデオ復号化装置20は、ルマ成分に係わるSAOタイプ情報711の1ビットに基づいて、現在最大符号化単位のルマ成分に対するSAO調整が行われるか否かということを決定することができる。また、一実施形態によるビデオ復号化装置20は、クロマ成分に係わるSAOタイプ情報711の1ビットに基づいて、現在最大符号化単位の第1クロマ成分及び第2クロマ成分に対するSAO調整が行われるか否かということを決定することができる。
ルマ成分またはクロマ成分に係わるSAOタイプ情報711に基づいて、現在最大符号化単位のルマ成分またはクロマ成分についてSAO調整が行われないと決定されれば、SAOタイプ情報711から、次のビットが獲得されない。そのようなSAOタイプ情報711は、トランケーティッドユーナリコード(truncated unary code)の形態で受信される。
一実施形態によって、クロマ成分に係わるSAOタイプ情報711は、一つだけ符号化されるので、一実施形態によるビデオ復号化装置20は、第1クロマ成分について決定されたSAOタイプ情報711は、第2クロマ成分のためのSAOタイプ情報と決定することができる。
また、一実施形態によるビデオ復号化装置20は、現在最大符号化単位に係わるSAOパラメータ「sao_offset_cabac(rx,ry,cIdx)」709から、ルマ成分のためのエッジクラス情報、及びクロマ成分のためのエッジクラス情報を獲得することもできる。エッジクラスは、水平(0゜)、垂直(90゜)、135゜対角線、45゜対角線の4種エッジ方向を示すことができるので、2ビットで定義される。
図7Fは、一実施形態による、SAOタイプによるSAOパラメータのシンタックス構造を図示している。図7D及び図7Fを参照すれば、SAOタイプ情報711に基づいて、SAO調整が行われるならば、SAOパラメータ706,709は、オフセット値「sao_offset[cIdx][rx][ry][i]」713及びオフセット符号情報「sao_offset_sign[cIdx][rx][ry][i]」715のうち少なくとも一つをさらに含んでもよい。
一実施形態によるオフセット値713のCABAC符号化のためのコンテクスト・モデリングは、図7Eを参照して詳細に説明する。図7Eは、一実施形態による、SAOパラメータのCABAC符号化のためのコンテクスト情報のシンタックス構造を図示している。
すなわち、図7D及び図7Fのように、SAOパラメータ706,709からオフセット値713を全部獲得するのではなく、ビデオ復号化装置20は、図7Eのように、オフセット値713の大きさの最初の1ビット「sao_offset_abs_1st_bin[cIdx][rx][ry][i]」721だけ先に獲得することができる。オフセット値が0ではなく、最初の1ビットが0ではない場合、ビデオ復号化装置20は、オフセット値713の大きさの残りのビット「sao_offset_abs_remain_bins[cIdx][rx][ry][i]」723も獲得することができる。
オフセット値713の最初のビットと、残りのビットとを分離することにより、残りのビットは、バイパスモードでCABAC復号化される。
また、ビデオ復号化装置20は、オフセット値が0ではない場合にのみ、SAOパラメータ706,709から、オフセット値の符号情報「sao_offset_sign[cIdx][rx][ry][i]」715も獲得することができる。
また、オフセット値の符号情報「sao_offset_sign[cIdx][rx][ry][i]」715は、SAOタイプがバンドタイプでありながら、オフセット値が0ではない場合にのみ獲得される。SAOタイプがエッジタイプである場合には、エッジクラスが、最高点、最低点、凹状エッジ、凸状エッジであるかということにより、オフセット値の符号が決定されるからである。
再び図7Fを参照すれば、SAOタイプがバンドタイプである場合、SAOパラメータ706から、オフセット値の符号情報715と共に、左側バンド開始地点についての情報「sao_band_position[cIdx][rx][ry]」717)が獲得される。
一実施形態によるビデオ復号化装置20は、SAOパラメータ706,709についてCABAC復号化を行うことができる。SAOパラメータ706,709のCABAC復号化のために、SAOパラメータ706,709のうち、左側SAO併合情報707、上端SAO併合情報708、オフセット値情報713、SAOタイプ情報711に対するコンテクスト・モデリングが行われる。
まず、オフセット値情報713で、オフセット値は、ビットデプスによってその絶対値サイズが制限される。絶対値サイズの最大値は、以下の数式によって決定される。
Offset_abs_max=(1<<(Min(bitDepth,10)−5))−1
例えば、8ビットのビットデプス復号化の場合、オフセット値の絶対値サイズは、0ないし7である。他の例として、10ビットのビットデプス復号化の場合、オフセット値の絶対値サイズは、0ないし31である。
そのようなオフセット値の大きさ制限を保証するために、オフセット値情報713は、トランケーティッドユーナリコードを利用して符号化される。
一実施形態によるビデオ復号化装置20は、オフセット値情報713において、最初の1ビットに係わるコンテクストモデルのみを利用することができ、オフセット値情報713の残りのビットについては、バイパスモードで、CABAC復号化を行うことができる。
一実施形態によるSAOタイプ情報711は、0ないし5の値を有する。SAOタイプ情報711で、現在最大符号化単位のSAO調整いかんを示す最初の1ビットについてのみ、2個のコンテクストモデルを利用したCABAC復号化が行われる。SAOタイプ情報711で、最初の1ビットを除いた残りのビットについては、バイパスモードで、CABAC復号化が行われる。
一実施形態による左側SAO併合情報707は、ルマ、第1クロマ成分及び第2クロマ成分に共有される1つのコンテクストモデルを利用して、CABAC復号される。また、一実施形態による上端SAO併合情報708は、ルマ、第1クロマ成分及び第2クロマ成分に共有される1つのコンテクストモデルを利用して、CABAC復号される。
従って、一実施形態によって、SAOパラメータ706,709に対して、CABAC復号化のために、総5個のコンテクストが利用される。従って、オフセット値の全てのビンについてコンテクストモデルを決定し、カラー成分別に、左側SAO併合情報を共有しない場合に比べ、3個のコンテクストモデルを減縮することができる。CABAC復号化のためのコンテックスモデルが減縮され、メモリに保存されなければならないデータ保存量が低減される。また、多数のSAOパラメータのビンが、バイパスモードで、CABAC符号化されるので、CABAC演算量及び伝送ビットも低減される。
SAOパラメータ709において、左側バンド開始地点情報「sao_band_position[cIDx][rx][ry]」717は、5ビットの固定ビットトレングスを有し、最大値31を有する。一実施形態によるビデオ復号化装置20は、左側バンド開始地点情報717について、固定ビットトレングスのバイパスモードで、CABAC復号化することができる。
一実施形態による、CABAC復号化を介して、SAOパラメータから各種SAO関連情報がパージングされる過程について、以下で説明する。
SAOパラメータから、ルマ成分のSAOタイプ(SAO type)がパージングされる。SAOタイプがオフタイプ(OFF)である場合、ルマ成分についてSAO技法によるオフセット調整が行われないので、クロマ成分のSAOパラメータがパージングされる。
ルマ成分のSAOタイプがエッジタイプ(EO)である場合、SAOパラメータから4個のカテゴリー別に、ルマオフセット値(Luma offsets)がパージングされる。エッジタイプのオフセット値は、符号情報なしにパージングされる。SAOパラメータから、2ビットのルマエッジクラス(Luma EO class)がパージングされる。ルマエッジクラスから、現在最大符号化単位のルマ成分のエッジ方向が決定される。
前述のように、エッジ形態を示す4個のカテゴリー別に、オフセット値が受信されるので、総4個のオフセット値になる。現在最大符号化単位の各ルマ復元ピクセルがエッジ方向によって隣接するピクセルとのピクセル値を比較し、いかなるエッジ形態であるかということが決定され、それにより、カテゴリーが決定されるので、受信されたオフセット値のうち現在カテゴリーのオフセット値が選択される。選択されたオフセット値を利用して、ルマ復元ピクセルのピクセル値が調整される。
ルマ成分のSAOタイプがバンドタイプ(BO)である場合、SAOパラメータから、4個のカテゴリー別に、ルマオフセット値がパージングされる。バンドタイプのオフセット値は、符号情報と共にパージングされる。SAOパラメータから、5ビットのルマバンドクラスがパージングされる。ルマバンドクラスから、現在最大符号化単位の復元ピクセルのピクセル値バンドのうち、左側バンド開始地点が決定される。
前述のように、開始バンド位置から連続する4個のバンドを示す4個のカテゴリー別に、オフセット値が受信されるので、総4個のオフセット値になる。現在最大符号化単位の各ルマ復元ピクセルのピクセル値が、4個のバンドのうちいずれのバンドに属するかということが決定され、それにより、カテゴリーが決定されるので、受信されたオフセット値のうち現在カテゴリーのオフセット値が選択される。選択されたオフセット値を利用して、ルマ復元ピクセルのピクセル値が調整される。
次に、SAOパラメータから、クロマ成分のSAOタイプがパージングされる。SAOタイプは、Cr成分及びCb成分に共通して適用される。SAOタイプがオフタイプである場合、クロマ成分についてSAO技法によるオフセット調整が行われないので、現在最大符号化単位のSAOパラメータ過程が終わる。
クロマ成分のSAOタイプがエッジタイプ(EO)である場合、SAOパラメータから、4個のカテゴリー別に、Cbオフセット値がパージングされる。エッジタイプのCbオフセット値は、符号情報なしにパージングされる。SAOパラメータから、2ビットのクロマエッジクラスがパージングされる。クロマエッジクラスから、現在最大符号化単位のクロマ成分のエッジ方向が決定される。クロマエッジクラスも、Cr成分及びCb成分に共通して適用される。SAOパラメータから、4個のカテゴリー別に、Crオフセット値がパージングされる。
ルマ成分のエッジタイプのオフセット調整過程と同様に、Cr成分別及びCb成分別にそれぞれ受信された4個のオフセット値のうち現在カテゴリーのオフセット値が選択される。選択されたオフセット値を利用して、Cr成分の復元ピクセルとCb成分の復元ピクセルとのピクセル値がそれぞれ調整される。
クロマ成分のSAOタイプがバンドタイプ(BO)である場合、SAOパラメータから、4個のカテゴリー別に、Cb成分のオフセット値が符号情報と共にパージングされる。SAOパラメータから、5ビットのCbバンドクラスがパージングされる。Cbバンドクラスから、現在最大符号化単位のCb成分の復元ピクセルのCb左側バンド開始地点が決定される。4個のカテゴリー別に、Cr成分のオフセット値が符号情報と共にパージングされる。5ビットのCrバンドクラスがパージングされる。Crバンドクラスから、現在最大符号化単位のCr成分の復元ピクセルのCr左側バンド開始地点が決定される。
ルマ成分のバンドタイプのオフセット調整過程と同様に、Cr,Cb成分別に受信された4個のオフセット値のうち、現在カテゴリーのオフセット値が選択される。Cr,Cb成分別にそれぞれ選択されたオフセット値を利用して、Cr,Cb成分の復元ピクセルのピクセル値がそれぞれ調整される。
従って、一実施形態によるSAO技法を利用するビデオ符号化装置10及びビデオ復号化装置20,30は、最大符号化単位のエッジタイプまたはバンドタイプのような映像特性によってピクセル値を分類し、同一の特性として分類されたピクセル値の平均誤差値であるオフセット値をシグナリングし、復元ピクセルのうち予想できないピクセル値をオフセット値ほど調整することにより、原本映像と復元映像との誤差を最小することができる。
一実施形態によるビデオ符号化装置10、及び他の実施形態によるビデオ復号化装置20で、ビデオデータが分割されるブロックが最大符号化単位に分割され、最大符号化単位ごとに、ツリー構造の符号化単位を基に符号化/復号化され、最大符号化単位ごとに、ピクセル分類によるオフセット値を決定することができるということは、前述の通りである。以下、図8ないし図20を参照し、一実施形態によるツリー構造の符号化単位及び変換単位に基づいたビデオ符号化方法及びその装置、並びにビデオ復号化方法及びその装置について開示する。
図8は、本発明の一実施形態による、ツリー構造による符号化単位に基づいたビデオ符号化装置100のブロック図を図示している。
一実施形態による、ツリー構造による符号化単位に基づいたビデオ予測を伴うビデオ符号化装置100は、最大符号化単位分割部110、符号化単位決定部120及び出力部130を含む。以下、説明の便宜のために、一実施形態による、ツリー構造による符号化単位に基づいたビデオ予測を伴うビデオ符号化装置100は、「ビデオ符号化装置100」と縮約して指称する。
最大符号化単位分割部110は、映像の現在ピクチャのための最大サイズの符号化単位である最大符号化単位に基づいて、現在ピクチャを区画することができる。現在ピクチャが最大符号化単位より大きければ、現在ピクチャの映像データは、少なくとも1つの最大符号化単位に分割される。一実施形態による最大符号化単位は、サイズ32x32,64x64,128x128,256x256のようなデータ単位であり、縦横サイズが2の累乗である正方形のデータ単位であってもよい。映像データは、少なくとも1つの最大符号化単位別に、符号化単位決定部120に出力される。
一実施形態による符号化単位は、最大サイズ及び深度で特徴づけられる。深度とは、最大符号化単位から符号化単位が空間的に分割された回数を示し、深度が深くなるほど、深度別符号化単位は、最大符号化単位から最小符号化単位まで分割される。最大符号化単位の深度が最上位深度であり、最小符号化単位が最下位符号化単位であると定義される。最大符号化単位は、深度が深くなるにつれ、深度別符号化単位の大きさは小さくなるので、上位深度の符号化単位は、複数個の下位深度の符号化単位を含んでもよい。
前述のように、符号化単位の最大サイズによって、現在ピクチャの映像データを最大符号化単位に分割し、それぞれの最大符号化単位は、深度別に分割される符号化単位を含んでもよい。一実施形態による最大符号化単位は、深度別に分割されるので、最大符号化単位に含まれた空間領域(spatial domain)の映像データが深度によって階層的に分類される。
最大符号化単位の高さ及び幅を階層的に分割することができる総回数を制限する最大深度及び符号化単位の最大サイズが事前に設定される。
符号化単位決定部120は、深度ごとに最大符号化単位の領域が分割された少なくとも1つの分割領域を符号化し、少なくとも1つの分割領域別に、最終符号化結果が出力される深度を決定する。すなわち、符号化単位決定部120は、現在ピクチャの最大符号化単位ごとに、深度別符号化単位で映像データを符号化し、最小の符号化誤差が発生する深度を選択し、符号化深度として決定する。決定された符号化深度及び最大符号化単位別映像データは、出力部130に出力される。
最大符号化単位内の映像データは、最大深度以下の少なくとも1つの深度によって、深度別符号化単位に基づいて符号化され、それぞれの深度別符号化単位に基づいた符号化結果が比較される。深度別符号化単位の符号化誤差の比較結果、符号化誤差が最小である深度が選択される。それぞれの最大化符号化単位ごとに、少なくとも1つの符号化深度が決定される。
最大符号化単位の大きさは、深度が深くなるにつれ、符号化単位が階層的に分割されて分割され、符号化単位の個数は増加する。また、1つの最大符号化単位に含まれる同一の深度の符号化単位としても、それぞれのデータに係わる符号化誤差を測定し、下位深度への分割いかんが決定される。従って、1つの最大符号化単位に含まれるデータであるとしても、位置によって、深度別符号化誤差が異なるので、位置によって、符号化深度が異なって決定される。従って、1つの最大符号化単位について、符号化深度が一つ以上設定され、最大符号化単位のデータは、一つ以上の符号化深度の符号化単位によって区画される。
従って、一実施形態による符号化単位決定部120は、現在最大符号化単位に含まれるツリー構造による符号化単位が決定される。一実施形態による「ツリー構造による符号化単位」は、現在最大符号化単位に含まれる全ての深度別符号化単位において、符号化深度として決定された深度の符号化単位を含む。符号化深度の符号化単位は、最大符号化単位内で、同一領域では、深度によって階層的に決定され、他の領域については、独立して決定される。同様に、現在領域に対する符号化深度は、他の領域に係わる符号化深度と独立して決定される。
一実施形態による最大深度は、最大符号化単位から最小符号化単位までの分割回数と係わる指標である。一実施形態による第1最大深度は、最大符号化単位から最小符号化単位までの全分割回数を示すことができる。一実施形態による第2最大深度は、最大符号化単位から最小符号化単位までの深度レベルの総個数を示すことができる。例えば、最大符号化単位の深度が0であるとするとき、最大符号化単位が1回分割された符号化単位の深度は、1に設定され、2回分割された符号化単位の深度は、2に設定される。その場合、最大符号化単位から4回分割された符号化単位が最小符号化単位であるならば、深度0,1,2,3及び4の深度レベルが存在するので、第1最大深度は4、第2最大深度は5に設定される。
最大符号化単位の予測符号化及び変換が行われる。予測符号化及び変換も同様に、最大符号化単位ごとに、最大深度以下の深度ごとに、深度別符号化単位を基に行われる。
最大符号化単位が深度別に分割されるたびに深度別符号化単位の個数が増加するので、深度が深くなるにつれて生成される全ての深度別符号化単位について、予測符号化及び変換を含んだ符号化が行われなければならない。以下、説明の便宜のために、少なくとも1つの最大符号化単位のうち、現在深度の符号化単位を基に、予測符号化及び変換について説明する。
一実施形態によるビデオ符号化装置100は、映像データの符号化のためのデータ単位の大きさまたは形態を多様に選択することができる。映像データの符号化のためには、予測符号化、変換、エントロピー符号化のような段階を経るが、全ての段階にわたって、同一のデータ単位が使用され、段階別にデータ単位が変更されてもよい。
例えば、ビデオ符号化装置100は、映像データの符号化のための符号化単位だけではなく、符号化単位の映像データの予測符号化を行うために、符号化単位と異なるデータ単位を選択することができる。
最大符号化単位の予測符号化のためには、一実施形態による符号化深度の符号化単位、すなわち、それ以上分割されない符号化単位を基に予測符号化が行われる。以下、予測符号化の基になるそれ以上分割されない符号化単位を「予測単位」とする。予測単位が分割されたパーティションは、予測単位及び予測単位の高さ及び幅のうち少なくとも一つが分割されたデータ単位を含んでもよい。パーティションは、符号化単位の予測単位が分割された形態のデータ単位であり、予測単位は、符号化単位と同一サイズのパーティションである。
例えば、サイズ2Nx2N(ただし、Nは、正の整数)の符号化単位がそれ以上分割されない場合、サイズ2Nx2Nの予測単位になり、パーティションの大きさは、2Nx2N、2NxN、Nx2N、NxNなどであってもよい。一実施形態によるパーティションタイプは、予測単位の高さまたは幅が対称的な比率に分割された対称的パーティションだけではなく、1:nまたはn:1のように、非対称的な比率に分割されたパーティション、幾何学的なタイプに分割されたパーティション、任意的形態のパーティションなどを選択的に含んでもよい。
予測単位の予測モードは、イントラモード、インターモード及びスキップモードのうち少なくとも一つであってもよい。例えば、イントラモード及びインターモードは、2Nx2N,2NxN,Nx2N,NxNサイズのパーティションについて実行される。また、スキップモードは、2Nx2Nサイズのパーティションについてのみ実行される。符号化単位以内の1つの予測単位ごとに、独立して符号化が行われ、符号化誤差が最小である予測モードが選択される。
また、一実施形態によるビデオ符号化装置100は、映像データの符号化のための符号化単位だけではなく、符号化単位と異なるデータ単位を基に、符号化単位の映像データの変換を行うことができる。符号化単位の変換のためには、符号化単位より小さいか、あるいはそれと同サイズの変換単位を基に変換が行われる。例えば、変換単位は、イントラモードのためのデータ単位、及びインターモードのための変換単位を含んでもよい。
一実施形態によるツリー構造による符号化単位と類似した方式で、符号化単位内の変換単位も、再帰的にさらに小サイズの変換単位に分割されながら、符号化単位の残差データが、変換深度によって、ツリー構造による変換単位によって区画される。
一実施形態による変換単位についても、符号化単位の高さ及び幅が分割され、変換単位に至るまでの分割回数を示す変換深度が設定される。例えば、サイズ2Nx2Nの現在符号化単位の変換単位サイズが2Nx2Nであるならば、変換深度0に、変換単位サイズがNxNであるならば、変換深度1に、変換単位サイズがN/2xN/2であるならば、変換深度2に設定される。すなわち、変換単位についても、変換深度によって、ツリー構造による変換単位が設定される。
符号化深度別符号化情報は、符号化深度だけではなく、予測関連情報及び変換関連情報が必要である。従って、符号化単位決定部120は、最小符号化誤差を発生させた符号化深度だけではなく、予測単位をパーティションに分割したパーティションタイプ、予測単位別予測モード、変換のための変換単位サイズなどを決定することができる。
一実施形態による最大符号化単位のツリー構造による符号化単位及び予測単位/パーティション、及び変換単位の決定方式については、図17ないし図19を参照し、詳細に説明する。
符号化単位決定部120は、深度別符号化単位の符号化誤差をラグランジュ乗数(Lagrangian multiplier)基盤の率・歪曲最適化技法(rate-distortion optimization)を利用して測定することができる。
出力部130は、符号化単位決定部120で決定された少なくとも1つの符号化深度に基づいて符号化された最大符号化単位の映像データ、及び深度別符号化モードに係わる情報をビットストリーム形態に出力する。
符号化された映像データは、映像の残差データの符号化結果であってもよい。
深度別符号化モードに係わる情報は、符号化深度情報、予測単位のパーティションタイプ情報、予測モード情報、変換単位サイズ情報などを含んでもよい。
符号化深度情報は、現在深度で符号化せず、下位深度の符号化単位で符号化するか否かということを示す深度別分割情報を利用して定義される。現在符号化単位の現在深度が符号化深度であるならば、現在符号化単位は、現在深度の符号化単位で符号化されるので、現在深度の分割情報は、それ以上下位深度に分割されないように定義される。反対に、現在符号化単位の現在深度が符号化深度ではないならば、下位深度の符号化単位を利用した符号化を試みなければならないので、現在深度の分割情報は、下位深度の符号化単位に分割されるように定義される。
現在深度が符号化深度ではないならば、下位深度の符号化単位に分割された符号化単位について符号化が行われる。現在深度の符号化単位内に、下位深度の符号化単位が一つ以上存在するので、それぞれの下位深度の符号化単位ごとに、反復して符号化が行われ、同一の深度の符号化単位ごとに、再帰的(recursive)符号化が行われる。
1つの最大符号化単位内でツリー構造の符号化単位が決定され、符号化深度の符号化単位ごとに、少なくとも1つの符号化モードに係わる情報が決定されなければならないので、1つの最大符号化単位については、少なくとも1つの符号化モードに係わる情報が決定される。また、最大符号化単位のデータは、深度によって階層的に区画され、位置別に符号化深度が異なるので、データについて、符号化深度及び符号化モードに係わる情報が設定される。
従って、一実施形態による出力部130は、最大符号化単位に含まれている符号化単位、予測単位及び最小単位のうち少なくとも一つについて、当該符号化深度及び符号化モードに係わる符号化情報を割り当てられる。
一実施形態による最小単位は、最下位符号化深度である最小符号化単位が4分割された大きさの正方形のデータ単位である。一実施形態による最小単位は、最大符号化単位に含まれる全ての符号化単位、予測単位、パーティション単位及び変換単位の中に含まれる最大サイズの正方形データ単位であってもよい。
例えば、出力部130を介して出力される符号化情報は、深度別符号化単位別符号化情報と、予測単位別符号化情報とに分類される。深度別符号化単位別符号化情報は、予測モード情報、パーティションサイズ情報を含んでもよい。予測単位別に伝送される符号化情報は、インターモードの推定方向に係わる情報、インターモードの参照映像インデックスに係わる情報、動きベクトルに係わる情報、イントラモードのクロマ成分に係わる情報、イントラモードの補間方式に係わる情報などを含んでもよい。
ピクチャ、スライスまたはGOP(group of picture)別に定義される符号化単位の最大サイズに係わる情報、及び最大深度に係わる情報は、ビットストリームのヘッダ、シーケンスパラメータセットまたはピクチャパラメータセットなどに挿入される。
また、現在ビデオについて許容される変換単位の最大サイズに係わる情報、及び変換単位の最小大きさに係わる情報も、ビットストリームのヘッダ、シーケンスパラメータセットまたはピクチャパラメータセットなどを介して出力される。出力部130は、図1Aないし図7Fを参照して説明したオフセット調整技法と係わるSAOパラメータを符号化して出力することができる。
ビデオ符号化装置100の最も簡単な形態の実施形態によれば、深度別符号化単位は、1階層上位深度の符号化単位の高さ及び幅を半分にした大きさの符号化単位である。すなわち、現在深度の符号化単位の大きさが2Nx2Nであるならば、下位深度の符号化単位の大きさは、NxNである。また、2Nx2Nサイズの現在符号化単位は、NxNサイズの下位深度符号化単位を最大4個含んでもよい。
従って、ビデオ符号化装置100は、現在ピクチャの特性を考慮して決定された最大符号化単位の大きさ及び最大深度を基に、それぞれの最大符号化単位ごとに、最適の形態及び大きさの符号化単位を決定し、ツリー構造による符号化単位を構成することができる。また、それぞれの最大符号化単位ごとに、多様な予測モード、変換方式などで符号化することができるので、多様な映像サイズの符号化単位の映像特性を考慮し、最適の符号化モードが決定される。
従って、映像の解像度が非常に高いか、あるいはデータ量が非常に多い映像を既存マクロブロック単位で符号化するならば、ピクチャ当たりマクロブロックの数が過度に多くなる。それにより、マクロブロックごとに生成される圧縮情報も多くなるので、圧縮情報の伝送負担が大きくなり、データ圧縮効率が低下するという傾向がある。従って、一実施形態によるビデオ符号化装置は、映像の大きさを考慮し、符号化単位の最大サイズを増大させながら、映像特性を考慮して符号化単位を調節することができるので、映像圧縮効率が上昇する。
図8のビデオ符号化装置100は、図1Aを参照して説明したビデオ符号化装置10の動作を遂行することができる。
符号化単位決定部120は、ビデオ符号化装置10のSAOパラメータ決定部14の動作を遂行することができる。最大符号化単位ごとに、SAOタイプ、カテゴリー別オフセット値及びSAOクラスが決定される。
出力部130は、SAOパラメータ符号化部16の動作を遂行することができる。最大符号化単位ごとに決定されたSAOパラメータが出力される。現在最大符号化単位に隣接する最大符号化単位のSAOパラメータを、現在SAOパラメータとして採用するか否かということを示すSAO併合情報がまず最初に出力される。SAOタイプとして、オフタイプ、エッジタイプ、バンドタイプが出力される。オフセット値は、ゼロ値情報、符号情報、残りのオフセット値の順序で出力される。エッジタイプの場合、オフセット値の符号情報は、出力されないこともある。
現在最大符号化単位のSAO併合情報が、隣接する最大符号化単位のSAOパラメータを採用することを許容する場合には、現在最大符号化単位のSAOタイプ及びオフセット値が出力されないこともある。
カラー成分別にSAO調整の遂行いかんが決定される。スライスごとに、ルマ成分のためのSAO調整いかんが決定され、第1クロマ成分及び第2クロマ成分のためのSAO調整いかんが決定される。出力部130は、ルマSAO調整情報と、クロマSAO調整情報とを含むスライスヘッダを出力することができる。
出力部130は、最大符号化単位ごとに決定されたSAOパラメータに、ルマ成分のためのSAO調整いかん及びSAOタイプを示すルマSAOタイプ情報と、第1クロマ成分及び第2クロマ成分のためのSAO調整いかん、並びにSAOタイプを示すクロマSAOタイプ情報と、を含める。
図9は、本発明の一実施形態による、ツリー構造による符号化単位に基づいたビデオ復号化装置200のブロック図を図示している。
一実施形態による、ツリー構造による符号化単位に基づいたビデオ予測を伴うビデオ復号化装置200は、受信部210、映像データ及び符号化情報抽出部220、並びに映像データ復号化部230を含む。以下、説明の便宜のために、一実施形態による、ツリー構造による符号化単位に基づいたビデオ予測を伴うビデオ復号化装置200は、「ビデオ復号化装置200」と縮約して指称する。
一実施形態によるビデオ復号化装置200の復号化動作のための符号化単位、深度、予測単位、変換単位、各種符号化モードに係わる情報など各種用語の定義は、図8及びビデオ符号化装置100を参照して説明したところと同一である。
受信部210は、符号化されたビデオに係わるビットストリームを受信してパージングする。映像データ及び符号化情報抽出部220は、パージングされたビットストリームから、最大符号化単位別に、ツリー構造による符号化単位によって、符号化単位ごとに符号化された映像データを抽出し、映像データ復号化部230に出力する。映像データ及び符号化情報抽出部220は、現在ピクチャに係わるヘッダ、シーケンスパラメータセットまたはピクチャパラメータセットから、現在ピクチャの符号化単位の最大サイズに係わる情報を抽出することができる。
また、映像データ及び符号化情報抽出部220は、パージングされたビットストリームから、最大符号化単位別に、ツリー構造による符号化単位に係わる符号化深度及び符号化モードに係わる情報を抽出する。抽出された符号化深度及び符号化モードに係わる情報は、映像データ復号化部230に出力される。すなわち、ビット列の映像データを最大符号化単位に分割し、映像データ復号化部230をして、最大符号化単位ごとに、映像データを復号化させる。
最大符号化単位別符号化深度及び符号化モードに係わる情報は、一つ以上の符号化深度情報について設定され、符号化深度別符号化モードに係わる情報は、当該符号化単位のパーティションタイプ情報、予測モード情報及び変換単位サイズ情報などを含んでもよい。また、符号化深度情報として、深度別分割情報が抽出されてもよい。
映像データ及び符号化情報抽出部220が抽出した最大符号化単位別符号化深度及び符号化モードに係わる情報は、一実施形態によるビデオ符号化装置100のように、符号化端で、最大符号化単位別深度別符号化単位ごとに反復して符号化を行い、最小符号化誤差を発生させると決定された符号化深度及び符号化モードに係わる情報である。従って、ビデオ復号化装置200は、最小符号化誤差を発生させる符号化方式によって、データを復号化して映像を復元することができる。
一実施形態による符号化深度及び符号化モードに係わる符号化情報は、当該符号化単位、予測単位及び最小単位のうち所定データ単位について割り当てられているので、映像データ及び符号化情報抽出部220は、所定データ単位別に、符号化深度及び符号化モードに係わる情報を抽出することができる。所定データ単位別に、当該最大符号化単位の符号化深度及び符号化モードに係わる情報が記録されているのであるならば、同一の符号化深度及び符号化モードに係わる情報を有している所定データ単位は、同一の最大符号化単位に含まれるデータ単位であると類推される。
映像データ復号化部230は、最大符号化単位別符号化深度及び符号化モードに係わる情報に基づいて、それぞれの最大符号化単位の映像データを復号化し、現在ピクチャを復元する。すなわち、映像データ復号化部230は、最大符号化単位に含まれるツリー構造による符号化単位のうち、それぞれの符号化単位ごとに、読み取られたパーティションタイプ、予測モード、変換単位に基づいて符号化された映像データを復号化することができる。復号化過程は、イントラ予測及び動き補償を含む予測過程及び逆変換過程を含んでもよい。
映像データ復号化部230は、符号化深度別符号化単位の予測単位のパーティションタイプ情報及び予測モード情報に基づいて、符号化単位ごとに、それぞれのパーティション及び予測モードによって、イントラ予測または動き補償を行うことができる。
また、映像データ復号化部230は、最大符号化単位別逆変換のために、符号化単位別に、ツリー構造による変換単位情報を読み取り、符号化単位ごとに、変換単位に基づいた逆変換を行うことができる。逆変換を介して、符号化単位の空間領域の画素値が復元される。
映像データ復号化部230は、深度別分割情報を利用して、現在最大符号化単位の符号化深度を決定することができる。もし分割情報が、現在深度でそれ以上分割されないということを示しているのであれば、現在深度が符号化深度である。従って、映像データ復号化部230は、現在最大符号化単位の映像データに対して、現在深度の符号化単位を、予測単位のパーティションタイプ、予測モード及び変換単位サイズ情報を利用して復号化することができる。
すなわち、符号化単位、予測単位及び最小単位のうち所定データ単位について設定されている符号化情報を観察し、同一の分割情報を含んだ符号化情報を保有しているデータ単位が集まり、映像データ復号化部230によって、同一の符号化モードで復号化する1つのデータ単位と見なされる。このように決定された符号化単位ごとに、符号化モードについての情報を獲得し、現在符号化単位の復号化が行われる。
また、図9のビデオ復号化装置200は、図2Aを参照して説明したビデオ復号化装置20の動作を遂行することができる。
映像データ及び符号化情報抽出部220と受信部210は、ビデオ復号化装置20のSAOパラメータ抽出部22の動作を遂行することができる。映像データ復号化部230は、ビデオ復号化装置20のSAO決定部24及びSAO調整部26の動作を遂行することができる。
カラー成分別に、SAO調整の遂行いかんが決定される。
映像データ及び符号化情報抽出部220は、スライスヘッダから、ルマSAO調整情報と、クロマSAO調整情報とを獲得することができる。ルマSAO調整情報から、ルマ成分のためのSAO調整いかんが決定され、クロマSAO調整情報から、第1クロマ成分及び第2クロマ成分のためのSAO調整いかんが決定される。
映像データ及び符号化情報抽出部220は、最大符号化単位ごとに決定されたSAOパラメータから、ルマ成分のためのSAO調整いかん及びSAOタイプを示すルマSAOタイプ情報を獲得することができる。また、映像データ及び符号化情報抽出部220は、最大符号化単位ごとに決定されたSAOパラメータから、第1クロマ成分及び第2クロマ成分のためのSAO調整いかん及びSAOタイプを示すクロマSAOタイプ情報を獲得することができる。
映像データ及び符号化情報抽出部220は、ビットストリームから、現在最大符号化単位のためのSAOパラメータなしに、SAO併合情報のみをパージングした場合、隣接SAOパラメータのうち少なくとも一つと同一に、現在SAOパラメータを復元することができる。SAO併合情報に基づいて、隣接SAOパラメータのうちいずれのパラメータを参照するかということが決定される。映像データ及び符号化情報抽出部220は、ビットストリームからパージングされた現在最大符号化単位のためのSAO併合情報に基づいて、隣接SAOパラメータと現在SAOパラメータとが異なっていると判断されるのであるならば、ビットストリームから、現在最大符号化単位のための現在SAOパラメータがパージングされて復元される。
映像データ及び符号化情報抽出部220は、ビットストリームから、最大符号化単位ごとに、SAOパラメータをパージングすることができる。SAOパラメータから、SAOタイプ、カテゴリー別オフセット値及びSAOクラスが決定される。現在最大符号化単位のSAOタイプがオフタイプである場合、現在最大符号化単位に係わるオフセット調整動作は終了する。SAOタイプがエッジタイプである場合、復元ピクセルごとに、それぞれのエッジ方向を示すエッジクラス及びエッジ形態を示すカテゴリーに基づいて、受信されたオフセット値のうち現在オフセット値が選択される。SAOタイプがバンドタイプである場合、復元ピクセルごとに、それぞれのバンドを決定し、オフセット値のうち現在バンドに対応するオフセット値が選択される。
映像データ復号化部230は、各復元ピクセルに対応するオフセット値ほど当該復元ピクセル値を調整することにより、原本ピクセルと誤差が最小化される復元ピクセルを生成することができる。最大符号化単位ごとにパージングされたSAOパラメータに基づいて、最大符号化単位の復元ピクセルのオフセットが調整される。
結局、ビデオ復号化装置200は、符号化過程で、最大符号化単位ごとに、再帰的に符号化を行い、最小符号化誤差を発生させた符号化単位についての情報を獲得し、現在ピクチャに対する復号化に利用することができる。すなわち、最大符号化単位ごとに、最適符号化単位として決定されたツリー構造による符号化単位の符号化された映像データの復号化が可能になる。
従って、高い解像度の映像、またはデータ量が過度に多い映像でも、符号化端から伝送された最適符号化モードに係わる情報を利用して、映像の特性に適応的に決定された符号化単位の大きさ及び符号化モードによって、効率的に映像データを復号化して復元することができる。
図10は、本発明の一実施形態による符号化単位の概念を図示している。
符号化単位の例は、符号化単位の大きさは、幅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のパーティションに分割される。
ビデオデータ310については、解像度が1920x1080に、符号化単位の最大サイズが64に、最大深度が2に設定されている。ビデオデータ320については、解像度が1920x1080に、符号化単位の最大サイズが64に、最大深度が3に設定されている。ビデオデータ330については、解像度が352x288に、符号化単位の最大サイズが16に、最大深度が1に設定されている。図10に図示された最大深度は、最大符号化単位から最小符号化単位までの全分割回数を示す。
解像度が高いか、あるいはデータ量が多い場合、符号化効率の向上だけではなく、映像特性を正確に反映するために、符号化サイズの最大サイズが相対的に大きいことが望ましい。従って、ビデオデータ330に比べ、解像度が高いビデオデータ310,320は、符号化サイズの最大サイズが64に選択される。
ビデオデータ310の最大深度が2であるので、ビデオデータ310の符号化単位315は、長軸サイズが64である最大符号化単位から、2回分割されて深度が2階層深くなり、長軸サイズが32,16である符号化単位まで含んでもよい。一方、ビデオデータ330の最大深度が1であるので、ビデオデータ330の符号化単位335は、長軸サイズが16である符号化単位から、1回分割されて深度が1階層深くなり、長軸サイズが8である符号化単位まで含んでもよい。
ビデオデータ320の最大深度が3であるので、ビデオデータ320の符号化単位325は、長軸サイズが64である最大符号化単位から、3回分割されて深度が3階層深くなり、長軸サイズが32,16,8である符号化単位まで含んでもよい。深度が深くなるほど、詳細情報の表現能が向上する。
図11は、本発明の一実施形態による符号化単位に基づいた映像符号化部400のブロック図を図示している。
一実施形態による映像符号化部400は、ビデオ符号化装置100の符号化単位決定部120で、映像データを符号化するのに経る作業を含む。すなわち、イントラ予測部410は、現在フレーム405において、イントラモードの符号化単位についてイントラ予測を行い、動き推定部420及び動き補償部425は、インターモードの現在フレーム405及び参照フレーム495を利用して、インター推定及び動き補償を行う。
イントラ予測部410、動き推定部420及び動き補償部425から出力されたデータは、変換部430及び量子化部440を経て、量子化された変換係数として出力される。量子化された変換係数は、逆量子化部460、逆変換部470を介して、空間領域のデータとして復元され、復元された空間領域のデータは、デブロッキング部480及びループ・フィルタリング部490を経て後処理され、参照フレーム495として出力される。量子化された変換係数は、エントロピー符号化部450を経て、ビットストリーム455として出力される。
一実施形態によるビデオ符号化装置100に適用されるためには、映像符号化部400の構成要素である、イントラ予測部410、動き推定部420、動き補償部425、変換部430、量子化部440、エントロピー符号化部450、逆量子化部460、逆変換部470、デブロッキング部480及びオフセット調整部490が、いずれも最大符号化単位ごとに、最大深度を考慮し、ツリー構造による符号化単位のうちそれぞれの符号化単位に基づいた作業を遂行しなければならない。
特に、イントラ予測部410、動き推定部420及び動き補償部425は、現在最大符号化単位の最大サイズ及び最大深度を考慮し、ツリー構造による符号化単位のうちそれぞれの符号化単位のパーティション及び予測モードを決定し、変換部430は、ツリー構造による符号化単位のうちそれぞれの符号化単位内の変換単位サイズを決めなければならない。
オフセット調整部490は、参照フレーム495の最大符号化単位ごとに、エッジタイプ(または、バンドタイプ)によってピクセルを分類し、エッジ方向(または、開始バンド位置)を決定し、カテゴリーごとに、属する復元ピクセルの平均誤差値を決定することができる。最大符号化単位ごとに、それぞれのSAO併合情報、SAOタイプ及びオフセット値が符号化されてシグナリングされる。
エントロピー符号化部450は、SAO調整のためのSAO併合情報、SAOタイプ情報、及びオフセット値を含むSAOパラメータについてCABAC符号化を行うことができる。例えば、SAOタイプ情報のためには、最初のビットについてのみ1つのコンテクストモデルを利用し、残りのビットについては、バイパスモードで符号化することができる。オフセット値については、2個のコンテクストモデルが利用され、左側SAO併合情報及び上端SAO併合情報については、それぞれ一つずつのコンテクストモデルが利用される。従って、SAOパラメータのCABAC符号化のために、総5個のコンテクストモデルが利用される。
図12は、本発明の一実施形態による符号化単位に基づいた映像復号化部500のブロック図を図示している。
ビットストリーム505がパージング部510を経て、復号化対象である符号化された映像データ及び復号化のために必要な符号化に係わる情報がパージングされる。符号化された映像データは、エントロピー復号化部520及び逆量子化部530を経て、逆量子化されたデータとして出力され、逆変換部540を経て、空間領域の映像データが復元される。
空間領域の映像データについて、イントラ予測部550は、イントラモードの符号化単位についてイントラ予測を行い、動き補償部560は、参照フレーム585を共に利用して、インターモードの符号化単位について動き補償を行う。
イントラ予測部550及び動き補償部560を経た空間領域のデータは、デブロッキング部570及びループ・フィルタリング部580を経て後処理され、復元フレーム595として出力される。また、デブロッキング部570及びループ・フィルタリング部580を経て後処理されたデータは、参照フレーム585として出力される。
ビデオ復号化装置200の映像データ復号化部230で、映像データを復号化するために、一実施形態による映像復号化部500のパージング部510以後の段階別作業が遂行される。
一実施形態によるビデオ復号化装置200に適用されるためには、映像復号化部500の構成要素である、パージング部510、エントロピー復号化部520、逆量子化部530、逆変換部540、イントラ予測部550、動き補償部560、デブロッキング部570及びオフセット調整部580が、いずれも最大符号化単位ごとに、ツリー構造による符号化単位に基づいて作業を遂行しなければならない。
特に、イントラ予測部550、動き補償部560は、ツリー構造による符号化単位ごとにそれぞれパーティション及び予測モードを決定し、逆変換部540は、符号化単位ごとに、変換単位サイズを決定しなければならない。
エントロピー復号化部520は、SAOパラメータについてCABAC復号化を行い、SAOパラメータから、SAO調整のためのSAO併合情報、SAOタイプ情報及びオフセット値をパージングすることができる。例えば、SAOタイプ情報のためには、最初のビットについてのみ1つのコンテクストモデルを利用し、残りのビットについては、バイパスモードで、CABAC復号化を行うことができる。オフセット値については、2個のコンテクストモデルが利用され、左側SAO併合情報及び上端SAO併合情報については、それぞれ一つずつのコンテクストモデルが利用される。従って、SAOパラメータのCABAC復号化のために、総5個のコンテクストモデルが利用される。
オフセット調整部580は、ビットストリームから、最大符号化単位のSAOパラメータを抽出することができる。現在最大符号化単位のSAOパラメータのうちSAO併合情報に基づいて、隣接する最大符号化単位のSAOパラメータと同一の現在SAOパラメータを復元することができる。現在最大符号化単位のSAOパラメータのうち、SAOタイプ及びオフセット値を利用して、復元フレーム595の最大符号化単位ごとに、復元ピクセルごとに、エッジタイプまたはバンドタイプによって、カテゴリーに対応するオフセット値ほど調整することができる。
図13は、本発明の一実施形態による深度別符号化単位及びパーティションを図示している。
一実施形態によるビデオ符号化装置100、及び一実施形態によるビデオ復号化装置200は、映像特性を考慮するために、階層的な符号化単位を使用する。符号化単位の最大高及び最大幅、最大深度は、映像の特性によって適応的に決定され、ユーザの要求によって、多様に設定されてもよい。既設定の符号化単位の最大サイズによって、深度別符号化単位の大きさが決定される。
一実施形態による符号化単位の階層構造600は、符号化単位の最大高及び最大幅が64であり、最大深度が4である場合を図示している。そのとき、最大深度は、最大符号化単位から最小符号化単位までの全分割回数を示す。一実施形態による符号化単位の階層構造600の縦軸に沿って、深度が深くなるので、深度別符号化単位の高さ及び幅がそれぞれ分割される。また、符号化単位の階層構造600の横軸に沿って、それぞれの深度別符号化単位の予測符号化の基になる予測単位及びパーティションが図示されている。
すなわち、符号化単位610は、符号化単位の階層構造600において、最大符号化単位であり、深度が0であり、符号化単位の大きさ、すなわち、高さ及び幅が64x64である。縦軸に沿って深度が深くなり、サイズ32x32である深度1の符号化単位620、サイズ16x16である深度2の符号化単位630、サイズ8x8である深度3の符号化単位640が存在する。サイズ4x4である深度3の符号化単位640は、最小符号化単位である。
それぞれの深度別に横軸に沿って、符号化単位の予測単位及びパーティションが配列される。すなわち、深度0のサイズ64x64の符号化単位610が予測単位であるならば、予測単位は、サイズ64x64の符号化単位610に含まれるサイズ64x64のパーティション610、サイズ64x32のパーティション612、サイズ32x64のパーティション614、サイズ32x32のパーティション616に分割される。
同様に、深度1のサイズ32x32の符号化単位620の予測単位は、サイズ32x32の符号化単位620に含まれるサイズ32x32のパーティション620、サイズ32x16のパーティション622、サイズ16x32のパーティション624、サイズ16x16のパーティション626に分割される。
同様に、深度2のサイズ16x16の符号化単位630の予測単位は、サイズ16x16の符号化単位630に含まれるサイズ16x16のパーティション630、サイズ16x8のパーティション632、サイズ8x16のパーティション634、サイズ8x8のパーティション636に分割される。
同様に、深度3のサイズ8x8の符号化単位640の予測単位は、サイズ8x8の符号化単位640に含まれるサイズ8x8のパーティション640、サイズ8x4のパーティション642、サイズ4x8のパーティション644、サイズ4x4のパーティション646に分割される。
一実施形態によるビデオ符号化装置100の符号化単位決定部120は、最大符号化単位610の符号化深度を決定するために、最大符号化単位610に含まれるそれぞれの深度の符号化単位ごとに符号化を行わなければならない。
同一の範囲及び同サイズのデータを含むための深度別符号化単位の個数は、深度が深くなるほど、深度別符号化単位の個数も増加する。例えば、深度1の符号化単位一つが含むデータについて、深度2の符号化単位は、四つが必要である。従って、同一のデータの符号化結果を深度別に比較するために、1つの深度1の符号化単位及び4つの深度2の符号化単位を利用して、それぞれ符号化されなければならない。
それぞれの深度別符号化のためには、符号化単位の階層構造600の横軸に沿って、深度別符号化単位の予測単位ごとに符号化を行い、当該深度で最小の符号化誤差である代表符号化誤差が選択される。また、符号化単位の階層構造600の縦軸に沿って深度が深くなり、それぞれの深度ごとに符号化を行い、深度別代表符号化誤差を比較し、最小符号化誤差が検索される。最大符号化単位610において、最小符号化誤差が発生する深度及びパーティションが、最大符号化単位610の符号化深度及びパーティションタイプに選択される。
図14は、本発明の一実施形態による、符号化単位及び変換単位の関係を図示している。
一実施形態によるビデオ符号化装置100、または一実施形態によるビデオ復号化装置200は、最大符号化単位ごとに、最大符号化単位より小さいか、あるいはそれと同サイズの符号化単位で、映像を符号化したり復号化したりする。符号化過程のうち変換のための変換単位サイズは、それぞれの符号化単位ほど大きくないデータ単位を基に選択される。
例えば、一実施形態によるビデオ符号化装置100、または一実施形態によるビデオ復号化装置200で、現在符号化単位710が64x64サイズであるとき、32x32サイズの変換単位720を利用して変換が行われる。
また、64x64サイズの符号化単位710のデータを、64x64サイズ以下の32x32,16x16,8x8,4x4サイズの変換単位でそれぞれ変換を行って符号化した後、原本との誤差が最小である変換単位が選択される。
図15は、本発明の一実施形態による深度別符号化情報を図示する。
一実施形態によるビデオ符号化装置100の出力部130は、符号化モードに係わる情報として、それぞれの符号化深度の符号化単位ごとに、パーティションタイプに係わる情報800、予測モードに係わる情報810、変換単位サイズについての情報820を符号化して伝送することができる。
パーティションタイプについての情報800は、現在符号化単位の予測符号化のためのデータ単位であり、現在符号化単位の予測単位が分割されたパーティションのタイプについての情報を示す。例えば、サイズ2Nx2Nの現在符号化単位CU_0は、サイズ2Nx2Nのパーティション802、サイズ2NxNのパーティション804、サイズNx2Nのパーティション806、サイズNxNのパーティション808のうちいずれ1つのタイプに分割されて利用される。その場合、現在符号化単位のパーティションタイプに係わる情報800は、サイズ2Nx2Nのパーティション802、サイズ2NxNのパーティション804、サイズNx2Nのパーティション806及びサイズNxNのパーティション808のうち一つを示すように設定される。
予測モードに係わる情報810は、それぞれのパーティションの予測モードを示す。例えば、予測モードに係わる情報810を介して、パーティションタイプに係わる情報800が示すパーティションが、イントラモード812、インターモード814及びスキップモード816のうち一つで予測符号化が行われるかということが設定される。
また、変換単位サイズに係わる情報820は、現在符号化単位をいかなる変換単位を基に変換を行うかということを示す。例えば、変換単位は、第1イントラ変換単位サイズ822、第2イントラ変換単位サイズ824、第1インター変換単位サイズ826、第2インター変換単位サイズ828のうち一つである。
一実施形態によるビデオ復号化装置200の映像データ及び符号化情報抽出部210は、それぞれの深度別符号化単位ごとに、パーティションタイプに係わる情報800、予測モードに係わる情報810、変換単位サイズについての情報820を抽出し、復号化に利用することができる。
図16は、本発明の一実施形態による深度別符号化単位を図示している。
深度の変化を示すために分割情報が利用される。分割情報は、現在深度の符号化単位が、下位深度の符号化単位に分割されるか否かということを示す。
深度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だけが例示されているが、前述のように、パーティションタイプは、それらに限定されるものではなく、非対称的パーティション、任意的形態のパーティション、幾何学的形態のパーティションなどを含んでもよい。
パーティションタイプごとに、1つの2N_0x2N_0サイズのパーティション、2つの2N_0xN_0サイズのパーティション、2つのN_0x2N_0サイズのパーティション、4つのN_0xN_0サイズのパーティションごとに反復して予測符号化が行われなければならない。サイズ2N_0x2N_0、サイズN_0x2N_0及びサイズ2N_0xN_0及びサイズN_0xN_0のパーティションについては、イントラモード及びインターモードで予測符号化が行われる。スキップモードは、サイズ2N_0x2N_0のパーティションについてのみ予測符号化が行われる。
サイズ2N_0x2N_0,2N_0xN_0及びN_0x2N_0のパーティションタイプ912,914,916のうち一つによる符号化誤差が最小であれば、それ以上下位深度に分割する必要ない。
サイズN_0xN_0のパーティションタイプ918による符号化誤差が最小であれば、深度0を1に変更しながら分割し(920)、深度2及びサイズN_0xN_0のパーティションタイプの符号化単位930について反復して符号化を行い、最小符号化誤差を検索していくことができる。
深度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を含んでもよい。
また、サイズN_1xN_1サイズのパーティションタイプ948による符号化誤差が最小であれば深度1を深度2に変更しながら分割し(950)、深度2及びサイズN_2xN_2の符号化単位960について反復して符号化を行い、最小符号化誤差を検索していくことができる。
最大深度がdである場合、深度別符号化単位は、深度d−1になるまで設定され、分割情報は、深度d−2まで設定される。すなわち、深度d−2から分割され(970)、深度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を含んでもよい。
パーティションタイプのうち、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)のパーティションごとに、反復して予測符号化を介した符号化が行われ、最小符号化誤差が発生するパーティションタイプが検索される。
サイズ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の符号化単位952について分割情報が設定されない。
データ単位999は、現在最大符号化単位に係わる「最小単位」であるとされる。一実施形態による最小単位は、最下位符号化深度である最小符号化単位が4分割された大きさの正方形のデータ単位であってもよい。そのような反復的符号化過程を介して、一実施形態によるビデオ符号化装置100は、符号化単位900の深度別符号化誤差を比較し、最小の符号化誤差が発生する深度を選択し、符号化深度を決定し、当該パーティションタイプ及び予測モードが符号化深度の符号化モードに設定される。
このように、深度0,1,…,d−1,dの全ての深度別最小符号化誤差を比較し、誤差が最小である深度が選択され、符号化深度として決定される。符号化深度、予測単位のパーティションタイプ及び予測モードは、符号化モードに係わる情報として符号化されて伝送される。また、深度0から符号化深度に至るまで符号化単位が分割されなければならないので、符号化深度の分割情報だけが「0」に設定され、符号化深度を除いた深度別分割情報は、「1」に設定されなければならない。
一実施形態によるビデオ復号化装置200の映像データ及び符号化情報抽出部220は、符号化単位900に係わる符号化深度及び予測単位に係わる情報を抽出し、符号化単位912を復号化するのに利用することができる。一実施形態によるビデオ復号化装置200は、深度別分割情報を利用して、分割情報が「0」である深度を符号化深度として把握し、当該深度に係わる符号化モードに係わる情報を利用して、復号化に利用することができる。
図17、図18及び図19は、本発明の一実施形態による、符号化単位、予測単位及び変換単位の関係を図示している。
符号化単位1010は、最大符号化単位について、一実施形態によるビデオ符号化装置100が決定した符号化深度別符号化単位である。予測単位1060は、符号化単位1010において、それぞれの符号化深度別符号化単位の予測単位のパーティションであり、変換単位1070は、それぞれの符号化深度別符号化単位の変換単位である。
深度別符号化単位1010は、最大符号化単位の深度が0であるとすれば、符号化単位1012,1054は、深度が1、符号化単位1014,1016,1018,1028,1050,1052は、深度が2、符号化単位1020,1022,1024,1026,1030,1032,1048は、深度が3、符号化単位1040,1042,1044,1046は、深度が4である。
予測単位1060において、一部パーティション1014,1016,1022,1032,1048,1050,1052,1054は、符号化単位が分割された形態である。すなわち、パーティション1014,1022,1050,1054は、2NxNのパーティションタイプであり、パーティション1016,1048,1052は、Nx2Nのパーティションタイプであり、パーティション1032は、NxNのパーティションタイプである。深度別符号化単位1010の予測単位及びパーティションは、それぞれの符号化単位より小さいか、あるいは同一である。
変換単位1070において、一部変換単位1052の映像データについては、符号化単位に比べて小サイズのデータ単位で変換または逆変換が行われる。また、変換単位1014,1016,1022,1032,1048,1050,1052,1054は、予測単位1060における当該予測単位及びパーティションと比較すれば、互いに異なる大きさまたは形態のデータ単位である。すなわち、一実施形態によるビデオ符号化装置100、及び一実施形態によるビデオ復号化装置200は、同一の符号化単位に係わるイントラ予測/動き推定/動き補償作業、及び変換/逆変換作業であるとしても、それぞれ別個のデータ単位を基に遂行することができる。
それにより、最大符号化単位ごとに、領域別に階層的な構造の符号化単位ごとに、再帰的に符号化が行われ、最適符号化単位が決定されることにより、再帰的ツリー構造による符号化単位が構成される。符号化情報は、符号化単位に係わる分割情報、パーティションタイプ情報、予測モード情報、変換単位サイズ情報を含んでもよい。下記表1は、一実施形態によるビデオ符号化装置100、及び一実施形態によるビデオ復号化装置200で設定することができる一例を示している。
一実施形態によるビデオ符号化装置100の出力部130は、ツリー構造による符号化単位に係わる符号化情報を出力し、一実施形態によるビデオ復号化装置200の符号化情報抽出部220は、受信されたビットストリームから、ツリー構造による符号化単位に係わる符号化情報を抽出することができる。
分割情報は、現在符号化単位が、下位深度の符号化単位に分割されるか否かということを示す。現在深度dの分割情報が0であるならば、現在符号化単位が下位符号化単位にそれ以上分割されない深度が符号化深度であるので、符号化深度について、パーティションタイプ情報、予測モード、変換単位サイズ情報が定義される。分割情報により、1段階さらに分割されなければならない場合には、分割された4個の下位深度の符号化単位ごとに、独立して符号化が行われなければならない。
予測モードは、イントラモード、インターモード及びスキップモードのうち一つで示すことができる。イントラモード及びインターモードは、全てのパーティションタイプで定義され、スキップモードは、パーティションタイプ2Nx2Nでのみ定義される。
パーティションタイプ情報は、予測単位の高さまたは幅が対称的な比率に分割された対称的パーティションタイプ2Nx2N,2NxN,Nx2N及びNxNと、非対称的な比率に分割された非対称的パーティションタイプ2NxnU,2NxnD,nLx2N,nRx2Nを示すことができる。非対称的パーティションタイプ2NxnU及び2NxnDは、それぞれ高さが1:3及び3:1に分割された形態であり、非対称的パーティションタイプnLx2N及びnRx2Nは、それぞれ幅が1:3及び3:1に分割された形態を示す。
変換単位サイズは、イントラモードで2種の大きさ、インターモードで2種の大きさに設定される。すなわち、変換単位分割情報が0であるならば、変換単位サイズが現在符号化単位のサイズ2Nx2Nに設定される。変換単位分割情報が1であるならば、現在符号化単位が分割された大きさの変換単位が設定される。また、サイズ2Nx2Nである現在符号化単位に係わるパーティションタイプが対称形パーティションタイプであるならば、変換単位サイズは、NxN、非対称形パーティションタイプであるならば、N/2xN/2に設定される。
一実施形態によるツリー構造による符号化単位の符号化情報は、符号化深度の符号化単位、予測単位及び最小単位単位のうち少なくとも一つについて割り当てられる。符号化深度の符号化単位は、同一の符号化情報を保有している予測単位及び最小単位を一つ以上含んでもよい。
従って、隣接したデータ単位同士それぞれ保有している符号化情報を確認すれば、同一の符号化深度の符号化単位に含まれるか否かということが確認される。また、データ単位が保有している符号化情報を利用すれば、当該符号化深度の符号化単位を確認することができるので、最大符号化単位内の符号化深度の分布が類推される。
従って、その場合、現在符号化単位が周辺データ単位を参照して予測する場合、現在符号化単位に隣接する深度別符号化単位内のデータ単位の符号化情報が直接参照されて利用される。
他の実施形態で、現在符号化単位が周辺符号化単位を参照して予測符号化が行われる場合、隣接する深度別符号化単位の符号化情報を利用して、深度別符号化単位内で、現在符号化単位に隣接するデータが検索されることによって、周辺符号化単位が参照されてもよい。
図20は、表1の符号化モード情報による符号化単位、予測単位及び変換単位の関係を図示している。
最大符号化単位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のうち一つに設定される。
変換単位分割情報(TU size flag)は、変換インデックスの一種であり、変換インデックスに対応する変換単位サイズは、符号化単位の予測単位タイプまたはパーティションタイプによって変更される。
例えば、パーティションタイプ情報が、対称形パーティションタイプ2Nx2N 1322,2NxN 1324,Nx2N 1326及びNxN 1328のうち一つに設定されている場合、変換単位分割情報が0であるならば、サイズ2Nx2Nの変換単位1342が設定され、変換単位分割情報が1であるならば、サイズNxNの変換単位1344が設定される。
パーティションタイプ情報が、非対称形パーティションタイプ2NxnU 1332,2NxnD 1334,nLx2N 1336及びnRx2N 1338のうち一つに設定された場合、変換単位分割情報(TU size flag)が0であるならば、サイズ2Nx2Nの変換単位1352が設定され、変換単位分割情報が1であるならば、サイズN/2xN/2の変換単位1354が設定される。
図20を参照して説明した変換単位分割情報(TU size flag)は、0または1の値を有するフラグであるが、一実施形態による変換単位分割情報は、1ビットのフラグに限定されるものではなく、設定によって、0、1、2、3、…などに増大させ、変換単位が階層的に分割されてもよい。変換単位分割情報は、変換インデックスの一実施形態として利用される。
その場合、一実施形態による変換単位分割情報を、変換単位の最大サイズ、変換単位の最小サイズのように利用すれば、実際に利用された変換単位の大きさが表現される。一実施形態によるビデオ符号化装置100は、最大変換単位サイズ情報、最小変換単位サイズ情報及び最大変換単位分割情報を符号化することができる。符号化された最大変換単位サイズ情報、最小変換単位サイズ情報及び最大変換単位分割情報は、SPSに挿入される。一実施形態によるビデオ復号化装置200は、最大変換単位サイズ情報、最小変換単位サイズ情報及び最大変換単位分割情報を利用して、ビデオ復号化に利用することができる。
例えば、(a)現在符号化単位がサイズ64x64であり、最大変換単位サイズが32x32であるならば、(a−1)変換単位分割情報が0であるとき、変換単位サイズは、32x32に、(a−2)変換単位分割情報が1であるとき、変換単位サイズは、16x16に、(a−3)変換単位分割情報が2であるとき、変換単位サイズは、8x8に設定される。
他の例として、(b)現在符号化単位がサイズ32x32であり、最小変換単位サイズは、32x32であるならば、(b−1)変換単位分割情報が0であるとき、変換単位サイズは、32x32に設定され、変換単位サイズが32x32より小さいことがないので、それ以上の変換単位分割情報が設定されることがない。
さらに他の例として、(c)現在符号化単位がサイズ64x64であり、最大変換単位分割情報が1であるならば、変換単位分割情報は、0または1であり、他の変換単位分割情報が設定されることがない。
従って、最大変換単位分割情報を「MaxTransformSizeIndex」と、最小変換単位サイズを「MinTransform Size」と、変換単位分割情報が0の場合の変換単位サイズを「RootTuSize」と定義するとき、現在符号化単位で可能な最小変換単位サイズ「CurrMinTuSize」は、下記数式(1)のように定義される。
CurrMinTuSize
=max(MinTransform Size,RootTuSize/(2^MaxTransformSizeIndex)) (1)
現在符号化単位で可能な最小変換単位サイズ「CurrMinTuSize」と比較し、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」は、システム上採択可能な最大変換単位サイズを示すことができる。すなわち、数式(1)によれば、「RootTuSize/(2^MaxTransformSizeIndex)」は、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」を最大変換単位分割情報に相応する回数ほど分割した変換単位サイズであり、「MinTransform Size」は、最小変換単位サイズであるので、それらのうち小さい値が、現在現在符号化単位で可能な最小変換単位サイズ「CurrMinTuSize」であってもよい。
一実施形態による最大変換単位サイズRootTuSizeは、予測モードによって異なる。
例えば、現在予測モードがインターモードであるならば、RootTuSizeは、下記数式(2)によって決定される。数式(2)で、「MaxTransform Size」は、最大変換単位サイズ、「PUSize」は、現在予測単位大きさを示す。
RootTuSize=min(MaxTransform Size,PUSize) (2)
すなわち、現在予測モードがインターモードであるならば、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」は、最大変換単位サイズ及び現在予測単位大きさのうち小さい値に設定される。
現在パーティション単位の予測モードがイントラモードであるならば、「RootTuSize」は、下記数式(3)によって決定される。「PartitionSize」は、現在パーティション単位の大きさを示す。
RootTuSize=min(MaxTransform Size,PartitionSize) (3)
すなわち、現在予測モードがイントラモードであるならば、変換単位分割情報が0である場合の変換単位サイズである「RootTuSize」は、最大変換単位サイズ及び現在パーティション単位大きさのうち小さい値に設定される。
ただし、パーティション単位の予測モードによって変動する一実施形態による現在最大変換単位サイズ「RootTuSize」は、一実施形態であるのみ、現在最大変換単位サイズを決定する要因は、それらに限定されるものではないことに留意しなければならない。
図8ないし図20を参照して説明したツリー構造の符号化単位に基づいたビデオ符号化技法によって、ツリー構造の符号化単位ごとに、空間領域の映像データが符号化され、ツリー構造の符号化単位に基づいたビデオ復号化技法によって、最大符号化単位ごとに復号化が行われながら、空間領域の映像データが復元され、ピクチャ及びピクチャシーケンスであるビデオが復元される。復元されたビデオは、再生装置によって再生されるか、記録媒体に保存されるか、あるいはネットワークを介して伝送される。
また、ピクチャごとに、スライスごとに、最大符号化単位ごとに、ツリー構造による符号化単位ごとに、符号化単位の予測単位ごとに、または符号化単位の変換単位ごとにオフセット・パラメータがシグナリングされる。一例として、最大符号化単位ごとに受信されたオフセット・パラメータに基づいて復元されたオフセット値を利用して、最大符号化単位の復元ピクセル値を調整することにより、原本ブロックとの誤差が最小化される最大符号化単位が復元される。
一方、前述の本発明の実施形態は、コンピュータで実行されるプログラムで作成可能であり、コンピュータで読み取り可能な記録媒体を利用して、前記プログラムを動作させる汎用デジタルコンピュータで具現される。前記コンピュータで読み取り可能な記録媒体は、マグネチック記録媒体(例えば、ROM(read only memory)、フロッピー(登録商標)ディスク、ハードディスクなど)、光学的判読媒体(例えば、CD(compact disc)−ROM、DVD(digital versatile disc)など)のような記録媒体を含む。
以上、本発明についてその望ましい実施形態を中心に説明した。本発明が属する技術分野で当業者であるならば、本発明が、本発明の本質的な特性から外れない範囲で変形された形態に具現されるということを理解することができるであろう。従って、開示された実施形態は、限定的な観点ではなく、説明的な観点から考慮されなければならない。本発明の範囲は、前述の説明ではなく、特許請求の範囲に示されており、それと同等な範囲内にある全ての差異は、本発明に含まれたものであると解釈されなければならないのである。
説明の便宜のために、先に図1Aないし図20を参照して説明したサンプルオフセット調整によるビデオ符号化方法は、「本発明のビデオ符号化方法」とする。また、先に図2Aないし図20を参照して説明したサンプルオフセット調整によるビデオ復号化方法は、「本発明のビデオ復号化方法」とする。
また、先に図1Aないし図20を参照して説明したビデオ符号化装置10、ビデオ符号化装置100または映像符号化部400で構成されたビデオ符号化装置は、「本発明のビデオ符号化装置」とする。また、先に図2Aないし図20を参照して説明したビデオ復号化装置20、ビデオ復号化装置200または映像復号化部500で構成されたビデオ復号化装置は、「本発明のビデオ復号化装置」とする。
一実施形態によるプログラムが保存されるコンピュータで読み取り可能な記録媒体がディスク26000である実施形態について、以下で詳細に説明する。
図21は、一実施形態によるプログラムが保存されたディスク26000の物理的構造を例示している。記録媒体とされたディスク26000は、ハードドライブ、CD−ROMディスク、ブルーレイ(登録商標:Blu-ray)ディスク、DVDディスクであってもよい。ディスク26000は、多数の同心円のトラックTrで構成され、トラックは、円周方向に沿って、所定個数のセクタSeに分割される。前述の一実施形態によるプログラムを保存するディスク26000における特定領域に、前述の量子化パラメータ決定方法、ビデオ符号化方法及びビデオ復号化方法を具現するためのプログラムが割り当てられて保存される。
前述のビデオ符号化方法及びビデオ復号化方法を具現するためのプログラムを保存する記録媒体を利用して達成されたコンピュータシステムについて、図22を参照して説明する。
図22は、ディスク26000を利用して、プログラムを記録して読み取るためのディスクドライブ26800を図示している。コンピュータ・システム26700は、ディスクドライブ26800を利用して、本発明のビデオ符号化方法及びビデオ復号化方法のうち少なくとも一つを具現するためのプログラムを、ディスク26000に保存することができる。ディスク26000に保存されたプログラムを、コンピュータシステム26700上で実行するために、ディスクドライブ26800によって、ディスク26000からプログラムが読み取られ、プログラムがコンピュータシステム26700に伝送される。
図21及び図22で例示されたディスク26000だけではなく、メモリカード、ROMカセット、SSD(solid state drive)にも、本発明のビデオ符号化方法及びビデオ復号化方法のうち少なくとも一つを具現するためのプログラムが保存される。
前述の実施形態によるビデオ符号化方法及びビデオ復号化方法が適用されたシステムについて、以下で説明する。
図23は、コンテンツ流通サービス(content distribution service)を提供するためのコンテンツ供給システム(content supply system)11000の全体的構造を図示している。通信システムのサービス領域は、所定サイズのセルに分割され、各セルに、ベースステーションになる無線基地局11700,11800,11900,12000が設けられる。
コンテンツ供給システム11000は、多数の独立デバイスを含む。例えば、コンピュータ12100、PDA(personal digital assistant)12200、ビデオカメラ12300及び携帯電話12500のような独立デバイスが、インターネットサービス・プロバイダ11200、通信網11400、及び無線基地局11700,11800,11900,12000を経て、インターネット11100に連結される。
しかし、コンテンツ供給システム11000は、図24に図示された構造にのみ限定されるものではなく、デバイスは、選択的に連結される。独立デバイスは、無線基地局11700,11800,11900,12000を経ずに、通信網11400に直接連結されてもよい。
ビデオカメラ12300は、デジタルビデオカメラのように、ビデオ映像を撮影することができる撮像デバイスである。携帯電話12500は、PDC(personal digital communications)、CDMA(code division multiple access)、W−CDMA(wideband code division multiple access)、GSM(登録商標global system for mobile communications)及びPHS(personal handyphone system)の方式のような多様なプロトコルのうち少なくとも1つの通信方式を採択することができる。
ビデオカメラ12300は、無線基地局11900及び通信網11400を経て、ストリーミングサーバ11300に連結される。ストリーミングサーバ11300は、ユーザがビデオカメラ12300を使用して伝送したコンテンツを、リアルタイム放送でストリーミング伝送することができる。ビデオカメラ12300から受信されたコンテンツは、ビデオカメラ12300またはストリーミングサーバ11300によって、符号化される。ビデオカメラ12300で撮影されたビデオデータは、コンピュータ12100を経て、ストリーミングサーバ11300に伝送される。
カメラ12600で撮影されたビデオデータも、コンピュータ12100を経て、ストリーミングサーバ11300に伝送される。カメラ12600は、デジタルカメラのように、静止映像及びビデオ映像をいずれも撮影することができる撮像装置である。カメラ12600から受信されたビデオデータは、カメラ12600またはコンピュータ12100によって符号化される。ビデオ符号化及びビデオ復号化のためのソフトウェアは、コンピュータ12100がアクセスすることができるCD−ROMディスク、フロッピー(登録商標)ディスク、ハードディスクドライブ、SSD、メモリカードのようなコンピュータで読み取り可能な記録媒体に保存される。
また、携帯電話12500に搭載されたカメラによってビデオが撮影された場合、ビデオデータが携帯電話12500から受信される。
ビデオデータは、ビデオカメラ12300、携帯電話12500またはカメラ12600に搭載されたLSI(large scale integrated circuit)システムによって符号化される。
一実施形態によるコンテンツ供給システム11000において、例えば、コンサートの現場録画コンテンツのように、ユーザがビデオカメラ12300、カメラ12600、携帯電話12500または他の撮像デバイスを利用して録画されたコンテンツが符号化され、ストリーミングサーバ11300に伝送される。ストリーミングサーバ11300は、コンテンツデータを要請した他のクライアントに、コンテンツデータをストリーミング伝送することができる。
クライアントは、符号化されたコンテンツデータを復号化することができるデバイスであり、例えば、コンピュータ12100、PDA 12200、ビデオカメラ12300または携帯電話12500であってもよい。従って、コンテンツ供給システム11000は、クライアントをして、符号化されたコンテンツデータを受信して再生させる。また、コンテンツ供給システム11000は、クライアントをして、符号化されたコンテンツデータを受信してリアルタイムで復号化して再生させ、個人放送(personal broadcasting)を可能にさせる。
コンテンツ供給システム11000に含まれた独立デバイスの符号化動作及び復号化動作に、本発明のビデオ符号化装置及びビデオ復号化装置が適用される。
図24及び図25を参照し、コンテンツ供給システム11000における携帯電話12500の一実施形態について詳細に説明する。
図24は、一実施形態による本発明のビデオ符号化方法及びビデオ復号化方法が適用される携帯電話12500の外部構造を図示している。携帯電話12500は、機能が制限されておらず、応用プログラムを介して、相当部分の機能を変更するか、あるいは拡張させることができるスマートフォンであってもよい。
携帯電話12500は、無線基地局12000とRF(radio frequency)信号を交換するための内蔵アンテナ12510を含み、カメラ12530によって撮影された映像、またはアンテナ12510によって受信されて復号化された映像をディスプレイするためのLCD(liquid crystal display)画面、OLED(organic light emitting diode)画面のようなディスプレイ画面12520を含む。スマートフォン12510は、制御ボタン、タッチパネルを含む動作パネル12540を含む。ディスプレイ画面12520がタッチスクリーンである場合、動作パネル12540は、ディスプレイ画面12520のタッチ感知パネルをさらに含む。スマートフォン12510は、音声、音響を出力するためのスピーカ12580または他の形態の音響出力部;及び音声、音響が入力されるマイクロホン12550または他の形態の音響入力部;を含む。スマートフォン12510は、ビデオ及び静止映像を撮影するためのCCD(charge coupled device)カメラのようなカメラ12530をさらに含む。また、スマートフォン12510は、カメラ12530によって撮影されたり、電子メール(E−mail)で受信されたり、あるいは他の形態で獲得されたりするビデオや静止映像のように、符号化されたり復号化されたりするデータを保存するための記録媒体12570;及び記録媒体12570を携帯電話12500に装着するためのスロット12560;を含んでもよい。記録媒体12570は、SDカード、またはプラスチックケースに内蔵されたEEPROM(electrically erasable and programmable read only memory)のような他の形態のフラッシュメモリであってもよい。
図25は、携帯電話12500の内部構造を図示している。ディスプレイ画面12520及び動作パネル12540で構成された携帯電話12500の各パートを組織的に制御するために、電力供給回路12700、動作入力制御部12640、映像符号化部12720、カメラ・インターフェース12630、LCD制御部12620、映像復号化部12690、マルチプレクサ/デマルチプレクサ(MUX(multiplexer)/DEMUX(demultiplexer))12680、記録/判読部12670、変調/復調(modulation/demodulation)部12660及び音響処理部12650が、同期化バス12730を介して、中央制御部12710に連結される。
ユーザが電源ボタンを動作して「電源オフ」状態から「電源オン」状態に設定すれば、電力供給回路12700は、バッテリパックから、携帯電話12500の各パートに電力を供給することにより、携帯電話12500が動作モードにセッティングされる。
中央制御部12710は、CPU(central processing unit)、ROM及びRAM(random access memory)を含む。
携帯電話12500が外部に通信データを送信する過程では、中央制御部12710の制御によって、携帯電話12500でデジタル信号が生成される、例えば、音響処理部12650では、デジタル音響信号が生成され、映像符号化部12720では、デジタル映像信号が生成され、動作パネル12540及び動作入力制御部12640を介して、メッセージのテキストデータが生成される。中央制御部12710の制御によって、デジタル信号が変調/復調部12660に伝達されれば、変調/復調部12660は、デジタル信号の周波数帯域を変調し、通信回路12610は、帯域変調されたデジタル音響信号に対して、D/A変換(digital-analog conversion)処理及び周波数変換(frequency conversion)処理を行う。通信回路12610から出力された送信信号は、アンテナ12510を介して、音声通信基地局または無線基地局12000に送出される。
例えば、携帯電話12500が通話モードであるとき、マイクロホン12550によって獲得された音響信号は、中央制御部12710の制御によって、音響処理部12650で、デジタル音響信号に変換される。生成されたデジタル音響信号は、変調/復調部12660及び通信回路12610を経て送信信号に変換され、アンテナ12510を介して送出される。
データ通信モードで、電子メールのようなテキストメッセージが伝送される場合、動作パネル12540を利用して、メッセージのテキストデータが入力され、テキストデータが動作入力制御部12640を介して、中央制御部12710に伝送される。中央制御部12710の制御によって、テキストデータは、変調/復調部12660及び通信回路12610を介して送信信号に変換され、アンテナ12510を介して無線基地局12000に送出される。
データ通信モードで、映像データを伝送するために、カメラ12530によって撮影された映像データが、カメラ・インターフェース12630を介して、映像符号化部12720に提供される。カメラ12530によって撮影された映像データは、カメラ・インターフェース12630及びLCD制御部12620を介して、ディスプレイ画面12520に直ちにディスプレイされる。
映像符号化部12720の構造は、前述の本発明のビデオ符号化装置の構造と相応する。映像符号化部12720は、カメラ12530から提供された映像データを、前述の本発明のビデオ符号化方式によって符号化し、圧縮符号化された映像データに変換し、符号化された映像データを、多重化/逆多重化部12680に出力することができる。カメラ12530の録画中に、携帯電話12500のマイクロホン12550によって獲得された音響信号も、音響処理部12650を経てデ、ジタル音響データに変換され、デジタル音響データは、多重化/逆多重化部12680に伝達することができる。
多重化/逆多重化部12680は、音響処理部12650から提供された音響データのように、映像符号化部12720から提供された符号化された映像データを多重化する。多重化されたデータは、変調/復調部12660及び通信回路12610を介して送信信号に変換され、アンテナ12510を介して送出される。
携帯電話12500が、外部から通信データを受信する過程では、アンテナ12510を介して受信された信号を、周波数復元(frequency recovery)及びA/D変換(analog-digital conversion)処理を介して、デジタル信号を変換する。変調/復調部12660は、デジタル信号の周波数帯域を復調する。帯域復調されたデジタル信号は、種類によって、ビデオ復号化部12690、音響処理部12650またはLCD制御部12620に伝達される。
携帯電話12500は、通話モードであるとき、アンテナ12510を介して受信された信号を増幅し、周波数変換及びA/D変換処理を介して、デジタル音響信号を生成する。受信されたデジタル音響信号は、中央制御部12710の制御によって、変調/復調部12660及び音響処理部12650を経て、アナログ音響信号に変換され、アナログ音響信号が、スピーカ12580を介して出力される。
データ通信モードにおいて、インターネットのウェブサイトからアクセスされたビデオファイルのデータが受信される場合、アンテナ12510を介して、無線基地局12000から受信された信号は、変調/復調部12660の処理結果、多重化されたデータを出力し、多重化されたデータは、多重化/逆多重化部12680に伝達される。
アンテナ12510を介して受信した多重化されたデータを復号化するために、多重化/逆多重化部12680は、多重化されたデータを逆多重化し、符号化されたビデオデータストリームと、符号化されたオーディオデータストリームとを分離する。同期化バス12730によって、符号化されたビデオデータストリームは、ビデオ復号化部12690に提供され、符号化されたオーディオデータストリームは、音響処理部12650に提供される。
映像復号化部12690の構造は、前述の本発明のビデオ復号化装置の構造と相応する。映像復号化部12690は、前述の本発明のビデオ復号化方法を利用して、符号化されたビデオデータを復号化し、復元されたビデオデータを生成し、復元されたビデオデータをLCD制御部12620を経て、ディスプレイ画面1252に、復元されたビデオデータを提供することができる。
それにより、インターネットのウェブサイトからアクセスされたビデオファイルのビデオデータが、ディスプレイ画面12520でディスプレイされる。それと同時に、音響処理部12650も、オーディオデータをアナログ音響信号に変換し、アナログ音響信号をスピーカ12580に提供することができる。それにより、インターネットのウェブサイトからアクセスされたビデオファイルに含まれたオーディオデータも、スピーカ12580で再生される。
携帯電話12500または他の形態の通信端末機は、本発明のビデオ符号化装置及びビデオ復号化装置をいずれも含む送受信端末機であるか、前述の本発明のビデオ符号化装置のみを含む送信端末機であるか、あるいは本発明のビデオ復号化装置のみを含む受信端末機であってもよい。
本発明の通信システムは、図23を参照して説明した構造に限定されるものではない。例えば、図26は、本発明による通信システムが適用されたデジタル放送システムを図示している。図26の一実施形態によるデジタル放送システムは、本発明のビデオ符号化装置及びビデオ復号化装置を利用して、衛星ネットワークまたは地上波ネットワークを介して伝送されるデジタル放送を受信することができる。
具体的に説明すれば、放送局12890は、電波を介して、ビデオデータストリームを通信衛星または放送衛星12900に伝送する。放送衛星12900は、放送信号を伝送し、放送信号は、家庭にあるアンテナ12860によって、衛星放送受信機に受信される。各家庭で、符号化されたビデオストリームは、TV(television)受信機12810、セットトップボックス(set-top box)12870または他のデバイスによって復号化されて再生される。
再生装置12830において、本発明のビデオ復号化装置が具現されることにより、再生装置12830が、ディスク及びメモリカードのような記録媒体12820に記録された符号化されたビデオストリームを読み取って復号化することができる。それにより、復元されたビデオ信号は、例えば、モニタ12840で再生される。
衛星/地上波放送のためのアンテナ12860、またはケーブルTV受信のためのケーブルアンテナ12850に連結されたセットトップボックス12870にも、本発明のビデオ復号化装置が搭載される。セットトップボックス12870の出力データも、TVモニタ12880で再生される。
他の例として、セットトップボックス12870の代わりに、TV受信機12810自体に、本発明のビデオ復号化装置が搭載されてもよい。
適切なアンテナ12910を具備した自動車12920が、衛星12800または無線基地局11700から送出される信号を受信することもできる。自動車12920に搭載された自動車ナビゲーションシステム12930のディスプレイ画面に、復号化されたビデオが再生される。
ビデオ信号は、本発明のビデオ符号化装置によって符号化され、記録媒体に記録されて保存される。具体的に説明すれば、DVDレコーダーによって、映像信号がDVDディスク12960に保存されるか、あるいはハードディスクレコーダ12950によって、ハードディスクに映像信号が保存される。他の例として、ビデオ信号は、SDカード12970に保存されてもよい。ハードディスクレコーダ12950が、一実施形態による本発明のビデオ復号化装置を具備すれば、DVDディスク12960、SDカード12970または他の形態の記録媒体に記録されたビデオ信号がモニタ12880で再生される。
自動車ナビゲーションシステム12930は、図25のカメラ12530、カメラ・インターフェース12630及び映像符号化部12720を含まないこともある。例えば、コンピュータ12100及びTV受信機12810も、図25のカメラ12530、カメラ・インターフェース12630及び映像符号化部12720を含まないこともある。
図27は、本発明の一実施形態によるビデオ符号化装置及びビデオ復号化装置を利用するクラウドコンピューティング・システムのネットワーク構造を図示している。
本発明のクラウドコンピューティング・システムは、クラウドコンピューティングサーバ14100、ユーザDB(database)14100、コンピューディング資源14200及びユーザ端末機を含んでなる。
クラウドコンピューティング・システムは、ユーザ端末機の要請によって、インターネットのような情報通信網を介して、コンピューディング資源のオンデマンド・アウトソーシングサービスを提供する。クラウドコンピューティング環境で、サービスプロバイダは、互いに異なる物理的な位置に存在するデータセンターのコンピューティング資源を仮想化技術で統合し、ユーザが必要とするサービスを提供する。サービスユーザはアプリケーション(application)、ストレージ(storage)、運用体制(OS)、保安(security)などのコンピューディング資源を、各ユーザ所有の端末にインストールして使用するのではなく、仮想化技術を介して生成された仮想空間上のサービスを、所望時点で所望するほど選んで使用することができる。
特定サービスユーザのユーザ端末機は、インターネット及び移動通信網を含む情報通信網を介して、クラウドコンピューティングサーバ14100に接続する。ユーザ端末機は、クラウドコンピューティングサーバ14100から、クラウドコンピューティングサービス、特に、動画再生サービスを提供される。ユーザ端末機は、デスクトップPC(personal computer)14300、スマートTV 14400、スマートフォン14500、ノート型パソコン14600、PMP(portable multimedia player)14700、タブレットPC
14800など、インターネット接続が可能な全ての電子機器になる。
クラウドコンピューティングサーバ14100は、クラウド網に分散している多数のコンピューディング資源14200を統合し、ユーザ端末機に提供することができる。多数のコンピューディング資源14200は、さまざまなデータサービスを含み、ユーザ端末機からアップロードされたデータを含んでもよい。このように、クラウドコンピューティングサーバ14100は、多くのところに分散している動画データベースを仮想化技術で統合し、ユーザ端末機が要求するサービスを提供する。
ユーザDB 14100には、クラウドコンピューティングサービスに加入しているユーザ情報が保存される。ここで、ユーザ情報は、ログイン情報、及び住所、氏名など個人信用情報を含んでもよい。また、ユーザ情報は、動画のインデックス(index)を含んでもよい。ここで、インデックスは、再生を完了した動画リストや、再生中の動画リストや、再生中の動画の停止時点などを含んでもよい。
ユーザDB 14100に保存された動画についての情報は、ユーザデバイス間に共有される。従って、例えば、ノート型パソコン14600から再生要請され、ノート型パソコン14600に所定動画サービスを提供した場合、ユーザDB 14100に、所定動画サービスの再生ヒストリーが保存される。スマートフォン14500から同一の動画サービスの再生要請が受信される場合、クラウドコンピューティングサーバ14100は、ユーザDB 14100を参照し、所定動画サービスを求めて再生する。スマートフォン14500が、クラウドコンピューティングサーバ14100を介して、動画データストリームを受信する場合、動画データストリームを復号化してビデオを再生する動作は、先に図24を参照して説明した携帯電話12500の動作と同様である。
クラウドコンピューティングサーバ14100は、ユーザDB 14100に保存された所定動画サービスの再生ヒストリーを参照することもできる。例えば、クラウドコンピューティングサーバ14100は、ユーザ端末機から、ユーザDB 14100に保存された動画に対する再生要請を受信する。動画が、その前に再生中であったならば、クラウドコンピューティングサーバ14100は、ユーザ端末機による選択により、最初から再生するか、あるいは以前停止時点から再生するかということにより、ストリーミング方法が異なる。例えば、ユーザ端末機が、最初から再生するように要請した場合には、クラウドコンピューティングサーバ14100は、ユーザ端末機に当該動画を最初のフレームからストリーミング伝送する。一方、端末機が、以前停止時点から続けて再生するように要請した場合には、クラウドコンピューティングサーバ14100は、ユーザ端末機に、当該動画を停止時点のフレームからストリーミング伝送する。
そのとき、ユーザ端末機は、図2Aないし図20を参照して説明した本発明のビデオ復号化装置を含んでもよい。他の例として、ユーザ端末機は、図1Aないし図20を参照して説明した本発明のビデオ符号化装置を含んでもよい。また、ユーザ端末機は、図1Aないし図20を参照して説明した本発明のビデオ符号化装置及びビデオ復号化装置をいずれも含んでもよい。
図1Aないし図20を参照して説明した本発明のビデオ符号化方法及びビデオ復号化方法、本発明のビデオ符号化装置及びビデオ復号化装置が活用される多様な実施形態について、図21ないし図27で説明した。しかし、図1Aないし図20を参照して説明した本発明のビデオ符号化方法及びビデオ復号化方法が記録媒体に保存されたり、あるいは本発明のビデオ符号化装置及びビデオ復号化装置がデバイスで具現されたりする多様な実施形態は、図21ないし図27の実施形態に限定されるものではない。
以上、本発明について、その望ましい実施形態を中心に説明した。本発明が属する技術分野で当業者であるならば、本発明が、本発明の本質的な特性から外れない範囲で変形された形態に具現されということを理解することができるであろう。従って、開示された実施形態は、限定的な観点ではなく、説明的な観点から考慮されなければならない。本発明の範囲は、前述の説明ではなく、特許請求の範囲に示されており、それと同等な範囲内にある全ての差異は、本発明に含まれたものであると解釈されければならないのである。