"動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化装置であって、符号化対象ブロックと同一ピクチャ内の前記符号化対象ブロックと隣接する符号化済みのブロック及び符号化済みの別のピクチャ内の前記符号化対象ブロックと同一位置のブロックの少なくとも一方の動きベクトルから複数の予測動きベクトルの候補を生成し、前記予測動きベクトルの候補を表すインデックスを付与する予測動きベクトル候補生成部と、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルの候補から差分動きベクトルを計算し、前記差分動きベクトルから計算される符号量及び前記予測動きベクトルの候補のインデックスに基づいて前記予測動きベクトルの候補を削除する予測動きベクトル候補削除部と、削除後に残存する予測動きベクトルの候補の中から予測動きベクトルを選択する予測動きベクトル判定部とを備えることを特徴とする動画像符号化装置。前記予測動きベクトル候補削除部による前記予測動きベクトルの候補の削除に先だって、前記予測動きベクトル候補生成部にて生成された前記予測動きベクトルの候補の中から同一の値を持つ予測動きベクトルの候補を判定して削除する予測動きベクトル候補同一判定部をさらに備えることを特徴とする請求項1に記載の動画像符号化装置。前記予測動きベクトル判定部は、前記差分動きベクトルの符号量が同じ前記予測動きベクトルの候補同士では、前記予測動きベクトルの候補のインデックスの大小比較により選択すべき予測動きベクトルの判定を行うことを特徴とする請求項1または2に記載の動画像符号化装置。動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化方法であって、符号化対象ブロックと同一ピクチャ内の前記符号化対象ブロックと隣接する符号化済みのブロック及び符号化済みの別のピクチャ内の前記符号化対象ブロックと同一位置のブロックの少なくとも一方の動きベクトルから複数の予測動きベクトルの候補を生成し、前記予測動きベクトルの候補を表すインデックスを付与する予測動きベクトル候補生成ステップと、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルの候補から差分動きベクトルを計算し、前記差分動きベクトルから計算される符号量及び前記予測動きベクトルの候補のインデックスに基づいて前記予測動きベクトルの候補を削除する予測動きベクトル候補削除ステップと、削除後に残存する予測動きベクトルの候補の中から予測動きベクトルを選択する予測動きベクトル判定ステップとを備えることを特徴とする動画像符号化方法。コンピュータに、動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化させるための動画像符号化プログラムであって、符号化対象ブロックと同一ピクチャ内の前記符号化対象ブロックと隣接する符号化済みのブロック及び符号化済みの別のピクチャ内の前記符号化対象ブロックと同一位置のブロックの少なくとも一方の動きベクトルから複数の予測動きベクトルの候補を生成し、前記予測動きベクトルの候補を表すインデックスを付与する予測動きベクトル候補生成ステップと、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルの候補から差分動きベクトルを計算し、前記差分動きベクトルから計算される符号量及び前記予測動きベクトルの候補のインデックスに基づいて前記予測動きベクトルの候補を削除する予測動きベクトル候補削除ステップと、削除後に残存する予測動きベクトルの候補の中から予測動きベクトルを選択する予測動きベクトル判定ステップとをコンピュータに実行させることを特徴とする動画像符号化プログラム。従来の動きベクトルの予測方法では、予測の為の動きベクトルが1つしかないので、予測が当たらないと、動きベクトルの差分が大きくなり、発生符号量が増加する課題があった。この課題を解決する為に、ISO/IEC及びITU-Tにおける動画像符号化の規格作業の中で新たな動きベクトルの予測手法が検討されている。この手法は、符号化済みの周囲の隣接ブロックの動きベクトルについて、それぞれを予測動きベクトルの候補として適用した場合の符号量を評価する基準とし、符号量が最も小さくなる動きベクトルを予測動きベクトルとして採用し、動きベクトルを採用した隣接ブロックに関する付加情報を符号化し伝送するものである。しかしながら、予測動きベクトルの候補を増やした結果、ブロック毎に予測動きベクトルの参照先を表すインデックスを符号化する必要があり、符号化効率を損ねることも考えられる。本発明はこうした状況に鑑みてなされたものであり、その目的は、予測動きベクトルの候補を減少させることにより、予測動きベクトルの参照先を表すインデックスの符号量の削減を図って符号化効率を向上させる技術を提供することにある。上記課題を解決するために、本発明のある態様の動画像符号化装置は、動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化装置であって、符号化対象ブロックと同一ピクチャ内の前記符号化対象ブロックと隣接する符号化済みのブロック及び符号化済みの別のピクチャ内の前記符号化対象ブロックと同一位置のブロックの少なくとも一方の動きベクトルから複数の予測動きベクトルの候補を生成し、前記予測動きベクトルの候補を表すインデックスを付与する予測動きベクトル候補生成部120と、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルの候補から差分動きベクトルを計算し、前記差分動きベクトルから計算される符号量及び前記予測動きベクトルの候補のインデックスに基づいて前記予測動きベクトルの候補を削除する予測動きベクトル候補削除部122と、削除後に残存する予測動きベクトルの候補の中から予測動きベクトルを選択する予測動きベクトル判定部123とを備える。本発明の別の態様は、動画像符号化方法である。この方法は、動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化方法であって、符号化対象ブロックと同一ピクチャ内の前記符号化対象ブロックと隣接する符号化済みのブロック及び符号化済みの別のピクチャ内の前記符号化対象ブロックと同一位置のブロックの少なくとも一方の動きベクトルから複数の予測動きベクトルの候補を生成し、前記予測動きベクトルの候補を表すインデックスを付与する予測動きベクトル候補生成ステップと、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルの候補から差分動きベクトルを計算し、前記差分動きベクトルから計算される符号量及び前記予測動きベクトルの候補のインデックスに基づいて前記予測動きベクトルの候補を削除する予測動きベクトル候補削除ステップと、削除後に残存する予測動きベクトルの候補の中から予測動きベクトルを選択する予測動きベクトル判定ステップとを備える。なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。本発明によれば、複数の予測動きベクトルの中から最適な動きベクトルを選択し、伝送する差分動きベクトルの発生符号量を削減させるとともに、予測動きベクトルの候補数を削減可能となる為、予測動きベクトルを表すインデックスに必要な符号量を削減させて、符号化効率を向上させることができる。本発明の実施の形態に係る動画像符号化装置及び動画像復号装置について図面を参照して説明する。実施の形態では、動画像の符号化に関し、特にピクチャを矩形ブロックに分割し、ピクチャ間でブロック単位に動き推定、補償を行う動画像符号化における動きベクトルの符号化効率を向上させる為に、既符号化済みの周囲のブロック等の動きベクトルから予測を行い、処理対象のブロックの動きベクトルとその予測値との差分ベクトルを符号化することによって符号量を削減する動きベクトルの予測方法を用いる。図1は実施の形態に係る動画像符号化装置の構成を示すブロックである。実施の形態の動画像符号化装置は、動きベクトル検出部101、減算部102、直交変換量子化部103、可変長符号化部104、逆量子化逆直交変換部105、動き補償部106、重み付き予測部107、加算部108、デブロッキングフィルタ部109、メモリ110、および予測動きベクトル選択部111を備える。動きベクトル検出部101は、ピクチャ間でブロック単位にマッチングを行い動きベクトルを検出し、検出された動きベクトルを予測動きベクトル選択部111に与える。予測動きベクトル選択部111は、メモリ110に記憶されている既に符号化された画像の動き情報を用いて、動きベクトル検出部101が検出した動きベクトルを予測するための最適な予測動きベクトルを選択する。予測動きベクトル選択部111の詳細な構成と動作は後述する。動き補償部106は、動きベクトル検出部101により検出された動きベクトルを用いて予測画像を生成する。重み付き予測部107は、動き補償部106により生成された予測画像に適応的に重み係数を掛け算して最終的な予測画像を生成し、減算部102と加算部108に与える。減算部102は、符号化する画像と予測画像との引き算を行い残差信号を生成し、直交変換量子化部103に与える。直交変換量子化部103は、残差信号に対して直交変換及び量子化を行い変換信号を生成し、可変長符号化部104と逆量子化逆直交変換部105に与える。可変長符号化部104は、直交変換及び量子化された残差信号をエントロピー符号化する。可変長符号化部104は、予測動きベクトル選択部111によって予測された動きベクトルに関する情報も符号化し、符号化画像と符号化された動きベクトルに関する情報とを含むビットストリームを出力する。逆量子化逆直交変換部105は、直交変換量子化部103から受け取った変換信号を逆量子化及び逆直交変換して元の残差信号に戻す。加算部108は、予測画像と残差信号を加算して復号画像を生成し、デブロッキングフィルタ部109に与える。デブロッキングフィルタ部109は、復号画像に対して符号化によるブロック歪を減少させる処理を施し、メモリ110に格納する。メモリ110は、復号画像や既に符号化された画像の情報を記憶する。図2は図1の動画像符号化装置に対応した実施の形態に係る動画像復号装置の構成を示すブロックである。実施の形態の動画像復号装置は、可変長復号部201、逆量子化逆直交変換部202、動き補償部203、重み付き予測部204、加算部205、デブロッキングフィルタ部206、メモリ207、および予測動きベクトル選択部208を備える。図2の動画像復号装置の復号処理は、図1の動画像符号化装置の内部に設けられている復号処理に対応するものであるから、図2の逆量子化逆直交変換部202、動き補償部203、重み付き予測部204、加算部205、デブロッキングフィルタ部206、メモリ207、および予測動きベクトル選択部208の各構成は、図1の動画像符号化装置の逆量子化逆直交変換部105、動き補償部106、重み付き予測部107、加算部108、デブロッキングフィルタ部109、メモリ110、および予測動きベクトル選択部111の各構成とそれぞれ対応する機能を有する。可変長復号部201は、ビットストリームを復号して予測残差信号、動きベクトルに関する情報を出力し、予測残差信号を逆量子化逆直交変換部202に与え、動きベクトルに関する情報を予測動きベクトル選択部208と動き補償部203に与える。逆量子化逆直交変換部202は、可変長復号部201で復号された予測残差信号に対して逆直交変換及び逆量子化を行う。加算部205は、逆量子化逆直交変換部202により逆変換された予測残差成分と、重み付き予測部204により算出された予測画像とを加算することにより、画像信号を復号し、デブロッキングフィルタ部206に与える。デブロッキングフィルタ部206は、復号画像に対して符号化によるブロック歪を減少させる処理を施し、メモリ207に格納する。予測動きベクトル選択部208は、メモリ207に記憶されている既に復号された画像の動き情報を用いて、復号対象ブロックの復号された動きベクトルを予測するための最適な予測動きベクトルを選択する。予測動きベクトル選択部208の詳細な構成と動作は後述する。動き補償部203は、復号対象ブロックの復号された動きベクトルを用いて予測画像を生成する。重み付き予測部204は、動き補償部203により生成された予測画像に適応的に重み係数を掛け算して最終的な予測画像を生成し、加算部205に与える。実施の形態に係る動きベクトルの予測方法は、図1の動画像符号化装置の予測動きベクトル選択部111及び図2の動画像復号装置の予測動きベクトル選択部208において実施される。[実施例1]動きベクトルの予測方法の実施例を説明する前に、本実施例において使用する用語を説明しておく。符号化ブロックについて実施の形態では、図3に示されるように、画面内を同一サイズの正方の矩形ブロックにて均等分割する。このブロックを符号化ブロックと呼び、符号化及び復号を行う際の処理の基本となる。符号化ブロックは画面内のテクスチャに応じて、符号化処理を最適にすべく、符号化ブロック内を4分割して、ブロックサイズの小さい符号化ブロックにすることが出来る。図3で示される画面内を均等サイズで分割される符号化ブロックを最大符号化ブロックと呼び、その内部を符号化条件に応じて4分割したものを総じて符号化ブロックとする。符号化ブロックをこれ以上4分割出来ない最小のサイズとなる符号化ブロックを最小符号化ブロックと呼ぶこととする。予測ブロックについて画面内をブロックに分割して動き補償を行う場合、動き補償のブロックサイズをより小さくした方が、よりきめ細かい予測を行うことが出来ることから、いくつかのブロックサイズの中から最適なものを選択して、ブロック内部を分割して動き補償を行う仕組みを取り入れている。この動き補償を行うブロックを予測ブロックと呼ぶ。予測ブロックは符号化ブロックと同一のサイズで表され、動き補償に応じて、予測ブロック内部を分割せず1ブロックとみなす場合を最大とし、水平或いは垂直方向に2分割したもの、水平と垂直の均等分割により4分割したものに分けられる。分割後のサイズに応じて、分割タイプに対応したモードが定義されており、図4に示される。パーティションについて予測ブロックを分割した個々の領域はパーティションと呼ばれる。予測ブロック内部において、パーティションを管理する為に、0から開始する番号を、予測ブロック内部に存在するパーティションに対してジグザグスキャン順に割り当てる。この番号はパーティション番号と呼ばれ、puPartIdxで表される。図4の予測ブロックのパーティションの中に記述された数字は、そのパーティションのパーティション番号を表す。実施形態による動きベクトルの予測方法を図面を用いて説明する。動きベクトルの予測方法は、予測ブロックを構成するパーティション単位に、符号化及び復号の処理の何れでも実施される。符号化の場合、動き補償による画像間符号化が選択された場合に、予測ブロックのパーティション毎に算出された動きベクトルを効率良く符号化する為の予測動きベクトルとして、既に符号化された周囲の予測ブロックのパーティションの動きベクトルの中から選択する際、復号の場合、ビットストリームから復号した情報を利用して、動きベクトルを算出する際、実施される。シンタックスについてまず、本実施例に係る動きベクトルの予測方法を備える動画像符号化装置により符号化される動画像のビットストリームのシンタックスについて説明する。図5は動画像のビットストリームのスライスヘッダーに記述される第1のシンタックスパターンを示す。スライス単位で動き補償による画像間予測を行う場合、即ちスライスタイプがP前方向予測或いはB両予測の場合に、本発明に係る動きベクトルの予測方法を適用するかどうかを示す第1フラグmv_competition_flagが設置される。mv_competition_flagが真1の場合は、同一ピクチャ内で隣接する周囲のパーティションの動きベクトルだけでなく、時間方向で異なるピクチャの中の処理対象のパーティションと同一位置のパーティションの動きベクトルを利用して予測と行うかどうかを示す第2フラグmv_competition_temporal_flagが設置される。更に、スライスタイプがBで且つmv_competition_flagが真1の場合は、処理対象のパーティションが含まれるピクチャの参照ピクチャのリストのうちL0予測或いはL1予測のどちらを使用するかを決定する第3フラグcollocated_from_l0_flagが設置される。図6はスライスの中の予測ブロック単位に記述される第2のシンタックスパターンを示す。予測ブロックの予測モードが画像間予測MODE_INTERの場合、予測ブロック内のパーティション毎に、動きベクトル検出にて求められたパーティションの動きベクトルと予測動きベクトルとの差分動きベクトルmvd_lX[i][j]が設置される。ここで、Xは0或いは1で予測方向を示し、iは予測ブロックの中のパーティション番号、jは差分動きベクトルの成分を表し、j=0はx成分を、j=1はy成分を表す。次に、第1フラグmv_competition_flagが真1で且つ予測動きベクトルの候補の総数が1つを超える場合に、参照する予測動きベクトルの候補のリストのインデックスmvp_idx_lX[i]が設置される。NumMvpCandLX,iは、予測方向LXXは0或いは1でパーティションiの予測動きベクトルの候補の総数を算出する関数を表し、後述にて説明される。このインデックスmvp_idx_lX[i]は動きベクトルの予測方法を実施しない、即ちmv_competition_flagが偽0の場合は符号化されず、ビットストリーム中に記述されない。mv_competition_flagが偽0の場合は従来通りの手法で算出されるので、インデックスmvp_idx_lX[i]により指定する必要が無い為である。また、動きベクトルの予測方法により予測動きベクトルの候補の総数NumMvpCandLX,iが1つの場合にも符号化されない。予測動きベクトルの候補の総数が1つであれば、その1つが予測動きベクトルとなるので、mvp_idx_lx[i]を伝送せずとも参照する予測動きベクトルの候補が確定する為である。符号化における動きベクトルの予測上述のシンタックスに基づき、動画像のビットストリームを符号化する動画像符号化装置において、実施の形態に係る動きベクトルの予測方法の動作を説明する。動きベクトルの予測方法は、スライス単位で動き補償による画像間予測を行う場合、即ちスライスタイプがP前方向予測或いはB両予測の場合で、更に、スライスの中の予測ブロックの予測モードが画像間予測MODE_INTERの予測ブロックのパーティションに適用される。図7は、図1の動画像符号化装置の予測動きベクトル選択部111の詳細な構成を示す図である。図7の太枠線で囲まれる部分は予測動きベクトル選択部111を示している。更に、その内部の太点線で囲まれる部分は後述する動きベクトルの予測方法の動作部を示しており、実施の形態の動画像符号化装置と対応する動画像復号装置にも同様に設置され、符号化と復号で矛盾しない同一の判定結果を得られるようにしている。以下、この図を用いて、符号化における動きベクトルの予測方法を説明する。予測動きベクトル選択部111は、予測動きベクトル候補生成部120、予測動きベクトル候補同一判定部121、予測動きベクトル候補削除部122、予測動きベクトル判定部123、減算部124、および予測動きベクトル選択部125を含む。予測動きベクトル候補生成部120は、符号化後に復号してメモリ110に記録されていた、符号化対象ブロックと同一ピクチャ内の符号化対象ブロックと隣接する符号化済みのパーティション及び符号化済みの異なるピクチャ内の符号化対象ブロックと同一位置に存在するパーティション等の動きベクトルをメモリ110から読み出す。予測動きベクトル候補生成部120は、このようにしてメモリ110から読み出された符号化済みの他のブロックの動きベクトルから少なくとも2つ以上の予測動きベクトルの候補mvpListLX[i]iはリストmvpListLXにふられたインデックスを生成し、予測動きベクトルの候補を格納するリストmvpListLXに格納する。次に、予測動きベクトル候補同一判定部121は、リストmvpListLXに格納された予測動きベクトルの候補の中から同一の動きベクトルの値をもつものを判定し、同一の動きベクトル値をもつと判定された予測動きベクトルの候補について一つを残してそれ以外をリストmvpListLXから削除して、予測動きベクトルの候補が重複しないようにし、リストmvpListLXを更新する。予測動きベクトル候補同一判定部121は、更新されたリストmvpListLXを予測動きベクトル選択部125と予測動きベクトル候補削除部122に与える。一方、動きベクトル検出部101にて予測ブロックのパーティション毎に動きベクトルmvが検出される。動きベクトルmvは更新されたリストmvpListLXの予測動きベクトルの候補とともに予測動きベクトル選択部125に入力される。予測動きベクトル選択部125は、動きベクトルmvとリストmvpListLXの中に格納された各予測動きベクトルの候補mvpListLX[i]との差分をとり、その差分を符号化したときの発生符号量が最小となる予測動きベクトルの候補mvpListLX[i]をmin_mvpとする。リストmvpListLXの中で最小の発生符号量となる予測動きベクトルの候補が複数存在する場合には、リストmvpListLXの中のインデックスiが小さい番号で表される予測動きベクトルの候補mvpListLX[i]を最適予測動きベクトルmin_mvpとする。予測動きベクトル選択部125は、選択された最適予測動きベクトルmin_mvpを記録しておく。予測動きベクトル選択部125は、選択された最適予測動きベクトルmin_mvpを予測動きベクトル判定部123に与える。予測動きベクトル選択部125は、選択されたmin_mvpと動きベクトルmvとの差分を算出し、差分動きベクトルmvdとして、予測動きベクトル候補削除部122に与える。予測動きベクトル候補削除部122は、更新されたリストmvpListLXの中の予測動きベクトルの候補と差分動きベクトルmvdを受け取り、予測動きベクトルの候補の削除処理により、リストmvpListLXから一部の予測動きベクトルの候補を削除する。具体的には、予測動きベクトル候補削除部122は、予測動きベクトルの候補の一つを仮の予測動きベクトルと設定し、第1の差分動きベクトルmvdと仮の予測動きベクトルとを加算して仮の動きベクトルを生成し、その仮の動きベクトルと、仮の予測動きベクトルとは異なる予測動きベクトルの候補とから第2の差分動きベクトルを計算し、第1の差分動きベクトルmvdの符号量よりも第2の差分動きベクトルの符号量が小さい場合、仮の予測動きベクトルは真の予測動きベクトルではないと判定し、仮の予測動きベクトルとして設定された予測動きベクトルの候補を削除する。第1の差分動きベクトルmvdの符号量と第2の差分動きベクトルの符号量が同じであれば、予測動きベクトルの候補のインデックスの小さい方を選択し、他方を削除する。予測動きベクトルの候補の削除処理の詳細は後述する。予測動きベクトル候補削除部122は、候補削除処理の後、リストmvpListLXに残った予測動きベクトルの候補を予測動きベクトル判定部123に与える。このようにして予測動きベクトル判定部123には、リストmvpListLXの中に残った予測動きベクトルの候補と、予測動きベクトル選択部125にて選択された、差分動きベクトルの発生符号量が最小となる最適予測動きベクトルmin_mvpとが入力される。図8は、予測動きベクトル判定部123の判定処理を示すフローチャートである。最初にリストmvpListLXに残った予測動きベクトルの候補が1つであるかどうかを判定するS900。1つの場合、リストmvpListLXに残った予測動きベクトルの候補を予測動きベクトルmvpとして出力し、終了する。リストmvpListLXの中に予測動きベクトルの候補が1つより多く残った場合には、記録しておいた最適予測動きベクトルの候補min_mvpと同じ値を持つ予測動きベクトルの候補をリストmvpListLXから検出するS901。検出された予測動きベクトルの候補に該当するリストmvpListLXのインデックスmvp_idxを検出しS902、予測動きベクトルの候補min_mvpを予測動きベクトルmvpとして、インデックスmvp_idxとともに出力する。最後に減算部124は、動きベクトルmvと選択された予測動きベクトルmvpとの差分を計算し、差分動きベクトルmvdを出力する。こうして出力された差分動きベクトルmvdと必要であれば予測動きベクトルを表すインデックスmvp_idxの符号化が行われ、差分動きベクトルmvdとインデックスmvp_idxの発生符号量とともに、動きベクトルmvにより参照される予測画像との動き補償から算出される差分画像の発生符号量とが加算された総発生符号量が算出される。また、こうした差分画像を符号化後に、画質評価の為に復号し、符号化により生じる元画像との誤差を表す比率として符号化歪が算出される。これら総発生符号量と符号化歪とを動き補償毎に比較することで、最も少ない発生符号量と符号化歪となる予測ブロックサイズが決定される。決定された予測ブロックサイズに対する動きベクトルmvに対して、上述した動きベクトルの予測方法が行われ、予測動きベクトルを表すインデックスが、予測ブロック単位の第2のシンタックスパターンで表されるフラグmvp_idx_lX[i]として符号化される。尚、ここで算出される発生符号量は、符号化過程をシミュレートしたものであることが望ましいが、後述の説明で使用する図24、図25に示した符号量で代用し、簡便に近似したり、概算することも可能である。以上のようにして、パーティション毎に差分動きベクトルと必要であれば予測動きベクトルを表すインデックスを用いて動きベクトルを予測する本実施の形態の予測方法を使用する場合には、スライスヘッダーに記載される第1フラグmv_competition_flag、第2フラグmv_competition_temporal_flag及び第3フラグcollocated_from_l0_flagが設定され、符号化される。復号における動きベクトルの予測上述のシンタックスに基づき、符号化された動画像のビットストリームを復号する動画像復号装置において、本発明に係る動きベクトルの予測方法の動作を説明する。最初に、可変長復号部201にて復号されるビットストリームの各フラグについて説明する。ビットストリームのスライスヘッダーの中に記述されているフラグから、スライスの中の予測ブロックに対して動きベクトルの予測方法を実施するか否かを判定する。スライスタイプがP或いはBの場合、フラグmv_competition_flagを判定し、mv_competition_flagが真1の場合は本発明に係る動きベクトルの予測方法が実施され、mv_competition_flagが偽0の場合は従来通りの手法で算出される。更にmv_competition_flagが真1の場合は、フラグmv_competition_temporal_flagにより、時間方向に異なるピクチャで処理対象のパーティションと同一位置のパーティションの動きベクトルの導出が実施される。スライスタイプがBで、且つmv_competition_flagが真1の場合は、フラグcollocated_from_l0_flagにより、処理対象のパーティションが含まれるピクチャの参照ピクチャのリストのうちL0予測或いはL1予測のどちらを使用するか選択する。次に予測ブロックのシンタックスの中から、予測ブロックの中のパーティション毎に、参照する予測動きベクトルの候補のリストのインデックスmvp_idx_lX[i]が読み出される。ここで、Xは0或いは1であり、iは予測ブロックの中のパーティション番号を表す。実施の形態に係る動きベクトルの予測方法が実施される場合、図2の動画像復号装置の予測動きベクトル選択部208にて処理が行われる。図9は、実施の形態の動画像符号化装置に対応する図2の動画像復号装置の予測動きベクトル選択部208の詳細な構成を示す図である。図9の太枠線で囲まれる部分は予測動きベクトル選択部208を示している。更に、その内部の太点線で囲まれる部分は後述する動きベクトルの予測方法の動作部を示しており、対応する動画像符号化装置にも同様に設置され、符号化と復号で矛盾しない同一の判定結果を得られるようにしている。以下、この図を用いて、復号における動きベクトルの予測方法を説明する。予測動きベクトル選択部208は、予測動きベクトル候補生成部220、予測動きベクトル候補同一判定部221、予測動きベクトル候補削除部222、予測動きベクトル判定部223、および加算部224を含む。予測動きベクトル候補生成部220は、復号してメモリ207に記録されていた、復号対象ブロックと同一ピクチャ内の復号対象ブロックと隣接する復号済みのパーティション及び復号済みの異なるピクチャ内の復号対象ブロックと同一位置に存在するパーティション等の動きベクトルをメモリ207から読み出す。予測動きベクトル候補生成部220は、このようにしてメモリ207から読み出された復号済みの他のブロックの動きベクトルから少なくとも2つ以上の予測動きベクトルの候補mvpListLX[i]iはリストmvpListLXにふられたインデックスを生成し、予測動きベクトルの候補を格納するリストmvpListLXに格納する。次に、予測動きベクトル候補同一判定部221は、リストmvpListLXに格納された予測動きベクトルの候補の中から同一の動きベクトルの値をもつものを判定し、同一の動きベクトル値をもつと判定された予測動きベクトルの候補について一つを残してそれ以外をリストmvpListLXから削除して、予測動きベクトルの候補が重複しないようにし、リストmvpListLXを更新する。予測動きベクトル候補同一判定部221は、更新されたリストmvpListLXを予測動きベクトル候補削除部222に与える。可変長復号部201にて復号された差分動きベクトルmvdが予測動きベクトル候補削除部222に入力される。予測動きベクトルのインデックスを示すmvp_idxが符号化されている場合は、可変長復号部201にて復号された予測動きベクトルのインデックスmvp_idxが予測動きベクトル判定部223に入力される。予測動きベクトル候補削除部222は、更新されたリストmvpListLXの中の予測動きベクトルの候補と可変長復号部201にて復号された差分動きベクトルmvdを受け取り、予測動きベクトルの候補の削除処理により、リストmvpListLXから一部の予測動きベクトルの候補を削除する。具体的には、予測動きベクトル候補削除部222は、予測動きベクトルの候補の一つを仮の予測動きベクトルと設定し、復号された第1の差分動きベクトルmvdと仮の予測動きベクトルとを加算して仮の動きベクトルを生成し、その仮の動きベクトルと、仮の予測動きベクトルとは異なる予測動きベクトルの候補とから第2の差分動きベクトルを計算し、第1の差分動きベクトルmvdの符号量よりも第2の差分動きベクトルの符号量が小さい場合、仮の予測動きベクトルは真の予測動きベクトルではないと判定し、仮の予測動きベクトルとして設定された予測動きベクトルの候補を削除する。第1の差分動きベクトルmvdの符号量と第2の差分動きベクトルの符号量が同じであれば、予測動きベクトルの候補のインデックスの小さい方を選択し、他方を削除する。予測動きベクトルの候補の削除処理の詳細は後述する。予測動きベクトル候補削除部222は、候補削除処理の後、リストmvpListLXに残った予測動きベクトルの候補を予測動きベクトル判定部223に与える。このようにして予測動きベクトル判定部223には、リストmvpListLXの中に残った予測動きベクトルの候補が入力され、予測動きベクトルのインデックスを示すmvp_idxが符号化されていた場合は、復号された予測動きベクトルのインデックスmvp_idxも入力される。図10は、予測動きベクトル判定部223の判定処理を示すフローチャートである。最初にリストmvpListLXに残った予測動きベクトルの候補が1つであるかどうかを判定するS910。1つの場合、リストmvpListLXに残った予測動きベクトルの候補を予測動きベクトルmvpとして出力する。リストmvpListLXの中に予測動きベクトルの候補が1つより多く残った場合、可変長復号部201にて復号された予測動きベクトルのインデックスmvp_idxが読み込まれるS911。読み込まれたインデックスmvp_idxに該当する予測動きベクトルの候補をリストmvpListLXから検出するS912。検出された予測動きベクトルの候補を予測動きベクトルmvpとして出力する。最後に加算部224は、差分動きベクトルmvdと予測動きベクトルmvpとの加算を計算し、動きベクトルmvを出力する。以上のようにして、パーティション毎に動きベクトルが算出される。この動きベクトルを使用して動き補償により予測画像が生成され、ビットストリームから復号された残差信号と加算されることで復号画像が生成される。尚、予測動きベクトル選択部208の中の予測動きベクトル候補生成部220、予測動きベクトル候補同一判定部221及び予測動きベクトル候補削除部222は、符号化側の予測動きベクトル選択部111の中の予測動きベクトル候補生成部210、予測動きベクトル候補同一判定部211及び予測動きベクトル候補削除部212とそれぞれ同じである。動きベクトルの予測方法実施の形態に係る動きベクトルの予測方法はパーティション単位に図11a、図11bに示される諸過程で実施される。図11aは動画像符号化装置の予測動きベクトル選択部111及び動画像復号装置の予測動きベクトル選択部208とで共通する機能を有する予測動きベクトル候補生成部120及び220、予測動きベクトル候補同一判定部121及び221、ならびに予測動きベクトル候補削除部122及び222の処理の流れを表すフローチャートである。図11bは予測動きベクトル候補生成部120及び220による予測動きベクトル候補の生成の一例を示すフローチャートであり、図11aの[予測動きベクトルの候補を算出S90]の処理の詳細な流れを示すものである。以下、諸過程を順を追って説明する。[隣接する周囲のパーティションから予測動きベクトルの候補を導出S100]この処理における入力は、予測ブロックのパーティションのパーティション番号puPartIdx、および予測ブロックのパーティションの参照ピクチャ番号refIdxLXXは0或いは1であり、参照ピクチャ番号refIdxLXは、複数の参照ピクチャの候補からブロック単位に任意のピクチャを参照して動き補償を行うことから、参照ピクチャを指定するために各ピクチャに割り当てた識別番号である。参照ピクチャ番号には参照するピクチャの復号順序或いは表示順序が割り当てられ、符号化及び復号の際には参照ピクチャ番号からピクチャの順序を指定して参照する。添え字LXは動き補償を行う予測方向を表し、Xには0或いは1が入る。主としてL0予測は前方向予測に、L1予測は後方向予測として使用され、PスライスではL0予測のみ、BスライスではL0、L1の両方の予測が使用出来る。以降の処理において出力に添え字LXが付いている値に対しては、予測ごとに処理を行うことを前提とし、特に説明しないこととする。この処理における出力は周囲のパーティションの動きベクトルmvLXM、および周囲のパーティションが有効か否かを示すフラグavailableFlagLXMであり、添え字Xには予測方向を表す0若しくは1、Mには隣接するパーティション群の領域を表すA,B若しくはCが入る。図12に示されるように、同一ピクチャ内の符号化ブロック内部を動き補償する為に定義される予測ブロックのパーティション図12中の処理対象のパーティションに隣接する周囲のパーティションから予測動きベクトルの候補を導出する。図12中の太点線の円内で表される領域を拡大したものが図13である。図13は、処理対象のパーティションとそれに隣接するパーティションを示す。予測動きベクトルの候補は、処理対象のパーティションの左側に隣接するパーティションAkk=0,...,nA-1から構成されるパーティション群A、真上に隣接するパーティションBkk=0,...,nB-1から構成されるパーティション群B、及びコーナーで隣接するパーティションC0,C1,C2から構成されるパーティション群Cの3つのパーティション群からそれぞれ予測動きベクトルの候補を選出する。ここで、nAは左に隣接するパーティション群の総数、nBは真上に隣接するパーティション群の総数を表す。最初に図14を用いて、左側に隣接するパーティション群Aからの予測動きベクトルの候補mvLXAの選出を説明する。図14の変数M=Aとして、以下の手順で処理する。まず、パーティション群Aの中のパーティション数nAがカウントされるS101。次に、パーティション群Aから予測動きベクトルが選出されるか否かを示すフラグavailableFlagLXAを0、パーティション群Aを代表する動きベクトルmvLXAを0、左側に隣接するパーティションを上から順にカウントするカウンタkを0に設定するS102。パーティション群Aを含む最大符号化ブロックの位置を検出するS103。最大符号化ブロックが有効でない場合、例えば処理対象のパーティションを含む最大符号化ブロックが画面左端に位置する場合、パーティション群Aを含む最大符号化ブロックは存在しないので、S102にて設定された初期状態のavailableFlagLXA、mvLXAを出力し、終了するS104。一方、有効な場合は隣接するパーティション群AのパーティションAkの情報を取得するS105。パーティションAkと処理対象のパーティションの情報を比較するS106。パーティションAkの符号化モードがイントラでなく、且つ処理対象のパーティションの参照ピクチャ番号が同じ場合、フラグavailableFlagLXAを1に設定するS107。フラグavailableFlagLXAの判定を行うS108。フラグavailableFlagLXAが1の場合、パーティションAkの動きベクトルをmvLXAに設定するS109。availableFlagLXAが0の場合、カウンタkを1加算して更新するS110。カウンタkがパーティション群Aの総数nAと同じになったら、処理を終了する。そうでない場合は、パーティション群Aの中で次のパーティションに対してS103以降の処理を継続するS111。上側に隣接するパーティション群Bから予測動きベクトルの候補mvLXBの選出する場合、パーティション群Aと同様の処理手順で選出可能である。S103及びS104にてパーティション群Bを含む最大符号化ブロックの位置を検出し、その最大符号化ブロックが有効か否かを判定する点、S110にてパーティション群Bは左端を0とし右に向かって順にカウンタkを更新していく点が異なっており、最終的にフラグavailableFlagLXB及びmvLXBを出力する。処理対象のパーティションのコーナーで隣接するパーティションC0,C1,C2から構成されるパーティション群Cから予測動きベクトルの候補mvLXCの選出も同様である。以上のようにして、各パーティション群A,B,Cに対するフラグavailableFlagLXMと予測動きベクトルの候補mvLXMMはA,B,Cが出力される。[予測動きベクトルの候補の中央値を導出S200]この処理の入力は周辺パーティションの動きベクトルmvLXMMはA,B,C、およびフラグavailableFlagLXMMはA,B,Cであり、この処理の出力は予測動きベクトルの中央値mvLXMedである。図15を用いて処理の流れを説明する。最初に、全てのフラグavailableFlagLXMMはA,B,Cの判定が行われS201、全てのフラグavailableFlagLXMが0の場合、mvLXMedは0,0に設定されるS202。次に、availableFlagLXMMはA,B,Cの中で1つだけが1である場合S203、そのavailableFlagLXMに該当する動きベクトルmvLXMを予測動きベクトルmvLXMedとするS204。上記の条件でない場合、動きベクトルmvLXA,mvLXB及びmvLXCのx及びy成分ごとに中央値を算出し、予測動きベクトルの中央値mvLXMedとするS205。[予測動きベクトルの候補のリストを作成S300]S100及びS200にて生成された予測動きベクトルの候補mvLXMM=A,B,C及びmvLXMedは予測動きベクトルの候補のリストmvpListLXに格納される。リストmvpListLXは、PC等の装置内部のメモリ或いはメモリの一部を記憶領域として設けられたり、プログラム実行時にメモリ上に記憶領域として割り当てられることで設定される。リストmvpListLXは図16に示されるように配列構造を成し、リスト内部の所在を示すインデックスと、インデックスに対応する予測動きベクトルの候補を格納する記憶領域が設けられている。インデックスの数字は0から開始され、リストmvpListLXの記憶領域に、mvLXMed,mvLXA,mvLXB,mvLXCの順で予測動きベクトルの候補が格納される。尚、インデックス4の記憶領域には後述する時間方向の予測動きベクトルの候補が格納される。以降の処理では、リストmvpListLXに記録されたインデックスkの予測動きベクトルの候補は、mvpListLX[k]で表すこととし、リストmvpListLXとは配列表記をすることで区別することとする。[時間方向の予測動きベクトルの候補を導出S400]この処理における入力は予測ブロックのパーティションのパーティション番号puPartIdx、および予測ブロックのパーティションの参照ピクチャ番号refIdxLXXは0或いは1であり、出力は予測ブロックのパーティションと同位置の他ピクチャのパーティションの動きベクトルmvLXCol、および予測ブロックのパーティションと同位置の他ピクチャのパーティションが有効か否かを示すフラグavailableFlagLXColである。まず、処理対象のパーティションが含まれるスライスのスライスタイプ及び処理対象のパーティションが含まれるピクチャの参照ピクチャのリストのうちL0予測或いはL1予測のどちらを使用するかを決定するフラグcollocated_from_l0_flagに基づき、導出処理が場合分けされる。図17に示されるように最初にスライスタイプについて判定されるS401。スライスタイプがBでない場合、即ちPである場合はCase3の処理が行われる。スライスタイプがBである場合は、更にフラグcollocated_from_l0_flagの値について判定されるS402。collocated_from_l0_flag=1の場合、L0予測が使用されるCase1の処理が実行され、collocated_from_l0_flag=0の場合、L1予測が使用されるCase2の処理が実行される。図18で示される一例及び図21のフローチャートを用いて、Case1について説明する。図18で示されるように、処理対象のパーティションが含まれるピクチャをcurrentPicで表し、currentPicのL0予測で最も小さい参照ピクチャ番号の参照ピクチャをColPicとするS411。通常ColPicはピクチャの表示順序でcurrentPicの前方の一番近い参照ピクチャとなり、図18で示されるようにcurrentPicよりも過去の位置に設定される。次に、処理対象のパーティションと同じ空間位置にある、ColPicのパーティションの位置情報を設定する。処理対象のパーティションと同じ最大符号化ブロックのアドレス、予測ブロックのインデックス及びパーティション番号がそれぞれ設定されるS412。処理対象のパーティションと同じ空間位置に設定されたColPicのパーティションの符号化モードに応じて処理を場合分けするS413。符号化モードがイントラの場合、時間方向の動きベクトルmvLXColの各x,y成分を0、フラグavailableFlagLXColを0として出力し、処理を終了するS414。符号化モードがイントラでない場合、LY予測の有効フラグpredFlagLYCol、LY予測の動きベクトルmvCol及び参照ピクチャ番号refIdxColが設定されるS415。記号Yは記号Xと同様に予測方向を表し、ここでは処理対象のパーティションと同じ空間位置に設定されたColPicのパーティションのL1予測の動き情報が設定される、即ちpredFlagL1Col=predFlagL1[puPartIdxCol]mvCol=mvL1[puPartIdxCol]refIdxCol=refIdxL1[puPartIdxCol]がそれぞれ設定され、図18で示されるように、処理対象のパーティションと同じ空間位置に設定されたColPicのパーティションから参照ピクチャ番号refIdxColに該当するピクチャを参照ピクチャへの動きベクトルmvColが求められる。フラグpredFlagL1Colの判定を行うS416。predFlagL1Col=0の場合、即ちL1予測が存在しない場合、時間方向の動きベクトルmvLXColの各x,y成分を0、フラグavailableFlagLXColを0として出力し、処理を終了するS414。predFlagL1Col=1の場合、availableFlagLXColが1に設定されS417、mvColから時間方向の動きベクトルmvLXColが求められる。図18に示されるように、ColPicと参照ピクチャ番号refIdxColで示される参照ピクチャまでの距離をrdとし、一方、currentPicとcurrentPicの処理対象のパーティションの参照ピクチャ番号refIdxLXで示される参照ピクチャとの距離をrbXXは0或いは1とする。ここで、距離rdとrbXとの比較を行うS418。rdとrbXが同じ場合、mvLXColをmvColとして出力し、終了するS419。rdとrbXが異なる場合、距離rdに対するrbXの倍率によって求めることが出来、次式で表されるS420。mvLXCol=mvCol×rbX/rdここで、mvColと予測方向が同じ場合、mvLXColと正負符号は同じとなり、予測方向が逆向きの場合、mvLXColの正負符号は逆になる。以上のようにして、時間方向の動きベクトルmvLXColが出力される。次に、図19を用いてCase2について説明する。図19で示されるように、Case1との違いはcurrentPicのL1予測で最も小さい参照ピクチャ番号の参照ピクチャをColPicとする点である。その為、Case2はCase1の場合に対して、currentPicを中心にして時間軸を反転することと同等となるだけで、基本的な考え方はCase1と同じである。具体的には、図21に示されるフローチャートにおいて、S415において、各変数の設定先が処理対象のパーティションと同じ空間位置に設定されたColPicのパーティションのL0予測の動き情報となる点、S420におけるピクチャ間距離の換算により出力されるmvLXColの正負符号がL0予測を正とする点が異なる。Case3はCase1及びCase2の事例とは異なり、L0予測のみの場合であり、図20に示されるように、currentPicよりも時間的に過去のピクチャのパーティションのL0予測の動きベクトルを使用して、mvLXColを求めるものであるこの場合、Xは0のみとなる。図21のフローチャートでは、S411においてcurrentPicのL0予測で最も小さい参照ピクチャ番号の参照ピクチャをColPicとする点、S415及において各変数の設定先が処理対象のパーティションと同じ空間位置に設定されたColPicのパーティションのL0予測の動き情報となる点、S420におけるピクチャ間距離の換算により出力されるmvLXColがL0予測のみとする点が異なるだけで、基本的な処理はCase1と同様である。以上のようにして、時間方向の動きベクトルmvLXColが求められ、予測動きベクトルの候補のリストmvpListLXのインデックス4の記憶領域にmvLXColが格納される。[処理対象のパーティションのサイズに基づき、予測動きベクトルの候補を入れ換えS500]次の条件のうち1つでも当てはまれば、mvLXMedはmvpListLXの順序の中でmvLXNに置き換えられる。処理対象のパーティションを含む予測ブロックの符号化サイズがPART_2NxN、PART_2NxnU、PART_2NxnDのうち1つである場合:puPartIdxが0のパーティションの場合、mvLXN=mvLXBに設定される。それ以外のパーティションは、mvLXN=mvLXAに設定される。処理対象のパーティションを含む予測ブロックの符号化サイズがPART_Nx2N、PART_nLx2N、PART_nRx2Nのうち1つである場合:puPartIdxが0のパーティションの場合、mvLXN=mvLXAに設定される。それ以外のパーティションは、mvLXN=mvLXBに設定される。[リストの中の同じの値を持つ予測動きベクトルの候補を削除S600]予測動きベクトルの候補のリストmvpListLXの中で、同じ動きベクトルの値を持つ予測動きベクトルの候補が存在する場合、リストmvpListLXの中で最も小さいインデックスを持つ予測動きベクトルの候補を除いて全て削除される。削除処理の終了後、リストmvpListLXの中は、削除された予測動きベクトルの候補の格納領域が空いている為、インデックス0を基準にして、インデックスが小さい予測動きベクトルの候補の順で詰めていく。例えば、インデックス1,4の予測動きベクトルの候補が削除され、インデックス0,2及び3が残った場合、インデックス0はそのままとして、インデックス2の予測動きベクトルの候補をインデックス1の格納領域に移動し、インデックス3の予測動きベクトルの候補をインデックス2の格納領域に移動して、リストmvpListLXの中を更新する。[差分動きベクトルに基づき、リストの中の予測動きベクトルの候補を削除S700]この処理の入力は予測動きベクトルの候補のリストmvpListLX、および差分動きベクトルmvdLXであり、この処理の出力は修正された予測動きベクトルの候補のリストmvpListLXである。図22a~cを用いて、基本的な予測動きベクトルの候補の削除方法を説明する。ここでは、予測動きベクトルの候補のリストmvpListLXの中に3つの候補が残っていることとし、説明の便宜上、mvpListLXの3つの予測動きベクトルの候補をmvp1、mvp2及びmvp3とする。図22の実線矢印で示されるように、左から順に予測動きベクトルの候補mvp1、mvp2及びmvp3とする。最初に仮の予測動きベクトルを決める。図22a~cでは3つの予測動きベクトルの候補を、それぞれ仮の予測動きベクトルとした場合の処理過程を示し、図22aはmvp1、図22bはmvp2、図22cはmvp3が最初の仮の予測動きベクトルとした場合である。図22aではmvp1を仮の予測動きベクトルと設定する。図22aの中でmvp1を他の予測動きベクトルの候補と異なるように太実線矢印で表すこととし、以降も仮の予測動きベクトルとなる候補を太実線矢印で表す。仮の予測動きベクトルに差分動きベクトルmvdLX図22aではmvdと省略し、太点線矢印で表されるを加算すると、処理対象のパーティションの仮の動きベクトルが算出される。この仮の動きベクトルに対して、他の予測動きベクトルの候補mvp2及びmvp3との差分をとると、予測動きベクトルの候補mvp2及びmvp3の差分動きベクトルmvd2及びmvd3が算出される図22では細点線矢印で表される。ここで、処理対象のパーティションの差分動きベクトルmvdの符号量とmvd2及びmvd3の符号量を概算し、比較する。差分動きベクトルの符号量の概算は、差分動きベクトルの絶対値が大きい程符号量が多く発生する為、図22の中で示される差分動きベクトルの大きさを比較することで符号量の比較を行うことと同等とみなすことが出来、以下において矢印の大きさを概算符号量として説明することとする。仮の予測動きベクトルとして設定したmvp1が真の予測動きベクトルである場合、符号化の際に最小の符号量となる差分動きベクトルとしてmvdが選択される筈なので、mvdの符号量はmvd2及びmvd3の符号量よりも少ないことになる。即ち、mvdの符号量よりも少なくなる差分動きベクトルを発生させる予測動きベクトルの候補が1つでも存在すれば、仮の予測動きベクトルとして設定したmvp1は真の予測動きベクトルではないと判定され、リストmvpListLXから削除される。つまり、予測動きベクトルを選択する符号化側では、mvdの符号量が最小となるmvp候補を選択していると想定した場合の矛盾条件を利用して、mvp候補を削除する。図22aでは、mvd2及びmvd3はmvdよりも小さくなるので、仮の予測動きベクトルとして設定したmvp1が真の予測動きベクトルではなく、リストmvpListLXから削除と判定される図22a中にて削除と判定される予測動きベクトルの候補は○で表される。mvp1は削除と判定されても、直ぐにリストmvpListLXから削除されず、他の予測動きベクトルの候補の判定の際に削除可能性を高めることができるため、リストmvpListLXに残したままにして、削除することを記憶しておき、全ての予測動きベクトルの候補の判定終了後に削除される。以降の予測動きベクトルの判定でも、この処理は適用されることとする。次に、仮の予測動きベクトルをmvp1以外の他のmvpListLXの予測動きベクトルの候補に設定し直す。図22aに示される予測動きベクトルの候補を左から優先して仮の予測動きベクトルとして設定することとし、この場合mvp2を次の仮の予測動きベクトルとして設定する。mvp2に差分動きベクトルmvdを加算して仮の動きベクトルが算出され、この仮の動きベクトルとmvp2以外の他の予測動きベクトルの候補mvp1及びmvp3との差分をとり、差分動きベクトルmvd1及びmvd3が新たに算出される。mvdをmvp1及びmvd3と比較すると、mvd1はmvdより大きいが、mvd3がmvdよりも小さいので、仮の予測動きベクトルmvp2は真の予測動きベクトルではなく、リストmvpListLXから削除と判定される。同様にして、mvp3を次の仮の予測動きベクトルとして設定し直し、mvp3に差分動きベクトルmvdを加算して仮の動きベクトルが算出され、この仮の動きベクトルとmvp3以外の他の予測動きベクトルの候補mvp1及びmvp2との差分をとり、差分動きベクトルmvd1及びmvd2が新たに算出される。mvdをmvp1及びmvd2と比較すると、mvdはmvd1及びmvd2よりも小さいので、仮の予測動きベクトルmvp3はリストmvpListLXから削除と判定されず、残ることとなる。結果として、リストmvpListLXの中でmvp1及びmvp2が削除と判定されているので、mvp3が予測動きベクトルとして選択される。図22bは最初の仮の予測動きベクトルをmvp2とした場合であり、差分動きベクトルmvdを加算して仮の動きベクトルが算出される。この仮の動きベクトルとmvp2以外の他の予測動きベクトルの候補mvp1及びmvp3との差分をとり、差分動きベクトルmvd1及びmvd3が算出される。mvdをmvd1及びmvd3と比較すると、mvd3がmvdより小さいので、仮の予測動きベクトルmvp2が削除と判定される。次に、仮の予測動きベクトルをmvp2以外の他のmvpListLXの予測動きベクトルの候補に設定し直す。この場合、mvp3を仮の予測動きベクトルとして設定する。仮の予測動きベクトルmvp3に差分動きベクトルmvdを加算して仮の動きベクトルが算出され、この仮の動きベクトルとmvp3以外の他の予測動きベクトルの候補mvp1及びmvp2との差分をとり、差分動きベクトルmvd1及びmvd2が新たに算出される。mvdをmvd1及びmvd2と比較すると、mvdがmvd1及びmvd2よりも小さいので、仮の予測動きベクトルmvp3はリストmvpListLXから削除と判定されず残る。同様にして、mvp1を仮の予測動きベクトルとして設定する。仮の予測動きベクトルmvp1に差分動きベクトルmvdを加算して仮の動きベクトルが算出され、この仮の動きベクトルとmvp1以外の他の予測動きベクトルの候補mvp2及びmvp3との差分をとり、差分動きベクトルmvd2及びmvd3が新たに算出される。mvdをmvd2及びmvd3と比較すると、mvd2及びmvd3がともにmvdよりも小さいので、仮の予測動きベクトルmvp1はリストmvpListLXから削除と判定される。mvp1及びmvp2は削除と判定されているので、リストmvpListLXから削除され、mvp3だけが残ることとなり、mvp3が予測動きベクトルとして選択される。図22cは最初の仮の予測動きベクトルをmvp3とした場合であり、差分動きベクトルmvdを加算して仮の動きベクトルが算出される。この仮の動きベクトルとmvp3以外の他の予測動きベクトルの候補mvp1及びmvp2との差分をとり、差分動きベクトルmvd1及びmvd2が算出される。mvdをmvd1及びmvd2と比較すると、mvd1及びmvd2はmvdよりも大きいので、仮の予測動きベクトルmvp3はリストmvpListLXから削除と判定されない。次に、仮の予測動きベクトルとしてリストmvpListLXのmvp1或いはmvp2を選択して同様な処理を行うと、図22a或いは図22bで説明した処理が行われ、結果として、mvp1及びmvp2が削除と判定され、リストmvpListLXから削除されて、mvp3だけが残り、予測動きベクトルとして選択される。以上のようにして、mvpListLXの中の予測動きベクトルの候補の1つを順次仮の予測動きベクトルと設定して、mvdよりも小さい差分動きベクトルを発生させる他の予測動きベクトルの候補が存在する場合に、仮の予測動きベクトルとして設定した予測動きベクトルの候補を削除と判定し、全ての予測動きベクトルの候補に対する判定終了後に削除と判定された予測動きベクトルの候補をリストmvpListLXから削除する。このように、符号化側で差分動きベクトルmvdの符号量が最小となる予測動きベクトルmvp候補を選択していると想定した場合の矛盾条件を利用すると、予測動きベクトルmvp候補を削減可能であり、予測動きベクトルmvpの選択情報を表すmvpインデックスの符号量を削減できる。図22を例にした説明では、基準としたmvdと他の予測動きベクトルの候補から算出される差分動きベクトルとの明確な大小関係に基づき判定を行ったが、等しくなる場合についてはリストmvpListLXから削除と判定せず、残すようにした。実際の動画像符号化では、予測動きベクトルの候補として使用している隣接するパーティションの動きベクトルは強い相関があり、互いに近い値を持つことが多いので、mvdと他の予測動きベクトルの候補から算出される差分動きベクトルとが等しくなる頻度が少なくない。このような場合、リストmvpListLXから予測動きベクトルの候補が削除と判定されず、複数の候補が残ることになるので、複数の候補から予測動きベクトルを選択する為に使用するフラグmvp_id_lxの使用頻度が多くなり、符号量が増加することになる。そこで、実施の形態では、このような基準としたmvdと他の予測動きベクトルの候補から算出される差分動きベクトルとが等しくなる場合に、mvd及び他の予測動きベクトルの候補から算出される差分動きベクトルに該当するリストmvpListLXの予測動きベクトルの候補のインデックスに対して、判定基準を設け、予測動きベクトルの候補の削除判定を促すようにしている。具体的には、リストmvpListLXの中のインデックスの番号が小さい方を優先してmvpListLXに残すこととした、即ち、図16で示されるリストmvpListLXの配列で下位に位置する程、削除と判定される可能性が高くなる。インデックスの番号が小さい方を優先するのは、インデックスの小さい方がフラグmvp_id_lxの発生符号量が少なく、符号化効率を向上させることが出来る為である。つまり、予測動きベクトルを選択する符号化側では、mvdmvp_idxの符号量が最小となる予測動きベクトルの候補を選択していると想定した場合の矛盾条件を利用して、予測動きベクトルの候補を削除する。以上の削除処理のフローチャートを図23に示す。リストmvpListLXの中にある予測動きベクトルの候補の総数をカウントし、総数が1より多い場合は複数候補が存在するので、削除処理に進む。そうでない場合、即ち候補が1つに限定されるので、その候補を出力し終了するS701。次に、処理するパーティションの差分動きベクトルmvdLXXは0或いは1の概算符号量を算出する。概算符号量は、mvdLXの絶対値をとり、その絶対値の最上位ビットの位置をmvdLXの発生符号量として算出され、mvdLXの絶対値に比例して大きくなる。つまり、図24に示す符号付きゴロム符号化の符号量を算出する。この概算符号量を以降の判定で使用する基準値mvdBitsとするS702。リストmvpListLXの中の予測動きベクトルの候補から仮の予測動きベクトルを指定する。指定方法として様々な方法があるが、ここではリストmvpListLXのインデックス順を使用することとする。インデックスをkで表すこととして、k=0に初期設定するS703。リストmvpListLXの中の予測動きベクトルの候補から、インデックスk=0に該当する候補を読み出し、仮の予測動きベクトルmvpとする。即ち、mvpは次式にて表される。mvp=mvpListLX[k]=mvpListLX[0]処理するパーティションの仮の動きベクトルmvを算出する。仮の予測動きベクトルと処理するパーティションの差分動きベクトルとを加算することで算出され、次式で表されるS704。mv=mvpmvdLXリストmvpListLXの中で、仮の予測動きベクトルとしたインデックスk以外の予測動きベクトルの候補のインデックスをl≠kとし、リストmvpListLXの中でkを除く最小のインデックスをlの初期値として設定するS705。インデックスlに該当する予測動きベクトルの候補をリストmvpListLXから読み出すS706。予測動きベクトルの候補mvpCanは次式で表される。mvpCan=mvpListLX[l]l≠k仮の動きベクトルと予測動きベクトルの候補mvpCanとの差分を求め、その差分の概算符号量を算出するS707。差分mvdCanは次式で表される。mvdCan=mv-mvpCan概算符号量は算出方法はS702と同様とし、差分の概算符号量mvdCanBitsを算出する。算出されたmvdCanBitsと基準値mvdBitsとの比較を行うS708。mvdCanBitsがmvdBitsと等しい場合はS710に進み、そうでない場合はS709に進む。mvdCanBitsがmvdBitsと等しい場合は、概算符号量での比較が出来ない為、リストmvpListLXの予測動きベクトルのインデックスの比較を行うS710。mvdBitsに対応するインデックスはkであり、mvdCanBitsに対応するインデックスはlであるので、kとlとの比較を行う。インデックスkがlより大きい場合はkに該当する仮の予測動きベクトルmvpはリストmvpListLXから削除と判定されることになるので、この時のインデックスkを記録しておくS711。削除対象のインデックスkの記録は、この削除処理の中に削除対象のインデックスkを記録しておく記憶領域を設けておいたり、リストmvpListLXの中のインデックス毎に削除するか否かを表すフラグを格納する記憶領域を追加してもよい。一方、kがlより小さい場合は仮の予測動きベクトルmvpはそのままリストに残しておき、インデックスlを更新する。現在のインデックスl及び仮の予測動きベクトルのインデックスk以外のインデックスをリストmvpListLXの中から選択し、次のlとして設定するS712。mvdCanBitsがmvdBitsと等しくない場合はmvdCanBitsとmvdBitsとの大小関係の比較を行うS709。mvdCanBitsがmvdBitsよりも小さい場合、上述で説明したように、符号化時の予測動きベクトルの選択と矛盾が生じる為、仮の予測動きベクトルmvpはリストmvpListLXから削除と判定されることになるので、この時のインデックスkを記録しておくS711。一方、mvdCanBitsがmvdBitsより大きい場合は削除と判定せず、そのままリストに残しておき、インデックスlを更新する。現在のインデックスl及び仮の予測動きベクトルのインデックスk以外のインデックスをリストmvpListLXの中から選択し、次のlとして設定するS712。リストmvpListLXの中で、l=kを除く全ての予測動きベクトルの候補、即ち仮の予測動きベクトルを除く他の予測動きベクトルの候補と仮の予測動きベクトルとの比較処理の終了を判定するS713。リストmvpListLXの中で仮の予測ベクトルとの比較処理が終了していない予測動きベクトルの候補が存在する場合、更新したインデックスlに該当する予測動きベクトルの候補についてS706以降の処理を継続する。l≠kのインデックスの全ての予測動きベクトルの候補との比較処理が終了した場合、仮の予測動きベクトルのインデックスkを更新する。インデックスkは、現在の仮の予測動きベクトル以外の予測動きベクトルの候補のインデックスが選択されるS714。ここでは、現在のインデックスkに1加算することで実現される。更新されたインデックスkに対して、リストmvpListLXの中の全ての予測動きベクトルの候補を仮の予測動きベクトルとして比較処理を行った否かの判定するS715。全ての予測動きベクトルの候補に対して行っていない場合、更新したインデックスkにてS704以降の処理を継続する。全ての予測動きベクトルの候補に対して行った場合、リストmvpListLXの中の予測動きベクトルの候補が更新されるS716。まず、リストmvpListLXの中で、削除と判定され記録されていたインデックスの予測動きベクトルの候補が削除される。次に、リストmvpListLXの中で、削除された予測動きベクトルの候補の空いた格納領域に、インデックス0を基準にして、インデックスが小さい予測動きベクトルの候補の順で詰めていく。例えば、インデックス0,2,3の予測動きベクトルの候補が削除され、インデックス1及び4が残った場合、まずインデックス1の予測動きベクトルの候補をインデックス0の格納領域に移動し、インデックス4の予測動きベクトルの候補をインデックス1の格納領域に移動する。以上のようにして、リストmvpListLXの中が更新される。[リストの中の予測動きベクトルの候補数を確認S800]S700にて予測動きベクトルの候補が削除されたリストmvpListLXの中から、最適な予測動きベクトルを選択する。まず、リストmvpListLXの中に残った予測動きベクトルの候補の総数をカウントする。総数が1の場合、リストmvpListLXに残っている予測動きベクトルが候補が最適な予測動きベクトルとなり、S700にてリストmvpListLXの中で予測動きベクトルの候補の更新により、リストmvpListLXのインデックス0に予測動きベクトルが格納されている。そこで、予測動きベクトルのインデックスをmvp_idx_lxとして、mvp_idx_lx=0を設定する。インデックスmvp_idx_lxに該当するmvpListLX[mvp_idx_lx]を最適な予測動きベクトルとして出力する。総数が1ではない場合、リストmvpListLXの中には複数の予測動きベクトルの候補が残っていることとなり、これまでの処理では最適な予測動きベクトルとして選択出来なかったことになる。この場合、ビットストリームから復号された変数mvp_idx_lxをリストmvpListLXのインデックスとして、mvp_idx_lxに該当するリストmvpListLXのインデックスの予測動きベクトルの候補を予測動きベクトルとする。ここで、mvp_idx_lxのエントロピー符号化について説明する。図25にTruncatedUnaryを用いたmvp_idx_lxの符号割当を示す。この例では、mvp_idx_lxの最大数が5、つまりmvp_idx_lxの値の範囲が0~4の場合の例である。mvp_idx_lxの符号量は、値が1大きくなるほど1bitずつ増加する。但し、最大の値を持つmvp_idx_lxを伝送する場合は、最後の1bit伝送する必要がない為、1bit増加はしない。このように、mvp_idx_lxが増加するほど伝送する符号量が増えるため、mvdの符号量が同一の場合はmvp_idx_lxの番号が小さいmvpを選択した方が良いことが分かる。また、mvdの符号量、mvp_idx_lxの符号量共に差がつかない場合にも、mvpの候補を複数残すよりも、特定のルールにより候補を1つに絞るほうが効率が良いため、実施の形態のmvp_idx_lxの大小による候補削減は非常に有用である。以上の処理により、最適な予測動きベクトルが算出される。[実施例2]動きベクトルの予測方法の実施例2を説明する。図26は図1で構成される動画像符号化装置の予測動きベクトル選択部111の詳細な構成を示す図であり、図27は図2で構成される動画像復号装置の予測動きベクトル選択部208の詳細な構成を示す図である。実施例1と実施例2との相違は、実施例1の予測動きベクトル選択部111及び208を構成していた予測動きベクトル候補同一判定部121及び221が実施例2には存在しないことである。実施例1における予測動きベクトル候補削除部122及び222では、予測動きベクトルの候補を削除判定する為に予測動きベクトルの候補を比較する場合に、予測動きベクトルの候補同士が同一の動きベクトルであると、概算符号量は同一の値となり、符号量での判定は出来ない。しかし、符号量での判定が出来ない場合、各予測動きベクトルの候補に割り当てられているリストmvpListLXのインデックスによって判定するようにしているので、比較する予測動きベクトルの候補の必ずどちらか一方が選択される。実施例2では、予測動きベクトルの候補同士の比較処理が、実施例1の予測動きベクトル候補同一判定部121及び221と予測動きベクトル候補削除部122及び222とで重複している点に着目し、実施例1の予測動きベクトル候補同一判定部121及び221を予測動きベクトル選択部111及び208の処理構成から外すこととで、予測動きベクトル候補を最大限に絞り込むことを維持しつつ、処理速度向上と回路規模縮小の効果が期待出来る。ここで、予測動きベクトル候補生成部130及び230がn個の予測動きベクトルの候補を生成したとする。実施例1の予測動きベクトル候補同一判定部121及び221では、予測動きベクトルの候補を比較する為の処理回数として、n個の中から2個の予測動きベクトルの候補を選ぶ組み合わせはnC2=nn-1/2通りあるから、nn-1/2回を必要とする。ここで、Cは組み合わせを表す関数combinationである。更に、実施例1の予測動きベクトル候補同一判定部121及び221にて削除され更新された予測動きベクトルの候補数をmm≦nとすると、予測動きベクトル候補削除部122及び222では、予測動きベクトルの候補を比較する為の処理回数はmm-1となり、処理回数の総数はnn-1/2mm-1,但しm≦nで表される。一方、実施例2の予測動きベクトル候補削除部132及び232では、予測動きベクトルの候補を比較する為の処理回数はnn-1となる。実施例1と実施例2との処理回数が等しくなるのは、実施例1の予測動きベクトル候補同一判定部121及び221で予測動きベクトルの候補総数のうち約1/20.5≒70が削除されずに残る場合に相当する。即ち、n個の予測動きベクトルの候補の全体で約30が重複することになる。実施例2の予測動きベクトル候補生成部130及び230では、符号化伝送する為の差分動きベクトルの値を小さくする為に、予測動きベクトルの候補としては異なる値を持つ候補を生成した方が有利であり、同一の値となる候補を生成することは確率的に少ないので、生成される予測動きベクトルの候補のうち、30以上が重複することは静止画やパンスキャンのような特殊な場合を除いて考え難い。したがって、実施例2では、予測動きベクトルの候補の比較処理回数は、実施例1に比べて少なくなることが期待出来、処理速度を向上させることが可能となる。また、符号化装置や復号装置をハードウェア化する場合には、処理のワーストケースを基準に回路を設計する必要があるため、実施例1でも、予測動きベクトル候補同一判定部121及び221の有無にかかわらず、n個の動きベクトル候補が予測動きベクトル候補削除部122及び222に入力されることを想定しなくてはいけない。つまり、本実施の形態のように予測動きベクトル候補削除部122及び222で各予測動きベクトルの候補に割り当てられているリストmvpListLXのインデックスを考慮して予測動きベクトル候補を削除している場合、予測動きベクトル候補同一判定部121及び221の存在意義はない。もっとも、符号化装置や復号装置をハードウェア化せずに、ソフトウェアで処理する場合は、実施例1のように予測動きベクトル候補同一判定部121及び221による同一判定処理を、予測動きベクトル候補削除部122及び222による候補削除処理に先だって行っておくことは計算量の観点から有利になることもある。また、ハードウェア化した場合であっても、消費電力を考えると、計算量が少ない構成の方が有利であるから、実施例1のように予測動きベクトル候補同一判定部121及び221を設ける構成にも意味がある。したがって、実装形態の違いや、計算量、消費電力などの性能指標の観点の違いから、実施例1と実施例2はそれぞれに異なる長所を有し、どちらか一方が他方よりも優れているというものではないことに留意すべきである。実施例2では、実施例1から予測動きベクトル候補同一判定部121及び221を処理構成から外し、事前に予測動きベクトルの候補から同一の動きベクトルの値を持つ候補を削除する処理が無い点が異なるだけで、予測動きベクトルの候補の判定処理は実施例1と同様であるので、判定処理については説明を割愛する。図28aは実施例2の予測動きベクトル候補生成部130及び230ならびに予測動きベクトル候補削除部132及び232の処理の流れを表すフローチャートである。図28bは実施例2の予測動きベクトル候補生成部130及び230による予測動きベクトル候補の生成の一例を示すフローチャートであり、図28aの[予測動きベクトルの候補を算出S90]の処理の詳細な流れを示すものである。図28aは、図11aの実施例1の場合と比べて、S600のリストの中の同じ値を持つ予測動きベクトルの候補を削除する処理がない点が異なり、それ以外の処理の流れは同じであり、図28bは、図11bの実施例1の場合と同じであるから、説明を省略する。[実施例3]動きベクトルの予測方法の実施例3を説明する。実施例3は、動画像符号化装置の予測動きベクトル選択部125及び135、予測動きベクトル候補削除部122と、動画像復号装置の予測動きベクトル候補削除部222での予測動きベクトルの候補の比較判定方法が実施例1及び2とは異なる。最初に、予測動きベクトル選択部125及び135における相違を説明する。実施例1及び2における予測動きベクトル選択部125及び135では、動きベクトルmvとリストmvpListLXの中に格納された各予測動きベクトルの候補mvpListLX[i]との差分を算出し、その差分の発生符号量のみで比較していた。実際の符号化過程では差分動きベクトルと条件付きで予測動きベクトルのインデックスmvp_idx_lxが符号化され、伝送されるので、実施例3ではインデックスmvp_idx_lxの発生符号量も考慮することで、発生符号量が最小となる予測動きベクトルの候補を判定する。即ち、動きベクトルmvとリストmvpListLXの中に格納された各予測動きベクトルの候補mvpListLX[i]との差分の発生符号量とそのインデックスiの発生符号量を加算した総符号量が最小となる予測動きベクトルの候補をmin_mvpとして記録する。次に、動画像符号化装置の予測動きベクトル候補削除部122及び動画像復号装置の予測動きベクトル候補削除部222における相違を説明する。具体的には、動きベクトルの予測方法における差分動きベクトルに基づき、リストの中の予測動きベクトルの候補を削除S700する過程内での判定が異なる。実施例1及び2における差分動きベクトルに基づくリストの中の予測動きベクトルの候補の削除では、予測動きベクトルの候補から任意に選択された1つの候補を仮の予測動きベクトルとして、その動きベクトルと差分動きベクトルmvdを加算することで仮の動きベクトル生成し、その仮の動きベクトルと他の予測動きベクトルの候補との差分を符号量に換算した値とmvdを符号量に換算した値で比較して、予測動きベクトルの削除を実施した。しかし、実際の符号化過程では差分動きベクトルと条件付きで予測動きベクトルのインデックスmvp_idx_lxが符号化され、伝送される。S700の削除処理により、予測動きベクトルの候補が1つに絞られた場合は、予測動きベクトルのインデックスmvp_idx_lxを符号化伝送する必要がないが、2つ以上の候補が残る場合にはmvp_idx_lxが必要となる。その為、上述の予測動きベクトル選択部125及び135と同様に、削除処理において、差分動きベクトルの符号量概算とともに予測動きベクトルのインデックスmvp_idx_lxの符号量を考慮することで厳密な比較が可能となり、予測精度の向上が図られる。図29を一例として説明する。図29は予測動きベクトルの候補をmvp1とmvp2とし、配置した例である。まず、実施例1及び2での判定の一例として図29aを説明する。細実線はmvp1及びmvp2にそれぞれ差分動きベクトルを加算した時に同じ発生符号量になる境界を示し、境界よりも左ならmvp1、境界より右ならmvp2の方が発生符号量が少ない領域を示している。図29aに示されるように、mvp1を仮の予測動きベクトルとしてmvdを加算しすると、mvdの発生符号量が境界を超えない位置に達したとする。mvp2からその位置に向けた差分動きベクトルmvp2の符号量はmvdのそれよりも多いことになり、この場合mvp1が削除されないことになる。mvp1及びmvp2のそれぞれの予測動きベクトルのリストmvpListLXのインデックスmvp1_idx及びmvp2_idxとし、次の関係mvp1_idx>mvp2_idxが成り立っている場合、予測動きベクトルの候補が複数残ることになり、mvp1を予測動きベクトルとして選択するには、インデックスの差分mvp1_idx-mvp2_idx相当の符号量がmvp_idx_lxとして必要となる。そこで、本実施例3では、このインデックスの差分相当の符号量を差分動きベクトルの符号量概算に考慮してより厳密な比較を行う。図29bは図29aにおいてインデックスの符号化分を考慮した場合を示す。mvp1及びmvp2のインデックスがmvp1_idx>mvp2_idxの関係にある場合、mvp1を予測動きベクトルとして選択する場合、インデックスの差分mvp1_idx-mvp2_idx相当の符号量が加算されるので、従来中心にあった符号量の境界がmvp1寄りにオフセットされることになる。図29bでは、オフセットされた境界を越えてmvp1に加算されたmvdの符号量がmvp2の領域を侵すことになり、この場合、mvp1は削除されることになる。以上のように、予測動きベクトルのインデックスにより発生する符号量差を考慮することで、予測動きベクトルの候補の削除の精度を高めることが可能となる。図30は本実施例3を実現する為に、実施例1及び2における差分動きベクトルに基づき、リストの中の予測動きベクトルの候補を削除に追加するフローチャートを示す。まず、図23のフローチャートに対して、S707までの過程が同様に行われる。次に、図30に示されるように、仮の予測動きベクトルmvpのインデックスkとk以外の予測動きベクトルの候補のインデックスをl≠kとの差分を求め、符号量に概算し、オフセット値を算出するS721。予測動きベクトルのインデックスは、ユーナリーバイナリゼーション符号化が用いられることが多いので、ここでもこの符号化を採用することとすると、インデックスの値自身が符号量となる。次に、算出されたオフセット値を差分の概算符号量mvdCanBitsに加算するS722。ここで、k>lの場合、オフセット値は負となるが、そのまま加算する。予測動きベクトルのインデックスを考慮して算出されたmvdCanBitsでmvdとの比較を行い、以降の過程は実施例1及び2と同様にして予測動きベクトルの候補の削除を行う。[実施例4]動きベクトルの予測方法の実施例4を説明する。実施例1~3とは、動きベクトルの予測方法における予測動きベクトルの候補を削除S700する過程内で予測動きベクトルの候補のリストmvpListLXの各リストのインデックスmvp_list_lxの符号量の割り当て方が異なる。実施例1~3におけるリストmvpListLXのインデックスmvp_idx_lxの符号量の割り当て方は、図25で示されるように、リストmvpListLXの総リスト数に対して固定的な符号量がTruncatedUnaryによって割り当てられる。図25の場合は総リスト数5であり、インデックスmvp_idx_lxは最大で4ビットの符号量となる。実施例1~3における予測動きベクトルの候補の削除過程では、予測動きベクトルの候補が削除対象と判定されても、リストmvpListLXのインデックスの割り当て符号量はそのままとして判定を続けていた。しかし、最終的に削除過程が終了し、予測動くベクトルの候補として選択されるリストmvpListLXのインデックスmvp_idx_lxは、リストmvpListLXの中から削除対象の予測動きベクトルの候補を削除し、インデックス0を基準にして、インデックスが小さい予測動きベクトルの候補の順に詰められたリストmvpListLXのインデックスとなり、削除過程におけるインデックスmvp_idx_lxの符号及び符号量とは異なる。そこで、実施例4では、予測動きベクトルの候補の削除過程において、リストmvpListLXの中で削除対象とされた予測動きベクトルの候補のリストを除き、リストmvpListLXに残ったリストのインデックスmvp_idx_lxに対して、新たに符号の割り当ての変更を行うこととする。例えば、図25のリストの中でインデックスmvp_idx_lxが2のリストにある予測動きベクトルの候補が削除対象と判定されたとする。削除対象と判定された予測動きベクトルのリストのインデックスは削除過程中に記録されているので、次の削除判定の前に、リストのインデックスに割り当てる符号を更新する。ここでは、インデックス2以外のリストmvpListLXに残ったリストのインデックスに対して符号を次のように割り当て直す。インデックスmvp_idx_lx=0,1,3,4の順に割り当て符号は0,10,110,111となり、最大でも3ビットで表されることになる。以上のようにして、リストmvpListLXの中にある予測動きベクトルの候補毎に削除判定を行い、その都度インデックスmvp_idx_lxに対する符号割り当ての更新を繰り返す。削除判定毎にリストmvpListLXのインデックスmvp_idx_lxに対して、予測動きベクトルの候補の削除が反映された符号量が割り当てられるので、予測動きベクトルの候補の削除判定の正確性を向上させることが可能となる。以上述べたように、実施の形態の動きベクトルの予測方法によれば、ピクチャを矩形ブロックに分割し、ピクチャ間でブロック単位に動き推定、補償を行う動画像符号化における動きベクトルの符号化効率を向上させる為に、既符号化済みの周囲のブロック等の動きベクトルから予測を行い、処理対象のブロックの動きベクトルとその予測値との差分ベクトルを符号化することによって符号量を削減することができる。符号化対象ブロックの動きベクトルを最も効率良く予測符号化するために、予測動きベクトルの候補から最適な予測動きベクトルを判定する際、周囲の隣接ブロックの動きベクトルの中から選択する条件判定を新たに定義することで、予測動きベクトルの候補を削減する。これにより、予測動きベクトルの参照先を表すインデックスの符号量を削減することができ、符号化効率を向上させることができる。このように、実施の形態の動きベクトルの予測方法によれば、複数の予測動きベクトルの中から最適な動きベクトルを選択し、伝送する差分動きベクトルの発生符号量を削減させるとともに、予測動きベクトルの候補数を削減可能となる為、予測動きベクトルを表すインデックスの使用頻度を下げ、インデックスに必要な符号量を削減させて、符号化効率を向上させることができる。以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ROMリードオンリメモリやフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。"