(57)【要約】【課題】動きベクトルを含む動き情報の符号化効率をより向上させたい。【解決手段】動き補償予測を行う画像復号装置において、結合タイプ判定部１５５は、１つの参照ブロック候補が持つ動き情報を使用する第１の画像間予測モードを使用するか、２つの参照ブロック候補が持つ動き情報を使用する第２の画像間予測モードを使用するかを判定する。第１の画像間予測モードは、１つの参照ブロック候補の動き情報に含まれる単方向または双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードである。第２の画像間予測モードは、２つの参照ブロック候補の動き情報から取得可能な２つの動きベクトルを組み合わせて、新たな双方向の動きベクトルの組み合わせを生成し、当該新たな双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードである。【選択図】図５０
2013021613.tif 000002
【特許請求の範囲】
【請求項１】
動き補償予測を行う画像復号装置であって、
１つの参照ブロック候補が持つ動き情報を使用する第１の画像間予測モードを使用するか、２つの参照ブロック候補が持つ動き情報を使用する第２の画像間予測モードを使用するかを判定する判定部を備え、
前記第１の画像間予測モードは、１つの参照ブロック候補の動き情報に含まれる単方向または双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードであり、
前記第２の画像間予測モードは、２つの参照ブロック候補の動き情報から取得可能な２つの動きベクトルを組み合わせて、新たな双方向の動きベクトルの組み合わせを生成し、当該新たな双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードである、
ことを特徴とする画像復号装置。
【請求項２】
前記復号対象ブロックに隣接する複数の復号済みのブロックから、動き情報を持つ複数のブロックを選択して候補リストを生成する候補リスト生成部と、
前記候補リストに、重複する動き情報を持つブロックが複数存在する場合、１つを残し、残りを削除する削除部と、をさらに備え、
前記判定部は、前記削除部により削除されたブロックの数が、設定数以上の場合、前記第２の画像間予測モードを使用しないと判定する、
ことを特徴とする請求項１に記載の画像復号装置。
【請求項３】
前記復号対象ブロックに隣接する複数の復号済みのブロックから、動き情報を持つ複数のブロックを選択して候補リストを生成する候補リスト生成部と、
前記判定部は、前記候補リストに、双方向の動きベクトルを持ち、双方向の動きベクトルの２つの参照画像が対象画像の時間的に直前の画像及び直後の画像であるブロックが、設定数以上含まれている場合、前記第２の画像間予測モードを使用しないと判定する、
ことを特徴とする請求項１に記載の画像復号装置。
【請求項４】
前記復号対象ブロックに隣接する複数の復号済みのブロックから２つのブロックを選択し、その２つのブロックの動き情報から、前記複数の復号済みのブロックが単体で持つ動き情報と異なる、別の双方向の動きベクトルを含む動き情報を新たな選択候補として生成する選択候補生成部と、
符号化側において選択された候補を、前記選択候補生成部により生成された新たな選択候補を含む複数の選択候補の中から特定するための識別情報を復号する符号列解析部と、
復号された識別情報を用いて、前記複数の選択候補の中から１つの候補を選択する選択部と、をさらに備え、
前記選択候補生成部により生成された新たな選択候補の識別情報は、当該選択候補を組成する第１の予測方向の動き情報候補の識別情報と第２の予測方向の動き情報候補の識別情報の組み合わせにより規定される、
ことを特徴とする請求項１から３のいずれかに記載の画像復号装置。
【請求項５】
前記第１の予測方向の動き情報候補及び前記第２の予測方向の動き情報候補のうち、基準方向の動き情報候補のそれぞれに識別情報が割り当てられ、基準方向の動き情報候補ごとに組み合わせ対象となる非基準方向の動き情報候補の数がカウントされ、それぞれのカウント値に基づいて、非基準方向の動き情報候補のそれぞれに識別情報が割り当てられる、
ことを特徴とする請求項４に記載の画像復号装置。
【請求項６】
動き補償予測を行う画像復号方法であって、
１つの参照ブロック候補が持つ動き情報を使用する第１の画像間予測モードを使用するか、２つの参照ブロック候補が持つ動き情報を使用する第２の画像間予測モードを使用するかを判定するステップを備え、
前記第１の画像間予測モードは、１つの参照ブロック候補の動き情報に含まれる単方向または双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードであり、
前記第２の画像間予測モードは、２つの参照ブロック候補の動き情報から取得可能な２つの動きベクトルを組み合わせて、新たな双方向の動きベクトルの組み合わせを生成し、当該新たな双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードである、
ことを特徴とする画像復号方法。
【請求項７】
動き補償予測を行う画像復号プログラムであって、
１つの参照ブロック候補が持つ動き情報を使用する第１の画像間予測モードを使用するか、２つの参照ブロック候補が持つ動き情報を使用する第２の画像間予測モードを使用するかを判定する処理をコンピュータに実行させ、
前記第１の画像間予測モードは、１つの参照ブロック候補の動き情報に含まれる単方向または双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードであり、
前記第２の画像間予測モードは、２つの参照ブロック候補の動き情報から取得可能な２つの動きベクトルを組み合わせて、新たな双方向の動きベクトルの組み合わせを生成し、当該新たな双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードである、
ことを特徴とする画像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動き補償予測を用いた動画像符号化技術に関し、特に動き補償予測で利用する動き情報を復号する画像復号装置、画像復号方法および画像復号プログラムに関する。
【背景技術】
【０００２】
一般的な動画像圧縮符号化では動き補償予測が利用される。動き補償予測は、対象画像を細かいブロックに分割し、復号済みの画像を参照画像として、動きベクトルで示される動き量に基いて、対象画像の対象ブロックから参照画像の参照ブロックに移動した位置の信号を予測信号として生成する技術である。動き補償予測には１本の動きベクトルを利用して単方向に行うものと、２本の動きベクトルを利用して双方向に行うものがある。
【０００３】
また、動きベクトルについても、処理対象ブロックに隣接する符号化済みのブロックの動きベクトルを予測動きベクトル（単に「予測ベクトル」ともいう）とし、処理対象ブロックの動きベクトルと予測ベクトルとの差分を求め、差分ベクトルを符号化ベクトルとして伝送することで圧縮効率を向上させている。
【０００４】
ＭＰＥＧ−４ＡＶＣでは、ＭＰＥＧ−２よりも動き補償予測のブロックサイズを細かく且つ多様にすることで動き補償予測の効率を向上させている。一方、ブロックサイズを細かくしたことで動きベクトル数が増加するため、符号化ベクトルの符号量が問題となる。
【０００５】
そのため、ＭＰＥＧ−２では単純に処理対象ブロックの左に隣接するブロックの動きベクトルを予測ベクトルとしていたが、ＭＰＥＧ−４ＡＶＣでは複数の隣接ブロックの動きベクトルの中央値を予測ベクトルとすることで予測ベクトルの精度を向上させ、符号化ベクトルの符号量の増加を抑制している。さらに、ＭＰＥＧ−４ＡＶＣにおいてダイレクト動き補償予測が知られている。ダイレクト動き補償予測は、符号化済みの別の画像の処理対象ブロックと同一位置にあるブロックの動きベクトルを、対象画像と２つの参照画像の距離でスケーリングして新たな動きベクトルを生成し、符号化ベクトルを伝送することなく、動き補償予測を実現するものである。
【０００６】
また、処理対象ブロックに隣接するブロックの動き情報を利用して、符号化ベクトルを伝送することなく動き補償予測を実現する動き補償予測が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１０−２７６４３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述したように、符号化ベクトルを伝送しないダイレクト動き補償予測は、処理対象ブロックと符号化済みの別の画像の処理対象ブロックと同一位置にあるブロックの動きの連続性に着目している。また、特許文献１は処理対象ブロックと処理対象ブロックに隣接するブロックの動きの連続性に着目している。それにより、他のブロックの動き情報を利用することで差分ベクトルを含む動き情報を符号化ベクトルとして符号化せずに符号化効率を向上させている。
【０００９】
ところが従来の動き補償予測では、処理対象ブロックの動きが、処理対象ブロックと隣接するブロックとの動きや、符号化済みの別の画像の処理対象ブロックと同一位置周辺にあるブロックとの動きにずれがある場合、差分ベクトルを含む動き情報を符号化しなければならず、符号化効率の向上が十分に発揮されないという難しい面がある。
【００１０】
本発明はこうした状況に鑑みてなされたものであり、その目的は、動きベクトルを含む動き情報の符号化効率を、より向上させる技術を提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明のある態様の画像復号装置は、動き補償予測を行う画像復号装置であって、１つの参照ブロック候補が持つ動き情報を使用する第１の画像間予測モードを使用するか、２つの参照ブロック候補が持つ動き情報を使用する第２の画像間予測モードを使用するかを判定する判定部（１５５）を備える。前記第１の画像間予測モードは、１つの参照ブロック候補の動き情報に含まれる単方向または双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードであり、前記第２の画像間予測モードは、２つの参照ブロック候補の動き情報から取得可能な２つの動きベクトルを組み合わせて、新たな双方向の動きベクトルの組み合わせを生成し、当該新たな双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードである。
【００１２】
前記復号対象ブロックに隣接する複数の復号済みのブロックから、動き情報を持つ複数のブロックを選択して候補リストを生成する候補リスト生成部（１５０）と、前記候補リストに、重複する動き情報を持つブロックが複数存在する場合、１つを残し、残りを削除する削除部（１５１）と、をさらに備えてもよい。前記判定部（１５５）は、前記削除部（１５１）により削除されたブロックの数が、設定数以上の場合、前記第２の画像間予測モードを使用しないと判定してもよい。「前記復号対象ブロックに隣接する複数の復号済みのブロック」には、前記復号対象ブロックを含む画像と時間的に異なる画像のブロックが含まれてもよい。
【００１３】
前記復号対象ブロックに隣接する複数の復号済みのブロックから、動き情報を持つ複数のブロックを選択して候補リストを生成する候補リスト生成部（１５０）と、前記判定部（１５５）は、前記候補リストに、双方向の動きベクトルを持ち、双方向の動きベクトルの２つの参照画像が対象画像の時間的に直前の画像及び直後の画像であるブロックが、設定数（例えば、１）以上含まれている場合、前記第２の画像間予測モードを使用しないと判定してもよい。「前記復号対象ブロックに隣接する複数の復号済みのブロック」には、前記復号対象ブロックを含む画像と時間的に異なる画像のブロックが含まれてもよい。
【００１４】
前記復号対象ブロックに隣接する複数の復号済みのブロックから２つのブロックを選択し、その２つのブロックの動き情報から、前記複数の復号済みのブロックが単体で持つ動き情報と異なる、別の双方向の動きベクトルを含む動き情報を新たな選択候補として生成する選択候補生成部（１５２）と、符号化側において選択された候補を、前記選択候補生成部（１５２）により生成された新たな選択候補を含む複数の選択候補の中から特定するための識別情報を復号する符号列解析部（２０１）と、復号された識別情報を用いて、前記複数の選択候補の中から１つの候補を選択する選択部（２３１）と、をさらに備えてもよい。前記選択候補生成部（１５２）により生成された新たな選択候補の識別情報は、当該選択候補を組成する第１の予測方向の動き情報候補の識別情報と第２の予測方向の動き情報候補の識別情報の組み合わせにより規定されてもよい。
【００１５】
前記第１の予測方向の動き情報候補及び前記第２の予測方向の動き情報候補のうち、基準方向の動き情報候補のそれぞれに識別情報が割り当てられ、基準方向の動き情報候補ごとに組み合わせ対象となる非基準方向の動き情報候補の数がカウントされ、それぞれのカウント値に基づいて、非基準方向の動き情報候補のそれぞれに識別情報が割り当てられてもよい。当該カウント値が１の場合、非基準方向の動き情報候補の識別情報は省略されてもよい。
【００１６】
本発明の別の態様は、画像復号方法である。この方法は、動き補償予測を行う画像復号方法であって、１つの参照ブロック候補が持つ動き情報を使用する第１の画像間予測モードを使用するか、２つの参照ブロック候補が持つ動き情報を使用する第２の画像間予測モードを使用するかを判定するステップを備える。前記第１の画像間予測モードは、１つの参照ブロック候補の動き情報に含まれる単方向または双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードであり、前記第２の画像間予測モードは、２つの参照ブロック候補の動き情報から取得可能な２つの動きベクトルを組み合わせて、新たな双方向の動きベクトルの組み合わせを生成し、当該新たな双方向の動きベクトルを用いて復号対象ブロックの動き補償を行うモードである。
【００１７】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１８】
本発明によれば、動きベクトルを含む動き情報の符号化効率を、より向上させることができる。
【図面の簡単な説明】
【００１９】
【図１】画像を最大符号化ブロックに分割する例を説明するための図である。
【図２】図２（ａ）、（ｂ）は、符号化ブロックを説明するための図である。
【図３】図３（ａ）〜（ｄ）は、予測ブロックを説明するための図である。
【図４】予測ブロックサイズを説明するための図である。
【図５】予測符号化モードを説明するための図である。
【図６】図６（ａ）〜（ｄ）は、動き補償予測の予測方向を説明するための図である。
【図７】図７（ａ）〜（ｃ）は、マージインデックスのＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を説明するための図である。
【図８】予測ブロックのシンタックスの一例を説明するための図である。
【図９】本発明の実施の形態１に係る動画像符号化装置の構成を説明するための図である。
【図１０】図９の動き情報メモリにおける動き情報の管理方法を説明するための図である。
【図１１】図９の動き情報生成部の構成を説明するための図である。
【図１２】図９の差分ベクトル算出部の構成を説明するための図である。
【図１３】空間候補ブロック群を説明するための図である。
【図１４】時間候補ブロック群を説明するための図である。
【図１５】図１１の結合動き情報決定部の構成を説明するための図である。
【図１６】図１５の結合動き情報候補生成部の構成を説明するための図である。
【図１７】図１６の双結合動き情報候補組合せリスト生成部の構成を説明するための図である。
【図１８】候補番号管理テーブルを説明するための図である。
【図１９】図１９（ａ）、（ｂ）は、マージ候補番号からマージインデックスへの変換を説明するための図である。
【図２０】本発明の実施の形態１に係る動画像符号化装置の符号化の動作を説明するためのフローチャートである。
【図２１】図９の動き情報生成部の動作を説明するためのフローチャートである。
【図２２】図１１の差分ベクトル算出部の動作を説明するためのフローチャートである。
【図２３】図１１の結合動き情報決定部の動作を説明するためのフローチャートである。
【図２４】図１６の双結合動き情報候補リスト生成部から双結合動き情報候補組合せリスト生成部の動作を説明するためのフローチャートである。
【図２５】空間結合動き情報候補リストの生成の動作を説明するためのフローチャートである。
【図２６】時間結合動き情報候補リストの生成の動作を説明するためのフローチャートである。
【図２７】時間結合動き情報候補の動きベクトルを算出方法を説明する図である。
【図２８】図２８（ａ）〜（ｄ）は、双結合動き情報候補リストの生成を説明する為の図である（例１）。
【図２９】図２９（ａ）〜（ｄ）は、双結合動き情報候補リストの生成を説明する為の図である（例２）。
【図３０】図３０（ａ）〜（ｄ）は、双結合動き情報候補の組合せの決定を説明するための図である（例１）。
【図３１】図３１（ａ）〜（ｄ）は、双結合動き情報候補の組合せの決定を説明するための図である（例１）。
【図３２】図３２（ａ）、（ｂ）は、図３１（ａ）、（ｂ）の双結合動き情報候補リストの変更を説明する為の図である。
【図３３】本発明の実施の形態１に係る動画像復号装置の構成を説明するための図である。
【図３４】図３３の動き情報再生部の構成を説明するための図である。
【図３５】図３４の動きベクトル再生部の構成を説明するための図である。
【図３６】図３４の結合動き情報再生部の構成を説明するための図である。
【図３７】本発明の実施の形態１に係る動画像復号装置の復号の動作を説明するためのフローチャートである。
【図３８】図３３の動き情報再生部の動作を説明するためのフローチャートである。
【図３９】図３４の動きベクトル再生部の動作を説明するためのフローチャートである。
【図４０】図３４の結合動き情報再生部の動作を説明するためのフローチャートである。
【図４１】図４１（ａ）、（ｂ）は、実施の形態１の変形例１に係る単結合動き情報候補リストから双結合動き情報候補の組合せの生成を説明するための図である。
【図４２】図４２（ａ）〜（ｃ）は、実施の形態１の変形例２に係る単結合動き情報候補リストから双結合動き情報候補の組合せの生成を説明するための図である。
【図４３】図４３（ａ）、（ｂ）は、実施の形態１の変形例２の優先して選択する結合動き情報候補の個数を符号化ストリーム中に符号化するシンタックスを説明するための図である。
【図４４】実施の形態１の変形例３に係る単結合動き情報候補リストから双結合動き情報候補の組合せの生成を説明するための図である。
【図４５】図４５（ａ）、（ｂ）は、実施の形態１の変形例３の予め定められた双結合動き情報候補の組合せの使用可否を示すフラグを符号化するシンタックスを説明するための図である。
【図４６】図４６（ａ）、（ｂ）は、実施の形態１の効果を説明するための図（その１）である。
【図４７】図４７（ａ）、（ｂ）は、実施の形態１の効果を説明するための図（その２）である。
【図４８】図４８（ａ）、（ｂ）は、実施の形態１の効果を説明するための図（その３）である。
【図４９】実施の形態２の関数ＭｅｒｇｅＴｙｐｅ（）を追加したシンタックスを説明するための図である。
【図５０】図１５の結合動き情報候補生成部の構成に実施の形態２に係る結合タイプ判定部を追加した構成を説明するための図である。
【図５１】実施の形態２に係る結合タイプ判定部の動作を説明する為のフローチャートである。
【図５２】実施の形態２の変形例１において、隣接ブロックが参照する画像と動きベクトルの一例を示す図である。
【発明を実施するための形態】
【００２０】
まず、本発明の実施の形態の前提となる技術を説明する。
【００２１】
現在、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）などの符号化方式に準拠した装置及びシステムが普及している。そのような符号化方式では、時間軸上に連続する複数の画像をデジタル信号の情報として取り扱う。その際、効率の高い情報の放送、伝送または蓄積などを目的とし、時間方向の冗長性を利用した動き補償予測及び空間方向の冗長性を利用した離散コサイン変換などの直交変換を用いて圧縮符号化する。
【００２２】
１９９５年にはＭＰＥＧ−２ビデオ（ＩＳＯ／ＩＥＣ １３８１８−２）符号化方式が、汎用の映像圧縮符号化方式として制定され、ＤＶＤ及びＤ−ＶＨＳ（登録商標）規格のデジタルＶＴＲによる磁気テープなどの蓄積メディア、ならびにデジタル放送などのアプリケーションとして広く用いられている。
【００２３】
さらに、２００３年に、国際標準化機構（ＩＳＯ）と国際電気標準会議（ＩＥＣ）のジョイント技術委員会（ＩＳＯ／ＩＥＣ）と、国際電気通信連合電気通信標準化部門（ＩＴＵ−Ｔ）の共同作業によってＭＰＥＧ−４ ＡＶＣ／Ｈ．２６４と呼ばれる符号化方式（ＩＳＯ／ＩＥＣでは１４４９６−１０、ＩＴＵ−ＴではＨ．２６４の規格番号がつけられている。以下、これをＭＰＥＧ−４ＡＶＣと呼ぶ）が国際標準として制定された。
【００２４】
現在、国際標準化機構（ＩＳＯ）と国際電気標準会議（ＩＥＣ）のジョイント技術委員会（ＩＳＯ／ＩＥＣ）と、国際電気通信連合電気通信標準化部門（ＩＴＵ−Ｔ）の共同作業によってＨＥＶＣと呼ばれる符号化方式の標準化が検討されている。
【００２５】
（符号化ブロック）
本発明の実施の形態では、入力された画像信号を図１のように最大符号化ブロック単位に分割し、分割した符号化ブロックをラスタースキャン順序で処理する。符号化ブロックは階層構造となっており、符号化効率などを考慮して順次均等に４分割することでより小さい符号化ブロックにすることができる。尚、４分割された符号化ブロックはジグザグスキャン順で符号化される。これ以上小さくすることのできない符号化ブロックを最小符号化ブロックと呼ぶ。符号化ブロックは符号化の単位となり、最大符号化ブロックも分割数が０である場合は符号化ブロックとなる。本実施の形態では、最大符号化ブロックを６４画素×６４画素、最小符号化ブロックを８画素×８画素とする。
【００２６】
図２（ａ）、（ｂ）に最大符号化ブロックの分割の一例を示す。図２（ａ）の例では、符号化ブロックが１０個に分割されている。ＣＵ０、ＣＵ１及びＣＵ９は３２画素×３２画素の符号化ブロック、ＣＵ２、ＣＵ３及びＣＵ８は１６画素×１６画素の符号化ブロック、ならびにＣＵ４、ＣＵ５、ＣＵ６及びＣＵ７は８画素×８画素の符号化ブロックとなっている。図２（ｂ）の例では、符号化ブロックが１個に分割されている。
【００２７】
（予測ブロック）
本発明の実施の形態では、符号化ブロックはさらに予測ブロックに分割される。予測ブロックの分割のパターンを図３（ａ）〜（ｄ）に示す。図３（ａ）は符号化ブロックを分割しない２Ｎ×２Ｎ、図３（ｂ）は水平に分割する２Ｎ×Ｎ、図３（ｃ）は垂直に分割するＮ×２Ｎ、及び図３（ｄ）は水平と垂直に分割するＮ×Ｎを示す。つまり、予測ブロックサイズには、図４に示すように、ＣＵ分割数が０であって最大の予測ブロックサイズである６４画素×６４画素からＣＵ分割数が３であって最小の予測ブロックサイズである４画素×４画素までの１３の予測ブロックサイズが存在することになる。
【００２８】
本発明の実施の形態では、最大符号化ブロックを６４画素×６４画素、最小符号化ブロックを８画素×８画素とするが、この組み合わせに限定されない。また、予測ブロックの分割のパターンを図３（ａ）〜（ｄ）としたが、１以上に分割されればよくこれに限定されない。
【００２９】
（予測符号化モード）
本発明の実施の形態では、動き補償予測の予測方向や符号化ベクトル数を予測ブロックのブロックサイズで切り替えることが可能となっている。ここで、動き補償予測の予測方向と符号化ベクトル数を関連付けた予測符号化モードの一例について図５を用いて簡単に説明する。
【００３０】
図５に示す予測符号化モードには、動き補償予測の予測方向が単方向であって符号化ベクトル数が１である単方向モード（ＵｎｉＰｒｅｄ）、動き補償予測の予測方向が双方向であって符号化ベクトル数が２である双方向モード（ＢｉＰｒｅｄ）及び動き補償予測の予測方向が単方向または双方向であって符号化ベクトル数が０であるマージモード（ＭＥＲＧＥ）がある。また、動き補償予測を実施しない予測符号化モードであるイントラモード（Ｉｎｔｒａ）もある。
【００３１】
（参照画像インデックス）
本発明の実施の形態では、動き補償予測の精度向上のために、動き補償予測において複数の参照画像の中から最適な参照画像を選択することを可能とする。そのため、動き補償予測で利用した参照画像を参照画像インデックスとして符号化ベクトルととも符号化ストリーム中に符号化する。動き補償予測で利用される参照画像インデックスは０以上の数値となる。
【００３２】
参照画像インデックスで選択できる複数の参照画像は参照インデックスリストで管理される。動き補償予測の予測方向が単方向であれば、参照画像インデックスは１つ符号化され、動き補償予測の予測方向が双方向であれば、それぞれの予測方向の参照画像を示す参照画像インデックスが符号化される（図５）。
【００３３】
（予測ベクトルインデックス）
ＨＥＶＣでは、予測ベクトルの精度を向上させるために、複数の予測ベクトルの候補の中から最適な予測ベクトルを選択し、選択した予測ベクトルを示すための予測ベクトルインデックスを符号化することが検討されている。本発明の実施の形態では、上記の予測ベクトルインデックスを導入する。動き補償予測の予測方向が単方向であれば、予測ベクトルインデックスは１つ符号化され、動き補償予測の予測方向が双方向であれば、それぞれの予測方向の予測ベクトルを示す予測ベクトルインデックスが符号化される（図５）。
【００３４】
（マージインデックス）
ＨＥＶＣでは、さらに符号化効率を向上させるために、複数の隣接ブロックの候補及び符号化済みの別の画像の処理対象ブロックと同一位置にあるブロックの中から最適なブロックを選択し、選択したブロックを示すマージインデックスを符号化及び復号することが検討されている。これは、選択されたマージインデックスの示すブロックの動き補償予測の予測方向、動きベクトル情報、参照画像情報から成る動き情報を処理対象ブロックで利用する動き補償予測技術（マージ技術）である。本発明の実施の形態では、上記のマージインデックスを導入する。図５に示すように、マージインデックスは予測符号化モードがマージモードの場合に、１つ符号化される。尚、動き情報が双方向であれば、動き情報には各予測方向の動きベクトル情報と参照画像情報が含まれる。
【００３５】
以降、マージインデックスによって示される可能性のあるブロックの持つ動き情報を結合動き情報候補と呼び、結合動き情報候補の集合体を結合動き情報候補リストと呼ぶ。
【００３６】
（予測方向）
本発明の実施の形態では、動き補償予測の予測方向としてＬ０方向とＬ１方向の２つを設定する。ここで、動き補償予測の予測方向について図６（ａ）〜（ｄ）を用いて簡単に説明する。動き補償予測の予測方向が単方向の場合はＬ０方向またはＬ１方向のいずれかを利用する。図６（ａ）は単方向であってＬ０方向の参照画像（ＲｅｆＬ０Ｐｉｃ）が符号化対象画像（ＣｕｒＰｉｃ）より前の時刻にある場合を示している。図６（ｂ）は単方向であってＬ０方向の参照画像が符号化対象画像より後の時刻にある場合を示している。図６（ａ）及び図６（ｂ）のＬ０方向の参照画像をＬ１方向の参照画像（ＲｅｆＬ１Ｐｉｃ）に置き換えることもできる。
【００３７】
双方向の場合はＬ０方向とＬ１方向の２つを利用してＢＩ方向と表現する。図６（ｃ）は双方向であってＬ０方向の参照画像が符号化対象画像より前の時刻にあって、Ｌ１方向の参照画像が符号化対象画像より後の時刻にある場合を示している。図６（ｄ）は双方向であってＬ０方向の参照画像とＬ１方向の参照画像が符号化対象画像より前の時刻にある場合を示している。図６（ｃ）及び図６（ｄ）のＬ０方向の参照画像をＬ１方向の参照画像（ＲｅｆＬ１Ｐｉｃ）に、Ｌ１方向の参照画像をＬ０方向の参照画像（ＲｅｆＬ０Ｐｉｃ）に置き換えることもできる。以上で説明したように、動き補償予測の予測方向であるＬ０方向とＬ１方向はそれぞれ時間的に前方向と後方向のいずれでも示すことができる。
【００３８】
また、Ｌ０方向とＬ１方向はそれぞれに複数の参照画像が存在することが可能性であって、Ｌ０方向の参照画像は参照画像リストＬ０にＬ１方向の参照画像は参照画像リストＬ１に登録されて、それぞれの予測方向の参照画像インデックスによって参照画像リスト中の参照画像の位置が指定されて、参照画像が確定する。以降、予測方向がＬ０方向であるとは参照画像リストＬ０に登録された参照画像と関連づけられた動き情報を利用する予測方向であり、予測方向がＬ１方向であるとは参照画像リストＬ１に登録された参照画像と関連づけられた動き情報を利用する予測方向である。
【００３９】
（動き情報の符号量）
マージモードはマージインデックスで動き情報を伝送できる。従って、マージモード（マージフラグが１）と非マージモード（マージフラグが０）の予測誤差が同程度であれば、マージモードの方が動き情報を効率よく符号化できる。すなわち、マージモードの選択率を高くすることで動き情報の符号化効率を向上させることができる。
【００４０】
（マージインデックスの特性）
マージモードの場合にマージインデックスの復号（符号化）の前段にマージの候補数を算出する処理が、非マージモードの場合に予測ベクトルインデックスの復号（符号化）の前段に予測ベクトルの候補数を算出する処理がそれぞれ設置されている。これらは隣接ブロックの動き情報の有効性によって、マージの候補数や予測ベクトルの候補数が予測ブロック毎に変化するために、その候補数を取得するために必要な処理である。尚、隣接ブロックの動き情報が有効であるとは、その隣接ブロックが領域外のブロックやイントラモードでないことであって、隣接ブロックの動き情報が無効であるとは、その隣接ブロックが領域外のブロックやイントラモードであることである。
【００４１】
尚、マージの候補数が１である場合はマージインデックスを復号（符号化）しない。マージの候補数が１である場合は指定しなくとも一意に決定できるためである。予測ベクトルインデックスの場合も同様である。
【００４２】
また、マージインデックスの符号列について図７（ａ）〜（ｃ）を用いて説明する。本発明の実施の形態では、マージインデックスの符号列としてＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いる。図７（ａ）はマージの候補数が２個の場合のＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列によるマージインデックスの符号列を、図７（ｂ）はマージの候補数が３個の場合のＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列によるマージインデックスの符号列を、図７（ｃ）はマージの候補数が４個の場合のＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列によるマージインデックスの符号列を示す。
【００４３】
図７（ａ）〜（ｃ）から同じマージインデックスの値を符号化する場合でもマージの候補数が少ないほどマージインデックスに割り当てられる符号ビット数が小さくなることがわかる。例えば、マージインデックスが１である場合、マージの候補数が２個であれば‘１’の１ビットであるが、マージの候補数が３個または４個であれば‘１０’の２ビットとなる。
【００４４】
以上のように、マージの候補数は少ないほどマージインデックスの符号化効率は向上する。すなわち、選択率が相対的に高い候補を残し、選択率が相対的に低い候補を削減することでマージインデックスの符号化効率は向上させることができる。また、候補数が同じである場合には、小さいマージインデックスの方が符号量は少なくなるため、選択率が相対的に高い候補に小さなマージインデックスを割り当てることで符号化効率を向上させることができる。
【００４５】
（ＰＯＣ）
本発明の実施の形態では、画像の時間情報（距離情報）としてＰＯＣ（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ）を用いる。ＰＯＣはＭＰＥＧ−４ＡＶＣで定義された画像の表示順序を示すカウンタである。画像の表示順序が１増加するとＰＯＣも１増加する。したがって、画像間のＰＯＣ差から画像間の時間差（距離）を取得できる。
【００４６】
（隣接ブロックの動き情報の特性）
一般的に処理対象ブロックの動き情報と処理対象ブロックに隣接するブロック（以下、隣接ブロックという）の動き情報の相関度が高いのは、処理対象ブロックと隣接ブロックが同じ動きをしている場合、例えば、処理対象ブロックと隣接ブロックを含めた領域が平行移動している場合である。また、一般的に処理対象ブロックの動き情報と隣接ブロックの動き情報の相関度は、処理対象ブロックと隣接ブロックの接している長さにも依存する。
【００４７】
（別の画像の動き情報の特性）
一方、一般的に時間ダイレクトモードや空間ダイレクトモードで利用されている復号済みの別の画像上で処理対象ブロックと同一位置にあるブロック（以下、同一位置ブロックという）と、当該処理対象ブロックとの相関度が高いのは、当該同一位置ブロック及び当該処理対象ブロックが同じ動き情報、すなわち等速運動にある場合である。
【００４８】
以下、図面とともに本発明の好適な実施の形態に係る動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラムの詳細について説明する。なお、図面の説明において同一要素には同一符号を付与して重複する説明を省略する。
【００４９】
［実施の形態１］
（シンタックス）
本発明の実施の形態１における符号化及び復号で定義される予測ブロックのシンタックスの一例について図８を用いて説明する。予測ブロックがイントラであるかインターであるかは上位の符号化ブロックによって指定されており、図８は予測ブロックがインターの場合のシンタックスを示す。予測ブロックには、マージフラグ（ｍｅｒｇｅ＿ｆｌａｇ）、マージタイプ（ｍｅｒｇｅ＿ｔｙｐｅ）、マージインデックス（ｍｅｒｇｅ＿ｉｄｘ、ｍｅｒｇｅ＿ｉｄｘ＿ｌ０、ｍｅｒｇｅ＿ｉｄｘ＿ｌ１）、インター予測モード（ｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅ）、参照インデックス（ｒｅｆ＿ｉｄｘ＿ｌ０とｒｅｆ＿ｉｄｘ＿ｌ１）、差分ベクトル（ｍｖｄ＿ｌ０［０］、ｍｖｄ＿ｌ０［１］、ｍｖｄ＿ｌ１［０］、ｍｖｄ＿ｌ１［１］）及び予測ベクトルインデックス（ｍｖｐ＿ｉｄｘ＿ｌ０及びｍｖｐ＿ｉｄｘ＿ｌ１）が設置されている。差分ベクトルの［０］は水平成分、［１］は垂直成分を示す。
【００５０】
選択されたマージインデックスで示される隣接ブロックの動き情報を利用するマージモードが予測ブロックに適用される場合、ｍｅｒｇｅ＿ｆｌａｇは“１”に設定される。一方、予測ブロックにマージモードを適用せず、通常の動きベクトル検出にて検出された動きベクトルを利用する非マージモードを適用する場合、ｍｅｒｇｅ＿ｆｌａｇは“０”に設定される。
【００５１】
ｍｅｒｇｅ＿ｆｌａｇが“１”の場合、最初にｍｅｒｇｅ＿ｔｙｐｅが設定される。ｍｅｒｇｅ＿ｔｙｐｅはマージインデックスを１つ或いは２つ使用するかを切り換えるフラグである。ｍｅｒｇｅ＿ｔｙｐｅが“０”の場合、マージインデックスを１つ使用し、動き情報を利用する隣接ブロックをマージインデックス（ｍｅｒｇｅ＿ｉｄｘ）で指定する。
【００５２】
ｍｅｒｇｅ＿ｔｙｐｅが“１”の場合、マージインデックスを２つ使用する。マージインデックスはＬ０方向とＬ１方向にｍｅｒｇｅ＿ｉｄｘ＿ｌ０，ｍｅｒｇｅ＿ｉｄｘ＿ｌ１がそれぞれ設定され、Ｌ０方向とＬ１方向とで動き情報を利用する隣接ブロックをそれぞれ指定する。ｍｅｒｇｅ＿ｔｙｐｅが“１”の場合、Ｌ０及びＬ１方向の２つのマージインデックスを使用するので、予測ブロックを含むスライスタイプがＢスライスの場合にのみ適用される。
【００５３】
その為、スライスタイプがＢスライスであるかどうかを判定し、スライスタイプがＢスライスの場合に、更にマージインデックスを１つ或いは２つ使用するかをｍｅｒｇｅ＿ｔｙｐｅで指定する。スライスタイプがＰスライスの場合は、予測方向がＬ０予測の１つしかないので、ｍｅｒｇｅ＿ｔｙｐｅは暗黙的に“０”に設定されることと等価になり、１つのマージインデックスで動き情報を利用する隣接ブロックを指定する。
【００５４】
マージインデックスの前段にマージの候補数を算出する関数ＮｕｍＭｅｒｇｅＣａｎｄ（）が設置されている。これは隣接ブロックの動き情報の有効性によって、マージの候補数が予測ブロック毎に変化する為に、その候補数を取得するために必要な関数である。マージの候補数が１より大きい場合にマージの候補を指定する為にマージインデックスが使用され、マージの候補数が１の場合はマージ候補が一意に決定されるのでマージインデックスを使用しない。ここで、関数ＮｕｍＭｅｒｇｅＣａｎｄ（）の括弧内に記述がある場合、その記述で示される予測方向のみの動き情報の有効性を判定し、候補数を算出する。予測方向はＬ０方向或いはＬ１方向である。関数ＮｕｍＭｅｒｇｅＣａｎｄ（）の括弧内に記述が無い場合、Ｌ０方向またはＬ１方向の有効性を判定し、候補数を算出する。
【００５５】
ｍｅｒｇｅ＿ｆｌａｇが“０”の場合、非マージモードとなり、通常の動きベクトル検出で検出された動きベクトルを効率良く伝送する為に、Ｌ０及びＬ１方向毎に、予測ベクトルインデックスで示される隣接ブロックの動きベクトルを予測ベクトルとして、動きベクトル予測が行われる。予測ベクトルとして利用する隣接ブロックをＬ０、Ｌ１方向ごとに予測ベクトルインデックス（ｍｖｐ＿ｉｄｘ＿ｌ０及びｍｖｐ＿ｉｄｘ＿ｌ１）で指定する。尚、図８に示すシンタックスにおいて、ｍｅｒｇｅ＿ｉｄｘ＿ｌ０とｍｅｒｇｅ＿ｉｄｘ＿ｌ１とを１つに纏めた形態を用いてもよい。例えば、ｍｅｒｇｅ＿ｉｄｘ＿ｌ０をＭＳＢ、ｍｅｒｇｅ＿ｉｄｘ＿ｌ１をＬＳＢとして、（ｍｅｒｇｅ＿ｉｄｘ＿ｌ０＜＜（ｍｅｒｇｅ＿ｉｄｘ＿ｌ１のビット数））｜ｍｅｒｇｅ＿ｉｄｘ＿ｌ１としたものをｍｅｒｇｅ＿ｉｄｘとする。尚、この場合の条件文はｉｆ（（ＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ０）＞１）｜｜（ＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ１）＞１））となる。
【００５６】
予測ベクトルインデックスの前段に予測ベクトルの候補数を算出する関数ＮｕｍＭｖｐＣａｎｄ（）が設置されており、ＮｕｍＭｅｒｇｅＣａｎｄ（）と同様に、隣接ブロックの動き情報の有効性によって、予測ベクトルの候補数が予測ブロック毎に変化する為に、その候補数を取得するために必要な関数である。ここで、ｒｅｆ＿ｉｄｘ＿ｌ０とｍｖｄ＿ｌ０［０］、ｍｖｄ＿ｌ０［１］、ｍｖｐ＿ｉｄｘ＿ｌ０はＬ０方向に関する情報であって、ｒｅｆ＿ｉｄｘ＿ｌ１とｍｖｄ＿ｌ１［０］、ｍｖｄ＿ｌ１［１］、ｍｖｐ＿ｉｄｘ＿ｌ１はＬ１方向に関する情報である。ｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅにはＰｒｅｄ＿Ｌ０（Ｌ０方向の単方向）、Ｐｒｅｄ＿Ｌ１（Ｌ１方向の単方向）及びＰｒｅｄ＿ＢＩ（ＢＩの双方向）の３種類がある。
【００５７】
（動画像符号化装置１００の構成）
図９は本発明の実施の形態１に係る動画像符号化装置１００の構成を示す。動画像符号化装置１００は、動画像信号を動き補償予測を実施する予測ブロック単位で符号化する装置である。符号化ブロックの分割、予測ブロックサイズの決定、予測符号化モードの決定は上位の符号化制御部で決定されているものとする。
【００５８】
動画像符号化装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、フレームメモリ、ハードディスクなどを備える情報処理装置などのハードウェアにより実現される。動画像符号化装置１００は、上記の構成要素が動作することにより、以下に説明する機能的な構成要素を実現する。尚、処理対象の予測ブロックの位置情報、予測ブロックサイズ及び動き補償予測の予測方向に関しては動画像符号化装置１００内で共有していることとし、図示しない。
【００５９】
実施の形態１の動画像符号化装置１００は、予測ブロック画像取得部１０１、減算部１０２、予測誤差符号化部１０３、符号列生成部１０４、予測誤差復号部１０５、動き補償部１０６、加算部１０７、動きベクトル検出部１０８、動き情報生成部１０９、フレームメモリ１１０及び動き情報メモリ１１１を含む。
【００６０】
（動画像符号化装置１００の機能）
以下、各部の機能について説明する。予測ブロック画像取得部１０１は、予測ブロックの位置情報と予測ブロックサイズに基づいて、端子１０より供給される画像信号から処理対象の予測ブロックの画像信号を取得し、予測ブロックの画像信号を減算部１０２、動きベクトル検出部１０８及び動き情報生成部１０９に供給する。
【００６１】
減算部１０２は、予測ブロック画像取得部１０１より供給される画像信号と動き補償部１０６より供給される予測信号を減算して予測誤差信号を算出し、当該予測誤差信号を予測誤差符号化部１０３に供給する。
【００６２】
予測誤差符号化部１０３は、減算部１０２より供給される予測誤差信号に対して、量子化や直交変換などの処理を行って予測誤差符号化データを生成し、当該予測誤差符号化データを符号列生成部１０４及び予測誤差復号部１０５に供給する。
【００６３】
符号列生成部１０４は、予測誤差符号化部１０３より供給される予測誤差符号化データ、ならびに動き情報生成部１０９より供給されるマージフラグ、マージ候補番号、動き補償予測の予測方向、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスを、動き補償予測の予測方向とともにシンタックスに従ってエントロピー符号化して符号列を生成し、当該符号列を端子１１に供給する。
【００６４】
ここで、マージ候補番号はマージインデックスに変換されて符号列を生成する。ここで、マージ候補番号は選択された結合動き情報候補を示す番号である。マージ候補番号からマージインデックスへの変換については後述する。尚、実施の形態１では上記のようにマージインデックスや予測ベクトルインデックスの符号化にＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を利用したが、候補数が小さいほど少ないビットで符号化できる符号列であればこれに限定されない。
【００６５】
予測誤差復号部１０５は、予測誤差符号化部１０３より供給される予測誤差符号化データに対して、逆量子化や逆直交変換などの処理を行って予測誤差信号を生成し、当該予測誤差信号を加算部１０７に供給する。
【００６６】
動き補償部１０６は、動き情報生成部１０９より供給される参照画像インデックスで示されるフレームメモリ１１０内の参照画像を、動き情報生成部１０９より供給される動きベクトルに基づき動き補償して予測信号を生成する。予測方向が双方向であれば、Ｌ０方向とＬ１方向の予測信号を平均したものを予測信号とする。
【００６７】
加算部１０７は、予測誤差復号部１０５より供給される予測誤差信号と、動き補償部１０６より供給される予測信号を加算して復号画像信号を生成し、当該復号画像信号をフレームメモリ１１０に供給する。
【００６８】
動きベクトル検出部１０８は、予測ブロック画像取得部１０１より供給される画像信号及び複数の参照画像に相当する画像信号から、動きベクトル及び参照画像を示す参照画像インデックスを検出し、当該動きベクトル及び当該参照画像インデックスを動き情報生成部１０９に供給する。尚、予測方向が双方向であれば、Ｌ０方向とＬ１方向の動きベクトルと参照画像インデックスを検出する。
【００６９】
一般的な動きベクトルの検出方法は、対象画像の画像信号と同一位置より所定の移動量だけ移動させた参照画像に相当する画像信号について誤差評価値を算出し、誤差評価値が最小となる移動量を動きベクトルとする。誤差評価値としては、絶対差分和を示すＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）や二乗誤差平均を示すＭＳＥ（Ｍｅａｎ  Ｓｑｕａｒｅ  Ｅｒｒｏｒ）などを利用することが可能である。
【００７０】
動き情報生成部１０９は、動きベクトル検出部１０８より供給される動きベクトルと参照画像インデックス、動き情報メモリ１１１より供給される候補ブロック群及びフレームメモリ１１０内の参照画像インデックスで示される参照画像から、マージ候補番号、または差分ベクトル及び予測ベクトルインデックスを生成し、マージフラグ、マージタイプ、マージ候補番号、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスを必要に応じて、符号列生成部１０４、動き補償部１０６及び動き情報メモリ１１１に供給する。動き情報生成部１０９の詳細な構成については後述する。
【００７１】
フレームメモリ１１０は、加算部１０７より供給される復号画像信号を記憶する。また、画像全体の復号が完了した復号画像については参照画像として、１以上の所定の画像数を記憶する。フレームメモリ１１０は、記憶した参照画像信号を動き補償部１０６及び動き情報生成部１０９に供給する。参照画像を記憶する記憶領域はＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式で制御される。
【００７２】
動き情報メモリ１１１は、動き情報生成部１０９より供給される動き情報を最小の予測ブロックサイズ単位で所定の画像数、記憶する。処理対象の予測ブロックの隣接ブロックの動き情報を空間候補ブロック群とする。
【００７３】
また、動き情報メモリ１１１は、処理対象の予測ブロックと同一位置にあるＣｏｌＰｉｃ上のブロックとその周辺ブロックの動き情報を時間候補ブロック群とする。動き情報メモリ１１１は、空間候補ブロック群と時間候補ブロック群を候補ブロック群として動き情報生成部１０９に供給する。動き情報メモリ１１１は、フレームメモリ１１０と同期しており、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式で制御される。
【００７４】
ここで、ＣｏｌＰｉｃとは、処理対象の予測ブロックとは別の復号済みの画像であって、フレームメモリ１１０に参照画像として記憶されている画像を指す。実施の形態１では、ＣｏｌＰｉｃは直前に復号した参照画像とする。尚、実施の形態１では、ＣｏｌＰｉｃは直前に復号した参照画像としたが、符号化済みの画像であればよく、例えば、表示順で直前の参照画像や表示順で直後の参照画像でもよく、符号化ストリーム中で指定することも可能である。
【００７５】
ここで、動き情報メモリ１１１における動き情報の管理方法について図１０を用いて説明する。動き情報は最小の予測ブロック単位で各メモリエリアに記憶される。図１０は処理対象の予測ブロックサイズが１６画素×１６画素である場合の様子を示している。この場合、この予測ブロックの動き情報は図１０の斜線部の１６個のメモリエリアに格納される。
【００７６】
尚、予測符号化モードがイントラモードである場合、Ｌ０方向とＬ１方向の動きベクトルとして（０，０）が記憶され、Ｌ０方向とＬ１方向の参照画像インデックスとして「−１」が記憶される。尚、参照画像インデックスの「−１」は動き補償予測を実施しないモードであることが判定できればどのような値でもよい。これ以降は特に断らない限り単にブロックと表現する場合には、最小の予測ブロック単位のことを示すこととする。また、領域外のブロックである場合もイントラモードと同様に、Ｌ０方向とＬ１方向の動きベクトルとして（０，０）、Ｌ０方向とＬ１方向の参照画像インデックスとして「−１」が記憶されている。ＬＸ方向（Ｘは０または１）が有効であるとはＬＸ方向の参照画像インデックスが０以上であることで、ＬＸ方向が無効である（有効でない）とはＬＸ方向の参照画像インデックスが「−１」であることである。
【００７７】
続いて、動き情報生成部１０９の詳細な構成について図１１を用いて説明する。図１１は動き情報生成部１０９の構成を示す。動き情報生成部１０９は、差分ベクトル算出部１２０、結合動き情報決定部１２１及び予測符号化モード決定部１２２を含む。端子１２は動き情報メモリ１１１に、端子１３は動きベクトル検出部１０８に、端子１４はフレームメモリ１１０に、端子１５は予測ブロック画像取得部１０１に、端子１６は符号列生成部１０４に、端子５０は動き補償部１０６に、及び端子５１は動き情報メモリ１１１にそれぞれ接続されている。
【００７８】
以下、各部の機能について説明する。差分ベクトル算出部１２０は、端子１２より供給される候補ブロック群、端子１３より供給される動きベクトルと参照画像インデックス、端子１４より供給される参照画像及び端子１５より供給される画像信号から予測ベクトルインデックスを決定して、差分ベクトル及びレート歪み評価値を算出する。そして、当該参照画像インデックス、当該動きベクトル、当該差分ベクトル、当該予測ベクトルインデックス及び当該レート歪み評価値を予測符号化モード決定部１２２に供給する。差分ベクトル算出部１２０の詳細な構成については後述する。
【００７９】
結合動き情報決定部１２１は、端子１２より供給される候補ブロック群、端子１４より供給される参照画像及び端子１５より供給される画像信号から結合動き情報候補リストを生成する。そして、結合動き情報決定部１２１は、生成した結合動き情報候補リストの中から結合動き情報候補を選択してマージ候補番号を決定すると共に、レート歪み評価値を算出して、当該結合動き情報候補の動き情報、当該マージ候補番号及び当該レート歪み評価値を予測符号化モード決定部１２２に供給する。結合動き情報決定部１２１の詳細な構成については後述する。
【００８０】
予測符号化モード決定部１２２は、差分ベクトル算出部１２０より供給されるレート歪み評価値と、結合動き情報決定部１２１より供給されるレート歪み評価値とを比較する。前者の方が後者未満の場合は、マージフラグを「０」に設定する。予測符号化モード決定部１２２は、マージフラグ及び差分ベクトル算出部１２０より供給される参照画像インデックスと差分ベクトルと予測ベクトルインデックスを端子１６に供給し、差分ベクトル算出部１２０より供給される動きベクトルと参照画像インデックスを端子５０及び端子５１に供給する。
【００８１】
後者が前者以下の場合は、マージフラグを１に設定する。予測符号化モード決定部１２２は、マージフラグ及び結合動き情報決定部１２１より供給されるマージ候補番号を端子１６に供給し、結合動き情報決定部１２１より供給される動き情報の動きベクトルと参照画像インデックスを端子５０及び端子５１に供給する。尚、レート歪み評価値の具体的な算出方法は本発明の主眼ではないため詳細は省略するが、レート歪み評価値が小さいほど符号化効率は高くなる特性を持つ評価値である。
【００８２】
続いて、差分ベクトル算出部１２０の詳細な構成について図１２を用いて説明する。図１２は差分ベクトル算出部１２０の構成を示す。差分ベクトル算出部１２０は、予測ベクトル候補リスト生成部１３０、予測ベクトル決定部１３１及び減算部１３２を含む。端子１７は予測符号化モード決定部１２２に接続されている。
【００８３】
予測ベクトル候補リスト生成部１３０は、実施の形態１による動画像符号化装置１００により生成された符号列を復号する動画像復号装置２００（図３３）にも同様に設置されて、動画像符号化装置１００と動画像復号装置２００にて矛盾のない予測ベクトル候補リストが生成される。
【００８４】
以下、各部の機能について説明する。予測ベクトル候補リスト生成部１３０は、端子１２より供給される候補ブロック群から領域外である候補ブロックや、イントラモードである候補ブロックを削除する。更に重複している動きベクトルを持つ候補ブロックが複数存在する場合には、１つの候補ブロックを残して、残りの少なくとも１つの候補ブロックを削除する。予測ベクトル候補リスト生成部１３０は、これら削除後の候補ブロックから予測ベクトル候補リストを生成し、予測ベクトル候補リストを予測ベクトル決定部１３１に供給する。このようにして生成された予測ベクトル候補リストには重複のない予測ベクトル候補が１つ以上含まれるとする。例えば、動きベクトルを持つ候補ブロックが1つもない場合には、ベクトル（０，０）が予測ベクトル候補リストに追加される。尚、予測方向が双方向であれば、Ｌ０方向とＬ１方向について予測ベクトル候補リストを生成して供給する。
【００８５】
予測ベクトル決定部１３１は、予測ベクトル候補リスト生成部１３０より供給される予測ベクトル候補リストの中から、端子１３より供給される動きベクトルに最適な予測ベクトルを選択する。予測ベクトル決定部１３１は、選択した予測ベクトルを減算部１３２に供給するとともに、参照画像インデックス及び選択された予測ベクトルを示す情報である予測ベクトルインデックスを端子１７に供給する。尚、予測方向が双方向であれば、Ｌ０方向とＬ１方向について最適な予測ベクトルを選択して供給する。
【００８６】
ここで、予測ベクトル候補が持つ動きベクトルに基づいて、端子１４より供給される参照画像と端子１５より供給される画像信号から予測誤差量がそれぞれ算出される。そして、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスの符号量と、上述の予測誤差量とからレート歪み評価値が算出されて、レート歪み評価値が最小となる予測ベクトル候補が最適な予測ベクトルとして選択される。
【００８７】
減算部１３２は、端子１３より供給される動きベクトルから予測ベクトル決定部１３１より供給される予測ベクトルを減算して差分ベクトルを算出し、当該差分ベクトルを端子１７に供給する。尚、予測方向が双方向であれば、Ｌ０方向とＬ１方向について差分ベクトルを算出して供給する。
【００８８】
（予測ベクトル候補リスト生成部１３０に供給される候補ブロック群）
ここで、予測ベクトル候補リスト生成部１３０に供給される候補ブロック群について図１３と図１４を用いて説明する。候補ブロック群には空間候補ブロック群と時間候補ブロック群が含まれる。
【００８９】
図１３は処理対象の予測ブロックサイズが１６画素×１６画素である場合の処理対象の予測ブロックの隣接ブロックを示す。実施の形態１では、空間候補ブロック群として、図１３に示すブロックＡ１、ブロックＣ、ブロックＤ、ブロックＢ１及びブロックＥの５ブロックとする。ここでは、空間候補ブロック群をブロックＡ１、ブロックＣ、ブロックＤ、ブロックＢ１及びブロックＥの５ブロックとしたが、空間候補ブロック群は、処理対象の予測ブロックに隣接する少なくとも１つ以上の処理済みのブロックであればよく、これらに限定されない。例えば、ブロックＡ１、ブロックＡ２、ブロックＡ３、ブロックＡ４、ブロックＢ１、ブロックＢ２、ブロックＢ３、ブロックＢ４、ブロックＣ、ブロックＤ及びブロックＥの全てを空間候補ブロックとしてもよい。
【００９０】
次に、時間候補ブロック群について図１４を用いて説明する。図１４は処理対象の予測ブロックサイズが１６画素×１６画素である場合の処理対象の予測ブロックと同一位置にあるＣｏｌＰｉｃ上の予測ブロック内のブロックとその周辺ブロックを示す。実施の形態１では、時間候補ブロック群として、図１４に示すブロックＨとブロックＩ６の２ブロックとする。
【００９１】
ここでは、時間候補ブロック群をＣｏｌＰｉｃ上のブロックＨとブロックＩ６の２ブロックとしたが、時間候補ブロック群は、処理対象の予測ブロックとは別の復号済みの画像上の少なくとも１つ以上のブロックであればよく、これらに限定されない。例えば、ＣｏｌＰｉｃ上のブロックＩ１からブロックＩ１６、ブロックＡ１からブロックＡ４、ブロックＢ１からブロックＢ４、ブロックＣ、ブロックＤ、ブロックＥ、ブロックＦ１からブロックＦ４、ブロックＧ１からブロックＧ４及びブロックＨの全てを時間候補ブロックとしてもよい。以降特に断らない限り、ブロックＡ４をブロックＡ、ブロックＢ４をブロックＢと表記する。以降特に断らない限り、ブロックＨとブロックＩ６のブロックを時間ブロックと表記する。
【００９２】
（結合動き情報決定部１２１の構成）
続いて、結合動き情報決定部１２１の詳細な構成について図１５を用いて説明する。図１５は結合動き情報決定部１２１の構成を示す。結合動き情報決定部１２１は、結合動き情報候補生成部１４０及び結合動き情報選択部１４１を含む。結合動き情報候補生成部１４０は、実施の形態１による動画像符号化装置１００により生成された符号列を復号する動画像復号装置２００にも同様に設置されて、動画像符号化装置１００と動画像復号装置２００にて矛盾のない結合動き情報リストが生成される。
【００９３】
以下、各部の機能について説明する。結合動き情報候補生成部１４０は、端子１２より供給される候補ブロック群から結合動き情報候補リストを生成し、当該結合動き情報候補リストを結合動き情報選択部１４１に供給する。結合動き情報候補生成部１４０の詳細な構成については後述する。
【００９４】
結合動き情報選択部１４１は、結合動き情報候補生成部１４０より供給される結合動き情報候補リストの中から、最適な結合動き情報候補を選択し、選択された結合動き情報候補を示す情報であるマージ候補番号を端子１７に供給する。
【００９５】
ここで、結合動き情報候補の予測方向、動きベクトル及び参照画像インデックスに基づいて得られる端子１４より供給される参照画像と、端子１５より供給される画像信号とから予測誤差量が算出される。マージ候補番号の符号量と、当該予測誤差量とからレート歪み評価値が算出されて、レート歪み評価値が最小となる結合動き情報候補が最適な結合動き情報候補として選択される。
【００９６】
（結合動き情報候補生成部１４０に供給される候補ブロック群）
ここで、結合動き情報候補生成部１４０に供給される候補ブロック群について図１３と図１４を用いて説明する。候補ブロック群には空間候補ブロック群と時間候補ブロック群が含まれる。実施の形態１では、空間候補ブロック群を図１３に示すブロックＡ４、ブロックＢ４、ブロックＣ及びブロックＥの４ブロックとする。ここでは、空間候補ブロック群をブロックＡ４、ブロックＢ４、ブロックＣ及びブロックＥの４ブロックとしたが、空間候補ブロック群は、処理対象の予測ブロックに隣接する少なくとも１つ以上の処理済みのブロックであればよく、ブロックの数や位置はこれらに限定されない。例えば、空間候補ブロック群をブロックＡ１、ブロックＢ１、ブロックＣ、ブロックＥ及びブロックＤの５ブロックとしてもよい。
【００９７】
次に、時間候補ブロック群について図１４を用いて説明する。実施の形態１では、時間候補ブロック群として、図１４に示すブロックＨとブロックＩ６の２ブロックとする。ここでは、時間候補ブロック群を予測ベクトル候補リスト生成部１３０に供給される時間候補ブロック群と同じとしたが、時間候補ブロック群は、処理対象の予測ブロックとは別の復号済みの画像上の少なくとも０以上のブロックであればよく、ブロックの数や位置はこれらに限定されない。
【００９８】
（結合動き情報候補生成部１４０の構成）
続いて、結合動き情報候補生成部１４０の詳細な構成について図１６を用いて説明する。図１６は結合動き情報候補生成部１４０の構成を示す。端子１８は結合動き情報選択部１４１に接続されている。結合動き情報候補生成部１４０は、単結合動き情報候補リスト生成部１５０、単結合動き情報候補リスト削減部１５１、双結合動き情報候補リスト生成部１５２、双結合動き情報候補リスト削減部１５３及び双結合動き情報候補組合せリスト生成部１５４を含む。
【００９９】
以下、各部の機能について説明する。単結合動き情報候補リスト生成部１５０は、端子１２より供給される候補ブロック群から単結合動き情報候補リストを生成し、当該単結合動き情報候補リストを単結合動き情報候補リスト削減部１５１に供給する。
【０１００】
単結合動き情報候補リスト削減部１５１は、単結合動き情報候補リスト生成部１５０より供給される単結合動き情報候補リストから重複している動き情報を持つ結合動き情報候補が複数存在する場合には１つの結合動き情報候補を残し、残りの結合動き情報候補を削除して単結合動き情報候補リストを更新する。単結合動き情報候補リスト削減部１５１は、当該単結合動き情報候補リストを双結合動き情報候補リスト生成部１５２に供給するとともに端子１８にも供給する。
【０１０１】
双結合動き情報候補リスト生成部１５２は、単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストから双結合動き情報候補リストを生成し、当該双結合動き情報候補リストを双結合動き情報候補リスト削減部１５３に供給する。
【０１０２】
実施の形態１では、双結合動き情報候補リスト生成部１５２は、Ｌ０方向の双結合動き情報候補とＬ１方向の双結合動き情報候補の候補リストをそれぞれ生成するものとする。
【０１０３】
双結合動き情報候補リスト削減部１５３は、双結合動き情報候補リスト生成部１５２より供給される双結合動き情報候補リストから重複している動き情報を持つ結合動き情報候補が複数存在する場合には１つの結合動き情報候補を残し、残りの結合動き情報候補を削除して双方向結合動き情報候補リストを更新する。双結合動き情報候補リスト削減部１５３は、当該双結合動き情報候補リストを双結合動き情報候補組合せリスト生成部１５４に供給する。
【０１０４】
双結合動き情報候補組合せリスト生成部１５４は、双結合動き情報候補リスト削減部１５３より供給される双結合動き情報候補リストから、Ｌ０方向及びＬ１方向それぞれの結合動き情報候補の動き情報の組合せが、単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストの中の結合動き情報候補の動き情報と重複している否かを判定する。重複していない双結合動き情報候補リストの組合せが存在する場合には双結合動き情報候補組合せリストを生成し、当該双結合動き情報候補組合せリストを端子１８に供給する。
【０１０５】
ここで、単結合動き情報候補は、所謂マージ技術で利用される候補ブロックの動き情報候補のことであって１つの候補ブロックから得られる動き情報である。一方、双結合動き情報は、２つの候補ブロックの２つの動き情報の両方を利用して得られる動き情報である。本実施の形態では２つの候補ブロックの２つの動き情報としてＬ０方向とＬ１方向をそれぞれ１つずつ利用する。
【０１０６】
（双結合動き情報候補組合せリスト生成部１５４）
続いて、双結合動き情報候補組合せリスト生成部１５４の詳細な構成について図１７を用いて説明する。図１７は双結合動き情報候補組合せリスト生成部１５４の構成を示す。端子１９は双結合動き情報候補リスト削減部１５３に、端子２０は単結合動き情報候補リスト削減部１５１に、端子２１は端子１８にそれぞれ接続されている。双結合動き情報候補組合せリスト生成部１５４は、Ｌ０，Ｌ１方向動き情報候補組合せ部１６０及び双結合動き情報候補決定部１６１を含む。
【０１０７】
以下、各部の機能について説明する。Ｌ０，Ｌ１方向動き情報候補組合せ部１６０は、端子１９より供給される双結合動き情報候補リストから取得される、Ｌ０予測及びＬ１予測の結合動き情報候補の動き情報を組合せて、双結合動き情報候補組合せリストを生成する。Ｌ０，Ｌ１方向動き情報候補組合せ部１６０は、当該双結合動き情報候補組合せリストを双結合動き情報候補決定部１６１に送る。
【０１０８】
双結合動き情報候補決定部１６１は、Ｌ０，Ｌ１方向動き情報候補組合せ部１６０より供給される双結合動き情報候補組合せリストの結合動き情報候補と、端子２０により供給される単結合動き情報候補リストの結合動き情報候補とを比較する。双結合動き情報候補決定部１６１は、当該比較の結果、両候補間に重複があった場合、当該双結合動き情報候補組合せリストから重複する結合動き情報候補を外して、当該双方向結合動き情報候補組合せリストを更新し、当該双方向結合動き情報候補組合せリストを端子２１に送る。
【０１０９】
（候補番号管理テーブル）
ここで、実施の形態１で利用するマージ候補番号と結合動き情報候補の関係を示す候補番号管理テーブルについて図１８を用いて説明する。単結合動き情報候補リスト及び双結合動き情報候補リストに登録される結合動き情報候補のどちらにもマージ候補番号との関連付けが適用される。マージ候補番号の０から４は、それぞれ結合動き情報候補リストに含まれるブロックＡの結合動き情報候補（Ａ）、ブロックＢの結合動き情報候補（Ｂ）、時間ブロックの結合動き情報候補（ＣＯＬ）、ブロックＣの結合動き情報候補（Ｃ）、ブロックＥの結合動き情報候補（Ｅ）を示す。また、結合動き情報候補リストに含まれる結合動き情報候補の最大数は５（マージインデックスの最大値は４）であるとする。尚、実施の形態１で利用する候補番号管理テーブルを図１８としたが、選択率が相対的に高い結合動き情報候補ほど小さいマージ候補番号が割り当てられていればよくこれに限定されない。
【０１１０】
ここで、候補番号管理テーブル及び結合動き情報候補リストに含まれる結合動き情報候補の最大数は動画像符号化装置１００内で共有していることとし、図示しない。以下、マージ候補番号からマージインデックスへの変換について図１９（ａ）、（ｂ）を用いて説明する。
【０１１１】
図１９（ａ）は、ブロックＡの結合動き情報候補、ブロックＢの結合動き情報候補、時間ブロックの結合動き情報候補、ブロックＣの結合動き情報候補及びブロックＥの結合動き情報候補が全て有効である場合に、マージ候補番号はそのままマージインデックスとなることを示している。
【０１１２】
図１９（ｂ）は、結合動き情報候補に無効なブロックが含まれている場合、無効であるマージ候補番号を詰めてからマージ候補番号の小さい順序にマージインデックスが割り当てられる場合を示している。図１９（ｂ）のようにマージ候補番号が１のブロックＢとマージ候補番号が３のブロックＣの結合動き情報候補が無効である場合、マージインデックスの０はマージ候補番号０に、マージインデックスの１はマージ候補番号２に、マージインデックスの２はマージ候補番号４にそれぞれ変換される。
【０１１３】
実施の形態１による動画像符号化装置１００により生成された符号列を復号する動画像復号装置２００ではマージインデックスからマージ候補番号に上記とは逆の変換が行われて、動画像符号化装置１００と動画像復号装置２００にて矛盾のない候補番号管理テーブルが生成される。
【０１１４】
（動画像符号化装置１００の動作）
続いて、図２０のフローチャートを用いて、実施の形態１の動画像符号化装置１００における符号化の動作を説明する。予測ブロック画像取得部１０１は、予測ブロックの位置情報と予測ブロックサイズに基づいて、端子１０より供給される画像信号から処理対象の予測ブロックの画像信号を取得する（Ｓ１００）。
【０１１５】
動きベクトル検出部１０８は、予測ブロック画像取得部１０１より供給される画像信号と複数の参照画像に相当する画像信号から、動きベクトル及び参照画像を示す参照画像インデックスを検出する（Ｓ１０１）。
【０１１６】
動き情報生成部１０９は、動きベクトル検出部１０８より動きベクトルと参照画像インデックス、動き情報メモリ１１１より候補ブロック群のマージ候補番号或いは差分ベクトルと予測ベクトルインデックスが供給され、その中から画像の予測信号を生成する為の動き情報を生成する（Ｓ１０２）。
【０１１７】
動き補償部１０６は、フレームメモリ１１０内の参照画像インデックスで示される参照画像を、動きベクトル検出部１０８より供給される動きベクトルに基づき、動き補償して予測信号を生成する。予測方向が双方向であれば、Ｌ０方向とＬ１方向の予測信号を平均したものを予測信号として生成する（Ｓ１０３）。
【０１１８】
減算部１０２は、予測ブロック画像取得部１０１より供給される画像信号と、動き補償部１０６より供給される予測信号との差分を算出して予測誤差信号を算出する（Ｓ１０４）。予測誤差符号化部１０３は、減算部１０２より供給される予測誤差信号に対して、量子化や直交変換などの処理を行って予測誤差符号化データを生成する（Ｓ１０５）。
【０１１９】
符号列生成部１０４は、予測誤差符号化部１０３より供給される予測誤差符号化データ、ならびに動き情報生成部１０９より供給されるマージフラグ、マージタイプ、マージ候補番号、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスを、予測方向とともにシンタックスに従ってエントロピー符号化して符号列を生成する（Ｓ１０６）。
【０１２０】
加算部１０７は、予測誤差復号部１０５より供給される予測誤差信号と、動き補償部１０６より供給される予測信号とを加算して復号画像信号を生成する（Ｓ１０７）。フレームメモリ１１０は、加算部１０７より供給される復号画像信号を記憶する（Ｓ１０８）。動き情報メモリ１１１は、動きベクトル検出部１０８より供給される動きベクトルを、最小の予測ブロックサイズ単位で１画像分記憶する（Ｓ１０９）。
【０１２１】
引き続いて、図２１のフローチャートを用いて、動き情報生成部１０９の動作を説明する。差分ベクトル算出部１２０は、端子１２より供給される候補ブロック群、端子１３より供給される動きベクトルと参照画像インデックス、端子１４より供給される参照画像及び端子１５より供給される画像信号から、予測ベクトルインデックスを決定して差分ベクトルとレート歪み評価値を算出する（Ｓ１１０）。
【０１２２】
結合動き情報決定部１２１は、端子１２より供給される候補ブロック群、端子１４より供給される参照画像及び端子１５より供給される画像信号から、マージ候補番号を決定してレート歪み評価値を算出する（Ｓ１１１）。
【０１２３】
予測符号化モード決定部１２２は、差分ベクトル算出部１２０より供給されるレート歪み評価値と、結合動き情報決定部１２１より供給されるレート歪み評価値を比較し、前者が後者より小さい場合はマージフラグを「０」に設定し、そうでない場合は、マージフラグを「１」に設定する（Ｓ１１２）。
【０１２４】
引き続いて、図２２のフローチャートを用いて、差分ベクトル算出部１２０の動作を説明する。予測ベクトル候補リスト生成部１３０は、端子１２より供給される候補ブロック群から領域外である候補ブロック、イントラモードである候補ブロック及び重複している動きベクトルを持つ候補ブロックを除いた候補ブロックから、予測ベクトル候補リストを生成する。予測方向が双方向であれば、Ｌ０方向とＬ１方向について予測ベクトル候補リストを生成する（Ｓ１２０）。
【０１２５】
予測ベクトル決定部１３１は、予測ベクトル候補リスト生成部１３０より供給される予測ベクトル候補リストの中から、端子１３より供給される動きベクトルに最適な予測ベクトルを選択する。予測方向が双方向であれば、Ｌ０方向とＬ１方向について最適な予測ベクトルを選択する（Ｓ１２１）。減算部１３２は、端子１３より供給される動きベクトルから、予測ベクトル決定部１３１より供給される予測ベクトルを減算して差分ベクトルを算出する。予測方向が双方向であれば、Ｌ０方向とＬ１方向について差分ベクトルを算出する（Ｓ１２２）。
【０１２６】
（結合動き情報決定部１２１の動作）
引き続いて、図２３のフローチャートを用いて、結合動き情報決定部１２１の動作を詳細に説明する。結合動き情報候補生成部１４０は、端子１２より供給される候補ブロック群から結合動き情報候補リストを生成する（Ｓ１３０）。結合動き情報選択部１４１は、結合動き情報候補生成部１４０より供給される結合動き情報候補リストの中から、端子１３より供給される動きベクトルと参照画像インデックス、及び予測方向に最適な結合動き情報を決定する（Ｓ１３１）。
【０１２７】
（結合動き情報候補生成部１４０の動作）
引き続いて、図２４のフローチャートを用いて、結合動き情報候補生成部１４０の動作を詳細に説明する。単結合動き情報候補リスト生成部１５０は、端子１２より供給される空間候補ブロック群から領域外である候補ブロック及びイントラモードである候補ブロックを除いた候補ブロックから空間結合動き情報候補リストを生成する（Ｓ１４０）。空間結合動き情報候補リストの生成の詳細な動作は後述する。
【０１２８】
単結合動き情報候補リスト生成部１５０は、端子１２より供給される時間候補ブロック群から領域外である候補ブロック及びイントラモードである候補ブロックを除いた候補ブロックから、時間結合動き情報候補リストを生成する（Ｓ１４１）。時間結合動き情報候補リストの生成の詳細な動作は後述する。
【０１２９】
単結合動き情報候補リスト生成部１５０は、空間結合動き情報候補リストと時間結合動き情報候補リストをマージ候補番号の順序で結合して、単結合動き情報候補リストを生成する（Ｓ１４２）。
【０１３０】
単結合動き情報候補リスト削減部１５１は、単結合動き情報候補リスト生成部１５０より供給される単結合動き情報候補リストから重複している動き情報を持つ結合動き情報候補が複数存在する場合には１つの結合動き情報候補を残して、それ以外の重複している動き情報を持つ結合動き情報候補を削除して、単結合動き情報候補リストを更新する（Ｓ１４３）。
【０１３１】
双結合動き情報候補リスト生成部１５２は、単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストから双結合動き情報候補リストを生成する（Ｓ１４４）。双結合動き情報候補リストはＬ０方向とＬ１方向の２つが作成される。単結合動き情報候補リストの中の各結合動き情報候補のＬ０方向及びＬ１方向の動き情報を分割して、それぞれの方向毎に作成される結合動き情報候補のリストを双結合動き情報候補リストとする。尚、スライスタイプがＰスライスの場合、或いはマージタイプが“０”の場合は双結合動き情報候補リストを生成する必要はなく、双結合動き情報候補リスト生成部１５２によるステップＳ１４４以降の処理を実施しなくてもよい。
【０１３２】
双結合動き情報候補リスト削減部１５３は、双結合動き情報候補リスト生成部１５２より供給される双結合動き情報候補リストから重複している動き情報を持つ結合動き情報候補が複数存在する場合には、１つの結合動き情報候補を残して、それ以外の重複している動き情報を持つ結合動き情報候補を削除して双結合動き情報候補リストを更新する（Ｓ１４５）。双結合動き情報候補リストの削減の詳細な動作は後述する。
【０１３３】
双結合動き情報候補組合せリスト生成部１５４は、双結合動き情報候補リスト削減部１５３より供給される双結合動き情報候補リストのＬ０方向及びＬ１方向それぞれの結合動き情報候補の動き情報を組み合わせて、双結合動き情報候補組合せリストを生成する（Ｓ１４６）。双結合動き情報候補組合せリストの生成の詳細な動作は後述する。
【０１３４】
双結合動き情報候補組合せリスト生成部１５４は、双結合動き情報候補組合せリストの結合動き情報候補の動き情報が、単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストの結合動き情報候補の動き情報と重複している場合には、双結合動き情報候補組合せリストからその重複している組合せ候補を削除して、双結合動き情報候補組合せリストを更新する（Ｓ１４７）。双結合動き情報候補組合せリストの更新の詳細な動作は後述する。
【０１３５】
引き続いて、図２５のフローチャートを用いて、空間結合動き情報候補リストの生成の詳細な動作を説明する。実施の形態１では、空間結合動き情報候補リストには４以下の候補ブロックの動き情報が含まれるとする。
【０１３６】
空間候補ブロック群に含まれる４つの候補ブロックであるブロックＡ、ブロックＢ、ブロックＣ及びブロックＥについて以下の処理を繰り返し行う（Ｓ１５０からＳ１５３）。候補ブロックの有効性を検査する（Ｓ１５１）。候補ブロックが領域外でなくイントラモードでもない場合に候補ブロックは有効となる。候補ブロックが有効であれば（Ｓ１５１のＹ）、候補ブロックの動き情報を空間結合動き情報候補リストに追加する（Ｓ１５２）。候補ブロックが有効でなければ（Ｓ１５１のＮ）、ステップＳ１５２はスキップされる。
【０１３７】
実施の形態１では空間結合動き情報候補リストには４以下の候補ブロックの動き情報が含まれるとしたが、候補ブロックの有効性によって空間結合動き情報候補の数が変動すればよく、これに限定されない。
【０１３８】
引き続いて、図２６のフローチャートを用いて、時間結合動き情報候補リストの生成の詳細な動作を説明する。実施の形態１では、時間結合動き情報候補リストには１以下の候補ブロックの動き情報が含まれるとする。
【０１３９】
時間候補ブロック群に含まれる２つの候補ブロックである時間ブロックについて以下の処理を繰り返し行う（Ｓ１６０からＳ１６６）。候補ブロックの有効性を検査する（Ｓ１６１）。候補ブロックが領域外でなくイントラモードでもない場合に候補ブロックは有効となる。候補ブロックが有効であれば（Ｓ１６１のＹ）、時間結合動き情報候補が生成され、時間結合動き情報候補が時間結合動き情報候補リストに追加され（ステップＳ１６２からステップＳ１６５）、処理を終了する。候補ブロックが有効でなければ（Ｓ１６１のＮ）、次の候補ブロックを検査する（Ｓ１６６）。
【０１４０】
候補ブロックが有効であれば、時間結合動き情報候補の予測方向の決定を行う（Ｓ１６２）。実施の形態１では結合動き情報候補の予測方向を双方向とする。次に、時間結合動き情報候補のＬ０方向、Ｌ１方向の参照画像の決定を行う（Ｓ１６３）。実施の形態１ではＬ０方向の参照画像を、Ｌ０方向の参照画像のうち処理対象画像に最も近い距離にある参照画像とし、Ｌ１方向の参照画像を、Ｌ１方向の参照画像のうち処理対象画像に最も近い距離にある参照画像とする。ここでは、Ｌ０方向の参照画像を、Ｌ０方向の参照画像のうち処理対象画像に最も近い距離にある参照画像とし、Ｌ１方向の参照画像を、Ｌ１方向の参照画像のうち処理対象画像に最も近い距離にある参照画像としたが、Ｌ０方向の参照画像とＬ１方向の参照画像が決定できればよく、これに限定されない。例えば、符号化ストリーム中にＬ０方向及びＬ１方向の参照画像を符号化してもよく、Ｌ０方向及びＬ１方向の参照画像インデックスを０にしてもよく、処理対象ブロックの隣接ブロックが使用しているＬ０方向の参照画像及びＬ１方向の参照画像で、最も多く使用されている参照画像をＬ０方向、Ｌ１方向ぞれぞれの参照する参照画像としてもよい。
【０１４１】
次に、時間結合動き情報候補の動きベクトルを算出する（Ｓ１６４）。本実施の形態における、時間結合動き情報候補は、候補ブロックの動き情報で有効な予測方向である参照画像ＣｏｌＲｅｆＰｉｃと動きベクトルｍｖＣｏｌを基準に、双方向の動き情報を算出する。
【０１４２】
候補ブロックの予測方向がＬ０方向もしくはＬ１方向の単方向の場合には、その予測方向の参照画像と動きベクトルを基準として選択する。
【０１４３】
候補ブロックの予測方向が双方向である場合には、Ｌ０方向或いはＬ１方向のいずれか一方の参照画像と動きベクトルを基準として選択する。例えば、ＣｏｌＰｉｃと同じ時間方向に存在する参照画像と動きベクトルを基準として選択する、候補ブロックのＬ０方向或いはＬ１方向の参照画像のいずれかと、ＣｏｌＰｉｃの画像間距離が近い方を基準として選択する、候補ブロックのＬ０方向或いはＬ１方向のいずれかの動きベクトルが処理対象画像と交差する方を基準として選択する等が挙げられる。
【０１４４】
双方向動き情報生成の基準とする参照画像と動きベクトルが選択されたら、時間結合動き情報候補の動きベクトルを算出する。
【０１４５】
ここで、双方向動き情報生成の基準とする動きベクトルＣｏｌＭｖと参照画像ＣｏｌＲｅｆＰｉｃからの時間結合動き情報候補の動きベクトルｍｖＬ０ｔ、ｍｖＬ１ｔの算出手法について図２７を用いて説明する。
【０１４６】
ＣｏｌＰｉｃとＣｏｌＲｅｆＰｉｃの画像間距離をＣｏｌＤｉｓｔとし、時間結合動き情報候補のＬ０方向の参照画像ＣｏｌＬ０Ｐｉｃと処理対象画像ＣｕｒＰｉｃの画像間距離をＣｕｒＬ０Ｄｉｓｔ、時間結合動き情報候補のＬ１方向の参照画像ＣｏｌＬ１Ｐｉｃと処理対象画像ＣｕｒＰｉｃの画像間距離をＣｕｒＬ１Ｄｉｓｔとすると、ＣｏｌＭｖをＣｏｌＤｉｓｔとＣｕｒＬ０Ｄｉｓｔ、ＣｕｒＬ１Ｄｉｓｔの距離比率でスケーリングした下記式１の動きベクトルを、時間結合動き情報候補の動きベクトルとする。ここで、画像間距離の算出はＰＯＣを用いて行われ、正負の符号を有する。なお、除算は四捨五入で行われる。
ｍｖＬ０ｔ＝ｍｖＣｏｌ×ＣｕｒｒＬ０Ｄｉｓｔ／ＣｏｌＤｉｓｔ
ｍｖＬ１ｔ＝ｍｖＣｏｌ×ＣｕｒｒＬ１Ｄｉｓｔ／ＣｏｌＤｉｓｔ    ・・・（式１）
尚、図２７のＣｏｌＰｉｃ、ＣｏｌＲｅｆＰｉｃ、ＣｏｌＬ０Ｐｉｃ、ＣｏｌＬ１Ｐｉｃは一例であって、これ以外の関係であってもよい。
【０１４７】
以上のようにして、算出された時間結合動き情報候補の動きベクトルは、時間結合動き情報候補リストを追加する（Ｓ１６５）。ここでは上記のようにして時間結合動き情報候補を生成したが、符号化済みの別の画像の動き情報を利用して双方向の動き情報が決定できればよく、これに限定されない。例えば、ダイレクト動き補償で行われているように各方向の参照画像と処理対象画像の距離に応じてスケーリングした動きベクトルを双方向の動きベクトルとしてもよい。候補ブロックが無効であれば（Ｓ１６１のＮ）、次の候補ブロックを検査する（Ｓ１６６）。
【０１４８】
ここでは、時間結合動き情報候補リストには１以下の候補ブロックの動き情報が含まれるとしたが、候補ブロックの有効性によって時間結合動き情報候補の数が変動すればよく、これに限定されない。予測方向、参照画像及び動きベクトルの決定方法についても同様に、これらに限定されない。
【０１４９】
（双結合動き情報候補リストの削減）
引き続いて、図２８（ａ）〜（ｅ）及び図２９（ａ）〜（ｅ）を用いて、双結合動き情報候補リストの結合動き情報候補の削減の詳細な動作を説明する。図２８（ａ）は単結合動き情報候補リスト削減部１５１にて重複する動き情報を備える結合動き情報候補は削除されて更新された単結合動き情報候補リストの一例を示す。図２８（ａ）はマージ候補番号と結合動き情報候補の関係を示す候補番号管理テーブルの説明に使用した図１８の結合動き情報候補が全て双方向モード（ＢｉＰｒｅｄ）の場合であり、各結合動き情報候補のＬ０方向及びＬ１方向の動き情報が図２８（ａ）のように設定されていることとする。
【０１５０】
各結合動き情報候補に設定される動き情報は、Ｌ０方向の動き情報にＬ０＿０，Ｌ０＿１，Ｌ０＿２、Ｌ１方向の動き情報にＬ１＿０，Ｌ１＿１，Ｌ１＿２とし、それぞれ異なるものとする。その為、Ｌ０及びＬ１方向単位では重複する動き情報が存在するものの、Ｌ０とＬ１を合わせて１つの動き情報とみなす場合には、重複する動き情報が存在せず、単結合動き情報候補リスト削減部１５１において、それらの結合動き情報候補の削除はされずに、図２８（ａ）に示されるように、５つの結合動き情報候補が残される。
【０１５１】
双結合動き情報候補リスト生成部１５２にて生成される双結合動き情報候補リストは、図２８（ａ）で示される単結合動き情報候補リストの各結合動き情報候補の動き情報をＬ０方向とＬ１方向に分割して、図２８（ｂ）及び図２８（ｃ）のように生成される。図２８（ｂ）はＬ０方向、図２８（ｃ）はＬ１方向の双結合動き情報候補リストを示す。生成された双結合動き情報候補リストは、双結合動き情報候補リスト削減部１５３に供給される。
【０１５２】
双結合動き情報候補リスト削減部１５３は、Ｌ０及びＬ１方向ごとに双結合動き情報候補リストの中で重複している動き情報を備える結合動き情報候補を削除する。まず、図２８（ｂ）のＬ０予測の双結合動き情報候補リストの結合動き情報候補の削除について説明する。
【０１５３】
図２８（ｂ）では、結合動き情報候補Ａが動き情報Ｌ０＿０を、ＢとＣＯＬがＬ０＿１を、ＣとＥがＬ０＿２を備えている。マージ候補番号の小さい結合動き情報候補の順番で動き情報を比較する。まず、マージ候補番号が０であるＡと他の結合動き情報候補との比較を開始する。Ｌ０＿０を備えるＡはＬ０方向の双結合動き情報候補リストの中に１つしかないので、Ａのマージ候補番号を変更せずに０としてＬ０方向の双結合動き情報候補リストに残す。
【０１５４】
ＢとＣＯＬは同じ動き情報Ｌ０＿１を備えているので、Ｌ０方向の双結合動き情報候補リストの中で動き情報が重複しており、どちらか一方をＬ０方向の双結合動き情報候補リストから削除する。ここでは、選択率が相対的に高い結合動き情報候補ほど小さいマージ候補番号を割り当てているので、マージ候補番号の大きい方を削除対象とする。この場合、Ｂのマージ候補番号が１でＣＯＬが２であるので、ＣＯＬを削除し、ＢはＬ０方向の双結合動き情報候補リストに残す。
【０１５５】
ＣＯＬの削除により、ＣＯＬに割り当てられてたマージ候補番号２は、ＣＯＬの直後のマージ候補番号３のＣに割り当てる。以降のＬ０方向の双結合動き情報候補リストに残っている結合動き情報候補（図２８（ｂ）の例ではＥ）に、結合動き情報候補のマージ候補番号を１だけ引いた数を割り当てて、Ｌ０方向の双結合動き情報候補リストを更新する。
【０１５６】
次に、マージ候補番号２以降の結合動き情報候補の動き情報を比較する。ＣとＥは同じ動き情報Ｌ０＿２を備えているので、Ｌ０方向の双結合動き情報候補リストの中で動き情報が重複しており、Ｌ０方向の双結合動き情報候補リストからＥを削除する。以上のように、Ｌ０方向の双結合動き情報候補リストの中で重複する動き情報を備える結合動き情報候補は削除され、図２８（ｂ）は図２８（ｄ）のように更新される。
【０１５７】
図２８（ｄ）中のハッチングが入った行は削除された結合動き情報候補を示す。これらに割り当てられていたマージ候補番号はＬ０方向の双結合動き情報候補リストに残った結合動き情報候補に小さい順に割り当てられる。Ｌ０方向の双結合動き情報候補リストに残った結合動き情報候補は関数ＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ０）で表され、ここでは３となる。
【０１５８】
同様にして、図２８（ｃ）のＬ１方向の双結合動き情報候補リストの結合動き情報候補の削除を実施すると、図２８（ｅ）のように更新される。Ｌ１方向の双結合動き情報候補リストに残った結合動き情報候補は関数ＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ１）で表され、ここでは３となる。
【０１５９】
次に、図２８（ａ）〜（ｅ）で示される結合動き情報候補の動き情報が全て双方向モード（ＢｉＰｒｅｄ）でなく、単方向モード（ＵｎｉＰｒｅｄ）を含み、Ｌ０とＬ１方向を合わせて１つの動き情報とみなす場合に重複する動き情報が存在しない単結合動き情報候補リストの一例を図２９（ａ）に示す。図２９（ａ）は単結合動き情報候補リスト削減部１５１にて重複する動き情報を備える結合動き情報候補は削除されて更新された単結合動き情報候補リストの一例である。図２９（ａ）において結合動き情報候補ＢはＬ１方向のみ、ＣはＬ０方向のみの動き情報を備え、それ以外の結合動き情報候補はＬ０及びＬ１方向の動き情報を備えているものとする。ここで、Ｌ０方向或いはＬ１方向に動き情報が存在しない場合、図２９（ａ）〜（ｅ）中で記号“−”で表すこととする。
【０１６０】
双結合動き情報候補リスト生成部１５２にて生成される双結合動き情報候補リストは、図２９（ａ）で示される単結合動き情報候補リストの各結合動き情報候補の動き情報をＬ０方向とＬ１方向に分割して、図２９（ｂ）及び図２９（ｃ）のように生成される。図２９（ｂ）はＬ０方向、図２９（ｃ）はＬ１方向の双結合動き情報候補リストを示す。生成された双結合動き情報候補リストは、双結合動き情報候補リスト削減部１５３に供給される。
【０１６１】
双結合動き情報候補リスト削減部１５３は、Ｌ０及びＬ１方向ごとに双結合動き情報候補リストの中で重複している動き情報を備える結合動き情報候補を削除する。まず、図２９（ｂ）のＬ０予測の双結合動き情報候補リストの結合動き情報候補の削除について説明する。
【０１６２】
図２９（ｂ）では、結合動き情報候補ＡとＥが動き情報Ｌ０＿０を、ＣＯＬとＣがＬ０＿１を備えており、ＢはＬ１方向の単方向モードなのでＬ０方向の動き情報は無い。図２８（ａ）〜（ｅ）での説明と同様に、マージ候補番号の小さい結合動き情報候補の順番で動き情報を比較し、重複する動き情報を備える結合動き情報候補が複数存在する場合には、選択率が相対的に高い結合動き情報候補ほど小さいマージ候補番号を割り当てているので、マージ候補番号の最も小さい結合動き情報候補を残し、他をリストから削除する。
【０１６３】
まず、マージ候補番号が０であるＡと他の結合動き情報候補との比較を開始する。ＡとＥは同じ動き情報Ｌ０＿１を備えており、Ａのマージ候補番号が０でＥが４であるので、Ｅを削除し、ＡはＬ０方向の双結合動き情報候補リストに残す。削除するＥはＬ０方向の双結合動き情報候補リストの最も大きい番号が割り当てられており、Ｅ以降には結合動き情報候補が存在しない。従って、Ｌ０方向の双結合動き情報候補リストのマージ候補番号の割り当てを更新する必要はない。
【０１６４】
次のＢはＬ０方向の動き情報が無く、Ｌ０方向の動き情報を持たない他の結合動き情報候補が存在しないので、Ｂのマージ候補番号を変更せずに１としてＬ０方向の双結合動き情報候補リストに残す。続いて、マージ候補番号が２のＣＯＬとマージ候補番号が３のＣが同じ動き情報Ｌ０＿１を備えているので、Ｃを削除し、ＣＯＬはＬ０方向の双結合動き情報候補リストに残す。Ｌ０方向の双結合動き情報候補リストは、既にＥが削除され、Ｃより後ろに結合動き情報候補が存在しないので、Ｌ０方向の双結合動き情報候補リストのマージ候補番号の割り当てを更新する必要はない。以上のように、Ｌ０方向の双結合動き情報候補リストの中で重複する動き情報を備える結合動き情報候補は削除され、図２９（ｂ）は図２９（ｄ）のように更新される。
【０１６５】
図２９（ｄ）中のハッチングが入った行は削除された結合動き情報候補を示す。Ｌ０方向の双結合動き情報候補リストに残った結合動き情報候補は関数ＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ０）で表され、ここでは３となる。
【０１６６】
同様にして、図２９（ｃ）のＬ１方向の双結合動き情報候補リストの結合動き情報候補の削除を実施すると、図２９（ｅ）のように更新される。Ｌ１方向の双結合動き情報候補リストに残った結合動き情報候補は関数ＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ１）で表され、ここでは３となる。
【０１６７】
図２９（ａ）〜（ｅ）で示される単結合動き情報候補リストの一例では、単結合動き情報候補リストの中で、Ｌ０或いはＬ１方向の一方の動き情報のみ備える結合動き情報候補もＬ０及びＬ１方向の双結合動き情報候補リストに登録される結合動き情報候補としたが、双結合動き情報候補リストの結合動き情報候補から外してもよい。例えば、図２９（ａ）の単結合動き情報候補リストの中の結合動き情報候補Ｂは単方向モードであり、Ｌ１方向の動き情報しか備えていない。従って、Ｌ０方向の双結合動き情報候補リストに結合動き情報候補として登録しても、Ｌ０方向の動き情報が無いので、他の結合動き情報候補のＬ１方向の動き情報のみを使用して動き補償予測を行うことになる。
【０１６８】
その為、動き補償予測の予測精度が低下してしまうことも有り得る。そこで、単結合動き情報候補リストの中で双方向モードの結合動き情報候補のみを対象として、常にＬ０及びＬ１方向の２つの動き情報を備える結合動き情報候補の組合せを選出するようにしてもよい。以上のようにして、Ｌ０及びＬ１方向の双結合動き情報候補リストの結合動き情報候補の削減が実施され、Ｌ０及びＬ１方向の双結合動き情報候補リストが更新される。
【０１６９】
（双結合動き情報候補組合せリストの生成）
引き続いて、図３０（ａ）〜（ｄ）及び図３１（ａ）〜（ｄ）を用いて、双結合動き情報候補組合せリストの生成の詳細な動作を説明する。図３０（ａ）、（ｂ）及び図３１（ａ）、（ｂ）は、双結合動き情報候補リスト削減部１５３にて、図２８（ａ）〜（ｅ）及び図２９（ａ）〜（ｅ）で示される双結合動き情報候補リストの一例から、重複する動き情報を備える結合動き情報候補を削除して更新された双結合動き情報候補リストである。図３０（ａ）及び図３１（ａ）がＬ０方向、図３０（ｂ）及び図３１（ｂ）がＬ１方向の双結合動き情報候補リストを示す。
【０１７０】
最初に図３０（ａ）、（ｂ）の双結合動き情報候補リストを例として説明する。双結合動き情報候補リスト削減部１５３にて更新された図３０（ａ）、（ｂ）で示される双結合動き情報候補リストが双結合動き情報候補組合せリスト生成部１５４に供給される。双結合動き情報候補組合せリスト生成部１５４は、双結合動き情報候補リストのＬ０方向及びＬ１方向の結合動き情報候補を組み合わせて、図３０（ｃ）に示される双結合動き情報候補組合せリストを生成する。図３０（ａ）、（ｂ）の例では、Ｌ０方向、Ｌ１方向ともに３つの結合動き情報候補があるので、９つの双結合動き情報候補が生成される。
【０１７１】
次に、生成された双結合動き情報候補組合せリストの中の双結合動き情報候補の動き情報が、単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストの結合動き情報候補の動き情報と重複しているか否かを判定する。ここでは、図３０（ｃ）中のＬ０方向及びＬ１方向で組み合わされた双結合動き情報候補の動き情報が、図２８（ａ）で示される単結合動き情報候補リストの中の結合動き情報候補の動き情報と同一であるかを判定する。
【０１７２】
双結合動き情報候補組合せリストの中の双結合動き情報候補の動き情報が、単結合動き情報候補リストの結合動き情報候補の動き情報と重複する場合、単結合動き情報候補の動き情報を参照することを優先し、この時の双結合動き情報候補の組合せは無効と判定し、使用しない。同じ動き情報を参照するのに、双結合動き情報候補ではＬ０及びＬ１方向の２つのマージインデックスが必要となり、単結合動き情報候補では１つのマージインデックスで済む為である。一方、重複しない場合、単結合動き情報候補リストに存在しない新たな組合せの動き情報の候補として、有効な双結合動き情報候補とする。
【０１７３】
ここで、説明の都合上、図３０（ｃ）中の双結合動き情報候補のＬ０方向及びＬ１方向の動き情報の組み合わせを（Ｌ０，Ｌ１）で表し、括弧内にはマージ候補番号を記述することとし、以下に図３０（ｃ）中の組合せが備える動き情報を判定する。
【０１７４】
（０，０）はＬ０方向はＡの動き情報（Ｌ０＿０）、Ｌ１方向はＡの動き情報（Ｌ０＿０）となり、単結合動き情報候補リストのＡと同一であるので、単結合動き情報候補リストのＡを優先し、この組合せは使用しない。
【０１７５】
（０，１）はＬ０方向はＡの動き情報（Ｌ０＿０）、Ｌ１方向はＣＯＬの動き情報（Ｌ０＿１）となり、単結合動き情報候補リストに該当する結合動き情報候補が存在しないので、有効な双結合動き情報候補とする。
【０１７６】
（０，２）はＬ０方向はＡの動き情報（Ｌ０＿０）、Ｌ１方向はＥの動き情報（Ｌ０＿２）となり、単結合動き情報候補リストに該当する結合動き情報候補が存在しないので、有効な双結合動き情報候補とする。
【０１７７】
（１，０）はＬ０方向はＢの動き情報（Ｌ０＿１）、Ｌ１方向はＡの動き情報（Ｌ０＿０）となり、単結合動き情報候補リストのＢと同一であるので、単結合動き情報候補リストのＢを優先し、この組合せは使用しない。
【０１７８】
（１，１）はＬ０方向はＢの動き情報（Ｌ０＿１）、Ｌ１方向はＣＯＬの動き情報（Ｌ０＿１）となり、単結合動き情報候補リストのＣＯＬと同一であるので、単結合動き情報候補リストのＣＯＬを優先し、この組合せは使用しない。
【０１７９】
（１，２）はＬ０方向はＢの動き情報（Ｌ０＿１）、Ｌ１方向はＥの動き情報（Ｌ０＿２）となり、単結合動き情報候補リストに該当する結合動き情報候補が存在しないので、有効な双結合動き情報候補とする。
【０１８０】
（２，０）はＬ０方向はＣの動き情報（Ｌ０＿２）、Ｌ１方向はＡの動き情報（Ｌ０＿０）となり、単結合動き情報候補リストに該当する結合動き情報候補が存在しないので、有効な双結合動き情報候補とする。
【０１８１】
（２，１）はＬ０方向はＣの動き情報（Ｌ０＿２）、Ｌ１方向はＣＯＬの動き情報（Ｌ０＿１）となり、単結合動き情報候補リストのＣと同一であるので、単結合動き情報候補リストのＣを優先し、この組合せは使用しない。
【０１８２】
（２，２）はＬ０方向はＣの動き情報（Ｌ０＿２）、Ｌ１方向はＥの動き情報（Ｌ０＿２）となり、単結合動き情報候補リストのＥと同一であるので、単結合動き情報候補リストのＥを優先し、この組合せは使用しない。
【０１８３】
こうして判定された双結合動き情報候補の組合せは図３０（ｄ）に示される。図３０（ａ）〜（ｄ）の例では、単結合動き情報候補リストに存在しない有効な組合せとなる双結合動き情報候補は（０，１），（０，２），（１，２）及び（２，０）となり（図３０（ｃ）中に“○”で表される）、これらの組合せを表すＬ０及びＬ１方向のマージ候補番号を、単結合動き情報候補リストのマージ候補番号とともに結合動き情報選択部１４１に供給する。
【０１８４】
以上のようにして、Ｌ０方向とＬ１方向とで異なる隣接ブロックの動き情報が参照可能となる。しかしながら、図３０（ｃ）で示される双結合動き情報候補の組合せは、ＮｕｍＭｅｒｇａＣａｎｄ（Ｌ０）×ＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ１）＝３×３＝９通り存在するが、実際に有効な組合せは４通りしかない。その４通りを表す為のマージ候補番号に図７（ｂ）の符号割当を適用すると、片方向を２ビットで表すので最大４ビットが必要となる。単純に４通りの組合せを表すのであれば、図７（ｃ）の符号割当を適用すると最大３ビットで済むので、符号化効率が低下することなる。このことは、Ｌ０方向及びＬ１方向の双結合動き情報候補をそれぞれ独立して２次元上に配列した為である。
【０１８５】
そこで、まず、Ｌ０方向の有効な双結合動き情報候補を決定し、その後に決定されたＬ１方向の有効な双結合動き情報候補と組み合わせて、有効な組合せとなるＬ１方向の双結合動き情報候補に対してマージ候補番号を割り当てるようにする。図３０（ｄ）を用いて説明する。
【０１８６】
Ｌ０方向の双結合動き情報候補としてＡを選択した場合、単結合動き情報候補リストに存在しない組合せの動き情報を備えるＬ１方向の有効な双結合動き情報候補はＣＯＬとＥである。この時のＬ１方向の有効な双結合動き情報候補の候補数はＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ１）＝２となり、ＣＯＬにマージ候補番号を０、Ｅに１を割り当てるようにする。この時、Ｌ１方向のマージ候補番号の符号割当は、候補数が２となるので、図７（ａ）の符号割当が適用され、Ｌ１方向は１ビットで済むことになり、Ｌ０方向に必要な２ビットを加算しても３ビットで済むことになり、符号化効率が改善される。
【０１８７】
同様にして、Ｌ０方向の双結合動き情報候補としてＢを選択した場合、単結合動き情報候補リストに存在しない組合せの動き情報を備えるＬ１方向の有効な双結合動き情報候補はＥのみである。この時のＬ１方向の有効な双結合動き情報候補の候補数はＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ１）＝１となり、一意にＬ１方向の有効な双結合動き情報候補として選出されるので、マージ候補番号は必要としない。
【０１８８】
この場合はＬ０方向の双結合動き情報候補を表す２ビットのみで済むことになり、符号化効率が改善される。Ｌ０方向の双結合動き情報候補としてＣを選択した場合は、上述したＢを選択した場合と同様なので説明を割愛する。以上のように、Ｌ０方向の有効な双結合動き情報候補を選択した後で、有効な組合せとなるＬ１方向の有効な双結合動き情報候補を選択することで、参照する双結合動き情報候補を示す符号量を削減することが可能となる。Ｌ０方向、Ｌ１方向の順に処理を進めるので、実施の形態１で定義したシンタックスを変更しなくてもよい。
【０１８９】
次に、図３１（ａ）、（ｂ）の双結合動き情報候補リストを例として説明する。双結合動き情報候補リスト削減部１５３にて更新された図３１（ａ）、（ｂ）で示される双結合動き情報候補リストが双結合動き情報候補組合せリスト生成部１５４に供給される。双結合動き情報候補組合せリスト生成部１５４は、双結合動き情報候補リストのＬ０方向及びＬ１方向の結合動き情報候補を組み合わせて、図３１（ｃ）に示される双結合動き情報候補組合せリストを生成する。図３１（ａ）、（ｂ）の例では、Ｌ０方向、Ｌ１方向ともに３つの結合動き情報候補があるので、９つの双方向結合動き情報候補が生成される。
【０１９０】
次に、生成された双結合動き情報候補組合せリストの中の双結合動き情報候補の動き情報が、単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストの結合動き情報候補の動き情報と重複しているか否かを判定する。ここでは、図３１（ｃ）中のＬ０方向及びＬ１方向で組み合わされた双結合動き情報候補の動き情報が、図２８（ａ）で示される単結合動き情報候補リストの中の結合動き情報候補の動き情報と同一であるかを判定する。
【０１９１】
双結合動き情報候補組合せリストの中の双結合動き情報候補の動き情報が、単結合動き情報候補リストの結合動き情報候補の動き情報と重複する場合、単結合動き情報候補の動き情報を参照することを優先し、この時の双結合動き情報候補の組合せは無効と判定し、使用しない。同じ動き情報を参照するのに、双結合動き情報候補ではＬ０及びＬ１方向の２つのマージインデックスが必要となり、単結合動き情報候補では１つのマージインデックスで済む為である。一方、重複しない場合、単結合動き情報候補リストに存在しない新たな組合せの動き情報の候補として、有効な双結合動き情報候補とする。
【０１９２】
ここで、説明の都合上、図３１（ｃ）中の双結合動き情報候補のＬ０方向及びＬ１方向の動き情報の組み合わせを（Ｌ０，Ｌ１）で表し、括弧内にはマージ候補番号を記述することとし、以下に図３１（ｃ）中の組合せが備える動き情報を判定する。
【０１９３】
（０，０）はＬ０方向はＡの動き情報（Ｌ０＿０）、Ｌ１方向はＡの動き情報（Ｌ０＿０）となり、単結合動き情報候補リストのＡと同一であるので、単結合動き情報候補リストのＡを優先し、この組合せは使用しない。
【０１９４】
（０，１）はＬ０方向はＡの動き情報（Ｌ０＿０）、Ｌ１方向はＣＯＬの動き情報（Ｌ０＿１）となり、単結合動き情報候補リストのＥと同一であるので、単結合動き情報候補リストのＡを優先し、この組合せは使用しない。
【０１９５】
（０，２）はＬ０方向はＡの動き情報（Ｌ０＿０）、Ｌ１方向はＣの動き情報（−）となり、単結合動き情報候補リストに該当する結合動き情報候補が存在しないので、有効な双結合動き情報候補とする。
【０１９６】
（１，０）はＬ０方向はＢの動き情報（−）、Ｌ１方向はＡの動き情報（Ｌ０＿０）となり、単結合動き情報候補リストのＢと同一であるので、単結合動き情報候補リストのＢを優先し、この組合せは使用しない。
【０１９７】
（１，１）はＬ０方向はＢの動き情報（−）、Ｌ１方向はＣＯＬの動き情報（Ｌ０＿１）となり、単結合動き情報候補リストに該当する結合動き情報候補が存在しないので、有効な双結合動き情報候補とする。
【０１９８】
（１，２）はＬ０方向はＢの動き情報（−）、Ｌ１方向はＣの動き情報（−）となり、両結合動き情報候補の動き情報が存在しないので、この組合せは使用しない。
【０１９９】
（２，０）はＬ０方向はＣＯＬの動き情報（Ｌ０＿１）、Ｌ１方向はＡの動き情報（Ｌ０＿０）となり、単結合動き情報候補リストに該当する結合動き情報候補が存在しないので、有効な双結合動き情報候補とする。
【０２００】
（２，１）はＬ０方向はＣＯＬの動き情報（Ｌ０＿１）、Ｌ１方向はＣＯＬの動き情報（Ｌ０＿１）となり、単結合動き情報候補リストのＣＯＬと同一であるので、単結合動き情報候補リストのＣを優先し、この組合せは使用しない。
【０２０１】
（２，２）はＬ０方向はＣの動き情報（Ｌ０＿２）、Ｌ１方向はＣの動き情報（−）となり、単結合動き情報候補リストのＣと同一であるので、単結合動き情報候補リストのＥを優先し、この組合せは使用しない。
【０２０２】
こうして判定された双結合動き情報候補の組合せは図３１（ｃ）に示される。図３１（ａ）〜（ｃ）の例では、単結合動き情報候補リストに存在しない有効な組合せとなる双結合動き情報候補は（０，２）、（１，１）及び（２，０）となり（図３１（ｃ）中に“○”で表される）、これらの組合せを表すＬ０及びＬ１方向のマージ候補番号を、単結合動き情報候補リストのマージ候補番号とともに結合動き情報選択部１４１に供給する。
【０２０３】
以上のようにして、Ｌ０方向とＬ１方向とで異なる隣接ブロックの動き情報が参照可能となる。図３１（ａ）〜（ｃ）の例でも、図３０（ａ）〜（ｄ）で説明したのと同様に、Ｌ０方向の有効な双結合動き情報候補を決定し、その後に決定されたＬ１方向の有効な双結合動き情報候補と組み合わせて、有効な組合せとなるＬ１方向の双結合動き情報候補に対してマージ候補番号を割り当てるようにすると、図３１（ｄ）のようになる。Ｌ０方向の双結合動き情報候補としてＡ、Ｂ、ＣＯＬの何れを選択した場合でも、単結合動き情報候補リストに存在しない組合せの動き情報を備えるＬ１方向の有効な双結合動き情報候補は１つしか存在しない。この時のＬ１方向の有効な双結合動き情報候補の候補数はＮｕｍＭｅｒｇｅＣａｎｄ（Ｌ１）＝１となり、一意にＬ１方向の有効な双結合動き情報候補として選出されるので、マージ候補番号は必要としない。この場合はＬ０方向の双結合動き情報候補を表す２ビットのみで済むことになり、符号化効率が改善される。
【０２０４】
また、図３１の例では、Ｌ０方向或いはＬ１方向の片方向に動き情報が無い結合動き情報候補の場合も、双結合動き情報候補の１つとして、候補の動き情報の同一判定を行い、重複する結合動き情報候補を削除して、動き情報の無い結合動き情報候補を双結合動き情報候補リストに残すようにした。双結合動き情報候補としては、Ｌ０方向及びＬ１方向の２つにそれぞれ動き情報を備える方が、動き補償予測の予測精度を相対的に高めることが出来るので、Ｌ０方向或いはＬ１方向に動き情報を備える結合動き情報の候補を双結合動き情報候補リストの上位に設定する方が望ましい。以上のことから、動き情報が無い結合動き情報候補が存在する場合は、その結合動き情報候補を双結合動き情報候補リストに登録せず、双結合動き情報候補リストの最後に“動き情報を使用しない”ことを意味する状態を指定するマージ候補番号を設定してもよい。図３２（ａ）、（ｂ）は図３１（ａ）、（ｂ）に対して適用した例を示す。この処理を適用することで、Ｌ０及びＬ１の両方向の動き情報を使用することを優先して、動き補償予測の精度を高め、符号化効率を改善させることが出来る。
【０２０５】
以上のように、実施の形態１の動画像符号化装置１００では、単結合動き情報候補の動き情報には存在しない新たな組合せの双結合動き情報候補の動き情報を提供する。生成される双結合動き情報候補の動き情報が単結合動き情報候補の動き情報と重複しないように、単結合動き情報候補の動き情報と同一と判定された双結合動き情報候補を削除することで、双結合動き情報候補の個数を削減する。これにより、双結合動き情報候補を指定するマージ候補番号の符号量を抑制することで、符号化効率を向上させる。
【０２０６】
しかしながら、動き情報の同一判定により符号化処理の負荷が高くなる。符号化処理の負荷を低減する為に、図１８で示される単結合の候補番号管理テーブルの結合動き情報候補のＬ０方向及びＬ１方向の動き情報を双結合動き情報候補として、それらを単に組み合わせることで得られる２０通りの中から双結合動き情報候補の組合せを生成してもよい。結合動き情報候補生成部１４０で実施される単結合及び双結合の結合動き情報候補の同一判定を実施しないので、符号化処理の負荷が低減される。この場合、符号化において、図１８で示される結合動き情報候補の動き情報が無効であったり、双結合動き情報候補の組合せとして、Ｌ０方向、Ｌ１方向ともに動き情報が存在しないものは除外され、組合せとして有効なもののみ選択される。但し、Ｌ０方向及びＬ１方向ともに候補数が５つあるので、双結合動き情報候補の組合せを指定するマージインデックスは、最長で４ビットとなり、２つのマージインデックスを合わせると８ビットの符号量が必要となり、符号化効率は低下することになる。
【０２０７】
（動画像復号装置２００の構成）
次に、実施の形態１の動画像復号装置を説明する。図３３に実施の形態１の動画像復号装置２００を示す。動画像復号装置２００は、動画像符号化装置１００により符号化された符号列を復号して再生画像を生成する装置である。
【０２０８】
動画像復号装置２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、フレームメモリ、ハードディスクなどを備える情報処理装置などのハードウェアにより実現される。動画像復号装置２００は、上記の構成要素が動作することにより、以下に説明する機能的な構成要素を実現する。尚、復号対象の予測ブロックの位置情報、予測ブロックサイズに関しては動画像復号装置２００内で共有していることとし、図示しない。また、候補番号管理テーブル、及び結合動き情報候補リストに含まれる結合動き情報候補の最大数は動画像復号装置２００内で共有していることとし、図示しない。
【０２０９】
実施の形態１の動画像復号装置２００は、符号列解析部２０１、予測誤差復号部２０２、加算部２０３、動き情報再生部２０４、動き補償部２０５、フレームメモリ２０６及び動き情報メモリ２０７を備える。
【０２１０】
（動画像復号装置２００の機能）
以下、各部の機能について説明する。符号列解析部２０１は、端子３０より供給された符号列を復号して予測誤差符号化データ、マージフラグ、マージタイプ、マージ候補番号、動き補償予測の予測方向、参照画像インデックス、差分ベクトル、及び予測ベクトルインデックスをシンタックスに従って復号する。そして、当該予測誤差符号化データを予測誤差復号部２０２に、当該マージフラグ、当該マージタイプ、当該マージ候補番号、当該動き補償予測の予測方向、当該参照画像インデックス、当該差分ベクトル、及び当該予測ベクトルインデックスを動き情報再生部２０４に供給する。尚、マージ候補番号はマージインデックスより変換されて得られる。
【０２１１】
予測誤差復号部２０２は、符号列解析部２０１より供給される予測誤差符号化データに対して、逆量子化や逆直交変換などの処理を行って予測誤差信号を生成し、当該予測誤差信号を加算部２０３に供給する。
【０２１２】
加算部２０３は、予測誤差復号部２０２より供給される予測誤差信号と、動き補償部２０５より供給される予測信号とを加算して復号画像信号を生成し、当該復号画像信号をフレームメモリ２０６及び端子３１に供給する。
【０２１３】
動き情報再生部２０４は、符号列解析部２０１より供給されるマージフラグ、マージタイプ、マージ候補番号、動き補償予測の予測方向、参照画像インデックス、差分ベクトル、及び予測ベクトルインデックスと、動き情報メモリ２０７より供給される候補ブロック群から、動き情報を再生し、当該動き情報を動き補償部２０５に供給する。動き情報再生部２０４の詳細な構成については後述する。
【０２１４】
動き補償部２０５は、動き情報再生部２０４より供給される動き情報に基づいて、フレームメモリ２０６内の参照画像インデックスが示す参照画像を、動きベクトルに基づき動き補償して予測信号を生成する。予測方向が双方向であれば、Ｌ０方向とＬ１方向の予測信号を平均したものを予測信号として生成し、当該予測信号を加算部２０３に供給する。
【０２１５】
フレームメモリ２０６及び動き情報メモリ２０７は、動画像符号化装置１００のフレームメモリ１１０及び動き情報メモリ１１１と同一の機能を有する。
【０２１６】
（動き情報再生部２０４の詳細な構成）
続いて、動き情報再生部２０４の詳細な構成について図３４を用いて説明する。図３４は動き情報再生部２０４の構成を示す。動き情報再生部２０４は、符号化モード判定部２１０、動きベクトル再生部２１１及び結合動き情報再生部２１２を含む。端子３２は符号列解析部２０１に、端子３３は動き情報メモリ２０７に、端子３４は動き補償部２０５にそれぞれ接続されている。
【０２１７】
以下、各部の機能について説明する。符号化モード判定部２１０は、符号列解析部２０１より供給されるマージフラグが「０」であれば、符号列解析部２０１より供給される動き補償予測の予測方向、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスを動きベクトル再生部２１１に供給する。マージフラグが「１」であれば、符号列解析部２０１より供給されるマージ候補番号を結合動き情報再生部２１２に供給する。
【０２１８】
動きベクトル再生部２１１は、符号化モード判定部２１０より供給される動き補償予測の予測方向、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスと、端子３３より供給される候補ブロック群から、動き情報を再生して端子３４に供給する。動きベクトル再生部２１１の詳細な構成については後述する。
【０２１９】
結合動き情報再生部２１２は、符号化モード判定部２１０より供給されるマージ候補番号と、端子３３より供給される候補ブロック群から、動き情報を再生して端子３４に供給する。結合動き情報再生部２１２の詳細な構成については後述する。
【０２２０】
（動きベクトル再生部２１１の詳細な構成）
続いて、動きベクトル再生部２１１の詳細な構成について図３５を用いて説明する。図３５は動きベクトル再生部２１１の構成を示す。動きベクトル再生部２１１は、予測ベクトル候補リスト生成部２２０、予測ベクトル決定部２２１及び加算部２２２を含む。端子３５は符号化モード判定部２１０に接続されている。
【０２２１】
以下、各部の機能について説明する。予測ベクトル候補リスト生成部２２０は、動画像符号化装置１００の予測ベクトル候補リスト生成部１３０と同一の機能を有する。予測ベクトル決定部２２１は、予測ベクトル候補リスト生成部２２０より供給される予測ベクトル候補リスト及び端子３５より供給される予測ベクトルインデックスから、予測ベクトルを決定して加算部２２２に供給する。
【０２２２】
加算部２２２は、端子３５より供給される差分ベクトルと、予測ベクトル決定部２２１より供給される予測ベクトルとを加算して動きベクトルを算出し、当該動きベクトルを端子３４に供給する。
【０２２３】
（結合動き情報再生部２１２の詳細な構成）
続いて、結合動き情報再生部２１２の詳細な構成について図３６を用いて説明する。図３６は結合動き情報再生部２１２の構成を示す。結合動き情報再生部２１２は、結合動き情報候補生成部２３０及び結合動き情報選択部２３１を含む。
【０２２４】
以下、各部の機能について説明する。結合動き情報候補生成部２３０は図１５に示す結合動き情報候補生成部１４０と同一の機能を有する。結合動き情報選択部２３１は、結合動き情報候補生成部２３０より供給される結合動き情報候補リスト及び端子３５より供給されるマージ候補番号に基づいて、結合動き情報候補リストの中から動き情報を選択し、当該動き情報を端子３４に供給する。
【０２２５】
（動画像復号装置２００の動作）
続いて、図３７のフローチャートを用いて、実施の形態１の動画像復号装置２００における復号の動作を説明する。符号列解析部２０１は、端子３０より供給される符号列を復号して予測誤差符号化データ、マージフラグ、マージタイプ、マージ候補番号、動き補償予測の予測方向、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスをシンタックスに従って復号する（Ｓ２１０）。
【０２２６】
動き情報再生部２０４は、符号列解析部２０１より供給されるマージフラグ、マージタイプ、マージ候補番号、動き補償予測の予測方向、参照画像インデックス、差分ベクトル及び予測ベクトルインデックスと、動き情報メモリ２０７より供給される候補ブロック群から、動き情報を再生する（Ｓ２１１）。
【０２２７】
動き補償部２０５は、動き情報再生部２０４より供給される動き情報に基づいて、フレームメモリ２０６内の参照画像インデックスが示す参照画像を、動きベクトルに基づき動き補償して予測信号を生成する。予測方向が双方向であれば、Ｌ０方向とＬ１方向の予測信号を平均したものを予測信号として生成する（Ｓ２１２）。
【０２２８】
予測誤差復号部２０２は、符号列解析部２０１より供給される予測誤差符号化データに対して、逆量子化や逆直交変換などの処理を行って予測誤差信号を生成する（Ｓ２１３）。加算部２０３は、予測誤差復号部２０２より供給される予測誤差信号と、動き補償部２０５より供給される予測信号とを加算して復号画像信号を生成する（Ｓ２１４）。
【０２２９】
フレームメモリ２０６は、加算部２０３より供給される復号画像信号を記憶する（Ｓ２１５）。動き情報メモリ２０７は、動き情報再生部２０４より供給される動きベクトルを最小の予測ブロックサイズ単位で１画像分記憶する（Ｓ２１６）。
【０２３０】
引き続いて、図３８のフローチャートを用いて、動き情報再生部２０４の動作を説明する。符号化モード判定部２１０は、符号列解析部２０１より供給されるマージフラグが「０」であるか「１」であるか判定する（Ｓ２２０）。マージフラグが「１」であれば、結合動き情報再生部２１２は、符号化モード判定部２１０より供給されるマージタイプ、マージ候補番号及び端子３３より供給される候補ブロック群から、動き情報を再生する（Ｓ２２１）。
【０２３１】
マージフラグが「０」であれば、動きベクトル再生部２１１は、符号化モード判定部２１０より供給される動き補償予測の予測方向、参照画像インデックス、差分ベクトル及び予測ベクトルインデックス、並びに端子３３より供給される候補ブロック群から、動き情報を再生する（Ｓ２２２）。
【０２３２】
引き続いて、図３９のフローチャートを用いて、動きベクトル再生部２１１の動作を説明する。予測ベクトル候補リスト生成部２２０は、動画像符号化装置１００の予測ベクトル候補リスト生成部１３０と同一の動作によって予測ベクトル候補リストを生成する（Ｓ３００）。
【０２３３】
予測ベクトル決定部２２１は、予測ベクトル候補リスト生成部２２０より供給される予測ベクトル候補リストの中から、端子３５より供給される予測ベクトルインデックスで示される予測ベクトル候補を選択して、予測ベクトルを決定する（Ｓ３０１）。加算部２２２は、端子３５より供給される差分ベクトルと、予測ベクトル決定部２２１より供給される予測ベクトルとを加算して動きベクトルを算出する（Ｓ３０２）。
【０２３４】
引き続いて、図４０のフローチャートを用いて、結合動き情報再生部２１２の動作を説明する。結合動き情報候補生成部２３０は、動画像符号化装置１００の結合動き情報候補生成部１４０と同一の動作によって結合動き情報候補リストを生成する（Ｓ３１０）。結合動き情報選択部２３１は、結合動き情報候補生成部２３０より供給される結合動き情報候補リストの中から、端子３５より供給されるマージ候補番号で示される結合動き情報候補を選択して、結合動き情報を決定する（Ｓ３１１）。
【０２３５】
（実施の形態１の変形例）
尚、実施の形態１は以下のように変形できる。
【０２３６】
（変形例１：同一方向の利用）
上述の実施の形態１では、参照する隣接ブロック候補でＬ０方向或いはＬ１方向に動き情報を備えているブロック候補を、双結合動き情報候補のＬ０方向或いはＬ１方向の動き情報となる例を挙げた。双方向予測の場合、動き情報の選択として、図６（ｄ）の一例で示されるように、同一方向から２つの動き情報を参照して動き補償予測の精度を高めることも可能であり、本実施の形態においても適用することが可能である。
【０２３７】
これは、図４１（ａ）のように単結合動き情報候補リストに含まれる結合動き情報候補に同一の予測方向の動き情報のみ存在する場合に、双結合動き情報候補の生成確率を高め、結合動き情報候補の選択率を高めることで動き情報の符号化効率を向上させることが出来る。この場合、双結合動き情報候補決定部１６１では、本来Ｌ０方向とＬ１方向のそれぞれのマージ候補番号を供給するところを、双結合動き情報候補の予測が片方向（Ｌ０方向或いはＬ１方向）のみの場合に、Ｌ０方向のみの動き情報を備える結合動き情報候補をＬ１方向の有効な双結合動き情報候補として選択しても符号化及び復号で処理が破綻しないように、符号化側と復号側で合わせておく必要がある。
【０２３８】
図４１（ａ）の単結合動き情報候補リストから生成される双結合動き情報候補の組合せを図４１（ｂ）に示す。Ｌ０方向及びＬ１方向ともにＢを選択する（０，０）の場合、或いはＬ０方向及びＬ１方向ともにＣＯＬを選択する（１，１）の場合は、単結合動き情報候補リストのＢ或いはＣＯＬと同一であるので、単結合動き情報候補リストのＢ或いはＣＯＬを優先し、この組合せは使用しない。単結合動き情報候補リストに存在しない有効な組合せとなる双結合動き情報候補は（０，１）或いは（１，０）となる。これらの組合せを表すＬ０及びＬ１方向のマージ候補番号を、単結合動き情報候補リストのマージ候補番号とともに結合動き情報選択部１４１に供給する。以上のようにして、Ｌ０方向とＬ１方向とで異なる隣接ブロックの動き情報の参照可能となる。
【０２３９】
（変形例２：マージ候補番号の上位優先）
上述の実施の形態１では、双結合動き情報候補を、Ｌ０方向とＬ１方向において有効である結合動き情報候補ブロックを組み合わせて、Ｌ０方向とＬ１方向の動き情報を利用する新たな動き情報を備える双結合動き情報候補を生成した。Ｌ０方向とＬ１方向とで有効な結合動き情報候補ブロックの動き情報を組み合わせて、単結合動き情報候補の動き情報には存在しない新たな動き情報の組合せとして双結合動き情報候補を生成し、従来よりも動き補償予測の精度を上げ、動き情報の符号化効率を向上させることが出来るが、処理量が増加する。
【０２４０】
そこで、本変形例では、双結合動き情報候補の生成される数を制限することで、処理量の増加を抑制する。具体的には、双結合動き情報候補リスト削減部１５３にて、重複する動き情報を備える結合動き情報候補を削除して更新された双結合動き情報候補リストに対して、マージ候補番号の小さい方の双結合動き情報候補から優先して選択する。
【０２４１】
図４２（ａ）、（ｂ）は、図２８（ｂ）〜、（ｅ）で示される双結合動き情報候補リストの一例から、重複する動き情報を備える結合動き情報候補を削除して更新された双結合動き情報候補リストであり、それぞれ図４２（ａ）がＬ０方向、図４２（ｂ）がＬ１方向の双結合動き情報候補リストを示す。ここでは、Ｌ０方向、Ｌ１方向ともに小さいマージ候補番号から２つ選択することとする。
【０２４２】
その為、図４２（ａ）、（ｂ）のハッチングが入った行で示される結合動き情報候補（Ｌ０方向ではＣ、Ｌ１方向ではＥ）が双結合動き情報候補リストから削除される。図４２（ａ）、（ｂ）に基づいて、双結合動き情報候補組合せリスト生成部１５４は、双結合動き情報候補リストのＬ０方向及びＬ１方向の結合動き情報候補を組み合わせて、図４２（ｃ）に示される双結合動き情報候補組合せリストを生成する。
【０２４３】
図４２（ａ）、（ｂ）の例では、Ｌ０方向、Ｌ１方向ともに２つの結合動き情報候補に制限したので、４つの双結合動き情報候補が生成される。図４２（ｃ）の組み合わせから、（０，１）のみが単結合動き情報候補リストに存在しない双結合動き情報候補となり、この組合せを表すＬ０及びＬ１方向のマージ候補番号を、単結合動き情報候補リストのマージ候補番号とともに結合動き情報選択部１４１に供給する。
【０２４４】
以上のようにして、Ｌ０方向及びＬ１方向の双結合動き情報候補リストのマージ候補番号の小さい方から優先的に選択することで、双結合動き情報候補組合せリスト生成部１５４での組合せ判定処理を削減することが出来る。尚、この変形例ではＬ０方向、Ｌ１方向ともに２つの結合動き情報候補を優先して選択するようにしたが、Ｌ０方向、Ｌ１方向で異なる値としてもよい。更に、符号化と復号側で処理が矛盾しないように、符号化と復号で優先して選択する結合動き情報候補の個数を合わせるように、暗黙的に定義してもよい。
【０２４５】
また、符号化ストリーム単位または符号化ストリームの一部であるスライス毎に、符号化と復号で優先して選択する結合動き情報候補の個数を定義する機能を有するシンタックスを定義しても良い。符号列生成部１０４は、結合動き情報候補の個数を図４３（ａ）及び（ｂ）のように、符号化ストリーム中に符号化して伝送する。図４３（ａ）及び（ｂ）では、符号化ストリーム単位での制御のためのＳＰＳ（Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ）、及びスライス単位での制御のためのＳｌｉｃｅ＿ｈｅａｄｅｒで優先して選択する結合動き情報候補の個数を符号化するシンタックスの例を示している。“ｌｉｍｉｔｅｄ＿ｍｅｒｇｅ＿ｉｎｄｅｘ＿ｌＸ＿ｆｌａｇ”（Ｘは０或いは１）でＬＸ方向の双結合動き情報候補リストで選択する結合動き情報候補の数を制限するか否かを指定し、“ｍａｘ＿ｎｏ＿ｏｆ＿ｍｅｒｇｅ＿ｉｎｄｅｘ＿ｌＸ＿ｍｉｎｕｓ１”（Ｘは０或いは１）で選択する個数を指定する。
【０２４６】
本変形例による動画像符号化装置と動画像復号装置でストリーム単位またはスライス単位で双結合動き情報候補リストの結合動き情報候補の個数を制限することで、ストリーム単位やスライス単位で動きの特性が変化するような場合に、マージインデックスの符号化効率を一定にさせることが出来る。
【０２４７】
（変形例３：予め定められた組み合わせ）
上述の実施の形態１では、双結合動き情報候補を、Ｌ０方向とＬ１方向において有効である結合動き情報候補ブロックを組み合わせて、Ｌ０方向とＬ１方向の動き情報を利用する新たな動き情報を備える双結合動き情報候補を生成した。Ｌ０方向とＬ１方向に検索することで、単結合動き情報候補の動き情報には存在しない新たな動き情報の組合せとして双結合動き情報候補を生成し、従来よりも動き補償予測の精度を上げ、動き情報の符号化効率を向上させることが出来るが、処理量が増加する。
【０２４８】
そこで、図４４に示されるように、双結合動き情報候補を予め定められたより信頼度の高い結合動き情報候補ブロックの組み合わせとして定義しておくことで、検索処理を省き、双結合動き情報候補の選択率を向上させて、符号化効率を向上させることが出来る。
【０２４９】
図４４は、マージ参照候補として、最も信頼度の高い候補ブロックＡと２番目に信頼度の高い候補ブロックＢのＬ０及びＬ１方向の動き情報を組み合わせて、双結合動き情報候補として定義した例である。ここでは、（０，１）と（１，０）の組合せが双結合動き情報候補として定義される。尚、信頼度が相対的に高い候補ブロックの組み合わせであれば、これ以外の組み合わせでもよい。更に、符号化と復号側で処理が矛盾しないように、符号化と復号で優先して選択する結合動き情報候補を合わせるように、暗黙的に定義してもよい。
【０２５０】
また、符号化ストリーム単位または符号化ストリームの一部であるスライス毎に、候補番号管理テーブルを変更する機能を有するシンタックスを定義しても良い。符号列生成部１０４は、候補番号管理テーブルを図４４（ａ）及び（ｂ）のように、符号化ストリーム中に符号化して伝送する。図４４（ａ）及び（ｂ）では、符号化ストリーム単位での制御のためのＳＰＳ（Ｓｅｑｕｅｎｃｅ Ｐａｒａｍｅｔｅｒ Ｓｅｔ）、及びスライス単位での制御のためのＳｌｉｃｅ＿ｈｅａｄｅｒで候補番号管理テーブルを符号化するシンタックスの例を示している。”ｐｒｉｏｒ＿ｍｅｒｇｅ＿ｉｎｄｅｘ＿ｆｌａｇ”で双結合動き情報候補リストで予め決められた結合動き情報候補を優先するか否かを指定する。
【０２５１】
本変形例による動画像符号化装置と動画像復号装置でストリーム単位またはスライス単位で双結合動き情報候補リストの結合動き情報候補を優先することで、ストリーム単位やスライス単位で動きの特性が変化するような場合に、マージインデックスの符号化効率を一定にさせることが出来る。
【０２５２】
（実施の形態１の効果）
（双方向予測の双結合動き情報の効果例）
実施の形態１による効果について図４６（ａ）、（ｂ）を用いて説明する。以下の説明では、ブロックＮのＬ０方向の動きベクトルをｍｖＬ０Ｎ、Ｌ１方向の動きベクトルをｍｖＬ１Ｎ、Ｌ０方向の参照画像インデックスをｒｅｆＩｄｘＬ０Ｎ、Ｌ１方向の参照画像インデックスをｒｅｆＩｄｘＬ１Ｎ、Ｌ０方向の差分ベクトルをｄｍｖＬ０Ｎ、Ｌ１方向の差分ベクトルをｄｍｖＬ１Ｎ、Ｌ０方向の参照画像インデックスの差分をｄｒｅｆＩｄｘＬ０Ｎ、及びＬ１方向の参照画像インデックスをｄｒｅｆＩｄｘＬ１Ｎと表す。尚、図４５中の各結合動き情報候補の動き情報は、上述した記号に合わせて、（ｍｖＬＸＮｘ，ｍｖＬＸＮｙ）／ｒｅｆＩｄｘＬＸＮで表される。“／”の前の括弧は、ブロックＮのＬＸ方向（Ｘは０或いは１）の動きベクトルを表し、括弧内のｍｖＬＸＮｘは水平方向の動きベクトル成分、ｍｖＬＸＮｙは垂直方向の動きベクトル成分を表す。“／”の後のｒｅｆＩｄｘＬＸＮはブロックＮのＬＸ方向（Ｘは０或いは１）の参照画像インデックスを表すものとする。
【０２５３】
処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報は、予測方向が双方向（ＢＩ）で、ｍｖＬ０Ｚ＝（２，８）、ｍｖＬ１Ｚ＝（４，２）、ｒｅｆＩｄｘＬ０Ｚ＝０、ｒｅｆＩｄｘＬ１Ｎ＝０であるとする。
【０２５４】
この時、単結合動き情報候補が図４６（ａ）で示される単結合動き情報候補リストに記載されたＡ、Ｂ、ＣＯＬ、Ｃ、Ｅであるとする。これら単結合動き情報候補の中には処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報と同一の動き情報は存在しない。従って、これら単結合動き情報候補の中からレート歪み評価値が最小となる単結合動き情報候補を選択することになる。そして、その候補のレート歪み評価値と、差分ベクトル算出部１２０で算出されたレート歪み評価値とを比較して、前者が後者より小さくなる場合のみ符号化モードとしてマージモードが利用されることになる。
【０２５５】
符号化モードとしてマージモードが選択された場合、それは動き情報の符号化効率と予測誤差のバランスが最適な為であって、予測誤差は最適とはならない。一方、符号化モードとして非マージモードが選択された場合には、動き情報の符号化効率は最適とはならない。
【０２５６】
ここで、実施の形態１によって生成された双結合動き情報候補は、図４６（ｂ）で示される組合せとなる。図４６（ａ）の単結合動き情報候補リストの中で有効な結合動き情報候補はＬ０方向、Ｌ１方向ともに３つ存在するが、Ｌ１方向では結合動き情報候補ＡとＣとが同一の動き情報である。従って、図４６（ｂ）で示されるように、Ｌ０方向で３つ、Ｌ１方向で２つの結合動き情報候補が選出されて、図４６（ａ）の単結合動き情報候補リストから新たに生成される双結合動き情報候補の組合せは、計６つとなる。ここで、動き情報の組合せの中で、（０，０）、（１，１）及び（２，０）は単結合動き情報候補のＡ、Ｂ及びＣと同じであるので使用せず、残りの（０，１）、（１，０）及び（２，１）の３つを双結合動き情報候補とする。この時、双結合動き情報候補の（０，１）の組合せは処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報と同じ動き情報を持つことが分かる。つまり、双結合動き情報候補の（０，１）の組合せを選択することで、予測誤差を最小化し、動き情報の符号化効率を最適化することが出来る。
【０２５７】
（単方向予測の双結合動き情報の効果例）
また、実施の形態１による単方向予測の効果について図４７（ａ）、（ｂ）を用いて説明する。処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報は、予測方向が単方向（ＵＮＩ）で、ｍｖＬ０Ｚ＝（０，８）、ｒｅｆＩｄｘＬ０Ｚ＝２であるとする。
【０２５８】
単結合動き情報候補のＢ、Ｃ、ＣＯＬが無効（×）であるとし、有効な単結合動き情報候補のＡ、Ｅは図４７（ａ）の単結合動き情報候補リストで示される動き情報を持つこととする。この場合も単結合動き情報候補の中には、処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報は存在しない。
【０２５９】
ここでも、実施の形態１によって生成された双方向結合動き情報候補は、図４７（ｂ）で示される組合せとなる。図４７（ａ）の単方向結合動き情報候補リストから新たに生成される双結合動き情報候補の組合せは、単結合動き情報候補リストの中で有効な結合動き情報候補はＬ０方向では２つ、Ｌ１方向では実際は１つであるが２つとする。すなわち、ＥはＬ０方向の動き情報のみでＬ１方向の動き情報を持たないが、動き情報が存在しないことも１つの動き情報として捉え、ＥのＬ１方向にも動き情報があることとする。従って、Ｌ１方向でも２つの結合動き情報候補が選出されて、図４７（ａ）の単結合動き情報候補リストから新たに生成される双結合動き情報候補の組合せは、計４つとなる。
【０２６０】
ここで、動き情報の組合せの中で、（０，０）及び（１，１）は単結合動き情報候補のＡ及びＥと同じであるので使用せず、残りの（０，１）及び（１，０）の２つを双結合動き情報候補とする。この時、双結合動き情報候補の（０，１）の組合せは、処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報と同じ動き情報を持つことがわかる。つまり、双結合動き情報候補の（０，１）の組合せを選択することで、予測誤差を最小化し、動き情報の符号化効率を最適化することが出来る。
【０２６１】
（単方向予測の組み合わせによる双結合動き情報の効果例）
また、実施の形態１による予測方向が単方向の動き情報の組み合わせによる効果について図４８（ａ）、（ｂ）を用いて説明する。処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報は、予測方向が単方向（ＢＩ）で、ｍｖＬ０Ｚ＝（２，２）、ｒｅｆＩｄｘＬ０Ｚ＝０、ｍｖＬ１Ｚ＝（―２，２）、ｒｅｆＩｄｘＬ１Ｚ＝０であるとする。
【０２６２】
単結合動き情報候補のＡ、ＣＯＬ、Ｃが無効（×）であるとし、有効な単結合動き情報候補のＢ、Ｅは図４７（ａ）の単結合動き情報候補リストで示される動き情報を持つこととする。この場合も単結合動き情報候補の中には処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報は存在しない。
【０２６３】
ここでも、実施の形態１によって生成された双結合動き情報候補は、図４８（ｂ）で示される組合せとなる。図４８（ａ）の単結合動き情報候補リストの中で有効な結合動き情報候補は、一方の予測方向の動き情報が存在しない場合も有効として、Ｌ０方向で２つ、Ｌ１方向で２つの結合動き情報候補を選出する。従って、図４８（ａ）の単結合動き情報候補リストから新たに生成される双結合動き情報候補の組合せは、計４つとなる。
【０２６４】
ここで、動き情報の組合せの中で、（０，０）及び（１，１）は単結合動き情報候補のＡ及びＥと同じであるので使用しない。また、（１，０）はＬ０方向、Ｌ１方向ともに動き情報が存在しない場合であるので、これも使用しない。残りの（０，１）の１つを双結合動き情報候補とする。この時、双結合動き情報候補の（０，１）の組合せは処理対象ブロック（Ｚ）にとって予測誤差が最小となる動き情報と同じ動き情報を持つことが分かる。つまり、双結合動き情報候補の（０，１）の組合せを選択することで、予測誤差を最小化し、動き情報の符号化効率を最適化することが出来る。
【０２６５】
（双結合動き情報）
以上のように、単結合動き情報候補のＬ０方向とＬ１方向の動き情報を利用して、新たな組合せの双結合動き情報候補を生成することで、処理対象ブロックの動きが、符号化済みの別の画像の同一位置ブロックや当該処理対象ブロックの隣接ブロックの動きとずれがある場合でも、動き情報を符号化することなくインデックスのみで符号化することが出来る。従って、符号化効率と予測効率を最適化出来る動画像符号化装置及び動画像復号装置を実現出来る。
【０２６６】
（単結合動き情報）
また、単結合動き情報候補のＬ０方向とＬ１方向の動き情報を利用して新たな単方向の結合動き情報候補を生成する場合についても、単結合動き情報候補のＬ０方向とＬ１方向の動き情報を利用して双結合動き情報候補を生成する場合と、同様の効果を奏する。
【０２６７】
（同一方向の利用による双結合動き情報）
また、単結合動き情報候補の同一の予測方向の動き情報を利用して双結合動き情報候補を生成する場合についても、単結合動き情報候補のＬ０方向とＬ１方向の動き情報を利用して双結合動き情報候補を生成する場合と、同様の効果を奏する。
【０２６８】
（動画像復号処理の簡易化）
以上のように、単結合動き情報候補の各方向の動き情報を利用して双結合動き情報候補を生成することで、処理対象ブロックの動きが、符号化済みの別の画像の同一位置ブロックや当該処理対象ブロックの隣接ブロックの動きとずれがある場合でも、予測方向、参照インデックス及び差分ベクトルの復号、予測ベクトルと差分ベクトルとの加算処理などが不要となり、動画像復号装置の処理を削減することが出来る。
【０２６９】
（選択率順のマージ候補番号割り当て）
以上のように、選択率が相対的に高い結合動き情報候補ほど小さいマージ候補番号を割り当てておくことで、各方向においてより確からしい動き情報の選択率を高め、各方向において精度の高い動き情報を利用して高精度な双結合動き情報候補を生成することが出来る。また、検索の処理を単純化することが出来、候補数を制限して処理数を削減しても符号化効率の低下を抑制出来る。
【０２７０】
（メモリリードタイム）
以上のように、単結合動き情報候補の各方向の動き情報を利用して、新たな組合せの双結合動き情報候補を生成することで、単結合動き情報候補の数を増加させることなく結合動き情報候補の数を増加させることが出来る。従って、単結合動き情報候補数の増加によってメモリリード時間が長くなるような一般的なＬＳＩを使用している動画像符号化装置及び動画像復号装置において、単結合動き情報候補数の増加によるメモリリード時間の増大を抑制出来る。
【０２７１】
［実施の形態２］
（シンタックス）
本発明の実施の形態２における符号化及び復号で定義される予測ブロックのシンタックスの一例について図４９を用いて説明する。予測ブロックがイントラであるかインターであるかは上位の符号化ブロックによって指定されており、図４９は予測ブロックがインターの場合のシンタックスを示す。実施の形態１との違いは、ｍｅｒｇｅ＿ｆｌａｇの機能が異なる。実施の形態１のｍｅｒｇｅ＿ｔｙｐｅは単マージか双マージかを指定するフラグとして符号化され、ビットストリームに記録される。一方、実施の形態２のｍｅｒｇｅ＿ｔｙｐｅは関数ＭｅｒｇｅＴｙｐｅ（）の返り値が代入される変数に過ぎず、ビットストリームに記録されない。実施の形態２のｍｅｒｇｅ＿ｔｙｐｅに返り値を渡す関数ＭｅｒｇｅＴｙｐｅ（）が“１”の場合は実施の形態１のｍｅｒｇｅ＿ｔｙｐｅが“１”と等価であり、単マージを適用する。関数ＭｅｒｇｅＴｙｐｅ（）が“０”の場合は実施の形態１のｍｅｒｇｅ＿ｔｙｐｅが“０”と等価であり、双マージを適用する。関数ＭｅｒｇｅＴｙｐｅ（）以外は実施の形態１と同様であるので、ここでは関数ＭｅｒｇｅＴｙｐｅ（）についてのみ説明する。
【０２７２】
（動画像符号化装置１００の構成）
実施の形態２の動画像符号化装置の構成は、当該動画像符号化装置の動き情報生成部１０９の機能を除いて実施の形態１の動画像符号化装置１００の構成と同一である。以下、実施の形態２における動画像符号化装置の動き情報生成部１０９の機能について実施の形態１との相違を説明する。
【０２７３】
図５０は、実施の形態２における情報候補生成部１４０の構成を示す。図１６の実施の形態１における情報候補生成部１４０の構成に、新たに結合タイプ判定部１５５が追加された構成である。結合タイプ判定部１５５はシンタックスで定義される関数ＭｅｒｇｅＴｙｐｅ（）の機能を果たしており、図５１のフローチャートを用いて説明する。
【０２７４】
結合タイプ判定部１５５には、単結合動き情報候補リスト削減部１５１にて重複する動き情報を備える結合動き情報候補が削除された総数ｓとともに、更新された単結合動き情報候補リストが供給され、取得される（Ｓ４００）。
【０２７５】
結合タイプ判定部１５５は、ｓと閾値ＴＨとの比較を実施する（Ｓ４０１）。ｓがＴＨ未満の場合（Ｓ４０１のＹ）、双結合動き情報候補リスト生成部１５２から双結合動き情報候補組合せリスト生成部１５４までの双結合動き情報候補の組合せ選出を実施し、双結合動き情報候補の組合せリストとともに単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストを端子１８に供給する（Ｓ４０２）。ｓがＴＨ以上の場合（Ｓ４０１のＮ）は、双結合動き情報候補の組合せ選出を実施せず、単結合動き情報候補リスト削減部１５１より供給される単結合動き情報候補リストのみを端子１８に供給する（Ｓ４０３）。
【０２７６】
ここで、閾値ＴＨの設定範囲は１以上で、且つ単結合動き情報候補リスト削減部１５１にて重複する動き情報を備える結合動き情報候補を削除する前の単結合動き情報候補リストの候補数から１を引いた値とする。単結合動き情報候補リストの候補が全て同一の動き情報を備える場合でも、単結合動き情報候補リストの候補は１つ残ることから、ここでは１以上４（＝５−１）の範囲で設定される。ｓが閾値ＴＨ以上となるのは、単結合動き情報候補リスト削減部１５１にて削除された結合動き情報候補が多い場合である。
【０２７７】
この場合、処理対象ブロックに隣接する複数の参照候補ブロックの動き情報の多くが類似していることになるので、それらを組み合わせて新たな双結合動き情報候補を生成しても、単結合動き情報候補と同一或いは類似する候補の発生頻度が高くなり、適切な参照候補が得られない可能性が高くなる。一方、ｓがＴＨ以上の場合は、処理対象ブロックに隣接する複数の参照候補ブロックの動き情報の中で異なるものが多くなるため、それらから得られる新たな双結合動き情報候補の組合せは、単結合動き情報候補と異なる可能性が高くなる。従って、特性の異なる動き情報から適切な参照候補を選択出来る確率が高くなり、マージによる動き情報の符号量削減の効果が期待出来る。尚、閾値ＴＨの設定範囲は上述の範囲に限るものではなく、設計者による実験やシミュレーションを通じて得られた知見にもとづき調整されてもよい。
【０２７８】
以上のようにして、双結合動き情報候補の組合せ選出を実施するか否かを判定することで、双結合動き情報候補による組合せがマージモードの場合の参照候補として有効であるか否かを双結合動き情報候補の生成を実施する前に判定出来る。従って、双結合動き情報候補リスト生成部１５２から双結合動き情報候補組合せリスト生成部１５４までの処理を適宜省略でき、処理負荷を低減することが可能となる。更に、単マージ或いは双マージかを指定するフラグｍｅｒｇｅ＿ｔｙｐｅを符号化する必要がなくなるので、符号化効率を向上させることが出来る。
【０２７９】
実施の形態２の動画像復号装置の構成は、動き情報再生部２０４の機能を除いて実施の形態１の動画像復号装置２００の構成と同一である。以下、実施の形態２における動画像復号装置の動き情報再生部２０４の機能について実施の形態１との相違を説明する。
【０２８０】
実施の形態２における結合動き情報候補生成部２３０の構成が、実施の形態１と異なり、新たに結合タイプ判定部１５５が設置される。結合タイプ判定部１５５は、復号時に演算される関数ＭｅｒｇｅＴｙｐｅ（）の機能を果たしており、実施の形態２における動画像符号化装置の結合動き情報候補生成部１４０の中の構成と同等の機能を有している。符号列解析部２０１により復号されたマージフラグが“１”の場合に、復号時に演算される関数ＭｅｒｇｅＴｙｐｅ（）の返り値によって、単マージ或いは双マージかを選択し、更に符号列解析部２０１により復号されたマージインデックスにて参照する隣接ブロックの候補の動き情報を選出する。
【０２８１】
（実施の形態２の変形例）
尚、実施の形態２は以下のように変形できる。
【０２８２】
（変形例１）
上述の実施の形態２では、双マージを実施するか否かを判定する関数ＭｅｒｇｅＴｙｐｅ（）を実行するか否かを、単結合動き情報候補リストに登録された候補数に基づいて判定するようにした。本変形例では、処理対象ブロックを含む画像と、処理対象ブロックの参照候補となる隣接ブロックが参照する画像との画像間距離が最も小さい参照画像を、当該隣接ブロックがＬ０方向、Ｌ１方向ともに参照しているか否かに基いて判定する。本発明の実施の形態では、動き補償予測の精度向上の為に、動き補償予測において複数の参照画像の中から最適な参照画像を選択する。複数の参照画像の中から選択される参照画像を識別する為に、参照画像に対して参照画像インデックスを割り当てて管理する。参照画像はＬ０方向、Ｌ１方向それぞれにあるので、参照画像インデックスも両方向それぞれに設定される。参照画像インデックスは０以上の整数値であり、動き補償予測で利用した参照画像を復号時に指定出来るように、動きベクトルとともに符号化ストリーム中に符号化される。通常、処理対象ブロックを含む画像と複数の参照画像との相関性は、処理対象ブロックを含む画像と画像間距離が小さい参照画像程高いので、動き補償予測においても画像間距離の小さい参照画像を選択する確率が相対的に高くなる。その為、処理対象ブロックを含む画像と画像間距離が小さい参照画像に対して、小さい値の参照画像インデックスを割り当てるようにする。こうすることで、参照画像インデックスの符号量を抑えることが出来、符号化効率が向上することになる。本変形例では、以上の点を鑑みて、処理対象ブロックを含む画像と処理対象ブロックの参照候補となる隣接ブロックが参照する画像との画像間距離が最も小さい参照画像として、Ｌ０方向及びＬ１方向の参照画像インデックスが“０”となっている参照画像とし、隣接ブロックの中で、Ｌ０方向及びＬ１方向の参照画像インデックスがともに“０”となっている隣接ブロックが存在するか否かに基いて判定することとする。
【０２８３】
図５２で示される一例を用いて説明する。図５２中のＣｕｒＰｉｃが処理対象ブロックを含む画像を示し、図下部の数字はＣｕｒＰｉｃが参照する画像の参照リストＬ０及びＬ１の参照画像インデックスを示している。ＣｕｒＰｉｃの中心にある黒斜線で示される領域を処理対象ブロックとし、処理対象ブロックの参照候補となる隣接ブロックをＢＬ０及びＢＬ１で表す。
【０２８４】
ブロックＢＬ０の動き情報は、予測方向が双方向モードであり、参照リストＬ０の参照インデックス２で示される画像ＲｅｆＬ０Ｐｉｃ（ＢＬ０）と参照リストＬ１の参照インデックス０で示される画像ＲｅｆＬ１Ｐｉｃ（ＢＬ０）を参照画像とし、Ｌ０方向の動きベクトルはｍｖＬ０（ＢＬ０）、Ｌ１方向の動きベクトルはｍｖＬ１（ＢＬ０）で表される。
【０２８５】
同様に、ブロックＢＬ１の動き情報は、予測方向が双方向モードであり、参照リストＬ０の参照インデックス０で示される画像ＲｅｆＬ０Ｐｉｃ（ＢＬ１）と参照リストＬ１の参照インデックス１で示される画像ＲｅｆＬ１Ｐｉｃ（ＢＬ１）を参照画像とし、Ｌ０方向の動きベクトルはｍｖＬ０（ＢＬ１）、Ｌ１方向の動きベクトルはｍｖＬ１（ＢＬ１）で表される。
【０２８６】
処理対象ブロックが参照する単結合動き情報候補はブロックＢＬ０とＢＬ１と、ブロックＢＬ０とＢＬ１の動き情報の組合せで生成される双結合動き情報候補であり、双結合動き情報候補の組合せを（Ｌ０，Ｌ１）で表すと、（ＢＬ０，ＢＬ１）及び（ＢＬ１，ＢＬ０）の２つが生成される。単結合動き情報候補のＢＬ０及びＢＬ１には、Ｌ０方向、Ｌ１方向ともに参照画像インデックスが“０”となる動き情報はないが、双結合動き情報候補の組合せの（ＢＬ１，ＢＬ０）はＬ０方向、Ｌ１方向ともに参照画像インデックスが“０”となる動き情報を備えている。
【０２８７】
処理対象ブロックを含む画像からの画像間距離が小さい参照画像ほど、処理対象のブロックを含む画像との時間的な相関性が高いので、画像間距離が小さい参照画像を参照して検出される動きベクトルの精度が高くなり、残差信号を小さくすることが出来、符号化効率が向上することが出来る。このことから（ＢＬ１，ＢＬ０）は、単結合動き情報候補以上に有用な動き情報の候補となり得る。
【０２８８】
単結合動き情報候補の動き情報にＬ０方向及びＬ１方向の参照画像インデックスがともに“０”となっている隣接ブロックが存在しない場合、双マージを適用し、Ｌ０方向及びＬ１方向の参照画像インデックスが“０”となる新たな組合せの双結合動き情報候補を生成することで、より高い符号化効率の改善が期待出来る。
【０２８９】
一方、単結合動き情報候補の動き情報にＬ０方向及びＬ１方向の参照画像インデックスがともに“０”となっている隣接ブロックが存在する場合、双マージを適用し、新たな組合せの双結合動き情報候補を生成しても、符号化効率の改善は殆ど期待出来ない。従って、単結合動き情報候補の動き情報の少なくとも１つに、Ｌ０方向及びＬ１方向の参照画像インデックスがともに“０”となっている候補が存在する場合、結合タイプ判定部１５５は、双結合動き情報候補生成処理を実行しないと判定する。
【０２９０】
尚、単結合動き情報候補の動き情報の所定数（例えば、２つ）に、Ｌ０方向及びＬ１方向の参照画像インデックスがともに“０”となっている候補が存在する場合、双結合動き情報候補生成処理を実行しないと判定し、単結合動き情報候補の動き情報の所定数に、Ｌ０方向及びＬ１方向の参照画像インデックスがともに“０”となっている候補が存在しない場合、双結合動き情報候補生成処理を実行すると判定してもよい。
【０２９１】
更に、この判定処理の際、単結合動き情報候補から時間ブロック候補の動き情報を外してもよい。時間ブロックの動き情報候補を外すか否かは、時間ブロック候補の参照画像の決定方法に依存する。
【０２９２】
尚、本変形例では、参照画像インデックスに基づいて判定を行ったが、処理対象ブロックを含む画像と、処理対象ブロックの参照候補となる隣接ブロックが参照する画像との画像間距離に基づいて判定可能であれば、これに限定されない。例えば、上述で説明したＭＰＥＧ−４ＡＶＣで定義された画像の表示順序を示すカウンタであるＰＯＣ（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ）を用いて、画像間距離を算出するようにしてもよい。画像の表示順序が１増加するとＰＯＣも１増加するので、画像間のＰＯＣ差から画像間距離を取得可能である。
【０２９３】
（変形例２）
上述の実施の形態２では、実施の形態１と同様に、Ｌ０方向の双結合動き情報とＬ１方向の双結合動き情報にそれぞれマージインデックスを割り当てるシンタックスを前提に説明した。実施の形態２に係る双結合タイプの動き情報候補生成処理を実行するか否かを判定する処理は、Ｌ０方向及びＬ１方向の双結合動き情報の組み合わせに１つのマージインデックスを割り当てるシンタックスにも適用可能である。
【０２９４】
（実施の形態２の効果）
実施の形態２では、双結合動き情報候補の組合せ選出を実施するか否かを判定することで、双結合動き情報候補による組合せがマージモードの場合の参照候補として有効であるか否かを双結合動き情報候補の生成を実施する前に判定出来る。従って、双結合動き情報候補リスト生成部１５２から双結合動き情報候補組合せリスト生成部１５４までの処理を適宜省略でき、処理負荷を低減することが可能となる。更に、単マージ或いは双マージかを指定するフラグｍｅｒｇｅ＿ｔｙｐｅを符号化する必要がなくなるので、符号化効率を向上させる効果がある。
【０２９５】
以上述べた実施の形態１、２の動画像符号化装置が出力する動画像の符号化ストリームは、実施の形態１、２で用いられた符号化方法に応じて復号することができるように特定のデータフォーマットを有している。当該動画像符号化装置に対応する動画像復号装置がこの特定のデータフォーマットの符号化ストリームを復号することができる。
【０２９６】
具体的には、双結合動き情報候補を示すマージインデックスや、候補番号管理テーブルを符号化ストリーム中に符号化している。また、双結合動き情報候補を示すマージインデックスのみを符号化ストリーム中に符号化し、候補番号管理テーブルを動画像符号装置と動画像復号装置で共有することで候補番号管理テーブルを符号化ストリーム中に符号化しなくてもよい。
【０２９７】
動画像符号化装置と動画像復号装置の間で符号化ストリームをやりとりするために、有線または無線のネットワークが用いられる場合、符号化ストリームを通信路の伝送形態に適したデータ形式に変換して伝送してもよい。その場合、動画像符号化装置が出力する符号化ストリームを通信路の伝送形態に適したデータ形式の符号化データに変換してネットワークに送信する動画像送信装置と、ネットワークから符号化データを受信して符号化ストリームに復元して動画像復号装置に供給する動画像受信装置とが設けられる。
【０２９８】
動画像送信装置は、動画像符号化装置が出力する符号化ストリームをバッファするメモリと、符号化ストリームをパケット化するパケット処理部と、パケット化された符号化データをネットワークを介して送信する送信部とを含む。動画像受信装置は、パケット化された符号化データをネットワークを介して受信する受信部と、受信された符号化データをバッファするメモリと、符号化データをパケット処理して符号化ストリームを生成し、動画像復号装置に提供するパケット処理部とを含む。
【０２９９】
以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリなどに記憶されているファームウェアや、コンピュータなどのソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータなどで読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【０３００】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０３０１】
１００  動画像符号化装置、  １０１  予測ブロック画像取得部、  １０２  減算部、  １０３  予測誤差符号化部、  １０４  符号列生成部、  １０５  予測誤差復号部、  １０６  動き補償部、  １０７  加算部、  １０８  動きベクトル検出部、  １０９  動き情報生成部、  １１０  フレームメモリ、  １１１  動き情報メモリ、  １２０  差分ベクトル算出部、  １２１  結合動き情報決定部、  １２２  予測符号化モード決定部、  １３０  予測ベクトル候補リスト生成部、  １３１  予測ベクトル決定部、  １３２  減算部、  １４０  結合動き情報候補生成部、  １４１  結合動き情報選択部、  １５０  単結合動き情報候補リスト生成部、  １５１  単結合動き情報候補リスト削減部、  １５２  双結合動き情報候補リスト生成部、  １５３  双結合動き情報候補リスト削減部、  １５４  双結合動き情報候補組合せリスト生成部、  １５５  結合タイプ判定部、  １６０  Ｌ０,Ｌ１方向動き情報組合せ部、  １６１  双結合動き情報候補決定部、  ２００  動画像復号装置、  ２０１  符号列解析部、  ２０２  予測誤差復号部、  ２０３  加算部、  ２０４  動き情報再生部、  ２０５  動き補償部、  ２０６  フレームメモリ、  ２０７  動き情報メモリ、  ２１０  符号化モード判定部、  ２１１  動きベクトル再生部、  ２１２  結合動き情報再生部、  ２２０  予測ベクトル候補リスト生成部、  ２２１  予測ベクトル決定部、  ２２２  加算部。
【図１】
2013021613.tif 000003
【図２】
2013021613.tif 000004
【図３】
2013021613.tif 000005
【図４】
2013021613.tif 000006
【図５】
2013021613.tif 000007
【図６】
2013021613.tif 000008
【図７】
2013021613.tif 000009
【図８】
2013021613.tif 000010
【図９】
2013021613.tif 000011
【図１０】
2013021613.tif 000012
【図１１】
2013021613.tif 000013
【図１２】
2013021613.tif 000014
【図１３】
2013021613.tif 000015
【図１４】
2013021613.tif 000016
【図１５】
2013021613.tif 000017
【図１６】
2013021613.tif 000018
【図１７】
2013021613.tif 000019
【図１８】
2013021613.tif 000020
【図１９】
2013021613.tif 000021
【図２０】
2013021613.tif 000022
【図２１】
2013021613.tif 000023
【図２２】
2013021613.tif 000024
【図２３】
2013021613.tif 000025
【図２４】
2013021613.tif 000026
【図２５】
2013021613.tif 000027
【図２６】
2013021613.tif 000028
【図２７】
2013021613.tif 000029
【図２８】
2013021613.tif 000030
【図２９】
2013021613.tif 000031
【図３０】
2013021613.tif 000032
【図３１】
2013021613.tif 000033
【図３２】
2013021613.tif 000034
【図３３】
2013021613.tif 000035
【図３４】
2013021613.tif 000036
【図３５】
2013021613.tif 000037
【図３６】
2013021613.tif 000038
【図３７】
2013021613.tif 000039
【図３８】
2013021613.tif 000040
【図３９】
2013021613.tif 000041
【図４０】
2013021613.tif 000042
【図４１】
2013021613.tif 000043
【図４２】
2013021613.tif 000044
【図４３】
2013021613.tif 000045
【図４４】
2013021613.tif 000046
【図４５】
2013021613.tif 000047
【図４６】
2013021613.tif 000048
【図４７】
2013021613.tif 000049
【図４８】
2013021613.tif 000050
【図４９】
2013021613.tif 000051
【図５０】
2013021613.tif 000052
【図５１】
2013021613.tif 000053
【図５２】
2013021613.tif 000054