以下、発明を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(復号処理)
2.第2の実施の形態(符号化処理)
3.第3の実施の形態(フィルタリング回路の変形例)
<1.第1の実施の形態>
[予測の概要]
図4は、本発明を適用した予測画像生成方法の概要を説明する図である。本発明においては、復号器において、動き補償画像を得るために、最低1本の動きベクトルが、ビットストリームで伝送される。
図4では、フレームNの復号のために、フレーム(N−1)1枚を、動き補償のための参照面に用いる様子を示している。図4では、フレーム(N−1)における動き補償を行う画像の座標を示すための動きベクトルがストリームで伝送される。復号器は、このベクトルを用いることで、画像MCを得る。
また、フレームNにおける復号済み画素値を利用して、イントラ予測が行われる。この予測には、例えばH.264規格におけるイントラ予測が用いられる。しかしながら、本発明ではイントラ予測の処理の種類は問わず、カレントフレームにおける符号化済み画素を利用して、より精度の高い、続くフィルタリング処理による予測のために好適な予測を行うことがあれば、それを選択してもよい。
以上2つの予測処理により、カレントブロックの復号にあたり、復号器はフレーム(N−1)から動き予測画像を、フレームNから空間予測画像を得ることが可能になる。この2種類の画像をフィルタリング処理することにより、入力の予測画像に含まれる成分を利用することで、より原画像に近い新たな予測画像を生成することができる。
[復号装置の構成]
図5は、本発明の一実施形態に係る復号装置1の構成例を示すブロック図である。
復号装置1に対しては、後述する符号化装置により符号化された画像情報がケーブル、ネットワーク、またはリムーバブルメディアを介して入力される。圧縮画像情報は、例えば、H.264規格に従って符号化された画像情報である。
蓄積バッファ11は、圧縮画像情報として入力されたビットストリームを順に記憶する。蓄積バッファ11に記憶された情報は、適宜、フレームを構成するマクロブロックなどの所定の単位の画像毎に可逆復号回路12により読み出される。H.264規格においては、16×16画素のマクロブロック単位ではなく、それをさらに分割した8×8画素、4×4画素などのブロック単位で処理を行うことも可能とされている。
可逆復号回路12は、蓄積バッファ11から読み出した画像に対して、可変長復号処理、算術復号処理等の、符号化方式に対応する復号処理を施す。可逆復号回路12は、復号処理を施すことによって得られた、量子化された変換係数を逆量子化回路13に出力する。
また、可逆復号回路12は、復号の対象になっている画像のヘッダに含まれる識別フラグに基づいて、その画像がイントラ符号化された画像であるのかインター符号化された画像であるのかを識別する。可逆復号回路12は、復号の対象になっている画像がイントラ符号化された画像であると判断した場合、その画像のヘッダに格納されたイントラ予測モード情報をイントラ予測回路22に出力する。イントラ予測モード情報には、処理の単位となるブロックのサイズなどのイントラ予測に関する情報が含まれる。
可逆復号回路12は、復号の対象になっている画像がインター符号化された情報であると判断した場合、その画像のヘッダに格納された動きベクトルと識別フラグを動き予測・補償回路21に出力する。識別フラグにより、インター予測によって予測画像を生成する際の予測のモードが識別される。識別フラグは、例えば、マクロブロック単位、フレーム単位で設定される。
予測のモードとして、図1の片方向予測のモード、図2の双方向予測のモードの他に、時間的に一方向または双方向にある複数の参照フレームから抽出した動き補償画像にフィルタリングを施して予測画像を生成する第3の予測モードが用意されている。
図6は、第3の予測モードの概念を示す図である。
図6の例においては、現在のフレーム(予測フレーム)の時刻を基準として、時間的に1時刻前にあるフレームが参照フレームR0とされ、参照フレームR0の1時刻前にあるフレームが参照フレームR1とされている。この場合、第3の予測モードによれば、参照フレームR0,R1から抽出された動き補償画像MC0,MC1がフィルタリング回路に入力され、フィルタリング回路から出力された画像の画素値が、対象のマクロブロックである予測画像の画素値とされる。
図7は、第3の予測モードに、異なる画像を入力する場合の概念を示す図である。
図7の例においては、現在のフレーム(予測フレーム)の時刻を基準として、時間的に1時刻前にあるフレームが参照フレームR0とされる。この場合、第3の予測モードのために、参照フレームR0から抽出された動き補償画像MC0と、現在フレームのカレントブロック周辺にある符号化済み画像から生成されたイントラ予測画像IPがフィルタリング回路に入力され、フィルタリング回路から出力された画像の画素値が、対象のマクロブロックである予測画像の画素値とされる。
以下、図1を参照して説明したような、一方向にある複数の参照フレームから抽出した動き補償画像のうちのいずれかの動き補償画像の画素値を予測画像の画素値とする予測のモードを単に片方向予測モードという。また、図2を参照して説明したような、双方向にある複数の参照フレームからそれぞれ抽出した動き補償画像の画素値の平均値を予測画像の画素値とする予測のモードを単に双方向予測モードという。
一方向または双方向にある複数の参照フレームから抽出したそれぞれの動き補償画像に対してフィルタリングを施して予測画像の画素値を求める図6に示されるような第3の予測のモードをフィルタリング予測モードという。
同様に、1つまたは複数の参照フレームから抽出したそれぞれの動き補償画像に加え、現在フレームの符号化済み画像からイントラ予測を行うことで抽出したイントラ予測画像に対してフィルタリングを施して予測画像の画素値を求める図7に示されるような第3の予測のモードも、同様にフィルタリング予測モードという。このフィルタリング予測モードについては後に詳述する。
図5の説明に戻り、逆量子化回路13は、可逆復号回路12から供給された量子化された状態の変換係数に対して、符号化側における量子化方式に対応する方式で逆量子化を行う。逆量子化回路13は、逆量子化を行うことによって得られた変換係数を逆直交変換回路14に出力する。
逆直交変換回路14は、離散コサイン変換、カルーネン・レーベ変換等の、符号化側における直交変換方式に対応する方式で例えば4次の逆直交変換を逆量子化回路13から供給された変換係数に対して施し、得られた画像を加算回路15に出力する。
加算回路15は、逆直交変換回路14から供給された復号画像と、動き予測・補償回路21から、またはイントラ予測回路22からスイッチ23を介して供給された予測画像を合成し、合成画像をデブロックフィルタ16に出力する。
デブロックフィルタ16は、加算回路15から供給された画像に含まれるブロック歪を除去し、ブロック歪を除去した画像を出力する。デブロックフィルタ16から出力された画像は並べ替えバッファ17とフレームメモリ19に供給される。
並べ替えバッファ17は、デブロックフィルタ16から供給された画像を一時的に記憶する。並べ替えバッファ17は、記憶している例えばマクロブロック単位の画像から各フレームを生成し、生成したフレームを表示順などの所定の順番に並べ替えてD/A(Digital/Analog)変換回路18に出力する。
D/A変換回路18は、並べ替えバッファ17から供給された各フレームに対してD/A変換を施し、各フレームの信号を外部に出力する。
フレームメモリ19は、デブロックフィルタ16から供給された画像を一時的に記憶する。フレームメモリ19に記憶された情報は、スイッチ20を介して、動き予測・補償回路21またはイントラ予測回路22に供給される。
スイッチ20は、予測画像をインター予測により生成する場合、端子a1に接続し、イントラ予測により生成する場合、端子b1に接続する。スイッチ20の切り替えは例えば制御回路31により制御される。
動き予測・補償回路21は、可逆復号回路12から供給された識別フラグに従って予測モードを決定し、フレームメモリ19に記憶されている復号済みのフレームの中から、参照フレームとして用いるフレームを予測モードに応じて選択する。動き予測・補償回路21は、参照フレームを構成するマクロブロックの中から、対象とする予測画像に対応するマクロブロックを可逆復号回路12から供給された動きベクトルに基づいて決定し、決定したマクロブロックを動き補償画像として抽出する。動き予測・補償回路21は、動き補償画像の画素値から予測画像の画素値を予測モードに応じて求め、画素値を求めた予測画像を、スイッチ23を介して加算回路15に出力する。
イントラ予測回路22は、可逆復号回路12から供給されたイントラ予測モード情報に従ってイントラ予測を行い、予測画像を生成する。イントラ予測回路22は、生成した予測画像を、スイッチ23を介して加算回路15に出力する。
スイッチ23は、動き予測・補償回路21により予測画像が生成された場合、端子a2に接続し、イントラ予測回路22により予測画像が生成された場合、端子b2に接続する。スイッチ23の切り替えも例えば制御回路31により制御される。
制御回路31は、スイッチ20,23の接続を切り替えるなどして、復号装置1の全体の動作を制御する。処理対象の画像がイントラ符号化された画像であるのかインター符号化された画像であるのかの識別が制御回路31により行われるようにしてもよい。
図8は、図5の動き予測・補償回路21の構成例を示すブロック図である。
図8に示されるように、動き予測・補償回路21は、予測モード決定回路41、片方向予測回路42、双方向予測回路43、予測回路44、およびフィルタリング回路45から構成される。可逆復号回路12から供給された動きベクトルと識別フラグは予測モード決定回路41に入力される。
予測モード決定回路41は、可逆復号回路12から供給された識別フラグに従って予測モードを決定する。予測モード決定回路41は、片方向予測によって予測画像の生成を行うことを決定した場合、動きベクトルを片方向予測回路42に出力し、双方向予測によって予測画像の生成を行うことを決定した場合、動きベクトルを双方向予測回路43に出力する。また、予測モード決定回路41は、フィルタリング予測によって予測画像の生成を行うことを決定した場合、動きベクトルを予測回路44に出力する。
このように、フィルタリング予測を識別することができるようにするため、従来のH.264規格で定められている、片方向予測を表す値、双方向予測を表す値とは異なる値を、識別フラグの値として設定することが可能とされている。なお、識別フラグに従って予測モードが決定されるのではなく、情報量を削減するため、予め決められた方法により予測モードが決定されるようにしてもよい。
片方向予測回路42は、図1に示されるように、時間的に一方向にある複数のフレームを参照フレームとし、予測画像に対応する参照フレームのマクロブロックを動きベクトルに基づいて決定する。また、片方向予測回路42は、決定したそれぞれの参照フレームのマクロブロックを動き補償画像としてフレームメモリ19から読み出し、いずれかの動き補償画像の画素値を予測画像の画素値とすることによって予測画像を生成する。片方向予測回路42は、予測画像を加算回路15に出力する。片方向予測回路42による片方向予測としては、例えばH.264規格で規定された片方向予測が用いられる。
双方向予測回路43は、図2に示されるように、時間的に双方向にある複数のフレームを参照フレームとし、予測画像に対応する参照フレームのマクロブロックを動きベクトルに基づいて決定する。また、双方向予測回路43は、決定したそれぞれの参照フレームのマクロブロックを動き補償画像としてフレームメモリ19から読み出し、読み出した動き補償画像の画素値の平均を予測画像の画素値とすることによって予測画像を生成する。双方向予測回路43は、予測画像を加算回路15に出力する。双方向予測回路43による双方向予測としては、例えばH.264規格で規定された双方向予測が用いられる。
予測回路44は、時間的に一方向、または双方向にある複数のフレームを参照フレームとして決定する。どのフレームを参照フレームとするのかは、予め決定されているようにしてもよいし、識別フラグとともに符号化側から伝送されてきた情報により指定されるようにしてもよい。
図9は、参照フレームの例を示す図である。
図9の例においては、予測フレームの時刻を基準として、時間的に1時刻前とその1時刻前にある2枚のフレームが参照フレームとされている。2枚の参照フレームのうち、予測フレームにより近い、1時刻前のフレームが参照フレームR0とされ、参照フレームR0の1時刻前のフレームが参照フレームR1とされている。
図10は、参照フレームの他の例を示す図である。
図10の例においては、予測フレームの時刻を基準として、時間的に1時刻前と1時刻後にある2枚のフレームが参照フレームとされている。2枚の参照フレームのうち、予測フレームの1時刻前のフレームが参照フレームL0とされ、1時刻後のフレームが参照フレームL1とされている。
このように、フィルタリング予測においては、時間的に一方向にある複数のフレーム、または双方向にある複数のフレームが参照フレームとして用いられる。
また、予測回路44は、図9、図10に示されるようにして決定した参照フレームのうち、少なくとも1つの参照フレームの復号済みのマクロブロックのうち、予測画像に対応するマクロブロックを予測モード決定回路41から供給された動きベクトルに基づいて決定する。
さらに、予測回路44は、図7を参照して説明したように、カレントフレームにおいて例えばH.264規格におけるイントラ予測を行う。
予測回路44は、決定したそれぞれの参照フレームのマクロブロックをイントラ予測画像としてフレームメモリ19から読み出し、読み出したイントラ予測画像をフィルタリング回路45に出力する。
つまり、予測回路44は、カレントフレーム以外の参照フレームから動きベクトルに基づいて動き補償画像を抽出するとともに、カレントフレームにおいてイントラ予測を行い、イントラ予測画像を生成する。
なお、動きベクトルは、16×16画素などのマクロブロック単位で行われるのではなく、マクロブロックをさらに分割したブロック単位で行われるようにしてもよい。フィルタリング回路45に対しては、例えばマクロブロック単位の画像が入力される。図8において、予測回路44からフィルタリング回路45に向かう矢印として2本の矢印が示されていることは2つの動き補償画像が供給されることを表している。
フィルタリング回路45は、予測回路44から供給された動き補償画像を入力としてフィルタリングを行い、フィルタリングを行うことによって得られた予測画像を加算回路15に出力する。
図11は、図6の予測回路44の構成例を示すブロック図である。図11において、予測回路44は、動き補償回路51およびイントラ予測回路52を有する。
動き補償回路51は、予測モード決定回路41より供給される動きベクトルを用いて、カレントフレーム以外の参照フレームにおいて予測画像に対応するマクロブロックを特定する。動き補償回路51は、特定したマクロブロックの画像をフレームメモリ19より読み出し、動き補償画像として抽出する。動き補償回路51は、抽出した動き補償画像MC0を、フィルタリング回路45に供給する。
イントラ予測回路52は、カレントフレーム(現在のフレーム)において、任意の方法でイントラ予測(フレーム内予測)を行い、その予測結果として、所望の予測画像に対応するイントラ予測画像IPを生成する。ここで、イントラ予測を行うためには、例えば、H.264におけるイントラ4x4予測若しくはイントラ8x8予測若しくはイントラ16x16予測が用いられる。それらのイントラ予測が用いられる場合には、復号器側で予測方法が一意に定まるための制御情報がストリーム中に記述され、伝送される。イントラ予測回路52は、生成したイントラ予測画像IPを、フィルタリング回路45に供給する。
図12は、フィルタリング回路45の構成例を示すブロック図である。図12の構成を有するフィルタリング回路45においては、時間領域の信号に対してフィルタリングが施される。
図12に示されるように、フィルタリング回路45は、差分計算回路61、ローパスフィルタ回路62、ゲイン調整回路63、ハイパスフィルタ回路64、ゲイン調整回路65、加算回路66、および加算回路67から構成される。予測回路44から供給された動き補償画像MC0は差分計算回路61と加算回路67に入力され、動き補償画像MC1は差分計算回路61に入力される。
上述したようにイントラ予測によって予測画像を生成する場合、例えば、カレントフレームにおいて生成された画像がイントラ予測画像IPとされ、カレントフレーム以外の参照フレームから抽出された画像が動き補償画像MC1とされる。
なお、図9に示されるように片方向予測によって予測画像を生成する場合、例えば、予測画像との相関がより高いと考えられる参照フレームR0から抽出された画像が動き補償画像MC0とされ、参照フレームR1から抽出された画像が動き補償画像MC1とされる。参照フレームR0から抽出された画像が動き補償画像MC1とされ、参照フレームR1から抽出された画像が動き補償画像MC0とされるようにしてもよい。
また、図10に示されるように双方向予測によって予測画像を生成する場合、例えば、1時刻前の参照フレームL0から抽出された画像が動き補償画像MC0とされ、1時刻後の参照フレームL1から抽出された画像が動き補償画像MC1とされる。参照フレームL0から抽出された画像が動き補償画像MC1とされ、参照フレームL1から抽出された画像が動き補償画像MC0とされるようにしてもよい。
これらの動き補償画像MC0は、図12のイントラ予測画像IPに置き換え、イントラ予測画像IPと同様に処理することができる。以下においては、イントラ予測画像IPについて説明する。
差分計算回路61は、イントラ予測画像IP(動き補償画像MC0)と動き補償画像MC1の差分を計算し、差分画像をローパスフィルタ回路62に出力する。差分画像Dは下式(3)により表される。
式(3)において、(i,j)は動き補償画像内における画素の相対位置を表し、16×16画素のマクロブロック単位で処理が行われるようになされている場合、0≦i≦16、0≦j≦16となる。以下、同様とする。
ローパスフィルタ回路62はFIRフィルタ回路を有する。ローパスフィルタ回路62は、差分計算回路61から供給された差分画像Dに対してローパスフィルタをかけ、得られた画像をゲイン調整回路63とハイパスフィルタ回路64に出力する。ローパスフィルタをかけることによって得られた画像である差分画像D’は下式(4)により表される。式(4)のLPF(X)は、入力画像Xに対して2次元のFIRフィルタを用いてローパスフィルタをかけることを表す。
ゲイン調整回路63は、ローパスフィルタ回路62から供給された差分画像D’のゲインを調整し、ゲインを調整した画像を加算回路66に出力する。ゲイン調整回路63の出力画像X(i,j)は下式(5)により表される。
ハイパスフィルタ回路64はFIRフィルタ回路を有する。ハイパスフィルタ回路64は、ローパスフィルタ回路62から供給された差分画像D’に対してハイパスフィルタをかけ、得られた画像をゲイン調整回路65に出力する。ハイパスフィルタをかけることによって得られた画像である差分画像D’’は下式(6)により表される。式(6)のHPF(X)は、入力画像Xに対して2次元のFIRフィルタを用いてハイパスフィルタをかけることを表す。
ゲイン調整回路65は、ハイパスフィルタ回路64から供給された差分画像D’’のゲインを調整し、ゲインを調整した画像を加算回路66に出力する。ゲイン調整回路65の出力画像Y(i,j)は下式(7)により表される。
式(5)のα、式(7)のβの値としては、例えばα=0.8、β=0.2といった値が選ばれるが、予測画素の精度を上げるためにこれ以外の値とされるようにしてもよい。また、入力シーケンスの性質などに応じて適応的に変えるようにしてもよい。
加算回路66は、ゲイン調整された画像X(i,j)と画像Y(i,j)を加算し、加算して得られた画像を出力する。加算回路66の出力画像Z(i,j)は下式(8)により表される。
出力画像Z(i,j)は、動き補償画像MC0と動き補償画像MC1の差分、すなわち相関から求められる、画像の高周波成分を表わすものになる。
加算回路67は、イントラ予測画像IPに対して、加算回路66から供給された出力画像Z(i,j)を足し込み、得られた画像を予測画像として加算回路15に出力する。加算回路67の最終出力である予測画像S(i,j)は下式(9)により表される。
このように、フィルタリング予測モードによれば、高周波成分を表す画像をイントラ予測画像IPに足し込むことによって得られた画像が予測画像として生成される。この予測画像は、単純に双方向予測を行った場合に得られる予測画像と較べて高周波成分をより多く含むものになる。また、単純に片方向予測を行った場合と較べて、画像の時間相関をより効率的に利用して予測画像を生成することが可能になる。さらに、高周波成分を多く含む予測画像が加算回路15において復号画像に加算されるから、最終的に復号装置1から出力される画像も高周波成分を多く含む高精細なものになる。
また、予測画像の生成において、カレントフレームにおいてイントラ予測が行われ、その生成されるイントラ予測画像IPが動き補償画像MC1とともに利用されるので、動き補償画像生成のための動きベクトルの数を低減させることができる。
以上述べてきた様に、本発明における動き補償装置により予測画像の出力が行われた後は、従来通りに復号を行うことで画像情報が復元される。
このように、復号装置1は、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率の向上を実現することができ、さらに、インター予測に必要な参照面の数を減らすことで処理コストの低減を実現することもできる。
[復号処理の流れの説明]
ここで、以上の構成を有する復号装置1の処理について説明する。
はじめに、図13のフローチャートを参照して、復号装置1の復号処理について説明する。
図13の処理は、例えば蓄積バッファ11に記憶された情報から、16×16画素のマクロブロックなどの所定のサイズの画像が可逆復号回路12により読み出されたときに開始される。図13の各ステップの処理は、適宜、他のステップの処理と並行して、または他のステップと順番を変えて行われる。後述する各フローチャートにおける各ステップの処理も同様である。
ステップS1において、可逆復号回路12は、蓄積バッファ11から読み出した画像に対して復号処理を施し、量子化された変換係数を逆量子化回路13に出力する。また、可逆復号回路12は、復号対象の画像がイントラ符号化された画像である場合、イントラ予測モード情報をイントラ予測回路22に出力し、インター符号化された画像である場合、動きベクトルと識別フラグを動き予測・補償回路21に出力する。
ステップS2において、逆量子化回路13は、符号化側における量子化方式に対応する方式で逆量子化を行い、変換係数を逆直交変換回路14に出力する。
ステップS3において、逆直交変換回路14は、逆量子化回路13から供給された変換係数に対して逆直交変換を施し、得られた画像を加算回路15に出力する。
ステップS4において、加算回路15は、逆直交変換回路14から供給された復号画像と、動き予測・補償回路21から、またはイントラ予測回路22から供給された予測画像を合成し、合成画像をデブロックフィルタ16に出力する。
ステップS5において、デブロックフィルタ16は、フィルタリングを施すことによって、合成画像に含まれるブロック歪を除去し、ブロック歪を除去した画像を出力する。
ステップS6において、フレームメモリ19は、デブロックフィルタ16から供給された画像を一時的に記憶する。
ステップS7において、制御回路31は、対象の画像がイントラ符号化された画像であるか否かを判定する。
イントラ符号化された画像であるとステップS7において判定された場合、ステップS8において、イントラ予測回路22は、イントラ予測を行うことによって予測画像を生成し、生成した予測画像を加算回路15に出力する。
一方、イントラ符号化された画像ではない、すなわちインター符号化された画像であるとステップS7において判定された場合、ステップS9において、動き予測・補償回路21により動き予測・補償処理が行われる。動き予測・補償処理が行われることによって生成された予測画像は加算回路15に出力される。動き予測・補償処理については図14のフローチャートを参照して後述する。
ステップS10において、制御回路31は、1フレーム全体のマクロブロックについて以上の処理を行ったか否かを判定し、処理を行っていないと判定した場合、他のマクロブロックに注目して、ステップS1以降の処理を繰り返す。
一方、1フレーム全体のマクロブロックについて処理を行ったとステップS10において判定された場合、ステップS11において、並べ替えバッファ17は、制御回路31による制御に従って、生成したフレームをD/A変換回路18に出力する。
ステップS12において、D/A変換回路18は、並べ替えバッファ17から供給されたフレームに対してD/A変換を施し、アナログの信号を外部に出力する。以上の処理が、各フレームを対象として行われる。
次に、図14のフローチャートを参照して、図13のステップS9において行われる動き予測・補償処理について説明する。
ステップS31において、動き予測・補償回路21の予測モード決定回路41は、可逆復号回路12から供給された識別フラグがフィルタリング予測モードで処理を行うことを表しているか否かを判定する。
フィルタリング予測モードで処理を行うことを表しているとステップS31において判定された場合、処理はステップS32に進む。ステップS32において、予測回路44は、動き補償画像を抽出する抽出処理、および、イントラ予測画像を生成する生成処理を行う。この抽出処理および生成処理の詳細については、後述する。
動き補償画像が抽出され、イントラ予測画像が生成されると、ステップS33において、フィルタリング回路45は、フィルタリング予測処理を行う。このフィルタリング予測処理の詳細については後述する。
ステップS33の処理が終了すると、動き予測・補償処理が終了され、処理は、図11のステップS9に戻り、ステップS10に進む。
また、ステップS31において、フィルタリング予測モードで処理を行うことを表していないと判定された場合、処理はステップS32に進む。ステップS32において、片方向予測回路42が片方向予測を行い、または、双方向予測回路43が双方向予測を行い、予測画像が生成される。
すなわち、識別フラグが片方向予測モードで処理を行うことを表している場合、予測モード決定回路41から片方向予測回路42に対して動きベクトルが供給され、片方向予測回路42において片方向予測が行われる。また、識別フラグが双方向予測モードで処理を行うことを表している場合、予測モード決定回路41から双方向予測回路43に対して動きベクトルが供給され、双方向予測回路43において双方向予測が行われる。予測画像が加算回路15に出力された後、動き予測・補償処理が終了され、処理は、図13のステップS9に戻り、ステップS10に進む。
次に、図15のフローチャートを参照して、図14のステップS32において実行される抽出処理の流れの例について説明する。
抽出処理が開始されると、予測回路44は、ステップS51において、変数i=1とする。ステップS52において、動き補償回路51は、i番目の参照フレーム、すなわち、参照面iから動き補償を行い、動き補償画像MC[i]を抽出する。ステップS53において、動き補償回路51は、動き補償画像MC[i]をフィルタリング回路45に出力する。
ステップS54において、予測回路44は、変数iの値がN以下であるか否かを判定する。変数iの値が所定の自然数N以下であると判定された場合、処理は、ステップS55に進む。
ステップS55において、動き補償回路51は、変数iをインクリメントする。ステップS55の処理が終了すると、処理は、ステップS52に戻り、それ以降の処理が繰り返される。また、ステップS54において、変数iの値がNより大きいと判定された場合、処理は、ステップS56に進む。
ステップS56において、イントラ予測回路52は、イントラ予測を行うか否かを判定する。イントラ予測を行うと判定された場合、処理はステップS57に進む。ステップS57において、イントラ予測回路52は、カレントフレーム(現在フレーム)においてイントラ予測を行う。ステップS58において、イントラ予測回路52は、イントラ予測により生成されたイントラ予測画像IPをフィルタリング回路45に出力する。
ステップS58の処理が終了すると、抽出処理が終了され、処理は、図14のステップS32に戻り、ステップS33に進む。また、図15のステップS56において、イントラ予測を行わないと判定された場合、抽出処理が終了され、処理は、図14のステップS32に戻り、ステップS33に進む。
次に、図16のフローチャートを参照して、図14のステップS33において実行されるフィルタリング予測処理の流れの例について説明する。
動き補償画像が抽出され、イントラ予測画像が生成され、フィルタリング処理が開始されると、フィルタリング回路45の差分計算回路61は、ステップS71において、動き補償画像とイントラ予測画像の差分を計算し、差分画像をローパスフィルタ回路62に出力する。
ステップS72において、ローパスフィルタ回路62は、差分計算回路61から供給された差分画像に対してローパスフィルタをかけ、得られた画像をゲイン調整回路63とハイパスフィルタ回路64に出力する。
ステップS73において、ゲイン調整回路63は、ローパスフィルタ回路62から供給された画像のゲインを調整し、ゲインを調整した画像を加算回路66に出力する。
ステップS74において、ハイパスフィルタ回路64は、ローパスフィルタ回路62から供給された差分画像に対してハイパスフィルタをかけ、得られた画像をゲイン調整回路65に出力する。
ステップS75において、ゲイン調整回路65は、ハイパスフィルタ回路64から供給された差分画像のゲインを調整し、ゲインを調整した画像を加算回路66に出力する。
ステップS76において、加算回路66は、ゲイン調整回路63から供給された画像(ローパスフィルタの出力)とゲイン調整回路65から供給された画像(ハイパスフィルタの出力)を加算して画像の高周波成分を求める。求められた高周波成分は加算回路66から加算回路67に供給される。
ステップS77において、加算回路67は、イントラ予測画像に対して、加算回路66から供給された画像(高周波成分)を足し込み、得られた画像を予測画像として加算回路15に出力する。なお、加算回路67は、イントラ予測画像の代わりに、動き補償画像に対して、加算回路66から供給された画像(高周波成分)を足し込むようにしてもよい。
ステップS78において、フィルタリング回路45は、全ての動き補償画像およびイントラ予測画像を処理したか否かを判定する。未処理の動き補償画像またはイントラ予測画像が存在すると判定された場合、処理はステップS71に戻り、それ以降の処理が繰り返される。
また、ステップS78において、全ての動き補償画像およびイントラ予測画像が処理されたと判定された場合、フィルタリング予測処理が終了され、処理は、図12のステップS33に戻り、動き予測・補償処理が終了され、図11のステップS9に戻り、ステップS10に進む。
以上のように、フィルタリング予測によって生成された予測画像を用いて復号が行われることにより、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことができるので、高精細な復号画像を得ることが可能になる。また、このとき、予測画像の算出に、少なくとも1つのイントラ予測画像を用いることにより、符号化する動きベクトルの量を低減させることができ、処理コストの低減(負荷の増大の抑制)を実現することができる。つまり、復号装置1は、少ない制御情報で、精度の高い予測画像を生成することができる。
<2.第2の実施の形態>
[符号化装置の構成]
次に、符号化側の装置の構成と動作について説明する。
図17は、符号化装置101の構成例を示すブロック図である。符号化装置101により符号化されることによって得られた圧縮画像情報が、図5の復号装置1に入力される。
A/D変換回路111は、入力信号にA/D変換を施し、画像を並べ替えバッファ112に出力する。
並べ替えバッファ112は、圧縮画像情報のGOP(Group of Pictures)構造に応じてフレームの並べ替えを行い、マクロブロックなどの所定の単位の画像を出力する。並べ替えバッファ112から出力された画像は、加算回路113、モード決定回路123、動き予測・補償回路125、およびイントラ予測回路126に供給される。
加算回路113は、並べ替えバッファ112から供給された画像と、動き予測・補償回路125、またはイントラ予測回路126により生成され、スイッチ127を介して供給された予測画像の差を求め、残差を直交変換回路114に出力する。予測画像が原画像に近く、ここで求められる残差が少ないほど、残差に割り当てる符号量が少なくて済むことから符号化効率が高いといえる。
直交変換回路114は、加算回路113から供給された残差に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、直交変換を施すことによって得られた変換係数を量子化回路115に出力する。
量子化回路115は、直交変換回路114から供給された変換係数を、レート制御回路118による制御に従って量子化し、量子化した変換係数を出力する。量子化回路115により量子化された変換係数は可逆符号化回路116と逆量子化回路119に供給される。
可逆符号化回路116は、量子化回路115から供給された変換係数を、可変長符号化、算術符号化等の可逆符号化を施すことによって圧縮し、情報を蓄積バッファ117に出力する。
また、可逆符号化回路116は、モード決定回路123から供給された情報に従って識別フラグの値を設定し、識別フラグを画像のヘッダに記述する。可逆符号化回路116により記述された識別フラグに基づいて、上述したように、復号装置1において予測モードが決定される。
可逆符号化回路116は、動き予測・補償回路125またはイントラ予測回路126から供給された情報を画像のヘッダに記述することも行う。動き予測・補償回路125からは、インター予測を行う際に検出された動きベクトルなどが供給され、イントラ予測回路126からは、適用されたイントラ予測モードに関する情報が供給される。
蓄積バッファ117は、可逆符号化回路116から供給された情報を一時的に記憶し、所定のタイミングで圧縮画像情報として出力する。蓄積バッファ117は、発生符号量の情報をレート制御回路118に出力する。
レート制御回路118は、蓄積バッファ117から出力された符号量に基づいて量子化スケールを算出し、算出した量子化スケールで量子化が行われるように量子化回路115を制御する。
逆量子化回路119は、量子化回路115により量子化された変換係数に対して逆量子化を施し、変換係数を逆直交変換回路120に出力する。
逆直交変換回路120は、逆量子化回路119から供給された変換係数に対して逆直交変換を施し、得られた画像をデブロックフィルタ121に出力する。
デブロックフィルタ121は、局所的に復号された画像に現れるブロック歪みを除去し、ブロック歪みを除去した画像をフレームメモリ122に出力する。
フレームメモリ122は、デブロックフィルタ121から供給された画像を記憶する。フレームメモリ122に記憶された画像はモード決定回路123により適宜読み出される。
モード決定回路123は、フレームメモリ122に記憶されている画像と並べ替えバッファ112から供給された原画像に基づいて、イントラ符号化を行うか、インター符号化を行うかを決定する。また、モード決定回路123は、インター符号化を行うことを決定した場合、片方向予測モード、双方向予測モード、フィルタリング予測モードのうちのいずれかのモードを決定する。モード決定回路123は、決定結果を表す情報をモード情報として可逆符号化回路116に出力する。
モード決定回路123は、インター符号化を行うことを決定した場合、フレームメモリ122に記憶されている、局所的に復号して得られたフレームを、スイッチ124を介して動き予測・補償回路125に出力する。
また、モード決定回路123は、イントラ符号化を行うことを決定した場合、フレームメモリ122に記憶されている、局所的に復号して得られたフレームをイントラ予測回路126に出力する。
スイッチ124は、インター符号化を行う場合、端子a11に接続し、イントラ符号化を行う場合、端子b11に接続する。スイッチ124の切り替えは例えば制御回路131により制御される。
動き予測・補償回路125は、並べ替えバッファ112から供給された原画像と、フレームメモリ122から読み出された参照フレームに基づいて動きベクトルを検出し、検出した動きベクトルを可逆符号化回路116に出力する。また、動き予測・補償回路125は、検出した動きベクトルと参照フレームを用いて動き補償を行うことによって予測画像を生成し、生成した予測画像を、スイッチ127を介して加算回路113に出力する。
イントラ予測回路126は、並べ替えバッファ112から供給された原画像と、ローカルデコードされてフレームメモリ122に記憶されている参照フレームに基づいてイントラ予測を行い、予測画像を生成する。イントラ予測回路126は、生成した予測画像を、スイッチ127を介して加算回路113に出力し、イントラ予測モード情報を可逆符号化回路116に出力する。
スイッチ127は、端子a12または端子b12に接続し、動き予測・補償回路125、またはイントラ予測回路126により生成された予測画像を加算回路113に出力する。
制御回路131は、モード決定回路123により決定されたモードに応じてスイッチ124,127の接続を切り替えるなどして、符号化装置101の全体の動作を制御する。
図18は、図17のモード決定回路123の構成例を示すブロック図である。
図18に示されるように、モード決定回路123は、イントラ予測回路141、インター予測回路142、予測誤差計算回路143、および決定回路144から構成される。モード決定回路123においては、それぞれ異なる大きさのブロックを対象としてイントラ予測、インター予測が行われ、その結果から、どの予測モードで予測を行うのかが決定される。インター予測については、片方向予測モード、双方向予測モード、フィルタリング予測モードのそれぞれの予測モードでの処理が行われる。並べ替えバッファ112から供給された原画像はイントラ予測回路141、インター予測回路142、および予測誤差計算回路143に入力される。
イントラ予測回路141は、原画像とフレームメモリ122から読み出された画像に基づいてそれぞれ異なるサイズのブロック単位でイントラ予測を行い、生成したイントラ予測画像を予測誤差計算回路143に出力する。4×4予測回路151−1においては、4×4画素のブロック単位でイントラ予測が行われ、8×8予測回路151−2においては、8×8画素のブロック単位でイントラ予測が行われる。16×16予測回路151−3においては、16×16画素のブロック単位でイントラ予測が行われる。イントラ予測回路141の各回路は、また、生成したイントラ予測画像をフィルタリング回路164にも供給する。
インター予測回路142の予測回路161は、原画像とフレームメモリ122から読み出された参照フレームに基づいてそれぞれ異なるサイズのブロック単位で動きベクトルを検出する。また、予測回路161は、検出した動きベクトルに基づいて動き補償を行い、予測画像の生成に用いる動き補償画像を出力する。
16×16予測回路161−1においては、16×16画素のブロック単位の画像を対象として処理が行われ、16×8予測回路161−2においては、16×8画素のブロック単位の画像を対象として処理が行われる。また、4×4予測回路161−(n−1)においては、4×4画素のブロック単位の画像を対象として処理が行われる。スキップ/ダイレクト予測回路161−nにおいては、スキップ予測モード、ダイレクト予測モードで動きベクトルが検出され、検出された動きベクトルを用いて動き補償が行われる。
現在のフレームを基準として、片方向にある複数の参照フレームから抽出された動き補償画像が予測回路161の各回路から片方向予測回路162に供給される。また、現在のフレームを基準として、双方向にある複数の参照フレームから抽出された動き補償画像が予測回路161の各回路から双方向予測回路163に供給される。
フィルタリング予測が上述したように片方向にある複数の参照フレームから抽出された動き補償画像を用いて行われる場合、予測回路161の各回路からフィルタリング回路164に対して、片方向にある参照フレームから抽出された動き補償画像が供給される。フィルタリング予測が双方向にある複数の参照フレームから抽出された動き補償画像を用いて行われる場合、予測回路161の各回路からフィルタリング回路164に対して、双方向にある参照フレームから抽出された動き補償画像が供給される。
片方向予測回路162は、予測回路161の各回路から供給されたそれぞれ異なるサイズの動き補償画像を用いて片方向予測を行うことによって予測画像を生成し、生成した予測画像を予測誤差計算回路143に出力する。例えば、片方向予測回路162は、予測回路161−1から供給された、16×16画素の複数の動き補償画像のうちのいずれかの画像の画素値を予測画像の画素値とすることによって予測画像を生成する。
双方向予測回路163は、予測回路161の各回路から供給されたそれぞれ異なるサイズの動き補償画像を用いて双方向予測を行うことによって予測画像を生成し、生成した予測画像を予測誤差計算回路143に出力する。例えば、双方向予測回路163は、予測回路161−1から供給された、16×16画素の複数の動き補償画像の画素値の平均値を予測画像の画素値とすることによって予測画像を生成する。
フィルタリング回路164は、予測回路161の各回路から供給されたそれぞれ異なるサイズの動き補償画像と、イントラ予測回路141の各回路から供給されたそれぞれ異なるサイズのイントラ予測画像を用いてフィルタリング予測を行うことによって予測画像を生成し、生成した予測画像を予測誤差計算回路143に出力する。フィルタリング回路164は、復号装置1のフィルタリング回路45に対応して、図12に示される構成と同じ構成を有している。
例えば、フィルタリング回路164は、予測回路161−1から供給された16×16画素の動き補償画像と、予測回路151−3から供給された16×16画素を対象として予測画像を生成する場合、イントラ予測画像と動き補償画像の差分を求め、求めた差分画像にローパスフィルタをかける。また、フィルタリング回路164は、ローパスフィルタの出力に対してハイパスフィルタをかけ、その出力のゲインを調整した画像と、ローパスフィルタの出力のゲインを調整した画像とを加算する。フィルタリング回路164は、高周波成分を表す加算結果の画像をイントラ予測画像に加算することによって予測画像を生成し、生成した予測画像を予測誤差計算回路143に出力する。
予測誤差計算回路143は、イントラ予測回路141の各回路から供給されたそれぞれの予測画像について、原画像との差を求め、求めた差を表す残差信号を決定回路144に出力する。また、予測誤差計算回路143は、インター予測回路142の片方向予測回路162、双方向予測回路163、フィルタリング回路164から供給されたそれぞれの予測画像について、原画像との差を求め、求めた差を表す残差信号を決定回路144に出力する。
決定回路144は、予測誤差計算回路143から供給された残差信号の強度を測定し、原画像との差の少ない予測画像の生成に用いられた予測方法を、符号化に用いる予測画像を生成するための予測方法として決定する。決定回路144は、決定結果を表す情報をモード情報として可逆符号化回路116に出力する。モード情報には、どのサイズのブロックを処理の単位とするのかを表す情報なども含まれる。
また、決定回路144は、インター予測によって予測画像を生成することを決定した場合(インター符号化を行うことを決定した場合)、フレームメモリ122から読み出した参照フレームを、モード情報とともに動き予測・補償回路125に出力する。決定回路144は、イントラ予測によって予測画像を生成することを決定した場合(イントラ符号化を行うことを決定した場合)、フレームメモリ122から読み出したイントラ予測に用いる画像を、モード情報とともにイントラ予測回路126に出力する。
図19は、図17の動き予測・補償回路125の構成例を示すブロック図である。
図19に示されるように、動き予測・補償回路125は、動きベクトル検出回路181、片方向予測回路182、双方向予測回路183、予測回路184、およびフィルタリング回路185から構成される。予測モード決定回路41に替えて動きベクトル検出回路181が設けられている点を除いて、動き予測・補償回路125は、図8に示される動き予測・補償回路21と同様の構成を有する。
動きベクトル検出回路181は、並べ替えバッファ112から供給された原画像と、モード決定回路123から供給された参照フレームに基づいて、ブロックマッチングなどを行うことによって動きベクトルを検出する。動きベクトル検出回路181は、モード決定回路123から供給されたモード情報を参照し、参照フレームとともに動きベクトルを片方向予測回路182、双方向予測回路183、予測回路184のいずれかに出力する。
動きベクトル検出回路181は、片方向予測が選択されている場合、参照フレームとともに動きベクトルを片方向予測回路182に出力し、双方向予測を行うことが選択されている場合、それらの情報を双方向予測回路183に出力する。動きベクトル検出回路181は、フィルタリング予測を行うことが選択されている場合、参照フレームとともに動きベクトルを予測回路184に出力する。
片方向予測回路182は、図8の片方向予測回路42と同様に、片方向予測を行うことによって予測画像を生成する。片方向予測回路182は、生成した予測画像を加算回路113に出力する。
双方向予測回路183は、図8の双方向予測回路43と同様に、双方向予測を行うことによって予測画像を生成する。双方向予測回路183は、生成した予測画像を加算回路113に出力する。
予測回路184は、図8の予測回路44と同様に、2枚などの複数の参照フレームからそれぞれ動き補償画像を抽出し、抽出した複数の動き補償画像をフィルタリング回路185に出力する。
フィルタリング回路185は、図8のフィルタリング回路45と同様に、フィルタリング予測を行うことによって予測画像を生成する。フィルタリング回路185は、生成した予測画像を加算回路113に出力する。なお、フィルタリング回路185は図12に示されるフィルタリング回路45の構成と同様の構成を有している。以下、適宜、図12に示されるフィルタリング回路45の構成をフィルタリング回路185の構成として引用して説明する。
フィルタリング予測によって生成された予測画像は、片方向予測、双方向予測によって生成された予測画像と較べて高周波成分を多く含み、原画像との差が少ない画像になる。従って、残差に割り当てる符号量が少なくて済むため、符号化効率を上げることが可能になる。
また、参照フレームの数が少なくとも2枚あればフィルタリング予測を行うことができるため、そのように符号化効率を上げるといったことを、処理を複雑にすることなく実現することが可能になる。例えば、インター予測で用いる参照フレームの数を多くして精度の高い予測画像を生成し、それを用いることによっても原画像との残差を小さくし、符号化効率を上げることができるが、この場合、参照フレームの数が多くなることから、処理が複雑になる。
なお、予測方法を選択する際、予測に必要な動きベクトルや符号化モードといった情報の符号量を考慮し、符号量に応じた重みを残差信号の強度に加えて最適な予測方法が選択されるようにしてもよい。これにより、より一層、符号化効率を改善させることが可能になる。また、符号化処理の簡略化のために、入力された原画像の時間・空間方向の特徴量を利用して、適応的に予測方法が選択されるようにしてもよい。
[符号化処理の流れの説明]
次に、以上のような構成を有する符号化装置101の処理について説明する。
図20のフローチャートを参照して、符号化装置101の符号化処理について説明する。この処理は、マクロブロックなどの所定の単位の画像が並べ替えバッファ112から出力されたときに開始される。
ステップS101において、加算回路113は、並べ替えバッファ112から供給された画像と、動き予測・補償回路125、またはイントラ予測回路126により生成された予測画像の差を求め、残差を直交変換回路114に出力する。
ステップS102において、直交変換回路114は、加算回路113から供給された残差に対して直交変換を施し、変換係数を量子化回路115に出力する。
ステップS103において、量子化回路115は、直交変換回路114から供給された変換係数を量子化し、量子化した変換係数を出力する。
ステップS104において、逆量子化回路119は、量子化回路115により量子化された変換係数に対して逆量子化を施し、変換係数を逆直交変換回路120に出力する。
ステップS105において、逆直交変換回路120は、逆量子化回路119から供給された変換係数に対して逆直交変換を施し、得られた画像をデブロックフィルタ121に出力する。
ステップS106において、デブロックフィルタ121は、フィルタリングを施すことによってブロック歪みを除去し、ブロック歪みを除去した画像をフレームメモリ122に出力する。
ステップS107において、フレームメモリ122は、デブロックフィルタ121から供給された画像を記憶する。
ステップS108において、モード決定回路123によりモード決定処理が行われる。モード決定処理により、どの予測モードで予測画像を生成するのかが決定される。モード決定処理については後述する。
ステップS109において、制御回路131は、モード決定回路123による決定に基づいて、イントラ予測を行うか否かを判定する。
イントラ予測を行うとステップS109において判定された場合、ステップS110において、イントラ予測回路126はイントラ予測を行い、予測画像を加算回路113に出力する。
一方、イントラ予測を行わない、すなわちインター予測を行うとステップS109において判定された場合、ステップS111において、動き予測・補償処理が動き予測・補償回路125により行われ、予測画像が加算回路113に出力される。動き予測・補償処理については後述する。
ステップS112において、可逆符号化回路116は、量子化回路115から供給された変換係数を圧縮し、蓄積バッファ117に出力する。また、可逆符号化回路116は、モード決定回路123から供給された情報に従って識別フラグを画像のヘッダに記述したり、動き予測・補償回路125から供給された動きベクトルを画像のヘッダに記述したりする。
ステップS113において、蓄積バッファ117は、可逆符号化回路116から供給された情報を一時的に記憶する。
ステップS114において、制御回路131は、1フレーム全体のマクロブロックについて以上の処理を行ったか否かを判定し、処理を行っていないと判定した場合、他のマクロブロックに注目して、ステップS111以降の処理を繰り返す。
一方、1フレーム全体のマクロブロックについて処理を行ったとステップS114において判定された場合、ステップS115において、蓄積バッファ117は制御回路131による制御に従って圧縮画像情報を出力する。以上の処理が、各フレームを対象として行われる。
次に、図21のフローチャートを参照して、図20のステップS108において行われるモード決定処理について説明する。
ステップS131において、イントラ予測回路141、インター予測回路142は、それぞれ、異なる大きさのブロックを対象としてイントラ予測、インター予測を行い、予測画像を生成する。生成された予測画像は予測誤差計算回路143に供給される。
ステップS132において、予測誤差計算回路143は、イントラ予測回路141の各回路、インター予測回路142の片方向予測回路162、双方向予測回路163、フィルタリング回路164から供給されたそれぞれの予測画像について、原画像との差を求める。予測誤差計算回路143は残差信号を決定回路144に出力する。
ステップS133において、決定回路144は、予測誤差計算回路143から供給された残差信号の強度に基づいて、加算回路113に供給する予測画像を生成するための予測方法を決定する。
ステップS134において、決定回路144は、決定した予測方法に関する情報であるモード情報を可逆符号化回路116に出力する。その後、図20のステップS108に戻り、それ以降の処理が行われる。
次に、図22のフローチャートを参照して、図20のステップS111において行われる動き予測・補償処理について説明する。
ステップS151において、動きベクトル検出回路181は、原画像と参照フレームに基づいて動きベクトルを検出する。
ステップS152において、動きベクトル検出回路181は、モード決定回路123によりフィルタリング予測モードで処理を行うことが決定されたか否かを判定する。
フィルタリング予測モードで処理を行うことが決定されたと判定された場合、処理は、ステップS153に進む。ステップS153およびステップS154の各処理は、それぞれ、図14のステップS32およびステップS33の場合と同様に実行される。つまり、ステップS153においては、抽出処理が、図15のフローチャートを参照して説明したように実行され、ステップS154においては、フィルタリング予測処理が、図16のフローチャートを参照して説明したように実行される。
ステップS154の処理が終了すると、動き予測・補償処理が終了され、処理は、図20のステップS111に戻り、ステップS112に進む。
また、図22のステップS152において、フィルタリング予測モードで処理を行うことが決定されていないと判定された場合、処理は、ステップS155に進む。ステップS155において、片方向予測回路182または双方向予測回路183は、片方向予測、または双方向予測を行い、予測画像を生成する。
すなわち、片方向予測モードで処理を行うことが決定された場合、動きベクトル検出回路181から片方向予測回路182に対して動きベクトルが供給され、片方向予測回路182において片方向予測が行われる。また、双方向予測モードで処理を行うことが決定された場合、動きベクトル検出回路181から双方向予測回路183に対して動きベクトルが供給され、双方向予測回路183において双方向予測が行われる。予測画像が加算回路113に出力され、図22のステップS155の処理が終了すると、動き予測・補償処理が終了され、処理は、図20のステップS111に戻り、ステップS112に進む。
以上のように、フィルタリング予測によって生成された予測画像を用いて符号化を行うことにより、符号化効率を上げることが可能になる。特に、符号化装置101は、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率を向上させることができる。さらに、インター予測に必要な参照フレームの数を減らすことができるので処理コストの低減を実現することができる。
<3.第3の実施の形態>
[フィルタリング回路の変形例]
以上においては、フィルタリング回路45,185は図12に示されるような構成を有するものとしたが、この構成は適宜変更可能である。
図23は、フィルタリング回路45の他の構成例を示すブロック図である。図12に示される構成と対応する構成には同じ符号を付してある。重複する説明については適宜省略する。
図23の差分計算回路61は、イントラ予測画像と動き補償画像の差分を計算し、差分画像をローパスフィルタ回路62に出力する。
ローパスフィルタ回路62は、差分計算回路61から供給された差分画像に対してローパスフィルタをかけ、得られた画像を加算回路67に出力する。
加算回路67は、イントラ予測画像に対して、ローパスフィルタ回路62から供給された画像を足し込み、得られた画像を予測画像として出力する。
図23に示されるような構成を用いることにより、図12の構成を用いた場合と較べて処理量を減らすことができ、高速な動作を実現する可能になる。
図24は、フィルタリング回路45のさらに他の構成例を示すブロック図である。図12に示される構成と対応する構成には同じ符号を付してある。重複する説明については適宜省略する。
図24のフィルタリング回路45においては、時間領域の信号ではなく周波数領域の信号を対象としてフィルタリングが施される。図12、図23に示されるフィルタリング回路45は、いずれも、時間領域の信号に対してフィルタリングを施すものである。
図24の差分計算回路61は、イントラ予測画像と動き補償画像の差分を計算し、差分画像を直交変換回路201に出力する。
直交変換回路201は、差分画像に対して、DCT(Discrete Cosine Transform)、Hadamard変換、KLT(Karhunen Loeve Transformation)に代表される直交変換を施し、直交変換後の信号をバンドパスフィルタ回路202に出力する。直交変換を行い、周波数領域の信号に対してフィルタリングを施すようにすることにより、時間領域の信号に対してフィルタリングを施す場合に較べて、より柔軟に精度の高いフィルタ処理が可能になる。
DCTを直交変換として用いた場合、直交変換後の出力DFは下式(10)により表される。式(10)のDCT(X)は、信号Xに対して2次元のDCT処理を行うことを表す。
バンドパスフィルタ回路202は、直交変換回路201の出力に対してフィルタリングを施し、所定の帯域の信号を出力する。
ゲイン調整回路203は、バンドパスフィルタ回路202の出力のゲインをα倍して調整するとともに、周波数成分の調整を行う。ゲイン調整回路203の出力XFは下式(11)により表される。式(11)のBPF(X)は、信号Xに対してバンドパスフィルタ処理を行うことを表す。
逆直交変換回路204は、直交変換回路201による直交変換に対応する方式で逆直交変換を行い、ゲイン調整回路203から供給された周波数領域の信号を時間領域の信号に変換する。例えば、直交変換回路201においてDCTが直交変換として用いられた場合、逆直交変換回路204においてはIDCTが行われる。逆直交変換回路204の出力Xは下式(12)により表される。式(12)のIDCT(X)は、信号Xに対して2次元のIDCT処理を行うことを表す。
加算回路67は、イントラ予測画像に対して、逆直交変換回路204から供給され信号Xを時間領域で足し込み、得られた画像を予測画像として出力する。加算回路67の最終出力である予測画像S(i,j)は下式(13)により表される。
このように、周波数領域の信号に対してフィルタリングを行うことによっても、精度の高い予測画像を生成することができる。
また、以上においては、2枚の参照フレームが用いられてフィルタリング予測が行われるものとしたが、それ以上の枚数のフレームが参照フレームとして用いられるようにしてもよい。
図25は、3枚の参照フレームを用いる場合の例を示す図である。
図25の例においては、予測フレームの時刻を基準として、時間的に1時刻前とその1時刻前とさらにその1時刻前にある3枚のフレームが参照フレームとされている。予測フレームにより近い、1時刻前のフレームが参照フレームR0とされ、参照フレームR0の1時刻前のフレームが参照フレームR1とされ、参照フレームR1の1時刻前のフレームが参照フレームR2とされている。
図26は、3枚の参照フレームを用いる場合のフィルタリング回路の構成例を示すブロック図である。
図26に示されるように、フィルタリング回路211は、フィルタリング回路221とフィルタリング回路222から構成される。フィルタリング回路221とフィルタリング回路222は、それぞれ、図12、図23、図24に示されるような構成を有している。すなわち、フィルタリング回路211は、2入力1出力のときに用いるフィルタリング回路45をカスケード接続することによって、3入力1出力の回路として動作するようになされている。
ここでは、参照フレームR0から抽出された動き補償画像を動き補償画像MC0、参照フレームR1から抽出された動き補償画像を動き補償画像MC1とし、カレントフレームにおいてイントラ予測画像が得られるものとして説明する。イントラ予測画像IPと動き補償画像MC0はフィルタリング回路221に入力され、動き補償画像MC1はフィルタリング回路222に入力される。
フィルタリング回路221は、イントラ予測画像IPと動き補償画像MC0に対して図12を参照して説明したようにフィルタリングを行い、フィルタリングの結果である中間出力Xをフィルタリング回路222に出力する。
フィルタリング回路221は、中間出力Xと動き補償画像MC1に対して図12を参照して説明したようにフィルタリングを行い、フィルタリングの結果を予測画像として出力する。
このような3枚のフレームを扱うフィルタリング回路211が、フィルタリング回路45に替えて図5の復号装置1や図17の符号化装置101に設けられるようにすることも可能である。
なお、フィルタリング回路221とフィルタリング回路222が同じ構成を有している必要はなく、一方は図12に示される構成を有し、他方は図23に示される構成を有するといったように、それぞれの構成が異なるようにしてもよい。また、フィルタリングの前後における入出力特性を考慮して、フィルタに用いるパラメータが異なるようにすることも可能である。
時間的に一方にある参照フレームから抽出された動き補償画像ではなく、前後にある3枚の参照フレームから抽出された動き補償画像を対象として、フィルタリング回路211においてフィルタリングが施されるようにしてもよい。
なお、図12を参照して説明した場合を含めて、予測フレームの時刻を基準として前後にあるフレームを参照フレームとして用いる場合、フィルタリング時のタップ係数などのパラメータを、参照フレームの時間方向や距離に応じて動的に変更するようにしてもよい。
符号化装置101から復号装置1に対する圧縮画像情報の伝送は、光ディスク、磁気ディスク、フラッシュメモリなどの記録メディア、衛星放送、ケーブルTV、インターネット、携帯電話機ネットワークなどの各種の媒体を介して行われる。
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図27は、上述した一連の処理をプログラムにより実行するコンピュータ300のハードウエアの構成例を示すブロック図である。
CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303は、バス304により相互に接続されている。
バス304には、さらに、入出力インタフェース310が接続されている。入出力インタフェース310には、キーボード、マウス、マイクロホンなどよりなる入力部311、ディスプレイ、スピーカなどよりなる出力部312、ハードディスクや不揮発性のメモリなどよりなる記憶部313、ネットワークインタフェースなどよりなる通信部314、光ディスクや半導体メモリなどのリムーバブルメディア321を駆動するドライブ315が接続されている。
以上のように構成されるコンピュータ300では、CPU301が、例えば、記憶部313に記憶されているプログラムを入出力インタフェース310及びバス304を介してRAM303にロードして実行することにより、上述した一連の処理が行われる。
CPU301が実行するプログラムは、例えばリムーバブルメディア321に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部313にインストールされる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表わすものである。
また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、上述した復号装置1や符号化装置101は、任意の電子機器に適用することができる。以下にその例について説明する。
図28は、本発明を適用した復号装置1を用いるテレビジョン受像機の主な構成例を示すブロック図である。
図28に示されるテレビジョン受像機1000は、地上波チューナ1013、ビデオデコーダ1015、映像信号処理回路1018、グラフィック生成回路1019、パネル駆動回路1020、および表示パネル1021を有する。
地上波チューナ1013は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ1015に供給する。ビデオデコーダ1015は、地上波チューナ1013から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路1018に供給する。
映像信号処理回路1018は、ビデオデコーダ1015から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路1019に供給する。
グラフィック生成回路1019は、表示パネル1021に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路1020に供給する。また、グラフィック生成回路1019は、項目の選択などにユーザにより利用される画面を表示するための映像データ(グラフィック)を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路1020に供給するといった処理も適宜行う。
パネル駆動回路1020は、グラフィック生成回路1019から供給されたデータに基づいて表示パネル1021を駆動し、番組の映像や上述した各種の画面を表示パネル1021に表示させる。
表示パネル1021はLCD(Liquid Crystal Display)などよりなり、パネル駆動回路1020による制御に従って番組の映像などを表示させる。
また、テレビジョン受像機1000は、音声A/D(Analog/Digital)変換回路1014、音声信号処理回路1022、エコーキャンセル/音声合成回路1023、音声増幅回路1024、およびスピーカ1025も有する。
地上波チューナ1013は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ1013は、取得した音声信号を音声A/D変換回路1014に供給する。
音声A/D変換回路1014は、地上波チューナ1013から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路1022に供給する。
音声信号処理回路1022は、音声A/D変換回路1014から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル/音声合成回路1023に供給する。
エコーキャンセル/音声合成回路1023は、音声信号処理回路1022から供給された音声データを音声増幅回路1024に供給する。
音声増幅回路1024は、エコーキャンセル/音声合成回路1023から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ1025から出力させる。
さらに、テレビジョン受像機1000は、デジタルチューナ1016およびMPEGデコーダ1017も有する。
デジタルチューナ1016は、デジタル放送(地上デジタル放送、BS(Broadcasting Satellite)/CS(Communications Satellite)デジタル放送)の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS(Moving PictureExperts Group-Transport Stream)を取得し、それをMPEGデコーダ1017に供給する。
MPEGデコーダ1017は、デジタルチューナ1016から供給されたMPEGTSに施されているスクランブルを解除し、再生対象(視聴対象)になっている番組のデータを含むストリームを抽出する。MPEGデコーダ1017は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路1022に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路1018に供給する。また、MPEGデコーダ1017は、MPEG-TSから抽出したEPG(Electronic Program Guide)データを図示せぬ経路を介してCPU1032に供給する。
テレビジョン受像機1000は、このように映像パケットをデコードするMPEGデコーダ1017として、上述した復号装置1を用いる。なお、放送局等より送信されるMPEG-TSは、符号化装置101によって符号化されている。
MPEGデコーダ1017は、復号装置1の場合と同様に、動きベクトルを用いてフレーム(N−1)から動き予測画像を得るとともに、フレームNにおける復号済み画素値を利用したイントラ予測によりフレームNから空間予測画像を得る。そして、MPEGデコーダ1017は、この2種類の画像をフィルタリング処理して予測画像を生成する。したがって、MPEGデコーダ1017は、より原画像に近い新たな予測画像を生成することができる。
MPEGデコーダ1017から供給された映像データは、ビデオデコーダ1015から供給された映像データの場合と同様に、映像信号処理回路1018において所定の処理が施され、グラフィック生成回路1019において、生成された映像データ等が適宜重畳され、パネル駆動回路1020を介して表示パネル1021に供給され、その画像が表示される。
MPEGデコーダ1017から供給された音声データは、音声A/D変換回路1014から供給された音声データの場合と同様に、音声信号処理回路1022において所定の処理が施され、エコーキャンセル/音声合成回路1023を介して音声増幅回路1024に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ1025から出力される。
また、テレビジョン受像機1000は、マイクロホン1026、およびA/D変換回路1027も有する。
A/D変換回路1027は、音声会話用のものとしてテレビジョン受像機1000に設けられるマイクロホン1026により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル/音声合成回路1023に供給する。
エコーキャンセル/音声合成回路1023は、テレビジョン受像機1000のユーザ(ユーザA)の音声のデータがA/D変換回路1027から供給されている場合、ユーザAの音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1024を介してスピーカ1025より出力させる。
さらに、テレビジョン受像機1000は、音声コーデック1028、内部バス1029、SDRAM(Synchronous Dynamic Random Access Memory)1030、フラッシュメモリ1031、CPU1032、USB(Universal Serial Bus)I/F1033、およびネットワークI/F1034も有する。
A/D変換回路1027は、音声会話用のものとしてテレビジョン受像機1000に設けられるマイクロホン1026により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック1028に供給する。
音声コーデック1028は、A/D変換回路1027から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス1029を介してネットワークI/F1034に供給する。
ネットワークI/F1034は、ネットワーク端子1035に装着されたケーブルを介してネットワークに接続される。ネットワークI/F1034は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック1028から供給された音声データを送信する。また、ネットワークI/F1034は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子1035を介して受信し、それを、内部バス1029を介して音声コーデック1028に供給する。
音声コーデック1028は、ネットワークI/F1034から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル/音声合成回路1023に供給する。
エコーキャンセル/音声合成回路1023は、音声コーデック1028から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1024を介してスピーカ1025より出力させる。
SDRAM1030は、CPU1032が処理を行う上で必要な各種のデータを記憶する。
フラッシュメモリ1031は、CPU1032により実行されるプログラムを記憶する。フラッシュメモリ1031に記憶されているプログラムは、テレビジョン受像機1000の起動時などの所定のタイミングでCPU1032により読み出される。フラッシュメモリ1031には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
例えば、フラッシュメモリ1031には、CPU1032の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ1031は、例えばCPU1032の制御により、そのMPEG-TSを、内部バス1029を介してMPEGデコーダ1017に供給する。
MPEGデコーダ1017は、デジタルチューナ1016から供給されたMPEGTSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機1000は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ1017を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
また、テレビジョン受像機1000は、リモートコントローラ1051から送信される赤外線信号を受光する受光部1037も有する。
受光部1037は、リモートコントローラ1051からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU1032に出力する。
CPU1032は、フラッシュメモリ1031に記憶されているプログラムを実行し、受光部1037から供給される制御コードなどに応じてテレビジョン受像機1000の全体の動作を制御する。CPU1032とテレビジョン受像機1000の各部は、図示せぬ経路を介して接続されている。
USB I/F1033は、USB端子1036に装着されたUSBケーブルを介して接続される、テレビジョン受像機1000の外部の機器との間でデータの送受信を行う。ネットワークI/F1034は、ネットワーク端子1035に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
テレビジョン受像機1000は、MPEGデコーダ1017として復号装置1を用いることにより、ストリームを構成する映像パケットに対するデコードにおいて、高周波成分を表す画像をイントラ予測画像IPに足し込むことによって予測画像を生成するようにすることができる。
この予測画像は、単純に双方向予測を行った場合に得られる予測画像と較べて高周波成分をより多く含むものになる。
また、単純に片方向予測を行った場合と較べて、画像の時間相関をより効率的に利用して予測画像を生成することが可能になる。
さらに、高周波成分を多く含む予測画像が加算回路15において復号画像に加算されるから、最終的にMPEGデコーダ1017から出力される画像も高周波成分を多く含む高精細なものになる。
また、予測画像の生成において、カレントフレームにおいてイントラ予測が行われ、その生成されるイントラ予測画像IPが動き補償画像MC1とともに利用されるので、動き補償画像生成のための動きベクトルの数を低減させることができる。
このように、テレビジョン受像機1000は、ストリームを構成する映像パケットに対するデコードにおいて、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率の向上を実現することができ、さらに、インター予測に必要な参照面の数を減らすことで処理コストの低減を実現することもできる。
図29は、本発明を適用した復号装置1および符号化装置101を用いる携帯電話機の主な構成例を示すブロック図である。
図29に示される携帯電話機1100は、各部を統括的に制御するようになされた主制御部1150、電源回路部1151、操作入力制御部1152、画像エンコーダ1153、カメラI/F部1154、LCD制御部1155、画像デコーダ1156、多重分離部1157、記録再生部1162、変復調回路部1158、および音声コーデック1159を有する。これらは、バス1160を介して互いに接続されている。
また、携帯電話機1100は、操作キー1119、CCD(Charge Coupled Devices)カメラ1116、液晶ディスプレイ1118、記憶部1123、送受信回路部1163、アンテナ1114、マイクロホン(マイク)1121、およびスピーカ1117を有する。
電源回路部1151は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機1100を動作可能な状態に起動する。
携帯電話機1100は、CPU、ROMおよびRAM等でなる主制御部1150の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
例えば、音声通話モードにおいて、携帯電話機1100は、マイクロホン(マイク)1121で集音した音声信号を、音声コーデック1159によってデジタル音声データに変換し、これを変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(音声信号)は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
また、例えば、音声通話モードにおいて、携帯電話機1100は、アンテナ1114で受信した受信信号を送受信回路部1163で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部1158でスペクトラム逆拡散処理し、音声コーデック1159によってアナログ音声信号に変換する。携帯電話機1100は、その変換して得られたアナログ音声信号をスピーカ1117から出力する。
更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機1100は、操作キー1119の操作によって入力された電子メールのテキストデータを、操作入力制御部1152において受け付ける。携帯電話機1100は、そのテキストデータを主制御部1150において処理し、LCD制御部1155を介して、画像として液晶ディスプレイ1118に表示させる。
また、携帯電話機1100は、主制御部1150において、操作入力制御部1152が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機1100は、その電子メールデータを、変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(電子メール)は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機1100は、基地局から送信された信号を、アンテナ1114を介して送受信回路部1163で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1100は、その受信信号を変復調回路部1158でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機1100は、復元された電子メールデータを、LCD制御部1155を介して液晶ディスプレイ1118に表示する。
なお、携帯電話機1100は、受信した電子メールデータを、記録再生部1162を介して、記憶部1123に記録する(記憶させる)ことも可能である。
この記憶部1123は、書き換え可能な任意の記憶媒体である。記憶部1123は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機1100は、撮像によりCCDカメラ1116で画像データを生成する。CCDカメラ1116は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。CCDカメラ1116は、その画像データを、カメラI/F部1154を介して、画像エンコーダ1153で符号化し、符号化画像データに変換する。
携帯電話機1100は、このような処理を行う画像エンコーダ1153として、上述した符号化装置101を用いる。画像エンコーダ1153は、符号化装置101の場合と同様に、動きベクトルを用いてフレーム(N−1)から動き予測画像を得るとともに、フレームNにおける復号済み画素値を利用したイントラ予測によりフレームNから空間予測画像を得る。そして、画像エンコーダ1153は、この2種類の画像をフィルタリング処理して予測画像を生成する。したがって、画像エンコーダ1153は、より原画像に近い新たな予測画像を生成することができる。従って、残差に割り当てる符号量が少なくて済むため、符号化効率を上げることが可能になる。
なお、携帯電話機1100は、このとき同時に、CCDカメラ1116で撮像中にマイクロホン(マイク)1121で集音した音声を、音声コーデック1159においてアナログデジタル変換し、さらに符号化する。
携帯電話機1100は、多重分離部1157において、画像エンコーダ1153から供給された符号化画像データと、音声コーデック1159から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機1100は、その結果得られる多重化データを、変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(画像データ)は、ネットワーク等を介して、通信相手に供給される。
なお、画像データを送信しない場合、携帯電話機1100は、CCDカメラ1116で生成した画像データを、画像エンコーダ1153を介さずに、LCD制御部1155を介して液晶ディスプレイ1118に表示させることもできる。
また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機1100は、基地局から送信された信号を、アンテナ1114を介して送受信回路部1163で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1100は、その受信信号を変復調回路部1158でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機1100は、多重分離部1157において、その多重化データを分離して、符号化画像データと音声データとに分ける。
携帯電話機1100は、画像デコーダ1156において符号化画像データをデコードすることにより、再生動画像データを生成し、これを、LCD制御部1155を介して液晶ディスプレイ1118に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ1118に表示される。
携帯電話機1100は、このような処理を行う画像デコーダ1156として、上述した復号装置1を用いる。つまり、画像デコーダ1156は、復号装置1の場合と同様に、動きベクトルを用いてフレーム(N−1)から動き予測画像を得るとともに、フレームNにおける復号済み画素値を利用したイントラ予測によりフレームNから空間予測画像を得る。そして、画像デコーダ1156は、この2種類の画像をフィルタリング処理して予測画像を生成する。したがって、画像デコーダ1156は、より原画像に近い新たな予測画像を生成することができる。
このとき、携帯電話機1100は、同時に、音声コーデック1159において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ1117より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
なお、電子メールの場合と同様に、携帯電話機1100は、受信した簡易ホームページ等にリンクされたデータを、記録再生部1162を介して、記憶部1123に記録する(記憶させる)ことも可能である。
また、携帯電話機1100は、主制御部1150において、撮像されてCCDカメラ1116で得られた2次元コードを解析し、2次元コードに記録された情報を取得することができる。
さらに、携帯電話機1100は、赤外線通信部1181で赤外線により外部の機器と通信することができる。
携帯電話機1100は、画像エンコーダ1153として符号化装置101を用いることにより、例えばCCDカメラ1116において生成された画像データを符号化して伝送する際の、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率を向上させることができる。さらに、インター予測に必要な参照フレームの数を減らすことができるので、携帯電話機1100は、処理コストの低減を実現することができる。
また、携帯電話機1100は、画像デコーダ1156として復号装置1を用いることにより、例えば、簡易ホームページ等にリンクされた動画像ファイルのデータ(符号化データ)を受信する際の復号において、高周波成分を表す画像をイントラ予測画像IPに足し込むことによって予測画像を生成するようにすることができる。
これにより、携帯電話機1100は、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率の向上を実現することができ、さらに、インター予測に必要な参照面の数を減らすことで処理コストの低減を実現することもできる。
なお、以上において、携帯電話機1100が、CCDカメラ1116を用いるように説明したが、このCCDカメラ1116の代わりに、CMOS(Complementary Metal Oxide Semiconductor)を用いたイメージセンサ(CMOSイメージセンサ)を用いるようにしてもよい。この場合も、携帯電話機1100は、CCDカメラ1116を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
また、以上においては携帯電話機1100として説明したが、例えば、PDA(Personal Digital Assistants)、スマートフォン、UMPC(Ultra Mobile Personal Computer)、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機1100と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機1100の場合と同様に、復号装置1および符号化装置101を適用することができる。
図30は、本発明を適用した復号装置1および符号化装置101を用いるハードディスクレコーダの主な構成例を示すブロック図である。
図30に示されるハードディスクレコーダ(HDDレコーダ)1200は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号(テレビジョン信号)に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。
ハードディスクレコーダ1200は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ1200は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
さらに、ハードディスクレコーダ1200は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ1260に供給し、モニタ1260の画面にその画像を表示させ、モニタ1260のスピーカよりその音声を出力させることができる。また、ハードディスクレコーダ1200は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ1260に供給し、モニタ1260の画面にその画像を表示させ、モニタ1260のスピーカよりその音声を出力させることもできる。
もちろん、この他の動作も可能である。
図30に示されるように、ハードディスクレコーダ1200は、受信部1221、復調部1222、デマルチプレクサ1223、オーディオデコーダ1224、ビデオデコーダ1225、およびレコーダ制御部1226を有する。ハードディスクレコーダ1200は、さらに、EPGデータメモリ1227、プログラムメモリ1228、ワークメモリ1229、ディスプレイコンバータ1230、OSD(On Screen Display)制御部1231、ディスプレイ制御部1232、記録再生部1233、D/Aコンバータ1234、および通信部1235を有する。
また、ディスプレイコンバータ1230は、ビデオエンコーダ1241を有する。記録再生部1233は、エンコーダ1251およびデコーダ1252を有する。
受信部1221は、リモートコントローラ(図示せず)からの赤外線信号を受信し、電気信号に変換してレコーダ制御部1226に出力する。レコーダ制御部1226は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ1228に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部1226は、このとき、ワークメモリ1229を必要に応じて使用する。
通信部1235は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部1235は、レコーダ制御部1226により制御され、チューナ(図示せず)と通信し、主にチューナに対して選局制御信号を出力する。
復調部1222は、チューナより供給された信号を、復調し、デマルチプレクサ1223に出力する。デマルチプレクサ1223は、復調部1222より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ1224、ビデオデコーダ1225、またはレコーダ制御部1226に出力する。
オーディオデコーダ1224は、入力されたオーディオデータをデコードし、記録再生部1233に出力する。ビデオデコーダ1225は、入力されたビデオデータをデコードし、ディスプレイコンバータ1230に出力する。レコーダ制御部1226は、入力されたEPGデータをEPGデータメモリ1227に供給し、記憶させる。
ディスプレイコンバータ1230は、ビデオデコーダ1225またはレコーダ制御部1226より供給されたビデオデータを、ビデオエンコーダ1241により、例えばNTSC(National Television Standards Committee)方式のビデオデータにエンコードし、記録再生部1233に出力する。また、ディスプレイコンバータ1230は、ビデオデコーダ1225またはレコーダ制御部1226より供給されるビデオデータの画面のサイズを、モニタ1260のサイズに対応するサイズに変換し、ビデオエンコーダ1241によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部1232に出力する。
ディスプレイ制御部1232は、レコーダ制御部1226の制御のもと、OSD(On Screen Display)制御部1231が出力したOSD信号を、ディスプレイコンバータ1230より入力されたビデオ信号に重畳し、モニタ1260のディスプレイに出力し、表示させる。
モニタ1260にはまた、オーディオデコーダ1224が出力したオーディオデータが、D/Aコンバータ1234によりアナログ信号に変換されて供給されている。モニタ1260は、このオーディオ信号を内蔵するスピーカから出力する。
記録再生部1233は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
記録再生部1233は、例えば、オーディオデコーダ1224より供給されるオーディオデータを、エンコーダ1251によりエンコードする。また、記録再生部1233は、ディスプレイコンバータ1230のビデオエンコーダ1241より供給されるビデオデータを、エンコーダ1251によりエンコードする。記録再生部1233は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部1233は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
記録再生部1233は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部1233は、デコーダ1252によりオーディオデータおよびビデオデータをデコードする。記録再生部1233は、復号したオーディオデータをD/A変換し、モニタ1260のスピーカに出力する。また、記録再生部1233は、復号したビデオデータをD/A変換し、モニタ1260のディスプレイに出力する。
レコーダ制御部1226は、受信部1221を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ1227から最新のEPGデータを読み出し、それをOSD制御部1231に供給する。OSD制御部1231は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部1232に出力する。ディスプレイ制御部1232は、OSD制御部1231より入力されたビデオデータをモニタ1260のディスプレイに出力し、表示させる。これにより、モニタ1260のディスプレイには、EPG(電子番組ガイド)が表示される。
また、ハードディスクレコーダ1200は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
通信部1235は、レコーダ制御部1226に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部1226に供給する。レコーダ制御部1226は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部1233に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部1226および記録再生部1233が、必要に応じて再エンコード等の処理を行うようにしてもよい。
また、レコーダ制御部1226は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ1230に供給する。ディスプレイコンバータ1230は、ビデオデコーダ1225から供給されるビデオデータと同様に、レコーダ制御部1226から供給されるビデオデータを処理し、ディスプレイ制御部1232を介してモニタ1260に供給し、その画像を表示させる。
また、この画像表示に合わせて、レコーダ制御部1226が、復号したオーディオデータを、D/Aコンバータ1234を介してモニタ1260に供給し、その音声をスピーカから出力させるようにしてもよい。
さらに、レコーダ制御部1226は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ1227に供給する。
以上のようなハードディスクレコーダ1200は、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダとして復号装置1を用いる。つまり、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、復号装置1の場合と同様に、動きベクトルを用いてフレーム(N−1)から動き予測画像を得るとともに、フレームNにおける復号済み画素値を利用したイントラ予測によりフレームNから空間予測画像を得る。そして、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、この2種類の画像をフィルタリング処理して予測画像を生成する。したがって、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、より原画像に近い新たな予測画像を生成することができる。
したがって、ハードディスクレコーダ1200は、例えば、チューナや通信部1235によるビデオデータ(符号化データ)の受信の際や、記録再生部1233によるビデオデータ(符号化データ)のハードディスクからの再生の際の復号において、高周波成分を表す画像をイントラ予測画像IPに足し込むことによって予測画像を生成するようにすることができる。
これにより、ハードディスクレコーダ1200は、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率の向上を実現することができ、さらに、インター予測に必要な参照面の数を減らすことで処理コストの低減を実現することもできる。
また、ハードディスクレコーダ1200は、エンコーダ1251として符号化装置101を用いる。エンコーダ1251は、符号化装置101の場合と同様に、動きベクトルを用いた動き予測画像とイントラ予測画像をフィルタリング処理して予測画像を生成する。したがって、エンコーダ1251は、より原画像に近い新たな予測画像を生成することができる。従って、残差に割り当てる符号量が少なくて済むため、符号化効率を上げることが可能になる。
したがって、ハードディスクレコーダ1200は、例えば、ハードディスクに符号化データを記録する際の、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率を向上させることができる。さらに、インター予測に必要な参照フレームの数を減らすことができるので、ハードディスクレコーダ1200は、処理コストの低減を実現することができる。
なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ1200について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ1200の場合と同様に、復号装置1および符号化装置101を適用することができる。
図31は、本発明を適用した復号装置1および符号化装置101を用いるカメラの主な構成例を示すブロック図である。
図31に示されるカメラ1300は、被写体を撮像し、被写体の画像をLCD1316に表示させたり、それを画像データとして、記録メディア1333に記録したりする。
レンズブロック1311は、光(すなわち、被写体の映像)を、CCD/CMOS1312に入射させる。CCD/CMOS1312は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部1313に供給する。
カメラ信号処理部1313は、CCD/CMOS1312から供給された電気信号を、Y,Cr,Cbの色差信号に変換し、画像信号処理部1314に供給する。画像信号処理部1314は、コントローラ1321の制御の下、カメラ信号処理部1313から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ1341で符号化したりする。画像信号処理部1314は、画像信号を符号化して生成した符号化データを、デコーダ1315に供給する。さらに、画像信号処理部1314は、オンスクリーンディスプレイ(OSD)1320において生成された表示用データを取得し、それをデコーダ1315に供給する。
以上の処理において、カメラ信号処理部1313は、バス1317を介して接続されるDRAM(Dynamic Random Access Memory)1318を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM1318に保持させる。
デコーダ1315は、画像信号処理部1314から供給された符号化データを復号し、得られた画像データ(復号画像データ)をLCD1316に供給する。また、デコーダ1315は、画像信号処理部1314から供給された表示用データをLCD1316に供給する。LCD1316は、デコーダ1315から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
オンスクリーンディスプレイ1320は、コントローラ1321の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス1317を介して画像信号処理部1314に出力する。
コントローラ1321は、ユーザが操作部1322を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス1317を介して、画像信号処理部1314、DRAM1318、外部インタフェース1319、オンスクリーンディスプレイ1320、およびメディアドライブ1323等を制御する。FLASH ROM1324には、コントローラ1321が各種処理を実行する上で必要なプログラムやデータ等が格納される。
例えば、コントローラ1321は、画像信号処理部1314やデコーダ1315に代わって、DRAM1318に記憶されている画像データを符号化したり、DRAM1318に記憶されている符号化データを復号したりすることができる。このとき、コントローラ1321は、画像信号処理部1314やデコーダ1315の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部1314やデコーダ1315が対応していない方式により符号化・復号処理を行うようにしてもよい。
また、例えば、操作部1322から画像印刷の開始が指示された場合、コントローラ1321は、DRAM1318から画像データを読み出し、それを、バス1317を介して外部インタフェース1319に接続されるプリンタ1334に供給して印刷させる。
さらに、例えば、操作部1322から画像記録が指示された場合、コントローラ1321は、DRAM1318から符号化データを読み出し、それを、バス1317を介してメディアドライブ1323に装着される記録メディア1333に供給して記憶させる。
記録メディア1333は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア1333は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
また、メディアドライブ1323と記録メディア1333を一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
外部インタフェース1319は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ1334と接続される。また、外部インタフェース1319には、必要に応じてドライブ1331が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア1332が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM1324にインストールされる。
さらに、外部インタフェース1319は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ1321は、例えば、操作部1322からの指示に従って、DRAM1318から符号化データを読み出し、それを外部インタフェース1319から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ1321は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース1319を介して取得し、それをDRAM1318に保持させたり、画像信号処理部1314に供給したりすることができる。
以上のようなカメラ1300は、デコーダ1315として復号装置1を用いる。つまり、デコーダ1315は、復号装置1の場合と同様に、動きベクトルを用いてフレーム(N−1)から動き予測画像を得るとともに、フレームNにおける復号済み画素値を利用したイントラ予測によりフレームNから空間予測画像を得る。そして、デコーダ1315は、この2種類の画像をフィルタリング処理して予測画像を生成する。したがって、デコーダ1315は、より原画像に近い新たな予測画像を生成することができる。
したがって、カメラ1300は、例えば、CCD/CMOS1312において生成される画像データや、DRAM1318または記録メディア1333からビデオデータの符号化データを読み出す際や、ネットワークを介してビデオデータの符号化データを取得する際の復号において、高周波成分を表す画像をイントラ予測画像IPに足し込むことによって予測画像を生成するようにすることができる。
また、カメラ1300は、エンコーダ1341として符号化装置101を用いる。エンコーダ1341は、符号化装置101の場合と同様に、動きベクトルを用いた動き予測画像とイントラ予測画像をフィルタリング処理して予測画像を生成する。したがって、エンコーダ1341は、より原画像に近い新たな予測画像を生成することができる。従って、残差に割り当てる符号量が少なくて済むため、符号化効率を上げることが可能になる。
したがって、カメラ1300は、例えば、DRAM1318や記録メディア1333に符号化データを記録する際や、符号化データを他の装置に提供する際の、イントラ予測による予測精度の不足を、インター予測による予測精度で補うことで符号化効率を向上させることができる。さらに、インター予測に必要な参照フレームの数を減らすことができるので、カメラ1300は、処理コストの低減を実現することができる。
なお、コントローラ1321が行う復号処理に復号装置1の復号方法を適用するようにしてもよい。同様に、コントローラ1321が行う符号化処理に符号化装置101の符号化方法を適用するようにしてもよい。
また、カメラ1300が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
もちろん、復号装置1および符号化装置101は、上述した装置以外の装置やシステムにも適用可能である。
また、マクロブロックの大きさは任意である。本発明は、例えば図32に示されるようなあらゆる大きさのマクロブロックに対して適用することができる。例えば、本発明は、通常の16×16画素のようなマクロブロックだけでなく、32×32画素のような拡張されたマクロブロック(拡張マクロブロック)にも適用することができる。
図32において、上段には、左から、32×32画素、32×16画素、16×32画素、および16×16画素のブロック(パーティション)に分割された32×32画素で構成されるマクロブロックが順に示されている。また、中段には、左から、16×16画素、16×8画素、8×16画素、および8×8画素のブロックに分割された16×16画素で構成されるブロックが順に示されている。さらに、下段には、左から、8×8画素、8×4画素、4×8画素、および4×4画素のブロックに分割された8×8画素のブロックが順に示されている。
すなわち、32×32画素のマクロブロックは、上段に示される32×32画素、32×16画素、16×32画素、および16×16画素のブロックでの処理が可能である。
上段の右側に示される16×16画素のブロックは、H.264/AVC方式と同様に、中段に示される16×16画素、16×8画素、8×16画素、および8×8画素のブロックでの処理が可能である。
中段の右側に示される8×8画素のブロックは、H.264/AVC方式と同様に、下段に示される8×8画素、8×4画素、4×8画素、および4×4画素のブロックでの処理が可能である。
これらのブロックは、以下の3階層に分類することができる。すなわち、図32の上段に示される32×32画素、32×16画素、および16×32画素のブロックを第1階層と称する。上段の右側に示される16×16画素のブロック、並びに、中段に示される16×16画素、16×8画素、および8×16画素のブロックを、第2階層と称する。中段の右側に示される8×8画素のブロック、並びに、下段に示される8×8画素、8×4画素、4×8画素、および4×4画素のブロックを、第3階層と称する。
このような階層構造を採用することにより、16×16画素のブロック以下に関しては、H.264/AVC方式と互換性を保ちながら、そのスーパーセットとして、より大きなブロックを定義することができる。
例えば、復号装置1および符号化装置101が、階層毎に予測画像を生成するようにしてもよい。また、例えば、復号装置1および符号化装置101が、第2の階層よりブロックサイズが大きい階層である第1階層において生成した予測画像を、第2階層に対しても利用するようにしてもよい。
第1階層や第2階層のように、比較的大きなブロックサイズを用いて符号化が行われるマクロブロックは、比較的高周波成分を含んでいない。これに対して、第3階層のように、比較的小さなブロックサイズを用いて符号化が行われるマクロブロックは、比較的、高周波成分を含んでいると考えられる。
そこで、ブロックサイズの異なる各階層に応じて、別々に予測画像を生成することにより、画像の持つ、局所的性質に適した符号化性能向上を実現させることが可能である。