(57)【要約】【課題】隣接ブロックの動き情報を使用して符号化を行う場合に、処理負荷を抑え、動き情報の符号化効率を向上させる。【解決手段】結合動き情報候補リスト生成部１０００は、符号化対象ブロックに隣接する複数の符号化済みの隣接ブロックの動き情報を符号化対象ブロックの動き情報の候補として算出し、動き情報の候補リストを生成する。結合動き情報候補リスト削除部１００１は、生成された候補リストに含まれる動き情報の中で、互いに予測方向および動きベクトル値が一致するものがある場合、いずれか一方の動き情報を候補リストから削除する。符号化部は、結合予測モードが選択された場合に、結合動き情報候補リスト削除部１００１にて処理された候補リストから得た指定された参照ブロックの動き情報を用いて、符号化対象ブロックを符号化するとともに、指定された参照ブロックを示すインデックスを符号化する。【選択図】図１０
2013042235.tif 000002
【特許請求の範囲】
【請求項１】
動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化装置であって、
符号化対象ブロックに隣接する複数の符号化済みの隣接ブロックの動き情報を前記符号化対象ブロックの動き情報の候補として算出し、動き情報の候補リストを生成する候補リスト生成部と、生成された前記候補リストに含まれる動き情報の中で、互いに予測方向および動きベクトル値が一致するものがある場合、いずれか一方の動き情報を前記候補リストから削除する候補リスト削除部とを含む動き情報算出部と、
前記候補リスト削除部にて処理された前記候補リスト内の動き情報を備える前記隣接ブロックの中から一つの隣接ブロックを、動き情報を参照するための参照ブロックとして指定して、指定された参照ブロックの動き情報を前記符号化対象ブロックの動き情報として使用する結合予測モードが選択された場合に、前記候補リスト削除部にて処理された前記候補リストから得た前記指定された参照ブロックの動き情報を用いて、前記符号化対象ブロックを符号化するとともに、指定された参照ブロックを示すインデックスを符号化する符号化部とを備えることを特徴とする動画像符号化装置。
【請求項２】
前記候補リスト削除部は、片方向予測の時は、前記候補リストに含まれる動き情報の内、互いに予測方向、動きベクトル値および参照先の画像を示す参照画像インデックスが一致する場合、いずれか一方の動き情報を前記候補リストから削除し、双方向予測の時は、互いに予測方向および動きベクトル値が一致する場合、いずれか一方の動き情報を前記候補リストから削除することを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記候補リスト削除部は、前記いずれか一方の動き情報を前記候補リストから削除する際、前記候補リストにおいてインデックスが大きい方の動き情報を削除することを特徴とする請求項１または２に記載の動画像符号化装置。
【請求項４】
動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化方法であって、
符号化対象ブロックに隣接する複数の符号化済みの隣接ブロックの動き情報を前記符号化対象ブロックの動き情報の候補として算出し、動き情報の候補リストを生成する候補リスト生成ステップと、生成された前記候補リストに含まれる動き情報の中で、互いに予測方向および動きベクトル値が一致するものがある場合、いずれか一方の動き情報を前記候補リストから削除する候補リスト削除ステップとを含む動き情報算出ステップと、
前記候補リスト削除ステップにて処理された前記候補リスト内の動き情報を備える前記隣接ブロックの中から一つの隣接ブロックを、動き情報を参照するための参照ブロックとして指定して、指定された参照ブロックの動き情報を前記符号化対象ブロックの動き情報として使用する結合予測モードが選択された場合に、前記候補リスト削除ステップにて処理された前記候補リストから得た前記指定された参照ブロックの動き情報を用いて、前記符号化対象ブロックを符号化するとともに、指定された参照ブロックを示すインデックスを符号化する符号化ステップとを備えることを特徴とする動画像符号化方法。
【請求項５】
動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化プログラムであって、
符号化対象ブロックに隣接する複数の符号化済みの隣接ブロックの動き情報を前記符号化対象ブロックの動き情報の候補として算出し、動き情報の候補リストを生成する候補リスト生成ステップと、生成された前記候補リストに含まれる動き情報の中で、互いに予測方向および動きベクトル値が一致するものがある場合、いずれか一方の動き情報を前記候補リストから削除する候補リスト削除ステップとを含む動き情報算出ステップと、
前記候補リスト削除ステップにて処理された前記候補リスト内の動き情報を備える前記隣接ブロックの中から一つの隣接ブロックを、動き情報を参照するための参照ブロックとして指定して、指定された参照ブロックの動き情報を前記符号化対象ブロックの動き情報として使用する結合予測モードが選択された場合に、前記候補リスト削除ステップにて処理された前記候補リストから得た前記指定された参照ブロックの動き情報を用いて、前記符号化対象ブロックを符号化するとともに、指定された参照ブロックを示すインデックスを符号化する符号化ステップとをコンピュータに実行させることを特徴とする動画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動き補償予測を用いた動画像符号化技術に関し、特に動き補償予測に利用する動画像符号化装置、動画像符号化方法及び動画像符号化プログラムに関する。
【背景技術】
【０００２】
ＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４（以後、ＡＶＣ）等に代表される動画像符号化では、ピクチャを矩形ブロックに分割し、ピクチャ間でブロック単位に動き推定、補償を行う動き補償予測が用いられる。動き補償予測において各ブロックで生成される動きベクトルは、その符号量を削減するために、予測処理が施される。
【０００３】
ＡＶＣでは、隣接するブロックの動きベクトルの間に強い相関があることを利用して、隣接ブロックから予測値を算出し、その予測値との差分ベクトルを符号化することによって符号量を削減している。しかし、これらの予測方法では、参照する隣接ブロックの位置が限定されているために、予測が当たらないと、動きベクトルの差分が大きくなり、発生符号量が増加する課題があった。また、動きベクトルの符号量は削減されるものの、予測方向や参照画像インデックス等の他の動き情報は処理対象のブロック毎に符号化されるので、効率的な符号化に至っていないという課題もあった。
【０００４】
これらの課題を解決するために、特許文献１のように、複数の隣接ブロックの中から参照する隣接ブロックを特定する付加情報を符号化することによって、処理対象のブロックの動き情報を符号化せずに、隣接ブロックの動き情報を使用して符号化を行い、符号量を削減するマージ符号化技術が用いられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−２７６４３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
マージ符号化は、処理対象のブロックの動き情報を符号化せずに、空間及び時間的に隣接するブロックの動き情報を使用して符号化を行うことで、符号量を削減して符号化効率を向上させている。また、参照する隣接ブロックの候補を複数用意し、参照する隣接ブロックを特定する付加情報を符号化することによって、より符号化対象ブロックの動き情報に近い隣接ブロックを参照できるようにしている。
【０００７】
しかしながら、参照隣接ブロック候補の数が多いと候補を特定する付加情報の符号量が多くなり、結果として符号化効率の向上に結びつかないという面もある。また、参照隣接ブロック候補の数を削減するために、参照隣接ブロック候補の動き情報を詳細に比較すると処理量の増加につながる。
【０００８】
本発明はこうした状況に鑑みてなされたものであり、その目的は、隣接ブロックの動き情報を使用して符号化を行う場合に、処理負荷が少なく、動き情報の符号化効率を向上させる技術を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明のある態様の動画像符号化装置は、動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化装置であって、符号化対象ブロックに隣接する複数の符号化済みの隣接ブロックの動き情報を前記符号化対象ブロックの動き情報の候補として算出し、動き情報の候補リストを生成する候補リスト生成部（１０００）と、生成された前記候補リストに含まれる動き情報の中で、互いに予測方向および動きベクトル値が一致するものがある場合、いずれか一方の動き情報を前記候補リストから削除する候補リスト削除部（１００１）とを含む動き情報算出部（９０６）と、前記候補リスト削除部にて処理された前記候補リスト内の動き情報を備える前記隣接ブロックの中から一つの隣接ブロックを、動き情報を参照するための参照ブロックとして指定して、指定された参照ブロックの動き情報を前記符号化対象ブロックの動き情報として使用する結合予測モードが選択された場合に、前記候補リスト削除部にて処理された前記候補リストから得た前記指定された参照ブロックの動き情報を用いて、前記符号化対象ブロックを符号化するとともに、指定された参照ブロックを示すインデックスを符号化する符号化部（１０３、１１０）とを備える。
【００１０】
本発明の別の態様は、動画像符号化方法である。この方法は、動画像の各ピクチャを分割したブロック単位で動きベクトルを用いて前記動画像を符号化する動画像符号化方法であって、符号化対象ブロックに隣接する複数の符号化済みの隣接ブロックの動き情報を前記符号化対象ブロックの動き情報の候補として算出し、動き情報の候補リストを生成する候補リスト生成ステップと、生成された前記候補リストに含まれる動き情報の中で、互いに予測方向および動きベクトル値が一致するものがある場合、いずれか一方の動き情報を前記候補リストから削除する候補リスト削除ステップとを含む動き情報算出ステップと、前記候補リスト削除ステップにて処理された前記候補リスト内の動き情報を備える前記隣接ブロックの中から一つの隣接ブロックを、動き情報を参照するための参照ブロックとして指定して、指定された参照ブロックの動き情報を前記符号化対象ブロックの動き情報として使用する結合予測モードが選択された場合に、前記候補リスト削除ステップにて処理された前記候補リストから得た前記指定された参照ブロックの動き情報を用いて、前記符号化対象ブロックを符号化するとともに、指定された参照ブロックを示すインデックスを符号化する符号化ステップとを備える。
【００１１】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１２】
本発明によれば、動き情報を処理する際の負荷を抑制しつつ、動き情報の符号化効率を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態１に係る動画像符号化装置の構成を示す図である。
【図２】符号化対象画像の一例を示す図である。
【図３】予測ブロックサイズの詳細な定義を示す図である。
【図４】図４（ａ）〜（ｄ）は、動き補償予測の予測方向について説明するための図である。
【図５】本発明の実施の形態１に係る動画像符号化装置における符号化処理の動作の流れ示すフローチャートである。
【図６】本発明の実施の形態１に係る動画像復号装置の構成を示す図である。
【図７】本発明の実施の形態１に係る動画像復号装置における復号処理の動作の流れを示すフローチャートである。
【図８】図８（ａ）、（ｂ）は、本発明の実施の形態１における動き補償予測において使用される動き情報を符号化するための２つの予測モードを説明するための図である。
【図９】実施の形態１の動画像符号化装置における予測モード判定部の詳細な構成を示す図である。
【図１０】図９の結合動き情報算出部の構成を示す図である。
【図１１】図５のステップＳ５０２の動き補償予測モード／予測信号生成処理の詳細動作を説明するためのフローチャートである。
【図１２】図１１の結合動き情報候補リスト生成の詳細動作を説明するためのフローチャートである。
【図１３】空間結合動き情報候補リスト生成に用いる空間候補ブロック群を示す図である。
【図１４】空間結合動き情報候補リスト生成の詳細動作を説明するためのフローチャートである。
【図１５】時間結合動き情報候補リスト生成に用いる時間候補ブロック群を示す図である。
【図１６】時間結合動き情報候補リスト生成の詳細動作を説明するためのフローチャートである。
【図１７】時間結合動き情報に対する基準動きベクトル値ＣｏｌＭｖに対する、Ｌ０予測、Ｌ１予測に対して登録する動きベクトル値ｍｖＬ０ｔ、ｍｖＬ１ｔの算出手法を説明するための図である。
【図１８】結合動き情報候補削除の詳細動作を説明するためのフローチャートである。
【図１９】図１９（ａ）、（ｂ）は、動きベクトルと参照画像インデックスの関係を説明する図である。
【図２０】図２０（ａ）、（ｂ）は、結合動き情報候補削除処理を行う前後の結合動き情報候補リストの一例を示す図である。
【図２１】図１９の結合予測モード評価値生成処理の詳細動作を説明するためのフローチャートである。
【図２２】図１１の予測モード評価値生成処理の詳細動作を説明するためのフローチャートである。
【図２３】結合動き情報候補数が５の場合のＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を示す図である。
【図２４】実施の形態１の動画像復号装置における動き情報復号部の詳細な構成を示す図である。
【図２５】図７の動き情報復号処理の詳細動作を説明するためのフローチャートである。
【図２６】図２５の結合予測動き情報復号処理の詳細動作を説明するためのフローチャートである。
【図２７】図２５の予測動き情報復号処理の詳細動作を説明するためのフローチャートである。
【図２８】実施の形態２における結合予測候補削除処理の動作の流れを示すフロチャートである。
【図２９】実施の形態３における結合動き情報算出部の構成を示す図である。
【図３０】実施の形態３における結合動き情報算出部の処理の動作の流れを示すフローチャートである。
【図３１】図３０の結合動き情報候補追加処理の動作の流れを示すフローチャートである。
【図３２】図３２（ａ）〜（ｄ）は、結合動き情報候補追加処理を行う前後の結合動き情報候補リストの一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、図面とともに本発明の実施の形態に係る動画像符号化装置、動画像符号化方法、動画像符号化プログラム、並びに動画像復号装置、動画像復号方法、動画像復号プログラムの好適な実施の形態について詳細に説明する。なお、図面の説明には同一要素には同一符号を付与して重複する説明を省略する。
【００１５】
（実施の形態１）
［動画像符号化装置全体構成］
図１は、本発明の実施の形態１に係る動画像符号化装置の構成を示す図である。以下、各部の動作について説明する。実施の形態１に係る動画像符号化装置は、入力端子１００、減算部１０１、直交変換・量子化部１０２、予測誤差符号化部１０３、逆量子化・逆変換部１０４、加算部１０５、復号画像メモリ１０６、動きベクトル検出部１０７、動き補償予測部１０８、予測モード判定部１０９、動き情報符号化部１１０、動き情報メモリ１１１、多重化部１１２、及び出力端子１１３を備える。
【００１６】
入力端子１００より入力される画像信号から符号化処理対象の予測ブロックの画像信号が、予測ブロックの位置情報と予測ブロックサイズに基づいて切り出され、予測ブロックの画像信号は、減算部１０１、動きベクトル検出部１０７及び予測モード判定部１０９に供給される。
【００１７】
図２は、符号化対象画像の一例を示す図である。実施の形態１に係る予測ブロックサイズに関しては、図２に示すように符号化対象画像が６４×６４画素の符号化ブロック（ＣＵ）単位で符号化処理され、予測ブロックは符号化ブロックが更に分割された単位で構成される。最大予測ブロックサイズは符号化ブロックと同じ６４×６４画素で、最小予測ブロックサイズは４×４画素である。符号化ブロックの予測ブロックへの分割構成は、非分割（２Ｎ×２Ｎ）、水平・垂直への分割（Ｎ×Ｎ）、水平方向のみへの分割（２Ｎ×Ｎ）、垂直方向のみへの分割（Ｎ×２Ｎ）が可能である。水平・垂直への分割の場合のみ、更に分割された予測ブロックを符号化ブロックとして階層的に予測ブロックに分割でき、その階層をＣＵ分割数で表現する。
【００１８】
図３は、予測ブロックサイズの詳細な定義を示す図である。ＣＵ分割数が０であって最大の予測ブロックサイズである６４画素×６４画素から、ＣＵ分割数が３であって最小の予測ブロックサイズである４画素×４画素までの１３の予測ブロックサイズが存在することになる。
【００１９】
本発明の実施の形態１に係る予測ブロックの分割構成に関して、この組み合わせに限定されない。また、動画像符号化装置における予測ブロックサイズの選択は、符号化ブロック単位で符号化効率のより良い構造を適応的に選択することが可能であるが、実施の形態１は予測ブロック単位での画面間予測及び画面間動き情報の符号化に注目したものであるため、最適な予測ブロックサイズの選択に関する構成要素及び説明を省略する。以降の動画像符号化装置の動作に関しては、選択した予測ブロックサイズ単位で施される動作を説明する。
【００２０】
図１に戻り、減算部１０１は、入力端子１００より供給される画像信号と予測モード判定部１０９より供給される予測信号を減算して予測誤差信号を算出し、予測誤差信号を直交変換・量子化部１０２に供給する。
【００２１】
直交変換・量子化部１０２は、減算部１０１より供給される予測誤差信号に直交変換及び量子化を施し、量子化された予測誤差信号を予測誤差符号化部１０３及び逆量子化・逆変換部１０４に供給する。
【００２２】
予測誤差符号化部１０３は、直交変換・量子化部１０２より供給される量子化された予測誤差信号をエントロピー符号化して、予測誤差信号に対する符号列を生成して、多重化部１１２に供給する。
【００２３】
逆量子化・逆変換部１０４は、直交変換・量子化部１０２より供給される量子化された予測誤差信号に対して、逆量子化や逆直交変換などの処理を行い、復号予測誤差信号を生成し加算部１０５に供給する。
【００２４】
加算部１０５は、逆量子化・逆変換部１０４より供給される復号予測誤差信号と、予測モード判定部１０９より供給される予測信号を加算して、復号画像信号を生成し、復号画像信号を復号画像メモリ１１６に供給する。
【００２５】
復号画像メモリ１０６は、加算部１０５より供給される復号画像信号を格納する。また、画像全体の復号が完了した復号画像については参照画像として１以上の所定画像数記憶し、参照画像信号を動きベクトル検出部１０７と動き補償予測部１０８に供給する。
【００２６】
動きベクトル検出部１０７は、入力端子１００より供給される予測ブロックの画像信号と、復号画像メモリ１０６に記憶された参照画像信号の入力を受けて、各参照画像に対する動きベクトルを検出し、動きベクトル値を予測モード判定部１０９に供給する。
【００２７】
一般的な動きベクトルの検出方法は、画像信号と同一位置より所定の移動量だけ移動させた参照画像に相当する画像信号について誤差評価値を算出し、誤差評価値が最小となる移動量を動きベクトルとする。誤差評価値としては、画素毎の差分絶対値の総和ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）や、画素毎の二乗誤差値の総和ＳＳＥ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅ  Ｅｒｒｏｒ）等を利用する。さらに、動きベクトルの符号化に関わる符号量も誤差評価値に含めることも可能である。
【００２８】
動き補償予測部１０８は、予測モード判定部１０９より指定される参照画像指定情報と、動きベクトル値に従って、復号画像メモリ１０６内の参照画像指定情報で示される参照画像を、動きベクトル値だけ予測ブロックの画像信号と同一位置より移動させた位置の画像信号を取得して予測信号を生成する。
【００２９】
予測モード判定部１０９より指定される予測モードが片方向予測の場合には、１つの参照画像から取得した予測信号を動き補償予測信号とし、予測モードが双方向予測の場合には、２つの参照画像から取得した予測信号を重みづけ平均したものを動き補償予測信号とし、動き補償予測信号を予測モード判定部１０９に供給する。ここでは双方向予測の重みづけ平均の比率を１：１とする。
【００３０】
図４（ａ）〜（ｄ）は、動き補償予測の予測方向について説明するための図である。単一の参照画像からの予測を行う処理を片方向予測と定義し、片方向の場合はＬ０方向またはＬ１方向という２つの参照画像管理リストに登録された参照画像のいずれか一方を利用する。
【００３１】
図４（ａ）は片方向であってＬ０方向の参照画像（ＲｅｆＬ０Ｐｉｃ）が符号化対象画像（ＣｕｒＰｉｃ）より前の時刻にある場合を示している。図４（ｂ）は片方向であってＬ０方向の参照画像が符号化対象画像より後の時刻にある場合を示している。同様に、図４（ａ）および図４（ｂ）のＬ０方向の参照画像をＬ１方向の参照画像（ＲｅｆＬ１Ｐｉｃ）に置き換えて片方向予測を行うこともできる。
【００３２】
２つの参照画像からの予測を行う処理を双方向予測と定義し、双方向の場合はＬ０方向とＬ１方向の双方を利用してＢＩ方向と表現する。図４（ｃ）は双方向であってＬ０方向の参照画像が符号化対象画像より前の時刻にあって、Ｌ１方向の参照画像が符号化対象画像より後の時刻にある場合を示している。図４（ｄ）は双方向であってＬ０方向の参照画像とＬ１方向の参照画像が符号化対象画像より前の時刻にある場合を示している。このように、Ｌ０／Ｌ１の予測方向と時間の関係は、Ｌ０が過去方向、Ｌ１が未来方向とは限定されずに用いることが可能である。
【００３３】
図１に戻り、予測モード判定部１０９は、動きベクトル検出部１０７より入力される各参照画像に対して検出された動きベクトル値と、動き情報メモリ１１１に格納された動き情報（予測方向、動きベクトル値、及び参照画像指定情報）をもとに、実施の形態１において定義した動き補償予測モードのそれぞれに対して用いられる、参照画像指定情報と動きベクトル値を動き補償予測部１０８に設定する。設定した値によって、動き補償予測部１０８から供給される動き補償予測信号と、入力端子１００より供給される予測ブロックの画像信号を用いて、最適な動き補償予測モードを決定する。
【００３４】
予測モード判定部１０９は、決定した予測モード、及び予測モードに応じた予測方向、動きベクトル、及び参照画像指定情報を特定する情報を、動き情報符号化部１１０に供給し、決定した予測モード及びその予測モードに対する、予測方向、動きベクトル値、及び参照画像指定情報を動き情報メモリ１１１に供給すると共に、減算部１０１及び加算部１０５に決定した予測モードに対応する予測信号を供給する。
【００３５】
動画像符号化装置において、基準とする参照画像を符号化するために同一画面内の符号化済画像を用いて予測を行う画面内予測が行われるが、実施の形態１は画面間予測に注目したものであるため、画面内予測に関連する構成要素は省略する。予測モード判定部１０９の詳細な構成については後述する。
【００３６】
動き情報符号化部１１０は、予測モード判定部１０９より供給される予測モード、及び予測モードに応じた予測方向、動きベクトル、及び参照画像指定情報を特定する情報を所定のシンタックス構造に従って符号化することで、動き情報の符号列を生成し、多重化部１１２に供給する。
【００３７】
動き情報メモリ１１１は、予測モード判定部１０９より供給される動き情報（予測方向、動きベクトル、及び参照画像インデックス）を、最小予測ブロックサイズ単位を基準として所定画像分記憶する。処理対象の予測ブロックの隣接ブロックの動き情報を空間候補ブロック群とし、処理対象の予測ブロックと同一位置にあるＣｏｌＰｉｃ上のブロックとその周辺ブロックの動き情報を時間候補ブロック群とする。
【００３８】
ＣｏｌＰｉｃとは、処理対象の予測ブロックとは別の復号済みの画像であって、復号画像メモリ１０６に参照画像として記憶されている。実施の形態１では、ＣｏｌＰｉｃは直前に復号した参照画像とする。なお、実施の形態１では、ＣｏｌＰｉｃは直前に復号した参照画像としたが、表示順で直前の参照画像や表示順で直後の参照画像でもよく、符号化ストリーム中に、ＣｏｌＰｉｃに用いる参照画像を直接指定することも可能である。
【００３９】
動き情報メモリ１１１は、空間候補ブロック群と時間候補ブロック群の動き情報を、候補ブロック群の動き情報として予測モード判定部１０９に供給する。多重化部１１２は、予測誤差符号化部１０３から供給される予測誤差の符号化列と、動き情報符号化部１１０から供給される動き情報の符号化列を多重化することで符号化ビットストリームを生成し、出力端子１１３経由で、記録媒体・伝送路等に当該符号化ビットストリームを出力する。
【００４０】
図１に示した動画像符号化装置の構成は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、フレームメモリ、ハードディスクなどを備える情報処理装置等のハードウェアによっても実現可能である。
【００４１】
図５は、本発明の実施の形態１に係る動画像符号化装置における符号化処理の動作の流れ示すフローチャートである。予測ブロック単位毎に、入力端子１００より処理対象の予測ブロック画像を取得する（Ｓ５００）。動きベクトル検出部１０７は、処理対象の予測ブロック画像と復号画像メモリ１０６に格納された複数の参照画像より、参照画像毎の動きベクトル値を算出する（Ｓ５０１）。
【００４２】
続いて、予測モード判定部１０９は、動きベクトル検出部１０７より供給される動きベクトルと、動き情報メモリ１１１に格納された動き情報を用いて、実施の形態１において定義した動き補償予測モードのそれぞれに対する予測信号を、動き補償予測部１０８を用いて取得し、最適な予測モードを選択し、予測信号を生成する（Ｓ５０２）。ステップＳ５０２の処理の詳細については後述する。
【００４３】
続いて、減算部１０１は、処理対象の予測ブロック画像と予測モード判定部１０９より供給された予測信号との差分を予測誤差信号として算出する（Ｓ５０３）。動き情報符号化部１１０は、予測モード判定部１０９より供給される予測モード、及び予測モードに応じた予測方向、動きベクトル、及び参照画像指定情報を特定する情報を所定のシンタックス構造に従って符号化し、動き情報の符号化データを生成する（Ｓ５０４）。
【００４４】
続いて、予測誤差符号化部１０３は、直交変換・量子化部１０２で生成された量子化された予測誤差信号をエントロピー符号化して、予測誤差の符号化データを生成する（Ｓ５０５）。多重化部１１２は、動き情報符号化部１１０から供給される動き情報の符号化データと、予測誤差符号化部１０３から供給される予測誤差の符号化データを多重化し、符号化ビットストリームを生成する（Ｓ５０６）。
【００４５】
加算部１０５は、逆量子化・逆変換部１０４より供給される復号予測誤差信号と、予測モード判定部１０９より供給される予測信号を加算して、復号画像信号を生成する（Ｓ５０７）。加算部１０５によって、生成された復号画像信号が復号画像メモリ１０６に供給、格納され、以降に符号化する符号化画像の動き補償予測処理に用いられる（Ｓ５０８）。動き情報メモリ１１１は、動きベクトル検出部１０７より供給される動き情報（予測方向、動きベクトル、及び参照画像指定情報）を最小の予測ブロックサイズ単位で格納する（Ｓ５０９）。
【００４６】
［動画像復号装置全体構成］
図６は、本発明の実施の形態１に係る動画像復号装置の構成を示す図である。以下、各部の動作について説明する。実施の形態１に係る動画像復号装置は、入力端子６００、多重分離部６０１、予測差分情報復号部６０２、逆量子化・逆変換部６０３、加算部６０４、復号画像メモリ６０５、動き情報復号部６０６、動き情報メモリ６０７、動き補償予測部６０８、及び出力端子６０９を備える。
【００４７】
入力端子６００より符号化ビットストリームが多重分離部６０１に供給される。多重分離部６０１は、供給された符号化ビットストリームの符号列を予測誤差情報の符号化列と、予測モード、並びに予測モードに応じた予測方向、動きベクトル、及び参照画像指定情報を特定する情報で構成される動き情報の符号化列に分離する。当該予測誤差情報の符号化列を予測差分情報復号部６０２に供給し、当該動き情報の符号化列を動き情報復号部６０６に供給する。
【００４８】
予測差分情報復号部６０２は、多重分離部６０１より供給された予測誤差情報の符号化列を復号し、量子化された予測誤差信号を生成する。予測差分情報復号部６０２は、生成した量子化された予測誤差信号を逆量子化・逆変換部６０３に供給する。
【００４９】
逆量子化・逆変換部６０３は、予測差分情報復号部６０２より供給される量子化された予測誤差信号を逆量子化や逆直交変換などの処理を行って予測誤差信号を生成し、復号予測誤差信号を加算部６０４に供給する。
【００５０】
加算部６０４は、逆量子化・逆変換部６０３より供給される復号予測誤差信号と、動き補償予測部６０８より供給される予測信号を加算して復号画像信号を生成し、復号画像信号を復号画像メモリ６０５に供給する。
【００５１】
復号画像メモリ６０５は、図１の動画像符号化装置における復号画像メモリ１０６と同じ機能を有し、加算部６０４から供給された復号画像信号を格納し、参照画像信号を動き補償予測部６０８に供給する。また、復号画像メモリ６０５は、格納された復号画像信号を再生時刻に合わせて、画像の表示順序に従い出力端子６０９に供給する。
【００５２】
動き情報復号部６０６は、多重分離部６０１より供給される動き情報の符号化列より、予測モード、並びに予測モードに応じた予測方向、動きベクトル、及び参照画像指定情報を特定する情報を動き情報として復号する。復号した動き情報と、動き情報メモリ６０７より供給される候補ブロック群の動き情報より、動き補償予測に用いる予測方向、動きベクトル及び参照画像指定情報を再生し、動き補償予測部６０８に供給する。また、動き情報復号部６０６は再生した動き情報を、動き情報メモリ６０７に供給する。動き情報復号部６０６の詳細な構成については後述する。
【００５３】
動き情報メモリ６０７は、図１の動画像符号化装置における動き情報メモリ１１１と同じ機能を持ち、動き情報復号部６０６より供給される再生した動き情報を最小予測ブロックサイズ単位を基準として所定画像分記憶する。また、動き情報メモリ６０７は、空間候補ブロック群と時間候補ブロック群の動き情報を、候補ブロック群の動き情報として動き情報復号部６０６に供給する。
【００５４】
動き補償予測部６０８は、図１の動画像符号化装置における動き補償予測部１０８と同じ機能を持ち、動き情報復号部６０６より供給される動き情報に基づいて、復号画像メモリ６０５内の参照画像指定情報が示す参照画像を、動きベクトル値だけ予測ブロックの画像信号と同一位置より移動させた位置の画像信号を取得して予測信号を生成する。動き補償予測の予測方向が双方向であれば、各予測方向の予測信号を平均したものを予測信号として生成し、予測信号を加算部６０４に供給する。
【００５５】
出力端子６０９は、復号画像メモリ６０５より供給された復号画像信号を、ディスプレイなどの表示媒体に出力することで、復号画像信号が再生される。
【００５６】
図６に示した動画像復号装置の構成も、図１に示した動画像符号化装置の構成と同様に、ＣＰＵ、フレームメモリ、ハードディスクなどを備える情報処理装置等のハードウェアによっても実現可能である。
【００５７】
図７は、本発明の実施の形態１に係る動画像復号装置における復号処理の動作の流れを示すフローチャートである。多重分離部６０１は、入力端子６００より供給された符号化ビットストリームを予測誤差情報の符号化列と、動き情報の符号化列に分離する（Ｓ７００）。分離された動き情報の符号化列は動き情報復号部６０６に供給され、動き情報メモリ６０７より供給される候補ブロック群の動き情報を用いて、復号対象ブロックの動き情報を復号する（Ｓ７０１）。ステップＳ７０１の処理の詳細については後述する。
【００５８】
分離された予測誤差情報の符号化列は、予測差分情報復号部６０２に供給され、量子化された予測誤差信号として復号され、逆量子化・逆変換部６０３で逆量子化や逆直交変換などの処理を施されることで、復号予測誤差信号が生成される（Ｓ７０２）。
【００５９】
動き情報復号部６０６より、復号対象ブロックの動き情報が動き補償予測部６０８に供給され、動き補償予測部６０８は動き情報にしたがって動き補償予測を行い予測信号を算出する（Ｓ７０３）。加算部６０４は、逆量子化・逆変換部６０３から供給された復号予測誤差信号と、動き補償予測部６０８から供給された予測信号とを加算し、復号画像信号を生成する（Ｓ７０４）。
【００６０】
加算部６０４より供給された復号画像信号は、復号画像メモリ６０５に格納される（Ｓ７０５）と共に、動き情報復号部６０６より供給された復号対象ブロックの動き情報が動き情報メモリ６０７に格納される（Ｓ７０６）。これで、予測ブロック単位の復号処理が終了する。
【００６１】
［実施の形態１の詳細機能説明］
本発明の実施の形態１に係る動画像符号化装置の予測モード判定部１０９の動作、図５のフローチャートにおけるステップＳ５０２の処理、並びに本発明の実施の形態１に係る動画像復号装置における動き情報復号部６０６の動作、図７のフローチャートにおけるステップＳ７０１の処理の詳細動作を、以下説明する。
【００６２】
［実施の形態１における動き補償予測モードの定義］
図８（ａ）、（ｂ）は、本発明の実施の形態１における動き補償予測において使用される動き情報を符号化するための２つの予測モードを説明するための図である。第一の予測モードは、予測対象ブロックと当該予測対象ブロックに隣接する符号化済ブロックにおける時間方向や空間方向の動きの連続性を用いて、当該予測対象ブロックは自身の動き情報を直接符号化せずに、空間及び時間的に隣接するブロックの動き情報を符号化に使用する手法であり、結合予測モード（マージモード）と呼ぶ。
【００６３】
第一の予測モードは、予測対象ブロックと予測対象ブロックに隣接する符号化済ブロックにおける時間方向や空間方向の動きの連続性を用いて、予測処理対象ブロック自身の動き情報を直接符号化せずに、空間及び時間的に隣接するブロックの動き情報を符号化に使用する手法であり、結合予測モード（マージモード）と呼ぶ。
【００６４】
結合予測モードの場合には、複数の隣接ブロック候補より選択的に結合する動き情報が定義でき、動き情報は使用する隣接ブロックを指定する情報（インデックス）を符号化することで、指定情報をもとに取得した動き情報をそのまま動き補償予測に用いる。更に、結合予測モードにおいては、予測差分情報を符号化伝送せずに、結合予測モードで予測された予測信号を復号ピクチャとするＳｋｉｐモードを定義し、結合した動き情報のみの少ない情報で復号画像が再生できる構成を有する。Ｓｋｉｐモードにおいて伝送する動き情報は、結合予測モードと同様に隣接ブロックを定義する指定情報となる。
【００６５】
第二の予測モードは、動き情報の構成要素を個別にすべて符号化し、予測ブロックに対して予測誤差の少ない動き情報を伝送する手法であり、動き検出予測モードと呼ぶ。動き検出予測モードは、従来の動き補償予測の動き情報の符号化と同様に、参照画像を特定するための情報（参照画像インデックス）と、動きベクトルを特定するための情報が別々に符号化される。
【００６６】
動き検出予測モードには、片方向予測と双方向予測のどちらを使用するか予測モードで指示し、片方向予測の場合には１つの参照画像に対する参照画像を特定する情報と、動きベクトルの予測ベクトルとの差分ベクトルを符号化する。双方向予測の場合には２つの参照画像に対する参照画像を特定する情報と、動きベクトルがそれぞれ個別に符号化される。動きベクトルに対する予測ベクトルは、ＡＶＣと同様に隣接ブロックの動き情報から生成されるが、結合予測モードと同様に、複数の隣接ブロック候補より予測ベクトルに用いる動きベクトルを選択でき、動きベクトルは予測ベクトルに使用する隣接ブロックを指定する情報（インデックス）と差分ベクトルの２つを符号化することで伝送される。
【００６７】
［実施の形態１における動画像符号化装置における予測モード判定部の詳細動作説明］
図９は、実施の形態１の動画像符号化装置における予測モード判定部１０９の詳細な構成を示す図である。予測モード判定部１０９は、最適な動き補償予測モードを決定する機能を有する。
【００６８】
予測モード判定部１０９は、動き補償予測生成部９００、予測誤差算出部９０１、予測ベクトル算出部９０２、差分ベクトル算出部９０３、動き情報符号量算出部９０４、予測モード評価部９０５、結合動き情報算出部９０６、及び結合動き補償予測生成部９０７を含む。
【００６９】
図１における予測モード判定部１０９に対して、動きベクトル検出部１０７より入力された動きベクトル値が、動き補償予測生成部９００に供給され、動き情報メモリ１１１より入力された動き情報が、予測ベクトル算出部９０２、及び結合動き情報算出部９０６に供給される。
【００７０】
また、動き補償予測部１０８に対して、動き補償予測生成部９００、及び結合動き補償予測生成部９０７、から、動き補償予測に用いる参照画像指定情報と動きベクトルが出力され、動き補償予測部１０８より、生成された動き補償予測画像が予測誤差算出部９０１に供給される。予測誤差算出部９０１には更に、入力端子１００より符号化対象となる予測ブロックの画像信号が供給される。
【００７１】
また、予測モード評価部９０５から、動き情報符号化部１１０に対して符号化する動き情報と確定した予測モード情報を供給し、動き情報メモリ１１１に動き情報を供給し、動き補償予測信号を減算部１０１及び加算部１０５に供給する。
【００７２】
動き補償予測生成部９００は、予測に使用可能な各参照画像に対して算出された動きベクトル値を受信し、参照画像指定情報を予測ベクトル算出部９０２に供給し、参照画像指定情報と動きベクトルを出力する。
【００７３】
予測誤差算出部９０１は、入力された動き補償予測画像と処理対象の予測ブロック画像より、予測誤差評価値を算出する。誤差評価値を算出するための演算としては、動きベクトル検出における誤差評価値と同様に、画素毎の差分絶対値の総和ＳＡＤや、画素毎の二乗誤差値の総和ＳＳＥ等を使用できる。更に、予測残差の符号化を行う際に施される、直交変換・量子化を行うことによって復号画像に生じる歪成分の量を加味することで、より正確な誤差評価値が算出可能である。この場合には、予測誤差算出部９０１内に、図１における減算部１０１、直交変換・量子化部１０２、逆量子化・逆変換部１０４、加算部１０５の機能を有することで実現できる。
【００７４】
予測誤差算出部９０１は、各予測モードにおいて算出された予測誤差評価値と、動き補償予測信号を予測モード評価部９０５に供給する。
【００７５】
予測ベクトル算出部９０２は、動き補償予測生成部９００より参照画像指定情報を供給され、動き情報メモリ１１１から供給される隣接ブロックの動き情報における候補ブロック群より、指定された参照画像に対する動きベクトル値を入力し、複数の予測ベクトルを予測ベクトル候補リストと共に生成し、差分ベクトル算出部９０３に、参照画像指定情報と共に供給する。予測ベクトル算出部９０２は、予測ベクトルの候補を作成し、予測ベクトル候補として登録する。
【００７６】
差分ベクトル算出部９０３は、予測ベクトル算出部９０２より供給された、予測ベクトル候補のそれぞれに対して、動き補償予測生成部９００から供給される動きベクトル値との差分を計算し、差分ベクトル値を算出する。算出された差分ベクトル値と予測ベクトル候補に対する指定情報である予測ベクトルインデックスを符号化した際、符号量が最も少ない。差分ベクトル算出部９０３は、最も少ない情報量である予測ベクトルに対する予測ベクトルインデックスと差分ベクトル値を参照画像指定情報と共に、動き情報符号量算出部９０４に供給する。
【００７７】
動き情報符号量算出部９０４は、差分ベクトル算出部９０３より供給される、差分ベクトル値、参照画像指定情報、予測ベクトルインデックス、および予測モードより、各予測モードにおける動き情報に要する符号量を算出する。また、動き情報符号量算出部９０４は、結合動き補償予測生成部９０７より、結合予測モードにおいて伝送する必要がある、結合動き情報インデックスと予測モードを示すための情報を受け取り、結合予測モードにおける動き情報に要する符号量を算出する。
【００７８】
動き情報符号量算出部９０４は、各予測モードにおいて算出された動き情報及び動き情報に要する符号量を予測モード評価部９０５に供給する。
【００７９】
予測モード評価部９０５は、予測誤差算出部９０１より供給された各予測モードの予測誤差評価値と、動き情報符号量算出部９０４から供給された各予測モードの動き情報符号量を用いて、各予測モードの総合動き補償予測誤差評価値を算出し、最も少ない評価値である予測モードを選択し、選択した予測モードと選択した予測モードに対する動き情報を、動き情報符号化部１１０、動き情報メモリ１１１に出力する。また、予測モード評価部９０５は同様に、予測誤差算出部９０１より供給された動き補償予測信号に対して、選択した予測モードにおける予測信号を選択して減算部１０１及び加算部１０５に出力する。
【００８０】
結合動き情報算出部９０６は、動き情報メモリ１１１より供給される隣接ブロックの動き情報における候補ブロック群を用いて、片方向であるか双方向であるかを示す予測方向、参照画像指定情報、動きベクトル値で構成される動き情報として、複数の動き情報を結合動き情報候補リストと共に生成し、結合動き補償予測生成部９０７に供給する。
【００８１】
図１０は、結合動き情報算出部９０６の構成を示す図である。結合動き情報算出部９０６は、結合動き情報候補リスト生成部１０００および結合動き情報候補リスト削除部１００１を含む。結合動き情報算出部９０６は、候補ブロック群より所定の順番で動き情報の候補を作成し、その中から、動き情報の信頼度の低い候補を削除することで、有効な動き情報のみを結合動き情報候補として登録する。結合動き情報算出部９０６の詳細動作に関しては、後述する。
【００８２】
図９に戻り、結合動き補償予測生成部９０７は、結合動き情報算出部９０６より供給された結合動き情報候補リストより、登録された結合動き情報候補のそれぞれに対して、動き情報より、予測方向に応じて１つの参照画像（片方向）もしくは２つの参照画像（双方向）の参照画像指定情報と動きベクトル値を動き補償予測部１０８に指定して、動き補償予測画像を生成すると共に、それぞれの結合動き情報インデックスを動き情報符号量算出部９０４に供給する。
【００８３】
図９の構成では、それぞれの結合動き情報インデックスにおける予測モード評価は、予測モード評価部９０５で施されるが、予測誤差評価値及び動き情報符号量を予測誤差算出部９０１及び動き情報符号量算出部９０４より受け取り、結合動き補償予測生成部９０７内で、最適な結合動き補償予測の結合動きインデックスを確定させた後に、他の予測モードを含めた最適予測モードの評価を行う構成を取ることも可能である。
【００８４】
図１１は、図５のステップＳ５０２の動き補償予測モード／予測信号生成処理の詳細動作を説明するためのフローチャートである。この動作は、図９の予測モード判定部１０９における詳細動作を示している。
【００８５】
最初に、結合動き情報候補リスト生成を行い（Ｓ１１００）、結合予測モード評価値を生成する（Ｓ１１０１）。続いて、予測モード評価値を生成し（Ｓ１１０２）、生成した評価値を比較することで最適な予測モードを選択する（Ｓ１１０３）。ただし、ステップＳ１１０１及びＳ１１０２の評価値生成の順序はこれに限らない。
【００８６】
選択された予測モードに従い予測信号を出力し（Ｓ１１０４）、選択された予測モードに従い動き情報を出力する（Ｓ１１０５）ことで、予測ブロック単位の動き補償予測モード／予測信号生成処理が終了する。ステップＳ１１００、Ｓ１１０１、及びＳ１１０２の詳細動作に関しては後述する。
【００８７】
図１２は、図１１のステップＳ１１００の結合動き情報候補リスト生成の詳細動作を説明するためのフローチャートである。この動作は、図９の結合動き情報算出部９０６における構成の詳細動作を示している。
【００８８】
図１０の結合動き情報候補リスト生成部１０００は、動き情報メモリ１１１より供給される空間候補ブロック群から領域外である候補ブロックや、イントラモードである候補ブロックを除いた候補ブロックから空間結合動き情報候補リストを生成する（Ｓ１２００）。空間結合動き情報候補リスト生成の詳細な動作は後述する。
【００８９】
結合動き情報候補リスト生成部１０００は、続いて動き情報メモリ１１１より供給される時間候補ブロック群から領域外である候補ブロックや、イントラモードである候補ブロックを除いた候補ブロックから時間結合動き情報候補リストを生成する（Ｓ１２０１）。時間結合動き情報候補リスト生成の詳細な動作は後述する。
【００９０】
続いて、結合動き情報候補リスト削除部１００１において、生成された空間結合動き情報候補リストと時間結合動き情報候補リストを統合した結合動き情報候補リストより、信頼度の低い動き情報を持つ結合動き情報候補を削除して動き情報候補リストを更新する（Ｓ１２０２）。結合動き情報候補削除の詳細な動作は後述する。
【００９１】
最後に、上記処理において隣接ブロックに有効な動き情報が存在せず、結合動き情報候補が存在しない場合（Ｓ１２０３：ＹＥＳ）には、固定の動き情報を結合動き上方候補リストに追加して（Ｓ１２０４）、処理を終了する。
【００９２】
実施の形態１における固定の動き情報としては、予測方向が双方向で、参照画像指定情報（インデックス）が０、２つの動きベクトル値が共に（０，０）の値を設定する。実施の形態１における固定の動き情報としては、上記設定には限定されず、暗黙的に指定できる手法で設定されることにより、動画像復号装置においても同じ動き情報が再現できる。
【００９３】
動き情報メモリ１１１より、結合動き情報算出部９０６に供給される動き情報の候補ブロック群には、空間候補ブロック群と時間候補ブロック群が含まれる。まず、空間結合動き情報候補リスト生成について説明する。
【００９４】
図１３は、空間結合動き情報候補リスト生成に用いる空間候補ブロック群を示す図である。空間候補ブロック群は、符号化対象画像の予測対象ブロックに隣接している同一画像のブロックを示す。ブロック群は、その管理が最小予測ブロックサイズ単位で行われ、図１３に示すようなＡ１〜Ａ４、Ｂ１〜Ｂ４、Ｃ、Ｄ、Ｅの位置のブロックが隣接するブロック群となる。候補ブロックの位置は、最小予測ブロックサイズの単位で管理されるが、隣接ブロックの予測ブロックサイズが最小予測ブロックサイズよりも大きな場合には、予測ブロックサイズ内の全ての候補ブロックに同一の動き情報が格納される。実施の形態１においては、これら隣接するブロック群の内、空間候補ブロック群をブロックＡ１、ブロックＢ１、ブロックＣ、ブロックＤ、ブロックＥの５ブロックとする。
【００９５】
図１４は、空間結合動き情報候補リスト生成の詳細動作を説明するためのフローチャートである。空間候補ブロック群に含まれる５つの候補ブロックであるブロックＡ１、ブロックＢ１、ブロックＣ、ブロックＤ、ブロックＥについて以下の処理を繰り返し行う（Ｓ１４００〜Ｓ１４０３）。
【００９６】
最初に候補ブロックの有効性を検査する（Ｓ１４０１）。候補ブロックが領域外でなくイントラモードでない場合（Ｓ１４０１：ＹＥＳ）、候補ブロックは有効となる。候補ブロックが有効であれば、候補ブロックの動き情報を空間結合動き情報候補リストに追加する（Ｓ１４０２）。
【００９７】
ここでは、空間結合動き情報候補リストには５以下の候補ブロックの動き情報が含まれるとしたが、空間候補ブロック群は、処理対象の予測ブロックに隣接する少なくとも１以上の処理済みのブロックであり、候補ブロックの有効性によって空間結合動き情報候補リストの数が変動すればよく、これに限定されない。
【００９８】
続いて、時間結合動き情報候補リスト生成について説明する。図１５は、時間結合動き情報候補リスト生成に用いる時間候補ブロック群を示す図である。時間候補ブロック群は、予測対象ブロックとは別の復号済みの画像ＣｏｌＰｉｃにおける予測対象ブロックと同位置及びその周辺にあるブロックを示す。図１５におけるＡ１〜Ａ４、Ｂ１〜Ｂ４、Ｃ、Ｄ、Ｅ、Ｆ１〜Ｆ４、Ｇ１〜Ｇ４、Ｈ、Ｉ１〜Ｉ１６の位置のブロックが、時間的に隣接するブロック群となる。実施の形態１においては、これら時間的に隣接するブロック群の内、時間候補ブロック群をブロックＨとブロックＩ６の２ブロックとする。
【００９９】
図１６は、時間結合動き情報候補リスト生成の詳細動作を説明するためのフローチャートである。時間候補ブロック群に含まれる２つの候補ブロックであるブロックＨとブロックＩ６について（Ｓ１６００、Ｓ１６０５）、ブロックＨ、ブロックＩ６の順序で候補ブロックの有効性を検査する（Ｓ１６０１）。候補ブロックが有効である場合（Ｓ１６０１：ＹＥＳ）、ステップＳ１６０２〜ステップＳ１６０４の処理が行われ、生成された動き情報が時間結合動き情報候補リストに登録され、処理が終了する。候補ブロックが画面領域外の位置を示す場合や、候補ブロックがイントラ予測ブロックである場合（Ｓ１６０１：ＮＯ）、候補ブロックが有効でなく、次の候補ブロックの有効／無効判定が行われる。
【０１００】
候補ブロックが有効である場合（Ｓ１６０１：ＹＥＳ）、候補ブロックの動き情報をもとに結合動き情報候補に登録する参照画像選択候補を確定する（Ｓ１６０２）。実施の形態１ではＬ０方向の参照画像を、Ｌ０方向の参照画像のうち処理対象画像に最も近い距離にある参照画像とし、Ｌ１方向の参照画像を、Ｌ１方向の参照画像のうち処理対象画像に最も近い距離にある参照画像とする。
【０１０１】
ここでの参照画像選択候補の確定手法は、Ｌ０方向の参照画像とＬ１方向の参照画像が決定できればよく、これに限定されない。符号化処理と復号処理で同一の手法で参照画像を確定することで、符号化時に意図した参照画像を確定できる。他の確定手法としては、例えばＬ０方向の参照画像及びＬ１方向の参照画像の参照画像インデックスが０である参照画像を選択する手法や、空間隣接ブロックが使用しているＬ０参照画像及びＬ１参照画像で、最も多く使用されている参照画像を予測対象ブロックにおける参照画像として選択する手法や、符号化ストリーム中で各方向の参照画像を指定する手法を用いることが可能である。
【０１０２】
次に、候補ブロックの動き情報をもとに結合動き情報候補に登録する動きベクトル値を確定する（Ｓ１６０３）。実施の形態１における、時間結合動き情報は、候補ブロックの動き情報で有効な予測方向である動きベクトル値をもとに、双方向の動き情報を算出する。候補ブロックの予測方向がＬ０予測もしくはＬ１予測の片方向の場合には、予測に用いられている方向（Ｌ０方向或いはＬ１方向）の動き情報を選択し、その参照画像指定情報と動きベクトル値を双方向動き情報生成の基準値とする。
【０１０３】
候補ブロックの予測方向が双方向である場合には、Ｌ０予測或いはＬ１予測のどちらか一方の動き情報を基準値として選択する。基準値の選択方法は、例えばＣｏｌＰｉｃと同じ予測方向に存在する動き情報を選択する、候補ブロックのＬ０予測、Ｌ１予測のそれぞれの参照画像でＣｏｌＰｉｃとの画像間距離が近い方を選択する、或いは候補ブロックのＬ０予測、Ｌ１予測のそれぞれの動きベクトルが符号化処理対象画像と交差する方を選択する等が挙げられる。
【０１０４】
双方向動き情報生成の基準とする動きベクトル値が確定したら、結合動き情報候補に登録する動きベクトル値を算出する。
【０１０５】
図１７は、時間結合動き情報に対する基準動きベクトル値ＣｏｌＭｖに対する、Ｌ０予測、Ｌ１予測に対して登録する動きベクトル値ｍｖＬ０ｔ、ｍｖＬ１ｔの算出手法を説明するための図である。
【０１０６】
基準動きベクトル値ＣｏｌＭｖに対するＣｏｌＰｉｃと候補ブロックの基準とする動きベクトルの対象となる参照画像との画像間距離をＣｏｌＤｉｓｔとする。Ｌ０予測、Ｌ１予測の各参照画像と処理対象画像との画像間距離をＣｕｒｒＬ０Ｄｉｓｔ、ＣｕｒｒＬ１Ｄｉｓｔとする。ＣｏｌＭｖを、ＣｏｌＤｉｓｔとＣｕｒｒＬ０Ｄｉｓｔ、ＣｕｒｒＬ１Ｄｉｓｔの距離比率でスケーリングした動きベクトルを、それぞれに登録する動きベクトルとする。具体的には、登録する動きベクトル値ｍｖＬ０ｔ、ｍｖＬ１ｔは、下記式１、２で算出される。
ｍｖＬ０ｔ＝ｍｖＣｏｌ×ＣｕｒｒＬ０Ｄｉｓｔ／ＣｏｌＤｉｓｔ    ・・・（式１）
ｍｖＬ１ｔ＝ｍｖＣｏｌ×ＣｕｒｒＬ１Ｄｉｓｔ／ＣｏｌＤｉｓｔ    ・・・（式２）
となる。
【０１０７】
図１６に戻り、このようにして生成された、双方向の参照画像選択情報（インデックス）と、動きベクトル値を結合動き情報候補に追加し（Ｓ１６０４）、時間結合動き情報候補リスト作成処理が終了する。
【０１０８】
図１８は、結合動き情報候補削除の詳細動作を説明するためのフローチャートである。空間結合動き情報候補リスト作成処理及び時間結合動き情報候補リスト作成処理により、生成された結合動き情報の候補の数をｎｕｍ＿ｃａｎｄとすると、ｉ＝０からｎｕｍ＿ｃａｎｄ−２までの結合動き情報候補（候補（ｉ））に対して以下の処理を繰り返し行う（Ｓ１８００〜Ｓ１８１３）。
【０１０９】
ｉｉ＝ｉ＋１からｎｕｍ＿ｃａｎｄ−１までの結合動き情報候補（候補（ｉｉ））に対して、候補（ｉ）の予測方向（予測方向（ｉ））と候補（ｉｉ）の予測方向（予測方向（ｉｉ））を比較する（Ｓ１８０２）。予測方向（ｉ）と予測方向（ｉｉ）が異なる場合には（Ｓ１８０２のＮＯ）、ｉｉの値を更新し（ステップＳ１８１１）、ステップＳ１８０１からステップＳ１８１２までの処理を繰り返す。
【０１１０】
予測方向（ｉ）と予測方向（ｉｉ）が同じ（Ｓ１８０２のＹＥＳ）で、その予測方向が片方向予測である場合には（Ｓ１８０３：片方向予測）、候補（ｉ）と候補（ｉｉ）のその予測方向における動きベクトル値を比較する（Ｓ１８０４）。すなわち、予測方向（ｉ）と予測方向（ｉｉ）がＬ０予測の場合には、候補（ｉ）のＬ０予測における動きベクトル（動きベクトル値（ｉ））と、候補（ｉｉ）のＬ０予測における動きベクトル（動きベクトル値（ｉｉ））の水平成分と垂直成分をそれぞれ比較する。また、予測方向（ｉ）と予測方向（ｉｉ）がＬ１予測の場合には、候補（ｉ）のＬ１予測における動きベクトル（動きベクトル値（ｉｉ））と、候補（ｉｉ）のＬ１予測における動きベクトル（動きベクトル値（ｉｉ））の水平成分と垂直成分をそれぞれ比較する（Ｓ１８０４）。
【０１１１】
動きベクトル値（ｉ）と動きベクトル値（ｉｉ）の水平成分と垂直成分が少なくとも１つ以上異なる場合には（Ｓ１８０４：ＮＯ）、ｉｉの値を更新し（ステップＳ１８１１）、ステップＳ１８０１からステップＳ１８１２までの処理を繰り返す。そうでなければ（Ｓ１８０４：ＹＥＳ）、ステップＳ１８０６に進む。
【０１１２】
予測方向（ｉ）と予測方向（ｉｉ）が同じ（Ｓ１８０２：ＹＥＳ）で、その予測方向が双方向予測である場合には（Ｓ１８０３：双方向予測）、各予測方向における動きベクトル値を比較する（Ｓ１８０４）。すなわち、候補（ｉ）のＬ０予測における動きベクトル（Ｌ０動きベクトル値（ｉ））と、候補（ｉｉ）のＬ０予測における動きベクトル（Ｌ０動きベクトル値（ｉｉ））の水平成分と垂直成分をそれぞれ比較し、さらに、候補（ｉ）のＬ１予測における動きベクトル（Ｌ１動きベクトル値（ｉｉ））と、候補（ｉｉ）のＬ１予測における動きベクトル（Ｌ１動きベクトル値（ｉｉ））の水平成分と垂直成分をそれぞれ比較する（Ｓ１８０５）。
【０１１３】
Ｌ０動きベクトル値（ｉ）とＬ０動きベクトル値（ｉｉ）の水平成分と垂直成分が少なくとも１つ以上異なるか、Ｌ１動きベクトル値（ｉ）とＬ１動きベクトル値（ｉｉ）の水平成分と垂直成分が少なくとも１つ以上異なる場合には（Ｓ１８０５：ＮＯ）、ｉｉの値を更新し（ステップＳ１８１１）、ステップＳ１８０１からステップＳ１８１２までの処理を繰り返す。そうでなければ（Ｓ１８０５：ＹＥＳ）、ステップＳ１８０６に進む。
【０１１４】
続いて、ステップＳ１８０６からステップＳ１８０８において、ｔ＝ｉｉ＋１からｎｕｍ＿ｃａｎｄ−１までの結合動き情報候補（候補（ｔ））をそれぞれ候補（ｔ−１）に代入する。すなわち、これは、ｉｉ＋１からｎｕｍ＿ｃａｎｄ−１までの候補をひとつずつ１小さいインデックスの位置にシフトすることになる。
【０１１５】
次に、ｎｕｍ＿ｃａｎｄの値から１を減じ（Ｓ１８０９）、ｎｕｍ＿ｃａｎｄの値が１となったか否かを判定し（Ｓ１８１０）、１でなければ（Ｓ１８１０：ＮＯ）、ステップＳ１８０２からの処理を繰り返す。１であれば（Ｓ１８１０：ＹＥＳ）、ステップＳ１８００からステップＳ１８１３までの処理の繰り返しを終了する。
【０１１６】
なお、２つの動きベクトル値を比較する際、水平成分と垂直成分が完全に同一でなくても、ある閾値の範囲で近い値をもてば、実質的に２つの動きベクトルは一致するものとして扱う。たとえば、２つの動きベクトルの水平成分、垂直成分の差分の絶対値がそれぞれの所定の閾値未満である場合、２つの動きベクトルは実質的に一致するとみなす。
【０１１７】
図２０（ａ）、（ｂ）は、結合動き情報候補削除処理を行う前後の結合動き情報候補リストの一例を示す図である。図２０（ａ）において、インデックス０の動き情報と、インデックス２の動き情報は、予測方向と各予測方向の動きベクトル値が同じであるから、結合動き情報候補削除の処理によってインデックス２の結合動き情報候補が削除され、それ以降のインデックスの候補がシフトされ、図２０（ｂ）のようになる。
【０１１８】
以上の処理を結合動き情報候補に対して行うことにより、結合動き情報候補のうちで、同じ予測方向と各予測方向のベクトル値が同じ候補を削除することができる。この点が本実施の形態において符号化効率を向上する特徴的な構成であり、結合動き情報候補を削除する処理において、予測方向、動きベクトル値、および参照画像インデックスを比較して、完全に同じ動き情報を持つ結合動き情報候補を削減するのではなく、参照画像インデックスを調べることなく、予測モードと動きベクトル値を比較することにより、信頼度の低い動き情報を持つ結合動き情報候補も削除することが可能である。
【０１１９】
図１９（ａ）、（ｂ）は、動きベクトルと参照画像インデックスの関係を説明する図である。動画像では被写体が等速度運動をしている動きが多く、等速度運動をしている被写体の動きを示す動きベクトルは、図１９（ａ）に示すように参照画像の距離に応じてスケーリングした関係にある。すなわち、一つ前の時刻の参照画像（参照インデックスｉｄｘ０）からの動きを示す動きベクトルと、二つ前の時刻の参照画像（参照インデックスｉｄｘ１）からの動きを示す動きベクトルとは、予測方向が同じで動きベクトル値は時間差分だけスケーリングした関係にある。
【０１２０】
一方、図１９（ｂ）に示すように、予測方向と動きベクトル値が同じで、参照画像インデックスのみ異なる二つの動きベクトルは、被写体が等速度運動していることを否定する。すなわち、一つ前の時刻の参照画像（参照インデックスｉｄｘ０）からの動きを示す動きベクトルと、二つ前の時刻の参照画像（参照インデックスｉｄｘ１）からの動きを示す動きベクトルとは、予測方向が同じで動きベクトル値も同じである。これは、二つ前の時刻から一つ前の時刻にかけて被写体に動きがなく、一つ前の時刻から現時刻にかけて被写体が動いたことを意味しており、被写体の動きは等速度運動していないことになる。被写体が等速度運動をしていることを仮定すると、このような場合、これら二つの動きベクトルをともに結合動き情報候補として残しても、結合動き情報インデックスの符号量が増加することに見合わない。
【０１２１】
図１９（ｂ）に示したような、互いに予測方向と動きベクトル値が同じで参照画像インデックスが異なる動き情報の候補を、結合動き情報候補として残すには、当然のことながら、参照画像インデックスが同一であるか否かをチェックする必要がある。そのため、候補を削除する条件式が増加し、演算量が増加してしまう。そこで、本実施の形態では、２つの動き情報の候補について、互いに予測方向と動きベクトル値が同じ場合は、参照画像インデックスが同一であるかどうかをチェックすることなく（参照画像インデックスが同じであろうとなかろうと）、いずれか一方の動き情報の候補を結合動き情報候補から削除することで、演算量を削減しつつ、冗長な動き情報の候補の登録を抑制し符号化効率を向上させることができる。
【０１２２】
２つの動き情報の候補について、互いに予測方向と動きベクトル値が同じであって、参照画像インデックスも同じであれば、それらは冗長な候補であるから、両方の動き情報を残すことは結合動き情報インデックスの符号量を無駄に増加させる。一方、２つの動き情報の候補について、互いに予測方向と動きベクトル値が同じであって、参照画像インデックスが異なれば、それらは等速度運動を意味しないものであるから、信頼性が低く、両方の動き情報を登録することは結合動き情報インデックスの符号量の増加に見合わない。したがって、参照画像インデックスが同じであろうとなかろうと、２つの動き情報の候補について、互いに予測方向と動きベクトル値が同じであれば、いずれか一方の候補を削除することにメリットがある。
【０１２３】
後述するように、本実施の形態では、結合動き情報候補を特定するために符号化される結合動き情報インデックスは、Ｔｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いるので、結合動き情報候補数が少ないほど、割り当てられる符号ビットが小さくなる。すなわち、結合動き情報候補から冗長性の高い信頼度の低い動き情報を持つ候補を適切に削除することにより、結合動き情報インデックスに割り当てられる符号量を減らし、符号化効率を向上することが可能である。
【０１２４】
また、結合動き情報候補削除において、予測モード、動きベクトル値および参照画像インデックスをすべて比較するのではなく、参照画像インデックスを比較せずに予測モードと動きベクトル値を比較することで、比較処理を減らすことが可能となり、回路規模や処理時間を削減することが可能である。
【０１２５】
図２１は、図１１のステップＳ１１０１における結合予測モード評価値生成処理の詳細動作を説明するためのフローチャートである。この動作は、図９の結合動き補償予測生成部９０８を用いた構成の詳細動作を示している。
【０１２６】
最初に予測誤差評価値を最大値に設定し、予測誤差が最小となる結合動き情報インデックスを初期化（例えば、−１などのリスト外の値）する（Ｓ２１００）。結合動き情報候補リスト生成処理により、生成された結合動き情報候補リストの数をｎｕｍ＿ｏｆ＿ｉｎｄｅｘとすると、ｉ＝０からｎｕｍ＿ｏｆ＿ｉｎｄｅｘ−１までの結合動き情報候補について以下の処理を繰り返し行う（Ｓ２１０１からＳ２１０９）。
【０１２７】
先ず、結合動き情報候補リストよりインデックスｉに格納された動き情報を取得する（Ｓ２１０２）。続いて動き情報符号量を算出する（Ｓ２１０３）。結合予測モードにおいては、結合動き情報インデックスのみが符号化されるので、結合動き情報インデックスのみが動き情報符号量となる。
【０１２８】
結合動き情報インデックスの符号列としては、実施の形態１では、Ｔｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いる。図２３は、結合動き情報候補数が５の場合のＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を示す図である。Ｔｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いて結合動き情報インデックスの値を符号化する場合には、結合動き情報候補数が少ないほど、結合動き情報インデックスに割り当てられる符号ビットが小さくなる。例えば、結合動き情報インデックスが１である場合、結合動き情報候補数が２個であれば‘１’の１ビットで表現されるが、結合動き情報候補数が３個であれば‘１０’の２ビットで表現される。なお、ここでは上記のように結合動き情報インデックスの符号化にＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を利用しているが、他の符号列生成手法を用いることも可能であり、これに限定されない。
【０１２９】
続いて、動き情報の予測方向が片方向である場合（Ｓ２１０４：ＹＥＳ）、１つの参照画像に対する参照画像指定情報と動きベクトルを、図１における動き補償予測部１０８に設定して、片方向動き補償予測ブロックを生成する（Ｓ２１０５）。動き情報が片方向でない場合（Ｓ２１０４：ＮＯ）、２つの参照画像に対する参照画像指定情報と動きベクトルを動き補償予測部１０８に設定して、双方向動き補償予測ブロックを生成する（Ｓ２１０６）。
【０１３０】
続いて、動き補償予測ブロックと予測対象ブロックの予測誤差と動き情報符号量より、予測誤差評価値を算出し（Ｓ２１０７）、予測誤差評価値が最小値である場合には評価値を更新すると共に、予測誤差最小インデックスを更新する（Ｓ２１０８）。
【０１３１】
全ての結合動き情報候補についての予測誤差評価値が比較された結果、選択された予測誤差最小インデックスを、結合予測モードで用いる結合動き情報インデックスとして、予測誤差最小値、動き補償予測ブロックと共に出力し（Ｓ２１１０）、結合予測モード評価値生成処理を終了する。
【０１３２】
図２２は、図１１のステップＳ１１０２の予測モード評価値生成処理の詳細動作を説明するためのフローチャートである。
【０１３３】
最初に、予測モードが片方向予測であるか否かを判別する（Ｓ２２００）。片方向予測であれば、処理対象とする参照画像リスト（ＬＸ）を予測に用いている参照画像リストに設定する（Ｓ２２０１）。片方向予測でなければ、双方向予測であるから、この場合はＬＸをＬ０とする（Ｓ２２０２）。
【０１３４】
次に、ＬＸ予測に対する参照画像指定情報（インデックス）と動きベクトル値を取得する（Ｓ２２０３）。続いて、予測ベクトル候補リストを生成し（Ｓ２２０４）、予測ベクトルの中から最適予測ベクトルを選択し、差分ベクトルを生成する（Ｓ２２０５）。最適予測ベクトルの選択手法は、予測ベクトルと伝送する動きベクトルの差分ベクトルを実際に符号化する際の符号量が最も少ないものを選択することが望ましいが、単純に差分ベクトルの水平・垂直成分の絶対値の総和が小さいものを選択するなどの手法で、簡易的に算出してもよい。
【０１３５】
続いて、再度予測モードが片方向予測である否かを判別し（Ｓ２２０６）、予測モードが片方向予測であればステップＳ２２０９に進む。片方向予測でない、すなわち、双方向予測であれば、処理対象の参照リストＬＸがＬ１か否かを判定する（Ｓ２２０７）。参照リストＬＸがＬ１であれば、ステップＳ２２０９に進み、Ｌ１でない、すなわち、Ｌ０であればＬＸをＬ１として（Ｓ２２０８）、ステップＳ２２０３からステップＳ２２０６までの処理と同じ処理が行われる。
【０１３６】
続いて、動き情報符号量を算出する（Ｓ２２０９）。片方向予測モードの場合に、符号化する動き情報としては、１つの参照画像に対する、参照画像指定情報、差分ベクトル値、及び予測ベクトルインデックスの３要素、双方向予測モードの場合には、Ｌ０とＬ１の２つの参照画像に対する、参照画像指定情報、差分ベクトル値、及び予測ベクトルインデックスの計６要素となり、各々符号化された符号量の総量が動き情報符号量として算出される。本実施の形態における予測ベクトルインデックスの符号列生成手法としては、結合動き情報インデックスの符号列と同様にＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いるものとする。
【０１３７】
続いて、参照画像に対する参照画像指定情報と動きベクトルを図１における動き補償予測部１０８に設定して、動き補償予測ブロックを生成する（Ｓ２２１０）。
【０１３８】
さらに、動き補償予測ブロックと予測対象ブロックの予測誤差と動き情報符号量より、予測誤差評価値を算出し（Ｓ２２１１）、予測誤差評価値と、参照画像に対する動き情報である、参照画像指定情報と差分ベクトル値と予測ベクトルインデックスを動き補償予測ブロックと共に出力し（Ｓ２２１２）、予測モード評価値生成処理を終了する。
【０１３９】
以上の処理が、実施の形態１における動画像符号化装置における予測モード判定部１０９の詳細動作となる。
【０１４０】
［実施の形態１における動画像復号装置における動き情報復号部の詳細動作説明］
図２４は、図６に示した実施の形態１の動画像復号装置における動き情報復号部６０６の詳細な構成を示す図である。動き情報復号部６０６は、動き情報ビットストリーム復号部２４００、予測ベクトル算出部２４０１、ベクトル加算部２４０２、動き補償予測復号部２４０３、結合動き情報算出部２４０４、及び結合動き補償予測復号部２４０５を含む。
【０１４１】
図６における動き情報復号部６０６に対して、多重分離部６０１より入力された動き情報ビットストリームが、動き情報ビットストリーム復号部２４００に供給され、動き情報メモリ６０７より入力された動き情報が、予測ベクトル算出部２４０１、及び結合動き情報算出部２４０４に供給される。
【０１４２】
また、動き補償予測部６０８に対して、動き補償予測復号部２４０３、及び結合動き補償予測復号部２４０５から、動き補償予測に用いる参照画像指定情報と動きベクトルが出力され、予測方向を示す情報を含めた復号された動き情報が、動き情報メモリ６０７に格納される。
【０１４３】
動き情報ビットストリーム復号部２４００は、多重分離部６０１より入力された動き情報ビットストリームを符号化シンタックスに従って復号していくことで、伝送された予測モードと、予測モードに応じた動き情報を生成する。生成した動き情報の中で、結合動き情報インデックスは、結合動き補償予測復号部２４０５に供給され、参照画像指定情報が予測ベクトル算出部２４０１に供給され、予測ベクトルインデックスがベクトル加算部２４０２に供給され、差分ベクトル値がベクトル加算部２４０２に供給される。
【０１４４】
予測ベクトル算出部２４０１は、動き情報メモリ６０７より供給された隣接ブロックの動き情報と、動き情報ビットストリーム復号部２４００より供給された参照画像指定情報から、動き補償予測の対象となる参照画像に対する予測ベクトル候補リストを生成し、参照画像指定情報と共にベクトル加算部２４０２に供給する。予測ベクトル算出部２４０１の動作に関しては、動画像符号化装置における図９の予測ベクトル算出部９０２と同一の動作が行われ、符号化時の予測ベクトル候補リストと同一の候補リストが生成される。
【０１４５】
ベクトル加算部２４０２は、予測ベクトル算出部２４０１より供給された予測ベクトル候補リスト及び参照画像指定情報と、動き情報ビットストリーム復号部２４００から供給された予測ベクトルインデックス及び差分ベクトルより、予測ベクトルインデックスで示された位置に登録された予測ベクトル値と差分ベクトル値を加算することで、動き補償予測対象となる参照画像に対しての動きベクトル値が再生される。再生された動きベクトル値は、参照画像指定情報と共に、動き補償予測復号部２４０３に供給される。
【０１４６】
動き補償予測復号部２４０３は、ベクトル加算部２４０２より参照画像に対する、再生された動きベクトル値と参照画像指定情報が供給され、動きベクトル値と参照画像指定情報を動き補償予測部６０８に設定することで、動き補償予測信号を生成する。
【０１４７】
結合動き情報算出部２４０４は、動き情報メモリ６０７から供給される隣接ブロックの動き情報より、結合動き情報候補リストを生成し、結合動き情報候補リストとリスト内の構成要素である結合動き情報候補の参照画像指定情報と動きベクトル値を、結合動き補償予測復号部２４０５に供給する。
【０１４８】
結合動き情報算出部２４０４の動作に関しては、動画像符号化装置における図９の結合動き情報算出部９０６と同一の動作が行われ、符号化時の結合動き情報候補リストと同一の候補リストが生成される。
【０１４９】
結合動き補償予測復号部２４０５は、結合動き情報算出部２４０４より供給される結合動き情報候補リストとリスト内の構成要素である結合動き情報候補の参照画像指定情報と動きベクトル値と、動き情報ビットストリーム復号部２４００より供給される結合動き情報インデックスより、結合動き情報インデックスで示された結合動き情報候補リストにおける参照画像指定情報と動きベクトル値を再生し、動き補償予測部６０８に設定することで、動き補償予測信号を生成する。
【０１５０】
図２５は、図７のステップＳ７０１の動き情報復号処理の詳細動作を説明するためのフローチャートである。動き情報ビットストリーム復号部２４００と予測ベクトル算出部２４０１、及び結合動き情報算出部２４０４により、図７のステップＳ７０１の動き情報復号処理が行われる。
【０１５１】
動き情報復号処理は、特定のシンタックス構造で符号化された符号化ビットストリームより動き情報を復号する処理である。最初に符号化ブロックの所定単位でＳｋｉｐフラグを復号する（Ｓ２５００）。以降は予測ブロック単位の処理となる。
【０１５２】
ＳｋｉｐフラグがＳｋｉｐモードを示している場合（Ｓ２５０１：ＹＥＳ）、結合予測動き情報復号を行う（Ｓ２５０２）。ステップＳ２５０２の詳細処理については、後述する。
【０１５３】
Ｓｋｉｐモードでない場合（Ｓ２５０１：ＮＯ）、マージフラグを復号する（Ｓ２５０３）。マージフラグが１を示している場合（Ｓ２５０４：ＹＥＳ）には、ステップＳ２５０２の結合予測動き情報復号に進む。
【０１５４】
マージフラグが１でない場合（Ｓ２５０４：ＮＯ）、動き予測フラグを復号し（Ｓ２５０５）、予測動き情報復号を行う（Ｓ２５０６）。ステップＳ２５０６の詳細動作については、後述する。
【０１５５】
図２６は、図２５のステップＳ２５０２の結合予測動き情報復号処理の詳細動作を説明するためのフローチャートである。
【０１５６】
最初に予測モードに結合予測モードを設定し（Ｓ２６００）、結合動き情報候補リストを生成する（Ｓ２６０１）。ステップＳ２６０１の処理は、動画像符号化装置における図１１のステップＳ１１００の結合動き情報候補リスト生成処理と同一の処理である。
【０１５７】
結合動き情報候補リストが１よりも大きい場合（Ｓ２６０２：ＹＥＳ）、即ち複数の結合動き情報候補がある場合には、結合動き情報インデックスを復号し（Ｓ２６０３）、結合動き情報候補リストが１つの場合（Ｓ２６０２：ＮＯ）、結合動き情報インデックスに０を設定する（Ｓ２６０４）。
【０１５８】
続いて、結合動き情報候補リストより、結合動き情報インデックスで示す位置に格納されている動き情報を取得する（Ｓ２６０５）。取得する動き情報としては、片方向／双方向を示す予測方向、参照画像指定情報、動きベクトル値となる。
【０１５９】
生成された動き情報は、結合予測モードの動き情報として格納され（Ｓ２６０６）、結合動き補償予測復号部２４０６に供給される。
【０１６０】
図２７は、図２５のステップＳ２５０６の予測動き情報復号処理の詳細動作を説明するためのフローチャートである。
【０１６１】
最初に、予測方向が片方向予測であるか否かを判別する（Ｓ２７００）。片方向予測であれば、処理対象とする参照画像リスト（ＬＸ）を予測に用いている参照画像リストに設定する（Ｓ２７０１）。片方向予測でなければ、双方向予測であるから、この場合はＬＸをＬ０とする（Ｓ２７０２）。
【０１６２】
次に、参照画像指定情報を復号し（Ｓ２７０３）、差分ベクトル値を復号する（Ｓ２７０４）。次に、予測ベクトル候補リストを生成し（Ｓ２７０５）、予測ベクトル候補リストが１より大きな場合（Ｓ２７０６：ＹＥＳ）、予測ベクトルインデックスを復号し（Ｓ２７０７）、予測ベクトル候補リストが１の場合（Ｓ２７０６：ＮＯ）、予測ベクトルインデックスに０を設定する（Ｓ２７０８）。
【０１６３】
ここで、ステップＳ２７０５では、動画像符号化装置における図２２のフローチャートのステップＳ２２０４と同様の処理が行われる。
【０１６４】
次に、予測ベクトル候補リストより、予測ベクトルインデックスで示す位置に格納されている動きベクトル値を取得する（Ｓ２７０９）。復号した差分ベクトル値と動きベクトル値を加算することで動きベクトルを再生する（Ｓ２７１０）。
【０１６５】
続いて、再度予測方向が片方向予測である否かを判別し（Ｓ２７１１）、予測方向が片方向予測であればステップＳ２７１４に進む。片方向予測でない、すなわち、双方向予測であれば、処理対象の参照リストＬＸがＬ１か否かを判定する（Ｓ２７１２）。参照リストＬＸがＬ１であれば、ステップＳ２７１４に進み、Ｌ１でない、すなわち、Ｌ０であればＬＸをＬ１として（Ｓ２７１３）、ステップＳ２７０３からステップＳ２７１１までの処理と同じ処理が行われる。
【０１６６】
続いて、生成された動き情報として、片方向予測方向の場合には、１つの参照画像に対する参照画像指定情報と動きベクトル値が、双方向予測方向の場合には、２つの参照画像に対する参照画像指定情報と動きベクトル値が、動き情報として格納され（Ｓ２７１４）、動き補償予測復号部２４０３に供給される。
【０１６７】
実施の形態１における、動画像符号化装置及び動画像復号装置においては、結合動き情報候補リスト削除部において、予測方向、参照画像インデックスおよび動きベクトル値を比較して、完全に同じ動き情報を持つ結合動き情報候補を削除するのではなく、参照画像インデックスを比較せずに予測方向と動きベクトル値を比較することにより、結合動き情報候補から冗長性の高い信頼度の低い動き情報を持つ候補を適切に削除することが可能となり、その結果、結合動き情報インデックスに割り当てられる符号量を減らし、符号化効率を向上させることができる。
【０１６８】
また、実施の形態１における、動画像符号化装置及び動画像復号装置においては、動き情報候補リスト削除部において、予測方向、参照画像インデックスおよび動きベクトル値をすべて比較するのではなく、参照画像インデックスを比較せずに予測方向と各予測方向の動きベクトル値を比較することで、比較処理を減らすことが可能となり、回路規模や処理時間の削減といった効果も有する。
【０１６９】
（実施の形態２）
次に、本発明の実施の形態２を説明する。実施の形態２は、実施の形態１に対して、結合予測候補削除の動作が異なる。結合予測候補削除の動作以外の構成および処理は実施の形態１と同一であるので、ここでは図１０の結合動き情報候補リスト削除部１００１における結合動き情報リスト削除処理の実施の形態１との差異のみ説明する。
【０１７０】
図２８は、実施の形態２における結合予測候補削除処理の動作の流れを示すフロチャートである。候補（ｉ）の予測方向と候補（ｉｉ）の予測方向が同じで（Ｓ２８０２のＹＥＳ）、その予測方向が片方向予測である場合（Ｓ２８０３：片方向予測）、ステップＳ２８０４において、動きベクトル値（ｉ）と動きベクトル値（ｉｉ）のみを比較するのではなく、候補（ｉ）の予測方向における参照インデックス（参照インデックス（ｉ））と、候補（ｉｉ）の予測方向における参照インデックス（参照インデックス（ｉｉ））をも比較している点が実施の形態１と異なる点である。
【０１７１】
前述したように、動画像では等速度運動をしている動きが多いので、動きベクトル予測方向と各予測方向の動きベクトル値が同じで、参照画像インデックスのみが異なる候補は、図１９（ｂ）に示すように動きベクトルが等速度運動していることを否定するため信頼性が低いと考えることができる。しかしながら、すべての動きが等速度運動ではないため、動きベクトル予測方向と各予測方向の動きベクトル値が同じで、参照画像インデックスのみ異なる候補が、実際の動きと合致していることもあり得る。特に、片方向予測では動きベクトルの同一比較が一組であるため、双方向予測の同一比較が二組であるのに比べて、動きベクトルが同一であり参照インデックスのみが異なる確率が相対的に高い。また、双方向予測の場合には、動きベクトルの同一性を二組比較する必要があるのに比べて、片方向予測は動きベクトルの同一性を一組しか比較する必要がないため、演算量に余裕がある。
【０１７２】
そこで、実施の形態２では、片方向予測では動きベクトルの同一比較に加えて、参照画像インデックスの同一比較も行う。候補（ｉ）の予測方向と候補（ｉｉ）の予測方向が片方向予測である場合には、予測方向、参照画像インデックス、および動きベクトル値を比較して、完全に同じ動き情報を持つ結合動き情報候補のみを削除し、候補（ｉ）の予測方向と候補（ｉｉ）の予測方向が双方向予測である場合には、参照画像インデックスを比較せずに、予測モードと動きベクトル値のみを比較することにより、信頼度の低い動き情報を持つ結合動き情報候補を的確に削除することが可能である。
【０１７３】
（実施の形態３）
次に、本発明の実施の形態３を説明する。実施の形態３は、実施の形態１に対して、結合動き情報算出部に結合動き情報候補リスト追加部を設ける構成であり、結合動き情報候補リスト生成の処理が異なる。それ以外の構成および処理は実施の形態１と同一であるので、ここでは図９の結合動き情報算出部９０６における結合動き情報リスト生成処理の実施の形態１との差異のみ説明する。
【０１７４】
図２９は、実施の形態３における結合動き情報算出部の構成を示す図である。また、図３０は、実施の形態３における結合動き情報算出部の処理の動作の流れを示すフローチャートである。この動作は、図１１のステップＳ１１００の結合動き情報候補リスト生成の詳細な動作を示している。
【０１７５】
実施の形態３において、結合動き情報算出部９０６は、結合動き情報候補リスト生成部２９００、結合動き情報候補リスト削除部２９０１及び結合動き情報候補リスト追加部２９０２を含む。
【０１７６】
結合動き情報候補リスト生成部２９００は、動き情報メモリ１１１より供給される空間候補ブロック群および時間候補ブロック群からそれぞれ空間結合動き情報候補リストおよび時間結合動き情報候補リストを生成する（Ｓ３０００、Ｓ３００１）。
【０１７７】
続いて、結合動き情報候補リスト削除部２９０１は、生成された結合動き情報候補リストより、信頼度の低い動き情報を持つ結合動き情報候補を削除して動き情報候補リストを更新する（Ｓ３００２）。
【０１７８】
次に、結合動き情報候補が存在しない場合（Ｓ３００３：ＹＥＳ）には、固定の動き情報を結合動き上方候補リストに追加する（Ｓ３００４）。
【０１７９】
ここまでのステップＳ３０００からステップＳ３００４までの処理は、実施の形態１におけるステップＳ１２００からステップＳ１２０４までの処理と同様であるので、詳細な動作の説明は割愛する。
【０１８０】
次に、生成された結合動き情報候補リストの結合動き情報候補の数に応じて、新たな結合動き情報候補を追加して（Ｓ３００５）、処理を終了する。結合動き情報候補追加の詳細な動作は後述する。
【０１８１】
ここで、本実施の形態における結合予測モード（マージモード）は、予測処理対象ブロック自身の動き情報を直接符号化せずに、隣接するブロックの動き情報を符号化に使用する手法であり、複数の隣接ブロック候補のどのブロックを使用したかを特定する情報（インデックス）を符号化することで、復号側でも同じ情報を使用して復号することができる。
【０１８２】
前述したように、本実施の形態では、結合動き情報候補を特定するために符号化される結合動き情報インデックスは、Ｔｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いるので、結合動き情報候補数の数に応じて、割り当てられる符号ビット数が変化する。
【０１８３】
しかしながら、動画像を符号化して得られる符号化画像信号を復号装置で復号する場合、たとえば復号済みの動画像信号や動き情報の格納や読み出しの過程でエラーが混入することがあり、その結果、結合動き情報候補リストが正しく生成されないことが起こりうる。そのとき、得られた結合動き情報候補リストの結合動き情報候補の数が本来のものと異なっていると、インデックスに割り当てられる符号ビット数も間違ったものとなってしまい、その結果、これ以降のビットストリームの復号が不可能となる。
【０１８４】
そこで、本実施の形態では、生成した結合動き情報候補リストの候補の数が既定の数に満たない場合には、新たな候補を追加して常に候補の数を固定にすることにより、ロバストネスの強化を行う。
【０１８５】
図３１は、図３０のステップＳ３００５の結合動き情報候補追加処理の動作の流れを示すフローチャートである。実施の形態３における結合動き情報候補リストの候補の既定の数は３としたが、これには限定されず、ビットストリーム内に値を記録して指定したり、予め定めた値を暗黙的に指定することにより、符号化装置側と復号装置側で結合動き情報候補リストの候補数を同一の値に設定して同じ処理が実現できる。
【０１８６】
まず、生成された結合動き情報候補の数（ｎｕｍ＿ｌｉｓｔ）が既定の数（ＮＬＩＳＴ）より小さいか否かを判断する（Ｓ３１００）。小さくなければ（Ｓ３１００：ＮＯ）、何もせずに処理を終了する。小さければ、ステップＳ３１０１からステップＳ３１０４の処理を繰り返し行う。
【０１８７】
処理を行うインデックスをｉ＝０、追加しなければならない候補数をｎ＝ＮＬＩＳＴ−ｎｕｍ＿ｌｉｓｔとし、インデックスｉの結合動き情報候補（候補（ｉ））から順に、動き情報のうち、参照画像インデックス（ｒｅｆ＿ｉｄｘ）の値のみ有効な範囲で変更して、結合動き情報候補リストに追加する（Ｓ３１０２）。たとえば、インデックス０の結合動き情報が、予測方向がＬ０予測、動きベクトルが（３，１）、参照画像インデックスが１で、参照画像インデックスの最大値が２であるとすると、予測方向と各予測方向の動きベクトルが同じで、参照画像インデックスが０、２の二つの結合動き情報候補をリストに追加する。
【０１８８】
前述したように、実施の形態３における結合動き情報候補削除部は、予測方向と各予測方向の動きベクトル値のみを比較して候補を削除するか否かを判定しており、参照画像インデックスの比較は行っていない。すなわち、予測方向と各予測方向の動きベクトル値が同じであれば、参照画像インデックスが異なっていても信頼度の低い動き情報と判断して削除するので、結合動き情報候補削除処理を行った後の結合動き情報候補リストには、予測方向と各予測方向の動きベクトル値が同じで、参照画像インデックスのみ異なるという候補は存在しない。よって、予測方向と各予測方向の動きベクトルが同じで、参照画像インデックスが異なる候補を追加しても、同じ動き情報が結合動き情報候補リストに存在しないので、候補の追加により、冗長になることはなく、再度、結合動き情報候補削除の処理を行う必要がないことに留意する。
【０１８９】
続いて、ｉに１を加算し、ｎから追加した候補の数を引いて更新する（Ｓ３１０３）。ステップＳ３１０１からステップＳ３１０４の処理をｉがｎｕｍ＿ｌｉｓｔになるか、ｎが０になるまで繰り返し行う。
【０１９０】
次に、ｎｕｍ＿ｌｉｓｔの値を追加した候補も加えた数に更新し（Ｓ３１０５）、ｎｕｍ＿ｌｉｓｔが既定の数（ＮＬＩＳＴ）より小さいか否かを再び判定する（Ｓ３１０６）。小さくなければ処理を終了し、小さければ固定の動き情報を結合動き情報リストに追加して（Ｓ３１０７）、処理を終了する。
【０１９１】
実施の形態３における固定の動き情報としては、予測方向が双方向で、参照画像指定情報（インデックス）が０、２つの動きベクトル値が共に（０，０）の値を設定する。結合動き情報候補の数を既定の数にするために、２つ以上の候補を追加しなければならない場合は、ベクトル値は（０，１）、（１，０）、（１，１）、（２，１）、（１，２）・・・のように水平垂直の要素を順番に増加させていくものとする。本発明の実施の形態３における固定の動き情報としては、上記の設定値には限定されず、暗黙的に指定できる手法で設定することにより、復号装置においても同じ動き情報が再現できる。
【０１９２】
図３２（ａ）〜（ｄ）は、結合動き情報候補追加処理を行う前後の結合動き情報候補リストの一例を示す図である。
【０１９３】
図３２（ａ）、（ｂ）は、片方向予測の場合である。図３２（ａ）は、結合動き情報候補追加処理を行う前の結合動き情報候補リストであり、Ｌ０予測、動きベクトル値（３，１）、参照画像インデックス１の動き情報が格納されている。結合動き情報候補追加処理により、図３２（ａ）の結合動き情報候補リストの動き情報に対して、参照画像インデックスのみを変更した動き情報を２つ追加すると、図３２（ｂ）のようになる。図３２（ｂ）では、参照画像インデックスを０とした動き情報と、参照画像インデックスを２とした動き情報が追加され、動き情報の候補数が規定値の３となる。
【０１９４】
図３２（ｃ）、（ｄ）は、双方向予測の場合である。図３２（ｃ）は、結合動き情報候補追加処理を行う前の結合動き情報候補リストであり、双方向予測、Ｌ０予測の動きベクトル値（３，１）、Ｌ１予測の動きベクトル値（１，０）、Ｌ０予測の参照画像インデックス１、Ｌ１予測の参照画像インデックス０の動き情報が格納されている。結合動き情報候補追加処理により、図３２（ｃ）の結合動き情報候補リストの動き情報に対して、参照画像インデックスのみを変更した動き情報を２つ追加すると、図３２（ｄ）のようになる。図３２（ｄ）では、Ｌ０予測の参照画像インデックス、Ｌ１予測の参照画像インデックスをともに０とした動き情報、Ｌ０予測の参照画像インデックス、Ｌ１予測の参照画像インデックスをともに１とした動き情報が追加され、動き情報の候補数が規定値の３となる。
【０１９５】
以上のように、実施の形態３の動画像符号化装置及び動画像復号装置では、動き情報候補リスト削除部において、参照画像インデックスを比較せずに予測方向と各予測方向の動きベクトル値を比較することにより、信頼度の低い動き情報を持つ候補を削除した上、動き情報候補リスト追加部において、既に結合動き情報候補リストに存在する動き情報の、参照画像インデックスのみを変更して追加して結合動き情報候補リストの候補数を規定数にする。これにより、結合動き情報候補リストに重複して同じ動き情報が追加されることがないので、新たに結合動き情報候補削除処理を行う必要がなく、より少ない処理でロバストネスを向上させることができる。
【０１９６】
以上述べた実施の形態の動画像符号化装置が出力する動画像の符号化ストリームは、実施の形態で用いられた符号化方法に応じて復号することができるように特定のデータフォーマットを有しており、動画像符号化装置に対応する動画像復号装置がこの特定のデータフォーマットの符号化ストリームを復号することができる。
【０１９７】
動画像符号化装置と動画像復号装置の間で符号化ストリームをやりとりするために、有線または無線のネットワークが用いられる場合、符号化ストリームを通信路の伝送形態に適したデータ形式に変換して伝送してもよい。その場合、動画像符号化装置が出力する符号化ストリームを通信路の伝送形態に適したデータ形式の符号化データに変換してネットワークに送信する動画像送信装置と、ネットワークから符号化データを受信して符号化ストリームに復元して動画像復号装置に供給する動画像受信装置とが設けられる。
【０１９８】
動画像送信装置は、動画像符号化装置が出力する符号化ストリームをバッファするメモリと、符号化ストリームをパケット化するパケット処理部と、パケット化された符号化データをネットワークを介して送信する送信部とを含む。動画像受信装置は、パケット化された符号化データをネットワークを介して受信する受信部と、受信された符号化データをバッファするメモリと、符号化データをパケット処理して符号化ストリームを生成し、動画像復号装置に提供するパケット処理部とを含む。
【０１９９】
また、以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【０２００】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０２０１】
１００  入力端子、  １０１  減算部、  １０２  直交変換・量子化部、  １０３  予測誤差符号化部、  １０４  逆量子化・逆変換部、  １０５  加算部、  １０６  復号画像メモリ、  １０７  動きベクトル検出部、  １０８  動き補償予測部、  １０９  予測モード判定部、  １１０  動き情報符号化部、  １１１  動き情報メモリ、  １１２  多重化部、  １１３  出力端子、  ６００  入力端子、  ６０１  多重分離部、  ６０２  予測差分情報復号部、  ６０３  逆量子化・逆変換部、  ６０４  加算部、  ６０５  復号画像メモリ、  ６０６  動き情報復号部、  ６０７  動き情報メモリ、  ６０８  動き補償予測部、  ６０９  出力端子、  ９００  動き補償予測生成部、  ９０１  予測誤差算出部、  ９０２  予測ベクトル算出部、  ９０３  差分ベクトル算出部、  ９０４  動き情報符号量算出部、  ９０５  予測モード評価部、  ９０６  結合動き情報算出部、  ９０７  結合動き補償予測生成部、  １０００  結合動き情報候補リスト生成部、  １００１  結合動き情報候補リスト削除部、  ２４００  動き情報ビットストリーム復号部、  ２４０１  予測ベクトル算出部、  ２４０２  ベクトル加算部、  ２４０３  動き補償予測復号部、  ２４０４  結合動き情報算出部、  ２４０５  結合動き補償予測復号部、  ４７００  動き修正参照画像動きベクトル検出部、  ２９００  結合動き情報候補リスト生成部、  ２９０１  結合動き情報候補リスト削除部、  ２９０２  結合動き情報候補リスト追加部。
【図１】
2013042235.tif 000003
【図２】
2013042235.tif 000004
【図３】
2013042235.tif 000005
【図４】
2013042235.tif 000006
【図５】
2013042235.tif 000007
【図６】
2013042235.tif 000008
【図７】
2013042235.tif 000009
【図８】
2013042235.tif 000010
【図９】
2013042235.tif 000011
【図１０】
2013042235.tif 000012
【図１１】
2013042235.tif 000013
【図１２】
2013042235.tif 000014
【図１３】
2013042235.tif 000015
【図１４】
2013042235.tif 000016
【図１５】
2013042235.tif 000017
【図１６】
2013042235.tif 000018
【図１７】
2013042235.tif 000019
【図１８】
2013042235.tif 000020
【図１９】
2013042235.tif 000021
【図２０】
2013042235.tif 000022
【図２１】
2013042235.tif 000023
【図２２】
2013042235.tif 000024
【図２３】
2013042235.tif 000025
【図２４】
2013042235.tif 000026
【図２５】
2013042235.tif 000027
【図２６】
2013042235.tif 000028
【図２７】
2013042235.tif 000029
【図２８】
2013042235.tif 000030
【図２９】
2013042235.tif 000031
【図３０】
2013042235.tif 000032
【図３１】
2013042235.tif 000033
【図３２】
2013042235.tif 000034