(本発明の基礎となった知見)
非特許文献2の符号化方法および復号方法では、対象ブロックに対しては1つのテンプレートだけが予め定められてあり、そのテンプレートしか用いることができない。したがって、テンプレートの大きさおよび形が対象ブロックに対して不適切であれば、動き探索の精度が低下してしまい、符号化効率が改善されない。
このような問題を解決するために、本発明の一態様に係る符号化方法は、動画像をブロックごとに符号化する符号化方法であって、対象ブロックに対して予め定義された、前記対象ブロックの空間的に近隣にある互いに異なる領域を示すN個(Nは2以上の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択し、選択された前記近隣テンプレートによって示される領域における再構成画像と、前記対象ブロックを含むピクチャと異なる参照ピクチャとを用いて動きベクトルを導出し、導出された前記動きベクトルを用いて前記対象ブロックに対して動き補償を行うことによって、前記対象ブロックを符号化し、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示すDMVDパラメータを、符号化された前記対象ブロックを含むビットストリームに書き込む。
これにより、対象ブロックに対して予め定義されたN個の近隣テンプレートの中から1つの近隣テンプレートが選択されるため、対象ブロックに対して適切な近隣テンプレートを選択することができ、動き探索の精度を向上させることができる。その結果、符号化効率の向上を図ることができる。さらに、DMVDパラメータがビットストリームに書き込まれるため、デコーダに対して、対象ブロックの復号のための動きベクトルの導出、つまり動き探索を、必要に応じて実行させることができる。したがって、デコーダは、符号化効率が向上されたビットストリームを適切に復号することができる。
また、前記符号化方法は、さらに、対象ブロックに対して予め定義された前記N個の近隣テンプレートを識別し、前記近隣テンプレートの選択では、識別された前記N個の近隣テンプレートの中から前記近隣テンプレートを選択し、前記DMVDパラメータの書き込みでは、前記DMVD機能を有効にすることを示す前記DMVDパラメータとして、選択された前記近隣テンプレートを識別するための識別パラメータを書き込んでもよい。
これにより、識別パラメータがビットストリームに書き込まれるため、対象ブロックの符号化に用いられた近隣テンプレートをデコーダでも容易に選択して用いることができる。したがって、デコーダは対象ブロックを適切に復号することができる。
また、前記符号化方法は、さらに、それぞれN個未満の複数の近隣テンプレートからなる複数のサブセットのうちの何れのサブゼットを用いるか、何れのサブセットも用いないかを決定し、前記サブセットの決定結果を値として示す拡張パラメータを前記ビットストリームに書き込み、前記近隣テンプレートの選択では、(a)前記拡張パラメータが予め定められた値を示す場合には、前記複数のサブセットの中から、前記拡張パラメータに応じたサブセットを特定し、前記N個の近隣テンプレートのうちの、特定された前記サブセットに含まれるM個(Mは2以上N未満の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択し、(b)前記拡張パラメータが予め定められた値を示さない場合には、前記N個の近隣テンプレートの中から、1つの近隣テンプレートを選択してもよい。
これにより、サブセットが用いられる場合には、N個の近隣テンプレートよりも少ないM個の近隣テンプレートの中から1つの近隣テンプレートが選択されるため、つまり、選択される近隣テンプレートの候補となる複数の近隣テンプレートの数が減るため、近隣テンプレートの選択の処理負担を軽減することができる。
また、前記符号化方法は、さらに、近隣テンプレートを適応的に変更するか否かを決定し、前記DMVDパラメータの書き込みでは、前記変更するか否かの決定結果を値として示すパラメータを、前記DMVDパラメータとして書き込み、前記近隣テンプレートの選択では、前記DMVDパラメータが予め定められた値を示す場合には、前記対象ブロックの符号化時において、当該対象ブロックの周辺に生成されている再構成画像の領域に応じて、前記N個の近隣テンプレートの中から1つの近隣テンプレートを選択してもよい。
これにより、符号化時の状況に応じて近隣テンプレートを適応的に選択すること、つまり、近隣テンプレートの大きさおよびサイズなどを適応的に変更することができ、符号化効率を向上することができる。
また、前記近隣テンプレートの選択では、前記N個の近隣テンプレートのうちの候補となる複数の近隣テンプレートのそれぞれに対して優先度を決定し、前記候補となる複数の近隣テンプレートのうちの、前記対象ブロックの符号化時において、当該近隣テンプレートによって示される領域内の全ての再構成画像が生成されている少なくとも1つの近隣テンプレートの中から、最も優先度の高い近隣テンプレートを選択してもよい。
これにより、候補となる複数の近隣テンプレートから1つの近隣テンプレートを適切に選択することができる。また、このような近隣テンプレートの選択の手法を、予め定義された基準として、デコーダ側にも実行させることによって、デコーダ側でも、エンコーダで選択された近隣テンプレートを適切に選択することができる。
また、前記近隣テンプレートの選択では、前記N個の近隣テンプレートのうちの候補となる複数の近隣テンプレートのそれぞれに対して、当該近隣テンプレートに対して導出される動きベクトルによって示される画像と当該近隣テンプレートの画像との間の歪みの程度を歪み値として算出し、前記候補となる複数の近隣テンプレートの中から、最も歪み値の小さい近隣テンプレートを選択してもよい。
これにより、候補となる複数の近隣テンプレートから1つの近隣テンプレートを適切に選択することができる。また、このような近隣テンプレートの選択の手法を、予め定義された基準として、デコーダ側にも実行させることによって、デコーダ側でも、エンコーダで選択された近隣テンプレートを適切に選択することができる。
また、前記DMVDパラメータの書き込みでは、予め定められた閾値よりも大きいか否かによって、前記DMVD機能を有効にするか否かを示す値を、前記DMVDパラメータとして書き込んでもよい。
これにより、DMVDパラメータを、例えば、候補リストのサイズなどのように、DMVD機能以外の他の機能に用いられる値を示すパラメータと兼用させることができる。したがって、ビットストリームに含まれる他のパラメータをDMVDパラメータとして用いることができるため、符号化効率をさらに向上することができる。
また、本発明の一態様に係る復号方法は、符号化された動画像を示すビットストリームをブロックごとに復号する復号方法であって、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示すDMVDパラメータを、前記ビットストリームから読み解き、対象ブロックに対して予め定義された、前記対象ブロックの空間的に近隣にある互いに異なる領域を示すN個(Nは2以上の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択することを、読み解かれた前記DMVDパラメータに基づいて実行し、選択された前記近隣テンプレートによって示される領域における再構成画像と、前記対象ブロックを含むピクチャと異なる参照ピクチャとを用いて動きベクトルを導出し、導出された前記動きベクトルを用いて前記対象ブロックに対して動き補償を行うことによって、前記対象ブロックを復号してもよい。
これにより、DMVDパラメータが、DMVD機能を有効にすることを示していれば、対象ブロックに対して予め定義されたN個の近隣テンプレートの中から1つの近隣テンプレートが選択される。したがって、対象ブロックに対して適切な近隣テンプレートを選択することができ、符号化効率の向上が図られたビットストリームを適切に復号することができる。
また、前記復号方法は、さらに、対象ブロックに対して予め定義された前記N個の近隣テンプレートを識別し、前記DMVDパラメータの読み解きでは、前記DMVD機能を有効にすることを示す前記DMVDパラメータとして、選択されるべき近隣テンプレートを識別するための識別パラメータを読み解き、前記近隣テンプレートの選択では、識別された前記N個の近隣テンプレートの中から、前記識別パラメータに応じた前記近隣テンプレートを選択してもよい。
これにより、識別パラメータがビットストリームから読み解かれるため、対象ブロックの符号化に用いられた近隣テンプレートを容易に選択して用いることができる。したがって、対象ブロックを適切に復号することができる。
また、前記復号方法は、さらに、それぞれN個未満の複数の近隣テンプレートからなる複数のサブセットのうちの何れのサブゼットを用いるか、何れのサブセットも用いないかを、値として示す拡張パラメータを、前記ビットストリームから読み解き、前記近隣テンプレートの選択では、(a)前記拡張パラメータが予め定められた値を示す場合には、前記複数のサブセットの中から、前記拡張パラメータに応じたサブセットを特定し、前記N個の近隣テンプレートのうちの、特定された前記サブセットに含まれるM個(Mは2以上N未満の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択し、(b)前記拡張パラメータが予め定められた値を示さない場合には、前記N個の近隣テンプレートの中から、1つの近隣テンプレートを選択してもよい。
これにより、サブセットが用いられる場合には、N個の近隣テンプレートよりも少ないM個の近隣テンプレートの中から1つの近隣テンプレートが選択されるため、つまり、選択される近隣テンプレートの候補となる複数の近隣テンプレートの数が減るため、近隣テンプレートの選択の処理負担を軽減することができる。
また、前記DMVDパラメータの読み解きでは、近隣テンプレートを適応的に変更するか否かを値として示すパラメータを、前記DMVDパラメータとして読み解き、前記近隣テンプレートの選択では、前記DMVDパラメータが予め定められた値を示す場合には、前記対象ブロックの復号時において、当該対象ブロックの周辺に生成されている再構成画像の領域に応じて、前記N個の近隣テンプレートの中から1つの近隣テンプレートを選択してもよい。
これにより、復号時の状況に応じて近隣テンプレートを適応的に選択すること、つまり、近隣テンプレートの大きさおよびサイズなどを適応的に変更することができ、符号化効率の向上が図られたビットストリームを適切に復号することができる。
また、前記近隣テンプレートの選択では、前記N個の近隣テンプレートのうちの候補となる複数の近隣テンプレートのそれぞれに対して優先度を決定し、前記候補となる複数の近隣テンプレートのうちの、前記対象ブロックの復号時において、当該近隣テンプレートによって示される領域内の全ての再構成画像が生成されている少なくとも1つの近隣テンプレートの中から、最も優先度の高い近隣テンプレートを選択してもよい。
これにより、候補となる複数の近隣テンプレートから1つの近隣テンプレートを適切に選択することができる。また、このような近隣テンプレートの選択の手法が、予め定義された基準として、エンコーダ側でも実行されている場合には、エンコーダで選択された近隣テンプレートを適切に選択することができる。
また、前記近隣テンプレートの選択では、前記N個の近隣テンプレートのうちの候補となる複数の近隣テンプレートのそれぞれに対して、当該近隣テンプレートに対して導出される動きベクトルによって示される画像と当該近隣テンプレートの画像との間の歪みの程度を歪み値として算出し、前記候補となる複数の近隣テンプレートの中から、最も歪み値の小さい近隣テンプレートを選択してもよい。
これにより、候補となる複数の近隣テンプレートから1つの近隣テンプレートを適切に選択することができる。また、このような近隣テンプレートの選択の手法が、予め定義された基準として、エンコーダ側にも実行されている場合には、エンコーダで選択された近隣テンプレートを適切に選択することができる。
また、前記DMVDパラメータの読み解きでは、予め定められた閾値よりも大きいか否かによって、前記DMVD機能を有効にするか否かを示す値を、前記DMVDパラメータとして読み解いてもよい。
これにより、DMVDパラメータを、例えば、候補リストのサイズなどのように、DMVD機能以外の他の機能に用いられる値を示すパラメータと兼用させることができる。したがって、ビットストリームに含まれる他のパラメータをDMVDパラメータとして用いることができるため、符号化効率のさらなる向上が図られたビットストリームを適切に復号することができる。
なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
以下、実施の形態について、図面を参照しながら具体的に説明する。
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
(実施の形態1)
図1は、本実施の形態における符号化装置の例示的な構造を示すブロック図である。
符号化装置100は、ブロック単位で入力映像(つまり動画像)を符号化することによって、ビットストリームBsを生成する。図1に示されるように、符号化装置100は、変換部101、量子化部102、逆量子化部103、逆変換部104、ブロックメモリ105、ピクチャメモリ(フレームメモリともいう)106、イントラ予測部107、インター予測部108、エントロピー符号化部109、減算器110、加算器111、制御部130、動きベクトル予測部131、および書込部136を備えてもよい。
減算器110は、入力映像に含まれる符号化対象のブロック(以下、対象ブロックという)から、その対象ブロックに対応する予測画像を減算することによって、複数の減算値からなる差分画像を生成し、その差分画像を変換部101に出力する。なお、予測画像は、イントラ予測部107またはインター予測部108によって生成された画像である。変換部101は、その差分画像を複数の周波数係数に変換し、得られた複数の周波数係数を量子化部102に出力する。量子化部102は、入力された複数の周波数係数を量子化し、その量子化によって得られた複数の量子化値を逆量子化部103およびエントロピー符号化部109に出力する。エントロピー符号化部109は、量子化部102から出力された複数の量子化値をエントロピー符号化し、エントロピー符号化された複数の量子化値を含むビットストリームBsを出力する。つまり、このビットストリームBsは、符号化された対象ブロックを含む。
逆量子化部103は、量子化部102から出力された複数の量子化値を逆量子化し、その逆量子化によって得られた複数の周波数係数を逆変換部104に出力する。逆変換部104は、複数の周波数係数を逆周波数変換することによって、それらの周波数係数を、複数の画素値(サンプル値ともいう)からなる差分画像に変換し、その差分画像を加算器111に出力する。加算器111は、逆変換部104から出力された差分画像を、インター予測部108またはイントラ予測部107から出力された予測画像に加算することによって、再構成画像を生成する。そして、加算器111は、生成された再構成画像を、ブロックメモリ105またはピクチャメモリ106に、さらなる予測のため出力する。
イントラ予測部107は、ブロックメモリ105に格納されている少なくとも1つの再構成画像を用いてイントラ予測を行い、そのイントラ予測によって対象ブロックに対する予測画像を生成する。インター予測部108は、動きベクトル予測部131によって導出または選択された動きベクトルに基づいて動き補償を行う。つまり、インター予測部108は、ピクチャメモリ106に格納されている少なくとも1つの再構成画像からなる参照ピクチャ内から、その動きベクトルに基づいて、例えば対象ブロック(または、後述の近隣テンプレート)の画像に最も類似した画像を取得する。これにより、予測画像(予測ブロックまたは予測サンプルともいう)が生成される。なお、参照ピクチャは、対象ブロックを含むピクチャとは異なるピクチャであって、例えば、参照インデックスによって指定される。
制御部130は、複数の定義された近隣テンプレートおよび動きベクトル予測(MVP)を導出するための複数のパラメータを受け取る。例えば、これらの複数のパラメータはそれぞれ、参照インデックス、候補インデックス、または複数の近隣テンプレートなどを示すパラメータである。本実施の形態では、上記参照ピクチャの種類に基づいて、制御部130は、候補リスト(候補セットともいう)に含めるための動きベクトル予測候補を生成するために、複数の予め定義された近隣テンプレートを決定または識別する。かつ/または、制御部130は、それらの近隣テンプレート(具体的には、複数の予め定義された近隣テンプレートに基づく動きベクトル)を候補セットに含めるか否かを決定する。制御部130は、その後、その決定の結果を示す信号133を、動きベクトル予測部131に出力する。
動きベクトル予測部131は、動きベクトルおよび参照ピクチャを有する対象ブロックに対する(動きベクトル予測候補の)候補リストに用いられる少なくとも1つの動きベクトル予測候補を導出する。さらに、動きベクトル予測部131は、動き探索を行うことによって、動きベクトルを導出する。動きベクトル予測部131はまた、当該候補リストに含まれる少なくとも1つの動きベクトル予測候補から、動き探索によって導出された動きベクトルに基づいて、1つの動きベクトル予測候補を動きベクトル予測として導出する。その後、動きベクトル予測部131は、制御部130からの信号133に基づいて作成される候補リストから、導出された動きベクトル予測を特定するための候補インデックスを信号137に含めて書込部136に出力する。さらに、動きベクトル予測部131は、動き探索によって導出された動きベクトルと、導出された動きベクトル予測との差分をデルタ動きベクトルとして算出し、そのデルタ動きベクトルおよび参照ピクチャの参照インデックスなどを上述の信号137に含めて書込部136に出力する。
書込部136は、制御部130によって決定または識別された、対象ブロックに対して予め定義された複数の近隣テンプレートを示すパラメータ138を制御部130から取得し、そのパラメータ138をビットストリームBsに書き込む。さらに、書込部136は、信号137に含まれる候補インデックス、デルタ動きベクトルおよび参照インデックスなどをビットストリームBsに書き込む。
ここで、本実施の形態における符号化装置100は、デコーダサイド・モーションエスティメーション(DSME)技術に関する装置であって、言い換えれば、デコーダ側において動きベクトルを導出する機能(DMVD:Decoder side Motion Vector Derivation)に対応する装置である。したがって、符号化装置100の動きベクトル予測部131は、DMVDを実現するために、対象ブロックの空間的に近隣にある領域である近隣テンプレート内の再構成画像に基づく動き探索(以下、近隣テンプレートに基づく動き探索という)を行う。
つまり、本実施の形態における制御部130は、入力映像に含まれる対象ブロックに基づく動き探索(以下、入力画像に基づく動き探索という)を行うか、近隣テンプレートに基づく動き探索を行うかを決定する。入力画像に基づく動き探索は、対象ブロックの画像に類似するブロックを、対象ブロックを含むピクチャと異なる参照ピクチャの中から探索する処理である。また、近隣テンプレートに基づく動き探索は、近隣テンプレート内の再構成画像に類似するブロックを、対象ブロックを含むピクチャと異なる参照ピクチャの中から探索する処理である。
制御部130は、近隣テンプレートに基づく動き探索を行うと決定する際には、上述のように、対象ブロックに対して予め定義された複数の近隣テンプレートを決定または識別し、それらの近隣テンプレートを候補リストに含めると決定する。さらに、その近隣テンプレートに対する動き探索によって導出される動きベクトルを候補セットに含めると決定する。
動きベクトル予測部131は、入力画像に基づく動き探索を行うと決定されると、その入力画像に基づく動き探索を行い、その動き探索によって得られる動きベクトルをインター予測部108に出力する。一方、動きベクトル予測部131は、近隣テンプレートに基づく動き探索を行うと決定されると、信号133によって示される複数の予め定義された近隣テンプレートを含む候補リストを生成する。なお、この複数の予め定義された近隣テンプレートはN個(Nは2以上の整数)である。そして、動きベクトル予測部131は、そのN個の近隣テンプレートの中から、1つの近隣テンプレートを選択する。さらに、動きベクトル予測部131は、選択された近隣テンプレートによって示される領域における再構成画像と、参照ピクチャとを用いて動きベクトルを導出する。つまり、動きベクトル予測部131は、その近隣テンプレートに基づく動き探索を行う。そして、動きベクトル予測部131は、その動き探索によって導出される動きベクトルをインター予測部108に出力する。また、動きベクトル予測部131は、選択されたテンプレートを識別するための識別パラメータを候補インデックスとして信号137に含めて書込部136に出力する。
図2〜図7のそれぞれは、対象ブロックに対して想定されるいくつかの近隣テンプレートの例を示す図である。図示された近隣テンプレートは全て、デコーダ側の動きベクトル導出(DMVD)処理の機能性に対応できるため、これらは本実施の形態においてDMVDテンプレートとして表される。しかしながら、DMVDテンプレートは、図2〜図7に図示された例に限定されない。
例えば、図2の(a)〜(e)に示すように、対象ブロックの上に隣接する矩形の領域(図2において、斜め斜線のハッチングで示される領域)が近隣テンプレートとして識別されてもよい。ここで、図2の(c)〜(e)に示すように、選択される近隣テンプレートが対象ブロックの上に位置する場合、選択される近隣テンプレートの幅は対象ブロックの幅以上であってもよい。また、図2の(e)に示すように、選択される近隣テンプレートの高さが対象ブロックの高さよりも小さい場合、選択される近隣テンプレートの面積は対象ブロックの面積以上であってもよい。
また、図3の(a)〜(e)に示すように、対象ブロックの左に隣接する矩形の領域(図3において、斜め斜線のハッチングで示される領域)が近隣テンプレートとして識別されてもよい。ここで、図3の(c)〜(e)に示すように、選択される近隣テンプレートが対象ブロックの左側に位置する場合、選択される近隣テンプレートの高さは対象ブロックの高さ以上であってもよい。また、図3の(e)に示すように、選択される近隣テンプレートの幅が対象ブロックの幅よりも小さい場合、選択される近隣テンプレートの面積は対象ブロックの面積以上であってもよい。
さらに、図4の(a)および(b)と図5の(c)および(d)に示すように、対象ブロックの上および左に隣接する逆L字形の領域(図4および図5において、斜め斜線のハッチングで示される領域)が近隣テンプレートとして識別されてもよい。
また、例えば、図6の(a)に示すように、幅3個×高さ2個のブロックからなるブロック群のうち、右下端のブロックが対象ブロックである場合、そのブロック群のうちの対象ブロックを除く5個のブロックを、近隣テンプレートに利用可能なブロックとして扱ってもよい。したがって、5個のブロックのうちの少なくとも1つのブロックの組み合わせからなる領域が、その対象ブロックの近隣テンプレートまたはDMVDテンプレートとして識別される。この組み合わせは複数あるため、複数の予め定義された近隣テンプレートが識別される。そして、図6の(b)に示すように、例えば対象ブロックの左にある2つのブロックからなる領域が近隣テンプレートとして選択される。
また、例えば、図7の(a)または(b)に示すように、対象ブロックの左または上に隣接する、互いに大きさの異なる2つの正方形の領域が、その対象ブロックに対して予め定義された近隣テンプレートとして識別されてもよい。そして、それらの近隣テンプレートから、何れか1つの近隣テンプレートが選択される。このように、選択される近隣テンプレートは、対象ブロックに隣接する利用可能な近隣ブロックである。なお、利用可能な近隣ブロックとは、対象ブロックの符号化時において、近隣ブロックに含まれる全ての再構成画像が生成されているブロックである。
このような本実施の形態における符号化装置100は、動画像をブロックごとに符号化する符号化装置であって、選択部と、導出部と、符号化部と、書込部136とを備える。
選択部は、動きベクトル予測部131の一部の機能によって実現される。つまり、選択部は、対象ブロックに対して予め定義された、その対象ブロックの空間的に近隣にある互いに異なる領域を示すN個(Nは2以上の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択する。導出部は、動きベクトル予測部131の一部の機能によって実現される。つまり、導出部は、選択された近隣テンプレートによって示される領域における再構成画像と、その対象ブロックを含むピクチャと異なる参照ピクチャとを用いて動きベクトルを導出する。符号化部は、インター予測部108と、変換部101、量子化部102、逆量子化部103、逆変換部104、ピクチャメモリ106、エントロピー符号化部109、減算器110、および加算器111のうちの少なくとも1つとからなる。つまり、符号化部は、導出された前記動きベクトルを用いて対象ブロックに対して動き補償を行うことによって、その対象ブロックを符号化する。また、書込部136は、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示すDMVDパラメータを、符号化された対象ブロックを含むビットストリームBsに書き込む。例えば、書込部136は、選択された近隣テンプレートを識別するための識別パラメータ(例えば候補インデックス)をDMVDパラメータとしてビットストリームBsに書き込む。
これにより、対象ブロックに対して予め定義されたN個の近隣テンプレートの中から1つの近隣テンプレートが選択されるため、対象ブロックに対して適切な近隣テンプレートを選択することができ、動き探索の精度を向上させることができる。その結果、符号化効率の向上を図ることができる。さらに、DMVDパラメータがビットストリームBsに書き込まれるため、デコーダに対して、対象ブロックの復号のための動きベクトルの導出、つまり動き探索を、必要に応じて実行させることができる。したがって、デコーダは、符号化効率が向上されたビットストリームBsを適切に復号することができる。
図8〜図10を参照し、本実施の形態による、近隣テンプレートを用いた動き探索処理を実行する符号化方法を説明する。
図8は、本実施の形態における符号化処理の一例を示すフローチャートである。
符号化装置100の制御部130は、最初のステップS1001として、対象ブロックに対する、複数の予め定義された近隣テンプレートを識別する。次のステップS1002において、動きベクトル予測部131は、複数の予め定義された近隣テンプレートの中から、予め定義された基準に基づいて1つの近隣テンプレートを選択する。次にステップS1003において、動きベクトル予測部131は、動き探索処理の間に、選択された近隣テンプレートを用いて動きベクトルを導出する。ステップS1004において、インター予測部108は、導出された動きベクトルを用いて動き補償を実行する。この動き補償によって、対象ブロックが符号化される。最後にステップS1008において、書込部136は、選択された近隣テンプレートを特定する1以上の識別パラメータを、ビットストリームBsに書き込む。
なお、ステップS1003において、対象ブロックが、BピクチャまたはBスライスに含まれるブロックとして2つの参照ピクチャリストに基づいて符号化される場合には、選択された近隣テンプレートから複数の動きベクトルが導出される。また、対象ブロックが、BピクチャおよびBスライスの何れにも含まれていない場合においても、選択された近隣テンプレートから動きベクトルの候補として複数の動きベクトルが導出されてもよい。
このように、図8のフローチャートによって示される符号化処理では、識別パラメータがビットストリームBsに書き込まれるため、対象ブロックの符号化に用いられた近隣テンプレートをデコーダでも容易に選択して用いることができる。したがって、デコーダは対象ブロックを適切に復号することができる。
図9は、本実施の形態における符号化処理の他の例を示すフローチャートである。
符号化装置100の制御部130は、最初のステップS1101として、動き探索処理に拡張テンプレート(いわゆる後述のサブセット)を用いるか否かを決定する。書込部136は、次のステップS1102において、その決定の結果を表す拡張パラメータをビットストリームBsのヘッダに書き込む。次のステップS1103において、動きベクトル予測部131は、その拡張パラメータが予め定義された値を有するか否かを判定する。拡張パラメータが予め定義された値を有する場合(ステップS1103のYes)、動きベクトル予測部131は、ステップS1104において、複数の予め定義された近隣テンプレートから、拡張パラメータに基づいて、候補テンプレートのサブセットを識別する。なお、複数の予め定義された近隣テンプレートがN個(Nは2以上の整数)であれば、サブセットは、そのN個の近隣テンプレートのうちのM個(Mは2以上N未満の整数)の近隣テンプレートをそれぞれ候補テンプレートとして含む。
その後、ステップS1105において、動きベクトル予測部131は、識別されたサブセットに含まれる複数の候補テンプレートの中から、予め定義された基準に基づいて、1つの候補テンプレート、つまり近隣テンプレートを選択する。この近隣テンプレートの選択は、例えば、後述の図11または図12に示す選択処理にしたがって行われる。
一方、拡張パラメータが予め定義された値を有しない場合(ステップS1103のNo)、ステップS1106において、動きベクトル予測部131は、予め定義された基準に基づいて、複数(例えばN個)の予め定義された近隣テンプレートから、1つの近隣テンプレートを直接選択する。
次にステップS1107において、動きベクトル予測部131は、動き探索処理の間に、選択された近隣テンプレートを用いて、対象ブロックに対する動きベクトルを導出する。その後、ステップS1108において、インター予測部108は、導出された動きベクトルを用いて動き補償処理を実行する。最後にステップS1109において、書込部136は、選択された近隣テンプレートを特定する1以上の識別パラメータを、ビットストリームBsに書き込む。
このように、図9のフローチャートによって示される符号化処理では、符号化装置100は、さらに、それぞれN個未満の複数の近隣テンプレートからなる複数のサブセットのうちの何れのサブゼットを用いるか、何れのサブセットも用いないかを決定する。そして、符号化装置100は、サブセットの決定結果を値として示す拡張パラメータをビットストリームBsに書き込む。そして、符号化装置100は、近隣テンプレートの選択では、拡張パラメータが予め定められた値を示す場合には、複数のサブセットの中から、拡張パラメータに応じたサブセットを特定する。さらに、符号化装置100は、そのN個の近隣テンプレートのうちの、特定されたサブセットに含まれるM個(Mは2以上N未満の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択する。一方、符号化装置100は、拡張パラメータが予め定められた値を示さない場合には、N個の近隣テンプレートの中から、1つの近隣テンプレートを選択する。
これにより、サブセットが用いられる場合には、N個の近隣テンプレートよりも少ないM個の近隣テンプレートの中から1つの近隣テンプレートが選択されるため、つまり、選択される近隣テンプレートの候補となる複数の近隣テンプレートの数が減るため、近隣テンプレートの選択の処理負担を軽減することができる。
図10は、本実施の形態における符号化処理のさらに他の例を示すフローチャートである。符号化装置100の制御部130は、最初のステップS1201として、デコーダにおける動き探索処理に適応的テンプレート形を用いるか否かを決定する。つまり、制御部130は、近隣テンプレートを適応的に変更するか否かを決定する。書込部136は、次のステップS1202において、その決定の結果を示すパラメータを(上述のDMVDパラメータとして)ビットストリームBsのヘッダに書き込む。動きベクトル予測部131は、次のステップS1203において、当該パラメータが予め定義された値を有するか否かを判定する。当該パラメータが予め定義された値を有する場合(ステップS1203のYes)、最後にステップS1204において、動きベクトル予測部131は、適応的テンプレート形を用いて動き探索処理を実行する。適応的テンプレート形は、近隣テンプレートの位置、大きさおよび形のうちの少なくとも一方を適応的に変えることである。
つまり、動きベクトル予測部131は、対象ブロックの符号化時において、その対象ブロックの周辺に生成されている再構成画像の領域に応じて、N個の近隣テンプレートの中から1つの近隣テンプレートを選択する。より具体的には、動きベクトル予測部131は、N個の近隣テンプレートのうちの、対象ブロックの符号化時において、その近隣テンプレートによって示される領域内の全ての再構成画像が生成されている少なくとも1つの近隣テンプレートの中から、1つの近隣テンプレートを選択する。
これにより、符号化時の状況に応じて近隣テンプレートを適応的に選択すること、つまり、近隣テンプレートの位置、大きさおよびサイズなどを適応的に変更することができ、符号化効率を向上することができる。
図11は、予め定義された基準に基づいて、複数の近隣テンプレートから1つの近隣テンプレートを選択する選択処理の一例を示すフローチャートである。
動きベクトル予測部131は、最初のステップS2201において、候補となる複数の近隣テンプレートのそれぞれを、予め定められた順序に配列する、つまり並べる。例えば、動きベクトル予測部131は、最も大きなものから最も小さなものの順に複数の近隣テンプレートを配列する。つまり、候補となる複数の近隣テンプレートのそれぞれに対しては、その近隣テンプレートのサイズが大きいほど、高い優先度が決定される。このとき、候補となる複数の近隣テンプレートのそれぞれは、先頭から後に向かって近隣テンプレートのサイズが小さくなるように並べられ、その並べられた順にしたがって、複数の近隣テンプレートのそれぞれの優先度が決定される。
最後にステップS2202において、動きベクトル予測部131は、その予め定義された順序に配列されている複数の近隣テンプレートから、所定の基準を満たす先頭の近隣テンプレートを選択する。この所定の基準は、再構成されている画素(画像サンプル)で近隣テンプレートの全体が満たされるという基準である。複数の近隣テンプレートの中には、対象ブロックの符号化順序が原因で、動き探索に用いられるために必要とされる時に、全ての画像サンプルが再構成されていないものもある。よって、これらの不完全な近隣テンプレートは、選択処理において選択されない。
このように、図11のフローチャートによって示される選択処理では、動きベクトル予測部131は、N個の近隣テンプレートのうちの候補となる複数の近隣テンプレートのそれぞれに対して優先度を決定する。さらに、動きベクトル予測部131は、候補となる複数の近隣テンプレートのうちの、対象ブロックの符号化時において、その近隣テンプレートによって示される領域内の全ての再構成画像が生成されている少なくとも1つの近隣テンプレートの中から、最も優先度の高い近隣テンプレートを選択する。
これにより、候補となる複数の近隣テンプレートから1つの近隣テンプレートを適切に選択することができる。また、このような近隣テンプレートの選択の手法を、予め定義された基準として、デコーダ側にも実行させることによって、デコーダ側でも、エンコーダで選択された近隣テンプレートを適切に選択することができる。
図12は、予め定義された基準に基づいて、複数の近隣テンプレートから1つの近隣テンプレートを選択する選択処理の他の例を示すフローチャートである。
動きベクトル予測部131は、最初のステップS2301において、候補となる複数の近隣テンプレートのそれぞれに対して動き探索を実行することで、複数の近隣テンプレートのそれぞれに対する動きベクトルを導出する。次のステップS2302において、インター予測部134は、近隣テンプレートごとに、導出された動きベクトルを用いてその近隣テンプレートに対する動き補償処理を実行する。ステップS2303において、動きベクトル予測部131は、近隣テンプレートごとに、その近隣テンプレートに対する動き補償処理に基づいて歪み値を計算する。この歪み値は、動き補償処理によって生成される画像と、近隣テンプレートの元の画像との差分を示す値である。最後にステップS2304において、動きベクトル予測部131は、候補となる複数の近隣テンプレートのうち歪み値が最も低い近隣テンプレートを選択する。
このように、図11のフローチャートによって示される選択処理では、動きベクトル予測部131は、N個の近隣テンプレートのうちの候補となる複数の近隣テンプレートのそれぞれに対して歪み値を算出する。その歪み値は、近隣テンプレートに対して導出される動きベクトルによって示される画像と当該近隣テンプレートの画像との間の歪みの程度を示す値である。そして、動きベクトル予測部131は、候補となる複数の近隣テンプレートの中から、最も歪み値の小さい近隣テンプレートを選択する。
これにより、図10に示す選択処理と同様、候補となる複数の近隣テンプレートから1つの近隣テンプレートを適切に選択することができる。また、このような近隣テンプレートの選択の手法を、予め定義された基準として、デコーダ側にも実行させることによって、デコーダ側でも、エンコーダで選択された近隣テンプレートを適切に選択することができる。
図13は、DMVD有効化フラグの位置の例を示す図である。DMVD有効化フラグがビットストリームにない場合、本実施の形態の残りの処理は、独立して実行される。なお、DMVD有効化フラグは、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示すDMVDパラメータである。
例えば、書込部136は、図13の(i)に示すように、ビデオパラメータセット(VPS)にDMVD有効化フラグをvps_DMVD_flagとして書き込んでもよい。このvps_DMVD_flagがDMVD機能の有効を示す場合、ビットストリームBsに含まれる画像の全体に対して、DMVDを実現するための処理、つまり近隣テンプレートに基づく動き探索が行われる。また、書込部136は、図13の(ii)に示すように、シーケンスパラメータセット(SPS)にDMVD有効化フラグをsps_DMVD_flagとして書き込んでもよい。このsps_DMVD_flagがDMVD機能の有効を示す場合、そのSPSに対応するシーケンスに含まれる画像の全体に対して、DMVDを実現するための処理が行われる。また、書込部136は、図13の(iii)に示すように、ピクチャパラメータセット(PPS)にDMVD有効化フラグをpps_DMVD_flagとして書き込んでもよい。このpps_DMVD_flagがDMVD機能の有効を示す場合、そのPPSに対応するピクチャに含まれる画像の全体に対して、DMVDを実現するための処理が行われる。
また、書込部136は、図13の(iv)に示すように、スライスヘッダにDMVD有効化フラグをslice_DMVD_flagとして書き込んでもよい。このslice_DMVD_flagがDMVD機能の有効を示す場合、そのスライスヘッダに対応するスライスに含まれる画像の全体に対して、DMVDを実現するための処理が行われる。また、書込部136は、図13の(v)に示すように、符号化単位にDMVD有効化フラグをblock_DMVD_flagとして書き込んでもよい。このblock_DMVD_flagがDMVD機能の有効を示す場合、その符号化単位に含まれる画像の全体に対して、DMVDを実現するための処理が行われる。
また、書込部136は、候補リストのサイズ(つまり、候補リストに含まれる候補の数)を示すパラメータをDMVDパラメータとしてビットストリームBsに書き込んでもよい。この場合、候補リストに含まれる候補の数が閾値よりも大きい場合には、その候補リストに近隣テンプレートの候補が含まれ、候補の数が閾値以下の場合には、その候補リストに近隣テンプレートの候補は含まれていない。したがって、候補リストのサイズを示すパラメータは、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示す。つまり、書込部136は、予め定められた閾値よりも大きいか否かによって、DMVD機能を有効にするか否かを示す値を、DMVDパラメータとしてビットストリームBsに書き込んでもよい。これにより、DMVDパラメータを、例えば、候補リストのサイズなどのように、DMVD機能以外の他の機能に用いられる値を示すパラメータと兼用させることができる。したがって、ビットストリームBsに含まれる他のパラメータをDMVDパラメータとして用いることができるため、符号化効率をさらに向上することができる。
図14は、複数の予め定義された近隣テンプレートから1つの近隣テンプレートを選択することに関するパラメータの位置の例を示す図である。なお、このパラメータは、選択された近隣テンプレートを識別するための識別パラメータである。
例えば、書込部136は、図14の(i)に示すように、符号化単位にパラメータを書き込んでもよい。このパラメータは、例えばブロック(対象ブロック)の幅および高さなどを示す。また、書込部136は、図14の(ii)に示すように、スライスヘッダにパラメータを書き込んでもよい。このパラメータは、例えばスライスのタイプ(slice_type)または候補リストに含まれる動きベクトル予測候補の数の最大値(max_num_cand)などを示す。
または、書込部136は、図14の(iii)に示すように、ピクチャパラメータセットにパラメータを書き込んでもよい。このパラメータは、例えばピクチャのタイプ(pic_type)などを示す。また、書込部136は、図14の(iv)に示すように、シーケンスパラメータセット(SPS)にパラメータを書き込んでもよい。このパラメータは、例えば、時間階層符号化における階層識別子(templral_id)またはNALユニットのタイプ(nal_unit_type)などを示す。
図15は、複数の予め定義された近隣テンプレートを示す1つ以上のパラメータの位置の例を示す図である。例えば、複数の予め定義された近隣テンプレートを示す1つ以上のパラメータは、図15の(i)および(ii)に示すように、シーケンスパラメータセット(SPS)またはピクチャパラメータセット(PPS)の何れかに含まれる。そして、ブロックごとに選択された近隣テンプレートを明示的または暗示的に示す識別パラメータは、そのブロックに含まれて送信される。また、複数の予め定義された近隣テンプレートを示す1つ以上のパラメータは、図15の(iii)および(iv)に示すように、スライスヘッダまたは符号化単位の何れかに含まれていてもよい。
また、複数の予め定義された近隣テンプレートのそれぞれは、候補インデックスに基づいて近隣テンプレートが検索できるルックアウトテーブルまたは分類テーブル内に表されてもよい。例えば、最初に選択された近隣テンプレートのサブセットがTemplate_Aであれば、動き探索に用いられる近隣テンプレートを、サブセット内の候補となる複数の近隣テンプレートA0〜Anから選ぶことができる。
図16A〜図16Cは、近隣テンプレートを選択するためのパラメータの例示的な位置を示す図である。図16Aの(i)〜(iv)に示すように、1つの近隣テンプレートを選択するための固有識別パラメータ(このパラメータは、サブセットから近隣テンプレートを選択するときにも有効である)は、選択される近隣テンプレートを識別するための識別パラメータであって、特に、その近隣テンプレートに固有のパラメータである。この固有識別パラメータは、テンプレート識別パラメータとして、例えばSPS、PPS、スライスヘッダ、またはスライスデータに含まれてもよい。また、図16Bの(i)〜(iv)に示すように、サブセットを識別するためのパラメータが、テンプレート識別パラメータとして、例えばSPS、PPS、スライスヘッダ、またはスライスデータに含まれてもよい。さらに、最大候補バッファサイズ(max_cand_buffer_size)が、サブセットから近隣テンプレートを決定するためのテンプレートIDとして、スライスヘッダまたはスライスデータに含まれてもよい。また、図16Cの(i)〜(iv)に示すように、サブセットつまり拡張テンプレートを特定するパラメータ(enabled_extended_template_selection)が、例えばSPS、PPS、スライスヘッダ、またはスライスデータに明示的に含まれてもよい。
図17は、本実施の形態における復号装置の例示的な構造を示すブロック図である。
復号装置200は、符号化された動画像を示すビットストリームBsをブロック単位で復号することによって、復号映像を出力する。図17に示されるように、復号装置200は、エントロピー復号部201、逆量子化部202、逆変換部203、ブロックメモリ204、ピクチャメモリ(フレームメモリともいう)205、イントラ予測部206、インター予測部207、動きベクトル予測部210、制御部212、読解部213、および加算器215を備える。
エントロピー復号部201は、ビットストリームBsをエントロピー復号し、そのエントロピー復号によって得られた複数の量子化値を逆量子化部202に出力する。逆量子化部202は、それらの量子化値を逆量子化し、その逆量子化によって得られた複数の周波数係数を逆変換部203に出力する。逆変換部203は、複数の周波数係数を逆周波数変換することによって、それらの周波数係数を、複数の画素値(サンプル値ともいう)からなる差分画像に変換し、その差分画像を加算器215に出力する。加算器215は、その差分画像を、インター予測部207またはイントラ予測部206から出力された予測画像(つまり、復号対象ブロックに対する予測画像)に加算することによって、再構成画像を生成する。そして、加算器215は、少なくとも1つの再構成画像からなる復号映像を表示するために出力し、かつ、さらなる予測のため、生成された再構成画像をブロックメモリ204またはピクチャメモリ205に出力する。
イントラ予測部206は、ブロックメモリ204に格納されている少なくとも1つの再構成画像を用いてイントラ予測を行い、そのイントラ予測によって復号対象ブロック(以下、対象ブロックという)に対する予測画像を生成する。インター予測部207は、動きベクトル予測部210から導出または選択された動きベクトルに基づいて動き補償を行う。つまり、インター予測部207は、ピクチャメモリ205に格納されている少なくとも1つの再構成画像からなる参照ピクチャ内から、その動きベクトルに基づいて、例えば対象ブロック(または、後述の近隣テンプレート)の画像に最も類似した画像を取得する。これにより、予測画像が生成される。
読解部213は、ビットストリームBsから複数のパラメータ209を読み解き、読み解かれた複数のパラメータ209を制御部212に出力する。それらのパラメータ209は、複数の予め定義された近隣テンプレートを示すパラメータと、選択された近隣テンプレートを示す識別パラメータとを含む。なお、それらのパラメータ209は、拡張テンプレートの利用可否を示す拡張パラメータを含んでもよい。読解部213はまた、ビットストリームBsに含まれる、例えば候補インデックス、用いられた参照ピクチャを示す参照インデックス、およびデルタ動きベクトルなどを含む予測情報208を、動きベクトル予測部210に出力してもよい。
制御部212は、読解部213からの読み解かれた複数のパラメータ209に基づいて、複数の予め定義された近隣テンプレートを識別し、その複数の近隣テンプレートの中から1つの近隣テンプレートを選択する。なお、複数の予め定義された近隣テンプレートの動きベクトルが動きベクトル予測候補として候補リストに含まれている場合には、複数のパラメータ209のうち、選択された近隣テンプレートを示すパラメータは、その候補リストの候補インデックスであってもよい。制御部212はその選択された近隣テンプレートを示すパラメータを信号214に含めて動きベクトル予測部210に出力する。
動きベクトル予測部210は、候補リストに用いられる少なくとも1つの動きベクトル予測候補を導出する。動きベクトル予測部210は、当該候補リストに含まれる少なくとも1つの動きベクトル予測候補から、予測情報208に含まれる候補インデックスに基づいて、1つの動きベクトル予測候補を動きベクトル予測として選択する。このときには、動きベクトル予測部210は、選択された動きベクトル予測にデルタ動きベクトルを加算することによって、対象ブロックの動きベクトルを導出する。また、動きベクトル予測部210は、制御部212によって近隣テンプレートが選択されたときには、その近隣テンプレートに基づく動き探索を行うことによって、対象ブロックの動きベクトルを導出する。そして、動きベクトル予測部210は、その導出された動きベクトルを含む信号211をインター予測部207に出力する。
このような本実施の形態における復号装置200は、ビットストリームBsをブロックごとに復号する復号装置であって、読解部213と、選択部と、導出部と、復号部とを備える。
読解部213は、DMVDパラメータとして識別パラメータを前記ビットストリームから読み解く。選択部は、制御部212からなり、対象ブロックに対して予め定義されたN個(Nは2以上の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択することを、読み解かれたDMVDパラメータに基づいて実行する。
導出部は、動きベクトル予測部210からなり、選択された近隣テンプレートによって示される領域における再構成画像と、対象ブロックを含むピクチャと異なる参照ピクチャとを用いて動きベクトルを導出する。復号部は、インター予測部207と、エントロピー復号部201、逆量子化部202、逆変換部203、ピクチャメモリ205、および加算器215のうちの少なくとも1つとからなる。つまり、復号部は、導出された動きベクトルを用いて対象ブロックに対して動き補償を行うことによって、対象ブロックを復号する。
これにより、DMVDパラメータが、DMVD機能を有効にすることを示していれば、対象ブロックに対して予め定義されたN個の近隣テンプレートの中から1つの近隣テンプレートが選択される。したがって、対象ブロックに対して適切な近隣テンプレートを選択することができ、符号化効率の向上が図られたビットストリームを適切に復号することができる。なお、読解部213は、予め定められた閾値よりも大きいか否かによって、DMVD機能を有効にするか否かを示す値を、DMVDパラメータとして読み解いてもよい。これにより、DMVDパラメータを、例えば、候補リストのサイズなどのように、DMVD機能以外の他の機能に用いられる値を示すパラメータと兼用させることができる。したがって、ビットストリームに含まれる他のパラメータをDMVDパラメータとして用いることができるため、符号化効率のさらなる向上が図られたビットストリームを適切に復号することができる。
図18〜図20を参照し、本発実施の形態による、近隣テンプレートを用いた動き探索処理を実行する復号方法を説明する。
図18は、本実施の形態における復号処理の一例を示すフローチャートである。なお、このフローチャートによって示される復号処理は、図8のフローチャートによって示される符号化処理に対応する処理である。
復号装置200の読解部213は、最初のステップS2002として、対象ブロックに対する識別パラメータをビットストリームBsから読み解く。ステップS2003において、制御部212は、対象ブロックに対して予め定義された複数の近隣テンプレートを識別する。その後、ステップS2004において、制御部212は、読解部213で読み解かれた識別パラメータに基づいて、複数の予め定義された近隣テンプレートの中から1つの近隣テンプレートを選択する。ステップS2005において、動きベクトル予測部210は、動き探索処理の間に、選択された近隣テンプレートを用いて動きベクトルを導出する。最後のステップS2006において、インター予測部207は、導出された動きベクトルを用いて動き補償を実行する。この動き補償によって、対象ブロックが復号される。
なお、ステップS2005において、対象ブロックが、BピクチャまたはBスライスに含まれるブロックとして2つの参照ピクチャリストに基づいて復号される場合には、選択された近隣テンプレートから複数の動きベクトルが導出される。また、対象ブロックが、BピクチャおよびBスライスの何れにも含まれていない場合においても、選択された近隣テンプレートから動きベクトルの候補として複数の動きベクトルが導出されてもよい。
このように、図18のフローチャートによって示される復号処理では、識別パラメータがビットストリームBsから読み解かれるため、対象ブロックの符号化に用いられた近隣テンプレートを容易に選択して用いることができる。したがって、対象ブロックを適切に復号することができる。なお、ステップS2004では、識別パラメータに基づいて1つの近隣テンプレートを選択したが、例えば図11または図12のフローチャートによって示される予め定義された基準に基づいて、1つの近隣テンプレートを選択してもよい。
図19は、本実施の形態における復号処理の他の例を示すフローチャートである。なお、このフローチャートによって示される復号処理は、図9のフローチャートによって示される符号化処理に対応する処理である。
復号装置200の読解部213は、最初のステップS2101として、拡張テンプレートの利用可否を示す拡張パラメータと識別パラメータとを含む複数のパラメータを、ビットストリームBsから読み解く。次のステップS2102において、制御部212は、読み解かれた拡張パラメータが、予め定義された値を有するか否かを判定する。読み解かれた拡張パラメータが、予め定義された値を有する場合(ステップS2102のYes)、ステップS2104において、制御部212は、その読み解かれた拡張パラメータに基づいて、予め定義された複数の近隣テンプレートの中から、候補テンプレートのサブセットを識別する。その後、ステップS2105において、制御部212は、読み解かれた識別パラメータに基づいて、識別されたサブセットに含まれる複数の候補テンプレートの中から1つの候補テンプレート(つまり近隣テンプレート)を選択する。
一方、ステップS2102において、読み解かれた拡張パラメータが予め定義された値を有しない場合(ステップS2102のNo)、ステップS2103において、制御部212は、読み解かれた識別パラメータに基づいて、複数の予め定義された近隣テンプレートから、1つの近隣テンプレートを選択する。なお、このとき、制御部212は、例えば図11または図12のフローチャートによって示される予め定義された基準に基づいて、1つの近隣テンプレートを選択してもよい。
ステップS2106において、動きベクトル予測部210は、動き探索処理の間に、選択された近隣テンプレートを用いて、対象ブロックに対する動きベクトルを導出する。最後のステップS2107において、インター予測部207は、導出された動きベクトルを用いて、動き補償を実行する。
このように、図19のフローチャートによって示される復号処理では、復号装置200は、さらに、それぞれN個未満の複数の近隣テンプレートからなる複数のサブセットのうちの何れのサブゼットを用いるか、何れのサブセットも用いないかを、値として示す拡張パラメータを、ビットストリームBsから読み解く。そして、復号装置200は、記近隣テンプレートの選択では、拡張パラメータが予め定められた値を示す場合には、複数のサブセットの中から、その拡張パラメータに応じたサブセットを特定する。さらに、復号装置200は、そのN個の近隣テンプレートのうちの、特定された前記サブセットに含まれるM個(Mは2以上N未満の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択する。一方、復号装置200は、拡張パラメータが予め定められた値を示さない場合には、N個の近隣テンプレートの中から、1つの近隣テンプレートを選択する。
これにより、サブセットが用いられる場合には、N個の近隣テンプレートよりも少ないM個の近隣テンプレートの中から1つの近隣テンプレートが選択されるため、つまり、選択される近隣テンプレートの候補となる複数の近隣テンプレートの数が減るため、近隣テンプレートの選択の処理負担を軽減することができる。
図20は、本実施の形態における復号処理のさらに他の例を示すフローチャートである。なお、このフローチャートによって示される復号処理は、図10のフローチャートによって示される符号化処理に対応する処理である。
復号装置200の読解部213は、最初のステップS2401として、デコーダにおける動き探索処理に適応的テンプレート形を用いるか否かを示すパラメータを(上述のDMVDパラメータとして)ビットストリームBsのヘッダから読み解く。次のステップS2402において、制御部212は、読み解かれたパラメータが予め定義された値を有するか否かを判定する。読み解かれたパラメータが予め定義された値を有する場合は(ステップS2402のYes)、ステップS2403において、動きベクトル予測部210は、適応的テンプレート形を用いて動き探索処理を実行することで、動きベクトルを導出する。
このように、図20のフローチャートによって示される復号処理では、読解部213は、近隣テンプレートを適応的に変更するか否かを値として示すパラメータを、DMVDパラメータとして読み解く。そして、制御部212は、そのDMVDパラメータが予め定められた値を示す場合には、対象ブロックの復号時において、その対象ブロックの周辺に生成されている再構成画像の領域に応じて、N個の近隣テンプレートの中から1つの近隣テンプレートを選択する。より具体的には、制御部212は、N個の近隣テンプレートのうちの、対象ブロックの復号時において、その近隣テンプレートによって示される領域内の全ての再構成画像が生成されている少なくとも1つの近隣テンプレートの中から、1つの近隣テンプレートを選択する。
これにより、復号時の状況に応じて近隣テンプレートを適応的に選択すること、つまり、近隣テンプレートの大きさおよびサイズなどを適応的に変更することができ、符号化効率の向上が図られたビットストリームBsを適切に復号することができる。
また、図18のステップS2004および図19のステップS2105では、制御部212は、例えば図11または図12のフローチャートによって示される予め定義された基準に基づいて、1つの近隣テンプレートを選択してもよい。これにより、候補となる複数の近隣テンプレートから1つの近隣テンプレートを適切に選択することができる。また、このような近隣テンプレートの選択の手法が、予め定義された基準として、エンコーダ側でも実行されている場合には、エンコーダで選択された近隣テンプレートを適切に選択することができる。
上述の復号処理において、対象ブロックに対して想定されるいくつかの近隣テンプレートは、図2〜7のそれぞれによって例示されている。図示された近隣テンプレートは全て、デコーダ側の動きベクトル導出(DMVD)処理の機能性に対応するため、これらは本実施の形態においてDMVDテンプレートとして表される。しかしながら、DMVDテンプレートは、図2〜図7に図示された例に限定されない。
図21A〜図21Fは、ビットストリームBsから読み解かれたパラメータに基づいて、複数の近隣テンプレートからDMVDテンプレートを選択する処理の例を示すフローチャートである。
例えば、復号装置200は、図21Aに示すように、対象ブロックに用いられる近隣テンプレートを決定するために、ビットストリームBsから複数のパラメータを読み解く(ステップS2501)。次に、復号装置200は、複数の読み解かれたパラメータのうち、近隣テンプレートを識別するための識別パラメータを決定する(ステップS2502)。次に、復号装置200は、例えば、符号化装置100において構成される予め定義されたテンプレートリスト、ルックアプトテーブルまたは候補リストにしたがって、複数の予め定義された近隣テンプレートを識別する(ステップS2503)。そして、復号装置200は、識別された複数の近隣テンプレートの中から、1つの近隣テンプレート(DMVDテンプレート)を、ステップS2502で決定された識別パラメータに基づいて選択する(ステップS2504)。
また、復号装置200は、図21Bに示すように、ステップS2601〜S2604の処理を行ってもよい。つまり、復号装置200は、ステップS2602において、識別パラメータの代わりに、対象ブロックのサイズを示すパラメータを決定する。そして、復号装置200は、ステップS2604において、識別された複数の近隣テンプレートの中から、1つの近隣テンプレート(DMVDテンプレート)を、決定されたサイズを示すパラメータに基づいて選択する。
あるいは、復号装置200は、図21Cに示すように、ステップS2701〜S2704の処理を行ってもよい。つまり、復号装置200は、ステップS2702において、識別パラメータの代わりに、対象ブロックのピクチャタイプまたはスライスタイプを示すパラメータを決定する。そして、復号装置200は、ステップS2704において、識別された複数の近隣テンプレートの中から、1つの近隣テンプレート(DMVDテンプレート)を、決定されたピクチャタイプまたはスライスタイプを示すパラメータに基づいて選択する。
また、復号装置200は、図21Dに示すように、ステップS2801〜S2804の処理を行ってもよい。つまり、復号装置200は、ステップS2802において、識別パラメータの代わりに、対象ブロックを含む対象ピクチャの時間層を示すパラメータ(テンポラルID)を決定する。そして、復号装置200は、ステップS2804において、識別された複数の近隣テンプレートの中から、1つの近隣テンプレート(DMVDテンプレート)を、決定された時間層を示すパラメータに基づいて選択する。
あるいは、復号装置200は、図21Eに示すように、ステップS2901〜S2904の処理を行ってもよい。つまり、復号装置200は、ステップS2902において、識別パラメータの代わりに、対象ブロックを含む対象シーケンスの符号化構造を示すパラメータを決定する。そして、復号装置200は、ステップS2904において、識別された複数の近隣テンプレートの中から、1つの近隣テンプレート(DMVDテンプレート)を、決定された符号化構造を示すパラメータに基づいて選択する。
また、復号装置200は、図21Fに示すように、ステップS3001〜S3004の処理を行ってもよい。つまり、復号装置200は、ステップS3002において、識別パラメータの代わりに、DMVDテンプレートの利用可否を示すパラメータ(DMVDパラメータ)を決定する。そして、復号装置200は、ステップS3004において、識別された複数の近隣テンプレートの中から、1つの近隣テンプレート(DMVDテンプレート)を、決定された、DMVDテンプレートの利用可否を示すパラメータに基づいて選択する。
なお、図21A〜図21Fに示すフローチャートは、いくつか想定されるパラメータに基づいてDMVDテンプレートを選択するための例示的な処理として示される。これらの例示的なパラメータに限らず、他のパラメータに基づいてDMVDパラメータを選択してもよい。
また、図21A〜図21Fに示すフローチャートでは、選択される近隣テンプレート、つまりDMVDテンプレートが、暗示的なパラメータに基づいて選択されている。ここで、その暗示的なパラメータを、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示すDMVDパラメータとして用いてもよい。例えば、その暗示的なパラメータは、対象ブロックのサイズを示すパラメータ、スライスの種類を示すパラメータ、または、時間層を示すパラメータ(テンポラルID)である。
つまり、ビットストリーム内のDMVDパラメータは、予め定義された決定方式に基づいて、DMVD機能を有効にするか否かを決定し得る暗示的なパラメータである。例えば、その暗示的なパラメータは、スライスの種類を示すパラメータである。この場合、復号装置200は、そのパラメータが特定の種類のスライスを示す場合に、DMVD機能を有効にすると決定する。または、その暗示的なパラメータは、対象ブロックのサイズを示すパラメータである。この場合、復号装置200は、対象ブロックのサイズと予め定義されたサイズとを比較することによって、DMVD機能を有効にするか否かを決定する。または、その暗示的なパラメータは、時間階層符号化におけるピクチャのテンポラルIDである。この場合、復号装置200は、テンポラルIDと予め定義された閾値とを比較することによって、DMVD機能を有効にするか否かを決定する。
以上、本発明に係る符号化方法および復号方法について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれてもよい。
例えば、図22Aおよび図22Bに示す符号化方法および復号方法も本発明に含まれる。
図22Aは、本発明の一態様に係る符号化方法の一例を示すフローチャートである。
この符号化方法は、動画像をブロックごとに符号化する符号化方法であって、対象ブロックに対して予め定義された、前記対象ブロックの空間的に近隣にある互いに異なる領域を示すN個(Nは2以上の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択するステップS11と、選択された前記近隣テンプレートによって示される領域における再構成画像と、前記対象ブロックを含むピクチャと異なる参照ピクチャとを用いて動きベクトルを導出するステップS12と、導出された前記動きベクトルを用いて前記対象ブロックに対して動き補償を行うことによって、前記対象ブロックを符号化するステップS13と、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示すDMVDパラメータを、符号化された前記対象ブロックを含むビットストリームに書き込むステップS14とを含む。
これにより、上記実施の形態と同様の効果を奏することができる。つまり、符号化効率の向上を図ることができる。
図22Bは、本発明の一態様に係る復号方法の一例を示すフローチャートである。
この復号方法は、符号化された動画像を示すビットストリームをブロックごとに復号する復号方法であって、デコーダにおいて動きベクトルを導出する機能であるDMVD機能を有効にするか否かを示すDMVDパラメータを、前記ビットストリームから読み解くステップS21と、対象ブロックに対して予め定義された、前記対象ブロックの空間的に近隣にある互いに異なる領域を示すN個(Nは2以上の整数)の近隣テンプレートの中から、1つの近隣テンプレートを選択することを、読み解かれた前記DMVDパラメータに基づいて実行するステップS22と、選択された前記近隣テンプレートによって示される領域における再構成画像と、前記対象ブロックを含むピクチャと異なる参照ピクチャとを用いて動きベクトルを導出するステップS23と、導出された前記動きベクトルを用いて前記対象ブロックに対して動き補償を行うことによって、前記対象ブロックを復号するステップS24とを含む。
これにより、上記実施の形態と同様の効果を奏することができる。つまり、符号化効率の向上が図られたビットストリームを適切に復号することができる。
なお、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記実施の形態の符号化装置および復号化装置などを実現するソフトウェアは、コンピュータに、図22Aまたは図22Bによって示される各ステップを実行させる。
(実施の形態2)
上記各実施の形態で示した動画像符号化方法(画像符号化方法)または動画像復号化方法(画像復号方法)の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
さらにここで、上記各実施の形態で示した動画像符号化方法(画像符号化方法)や動画像復号化方法(画像復号方法)の応用例とそれを用いたシステムを説明する。当該システムは、画像符号化方法を用いた画像符号化装置、及び画像復号方法を用いた画像復号装置からなる画像符号化復号装置を有することを特徴とする。システムにおける他の構成について、場合に応じて適切に変更することができる。
図23は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106、ex107、ex108、ex109、ex110が設置されている。
このコンテンツ供給システムex100は、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex106からex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が接続される。
しかし、コンテンツ供給システムex100は図23のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex106からex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex116はデジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex114は、GSM(登録商標)(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband-Code Division Multiple Access)方式、若しくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明したように符号化処理を行い(即ち、本発明の一態様に係る画像符号化装置として機能する)、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号化処理して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
なお、撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号化処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像および/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
また、これら符号化・復号化処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号化処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは携帯電話ex114が有するLSIex500で符号化処理されたデータである。
また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号化し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
なお、コンテンツ供給システムex100の例に限らず、図24に示すように、デジタル放送用システムex200にも、上記各実施の形態の少なくとも動画像符号化装置(画像符号化装置)または動画像復号化装置(画像復号装置)のいずれかを組み込むことができる。具体的には、放送局ex201では映像データに音楽データなどが多重化された多重化データが電波を介して通信または衛星ex202に伝送される。この映像データは上記各実施の形態で説明した動画像符号化方法により符号化されたデータである(即ち、本発明の一態様に係る画像符号化装置によって符号化されたデータである)。これを受けた放送衛星ex202は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex204が受信する。受信した多重化データを、テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置が復号化して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
また、DVD、BD等の記録メディアex215に記録した多重化データを読み取り復号化する、または記録メディアex215に映像信号を符号化し、さらに場合によっては音楽信号と多重化して書き込むリーダ/レコーダex218にも上記各実施の形態で示した動画像復号化装置または動画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示され、多重化データが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に動画像復号化装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでもよい。
図25は、上記各実施の形態で説明した動画像復号化方法および動画像符号化方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像データに音声データが多重化された多重化データを取得、または出力するチューナex301と、受信した多重化データを復調する、または外部に送信する多重化データに変調する変調/復調部ex302と、復調した多重化データを映像データと、音声データとに分離する、または信号処理部ex306で符号化された映像データ、音声データを多重化する多重/分離部ex303を備える。
また、テレビex300は、音声データ、映像データそれぞれを復号化する、またはそれぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305(本発明の一態様に係る画像符号化装置または画像復号装置として機能する)を有する信号処理部ex306と、復号化した音声信号を出力するスピーカex307、復号化した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
まず、テレビex300がアンテナex204等により外部から取得した多重化データを復号化し、再生する構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した多重化データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号化し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号化方法を用いて復号化する。復号化した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。また、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から多重化データを読み出してもよい。次に、テレビex300が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318、ex319、ex320、ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302や多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号化処理、外部出力のみが可能な構成であってもよい。
また、リーダ/レコーダex218で記録メディアから多重化データを読み出す、または書き込む場合には、上記復号化処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を図26に示す。情報再生/記録部ex400は、以下に説明する要素ex401、ex402、ex403、ex404、ex405、ex406、ex407を備える。光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex404は、記録メディアex215に記録するための情報および記録メディアex215から再生した情報を一時的に保持する。ディスクモータex405は記録メディアex215を回転させる。サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
図27に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録や再生を行う装置において情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した多重化データの読み書きを行う。
以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図25に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。
図28Aは、上記実施の形態で説明した動画像復号化方法および動画像符号化方法を用いた携帯電話ex114を示す図である。携帯電話ex114は、基地局ex110との間で電波を送受信するためのアンテナex350、映像、静止画を撮ることが可能なカメラ部ex365、カメラ部ex365で撮像した映像、アンテナex350で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex358を備える。携帯電話ex114は、さらに、操作キー部ex366を有する本体部、音声を出力するためのスピーカ等である音声出力部ex357、音声を入力するためのマイク等である音声入力部ex356、撮影した映像、静止画、録音した音声、または受信した映像、静止画、メール等の符号化されたデータもしくは復号化されたデータを保存するメモリ部ex367、又は同様にデータを保存する記録メディアとのインタフェース部であるスロット部ex364を備える。
さらに、携帯電話ex114の構成例について、図28Bを用いて説明する。携帯電話ex114は、表示部ex358及び操作キー部ex366を備えた本体部の各部を統括的に制御する主制御部ex360に対して、電源回路部ex361、操作入力制御部ex362、映像信号処理部ex355、カメラインタフェース部ex363、LCD(Liquid Crystal Display)制御部ex359、変調/復調部ex352、多重/分離部ex353、音声信号処理部ex354、スロット部ex364、メモリ部ex367がバスex370を介して互いに接続されている。
電源回路部ex361は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話ex114を動作可能な状態に起動する。
携帯電話ex114は、CPU、ROM、RAM等を有する主制御部ex360の制御に基づいて、音声通話モード時に音声入力部ex356で収音した音声信号を音声信号処理部ex354でデジタル音声信号に変換し、これを変調/復調部ex352でスペクトラム拡散処理し、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して送信する。また携帯電話ex114は、音声通話モード時にアンテナex350を介して受信した受信データを増幅して周波数変換処理およびアナログデジタル変換処理を施し、変調/復調部ex352でスペクトラム逆拡散処理し、音声信号処理部ex354でアナログ音声信号に変換した後、これを音声出力部ex357から出力する。
さらにデータ通信モード時に電子メールを送信する場合、本体部の操作キー部ex366等の操作によって入力された電子メールのテキストデータは操作入力制御部ex362を介して主制御部ex360に送出される。主制御部ex360は、テキストデータを変調/復調部ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して基地局ex110へ送信する。電子メールを受信する場合は、受信したデータに対してこのほぼ逆の処理が行われ、表示部ex358に出力される。
データ通信モード時に映像、静止画、または映像と音声を送信する場合、映像信号処理部ex355は、カメラ部ex365から供給された映像信号を上記各実施の形態で示した動画像符号化方法によって圧縮符号化し(即ち、本発明の一態様に係る画像符号化装置として機能する)、符号化された映像データを多重/分離部ex353に送出する。また、音声信号処理部ex354は、映像、静止画等をカメラ部ex365で撮像中に音声入力部ex356で収音した音声信号を符号化し、符号化された音声データを多重/分離部ex353に送出する。
多重/分離部ex353は、映像信号処理部ex355から供給された符号化された映像データと音声信号処理部ex354から供給された符号化された音声データを所定の方式で多重化し、その結果得られる多重化データを変調/復調部(変調/復調回路部)ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex350を介して送信する。
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、または映像およびもしくは音声が添付された電子メールを受信する場合、アンテナex350を介して受信された多重化データを復号化するために、多重/分離部ex353は、多重化データを分離することにより映像データのビットストリームと音声データのビットストリームとに分け、同期バスex370を介して符号化された映像データを映像信号処理部ex355に供給するとともに、符号化された音声データを音声信号処理部ex354に供給する。映像信号処理部ex355は、上記各実施の形態で示した動画像符号化方法に対応した動画像復号化方法によって復号化することにより映像信号を復号し(即ち、本発明の一態様に係る画像復号装置として機能する)、LCD制御部ex359を介して表示部ex358から、例えばホームページにリンクされた動画像ファイルに含まれる映像、静止画が表示される。また音声信号処理部ex354は、音声信号を復号し、音声出力部ex357から音声が出力される。
また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号化器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号化器のみの受信端末という3通りの実装形式が考えられる。さらに、デジタル放送用システムex200において、映像データに音楽データなどが多重化された多重化データを受信、送信するとして説明したが、音声データ以外に映像に関連する文字データなどが多重化されたデータであってもよいし、多重化データではなく映像データ自体であってもよい。
このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
(実施の形態3)
上記各実施の形態で示した動画像符号化方法または装置と、MPEG−2、MPEG4−AVC、VC−1など異なる規格に準拠した動画像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
ここで、それぞれ異なる規格に準拠する複数の映像データを生成した場合、復号する際に、それぞれの規格に対応した復号方法を選択する必要がある。しかしながら、復号する映像データが、どの規格に準拠するものであるか識別できないため、適切な復号方法を選択することができないという課題を生じる。
この課題を解決するために、映像データに音声データなどを多重化した多重化データは、映像データがどの規格に準拠するものであるかを示す識別情報を含む構成とする。上記各実施の形態で示す動画像符号化方法または装置によって生成された映像データを含む多重化データの具体的な構成を以下説明する。多重化データは、MPEG−2トランスポートストリーム形式のデジタルストリームである。
図29は、多重化データの構成を示す図である。図29に示すように多重化データは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム(PG)、インタラクティブグラフィックスストリームのうち、1つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム(IG)は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、上記各実施の形態で示した動画像符号化方法または装置、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠した動画像符号化方法または装置によって符号化されている。オーディオストリームは、ドルビーAC−3、Dolby Digital Plus、MLP、DTS、DTS−HD、または、リニアPCMのなどの方式で符号化されている。
多重化データに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームには0x1011が、オーディオストリームには0x1100から0x111Fまでが、プレゼンテーショングラフィックスには0x1200から0x121Fまでが、インタラクティブグラフィックスストリームには0x1400から0x141Fまでが、映画の副映像に利用するビデオストリームには0x1B00から0x1B1Fまで、主音声とミキシングする副音声に利用するオーディオストリームには0x1A00から0x1A1Fが、それぞれ割り当てられている。
図30は、多重化データがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリームex235、複数のオーディオフレームからなるオーディオストリームex238を、それぞれPESパケット列ex236およびex239に変換し、TSパケットex237およびex240に変換する。同じくプレゼンテーショングラフィックスストリームex241およびインタラクティブグラフィックスex244のデータをそれぞれPESパケット列ex242およびex245に変換し、さらにTSパケットex243およびex246に変換する。多重化データex247はこれらのTSパケットを1本のストリームに多重化することで構成される。
図31は、PESパケット列に、ビデオストリームがどのように格納されるかをさらに詳しく示している。図31における第1段目はビデオストリームのビデオフレーム列を示す。第2段目は、PESパケット列を示す。図31の矢印yy1,yy2,yy3,yy4に示すように、ビデオストリームにおける複数のVideo Presentation UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS(Presentation Time−Stamp)やピクチャの復号時刻であるDTS(Decoding Time−Stamp)が格納される。
図32は、多重化データに最終的に書き込まれるTSパケットの形式を示している。TSパケットは、ストリームを識別するPIDなどの情報を持つ4ByteのTSヘッダとデータを格納する184ByteのTSペイロードから構成される188Byte固定長のパケットであり、上記PESパケットは分割されTSペイロードに格納される。BD−ROMの場合、TSパケットには、4ByteのTP_Extra_Headerが付与され、192Byteのソースパケットを構成し、多重化データに書き込まれる。TP_Extra_HeaderにはATS(Arrival_Time_Stamp)などの情報が記載される。ATSは当該TSパケットのデコーダのPIDフィルタへの転送開始時刻を示す。多重化データには図32下段に示すようにソースパケットが並ぶこととなり、多重化データの先頭からインクリメントする番号はSPN(ソースパケットナンバー)と呼ばれる。
また、多重化データに含まれるTSパケットには、映像・音声・字幕などの各ストリーム以外にもPAT(Program Association Table)、PMT(Program Map Table)、PCR(Program Clock Reference)などがある。PATは多重化データ中に利用されるPMTのPIDが何であるかを示し、PAT自身のPIDは0で登録される。PMTは、多重化データ中に含まれる映像・音声・字幕などの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、また多重化データに関する各種ディスクリプタを持つ。ディスクリプタには多重化データのコピーを許可・不許可を指示するコピーコントロール情報などがある。PCRは、ATSの時間軸であるATC(Arrival Time Clock)とPTS・DTSの時間軸であるSTC(System Time Clock)の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
図33はPMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、多重化データに関するディスクリプタが複数配置される。上記コピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、多重化データに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報(フレームレート、アスペクト比など)が記載されたストリームディスクリプタから構成される。ストリームディスクリプタは多重化データに存在するストリームの数だけ存在する。
記録媒体などに記録する場合には、上記多重化データは、多重化データ情報ファイルと共に記録される。
多重化データ情報ファイルは、図34に示すように多重化データの管理情報であり、多重化データと1対1に対応し、多重化データ情報、ストリーム属性情報とエントリマップから構成される。
多重化データ情報は図34に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートは多重化データの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。多重化データ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻は多重化データの先頭のビデオフレームのPTSであり、再生終了時刻は多重化データの終端のビデオフレームのPTSに1フレーム分の再生間隔を足したものが設定される。
ストリーム属性情報は図35に示すように、多重化データに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
本実施の形態においては、上記多重化データのうち、PMTに含まれるストリームタイプを利用する。また、記録媒体に多重化データが記録されている場合には、多重化データ情報に含まれる、ビデオストリーム属性情報を利用する。具体的には、上記各実施の形態で示した動画像符号化方法または装置において、PMTに含まれるストリームタイプ、または、ビデオストリーム属性情報に対し、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示す固有の情報を設定するステップまたは手段を設ける。この構成により、上記各実施の形態で示した動画像符号化方法または装置によって生成した映像データと、他の規格に準拠する映像データとを識別することが可能になる。
また、本実施の形態における動画像復号化方法のステップを図36に示す。ステップexS100において、多重化データからPMTに含まれるストリームタイプ、または、多重化データ情報に含まれるビデオストリーム属性情報を取得する。次に、ステップexS101において、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成された多重化データであることを示しているか否かを判断する。そして、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成されたものであると判断された場合には、ステップexS102において、上記各実施の形態で示した動画像復号方法により復号を行う。また、ストリームタイプ、または、ビデオストリーム属性情報が、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠するものであることを示している場合には、ステップexS103において、従来の規格に準拠した動画像復号方法により復号を行う。
このように、ストリームタイプ、または、ビデオストリーム属性情報に新たな固有値を設定することにより、復号する際に、上記各実施の形態で示した動画像復号化方法または装置で復号可能であるかを判断することができる。従って、異なる規格に準拠する多重化データが入力された場合であっても、適切な復号化方法または装置を選択することができるため、エラーを生じることなく復号することが可能となる。また、本実施の形態で示した動画像符号化方法または装置、または、動画像復号方法または装置を、上述したいずれの機器・システムに用いることも可能である。
(実施の形態4)
上記各実施の形態で示した動画像符号化方法および装置、動画像復号化方法および装置は、典型的には集積回路であるLSIで実現される。一例として、図37に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化および/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力された多重化データは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
また、上記では、制御部ex501が、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有するとしているが、制御部ex501の構成は、この構成に限らない。例えば、信号処理部ex507がさらにCPUを備える構成であってもよい。信号処理部ex507の内部にもCPUを設けることにより、処理速度をより向上させることが可能になる。また、他の例として、CPUex502が信号処理部ex507、または信号処理部ex507の一部である例えば音声信号処理部を備える構成であってもよい。このような場合には、制御部ex501は、信号処理部ex507、またはその一部を有するCPUex502を備える構成となる。
なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。このようなプログラマブル・ロジック・デバイスは、典型的には、ソフトウェア又はファームウェアを構成するプログラムを、ロードする又はメモリ等から読み込むことで、上記各実施の形態で示した動画像符号化方法、又は動画像復号化方法を実行することができる。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
(実施の形態5)
上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データを復号する場合、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、LSIex500において、従来の規格に準拠する映像データを復号する際のCPUex502の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
この課題を解決するために、テレビex300、LSIex500などの動画像復号化装置は、映像データがどの規格に準拠するものであるかを識別し、規格に応じて駆動周波数を切替える構成とする。図38は、本実施の形態における構成ex800を示している。駆動周波数切替え部ex803は、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合には、駆動周波数を高く設定する。そして、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801に対し、映像データを復号するよう指示する。一方、映像データが、従来の規格に準拠する映像データである場合には、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合に比べ、駆動周波数を低く設定する。そして、従来の規格に準拠する復号処理部ex802に対し、映像データを復号するよう指示する。
より具体的には、駆動周波数切替え部ex803は、図37のCPUex502と駆動周波数制御部ex512から構成される。また、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801、および、従来の規格に準拠する復号処理部ex802は、図37の信号処理部ex507に該当する。CPUex502は、映像データがどの規格に準拠するものであるかを識別する。そして、CPUex502からの信号に基づいて、駆動周波数制御部ex512は、駆動周波数を設定する。また、CPUex502からの信号に基づいて、信号処理部ex507は、映像データの復号を行う。ここで、映像データの識別には、例えば、実施の形態3で記載した識別情報を利用することが考えられる。識別情報に関しては、実施の形態3で記載したものに限られず、映像データがどの規格に準拠するか識別できる情報であればよい。例えば、映像データがテレビに利用されるものであるか、ディスクに利用されるものであるかなどを識別する外部信号に基づいて、映像データがどの規格に準拠するものであるか識別可能である場合には、このような外部信号に基づいて識別してもよい。また、CPUex502における駆動周波数の選択は、例えば、図40のような映像データの規格と、駆動周波数とを対応付けたルックアップテーブルに基づいて行うことが考えられる。ルックアップテーブルを、バッファex508や、LSIの内部メモリに格納しておき、CPUex502がこのルックアップテーブルを参照することにより、駆動周波数を選択することが可能である。
図39は、本実施の形態の方法を実施するステップを示している。まず、ステップexS200では、信号処理部ex507において、多重化データから識別情報を取得する。次に、ステップexS201では、CPUex502において、識別情報に基づいて映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものであるか否かを識別する。映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合には、ステップexS202において、駆動周波数を高く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、高い駆動周波数に設定される。一方、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、ステップexS203において、駆動周波数を低く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合に比べ、低い駆動周波数に設定される。
さらに、駆動周波数の切替えに連動して、LSIex500またはLSIex500を含む装置に与える電圧を変更することにより、省電力効果をより高めることが可能である。例えば、駆動周波数を低く設定する場合には、これに伴い、駆動周波数を高く設定している場合に比べ、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することが考えられる。
また、駆動周波数の設定方法は、復号する際の処理量が大きい場合に、駆動周波数を高く設定し、復号する際の処理量が小さい場合に、駆動周波数を低く設定すればよく、上述した設定方法に限らない。例えば、MPEG4−AVC規格に準拠する映像データを復号する処理量の方が、上記各実施の形態で示した動画像符号化方法または装置により生成された映像データを復号する処理量よりも大きい場合には、駆動周波数の設定を上述した場合の逆にすることが考えられる。
さらに、駆動周波数の設定方法は、駆動周波数を低くする構成に限らない。例えば、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を高く設定し、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することも考えられる。また、他の例としては、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、CPUex502の駆動を停止させることなく、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、処理に余裕があるため、CPUex502の駆動を一時停止させることも考えられる。識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合であっても、処理に余裕があれば、CPUex502の駆動を一時停止させることも考えられる。この場合は、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合に比べて、停止時間を短く設定することが考えられる。
このように、映像データが準拠する規格に応じて、駆動周波数を切替えることにより、省電力化を図ることが可能になる。また、電池を用いてLSIex500またはLSIex500を含む装置を駆動している場合には、省電力化に伴い、電池の寿命を長くすることが可能である。
(実施の形態6)
テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、LSIex500の信号処理部ex507が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex507を個別に用いると、LSIex500の回路規模が大きくなり、また、コストが増加するという課題が生じる。
この課題を解決するために、上記各実施の形態で示した動画像復号方法を実行するための復号処理部と、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する復号処理部とを一部共有化する構成とする。この構成例を図41Aのex900に示す。例えば、上記各実施の形態で示した動画像復号方法と、MPEG4−AVC規格に準拠する動画像復号方法とは、エントロピー符号化、逆量子化、デブロッキング・フィルタ、動き補償などの処理において処理内容が一部共通する。共通する処理内容については、MPEG4−AVC規格に対応する復号処理部ex902を共有し、MPEG4−AVC規格に対応しない、本発明の一態様に特有の他の処理内容については、専用の復号処理部ex901を用いるという構成が考えられる。復号処理部の共有化に関しては、共通する処理内容については、上記各実施の形態で示した動画像復号化方法を実行するための復号処理部を共有し、MPEG4−AVC規格に特有の処理内容については、専用の復号処理部を用いる構成であってもよい。
また、処理を一部共有化する他の例を図41Bのex1000に示す。この例では、本発明の一態様に特有の処理内容に対応した専用の復号処理部ex1001と、他の従来規格に特有の処理内容に対応した専用の復号処理部ex1002と、本発明の一態様に係る動画像復号方法と他の従来規格の動画像復号方法とに共通する処理内容に対応した共用の復号処理部ex1003とを用いる構成としている。ここで、専用の復号処理部ex1001、ex1002は、必ずしも本発明の一態様、または、他の従来規格に特有の処理内容に特化したものではなく、他の汎用処理を実行できるものであってもよい。また、本実施の形態の構成を、LSIex500で実装することも可能である。
このように、本発明の一態様に係る動画像復号方法と、従来の規格の動画像復号方法とで共通する処理内容について、復号処理部を共有することにより、LSIの回路規模を小さくし、かつ、コストを低減することが可能である。