[本技術を適用した信号処理装置の一実施の形態]
以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像符号化装置)
2.第2の実施の形態(画像復号装置)
3.第3の実施の形態(パーソナルコンピュータ)
4.第4の実施の形態(テレビジョン受像機)
5.第5の実施の形態(携帯電話機)
6.第6の実施の形態(ハードディスクレコーダ)
7.第7の実施の形態(カメラ)
<1.第1の実施の形態>
[H.264/AVC方式の画像符号化装置]
図1は、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))符号化方式により画像を符号化する画像符号化装置の一実施の形態の構成を表している。以下、H.264及びMPEG 符号化方式を、H.264/AVC方式と称する。
図1の例において、画像符号化装置1は、A/D変換部11、画面並べ替えバッファ12、演算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、逆量子化部18、逆直交変換部19、演算部20を含むように構成されている。また、画像符号化装置1は、デブロックフィルタ21、フレームメモリ22、選択部23、イントラ予測部24、動き予測・補償部25、予測画像選択部26、およびレート制御部27も含むように構成されている。
A/D変換部11は、入力された画像データをA/D変換し、画面並べ替えバッファ12に出力し、記憶させる。画面並べ替えバッファ12は、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ12は、フレームの順番を並び替えた画像を、演算部13に供給する。また、画面並べ替えバッファ12は、フレームの順番を並び替えた画像を、イントラ予測部24および動き予測・補償部25にも供給する。
演算部13は、画面並べ替えバッファ12から読み出された画像から、予測画像選択部26を介してイントラ予測部24若しくは動き予測・補償部25から供給される予測画像を減算し、その差分情報を直交変換部14に出力する。
例えば、イントラ符号化が行われる画像の場合、演算部13は、画面並べ替えバッファ12から読み出された画像から、イントラ予測部24から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部13は、画面並べ替えバッファ12から読み出された画像から、動き予測・補償部25から供給される予測画像を減算する。
直交変換部14は、演算部13から供給される差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部15に供給する。
量子化部15は、直交変換部14が出力する変換係数を量子化する。量子化部15は、レート制御部27から供給される符号量の目標値に関する情報に基づいて量子化パラメータを設定し、量子化を行う。量子化部15は、量子化された変換係数を可逆符号化部16に供給する。
可逆符号化部16は、その量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。係数データは、レート制御部27の制御の下で量子化されているので、この符号量は、レート制御部27が設定した目標値となる(若しくは目標値に近似する)。
可逆符号化部16は、イントラ予測を示す情報などをイントラ予測部24から取得し、インター予測モードを示す情報や動きベクトル情報などを動き予測・補償部25から取得する。なお、イントラ予測(画面内予測)を示す情報は、以下、イントラ予測モード情報とも称する。また、インター予測(画面間予測)を示す情報モードを示す情報は、以下、インター予測モード情報とも称する。
可逆符号化部16は、量子化された変換係数を符号化するとともに、フィルタ係数、イントラ予測モード情報、インター予測モード情報、および量子化パラメータなどの各種情報を、符号化データのヘッダ情報の一部とする(多重化する)。可逆符号化部16は、符号化して得られた符号化データを蓄積バッファ17に供給して蓄積させる。
例えば、可逆符号化部16においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。
蓄積バッファ17は、可逆符号化部16から供給された符号化データを、一時的に保持し、所定のタイミングにおいて、H.264/AVC方式で符号化された符号化画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
また、量子化部15において量子化された変換係数は、逆量子化部18にも供給される。逆量子化部18は、その量子化された変換係数を、量子化部15による量子化に対応する方法で逆量子化する。逆量子化部18は、得られた変換係数を、逆直交変換部19に供給する。
逆直交変換部19は、供給された変換係数を、直交変換部14による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力(復元された差分情報)は、演算部20に供給される。
演算部20は、逆直交変換部19より供給された逆直交変換結果、すなわち、復元された差分情報に、予測画像選択部26を介してイントラ予測部24若しくは動き予測・補償部25から供給される予測画像を加算し、局部的に復号された画像(復号画像)を得る。
例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部20は、その差分情報にイントラ予測部24から供給される予測画像を加算する。また、例えば、差分情報が、インター符号化が行われる画像に対応する場合、演算部20は、その差分情報に動き予測・補償部25から供給される予測画像を加算する。
その加算結果は、デブロックフィルタ21またはフレームメモリ22に供給される。
デブロックフィルタ21は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。デブロックフィルタ21は、そのフィルタ処理結果をフレームメモリ22に供給する。なお、演算部20から出力される復号画像は、デブロックフィルタ21を介さずにフレームメモリ22に供給することができる。すなわち、デブロックフィルタ21のデブロックフィルタ処理は省略することができる。
フレームメモリ22は、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、選択部23を介してイントラ予測部24または動き予測・補償部25に出力する。
例えば、イントラ符号化が行われる画像の場合、フレームメモリ22は、参照画像を、
選択部23を介してイントラ予測部24に供給する。また、例えば、インター符号化が行われる場合、フレームメモリ22は、参照画像を、選択部23を介して動き予測・補償部25に供給する。
選択部23は、フレームメモリ22から供給される参照画像がイントラ符号化を行う画像である場合、その参照画像をイントラ予測部24に供給する。また、選択部23は、フレームメモリ22から供給される参照画像がインター符号化を行う画像である場合、その参照画像を動き予測・補償部25に供給する。
イントラ予測部24は、選択部23を介してフレームメモリ22から供給される処理対象ピクチャ内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部24は、予め用意された複数のモード(イントラ予測モード)でこのイントラ予測を行う。
H.264/AVC方式において、輝度信号に対しては、イントラ4×4予測モード、イントラ8×8予測モード及びイントラ16×16予測モードが定義されている。また、色差信号に関しては、それぞれのマクロブロックごとに、輝度信号とは独立した予測モードを定義することが可能である。イントラ4×4予測モードについては、それぞれの4×4輝度ブロックに対して、イントラ8×8予測モードについては、それぞれの8×8輝度ブロックに対して、1つのイントラ予測モードが定義されることになる。イントラ16×16予測モード、並びに、色差信号に対しては、1つのマクロブロックに対して、それぞれ1つの予測モードが定義されることになる。
イントラ予測部24は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ12から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部24は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部26を介して演算部13や演算部20に供給する。
また、上述したように、イントラ予測部24は、採用されたイントラ予測モードを示すイントラ予測モード情報等の情報を、適宜可逆符号化部16に供給する。
動き予測・補償部25は、インター符号化が行われる画像について、画面並べ替えバッファ12から供給される入力画像と、選択部23を介してフレームメモリ22から供給される参照画像とを用いて、動き予測(インター予測)を行う。動き予測・補償部25は、検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。動き予測・補償部25は、予め用意された複数のモード(インター予測モード)でこのようなインター予測を行う。
動き予測・補償部25は、候補となる全てのインター予測モードで予測画像を生成し、各予測画像のコスト関数値を評価し、最適なモードを選択する。動き予測・補償部25は、生成された予測画像を、予測画像選択部26を介して演算部13や演算部20に供給する。
また、動き予測・補償部25は、採用されたインター予測モードを示すインター予測モード情報や、算出した動きベクトルを示す動きベクトル情報を可逆符号化部16に供給する。
予測画像選択部26は、イントラ符号化を行う画像の場合、イントラ予測部24の出力を演算部13や演算部20に供給し、インター符号化を行う画像の場合、動き予測・補償部25の出力を演算部13や演算部20に供給する。
レート制御部27は、蓄積バッファ17に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15の量子化動作のレートを制御する。
[H.264/AVC方式の画像復号装置]
図2は、離散コサイン変換若しくはカルーネン・レーベ変換等の直交変換と動き補償により画像圧縮を実現する画像復号装置の主な構成例を示すブロック図である。図2に示される画像復号装置31は、図1の画像符号化装置1に対応する復号装置である。
画像符号化装置1より符号化された符号化データは、例えば伝送路や記録媒体等、任意の経路を介して、この画像符号化装置1に対応する画像復号装置31に供給され、復号される。
図2に示されるように、画像復号装置31は、蓄積バッファ41、可逆復号部42、逆量子化部43、逆直交変換部44、演算部45、デブロックフィルタ46、画面並べ替えバッファ47、およびD/A変換部48を含むように構成される。また、画像復号装置31は、フレームメモリ49、選択部50、イントラ予測部51、動き補償部52、および画像選択部53を有する。
蓄積バッファ41は、伝送されてきた符号化データを蓄積する。この符号化データは、画像符号化装置1により符号化されたものである。可逆復号部42は、蓄積バッファ41から所定のタイミングで読み出された符号化データを、図1の可逆符号化部16の符号化方式に対応する方式で復号する。
また、当該フレームがイントラ符号化されたものである場合、符号化データのヘッダ部にはイントラ予測モード情報が格納されている。可逆復号部42は、このイントラ予測モード情報も復号し、その情報をイントラ予測部51に供給する。これに対して、当該フレームがインター符号化されたものである場合、符号化データのヘッダ部には動きベクトル情報が格納されている。可逆復号部42は、この動きベクトル情報も復号し、その情報を動き補償部52に供給する。
逆量子化部43は、可逆復号部42により復号されて得られた係数データ(量子化係数)を、図1の量子化部15の量子化方式に対応する方式で逆量子化する。つまり、逆量子化部43は、図1の逆量子化部18と同様の方法で量子化係数の逆量子化を行う。
逆量子化部43は、逆量子化された係数データ、つまり、直交変換係数を、逆直交変換部44に供給する。逆直交変換部44は、図1の直交変換部14の直交変換方式に対応する方式(図1の逆直交変換部19と同様の方式)で、その直交変換係数を逆直交変換し、画像符号化装置1において直交変換される前の残差データに対応する復号残差データを得る。例えば、4次の逆直交変換が施される。
逆直交変換されて得られた復号残差データは、演算部45に供給される。また、演算部45には、画像選択部53を介して、イントラ予測部51若しくは動き補償部52から予測画像が供給される。
演算部45は、その復号残差データと予測画像とを加算し、画像符号化装置1の演算部13により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部45は、その復号画像データをデブロックフィルタ46に供給する。
デブロックフィルタ46は、供給された復号画像のブロック歪を除去した後、画面並べ替えバッファ47に供給する。
画面並べ替えバッファ47は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ12により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部48は、画面並べ替えバッファ47から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
デブロックフィルタ46の出力は、さらに、フレームメモリ49に供給される。
フレームメモリ49、選択部50、イントラ予測部51、動き補償部52、および画像選択部53は、画像符号化装置1のフレームメモリ22、選択部23、イントラ予測部24、動き予測・補償部25、および予測画像選択部26にそれぞれ対応する。
選択部50は、インター処理される画像と参照される画像をフレームメモリ49から読み出し、動き補償部52に供給する。また、選択部50は、イントラ予測に用いられる画像をフレームメモリ49から読み出し、イントラ予測部51に供給する。
イントラ予測部51には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部42から適宜供給される。イントラ予測部51は、この情報に基づいて、フレームメモリ49から取得した参照画像から予測画像を生成し、生成した予測画像を画像選択部53に供給する。
動き補償部52は、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)を可逆復号部42から取得する。
動き補償部52は、可逆復号部42から供給されるそれらの情報に基づいて、フレームメモリ49から取得した参照画像から予測画像を生成し、生成した予測画像を画像選択部53に供給する。
画像選択部53は、動き補償部52またはイントラ予測部51により生成された予測画像を選択し、演算部45に供給する。
[適応ループフィルタの詳細]
次に、特許文献1に提案されている適応ループフィルタ(ALF(Adaptive Loop Filter))について説明する。
図3は、適応ループフィルタを適用した画像符号化装置の構成例を示すブロック図である。なお、図3の例において、説明の便宜上、図1のA/D変換部11、画面並べ替えバッファ12、蓄積バッファ17、選択部23、イントラ予測部24、予測画像選択部26、およびレート制御部27は省略されている。また、矢印なども適宜省略されている。したがって、図3の例の場合、フレームメモリ22からの参照画像は、動き予測・補償部25に直接入力され、動き予測・補償部25からの予測画像は、演算部13および20に直接出力されている。
すなわち、図3の画像符号化装置61は、デブロックフィルタ21とフレームメモリ22の間に適応ループフィルタ71が追加された点のみが、図1の画像符号化装置1と異なっている。
適応ループフィルタ71は、画面並べ替えバッファ12(図示は省略)からの原画像との残差を最小とするよう、適応ループフィルタ係数の算出を行い、この適応ループフィルタ係数を用いて、デブロックフィルタ21からの復号画像にフィルタ処理を行う。このフィルタとして、例えば、ウィナーフィルタ(Wiener Filter)が用いられる。
また、適応ループフィルタ71は、算出した適応ループフィルタ係数を、可逆符号化部16に送る。可逆符号化部16においては、この適応ループフィルタ係数を、可変長符号化、算術符号化といった可逆符号化処理し、圧縮画像のヘッダ部に挿入する。
図4は、図3の画像符号化装置に対応する画像復号装置の構成例を示すブロック図である。なお、図4の例において、説明の便宜上、図2の蓄積バッファ41、画面並べ替えバッファ47、D/A変換部48、選択部50、イントラ予測部51、および画像選択部53は省略されている。また、矢印なども適宜省略されている。したがって、図4の例の場合、フレームメモリ49からの参照画像は、動き補償部52に直接入力され、動き補償部52からの予測画像は、演算部45に直接出力されている。
すなわち、図4の画像復号装置81は、デブロックフィルタ46とフレームメモリ49の間に適応ループフィルタ91が追加された点のみが、図2の画像復号装置31と異なっている。
適応ループフィルタ91には、可逆復号部42から復号され、ヘッダから抽出された適応ループフィルタ係数が供給される。適応ループフィルタ91は供給されたフィルタ係数を用いて、デブロックフィルタ46からの復号画像にフィルタ処理を行う。このフィルタとして、例えば、ウィナーフィルタ(Wiener Filter)が用いられる。
これにより、復号画像の画質を向上させ、さらに、参照画像の画質をも向上させることができる。
[デブロックフィルタ]
次に、H.264/AVC方式におけるデブロックフィルタについて説明する。デブロックフィルタ21は、動き補償ループ内に含まれ、復号画像におけるブロック歪み、すなわち、処理単位の領域の歪みを除去する。これにより、動き補償処理により参照される画像へのブロック歪の伝播が抑制される。
デブロックフィルタの処理としては、符号化データに含まれる、Picture Parameter Set RBSP(Raw Byte Sequence Payload)に含まれるdeblocking_filter_control_present_flag、及び、スライスヘッダ(Slice Header)に含まれるdisable_deblocking_filter_idcという2つのパラメータによって、以下の(a)乃至(c)の3通りの方法が選択可能である。
(a)ブロック境界、及びマクロブロック境界に施す
(b)マクロブロック境界にのみ施す
(c)施さない
量子化パラメータQPについては、以下の処理を輝度信号に対して適用する場合は、QPYを、色差信号に対して適用する場合はQPCを用いる。また、動きベクトル符号化、イントラ予測、エントロピー符号化(CAVLC/CABAC)においては、異なるスライスに属する画素値は"not available"として処理する。しかしながら、デブロックフィルタ処理においては、異なるスライスに属する画素値でも、同一のピクチャに属する場合は"available"であるとして処理を行う。
以下においては、図5に示されるように、デブロックフィルタ処理前の画素値をp0〜p3、q0〜q3とし、処理後の画素値をp0'〜p3'、q0'〜q3'とする。
まず、デブロックフィルタ処理に先立ち、図5におけるp及びqに対して、図6に示される表のように、ブロック境界強度データであるBs(Boundary Strength)が定義される。
図6に示すように、Bsは、画素pまたは画素qのいずれか一方がイントラ符号化されるマクロブロックに属し、且つ、当該画素がマクロブロックの境界に位置する場合に、最もフィルタ強度が高い「4」が割り当てられる。
Bsは、画素pまたは画素qのいずれか一方がイントラ符号化されるマクロブロックに属し、且つ、当該画素がマクロブロックの境界に位置しない場合に、「4」の次にフィルタ強度が高い「3」が割り当てられる。
Bsは、画素pおよび画素qの双方がイントラ符号化されるマクロブロックに属するものではなく、且つ、いずれかの画素が変換係数を持つ場合に、「3」の次にフィルタ強度が高い「2」が割り当てられる。
Bsは、画素pおよび画素qの双方がイントラ符号化されるマクロブロックに属するものではなく、且つ、いずれかの画素が変換係数を持たないという条件を場合に満たし、且つ、参照フレームが異なるか、参照フレームの枚数が異なるか、動きベクトルが異なるかのいずれかの条件を満たす場合に、「1」が割り当てられる。
Bsは、画素p,qの双方がイントラ符号化されるマクロブロックに属するものではなく、どちらの画素も変換係数を持たず、参照フレームおよび動きベクトルが同じ場合、「0」が割り当てられる。なお。「0」は、フィルタ処理を行わないことを意味する。
図5における(p2,p1,p0,q0,q1,q2)は、以下の式(1)および式(2)により示される条件が成立する場合のみ、デブロックフィルタ処理が施される。
Bs > 0 ・・・(1)
|p0-q0| < α; |p1-p0| < β; |q1-q1| < β ・・・(2)
式(2)のαおよびβは、デフォルトでは以下のようにQPに応じてその値が定められているが、符号化データの、スライスヘッダに含まれる、slice_alpha_c0_offset_div2及びslice_beta_offset_div2という2つのパラメータによって、グラフの矢印のように、ユーザがその強度を調整することが可能である。
なお、図7は、QPと閾値αの関係を示しており、QPにオフセット量を加えると、QPと閾値αの関係を示す曲線は矢印の方向に移動することから、フィルタ強度を調整することが明らかである。
また、閾値αは、隣接するブロックPとブロックQのそれぞれの量子化パラメータqPp,qPqを用いて、次の式(3)および(4)からindexAを算出することで、図8Aに示すテーブルから求められる。同様に、閾値βは、隣接するブロックPとブロックQのそれぞれの量子化パラメータqPp,qPqを用いて、式(3)および(5)からindexBを算出することで、図8Bに示すテーブルから求められる。このindexAおよびindexBは、以下の式(3)乃至式(5)のように定義される。
qPaν=(qPp+qPq+1)>>1 ・・・(3)
indexA=Clip3(0,51,qPaν+FilterOffsetA) ・・・(4)
indexB=Clip3(0,51,qPaν+FilterOffsetB) ・・・(5)
式(4)および式(5)において、FilterOffsetA及びFilterOffsetBが、ユーザによる調整分に相当する。
デブロックフィルタ処理は、以下に説明するように、Bs<4の場合と、Bs=4の場合とで、互いに異なる方法が定義されている。
まず、Bs<4の場合、デブロックフィルタ処理後の画素値p'0及びq'0が、以下の式(6)乃至式(8)のように求められる。
Δ=Clip3(−tc,tc((((q0−p0)<<2)+(p1−q1)+4)>>3))
・・・(6)
p'0=Clip1(p0+Δ) ・・・(7)
q'0=Clip1(q0+Δ) ・・・(8)
ここで、tcは、以下の式(9)または式(10)ように算出される。すなわち、chromaEdgeFlagの値が「0」である場合、tcは以下の式(9)のように算出される。
tc=tc0+((ap<β)?1:0)+((aq<β)?1:0) ・・・(9)
また、chromaEdgeFlagの値が「0」以外である場合、tcは以下の式(10)のように算出される。
tc=tc0+1 ・・・(10)
tC0の値は、BsとindexAの値に応じて、図9Aおよび図9Bに示される表のように定義される。
また、式(9)のap及びaqの値は、以下の式(11)および(12)のように算出される。
ap=|p2−p0| ・・・(11)
aq=|q2−q0| ・・・(12)
デブロックフィルタ処理後の画素値p'1は以下のように求められる。すなわち、chromaEdgeFlagの値が「0」で、尚且つ、apの値がβ以下である場合、p'1は、以下の式(13)のように求められる。
p'1=p1+Clip3(−tc0,tc0,(p2+((p0+q0+1)>>1)−(p1<<1))>>1)
・・・(13)
また、式(13)が成り立たない場合、p'1は、以下の式(14)のように求められる。
p'1=p1 ・・・(14)
デブロックフィルタ処理後の画素値q'1は以下のように求められる。すなわち、chromaEdgeFlagの値が「0」で、尚且つ、aqの値がβ以下である場合、q'1は、以下の式(15)のように求められる。
q'1=q1+Clip3(−tc0,tc0,(q2+((p0+q0+1)>>1)−(q1<<1))>>1)
・・・(15)
また、式(15)が成り立たない場合、q'1は、以下の式(16)のように求められる。
q'1=q1 ・・・(16)
p'2及びq'2の値は、Filtering前の値p2及びq2と変わらない。すなわち、p'2は、以下の式(17)のように求められ、q'2は、以下の式(18)のように求められる。
p'2=p2 ・・・(17)
q'2=q2 ・・・(18)
次に、Bs=4の場合、デブロックフィルタ後の画素値p'i(i=0..2)は、以下のように求められる。chromaEdgeFlag の値が「0」であり、以下の式(19)に示される条件が成り立つ場合、p'0、p'1、及びp'2は、以下の式(20)乃至式(22)のように求められる。
ap<β&&|p0−q0|<((α>>2)+2) ・・・(19)
p'0=(p2+2×p1+2×p0+2×q0+q1+4)>>3 ・・・(20)
p'1=(p2+p1+p0+q0+2)>>2 ・・・(21)
p'2=(2×p3+3×p2+p1+p0+q0+4)>>3 ・・・(22)
また、式(19)に示される条件が成り立たない場合、p'0、p'1、及びp'2は、以下の式(23)乃至(25)のように求められる。
p'0=(2×p1+p0+q1+2)>>2 ・・・(23)
p'1=p1 ・・・(24)
p'2=p2 ・・・(25)
デブロックフィルタ処理後の画素値q'i(I=0..2)は、以下のように求められる。すなわち、chromaEdgeFlagの値が「0」であり、以下の式(26)に示される条件が成り立つ場合、q'0、q'1、及びq'2は、以下の式(27)乃至(29)のように求められる。
aq<β&&|p0−q0|<((α>>2)+2) ・・・(26)
q'0=(p1+2×p0+2×q0+2×q1+q2+4)>>3 ・・・(27)
q'1=(p0+q0+q1+q2+2)>>2 ・・・(28)
q'2=(2×q3+3×q2+q1+q0+p4+4)>>3 ・・・(29)
また、式(26)に示される条件が成り立たない場合、q'0、q'1、及びq'2は、以下の式(30)乃至(32)のように求められる。
q'0=(2×q1+q0+p1+2)>>2 ・・・(30)
q'1=q1 ・・・(31)
q'2=q2 ・・・(32)
[コスト関数]
ところで、AVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
かかる選択方式の例として、http://iphome.hhi.de/suehring/tml/index.htm において公開されている、JM (Joint Model) と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエアに実装されている方法を挙げることが出来る。
JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択することが可能である。どちらも、それぞれの予測モードModeに関するコスト関数値を算出し、これを最小にする予測モードを当該ブロック乃至マクロブロックに対する最適モードとして選択する。
High Complexity Modeにおけるコスト関数は、以下の式(33)のようになる。
Cost(Mode∈Ω)=D+λ*R ・・・(33)
ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードModeで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードModeで符号化した場合の総符号量である。
つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モード(Mode)により、一度、仮エンコード処理を行なう必要があり、より高い演算量を要する。
Low Complexity Modeにおけるコスト関数は、以下の式(34)のようになる。
Cost(Mode∈Ω)=D+QP2Quant(QP)*HeaderBit ・・・(34)
ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP) は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
すなわち、Low Complexity Modeにおいては、それぞれの候補モード(Mode)に関して、予測処理を行う必要があるが、復号化画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
[コーディングユニット]
次に、非特許文献2に記載のHEVC (High Efficiency Video Coding)符号化方式(以下、HEVC方式と称する)において定められている、コーディングユニット(Coding Unit)について説明する。
H.264/AVC方式においては、1つのマクロブロックを、複数の動き補償ブロックに分割し、それぞれに対して異なる動き情報を持たせることが可能であった。すなわち、H.264/AVC方式においては、マクロブロックとサブマクロブロックによる階層構造が規定されているが、例えば、HEVC方式においては、図10に示されるように、コーディングユニット(CU(Coding Unit))が規定されている。
CUは、Coding Tree Block(CTB)とも呼ばれ、H.264/AVC方式におけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の部分領域である。後者は、16×16画素の大きさに固定されているのに対し、前者の大きさは固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。
例えば、出力となる符号化データに含まれるシーケンスパラメータセット(SPS(Sequence Parameter Set))において、CUの最大サイズ(LCU(Largest Coding Unit))と最小サイズ((SCU(Smallest Coding Unit))が規定される。
それぞれのLCU内においては、SCUのサイズを下回らない範囲で、split-flag=1とすることにより、より小さなサイズのCUに分割することができる。図10の例では、LCUの大きさが128であり、最大階層深度が5となる。2N×2Nの大きさのCUは、split_flagの値が「1」である時、1つ下の階層となる、N×Nの大きさのCUに分割される。
更に、CUは、イントラ若しくはインター予測の処理単位となる領域(ピクチャ単位の画像の部分領域)であるプレディクションユニット(Prediction Unit(PU))に分割され、また、直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である、トランスフォームユニット(Transform Unit(TU))に分割される。現在、HEVC方式においては、4×4及び8×8に加え、16×16及び32×32直交変換を用いることが可能である。
以上のHEVC方式のように、CUを定義し、そのCUを単位として各種処理を行うような符号化方式の場合、H.264/AVC方式におけるマクロブロックはLCUに相当すると考えることができる。ただし、CUは、図10に示されるように階層構造を有するので、その最上位階層のLCUのサイズは、例えば128×128画素のように、H.264/AVC方式のマクロブロックより大きく設定されることが一般的である。
本開示は、H.264/AVC方式におけるマクロブロックを用いる符号化方式だけでなく、HEVC方式のようなCU、PU、およびTU等を用いる符号化方式にも適用することができる。すなわち、ブロックも、ユニットも、処理単位となる領域を示すものであるので、以下、適宜、どちらも含むように、処理単位の領域という文言を用いて説明する。
ただし、以下において、H.264/AVC方式と例として説明する場合には、ブロックを用いて説明するが、そのブロックは、処理単位となる領域を示すものであり、HEVC方式においてはユニットである。逆に、HEVC方式を例として説明する場合には、ユニットを用いて説明するが、そのユニットは、処理単位となる領域を示すものであり、H.264/AVC方式においてはブロックである。
[HEVC方式における適応オフセット処理]
次に、HEVC方式における適応オフセットフィルタについて説明する。HEVC方式においては、非特許文献3に記載のSample Adaptive Offset方式が採用されている。
適応オフセットフィルタ(Picture Quality Adaptive Offset:PQAO)は、図11に示されるように、デブロックフィルタ(DB)と、適応ループフィルタ(ALF)の間に設けられている。
適応オフセットの種類としては、バンドオフセットと呼ばれるものが2種類、エッジオフセットと呼ばれるものが6種類あり、さらに、オフセットを適応しないことも可能である。そして、画像をquad-treeに分割し、それぞれの領域に、上述したどの適応オフセットの種類により符号化するかを選択することができる。
この選択情報が、PQAO Info.として、符号化部(Entropy Coding)により符号化され、ビットストリームが生成され、生成されたビットストリームが復号側に送信される。この方法を用いることで、符号化効率を向上させることができる。
ここで、図12を参照して、quad-tree構造について説明する。
例えば、符号化側においては、図12のA1に示されるように、領域0が分割されていない状態を示すLevel-0(分割深度0)のコスト関数値J0が計算される。また、領域0が4つの領域1乃至4に分割された状態を示すLevel-1(分割深度0)のコスト関数値J1,J2,J3,J4が計算される。
そして、A2に示されるように、コスト関数値が比較され、J0>(J1+J2+J3+J4)により、Level-1の分割領域(Partitions)が選択される。
同様にして、A3に示されるように、領域0が16つの領域5乃至20に分割された状態を示すLevel-2(分割深度2)のコスト関数値J5乃至J20が計算される。
そして、A4に示されるように、コスト関数値がそれぞれ比較され、J1<(J5+J6+J9+J10)により、領域1においては、Level-1の分割領域(Partitions)が選択される。J2>(J7+J8+J11+J12)により、領域2においては、Level-2の分割領域(Partitions)が選択される。J3>(J13+J14+J17+J18)により、領域3においては、Level-2の分割領域(Partitions)が選択される。J4>(J15+J16+J19+J20)により、領域4においては、Level-1の分割領域(Partitions)が選択される。
その結果、Quad-tree構造におけるA4に示される最終的なQuad-tree領域(Partitions)が決定される。そして、Quad-tree構造の決定された領域毎に、2種類のバンドオフセット、6種類のエッジオフセット、およびオフセットなしのすべてについてコスト関数値が算出され、どのオフセットにより符号化されるのかが決定される。
例えば、図12の例においては、白矢印に示されるように、領域1に対しては、EO(4)、すなわち、エッジオフセットのうちの4種類目が決定されている。領域7に対しては、OFF、すなわち、オフセットなしが決定されており、領域8に対しては、EO(2)、すなわち、エッジオフセットのうちの2種類目が決定されている。領域11および12に対しては、OFF、すなわち、オフセットなしが決定されている。
また、領域13に対しては、BO(1)、すなわち、バンドオフセットのうちの1種類目が決定されており、領域14に対しては、EO(2)、すなわち、エッジオフセットのうちの2種類目が決定されている。領域17に対しては、BO(2)、すなわち、バンドオフセットのうちの2種類目が決定されており、領域18に対しては、BO(1)、すなわち、バンドオフセットのうちの1種類目が決定されている。領域4に対しては、EO(1)、すなわち、エッジオフセットのうちの1種類目が決定されている。
次に、図13を参照して、バンドオフセットの詳細について説明する。
バンドオフセットにおいては、図13の例においては、1つの目盛りが1バンド=8画素を表しており、輝度画素値が32バンドに分けられて、それぞれのバンドが独立にオフセット値を有する。
すなわち、図13の例においては、0乃至255画素(32バンド)のうち、中央の16バンドが、第1グループに分けられ、両脇の8バンドずつが第2グループに分けられている。
そして、第1グループおよび第2グループのどちらか一方のみのオフセットが符号化され、復号側に送られる。一般的に、1つの領域において、白黒はっきりしているか、微妙な色合いがあるかのどちらかであることが多く、第1グループと第2グループ両方に全てに画素があるのは稀である。このため、一方のみのオフセットしか送らないことで、それぞれのQuad-tree領域において、含まれていない値の画素値が伝送されて符号化量が増えるのが、抑制される。
なお、入力信号が放送によるものである場合、輝度信号は、16,235、色差信号は、16,240の範囲に制限される。このとき、図13の下段に示されるbroadcast legalが適用され、×印が示されている、両脇の2バンドずつに対するオフセット値は伝送されない。
次に、図14を参照して、エッジオフセットの詳細について説明する。
エッジオフセットにおいては、当該画素値と、当該画素値に隣接する隣接画素値の比較が行われ、これに対応したカテゴリに対して、オフセット値が伝送されることになる。
エッジオフセットには、図14のA乃至図14のDに示される4つの1次元パターンと、図14のEおよび図14のFに示される2つの2次元パターンが存在し、それぞれ、図15に示されるカテゴリでオフセットが伝送される。
図14のAは、当該画素Cに対して、隣接画素が左右の1次元に配置されている、すなわち、図14のAのパターンに対して0度をなしている1-D,0-degreeパターンを表している。図14のBは、当該画素Cに対して、隣接画素が上下の1次元に配置されている、すなわち、図14のAのパターンに対して90度をなしている1-D,90-degreeパターンを表している。
図14のCは、当該画素Cに対して、隣接画素が左上と右下の1次元に配置されている、すなわち、図14のAのパターンに対して135度をなしている1-D,135-degreeパターンを表している。図14のDは、当該画素Cに対して、隣接画素が右上と左下の1次元に配置されている、すなわち、図14のAのパターンに対して45度をなしている1-D,135-degreeパターンを表している。
図14のEは、当該画素Cに対して、隣接画素が上下左右2次元に配置されている、すなわち、当該画素Cに対して交差している2-D,crossパターンを表している。図14のFは、当該画素Cに対して、隣接画素が右上左下、左上右下の2次元に配置されている、すなわち、当該画素Cに対して斜めに交差している2-D,diagonalパターンを表している。
図15のAは、1次元パターンの規則一覧表(Classification rule for 1-D patterns)を示している。図14のA乃至図14のDのパターンは、図15のAに示されるような5種類のカテゴリに分類され、そのカテゴリによりオフセットが算出されて、復号部に送られる。
当該画素Cの画素値が2つの隣接画素の画素値より小さい場合、カテゴリ1に分類される。当該画素Cの画素値が一方の隣接画素の画素値より小さくて、他方の隣接画素の画素値と一致する場合、カテゴリ2に分類される。当該画素Cの画素値が一方の隣接画素の画素値より大きくて、他方の隣接画素の画素値と一致する場合、カテゴリ3に分類される。当該画素Cの画素値が2つの隣接画素の画素値より大きい場合、カテゴリ4に分類される。以上のどれでもない場合、カテゴリ0に分類される。
図15のBは、2次元パターンの規則一覧表(Classification rule for 2-D patterns)を示している。図14のEおよび図14のFのパターンは、図15のBに示されるような7種類のカテゴリに分類され、そのカテゴリによりオフセットが復号部に送られる。
当該画素Cの画素値が4つの隣接画素の画素値より小さい場合、カテゴリ1に分類される。当該画素Cの画素値が3つの隣接画素の画素値より小さくて、4番目の隣接画素の画素値と一致する場合、カテゴリ2に分類される。当該画素Cの画素値が3つの隣接画素の画素値より小さくて、4番目の隣接画素の画素値より大きい場合、カテゴリ3に分類される。
当該画素Cの画素値が3つの隣接画素の画素値より大きくて、4番目の隣接画素の画素値より小さい場合、カテゴリ4に分類される。当該画素Cの画素値が3つの隣接画素の画素値より大きくて、4番目の隣接画素の画素値と一致する場合、カテゴリ5に分類される。当該画素Cの画素値が4つの隣接画素の画素値より大きい場合、カテゴリ6に分類される。以上のどれでもない場合、カテゴリ0に分類される。
以上のように、エッジオフセットにおいては、1次元パターンの方が、隣接2画素のみに対する比較を行えばよいので、演算量は低くなる。なお、high efficiency 符号化条件においては、low delay 符号化条件に比して、1bitオフセットの値を高精度にして、復号側へ送られる。
以上の適応オフセット処理は、HEVC方式において、輝度信号に対してのみ行われていた。
しかしながら、色差信号に対して、適応オフセット処理を施すことは、演算量の増大につながる。また、色差信号は、特に、入力が、4:2:0や4:2:2である場合、輝度信号に比して解像度が低く、輝度信号と同じ処理を行うことは冗長である。
以上のことを踏まえて、本実施においては、色差信号に対しても、適応オフセットフィルタを適用させることにより、色差信号における符号化効率を向上させることができるようにする。
[画像符号化装置の構成例]
図16は、本開示を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
図16の画像符号化装置101は、A/D変換部11、画面並べ替えバッファ12、演算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、逆量子化部18、逆直交変換部19、演算部20を備える点で、図1の画像符号化装置1と共通している。図16の画像符号化装置101は、デブロックフィルタ21、フレームメモリ22、選択部23、イントラ予測部24、動き予測・補償部25、予測画像選択部26、およびレート制御部27を備える点で、図1の画像符号化装置1と共通している。
また、図16の画像符号化装置101は、上述した図3の適応ループフィルタ71が追加された点で、図1の画像符号化装置1と異なっている。
さらに、図16の画像符号化装置101は、適応オフセット部111および色差適応オフセット部112が追加された点で、図1の画像符号化装置1と異なっている。
図16に示される画像符号化装置101は、予測処理を用いて画像データを符号化する。ここで、符号化方式としては、例えば、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))(以下H.264/AVCと称する)方式や、HEVC(High Efficiency Video Coding)方式などが用いられる。
すなわち、適応オフセット部111および色差適応オフセット部112は、デブロックフィルタ21の後、適応ループフィルタ71の前に設けられている。すなわち、適応オフセット部111および色差適応オフセット部112は、演算部13、直交変換部14、量子化部15、逆量子化部18、逆直交変換部19、演算部20、デブロックフィルタ21、適応ループフィルタ71、フレームメモリ22、選択部23、イントラ予測部24または動き予測・補償部25、および予測画像選択部26からなる動き補償ループ内に設けられている。すなわち、動き補償ループ内では、画像がループして用いられている。
適応オフセット部111は、デブロックフィルタ21からの復号画像(ローカルデコード後のベースバンド情報)の輝度信号に対するオフセット処理を行う。すなわち、適応オフセット部111は、図12を参照して上述したQuad-tree 構造を決定する。具体的には、適応オフセット部111は、輝度信号を用いて、quad-treeによる領域分割を行い、分割された領域毎に、バンドオフセット2種類、エッジオフセット6種類、オフセットなしの中から、オフセットの種類を決定する。また、適応オフセット部111は、Quad-tree 構造を参照して、分割された領域毎に、輝度信号に対するオフセット値を算出する。
適応オフセット部111は、決定したquad-tree構造と、算出した輝度信号に対するオフセット値(以下、輝度オフセット値と称する)を、可逆符号化部16および色差適応オフセット部112に供給する。
また、適応オフセット部111は、決定したquad-tree構造と輝度オフセット値を用いて、デブロックフィルタ21からの復号画像の輝度信号に対してオフセット処理を行う。そして、適応オフセット部111は、オフセット処理後の輝度信号と、色差適応オフセット部112によりオフセット処理が施された色差信号とを、適応ループフィルタ71に供給する。
色差適応オフセット部112は、適応オフセット部111からのquad-tree構造に基づいて、色差信号に対するオフセット処理を行う。すなわち、色差適応オフセット部112は、適応オフセット部111からのquad-tree構造を参照して、分割された領域毎に、色差信号に対するオフセット値を算出する。色差適応オフセット部112は、決定した色差オフセット値を用いて、デブロックフィルタ21からの復号画像の色差信号に対してオフセット処理を行う。そして、色差適応オフセット部112は、オフセット処理後の色差信号を適応オフセット部111に供給する。
さらに、色差適応オフセット部112は、決定した色差信号に対するオフセット値(以下、色差オフセット値と称する)と、輝度オフセット値と相関係数を用いて、色差オフセット値の予測残差を算出し、可逆符号化部16に供給する。
適応ループフィルタ71は、適応オフセット部111によりオフセットされた復号画像に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
[本開示の適応オフセット処理]
図16の適応オフセット部111および色差適応オフセット部112により行われる適応オフセット処理について、再度、図12乃至15を適宜参照して説明する。
まず、画像符号化装置101においては、輝度信号と色差信号には、相関がある事実を使用し、図12を参照して上述したquad-tree構造の決定を、輝度信号のみで行い、輝度信号を用いて決定されたquad-tree構造の領域分割を、色差信号にも適用する。
これにより、輝度信号と色差信号で独立した領域分割を行わなくて済むので、演算量の増大を抑えることができる。さらに、復号側へ、輝度と色差で異なる領域分割に関する情報を伝える必要がないので、画像圧縮情報の符号量が増大されない。
なお、オフセットの種類については、輝度信号のquad-tree構造に基づいて決定される。もちろん、オフセットの種類についても、輝度信号と色差信号を同じにしてもよい。また、例えば、色差信号に関しては、バンドオフセットとエッジオフセットの、2つだけの種類による分割がなされてもよい。すなわち、この場合、色差信号に関しては、バンドオフセット、エッジオフセット、オフ(オフセットを行わない)の3種類のみのquad-tree構造として処理が行われる。
さらに、色差信号は、輝度信号より解像度が低いことから、バンドオフセットを適用する際には、図13に示される輝度信号に対する32バンドよりも少ない、例えば、16バンドによりオフセットを送る。これにより、符号量の増大を抑えながら、画質を改善することが可能である。
また、輝度信号は、0がその成分がないことを意味するが、色差信号に関しては、8ビットの場合、128がその成分がないことを意味する。このため、図13において、輝度信号においては、第1グループに関する情報が送られるとき、色差信号でにおいては、第2グループに関する情報が送られる。反対に、輝度信号において、第2グループに関する情報が送られるとき、色差信号においては、第1グループに関する情報が送られる。このようにしてもよい。
さらに、エッジオフセット、バンドオフセットともに、色差信号に対するオフセット値OCではなく、次の式(35)に示される予測残差を復号側に送るようにする。
OC−(α*OL + β) ・・・(35)
ここで、OLは、輝度信号に対するオフセット値であり、α、βは、相関係数である。このα、βは、2種類のバンドオフセット、6種類のエッジオフセット、それぞれ別個の値が算出されて、復号側へ送られてもよい。あるいは、バンドオフセットとエッジオフセットのそれぞれに対して、2種類の相関係数αおよびβが算出されて、送られてもよい。さらに、CbとCrについて別々に相関係数αおよびβが算出されて、送られてもよい。
さらに、また、バンドオフセットで、輝度信号に対しては、32バンドあるが、色差信号に対して、16バンドしかない場合、OLが、OL0とOL1に対応すると仮定すると、次の式(36)に示される予測残差を復号側に送るようにしてもよい。
OC−(α*(OL0 +OL1+1)/2+ β) ・・・(36)
なお、上記式(35)および式(36)において、α=1、β=0の場合、色差オフセット値として、輝度オフセット値と同じ値が用いられることになる。さらに、画像符号化装置101においては、色差信号に対するオフセット値(予測残差)を量子化するようにしてもよい。
また、次に後述するように、輝度信号と色差信号で、カテゴリの対応を行うようにしてもよい。すなわち、例えば、4:2:0の場合、4つの輝度画素が、1つの色差画素にも対応することにしたが、4つのうち全部、もしくは3つの輝度画素が同じカテゴリに属する場合には、色差信号にも同一のカテゴリを適用する。
輝度画素が2つずつ同じカテゴリに属する場合には、色差信号に対して、どちらのカテゴリを適用するかに関する情報を表すフラグを送る。これ以外の場合には、上述したように、色差信号に関してもカテゴリ情報を送る。
以上のようにして、色差信号に対しても適応オフセットを適用させることにより、演算量を増大させることなく、色差信号における符号化効率を向上させることができる。
[適応オフセット部および色差信号適応オフセット部の構成例]
次に、画像符号化装置101の各部について説明する。図17は、適応オフセット部111および色差信号適応オフセット部112の構成例を示すブロック図である。
図17の例において、適応オフセット部111は、Quad-tree構造決定部131、輝度オフセット算出部132、輝度オフセット部133、および画素バッファ134を含むように構成されている。
色差適応オフセット部112は、色差オフセット算出部141、相関係数算出部142、色差オフセット予測値算出部143、および色差オフセット部144を含むように構成されている。
デブロックフィルタ21からのデブロック後の画素値は、Quad-tree構造決定部131、輝度オフセット部133、および色差オフセット部144に供給される。
Quad-tree構造決定部131は、デブロック後の輝度信号の画素値を参照して、図12を参照して上述したようにQuad-tree構造を決定する。すなわち、Quad-tree構造決定部131は、画像をquad-treeに分割し、それぞれの領域に、上述したどの適応オフセットの種類により符号化するかを、コスト関数値を用いて決定する。
Quad-tree構造決定部131は、決定したQuad-tree構造を、輝度オフセット算出部132、輝度オフセット部133、色差オフセット算出部141、および色差オフセット部144に供給する。
輝度オフセット算出部132は、輝度信号に関して、Quad-tree分割された各領域に対する輝度オフセット値の算出を行う。輝度オフセット算出部132は、算出した輝度オフセットの情報を、輝度オフセット部133、相関係数算出部142、および色差オフセット予測値算出部143に供給する。また、輝度オフセット算出部132は、算出した輝度オフセットの情報を、Quad-tree構造の情報とともに、可逆符号化部16に供給する。
輝度オフセット部133は、デブロック後の輝度信号の画素値に対して、オフセット処理を行う。すなわち、輝度オフセット部133は、Quad-tree構造決定部131によりQuad-tree分割された各領域の輝度の画素値に対して、輝度オフセット算出部132により算出された輝度オフセット値を加算する。輝度オフセット部133は、オフセット処理後の画素値を画素バッファ134に蓄積する。
画素バッファ134は、輝度信号および色差信号のオフセット処理後の画素値の両方が揃うのを待ち、揃ったところで、オフセット処理後の画素値を、適応ループフィルタ71に供給する。
色差オフセット算出部141および色差オフセット部144においては、輝度信号のQuad-tree構造に対して、上述したような色差信号の場合の分割数、バンド数、またはカテゴリの対応が予め設定されている。それを踏まえて、色差オフセット算出部141は、色差信号に関して、Quad-tree構造決定部131からのQuad-tree分割された各領域に対する色差オフセット値を算出する。色差オフセット算出部141は、算出した色差オフセットの情報を、相関係数算出部142、および色差オフセット部144に供給する。
相関係数算出部142は、輝度オフセット算出部132からの輝度オフセットの情報と、色差オフセット算出部141からの色差オフセットの情報とを用いて、相関係数αおよびβを算出する。相関係数算出部142は、算出した相関係数αおよびβの値と、色差オフセットの情報を、色差オフセット予測値算出部143に供給する。また、相関係数算出部142は、算出した相関係数αおよびβの値を可逆符号化部16に供給する。
色差オフセット予測値算出部143は、輝度オフセット算出部132からの輝度オフセット値と、相関係数算出部142からの相関係数αおよびβの値、並びに色差オフセット値とを用いて、予測残差(以下、色差オフセット残差とも称する)を算出する。このとき、例えば、上述した式(35)または式(36)が用いられる。色差オフセット予測値算出部143は、算出した色差オフセット残差を、可逆符号化部16に供給する。
色差オフセット部144は、デブロック後の色差信号の画素値に対して、オフセット処理を行う。すなわち、色差オフセット部144は、Quad-tree構造決定部131によりQuad-tree分割された各領域の色差の画素値に対して、色差オフセット算出部141により算出された色差オフセット値を加算する。色差オフセット部144は、オフセット処理後の画素値を画素バッファ134に蓄積する。
[符号化処理の流れ]
次に、以上のような画像符号化装置101により実行される各処理の流れについて説明する。最初に、図18のフローチャートを参照して、符号化処理の流れの例を説明する。
ステップS101において、A/D変換部11は入力された画像をA/D変換する。ステップS102において、画面並べ替えバッファ12は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
画面並べ替えバッファ12から供給される処理対象の画像がイントラ処理されるブロックの画像である場合、参照される復号済みの画像がフレームメモリ22から読み出され、選択部23を介してイントラ予測部24に供給される。
これらの画像に基づいて、ステップS103において、イントラ予測部24は処理対象のブロックの画素を、候補となる全てのイントラ予測モードでイントラ予測する。なお、参照される復号済みの画素としては、デブロックフィルタ21、適応オフセット部111、色差適応オフセット部112、および適応ループフィルタ71によりフィルタやオフセットされていない画素が用いられる。
この処理により、候補となる全てのイントラ予測モードでイントラ予測が行われ、候補となる全てのイントラ予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測モードが選択され、最適イントラ予測モードのイントラ予測により生成された予測画像とそのコスト関数値が予測画像選択部26に供給される。
画面並べ替えバッファ12から供給される処理対象の画像がインター処理される画像である場合、参照される画像がフレームメモリ22から読み出され、選択部23を介して動き予測・補償部25に供給される。これらの画像に基づいて、ステップS104において、動き予測・補償部25は、動き予測・補償処理を行う。
この処理により、候補となる全てのインター予測モードで動き予測処理が行われ、候補となる全てのインター予測モードに対してコスト関数値が算出され、算出したコスト関数値に基づいて、最適インター予測モードが決定される。そして、最適インター予測モードにより生成された予測画像とそのコスト関数値が予測画像選択部26に供給される。
ステップS105において、予測画像選択部26は、イントラ予測部24および動き予測・補償部25より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測画像選択部26は、決定した最適予測モードの予測画像を選択し、演算部13,20に供給する。この予測画像は、後述するステップS106,S111の演算に利用される。
なお、この予測画像の選択情報は、イントラ予測部24または動き予測・補償部25に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部24は、最適イントラ予測モードを示す情報(すなわち、イントラ予測モード情報)を、可逆符号化部16に供給する。
最適インター予測モードの予測画像が選択された場合、動き予測・補償部25は、最適インター予測モードを示す情報と、さらに、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部16に出力する。最適インター予測モードに応じた情報としては、動きベクトル情報や参照フレーム情報などがあげられる。
ステップS106において、演算部13は、ステップS102で並び替えられた画像と、ステップS105で選択された予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部25から、イントラ予測する場合はイントラ予測部24から、それぞれ予測画像選択部26を介して演算部13に供給される。
差分データは元の画像データに較べてデータ量が小さくなっている。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
ステップS107において、直交変換部14は演算部13から供給された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。
ステップS108において、量子化部15は変換係数を量子化する。この量子化に際しては、後述するステップS118の処理で説明されるように、レートが制御される。
以上のようにして量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS109において、逆量子化部18は量子化部15により量子化された変換係数を量子化部15の特性に対応する特性で逆量子化する。ステップS110において、逆直交変換部19は逆量子化部18により逆量子化された変換係数を直交変換部14の特性に対応する特性で逆直交変換する。
ステップS111において、演算部20は、予測画像選択部26を介して入力される予測画像を局部的に復号された差分情報に加算し、局部的に復号された(すなわち、ローカルデコードされた)画像(演算部13への入力に対応する画像)を生成する。
ステップS112においてデブロックフィルタ21は、演算部20より出力された画像に対して、デブロックフィルタ処理を行う。これによりブロック歪みが除去される。デブロックフィルタ21からの復号画像は、適応オフセット部111に出力される。
ステップS113において、適応オフセット部111および色差適応オフセット部112は、適応オフセット処理を行う。この適応オフセット処理の詳細は、図19を参照して後述される。この処理により、輝度信号を基に、quad-tree構造が決定され、決定されたquad-tree分割された領域の輝度、色差に対して、オフセット値がそれぞれ算出される。そして、決定されたquad-tree分割された領域の輝度、色差に対して、オフセット処理が施される。オフセット後の画素値は、適応ループフィルタ71に供給される。
また、輝度オフセット値と色差オフセット値が用いられて、相関係数が求められ、色差オフセット残差が求められる。求められた色差オフセット残差は、quad-tree構造と輝度オフセットの情報とともに、可逆符号化部16に供給される。また、相関係数も可逆符号化部16に供給される。
ステップS114において、適応ループフィルタ71は、適応フィルタ係数を用いて、オフセット処理後の画素値に対して、適応ループフィルタ処理を行う。適応フィルタ処理後の画素値は、フレームメモリ22に出力される。
ステップS115においてフレームメモリ22は、フィルタリングされた画像を記憶する。なお、フレームメモリ22には、デブロックフィルタ21、適応オフセット部111、色差適応オフセット部112、および適応ループフィルタ71によりフィルタやオフセットされていない画像も演算部20から供給され、記憶される。
一方、上述したステップS108において量子化された変換係数は、可逆符号化部16にも供給される。ステップS116において、可逆符号化部16は量子化部15より出力された量子化された変換係数を符号化する。すなわち、差分画像が可変長符号化、算術符号化等の可逆符号化され、圧縮される。
また、このとき、上述したステップS105において可逆符号化部16に入力された、イントラ予測部24からのイントラ予測モード情報、または、動き予測・補償部25からの最適インター予測モードに応じた情報なども符号化され、ヘッダ情報に付加される。さらに、上述したステップS113において可逆符号化部16に入力されたquad-tree構造と輝度オフセット、および色差オフセット残差の情報も、符号化され、ヘッダ情報に付加される。なお、相関係数は、スライスヘッダ、またはLCU(Largest Coding Unit)ヘッダに付加される。
例えば、インター予測モードを示す情報は、マクロブロック毎に符号化される。動きベクトル情報や参照フレーム情報は、対象となるブロック毎に符号化される。
ステップS117において蓄積バッファ17は差分画像を圧縮画像として蓄積する。蓄積バッファ17に蓄積された圧縮画像が適宜読み出され、伝送路を介して復号側に伝送される。
ステップS118においてレート制御部27は、蓄積バッファ17に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15の量子化動作のレートを制御する。
ステップS118の処理が終了すると、符号化処理が終了される。
[適応オフセット処理の流れ]
次に、図19のフローチャートを参照して、図18のステップS113において実行される適応オフセット処理の流れの例を説明する。
デブロックフィルタ21からのデブロック後の画素値は、Quad-tree構造決定部131、輝度オフセット部133、および色差オフセット部144に供給される。
ステップS131において、Quad-tree構造決定部131は、デブロック後の輝度信号の画素値を参照して、図12を参照して上述したように、Quad-tree構造を決定する。すなわち、画像がquad-treeに分割され、それぞれの領域に、上述したどの適応オフセットの種類により符号化するかが、コスト関数値を用いて決定されることにより、Quad-tree構造が決定される。決定されたQuad-tree構造は、輝度オフセット算出部132、輝度オフセット部133、色差オフセット算出部141、および色差オフセット部144に供給される。
ステップS132において、輝度オフセット算出部132は、輝度信号に関して、Quad-tree分割された各領域に対する輝度オフセット値の算出を行う。算出した輝度オフセットの情報は、輝度オフセット部133、相関係数算出部142、および色差オフセット予測値算出部143に供給される。
一方、ステップS133において、色差オフセット算出部141は、色差信号に関して、Quad-tree分割された各領域に対する色差オフセット値の算出を行う。算出された色差オフセットの情報は、相関係数算出部142、および色差オフセット部144に供給される。
ステップS134において、相関係数算出部142は、輝度オフセット算出部132からの輝度オフセットの情報と、色差オフセット算出部141からの色差オフセットの情報とを用いて、相関係数αおよびβを算出する。算出された相関係数αおよびβの値と、色差オフセットの情報は、色差オフセット予測値算出部143に供給される。
ステップS135において、色差オフセット予測値算出部143は、式(35)または式(36)により、予測残差として、色差オフセット残差を算出する。この色差オフセット残差の算出には、輝度オフセット算出部132からの輝度オフセット、相関係数算出部142からの相関係数αおよびβの値、並びに色差オフセットが用いられる。
ステップS136において、適応オフセット部111および色差適応オフセット部112は、適応オフセットパラメータである、Quad-tree構造、輝度オフセット値、相関係数αおよびβ、並びに、色差オフセット残差を、可逆符号化部16に送る。すなわち、輝度オフセット算出部132は、算出した輝度オフセットの情報を、Quad-tree構造の情報とともに、可逆符号化部16に供給する。相関係数算出部142は、算出した相関係数αおよびβの値を可逆符号化部16に供給する。色差オフセット予測値算出部143は、算出した色差オフセット残差を、可逆符号化部16に供給する。なお、色差オフセット残差は、量子化部15により量子化されるようにしてもよい。
これらの適応オフセットパラメータは、上述した図18のステップS116において、可逆符号化部16により符号化され、ヘッダ情報に付加される。
ステップS137において、輝度オフセット部133および色差オフセット部144は、デブロック後の輝度、色差の画素値に対して、オフセット処理をそれぞれ行う。すなわち、輝度オフセット部133は、Quad-tree構造決定部131によりQuad-tree分割された各領域の輝度の画素値に対して、輝度オフセット算出部132により算出されたオフセット値を加算する。色差オフセット部144は、Quad-tree構造決定部131によりQuad-tree分割された各領域の色差の画素値に対して、色差オフセット算出部141により算出されたオフセット値を加算する。
オフセット処理後の画素値は、画素バッファ134に蓄積され、輝度、色差が揃ったところで、適応ループフィルタ71に供給される。
以上のように、色差信号については、輝度信号に基づいて決定されたQuad-tree構造に基づいてオフセット処理が施されるので、演算量の増大を抑えながら、符号化効率を改善することができる。
また、色差信号については、輝度信号のオフセット値と相関係数が用いられて算出された色差オフセットの残差が復号側に送られるので、符号化効率を向上させることができる。
<2.第2の実施の形態>
[画像復号装置]
図20は、本開示を適用した画像処理装置としての画像復号装置の一実施の形態の構成を表している。図20に示される画像復号装置201は、図16の画像符号化装置101に対応する復号装置である。
画像符号化装置101より符号化された符号化データは、所定の伝送路を介して、この画像符号化装置101に対応する画像復号装置201に伝送され、復号されるものとする。
図20の画像復号装置201は、蓄積バッファ41、可逆復号部42、逆量子化部43、逆直交変換部44、および演算部45を備える点で、図2の画像復号装置31と共通している。図20の画像復号装置201は、デブロックフィルタ46、画面並べ替えバッファ47、D/A変換部48、フレームメモリ49、選択部50、イントラ予測部51、動き補償部52、および画像選択部53を備える点で、図2の画像復号装置31と共通している。
また、図20の画像復号装置201は、図4の適応ループフィルタ91が追加された点で、図2の画像復号装置31と異なっている。
さらに、図20の画像復号装置201は、適応オフセット部211および色差適応オフセット部212が追加された点で、図2の画像復号装置31と異なっている。
すなわち、可逆復号部42は、図2の可逆復号部42と同様に、蓄積バッファ41より供給された、図16の可逆符号化部16により符号化された情報を、可逆符号化部16の符号化方式に対応する方式で復号する。このとき、図20の例においては、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モードを示す情報)、適応オフセットパラメータなども復号される。適応オフセットパラメータは、上述したように、図16の可逆符号化部16により符号化されたQuad-tree構造、輝度オフセット、相関係数αおよびβ、並びに、色差オフセット残差などで構成される。
なお、相関係数αおよびβは、スライスヘッダまたはLCU(Largest Coding Unit)ヘッダに付加されているので、そこから取得される。また、色差オフセット残差が量子化されている場合には、色差オフセット残差は、逆量子化部43により逆量子化されてから、色差適応オフセット部212に供給される。
適応オフセット部211および色差適応オフセット部212は、デブロックフィルタ46の後、適応ループフィルタ91の前に設けられている。すなわち、適応オフセット部211および色差適応オフセット部212は、演算部45、デブロックフィルタ46、適応ループフィルタ91、フレームメモリ49、選択部50、動き補償部52、および画像選択部53からなる動き補償ループ内に設けられている。すなわち、動き補償ループ内では、画像がループして用いられている。
適応オフセット部211には、可逆復号部42からの適応オフセットパラメータのうち、Quad-tree構造、および輝度オフセットが供給される。適応オフセット部211は、それらの情報を用いて、デブロックフィルタ46からの復号画像の輝度信号の画素値に対してオフセット処理を行うとともに、それらの情報を、色差適応オフセット部212に供給する。
また、適応オフセット部211は、オフセット処理後の輝度信号と、色差適応オフセット部212によりオフセット処理が施された色差信号とを、適応ループフィルタ91に供給する。
色差適応オフセット部212には、適応オフセットパラメータのうち、相関係数αおよびβ、並びに、色差オフセット残差が供給される。色差適応オフセット部212は、適応オフセット部211からのQuad-tree構造に基づいて、デブロックフィルタ46からの復号画像の色差信号の画素値に対してオフセット処理を行う。すなわち、色差適応オフセット部212は、可逆復号部42からの相関係数α、β、および色差オフセット残差、並びに、適応オフセット部211からのQuad-tree構造、および輝度オフセット値を用いて、色差オフセットを再構築する。色差適応オフセット部212は、適応オフセット部211からのQuad-tree構造、再構築した色差オフセット値を用いて、デブロックフィルタ46からの復号画像の色差信号の画素値に対してオフセット処理を行う。
適応ループフィルタ91は、可逆復号部42から供給された適応フィルタ係数を用いて、デブロックフィルタ46からの復号画像にフィルタ処理を行う。このフィルタとして、例えば、ウィナーフィルタ(Wiener Filter)が用いられる。
[適応オフセット部および色差適応オフセット部の構成例]
次に、画像復号装置201の各部について説明する。図21は、適応オフセット部211および色差適応オフセット部212の構成例を示すブロック図である。
図21の例において、適応オフセット部211は、Quad-tree構造バッファ231、輝度オフセットバッファ232、輝度オフセット部233、および画素バッファ234を含むように構成されている。
色差適応オフセット部212は、相関係数バッファ241、色差オフセット残差バッファ242、色差オフセット再構築部243、および色差オフセット部244を含むように構成されている。
デブロックフィルタ46からのデブロック後の画素値は、輝度オフセット部233、および色差オフセット部244に供給される。
可逆復号部42からのQuad-tree構造の情報は、Quad-tree構造バッファ231に供給される。Quad-tree構造バッファ231は、可逆復号部42からのQuad-tree構造の情報を蓄積し、Quad-tree構造の情報を、輝度オフセット部233、色差オフセット再構築部243、および色差オフセット部244に供給する。
可逆復号部42からの輝度オフセットの情報は、輝度オフセットバッファ232に供給される。輝度オフセットバッファ232は、可逆復号部42からの輝度オフセットの情報を蓄積し、輝度オフセットの情報を、輝度オフセット部233、および色差オフセット再構築部243に供給する。
輝度オフセット部233は、デブロック後の輝度信号の画素値に対して、オフセット処理を行う。すなわち、輝度オフセット部233は、Quad-tree構造バッファ231によりQuad-tree分割された各領域の輝度の画素値に対して、輝度オフセットバッファ232からの輝度オフセット値を加算する。輝度オフセット部233は、オフセット処理後の画素値を画素バッファ234に蓄積する。
画素バッファ234は、輝度信号および色差信号のオフセット処理後の画素値の両方が揃うのを待ち、揃ったところで、オフセット処理後の画素値を、適応ループフィルタ91に供給する。
可逆復号部42からの相関係数α、βは、相関係数バッファ241に供給される。相関係数バッファ241は、可逆復号部42からの相関係数α、βを蓄積し、蓄積された相関係数α、βを、色差オフセット再構築部243に供給する。
可逆復号部42からの色差オフセット残差は、色差オフセット残差バッファ242に供給される。色差オフセット残差バッファ242は、可逆復号部42からの色差オフセット残差を蓄積し、蓄積された色差オフセット残差を、色差オフセット再構築部243に供給する。
色差オフセット再構築部243には、Quad-tree構造バッファ231からのQuad-tree構造、輝度オフセットバッファ232からの輝度オフセット、相関係数バッファ241からの相関係数、および色差オフセット残差バッファ242からの色差オフセット残差が入力される。色差オフセット再構築部243は、入力されるそれらの情報を用いて、色差オフセットを再構築し、再構築された色差オフセットの情報を、色差オフセット部244に供給する。
色差オフセット部244においては、図17の色差オフセット算出部141および色差オフセット部144と同様に、輝度信号のQuad-tree構造に対して、上述したような色差信号の場合の分割数、バンド数、またはカテゴリの対応が予め設定されている。それを踏まえて、色差オフセット部244は、デブロック後の色差信号の画素値に対して、オフセット処理を行う。すなわち、色差オフセット部244は、Quad-tree構造バッファ231からのQuad-tree分割された各領域の色差の画素値に対して、色差オフセット再構築部243ににより再構築された色差オフセット値を加算する。色差オフセット部244は、オフセット処理後の画素値を画素バッファ234に蓄積する。
[復号処理の流れ]
次に、以上のような画像復号装置201により実行される各処理の流れについて説明する。最初に、図22のフローチャートを参照して、復号処理の流れの例を説明する。
復号処理が開始されると、ステップS201において、蓄積バッファ41は、伝送されてきた符号化データを蓄積する。ステップS202において、可逆復号部42は、蓄積バッファ41から供給される符号化データを復号する。すなわち、図16の可逆符号化部16により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。
このとき、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モード)、並びに、適応オフセットパラメータの情報も復号される。
予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部51に供給される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報は、動き補償部52に供給される。また、適応オフセットパラメータのうちのQuad-tree構造、および輝度オフセットは、適応オフセット部211に供給される。適応オフセットパラメータのうち、相関係数αおよびβ、並びに、色差オフセット残差は、色差適応オフセット部212に供給される。
ステップS203において、イントラ予測部51または動き補償部52は、可逆復号部42から供給される予測モード情報に対応して、それぞれ、予測画像生成処理を行う。
すなわち、可逆復号部42からイントラ予測モード情報が供給された場合、イントラ予測部51は、Most Probable Modeの生成を行い、並列処理により、イントラ予測モードのイントラ予測画像を生成する。可逆復号部42からインター予測モード情報が供給された場合、動き補償部52は、インター予測モードの動き予測・補償処理を行い、インター予測画像を生成する。
この処理により、イントラ予測部51により生成された予測画像(イントラ予測画像)、または動き補償部52により生成された予測画像(インター予測画像)が画像選択部53に供給される。
ステップS204において、画像選択部53は予測画像を選択する。すなわち、イントラ予測部51により生成された予測画像、または動き補償部52により生成された予測画像が供給される。したがって、供給された予測画像が選択されて演算部45に供給され、後述するステップS206において逆直交変換部44の出力と加算される。
上述したステップS202において、可逆復号部42により復号された変換係数は、逆量子化部43にも供給される。ステップS205において、逆量子化部43は可逆復号部42により復号された変換係数を、図16の量子化部15の特性に対応する特性で逆量子化する。
ステップS206において逆直交変換部44は、逆量子化部43により逆量子化された変換係数を、図16の直交変換部14の特性に対応する特性で逆直交変換する。これにより図16の直交変換部14の入力(演算部13の出力)に対応する差分情報が復号されたことになる。
ステップS207において、演算部45は、上述したステップS204の処理で選択され、画像選択部53を介して入力される予測画像を差分情報と加算する。これにより元の画像が復号される。ステップS208においてデブロックフィルタ46は、演算部45より出力された画像に対して、デブロックフィルタ処理を行う。これにより、画面全体におけるブロック歪みが除去される。
ステップS209において、適応オフセット部211および色差適応オフセット部212は、適応オフセット処理を行う。この適応オフセット処理の詳細は、図23を参照して後述される。この処理により、可逆復号部42からのquad-tree構造、および輝度オフセットの情報が用いられて、デブロック後の輝度信号にオフセット処理が施される。
また、可逆復号部42からのquad-tree構造、輝度オフセット値、相関係数、および色差オフセット残差が用いられて、色差オフセット値が再構築される。そして、quad-tree構造、色差オフセット値が用いられて、デブロック後の色差信号にオフセット処理が施される。オフセット後の画素値は、適応ループフィルタ91に供給される。
ステップS210において、適応ループフィルタ91は、適応フィルタ係数を用いて、オフセット処理後の画素値に対して、適応ループフィルタ処理を行う。適応フィルタ処理後の画素値は、画面並べ替えバッファ47およびフレームメモリ49に出力される。
ステップS211においてフレームメモリ49は、適応フィルタリングされた画像を記憶する。
ステップS212において、画面並べ替えバッファ47は、適応ループフィルタ91後の画像の並べ替えを行う。すなわち画像符号化装置101の画面並べ替えバッファ12により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
ステップS213において、D/A変換部48は、画面並べ替えバッファ47からの画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
ステップS213の処理が終了すると、復号処理が終了される。
[適応オフセット処理の流れ]
次に、図23のフローチャートを参照して、図22のステップS209において実行される適応オフセット処理の流れの例を説明する。
可逆復号部42からのQuad-tree構造の情報は、Quad-tree構造バッファ231に供給される。ステップS231において、Quad-tree構造バッファ231は、可逆復号部42からのQuad-tree構造の情報を受信し、蓄積する。その後、Quad-tree構造バッファ231は、所定のタイミングで、輝度オフセット部233に、Quad-tree構造の情報を供給する。
可逆復号部42からの輝度オフセットの情報は、輝度オフセットバッファ232に供給される。ステップS232において、輝度オフセットバッファ232は、可逆復号部42からの輝度信号に対するオフセット(輝度オフセット)の情報を受信し、蓄積する。そして、輝度オフセットバッファ232は、所定のタイミングで、輝度オフセットの情報を、輝度オフセット部233、および色差オフセット再構築部243に供給する。
可逆復号部42からの相関係数α、βは、相関係数バッファ241に供給される。ステップS233において、相関係数バッファ241は、可逆復号部42からの相関係数α、βを受信し、蓄積する。相関係数バッファ241は、所定のタイミングで、蓄積された相関係数α、βを、色差オフセット再構築部243に供給する。
可逆復号部42からの色差オフセット残差は、色差オフセット残差バッファ242に供給される。色差オフセット残差バッファ242は、ステップS234において、可逆復号部42からの色差信号に対するオフセット残差(色差オフセット残差)を受信し、蓄積する。そして、色差オフセット残差バッファ242は、所定のタイミングで、蓄積された色差オフセット残差を、色差オフセット再構築部243に供給する。
色差オフセット再構築部243には、Quad-tree構造バッファ231からのQuad-tree構造、輝度オフセットバッファ232からの輝度オフセット、相関係数バッファ241からの相関係数、および色差オフセット残差バッファ242からの色差オフセット残差が入力される。ステップS235において、色差オフセット再構築部243は、入力されるそれらの情報を用いて、色差信号に対するオフセット値(色差オフセット値)を再構築し、再構築された色差オフセットの情報を、色差オフセット部244に供給する。
ステップS236において、輝度オフセット部233および色差オフセット部244は、デブロック後の色差信号の画素値に対して、オフセット処理を行う。すなわち、すなわち、輝度オフセット部233は、Quad-tree構造バッファ231によりQuad-tree分割された各領域の輝度の画素値に対して、輝度オフセットバッファ232からの輝度オフセット値を加算する。輝度オフセット部233は、オフセット処理後の画素値を画素バッファ234に蓄積する。
また、色差オフセット部244は、Quad-tree構造バッファ231からのQuad-tree分割された各領域の色差の画素値に対して、色差オフセット再構築部243ににより再構築された色差オフセット値を加算する。色差オフセット部144は、オフセット処理後の画素値を画素バッファ234に蓄積する。
その後、画素バッファ234は、輝度信号および色差信号のオフセット処理後の画素値の両方が揃うのを待ち、揃ったところで、オフセット処理後の画素値を、適応ループフィルタ91に供給し、適応オフセット処理は終了する。
以上のように、色差信号については、輝度信号に基づいて決定されたQuad-tree構造に基づいてオフセット処理が施されるので、演算量の増大を抑えながら、符号化効率を改善することができる。
また、色差信号については、輝度信号のオフセット値と相関係数が用いられて算出されたオフセットの残差が復号側に送られるので、符号化効率を向上させることができる。
以上においては、符号化方式としてH.264/AVC方式をベースに用いるようにしたが、本開示はこれに限らず、動き予測・補償ループ内に適応フィルタを含む、その他の符号化方式/復号方式を適用することができる。
なお、本開示は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本開示は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本開示は、それらの画像符号化装置および画像復号装置などに含まれる動き予測補償装置にも適用することができる。
<3.第3の実施の形態>
[パーソナルコンピュータ]
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
図24において、パーソナルコンピュータ500のCPU(Central Processing Unit)501は、ROM(Read Only Memory)502に記憶されているプログラム、または記憶部513からRAM(Random Access Memory)503にロードされたプログラムに従って各種の処理を実行する。RAM503にはまた、CPU501が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU501、ROM502、およびRAM503は、バス504を介して相互に接続されている。このバス504にはまた、入出力インタフェース510も接続されている。
入出力インタフェース510には、キーボード、マウスなどよりなる入力部511、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部512、ハードディスクなどより構成される記憶部513、モデムなどより構成される通信部514が接続されている。通信部514は、インターネットを含むネットワークを介しての通信処理を行う。
入出力インタフェース510にはまた、必要に応じてドライブ515が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア521が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部513にインストールされる。
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
この記録媒体は、例えば、図24に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア521により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM502や、記憶部513に含まれるハードディスクなどで構成される。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。
また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
上述した実施形態に係る画像符号化装置及び画像復号装置は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
<4.第4の実施の形態>
[第1の応用例:テレビジョン受像機]
図25は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、色差信号に対する符号化効率を向上することができる。
<5.第5の実施の形態>
[第2の応用例:携帯電話機]
図26は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Unallocated Space Bitmap)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記憶再生部929の記憶媒体に記憶させる。
また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、色差信号に対する符号化効率を向上することができる。
<6.第6の実施の形態>
[第3の応用例:記録再生装置]
図27は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。
チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。
エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、色差信号に対する符号化効率を向上することができる。
<7.第7の実施の形態>
[第4の応用例:撮像装置]
図28は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。
メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、色差信号に対する符号化効率を向上することができる。
なお、本明細書では、差分量子化パラメータ等の各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。