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