(57)【特許請求の範囲】
【請求項１】
マクロブロックで構成されるビデオオブジェクトプレーン単位のディジタル化映像信号を前記マクロブロック毎に直交変換し、量子化してマクロブロック情報を生成する信号処理手段と、
少なくとも１つのマクロブロック分のマクロブロック情報を統合して統合情報を生成する統合手段と、
この統合情報のブロック情報に対してマクロブロック情報毎に可変長符号化する符号化手段と、
前記統合手段から出力される可変長符号化前の統合されたマクロブロック情報に含まれる量子化ＤＣＴ係数をカウントし、当該ビデオオブジェクトプレーン内における量子化ＤＣＴ係数の累積数を出力する第１のカウント手段と、
前記統合手段から出力される符号化列の発生符号量をカウントし、当該ビデオオブジェクトプレーン内における累積発生符号量を出力する第２のカウント手段と、
前記第１及び第２のカウント手段から出力される前記累積発生符号量を前記累積数で除算して平均符号語長を決定する平均符号語長算出手段と、
前記第１のカウント手段でカウントされた量子化ＤＣＴ係数に平均符号語長を乗算して発生符号推定量を求める推定部と、
可変長符号化前の前記統合された少なくとも１つのマクロブロックに対する目標発生符号量と前記発生符号推定量とを比較し、前記発生符号推定量が前記目標発生符号量よりも小さければ、前記目標発生符号量から前記発生符号推定量を減算して前記統合されたマクロブロック毎に挿入すべきスタッフィングビットを算出し、当該統合されたマクロブロック情報に前記算出されたスタッフィングビットを付加する推定算出手段であって、前記統合されたマクロブロックに対する目標発生符号量が信号処理済みマクロブロックの目標発生符号量から前記累積発生符号量を減算して求められ、前記信号処理済みマクロブロックの目標発生符号量が予め装置に定められた当該ビデオオブジェクトプレーンにおける目標符号量を当該ビデオオブジェクトプレーン内における信号処理済みマクロブロック率を乗算して求められている推定算出手段と、
を具備することを特徴とする映像符号化装置。
【請求項２】
前記統合手段で統合されるマクロブロックが固定値であることを特徴とする請求項１の映像符号化装置。
【請求項３】
前記平均符号語長算出手段は、前記平均符号語長を固定値或いは可変値として求めることを特徴とする請求項１の映像符号化装置。
【請求項４】
前記ビデオオブジェクトプレーンにおける目標符号量は、目標ビットレートを目標フレームレイトで除算して求められることを特徴とする請求項１の映像符号化装置。
【請求項５】
前記信号処理済みマクロブロック率は、１ビデオオブジェクトプレーン内の総マクロブロック数に対する信号処理済みマクロブロック数の割合を示していることを特徴とする請求項１の映像符号化装置。
【請求項６】
マクロブロックで構成されるビデオオブジェクトプレーン単位のディジタル化映像信号を前記マクロブロック毎に直交変換し、量子化してマクロブロック情報を生成し、
少なくとも１つのマクロブロック分のマクロブロック情報を統合して統合情報を生成し、
この統合情報のブロック情報に対してマクロブロック情報毎に可変長符号化し、
可変長符号化前の統合されたマクロブロック情報に含まれる量子化ＤＣＴ係数をカウントし、当該ビデオオブジェクトプレーン内における量子化ＤＣＴ係数の累積数を出力し、
前記統合された符号化列の発生符号量をカウントし、当該ビデオオブジェクトプレーン内における累積発生符号量を出力し、
前記出力された累積発生符号量を前記累積数で除算して平均符号語長を決定し、
前記カウントされた量子化ＤＣＴ係数に平均符号語長を乗算して発生符号推定量を求め、
可変長符号化前の前記統合された少なくとも１つのマクロブロックに対する目標発生符号量と前記発生符号推定量とを比較し、前記発生符号推定量が前記目標発生符号量よりも小さければ、前記目標発生符号量から前記発生符号推定量を減算して前記統合されたマクロブロック毎に挿入すべきスタッフィングビットを算出し、当該統合されたマクロブロック情報に前記算出されたスタッフィングビットを付加する映像符号化方法において、前記統合されたマクロブロックに対する目標発生符号量が信号処理済みマクロブロックの目標発生符号量から前記累積発生符号量を減算して求められ、前記信号処理済みマクロブロックの目標発生符号量が予め当該方法に定められた当該ビデオオブジェクトプレーンにおける目標符号量を当該ビデオオブジェクトプレーン内における信号処理済みマクロブロック率を乗算して求められることを特徴とする映像符号化方法。
【請求項７】
前記統合されるマクロブロックが固定値であることを特徴とする請求項６の映像符号化方法。
【請求項８】
前記平均符号語長を固定値或いは可変値として求めることを特徴とする請求項６の映像符号化方法。
【請求項９】
前記ビデオオブジェクトプレーンにおける目標符号量は、目標ビットレートを目標フレームレイトで除算して求められることを特徴とする請求項６の映像符号化方法。
【請求項１０】
前記信号処理済みマクロブロック率は、１ビデオオブジェクトプレーン内の総マクロブロック数に対する信号処理済みマクロブロック数の割合を示していることを特徴とする請求項６の映像符号化方法。
【請求項１１】
マクロブロックが格納されたビデオパケット単位のディジタル化映像信号を前記マクロブロック毎に直交変換し、量子化してマクロブロック情報を生成し、
少なくとも１つのマクロブロック分のマクロブロック情報を統合して統合情報を生成し、
この統合情報のブロック情報に対してマクロブロック情報毎に可変長符号化し、
可変長符号化前の統合されたマクロブロック情報に含まれる量子化ＤＣＴ係数をカウントし、当該ビデオオブジェクトプレーン内における量子化ＤＣＴ係数の累積数を出力し、
前記ビデオパケット内の統合された符号化列の発生符号量をカウントし、当該ビデオパケット内における累積発生符号量を出力し、
前記出力された累積発生符号量を前記累積数で除算して平均符号語長を決定し、
カウントされた当該ビデオパケット内のマクロブロックの量子化ＤＣＴ係数の総数に平均符号語長を乗算して発生符号推定量を求め、
可変長符号化前の前記統合された少なくとも１つのマクロブロックに対する目標発生符号量を予め定められた目標ビデオパケットサイズと比較して前記目標発生符号量及び前記目標ビデオパケットサイズの小さな一方を決定し、この小さな一方の値と前記発生符号推定量とを比較し、前記発生符号推定量が前記一方の値よりも小さければ、前記一方の値から前記発生符号推定量を減算して前記ビデオパケット毎に挿入すべきスタッフィングビットを算出し、当該ビデオパケット内の前記統合されたマクロブロック情報に前記算出されたスタッフィングビットを付加する映像符号化方法において、
前記統合されたマクロブロックに対する目標発生符号量が信号処理済みマクロブロックの目標発生符号量から前記累積発生符号量を減算して求められ、前記信号処理済みマクロブロックの目標発生符号量が予め装置に定められた当該ビデオオブジェクトプレーンにおける目標符号量をビデオオブジェクトプレーン内における信号処理済みマクロブロック率を乗算して求めることを特徴とする映像符号化方法。
【請求項１２】
前記統合されるマクロブロックが固定値であることを特徴とする請求項１１の映像符号化方法。
【請求項１３】
前記平均符号語長を固定値或いは可変値として求めることを特徴とする請求項１１の映像符号化方法。
【請求項１４】
前記ビデオオブジェクトプレーンにおける目標符号量は、目標ビットレートを目標フレームレイトで除算して求められることを特徴とする請求項１１の映像符号化方法。
【請求項１５】
前記信号処理済みマクロブロック率は、１ビデオオブジェクトプレーン内の総マクロブロック数に対する信号処理済みマクロブロック数の割合を示していることを特徴とする請求項１１の映像符号化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ディジタル動画像の信号を符号化する映像符号化装置に係り、特に、ディジタル動画像等の映像信号を所定の符号化方式で信号処理する際に信号処理されたビットストリームに所定のスタッフィングビットを挿入する映像符号化装置に関する。
【０００２】
【従来の技術】
一般に、ビデオ信号、即ち、映像信号を符号化する映像符号化装置では、映像信号を所定の方式で符号化して所定の符号量を有する単位に区分され、この単位を有するビットストリームが出力しなければならないとされている。即ち、ビデオストリームを受ける受信側のバッファにおいて、オーバーフロー、或いは、アンダーフローが生じないようにするために、ビデオストリームの出力側の符号化装置においては、そのビデオストリームの符号量が制御されることが要求されている。このオーバーフローを防ぐ一般的な方法としては、量子化パラメータの制御及び符号化フレームの制御等があり、これらの制御によって符号量が所定の符号量に調整されている。また、アンダーフローを防ぐ方法としては、スタッフィングを挿入する方法がある。この方法では、受信側における復号処理では捨て去られる冗長ビットがスタッフィングとしてビットストリームの所定の箇所に挿入される。尚、スタッフィング自体は、挿入を意味し、スタッフィングの挿入は、正確にはスタッフィングビットの挿入を意味している。（単に省略してスタッフィングの挿入と表現されることもある。）
映像信号符号化方式として近年ＭＰＥＧ-４が提案され、実用化されつつある。このＭＰＥＧ-４の規格においては、一例としてマクロブロック（Macro-block）単位でスタッフィングが挿入される。（このマクロブロック単位で挿入されたスタッフィングは、ＭＢスタッフィングと称せられる。）ＭＢスタッフィングであれば、マクロブロックＭＢの符号化方法が特定され、その符号化方法は、ＭＢタイプとして定義される。ＭＢタイプでは、イントラ（Ｉｎｔｒａ）、或いは、インター（Ｉｎｔｅｒ）、差分量子化スケール（ＤＱｕａｎｔ）の有無を表すＭＢタイプが現れるまで何個でも繰り返しスタッフィングビットを挿入することができる。尚、挿入するスタッフィングビットの１単位は、９ビットの符号列に定められている。
【０００３】
前述したように、スタッフィングは、アンダーフローを防ぐための方法であり、通常、ビットストリーム中でマクロブロック（ＭＢ）毎に不足している符号量が求められ、その符号量に相当するＭＢスタッフィングが実施される。即ち、映像信号が所定の方式で信号処理され、この信号処理された信号が可変長符号化処理され、可変長符号化処理された信号の発生符号量が所定の符号量に達していない場合において、スタッフィングが実行される。このスタッフィングにおいて、挿入すべき符号量は、その不足している符号量が求められ、その符号量に対応するスタッフィングがなされる。
【０００４】
ＭＢ情報が可変長符号化された後、ビットストリームにマクロブロック（ＭＢ）スタッフィングを挿入するには、可変長符号化処理されたマクロブロックＭＢ毎にスタッフィングを挿入する方法が考えられる。このため、ビットストリームを送信する送信バッファの前段にスタッフィングを挿入するための装置を追加することが必要とされる。この追加する装置としては、例えば、ＭＢスタッフィングを有しないビットストリームを一時的に格納するバッファ、或いは、ビットストリーム中にＭＢスタッフィングを挿入可能なようにその挿入箇所を示す装置が予想される。
【０００５】
【発明が解決しようとする課題】
ビットストリーム中にＭＢスタッフィングを挿入するには、バッファとしてのメモリが必要され、この装置の消費電力が大きくなる問題点がある。また、追加する装置を必要とすることから、回路が大きくなり、消費電力も増大し、信号処理に遅延が生じる虞がある問題がある。
【０００６】
【課題を解決するための手段】
この発明は、上述した事情に鑑みなされたものであって、その目的は、可変長符号化処理前に符号化すべきデータに対してスタッフィング量を推定し、この符号化すべきデータにスタッフィングを挿入して符号化することが可能な映像符号化装置及び映像符号化方法を提供するにある。
【０００７】
また、この発明の目的は、符号化すべきデータにスタッフィングが挿入された後に可変長符号化処理がなされることで、回路を増やすことなく、また、遅延を生じさせることなく、所定のビットストリームを出力することができる映像符号化装置及び映像符号化方法を提供するにある。
【０００８】
この発明によれば、
マクロブロックで構成されるビデオオブジェクトプレーン単位のディジタル化映像信号を前記マクロブロック毎に直交変換し、量子化してマクロブロック情報を生成する信号処理手段と、
少なくとも１つのマクロブロック分のマクロブロック情報を統合して統合情報を生成する統合手段と、
この統合情報のブロック情報に対してマクロブロック情報毎に可変長符号化する符号化手段と、
前記統合手段から出力される可変長符号化前の統合されたマクロブロック情報に含まれる量子化ＤＣＴ係数をカウントし、当該ビデオオブジェクトプレーン内における量子化ＤＣＴ係数の累積数を出力する第１のカウント手段と、
前記統合手段から出力される符号化列の発生符号量をカウントし、当該ビデオオブジェクトプレーン内における累積発生符号量を出力する第２のカウント手段と、
前記第１及び第２のカウント手段から出力される前記累積発生符号量を前記累積数で除算して平均符号語長を決定する平均符号語長算出手段と、
前記第１のカウント手段でカウントされた量子化ＤＣＴ係数に平均符号語長を乗算して発生符号推定量を求める推定部と、
可変長符号化前の前記統合された少なくとも１つのマクロブロックに対する目標発生符号量と前記発生符号推定量とを比較し、前記発生符号推定量が前記目標発生符号量よりも小さければ、前記目標発生符号量から前記発生符号推定量を減算して前記統合されたマクロブロック毎に挿入すべきスタッフィングビットを算出し、当該統合されたマクロブロック情報に前記算出されたスタッフィングビットを付加する推定算出手段であって、前記統合されたマクロブロックに対する目標発生符号量が信号処理済みマクロブロックの目標発生符号量から前記累積発生符号量を減算して求められ、前記信号処理済みマクロブロックの目標発生符号量が予め装置に定められた当該ビデオオブジェクトプレーンにおける目標符号量を当該ビデオオブジェクトプレーン内における信号処理済みマクロブロック率を乗算して求められている推定算出手段と、
を具備することを特徴とする映像符号化装置が提供される。
【０００９】
また、この発明によれば、
マクロブロックで構成されるビデオオブジェクトプレーン単位のディジタル化映像信号を前記マクロブロック毎に直交変換し、量子化してマクロブロック情報を生成し、
少なくとも１つのマクロブロック分のマクロブロック情報を統合して統合情報を生成し、
この統合情報のブロック情報に対してマクロブロック情報毎に可変長符号化し、
可変長符号化前の統合されたマクロブロック情報に含まれる量子化ＤＣＴ係数をカウントし、当該ビデオオブジェクトプレーン内における量子化ＤＣＴ係数の累積数を出力し、
前記統合された符号化列の発生符号量をカウントし、当該ビデオオブジェクトプレーン内における累積発生符号量を出力し、
前記出力された累積発生符号量を前記累積数で除算して平均符号語長を決定し、
前記カウントされた量子化ＤＣＴ係数に平均符号語長を乗算して発生符号推定量を求め、
可変長符号化前の前記統合された少なくとも１つのマクロブロックに対する目標発生符号量と前記発生符号推定量とを比較し、前記発生符号推定量が前記目標発生符号量よりも小さければ、前記目標発生符号量から前記発生符号推定量を減算して前記統合されたマクロブロック毎に挿入すべきスタッフィングビットを算出し、当該統合されたマクロブロック情報に前記算出されたスタッフィングビットを付加する映像符号化方法において、前記統合されたマクロブロックに対する目標発生符号量が信号処理済みマクロブロックの目標発生符号量から前記累積発生符号量を減算して求められ、前記信号処理済みマクロブロックの目標発生符号量が予め当該方法に定められた当該ビデオオブジェクトプレーンにおける目標符号量を当該ビデオオブジェクトプレーン内における信号処理済みマクロブロック率を乗算して求められることを特徴とする映像符号化方法が提供される。
【００１０】
更に、この発明によれば、
マクロブロックが格納されたビデオパケット単位のディジタル化映像信号を前記マクロブロック毎に直交変換し、量子化してマクロブロック情報を生成し、
少なくとも１つのマクロブロック分のマクロブロック情報を統合して統合情報を生成し、
この統合情報のブロック情報に対してマクロブロック情報毎に可変長符号化し、
可変長符号化前の統合されたマクロブロック情報に含まれる量子化ＤＣＴ係数をカウントし、当該ビデオオブジェクトプレーン内における量子化ＤＣＴ係数の累積数を出力し、
前記ビデオパケット内の統合された符号化列の発生符号量をカウントし、当該ビデオパケット内における累積発生符号量を出力し、
前記出力された累積発生符号量を前記累積数で除算して平均符号語長を決定し、
カウントされた当該ビデオパケット内のマクロブロックの量子化ＤＣＴ係数の総数に平均符号語長を乗算して発生符号推定量を求め、
可変長符号化前の前記統合された少なくとも１つのマクロブロックに対する目標発生符号量を予め定められた目標ビデオパケットサイズと比較して前記目標発生符号量及び前記目標ビデオパケットサイズの小さな一方を決定し、この小さな一方の値と前記発生符号推定量とを比較し、前記発生符号推定量が前記一方の値よりも小さければ、前記一方の値から前記発生符号推定量を減算して前記ビデオパケット毎に挿入すべきスタッフィングビットを算出し、当該ビデオパケット内の前記統合されたマクロブロック情報に前記算出されたスタッフィングビットを付加する映像符号化方法において、
前記統合されたマクロブロックに対する目標発生符号量が信号処理済みマクロブロックの目標発生符号量から前記累積発生符号量を減算して求められ、前記信号処理済みマクロブロックの目標発生符号量が予め装置に定められた当該ビデオオブジェクトプレーンにおける目標符号量をビデオオブジェクトプレーン内における信号処理済みマクロブロック率を乗算して求めることを特徴とする映像符号化方法が提供される。
【００１４】
この発明においては、バッファアンダーフローを防ぐために行うスタッフィングに関して、新たに追加する回路および処理が極力少ないので、消費電力も抑えられ、リアルタイム性も保つことができる。
【００１５】
【発明の実施の形態】
以下、図面を参照してこの発明の一実施例に係る映像符号化装置を説明する。
【００１６】
図１には、この発明の一実施例に係る映像信号、即ち、ビデオ信号を可変長符号化する映像符号化装置のブロック図が示されている。この図１に示される装置は、この装置内の各部を制御する装置制御部２０及びビデオオブジェクトプレーン（ＶＯＰ）の単位で、付帯的には、フレーム或いはフィールド単位で入力されるディジタル化映像信号を所定の映像信号圧縮方式（ＭＰＥＧ-４方式、或いは、ＩＴＵ−Ｔ勧告のＨ.２６３方式、又は、これらを変更した方式）に従って所定のブロック、即ち、マクロブロックに分割し、マクロブロックを信号処理して圧縮する信号処理部１０を備えている。
【００１７】
この信号処理部１０は、図２に示されるように量子化ＤＣＴ係数（Discrete Cosine Transform：離散コサイン変換）部２４及び量子化部２５を含んでいる。制御装置２０の制御に従って入力されたディジタル化映像信号は、ＤＣＴ部２４において、フレーム或いはフィールドの最小単位であるマクロブロック毎に直交変換、即ち、ＤＣＴ演算され、得られたＤＣＴ係数が量子化部２５においてＤＣ（直流）成分及びＡＣ（交流）成分毎に独立して量子化され、量子化されたＤＣＴ係数は、テクスチャ（量子化ＤＣＴ係数）として図１に示されるシンタックス生成部１２に出力される。
【００１８】
図２に示される信号処理部１０は、更に量子化されたビットストリームを逆量子化する逆量子化部２６、逆量子化されたＤＣＴ係数を逆ＤＣＴ変換する逆ＤＣＴ部２７及びマクロブロック単位で次のフレームと比較する動き補償部、即ち、ＭＣ（Motion Compensation）部２９から構成されている。この信号処理部１０においては、ＤＣＴ係数が逆ＤＣＴ変換されて符号２８で示すように復号化画像が再現され、この復号化画像が次に入力されるフレーム或いはフィールドとマクロブロック単位でＭＣ部２９において比較され、その両者の比較から動きベクトル及び予測参照画像がこのＭＣ部２９から出力される。動きベクトルは、テクスチャ（量子化ＤＣＴ係数）と同様に図１に示されるシンタックス生成部１２に出力される。また、予測参照画像は、ＤＣＴ変換される前に次のフレーム画像と比較されてその差分がＤＣＴ部２４においてＤＣＴ変換され、ＤＣＴ係数が量子化されてマクロブロック毎にシンタックス生成部１２に出力される。
【００１９】
シンタックス生成部１２においては、入力されたテクスチャ（量子化ＤＣＴ係数）及び動きベクトルを含むマクロブロック（ＭＢ）情報及び後に説明するスタッフィング量から、ＭＰＥＧ-４の規格に基づく符号化モードに従ったシンタックスが生成され、このシンタックスが可変長符号化部１３に入力される。尚、この符号化モードの制御は装置制御部２０で設定される。
【００２０】
シンタックス生成部１２からのシンタックスは、可変長符号化処理部１３において、順次可変長符号化され、可変長符号化されたビットストリームは、送信バッファ２２に与えられ、装置制御部１０で設定された目標ビットレートに従って送信される。
【００２１】
図１に示される映像符号化装置は、更に量子化ＤＣＴ（離散コサイン変換）係数カウント部２１、可変長符号化処理部１３、発生符号量カウント部１４、平均符号語長算出部１５、発生符号量推定部１６及びスタッフィング量算出部１７を備えている。尚、装置制御部２０は、これらの各部を制御すると共に装置に入力される映像信号を制御し、装置が出力すべきビットストリームを制御している。ここで、ビットストリームの制御とは、目標となる発生符号量（目標ビットレート）或いはフレーム数（目標フレームレート）の設定、レート制御或いは誤り耐性などの符号化モードの設定等を含んでいる。
【００２２】
可変長符号化部１３の出力は、発生符号量カウント部１６に与えられ、この発生符号量カウント部１６において、その符号量がカウントされ、そのカウント値がスタッフィング量算出部１７及び平均符号語長算出部１５に与えられる。
【００２３】
量子化ＤＣＴ係数カウント部２１には、信号処理部１０で生成されたＭＢ情報に含まれる量子化ＤＣＴ係数がカウントされ、そのカウント値が平均符号語長算出部１５及び発生符号量推定部１６に与えられる。
【００２４】
平均符号語長算出部１５は、量子化ＤＣＴ係数カウント部２１でカウントされた量子化ＤＣＴ係数の累積数と発生符号量カウント部１４でカウントされた符号量の累積数から、量子化ＤＣＴ係数の平均符号語長Ｌを算出し、この平均符号語長Ｌを符号量推定部１６に与えている。累積発生符号量をＣsum、量子化ＤＣＴ係数の累積数をＮsumとすると、平均符号語長Ｌは、Ｃsum／Ｎsumとなる。ここで、平均符号語長として可変値ではなく固定値を用いても良い。例えば、平均符号語長として固定値Ｌ＝８に定めても良い。また、累積数は、あるフレームの入力開始からその内の該当するマクロブロックの処理までの発生符号量或いは量子化ＤＣＴ係数の総数に相当している。
【００２５】
発生符号量推定部１６は、図３に示すように量子化ＤＣＴ係数カウント部２１でカウントされるあるマクロブロックの量子化ＤＣＴ係数Ｎcoefと、平均符号語長算出部１６で算出される量子化ＤＣＴ係数の平均符号語長Ｌから、当該マクロブロックに関して可変長符号化処理部１３で発生されると予想される符号量の推定値を算出している。可変長符号化処理部１３において、シンタックス生成部からのシンタックス出力が可変長符号化処理される前にこの推定値が算出される。
【００２６】
推定発生符号量Ｅ(x)は、
Ｅ(x)＝Ｎcoef×Ｌ
となる。ここで、xは、ビデオオブジェクトプレーン（ＶＯＰ：Ｖｉｄｅｏ  Ｏｂｊｅｃｔ  Ｐｌａｎｅ）、即ち、フレーム或いはフィールド内でのマクロブロックＭＢの番号を示す正の整数とする。
【００２７】
スタッフィング量算出部１７は、装置制御部１０で設定される目標となる発生符号量（目標ビットレート）Ｔbr、フレーム数（目標フレームレート）Ｔfr、信号処理部１１で得られる１フレーム内における信号処理済のマクロブロック（ＭＢ）数Ｎmb(x)から、目標発生符号量Ｔcode(x)を算出している。ここで、予め定まっている１ＶＯＰ当たりのマクロブロック（ＭＢ）の総数をＮvopとすると、目標発生符号量Ｔcode(x)は、
Ｔcode(x)＝（Ｔbr／Ｔfr）×（Ｎmb(x)／Ｎvop）
となる。ここで、（Ｔbr／Ｔfr）は、１フレーム当たりの目標符号量、即ち、１ビデオオブジェクトプレーン内における目標符号量である。また、（Ｎmb(x)／Ｎvop）は、１ビデオオブジェクトプレーン内における全体のマクロブロック数に対する信号済マクロブロック数の割合である。この目標発生符号量Ｔcode(x)は、上記式から明らかなように信号処理の対象とされるｘ番目マクロブロックが符号化された後に１ビデオオブジェクトプレーン内において累積的に発生されるべき目標とする符号量として定義される。
【００２８】
この目標発生符号量Ｔcode (x)と発生符号量カウント部１４で得られる可変長符号化済のマクロブロックＭＢの発生符号量Ｃ(x)を用いて、現在符号化しているマクロブロックＭＢ（以下、符号化ＭＢと呼ぶ）の目標発生符号量Ｔmb(x)が
【００２９】
【数１】
0004170555.tif 000002
【００３０】
で算出される。ただし、Ｃ(0)＝０。
【００３１】
この目標発生符号量Ｔmb(x)と発生符号量推定部１６で得られる推定発生符号量Ｅ(x)から予測、即ち、推定される不足符号量Ｓ(x)が以下の通りに算出される。
【００３２】
（１）推定発生符号量Ｔmb(x)が目標発生符号量Ｅ(x)より小さいとき、
Ｓ(x)＝Ｔmb(x)−Ｅ(x)  if Ｔmb(x)＞Ｅ(x)
とする。
【００３３】
（２）他方、推定発生符号量Ｔmb(x)が目標発生符号量Ｅ(x)より大きい場合、
Ｓ(x)＝０              if Ｔmb(x)＜＝Ｅ(x)
とする。このＳ(x)がスタッフィング量となり、この値をシンタックス生成部２に与えられる。尚、このスタッフィング量は、９ビットを１単位としてその整数倍に定められる。
【００３４】
図１に示された映像符号化装置における動作について図３から図８を参照して説明する。
【００３５】
信号処理部１０には、図８（ａ）に示すようにビデオオブジェクトプレーン内の画像信号が矢印で示すように順次入力される。この信号処理部１０に映像信号が与えられると、映像信号は、信号処理部１０において、図６（ｄ）及び図７（ｄ）に示すようにマクロブロック単位で信号処理されてテクスチャ（量子化ＤＣＴ係数）及び動きベクトルを含むマクロブロック情報が生成される。テクスチャ（量子化ＤＣＴ係数）のＤＣＴ係数がＤＣＴ係数カウント部２１でカウントされて符号量が算出される。ＤＣＴ係数カウント部２１でカウントされた符号量の累積値が量子化ＤＣＴ係数の累積数Ｎsumとして平均符号語長算出部１５に与えられる。また、マクロブロック情報を基にしてシンタックス生成部１２でシンタックスが生成され、このシンタックスが可変長符号化部１３で可変長符号化される。この符号化されたビットストリームの符号量が発生符号量カウント部１４でカウントされ、発生符号量の累積値が累積発生符号量Ｃsumとして同様に平均符号語長算出部１５に与えられる。この累積発生符号量Ｃsumは、図８（ｂ）に示すビデオオブジェクトプレーン内において斜線で示す領域のマクロブロックを可変長符号化後に発生される発生符号量の総数に相当する。
【００３６】
平均符号語長算出部１５において、与えられた累積発生符号量Ｃsum及び量子化ＤＣＴ係数の累積数Ｎsumから、平均符号語長Ｌ（Ｌ＝Ｃsum／Ｎsum）が算出される。この平均符号語長Ｌは、発生符号量推定部１６に与えられる。ここで、発生符号量推定部１６には、マクロブロック毎のＤＣＴ係数Ｎcoefが量子化ＤＣＴ係数カウント部２１から次々と与えられることから、図３に示すように推定発生符号量Ｅ(x)（Ｅ(x)＝Ｎcoef×Ｌ）が求められる。
【００３７】
推定発生符号量Ｅ(x)は、スタッフィング量算出部１７に与えられる。このスタッフィング量算出部１７には、装置制御部２０から図４のステップＳ４１及びＳ４２で示すように目標ビットレートＴbr及び目標フレームレートＴfr並びに１オブジェクトプレーンＶＯＰ当たりのマクロブロック（ＭＢ）の総数をＮvopが与えられ、また、図４のステップＳ４４に示すように信号処理部１０から１オブジェクトプレーンＶＯＰ内における信号処理済のマクロブロック（ＭＢ）数Ｎmb(x)が与えられている。従って、ステップＳ４３に示すように１ビデオオブジェクトプレーン内における目標符号量（Ｔbr／Ｔfr）が求められ、ステップＳ４５に示すように１ビデオオブジェクトプレーン内における信号処理済マクロブロック（ＭＢ）率（Ｎmb(x)／Ｎvop）が求められる。ステップＳ４７に示すようにこの目標符号量（Ｔbr／Ｔfr）及び信号処理済マクロブロック（ＭＢ）率（Ｎmb(x)／Ｎvop）から次式で定められる信号処理済みのマクロブロックの目標発生符号量Ｔcode(x)が求められる。
【００３８】
Ｔcode(x)＝（Ｔbr／Ｔfr）×（Ｎmb(x)／Ｎvop）
この目標発生符号量Ｔcode(x)は、ｘ番目のマクロブロックを可変長符号化処理部１３で符号化する場合、ｘ番目のマクロブロックまでに発生される、符号化しているビデオオブジェクトプレーンＶＯＰにおける目標とする総符号量に該当する。
【００３９】
図５のステップ５１に示すようにこの目標発生符号量Ｔcode(x)が定まると、発生符号量カウント部１４から与えられる可変長符号化済のマクロブロックＭＢの発生符号量Ｃ(x)と比較され、図８（ｂ）に示すようにその差に相当する現在符号化しているｘ番目のマクロブロック（ＭＢ）の目標とする発生符号量Ｔmb(x)が求められる。
【００４０】
また、ステップＳ５４及びステップＳ５６に示すように算出された平均符号長Ｌ及び符号化マクロブロックの量子化ＤＣＴ係数の総数ＮcoefからステップＳ５５に示すように符号化されたマクロブロックの推定符号量Ｅ（ｘ）が演算される。ステップＳ５７で示すようにこの発生符号量Ｔmb(x)と推定符号量Ｅ（ｘ）とが比較され、推定発生符号量が目標発生符号量より小さいときには、ステップＳ５８に示すようにその差がスタッフィングすべき量Ｓ(x)として設定される。この場合、その量Ｓ(x)を基準にスタッフィングが図６（ｂ）に示すようにマクロブロック情報毎にマクロブロックタイプ（ＭＢタイプ）として挿入され、そのマクロブロック情報が図６に示すように可変長符号化処理部で可変長符号化され、送信バッファに出力される。これに対して、ステップＳ５９に示すように、推定発生符号量Ｔmb(x)が目標発生符号量Ｅ(x)より大きい場合には、図７に示すようにスタッフィングが挿入されることなく、図７に示すようにマクロブロック情報が可変長符号化される。
【００４１】
図６は、マクロブロックにスタッフィングが挿入されたマクロブロックデータの構造を示し、図７は、マクロブロックにスタッフィングが挿入されていないマクロブロックデータの構造を示している。マクロブロックデータには、可変長符号化されたマクロブロック情報が複数個連続して配置され、図６に示すようにスタッフィング、動きベクトル（ＭＶ）及びテクスチャ（量子化ＤＣＴ係数）の順序で各マクロブロック情報が構成されている。これに対して、図７に示す構造では、スタッフィングが不要とされたことから、各マクロブロック情報には、動きベクトル（ＭＶ）及びテクスチャ（量子化ＤＣＴ係数）のみが配置されている。
【００４２】
尚、１オブジェクトプレーン内の全てのマクロブロックが可変長符号化された後に、量子化ＤＣＴ係数カウント部２１及び発生符号量カウント部１４がクリアされ、再び次のビデオオブジェクトプレーンの為の上述した処理が開始される。
【００４３】
上述した実施例においては、マクロブロック（ＭＢ）単位で随時スタッフィングを挿入する方法を示したが、すべてのマクロブロック（ＭＢ）に対してスタッフィングするか否かを決定してスタッフィングの必要がある毎にマクロブロックにスタッフィングを挿入しなくとも良い。例えば、ある時点まで符号化信号量の総数を計測し、ビデオオブジェクトプレーン（ＶＯＰ）の最後列、或いは、最後のマクロブロックＭＢに対してのみスタッフィングが上述の方法で挿入されても良い。
【００４４】
また、上述した実施例においては、マクロブロック（ＭＢ）単位でスタッフィングする方法を示したが、ＭＰＥＧ-４で規定されているビデオパケット（ＶＰ：Ｖｉｄｅｏ  Ｐａｃｋｅｔ）単位でスタッフィングがなされても良い。ビデオパケットＶＰは、まとめて符号化する隣接するＭＢを少なくとも１つ含んでいる。ビデオパケットＶＰ単位でスタッフィングを行う場合、発生符号量もビデオパケットＶＰ単位で推定することになる。ビデオパケットＶＰ単位で発生符号量を推定すると、推定精度は少し落ちるが、推定回数が減り、全体の処理量が減るためリアルタイム処理に有効である。また、後記データ・パーティシショニングモード（Ｄａｔａ  Ｐａｒｔｉｔｉｏｎｉｎｇ  Ｍｏｄｅ）の符号化では、ビデオパケットＶＰ単位に可変長符号化処理を行うので特に有効である。具体的な変更は、上記で設定したＭＢ番号xをＶＰ番号xとし、符号化ＭＢの目標発生符号量Ｔmb(x)を符号化ＶＰの目標発生符号量Ｔvp(x)とする。推定に関する計算はすべて同一である。
【００４５】
以下、ＶＰ単位のスタッフィングの方法をＭＢ単位のときと変更がある箇所、発生符号量推定部１６とスタッフィング量算出部１７の動作について説明する。
【００４６】
発生符号量推定部１６は、図９のステップＳ９６で示される量子化ＤＣＴ係数カウント部２１で得られる数Ｎcoef(j)（ビデオパケットＶＰ内のすべてのマクロブロックＭＢの量子化ＤＣＴ係数の総数）と、図９のステップＳ９４で示される平均符号語長算出部１６で算出される量子化ＤＣＴ係数の平均符号語長Ｌから、図９のステップＳ９５で示されるように可変長符号化処理部１３で発生される符号量の推定値Ｅ（ｘ）が可変長符号化処理前に算出される。
【００４７】
ビデオパケットＶＰ番号ｊのＶＰの推定発生符号量Ｅ(j)は、
Ｅ(j)＝Ｎcoef(j)×Ｌ
となる。ただし、jは、ビデオオブジェクトプレーン（ＶＯＰ：Ｖｉｄｅｏ  Ｏｂｊｅｃｔ  Ｐｌａｎｅ）内でのビデオパケットＶＰの番号を示す正の整数とする。ｘ（ｊ）は番号ｊのビデオパケットＶＰに含まれる最後のマクロブロックＭＢの番号を示す正の整数とする。
【００４８】
スタッフィング量算出部１７は、装置制御部２０で設定される目標ビットレートＴbr、目標フレームレートＴfr、信号処理部１０で得られる信号処理済のＭＢ数Ｎmb(x(j))から、図９のステップＳ９１に示すように目標発生符号量Ｔcode(x(j))を算出する。ここで、１ＶＯＰあたりの総マクロブロック（ＭＢ）数をＮvopとすると、目標発生符号量Ｔcode(x(j))は
Ｔcode(x(j))＝（Ｔbr／Ｔfr）×（Ｎmb(x(j))／Ｎvop）
となる。
【００４９】
このＴcode(x(j))と図９のステップＳ９２に示される発生符号量カウント部１４で得られる可変長符号化済のＶＰの発生符号量Ｃ(j)を用いて、ステップＳ９３に示されるように現在符号化しているビデオパケットＶＰ（以下、符号化ＶＰと呼ぶ）の目標発生符号量Ｔvp(x(j))が
0004170555.tif 000003
と算出される。ただし、Ｃ(0)＝０。
【００５０】
この符号化ビデオパケットＶＰの目標発生符号量Ｔvp(j)と発生符号量推定部１６で得られる推定発生符号量Ｅ(j)からステップＳ９７に示されるように予測、即ち、推定される不足符号量Ｓ(j)が以下の通り算出される。
【００５１】
推定発生符号量が目標発生符号量より小さいとき、
Ｓ(j)＝Ｔvp(j)−Ｅ(j)  if Ｔvp(j)＞Ｅ(j)
とする。他方、推定発生符号量が目標発生符号量より大きい場合、ステップＳ９７に示すように
Ｓ(j)＝０              if Ｔvp(j)＜＝Ｅ(j)
とする。このＳ(j)がスタッフィング量となり、この値をシンタックス生成部２へと与える。
【００５２】
ここで、映像信号符号化方式ＭＰＥＧ-４においては、ステップＳ９８に示されるようにビデオパケットＶＰのサイズに上限がある。そのため、この不足符号量Ｓ(j)を制限なしにスタッフィングとして挿入すると、ビデオパケットＶＰのサイズの上限を超えてしまうことがある。そこで、ビデオパケットＶＰのサイズの上限値ＶＰmaxをもとに目標ビデオパケットＶＰのサイズＶＰtarget（＜ＶＰmax）を装置制御部２０で設定する。この目標ビデオパケットＶＰのサイズは、ステップＳ９９に示されるようにビデオパケットＶＰのサイズの上限値ＶＰmaxより小さく、かつ発生符号量の推定精度にもよるが、推定誤差を考慮した数値、例えば、上限値の半分に設定される。
【００５３】
これらを考慮して、ステップＳ９９に示すようにビデオパケットＶＰ単位に符号化を行う場合のスタッフィング量は、前記不足符号量Ｓ(j)と前記推定発生符号量Ｅ(j)の和が目標ＶＰサイズがＶＰtargetを超えないようにしている。つまり符号化ＶＰの目標発生符号量Ｔvp(j)と目標ＶＰサイズＶＰtargetを比較して、小さい値から符号化ＶＰの推定発生符号量Ｅ(j)を減算した値をスタッフィング量Ｓ(j)とする。このスタッフィング量Ｓ(j)をシンタックス生成部２１に与えている。
【００５４】
Ｓ(j)＝Ｓ(j)
if Ｔvp(j)＜＝ＶＰtarget
Ｓ(j)＝ＶＰtarget−Ｅ(j)
if Ｔvp(j)＞ＶＰtarget、且つ、  ＶＰtarget＞Ｅ(j)
Ｓ(j)＝０                      if ＶＰtarget＜＝Ｅ(j)
即ち、ステップＳ１０１に示すように目標ＶＰサイズがＶＰtargetを超えない場合には、スタッフィング量Ｓ(j)は、目標ＶＰサイズとＶＰtargetとの差に定められる。また、ステップＳ１００に示すように目標ＶＰサイズがＶＰtargetを超え、しかも、推定発生符号量Ｅ(j)がＶＰtargetよりも小さい場合には、スタッフィング量Ｓ(j)は、目標ＶＰサイズと推定発生符号量Ｅ(j)との差に定められる。また、目標ＶＰサイズがＶＰtargetを超え、しかも、推定発生符号量Ｅ(j)がＶＰtargetよりも小さい場合には、スタッフィング量Ｓ(j)は、ゼロとしてスタッフィングが与えられないこととなる。
【００５５】
上述したスタッフィング量を決定する方法は、データパーティショニング（Ｄａｔａ Ｐａｒｔｉｔｉｏｎｉｎｇ）モードにおける符号化方法についても同様に適用することができる。
【００５６】
図１０は、データパティショニング（Ｄａｔａ  Ｐａｒｔｉｔｉｏｎｉｎｇ）モードにおけるのビットストリームを示している。データパーティショニング（Ｄａｔａ  Ｐａｒｔｉｔｉｏｎｉｎｇ）モードの符号化とは、図１０（ｄ）に示すような１つ以上のマクロブロックＭＢのマクロブロック（ＭＢ）情報（動きベクトルやテクスチャ（量子化ＤＣＴ係数））を
１．（ＭＢタイプ及び動きベクトル）
２．（テクスチャ）
とに統合して、図１０（ｃ）に示すように可変長符号化する方法である。上記１と２は、図１０（ｂ）に示すようにモーションマーカー（Ｍｏｔｉｏｎ  Ｍａｒｋｅｒ）を挿入し分割される。前記の通りスタッフィングビットは、マクロブロック（ＭＢ）タイプの位置に挿入される。ビデオパケットＶＰは、図１０（ａ）に示すように互いに再同期マーカー（Ｒｅｓｙｎｃ  Ｍａｒｋｅｒ）により区切られている。このようなデータパティショニング（Ｄａｔａ  Ｐａｒｔｉｔｉｏｎｉｎｇ）モードにおけるのビットストリームの構造においても同様に上述した方法を適用して図１０（ｂ）に示すＭＢスタッフィングの符号量が決定される。
【００５７】
尚、図１０（ａ）に示すように、パケットのヘッダには、再同期マーカー、マクロブロック番号、量子化スケール及びＨＥＣ（Header Extension Code）等が記述され、これに続いてマクロブロックデータが配置されている。
【００５８】
【発明の効果】
上述したように、この発明によれば、可変長符号化処理前にスタッフィング量が推定され、スタッフィングがなされてから可変長符号化処理がなされることで、回路を増やすことなく、また遅延も生じることなく、所定のビットストリームを出力することができる。したがって、ビットストリームの再構成のために、新たなメモリが必要となる問題、或いは、処理量が増加することにより遅延が生じ、リアルタイム性を損なう問題を解消することができる。
【図面の簡単な説明】
【図１】この発明の一実施例に係る映像符号化装置の構成を示すブロック図である。
【図２】図１に示した信号処理部１０の構成を示すブロック図である。
【図３】図１に示された発生符号量推定部における処理を示す機能ブロック図である。
【図４】図１に示したスタッフィング量算出部１７において、目標ビットレートＴbr、目標フレームレートＴfr及び信号処理部１０で処理された信号処理済のマクロブロック（ＭＢ）数Ｎmb(x)から目標発生符号量Ｔcode(x)を算出する過程を示すフローチャートである。
【図５】図１に示したスタッフィング量算出部１７において、図１に示された発生符号量カウント部１４でカウントされた可変長符号化済のマクロブロック（ＭＢ）の発生符号量Ｃ(x)、図４に示された処理で求められた目標発生符号量Ｔcode(x)、図３に示した処理で算出された推定発生符号量Ｅ(x)からスタッフィング量Ｓ(x)を求める過程を示すフローチャートである。
【図６】スタッフィングが挿入される場合におけるマクロブロック情報を符号化して図１に示される装置から出力されるビットストリームに変換する過程及びマクロブロックのデータを含むビットストリームの構造を示す説明図である。
【図７】スタッフィングが挿入されない場合におけるマクロブロック情報を符号化して図１に示される装置から出力されるビットストリームに変換する過程及びマクロブロックのデータを含むビットストリームの構造を示す説明図である。
【図８】ビデオオブジェクトプレーンの符号化順序を説明する平面図及び符号化済みマクロブロックと符号化マクロブロックとの関係を示す平面図である。
【図９】この発明の変形実施例に係るスタッフィング量を求める過程を示すフローチャートであって、図１に示したスタッフィング量算出部において、発生符号量カウント部１４でカウントされた可変長符号化済のマクロブロック（ＭＢ）の発生符号量Ｃ(x)、図４に示された処理と同様の処理で求められる符号化ビデオパケットの目標符号量Ｔcode(x)、図３に示した処理と同様の処理で算出された符号化ビデオパケットの推定符号量Ｅ(x)からビデオパケットに挿入されるスタッフィング量Ｓ(x)を求める過程を示すフローチャートである。
【図１０】この発明の変形実施例に係る図１に示されるシステムから出力されるデータパティショニングモードにおけるのビットストリームにスタッフィングが挿入されている場合のデータ構造を示す説明図である。
【符号の説明】
１０・・・信号処理部
１２・・・シンタックス生成部
１３・・・可変長符号化処理部
１４・・・発生符号量カウント部
１５・・・平均符号語長算出部
１６・・・発生符号量推定部
１７・・・スタッフィング量算出部
２１・・・量子化ＤＣＴ係数カウント部
２２・・・送信バッファ
【図１】
0004170555.tif 000004
【図２】
0004170555.tif 000005
【図３】
0004170555.tif 000006
【図４】
0004170555.tif 000007
【図５】
0004170555.tif 000008
【図６】
0004170555.tif 000009
【図７】
0004170555.tif 000010
【図８】
0004170555.tif 000011
【図９】
0004170555.tif 000012
【図１０】
0004170555.tif 000013