(57)【要約】【課題】ペアレント−チャイルド関係を編成する複数のノードを有するウェーブレットツリーを生成するように、ウェーブレット変換を使用して入力画像を符号化する。【解決手段】ウェーブレット変換して得られた係数をベクトルとしてグループ分けし、各ベクトルの各々に１つのノードが対応するように、入力画像からウェーブレットツリーを生成するステップ１０４と、前記ベクトルを編成する複数の係数を量子化するステップ１１０と、前記ノードの各々にシンボルを指定するステップ１１２と、前記シンボルおよび前記量子化された係数値を符号化するステップ１１４を備えている。前記シンボルは、対応するノードの量子化された値と各ノードのディセンダントの量子化された値に応じて指定される。【選択図】　　　　図１
2004032760.tif 000002
【特許請求の範囲】
【請求項１】
ペアレント−チャイルド関係を編成する複数のノードを有するウェーブレットツリーを生成するように、ウェーブレット変換を使用して入力画像を符号化するための方法であって、
前記ウェーブレット変換して得られた係数をベクトルとしてグループ分けし、各ベクトルの各々に１つのノードが対応するように、入力画像からウェーブレットツリーを生成するステップと、
前記ベクトルを編成する複数の係数を量子化するステップと、
前記ノードの各々にシンボルを指定するステップと、
前記シンボルおよび前記量子化された係数値を符号化するステップを備え、
前記シンボルは対応するノードの量子化された係数値と各ノードのディセンダントの量子化された係数値に応じて指定されることを特徴とする入力画面を符号化するための方法。
【請求項２】
ペアレント−チャイルド関係を編成する複数のノードを有するウェーブレットツリーを生成するように、ウェーブレット変換を使用して入力画像を符号化するための装置であって、
前記ウェーブレット変換して得られた係数をベクトルとしてグループ分けし、各ベクトルの各々に１つのノードが対応するように、入力画像からウェーブレットツリーを生成する手段と、
前記ベクトルを編成する複数の係数を量子化する手段と、
前記ノードの各々にシンボルを指定する手段と、
前記シンボルおよび前記量子化された係数値を符号化する手段を備え、
前記シンボルは対応するノードの量子化された係数値と各ノードのディセンダントの量子化された係数値に応じて指定されることを特徴とする入力画面を符号化するための装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理システムに関し、より詳細には、ウェーブレットベースの符号化技術を利用した画像処理システムに関する。
【０００２】
【従来の技術】
データ圧縮システムは、最小の数のビットによりできるだけ正確に情報を表現し、情報記憶システムまたは伝送システム内にそれぞれ記憶し、または伝送すべきデータ量を最小にするのに有効である。当該技術分野で使用される圧縮の主な手段の１つは、元のデータと比較した際に伸長されたデータの画質に大きな影響を与えることなく、元のデータから冗長な情報を除いている。
【０００３】
音響学、音声および信号処理に関する国際会議の議事録、カリフォルニア州サンフランシスコ、１９９２年３月、第ＩＶ巻、６５７〜６６０ページ（非特許文献１）には、例えば、かかる圧縮技術が記載されており、この文献ではゼロツリーを含む階層的な連続近似エントロピー符号化量子化器によって引き継がれる階層的サブバンド分解、またはウェーブレット変換を行う信号圧縮システムが開示されている。マルチ解像度階層サブバンド表現を使用する信号データの表現は、バート外著、通信に関するＩＥＥＥトランザクション、Ｖｏｌ　Ｃｏｍ−３１、Ｎｏ．４、１９８３年４月、５３３ページ（非特許文献２）に開示されている。
【０００４】
臨界サンプリングされる直交ミラーフィルタ（ＱＭＦ：Ｑｕａｄｒｏｔｕｒｅ−Ｍｉｒｒｏｒ　Ｆｉｌｔｅｒ）サブバンド表現としても知られるウェーブレットピラミッドは、画像の特殊なタイプのマルチ解像度階層サブバンド表現である。ウェーブレットピラミッドはペントランド外著、データ圧縮会議議事録１９９１年４月８日〜１１日、ユタ州スノーバード（非特許文献３）に開示されている。ＱＭＦサブバンドピラミッドは「サブバンド画像符号化」、Ｊ．Ｗ．ウッズ編、クルーエル・アカデミック・パブリッシャー、１９９１年（非特許文献４）、およびＩ．ドーベッチーズ著「ウェーブレットに関する１０講」、工業および応用数学学会（ＳＩＡＭ）ペンシルバニア州フィラデルフィア、１９９２年（非特許文献５）に記載されている。
【０００５】
階層的サブバンド分解としても知られるウェーブレット変換では、かかる分解によってソース画像の階層的マルチスケール表現が得られるので、この変換は、最近では低ビットレートの画像圧縮に使用されている。このウェーブレット変換は低ビットレート画像の符号化の重要な局面、すなわち変換係数の重要マップとしても知られる非ゼロ値の位置を表現する二進マップ（ウェーブレットツリー）の符号化に使用される。低ビットレート、すなわち１ビット／ペル未満のビットレートを得るために、スカラー量子化と、その後にエントロピー符号化を行う際は、量子化後の最も生じやすいシンボルすなわちゼロシンボルの確率は極めて大きいはずである。一般に、重要なマップを符号化する際にビットバジェットの大部分を消費するはずである。従って、重要マップの符号化を大きく改善すれば、記憶または伝送のための情報圧縮を大きく改善できる。
【０００６】
このような目標を達成するために、ゼロツリーと称される新しい構造が開発された。ウェーブレット係数が所定のスレッショルドＴに対して重要でないと言われるのは、係数がＴ以下の大きさを有する場合である。このゼロツリーは粗いスケールでのウェーブレット係数が所定のスレッショルドＴに対して重要でなければ、より細かいスケールでの同じ空間位置における同じ方向性をもつウェーブレット係数のすべてはＴに関して重要とならない可能性が高いという仮説に基づくものである。経験的な証拠は、このような仮説は真である可能性が高いことを示唆している。
【０００７】
より詳細に説明すれば、階層的サブバンドシステムでは最高周波数のサブバンドを除き、所定のスケールのどの係数もウェーブレットと称される構造に従う同じ方向の、次に細かいスケールでの係数の組（セット）に関連づけできる。最も粗いスケールの係数をペアレント（親）ノードと称し、同じ方向の、次に細かいスケールの同一の空間的または時間的位置に対応するすべての係数をチャイルド（子）ノードと称す。所定のペアレントノードに対し、同一位置に対応する同じ方向の、より細かいすべてのスケールのすべての係数の組をディセンダント（子孫）と称す。同様に、所定のチャイルドノードに対し、同じ位置に対応する同じ方向の、より粗い全てのスケールの係数の組をアンセスタ（先祖）と称す。最低周波数サブバンドを除き、すべてのペアレントノードは４つのチャイルドノードを有し、最低周波数サブバンドでは、各ペアレントノードが３つのチャイルドノードを有するように、ペアレントとチャイルドとの関係が定義される。
【０００８】
ノードは分解のスケールの最も粗いレベルから最も細かいレベルまでの順序でスキャンされる。このことは、ペアレントおよびそのペアレントと同じスケールのすべてのサブバンドにおける他のすべてのペアレントがスキャンされるまで、チャイルドノードはスキャンされないことを意味している。このようなスキャンは、二次元データセットのウェーブレット変換の係数によって定義されるすべてのウェーブレットツリーを横断するように実行される、ある種の変形されたブレドスファースト（ｂｒｅａｄｔｈ−ｆｉｒｓｔ）あるいはサブバンドごとの横断である。
【０００９】
係数が重要であるかどうかを判別するスレッショルドレベルを仮定すると、
１）ノードにおける係数が重要でない大きさを有する場合、
２）ノードがルートのディセンダントでない場合、すなわちノードを、より粗い
スケールから完全には予想できない場合、および、
３）ディセンダントのすべてが重要でない場合に、
このノードをＺＥＲＯＴＲＥＥ　ＲＯＯＴと称する。ＺＥＲＯＴＲＥＥ　ＲＯＯＴは、より細かいスケールの係数の非重要性を完全に予測できることを表示する特別なシンボルで符号化される。二進の重要性マップを効率的に符号化するために、次の４つのシンボル、すなわちＺＥＲＯＴＲＥＥ　ＲＯＯＴ、ＩＳＯＬＡＴＥＤ　ＺＥＲＯおよび２つの非ゼロシンボル、すなわちＰＯＳＩＴＩＶＥ　ＳＩＧＮＩＦＩＣＡＮＴとＮＥＧＡＴＩＶＥ　ＳＩＧＮＩＦＩＣＡＮＴがエントロピー符号化される。
【００１０】
本明細書で参考例として引用する、１９９５年５月２日に発行された米国特許第５，４１２，７４１号（特許文献１）は、高い圧縮度で情報を符号化するための装置および方法を開示している。この装置は従来の技術よりも、より効率的にウェーブレット係数のゼロツリー符号化を用いている。この装置のキーとなる操作は、スキャンすべき係数インデックスのリストをダイナミックに発生し、このダイナミックに発生されたリストがシンボルを符号化しなければならない係数インデックスしか含まないようにすることである。このことは、係数インデックスの統計リストを使用し、
ａ）シンボルを符号化すべきかどうか、または、
ｂ）シンボルを完全に予測できるかどうかを見るために、各係数を別々にチェックしなければならない従来技術よりも、劇的な改良となっている。
【００１１】
上記米国特許第５，４１２，７４１号（特許文献１）に開示された装置は、画像のウェーブレット変換を行うステップと、ウェーブレット係数のゼロツリーマップを形成するステップと、変換の最も粗いレベルからの初期主要リスト上の重要な係数およびペアレントの係数が重要であると判った時に主要リストにインデックスが追加された係数のチャイルドを符号化するステップと、スレッショルドを下げるステップと、スレッショルドを小さくし符号化された係数の精度を高めるよう、重要な係数の予想値を細かくするステップと、小さくしたスレッショルドで改定された主要リストをスキャンするように循環する工程とから成る、情報を符号化するための方法を使用している。
【００１２】
【特許文献１】
米国特許第５，４１２，７４１号
【非特許文献１】
音響学、音声および信号処理に関する国際会議の議事録、カリフォルニア州サンフランシスコ、１９９２年３月、第ＩＶ巻、６５７〜６６０ページ
【非特許文献２】
バート外著、通信に関するＩＥＥＥトランザクション、Ｖｏｌ　Ｃｏｍ−３１、Ｎｏ．４、１９８３年４月、５３３ページ
【非特許文献３】
ペントランド外著、データ圧縮会議議事録１９９１年４月８日〜１１日、ユタ州スノーバード
【非特許文献４】
「サブバンド画像符号化」、Ｊ．Ｗ．ウッズ編、クルーエル・アカデミック・パブリッシャー、１９９１年
【非特許文献５】
Ｉ．ドーベッチーズ著「ウェーブレットに関する１０講」、工業および応用数学学会（ＳＩＡＭ）ペンシルバニア州フィラデルフィア、１９９２年
【００１３】
【発明が解決しようとする課題】
上述のような繰り返しプロセスを行うために、上記米国特許第５，４１２，７４１号（特許文献１）の方法は、ウェーブレットツリーをサブバンドごとにスキャンすることによって実行されている。すなわち、すべてのペアレントノードを符号化し、次にすべてのチャイルドノードを符号化し、次にすべてのグランドチャイルド（ひ孫）ノードをスキャンし、次々にこのようなスキャンを行い、これらをビット平面ごとに符号化する。画像のウェーブレットツリー表現を通じて、このプロセスが繰り返されるにつれ、この装置はゼロツリーマップ内の４つのシンボルのうちの１つを符号化する。ウェーブレットツリーの処理速度の改善は利益をもたらす。
【００１４】
従って、当該技術分野では、符号化をより効率的にし、処理を高速にするようなウェーブレットツリーのノードを分類し、符号化する改良された方法に対するニーズがある。
【００１５】
【課題を解決するための手段】
本発明は、ウェーブレットに基づく符号化技術におけるゼロツリーを符号化する装置およびそれに付随する方法に関する。より詳細に説明すれば、本発明はゼロツリーを横断するためのデプスファースト（ｄｅｐｔｈ−ｆｉｒｓｔ）パターンを使用する。すなわち次のブランチを横断する前にペアレントからチャイルド、次にグランドチャイルド等へとツリーの各ブランチを完全に横断する。ツリーの係数を量子化するだけでなく、量子化された係数にシンボルを指定するのに、このデプスファーストツリー横断パターンが使用される。更に、本発明は、各ノードに対し３つのシンボル、すなわちＺＥＲＯＴＲＥＥ　ＲＯＯＴ、ＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯ０ＴおよびＶＡＬＵＥのうちの１つを指定する。これら３つのシンボルおよび効率的なツリー横断パターンを使用することにより、本発明は従来技術よりもゼロツリーを符号化する上で、概ね、より効率的となっている。更にこの概念は、ベクトルゼロツリーの符号化にも実施できる。
【００１６】
本発明は、ペアレント−チャイルド関係を編成する複数のノードを有するウェーブレットツリーを生成するように、ウェーブレット変換を使用して入力画像を符号化するための方法であって、前記ウェーブレット変換して得られた係数をベクトルとしてグループ分けし、各ベクトルの各々に１つのノードが対応するように、入力画像からウェーブレットツリーを生成するステップと、前記ベクトルを編成する複数の係数を量子化するステップと、前記ノードの各々にシンボルを指定するステップと、前記シンボルおよび前記量子化された係数値を符号化するステップを備え、前記シンボルは対応するノードの量子化された係数値と各ノードのディセンダントの量子化された係数値に応じて指定されることを特徴とするものである。
【００１７】
また、ペアレント−チャイルド関係を編成する複数のノードを有するウェーブレットツリーを生成するように、ウェーブレット変換を使用して入力画像を符号化するための装置であって、前記ウェーブレット変換して得られた係数をベクトルとしてグループ分けし、各ベクトルの各々に１つのノードが対応するように、入力画像からウェーブレットツリーを生成する手段と、前記ベクトルを編成する複数の係数を量子化する手段と、前記ノードの各々にシンボルを指定する手段と、前記シンボルおよび前記量子化された係数値を符号化する手段を備え、前記シンボルは対応するノードの量子化された係数値と各ノードのディセンダントの量子化された係数値に応じて指定されることを特徴とするものである。
【００１８】
【発明の実施の形態】
図１は、本発明の符号化器１００のブロック図を示し、図２は図１の符号化器１００の作動を示すフローチャートである。発明を最良に理解するには、読者は本発明の下記の説明を読みながら、同時に図１および２を参照されたい。発明の理解を容易にするために、異なる図面で共通する同一要素を表示するのに、可能な場合、同一参照番号を使用した。
【００１９】
符号化器１００はウェーブレットツリー発生器１０４と、オプションのウェーブレットツリー再編成器１０８と、量子化器１１０と、シンボル指定器１１２と、エントロピー符号化器１１４を含む。これら構成要素の各々はポート１０２における画像をポート１１６における符号化された出力画像にするよう、画像を処理するために、直列に接続されている。入力画像は一般に、イメージスキャナーまたはコンピュータのグラフィックシステムから作成できるようなピクセル化された（デジタル化された）フォトグラフィック画像である。しかしながら、この入力画像はビデオ符号化システムによって生成されるビデオ画像の一連のフレームまたは動き補償された残余（レジデュアル）フレーム内のフレームでもよい。一般に本発明は、任意の形態のデジタル化された画像またはその一部を処理するので、本発明の作動方法は一般にステップ２０２にて画像の入力、すなわち任意の形態の二次元データと共に開始する。
【００２０】
ウェーブレットツリー発生器１０４は（ステップ２０４にて）ウェーブレット階層的サブバンド分解を実行し、入力画像の従来のウェーブレットツリー表現を生成する。かかる画像分解を行うために２つの次元のうちの各々で２回のサブサンプリングを使用して画像を高水平−高垂直（ＨＨ）、高水平−低垂直（ＨＬ）、低水平−高垂直（ＬＨ）および低水平−低垂直（ＬＬ）周波数サブバンドに分解する。ＬＬサブバンドは更に２つの次元の各々で２回サブサンプリングされ、ＨＨ、ＨＬ、ＬＨおよびＬＬサブバンドの組を発生する。このサブサンプリングは３回のサブサンプリングを使用する。
【００２１】
図３に示されているようなサブバンドのアレイを生成するように、再帰的に行われる。実際には４回以上のサブサンプリングを利用することが好ましい。サブバンド間のペアレントとチャイルドの従属性は、ペアレントノードのサブバンドからチャイルドノードのサブバンドを指している矢印のように示される。最低周波数サブバンドは左側頂部ＬＬ３にあり、最高周波数サブバンドは右側底部ＨＨ１にある。本例ではすべてのチャイルドノードは１つのペアレントを有する。サブバンド分解の詳細な説明は、Ｊ．Ｍ．シャピロ著「ウェーブレット係数のゼロツリーを使用した埋込み画像符号化」、信号処理に関するＩＥＥＥトランザクション、第４１巻、第１２号、３４４５〜６２ページ、１９９３年１２月に記載されている。
【００２２】
図４は、サブサンプリングされた画像の３世代にわたるペアレントとチャイルドとの関係を示す。１つのペアレントノード４００は４つのチャイルドノード４０２を有し、このチャイルドノードは４回のサンプリング、すなわち２つの次元の各々で２回サンプリングした画像内の同じ領域に対応する。各チャイルドノード４０２は、更に４回サブサンプリングされた４つの対応する次世代のチャイルドノード４０４を有する。ペアレントノードをそのチャイルドおよびグランドチャイルドに関連づける関係、すなわちデータ構造はウェーブレットツリーである。低−低サブバンドにおける各ペルまたはピクセルは、これに関連したツリーを有することに留意すべきである。更に低−低サブバンドから延びた複数のツリーは、当該技術分野ではその画像に対するウェーブレットツリーと一般に称される。本明細書ではこのような命名法にも従うものとする。
【００２３】
図１および２に示されるように、量子化器１１０は（ステップ２１０にて）「デプスファースト」パターンでウェーブレットツリーの係数を量子化する。このデプスファーストパターンは従来の符号化システムがすべてのサブバンドを横断する変更されたブレドスファーストパターンでウェーブレットツリーを横断する、すなわちすべてのペアレントノードを量子化し、次にすべてのチャイルドを量子化し、次にすべてのグランドチャイルド等を量子化する、従来の符号化システムとかなり異なっている。これと対照的に、本発明の方法は「デプスファースト」順序で低−低サブバンド（ＬＬ３）内のルートからチャイルドを通る順序で、各ツリーを横断する。
【００２４】
図５は、各ツリーを横断するのに使用されるデプスファーストパターンを示す。例えば、本発明のデプスファーストプロセスはＬＬ３内のノード５００で始まり、次に、太字で表示された経路を通り、サブバンドＬＨ３内のノード５０２に進み、次に、サブバンドＬＨ２内のノード５０４に進む。デプスファースト横断プロセスはノード５０４からサブバンドＬＨ１内のノード５０６、５０８、５１０および５１２に連続して進む。すなわちノード５０４のチャイルドのすべてを通り、５０４のシブリング（兄弟）（５１４、５２４、５３４）まで続き、ここで次のシブリングおよびそれらのチャイルドまで各ジブリングの４つのチャイルドを横断する。ツリーのこのような全ブランチを横断すると、横断プロセスはノード５００の別のチャイルドノード、例えばノード５４４に進む。デプスファースト横断プロセスはこのノードからノード５４６、５４８、５５０、５５２および５５４に進み、次にノード５５６等に進む。
【００２５】
各ブランチを横断する際には、係数は離散値に量子化される。本発明では任意の量子化方法を使用できる。この量子化方法は正の値、負の値またはゼロの値のいずれかを意味する離散値に対し、連続する係数値をマッピングする。要するに、デプスファーストスキャンパターンでは、ペアレント５０４から後であって、かつ隣接するペアレント５１４、５２４および５３４のいずれかまでにチャイルド５０６、５０８、５１０および５１２がスキャンされる。このように次の隣接する空間位置の係数がスキャンされる前に、ペアレント５００からチャイルド５０２、更にグランドチャイルド５０４への周波数が高くなる順に、所定の空間位置を示すすべての係数がスキャンされる。
【００２６】
デプスファーストスキャンパターンのこれまでの説明は、「トップダウンパターン」として説明したが、デプスファーストスキャンパターンは底部からのスキャンも含む。このように、ツリーの「リーブ（葉）」（最も底部にあるノード）からスタートしてツリーを上に進むことによっても、量子化を行うことができる。
【００２７】
図５の例を参照すると、「ボトムアップ」パターンでは、まずノード５０６、５０８、５１０および５１２を量子化し、次にノード５０４を量子化し、更にツリーを上に移動して、最後に５００を量子化する。一旦、これが完了すると、量子化プロセスは別のツリー、更に別のツリーを量子化し、すべてのツリー内のすべてのノードが量子化されるまで量子化を続ける。後に説明するように、トップダウンパターンよりもボトムアップパターンを使うほうが、本発明はより効率的に実施できる。
【００２８】
このようなデプスファーストスキャンパターンを容易にするために、本発明は「ウェーブレットブロック」を形成するように、各ウェーブレットツリーの量子化された係数を再編成する。図１および２に示されるように、この再編成は量子化を行う前に（ステップ２０６で）ウェーブレットツリー再編成器１０８で行われる。
【００２９】
図６は、本発明によって発生されるウェーブレットブロック６０４を略図で示す。本発明はウェーブレットツリー６０２内の低−低バンド６０６（ＬＬ３）内のピクセル６００から延びるツリー６０２を、ウェーブレットブロック６０４にマッピングする。画像フレーム６０８の各ウェーブレットブロック６０４は、フレーム内のブロックの空間位置におけるフレームを示すすべてのスケールおよび方向の係数を含む。再編成は、係数のメモリ位置をウェーブレットブロックを構成する新しいメモリ位置に物理的に再マッピングすることによって行われる。このように、連続するアドレス位置に所定のウェーブレットブロックのすべての係数を記憶する。これと異なり、係数を物理的に配列し直さず、むしろ仮想メモリに再マッピングすることもできる。従って、物理的メモリへのインデックスが作成され、ここでインデックス（仮想メモリ）はウェーブレットブロックに配列されるメモリ位置を有する。インデックスへアクセスするごとに、インデックスへのアドレスは係数を記憶する物理的メモリ位置にマッピングされる。従って、仮想メモリ方法により、メモリ内の係数を物理的に配列し直すことなく、ウェーブレットブロックの利点を活用できる。
【００３０】
デプスファーストスキャンパターンを使用することにより、各ウェーブレットブロックの係数を量子化するために、各ウェーブレットブロックを完全にスキャンし、その後、次のブロックをスキャンし、このような動作を次々に繰り返す。例えばブロック６１０を完全にスキャンし、次にウェーブレットブロックのフレームを通過するラスタースキャンのパターンでブロック６１２、次にブロック６１４等をスキャンする。ブロックの順序の決定はラスタースキャンパターンにする必要はなく、アプリケーションが求める任意の順序とすることができる。このような順序には所定のオブジェクトに対応するブロックをスキャンし、符号化し、次に他のオブジェクトをスキャンし、符号化するような、オブジェクトに基づく順序づけを含む。連続するメモリアドレスに全ブロックが位置するので、所定のブロックに対する最初または最終メモリ入力のいずれかを選択し、昇順または降順で、すべての他のアドレスにアクセスすることにより、トップダウンパターンまたはボトムアップパターンでブロックを容易にスキャンできる。
【００３１】
重要なことに、かかる再編成によりフレーム内の空間的位置に基づく、異なる量子化器のスケールを各ウェーブレットブロックに指定できる。これにより係数の空間的位置に対し、および／または係数によって表現される周波数バンドに従い、量子化器１１０の独特の割り当てが可能となる。このように画像の中心または画像内の所定のオブジェクトをエッジよりもより正確に量子化できるよう、画像内で量子化器のスケールを変えることができる。同様に、より高い周波数（またはその内容に対して、より低い周波数、中間周波数、種々の周波数バンド等）を他の周波数と異なるスケールを使って量子化できるように、量子化器のスケールを周波数に従属させることができる。
【００３２】
特定のアプリケーション、例えばビデオフォン（テレビ電話）では、バックグラウンドオブジェクト、例えば発呼者の頭部および肩を、バックグラウンドオブジェクトよりもより正確に量子化できるように選択する。従って、バックグラウンド情報をより低い精度で符号化しながら、重要な情報を正確に符号化し、伝送する。ウェーブレットブロックの使用によりフォアグラウンド情報とバックグラウンド情報の二通りに分けた符号化を容易にできる。正確な符号化ができるようにある領域を選択すると、本発明によれば、より正確な符号化を必要とするブロックにフラグを立てることができる。このように、量子化器はフラグが立てられていないブロックで使用される量子化ステップよりも、より細かい量子化ステップを使用して、このフラグを立てたブロックを量子化する。
【００３３】
ウェーブレットブロックは本発明を実施するために直感的なデータ構造を形成するが、本発明の符号化器１００を実現するのに、ウェーブレットブロックを使用する必要はない。後述するように、本発明の改良されたツリー横断プロセスおよび改良された符号化技術と組み合わせて、従来のツリー構造を使用できる。このように図１および２は、それぞれ再編成器およびこれに関連する機能をそれぞれバイパスするパス１０６およびパス２０８を設けることにより再編成器を任意選択するような性質をもたせることを示す。
【００３４】
量子化後、ツリーの各ノードでは量子化された係数がゼロ値または非ゼロ値のいずれかを示す。ノードにおける係数がゼロでかつそのディセンダントがゼロツリーを形成すれば、すなわち全てのディセンダントノードはゼロ値を有するならば、常にゼロツリーが存在する。各ツリーをデプスファースト方法で再びスキャンすることより、ウェーブレットの量子化された係数は効率的に符号化される。従って、シンボル指定器１１２はツリーを横断し、ノードの量子化された値のみならず、各ノードのディセンダントの量子化された値に応じて特定のシンボルを各ノードに割り当てることによって（ステップ２１２にて）作動する。
【００３５】
より詳細に説明すれば、各ノードでは本発明の方法は３つのシンボル、すなわちＺＥＲＯＴＲＥＥ　ＲＯＯＴ、ＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴおよびＶＡＬＵＥのうちの１つを指定する。ＺＥＲＯＴＲＥＥ　ＲＯＯＴはゼロツリーのルートである係数を表示する。シンボルを割り当てるスキャンを行った後は、ツリー内のすべての係数はゼロの値を有していることが判っているので、これ以上、ゼロツリーをスキャンする必要はない。ＶＡＬＵＥＤＺＥＲＯＴＲＥＥ　ＲＯＯＴは係数が非ゼロ値を有し、４つのすべてのチャイルドがＺＥＲＯＴＲＥＥＲＯＯＴであるノードである。このツリーの符号化スキャンは、このノードよりも下に進むことはない。ＶＡＬＵＥシンボルはツリーに沿ったどこかの位置に非ゼロを有するディセンダントをもつ、ゼロまたは非ゼロの値を有する係数を識別するシンボルである。
【００３６】
効率的に量子化したツリーをスキャンし、シンボルをノードに指定するため、量子化器はシンボル指定器と共に作動する。図７はゼロツリーの係数を量子化するのに使用される量子化ルーチン７００の詳細なフローチャートを示し、図８は、量子化された係数の値を表現するためにシンボル値を指定するためのシンボル指定ルーチン８００の詳細なフローチャートを示す。
【００３７】
ルーチン７００ではブロック７０２で開始し、ステップ７０４に進み、ここでウェーブレットツリー内のノードから係数値を抽出する。後述するように、この量子化ルーチンは、ボトムアップ、デプスファーストパターンでウェーブレットツリーをスキャンするものである。従って、最高周波数のサブバンド内に常に第１アドレスが存在し、ルーチンを通る各繰り返しによりルーチンは次第にツリーの上方、つまり低周波数サブバンドに進む。量子化された値が生成される際、ルーチンはチャイルドノードの量子化値が値をもつかゼロかを記憶しておく。ステップ７０６でルーチンは抽出された係数値を正の値、負の値またはゼロの値に量子化する。ステップ７０８では直前に量子化された係数値に関連したノードに対し、仮のシンボル値でマークマップが更新される。このマークマップシンボルはチャイルドノードの値のみならず、現在ノードの値によって決まる。スキャンはボトムアップで行われるので、マークマップはノードがＺＥＲＯＴＲＥＥ　ＲＯＯＴであるかどうかを現時点では最終的に指示できないことに留意されたい。従って、すべてのノードに仮のシンボル値が指定された後に、最終的なシンボル値を指定するように、ツリーは再びトップダウンパターンでスキャンされる。このマークマップは量子化ルーチン７００によって満たされたウェーブレットツリーノードのインデックスである。
【００３８】
マークマップ内の各アドレスではルーチンは仮のシンボル、すなわち潜在的なＶＡＬＵＥ、潜在的なＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴまたは潜在的なＺＥＲＯＴＲＥＥ　ＲＯＯＴを記憶する。量子化された係数値がある値を有する場合、その係数に対するマークマップ位置には潜在的なＶＡＬＵＥシンボルがマークされる。量子化された係数値がゼロ値であり、そのノードのチャイルドのすべてがゼロ値であれば、マークマップ位置に潜在的なＺＥＲＯＴＲＥＥ　ＲＯＯＴがマークされる。最後に、量子化された値がある値を有し、それらのチャイルドがすべてゼロ値であれば、そのマークマップ位置には潜在的なＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴがマークされる。
【００３９】
ステップ７１０ではルーチンはツリー内のすべてのノードの量子化が完了したかどうかを問い合わせる。この問い合わせに対する回答が否定的であれば、ルーチンはステップ７１２に進み、ここで量子化のためにツリー内の新しい（次の）ノードが選択される。次にルーチンはステップ７０４にリターンする。ステップ７１０における問い合わせに対する回答が肯定的であれば、ルーチンはステップ７１４まで進む。このステップ７１４でルーチンはすべてのツリーの量子化が完了したかどうかを問い合わせる。
【００４０】
問い合わせに対する回答が否定的であれば、ルーチンはステップ７１６で新しい（次の）ツリーまたは量子化を選択する。ステップ７１４における問い合わせに対する回答が肯定的であれば、ルーチンはステップ７１８に進む。ルーチン７００におけるこのポイントでは、すべてのツリーにおけるすべてのノードは量子化されており、仮のシンボルが指定さられている。ステップ７１８ではルーチン７００は図８のシンボル指定ルーチン８００をコールする。シンボルが指定された後、ルーチン７００はブロック７２０で終了する。
【００４１】
ルーチン８００はツリーをトップダウンパターン、すなわちルートからリーブへスキャンする。しかしながらＺＥＲＯＴＲＥＥ　ＲＯＯＴまたはＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴが発生するごとにツリーは除かれているので、ルーチンはすべてのノードにアクセスする必要はない。より詳細に説明すれば、ルーチン８００はステップ８０２に入り、ステップ８０４にすすむ。ステップ８０４ではルーチンは量子化された係数のツリーから量子化された係数を抽出する。ステップ８０６では、ルーチンは抽出された係数に対応するマークマップ内の仮のシンボルを抽出する。ルーチンはステップ８０８で仮のシンボルが潜在的なＺＥＲＯＴＲＥＥ　ＲＯＯＴであるかどうかを問い合わせる。この問い合わせに対する回答が肯定的であれば、ルーチンはステップ８１０でＺＥＲＯＴＲＥＥ　ＲＯＯＴシンボルをノードに指定する。次にステップ８１２で、ルーチンはツリーを除く。すなわちルーチンは定義によりすべてのノードがゼロ値を有しているので、このＺＥＲＯＴＲＥＥ　ＲＯＯＴノードよりも下のすべてのノードを無視する。
【００４２】
ルーチンはステップ８２０ですべてのノードが選択されたかどうかを問い合わせる。ステップ８２０における問い合わせに対する回答が否定的であれば、ルーチンはＮＯパスに沿ってステップ８１４に進む。ステップ８１４ではトップダウンのデプスファーストスキャンを行うよう、除いたブランチをスキップした後にツリー内の次のノードを選択する。
【００４３】
ステップ８０８における問い合わせに対する回答が否定的であれば、ルーチンはＮＯパスに沿ってステップ８１６に進む。このステップ８１６ではルーチンはマークマップが潜在的なＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴの潜在的シンボルを含むかどうかを問い合わせる。ステップ８１６における問い合わせに対する回答が肯定的であれば、ルーチンはステップ８２２でＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴシンボルをノードに指定し、非ゼロ値のリストに値を入れて、ステップ８２４でツリーを除く。ルーチンはステップ８２０ですべてのノードの選択が完了したかどうかを問い合わせる。ステップ８２０における問い合わせに対する回答が否定的であれば、ルーチンはステップ８１４に進む。次にルーチンはステップ８１４で除かれたブランチをスキップしながらシンボル指定のための次のノードを選択する。
【００４４】
ステップ８１６における問い合わせに対する回答が否定的であれば、ルーチンはステップ８１８においてＶＡＬＵＥシンボルをノードに指定し、値ゼロを含む値のリストに値を置く。ルーチンはステップ８２０ですべてのノードの選択が完了したかどうかを問い合わせる。ステップ８２０における問い合わせに対する回答が否定的であれば、ルーチンはステップ８１４に進む。次にルーチンはステップ８１４でシンボル指定のために次のノードを選択する。
この指定ルーチンはすべてのノードにシンボルが指定されるまで続く。従って、ステップ８２０における問い合わせに対する回答が肯定的であれば、ルーチンはステップ８２６に進み、ここでルーチン８００は終了するか、またはルーチン７００にリターンする。
【００４５】
ステップ２１４では、エントロピー符号化器１１４、例えば従来の算術符号
化器を使ってシンボルおよび値が符号化される。この符号化を行う１つの可能な方法は次のとおりである。シンボルは３シンボルアルファベットを使って符号化される。ＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴシンボルに１：１に対応する非ゼロ値のリストは、値ゼロを含まないアルファベットを使用して符号化される。ＶＡＬＵＥシンボルに１：１に対応する残りの係数は値ゼロを含むアルファベットを使って符号化される。スキャンで到達したチャイルドを有しないリーフにある、すべてのノードに対しては、ルートシンボルを用いることはできない。従って、このノードに対するシンボルを符号化せず、ゼロの値を含むアルファベットを使用して係数を符号化することにより、いくつかのビットを節約できる。シンボルに対する３シンボル符号化アルファベットおよび値に対するマルチシンボルアルファベットを使用する図示された符号化器は、ウィッテン外著「データ圧縮のための算術的符号化」、Ｃｏｍｍ　ｏｆ　ｔｈｅ　ＡＣＭ、第３０巻、第６号、５２０〜５４０ページ（１９８７年６月）に開示された符号化器に従う。実際に当業者であれば、指定されたシンボルに従って係数の値（またはその値の表現）を符号化するだけで、本発明を変更できることが理解できよう。すなわち係数の重要性を表示するシンボルを符号化することなく、係数の値だけを符号化する。
【００４６】
符号化器１００は（ステップ２１６にて）ポート１１６に符号化された出力画像を生成する。本発明を利用することにより、ウェーブレットツリーの各ノードにおける３つのシンボルのうちの１つと、係数値を符号化するためのビットを使用することにより、画像は高速かつ効率的に符号化される。
【００４７】
本発明の複数の別の実施例は、画像或いはビデオのベクトルまたはオブジェクトゼロツリー符号化に本符号化手法を適用する。すなわち量子化されたウェーブレット係数の量子化およびゼロツリーエントロピー符号化を行うベクトル（またはオブジェクト）ゼロツリー符号化の概念に、ウェーブレット変換を利用する本符号化手法が適用される。本発明のベクトルまたはオブジェクトゼロツリー符号化実施例の各々は、画像またはビデオレジデュアル（残余分）に対するウェーブレット係数の符号化のために、ゼロツリーを使ってベクトルまたはオブジェクトアプローチを構成する。これに関しては各ウェーブレットツリーの各ノードは単一係数ではなく、係数のリスト（ベクトル）である。ツリーノードはスキャンされ、係数が量子化され、ベクトルゼロツリーエントロピー符号化と称される方法を使ってシンボルエントロピーがすべて符号化される。
【００４８】
これら種々のベクトルまたはオブジェクトゼロツリー符号化実施例は、２つのカテゴリー、すなわちスカラーウェーブレット変換と、その後にベクトル（またはオブジェクト）グループ分けするカテゴリーまたはベクトル（またはオブジェクト）グループ分け、およびその後にベクトルウェーブレット変換を行うカテゴリーに分けられる。すなわち画像、ビデオフレームまたは動き補償されたビデオレジデュアル（残余分）フレームは、まずスカラーウェーブレット変換またはベクトルウェーブレット変換される。図１１〜１２は、第１カテゴリーを示し、ここではまずスカラーウェーブレットを計算し、次に変換後、ウェーブレット係数をベクトルまたはオブジェクトにグループ分けする。これと対照的に、図９〜１０は、第２カテゴリーを示し、ここでは入力信号をベクトルとしてグループ分けし、ベクトル−ウェーブレット変換を行い、ベクトルとして出力を生成する。いずれのケースにおいても、結果をウェーブレット係数のベクトルまたはオブジェクトのフレームとして見ることができる。
【００４９】
要約すれば、発明の２つの実施例（図９および１０）では、ベクトルは画像またはビデオピクセル、またはレジデュアルの二次元マトリックスの固定されたタイル（ｔｉｌｉｎｇ）によって定義される。そして計算されるウェーブレット変換はベクトルウェーブレット変換である。次にベクトル量子化またはスカラー量子化のいずれも、符号化された出力画像を生成するように、ベクトルゼロツリーエントロピー符号化と組み合わされる。
【００５０】
本発明の別の４つの実施例（図１１および１２）では、スカラーウェーブレット変換が計算され、次に任意のサイズの最も粗いスケールまたはオブジェクトにおけるウェーブレット係数の二次元マトリックスの固定されたタイルによって、いずれかのベクトルが定義され、セグメント化アルゴリズムによって形状を決定する（すなわち２つの実施例を作成する）。次に、ベクトルまたはオブジェクトはベクトルゼロツリーエントロピー符号化と組み合わされて、ベクトル量子化またはスカラー量子化され、符号化された出力画像を生成する（すなわち４つの実施例に対する別の２つの実施例を生じる）。ベクトルウェーブレットの一形態については、Ｗ．リーおよびＹ．Ｑ．チャン著「画像およびビデオ圧縮のためのベクトルベースの信号処理および量子化」（ＩＥＥＥの議事録第８３巻３１７〜３３５ページ、１９９５年２月）に開示されている。
【００５１】
図１３はベクトルウェーブレットの一例を示す。画像またはビデオレジデュアルのベクトルウェーブレットは画像またはビデオレジデュアルの隣接するサンプルをベクトルを作るためにグループ化し、ベクトルを形成し、次にこれらベクトルに対しウェーブレット変換を行う変換である。ベクトルウェーブレット変換は次のステップで計算される。すなわち空間的にずれたフレームを表現する信号の多数のサブサンプリングされたフレームを得るようにフレームをサブサンプリングするステップと、離散ウェーブレット変換によりサブサンプリングされたフレームの各々を変換し、ウェーブレット変換係数を表現する信号の対応する多数のフレームを得るステップと、係数を表現する信号のそれぞれのフレームの対応する係数表現信号からベクトル表現信号を形成するステップによって計算される。
【００５２】
すなわちフレーム（入力画像）１３０２は、二次元の多相成分となるように分解される。各多相成分は４つのデルタ関数１３０４１〜１３０４４によって示されるような、元のフレームの空間的にずれたフレームである。次に各空間的にずれたフレームを４回のサブサンプリングでサブサンプルする。すなわちサブサンプラー１３０６により２つの次元の各々で２回サブサンプリングし、多相成分を生成する。次に、各多相成分に対しウェーブレット変換１３０８を適用し、同じインデックスをもつ各ウェーブレット変換された成分に対し１つずつ変換係数をグループ分けすることによりベクトルを形成する。このように、ｍ×ｎピクセルのベクトルは、ｍ×ｎ係数のベクトル１３１０に変換される。
ベクトルウェーブレット変換は多数の重なったフレームとしても見ることができ、各ベクトルまたはオブジェクトは同一のインデックスを共有する各フレームからの１つの係数から構成される。フレームの数はベクトルの次元すなわちオブジェクトのサイズに等しい。
【００５３】
次に、図９〜１２を参照して種々の実施例について詳細に説明する。より詳細には、図１１〜１２はスカラーウェーブレット変換と、その後にベクトル（オブジェクト）グループ化を行う４つの実施例を示す。図１１および１２の符号化器は多くの類似性を有するので、番号を重ねて表示することにより種々の実施例を同時に説明する。
【００５４】
符号化器１１００（１２００）は、ウェーブレットツリー発生器１１０３（１２０３）と、ベクトルまたはオブジェクト編成器１１０４（１２０４）と、オプションのベクトル／オブジェクトウェーブレットツリー再編成器１１０８（１２０８）と、ベクトル量子化器１１１０（量子化後プロセッサ１２１１を備えたスカラー量子化器１２１０）と、シンボル指定器１１１２（１２１２）と、エントロピー符号化器１１１４（ベクトルエントロピー符号化器１２１４）とを含む。これら構成要素の各々はポート１１０２（１２０２）における入力画像をポート１１１６（１２１６）における符号化された出力画像に処理するように直列に接続されている。
【００５５】
ウェーブレットツリー発生器１１０３（１２０３）は、上で述べたように、入力画像１１０２（１２０２）の従来のウェーブレットツリー表現を生成するようにウェーブレット階層的サブバンド分解を行う。次に、ベクトルまたはオブジェクト編成器１１０４（１２０４）は、ウェーブレット変換の低−低バンドにおける隣接する係数の固定されたグループ分けによりベクトルを定める。オブジェクトは低−低バンドのウェーブレット係数にセグメント化アルゴリズムを用いることにより定められる。このセグメント化は完全であり、重なり合わないものと見なされる。従って、低−低バンドにおける各係数は唯一のベクトルまたはオブジェクトの要素である。パトリック・キャンベル・マクリーンにより１９９１年７月にマサチューセッツ工科大学のメディアアートおよび科学学部に提出されたマスター論文「構造化されたビデオ符号化」または１９９４年１１月１４日に出願された継続中の米国特許出願第０８／３３９，４９１号に開示されているように、本発明に対し、種々のセグメント化アルゴリズムを使用できる。
【００５６】
図１４〜１５を参照すると、次に細かいスケールでアウトライン１４０４（１５０４）を定めるようにアップサンプリングすることによりベクトル１４０２またはオブジェクト１５０２は、より高いバンドに伝播される。より粗いスケールと同様に同じサイズにベクトルおよび／またはオブジェクトを維持するために、アウトライン内の各ベクトルまたはオブジェクトの係数を図１４〜１５に示されるように４つのベクトル１４０６またはオブジェクト１５０６に再グループ分けする。より粗いスケールのベクトルまたはオブジェクトはベクトルまたはオブジェクトペアレントと称され、次に細かいスケールの４つのベクトルまたはオブジェクトはベクトルまたはオブジェクトチャイルドと称す。４つの多相成分１４０８（１５０８）を取ることにより、アウトラインから４つのベクトル／オブジェクトチャイルドが抽出される。このことは、アウトラインをシフトしてサブサンプリングすることに同じである。
【００５７】
図１４および１５にはそれぞれベクトルのペアレントとチャイルドの関係、およびオブジェクトのペアレントとチャイルドとの関係の例が示されている。これら関係式はベクトルまたはオブジェクトウェーブレットツリーを定める。
【００５８】
ベクトルまたはオブジェクトウェーブレットツリーはスカラーＺＴＥのウェーブレットツリーに類似するが、これらベクトルまたはオブジェクトウェーブレットツリーの各ノードには単一値の代わりにウェーブレット係数のベクトルがある点が異なっている。上記スカラーＺＴＥ符号化で行われているように、各ツリーは低−低バンド内のルートからチャイルドおよびグランドチャイルドを通るように、デプスファーストパターンで横断される。ノードが横断される際に現在の量子化仕様に従って係数が量子化される。この量子化はスカラー量子化器１２１０によりスカラー量子化のベクトルとして、またはベクトル量子化器１１１０による単一ベクトル量子化として行うことができる。アレン・ゲルショー外により「ベクトル量子化および信号圧縮」（クルワーアカデミックパブリッシャーズ、１９９２年）に開示されているように、種々のベクトル量子化技術を使用できる。
【００５９】
上記スカラーＺＴＥ符号化と同じように、図１６に示されているようなウェーブレットブロックを形成するのに、各ウェーブレットツリーの係数ベクトルを再編成することは有益である。デプスファーストスキャンパターンを容易にするために、本発明はウェーブレットブロック１６０４を形成するよう、各ウェーブレットツリーの量子化された係数をオプションで再編成できる。図１１および１２に示されるように、この再編成化は量子化前にベクトル／オブジェクトウェーブレットツリー再編成器１１０８（１２０８）内で行われる。この再編成はオプションであるので、図１１および１２の双方は再編成器およびそれに関連する機能をそれぞれバイパスするパス１１０６およびパス１２０６を設けることにより再編成器の任意選択性をもたせることを示す。
【００６０】
図１６は、本発明によって生成されるウェーブレットブロック１６０４を略図で示す。１つのフレームの各ウェーブレットブロック１６０４はペアレントからチャイルド、グランドチャイルドへと周波数が高まる順に編成されたブロックの空間位置におけるそのフレームを示すすべてのスケールおよび方向の係数ベクトルを含む。すなわち本発明は、ウェーブレットツリー１６０２内の低−低バンド１６０６（ＬＬ３）内のベクトル１６００から延びるツリー１６０２をウェーブレットブロック１６０４にマッピングする。かかる構造により、スカラー量子化の場合は量子化ファクター、またはベクトル量子化の場合はコードブックを、ブロックが空間的に位置する場所、すなわちブロックがフレーム内で何を表現しているかに従って各ブロックに適応させることが可能となっている。
【００６１】
デプスファーストスキャンパターンを使用することにより、各ウェーブレットブロックを完全にスキャンしてその係数ベクトルを量子化し、次に、次のブロックをスキャンし、このようなスキャンを次々に繰り返す。例えばブロック１６１０を完全にスキャンし、次にウェーブレットブロックのフレームを通してラスタースキャンパターンでブロック１６１２、次にブロック１６１４等をスキャンする。ブロックの順序はラスタースキャンパターンである必要はなく、アプリケーションが望む任意の順序とすることができる。
【００６２】
更に本発明は、ウェーブレット係数のベクトルの量子化を行うための２つの異なる方法を提供する。量子化は各ベクトルの各要素に対するスカラー量子化として実行してもよいし、各ベクトルに対するベクトル量子化として実行してもよい。各ツリーの各ノードでは、シンボル指定器１１１２（１２１２）はそのノードにおける量子化されたベクトルを特徴づけるためのシンボルを指定する。このシンボルおよび量子化された係数値は、算術符号化器のようなエントロピー符号化器１１１４（１２１４）を用いてすべて符号化される。
【００６３】
いずれかのタイプの量子化の後に、ノードにおける係数ベクトルがゼロベクトルであり、すべてのディセンダントがゼロツリーである場合にはゼロツリーが存在する。これらウェーブレットツリーはノードを表示するためのシンボルを指定し、更にゼロツリーの下のツリーを除くことにより効率的に表現され、符号化される。算術符号化器はウェーブレット係数ベクトルのツリーを忠実に再構成するために復号器が必要とするシンボルおよび値だけに最小のビット数を割り当てる。
【００６４】
本発明の一実施例（図１２に示されるような）は、ウェーブレット係数のベクトルの要素のスカラー量子化を利用する。量子化後、各ベクトルはすべてゼロの値、または１つ以上の非ゼロ値を含む。ツリーのノード毎にゼロベクトルが存在すれば、ベクトルゼロツリーが存在する。ベクトルゼロツリールートはベクトルゼロツリーのルートである。ベクトルゼロツリールートにおける係数ベクトルはゼロベクトルであり、ベクトルゼロツリールートのすべてのディセンダントはそれ自身、ベクトルゼロツリーのルートである。
【００６５】
ゼロツリールートではウェーブレットツリーを除くことができ、よって除かれた係数を符号化するのにビットは必要でないので、ゼロツリールートは重要である。従って、符号化の効率を高めるには量子化後のゼロツリーの数をできるだけ多くすることが望ましい。１つの方法は最終の再構成されたフレームには無視できる付加的歪みしか生じない時に、これをゼロベクトルに変えるよう「量子化後プロセッサ」１２１１（１０１１）を使用して、各ベクトルの（図１０および１２に示されるような）量子化後処理を実行することである。各ベクトルの大きさを計算し、この大きさが所定のスレッショルドよりも低い場合、ベクトルをゼロにセットする。
【００６６】
ベクトル要素のスカラー量子化を行い、適当な場合にベクトルをゼロベクトルにするような量子化後の処理を行った後に、スカラーＺＴＥ符号化と同じようなツリーノードのスキャンおよび分類を行う。各ノードにはＺＥＲＯＴＲＥＥ　ＲＯＯＴ、ＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥ　ＲＯＯＴおよびＶＡＬＵＥのうちの１つが指定される。これらシンボルはスカラーＺＴＥ符号化と同じ意味を有するが、ノードがベクトルであり、ゼロまたは非ゼロの分類はベクトル全体を示す点が異なっている。シンボルおよび値のテーブルを符号化するのに、エントロピー符号化が使用される。値のテーブルはスカラーＺＴＥ符号化と同じように構成される。値をエントロピー符号化するには、スカラーエントロピー符号化の代わりにベクトルエントロピー符号化を使用しなければならない。
【００６７】
本発明の一実施例（図１１に示されるような）はウェーブレット係数のベクトルのベクトル量子化を使用する。ベクトル量子化（ＶＱ）は成熟した技術分野であり、種々の形態の任意のＶＱを使用できる。上記のようにゼロツリールートの数を増し、これにより再構成されるフレームのひずみを大幅に増加しないようにすることが好ましい。この結果を得るには、スレッショルドよりも低い大きさのベクトルがゼロベクトルとして再構成されるインデックスにマッピングされるように、ＶＱがある形態のデッドゾーンを含むようにすることができる。
【００６８】
ベクトル量子化はツリーの各ノードにおけるベクトルを、そのノードに対する最良の再構成ベクトルを選択するベクトルのコードブックへのインデックスに置換する。ベクトル量子化後、スカラーＺＴＥ符号化と同じように、ツリーノードのスキャンおよび分類を行う。各ノードには３つのシンボル、すなわちＺＥＲＯＴＲＥＥＲＯＯＴ、ＶＡＬＵＥＤ　ＺＥＲＯＴＲＥＥおよびＶＡＬＵＥのうちの１つが指定される。これらシンボルはスカラーＺＴＥ符号化と同じ意味を有するが、ノードはコードブックへのインデックスであり、ゼロまたは非ゼロは各インデックスへのコードブックの入力を意味する点が異なる。シンボルおよびインデックスのテーブルを符号化するのに、エントロピー符号化器が使用される。インデックスのテーブルはスカラーＺＴＥ符号化と同じように構成される。
【００６９】
図９および１０は、ベクトルウェーブレット変換を使用する本発明の別の実施例を示す。図９の符号化器９００および図１０の符号化器１０００は、それぞれ図１１および１２の符号化器に類似するので、デバイス９０８〜９１４および１００８〜１０１４については説明しない。これらデバイスはデバイス１１０８〜１１１４および１２０８〜１２１４と同じ機能を奏するので、これらデバイスの説明はこれまでの説明と同じである。
【００７０】
しかしながら、符号化器９００および１０００は符号化器１１００および１２００と異なり、図１３を参照してこれまで述べたように、ベクトルウェーブレットツリー発生器９０４（１００４）と共にベクトル編成器９０３（１００３）を使用する。ベクトルウェーブレットツリーを発生した後に符号化器９００および１０００はそれぞれ符号化器１１００および１２００と同じように働く。
ベクトルまたはオブジェクトウェーブレット符号化はゼロツリーエントロピー（ＺＴＥ）符号化方法を含むが、この符号化は他の符号化方法、例えば埋込みゼロツリーウェーブレット（ＥＺＷ）アルゴリズムでも実行できることが、当業者には理解できよう。
【００７１】
以上で本発明の要旨を含む種々の実施例を詳細に示し、説明したが、当業者であればこれら要旨を含む他の多くの変形例を容易に思いつくことができよう。
【００７２】
【発明の効果】
ウェーブレット変換して得られた係数をベクトルとしてグループ分けし、各ベクトルの各々に１つのノードが対応するように、入力画像からウェーブレットツリーを生成し、前記ベクトルを編成する複数の係数を量子化し、前記ノードの各々にシンボルを指定し、前記シンボルおよび前記量子化された係数値を符号化するようにし、前記シンボルを対応するノードの量子化された係数値と各ノードのディセンダントの量子化された係数値に応じて指定するようにしたので、ウェーブレットツリーの処理速度を改善することができる。
【図面の簡単な説明】
【図１】本発明の画像符号化器のブロック図である。
【図２】図１に示された符号化器の符号化方法を示すフローチャートである。
【図３】ウェーブレットツリー内の３つのスケールに分解された画像におけるサブバンドのペアレントとチャイルドとの従属性を示す略図である。
【図４】サブサンプリングされた画像の３世代のペアレントとチャイルドとの関係を示す図である。
【図５】ウェーブレットツリーにおける種々のノードの相互関係の略図を示す。
【図６】ウェーブレットツリーのウェーブレットブロック表現を示す。
【図７】本発明によって実行される量子化ルーチンのフローチャートを示す。
【図８】本発明によって実行されるシンボル指示サブルーチンのフローチャートを示す。
【図９】ベクトル−ウェーブレット変換の一実施例のブロック図を示す。
【図１０】ベクトル−ウェーブレット変換の別の実施例のブロック図を示す。
【図１１】スカラーベクトル変換と、それに続いて行われるベクトルまたはオブジェクトグループ分けの一実施例のブロック図を示す。
【図１２】スカラーベクトル変換と、それに続いて行われるベクトルまたはオブジェクトグループ分けの別の実施例のブロック図を示す。
【図１３】ベクトルウェーブレットの一例を示す。
【図１４】ベクトルのペアレント−チャイルドの関係を示す。
【図１５】オブジェクトのペアレント−チャイルドとの関係を示す。
【図１６】“ウェーブレットブロック”を形成するための各ウェーブレットツリーの係数ベクトルの再編成を示す。
【図１】
2004032760.tif 000003
【図２】
2004032760.tif 000004
【図３】
2004032760.tif 000005
【図４】
2004032760.tif 000006
【図５】
2004032760.tif 000007
【図６】
2004032760.tif 000008
【図７】
2004032760.tif 000009
【図８】
2004032760.tif 000010
【図９】
2004032760.tif 000011
【図１０】
2004032760.tif 000012
【図１１】
2004032760.tif 000013
【図１２】
2004032760.tif 000014
【図１３】
2004032760.tif 000015
【図１４】
2004032760.tif 000016
【図１５】
2004032760.tif 000017
【図１６】
2004032760.tif 000018