(57)【要約】【課題】規則違反が発生した場合の、処理量の増加を低減することのできる画像符号化装置を提供する。【解決手段】本発明に係る画像符号化装置は、画像データを予測符号化し、符号化データを生成する予測符号化部１０と、前記符号化データに算術符号化のための２値化を行い、２値データを生成する２値化部２１と、前記２値データを保持する２値データバッファ２２と、２値データバッファ２２に保持されている２値データを算術符号化し、ストリームデータを生成する、２値化部２１と非同期に動作する算術符号化部２３と、所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出部３０とを備え、算術符号化２３は、検出部３０により前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において２値データバッファ２２に保持されている２値データを引き続き算術符号化する。【選択図】図１
2008016947.tif 000002
【特許請求の範囲】
【請求項１】
画像データを予測符号化し、符号化データを生成する予測符号化手段と、
前記符号化データに算術符号化のための２値化を行い、２値データを生成する２値化手段と、
前記２値データを保持する２値データバッファと、
前記２値データバッファに保持されている２値データを算術符号化し、ストリームデータを生成する、前記２値化手段と非同期に動作する算術符号化手段と、
所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出手段と、
前記検出手段により検出されなかったストリームデータを出力する出力手段とを備え、
前記予測符号化手段は、前記検出手段により検出されたストリームデータに対応する画像データを、符号化条件を変更し再符号化し、
前記算術符号化手段は、前記検出手段により前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において前記２値データバッファに保持されている２値データを引き続き算術符号化する
ことを特徴とする画像符号化装置。
【請求項２】
前記出力手段は、前記検出手段により前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点から、再符号化されたストリームデータを出力するまで、検出されたストリームデータ以降のストリームデータを出力せず保持する
ことを特徴とする請求項１記載の画像符号化装置。
【請求項３】
前記予測符号化手段は、
参照画像を保持する画像メモリと、
前記画像データを用いてフレーム内予測を行うフレーム内予測手段と、
前記参照画像と前記画像データとを用いてフレーム間予測を行うフレーム間予測手段と、
前記フレーム間予測手段がフレーム内予測を行ったデータ、および、前記フレーム間予測手段がフレーム間予測を行ったデータを直交変換する直交変換手段と、
前記直交変換手段により直交変換されたデータを量子化し、前記符号化データを生成する量子化手段とを備え、
前記画像符号化装置は、さらに、
前記符号化データを逆量子化し、第１逆量子化データを生成する逆量子化手段と、
前記第１逆量子化データを逆直交変換し、第１逆直行変換データを生成する逆直交変換手段と、
前記検出手段により検出されたストリームデータを算術復号化し、第１復号化データを生成する算術復号化手段と、
前記第１復号化データを逆２値化し、第１逆２値化データを生成する逆２値化手段とを備え、
前記画像メモリは、前記第１逆直交変換データに基づくデータを前記参照画像として保持し、
前記逆量子化手段は、前記第１逆２値化データを逆量子化し、第２逆量子化データを生成し、
前記逆直交変換手段は、前記第２量子化データを逆直交変換し、第２逆直交変換データを生成し、
前記フレーム内予測手段は、前記第２逆直交変換データに基づくデータを前記画像データとして用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム内予測を行い、
前記フレーム間予測手段は、前記第２逆直交変換データに基づくデータを前記画像データとして用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム間予測を行う
ことを特徴とする請求項１記載の画像符号化装置。
【請求項４】
前記算術復号化手段は、前記検出手段に検出されたストリームデータに対応する画像データのフレーム間予測に用いられる参照画像に対応するストリームデータを算術復号化し、第２復号化データを生成し、
前記逆２値化手段は、前記第２復号化データを逆２値化し、第２逆２値化データを生成し、
前記逆量子化手段は、前記第２逆２値化データを逆量子化し、第３逆量子化データを生成し、
前記逆直交変換手段は、前記第３量子化データを逆直交変換し、第３逆直交変換データを生成し、
前記フレーム間予測手段は、前記第３逆直交変換データに基づくデータを前記参照画像として用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム間予測を行う
ことを特徴とする請求項３記載の画像符号化装置。
【請求項５】
前記予測符号化手段は、
参照画像および前記画像データを保持する画像メモリと、
前記参照画像と前記画像データとを用いてフレーム間予測を行うフレーム間予測手段と、
前記フレーム間予測手段がフレーム間予測を行ったデータを直交変換する直交変換手段と、
前記直交変換手段により直交変換されたデータを量子化し、前記符号化データを生成する量子化手段とを備え、
前記画像符号化装置は、さらに、
前記符号化データを逆量子化し、第１逆量子化データを生成する逆量子化手段と、
前記第１逆量子化データを逆直交変換し、第１逆直行変換データを生成する逆直交変換手段と、
前記検出手段に検出されたストリームデータに対応する画像データのフレーム間予測に用いられる参照画像に対応するストリームデータを算術復号化し、第１復号化データを生成する２値化算術復号化手段と、
前記第１復号化データを逆２値化し、第１逆２値化データを生成する逆２値化手段とを備え、
前記画像メモリは、前記第１逆直交変換データに基づくデータを前記参照画像として保持し、
前記逆量子化手段は、前記第１逆２値化データを逆量子化し、第２逆量子化データを生成し、
前記逆直交変換手段は、前記第２量子化データを逆直交変換し、第２逆直交変換データを生成し、
前記フレーム間予測手段は、前記第２逆直交変換データに基づくデータを前記参照画像として用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム間予測を行う
ことを特徴とする請求項１記載の画像符号化装置。
【請求項６】
前記予測符号化手段は、画像データの予測符号化の終了後、かつ、算術符号化手段よる２値算術符号化前に、該画像データの予測符号化に用いられた参照画像を前記画像メモリから削除する
ことを特徴とする請求項４または５記載の画像符号化装置。
【請求項７】
画像データを予測符号化し、符号化データを生成する予測符号化手段と、
前記符号化データに算術符号化のための２値化を行い、２値データを生成する２値化手段と、
前記２値データを保持する２値データバッファと、
前記２値データバッファに保持されている２値データを算術符号化し、ストリームデータを生成する、前記２値化手段と非同期に動作する算術符号化手段と、
所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出手段と、
前記検出手段により検出されなかったストリームデータを出力する出力手段とを備え、
前記予測符号化手段は、前記検出手段により検出されたストリームデータに対応する画像データを、符号化条件を変更し再符号化し、
前記算術符号化手段は、前記検出手段により前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において前記２値データバッファに保持されている２値データを算術符号化する
ことを特徴とする集積回路。
【請求項８】
画像データを予測符号化し、符号化データを生成する予測符号化ステップと、
前記符号化データに算術符号化のための２値化を行い、２値データを生成し、２値データバッファに保持する２値化ステップと、
前記２値データバッファに保持されている２値データを、前記２値化ステップにおける２値化と非同期に算術符号化し、ストリームデータを生成する算術符号化ステップと、
所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出ステップと、
前記検出ステップにおいて検出されなかったストリームデータを出力する出力ステップと、
前記検出ステップにおいて検出されたストリームデータに対応する画像データを、符号化条件を変更し再符号化する再符号化ステップと、
前記検出ステップにおいて前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において前記２値データバッファに保持されている２値データを算術符号化する算術符号化ステップとを含む
ことを特徴とする画像符号化方法。
【請求項９】
画像データを予測符号化し、符号化データを生成する予測符号化ステップと、
前記符号化データに算術符号化のための２値化を行い、２値データを生成し、２値データバッファに保持する２値化ステップと、
前記２値データバッファに保持されている２値データを、前記２値化ステップにおける２値化と非同期に算術符号化し、ストリームデータを生成する算術符号化ステップと、
所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出ステップと、
前記検出ステップにおいて検出されなかったストリームデータを出力する出力ステップと、
前記検出ステップにおいて検出されたストリームデータに対応する画像データを、符号化条件を変更し再符号化する再符号化ステップと、
前記検出ステップにおいて前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において前記２値データバッファに保持されている２値データを算術符号化する算術符号化ステップと
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化装置および画像符号化方法に関し、特に、エントロピー符号化（可変長符号化）を行う画像符号化装置および画像符号化方法に関する。
【背景技術】
【０００２】
近年、ＡＶ情報のデジタル化が進み、映像信号をデジタル化して取り扱うことのできる機器が広く普及しつつある。映像信号は、膨大な情報量を有するので、記録容量および伝送効率を考慮して情報量を削減しつつ符号化することが一般的である。映像信号の符号化技術として、Ｈ．２６４という国際規格が定められている。Ｈ．２６４では、エントロピー符号化（可変長符号化）が導入されている。
【０００３】
Ｈ．２６４で定められたエントロピー符号化には、コンテキスト適応型２値算術符号化方式（ＣＡＢＡＣ：Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）が採用され、従来の可変長符号化より圧縮率の向上を実現している。ＣＡＢＡＣは、時間とともに変化する符号化対象の出現頻度を変化させる方式で、算術符号化と呼ばれる方式である。ＣＡＢＡＣでは、通常の算術符号化のほかに圧縮すべき符号化ごとにコンテキストを付け、そのコンテキストごとに出現頻度の変更を行っている。
【０００４】
ＣＡＢＡＣは、多値データを２値化データに変換する２値化と、２値化データに対してコンテキストを算出し算術符号化を行う処理とを含む。
【０００５】
また、Ｈ．２６４において、マクロブロックの最大符号量は、４：２：０、ｂｉｔ＿ｄｅｐｔｈ８ビットの場合で、３２００ビットに制限されている。マクロブロックの符号量が３２００ビットを超える場合は、規格違反となり、該マクロブロックの符号化の条件を変更して再符号化を行わなければならない。また、再符号化を行う代わりに、ｍｂ＿ｔｙｐｅをＩ＿ＰＣＭとして、符号化データの代わりにＩ＿ＰＣＭデータをビットストリームとして保存する方法もある。ＣＡＢＡＣで出力される符号量は実際に符号化してみるまで正確に知ることは困難であるため、符号量が３２００ビットを超えているか否かの判定はＣＡＢＡＣの符号化後に行われている。
【０００６】
さらに、ＣＡＢＡＣの算術符号化処理は、コンテキストに応じて大量のビットストリームを出力する必要があるため、高クロックで動作させる必要あり、回路規模および消費電力が大きくなる。そこで、従来のＣＡＢＡＣを用いる画像符号化装置は、符号化する画像データにより、処理量が大きく変化する特性を利用して、ＣＡＢＡＣの平均的な処理量で回路実装し、２値化処理を行う回路と算術符号化処理を行う回路とを、非同期に動作させることで、クロック数を抑えている。しかしながら、従来のＣＡＢＡＣを用いる画像符号化装置において、平均的な処理速度で、算術符号化を実施すると、２値化処理と算術符号化処理との間にデータの遅延が発生し、数フレーム分の２値化データが算術符号化待ちの状態で蓄積する場合がある。従来のＣＡＢＡＣを用いる画像符号化装置は、３２００ビットを超えるマクロブロックが含まれるフレームが発生した場合、３２００ビットを超えるマクロブロックが含まれるフレームおよび蓄積された２値化データをすべて破棄し、再符号化を行う。
【０００７】
図７は、従来のＣＡＢＡＣを用いる画像符号化装置の構成を示すブロック図である。
図７に示す画像符号化装置３００は、入力画像に予測符号化およびＣＡＢＡＣによる符号化を行い、Ｈ．２６４に従ったストリームデータを出力する。画像符号化装置３００は、予測符号化部３１０と、エントロピー符号化部３２０と、検出部３３０と、出力部３４０とを備える。
【０００８】
予測符号化部３１０は、入力画像のフレーム間の変化分を抽出することで入力画像の予測符号化を行い、符号化したデータをエントロピー符号化部３２０に出力する。予測符号化部３１０は、フレーム内予測部３１１と、フレーム間予測部３１２と、画像メモリ３１３と、直交変換部３１４と、量子化部３１５と、逆量子化部３１６と、逆直交変換部３１７とを備える。
【０００９】
フレーム内予測部３１１は、入力画像からフレーム内予測を行い、予測画像を生成し、出力する。
【００１０】
フレーム間予測部３１２は、入力画像と画像メモリ３１３に保持されている参照画像とから、フレーム間予測を行い、予測画像を生成し、出力する。
【００１１】
画像メモリ３１３は、入力画像である符号化対象画像３３１と、予測符号化部３１０における予測符号化に用いられる参照画像３３２とを保持する。
【００１２】
直交変換部３１４は、フレーム内予測部３１１またはフレーム間予測部３１２が出力する予測画像を直交変換する。
【００１３】
量子化部３１５は、直交変換部３１４が直交変換したデータを量子化し、生成した符号化データをエントロピー符号化部３２０および逆量子化部３１６に出力する。
【００１４】
逆量子化部３１６は、量子化部３１５が量子化した符号化データを逆量子化する。
逆直交変換部３１７は、逆量子化部３１６が逆量子化したデータを逆直交変換する。画像メモリ３１３は、逆直交変換部３１７が逆直交変換したデータを参照画像３３２として保持する。
【００１５】
エントロピー符号化部３２０は、予測符号化部３１０により予測符号化されたデータにＣＡＢＡＣによる符号化を行う。エントロピー符号化部３２０は、２値化部３２１と、２値データバッファ３２２と、２値算術符号化部３２３とを備える。
【００１６】
２値化部３２１は、予測符号化部３１０により符号化されたデータの２値化を行い、２値データを生成する。
【００１７】
２値データバッファ３２２は、２値化部３２１が２値化した２値データを保持する。
２値算術符号化部３２３は、２値データバッファ３２２に保持される２値データを２値算術符号化し、ストリームデータを生成する。また、２値算術符号化部３２３は、２値化部３２１と非同期で動作する。よって、２値化部３２１の処理に対し、２値算術符号化部３２３の処理が遅れた場合には、２値データバッファ３２２に２値化部３２１が処理した２値データが蓄積される。
【００１８】
検出部３３０は、エントロピー符号化部３２０が生成したストリームデータのうち、３２００ビット以上の符号量のマクロブロックを含むストリームデータを検出する。
【００１９】
出力部３４０は、検出部３３０により検出されなかったストリームデータを出力する。
ストリームデータが３２００ビットを超えるマクロブロックを含む場合には、エントロピー符号化部３２０は、３２００ビットを超えるマクロブロックを含むストリームデータおよび２値データバッファ３２２に保持されている２値データを破棄する。予測符号化部３１０は、破棄したデータの再度符号化を行う。
【００２０】
図８は、従来のＣＡＢＡＣを用いる画像符号化装置における３２００ビットを超えるデータが発生した場合の動作を示す図である。なお、各ピクチャの添え字は、Ｉはフレーム内での予測符号化を行うピクチャ、Ｐは１方向のフレーム間で予測符号化を行うピクチャ、Ｂは２方向のフレーム間で予測を行うピクチャを意味する。
【００２１】
例えば、図８に示すように、ピクチャＰ２３のマクロブロックが２値算術符号化において３２００ビットを超え、規則違反が発生したとする。また、この時、ピクチャＢ２１、Ｂ２２、Ｐ２６、Ｂ２４、Ｂ２５およびＰ２９は、２値化部３２１において２値化処理が終了し、２値データバッファ２２に保持されているとする。
【００２２】
従来の画像符号化装置は、ピクチャＰ２３が２値算術符号化において３２００ビットを超えた場合には、規則違反が発生したピクチャＰ２３、２値データバッファ２２に保持されているピクチャＢ２１、Ｂ２２、Ｐ２６、Ｂ２４、Ｂ２５およびＰ２９を再符号化する。これは、後続のフレームＢ２１等が、ピクチャＰ２３を参照画像として用いているためである。ピクチャＰ２３を予測符号化部３１０で再符号化するとピクチャＰ２３の参照画像が更新される。よって、ピクチャＰ２３の参照画像を用いているフレームも予測符号化部３１０で再符号化する必要がある。
【００２３】
一方、２値算術符号化部３２３に入力するデータを監視し、３２００ビットを超えそうな場合には、Ｉ＿ＰＣＭ符号化へ切り替えるという方法が提案されている（例えば、特許文献１参照）。この方法を用いると２値算術符号化を実施するまえに、発生ビット量を推定することにより、３２００ビットを超えるマクロブロックの発生を予防し、再符号化を実施しなくてもよい。
【特許文献１】特開２００４−１３５２５１号公報
【発明の開示】
【発明が解決しようとする課題】
【００２４】
しかしながら、特許文献１に記載の画像符号化装置では、正確にはＣＡＢＡＣ後の符号量を推定できず、３２００ビットを超えるマクロブロックの発生を減少させることはできるが、完全には防ぐことができない。すなわち、特許文献１に記載の画像符号化装置においても、上述した従来の画像符号化装置３００と同様に、３２００ビットを超えるマクロブロックが発生した場合、２値データバッファに保持される算術符号化処理待ちの２値化データを全て破棄し、規格違反を起こしたピクチャ以降のデータ全てを再度画像メモリから読み出し、再符号化を行う必要がある。よって、従来の画像符号化装置は、規格違反が発生した後、予測符号化部３１０およびエントロピー符号化部３２０において、通常の符号化と再符号化を平行して実施する必要があり、処理量が増加するという問題がある。
【００２５】
そこで、本発明は、規則違反が発生した場合の、処理量の増加を低減することのできる画像符号化装置を提供することを目的とする。
【課題を解決するための手段】
【００２６】
上記目的を達成するために、本発明に係る画像符号化装置は、画像データを予測符号化し、符号化データを生成する予測符号化手段と、前記符号化データに算術符号化のための２値化を行い、２値データを生成する２値化手段と、前記２値データを保持する２値データバッファと、前記２値データバッファに保持されている２値データを算術符号化し、ストリームデータを生成する、前記２値化手段と非同期に動作する算術符号化手段と、所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出手段と、前記検出手段により検出されなかったストリームデータを出力する出力手段とを備え、前記予測符号化手段は、前記検出手段により検出されたストリームデータに対応する画像データを、符号化条件を変更し再符号化し、前記算術符号化手段は、前記検出手段により前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において前記２値データバッファに保持されている２値データを引き続き算術符号化する。
【００２７】
この構成によれば、算術符号化手段が生成するストリームデータのマクロブロックの符号量が所定の閾値より大きく、規則違反が発生した場合に、規則違反が発生したストリームデータに対応する画像データ（ピクチャまたはスライスデータ）のみが再符号化され、２値化済みの２値データバッファに保持されているピクチャは、再符号化されない。これにより、２値化済みの２値データバッファに保持されているピクチャを再符号化する場合に比べ、規則違反が発生した場合の処理量の増加を低減することができる。
【００２８】
また、前記出力手段は、前記検出手段により前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点から、再符号化されたストリームデータを出力するまで、検出されたストリームデータ以降のストリームデータを出力せず保持してもよい。
【００２９】
この構成によれば、規則違反が発生したピクチャの再符号化中に、算術符号化手段により規則違反が発生したピクチャの後続のピクチャの２値算術符号化を行い出力手段に保持することができる。これにより、再符号化終了後に、出力手段は保持している再符号化したストリームデータおよび後続のストリームデータを出力することができる。よって、再符号化における予測符号化中も並列で、後続のピクチャの２値算術符号化を行うことができるので処理速度を向上させることができる。
【００３０】
また、前記予測符号化手段は、参照画像を保持する画像メモリと、前記画像データを用いてフレーム内予測を行うフレーム内予測手段と、前記参照画像と前記画像データとを用いてフレーム間予測を行うフレーム間予測手段と、前記フレーム間予測手段がフレーム内予測を行ったデータ、および、前記フレーム間予測手段がフレーム間予測を行ったデータを直交変換する直交変換手段と、前記直交変換手段により直交変換されたデータを量子化し、前記符号化データを生成する量子化手段とを備え、前記画像符号化装置は、さらに、前記符号化データを逆量子化し、第１逆量子化データを生成する逆量子化手段と、前記第１逆量子化データを逆直交変換し、第１逆直行変換データを生成する逆直交変換手段と、前記検出手段により検出されたストリームデータを算術復号化し、第１復号化データを生成する算術復号化手段と、前記第１復号化データを逆２値化し、第１逆２値化データを生成する逆２値化手段とを備え、前記画像メモリは、前記第１逆直交変換データに基づくデータを前記参照画像として保持し、前記逆量子化手段は、前記第１逆２値化データを逆量子化し、第２逆量子化データを生成し、前記逆直交変換手段は、前記第２量子化データを逆直交変換し、第２逆直交変換データを生成し、前記フレーム内予測手段は、前記第２逆直交変換データに基づくデータを前記画像データとして用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム内予測を行い、前記フレーム間予測手段は、前記第２逆直交変換データに基づくデータを前記画像データとして用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム間予測を行ってもよい。
【００３１】
この構成によれば、規則違反が発生した場合の再符号化に用いられる画像データを、ストリームデータを復号化し作成することができる。よって、画像メモリ等に再符号化のための画像データを保持しておく必要がないので、画像メモリ等の容量を削減することができる。
【００３２】
また、前記算術復号化手段は、前記検出手段に検出されたストリームデータに対応する画像データのフレーム間予測に用いられる参照画像に対応するストリームデータを算術復号化し、第２復号化データを生成し、前記逆２値化手段は、前記第２復号化データを逆２値化し、第２逆２値化データを生成し、前記逆量子化手段は、前記第２逆２値化データを逆量子化し、第３逆量子化データを生成し、前記逆直交変換手段は、前記第３量子化データを逆直交変換し、第３逆直交変換データを生成し、前記フレーム間予測手段は、前記第３逆直交変換データに基づくデータを前記参照画像として用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム間予測を行ってもよい。
【００３３】
この構成によれば、規則違反が発生した場合の再符号化に用いられる参照画像を、ストリームデータを復号化し作成することができる。よって、画像メモリ等に再符号化のための参照画像を保持しておく必要がないので、画像メモリ等の容量を削減することができる。
【００３４】
また、前記予測符号化手段は、参照画像および前記画像データを保持する画像メモリと、前記参照画像と前記画像データとを用いてフレーム間予測を行うフレーム間予測手段と、前記フレーム間予測手段がフレーム間予測を行ったデータを直交変換する直交変換手段と、前記直交変換手段により直交変換されたデータを量子化し、前記符号化データを生成する量子化手段とを備え、前記画像符号化装置は、さらに、前記符号化データを逆量子化し、第１逆量子化データを生成する逆量子化手段と、前記第１逆量子化データを逆直交変換し、第１逆直行変換データを生成する逆直交変換手段と、前記検出手段に検出されたストリームデータに対応する画像データのフレーム間予測に用いられる参照画像に対応するストリームデータを算術復号化し、第１復号化データを生成する２値化算術復号化手段と、前記第１復号化データを逆２値化し、第１逆２値化データを生成する逆２値化手段とを備え、前記画像メモリは、前記第１逆直交変換データに基づくデータを前記参照画像として保持し、前記逆量子化手段は、前記第１逆２値化データを逆量子化し、第２逆量子化データを生成し、前記逆直交変換手段は、前記第２量子化データを逆直交変換し、第２逆直交変換データを生成し、前記フレーム間予測手段は、前記第２逆直交変換データに基づくデータを前記参照データとして用い、前記検出手段に検出されたストリームデータに対応する画像データの再フレーム間予測を行ってもよい。
【００３５】
また、前記予測符号化手段は、画像データの予測符号化の終了後、かつ、算術符号化手段よる２値算術符号化前に、該画像データの予測符号化に用いられた参照画像を前記画像メモリから削除してもよい。
【００３６】
この構成によれば、予測符号化が終了した時点で、画像メモリに保持されている参照画像が削除される。よって、画像メモリに保持される参照画像の数が減るので画像メモリの容量を削減することができる。
【００３７】
また、本発明に係る集積回路は、画像データを予測符号化し、符号化データを生成する予測符号化手段と、前記符号化データに算術符号化のための２値化を行い、２値データを生成する２値化手段と、前記２値データを保持する２値データバッファと、前記２値データバッファに保持されている２値データを算術符号化し、ストリームデータを生成する、前記２値化手段と非同期に動作する算術符号化手段と、所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出手段と、前記検出手段により検出されなかったストリームデータを出力する出力手段とを備え、前記予測符号化手段は、前記検出手段により検出されたストリームデータに対応する画像データを、符号化条件を変更し再符号化し、前記算術符号化手段は、前記検出手段により前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において前記２値データバッファに保持されている２値データを算術符号化する。
【００３８】
この構成によれば、算術符号化手段が生成するストリームデータのマクロブロックの符号量が所定の閾値より大きく、規則違反が発生した場合に、規則違反が発生したストリームデータに対応する画像データ（ピクチャ）のみが再符号化され、２値化済みの２値データバッファに保持されているピクチャは、再符号化されない。これにより、２値化済みの２値データバッファに保持されているピクチャを再符号化する場合に比べ、規則違反が発生した場合の処理量の増加を低減することができる。
【００３９】
また、本発明に係る画像符号化方法は、画像データを予測符号化し、符号化データを生成する予測符号化ステップと、前記符号化データに算術符号化のための２値化を行い、２値データを生成し、２値データバッファに保持する２値化ステップと、前記２値データバッファに保持されている２値データを、前記２値化ステップにおける２値化と非同期に算術符号化し、ストリームデータを生成する算術符号化ステップと、所定の閾値以上の符号量のマクロブロックを含む前記ストリームデータを検出する検出ステップと、前記検出ステップにおいて検出されなかったストリームデータを出力する出力ステップと、前記検出ステップにおいて検出されたストリームデータに対応する画像データを、符号化条件を変更し再符号化する再符号化ステップと、前記検出ステップにおいて前記所定の閾値より符号量の大きいマクロブロックを含むストリームデータが検出された時点において前記２値データバッファに保持されている２値データを算術符号化する算術符号化ステップとを含む。
【００４０】
これによれば、算術符号化ステップにおいて生成されるストリームデータのマクロブロックの符号量が所定の閾値より大きく、規則違反が発生した場合に、規則違反が発生したストリームデータに対応する画像データ（ピクチャ）のみが再符号化され、２値化済みの２値データバッファに保持されているピクチャは、再符号化されない。これにより、２値化済みの２値データバッファに保持されているピクチャを再符号化する場合に比べ、規則違反が発生した場合の処理量の増加を低減することができる。
【００４１】
なお、本発明は、このような画像符号化装置および画像符号化方法として実現することができるだけでなく、画像符号化方法に含まれる特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体やインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
【発明の効果】
【００４２】
本発明は、ＣＡＢＡＣの処理において規則違反が発生した場合の、処理量の増加を低減することのできる画像符号化装置を提供することができる。
【発明を実施するための最良の形態】
【００４３】
以下、本発明に係る画像符号化装置の実施の形態について、図面を参照しながら詳細に説明する。
【００４４】
（実施の形態１）
本発明の実施の形態１に係る画像符号化装置は、ＣＡＢＡＣの処理において規則違反が発生した場合に、規則違反が発生したピクチャのみを再符号化する。これにより、規則違反が発生した場合の、処理量の増加を低減することができる。
【００４５】
まず、本発明の実施の形態１に係る画像符号化装置の構成を説明する。
図１は、本発明の実施の形態１に係る画像符号化装置１００の構成を示すブロック図である。図１に示す画像符号化装置１００は、入力画像を予測符号化およびＣＡＢＡＣによる符号化を行い、Ｈ．２６４に従ったストリームデータを出力する。画像符号化装置１００は、予測符号化部１０と、エントリピー符号化部２０と、検出部３０と、出力部４０とを備える。
【００４６】
予測符号化部１０は、入力画像（動画像）データを予測符号化し、生成した符号化データをエントロピー符号化部２０に出力する。予測符号化部１０は、フレーム内予測部１１と、フレーム間予測部１２と、画像メモリ１３と、直交変換部１４と、量子化部１５と、逆量子化部１６と、逆直交変換部１７とを備える。
【００４７】
フレーム内予測部１１は、入力画像からフレーム内予測を行い、予測画像を生成し、出力する。
【００４８】
フレーム間予測部１２は、入力画像と画像メモリ１３に保持されている参照画像とから、フレーム間予測を行い、予測画像を生成し、出力する。
【００４９】
画像メモリ１３は、入力画像である符号化対象画像１３１および再符号化対象画像１３３と、フレーム間予測部１２で用いられる参照画像１３２および再符号化参照画像１３４とを保持する。符号化対象画像１３１および参照画像１３２は、通常の符号化の際に用いられる。再符号化対象画像１３３は、２値算術符号化において規則違反（符号量が３２００ビットを超えるマクロブロックを含むストリームデータ）が発生した場合の再符号化の際に用いられる符号化対象画像である。再符号化参照画像１３４は、２値算術符号化において規則違反（符号量が３２００ビットを超えるマクロブロックを含むストリームデータ）が発生した場合の再符号化の際の参照画像として用いられる。
【００５０】
直交変換部１４は、フレーム内予測部１１またはフレーム間予測部１２が出力する予測画像を直交変換する。
【００５１】
量子化部１５は、直交変換部１４が直交変換したデータを量子化し、生成した符号化データをエントロピー符号化部２０および逆量子化部１６に出力する。
【００５２】
逆量子化部１６は、量子化部１５が量子化した符号化データを逆量子化する。
逆直交変換部１７は、逆量子化部１６が逆量子化したデータを逆直交変換する。画像メモリ１３は、逆直交変換部１７が逆直交変換したデータに基づくデータを参照画像１３２および再符号化参照画像１３４として保持する。具体的には、逆直交変換したデータに動き補償処理を行ったデータを参照画像１３２および再符号化参照画像１３４として保持する。
【００５３】
エントロピー符号化部２０は、予測符号化部１０により予測符号化された符号化データをＣＡＢＡＣ（コンテキスト適応型２値算術符号化方式）の処理を行う。エントロピー符号化部２０は、２値化部２１と、２値データバッファ２２と、２値算術符号化部２３とを備える。
【００５４】
２値化部２１は、予測符号化部１０により符号化された符号化データに２値算術符号化のための２値化を行い、２値データを生成する。
【００５５】
２値データバッファ２２は、２値化部２１が２値化した２値データを保持する。
２値算術符号化部２３は、２値データバッファ２２に保持される２値データを２値算術符号化し、ストリームデータを生成する。また、２値算術符号化部２３は、２値化部２１と非同期で動作する。よって、２値化部２１の処理に対し、２値算術符号化部２３の処理が遅れた場合には、２値データバッファ２２に２値化部２１が2値化処理した2値算術符号化前の２値データが蓄積される。
【００５６】
検出部３０は、エントロピー符号化部２０が生成したストリームデータのうち、３２００ビット以上の符号量のマクロブロックを含むストリームデータを検出する。
【００５７】
出力部４０は、検出部により検出されなかったストリームデータを出力する。すなわち、出力部４０は、検出部３０によりエントロピー符号化部２０が生成したストリームデータに含まれる全てのマクロブロックの符号量が３２００ビットを超えていないと判定された場合に、エントロピー符号化部２０が生成したストリームデータを出力する。
【００５８】
予測符号化部１０は、検出部３０により検出されたストリームデータを、符号化条件を変更し再符号化する。すなわち、予測符号化部１０は、検出部３０によりエントロピー符号化部２０が生成したストリームデータに含まれるマクロブロックの符号量が３２００ビットを超えていると判断された場合に、３２００ビットを超えたピクチャに対し、再度符号化を行う。また、２値算術符号化部２３は、検出部３０により３２００ビットより符号量の大きいマクロブロックを含むストリームデータが検出された時点において２値データバッファ２１に保持されている２値データを引き続き２値算術符号化する。また、出力部４０は、検出部３０により３２００ビットより符号量の大きいマクロブロックを含むストリームデータが検出された時点から、再符号化されたストリームデータを出力するまで、検出されたストリームデータ以降のストリームデータを出力せず保持する。
【００５９】
図２は、本実施の形態に係る画像符号化装置の規則違反が発生した場合の動作を示す図である。図２に示すようにピクチャＰ２３のマクロブロックが２値算術符号化において３２００ビットを超え、規則違反が発生したとする。また、この時、ピクチャＢ２１、Ｂ２２、Ｐ２６、Ｂ２４、Ｂ２５およびＰ２９は、２値化部２１において２値化処理が終了しており、２値データバッファ２２に保持されているとする。
【００６０】
図２に示すように、本実施の形態に係る画像符号化装置１００は、ピクチャＰ２３において規則違反（符号量が３２００ビットを超えるマクロブロックを含むストリームデータ）が発生した場合に、２値データバッファ２２に保持されている予測符号化および２値化処理が終了したデータを破棄せず、規則違反が発生したピクチャＰ２３のみを再符号化する。これにより、従来の画像符号化装置と比べ、再符号化するピクチャの数が減少するので規則違反が発生した場合の処理量の増加を低減することができる。一方、２値データバッファ２２に保持されているデータは、規則違反が発生した状態のピクチャＰ２３の参照画像を用い予測符号化部１０において符号化が行われたことになる。これにより、２値データバッファ２２に保持されていたピクチャに画質の劣化が生じると考えられる。ここで、規則違反が発生するピクチャは、小さいＱＰ値で予測符号化部１０による符号化が行われたデータである場合が多い。ＱＰ値が小さい場合には、データの圧縮効率は低下するが、ピクチャの画質は高くなる。よって、規則違反が発生したピクチャに対応する参照画像１３２の画質は高い。再符号化においては、ビット数が減少するように、例えば、ＱＰ値を大きくし予測符号化を行う。すなわち、再符号化により生成された参照画像は、規則違反が発生したときの参照画像に比べ、画質が低くなる。これにより、本実施の形態に係る画像符号化装置１００のように、規則違反が発生したピクチャＰ２３を参照画像として用いるピクチャＢ２１、Ｂ２２、Ｐ２６、Ｂ２４およびＢ２５を再符号化しない場合であっても、元の予測符号化に用いられた参照画像の画質が再符号化時に作成される参照画像の画質より高いので、画質の劣化は大きくは生じない。よって、本実施の形態に係る画像符号化装置１００は、大きな画質の劣化を生じさせることなく、２値算術符号化において規則違反が発生した場合の、再符号化にともなう処理量の増加を低減することができる。
【００６１】
次に、本実施の形態に係る画像符号化装置１００の動作を説明する。
図３は、画像符号化装置１００の２値算術符号化において規則違反が発生した場合の動作を示すフローチャートである。
【００６２】
まず、予測符号化部１０は、入力画像を予測符号化し符号化データを生成する。エントロピー符号化部２０は、予測符号化部１０が生成した符号化データを２値化および２値算術符号化しストリームデータを生成する（Ｓ１０１）。検出部３０は、エントロピー符号化部２０が生成したストリームデータのマクロブロック毎に３２００ビットを超えているか否かを判定する（Ｓ１０２）。ストリームデータが３２００ビットを超えているマクロブロックを含む場合（Ｓ１０２でＹｅｓ）、出力部４０は、以降にエントロピー符号化部２０より生成されたストリームデータの出力を一時停止する（Ｓ１０３）。すなわち、出力部４０は、規則違反が発生したストリームデータの後続のストリームデータであり、規則違反が発生したストリームデータの再符号化中に２値算術符号化されたストリームデータの出力を一時停止する。また、出力の一時停止中に、エントロピー符号化部２０で生成された規則違反が発生したストリームデータの後続のストリームデータは、出力部４０に保持される。予測符号化部１０は、画像メモリ１３に保持されている３２００ビットを超えたピクチャの再符号化対象画像１３３と、対応する再符号化参照画像１３４とからフレーム間予測、直交変換および量子化を行う。例えば、量子化部１５において行われる量子化は、前回（３２００ビットを超えた時）の量子化に用いられたＱＰ値より大きいＱＰ値が用いられ再符号化される。エントロピー符号化部２０は、再度、予測符号化されたピクチャを２値化および２値算術符号化する（Ｓ１０４）。検出部３０は、再符号化されたピクチャのストリームデータに対しマクロブロック毎に３２００ビットを超えているか否かを判定する（Ｓ１０２）。
【００６３】
ステップ１０２において、エントロピー符号化部２０から出力されたストリームデータが３２００ビットを超えるマクロブロックを含まない場合（Ｓ１０２でＮｏ）、検出部３０は、該ストリームデータが再符号化されたピクチャのストリームデータであるか否かを判定する（Ｓ１０５）。再符号化されたピクチャのストリームデータである場合（Ｓ１０５でＹｅｓ）、出力部４０は、再符号化されたピクチャのストリームデータを出力する（Ｓ１０６）。また、出力部４０は、ステップ１０３において停止した再符号化されたピクチャ以降のピクチャのストリームデータの出力を再開し、出力部４０が保持していた再符号化されたピクチャ以降のピクチャのストリームデータを出力する（Ｓ１０７）。
【００６４】
ステップ１０５において、再符号化ピクチャでない場合（Ｓ１０５でＮｏ）、かつ、現在、再符号化処理が行われていない場合（Ｓ１０８でＮｏ）、出力部４０は、該ピクチャのストリームデータを出力する（Ｓ１０９）。また、ステップ１０５において、再符号化ピクチャでない場合（Ｓ１０５でＮｏ）、かつ、現在、再符号化処理が行われており、出力部４０の出力停止中である場合（Ｓ１０８でＹｅｓ）、出力部４０は、該ピクチャのストリームデータを出力せず、保持する（Ｓ１１０）。
【００６５】
ステップＳ１０７、Ｓ１０９またはＳ１１０の後、画像メモリ１３に保持されている該ピクチャの符号化対象画像１３１および再符号化対象画像１３３が削除される（Ｓ１１１）。次に、該ピクチャの予測符号化に用いられた参照画像１３２および再符号化参照画像１３４が、２値算術符号化が終了していないピクチャに用いられる参照画像であるか否かが判定される（Ｓ１１２）。該ピクチャの予測符号化に用いられた参照画像が、２値算術符号化が終了していないピクチャに用いられる参照画像でない場合（Ｓ１１２でＮｏ）、画像メモリ１３に保持されている該ピクチャの予測符号化に用いられた参照画像１３２および再符号化参照画像１３４が削除される（Ｓ１１３）。なお、該ピクチャの予測符号化に用いられた参照画像が他のどのピクチャに用いられるかの情報は、該ピクチャのストリームデータに含まれている。よって、ステップＳ１１２の判定は、該ピクチャのストリームデータに含まれる情報を参照することで行うことができる。
【００６６】
以上により、本実施の形態に係る画像符号化装置１００は、ＣＡＢＡＣの処理において規則違反が発生した場合に、規則違反が発生したピクチャのみを再符号化する。これにより、規則違反が発生した場合の処理量の増加を低減することができる。また、画像符号化装置１００は、処理量が減少することにより消費電力を削減することができる。
【００６７】
なお、上記説明において、ピクチャデータ毎に再符号化を実施しているが、スライスデータ毎に再符号化を行ってもよい。
【００６８】
また、上記説明において、符号化対象画像の削除（Ｓ１１１）は、ステップＳ１０７、Ｓ１０９またはＳ１１０の後に行われるとしたが、検出部３０により規則違反でないと判定された後（Ｓ１０２でＮｏの後）であれば任意のタイミングで行ってよい。また、参照画像の削除（Ｓ１１３）および参照画像の削除の判定（Ｓ１１２）も、検出部３０により規則違反でないと判定された後（Ｓ１０２でＮｏの後）であれば任意のタイミングで行ってよい。
【００６９】
また、上記説明において、符号化対象画像１３１および再符号化対象画像１３３は、ステップＳ１１１において同時に削除されるとしたが、別のタイミングで削除してもよい。例えば、符号化対象画像１３１は、符号化（ステップＳ１０１）の後であれば、任意のタイミングで削除してよい。また、上記説明において、参照画像１３２および再符号化参照画像１３４は、ステップＳ１１３において同時に削除されるとしたが、別のタイミングで削除してもよい。例えば、参照画像１３２は、符号化（ステップＳ１０１）の後であれば、任意のタイミングで削除してよい。
【００７０】
また、上記説明において、符号化対象画像１３１および再符号化対象画像１３３は、個別のデータとしているが、画像メモリ１３に保持される同一のデータをそれぞれ通常の符号化および再符号化に用いてもよい。また、上記説明において、参照画像１３２および再符号化参照画像１３４は、個別のデータとしているが、画像メモリ１３に保持される同一のデータをそれぞれ通常の符号化および再符号化に用いてもよい。
【００７１】
（実施の形態２）
本発明の実施の形態２に係る画像符号化装置は、規則違反が発生した場合に、符号化済みのストリームデータから符号化対象画像および参照画像を作成し、作成した符号化対象画像および参照画像を用いて再符号化を行う。これにより、画像メモリに規則違反が発生した場合の再符号化に必要となる符号化対象画像および参照画像を保持しておく必要がないので、画像メモリの容量を削減することができる。
【００７２】
まず、本発明の実施の形態２に係る画像符号化装置の構成を説明する。
図４は、本発明の実施の形態２に係る画像符号化装置２００の構成を示すブロック図である。なお、図１と同様の要素には同一の符号を付しており詳細な説明は省略する。
【００７３】
図４に示す画像符号化装置２００は、予測符号化部１０と、エントロピー符号化部２０と、検出部３０と、出力部４０と、エントロピー復号化部５０とを備える。
【００７４】
エントロピー復号化部５０は、エントロピー符号化部２０において３２００ビットを超えるマクロブロックを含むストリームデータが発生した場合に、該ストリームデータおよび該ストリームデータに対応するピクチャの再符号化に用いられる参照画像のストリームデータをエントロピー復号化する。エントロピー復号化部５０は、逆２値化部５１と、２値算術復号化部５２とを備える。
【００７５】
２値算術復号化部５２は、検出部３０により３２００ビットより符号量の大きいマクロブロックを含むストリームデータが検出された場合に、３２００ビットより符号量の大きいマクロブロックを含むストリームデータを２値算術復号化する。また、２値算術復号化部５２は、３２００ビットより符号量の大きいマクロブロックを含むストリームデータに対応するピクチャのフレーム間予測に用いられる参照画像に対応するピクチャのストリームデータを２値算術復号化する。
【００７６】
逆２値化部５１は、２値算術復号化部５２が２値算術復号化したデータを逆２値化する。
【００７７】
逆量子化部１６は、逆２値化部５１が逆２値化したデータを逆量子化する。
逆直交変換部１７は、逆量子化部１６が逆量子化したデータを逆直交変換する。
【００７８】
また、再符号化の際のフレーム間予測に用いられる再符号化対象画像１３３は、ストリームデータから作成されるので、画像メモリ１３は、再符号化対象画像１３３をストリームデータが出力されるまで保持しなくてもよい。
【００７９】
以上の構成により、本発明の実施の形態２に係る画像符号化装置２００は、ＣＡＢＡＣの処理において規則違反が発生したピクチャの再符号化に際し、ストリームデータをエントロピー復号化部５０により復号化する。復号化したデータを逆量子化および逆直交変換したデータに基づき再符号化参照画像１３４および再符号化対象画像１３３を作成する。具体的には、逆直交変換したデータに動き補償処理を行い、再符号化参照画像１３４および再符号化対象画像１３３を作成する。予測符号化部１０は、ストリームデータから作成された再符号化参照画像１３４および再符号化対象画像１３３を用いて再予測符号化を行う。すなわち、再符号化を行うピクチャが参照画像を用いないピクチャの場合には、フレーム内予測部１１が、ストリームデータから作成された再符号化対象画像１３３を用いて検出部３０に検出されたストリームデータに対応するピクチャの再フレーム内予測を行う。また、再符号化を行うピクチャが参照画像を用いるピクチャの場合には、フレーム間予測部１２が、ストリームデータから作成された再符号化参照画像１３４および再符号化対象画像１３３を用いて検出部３０に検出されたストリームデータに対応するピクチャの再フレーム間予測を行う。これにより、再符号化を行うために、規則違反が発生した場合の再符号化に必要となる再符号化対象画像１３３および再符号化参照画像１３４を画像メモリに保持しておく必要がなくなり、画像メモリ１３の容量を削減することができる。
【００８０】
以下に、ストリームデータから符号化対象画像および参照画像を復号化することによる画像メモリ１３の容量の削減効果を説明する。
【００８１】
図５は、本発明の実施の形態２に係る画像符号化装置２００において符号化に用いられる参照画像を示す図である。
【００８２】
図５（ａ）は、２値データバッファ２２に蓄積される２値データの符号化順およびピクチャの再生順を示す図である。なお、ピクチャＰ２３において３２００ビットを超えるマクロブロックが含まれる規則違反が発生したとする。また、ピクチャＰ２３の規則違反が発生した時点で、ピクチャＰ２９までの２値化が終了しており、２値データバッファ２２にピクチャＢ２１、Ｂ２２、Ｐ２６、Ｂ２４、Ｂ２５およびＰ２９の２値データが保持されているとする。
【００８３】
各ピクチャの添え字は、Ｉはフレーム内での予測符号化を行うピクチャ、Ｐは１方向のフレーム間で予測符号化を行うピクチャ、Ｂは２方向のフレーム間で予測を行うピクチャを意味する。以下、添え字ＩのピクチャをＩピクチャ、添え字ＰのピクチャをＰピクチャ、添え字ＢのピクチャをＢピクチャと呼ぶ。例えば、図５（ａ）に示すピクチャＩ１７は、参照画像を用いずにフレーム内予測部１１でフレーム内での予測符号化が行われるフレームである。ＰピクチャであるピクチャＰ２３は、再生順の直前のＰピクチャとなるピクチャＰ２０を参照画像として用いフレーム間予測が行われる。ＢピクチャであるピクチャＢ２４は、再生順で直前のＰピクチャであるピクチャＰ２３と直後のＰピクチャであるピクチャＰ２６とを参照画像として用いフレーム間予測が行われる。
【００８４】
まず、ストリームデータから符号化対象画像を復号化することによる効果を説明する。実施の形態１に係る画像符号化装置１００では、規則違反が発生した場合、画像メモリ１３に保持されている再符号化対象画像１３３を用いて再符号化を行う。よって、画像符号化装置１００に入力された入力画像を、該入力画像を符号化しストリームデータとして出力するまで、画像メモリ１３に保持する必要がある。例えば、図５（ａ）の場合には、実施の形態１に係る画像符号化装置１００は、入力画像のうちストリームデータとして出力していないピクチャＰ２３、Ｂ２１、Ｂ２２、Ｐ２６、Ｂ２４、Ｂ２５およびＰ２９の７つピクチャの再符号化対象画像１３３を画像メモリ１３に保持する必要がある。一方、実施の形態２に係る画像符号化装置２００は、ストリームデータから再符号化対象画像１３３を復号化するので、画像メモリ１３に規則違反が発生した場合の再暗号化に必要な再符号化対象画像１３３を保持する必要がない。例えば、画像メモリ１３は、ストリームデータから再符号化対象画像１３３を復号化した後、フレーム内予測部１１またはフレーム間予測部１２が再フレーム内予測または再フレーム間予測をする間のみ、再符号化対象画像１３３を保持しておけばよい。よって、実施の形態２に係る画像符号化装置２００は、画像メモリ１３の容量を削減することができる。
【００８５】
次に、ストリームデータから参照画像を復号化することによる効果を説明する。
図５（ｂ）は、規則違反が発生したピクチャＰ２３以降のピクチャに用いられる参照画像を示す図である。図５（ｃ）は、ピクチャＰ２３において規則違反が発生した場合の、本実施の形態に係る画像符号化装置２００および実施の形態１に係る画像符号化装置１００の画像メモリ１３に保持される再符号化参照画像１３４を示す図である。
【００８６】
実施の形態１に係る画像符号化装置１００は、規則違反が発生した場合、規則違反が発生したピクチャＰ２３、２値化済みのピクチャＢ２１、Ｂ２２、Ｐ２６、Ｂ２４、Ｂ２５およびＰ２９を再符号化する。図５（ｂ）に示すように、ピクチャＰ２３、Ｂ２１、Ｂ２２、Ｐ２６、Ｂ２４、Ｂ２５、Ｐ２９および以降のピクチャ（ピクチャＢ２８およびＢ２９等）の符号化に必要な参照画像は、ピクチャＰ２０、Ｐ２３、Ｐ２６およびＰ２９の参照画像である。よって、図５（ｃ）に示すように、実施の形態１に係る画像符号化装置１００は、画像メモリ１３にピクチャＰ２０、Ｐ２３、Ｐ２６およびＰ２９の４つの再符号化参照画像１３４を保持する必要がある。
【００８７】
一方、実施の形態２に係る画像符号化装置２００は、ストリームデータから再符号化参照画像１３４を復号化するので、規則違反が発生した場合の再符号化のために再符号化参照画像１３４を画像メモリ１３に保持しなくてよい。例えば、図５（ｃ）に示すように、実施の形態２に係る画像符号化装置２００は、ピクチャＰ２９以降のピクチャＢ２８およびＢ２９等（予測符号化が行われていないピクチャ）の予測符号化に用いられる参照画像であるピクチャＰ２６およびＰ２９の２つの参照画像を画像メモリ１３に保持すればよい。よって、実施の形態２に係る画像符号化装置２００は、画像メモリ１３に保持する参照画像の数を低減することができるので、画像メモリ１３の容量を削減することができる。
【００８８】
次に、本発明の実施の形態２に係る画像符号化装置２００の動作を説明する。
図６は、本発明の実施の形態２に係る画像符号化装置２００の規則違反が発生した場合の動作を示すフローチャートである。
【００８９】
まず、予測符号化部１０は、入力画像の予測符号化を行う（Ｓ２０１）。次に予測符号化に用いられた参照画像が、後続のピクチャの参照画像として用いられるか否かが判定される（Ｓ２０２）。予測符号化に用いられた参照画像が、後続のピクチャの参照画像として用いられない場合（Ｓ２０２でＮｏ）は、該参照画像１３２および再符号化参照が像１３４は、画像メモリ１３から削除される（Ｓ２０３）。また、予測符号化に用いられた参照画像が、後続のピクチャの参照画像として用いられる場合（Ｓ２０２でＹｅｓ）は、該再符号化参照画像１３４は、画像メモリ１３に保持される。次に、エントロピー符号化部２０は、予測符号化されたピクチャを２値化および２値算術符号化する（Ｓ２０４）。検出部３０は、２値化および２値算術符号化されたピクチャのストリームデータが３２００ビットを超えるマクロブロックを含むか否かを判定する（Ｓ２０５）。
【００９０】
２値化および２値算術符号化されたストリームデータが３２００ビットを超えるマクロブロックを含む場合（Ｓ２０５でＹｅｓ）、出力部４０は、後続のピクチャのストリームデータの出力を一時停止する（Ｓ２０６）。エントロピー復号化部５０は、規則違反が発生したストリームデータをエントロピー復号化（２値化算術復号化および逆２値化）する。予測符号化部１０は、エントロピー復号化されたデータを逆量子化および逆直交変換し、再符号化に用いる再符号化対象画像１３３を作成する。また、エントロピー復号化部５０は、出力部４０に保持されている規則違反が発生したピクチャが用いる参照画像に対応するピクチャのストリームデータをエントロピー復号化する。予測符号化部１０は、エントロピー復号化されたデータを逆量子化および逆直交変換し、再符号化に用いられる再符号化参照画像１３４を作成する（Ｓ２０７）。予測符号化部１０は、ストリームデータから作成された再符号化対象画像１３３および再符号化参照画像１３４を用いて、再度、予測符号化を行う。エントロピー符号化部２０は、予測符号化されたピクチャをエントロピー符号化する（Ｓ２０８）。エントロピー符号化されたストリームデータが３２００ビットを超えるマクロブロックを含むか否かが判定される（Ｓ２０５）。
【００９１】
一方、ステップＳ２０５において、エントロピー符号化されたピクチャが３２００ビットを超えるマクロブロックを含まない場合（Ｓ２０５でＮｏ）、出力部４０は、ストリームデータを保持する（Ｓ２０９）。次に、ストリームデータが再符号化されたピクチャのストリームデータであるか否かが判定される（Ｓ２１０）。ストリームデータが再符号化されたピクチャのストリームデータである場合（Ｓ２１０でＹｅｓ）、出力部４０は、該ストリームデータを出力する（Ｓ２１１）。また、出力部４０は、出力を再開し、保持している規則違反が発生したストリームデータ以降のストリームデータを順次出力する（Ｓ２１２）。一方、ステップＳ２１０において、ストリームデータが再符号化されたピクチャのストリームデータでない場合（Ｓ２１０でＮｏ）、かつ、出力部４０のストリームデータの出力が一時停止されていない場合（Ｓ２１３でＮｏ）、出力部４０は、該ストリームデータを出力する（Ｓ２１４）。また、ストリームデータが再符号化されたピクチャのストリームデータでない場合（Ｓ２１０でＮｏ）、かつ、規則違反のピクチャが発生し出力部４０のストリームデータの出力が一時停止されている場合（Ｓ２１３でＹｅｓ）、出力部４０は、該ストリームデータを出力しない。
【００９２】
次に、該ストリームデータに対応する参照画像が、エントロピー符号化が終了していないピクチャに用いられるか否かの判定が行われる（Ｓ２１５）。ここで、エントロピー符号化が終了していないピクチャとは、予測符号化が行われないピクチャ、２値算術符号化前で２値データバッファ２２に保持されているピクチャ、および、規格違反が発生し再符号化中のピクチャ等である。該ストリームデータに対応する参照画像が、エントロピー符号化が終了していないピクチャに用いられない場合（Ｓ２１５でＮｏ）、以降、規則違反が発生したとしても、該ストリームデータから参照画像を作成することはないので、出力部４０は、保持している該ストリームデータを削除する（Ｓ２１６）。一方、該ストリームデータに対応する参照画像が、エントロピー符号化が終了していないピクチャに用いられる場合（Ｓ２１５でＹｅｓ）、出力部４０は、保持している該ストリームデータを削除しない。
【００９３】
以上より、本発明の実施の形態２に係る画像符号化装置２００は、規則違反が発生した場合に、ストリームデータを復号化し、再符号化に用いる再符号化対象画像１３３および再符号化参照画像１３４を生成する。これにより、画像メモリ１３は、規則違反が発生した場合の再符号化に必要となる符号化対象画像を保持しなくてよい。また、画像メモリ１３が保持する参照画像の数を減らすことができる。よって、本発明の実施の形態２に係る画像符号化装置２００は、画像メモリ１３の容量を削減することができる。
【００９４】
なお、再符号化に際し、ストリームデータから生成する画像は、符号化対象画像および参照画像のうち、両方または一方であってよい。符号化対象画像および参照画像の両方をストリームデータから生成する場合は、画像メモリ１３に再符号化に用いる符号化対象画像および参照画像を保持する必要がなく、より多くの画像メモリ１３の容量を削減することができる。しかしながら、符号化対象画像にストリームデータから作成した画像を使用する場合には、ストリームデータから作成した画像は、入力画像より画質が悪く、再符号化した画像の画質が劣化するという問題がある。一方、参照画像のみをストリームデータから作成する場合には、再符号化した画像の画質の劣化は発生しないが、画像メモリ１３の容量の削減効果は、符号化対象画像および参照画像をストリームデータから作成した場合に比べ、少なくなる。また、参照画像をストリームデータから作成する場合には、参照画像に用いられる可能性のあるストリームデータ（２値算術符号化前のピクチャの予測符号化に用いられる参照画像のストリームデータ）を出力部４０に保持しておく必要がある。符号化対象画像のみをストリームデータから作成する場合には、出力部４０の保持容量を増加させる必要はないが、画像メモリ１３の容量の削減効果は符号化対象画像および参照画像をストリームデータから作成した場合に比べ、少なくなる。
【産業上の利用可能性】
【００９５】
本発明は、画像符号化装置および画像符号化方法に適用でき、特に、通信機能を備えるパーソナルコンピュータ、ＰＤＡ（Personal Digital Assistants）、携帯電話機およびデジタル放送の放送局等に適用できる。
【図面の簡単な説明】
【００９６】
【図１】本発明の実施の形態１に係る画像符号化装置の構成を示すブロック図である。
【図２】本発明の実施の形態１に係る画像符号化装置において規格違反が発生した場合の動作を示す図である。
【図３】本発明の実施の形態１に係る画像符号化装置において規格違反が発生した場合の動作を示すフローチャートである。
【図４】本発明の実施の形態２に係る画像符号化装置の構成を示すブロック図である。
【図５】本発明の実施の形態２に係る画像符号化装置において規格違反が発生した場合の動作を示す図である。
【図６】本発明の実施の形態２に係る画像符号化装置において規格違反が発生した場合の動作を示すフローチャートである。
【図７】従来の画像符号化装置の構成を示すブロック図である。
【図８】従来の画像符号化装置において規格違反が発生した場合の動作を示す図である。
【符号の説明】
【００９７】
１０、３１０    予測符号化部
１１、３１１    フレーム内予測部
１２、３１２    フレーム間予測部
１３、３１３    画像メモリ
１４、３１４    直交変換部
１５、３１５    量子化部
１６、３１６    逆量子化部
１７、３１７    逆直交変換部
２０、３２０    エントリピー符号化部
２１、３２１    ２値化部
２２、３２２    ２値データバッファ
２３、３２３    ２値算術符号化部
３０、３３０    検出部
４０、３４０    出力部
５０    エントリピー復号化部
５１    逆２値化部
５２    ２値算術復号化部
１００、２００、３００  画像符号化装置
１３１、３３１  符号化対象画像
１３２、３３２  参照画像
１３３  再符号化対象画像
１３４  再符号化参照画像
【図１】
2008016947.tif 000003
【図２】
2008016947.tif 000004
【図３】
2008016947.tif 000005
【図４】
2008016947.tif 000006
【図５】
2008016947.tif 000007
【図６】
2008016947.tif 000008
【図７】
2008016947.tif 000009
【図８】
2008016947.tif 000010