(57)【要約】【課題】圧縮効率が高いイントラ予測符号化を実現する。【解決手段】予測モードは、上方向、下方向、左方向、右方向、左上方向、右下方向、右上方向または左下方向から予測する８種類の予測モードを含む複数の予測モードから選択されており、かつ各ブロックが符号化される際にそのブロックが参照するブロックが符号化済みとなっているよう、複数のブロックの符号化順が決定されている。ブロック位置特定部２０８は、複数のブロックの符号化順を、連続する２つのブロックの前ブロックの位置と後ブロックの予測モードにより特定される方向により特定し、各ブロックの位置を特定する。その際、上方向、下方向、左方向または右方向から予測する予測モード以外の予測モードのブロックの場合、そのブロックの符号化データに付加されている、そのブロックが参照するブロックのうち１つを特定するための情報にもとづいて、そのブロックの位置を特定する。【選択図】図１２
2012134822.tif 000002
【特許請求の範囲】
【請求項１】
イントラ予測符号化された画像領域を構成する、符号化順が非固定の複数のブロックの、予測モードが付加された符号化データを復号する復号部と、
前記複数のブロックの符号化順を、連続する２つのブロックの前ブロックの位置と後ブロックの予測モードにより特定される方向により特定し、各ブロックの位置を特定するブロック位置特定部と、
前記ブロック位置特定部により特定された各ブロックの位置に、そのブロックの復号データを配置するブロック配置部と、を備え、
前記予測モードは、上方向、下方向、左方向、右方向、左上方向、右下方向、右上方向または左下方向から予測する８種類の予測モードを含む複数の予測モードから選択されており、かつ各ブロックが符号化される際にそのブロックが参照するブロックが符号化済みとなっているよう、前記複数のブロックの符号化順が決定されており、
前記ブロック位置特定部は、上方向、下方向、左方向または右方向から予測する予測モード以外の予測モードのブロックの場合、そのブロックの符号化データに付加されている、そのブロックが参照するブロックのうち１つを特定するための情報にもとづいて、そのブロックの位置を特定する、
ことを特徴とする画像復号装置。
【請求項２】
イントラ予測符号化された画像領域を構成する、符号化順が非固定の複数のブロックの、予測モードが付加された符号化データを復号する復号ステップと、
前記複数のブロックの符号化順を、連続する２つのブロックの前ブロックの位置と後ブロックの予測モードにより特定される方向により特定し、各ブロックの位置を特定するブロック位置特定ステップと、
前記ブロック位置特定ステップにより特定された各ブロックの位置に、そのブロックの復号データを配置するブロック配置ステップと、を備え、
前記予測モードは、上方向、下方向、左方向、右方向、左上方向、右下方向、右上方向または左下方向から予測する８種類の予測モードを含む複数の予測モードから選択されており、かつ各ブロックが符号化される際にそのブロックが参照するブロックが符号化済みとなっているよう、前記複数のブロックの符号化順が決定されており、
前記ブロック位置特定ステップは、上方向、下方向、左方向または右方向から予測する予測モード以外の予測モードのブロックの場合、そのブロックの符号化データに付加されている、そのブロックが参照するブロックのうち１つを特定するための情報にもとづいて、そのブロックの位置を特定する、
ことを特徴とする画像復号方法。
【請求項３】
イントラ予測符号化された画像領域を構成する、符号化順が非固定の複数のブロックの、予測モードが付加された符号化データを復号する復号処理と、
前記複数のブロックの符号化順を、連続する２つのブロックの前ブロックの位置と後ブロックの予測モードにより特定される方向により特定し、各ブロックの位置を特定するブロック位置特定処理と、
前記ブロック位置特定処理により特定された各ブロックの位置に、そのブロックの復号データを配置するブロック配置処理と、をコンピュータに実行させ、
前記予測モードは、上方向、下方向、左方向、右方向、左上方向、右下方向、右上方向または左下方向から予測する８種類の予測モードを含む複数の予測モードから選択されており、かつ各ブロックが符号化される際にそのブロックが参照するブロックが符号化済みとなっているよう、前記複数のブロックの符号化順が決定されており、
前記ブロック位置特定処理は、上方向、下方向、左方向または右方向から予測する予測モード以外の予測モードのブロックの場合、そのブロックの符号化データに付加されている、そのブロックが参照するブロックのうち１つを特定するための情報にもとづいて、そのブロックの位置を特定する、
ことを特徴とする画像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、イントラ予測符号化を用いて符号化された動画像データを復号する画像復号装置、画像復号方法およびそのプログラムに関する。
【背景技術】
【０００２】
近年、従来の符号化技術の符号化効率を大幅に向上させたＭＰＥＧ−４ ＡＶＣ（以後、ＡＶＣという）などの新たな符号化方式が用いられている。これらの符号化方式では、画面内予測符号化（以後、イントラ予測符号化という）を行う際に、符号化の処理対象となっている矩形領域（以後、ブロックという）の周囲に存在する符号化済みブロックに対して局部復号を行うことで復号信号を生成する。そして、この復号信号を用いてイントラ予測を行うことで予測信号を生成する。その後、符号化対象となっているブロックの信号と、生成した予測信号との差分によって得られる残差信号に対して、所定の直交変換および量子化を行うことで、符号化効率の改善を図っている（たとえば、特許文献１参照）。
【０００３】
ＡＶＣのイントラ符号化では、イントラ予測を行う単位として、「イントラ４×４予測」および「イントラ１６×１６予測」の２種類のブロックサイズが用意されている。また、イントラ４×４予測では９種類、イントラ１６×１６予測では４種類の予測モードが用意されており、ブロック毎に予測モードを選択することが可能である。
【０００４】
図１は、ＡＶＣのイントラ４×４予測における画素の配置を示す図である。図１にて、画素ａ−ｐは予測対象画素であり、１つのブロックを構成する。画素Ｍは当該対象ブロックの左上の隣接ブロックの右下の１画素である。画素Ａ−Ｄは当該対象ブロックの上に隣接するブロックの下端の４画素である。画素Ｅ−Ｈは当該対象ブロックの右上に隣接するブロックの下端の４画素である。画素Ｉ−Ｌは当該対象ブロックの左に隣接するブロックの右端の４画素である。これらの画素Ａ−Ｍは、符号化済みブロックに対して局部復号を行うことで復号信号を得ることが可能であり、これら隣接画素の復号信号から予測モードに従い予測信号を生成する。
【０００５】
図２は、ＡＶＣのイントラ４×４予測における予測方向を示す図である。上述したようにＡＶＣにおけるイントラ４×４予測では、９種類の予測モード（予測モード０−８）が用意されている。予測モード２は図１に示した画素Ａ−Ｄおよび画素Ｉ−Ｌの合計８画素の平均値で対象ブロック内の４×４画素すべてを予測するモードである。予測モード０、１、３−８は、それぞれ図２に示す予測方向に対応する。
【０００６】
図３（ａ）−（ｉ）は、ＡＶＣのイントラ４×４予測における予測方向および予測モードを示す図である。予測信号は、局部復号によって得られた隣接画素値を用いて規定された演算式により算出される。その際、選択された予測モードに応じた隣接画素値が用いられる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２００５−５２８０４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ＡＶＣの符号化では、マクロブロック単位のラスタ順で処理が行われる。イントラ４×４予測においても同様にマクロブロック単位のラスタ順で処理が行われ、さらにマクロブロック内を４×４画素のブロックに分割したブロック単位で予測が行われる。
【０００９】
図４は、ＡＶＣのイントラ４×４予測におけるマクロブロック内のブロックの符号化順序を示す図である。ここで、ＡＶＣの既存のイントラ予測では、予測対象ブロックの左、上、右上および左上のブロックが符号化済みのブロックであり、これらのブロック以外のブロックから局部復号信号を得ることはできない。つまり、これらのブロック以外のブロックを用いてイントラ予測を行うことはできない。よって、ＡＶＣの既存のイントラ予測における予測方向は図２に示すような限定された方向となり、必ずしも十分な予測結果が得られないという難しい面があった。
【００１０】
本発明はこうした状況に鑑みなされたものであり、その目的は、圧縮効率が高いイントラ予測符号化を可能とする技術を提供することにある。
【課題を解決するための手段】
【００１１】
本発明のある態様の画像復号装置は、イントラ予測符号化された画像領域を構成する、符号化順が非固定の複数のブロックの、予測モードが付加された符号化データを復号する復号部と、複数のブロックの符号化順を、連続する２つのブロックの前ブロックの位置と後ブロックの予測モードにより特定される方向により特定し、各ブロックの位置を特定するブロック位置特定部と、ブロック位置特定部により特定された各ブロックの位置に、そのブロックの復号データを配置するブロック配置部と、を備える。予測モードは、上方向、下方向、左方向、右方向、左上方向、右下方向、右上方向または左下方向から予測する８種類の予測モードを含む複数の予測モードから選択されており、かつ各ブロックが符号化される際にそのブロックが参照するブロックが符号化済みとなっているよう、複数のブロックの符号化順が決定されており、ブロック位置特定部は、上方向、下方向、左方向または右方向から予測する予測モード以外の予測モードのブロックの場合、そのブロックの符号化データに付加されている、そのブロックが参照するブロックのうち１つを特定するための情報にもとづいて、そのブロックの位置を特定する。
【００１２】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラム等の間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１３】
本発明によれば、圧縮効率が高いイントラ予測符号化を実現することができる。
【図面の簡単な説明】
【００１４】
【図１】ＡＶＣのイントラ４×４予測における画素の配置を示す図である。
【図２】ＡＶＣのイントラ４×４予測における予測方向を示す図である。
【図３】図３（ａ）−（ｉ）は、ＡＶＣのイントラ４×４予測における予測方向および予測モードを示す図である。
【図４】ＡＶＣのイントラ４×４予測におけるマクロブロック内のブロックの符号化順序を示す図である。
【図５】本発明の実施の形態１に係る画像符号化装置の概略構成を示す図である。
【図６】実施の形態１に係るイントラ４×４予測における予測方向を示す図である。
【図７】イントラ予測部における予測モードの決定処理の一例を示すフローチャートである。
【図８】図７のＭＢ評価値算出処理の一例を示すフローチャートである。
【図９】図９（ａ）−（ｃ）は、符号化順制御部による符号化順制御の具体例を説明するための図である。
【図１０】図１０（ａ）−（ｃ）は、処理ブロックがブロック０、ネクストモードが予測モード７である場合の候補ブロックリストを示す図である。
【図１１】符号化順制御部による符号化順制御の動作を説明するためのフローチャートである。
【図１２】本発明の実施の形態２に係る画像復号装置２００の概略構成を示す図である。
【図１３】ブロック位置特定部によるブロック位置特定制御の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００１５】
（実施の形態１）
図５は、本発明の実施の形態１に係る画像符号化装置１００の概略構成を示す図である。図５では、説明を単純化するため、動き予測部、デブロックフィルタなどを省略してイントラ予測に関わる構成部分のみを描いている。本発明の実施の形態では、イントラ予測を行う際の処理単位を４×４画素のブロックとするが、そのブロックサイズは特に限定されるものではなく、８×８画素、１６×１６画素などであってもよい。
【００１６】
実施の形態１に係る画像符号化装置１００は、入力画像メモリ１０１、減算部１０２、直交変換部１０３、量子化部１０４、符号化部１０５、逆量子化部１０６、逆直交変換部１０７、加算部１０８、復号画像メモリ１０９、イントラ予測部１１０、符号化順制御部１１１およびブロック整列部１１２を備える。
【００１７】
これらの構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のＬＳＩで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。また、ファームウェアやソフトウェアとして上記機能を実現するプログラムを、コンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【００１８】
また、図５に示す画像符号化装置１００の構成は、既存のＡＶＣに準拠した画像符号化装置と比較し、符号化順制御部１１１およびブロック整列部１１２が追加された構成である。
【００１９】
入力画像メモリ１０１は、外部から入力される画像データを一時的に蓄積する。蓄積された画像データは、処理単位毎に減算部１０２おびイントラ予測部１１０に入力される。減算部１０２は、入力画像メモリ１０１から入力される画像データの画素値から、イントラ予測部１１０により生成される予測値を減算し、得られた差分データを直交変換部１０３に出力する。
【００２０】
直交変換部１０３は、減算部１０２から入力される差分データに直交変換（たとえば、離散コサイン変換）を施し、得られた直交変換係数を量子化部１０４に出力する。量子化部１０４は、直交変換部１０３から入力される直交変換係数を所定の量子化パラメータに従って量子化し、量子化された直交変換係数を逆量子化部１０６およびブロック整列部１１２に出力する。
【００２１】
ブロック整列部１１２は、量子化部１０４から入力される量子化された直交変換係数と、イントラ予測部１１０から入力される予測モード情報を、符号化順制御部１１１から入力される符号化順情報に従って並び替え、符号化部１０５に出力する。なお、当該予測モード情報および並べ替え情報の詳細は後述する。
【００２２】
符号化部１０５は、符号化順制御部１１１により決定された符号化順に従って、イントラ予測符号化すべき画像領域（本実施の形態ではマクロブロック）を構成する各ブロックごとに予測モードが付加された符号化データを生成する。すなわち、ブロック整列部１１２から入力される量子化された直交変換係数および予測モード情報を符号化し、符号化ストリームとして外部に出力する。その際、エントロピー符号化を用いることができる。ＡＶＣでは、エントロピー符号化として、ハフマン符号をベースとした可変長符号化(ＶＬＣ;Variable Length Coding)と、算術符号化のいずれかを選択できる。
【００２３】
逆量子化部１０６は、量子化部１０４から入力される量子化された直交変換係数を、所定の量子化パラメータに従って逆量子化し、逆量子化された直交変換係数を逆直交変換部１０７に出力する。逆直交変換部１０７は、入力された逆量子化された直交変換係数に逆直交変換を施し、復号差分データとして加算部１０８に出力する。加算部１０８は、逆直交変換部１０７から入力される復号差分データの画素値と、イントラ予測部１１０から入力される予測値とを加算して復号画像データを生成し、復号画像メモリ１０９に蓄積する。復号画像メモリ１０９に蓄積される復号画像データの画素値は、イントラ予測部１１０に供給される。
【００２４】
イントラ予測部１１０は、復号画像メモリ１０９から供給される復号画像データの画素値と、入力画像メモリ１０１から供給される入力画像データの画素値を用いて、予測モードを決定する。より具体的には、イントラ予測部１１０は、イントラ予測符号化すべき画像領域（本実施の形態ではマクロブロック）を構成する複数のブロックの各予測モードを、上方向、下方向、左方向、右方向、左上方向、右下方向、右上方向または左下方向から予測する８種類の予測モードを含む複数の予測モードから選択する。この予測モードの詳細は後述する。当該画像領域が１６×１６画素のマクロブロックである場合、当該画像領域は４×４画素のブロック１６個で構成されることになる。
【００２５】
イントラ予測部１１０は、予測モード情報を符号化順制御部１１１およびブロック整列部１１２に出力する。また、決定した予測モードに基づく予測値を減算部１０２に出力する。
【００２６】
符号化順制御部１１１は、イントラ予測部１１０から入力される予測モードに従って、符号化順を決定し、符号化順情報としてブロック整列部１１２に出力する。符号化順制御部１１１は、上記画像領域を構成する各ブロックが符号化される際にそのブロックが参照する全ブロックが符号化済みとなっているよう、当該画像領域を構成する複数のブロックの符号化順を決定する。その際、上方向、下方向、左方向または右方向から予測する予測モードのブロックの場合、符号化順を示す情報を付加しないよう制御し、それら以外の予測モードのブロックの場合、そのブロックの予測モードに、そのブロックが参照する複数のブロックのうち１つを特定するための情報を付加するよう制御する。ここで、複数のブロックの符号化順は、連続する２つのブロックの前ブロックの位置と後ブロックの予測モードにより特定される方向により規定される。
【００２７】
図６は、実施の形態１に係るイントラ４×４予測における予測方向を示す図である。実施の形態１では、上方向からの予測（予測モード０）、右上方向からの予測（予測モード１）、右方向からの予測（予測モード２）、右下方向からの予測（予測モード３）、下方向からの予測（予測モード４）、左下方向からの予測（予測モード５）、左方向からの予測（予測モード６）および左上方向からの予測（予測モード７）の８種類の予測モードが用意されている。
【００２８】
実施の形態１に係る予測モード０は、図２の予測モード０、図３（ａ）に対応する。実施の形態１に係る予測モード１は、図２の予測モード３、図３（ｄ）に対応する。実施の形態１に係る予測モード２は、図２、図３に示した既存のＡＶＣの予測モードには存在しない。なお、図２の予測モード１、図３（ｂ）の逆方向予測に対応する。実施の形態１に係る予測モード３も、図２、図３に示した既存のＡＶＣの予測モードには存在しない。なお、図２の予測モード４、図３（ｅ）の逆方向予測に対応する。実施の形態１に係る予測モード４も、図２、図３に示した既存のＡＶＣの予測モードには存在しない。なお、図２の予測モード０、図３（ａ）の逆方向予測に対応する。実施の形態１に係る予測モード５も、図２、図３に示した既存のＡＶＣの予測モードには存在しない。なお、図２の予測モード３、図３（ｄ）の逆方向予測に対応する。実施の形態１に係る予測モード６は、図２の予測モード１、図３（ｂ）に対応する。実施の形態１に係る予測モード７は、図２の予測モード４、図３（ｅ）に対応する。
【００２９】
このように、実施の形態１では全方位からの予測を可能とする。その代わり、ブロックの符号化順を通常のラスタ順から変更する必要がある。既存のＡＶＣでは、通常のラスタ順で符号化するために、対象ブロックの右、下、右下方向に位置する隣接ブロックを参照しない予測モードに限定している。
【００３０】
なお、図２に示すように実施の形態１に係る予測モードが、図２の予測モード５−８およびその逆方向の予測モードを規定していないのは、主に、参照ブロックの数を最大で３に限定する趣旨である。また、予測モードの種類を増やしすぎることによる演算量の増大を抑制する趣旨もある。したがって、演算量の増大を許容できる条件では、予測モードの種類をさらに増やしてもよい。
【００３１】
図７は、イントラ予測部１１０における予測モードの決定処理の一例を示すフローチャートである。この例では、１６×１６画素のマクロブロック内に構成される４×４画素の１６個のブロックの符号化順を決定する処理について説明する。
【００３２】
イントラ予測部１１０は、マクロブロック内の４×４画素のブロック１６個の符号化順を更新する（Ｓ１０）。初回は所定の符号化順（たとえば、ラスタ順）でよい。２回目以降は符号化順を更新する。ここでは、ブロックが１６個であるため、１６！＝２０９２２７８９８８８０００通りの組み合わせがある。
【００３３】
イントラ予測部１１０は、後述するＭＢ評価値を算出する（Ｓ１１）。なお、イントラ予測部１１０は、算出したＭＢ評価値と、「ＭＢ評価値ミニマム値」とを比較し（Ｓ１２）、当該ＭＢ評価値が「ＭＢ評価値ミニマム値」未満のとき（Ｓ１２のＹ）、「ＭＢ評価値ミニマム値」を当該ＭＢ評価値に更新するとともに、当該ＭＢ評価値が算出されたときの、符号化順、各ブロックの予測モードおよび予測値を保持する（Ｓ１３）。なお、「ＭＢ評価値ミニマム値」の初期値は扱う値の最大値に設定される。当該ＭＢ評価値が「ＭＢ評価値ミニマム値」以上のとき（Ｓ１２のＮ）、ステップＳ１３をスキップする。イントラ予測部１１０は、全ての符号化順を処理したか否かを判定し（Ｓ１４）、全てを処理していなければ（Ｓ１４のＮ）、ステップＳ１０に戻り、処理していれば（Ｓ１４のＹ）、予測モード決定処理を終了する。
【００３４】
図８は、図７のＭＢ評価値算出処理の一例を示すフローチャートである。図７のステップＳ１０にて更新された符号化順に従い、イントラ予測部１１０はマクロブロック内のブロック位置を更新する（Ｓ１１０）。初回は符号化順で１番目のブロックが選択される。つぎに、対象ブロックの予測モードを更新する（Ｓ１１１）。初回は、たとえば予測モード０に設定される。
【００３５】
イントラ予測部１１０は、更新後の予測モードが使用可能か否か判定する（Ｓ１１２）。すなわち、その予測モードで参照元となる画素が復号済みであるか否かを判定する。使用不可であれば（Ｓ１１２のＮ）、ステップＳ１１１に戻る。使用可能であれば（Ｓ１１２のＹ）、イントラ予測部１１０は、その予測モードにおける予測値を算出する（Ｓ１１３）。そして、ブロック評価値を算出する（Ｓ１１４）。ここで、ブロック評価値には予測値と入力画像の画素値との誤差値の、絶対値和または二乗和を用いることが一般的であるが、符号化したときのビット量をも考慮したレート歪関数を用いてもよい。
【００３６】
イントラ予測部１１０は、算出したブロック評価値と、「ブロック評価値ミニマム値」とを比較し（Ｓ１１５）、当該ブロック評価値が「ブロック評価値ミニマム値」未満のとき（Ｓ１１５のＹ）、「ブロック評価値ミニマム値」を当該ブロック評価値に更新するとともに、そのときの予測モードを保持し、そのときの予測値を加算部１０８に出力して復号処理を行う（Ｓ１１６）。なお、「ブロック評価値ミニマム値」の初期値は扱う値の最大値に設定される。当該ブロック評価値が「ブロック評価値ミニマム値」以上のとき（Ｓ１１５のＮ）、ステップＳ１１６をスキップする。
【００３７】
イントラ予測部１１０は、全ての予測モードを処理したか否かを判定し（Ｓ１１７）、全てを処理していなければ（Ｓ１１７のＮ）、ステップＳ１１１に戻り、処理していれば（Ｓ１１７のＹ）、「ブロック評価値ミニマム値」内のブロック評価値を、「ＭＢ評価値」に加算する（ステップＳ１１８）。なお、「ＭＢ評価値」の初期値はゼロに設定される。イントラ予測部１１０は、全てのブロックを処理したか否かを判定し（Ｓ１１９）、全てを処理していなければ（Ｓ１１９のＮ）、ステップＳ１１０に戻り、処理していれば（Ｓ１１９のＹ）、図７のステップＳ１１に戻る。
【００３８】
なお、図７、８に示した予測モードの決定方法は、演算量を無視して全てのパターンの評価値を算出して、各ブロックの最適な予測モードを探索する例である。この点、様々なアルゴリズムを利用して演算量を低減しつつ、高精度に予測モードを決定する手法が存在することは当業者であれば理解されるところである。たとえば、隣接するマクロブロックとの相関などを用いて、予測モードの選択候補を絞り込むなどの手法が考えられる。
【００３９】
図９（ａ）−（ｃ）は、符号化順制御部１１１による符号化順制御の具体例を説明するための図である。図９（ａ）はマクロブロック内の各ブロックを番号で定義した図である。この番号は図４に示したように基本となる符号化順またはスキャン順でもある。また、フレーム内のマクロブロックの符号化順は一般的なラスタ順を前提とする。
【００４０】
図９（ｂ）は、イントラ予測部１１０により決定されたマクロブロック内の各ブロックの予測モードの一例を示す図である。すなわち、ブロック０は予測モード０、ブロック１は予測モード５、ブロック２は予測モード７、・・・、ブロック１５は予測モード６である。
【００４１】
まず、符号化順制御部１１１は、現在処理対象となっているブロック（以下適宜、処理ブロックという）の初期値をブロック０とし、ブロック０を符号化順決定済みとする。つぎに、当該処理ブロックに隣接する符号化順未決定のブロックであって、当該処理ブロックを参照するブロックのうち、参照するブロックが全て処理済みのブロック（以下、条件充足ブロックという）を探索する。参照するブロックが全て処理済みとは、隣接マクロブロックに含まれる参照すべきブロックが符号化済み、および対象マクロブロック内の参照すべきブロックが符号化順決定済みであることを指す。参照すべきブロックがそれらの一方の場合、その一方が符号化済みまたは符号化順決定済みであればよい。なお、上記探索は図９（ａ）に示したスキャン順で実行される。
【００４２】
図９（ｂ）では、ブロック０を参照する隣接ブロックはブロック１およびブロック２である。ブロック３はブロック２のみを参照するため、ブロック０を参照する隣接ブロックに該当しない。ブロック１の予測モードは予測モード５であるため、ブロック１が参照するブロックはブロック０、ブロック２およびブロック３である。このうち、ブロック２およびブロック３が符号化順決定済みでないため、上記条件充足ブロックに該当しない。
【００４３】
一方、ブロック２の予測モードは７であり、ブロック２が参照するブロックはブロック０および左隣のマクロブロックに含まれるブロックである。ここで、ブロック０は符号化順決定済みであり、左隣のマクロブロックは既に符号化済みであるから、ブロック２は上記条件充足ブロックとなる。これにより、符号化順でブロック０に後続するブロックはブロック２に決定される。以下、後続するブロックに決定されたブロックをネクストブロック、およびネクストブロックの予測モードをネクストモードと呼ぶ。なお、上記条件充足ブロックが複数存在する場合、スキャン順で最も早いブロックをネクストブロックとする。
【００４４】
なお、処理ブロックに隣接するブロックに、条件充足ブロックが存在しない場合、参照するブロックが全て処理済みのブロックのうち、スキャン順で最も早いブロックをネクストブロックとする。図９（ｂ）では、ブロック０、２、３、１がこの順番で符号化順決定済みとなり、処理ブロックがブロック１となる。ブロック１に隣接する符号化順未決定のブロックに、ブロック１を参照するブロックは存在しない。すなわち、ブロック４、６はブロック１を参照しない。そこで、符号化順未決定のブロックであって、参照するブロックが全て処理済みブロックのうち、スキャン順で最も早いブロックを探索する。そのブロックはブロック４であるから、ネクストブロックはブロック４、ネクストモードは０となる。
【００４５】
図９（ｃ）は、以上の規則に従い決定された、図９（ｂ）に示した予測モードを持つブロック０−１５の符号化順を示す図である。すなわち、符号化順は、ブロック０→ブロック２→ブロック３→ブロック１→ブロック４→ブロック６→ブロック１２→ブロック５→ブロック７→ブロック１３→ブロック８→ブロック１０→ブロック１１→ブロック１４→ブロック９→ブロック１５となる。
【００４６】
つぎに、予測モードに付加される付加情報について説明する。ネクストモードが決定すると、符号化順制御部１１１は、処理ブロックを参照ブロックとするブロック位置を導出し、スキャン順に候補ブロックリストとする。図９（ｂ）の２番目の符号化順決定処理では、処理ブロックがブロック０、クストモードが予測モード７、およびネクストブロックがブロック２である。
【００４７】
図１０（ａ）−（ｃ）は、処理ブロックがブロック０、ネクストモードが予測モード７である場合の候補ブロックリストを示す図である。網点で描かれたブロックがネクストブロック候補である。すなわち、処理ブロック０を参照する予測モード７のブロックは、ブロック１、２、３である。すなわち、候補ブロックリストは［１，２，３］となる。さらに、符号化順未決定のブロックをスキャン順に候補ブロックリストの末尾に追加する。つぎに、符号化順制御部１１１は、候補ブロックリストのブロックのうち、参照するブロックが全て符号化済み、または符号化順決定済みでないブロックを候補ブロックから消去する。図１０（ａ）−（ｃ）において、（ａ）および（ｂ）は参照するブロックが全て符号化済み、または符号化順決定済みであるが、（ｃ）はブロック１およびブロック２が符号化順決定済みではない。すなわち、候補ブロックリストは[１，２]となる。
【００４８】
つぎに、符号化順制御部１１１は、ネクストブロックと候補ブロックリストを比較し、候補ブロックリストの２番目以降である場合には付加情報を付与する。たとえば、候補リスト内の順番に応じて、予測モードの上位に(1)2を付加する。図９（ｂ）の２番目の符号化順決定処理では、ネクストブロックがブロック２であり、候補ブロックリストの２番目に該当するため、予測モード７を示す（0111）2のさらに上位に１ビットを付加して（10111）2とする。仮にネクストブロックがブロック３の場合、（110111）2とする。仮にネクストブロックがブロック１の場合、（0111）2のままである。
【００４９】
なお、処理ブロックを参照するブロックが１つの場合、候補ブロックリストを作成する必要はない。たとえば、図９（ｃ）において、処理ブロックがブロック２、ネクストモードが予測モード６の場合、ネクストブロックであるブロック３が参照するブロックはブロック２のみであるため、候補ブロックリストを作成する必要はない。すなわち、予測モード０、２、４、６では候補ブロックリストを作成する必要はないが、予測モード１、３、５、７では候補ブロックリストを作成する必要がある。なお、本実施の形態では候補ブロックリストに登録されるブロック数は最大で３つある。本実施の形態に係る予測モードでは最大で３つのブロックを参照するモードしか規定されていないためである。
【００５０】
以下、ネクストブロックを処理ブロックとして、全てのブロックの処理が終わるまで上述した処理を行う。以上のような方法により、符号化順制御部１１１は、符号化順を決定し、ブロック整列部１１２にその符号化順を出力する。ブロック整列部１１２は、符号化順制御部１１１から入力される符号化順情報に従って、量子化された直交変換係数及び予測モードを並び変えて符号化部１０５に出力する。
【００５１】
図１１は、符号化順制御部１１１による符号化順制御の動作を説明するためのフローチャートである。符号化順制御部１１１は、処理ブロックに隣接する隣接ブロックのうち、符号化順未決定の隣接ブロックを特定する（Ｓ２０）。その隣接ブロックうちの、ある隣接ブロックが上記条件充足ブロックであるか否か判定する（Ｓ２１）。初回はスキャン順で最先の隣接ブロックが判定対象となる。その隣接ブロックが上記条件充足ブロックの場合（Ｓ２１のＹ）、その隣接ブロックの位置を保持する（Ｓ２２）。上記条件充足ブロックでない場合（Ｓ２１のＮ）、ステップＳ２２をスキップする。
【００５２】
つぎに、符号化順制御部１１１は、特定した隣接ブロックをスキャン順に更新する（Ｓ２３）。符号化順制御部１１１は、特定した隣接ブロックのすべての判定処理が終了したか否か判定する（Ｓ２４）。終了していないならば（Ｓ２４のＮ）、ステップＳ２１に戻る。終了したならば（Ｓ２４のＹ）、ステップＳ２５に進む。
【００５３】
符号化順制御部１１１は、特定した隣接ブロックのうちに上記条件充足ブロックが存在するか否か判定する（Ｓ２５）。存在する場合（Ｓ２５のＹ）、スキャン順で最先の条件充足ブロックをネクストブロックに決定する（Ｓ２６）。存在しない場合（Ｓ２５のＮ）、非隣接ブロックの符号化順未決定の条件充足ブロックのうち、スキャン順で最先のブロックをネクストブロックに決定する（Ｓ２７）。
【００５４】
符号化順制御部１１１は、ネクストブロックのネクストモードが斜め方向の予測モードの場合（すなわち、上下左右方向の予測モードでない場合）（Ｓ２８のＹ）、予測モード情報に、処理ブロックの位置を特定するための付加情報を付加する（Ｓ２９）。斜め方向の予測モードでない場合（すなわち、上下左右方向の予測モードである場合）（Ｓ２８のＮ）、ステップＳ２９をスキップする。なお、ネクストモードが斜め方向の予測モードであっても上下左右方向の予測モードであっても、ネクストブロックが隣接ブロックでない場合、復号側では未処理のブロックが参照するブロックを認識できないため、未処理のブロック全てを候補とする付加情報を付加する必要がある。
【００５５】
符号化順制御部１１１は、全てのブロックを処理したか否かを判定し（Ｓ３０）、全てのブロックを処理していなければ（Ｓ３０のＮ）、ネクストブロックを新たな処理ブロックとして、ステップＳ２０に戻る。処理していれば（Ｓ３０のＹ）、符号化順制御処理を終了する。
【００５６】
以上説明したように実施の形態１によれば、符号化順序によって予測方向が制限され、予測信号の精度が低下する問題を回避し、精度の高い予測信号を生成することにより、圧縮効率が高いイントラ予測符号化を実現することができる。すなわち、イントラ予測の予測方向を増やすことにより、符号化効率を向上させる。その際、大きな付加情報を用いない構成とできる。
【００５７】
より具体的には、イントラ予測モードに応じて、マクロブロック内のブロックの符号化順を入れ替えて符号化することにより、多彩な予測方向を用いることができ、イントラ予測の精度を向上させることができる。全方位からの予測方向を用いることもできる。
【００５８】
また、１つ前の符号化対象ブロックの位置と、現在の符号化対象ブロックのイントラ予測モードから、現在の符号化対象ブロックのブロック位置の候補リストを作成し、実際のブロック位置が当該候補リスト内のいずれに該当するかを特定する信号（たとえば、当該リスト内の順番を示す信号）を必要に応じて付加する。これにより、符号化順情報などの大きな付加情報がなくとも、復号側で符号化順を導出することができる。また、当該候補リストに含まれる１つのブロック位置を、情報（ビット）を付加しないことにより表現することにより、ブロック位置を特定するための付加情報の情報量をさらに少なくできる。したがって、上述した例では当該付加情報を最大２ビットで表現できる。また、予測モードを８種類にすることにより、予測モードを４ビットで表現できる。したがって、上記付加情報付きの予測モード情報を最大６ビットで表現できる。ただし、隣接ブロック以外がネクストブロックとなる場合、ブロックリスト番号が３以上になることもあり得る。この場合、付加情報は２ビット以上となる。
【００５９】
（実施の形態２）
図１２は、本発明の実施の形態２に係る画像復号装置２００の概略構成を示す図である。実施の形態２に係る画像復号装置２００は、実施の形態１に係る画像符号化装置１００により生成された符号化ストリームを復号する装置である。図１２では、説明を単純化するため、動き予測部、デブロックフィルタなどを省略してイントラ予測に関わる構成部分のみを描いている。
【００６０】
実施の形態２に係る画像復号装置２００は、ストリームメモリ２０１、復号部２０２、逆量子化部２０３、逆直交変換部２０４、加算部２０５、イントラ予測部２０６、復号画像メモリ２０７、ブロック位置特定部２０８およびブロック配置部２０９を備える。
【００６１】
これらの構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のＬＳＩで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。また、ファームウェアやソフトウェアとして上記機能を実現するプログラムを、コンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【００６２】
また、図１２に示す画像復号装置２００の構成は、既存のＡＶＣに準拠した画像復号装置と比較し、ブロック位置特定部２０８およびブロック配置部２０９が追加された構成である。
【００６３】
ストリームメモリ２０１は、入力される符号化ストリームを一時的に蓄積する。蓄積された符号化ストリームは復号部２０２に入力される。復号部２０２は、ストリームメモリ２０１から入力される符号化ストリームに対してエントロピー復号などの復号処理を施す。本実施の形態では、復号部２０２は、実施の形態１に係る画像符号化装置１００によりイントラ予測符号化された画像領域（本実施の形態ではマクロブロック）を構成する、符号化順が非固定の複数ブロックの、イントラ予測モードが付加された符号化データを復号する。その結果、復号部２０２は、直交変換係数、逆量子化パラメータ、イントラ予測モードなどを得る。復号部２０２は、直交変換係数および逆量子化パラメータを逆量子化部２０３に出力するとともに、イントラ予測モードをイントラ予測部２０６およびブロック位置特定部２０８に出力する。
【００６４】
逆量子化部２０３は、復号部２０２から入力された直交変換係数を逆量子化パラメータに従って逆量子化し、得られた逆量子化された直交変換係数を逆直交変換部２０４に出力する。逆直交変換部２０４は、入力された逆量子化された直交変換係数に逆直交変換を施し、復号差分データとして加算部２０５に出力する。加算部２０５は、逆直交変換部２０４から入力される復号差分データの画素値と、イントラ予測部２０６から入力される予測値とを加算して復号画像データを生成し、ブロック配置部２０９に出力する。
【００６５】
ブロック配置部２０９は、ブロック位置特定部２０８により特定される、上記画像領域（本実施の形態では、マクロブロック）を構成する各ブロックの位置に、そのブロックの復号画像データを配置する。より具体的には、加算部２０５から入力される復号画像データを、ブロック位置特定部２０８から入力されるブロック位置情報に従って並び替え、復号画像メモリ２０７に蓄積する。復号画像メモリ２０７に蓄積される復号画像データは、イントラ予測部２０６に供給されるとともに、出力画像として外部に出力される。
【００６６】
イントラ予測部２０６は、復号部２０２から入力されるイントラ予測モードと、ブロック位置特定部２０８から入力されるブロック位置情報を用いて、復号画像メモリ２０７から供給される復号画像データの画素値からイントラ予測値を生成し、加算部２０５に出力する。
【００６７】
ブロック位置特定部２０８は、復号部２０２から入力されるイントラ予測モードに従って、ブロック位置を判定し、ブロック位置情報としてブロック配置部２０９に出力する。より具体的には、複数のブロックの符号化順を、連続する２つのブロックの前ブロックの位置と後ブロックのイントラ予測モードにより特定される方向により特定し、各ブロックの位置を特定する。
【００６８】
上述したように、イントラ予測モードは、上方向、下方向、左方向、右方向、左上方向、右下方向、右上方向または左下方向から予測する８種類の予測モードを含む複数の予測モードから選択されており、かつ各ブロックが符号化される際にそのブロックが参照するブロックが符号化済みとなっているよう、複数のブロックの符号化順が決定されている。
【００６９】
ブロック位置特定部２０８は、上方向、下方向、左方向または右方向から予測する予測モード以外の予測モードのブロックの場合、そのブロックの予測モードに付加されている、そのブロックが参照する複数のブロックのうち１つを特定するための情報にもとづいて、そのブロックの位置を特定する。上方向、下方向、左方向または右方向から予測する予測モードのブロックの場合、その方向にもとづいて、そのブロックの位置を特定する。
【００７０】
つぎに、ブロック位置特定部２０８によるブロック位置判定の具体例を説明する。ここでは、図９（ａ）−（ｃ）および図１０（ａ）−（ｃ）に挙げた例を用いて説明する。また、上述したように符号化側から得られるイントラ予測モード情報のうち、下位４ビットがイントラ予測モード自体を示す情報（以下、実イントラ予測モード情報という）であり、その下位４ビットを除く少なくとも１ビットからなる上位ビットが候補ブロックリスト番号を示す付加情報である。上述した例では、最上位から連続する（1）2の個数でそのリスト番号が表現される。
【００７１】
上述したように、処理ブロックの初期値はブロック０である（図９（ａ）−（ｃ）参照）。ここで、処理ブロックの初期値は符号化ストリーム内に記述されていてもよいし、予め復号側で規定値として定められていてもよい。ブロック０のイントラ予測モード情報は（1000）2であり、実イントラ予測モード情報も（1000）2である。ブロック０の予測モードは上方向からの予測モード０であるため、付加情報は付加されていない。イントラ予測部２０６は、ブロック０のイントラ予測値をイントラ予測モード０を用いて生成し、加算部２０５に出力する。また、ブロック０を処理済みとマークする。
【００７２】
つぎに、復号部２０２から入力されるイントラ予測モード情報は（10111）2であり、実イントラ予測モード情報は（0111）2である。したがって、ネクストモードは予測モード７である。図９（ｂ）、（ｃ）に示すように、処理ブロック０に隣接する未処理のブロックであって、予測モード７により処理ブロック０を参照し得るブロックは、ブロック１、２、３である。このうち、参照するブロックが全て復号済みのブロックはブロック１、２である。したがって、処理ブロック０のネクストブロックの候補ブロックリストは［１，２］である。ここで、候補ブロックリスト番号を示す付加情報は（1）2であるため、ネクストブロックはブロック２となる。イントラ予測部２０６は、ブロック２のイントラ予測値をイントラ予測モード７を用いて生成し、加算部２０５に出力する。また、ブロック２を処理済みとマークする。
【００７３】
つぎに、復号部２０２から入力されるイントラ予測モード情報は（0110）2である。したがって、ネクストモードは予測モード６である。図９（ｂ）、（ｃ）に示すように、処理ブロック２に隣接する未処理のブロックであって、予測モード６により処理ブロック２を参照するブロックは、ブロック３のみである。したがって、処理ブロック２のネクストブロックはブロック３となる。イントラ予測部２０６は、ブロック３のイントラ予測値をイントラ予測モード６を用いて生成し、加算部２０５に出力する。また、ブロック３を処理済みとマークする。
【００７４】
また、処理ブロックに隣接するブロックにおいて、上記条件充足ブロックが存在しない場合、非隣接ブロックの処理済みとマークされていない上記条件充足ブロックのうち、スキャン順で最先のブロックをネクストブロックとする。たとえば、図９（ａ）において、ブロック０、２、３、１が処理済みで、処理ブロックがブロック１であり、ネクストブロックの実イントラ予測モード情報が（0000）2であるとする。この場合、ブロック１に隣接する未処理のブロックのなかに、ブロック１を参照するブロックは存在しない。ここで、未処理である上記条件充足ブロックのうち、スキャン順で最先のブロックはブロック４であるから、ネクストブロックはブロック４となる。以下、全てのブロックの処理が終わるまで上述した処理を行う。
【００７５】
以上のような方法により、ブロック配置部２０９はブロック位置を特定し、ブロック配置部２０９およびイントラ予測部２０６にブロック位置情報を出力する。ブロック配置部２０９は入力されたブロック位置情報に従って、復号差分データを並び変えて、復号画像メモリ２０７に格納する。イントラ予測部１１０は入力されるブロック位置情報に従い、該当するブロック位置のイントラ予測値を生成する。
【００７６】
図１３は、ブロック位置特定部２０８によるブロック位置特定制御の動作を説明するためのフローチャートである。ブロック位置特定部２０８は、復号部２０２から復号順に予測モード情報を取得する（Ｓ４０）。ブロック位置特定部２０８は、当該予測モード情報に候補ブロックリスト番号を示す付加情報が付加されているか否か判定する（Ｓ４１）。
【００７７】
当該付加情報が付加されていない場合（Ｓ４１のＮ）、ブロック位置特定部２０８はネクストモードからネクストブロックを特定する（Ｓ４３）。この場合、ネクストモードにより特定される予測モードの方向から、ネクストブロックと処理ブロックとの位置関係が基本的に一意的に特定される。当該付加情報が付加されている場合（Ｓ４１のＹ）、ブロック位置特定部２０８はネクストモードおよび付加情報からネクストブロックを特定する（Ｓ４２）。
【００７８】
ただし、処理ブロックの隣接ブロックのなかに、上記条件充足ブロックが存在しない場合（Ｓ４４のＹ）、ブロック位置特定部２０８は、非隣接ブロックの未処理の上記条件充足ブロックのうち、スキャン順で最先のブロックをネクストブロックに特定する（Ｓ４５）。処理ブロックの隣接ブロックのなかに、上記条件充足ブロックが存在している場合は（Ｓ４４のＮ）、ステップＳ４５の処理をスキップする。
【００７９】
ブロック位置特定部２０８は、全ての予測モード情報を処理したか否かを判定し（Ｓ４６）、全ての予測モード情報を処理していなければ（Ｓ４６のＮ）、ステップＳ４０に戻り、つぎの予測モード情報を処理する。全ての予測モード情報の処理を終了していれば（Ｓ４６のＹ）、ブロック位置特定処理を終了する。
【００８０】
以上説明したように実施の形態２によれば、実施の形態１に係る圧縮効率が高いイントラ予測符号化を実現した画像符号化装置により符号化されたストリームを的確に復号できる。すなわち、現在の処理対象ブロックの位置と、つぎの処理対象ブロックのイントラ予測モードから、つぎの処理対象ブロックの位置を判定する。これにより、ブロック位置情報などの大きな付加情報がなくとも、復号側で符号化順を導出することができる。
【００８１】
また、現在の処理対象ブロックの位置と、つぎの処理対象ブロックのイントラ予測モードから、つぎの処理対象ブロックの位置が一意的に特定できない場合でも、イントラ予測モード情報に付加された候補ブロックリスト番号を参照することにより、つぎの処理対象ブロックの位置を特定できる。
【００８２】
以上、本発明をいくつかの実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００８３】
上述した実施の形態では、イントラ予測符号化すべき画像領域の単位をマクロブロックとする例を説明したが、スライスやフレームなどマクロブロックより大きな単位であってもよい。また、上述した実施の形態では動画像の圧縮符号化を例に説明したが、静止画の圧縮符号化にも適用可能である。
【符号の説明】
【００８４】
１００  画像符号化装置、  １０１  入力画像メモリ、  １０２  減算部、  １０３  直交変換部、  １０４  量子化部、  １０５  符号化部、  １０６  逆量子化部、  １０７  逆直交変換部、  １０８  加算部、  １０９  復号画像メモリ、  １１０  イントラ予測部、  １１１  符号化順制御部、  １１２  ブロック整列部、  ２００  画像復号装置、  ２０１  ストリームメモリ、  ２０２  復号部、  ２０３  逆量子化部、  ２０４  逆直交変換部、  ２０５  加算部、  ２０６  イントラ予測部、  ２０７  復号画像メモリ、  ２０８  ブロック位置特定部、  ２０９  ブロック配置部。
【図１】
2012134822.tif 000003
【図２】
2012134822.tif 000004
【図３】
2012134822.tif 000005
【図４】
2012134822.tif 000006
【図５】
2012134822.tif 000007
【図６】
2012134822.tif 000008
【図７】
2012134822.tif 000009
【図８】
2012134822.tif 000010
【図９】
2012134822.tif 000011
【図１０】
2012134822.tif 000012
【図１１】
2012134822.tif 000013
【図１２】
2012134822.tif 000014
【図１３】
2012134822.tif 000015