JP3853758B2 - 画像符号化装置 - Google Patents

画像符号化装置 Download PDF

Info

Publication number
JP3853758B2
JP3853758B2 JP2003173649A JP2003173649A JP3853758B2 JP 3853758 B2 JP3853758 B2 JP 3853758B2 JP 2003173649 A JP2003173649 A JP 2003173649A JP 2003173649 A JP2003173649 A JP 2003173649A JP 3853758 B2 JP3853758 B2 JP 3853758B2
Authority
JP
Japan
Prior art keywords
wavelet
quantization
coefficient
tree
symbol
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2003173649A
Other languages
English (en)
Other versions
JP2004032760A (ja
Inventor
アンソニー マツーチ,ステファン
ソドガー,イラジ
ザン,ヤチン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of JP2004032760A publication Critical patent/JP2004032760A/ja
Application granted granted Critical
Publication of JP3853758B2 publication Critical patent/JP3853758B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/647Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、画像符号化装置に関し、より詳細には、ウェーブレットベースの符号化技術を利用した画像符号化装置に関する。
【0002】
【従来の技術】
データ圧縮システムは、最小の数のビットによりできるだけ正確に情報を表現し、情報記憶システムまたは伝送システム内にそれぞれ記憶し、または伝送すべきデータ量を最小にするのに有効である。当該技術分野で使用される圧縮の主な手段の1つは、元のデータと比較した際に伸長されたデータの画質に大きな影響を与えることなく、元のデータから冗長な情報を除いている。
【0003】
音響学、音声および信号処理に関する国際会議の議事録、カリフォルニア州サンフランシスコ、1992年3月、第IV巻、657〜660ページ(非特許文献1)には、例えば、かかる圧縮技術が記載されており、この文献ではゼロツリーを含む階層的な連続近似エントロピー符号化量子化器によって引き継がれる階層的サブバンド分解、またはウェーブレット変換を行う信号圧縮システムが開示されている。マルチ解像度階層サブバンド表現を使用する信号データの表現は、バート外著、通信に関するIEEEトランザクション、Vol Com-31、No.4、1983年4月、533ページ(非特許文献2)に開示されている。
【0004】
臨界サンプリングされる直交ミラーフィルタ(QMF:Quadroture-Mirror Filter)サブバンド表現としても知られるウェーブレットピラミッドは、画像の特殊なタイプのマルチ解像度階層サブバンド表現である。ウェーブレットピラミッドはペントランド外著、データ圧縮会議議事録1991年4月8日〜11日、ユタ州スノーバード(非特許文献3)に開示されている。QMFサブバンドピラミッドは「サブバンド画像符号化」、J.W.ウッズ編、クルーエル・アカデミック・パブリッシャー、1991年(非特許文献4)、およびI.ドーベッチーズ著「ウェーブレットに関する10講」、工業および応用数学学会(SIAM)ペンシルバニア州フィラデルフィア、1992年(非特許文献5)に記載されている。
【0005】
階層的サブバンド分解としても知られるウェーブレット変換では、かかる分解によってソース画像の階層的マルチスケール表現が得られるので、この変換は、最近では低ビットレートの画像圧縮に使用されている。このウェーブレット変換は低ビットレート画像の符号化の重要な局面、すなわち変換係数の重要マップとしても知られる非ゼロ値の位置を表現する二進マップ(ウェーブレットツリー)の符号化に使用される。低ビットレート、すなわち1ビット/ペル未満のビットレートを得るために、スカラー量子化と、その後にエントロピー符号化を行う際は、量子化後の最も生じやすいシンボルすなわちゼロシンボルの確率は極めて大きいはずである。一般に、重要なマップを符号化する際にビットバジェットの大部分を消費するはずである。従って、重要マップの符号化を大きく改善すれば、記憶または伝送のための情報圧縮を大きく改善できる。
【0006】
このような目標を達成するために、ゼロツリーと称される新しい構造が開発された。ウェーブレット係数が所定のスレッショルドTに対して重要でないと言われるのは、係数がT以下の大きさを有する場合である。このゼロツリーは粗いスケールでのウェーブレット係数が所定のスレッショルドTに対して重要でなければ、より細かいスケールでの同じ空間位置における同じ方向性をもつウェーブレット係数のすべてはTに関して重要とならない可能性が高いという仮説に基づくものである。経験的な証拠は、このような仮説は真である可能性が高いことを示唆している。
【0007】
より詳細に説明すれば、階層的サブバンドシステムでは最高周波数のサブバンドを除き、所定のスケールのどの係数もウェーブレットと称される構造に従う同じ方向の、次に細かいスケールでの係数の組(セット)に関連づけできる。最も粗いスケールの係数をペアレント(親)ノードと称し、同じ方向の、次に細かいスケールの同一の空間的または時間的位置に対応するすべての係数をチャイルド(子)ノードと称す。所定のペアレントノードに対し、同一位置に対応する同じ方向の、より細かいすべてのスケールのすべての係数の組をディセンダント(子孫)と称す。同様に、所定のチャイルドノードに対し、同じ位置に対応する同じ方向の、より粗い全てのスケールの係数の組をアンセスタ(先祖)と称す。最低周波数サブバンドを除き、すべてのペアレントノードは4つのチャイルドノードを有し、最低周波数サブバンドでは、各ペアレントノードが3つのチャイルドノードを有するように、ペアレントとチャイルドとの関係が定義される。
【0008】
ノードは分解のスケールの最も粗いレベルから最も細かいレベルまでの順序でスキャンされる。このことは、ペアレントおよびそのペアレントと同じスケールのすべてのサブバンドにおける他のすべてのペアレントがスキャンされるまで、チャイルドノードはスキャンされないことを意味している。このようなスキャンは、二次元データセットのウェーブレット変換の係数によって定義されるすべてのウェーブレットツリーを横断するように実行される、ある種の変形されたブレドスファースト(breadth-first)あるいはサブバンドごとの横断である。
【0009】
係数が重要であるかどうかを判別するスレッショルドレベルを仮定すると、
1)ノードにおける係数が重要でない大きさを有する場合、
2)ノードがルートのディセンダントでない場合、すなわちノードを、より粗いスケールから完全には予想できない場合、および、
3)ディセンダントのすべてが重要でない場合に、
このノードをZEROTREE ROOTと称する。ZEROTREE ROOTは、より細かいスケールの係数の非重要性を完全に予測できることを表示する特別なシンボルで符号化される。二進の重要性マップを効率的に符号化するために、次の4つのシンボル、すなわちZEROTREE ROOT、ISOLATED ZEROおよび2つの非ゼロシンボル、すなわちPOSITIVE SIGNIFICANTとNEGATIVE SIGNIFICANTがエントロピー符号化される。
【0010】
本明細書で参考例として引用する、1995年5月2日に発行された米国特許第5,412,741号(特許文献1)は、高い圧縮度で情報を符号化するための装置および方法を開示している。この装置は従来の技術よりも、より効率的にウェーブレット係数のゼロツリー符号化を用いている。この装置のキーとなる操作は、スキャンすべき係数インデックスのリストをダイナミックに発生し、このダイナミックに発生されたリストがシンボルを符号化しなければならない係数インデックスしか含まないようにすることである。このことは、係数インデックスの統計リストを使用し、
a)シンボルを符号化すべきかどうか、または、
b)シンボルを完全に予測できるかどうかを見るために、各係数を別々にチェックしなければならない従来技術よりも、劇的な改良となっている。
【0011】
上記米国特許第5,412,741号(特許文献1)に開示された装置は、画像のウェーブレット変換を行うステップと、ウェーブレット係数のゼロツリーマップを形成するステップと、変換の最も粗いレベルからの初期主要リスト上の重要な係数およびペアレントの係数が重要であると判った時に主要リストにインデックスが追加された係数のチャイルドを符号化するステップと、スレッショルドを下げるステップと、スレッショルドを小さくし符号化された係数の精度を高めるよう、重要な係数の予想値を細かくするステップと、小さくしたスレッショルドで改定された主要リストをスキャンするように循環する工程とから成る、情報を符号化するための方法を使用している。
【0012】
【特許文献1】
米国特許第5,412,741号
【非特許文献1】
音響学、音声および信号処理に関する国際会議の議事録、カリフォルニア州サンフランシスコ、1992年3月、第IV巻、657〜660ページ
【非特許文献2】
バート外著、通信に関するIEEEトランザクション、Vol Com-31 、No.4、1983年4月、533ページ
【非特許文献3】
ペントランド外著、データ圧縮会議議事録1991年4月8日〜11日、ユタ州スノーバード
【非特許文献4】
「サブバンド画像符号化」、J.W.ウッズ編、クルーエル・アカデミック・パブリッシャー、1991年
【非特許文献5】
I.ドーベッチーズ著「ウェーブレットに関する10講」、工業および応用数学学会(SIAM)ペンシルバニア州フィラデルフィア、1992年
【0013】
【発明が解決しようとする課題】
上述のような繰り返しプロセスを行うために、上記米国特許第5,412,741号(特許文献1)の方法は、ウェーブレットツリーをサブバンドごとにスキャンすることによって実行されている。すなわち、すべてのペアレントノードを符号化し、次にすべてのチャイルドノードを符号化し、次にすべてのグランドチャイルド(ひ孫)ノードをスキャンし、次々にこのようなスキャンを行い、これらをビット平面ごとに符号化する。画像のウェーブレットツリー表現を通じて、このプロセスが繰り返されるにつれ、この装置はゼロツリーマップ内の4つのシンボルのうちの1つを符号化する。ウェーブレットツリーの処理速度の改善は利益をもたらす。
【0014】
従って、当該技術分野では、符号化をより効率的にし、処理を高速にするようなウェーブレットツリーのノードを分類し、符号化する改良された方法に対するニーズがある。
【0015】
【課題を解決するための手段】
本発明は、ウェーブレットに基づく符号化技術におけるゼロツリーを符号化する装置およびそれに付随する方法に関する。より詳細に説明すれば、本発明はゼロツリーを横断するためのデプスファースト(depth-first)パターンを使用する。すなわち次のブランチを横断する前にペアレントからチャイルド、次にグランドチャイルド等へとツリーの各ブランチを完全に横断する。ツリーの係数を量子化するだけでなく、量子化された係数にシンボルを指定するのに、このデプスファーストツリー横断パターンが使用される。更に、本発明は、各ノードに対し3つのシンボル、すなわちZEROTREE ROOT、VALUED ZEROTREE RO0TおよびVALUEのうちの1つを指定する。これら3つのシンボルおよび効率的なツリー横断パターンを使用することにより、本発明は従来技術よりもゼロツリーを符号化する上で、概ね、より効率的となっている。更にこの概念は、ベクトルゼロツリーの符号化にも実施できる。
【0016】
本発明の第1の技術手段は、ウェーブレット変換を利用して画像を符号化する画像符号化装置において、画像にウェーブレット変換を施してウェーブレット変換係数を生成するウェーブレット変換部と、該ウェーブレット変換部で生成されたウェーブレット変換係数であって、空間領域において同じ位置に存在する、ペアレント−チャイルド関係にあるウェーブレット変換係数からウェーブレットツリーを構成し、該構成されたウェーブレットツリーを用いて、ウェーブレットブロックをマッピングするウェーブレットブロック作成部と、該ウェーブレットブロック作成部でマッピングされたウェーブレットブロック内のウェーブレット変換係数を量子化する量子化部と、該量子化部で量子化された、ウェーブレットブロック内の符号化対象の量子化係数とその量子化係数のディセンダントの量子化係数が、ゼロ値であるか非ゼロ値であるかに応じて、特定のシンボルを前記符号化対象の量子化係数に割当てるシンボル割当て部と、該シンボル割当て部で割当てを行った前記符号化対象の量子化係数およびシンボルを、エントロピー符号化する符号化部とから構成され、前記量子化部は、ウェーブレット変換係数の低周波数成分から高周波数成分へと、デプスファースト順序で周波数の昇順でスキャンし、次のウェーブレットブロックをスキャンする前に符号化対象ウェーブレットブロック内のスキャンを行い、量子化処理を実行することを特徴とするものである。
【0017】
また、第2の技術手段は、第1の技術手段において、前記量子化部は、ウェーブレットブロック毎に量子化スケールを指定することによって、画像内の空間的位置に対して異なる量子化スケールを指定することを特徴とするものである。
第3の技術手段は、第1又は第2の技術手段において、前記シンボル割当て部は、符号化対象の量子化係数およびその量子化係数のディセンダントの量子化係数が全てゼロ値であることを示すシンボルを割当てることを特徴とするものである。
第4の技術手段は、第1又は第2の技術手段において、前記シンボル割当て部は、符号化対象の量子化係数が非ゼロ値であり、かつその量子化係数のディセンダントの量子化係数が全てゼロ値であることを示すシンボルを割当てることを特徴とするものである。
第5の技術手段は、第1又は第2の技術手段において、前記シンボル割当て部は、符号化対象の量子化係数のディセンダントの量子化係数に、非ゼロ値の係数が少なくとも1つ以上あることを示すシンボルを割当てることを特徴とするものである。
【0018】
【発明の実施の形態】
図1は、本発明の符号化器100のブロック図を示し、図2は図1の符号化器100の作動を示すフローチャートである。発明を最良に理解するには、読者は本発明の下記の説明を読みながら、同時に図1および2を参照されたい。発明の理解を容易にするために、異なる図面で共通する同一要素を表示するのに、可能な場合、同一参照番号を使用した。
【0019】
符号化器100はウェーブレットツリー発生器104と、オプションのウェーブレットツリー再編成器108と、量子化器110と、シンボル指定器112と、エントロピー符号化器114を含む。これら構成要素の各々はポート102における画像をポート116における符号化された出力画像にするよう、画像を処理するために、直列に接続されている。入力画像は一般に、イメージスキャナーまたはコンピュータのグラフィックシステムから作成できるようなピクセル化された(デジタル化された)フォトグラフィック画像である。しかしながら、この入力画像はビデオ符号化システムによって生成されるビデオ画像の一連のフレームまたは動き補償された残余(レジデュアル)フレーム内のフレームでもよい。一般に本発明は、任意の形態のデジタル化された画像またはその一部を処理するので、本発明の作動方法は一般にステップ202にて画像の入力、すなわち任意の形態の二次元データと共に開始する。
【0020】
ウェーブレットツリー発生器104は(ステップ204にて)ウェーブレット階層的サブバンド分解を実行し、入力画像の従来のウェーブレットツリー表現を生成する。かかる画像分解を行うために2つの次元のうちの各々で2回のサブサンプリングを使用して画像を高水平−高垂直(HH)、高水平−低垂直(HL)、低水平−高垂直(LH)および低水平−低垂直(LL)周波数サブバンドに分解する。LLサブバンドは更に2つの次元の各々で2回サブサンプリングされ、HH、HL、LHおよびLLサブバンドの組を発生する。このサブサンプリングは3回のサブサンプリングを使用する。
【0021】
図3に示されているようなサブバンドのアレイを生成するように、再帰的に行われる。実際には4回以上のサブサンプリングを利用することが好ましい。サブバンド間のペアレントとチャイルドの従属性は、ペアレントノードのサブバンドからチャイルドノードのサブバンドを指している矢印のように示される。最低周波数サブバンドは左側頂部LL3にあり、最高周波数サブバンドは右側底部HH1にある。本例ではすべてのチャイルドノードは1つのペアレントを有する。サブバンド分解の詳細な説明は、J.M.シャピロ著「ウェーブレット係数のゼロツリーを使用した埋込み画像符号化」、信号処理に関するIEEEトランザクション、第41巻、第12号、3445〜62ページ、1993年12月に記載されている。
【0022】
図4は、サブサンプリングされた画像の3世代にわたるペアレントとチャイルドとの関係を示す。1つのペアレントノード400は4つのチャイルドノード402を有し、このチャイルドノードは4回のサンプリング、すなわち2つの次元の各々で2回サンプリングした画像内の同じ領域に対応する。各チャイルドノード402は、更に4回サブサンプリングされた4つの対応する次世代のチャイルドノード404を有する。ペアレントノードをそのチャイルドおよびグランドチャイルドに関連づける関係、すなわちデータ構造はウェーブレットツリーである。低−低サブバンドにおける各ペルまたはピクセルは、これに関連したツリーを有することに留意すべきである。更に低−低サブバンドから延びた複数のツリーは、当該技術分野ではその画像に対するウェーブレットツリーと一般に称される。本明細書ではこのような命名法にも従うものとする。
【0023】
図1および2に示されるように、量子化器110は(ステップ210にて)「デプスファースト」パターンでウェーブレットツリーの係数を量子化する。このデプスファーストパターンは従来の符号化システムがすべてのサブバンドを横断する変更されたブレドスファーストパターンでウェーブレットツリーを横断する、すなわちすべてのペアレントノードを量子化し、次にすべてのチャイルドを量子化し、次にすべてのグランドチャイルド等を量子化する、従来の符号化システムとかなり異なっている。これと対照的に、本発明の方法は「デプスファースト」順序で低−低サブバンド(LL3)内のルートからチャイルドを通る順序で、各ツリーを横断する。
【0024】
図5は、各ツリーを横断するのに使用されるデプスファーストパターンを示す。例えば、本発明のデプスファーストプロセスはLL3内のノード500で始まり、次に、太字で表示された経路を通り、サブバンドLH3内のノード502に進み、次に、サブバンドLH2内のノード504に進む。デプスファースト横断プロセスはノード504からサブバンドLH1内のノード506、508、510および512に連続して進む。すなわちノード504のチャイルドのすべてを通り、504のシブリング(兄弟)(514、524、534)まで続き、ここで次のシブリングおよびそれらのチャイルドまで各ジブリングの4つのチャイルドを横断する。ツリーのこのような全ブランチを横断すると、横断プロセスはノード500の別のチャイルドノード、例えばノード544に進む。デプスファースト横断プロセスはこのノードからノード546、548、550、552および554に進み、次にノード556等に進む。
【0025】
各ブランチを横断する際には、係数は離散値に量子化される。本発明では任意の量子化方法を使用できる。この量子化方法は正の値、負の値またはゼロの値のいずれかを意味する離散値に対し、連続する係数値をマッピングする。要するに、デプスファーストスキャンパターンでは、ペアレント504から後であって、かつ隣接するペアレント514、524および534のいずれかまでにチャイルド506、508、510および512がスキャンされる。このように次の隣接する空間位置の係数がスキャンされる前に、ペアレント500からチャイルド502、更にグランドチャイルド504への周波数が高くなる順に、所定の空間位置を示すすべての係数がスキャンされる。
【0026】
デプスファーストスキャンパターンのこれまでの説明は、「トップダウンパターン」として説明したが、デプスファーストスキャンパターンは底部からのスキャンも含む。このように、ツリーの「リーブ(葉)」(最も底部にあるノード)からスタートしてツリーを上に進むことによっても、量子化を行うことができる。
【0027】
図5の例を参照すると、「ボトムアップ」パターンでは、まずノード506、508、510および512を量子化し、次にノード504を量子化し、更にツリーを上に移動して、最後に500を量子化する。一旦、これが完了すると、量子化プロセスは別のツリー、更に別のツリーを量子化し、すべてのツリー内のすべてのノードが量子化されるまで量子化を続ける。後に説明するように、トップダウンパターンよりもボトムアップパターンを使うほうが、本発明はより効率的に実施できる。
【0028】
このようなデプスファーストスキャンパターンを容易にするために、本発明は「ウェーブレットブロック」を形成するように、各ウェーブレットツリーの量子化された係数を再編成する。図1および2に示されるように、この再編成は量子化を行う前に(ステップ206で)ウェーブレットツリー再編成器108で行われる。
【0029】
図6は、本発明によって発生されるウェーブレットブロック604を略図で示す。本発明はウェーブレットツリー602内の低−低バンド606(LL3)内のピクセル600から延びるツリー602を、ウェーブレットブロック604にマッピングする。画像フレーム608の各ウェーブレットブロック604は、フレーム内のブロックの空間位置におけるフレームを示すすべてのスケールおよび方向の係数を含む。再編成は、係数のメモリ位置をウェーブレットブロックを構成する新しいメモリ位置に物理的に再マッピングすることによって行われる。このように、連続するアドレス位置に所定のウェーブレットブロックのすべての係数を記憶する。これと異なり、係数を物理的に配列し直さず、むしろ仮想メモリに再マッピングすることもできる。従って、物理的メモリへのインデックスが作成され、ここでインデックス(仮想メモリ)はウェーブレットブロックに配列されるメモリ位置を有する。インデックスへアクセスするごとに、インデックスへのアドレスは係数を記憶する物理的メモリ位置にマッピングされる。従って、仮想メモリ方法により、メモリ内の係数を物理的に配列し直すことなく、ウェーブレットブロックの利点を活用できる。
【0030】
デプスファーストスキャンパターンを使用することにより、各ウェーブレットブロックの係数を量子化するために、各ウェーブレットブロックを完全にスキャンし、その後、次のブロックをスキャンし、このような動作を次々に繰り返す。例えばブロック610を完全にスキャンし、次にウェーブレットブロックのフレームを通過するラスタースキャンのパターンでブロック612、次にブロック614等をスキャンする。ブロックの順序の決定はラスタースキャンパターンにする必要はなく、アプリケーションが求める任意の順序とすることができる。このような順序には所定のオブジェクトに対応するブロックをスキャンし、符号化し、次に他のオブジェクトをスキャンし、符号化するような、オブジェクトに基づく順序づけを含む。連続するメモリアドレスに全ブロックが位置するので、所定のブロックに対する最初または最終メモリ入力のいずれかを選択し、昇順または降順で、すべての他のアドレスにアクセスすることにより、トップダウンパターンまたはボトムアップパターンでブロックを容易にスキャンできる。
【0031】
重要なことに、かかる再編成によりフレーム内の空間的位置に基づく、異なる量子化器のスケールを各ウェーブレットブロックに指定できる。これにより係数の空間的位置に対し、および/または係数によって表現される周波数バンドに従い、量子化器110の独特の割り当てが可能となる。このように画像の中心または画像内の所定のオブジェクトをエッジよりもより正確に量子化できるよう、画像内で量子化器のスケールを変えることができる。同様に、より高い周波数(またはその内容に対して、より低い周波数、中間周波数、種々の周波数バンド等)を他の周波数と異なるスケールを使って量子化できるように、量子化器のスケールを周波数に従属させることができる。
【0032】
特定のアプリケーション、例えばビデオフォン(テレビ電話)では、バックグラウンドオブジェクト、例えば発呼者の頭部および肩を、バックグラウンドオブジェクトよりもより正確に量子化できるように選択する。従って、バックグラウンド情報をより低い精度で符号化しながら、重要な情報を正確に符号化し、伝送する。ウェーブレットブロックの使用によりフォアグラウンド情報とバックグラウンド情報の二通りに分けた符号化を容易にできる。正確な符号化ができるようにある領域を選択すると、本発明によれば、より正確な符号化を必要とするブロックにフラグを立てることができる。このように、量子化器はフラグが立てられていないブロックで使用される量子化ステップよりも、より細かい量子化ステップを使用して、このフラグを立てたブロックを量子化する。
【0033】
ウェーブレットブロックは本発明を実施するために直感的なデータ構造を形成するが、本発明の符号化器100を実現するのに、ウェーブレットブロックを使用する必要はない。後述するように、本発明の改良されたツリー横断プロセスおよび改良された符号化技術と組み合わせて、従来のツリー構造を使用できる。このように図1および2は、それぞれ再編成器およびこれに関連する機能をそれぞれバイパスするパス106およびパス208を設けることにより再編成器を任意選択するような性質をもたせることを示す。
【0034】
量子化後、ツリーの各ノードでは量子化された係数がゼロ値または非ゼロ値のいずれかを示す。ノードにおける係数がゼロでかつそのディセンダントがゼロツリーを形成すれば、すなわち全てのディセンダントノードはゼロ値を有するならば、常にゼロツリーが存在する。各ツリーをデプスファースト方法で再びスキャンすることより、ウェーブレットの量子化された係数は効率的に符号化される。従って、シンボル指定器112はツリーを横断し、ノードの量子化された値のみならず、各ノードのディセンダントの量子化された値に応じて特定のシンボルを各ノードに割り当てることによって(ステップ212にて)作動する。
【0035】
より詳細に説明すれば、各ノードでは本発明の方法は3つのシンボル、すなわちZEROTREE ROOT、VALUED ZEROTREE ROOTおよびVALUEのうちの1つを指定する。ZEROTREE ROOTはゼロツリーのルートである係数を表示する。シンボルを割り当てるスキャンを行った後は、ツリー内のすべての係数はゼロの値を有していることが判っているので、これ以上、ゼロツリーをスキャンする必要はない。VALUED ZEROTREE ROOTは係数が非ゼロ値を有し、4つのすべてのチャイルドがZEROTREE ROOTであるノードである。このツリーの符号化スキャンは、このノードよりも下に進むことはない。VALUEシンボルはツリーに沿ったどこかの位置に非ゼロを有するディセンダントをもつ、ゼロまたは非ゼロの値を有する係数を識別するシンボルである。
【0036】
効率的に量子化したツリーをスキャンし、シンボルをノードに指定するため、量子化器はシンボル指定器と共に作動する。図7はゼロツリーの係数を量子化するのに使用される量子化ルーチン700の詳細なフローチャートを示し、図8は、量子化された係数の値を表現するためにシンボル値を指定するためのシンボル指定ルーチン800の詳細なフローチャートを示す。
【0037】
ルーチン700ではブロック702で開始し、ステップ704に進み、ここでウェーブレットツリー内のノードから係数値を抽出する。後述するように、この量子化ルーチンは、ボトムアップ、デプスファーストパターンでウェーブレットツリーをスキャンするものである。従って、最高周波数のサブバンド内に常に第1アドレスが存在し、ルーチンを通る各繰り返しによりルーチンは次第にツリーの上方、つまり低周波数サブバンドに進む。量子化された値が生成される際、ルーチンはチャイルドノードの量子化値が値をもつかゼロかを記憶しておく。ステップ706でルーチンは抽出された係数値を正の値、負の値またはゼロの値に量子化する。ステップ708では直前に量子化された係数値に関連したノードに対し、仮のシンボル値でマークマップが更新される。このマークマップシンボルはチャイルドノードの値のみならず、現在ノードの値によって決まる。スキャンはボトムアップで行われるので、マークマップはノードがZEROTREE ROOTであるかどうかを現時点では最終的に指示できないことに留意されたい。従って、すべてのノードに仮のシンボル値が指定された後に、最終的なシンボル値を指定するように、ツリーは再びトップダウンパターンでスキャンされる。このマークマップは量子化ルーチン700によって満たされたウェーブレットツリーノードのインデックスである。
【0038】
マークマップ内の各アドレスではルーチンは仮のシンボル、すなわち潜在的なVALUE、潜在的なVALUED ZEROTREE ROOTまたは潜在的なZEROTREE ROOTを記憶する。量子化された係数値がある値を有する場合、その係数に対するマークマップ位置には潜在的なVALUEシンボルがマークされる。量子化された係数値がゼロ値であり、そのノードのチャイルドのすべてがゼロ値であれば、マークマップ位置に潜在的なZEROTREE ROOTがマークされる。最後に、量子化された値がある値を有し、それらのチャイルドがすべてゼロ値であれば、そのマークマップ位置には潜在的なVALUED ZEROTREE ROOTがマークされる。
【0039】
ステップ710ではルーチンはツリー内のすべてのノードの量子化が完了したかどうかを問い合わせる。この問い合わせに対する回答が否定的であれば、ルーチンはステップ712に進み、ここで量子化のためにツリー内の新しい(次の)ノードが選択される。次にルーチンはステップ704にリターンする。ステップ710における問い合わせに対する回答が肯定的であれば、ルーチンはステップ714まで進む。このステップ714でルーチンはすべてのツリーの量子化が完了したかどうかを問い合わせる。
【0040】
問い合わせに対する回答が否定的であれば、ルーチンはステップ716で新しい(次の)ツリーまたは量子化を選択する。ステップ714における問い合わせに対する回答が肯定的であれば、ルーチンはステップ718に進む。ルーチン700におけるこのポイントでは、すべてのツリーにおけるすべてのノードは量子化されており、仮のシンボルが指定さられている。ステップ718ではルーチン700は図8のシンボル指定ルーチン800をコールする。シンボルが指定された後、ルーチン700はブロック720で終了する。
【0041】
ルーチン800はツリーをトップダウンパターン、すなわちルートからリーブへスキャンする。しかしながらZEROTREE ROOTまたはVALUED ZEROTREE ROOTが発生するごとにツリーは除かれているので、ルーチンはすべてのノードにアクセスする必要はない。より詳細に説明すれば、ルーチン800はステップ802に入り、ステップ804にすすむ。ステップ804ではルーチンは量子化された係数のツリーから量子化された係数を抽出する。ステップ806では、ルーチンは抽出された係数に対応するマークマップ内の仮のシンボルを抽出する。ルーチンはステップ808で仮のシンボルが潜在的なZEROTREE ROOTであるかどうかを問い合わせる。この問い合わせに対する回答が肯定的であれば、ルーチンはステップ810でZEROTREE ROOTシンボルをノードに指定する。次にステップ812で、ルーチンはツリーを除く。すなわちルーチンは定義によりすべてのノードがゼロ値を有しているので、このZEROTREE ROOTノードよりも下のすべてのノードを無視する。
【0042】
ルーチンはステップ820ですべてのノードが選択されたかどうかを問い合わせる。ステップ820における問い合わせに対する回答が否定的であれば、ルーチンはNOパスに沿ってステップ814に進む。ステップ814ではトップダウンのデプスファーストスキャンを行うよう、除いたブランチをスキップした後にツリー内の次のノードを選択する。
【0043】
ステップ808における問い合わせに対する回答が否定的であれば、ルーチンはNOパスに沿ってステップ816に進む。このステップ816ではルーチンはマークマップが潜在的なVALUED ZEROTREE ROOTの潜在的シンボルを含むかどうかを問い合わせる。ステップ816における問い合わせに対する回答が肯定的であれば、ルーチンはステップ822でVALUED ZEROTREE ROOTシンボルをノードに指定し、非ゼロ値のリストに値を入れて、ステップ824でツリーを除く。ルーチンはステップ820ですべてのノードの選択が完了したかどうかを問い合わせる。ステップ820における問い合わせに対する回答が否定的であれば、ルーチンはステップ814に進む。次にルーチンはステップ814で除かれたブランチをスキップしながらシンボル指定のための次のノードを選択する。
【0044】
ステップ816における問い合わせに対する回答が否定的であれば、ルーチンはステップ818においてVALUEシンボルをノードに指定し、値ゼロを含む値のリストに値を置く。ルーチンはステップ820ですべてのノードの選択が完了したかどうかを問い合わせる。ステップ820における問い合わせに対する回答が否定的であれば、ルーチンはステップ814に進む。次にルーチンはステップ814でシンボル指定のために次のノードを選択する。
この指定ルーチンはすべてのノードにシンボルが指定されるまで続く。従って、ステップ820における問い合わせに対する回答が肯定的であれば、ルーチンはステップ826に進み、ここでルーチン800は終了するか、またはルーチン700にリターンする。
【0045】
ステップ214では、エントロピー符号化器114、例えば従来の算術符号化器を使ってシンボルおよび値が符号化される。この符号化を行う1つの可能な方法は次のとおりである。シンボルは3シンボルアルファベットを使って符号化される。VALUED ZEROTREE ROOTシンボルに1:1に対応する非ゼロ値のリストは、値ゼロを含まないアルファベットを使用して符号化される。VALUEシンボルに1:1に対応する残りの係数は値ゼロを含むアルファベットを使って符号化される。スキャンで到達したチャイルドを有しないリーフにある、すべてのノードに対しては、ルートシンボルを用いることはできない。従って、このノードに対するシンボルを符号化せず、ゼロの値を含むアルファベットを使用して係数を符号化することにより、いくつかのビットを節約できる。シンボルに対する3シンボル符号化アルファベットおよび値に対するマルチシンボルアルファベットを使用する図示された符号化器は、ウィッテン外著「データ圧縮のための算術的符号化」、Comm of the ACM、第30巻、第6号、520〜540ページ(1987年6月)に開示された符号化器に従う。実際に当業者であれば、指定されたシンボルに従って係数の値(またはその値の表現)を符号化するだけで、本発明を変更できることが理解できよう。すなわち係数の重要性を表示するシンボルを符号化することなく、係数の値だけを符号化する。
【0046】
符号化器100は(ステップ216にて)ポート116に符号化された出力画像を生成する。本発明を利用することにより、ウェーブレットツリーの各ノードにおける3つのシンボルのうちの1つと、係数値を符号化するためのビットを使用することにより、画像は高速かつ効率的に符号化される。
【0047】
本発明の複数の別の実施例は、画像或いはビデオのベクトルまたはオブジェクトゼロツリー符号化に本符号化手法を適用する。すなわち量子化されたウェーブレット係数の量子化およびゼロツリーエントロピー符号化を行うベクトル(またはオブジェクト)ゼロツリー符号化の概念に、ウェーブレット変換を利用する本符号化手法が適用される。本発明のベクトルまたはオブジェクトゼロツリー符号化実施例の各々は、画像またはビデオレジデュアル(残余分)に対するウェーブレット係数の符号化のために、ゼロツリーを使ってベクトルまたはオブジェクトアプローチを構成する。これに関しては各ウェーブレットツリーの各ノードは単一係数ではなく、係数のリスト(ベクトル)である。ツリーノードはスキャンされ、係数が量子化され、ベクトルゼロツリーエントロピー符号化と称される方法を使ってシンボルエントロピーがすべて符号化される。
【0048】
これら種々のベクトルまたはオブジェクトゼロツリー符号化実施例は、2つのカテゴリー、すなわちスカラーウェーブレット変換と、その後にベクトル(またはオブジェクト)グループ分けするカテゴリーまたはベクトル(またはオブジェクト)グループ分け、およびその後にベクトルウェーブレット変換を行うカテゴリーに分けられる。すなわち画像、ビデオフレームまたは動き補償されたビデオレジデュアル(残余分)フレームは、まずスカラーウェーブレット変換またはベクトルウェーブレット変換される。図11〜12は、第1カテゴリーを示し、ここではまずスカラーウェーブレットを計算し、次に変換後、ウェーブレット係数をベクトルまたはオブジェクトにグループ分けする。これと対照的に、図9〜10は、第2カテゴリーを示し、ここでは入力信号をベクトルとしてグループ分けし、ベクトル−ウェーブレット変換を行い、ベクトルとして出力を生成する。いずれのケースにおいても、結果をウェーブレット係数のベクトルまたはオブジェクトのフレームとして見ることができる。
【0049】
要約すれば、発明の2つの実施例(図9および10)では、ベクトルは画像またはビデオピクセル、またはレジデュアルの二次元マトリックスの固定されたタイル(tiling)によって定義される。そして計算されるウェーブレット変換はベクトルウェーブレット変換である。次にベクトル量子化またはスカラー量子化のいずれも、符号化された出力画像を生成するように、ベクトルゼロツリーエントロピー符号化と組み合わされる。
【0050】
本発明の別の4つの実施例(図11および12)では、スカラーウェーブレット変換が計算され、次に任意のサイズの最も粗いスケールまたはオブジェクトにおけるウェーブレット係数の二次元マトリックスの固定されたタイルによって、いずれかのベクトルが定義され、セグメント化アルゴリズムによって形状を決定する(すなわち2つの実施例を作成する)。次に、ベクトルまたはオブジェクトはベクトルゼロツリーエントロピー符号化と組み合わされて、ベクトル量子化またはスカラー量子化され、符号化された出力画像を生成する(すなわち4つの実施例に対する別の2つの実施例を生じる)。ベクトルウェーブレットの一形態については、W.リーおよびY.Q.チャン著「画像およびビデオ圧縮のためのベクトルベースの信号処理および量子化」(IEEEの議事録第83巻317〜335ページ、1995年2月)に開示されている。
【0051】
図13はベクトルウェーブレットの一例を示す。画像またはビデオレジデュアルのベクトルウェーブレットは画像またはビデオレジデュアルの隣接するサンプルをベクトルを作るためにグループ化し、ベクトルを形成し、次にこれらベクトルに対しウェーブレット変換を行う変換である。ベクトルウェーブレット変換は次のステップで計算される。すなわち空間的にずれたフレームを表現する信号の多数のサブサンプリングされたフレームを得るようにフレームをサブサンプリングするステップと、離散ウェーブレット変換によりサブサンプリングされたフレームの各々を変換し、ウェーブレット変換係数を表現する信号の対応する多数のフレームを得るステップと、係数を表現する信号のそれぞれのフレームの対応する係数表現信号からベクトル表現信号を形成するステップによって計算される。
【0052】
すなわちフレーム(入力画像)1302は、二次元の多相成分となるように分解される。各多相成分は4つのデルタ関数13041〜13044によって示されるような、元のフレームの空間的にずれたフレームである。次に各空間的にずれたフレームを4回のサブサンプリングでサブサンプルする。すなわちサブサンプラー1306により2つの次元の各々で2回サブサンプリングし、多相成分を生成する。次に、各多相成分に対しウェーブレット変換1308を適用し、同じインデックスをもつ各ウェーブレット変換された成分に対し1つずつ変換係数をグループ分けすることによりベクトルを形成する。このように、m×nピクセルのベクトルは、m×n係数のベクトル1310に変換される。
ベクトルウェーブレット変換は多数の重なったフレームとしても見ることができ、各ベクトルまたはオブジェクトは同一のインデックスを共有する各フレームからの1つの係数から構成される。フレームの数はベクトルの次元すなわちオブジェクトのサイズに等しい。
【0053】
次に、図9〜12を参照して種々の実施例について詳細に説明する。より詳細には、図11〜12はスカラーウェーブレット変換と、その後にベクトル(オブジェクト)グループ化を行う4つの実施例を示す。図11および12の符号化器は多くの類似性を有するので、番号を重ねて表示することにより種々の実施例を同時に説明する。
【0054】
符号化器1100(1200)は、ウェーブレットツリー発生器1103(1203)と、ベクトルまたはオブジェクト編成器1104(1204)と、オプションのベクトル/オブジェクトウェーブレットツリー再編成器1108(1208)と、ベクトル量子化器1110(量子化後プロセッサ1211を備えたスカラー量子化器1210)と、シンボル指定器1112(1212)と、エントロピー符号化器1114(ベクトルエントロピー符号化器1214)とを含む。これら構成要素の各々はポート1102(1202)における入力画像をポート1116(1216)における符号化された出力画像に処理するように直列に接続されている。
【0055】
ウェーブレットツリー発生器1103(1203)は、上で述べたように、入力画像1102(1202)の従来のウェーブレットツリー表現を生成するようにウェーブレット階層的サブバンド分解を行う。次に、ベクトルまたはオブジェクト編成器1104(1204)は、ウェーブレット変換の低−低バンドにおける隣接する係数の固定されたグループ分けによりベクトルを定める。オブジェクトは低−低バンドのウェーブレット係数にセグメント化アルゴリズムを用いることにより定められる。このセグメント化は完全であり、重なり合わないものと見なされる。従って、低−低バンドにおける各係数は唯一のベクトルまたはオブジェクトの要素である。パトリック・キャンベル・マクリーンにより1991年7月にマサチューセッツ工科大学のメディアアートおよび科学学部に提出されたマスター論文「構造化されたビデオ符号化」または1994年11月14日に出願された継続中の米国特許出願第08/339,491号に開示されているように、本発明に対し、種々のセグメント化アルゴリズムを使用できる。
【0056】
図14〜15を参照すると、次に細かいスケールでアウトライン1404(1504)を定めるようにアップサンプリングすることによりベクトル1402またはオブジェクト1502は、より高いバンドに伝播される。より粗いスケールと同様に同じサイズにベクトルおよび/またはオブジェクトを維持するために、アウトライン内の各ベクトルまたはオブジェクトの係数を図14〜15に示されるように4つのベクトル1406またはオブジェクト1506に再グループ分けする。より粗いスケールのベクトルまたはオブジェクトはベクトルまたはオブジェクトペアレントと称され、次に細かいスケールの4つのベクトルまたはオブジェクトはベクトルまたはオブジェクトチャイルドと称す。4つの多相成分1408(1508)を取ることにより、アウトラインから4つのベクトル/オブジェクトチャイルドが抽出される。このことは、アウトラインをシフトしてサブサンプリングすることに同じである。
【0057】
図14および15にはそれぞれベクトルのペアレントとチャイルドの関係、およびオブジェクトのペアレントとチャイルドとの関係の例が示されている。これら関係式はベクトルまたはオブジェクトウェーブレットツリーを定める。
【0058】
ベクトルまたはオブジェクトウェーブレットツリーはスカラーZTEのウェーブレットツリーに類似するが、これらベクトルまたはオブジェクトウェーブレットツリーの各ノードには単一値の代わりにウェーブレット係数のベクトルがある点が異なっている。上記スカラーZTE符号化で行われているように、各ツリーは低−低バンド内のルートからチャイルドおよびグランドチャイルドを通るように、デプスファーストパターンで横断される。ノードが横断される際に現在の量子化仕様に従って係数が量子化される。この量子化はスカラー量子化器1210によりスカラー量子化のベクトルとして、またはベクトル量子化器1110による単一ベクトル量子化として行うことができる。アレン・ゲルショー外により「ベクトル量子化および信号圧縮」(クルワーアカデミックパブリッシャーズ、1992年)に開示されているように、種々のベクトル量子化技術を使用できる。
【0059】
上記スカラーZTE符号化と同じように、図16に示されているようなウェーブレットブロックを形成するのに、各ウェーブレットツリーの係数ベクトルを再編成することは有益である。デプスファーストスキャンパターンを容易にするために、本発明はウェーブレットブロック1604を形成するよう、各ウェーブレットツリーの量子化された係数をオプションで再編成できる。図11および12に示されるように、この再編成化は量子化前にベクトル/オブジェクトウェーブレットツリー再編成器1108(1208)内で行われる。この再編成はオプションであるので、図11および12の双方は再編成器およびそれに関連する機能をそれぞれバイパスするパス1106およびパス1206を設けることにより再編成器の任意選択性をもたせることを示す。
【0060】
図16は、本発明によって生成されるウェーブレットブロック1604を略図で示す。1つのフレームの各ウェーブレットブロック1604はペアレントからチャイルド、グランドチャイルドへと周波数が高まる順に編成されたブロックの空間位置におけるそのフレームを示すすべてのスケールおよび方向の係数ベクトルを含む。すなわち本発明は、ウェーブレットツリー1602内の低−低バンド1606(LL3)内のベクトル1600から延びるツリー1602をウェーブレットブロック1604にマッピングする。かかる構造により、スカラー量子化の場合は量子化ファクター、またはベクトル量子化の場合はコードブックを、ブロックが空間的に位置する場所、すなわちブロックがフレーム内で何を表現しているかに従って各ブロックに適応させることが可能となっている。
【0061】
デプスファーストスキャンパターンを使用することにより、各ウェーブレットブロックを完全にスキャンしてその係数ベクトルを量子化し、次に、次のブロックをスキャンし、このようなスキャンを次々に繰り返す。例えばブロック1610を完全にスキャンし、次にウェーブレットブロックのフレームを通してラスタースキャンパターンでブロック1612、次にブロック1614等をスキャンする。ブロックの順序はラスタースキャンパターンである必要はなく、アプリケーションが望む任意の順序とすることができる。
【0062】
更に本発明は、ウェーブレット係数のベクトルの量子化を行うための2つの異なる方法を提供する。量子化は各ベクトルの各要素に対するスカラー量子化として実行してもよいし、各ベクトルに対するベクトル量子化として実行してもよい。各ツリーの各ノードでは、シンボル指定器1112(1212)はそのノードにおける量子化されたベクトルを特徴づけるためのシンボルを指定する。このシンボルおよび量子化された係数値は、算術符号化器のようなエントロピー符号化器1114(1214)を用いてすべて符号化される。
【0063】
いずれかのタイプの量子化の後に、ノードにおける係数ベクトルがゼロベクトルであり、すべてのディセンダントがゼロツリーである場合にはゼロツリーが存在する。これらウェーブレットツリーはノードを表示するためのシンボルを指定し、更にゼロツリーの下のツリーを除くことにより効率的に表現され、符号化される。算術符号化器はウェーブレット係数ベクトルのツリーを忠実に再構成するために復号器が必要とするシンボルおよび値だけに最小のビット数を割り当てる。
【0064】
本発明の一実施例(図12に示されるような)は、ウェーブレット係数のベクトルの要素のスカラー量子化を利用する。量子化後、各ベクトルはすべてゼロの値、または1つ以上の非ゼロ値を含む。ツリーのノード毎にゼロベクトルが存在すれば、ベクトルゼロツリーが存在する。ベクトルゼロツリールートはベクトルゼロツリーのルートである。ベクトルゼロツリールートにおける係数ベクトルはゼロベクトルであり、ベクトルゼロツリールートのすべてのディセンダントはそれ自身、ベクトルゼロツリーのルートである。
【0065】
ゼロツリールートではウェーブレットツリーを除くことができ、よって除かれた係数を符号化するのにビットは必要でないので、ゼロツリールートは重要である。従って、符号化の効率を高めるには量子化後のゼロツリーの数をできるだけ多くすることが望ましい。1つの方法は最終の再構成されたフレームには無視できる付加的歪みしか生じない時に、これをゼロベクトルに変えるよう「量子化後プロセッサ」1211(1011)を使用して、各ベクトルの(図10および12に示されるような)量子化後処理を実行することである。各ベクトルの大きさを計算し、この大きさが所定のスレッショルドよりも低い場合、ベクトルをゼロにセットする。
【0066】
ベクトル要素のスカラー量子化を行い、適当な場合にベクトルをゼロベクトルにするような量子化後の処理を行った後に、スカラーZTE符号化と同じようなツリーノードのスキャンおよび分類を行う。各ノードにはZEROTREE ROOT、VALUED ZEROTREE ROOTおよびVALUEのうちの1つが指定される。これらシンボルはスカラーZTE符号化と同じ意味を有するが、ノードがベクトルであり、ゼロまたは非ゼロの分類はベクトル全体を示す点が異なっている。シンボルおよび値のテーブルを符号化するのに、エントロピー符号化が使用される。値のテーブルはスカラーZTE符号化と同じように構成される。値をエントロピー符号化するには、スカラーエントロピー符号化の代わりにベクトルエントロピー符号化を使用しなければならない。
【0067】
本発明の一実施例(図11に示されるような)はウェーブレット係数のベクトルのベクトル量子化を使用する。ベクトル量子化(VQ)は成熟した技術分野であり、種々の形態の任意のVQを使用できる。上記のようにゼロツリールートの数を増し、これにより再構成されるフレームのひずみを大幅に増加しないようにすることが好ましい。この結果を得るには、スレッショルドよりも低い大きさのベクトルがゼロベクトルとして再構成されるインデックスにマッピングされるように、VQがある形態のデッドゾーンを含むようにすることができる。
【0068】
ベクトル量子化はツリーの各ノードにおけるベクトルを、そのノードに対する最良の再構成ベクトルを選択するベクトルのコードブックへのインデックスに置換する。ベクトル量子化後、スカラーZTE符号化と同じように、ツリーノードのスキャンおよび分類を行う。各ノードには3つのシンボル、すなわちZEROTREE ROOT、VALUED ZEROTREEおよびVALUEのうちの1つが指定される。これらシンボルはスカラーZTE符号化と同じ意味を有するが、ノードはコードブックへのインデックスであり、ゼロまたは非ゼロは各インデックスへのコードブックの入力を意味する点が異なる。シンボルおよびインデックスのテーブルを符号化するのに、エントロピー符号化器が使用される。インデックスのテーブルはスカラーZTE符号化と同じように構成される。
【0069】
図9および10は、ベクトルウェーブレット変換を使用する本発明の別の実施例を示す。図9の符号化器900および図10の符号化器1000は、それぞれ図11および12の符号化器に類似するので、デバイス908〜914および1008〜1014については説明しない。これらデバイスはデバイス1108〜1114および1208〜1214と同じ機能を奏するので、これらデバイスの説明はこれまでの説明と同じである。
【0070】
しかしながら、符号化器900および1000は符号化器1100および1200と異なり、図13を参照してこれまで述べたように、ベクトルウェーブレットツリー発生器904(1004)と共にベクトル編成器903(1003)を使用する。ベクトルウェーブレットツリーを発生した後に符号化器900および1000はそれぞれ符号化器1100および1200と同じように働く。
ベクトルまたはオブジェクトウェーブレット符号化はゼロツリーエントロピー(ZTE)符号化方法を含むが、この符号化は他の符号化方法、例えば埋込みゼロツリーウェーブレット(EZW)アルゴリズムでも実行できることが、当業者には理解できよう。
【0071】
以上で本発明の要旨を含む種々の実施例を詳細に示し、説明したが、当業者であればこれら要旨を含む他の多くの変形例を容易に思いつくことができよう。
【0072】
【発明の効果】
ウェーブレット変換して得られた係数をベクトルとしてグループ分けし、各ベクトルの各々に1つのノードが対応するように、入力画像からウェーブレットツリーを生成し、前記ベクトルを編成する複数の係数を量子化し、前記ノードの各々にシンボルを指定し、前記シンボルおよび前記量子化された係数値を符号化するようにし、前記シンボルを対応するノードの量子化された係数値と各ノードのディセンダントの量子化された係数値に応じて指定するようにしたので、ウェーブレットツリーの処理速度を改善することができる。
【図面の簡単な説明】
【図1】 本発明の画像符号化器のブロック図である。
【図2】 図1に示された符号化器の符号化方法を示すフローチャートである。
【図3】 ウェーブレットツリー内の3つのスケールに分解された画像におけるサブバンドのペアレントとチャイルドとの従属性を示す略図である。
【図4】 サブサンプリングされた画像の3世代のペアレントとチャイルドとの関係を示す図である。
【図5】 ウェーブレットツリーにおける種々のノードの相互関係の略図を示す。
【図6】 ウェーブレットツリーのウェーブレットブロック表現を示す。
【図7】 本発明によって実行される量子化ルーチンのフローチャートを示す。
【図8】 本発明によって実行されるシンボル指示サブルーチンのフローチャートを示す。
【図9】 ベクトル−ウェーブレット変換の一実施例のブロック図を示す。
【図10】 ベクトル−ウェーブレット変換の別の実施例のブロック図を示す。
【図11】 スカラーベクトル変換と、それに続いて行われるベクトルまたはオブジェクトグループ分けの一実施例のブロック図を示す。
【図12】 スカラーベクトル変換と、それに続いて行われるベクトルまたはオブジェクトグループ分けの別の実施例のブロック図を示す。
【図13】 ベクトルウェーブレットの一例を示す。
【図14】 ベクトルのペアレント−チャイルドの関係を示す。
【図15】 オブジェクトのペアレント−チャイルドとの関係を示す。
【図16】 “ウェーブレットブロック”を形成するための各ウェーブレットツリーの係数ベクトルの再編成を示す。

