(57)【要約】【課題】精度よくかつ効率的に符号化処理を行うことのできる動画像符号化装置を提供する。【解決手段】符号化処理の対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて、対象領域に対する第１予測動きベクトルを生成する第１予測動きベクトル生成手段１０１と、第１予測動きベクトルに基づいて、対象領域に対する動きベクトルを生成する動きベクトル生成手段１００と、動きベクトルに基づいて対象領域を符号化するときに利用する符号化情報を生成する符号化情報生成手段と、符号化情報に基づいて、対象領域に対する第２予測動きベクトルを生成する第２予測動きベクトル生成手段１１２と、第２予測動きベクトルに基づいて前記対象領域の画像を符号化する符号化手段１１１とを備えた。【選択図】        図１
2006074474.tif 000002
【特許請求の範囲】
【請求項１】
動画像に対し符号化処理を行う動画像符号化装置であって、
前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて、前記対象領域に対する第１予測動きベクトルを生成する第１予測動きベクトル生成手段と、
前記第１予測動きベクトル生成手段によって生成された前記第１予測動きベクトルに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成手段と、
前記動きベクトル生成手段によって生成された前記動きベクトルに基づいて、前記対象領域を符号化するときに利用する符号化情報を生成する符号化情報生成手段と、
前記符号化情報生成手段によって生成された前記符号化情報に基づいて、前記対象領域に対する第２予測動きベクトルを生成する第２予測動きベクトル生成手段と、
前記第２予測動きベクトル生成手段によって生成された前記第２予測動きベクトルに基づいて前記対象領域の画像を符号化する符号化手段と
を備えたことを特徴とする動画像符号化装置。
【請求項２】
前記第１予測動きベクトル生成手段は、前記動きベクトル生成手段が既に生成した前記動きベクトルに基づいて前記第１予測動きベクトルを生成することを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記対象領域は、複数のブロックを含むマクロブロックであることを特徴とする請求項１または２に記載の動画像符号化装置。
【請求項４】
前記第１予測動きベクトル生成手段は、Ｉｎｔｅｒ符号化における前記第１予測動きベクトルを生成することを特徴とする請求項１から３のいずれか一項に記載の動画像符号化装置。
【請求項５】
前記第１予測動きベクトル生成手段は、予め定められた形状および大きさの前記対象領域に対して前記第１予測動きベクトルを生成することを特徴とする請求項１から４のいずれか一項に記載の動画像符号化装置。
【請求項６】
前記第１予測動きベクトル生成手段は、前記対象領域を含むフレームの直前フレームに対する動きベクトルに基づいて、前記第１予測動きベクトルを生成することを特徴とする請求項１から５のいずれか一項に記載の動画像符号化装置。
【請求項７】
前記動きベクトル生成手段は、前記隣接領域の量子化パラメータのうち既に生成されている量子化パラメータと、前記第１予測動きベクトルとに基づいて、前記対象領域に対する前記動きベクトルを生成することを特徴とする請求項１から６のいずれか一項に記載の動画像符号化装置。
【請求項８】
動画像に対し符号化処理を行う動画像符号化装置であって、
前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の量子化パラメータに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成手段と、
前記動きベクトル生成手段によって生成された前記動きベクトルに基づいて、前記対象領域の画像を符号化する符号化手段と
を備えたことを特徴とする動画像符号化装置。
【請求項９】
前記動きベクトル生成手段は、前記対象領域を含むフレームの直前のフレームに対する量子化パラメータに基づいて、前記動きベクトルを生成することを特徴とする請求項８に記載の動画像符号化装置。
【請求項１０】
前記動きベクトル生成手段は、前記対象領域を含むフレームと符号化モードが同一のフレームに対する量子化パラメータに基づいて、前記動きベクトルを生成することを特徴とする請求項８または９に記載の動画像符号化装置。
【請求項１１】
動画像に対し符号化処理を行う動画像符号化装置であって、
予め定められた第１予測動きベクトルに基づいて動きベクトルを生成する動きベクトル生成手段と、
前記動きベクトル生成手段によって生成された前記動きベクトルに基づいて、前記符号化処理の対象となる対象ブロックを符号化するときに利用する符号化情報を生成する符号化情報生成手段と、
前記符号化情報生成手段によって生成された前記符号化情報に基づいて、前記対象ブロックに対する第２予測動きベクトルを生成する第２予測動きベクトル生成手段と、
前記第２予測動きベクトル生成手段によって生成された前記第２予測動きベクトルに基づいて前記対象ブロックの画像を符号化する符号化手段と
を備えたことを特徴とする動画像符号化装置。
【請求項１２】
動画像に対し符号化処理を行う動画像符号化方法であって、
前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて、前記対象領域に対する第１予測動きベクトルを生成する第１予測動きベクトル生成ステップと、
前記第１予測動きベクトル生成ステップにおいて生成された前記第１予測動きベクトルに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、
前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域を符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、
前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記対象領域に対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、
前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象領域の画像を符号化する符号化ステップと
を有することを特徴とする動画像符号化方法。
【請求項１３】
動画像に対し符号化処理を行う動画像符号化方法であって、
前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の量子化パラメータに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、
前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域の画像を符号化する符号化ステップと
を有することを特徴とする動画像符号化方法。
【請求項１４】
動画像に対し符号化処理を行う動画像符号化方法であって、
予め定められた第１予測動きベクトルに基づいて動きベクトルを生成する動きベクトル生成ステップと、
前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象ブロックを符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、
前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記符号化処理の対象となる対象ブロックに対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、
前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象ブロックの画像を符号化する符号化ステップと
を有することを特徴とする動画像符号化方法。
【請求項１５】
動画像符号化処理をコンピュータに実行させる動画像符号化プログラムであって、
前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて、前記対象領域に対する第１予測動きベクトルを生成する第１予測動きベクトル生成ステップと、
前記第１予測動きベクトル生成ステップにおいて生成された前記第１予測動きベクトルに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、
前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域を符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、
前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記対象領域に対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、
前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象領域の画像を符号化する符号化ステップと
を有することを特徴とする動画像符号化プログラム。
【請求項１６】
動画像符号化処理をコンピュータに実行させる動画像符号化プログラムであって、
前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の量子化パラメータに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、
前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域の画像を符号化する符号化ステップと
を有することを特徴とする動画像符号化プログラム。
【請求項１７】
動画像符号化処理をコンピュータに実行させる動画像符号化プログラムであって、
予め定められた第１予測動きベクトルに基づいて動きベクトルを生成する動きベクトル生成ステップと、
前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記符号化処理の対象となる対象ブロックを符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、
前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記対象ブロックに対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、
前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象ブロックの画像を符号化する符号化ステップと
を有することを特徴とする動画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像に対し符号化処理を行う動画像符号化装置、動画像符号化方法および動画像符号化プログラムに関するものである。
【背景技術】
【０００２】
動画像の動き補償予測フレーム間像符号化では、符号化時の動きベクトル検出の精度が符号化効率に大きく影響する。また、動きベクトル検出の処理量は、符号化処理全体に占める割合も大きく、従来、動きベクトル検出の高精度化・高速化に関する数多くの技術が開発されている（例えば「非特許文献１」参照）。通常、動きベクトル検出は、ブロックマッチング手法により、予測残差の最も小さくなる参照画素ブロックを参照フレーム内から決定することにより行われる。
【０００３】
しかし、動きベクトル自体を符号化する際のオーバーヘッドが存在する。このため、符号化レートと符号化歪みの関係において、予測残差の大きさだけでは、最適な動きベクトルを決定することはできない。そこで、予測残差の大きさと動きベクトルの符号化コストとの線形和から最適な動きベクトルを決定する方法が提案されている（例えば、「特許文献１」参照）。
【０００４】
ＩＴＵ−Ｔ  Ｒｅｃ．  Ｈ．２６４(以下Ｈ．２６４)等の動画像符号化の国際標準では、動きベクトルを符号化する際に、同一フレーム内で既に符号化された複数の画素ブロックの動きベクトルから予測ベクトルが計算される。そして、該予測ベクトルと符号化すべき動きベクトルの差分値が符号化される。
【０００５】
Ｈ．２６４では、マクロブロック毎に様々な動き補償予測ブロック形状への分割が可能となっており、分割された画素ブロック毎に動きベクトルが符号化される。
【０００６】
また、画素ブロック毎に複数の参照フレームの中から任意の参照フレームを選択して予測信号を生成することも可能であり、選択した参照フレームを示すインデックスも必要に応じて符号化される。
【０００７】
さらに、マクロブロック毎にフレーム間符号化とフレーム内符号化のいずれかを選択して符号化することも可能である。Ｈ．２６４における予測ベクトルは、周辺の複数の符号化済み画素ブロックにおける予測ブロック分割形状、各画素ブロックの動きベクトル及び参照フレーム選択のインデックス、フレーム内符号化及びフレーム間符号化の別（以下、これらを総称して符号化モードと呼ぶ）に応じて計算される。従って、上記動きベクトルの符号化コストを計算するためには、周囲の複数の画素ブロックにおいて、決定された符号化モード情報が必要となる。
【０００８】
【特許文献１】特開２００３−２３０１４９号公報
【非特許文献１】"Algorithms, Complexity Analysis and VLSI Architectures for MPEG-4 Motion Estimation", 5章, Peter Kuhn著, Kluwer Academic Publishers (1999)
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、処理対象となるブロックにおける動きベクトルや符号化モード情報は、当該ブロックにおける符号化処理が行われなければ得られない情報である。したがって、当該処理対象となるブロックにおける符号化処理が完了するまでは、正確な予測ベクトルや動きベクトル符号化コストの重み係数を決定することができないという問題があった。
【００１０】
本発明は、上記に鑑みてなされたものであって、動きベクトルや符号化モード等の情報を利用できない場合であっても、精度よくかつ効率的に符号化処理を行うことのできる動画像符号化装置、動画像符号化方法および動画像符号化プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、本発明は、動画像に対し符号化処理を行う動画像符号化装置であって、前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて、前記対象領域に対する第１予測動きベクトルを生成する第１予測動きベクトル生成手段と、前記第１予測動きベクトル生成手段によって生成された前記第１予測動きベクトルに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成手段と、前記動きベクトル生成手段によって生成された前記動きベクトルに基づいて、前記対象領域を符号化するときに利用する符号化情報を生成する符号化情報生成手段と、前記符号化情報生成手段によって生成された前記符号化情報に基づいて、前記対象領域に対する第２予測動きベクトルを生成する第２予測動きベクトル生成手段と、前記第２予測動きベクトル生成手段によって生成された前記第２予測動きベクトルに基づいて前記対象領域の画像を符号化する符号化手段とを備えたことを特徴とする。
【００１２】
また、本発明は、動画像に対し符号化処理を行う動画像符号化装置であって、前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の量子化パラメータに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成手段と、前記動きベクトル生成手段によって生成された前記動きベクトルに基づいて、前記対象領域の画像を符号化する符号化手段とを備えたことを特徴とする。
【００１３】
また、本発明は、動画像に対し符号化処理を行う動画像符号化装置であって、予め定められた第１予測動きベクトルに基づいて動きベクトルを生成する動きベクトル生成手段と、前記動きベクトル生成手段によって生成された前記動きベクトルに基づいて、前記符号化処理の対象となる対象ブロックを符号化するときに利用する符号化情報を生成する符号化情報生成手段と、前記符号化情報生成手段によって生成された前記符号化情報に基づいて、前記対象ブロックに対する第２予測動きベクトルを生成する第２予測動きベクトル生成手段と、前記第２予測動きベクトル生成手段によって生成された前記第２予測動きベクトルに基づいて前記対象ブロックの画像を符号化する符号化手段とを備えたことを特徴とする。
【００１４】
また、本発明は、動画像に対し符号化処理を行う動画像符号化方法であって、前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて、前記対象領域に対する第１予測動きベクトルを生成する第１予測動きベクトル生成ステップと、前記第１予測動きベクトル生成ステップにおいて生成された前記第１予測動きベクトルに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域を符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記対象領域に対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象領域の画像を符号化する符号化ステップとを有することを特徴とする。
【００１５】
また、本発明は、動画像に対し符号化処理を行う動画像符号化方法であって、前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の量子化パラメータに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域の画像を符号化する符号化ステップとを有することを特徴とする。
【００１６】
また、本発明は、動画像に対し符号化処理を行う動画像符号化方法であって、予め定められた第１予測動きベクトルに基づいて動きベクトルを生成する動きベクトル生成ステップと、前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記符号化処理の対象となる対象ブロックを符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記対象ブロックに対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象ブロックの画像を符号化する符号化ステップとを有することを特徴とする。
【００１７】
また、本発明は、動画像符号化処理をコンピュータに実行させる動画像符号化プログラムであって、前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて、前記対象領域に対する第１予測動きベクトルを生成する第１予測動きベクトル生成ステップと、前記第１予測動きベクトル生成ステップにおいて生成された前記第１予測動きベクトルに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域を符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記対象領域に対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象領域の画像を符号化する符号化ステップとを有することを特徴とする。
【００１８】
また、本発明は、動画像符号化処理をコンピュータに実行させる動画像符号化プログラムであって、前記符号化処理の対象となる対象領域に隣接する隣接領域の既知の量子化パラメータに基づいて、前記対象領域に対する動きベクトルを生成する動きベクトル生成ステップと、前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記対象領域の画像を符号化する符号化ステップとを有することを特徴とする。
【００１９】
また、本発明は、動画像符号化処理をコンピュータに実行させる動画像符号化プログラムであって、予め定められた第１予測動きベクトルに基づいて動きベクトルを生成する動きベクトル生成ステップと、前記動きベクトル生成ステップにおいて生成された前記動きベクトルに基づいて、前記符号化処理の対象となる対象ブロックを符号化するときに利用する符号化情報を生成する符号化情報生成ステップと、前記符号化情報生成ステップにおいて生成された前記符号化情報に基づいて、前記対象ブロックに対する第２予測動きベクトルを生成する第２予測動きベクトル生成ステップと、前記第２予測動きベクトル生成ステップにおいて生成された前記第２予測動きベクトルに基づいて前記対象ブロックの画像を符号化する符号化ステップとを有することを特徴とする。
【発明の効果】
【００２０】
本発明にかかる動画像符号化装置は、対象となる対象領域に隣接する隣接領域の既知の動きベクトルに基づいて第１予測動きベクトルを生成し、第１予測動きベクトルに基づいて、対象領域に対する動きベクトルを生成するので、対象領域に対する動きベクトル等の情報が得られない場合であっても、動きベクトル検出処理を行うことができるので、精度よくかつ効率的に符号化処理を行うことができる。
【発明を実施するための最良の形態】
【００２１】
以下に、本発明にかかる動画像符号化装置、動画像符号化方法および動画像符号化プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００２２】
（実施の形態１）
図１は、本発明の実施の形態にかかる動画像符号化装置１０の構成を示すブロック図である。動画像符号化装置１０は、動きベクトル検出部１００と、第１予測動きベクトル計算部１０１と、Ｉｎｔｒａ予測部１０２と、Ｉｎｔｅｒ予測部１０３と、モード判定部１０４と、直交変換部（Ｔ）１０５と、量子化部（Ｑ）１０６と、逆量子化部（Ｑ-1）１０７と、逆直交変換部（Ｔ-1）１０８と、予測復号化部（Ｐ-1）１０９と、参照フレームメモリ１１０と、エントロピー符号化部１１１と、第２予測動きベクトル計算部１１２とを備えている。
【００２３】
入力動画像信号１２０は、まず動きベクトル検出部１００に入力される。動きベクトル検出部１００は、マクロブロック毎に、参照フレームメモリ１１０に保存されている参照画像信号１２１を読出す。そして、最適な動き補償パラメータを決定する。ここで、動き補償パラメータとは、動きベクトル、動き補償予測ブロックの形状、および参照フレームの選択に関する情報である。
【００２４】
第１予測動きベクトル計算部１０１は、仮の予測動きベクトルである第１予測動きベクトルを計算する。そして、計算した第１予測動きベクトルと実際の動きベクトルとの差分値を算出する。算出した差分値から、動きベクトルの近似的な符号化コストを計算する。ここで算出された近似的な符号化コストは、動き補償パラメータ決定の際に加味される。なお、動きベクトル検出部１００の詳細については後述する。
【００２５】
動きベクトル検出部１００により最適な動き補償パラメータが決定されると、Ｉｎｔｅｒ予測部１０３は、動き補償処理を行う。動き補償処理では、１画素より細かな動き（例えば、１／２画素精度または１／４画素精度）の検出を行う。また、参照画像信号に対する重み係数の乗算やオフセットの加算などにより、フレーム間の振幅補償処理を行う。その後、輝度信号及び色差信号のそれぞれに対する予測残差信号を生成する。
【００２６】
入力動画像信号１２０は、Ｉｎｔｒａ予測部１０２へも入力される。Ｉｎｔｒａ予測部１０２は、参照フレームメモリ１１０に保存された現フレーム内の符号化済み領域の局所復号画像１２１を読み出す。そして、読み出した局所復号画像に基づいてフレーム内予測処理を行う。
【００２７】
モード判定部１０４は、少なくとも１つのＩｎｔｅｒ予測の候補と、少なくとも１つのＩｎｔｒａ予測の候補を入力する。そして、それぞれの符号化コストを計算し、最適な符号化モードを決定する。
【００２８】
直交変換部１０５は、予測残差信号に対して直交変換を行う。なお、直交変換は、モード判定部１０４によって決定された符号化モードにおいて行う。量子化部１０６は、直交変換後の直交変換係数に対して量子化を行う。
【００２９】
また、第２予測動きベクトル計算部１１２は、第１予測動きベクトル計算部１０１とは独立に第２予測動きベクトルを算出する。そして、算出した第２予測動きベクトルと符号化すべき動きベクトルとの差分値を算出する。算出された差分値は、エントロピー符号化部１１１により符号化される。
【００３０】
エントロピー符号化部１１１は、量子化された直交変換係数に対し、可変長符号や算術符号などのエントロピー符号化を行う。
【００３１】
そして、エントロピー符号化部１１１から符号化データ１２９が出力される。また、動きベクトルなどの符号化モード情報も、エントロピー符号化部１１１により符号化される。そして、エントロピー符号化部１１１から符号化された直交変換係数と併せて出力される。
【００３２】
量子化部１０６で量子化された直交変換係数は、逆量子化部１０７、逆直交変換部１０８、および予測復号化部１０９において局所復号化処理が施される。そして、参照フレームメモリ１１０に参照画像として保存される。
【００３３】
また、エントロピー符号化部１１１で発生したマクロブロック単位の符号量情報は、レート制御部１１３に入力される。レート制御部１１３は、入力された符号量情報に基づいて、フィードバック制御によるレート制御を行う。レート制御部１１３は、動きベクトルＭＶ単位の量子化パラメータ（ＱＰ）を決定する。決定された量子化パラメータＱＰは、量子化部１０６に入力されるとともに、累積加算器１１４に入力される。
【００３４】
累積加算器１１４は、所定期間単位で量子化パラメータＱＰを累積加算し、所定期間毎の平均値を計算する。計算された平均量子化パラメータ値１２２は、動きベクトル検出部１００、Ｉｎｔｒａ予測部１０２、Ｉｎｔｅｒ予測部１０３およびモード判定部１０４のそれぞれに入力される。そして、最適な符号化パラメータや符号化モードの決定に利用される。
【００３５】
図２は、図１において説明した動きベクトル検出部１００の詳細な機能構成を示すブロック図である。動きベクトル検出部１００は、参照アドレス計算部１５０と、予測信号生成部１５１と、動きベクトル（ＭＶ）および参照フレーム識別情報（ＲＥＦ）の符号化コスト計算部１５２と、ＳＡＤ計算部１５３と、符号化コスト計算部１５４と、最適動きベクトル更新部１５５とを有している。
【００３６】
動きベクトル検出部１００においては、参照アドレス計算部１５０は、マクロブロック毎に、動きベクトル探索の中心及び探索範囲を決定する。また、適切な参照フレームを選択する。そして、決定した探索中心、探索範囲、および選択した参照フレームに基づいて、参照画素ブロックのアドレスを計算する。そして、参照アドレス計算部１５０は、参照画素ブロックのアドレス情報と、対応する動きベクトルを出力する。
【００３７】
予測信号生成部１５１は、参照アドレス計算部１５０で計算されたアドレス情報に応じて、参照フレームメモリ１１０から参照画像信号１２１を読み出す。そして、予測画素ブロック信号を生成する。ＳＡＤ計算部１５３は、生成された予測画素ブロック信号と、符号化対象の入力画素ブロック信号との差分絶対値和（ＳＡＤ）を計算する。
【００３８】
一方、ＭＶ／ＲＥＦコスト計算部１５２は、第１予測動きベクトル計算部１０１が計算した第１予測動きベクトルと参照アドレス計算部１５０で計算された動きベクトルとの差分値を符号化するためのコスト（ＭＶコスト）を計算する。また、参照フレームを識別するための情報を符号化するためのコスト（ＲＥＦコスト）を計算する。ＭＶコストは、動きベクトルの差分値を可変長符号化した際の符号量に相当する。また、ＲＥＦコストは、参照フレーム識別情報を可変長符号化した際符号量に相当する。
【００３９】
符号化コスト計算部１５４は、ＳＡＤ計算部１５３によって計算されたＳＡＤ値と、ＭＶ／ＲＥＦコスト計算部１５２によって計算されたＭＶコストとＲＥＦコストとに基づいて、（式１）に示す符号化コストを計算する。ここで、符号化コストは、ＳＡＤ値とＭＶコスト及びＲＥＦコストとの線形和として計算される。
【００４０】
（式１）におけるλは線形和の重み係数である。λは、（式２）に示すように量子化パラメータＱＰにより決定される。量子化パラメータＱＰとしては、累積加算器１１４で計算された、直前の所定単位の平均量子化パラメータ値１２２が用いられる。平均量子化パラメータ値としては、例えば直前の符号化済みフレーム内の平均ＱＰなどを用いる。
【数１】
2006074474.tif 000003
【数２】
2006074474.tif 000004
【００４１】
このように、本実施の形態の動きベクトルおよび符号化コスト計算部１５２は、（式１）及び（式２）で示した動き検出における符号化コスト計算に際して、現マクロブロックの量子化パラメータＱＰではなく、既に符号化済みのマクロブロックの量子化パラメータ値を用いる。
【００４２】
通常、量子化パラメータＱＰは、レート制御のために緩やかに変動する。短時間に急激かつ大幅に量子化パラメータＱＰが変動する頻度は低い。このため、直前符号化済み画像のＱＰ或いはその短時間平均値を用いて符号化コストを計算しても、符号化コストの計算精度の低下は少ない。
【００４３】
また、このように符号化コストを計算することで、現在のマクロブロックの量子化パラメータＱＰを決定するレート制御処理が完了するのを待つことなく、動きベクトル検出を行うことができる。
【００４４】
これにより、符号化効率の低下を抑えつつ、符号化処理順序に大きな自由度を与えることができる。また、符号化処理順序の制約によらず、常に最適な動きベクトル検出を行うことができる。
【００４５】
最適動きベクトル更新部１５５は、計算された符号化コストが最小となるような動きベクトルを保存する。また、このときの参照フレーム番号などを保存する。これらの処理を、マクロブロック毎に参照画素ブロックを切替ながら繰り返し行い、最終的に１つまたは複数の最適な動きベクトル、最適な参照フレーム番号などの、動き補償パラメータ１２３を決定して出力する。
【００４６】
図３−１および図３−２は、動きベクトル予測について説明するための図である。Ｈ．２６４を例に取ると、予測ベクトルはフレーム内で隣接する３つの符号化済みブロックの動きベクトルの中央値（メディアン値）として計算される。
【００４７】
図３−１に示すように、同一フレーム内で、符号化対象ブロック（現ブロック）の左上頂点および右上頂点を基点としたブロックの動きベクトルに基づいて計算する。具体的には、現ブロックの左上頂点に接する左方隣接ブロックＡおよび上方隣接ブロックＢと、現ブロックの右上頂点に接する右上隣接ブロックＣの３つブロックそれぞれの動きベクトルの中央値を計算する。中央値の計算は、水平・垂直それぞれの成分について行われる。これにより、予測ベクトルが計算される。
【００４８】
Ｈ．２６４では、図３−２に示すように、１６×１６画素のマクロブロックを、複数の予測ブロック形状に分割して符号化することが可能である。この場合、現ブロックのブロック形状や、隣接ブロックの形状などによって、予測ベクトルの計算が異なってくる。現ブロックのブロック形状や隣接ブロックの形状が異なると、計算の対象となるブロックの動きベクトルの値が異なるからである。
【００４９】
したがって、現ブロック形状が決定していなければ、精度よく予測動きベクトルを計算することができない。
【００５０】
また、Ｈ．２６４では８×８画素ブロック毎に参照フレームの切り替えも可能である。予測ベクトルの値は、８×８ブロック毎の参照フレームの識別番号や、隣接マクロブロックの符号化モードの違いなどによっても異なってくる。
【００５１】
したがって、関連する全ての隣接ブロックについて、これらの符号化モードに関するパラメータが決定していなければ、精度よく予測動きベクトルを計算することができない。
【００５２】
本実施の形態の動画像符号化装置１０においては、第１予測動きベクトル計算部１０１および第２予測動きベクトル計算部１１２を別個に備えており、第１予測動きベクトル計算部１０１および第２予測動きベクトル計算部１１２はそれぞれ独立に動きベクトルを計算する。具体的には、第１予測動きベクトル計算部１０１は、符号化処理の因果律の許す範囲内で近似的な第１予測動きベクトルを計算する。また、第２予測動きベクトル計算部１１２は、符号化および復号化において共通の動きベクトル予測方法により第２予測動きベクトルを計算する。
【００５３】
このように、第１予測動きベクトル計算部１０１は、第２予測動きベクトル計算部１１２により第２予測動きベクトルが算出されていない場合であっても、独立に第１予測動きベクトルを計算することができる。すなわち、動きベクトル検出部１００においては、第２予測動きベクトル計算部１１２により第２予測動きベクトルが算出されていない場合であっても、第１予測動きベクトル計算部１０１によって予測された第１予測動きベクトルに基づいて現マクロブロックの動きベクトルを算出することができる。
【００５４】
これにより、符号化効率の低下を抑えつつ、符号化処理順序に大きな自由度を与えることが可能となる。換言すれば、第１予測動きベクトル計算部１０１および第２予測動きベクトル計算部１１２を備えることにより、符号化装置あるいは符号化ソフトウェア等の実装上の制約にとらわれず、常に最適な動きベクトル検出を行うことが可能となる。
【００５５】
第１予測動きベクトル計算部１０１が動きベクトルを予測する方法としては、以下のようなものがあげられる。
（例１）全てのマクロブロックがフレーム間符号化されるものと仮定して、仮予測動きベクトルを計算する。
（例２）例１に加えて、全てのマクロブロックにおける特定のブロック形状（例えば１６×１６）での最適な動きベクトルを用いて仮予測動きベクトルを計算する。
（例３）直前のマクロブロックあるいはブロックの動きベクトルを仮予測動きベクトルとする。
（例４）第１予測動きベクトルを固定値（例えば(０，０)）とする。
【００５６】
（例１）によれば、符号化対象マクロブロックの隣接マクロブロックの符号化モードによらずに第１予測動きベクトルを計算することができる。このため、フレーム内予測処理、モード判定処理および動き検出処理を分離することができる。したがって、例えばこれらの処理をパイプライン処理化することができる。これにより、処理の効率化を図ることができる。
【００５７】
また、（例２）によれば、隣接マクロブロックのブロック分割形状によらず、第１予測動きベクトルを計算できる。このため、各マクロブロックの最適なブロック分割形状を決定する処理と、動き検出処理とを分離することができる。したがって、例えば、ブロック分割形状決定処理と動き検出処理とをパイプライン処理化することができる。これにより、処理の効率化を図ることができる。
【００５８】
また、（例３）によれば、第１予測動きベクトル計算部１０１は、直前のマクロブロックまたは直前のブロックの動きベクトルを第１予測動きベクトルとして計算する。これにより、既に計算されている複数の動きベクトルの中央値を第１予測動きベクトルとして計算する場合に比べて、動きベクトル検出部１００による動きベクトル予測のための処理量を削減することができる。
【００５９】
また、（例４）によれば、動きベクトル予測の計算が不要となる、したがって、さらに演算量を削減することができる。
【００６０】
ここで、動画像符号化装置１０中の動きベクトル検出部１００の処理後の処理を担当する各部１０２〜１１１は、特許請求の範囲に記載の符号化情報生成手段に相当する。
【００６１】
なお、上記（例１）から（例４）は、実際の実装上の制約に合わせて選択可能である。また、（例１）から（例４）を適応的に切り替えてもよい。また、第１予測動きベクトル計算部１０１による処理は上記に限定されるものではなく、これ以外の方法であってもよい。
【００６２】
図４は、実施の形態１にかかる動画像符号化装置１０における動画像符号化処理を示すフローチャートである。まず、動画像符号化装置１０の動きベクトル検出部１００に入力動画像が１フレーム入力される（ステップＳ１００）。次に、動きベクトル検出部１００は、前フレームの平均量子化パラメータＱＰを取得する（ステップＳ１０１）。そして、その量子化パラメータＱＰを用いて計算されるコストを用いて、該フレーム内の全ての画素ブロックの動きベクトルを検出する（ステップＳ１０２）。
【００６３】
次に、マクロブロック毎の符号化処理を１フレーム分行う。具体的には、まず、Ｉｎｔｒａ予測部１０２は、符号化対象マクロブロックのフレーム内予測処理を行う（ステップＳ１０３）。次に、モード判定部１０４は、符号化モードを決定する（ステップＳ１０４）。具体的には、フレーム内符号化およびフレーム間符号化のいずれかを選択する。また、予測モード、ブロック分割形状などを決定する。
【００６４】
次に、決定された符号化モードでの予測残差信号に対して、直交変換部１０５および量子化部１０６により直交変換処理及び直交変換係数の量子化が行われる（ステップＳ１０５）。量子化された直交変換係数は、逆量子化及び逆直交変換が施された後に予測信号と加算され、局所復号画像（ローカルデコード画像）が生成される（ステップＳ１０６）。そして、参照フレームメモリ１１０に保存される。また、エントロピー符号化部１１１は、量子化された直交変換係数をエントロピー符号化する（ステップＳ１０７）。そして、符号化結果が出力される。
【００６５】
レート制御部１１３は、マクロブロック毎のエントロピー符号化による発生符号量と目標符号量との誤差をレート制御処理によりフィードバックする（ステップＳ１０８）。これにより、次のマクロブロックの量子化パラメータＱＰが決定される。
【００６６】
以上、ステップＳ１０３からステップＳ１０８までの処理を該ピクチャ中の全てのマクロブロックについて順次行う（ステップＳ１０９）。以上により１フレームの符号化が終了し、逐次入力されるフレームの符号化を順次同様に行う。
【００６７】
以上のように、本実施の形態の動きベクトル検出部１００によれば、既に符号化された画像の平均量子化パラメータを用いることにより、符号化対象マクロブロックに対する動きベクトルや符号化モードを決定することができる。
【００６８】
また、既に符号化された画像の平均量子化パラメータを利用して第１予測動きベクトルを計算することができるので、第２予測動きベクトル計算部１１２により第２予測動きベクトルが計算される前のタイミングで動きベクトル検出部１００による動きベクトル検出等の処理を行うことができる。これにより、パイプライン処理等の処理順序の自由度を高めることができる。
【００６９】
図５は、図４に示す動きベクトル検出処理（ステップＳ１０２）における動きベクトル検出部１００および第１予測動きベクトル計算部１０１の詳細な処理を示すフローチャートである。動きベクトル検出処理は、マクロブロック毎に、最適なブロック分割形状、８×８ブロック毎の最適な参照フレーム選択、及び各分割ブロックの動きベクトルを決定する処理である。
【００７０】
ステップＳ１０１において前フレームの平均ＱＰを取得すると、動きベクトルおよび符号化コスト計算部１５２は、該フレーム内の動きベクトルコストの重み係数λを（式２）により計算する（ステップＳ２００）。λの計算は、フレーム毎に１度行えばよい。
【００７１】
次に、予測信号生成部１５１は、符号化対象マクロブロックの画素信号を読み出す（ステップＳ２０１）。そして、読み出した符号化対象マクロブロックの画素信号を一時的なメモリ（図示せず）に保存する。次に、参照フレームが複数ある場合は、順次複数の参照フレームから１つのフレームを設定する（ステップＳ２０２）。
【００７２】
次に、第１予測動きベクトル計算部１０１は、現在の符号化対象マクロブロックに対し設定された参照フレームに基づいて、第１予測動きベクトルを計算する（ステップＳ２０３）。第１予測動きベクトルの計算においては、上述の（例１）から（例４）のうちの１つを利用する。予測動きベクトルの計算は、マクロブロック毎および参照フレーム毎に行われる。また、複数のブロック形状において共通の第１予測動きベクトルが使用される。これにより、第１予測動きベクトル計算の演算量を削減することができる。
【００７３】
次に、参照アドレス計算部１５０は、動きベクトル探索の中心位置を決定する（ステップＳ２０４）。具体的には、予測ベクトルの指す位置を探索中心位置として決定する。
【００７４】
なお、他の例としては、現在のマクロブロックとフレーム内で同一の位置を探索中心位置として決定してもよい。または、他の例の両者のうち予測誤差の小さくなる位置を探索中心位置として決定してもよい。また他の例としては、事前に入力画像の分析（例えば荒い動き検出）を行うことにより探索中心位置を決定してもよい。
【００７５】
次に、参照アドレス計算部１５０は、マクロブロック内の予測ブロック形状を設定する（ステップＳ２０５）。次に、参照アドレス計算部１５０は、上述の処理により設定された参照フレーム、探索中心およびブロック形状に応じて、探索範囲内の参照ブロックを読み出すためのアドレスを計算する（ステップＳ２０６）。
【００７６】
次に、予測信号生成部１５１は、参照アドレス計算部１５０によって計算されたアドレスに基づいて参照ブロック信号を読み出す（ステップＳ２０７）。次に、ＳＡＤ計算部１５３は、Ｓ２０１で読み出されて一時メモリに保存された符号化対象画像信号と、Ｓ２０７で読み出された参照画像信号との差分絶対値和ＳＡＤを計算する（ステップＳ２０８）。
【００７７】
次に、符号化コスト計算部１５４は、符号化コストを計算する（ステップＳ２０９）。具体的には、ステップＳ２０３において第１予測動きベクトル計算部１０１が算出した第１予測動きベクトルと、ステップＳ２０６において参照アドレス計算部１５０が設定した参照アドレスから決定される動きベクトルとの差分を符号化するための符号化コスト、フレーム識別情報を符号化するための符号化コスト、及び予測ブロック形状を符号化するための符号化コストなどを、ステップＳ２０８において計算されたＳＡＤの値に重み付き加算することにより符号化コストを計算する。
【００７８】
ここで重み係数λは、上述した通りフレーム毎に１回だけ直前のフレームの平均ＱＰを用いて計算される。
【００７９】
最適動きベクトル更新部１５５は、ステップＳ２０９において計算された符号化コストが最小となる動き補償パラメータを、最適な動き補償パラメータとする。すなわち、最適な動きベクトルを順次更新する（ステップＳ２１０）。
【００８０】
以上の処理を、探索範囲内の参照画素ブロック、全ての取り得るブロック分割形状及び全ての取り得る参照フレームの、全ての組み合わせについて行う（ステップＳ２１１〜ステップＳ２１３）。
【００８１】
以上の処理により、最適な動き補償パラメータを決定するための動きベクトル検出部１００および第１予測動きベクトル計算部１０１による処理が完了する。
【００８２】
図６は、図４において説明したエントロピー符号化処理（ステップＳ１０７）におけるエントロピー符号化部１１１および第２予測動きベクトル計算部１１２の詳細な処理を示すフローチャートである。エントロピー符号化処理においては、マクロブロック毎に符号化シンタックスを生成する。そして、それぞれのシンタックスエレメントをエントロピー符号化する。
【００８３】
まず、第２予測動きベクトル計算部１１２は、既に符号化された複数の隣接マクロブロックの動きベクトルや、動き補償ブロック形状、符号化モードなど確定した符号化パラメータを読み出す（ステップＳ３００）。そして、それらに基づいて第２予測動きベクトルを計算する（ステップＳ３０１）。
【００８４】
次に、エントロピー符号化部１１１は、符号化すべき動きベクトルを読み出す（ステップＳ３０２）。そして、第２予測動きベクトルと、符号化すべき動きベクトルとの差分値を計算する（ステップＳ３０３）。計算された差分値、すなわち差分ベクトルをエントロピー符号化する（ステップＳ３０４）。また、動きベクトル以外の符号化パラメータに関する情報も同様に符号化する（ステップＳ３０５）。予測残差信号の量子化された直交変換係数を順次エントロピー符号化する（ステップＳ３０６）。そしてこれらエントロピー符号化された符号化データを順次出力する（ステップＳ３０７）。
【００８５】
ここで、ステップＳ３０１における第２予測動きベクトル計算の方法は、符号化側及び復号化側で共通である。すなわち、復号化側においても、予測ベクトルが計算される。そして、復号化された差分ベクトルと予測ベクトルとを加算することによって動きベクトルの復号化が行われる。
【００８６】
図７は、本実施の形態にかかる動画像符号化装置１０における動画像符号化処理の順序を示している。図７において横軸は、時間を示している。また、「ＩＸ」（Ｘ＝０，１・・・）は、フレーム内符号化ピクチャを示している。また、「ＰＸ」（Ｘ＝０，１・・・）は、前方予測ピクチャを示している。また、「ＢＸ」（Ｘ＝０，１・・・）は、双方向予測ピクチャを示している。図７は、Ｉ０フレーム，Ｐ１フレーム，Ｐ２フレームの順にフレームが入力される様子を示している。動画像符号化装置１０は、１フレーム遅延で符号化処理を行う。
【００８７】
符号化処理は、フレーム内のマクロブロック毎に処理が完結している。すなわち、マクロブロック０番（ＭＢ０)からマクロブロックｎ番（ＭＢｎ）まで順次符号化する。マクロブロック内の処理は、動き検出（ＭＥ）、フレーム内予測（Intra）、モード判定（Mode）、直交変換（Ｔ）、量子化（Ｑ）、逆量子化（Ｑ-1）、逆直交変換（Ｔ-1）、エントロピー符号化（ＶＬＣ）、レート制御（ＲＣ）の順に順次行う。
【００８８】
本実施の形態にかかる動画像符号化装置１０は、このようにフレーム内のマクロブロック単位で符号化処理を完結させる。したがって、符号化対象マクロブロックに対する符号化処理において、符号化対象マクロブロックに隣接する符号化済みマクロブロックの情報や符号化済みマクロブロックの量子化パラメータＱＰの値などを利用することができる。したがって、これらの値を利用して最適な動きベクトル検出や、モード判定などを行うことができる。
【００８９】
図８は、本実施の形態にかかる動画像符号化装置１０のハードウェア構成を示す図である。動画像符号化装置１０は、ハードウェア構成として、動画像符号化装置１０における動画像符号化処理を実行する動画像符号化プログラムなどが格納されているＲＯＭ５２と、ＲＯＭ５２内のプログラムに従って動画像符号化装置１０の各部を制御するＣＰＵ５１と、動画像符号化装置１０の制御に必要な種々のデータを記憶するＲＡＭ５３と、ネットワークに接続して通信を行う通信I／Ｆ５７と、各部を接続するバス６２とを備えている。
【００９０】
先に述べた動画像符号化装置１０における動画像符号化プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フロッピー（Ｒ）ディスク（ＦＤ）、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録されて提供されてもよい。
【００９１】
この場合には、動画像符号化プログラムは、動画像符号化装置１０において上記記録媒体から読み出して実行することにより主記憶装置上にロードされ、上記ソフトウェア構成で説明した各部が主記憶装置上に生成されるようになっている。
【００９２】
また、本実施の形態の動画像符号化プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
【００９３】
以上、本発明を実施の形態を用いて説明したが、上記実施の形態に多様な変更または改良を加えることができる。
【００９４】
（実施の形態２）
次に実施の形態２にかかる動画像符号化装置１０について説明する。実施の形態２にかかる動画像符号化装置１０は、１フレームの符号化処理を３段のパイプライン処理により行う。図９は、実施の形態２にかかる動画像符号化装置１０の処理の順序およびタイミングを示している。
【００９５】
本実施の形態にかかるパイプライン処理においては、動き検出（ＭＥ）、フレーム内予測（Ｉｎｔｒａ）から逆直交変換（Ｔ-1）まで（ｃｏｄｉｎｇ）、エントロピー符号化（ＶＬＣ）とレート制御（ＲＣ）の３つの処理に分割する。そして、それぞれマクロブロック単位に処理を行う。
【００９６】
このパイプライン処理においては、動き検出（ＭＥ１）処理時点では、対応する現マクロブロックに対するｃｏｄｉｎｇ１およびＶＬＣ／ＲＣ１は行われていない。したがって、直前のマクロブロック符号化の最後にレート制御（ＲＣ）で決定される現マクロブロックの量子化パラメータＱＰや、モード判定（Ｍｏｄｅ）で決定される直前のマクロブロックの符号化モードなどが確定していない。
【００９７】
すなわち、これらの情報に基づく予測ベクトルや動きベクトル等の符号化コストの重み係数を厳密計算することができない。
【００９８】
しかし、本実施の形態にかかる動画像符号化装置１０においては、第１予測動きベクトル計算部１０１は、量子化パラメータＱＰなどの値によらずに第１予測動きベクトルを計算することができ、かつ既に符号化済み画像の量子化パラメータＱＰなどを用いて、動きベクトル等の符号化コストの重み係数を決定することができる。このように、パイプライン遅延を気にせずに、高精度な動きベクトル検出を行うことができる。
【００９９】
なお、実施の形態２にかかる動画像符号化装置１０のこれ以外の構成および処理は、実施の形態１にかかる動画像符号化装置１０の構成および処理と同様である。
【０１００】
（実施の形態３）
次に実施の形態３にかかる動画像符号化装置１０について説明する。実施の形態３にかかる動画像符号化装置１０は、フレーム内のマクロブロック毎の符号化処理を該マクロブロック毎に完結させるのにかえて、各フレーム中の全てのマクロブロックに対し所定の処理を行い、その後全てのマクロブロックに対し次の処理を行う。図１０は、実施の形態３にかかる処理の順序およびタイミングを示す図である。
【０１０１】
具体的には、まずマクロブロック毎の動きベクトル検出（ＭＥ）を１フレーム分全て先に行い、次にフレーム内予測（Intra）から逆直交変換（Ｔ-1）まで符号化処理を、１フレーム内の全てのマクロブロックについて行い、最後にエントロピー符号化（ＶＬＣ）及びレート制御（ＲＣ）を、１フレーム内の全てのマクロブロックについて行う。
【０１０２】
この場合、実施の形態２にかかる動画像符号化装置１０と同様に、動きベクトル検出（ＭＥ）時点では、隣接マクロブロックの符号化モード（例えばフレーム内符号化かフレーム間符号化の別）や、該マクロブロックに対する量子化パラメータＱＰなどが決定していない。したがって、量子化パラメータＱＰ等を用いた動きベクトル検出は困難である。
【０１０３】
しかし、実施の形態２において説明したのと同様、動画像符号化装置１０の第１予測動きベクトル計算部１０１は、量子化パラメータＱＰ等によらずに第１予測動きベクトルを計算することができ、かつ、符号化済み画像のＱＰ等を用いて、動きベクトル等の符号化コストの重み係数を決定することができる。したがって、高精度な動きベクトル検出を行いつつ、図１０に示すように、各処理をフレーム内の全マクロブロックに対し一括で行うことができる。
【０１０４】
図１０に示す順序およびタイミングで符号化処理を行う場合、プロセッサなどで順次符号化処理を行う際に各処理の命令コードを頻繁に呼び出す必要がなく、処理の効率化を図ることができる。また、命令キャッシュのヒット率の向上により処理の高速化、外部メモリからの命令コードロードのバンド幅の削減など、符号化効率を低下させることなく、符号化処理の速度を向上させることができる。
【０１０５】
なお、実施の形態３にかかる動画像符号化装置１０のこれ以外の構成および処理は、実施の形態２にかかる動画像符号化装置１０の構成および処理と同様である。
【０１０６】
（実施の形態４）
次に、実施の形態４にかかる動画像符号化装置１０について説明する。実施の形態４にかかる動画像符号化装置１０は、双方向予測ピクチャＢを用いて符号化する。また、実施の形態４にかかる動画像符号化装置１０は、テレスコピックサーチにより符号化処理を行う。
【０１０７】
図１１は、実施の形態４にかかる動画像符号化装置１０の符号化処理の順序およびタイミングを示している。フレーム内符号化および前方予測においては、それぞれ入力順序で直前のＩフレームまたはＰフレームを参照フレームとして用いる。
【０１０８】
また、双方向予測においては、入力順序で直前のＩフレームとＰフレームのうちいずれか一方のフレームと直後のＩフレームとＰフレームのうちいずれか一方のフレームの２つのフレームを参照フレームとして用いる。
【０１０９】
図１１においては、参照フレームから符号化対象フレームへの関係を矢印で示している。すなわち、参照フレームから符号化対象フレームに矢印を示している。
【０１１０】
Ｂピクチャでは、時間的に未来のフレームからの予測を行う。したがって、図１１に示すように、入力順序と符号化順序が異なる。
【０１１１】
また、２フレーム以上隔ててフレーム間予測を行う。したがって、このフレーム間における変化に追随するためには、動きベクトル探索時に、参照フレームと符号化対象フレームとのフレーム間距離に応じて、より広い探索範囲から動きベクトル探索を行う必要がある。また、一般に動きベクトル検出の演算量は、探索範囲に応じて多くなる。
【０１１２】
そこで、上記問題を解決するためにテレスコピックサーチ手法が用いられる場合がある。例えば、図１１において、Ｐ５を符号化対象フレーム、Ｉ２フレームを参照フレームとした３フレーム隔てた動きベクトル検出を行う場合には、まずＩ２フレームからＢ３フレームへの動きベクトルを検出する。次に、Ｉ２フレームからＢ３フレームへの動きベクトルを用いて、Ｉ２フレームからＢ４フレームへの動きベクトル探索における探索中心をマクロブロック毎に決定する。そして、その探索中心の周辺でＩ２フレームからＢ４フレームへの動きベクトル探索を行う。
【０１１３】
そして、Ｉ２フレームからＢ４フレームへの動きベクトルを用いて、Ｉ２フレームからＰ５フレームへの動きベクトル探索の探索中心をマクロブロック毎に決定し、その探索中心の周辺でＩ２フレームからＰ５フレームへの動きベクトルの探索を行う。
【０１１４】
テレスコピックサーチによれば、以上説明したように、フレーム間距離の大きな動きベクトルも、少ない探索回数で高精度に検出することができる。
【０１１５】
テレスコピックサーチを行う場合、上述したように動きベクトル検出の順序が重要となる。図１２は、テレスコピックサーチにおける動きベクトル検出にかかるタイミングチャートの例を示ししている。
【０１１６】
この例では、前方向動きベクトル検出については、フレームが入力されると同時に行う。即ち、Ｂ３フレームが入力されると同時に、Ｉ２フレームからＢ３フレームへの動きベクトルが検出される。
【０１１７】
また、Ｂ４フレームの入力タイミングでは、Ｉ２フレームからＢ３フレームへの動きベクトルを用いて探索中心をマクロブック毎に決定する。そして、Ｉ２フレームからＢ４フレームへの動きベクトルが検出される。
【０１１８】
さらに、Ｐ５フレームの入力タイミングでは、Ｉ２フレームからＢ４フレームへの動きベクトルを用いて探索中心をマクロブック毎に決定する。そして、Ｉ２フレームからＰ５フレームへの動きベクトルが検出される。
【０１１９】
また、双方向ピクチャの後方予測については、Ｂ３フレームの入力タイミングに、Ｉ２フレームからＢ１フレームへの動きベクトルが検出される。そして、Ｂ４フレームの入力タイミングに、Ｉ２フレームからＢ１フレームへの動きベクトルを用いて探索中心をマクロブック毎に決定する。そして、Ｉ２フレームからＢ０フレームへの動きベクトルが検出される。
【０１２０】
動きベクトル検出以外の残る符号化処理は、ＩフレームおよびＰフレームについては、入力から１フレーム遅延で行われる。また、Ｂフレームについては、ＩフレームまたＰフレームのフレーム間隔＋１フレームの遅延で実行される。
【０１２１】
以上のように、テレスコピックサーチを用いて、フレーム並べ替えを伴う符号化を行う場合、動きベクトル検出と残る符号化処理とは、必ずしも同一のタイミングで実施されるとは限らない。すなわち、大部分の動きベクトル検出は、残る符号化処理に先立って実行される。
【０１２２】
従って、動きベクトル検出の際に、レート制御で決定される量子化パラメータや、隣接マクロブロックの符号化モードなどは確定していない。すなわち、これらに基づいて計算される符号化コストを用いた動きベクトル検出を行うことができない。
【０１２３】
しかし、本実施の形態にかかる動画像符号化装置１０の第１予測動きベクトル計算部１０１は、符号化対象マクロブロックの量子化パラメータＱＰなどの値によらずに第１予測動きベクトルを決定することができ、既に符号化済み画像の量子化パラメータＱＰなどを用いて動きベクトル等の符号化コストの重み係数を決定することができる。
【０１２４】
このように、高精度な動きベクトル検出を行いつつ、図１１に示したように、動きベクトル検出と残る符号化処理とが異なるタイミングで実行されるテレスコピックサーチにおいても、高精度な動きベクトル検出を行うことが可能となる。
【０１２５】
なお、実施の形態４にかかる動画像符号化装置１０のこれ以外の構成および処理は、実施の形態２にかかる動画像符号化装置１０の構成および処理と同様である。
【図面の簡単な説明】
【０１２６】
【図１】動画像符号化装置１０の構成を示すブロック図である。
【図２】図１において説明した動きベクトル検出部１００の詳細な機能構成を示すブロック図である。
【図３−１】動きベクトル予測について説明するための図である。
【図３−２】動きベクトル予測について説明するための図である。
【図４】実施の形態１にかかる動画像符号化装置１０における動画像符号化処理を示すフローチャートである。
【図５】図４に示す動きベクトル検出処理（ステップＳ１０２）における動きベクトル検出部１００および第１予測動きベクトル計算部１０１の詳細な処理を示すフローチャートである。
【図６】図４において説明したエントロピー符号化処理（ステップＳ１０７）におけるエントロピー符号化部１１１および第２予測動きベクトル計算部１１２の詳細な処理を示すフローチャートである。
【図７】本実施の形態にかかる動画像符号化装置１０における動画像符号化処理の順序を示す図である。
【図８】本実施の形態にかかる動画像符号化装置１０のハードウェア構成を示す図である。
【図９】実施の形態２にかかる動画像符号化装置１０の処理の順序およびタイミングを示す図である。
【図１０】実施の形態３にかかる処理の順序およびタイミングを示す図である。
【図１１】実施の形態４にかかる動画像符号化装置１０の符号化処理の順序およびタイミングを示す図である。
【図１２】テレスコピックサーチにおける動きベクトル検出にかかるタイミングチャートの例を示す図である。
【符号の説明】
【０１２７】
１０  動画像符号化装置
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５７  通信I／Ｆ
６２  バス
１００  動きベクトル検出部
１０１  第１予測動きベクトル計算部
１０２  Ｉｎｔｒａ予測部
１０３  Ｉｎｔｅｒ予測部
１０４  モード判定部
１０５  直交変換部
１０６  量子化部
１０７  逆量子化部
１０８  逆直交変換部
１０９  予測復号化部
１１０  参照フレームメモリ
１１１  エントロピー符号化部
１１２  第２予測動きベクトル計算部
１１３  レート制御部
１１４  累積加算器
１５０  参照アドレス計算部
１５１  予測信号生成部
１５２  ＭＶ／ＲＥＦ符号化コスト計算部
１５３  ＳＡＤ計算部
１５４  符号化コスト計算部
１５５  最適動きベクトル更新部
【図１】
2006074474.tif 000005
【図２】
2006074474.tif 000006
【図３−１】
2006074474.tif 000007
【図３−２】
2006074474.tif 000008
【図４】
2006074474.tif 000009
【図５】
2006074474.tif 000010
【図６】
2006074474.tif 000011
【図７】
2006074474.tif 000012
【図８】
2006074474.tif 000013
【図９】
2006074474.tif 000014
【図１０】
2006074474.tif 000015
【図１１】
2006074474.tif 000016
【図１２】
2006074474.tif 000017