(57)【要約】【課題】ダイレクト予測モードの参照用データを記憶する記憶手段の記憶可能容量を削減する符号化処理装置を提供する。【解決手段】  画像信号に符号化処理を施して出力する符号化処理装置１であって、ダイレクト予測モードで現在符号化対象の画像領域を符号化するための情報を記憶するパラメータ保存用メモリ１９と、ダイレクト予測モードで画像領域の動き情報を導出するＭＶ導出部３７と、符号化処理対象の画像領域を符号化する予測モードを選択するＭＤ処理部３４と、ＭＤ処理部３４により選択された予測モードで符号化処理対象の画像領域に施された符号化情報から、符号化処理が施されていない画像領域の動き情報をダイレクト予測モードで導出するのに必要な情報を判定し、必要と判定した情報のみをパラメータ保存用メモリ１９に記憶させるマクロブロック情報判定部３５とを備える。【選択図】  図３
2009055519.tif 000002
【特許請求の範囲】
【請求項１】
画像信号に対して、所定の符号化方式に準拠した予測モード及び画像領域単位で符号化処理を施して出力する符号化処理装置において、
過去に符号化処理を施した画像領域の動き情報を参照して符号化処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在符号化対象の画像領域を符号化するための情報を記憶する記憶手段と、
上記記憶手段に記憶されている情報を参照して、上記ダイレクト予測モードで上記画像領域の動き情報を導出する導出手段と、
上記導出手段が導出した動き情報に応じて、上記符号化処理対象の画像領域を符号化する予測モードを選択する選択手段と、
上記選択手段により選択された予測モードで上記符号化処理対象の画像領域に施された符号化情報から、上記符号化処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報を判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定手段とを備える符号化処理装置。
【請求項２】
上記ダイレクト予測モードで、上記符号化処理対象の画像領域の動き情報をそのピクチャ内において上記符号化処理が施された画像領域の動き情報のみを参照して導出する予測モードを用いる制約条件を設定する設定手段をさらに備え、
上記判定手段は、上記選択手段により選択された予測モードで上記符号化処理対象の画像領域に施された符号化情報から、上記設定手段により設定される制約条件に応じて、上記符号化処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報を判定し、必要と判定した情報のみを上記記憶手段に記憶させることを特徴とする請求項１記載の符号化処理装置。
【請求項３】
上記画像領域の画サイズを所定の画素数以上とする制約条件を設定する設定手段をさらに備え、
上記判定手段は、上記選択手段により選択された予測モードで上記符号化処理対象の画像領域に施された符号化情報から、上記設定手段により設定される制約条件に応じて、上記符号化処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報を判定し、必要と判定した情報のみを上記記憶手段に記憶させることを特徴とする請求項１記載の符号化処理装置。
【請求項４】
上記符号化方式は、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ規格に準拠した方式であることを特徴とする請求項１記載の符号化処理装置。
【請求項５】
画像信号に対して、所定の符号化方式に準拠した予測モード及び所定の画像領域単位で符号化処理を施して出力する符号化処理方法において、
過去に符号化処理を施した画像領域の動き情報を参照して符号化処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在符号化対象の画像領域を符号化するための情報を記憶する記憶手段に記憶されている情報を参照して、該ダイレクト予測モードで上記画像領域の動き情報を導出する導出工程と、
上記導出工程で導出した動き情報に応じて、上記符号化処理対象の画像領域を符号化する予測モードを選択する選択工程と、
上記選択工程で選択した予測モードで上記符号化処理対象の画像領域に施された符号化情報から、上記符号化処理が施されていない画像領域の動き情報を上記導出工程で導出するのに必要な情報を判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定工程とからなる符号化処理方法。
【請求項６】
画像信号に対して所定の符号化方式に準拠した予測モード及び画像領域単位で符号化処理が施された符号化データを復号する復号処理装置において、
過去に復号処理を施した画像領域の動き情報を参照して復号処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在復号対象の画像領域を復号するための情報を記憶する記憶手段と、
上記記憶手段に記憶されている情報を参照して、上記ダイレクト予測モードで上記画像領域の動き情報を導出する導出手段と、
上記導出手段により導出された上記画像領域の動き情報から、上記復号処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報であるかを判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定手段とを備える復号処理装置。
【請求項７】
上記符号化データには、上記ダイレクト予測モードで、上記復号処理対象の画像領域の動き情報をそのピクチャ内において上記復号処理が施された画像領域の動き情報のみを用いて予測するモードを用いる制約条件が設定されており、
上記判定手段は、上記制約条件に応じて、上記導出手段により導出された上記画像領域の動き情報から、上記復号処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報であるかを判定し、必要と判定した情報のみを上記記憶手段に記憶させることを特徴とする請求項６記載の復号処理装置。
【請求項８】
上記符号化データには、上記画像領域の画サイズを所定の画素数以上とする制約条件が設定されており、
上記判定手段は、上記制約条件に応じて、上記導出手段により導出された上記画像領域の動き情報から、上記復号処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報であるかを判定し、必要と判定した情報のみを上記記憶手段に記憶させることを特徴とする請求項６記載の復号処理装置。
【請求項９】
上記符号化方式は、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ規格に準拠した方式であることを特徴とする請求項６記載の復号処理装置。
【請求項１０】
画像信号に対して所定の符号化方式に準拠した予測モード及び画像領域単位で符号化処理が施された符号化データを復号する復号処理方法において、
過去に復号処理を施した画像領域の動き情報を参照して復号処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在復号対象の画像領域を復号するための情報を記憶する記憶手段に記憶されている情報を参照して、該ダイレクト予測モードで上記画像領域の動き情報を導出する導出工程と、
上記導出工程により導出された上記画像領域の動き情報から、上記復号処理が施されていない画像領域の動き情報を導出するのに必要な情報であるかを判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定工程とからなる復号処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像信号に符号化処理を施して出力する符号化処理装置及び符号化処理方法、並びに、符号化された画像信号を復号して出力する復号処理装置及び復号処理方法に関するものである。
【背景技術】
【０００２】
ＭＰＥＧ２やＭＰＥＧ４などのような従来の画像符号化方式に比べて、２倍近くの高い符号化効率を実現する方式として、Ｈ．２６４／ＭＰＥＧ４  ＡＶＣ（以下、ＡＶＣという。）が規格化されている。ＡＶＣ規格は、直交変換処理と動き補償処理を用いて画像信号を符号化するという点で、上述した従来の画像符号化方式と同様の処理を行っている。しかしながら、ＡＶＣ規格は、従来の画像符号化方式に対して、符号化処理を構成する各要素の符号化ツールの自由度が高いため、相対的に高い符号化効率を実現している（特許文献１）。
【０００３】
このようなＡＶＣ規格に準拠した符号化処理は、例えば図２０に示すような符号化処理装置によって実現される。
【０００４】
この符号化処理装置８は、差分処理部８１と、直交変換部８２と、量子化部８３と、逆量子化部８４と、逆直交変換部８５と、加算処理部８６と、画素保存用メモリ８７と、ＭＥ／ＭＤ処理部８８と、パラメータ保存用メモリ８９と、イントラ予測部９０と、インター予測部９１と、符号化部９２とを備える。
【０００５】
差分処理部８１は、入力した画素と、後述するイントラ予測部９０又はインター予測部９１で生成された予測画素とに対して差分処理を施し、差分画素を直交変換部８２に供給する。
【０００６】
直交変換部８２は、差分処理部８１から供給される差分画素に対して、複数の画素からなるマクロブロック単位で直交変換処理を施す。そして、直交変換部８２は、直交変換処理を施したマクロブロック内の直交変換係数を量子化部８３に供給する。
【０００７】
量子化部８３は、量子化パラメータに従って、直交変換部８２から供給される各マクロブロック内の直交変換係数を量子化して符号化部９２に供給する。そして、符号化部９２では、量子化部８３から供給される量子化された直交変換係数に可変長符号化処理などを施したビットストリームを出力する。なお、ＡＶＣ規格では、可変長符号化処理として、ＣＡＶＬＣ（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）、又は、ＣＡＢＡＣ（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）などを用いて符号化処理を行うように規格化されている。
【０００８】
また、量子化部８３は、量子化した直交変換係数を符号化部９２に供給するとともに、逆量子化部８４、ＭＥ／ＭＤ処理部８８、及び、パラメータ保存用メモリ８９にも供給する。
【０００９】
逆量子化部８４は、量子化部８３で用いている量子化パラメータに従って、量子化された直交変換係数を逆量子化して逆直交変換部８５に供給する。
【００１０】
逆直交変換部８５は、逆量子化部８４から供給されるマクロブロック内の各直交変換係数を、このマクロブロックを構成する差分画素に変換して加算処理部８６に供給する。
【００１１】
加算処理部８６は、逆直交変換部８５から供給される差分画素と、後述するイントラ予測部９０又はインター予測部９１から供給される予測画素とに対して加算処理を施して参照画素を生成して画素保存用メモリ８７に供給する。
【００１２】
画素保存用メモリ８７は、加算処理部８６から供給される差分画素をピクチャ単位で保存する。現在符号化対象のピクチャをＰ（Ｎ）として（Ｎは自然数。）、Ｍ（Ｍは自然数。）ピクチャ前に符号化されているピクチャをＰ（Ｎ−Ｍ）とすると、画素保存用メモリ８７は、既にＰ（Ｎ−１）、Ｐ（Ｎ−２）、・・・、Ｐ（Ｎ−Ｍ）に対応する参照画素を保存している。画素保存用メモリ８７は、このような参照画素が後述するＭＥ／ＭＤ処理部８８及びインター予測部９１において用いられるため、このような参照画素を一定期間保存する。
【００１３】
ＭＥ／ＭＤ処理部８８は、現在符号化処理中のマクロブロックに対して、具体的には後述するように、パラメータ保存用メモリ８９に記憶されている符号化情報を参照して、動き予測（ＭＥ：Ｍｏｔｉｏｎ  Ｅｓｔｉｍａｔｉｏｎ）処理及びモード選択（ＭＤ：Ｍｏｄｅ  Ｄｉｃｉｓｉｏｎ）処理を行う。そして、ＭＥ／ＭＤ処理部８８は、ＭＥ処理及びＭＤ処理の処理結果に応じて、現在処理中のマクロブロックに最適な予測モードを選択する。さらに、ＭＥ／ＭＤ処理部８８は、イントラ予測を最適な予測モードとして選択したとき、イントラ予測に必要な情報をイントラ予測部９０に供給し、インター予測を最適な予測モードとして選択したとき、インター予測に必要な情報をインター予測部９１に供給する。
【００１４】
パラメータ保存用メモリ８９は、量子化部８３から供給される情報のうち、ＭＥ／ＭＤ処理部８８が後述するスキップ／ダイレクトモードに従って現在符号化対象のマクロブロックを符号化するために必要な、過去に符号化したピクチャＰ（Ｎ−１）、Ｐ（Ｎ−２）、・・・、Ｐ（Ｎ−Ｍ）に関する情報を記憶する。
【００１５】
イントラ予測部９０は、ＭＥ／ＭＤ処理部８８による選択結果に従って、現在符号化対象のマクロブロックが存在するピクチャ内の符号化済みの画素から予測画素を生成して差分処理部８１及び加算処理部８６に供給する。
【００１６】
インター予測部９１は、ＭＥ／ＭＤ処理部８８による選択結果に従って、画素保存用メモリ８７に記憶されている参照画素を用いて予測画素を生成して差分処理部８１及び加算処理部８６に供給する。
【００１７】
次に、ＭＥ／ＭＤ処理部８８の具体的な構成とその動作について図２１を参照して説明する。
【００１８】
ＭＥ／ＭＤ処理部８８は、イントラ予測モードの中から最適なモードを選択するイントラサーチ処理部１０１と、パラメータ保存用メモリ８９に記憶されている情報を参照してスキップ／ダイレクト予測モードに従った動き情報を求めるスキップ／ダイレクトサーチ処理部１０２と、その他の予測モードに関する最適なモードと動き情報を求めるＬ０／Ｌ１／Ｂｉサーチ処理部１０３と、各サーチ処理部で選択されたモードの中から最適なモードを選択するＭＤ処理部１０４とを備える。
【００１９】
イントラサーチ処理部１０１は、符号化対象の入力画素の画像信号に応じて、イントラ予測モードの中から最適なモードを選択して、選択したモードに対応した符号化処理に関する情報をＭＤ処理部１０４に供給する。
【００２０】
スキップ／ダイレクトサーチ処理部１０２は、スライスタイプがＢスライスを構成するマクロブロックに対して、後述するスキップ／ダイレクト予測モードのうち、空間ダイレクトモードに従った動きベクトル及び時間ダイレクトモードに従った動きベクトルを導出するＭＶ導出部１０５と、ＭＶ導出部１０５で導出される動きベクトルに応じて最適な予測モードを選択する後処理部１０６とを備える。
【００２１】
ＭＶ導出部１０５は、パラメータ保存用メモリ８９に記憶されている情報を参照して後述するように空間ダイレクトモードに従った動きベクトル及び時間ダイレクトモードに従った動きベクトルを導出して後処理部１０６に供給する。
【００２２】
後処理部１０６は、ＭＶ導出部１０５で導出した動きベクトルを用いて、スキップ／ダイレクト予測モードから最適なモードを選択して、選択したモードに対応した符号化処理に関する情報をＭＤ処理部１０４に供給する。
【００２３】
Ｌ０／Ｌ１／Ｂｉサーチ処理部１０３は、表示順序で符号化対象ピクチャに対して前方に位置するピクチャを用いた予測（Ｌ０予測）処理、及び、表示順序で符号化対象ピクチャに対して後方に位置するピクチャを用いた予測（Ｌ０予測）処理、及び、表示順序で符号化対象ピクチャに対して前方及び後方の双方に位置するピクチャを用いた予測（Ｂｉ予測）処理の中から最適なモードを選択して、選択したモードに対応した符号化処理に関する情報をＭＤ処理部１０４に供給する。
【００２４】
以下では、上述したＭＥ／ＭＤ処理部８８が備える処理部のうち、スキップ／ダイレクト予測モードに従った動きベクトルを導出するＭＶ導出部１０５の処理に注目して説明する。
【００２５】
ＭＶ導出部１０５は、空間ダイレクトモードと時間ダイレクトモードとで異なる処理により動きベクトルを導出する。
【００２６】
まず、空間ダイレクトモードに従った動きベクトルの導出処理について、図２２に示すようなフローチャートに従って説明する。
【００２７】
ステップＳ１０１において、ＭＶ導出部１０５は、符号化対象のマクロブロックに隣接するマクロブロックの符号化情報から、Ｌ０予測及びＬ１予測で符号化対象のマクロブロックを符号化するための参照ピクチャを示す参照ピクチャ番号ｒｅｆＩｄｘＬ０／ｒｅｆＩｄｘＬ１と、ダイレクトモードの動きベクトルがゼロであるかを示すフラグｄｉｒｅｃｔＺｅｒｏＰｒｅｄｉｃｔｉｏｎＦｌａｇを導出してステップＳ１０２に進む。
【００２８】
ステップＳ１０２において、ＭＶ導出部１０５は、符号化対象のマクロブロック内の８×８ブロックの位置を示すｍｂＰａｒｔｌｄｘとサブマクロブロック内の４×４画素ブロックの位置を示すｓｕｂＭｂＰａｒｔｌｄｘを入力して、アンカーブロックの動きベクトルｍｖＣｏｌと、アンカーブロックの参照ピクチャ番号ｒｅｆＩｄｘＣｏｌとを導出してステップＳ１０３に進む。ここで、アンカーピクチャは、Ｌ１予測で最も小さい参照ピクチャ番号のピクチャである。そして、アンカーブロックとは、符号化対象ブロックと同じ空間位置にあるアンカーピクチャのブロックである。通常、表示順序で符号化対象ピクチャに対して後方の一番近くに位置する参照ピクチャが、アンカーピクチャとして選ばれる。
【００２９】
ステップＳ１０３において、ＭＶ導出部１０５は、ステップＳ１０２で導出したアンカーピクチャに関する情報が、次の第１から第３の条件を全て満たすかを判断する。
【００３０】
すなわち、ＭＶ導出部１０５は、第１の条件として、アンカーベクトルの動きベクトルの水平方向及び垂直方向の大きさをそれぞれ示すｍｖＣｏｌ［０］及びｍｖＣｏｌ［１］の値が共に±１以下であるかを判断する。
【００３１】
また、ＭＶ導出部１０５は、第２の条件として、アンカーブロックの参照ピクチャの参照番号ｒｅｆＩｄｘＣｏｌが０であるか、すなわち、アンカーピクチャが符号化対象ピクチャに対して表示順序で後方の一番近くに位置する参照ピクチャであるかを判断する。
【００３２】
また、ＭＶ導出部１０５は、第３の条件として、Ｌ１予測の最小の参照番号のピクチャタイプＲｅｆＰｉｃＬｉｓｔ１［０］が短時間参照ピクチャｓｈｏｒｔ−ｔｅｒｍ  ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅであるかを判断する。
【００３３】
ＭＶ導出部１０５は、上述した第１から第３の条件を全て満たすかを判断して、条件を全て満たすときにはステップＳ１０４に進み、条件を全て満たすことにならないときにはステップＳ１０５に進む。
【００３４】
ステップＳ１０４において、ＭＶ導出部１０５は、フラグＣｏｌＺｅｒｏＦｌａｇを１に設定してステップＳ１０６に進む。
【００３５】
ステップＳ１０５において、ＭＶ導出部１０５は、フラグＣｏｌＺｅｒｏＦｌａｇを０に設定してステップＳ１０６に進む。
【００３６】
ステップＳ１０６において、ＭＶ導出部１０５は、符号化処理対象のマクロブロックの動きベクトルの水平方向、及び垂直方向を示すベクトルＸを導出して、ステップＳ１０７に進む。
【００３７】
ステップＳ１０７において、ＭＶ導出部１０５は、隣接するマクロブロックの動き情報ｒｅｆＩｄｘＬ０、ｒｅｆＩｄｘＬ１、ｄｉｒｅｃｔＺｅｒｏＰｒｅｄｉｃｔｉｏｎＦｌａｇと、ステップＳ１０６において設定したフラグＣｏｌＺｅｒｏＦｌａｇから条件判定を行って、所定の条件を満たすときステップＳ１０８に進み、満たさないときステップＳ１０９に進む。
【００３８】
ステップＳ１０８において、ＭＶ導出部１０５は、空間ダイレクトモードに従った符号化対象マクロブロックの動きベクトルｍｖＬＸの水平垂直方向の値を共に０に設定して終了する。
【００３９】
ステップＳ１０９において、ＭＶ導出部１０５は、隣接するマクロブロックの動き情報を用いて、空間ダイレクトモードに従った符号化対象マクロブロックの動きベクトルｍｖＬＸを導出して終了する。
【００４０】
また、ステップＳ１０２におけるアンカーブロックの動き情報を導出する処理工程は、図２３に示すようなフローチャートに従い、ＭＶ導出部１０５によって行われる。
【００４１】
ステップＳ２０１において、ＭＶ導出部１０５は、アンカーピクチャに関する情報を導出して、ステップＳ２０２に進む。
【００４２】
ステップＳ２０２において、ＭＶ導出部１０５は、ステップＳ２０２で導出した情報から、次のようなアンカーブロックに関する情報を、パラメータ保存用メモリ１９に記憶された情報を参照することによって導出する。
【００４３】
すなわち、ＭＶ導出部１０５は、アンカーブロックのマクロブロックアドレスｍｂＡｄｄｒＣｏｌと、アンカーブロックのマクロブロック内の８×８画素ブロックの位置を示すブロック番号ｍｂＰａｒｔｌｄｘＣｏｌと、アンカーブロックのサブマクロブロック内の４×４画素ブロックの位置を示すブロック番号ｓｕｂＭｂＰａｒｔｌｄｘＣｏｌと、アンカーブロックのＬ０予測の予測モードを示すフラグｐｒｅｄＦｌａｇＬ０Ｃｏｌと、アンカーブロックのＬ１予測の予測モードを示すフラグｐｒｅｄＦｌａｇＬ１Ｃｏｌと、アンカーブロックのマクロブロックタイプｍｂ＿ｔｙｐｅと、アンカーブロックのＬ０予測の動きベクトルＭｖＬ０［ｍｂＰａｒｔＩｄｘＣｏｌ］［ｓｕｂＭｂＰａｒｔＩｄｘＣｏｌ］と、アンカーブロックのＬ０予測の参照ピクチャ番号ＲｅｆＩｄｘＬ０［ｍｂＰａｒｔＩｄｘＣｏｌ］と、アンカーブロックのＬ１予測の動きベクトルＭｖＬ０［ｍｂＰａｒｔＩｄｘＣｏｌ］［ｓｕｂＭｂＰａｒｔＩｄｘＣｏｌ］と、アンカーブロックのＬ１予測の参照ピクチャ番号ＲｅｆＩｄｘＬ０［ｍｂＰａｒｔＩｄｘＣｏｌ］と、アンカーブロックの動きベクトルと符号化対象のマクロブロックの動きベクトルの垂直成分の比ｖｅｒｔＭｖＳｃａｌｅとを導出して、ステップＳ２０３に進む。
【００４４】
ステップＳ２０３において、ＭＶ導出部１０５は、ステップＳ２０２で導出したアンカーブロックのマクロブロックタイプとその予測モードにより、アンカーブロックの予測モードを判定して、この判定結果に応じてステップＳ２０４又はステップＳ２０５に進む。
【００４５】
ステップＳ２０４において、ＭＶ導出部１０５は、アンカーベクトルの動きベクトルｍｖＣｏｌの水平及び垂直成分を共に０に設定するとともに、アンカーブロックの参照ピクチャ番号ｒｅｆｄｘＣｏｌを−１に設定してステップＳ１０３に進む。
【００４６】
ステップＳ２０５において、ＭＶ導出部１０５は、アンカーブロックのＬ０予測の予測モードを示すフラグｐｒｅｄＦｌａｇＬ０Ｃｏｌの値が１であるかを判断して、１であるときにはステップＳ２０６に進み、１でないときにはステップＳ２０７に進む。
【００４７】
ステップＳ２０６において、ＭＶ導出部１０５は、アンカーブロックの動きベクトルｍｖＣｏｌを、アンカーブロックのＬ０予測の動きベクトルＭｖＬ０［ｍｂＰａｒｔＩｄｘＣｏｌ］［ｓｕｂＭｂＰａｒｔＩｄｘＣｏｌ］に設定し、アンカーブロックの参照ピクチャ番号ｒｅｆｄｘＣｏｌを、アンカーブロックのＬ０予測の参照ピクチャ番号ＲｅｆＩｄｘＬ０［ｍｂＰａｒｔＩｄｘＣｏｌ］に設定して、ステップＳ１０３に進む。
【００４８】
ステップＳ２０７において、ＭＶ導出部１０５は、アンカーブロックの動きベクトルｍｖＣｏｌを、アンカーブロックのＬ１予測の動きベクトルＭｖＬ１［ｍｂＰａｒｔＩｄｘＣｏｌ］［ｓｕｂＭｂＰａｒｔＩｄｘＣｏｌ］に設定し、アンカーブロックの参照ピクチャ番号ｒｅｆｄｘＣｏｌを、アンカーブロックのＬ１予測の参照ピクチャ番号ＲｅｆＩｄｘＬ１［ｍｂＰａｒｔＩｄｘＣｏｌ］に設定して、ステップＳ１０３に進む。
【００４９】
次に、時間ダイレクトモードに従った動きベクトルの導出処理について、図２４に示すフローチャートに従って説明する。
【００５０】
ステップＳ３０１において、ＭＶ導出部１０５は、符号化処理対象のマクロブロック内の８×８画素ブロックの位置を示すｍｂＰｒｔｌｄｘとサブマクロブロック内の４×４画素ブロックの位置を示すｓｕｂＰａｒｔｌｄｘとを入力して、アンカーブロックの情報として、アンカーピクチャの情報ｃｏｌＰｉｃと、アンカーブロックのマクロブロックアドレスｍｂＡｄｄｒＣｏｌと、アンカーブロックの動きベクトルｍｖＣｏｌと、アンカーブロックの参照ピクチャ番号ｒｅｆＩｄｘＣｏｌと、アンカーブロックの動きベクトルと符号化処理対象のマクロブロックの動きベクトルの垂直成分の比率ｖｅｒｔＭｖＳｃａｌｅとを導出して、ステップＳ３０２に進む。
【００５１】
ステップＳ３０２において、ＭＶ導出部１０５は、ステップＳ３０１で導出した情報から、Ｌ０予測の参照ピクチャ番号ｒｅｆＩｄｘＬ０と、Ｌ１予測の参照ピクチャ番号ｒｅｆＩｄｘＬ１を導出してステップＳ３０３に進む。
【００５２】
ステップＳ３０３において、ＭＶ導出部１０５は、アンカーブロックの動きベクトルｍｖＣｏｌを修正してステップＳ３０４に進む。
【００５３】
ステップＳ３０４において、ＭＶ導出部１０５は、現在符号化対象のピクチャＣｕｒｒＰｉｃ０ｒＦｉｅｌｄと、Ｌ０予測の参照ピクチャの最小番号のピクチャｐｉｃ０と、Ｌ１予測の参照ピクチャの最小番号のピクチャｐｉｃ１とを導出してステップＳ３０５に進む。
【００５４】
ステップＳ３０５において、ＭＶ導出部１０５は、ステップＳ３０４で導出したｃｕｒｒＰｉｃ０ｒＦｉｅｌｄ、ｐｉｃ０、ｐｉｃ１の表示順の関係から、アンカーブロックのＬ０予測の動きベクトルｍｖＬ０と、アンカーブロックのＬ１予測の動きベクトルｍｖＬ１とを導出する。
【００５５】
以上のようにしてＭＶ導出部１０５は、空間ダイレクトモード及び時間ダイレクトモードに従ってそれぞれ動きベクトルを導出するが、このような動きベクトルを導出するために過去に符号化処理がなされているピクチャであるＰ（ｎ−ｍ）、・・・、Ｐ（Ｎ−２）、Ｐ（Ｎ−１）のうちいずれかの符号化情報が必要になる。そのため、一定期間パラメータ保存用メモリ８９には、参照画像となりうる期間、この期間に対応するピクチャの符号化処理に関する情報を記憶しておく必要がある。
【００５６】
例えば、ＡＶＣ規格では、最大３２ピクチャ分の符号化情報をパラメータ保存用メモリ８９に記憶しておく必要がある。したがって、パラメータ保存用メモリ８９は、下記式で示されるデータ量を一時的に所定のメモリ領域に記憶する必要がある。
【００５７】
（ダイレクト予測モードに係る参照マクロブロック単位の符号化情報）×（１ピクチャを構成するマクロブロック数）×（参照ピクチャの最大数）
【００５８】
よって、パラメータ保存用メモリ８９を符号化処理装置８内部に設ける場合には、コスト高なＳＲＡＭを装置内部に設ける必要がある。また、パラメータ保存用メモリ８９を符号化処理装置８外部に設ける場合には、比較的大容量の外部メモリが必要であり、符号化処理装置８とこの外部メモリとでデータ通信を行うバンド帯域を広くしておく必要がある。
【００５９】
例えば、ダイレクト予測モードに係る参照マクロブロック単位の符号化情報は、例えば各パラメータの符号量をバイトアラインしたとき１４１［Ｂｙｔｅ］となる。よって、１９２０×１０８０の画サイズの画像信号に符号化処理を施す場合には、１ピクチャが８１６０個のマクロブロックから構成されるため、１１０９７６０（＝１４１［Ｂｙｔｅ］×８１６０）［Ｂｙｔｅ］つまり約１．１［ＭＢｙｔｅ］のメモリ領域がパラメータ保存用メモリ８９に必要となる。さらに、パラメータ保存用メモリ８９を符号化処理装置８の外部に設ける構成として、符号化対象の画像信号のフレームレートが３０［ｆｐｓ］の場合には、外部メモリと符号化処理装置８とを繋ぐバス帯域として、最大５２８（＝１．１［ＭＢｙｔｅ］×８［ｂｉｔ／Ｂｙｔｅ］×３０［ｆｐｓ］×２［読み出し／書き込み］）［Ｍｂｐｓ］が必要となる。
【００６０】
【特許文献１】特開２００６―９４０８１号公報
【発明の開示】
【発明が解決しようとする課題】
【００６１】
本発明は、このような実情に鑑みて提案されたものであり、過去に符号化処理を施した画像領域の動き情報を用いて符号化処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在符号化対象の画像領域を符号化するための情報を記憶する記憶手段に記憶させる情報を低減することによって、この記憶手段の記憶可能容量の削減を実現する符号化処理装置及び符号化処理方法を提供することを目的とする。
【００６２】
また、本発明は、過去に復号処理を施した画像領域の動き情報を用いて復号処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在復号対象の画像領域を復号するための情報を記憶する記憶手段に記憶させる情報を低減することによって、この記憶手段の記憶可能容量の削減を実現する復号処理装置及び復号処理方法を提供することを目的とする。
【課題を解決するための手段】
【００６３】
上述した課題を解決するための手段として、本発明に係る符号化処理装置は、画像信号に対して、所定の符号化方式に準拠した予測モード及び画像領域単位で符号化処理を施して出力する符号化処理装置であって、過去に符号化処理を施した画像領域の動き情報を参照して符号化処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在符号化対象の画像領域を符号化するための情報を記憶する記憶手段と、上記記憶手段に記憶されている情報を参照して、上記ダイレクト予測モードで上記画像領域の動き情報を導出する導出手段と、上記導出手段が導出した動き情報に応じて、上記符号化処理対象の画像領域を符号化する予測モードを選択する選択手段と、上記選択手段により選択された予測モードで上記符号化処理対象の画像領域に施された符号化情報から、上記符号化処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報を判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定手段とを備える。
【００６４】
また、本発明に係る符号化処理方法は、画像信号に対して、所定の符号化方式に準拠した予測モード及び所定の画像領域単位で符号化処理を施して出力する符号化処理方法であって、過去に符号化処理を施した画像領域の動き情報を参照して符号化処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在符号化対象の画像領域を符号化するための情報を記憶する記憶手段に記憶されている情報を参照して、該ダイレクト予測モードで上記画像領域の動き情報を導出する導出工程と、上記導出工程で導出した動き情報に応じて、上記符号化処理対象の画像領域を符号化する予測モードを選択する選択工程と、上記選択工程で選択した予測モードで上記符号化処理対象の画像領域に施された符号化情報から、上記符号化処理が施されていない画像領域の動き情報を上記導出工程で導出するのに必要な情報を判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定工程とからなる。
【００６５】
また、本発明に係る復号処理装置は、画像信号に対して所定の符号化方式に準拠した予測モード及び画像領域単位で符号化処理が施された符号化データを復号する復号処理装置であって、過去に復号処理を施した画像領域の動き情報を参照して復号処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在復号対象の画像領域を復号するための情報を記憶する記憶手段と、上記記憶手段に記憶されている情報を参照して、上記ダイレクト予測モードで上記画像領域の動き情報を導出する導出手段と、上記導出手段により導出された上記画像領域の動き情報から、上記復号処理が施されていない画像領域の動き情報を上記導出手段が導出するのに必要な情報であるかを判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定手段とを備える。
【００６６】
また、本発明に係る復号処理方法は、画像信号に対して所定の符号化方式に準拠した予測モード及び画像領域単位で符号化処理が施された符号化データを復号する復号処理方法であって、過去に復号処理を施した画像領域の動き情報を参照して復号処理対象の画像領域の動き情報を予測するダイレクト予測モードで現在復号対象の画像領域を復号するための情報を記憶する記憶手段に記憶されている情報を参照して、該ダイレクト予測モードで上記画像領域の動き情報を導出する導出工程と、上記導出工程により導出された上記画像領域の動き情報から、上記復号処理が施されていない画像領域の動き情報を導出するのに必要な情報であるかを判定し、必要と判定した情報のみを上記記憶手段に記憶させる判定工程とからなる。
【発明の効果】
【００６７】
本発明によれば、選択した予測モードで符号化処理対象の画像領域に施された符号化情報から、符号化処理が施されていない画像領域の動き情報をダイレクト予測モードで導出するのに必要な情報を判定し、必要と判定した情報のみを記憶手段に記憶させるので、この記憶手段の記憶容量を削減して符号化処理を行うことができる。
【００６８】
本発明によれば、導出された画像領域の動き情報から、復号処理が施されていない画像領域の動き情報をダイレクト予測モードで導出するのに必要な情報であるかを判定し、必要と判定した情報のみを記憶手段に記憶させるので、この記憶手段の記憶容量を削減して復号処理を行うことができる。
【発明を実施するための最良の形態】
【００６９】
本発明が適用された画像処理装置は、画像信号に符号化処理を施して出力する符号化処理装置、及び、符号化された画像信号を復号して出力する復号処理装置である。まず、この画像処理装置の具体例として、図１に示すような符号化処理装置１を用いて、本発明を実施するための最良の形態について説明する。
【００７０】
符号化処理装置１は、差分処理部１１と、直交変換部１２と、量子化部１３と、逆量子化部１４と、逆直交変換部１５と、加算処理部１６と、画素保存用メモリ１７と、ＭＥ／ＭＤ処理部１８と、パラメータ保存用メモリ１９と、イントラ予測部２０と、インター予測部２１と、符号化部２２とを備える。
【００７１】
差分処理部１１は、入力した入力画素と、後述するイントラ予測部２０又はインター予測部２１で生成された予測画素とに対して差分処理を施し、差分画素を直交変換部１２に供給する。
【００７２】
直交変換部１２は、差分処理部１１から供給される差分画素に対して、複数の画素からなるマクロブロック単位で直交変換処理を施す。そして、直交変換部１２は、直交変換処理を施したマクロブロック内の直交変換係数を量子化部１３に供給する。
【００７３】
量子化部１３は、量子化パラメータに従って、直交変換部１２から供給される各マクロブロック内の直交変換係数を量子化して符号化部２２に供給する。そして、符号化部２２では、量子化部１３から供給される量子化された直交変換係数に可変長符号化処理などを施したビットストリームを出力する。なお、ＡＶＣ規格では、可変長符号化処理として、ＣＡＶＬＣ（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）、又は、ＣＡＢＡＣ（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）などを用いて符号化処理を行うように規格化されている。
【００７４】
また、量子化部１３は、量子化した直交変換係数を符号化部２２に供給するとともに、逆量子化部１４、ＭＥ／ＭＤ処理部１８、及び、パラメータ保存用メモリ１９にも供給する。
【００７５】
逆量子化部１４は、量子化部１３で用いている量子化パラメータに従って、量子化された直交変換係数を逆量子化して逆直交変換部１５に供給する。
【００７６】
逆直交変換部１５は、逆量子化部１４から供給されるマクロブロック内の各直交変換係数を、このマクロブロックを構成する差分画素に変換して加算処理部１６に供給する。
【００７７】
加算処理部１６は、逆直交変換部１５から供給される差分画素と、後述するイントラ予測部２０又はインター予測部２１から供給される予測画素とに対して加算処理を施して参照画素を生成して画素保存用メモリ１７に供給する。
【００７８】
画素保存用メモリ１７は、加算処理部１６から供給される差分画素をピクチャ単位で保存する。図２に示すように、現在符号化対象のピクチャをＰ（Ｎ）として（Ｎは自然数。）、Ｍ（Ｍは自然数。）ピクチャ前に符号化されているピクチャをＰ（Ｎ−Ｍ）とすると、画素保存用メモリ１７には、既にＰ（Ｎ−１）、Ｐ（Ｎ−２）、・・・、Ｐ（Ｎ−Ｍ）に対応する参照画素を保存している。画素保存用メモリ１７は、このような参照画素が後述するＭＥ／ＭＤ処理部１８及びインター予測部２１において用いられるため、このような参照画素を一定期間保存する。
【００７９】
ＭＥ／ＭＤ処理部１８は、現在符号化処理中のマクロブロックに対して、具体的には後述するように、パラメータ保存用メモリ１９に記憶されている符号化情報を参照して、動き予測（ＭＥ：Ｍｏｔｉｏｎ  Ｅｓｔｉｍａｔｉｏｎ）処理及びモード選択（ＭＤ：Ｍｏｄｅ  Ｄｉｃｉｓｉｏｎ）処理を行う。そして、ＭＥ／ＭＤ処理部１８は、ＭＥ処理及びＭＤ処理の処理結果に応じて、現在処理中のマクロブロックに最適な予測モードを選択する。さらに、ＭＥ／ＭＤ処理部１８は、イントラ予測を最適な予測モードとして選択したとき、イントラ予測に必要な情報をイントラ予測部２０に供給し、インター予測を最適な予測モードとして選択したとき、インター予測に必要な情報をインター予測部２１に供給する。
【００８０】
パラメータ保存用メモリ１９は、図３に示すように、量子化部１３から供給される情報のうち、ＭＥ／ＭＤ処理部１８が後述するスキップ／ダイレクトモードに従って現在符号化対象のマクロブロックを符号化するために必要な、過去に符号化したピクチャＰ（Ｎ−１）、Ｐ（Ｎ−２）、・・・、Ｐ（Ｎ−Ｍ）に関する情報を記憶する。
【００８１】
イントラ予測部２０は、ＭＥ／ＭＤ処理部１８による選択結果に従って、現在符号化対象のマクロブロックが存在するピクチャ内の符号化済みの画素から予測画素を生成して差分処理部１１及び加算処理部１６に供給する。
【００８２】
インター予測部２１は、ＭＥ／ＭＤ処理部１８による選択結果に従って、画素保存用メモリ１７に記憶されている参照画素を用いて予測画素を生成して差分処理部１１及び加算処理部１６に供給する。
【００８３】
次に、ＭＥ／ＭＤ処理部１８の具体的な構成とその動作について図４を参照して説明する。
【００８４】
ＭＥ／ＭＤ処理部１８は、イントラ予測モードの中から最適なモードを選択するイントラサーチ処理部３１と、パラメータ保存用メモリ１９に記憶されている情報からスキップ／ダイレクト予測モードに従った動き情報を求めるスキップ／ダイレクトサーチ処理部３２と、その他の予測モードに関する最適なモードと動き情報を求めるＬ０／Ｌ１／Ｂｉサーチ処理部３３と、各サーチ処理部で選択されたモードの中から最適なモードを選択するＭＤ処理部３４と、ＭＤ処理部３４により選択された予測モードに応じてパラメータ保存用メモリ１９に記憶させる情報に関する判定処理を行うマクロブロック情報判定部３５と、画像信号に対して施す符号化処理に所定の制約条件を設定する設定部３６を備える。
【００８５】
イントラサーチ処理部３１は、符号化対象の入力画素の画像信号に応じて、イントラ予測モードの中から最適なモードを選択して、選択したモードに対応した符号化処理に関する情報をＭＤ処理部３４に供給する。
【００８６】
スキップ／ダイレクトサーチ処理部３２は、スライスタイプがＢスライスを構成するマクロブロックに対して、後述するスキップ／ダイレクト予測モードのうち、空間ダイレクトモードに従った動きベクトル及び時間ダイレクトモードに従った動きベクトルを導出するＭＶ導出部３７と、ＭＶ導出部３７で導出される動きベクトルに応じて最適な予測モードを選択する後処理部３８とを備える。
【００８７】
ＭＶ導出部３７は、パラメータ保存用メモリ１９に記憶されている情報を参照して、後述するように空間ダイレクトモードに従った動きベクトル及び時間ダイレクトモードに従った動きベクトルを導出して後処理部３８に供給する。
【００８８】
後処理部３８は、ＭＶ導出部３７で導出した動きベクトルを用いて、スキップ／ダイレクト予測モードから最適なモードを選択して、選択したモードに対応した符号化処理に関する情報をＭＤ処理部３４に供給する。
【００８９】
Ｌ０／Ｌ１／Ｂｉサーチ処理部３３は、表示順序で符号化対象ピクチャに対して前方に位置するピクチャを用いた予測（Ｌ０予測）処理、及び、表示順序で符号化対象ピクチャに対して後方に位置するピクチャを用いた予測（Ｌ０予測）処理、及び、表示順序で符号化対象ピクチャに対して前方及び後方の双方に位置するピクチャを用いた予測（Ｂｉ予測）処理の中から最適なモードを選択して、選択したモードに対応した符号化処理に関する情報をＭＤ処理部３４に供給する。
【００９０】
設定部３６は、符号化処理に対して、次のような制約条件を設定する。具体的に、設定部３６は、スキップ／ダイレクト予測モードのうち、時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件を設定する。また、設定部３６は、ダイレクトモードに従った符号化処理におけるマクロブロックのブロックサイズを所定サイズ以上、具体的には８×８画素ブロック以上とする制約条件を設定する。なお、設定部３６によって設定される制約条件は、例えばユーザインターフェースから操作入力される命令情報に従って設定される。
【００９１】
マクロブロック情報判定部３５は、動きベクトル導出部が従来行っている導出処理の一部を、予め参照マクロブロックとなり得るマクロブロックの符号化処理が行われているときに行うことによって、パラメータ保存用メモリ１９に記憶されるデータ量の低減を実現する。よって、このようなデータ量の低減を実現する処理を行うマクロブロック情報判定部３５に注目してＭＥ／ＭＤ処理部１８に係る動作について下記の通り説明する。
【００９２】
マクロブロック情報判定部３５は、ＭＥ／ＭＤ処理部１８で選択された予測モードに係る情報に加えて、設定部３６で設定される制約条件に応じて、パラメータ保存用メモリ１９に記憶させる情報に関する判定処理を行う。
【００９３】
まず、設定部３６によって時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件のみが設定されたときのマクロブロック情報判定部３５に係る動作について、図５に示すフローチャートを参照して説明する。
【００９４】
ダイレクトモードのうち、時間ダイレクトモードでは、時間軸方向に対して異なる位置にあるマクロブロックの動き情報も参照して符号化対象のマクロブロックの動きベクトルを決定するため、アンカーブロックの動きベクトルの有効値をパラメータ保存用メモリ１９に記憶させる必要がある。これに対して、空間ダイレクトモードでは、符号化処理対象のマクロブロックの動きベクトルをそのピクチャ内において過去に符号化処理が施されたマクロブロックの動きベクトルを用いて予測するモードなので、アンカーブロックの動きベクトルの値が±１以下にあるかが必要であるが、具体的な値については必要ない。
【００９５】
マクロブロック情報判定部３５では、このような特徴を有する空間ダイレクトモードに応じた動きベクトルを導出するために必要な情報のみをパラメータ保存用メモリ１９に記憶させるために次に示すような判定処理を行う。
【００９６】
ステップＳ１１において、マクロブロック情報判定部３５は、第１の条件として現在符号化対象のマクロブロックの予測タイプ、すなわち、前段のＭＤ処理部３４で選択された予測モードに係る予測タイプｍｂ＿ｔｙｐｅがイントラ（Ｉｎｔｒａ）であるかを判断する。また、マクロブロック情報判定部３５は、第２の条件として、現在符号化対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が０であり、かつ、Ｌ１予測の予測モードｐｒｅｄＦｌａｇＬ１が０であるかを判定する。マクロブロック情報判定部３５は、上述した第１の条件又は第２の条件が満たされたときステップＳ１２に進み、何れの判断条件も満たされないときステップＳ１３に進む。
【００９７】
ステップＳ１２において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの動きベクトルｍｖの垂直水平方向の値を共に０に設定する。また、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを−１に設定する。そして、マクロブロック情報判定部３５は、ステップＳ１６に進む。
【００９８】
ステップＳ１３において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が１であるかを判断し、この判断条件を満たしたときステップＳ１４に進み、この判断条件を満たさないときステップＳ１５に進む。
【００９９】
ステップＳ１４において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの動きベクトルｍｖを、このマクロブロックのＬ０予測の動きベクトルＭｖＬ０［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部３５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ０予測の参照ピクチャ番号ＲｅｆＩｄｘＬ０［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部３５は、ステップＳ１６に進む。
【０１００】
ステップＳ１５において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの動きベクトルを、このマクロブロックのＬ１予測の動きベクトルＭｖＬ１［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部３５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ１予測の参照ピクチャ番号ＲｅｆＩｄｘＬ１［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部３５は、ステップＳ１６に進む。
【０１０１】
ステップＳ１６において、マクロブロック情報判定部３５は、第１の条件として、前段の処理ステップで設定した現在符号化対象のマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘが０であるかを判断する。また、マクロブロック情報判定部３５は、第２の条件として、前段の処理ステップで設定した現在符号化対象のマクロブロックの動きベクトルｍｖの水平垂直成分の値が共に±１以下であるかを判断する。マクロブロック情報判定部３５は、これら第１、第２の条件を共に満たすときステップＳ１７に進み、これら第１、第２の判断条件を共に満たすことにならないときステップＳ１８に進む。
【０１０２】
ステップＳ１７において、マクロブロック情報判定部３５は、参照マクロブロック用動きベクトルＭｖＲｅｆの値を１に設定し、設定した動きベクトルＭｖＲｅｆをパラメータ保存用メモリ１９に記憶して本処理工程を終了する。
【０１０３】
ステップＳ１８において、マクロブロック情報判定部３５は、参照マクロブロック用動きベクトルＭｖＲｅｆの各値を０に設定し、設定した動きベクトルＭｖＲｅｆをパラメータ保存用メモリ１９に記憶して本処理工程を終了する。
【０１０４】
ここで、１つのマクロブロック当たり合計４種類のｍｂＰａｒｔＩｄｘが存在し、１つのｍｂＰａｒｔＩｄｘ当たり合計４種類のｓｕｂＭｂＰａｒｔＩｄｘが存在する。したがって、マクロブロック情報判定部３５は、ステップＳ１７、１８に係る処理工程によって各動きベクトル成分の値が０又は１に必ず設定されているため、図６に示すように、１マクロブロック当たり合計１６ビット（２［Ｂｙｔｅ］）のデータサイズからなる動きベクトルを参照マクロブロック用の符号化情報としてパラメータ保存用メモリ１９に記憶する。
【０１０５】
また、マクロブロック情報判定部３５は、上述したように時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件と、ダイレクト予測モードに従った符号化処理のマクロブロックサイズを８×８以上に制限する制約条件との両方が設定部３６によって設定されたときも、上述したステップＳ１１〜ステップＳ１８に係る処理工程に従って、参照マクロブロック用の符号化情報をパラメータ保存用メモリ１９に記憶する。
【０１０６】
ここで、ダイレクト予測モードで符号化処理を行うマクロブロックサイズを８×８画素ブロック以上に制限する場合には、ｓｕｂＭｂＰａｒｔＩｄｘ＝ｍｂＰａｒｔＩｄｘとすることがＡＶＣ規格において定められている。したがって、マクロブロック情報判定部３５は、ステップＳ１７及びステップＳ１８に係る処理工程によって、図７に示すように、１マクロブロック当たり合計４ビットのデータサイズからなる動きベクトルを、参照マクロブロック用の符号化情報としてパラメータ保存用メモリ１９に記憶する。１Ｂｙｔｅ単位でパラメータ保存用メモリ１９に記憶する場合、マクロブロック情報判定部３５は、アラインを考慮して、１マクロブロック当たり１［Ｂｙｔｅ］のデータサイズからなる動きベクトルをパラメータ保存用メモリ１９に記憶する。
【０１０７】
次に、以上のようにしてマクロブロック情報判定部３５によってパラメータ保存用メモリ１９に記憶された動きベクトルＭｖＲｅｆを参照して、動きベクトルを導出するＭＶ導出部３７の動作について、図８に示すフローチャートを参照して説明する。前提として、設定部３６によって時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件が設定されているので、ＭＶ導出部３７は、空間ダイレクトモードに従った動きベクトルを次の処理工程により算出する。
【０１０８】
ステップＳ２１において、ＭＶ導出部３７は、同一ピクチャ内の隣接するマクロブロックに係る情報から、現在符号化対象のマクロブロックのＬ０及びＬ１予測の参照ピクチャ番号ｒｅｆＩｄｘＬ０、ｒｅｆＩｄｘＬ１、及び、導出対象の動きベクトルが０であるかを示すフラグｄｉｒｅｃｔＺｅｒｏＰｒｅｄｉｃｔｉｏｎＦｌａｇを導出して、ステップＳ２２に進む。
【０１０９】
ステップＳ２２において、ＭＶ導出部３７は、現在符号化対象のマクロブロックに対してｍｂＰａｒｔＩｄｘ、ｓｕｂＭｂＰａｒｔＩｄｘを入力し、パラメータ保存用メモリ１９に記憶されている情報を参照して、アンカーブロックの動きベクトルＣｏｌＭｖＲｅｆを導出する。
【０１１０】
ステップＳ２３において、ＭＶ導出部３７は、第１の条件として、Ｌ１予測の参照ピクチャのうち最小の参照番号のピクチャタイプＲｅｆＰｉｃＬｉｓｔ１［０］が短時間参照ピクチャｓｈｏｒｔ−ｔｅｒｍ  ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅであるかを判断する。また、ＭＶ導出部３７は、第２の条件として、ステップＳ２２において導出したアンカーブロックの動きベクトルＣｏｌＭｖＲｅｆが１であるかを判断する。そして、ＭＶ導出部３７は、これら第１、第２の条件を両方とも満たすときステップＳ２４に進み、これら第１、第２の条件を両方とも満たすことにならないときステップＳ２５に進む。
【０１１１】
ステップＳ２４において、ＭＶ導出部３７は、フラグｃｏｌＺｅｒｏＦｌａｇを１に設定してステップＳ２６に進む。
【０１１２】
ステップＳ２５において、ＭＶ導出部３７は、フラグｃｏｌＺｅｒｏＦｌａｇを０に設定してステップＳ２６に進む。
【０１１３】
ステップＳ２６において、ＭＶ導出部３７は、符号化処理対象のマクロブロックの動きベクトルの水平垂直方向を示すベクトルＸを導出して、ステップＳ２７に進む。
【０１１４】
ステップＳ２７において、ＭＶ導出部３７は、第１の条件として、ステップＳ２１で導出したフラグｄｉｒｅｃｔＺｅｒｏＰｒｅｄｉｃｔｉｏｎＦｌａｇの値が１であるかを判断する。ＭＶ導出部３７は、第２の条件として、ステップＳ２１で導出した参照ピクチャ番号ｒｅｆＩｄｘＬ０、ｒｅｆＩｄｘＬ１が０未満であるかを判断する。また、ＭＶ導出部３７は、第３の条件として、ステップＳ２１で導出した参照ピクチャ番号ｒｅｆＩｄｘＬ０、ｒｅｆＩｄｘＬ１が０、かつ、ステップＳ２４、Ｓ２５で設定したフラグｃｏｌＺｅｒｏＦｌａｇが１であるかを判断する。そして、ＭＶ導出部３７は、これらの第１から第３の条件のうち何れか１つの条件が満たされたときステップＳ２８に進み、これらの第１から第３の条件を全て満たさないときステップＳ２９に進む。
【０１１５】
ステップＳ２８において、ＭＶ導出部３７は、空間ダイレクトモードに従った符号化対象マクロブロックの動きベクトルｍｖＬＸの水平垂直方向の値を共に０に設定して終了する。
【０１１６】
ステップＳ２９において、ＭＶ導出部３７は、隣接するマクロブロックの動き情報を用いて、空間ダイレクトモードに従った符号化対象マクロブロックの動きベクトルｍｖＬＸを導出して終了する。
【０１１７】
以上のようにして、ＭＶ導出部３７は、空間ダイレクトモードに応じた動きベクトルを導出する。ここで、ＭＶ導出部３７は、ステップＳ２２において、入力したｍｂＰａｒｔＩｄｘ、ｓｕｂＭｂＰａｒｔＩｄｘに対応するアンカーブロックの動きベクトルをパラメータ保存用メモリ１９を参照するだけで導出することができる。これは、アンカーブロックが過去に符号化対象となっていたときに、アンカーブロックとしての動きベクトルを事前にマクロブロック情報判定部３５が求めてパラメータ保存用メモリ１９に記憶しているからである。従来の符号化処理装置では、ＭＥ／ＭＤ処理部においてこのようなマクロブロック情報判定部に係る処理を事前に行っていないため、ＭＶ導出部がアンカーブロックの動きベクトルを導出するため、例えば図９に示すように１マクロブロック当たり８９４ビット、各パラメータ毎にアラインを考慮すると約１４０［Ｂｙｔｅ］の符号化情報をパラメータ保存用メモリに記憶させておく必要がある。
【０１１８】
したがって、本実施形態に係る符号化処理装置１では、ＭＤ処理部３４により選択された予測モードと、設定部３６により設定された制約条件とに応じて、マクロブロック情報判定部３５が、符号化処理対象のマクロブロックに係る情報から、このマクロブロックを参照マクロブロックとして、符号化処理が施されていないマクロブロックの動きベクトルをＭＶ導出部３７が導出するのに必要な情報を判定し、必要と判定した情報のみをパラメータ保存用メモリ１９に記憶させるので、従来に比べてパラメータ保存用メモリ１９の記憶容量を削減することができる。
【０１１９】
例えば、上述したように、符号化処理装置１では、設定部３６が時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件を設定することで、従来例に対して約１／７０にパラメータ保存用メモリ１９に記憶する記憶容量を削減することができる。符号化処理装置１では、さらに設定部３６によってマクロブロックサイズを８×８画素サイズ以上に制限をかける制約条件を設定することで、従来例に対して約１／２８２にパラメータ保存用メモリ１９に記憶する記憶容量を削減することができる。
【０１２０】
以上では、設定部３６によって時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件に応じて、マクロブロック情報判定部３５がパラメータ保存用メモリ１９に記憶するデータ量を従来に比べて削減することを示した。このような制限を加えなくても、すなわち、時間ダイレクトモードを使用する場合でも、マクロブロック情報判定部３５は、図１０に示すフローチャートに従った処理を行うことによって、パラメータ保存用メモリ１９に記憶するデータ量を従来に比べて削減することができる。
【０１２１】
ステップＳ３１において、マクロブロック情報判定部３５は、第１の条件として現在符号化対象のマクロブロックの予測タイプ、すなわち、前段のＭＤ処理部３４で選択された予測モードに係る予測タイプｍｂ＿ｔｙｐｅがイントラ（Ｉｎｔｒａ）であるかを判断する。また、マクロブロック情報判定部３５は、第２の条件として、現在符号化対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が０であり、かつ、Ｌ１予測の予測モードｐｒｅｄＦｌａｇＬ１が０であるかを判定する。マクロブロック情報判定部３５は、上述した第１の条件又は第２の条件が満たされたときステップＳ３２に進み、何れの判断条件も満たされないときステップＳ３３に進む。
【０１２２】
ステップＳ３２において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの動きベクトルの垂直水平方向の値を共に０に設定する。また、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを−１に設定する。そして、マクロブロック情報判定部３５は、設定した動きベクトルｍｖと参照ピクチャ番号ｒｅｆＩｄｘをパラメータ保存用メモリ１９に記憶する。
【０１２３】
ステップＳ３３において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が１であるかを判断し、この判断条件を満たしたときステップＳ３４に進み、この判断条件を満たさないときステップＳ３５に進む。
【０１２４】
ステップＳ３４において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの動きベクトルを、このマクロブロックのＬ０予測の動きベクトルＭｖＬ０［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部３５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ０予測の参照ピクチャ番号ＲｅｆＩｄｘＬ０［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部３５は、設定した動きベクトルｍｖと参照ピクチャ番号ｒｅｆＩｄｘをパラメータ保存用メモリ１９に記憶する。
【０１２５】
ステップＳ３５において、マクロブロック情報判定部３５は、現在符号化対象のマクロブロックの動きベクトルを、このマクロブロックのＬ１予測の動きベクトルＭｖＬ１［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部３５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ１予測の参照ピクチャ番号ＲｅｆＩｄｘＬ１［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部３５は、設定した動きベクトルｍｖと参照ピクチャ番号ｒｅｆＩｄｘをパラメータ保存用メモリ１９に記憶する。
【０１２６】
以上のような処理工程を行うマクロブロック情報判定部３５は、従来のようにＬ０予測、Ｌ１予測両方に係る動きベクトルｍｖ及び参照ピクチャ番号ｒｅｆｉｄｘをアンカーブロックの情報としてパラメータ保存用メモリに保存するのと異なり、ステップＳ３２、ステップＳ３４、又は、ステップＳ３５に係る処理によって設定された動きベクトルｍｖ及び参照ピクチャ番号ｒｅｆｉｄｘのみをパラメータ保存用メモリ１９に記憶する。したがって、図１１に示すように１マクロブロック当たり４４０ビット、各パラメータ毎にアラインを考慮すると合計６８［Ｂｙｔｅ］のデータサイズからなる符号化情報をパラメータ保存用メモリ１９に記憶する。すなわち、符号化処理装置１では、１マクロブロック当たり合計約１４０［Ｂｙｔｅ］のデータサイズからなる符号化情報をパラメータ保存用メモリに記憶する従来の符号化処理装置に比べて、パラメータ保存用メモリ１９の記憶容量を約半分に削減することができる。
【０１２７】
さらに、ダイレクト予測モードに従った符号化処理のマクロブロックサイズを８×８以上に制限する制約条件が設定部３６によって設定されている場合、ｓｕｂＭｂＰａｒｔＩｄｘ＝ｍｂＰａｒｔＩｄｘとすることがＡＶＣ規格において定められているため、マクロブロック情報判定部３５は、図１２に示すように１マクロブロック当たり１２８ビット、各パラメータ毎にアラインを考慮すると合計２０［Ｂｙｔｅ］のデータサイズからなる符号化情報をパラメータ保存用メモリ１９に記憶することができる。したがって、この場合には、符号化処理装置１は、上述した従来の符号化処理装置に比べて約１／７にパラメータ保存用メモリ１９の記憶容量を削減することができる。
【０１２８】
次に、以上のようにしてマクロブロック情報判定部３５によってパラメータ保存用メモリ１９に記憶された動きベクトルｍｖＲｅｆを参照して、動きベクトルを導出するＭＶ導出部３７の動作について、図１３に示すフローチャートを参照して説明する。前提として、設定部３６によって時間ダイレクトモードに従った動きベクトルを次の処理工程により算出する。
【０１２９】
ステップＳ４１において、ＭＶ導出部３７は、ｍｂＰｒｔｌｄｘとｓｕｂＰａｒｔｌｄｘとを入力して、パラメータ保存用メモリ１９に記憶されている情報を参照して、アンカーブロックに関する情報を導出して、ステップＳ４２に進む。
【０１３０】
ステップＳ４２において、ＭＶ導出部３７は、ステップＳ４２で導出した情報から、Ｌ０予測の参照ピクチャ番号ｒｅｆＩｄｘＬ０と、Ｌ０予測の参照ピクチャ番号ｒｅｆＩｄｘＬ１を導出してステップＳ４３に進む。
【０１３１】
ステップＳ４３において、ＭＶ導出部３７は、アンカーブロックの動きベクトルｍｖＣｏｌを修正してステップＳ４４に進む。
【０１３２】
ステップＳ４４において、ＭＶ導出部３７は、現在符号化対象のピクチャＣｕｒｒＰｉｃ０ｒＦｉｅｌｄと、Ｌ０予測の参照ピクチャの最小番号のピクチャｐｉｃ０と、Ｌ１予測の参照ピクチャの最小番号のピクチャｐｉｃ１とを導出してステップＳ４５に進む。
【０１３３】
ステップＳ４５において、ＭＶ導出部３７は、ステップＳ４４で導出したｃｕｒｒＰｉｃ０ｒＦｉｅｌｄ、ｐｉｃ０、ｐｉｃ１の表示順の関係から、アンカーブロックのＬ０予測の動きベクトルｍｖＬ０と、アンカーブロックのＬ１予測の動きベクトルｍｖＬ１とを導出する。
【０１３４】
以上のようにして、ＭＶ導出部３７は、時間ダイレクトモードに応じた動きベクトルを導出する。ここで、ＭＶ導出部３７は、ステップＳ４１において、入力したｍｂＰａｒｔＩｄｘ、ｓｕｂＭｂＰａｒｔＩｄｘに対応するアンカーブロックの動きベクトルをパラメータ保存用メモリ１９を参照するだけで導出することができる。これは、アンカーブロックが過去に符号化対象となっていたときに、アンカーブロックとしての動きベクトルを事前にマクロブロック情報判定部３５が求めてパラメータ保存用メモリ１９に記憶しているからである。
【０１３５】
したがって、本実施形態に係る符号化処理装置１では、ＭＤ処理部３４により選択された予測モードに応じて、マクロブロック情報判定部３５が、符号化処理対象のマクロブロックに係る情報から、このマクロブロックを参照マクロブロックとして、符号化処理が施されていないマクロブロックの動きベクトルをＭＶ導出部３７が導出するのに必要な情報を判定し、必要と判定した情報のみをパラメータ保存用メモリ１９に記憶させるので、従来に比べてパラメータ保存用メモリ１９の記憶容量を削減することができる。
【０１３６】
以上のようにして、符号化処理装置１では、パラメータ保存用メモリ１９に記憶する記憶容量を削減できるので、例えばパラメータ保存用メモリ１９がバスを介してＭＥ／ＭＤ処理部１８と接続されているような構成の場合には、パラメータ保存用メモリ１９とＭＥ／ＭＤ処理部１８と間の伝送データに係るバンド幅を削減することができる。
【０１３７】
次に、上述した符号化処理装置１で符号化された画像信号を取り込んで復号処理を施す復号処理装置２を用いて、本発明を実施するための他の形態について図１４を参照して説明する。
【０１３８】
具体的に、復号処理装置２は、図１４に示すように、バッファ４１と、可逆復号部４２と、逆量子化部４３と、逆直交変換部４４と、加算器４５と、画面並べ替え部４６と、Ｄ／Ａ変換部４７と、画素保存用メモリ４８と、動き補償部４９と、パラメータ保存用メモリ５０とを備える。
【０１３９】
バッファ４１は、上述した符号化処理装置１などで符号化された画像信号を一時的に記憶して、他の処理部との同期を図って、順次記憶した画像信号を可逆復号部４２に供給する。
【０１４０】
可逆復号部４２は、バッファ４１から供給される画像信号に対して、可変長復号化や算術復号化などの処理を施して、量子化された直交変換係数を逆量子化部４３に供給する。また、可逆復号部４２は、この画像信号のヘッダ部に格納された動きベクトルなどの予測処理に関する符号化情報を復号して、復号した符号化情報を動き補償部４９に供給する。
【０１４１】
逆量子化部４３は、可逆復号部４２から供給される量子化された直交変換係数に対して逆量子化処理を施して、この直交変換係数を逆直交変換部４４に供給する。
【０１４２】
逆直交変換部４４は、逆量子化部４３で生成された直交変換係数に対して逆離散コサイン変換や逆カルーネン・レーベ変換などの逆直交変換処理を施して、復号された復号画素を加算器４５に供給する。
【０１４３】
加算器４５は、逆直交変換部４４で復号された復号画素と、後述する動き補償部４９から供給される予測画素とに対して加算処理を施してフレーム画像データを生成して画面並べ替え部４６に供給する。
【０１４４】
画面並べ替え部４６は、加算器４５から供給されるフレーム画像データを時間軸方向に並び換える。そして、画面並べ替え部４６は、時間軸方向に並び換えたフレーム画像データをベースバンドビデオ信号としてＤ／Ａ変換部４７に供給する。
【０１４５】
Ｄ／Ａ変換部４７は、ベースバンドビデオ信号をデジタル信号からアナログ信号に変換して、表示装置などに出力する。
【０１４６】
画素保存用メモリ４８は、加算器４５から供給されたフレーム画像データを参照画素として記憶する。
【０１４７】
動き補償部４９は、可逆復号部４２から供給される符号化情報と、画素保存用メモリ４８に記憶された参照画素とに応じて、予測画素を生成して加算器４５に供給する。
【０１４８】
パラメータ保存用メモリ５０は、動き補償部４９で生成される情報のうち、後述するように動き補償部４９がスキップ／ダイレクト予測処理に従って現在復号対象のマクロブロックを復号するために必要であって、過去に復号したピクチャに関する情報を記憶する。
【０１４９】
次に、動き補償部４９の具体的な構成とその動作について図１５を参照して説明する。
【０１５０】
動き補償部４９は、図１５に示すように、符号化情報からイントラ予測処理に必要な情報であるイントラパラメータを導出するイントラパラメータ導出部５１と、符号化情報からＬ０／Ｌ１／Ｂｉ予測処理に必要な情報であるＬ０／Ｌ１／Ｂｉパラメータを導出するＬ０／Ｌ１／Ｂｉパラメータ導出部５２と、符号化情報からスキップ／ダイレクト予測処理に必要な情報であるスキップ／ダイレクトパラメータを導出するスキップ／ダイレクトパラメータ導出部５３と、各導出部で導出されたパラメータに従って参照画素から予測画素を生成する予測画素生成部５４と、パラメータ保存用メモリ５０に記憶させる情報に関する判定処理を行うマクロブロック情報判定部５５とを備える。
【０１５１】
イントラパラメータ導出部５１は、可逆復号部４２から供給される符号化情報から、イントラ予測処理に必要な情報であるイントラパラメータを導出して予測画素生成部５４に供給する。
【０１５２】
Ｌ０／Ｌ１／Ｂｉパラメータ導出部５２は、可逆復号部４２から供給される符号化情報から、Ｌ０／Ｌ１／Ｂｉ予測処理に必要な情報であるＬ０／Ｌ１／Ｂｉパラメータを導出して予測画素生成部５４に供給する。
【０１５３】
スキップ／ダイレクトパラメータ導出部５３は、スライスタイプがＢスライスを構成するマクロブロックのうち、ダイレクト予測モードに従って動きベクトルが符号化されているマクロブロックを復号するのに必要な情報を導出する。具体的に、スキップ／ダイレクトパラメータ導出部５３は、空間ダイレクトモード又は時間ダイレクトモードに従って動きベクトルを導出するＭＶ導出部５６と、このＭＶ導出部５６で導出される動きベクトルに応じてスキップ／ダイレクトパラメータを導出する後処理部５７とから構成される。
【０１５４】
ＭＶ導出部５６は、可逆復号部４２から供給される符号化情報から、パラメータ保存用メモリ５０に記憶されている情報を参照して、後述するように空間ダイレクトモード又は時間ダイレクトモードに従って動きベクトルを導出して後処理部５７に供給する。
【０１５５】
後処理部５７は、ＭＶ導出部５６から供給される動きベクトルを用いて、スキップ／ダイレクトパラメータを導出して予測画素生成部５４に供給する。
【０１５６】
マクロブロック情報判定部５５は、ＭＶ導出部が従来行っている導出処理の一部を、予め参照マクロブロックとなり得るマクロブロックの復号処理段階で行うことによってパラメータ保存用メモリ５０に記憶されるデータ量の低減を実現する。
【０１５７】
具体的に、マクロブロック情報判定部５５は、可逆復号部４２から供給される符号化情報に応じて判定処理を行う。
【０１５８】
まず、マクロブロック情報判定部５５は、可逆復号部４２から供給される符号化情報を解析する。そして、マクロブロック情報判定部５５は、ダイレクト予測モードのうち空間ダイレクトモードのみを用いる制約条件が画像信号に設定されているとき、空間ダイレクトモードに応じた動きベクトルを導出するために必要な情報のみをパラメータ保存用メモリ５０に記憶させるために、図１６に示すフローチャートに従った判定処理を行う。
【０１５９】
ステップＳ５１において、マクロブロック情報判定部５５は、第１の条件として現在復号対象のマクロブロックの予測タイプｍｂ＿ｔｙｐｅ、すなわち、前段の予測画素生成部５４で生成された予測画素の予測モードに係る予測タイプｍｂ＿ｔｙｐｅがイントラ（Ｉｎｔｒａ）であるかを判断する。また、マクロブロック情報判定部５５は、第２の条件として、現在復号対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が０であり、かつ、Ｌ１予測の予測モードｐｒｅｄＦｌａｇＬ１が０であるかを判定する。マクロブロック情報判定部５５は、上述した第１の条件又は第２の条件が満たされたときステップＳ５２に進み、何れの判断条件も満たされないときステップＳ５３に進む。
【０１６０】
ステップＳ５２において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの動きベクトルｍｖの垂直水平方向の値を共に０に設定する。また、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを−１に設定する。そして、マクロブロック情報判定部５５は、ステップＳ５６に進む。
【０１６１】
ステップＳ５３において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が１であるかを判断し、この判断条件を満たしたときステップＳ５４に進み、この判断条件を満たさないときステップＳ５５に進む。
【０１６２】
ステップＳ５４において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの動きベクトルｍｖを、このマクロブロックのＬ０予測の動きベクトルＭｖＬ０［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部５５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ０予測の参照ピクチャ番号ＲｅｆＩｄｘＬ０［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部５５は、ステップＳ１６に進む。
【０１６３】
ステップＳ５５において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの動きベクトルを、このマクロブロックのＬ１予測の動きベクトルＭｖＬ１［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部５５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ１予測の参照ピクチャ番号ＲｅｆＩｄｘＬ１［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部５５は、ステップＳ５６に進む。
【０１６４】
ステップＳ５６において、マクロブロック情報判定部５５は、第１の条件として、前段の処理ステップで設定した現在復号対象のマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘが０であるかを判断する。また、マクロブロック情報判定部５５は、第２の条件として、前段の処理ステップで設定した現在復号対象のマクロブロックの動きベクトルｍｖの水平垂直成分の値が共に±１以下であるかを判断する。マクロブロック情報判定部５５は、これら第１、第２の条件を共に満たすときステップＳ５７に進み、これら第１、第２の判断条件を共に満たすことにならないときステップＳ５８に進む。
【０１６５】
ステップＳ５７において、マクロブロック情報判定部５５は、参照マクロブロック用動きベクトルＭｖＲｅｆの値を１に設定し、設定した動きベクトルＭｖＲｅｆをパラメータ保存用メモリ５０に記憶して本処理工程を終了する。
【０１６６】
ステップＳ５８において、マクロブロック情報判定部５５は、参照マクロブロック用動きベクトルＭｖＲｅｆの各値を０に設定し、設定した動きベクトルＭｖＲｅｆをパラメータ保存用メモリ５０に記憶して本処理工程を終了する。
【０１６７】
また、マクロブロック情報判定部５５は、上述したように時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件に加えて、ダイレクト予測モードに従った符号化処理のマクロブロックサイズを８×８以上に制限する制約条件が符号化された画像信号に設定されているときも、上述したステップＳ５１〜ステップＳ５８に係る処理工程に従って、参照マクロブロック用の動き情報をパラメータ保存用メモリ５０に記憶する。
【０１６８】
次に、以上のようにしてマクロブロック情報判定部５５によってパラメータ保存用メモリ５０に記憶された動きベクトルＭｖＲｅｆを参照して、動きベクトルを導出するＭＶ導出部５６の動作について、図１７に示すフローチャートを参照して説明する。
【０１６９】
前提として、符号化された画像信号には、時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件が設定されているので、ＭＶ導出部５６は、空間ダイレクトモードに従った動きベクトルを次の処理工程により算出する。
【０１７０】
ステップＳ６１において、ＭＶ導出部５６は、同一ピクチャ内の隣接するマクロブロックに係る情報から、現在復号対象のマクロブロックのＬ０及びＬ１予測の参照ピクチャ番号ｒｅｆＩｄｘＬ０、ｒｅｆＩｄｘＬ１、及び、導出対象の動きベクトルが０であるかを示すフラグｄｉｒｅｃｔＺｅｒｏＰｒｅｄｉｃｔｉｏｎＦｌａｇを導出して、ステップＳ６２に進む。
【０１７１】
ステップＳ６２において、ＭＶ導出部５６は、現在復号対象のマクロブロックに対してｍｂＰａｒｔＩｄｘ、ｓｕｂＭｂＰａｒｔＩｄｘを入力し、パラメータ保存用メモリ５０に記憶されている情報を参照して、アンカーブロックの動きベクトルＣｏｌＭｖＲｅｆを導出する。
【０１７２】
ステップＳ６３において、ＭＶ導出部５６は、第１の条件として、Ｌ１予測の参照ピクチャのうち最小の参照番号のピクチャタイプＲｅｆＰｉｃＬｉｓｔ１［０］が短時間参照ピクチャｓｈｏｒｔ−ｔｅｒｍ  ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅであるかを判断する。また、ＭＶ導出部５６は、第２の条件として、ステップＳ６２において導出したアンカーブロックの動きベクトルＣｏｌＭｖＲｅｆが１であるかを判断する。そして、ＭＶ導出部５６は、これら第１、第２の条件を両方とも満たすときステップＳ６４に進み、これら第１、第２の条件を両方とも満たすことにならないときステップＳ６５に進む。
【０１７３】
ステップＳ６４において、ＭＶ導出部５６は、フラグｃｏｌＺｅｒｏＦｌａｇを１に設定してステップＳ６６に進む。
【０１７４】
ステップＳ６５において、ＭＶ導出部５６は、フラグｃｏｌＺｅｒｏＦｌａｇを０に設定してステップＳ６６に進む。
【０１７５】
ステップＳ６６において、ＭＶ導出部５６は、復号処理対象のマクロブロックの動きベクトルの水平垂直方向を示すベクトルＸを導出して、ステップＳ６７に進む。
【０１７６】
ステップＳ６７において、ＭＶ導出部５６は、第１の条件として、ステップＳ６１で導出したフラグｄｉｒｅｃｔＺｅｒｏＰｒｅｄｉｃｔｉｏｎＦｌａｇの値が１であるかを判断する。ＭＶ導出部５６は、第２の条件として、ステップＳ６１で導出した参照ピクチャ番号ｒｅｆＩｄｘＬ０、ｒｅｆＩｄｘＬ１が０未満であるかを判断する。また、ＭＶ導出部５６は、第３の条件として、ステップＳ６１で導出した参照ピクチャ番号ｒｅｆＩｄｘＬ０、ｒｅｆＩｄｘＬ１が０、かつ、ステップＳ６４、Ｓ６５で設定したフラグｃｏｌＺｅｒｏＦｌａｇが１であるかを判断する。そして、ＭＶ導出部５６は、これらの第１から第３の条件のうち何れか１つの条件が満たされたときステップＳ６８に進み、これらの第１から第３の条件を全て満たさないときステップＳ６９に進む。
【０１７７】
ステップＳ６８において、ＭＶ導出部５６は、空間ダイレクトモードに従った復号対象マクロブロックの動きベクトルｍｖＬＸの水平垂直方向の値を共に０に設定して終了する。
【０１７８】
ステップＳ６９において、ＭＶ導出部５６は、隣接するマクロブロックの動き情報を用いて、空間ダイレクトモードに従った復号対象マクロブロックの動きベクトルｍｖＬＸを導出して終了する。
【０１７９】
以上のようにして、ＭＶ導出部５６は、空間ダイレクトモードに応じた動きベクトルを導出する。ここで、ＭＶ導出部５６は、ステップＳ６２において、入力したｍｂＰａｒｔＩｄｘ、ｓｕｂＭｂＰａｒｔＩｄｘに対応するアンカーブロックの動きベクトルをパラメータ保存用メモリ５０を参照するだけで導出することができる。
【０１８０】
したがって、本実施形態に係る復号処理装置２では、符号化された画像信号に設定された制約条件に応じて、マクロブロック情報判定部５５が、復号処理対象のマクロブロックに係る情報から、このマクロブロックを参照マクロブロックとして、復号処理が施されていないマクロブロックの動きベクトルをＭＶ導出部５６が導出するのに必要な情報を判定し、必要と判定した情報のみをパラメータ保存用メモリ５０に記憶させるので、従来に比べてパラメータ保存用メモリ５０の記憶容量を削減することができる。
【０１８１】
以上では、時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件に応じて、マクロブロック情報判定部５５がパラメータ保存用メモリ５０に記憶するデータ量を従来に比べて削減することを示した。このような制限を加えなくても、すなわち、時間ダイレクトモードを使用している符号化された画像信号の場合でも、マクロブロック情報判定部５５は、図１８に示すフローチャートに従った処理を行うことによって、パラメータ保存用メモリ５０に記憶するデータ量を従来に比べて削減することができる。
【０１８２】
ステップＳ７１において、マクロブロック情報判定部５５は、第１の条件として現在復号対象のマクロブロックの予測タイプ、すなわち、前段の予測画素生成部５４で生成された予測画素の予測モードに係る予測タイプｍｂ＿ｔｙｐｅがイントラ（Ｉｎｔｒａ）であるかを判断する。また、マクロブロック情報判定部５５は、第２の条件として、現在復号対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が０であり、かつ、Ｌ１予測の予測モードｐｒｅｄＦｌａｇＬ１が０であるかを判定する。マクロブロック情報判定部５５は、上述した第１の条件又は第２の条件が満たされたときステップＳ７２に進み、何れの判断条件も満たされないときステップＳ７３に進む。
【０１８３】
ステップＳ７２において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの動きベクトルの垂直水平方向の値を共に０に設定する。また、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを−１に設定する。そして、マクロブロック情報判定部５５は、設定した動きベクトルｍｖと参照ピクチャ番号ｒｅｆＩｄｘをパラメータ保存用メモリ５０に記憶する。
【０１８４】
ステップＳ７３において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックのＬ０予測の予測モードｐｒｅｄＦｌａｇＬ０が１であるかを判断し、この判断条件を満たしたときステップＳ７４に進み、この判断条件を満たさないときステップＳ７５に進む。
【０１８５】
ステップＳ７４において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの動きベクトルを、このマクロブロックのＬ０予測の動きベクトルＭｖＬ０［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部５５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ０予測の参照ピクチャ番号ＲｅｆＩｄｘＬ０［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部５５は、設定した動きベクトルｍｖと参照ピクチャ番号ｒｅｆＩｄｘをパラメータ保存用メモリ５０に記憶する。
【０１８６】
ステップＳ７５において、マクロブロック情報判定部５５は、現在復号対象のマクロブロックの動きベクトルを、このマクロブロックのＬ１予測の動きベクトルＭｖＬ１［ｍｂＰａｒｔＩｄｘ］［ｓｕｂＭｂＰａｒｔＩｄｘ］に設定する。また、マクロブロック情報判定部５５は、このマクロブロックの参照ピクチャ番号ｒｅｆＩｄｘを、このマクロブロックのＬ１予測の参照ピクチャ番号ＲｅｆＩｄｘＬ１［ｍｂＰａｒｔＩｄｘ］に設定する。そして、マクロブロック情報判定部５５は、設定した動きベクトルｍｖと参照ピクチャ番号ｒｅｆＩｄｘをパラメータ保存用メモリ５０に記憶する。
【０１８７】
以上のような処理工程を行うマクロブロック情報判定部５５は、従来のようにＬ０予測、Ｌ１予測両方に係る動きベクトルｍｖ及び参照ピクチャ番号ｒｅｆｉｄｘをアンカーブロックの情報としてパラメータ保存用メモリに保存するのと異なり、ステップＳ７２、ステップＳ７４、又は、ステップＳ７５に係る処理によって設定された動きベクトルｍｖ及び参照ピクチャ番号ｒｅｆｉｄｘのみをパラメータ保存用メモリ５０に記憶する。
【０１８８】
したがって、符号化処理装置１では、従来の符号化処理装置に比べてパラメータ保存用メモリ１９の記憶容量を約半分に削減することができる。
【０１８９】
さらに、ダイレクト予測モードに従った符号化処理のマクロブロックサイズを８×８以上に制限する制約条件が符号化された画像信号に設定されている場合、ｓｕｂＭｂＰａｒｔＩｄｘ＝ｍｂＰａｒｔＩｄｘとすることがＡＶＣ規格において定められている。したがって、この場合には、符号化処理装置１は、従来に比べてさらにパラメータ保存用メモリ５０の記憶容量を削減することができる。
【０１９０】
次に、以上のようにしてマクロブロック情報判定部５５によってパラメータ保存用メモリ５０に記憶された動きベクトルｍｖＲｅｆを参照して、動きベクトルを導出するＭＶ導出部５６の動作について、図１９に示すフローチャートを参照して説明する。前提として、ＭＶ導出部５６では、時間ダイレクトモードに従った動きベクトルを次の処理工程により算出する。
【０１９１】
ステップＳ８１において、ＭＶ導出部５６は、ｍｂＰｒｔｌｄｘとｓｕｂＰａｒｔｌｄｘとを入力して、パラメータ保存用メモリ１９に記憶されている情報を参照して、アンカーブロックに関する情報を導出して、ステップＳ８２に進む。
【０１９２】
ステップＳ８２において、ＭＶ導出部５６は、ステップＳ８１で導出した情報から、Ｌ０予測の参照ピクチャ番号ｒｅｆＩｄｘＬ０と、Ｌ０予測の参照ピクチャ番号ｒｅｆＩｄｘＬ１を導出してステップＳ８３に進む。
【０１９３】
ステップＳ８３において、ＭＶ導出部５６は、アンカーブロックの動きベクトルｍｖＣｏｌを修正してステップＳ８４に進む。
【０１９４】
ステップＳ８４において、ＭＶ導出部５６は、現在復号対象のピクチャＣｕｒｒＰｉｃ０ｒＦｉｅｌｄと、Ｌ０予測の参照ピクチャの最小番号のピクチャｐｉｃ０と、Ｌ１予測の参照ピクチャの最小番号のピクチャｐｉｃ１とを導出してステップＳ８５に進む。
【０１９５】
ステップＳ８５において、ＭＶ導出部５６は、ステップＳ８４で導出したｃｕｒｒＰｉｃ０ｒＦｉｅｌｄ、ｐｉｃ０、ｐｉｃ１の表示順の関係から、アンカーブロックのＬ０予測の動きベクトルｍｖＬ０と、アンカーブロックのＬ１予測の動きベクトルｍｖＬ１とを導出する。
【０１９６】
以上のようにして、ＭＶ導出部５６は、時間ダイレクトモードに応じた動きベクトルを導出する。ここで、ＭＶ導出部５６は、ステップＳ８１において、入力したｍｂＰａｒｔＩｄｘ、ｓｕｂＭｂＰａｒｔＩｄｘに対応するアンカーブロックの動きベクトルをパラメータ保存用メモリ５０を参照するだけで導出することができる。これは、アンカーブロックが過去に復号対象となっていたときに、アンカーブロックとしての動きベクトルを事前にマクロブロック情報判定部５５が求めてパラメータ保存用メモリ５０に記憶しているからである。
【０１９７】
したがって、本実施形態に係る復号処理装置２では、予測画素生成部５４で生成された予測画素された予測モードに応じて、マクロブロック情報判定部５５が、復号処理対象のマクロブロックに係る情報から、このマクロブロックを参照マクロブロックとして、復号処理が施されていないマクロブロックの動きベクトルをＭＶ導出部５６が導出するのに必要な情報を判定し、必要と判定した情報のみをパラメータ保存用メモリ５０に記憶させるので、従来に比べてパラメータ保存用メモリ５０の記憶容量を削減することができる。
【０１９８】
以上のようにして、復号処理装置２では、パラメータ保存用メモリ５０に記憶する記憶容量を削減できるので、例えばパラメータ保存用メモリ５０がバスを介して動き補償部４９と接続されているような構成の場合には、パラメータ保存用メモリ５０と動き補償部４９と間の伝送データに係るバンド幅を削減することができる。
【０１９９】
なお、本発明は、以上の実施形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【０２００】
【図１】符号化処理装置の構成を示すブロック図である。
【図２】符号化処理順に並んだピクチャを示す図である。
【図３】パラメータ保存用メモリが記憶する記憶領域を示す図である。
【図４】ＭＥ／ＭＤ処理部の構成を示すブロック図である。
【図５】マクロブロック情報判定部の処理工程を説明するために供するフローチャートである。
【図６】時間ダイレクトモードを使用せずに空間ダイレクトモードを使用する制約条件が設定されたときにパラメータ保存用メモリが記憶するマクロブロック単位のデータ量を示す図である。
【図７】パラメータ保存用メモリが記憶するマクロブロック単位のデータ量を示す図である。
【図８】ＭＶ導出部が動きベクトルを導出する処理工程を説明するために供するフローチャートである。
【図９】パラメータ保存用メモリが記憶するマクロブロック単位のデータ量を示す図である。
【図１０】マクロブロック情報判定部の処理工程を説明するために供するフローチャートである。
【図１１】パラメータ保存用メモリが記憶するマクロブロック単位のデータ量を示す図である。
【図１２】パラメータ保存用メモリが記憶するマクロブロック単位のデータ量を示す図である。
【図１３】ＭＶ導出部が動きベクトルを導出する処理工程を説明するために供するフローチャートである。
【図１４】復号処理装置の構成を示すブロック図である。
【図１５】動き補償部の構成を示すブロック図である。
【図１６】マクロブロック情報判定部の処理工程を説明するために供するフローチャートである。
【図１７】ＭＶ導出部が動きベクトルを導出する処理工程を説明するために供するフローチャートである。
【図１８】マクロブロック情報判定部の処理工程を説明するために供するフローチャートである。
【図１９】ＭＶ導出部が動きベクトルを導出する処理工程を説明するために供するフローチャートである。
【図２０】従来の符号化処理装置の構成を示すブロック図である。
【図２１】ＭＥ／ＭＤ処理部の構成を示すブロック図である。
【図２２】空間ダイレクトモードに従った動きベクトルの導出処理を説明するために供するフローチャートである。
【図２３】空間ダイレクトモードに従った動きベクトルの導出処理の一部を説明するために供するフローチャートである。
【図２４】時間ダイレクトモードに従った動きベクトルの導出処理を説明するために供するフローチャートである。
【符号の説明】
【０２０１】
１、８  符号化処理装置、２  復号処理装置、１１、８１  差分処理部、１２、８２  直交変換部、１３、８３  量子化部、１４、４３、８４  逆量子化部、１５、４４、８５  逆直交変換部、１６、８６  加算処理部、１７、４８、８７  画素保存用メモリ、１８、８８  ＭＥ／ＭＤ処理部、１９、５０、８９  パラメータ保存用メモリ、２０、９０  イントラ予測部、２１、９２  インター予測部、２２、９２  符号化部、３１、１０１  イントラサーチ処理部、３２、１０２  スキップ／ダイレクトサーチ処理部、３３、１０３  Ｌ０／Ｌ１／Ｂｉサーチ処理部、３４、１０４  ＭＤ処理部、３５、５５  マクロブロック情報判定部、３６  設定部、３７、５６、１０５  ＭＶ導出部、３８、５７、１０６  後処理部、４１  バッファ、４２  可逆復号部、４５  加算器、４６  画面並べ替え部、４７  Ｄ／Ａ変換部、４９  動き補償部、５１  イントラパラメータ導出部、５２  Ｌ０／Ｌ１／Ｂｉパラメータ導出部、５３  スキップ／ダイレクトパラメータ導出部、５４  予測画素生成部
【図１】
2009055519.tif 000003
【図２】
2009055519.tif 000004
【図３】
2009055519.tif 000005
【図４】
2009055519.tif 000006
【図５】
2009055519.tif 000007
【図６】
2009055519.tif 000008
【図７】
2009055519.tif 000009
【図８】
2009055519.tif 000010
【図９】
2009055519.tif 000011
【図１０】
2009055519.tif 000012
【図１１】
2009055519.tif 000013
【図１２】
2009055519.tif 000014
【図１３】
2009055519.tif 000015
【図１４】
2009055519.tif 000016
【図１５】
2009055519.tif 000017
【図１６】
2009055519.tif 000018
【図１７】
2009055519.tif 000019
【図１８】
2009055519.tif 000020
【図１９】
2009055519.tif 000021
【図２０】
2009055519.tif 000022
【図２１】
2009055519.tif 000023
【図２２】
2009055519.tif 000024
【図２３】
2009055519.tif 000025
【図２４】
2009055519.tif 000026