Claims (5)

  1. ウェーブレット変換を利用して画像を符号化する画像符号化装置において、
    画像にウェーブレット変換を施してウェーブレット変換係数を生成するウェーブレット変換部と、
    該ウェーブレット変換部で生成されたウェーブレット変換係数であって、空間領域において同じ位置に存在する、ペアレント−チャイルド関係にあるウェーブレット変換係数からウェーブレットツリーを構成し、該構成されたウェーブレットツリーを用いて、ウェーブレットブロックをマッピングするウェーブレットブロック作成部と、
    該ウェーブレットブロック作成部でマッピングされたウェーブレットブロック内のウェーブレット変換係数を量子化する量子化部と、
    該量子化部で量子化された、ウェーブレットブロック内の符号化対象の量子化係数とその量子化係数のディセンダントの量子化係数が、ゼロ値であるか非ゼロ値であるかに応じて、特定のシンボルを前記符号化対象の量子化係数に割当てるシンボル割当て部と、
    該シンボル割当て部で割当てを行った前記符号化対象の量子化係数およびシンボルを、エントロピー符号化する符号化部とから構成され、
    前記量子化部は、ウェーブレット変換係数の低周波数成分から高周波数成分へと、デプスファースト順序で周波数の昇順でスキャンし、次のウェーブレットブロックをスキャンする前に符号化対象ウェーブレットブロック内のスキャンを行い、量子化処理を実行することを特徴とする画像符号化装置。
  2. 請求項1に記載の画像符号化装置において、前記量子化部は、ウェーブレットブロック毎に量子化スケールを指定することによって、画像内の空間的位置に対して異なる量子化スケールを指定することを特徴とする画像符号化装置。
  3. 請求項1又は2に記載の画像符号化装置において、前記シンボル割当て部は、符号化対象の量子化係数およびその量子化係数のディセンダントの量子化係数が全てゼロ値であることを示すシンボルを割当てることを特徴とする画像符号化装置。
  4. 請求項1又は2に記載の画像符号化装置において、前記シンボル割当て部は、符号化対象の量子化係数が非ゼロ値であり、かつその量子化係数のディセンダントの量子化係数が全てゼロ値であることを示すシンボルを割当てることを特徴とする画像符号化装置。
  5. 請求項1又は2に記載の画像符号化装置において、前記シンボル割当て部は、符号化対象の量子化係数のディセンダントの量子化係数に、非ゼロ値の係数が少なくとも1つ以上あることを示すシンボルを割当てることを特徴とする画像符号化装置。
