(57)【要約】【課題】従来の方法では、予測動きベクトルの予測精度が低下し、符号化効率が良くならないことがあった。【解決手段】予測ベクトルリスト構築部１５３は、空間予測ベクトル候補導出部１５０に導出させた予測動きベクトル候補と、所定のフラグに応じて時間予測ベクトル候補導出部１５２および空間スケーリング予測ベクトル候補導出部１５１のいずれか一方に導出させた予測動きベクトル候補とから、予測動きベクトル候補リストを構築する。予測動きベクトル決定部１３１は、予測動きベクトル候補リストから１つの予測動きベクトル候補を選択し、符号化対象ブロックの予測動きベクトルとする。符号列生成部１０４は、選択された予測ベクトル候補を予測動きベクトル候補リストにおいて特定するための情報を、符号化対象ブロックの動きベクトルと予測動きベクトルとの差分ベクトルとともに符号化する。【選択図】図２２
2013145972.tif 000002
【特許請求の範囲】
【請求項１】
動き補償予測を行う画像符号化装置であって、
符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルを予測動きベクトル候補とする空間予測動きベクトル候補導出部と、
前記符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する空間スケーリング予測動きベクトル候補導出部と、
前記符号化対象ブロックのあるピクチャとは別の符号化済みのピクチャのブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する時間予測動きベクトル候補導出部と、
前記空間予測動きベクトル候補導出部に導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出部および前記空間スケーリング予測動きベクトル候補導出部のいずれか一方に導出させた予測動きベクトル候補とから、予測動きベクトル候補リストを構築する予測動きベクトル候補リスト構築部と、
前記予測動きベクトル候補リストから１つの予測動きベクトル候補を選択し、前記符号化対象ブロックの予測動きベクトルとする予測動きベクトル選択部と、
前記選択された予測ベクトル候補を前記予測動きベクトル候補リストにおいて特定するための情報を、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルとの差分ベクトルとともに符号化する符号化部とを含み、
前記予測動きベクトル候補リスト構築部は、
所定のフラグが所定値であれば、前記空間予測動きベクトル候補導出部に導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出部に導出させずに前記空間スケーリング予測動きベクトル候補導出部に導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築し、
前記所定のフラグが所定値でなければ、前記空間予測動きベクトル候補導出部に導出させた予測動きベクトル候補と、前記空間スケーリング予測動きベクトル候補導出部に導出させずに前記時間予測動きベクトル候補導出部に導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築することを特徴とする画像符号化装置。
【請求項２】
動き補償予測を行う画像符号化方法であって、
符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルを予測動きベクトル候補とする空間予測動きベクトル候補導出ステップと、
前記符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する空間スケーリング予測動きベクトル候補導出ステップと、
前記符号化対象ブロックのあるピクチャとは別の符号化済みのピクチャのブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する時間予測動きベクトル候補導出ステップと、
前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出ステップおよび前記空間スケーリング予測動きベクトル候補導出ステップのいずれか一方に導出させた予測動きベクトル候補とから、予測動きベクトル候補リストを構築する予測動きベクトル候補リスト構築ステップと、
前記予測動きベクトル候補リストから１つの予測動きベクトル候補を選択し、前記符号化対象ブロックの予測動きベクトルとする予測動きベクトル選択ステップと、
前記選択された予測ベクトル候補を前記予測動きベクトル候補リストにおいて特定するための情報を、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルとの差分ベクトルとともに符号化する符号化ステップとを含み、
前記予測動きベクトル候補リスト構築ステップは、
所定のフラグが所定値であれば、前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出ステップに導出させずに前記空間スケーリング予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築し、
前記所定のフラグが所定値でなければ、前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記空間スケーリング予測動きベクトル候補導出ステップに導出させずに前記時間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築することを特徴とする画像符号化方法。
【請求項３】
動き補償予測を行う画像符号化プログラムであって、
符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルを予測動きベクトル候補とする空間予測動きベクトル候補導出ステップと、
前記符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する空間スケーリング予測動きベクトル候補導出ステップと、
前記符号化対象ブロックのあるピクチャとは別の符号化済みのピクチャのブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する時間予測動きベクトル候補導出ステップと、
前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出ステップおよび前記空間スケーリング予測動きベクトル候補導出ステップのいずれか一方に導出させた予測動きベクトル候補とから、予測動きベクトル候補リストを構築する予測動きベクトル候補リスト構築ステップと、
前記予測動きベクトル候補リストから１つの予測動きベクトル候補を選択し、前記符号化対象ブロックの予測動きベクトルとする予測動きベクトル選択ステップと、
前記選択された予測ベクトル候補を前記予測動きベクトル候補リストにおいて特定するための情報を、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルとの差分ベクトルとともに符号化する符号化ステップとをコンピュータに実行させ、
前記予測動きベクトル候補リスト構築ステップは、
所定のフラグが所定値であれば、前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出ステップに導出させずに前記空間スケーリング予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築し、
前記所定のフラグが所定値でなければ、前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記空間スケーリング予測動きベクトル候補導出ステップに導出させずに前記時間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築することを特徴とする画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動き補償予測を用いた動画像符号化技術に関し、特に動き補償予測で利用する動き情報を符号化する画像符号化装置、画像符号化方法および画像符号化プログラムに関する。
【背景技術】
【０００２】
一般的な動画像圧縮符号化では動き補償予測が利用される。動き補償予測は、対象画像を細かいブロックに分割し、復号済みの画像を参照画像として、動きベクトルで示される動き量に基づいて、対象画像の処理対象ブロックから参照画像の参照ブロックに移動した位置の信号を予測信号として生成する技術である。動き補償予測には１本の動きベクトルを利用して単予測に行うものと、２本の動きベクトルを利用して双予測に行うものがある。
【０００３】
動きベクトルについては、処理対象ブロックに隣接する符号化済みのブロックの動きベクトルを予測動きベクトル（単に「予測ベクトル」ともいう）とし、処理対象ブロックの動きベクトルと予測ベクトルとの差分を求め、差分ベクトルを符号化ベクトルとして伝送することで圧縮効率を向上させている。
【０００４】
ＭＰＥＧ−４ＡＶＣ／Ｈ．２６４（以下、ＡＶＣ）のような動画像圧縮符号化では、動き補償予測を行うブロックサイズを細かく且つ多様にすることで、精度の高い動き補償予測を可能としている。一方、ブロックサイズを小さくすることで、符号化ベクトルの符号量は大きくなる問題があった。
【０００５】
そこで、ＡＶＣでは、時間方向の動きの連続性に着目し、処理対象ブロックと同一位置にある参照画像のブロックが有する動きベクトルをスケーリングして処理対象ブロックの動きベクトルとして利用することで、符号化ベクトルを伝送することなく動き補償予測を実現する時間ダイレクト動き補償予測が用いられている。
【０００６】
また、特許文献１では、空間方向の動きの連続性に着目し、処理対象ブロックに隣接する処理済みのブロックが有する動きベクトルを処理対象ブロックの動きベクトルとして利用して、符号化ベクトルを伝送することなく動き補償予測を実現する方法が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１０−２７６４３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、ＡＶＣや特許文献１に記載された方法では、予測ベクトルが１つとダイレクトモードが１つしか得られないため、画像によっては予測動きベクトルの予測精度が低下し、符号化効率が良くならない場合もある。
【０００９】
このような状況下、本発明者らは、動き補償予測を使用する動画像符号化方式において、符号化情報をより一層圧縮し、全体の符号量を削減する必要性を認識するに至った。
【００１０】
本発明はこうした状況に鑑みてなされたものであり、その目的は、複数の予測動きベクトルの候補を導出することにより、差分動きベクトルの符号量の削減を図って符号化効率を向上させる動画像符号化技術を提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明のある態様の画像符号化装置は、動き補償予測を行う画像符号化装置であって、符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルを予測動きベクトル候補とする空間予測動きベクトル候補導出部（１５０）と、前記符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する空間スケーリング予測動きベクトル候補導出部（１５１）と、前記符号化対象ブロックのあるピクチャとは別の符号化済みのピクチャのブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する時間予測動きベクトル候補導出部（１５２）と、前記空間予測動きベクトル候補導出部（１５０）に導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出部（１５２）および前記空間スケーリング予測動きベクトル候補導出部（１５１）のいずれか一方に導出させた予測動きベクトル候補とから、予測動きベクトル候補リストを構築する予測動きベクトル候補リスト構築部（１５３）と、前記予測動きベクトル候補リストから１つの予測動きベクトル候補を選択し、前記符号化対象ブロックの予測動きベクトルとする予測動きベクトル選択部（１３１）と、前記選択された予測ベクトル候補を前記予測動きベクトル候補リストにおいて特定するための情報を、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルとの差分ベクトルとともに符号化する符号化部（１０４）とを含む。前記予測動きベクトル候補リスト構築部（１５３）は、所定のフラグが所定値であれば、前記空間予測動きベクトル候補導出部（１５０）に導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出部（１５２）に導出させずに前記空間スケーリング予測動きベクトル候補導出部（１５１）に導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築し、前記所定のフラグが所定値でなければ、前記空間予測動きベクトル候補導出部（１５０）に導出させた予測動きベクトル候補と、前記空間スケーリング予測動きベクトル候補導出部（１５１）に導出させずに前記時間予測動きベクトル候補導出部（１５２）に導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築する。
【００１２】
本発明の別の態様は、画像符号化方法である。この方法は、動き補償予測を行う画像符号化方法であって、符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルを予測動きベクトル候補とする空間予測動きベクトル候補導出ステップと、前記符号化対象ブロックに隣接する複数の符号化済みブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する空間スケーリング予測動きベクトル候補導出ステップと、前記符号化対象ブロックのあるピクチャとは別の符号化済みのピクチャのブロックのいずれかの動きベクトルをスケーリングして予測動きベクトル候補を導出する時間予測動きベクトル候補導出ステップと、前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出ステップおよび前記空間スケーリング予測動きベクトル候補導出ステップのいずれか一方に導出させた予測動きベクトル候補とから、予測動きベクトル候補リストを構築する予測動きベクトル候補リスト構築ステップと、前記予測動きベクトル候補リストから１つの予測動きベクトル候補を選択し、前記符号化対象ブロックの予測動きベクトルとする予測動きベクトル選択ステップと、前記選択された予測ベクトル候補を前記予測動きベクトル候補リストにおいて特定するための情報を、前記符号化対象ブロックの動きベクトルと前記予測動きベクトルとの差分ベクトルとともに符号化する符号化ステップとを含む。前記予測動きベクトル候補リスト構築ステップは、所定のフラグが所定値であれば、前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記時間予測動きベクトル候補導出ステップに導出させずに前記空間スケーリング予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築し、前記所定のフラグが所定値でなければ、前記空間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補と、前記空間スケーリング予測動きベクトル候補導出ステップに導出させずに前記時間予測動きベクトル候補導出ステップに導出させた予測動きベクトル候補とから、前記予測動きベクトル候補リストを構築する。
【００１３】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１４】
本発明によれば、複数の予測動きベクトルの候補を導出して差分動きベクトルの符号量を削減することができる。
【図面の簡単な説明】
【００１５】
【図１】図１（ａ）、（ｂ）は、符号化ブロックを説明する図である。
【図２】図２（ａ）〜（ｄ）は、予測ブロックサイズタイプを説明する図である。
【図３】予測ブロックサイズタイプを説明する図である。
【図４】予測符号化モードを説明する図である。
【図５】マージインデックスと符号列の関係を説明する図である。
【図６】予測ブロックのシンタックスの一例を説明する図である。
【図７】実施の形態１に係る動画像符号化装置の構成を示す図である。
【図８】図７の動き情報生成部の構成を示す図である。
【図９】図８のマージモード決定部の構成を説明する図である。
【図１０】マージモード決定部の動作を説明するフローチャートである。
【図１１】図９の結合動き情報候補リスト生成部の構成を説明する図である。
【図１２】図９の結合動き情報候補リスト生成部の動作を説明するフローチャートである。
【図１３】予測ブロックの空間候補ブロック群について説明する図である。
【図１４】図１１の空間結合動き情報候補導出部の動作を説明するフローチャートである。
【図１５】空間結合動き情報候補最大数の設定の動作を説明するフローチャートである。
【図１６】図１１の時間結合動き情報候補導出部の動作を説明するフローチャートである。
【図１７】図１１の第１結合動き情報候補補充部の動作を説明するフローチャートである。
【図１８】組み合わせ検査回数と結合動き情報候補Ｍと結合動き情報候補Ｎの関係を説明する図である。
【図１９】図１１の第２結合動き情報候補補充部の動作を説明するフローチャートである。
【図２０】予測ベクトルモード決定部の構成を示す図である。
【図２１】予測ベクトルモード決定部の動作を示すフローチャートである。
【図２２】予測ベクトル候補リスト生成部の構成を説明する図である。
【図２３】予測ベクトル候補リスト生成部の動作を説明するフローチャートである。
【図２４】空間予測ベクトル候補導出部の動作を説明するフローチャートである。
【図２５】空間スケーリング予測ベクトル候補導出部の動作を説明するフローチャートである。
【図２６】時間予測ベクトル候補導出部の動作を説明するフローチャートである。
【図２７】実施の形態１に係る動画像復号装置の構成を示す図である。
【図２８】図２７の動き情報再生部の構成を示す図である。
【図２９】図２８の結合動き情報再生部の構成を示す図である。
【図３０】結合動き情報再生部の動作を説明する図である。
【図３１】動きベクトル再生部の構成を説明する図である。
【図３２】動きベクトル再生部の動作を説明する図である。
【図３３】最大符号化ブロック境界で動き情報が半分に間引いて記憶される場合に空間結合動き情報候補最大数を大きくすることが有効となることを説明する図である。
【図３４】実施の形態３のスライスヘッダのシンタックスを説明する図である。
【図３５】実施の形態３におけるマージ候補最大数を決定する動作を説明するフローチャートである。
【図３６】マージ候補最大数が小さい方に符号化効率が向上する一例を説明する図である。
【図３７】実施の形態４の結合動き情報候補リスト生成部の構成を説明する図である。
【図３８】実施の形態４の結合動き情報候補リスト生成部の動作を説明するフローチャートである。
【発明を実施するための形態】
【００１６】
まず、本発明の実施の形態の前提となる技術を説明する。
【００１７】
現在、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）などの符号化方式に準拠した装置およびシステムが普及している。そのような符号化方式では、時間軸上に連続する複数の画像をデジタル信号の情報として取り扱う。その際、効率の高い情報の放送、伝送または蓄積などを目的とし、画像を複数のブロックに分割して時間方向の冗長性を利用した動き補償予測、および空間方向の冗長性を利用した離散コサイン変換などの直交変換を用いて圧縮符号化する。
【００１８】
２００３年に、国際標準化機構（ＩＳＯ）と国際電気標準会議（ＩＥＣ）のジョイント技術委員会（ＩＳＯ／ＩＥＣ）と、国際電気通信連合電気通信標準化部門（ＩＴＵ−Ｔ）の共同作業によってＡＶＣと呼ばれる符号化方式（ＩＳＯ／ＩＥＣでは１４４９６−１０、ＩＴＵ−ＴではＨ．２６４の規格番号がつけられている）が国際標準として制定された。ＡＶＣでは、基本的に処理対象ブロックの複数の隣接ブロックの動きベクトルの中央値を予測ベクトルとする。予測ブロックサイズが正方形でない場合で処理対象ブロックの特定の隣接ブロックの参照インデックスと処理対象ブロックの参照インデックスが一致する場合には、その特定の隣接ブロックの動きベクトルを予測ベクトルとする。
【００１９】
現在、国際標準化機構（ＩＳＯ）と国際電気標準会議（ＩＥＣ）のジョイント技術委員会（ＩＳＯ／ＩＥＣ）と、国際電気通信連合電気通信標準化部門（ＩＴＵ−Ｔ）の共同作業によってＨＥＶＣと呼ばれる符号化方式の標準化が検討されている。
【００２０】
ＨＥＶＣの標準化では、処理対象のブロックの複数の隣接ブロックと復号済みの別の画像のブロックを候補ブロックとして、これら候補ブロック群で構成される候補ブロック群から１つの候補ブロックが選択されて、選択された候補ブロックの情報が符号化および復号されて、選択された候補ブロックの動き情報が処理対象のブロックの動き情報として利用されるマージモードが検討されている。
また、処理対象のブロックの複数の隣接ブロックと復号済みの別の画像のブロックを候補ブロックとして、これら候補ブロック群で構成される候補ブロック群から１つの候補ブロックが選択されて、選択された候補ブロックの情報が符号化および復号されて、選択された候補ブロックの動きベクトルが処理対象のブロックの予測ベクトルとして利用される予測ベクトルモードが検討されている。
【００２１】
［実施の形態１］
（符号化ブロック）
本実施の形態では、入力された画像信号は最大符号化ブロック単位に分割され、分割された最大符号化ブロックをラスタースキャン順序で処理する。符号化ブロックは階層構造となっており、符号化効率などを考慮して順次４分割することでより小さい符号化ブロックにすることができる。なお、４分割された符号化ブロックはジグザグスキャン順で符号化される。これ以上小さくすることのできない符号化ブロックを最小符号化ブロックと呼ぶ。符号化ブロックは符号化の単位となり、最大符号化ブロックも分割回数が０である場合は符号化ブロックとなる。本実施の形態では、最大符号化ブロックを６４画素×６４画素、最小符号化ブロックを８画素×８画素とする。
【００２２】
図１（ａ）、（ｂ）は、符号化ブロックを説明するための図である。図１（ａ）の例では、符号化ブロックが１０個に分割されている。ＣＵ０、ＣＵ１およびＣＵ９は３２画素×３２画素の符号化ブロック、ＣＵ２、ＣＵ３およびＣＵ８は１６画素×１６画素の符号化ブロック、ならびにＣＵ４、ＣＵ５、ＣＵ６およびＣＵ７は８画素×８画素の符号化ブロックとなっている。図１（ｂ）の例では、符号化ブロックが１個に分割されている。
【００２３】
（予測ブロック）
本実施の形態では、符号化ブロックはさらに予測ブロック（パーティションともいう）に分割される。符号化ブロックは予測ブロックサイズタイプ（分割タイプやパーティションタイプともいう）によって１以上の予測ブロックに分割される。図２（ａ）〜（ｄ）は、予測ブロックサイズタイプを説明するための図である。図２（ａ）は符号化ブロックを分割しない２Ｎ×２Ｎ、図２（ｂ）は水平に２分割する２Ｎ×Ｎ、図２（ｃ）は垂直に２分割するＮ×２Ｎ、および図２（ｄ）は水平と垂直に４分割するＮ×Ｎを示す。２Ｎ×２Ｎは１個の予測ブロック０、２Ｎ×ＮとＮ×２Ｎは２個の予測ブロック０と予測ブロック１、Ｎ×Ｎは４個の予測ブロック０、予測ブロック１、予測ブロック２、予測ブロック３からなる。予測ブロック０、予測ブロック１、予測ブロック２、予測ブロック３の順に符号化される。
【００２４】
図３は、符号化ブロックの分割回数と予測ブロックサイズタイプによる予測ブロックサイズを説明するための図である。本実施の形態における予測ブロックサイズは、ＣＵ分割回数が０であって予測ブロックサイズタイプが２Ｎ×２Ｎである６４画素×６４画素からＣＵ分割回数が３であって予測ブロックサイズタイプＮ×Ｎである４画素×４画素までの１３の予測ブロックサイズが存在することになる。例えば、符号化ブロックを非対称に水平や垂直に２分割することもできる。
【００２５】
本実施の形態では、最大符号化ブロックを６４画素×６４画素、最小符号化ブロックを８画素×８画素とするが、この組み合わせに限定されない。また、予測ブロックの分割のパターンを図２（ａ）〜（ｄ）としたが、１以上に分割される組み合わせであればよくこれに限定されない。
【００２６】
（ピクチャとスライス）
ピクチャとスライスはＡＶＣなどで利用されている一般的な概念であるためここでは説明は省略する。また、Ｉピクチャ、Ｐピクチャ、Ｂピクチャ、Ｉスライス、Ｐスライス、Ｂスライスについても一般的な概念であるためここでは説明は省略する。以下、画像はピクチャといいかえてもよい。
【００２７】
（予測符号化モード）
本実施の形態では、動き補償予測や符号化ベクトル数を予測ブロック毎に切り替えることが可能となっている。ここで、動き補償予測と符号化ベクトル数を関連付けた予測符号化モードの一例について図４を用いて簡単に説明する。図４は、予測符号化モードを説明するための図である。
【００２８】
図４に示す予測符号化モードには、動き補償予測の予測方向が単予測（Ｌ０予測）であって符号化ベクトル数が１であるＰｒｅｄＬ０、動き補償予測の予測方向が単予測（Ｌ１予測）であって符号化ベクトル数が１であるＰｒｅｄＬ１、動き補償予測の予測方向が双予測（ＢＩ予測）であって符号化ベクトル数が２であるＰｒｅｄＢＩ、および動き補償予測の予測方向が単予測（Ｌ０予測／Ｌ１予測）または双予測（ＢＩ予測）であって符号化ベクトル数が０であるマージモード（ＭＥＲＧＥ）がある。また、動き補償予測を実施しない予測符号化モードであるイントラモード（Ｉｎｔｒａ）もある。ここで、ＰｒｅｄＬ０、ＰｒｅｄＬ１、およびＰｒｅｄＢＩが予測ベクトルモードとなる。
【００２９】
マージモードでは予測方向がＬ０予測／Ｌ１予測／ＢＩ予測のいずれにもなるが、それは、マージモードの予測方向は候補ブロック群から選択された候補ブロックの予測方向をそのまま引き継ぐか、復号済みの情報から導出されるためである。また、マージモードでは符号化ベクトルが符号化されない。これは、マージモードの符号化ベクトルは候補ブロック群から選択された候補ブロックの動きベクトルをそのまま引き継ぐか、あらかじめ定められた規則によって導出されるためである。
【００３０】
（参照インデックス）
本実施の形態では、動き補償予測の精度向上のために、動き補償予測において複数の参照画像の中から最適な参照画像を選択することを可能とする。そのため、動き補償予測で利用した参照画像を参照画像インデックスとして符号化ベクトルとともに符号化する。動き補償予測で利用される参照画像インデックスは０以上の数値となる。参照インデックスには、参照インデックスＬ０（Ｌ０予測の参照インデックスともいう）と参照インデックスＬ１（Ｌ１予測の参照インデックスともいう）がある。動き補償予測が単予測であれば、参照インデックスは参照インデックスＬ０または参照インデックスＬ１のいずれか１つ利用され、動き補償予測が双予測であれば、参照インデックスＬ０と参照インデックスＬ１の２つの参照インデックスが利用される（図４）。
【００３１】
マージモードでは参照インデックスは符号化されない。これは、マージモードの参照インデックスは候補ブロック群から選択された候補ブロックの参照インデックスをそのまま引き継ぐか、あらかじめ定められた規則によって導出されるためである。
【００３２】
（参照ピクチャリスト）
本実施の形態では、動き補償予測で利用できる１以上の参照画像を参照ピクチャリスト内に登録しておき、参照ピクチャリスト内に登録された参照画像を参照インデックスで示すことによって参照画像を確定させて動き補償予測で利用する。参照ピクチャリストには、参照ピクチャリストＬ０（Ｌ０予測の参照ピクチャリストともいう）と参照ピクチャリストＬ１（Ｌ１予測の参照ピクチャリストともいう）がある。動き補償予測が単予測の場合は、参照ピクチャリストＬ０の中の参照画像を用いたＬ０予測、または参照ピクチャリストＬ１の中の参照画像を用いたＬ１予測のいずれかを利用する。双予測の場合は参照ピクチャリストＬ０と参照ピクチャリストＬ１の２つを利用したＢＩ予測を利用する。
【００３３】
参照ピクチャリストの生成の詳細についてはＡＶＣと同様に生成されるものとしてここでは説明しない。
【００３４】
なお、参照インデックスＬ０は参照ピクチャリストＬ０の参照画像を示し、参照インデックスＬ１は参照ピクチャリストＬ１の参照画像を示す。
【００３５】
（マージインデックス）
本実施の形態では、マージモードの場合には、処理対象画像内の複数の隣接ブロックおよび符号化済みの別の画像内の処理対象の予測ブロックと同一位置にある同一位置予測ブロック内と同一位置予測ブロックの周辺にあるブロックを候補ブロック群として、候補ブロック群の中から最適な予測符号化モード、動きベクトル、及び参照インデックスを持つ候補ブロックを選択し、選択した候補ブロックを示すためのマージインデックスを符号化および復号する。マージモードのときのみマージインデックスが１つ利用される（図４）。
【００３６】
ここでは、マージインデックスの最大個数（マージ候補最大数ともいう）はスライスヘッダで指定されるものとする。マージ候補最大数については後述する。なお、マージ候補最大数が５の場合のマージインデックスは０から４までの整数となる。
【００３７】
以降、マージインデックスの対象となる候補ブロックの動き情報を結合動き情報候補と呼び、結合動き情報候補の集合体を結合動き情報候補リストと呼ぶ。以降、動き情報とは予測方向、動きベクトル、及び参照インデックスを含む。
【００３８】
次に、マージインデックスと符号列の関係について説明する。図５はマージ候補最大数が５である場合のマージインデックスと符号列の関係を説明するための図である。マージインデックスの符号列としてＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いる。マージインデックスが０の場合の符号列は'０'、マージインデックスが１の場合の符号列は'１０'、マージインデックスが２の場合の符号列は'１１０'、マージインデックスが３の場合の符号列は'１１１０'、マージインデックスが４の場合の符号列は'１１１１'となり、マージインデックスが小さくなるほど符号列が短くなるように設定される。そのため、選択率の高い候補ブロックに小さいマージインデックスを割り当てることで、符号化効率を向上させることができる。
【００３９】
マージ候補最大数が４である場合は、マージインデックスが０の場合の符号列は'０'、マージインデックスが１の場合の符号列は'１０'、マージインデックスが２の場合の符号列は'１１０'、マージインデックスが３の場合の符号列は'１１１'となる。マージ候補最大数が３である場合は、マージインデックスが０の場合の符号列は'０'、マージインデックスが１の場合の符号列は'１０'、マージインデックスが２の場合の符号列は'１１'となる。マージ候補最大数が２である場合は、マージインデックスが０の場合の符号列は'０'、マージインデックスが１の場合の符号列は'１'となる。マージ候補最大数が１である場合は、マージインデックスが０は符号化ストリーム中には符号化されず、復号時にはマージインデックスは暗黙的に０として処理される。
【００４０】
次に、結合動き情報候補リストとマージインデックスの関係について説明する。マージインデックス０は結合動き情報候補リスト内の最初（０番目）の結合動き情報候補を示す。以下、マージインデックスｍは結合動き情報候補リスト内のｍ番目の結合動き情報候補を示す。ここで、ｍは０から（マージ候補最大数−１）の整数となる。
【００４１】
（予測ベクトルインデックス）
本実施の形態では、予測ベクトルの精度を向上させるために、処理対象画像内の複数の隣接ブロックおよび符号化済みの別の画像の処理対象ブロックと同一位置にある同一位置予測ブロック内と同一位置予測ブロックの周辺にあるブロックを候補ブロック群として、候補ブロック群から予測ベクトルとして最適な動きベクトルを持つ候補ブロックを選択し、選択した候補ブロックを示すための予測ベクトルインデックスを符号化および復号する。動き補償予測が単予測であれば、予測ベクトルインデックスは１つ利用され、動き補償予測が双予測であれば、２つの予測ベクトルインデックスが利用される（図４）。予測ベクトルインデックスの最大数（予測ベクトル候補最大数ともいう）は２であり、予測ベクトルインデックスは０または１の整数となる。ここでは、予測ベクトル候補最大数を２としたが、２以上であればよく、これに限定されない。
【００４２】
次に、予測ベクトルインデックスと符号列の関係について説明する。予測ベクトルインデックスの符号列としてＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列を用いる。
予測ベクトルインデックスの符号列は予測ベクトルインデックスが０の場合の符号列は'０'、予測ベクトルインデックスが１の場合の符号列は'１'とする。
【００４３】
以降、予測ベクトルインデックスの対象となる候補ブロックの動きベクトルを予測ベクトル候補と呼び、予測ベクトル候補の集合体を予測ベクトル候補リストと呼ぶ。予測ベクトルインデックス０は予測ベクトル候補リスト内の最初（０番目）の予測ベクトル候補を示す。以下、予測ベクトルインデックスｍは予測ベクトル候補リスト内のｍ番目の予測ベクトル候補を示す。ここで、ｍは０から（予測ベクトル候補最大数−１）の整数となる。
【００４４】
（ＰＯＣ）
本発明の実施の形態では、画像の時間情報（距離情報）としてＰＯＣ（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ）を用いる。ＰＯＣはＡＶＣで定義された画像の表示順序を示すカウンタである。ここでは、画像の表示順序が１増加するとＰＯＣも１増加するとする。したがって、画像間のＰＯＣ差から画像間の時間差（距離）を取得できる。
【００４５】
（シンタックス）
本実施の形態による予測ブロックのシンタックスの一例について説明する。図６は本実施の形態に係るシンタックスを説明する図である。図６はＰＰＳ（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、スライスヘッダ（Ｓｌｉｃｅ  Ｈｅａｄｅｒ）、符号化木（Ｃｏｄｉｎｇ  Ｔｒｅｅ）、符号化ブロック（Ｃｏｄｉｎｇ  Ｕｎｉｔ）、及び予測ブロック（Prediction Unit）のシンタックス構成の一例を示す。
【００４６】
ＰＰＳはピクチャの特性を決定するためのパラメータ群を定義するパラメータセットである。ＰＰＳには時間候補利用許可フラグ（enable_temporal_mvp_flag）が設置される。時間候補利用許可フラグは０または１の値を1ビットの符号であって、ＣｏｌＰｉｃ上の動きベクトルと参照インデックスの利用を制限するためのフラグである。時間候補利用許可フラグが1であれば、ＣｏｌＰｉｃ上の動きベクトルと参照インデックスが利用可能となり、時間候補利用許可フラグが０であれば、ＣｏｌＰｉｃ上の動きベクトルと参照インデックスは利用不可能となる。
【００４７】
スライスヘッダはスライスの特性を決定するためのパラメータ群を定義したヘッダである。スライスヘッダにはＰＯＣと5_minus_max_num_merge_candsが設置される。5_minus_max_num_merge_candsはマージ候補最大数を決定するためのパラメータであって、０から４までの整数となる。マージ候補最大数（ＭａｘＮｕｍＭｅｒｇｅＣａｎｄ）は５から5_minus_max_num_merge_candsを減算することで算出される。5_minus_max_num_merge_candsの符号列にはＴｒｕｎｃａｔｅｄ  Ｕｎａｒｙ符号列が用いられるとする。以下、5_minus_max_num_merge_candsは０で、マージ候補最大数は５とする。
【００４８】
符号化木では符号化ブロックの分割情報が管理される。符号化木にはsplit_coding_unit_flagが設置され、split_coding_unit_flagが1であれば符号化木は４個の符号化木に分割される。split_coding_unit_flagが０であれば符号化木は符号化ブロックとなる。
【００４９】
符号化ブロックには、スキップモードフラグ（skip_flag）、予測モード（pred_mode）と予測ブロックサイズタイプ（part_mode）が設置され、スキップモードフラグと予測ブロックサイズタイプに応じて１個または２個または４個の予測ブロックに分割される。
【００５０】
予測モードはイントラ予測（画面内予測）を行う符号化ブロックであるかインター予測（動き補償予測）を行う符号化ブロックであるかを示す。スキップモードフラグが１である場合はスキップモードとなって、スキップモードは１個の予測ブロックを持つ。符号化ブロック（符号化木）の分割回数は符号化ブロック（符号化木）の深さともいう。
【００５１】
予測ブロックには、マージフラグ（ｍｅｒｇｅ＿ｆｌａｇ）、マージインデックス（ｍｅｒｇｅ＿ｉｄｘ）、インター予測タイプ（ｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅ）、Ｌ０予測の参照インデックス（ｒｅｆ＿ｉｄｘ＿ｌ０）、Ｌ０予測の差分ベクトル（ｍｖｄ＿ｌ０［０］、ｍｖｄ＿ｌ０［１］）、Ｌ０予測の予測ベクトルインデックス（ｍｖｐ＿ｉｄｘ＿ｌ０）、Ｌ１予測の参照インデックス（ｒｅｆ＿ｉｄｘ＿ｌ１）、Ｌ１予測の差分ベクトル（ｍｖｄ＿ｌ１［０］、ｍｖｄ＿ｌ１［１］）、及びＬ１予測の予測ベクトルインデックス（ｍｖｐ＿ｉｄｘ＿ｌ１）が設置されている。差分ベクトルの［０］は水平成分、［１］は垂直成分を示す。
【００５２】
ここで、ｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅは動き補償予測の予測方向（インター予測タイプとも呼ぶ）を示し、Ｐｒｅｄ＿Ｌ０（Ｌ０予測の単予測）、Ｐｒｅｄ＿Ｌ１（Ｌ１予測の単予測）およびＰｒｅｄ＿ＢＩ（ＢＩ予測の双予測）の３種類がある。ｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅがＰｒｅｄ＿Ｌ０またはＰｒｅｄ＿ＢＩの場合は、Ｌ０予測に関する情報が設置されて、ｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅがＰｒｅｄ＿Ｌ１またはＰｒｅｄ＿ＢＩの場合は、Ｌ１予測に関する情報が設置される。Pスライスではｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅは一意にＰｒｅｄ＿Ｌ０となるため、ｉｎｔｅｒ＿ｐｒｅｄ＿ｔｙｐｅは省略される。
【００５３】
また、スキップモードの場合、予測ブロックはインター予測を行う符号化ブロックであって、予測符号化モードとしてはマージモードとなる。そのため、スキップモードの場合はマージインデックスが設置される。
【００５４】
なお、本実施の形態に係るシンタックスを図６のように設定したが、符号化ブロックや予測ブロックが複数のブロックサイズを有し、マージモードと予測ベクトルモードが利用できればよく、これに限定されない。
【００５５】
以下、図面とともに本発明の好適な実施の形態に係る動画像符号化装置、動画像符号化方法および動画像符号化プログラム、ならびに動画像復号装置、動画像復号方法および動画像復号プログラムの詳細について説明する。なお、図面の説明において同一要素には同一符号を付与して重複する説明を省略する。
【００５６】
（動画像符号化装置１００の構成）
図７は、本実施の形態１に係る動画像符号化装置１００の構成を示す。動画像符号化装置１００は、動画像信号を、動き補償予測を実施する予測ブロック単位で符号化する装置である。マージ候補最大数の決定、参照ピクチャリストの生成、符号化ブロックの分割、スキップモードの決定、予測ブロックサイズタイプの決定、予測ブロックサイズと予測ブロックの符号化ブロック内の位置（予測ブロックの位置情報や予測ブロック番号ともいう）の決定、予測符号化モードがイントラであるかの決定は動画像符号化装置１００の外部の符号化制御部１１２で決定されて動画像符号化装置１００に供給される。実施の形態１では予測符号化モードがイントラでない場合について説明する。また、実施の形態１では特に断らない限り、双予測に対応したＢピクチャ（Ｂスライス）について説明するが、双予測に対応しないＰピクチャ（Pスライス）についてはＬ１予測を省略すればよい。
【００５７】
動画像符号化装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、フレームメモリ、ハードディスクなどを備える情報処理装置などのハードウェアにより実現される。動画像符号化装置１００は、上記の構成要素が動作することにより、以下に説明する機能的な構成要素を実現する。なお、参照ピクチャリスト、処理対象の予測ブロックの位置情報、予測ブロックサイズおよび動き補償予測の予測方向に関しては動画像符号化装置１００内で共有していることとし、図示しない。
【００５８】
実施の形態１の動画像符号化装置１００は、予測ブロック画像取得部１０１、減算部１０２、予測誤差符号化部１０３、符号列生成部１０４、予測誤差復号部１０５、動き補償部１０６、加算部１０７、動きベクトル検出部１０８、動き情報生成部１０９、フレームメモリ１１０、および動き情報メモリ１１１を含む。
【００５９】
（動画像符号化装置１００の機能と動作）
以下、各部の機能と動作について説明する。予測ブロック画像取得部１０１は、予測ブロックの位置情報と予測ブロックサイズに基づいて、端子１０より供給される画像信号から処理対象の予測ブロックの画像信号を取得し、予測ブロックの画像信号を減算部１０２、動きベクトル検出部１０８および動き情報生成部１０９に供給する。
【００６０】
動きベクトル検出部１０８は、予測ブロック画像取得部１０１より供給される画像信号および内部に記憶している複数の参照画像に相当する画像信号から、Ｌ０予測とＬ１予測それぞれの動きベクトルと参照画像を示す参照インデックスを検出する。当該Ｌ０予測とＬ１予測の動きベクトル、および当該Ｌ０予測とＬ１予測の参照インデックスを動き情報生成部１０９に供給する。ここでは、動きベクトル検出部１０８は参照画像として内部に記憶している複数の参照画像に相当する画像信号を利用するとしたが、フレームメモリ１１０に記憶されている参照画像を利用することもできる。
【００６１】
一般的な動きベクトルの検出方法は、対象画像の画像信号と、同一位置より所定の移動量だけ移動させた参照画像の予測信号について誤差評価値を算出し、誤差評価値が最小となる移動量を動きベクトルとする。参照画像が複数ある場合には各参照画像について動きベクトルを検出し、誤差評価値が最小となる参照画像を選択する。誤差評価値としては、絶対差分和を示すＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）や二乗誤差平均を示すＭＳＥ（Ｍｅａｎ  Ｓｑｕａｒｅ  Ｅｒｒｏｒ）などを利用することが可能である。また、動きベクトル符号量を誤差評価値に加算して評価することも可能である。
【００６２】
動き情報生成部１０９は、動きベクトル検出部１０８より供給されるＬ０予測とＬ１予測の動きベクトルおよびＬ０予測とＬ１予測の参照インデックス、動き情報メモリ１１１より供給される候補ブロック群、参照インデックスで示されるフレームメモリ１１０内の参照画像、および予測ブロック画像取得部１０１より供給される画像信号から、予測符号化モードを決定する。
【００６３】
決定された予測符号化モードに基づいて、マージフラグ、マージインデックス、動き補償予測の予測方向、Ｌ０予測とＬ１予測の参照インデックス、Ｌ０予測とＬ１予測の差分ベクトルおよびＬ０予測とＬ１予測の予測ベクトルインデックスを必要に応じて、符号列生成部１０４に供給する。動き補償予測の予測方向、Ｌ０予測とＬ１予測の参照インデックス、およびＬ０予測とＬ１予測の動きベクトルを動き補償部１０６および動き情報メモリ１１１に供給する。動き情報生成部１０９の詳細については後述する。
【００６４】
動き補償部１０６は、動き情報生成部１０９より供給される動き補償予測の予測方向がＬＮ予測であれば、動き情報生成部１０９より供給されるＬＮ予測の参照インデックスで示されるフレームメモリ１１０内の参照画像を、動き情報生成部１０９より供給されるＬＮ予測の動きベクトルに基づき動き補償してＬＮ予測の予測信号を生成する。Ｎは０または１である。ここで、動き補償予測の予測方向が双予測であれば、Ｌ０予測とＬ１予測の予測信号の平均値が予測信号となる。なお、Ｌ０予測とＬ１予測の予測信号を重みづけしてもよい。動き補償部１０６は、当該予測信号を減算部１０２に供給する。
【００６５】
減算部１０２は、予測ブロック画像取得部１０１より供給される画像信号と動き補償部１０６より供給される予測信号を減算して予測誤差信号を算出し、当該予測誤差信号を予測誤差符号化部１０３に供給する。
【００６６】
予測誤差符号化部１０３は、減算部１０２より供給される予測誤差信号に対して、直交変換や量子化などの処理を行って予測誤差符号化データを生成し、当該予測誤差符号化データを符号列生成部１０４および予測誤差復号部１０５に供給する。
【００６７】
符号列生成部１０４は、予測誤差符号化部１０３より供給される予測誤差符号化データ、ならびに動き情報生成部１０９より供給されるマージフラグ、マージインデックス、動き補償予測の予測方向（インター予測タイプ）、Ｌ０予測とＬ１予測の参照インデックス、Ｌ０予測とＬ１予測の差分ベクトルおよびＬ０予測とＬ１予測の予測ベクトルインデックスを図６に示すシンタックスの順序に従ってエントロピー符号化して符号列を生成し、当該符号列を符号化ストリームとして端子１１に供給する。エントロピー符号化は算術符号化やハフマン符号化などの可変長符号化を含む方法によって実施される。
【００６８】
また、符号列生成部１０４は、動画像符号化装置１００で利用された符号化ブロックの分割情報、予測ブロックサイズタイプ、予測ブロックの符号化ブロック内の位置、及び予測符号化モードを、符号化ストリームの特性を決定するためのパラメータ群を定義したＳＰＳ（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、ピクチャの特性を決定するためのパラメータ群を定義したＰＰＳ（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、やスライスの特性を決定するためのパラメータ群を定義したスライスヘッダなどと共に符号化ストリーム中に多重化する。
【００６９】
予測誤差復号部１０５は、予測誤差符号化部１０３より供給される予測誤差符号化データに対して、逆量子化や逆直交変換などの処理を行って予測誤差信号を生成し、当該予測誤差信号を加算部１０７に供給する。加算部１０７は、予測誤差復号部１０５より供給される予測誤差信号と、動き補償部１０６より供給される予測信号を加算して復号画像信号を生成し、当該復号画像信号をフレームメモリ１１０に供給する。
【００７０】
フレームメモリ１１０は、加算部１０７より供給される復号画像信号を記憶する。また、画像全体の復号が完了した復号画像については参照画像として、当該参照画像のＰＯＣと共に１以上の所定の画像数を記憶する。フレームメモリ１１０は、記憶した参照画像信号を動き補償部１０６および動き情報生成部１０９に供給する。参照画像を記憶する記憶領域はＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式で制御される。ここでは、参照画像のＰＯＣをフレームメモリ１１０に記憶するとしたが、参照画像とＰＯＣが一意に認識できればよく、これに限定されない。また、ＰＯＣは動画像符号化装置１００と符号化制御部１１２で共有されているものとして図示しない。
【００７１】
動き情報メモリ１１１は、動き情報生成部１０９より供給される動き情報を最小の予測ブロックサイズ単位で所定の画像数、記憶する。処理対象の予測ブロックの隣接ブロックの動き情報を空間候補ブロック群とする。
【００７２】
また、動き情報メモリ１１１は、処理対象の予測ブロックと同一位置にあるＣｏｌＰｉｃ上の同一位置予測ブロック内とその周辺ブロックの動き情報を時間候補ブロック群とする。動き情報メモリ１１１は、空間候補ブロック群と時間候補ブロック群を候補ブロック群として動き情報生成部１０９に供給する。動き情報メモリ１１１は、フレームメモリ１１０と同期しており、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式で制御される。
【００７３】
ここで、ＣｏｌＰｉｃとは、処理対象の予測ブロックのある画像とは別の復号済みの画像であって、フレームメモリ１１０に参照画像として記憶されている。実施の形態１では、ＣｏｌＰｉｃは処理対象画像の直前に復号した参照画像とする。なお、実施の形態１では、ＣｏｌＰｉｃは処理対象画像の直前に復号した参照画像としたが、復号済みの画像であればよく、例えば、表示順で直前の参照画像や表示順で直後の参照画像でもよく、Ｌ０予測またはＬ１予測の参照ピクチャリストの０番目の参照画像としてもよく、符号化ストリーム中で指定することも可能である。
【００７４】
ここで、動き情報メモリ１１１における動き情報の管理方法について説明する。動き情報は最小の予測ブロック単位で各メモリエリアに記憶される。各メモリエリアには、少なくとも予測方向、Ｌ０予測の動きベクトル、Ｌ０予測の参照インデックス、Ｌ１予測の動きベクトル、およびＬ１予測の参照インデックスが記憶される。
【００７５】
なお、予測符号化モードがイントラモードである場合、Ｌ０予測とＬ１予測の動きベクトルとして（０，０）が記憶され、Ｌ０予測とＬ予測の参照インデックスとして「−１」が記憶される。これ以降、動きベクトルの（Ｈ、Ｖ）は、Ｈが水平成分、Ｖが垂直成分を表すこととする。なお、参照インデックスの「−１」は動き補償予測を実施しないモードであることが判定できればどのような値でもよい。これ以降は特に断らない限り単にブロックと表現する場合には、最小の予測ブロック単位のことを示すこととする。また、領域外のブロックである場合もイントラモードと同様に、Ｌ０予測とＬ１予測の動きベクトルとして（０，０）が記憶され、Ｌ０予測とＬ１予測の参照インデックスとして「−１」が記憶される。ＬＸ方向（Ｘは０または１）が有効であるとはＬＸ方向の参照インデックスが０以上であることで、ＬＸ方向が無効である（有効でない）とはＬＸ方向の参照インデックスが「−１」であることである。
【００７６】
（動き情報生成部１０９の構成）
続いて、動き情報生成部１０９の詳細な構成について説明する。図８は、動き情報生成部１０９の構成を示す。動き情報生成部１０９は、予測ベクトルモード決定部１２０、マージモード決定部１２１および予測符号化モード決定部１２２を含む。端子１２は動き情報メモリ１１１に、端子１３は動きベクトル検出部１０８に、端子１４はフレームメモリ１１０に、端子１５は予測ブロック画像取得部１０１に、端子１６は符号列生成部１０４に、端子５０は動き補償部１０６に、および端子５１は動き情報メモリ１１１にそれぞれ接続されている。
【００７７】
（動き情報生成部１０９の機能と動作）
以下、各部の機能と動作について説明する。予測ベクトルモード決定部１２０は、端子１２より供給される候補ブロック群、端子１３より供給されるＬ０予測とＬ１予測の動きベクトルおよびＬ０予測とＬ１予測の参照インデックス、端子１４より供給される参照インデックスで示される参照画像、および端子１５より供給される画像信号から、インター予測タイプを決定し、インター予測タイプに従って、Ｌ０予測とＬ１予測の予測ベクトルインデックスを選択してＬ０予測とＬ１予測の差分ベクトルを算出するとともに、予測誤差を算出し、レート歪み評価値を算出する。そして、当該インター予測タイプに基づいた動き情報、差分ベクトル、予測ベクトルインデックス、およびレート歪み評価値を予測符号化モード決定部１２２に供給する。予測ベクトルモード決定部１２０の詳細については後述する。
【００７８】
マージモード決定部１２１は、端子１２より供給される候補ブロック群、端子１４より供給される参照画像、および端子１５より供給される画像信号から、結合動き情報候補リストを生成し、当該結合動き情報候補リストの中から１つの結合動き情報候補を選択してマージインデックスを決定し、レート歪み評価値を算出する。そして、当該結合動き情報候補の動き情報、当該マージインデックスおよび当該レート歪み評価値を予測符号化モード決定部１２２に供給する。マージモード決定部１２１の詳細については後述する。
【００７９】
予測符号化モード決定部１２２は、予測ベクトルモード決定部１２０より供給されるレート歪み評価値と、マージモード決定部１２１より供給されるレート歪み評価値とを比較してマージフラグを決定する。
【００８０】
予測ベクトルモードレート歪み評価値がマージモードレート歪み評価値未満の場合は、マージフラグを「０」に設定する。予測符号化モード決定部１２２は、当該マージフラグ、予測ベクトルモード決定部１２０より供給されるインター予測タイプ、参照インデックス、差分ベクトルと予測ベクトルインデックスを端子１６に供給し、予測ベクトルモード決定部１２０より供給される動き情報を端子５０および端子５１に供給する。
【００８１】
マージモードレート歪み評価値が予測ベクトルモードレート歪み評価値以下の場合は、マージフラグを「１」に設定する。予測符号化モード決定部１２２は、当該マージフラグおよびマージモード決定部１２１より供給されるマージインデックスを端子１６に供給し、マージモード決定部１２１より供給される動き情報を端子５０および端子５１に供給する。なお、レート歪み評価値の具体的な算出方法は本発明の主眼ではないため詳細な説明は省略するが、予測誤差と符号量から符号量当たりの予測誤差量を算出し、レート歪み評価値が小さいほど符号化効率は高くなる特性を持つ評価値である。そのため、レート歪み評価値が小さい予測符号化モードを選択することで符号化効率を向上させることができる。
【００８２】
（マージモード決定部１２１の構成）
続いて、マージモード決定部１２１の詳細な構成について説明する。図９は、マージモード決定部１２１の構成を説明する図である。マージモード決定部１２１は、結合動き情報候補リスト生成部１４０および結合動き情報選択部１４１を含む。結合動き情報候補リスト生成部１４０は、実施の形態１に係る動画像符号化装置１００により生成された符号列を復号する動画像復号装置２００にも同様に設置されて、動画像符号化装置１００と動画像復号装置２００にて同一の結合動き情報リストが生成される。
【００８３】
（マージモード決定部１２１の機能と動作）
以下、各部の機能と動作について説明する。図１０は、マージモード決定部１２１の動作を説明するフローチャートである。結合動き情報候補リスト生成部１４０は、端子１２より供給される候補ブロック群からマージ候補最大数の結合動き情報候補を含む結合動き情報候補リストを生成し（Ｓ１００）、当該結合動き情報候補リストを結合動き情報選択部１４１に供給する。結合動き情報候補リスト生成部１４０の詳細な構成については後述する。
【００８４】
結合動き情報選択部１４１は、結合動き情報候補リスト生成部１４０より供給される結合動き情報候補リストの中から、最適な結合動き情報候補を選択し（Ｓ１０１）、選択された結合動き情報候補を示す情報であるマージインデックスを決定して（Ｓ１０２）、当該マージインデックスを端子１７に供給する。
【００８５】
ここで、最適な結合動き情報候補の選択方法について説明する。結合動き情報候補の予測方向、動きベクトルおよび参照インデックスに基づいて動き補償予測されて得られる端子１４より供給される参照画像と、端子１５より供給される画像信号とから予測誤差量が算出される。マージインデックスの符号量と、当該予測誤差量とからレート歪み評価値が算出されて、レート歪み評価値が最小となる結合動き情報候補が最適な結合動き情報候補として選択される。
【００８６】
（結合動き情報候補リスト生成部１４０の構成）
続いて、結合動き情報候補リスト生成部１４０の詳細な構成について説明する。図１１は、結合動き情報候補リスト生成部１４０の構成を説明するための図である。端子１９は結合動き情報選択部１４１に接続されている。結合動き情報候補リスト生成部１４０は、空間結合動き情報候補導出部１６０、時間結合動き情報候補導出部１６１、結合動き情報候補リスト構築部１６２、冗長結合動き情報候補削除部１６３、第１結合動き情報候補補充部１６４、および第２結合動き情報候補補充部１６５を含む。
【００８７】
（結合動き情報候補リスト生成部１４０の機能と動作）
以下、各部の機能と動作について説明する。図１２は、結合動き情報候補リスト生成部１４０の動作を説明するためのフローチャートである。
【００８８】
最初に、空間結合動き情報候補導出部１６０は、端子１２より供給される空間候補ブロック群から０個から空間結合動き情報候補最大数の空間結合動き情報候補を導出し（Ｓ１１０）、当該空間結合動き情報候補を結合動き情報候補リスト構築部１６２に供給する。空間結合動き情報候補導出部１６０の詳細な動作については後述する。また、空間結合動き情報候補最大数についても後述する。
次に、結合動き情報候補リスト生成部１４０は、時間候補利用許可フラグ（enable_temporal_mvp_flag）が１であるか検査する（Ｓ１１１）。
【００８９】
時間候補利用許可フラグが１であれば（Ｓ１１１のＹ）、時間結合動き情報候補導出部１６１は、端子１２より供給される時間候補ブロック群から０個から時間結合動き情報候補最大数の時間結合動き情報候補を導出し（Ｓ１１２）、当該時間結合動き情報候補を結合動き情報候補リスト構築部１６２に供給する。時間結合動き情報候補導出部１６１の詳細な動作については後述する。
【００９０】
時間候補利用許可フラグが０であれば（Ｓ１１１のＮ）、スキップＳ１１２をスキップする。
【００９１】
次に、結合動き情報候補リスト構築部１６２は０個から空間結合動き情報候補最大数の空間結合動き情報候補と０個から時間結合動き情報候補最大数の時間結合動き情報候補から結合動き情報候補リストを構築する（Ｓ１１３）。ここでは、結合動き情報候補リストには導出された順序で空間結合動き情報候補と時間結合動き情報候補が順次登録されるものとする。
【００９２】
次に、冗長結合動き情報候補削除部１６３は、結合動き情報候補リスト構築部１６２より供給される結合動き情報候補リストに登録されている結合動き情報候補を検査し、同一の動き情報を有する結合動き情報候補が複数存在する場合には１つの結合動き情報候補を残してその他の結合動き情報候補を削除し（Ｓ１１４）、当該結合動き情報候補リストを第１結合動き情報候補補充部１６４に供給する。ここで、当該結合動き情報候補リストに登録されている結合動き情報候補は全てが異なる結合動き情報候補となる。
【００９３】
次に、第１結合動き情報候補補充部１６４は、冗長結合動き情報候補削除部１６３より供給される結合動き情報候補リストに登録された結合動き情報候補から０個から２個の第１補充結合動き情報候補を導出してマージ候補最大数を超えないように結合動き情報候補リストに追加し（Ｓ１１５）、当該結合動き情報候補リストを第２結合動き情報候補補充部１６５に供給する。第１結合動き情報候補補充部１６４の詳細な動作については後述する。
【００９４】
次に、第２結合動き情報候補補充部１６５は、第１結合動き情報候補補充部１６４より供給される結合動き情報候補リストに登録された結合動き情報候補の数がマージ候補最大数に達するまで第２補充結合動き情報候補を導出して当該結合動き情報候補リストに追加し（Ｓ１１６）、当該結合動き情報候補リストを端子１９に供給する。第２結合動き情報候補補充部１６５の詳細な動作については後述する。
【００９５】
以上のように、結合動き情報候補リスト生成部１４０は結合動き情報候補リストを生成する。
【００９６】
（ブロック群について）
以降、予測ブロックの候補ブロック群について説明する。図１３は予測ブロックの空間候補ブロック群について説明する図である。図１３（ａ）は符号化ブロックの大きさが１６画素×１６画素で予測ブロックサイズタイプが２Ｎｘ２Ｎである場合の予測ブロックサイズの空間候補ブロック群を示す。
【００９７】
空間候補ブロック群は、予測ブロックの左下の画素の左に位置するブロックＡ、予測ブロックの右上の画素の上に位置するブロックＢ、予測ブロックの右上の画素の右斜め上に位置するブロックＣ、予測ブロックの左下の画素の左斜め下に位置するブロックＥ、及び予測ブロックの左上の画素の左斜め上に位置するブロックＤの５個とする。
【００９８】
時間候補ブロック群は、ＣｏｌＰｉｃの所定領域の代表ブロックであるブロックＨとブロックＩの２個とする。処理対象の予測ブロックの左上の画素の位置を（ｘ，ｙ）、処理対象の予測ブロックの幅と高さをそれぞれＰＵＷ、ＰＵＨとすると、（（（（ｘ＋ＰＵＷ）＞＞４）＜＜４），（（（ｙ＋ＰＵＨ）＞＞４）＜＜４））となる画素の位置をブロックの左上の画素の位置として含むＣｏｌＰｉｃ上のブロックを時間候補ブロックＨとする。ここで、＞＞は右方向のビットシフト、＜＜は左方向のビットシフトである。
【００９９】
同様に、（ｘ＋（ＰＵＷ＞＞１），ｙ＋（ＰＵＨ＞＞１））となる画素の位置をブロックの左上の画素の位置として含むＣｏｌＰｉｃ上のブロックを時間候補ブロックＩとする。
【０１００】
このように、時間候補ブロックをＣｏｌＰｉｃの所定領域（ここでは１６画素×１６画素の領域）の代表ブロックとすることで、ＣｏｌＰｉｃが記憶すべき動きベクトルと参照インデックスを削減できる。１画像で記憶する動きベクトルと参照インデックスを削減することで、複数の復号済み画像をＣｏｌＰｉｃの対象とすることが可能となるため、予測効率を向上させる効果がある。
【０１０１】
なお、予測ブロックサイズタイプが２Ｎ×２Ｎではない符号化ブロックにおける予測ブロックに対しても予測ブロックサイズタイプが２Ｎ×２Ｎである符号化ブロックの予測ブロックと同じ位置関係を適用するものとする。図１３（ｂ）は符号化ブロックの大きさが８画素×８画素で予測ブロックサイズタイプが２ＮｘＮである場合の空間候補ブロック群を示す。
【０１０２】
ここでは、ブロックＡを予測ブロックの左下の画素の左に位置するブロックとしたが、予測ブロックの左辺に接していればよく、これに限定されない。また、ブロックＢを予測ブロックの右上の画素の上に位置するブロックとしたが、予測ブロックの上辺に接していればよく、これに限定されない。また、時間候補ブロック群をブロックＨとブロックＩの２個としたが、同一位置予測ブロック内と同一位置予測ブロックの周辺にあるブロックであればよく、これに限定されない。
【０１０３】
（空間結合動き情報候補導出部１６０の詳細な動作）
続いて、空間結合動き情報候補導出部１６０の詳細な動作について説明する。図１４は、空間結合動き情報候補導出部１６０の動作を説明するためのフローチャートである。空間結合動き情報候補導出部１６０は、候補ブロック群の空間候補ブロック群に含まれる候補ブロックであるブロックＡ、ブロックＢ、ブロックＣ、ブロックＥ、ブロックＤの順に以下の処理を繰り返し行う（Ｓ１２０からＳ１２４）。
【０１０４】
最初に、候補ブロックが有効であるか検査する（Ｓ１２１）。候補ブロックが有効であるとは、候補ブロックのＬ０予測とＬ１予測の参照インデックスの少なくとも一方が０以上であることである。候補ブロックが有効であれば（Ｓ１２１のＹ）、候補ブロックの動き情報を空間結合動き情報候補として導出する（Ｓ１２２）。候補ブロックが有効でなければ（Ｓ１２１のＮ）、次の候補ブロックを検査し（Ｓ１２４）、全ての候補ブロックの検査が終了すれば、処理を終了する。ステップＳ１２２に続いて、導出した空間結合動き情報候補の数が空間結合動き情報候補最大数であるか検査する（Ｓ１２３）。導出した空間結合動き情報候補の数が空間結合動き情報候補最大数でなければ（Ｓ１２３のＮ）、次の候補ブロックを検査する（Ｓ１２４）。導出した空間結合動き情報候補の数が空間結合動き情報候補最大数であれば（Ｓ１２３のＹ）、処理を終了する。
【０１０５】
続いて、空間結合動き情報候補最大数について説明する。図１５は空間結合動き情報候補最大数の設定の動作を説明するフローチャートである。ここでは、空間結合動き情報候補導出部１６０が空間結合動き情報候補最大数を時間候補利用許可フラグ（enable_temporal_mvp_flag）に応じて変更する。最初に、時間候補利用許可フラグが１であるか検査する（Ｓ１３１）。時間候補利用許可フラグが１であれば（Ｓ１３１のＹ）、空間結合動き情報候補最大数を４に設定し（Ｓ１３２）、処理を終了する。時間候補利用許可フラグが０であれば（Ｓ１３１のＮ）、空間結合動き情報候補最大数を５に設定し（Ｓ１３３）、処理を終了する。
【０１０６】
ここでは、空間結合動き情報候補導出部１６０が空間結合動き情報候補最大数を設定するとしたが、符号化制御部１１２や後述する復号制御部２０８で設定してもよい。
【０１０７】
ここで、空間結合動き情報候補が空間方向の連続性を基づいて導出されるのに対し、時間結合動き情報候補は時間方向の連続性に基づいて導出されており、これらの性質は異なるものである。そのため、時間候補利用許可フラグが１である場合にマージ候補最大数よりも空間結合動き情報候補最大数が小さくなるように設定し、時間結合動き情報候補が導出された場合には時間結合動き情報候補の動き情報が常に結合動き情報候補リストに登録されるようにすることで、時間方向の連続性の高い動画像においてマージモードの選択率を高めて符号化効率を向上させることができる。
【０１０８】
以上のように、時間候補利用許可フラグが１であれば、マージ候補最大数よりも空間結合動き情報候補最大数が小さくなるように設定されるため、ブロックＡ、ブロックＢ、ブロックＣ、及びブロックＥが全て有効であれば、ブロックＤは空間結合動き情報候補とはなり得ない。そこで、時間候補利用許可フラグが０である場合には、時間候補利用許可フラグが１である場合よりも空間結合動き情報候補最大数を大きくし、マージ候補最大数と等しくなるようにすることで、相対的に第１補充結合動き情報候補や第２補充結合動き情報候補よりも選択率の高くなるブロックＤを空間結合動き情報候補として導出し、結合動き情報候補リストに追加することで、時間結合動き情報候補を利用できない条件においても符号化効率を向上させることができる。
【０１０９】
例えば、時間結合動き情報候補が利用できないＩピクチャ直後のＰピクチャやＢスライスにおいて時間候補利用許可フラグを０とすることで符号化効率を向上させることができる。
【０１１０】
（時間結合動き情報候補導出部１６１の詳細な動作）
続いて、時間結合動き情報候補導出部１６１の詳細な動作について説明する。図１６は、時間結合動き情報候補導出部１６１の動作を説明するためのフローチャートである。Ｌ０予測とＬ１予測の各予測方向ＬＸについて以下の処理を繰り返し行う（Ｓ１４０からＳ１４７）。ここで、Ｘは０または１である。また、候補ブロック群の時間候補ブロック群に含まれる候補ブロックであるブロックＨ、ブロックＩの順に以下の処理を繰り返し行う（Ｓ１４１からＳ１４６）。
【０１１１】
時間結合動き情報候補導出部１６１は、候補ブロックのＬＮ予測が有効であるか検査する（Ｓ１４２）。ここで、Ｎは０または１である。ここでは、ＮはＸと同じであるとする。候補ブロックのＬＮ予測が有効であるとは、候補ブロックのＬＮ予測の参照インデックスが０以上であることである。候補ブロックのＬＮ予測が有効であれば（Ｓ１４２のＹ）、候補ブロックのＬＮ予測の動きベクトルをＬＸ予測の基準動きベクトルとする（Ｓ１４３）。候補ブロックのＬＮ予測が有効でなければ（Ｓ１４２のＮ）、ステップ１２３からステップ１２６をスキップして次の候補ブロックを検査し（Ｓ１４６）、全ての候補ブロックの検査が終了すると、次の予測方向を処理する（Ｓ１４７）。
【０１１２】
ステップＳ１４３に続いて、時間結合動き情報候補のＬＸ予測の参照画像を決定する（Ｓ１４４）。ここでは、時間結合動き情報候補のＬＸ予測の参照画像は、ＬＸ予測の参照インデックス０の参照画像とする。次に、基準動きベクトルを処理対象画像と時間結合動き情報候補のＬＸ予測の参照画像の距離に合うようにスケーリングして時間結合動き情報候補のＬＸ予測の動きベクトルを算出し（Ｓ１４５）、次の予測方向を処理する（Ｓ１４７）。時間結合動き情報候補のＬＸ予測の動きベクトルの具体的な算出式については後述する。
【０１１３】
Ｌ０予測とＬ１予測について処理が終了したステップＳ１４７に続いて、時間結合動き情報候補のＬ０予測とＬ１予測の少なくとも一方の予測が有効であるか検査する（Ｓ１４８）。時間結合動き情報候補のＬ０予測とＬ１予測の少なくとも一方の予測が有効であれば（Ｓ１４８のＹ）、時間結合動き情報候補のインター予測タイプを決定して時間結合動き情報候補を導出する（Ｓ１４９）。
【０１１４】
ここでは、インター予測タイプの決定は、Ｌ０予測だけが有効であれば、時間結合動き情報候補のインター予測タイプをＰｒｅｄ＿Ｌ０とし、Ｌ１予測だけが有効であれば、時間結合動き情報候補のインター予測タイプをＰｒｅｄ＿Ｌ１とし、Ｌ０予測とＬ１予測の両方が有効であれば、時間結合動き情報候補のインター予測タイプをＰｒｅｄ＿ＢＩとする。
【０１１５】
続いて、時間結合動き情報候補のＬＸ予測の動きベクトルの算出式について説明する。時間候補ブロックを有するＣｏｌＰｉｃと時間候補ブロックがＬＸ予測の動き補償予測で参照するピクチャであるＣｏｌＲｅｆＬＸＰｉｃの画像間距離をｔｄ、時間結合動き情報候補のＬＸ予測の参照画像ＲｅｆＬＸＰｉｃと処理対象画像ＣｕｒＰｉｃの画像間距離をｔｂ、ＬＸ予測の基準動きベクトルをｍｖＬＸとすると、時間結合動き情報候補のＬＸ予測の動きベクトルｍｖＬXColは式１より算出される。式１より時間結合動き情報候補のＬＸ予測の動きベクトルの算出にはｔｂとｔｄを算出するための減算と、除算、及び乗算が必要となることがわかる。
mvLXCol = tb / td * mvLX;      式１
【０１１６】
浮動小数点演算の簡略化のために整数演算とする場合には例えば、式２から式４のように展開して利用してもよい。Ａｂｓ（ｖ）は値ｖの絶対値を算出する関数、Ｃｌｉｐ３（ｕｖ，ｌｖ，ｖ）は値ｖを下限ｌｖから上限ｕｖまでに制限する関数、Ｓｉｇｎ（ｖ）は値ｖが０以上であれば１を値ｖが０より小さい場合は−１を返す関数である。＞＞は右方向のビットシフトを、＜＜は左方向のビットシフトを表す。
tx = (16384+Abs(td/2) ) / td;    式２
DistScaleFactor = Clip3( -1024, 1023, ( tb * tx + 32 ) >> 6 );    式３
mvLXCol = Sign( DistScaleFactor * mvLX ) * ( (Abs( DistScaleFactor * mvLX ) + 127 ) >> 8 );    式４
【０１１７】
ここでは、時間結合動き情報候の最大数である時間結合動き情報候補最大数を１とした。そのため、図１６には空間結合動き情報候補導出部１６０の動作を説明するフローチャートである図１６で示したステップＳ１２３に相当する処理を省略したが、時間結合動き情報候補最大数が２以上である場合にはステップＳ１４９の後にステップＳ１２３に相当する処理を追加することもできる。
【０１１８】
ここでは、ＮはＸと同じであるとしたが、ＮはＸと異なっていても良く、これに限定されない。
【０１１９】
（第１結合動き情報候補補充部１６４の詳細な動作）
続いて、第１結合動き情報候補補充部１６４の詳細な動作について説明する。図１７は、第１結合動き情報候補補充部１６４の動作を説明するためのフローチャートである。最初に、結合動き情報候補リストに登録された結合動き情報候補の数（ＮｕｍＣａｎｄＬｉｓｔ）とマージ候補最大数（ＭａｘＮｕｍＭｅｒｇｅＣａｎｄ）から、第１補充結合動き情報候補を導出する最大数であるＭａｘＮｕｍＧｅｎＣａｎｄを式５より算出する（Ｓ１７０）。
MaxNumGenCand=MaxNumMergeCand-NumCandList; (NumCandList>1)
MaxNumGenCand=0; (NumCandList=>1)                            式５
【０１２０】
次に、ＭａｘＮｕｍＧｅｎＣａｎｄが０より大きいか検査する（Ｓ１７１）。ＭａｘＮｕｍＧｅｎＣａｎｄが０より大きくなければ（Ｓ１７１のＮ）、処理を終了する。ＭａｘＮｕｍＧｅｎＣａｎｄが０より大きければ（Ｓ１７１のＹ）、以下の処理を行う。まず、組み合わせ検査回数であるｌｏｏｐＴｉｍｅｓを決定する。ｌｏｏｐＴｉｍｅｓはＮｕｍＣａｎｄＬｉｓｔ×ＮｕｍＣａｎｄＬｉｓｔに設定する。ただし、ｌｏｏｐＴｉｍｅｓが８を超える場合にはｌｏｏｐＴｉｍｅｓは８に制限する（Ｓ１７２）。ここで、ｌｏｏｐＴｉｍｅｓは０から７までの整数となる。ｌｏｏｐＴｉｍｅｓだけ以下の処理を繰り返し行う（Ｓ１７２からＳ１８０）。結合動き情報候補Ｍと結合動き情報候補Ｎの組み合わせを決定する（Ｓ１７３）。ここで、組み合わせ検査回数と結合動き情報候補Ｍと結合動き情報候補Ｎの関係について説明する。図１８は組み合わせ検査回数と結合動き情報候補Ｍと結合動き情報候補Ｎの関係を説明するための図である。図１８のようにＭとＮは異なる値であって、ＭとＮの合計値が小さくなる順に設定される。結合動き情報候補ＭのＬ０予測が有効で且つ結合動き情報候補ＮのＬ１予測が有効であるか検査する（Ｓ１７４）。結合動き情報候補ＭのＬ０予測が有効で且つ結合動き情報候補ＮのＬ１予測が有効であれば（Ｓ１７４のＹ）、結合動き情報候補ＭのＬ０予測の参照画像と動きベクトルが結合動き情報候補ＮのＬ１予測の参照画像と動きベクトルと異なるか検査する（Ｓ１７５）。結合動き情報候補ＭのＬ０予測が有効で且つ結合動き情報候補ＮのＬ１予測が有効でなければ（Ｓ１７４のＮ）、次の組み合わせを処理する。結合動き情報候補ＭのＬ０予測の参照画像と結合動き情報候補ＮのＬ１予測の参照画像が異なれば（Ｓ１７５のＹ）、結合動き情報候補ＭのＬ０予測の動きベクトルと参照画像を結合動き情報候補ＮのＬ１予測の動きベクトルと参照画像と組み合わせてインター予測タイプがＰｒｅｄ＿ＢＩである双結合動き情報候補を導出する（Ｓ１７６）。ここでは、第１補充結合動き情報候補として、ある結合動き情報候補のＬ０予測とそれとは異なる結合動き情報候補のＬ１予測の動き情報を組み合わせた双結合動き情報を導出する。結合動き情報候補ＭのＬ０予測の参照画像と結合動き情報候補ＮのＬ１予測の参照画像が同じであれば（Ｓ１７５のＮ）、次の組み合わせを処理する。ステップＳ１７６に続いて、双結合動き情報候補を結合動き情報候補リストに追加する（Ｓ１７８）。ステップＳ１７８に続いて、導出（生成）した双結合動き情報の数がＭａｘＮｕｍＧｅｎＣａｎｄであるか検査する（Ｓ１７９）。導出された双結合動き情報の数がＭａｘＮｕｍＧｅｎＣａｎｄであれば（Ｓ１７９のＹ）、処理を終了する。導出された双結合動き情報の数がＭａｘＮｕｍＧｅｎＣａｎｄでなければ（Ｓ１７９のＮ）、次の組み合わせを処理する（Ｓ１８０）。全ての組み合わせの処理が終了すれば処理を終了する。
【０１２１】
ここでは、第１補充結合動き情報候補を、結合動き情報候補リストに登録されたある結合動き情報候補のＬ０予測の動きベクトルと参照画像を、別の結合動き情報候補のＬ１予測の動きベクトルと参照画像と組み合わせて、動き補償予測の方向が双方向である双結合動き情報候補としたが、これに限定されない。例えば、結合動き情報候補リストに登録されたある結合動き情報候補のＬ０予測の動きベクトルとＬ１予測の動きベクトルに＋１などのオフセット値を加えた動き補償予測の方向が双方向である結合動き情報候補、結合動き情報候補リストに登録されたある結合動き情報候補のＬ０予測の動きベクトルまたはＬ１予測の動きベクトルに＋１などのオフセット値を加えた双予測である結合動き情報候補としてもよい。
【０１２２】
ここで、第１補充結合動き情報候補は、結合動き情報候補リストに登録された結合動き情報候補の動き情報と処理対象の動き情報候補の動きに微妙にずれがある場合に、結合動き情報候補リストに登録された結合動き情報候補の動き情報を修正して新たな有効となる結合動き情報候補を導出することで、符号化効率を高めることができる。
【０１２３】
（第２結合動き情報候補補充部１６５の詳細な動作）
続いて、第２結合動き情報候補補充部１６５の詳細な動作について説明する。図１９は、第２結合動き情報候補補充部１６５の動作を説明するためのフローチャートである。最初に、第１結合動き情報候補補充部１６４より供給される結合動き情報候補リストに登録された結合動き情報候補の数とマージ候補最大数から、第２補充結合動き情報候補を導出する最大数であるＭａｘＮｕｍＧｅｎＣａｎｄを式６より算出する（Ｓ１９０）。
MaxNumGenCand=MaxNumMergeCand-NumCandList;          式６
【０１２４】
次に、以下の処理をｉについてＭａｘＮｕｍＧｅｎＣａｎｄ回繰り返し行う（Ｓ１９１からＳ１９５）。ここで、ｉは０からＭａｘＮｕｍＧｅｎＣａｎｄ−１の整数となる。Ｌ０予測の動きベクトルが（０，０）、Ｌ０予測の参照インデックスがｉであって、Ｌ１予測の動きベクトルが（０，０）、Ｌ１予測の参照インデックスがｉであるインター予測タイプがＰｒｅｄ＿ＢＩである第２補充結合動き情報候補を導出し（Ｓ１９２）、当該第２補充結合動き情報候補を結合動き情報候補リストに追加する（Ｓ１９３）。次に、次のｉについて処理する（Ｓ１９４）。全てのｉについて処理が終了すれば処理を終了する。
【０１２５】
ここでは、第２補充結合動き情報候補を、Ｌ０予測の動きベクトルが（０，０）、参照インデックスがｉであって、Ｌ１予測の動きベクトルが（０，０）、参照インデックスがｉであるインター予測タイプがＰｒｅｄ＿ＢＩである結合動き情報候補とした。これは、一般的な動画像において、Ｌ０予測の動きベクトルとＬ１予測の動きベクトルが（０，０）である結合動き情報候補の発生頻度が統計的に高いためである。結合動き情報候補リストに登録された結合動き情報候補の動き情報に依存せず、統計的に利用頻度が高い結合動き情報候補であれば、これに限定されない。例えば、Ｌ０予測やＬ１予測の動きベクトルはそれぞれ（０，０）以外のベクトル値でもよく、Ｌ０予測とＬ１予測の参照インデックスが異なるように設定してもよい。また、第２補充結合動き情報候補を符号化済みの画像や符号化済みの画像の一部の発生頻度の高い動き情報とし、符号化ストリームに符号化して伝送して設定することもできる。なお、ここではＢピクチャ（Ｂスライス）について説明したが、Ｐピクチャ（Ｐスライス）の場合は、Ｌ０予測の動きベクトルが（０，０）で、インター予測タイプがＰｒｅｄ＿Ｌ０である第２補充結合動き情報候補を導出する。
【０１２６】
ここで、第２補充結合動き情報候補として結合動き情報候補リストに登録された結合動き情報候補に依存しない結合動き情報候補を設定することで、結合動き情報候補リストに登録された結合動き情報候補が０個である場合に、マージモードを利用することを可能とし、符号化効率を向上させることができる。また、結合動き情報候補リストに登録された結合動き情報候補の動き情報と処理対象の動き情報候補の動きが異なる場合に、新たな結合動き情報候補を導出して選択肢の幅を広げることで、符号化効率を向上させることができる。
【０１２７】
以上のように、時間候補利用許可フラグが０である場合には、ブロックＤの動き情報を他の結合動き情報候補の動き情報と組み合わせて新たな動き情報を導出したり、第５の空間結合動き情報候補の動き情報を修正して新たな動き情報を導出することで、第２補充結合動き情報候補よりも相対的に選択率の高い第１補充結合動き情報候補を結合動き情報候補リストに追加することで、符号化効率を高めることができる。
【０１２８】
また、時間候補利用許可フラグが１である場合には、時間結合動き情報候補の動き情報を他の結合動き情報候補の動き情報と組み合わせて新たな動き情報を導出したり、時間結合動き情報候補の動き情報を修正して新たな動き情報を導出することで、第２補充結合動き情報候補よりも相対的に選択率の高い第１補充結合動き情報候補を結合動き情報候補リストに追加することで、符号化効率を高めることができる。
【０１２９】
特に、双結合動き情報候補を利用する場合には少なくとも２つの結合動き情報候補が必要となるため、結合動き情報候補リストにブロックＤまたは時間結合動き情報候補以外の結合動き情報候補が１個しか登録されていない場合に、第２補充結合動き情報候補よりも相対的に選択率の高い第１補充結合動き情報候補が導出されるため、符号化効率を高めることができる。
【０１３０】
ここでは、空間候補ブロック群を５個、時間候補ブロック群を２個、マージ候補最大数の上限を５とし、空間結合動き情報候補最大数を４または５、時間結合動き情報候補最大数を１としたが、時間候補利用許可フラグが０である場合に時間候補利用許可フラグが１である場合よりも空間結合動き情報候補最大数を大きくできればよく、これに限定されない。
【０１３１】
また、ここでは、時間候補利用許可フラグをＰＰＳに設置したが、ＳＰＳに設置することもできる。
【０１３２】
例えば、ＡＶＣで定義されているような符号化ツールを分類したプロファイルなどで時間候補利用許可フラグを０に固定して運用することで、符号化と復号において時間候補ブロックを記憶する必要がないこと、時間結合動き情報候補の導出が不要となることから、符号化と復号においてメモリ容量を大きく削減すること、回路規模やソフトウェア規模を縮小することが可能となる。
【０１３３】
（予測ベクトルモード決定部１２０の構成）
続いて、予測ベクトルモード決定部１２０の詳細な構成について説明する。図２０は、予測ベクトルモード決定部１２０の構成を示す図である。予測ベクトルモード決定部１２０は、予測ベクトル候補リスト生成部１３０および予測ベクトル決定部１３１を含む。端子１７は予測符号化モード決定部１２２に接続されている。
【０１３４】
予測ベクトル候補リスト生成部１３０は、実施の形態１に係る動画像符号化装置１００により生成された符号列を復号する動画像復号装置２００内の動きベクトル再生部２１１の中にも同様に設置されて、動画像符号化装置１００と動画像復号装置２００にて同一の予測ベクトル候補リストが生成される。
【０１３５】
（予測ベクトルモード決定部１２０の動作）
以下、予測ベクトルモード決定部１２０の動作について説明する。図２１は、予測ベクトルモード決定部１２０の動作を示すフローチャートである。
【０１３６】
最初に、Ｌ０予測について以下の処理を行う。以下、Ｘは０とする。予測ベクトル候補リスト生成部１３０は、端子１３より供給されるＬＸ予測の参照インデックスを取得する。端子１２より供給される候補ブロック群とＬＸ予測の参照インデックスから予測ベクトル候補最大数の予測ベクトル候補を含むＬＸ予測の予測ベクトル候補リストを生成する（Ｓ２００）。予測ベクトル候補リスト生成部１３０は、当該ＬＸ予測の予測ベクトル候補リストを予測ベクトル決定部１３１に供給する。
【０１３７】
予測ベクトル決定部１３１は、予測ベクトル候補リスト生成部１３０より供給されるＬＸ予測の予測ベクトル候補リストから１つの予測ベクトル候補をＬＸ予測の予測ベクトルとして選択し（Ｓ２０１）、当該ＬＸ予測の予測ベクトルインデックスを決定する（Ｓ２０２）。
【０１３８】
予測ベクトル決定部１３１は、端子１３より供給されるＬＸ予測の動きベクトルからＬＸ予測の予測ベクトルを減算してＬＸ予測の差分ベクトルを算出し（Ｓ２０３）、当該ＬＸ予測の差分ベクトルと当該ＬＸ予測の予測ベクトルインデックスを出力する。
【０１３９】
予測ベクトル決定部１３１は、端子１５より供給される画像信号と、端子１４より供給される参照画像を端子１３より供給されるＬＸ予測の動きベクトルおよびＬＸ予測の参照インデックスに基づいて動き補償予測したＬＸ予測の予測信号とから予測誤差量を算出し、当該予測誤差量と、ＬＸ予測の差分ベクトル、ＬＸ予測の参照インデックス、およびＬＸ予測の予測ベクトルインデックスの符号量とからＰｒｅｄ＿ＬＸのレート歪評価値を算出する。
【０１４０】
次に、Ｘを１としてＬ１予測についてＬ０予測と同じ処理を行う。
【０１４１】
続いて、予測ベクトル決定部１３１は、端子１５より供給される画像信号と、Ｌ０予測の予測信号およびＬ１予測の予測信号を平均したＢＩ予測の予測信号とから予測誤差量を算出し、当該予測誤差量と、Ｌ０予測とＬ１予測の差分ベクトル、Ｌ０予測とＬ１予測の参照インデックス、およびＬ０予測とＬ１予測の予測ベクトルインデックスの符号量とからＰｒｅｄ＿ＢＩのレート歪評価値を算出する。
【０１４２】
予測ベクトル決定部１３１は、Ｐｒｅｄ＿Ｌ０のレート歪評価値、Ｐｒｅｄ＿Ｌ１のレート歪評価値、およびＰｒｅｄ＿ＢＩのレート歪評価値を比較して、最小のレート歪評価値である予測符号化モードを１つ選択する。そして、予測符号化モードに基づいた動き情報、差分ベクトル、予測ベクトルインデックス、およびレート歪み評価値を予測符号化モード決定部１２２に供給する。なお、予測符号化モードがＰｒｅｄ＿Ｌ０であれば、Ｌ１予測の動きベクトルは（０，０）、Ｌ１予測の参照インデックスは「−１」とし、予測符号化モードがＰｒｅｄ＿Ｌ１であれば、Ｌ０予測の動きベクトルは（０，０）、Ｌ０予測の参照インデックスは「−１」とする。
【０１４３】
（予測ベクトル候補リスト生成部１３０の構成）
続いて、予測ベクトル候補リスト生成部１３０の詳細な構成について説明する。図２２は、予測ベクトル候補リスト生成部１３０の構成を説明するための図である。端子１８は予測ベクトル決定部１３１に接続されている。予測ベクトル候補リスト生成部１３０は、空間予測ベクトル候補導出部１５０、空間スケーリング予測ベクトル候補導出部１５１、時間予測ベクトル候補導出部１５２、予測ベクトルリスト構築部１５３、冗長予測ベクトル候補削除部１５４、及び予測ベクトル候補補充部１５５を含む。
【０１４４】
（予測ベクトル候補リスト生成部１３０の動作）
以下、各部の機能と動作について説明する。図２３は、予測ベクトル候補リスト生成部１３０の動作を説明するためのフローチャートである。
【０１４５】
予測ベクトル候補リスト生成部１３０は、端子１２より供給される空間候補ブロック群に含まれる候補ブロックを第１グループであるブロックＥとブロックＡ、第２グループであるブロックＣ、ブロックＢ、及びブロックＤの２グループに分け、第１グループ、第２グループの順に以下の処理を繰り返す（Ｓ２１０からＳ２１２）。
【０１４６】
ここで、端子１２より供給される候補ブロック群はマージモードの場合と同一の候補ブロック群とする。
【０１４７】
空間予測ベクトル候補導出部１５０は、第ｉグループ（ｉは１または２）の空間候補ブロック群と端子１３より供給されるＬＸ予測の参照インデックスからＬＸ予測の空間予測ベクトル候補を０個または１個導出し（Ｓ２１１）、当該ＬＸ予測の空間予測ベクトル候補を予測ベクトルリスト構築部１５３に供給する。空間予測ベクトル候補導出部１５０の詳細な動作については後述する。また、空間予測ベクトル候補導出部１５０と空間スケーリング予測ベクトル候補導出部１５１の関係についても後述する。
【０１４８】
第１グループ、第２グループについて処理が終了すると、予測ベクトル候補リスト生成部１３０は、時間候補利用許可フラグ（enable_temporal_mvp_flag）が１であるか検査する（Ｓ２１３）。
【０１４９】
時間候補利用許可フラグが１であれば（Ｓ２１３のＹ）、時間予測ベクトル候補導出部１５２は、端子１２より供給される時間候補ブロック群と端子１３より供給されるＬＸ予測の参照インデックスからＬＸ予測の時間予測ベクトル候補を０個または１個導出し（Ｓ２１４）、当該ＬＸ予測の時間予測ベクトル候補を予測ベクトルリスト構築部１５３に供給する。時間予測ベクトル候補導出部１５２の詳細な動作については後述する。
【０１５０】
時間候補利用許可フラグが０であれば（Ｓ２１３のＮ）、Ｓ２１４をスキップする。
【０１５１】
次に、予測ベクトルリスト構築部１５３は０個から２個のＬＸ予測の空間予測ベクトル候補と０個から１個のＬＸ予測の時間予測ベクトル候補とからＬＸ予測の予測ベクトル候補リストを構築し（Ｓ２１５）、当該ＬＸ予測の予測ベクトル候補リストを冗長予測ベクトル候補削除部１５４に供給する。ここで、ＬＸ予測の予測ベクトル候補リストには空間予測ベクトル候補、時間予測ベクトル候補の順に最大で３個まで登録される。
【０１５２】
次に、冗長予測ベクトル候補削除部１５４は、ＬＸ予測の予測ベクトル候補リストに登録されている予測ベクトル候補を検査し、同一のベクトルを有する予測ベクトル候補が複数存在する場合には１つの予測ベクトル候補を残してその他の予測ベクトル候補を削除する。次に、ＬＸ予測の予測ベクトル候補リストに登録されている予測ベクトル候補数が予測ベクトル候補最大数を超えている場合には、ＬＸ予測の予測ベクトル候補リストに登録されている予測ベクトル候補数が予測ベクトル候補最大数以下となるようにＬＸ予測の予測ベクトル候補リストの後方の予測ベクトル候補を削除し（Ｓ２１６）、当該ＬＸ予測の予測ベクトル候補リストを予測ベクトル候補補充部１５５に供給する。したがって、冗長予測ベクトル候補削除部１５４より出力されるＬＸ予測の予測ベクトル候補リストに登録されている予測ベクトル候補は全てが異なる予測ベクトル候補となる。また、ＬＸ予測の空間予測ベクトル候補が２個残った場合はＬＸ予測の時間予測ベクトル候補は必然的に予測ベクトル候補リストに登録されないことになる。
【０１５３】
次に、予測ベクトル候補補充部１５５は、予測ベクトル補充候補を生成し、ＬＸ予測の予測ベクトル候補リストに登録された予測ベクトル候補数が予測ベクトル候補最大数になるように当該予測ベクトル補充候補をＬＸ予測の予測ベクトル候補リストに追加し（Ｓ２１７）、端子１８に供給する。
【０１５４】
ここでは、予測ベクトル補充候補は動きベクトル（０，０）とする。ここでは、予測ベクトル補充候補を動きベクトル（０，０）としたが、（１，１）などの所定値でもよく、符号化ストリーム中で伝送してもよく、空間予測ベクトル候補の水平成分や垂直成分を＋１や−１などした動きベクトルでもよい。
【０１５５】
（空間予測ベクトル候補導出部１５０の詳細な動作）
引き続いて、空間予測ベクトル候補導出部１５０の詳細な動作について説明する。図２４は空間予測ベクトル候補導出部１５０の動作を説明するフローチャートである。ＬＸ予測の空間予測ベクトル候補の導出について説明する。
【０１５６】
第ｉグループ（iは１または２）の候補ブロックについて以下の処理を繰り返し行う（Ｓ２２０からＳ２２６）。第1グループはブロックＥ、ブロックＡの順に、第２グループはブロックＣ、ブロックＢ、ブロックＤの順に検査される。
【０１５７】
各候補ブロックについて、Ｌ０予測、Ｌ１予測の順に以下の処理を繰り返し行う（Ｓ２２１からＳ２２５）。以降、ここでのＬ０予測、Ｌ１予測をＬＮ予測として説明する。
候補ブロックのＬＮ予測は有効であるか検査する（Ｓ２２２）。候補ブロックのＬＮ予測が有効であるとは候補ブロックのＬＮ予測の参照インデックスが０以上であることである。
【０１５８】
候補ブロックのＬＮ予測が有効であれば（Ｓ２２２のＹ）、候補ブロックのＬＮ予測の参照インデックスが示す参照画像がＬＸ予測の参照インデックスが示す参照画像と同一であるか検査する（Ｓ２２３）。
【０１５９】
参照画像が同一であれば（Ｓ２２３のＹ）、候補ブロックのＬＮ予測の動きベクトルをＬＸ予測の空間予測ベクトル候補とし（Ｓ２２４）、処理を終了する。
【０１６０】
候補ブロックのＬＮ予測が有効でないか（Ｓ２２２のＮ）、参照画像が同一でなければ（Ｓ２２３のＮ）、ＬＮ予測がＬ０予測であればＬ１予測を検査し、ＬＮ予測がＬ１予測であれば次の候補ブロックを検査する（Ｓ２２５）。
【０１６１】
全ての候補ブロックの検査が終了すれば（Ｓ２２６）、時間候補利用許可フラグ（enable_temporal_mvp_flag）が０であるか検査する（２２７）。
【０１６２】
時間候補利用許可フラグが０であれば（Ｓ２２７のＹ）、空間スケーリング予測ベクトル候補導出部１５１は、ＬＸ予測の空間予測ベクトル候補を０個または１個導出し（Ｓ２２８）、処理を終了する。空間スケーリング予測ベクトル候補導出部１５１の詳細な動作については後述する。
【０１６３】
時間候補利用許可フラグが１であれば（Ｓ２２７のＮ）、Ｓ２２８をスキップして処理を終了する。
【０１６４】
以上のように、各グループから０個または１個の空間予測ベクトル候補が導出され、ＬＸ予測として０個から２個の空間予測ベクトル候補が導出される。
【０１６５】
（空間スケーリング予測ベクトル候補導出部１５１の詳細な動作）
引き続いて、空間スケーリング予測ベクトル候補導出部１５１の詳細な動作について説明する。図２５は空間スケーリング予測ベクトル候補導出部１５１の動作を説明するフローチャートである。ＬＸ予測の空間予測ベクトル候補の導出について説明する。
【０１６６】
第ｉグループ（iは１または２）の候補ブロックについて以下の処理を繰り返し行う（Ｓ２３０からＳ２３６）。第1グループはブロックＥ、ブロックＡの順に、第２グループはブロックＣ、ブロックＢ、ブロックＤの順に検査される。
【０１６７】
各候補ブロックについて、Ｌ０予測、Ｌ１予測の順に以下の処理を繰り返し行う（Ｓ２３１からＳ２３５）。以降、ここでのＬ０予測、Ｌ１予測をＬＮ予測として説明する。
【０１６８】
次に、候補ブロックのＬＮ予測は有効であるか検査する（Ｓ２３２）。候補ブロックのＬＮ予測が有効であるとは候補ブロックのＬＮ予測の参照インデックスが０以上であることである。
【０１６９】
候補ブロックのＬＮ予測が有効であれば（Ｓ２３２のＹ）、候補ブロックのＬＮ予測の参照インデックスが示す参照画像がＬＸ予測の参照インデックスが示す参照画像と同一でないか検査する（Ｓ２３３）。
【０１７０】
参照画像が同一でなければ（Ｓ２３３のＹ）、候補ブロックのＬＮ予測の動きベクトルをＬＸ予測の基準ベクトルとして空間予測ベクトル候補を導出し（Ｓ２３４）、処理を終了する。空間スケーリング予測ベクトル候補導出部１５１の空間予測ベクトル候補の詳細な導出方法については後述する。
【０１７１】
候補ブロックのＬＮ予測が有効でないか（Ｓ２３２のＮ）、参照画像が同一であれば（Ｓ２３３のＮ）、ＬＮ予測がＬ０予測であればＬ１予測を検査し、ＬＮ予測がＬ１予測であれば次の候補ブロックを検査する（Ｓ２３５）。
【０１７２】
全ての候補ブロックの検査が終了すれば（Ｓ２３６）、処理を終了する。
【０１７３】
続いて、空間スケーリング予測ベクトル候補導出部１５１の空間予測ベクトル候補の詳細な導出方法について説明する。ＬＸ予測の基準ベクトルが参照する参照画像ＮｅｉＲｅｆＬＸＰｉｃと処理対象画像ＣｕｒＰｉｃの画像間距離をtd、ＬＸ予測の参照インデックスが示す参照画像ＲｅｆＬＸＰｉｃと処理対象画像ＣｕｒＰｉｃの画像間距離をtb、ＬＸ予測の基準動きベクトルをｍｖＬＸとして、空間予測ベクトル候補ｍｖＳｃＬXは上述した式１または式２から式４により算出する。
【０１７４】
（時間予測ベクトル候補導出部１５２の詳細な動作）
引き続いて、時間予測ベクトル候補導出部１５２の詳細な動作について説明する。図２６は時間予測ベクトル候補導出部１５２の動作を説明するフローチャートである。ＬＸ予測の時間予測ベクトル候補の導出について説明する。
【０１７５】
時間候補ブロックについて以下の処理を繰り返し行う（Ｓ２４０からＳ２４３）。時間候補ブロックはブロックＨ、ブロックＩの順に検査される。
【０１７６】
最初に、候補ブロックのＬＮ予測は有効であるか検査する（Ｓ２４１）。ここでは、ＬＮ予測はＬＸ予測と同一であるとするが、ＬＮ予測はＬＸ予測と同一でなくともよい。候補ブロックのＬＮ予測が有効であるとは候補ブロックのＬＮ予測の参照インデックスが０以上であることである。
【０１７７】
候補ブロックのＬＮ予測が有効であれば（Ｓ２４１のＹ）、候補ブロックのＬＮ予測の動きベクトルをＬＸ予測の基準ベクトルとして時間予測ベクトル候補を導出し（Ｓ２４２）、処理を終了する。時間予測ベクトル候補の詳細な導出方法については後述する。
【０１７８】
候補ブロックのＬＮ予測が有効でなければ（Ｓ２４１のＮ）、次の候補ブロックを検査する（Ｓ２４３）。
【０１７９】
全ての候補ブロックの検査が終了すれば（Ｓ２４３）、処理を終了する。
【０１８０】
続いて、時間予測ベクトル候補の詳細な導出方法について説明する。時間候補ブロックのあるＣｏｌＰｉｃと時間候補ブロックがＬＮ予測の動き補償予測で参照するピクチャであるＣｏｌＲｅｆＬＸＰｉｃの画像間距離をｔｄ、ＬＸ予測の参照インデックスが示す参照画像ＲｅｆＬＸＰｉｃと処理対象画像ＣｕｒＰｉｃの画像間距離をｔｂ、ＬＸ予測の基準動きベクトルをｍｖＬＸとして、時間予測ベクトル候補ｍｖＬXColは上述した式１または式２から式４により算出する。
【０１８１】
（動画像復号装置２００の構成）
次に、実施の形態１の動画像復号装置を説明する。図２７は、実施の形態１に係る動画像復号装置２００の構成を示す図である。動画像復号装置２００は、動画像符号化装置１００により符号化された符号列を復号して再生画像を生成する装置である。
【０１８２】
動画像復号装置２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、フレームメモリ、ハードディスクなどを備える情報処理装置などのハードウェアにより実現される。動画像復号装置２００は、上記の構成要素が動作することにより、以下に説明する機能的な構成要素を実現する。符号化ブロックの分割、スキップモードの決定、予測ブロックサイズタイプの決定、予測ブロックサイズと予測ブロックの符号化ブロック内の位置（予測ブロックの位置情報）の決定、予測符号化モードがイントラであるかの決定は動画像復号装置２００の外部の復号制御部２０８で決定されているものとし、ここでは予測符号化モードがイントラでない場合について説明する。なお、復号対象の予測ブロックの位置情報、予測ブロックサイズに関しては動画像復号装置２００内で共有していることとし、図示しない。
【０１８３】
実施の形態１の動画像復号装置２００は、符号列解析部２０１、予測誤差復号部２０２、加算部２０３、動き情報再生部２０４、動き補償部２０５、フレームメモリ２０６および動き情報メモリ２０７を備える。
【０１８４】
（動画像復号装置２００の動作）
以下、各部の機能と動作について説明する。符号列解析部２０１は、端子３０より供給された符号列を解析して予測誤差符号化データ、マージフラグ、マージインデックス、動き補償予測の予測方向（インター予測タイプ）、参照インデックス、差分ベクトル、および予測ベクトルインデックスをシンタックスに従ってエントロピー復号する。エントロピー復号は算術符号化やハフマン符号化などの可変長符号化を含む方法によって実施される。そして、当該予測誤差符号化データを予測誤差復号部２０２に、当該マージフラグ、当該マージインデックス、当該インター予測タイプ、当該参照インデックス、当該差分ベクトル、および当該予測ベクトルインデックスを動き情報再生部２０４に供給する。
【０１８５】
また、符号列解析部２０１は、動画像復号装置２００で利用される符号化ブロックの分割情報、予測ブロックサイズタイプ、予測ブロックの符号化ブロック内の位置、及び予測符号化モードを、符号化ストリームの特性を決定するためのパラメータ群を定義したＳＰＳ（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、ピクチャの特性を決定するためのパラメータ群を定義したＰＰＳ（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、やスライスの特性を決定するためのパラメータ群を定義したスライスヘッダなどと共に符号化ストリームから復号する。
【０１８６】
動き情報再生部２０４は、符号列解析部２０１より供給されるマージフラグ、マージインデックス、インター予測タイプ、参照インデックス、差分ベクトル、および予測ベクトルインデックスと、動き情報メモリ２０７より供給される候補ブロック群から、動き情報を再生し、当該動き情報を動き補償部２０５および動き情報メモリ２０７に供給する。動き情報再生部２０４の詳細な構成については後述する。
【０１８７】
動き補償部２０５は、動き情報再生部２０４より供給される動き情報に基づいて、フレームメモリ２０６内の参照インデックスが示す参照画像を、動きベクトルに基づき動き補償して予測信号を生成する。予測方向が双予測であれば、Ｌ０予測とＬ１予測の予測信号を平均したものを予測信号として生成し、当該予測信号を加算部２０３に供給する。
【０１８８】
予測誤差復号部２０２は、符号列解析部２０１より供給される予測誤差符号化データに対して、逆量子化や逆直交変換などの処理を行って予測誤差信号を生成し、当該予測誤差信号を加算部２０３に供給する。
【０１８９】
加算部２０３は、予測誤差復号部２０２より供給される予測誤差信号と、動き補償部２０５より供給される予測信号とを加算して復号画像信号を生成し、当該復号画像信号をフレームメモリ２０６および端子３１に供給する。
【０１９０】
フレームメモリ２０６および動き情報メモリ２０７は、動画像符号化装置１００のフレームメモリ１１０および動き情報メモリ１１１と同一の機能を有する。フレームメモリ２０６は、加算部２０３より供給される復号画像信号を記憶する。動き情報メモリ２０７は、動き情報再生部２０４より供給される動き情報を最小の予測ブロックサイズ単位で記憶する。
【０１９１】
（動き情報再生部２０４の詳細な構成）
続いて、動き情報再生部２０４の詳細な構成について説明する。図２８は、動き情報再生部２０４の構成を示す。動き情報再生部２０４は、符号化モード判定部２１０、動きベクトル再生部２１１および結合動き情報再生部２１２を含む。端子３２は符号列解析部２０１に、端子３３は動き情報メモリ２０７に、端子３４は動き補償部２０５に、端子３６は動き情報メモリ２０７にそれぞれ接続されている。
【０１９２】
（動き情報再生部２０４の詳細な動作）
以下、各部の機能と動作について説明する。符号化モード判定部２１０は、符号列解析部２０１より供給されるマージフラグが「０」であるか「１」であるか判定する。マージフラグが「０」であれば、符号列解析部２０１より供給されるインター予測タイプ、参照インデックス、差分ベクトル、および予測ベクトルインデックスを動きベクトル再生部２１１に供給する。マージフラグが「１」であれば、符号列解析部２０１より供給されるマージインデックスを結合動き情報再生部２１２に供給する。また、スキップモードである場合も符号列解析部２０１より供給されるマージインデックスを結合動き情報再生部２１２に供給する。
【０１９３】
動きベクトル再生部２１１は、符号化モード判定部２１０より供給されるインター予測タイプ、参照インデックス、差分ベクトル、および予測ベクトルインデックスと、端子３３より供給される候補ブロック群から、動きベクトルを再生して動き情報を生成し、端子３４及び端子３６に供給する。
【０１９４】
結合動き情報再生部２１２は、端子３３より供給される候補ブロック群から結合動き情報候補リストを生成し、当該結合動き情報候補リストから符号化モード判定部２１０より供給されるマージインデックスによって示される結合動き情報候補の動き情報を選択して端子３４及び端子３６に供給する。
【０１９５】
（結合動き情報再生部２１２の詳細な構成）
続いて、結合動き情報再生部２１２の詳細な構成について説明する。図２９は、結合動き情報再生部２１２の構成を示す。結合動き情報再生部２１２は、結合動き情報候補リスト生成部２３０および結合動き情報選択部２３１を含む。端子３５は符号化モード判定部２１０に接続されている。
【０１９６】
（結合動き情報再生部２１２の詳細な動作）
以下、各部の機能と動作について説明する。図３０は結合動き情報再生部２１２の動作を説明する図である。結合動き情報候補リスト生成部２３０は、端子３３より供給される候補ブロック群から結合動き情報候補リストを生成し（Ｓ３１０）、当該結合動き情報候補リストを結合動き情報選択部２３１に供給する。
【０１９７】
結合動き情報選択部２３１は、端子３５より供給されるマージインデックスを取得し（Ｓ３１１）、結合動き情報候補リスト生成部２３０より供給される結合動き情報候補リストの中から、マージインデックスで示される結合動き情報候補を選択して結合動き情報を決定し（Ｓ３１２）、当該結合動き情報の動き情報を端子３４及び端子３６に供給する。
【０１９８】
（動きベクトル再生部２１１の詳細な構成）
続いて、動きベクトル再生部２１１の詳細な構成について説明する。図３１は、動きベクトル再生部２１１の構成を説明する図である。動きベクトル再生部２１１は、予測ベクトル候補リスト生成部２２０、予測ベクトル選択部２２１および加算部２２２を含む。端子３５は符号化モード判定部２１０に接続されている。
【０１９９】
（動きベクトル再生部２１１の詳細な動作）
以下、各部の機能と動作について説明する。図３２は動きベクトル再生部２１１の動作を説明する図である。動きベクトル再生部２１１は、端子３５より供給されるインター予測タイプがＬ０予測であれば、Ｌ０予測について動きベクトルの算出を行い、インター予測タイプがＬ１予測であれば、Ｌ１予測について動きベクトルの算出を行い、インター予測タイプがＢＩ予測であれば、Ｌ０予測とＬ１予測について動きベクトルの算出を行う。各ＬＸ予測の動きベクトルの算出は以下のように行われる。
【０２００】
予測ベクトル候補リスト生成部２２０は、端子３５より供給されるＬＸ予測の参照インデックス及び端子３３より供給される候補ブロック群からＬＸ予測の予測ベクトル候補リストを生成し（Ｓ３２０）、当該ＬＸ予測の予測ベクトルリストを予測ベクトル選択部２２１に供給する。
【０２０１】
予測ベクトル選択部２２１は、端子３５より供給されるＬＸ予測の予測ベクトルインデックスを取得し（Ｓ３２１）、予測ベクトル候補リスト生成部２２０より供給されるＬＸ予測の予測ベクトルリストからＬＸ予測の予測ベクトルインデックスによって示される予測ベクトル候補を選択してＬＸ予測の予測ベクトルとして決定し（Ｓ３２２）、当該ＬＸ予測の予測ベクトルと端子３５より供給されるＬＸ予測の差分ベクトルを加算してＬＸ予測の動きベクトルを算出する（Ｓ３２３）。
【０２０２】
当該ＬＸ予測の動きベクトルとインター予測タイプとが組み合わされて動き情報が生成され、端子３４及び端子３６に供給される。
【０２０３】
以上のように、動画像復号装置２００は、動画像符号化装置１００により符号化された符号列を復号して再生画像を生成することができる。
【０２０４】
時間候補利用許可フラグが０または１のいずれの場合にも備える場合、符号化と復号において、時間候補利用許可フラグが１である場合にも備える必要があるため、時間候補利用許可フラグが１である場合に必要となる回路規模やソフトウェア規模を縮小することはできない。
【０２０５】
例えば、ＡＶＣで定義されているような符号化ツールを分類したプロファイルなどで時間候補利用許可フラグを０に固定して運用することで、時間候補利用許可フラグが１となる場合に備える必要がなくなり、符号化と復号において時間候補ブロックを記憶する必要がないこと、時間予測ベクトル候補の導出が不要となることから、符号化と復号のいずれにおいてもメモリ容量を大きく削減すること、回路規模やソフトウェア規模を縮小することが可能となる。
【０２０６】
一方、時間候補利用許可フラグが１であることを許容する符号化と復号では、空間スケーリング予測ベクトル候補導出部１５１により導出される空間予測ベクトル候補と時間予測ベクトル候補導出部１５２により導出される時間予測ベクトル候補を時間候補利用許可フラグによって切り替えることで、式１または式２から式４のようなスケーリング回路を共有して回路規模を削減することができる。また、スケーリングの処理時間を１回にできるため処理時間を短縮することができる。
【０２０７】
［実施の形態２］
以下、実施の形態２について説明する。以下、実施の形態１とは異なる点について説明する。実施の形態１とは動き情報メモリ１１１内に記憶されている動き情報が異なる。実施の形態１では、動き情報メモリ１１１には動き情報生成部１０９より供給される動き情報が最小の予測ブロックサイズ単位で記憶されるとした。
【０２０８】
実施の形態２では、最大符号化ブロックで必要となる上方向の動き情報メモリを半分に削減するために、最大符号化ブロック境界で動き情報は半分に間引いて記憶される。
【０２０９】
図３３は最大符号化ブロック境界で動き情報が半分に間引いて記憶される場合に空間結合動き情報候補最大数を大きくすることが有効となることを説明する図である。処理対象の予測ブロックは８画素×８画素の符号化ブロックで予測ブロックサイズタイプがＮ×２Ｎの予測ブロック０であって、最大符号化ブロック境界に位置しているとする。このとき、上方向の動き情報であるＭ１とＭ１'、Ｍ２とＭ２'、Ｍ３とＭ３'はそれぞれ同一の動き情報を有することになる。この場合、処理対象の予測ブロックの空間候補ブロックであるブロックＢに相当するM２とブロックＣに相当するＭ２'は同じ動き情報となるため、冗長予測ベクトル候補削除部１５４によってブロックＣの候補は必ず削除される。
【０２１０】
以上のように、上方向の動き情報メモリが半分に間引かれている場合においてはブロックＥに相当するＭ１'を常に空間結合動き情報候補とすることで、符号化効率が向上する。
【０２１１】
［実施の形態３］
以下、実施の形態３について説明する。以下、実施の形態１とは異なる点について説明する。実施の形態１とはスライスヘッダのシンタックスが異なる。図３４は実施の形態３のスライスヘッダのシンタックスを説明する図である。実施の形態１では、マージ候補最大数はスライスヘッダにある5_minus_max_num_merge_candsによって決定されるとした。ここでは、スライスヘッダに4_minus_max_num_merge_candsが追加設置され、時間候補利用許可フラグが１であれば、5_minus_max_num_merge_candsが符号化または復号され、時間候補利用許可フラグが０であれば、4_minus_max_num_merge_candsが符号化または復号される。
【０２１２】
4_minus_max_num_merge_candsはマージ候補最大数を決定するためのパラメータであって、０から３までの整数となる。マージ候補最大数は４から4_minus_max_num_merge_candsを減算することで算出される。このように、実施の形態３では、時間候補利用許可フラグが０である場合には、時間候補利用許可フラグが１である場合よりもマージ候補最大数が小さく制限される。
【０２１３】
以下、実施の形態３における符号化制御部１１２及び復号制御部２０８のマージ候補最大数を決定する動作について説明する。図３５は実施の形態３におけるマージ候補最大数を決定する動作を説明するフローチャートである。最初に、時間候補利用許可フラグが１であるか検査する（Ｓ４００）。時間候補利用許可フラグが１であれば（Ｓ４００のＹ）、マージ候補最大数を５以下に設定し（Ｓ４０１）、処理を終了する。時間候補利用許可フラグが１でなければ（Ｓ４００のＮ）、マージ候補最大数を４以下に設定し（Ｓ４０２）、処理を終了する。
【０２１４】
実施の形態１では空間結合動き情報候補最大数は時間候補利用許可フラグによって算出されるとしたが、ここでは、空間結合動き情報候補最大数は４に固定されるとする。
【０２１５】
以下、時間候補利用許可フラグが０である場合には時間候補利用許可フラグが１である場合よりもマージ候補最大数を小さくする効果について説明する。
【０２１６】
時間候補利用許可フラグが０である場合に、空間結合動き情報候補最大数が４に固定されていると、結合動き情報候補リストには必ず第１補充結合動き情報候補または第２補充結合動き情報候補が追加されることになる。さらに、結合動き情報候補リストに時間結合動き情報候補は登録されないため、結合動き情報候補リストに登録される結合動き情報候補の平均数は必然的に少なくなる。そのため、第１補充結合動き情報候補は生成され難くなり、結合動き情報候補リストには、空間結合動き情報候補や第１補充結合動き情報候補よりも相対的に選択率の低い第２補充結合動き情報候補が増加することになる。
【０２１７】
そこで、時間候補利用許可フラグが０である場合にマージ候補最大数を小さくして、結合動き情報候補リストに選択率の低い候補が増加するのを抑制する。図３６はマージ候補最大数が小さい方に符号化効率が向上する一例を説明する図である。
【０２１８】
図３６（ａ）はマージ候補最大数が５である場合に、結合動き情報候補リスト内に結合動き情報候補ＣＡ、結合動き情報候補ＣＢ、結合動き情報候補ＣＣ、結合動き情報候補ＣＤ、結合動き情報候補ＣＥが登録されているとする。ここで、結合動き情報候補ＣＤが選択された場合、結合動き情報候補ＣＤの符号列は'１１１０'の４ビットとなる。
【０２１９】
図３６（ｂ）はマージ候補最大数が４である場合に、結合動き情報候補リスト内に結合動き情報候補ＣＡ、結合動き情報候補ＣＢ、結合動き情報候補ＣＣ、結合動き情報候補ＣＤが登録されているとする。ここで、結合動き情報候補ＣＤが選択された場合、結合動き情報候補ＣＤの符号列は'１１１'の３ビットとなる。
【０２２０】
以上のように、時間候補利用許可フラグが０である場合にマージ候補最大数を小さくすることで、マージ候補最大数を小さくした場合のマージインデックが最大となる結合動き情報候補が選択された場合にマージインデックスの符号量が１ビット小さくなり、符号化効率を向上させることができる。また、時間候補利用許可フラグが０である場合にマージ候補最大数を小さくすることで、符号化と復号において第１補充結合動き情報候補や第２補充結合動き情報候補の導出に係る処理量を削減することができる。また符号化において第１補充結合動き情報候補や第２補充結合動き情報候補のモード判定の評価に要する処理量を削減することができる。
【０２２１】
ここでは、スライスヘッダのシンタックスを変更することで、マージ候補最大数が時間候補利用許可フラグに依存する一例を示したが、これに限定されない。例えば、シンタックスは図６のままで、5_minus_max_num_merge_candsを１としたり、式７よりマージ候補最大数を算出することもできる。
MaxNumMergeCand = 5 - 5_minus_max_num_merge_cands - !enable_temporal_mvp_flag;    式７
【０２２２】
例えば、ＡＶＣで定義されているような符号化ツールを分類したプロファイルなどで時間候補利用許可フラグが０である場合には時間候補利用許可フラグが１である場合よりもマージ候補最大数が小さくなるように、マージ候補最大数を４に固定して運用することで、マージ候補最大数が５となる場合に備える必要がなくなり、符号化と復号において第５の結合動き情報候補に係る導出処理や記憶を行う必要がないこと、第５の結合動き情報候補に係る冗長結合動き情報候補削除部１６３の動作が不要であることから、符号化と復号においてメモリ容量を削減すること、回路規模やソフトウェア規模を縮小することが可能となる。
【０２２３】
［実施の形態４］
以下、実施の形態４について説明する。以下、実施の形態１とは異なる点について説明する。実施の形態１とは結合動き情報候補リスト生成部１４０の構成と動作が異なる。図３７は実施の形態３の結合動き情報候補リスト生成部１４０の構成を説明する図である。
【０２２４】
実施の形態１とは、時間結合動き情報候補導出部１６１がなく、冗長結合動き情報候補削除部１６３の後段に時間結合動き情報候補補充部１６６が追加されていることが異なる。
【０２２５】
図３８は実施の形態３の結合動き情報候補リスト生成部１４０の動作を説明するフローチャートである。
【０２２６】
最初に、空間結合動き情報候補導出部１６０は、端子１２より供給される空間候補ブロック群から０個から空間結合動き情報候補最大数の空間結合動き情報候補を導出し（Ｓ１１０）、当該空間結合動き情報候補を結合動き情報候補リスト構築部１６２に供給する。ここでは、時間候補利用許可フラグによらず、空間結合動き情報候補最大数は５とする。
【０２２７】
次に、結合動き情報候補リスト構築部１６２は０個から空間結合動き情報候補最大数の空間結合動き情報候補から結合動き情報候補リストを構築する（Ｓ１１３）。ここでは、結合動き情報候補リストには導出された順序で空間結合動き情報候補が順次登録されるものとする。
【０２２８】
次に、冗長結合動き情報候補削除部１６３は、結合動き情報候補リスト構築部１６２より供給される結合動き情報候補リストに登録されている結合動き情報候補を検査し、同一の動き情報を有する結合動き情報候補が複数存在する場合には１つの結合動き情報候補を残してその他の結合動き情報候補を削除する。また、結合動き情報候補リストに登録されている結合動き情報候補数が空間結合動き情報候補最大数である場合には、結合動き情報候補リストに登録されている結合動き情報候補数が空間結合動き情報候補最大数より１だけ小さくなるように結合動き情報候補リストの後方の結合動き情報候補を削除し（Ｓ１１４）、当該結合動き情報候補リストを時間結合動き情報候補補充部１６６に供給する。ここで、当該結合動き情報候補リストに登録されている結合動き情報候補は全てが異なる結合動き情報候補であって、当該結合動き情報候補リストに登録されている結合動き情報候補の最大数は（空間結合動き情報候補最大数−１）となる。
【０２２９】
次に、時間結合動き情報候補補充部１６６は、時間候補利用許可フラグ（enable_temporal_mvp_flag）が１であるか検査する（Ｓ１１１）。
【０２３０】
時間候補利用許可フラグが１であれば（Ｓ１１１のＹ）、時間結合動き情報候補補充部１６６は、端子１２より供給される時間候補ブロック群から０個から時間結合動き情報候補最大数の時間結合動き情報候補を導出して、当該時間結合動き情報候補を冗長結合動き情報候補削除部１６３より供給される結合動き情報候補リストに追加し（Ｓ１１７）、当該結合動き情報候補リストを第１結合動き情報候補補充部１６４に供給する。
【０２３１】
時間候補利用許可フラグが０であれば（Ｓ１１１のＮ）、時間結合動き情報候補補充部１６６は、スキップＳ１１２をスキップし、冗長結合動き情報候補削除部１６３より供給される結合動き情報候補リストを第１結合動き情報候補補充部１６４に供給する。
【０２３２】
次に、第１結合動き情報候補補充部１６４は、冗長結合動き情報候補削除部１６３より供給される結合動き情報候補リストに登録された結合動き情報候補から０個から２個の第１補充結合動き情報候補を導出してマージ候補最大数を超えないように結合動き情報候補リストに追加し（Ｓ１１５）、当該結合動き情報候補リストを第２結合動き情報候補補充部１６５に供給する。
【０２３３】
次に、第２結合動き情報候補補充部１６５は、第１結合動き情報候補補充部１６４より供給される結合動き情報候補リストに登録された結合動き情報候補の数がマージ候補最大数に達するまで第２補充結合動き情報候補を導出して当該結合動き情報候補リストに追加し（Ｓ１１６）、当該結合動き情報候補リストを端子１９に供給する。
【０２３４】
以上のように、時間候補利用許可フラグによらず空間結合動き情報候補最大数を５にして、冗長結合動き情報候補削除部１６３において結合動き情報候補リストに登録されている結合動き情報候補の最大数を（空間結合動き情報候補最大数−１）に制限することで、例えば、ブロックＢの動き情報とブロックＣの動き情報だけが同一であってその他の動き情報が異なる場合に、ブロックＤの動き情報を結合動き情報候補リストに追加することができる。そのため、時間候補利用許可フラグが１である場合にも、第１補充結合動き情報候補や第２補充結合動き情報候補よりも相対的に選択率の高いブロックＤの動き情報を利用することが可能となるため、符号化効率が向上する。
【０２３５】
また、時間結合動き情報候補の導出と結合動き情報候補リスト構築部１６２及び冗長結合動き情報候補削除部１６３との依存性を排除することで、空間結合動き情報候補導出部１６０、結合動き情報候補リスト構築部１６２、及び冗長結合動き情報候補削除部１６３を一体とすることが容易となって、回路規模やソフトウェア規模を縮小することが容易となる。
【０２３６】
また、時間結合動き情報候補の導出には式１または式２から式４のようなスケーリングを要するため、一般的には空間結合動き情報候補よりも処理時間が長くなり、時間結合動き情報候補の導出と空間結合動き情報候補導出部１６０、結合動き情報候補リスト構築部１６２、及び冗長結合動き情報候補削除部１６３とを同時に処理することで、処理効率が向上する。
【０２３７】
また、空間結合動き情報候補が空間方向の連続性を基づいて導出されるのに対し、時間結合動き情報候補は時間方向の連続性に基づいて導出されており、これらの性質は異なるものである。そのため、冗長結合動き情報候補削除部１６３において時間結合動き情報候補が削除される確率は空間結合動き情報候補が削除される確率よりも相対的に小さくなるため、第１補充結合動き情報候補や第２補充結合動き情報候補の追加される個数への影響も限定的となって符号化効率の低下も抑制される。
【０２３８】
以上述べた実施の形態の動画像符号化装置が出力する動画像の符号化ストリームは、実施の形態で用いられた符号化方法に応じて復号することができるように特定のデータフォーマットを有しており、動画像符号化装置に対応する動画像復号装置がこの特定のデータフォーマットの符号化ストリームを復号することができる。
【０２３９】
動画像符号化装置と動画像復号装置の間で符号化ストリームをやりとりするために、有線または無線のネットワークが用いられる場合、符号化ストリームを通信路の伝送形態に適したデータ形式に変換して伝送してもよい。その場合、動画像符号化装置が出力する符号化ストリームを通信路の伝送形態に適したデータ形式の符号化データに変換してネットワークに送信する動画像送信装置と、ネットワークから符号化データを受信して符号化ストリームに復元して動画像復号装置に供給する動画像受信装置とが設けられる。
【０２４０】
動画像送信装置は、動画像符号化装置が出力する符号化ストリームをバッファするメモリと、符号化ストリームをパケット化するパケット処理部と、パケット化された符号化データをネットワークを介して送信する送信部とを含む。動画像受信装置は、パケット化された符号化データをネットワークを介して受信する受信部と、受信された符号化データをバッファするメモリと、符号化データをパケット処理して符号化ストリームを生成し、動画像復号装置に提供するパケット処理部とを含む。
【０２４１】
以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ＲＯＭ（リード・オンリ・メモリ）やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【０２４２】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０２４３】
１００  動画像符号化装置、  １０１  予測ブロック画像取得部、  １０２  減算部、  １０３  予測誤差符号化部、  １０４  符号列生成部、  １０５  予測誤差復号部、  １０６  動き補償部、  １０７  加算部、  １０８  動きベクトル検出部、  １０９  動き情報生成部、  １１０  フレームメモリ、  １１１  動き情報メモリ、  １２０  予測ベクトルモード決定部、  １２１  マージモード決定部、  １２２  予測符号化モード決定部、  １３０  予測ベクトル候補リスト生成部、  １３１  予測ベクトル決定部、  １４０  結合動き情報候補リスト生成部、  １４１  結合動き情報選択部、  １５０  空間予測ベクトル候補導出部、  １５１  空間スケーリング予測ベクトル候補導出部、  １５２  時間予測ベクトル候補導出部、  １５３  予測ベクトルリスト構築部、  １５４  冗長予測ベクトル候補削除部、  １５５  予測ベクトル候補補充部、  １６０  空間結合動き情報候補導出部、  １６１  時間結合動き情報候補導出部、  １６２  結合動き情報候補リスト構築部、  １６３  冗長結合動き情報候補削除部、  １６４  第１結合動き情報候補補充部、  １６５  第２結合動き情報候補補充部、  １６６  時間結合動き情報候補補充部、  ２００  動画像復号装置、  ２０１  符号列解析部、  ２０２  予測誤差復号部、  ２０３  加算部、  ２０４  動き情報再生部、  ２０５  動き補償部、  ２０６  フレームメモリ、  ２０７  動き情報メモリ、  ２１０  符号化モード判定部、  ２１１  動きベクトル再生部、  ２１２  結合動き情報再生部、  ２２０  予測ベクトル候補リスト生成部、  ２２１  予測ベクトル選択部、  ２２２  加算部、  ２３０  結合動き情報候補リスト生成部、  ２３１  結合動き情報選択部。
【図１】
2013145972.tif 000003
【図２】
2013145972.tif 000004
【図３】
2013145972.tif 000005
【図４】
2013145972.tif 000006
【図５】
2013145972.tif 000007
【図６】
2013145972.tif 000008
【図７】
2013145972.tif 000009
【図８】
2013145972.tif 000010
【図９】
2013145972.tif 000011
【図１０】
2013145972.tif 000012
【図１１】
2013145972.tif 000013
【図１２】
2013145972.tif 000014
【図１３】
2013145972.tif 000015
【図１４】
2013145972.tif 000016
【図１５】
2013145972.tif 000017
【図１６】
2013145972.tif 000018
【図１７】
2013145972.tif 000019
【図１８】
2013145972.tif 000020
【図１９】
2013145972.tif 000021
【図２０】
2013145972.tif 000022
【図２１】
2013145972.tif 000023
【図２２】
2013145972.tif 000024
【図２３】
2013145972.tif 000025
【図２４】
2013145972.tif 000026
【図２５】
2013145972.tif 000027
【図２６】
2013145972.tif 000028
【図２７】
2013145972.tif 000029
【図２８】
2013145972.tif 000030
【図２９】
2013145972.tif 000031
【図３０】
2013145972.tif 000032
【図３１】
2013145972.tif 000033
【図３２】
2013145972.tif 000034
【図３３】
2013145972.tif 000035
【図３４】
2013145972.tif 000036
【図３５】
2013145972.tif 000037
【図３６】
2013145972.tif 000038
【図３７】
2013145972.tif 000039
【図３８】
2013145972.tif 000040