(57)【要約】【課題】イントラ予測の並列化処理を可能にし、Ｈ．２６４の規格に準拠した画像復号化装置が復号化することができる符号化データを出力する画像符号化装置を提供する。【解決手段】画像符号化装置は、一つのマクロブロックから複数個に分割された全部のブロックそれぞれについて、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を行なう装置であって、（ａ）前記全部のブロックのうちの少なくとも一部については、イントラ予測に用いられる、Ｈ．２６４規格により規定されている複数のモードの一部を用いて、（ｂ）前記Ｈ．２６４規格により規定されているラスタースキャンの順番とは異なる順番で、前記全部のブロックをイントラ予測させる予測ブロック制御部２２と、イントラ予測された前記全部のブロックを、ラスタースキャンの順番に従って出力する整列化バッファ２３とを備える。【選択図】図１
2011142699.tif 000002
【特許請求の範囲】
【請求項１】
一つのマクロブロックを分割して得られる複数のブロック毎に、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を所定の符号化規格に基づいて行なう画像符号化装置であって、
前記マクロブロックは、１６画素×１６ラインの画素により構成されており、
前記ブロックは、４画素×４ラインの画素により構成されており、
前記マクロブロックの最も左上に位置するブロックを基準にして、横方向にX、縦方向にY軸をとり、前記ブロックの位置を（Ｘ，Ｙ）｛Ｘ，Ｙ＝０，１，２，３｝と表現する場合、
前記マクロブロック内のすべてのブロックに適用するイントラ予測モードを、前記所定の規格に規定されるモード０，１，２，４，５，６，８のうちいずれか１つのモードから設定する予測ブロック制御部と、
前記ブロックを、（０，０），（１，０），（０，１），（２，０），（１，１），（３，０），（２，１），（０，２），（３，１），（１，２），（０，３），（２，２），（１，３），（３，２），（２，３），（３，３）の順に、前記予測ブロック制御部が各ブロックで設定したイントラ予測モードを用いて面内予測符号化する画像符号化部と、
前記面内予測符号化されたブロックを、（０，０），（１，０），（０，１），（２，０），（１，１），（３，０），（２，１），（０，２），（３，１），（１，２），（０，３），（２，２），（１，３），（３，２），（２，３），（３，３）の順に、逆量子化および逆直行変換する変換部と、備え、
前記画像符号化部および前記変換部は、前記ブロックのうち（０，１）に位置するブロックから（２，３）に位置するブロックまでの面内予測符号化と、前記ブロックのうち（１，０）に位置するブロックから（３，２）に位置するブロックまでの逆量子化および逆直行変換と、を同じタイミングで並列して処理する画像符号化装置。
【請求項２】
前記画像符号化部は、（０，０）に位置するブロックを第１のタイミングで面内予測符号化し、
前記変換部は、（０，０）に位置するブロックを第１のタイミングの次のタイミングである第２のタイミングで逆量子化および逆直行変換し、
さらに、前記画像符号化部は、（１，０）に位置するブロックを第２のタイミングの次のタイミングである第３のタイミングで面内予測符号化し、
前記画像符号化部および前記変換部は、前記第３のタイミングの次のタイミングである第４のタイミング以降、前記ブロックのうち（０，１）に位置するブロックから（２，３）に位置するブロックまでの面内予測符号化と、前記ブロックのうち（１，０）に位置するブロックから（３，２）に位置するブロックまでの逆量子化および逆直行変換と、を同じタイミングで並列して処理する請求項１に記載の画像符号化装置。
【請求項３】
一つのマクロブロックを分割して得られる複数のブロック毎に、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を所定の符号化規格に基づいて行なう画像符号化方法であって、
前記マクロブロックは、１６画素×１６ラインの画素により構成されており、
前記ブロックは、４画素×４ラインの画素により構成されており、
前記マクロブロックの最も左上に位置するブロックを基準にして、横方向にX、縦方向にY軸をとり、前記ブロックの位置を（Ｘ，Ｙ）｛Ｘ，Ｙ＝０，１，２，３｝と表現する場合、
（０，０）に位置するブロックを第１のタイミングで面内予測符号化し、
（０，０）に位置するブロックを第１のタイミングの次のタイミングである第２のタイミングで逆量子化および逆直行変換し、
（１，０）に位置するブロックを第２のタイミングの次のタイミングである第３のタイミングで面内予測符号化し、
前記第３のタイミングの次のタイミングである第４のタイミング以降、前記ブロックのうち（０，１）に位置するブロックから（２，３）に位置するブロックまでの面内予測符号化と、前記ブロックのうち（１，０）に位置するブロックから（３，２）に位置するブロックまでの逆量子化および逆直行変換と、を同じタイミングで並列して処理し、
前記ブロックを面内符号化する際は常に、前記所定の規格に規定されるモード０，１，２，４，５，６，８のうちいずれか１つのモードから設定する画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マクロブロックから分割されたブロックについて、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を行なう画像符号化装置に関する。
【背景技術】
【０００２】
ＭＰＥＧ−２やＭＰＥＧ−４といった従来の画像符号化方式に比べ、２倍近くの高い符号化効率を実現する方式としてＨ．２６４（「ＭＰＥＧ−４  ＡＶＣ」とも呼ばれる）が規格化されている（例えば、非特許文献１参照）。Ｈ．２６４は、直交変換と動き補償とをベースとしたハイブリッド画像符号化方式である点で、従来の方式と変わらない。しかしながら、Ｈ．２６４では、符号化される各要素の符号化ツールの自由度が高く、それらの累積効果で高い符号化効率が実現される。
【０００３】
図１１は、従来の画像符号化装置の構成を示すブロック図である。図１１では、説明を容易にするため、イントラ予測に関わる構成部分のみが示されている。すなわち図１１では、動き予測部、イントラ予測と動き予測との何れか一方を選択する選択部、及びデブロックフィルタ等は省略されている。
【０００４】
従来の画像符号化装置は、ブロック分割部１１と、減算部１２と、直交変換部（Ｔ）１３と、量子化部（Ｑ）１４と、符号化部１５と、逆量子化部（ｉＱ）１６と、逆直交変換部（ｉＴ）１７と、加算部１８と、フレームメモリ１９と、イントラ予測部（ＩＰＤ）２０と、レート制御部２１とを備えている。
【０００５】
連続するピクチャ（フレーム及びフィールドの両者を包含する１つの符号化の単位）から構成される動画像の各ピクチャは、そのピクチャが“４：２：０”フォーマットのピクチャである場合、図１２（Ａ）から（Ｃ）に示すように、１個の輝度信号（Ｙ信号３１）と２個の色差信号（Ｃｒ信号３２及びＣｂ信号３３）とで構成されており、色差信号の画像サイズは、垂直方向についても水平方向についても、輝度信号の１／２である。
【０００６】
また、各ピクチャはブロックに分割され、ブロック単位で符号化される。このブロックは、マクロブロックと呼ばれ、図１３（Ａ）に示す１６×１６画素の１個のＹ信号ブロック４１と、図１３（Ｂ）及び（Ｃ）それぞれに示す、Ｙ信号ブロック４１と空間的に一致する８×８画素のＣｒ信号ブロック４２及びＣｂ信号ブロック４３とにより構成されている（例えば、非特許文献１参照）。
【０００７】
各ピクチャは、ブロック分割部１１により入力マクロブロックに分割される。入力マクロブロックは減算部１２に入力される。減算部１２は、各位置の画素について、入力マクロブロックの画素値から、イントラ予測部（ＩＰＤ）２０によって生成された予測マクロブロックの画素値を減算し、差分マクロブロックを出力する。差分マクロブロックは直交変換部（Ｔ）１３に入力され、直交変換部（Ｔ）１３は差分マクロブロックを直交変換する。なお、直交変換が行なわれるブロックのサイズは、ＭＰＥＧ方式では８×８画素であるが、Ｈ．２６４では４×４画素が基本サイズである。
【０００８】
直交変換部（Ｔ）１３は、差分マクロブロックを、まず図１４（Ａ）から（Ｃ）に示す２４個の４×４画素ブロック（“５１−０”から“５１−１５”、“５２−０”から“５２−３”、及び、“５３−０”から“５３−３”）に分割し、それぞれについて直交変換する。なお、差分マクロブロックが後で述べるイントラ１６×１６画素により構成されている場合、直交変換部（Ｔ）１３は、更に、各４×４直交変換ブロックの直流成分のみを集めた直交ブロック（“５１−１６”、“５２−４”、及び“５３−４”）を信号成分毎に構成し、直交変換する。直交変換ブロック内の各変換係数は量子化部（Ｑ）１４に入力される。
【０００９】
量子化部（Ｑ）１４は、レート制御部２１から入力された量子化パラメータに従って、各直交変換ブロック内の変換係数を量子化する。量子化された直交変換係数は、符号化部１５に入力され、符号化される。Ｈ．２６４では、符号化部１５は、可変長符号化、すなわち、Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ（ＣＡＶＬＣ）、又は、Ｃｏｎｔｅｘｔ−ｂａｓｅｄ  Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ（ＣＡＢＡＣ）により、量子化直交変換係数を符号化する。
【００１０】
符号化部１５は、上記の通り量子化直交変換係数を符号化するとともに、後述するマクロブロックタイプの情報及び予測モードを符号化し、更にストリーム化して出力する。
【００１１】
量子化された直交変換係数は、符号化部１５へ供給されるとともに、逆量子化部（ｉＱ）１６に入力される。逆量子化部（ｉＱ）１６は、レート制御部２１から入力された量子化パラメータに従って、量子化された直交変換係数を逆量子化する。これにより、直交変換ブロックが復元する。復元された直交変換ブロックは、逆直交変換部（ｉＴ）１７により逆直交変換され、差分マクロブロックに復元される。復元された差分マクロブロックは、イントラ予測部（ＩＰＤ）２０により予測された予測マクロブロックとともに加算部１８に入力される。
【００１２】
加算部１８は、各位置の画素について、復元された差分マクロブロックの画素値と、予測マクロブロックの画素値とを加算し、再生マクロブロックを生成する。この再生マクロブロックは、イントラ予測に用いられるためフレームメモリ１９へ蓄積される。
【００１３】
次に、イントラ予測部（ＩＰＤ）２０が予測マクロブロックを生成する際の予測方法及び予測モードについて説明する。
【００１４】
イントラ予測は、フレーム内の符号化済み画素を用いて、マクロブロック内の画素値を予測する方法である。Ｈ．２６４符号化方式では、予測を行なう単位として２種類のブロックサイズが用意されている。それらは、「イントラ４×４予測」及び「イントラ１６×１６予測」と呼ばれているマクロブロックタイプである。
【００１５】
更に、イントラ４×４予測のマクロブロックタイプについては９種類、イントラ１６×１６予測のマクロブロックタイプについては４種類の予測モードが用意されており、マクロブロック毎（イントラ４×４予測では、４×４画素のブロック毎）に予測モードを選択することができる。
【００１６】
図１５（Ａ）は、イントラ４×４予測において、予測対象画素（“ａ”から“ｐ”の１６画素）と、予測に用いる（符号化後復号化されて再生された）画素（再構成隣接画素；“Ａ”から“Ｌ”の１２画素）の配置を示す図である。ここで、予測対象画素（“ａ”から“ｐ”）はブロック分割部１１から出力された符号化対象のマクロブロック内の画素であり、再構成隣接画素（“Ａ”から“Ｌ”）は復号化後再生されたマクロブロック又はブロックの画素であって、フレームメモリ１９から読み出される。
【００１７】
図１５（Ｂ）は、イントラ４×４予測の予測方向を示す図である。予測対象画素の画素値は、再構成隣接画素の画素値を用い、予測方向に沿って、規格された演算式（例えば、非特許文献１参照）を使用することにより算出される。予測方向はモード番号（モード０からモード８）により示されている。図１５（Ｃ）から図１５（Ｋ）それぞれはモード番号と予測の方向とを示している。図１５（Ｃ）におけるブロック６０のモード０では予測方向は垂直であり、図１５（Ｄ）におけるブロック６１のモード１では予測方向は水平であり、図１５（Ｅ）におけるブロック６２のモード２では予測は平均（ＤＣ）である。図１５（Ｆ）におけるブロック６３のモード３では予測方向は斜め左下方であり、図１５（Ｇ）におけるブロック６４のモード４では予測方向は斜め右下方であり、図１５（Ｈ）におけるブロック６５のモード５では予測方向は垂直右方である。図１５（Ｉ）におけるブロック６６のモード６では予測方向は水平下方であり、図１５（Ｊ）におけるブロック６７のモード７では予測方向は垂直左方であり、図１５（Ｋ）におけるブロック６８のモード８では予測方向は水平上方である。
【００１８】
イントラ４×４予測は輝度信号に適用される。例えば、画素の予測値を“Ｐ”とすると、各モードにおける画素の予測値Ｐは、それぞれ以下の通りである。ここで、予測に用いる図１５（Ｃ）から（Ｋ）に示す隣接画素“Ａ”〜“Ｍ”は、既に復号化後再生された再構成画素である。しかし仮に、画素“Ｅ”〜“Ｈ”が、まだ再構成されていない場合、又は、４×４ブロックと別スライス、もしくは別フレームに属する場合、画素“Ｄ”の値が画素“Ｅ”〜“Ｈ”に代入される。
【００１９】
モード０（ｖｅｒｔｉｃａｌ）においては、図１５（Ｃ）のブロック６０に示すように、参照画素“Ａ”，“Ｂ”，“Ｃ”，及び“Ｄ”が存在するとき、ブロック６０内の各画素の値を予測することができ、それぞれの予測値Ｐは、以下のように算出される。
【００２０】
ａ，ｅ，ｉ，ｍ  ：  Ｐ＝Ａ
ｂ，ｆ，ｊ，ｎ  ：  Ｐ＝Ｂ
ｃ，ｇ，ｋ，ｏ  ：  Ｐ＝Ｃ
ｄ，ｈ，ｌ，ｐ  ：  Ｐ＝Ｄ
【００２１】
モード１（ｈｏｒｉｚｏｎｔａｌ）においては、図１５（Ｄ）のブロック６１に示すように、参照画素“Ｉ”，“Ｊ”，“Ｋ”，及び“Ｌ”が存在するとき、ブロック６１内の各画素の値を予測することができ、それぞれの予測値Ｐは、以下のように算出される。
【００２２】
ａ，ｂ，ｃ，ｄ  ：  Ｐ＝Ｉ
ｅ，ｆ，ｇ，ｈ  ：  Ｐ＝Ｊ
ｉ，ｊ，ｋ，ｌ  ：  Ｐ＝Ｋ
ｍ，ｎ，ｏ，ｐ  ：  Ｐ＝Ｌ
【００２３】
モード２（ＤＣ）においては、図１５（Ｅ）のブロック６２に示すように、参照画素“Ａ”，“Ｂ”，“Ｃ”，“Ｄ”，“Ｉ”，“Ｊ”，“Ｋ”，及び“Ｌ”が存在するとき、ブロック６２内の各画素の予測値Ｐは次の通りである。
【００２４】
Ｐ＝（Ａ＋Ｂ＋Ｃ＋Ｄ＋Ｉ＋Ｊ＋Ｋ＋Ｌ＋４）＞＞３
【００２５】
参照画素“Ｉ”，“Ｊ”，“Ｋ”，及び“Ｌ”だけが存在するとき、ブロック６２内の各画素の予測値Ｐは次の通りである。
【００２６】
Ｐ＝（Ｉ＋Ｊ＋Ｋ＋Ｌ＋２）＞＞２
【００２７】
また、参照画素“Ａ”，“Ｂ”，“Ｃ”，及び“Ｄ”だけが存在するとき、ブロック６２内の各画素の予測値Ｐは次の通りである。
【００２８】
Ｐ＝（Ａ＋Ｂ＋Ｃ＋Ｄ＋２）＞＞２
【００２９】
更に、参照画素“Ａ”，“Ｂ”，“Ｃ”，“Ｄ”，“Ｉ”，“Ｊ”，“Ｋ”，及び“Ｌ”の何れのも存在しないとき、ブロック６２内の各画素の予測値Ｐは次の通りである。
【００３０】
Ｐ＝１２８
【００３１】
モード３（ｄｉａｇｏｎａｌ  ｄｏｗｎ−ｌｅｆｔ）においては、図１５（Ｆ）のブロック６３に示すように、参照画素“Ａ”，“Ｂ”，“Ｃ”，“Ｄ”，“Ｅ”，“Ｆ”，“Ｇ”，及び“Ｈ”が存在するとき、ブロック６３内の各画素の予測値Ｐは以下のように算出される。
【００３２】
ａ            ：  Ｐ＝（Ａ＋２Ｂ＋Ｃ＋２）＞＞２
ｂ，ｅ        ：  Ｐ＝（Ｂ＋２Ｃ＋Ｄ＋２）＞＞２
ｃ，ｆ，ｉ    ：  Ｐ＝（Ｃ＋２Ｄ＋Ｅ＋２）＞＞２
ｄ，ｇ，ｊ，ｍ：  Ｐ＝（Ｄ＋２Ｅ＋Ｆ＋２）＞＞２
ｈ，ｋ，ｎ    ：  Ｐ＝（Ｅ＋２Ｆ＋Ｇ＋２）＞＞２
ｌ，ｏ        ：  Ｐ＝（Ｆ＋２Ｇ＋Ｈ＋２）＞＞２
ｐ            ：  Ｐ＝（Ｇ＋３Ｈ＋２）＞＞２
【００３３】
モード４（ｄｉａｇｏｎａｌ  ｄｏｗｎ−ｒｉｇｈｔ）においては、図１５（Ｇ）のブロック６４に示すように、参照画素“Ａ”，“Ｂ”，“Ｃ”，“Ｄ”，“Ｉ”，“Ｊ”，“Ｋ”，“Ｌ”，及び“Ｍ”が存在するとき、ブロック６４内の各画素の予測値Ｐは以下のように算出される。
【００３４】
ａ，ｆ，ｋ，ｐ  ：  Ｐ＝（Ａ＋２Ｍ＋Ｉ＋２）＞＞２
ｂ，ｇ，ｌ      ：  Ｐ＝（Ｍ＋２Ａ＋Ｂ＋２）＞＞２
ｃ，ｈ          ：  Ｐ＝（Ａ＋２Ｂ＋Ｃ＋２）＞＞２
ｄ              ：  Ｐ＝（Ｂ＋２Ｃ＋Ｄ＋２）＞＞２
ｅ，ｊ，ｏ      ：  Ｐ＝（Ｍ＋２Ｉ＋Ｊ＋２）＞＞２
ｉ，ｎ          ：  Ｐ＝（Ｉ＋２Ｊ＋Ｋ＋２）＞＞２
ｍ              ：  Ｐ＝（Ｊ＋２Ｋ＋Ｌ＋２）＞＞２
【００３５】
モード５（ｖｅｒｔｉｃａｌ−ｒｉｇｈｔ）においては、図１５（Ｈ）のブロック６５に示すように、参照画素“Ａ”，“Ｂ”，“Ｃ”，“Ｄ”，“Ｉ”，“Ｊ”，“Ｋ”，“Ｌ”，及び“Ｍ”が存在するとき、ブロック６５内の各画素の予測値Ｐは以下のように算出される。
【００３６】
ａ，ｊ      ：  Ｐ＝（Ｍ＋Ａ＋１）＞＞１
ｂ，ｋ      ：  Ｐ＝（Ａ＋Ｂ＋１）＞＞１
ｃ，ｌ      ：  Ｐ＝（Ｂ＋Ｃ＋１）＞＞１
ｄ          ：  Ｐ＝（Ｃ＋Ｄ＋１）＞＞１
ｅ，ｎ      ：  Ｐ＝（Ｉ＋２Ｍ＋Ａ＋２）＞＞２
ｆ，ｏ      ：  Ｐ＝（Ｍ＋２Ａ＋Ｂ＋２）＞＞２
ｇ，ｐ      ：  Ｐ＝（Ａ＋２Ｂ＋Ｃ＋２）＞＞２
ｈ          ：  Ｐ＝（Ｂ＋２Ｃ＋Ｄ＋２）＞＞２
ｉ          ：  Ｐ＝（Ｊ＋２Ｉ＋Ｍ＋２）＞＞２
ｍ          ：  Ｐ＝（Ｋ＋２Ｊ＋Ｉ＋２）＞＞２
【００３７】
モード６（ｈｏｒｉｚｏｎｔａｌ−ｄｏｗｎ）においては、図１５（Ｉ）のブロック６６に示すように、参照画素“Ａ”，“Ｂ”，“Ｃ”，“Ｄ”，“Ｉ”，“Ｊ”，“Ｋ”，“Ｌ”，及び“Ｍ”が存在するとき、ブロック６６内の各画素の予測値Ｐは以下のように算出される。
【００３８】
ａ，ｇ      ：  Ｐ＝（Ｍ＋Ｉ＋１）＞＞１
ｅ，ｋ      ：  Ｐ＝（Ｉ＋Ｊ＋１）＞＞１
ｉ，ｏ      ：  Ｐ＝（Ｊ＋Ｋ＋１）＞＞１
ｍ          ：  Ｐ＝（Ｋ＋Ｌ＋１）＞＞１
ｆ，ｌ      ：  Ｐ＝（Ｍ＋２Ｉ＋Ｊ＋２）＞＞２
ｊ，ｐ      ：  Ｐ＝（Ｉ＋２Ｊ＋Ｋ＋２）＞＞２
ｎ          ：  Ｐ＝（Ｊ＋２Ｋ＋Ｌ＋２）＞＞２
ｂ，ｈ      ：  Ｐ＝（Ｉ＋２Ｍ＋Ａ＋２）＞＞２
ｃ          ：  Ｐ＝（Ｂ＋２Ａ＋Ｍ＋２）＞＞２
ｄ          ：  Ｐ＝（Ｃ＋２Ｂ＋Ａ＋２）＞＞２
【００３９】
モード７（ｖｅｒｔｉｃａｌ−ｌｅｆｔ）においては、図１５（Ｊ）のブロック６７に示すように、参照画素“Ａ”，“Ｂ”，“Ｃ”，“Ｄ”，“Ｅ”，“Ｆ”，“Ｇ”，及び“Ｈ”が存在するとき、ブロック６７内の各画素の予測値Ｐは以下のように算出される。
【００４０】
ａ          ：  Ｐ＝（Ａ＋Ｂ＋１）＞＞１
ｂ，ｉ      ：  Ｐ＝（Ｂ＋Ｃ＋１）＞＞１
ｃ，ｊ      ：  Ｐ＝（Ｃ＋Ｄ＋１）＞＞１
ｄ，ｋ      ：  Ｐ＝（Ｄ＋Ｅ＋１）＞＞１
ｌ          ：  Ｐ＝（Ｅ＋Ｆ＋１）＞＞１
ｅ          ：  Ｐ＝（Ａ＋２Ｂ＋Ｃ＋２）＞＞２
ｆ，ｍ      ：  Ｐ＝（Ｂ＋２Ｃ＋Ｄ＋２）＞＞２
ｇ，ｎ      ：  Ｐ＝（Ｃ＋２Ｄ＋Ｅ＋２）＞＞２
ｈ，ｏ      ：  Ｐ＝（Ｄ＋２Ｅ＋Ｆ＋２）＞＞２
ｐ          ：  Ｐ＝（Ｅ＋２Ｆ＋Ｇ＋２）＞＞２
【００４１】
モード８（ｈｏｒｉｚｏｎｔａｌ−ｕｐ）においては、図１５（Ｋ）のブロック６８に示すように、参照画素“Ｉ”，“Ｊ”，“Ｋ”，及び“Ｌ”が存在するとき、ブロック６８内の各画素の予測値Ｐは以下のように算出される。
【００４２】
ａ          ：  Ｐ＝（Ｉ＋Ｊ＋１）＞＞１
ｅ，ｃ      ：  Ｐ＝（Ｊ＋Ｋ＋１）＞＞１
ｉ，ｇ      ：  Ｐ＝（Ｋ＋Ｌ＋１）＞＞１
ｂ          ：  Ｐ＝（Ｉ＋２Ｊ＋Ｋ＋２）＞＞２
ｆ，ｄ      ：  Ｐ＝（Ｊ＋２Ｋ＋Ｌ＋２）＞＞２
ｊ，ｈ      ：  Ｐ＝（Ｋ＋３Ｌ＋２）＞＞２
ｋ，ｌ，ｍ，ｎ，ｏ，ｐ    ：  Ｐ＝Ｌ
【００４３】
また、輝度信号については、図１６（Ａ）から（Ｄ）に示すように、イントラ１６×１６予測についても４通りの予測モード（（Ａ）モード０：垂直、（Ｂ）モード１：水平、（Ｃ）モード２：平均のＤＣ、（Ｄ）モード３：ｐｌａｎｅ）が規格で定義されており（例えば、非特許文献１参照）、イントラ４×４予測を含む合計１３通りの予測モードの中から最適な予測モードが選択され符号化に用いられる。
【００４４】
色差信号については、８×８画素ブロックに対し、４通りの予測モード（輝度信号のイントラ１６×１６予測と同様な予測方向による予測モード。但し、モード０：ＤＣ、モード１：水平、モード２：垂直：モード３：ｐｌａｎｅ）が定義されており、輝度信号とは独立に符号化することが可能である。
【００４５】
ところで、イントラ予測では、Ｆｉｄｅｌｉｔｙ  Ｒａｎｇｅ  Ｅｘｔｅｎｓｉｏｎとして、輝度信号についてイントラ８×８予測が追加された。イントラ８×８予測は、高精細の動画像の符号化効率を向上させることを目的に、８×８画素の直交変換の符号化ツールの追加に合わせて導入された。イントラ８×８予測では、マクロブロックを４分割し、各ブロックを３タップのローパスフィルタで平滑化し、イントラ４×４予測と同様に９つの予測モードで予測する（非特許文献１参照）。
【００４６】
なお、各イントラ予測タイプの各モードで予測された予測ブロックは、そのブロックの位置及びサイズに対応するブロック分割部１１から出力された対象ブロックのそれと比較され、それらブロック間の差分絶対値和等を利用する評価関数に基づいて、各予測ブロックの評価値が算出される。算出された各評価値に基づいて、符号量が最少となると推定されるベストな予測モードの予測ブロックが選択され、その予測ブロックが減算部１２及び加算部１８に出力される。
【００４７】
また、イントラ予測部（ＩＰＤ）２０は、選択された予測モードのモード番号に関する情報を符号化部１５へ出力する。
【００４８】
ところで、Ｈ．２６４符号化におけるマクロブロックに含まれる４×４画素の各ブロックは、デフォルト（規格）により、図２のブロック内の番号で示すジグザグ状のラスタースキャンの順番で符号化される。イントラ予測では、あるブロックを予測するため、その周辺ブロックの画像を事前に符号化及び復号化しておく必要がある。例えば、図２における番号６のブロックを全てのイントラ予測モード（イントラ４×４予測で９モード）によりイントラ予測するためにには、番号３（左）、番号１（左上）、番号４（上）及び番号５（右上）のブロックの復号化画像の参照画素が必要となる。すなわち、上記あるブロックをイントラ予測するためには、その周辺ブロックについて、事前にイントラ予測（ＩＰＤ）、直交変換（Ｔ）、量子化（Ｑ）、逆量子化（ｉＱ）、及び逆直交変換（ｉＴ）といった一連の処理が終了していなければならない。
【００４９】
しかしながら、図２のデフォルトのジグザグ状のラスタースキャンの順番で符号化すると、図１７（Ａ）の点で網掛けした番号のブロック、すなわちブロック１，２，３，５，６，７，９，１０，１１，１３，１４及び１５は、その周辺の全てのブロックの復号化が終わるまでイントラ予測を開始することができない。なお、番号３，１１，７，１３及び１５のブロックについては、右上のブロックは本来参照することができないので（右上ブロックの符号化及び復号化の処理が時間的に後なので）、上ブロックの右端の画素値を右上のブロックの参照画素として用いることが許されている。
【００５０】
従って、図１７（Ｂ）の各予測ブロックの処理時系列に示すように、ＩＰＤ（イントラ予測の処理系列）のブロック処理と、ＴＱｉＱｉＴ（直交変化（Ｔ）、量子化（Ｑ）、逆量子化（ｉＱ）、及び逆直交変換（ｉＴ）の処理系列）のブロック処理とにそれぞれ開始の待ち時間が生じる。この待ち時間は、ＩＰＤの処理系とＴＱｉＱｉＴの処理系とを並列化処理（パイプライン化）する場合の妨げとなり、Ｈ．２６４符号化する際の高速化の課題となっている。
【００５１】
これに対し、特許文献１により、以下に示す技術が開示されている。すなわち、図２に示すデフォルトのジグザグ状ラスタースキャンの順番でブロックを逐次処理せずに、イントラ予測に用いられる予測ブロックの左及び上に位置するブロックを、その予測ブロックより２つ又はそれ以上前の順番で処理する。これにより、パイプライン処理を可能にしている。
【００５２】
例えば、特許文献１では、予測ブロックの処理の順番として、図４（Ａ）に示す例を挙げている。図３に示すように、１６画素×１６ラインから構成されるマクロブロックを４画素×４ラインから構成される１６個のブロックに分割して処理する場合、それぞれのブロックの位置（アドレス）を（Ｘ，Ｙ）｛Ｘ，Ｙ＝０，１，２，３｝と定義すれば、図４（Ａ）は、（０，０），（１，０），（０，１），（２，０），（１，１），（３，０），（２，１），（０，２），（３，１），（１，２），（０，３），（２，２），（１，３），（３，２），（２，３），（３，３）の順番でブロックを処理すべきことを示している。しかしながら、図４（Ａ）に示す順番で処理しても、図４（Ｂ）に示すように、番号１，２，６，１０，１４及び１５の６つのブロックについては、なおイントラ予測を開始する際に待ち時間が生じる。また、これ以外の処理順番でも、特許文献１の処理順番のルールに従えば、周辺ブロックを参照してイントラ予測のモード全てによりイントラ予測を実行するのに、最小６つのブロックが並列化（パイプライン化）処理の妨げとなる。
【００５３】
そこで、特許文献１では、イントラ予測のデフォルト（規格）の予測モードのうち、図１５（Ａ）に示された右上ブロックの位置にある参照画素“Ｅ”〜“Ｈ”を使用する予測モードについては、それら参照画素“Ｅ”〜“Ｈ”を使用しない予測モードに変更することで、番号２，６，１０及び１４のブロックの並列化（パイプライン化）処理の妨げを回避している。すなわち、Ｈ．２６４の規格により規定されていない予測モードを用いることにより、並列化（パイプライン化）処理の妨げを回避している。
【００５４】
そして、更に、残った番号１及び１５のブロックについては、図１８（Ａ）に示すように、固定値（例えば“１２８”）を予測値として用いる。又は、図１８（Ｂ）に示すように、左側隣接ブロックの、更にもう一つ左側に位置するブロックにおける復号画像の画素値を用いる。これにより、並列化（パイプライン化）処理の妨げを回避している。
【００５５】
図１９は、特許文献１により開示されている画像符号化装置の構成を示すブロック図である。予測ブロック制御部１９２が、イントラ予測部（ＩＰＤ）２０に対して、図１８（Ａ）に示す順番で、Ｈ．２６４の規格により規定されていない予測モード等を用いてイントラ予測させる。
【００５６】
なお、特許文献１では、画像符号化装置がデフォルトのジグザグ状ラスタースキャンの順番と異なる順番で、Ｈ．２６４の規格により規定されていない予測モードを用いてブロックを逐次処理してデータを出力する。そのため、画像復号化装置には、各ブロックのデータをデフォルトのジグザグ状ラスタースキャンの順番に復元する手段と、上記のＨ．２６４の規格により規定されていない予測モードによりイントラ予測されたブロックのデータをも復号する手段とが設けられる。
【先行技術文献】
【特許文献】
【００５７】
【特許文献１】特開２００４−１４０４７３号公報
【非特許文献】
【００５８】
【非特許文献１】Ｄｒａｆｔ  ｏｆ  Ｖｅｒｓｉｏｎ  ４  ｏｆ  Ｈ．２６４／ＡＶＣ（ＩＴＵ−ＴＲｅｃｏｍｍｅｎｄａｔｉｏｎ  Ｈ．２６４  ａｎｄ  ＩＳＯ／ＩＥＣ  １４４９６−１０  （ＭＰＥＧ−４  ｐａｒｔ  １０）  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）, Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ  （ＪＶＴ）  ｏｆ  ＩＳＯ／ＩＥＣ  ＭＰＥＧ  ＆  ＩＴＵ−Ｔ  ＶＣＥＧ、Ｄｏｃｕｍｅｎｔ：ＪＶＴ−Ｎ０５０ｄ１、２００５−０１−２８
【発明の概要】
【発明が解決しようとする課題】
【００５９】
特許文献１では、Ｈ．２６４符号化方式のイントラ予測において、予測ブロックをデフォルトの順番で逐次処理せずに、イントラ予測に用いられる予測ブロックの左及び上に位置するブロックを、予測ブロックより２つ又はそれ以上前の順番で処理することによって、イントラ予測をパイプライン化し処理の高速化を図っている。更に、予測ブロックの右上ブロックの参照画素を使わないイントラ予測の予測モードを設定し、それでも予測不可のブロックについては、参照画素を固定値にする、又は２ブロック離れた参照可能な画素をコピーして予測に使用する方法を提案している。
【００６０】
特許文献１の画像符号化装置は、上記のように、デフォルトの規格と異なる順番でのブロックの処理、規格と異なるイントラ予測の予測モードの使用、及び、規格で許されていない参照値の挿入等を行なうことによってブロックを符号化している。そのため、画像復号化装置には、規格から外れた符号化データを復号化する手段が別途必要となる。このため、規格に準拠したＨ．２６４の画像復号化装置では、特許文献１の画像符号化装置から出力されたデータを復号化することができない。
【００６１】
本発明は、イントラ予測の並列化（パイプライン化）処理を可能にし、かつ、Ｈ．２６４の規格に準拠した画像復号化装置が復号化することができる符号化データを出力する画像符号化装置を提供することを目的とする。
【課題を解決するための手段】
【００６２】
上記課題を解決し上記目的を達成するために、本発明の画像符号化装置は、一つのマクロブロックを分割して得られる複数のブロック毎に、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を所定の符号化規格に基づいて行なう画像符号化装置であって、前記マクロブロックは、１６画素×１６ラインの画素により構成されており、前記ブロックは、４画素×４ラインの画素により構成されており、前記マクロブロックの最も左上に位置するブロックを基準にして、横方向にX、縦方向にY軸をとり、前記ブロックの位置を（Ｘ，Ｙ）｛Ｘ，Ｙ＝０，１，２，３｝と表現する場合、前記マクロブロック内のすべてのブロックに適用するイントラ予測モードを、前記所定の規格に規定されるモード０，１，２，４，５，６，８のうちいずれか１つのモードから設定する予測ブロック制御部と、前記ブロックを、（０，０），（１，０），（０，１），（２，０），（１，１），（３，０），（２，１），（０，２），（３，１），（１，２），（０，３），（２，２），（１，３），（３，２），（２，３），（３，３）の順に、前記予測ブロック制御部が各ブロックで設定したイントラ予測モードを用いて面内予測符号化する画像符号化部と、前記面内予測符号化されたブロックを、（０，０），（１，０），（０，１），（２，０），（１，１），（３，０），（２，１），（０，２），（３，１），（１，２），（０，３），（２，２），（１，３），（３，２），（２，３），（３，３）の順に、逆量子化および逆直行変換する変換部と、備え、前記画像符号化部および前記変換部は、前記ブロックのうち（０，１）に位置するブロックから（２，３）に位置するブロックまでの面内予測符号化と、前記ブロックのうち（１，０）に位置するブロックから（３，２）に位置するブロックまでの逆量子化および逆直行変換と、を同じタイミングで並列して処理する画像符号化装置である。
【００６３】
なお、例えば、本画像符号化装置は、一つのマクロブロックを分割して得られる複数のブロック毎に、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を所定の符号化規格に基づいて行なう画像符号化装置であって、複数のブロックのうち符号化対象のブロックに適用するイントラ予測モードを前記符号化規格に規定されるイントラ予測モードから設定する予測ブロック制御部と、前記予測ブロック制御部で設定したイントラ予測モードを基に、符号化対象のブロックをイントラ予測するイントラ予測部と、を備える画像符号化装置であって、前記予測ブロック制御部は、前記符号化規格に規定されるイントラ予測モードであって、符号化対象のブロックを符号化する時点において逆量子化および逆直交変換済みの画素データのみを用いるイントラ予測モード（以下、イントラ予測モード群と称す）に含まれる一つのイントラ予測モードを設定し、前記イントラ予測部は、前記予測ブロック制御部が設定するイントラ予測モード群に含まれるイントラ予測モードの数がラスタースキャンの順番で符号化する際のイントラ予測モード群に含まれるイントラ予測モードの数以上となる符号化順で、マクロブロックを分割して得られる複数のブロックを符号化する画像符号化装置でもよい。
【００６４】
なお、本画像符号化装置では、一つのマクロブロックから複数個に分割された全部のブロックそれぞれについて、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を行なう装置であって、（ａ）前記全部のブロックのうちの少なくとも一部については、イントラ予測に用いられる、Ｈ．２６４規格により規定されている複数のモードの一部を用いて、（ｂ）前記Ｈ．２６４規格により規定されているラスタースキャンの順番とは異なる順番で、前記全部のブロックをイントラ予測させる制御手段と、前記制御手段による制御に基づいてイントラ予測された前記全部のブロックを、前記ラスタースキャンの順番に従って出力する出力手段とを備えてもよい。
【００６５】
例えば、前記制御手段は前記全部のブロックのうちの一つのブロックである第１のブロックの左側のブロックである第２のブロックについてのイントラ予測と、前記第１のブロックの上側のブロックである第３のブロックについてのイントラ予測とを、前記第１のブロックについてのイントラ予測よりも二つ以上前の処理順番で行なわせる。
【００６６】
また例えば、前記マクロブロックは、１６画素×１６ラインの画素により構成されており、前記ブロックは、４画素×４ラインの画素により構成されており、前記マクロブロックにおける各前記ブロックの位置が、前記マクロブロックの左及び上を基準にして、（Ｘ，Ｙ）｛Ｘ，Ｙ＝０，１，２，３｝と表現される場合、前記制御手段は、（Ａ）位置（０，１），（２，１），（０，３），及び（２，３）の前記ブロックについては、前記Ｈ．２６４規格により規定されているモード０からモード８のうちのモード３及びモード７以外のモードによりイントラ予測させ、（Ｂ）位置（１，０），及び（３，３）の前記ブロックについては、前記Ｈ．２６４規格により規定されているモード０、モード３及びモード７によりイントラ予測させ、（Ｃ）位置（０，０），（２，０），（３，０），（１，１），（３，１），（０，２），（１，２），（２，２），及び（１，３）の前記ブロックについては、前記Ｈ．２６４規格により規定されているモード０からモード８によりイントラ予測させ、（Ｄ）１６個の前記ブロックを、位置（０，０），（１，０），（０，１），（２，０），（１，１），（３，０），（２，１），（０，２），（３，１），（１，２），（０，３），（２，２），（１，３），（３，２），（２，３），（３，３）の順番にイントラ予測させる。
【００６７】
また例えば、前記マクロブロックは、１６画素×１６ラインの画素により構成されており、前記ブロックは、４画素×４ラインの画素により構成されており、前記制御手段は、（Ａ）全部の前記ブロックについて、前記Ｈ．２６４規格により規定されているモード０からモード８のうちのモード３及びモード７以外のモードによりイントラ予測させ、（Ｂ）１６個の前記ブロックを、位置（０，０），（１，０），（０，１），（２，０），（１，１），（３，０），（２，１），（０，２），（３，１），（１，２），（０，３），（２，２），（１，３），（３，２），（２，３），（３，３）の順番にイントラ予測させる。
【００６８】
本発明の画像符号化装置は、一つのマクロブロックから複数個に分割された全部のブロックそれぞれについて、直交変換、量子化、逆量子化、逆直交変換、及びイントラ予測を行なう装置であって、（ａ）前記全部のブロックについて、イントラ予測に用いられる、Ｈ．２６４規格により規定されている複数のモードの一部を用いて、（ｂ）前記Ｈ．２６４規格により規定されているラスタースキャンの順番で、前記全部のブロックをイントラ予測させる制御手段を備える。
【００６９】
例えば、前記マクロブロックは、１６画素×１６ラインの画素により構成されており、前記ブロックは、４画素×４ラインの画素により構成されており、前記マクロブロックにおける各前記ブロックの位置が、前記マクロブロックの左及び上を基準にして、（Ｘ，Ｙ）｛Ｘ，Ｙ＝０，１，２，３｝と表現される場合、前記制御手段は、（Ａ）位置（０，１），（２，１），（０，３），及び（２，３）の前記ブロックについては、前記Ｈ．２６４規格により規定されているモード０からモード８のうちのモード３及びモード７以外のモードによりイントラ予測させ、（Ｂ）位置（１，０），（３，０），（１，１），（３，１），（１，２），（３，２），（１，３），及び（３，３）の前記ブロックについては、前記Ｈ．２６４規格により規定されているモード０、モード３及びモード７によりイントラ予測させ、（Ｃ）位置（０，０），（２，０），（０，２），及び（２，２）の前記ブロックについては、前記Ｈ．２６４規格により規定されているモード０からモード８によりイントラ予測させ、（Ｄ）１６個の前記ブロックを、位置（０，０），（１，０），（０，１），（１，１），（２，０），（３，０），（２，１），（３，１），（０，２），（１，２），（０，３），（１，３），（２，２），（３，２），（２，３），（３，３）の順番にイントラ予測させる。
【００７０】
本発明は、本発明の画像符号化装置の特徴的な構成手段をステップとする画像符号化方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したり、上記特徴的な構成手段を含む集積回路として実現することもできる。上記のプログラムは、ＣＤ−ＲＯＭ等の記録媒体や通信ネットワーク等の伝送媒体を介して流通させることもできる。
【発明の効果】
【００７１】
本発明は、イントラ予測の並列化（パイプライン化）処理を可能にし、かつ、Ｈ．２６４の規格に準拠した画像復号化装置が復号化することができる符号化データを出力する画像符号化装置を提供することができる。
【００７２】
すなわち、本発明によれば、イントラ予測処理の高速化が実現される。
【図面の簡単な説明】
【００７３】
【図１】実施の形態の画像符号化装置の構成を示すブロック図である。
【図２】Ｈ．２６４画像符号化においてマクロブロック内のブロックを符号化処理する順番を説明するための図である。
【図３】マクロブロック内におけるイントラ４×４予測のブロックの位置情報を座標（Ｘ、Ｙ）で表す場合を説明するための図である。
【図４】マクロブロック内のブロックの処理の順番等を説明するための図である。
【図５】実施の形態における画像符号化でマクロブロック内のブロックを規格外の順番で符号化処理した場合の出力データを規格のデフォルトの順番に抜き出して出力する方法を説明するための図である。
【図６】実施の形態における第１のイントラ予測の処理条件等を説明するための図である。
【図７】実施の形態における第１のイントラ予測の処理プロセスを説明するためのフローチャートである。
【図８】実施の形態における第２のイントラ予測の処理条件等を説明するための図である。
【図９】実施の形態における第２のイントラ予測の処理プロセスを説明するためのフローチャートである。
【図１０】実施の形態における第３のイントラ予測の処理条件等を説明するための図である。
【図１１】Ｈ．２６４規格に従う画像符号化装置の一部の構成を示すブロック図である。
【図１２】４：２：０フォーマットの１ピクチャの映像信号を説明するための図である。
【図１３】４：２：０フォーマットの１マクロブロックの映像信号を説明するための図である。
【図１４】４：２：０フォーマットの１マクロブロックの直交変換ブロックを説明するための図である。
【図１５】Ｈ．２６４画像符号化における輝度信号のイントラ４×４予測を説明するための図である。
【図１６】Ｈ．２６４画像符号化における輝度信号のイントラ１６×１６予測を説明するための図である。
【図１７】Ｈ．２６４画像符号化においてイントラ予測するマクロブロック内のブロックを処理する順番を説明するための図と、イントラ予測した場合にパイプラン化の妨げとなるブロックとその処理時系列を説明するための図とである。
【図１８】従来の画像符号化において、イントラ予測する際に参照できない画素値を固定値で代用又は２つ離れたブロックからコピーして代用することを説明するための図である。
【図１９】特許文献１により開示されている画像符号化装置の構成を示すブロック図である。
【発明を実施するための形態】
【００７４】
以下に、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００７５】
図１は、実施の形態の画像符号化装置の構成を示すブロック図である。図１では、説明を容易にするため、イントラ予測に関わる構成部分のみが示されている。すなわち図１では、動き予測部、イントラ予測と動き予測との何れか一方を選択する選択部、及びデブロックフィルタ等は省略されている。
【００７６】
図１に示すように、実施の形態の画像符号化装置は、ブロック分割部１１と、減算部１２と、直交変換部（Ｔ）１３と、量子化部（Ｑ）１４と、符号化部１５と、逆量子化部（ｉＱ）１６と、逆直交変換部（ｉＴ）１７と、加算部１８と、フレームメモリ１９と、イントラ予測部（ＩＰＤ）２０と、レート制御部２１と、予測ブロック制御部２２と、整列化バッファ２３とを備えている。
【００７７】
実施の形態の画像符号化装置は、予測ブロック制御部２２と整列化バッファ２３とが追加されたこと以外、図１１に示す従来の画像符号化装置の構成と同一である。このため、実施の形態の画像符号化装置を構成する構成要素のうち、従来の画像符号化装置を構成する構成要素と同じ機能を有する構成要素には、従来の画像符号化装置を構成する構成要素に割り当てられた符号と同じ符号が割り当てられている。本実施の形態では、予測ブロック制御部２２及び整列化バッファ２３の機能及び動作を中心に説明する。
【００７８】
ブロック分割部１１は入力動画像の各ピクチャをマクロブロック（入力マクロブロック）に分割し、入力マクロブロックは減算部１２に入力される。減算部１２は、各位置の画素について、入力マクロブロックの画素値から、イントラ予測部２０によって生成されたマクロブロック（予測マクロブロック）の画素値を減算し、得られた値により構成されるマクロブロック（差分マクロブロック）を出力する。差分マクロブロックは直交変換部（Ｔ）１３に入力され、直交変換部（Ｔ）１３は差分マクロブロックを直交変換する。
【００７９】
量子化部（Ｑ）１４は、直交変換部（Ｔ）１３によって得られた各係数を、レート制御部２１から入力された量子化パラメータに従って量子化し、得られた値（量子化直交変換係数）を整列化バッファ２３及び逆量子化部（ｉＱ）１６に出力する。符号化部１５は、整列化バッファ２３からの量子化直交変換係数と、後述するイントラ予測部（ＩＰＤ）２０によって選択された予測モード番号の情報とを符号化し、ストリーム化して出力する。
【００８０】
逆量子化部（ｉＱ）１６は、量子化部（Ｑ）１４からの量子化直交変換係数を、レート制御部２１から入力された量子化パラメータに従って逆量子化し、逆直交変換部（ｉＴ）１７に供給する。逆直交変換部（ｉＴ）１７は、逆量子化部（ｉＱ）１６から供給された係数を逆直交変換し、差分マクロブロックを復元する。復元された差分マクロブロックは、イントラ予測部２０によって生成された予測マクロブロックとともに加算部１８に入力される。
【００８１】
加算部１８は、各位置の画素について、復元された差分マクロブロックの画素値と、イントラ予測部（ＩＰＤ）２０から供給された予測マクロブロックの画素値とを加算し、マクロブロック（再生マクロブロック）を生成する。この再生マクロブロックは、フレームメモリ１９に蓄積される。フレームメモリ１９に蓄積された再生マクロブロックは、イントラ予測部（ＩＰＤ）２０に供給される。
【００８２】
イントラ予測部（ＩＰＤ）２０は、フレームメモリ１９から再生マクロブロックと、再生ブロック（現在、再生されつつあるマクロブロック内で再生されたブロック）とを読み出し、後述する予測ブロック制御部２２から供給された予測ブロックの位置情報とその予測ブロックにおいて用いられる予測モードとに従って、予測ブロックを生成する。イントラ予測部（ＩＰＤ）２０は、生成された各予測モードの予測ブロックについて、その予測ブロックに対応する入力信号のブロック（対応する原画の同じ位置にある入力ブロック）に対する予測評価値を算出し、その予測評価値からベストな予測モードを選択して予測ブロックを決定する。決定された予測ブロックは加算部１８へ供給される。
【００８３】
予測評価値として、イントラ予測では、各予測モードにおける予測ブロックと入力ブロックとの誤差信号の絶対値和もしくは２乗値和、又は、誤差信号のアダマール変換後の絶対値和等によるＤｉｓｔｏｒｔｉｏｎと、その予測モードを符号化したときのビット量であるＲａｔｅとのバランスを最適化するＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ（ＲＤ）関数によって算出された値等が用いられる。
【００８４】
予測ブロック制御部２２は、イントラ予測部（ＩＰＤ）２０によって、予測対象のマクロブロックのどのブロックがイントラ予測されたのかを示す情報（ブロックの位置に関する情報と、そのブロックのイントラ処理が終了したか否かを示す情報）を取得する。また、予測ブロック制御部２２は、予測対象のマクロブロックのうちどのブロックを、どの予測モードでイントラ予測すべきかを指定する制御信号を、イントラ予測部（ＩＰＤ）２０へ出力する。更に、予測ブロック制御部２２は、マクロブロック内の各ブロックの位置情報を整列化バッファ２３へ供給する。
【００８５】
整列化バッファ２３は、マクロブロック内の処理されたブロックを、予測ブロック制御部２２から供給されるブロックの位置情報に基づいて、デフォルト（規格）の順番（図２参照）に並び替えて符号化部１５へ出力するバッファである。図２は、Ｈ．２６４規格により定められた、あるマクロブロックが１６個のブロックに分割された際の各ブロックの処理の順番を示す図である。その順番を「ラスタースキャンの順番」という。ここで、図３に示すように、マクロブロック内の１６個のブロックを４×４＿ｂｌｏｃｋ（Ｘ、Ｙ）とし、各ブロックの位置（Ｘ，Ｙ）を（０，０）〜（３，３）と定義する。このとき例えば、予測ブロック制御部２２がマクロブロック内の各ブロックを図４（Ａ）に示す順番で処理するように指定すると、図５（Ａ）の４×４＿ｂｌｏｃｋ（Ｘ，Ｙ）に示すように、処理されたブロックの順番に、各ブロックのイントラ予測情報と量子化直交変換係数とが、量子化部（Ｑ）１４から整列化バッファ２３へ蓄積される。
【００８６】
整列化バッファ２３は、予測ブロック制御部２２から供給されたマクロブロック内の各ブロックの位置情報と、整列化バッファ２３に事前に組み込まれたデフォルトの各ブロックの位置情報（図２及び図５（Ｂ）の４×４＿ｂｌｏｃｋ（Ｘ，Ｙ）参照）とに基づいて、マクロブロック単位で蓄積された各ブロックのイントラ予測情報と量子化直交変換係数とを、図５（Ａ）から図５（Ｂ）への矢印に示すように、デフォルト（規格）の順番に抜き出して符号化部１５へ出力する。
【００８７】
以下、予測ブロック制御部２２が、マクロブロック内の各ブロックをどのような順番で、かつ、どの予測モードで処理するように指示するのかを中心に、イントラ予測の符号化処理を幾つか説明する。
【００８８】
（第１のイントラ予測）
まず、図６（Ａ）に示すように、デフォルトの順番（ラスタースキャンの順番：図２参照）で、イントラ処理（ＩＰＤ）と、直交変換から復号化までの処理とを実行する場合を説明する。本明細書では、直交変換から復号化までの処理、すなわち、直交変換部（Ｔ）１３が行なう直交変換と、量子化部（Ｑ）１４が行なう量子化と、逆量子化部（ｉＱ）１６が行なう逆量子化と、逆直交変換部（ｉＴ）１７が行なう逆直交変換とを、「ＴＱｉＱｉＴ」と記載する。
【００８９】
第１のイントラ予測では、図６（Ｃ）に示すように、ＩＰＤとＴＱｉＱｉＴとがパイプライン化されるように（処理に空きが無いように）、かつ、できるだけイントラ予測の精度が低下しないように、イントラ予測するための予測モードが設定される。すなわち、図６（Ｂ）に示すように、パイプラン化が可能で、かつできるだけ多くの予測モードが使用されるように、各ブロックの予測モードが設定される。図６（Ｃ）における数字が付された各ブロックは、図６（Ａ）における同じ数字が付されたブロックを示す。
【００９０】
なお、規格内のどの予測モードを候補（選択肢）として選択するのかは画像符号化装置の実装の問題である。画像復号化装置は、画像符号化装置によって最終的に選択された予測モードに従って逆イントラ予測する。従って、画像復号化装置にＨ．２６４の規格外の機能を追加する必要はない。
【００９１】
デフォルトの順番（ラスタースキャンの順番）で１６個のブロックそれぞれをイントラ予測する場合、図６（Ｂ）に示すように、各ブロックにおける予測モードの候補（選択肢）が設定される。図３に示すように１６個それぞれのブロックの位置を（０，０）〜（３，３）と表すと、第１のイントラ予測では、図６（Ｂ）に示すように、９つの全予測モードによりイントラ予測することができるブロックは、（０，０），（０，２），（２，０）及び（２，２）の４つのブロックである。モード３とモード７とを除く７つの予測モードによりイントラ予測することができるブロックは、（０，１），（０，３），（２，１）及び（２，３）の４つのブロックである。残りの８つのブロック、すなわち、（１，０），（１，１），（１，２），（１，３），（３，０），（３，１），（３，２）及び（３，３）の８つのブロックについては、モード０、モード３、及びモード７でしかイントラ予測することができない。
【００９２】
上記のデフォルトの順番で、かつイントラ予測する予測モードが制限される場合の本実施の形態の画像符号化装置の動作を図７のフローチャートを用いて説明する。
【００９３】
ステップＳ２０１において、予測ブロック制御部２２は、デフォルトの順番で予測対象のブロックを選択し、イントラ予測のステップ２０２と、選択されたブロックに対応する原画の画素値を読み込むステップＳ２０３とへ進む。
【００９４】
ステップＳ２０２のイントラ予測では、イントラ予測部２０は、まず、図６（Ａ）に示す順番で、各ブロックについて、図６（Ｂ）に示される各予測モードにより予測ブロックを生成する。そして、イントラ予測部２０は、各予測モードの予測ブロックの画素値とステップＳ２０３で読み込まれたその予測ブロックに対応する入力信号の原画ブロックの画素値とを用いて上記予測評価値を算出し、ベストの予測モードを決定する。なお、ステップＳ２０３では、イントラ予測部２０が原画の画素値を読み込む。
【００９５】
次に、ステップＳ２０４において、減算部１２は、各位置の画素について、原画ブロックの画素値から、イントラ予測部２０によって決定されたベストな予測モードにより得られる予測ブロックの画素値を減算する。直交変換部（Ｔ）１３は、ステップＳ２０５において、減算部１２によって得られた差分ブロックを直交変換し、ステップＳ２０６において、量子化部（Ｑ）１４は、直交変換部（Ｔ）１３によって得られた直交変換係数を量子化する。量子化された直交変換係数は、整列化バッファ２３を介して符号化部１５へ入力され、ステップ２０７において、符号化部１５は量子化直交変換係数を符号化する。
【００９６】
他方、ステップＳ２０６において得られた量子化直交変換係数は、逆量子化部（ｉＱ）１６へ入力され、ステップＳ２０８において、逆量子化部（ｉＱ）１６は量子化直交変換係数を逆量子化する。ステップＳ２０９において、逆直交変換部（ｉＴ）１７は逆量子化部（ｉＱ）１６によって得られた直交変換係数を逆直交変換する。ステップＳ２１０において、加算部１８は、逆直交変換された予測ブロックの差分値と、ステップＳ２０２において得られた予測ブロックとを加算する。これにより、復号化ブロックが再構成される。再構成された復号化ブロックは、ステップ２１１においてフレームメモリ１９に蓄積される。フレームメモリ１９に蓄積された復号化ブロックは、イントラ予測部２０に供給され、ステップＳ２０２におけるイントラ予測の参照画素として使用される。
【００９７】
ステップＳ２１２において、イントラ予測部２０は予測対象のマクロブロックの全ブロックが処理（再構成）されたか否かを判定し、全ブロックが処理されていなければ（ステップＳ２１２でＮｏ）、ステップＳ２０１へ戻り、本実施の形態の画像符号化装置は残りのブロックについて上記と同様の処理を行なう。他方、全ブロックが処理されていれば（ステップＳ２１２でＹｅｓ）、本実施の形態の画像符号化装置は、次のマクロブロックについて上記の処理を行なう。
【００９８】
なお、上記第１のイントラ予測では、各ブロックはデフォルトの順番で処理されるので、整列化バッファ２３は必要ない。しかしながら、整列化バッファ２３が設けられていても、デフォルトの順番の情報が予測ブロック制御部２２から整列化バッファ２３へ供給されるので、各ブロックのデータは処理された順番（デフォルトの順番）のまま符号化部１５へ出力されることになり、何ら問題は生じない。
【００９９】
（第２のイントラ予測）
次に、図８（Ａ）に示すように、デフォルトの順番と異なる順番で、イントラ処理（ＩＰＤ）と、直交変換から復号化までの処理（ＴＱｉＱｉＴ）とを実行する場合を説明する。
【０１００】
第２のイントラ予測でも、図８（Ｃ）に示すように、ＩＰＤとＴＱｉＱｉＴとがパイプライン化されるように（処理に空きが無いように）、かつ、できるだけイントラ予測の精度が低下しないように、イントラ予測するための予測モードが設定される。すなわち、図８（Ｂ）に示すように、パイプラン化が可能で、かつできるだけ多くの予測モードが使用されるように、各ブロックの予測モードが設定される。図８（Ｃ）における数字が付された各ブロックは、図８（Ａ）における同じ数字が付されたブロックを示す。
【０１０１】
デフォルトの順番と異なる順番（ラスタースキャンの順番と異なる順番）で１６個のブロックそれぞれをイントラ予測する場合、図８（Ｂ）に示すように、各ブロックにおける予測モードの候補（選択肢）が設定される。すなわち第２のイントラ予測では、図８（Ｂ）に示すように、９つの全ての予測モードによりイントラ予測することができるブロックは、（０，０），（０，２），（１，１），（１，２），（１，３），（２，０），（２，２），（３，０），（３，１）及び（３，２）の１０個のブロックである。また、モード３とモード７とを除く７つの予測モードによりイントラ予測することができるブロックは、（０，１），（０，３），（２，１）及び（２，３）の４つのブロックである。残りの２つのブロック、すなわち、（１，０）及び（３，３）の２つのブロックについては、モード０、モード３、及びモード７でしかイントラ予測することができない。
【０１０２】
第２のイントラ予測を実行する場合、第１のイントラ予測を実行する場合に比べて、全ての予測モードによりイントラ予測することが可能なブロックが４個から１０個へと大きく増える。すなわち、第２のイントラ予測を実行する場合、第１のイントラ予測を実行する場合に比べて、イントラ予測の精度が大きく上がる。
【０１０３】
以下、上記のデフォルトの順番と異なる順番で、かつイントラ予測するための予測モードが制限される場合の本実施の形態の画像符号化装置の動作を図９のフローチャートを用いて説明する。
【０１０４】
ステップＳ３０１において、予測ブロック制御部２２は、デフォルトの順番と異なる順番で予測対象のブロックを選択し、イントラ予測のステップ３０２と、選択されたブロックに対応する原画の画素値を読み込むステップＳ３０３とへ進む。予測ブロック制御部２２は、処理するブロックの位置情報を整列化バッファ２３に出力する。
【０１０５】
ステップＳ３０２のイントラ予測では、イントラ予測部２０は、まず、図８（Ａ）に示す順番で、各ブロックについて、図８（Ｂ）に示される各予測モードにより予測ブロックを生成する。そして、イントラ予測部２０は、各予測モードの予測ブロックの画素値とステップＳ３０３で読み込まれたその予測ブロックに対応する入力信号の原画ブロックの画素値とを用いて上記予測評価値を算出し、ベストの予測モードを決定する。なお、ステップＳ３０３において、イントラ予測部２０が原画の画素値を読み込む。
【０１０６】
次に、ステップＳ３０４において、減算部１２は、各位置の画素について、原画ブロックの画素値から、イントラ予測部２０によって決定されたベストな予測モードにより得られる予測ブロックの画素値を減算する。直交変換部（Ｔ）１３は、ステップＳ３０５において、減算部１２によって得られた差分ブロックを直交変換し、ステップＳ３０６において、量子化部（Ｑ）１４は、直交変換部（Ｔ）１３によって得られた係数を量子化する。ステップＳ３０７において、量子化された直交変換係数は、ブロックを一つまとまりの単位として整列化バッファ２３に蓄積される。
【０１０７】
他方、ステップＳ３０６において得られた予測ブロックの差分値の直交変換係数（量子化直交変換係数）は、逆量子化部（ｉＱ）１６へ入力され、ステップＳ３０８において、逆量子化部（ｉＱ）１６は量子化直交変換係数を逆量子化する。ステップＳ３０９において、逆直交変換部（ｉＴ）１７は逆量子化部（ｉＱ）１６によって得られた直交変換係数を逆直交変換する。ステップＳ３１０において、加算部１８は、逆直交変換された予測ブロックの差分値と、ステップＳ３０２において得られた予測ブロックとを加算する。これにより、復号化ブロックが再構成される。再構成された復号化ブロックは、ステップ３１１においてフレームメモリ１９に蓄積される。フレームメモリ１９に蓄積された復号化ブロックは、イントラ予測部２０に供給され、ステップＳ３０２におけるイントラ予測の参照画素として使用される。
【０１０８】
ステップＳ３１２において、イントラ予測部２０は予測対象のマクロブロックの全ブロックが処理（再構成）されたか否かを判定し、全ブロックが処理されていなければ（ステップＳ３１２でＮｏ）、ステップＳ３０１へ戻り、本実施の形態の画像符号化装置は残りのブロックについて上記と同様の処理を行なう。他方、全ブロックが処理されていれば（ステップＳ３１２でＹｅｓ）、ステップＳ３１３へ進むとともに、本実施の形態の画像符号化装置は、次のマクロブロックについて上記の処理を行なう。
【０１０９】
ステップＳ３１３では、整列化バッファ２３は、ステップＳ３０７においてブロック単位で蓄積された予測ブロックの差分値の量子化直交変換係数を、デフォルトの順番に抜き出して、符号化部１５に出力する。ステップＳ３１４では、符号化部１５は、デフォルトの順番に量子化直交変換係数を符号化する。
【０１１０】
ところで、上記の第１のイントラ予測及び第２のイントラ予測では、ブロック毎に予測モードの数及び内容が異なる。処理の統一性の観点から、全てのブロックについて同じ予測モードを設定する場合、以下の第３のイントラ予測を用いることができる。
【０１１１】
（第３のイントラ予測）
第３のイントラ予測では、図１０（Ａ）に示すデフォルトの順番と異なる順番で各ブロックがイントラ予測され、図１０（Ｃ）に示すように、ＩＰＤとＴＱｉＱｉＴとがパイプライン化されるように（処理に、２箇所空きが生じる）、図１０（Ｂ）に示すように各ブロックの予測モードが設定される。
【０１１２】
デフォルトの順番と異なる順番で、図１０（Ｂ）に示す予測モードにより１６個のブロックそれぞれをイントラ予測する場合、９つの全予測モードによりイントラ予測することができるブロックは存在しない。しかしながら、全ブロックについて、モード３とモード７とを除く７つの予測モードによりイントラ予測することができる。但し、（０，１）及び（３，３）の２つのブロックがパイプライン化の妨げとなる。
【０１１３】
第３のイントラ予測は、整列化バッファ２３が、図１０（Ｂ）に示す予測モードにより、図１０（Ａ）に示すデフォルトの順番と異なる順番で各ブロックをイントラ予測させることにより、実行される。整列化バッファ２３は、処理されたブロックをデフォルトの順番に並び替えて符号化部１５へ出力する。
【産業上の利用可能性】
【０１１４】
本発明の画像符号化装置は、ピクチャをブロック単位で符号化する画像符号化装置に適しており、具体的には、動画像データを配信するウェブサーバ、動画像データを受信する端末装置、動画像データを記録再生可能なデジタルカメラ、カメラ付き携帯電話機、ＤＶＤ録画／再生機、ＰＤＡ、及びパーソナルコンピュータ等に適している。
【符号の説明】
【０１１５】
１１  ブロック分割部
１２  減算部
１３  直交変換部（Ｔ）
１４  量子化部（Ｑ）
１５  符号化部
１６  逆量子化部（ｉＱ）
１７  逆直交変換部（ｉＴ）
１８  加算部
１９  フレームメモリ
２０  イントラ予測部（ＩＰＤ）
２１  レート制御部
２２  予測ブロック制御部
２３  整列化バッファ
【図１】
2011142699.tif 000003
【図２】
2011142699.tif 000004
【図３】
2011142699.tif 000005
【図４】
2011142699.tif 000006
【図５】
2011142699.tif 000007
【図６】
2011142699.tif 000008
【図７】
2011142699.tif 000009
【図８】
2011142699.tif 000010
【図９】
2011142699.tif 000011
【図１０】
2011142699.tif 000012
【図１１】
2011142699.tif 000013
【図１２】
2011142699.tif 000014
【図１３】
2011142699.tif 000015
【図１４】
2011142699.tif 000016
【図１５】
2011142699.tif 000017
【図１６】
2011142699.tif 000018
【図１７】
2011142699.tif 000019
【図１８】
2011142699.tif 000020
【図１９】
2011142699.tif 000021