(57)【要約】【課題】予測残差の時間方向の冗長性を考慮して最適直交変換を選択する画像符号化装置を提供する。【解決手段】非参照符号化対象画像間で共通位置の符号化対象領域の予測残差画像を生成する予測器（１０１）と各予測残差画像に２次元直交変換を行う２次元モード又は予測残差画像でなる３次元予測残差画像に３次元直交変換を行う３次元モードを選択する選択部と２次元モード選択により各予測残差画像に２次元直交変換を行う２次元直交変換部（１０４ｂ）と３次元モード選択により３次元予測残差画像に３次元直交変換を行う３次元直交変換部（１０４ａ，１０４ｂ）と２又は３次元直交変換係数を量子化する量子化器（１０６）と量子化係数を可変長符号化する符号化器（１０８）と選択変換モードを示す直交変換モード情報と符号化変換係数の多重化符号化データを出力する多重化器とを備えた。【選択図】    図１
2010135863.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力画像の中の互いに参照されない複数の符号化対象画像間で共通な位置にある複数の符号化対象領域の複数の予測残差画像を、前記複数の入力画像の中で既に符号化がなされた参照画像の局部復号画像を参照して生成する予測残差画像生成器と、
前記複数の予測残差画像の各々に対して空間方向の２次元直交変換を行う２次元モード、または、前記複数の予測残差画像からなる３次元時空間予測残差画像に対して時空間方向の３次元直交変換を行う３次元モードを、直交変換モードとして選択するモード選択部と、
前記直交変換モードとして２次元モードが選択された場合に前記複数の予測残差画像の各々に対して空間方向の２次元直交変換を行うことにより２次元直交変換係数を生成する２次元直交変換部と、
前記直交変換モードとして前記３次元モードが選択された場合に前記複数の予測残差画像からなる３次元時空間予測残差画像に対して時空間方向に３次元直交変換を行うことにより３次元直交変換係数を生成する３次元直交変換部と、
前記２次元又は前記３次元直交変換係数を量子化して量子化直交変換係数を生成する量子化器と、
量子化直交変換係数を可変長符号化して符号化変換係数を生成する可変長符号化器と、
前記モード選択部で選択された直交変換モードを示す直交変換モード情報と前記符号化変換係数とを多重化した符号化データを出力する多重化器と、
を備えたことを特徴とする画像符号化装置。
【請求項２】
前記符号化器は、前記直交変換モードとして３次元モードが選択された場合には、前記３次元直交変換係数を１次元走査して得た係数列を複数の分割係数列に分割し、各分割係数列を可変長符号化する
ことを特徴とする請求項１記載の画像符号化装置。
【請求項３】
前記符号化器は、前記直交変換モードとして３次元モードが選択された場合には、前記３次元直交変換係数を複数の２次元係数ブロックに分割し、各係数ブロックを１次元走査して得られる係数列を可変長符号化することを特徴とする請求項１記載の画像符号化装置。
【請求項４】
前記符号化器は、前記直交変換モードとして３次元モードが選択された場合には、前記３次元直交変換係数を１次元走査して得た係数列を可変長符号化することを特徴とする請求項１記載の画像符号化装置。
【請求項５】
複数の入力画像の中の互いに参照されない複数の符号化対象画像間で共通な位置にある複数の符号化対象領域の各々の予測残差画像を、前記複数の入力画像の中で既に符号化がなされた参照画像の局部復号画像を参照して生成する予測残差画像生成器と、
前記複数の予測残差画像からなる３次元時空間予測残差画像に、時空間方向の３次元直交変換を行って直交変換係数を生成する直交変換器と、
前記直交変換係数を量子化して量子化直交変換係数を生成する量子化器と、
前記量子化直交変換係数を可変長符号化して前記符号化対象領域の符号化データを出力する符号化器と、
を備えたことを特徴とする画像符号化装置。
【請求項６】
複数の入力画像の中の互いに参照されない複数の符号化対象画像間で共通な位置にある複数の符号化対象領域の複数の予測残差画像を、前記複数の入力画像の中で既に符号化がなされた参照画像の局部復号画像を参照して生成する予測残差画像生成ステップと、
前記複数の予測残差画像の各々に対して空間方向の２次元直交変換を行う２次元モード、または、前記複数の予測残差画像からなる３次元時空間予測残差画像に対して時空間方向の３次元直交変換を行う３次元モードを、直交変換モードとして選択するモード選択部ステップと、
前記直交変換モードとして２次元モードが選択された場合には前記複数の予測残差画像に対してそれぞれ別々に空間方向に２次元直交変換を行うことにより２次元の直交変換係数を生成する２次元直交変換ステップと、
前記直交変換モードとして前記３次元モードが選択された場合には前記複数の予測残差画像からなる３次元時空間予測残差画像に対して時空間方向に３次元直交変換を行うことにより３次元の直交変換係数を生成する３次元直交変換ステップと、
前記２次元または３次元の直交変換係数を量子化し量子化直交変換係数を生成する量子化ステップと
量子化直交変換係数を可変長符号化して符号化変換係数を生成する可変長符号化ステップと、
前記モード選択部で選択された直交変換モードを示す直交変換モード情報と前記符号化変換係数とを多重化して符号化データを出力する多重化ステップと、
を含むことを特徴とする画像符号化方法。
【請求項７】
入力された符号化データから、符号化変換係数と直交変換モード情報とを抽出する逆多重化部と、
前記符号化変換係数を可変長復号して量子化直交変換係数を生成する可変長復号部と、
前記量子化直交変換係数を逆量子化して復号化対象画像の復号化対象領域の直交変換係数を生成する逆量子化器と、
前記直交変換モード情報が２次元モードを示す値の場合に前記直交変換係数を空間方向に２次元逆直交変換して復号化対象画像の復号化対象領域の予測残差画像を生成する２次元逆直交変換器と、
前記直交変換モード情報が３次元モードを示す値の場合に複数の復号化対象画像間で共通な位置にある複数の復号化対象領域の前記直交変換係数を時空間方向に３次元逆直交変換して複数の復号化対象画像間で共通な位置にある複数の復号化対象領域の複数の予測残差画像からなる３次元時空間予測残差画像を生成する３次元逆直交変換器と、
参照画像を参照して、前記２次元逆直交変換器および前記３次元逆直交変換器で生成された予測残差画像から、復号化対象画像の復号化対象領域の復号化画像を生成する復号画像生成部と、
を備えたことを特徴とする画像復号化装置
【請求項８】
前記３次元逆直交変換器は、所定の量の前記直交変換係数を有する１次元の断片化係数列を求め、複数の前記断片化係数列を連結して１次元の係数列を求め、前記係数列から３次元直交変換係数を生成し、前記３次元直交変換係数に対して３次元逆直交変換を行う、ことを特徴とする請求項７に記載の画像復号化装置。
【請求項９】
前記３次元逆直交変換器は、複数の復号化対象領域の各々の前記直交変換係数を時間方向に連結して３次元直交変換係数を生成し、前記３次元直交変換係数に対して３次元逆直交変換を行う、ことを特徴とする請求項７に記載の画像復号化装置。
【請求項１０】
前記３次元逆直交変換器は、所定の量の前記直交変換係数から３次元直交変換係数を生成し、前記３次元直交変換係数に対して３次元逆直交変換を行う、ことを特徴とする請求項７に記載の画像復号化装置。
【請求項１１】
入力された符号化データを可変長復号して量子化直交変換係数を生成する可変長復号化器と、
前記量子化直交変換係数を逆量子化して直交変換係数を生成する逆量子化器と、
前記直交変換係数に時空間方向の３次元逆直交変換を行って、互いに参照されない複数の復号化対象画像間で共通な位置にある複数の復号化対象領域の複数の予測残差画像からなる３次元時空間予測残差画像を生成する逆直交変換器と、
前記複数の予測残差画像と既に生成された復号化画像とを用いて、前記複数の復号化対象領域の画像を生成する復号化画像生成器と、
を備えたことを特徴とする画像復号化装置。
【請求項１２】
入力された符号化データから、符号化変換係数と直交変換モード情報とを抽出する逆多重化ステップと、
前記符号化変換係数を可変長復号して量子化直交変換係数を生成する可変長復号ステップと、
前記量子化直交変換係数を逆量子化して復号化対象画像の復号化対象領域の直交変換係数を生成する逆量子化ステップと、
前記直交変換モード情報が２次元モードを示す値の場合に前記直交変換係数を空間方向に２次元逆直交変換して復号化対象画像の復号化対象領域の予測残差画像を生成する２次元逆直交変換ステップと、
前記直交変換モード情報が３次元モードを示す値の場合に複数の復号化対象画像間で共通な位置にある複数の復号化対象領域の前記直交変換係数を時空間方向に３次元逆直交変換して複数の復号化対象画像間で共通な位置にある複数の復号化対象領域の複数の予測残差画像からなる３次元時空間予測残差画像を生成する３次元逆直交変換ステップと、
参照画像を参照して、前記２次元逆直交変換ステップおよび前記３次元逆直交変換ステップで生成された予測残差画像から、復号化対象画像の復号化対象領域の復号化画像を生成する復号画像生成ステップと、
を有することを特徴とする画像復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像または静止画像のための画像符号化方法及び装置に関する。
【背景技術】
【０００２】
ＩＳＯ／ＩＥＣ１４４９６−１０  ＩＴＵ−Ｔ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  Ｈ．２６４（非特許文献１）などで代表される動画像符号化標準方式では、入力画像信号に対し、例えば図３に示すような参照構造を用いて、すでに符号化済みの参照画像信号から画面内予測や動き補償を行うことで予測信号が作成される。この予測画像信号と入力信号との予測誤差信号に対し、離散コサイン変換（ＤＣＴ）等の直交変換、即ち周波軸上への変換を行い予測誤差信号から空間方向の冗長性が除去される。その後、予測誤差信号に対して量子化及び符号化による圧縮処理を行って符号化画像が生成される。即ち、非可逆圧縮方式による動画像符号化が行われる。図３において、Ｉは画面内の符号化済みの画像信号からのみ予測を行って符号化を行うフレームを示している。Ｐは入力画像のフレーム順で時間的に前方に位置する既に符号化されたＩやＰから予測を行って符号化を行うフレームを示している。Ｂは入力画像のフレーム順で前方や後方に位置するすでに符号化済みの画像信号から予測を行って符号化するフレームを示している。フレームの下の番号は表示順序を示している。Ｂは表示順序で後方に位置するフレームを参照し予測することから、参照するフレームを先に符号化するように、フレーム順序を並べ替えて符号化を行う。図３では、例えばＩ０，Ｐ３，Ｂ１，Ｂ２，Ｐ６，Ｂ４，Ｂ５の順で符号化が行われる。このように、図３に示されるような参照構造を用いて予測画像を作成する動画像符号化方式では、参照画像と入力画像との差分をとることで時間方向の冗長性が削除され、さらに予測誤差信号の空間方向の冗長性が直交変換により削除される。その後、予測誤差信号に可変長符号化を行うことで、圧縮効率を向上させている。しかし、フレーム間の予測誤差信号の時間方向の冗長性は考慮されていない。これに対し、特許文献１は、図３に示すような符号化構造において、Ｐ６，Ｂ４，Ｂ５の３フレーム分の動き補償後の差分をまとめて３次元直交変換を行う。量子化後、可変長符号化することで、予測誤差信号の時間方向の冗長性も除去して符号化を行う。このようにして符号化効率を高める方式が提案されている。
【非特許文献１】ＩＳＯ／ＩＥＣ１４４９６−１０  ＩＴＵ−Ｔ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  Ｈ．２６４
【特許文献１】特開平１０−１６４５９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
非特許文献１では、Ｂフレームの予測残差を作成する際にＰフレームを参照して動き補償を行う必要がある。例えば、図３のＢ４、Ｂ５はＰ６の復号画像信号を参照して予測画像が作成されるが、Ｐ６、Ｂ４、Ｂ５の３フレーム分の動き補償後の予測残差信号を３次元直交変換して量子化する。このため、Ｂ４，Ｂ５の予測画像作成時にはＰ６の正しい復号画像信号を得ることはできないため、符号化側と復号化側でミスマッチが生じる。
【０００４】
本発明は、互いに参照されない複数の入力画像に関する予測残差を、複数フレームまとめてブロックごとに、２次元直交変換または３次元直交変換し、変換後、量子化・可変長符号化を行う符号化装置及び方法並びにこの符号化装置のための復号化装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の一実施形態は、複数の入力画像の中の互いに参照されない複数の符号化対象画像間で共通な位置にある複数の符号化対象領域の複数の予測残差画像を、前記複数の入力画像の中で既に符号化がなされた参照画像の局部復号画像を参照して生成する予測残差画像生成器と、前記複数の予測残差画像の各々に対して空間方向の２次元直交変換を行う２次元モード、または、前記複数の予測残差画像からなる３次元時空間予測残差画像に対して時空間方向の３次元直交変換を行う３次元モードを、直交変換モードとして選択するモード選択部と、前記直交変換モードとして２次元モードが選択された場合に前記複数の予測残差画像の各々に対して空間方向の２次元直交変換を行うことにより２次元直交変換係数を生成する２次元直交変換部と、前記直交変換モードとして前記３次元モードが選択された場合に前記複数の予測残差画像からなる３次元時空間予測残差画像に対して時空間方向に３次元直交変換を行うことにより３次元直交変換係数を生成する３次元直交変換部と、前記２次元又は前記３次元直交変換係数を量子化して量子化直交変換係数を生成する量子化器と、量子化直交変換係数を可変長符号化して符号化変換係数を生成する可変長符号化器と、前記モード選択部で選択された直交変換モードを示す直交変換モード情報と前記符号化変換係数とを多重化した符号化データを出力する多重化器と、を備えたことを特徴とする画像符号化装置を提供する。
【発明の効果】
【０００６】
本発明では、時間方向の冗長性に応じて最適な直交変換を選択することで、予測誤差信号の符号量を小さくし、符号化効率を向上させる。即ち、互いに参照されないＢフレームの予測残差をブロックごとに複数フレームまとめて、２次元直交変換と３次元直交変換および予測モードをレート−歪最適化によって選択し、時間方向の冗長性に応じて最適な直交変換を選択することで、符号化側と復号化側でミスマッチを生じさせることなく、符号化効率を向上させる。
【発明を実施するための最良の形態】
【０００７】
以下、図面を参照して本発明の実施の形態について説明する。  
図１に、本発明の一実施形態に係る動画像符号化のための画像符号化装置を示す。画像符号化装置には、画像信号１００として例えばフレーム単位で動画像信号が符号化部１０に入力され、いったん入力フレームバッファ１１８に格納される。符号化構造制御器１２０は、バッファに蓄えられた入力フレームの参照順序に応じた符号化順序を決定し、符号化構造情報１１９を符号化部１０に出力する。符号化構造制御部１２０の具体的な処理の詳細については後述する。
【０００８】
入力フレームバッファ１１８は符号化構造情報１１９に基づいて、符号化順序に従ったフレーム、または複数のフレームの画像信号をある符号化単位ごとに差分信号作成器１０１に出力する。差分信号生成器１０１により入力画像信号１００と予測画像信号１０２との差分が計算され、予測誤差信号１０３が生成される。生成された予測誤差信号１０３に対して、直交変換器１０４により２次元直交変換か３次元直交変換のいずれかが施される。２次元直交変換か３次元直交変換のいずれかは符号化構造情報１１９と予測誤差信号１０３に応じて選択される。どのように選択するかは後述する。具体的には、予測誤差信号１０３に施される直交変換として、例えば離散コサイン変換（ＤＣＴ）が挙げられる。直交変換器１０４の内部には、時間方向の直交変換を行う時間方向直交変換器１０４ａと空間方向の直交変換を行う空間方向直交変換器１０４ｂを含む。選択された変換が３次元変換の場合は、スイッチが１０４ｃ側に接続され、即ち差分信号生成器１０１の出力が空間方向直交変換器１０４ａに接続され、予測誤差信号１０３は時間方向直交変換器１０４ａと空間方向直交変換器１０４ｂの両方によって時空間方向に３次元直交変換される。選択された変換が２次元変換の場合は、１０４ｄ側に接続され、即ち、差分信号生成器１０１の出力が空間方向直交変換器１０４ｂに接続され、予測誤差信号１０３は空間方向直交変換器１０４ｂだけによって空間方向のみに２次元直交変換される。直交変換器１０４では直交変換係数情報１０５、例えばＤＣＴ係数情報が得られる。また、ここで施される直交変換が２次元直交変換か３次元直交変換かを示す情報、またはその変換サイズなどの直交変換情報１２１がエントロピー符号化器１０８に導かれる。直交変換係数情報１０５は量子化器１０６により量子化された後、二分岐される。二分岐された量子化直交変換係数情報１０７の一方は、エントロピー符号化器１０８に導かれる。
【０００９】
二分岐された量子化直交変換係数情報１０７の他方は、逆量子化器１０９及び逆直交変換器１１０により、量子化器１０６及び直交変換器１０４の処理と逆の処理を順次受けて予測誤差信号と同様の信号に変換される。この信号は局部復号画像信号生成器１１１で予測画像信号１０２と加算されることにより、局部復号画像信号１１２が生成される。
【００１０】
逆直交変換器１１０は内部に時間方向の逆直交変換を行う時間方向逆直交変換器１１０ａと、空間方向の逆直交変換を行う空間方向逆直交変換器１１０ｂを含む。２次元直交変換か３次元直交変換かを示す直交変換情報に応じてスイッチが１１０ｃ側又は１１０ｄに切り替わる。スイッチが１１０ｃ側に接続されると、即ち空間方向逆直交変換器１１０ｂの出力が時間方向逆直交変換器１１０ａに接続されると、逆量子化器１０９の逆量子化信号は空間方向逆直交変換器１１０ｂ及び時間方向逆直交変換器１１０ａの両方によって時空間方向の３次元逆直交変換される。１１０ｄ側に接続されると、即ち空間方向逆直交変換器１１０ｂの出力が時間方向逆直交変換器１１０ａをバイパスして局部復号画像信号生成部１１１に接続されると、逆量子化器１０９の逆量子化信号は空間方向逆直交変換器１１０ｂだけによる空間方向のみの逆直交変換、すなわち２次元直交変換される。局部復号画像信号１１２は、必要に応じてループフィルタ１１３によりフィルタ処理がなされた後、フレームメモリ１１４に格納される。
【００１１】
予測画像生成器１１５は、入力画像信号１００及びフレームメモリ１１４に格納された局部復号画像信号１１２からある予測モード情報に基づく予測画像信号を生成する。この際、局部復号画像信号生成器１１１からの局部復号画像信号１１２はフレームメモリ１１４に一旦蓄えられる。フレーム内のブロック毎に入力画像信号１００とフレームメモリ１１４に蓄えられた局部復号画像信号１１２との間のマッチング（例えば、ブロックマッチング）をとり、動きベクトルを検出する。この動きベクトルで補償された局部画像信号を用いて予測画像信号を作成する。ここで生成された予測画像信号１０２は、選択された予測画像信号の動きベクトル情報／予測モード情報１１６とともに予測画像生成器１１５より出力される。エントロピー符号化器１０８では、量子化直交変換係数情報１０７、動きベクトル情報／予測モード情報１１６、直交変換情報１２１および符号化構造情報１１９がエントロピー符号化され、これによって生成された符号化データ１１７は、図示しない伝送系または蓄積系へ送出される。
【００１２】
次に図４および図５を用いて、本発明の実施形態の特徴である符号化構造と符号化単位、および符号化順序について説明を行う。本実施形態では、互いに参照されない複数のＢフレームをフレーム単位ではなく、２フレームあるいは４フレームなど、２のＮ乗の数のフレームをまとめて符号化を行うことで、時間方向の直交変換を利用できるようにする。例えば図４のようにＩフレームとＰフレームの間に２枚のＢフレームを挟むような構造の場合、Ｂｍと示されたフレーム間では互いに参照関係がないため、本実施形態を用いてまとめて符号化することが可能である。例えば、（Ｂｍ１、Ｂｍ２）および（Ｂｍ４、Ｂｍ５）の２フレームをそれぞれまとめて符号化することで、時間方向にも３次元直交変換、例えば時間方向の変換サイズが２の場合、４ｘ４ｘ２ＤＣＴ（離散コサイン変換）や８ｘ８ｘ２ＤＣＴなどを用いることができる。この場合、符号化順序は、例えば、Ｉ０、Ｐ３、（Ｂｍ１、Ｂｍ２）、Ｐ６、（Ｂｍ４、Ｂｍ５）・・・となる。
【００１３】
また、（Ｂｍ１、Ｂｍ２、Ｂｍ４、Ｂｍ５）の４フレームも、互いに参照されることはないためまとめて符号化して例えば４ｘ４ｘ４ＤＣＴや８ｘ８ｘ４ＤＣＴなどの時間方向の変換サイズが４の３次元直交変換をさらに用いて符号化することも可能である。この場合、符号化順序は、例えば、Ｉ０、Ｐ３、Ｐ６、（Ｂｍ１，Ｂｍ２，Ｂｍ４，Ｂｍ５）・・・となる。
【００１４】
図５は、前述のように互いに参照されない複数のＢフレームをまとめて符号化する際の符号化単位を図示している。複数のフレーム内の同一の空間位置にあるＨ．２６４ではマクロブロックと呼ばれる例えば１６ｘ１６画素単位の正方形ブロックを時間方向に連結した例えば１６ｘ１６ｘＭ（Ｍは時間方向のフレームの枚数）の直方体ブロック（以下、マクロキューブと呼ぶ）を１符号化単位として順次符号化を行うマルチスライス構造で符号化を行う。マルチスライスは、複数のマクロキューブからなり、複数のＢフレームをまとめた場合、その全体をマルチスライスとしてもよいし、ある一定数のマクロキューブでスライス分割してもよい。
【００１５】
また、別の符号化構造として図６に示すような階層Ｂ構造と呼ばれる符号化構造がある。階層Ｂ構造では、ＩフレームとＰフレームの間に含まれるＢフレームを階層的に参照する構造である。本構造はＨ．２６４のようにＢフレームを参照画像として利用できる場合に用いることができる。例えば図６のような参照構造の場合、同じ階層に含まれるＢフレームは互いに参照されないため、まとめてマルチスライス単位で符号化することが可能である。例えば、（Ｂｍ１、Ｂｍ３）（Ｂｍ５，Ｂｍ７）をそれぞれ２枚のスライスを含むマルチスライスとして符号化する場合には、符号化順序は例えば、Ｉ０、Ｐ８、ＲＢ４、ＲＢ２、（Ｂｍ１，Ｂｍ３）、ＲＢ６、（Ｂｍ５、Ｂｍ７）・・・となる。また、例えば、（Ｂｍ１、Ｂｍ３、Ｂｍ５，Ｂｍ７）の４フレームをまとめて符号化する場合には、符号化順序は例えばＩ０、Ｐ８、ＲＢ４、ＲＢ２、ＲＢ６、（Ｂｍ１，Ｂｍ３、Ｂｍ５、Ｂｍ７）・・・となる。
【００１６】
さらに、上段の（ＲＢ２，ＲＢ６）もそれぞれ互いを参照しないという条件を満たすならば、これらフレームもまとめて符号化することも可能で、例えば（ＲＢ２，ＲＢ６）、（Ｂｍ１，Ｂｍ３）、（Ｂｍ５、Ｂｍ７）のそれぞれを２フレームずつまとめて、Ｉ０、Ｐ８、ＲＢ４、（ＲＢ２、ＲＢ６）、（Ｂｍ１，Ｂｍ３）、（Ｂｍ５、Ｂｍ７）・・・という符号化順序で符号化してもよいし、（ＲＢ２，ＲＢ６）の２枚と、（Ｂｍ１，Ｂｍ３、Ｂｍ５、Ｂｍ７）の４フレームをまとめて、Ｉ０、Ｐ８、ＲＢ４、（ＲＢ２、ＲＢ６）、（Ｂｍ１，Ｂｍ３、Ｂｍ５、Ｂｍ７）・・・
という符号化順序で符号化してもよい。
【００１７】
図７は、例えば（Ｂｍ１，Ｂｍ３、Ｂｍ５、Ｂｍ７）の４フレームをまとめて符号化する際の符号化単位を図示したものであり、この場合、マクロキューブは同じ空間位置に位置する４つのマクロブロックを時間方向に連結した例えば１６ｘ１６ｘ４の直方体ブロックとなる。
【００１８】
ここで、本発明の実施形態に適用可能な符号化構造をいくつか説明したが、本発明はこれらの符号化構造のみに適用されるわけではなく、互いに参照されない複数のＢフレームをまとめてマルチスライスとして符号化するような符号化構造であれば、どのような符号化構造にも適用することが可能である。
【００１９】
以下、互いに参照されない複数のＢフレームをまとめてマルチスライスとして符号化する際のスライスタイプをＢｍスライスとする。
【００２０】
図８を用いて符号化構造制御部１２０によって制御される符号化処理の流れ４００を説明する。まずステップ４０１において、フレーム単位で入力画像信号が表示順序で順次入力され、入力フレームバッファ１１８に蓄えられる。一定枚数がバッファされた状態で、ステップ４０２に進み、入力フレームバッファ１１８内の各フレームの符号化順序と符号化スライスタイプ（ＩフレームかＰフレームかＢフレームか、Ｂｍフレームか）の判断が行われる。この判断は、例えば図４や図６のような符号化構造があらかじめ符号化外部より入力されており、入力された順序、すなわち表示順序に照らしあわせて決定される。ここで、例として、図４の符号化構造で、（Ｂｍ１、Ｂｍ２）および（Ｂｍ４、Ｂｍ５）をマルチスライスとして符号化する場合について詳細に説明する。
【００２１】
ステップ４０３において、ステップ４０２で決定された符号化順序順に入力フレームを取り出し、スライスタイプを判定する。まず、Ｉ０が取り出されるが、スライスタイプはＢｍスライスではないためステップ４０４に進み、当該フレームは例えばＨ．２６４と同様の手順を踏んでスライス符号化される。Ｉ０の符号化が全て終了するとステップ４０５に進み、全てのフレームの符号化が終了したかどうかを判断する。ここでは、さらに符号化すべきフレームが存在しているため、ステップ４０１に戻る。
【００２２】
前述の手順でフレーム入力（ステップ４０１）及び符号化順序決定（ステップ４０２）がされた後、符号化順序がＩ０の次のＰ３が入力フレームバッファ１１８から取り出され、ステップ４０３にてスライスタイプの判定が行われる。当該フレームはＢｍスライスではないため、ステップ４０４に進み、Ｉ０と同様に例えばＨ．２６４と同様の手順を踏んでスライス符号化され、ステップ４０５に進む。さらに符号化すべきフレームが存在しているため、ステップ４０１に戻る。
【００２３】
前述の手順でフレーム入力（４０１）及び符号化順序決定（４０２）がされた後、符号化順序がＰ３の次のＢｍ１が入力フレームバッファ１１８から取り出され、ステップ４０３にてスライスタイプの判定が行われる。当該フレームはＢｍスライスであるため、ステップ４０５に進み、当該フレームＢｍ１と同じマルチスライスに属するＢｍ２も同時に入力フレームバッファ１１８から出力され、マルチスライスとして符号化が行われる。マルチスライスの符号化処理の手順については後述する。当該マルチスライスの符号化が終了するとステップ４０５に進み、以下同様の手順で順次、Ｐ６がスライスとして、（Ｂｍ４，Ｂｍ５）がマルチスライスとして符号化されていく。このような手順で、入力された全てのフレームの符号化が終了すると符号化処理を終了する。
【００２４】
次に図９を用いて、マルチスライス符号化処理４０４の詳細な手順５００を説明する。ここでは図４の符号化構造で、（Ｂｍ１、Ｂｍ２）をマルチスライスとして符号化する場合について詳細に説明する。
【００２５】
まずステップ５０１において、マルチスライス内のマクロキューブが順次入力される。ここで、入力順序は例えばマルチスライスの左上から右下へのラスタスキャン順で行われる。次に入力されたマクロキューブに対する予測画像が作成される。マクロキューブ内には、フレームＢｍ１に属するマクロブロックＭＢ１と、フレームＢｍ２に属するマクロブロックＭＢ２が含まれている。ＭＢ１、ＭＢ２の予測画像はそれぞれ、参照画像であるＩ０、Ｐ３と例えばブロックマッチングなどによって動き補償を行って予測ブロック形状（予測モード）や動きベクトルを探索して作成され、候補となる予測モードと動きベクトルはＭＢ１、ＭＢ２のそれぞれについて、一時メモリで保持される。
【００２６】
ステップ５０３において、予測残差信号の作成を行う。ステップ５０２で作成された予測画像信号と、当該マクロキューブの入力画像信号との差分を差分信号生成器１０１で作成し、予測モードや動きベクトルなどと同様に、一時メモリで保持される。
【００２７】
処理はステップ５０４に進み、直交変換のタイプを決定する。ここでは例として、２次元直交変換として４ｘ４ＤＣＴと８ｘ８ＤＣＴ、３次元直交変換として４ｘ４ｘ２ＤＣＴと８ｘ８ｘ２ＤＣＴの４つが直交変換として利用可能であるとする。どの直交変換を用いて符号化するかを決定する手段として、例えば一時メモリに保存された予測モードと動きベクトルの情報およびどの直交変換を用いるかを示す直交変換情報を含むモード情報ＯＨ、予測残差信号の絶対和（sum of absolute value）をＳＡＤとすると、次式により算出される符号化コストＫの最小値を与える予測モードおよび直交変換情報を最適な予測モードと直交変換情報として選択する。
【００２８】
Ｋ  ＝  ＳＡＤ＋λ×ＯＨ                 （１）
ここで、λは定数であり、量子化パラメータの値に基づいて決められる。
【００２９】
コスト計算の他の例として、モード情報ＯＨのみ、または予測残差信号の絶対和ＳＡＤのみを用いてもよい。モード情報または予測残差信号をアダマール変換したり、近似したりした値を利用してもよい。量子化幅、量子化パラメータを利用してコスト関数を作成してもよい。
【００３０】
コスト計算の更に別の例として、仮符号化部を用意し、各予測モードで生成された予測残差信号１０３を実際に２次元変換または３次元変換し、出力された直交変換係数を量子化して可変長符号化した場合の符号量と、符号化データを局部復号して得られる復号画像信号と入力画像信号との間の二乗誤差を用いてもよい。この場合、次式により算出される符号化コストＪの最小値を与える予測モードを最適モードとして選択する。
【００３１】
Ｊ  ＝  Ｄ＋λ×Ｒ                     （２）
ここで、Ｄは入力画像信号と復号画像信号との間の二乗誤差を表す符号化歪みである。一方、Ｒは仮符号化によって見積もられた符号量を表している。
【００３２】
式（２）の符号化コストＪを用いた場合、予測モード毎に仮符号化と局部復号（逆量子化や逆直交変換）が必要となるため、処理量または回路規模が増大する。しかし、Ｊは正確な符号量と符号化歪みを反映するため、より最適な予測モードを選択することを可能とする。この結果、より高い符号化効率を得ることができる。式（２）では、符号化コストＪの計算に符号化歪Ｄ及び符号量Ｒを用いているが、Ｄ及びＲのいずれか一方のみを用いて符号化コストを算出してもよい。また、Ｄ及びＲを近似した値を用いてコスト関数を作成してもよい。
【００３３】
ステップ５０５では、ステップ５０４で決定された直交変換が２次元変換か３次元変換かどうかの判定を行う。ここで２次元変換が最適モードとして決定された場合にはステップ５０６に進み、マクロキューブ内のマクロブロックＭＢ１とＭＢ２のそれぞれの予測残差信号に対して、最適と判定された直交変換（４ｘ４ＤＣＴあるいは８ｘ８ＤＣＴ）が施され、変換係数に対して量子化が行われる。ここで行われる直交変換や量子化は、例えばＨ．２６４と同様の変換量子化を用いる。一方、ステップ５０５で、２次元変換でない、即ち３次元変換が最適モードとして決定された場合にはステップ５０７へ進む。
【００３４】
ステップ５０７ではマクロキューブの予測残差信号に対し３次元直交変換を施した後、量子化を行う。３次元直交変換としては、例えば４ｘ４ｘ２ＤＣＴや８ｘ８ｘ２ＤＣＴを用いる。この３次元直交変換では、例えば１６ｘ１６ｘ２のマクロキューブ内に含まれるマクロブロックＭＢ１，ＭＢ２を１６分割または４分割して４ｘ４や８ｘ８の正方形のサブブロックが作られる。空間位置で同じ場所に位置するサブブロック内の画素値に対し、時間方向直交変換器１０４ｃによって時間方向に２ｘ２ＤＣＴを施したのち、空間方向の２つの４ｘ４または８ｘ８サブブロック内の変換係数に対して例えばＨ．２６４と同様の４ｘ４ＤＣＴや８ｘ８ＤＣＴが空間方向直交変換器１０４ｂによって行われる。このようにして得られたマクロキューブ内の３次元直交変換係数に対して、例えばＨ．２６４と同様の量子化処理を施す。
【００３５】
上記の説明では、２枚のフレームをマルチスライスとして一括して符号化する例について説明したため、３次元直交変換として、４ｘ４ｘ２ＤＣＴや８ｘ８ｘ２ＤＣＴを用いた。しかしながら、例えば図７に示すように４枚のフレームをマルチスライスとして一括して符号化する場合には、マクロキューブとして例えば１６ｘ１６ｘ４という直方体ブロックとして入力されるため、３次元直交変換として４ｘ４ｘ２ＤＣＴや８ｘ８ｘ２ＤＣＴをマクロキューブ内のマクロブロックを２つずつに分割して施してもよいし、マクロブロック４つに対して４ｘ４ｘ４ＤＣＴや８ｘ８ｘ４ＤＣＴを用いてもよい。また例えば１６ｘ１６ｘ２ＤＣＴのような大きなサイズの直交変換を用いてもよいし、４ｘ８ｘ２ＤＣＴのように空間方向が正方ブロックでないサイズの直交変換を用いてもよい。さらには、３次元直交変換であれば、例えばＫＬ変換など離散コサイン変換（ＤＣＴ）以外の変換を用いてもよい。
【００３６】
また、本実施の形態では、２次元変換と３次元変換を適応的に選択できるようになっているが、３次元変換のみを選択できるようにすることも可能であり、この場合はステップ５０６は不要となる。
【００３７】
以上のような処理が施された後、ステップ５０８に進み、マクロキューブ内の量子化直交変換係数がエントロピー符号化器１０８において可変長符号化され、直交変換情報、予測モード情報、動きベクトル情報とともに多重化される。エントロピー符号化の詳細については、後述する。
【００３８】
最後にステップ５０９において、当該マルチスライス内の全てのマクロキューブが符号化されたかどうかが判定され、当該マクロキューブがマルチスライス内の最後のマクロキューブではない場合にはステップ５０１に戻り、次のマクロキューブの符号化が前述の処理手順で行われる。当該マクロキューブがマルチスライス内の最後のマクロキューブの場合には、マルチスライス符号化の処理が終了する。
【００３９】
次に図１０および図１１を用いて前述の符号化構造情報１１９や、マクロキューブ内の予測画像信号に施される直交変換としてどのような変換を用いたかを示す直交変換情報１２１をエントロピー符号化器１０８で符号化データに多重化して送信する方法について説明する。
【００４０】
図１０に、本実施形態で用いられるシンタクスの構造の例を示す。このシンタクス構造例において、アクセスユニット（３０１）は、復号化処理の際に読み込まれる単位であり、この単位ごとに復号化処理が行われる。アクセスユニット（３０１）の内部には、処理の内容や符号化構造に応じて、ハイレベルシンタクス（３０２）、マルチスライスレイヤシンタクス（３０５）、スライスレベルシンタクス（３１２）などが詰め込まれている。ハイレベルシンタクス（３０２）には、スライス以上の上位レイヤのシンタクス情報が詰め込まれている。マルチスライスレベルシンタクス（３０５）は、マルチスライス毎に必要な情報が明記されている。一方、スライスレベルシンタクス（３１２）は、スライス毎に必要な情報が明記されている。
【００４１】
マルチスライスレベルシンタクス（３０５）は、含まれている複数のスライスそれぞれに対するスライスヘッダシンタクス（３０６ａ〜３０６ｎ）とマルチスライスデータシンタクス（３０７）などから構成されている。マルチスライスデータシンタクス（３０７）は、マルチスライス内に含まれるマクロキューブレイヤの復号に必要な情報が明記されたマクロキューブレイヤシンタクス（３０８）が含まれる。マクロキューブレイヤシンタクスは、マクロキューブヘッダシンタクス（３０９）およびマクロキューブデータシンタクス（３１０）から構成されており、マクロキューブデータシンタクスは、内部に含まれる複数のマクロブロックレイヤの復号にそれぞれ必要な情報が明記された複数のマクロブロックレイヤシンタクス（３１１）から構成される。
【００４２】
一方で、スライスレベルシンタクス（３１２）は、スライスヘッダシンタクス（３１３）とスライスデータシンタクス（３１４）から構成される。スライスデータシンタクスは、スライス内に含まれるマクロブロックレイヤの復号に必要な情報が明記されたマクロブロックレイヤシンタクス（３１５）が含まれており、マクロブロック毎に必要とされる量子化パラメータの変更値やモード情報などが明記されている。
【００４３】
上述したシンタクスは復号化時に必要不可欠な構成要素であり、これらのシンタクス情報が欠けると復号化時に正しくデータを復元できなくなる。  
マルチスライスレイヤ内部のシンタクス構造の一例を図１１（Ａ）に示す．ｌｏｇ２＿ｓｌｉｃｅ＿ｃｎｔ＿ｍｉｎｕｓ＿１は、マルチスライス内に何枚のスライスが含まれているか，即ち何枚のフレームを一括符号化するかを指定する。この値から、マルチスライス内に含まれるスライスの枚数ｓｌｉｃｅ＿ｎｕｍは例えば以下のように計算される。
【数１】
2010135863.tif 000003
【００４４】
続いて、マルチスライス内に含まれる各スライスのヘッダ情報を明記したスライスヘッダシンタクスｓｌｉｃｅ＿ｈｅａｄｅｒ（）がｓｌｉｃｅ＿ｎｕｍ個送信される．ｓｌｉｃｅ＿ｈｅａｄｅｒ（）は例えばＨ．２６４と同様のシンタクスを用いる。その後，マルチスライス内の実際の符号化データの情報を明記したマルチスライスデータシンタクスｍｕｌｔｉ＿ｓｌｉｃｅ＿ｄａｔａ（）が送信される。
【００４５】
図１１（Ｂ）はマルチスライスデータシンタクスｍｕｌｔｉ＿ｓｌｉｃｅ＿ｄａｔａ（）の一例を示している。マルチスライスデータシンタクスの内部では、マルチスライス内のマクロキューブの数だけのｍｃｕｂｅ＿ｓｋｉｐ＿ｆｌａｇか、またはマクロキューブレイヤシンタクスｍａｃｒｏｃｕｂｅ＿ｌａｙｅｒ（）が送信される。ｍｃｕｂｅ＿ｓｋｉｐ＿ｆｌａｇはマクロキューブの復号化の際に必要な情報を一切明記せずともそれまでの符号化および復号化の情報から復号可能かどうかを示すフラグであり、ＴＲＵＥの場合はマクロキューブレイヤシンタクス以下の情報を送信しなくてもよい。ＦＡＬＳＥの場合には、マルチスライス内に含まれるマクロキューブの復号に必要な情報を明記したマクロキューブレイヤシンタクスｍａｃｒｏｃｕｂｅ＿ｌａｙｅｒ（）がｅｎｄ＿ｏｆ＿ｓｌｉｃｅ＿ｆｌａｇが１となるまで、順次送信される。
【００４６】
ｅｎｄ＿ｏｆ＿ｓｌｉｃｅ＿ｆｌａｇは、マルチスライス内に含まれるマクロキューブのシンタクスが全て送信されたかどうかを示すフラグを示しており、０の場合はまだ送信されていないマクロキューブシンタクスが存在することを示す。１の場合は、マルチスライス内のマクロキューブシンタクスが全て送信されたことを示す。
【００４７】
図１１（Ｃ）にマクロキューブレイヤｍａｃｒｏｃｕｂｅ＿ｌａｙｅｒ（）のシンタクス構造の一例を示す。マクロキューブレイヤは内部に含まれる予測残差が２Ｄ／３Ｄのどちらの変換を用いて変換されているかを示す１ビットのフラグｔｈｒｅｅ＿ｄ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇを含んでいる。このフラグは３次元変換のみを利用可能とする場合には必ずしも必要がない。また，マルチスライスレイヤに４枚のスライスを含む場合には，３次元直交変換の時間方向の変換サイズを示すｌｏｇ２＿ｔｅｍｐｏｒａｌ＿ｔｒａｎｓｆｏｒｍ＿ｓｉｚｅ＿ｍｉｎｕｓ＿１を送信する．この値を用いて、３次元変換の時間方向の変換サイズＴｓｉｚｅは例えば以下のように計算される。
【数２】
2010135863.tif 000004
【００４８】
ｌｏｇ２＿ｔｅｍｐｏｒａｌ＿ｔｒａｎｓｆｏｒｍ＿ｓｉｚｅ＿ｍｉｎｕｓ＿１は、マルチスライスレイヤに含まれるスライス数が２枚か４枚の場合には１ビットのフラグとして送信できる。すなわち、時間方向の変換サイズが２の場合には０、４の場合には１を送信すればよい。また、マルチスライスレイヤに含まれるスライス数が２の場合には、このフラグは時間方向の変換サイズが２の変換のみを３Ｄの変換として使用することになるため、必要のないフラグとなる．
さらに，３Ｄ変換が選択されている場合には，空間方向の変換サイズとして４ｘ４か８ｘ８のどちらが用いられているかを示す１ビットのフラグｔｒａｎｓｆｏｒｍ＿ｓｉｚｅ＿８ｘ８＿ｆｌａｇを送信する。２Ｄ変換が選択されている場合は，Ｈ．２６４と同様にマクロブロックレイヤでこれらの情報を送信し、ここでは必ずしも送信しなくてもよい。
【００４９】
マクロキューブレイヤ内部では，マルチスライス内のスライス数ｓｌｉｃｅ＿ｃｎｔ個のｍｂ＿ｓｋｉｐ＿ｆｌａｇまたはマクロブロックレイヤのシンタクスｍａｃｒｏｂｌｏｃｋ＿ｌａｙｅｒ（）が送信される。ｍｂ＿ｓｋｉｐ＿ｆｌａｇは、マクロブロックの復号化の際に必要な情報を一切明記せずともそれまでの符号化および復号化の情報から復号可能かどうかを示すフラグであり、ＴＲＵＥの場合はマクロキューブレイヤシンタクス以下の情報を送信しなくてもよい。当該フラグがＦＡＬＳＥの場合には、マクロブロックレイヤシンタクスｍａｃｒｏｂｌｏｃｋ＿ｌａｙｅｒ（）が送信される。マクロブロックレイヤのシンタクスは，例えばＨ．２６４と同様のシンタクスを用いる。
【００５０】
Ｈ．２６４のマクロブロックレイヤのシンタクスでは、モード情報や動きベクトルなど復号化に必要な情報の一部を当該マクロブロックの左と上のマクロブロックから予測して符号化を行うが、本実施の形態においても、当該マクロブロックを含む同一スライスの左と上のマクロブロックからそれぞれＨ．２６４と同様の予測を行ってもよいし、当該マクロブロックを含むマクロキューブ内の別のスライスに属するマクロブロックや、そのマクロブロックと同一スライス内の左や上のブロックから予測を行ってもよい。また、マクロブロックレイヤのシンタクスは，例えばＨ．２６４と同様のシンタクスを用いた際に、マクロキューブレイヤシンタクスｍａｃｒｏｃｕｂｅ＿ｌａｙｅｒ（）で既に送信されており、重複するフラグ（例えば、ｔｒａｎｓｆｏｒｍ＿ｓｉｚｅ＿８ｘ８＿ｆｌａｇ）は省略してもよい。
【００５１】
次に、図１２および図１３を用いて３次元直交変換を行った際の量子化直交変換係数情報１０７のエントロピー符号化方法の具体例を説明する。  
３次元直交変換を行い、量子化が施された量子化直交変換係数情報１０７は、例えば図１２に示すように３次元直交変換係数、即ちマクロキューブ内の各マクロブロック０，１，２，３の量子化直交変換係数を時間方向にそれぞれ例えば４つに分割し、それぞれを各マクロブロックレイヤのサブブロックの変換係数として、例えばＨ．２６４と同様のスキャン手順（ジグザグスキャン）やエントロピー符号化の手順を用いて符号化を行う。
【００５２】
また、図１２とは別の一例として、図１３に示すように、３次元直交変換を施す単位である、マクロキューブ内のサブマクロブロックを時間方向に連結したサブマクロキューブ単位内の量子化直交変換係数情報を、あらかじめ決められたスキャン順序によって一次元の係数列に並べ替えて、その係数列を例えば時間的に一番初めに位置するマクロブロックレイヤの予測残差としてＨ．２６４と同等の手順でエントロピー符号化してもよい。例えば８ｘ８ｘ４変換を行った場合には、サブマクロキューブ内に２５６個の量子化直交変換係数が存在する。これを例えば各係数位置で非零となる係数が発生する確率の高い順に並べ替えて２５６個の一次元係数列としてエントロピー符号化を行う。この場合、図１３に示すように、時間方向のサイズが４のマクロキューブの場合には、残りの３つのマクロブロックレイヤの予測残差を送信するためのシンタクスは必要なくなる。
【００５３】
また、図１３のように３次元直交変換を施す単位であるサブマクロキューブ単位内の変換係数を１次元の係数列に並べ替えたのち、その係数列をマクロキューブ内のマクロブロック数（たとえば図の場合は４）で等分割して、分割された系列をそれぞれ図１２で示すように各マクロブロックレイヤのサブブロックの変換係数として、例えばＨ．２６４と同様の手順でエントロピー符号化を行ってもよい。
【００５４】
図２に本実施の形態における画像復号化装置を示す。まず、エントロピー復号化器２００において、前記符号化装置によって符号化された符号化データ１１７がエントロピー符号化の逆の手順をふんで復号化され、量子化直交変換係数情報１０７ａ、動きベクトル／予測モード情報１１６、符号化構造制御情報１１９、および直交変換情報１２１が得られる。量子化直交変換係数情報１０７ａは直交変換情報１２１に基づいて、逆量子化器２０９及び逆直交変換器２１０により、量子化器１０６及び直交変換器１０４の処理と逆の処理を順次受けて残差信号２０１とされる。ここで逆直交変換器２１０は内部に時間方向の逆直交変換を行う時間方向逆直交変換器２１０ａと、空間方向の逆直交変換を行う空間方向逆直交変換器２１０ｂを含む。直交変換情報１２１に基づいて、スイッチが２１０ｃ側に接続されると、逆量子化直交変換係数情報１０７ｂは空間方向逆直交変換器２１０ｂ及び時間方向逆直交変換器２１０ａの両方によって時空間方向の３次元逆直交変換される。スイッチが２１０ｄ側に接続されると、逆量子化直交変換係数情報１０７ｂは空間方向逆直交変換器２１０ｂだけで空間方向のみの逆直交変換、すなわち２次元直交変換される。逆直交変換器２１０が３次元逆直交変換器として機能する場合、所定の量の直交変換係数を有する１次元の断片化係数列を求め、複数の断片化係数列を連結して１次元の係数列を求め、係数列から３次元直交変換係数を生成し、３次元直交変換係数に対して３次元逆直交変換を行う。逆直交変換器２１０は複数の復号化対象領域の各々の前記直交変換係数を時間方向に連結して３次元直交変換係数を生成し、前記３次元直交変換係数に対して３次元逆直交変換を行うことができる。また、逆直交変換器２１０は所定の量の前記直交変換係数から３次元直交変換係数を生成し、前記３次元直交変換係数に対して３次元逆直交変換を行うことができる。
【００５５】
一方、動きベクトル／予測モード情報１１６は予測画像生成器に入力され、フレームメモリ２１４に格納された復号画像信号２０３から動きベクトル／予測モード情報１１６に基づく予測画像信号１０２が生成される。残差信号２０１と予測画像信号１０２は局部復号画像信号生成器２０２によって加算される。加算された信号はループフィルタ２１３で必要に応じてフィルタ処理がなされ、復号画像信号２０３として出力され、フレームメモリ２１４に格納される。符号化構造制御器２２０は、符号化構造情報１１９に基づいて、復号化部２０の処理を制御するとともに、フレームメモリ２１４内に格納された復号画像信号２０３を表示順序に並び替えて出力する。  
次に、図１４および図１５を用いて本実施の形態における画像復号化装置の具体的な処理の流れを説明する。
【００５６】
図１４は入力された符号化データの復号化処理のおおまかな手順を示す図である。ここで符号化データは、図１０および図１１に示したシンタクス構造を用いて符号化されているとする。まずステップ６０１で処理単位としてアクセスユニットが入力される。次にステップ６０２において、アクセスユニット内のシンタクスがハイレベルシンタクスであるかどうかの判定が行われ、ハイレベルシンタクスの場合にはステップ６０３にて例えばＨ．２６４と同様の復号化処理によってハイレベルシンタクスの復号化が行われる。ハイレベルシンタクスでない場合にはステップ６０４に進む。ステップ６０４では、アクセスユニット内のシンタクスがＢｍスライスであるかどうかの判定が行われる。Ｂｍスライスでない場合には、ステップ６０５に進み、例えばＨ．２６４と同様の処理手順でスライスの復号化が行われる。Ｂｍスライスであった場合にはステップ６０６に進み、マルチスライスの復号化が行われる。マルチスライスの復号化の具体的な処理手順については後述する。
【００５７】
以上の復号化処理が終了すると、ステップ６０７にて符号化データ内のアクセスユニットの全ての復号化が終了したかどうかを判定し、全ての復号化が終了していない場合には、ステップ６０１に戻って次のアクセスユニットの復号化処理を行う。全てのアクセスユニットの復号化が終了すると、符号化データの復号化処理は全て終了する。
【００５８】
図１５は、図１４におけるマルチスライスの復号化処理（ステップ６０６）のさらに具体的な処理手順を示した図である。まずステップ７０１において、マルチスライス内に含まれるフレーム数を管理するカウンタｓｌｉｃｅ＿ｃｎｔを０に初期化する。次に、ステップ７０２でマルチスライス内のｓｌｉｃｅ＿ｃｎｔ番目のスライスに対するスライスヘッダの復号化を行う。この復号化は例えばＨ．２６４と同様の手順を用いて行われる。次にステップ７０３でカウンタをインクリメントし、ステップ７０４でｓｌｉｃｅ＿ｃｎｔすなわち復号化済みのスライスヘッダがマルチスライス内に含まれるスライス数ｓｌｉｃｅ＿ｎｕｍより小さいかどうかを判定する。ステップ７０２から７０４の処理は、復号化済みのスライスヘッダ数がｓｌｉｃｅ＿ｎｕｍ個になるまで繰り返される。
【００５９】
ステップ７０５から７１７は、マルチスライスデータシンタクスの復号化手順である。まず、ステップ７０５において、ｍｃｕｂｅ＿ｓｋｉｐ＿ｆｌａｇの値の復号化が行われ、その値の判定が行われる。ｍｃｕｂｅ＿ｓｋｉｐ＿ｆｌａｇがＴＲＵＥの場合には、ステップ７１２に進む。ｍｃｕｂｅ＿ｓｋｉｐ＿ｆｌａｇがＦＡＬＳＥの場合には、ステップ７０６に進み、マクロキューブヘッダの復号化が行われる。
【００６０】
図１１（Ｃ）のシンタクスを例に説明すると、まずマクロキューブ内の変換が２次元変換か３次元変換かを示すｔｈｒｅｅ＿ｄ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇの復号化が行われる。次に、ｔｈｒｅｅ＿ｄ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇの値が３次元変換を示す値であり、かつマクロキューブ内のマクロブロック数、すなわちマルチスライス内に含まれるスライス数ｓｌｉｃｅ＿ｎｕｍが２より大きな値であった場合には、３次元変換の時間方向の変換サイズを示すｌｏｇ２＿ｔｅｍｐｏｒａｌ＿ｔｒａｎｓｆｏｒｍ＿ｓｉｚｅ＿ｍｉｎｕｓ＿１が復号化される。さらに、ｔｈｒｅｅ＿ｄ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇの値が３次元変換を示す値である場合には、空間方向の変換サイズが４ｘ４か８ｘ８かを示すｔｒａｎｓｆｏｒｍ＿ｓｉｚｅ＿８ｘ８＿ｆｌａｇが復号化される。
【００６１】
ステップ７０７〜７１１は、マクロキューブ内に含まれるマクロブロックレイヤの復号化の処理手順を示している。まず、ステップ７０７でマクロキューブ内に含まれるマクロブロックの数を管理するカウンタｍｂ＿ｃｎｔを０に初期化する。次に、ステップ７０８において、ｍｂ＿ｓｋｉｐ＿ｆｌａｇの復号化が行われ、その値の判定が行われる。ｍｂ＿ｓｋｉｐ＿ｆｌａｇがＴＲＵＥの場合には、ステップ７１０に進む。ｍｂ＿ｓｋｉｐ＿ｆｌａｇがＦＡＬＳＥの場合には、マクロキューブ内のｍｂ＿ｃｎｔ番目のマクロブロックレイヤのシンタクスの復号化が行われる。この復号化は例えばＨ．２６４と同様の手順を用いて行われる。
【００６２】
ステップ７１０において、カウンタｍｂ＿ｃｎｔのインクリメントが行われ、マクロキューブ内の全てのマクロブロックの復号化が終了したかどうかをｍｂ＿ｃｎｔがｓｌｉｃｅ＿ｎｕｍより小さいかどうかで判断し、終了していない場合にはステップ７０８に戻って、次のマクロブロックレイヤの復号化処理が行われる。ステップ７０８−７１１の処理は、マクロキューブ内の全てのマクロブロックの復号化が終了するまで繰り返される。マクロキューブ内の全てのマクロブロックの復号化が終了すると、ステップ７１２に進む。ここで、マクロキューブ内の残差信号２０１の量子化直交変換係数情報１０７ａは、前述の量子化直交変換係数のエントロピー符号化およびスキャン手順と逆の手順を経て再構成される。
【００６３】
ステップ７１２では、マクロキューブ内の各マクロブロックに対する予測画像信号１０２を作成する。予測画像信号１０２の作成は、フレームメモリ２１４に格納されているすでに復号化済みの参照画像信号から、各マクロブロックの復号化済みの予測モード／動きベクトル情報１１６に基づいて作成される。
【００６４】
処理はステップ７１３に進み、マクロキューブ内の残差信号２０１が２次元直交変換されているか、３次元直交変換されているかをｔｈｒｅｅ＿ｄ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇによって判断する。ｔｈｒｅｅ＿ｄ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇが２次元直交変換を示している場合にはステップ７１４に進む。３次元直交変換を示している場合にはステップ７１５に進む。
【００６５】
ステップ７１４では、２次元直交変換の場合の逆量子化と逆直交変換の処理が行われる。マクロキューブ内の各マクロブロックの量子化直交変換係数１０７ａに対し、逆量子化器２０９による逆量子化と逆直交変換器２１０による逆直交変換が行われる。この際、逆直交変換器２１０内部のスイッチは２１０ｄ側に接続され、空間方向逆直交変換器２１０ｂによる空間方向逆直交変換のみが施される。この処理は、例えばＨ．２６４と同等の手順で行われる。
【００６６】
ステップ７１５では、３次元直交変換の場合の逆量子化と逆直交変換の処理が行われる。例えば、まずＨ．２６４と同等の手順で量子化直交変換係数１０７ａに対して逆量子化器２０９による逆量子化が行われる。次に、逆直交変換器２１０による３次元逆直交変換が行われる。この際、逆直交変換器２１０内部のスイッチは２１０ｄ側に接続され、逆量子化直交変換係数１０７ｂはまず空間方向逆直交変換器２１０ｂにより空間方向の逆直交変換される。例えば、空間方向の変換サイズが４ｘ４の場合には４ｘ４ＩＤＣＴ（逆離散コサイン変換）が、８ｘ８の場合には８ｘ８ＩＤＣＴがマクロキューブ内の各マクロブロックの各サブブロックに対して施される。さらに、出力された変換係数に対して、時間方向逆直交変換器２１０ａによって時間方向の逆直交変換が施される。たとえば時間方向の変換サイズが２の場合には各サブブロックの空間上で同一位置に位置する２つの変換係数列に対して、２ｘ２ＩＤＣＴが施される。時間方向の変換サイズが４であった場合にも、同様に４ｘ４ＩＤＣＴが施される。
【００６７】
以上、ステップ７１３、７１４、７１５の処理によって、マクロキューブ内の残差信号２０１が得られ、マクロキューブ内の各マクロブロックの残差信号２０１を、予測画像信号１０２に足し合わせることによって、復号画像信号２０３が生成される（ステップ７１６）。なお、ステップ７１３、７１４、７１５の処理は、ｍｃｕｂｅ＿ｓｋｉｐ＿ｆｌａｇがＴＲＵＥの場合は必ずしも行う必要はなく、マクロキューブ内の各画素の残差信号２０１の値を０とすればよい。また、ステップ７１４の処理についても、ｍｂ＿ｓｋｉｐ＿ｆｌａｇがＴＲＵＥの場合には、必ずしも行う必要はなく、当該マクロブロックの各画素の残差信号２０１の値を０とすればよい。また、ステップ７１５において、マクロキューブ内のマクロブロックのいずれかがｍｂ＿ｓｋｉｐ＿ｆｌａｇ＝＝ＴＲＵＥによってスキップされている場合は当該マクロブロックの量子化直交変換係数を０として逆量子化および逆３次元直交変換の処理を行うものとする。
【００６８】
最後に、ステップ７１７において、ｅｎｄ＿ｏｆ＿ｓｌｉｃｅ＿ｆｌａｇがＴＲＵＥであるかどうかを判定する。このフラグがＦＡＬＳＥの場合には、ステップ７０５に戻り、ステップ７０５以下の処理が全てのマクロキューブの復号を終えるまで繰り返される。全てのマクロキューブの復号が終了すると、マルチスライスの復号化処理が終了する。
【００６９】
以上の構成によれば、互いに参照されないＢフレームの予測残差をブロックごとに複数枚まとめて、２次元直交変換と３次元直交変換のいずれかを選択し、時間方向の冗長性に応じて最適な直交変換を選択することができるため、符号化効率を向上させることができる。また、互いに参照されない表示時刻の異なるＢフレームを一括して符号化するため、それぞれのＢフレームの予測画像信号は既に符号化された参照画像から独立に作成することができるため、符号化側と復号化側でミスマッチを生じさせることなく符号化／復号化を行うことが可能である。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施形態１に従う画像符号化装置のブロック図
【図２】本発明の実施形態１に従う画像復号化装置のブロック図
【図３】一般的な動画像符号化の符号化構造を示す図
【図４】実施形態の符号化構造の一例を示す図
【図５】実施形態の符号化単位の一例を示す図
【図６】実施形態の別の符号化構造の一例を示す図
【図７】実施形態の符号化単位の別の一例を示す図
【図８】実施形態の符号化手順を示すフローチャート
【図９】実施形態のマルチスライスの符号化手順を示すフローチャート
【図１０】実施形態の符号化データのシンタクス構造の一例を示す図
【図１１】実施形態の符号化データのシンタクスの一例を示す図
【図１２】実施形態の予測残差信号の量子化直交変換係数の符号化構造の一例を示す図
【図１３】実施形態の予測残差信号の量子化直交変換係数の符号化構造の別の一例を示す図
【図１４】実施形態の復号化手順を示すフローチャート
【図１５】実施形態マルチスライスの復号化手順を示すフローチャート
【符号の説明】
【００７１】
１０…画像符号化器、１００…入力画像信号、１０１…差分信号生成器、１０２…予測画像信号、１０３…予測誤差信号、１０４…直交変換器、１０４ａ…時間方向直交変換器、１０４ｂ…空間方向直交変換器、１０５…直交変換係数情報、１０６…量子化器、１０７…量子化直交変換係数情報、１０８…エントロピー符号化器、１０９…逆量子化器、１１０…逆直交変換器、１１０ａ…時間方向逆直交変換器、１１０ｂ…空間方向逆直交変換器、１１１…局部復号画像信号生成器、１１２…局部復号画像信号、１１３…ループフィルタ、１１４…フレームメモリ、１１５…予測画像生成器、１１６…予測モード／動きベクトル情報、１１７…符号化データ、１１８…入力フレームバッファ、１１９…符号化構造制御情報、１２０…符号化構造制御器、２０…画像復号化器、２００…エントロピー復号化器、２０１…残差信号、２０２…局部復号画像信号生成器、２０３…復号画像信号、１０７ａ…量子化直交変換係数情報、１０７ｂ…逆量子化直交変換係数情報、２０９…逆量子化器、２１０…逆直交変換器、２１０ａ…時間方向逆直交変換器、２１０ｂ…空間方向逆直交変換器、２１３…ループフィルタ、２１４…フレームメモリ、２１５…予測画像生成器、２２０…符号化構造制御器
【図１】
2010135863.tif 000005
【図２】
2010135863.tif 000006
【図３】
2010135863.tif 000007
【図４】
2010135863.tif 000008
【図５】
2010135863.tif 000009
【図６】
2010135863.tif 000010
【図７】
2010135863.tif 000011
【図８】
2010135863.tif 000012
【図９】
2010135863.tif 000013
【図１０】
2010135863.tif 000014
【図１１】
2010135863.tif 000015
【図１２】
2010135863.tif 000016
【図１３】
2010135863.tif 000017
【図１４】
2010135863.tif 000018
【図１５】
2010135863.tif 000019