(57)【要約】【課題】  想定外の符号量発生に際してもバッファ破綻の虞のない画像符号化装置を提供すること。【解決手段】  バッファ破綻予測部２０１は、実バッファ占有量算出部１０８から入力した実バッファ占有量ＲＢＯから、「残りのマクロブロック」の全てを最小の符号量で符号化した場合、バッファ破綻が生じるか否かを算出し、それに基づいて符号化モードの切替信号Ｓを出力する。そして、符号化モードセレクタ部２０２は、入力された符号化モードの切替信号Ｓに応じて、通常モードで符号化を行うか、緊急モードで符号化を行うかを選択し、緊急モードの場合には、緊急モード用量子化係数ＱＣＥと緊急モード用予測モードＢＰＭＥ、それに緊急モード用量子化パラメータＱＰＥを出力する。従って、バッファが破綻する可能性がある場合には、ＭＢ毎の発生符号量が最小となる符号化モードに切替えられるので、バッファ破綻が完全に防止できる。【選択図】図１
2008271213.tif 000002
【特許請求の範囲】
【請求項１】
画像信号を最小符号化単位毎に可変長符号化処理してデータ圧縮された符号化ストリームに変換する画像符号化装置において、
符号化ストリーム列を入力するバッファの実バッファ占有量情報に基づいてバッファ破綻の予測を行うバッファ破綻予測手段と、
当該バッファ破綻予測手段の予測結果に応じて符号化モードを通常モードと緊急モードに切替える符号化モード切替手段を設け、
緊急モードでは、マクロブロック毎の発生符号量が最小になる符号化モードで動作することを特徴とする画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを圧縮符号化する装置に係り、特に入力映像に依存して情報量が大きく変動する動画像データの圧縮符号化に好適な画像符号化装置に関する。
【背景技術】
【０００２】
従来から知られているＪＰＥＧ、ＭＰＥＧ−２などに代表される画像符号化技術では、画像情報が一般的にもつ特性、すなわち隣接画素間とフレーム間に高い相関をもつという特性を利用し、更に人間の視覚にとって変化を知覚しにくい高周波成分などの冗長な情報を削減することにより、広い伝送帯域(例えば、ＨＤ−ＳＤＩでは約１．５Ｇｂｐｓ)にある入力映像を、低い伝送帯域(例えば、地上波デジタル放送での約１５Ｍｂｐｓ)に適応させることができるようにしている(例えば、特許文献１〜４などを参照)。
【０００３】
従って、この場合、一般的には、図３に示すように、上記した画像符号化技術によりデータを圧縮し符号化する画像符号化部Ｘを用い、これに符号化制御部Ｙを組合わせて使用する。そして、画像符号化部Ｘに処理すべき映像信号を入力してデータ圧縮し、符号化データ列に変換された符号化データが画像符号化部Ｘから得られるようにしている。このとき符号化制御部Ｙは、画像符号化部Ｘに圧縮率やスタッフィグデータ量などの符号化制御情報を指示する働きをする。
【０００４】
ところで、このような画像符号化技術は、上記したように、入力画像の相関性に依存して符号化効率を高める技術であり、このため、例えば均一の量子化密度でマクロブロック(ＭＢ)と呼ばれる最小符号化単位毎に符号化処理を行った場合、マクロブロック毎の発生符号量は入力画像のエントロピーにほぼ比例することから、圧縮して得られるディジタルの符号化ストリームの発生符号量も大きく変動している。
【０００５】
従って、このように発生符号量が変動する入力画像の符号化ストリームを受信し、復号化装置側でフレーム抜けなくスムーズに再生を行うためには、発生符号量の変動を吸収するバッファが必要となるが、このとき有限なサイズのバッファにより符号量の変動を吸収し、バッファ破綻の抑制を得るためには、符号化装置側における符号量変動を、復号化装置の受信バッファサイズを考慮して制御する仕組みが必要となる。
【０００６】
このため、上記したＭＰＥＧ−２などに代表される画像符号化技術においては、このような発生符号量の変動を抑制する仕組みについて、従来から種々の議論がされており、例えば、その一例に係る従来技術の場合、符号化したマクロブロックの発生符号量が、当該マクロブロックに割当てた符号量よりも大きければ、次に符号化すべきマクロブロックに使用する量子化パラメータを変動させることにより、発生符号量が抑制されるようにしている。
【０００７】
そこで、以下、このような画像符号化技術について、図４により説明すると、これは、一例として、ＩＳＯ規格(ISO 14496-10)によるＨ．２６４符号化方式の中の特にフレーム内符号化方式に準拠して構成された画像符号化装置１０を、図３の画像符号化部Ｘに適用した場合を示したもので、この場合、画像符号化装置１０は、図示の通り、入力画像(映像信号)ｉｎを入力し、所定の符号化処理を行い、符号化ストリームＣＳに変換して出力する働きをする。
【０００８】
ここで、まず、画像符号化装置１０のフレームメモリ１０１は、一次元のスキャンラインデータとして入力されてくる入力映像ｉｎを一旦、蓄積し、１６×１６の画素からなるマクロブロックと呼ばれる単位に変換して出力する働きをする。なお、このときに蓄積される単位は、フレーム単位であってもスライス単位であってもよい。そして、このフレームメモリ１０１から出力されるマクロブロック単位の画像データＭＢは、一方では予測モード判定部１０２に供給され、他方では、フレーム内予測画像生成部１０３から出力されるフレーム内予測画像ＦＡＩとの残差成分ＲとしてＤＣＴ部１０４に供給される。
【０００９】
このとき、まず予測モード判定部１０２では、フレームメモリ１０１から入力されたマクロブロックにより、次段のフレーム内予測画像生成部１０３において予測画像を生成するのに最適な予測モードを判定し、選択した最適予測モードＢＰＭをフレーム内予測画像生成部１０３と後述の可変長符号化部１０６に供給する。ここで、Ｈ．２６４符号化方式においては、このときのフレーム内予測画像生成のための予測モードとして２２種類の予測モードが用意されている。そこで、フレーム内予測画像生成部１０３は、最適予測モードＢＰＭと、参照画像メモリ１１３から入力される参照画像ＲＩとに基づいてフレーム内予測画像ＦＡＩを生成する。
【００１０】
この結果、上記したように、残差成分ＲがＤＣＴ部１０４に供給され、ここでＤＣＴ部１０４は、残差成分Ｒに所定のＤＣＴ変換を施してＤＣＴ変換係数ＤＣＴＣＣを生成し、量子化部１０５に供給する。なお、ＤＣＴとは、Discrete Cosign Transform(離散コサイン変換)の略称である。このとき量子化部１０５には、量子化パラメータ算出部１０９から量子化パラメータＱＰが入力されている。そこで、当該量子化部１０５は、ＤＣＴ部１０４から入力されたＤＣＴ変換係数ＤＣＴＣＣに対して、量子化パラメータＱＰに基づいた量子化処理を行い、量子化係数ＱＣを生成して可変長符号化部１０６に供給する。
【００１１】
このとき、可変長符号化部１０６には、上記したように最適予測モードＢＰＭが入力されており、且つ、量子化パラメータ算出部１０９から量子化パラメータＱＰも入力されている。そこで、可変長符号化部１０６は、これら最適予測モードＢＰＭと量子化パラメータＱＰを用い、量子化部１０５から供給される量子化係数ＱＣをマクロブロック単位に処理して符号化データ列ＣＤＳに変換し、それを順次、ストリームバッファ１１０に格納してゆく。ここで、このストリームバッファ１１０は可変長符号化部１１０から出力された符号化データ列ＣＤＳを蓄積し、所定の遅延時間経過後、符号化ストリームＣＳが取り出せるようにする働きをし、従って、この後、ストリームバッファ１１０からデータを読出すことにより、入力画像ｉｎの符号化ストリームＣＳが得られることになる。
【００１２】
また、この可変長符号化部１０６は、量子化係数ＱＣをマクロブロック単位で処理し、符号化データ列ＣＤＳに変換したとき、これにより発生した符号量ＣＶを出力し、それを実バッファ占有量算出部１０８に供給する働きもする。そこで、実バッファ占有量算出部１０８は、入力された符号量ＣＶから、現在のストリームバッファの占有量、つまり実バッファ占有量ＲＢＯを算出し、それを量子化パラメータ算出部１０９の一方の入力に供給する。一方、目標バッファ占有量算出部１０７は、入力画像ｉｎを量子化パラメータ算出部１０９から出力した量子化パラメータに従って符号化処理した場合のストリームバッファの目標バッファ占有量ＤＢＯを算出し、それを量子化パラメータ算出部１０９の他方の入力に供給する。
【００１３】
このときの目標バッファ占有量算出部１０７による目標バッファ占有量ＤＢＯの算出方法には様々な方式が考えられるが、ここでは、入力画像ｉｎのマクロブロックによる絵柄に応じて目標符号量を算出し、それに対応した蓄積量を目標バッファ占有量ＤＢＯとするのが望ましい。しかし、例えばストリームバッファから符号化ストリームを出力する際の伝送レートから算出したマクロブロック当りの平均符号量の蓄積量を目標バッファ占有量ＤＢＯとするようにしてもよい。
【００１４】
そこで、量子化パラメータ算出部１０９は、所定の量子化パラメータ算出式に従い、入力された目標バッファ占有量ＤＢＯと実バッファ占有量ＲＢＯの差から、いま符号化したマクロブロックの後に続いて次に符号化すべきマクロブロックの量子化パラメータＱＰを算出する。そして、この量子化パラメータＱＰが量子化処理部１０５に供給され、量子化係数ＱＣの生成に用いられることになり、この結果、符号化したマクロブロックの符号量ＣＶが、当該マクロブロックに割当てた符号量よりも大きいときは、次に符号化すべきマクロブロックに使用する量子化パラメータＱＰが変えられるようになり、従って、この画像符号化装置１０によれば、バッファ破綻の抑制が得られることになる。
【００１５】
このとき、量子化部１０５からは、別途、量子化係数ＱＣが取り出され、それが逆量子化部１１１に供給されるようになっている。そこで、逆量子化部１１１は、量子化係数ＱＣを元のＤＣＴ変換係数ＤＣＴＣＣ’に変換して逆ＤＣＴ部１１２に供給する。そして、逆ＤＣＴ部１１２は、入力された元のＤＣＴ変換係数ＤＣＴＣＣ’を、同じく元の残差成分Ｒ’に変換して出力し、フレーム内予測画像生成部１０３から出力されるフレーム内予測画像ＦＡＩに加算して参照画像メモリ１１３に供給する。
【００１６】
この結果、参照画像メモリ１１３には、逆ＤＣＴ部１１２から供給された残差成分Ｒ’とフレーム内予測画像生成部１０３から出力されたフレーム内予測画像ＦＡＩの加算処理により復元された画像データが、順次、新たな参照画像ＲＩとして入力され蓄積されることになり、従って、符号化処理に必要な相関が得られることになる。
【特許文献１】特開平５−３００４９２号公報
【特許文献２】特開平１１−４４３７号公報
【特許文献３】特開平１１−２３４６７１号公報
【特許文献４】特開２００３−３４８５３８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
上記従来技術は、バッファの破綻抑制に限界がある点に配慮がされているとは言えず、想定外の符号量が発生してしまった場合でのバッファの破綻抑制に問題があった。
【００１８】
つまり、上記従来技術では、実バッファ占有量と目標バッファ占有量の差によって量子化パラメータを変動させることにより、符号量変動によるバッファ破綻を防いでいるが、しかし、量子化パラメータを変動させたとしても、必ずしも想定した符号量より小さくなるとは限らず、従って、上記の問題が生じてしまうのである。
【００１９】
そこで、想定外の符号量が発生した場合でも、バッファを破綻させない仕組みが必要であり、従って、本発明の目的は、想定外の符号量発生に際してもバッファ破綻の虞のない画像符号化装置を提供することにある。
【課題を解決するための手段】
【００２０】
上記目的は、画像信号を最小符号化単位毎に可変長符号化処理してデータ圧縮された符号化ストリームに変換する画像符号化装置において、符号化ストリーム列を入力するバッファの実バッファ占有量情報に基づいてバッファ破綻の予測を行うバッファ破綻予測手段と、当該バッファ破綻予測手段の予測結果に応じて符号化モードを通常モードと緊急モードに切替える符号化モード切替手段を設け、緊急モードでは、マクロブロック毎の発生符号量が最小になる符号化モードで動作するようにして達成される。
【発明の効果】
【００２１】
本発明は、Ｈ．２６４Intra 符号化方式において、マクロブロック毎の符号量が最小となるパターンと、それにより発生する符号量又は１マクロブロック当りに発生しうる最大発生符号量に着目し、これからバッファ破綻を予測することにより、バッファ破綻を防止する仕組みが実現できるようにしたものであり、従って、本発明によれば、次に符号化されるマクロブロックにおいて、バッファが破綻する可能性がある場合には、符号化モードが切替えられ、マクロブロック毎の発生符号量が最小になる符号化モードで動作することになるので、バッファ破綻を完全に防止することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明に係る画像符号化装置について、図示した実施の形態により詳細に説明する。ここで、図１は、本発明に係る画像符号化装置の一実施形態を示したもので、ここでは符号１により画像符号化装置が表わされ、そして、この画像符号化装置１が、図４で説明した従来技術による画像符号化装置１０と異なる点は、バッファ破綻予測部２０１と符号化モードセレクタ部２０２が設けられていることだけで、その他の構成は同じであり、従って、入力画像ｉｎの供給を受け、圧縮符号化処理して符号化ストリームＣＳを出力するまでの基本的な動作も同じなので、以下、異なっている点に重点をおいて説明する。
【００２３】
まず、バッファ破綻予測部２０１は、実バッファ占有量算出部１０８から入力した実バッファ占有量ＲＢＯから、「残りのマクロブロック」の全てを最小の符号量で符号化した場合、バッファ破綻が生じるか否かを算出し、それに基づいて符号化モードの切替信号Ｓを出力する働きをする。なお、この符号量の制御では、例えば１フレーム毎又は２フレーム毎の発生符号量をＮビット以内に制御するというように、任意の制御単位で任意の符号量内に符号量を抑制することで、バッファ破綻を防止するものであり、ここで「残りのマクロブロック」とは、ある制御単位内のマクロブロックを全て符号化する際、現時点で残っているマクロブロック数のことを指している。そして、出力された切替信号Ｓは符号化モードセレクタ部２０２に供給される。
【００２４】
次に、符号化モードセレクタ部２０２は、入力された符号化モードの切替信号Ｓに応じて、通常モードで符号化を行うか、緊急モードで符号化を行うかを選択する。そして、まず、通常モードの場合は、入力された量子化係数ＱＣと最適予測モードＢＰＭ、それに量子化パラメータＱＰをそのまま出力する。一方、緊急モードの場合には、緊急モード用量子化係数ＱＣＥと緊急モード用予測モードＢＰＭＥ、それに緊急モード用量子化パラメータＱＰＥを出力する。なお、このときの緊急モード用の情報については後で詳述する。
【００２５】
いま、ここで符号化モードセレクタ部２０２の出力を、図示のように、各々ＱＣＳ、ＢＰＭＳ、ＱＰＳとすると、これらは次の通りになる。
【００２６】
・通常モードのとき
ＱＣＳ⇒ＱＣ
ＢＰＭＳ⇒ＢＰＭ
ＱＰＳ⇒ＱＰ
・緊急モードのとき
ＱＣＳ⇒ＱＣＥ
ＢＰＭＳ⇒ＢＰＭＥ
ＱＰＳ⇒ＱＰＥ
そこで、次に、これら本発明の実施形態の特徴であるバッファ破綻予測部２０１と符号化モードセレクタ部２０２の機能について、更に詳細に説明する。
【００２７】
＜バッファ破綻予測部２０１について＞
このバッファ破綻予測部２０１は、上記したように、実バッファ占有量から残り全てのマクロブロックを最小の符号量で符号化した場合でもバッファ破綻が生じるか否かを算出し、符号化モードの切替信号Ｓを出力する処理ブロックで、このとき、Ｈ．２６４Intra符号化方式で可変長符号化方式ＣＡＶＬＣ(Context Adaptive Variable Length Code)を用いた場合には、１マクロブロック当りの最小符号量は、以下に示すシンタクス構造を有する。
【００２８】
・最小符号量符号化時のＭＢ符号化ビット列
・・ＭＢシンタクス要素 mb_type
ビット列⇒０１０
ビット数⇒３
・・ＭＢシンタクス要素 intra_chroma_pred_mode
ビット列⇒１
ビット数⇒１
・・ＭＢシンタクス要素 mb_qp_delta
ビット列⇒１
ビット数⇒１
従って、マクロブロックの最小発生符号量は５ビットとなる。
【００２９】
そこで、符号量制御単位の残りのマクロブロック数をＭＢleft とし、当該マクロブロックまでの総発生符号量をCurGenBit、ＶＢＶバッファサイズから計算された符号量制御単位に割当てが可能な符号量をAllocBitとし、１ＭＢ当り発生する最大符号量をMaxMBBits(H.264 標準では128+MBRawBits)、当該マクロブロックを符号化した後、最小符号量で残りのマクロブロックを符号化したときの総発生符号量をTotalGenBitとする。そうすると、符号化モード判定の様子は図３に示すようになる。なお、この図３では横軸が符号化するマクロブロックの数であり、縦軸は発生符号量の和を示している。
【００３０】
まず、符号量制御単位の最初のマクロブロックを符号化する際には、発生符号量の和はゼロから始まり、発生符号量の和の上限は、符号量制御単位に割当てられる符号量であるAllocBitとなる。そして、この図３において、円で囲んだ部分が、この実施形態例におけるモードの切替点であって、このとき発生符号量の累計値であるCurGenBitに、マクロブロックの最大発生符号量MBMaxBitsを加算した値が、緊急モードの切替境界を越える場合には緊急モードに切替える。このときの符号化モードの判定は、具体的には下記の式による
TotalGenBit＞AllocBit ⇒ 符号化モード＝緊急モード
TotalGenBit≦AllocBit ⇒ 符号化モード＝通常モード
但し、TotalGenBit＝MaxMBBits＋５＊(MB_left−1)＋CurGenBit
すなわち、TotalGenBitがAllocBitより小さければバッファ破綻が起こることはないため、符号化モードを通常モードとして出力する。一方、TotalGenBitがAllocBitより大きければ、当該マクロブロックを符号化して最大符号量が発生した場合にはバッファ破綻が起きてしまうため、当該マクロブロック以降は最小符号量で符号化するよう符号化モードを緊急モードとして出力するのである。
【００３１】
なお、符号化シーケンスに macroblock-adaptive frame／field coding モードが用いられている場合には、２マクロブロック毎に１ビットの mb_field_decoding_flag が付加される。従って、この macroblock-adaptive frame／field coding モードが有効にされていた場合には、２マクロブロック毎に１ビットの情報が付加されることを考慮するだけで最小符号量の算出が可能である。
【００３２】
＜符号化モードセレクタ部２０２について＞
符号化モードセレクタ部２０２は、バッファ破綻予測部２０１から入力した符号化モードの切替信号Ｓに基づき、符号化モードの切替を行う。このときの符号化モードには２種類が存在し、入力されている量子化係数ＱＣ、予測モード情報(最適予測モードＢＰＭ)、それに量子化パラメータＱＰを通常通りそのまま出力する通常モードと、通常モードでの情報とは別個の緊急モード用の情報を出力する緊急モードとがある。
【００３３】
そして、このときの緊急モード用の情報については、次の通りにしてある。すなわち、まず、量子化係数ＱＣとしては、全てがゼロの係数を出力させる。次に、量子化パラメータＱＰとしては、前回のマクロブロックにおいて使用した量子化パラメータをそのまま、再度出力させる。そして最適予測モードＢＰＭには、緊急モード用の予測モード情報を出力させるのであるが、このときの緊急モード用予測モード情報には、H.264標準のIntra16ｘ16PredMode=0 に該当する予測モード情報を用いるようにしてある。
【００３４】
ここで、これら緊急モード用の情報が可変長符号化部１０６に入力されたとすると、最小符号量符号化時に相当するＭＢ符号化ビット列ＣＤＳが可変長符号化部１０６から出力されることになり、従って、この画像符号化装置１によれば、バッファが破綻する可能性があるマクロブロックが表れた場合には、マクロブロック毎の発生符号量が最小になる符号化モードで動作することになり、この結果、入力画像ｉｎとして、バッファが破綻する可能性があるマクロブロックを有する信号が入力された場合でも、バッファ破綻を完全に防止することができる。
【図面の簡単な説明】
【００３５】
【図１】本発明に係る画像符号化装置の一実施の形態を示すブロック構成図である。
【図２】本発明に係る画像符号化装置の一実施の形態の動作を説明するための特性図である。
【図３】画像符号化装置の一般的な構成の説明図である。
【図４】従来技術による画像符号化装置の一例を示すブロック構成図である。
【符号の説明】
【００３６】
１：画像符号化装置(本発明の一実施形態に係る画像符号化装置)
１０１：フレームメモリ
１０２：予測モード判定部
１０３：フレーム内予測画像生成部
１０４：ＤＣＴ部
１０５：量子化部
１０６：可変長符号化部
１０７：目標バッファ占有量算出部
１０８：実バッファ占有量算出部
１０９：量子化パラメータ算出部
１１０：ストリームバッファ
１１１：逆量子化部
１１２：逆ＤＣＴ部
１１３：参照画像メモリ
２０１：バッファ破綻予測部
２０２：符号化モードセレクタ部
【図１】
2008271213.tif 000003
【図２】
2008271213.tif 000004
【図３】
2008271213.tif 000005
【図４】
2008271213.tif 000006