JP2003173649A 1995-10-25 2003-06-18 画像符号化装置 Expired - Lifetime JP3853758B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US701295P 1995-10-25 1995-10-25
US2085296P 1996-06-28 1996-06-28

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP51669097A Division JP3563740B2 (ja) 1995-10-25 1996-10-25 符号化,復号方法および装置

Publications (2)

Publication Number Publication Date
JP2004032760A JP2004032760A (ja) 2004-01-29
JP3853758B2 true JP3853758B2 (ja) 2006-12-06

Family

ID=26676354

Family Applications (2)

Application Number Title Priority Date Filing Date
JP51669097A Expired - Lifetime JP3563740B2 (ja) 1995-10-25 1996-10-25 符号化,復号方法および装置
JP2003173649A Expired - Lifetime JP3853758B2 (ja) 1995-10-25 2003-06-18 画像符号化装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP51669097A Expired - Lifetime JP3563740B2 (ja) 1995-10-25 1996-10-25 符号化,復号方法および装置

Country Status (6)

Country Link
US (2) US6483946B1 (ja)
EP (1) EP0857389B8 (ja)
JP (2) JP3563740B2 (ja)
KR (1) KR100296066B1 (ja)
DE (1) DE69635055T2 (ja)
WO (1) WO1997016021A1 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549666B1 (en) 1994-09-21 2003-04-15 Ricoh Company, Ltd Reversible embedded wavelet system implementation
US6757437B1 (en) * 1994-09-21 2004-06-29 Ricoh Co., Ltd. Compression/decompression using reversible embedded wavelets
JP3213561B2 (ja) * 1997-02-05 2001-10-02 シャープ株式会社 画像符号化装置及び画像復号装置
WO1998054675A1 (en) * 1997-05-30 1998-12-03 Interval Research Corporation Method and apparatus for wavelet based data compression
WO1998056184A1 (en) * 1997-06-05 1998-12-10 Wisconsin Alumni Research Foundation Image compression system using block transforms and tree-type coefficient truncation
EP0892557A1 (en) * 1997-07-18 1999-01-20 Texas Instruments Inc. Image compression
EP0899960A3 (en) 1997-08-29 1999-06-09 Canon Kabushiki Kaisha Digital signal coding and decoding
JPH11191153A (ja) 1997-12-26 1999-07-13 Ricoh Co Ltd ウェーブレット変換係数の符号化方法
US7181073B1 (en) * 1999-03-08 2007-02-20 Texas Instruments Incorporated Image coding using embedded zerotree patterns and bitplanes
US6778709B1 (en) * 1999-03-12 2004-08-17 Hewlett-Packard Development Company, L.P. Embedded block coding with optimized truncation
US6546143B1 (en) * 1999-03-12 2003-04-08 Hewlett-Packard Development Company Efficient wavelet-based compression of large images
US6678419B1 (en) * 1999-03-26 2004-01-13 Microsoft Corporation Reordering wavelet coefficients for improved encoding
FR2792433A1 (fr) * 1999-04-15 2000-10-20 Canon Kk Dispositif et procede de transformation de signal numerique
KR100561391B1 (ko) * 1999-10-07 2006-03-16 삼성전자주식회사 제로트리 부호화장치 및 방법
US6944350B2 (en) * 1999-12-17 2005-09-13 Utah State University Method for image coding by rate-distortion adaptive zerotree-based residual vector quantization and system for effecting same
US7016351B1 (en) * 2000-02-29 2006-03-21 Cisco Technology, Inc. Small group multicast in a computer network
KR100361804B1 (ko) 2001-01-09 2002-11-23 이화트론 주식회사 웨이브렛 이론을 이용한 동영상 압축/복원 장치 및 그 방법
KR100366638B1 (ko) * 2001-02-07 2003-01-09 삼성전자 주식회사 웨이블릿 변환을 기본으로하여 트리-구조의 벡터 양자화기법을 이용한 영상 부호화 장치 및 부호화 방법
KR100366382B1 (ko) * 2001-02-12 2002-12-31 (주) 멀티비아 동영상 부호화 장치 및 방법
US7512277B2 (en) 2002-04-19 2009-03-31 Qinetio Limited Data compression for colour images using wavelet transform
PT1467491E (pt) * 2002-05-02 2007-03-30 Fraunhofer Ges Forschung Codificação aritmética de coeficientes de transformação
KR100480600B1 (ko) * 2002-06-12 2005-04-06 삼성전자주식회사 그룹화된 제로트리 웨이블릿 영상부호화 방법 및 장치
US6757434B2 (en) * 2002-11-12 2004-06-29 Nokia Corporation Region-of-interest tracking method and device for wavelet-based video coding
US8085850B2 (en) * 2003-04-24 2011-12-27 Zador Andrew M Methods and apparatus for efficient encoding of image edges, motion, velocity, and detail
WO2005036452A1 (en) * 2003-10-06 2005-04-21 Purdue Research Foundation Method and system for compressing image data
KR100643269B1 (ko) * 2004-01-13 2006-11-10 삼성전자주식회사 Roi를 지원하는 영상 코딩 방법 및 장치
US7689051B2 (en) * 2004-04-15 2010-03-30 Microsoft Corporation Predictive lossless coding of images and video
US10803126B1 (en) 2005-01-13 2020-10-13 Robert T. and Virginia T. Jenkins Method and/or system for sorting digital signal information
US7196641B2 (en) * 2005-04-26 2007-03-27 Gen Dow Huang System and method for audio data compression and decompression using discrete wavelet transform (DWT)
KR100764245B1 (ko) 2005-12-30 2007-10-08 고려대학교 산학협력단 워터마킹 방법 및 그 장치
US8331708B2 (en) * 2006-01-18 2012-12-11 Numeri Ltd. Method and apparatus for a multidimensional discrete multiwavelet transform
JP4789192B2 (ja) * 2006-04-12 2011-10-12 株式会社リコー 符号処理装置、プログラム及び情報記録媒体
US20070253642A1 (en) * 2006-04-27 2007-11-01 Mapinfo Corporation Method and apparatus for indexing, storing and retrieving raster (GRID) data in a combined raster vector system
US8452111B2 (en) * 2008-06-05 2013-05-28 Microsoft Corporation Real-time compression and decompression of wavelet-compressed images
US20110249755A1 (en) * 2008-12-16 2011-10-13 Youji Shibahara Moving image coding method, moving image decoding method, moving image coding apparatus, moving image decoding apparatus, program, and integrated circuit
US8406546B2 (en) 2009-06-09 2013-03-26 Sony Corporation Adaptive entropy coding for images and videos using set partitioning in generalized hierarchical trees
WO2010149914A1 (fr) * 2009-06-23 2010-12-29 France Telecom Procedes de codage et de decodage d'images, dispositifs de codage et de decodage, et programme d'ordinateur correspondants
JP2011091575A (ja) * 2009-10-21 2011-05-06 Sony Corp 符号化装置および方法
WO2014013647A1 (ja) * 2012-07-19 2014-01-23 日本電気株式会社 ウェーブレット変換符号化/復号方法および装置
US10462490B2 (en) * 2015-11-06 2019-10-29 Raytheon Company Efficient video data representation and content based video retrieval framework
US10818083B1 (en) * 2019-04-30 2020-10-27 International Business Machines Corporation Pyramid generation via depth-first walk

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5384725A (en) 1990-05-18 1995-01-24 Yale University Method and apparatus for encoding and decoding using wavelet-packets
JP3158458B2 (ja) * 1991-01-31 2001-04-23 日本電気株式会社 階層表現された信号の符号化方式
US5315670A (en) * 1991-11-12 1994-05-24 General Electric Company Digital data compression system including zerotree coefficient coding
US5321776A (en) * 1992-02-26 1994-06-14 General Electric Company Data compression system including successive approximation quantizer
US5412741A (en) 1993-01-22 1995-05-02 David Sarnoff Research Center, Inc. Apparatus and method for compressing information
US5563960A (en) 1993-01-22 1996-10-08 David Sarnoff Research Center, Inc. Apparatus and method for emphasizing a selected region in the compressed representation of an image
US5546477A (en) 1993-03-30 1996-08-13 Klics, Inc. Data compression and decompression
US5448297A (en) 1993-06-16 1995-09-05 Intel Corporation Method and system for encoding images using skip blocks
US5440346A (en) 1993-06-16 1995-08-08 Intel Corporation Mode selection for method and system for encoding images
US5509089A (en) 1993-09-09 1996-04-16 Intel Corporation Method and system for encoding images using temporal filtering
JP2914549B2 (ja) * 1993-09-17 1999-07-05 富士ゼロックス株式会社 画像符号化方法
US5982938A (en) * 1997-03-31 1999-11-09 Iterated Systems, Inc. System and method for compressing data using differential coding of coefficient addresses

