(57)【要約】【課題】動き推定処理によって特定された動きベクトル情報を表現するために必要な情報量を低減する。【解決手段】符号化側動き推定部１０３は、符号化対象領域と復号済みの領域との間で、符号化対象領域と参照領域との間の位置関係を示す第１の動きベクトル情報を特定する。復号側動き推定部１０４は、符号化対象領域に隣接する復号済みの領域と復号済みの領域との間で、符号化対象領域と参照領域との間の位置関係を示す第２の動きベクトル情報を特定する。動きベクトル情報構成部１０５は、予測動きベクトル情報と予測動きベクトル情報に基づいて特定される探索の開始位置情報とを、符号化側動き推定部１０３および復号側動き推定部１０４に供給し、動きベクトル情報を再探索する場合には、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、符号化側動き推定部１０３および復号側動き推定部１０４の少なくとも一方に供給する。【選択図】図１
2012209705.tif 000002
【特許請求の範囲】
【請求項１】
画像の動き推定処理を行う画像符号化装置であって、
符号化対象となっている領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第１の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第１の動きベクトル情報を特定する符号化側動き推定部と、
符号化対象となっている領域に隣接、もしくは所定の位置関係にある復号済みの領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第２の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第２の動きベクトル情報を特定する復号側動き推定部と、
予測動きベクトル情報と予測動きベクトル情報に基づいて特定される探索の開始位置情報とを、前記符号化側動き推定部および前記復号側動き推定部に供給し、動きベクトル情報を再探索する場合には、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に供給する動きベクトル情報構成部と、
前記符号化側動き推定部、前記復号側動き推定部および前記動きベクトル情報構成部を制御し、動きベクトル情報の再探索の要否を判断し、再探索が必要である場合は、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に供給するように前記動きベクトル情報構成部に指示する符号化制御部と、
を備えることを特徴とする画像符号化装置。
【請求項２】
画像の動き補償を行う動き補償部と、
所定の構文構造に基づいて符号化し、符号化ビット列を生成する符号化部とをさらに備え、
前記動きベクトル情報構成部は、最終的に使用する動きベクトル情報を特定して前記動き補償部に供給するとともに、前記予測動きベクトル情報で表現できる部分、および前記復号側動き推定部によって特定される前記第２の動きベクトル情報で表現できる部分の少なくとも一方を、最終的に使用する動きベクトル情報から取り除く動きベクトル情報構成処理を行うことにより、複合残差動きベクトル情報を生成し、前記符号化部に供給することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記符号化制御部は、所定の処理単位で、最終的に使用する動きベクトル情報を求めるための少なくとも１つの動作モードを特定するための動作モード情報に基づいて、前記符号化側動き推定部、前記復号側動き推定部および前記動きベクトル情報構成部の制御、動きベクトル情報の再探索の要否の判断、再探索が必要である場合の前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に対する新たな予測動きベクトル情報と新たな探索の開始位置情報の供給を行い、
前記動きベクトル情報構成部は、所定の処理単位で、最終的に複合残差ベクトル情報が生成されるまでの前記符号化側動き推定部および前記復号側動き推定部の動作と動きベクトル情報の再探索の有無を識別するための前記動作モード情報を生成し、前記符号化部に供給し、
前記符号化部は、さらに前記動作モード情報を符号化することを特徴とする請求項２に記載の画像符号化装置。
【請求項４】
画像の動き推定処理を行う画像符号化方法であって、
符号化対象となっている領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第１の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第１の動きベクトル情報を特定する符号化側動き推定ステップと、
符号化対象となっている領域に隣接、もしくは所定の位置関係にある復号済みの領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第２の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第２の動きベクトル情報を特定する復号側動き推定ステップと、
予測動きベクトル情報と予測動きベクトル情報に基づいて特定される探索の開始位置情報とを、前記符号化側動き推定部および前記復号側動き推定部に供給し、動きベクトル情報を再探索する場合には、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に供給する動きベクトル情報構成ステップと、
動きベクトル情報の再探索の要否を判断し、再探索が必要である場合は、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、新たな予測動きベクトル情報と新たな探索の開始位置情報にもとづいて、前記符号化側動き推定ステップおよび前記復号側動き推定ステップの少なくとも一方を繰り返すステップと、
を備えることを特徴とする画像符号化方法。
【請求項５】
コンピュータに、画像の動き推定処理を実行させる画像符号化プログラムであって、
符号化対象となっている領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第１の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第１の動きベクトル情報を特定する符号化側動き推定ステップと、
符号化対象となっている領域に隣接、もしくは所定の位置関係にある復号済みの領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第２の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第２の動きベクトル情報を特定する復号側動き推定ステップと、
予測動きベクトル情報と予測動きベクトル情報に基づいて特定される探索の開始位置情報とを、前記符号化側動き推定部および前記復号側動き推定部に供給し、動きベクトル情報を再探索する場合には、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に供給する動きベクトル情報構成ステップと、
動きベクトル情報の再探索の要否を判断し、再探索が必要である場合は、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、新たな予測動きベクトル情報と新たな探索の開始位置情報にもとづいて、前記符号化側動き推定ステップおよび前記復号側動き推定ステップの少なくとも一方を繰り返すステップと、
をコンピュータに実行させることを特徴とする画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像の符号化技術に関し、特に動画像の画面間もしくは画面内で動きベクトル情報を検出し、符号化する技術に関する。
【背景技術】
【０００２】
一般に、ＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４に代表される動画像符号化を行う際には、動画像の画面間に存在する相関性を利用するために、双予測等の動き推定処理により、動きベクトル情報を検出し、この情報に基づいて予測ピクチャを生成する。これにより、予測ピクチャと符号化対象ピクチャとの残差情報を低減した上で符号化を行っている。
【０００３】
一般的な動き推定処理である符号化側動き推定処理では、符号化対象ピクチャを所定の矩形領域（例えば、マクロブロック）で隙間なく分割する。そして、各矩形領域について、参照ピクチャ内の、対応する各矩形領域を平行移動させながら、ブロックマッチング法等を利用して、参照ピクチャ内で最も類似する領域を特定する。そして、それら領域間の距離を動きベクトル情報として検出する。
【０００４】
また、このように検出された動きベクトル情報を符号化する際に、現在符号化対象となっている領域に隣接している領域の動きベクトル情報から予測して予測動きベクトル情報（ｐｍｖ：  ｐｒｅｄｉｃｔｉｖｅ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ）を生成し、符号化すべき特定された動きベクトル情報から予測動きベクトル情報を減算して得られる差分動きベクトル情報（ｍｖｄ：  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｄｉｆｆｅｒｅｎｃｅ）を符号化する（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】ＷＯ０３/０６３５０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記手法では一般に、予測動きベクトル情報は、現在符号化対象となっている矩形領域に隣接する各矩形領域で用いられた各動きベクトル情報のうち、各ベクトル成分の中央値となる成分がそれぞれ選択されることによって得られたものである。したがって、予測動きベクトル情報は、特定された動きベクトル情報との間において必ずしも十分な相関性を示していない場合には、差分動きベクトル情報を表現するために必要な情報量がかえって増大してしまう。また、予測動きベクトル情報と特定された動きベクトル情報との間に一定の相関性を示すことがあっても、より細かい位置精度において良い近似とは限らず、十分に差分動きベクトル情報の情報量が抑制されているとは言い難かった。
【０００７】
本発明はこうした状況に鑑みなされたものであり、その目的は、動き推定処理によって特定された動きベクトル情報を表現するために必要な情報量を低減する技術を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある態様の画像符号化装置は、画像の動き推定処理を行う画像符号化装置であって、符号化対象となっている領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第１の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第１の動きベクトル情報を特定する符号化側動き推定部（１０３）と、符号化対象となっている領域に隣接、もしくは所定の位置関係にある復号済みの領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第２の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第２の動きベクトル情報を特定する復号側動き推定部（１０４）と、予測動きベクトル情報と予測動きベクトル情報に基づいて特定される探索の開始位置情報とを、前記符号化側動き推定部および前記復号側動き推定部に供給し、動きベクトル情報を再探索する場合には、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に供給する動きベクトル情報構成部（１０５）と、前記符号化側動き推定部、前記復号側動き推定部および前記動きベクトル情報構成部を制御し、動きベクトル情報の再探索の要否を判断し、再探索が必要である場合は、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に供給するように前記動きベクトル情報構成部に指示する符号化制御部（１１６）と、を備える。
【０００９】
本発明の別の態様は、画像符号化方法である。この方法は、画像の動き推定処理を行う画像符号化方法であって、符号化対象となっている領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第１の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第１の動きベクトル情報を特定する符号化側動き推定ステップと、符号化対象となっている領域に隣接、もしくは所定の位置関係にある復号済みの領域に含まれる信号と、復号済みの領域に含まれる信号との間で、探索の開始位置情報に基づいて、第２の動き推定処理により、符号化対象となっている領域と、参照される領域との間の位置関係を示す、第２の動きベクトル情報を特定する復号側動き推定ステップと、予測動きベクトル情報と予測動きベクトル情報に基づいて特定される探索の開始位置情報とを、前記符号化側動き推定部および前記復号側動き推定部に供給し、動きベクトル情報を再探索する場合には、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、前記符号化側動き推定部および前記復号側動き推定部の少なくとも一方に供給する動きベクトル情報構成ステップと、動きベクトル情報の再探索の要否を判断し、再探索が必要である場合は、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、新たな予測動きベクトル情報と新たな探索の開始位置情報にもとづいて、前記符号化側動き推定ステップおよび前記復号側動き推定ステップの少なくとも一方を繰り返すステップと、を備える。
【００１０】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によれば、予測動きベクトル情報の精度を向上させるとともに、必要とする動きベクトル情報を再構成するために必要な情報量を低減できる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係る画像符号化装置の各構成要素間の基本的な接続関係を示す図である。
【図２】実施の形態１に係る画像符号化装置の各構成要素と符号化制御部との接続関係を示す図である。
【図３】処理対象の処理順序の一例を示す図である。
【図４】参照ピクチャにおける動きベクトル情報の探索の様子を示す図である。
【図５】ＰＭＶを利用した符号化側動き推定処理の一例を示す図である。
【図６】テンプレートを利用した復号側動き推定処理の一例を示す図である。
【図７】動き補償処理の一例を示す図である。
【図８】動き補償処理における別の一例を示す図である。
【図９】実施の形態１に係る画像符号化装置の基本動作を示すフローチャートである。
【図１０】実施の形態１に係る画像符号化装置における、動き推定処理の詳細を示すフローチャートである。
【図１１】符号化側動き推定処理の基本動作の一例を示すフローチャートである。
【図１２】復号側動き推定処理の基本動作の一例を示すフローチャートである。
【図１３】符号化ビット列の構成を示す概念図である。
【図１４】実施の形態２に係る画像復号装置の各構成要素間の基本的な接続関係を示す図である。
【図１５】実施の形態２に係る画像復号装置の各構成要素と復号制御部との接続関係を示す図である。
【図１６】実施の形態２に係る画像復号装置の基本動作を示すフローチャートである。
【図１７】実施の形態２に係る画像復号装置における、動き推定処理の詳細を示すフローチャートである。
【図１８】実施の形態１の画像符号化装置および実施の形態２の画像復号装置の動作を、プログラムに基づいて実行する情報処理装置の基本的な接続関係を示す図である。
【発明を実施するための形態】
【００１３】
本発明の実施の形態に係る画像符号化装置及び画像復号装置について図面を参照して説明する。
【００１４】
実施の形態では、符号化対象となっている矩形領域（以下「対象領域」という）の画像信号を利用して、参照ピクチャ内を探索し、動きベクトル情報を生成する動き推定（以下「符号化側動き推定」または「符号化側ＭＥ」という）処理と、対象領域の周辺で局部復号済みの領域（以下「局部復号領域」という）から探索のためのテンプレート領域を設定し、このテンプレート領域の画像信号を利用して、参照ピクチャ内を探索し、動きベクトル情報を生成する動き推定（以下「復号側動き推定」または「復号側ＭＥ」という）処理とを組み合わせた動き推定処理（以下「複合動き推定処理」または「ハイブリッド動き推定処理」という）を行い、その後、復号動き推定処理により特定された動きベクトル情報に基づいて所定の動き補償処理を行うことで、予測ピクチャを生成する。
【００１５】
また、動きベクトル情報をより少ない情報量で表現するために、予測動きベクトル情報および復号側動き推定処理で特定された動きベクトル情報を利用して、本実施の形態の複合動きベクトル推定処理を行い、複合残差動きベクトル情報（ｈ−ｍｖｄ：ｈｙｂｒｉｄ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｄｉｆｆｅｒｅｎｃｅ）を生成する。本実施の形態は、符号化側ＭＥにより最適な参照領域を特定し、この参照領域に最も近く、対象領域と参照領域との間の残差情報の情報量および動きベクトルＭＶの情報量が最も抑制されるように復号側ＭＥを利用し、最終的な複合残差動きベクトル情報ｈ−ｍｖｄが生成されるように構成したものである。
【００１６】
（実施の形態１）
まず、実施の形態１に係る画像符号化装置について説明する。当該画像符号化装置は、本実施の形態の動き推定処理を伴うことにより、より少ない情報量の残差動きベクトル情報により、動き補償処理において予測ピクチャを生成する際に利用する動きベクトル情報を表現することができる。
【００１７】
図１は、実施の形態１に係る画像符号化装置１００の各構成要素１０１〜１１５間の基本的な接続関係を示す図である。図２は、実施の形態１に係る画像符号化装置１００の各構成要素１０１〜１１５と符号化制御部１１６との接続関係を示す図である。なお、図１では図面の簡略化のため符号化制御部１１６を省略して描いている。
【００１８】
実施の形態１に係る画像符号化装置１００は、入力部１０１、蓄積部１０２、符号化側動き推定部１０３、復号側動き推定部１０４、動きベクトル情報構成部１０５、動き補償部１０６、減算部１０７、直交変換部１０８、量子化部１０９、エントロピー符号化部１１０、逆量子化部１１１、逆直交変換部１１２、加算部１１３、多重化部１１４、出力部１１５および符号化制御部１１６を有する。以下、各部の詳細を説明する。
【００１９】
入力部１０１は、例えば、図１に示す撮像装置１３１、伝送装置１３２、記録装置１３３、記録媒体１３４、蓄積装置１３５等から、所定の空間解像度を持つ入力画像列を取得し、符号化対象ピクチャとして符号化側動き推定部１０３、復号側動き推定部１０４、および減算部１０７に供給する。
【００２０】
蓄積部１０２は、参照ピクチャを蓄積し、必要に応じて各構成要素に参照ピクチャを供給する。蓄積部１０２は、加算部１１３で生成される復号信号を取得し、参照ピクチャとして蓄積する。また、蓄積部１０２は、符号化側動き推定部１０３、復号側動き推定部１０４および動き補償部１０６に対して、要求された参照ピクチャを供給する。蓄積部１０２は、加算部１１３から復号信号を取得する際に、順次、符号化後に局部復号として得られる復号済みの領域の画像信号を取得し、局部復号領域の画像信号（以下「局部復号ピクチャ」という）として蓄積する。また、蓄積部１０２は、符号化対象ピクチャ全域の局部復号結果が得られると、局部復号ピクチャの画像信号を参照ピクチャとして保持するようにするのが好ましい。また、蓄積部１０２は、復号側動き推定部１０４に対して、要求された局部復号ピクチャを供給する。
【００２１】
さらに、蓄積部１０２は、動きベクトル情報構成部１０５から、最終的に特定された動きベクトル情報（以下「最終ＭＶ」という）を取得し、現在処理対象となっている領域の最終ＭＶとして管理し、蓄積する。また、蓄積部１０２は、蓄積されている各領域の最終ＭＶの中から、必要に応じて要求された領域の最終ＭＶを、符号化制御部１１６に供給する。
【００２２】
符号化側動き推定部１０３は、入力部１０１から符号化対象ピクチャを取得し、蓄積部１０２から取得可能であれば、参照ピクチャ、および必要に応じて局部復号ピクチャを取得する。また、符号化側動き推定部１０３は、符号化制御部１１６もしくは動きベクトル情報構成部１０５から、取得可能であれば、面内のどの位置から探索を開始するかを特定するための開始位置情報（または初期ＭＶ）、探索幅情報、および探索精度情報を取得する。符号化側動き推定部１０３は、取得した符号化対象ピクチャおよび探索対象となっているピクチャ（以下「探索対象ピクチャ」という）を利用して、所定の動き推定処理を行うことにより、動きベクトル情報（以下「符号化側ＭＶ」という）を生成する。
【００２３】
ここで、探索対象ピクチャは、取得した参照ピクチャであるものとしているが、必要に応じて、局部復号ピクチャであってもよい。符号化側動き推定部１０３は、探索幅情報に基づいて探索範囲を特定し、取得した探索精度情報から特定される探索精度に基づいて所定の動き推定処理を行う。また、符号化側動き推定部１０３は、必要に応じて初期ＭＶを利用して、所定の動き推定処理を行い、符号化側ＭＶを生成する。
【００２４】
符号化側動き推定部１０３は、生成した符号化側ＭＶと、利用した予測動きベクトル情報（ｐｍｖ）から、残差動きベクトル情報（以下「符号化側残差ＭＶ」または「符号化側ｍｖｄ」）を生成する。ここで、予測動きベクトル情報は、符号化制御部１１６もしくは動きベクトル情報構成部１０５から取得した初期ＭＶであってもよい。
【００２５】
また、符号化側動き推定部１０３は、符号化側ＭＶを表現するためにかかるコスト情報（以下「符号化側ＭＶコスト」という）、および、符号化対象領域の信号と符号化側ＭＶで特定された参照領域の信号との残差信号を表現するためにかかるコスト情報（以下「符号化側残差コスト」という）を生成する。符号化側動き推定部１０３は、生成された符号化側ＭＶ、符号化側残差ＭＶ、符号化側ＭＶコスト、符号化側残差コスト、およびこれらを生成した際に用いた初期ＭＶ、探索幅情報、探索精度情報を、動きベクトル情報構成部１０５に供給する。
【００２６】
ここで、符号化側動き推定部１０３における所定の動き推定処理では、対象領域の画像信号と、探索時の誤差測定対象となっている領域（以下「測定対象領域」という）の画像信号との間の誤差値を測定しながら探索を行い、所定の条件に基づいて参照領域を特定するとともに、その空間位置を特定する。ここで、探索時に算出する誤差値は、一般的なＳＡＤ（Sum of Absolute Diference）やＳＡＴＤ（Sum of Absolute Transformed Difference）、画素単位での誤差の２乗和、誤差の２乗の平方根の和、誤差の２乗の和の平方根等により算出された値を用いて測定されてもよい。
【００２７】
符号化側動き推定部１０３は、開始位置から特定された空間位置までの符号化側ＭＶを求める。また、符号化側動き推定部１０３は、対象領域の画像信号と、特定された参照ピクチャ内の空間位置の領域である、参照領域の画像信号との間の誤差値（以下「符号化側最終誤差値」という）を、コスト情報である符号化側残差コストとして、符号化側ＭＶとともに、動きベクトル情報構成部１０５に供給してもよい。
【００２８】
図３は、符号化対象ピクチャ内における対象領域を特定する処理を説明するための図である。図３に示す例では、符号化対象ピクチャ３０１を所定の矩形形状で隙間なく分割し、矢印３０３のように、左上の矩形領域から右方向へ、その列が終了するとその下の列へとラスタスキャンの順序で、処理対象となる対象領域３０２を、符号化処理が進むにつれて、ずらしながら変更していく。符号化側動き推定部１０３では、例えば、図３の３０２のような対象領域の画像信号を、所定の動き推定処理に利用する。ここでは、このようなラスタスキャン順序に従って処理を進めるが、他の順序に従って処理を進めるようにしてもよい。
【００２９】
図４（ａ）〜（ｄ）は、参照ピクチャ内における参照領域を特定する処理を説明するための図である。図４（ａ）、図４（ｂ）に示されるように、参照ピクチャ内における探索開始位置の領域（以下「探索開始領域」という）を特定する際に、開始位置情報から得られる空間位置情報を基点として利用することができる。例えば、開始位置情報として、図３の対象領域３０２の面内位置に関する情報が供給されている場合には、図４（ａ）の符号４０２のように探索開始領域を設定し、この領域を基点として探索を開始することができる。また、例えば、開始位置情報として、対象領域の面内位置とは異なる位置を指定する情報が供給されている場合には、図４（ｂ）の符号４０２のように指定された位置を基点として探索開始領域を設定することができる。
【００３０】
また、所定の動き推定処理による探索を行う際に、例えば、図４（ｃ）、図４（ｄ）のように、探索開始領域の位置を基準にして、測定対象領域を動かしながら探索を行うことができる。また、例えば、図４（ａ）の符号４０３のように探索領域（または探索範囲）を指定し、その範囲内で探索を行うことで、探索時の処理量を軽減するようにしてもよい。図４（ｃ）は、渦巻き型の探索を用いる例を示している。参照ピクチャ４０１の探索領域４０３内で、渦巻き状に、探索開始領域４０２の空間位置を基点として、測定対象領域を変更していく。図４（ｄ）は、ラスタスキャン型の探索を用いる例を示している。この例では、図３に示した処理と同様に、参照ピクチャ４０１の探索領域４０３内で探索する。
【００３１】
また、図５（ａ）、図５（ｂ）に示されるように、符号化側動き推定処理における探索開始領域は、符号化制御部１１６によって、対象領域に隣接する符号化済みの領域に属する動きベクトル情報を利用して特定された予測動きベクトル情報５１５を利用してもよい。図５（ｂ）の予測動きベクトル情報５１５は、図５（ａ）の領域Ａ５０４の最終ＭＶ５１１、領域Ｂ５０５の最終ＭＶ５１２、および領域Ｃ５０６の最終ＭＶ５１３を利用して、各最終ＭＶの各要素の中央値を採用することで、予測動きベクトル情報５１５を求めた例である。
【００３２】
具体的には、最終ＭＶ５１１＝（３．７５,−８．００）、最終ＭＶ５１２＝（１２．００，−７．５０）、最終ＭＶ５１３＝（２．２５，１２．７５）であるとすると、予測動きベクトル情報５１５＝ｍｉｄ（最終ＭＶ５１１，最終ＭＶ５１２，最終ＭＶ５１３）＝（３．７５，−７．５０）となる。ここで、ｍｉｄ（）は各成分について中間値を取る関数である。ここでは、符号化制御部１１６において、このような処理によって予測動きベクトル情報を生成し、供給しているが、他の予測方法に基づいて予測動きベクトル情報を求めるような構成であっても構わない。
【００３３】
ここで、符号化側動き推定処理によって特定された符号化側ＭＶが図５（ｂ）のＭＶ５１４であったとすると、ここでの残差動きベクトル情報は、ＭＶ５１６＝ＭＶ５１４−ＭＶ５１５となる。具体的には、ＭＶ５１４＝（１５．２５，４．７５）であるとすると、ＭＶ５１６＝ＭＶ５１４−ＭＶ５１５＝（１５．２５−３．７５，４．７５−（−７．５０））＝（１１．５０，１２．２５）となる。このような残差動きベクトル情報を求め、この残差動きベクトル情報を表現するためにかかるコスト情報を、符号化側ＭＶコストとすることが望ましい。
【００３４】
復号側動き推定部１０４は、蓄積部１０２から局部復号ピクチャおよび参照ピクチャを取得する。また、入力部１０１等から、符号化対象ピクチャが取得可能であれば、取得するようにしてもよい。また、復号側動き推定部１０４は、符号化制御部１１６もしくは動きベクトル情報構成部１０５から、取得可能であれば、面内のどの位置から探索を開始するかを特定するための開始位置情報（または初期ＭＶ）、探索幅情報、および探索精度情報を取得する。
【００３５】
復号側動き推定部１０４は、取得した局部復号ピクチャおよび参照ピクチャを利用して、所定の動き推定処理を行うことにより、動きベクトル情報（以下「復号側ＭＶ」という）を生成する。ここで、復号側動き推定部１０４は、探索幅情報に基づいて探索範囲を特定し、取得した探索精度情報から特定される探索精度に基づいて所定の動き推定処理を行う。また、復号側動き推定部１０４は、必要に応じて初期ＭＶを利用して、所定の動き推定処理を行い、復号側ＭＶを生成する。
【００３６】
また、復号側動き推定部１０４は、復号側ＭＶを表現するためにかかるコスト情報（以後、復号側ＭＶコスト）、および符号化対象領域の信号と、復号側ＭＶで特定された参照領域の信号との残差信号を表現するためにかかるコスト情報（以下「復号側残差コスト」という）を生成する。復号側動き推定部１０４は、生成された復号側ＭＶ、復号側ＭＶコスト、復号側残差コスト、およびこれらを生成した際に用いた初期ＭＶ、探索幅情報、探索精度情報を、動きベクトル情報構成部１０５に供給する。
【００３７】
ここで、符号化対象ピクチャが取得できない場合には、処理対象となる局部復号ピクチャにおけるテンプレート領域の信号と、復号側ＭＶから特定される参照領域に隣接するテンプレート領域の信号との残差信号を表現するためにかかるコスト情報（以下「復号側テンプレート残差コスト」という）を符号化側残差コストとして生成するようにしてもよい。また、必要であれば、復号側テンプレート残差コストを生成する際に、同等のコスト比較を行うために、所定の変換係数（以下「コスト変換係数」という）を乗じて符号化側残差コストとして生成してもよい。
【００３８】
ここで、復号側動き推定部１０４における所定の動き推定処理では、局部復号済みの領域であって、対象領域に隣接もしくは所定の離れた距離に、所定の形状をもつ対象テンプレート領域を定め、局部復号ピクチャから同一空間位置に対応する対象テンプレート領域に属する復号信号を特定することで、探索対象とする。この対象テンプレート領域に属する画像信号と、測定対象領域の画像信号との間の誤差値を測定しながら探索を行い、所定の条件に基づいて参照領域を特定するとともに、その空間位置を特定する。
【００３９】
ここで、測定対象領域は、参照ピクチャ内であるものとして話を進めるが、局部復号ピクチャ内に領域を定め、所定の動き推定処理を行うようにすることもできる。また、測定対象領域の形状は、対象テンプレート領域の形状と同一であるものとする。また、探索時に算出する誤差値は、一般的なＳＡＤやＳＡＴＤ、画素単位での誤差の２乗和、誤差の２乗の平方根の和、誤差の２乗の和の平方根等により算出された値を用いて測定されてもよい。
【００４０】
復号側動き推定部１０４は、開始位置から特定された空間位置までの復号側ＭＶを求める。また、復号側動き推定部１０４は、符号化対象ピクチャが取得可能な場合は、対象領域の画像信号と、特定された参照領域の画像信号との間の誤差値を、コスト情報である復号側残差コストとして、復号側ＭＶとともに、動きベクトル情報構成部１０５に供給してもよい。また、符号化対象ピクチャが取得できない場合には、対象テンプレート領域に属する画像信号と、特定された測定対象領域（ここでは、復号側ＭＶによって特定される参照ピクチャ内のテンプレート領域）の画像信号との間の誤差値を、コスト情報である復号側テンプレート残差コストとし、これを符号化側残差コストとして生成するようにしてもよい。また、必要であれば、復号側テンプレート残差コストを生成する際に、同等のコスト比較を行うために、コスト変換係数を乗じて符号化側残差コストとして生成してもよい。
【００４１】
図６（ａ）〜（ｄ）は、テンプレート領域を伴った復号側ＭＥの様子を示した図である。図６（ａ）は、比較のため、予測動きベクトルｐｍｖ５１５、探索範囲５０２を用いて符号化側ＭＥを行って得られる、符号化側ＭＶ５１４および残差動きベクトルｍｖｄ５１６、探索範囲６０１を用いて復号側ＭＥを行って得られる、復号側ＭＶ５１７および復号側ＭＥで特定された参照領域６０４の空間位置から符号化側ＭＥで特定された空間位置までのＭＶである復号側残差ＭＶ５１８を示している。
【００４２】
図６（ｂ）は、各領域とＭＶの位置関係をより分かりやすく示した拡大図である。仮に、参照領域５０７の信号が最も対象領域の信号に近く、この領域までの距離を表現しようとした場合を考える。予測動きベクトルｐｍｖ５１５を利用した符号化側ＭＥを行う場合では、残差動きベクトルｍｖｄ５１６を表現するための情報量を必要とし、初期ＭＶを利用せずに復号側ＭＥを行う場合には、復号残差ＭＶ５１８を表現するための情報量を必要とする。
【００４３】
図６（ａ）、図６（ｂ）における例では、予測動きベクトルｐｍｖ５１５の精度があまりよいとは言えず、残差動きベクトルｍｖｄ５１６の情報量が増大しているため、予測動きベクトルｐｍｖ５１５を利用せず、符号化側ＭＶ５１４をそのまま残差動きベクトルｍｖｄとして利用することで情報量が抑えられると考えられる。また、対象領域の信号とテンプレート領域の信号との相関が高い場合には、復号側ＭＥによって特定される参照領域は、より良い近似となり、信号間の誤差の程度によっては、復号側残差ＭＶ５１８を符号化しないようにすることも考えられる。つまり、ここでは、復号側ＭＥによる伝送すべきＭＶの情報量の削減分が、信号間の誤差の増大による情報量の増大分よりも大きい場合には、復号側ＭＥを採用した方が良い場合であると考えられる。
【００４４】
図６（ｃ）、図６（ｄ）では、初期ＭＶを利用して復号側ＭＥを行った場合の例を示している。このように適切な初期ＭＶを少ない情報量で与えることができると、図６（ｃ）の探索範囲６０５のように範囲を狭めても所望とする領域を検出することが可能となるため、探索時の演算量を抑制することが可能となる。また、探索範囲が限定されることにより、領域の誤検出を軽減することにもつながると考えられる。ただし、初期ＭＶによって、所望の参照領域を含む探索範囲の内部に探索の初期位置を設定できない場合には、探索範囲内での準最適な参照領域が探索によって特定されることから、初期ＭＶの情報量と、信号間の誤差の増大による情報量の総コストが、他のＭＥによる総コストよりも大きくなる場合には、他のＭＥを採用した方が良い場合であると考えられる。つまり、初期ＭＶの精度と、探索範囲の大きさを適切に管理し、必要であれば復号側に伝送することで、復号側ＭＥを利用して情報量を抑制することが可能となる。本実施の形態では、符号化側ＭＥで得られた符号化側ＭＶを利用して、最適な初期ＭＶと探索範囲を特定し、情報量を抑制することを特徴とする。
【００４５】
動きベクトル情報構成部１０５は、符号化側動き推定部１０３から、符号化側ＭＶ、符号化側残差ＭＶ、符号化側ＭＶコスト、符号化側残差コスト、およびこれらを生成した際に用いた初期ＭＶ、探索幅情報、探索精度情報を取得する。また、動きベクトル情報構成部１０５は、復号側動き推定部１０４から、復号側ＭＶ、復号側ＭＶコスト、復号側残差コスト、およびこれらを生成した際に用いた初期ＭＶ、探索幅情報、探索精度情報を取得する。
【００４６】
動きベクトル情報構成部１０５は、取得した各種の動き情報および各種のコスト情報に基づいて、符号化側ＭＶを採用した場合の総コストおよび情報量よりも小さくなるようなＭＶを、最終ＭＶとして特定するとともに、特定された最終ＭＶを、蓄積部１０２および動き補償部１０６に供給する。
【００４７】
また、動きベクトル情報構成部１０５は、特定された最終ＭＶ、復号側ＭＶ、復号側ＭＶを生成する際に用いた初期ＭＶ（以下「復号側初期ＭＶ」という）、および復号側拡張ＭＶに基づいて、所定の動きベクトル情報構成処理を行うことにより、複合残差動きベクトル情報（ｈ−ｍｖｄ）を生成し、エントロピー符号化部１１０に供給する。
【００４８】
ここで、復号側拡張ＭＶは、復号側拡張ＭＶ＝最終ＭＶ−（復号側初期ＭＶ＋復号側ＭＶ）＋α、かつ、最終ＭＶに基づく総コスト＞＝復号側初期ＭＶおよび復号側拡張ＭＶに基づく総コストという条件を満たすようなものであればよい。ここで、αは復号側拡張ＭＶの変動ベクトル値であり、最終ＭＶに基づく総コスト以下の総コストとなるようなαであればよい。ここでは一般にα＝（０，０）として話を進めるが、この変動ベクトル値αを考慮する場合には、復号側初期ＭＶ＋復号側ＭＶを新たな符号化側初期ＭＶ、復号側初期ＭＶとし、再度、符号化側ＭＥおよび復号側ＭＥを行った後に、総コストの評価を行うことを、必要に応じて複数回行い、より最適な復号側拡張ＭＶを求めるようにしても構わない。
【００４９】
また、複合残差動きベクトルｈ−ｍｖｄは、復号側初期ＭＶおよび復号側拡張ＭＶに基づいて、所定の動きベクトル情報構成処理を行うことで、生成される。ここでは、１つの動きベクトル情報が表現できるビット列に収まるような構成処理を行うことで、動きベクトル情報をまとめて表現することができるとともに、従来方式で動きベクトル情報を伝送するためのシンタックス構造（表現形式）に合わせることができるようになる。
【００５０】
動きベクトル情報構成部１０５は、最探索処理に必要となる新たな、初期ＭＶ、探索幅情報、および探索精度情報を、必要に応じて、符号化側動き推定部１０３、および復号側動き推定部１０４に供給する。また、動きベクトル情報構成部１０５は、最終ＭＶが、符号化側ＭＥおよび復号側ＭＥの処理をどのような組み合わせで実行されて得られた結果かを示すためのＭＥモード情報を、エントロピー符号化部１１０に供給する。また、動きベクトル情報構成部１０５は、これらのＭＥ処理の組み合わせで用いた探索幅情報、および探索精度情報を、エントロピー符号化部１１０に供給する。
【００５１】
動き補償部１０６は動きベクトル情報構成部１０５から、生成された最終ＭＶを取得する。また、動き補償部１０６は、蓄積部１０２から参照ピクチャを取得する。また、動き補償部１０６は、取得した最終ＭＶ、および参照ピクチャを利用して、所定の動き補償処理を行うことにより、予測ピクチャを生成し、減算部１０７および加算部１１３に供給する。
【００５２】
ここで、本実施の形態に係る動き補償部１０６における所定の動き補償処理では、例えば図７および図８のような処理を行うことで、予測ピクチャを生成していく。図７は、最終ＭＶが、復号側初期ＭＶ＝（０，０）、復号側ＭＶ６１１、復号側拡張ＭＶ５１８のベクトル和である場合の様子を示している。したがって、最終ＭＶを取得することで、参照領域５０７を特定することができ、この領域に含まれる信号を予測ピクチャにおける対象領域と同一の空間位置の領域７０２に格納する。このような処理を予測ピクチャ全体に対して処理対象ごとに行うことで、予測ピクチャを生成することができる。
【００５３】
図８においても同様であるが、図８は更に、復号側拡張ＭＶ＝（０，０）の場合の様子を示している。これは、図７とは違い、復号側拡張ＭＶ５１８を画像復号装置には送らない符号化パターンである。ハイブリッド動き推定処理では、このような符号化パターンもありうる。
【００５４】
減算部１０７は、入力部１０１から符号化対象ピクチャを取得し、動き補償部１０６から予測ピクチャを取得する。減算部１０７は、取得した符号化対象ピクチャから予測ピクチャを減算して残差情報を生成し、直交変換部１０８に供給する。
【００５５】
直交変換部１０８は、減算部１０７から残差情報を取得し、取得した残差情報に対して所定の直交変換処理を行うことにより、直交変換係数情報を生成し、量子化部１０９に供給する。ここで、所定の直交変換処理で用いる直交変換基底は、ＤＣＴ、ＤＳＴ、ＫＬＴ、ウェーヴレット変換、アダマール変換等、一般に画像符号化や動画像符号化で利用することができるものであればよく、特に限定されない。
【００５６】
量子化部１０９は、直交変換部１０８から直交変換係数情報を取得し、取得した直交変換係数情報に対して所定の量子化処理を行うことにより、量子化後情報を生成し、エントロピー符号化部１１０および逆量子化部１１１に供給する。ここで、所定の量子化処理は、一般に画像符号化や動画像符号化で利用することができるものであればよく、特に限定されない。
【００５７】
エントロピー符号化部１１０は、少なくとも、動きベクトル情報構成部１０５から複合残差動きベクトル情報（ｈ−ｍｖｄ）を取得し、量子化部１０９から量子化後情報を取得する。エントロピー符号化部１１０は、少なくとも、取得したｈ−ｍｖｄおよび量子化後情報に対して、所定のエントロピー符号化処理を行い、ｈ−ｍｖｄおよび量子化後情報の符号化ビット列を生成し、多重化部１１４に供給する。また、エントロピー符号化部１１０は、動きベクトル情報構成部１０５から、ＭＥモード情報、およびこのＭＥモードのＭＥ処理の組み合わせで用いた探索幅情報、および探索精度情報を取得し、所定のエントロピー符号化処理を行い、ＭＥモード情報の符号化ビット列、探索幅情報の符号化ビット列、探索精度情報の符号化ビット列を生成し、多重化部１１４に供給する。ここで、所定のエントロピー符号化処理は、ハフマン符号化、算術符号化等の、一般に画像符号化や動画像符号化で利用することができるものであればよく、特に限定されない。
【００５８】
逆量子化部１１１は、量子化部１０９から量子化後情報を取得し、取得した量子化後情報に対して、量子化部１０９による所定の量子化処理と対をなす、所定の逆量子化処理を行うことにより、逆量子化後の直交変換係数情報を生成し、逆直交変換部１１２に供給する。
【００５９】
逆直交変換部１１２は、逆量子化部１１１から逆量子化後の直交変換係数情報を取得し、取得した逆量子化後の直交変換係数情報に対して、直交変換部１０８による所定の直交変換処理と対をなす、所定の逆直交変換処理を行うことにより、復号残差情報を生成し、加算部１１３に供給する。
【００６０】
加算部１１３は、動き補償部１０６から予測ピクチャを取得し、逆直交変換部１１２から復号残差情報を取得する。加算部１１３は、取得した予測ピクチャに復号残差情報を加算することにより、局部復号ピクチャを生成し、蓄積部１０２に供給する。
【００６１】
多重化部１１４は、エントロピー符号化部１１０から各種符号化ビット列を取得し、所定の構文構造に基づいて多重化して、多重化後の符号化ビット列を生成し、出力部１１５に供給する。
【００６２】
出力部１１５は、多重化部１１４から多重化後の符号化ビット列を取得し、出力部１１５に接続されている外部の機器に対して、多重化後の符号化ビット列を供給する。例えば、図１に示す伝送装置１４１が画像符号化装置１００に接続されていれば、当該多重化後の符号化ビット列を、ネットワークを介して、外部の受信装置に伝送するように構成することができる。また、図１に示す記録装置１４２、記録媒体１４３、蓄積装置１４４等が画像符号化装置１００に接続されていれば、当該多重化後の符号化ビット列を、記録、保存、持ち出しができるように構成することができる。
【００６３】
図２において、符号化制御部１１６は、各部の動作状態を監視し、各部の符号化動作や入出力を制御する。
【００６４】
図９は、実施の形態１に係る画像符号化装置１００の基本動作を示すフローチャートである。まず、符号化制御部１１６は、ユーザ等から符号化開始要求を受けると、各部に対して符号化開始指令を送る。それに応じて、入力部１０１は、所定の空間解像度をもつ入力画像列を取得し、符号化対象ピクチャとして符号化側動き推定部１０３および減算部１０７に供給する。また、入力部１０１は、同様の符号化対象ピクチャを、復号側動き推定部１０４に供給する。
【００６５】
その後、符号化制御部１１６は、符号化側動き推定部１０３および復号側動き推定部１０４に対して符号化開始指令を送り、符号化側動き推定部１０３および復号側動き推定部１０４は、入力部１０１から符号化対象ピクチャを取得する（ステップＳ１０１）。また、符号化側動き推定部１０３および復号側動き推定部１０４は、蓄積部１０２から参照ピクチャを取得する（ステップＳ１０２）。さらに、復号側動き推定部１０４は、蓄積部１０２から、局部復号ピクチャを取得する。
【００６６】
その後、符号化制御部１１６は、対象領域を特定するための情報を符号化側動き推定部１０３および復号側動き推定部１０４に供給し、符号化側動き推定部１０３および復号側動き推定部１０４は、この対象領域を特定するための情報に基づいて、取得した符号化対象ピクチャ、参照ピクチャ、および復号側動き推定部１０４では、さらに局部復号ピクチャから、符号化対象領域、復号済み領域、参照領域を特定する（ステップＳ１０３）。
【００６７】
次に、符号化制御部１１６は、符号化側動き推定部１０３、復号側動き推定部１０４、および動きベクトル情報構成部１０５に対して、符号化側ＭＥと復号側ＭＥを組み合わせて動作させるよう、各部を制御し、本実施の形態の符号化におけるハイブリッドＭＥ処理を行う（ステップＳ１０４）ことで、一般的な符号化側ＭＥで得られるＭＶおよびｍｖｄを適用した場合の総コストよりも小さいか、もしくは等しくなるような最終ＭＶおよび複合残差動きベクトルｈ−ｍｖｄが生成される。生成された最終ＭＶは、動き補償部１０６および蓄積部１０２に供給され、複合残差動きベクトルｈ−ｍｖｄは、エントロピー符号化部１１０に供給される。
【００６８】
その後、符号化制御部１１６は、動き補償部１０６に動き補償処理開始指令を送り、動き補償部１０６は、蓄積部１０２から参照ピクチャを取得し、動きベクトル情報構成部１０５から、最終ＭＶを取得して、所定のＭＣ処理を行う（ステップＳ１０５）ことで、予測ピクチャを生成し、減算部１０７および加算部１１３に予測ピクチャを供給する。
【００６９】
次に、減算部１０７は、入力部１０１から符号化対象ピクチャを取得し、動き補償部１０６から予測ピクチャを取得し、符号化対象ピクチャから予測ピクチャを減算して、残差情報を生成し、直交変換部１０８に供給する。
【００７０】
次に、符号化制御部１１６は、直交変換部１０８に対して直交変換処理開始指令を送り、直交変換部１０８は、減算部１０７から残差情報を取得し、所定の直交変換処理を行う（ステップＳ１０６）ことで、直交変換係数情報を生成し、量子化部１０９に供給する。その後、符号化制御部１１６は、量子化部１０９に対して量子化処理開始指令を送り、量子化部１０９は、直交変換部１０８から直交変換係数情報を取得し、所定の量子化処理を行う（ステップＳ１０７）ことで、量子化後情報を生成し、エントロピー符号化部１１０および逆量子化部１１１に供給する。
【００７１】
その後、符号化制御部１１６は、逆量子化部１１１に対して逆量子化処理開始指令を送り、逆量子化部１１１は、量子化部１０９から量子化後情報を取得し、所定の逆量子化処理を行う（ステップＳ１０８）ことで、逆量子化後の直交変換係数情報を生成し、逆直交変換部１１２に供給する。その後、符号化制御部１１６は、逆直交変換部１１２に対して逆直交変換処理開始指令を送り、逆直交変換部１１２は、逆量子化部１１１から逆量子化後の直交変換係数情報を取得し、所定の逆直交変換処理を行う（ステップＳ１０９）ことにより、復号残差情報を生成し、加算部１１３に供給する。その後、加算部１１３は、動き補償部１０６から予測ピクチャを取得し、逆直交変換部１１２から復号残差情報を取得する。そして、加算部１１３は、取得した予測ピクチャに復号残差情報を加算することにより、復号領域の信号を格納する（ステップＳ１１０）ことで局部復号ピクチャを生成し、蓄積部１０２に供給する。
【００７２】
次に、符号化制御部１１６は、エントロピー符号化部１１０に対し、エントロピー符号化処理開始指令を送り、エントロピー符号化部１１０は、動きベクトル情報構成部１０５から、複合残差動きベクトル情報（ｈ−ｍｖｄ）、ＭＥモード情報、ＭＥ処理の組み合わせで用いた探索幅情報、および探索精度情報を取得し、量子化部１０９から、量子化後情報を取得し、所定のエントロピー符号化処理を行う（ステップＳ１１１）ことで、少なくとも、複合残差動きベクトルｈ−ｍｖｄの符号化ビット列、量子化後情報の符号化ビット列、ＭＥモード情報の符号化ビット列、探索幅情報の符号化ビット列、探索精度情報の符号化ビット列を生成し、多重化部１１４に供給する。
【００７３】
ここで、符号化制御部１１６は、処理の内部状態から、符号化対象ピクチャ全体の符号化が完了したか、していないかを判定し（ステップＳ１１２）、符号化が完了していない場合には、ステップＳ１０３に戻り、本実施の形態の符号化処理を継続する。また、符号化が完了した場合、多重化部１１４に対して多重化処理開始指令を送り、多重化部１１４は、エントロピー符号化部１１０から、各符号化ビット列を取得し、所定の構文構造に基づいて多重化して（ステップＳ１１３）、多重化後の符号化ビット列を生成し、出力部１１５に供給する。そして、出力部１１５は、取得した多重化後の符号化ビット列を出力する（ステップＳ１１４）ことで、符号化対象ピクチャに対する一連の符号化処理を完了する。
【００７４】
ここで、多重化後の符号化ビット列は、次のような構成であると良い。図１３は、本実施の形態によって生成される符号化ビット列の構成を説明するための概念図である。生成される符号化ビット列は、例えば、大別すると、ヘッダ情報１３０１、データ情報１３０２で構成される。
【００７５】
このヘッダ情報１３０１内に、本実施の形態によって符号化されたビット列であることを示すためのフラグとしてのビット列１３０３が含まれるように構成することができる。また、ある所定の単位で本実施の形態の符号化を使用したか否かを判別できるように、より細かい処理単位におけるヘッダ情報内に、使用識別フラグとしてのビット列を含むようにすることができる。
【００７６】
例えば、ピクチャもしくはスライス単位で本実施の形態の符号化の使用を制御するために、ヘッダ情報１３０４およびデータ情報１３０５を含むピクチャもしくはスライスのヘッダ情報１３０４内に、本実施の形態の符号化の使用を制御するためのフラグとしてのビット列１３０６を含むようにしてもよい。また、更に細かい処理単位、例えばマクロブロック単位で本実施の形態の符号化の使用を制御するために、ヘッダ情報１３０７およびデータ情報１３０８を含むマクロブロックのヘッダ情報１３０７内に、本実施の形態の符号化の使用を制御するためのフラグとしてのビット列１３０９を含むようにしてもよい。また、このようなヘッダ情報に対して、本実施の形態の動作モードを特定するためのモード情報をビット列として格納するように符号化ビット列を構成してもよい。更に、このようなヘッダ情報に対して、本実施の形態の各部の動作や初期状態を制御するためのパラメータ情報を、ビット列として格納するように符号化ビット列を構成してもよい。
【００７７】
符号化制御部１１６は、最終的に使用する動きベクトル情報を求めるための少なくとも１つの動作モードを特定するための動作モード情報に基づいて、符号化側動き推定部１０３、復号側動き推定部１０４および動きベクトル情報構成部１０５を制御し、動きベクトル情報の再探索の要否を判断し、再探索が必要である場合は、新たな予測動きベクトル情報と新たな探索の開始位置情報を特定し、符号化側動き推定部１０３および復号側動き推定部１０４の少なくとも一方に供給するように動きベクトル情報構成部１０５に指示する。この動作モード情報により、最終的に複合残差ベクトル情報が生成されるまでの前記符号化側動き推定部および前記復号側動き推定部の動作と動きベクトル情報の再探索の有無を識別することができる。
【００７８】
動作モード情報は、所定の検出精度で制限された符号化側動き推定により検出された動きベクトル情報によって大まかな開始位置を特定し、復号側動き推定を行う、動作モードを特定するものであってもよい。
【００７９】
動作モード情報は、復号側動き推定において、符号化対象となっている領域に隣接、もしくは所定の位置関係にある復号済みの領域に含まれる信号と、復号済みの領域に含まれる信号との間で、複合側動き推定処理により、符号化対象となっている領域と、参照される領域との間の最適な位置を特定し、その後、特定された位置を新たな開始位置情報とし、新たな開始位置情報から特定される開始位置の周辺に対して符号化側動き推定を行い、位置を確定させる動作モードを特定するものであってもよい。
【００８０】
動作モード情報は、所定の回数および所定の組み合わせおよび順序に基づいて、復号側動き推定と符号化側動き推定を繰り返し行う動作モードを特定するものであってもよい。
【００８１】
各動作モードに基づいて動作し、生成された少なくとも１つの動きベクトル情報に基づいて、複合残差動きベクトル情報を生成する際、動きベクトル情報構成部１０５は、符号化側動き推定のみ行って得られる１つの動きベクトル情報が表現できるビット列の長さ以下のビット列に収まるような、所定の再結合処理を行うことによって複合残差動きベクトル情報を生成してもよい。
【００８２】
以上、実施の形態１によれば、動画像符号化の動き推定処理において、符号化側ＭＥと復号側ＭＥとのハイブリッド構成とし、符号化側ＭＥで利用する動きベクトル情報を表現するための値の範囲よりも更に制限された範囲の値で表現された動きベクトル情報を生成するように構成している。これにより、必要とする動きベクトル情報の取りうる値の範囲をより限定することができ、符号量を抑制できるようになる。
【００８３】
更に、符号化側ＭＥと復号側ＭＥとのハイブリッド動作を制御するための手段を備え、復号側において動作モードを所定の処理単位で識別するためのモード情報を符号化出力するように構成している。これにより、所定の単位で動作モードを切り替えて、選択できる動作モードの中で最も情報量が少ない動きベクトル情報を生成できるようになり、符号量を抑制できるようになる。
【００８４】
また、ハイブリッド構成の動作モードとして、所定の検出精度で制限された符号化側ＭＥで検出された動きベクトル情報によって大まかな位置を特定し、その後、復号側ＭＥを行う動作モードを持ち、この動作モードを所定の処理単位で識別するためのモード情報を符号化出力するように構成することができる。これにより、動きベクトル情報の情報量が少なくなるように制限した状態でも、復号側ＭＥで不足分を追加の情報量なしに補い、従来と同等の予測ピクチャを生成することで、符号量を抑制できるようになる。
【００８５】
また、ハイブリッド構成の動作モードとして、復号側ＭＥでテンプレートによる最適な位置を特定し、その後、特定された位置の周辺で符号化側ＭＥを行い、少ない情報量の動きベクトル情報を利用して、位置を確定させる動作モードを持ち、この動作モードを所定の処理単位で識別するためのモード情報を符号化出力するように構成することができる。これにより、復号側ＭＥで情報量なしに得られる動きベクトル情報が、必ずしも十分な精度を満たしていない場合であっても、その後の通常の符号化側ＭＥで正しい位置を確定させることができるため、従来と同等の予測ピクチャを生成することで、符号量を抑制する効果がある。
【００８６】
また、ハイブリッド構成の動作モードとして、所定の回数および所定の組み合わせに基づいて、復号側ＭＥと符号化側ＭＥを繰り返し行う動作モードを持ち、この動作モードを所定の処理単位で識別するためのモード情報を符号化出力するように構成することができる。これにより、微調整を行いながら、復号側ＭＥを行うことを繰り返し行うことが可能となり、少ない動きベクトル情報で、より確からしい予測ピクチャを生成するための検出位置を特定できるようになる。
【００８７】
さらに、このような複数回の繰り返しによって生成された少なくとも１つの動きベクトル情報を、１つの動きベクトル情報が表現できるビット列に収まるような所定の動きベクトル情報構成処理を行うように構成することができる。これにより、動きベクトル情報をまとめて表現することができるとともに、従来方式で動きベクトル情報を伝送するためのシンタックス構造（表現形式）に合わせることができるようになる。
【００８８】
次に、本実施の形態の符号化におけるハイブリッドＭＥ処理（ステップＳ１０４）における詳細な動作の一例を、図１０のフローチャートを用いて説明する。
【００８９】
まず、符号化制御部１１６は、蓄積部１０２から、現在の対象領域に隣接し、符号化済みの領域に属する最終ＭＶを取得し、これらの最終ＭＶの各要素の中央値から、予測動きベクトルｐｍｖを求める（ステップＳ２０１）。この予測動きベクトルｐｍｖを符号化側初期ＭＶとして、符号化側動き推定部１０３に供給する。また、探索精度情報を符号化側動き推定部１０３に供給する。その後、符号化制御部１１６は、符号化側動き推定部１０３に符号化側動き推定処理開始指令を送る。この開始要求を受けて、符号化側動き推定部１０３は、予測動きベクトルｐｍｖを取得するとともに、探索精度情報を取得し、符号化側ＭＥの探索精度を設定する（ステップＳ２０２）。その後、符号化側動き推定部１０３は、対象領域の信号を探索対象として参照領域を探索する、所定の符号化側ＭＥ処理を行う（ステップＳ２０３）。そして、符号化側ＭＥにおける最良の動きベクトルｍｖおよび残差動きベクトルｍｖｄを決定する（ステップＳ２０４）。決定した残差動きベクトルｍｖｄと、対象領域の信号と、参照領域の信号との間の誤差情報に基づいて、所定の方法により各コストおよび総コスト値を求める（ステップＳ２０５）。そして、決定された符号化側ＭＶ、符号化側残差ＭＶ（ｍｖｄ）、符号化側ＭＶコスト、符号化側残差コスト、およびこれらを生成した際に用いた初期ＭＶ、探索幅情報、探索精度情報を、動きベクトル情報構成部１０５に供給する。ここまでの処理が、符号化側ＭＥの処理である。
【００９０】
次に、動きベクトル情報構成部１０５は、復号側ＭＥにおける、初期ＭＶのコスト値と総コスト値の基準値、および変動閾値を設定する（ステップＳ２０６）。ここで、初期ＭＶのコスト値の基準値は、符号化側動き推定部１０３で特定された残差動きベクトルｍｖｄのコスト値を利用するように構成することが望ましい。また、変動閾値は、あらかじめ所定のものを設定するか、符号化制御部１１６によって供給されるものを設定するように構成することが望ましい。また、総コスト値の基準値は、符号化側動き推定部１０３で特定された残差動きベクトルｍｖｄに基づく総コスト値を利用するように構成することが望ましい。また、変動閾値は、あらかじめ所定のものを設定するか、符号化制御部１１６によって供給されるものを設定するように構成することが望ましい。その後、設定された各コスト値の基準値、および変動閾値から、変動範囲を設定する。
【００９１】
その後、符号化制御部１１６は、復号側動き推定部１０４に、初期ＭＶを供給する。ここでは、初期ＭＶとして（０，０）を供給したとして話を進める。符号化制御部１１６は、復号側動き推定部１０４に対して復号側動き推定処理開始指令を送る。この開始要求を受けて、復号側動き推定部１０４は、初期ＭＶを取得し、初期ＭＶを設定する（ステップＳ２０７）。また、復号側動き推定部１０４は、符号化制御部１１６から、探索精度情報を取得し、設定する（ステップＳ２０８）。その後、復号側動き推定部１０４は、局部復号領域内に設定されたテンプレート領域の信号を探索対象として参照領域を探索する、所定の復号側ＭＥ処理を行う（ステップＳ２０９）。そして、復号側ＭＥにおける最良の復号側ＭＶを決定する（ステップＳ２１０）。決定した復号側ＭＶに基づく、対象領域の信号と、参照領域の信号との間の誤差情報に基づいて、所定の方法により各コストおよび総コスト値を求める（ステップＳ２１１）。そして、復号側動き推定部１０４は、動きベクトル情報構成部１０５に、復号側初期ＭＶ、決定した復号側ＭＶ、各コスト値、探索条件等を供給する。
その後、動きベクトル情報構成部１０５は、復号側動き推定部１０４から供給された情報を取得し、復号側動き推定部１０４で求められた総コスト値は、総コスト値の変動範囲内であるかを判定し（ステップＳ２１２）、範囲内である場合（ステップＳ２１２  ＹＥＳ）は、変動範囲内の復号側ＭＶ、コスト値および探索条件を蓄積し（ステップＳ２１３）、ステップＳ２１４に進む。また、範囲内でない場合（ステップＳ２１２  ＮＯ）は、そのままステップＳ２１４に進む。
【００９２】
その後、復号側初期ＭＶのコスト値は、変動範囲内であるかを判定し（ステップＳ２１４）、範囲内である場合（ステップＳ２１４  ＹＥＳ）は、復号側初期ＭＶに使用する割り当て符号量を増加させる（ステップＳ２１５）ことで、初期ＭＶの精度を向上させ、新たに表現できるようになった復号側初期ＭＶにおいて、次の探索開始位置である復号側初期ＭＶの値を復号側動き推定部１０４に供給し、設定する（ステップＳ２０７）ことで、処理を繰り返す。また、範囲でない場合（ステップＳ２１４  ＮＯ）は、そのままステップＳ２１６に進む。
【００９３】
その後、動きベクトル情報構成部１０５は、蓄積された変動範囲内の復号側ＭＶに基づく総コスト値のうち、符号化側ＭＥで求めた総コスト値を下回るものがあるかを判定する（ステップＳ２１６）。下回るものがある場合（ステップＳ２１６  ＹＥＳ）は、復号側ＭＥ得られた、最良の総コスト値となる、初期ＭＶ、復号側ＭＶ、および探索条件等を採用し、処理を終了する。また、下回るものがない場合（ステップＳ２１６  ＮＯ）は、符号化側ＭＥで得られた、符号化側ＭＶ、残差動きベクトルｍｖｄ、および探索条件等を採用し、処理を終了する。
【００９４】
以上のような処理を行うことで、符号化側ＭＥと復号側ＭＥのハイブリッド構成による、本実施の形態のＭＥ処理を実現することができる。これにより、符号化側ＭＥで得られる符号化側ＭＶに基づく総コスト値より小さい、もしくは同等の総コスト値となるような、復号側初期ＭＶ、復号側ＭＶを求めることが可能となる。
【００９５】
次に、本実施の形態の符号化における符号化側ＭＥ処理（ステップＳ２０３）における詳細な動作の一例を、図１１のフローチャートを用いて説明する。図１１の例では、符号化側ＭＥによって、総コスト値は同等であるが、異なる符号化側ＭＶであるものを抽出できるような処理となっている。
【００９６】
まず、符号化側動き推定部１０３は、所定の候補数に基づいて、第１のｍｖ候補数を設定する（ステップＳ５０１）。その後、第１のＳＡＤまたはＳＡＴＤ（以下、ＳＡ(Ｔ)Ｄと略記する）の変動閾値を設定する（ステップＳ５０２）。その後、予測動きベクトルｐｍｖを利用する処理（ステップＳ５０３〜ステップＳ５０６）と、予測動きベクトルｐｍｖを利用しない処理（ステップＳ５０７〜ステップＳ５１０）に分岐する。
【００９７】
予測動きベクトルｐｍｖを利用する処理では、まず、第１の探索幅を設定し、探索範囲を求める（ステップＳ５０３）。次に、予測動きベクトルｐｍｖを利用する第１のＭＥを行い、第１の動きベクトルｍｖ候補を取得する（ステップＳ５０４）。ここで、取得する動きベクトルｍｖ候補は、ＳＡ（Ｔ）Ｄの変動閾値の範囲内で、もっとも値の小さいものから順番に、第１の動きベクトルｍｖ候補数だけ取得するようにすればよい。その後、取得した第１のｍｖ候補と、予測動きベクトルｐｍｖから、第１の残差動きベクトルｍｖｄ候補を求める（ステップＳ５０５）。そして、求められた第１の残差動きベクトルｍｖｄ候補のコストをそれぞれ計算する（ステップＳ５０６）ことで、予測動きベクトルｐｍｖを利用する処理は終了する。
【００９８】
予測動きベクトルｐｍｖを利用しない処理では、まず、第１の探索幅を設定し、探索範囲を求める（ステップＳ５０７）。次に、予測動きベクトルｐｍｖを利用しない第２のＭＥを行い、第２の動きベクトルｍｖ候補を取得する（ステップＳ５０８）。ここで、取得する動きベクトルｍｖ候補は、ＳＡ（Ｔ）Ｄの変動閾値の範囲内で、もっとも値の小さいものから順番に、第２のｍｖ候補数だけ取得するようにすればよい。その後、予測動きベクトルｐｍｖを利用しないため、取得した第２の動きベクトルｍｖ候補をそのまま第２の残差動きベクトルｍｖｄ候補とする（ステップＳ５０９）。そして、求められた第２の残差動きベクトルｍｖｄ候補のコストをそれぞれ計算する（ステップＳ５１０）ことで、予測動きベクトルｐｍｖを利用しない処理が終了する。
【００９９】
以上のような処理を行うことで、より柔軟な符号化側ＭＶを取得することが可能となり、符号化側残差動きベクトルｍｖｄのコスト値が小さいものを重要視してその後の処理を行いたい場合や、多少の情報量を残差動きベクトルｍｖｄに割いたとしても、より品質の良い参照領域を特定してその後の処理を行いたい場合など、柔軟に対応することが可能となる。
【０１００】
次に、本実施の形態の符号化における復号側ＭＥ処理（ステップＳ２０９）における詳細な動作の一例を、図１２のフローチャートを用いて説明する。図１２の例では、復号側ＭＥによって、総コスト値は同等であるが、異なる復号側ＭＶであるものを抽出できるような処理となっている。
【０１０１】
まず、復号側動き推定部１０４は、所定の候補数に基づいて、第２の動きベクトルｍｖ候補数を設定する（ステップＳ６０１）。その後、第２のＳＡ（Ｔ）Ｄの変動閾値を設定する（ステップＳ６０２）。次に、第２の探索幅を設定し、探索範囲を求める（ステップＳ６０３）。次に、テンプレートを利用する復号側ＭＥを行い（ステップＳ６０４）、第３の動きベクトルｍｖ候補を取得する（ステップＳ６０５）ことで、処理が終了する。
【０１０２】
（実施の形態２）
次に、実施の形態２に係る画像復号装置について説明する。実施の形態２に係る画像復号装置は、実施の形態１によって生成された、多重化後の符号化ビット列を取得し、復号する。
【０１０３】
図１４は、実施の形態２に係る画像復号装置１４００の各構成要素１４０１〜１４１１間の基本的な接続関係を示す図である。
【０１０４】
実施の形態２に係る画像復号装置１４００は、入力部１４０１、蓄積部１４０２、多重化分離部１４０３、エントロピー復号部１４０４、復号側動き推定部１４０５、動きベクトル情報構成部１４０６、動き補償部１４０７、加算部１４０８、逆量子化部１４０９、逆直交変換部１４１０、および出力部１４１１を有する。また、図１４に図示していないが、図１５のような復号制御部１５１２を更に有してもよい。以下に、各部の詳細を説明する。
【０１０５】
入力部１４０１は、例えば、図１４に示されている伝送装置１４３１、記録装置１４３２、記録媒体１４３３、蓄積装置１４３４等から、実施の形態２に係る復号により復号可能な符号化ビット列を取得し、多重化分離部１４０３に供給する。
【０１０６】
蓄積部１４０２は、図１の蓄積部１０２と同等の機能を有していれば良いため、説明を省略する。
【０１０７】
多重化分離部１４０３は、入力部１４０１から符号化ビット列を取得し、所定の多重化分離処理を行うことにより、多重化後の符号化ビット列を取得する。そして、所定の構文構造に基づいて符号化で利用した各種パラメータ情報や、符号化モード情報を特定するための識別情報を特定しながら多重化分離を行う。そして、多重化後の符号化ビット列から、各種の符号化パラメータ情報、複合残差動きベクトル情報ｈ−ｍｖｄ、量子化後情報、ＭＥモード情報の符号化ビット列、探索幅情報の符号化ビット列、探索精度情報の符号化ビット列等の多重化分離後の符号化ビット列を取得する。
【０１０８】
ここで、多重化分離部１４０３は、上述の多重化分離を行う際に、取得した符号化ビット列内に、図１３に示した上述のビット列１３０３を含むか否か検出し、実施の形態２に係る復号により復号可能であるかを判別してもよい。同様に、図１３に示した上述のビット列１３０６およびビット列１３０９のように、より細かい処理単位で制御するために含まれたビット列を含むか否か検出し、実施の形態２に係る復号によって復号可能であるか否かを判別してもよい。また、多重化分離部１４０３は、多重化分離後の符号化ビット列をエントロピー復号部１４０４に供給する。
【０１０９】
エントロピー復号部１４０４は、多重化分離部１４０３から、多重化分離後の符号化ビット列を取得し、所定のエントロピー復号を行う。エントロピー復号部１４０４は、所定のエントロピー復号によって、少なくとも複合残差動きベクトル情報ｈ−ｍｖｄ、量子化後情報、ＭＥモード情報、探索幅情報、探索精度情報を生成し、複合残差動きベクトル情報ｈ−ｍｖｄ、探索幅情報、探索精度情報を動きベクトル情報構成部１４０６に供給し、量子化後情報を逆量子化部１４０９に供給する。
【０１１０】
動きベクトル情報構成部１４０６は、エントロピー復号部１４０４から、複合残差動きベクトル情報ｈ−ｍｖｄ、探索幅情報、探索精度情報を取得する。また、動きベクトル情報構成部１４０６は、複合残差動きベクトル情報ｈ−ｍｖｄから、復号側初期ＭＶおよび復号側拡張ＭＶを生成し、復号側動き推定部１４０５に供給する。また、動きベクトル情報構成部１４０６は、取得した探索幅情報、探索精度情報を、必要に応じて、復号側動き推定部１４０５に供給する。また、動きベクトル情報構成部１４０６は、復号側動き推定部１４０５から、最終ＭＶを取得し、動き補償部１４０７に供給する。
【０１１１】
復号側動き推定部１４０５は、図１の復号側動き推定部１０４と同等の機能を有していれば良いため、説明を省略する。
【０１１２】
動き補償部１４０７は、図１の動き補償部１０６と同等の機能を有していればよいため、説明を省略する。
【０１１３】
加算部１４０８は、図１の加算部１１３と同等の機能を有していればよいため、説明を省略する。
【０１１４】
逆量子化部１４０９は、エントロピー復号部１４０４から、量子化後情報を取得する。その他の機能は、図１の逆量子化部１１１と同等の機能を有していればよいため、説明を省略する。
【０１１５】
逆直交変換部１４１０は、図１の逆直交変換部１１２と同等の機能を有していればよいため、説明を省略する。
【０１１６】
出力部１４１１は、蓄積部１４０２から復号ピクチャを取得し、出力部１４１１に接続されている外部の機器に対して、復号ピクチャを供給する。例えば、図１４に示す表示装置１４４１が画像復号装置１４００に接続されていれば、復号結果である復号ピクチャを表示するように構成することができる。また、図１４に示す伝送装置１４４２が画像復号装置１４００に接続されていれば、実施の形態２に係る復号により生成された復号後の復号ピクチャを、ネットワークを介して、外部の受信装置に伝送するように構成することができる。また、図１４に示す記録装置１４４３、記録媒体１４４４、蓄積装置１４４５等が画像復号装置１４００に接続されていれば、実施の形態２に係る復号により生成された復号結果である復号ピクチャを、記録、保存、持ち出しができるように構成することができる。
【０１１７】
復号制御部１４１２は、図１４に示すような実施の形態２に係る画像復号装置１４００を構成する各部の動作状態を監視し、各部の復号動作や入出力を制御する。
【０１１８】
図１６は、実施の形態２に係る画像復号装置１４００の基本動作を示すフローチャートである。まず、復号制御部１４１２は、ユーザ等から復号開始要求を受けると、各部に対して復号開始指令を送る。それに応じて、入力部１４０１は、例えば、図１４に示した伝送装置１４３１、記録装置１４３２、記録媒体１４３３、蓄積装置１４３４等から、実施の形態２に係る復号により復号可能な符号化ビット列を取得し（ステップＳ３０１）、多重化分離部１４０３に供給する。
【０１１９】
その後、多重化分離部１４０３は、入力部１４０１から符号化ビット列を取得し、所定の構文構造に基づいて、多重化分離を行い（ステップＳ３０２）、多重化分離後の符号化ビット列をエントロピー復号部１４０４に供給する。
【０１２０】
次に、エントロピー復号部１４０４は、多重化分離部１４０３から、多重化分離後の符号化ビット列を取得し、所定のエントロピー復号を行う（ステップＳ３０３）。これにより、少なくとも複合残差動きベクトル情報ｈ−ｍｖｄ、量子化後情報、ＭＥモード情報、探索幅情報、探索精度情報を生成し、複合残差動きベクトル情報ｈ−ｍｖｄ、探索幅情報、探索精度情報を動きベクトル情報構成部１４０６に供給し、量子化後情報を逆量子化部１４０９に供給する。
【０１２１】
その後、逆量子化部１４０９は、エントロピー復号部１４０４から、量子化後情報を取得し、所定の逆量子化を行う（ステップＳ３０４）。この処理により、量子化後の直交変換係数情報を生成し、逆直交変換部１４１０に供給する。
【０１２２】
その後、逆直交変換部１４１０は、逆量子化部１４０９から、量子化後の直交変換係数情報を取得し、所定の逆直交変換を行う（ステップＳ３０５）。この処理により、復号残差情報を生成し、加算部１４０８に供給する。
【０１２３】
また、動きベクトル情報構成部１４０６は、エントロピー復号部１４０４から、複合残差動きベクトル情報ｈ−ｍｖｄ、探索幅情報、探索精度情報を取得する。その後、動きベクトル情報構成部１４０６は、複合残差動きベクトル情報ｈ−ｍｖｄから、復号側初期ＭＶおよび復号側拡張ＭＶを生成し、復号側動き推定部１４０５に供給する。また、動きベクトル情報構成部１４０６は、取得した探索幅情報、探索精度情報を、復号側動き推定部１４０５に供給する。
【０１２４】
次に、復号制御部１４１２は、復号側動き推定部１４０５に対して復号側動き推定処理開始指令を送り、これを受けて、復号側動き推定部１４０５は、蓄積部１４０２から、局部復号ピクチャおよび参照ピクチャを取得する。その後、復号制御部１４１２は、現在の対象領域を特定するための情報を、復号側動き推定部１４０５に供給し、復号側動き推定部１４０５は、この情報から、復号側対象領域、復号済み領域、参照領域を特定する（ステップＳ３０６）。
【０１２５】
その後、復号側動き推定部１４０５は、動きベクトル情報構成部１４０６から、復号側初期ＭＶ、復号側拡張ＭＶ、探索幅情報、探索精度情報を取得し、本実施の形態の復号におけるＭＥ処理を行う（ステップＳ３０７）ことで、最終ＭＶを生成し、動きベクトル情報構成部１４０６に供給する。
【０１２６】
そして、動きベクトル情報構成部１４０６は、復号側動き推定部１４０５から、最終ＭＶを取得し、動き補償部１４０７に供給する。
【０１２７】
次に、動き補償部１４０７は、動きベクトル情報構成部１４０６から最終ＭＶを取得する。また、動き補償部１４０７は、蓄積部１４０２から参照ピクチャを取得する。動き補償部１４０７は、取得した参照ピクチャ、最終ＭＶに基づいて、所定の動き補償（ＭＣ）処理を行う（ステップＳ３０８）ことにより、予測ピクチャを生成する。その後、動き補償部１４０７は、生成した予測ピクチャを加算部１４０８に供給する。
【０１２８】
次に、加算部１４０８は、動き補償部１４０７から予測ピクチャを取得し、逆直交変換部１４１０から復号残差情報を取得し、取得した予測ピクチャに復号残差情報を加算することにより、復号領域の信号として復号信号を生成し、格納する（ステップＳ３０９）ことで、復号ピクチャを生成する。これを参照ピクチャとして蓄積部１４０２に供給する。
【０１２９】
その後、復号対象ピクチャ全体の復号が完了したかを判定し（ステップＳ３１０）、完了していない場合（ステップＳ３１０  ＮＯ）は、ステップＳ３０３に進み、処理を継続する。また、完了した場合（ステップＳ３１０  ＹＥＳ）、出力部１４１１は、蓄積部１４０２から復号ピクチャを取得し、出力部１４１１に接続されている外部の機器に対して、復号ピクチャを供給することにより、復号ピクチャを出力し、処理を完了する。
【０１３０】
以上のようなステップを経ることで、実施の形態２に係る復号動作が終了する。
【０１３１】
以上、実施の形態２によれば、本発明の符号化により、効率よく符号化して得られた符号化ビット列を取得し、それを正確に効率的に復号することができる。
【０１３２】
次に、本発明の復号におけるＭＥ処理（ステップＳ３０７）における詳細な動作の一例を、図１７のフローチャートを用いて説明する。
【０１３３】
まず、復号側動き推定部１４０５は、動きベクトル情報構成部１４０６から、初期ＭＶを取得し、設定する（ステップＳ４０１）。また、探索精度情報、探索幅情報を取得し、復号側ＭＥの探索精度を設定するとともに、探索幅情報から、探索範囲を特定し、設定する（ステップＳ４０２）。その後、所定の復号側ＭＥを行う（ステップＳ４０３）ことにより、復号側ＭＶを生成し、これを最終ＭＶとして出力する（ステップＳ４０４）ことで、処理が完了する。
【０１３４】
以上述べたように、実施の形態１の画像符号化装置１００は、動画像符号化の動き推定処理において、通常のＭＥと、デコーダ側ＭＥとのハイブリッド構成とし、通常のＭＥで利用する動きベクトル情報を表現するための値の範囲よりも更に制限された範囲の値で表現された動きベクトル情報を生成するように構成したものである。これにより、必要とする動きベクトル情報の取りうる値の範囲をより限定することができ、符号量を抑制する効果がある。また、実施の形態２の画像復号装置１４００は、このような特徴をもつ符号化によって得られた符号化ビット列を取得し、それを正確に効率的に復号することができる。
【０１３５】
更に、通常のＭＥとデコーダ側ＭＥとのハイブリッド動作を制御するための手段を備え、復号側において動作モードを所定の処理単位で識別するためのモード情報を符号化して出力するように構成した。これにより、所定の単位で動作モードを切り替えて、選択できる動作モードの中で最も情報量が少ない動きベクトル情報を生成できる。また、実施の形態２の画像復号装置１４００は、このような特徴をもつ符号化によって得られた符号化ビット列を取得し、それを正確に効率的に復号することができる。
【０１３６】
また、ハイブリッド構成の動作モードの一つとして、所定の検出精度で制限された通常のＭＥで検出された動きベクトル情報によって大まかな位置を特定し、その後、デコーダ側ＭＥを行う動作モードを持ち、この動作モードを所定の処理単位で識別するためのモード情報を符号化出力するように構成した。これにより、動きベクトル情報の情報量が少なくなるように制限した状態でも、デコーダ側ＭＥで不足分を追加の情報量なしに補い、従来と同等の予測ピクチャを生成することで、符号量を抑制する効果がある。また、実施の形態２の画像復号装置１４００は、このような特徴をもつ符号化によって得られた符号化ビット列を取得し、それを正確に効率的に復号することができる。
【０１３７】
また、ハイブリッド構成の動作モードの一つとして、デコーダ側ＭＥでテンプレートによる最適な位置を特定し、その後、特定された位置の周辺で通常のＭＥを行い、少ない情報量の動きベクトル情報を利用して、位置を確定させる動作モードを持ち、この動作モードを所定の処理単位で識別するためのモード情報を符号化出力するように構成した。これにより、デコーダ側ＭＥで情報量なしに得られる動きベクトル情報が、必ずしも十分な精度を満たしていない場合であっても、その後の通常のＭＥで正しい位置を確定させることができるため、従来と同等の予測ピクチャを生成することで、符号量を抑制する効果がある。また、実施の形態２の画像復号装置１４００は、このような特徴をもつ符号化によって得られた符号化ビット列を取得し、それを正確に効率的に復号することができる。
【０１３８】
また、ハイブリッド構成の動作モードとして、所定の回数および所定の組み合わせに基づいて、デコーダ側ＭＥと通常のＭＥを繰り返し行う動作モードを持ち、この動作モードを所定の処理単位で識別するためのモード情報を符号化出力するように構成した。これにより、微調整を行いながら、デコーダ側ＭＥを行うことを繰り返し行うことが可能となり、少ない動きベクトル情報で、より確からしい予測ピクチャを生成するための検出位置を特定できる。また、実施の形態２の画像復号装置１４００は、このような特徴をもつ符号化によって得られた符号化ビット列を取得し、それを正確に効率的に復号することができる。
【０１３９】
さらに、このような複数回の繰り返しによって生成された少なくとも１つの動きベクトル情報を、１つの動きベクトル情報が表現できるビット列に収まるような所定の再結合処理を行うように構成した。これにより、動きベクトル情報をまとめて表現することができるとともに、従来方式で動きベクトル情報を伝送するためのシンタックス構造（表現形式）に合わせることができる。また、実施の形態２の画像復号装置１４００は、このような特徴をもつ符号化によって得られた符号化ビット列を取得し、それを正確に効率的に復号することができる。
【０１４０】
（実施の形態３）
上記実施の形態１および２では、画像符号化装置１００および画像復号装置１４００を、主に、ハードウエアにより構成する例を説明したが、これに限らない。
【０１４１】
図１８は、実施の形態１および２に係る画像符号化装置１００および画像復号装置１４００を、コンピュータを含む情報処理装置１８００によって構成する例を示すブロック図である。実施の形態３に係る情報処理装置１８００は、ＣＰＵに代表される中央処理制御装置１８０３、記録媒体や通信装置１８０６を介して、メモリに代表される一時記憶装置１８０５やＨＤＤに代表される外部記憶装置１８０４に格納された符号化プログラム、復号プログラムにより、上記実施形態１および２の処理をソフトウェア処理により実行してもよい。
【０１４２】
また、本発明の実施の形態１〜３に係る画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および画像復号プログラムの適用される範囲は、動画像を符号化および復号する装置、方法、プログラム、システム等であればよく、特に限定されるものではない。例えば、ＴＶに代表される放送装置、携帯電話、スマートフォン、携帯型音楽プレーヤ、ゲーム装置、テレビ会議装置、監視装置、ＤＶＤ−Ｒ／ＲＷ、ＢＤ−Ｒ／ＲＷ、ＨＤＤ、ＳＤ、ホログラフィックメモリ等の追記および書き換え可能な記録媒体を利用した画像記録再生装置、デジタルカメラやカムコーダといった撮像記録再生装置、オーサリング等の画像記録編集装置、動画像の配信装置等に適用しても構わない。
【０１４３】
以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ＲＯＭ（リード・オンリ・メモリ）やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【０１４４】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０１４５】
１００  画像符号化装置、  １０１  入力部、  １０２  蓄積部、  １０３  符号化側動き推定部、  １０４  復号側動き推定部、  １０５  動きベクトル情報構成部、  １０６  動き補償部、  １０７  減算部、  １０８  直交変換部、  １０９  量子化部、  １１０  エントロピー符号化部、  １１１  逆量子化部、  １１２  逆直交変換部、  １１３  加算部、  １１４  多重化部、  １１５  出力部、  １３１  撮像装置、  １３２  伝送装置、  １３３  記録装置、  １３４  記録媒体、  １３５  蓄積装置、  １４１  伝送装置、  １４２  記録装置、  １４３  記録媒体、  １４４  蓄積装置、  １１６  符号化制御部、  １４００  画像復号装置、  １４０１  入力部、  １４０２  蓄積部、  １４０３  多重化分離部、  １４０４  エントロピー復号部、  １４０５  復号側動き推定部、  １４０６  動きベクトル情報構成部、  １４０７  動き補償部、  １４０８  加算部、  １４０９  逆量子化部、  １４１０  逆直交変換部、  １４１１  出力部、  １４３１  伝送装置、  １４３２  記録装置、  １４３３  記録媒体、  １４３４  蓄積装置、  １４４１  表示装置、  １４４２  伝送装置、  １４４３  記録装置、  １４４４  記録媒体、  １４４５  蓄積装置、  １４１２  復号制御部、  １８００  情報処理装置、  １８０１  入力装置、  １８０２  出力装置、  １８０３  中央処理制御装置、  １８０４  外部記憶装置、１８０５  一時記憶装置、  １８０６  通信装置、  １８０７  通信バス。
【図１】
2012209705.tif 000003
【図２】
2012209705.tif 000004
【図９】
2012209705.tif 000005
【図１０】
2012209705.tif 000006
【図１１】
2012209705.tif 000007
【図１２】
2012209705.tif 000008
【図１３】
2012209705.tif 000009
【図１４】
2012209705.tif 000010
【図１５】
2012209705.tif 000011
【図１６】
2012209705.tif 000012
【図１７】
2012209705.tif 000013
【図１８】
2012209705.tif 000014
【図３】
2012209705.tif 000015
【図４】
2012209705.tif 000016
【図５】
2012209705.tif 000017
【図６】
2012209705.tif 000018
【図７】
2012209705.tif 000019
【図８】
2012209705.tif 000020