(57)【特許請求の範囲】
【請求項１】
画像シーケンスの各フレームを符号化する、ビットを割り当てる方法であり、前記画像シーケンスの各フレームが少なくとも１つのオブジェクトを有し、
当該方法が、
（ａ）前記フレームに対して、目標フレームビットレートを決定するステップと、
（ｂ）少なくとも１つのオブジェクトに、前記目標フレームビットレートを割り当てる割り当てステップと、
を具備し、
前記割り当てステップ（ｂ）が、前記オブジェクトに対する目標オブジェクトビットレートに従い、前記目標フレームビットレートを割り当てるステップを具備し、
少なくとも１つのオブジェクトに対する前記目標オブジェクトビットレートが、前記オブジェクトの平均絶対差（Ｍａｄ）に従い、次の式
【数１】
0004187405.tif 000013
に従って選択される、当該方法。
ここで、Ｍａｄiは、オブジェクトｉの平均絶対差（Ｍａｄ）、ｎは、フレーム内の前記オブジェクト数、Ｔframeは、前記目標フレームビットレート、Ｖiは、オブジェクトｉの前記目標オブジェクトビットレートを表す。
【請求項２】
前記目標オブジェクトビットレートが、バッファ満杯度測定に従い調整される請求項１に記載の方法。
【請求項３】
前記目標フレームビットレートＴframeが、次の式、
【数２】
0004187405.tif 000014
に従って導出される請求項１に記載の方法。
ここで、Ｒは、画像シーケンスに対する剰余ビット数、Ｎｆは、画像シーケンス内の剰余フレーム数、Ｔprevious frameは、前のフレームの符号化に使われるビット数、past＿percentは定数である。
【請求項４】
前記目標オブジェクトビットレートが、オブジェクトに関するシンタックス情報、動き情報、形状情報を符号化するため、割り当てられる請求項１に記載の方法。
【請求項５】
（ｃ）前記目標オブジェクトビットレートに従い、前記少なくとも１つのオブジェクトに対して量子化器目盛を生成するステップ、
を更に具備する請求項２に記載の方法。
【請求項６】
画像シーケンスの各フレームを符号化する装置であって、前記画像シーケンスの各フレームが、少なくとも１つのオブジェクトを有し、
現在のフレームの予測画像を生成する動き補償器と、
現在のフレームと前記予測画像間の差信号に変換を加える変換モジュールであって、前記変換により複数の係数が生成されるモジュールと、
前記複数の係数を、少なくとも１つの量子化器目盛で量子化する量子化器と、
少なくとも１つのオブジェクトに対する目標オブジェクトビットレートに応答して、現在のフレームに対して、前記量子化器目盛を選択的に調整するとともに、目標オブジェクトビットレートに従い、少なくとも１つのオブジェクトに目標フレームビットレートを割り当てるコントローラと、
を具備し、
少なくとも１つのオブジェクトに対する前記目標オブジェクトビットレートが、前記オブジェクトの平均絶対差（Ｍａｄ）に従い、次の式
【数３】
0004187405.tif 000015
に従って選択される装置。
ここで、Ｍａｄiは、オブジェクトｉの平均絶対差（Ｍａｄ）、ｎは、フレーム内の前記オブジェクト数、Ｔframeは、前記目標フレームビットレート、Ｖiは、オブジェクトｉの前記目標オブジェクトビットレートを表す。
【発明の詳細な説明】
【０００１】
本出願は、米国仮出願第６０／０５２，１３４号（１９９７年７月１０日に出願）の利益を主張するものであり、その内容は本明細書に援用されている。
【０００２】
本発明は、動画の符号化を最適化する装置及びそれに付随する方法に関する。より詳細には、本発明は、符号化レートを最適化する一方、動画の全体的質を維持するため、フレーム内の各領域、又は「オブジェクト」用の量子化器目盛を適応可能に調整する方法及び装置に関する。
【０００３】
発明の背景技術
動画専門家グループ（ＭＰＥＧ）は、符号化復号化計画の基準を確立するために、ＩＳＯ／ＩＥＣ国際基準１１１７２、及び１３８１８（一般に、それぞれＭＰＥＧ−１フォーマット、ＭＰＥＧ−２フォーマットと言う）を作成した。これらのＭＰＥＧ基準には、ＭＰＥＧ準拠ビットストリームを生成するための、一般的な符号化の方法及びシンタックスが特定されているが、複数の異なるアプリケーション又はサービス、例えばデスクトップビデオ出版、ビデオ会議、ディジタル記憶媒体、テレビ放送等を収容可能とするように多くの変形も可能である。
【０００４】
レート制御の分野において、ＭＰＥＧは、符号器のビットレートの制御に関し、特定の方法を何ら定義していない。よって、復号器入力バッファがオーバフロー又はアンダフローを起こさないように、ビットレートを制御するレート制御プロセスを考え出すことが、符号器設計者の課題である。
【０００５】
現在採用されている１つのビットレート制御法は、入力ビデオ画像の歪みに影響を与える量子化プロセスの変更である。量子化器目盛（刻み幅）を変更することにより、ビットレートを変更、制御することができる。
【０００６】
量子化器目盛の変更は、符号器のレート制御を実施するには有効な方法である。しかし、劣悪なレート制御プロセスの場合、実際にはビデオ画像の視覚的質が悪化してしまうことが判明している。即ち、効率的に量子化目盛を変更できない結果、オーバフロー、アンダフロー状態を避けるため、映像の終わり方向に量子化器目盛を大幅に変更する必要がある。量子化器目盛の変更は、画質、圧縮効率の両方に影響を与えるため、レート制御プロセスにおいて、画質を犠牲とすることなしにビットレートを制御することが重要である。
【０００７】
現行のＭＰＥＧ符号化計画（例えば、様々なＭＰＥＧテストモデル）では、同形態の映像が、全て映像グループ内で同一の複雑性を有することを前提として、各フレーム用量子化器目盛が選ばれる。しかし、この判断基準で選ばれる量子化器目盛では、各映像の複雑性が経時的に変化することから、最適符号化性能を得ることはできない。
【０００８】
従って、フレーム内の各領域又は「オブジェクト」に対して、量子化器目盛を適応可能に調整する装置及び方法の技術においては、符号化レートを最適化する一方、動画の全体的質を維持する必要がある。
【０００９】
発明の概要
本発明の実施形態は、符号化レートを最適化する一方、ビデオ画像の全体的質を維持するために、各フレーム内の各領域又は「オブジェクト」に対して、量子化器目盛を選ぶ装置及びその方法である。具体的には、一連の全映像に対して、均一な視覚的質を維持する一方、映像の目標ビットレートが達成されるように各フレーム（映像）内の各オブジェクトに対して、量子化器目盛が選ばれる。
【００１０】
本発明の教示内容は、添付の図と共に次に記載する詳細な説明を考察することにより容易に理解できる。
【００１１】
理解を容易にするために、各図共通の同一要素において、可能な場合は同一の符号を付してある。
【００１２】
実施形態の詳細な説明
図１は、本発明の装置１００を示すブロック図である。本装置は、符号化レートを制御する一方、ビデオ画像の全体的質を維持するために、各フレーム内の各「オブジェクト」に対して、量子化器目盛を導出する装置である。次に、本発明は、ＭＰＥＧ準拠符号器を参照して記載するが、当業者であればわかるように、他の符号化復号化基準に準拠した符号器であっても本発明の適用は可能である。
【００１３】
本発明の好適な実施形態では、装置１００は、より複雑なブロックベースの動き補償符号化方式の符号器又はその一部である。装置１００は、動き推定モジュール１４０、動き補償モジュール１５０、レート制御モジュール１３０、ＤＣＴモジュール１６０、量子化（Q）モジュール１７０、可変長符号化（VLC）モジュール１８０、バッファ１９０、逆量子化（Q-1）モジュール１７５、逆ＤＣＴ（ＤＣＴ-1）変換モジュール１６５、減算器１１５、加算器１５５を備える。装置１００は複数のモジュールを備えるが、当業者であればわかるように、様々なモジュールが行う機能は、図１に示すように、別個のモジュールに隔離する必要はない。例えば、動き補償モジュール１５０、逆量子化モジュール１７５、逆ＤＣＴモジュール１６５を含むモジュールセットは、一般に「埋込復号器」として知られている。
【００１４】
図１には、信号経路１１０上に入力ビデオ画像（画像シーケンス）が示されている。このビデオ画像は、ＭＰＥＧ基準に従いディジタル化され、輝度及び２色差信号（Ｙ，Ｃｒ，Ｃｂ）として表される。これらの信号は、各映像（フレーム）が複数のマクロブロックで表されるように更に複数の層（シーケンス、映像グループ、映像、スライス、マクロブロック、ブロック）に分割される。各マクロブロックは、４個の輝度ブロック、１個のＣrブロック、１個のＣbブロックより成る。各ブロックは、８×８のサンプルアレイとして定義される。各ブロックユニットへの映像分割により、２つの継続する映像間の変化を識別する能力、及び低振幅変換係数の除去（以下記載）を通しての画像圧縮能力が向上する。ディジタル化信号は、適当なウィンドウ、解像度、入力フォーマットを選択するためにフォーマット変換等の任意の前理を受けてよい。
【００１５】
以下の開示では、ＭＰＥＧ基準用語が使用されるが、マクロブロック、又はブロックという語は、符号化の基礎として使われる画素のブロックの、如何なるサイズ又は形をも記述するためのものである。概して言えば、「マクロブロック」は、単一画素と同じほど小さく、あるいはビデオフレーム全体と同じほど大きく設定できる。
【００１６】
同様に、「オブジェクト」という語は、画素のブロックの、如何なるサイズ又は形をも記述するためのものである。概して言えば、「オブジェクト」は、単一画素と同じほど小さく、あるいはビデオフレーム全体と同じほど大きく設定できる。
【００１７】
経路１１０上の入力動画は、動き推定モジュール１４０内に受信され、そこで動きベクトルが推定される。動きベクトルとは、２次元ベクトルであり、動き補償により使用され、現在の映像におけるブロック座標位置からのオフセットを、基準フレーム内の座標に与える。基準フレームは、前のフレーム（Ｐ-フレーム）、あるいは前の及び又は将来のフレーム（Ｂ-フレーム）であってよい。動きベクトルの使用により、チャンネル上で送信される情報量が減少させられることにより、画像圧縮が大幅に向上する。その理由は、現在フレームと基準フレーム間の変化のみが符号化され、送信されるからである。
【００１８】
動き推定モジュール１４０からの動きベクトルは、動き補償モジュール１５０により受け取られ、そこでサンプル値の予測効率向上が図られる。動き補償には予測が含まれる。この予測では、動きベクトルを使い、予測エラーを形成するのに使われる以前の符号化サンプル値を含有する過去、及び／又は将来の基準フレーム内にオフセットが与えられる。即ち、動き補償モジュール１５０では、以前の符号化フレームと動きベクトルを使い、現在のフレームの推定が行われる。更に、当業者であればわかるように、動き推定モジュールと、動き補償モジュールが行う機能は、複合モジュール、例えば単一ブロック動き補償器で実施可能である。
【００１９】
更に、所定のマクロブロックに対して動き補償予測を行う前に、符号化モードを選択する必要がある。符号化モード決定分野では、ＭＰＥＧにより複数の異なるマクロブロック符号化モードが提供されている。具体的には、ＭＰＥＧ−２によりマクロブロック符号化モードが提供されている。このモードには、内部モード、動き補償なしモード（ＭＣなし）、フレーム／フィールド／デュア−プライム（frame/field/dual-prime）動き補償インタモード、順逆平均（forward/backward/average）インタモード、フィールドフレームＤＣＴモードが含まれる。
【００２０】
符号化モード選択後、動き補償モジュール１５０において、過去、及び又は将来の基準映像に基づき、ブロックの内容に関して、経路１５２上で動き補償予測（予測された画像）が生成される。この経路１５２上の動き補償予測は、減算器１１５を介し、現在のマクロブロックにおける経路１１０上のビデオ画像から減算され、経路１５３上に、エラー信号、又は予測残留信号が形成される。予測残留信号形成により、入力ビデオ画像内の冗長情報が効果的に取り除かれる。ここで、現在のフレームがI-フレームとして符号化される場合、経路１５３上の予測残留信号は、単に元の映像であり、予測残留信号ではないことに留意する必要がある。
【００２１】
次に、ＤＣＴモジュール１６０において、予測残留信号の各ブロックに対して、順離散的余弦変換プロセスが適用され、ＤＣＴ係数の８×８ブロックが一組生成される。ＤＣＴベース機能、又はサブバンド分解により、次の量子化ステップで重要となる心理視覚判断基準（psychovisual）の効率的使用が可能となる。
【００２２】
前記の結果生成されるＤＣＴ係数の８×８ブロックは、量子化モジュール１７０に受け取られ、そこでＤＣＴ係数が量子化される。量子化プロセスでは、ＤＣＴ係数を一組の量子化値により割り、整数値を形成するため適当に切り捨ててＤＣＴ係数を表すので、正確性が低減する。量子化値は、ベース機能の可視性（視覚的に重みの付いた量子化として知られる）に基づく判断基準を利用し、各ＤＣＴ係数毎に別個に設定できる。即ち、量子化値は、所定のベース機能の可視性用閾値、つまり人間の目が検知できる係数振幅に対応する。この値でＤＣＴ係数を量子化することにより、ＤＣＴ係数の多くが「０」値に変換され、これにより画像圧縮効率が向上する。量子化プロセスは、視覚的質を得て、また符号器を制御して出力を所定のビットレートに一致させる（レート制御）キーとなる操作であり、重要なツールである。各ＤＣＴ係数に対して異なる量子化値が適用できるため、「量子化マトリックス」は一般に、基準テーブル、例えば輝度量子化テーブル又は色量子化テーブルとして確立される。従って、復号器により量子化マトリックスが選ばれ、この量子化マトリックスにより、変換ブロック内の各周波数係数の量子化方法が決定される。
【００２３】
一方、量子化エラーの主観的知覚は、周波数で大きく変化する。よって、より高い周波数では、より粗い量子化値を使用する方がよい。即ち、量子化エラーに対する人の知覚感度は、空間周波数が高いほど低下する。その結果、高周波数が、低周波数に比べてより許容値が少なくなり、より粗く量子化される。更に、正確な量子化マトリックスは、意図される表示の特性、視距離、ソース内の騒音量等、多くの外部的パラメータに依存する。従って、あるアプリケーション、又は個々のフレームシーケンスに対してさえ、特定の量子化マトリックスを調整することが可能となる。一般に、カスタマイズ量子化マトリックスは、圧縮ビデオ画像と共に、文脈として記憶できる。量子化器目盛の適切な選択は、レート制御モジュール１３０により行われる。
【００２４】
次に、前記の結果として生成される量子化ＤＣＴ係数の８×８ブロックは、信号接続１７１を介して可変長符号化（ＶＣＬ）モジュール１８０により受け取られる。そこで、量子化係数の２次元ブロックが「ジグザグ」順序で走査され、１次元量子化ＤＣＴ係数列に変換される。このジグザグ走査順序は、最低から最高空間周波数まで、ＤＣＴ係数のおおよそのシーケンス順序を示す。次に、可変長ＤＣＴ符号化（VLC）モジュール１８０は、可変長符号化、ランレングス符号化を利用し、量子化ＤＣＴ係数列、及びマクロブロックに関する全副情報を符号化する。
【００２５】
データストリームは、「先入れ先出し」（ＦＩＦＯ）バッファ１９０内に受け取られる。異なる映像形態、可変長符号化を利用する結果、ＦＩＦＯ内への全体的送速度も可変となる。即ち、各フレームの符号化に使われるビット数を変更すことができる。固定レートチャンネルを含むアプリケーションでは、ＦＩＦＯバッファを使い、符合器出力が、ビットレートを平滑にするチャンネルに一致させられる。従って、経路１９５上のＦＩＦＯバッファ１９０の出力信号は、経路１１０上の圧縮された入力ビデオ画像（あるいは、入力画像と予測画像間の圧縮化された差信号）として表される。そこから、経路２９５を介し、記憶媒体、又は電気通信回線に送られる。
【００２６】
レート制御モジュール１３０は、ＦＩＦＯバッファ１９０に入るデータストリームのビットレートを監視、調整する役割を果たす。この機能により、データストリーム送信後、復号器側（図示しない受信器、又は目標記憶装置内）上におけるオーバフロー、アンダフローが避けられる。従って、バッファ１９０の状態を監視し、符号器により生成されるビット数を制御することが、レート制御モジュール１３０の役割である。
【００２７】
本発明の好適な実施形態において、レート制御モジュール１３０により、各フレーム内の各領域、又は「オブジェクト」に対して、量子化目盛が選ばれる。これにより、符号化レートを制御する一方、ビデオ画像の全体的質が維持される。即ち、フレームを評価することにより、フレーム内のある領域で、より以上の、あるいはより以下のビットレート割り当てが必要かどうかの決定が可能となる。種々のアプリケーションにおいて、様々な領域が、他領域以上に関心を呼ぶことが観察されている。例えば、見る人にとり、ビデオフォーンアプリケーション内の人の顔の方が、背景より一般的に重要である。他の例として、ある画像領域、つまり腫瘍があると思われる位置が周辺組織以上に重要である医療アプリケーション、あるいはある画像領域，つまり軍備評価が周辺偽装以上に重要である監視アプリケーション、等が含まれる。従って、特定アプリケーションにより、フレーム内の適切な領域、又はオブジェクトの重要性を定める判断基準が指定される。本発明では、各フレーム内の各領域、又はオブジェクトに対して、量子化目盛が選択される。これにより、全映像シーケンス上で均一な視覚的質が維持される一方、映像に対する目標ビットレートが達成される。
【００２８】
本発明を、時間符号化（例えば動き推定補償）及び空間符号化（例えば離散的余弦変換）を実施する符号器により説明したが、本発明はこれに限定されるものではない。他の時間及び空間符号化方法も使用可能であり、更には如何なる時間、空間符号化の使用も含まなくともよい。
【００２９】
詳細には、レート制御モジュール１３０は、フレームレート分配器１３１、オブジェクトレート分配器１３２を具備する。フレームレート分配器１３１は、現在のフレームに対してビットバジェット（目標フレームビットレート）を割り当て、一方オブジェクトレート分配器１３２は、現在のフレーム内に各々定められたオブジェクトに対して、ビットバジェット（目標オブジェクトビットレート）を割り当てる。
【００３０】
簡単に言えば、フレームレート分配器１３１は、まず、以前符号化した映像から、あるいは様々なＭＰＥＧテストモデルを実施することにより、特定形態の映像の複雑性（Ｉ，Ｐ，Ｂ）を略推定する。この推定された複雑性は、各フレームの符号化に必要な予測ビット数を導出するのに使われる。この知識を基に、多項式複雑性測定に従い、フレームに対する量子化器目盛が計算される。該複雑性測定は、フレームに対し選択された量子化器目盛が、映像に対する目標ビットレートに達しなければならないという制約を満たすよう導出される。フレームの符号化後、レート制御モジュールが、多項式回帰プロセスの使用を通じ、複雑性測定を回帰的に調整する。即ち、マクロブロック符号化に必要な実際のビット数を使い、次のフレームに対する量子化器目盛の予測を向上するように複雑性測定が再定義される。量子化器目盛の計算過程において、「目標フレームビットレート」も回帰的に更新される。このフレームレート分配方法は、１９９８年２月１１日出願の、特許出願第０９―０２２，３４９号（弁理士整理番号ＳＡＲ１２４５９）「符号化方式におけるレート制御の最適化装置及びその方法」に開示されており、その内容は本明細書に援用されている。本発明は、他のフレームビットレート割り当て方法、例えば、歪み測定等に基づくフレームビットレート割り当て方法を利用し実施可能である。
【００３１】
簡単に言えば、次に、オブジェクトレート分配器１３２が、計算された目標フレームビットレートを適用し、１つ以上の目標オブジェクトビットレートを決定する。そこで、目標フレームビットレートのビットが、オブジェクトの絶対差（ＭＡＤ）の二乗平均値に比例して分配される。目標オブジェクトビットレート、及び対応する量子化器目盛の選択方法の詳細は、図４を参照して以下記載する通りである。
【００３２】
なお、各フレーム内のオブジェクトは、任意のオブジェクト分類、又は区分化モジュール１２０により決定される。オブジェクト分類、又は区分化モジュール１２０には、各フレーム内のオブジェクト定義に必要な判断基準が含まれる。様々なオブジェクト分類、又は区分化の方法が提供されている。例えば、ＭＰＥＧ−４基準添付ＦＩＳＯ／ＩＥＣ１４４９６−２に記載される方法が上げられる。
【００３３】
あるいは、「オブジェクトベース」の情報、例えばオブジェクトを構成する画素値、これら画素値の位置等が、経路１１２上の画像シーケンスから直接得られる。即ち、画像シーケンス、例えばサーバ上に記憶されるビデオシーケンスやサーバ上のプログラム等が前もって処理され、記憶媒体に記憶されている場合、記憶されるビデオシーケンスを生成した符号器が、「オブジェクトベース」情報を共に通過させることが可能となる。言い換えれば、「オブジェクトベース」情報を、画像シーケンスと共に、符号器１００に送信することができる。このような実施構成においては、オブジェクト分類、又は区分化モジュール１２０を省くことができる。
【００３４】
再び図１において、前記量子化モジュール１７０から結果的に生成された量子化ＤＣＴ係数の８×８ブロックは、信号接続１７２を介し、逆量子化モジュール１７５にも受け取られる。この段階で、符号器が、入力ビデオ画像のI-フレーム及びＰ-フレームを再生する。このフレーム再生は、その後の符号化に対する基準フレームとなるようにデータ復号化により行われる。
【００３５】
結果的に生じるＤＣＴ係数の８×８ブロックは、逆ＤＣＴモジュール１６５に渡される。そこで、各マクロブロックにＤＣＴを適用し、復号化エラー信号が生成される。このエラー信号は、加算器１５５を介し、動き補償モジュールからの予測信号に再び加算される。これにより、復号化基準映像（再構成された画像）が生成される。
【００３６】
図２は、画像内のオブジェクトベースの画像に対して、ビットの導出及び割り当てを行う方法２００のフローチャートを示すブロック図である。より詳細には、方法２００は、ステップ２０５で開始され、ステップ２１０に進み、そこで現在のフレームに対して、目標フレームのビットレートが決定される。好適な実施形態において、目標フレームビットレートの決定は、複雑性測定を利用し行われる。この複雑性測定は、多項式回帰プロセスを通し、回帰的に調整される（図３）。
【００３７】
図３は、目標フレームビットレートを決定する方法３００を示すフローチャートである。図３において、該方法はステップ３０５で開始され、ステップ３１０に進み、そこで次の式で示すフレームＴframeに対して、目標ビット（目標フレームビットレート）が決定される。
【００３８】
【数３】
0004187405.tif 000002
【００３９】
ここで、Ｒはフレームシーケンスのビット剰余数、Ｎｆはシーケンスにおける剰余フレーム数、Ｔprevious frameは前のフレーム符号化で使われたビット数、past_percentは定数である。好適な実施形態において、定数past_percentは、０．０５に設定される。しかし、本発明は、これに限定されるわけではない。他の値として、特定のアプリケーション、又は画像文脈に依存する値も採用できる。実際には、これらの値は時間的に調整できる。
【００４０】
要するに、式（１）により、利用可能なビット及び最後の符号化フレームビットに基づく、目標フレームビットレートの計算が可能となる。最後のフレームが複雑、且つ多くのビットを使う場合、現在のフレームに対して、より多くのビットを割り当てる必要があるという前提に繋がる。しかし、このように現在のフレームへのビット割り当てを増やすと、剰余フレームの符号化に利用可能なビット数が減少することになり、よってこのフレームに対するビット割り当ての増加が制限されてしまう。重み付き平均は、式（１）の第２項に示すように、これら２要素の中間を取ったものである。
【００４１】
次に、ステップ３２０において、方法３００は、次式に示すように、現在のバッファ満杯度により、計算された目標フレームビットレートＴframeを調整する。
【００４２】
【数４】
0004187405.tif 000003
【００４３】
ここで、Ｔ’frameは、調整された目標ビットレート、「ａ」は現在のバッファ満杯度（復号器に送るべきビットを含むバッファ部）、ｂは（物理的バッファsize−バッファ満杯度（ａ））、ｃは２の値になるように選択された定数（他の値も使用可能）である。よって、「ｂ」は、バッファ内の余剰空間を示す。式（２）は、バッファが、半分より多く満たされている場合、調整された目標ビットレートＴframeが低下することを表している。逆に、バッファが半分より少なくしか満たされていない場合、調整される目標ビットレートＴframeは上昇する。バッファがちょうど半分満たされている場合、式（２）がＴ’frame＝Ｔframeとなり、如何なる調整も必要ではない。
【００４４】
次に、ステップ３３０において、方法３００は、目標フレームビットレート（Ｒs／３０）の低い方の領域が、次の式のように維持されるかを任意に確認する。
【００４５】
【数５】
0004187405.tif 000004
【００４６】
ここで、式（３）により、Ｔframeは、２つの可能な値のうち大きい方を取ることが可能であることに留意する必要がある。Ｒsは、シーケンス（又はセグメント）に対するビットレートであり、例えば２４０００ビット／秒である。即ち、目標レート（Ｒs／３０）の低い方の領域を使い、最小品質を維持、又は保証する。例えば、８００ビット／フレームが、最小レートとして設定できる。最小品質が維持できない場合、符号器は、現在のフレームを全て省くオプションを有する。次に、方法３００は、ステップ３４０でその処理を終了する。
【００４７】
本発明では、例えば、ＭＰＥＧのＴＭ４及びＴＭ５等、他のフレームビットレート割り当て方法も使用可能であることに留意する必要がある。しかし、一旦目標フレームビットレートを使い、目標オブジェクトビットレートが導出されると、目標オブジェクトビットレートの計算オーバヘッド及び正確性が、採用されるフレームビットレート割り当て方法の影響を受ける。例えば、性能を犠牲にしても計算の複雑性を最小にすることが望ましい場合、ＭＰＥＧのＴＭ４及びＴＭ５のフレームビットレート割り当て方法を採用することが適当である。反対に、計算の複雑性の増加を犠牲にしても、性能を最大にすることが望ましい場合、特許出願のフレームビットレート割り当て方法（弁理士整理番号ＳＡＲ１２４５９）、あるいは他の更に複雑なフレームビットレート割り当て方法を採用することが適当である。
【００４８】
再び図２において、Ｔframe決定後、方法２００は、次に、以下の図４に示すように、現在の画像内オブジェクトに対して、１つ以上の目標オブジェクトビットレートを決定する。こうして、方法２００は、ステップ２３０において、その処理を終了する。
【００４９】
図４は、現在の画像内オブジェクトに対して、１つ以上の目標オブジェクトビットレートを決定する方法４００を示すフローチャートである。この方法は、ステップ４０５で開始され、ステップ４１０に進み、そこで各オブジェクトに対して、次のように目標オブジェクトビットレートＶiが決定される（ｉ＝１、２、３．．．）。
【００５０】
【数６】
0004187405.tif 000005
【００５１】
ここで、Ｍａｄiは、オブジェクトｉの平均絶対差（ＭＡＤ）、ｎは、フレーム内のオブジェクト数、Ｖiは、オブジェクトｉに対する推定目標オブジェクトビットレートである。即ち、全体領域、又は画像内の「オブジェクト」を定義する領域上で計算が実行され、これによりオブジェクトに対して、平均画素値が得られる。
【００５２】
より詳細には、（オリジナル画像内の）各画素値と対応する（予測画像内の）画素値間の絶対差が、オブジェクト内に定義される画素に対して実行される。次に、オブジェクトに対する画素の全絶対差（ＳＡＤ）の合算が実行される。最後に、ＳＡＤが、オブジェクト内の画素数により分割される。これにより、オブジェクトに対して、絶対差画素値（ＭＡＤ）の平均が生成される。そして、目標フレームビットＴframeが、オブジェクトの絶対差（ＭＡＤ）の二乗平均に比例して分配される。
【００５３】
例えば、オブジェクト「ａ」のＭａｄaを２、オブジェクト「ｂ」のＭａｄbを３とすると、Ｔframeは、１００に決定され、次にＶa及びＶbが、それぞれ次のように与えられる。
【００５４】
Ｖa＝２2／（２2＋３2）×１００、及び
Ｖb＝３2／（２2＋３2）×１００
ステップ４２０において、方法４００は、Ｖiが十分大きく、オブジェクトｉの形状情報伝達が可能かどうかの質問を行う。即ち、オブジェクトビットＶiを使い、次の３つの情報の符号化を行う。つまり、（１）シンタックス情報、（例えばヘッダ情報）、（２）オブジェクトｉ用動き情報（動きベクトル）、（３）画像内のオブジェクトｉの形状を定義する形状情報である。
【００５５】
好適な実施形態では、形状情報は、画像内のオブジェクトの位置を定める「アルファ平面」を使い実施される。例えば、画像が２つのオブジェクトａ，ｂを有するよう定義されると、画像上の画素値が量子化器により量子化される。これにより、０と１の値のみ有する「アルファ平面」が生成される（この例では、二値化アルファ平面）。アルファ平面において、「０」領域はオブジェクト「ａ」を表し、「１」領域はオブジェクト「ｂ」を表す。代わって、アルファ平面は、２つより多いオブジェクトを有する画像を、３つより多いレベル内にその画像を量子化すること等により、その画像に対して構成可能である。
【００５６】
従って、アルファ平面のサイズは、元の画像サイズと同一である。よって、この形状情報を復号器に伝達するには、目標オブジェクトビットレートＶｉの一部を使う必要がある。
【００５７】
しかし、利用可能なビットをオブジェクトの文脈、又は構造の符号化に使う代わりに、目標オブジェクトビットの大部分が、動きベクトル、及び又はオブジェクト形状情報の符号化に供される場合、方法４００では、オブジェクト形状制御機構（「alpha_thi」と呼ばれる閾値）が採用される。この機構により、形状符号化に割り当てられるビット数が、増加又は減少する。
【００５８】
より詳細には、ステップ４２０の質問に対する答えが否定の場合、方法４００はステップ４２３に進み、そこで次の式に従って、閾値alpha_thiが調整される。
【００５９】
【数７】
0004187405.tif 000006
【００６０】
ここで、syntaxiはオブジェクトｉ用シンタックス情報（例えばヘッダ情報）の符号化に必要なビット、motioniはオブジェクトｉ用動き情報（例えば動きベクトル）の符号化に必要なビット、shapeiはオブジェクトｉ用形状情報の符号化に必要なビット、「ｄ」は、値５と設定される定数を表す。定数「ｄ」は、所定のアプリケーションにより、他の値にも設定可能である。
【００６１】
まず、閾値alpha_thiが、オブジェクトｉに対して０に設定される。オブジェクトに対するalpha_thiが確立されると、次にフレームからフレームに渡される（そして修正されることもある）。式（６）におけるshapeiは、当初、前のフレーム内の対応するshapeiから取られる。これにより、方法４００は、Ｖiが、syntaxi、motioni、shapeiの符号化に十分かどうかの判定を速く実行することが可能となる。よって、alpha_thiの調整方法が制御される。
【００６２】
操作中アルファ平面は、一般に、例えばファクタ４によりダウンサンプルされ、形状情報伝達に使われるビット数が減少する。しかし、ダウンサンプリングは損失を伴うプロセスであり、オブジェクト位置又はその境界に関してエラーが導入されてしまう。従って、方法４００では、そのエラー測定が行われる。この測定は、元のアルファ平面と、ダウンサンプルされ次にアップサンプルされたアルファ平面間で、各オブジェクトに対する絶対差ＳＡＤiの合計を計算することにより実行される。次に、ＳＡＤiが、以下のようにalpha_thiと比較される。
【００６３】
【数８】
0004187405.tif 000007
【００６４】
次に、新しいダウンサンプリングファクタ、例えばファクタ２を使った式（６ａ）の繰返し、式（６ａ）を使ったＳＡＤi、のalpha_thiへの再比較等が行われる。ある時点で、ＳＡＤiは、値１６×alpha_thiより小さくなる。その時点で、現在のダウンサンプリングファクタを使い、shapeiに対してビット計数が生成される。従って、alpha_thiの変更は、形状情報割り当てのビット数に影響を与える。定数１６は、実験により演繹したものだが、この定数は、アプリケーションが異なれば修正可能である。
【００６５】
より詳細には、目標オブジェクトビットレートＶiが、前のフレームにおけるオブジェクトに対して、syntaxi、motioni、shapeiの符号化に必要なビットより小さいと判定されると、alpha_thiは５増加する。alpha_thiの増加により、オブジェクト位置ｉのに関する正確性が低下する。つまり、オブジェクト境界に歪みが導入される。式（６）は、最大（ｍａｘ）関数を有することに留意する必要がある。ここで、alpha_thiは、３５以上、又はalpha_thi＋５になにるよう選ばれる。従って、ある状況では、たとえステップ４２０での質問に対する答えが否定的であっても、alpha_thiの値を維持することが適当である。
【００６６】
一方、ステップ４２０での質問に対する答えが肯定の場合、方法４００はステップ４２５に進み、そこで以下の式に従って、閾値alpha_thiが調整される。
【００６７】
【数９】
0004187405.tif 000008
【００６８】
ここでも、「ｄ」は値５に設定された定数である。再度また、この定数ｄは、所定のアプリケーションに応じ、他の値にも設定可能である。従って、目標オブジェクトビットレートＶiが、前のフレームのオブジェクトに対するＨi（つまり、syntaxi＋motioni＋shapei）の符号化に必要なビットより大きいと判定されると、alpha_thiが５減少する。このalpha_thiの減少により、オブジェクト位置に関する正確性が向上する。つまり、オブジェクト境界において歪みが最小となる。ここで、式（７）は最小（ｍｉｎ）関数を有することに留意する必要がある。この場合、alpha_thiは、０以下、又はalpha_thi−５に設定される。
【００６９】
ステップ４３０において、方法４００は、以下の式（８ａ−ｂ）に従い、Ｖiの調整を行う。
【００７０】
【数１０】
0004187405.tif 000009
【００７１】
ここで、「buffer_fullness」は現在のバッファ満杯度（つまり、復号器に送るべきビットを含むバッファ部分）、「SAFTETY_MERGIN」は０．１に設定された定数（アプリケーションに応じ、他の値も使用可能）、Ｒsはシーケンス（又はセグメント）に対するビットレート、「number_of_objects」は画像内オブジェクト数、「buffer_size」はバッファのサイズ、Ｂppは、チャンネル出力レートである。即ち、方法４００において、式（８ａ）が定義するバッファ条件が検出されると、次にＶiが、３０（ビデオの表示フレームレート）で除したbit_rateの大きい方の値に減少調整される。この３０は、「mergin」つまりmergin_buffer_fullnessにより定義される部分より小さく、画像内のオブジェクト数、又はバッファ内の余剰空間で除したものである。
【００７２】
あるいは、方法４００において、式（８ｂ）定義のバッファ条件が検出されると、Ｖiはチャンネル出力レートに供給するよう調整される。要するに、Ｖiは、現在のバッファ状態、つまりバッファが満杯度な状態に、従って調整される。このステップで、方式４００は、画像内の各オブジェクトに対する、目標オブジェクトビットレートＶiの算出が完了となる。
【００７３】
画像内の各オブジェクトに対するＶiが決定されると、目標オブジェクトビットレートＶiを使い、以下記載する各オブジェクトに対する量子化器目盛の決定等の他の符号化パラメータを実施することが可能となる。あるいは、計算資源割り当て等、他の符号化パラメータが実施可能となる。即ち、特定オブジェクトが高いＶiを有すると判定されると、より大きな処理電力の割り当てが可能となる。例えば、特定オブジェクト符号化において、多重プロセッサ符号化方式により、より多くのプロセッサを振り向けることが挙げられる。
【００７４】
再び図４において、ステップ４４０で、方法４００により、各オブジェクトｉに対する量子化目盛Ｑiが算出される。次にステップ４５０において、量子化目盛Ｑiを使い、オブジェクトｉが符号化される。方法４００は、ステップ４６０でその処理を終了する。
【００７５】
好適な実施形態において、量子化目盛Ｑiの算出は、米国特許出願第０９−０２２，３４９号（弁理士整理番号ＳＡＲ１２４５９）に記載の歪み測定に従い行われる。簡単に言えば、量子化目盛Ｑiは、以下に示す２次式レート歪み方法から導出される。
【００７６】
【数１１】
0004187405.tif 000010
【００７７】
ここで、Ｒiはオブジェクトｉに使用される実際のビット、Ｈiはシンタックス、動き、形状符号化に使用されるヘッダビット、Ｑiはオブジェクトｉ用に選ばれる量子化レベル又は目盛、Ｅiは歪み測定である。好適な実施形態において、Ｅiは、動き補償実施後の現在のオブジェクトに対する平均絶対差を表す。即ち、測定Ｅiにより、シーケンス内の継続フレーム間におけるオブジェクト差を説明するようにオブジェクトビットバジェットの調整方法が提供される。Ｅiは、ブロック毎に、現在のオブジェクトと前のフレーム内の同じオブジェクト間の差を合計し、平均絶対差測定を計算することにより算出される。言い換えれば、現在のフレーム内のオブジェクトと前のフレーム内の同じオブジェクト間の差が大きいほど、現在のフレーム内オブジェクトの符号化に必要なビット数も大きくなる。更に、Ｅiが平均二乗エラー、又はやや目につく差（ｊｎｄ）を表すように、他の歪み測定も使用できる。
【００７８】
初期化中、式（１０）内のＲiは算出されたＶiと置換され、Ｑiが生成される。しかし、実際の符号化後、Ｒi及びＱiは、パラメータＸ1及びＸ2を更新するために使用される。この更新は、多項式回帰モデル、又は二次式回帰モデルを使い実行され、パラメータＸ1及びＸ2が洗練される。即ち、定数Ｘ1及びＸ2は、オブジェクトに割り当てられるビットと、特定の量子化器レベル又は目盛のオブジェクト符号化に必要な実際のビット数間の不一致を説明するために更新される。回帰モデルは、当該技術では広く知られている。様々な回帰モデルの詳細に関しては、例えば、予測及び時系列、（Bowerman,O‘Connel共著、Duxbury Press、第3版、第4章、1993年)を参照するとよい。
【００７９】
パラメータＸ1及びＸ2は、以下のように初期化される。
【００８０】
【数１２】
0004187405.tif 000011
【００８１】
Ｒsは、シーケンス（又はセグメント）に対するビットレート、例えば２４０００ビット／秒を表す。Ｎsは、符号化されたフレーム間の距離を表す。即ち、低ビットレートアプリケーションのため、シーケンス内のあるフレームが符号化されない（省かれる）ことがある。例えば、符号器は、各４番目のフレームのみ符号化する。省かれるフレーム数は、特定アプリケーションの必要条件に適応させることに留意する必要がある。
【００８２】
より詳細には、次のフレームの符号化に入る前、符号器により、現在のバッファ満杯度、次のフレームに対する推定目標フレームビットレートＴframeも検討される。バッファ満杯度と次のフレーム用推定目標フレームビットレートの合計が、バッファサイズの８０％を超えると、次のフレームは符号化されずに省かれ、バッファ満杯度は、チャンネル出力レートにより更新される。フレーム省略条件は、次のように形成される。
【００８３】
【数１３】
0004187405.tif 000012
【００８４】
ここで、「skip_margin」は、０．８に設定される定数である（アプリケーションに応じ、他の値も使用可能）。この省略方法は、米国特許出願第０９−０２２，３４９号（弁理士整理番号ＳＡＲ１２４５９）にも記載されている。
【００８５】
本発明で使用される量子化計算方法及びフレーム省略方法を説明したが、本発明のオブジェクトベースのレート制御方法と共に、他の量子化計算方法、フレーム省略方法も使用可能である。
【００８６】
図５は、本発明を内臓するウエーブレットベース符号器５００を示す。この符号器は、ブロック動き補償器（ＢＭＣ）、動きベクトル符号器５０４、減算器５０２、離散的ウエーブレット変換（ＤＷＴ）符号器５０６、ビットレートコントローラ５１０、ＤＷＴ復号器５１２、出力バッファ５１４を含む。
【００８７】
一般に、前記のように、入力信号はビデオ画像である（ビデオシーケンス内のフレームを定義する２次元画素配列）。低ビットレートのチャンネルを通して正確に画像を送信するには、ビデオフレームシーケンス内の空間的、時間的冗長性を大幅に減少する必要がある。この減少は、一般に、継続フレーム間の差のみを符号化し、送信することにより達成される。前記符号器は、次の３機能を有している。第１に、ＢＭＣ及びその符号器５０４を利用し、フレーム間で起こる動きを表す複数の動きベクトルを生成する。第２に、動きベクトルと組み合わされた前のフレームの再構築バージョンを利用し、現在のフレームを予測する。第３に、予測されたフレームを、現在のフレームより減算し、符号化され、動きベクトルと共に受信器に送信される残余フレームを生成する。
【００８８】
離散的ウエーブレット変換では、ウエーブレット階層サブバンド分解が行われ、従来の入力画像ウエーブレットツリー表示が生成される。このような画像分解を達成するには、高水平高垂直（ＨＨ）、高水平低垂直（ＨＬ）、低水平高垂直（ＬＨ）、低水平低垂直（ＬＬ）周波数のサブバンド内への２倍のサブサンプリングを利用し、画像が分解される。次に、ＬＬサブバンドに対して、更に２倍のサブサンプリングが行われ、１組のＨＨ、ＨＬ、ＬＨ、ＬＬサブバンドが生成される。このサブサンプリングは、例えば、３つのサブサンプリングを使用する図６に示すように、サブバンド配列を生成するように回帰的に達成される。実際には、６つのサブサンプリングが使用されるのが好ましい。サブバンド間の親子依存関係は、親ノードのサブバンドから子ノードのサブバンドを指す矢印に示す通りである。最低周波数サブバンドは、頂部左ＬＬ1であり、最高周波数サブバンドは、低部右ＨＨ3となる。この例では、全ての子ノードが１親を有する。サブバンド分解の詳細は、「ウエーブレット係数ゼロツリー使用の埋込み式画像符号化」（J.M.Shapiro著、IEEE信号処理トランザクション、第４１巻、１２号、ｐ.３４４５〜６２、１９９３年１２月）を参照のこと。
【００８９】
図５のＤＷＴ符号器では、「幅先」、又は「深さ先」のどちらか一方のパターンで、ウエーブレットツリー係数の符号化が行われる。幅先パターンは、ビット平面毎のパターンでウエーブレットツリーを横断する。つまり、全親ノード、全子供、全孫の順に量子化される。反対に、深さ先パターンは、子供を通して低―低サブバンド（ＬＬ1）内のルートから（トップダウン）、あるいは低―低サブバンドを通して子供から（ボトムアップ）各ツリーを横断する。レートコントローラ５１０による適当な量子化レベル選択は、前記のように、シーケンスの各フレーム内の各オブジェクトに対して、ビットレートを制御することである。よって、本発明は、種々の変換を使用する様々な形態の符合器に適用可能である。
【００９０】
図７は、本発明の符号化方式７００を示す。この符号化方式は、汎用コンピュータ７１０、様々な入出力装置７２０を具備する。汎用コンピュータは、中央処理装置（ＣＰＵ）７１２、メモリ７１４、一連の画像を受信し符号化する符号器７１６を含む。
【００９１】
好適な実施形態において、符号器７１６は、前記のように、単に符号器１００、及び又は符号器５００である。符号器７１６は、通信チャンネルを通してＣＰＵ７１２に接続される物理的装置であってよい。あるいは、符号器７１６は、ソフトウエアアプリケーション（又は、例えば特定用途向けＩＣ（ＡＳＩＣ）等、ソフトウェアとハードウェアの混合）で表すこともできる。）この場合、ソフトウエアアプリケーションは、記憶装置からロードされ、コンピュータのメモリ７１２に存在する。よって、本発明の符号器１００及び５００は、コンピュータ読出し可能媒体、例えばメモリ又は記憶装置等に格納できる。
【００９２】
コンピュータ７１０は、複数の入出力装置７２０に接続可能である。入出力装置としては、例えば、キーボード、マウス、カメラ、カムコーダー、ビデオモニター、限定するわけではないが、テープドライブ、フロッピードライブ、ハードディスクドライブ、コンパクトディスクドライブを含む任意の数の撮像装置、又は記憶装置がある。入力装置は、符号化されたビデオのビットストリームを生成するため、コンピュータへの入力を行い、あるいは、記憶装置、又は撮像装置からの一連のビデオ画像を受け取る役割を果たす。最後に、図示の通信チャンネル７３０では、符号化方式からの符号化信号が、復号化方式（図示せず）に渡される。
【００９３】
以上、符号化レートを最適化する一方、ビデオ画像の全体的質を維持するため、各フレーム内の各領域、又は「オブジェクト」に対して、量子化目盛を選ぶ新規の装置及びその方法を説明した。本発明の多くの変更、修正、他の使用及び適用が、当業者であればわかるように、本明細書及びその実施形態を示す添付図を考慮することにより明らかとなる。このような変更、修正、他の使用及び適用は全て、本発明の精神、範囲を超えるものではなく、本発明の範囲内である。
【図面の簡単な説明】
【図１】  本発明の装置を示すブロック図である。
【図２】  画像内のオブジェクトベースの画像に対して、目標ビットレートを導出し、割り当てる方法のフローチャートを示すブロック図である。
【図３】  目標フレームビットレートを決定する方法を示すフローチャートである。
【図４】  現行画像内のオブジェクトに対して、１つ以上の目標オブジェクトビットレートを決定する方法のフローチャートである。
【図５】  本発明装置の第２実施形態を示すブロック図である。
【図６】  ウエーブレットツリーを示すグラフである。
【図７】  本発明の符号化方式を示す図である。
【図１】
0004187405.tif 000016
【図２】
0004187405.tif 000017
【図３】
0004187405.tif 000018
【図４】
0004187405.tif 000019
【図５】
0004187405.tif 000020
【図６】
0004187405.tif 000021
【図７】
0004187405.tif 000022