(57)【要約】  複数の参照ブロックを用いて予測ブロックを生成し符号化を行う場合の符号化効率を向上させる。動画像符号化装置は、符号化済みフレームから抽出した複数の参照画像を用いて符号化対象ブロックの予測画像を生成して符号化対象ブロックとの差分値を符号化する画面間予測符号化を行う。動画像符号化装置は、予測方法候補生成部１２０、予測画像生成部、可変長符号化部１０８を備える。予測方法候補生成部１２０は、符号化対象ブロックに関わる所定の情報に基づいて予測方法の候補を生成し、予測画像生成部は、生成された予測方法の候補に基づいて符号化対象ブロックの予測画像を生成する。可変長符号化部１０８は、生成された予測画像を用いて画面間予測符号化を行う場合、予測方法候補生成部１２０が生成した予測方法の候補の数が２以上の場合に、上記予測画像の生成に使用した予測方法を符号化する。
2009041215.tif 000002
【特許請求の範囲】
【請求項１】
複数の参照画像を用いて生成された復号対象ブロックの予測画像に、復号対象ブロックの差分値を加算して復号対象ブロックを復号する動画像復号装置であって、
予測方法候補生成部と、予測画像生成部と、可変長符号復号部を備え、
前記予測方法候補生成部は、復号対象ブロックに関わる所定の情報に基づいて、複数の参照画像を用いて予測画像を生成する方法を定める予測方法の候補を生成し、
前記可変長符号復号部は、予測方法の候補の数が２通り以上の場合に、前記符号化データを復号して前記予測方法候補生成部で生成した前記予測方法の候補から予測方法を特定し、
前記予測画像生成部は、前記可変長符号復号部が復号した前記予測方法に基づいて予測画像を生成することを特徴とする動画像復号装置。
【請求項２】
前記所定の情報が、複数の参照画像間の差の大きさ、量子化係数、動き補償モードのいずれかまたは複数の参照画像間の差の大きさ、量子化係数、動き補償モードの組み合わせを含むことを特徴とする請求項１記載の動画像復号装置。
【請求項３】
前記複数の参照画像間の差の大きさが所定の値より小さい場合に、前記参照画像間の差の大きさが前記所定の値より大きい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴とする請求項２記載の動画像復号装置。
【請求項４】
前記量子化係数が所定の値より大きい場合に、前記量子化係数が前記所定より小さい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴とする請求項２記載の動画像復号装置。
【請求項５】
前記動き補償モードが複数のモードであり、モードの性質に応じて、当該モードの場合についての前記予測方法の候補の数及び／または前記予測方法の候補の予測の広がりが異なることを特徴とする請求項２記載の動画像復号装置。
【請求項６】
前記参照画像間の差の大きさを判定する前記所定の値を、量子化係数が大きくなるほど大きくすることを特徴とする請求項３記載の動画像復号装置。
【請求項７】
復号対象ブロックの予測方法を予測する予測方法予測部を備え、前記予測方法予測部は、復号対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離に基づいて決定される予測方法を用いて、復号対象ブロックの予測方法の予測値を算出することを特徴とする請求項１記載の動画像復号装置。
【請求項８】
符号化済みのフレームから抽出した複数の参照画像を用いて符号化対象ブロックの予測画像を生成して符号化対象ブロックとの差分値を符号化する画面間予測符号化を行う動画像符号化装置であって、
予測方法候補生成部と、予測画像生成部と、可変長符号化部を備え、
前記予測方法候補生成部は、符号化対象ブロックに関わる所定の情報に基づいて、複数の参照画像を用いて予測画像を生成する方法を定める予測方法の候補を生成し、
前記予測画像生成部は、前記複数の参照画像を用いて前記予測方法候補生成部が生成した前記予測方法の候補に基づいて前記符号化対象ブロックの予測画像を生成し、
前記可変長符号化部は、前記予測画像生成部が生成した前記予測画像を用いて画面間予測符号化を行う場合、前記予測方法候補生成部が生成した予測方法の候補の数が２通り以上の場合に、前記予測画像の生成に使用した前記予測方法を符号化することを特徴とする動画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像符号化装置及び動画像復号装置に関し、双予測など複数の参照画像より動き予測を行う動画像符号化装置及び動画像復号装置に関する。
【背景技術】
【０００２】
動画像の符号化では、時間方向及び空間方向の冗長性を削減することによって情報量の圧縮が行われる。時間的な冗長性の削減を目的とする画面間予測符号化では、既に符号化済みのフレームを参照してブロック単位で動きの検出及び予測画像（予測ブロック）の生成を行い、得られた予測ブロックと入力画像を分割したブロック（符号化対象ブロック）との差分値に対して符号化を行う。【０００３】
画面間予測符号化方式には、前方向予測、後方向予測、複数参照画像予測がある。前方向予測とは時間的に前のフレームから予測ブロックを生成するものであり、後方向予測とは時間的に後のフレームから予測ブロックを生成するものである。複数参照画像予測とは、時間的な前後に関わらず既に符号化済みのフレームから複数の動き補償画像（参照画像、参照ブロック）を生成し、さらに生成された複数の参照ブロックを用いて予測ブロックを生成するものである。予測ブロックの生成に用いる参照ブロックが２つのときを特に双予測と呼ぶが、２つを超える参照ブロックを用いるものも知られている。【０００４】
複数参照画像予測に関する従来の符号化技術としては、特許文献１に開示のものがある。図３６は、特許文献１に開示の符号化装置の構成を示すブロック図である。特許文献１の符号化装置は、変換部３６０１、量子化部３６０２、逆量子化部３６０３、逆変換部３６０４、フレームメモリ３６０５、予測ブロック候補生成部３６０６、予測ブロック選択部３６０７、可変長符号化部３６０８、減算部３６１０、加算部３６１１から構成される。【０００５】
符号化装置に画像が入力されると、予測ブロック候補生成部３６０６ではフレームメモリ３６０５に保存された符号化済みフレームを用いて予測ブロック候補が生成される。予測ブロック選択部３６０７では、予測ブロック候補生成部３６０６で生成された予測ブロック候補から最適な予測ブロックが選択される。【０００６】
選択された予測ブロックは減算部３６１０に入力され、符号化対象ブロックと予測ブロックの差分（予測誤差）が算出される。算出された予測誤差は、変換部３６０１によりＤＣＴ変換などの変換がなされ、得られた変換係数は量子化部３６０２により量子化され量子化変換係数が生成される。量子化変換係数は二分岐され、一方で可変長符号化部３６０８により符号化される。【０００７】
量子化変換係数は、他方において逆量子化部３６０３、逆変換部３６０４を経て予測誤差が再生される。再生された予測誤差は加算部３６１１で予測ブロックに加算され局所復号ブロックが生成される。局所復号ブロックはフレームメモリ３６０５に出力され、そこで保存される。保存された局所復号ブロックは、後続のフレーム等を符号化する場合に参照される。【０００８】
予測ブロック候補生成部３６０６は、内部に図示しない動き探索部を備える。動き探索部は、フレームメモリ３６０５に保存されたフレームから符号化対象ブロックに似た画像（参照ブロック）を抽出する。双予測の場合、２つの参照ブロック（各々、参照ブロック１、参照ブロック２と呼ぶ）を抽出する。以下、双予測を用いる場合について説明する。【０００９】
予測ブロック候補生成部３６０６では、４種類のブロック、すなわち参照ブロック１、参照ブロック２、参照ブロック１と参照ブロック２の画素値を平均して生成されるブロック、参照ブロック１の画素値を２倍したブロックから参照ブロック２の画素値を減じて生成されるブロックを、それぞれ予測ブロック候補として生成する。すなわち、次に示すように参照ブロックそのもの、及び、参照ブロックと線形予測係数の積和演算から生成される画像を予測ブロック候補とする（いわゆる重み付き予測を行う）。
予測ブロック候補１  ＝  （参照ブロック１）
予測ブロック候補２  ＝  （参照ブロック２）
予測ブロック候補３  ＝  （参照ブロック１）／２＋（参照ブロック２）／２
予測ブロック候補４  ＝  （参照ブロック１）×２−（参照ブロック２）【００１０】
上記の４つの予測ブロック候補、及び予測ブロックの生成に必要な情報（動き情報と線形予測係数）は、予測ブロック選択部３６０７に出力される。動き情報は、抽出した参照ブロックの位置を示す情報（位置は、符号化対象ブロックからの相対的な位置で表される）、すなわち動きベクトルである。【００１１】
予測ブロック選択部３６０７は、予測ブロック候補生成部３６０６で生成された複数の予測ブロック候補から最も符号化対象ブロックに似たブロックを予測ブロックとして選択する。予測ブロック選択部３６０７は、選択した予測ブロックを生成するための情報（動き情報と線形予測係数）を可変長符号化部３６０８に出力する。
可変長符号化部３６０８では、量子化部３６０２から入力された量子化変換係数と、予測ブロック選択部３６０７から入力された動き情報、線形予測係数に関する情報が符号化される。【００１２】
図３７は、線形予測係数（Ｗ１、Ｗ２）と線形予測係数を示すインデックスの関係を説明する図である。可変長符号化部３６０８は、線形予測係数そのものではなく、線形予測係数を示すインデックスを符号化する。図３７において、例えば、線形予測係数（Ｗ１，Ｗ２）＝（０．５，０．５）のとき、インデックス０であり、これを符号化する。予測ブロック候補の生成時に選択可能な線形予測係数のセットは、スライスヘッダもしくはフレームヘッダで符号化され、スライス単位もしくはフレーム単位で変更することができる。
【特許文献１】特開２００４−７３７９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、従来の複数の参照ブロックを用いて予測ブロックを生成する場合に用いる予測方法（上述の例では、線形予測係数）をブロック単位で選択する技術においては、選択可能な予測方法のセットを、スライス単位もしくはフレーム単位で固定としていた。すなわち、選択可能な予測方法の数（選択可能な予測方法のセットに含まれる予測方法の数）と選択可能な予測方法のセットの内容は固定であった。【００１４】
選択可能な予測方法の数が増加すると、その分、予測方法の符号化に必要な符号量は増加するが、従来技術では選択可能な予測方法の数が固定であるから、より少ない予測方法のセットで十分なブロックに対してもその固定数分の符号量を予測方法の符号化に必要とし、その分符号化効率が低下していた。さらに、選択可能な予測方法のセットの内容が固定であるから、符号化／復号対象ブロックの性質によって好適な予測方法が異なるにも関わらず、その予測方法が、当該スライス・フレームにおける選択可能な予測方法のセットに含まれていない場合にはその予測方法を用いることができず、符号化効率が低下していた。【００１５】
本発明は、上述のような実情を考慮してなされたものであり、複数の参照ブロックを用いて予測ブロックを生成し符号化を行う場合の符号化効率を向上させることを目的とする。
【課題を解決するための手段】
【００１６】
上記課題を解決するために、本発明の第１の技術手段は、複数の参照画像を用いて生成された復号対象ブロックの予測画像に、復号対象ブロックの差分値を加算して復号対象ブロックを復号する動画像復号装置であって、予測方法候補生成部と、予測画像生成部と、可変長符号復号部を備え、前記予測方法候補生成部は、復号対象ブロックに関わる所定の情報に基づいて、複数の参照画像を用いて予測画像を生成する方法を定める予測方法の候補を生成し、前記可変長符号復号部は、予測方法の候補の数が２通り以上の場合に、前記符号化データを復号して前記予測方法候補生成部で生成した前記予測方法の候補から予測方法を特定し、前記予測画像生成部は、前記可変長符号復号部が復号した前記予測方法に基づいて予測画像を生成することを特徴としたものである。【００１７】
第２の技術手段は、第１の技術手段において、前記所定の情報が複数の参照画像間の差の大きさ、量子化係数、動き補償モードのいずれかまたは複数の参照画像間の差の大きさ、量子化係数、動き補償モードの組み合わせを含むことを特徴としたものである。【００１８】
第３の技術手段は、第２の技術手段において、前記複数の参照画像間の差の大きさが所定の値より小さい場合に、前記参照画像間の差の大きさが前記所定の値より大きい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴としたものである。【００１９】
第４の技術手段は、第２の技術手段において、前記量子化係数が所定の値より大きい場合に、前記量子化係数が前記所定より小さい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴としたものである。【００２０】
第５の技術手段は、第２の技術手段において、前記動き補償モードが複数のモードであり、モードの性質に応じて、当該モードの場合についての前記予測方法の候補の数及び／または前記予測方法の候補の予測の広がりが異なることを特徴としたものである。【００２１】
第６の技術手段は、第３の技術手段において、前記参照画像間の差の大きさを判定する前記所定の値を、量子化係数が大きくなるほど大きくすることを特徴としたものである。【００２２】
第７の技術手段は、第１の技術手段において、復号対象ブロックの予測方法を予測する予測方法予測部を備え、前記予測方法予測部は、復号対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離に基づいて決定される予測方法を用いて、復号対象ブロックの予測方法の予測値を算出することを特徴としたものである。【００２３】
第８の技術手段は、符号化済みのフレームから抽出した複数の参照画像を用いて符号化対象ブロックの予測画像を生成して符号化対象ブロックとの差分値を符号化する画面間予測符号化を行う動画像符号化装置であって、予測方法候補生成部と、予測画像生成部と、可変長符号化部を備え、前記予測方法候補生成部は、符号化対象ブロックに関わる所定の情報に基づいて、複数の参照画像を用いて予測画像を生成する方法を定める予測方法の候補を生成し、前記予測画像生成部は、前記複数の参照画像を用いて前記予測方法候補生成部が生成した前記予測方法の候補に基づいて前記符号化対象ブロックの予測画像を生成し、前記可変長符号化部は、前記予測画像生成部が生成した前記予測画像を用いて画面間予測符号化を行う場合、前記予測方法候補生成部が生成した予測方法の候補の数が２通り以上の場合に、前記予測画像の生成に使用した前記予測方法を符号化することを特徴としたものである。
【発明の効果】
【００２４】
複数の参照ブロックを用いて予測ブロックを生成する場合に用いる予測方法をブロック単位で選択する技術において、符号化／復号対象ブロックに関する所定の情報（例えば、動き補償モード、量子化係数、参照ブロックの差の大きさ）に基づいて選択可能な予測方法のセットを変化させる。これにより選択可能な予測方法の数と選択可能な予測方法の内容をブロック単位で変化させることができる。【００２５】
選択可能な予測方法の数を変化させることができることから、選択可能な予測方法の数が少なくても十分なブロックでは選択可能な予測方法の数を少なくすることによって、予測方法の符号化に必要な符号量を減らし符号化効率を向上させることができる。特にある符号化／復号対象ブロックに対する選択可能な予測方法の数を１通りにする場合には当該ブロックにおいて予測方法を符号化する必要がないため、符号量を大きく減らすことができる。また符号化処理では、選択可能な予測方法毎に選択用のコストの計算が必要なため、選択可能な予測方法の数が多いほど演算量が大きくなる。本発明では、選択可能な予測方法の数を減らすことができることから演算量も減らすことができる。【００２６】
さらに、選択可能な予測方法のセットの内容を変化させることができることから、符号化／復号対象ブロックの性質に好適な予測方法を、選択可能な予測方法のセットに含まれるようにすることができ、好適な予測方法が当該ブロックで選択可能になることで、符号化効率を向上させることができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１の実施の形態の動画像符号化装置の構成を示すブロック図である。
【図２】予測方法と予測方法を示すインデックスの関係を説明する図である。
【図３】本発明の第１、第２の実施の形態に関わる動き補償画像の差の大きさから選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。
【図４】予測方法からコード番号に変換する方法の一例を示す図である。
【図５】予測方法からコード番号に変換する方法の別の一例を示す図である。
【図６】コード番号を符号化する方法の一例を示す図である。
【図７】符号化方法Ａに関わる可変長符号化部１０８の内部の構成の一例を示す図である。
【図８】符号化方法Ｂに関わる可変長符号化部１０８の内部の構成の一例を示す図である。
【図９】符号化対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離を説明する図である
【図１０】時間的距離を利用する場合の予測方法予測部８８３及び予測方法予測部２０８３の動作を説明する図である。
【図１１】予測方法予測値決定部１０３４の動作を説明する図である。
【図１２】本発明の第１、第２の実施の形態に関わる動き補償画像の差の大きさから選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。
【図１３】本発明に関わる動画像符号化の手順を示すフローチャートである。
【図１４】フレーム番号と相対インデックスの説明図である。
【図１５】相対インデックスを用いて参照フレームを特定するための情報を符号化する例を説明する図である。
【図１６】本発明の第２の実施の形態の動画像復号装置の構成を示すブロック図である。
【図１７】コード番号から予測方法に変換する方法の一例を示す図である。
【図１８】コード番号から予測方法に変換する方法の別の一例を示す図である。
【図１９】復号方法Ａに関わる可変長符号復号部１６００の内部の構成の一例を示す図である。
【図２０】復号方法Ｂに関わる可変長符号復号部１６００の内部の構成の一例を示す図である。
【図２１】本発明に関わる動画像復号の手順を示すフローチャートである。
【図２２】本発明の第３の実施の形態の動画像符号化装置の構成を示すブロック図である。
【図２３】本発明の第３、第４の実施の形態に関わる量子化係数から選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。
【図２４】本発明の第４の実施の形態の動画像復号装置の構成を示すブロック図である。
【図２５】本発明の第５の実施の形態の動画像符号化装置の構成を示すブロック図である。
【図２６】本発明の第５、第６の実施の形態に関わる動き補償モードから、選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。
【図２７】本発明の第５、第６の実施の形態に関わる動き補償モードから、選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。
【図２８】本発明の第６の実施の形態の動画像復号装置の構成を示すブロック図である。
【図２９】本発明の第７の実施の形態の動画像符号化装置の構成を示すブロック図である。
【図３０】本発明の第７、第８の実施の形態に関わる、動き補償画像の差の大きさと量子化係数と動き補償モードから、選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。
【図３１】本発明の第７、第８の実施の形態に関わる、動き補償画像の差の大きさと量子化係数と動き補償モードから、選択可能な予測方法のセットと予測セット番号を決定する方法の別の例を示す図である。
【図３２】本発明の第７、第８の実施の形態に関わる、動き補償画像の差の大きさと量子化係数と動き補償モードから、選択可能な予測方法のセットと予測セット番号を決定する方法の別の例を示す図である。
【図３３】本発明の第７、第８の実施の形態に関わる、動き補償画像の差の大きさと量子化係数と動き補償モードから、選択可能な予測方法のセットと予測セット番号を決定する方法のさらに別の例を示す図である。
【図３４】本発明の第７、第８の実施の形態に関わる、動き補償画像の差の大きさと量子化係数と動き補償モードから、選択可能な予測方法のセットと予測セット番号を決定する方法のさらに別の例を示す図である。
【図３５】本発明の第８の実施の形態の動画像復号装置の構成を示すブロック図である。
【図３６】従来の双予測を用いる動画像符号化装置の構成を示すブロック図である。
【図３７】従来の動画像符号化装置の線形予測係数と線形予測係数を示すインデックスの関係を説明する図である。
【符号の説明】
【００２８】
１０１，２２０１，２５０１，２９０１，３６０１…変換部、１０２，２２０２，２５０２，２９０２，３６０２…量子化部、１０３，１６０３，２２０３，２４０３，２５０３，２８０３，２９０３，３５０３，３６０３…逆量子化部、１０４，１６０４，２２０４，２４０４，２５０４，２８０４，２９０４，３５０４，３６０４…逆変換部、１０５，１６０５，２２０５，２４０５，２５０５，２８０５，２９０５，３５０５，３６０５…フレームメモリ、１０６，２２０６，２５０６，２９０６，３６０６…予測ブロック候補生成部、１０７，２２０７，２５０７，２９０７，３６０７…予測ブロック選択部、１０８，２２０８，２５０８，２９０８，３６０８…可変長符号化部、１１０，２２１０，２５１０，２９１０，３６１０…減算部、１１１，１６１１，２２１１,２４１１，２５１１，２８１１，２９１１，３５１１，３６１１…加算部、１２０，１６２０，２２２０，２４２０，２５２０，２８２０，２９２０，３５２０…予測方法候補生成部、７８１，８８１，２０８１…予測方法・コード番号変換部、７８２，８８２…コード番号符号化部、８８３，２０８３…予測方法予測部、８８４，２０８４…予測方法保存部、８８５…スイッチ、１０３１…時間的距離算出部、１０３２…時間的重み算出部、１０３３…時間的予測方法算出部、１０３４…予測方法予測値決定部、１６００，２４００，２８００，３５００…可変長符号復号部、１６０６，２４０６，２８０６，３５０６…予測ブロック生成部、１６６１，２４６１，２８６１，３５６１…動き補償部、１６６２，２４６２，２８６２，３５６２…予測ブロック予測部、１９８０，２０８０…コード番号復号部、１９８６，２０８６…コード番号・予測方法変換部、１９８７…デフォルト値保持部、１９８８，２０８８…スイッチ、２２３０，２９３０…量子化係数設定部。
【発明を実施するための最良の形態】
【００２９】
＜＜実施形態１＞＞
図１は、本発明の第１の実施の形態の動画像符号化装置の構成を示すブロック図である。本符号化装置は、変換部１０１、量子化部１０２、逆量子化部１０３、逆変換部１０４、フレームメモリ１０５、予測ブロック候補生成部１０６、予測ブロック選択部１０７、可変長符号化部１０８、減算部１１０、加算部１１１、予測方法候補生成部１２０を備える。【００３０】
符号化装置に入力されたフレーム（符号化対象フレーム）はブロック（符号化対象ブロック）に分割され、符号化対象ブロック毎に符号化が行われる。符号化装置に符号化対象ブロックが入力されると、予測ブロック候補生成部１０６では、フレームメモリ１０５に保存された符号化済みフレームを用いて符号化対象ブロックに対する複数のブロック（予測ブロック候補）が生成される。予測ブロック選択部１０７では、予測ブロック候補生成部１０６で生成された予測ブロック候補から最適なブロック（予測ブロック）が選択される。【００３１】
選択された予測ブロックは減算部１１０に入力され、符号化対象ブロックと予測ブロックの差分（予測誤差）が算出される。算出された予測誤差は、変換部１０１によりＤＣＴ変換などの変換がなされ、得られた変換係数は量子化部１０２により量子化され量子化変換係数が生成される。量子化変換係数は二分岐され、一方で可変長符号化部１０８により符号化される。【００３２】
量子化変換係数は、他方において逆量子化部１０３、逆変換部１０４を経て予測誤差が再生される。再生された予測誤差は加算部１１１で予測ブロックに加算され局所復号ブロックが生成される。局所復号ブロックはフレームメモリ１０５に出力され、そこで符号化済みフレームとして保存される。保存された符号化済みフレームは、後続のフレームもしくは現フレームの後続の符号化対象ブロックを符号化する場合に参照される。【００３３】
＜予測ブロック候補生成部１０６（１）＞
予測ブロック候補生成部１０６は、内部に図示しない動き探索部を備える。動き探索部は、フレームメモリ１０５に保存されたフレームから符号化対象ブロックに似たブロック（参照ブロック）を抽出する。つまり本実施形態では、Ｎ個の参照ブロック（各々、参照ブロック１、参照ブロック２、・・・、参照ブロックＮと呼ぶ）を抽出する。
参照ブロックは、予測ブロック候補の生成に用いられる。以下、参照ブロックから予測ブロック候補を生成する方法について説明する。【００３４】
＜予測ブロック候補の生成方法＞
複数の参照ブロックから予測ブロック候補を生成する方法の一つは、参照ブロックと線形予測係数の積和演算から予測ブロック候補を生成するもの（線形予測）である。この場合予測ブロック候補は
予測ブロック候補  ＝  （参照ブロック１）×Ｗ１＋（参照ブロック２）×Ｗ２
＋・・・＋（参照ブロックＮ）×ＷＮ＋Ｄ
のように生成される。ここでＷ１、Ｗ２、・・・、ＷＮは線形予測係数であり、Ｄはオフセットである。なおＤは０でも良い。【００３５】
本明細書では予測ブロック候補の生成に参照ブロックを２つ用いる場合（上記でＮ＝２、双予測の場合）を特に詳細に説明する。
この場合予測ブロック候補は、
予測ブロック候補  ＝  （参照ブロック１）×Ｗ１＋（参照ブロック２）×Ｗ２
・・・（式１）
のように生成される（Ｄ＝０としている）。【００３６】
なお本発明の実施の形態では、複数参照画像予測での予測ブロック候補の生成において、線形予測以外の方法で複数の参照ブロックから予測ブロック候補を生成しても良い。例えば、２次以上の高次の予測や、エッジ抽出やヒストグラム抽出、各種変換などの画像処理を用いたものが考えられるが、本実施形態では、線形予測以外の予測方法の説明は省略する。【００３７】
本明細書では、予測方法とは複数の参照ブロックから予測ブロック候補を生成する方法を意味する。予測方法は、予測ブロック候補の生成に用いられるパラメータ（例えば、線形予測係数（Ｗ１、Ｗ２））で示すことができるし、上記パラメータを特定するインデックスを用いて示すこともできる。線形予測係数（Ｗ１、Ｗ２）は、（０、１）、（１、０）のようにゼロの値を含んでも構わない。また、（２、−１）、（１、−２）のように、負の値を含んでも構わない。なお、負の値を含む場合には、予測ブロック候補を生成する関数にクリップ処理を含める方が良い。すなわち、ＸをＭＩＮ、ＭＡＸの間にクリップする関数ＣＬＩＰ（ＭＩＮ、ＭＡＸ、Ｘ）を用いて
予測ブロック候補  ＝  ＣＬＩＰ（０、２５５、
（参照ブロック１）×Ｗ１＋
（参照ブロック２）×Ｗ２＋
・・・＋（参照ブロックＮ）×ＷＮ＋Ｄ）
のように予測ブロック候補を生成すると良い。ここで上式の０及び２５５の値はビット深度が８ビットの場合を想定した例であり、これに限るわけではない。【００３８】
図２は、本発明に関する予測方法と予測方法を示すインデックスの関係を説明する図である。以下の説明に使用する予測方法は、図２に示すように、予測ブロック候補の生成パラメータ（ここでは線形予測係数）で、（４／８、４／８）、（５／８、３／８）、（３／８、５／８）、（６／８、２／８）、（２／８、６／８）の５つであり、これらは各々、０、１、２、３、４のインデックスで示すことができる。【００３９】
予測ブロック候補生成部１０６では、参照ブロックが全て生成された時点で、参照ブロックの差の大きさＤＩＦＦを予測方法候補生成部１２０に出力する。参照ブロックの差の大きさＤＩＦＦとは、複数の参照ブロックが与えられた場合に、それら参照ブロックがどの程度違っているかを示すものである。【００４０】
参照ブロックの差の大きさＤＩＦＦの計算方法には様々な方法が考えられるが、ここでは２通りの方法を説明する。説明では２つのブロック（ブロックｋ、ブロックｌ）の差ＤＩＦＦｋｌを用いるが、この２つのブロックの差ＤＩＦＦｋｌは、以下のように、画素単位の差の絶対値和ＳＡＤ（Sum Of Absolute Difference）もしくは画素単位の差の２乗和ＳＳＤ（Sum Of Squared Difference）で定義される。
ブロックの差ＤＩＦＦｋｌは、ＳＡＤの場合とＳＳＤの場合とでそれぞれ、以下の数１、数２で表される。【００４１】
【数１】
2009041215.tif 000003
【００４２】
【数２】
2009041215.tif 000004
【００４３】
参照ブロックの差の大きさＤＩＦＦの計算方法は、さらに各ブロックのＤＣ値の差より以下の式で定義しても良い。【００４４】
【数３】
2009041215.tif 000005
【００４５】
参照ブロックの差の大きさＤＩＦＦを計算する１つの方法（第１の計算方法）は、複数の参照ブロックの中から２つの参照ブロックを取り出し、その２つの参照ブロックの差の合計（もしくは平均）を参照ブロックの差の大きさＤＩＦＦとするものである。例えば、参照ブロックが参照ブロック１、参照ブロック２の２個の場合には
ＤＩＦＦ  ＝  ＤＩＦＦ１２
であり、参照ブロックが参照ブロック１、参照ブロック２、参照ブロック３の３個の場合には
ＤＩＦＦ  ＝  ＤＩＦＦ１２＋ＤＩＦＦ２３＋ＤＩＦＦ３１
である。
参照ブロックがＮ個の場合には、以下の通りである。【００４６】
【数４】
2009041215.tif 000006
【００４７】
別の１つの方法（第２の計算方法）は、以下のように平均ブロックＡＶＥを計算し、この平均ブロックＡＶＥと各参照ブロックの差の合計（もしくは平均）をＤＩＦＦとするものである。この場合参照ブロックの平均ブロックＡＶＥは、以下のように与えられる。【００４８】
【数５】
2009041215.tif 000007
【００４９】
また、このとき、参照ブロックの差の大きさＤＩＦＦは、以下のように与えられる。【００５０】
【数６】
2009041215.tif 000008
【００５１】
この第２の計算方法には、第１の計算方法とは異なり、参照ブロックの数が増加しても計算量が小さいままであるという利点がある。もちろん、参照ブロックの差の大きさＤＩＦＦの算出方法はこの２つに限らない。【００５２】
また、参照ブロックの数が３個以上である場合には、参照ブロックの差の大きさＤＩＦＦをベクトルで扱っても良い。参照ブロックの数が３個の場合は参照ブロックの差の大きさＤＩＦＦは、
ＤＩＦＦ  ＝  （ＤＩＦＦ１２、ＤＩＦＦ２３、ＤＩＦＦ３１）
とあらわすことができる。参照ブロックの数がＮ個の場合には、Ｎ（Ｎ−１）／２個の要素を持つベクトルとなる。【００５３】
＜予測方法候補生成部１２０＞
予測方法候補生成部１２０は、符号化対象ブロックに関わる所定の情報（本実施形態では参照ブロックの差の大きさＤＩＦＦ）に基づいて予測ブロック候補の生成に用いる予測方法のうち符号化対象ブロックで選択可能な予測方法のセットを決定し、予測ブロック候補生成部１０６に出力する。また予測方法候補生成部１２０は、選択可能な予測方法のセットの番号（予測セット番号）を決定する。【００５４】
図３は、参照ブロックの差の大きさＤＩＦＦから選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。図３の関係を満たすように選択可能な予測方法のセットとその番号（予測セット番号）が決定される。図３は、参照ブロックの差の大きさＤＩＦＦの大きさによって、
予測セット０：選択可能な予測方法（インデックス）が０
予測セット１：選択可能な予測方法（インデックス）が０、３、４
予測セット２：選択可能な予測方法（インデックス）が０、１、２、３、４
という３種類の予測方法のセット（予測セット０、予測セット１、予測セット２）のうち一つが選択されることを示している。なお選択可能な予測方法の数Ｍは予測方法のセットにより変えることも可能であり、図３では各々１、３、５となる。【００５５】
例えば、参照ブロックの差の大きさＤＩＦＦが３００以上１０００未満である場合には選択可能な予測方法のセットがインデックス０、３、４であり、この場合の予測セット番号は予測セット１である。これらの選択可能な予測方法のセットと予測セット番号は予測ブロック候補生成部１０６に出力される。【００５６】
参照ブロックの差の大きさＤＩＦＦが小さい場合には予測方法を変更することで生じる予測ブロック候補の変化は少なくなる。例えば、参照ブロックの差の大きさＤＩＦＦがゼロ、すなわち参照ブロックの値が全て同じとなる場合には線形予測係数を変化させても予測ブロック候補は変化しない。従って、図３の例のように、参照ブロックの差の大きさＤＩＦＦが小さくなるほど、予測方法の候補の数を小さくすることが好適である。特に参照ブロックの差の大きさＤＩＦＦがある所定の値ＴＨよりも小さい場合には予測方法の候補の数Ｍを１通りとすると良い。なお所定の値ＴＨとして量子化係数ＱＰの値が大きくなる（量子化が粗くなる）ほど大きくなるような値を用いるとさらに好適である。これは量子化係数ＱＰが大きい場合には選択可能な予測方法の数を増やす（多くの予測ブロック候補を適応的に切り替える）ことによる符号量削減効果は比較的小さいため、所定の値ＴＨを大きくして予測方法候補の数Ｍが１となる場合を増やし予測方法の符号化に必要な符号量を削減した方が好適であるからである。【００５７】
参照ブロックの差の大きさＤＩＦＦが小さい場合には予測方法を変更することで生じる予測ブロック候補の変化は少なくなるため、複数の予測方法を持つ場合には、各々の予測結果が異なる方が良い。すなわち、参照ブロックの差の大きさＤＩＦＦが小さい場合には選択可能な予測方法のセットを、
（４／８、４／８）、（５／８、３／８）、（３／８、５／８）
（つまり、インデックス０、１、２）
とするよりは、
（４／８、４／８）、（６／８、２／８）、（２／８、６／８）
（つまり、インデックス０、３、４）
とするほうが良い。【００５８】
例えば、参照ブロックの差の大きさＤＩＦＦによって、例えば、参照ブロックの差の大きさＤＩＦＦの条件が一番小さい場合から順に、
予測セット０：選択可能な予測方法（インデックス）が０
予測セット１：選択可能な予測方法（インデックス）が０、３、４
予測セット３：選択可能な予測方法（インデックス）が０、１、２
予測セット２：選択可能な予測方法（インデックス）が０、１、２、３、４
となるように、選択可能な予測方法のセットを変化させると良い。【００５９】
ここで予測方法のセットの広がり（予測方法の候補の予測の広がり）の大きさを定義する。予測方法のセットの広がり（予測方法の候補の予測の広がり）の大きさとは絶対的な値が決まるものではなく、２つのセットを比較した場合に一方がもう一方よりも広がりが大きいかどうかを決めるというような相対的なものである。線形予測係数のセットが５通りである場合において、（Ｗ１、Ｗ２）が
（１／１０、９／１０）、（３／１０、７／１０）、（５／１０、５／１０）、
（７／１０、３／１０）、（９／１０、１／１０）、
のようなセットＡと
（３／１０、７／１０）、（４／１０、６／１０）、（５／１０、５／１０）、
（６／１０、４／１０）、（７／１０、３／１０）、
のようなセットＢを比較すると、セットＡの方がセットＢよりも広がりが大きいセットである。これは、セットＡの方がセットＢよりも、予測方法のセットに含まれる各々の予測方法を切り替えた場合の予測結果がより大きく異なるという意味である。参照ブロックの差の大きさＤＩＦＦが小さい場合には参照ブロックの差の大きさＤＩＦＦが大きい場合よりも、広がりが大きい予測セットを用いることが好適である。【００６０】
＜予測ブロック候補生成部１０６（２）＞
予測ブロック候補生成部１０６では、選択可能な予測方法及びその数Ｍが決定されると、予測ブロック候補としてＮ個の参照ブロック（参照ブロック１、参照ブロック２、・・・、参照ブロックＮ）と、参照ブロック１〜参照ブロックＮの重み付け和で計算されるＭ通りのブロックが生成される。【００６１】
例えばＮ＝２の場合で、選択可能な予測方法のセットとして、線形予測係数（Ｗ１、Ｗ２）が、（４／８、４／８）、（６／８、２／８）、（２／８、６／８）、もしくはインデックス０、３、４が設定された場合には予測ブロック候補生成部１０６では、次のように５個（Ｎ＝２、Ｍ＝３、Ｎ＋Ｍ＝５）の予測ブロック候補が生成される。
予測ブロック候補１  ＝  （参照ブロック１）
予測ブロック候補２  ＝  （参照ブロック２）
予測ブロック候補３  ＝  （参照ブロック１）×４／８＋（参照ブロック２）×４／８
予測ブロック候補４  ＝  （参照ブロック１）×６／８＋（参照ブロック２）×２／８
予測ブロック候補５  ＝  （参照ブロック１）×２／８＋（参照ブロック２）×６／８【００６２】
生成された予測ブロック候補、予測ブロック候補の生成に必要な情報（動き情報と予測方法）、予測方法の符号化に必要な情報（予測セット番号）は、予測ブロック選択部１０７に出力される。動き情報は、参照ブロックの生成に必要な情報である。参照ブロックを生成する場合に用いる参照フレームをあらかじめ定めておく場合には動き情報は、動きベクトルとなるが、参照ブロックを生成する場合に用いる参照フレームを選択できるようにするには、動き情報として、さらに参照フレームを特定するための情報（＜相対インデックスの説明＞参照）を用いる。【００６３】
ところで、１つの参照ブロックだけから予測される予測ブロック候補（ここでは予測ブロック候補１、予測ブロック候補２）を特別扱いせず、線形予測係数（Ｗ１、Ｗ２）で（８／８、０／８）、（０／８、８／８）のような１つの参照ブロックだけから予測する予測方法を用意することによって、
予測ブロック候補１  ＝  （参照ブロック１）×８／８＋（参照ブロック２）×０／８
予測ブロック候補２  ＝  （参照ブロック１）×０／８＋（参照ブロック２）×８／８
予測ブロック候補３  ＝  （参照ブロック１）×４／８＋（参照ブロック２）×４／８
予測ブロック候補４  ＝  （参照ブロック１）×６／８＋（参照ブロック２）×２／８
予測ブロック候補５  ＝  （参照ブロック１）×２／８＋（参照ブロック２）×６／８
というように、予測ブロック候補を生成しても良い。【００６４】
＜予測ブロック選択部１０７＞
予測ブロック選択部１０７は、予測ブロック候補生成部１０６で生成された複数の予測ブロック候補から最もコストの小さい予測ブロックを選択する。選択する際、どの参照ブロックを用いたかを表すフラグである参照モードフラグを以下のように定める。参照ブロック１のみを用いた場合（予測ブロック候補１）には１、参照ブロック２のみを用いた場合（予測ブロック候補２）には２、参照ブロック１と参照ブロック２を用いた場合（予測ブロック候補３、予測ブロック候補４、予測ブロック候補５）には３と、参照モードフラグを定める。参照モードフラグによって複数参照画像予測を用いているかを示すことができる。本実施形態の場合、参照モードフラグが３の場合に複数参照画像予測の使用を示している。なお、参照モードフラグの定め方は上記に限らない。【００６５】
予測ブロック選択部１０７は、選択した予測ブロックの生成に必要な情報（参照モードフラグ、動き情報、参照モードフラグが複数参照画像予測の使用を示している場合には予測方法も追加）と、予測方法を符号化するための情報として予測セット番号を可変長符号化部１０８に出力する。なお、予測セット番号を出力するのは複数参照画像予測の場合のみであり、それ以外の場合には出力しない。【００６６】
予測ブロックの選択に用いるコストには、予測ブロック候補と符号化対象ブロックのＳＡＤもしくはＳＳＤ、もしくは次に説明するＲＤコスト、Ｍコストなどが用いられる。【００６７】
ＲＤコストとは、符号化対象ブロックを当該符号化パラメータで符号化した場合の局所復号ブロックの歪みの大きさと、符号化対象ブロックの符号量を総合的に判断するためのコストであり、次のように算出される。
ＲＤコスト  ＝  局所復号ブロックと符号化対象ブロックのＳＳＤ
＋  λ×（予測誤差の符号量＋符号化パラメータの符号量）
ここでλは所定の定数である。なお予測誤差の符号量とは、予測ブロック候補と符号化対象ブロックの差分（予測誤差）の量子化変換係数を符号化する場合に必要な符号量のことであり、符号化パラメータの符号量とは、参照モードフラグ、動き情報、予測方法、動き補償モード（＜動き補償モードの説明＞参照）などの符号量である。ＲＤコストを算出するためには、局所復号ブロックの算出と予測誤差の符号量の算出が必要であるので、予測ブロック選択部１０７の内部に変換部１０１、量子化部１０２、逆量子化部１０３、逆変換部１０４、可変長符号化部１０８に相当する構成要件が必要になる。【００６８】
ＲＤコストを簡略化したものとして、次に示すＭコストがある。
Ｍコスト  ＝  予測ブロック候補と符号化対象ブロックのＳＡＴＤ
＋  λ×符号化パラメータの符号量
ここでλは所定の定数である。ＳＡＴＤとは、画素単位の差（例えば、予測ブロック候補と符号化対象ブロックの差（予測誤差））をＤＣＴやアダマール変換により変換し、さらに変換係数の２乗和を算出したものである。符号化パラメータの符号量はＲＤコストの算出において説明したものと同じである。【００６９】
＜可変長符号化部１０８＞
可変長符号化部１０８では、量子化変換係数に加え、予測ブロック選択部１０７で選択された参照モードフラグ、動き情報、予測方法（参照モードフラグが複数参照画像予測の使用を示している場合）が符号化される。動き情報としては、動きベクトルと存在すれば相対インデックスが各々符号化される。複数参照画像予測の場合には予測セット番号に従って予測方法の符号化が行われる。参照モードフラグは符号化対象ブロックの他の情報（例えば、画面内予測と画面間予測を切り替えるフラグや、予測誤差の情報を持つかどうかを示すフラグ）と共にブロックタイプとして符号化しても良い。また、符号化対象ブロックが複数の動き補償モードを持つ場合には、参照モードフラグは動き補償モードと共に符号化しても良い。【００７０】
可変長符号化部１０８での予測方法の符号化方法について説明する。まず、可変長符号化部１０８は選択可能な予測方法の数によって異なる符号化を行う。選択可能な予測方法が０通りの場合（これは、複数参照画像予測を行わないことを意味する）には、予測方法の符号化は行わない。選択可能な予測方法が１通りの場合も予測方法の符号化は行わない。選択可能な予測方法が２通り以上の場合は、予測方法をコード番号に変換し、得られたコード番号を符号化する。【００７１】
図４は、予測方法からコード番号に変換する方法の一例を示す図である。図４に示すように、予測方法からコード番号への変換は、予測セット番号毎に異なる方法で行われる。例えば、予測セット番号が予測セット１の場合は、選択可能な予測方法のセットは、図３に示すようにインデックス０、３、４の場合であるが、このとき、コード番号は各々０、１、２となる。選択可能な予測方法の数がＭの場合にはＭ通りの予測方法に対して０〜Ｍ−１のコード番号が割り当てられる。図４中のアスタリスク＊については後述する。【００７２】
図５は、予測方法からコード番号に変換する方法の別の一例を示す図である。図４に示すように、予測方法を示すインデックスからコード番号に変換するのではなく、図５に示すように、予測方法を示すパラメータ（ここでは線形予測係数）からコード番号に変換しても構わない。【００７３】
予測方法の符号化方法の一例として符号化方法Ａと符号化方法Ｂを説明する。【００７４】
＜符号化方法Ａ＞
符号化方法Ａは、予測方法自体を符号化するものである。図６は、コード番号を符号に変換する方法の一例を示す図である。図７は、可変長符号化部１０８の内部構成の一例を示す図である。符号化方法Ａの可変長符号化部１０８は、予測方法・コード番号変換部７８１、コード番号符号化部７８２を備える。可変長符号化部１０８では、予測方法候補生成部１２０で決定された、選択可能な予測方法の数によってコード番号を異なる符号化方法で符号化する。選択可能な予測方法が０通りもしくは１通りの場合（図３の予測セット番号が予測セット０の場合）は予測方法の符号化は行わない。選択可能な予測方法が２通り以上の場合（図３の予測セット番号が予測セット０以外の場合）は、予測方法・コード番号変換部７８１において、例えば、図４に従って、予測セット番号に基づいて予測方法がコード番号に変換され、さらに、コード番号はコード番号符号化部７８２において図６に従って符号化される。【００７５】
＜符号化方法Ｂ＞
符号化方法Ｂは、予測方法を周囲のブロックから予測することによって、より効率的に符号化するものである。符号化方法Ｂではまず予測方法の予測を行い、その予測が当たったかどうかを表す符号（予測当否符号）を符号化する。予測が当たった場合はこれで符号化が完了する。予測が当たらなかった場合にはさらに予測方法を特定するための残りの符号（残差符号）を符号化する。すなわち、
予測当否符号                          （予測が当たった場合）
予測当否符号＋残差符号                （予測が当たらなかった場合）
というように符号化を行う。【００７６】
図８は、可変長符号化部１０８の内部構成の別の一例を示す図である。符号化方法Ｂの可変長符号化部１０８は、予測方法・コード番号変換部８８１、コード番号符号化部８８２、予測方法予測部８８３、予測方法保存部８８４、スイッチ８８５を備える。【００７７】
予測方法予測部８８３では、予測方法保存部８８４に保存されている周囲のブロックの予測方法を参照して、予測方法（インデックス）を予測する。予測された予測方法は予測方法予測値と呼ぶ。予測方法予測値を算出する１つの方法は、直前ブロックの予測方法を予測方法予測値とするものである。他の方法の１つは、左ブロック、上ブロック、右上ブロックの予測方法を示すインデックスの中央値（メジアン）を予測方法予測値とするものである。その他、左ブロックと上ブロックの予測方法を示すインデックスの最小値（もしくは最大値）を予測方法予測値とする方法などが考えられる。また、別の方法で予測方法予測値を決定しても良い。【００７８】
予測方法予測部８８３で得られた予測方法予測値は、予測方法・コード番号変換部８８１に出力され、予測方法・コード番号変換部８８１では、例えば、図４に従って、予測セット番号に応じて予測方法予測値（インデックス欄に記載のもの）をコード番号予測値（コード番号欄に記載のもの）に変換する。例えば、予測セット番号が予測セット１の場合においては、
インデックス０はコード番号０に
インデックス１はコード番号１に
インデックス２はコード番号２に
インデックス３はコード番号１に
インデックス４はコード番号２に
各々、予測方法予測値からコード番号予測値に変換される。【００７９】
予測セット番号が予測セット１の時に選択可能な予測方法のセットはインデックス０、３、４であるが、上述のように、予測セット１では選択可能でない予測方法（インデックス１、２）に対してもインデックスに対応するコード番号が示されている。図４中のアスタリスクは、このようなコード番号を示している。これは、得られた予測方法予測値が、符号化対象ブロックで選択不可である場合に、予測方法予測値をコード番号予測値に変換できるようにするためである。【００８０】
なお、選択可能でない予測方法（予測方法予測値）に対するコード番号（コード番号予測値）はこれに最も近い選択可能な予測方法のコード番号を用いるものとする。例えば、インデックス１の予測方法は（５／８、３／８）であるが、これに最も近い選択可能な予測方法は（４／８、４／８）と（６／８、２／８）である。本実施形態では、あらかじめ符号化・復号装置間でＷ１：Ｗ２が１：１の重みから遠いもの、すなわち（６／８、２／８）を用いると定め（６／８、２／８）に対応するコード番号１を、インデックス１に対応するコード番号（コード番号予測値）とする。【００８１】
最も近い選択可能な予測方法（予測方法予測値）が複数ある場合に、どの予測方法を用いるかどうかの取り決めは、スライス単位もしくはフレーム単位で符号化しても良い。取り決めの符号化方法の１つは、Ｗ１：Ｗ２が１：１から遠い方を用いるか、近い方を用いるかを１ビットのフラグで符号化する方法である。【００８２】
続いて、符号化対象ブロックの予測方法も、予測方法・コード番号変換部８８１において、図４に従ってコード番号に変換される。符号化対象ブロックのコード番号がコード番号予測値に等しい場合、コード番号符号化部８８２は、予測当否符号として１を符号化する。逆に、符号化対象ブロックのコード番号がコード番号予測値と異なる場合には、コード番号符号化部８８２は、予測当否符号として０を符号化し、さらに、コード番号を次式によって残差コード番号に変換し、残差コード番号を符号化する。
残差コード番号  ＝  コード番号          （コード番号≦  コード番号予測値）
コード番号  −  １  （コード番号＞    コード番号予測値）【００８３】
このとき、残差コード番号は、選択可能な予測方法の数Ｍを用いて
２ｋ≦Ｍ−１＜２ｋ＋１
となるＫビットで符号化できる。例えば、選択可能な予測方法の数Ｍが３通りの場合（予測セット１）にはＫ＝１であり、選択可能な予測方法の数Ｍが５通りの場合（予測セット２）にはＫ＝２である。【００８４】
予測方法保存部８８４では、符号化対象ブロックが予測方法を持つ場合にはその予測方法を、符号化対象ブロックが複数参照画像予測を行わない場合には仮の予測方法を保存する。この切り替えはスイッチ８８５で行われる。すなわち、符号化対象ブロックの参照モードフラグが複数参照画像予測の使用を示している場合、スイッチ８８５は、可変長符号化部１０８に入力される符号化対象ブロックの予測方法を予測方法保存部８８４が保存するように切り替えられる。符号化対象ブロックが複数参照画像予測を使用しない場合、スイッチ８８５は、仮の予測方法、ここでは予測方法予測部８８３で得られた符号化対象ブロックの予測方法予測値を、予測方法保存部８８４が保存するように切り替えられる。【００８５】
さらに予測方法予測部８８３において予測方法を予測する他の方法を説明する。ここで説明する方法では、符号化対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離（符号化対象ブロックと参照ブロックの時間的距離とも呼ぶ）を利用する。
図９は、符号化対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離を説明するための図である。図９では、符号化対象ブロックの属するフレームと参照ブロック１の属するフレームの時間的距離がＤ１、符号化対象ブロックの属するフレームと参照ブロック２の属するフレームの時間的距離がＤ２であることが示されている。本実施形態の符号化装置では、符号化済みフレームに対する時間情報ＰＯＣ（Picture Of Count）をフレームメモリ１０５に保存しておき、ＰＯＣの差を計算することで時間的距離を求める。ＰＯＣの付加方法は、先頭フレームのＰＯＣを０とし、続くフレームのＰＯＣをフレーム単位で表示順に１ずつ加算される値とする手順によるものである。フレーム０、フレーム１、・・・、フレームＮが表示順に並んでいる場合には、各々のフレームに付加されるＰＯＣは０、１、・・・、Ｎとなる。【００８６】
図１０は、時間的距離を利用する場合の予測方法予測部８８３の動作を説明する図である。図１０に示すように、時間的距離を利用する場合の予測方法予測部８８３は、時間的距離算出部１０３１、時間的重み算出部１０３２、時間的予測方法算出部１０３３、予測方法予測値決定部１０３４を備える。
時間的距離算出部１０３１は、符号化対象ブロック及び参照ブロックの属するフレームのＰＯＣより符号化対象ブロックと参照ブロックの時間的距離を算出する。例えば、符号化対象ブロックの属するフレームのＰＯＣがＰＯＣ０、参照ブロックＮの属するフレームのＰＯＣがＰＯＣＮである場合には、符号化対象ブロックと参照ブロックの時間的距離ＤＮは、
Ｄ１  ＝  ｜ＰＯＣ１  −  ＰＯＣ０｜
Ｄ２  ＝  ｜ＰＯＣ２  −  ＰＯＣ０｜
・・・
ＤＮ  ＝  ｜ＰＯＣＮ  −  ＰＯＣ０｜
のように求められる。【００８７】
時間的重み算出部１０３２は、符号化対象ブロックと参照ブロックの時間的距離に応じて線形予測係数ＷＴ（Ｗ１、Ｗ２、・・・、ＷＮ）を求める。このとき、符号化対象ブロックと時間的距離が小さい参照ブロックの方が符号化対象ブロックと時間的距離が大きい参照ブロックよりも大きな重みとなるよう線形予測係数ＷＴを求める。本実施形態では、時間的距離の逆数に比例する重みを用いる。すなわち、以下の２つの式を満たす線形予測係数（Ｗ１、Ｗ２、・・・、ＷＮ）を用いる。
Ｗ１：Ｗ２：・・・：ＷＮ＝１／Ｄ１：１／Ｄ２：・・・：１／ＤＮ
Ｗ１＋Ｗ２＋・・・＋ＷＮ＝１【００８８】
Ｎ＝２の場合には、
Ｗ１：Ｗ２  ＝  １／Ｄ１  ：  １／Ｄ２
Ｗ１＋Ｗ２＝１
であるから
Ｗ１  ＝  Ｄ２／（Ｄ１＋Ｄ２）
Ｗ２  ＝  Ｄ１／（Ｄ１＋Ｄ２）
のように線形予測係数ＷＴを求めることができる。【００８９】
時間的予測方法算出部１０３３では、使用可能な予測方法の中から、線形予測係数ＷＴに最も近い予測方法を求める。本実施形態のＮ＝２の場合の例では、使用可能な予測方法は図２に示すものであるから、図２の予測方法の中から最も近い予測方法を求める。例えば、Ｄ１＝１、Ｄ２＝２の場合には、（Ｗ１、Ｗ２）＝（２／３、１／３）であるので、図２では（５／８、３／８）が最も近い予測方法として求められる。求められた予測方法を時間的予測方法と呼ぶ。
予測方法予測値決定部１０３４では、時間的予測方法（と必要ならば周囲のブロックの予測方法）を用いて予測方法予測値を決定する。【００９０】
図１１は、予測方法予測値決定部１０３４の動作を説明するための図である。図１１（Ｅ）は、ある符号化対象ブロックを符号化する場合の周囲のブロックの状況の例を示している。符号化対象ブロックの左ブロックは複数参照画像予測を行わないブロックであり、左上ブロック、上ブロックは複数参照画像予測を行うブロックであるとする。また、右上ブロックは画面外に位置するブロックであるとする。図１１（Ａ）〜（Ｄ）は、図１１（Ｅ）に示す状況において予測方法予測値を決定する方法を示している。【００９１】
以下、予測方法予測値の決定方法として図１１（Ａ）〜（Ｄ）で示す４つの方法を説明する。
図１１（Ａ）の方法では、周囲のブロックの状況によらず時間的予測方法を予測方法予測値とする。図１１（Ａ）では符号化対象ブロックの周囲のブロックは予測方法予測値の決定に用いないため白ブロックとして示されている。
図１１（Ｂ）の方法では、時間的予測方法のインデックスと周囲のブロック（上ブロック、左上ブロック、右上ブロック）の予測方法を示すインデックスの計５つのインデックスの中央値（メジアン）を予測方法予測値とする。図１１（Ｂ）では、当該ブロックの予測方法のインデックスを中央値の算出に用いる左、上、左上、右上ブロックの４つは横縞で示されている。【００９２】
図１１（Ｃ）の方法では、周囲のブロック（左ブロック、上ブロック、右上ブロック）の予測方法が複数参照画像予測である場合には、当該ブロックの予測方法のインデックスを用い、複数参照画像予測でない場合には当該ブロックの予測方法の代わりに時間的予測方法のインデックスを用いて計３つのインデックスの中央値（メジアン）を予測方法予測値とする。図１１（Ｃ）では、当該ブロックの予測方法のインデックスを中央値の算出に用いる上ブロックは横縞で示され、当該ブロックの予測方法のインデックスの代わりに時間的予測方法のインデックスを中央値の算出に用いる左ブロック、右上ブロックは縦縞で示されている。これまで、符号化対象ブロックが予測方法を持つ場合にはその予測方法を、符号化対象ブロックが複数参照画像予測を行わない場合には仮の予測方法を保存する、と説明していた。しかし、図１１（Ｃ）の場合には、複数参照画像予測でないブロックが中央値の算出に用いられる場合には時間的予測方法を用いるため、複数参照画像予測を行わない場合に対して仮の予測方法を保存する必要は無い。【００９３】
図１１（Ｄ）の方法では、左ブロック、上ブロック、右上ブロックのブロックが画面内に位置する場合には当該ブロックの予測方法のインデックスを、画面外に位置する場合には当該ブロックの予測方法のインデックスの代わりに時間的予測方法のインデックスを用いて、計３つのインデックスの中央値（メジアン）を予測方法予測値とする。図１１（Ｄ）では、当該ブロックの予測方法のインデックスを中央値の算出に用いる左ブロック、上ブロックは横縞で示され、時間的予測方法のインデックスを用いる右上ブロックは縦縞で示されている。【００９４】
図１１（Ａ）〜（Ｄ）の場合によらず、予測方法予測部８８３における予測方法予測値の決定では、時間的距離を用いる必要があるので、予測方法予測部８８３には、符号化対象ブロックの属するフレームのＰＯＣと参照ブロックの属するフレームのＰＯＣがフレームメモリ１０５より入力される（図示しない）。ここでフレームメモリ１０５は符号化済みフレームのＰＯＣを保存しておく。
図１１（Ｃ）の場合には、周囲のブロックの予測方法が複数参照予測であるかを示す情報が必要である。そのためこの情報を必要とする場合には、周囲のブロックの予測方法が複数参照予測であるかを示す情報が予測方法保存部８８４から予測方法予測部８８３に入力される。この情報を入力する場合には、予測方法保存部８８４は、符号化済みブロックの予測方法に加えて、符号化済みブロックで複数参照予測が用いられたかどうかを示す情報を保存する。【００９５】
上記のように、時間的距離を利用する場合の予測方法予測部８８３は、符号化対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離に基づいて予測方法予測値を決定する。符号化対象ブロックと時間的距離の小さい参照ブロックの方が、符号化対象ブロックと時間的距離の大きい参照ブロックよりも符号化対象ブロックに近いことが多い。そこで時間的距離の情報を用いて複数参照画像予測を行う場合の予測方法を予測することによって、予測方法の予測精度が向上し符号化効率が向上する。【００９６】
このように、複数参照画像予測を行わないブロックについても、仮の予測方法を持たせ予測方法を保存する。量子化係数ＱＰが大きい場合、複数参照画像予測の動き情報の符号量が相対的に大きくなるため複数参照画像予測が用いられるブロックの割合は低下し、予測方法を持たないブロックが多く存在する。この場合予測方法を持つブロックの予測方法のみを保存する方法では効率の良い予測が困難になる。そのため、仮の予測方法を設定し予測可能な符号化対象ブロックを増やすことは、符号化方法Ｂにおいて予測方法の予測精度の向上に寄与し符号化効率の向上に繋がる。【００９７】
ところで、予測方法予測部８８３で予測される予測方法予測値を予測方法候補生成部１２０でも用いることにより、さらに効率を向上させることができる。この方法の場合、予測方法候補生成部１２０は、先に説明した図３の代わりに図１２に従って参照ブロックの差の大きさＤＩＦＦから選択可能な予測方法のセットと予測セット番号を決定する。【００９８】
図１２と図３の違いは、選択可能な予測方法の数が１通りの場合（図１２、図３では２つの参照ブロックの差の大きさＤＩＦＦが３００未満の場合）に用いられる予測方法である。図３に示す方法では、選択可能な予測方法が１通りの場合にはその１つの予測方法はインデックス０である。これに対し、図１２に示す方法では、選択可能な予測方法が１通りの場合にはその１通りの予測方法は予測方法予測部８８３で算出される予測方法予測値とする。一般的に固定的な予測方法を用いるよりも、周囲の状況に応じて算出される予測方法予測値を用いた方が、より適切な予測ブロックを生成できる可能性が高いため、符号化効率が向上する。このように周囲の符号化対象ブロックの性質を保存する予測方法予測値を、仮の予測値として保存することは有効である。【００９９】
図３及び図１２に示される選択可能な予測方法のセットは、スライスヘッダもしくはフレームヘッダで符号化することによりスライス単位、フレーム単位で可変なものにすることも可能である。【０１００】
＜動画像符号化の手順の説明＞
図１３は、本発明に関わる動画像符号化の手順を示すフローチャートである。図１３は、符号化対象ブロック１個を符号化する手順を示したものであり、符号化対象フレームが複数のブロックから構成される場合にはブロックの数だけ繰り返すものとする。【０１０１】
まず、既に符号化されたフレームから参照ブロックを複数個抽出する（ステップＳ１０）。
そして、抽出された複数の参照ブロックから予測ブロック候補を生成する方法として、符号化対象ブロックに関わる所定の情報（本実施形態では参照ブロックの差の大きさＤＩＦＦ）に基づいて選択可能な予測方法の候補を生成する（ステップＳ１１）。このとき、その所定の情報に基づいて、予測方法の候補の数Ｍを変えることも可能であるし予測方法の候補に含まれる予測方法の内容（本実施の形態では線形予測の場合には線形予測係数）を変えることも可能である。このとき、参照ブロックの差の大きさＤＩＦＦが小さくなるほど、予測方法の候補の数を小さくすることが好適である。特に参照ブロックの差の大きさＤＩＦＦがある所定の値よりも小さい場合には予測方法の候補の数を１通りとすると良い。【０１０２】
続いて、予測方法の候補に従って参照ブロックから予測ブロック候補を生成する（ステップＳ１２）。
生成された予測ブロック候補から、符号化対象ブロックを符号化する場合に最も適当な予測ブロックを選択する（ステップＳ１３）。
選択された予測ブロックを生成するために必要な動き情報（動きベクトルと存在すれば相対インデックス）を符号化する（ステップＳ１４）。なお、符号化対象ブロックの動き情報を周囲のブロックの動き情報を用いて算出する動き補償モード（ダイレクトモード、＜動き補償モードの説明＞参照）を用いる場合には動き情報を符号化しない。【０１０３】
そして、予測方法の候補の数が２通り以上であるかの判定を行う（ステップＳ１５）。
予測方法の候補の数が２通り以上の場合（ＹＥＳの場合）には予測方法の符号化を行い（ステップＳ１６）、ステップＳ１７に進む。予測方法の符号化は、符号化方法Ａ、符号化方法Ｂで既に示したように予測方法からコード番号に変換し、得られたコード番号を符号化することで行われる。
予測方法の候補の数が１通り以下（ステップＳ１５、ＮＯ）の場合には予測方法の符号化は行わず、ステップＳ１７に進む。【０１０４】
ステップＳ１７では、予測誤差の符号化を行う。予測誤差の符号化は、好適には、予測誤差をＤＣＴ変換などで変換して変換係数を算出し、変換係数を量子化して得られる量子化変換係数を可変長符号化することで行われる。なお、予測誤差を符号化しない動き補償モード（スキップモード、＜動き補償モードの説明＞参照）を用いる場合には予測誤差は符号化しない。【０１０５】
以上の手順により１つの符号化対象ブロックを符号化することができる。なおステップＳ１４で示す予測ブロックの動き情報の符号化、ステップＳ１６で示す予測方法の符号化、ステップＳ１７で示す予測誤差の符号化の順序は図１３と異なるものでも構わない。但し本実施形態のように、予測方法の候補の生成に用いられる所定の情報に参照ブロックから生成される情報（参照ブロックの差の大きさＤＩＦＦ）を用いる場合には、予測ブロックの動き情報の符号化を予測方法の符号化の前に行う必要がある。同様に、所定の情報に予測誤差から生成される情報（例えば、予測誤差の絶対値和）を用いる場合には、予測誤差の符号化を予測方法の符号化の前に行う必要がある。【０１０６】
第１の実施の形態の符号化装置を用いると、符号化対象ブロックの参照ブロックの差の大きさＤＩＦＦに応じて当該ブロックの予測ブロック候補の生成に関わる選択可能な予測方法のセットを変化させることができる。これにより参照ブロックの差の大きさＤＩＦＦが小さい場合に、選択可能な予測方法の数を減らすことができ、予測方法を符号化するための符号量を減らすことができる（特に選択可能な予測方法の数を１以下とすれば、当該ブロックに対して予測方法の符号量をゼロとすることができる）。また、選択可能な予測方法の数を減らす場合には、最適な予測ブロックを選択する場合に計算すべきコストの数が減ることになるので、符号化に係る演算量を小さくすることができる。【０１０７】
また、参照ブロックの差の大きさＤＩＦＦが小さい場合には選択可能な予測方法のセットに含まれる線形予測係数Ｗ１：Ｗ２が各々比較的異なるものとする。例えばＷ１：Ｗ２が１：１の線形予測係数を選択可能な予測方法のセットとして含む場合には、１：１から離れた線形予測係数も選択可能な予測方法のセットに含ませる（セット全体として広がりの大きい予測方法のセットを用いる）ようにする。つまり、予測方法の候補の予測の広がりを大きくするようにする。【０１０８】
また参照ブロックの差の大きさＤＩＦＦが大きい場合には選択可能な予測方法のセットに含まれる線形予測係数Ｗ１：Ｗ２が各々比較的近いものとする。例えば、Ｗ１：Ｗ２が１：１の線形予測係数を選択可能な予測方法として含む場合には、Ｗ１：Ｗ２が１：１に近い線形予測係数も選択可能な予測方法のセットに含ませる（セット全体として広がりの小さい予測方法のセットを用いる）ようにする。つまり、予測方法の候補の予測の広がりを小さくするようにする。【０１０９】
このようにＷ１、Ｗ２を設定することで、同数の線形予測係数の候補を用いる場合にも参照ブロックの差の大きさＤＩＦＦに従って線形予測係数を変えることで符号化効率を高めることができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、符号化に係る演算量を小さくすることができる。【０１１０】
＜＜相対インデックスの説明＞＞
参照フレームを特定する方法としては、相対インデックスが知られている。ここで、双予測に用いる２つの参照フレームを区別するため、各参照フレームを第１参照フレーム（ＲＥＦ１）、第２参照フレーム（ＲＥＦ２）と呼ぶ。【０１１１】
図１４は、フレーム番号と相対インデックスの説明図である。フレーム番号、相対インデックスはフレームメモリに格納された参照フレームを一意に識別するための番号であり、フレーム番号は参照フレームとしてフレームメモリに蓄積されるフレーム毎に１増加する値が割り当てられる。すなわち、最初に蓄積されるフレームが０、次に蓄積されるフレームが１、その次のフレームが２、・・・というように、各参照フレームに固定的な値が割り当てられる。【０１１２】
相対インデックスも、参照フレームを一意に識別するための番号であるが、この値は、各参照フレームに対して固定的な値が割り当てられるのではなく、符号化対象フレームからみた相対的な値が割り当てられる。【０１１３】
相対インデックスの一つの割り当て方は、符号化対象フレームより（再生時間からみて）時間的に前のフレームがＦＮ枚あり、時間的に後のフレームがＢＮ枚ある場合に、符号化対象フレームより１枚前のフレームに０、２枚前のフレームに１、・・・、ＦＮ枚前のフレームにＦＮ−１、を順に割り当て、その後、符号化対象フレームの１枚後のフレームにＦＮ、２枚後のフレームにＦＮ＋１、・・・、ＢＮ枚後のフレームにＦＮ＋ＢＮ−２、を順に割り当てるものである。この割り当て方は時間的に前のフレームを優先した割り当て方であり、第１参照フレームの相対インデックスに用いられる。【０１１４】
相対インデックスの別の割り当て方は、符号化対象フレームの１枚後のフレームに０、２枚後のフレームに１、・・・、ＢＮ枚後のフレームにＢＮ−１、を割り当て、符号化対象フレームの１枚前のフレームにＢＮ、符号化対象フレームの２枚前のフレームにＢＮ＋１、・・・、ＦＮ枚前のフレームにＢＮ＋ＦＮ−２、を順に割り当てるものである。この割り当て方は時間的に後のフレームを優先した割り当て方であり、第２参照フレームの相対インデックスに用いられる。【０１１５】
第１参照フレームの相対インデックスを第１相対インデックス（ＲＩＤＸ１）、第２参照フレームの相対インデックスを第２相対インデックス（ＲＩＤＸ２）と呼ぶ。例えば、図１４を参照すると、双予測により画面間予測符号化されるフレームＢの直前のフレームＰ１２は、フレーム番号が１２、第１相対インデックスが０、第２相対インデックスが１である。【０１１６】
図１５は、相対インデックスを用いて参照フレームを特定する例を説明する図である。この図の例では、符号化対象フレームより（再生時間からみて）時間的に前のフレームが２枚（フレーム番号１１、フレーム番号１２のフレーム）あり、時間的に後のフレームが１枚（フレーム番号１３のフレーム）ある。図１５のブロック１では、ＲＩＤＸ１＝０、ＲＩＤＸ２＝０であるので、第１参照フレームはフレーム番号１２、第２参照フレームはフレーム番号１３の参照フレームを用いることが示される。また、ブロック２では、ＲＩＤＸ１＝１、ＲＩＤＸ２＝１であるので、第１参照フレームはフレーム番号１１、第２参照フレームはフレーム番号１２の参照フレームを用いることが示される。このように相対インデックスを用いることで、フレーム番号自体を符号化するよりも小さい符号量で参照フレームを特定できる。【０１１７】
＜＜動き補償モードの説明＞＞
動き補償モードとは、参照ブロックの生成方法を複数の方法から選択できる場合にその生成方法を区別するための情報である。例えば、動き補償モードとして１つの区分けでは、ダイレクトモードと非ダイレクトモードがある。ダイレクトモードとは、符号化対象ブロックの動き情報として、周囲のブロックの動き情報から得られる動き情報の予測値をそのまま用いるものであり、符号化対象ブロックの動き情報は明示的に符号化しない。ダイレクトモードは、周囲のブロックから符号化対象ブロックの動きが予測できる場合に用いることができ、動き情報の符号量を省くことができるため符号化効率が高くなる。非ダイレクトモードは、符号化対象ブロックの動き情報を明示的に符号化するモードの総称である。【０１１８】
また、他の区分けにおいては、動き補償モードには、予測誤差を符号化しない動き補償モードであるスキップモード（これは、ダイレクトモードの一種とみなす場合もある）と、予測誤差を符号化するモードの総称である非スキップモードがある。【０１１９】
また、他の区分けでは、符号化対象ブロックをさらに小さいブロックに分割して動き補償を行う動き補償モード（分割されたブロックサイズ毎に、１６×１６ブロックサイズモード、１６×８ブロックサイズモード、８×１６ブロックサイズモード、８×８ブロックサイズモードなどと呼ばれる）がある。【０１２０】
＜＜実施形態２＞＞
図１６は、本発明の第２の実施の形態の動画像復号装置の構成を示すブロック図である。本復号装置は、可変長符号復号部１６００、逆量子化部１６０３、逆変換部１６０４、フレームメモリ１６０５、予測ブロック生成部１６０６、加算部１６１１、予測方法候補生成部１６２０を備える。【０１２１】
本実施形態の復号装置は、複数の参照画像を用いて生成された復号対象ブロックの予測画像と、復号対象ブロックの差分値を加算して復号対象ブロックを復号する復号装置であって、例えば、第１の実施の形態の符号化装置で符号化された符号化データを復号できるものである。復号装置に符号化データが入力されると、可変長符号復号部１６００により量子化変換係数と、参照モードフラグ、動き情報が復号される。動き情報は参照ブロックの生成に必要な情報であり、参照ブロックの生成に用いる参照フレームを複数の候補から選択しない場合には動きベクトルのみ、参照ブロックの生成に用いる参照フレームを複数の候補から選択する場合には、動きベクトルと参照フレームを特定するための情報である相対インデックスである。【０１２２】
量子化変換係数は、逆量子化部１６０３、逆変換部１６０４を経て復号され予測誤差が再生され、加算部１６１１に出力される。参照モードフラグと動き情報は、予測ブロック生成部１６０６に出力される。予測ブロック生成部１６０６では、フレームメモリ１６０５に保存された復号済みフレームと参照モードフラグ、動き情報より予測ブロックが生成され、加算部１６１１に出力される。加算部１６１１では、予測誤差と予測ブロックの和によりブロックが復号される。復号ブロックは、一方では復号装置の外に出力され、他方ではフレームメモリ１６０５に保存される。【０１２３】
なお参照モードフラグは復号対象ブロックの他の情報（例えば、画面内予測と画面間予測を切り替えるフラグや、予測誤差の情報を持つかどうかを示すフラグ）と共にブロックタイプとして復号しても良い。また、復号対象ブロックが複数の動き補償モードを持つ場合には、参照モードフラグは動き補償モードと共に復号しても良い。【０１２４】
予測ブロック生成部１６０６は、内部に備える動き補償部１６６１で、可変長符号復号部１６００から入力された参照モードフラグ、動き情報を用いて参照ブロックが抽出される。参照ブロックの抽出は、参照モードフラグにより抽出する参照ブロックの数を特定し（参照モードフラグが複数参照画像予測の使用を示していない場合は１個、複数参照画像予測の使用を示している場合は所定のＮ個）、動き情報として相対インデックスが存在すれば相対インデックスにより特定される参照フレームを選択し、さらに、選択された参照フレームから動き情報の動きベクトルの示す位置の参照ブロックを抽出することで行われる。【０１２５】
複数参照画像予測でない場合（前方予測もしくは後方予測の場合）、抽出された参照ブロックはそのまま予測ブロックとして加算部１６１１に出力される。
複数参照画像予測の場合、抽出された参照ブロックは、予測ブロック生成部１６０６の内部に備える予測ブロック予測部１６６２に出力される。
さらに、複数参照画像予測の場合は、動き補償部１６６１で参照ブロックを全て抽出した時点で、第１の実施の形態と同じ方法で計算した参照ブロックの差の大きさＤＩＦＦが、予測方法候補生成部１６２０に出力される。【０１２６】
予測方法候補生成部１６２０では、復号対象ブロックに関わる所定の情報（本実施形態では参照ブロックの差の大きさＤＩＦＦ）に基づいて選択可能な予測方法のセットとその番号（予測セット番号）が決定され可変長符号復号部１６００に出力される。可変長符号復号部１６００では、予測セット番号に基づいて複数の参照ブロックから予測ブロックを生成する予測方法を復号し、予測ブロック生成部１６０６に出力する。【０１２７】
予測ブロック生成部１６０６では、内部に備える予測ブロック予測部１６６２において、複数の参照ブロックから予測ブロックが生成され、加算部１６１１に出力される。
予測ブロック予測部１６６２において複数の参照ブロックから予測ブロックを生成する方法は、第１の実施の形態と同じく前述の式１の方法を用いる。すなわち、
予測ブロック  ＝  （参照ブロック１）×Ｗ１＋（参照ブロック２）×Ｗ２
である。ここで用いるパラメータ（線形予測係数（Ｗ１、Ｗ２））についても、第１の実施の形態と同じく図２に示すものを用いる。【０１２８】
可変長符号復号部１６００から出力される予測方法は、予測方法を示すパラメータ（例えば線形予測係数）でも良いし、予測方法を示すインデックスでも良い。例えば、予測方法を示すインデックスが２の場合には図２を参照して線形予測係数は（３／８、５／８）であることから、
予測ブロック  ＝  （参照ブロック１）×３／８  ＋  （参照ブロック２）×５／８
のように予測ブロックが得られる。【０１２９】
予測方法候補生成部１６２０で、選択可能な予測方法のセットと予測セット番号を決定する方法について説明する。以降、図３及び図１２に従って選択可能な予測方法のセットと予測セット番号を決定する場合を説明する。【０１３０】
参照ブロックの差の大きさＤＩＦＦが３００以上の場合は、選択可能な予測方法が複数ある場合であり、図３及び図１２のどちらの関係を満たすにしても、参照ブロックの差の大きさＤＩＦＦに応じて、予測方法（選択可能な予測方法のセットと予測セット番号）として予測セット１（インデックス０、３、４）や予測セット２（インデックス０、１、２、３、４）を用いるように決定する。【０１３１】
参照ブロックの差の大きさＤＩＦＦが３００未満であり選択可能な予測方法が１通りの場合の予測方法として図３ではインデックス０を用いるが、図１２では、予測方法の予測値である予測方法予測値を用いる。
説明の都合上、本実施形態では、選択可能な予測方法が１通りの場合の予測方法（図３のインデックス０、図１２の予測方法予測値）の決定は可変長符号復号部１６００内部で行う。すなわち、選択可能な予測方法が１通りの場合の予測方法は、予測方法候補生成部１６２０では確定せず、可変長符号復号部１６００で予測方法を復号する時点で確定するものとする。これは図１２に従う場合では、予測方法の復号において予測方法予測値の決定を行うため、そこで決定された予測方法予測値をそのまま用いるほうが復号装置の構成が容易であるためである。勿論、図３に従う場合であれば、予測方法候補生成部１６２０で１通りの場合の予測方法を確定することは容易であるし、図１２に従う場合であれば予測方法候補生成部１６２０の内部に予測方法を予測する手段を備え、予測方法予測値を確定することにより１通りの場合の予測方法を確定することもできる。【０１３２】
以下、可変長符号復号部１６００において、予測方法を復号する手順を説明する。可変長符号復号部１６００は入力された選択可能な予測方法の数Ｍによって、符号化データの復号を行って予測方法を復号するか、符号化データの復号を行わずに予測方法を求めるかを判断する。【０１３３】
選択可能な予測方法の数Ｍが０通りの場合（これは複数参照画像予測を行わないことを意味する）には、符号化データの復号は行わず予測方法の復号も行わない。選択可能な予測方法の数Ｍが１通りの場合には予測方法が固定であるので符号化データから予測方法の情報を復号する必要は無い。従って、符号化データの復号は行わず、選択可能な予測方法（図３ではインデックス０、図１２では予測方法予測値）がそのまま予測方法になる。選択可能な予測方法の数Ｍが２通り以上の場合は、符号化データを復号することで予測方法が復号される。この復号は、符号化データからコード番号を復号し、得られたコード番号を予測方法に変換することによって行われる。選択可能な予測方法の数がＭの場合にはコード番号として０からＭ−１の値が復号される。【０１３４】
図１７は、コード番号から予測方法に変換する方法の一例を示す図である。図１７に示すように、コード番号から予測方法への変換は、予測方法候補生成部１６２０で決定された予測セット番号毎に異なる方法で行われる。【０１３５】
例えば、予測セット番号が予測セット１の場合で復号されたコード番号が１の場合、図１７に従って予測方法はインデックス３と復号される。復号されたコード番号が同じ１であっても、予測セット番号が予測セット２の場合には、図１７に従って予測方法はインデックス１と復号される。【０１３６】
図１８は、コード番号を予測方法に変換する方法の別の例を示す図である。図１８に示すように、コード番号から予測方法を示すパラメータ（ここでは線形予測係数）に直接変換しても構わない。【０１３７】
続いて、予測方法の復号方法の詳細として、第１の実施の形態で説明した２つの方法（符号化方法Ａ、符号化方法Ｂ）に対応する方法（復号方法Ａ、復号方法Ｂ）を説明する。復号方法Ａでは図３に従って選択可能な予測方法のセットを決定する場合の復号方法を説明し、復号方法Ｂでは図１２に従って選択可能な予測方法のセットを決定する場合の復号方法を説明する。【０１３８】
＜復号方法Ａ＞
図１９は、可変長符号復号部１６００の内部の構成の一例を示す図である。復号方法Ａの可変長符号復号部１６００は、コード番号復号部１９８０、コード番号・予測方法変換部１９８６、デフォルト値保持部１９８７、スイッチ１９８８を備える。【０１３９】
本実施形態の予測方法の復号方法では、選択可能な予測方法の数Ｍによって復号方法が変わる。この切り替えはスイッチ１９８８で行われる。【０１４０】
選択可能な予測方法の数Ｍが１通りの場合（予測セット０の場合）、スイッチ１９８８は、デフォルト値保持部１９８７の出力する予測方法に切り替えられる。デフォルト値保持部１９８７では、選択可能な予測方法の数Ｍが１通りの場合に用いる予測方法が保持される（本実施形態では０が保持される）。【０１４１】
選択可能な予測方法の数Ｍが２通り以上の場合（予測セット０以外の場合）には、スイッチ１９８８は、コード番号・予測方法変換部１９８６の出力する予測方法に切り替えられる。コード番号復号部１９８０で、符号化データを図６に従って復号して得られたコード番号は、コード番号・予測方法変換部１９８６で例えば図１７に従って予測方法に変換される。【０１４２】
例えば、予測セット番号が予測セット１（Ｍ＝３）で、符号が１１である場合には図６よりコード番号は２と復号される。コード番号が２の場合には図１７より予測方法はインデックス４と復号される。【０１４３】
なお、選択可能な予測方法の数Ｍが１通りの場合の予測方法をデフォルト値保持部１９８７に格納する理由は、先に説明したとおり、本実施形態では予測方法候補生成部１６２０ではなく可変長符号復号部１６００で選択可能な予測方法の数Ｍが１通りの場合の予測方法を決定する構成としたためである。【０１４４】
＜復号方法Ｂ＞
図２０は、可変長符号復号部１６００の内部の構成の別の一例を示す図である。復号方法Ｂの可変長符号復号部１６００は、コード番号復号部２０８０、予測方法・コード番号変換部２０８１、予測方法予測部２０８３、予測方法保存部２０８４、コード番号・予測方法変換部２０８６、スイッチ２０８８を備える。予測方法予測部２０８３は、予測方法の予測を行う。【０１４５】
本実施形態の予測方法の復号方法では、選択可能な予測方法の数Ｍによって復号方法が変わる。この切り替えはスイッチ２０８８で行われる。【０１４６】
選択可能な予測方法の数Ｍが０通りもしくは１通りの場合（予測セット０）は、スイッチ２０８８は、予測方法予測部２０８３の出力する、復号対象ブロックの予測方法予測値（ここでは直前ブロックの予測方法）を、予測方法として選択するように切り替えられる。【０１４７】
逆に、選択可能な予測方法の数Ｍが２通り以上の場合には、スイッチ２０８８は、コード番号・予測方法変換部２０８６の出力する、符号化データから復号した予測方法を選択するように切り替えられる。【０１４８】
スイッチ２０８８で選択された予測方法は、一方では可変長符号復号部１６００の外、つまり予測ブロック生成部１６０６に出力される。【０１４９】
スイッチ２０８８で選択された予測方法は、他方では復号対象ブロックの予測方法として予測方法保存部２０８４に保存される。なお、複数参照画像予測を行わない場合の復号対象ブロックは複数参照画像予測に関わる予測方法を持たない。しかし本実施形態では、予測方法を持たない復号対象ブロックについても、予測方法予測部２０８３の出力する復号対象ブロックの予測方法予測値を仮の予測方法として持たせ、その予測方法を保持する。【０１５０】
予測方法予測部２０８３は、予測方法保存部２０８４に保存された復号済みのブロックの予測方法から予測方法予測値を決定する。決定された予測方法予測値は２つに分岐され、一方では予測方法・コード番号変換部２０８１に出力され、予測方法を符号化データから復号するときに用いられる。他方ではスイッチ２０８８に出力され、既に説明したように予測方法を持たない復号対象ブロックの仮の予測方法として用いられる。【０１５１】
予測方法予測部２０８３では、予測方法保存部２０８４に保存されている周囲のブロックの予測方法を参照して、予測方法（インデックス）を予測する。なお、第１の実施の形態（符号化方法Ｂ）において説明したとおり、予測方法予測値を算出する１つの方法は直前ブロックの予測方法を予測方法予測値とするものである。他の方法の１つは、左ブロック、上ブロック、右上ブロックの予測方法を示すインデックスの中央値（メジアン）を予測方法予測値とするものである。その他、左ブロックと上ブロックの予測方法を示すインデックスの最小値（もしくは最大値）を予測方法予測値とする方法などが考えられる。また、別の方法で予測方法予測値を決定しても良い。【０１５２】
得られた予測方法予測値は、符号化データから予測方法を復号する場合にも用いられる。この場合、予測方法予測値は、予測方法・コード番号変換部２０８１において、第１の実施の形態の説明で用いた図４に従ってコード番号予測値に変換される。つまり予測方法予測値を予測方法として、図４に従って変換されたコード番号をコード番号予測値とする。得られたコード番号予測値はコード番号復号部２０８０に出力される。例えば、予測セット番号が予測セット２で予測方法予測値（インデックス）が４である場合には、図４からコード番号予測値として４が出力される。【０１５３】
コード番号復号部２０８０では、符号化データからコード番号予測値を用いて次のようにコード番号を復号する。コード番号復号部２０８０は、まず予測が当たったかどうかを示す１ビット（予測当否符号）を復号する。予測当否符号が１である場合は予測が当たったことを意味し、コード番号としてコード番号予測値が出力される。逆に、予測当否符号が０である場合には予測が外れたことを意味し、選択可能な予測方法の数Ｍに応じてさらに残差符号を復号する。ここでは残差符号として次に示すＫビットを復号する。このビット数Ｋは、選択可能な予測方法の数Ｍを用いて
２Ｋ≦Ｍ−１＜２Ｋ＋１
となるものである。【０１５４】
予測当否符号に続く残差符号を復号した値（予測誤差値）により、次のようにコード番号が復号され、コード番号・予測方法変換部２０８６に出力される。
コード番号  ＝  予測誤差値        （予測誤差値  ＜    コード番号予測値）
予測誤差値  ＋  １（予測誤差値  ≧  コード番号予測値）
例えば、予測セット番号が予測セット２で、コード番号予測値が２、予測誤差値の符号が２進表示で１０の場合、以下のようになる。まず、符号（１０）を復号した予測誤差値は２である。この場合、予測誤差値  ≧  コード番号予測値であるからコード番号は２＋１＝３となる。【０１５５】
コード番号復号部２０８０で復号されたコード番号は、コード番号・予測方法変換部２０８６に出力され、例えば図１７に従ってコード番号から予測方法（インデックス）に変換され、予測方法を復号する場合の予測方法が求められる。【０１５６】
既に説明したように、スイッチ２０８８では復号された予測方法もしくは予測方法予測部２０８３で予測された予測方法予測値のいずれかが選択され、予測方法が確定する。
図３もしくは図１２に示される選択可能な予測方法のセットは、復号対象ブロックを復号する前にスライスヘッダもしくはフレームヘッダで復号することによりスライス単位、フレーム単位で適応的に切り替えることも可能である。【０１５７】
＜動画像復号の手順の説明＞
図２１は、本発明に関わる動画像復号の手順を示すフローチャートである。図２１は、復号対象ブロックを１通り復号する手順を示したものであり、復号対象フレームが複数ブロックから構成される場合にはブロックの数だけ繰り返すものとする。【０１５８】
まず、入力された符号化データから参照ブロックの動き情報を復号し参照ブロックを抽出する（ステップＳ２０）。動き情報には、動きベクトルと相対インデックスがある。なお、復号対象ブロックの動き情報が符号化されず予測によって算出する動き補償モード（ダイレクトモード）で符号化されている場合には、符号化データの復号を行わずに予測により動き情報を決定する。【０１５９】
そして、抽出された複数の参照ブロックから予測ブロックを生成するための予測方法として、復号対象ブロックに関わる所定の情報（参照ブロックの差の大きさＤＩＦＦ）に基づいて選択可能な予測方法の候補を生成する（ステップＳ２１）。このとき、その所定の情報に基づいて、予測方法の候補の数Ｍを変えることも可能であるし予測方法の内容（線形予測の場合には線形予測係数）を変えることも可能である。【０１６０】
次に予測方法の候補の数（選択可能な予測方法の数）が２通り以上であるかの判定を行う（ステップＳ２２）。
予測方法の候補の数が２通り以上の場合（ＹＥＳの場合）には入力された符号化データを復号することで、予測方法を復号し（ステップＳ２３）、ステップＳ２５に進む。
予測方法の候補の数が１通り以下の場合（ステップＳ２２、ＮＯの場合）には符号化データの復号は行わずに、選択可能な予測方法に応じて予測方法を決定し（ステップＳ２４）、ステップＳ２５に進む。
ステップＳ２５では、ステップＳ２３で復号された予測方法もしくはステップＳ２４で決定された予測方法に従って、参照ブロックから予測ブロックを生成する。【０１６１】
また、入力された符号化データから予測誤差を復号する（ステップＳ２６）。可変長符号の復号により量子化変換係数を復号し、逆量子化により変換係数を復号し、逆ＤＣＴ変換などの逆変換により予測誤差を再生する。なお予測誤差を符号化しない動き補償モード（スキップモード）を用いる場合には予測誤差の復号を行わない。【０１６２】
生成された予測ブロックと復号された予測誤差の和により、復号画像を再生する（ステップＳ２７）。
以上の手順により１つの復号対象ブロックを復号することができる。なおステップＳ２０で示す参照ブロックの動き情報の復号、ステップＳ２３で示す予測方法の復号、ステップＳ２６で示す予測誤差の復号の順序は図２１と異なっても構わない。【０１６３】
但し本実施形態のように、予測方法の候補の生成に用いられる所定の情報に参照ブロックから生成される情報（参照ブロックの差の大きさＤＩＦＦ）を用いる場合には、予測ブロックの動き情報の復号を予測方法の復号の前に行う必要がある。同様に、所定の情報に予測誤差から生成される情報（例えば、予測誤差の絶対値和）を用いる場合には、予測誤差の復号を予測方法の復号の前に行う必要がある。【０１６４】
さらに予測方法予測部２０８３において予測方法を予測する他の方法を説明する。ここで説明する方法は、第１の実施の形態と同様、復号対象ブロック（第１の実施の形態では符号化対象ブロックとして説明）の属するフレームと参照ブロックの属するフレームの時間的距離を利用する。
図１０は、予測方法予測部２０８３において時間的距離を利用する場合の動作を説明する図である。時間的距離に基づいて予測方法予測値を求める方法の詳細は、第１の実施の形態と同じであるので説明を省略する（但し、この説明においては、符号化対象ブロックは復号対象ブロック、符号化済みのブロックは復号済みのブロック、フレームメモリ１０５はフレームメモリ１６０５、予測方法予測部８８３は予測方法予測部２０８３、予測方法保存部８８４は予測方法保存部２０８４等と適宜各々読み替える）。復号対象ブロックと参照ブロックの時間的距離に基づいて複数参照画像予測を行う場合の予測方法を予測することによって、本実施形態の動画像復号装置は高効率で符号化したデータを復号することができる。【０１６５】
以上説明したように、本実施形態の動画像復号装置は復号の際に、復号対象ブロックの参照ブロックの差の大きさＤＩＦＦを用いて選択可能な予測方法に関する情報を決定し、その決定された情報と符号化データ内の予測方法に関する情報とに従って予測方法を復号し、さらに復号された予測方法に従って複数の参照ブロックから予測ブロックを生成し、生成した予測ブロックに基づいてブロックを復号する。これにより、第１の実施の形態の符号化装置のように符号量を減らした符号化データ（すなわち、符号化対象ブロックの参照ブロックの差の大きさＤＩＦＦが小さい場合に選択可能な予測方法の数を減らし予測方法を符号化するための符号量を減らした符号化データ）を復号することができる。換言すれば、本復号装置で復号できる符号化データの符号量を減らすことができる。また、選択可能な予測方法の数を減らす場合には、最適な予測ブロックを選択する場合に計算すべきコストの数が減ることになるので、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。【０１６６】
また、本実施形態の動画像復号装置は、参照ブロックの差の大きさＤＩＦＦが小さい場合にＷ１：Ｗ２が１：１から離れた線形予測係数を選択可能な予測方法のセットに含ませる（セット全体として広がりの大きい予測方法のセットを用いる）ようにし、参照ブロックの差の大きさＤＩＦＦが大きい場合にはＷ１：Ｗ２が１：１に近い線形予測係数を選択可能な予測方法のセットに含ませる（セット全体として広がりの小さい予測方法のセットを用いる）ようにしている。そのため、第１の実施形態の動画像符号化装置のように選択可能な予測方法のセットを同様に定め高効率で符号化したデータを、本実施形態の動画像復号装置は復号することができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。【０１６７】
＜＜実施形態３＞＞
図２２は、本発明の第３の実施の形態の動画像符号化装置の構成を示すブロック図である。本符号化装置は、変換部２２０１、量子化部２２０２、逆量子化部２２０３、逆変換部２２０４、フレームメモリ２２０５、予測ブロック候補生成部２２０６、予測ブロック選択部２２０７、可変長符号化部２２０８、減算部２２１０、加算部２２１１、予測方法候補生成部２２２０、量子化係数設定部２２３０を備える。【０１６８】
符号化装置に符号化対象ブロックが入力されると、量子化係数設定部２２３０は可変長符号化部２２０８から出力される符号化データ量をもとに、符号化対象ブロックの符号化に用いる量子化係数ＱＰを決定し、量子化部２２０２、逆量子化部２２０３、予測方法候補生成部２２２０に出力する。次に、予測ブロック候補生成部２２０６で、フレームメモリ２２０５に保存された符号化済みフレームを用いて予測ブロック候補が生成される。予測ブロック選択部２２０７では、予測ブロック候補から最適なブロック（予測ブロック）が選択される。【０１６９】
選択された予測ブロックは減算部２２１０に入力され、符号化対象ブロックと予測ブロックの差分（予測誤差）が算出される。算出された予測誤差は、変換部２２０１によりＤＣＴ変換などの変換がなされ、得られた変換係数は量子化部２２０２により量子化され量子化変換係数が生成される。量子化変換係数は二分岐され、一方で可変長符号化部２２０８により符号化される。【０１７０】
量子化変換係数は、他方において逆量子化部２２０３、逆変換部２２０４を経て予測誤差が再生される。再生された予測誤差は加算部２２１１で予測ブロックに加算され局所復号ブロックが生成される。局所復号ブロックはフレームメモリ２２０５に出力され、そこで符号化済みフレームとして保存される。保存された符号化済みフレームは、後続のフレームもしくは現フレームの後続の符号化対象ブロックを符号化する場合に参照される。【０１７１】
予測ブロック候補生成部２２０６は、内部に図示しない動き探索部を備える。動き探索部は、フレームメモリ２２０５に保存されたフレームから符号化対象ブロックに似た参照ブロックを抽出する。ここでは複数（Ｎ個）の参照ブロック（各々、参照ブロック１、参照ブロック２、・・・、参照ブロックＮと呼ぶ）を抽出する。【０１７２】
予測方法候補生成部２２２０は、符号化対象ブロックに関わる所定の情報（本実施形態では量子化係数ＱＰ）に基づいて選択可能な予測方法のセットと予測セット番号を決定し、予測ブロック候補生成部２２０６に出力する。【０１７３】
予測ブロック候補生成部２２０６は、決定された選択可能な予測方法のセットに従って複数（Ｎ個）の参照ブロックから予測ブロック候補を生成する。複数の参照ブロックから予測ブロック候補を生成する方法の一つは、参照ブロックと線形予測係数の積和演算から予測ブロック候補を生成するもの（線形予測）であるが、線形予測以外の方法で複数の参照ブロックから予測ブロック候補を生成しても良い。【０１７４】
本実施形態では、予測ブロック候補生成部２２０６において複数の参照ブロックから予測ブロック候補を生成する方法として、第１の実施の形態と同じく前述の式１の方法を用いる。すなわち、
予測ブロック候補  ＝  （参照ブロック１）×Ｗ１＋（参照ブロック２）×Ｗ２
である。ここで用いるパラメータ（線形予測係数）についても、第１の実施の形態と同じく図２に示すものを用いる。【０１７５】
選択可能な予測方法のセットとして、線形予測係数（Ｗ１、Ｗ２）が（４／８、４／８）、（６／８、２／８）、（２／８、６／８）、もしくはインデックス０、３、４が入力された場合には予測ブロック候補生成部２２０６では、次のように予測ブロック候補が生成される。
予測ブロック候補１  ＝  （参照ブロック１）
予測ブロック候補２  ＝  （参照ブロック２）
予測ブロック候補３  ＝  （参照ブロック１）×４／８＋（参照ブロック２）×４／８
予測ブロック候補４  ＝  （参照ブロック１）×６／８＋（参照ブロック２）×２／８
予測ブロック候補５  ＝  （参照ブロック１）×２／８＋（参照ブロック２）×６／８【０１７６】
なお、第１の実施の形態と同様に、１つの参照ブロックだけから予測される予測ブロック候補（ここでは予測ブロック候補１、予測ブロック候補２）を特別扱いせず、線形予測係数（Ｗ１、Ｗ２）で（８／８、０／８）、（０／８、８／８）のような１つの参照ブロックだけから予測する予測方法を用意し、予測ブロック候補を生成しても良い。【０１７７】
生成された予測ブロック候補と、予測ブロック候補の生成に必要な情報（動き情報と予測方法）、予測方法の符号化に必要な情報（予測セット番号）は、予測ブロック選択部２２０７に出力される。【０１７８】
図２３は、量子化係数ＱＰから選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。予測方法候補生成部２２２０は、符号化対象ブロックに関わる所定の情報（本実施形態では量子化係数ＱＰ）に基づいて図２３に従い選択可能な予測方法のセットとその番号（予測セット番号）を決定し、予測ブロック候補生成部２２０６に出力する。【０１７９】
図２３は量子化係数ＱＰによって、
予測セット番号１：選択可能な予測方法（インデックス）が０、３、４
予測セット番号３：選択可能な予測方法（インデックス）が０、１、２
予測セット番号２：選択可能な予測方法（インデックス）が０、１、２、３、４
という３種類の予測方法のセット（予測セット１、予測セット３、予測セット２）のうち一つが選択されることを示している。選択可能な予測方法の数Ｍは、予測方法のセットにより変えることも可能であり、図２３では各々３、３、５となる。【０１８０】
量子化係数ＱＰが大きい場合には選択可能な予測方法の数を増やす（多くの予測ブロック候補を適応的に切り替える）ことによる符号量削減効果は比較的小さいのに対し、選択可能な予測方法の数を増やす場合にはそれだけ予測方法の符号量は大きくなる。そのため、図２３の例に示すように、量子化係数ＱＰが大きい場合には予測方法の数を少なくすることによって符号化効率を向上させることができ同時に演算量も減らすことができる。【０１８１】
また、量子化係数ＱＰが大きい場合にはＷ１：Ｗ２が１：１から離れた線形予測係数（広がりの大きい予測方法のセット）が予測ブロック候補の生成方法として好適であることが多く、量子化係数ＱＰが小さい場合にはＷ１：Ｗ２が１：１に近い線形予測係数（広がりの小さい予測方法のセット）が予測ブロック候補の生成方法として好適であることが多いことから、選択可能な予測方法の数が同じ場合においても量子化係数ＱＰに応じて選択可能な予測方法のセットの内容（線形予測係数）を変更することが好適である。【０１８２】
なお、上記の性質は、レート歪み特性を、ＲＤコストの式を再度参照しても理解することができる。
ＲＤコスト  ＝  局所復号ブロックと符号化対象ブロックのＳＳＤ
＋  λ×（予測誤差の符号量＋符号化パラメータの符号量）
レート歪み特性では、量子化係数ＱＰが大きいほどλの値は大きくなるので、この式においては符号量の影響が大きくなる。従って、予測方法を変えることによるＳＳＤ減少効果が同じであれば、予測可能な予測係数の数を減らし予測方法の符号量を減らすことが好適になる。また、逆に同じ予測係数の数を使う場合には、その分ＳＳＤの減少効果が大きい予測方法を用いる必要がある。広がりの小さい予測方法のセットでは、ＳＳＤの減少効果は限られることから、広がりの大きい予測方法のセットを用いることが好適である。【０１８３】
すなわち、図２３に示すように、量子化係数ＱＰが大きい（ＱＰ＞３２）場合には、選択可能な予測方法のセット（インデックス）は０、３、４、すなわち、線形予測係数は、
（４／８、４／８）、（６／８、２／８）、（２／８、６／８）
というように、（６／８、２／８）、（２／８、６／８）という１：１から離れた候補を用意し（セット全体として広がりの大きい予測方法のセットを用意し）、量子化係数ＱＰがそれよりも小さい（１６＜ＱＰ≦３２）場合には、選択可能な予測方法（インデックス）のセットは０、１、２、すなわち、線形予測係数は、
（４／８、４／８）、（５／８、３／８）、（３／８、５／８）
というように、（５／８、３／８）、（３／８、５／８）という１：１に近い候補を用意する（セット全体として広がりの小さい予測方法のセットを用意する）と良い。【０１８４】
図２３に示される選択可能な予測方法のセットは、スライスヘッダもしくはフレームヘッダで符号化することによりスライス単位、フレーム単位で適応的に切り替えることも可能である。【０１８５】
予測ブロック選択部２２０７は、予測ブロック候補生成部２２０６で生成された複数の予測ブロック候補から最もコストの小さい予測ブロックを選択する。コストは、第１の実施の形態で説明したように、ＳＡＤ、ＳＳＤ、ＲＤコスト、Ｍコストなどが用いられる。また、選択する際、どの参照ブロックを用いたかを表すフラグである参照モードフラグを定める。予測ブロック選択部２２０７は、選択した予測ブロックの生成に必要な情報（参照モードフラグ、動き情報、参照モードフラグが複数参照画像予測の使用を示している場合には予測方法）を可変長符号化部２２０８に出力し、さらに複数参照画像予測の場合には予測方法を符号化するための情報として予測セット番号を可変長符号化部２２０８に出力する。【０１８６】
可変長符号化部２２０８では、量子化係数設定部２２３０から入力された量子化係数ＱＰと、量子化部２２０２から入力された量子化変換係数と、予測ブロック選択部２２０７から入力された参照モードフラグと動き情報、参照モードフラグが複数参照画像予測の使用を示している場合はさらに予測方法が、各々符号化される。なお、参照モードフラグは、第１の実施の形態と同様に、符号化対象ブロックの他の情報と共にブロックタイプとして符号化しても良く、また、符号化対象ブロックが複数の動き補償モードを持つ場合には、動き補償モードと共に符号化しても良い。【０１８７】
可変長符号化部２２０８では、予測セット番号に応じて予測方法がコード番号に変換され、続いてコード番号が符号化される。符号化の詳細は第１の実施の形態と同じであるので説明を省略するが、予測方法の候補の数が２通り以上の場合には予測方法の符号化を行い、予測方法の候補の数が１通り以下の場合には予測方法の符号化は行わないようになっている。【０１８８】
第３の実施の形態の符号化装置を用いると、符号化対象ブロックの量子化係数ＱＰに応じて、当該ブロックの予測ブロック候補の生成に関わる選択可能な予測方法のセットを変化させることができる。これにより量子化係数ＱＰが大きい場合に、選択可能な予測方法の数を減らし予測方法を符号化するための符号量を減らすことができ同時に符号化に係る演算量を小さくすることができる。【０１８９】
また、量子化係数ＱＰが大きい場合にＷ１：Ｗ２が１：１から離れた線形予測係数を選択可能な予測方法のセットに含ませる（セット全体として広がりの大きい予測方法のセットを用いる）ようにし、量子化係数ＱＰが小さい場合にはＷ１：Ｗ２が１：１に近い線形予測係数を多く選択可能な予測方法のセットに含ませる（セット全体として広がりの小さい予測方法のセットを用いる）ようにすることで、同数の線形予測係数の候補を用いる場合にも符号化効率を高めることができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、符号化に係る演算量を小さくすることができる。【０１９０】
＜＜実施形態４＞＞
図２４は、本発明の第４の実施の形態の動画像復号装置の構成を示すブロック図である。本復号装置は、可変長符号復号部２４００、逆量子化部２４０３、逆変換部２４０４、フレームメモリ２４０５、予測ブロック生成部２４０６、加算部２４１１、予測方法候補生成部２４２０を備える。【０１９１】
本実施形態の復号装置は、例えば、第３の実施の形態の符号化装置で符号化された符号化データを復号できるものである。復号装置に符号化データが入力されると、可変長符号復号部２４００により量子化係数ＱＰと参照モードフラグ、動き情報（動きベクトル、参照ブロックの生成に用いる参照フレームを複数の候補から選択するなら相対インデックス）、量子化変換係数が復号される。量子化係数ＱＰは、逆量子化部２４０３、予測方法候補生成部２４２０に出力され、参照モードフラグと動き情報は予測ブロック生成部２４０６に出力され、量子化変換係数は逆量子化部２４０３に出力される。なお、参照モードフラグは、第２の実施の形態と同様に、復号対象ブロックの他の情報と共にブロックタイプとして復号しても良く、また、復号対象ブロックが複数の動き補償モードを持つ場合には、動き補償モードと共に復号しても良い。【０１９２】
量子化変換係数は、逆量子化部２４０３、逆変換部２４０４を経て復号されることにより予測誤差が再生され、加算部２４１１に出力される。予測ブロック生成部２４０６では、フレームメモリ２４０５に保存された復号済みフレームと参照モードフラグ、動き情報より予測ブロックが生成され、加算部２４１１に出力される。加算部２４１１では、予測誤差と予測ブロックの和によりブロックが復号される。復号されたブロックは、一方では復号装置の外に出力され、他方ではフレームメモリ２４０５に保存される。【０１９３】
予測ブロック生成部２４０６は、内部に備える動き補償部２４６１で、可変長符号復号部２４００から入力された参照モードフラグと動き情報を用いて、動き情報に相対インデックスが存在すれば相対インデックスの示す参照フレームを選択し、選択された参照フレームから動き情報の動きベクトルの示す位置の参照ブロックを抽出する。参照モードフラグが複数参照画像予測の使用を示していない場合には参照ブロックが１個だけ抽出される。複数参照画像予測の使用を示している場合は複数の参照ブロックが抽出される。【０１９４】
複数参照画像予測でない場合（前方予測もしくは後方予測の場合）、抽出された参照ブロックはそのまま予測ブロックとして加算部２４１１に出力される。
複数参照画像予測の場合、抽出された複数の参照ブロックは、予測ブロック生成部２４０６の内部に備える予測ブロック予測部２４６２に出力され、ここで予測ブロックが生成され、加算部２４１１に出力される。
予測ブロック予測部２４６２において複数の参照ブロックから予測ブロックを生成する方法は、第１の実施の形態と同じく前述の式１の線形予測を用いる（線形予測以外の予測方法を用いても良い）。【０１９５】
予測方法候補生成部２４２０では、復号対象ブロックに関わる所定の情報（本実施形態では量子化係数ＱＰ）に基づいて選択可能な予測方法のセットとその番号（予測セット番号）が決定され可変長符号復号部２４００に出力される。予測方法候補生成部２４２０は、図２３に従って選択可能な予測方法のセットとその番号を決定する。【０１９６】
可変長符号復号部２４００は、選択可能な予測方法のセットと予測セット番号に従って予測方法を復号する。予測方法の復号では、コード番号の復号が行われ、続いて予測セット番号に応じてコード番号が予測方法に変換される。復号の詳細は第２の実施の形態と同じであるので説明を省略する。【０１９７】
復号された予測方法は予測ブロック生成部２４０６に出力される。この予測方法は、予測方法を示すパラメータ（ここでは線形予測係数）でも良いし、予測方法を示すインデックスでも良い。予測ブロック生成部２４０６では、予測方法に応じて予測ブロックが生成される。【０１９８】
図２３に示される選択可能な予測方法のセットと予測セット番号、量子化係数の関係は、スライスヘッダもしくはフレームヘッダ毎に符号化されたデータを復号することが可能であり、スライス単位、フレーム単位で適応的に切り替えることも可能である。【０１９９】
以上説明したように、本実施形態の動画像復号装置は、復号対象ブロックの量子化係数ＱＰを用いて選択可能な予測方法に関する情報を決定し、その決定された情報と符号化データ内の予測方法に関する情報とに従って予測方法を復号し、さらに復号された予測方法に従って複数の参照ブロックから予測ブロックを生成し、生成した予測ブロックに基づいてブロックを復号する。これにより、第３の実施の形態の符号化装置のように符号量を減らした符号化データ（すなわち、符号化対象ブロックの量子化係数ＱＰに応じて当該ブロックの予測ブロックの生成に関わる選択可能な予測方法のセットを変化させ、量子化係数ＱＰが大きい場合に選択可能な予測方法の数を減らすることにより、予測方法を符号化するための符号量を減らした符号化データ）を復号することができる。換言すれば、本復号装置で復号できる符号化データの符号量を減らすことができる。また、選択可能な予測方法の数を減らす場合には、最適な予測ブロックを選択する場合に計算すべきコストの数が減ることになるので、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。【０２００】
また、本実施形態の動画像復号装置は、量子化係数ＱＰが大きい場合にＷ１：Ｗ２が１：１から離れた線形予測係数を選択可能な予測方法のセットに含ませる（セット全体として広がりの大きい予測方法のセットを用いる）ようにし、量子化係数ＱＰが小さい場合にはＷ１：Ｗ２が１：１に近い線形予測係数を選択可能な予測方法のセットに含ませる（セット全体として広がりの小さい予測方法のセットを用いる）ようにしている。そのため、第３の実施形態の動画像符号化装置のように選択可能な予測方法のセットを同様に定め高効率で符号化したデータを、本実施形態の動画像復号装置は復号することができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。【０２０１】
＜＜実施形態５＞＞
図２５は、本発明の第５の実施の形態の動画像符号化装置の構成を示すブロック図である。本符号化装置は、変換部２５０１、量子化部２５０２、逆量子化部２５０３、逆変換部２５０４、フレームメモリ２５０５、予測ブロック候補生成部２５０６、予測ブロック選択部２５０７、可変長符号化部２５０８、減算部２５１０、加算部２５１１、予測方法候補生成部２５２０を備える。【０２０２】
符号化装置に符号化対象ブロックが入力されると、予測ブロック候補生成部２５０６ではフレームメモリ２５０５に保存された符号化済みフレームを用いて予測ブロック候補が生成される。予測ブロック選択部２５０７では、予測ブロック候補から予測ブロックが選択される。【０２０３】
選択された予測ブロックは減算部２５１０に入力され、符号化対象ブロックと予測ブロックの差分（予測誤差）が算出される。算出された予測誤差は、変換部２５０１によりＤＣＴ変換などの変換がなされ、得られた変換係数は量子化部２５０２により量子化され量子化変換係数が生成される。量子化変換係数は二分岐され、一方で可変長符号化部２５０８により符号化される。【０２０４】
量子化変換係数は、他方において逆量子化部２５０３、逆変換部２５０４を経て予測誤差が再生される。再生された予測誤差は加算部２５１１で予測ブロックに加算され局所復号ブロックが生成される。局所復号ブロックはフレームメモリ２５０５に出力され、そこで符号化済みフレームとして保存される。保存された符号化済みフレームは、後続のフレームもしくは現フレームの後続の符号化対象ブロックを符号化する場合に参照される。【０２０５】
予測ブロック候補生成部２５０６は、内部に図示しない動き探索部を備える。動き探索部は、フレームメモリ２５０５に保存されたフレームから符号化対象ブロックに似た参照ブロックを抽出する。第５の実施の形態の動き探索部では、複数の動き補償モードを用いて符号化対象ブロックに似たブロックを抽出する。本実施形態では、動き補償モードとして第１動き補償モードと第２動き補償モードの２つを用いた例を説明するが、より多くの動き補償モードを用いても良い。例えば、動き予測モードとして、スキップモード、ダイレクトモード、１６×１６予測モード、８×８予測モード、４×４予測モードがある場合が考えられる。【０２０６】
第１動き補償モードは、特に符号化パラメータや予測残差の符号量を省略を含む方法により削減するモード（例えば、動き情報を符号化しないダイレクトモードや、動き情報と予測残差を符号化しないスキップモード、動き情報そのものを符号化するのではなく、動き情報の予測方法のヒント情報だけを符号化するモード、精度を落とした動き情報を用いるモード、可変長符号化方法を専用のものに切り替えるなどにより符号量を削減したモードなど）を用いるのが良い。第２動き補償モードは第１動き補償モード以外の動き補償モードである。省略された情報は、既に符号化した情報（復号装置であれば、既に復号された情報）からの予測などにより補われる。【０２０７】
例えば、動き補償モードとしてダイレクトモードと非ダイレクトモードを用いる場合には、第１動き補償モードをダイレクトモード、第２動き補償モードを非ダイレクトモードとする。また、動き補償モードとしてスキップモードと非スキップモードを用いる場合には、第１動き補償モードをスキップモード、第２動き補償モードを非スキップモードとする。また、動き補償モードとしてスキップモードとダイレクトモード、スキップ・ダイレクト以外のモードを用いる場合には、第１動き補償モードをスキップモード及びダイレクトモード、第２動き補償モードをスキップ・ダイレクト以外のモードとする。【０２０８】
但し、第１動き補償モード、第２動き補償モードの区分けは、特に符号化パラメータや予測残差の符号量を削減するモードであるかの区分けに限らず、例えば、符号化対象ブロックをさらに小さいブロックに分割して動き補償を行う動き補償モード（１６×１６ブロックサイズモード、１６×８ブロックサイズモード、８×１６ブロックサイズモード、８×８ブロックサイズモード）などの区分けを用いても構わない。【０２０９】
動き探索部は、動き補償モード毎に複数の参照ブロックを抽出する。ここでは第１動き補償モードに対してＮ個、第２動き補償モードに対してＮ個とする。抽出された参照ブロックは、以下のように呼ばれる。
第１動き補償モード・参照ブロック１（ＤＲＥＦ１）
第１動き補償モード・参照ブロック２（ＤＲＥＦ２）
・・・
第１動き補償モード・参照ブロックＮ（ＤＲＥＦＮ）
第２動き補償モード・参照ブロック１（ＮＤＲＥＦ１）
第２動き補償モード・参照ブロック２（ＮＤＲＥＦ２）
・・・
第２動き補償モード・参照ブロックＮ（ＮＤＲＥＦＮ）【０２１０】
予測ブロック候補生成部２５０６は、動き補償モードを予測方法候補生成部２５２０に出力する。ここでは第１動き補償モードと第２動き補償モードを連続して出力する。【０２１１】
予測方法候補生成部２５２０は、符号化対象ブロックに関わる所定の情報（本実施形態では動き補償モード）に基づいて選択可能な予測方法のセットと予測セット番号を決定し、予測ブロック候補生成部２５０６に出力する。ここでは第１動き補償モードと第２動き補償モードという２種類の動き予測モードが連続して入力される。そして第１動き補償モードの選択可能な予測方法のセットと予測セット番号、第２動き補償モードの選択可能な予測方法のセットと予測セット番号が決定され出力される。【０２１２】
予測ブロック候補生成部２５０６は、動き予測モード毎に決定された選択可能な予測方法のセットに従って複数（Ｎ個）の参照ブロックから予測ブロック候補を生成する。複数の参照ブロックから予測ブロック候補を生成する方法の一つは、参照ブロックと線形予測係数の積和演算から予測ブロック候補を生成するもの（線形予測）であるが、線形予測以外の方法で複数の参照ブロックから予測ブロック候補を生成しても良い。【０２１３】
選択可能な予測方法のセットとして、動き補償モードが第１動き補償モードの場合に対してＭＤ通りの予測方法が決定される。ここで各々の予測方法に対する線形予測係数を以下のように表す。【０２１４】
【数７】
2009041215.tif 000009
【０２１５】
但し、【０２１６】
【数８】
2009041215.tif 000010
【０２１７】
また動き補償モードが第２動き補償モードの場合に対してＭＮＤ通りの予測方法が決定される。ここで各々の予測方法に対する線形予測係数を以下のように表す。【０２１８】
【数９】
2009041215.tif 000011
【０２１９】
但し、【０２２０】
【数１０】
2009041215.tif 000012
【０２２１】
そして以下のＭＤ＋Ｎ＋ＭＮＤ個の予測ブロック候補が生成される。【０２２２】
【数１１】
2009041215.tif 000013
【０２２３】
ここで、WeightedFunc(REF1,・・・,REFN,WP)は参照ブロックＲＥＦ１〜ＲＥＦＮと線形予測係数ＷＰ（＝（Ｗ１、Ｗ２、・・・、ＷＮ））から予測ブロック候補を生成する下記関数である。
WeightedFunc(REF1,・・・,REFN,WP)＝（Ｗ１×ＲＥＦ１）＋（Ｗ２×ＲＥＦ２）
＋・・・＋（ＷＮ×ＲＥＦＮ）【０２２４】
なお、１つの参照ブロックだけから予測される予測ブロック候補（ここでは予測ブロック候補ＭＤ＋１、予測ブロック候補ＭＤ＋２、・・・、予測ブロック候補ＭＤ＋Ｎ）を特別扱いせず、線形予測係数（Ｗ１、Ｗ２、・・・、ＷＮ）で（８／８、０／８、・・・、０／８）、（０／８、８／８、・・・、０／８）、・・・、（０／８、０／８、・・・、８／８）のような１つの参照ブロックだけから予測する予測方法を、以下の数１２で表される線形予測係数に用意することによって、数１３のように全体としてＭＮＤ＋Ｎ個の線形予測係数を用意し、数１４のように予測ブロック候補を生成しても良い。【０２２５】
【数１２】
2009041215.tif 000014
【０２２６】
【数１３】
2009041215.tif 000015
【０２２７】
【数１４】
2009041215.tif 000016
【０２２８】
本実施形態では、参照ブロックの数Ｎ＝２の場合を説明し、複数の参照ブロックから予測ブロック候補を生成する方法として、第１の実施の形態と同じく式１の方法を用いる。すなわち、
予測ブロック候補  ＝  （参照ブロック１）×Ｗ１＋（参照ブロック２）×Ｗ２
である。ここで用いるパラメータ（線形予測係数）についても、第１の実施の形態と同じく図２に示すものを用いる。【０２２９】
動き補償モードが第１動き補償モードに対し、選択可能な予測方法のセットは線形予測係数（Ｗ１、Ｗ２）で（４／８、４／８）、（６／８、２／８）、（２／８、６／８）もしくはインデックス０、３、４が入力され、さらに、動き補償モードが第２動き補償モードに対し、選択可能な予測方法のセットは線形予測係数（Ｗ１、Ｗ２）で（４／８、４／８）、（５／８、３／８）、（３／８、５／８）もしくはインデックス０、１、２が入力された場合を説明する。【０２３０】
予測ブロック候補生成部２５０６では、次のように予測ブロック候補が生成される。なお以下の式を式２とする。
予測ブロック候補１  ＝  （ＤＲＥＦ１）×４／８＋（ＤＲＥＦ２）×４／８
予測ブロック候補２  ＝  （ＤＲＥＦ１）×６／８＋（ＤＲＥＦ２）×２／８
予測ブロック候補３  ＝  （ＤＲＥＦ１）×２／８＋（ＤＲＥＦ２）×６／８
予測ブロック候補４  ＝  （ＮＤＲＥＦ１）
予測ブロック候補５  ＝  （ＮＤＲＥＦ２）
予測ブロック候補６  ＝  （ＮＤＲＥＦ１）×４／８＋（ＮＤＲＥＦ２）×４／８
予測ブロック候補７  ＝  （ＮＤＲＥＦ１）×５／８＋（ＮＤＲＥＦ２）×３／８
予測ブロック候補８  ＝  （ＮＤＲＥＦ１）×３／８＋（ＮＤＲＥＦ２）×５／８【０２３１】
生成された予測ブロック候補、及び、参照ブロックの生成に必要な情報（動き補償モード、動き情報、予測方法）及び、予測方法の符号化に必要な情報（予測セット番号）は予測ブロック選択部２５０７に出力される。動き情報には動きベクトル、相対インデックスがある。【０２３２】
図２６は、動き補償モードから選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。図２６は、動き補償モードによって、
予測セット１：選択可能な予測方法（インデックス）が０、３、４
予測セット３：選択可能な予測方法（インデックス）が０、１、２
という２種類の予測方法のセット（予測セット１、予測セット３）のうち一つが選択されることを示している。予測方法候補生成部２５２０は、符号化対象ブロックに関わる所定の情報（本実施形態では動き補償モード）に基づいて図２６に従い選択可能な予測方法のセットとその番号（予測セット番号）を決定し、予測ブロック候補生成部２５０６に出力する。【０２３３】
動き補償モードが第１動き補償モードの場合にはＷ１：Ｗ２が１：１から離れた線形予測係数（広がりの大きい予測方法のセット）が予測ブロック候補の生成方法として好適であることが多く、動き補償モードが第２動き補償モードの場合にはＷ１：Ｗ２が１：１に近い線形予測係数（広がりの小さい予測方法のセット）が予測ブロック候補の生成方法として好適であることが多いことが実験によって分かっている。そのため、選択可能な予測方法の数が同じ場合においても、動き補償モードに応じて選択可能な予測方法のセットの内容（線形予測係数）を変更することが好適である。【０２３４】
すなわち、図２６に示すように、動き予測モードが第１動き補償モードの場合に対しては、選択可能な予測方法（インデックス）のセットは０、３、４、すなわち、線形予測係数は、（４／８、４／８）、（６／８、２／８）、（２／８、６／８）というように、（６／８、２／８）、（２／８、６／８）という１：１から離れた候補を用意し（セット全体として広がりの大きい予測方法のセットを用意し）、動き予測モードが第２動き補償モードの場合に対しては、選択可能な予測方法（インデックス）のセットは０、１、２、すなわち、線形予測係数は、（４／８、４／８）、（５／８、３／８）、（３／８、５／８）というように、（５／８、３／８）、（３／８、５／８）という１：１に近い候補を用意する（セット全体として広がりの小さい予測方法のセットを用意する）と良い。【０２３５】
図２７は、動き補償モードから選択可能な予測方法のセットと予測セット番号を決定する方法の別の一例を示す図である。図２７に示すように、動き予測モードが第１動き補償モードか第２動き補償モードかに応じて選択可能な予測方法の数を変えることも好適である。このとき、第１動き補償モードでは線形予測係数に符号量を割り当てることによる符号化効率向上の効果は限られることから、第２動き補償モードに比べて選択可能な予測方法の数を減らすことが好適である。【０２３６】
このように、動き補償モードに複数のモードがある場合は、モードの性質に応じて、予測方法の候補の数を異ならせたり、予測方法の予測の広がりを異ならせたりすることが好適である。【０２３７】
図２６及び図２７に示される選択可能な予測方法のセット、予測セット番号、動き補償モードの関係を、スライスヘッダもしくはフレームヘッダで符号化することによりスライス単位、フレーム単位で適応的に切り替えることも可能である。【０２３８】
予測ブロック選択部２５０７は、予測ブロック候補生成部２５０６で生成された複数の予測ブロック候補から最もコストの小さいブロック（予測ブロック）を選択する。コストの算出には、第１の実施の形態等で説明したように、ＳＡＤ、ＳＳＤ、ＲＤコスト、Ｍコストなどが用いられる。また、どの参照ブロックを用いたかを表すフラグである参照モードフラグを定める。予測ブロック選択部２５０７は、選択した予測ブロックの生成に必要な情報（動き補償モード、参照モードフラグ、動き情報、参照モードフラグが複数参照画像予測の使用を示している場合にはさらに予測方法）と、予測方法を符号化するための情報として予測セット番号を可変長符号化部２５０８に出力する。なお、予測セット番号を出力するのは複数参照画像予測の場合のみであり、それ以外の場合には出力しない。【０２３９】
可変長符号化部２５０８では、量子化変換係数に加え、予測ブロック選択部２５０７から入力された動き補償モード、参照モードフラグ、動き情報、予測方法が各々符号化される。但し動き補償モードが第１動き補償モードの場合には参照モードフラグと動き情報の符号化は省略される。また、参照ブロック１、参照ブロック２を生成する場合に用いる参照フレームを、相対インデックス＝０で示されるフレームに限定する場合には参照フレームを特定する情報は必要なく、相対インデックスの符号化は省略される。なお、参照モードフラグは、第１の実施の形態と同様に、符号化対象ブロックの他の情報と共にブロックタイプとして符号化しても良く、また、符号化対象ブロックが複数の動き補償モードを持つ場合には、動き補償モードと共に符号化しても良い。【０２４０】
可変長符号化部２５０８で行われる予測方法の符号化方法では、予測セット番号に応じて予測方法がコード番号に変換され、続いてコード番号が符号化される。符号化の詳細は第１の実施の形態と同じであるので説明を省略するが、予測方法の候補の数が２通り以上の場合には予測方法の符号化を行い、予測方法の候補の数が１通り以下の場合には予測方法の符号化は行わないようになっている。【０２４１】
第５の実施の形態の符号化装置を用いると、符号化対象ブロックの動き補償モードに応じて当該ブロックの予測ブロック候補の生成に関わる選択可能な予測方法のセットを変化させることができる。これにより動き補償モードが第１動き補償モードの場合に、選択可能な予測方法の数を減らし予測方法を符号化するための符号量を減らすことができ同時に符号化に係る演算量を小さくすることができる。【０２４２】
また、動き補償モードが第１動き補償モード（例えば、ダイレクトモード、スキップモード）の場合にＷ１：Ｗ２が１：１から離れた線形予測係数を選択可能な予測方法のセットに含ませる（セット全体として広がりの大きい予測方法のセットを用いる）ようにし、第１動き補償モード以外の場合にはＷ１：Ｗ２が１：１に近い線形予測係数を多く選択可能な予測方法のセットに含ませる（セット全体として広がりの小さい予測方法のセットを用いる）ようにすることで、同数の線形予測係数の候補を用いる場合にも符号化効率を高めることができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、符号化に係る演算量を小さくすることができる。【０２４３】
上記議論は、２つより多くの動き補償モードを用いた場合でも同じである。この場合複数の動き補償モードの各々に対して予測方法の数と、予測方法のセットを変更しても良いし、複数の動き補償モードを幾つかのグループに分け、グループごとに予測方法の数と、予測方法のセットを変更することも好適である。例えば、動き予測モードとしてスキップモード、ダイレクトモード、１６×１６予測モード、８×８予測モード、４×４予測モードを用いる場合には、符号化パラメータや予測残差の符号量を省略などにより削減するモードであるかに応じて２つのグループに分け、符号化パラメータや予測残差の符号量を省略などにより削減するモードであるスキップモード、ダイレクトモードのグループ（第１の動き補償モードのグループ）である場合には、予測方法の数を小さくする、かつ／もしくは、広がりの大きい予測方法のセットを用いる。また、他方のグループ（１６×１６予測モード、８×８予測モード、４×４予測モード）の場合には予測方法の数を多くする、かつ／もしくは、広がりの小さい予測方法のセットを用いる。というようにするのが好適である。【０２４４】
＜＜実施形態６＞＞
図２８は、本発明の第６の実施の形態の動画像復号装置の構成を示すブロック図である。本復号装置は、可変長符号復号部２８００、逆量子化部２８０３、逆変換部２８０４、フレームメモリ２８０５、予測ブロック生成部２８０６、加算部２８１１、予測方法候補生成部２８２０を備える。【０２４５】
本実施形態の復号装置では、例えば、第５の実施の形態の動画像符号化装置のように複数の動き補償モードを用いて予測符号化された符号化データを復号できる。本実施形態では、複数の動き補償モードとして第１動き補償モードと第２動き補償モードの２つを用いた場合を説明するが、より多くの動き補償モードを用いても良い。【０２４６】
復号装置に符号化データが入力されると、可変長符号復号部２８００により量子化変換係数、動き補償モード、参照モードフラグ、動き情報（動きベクトル、相対インデックスが存在すれば相対インデックス）が復号される。動き補償モードは、予測方法候補生成部２８２０及び予測ブロック生成部２８０６に出力され、参照モードフラグ、動き情報は予測ブロック生成部２８０６に出力され、量子化変換係数は逆量子化部２８０３に出力される。なお参照モードフラグは、第２の実施の形態等と同様に、復号対象ブロックの他の情報と共にブロックタイプとして復号しても良い。また、参照モードフラグは動き補償モードと共に復号しても良い。【０２４７】
量子化変換係数は、逆量子化部２８０３、逆変換部２８０４を経て予測誤差が復号され、加算部２８１１に出力される。予測ブロック生成部２８０６では、フレームメモリ２８０５に保存された復号済みフレームと動き補償モード、参照モードフラグ、動き情報より予測ブロックが生成され、加算部２８１１に出力される。加算部２８１１では、予測誤差と予測ブロックの和によりブロックが復号される。復号されたブロックは、一方では復号装置の外に出力され、他方ではフレームメモリ２８０５に保存される。【０２４８】
予測ブロック生成部２８０６は、内部に備える動き補償部２８６１で、可変長符号復号部２８００から入力された動き補償モード、参照モードフラグ、動き情報を用いて、動き情報に相対インデックスが存在すれば相対インデックスの示す参照フレームを選択し、選択された参照フレームから動き情報の動きベクトルの示す位置の画像（参照ブロック）を抽出する。抽出時にフィルタリングなどを行っても構わない。【０２４９】
参照モードフラグが複数参照画像予測の使用を示していない場合は前方予測もしくは後方予測が用いられる場合であり参照ブロックが１個だけ抽出される。参照モードフラグ複数が参照画像予測の使用を示している場合は複数参照画像予測の場合であり、複数の参照ブロックが抽出される。なお、複数参照画像予測を用いない予測画像候補を選択したことを参照モードフラグで表すのではなく、予測方法の候補に特定の参照ブロックだけをそのまま使うものを用意し、その予測方法を選択することによって表しても良い。【０２５０】
複数参照画像予測でない場合（前方予測もしくは後方予測の場合）、動き補償モードに従って抽出された参照ブロックはそのまま予測ブロックとして加算部２８１１に出力される。
複数参照画像予測の場合、抽出された複数の参照ブロックは、予測ブロック生成部２８０６の内部に備える予測ブロック予測部２８６２に出力され、ここで予測ブロックが生成され、加算部２８１１に出力される。
予測ブロック予測部２８６２において複数の参照ブロックから予測ブロックを生成する方法は、第５の実施の形態と同じく前述の式２を用いる。【０２５１】
予測方法候補生成部２８２０では、復号対象ブロックに関わる所定の情報（本実施形態では動き補償モード）に基づいて選択可能な予測方法のセットとその番号（予測セット番号）が決定され可変長符号復号部２８００に出力される。ここでは図２６に従って選択可能な予測方法のセットと予測セット番号を決定する。
なお第５の実施の形態で説明したように、図２６ではなく図２７に従って動き補償モードから選択可能な予測方法のセットと予測セット番号を決定しても良い。【０２５２】
可変長符号復号部２８００は、選択可能な予測方法のセットと予測セット番号に従って予測方法を復号する。予測方法の復号では、コード番号の復号が行われ、続いて予測セット番号に応じてコード番号が予測方法に変換される。復号の詳細は第２の実施の形態と同じであるので説明を省略する。【０２５３】
復号された予測方法は予測ブロック生成部２８０６に出力される。この予測方法は、予測方法を示すパラメータ（線形予測係数）でも良いし、予測方法を示すインデックスでも良い。予測ブロック生成部２８０６では、予測方法に応じて予測ブロックが生成される。【０２５４】
図２６及び図２７に示される選択可能な予測方法のセットは、復号対象ブロックを復号する前にスライスヘッダもしくはフレームヘッダで復号することによりスライス単位、フレーム単位で適応的に切り替えることも可能である。【０２５５】
以上説明したように、本実施形態の動画像復号装置は、復号対象ブロックの動き補償モードを用いて選択可能な予測方法に関する情報を決定し、その決定された情報と符号化データ内の予測方法に関する情報とに従って予測方法を復号し、さらに復号された予測方法に従って複数の参照ブロックから予測ブロックを生成し、生成した予測ブロックに基づいてブロックを復号する。これにより、第５の実施の形態の符号化装置のように符号量を減らした符号化データ（すなわち、符号化対象ブロックの動き予測モードに応じて当該ブロックの予測ブロックの生成に関わる選択可能な予測方法のセットを変化させ、動き予測モードが第１動き補償モード（例えばダイレクトモードやスキップモード）の場合に、選択可能な予測方法の数を減らすことにより、予測方法を符号化するための符号量を減らした符号化データ）を復号することができる。換言すれば、本復号装置で復号できる符号化データの符号量を減らすことができる。また、選択可能な予測方法の数を減らす場合には、最適な予測ブロックを選択する場合に計算すべきコストの数が減ることになるので、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。【０２５６】
また、本実施形態の動画像復号装置は、動き補償モードが第１動き補償モード（例えばダイレクトモードやスキップモード）の場合にＷ１：Ｗ２が１：１から離れた線形予測係数を選択可能な予測方法のセットに含ませる（セット全体として広がりの大きい予測方法のセットを用いる）ようにし、第１動き補償モード以外の場合にはＷ１：Ｗ２が１：１に近い線形予測係数を多く選択可能な予測方法のセットに含ませる（セット全体として広がりの小さい予測方法のセットを用いる）ようにしている。そのため、第５の実施形態の動画像符号化装置のように選択可能な予測方法のセットを同様に定め高効率で符号化したデータを、本実施形態の動画像復号装置は復号することができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。【０２５７】
例えば、動き予測モードとしてスキップモード、ダイレクトモード、１６×１６予測モード、８×８予測モード、４×４予測モードを用いる場合には、符号化パラメータや予測残差の符号量を省略などにより削減するモードであるかに応じて２つのグループに分け、符号化パラメータや予測残差の符号量を省略などにより削減するモードであるスキップモード、ダイレクトモードのグループ（第１の動き補償モードのグループ）である場合には、予測方法の数を小さくする、かつ／もしくは、広がりの大きい予測方法のセットを用いる。また、他方のグループ（１６×１６予測モード、８×８予測モード、４×４予測モード）の場合には予測方法の数を多くする、かつ／もしくは、広がりの小さい予測方法のセットを用いる。というようにするのが好適である。【０２５８】
＜＜実施形態７＞＞
図２９は、本発明の第７の実施の形態の動画像符号化装置の構成を示すブロック図である。本符号化装置は、変換部２９０１、量子化部２９０２、逆量子化部２９０３、逆変換部２９０４、フレームメモリ２９０５、予測ブロック候補生成部２９０６、予測ブロック選択部２９０７、可変長符号化部２９０８、減算部２９１０、加算部２９１１、予測方法候補生成部２９２０、量子化係数設定部２９３０を備える。【０２５９】
符号化装置に符号化対象ブロックが入力されると、量子化係数設定部２９３０は可変長符号化部２９０８から出力される符号化データ量をもとに、符号化対象ブロックの符号化に用いる量子化係数ＱＰを決定し、量子化部２９０２、逆量子化部２９０３、予測方法候補生成部２９２０に出力する。次に、予測ブロック候補生成部２９０６で、フレームメモリ２９０５に保存された符号化済みフレームを用いて予測ブロック候補が生成される。予測ブロック選択部２９０７では、予測ブロック候補から予測ブロックが選択される。【０２６０】
選択された予測ブロックは減算部２９１０に入力され、符号化対象ブロックと予測ブロックの差分（予測誤差）が算出される。算出された予測誤差は、変換部２９０１によりＤＣＴ変換などの変換がなされ、得られた変換係数は量子化部２９０２により量子化されることにより量子化変換係数が生成される。量子化変換係数は二分岐され、一方で可変長符号化部２９０８により符号化される。【０２６１】
量子化変換係数は、他方において逆量子化部２９０３、逆変換部２９０４を経て予測誤差が再生される。再生された予測誤差は加算部２９１１で予測ブロックに加算され局所復号ブロックが生成される。局所復号ブロックはフレームメモリ２９０５に出力され、そこで符号化済みフレームとして保存される。保存された符号化済みフレームは、後続のフレームもしくは現フレームの後続の符号化対象ブロックを符号化する場合に参照される。【０２６２】
予測ブロック候補生成部２９０６は、内部に図示しない動き探索部を備える。動き探索部は、フレームメモリ２９０５に保存されたフレームから符号化対象ブロックに似た参照ブロックを抽出する。ここでは複数の動き補償モードを用いて符号化対象ブロックに似たブロックを抽出する。本実施形態では、動き補償モードとして第１動き補償モードと第２動き補償モードの２つを用いる。第１動き補償モードと第２動き補償モードについては第５の実施の形態の説明を参照のこと。勿論、動き補償モードは２つより多くても良い。【０２６３】
予測ブロック候補生成部２９０６は、動き補償モードと、動き補償モード毎の参照ブロックの差の大きさＤＩＦＦを予測方法候補生成部２９２０に出力する。参照ブロックの差の大きさＤＩＦＦの計算方法は第１の実施形態で説明したものと同じである。【０２６４】
予測方法候補生成部２９２０は、符号化対象ブロックに関わる所定の情報（本実施形態では動き補償モード、参照ブロックの差の大きさＤＩＦＦ、量子化係数ＱＰ）に基づいて選択可能な予測方法のセットと予測セット番号を決定し、予測ブロック候補生成部２９０６に出力する。ここでは第１動き補償モードの選択可能な予測方法のセットと予測セット番号、第２動き補償モードの選択可能な予測方法のセットと予測セット番号が決定され出力される。【０２６５】
図３０は、動き補償モード、量子化係数ＱＰ及び参照ブロックの差の大きさＤＩＦＦから選択可能な予測方法のセットと予測セット番号を決定する方法の一例を示す図である。図３０は、動き補償モード、量子化係数ＱＰ及び参照ブロックの差の大きさＤＩＦＦによって、
予測セット０：選択可能な予測方法（インデックス）が予測方法予測値
予測セット１：選択可能な予測方法（インデックス）が０、３、４
予測セット３：選択可能な予測方法（インデックス）が０、１、２
というように、３種類の予測セット番号のうち一つが選択されることを示している。【０２６６】
図３０に従って決定する方法の特徴は以下のとおりである。
動き補償モードが第１動き補償モードの場合でかつ参照ブロックの差の大きさＤＩＦＦが所定の値未満の場合には選択可能な予測方法を１通り（予測セット０）とし、予測方法の符号量を削減している。所定の値は、量子化係数ＱＰが大きいほど大きくなるように変化させている。
上記以外の場合であって動き補償モードが第１動き補償モードの場合の予測方法の数は３通りであるが、その内容を量子化係数ＱＰの大きさによって変えている。量子化係数ＱＰが大きい場合には、Ｗ１：Ｗ２が１：１から離れた線形予測係数（広がりの大きい予測方法のセット、予測セット１）を用いることで符号化効率を向上させている。
上記以外の場合（動き補償モードが第２動き補償モードの場合）には予測方法の数は３通りである。【０２６７】
図３１〜図３４はそれぞれ、動き補償モード、量子化係数ＱＰ及び参照ブロックの差の大きさＤＩＦＦから選択可能な予測方法のセットと予測セット番号を決定する方法の別の一例を示す図である。【０２６８】
図３１に従って決定する方法の特徴は以下のとおりである。
動き補償モードが第１動き補償モードの場合は、量子化係数ＱＰ及び参照ブロックの差の大きさＤＩＦＦと予測セット番号との関係は、図３０のときと同じである。
動き補償モードが第２動き補償モードの場合も、第１動き補償モードの場合と同様に参照ブロックの差の大きさＤＩＦＦが所定の閾値より小さい場合には選択可能な予測方法を１通り（予測セット０）とし予測方法の符号量を削減している。ただし、第２動き補償モードの場合、量子化係数ＱＰに応じて変えられる所定の閾値は、第１動き補償モードの場合とで異なる値になっている。
上記以外の場合（動き補償モードが第２動き補償モードの場合であって参照ブロックの差の大きさＤＩＦＦが所定の閾値以上の場合）、予測方法の数は、量子化係数ＱＰによらず３通りである。【０２６９】
図３２に従って決定する方法の特徴は以下のとおりである。
参照ブロックの差の大きさＤＩＦＦが所定の閾値より小さい場合には、動き補償モードによらず、選択可能な予測方法を１通り（予測セット０）とし予測方法の符号量を削減している（図３１と同じ）。
上記以外の場合の予測方法の数は３通りであるが、この３つの内容を動き補償モードによって変えている。動き補償モードが第１動き補償モードである場合には、Ｗ１：Ｗ２が１：１から離れた線形予測係数（広がりの大きい予測方法のセット、予測セット１）を用いることで符号化効率を高めている。【０２７０】
図３３に従って決定する方法の特徴は以下のとおりである。
動き補償モードが第１動き補償モードの場合でかつ参照ブロックの差の大きさＤＩＦＦが所定の値未満の場合には選択可能な予測方法を１通り（予測セット０）とし、予測方法の符号量を削減している（図３０と同じ）。
上記以外の場合の予測方法の数は３通りであるが、この３つの内容を量子化係数ＱＰの大きさによって変えている。量子化係数ＱＰが大きい場合には、Ｗ１：Ｗ２が１：１から離れた線形予測係数（広がりの大きい予測方法のセット、予測セット１）を用いることで符号化効率を向上させている。【０２７１】
図３４に従って決定する方法の特徴は以下のとおりである。
動き補償モードが第１動き補償モードの場合でかつ参照ブロックの差の大きさＤＩＦＦが所定の値以下の場合には選択可能な予測方法を１通り（予測セット０）とし、予測方法の符号量を削減している（図３０と同じ）。
上記以外の場合で第１動き補償モードの場合の予測方法の数は３通りであるが、この３つの内容を量子化係数ＱＰの大きさによって変えている。量子化係数ＱＰが大きい場合には、Ｗ１：Ｗ２が１：１から離れた線形予測係数（広がりの大きい予測方法のセット、予測セット１）を用いることで符号化効率を向上させている。
上記以外の場合（第２動き補償モードの場合）の予測方法の数は３通りであるが、この３つの内容を参照画像の差の大きさＤＩＦＦによって変えている。参照画像の差の大きさＤＩＦＦが小さい場合には、Ｗ１：Ｗ２が１：１から離れた線形予測係数（広がりの大きい予測方法のセット、予測セット１）を用いることで符号化効率を向上させている。【０２７２】
ところで、動き補償モード、量子化係数ＱＰ、参照ブロックの差の大きさＤＩＦＦをおのおのＯ、Ｐ、Ｑ通りに分けた場合には、全体としては合計Ｏ×Ｐ×Ｑ通りの分け方が存在する。図３０〜図３４の分け方はＯ＝２、Ｐ＝２、Ｑ＝２の場合の代表的な分け方である。また、図３０〜図３４の分け方を使う場合においても、どの分け方が良いのかは、予測方法の符号化方法（ハフマン符号、算術符号、第１動き補償モードの符号化方法）などに依存するため実験的に最適なものを決定する必要がある。【０２７３】
図３０〜図３４に示される選択可能な予測方法のセット、予測セット番号、動き補償モードの関係を、スライスヘッダもしくはフレームヘッダで符号化することによりスライス単位、フレーム単位で適応的に切り替えることも可能である。【０２７４】
予測ブロック候補生成部２９０６は、動き予測モード毎に決定された選択可能な予測方法のセットに従って複数（Ｎ個）の参照ブロックから予測ブロック候補を生成する。生成された予測ブロック候補、及び、参照ブロックの生成に必要な情報（動き補償モード、動き情報、予測方法）及び、予測方法の符号化に必要な情報（予測セット番号）は予測ブロック選択部２９０７に出力される。この動作は第５の実施の形態と同じであるから説明を省略する。【０２７５】
予測ブロック選択部２９０７は、予測ブロック候補生成部２９０６で生成された複数の予測ブロック候補から最もコストの小さいブロック（予測ブロック）を選択する。コストの算出には、第１の実施の形態で説明したように、ＳＡＤ、ＳＳＤ、ＲＤコスト、Ｍコストなどが用いられる。また、複数参照画像予測を用いたかどうかを示すフラグ（参照モードフラグ）を定める。予測ブロック選択部２９０７は、予測ブロックの生成に必要な情報（動き補償モード、参照モードフラグ、動き情報、参照モードフラグが複数参照画像予測の使用を示している場合にはさらに予測方法）と、予測方法を符号化するための情報として予測セット番号を可変長符号化部２９０８に出力する。なお、予測セット番号を出力するのは複数参照画像予測の場合のみであり、それ以外の場合には出力しない。【０２７６】
可変長符号化部２９０８では、量子化変換係数に加え、量子化係数設定部２９３０から入力された量子化係数ＱＰと、予測ブロック選択部２９０７から入力された動き補償モード、参照モードフラグ、動き情報、予測方法が各々符号化される。但し動き補償モードが第１動き補償モードの場合には当該モードで省略されている情報（ダイレクトモードやスキップモードの場合には参照モードフラグと動き情報）の符号化は省略される。また、参照ブロック１、参照ブロック２を生成する場合に用いる参照フレームを、相対インデックス＝０で示されるフレームに限定する場合には参照フレームを特定する情報は必要なく、相対インデックスの符号化は省略される。なお、参照モードフラグは、第１の実施の形態等と同様に、符号化対象ブロックの他の情報と共にブロックタイプとして符号化しても良く、また、符号化対象ブロックが複数の動き補償モードを持つ場合には、動き補償モードと共に符号化しても良い。【０２７７】
可変長符号化部２９０８で行われる予測方法の符号化方法では、予測セット番号に応じて予測方法がコード番号に変換され、続いてコード番号が符号化される。符号化の詳細は第１の実施の形態と同じであるので説明を省略するが、予測方法の候補の数が２通り以上の場合には予測方法の符号化を行い、予測方法の候補の数が１通り以下の場合には予測方法の符号化は行わないようになっている。【０２７８】
第７の実施の形態の符号化装置を用いると、符号化対象ブロックの動き補償モード、参照ブロックの差の大きさＤＩＦＦ、量子化係数ＱＰの組み合わせに応じて当該ブロックの予測ブロック候補の生成に関わる選択可能な予測方法のセットを変化させることができる。これにより参照画像の差の大きさＤＩＦＦが所定の値以下（未満）である場合かつ／または量子化係数ＱＰが別の所定の値より大きい（以上の）場合かつ／または動き補償モードが第１の動き補償モード（または第１の動き補償モードのグループ）の場合に、それ以外の場合よりも選択可能な予測方法の数を小さくすることで予測方法を符号化するための符号量を減らすことができ同時に符号化に係る演算量を小さくすることができる。【０２７９】
また、動き補償モード、参照ブロックの差の大きさＤＩＦＦ、量子化係数ＱＰの組み合わせに応じて最適な予測方法のセットの内容を用いることができる。例えば、参照画像の差の大きさＤＩＦＦが所定の値以下（未満）である場合かつ／または量子化係数ＱＰが別の所定の値より大きい（以上の）場合かつ／または動き補償モードが第１の動き補償モード（または第１の動き補償モードのグループ）の場合に、それ以外の場合よりも予測方法のセットの広がりを大きくすることで同数の線形予測係数の候補を用いる場合にも符号化効率を高めることができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、符号化に係る演算量を小さくすることができる。【０２８０】
＜＜実施形態８＞＞
図３５は、本発明の第８の実施の形態の動画像復号装置の構成を示すブロック図である。本復号装置は、可変長符号復号部３５００、逆量子化部３５０３、逆変換部３５０４、フレームメモリ３５０５、予測ブロック生成部３５０６、加算部３５１１、予測方法候補生成部３５２０を備える。【０２８１】
本実施形態の復号装置は、例えば、第７の実施の形態の符号化装置で符号化された符号化データを復号できるものである。復号装置に符号化データが入力されると、可変長符号復号部３５００により量子化係数ＱＰと、動き補償モード、参照モードフラグ、動き情報（動きベクトル、相対インデックスが存在すれば相対インデックス）、量子化変換係数が復号される。量子化係数ＱＰは、逆量子化部３５０３、予測方法候補生成部３５２０に出力され、動き補償モードは、予測方法候補生成部３５２０及び予測ブロック生成部３５０６に出力され、参照モードフラグ、動き情報は予測ブロック生成部３５０６に出力され、量子化変換係数は逆量子化部３５０３に出力される。なお、参照モードフラグは、第２の実施の形態と同様に、復号対象ブロックの他の情報と共にブロックタイプとして復号しても良く、また、動き補償モードと共に復号しても良い。【０２８２】
量子化変換係数は、逆量子化部３５０３、逆変換部３５０４を経て予測誤差が復号され、加算部３５１１に出力される。予測ブロック生成部３５０６では、フレームメモリ３５０５に保存された復号済みフレームと動き補償モード、参照モードフラグ、動き情報より予測ブロックが生成され、加算部３５１１に出力される。加算部３５１１では、予測誤差と予測ブロックの和によりブロックが復号される。復号されたブロックは、一方では復号装置の外に出力され、他方ではフレームメモリ３５０５に保存される。【０２８３】
予測ブロック生成部３５０６は、内部に備える動き補償部３５６１で、可変長符号復号部３５００から入力された動き補償モード、参照モードフラグ、動き情報を用いて、動き情報に相対インデックスが存在すれば相対インデックスの示す参照フレームを選択し、選択された参照フレームから動き情報の動きベクトルの示す位置の画像（参照ブロック）を抽出する。【０２８４】
参照モードフラグが複数参照画像予測の使用を示していない場合は前方予測もしくは後方予測が用いられる場合であり参照ブロックが１個だけ抽出される。参照モードフラグが複数参照画像予測の使用を示している場合は、複数の参照ブロックが抽出される。なお、複数参照画像予測を用いない予測画像候補を選択したことを参照モードフラグで表すのではなく、予測方法の候補に特定の参照ブロックだけをそのまま使うものを用意し、その予測方法を選択することによって表しても良い。【０２８５】
複数参照画像予測でない場合（前方予測もしくは後方予測の場合）、動き補償モードに従って抽出された参照ブロックはそのまま予測ブロックとして加算部３５１１に出力される。
複数参照画像予測の場合、抽出された複数の参照ブロックは、予測ブロック生成部３５０６の内部に備える予測ブロック予測部３５６２に出力され、ここで予測ブロックが生成され、加算部３５１１に出力される。
予測ブロック予測部３５６２において複数の参照ブロックから予測ブロックを生成する方法は、第７の実施の形態と同じく前述の式２を用いる。【０２８６】
予測方法候補生成部３５２０では、復号対象ブロックに関わる所定の情報（本実施形態では動き補償モード、参照ブロックの差の大きさＤＩＦＦ、量子化係数ＱＰ）に基づいて選択可能な予測方法のセットとその番号（予測セット番号）が決定され可変長符号復号部３５００に出力される。ここでは図３０から図３４のいずれかに従って選択可能な予測方法のセットと予測セット番号を決定するがそれ以外の方法でも構わない。図３０から図３４までの決定方法を用いる効果については第７の実施の形態で説明と同じであるのでここでは省略する。【０２８７】
可変長符号復号部３５００は、選択可能な予測方法のセットと予測セット番号に従って予測方法を復号する。予測方法の復号は、コード番号の復号が行われ、続いて予測セット番号に応じてコード番号が予測方法に変換される。復号の詳細は第２の実施の形態と同じであるので説明を省略する。復号された予測方法は予測ブロック生成部３５０６に出力される。【０２８８】
図３０〜図３４に示される選択可能な予測方法のセットは、復号対象ブロックを復号する前にスライスヘッダもしくはフレームヘッダで復号することによりスライス単位、フレーム単位で適応的に切り替えることも可能である。【０２８９】
以上説明したように、本実施形態の動画像復号装置は、復号対象ブロックの動き補償モード、参照ブロックの差の大きさＤＩＦＦ及び／または量子化係数ＱＰを用いて選択可能な予測方法に関する情報を決定し、その決定された情報に従って予測方法を復号し、さらに復号された予測方法に従って複数の参照ブロックから予測ブロックを生成し、生成した予測ブロックに基づいてブロックを復号する。これにより、第７の実施の形態の符号化装置のように符号量を減らした符号化データ（すなわち、符号化対象ブロックの動き補償モード、参照ブロックの差の大きさＤＩＦＦ、量子化係数ＱＰの組み合わせに応じて当該ブロックの予測ブロック候補の生成に関わる選択可能な予測方法のセットを変化させ、参照画像の差の大きさＤＩＦＦが所定の値以下（未満）である場合かつ／または量子化係数ＱＰが別の所定の値より大きい（以上の）場合かつ／または動き補償モードが第１の動き補償モード（または第１の動き補償モードのグループ）の場合に、それ以外の場合よりも選択可能な予測方法の数を減らすことにより、予測方法を符号化するための符号量を減らした符号化データ）を復号することができる。換言すれば、本復号装置で復号できる符号化データの符号量を減らすことができる。また、選択可能な予測方法の数を減らす場合には、最適な予測ブロックを選択する場合に計算すべきコストの数が減ることになるので、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。【０２９０】
また、本実施形態の動画像復号装置は、動き補償モード、参照ブロックの差の大きさＤＩＦＦ、量子化係数ＱＰの組み合わせに応じて最適な予測方法のセットの内容を用いるようにしている。そのため、第７の実施形態の動画像符号化装置のように本実施形態の動画像復号装置と同様に選択可能な予測方法のセットを定め高効率で符号化したデータ（例えば、参照画像の差の大きさＤＩＦＦが所定の値以下（未満）である場合かつ／または量子化係数ＱＰが別の所定の値より大きい（以上の）場合かつ／または動き補償モードが第１の動き補償モード（または第１の動き補償モードのグループ）の場合に、それ以外の場合よりも予測方法のセットの広がりを大きくすることで同数の線形予測係数の候補を用いる場合にも符号化効率を高めるようにして符号化したデータ）を、本実施形態の動画像復号装置は復号することができる。また、このように選択可能な予測方法のセットを定める場合には、より少ない選択可能な予測方法で同じ符号化効率を達成することができるため、本復号装置で復号できる符号化データの符号化に係る演算量を小さくすることができる。
【産業上の利用可能性】
【０２９１】
本発明は、動画像符号化装置及び動画像復号装置として用いることが出来る。
【図１】
2009041215.tif 000017
【図２】
2009041215.tif 000018
【図３】
2009041215.tif 000019
【図４】
2009041215.tif 000020
【図５】
2009041215.tif 000021
【図６】
2009041215.tif 000022
【図７】
2009041215.tif 000023
【図８】
2009041215.tif 000024
【図９】
2009041215.tif 000025
【図１０】
2009041215.tif 000026
【図１１】
2009041215.tif 000027
【図１２】
2009041215.tif 000028
【図１３】
2009041215.tif 000029
【図１４】
2009041215.tif 000030
【図１５】
2009041215.tif 000031
【図１６】
2009041215.tif 000032
【図１７】
2009041215.tif 000033
【図１８】
2009041215.tif 000034
【図１９】
2009041215.tif 000035
【図２０】
2009041215.tif 000036
【図２１】
2009041215.tif 000037
【図２２】
2009041215.tif 000038
【図２３】
2009041215.tif 000039
【図２４】
2009041215.tif 000040
【図２５】
2009041215.tif 000041
【図２６】
2009041215.tif 000042
【図２７】
2009041215.tif 000043
【図２８】
2009041215.tif 000044
【図２９】
2009041215.tif 000045
【図３０】
2009041215.tif 000046
【図３１】
2009041215.tif 000047
【図３２】
2009041215.tif 000048
【図３３】
2009041215.tif 000049
【図３４】
2009041215.tif 000050
【図３５】
2009041215.tif 000051
【図３６】
2009041215.tif 000052
【図３７】
2009041215.tif 000053
【手続補正書】
【提出日】平成22年3月15日(2010.3.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の参照画像を用いて生成された復号対象ブロックの予測画像に、復号対象ブロックの差分値を加算して復号対象ブロックを復号する動画像復号装置であって、
予測画像生成部と、可変長符号復号部を備え、
前記可変長符号復号部は、符号化データを復号して、複数の参照画像を用いて予測画像を生成する方法を定める予測方法を特定し、
前記予測画像生成部は、前記可変長符号復号部が復号した前記予測方法に基づいて予測画像を生成することを特徴とする動画像復号装置。
【請求項２】
復号対象ブロックに関わる所定の情報に基づいて、前記予測方法の候補を生成する予測方法候補生成部を備え、
前記可変長符号復号部は、予測方法の候補の数が２通り以上の場合に、前記符号化データを復号して前記予測方法候補生成部で生成した前記予測方法の候補から予測方法を特定することを特徴とする請求項１記載の動画像復号装置。
【請求項３】
前記所定の情報が、複数の参照画像間の差の大きさ、量子化係数、動き補償モードのいずれかまたは複数の参照画像間の差の大きさ、量子化係数、動き補償モードの組み合わせを含むことを特徴とする請求項２記載の動画像復号装置。
【請求項４】
前記複数の参照画像間の差の大きさが所定の値より小さい場合に、前記参照画像間の差の大きさが前記所定の値より大きい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴とする請求項３記載の動画像復号装置。
【請求項５】
前記量子化係数が所定の値より大きい場合に、前記量子化係数が前記所定より小さい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴とする請求項３記載の動画像復号装置。
【請求項６】
前記動き補償モードが複数のモードであり、モードの性質に応じて、当該モードの場合についての前記予測方法の候補の数及び／または前記予測方法の候補の予測の広がりが異なることを特徴とする請求項３記載の動画像復号装置。
【請求項７】
前記参照画像間の差の大きさを判定する前記所定の値を、量子化係数が大きくなるほど大きくすることを特徴とする請求項４記載の動画像復号装置。
【請求項８】
復号対象ブロックの予測方法を予測する予測方法予測部を備え、前記予測方法予測部は、復号対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離に基づいて決定される予測方法を用いて、復号対象ブロックの予測方法の予測値を算出することを特徴とする請求項２記載の動画像復号装置。
【請求項９】
符号化済みのフレームから抽出した複数の参照画像を用いて符号化対象ブロックの予測画像を生成して符号化対象ブロックとの差分値を符号化する画面間予測符号化を行う動画像符号化装置であって、
予測方法候補生成部と、予測画像生成部と、可変長符号化部を備え、
前記予測方法候補生成部は、符号化対象ブロックに関わる所定の情報に基づいて、複数の参照画像を用いて予測画像を生成する方法を定める予測方法の候補を生成し、
前記予測画像生成部は、前記複数の参照画像を用いて前記予測方法候補生成部が生成した前記予測方法の候補に基づいて前記符号化対象ブロックの予測画像を生成し、
前記可変長符号化部は、前記予測画像生成部が生成した前記予測画像を用いて画面間予測符号化を行う場合、前記予測方法候補生成部が生成した予測方法の候補の数が２通り以上の場合に、前記予測画像の生成に使用した前記予測方法を符号化することを特徴とする動画像符号化装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
上記課題を解決するために、本発明の第１の技術手段は、複数の参照画像を用いて生成された復号対象ブロックの予測画像に、復号対象ブロックの差分値を加算して復号対象ブロックを復号する動画像復号装置であって、予測画像生成部と、可変長符号復号部を備え、前記可変長符号復号部は、符号化データを復号して、複数の参照画像を用いて予測画像を生成する方法を定める予測方法を特定し、前記予測画像生成部は、前記可変長符号復号部が復号した前記予測方法に基づいて予測画像を生成することを特徴としたものである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
第２の技術手段は、第１の技術手段において、復号対象ブロックに関わる所定の情報に基づいて、前記予測方法の候補を生成する予測方法候補生成部を備え、前記可変長符号復号部は、予測方法の候補の数が２通り以上の場合に、前記符号化データを復号して前記予測方法候補生成部で生成した前記予測方法の候補から予測方法を特定することを特徴としたものである。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
第３の技術手段は、第２の技術手段において、前記所定の情報が、複数の参照画像間の差の大きさ、量子化係数、動き補償モードのいずれかまたは複数の参照画像間の差の大きさ、量子化係数、動き補償モードの組み合わせを含むことを特徴としたものである。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
第４の技術手段は、第３の技術手段において、前記複数の参照画像間の差の大きさが所定の値より小さい場合に、前記参照画像間の差の大きさが前記所定の値より大きい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴としたものである。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
第５の技術手段は、第３の技術手段において、前記量子化係数が所定の値より大きい場合に、前記量子化係数が前記所定より小さい場合よりも、前記予測方法の候補の数を小さくし、かつ／または前記予測方法の候補の予測の広がりを大きくすることを特徴としたものである。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
第６の技術手段は、第３の技術手段において、前記動き補償モードが複数のモードであり、モードの性質に応じて、当該モードの場合についての前記予測方法の候補の数及び／または前記予測方法の候補の予測の広がりが異なることを特徴としたものである。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
第７の技術手段は、第４の技術手段において、前記参照画像間の差の大きさを判定する前記所定の値を、量子化係数が大きくなるほど大きくすることを特徴としたものである。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
第８の技術手段は、第２の技術手段において、復号対象ブロックの予測方法を予測する予測方法予測部を備え、前記予測方法予測部は、復号対象ブロックの属するフレームと参照ブロックの属するフレームの時間的距離に基づいて決定される予測方法を用いて、復号対象ブロックの予測方法の予測値を算出することを特徴としたものである。
第９の技術手段は、符号化済みのフレームから抽出した複数の参照画像を用いて符号化対象ブロックの予測画像を生成して符号化対象ブロックとの差分値を符号化する画面間予測符号化を行う動画像符号化装置であって、予測方法候補生成部と、予測画像生成部と、可変長符号化部を備え、前記予測方法候補生成部は、符号化対象ブロックに関わる所定の情報に基づいて、複数の参照画像を用いて予測画像を生成する方法を定める予測方法の候補を生成し、前記予測画像生成部は、前記複数の参照画像を用いて前記予測方法候補生成部が生成した前記予測方法の候補に基づいて前記符号化対象ブロックの予測画像を生成し、前記可変長符号化部は、前記予測画像生成部が生成した前記予測画像を用いて画面間予測符号化を行う場合、前記予測方法候補生成部が生成した予測方法の候補の数が２通り以上の場合に、前記予測画像の生成に使用した前記予測方法を符号化することを特徴としたものである。
【国際調査報告】
2009041215.tif 000054
2009041215.tif 000055