Also Published As

Publication number Publication date
KR100296066B1 (ko) 2001-08-07
US6483946B1 (en) 2002-11-19
EP0857389A4 (en) 1998-12-30
JPH11513874A (ja) 1999-11-24
EP0857389B1 (en) 2005-08-10
EP0857389A1 (en) 1998-08-12
JP3563740B2 (ja) 2004-09-08
JP2004032760A (ja) 2004-01-29
DE69635055D1 (de) 2005-09-15
EP0857389B8 (en) 2005-10-19
KR19990067703A (ko) 1999-08-25
DE69635055T2 (de) 2006-06-01
US6298167B1 (en) 2001-10-02
WO1997016021A1 (en) 1997-05-01

Similar Documents

Publication Publication Date Title
JP3853758B2 (ja) 画像符号化装置
US6236758B1 (en) Apparatus and method for encoding wavelet trees by backward predictive coding of wavelet transformed coefficients
JP4111644B2 (ja) 埋め込み符号化/復号化方法及びシステム
US6917711B1 (en) Embedded quadtree wavelets in image compression
US5563960A (en) Apparatus and method for emphasizing a selected region in the compressed representation of an image
EP0905978A2 (en) An encoding method and apparatus
JPH08506226A (ja) 情報を圧縮するための装置及び方法
WO2000049571A2 (en) Method and system of region-based image coding with dynamic streaming of code blocks
JP2003533952A (ja) ビデオ系列の圧縮のための符号化方法
US6606416B1 (en) Encoding method and apparatus for representing a digital image
Namuduri et al. Feature preserving image compression
KR100540275B1 (ko) 멀티스케일 제로트리 엔트로피 인코딩용 장치 및 방법
JPH11225075A (ja) 符号化方法及び装置
AU725719B2 (en) A method of digital image compression
AU745160B2 (en) An encoding method and apparatus for representing a digital image
AU727894B2 (en) An encoding method and apparatus
Kongara Implementation of BCWT in GUI wavelet toolbox
Metta A DWT-DCT image compression scheme
AU8709798A (en) A method for digital data compression
AU8709898A (en) Method and apparatus for decoding

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20051206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060314

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060613

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060616

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060620

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060906

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100915

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100915

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100915

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100915

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110915

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110915

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110915

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110915

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110915

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120915

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130915

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130915

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130915

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130915

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term