(57)【特許請求の範囲】
【請求項１】
ブロックに基づいて圧縮された圧縮ビデオ信号のビットストリームのスケーリング装置であって、
一のフレームにおいて、マクロブロック毎に求められた、前記圧縮されたビデオ信号の変換係数のビットの和ΣＭＢi（なお、ｉは、ｉ番目のブロックであることを表す。）の第１の累積的な和ΣΣＭＢi  における、当該フレームの最後の和である第２の累積的な和（ΣＭＢ  ｌａｓｔ）を求め、
当該フレームの変換係数の総ビット数の目標となる目標値（ＴＶAC）と、前記第２の累積的な和（ΣＭＢ  ｌａｓｔ）とから、スケーリング係数（ＴＶAC／（ΣＭＢ  ｌａｓｔ））を求め、
各マクロブロック毎に、前記第１の累積的な和ΣΣＭＢi  に前記スケーリング係数が乗算された、第３の累積的な和を、前記第１の累積的な和に置き換えて、メモリに格納するアナライザと、
該アナライザに応答する、
マクロブロック毎に、前記圧縮されたビデオ信号の変換係数のビットの第４の累積的な和（ΣＡＣＭＢｎ）を求め、
マクロブロック毎に、該第４の累積的な和（ΣＡＣＭＢｎ）と前記第３の累積的な和より、少なくともＥＯＢのビット数分小さい値（ＰＭＢｎ）とを比較し、
前記第４の累積的な和（ΣＡＣＭＢｎ）が、前記値（ＰＭＢｎ）を、超えた場合、当該マクロブロックの残りのビットを捨てるビットストリーム再組み立て手段と、
を有することを特徴とするスケーリング装置。
【請求項２】
前記圧縮ビデオ信号は、ＡＣ離散コサイン変換符号化により圧縮され、
前記アナライザは、前記圧縮ビデオ信号を印加する接点と、
前記接点に結合され、前記圧縮ビデオ信号の各ブロック毎に、該ブロックのビットの量を表す和ΣＭＢiを発生し、
更に、第１番目のブロックから前記ｉ番目のブロックまでの、前記和の累積に対応する第１の累積的な和ΣΣＭＢi  を発生し、
それぞれのブロックに基づき、ブロック毎の前記スケーリング係数が乗算された、前記圧縮されたビデオ信号の変換係数のビットの第３の累積的な和を発生するプロセッサと、
からなることを特徴とする請求項１記載の装置。
【請求項３】
該アナライザは、該各ブロックの前記第１の累積的な和ΣΣＭＢi  をスケーリングし、
前記ビットストリーム再組み立て手段は、データを減少させるために、それぞれのブロックの高周波ＡＣ離散コサイン変換係数を捨てる手段を有し、
捨てられたビットの量は、対応するスケールされている第３の累積的な和に従って、それぞれのブロックに対して決定されて、
前記第第３の累積的な和に対応している累積的な和を有する直線的にスケールされたビットストリームを生成する、
ことを特徴とする請求項２記載の装置。
【請求項４】
ＭＰＥＧ方式のＡＣ離散コサイン変換符号化ビデオ信号のビットストリーム内のビットを減少させる方法であって、
一のフレームにおいて、マクロブロック毎に求められた、前記圧縮されたビデオ信号の変換係数のビットの和ΣＭＢi（なお、ｉは、ｉ番目のブロックであることを表す。）の第１の累積的な和ΣΣＭＢiにおける、当該フレームの最後の和である第２の累積的な和（ΣＭＢ  ｌａｓｔ）を求める段階と、
当該フレームの変換係数の総ビット数の目標となる目標値（ＴＶAC）と、前記第２の累積的な和（ΣＭＢ  ｌａｓｔ）とから、スケーリング係数（ＴＶAC／（ΣＭＢ  ｌａｓｔ））を求める段階と、
各マクロブロック毎に、前記第１の累積的な和に前記スケーリング係数が乗算された、前記圧縮されたビデオ信号の変換係数のビットの第３の累積的な和を、前記第１の累積的な和に置き換えて、メモリに格納する段階と、
前記ＭＰＥＧ方式のＡＣ離散コサイン変換符号化ビデオ信号における画像上のマクロブロック毎に、前記圧縮されたビデオ信号の変換係数のビットの第４の累積的な和（ΣＡＣＭＢｎ）を求める段階と、
マクロブロック毎に、該第４の累積的な和（ΣＡＣＭＢｎ）と前記第３の累積的な和より、少なくともＥＯＢのビット数分小さい値（ＰＭＢｎ）とを比較する段階と、
前記第４の累積的な和（ΣＡＣＭＢｎ）が、前記値（ＰＭＢｎ）を、超えた場合、当該マクロブロックの残りのビットを捨てる段階とを有することを特徴とする方法。
【請求項５】
前記マクロブロックの残りのビットを捨てる段階は、画像の再生に重要でない符号化ビデオ信号における高周波成分の符号語を、それぞれのマクロブロックから、捨てる段階を有することを特徴とする請求項４記載の方法。
【請求項６】
前記第４の累積的な和を求める段階は、夫々のマクロブロックから該ＭＰＥＧ方式の符号化ビデオ信号のそれぞれの符号語を、それぞれのマクロブロックに基づいて選択し、選択された符号語から新しいビット量の累積的な和を形成する段階を有し、
前記マクロブロックの残りのビットを捨てる段階は、該新しいビットの累積的な和が、前記値（ＰＭＢｎ）を、超えたとき、夫々のマクロブロックの符号語の選択を終了する段階を有することを特徴とする請求項４記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は予め圧縮されたビデオ信号のビットストリームのデータ量を削減する装置に関する。
【０００２】
【従来の技術】
ＭＰＥＧ（動画像専門家グループ）方式のビデオ符号化規格は、ビデオ伝送及び蓄積の多数の応用のため提案されている。例えば、ビデオオンデマンド、及び、トラックディジタルＶＴＲのトリック再生のような数種の応用は、ある種のＭＰＥＧ方式のプロフィルで供給されたビットレートより小さいビットレートを有する圧縮された信号を用いることにより一層容易に実現される。別々の応用は僅かに異なる信号を要求するが、同一のスケーリング装置が元のビットレートを夫々の応用を処理するレートに低下させるため機能する。
【０００３】
ＭＰＥＧ方式の符号化規格は、現在、地上のＨＤＴＶ（高品位テレビジョン）、遠隔会議、衛星通信、ＤＢＳ（直接放送システム）、及びマルチメディアワークステーションを含む多数の応用に対し開発されている。ＭＰＥＧ２方式の圧縮されたビットストリームは、かなり高いデータレートの圧縮された高品位テレビジョンのビットストリームを提供する。この信号がかなり狭帯域のチャンネル上で利用されるならば、そのデータをより低いビットレートに低下又はスケーリングする必要がある。
【０００４】
ビデオファイルサーバ装置がＭＰＥＧ方式の符号化ビットストリームのライブラリを格納する記憶装置を有するビデオオンデマンドシステムを想定する。ライブラリに格納されたビットストリームは、最初、高品位（例えば、スタジオ品質）で符号化される。多数のクライアントは、ある特定の時刻にそのビデオプログラムの中からプログラムを取り出すことを要求する。ユーザの数と、ユーザに配給されるビデオの品質は、出力するチャンネルの容量によって制限される。例えば、ケーブルバス又はＡＴＭ（非同期転送モード）トランクでもよい上記出力チャンネルは、サービスを受けるユーザの間で共有される必要がある。別個のユーザは別個のビデオ品質レベルを要求する場合があり、夫々のプログラムの品質は、各ユーザに割り当てられた全チャンネル容量の小部分に基づいている。
【０００５】
複数のユーザを同時に受け入れるため、ビデオファイルサーバ装置は、チャンネルを介して夫々のユーザに配給される前に、記憶されたビットストリームを低下したビットレートにスケーリングする。スケーリングして得られたビットストリームの品質は、元のソース材料を低下したレートで符号化することにより得られる仮想的なビットストリームの品質と比較して著しく劣っていてはならない。夫々のユーザではなく、ファイルサーバ装置だけにスケーリング装置を具備すればよいので、複雑さとコストは重大な要因ではない。
【０００６】
【発明が解決しようとする課題】
トラックディジタルＶＴＲ装置のトリック再生の場合、ビデオはビデオテーブレコーダでサイドトラックを作成するようスケーリングされる。上記サイドトラックには、ＶＴＲのトリックモード（例えば、別々の速度での高速早送り及び巻き戻し走査）を十分に容易にさせ得る非常に粗い品質のビデオが含まれている。ＶＴＲは大量生産される大量消費者品目であるので、上記装置に含まれているスケーリング装置の複雑さ及びコストは重大な関心事である。
【０００７】
スケーリングの別の応用は、ディジタルＶＴＲ上の拡張された再生記録である。この応用の場合、ビデオはある放送品質（標準品位ビデオに対し〜６Ｍｂｐｓ、高品位ビデオに対し〜２４Ｍｂｐｓ）でユーザの家庭に放送される。ビデオテープレコーダのスケーリング特性を用いて、ユーザは、現在のＶＨＳ方式レコーダの拡張再生ＥＰモードに類似する低下したレートでビデオを記録し、これにより、より多量のビデオプログラム材料をより低品質でテープに記録する。
【０００８】
スケーリングの際、元の信号の中のより高品位の情報ができるだけ活用されるべきであり、より低いビットレートで得られた新しい信号の画質は、できるだけ高品位であり、又は、元のソースを低下したレートで符号化することにより作成された信号の画質にできる限り近づける必要がある。所定のデータレートに対し、元のソースは最適な方法で符号化されるものと仮定する。
【０００９】
【課題を解決するための手段】
本発明のスケーリング方法及び装置は、高周波ＡＣ離散コサイン変換（ＤＣＴ）係数を除去し、又は、量子化されたデータをより粗い量子化係数で再量子化することを可能にさせるパーシャル復号化ハードウェアを有する。スケーリングは、ブロック当たりの圧縮されたデータの量を線形にスケーリングする方法でブロック（マクロブロック）に基づいて行われる。アナライザはビデオフレームに亘る累積的な部分的に圧縮解除されたデータを発生し、スケーリングされた信号のプロフィルが元のデータのプロフィルと実質的に適合することを保証するためスケーリングが行われる。
【００１０】
【発明の実施の形態】
図１は先に符号化されたビデオ信号中のデータ量を減少させる従来の圧縮ビデオ信号スケーリング装置を示す図である。例示した装置では、回路の全般的な動作を示すため主要な機能素子だけが図示されている。例えば、圧縮ビデオ信号には種々の形のデータが含まれ、それらの形の中の一部だけが量子化される。他の形は、再量子化又はスケーリング装置を迂回させられ、マルチプレクサ１４においてスケーリングされたデータともう一度多重化される。マルチプレクサ１４が上記機能を実行するため意味のある制御回路を有する必要があることは、圧縮回路の当業者にとって明らかである。しかし、圧縮回路の当業者はマルチプレクサ１４の多重化機能を容易に認めることができるので、ここで説明は行わない。
【００１１】
図１において、先に圧縮又は符号化されスケーリングを受けるべきビデオ信号は、ブロック符号化された信号であると想定する。夫々の画像は複数のブロック又はマクロブロックに分割され、ブロック毎又はマクロブロック毎に基づいて圧縮され、その結果、信号が少なくとも部分的に符号化されたブロック又はマクロブロックのストリームとして得られる。夫々のマクロブロックのデータの少なく０も一部分は、量子化され、可変長で符号化される。上記の圧縮信号の例は、ＭＰＥＧ１方式及びＭＰＥＧ２方式のビデオ信号である。符号化信号は、可変長復号化信号を発生する可変長復号化器１０に供給される。圧縮信号に含まれる動きベクトル（及び、他の量子化されていない符号語）は、次の回路（逆量子化器（Ｑ-1）１１；量子化器（Ｑ）１２；可変長符号化器（ＶＬＣ）１３）を迂回して示されているが、上記次の回路がスケーリング装置によって変えられるべきではない信号成分に対し反応しないよう条件付けることができる場合、実際上、動きベクトルは上記次の回路を通過させてもよい。
【００１２】
可変長復号化の後、復号化された符号語は逆量子化器１１に結合され、圧縮処理で量子化された信号成分が逆量子化される。逆量子化された成分は、レート制御器１６の制御下の量子化器１２において再度量子化される。レート制御器１６は所望の低下したレートと適合してスケーリングされたビットストリームを有する符号化信号を生成するよう調整される。かかる例の場合、スケーリングは、元の圧縮器よりも粗い夫々の符号語の量子化が得られる量子化器１２に量子化値を供給するレート制御器１６によって行われる。再度量子化された符号語は、可変長符号化器（ＶＬＣ）１３において可変長符号化され、マルチプレクサ１４において再量子化を受けなかった信号成分と再度フォーマット化される。再度フォーマット化された信号は、一般的にバースト的な信号を一定レートの信号に変換するレートバッファ１５に供給される。レートバッファ１５には、量子化器１２が一定レートの信号を発生するよう条件付けるためレートバッファ１５を制御する制御信号を供給する占有モニターがある。上記回路のより詳細な説明は、モリソン(D.G. Morrison) 等による論文“符号化形式のままの圧縮ビデオのビットレートの縮小(REDUCTION OF THE BIT RATE OF COMPRESSED VIDEO WHILE IN ITS CODED FORM) ”、ＰＶ’９４、Ｄ１７．３に記載されている。
【００１３】
ＭＰＥＧ方式の圧縮ビデオの場合、量子化は、量子化値のマトリックスと量子化係数を必要とする。量子化値のマトリックスは、心理視覚的なパラメータに従って定められる。量子化値のマトリックスは、画素のブロックを表わす係数のブロック内の各離散コサイン変換（ＤＣＴ）の夫々の値を有し、マトリックスは、通常、フレーム内の全てのマクロブロックを量子化するため共通に使用される。一方、量子化係数は、マクロブロックに固有であり、即ち、各量子化係数は、その量子化係数が割り当てられたマクロブロックだけに適合する。量子化係数は、マトリックスが夫々のマクロブロックを量子化するため使用される前にマリックス内の全ての量子化値を重み付けするため使用される。以下の説明で、量子化パラメータの発生とは、一般的に、上記量子化係数の発生を意味する。
【００１４】
図１に示された装置は、一般的に、可変長符号化の可変性に起因して画像全体に均等なビットスケーリングを提供し得ない。換言すると、夫々のマクロブロックのビットスケーリングは、かなりの割合で異なる場合がある。図２及び４のビットスケーリング装置は、マクロブロック間で実質的に均等なビットスケーリングが得られる。
【００１５】
次いで、図２及び６を参照して説明を行う。図２において、スケーリングされた符号化ビデオ信号は可変長復号化パーサー２０に供給される。パーサー２０は、可変長符号化されていない符号語に対し透過性であり、可変長符号化されていない符号語をそのまま通過させる。例えば、ＭＰＥＧ方式の信号中の可変長符号化された符号語は確定した境界をもたない。パーサー２０は夫々の符号語の境界を定め、タイプを用いて符号語を識別する（ステップ６０２）。符号語は実際には復号化されない。パーサーで解析された可変長符号化されていない符号語は識別子が付けられ、遅延メモリ２１に格納される（ステップ６０３）。
【００１６】
解析された可変長符号化されていない符号語はアナライザ２２に供給される。アナライザ２２は、上記例の場合、夫々の圧縮フレーム（又は、フィールド又は画像等）全体のマクロブロックに対しＡＣ離散コサイン変換（ＤＣＴ）係数のプロフィルを生成する。即ち、アナライザ２２は、マクロブロックに基づいてＡＣ離散コサイン変換係数のビットの現在の和を発生する（ステップ６０５）。アナライザ２２は、マクロブロックの番号で識別された夫々の和をメモリ２４に格納する（ステップ６０４）。マクロブロック１（ＭＢ１）に対し、和は、ＭＢ１内のＡＣ離散コサイン変換に対応するＭＢ１内の全ビットの和（ΣＭＢ１）である。マクロブロックＭＢ２に対し、和は、和（ΣＭＢ１）と、ＭＢ２内のＡＣ離散コサイン変換に対応するＭＢ２内の全ビットの和（ΣＭＢ２）の加算である。マクロブロックＭＢ３に対し、和は（ΣＭＢ１）＋（ΣＭＢ２）＋（ΣＭＢ３）であり、以下同様である。図３には、マクロブロック番号と共に、上記和を縦座標とするグラフ（プロフィルと表わされている）が示されている。
【００１７】
上記ＡＣ離散コサイン変換係数に加えて、アナライザ２２は夫々のフレームに対し全符号化ビット（ＴＢ）を計数する（ステップ６０１）。夫々のフレームに対する全マクロブロックが分析された後（ステップ６０６）、フレーム当たりのＡＣ離散コサイン変換の目標値ＴＶACが和（ＴＢ）及び（ΣＭＢ  ｌａｓｔ）を用いて以下の関係：
ＴＶAC＝（ΣＭＢ  ｌａｓｔ）−％×（ＴＢ）−ｅｘｃｅｓｓ
に従って計算される（ステップ６０８）。式中、（ΣＭＢ  ｌａｓｔ）は、ＡＣの最後の和であり、フレーム内のＡＣ離散コサイン変換ビットの全数に対応し、％はビットストリームが縮小されるべき百分率であり、「ｅｘｃｅｓｓ」は前のフレームが所望の目標から逸れた量を表わしている。
【００１８】
ＡＣ離散コサイン変換ビットのプロフィルは、係数ＴＶAC／（ΣＭＢ  ｌａｓｔ）によってスケーリングされる（ステップ６１０）。スケーリングは、図３に示された線形にスケーリングされたプロフィルを得るため夫々の和（ΣＭＢi ）の各々を係数ＴＶAC／（ΣＭＢ  ｌａｓｔ）で乗算することにより行われる。夫々の和（ΣＭＢi ）はメモリ２４でスケーリングされた和と置き換えられる。
【００１９】
プロフィルがスケーリングされた後、夫々の解析された可変長符号化されていない符号語は、一度にマクロブロックでメモリ２１から出し入れされる。ＡＣ離散コサイン変換されていない符号語はバッファ２３に送られ（ステップ６１２）、バッファ２３は本質的に出力を再度組み立てる（ステップ６１８）。アナライザ２２は符号語をバッファ２３に送るようメモリ２１を条件付けし、マクロブロック当たり制限された量の符号語を受け入れるようバッファ２３を条件付ける。ＡＣ離散コサイン変換符号語がアクセスされるとき、夫々のＡＣ離散コサイン変換符号語のビットは加算され（ステップ６１４）、夫々のマクロブロックの現在の和が、ブロックの終了ＥＯＢの符号語に対応するビットの数よりも小さいマクロブロックのスケーリングされた和と連続的に比較される（ステップ６１６）。夫々のＡＣ離散コサイン変換符号語は、マクロブロックのビットの現在の和がＥＯＢbit よりも小さい対応するスケーリングされた和以上になるまで、バッファ２３によって受けられる。上記条件が成立したとき、ブロック終了ＥＯＢコードがビットストリームに挿入され（ステップ６２０）、夫々のマクロブロックの残りの符号語は捨てられる（ステップ６２２）。この処理は、夫々のフレームの全符号化データがスケーリングされたビットストリームに再度組み立てられるまで続く。
【００２０】
ＭＰＥＧマクロブロックは、例えば、６ブロックのデータを有し、全てのブロックが対応するＡＣ離散コサイン変換の符号語を有する場合があることに注意する必要がある。メモリ２１からのデータを処理する場合、夫々のマクロブロック内の各ブロックからの対応する符号語は、マクロブロック内の各ブロックに等しくビット空間が与えられるよう順次的ではなく並列的にアクセスされる必要がある。ｉが係数（１−６４）を表わし、ｋがブロック（１−６）を表わすとき、マクロブロック内の夫々のブロックがＡＣ離散コサイン変換符号語ＡＣikを有すると仮定すると、符号語は、ＡＣ11、ＡＣ12、ＡＣ13、ＡＣ14、ＡＣ15、ＡＣ16、ＡＣ21、ＡＣ22、ＡＣ23、ＡＣ24、ＡＣ25、ＡＣ26、ＡＣ31、ＡＣ32、ＡＣ33、ＡＣ34、ＡＣ35、ＡＣ36、ＡＣ41等の順序でアクセスされる必要がある。このため、バッファ２３は後で直列的に読まれる夫々のブロックを並列に形成し得るようブロックに基づいて分割される。
【００２１】
メモリ２３に供給されるビットの数が線形にスケーリングされたプロファイルによって表わされるＡＣ離散コサイン変換のビットと等しくなるまで、ビットはメモリ２１から読まれるので、夫々のマクロブロックの各々は実質的に線形にビットスケーリングされる。
図４には、再量子化によりビットスケーリングを行う本発明の第２の実施例が示されている。図１の装置とは異なり、図４の装置は、夫々のマクロブロックの実質的に線形なビットスケーリングを行う。図４において、符号化ビデオ信号は、可変長符号化された上記信号成分を復号化する可変長復号化器３８に供給される。復号化信号は、（分析が行われるまで復号化信号を記憶する）遅延メモリ３９と、アナライザ４０に供給される。メモリ３９の出力は逆量子化器４１に結合される。量子化されていない信号成分は、メモリ３９からマルチプレクサ４４への矢印で表わされているように逆量子化器４１を迂回させてもよく、或いは、逆量子化器と次の回路が量子化されていない信号成分に反応しないよう条件付けられているならば、量子化されていない信号成分は逆量子化器と次の回路を通過させてもよいことに注意が必要である。逆量子化器４１は、遅延メモリ３９の後よりはむしろ遅延メモリ３９の前に置いてもよい。
【００２２】
逆量子化器４１は、量子化された上記信号成分を逆量子化し、逆量子化された信号を量子化器４２に供給する。量子化器４２は、ビットストリームのスケーリングを効率化すべく、通例的に量子化された信号成分をより粗く量子化するようアナライザ４０によって条件付けられる。再量子化された信号は、信号を可変長符号化しマルチプレクサ４４に供給する可変長符号化器４３に供給され、マルチプレクサ４４は、元のプロトコル、或いは、所望があれば異なるプロトコルに従って信号を再フォーマット化する。再フォーマット化された信号は、レートバッファ４５に供給される。
【００２３】
図４の本発明の一実施例の装置によれば、（点線で図示された）レート制御器４７が再量子化を制御するため利用される。この実施例において、アナライザは、フレームに基づいて制御パラメータをレート制御器に供給し、次いで、レート制御器は再量子化処理を制御する。レート制御器は、夫々のマクロブロックの量子化係数を発生させるためフレーム目標のビットサイズを利用する形であると仮定する。上記レート制御器の場合、フレーム目標のビットサイズは、レート制御器自体で計算されるか、或いは、外部ソースから供給される。この形のレート制御器の一例は、トリスタン  サバティエ(Tristan Savatier)による発明の名称が「ビデオデータ量子化制御装置(APPARATUS FOR VIDEO DATA QUANTIZATION CONTROL) 」である米国特許第5,144,424 号明細書に記載されている。上記特許の制御器は、フレームｉの夫々の量子化係数を計算する際利用されるパラメータＴＳｉｚｅ＿ｉ（インデックスｉはＩ、Ｂ又はＰフレームを表わす）を発生する。上記目的のため、かかるレート制御器がアナライザ４０から目標パラメータＴＳｉｚｅ＿ｉを受けるため変更された場合を想定する。
【００２４】
本実施例において、アナライザ４０は、夫々の符号化マクロブロックから量子化係数ＱMBi を取得し、可変長復号化器（ＶＬＤ）３８によって与えられたデータストリーム内の夫々のマクロブロックの夫々のビットＭＢi を計数する。これにより、ビットの和のマクロブロックに関係した量子化係数倍の積ＱMBi （ΣＭＢi ）が形成される。夫々のフレームの全部の前のマクロブロックに対し作成された積の和ΣＱMBi （ΣＭＢi ）i は、各マクロブロックに対し形成され、マクロブロックの番号によって識別されたメモリ４６に格納され；ここで、ΣＱMBi （ΣＭＢi ）1 はΣＱMB1 （ΣＭＢ1 ）と等しく、ΣＱMBi （ΣＭＢi ）2 はΣＱMB1 （ΣＭＢ1 ）＋ΣＱMB2 （ΣＭＢ2 ）と等しく、以下同様である。マクロブロックの番号に対しプロットされた上記和は、図３に示された例と類似した正規化されたプロフィルを形成する。しかし、レート制御器は全部のビットに基づいて動作するので、上記プロフィルはＡＣ離散コサイン変換ビットだけではなく全部のビットに関係することに注意する必要がある。得られた目標値が量子化されていない信号成分に対し適当に増大される場合、ＡＣ離散コサイン変換のビットのプロフィルを使用してもよい。最終的な和ΣＱMBi （ΣＭＢi ）lastは、現在のフレームの再量子化のためのレート制御器４７に供給される目標値ＴＳｉｚｅ＿ｉを発生するため係数ＳＦによってスケーリングされる。可変長復号化された信号は、遅延メモリ３９からアクセスされ、逆量子化され、計算されたＴＳｉｚｅ＿ｉの値を利用するレート制御器４７の制御下で量子化器４３によって再量子化される。上記プロフィルは正規化された曲線であるが、レート制御器４７は正規化されたビットではなく、多量のビットで動作する。従って、スケーリング係数ＳＦは、ビットの単位で目標を得るため１／ＱMBの単位である。スケーリング係数の一例は、以下の式：
【００２５】
【数２】
0004454049.tif 000002
【００２６】
によって計算され、式中、（ΣΣＭＢi ）lastは夫々のマクロブロックの全ビットに対応し、ｅｘｃｅｓｓは前のフレームに対し目標の値を超えたビットの量を表わしている。他の使用できるスケール係数は、比（１−％）／ＱMBiavgであり、ＱMBiavgはフレーム内の元の全量子化係数の平均である。
図４に示した他の実施例は図７及び８のフローチャートを参照して説明される。この実施例において、アナライザ４０はマクロブロックに基づいて量子化係数を量子化器４２に供給する。レート制御器４７はこの実施例では使用されない。レート制御器以外の他の全ての素子は上記の如く動作する。
【００２７】
図７を参照するに、符号化ビデオ信号は可変長復号化され（ステップ７０２）、復号化信号はメモリ３９に格納され、アナライザ４０に供給される。夫々のマクロブロックのビットは加算ΣＭＢi され（ステップ７０６）、夫々のマクロブロックに関係した元の量子化係数ＱMBi により乗算される（ステップ７０７）。積ＱMBi （ΣＭＢi ）は累積的に加算され（ステップ７０８）、夫々のマクロブロックで識別されたメモリ４６に格納される（ステップ７０９）。累算された和Σ（ＱMBi （ΣＭＢi ））i は、縦座標としてマクロブロック番号と共に図示したとき、図３に示したプロフィルと類似したプロフィルを形成する。最後のマクロブロックが処理されたとき（ステップ７１０）、プロフィルは上記の如くスケーリング係数ＳＦによってスケーリングされる（ステップ７１２）。かかるスケーリングは、積の累積的和の各々Σ（ＱMBi （ΣＭＢi ））i をスケーリング係数ＳＦにより乗算し、乗算結果を夫々のマクロブロックにより識別されたメモリ４６に格納することによって実行される。メモリ３９の復号化ビデオ信号は、次いで、逆量子化され（ステップ７１４）、記録された信号がスケーリングされたプロフィルと適合するよう再量子化される（ステップ７１７）。この再量子化処理は図８に示されている。
【００２８】
図８において、マクロブロックｉに対し新しい量子化係数ＱMBiEが評価される（ステップ８００）。この評価値は多数の方法によって得られる。評価値を得る一つの方法は、ＱMBi がマクロブロックｉの元の量子化係数を表わす場合、ＱMBiE＝（ＱMBi ）／（１−％）を形成することである。他の方法は、ＱMBi-1 が 前のマクロブロックｉ−１の量子化係数を表わす場合、単に量子化係数ＱMBiE＝ＱMBi-1 を使用することである。量子化係数ＱMBiEを評価する第３の方法は、最終的に最も直前のような形のフレームの対応するマクロブロックに対し計算された最終的な量子化係数ＱMBiFを使用することである。
【００２９】
マクロブロックｉの量子化係数の評価値の取得後、量子化されていないマクロブロックはメモリ３９からアクセスされる（ステップ８０１）。マクロブロックＭＢi は評価された量子化係数を用いて量子化され（ステップ８０２）、可変長符号化される（ステップ８０３）。マクロブロックに対する新しい全ビットΣＭＢinは加算され（ステップ８０４）、再量子化されたマクロブロックの符合語は再組立される（ステップ８０５）。ビットの和ΣＭＢinは、再量子化され記録されたビットストリームの現在のマクロブロックのプロフィル値Σ（ΣＭＢin）i を形成するため先に量子化されたマクロブロックのビットの和と加算される（ステップ８０６）。上記プロフィルはビットからなり、スケーリングされたプロフィルはビットに関し表わされている点に注意が必要である。
【００３０】
新しいプロフィル値Σ（ΣＭＢin）i と元のスケーリングされたプロフィル値ＳＦ（Σ（ＱMBi （ΣＭＢi ））i ）の差は、ビット誤差の値ΔＥ：
ΔＥ＝ＳＦ（Σ（ＱMBi （ΣＭＢi ））i ）−Σ（ΣＭＢin）i 
を作成するため計算される（ステップ８０７）。ビット誤差ΔＥは閾値ΔＥT と比較される（ステップ８０８）。誤差が閾値よりも大きい場合、新しい量子化係数ＱMBinewが計算される（ステップ８０９）。一例として、以下の関係：
ＱMBinew＝ＱMBi ＋ｓｇｎ（ΔＥ）
に従って計算され、式中、ＱMBi は、ｉ番目のマクロブロックに対し使用された最後の量子化係数に対応し、最初のパスでＱMBiEと等しく、ｓｇｎ（ΔＥ）は、ΔＥが正及び負である場合に夫々±１と一致する。マクロブロックｉはもう一度アクセスされ（ステップ８０１）、新しい量子化係数を使用して再量子化される。ステップ８０１から８０９は、誤差ΔＥが閾値より小さくなるまで繰り返される。
【００３１】
ステップ８０８において誤差が閾値より小さい場合、フレーム内の全てのマクロブロックが再量子化されたかどうかを判定するためチェックされる（ステップ８１０）。全部は再量子化されていない場合、インデックスｉが１ずつ増加され（ステップ８１４）、マクロブロックｉ＋１の再量子化処理が開始される（ステップ８００）。全部が再量子化された場合、装置の処理はステップ７００に飛び、次のフレームの処理が開始される。
【００３２】
上記処理は上記プロフィルを正確に追従し、ＱMBi の変化を殆ど許容しない傾向がある。量子化係数は、１フレームの間非常に均一である。特定のマクロブロックの引き続く処理パスの各々に対し、上記マクロブロックの前の処理パスの間に再組立されたデータ（ステップ８０５）は捨てられる。最終的なパスの再組立されたデータだけが保持される。
【００３３】
図８の破線は、許容し得る性能が得られ、計算的な激しさはより少ない他の（好ましい）実施例を説明するため記載されている。かかる他の実施例において、ＱMBi はより変化し易い傾向があるので、より一層均一な本来的な画質が得られる。簡単に言うと、上記他の実施例は１パスの処理であり、夫々のマクロブロックは、夫々の前のマクロブロックに対し計算された誤差ΔＥを使用して定められた夫々のＱMBi で量子化される。
【００３４】
上記更なる実施例によれば、ステップ８００において評価された公称量子化係数は、フレーム内で処理された最初のマクロブロックだけの間で生成される。例示的な公称量子化係数ＱN は関係：
ＱN ＝ＱNL＋ｇ（ΔＥ）L 
に従って計算される。ＱNLは前のフレームで使用された公称量子化係数であり、（ΔＥ）L は前のフレームの最後のマクロブロックの誤差であり、ｇは利得係数である。公称利得係数ｇは、
【００３５】
【数３】
0004454049.tif 000003
【００３６】
と表わされるとき、３１／Ｂppである。処理されるべき一番最初のフレームに対し、値ＱN は中間レンジの量子化係数と等しくなるよう任意に選択することができる。各フレームの最初のマクロブロックの公称量子化係数を選択する別の方法は、夫々の前のフレームの間に生成された新しい量子化係数の全ての平均を計算することである。
【００３７】
公称量子化係数ＱN が計算された後、マクロブロックＭＢ1 はメモリ３９からアクセスされ（ステップ８０１）、ＱN を使用して量子化される（ステップ８０２）。ステップ８０３から８０７は、上記の如く実行される。しかし、かかる実施例の場合、ステップ８０８は削除され、新しいＱMBNew がステップ８０７で計算された誤差の値とは無関係に計算される（ステップ８０９）。新しい量子化係数は、関数：
ＱMBNew ＝（ＱMBNew-1 ＋ｇ（ΔＥ））Ｋ
に従って計算され、式中、ＱMBNew-1 は前のマクロブロックに対し計算されたＱMBNew （最初のマクロブロックの場合、ＱN ）の値であり、Ｋは、量子化誤差に対する本来的な許容量を反映する通常〔０．５，２．０〕の範囲にあるスケーリング係数であり、マクロブロック内の符号化から得られる。
【００３８】
ＱMBNew の値が計算された後、フレームの最後のマクロブロックが処理されたかどうかを判定するチェックが行なわれる（ステップ８１０）。最後のマクロブロックは処理されていない場合、マクロブロックのインデックスｉは１ずつ増加され（ステップ８１４）、次のマクロブロックがメモリ３９からアクセスされ（ステップ８０１）、計算された値ＱMBNew を用いて量子化される。ステップ８０３から８１０が行なわれ、次のマクロブロックが処理され、以下同様に続く。かかる実施例をもう一度よく見ると、元のプロフィルが作成された後（ステップ７００から７１４）、量子化は単一パスの処理であり、ステップ８０９で各マクロブロックｉに関して定められた訂正された量子化係数ＱMBi は次のマクロブロックｉ＋１を量子化するため使用される。
【００３９】
図５は、ビットスケーリングを実行するためかなりのハードウェアを必要とする更なるビットスケーリング装置を示す図である。このビットスケーリング装置の場合、符号化ビデオ信号は圧縮解除器５０で完全に圧縮が解除される。しかし、夫々のマクロブロックの動きベクトルはメモリ５２に保存される。圧縮解除されたビデオ信号は、ビデオ信号を再圧縮する圧縮器５１に供給される。圧縮器５１は元の圧縮された信号から得られた動きベクトルを利用するので、圧縮器５１は動きベクトル計算装置を有する必要はない。圧縮器５１は、所望のビットレートで圧縮されたビットストリームを発生させるようプログラムされる。ビットプロフィルは、目標の値を計算するため作成させ、圧縮器５１内のレート制御器に供給される。
【図面の簡単な説明】
【図１】先行技術のスケーリング装置のブロック図である。
【図２】本発明の一実施例のスケーリング装置のブロック図である。
【図３】元のデータとスケーリングされた圧縮データを表わす累積的な部分的に圧縮解除されたデータのプロフィルの一例を示す図である。
【図４】本発明の他の実施例のスケーリング装置のブロック図である。
【図５】本発明の他の実施例のスケーリング装置のブロック図である。
【図６】図２に示した本発明の一実施例のスケーリング装置の動作方法のフローチャートである。
【図７】図４に示した本発明の他の実施例のスケーリング装置の動作方法を理解するためのフローチャートである。
【図８】図４に示した本発明の他の実施例のスケーリング装置の動作方法を理解するためのフローチャートである。
【符号の説明】
１０，３８    可変長復号化器
１１，４１    逆量子化器
１２，４２    量子化器
１３，４３    可変長符号化器
１４，４４    マルチプレクサ
１５，４５    レートバッファ
１６，４７    レート制御器
２０    可変長復号化パーサー
２１，３９    遅延メモリ
２２，４０    アナライザ
２３，４５    バッファ
２４，４６    メモリ
５０    圧縮解除器
５１    圧縮器
５２    動きベクトルメモリ
【図１】
0004454049.tif 000004
【図２】
0004454049.tif 000005
【図３】
0004454049.tif 000006
【図４】
0004454049.tif 000007
【図５】
0004454049.tif 000008
【図６】
0004454049.tif 000009
【図７】
0004454049.tif 000010
【図８】
0004454049.tif 000011