(57)【要約】【課題】局所部分を所望解像度で高速に再生できる技術を提供すること。【解決手段】画像を表すビットストリームを復号し、前記画像の一部を再生する復号方法であって、前記ビットストリームは画像をウェーブレット変換することにより生成される複数の周波数サブバンドからなり、前記各サブバンドは、複数のタイルに分割されており、前記各タイルはエントロピー符号化されており、前記画像の同じ部分を表現する為のエントロピー符号化タイルは、少なくとも一つのウェーブレット変換レベル毎に、前記ビットストリーム中で連続的に配置されており、前記方法は、解像度及び前記画像の一部を選択し、前記選択された解像度及び画像の一部に対応する、前記ビットストリーム中のエントロピー符号化タイルを復号することにより、前記画像の一部を再生することを特徴とする。【選択図】図６
2006304345.tif 000002
【特許請求の範囲】
【請求項１】
画像を表すビットストリームを復号し、前記画像の一部を再生する復号方法であって、
前記ビットストリームは画像をウェーブレット変換することにより生成される複数の周波数サブバンドからなり、
前記各サブバンドは、複数のタイルに分割されており、
前記各タイルはエントロピー符号化されており、
前記画像の同じ部分を表現する為のエントロピー符号化タイルは、少なくとも一つのウェーブレット変換レベル毎に、前記ビットストリーム中で連続的に配置されており、
前記方法は、
解像度及び前記画像の一部を選択し、
前記選択された解像度及び画像の一部に対応する、前記ビットストリーム中のエントロピー符号化タイルを復号することにより、前記画像の一部を再生する
ことを特徴とする復号方法。
【請求項２】
画像を表すビットストリームを復号し、前記画像の一部を再生する復号装置であって、
前記ビットストリームは画像をウェーブレット変換することにより生成される複数の周波数サブバンドからなり、
前記各サブバンドは、複数のタイルに分割されており、
前記各タイルはエントロピー符号化されており、
前記画像の同じ部分を表現する為のエントロピー符号化タイルは、少なくとも一つのウェーブレット変換レベル毎に、前記ビットストリーム中で連続的に配置されており、
前記装置は、
解像度及び前記画像の一部を選択する手段と、
前記選択された解像度及び画像の一部に対応する、前記ビットストリーム中のエントロピー符号化タイルを復号することにより、前記画像の一部を再生する手段と、
を備えたことを特徴とする復号装置。
【請求項３】
請求項１に記載の復号方法をコンピュータに実行させるプログラムを記憶した記憶媒体。
【請求項４】
複数の解像度で画像の一部を再生するために、データストリームを復号する復号方法であって、
前記ストリームは、前記画像の非冗長的な複数解像度の周波数領域表現を含み、
前記表現は、レベル毎に配置された複数の高周波数サブバンドと一つの低周波数サブバンドとを含み、
前記各サブバンドは、複数のタイルに分割されており、
前記各レベルは前記画像の隣接する解像度間の周波数成分を表現し、
前記各タイルは、所定の解像度における前記画像の一部に対する周波数成分を表現し、
前記復号方法は、
前記画像の一部にアクセスするために、各レベル毎に前記画像の空間的に同じ部分に対応した各タイルの組毎の、前記データストリームにおける一つのポインタを取り出す工程を含むことを特徴とする復号方法。
【請求項５】
前記一部への前記アクセスは、前記ポインタによってアドレスが指定されたデータを復号することを含むことを特徴とする請求項４に記載の復号方法。
【請求項６】
複数の解像度で画像の一部を再生するために、データストリームを復号する復号装置であって、
前記ストリームは、前記画像の非冗長的な複数解像度の周波数領域表現を含み、
前記表現は、レベル毎に配置された複数の高周波数サブバンドと一つの低周波数サブバンドとを含み、
前記各サブバンドは、複数のタイルに分割されており、
前記各レベルは前記画像の隣接する解像度間の周波数成分を表現し、
前記各タイルは、所定の解像度における前記画像の一部に対する周波数成分を表現し、
前記装置は、
前記画像の一部にアクセスするために、各レベル毎に前記画像の空間的に同じ部分に対応した各タイルの組毎の、前記データストリームにおける一つのポインタを取り出す手段を含むことを特徴とする復号装置。
【請求項７】
前記一部へのアクセスは、前記ポインタによってアドレスが指定されたデータを復号することを含むことを特徴とする請求項６に記載の復号装置。
【請求項８】
請求項４又は５に記載の復号方法をコンピュータに実行させるプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮された画像データを復号する方法及び装置に関し、特にデジタル画像の局所部分を効率よく再生するための技術に関する。
【背景技術】
【０００２】
ＪＰＥＧ圧縮標準は、画像圧縮のために広く用いられている。それは、十分な歪み率（圧縮）性能を提供する。基本方式モードでは、効果的なランダムアクセスが可能である。しかしながら、各々の画像ブロック（８×８）の情報は、圧縮された画像ビットストリーム上に連続的に記録されるので、多様な解像度の復号には必ずしも効果的ではない。例えば、ディスクから画像の極めて低い解像度バージョンを復号するために、基本方式モードで符号化されたＪＰＥＧ画像から、ＤＣ係数のみを読取ることは、通常、当該ディスクからＪＰＥＧ画像全体を読取ることと同じくらいの負担（できるだけ小さくした場合）がかかる。これは、ＤＣ係数がビットストリーム全体にわたって配置されているからである。
【０００３】
一方、階層的ＪＰＥＧモードは、異なる解像度（若しくは画像サイズ）の効果的な復号を提供するが、効果的なランダムアクセスは困難である。すなわち、階層的ＪＰＥＧモードは、異なった画像解像度が、ある程度独立して蓄積されるため、通常、他のモードよりも３３％大きな圧縮ファイルを与える。
【０００４】
最近では、基本方式のＪＰＥＧよりも歪み率の性能が高い画像圧縮技術もある。これらの技術は、典型的には、サブバンド符号化体系であり、離散ウェーブレット変換に基づくものである。
【０００５】
これまでに、これらのサブバンド体系は、効果的なランダムアクセスを提供していない。これらの体系の問題は、サブバンドがビットストリーム上に配置され、画像の一部を復号するために、復号されるべき画像の所望の部分に関連する係数をビットストリームから検索することが要求されることにある。このことは、特に、情報（係数）を比較的長いアクセス時間を必要とする記憶装置から読み出す場合に、全く非効果的である。そのような装置には、ＣＤＲＯＭドライブ、フロッピー（登録商標）ディスクドライブ、ハードディスクドライブ等が含まれる。
【０００６】
ハードディスク又はＣＤＲＯＭドライブのような記憶媒体からデータを読み出すことは、しばしば比較的時間を消費する処理である。特に、検索処理（記憶媒体上で、与えられたデータセグメントのスタートを見つけ出すこと。）を実行するためには、比較的長い時間がかかる。このため、データを読み出すときは、通常、最小のデータのかたまりが読み出される。すなわち、大きなビットストリーム上に規則的に配置された小さなデータセグメントを読み出すことは、ビットストリーム全体を読み出すことと同じ消費時間になり得る。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
これらの現在の圧縮方法は、画像の一部を復号するために用いる場合に、いくつかの不利益がある。どちらの現在の手法も、次のことを提供することができない。
【０００８】
ａ）非冗長表現（劣った圧縮率へ変換する）、
ｂ）複数の解像度表現
ｃ）画像の所定の局所部分へ、比較的効果的に、実質的なランダムアクセスすることができる表現
従って、本発明の目的は、係る従来技術の問題点を改善することにある。例えば、本発明は、局所部分を所望解像度で高速に再生できる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明によれば、画像を表すビットストリームを復号し、前記画像の一部を再生する復号方法であって、前記ビットストリームは画像をウェーブレット変換することにより生成される複数の周波数サブバンドからなり、前記各サブバンドは、複数のタイルに分割されており、前記各タイルはエントロピー符号化されており、前記画像の同じ部分を表現する為のエントロピー符号化タイルは、少なくとも一つのウェーブレット変換レベル毎に、前記ビットストリーム中で連続的に配置されており、前記方法は、解像度及び前記画像の一部を選択し、前記選択された解像度及び画像の一部に対応する、前記ビットストリーム中のエントロピー符号化タイルを復号することにより、前記画像の一部を再生することを特徴とする復号方法が提供される。
【００１０】
また、本発明によれば、画像を表すビットストリームを復号し、前記画像の一部を再生する復号装置であって、前記ビットストリームは画像をウェーブレット変換することにより生成される複数の周波数サブバンドからなり、前記各サブバンドは、複数のタイルに分割されており、前記各タイルはエントロピー符号化されており、前記画像の同じ部分を表現する為のエントロピー符号化タイルは、少なくとも一つのウェーブレット変換レベル毎に、前記ビットストリーム中で連続的に配置されており、前記装置は、解像度及び前記画像の一部を選択する手段と、前記選択された解像度及び画像の一部に対応する、前記ビットストリーム中のエントロピー符号化タイルを復号することにより、前記画像の一部を再生する手段と、を備えたことを特徴とする復号装置が提供される。
【００１１】
また、本発明によれば、複数の解像度で画像の一部を再生するために、データストリームを復号する復号方法であって、前記ストリームは、前記画像の非冗長的な複数解像度の周波数領域表現を含み、前記表現は、レベル毎に配置された複数の高周波数サブバンドと一つの低周波数サブバンドとを含み、前記各サブバンドは、複数のタイルに分割されており、前記各レベルは前記画像の隣接する解像度間の周波数成分を表現し、前記各タイルは、所定の解像度における前記画像の一部に対する周波数成分を表現し、前記復号方法は、前記画像の一部にアクセスするために、各レベル毎に前記画像の空間的に同じ部分に対応した各タイルの組毎の、前記データストリームにおける一つのポインタを取り出す工程を含むことを特徴とする復号方法が提供される。
【００１２】
また、本発明によれば、複数の解像度で画像の一部を再生するために、データストリームを復号する復号装置であって、前記ストリームは、前記画像の非冗長的な複数解像度の周波数領域表現を含み、前記表現は、レベル毎に配置された複数の高周波数サブバンドと一つの低周波数サブバンドとを含み、前記各サブバンドは、複数のタイルに分割されており、前記各レベルは前記画像の隣接する解像度間の周波数成分を表現し、前記各タイルは、所定の解像度における前記画像の一部に対する周波数成分を表現し、前記装置は、前記画像の一部にアクセスするために、各レベル毎に前記画像の空間的に同じ部分に対応した各タイルの組毎の、前記データストリームにおける一つのポインタを取り出す手段を含むことを特徴とする復号装置が提供される。
【発明の効果】
【００１３】
本発明によれば、符号化データストリームにおける、所望の解像度表現で画像中の所定の局所部分に対応するストリームに効率良くアクセスでき、結果的に高速に所望画像を再生できる。
【発明を実施するための最良の形態】
【００１４】
図１は、本発明の好適な実施の形態による符号化処理１００のフロー図を示している。スタートステップ１０１では、デジタル画像が入力され、また、符号化処理１００のために初期化ステップ１０２が実行される。初期化ステップ１０２では、デジタル画像のための圧縮品質や圧縮ファクター等の符号化パラメータが所望の値にセットされる。
【００１５】
次に、分解ステップ１０３が実行され、ここでは、画像の複数レベルサブバンド分解（multi-level subband decomposition）が実行される。画像の複数レベルサブバンド分解は、通常、複数のブロック（サブバンド）へ、分割された複数の係数を与える。係数は、デジタル（空間領域：spatial domain）画像の非冗長的(（non-redundant）な複数解像度（サイズ）周波数領域（frequency domain)を提供する。
【００１６】
これに関連して、非冗長性は、画像の第二の表現に要求される値の数が実質的に等しい画像の第１の表現における値の数に関連する。つまり、周波数領域表現における係数の合計数は、空間領域表現における画像の画素の値の合計数に実質的に等しい。すなわち、画像の複数解像度（周波数領域）表現は、画素値又は対応する係数の複製なしに実行される。
【００１７】
本実施形態においては、複数レベルサブバンド分解は、３−レベルの離散ウェーブレット変換（ＤＷＴ）である。しかしながら、サブバンド分解を提供する他の変換も、本発明の範囲及び要旨から離れることなく代用することができる。例えば、離散コサイン変換（ＤＣＴ）を用いることもできる。
【００１８】
ＤＷＴが適用されるレベルの数は、一般的に、変換される画像のサイズ及び要求される解像度（サイズ）の数に依存する。通常、ＮレベルのＤＷＴは、解像度の数の合計が、画像の最高解像度（全サイズ）を含み、Ｎ＋１である。
【００１９】
図２は、画像の３レベルＤＷＴを実行した後に得られる表現２００を示している。
【００２０】
通常、各々のレベルは、画像３つの高周波数サブバンドとＤＣ（低周波数）サブバンドとからなる最高又は最低レベルを除く、３つの高周波数サブバンドから構成される。３レベルＤＷＴの複数の係数は、単一レベルＤＷＴの３つのアプリケーションに起因する。これらの係数は、各々の係数によって表される周波数領域又は周波数に従って、サブバンドへグループ化又は部分化されている。
【００２１】
サブバンドには、ＤＣ、ＨＬ３、ＨＨ３、ＬＨ３、ＨＬ２、ＨＨ２、ＬＨ２，ＨＬ１、ＨＨ１及びＬＨ１というラベルが付される。ＤＣサブバンドブロックは、最も低い周波数（ＤＣ）係数を含み、また、周波数領域における画像の最も低い解像度（サイズ）を表現する。レベル３（３）サブバンドの三つ組、ＨＬ３，ＨＨ３及びＬＨ３は、そのＤＣサブバンドと共に、周波数領域における画像の次に高い解像度を表現する。ＤＣサブバンド、レベル３サブバンドの三つ組及びレベル２（２）サブバンドの三つ組（Ｈｌ２，ＨＨ２及びＬＨ２）は、別の更に高い解像度を表現する。すなわち、ＤＣサブバンドからＬＨ１サブバンドへのサブバンドの選択は、周波数領域におけるデジタル画像の最も高い解像度（全サイズ）を表現する。
【００２２】
サブバンドブロックにおける各々の係数は、デジタル画像における画素の空間的に連続したグループに対応している。係数は、係数が配置されたサブバンドによって決定される周波数の領域のための、空間領域における画素の内容グループを表す。例えば、レベル１（１）のサブバンドにおける各々の係数は、画像の画素の２×２グループに相当し、レベル２のサブバンドにおける各々の係数は、画像の画素の４×４グループに相当し、レベル３のサブバンドにおける係数は、画像の画素の８×８グループに相当する。一般に、レベルｊのサブバンドにおける係数は、画像の画素値の２ｊ×２ｊグループに相当する。周波数領域における係数と空間領域における画素のグループとの間の関連における近似の程度は、ＤＷＴのために選択された基本セットに依存する。例えば、ＤＷＴのためにＨａａｒ基本セット（すなわち、Ｈａａｒ変換）が用いられた場合は、画素のグループの正確な再構成（合成）が、周波数領域における対応する係数から可能である。
【００２３】
画像のサブバンドの分解に加えて、分解ステップ１０３（図１）では、各々のサブバンドを複数の重複しないタイルへ分割する。各々のサブバンドは同じ数のタイルからなり、各々のタイルは、１又はそれ以上の対応するサブバンドの係数を含むことが好ましい。すなわち、例えば、ＤＣサブバンドブロックにおけるタイルは、最低の解像度におけるデジタル画像の一部を表す。タイルは、一定のサイズに選択することもできる。すなわち、本発明の範囲及び要旨から逸脱することなく、タイル毎に同じ数だけの係数を含むことである。
【００２４】
サブバンドブロックをタイル化することの利点は、画像全体を再構成することなしに、画像の局所部分のみを合成（再構成）できることにある。後述するように、各々のタイル又はタイルのグループは、画像の圧縮を達成するためにエントロピー符号化される。すなわち、所定の一のタイルをエントロピー復号すること及び逆ＤＷＴを通じてタイルを合成することは、画像の所定の局所部分の再構成を招来する。
【００２５】
タイルの相対的なサイズ（例えば、サブバンドのサイズの１／４）は、予め決定され、また、通常、圧縮効率（大きなタイルを要求する）と、画像の一部の局所的な再構成の正確さ（可能な最も小さいサイズを要求する）との間の兼ね合いによって制約される。圧縮効率と再構成の局所化との間の妥協策は、通常は、図１の符号化処理の指定されたアプリケーションのために決定される。
【００２６】
画像を、その対応する周波数領域においてタイル化することの他のアプローチは、画像の空間領域における画素の領域を同一化することであり、変換（すなわちＤＷＴ）が適用されたときに、各々の領域が周波数領域のタイル化に対応することである。実際には、画像の空間領域は、概念的に複数の領域に分割され、所定の線形変換のアプリケーション上にて、画像の対応する周波数領域のタイル化を招来する。
【００２７】
図３は、１２８×１２８画素画像の周波数領域表現３００を示している。周波数領域表現は、図２に従ってサブバンド３０２へ分割される１２８×１２８の分割された係数３０１（太線により図３に示す。）の配列を備える。各々のサブバンドは、更に分割され又は４つの重複しないタイル３０３にタイル化される。
【００２８】
図４は、各々のサブバンド３０２における各々のタイルのために与えられたラベルの付された図である。ラベルの付された図において、各々のサブバンドにおけるタイルには、オーダ(order)対（ｍ、ｎ）により、次のように、ラベルが付されている。左上のタイルは、タイル（０、０）が付され、右上のタイルは（０、１）が付され、左下のタイルは（１、０）が付され、右下のタイルは（１、１）が付される。
【００２９】
すなわち、図２のサブバンドのラベル化及び図４のタイルのラベル化図によれば、図３におけるタイルは、そのサブバンドのラベルとそのタイルのラベルとの双方によって特定される。例えば、図３を参照すると、タイル３０４は、ＤＣサブバンドに属し、また、サブバンドの左上のタイルなので、ＤＣ（０、０）、として特定される。
【００３０】
再び図１を参照して、符号化処理１００における次のステップは、分解ステップ１０３の後、ＤＣサブバンドブロックの各々のタイルをビットストリーム中へエントロピー符号化するＤＣ符号化処理１０４である。各々のサブバンドにおけるタイル３０３は、ラスタオーダ（raster oder)においてビットストリームにエントロピー符号化されることが好ましい。例えば、ＤＣサブバンドの各々のタイルは、エントロピー符号化され、以下のオーダー、ＤＣ（０、０）、ＤＣ（０、１）、ＤＣ（１、０）及びＤＣ（１、１）で、ビットストリームに付加される。ビットストリーム中への各々のタイルの係数のこのラスタオーダに関して記載された本発明に係る本実施形態に対して、本発明の範囲及び要旨を逸脱することなく、ビットストリーム中への各々のタイルにおける係数の異なったオーダ化手法を採用できることが、当業者であれば理解できるであろう。例えば、各々のタイル（又は後述する三つ組のタイル）における各々の係数のバイナリー表現のビットを差込むことは、デコーダ及びその対応するエンコーダが同じオーダ手法に従っているならば採用し得る。
【００３１】
本実施形態において用いられるエントロピー符号化及び復号の処理は、＜エントロピー符号化処理＞欄、および、＜エントロピー復号処理＞欄においてそれぞれより詳細に説明する。しかしながら、本発明の範囲及び要旨から逸脱することなく、各々のタイルにおける係数を符号化（復号）するために、他のエントロピー符号化（復号）手法も用いることができる。例えば、ハフマン又は算術符号化（復号）手法も各々のタイルにおける係数を符号化（復号）するために用いることができる。
【００３２】
図１のフロー図における次のステップは、ステップ１０５において、レベルカウントであり可変の「levelNum」をＤＷＴのレベルの数に対応した値３（３）に初期設定することである。
【００３３】
次に、ステップ１０６において、「tile Num」としてここでは参照される可変のタイルカウントは、ゼロ（０）に初期設定される。可変のlevelNumとtileNumは、図１の符号化処理がＡＣサブバンド（すなわち、前もってビットストリーム中へエントロピー符号化されたＤＣサブバンド以外の全てのサブバンド）の各々のタイルを通してカウントダウンすることを許容するように変化するループである。タイルカウントである可変の「tileNum」は、フロー図における次のステップ１０７に加算され、それから３つのステップ、エントロピー符号化ＨＬサブバンドステップ１０８、エントロピー符号化ＬＨサブバンドステップ１０９及びエントロピー符号化ＨＨサブバンドステップ１１０、が続く。エントロピー符号化ＨＬサブバンドステップ１０８では、「levelNum」で示された現在の解像度レベルで、「tileNum]によって示された現在のタイルのビットストリーム中へのエントロピー符号化を実行する。実質的に同様の手法で、ステップ１０９及び１１０ではサブバンドＬＨ及びＨＨの現在のレベルにおける現在のタイルを、ビットストリーム中へそれぞれエントロピー符号化する。
【００３４】
決定ステップ１１１では、現在のタイルが、現在のレベルにおける最後のタイルであるか否かを決定するためのチェックを行う。決定ステップ１１１が偽（ｎｏ）を返した場合は、処理は、１１２によりループして、「tileNum」の加算ステップ１０７へ戻り、新たな現在のタイルについてステップ１０７、１０８、１０９、１１０及び１１１の処理が実質的に既に述べたように反復される。そうではなく、決定ステップ１１１が真（ｙｅｓ）を返した場合は、処理は、ステップ１１３へ進み、可変の「levelNum」が減算される。
【００３５】
決定ステップ１１４では、現在のレベルが、処理の最後のレベルか否か、すなわち、「levelNum」がゼロ（０）か否かを決定するためのチェックを行う。決定ステップ１１４が偽（ｎｏ）を返した場合は、図１の符号化処理は、ループして戻り、ステップ１０６における「tileNum」をゼロ（０）に初期化し、実質的に先に述べたようなステップ１０７乃至１１４の処理を、新たな現在のレベル（すなわち減算されたlevelNum）のために反復する。そうではなく、決定ステップ１１４が真（ｙｅｓ）を返した場合は、本実施形態に従って符号化されたビットストリームが作成され、処理１００はステップ１１５において終了する。
【００３６】
符号化処理１００の結果によるビットストリームは、図１を参照して、次のように表現することができる。ＤＣ（０、０）、ＤＣ（０、１）、ＤＣ（１、０）、ＤＣ（１、１）、ＨＬ３（０、０）、ＬＨ３（０、０）、ＨＨ３（０、０）、ＨＬ３（０、１）、ＬＨ３（０、１）、ＨＨ３（０、１）、ＨＬ３（１、０）、ＬＨ３（１、０），ＨＨ３（１、０）、ＨＬ３（１、１）、ＬＨ３（１、１）、ＨＨ３（１、１）．．．．ＨＬ１（１、１）、ＬＨ１（１、１）、ＨＨ１（１、１）。
【００３７】
ヘッダー情報は、上記表現には含まれていない。
【００３８】
図１を参照して上述した通り、各々のタイル、例えば、上記表現におけるＤＣ（０，０）は、独立してエントロピー符号化される。しかしながら、係数のより大きなグループをエントロピー符号化することによって、よりよい全体の圧縮率を達成しつつ、画像の所望の部分の再構成に関して実質的に同様の局所処理の正確さを一般的に維持するため、実際にはタイルのグループをいっしょにエントロピー符号化することが要望される。例えば、実際には、もし、ＨＬ３（０，０）がエントロピー復号されたならば、画像の一部の画素値を得るために、それから、タイルＬＨ３（０，０）及びＨＨ３（０、０）も復号されるだろう。これらのタイルは、画像の同じ部分に関連するからである。すなわち、各々のＡＣサブバンドブロックの三つ組（ＨＬ，ＬＨ及びＨＨ）のために対応するタイルは、単一ユニットとしてエントロピー復号され得ることがこのましい。この単一ユニットは、以下、「タイル三つ組」（すなわち、ＨＬ３（０，０）、ＬＨ３（０，０）及びＨＨ３（０、０）は、そのようなタイル三つ組である。）と称する。
【００３９】
図５には、全体のビットストリームを実質的に表した線図５００が示されている。ビットストリームの始まり５０１におけるヘッダー情報は、ビットストリームのサイズ、圧縮品質のパラメータ、及び圧縮率の値の情報が含まれ得る。ヘッダー情報は、また、符号化されたタイルの実質的なランダムアクセスを許容するための複数のビットストリームポインタ情報をも含む。例えば、ポインター情報は、ＤＣサブバンドにおける各々のタイルの開始位置に対するポインタや各々のタイル三つ組の開始位置に対するポインタを備える。あるいは、ポインタ情報はビットストリームにおける各々のタイルの開始位置に対するポインタを含むことができる。ポインタ情報は、タイル毎のビット数又は単一ユニットとしてエントロピー符号化されたタイル三つ組毎のビット数であることが好ましい。あるいは、ポインタ情報は、タイル三つ組毎のバイト数であり、タイル又はタイル三つ組のコードは、バイトの全体数になるように引き伸ばされる。そのようなポインタ情報は、必ずしも絶対的なアドレスである必要はないが各々のタイル又はタイル三つ組の開始位置に対する相対的なアドレスとすることができる。
【００４０】
好ましくは、もし、タイル（又はタイル三つ組）が、全体的にゼロ係数から構成されるときは、そのタイル（又はタイル三つ組）に対する相対的なポインタとして記録することができ、そのタイルのためのビットストリームにおいてビットは要しない。対応するポインタ情報（すなわち、ゼロ）と隣接するタイルのサイズとから、ゼロの係数がいくつあるかを決定することができるからである。この好ましい特徴は、ビットストリームに対する追加の圧縮を提供し、一又は複数のタイルが全体的にゼロの係数から構成されることが決定される。
【００４１】
ＤＣサブバンドのためのエントロピー符号化されたタイルは、ビットストリーム５００において連続的に配置され、図１乃至４を参照して上述した通り、レベル３のサブバンド、レベル２のサブバンド、及び、レベル１のサブバンド、のためのエントロピー符号化タイルが続く。
【００４２】
エントロピー符号化されたタイル（又はタイル三つ組）は、当該タイル又はタイル三つ組のエントロピー符号化又は復号のために用いられる、対応するタイルヘッダー情報（図５では図示しない）を要求するかもしれない。例えば、本実施形態のエントロピー符号化又は復号方法のためには、最大ビット平面を示す最大ビット数「maxbitNumber」が、配置された係数のエントロピー符号化又は復号のために要求される。すなわち、例えば、本実施形態のエントロピー符号化又は復号方法を用いたエントロピー符号化又は復号をするために、タイルは、当該タイルのための「maxbitNumber」を含む、関連・対応するタイルヘッダー情報を要求する。
【００４３】
以下、タイルとタイル三つ組という用語は、特に、エントロピー符号化又は復号について言及しているときは、相互に交換可能に用いられる。タイル三つ組における最大の係数の大きさからmaxbitNumberが決定される場合を除き、タイル三つ組のエントロピー符号化又は復号は、好ましくは、タイル上で、タイル基底（tile basis)毎に、実行されるからである。
【００４４】
ヘッダー情報は、対応する各々のタイルの開始位置においてビットストリーム５００において配置され、また、各々のタイルの係数から独立して符号化されることが好ましい。通常、タイルのヘッダー情報は、各々のタイルにおける係数のために用いられるものとは異なるエントロピー符号化技術によってエントロピー符号化される。例えば、ハフマン符号化は、タイルのヘッダー情報のために用いることができ、一方、対応するタイルの係数は本実施形態のエントロピー符号化方法を用いることによりエントロピー符号化される。
【００４５】
図６は、本実施形態により符号化された圧縮画像５００（ビットストリーム）から、画像の所定の部分を復号するためのフロー図を示している。スタートステップ６００では、圧縮画像５００（ビットストリーム）から所望の画像の領域及び当該領域の解像度（又はサイズ）が選択される。
【００４６】
処理は、次のステップ６０１へ進み、ここでは、タイルの数に関する決定がなされ、ビットストリーム５００中に復号されたタイルの当該数が、先のステップ６００で選択された画像の領域を得るために復号される。ビットストリーム５００から復号されるタイルの数は、少なくとも当該タイルから得られる領域が選択された領域を包囲するようなものであることが好ましい。
【００４７】
次のステップ６０２では、ビットストリーム５００のヘッダーにおけるポインタ情報が、ビットストリーム５００から復号すべきタイルを見つけるために用いられる。ビットストリーム５００において各々の所望のタイルが見つけられると、そのタイルは、復号ステップ６０３へ渡される。復号ステップ６０３は、始めにタイルのためのタイルヘッダ情報を復号し、その情報（すなわち、maxbitNumber）を用いてそのタイルをエントロピー復号する。そのタイルは、エントロピー復号されて出力される。
【００４８】
決定ステップ６０４では、現在のタイルが、先のステップ６０１において決定されたタイルの最後のタイル否かを決定するためのチェックが行われる。決定ステップ６０４が偽（ｎｏ）を返したら、図６のフロー図は、６０５からループしてステップ６０２に戻り、ステップ６０２乃至６０４が、上述したように反復される。そうではなく、決定ステップ６０４が真（ｙｅｓ）を返した場合は、所望の数のタイルが復号され、出力されて、本実施形態の復号処理がステップ６０６にて終了する。
【００４９】
復号されたタイルは、通常、記憶ユニットに出力され、ビデオディスプレイ装置上に表示される前に、サブバンド解析（すなわち、逆ＤＷＴ）が実行される。
【００５０】
＜エントロピー符号化処理＞
本実施形態の更なる説明をする前に、以下で用いる術語について簡単に説明する。数「ビットｎ」又は「ビット数ｎ」の二進数表現は、最下位ビット（ビット０で始まる）の左側で桁ｎ番目を表す。例えば、８ビットの二進数表現を想定すると、十進数の９は００００１００１として表現される。この数において、ビット３は１に等しく、ビット２、ビット１及びビット０は、それぞれ０、０及び１に等しい。加えて、変換は、縦横に配置された係数を有するマトリックスとして表現され、各々の係数はビット列によって表現され得る。概念的に言えば、マトリックスは、３つの次元を有する。１つめは行方向における次元、二つめは列方向における次元、３つめはビット列の方向の次元である。この３次元空間（同じビット数において各々のビット列を通過する）における平面は、「ビット平面」又は「ビットの平面」と称する。
【００５１】
変換符号化アプリケーションで、係数の可能な範囲を表すために要求される係数毎のビットの数は、線形変換又は入力画像における各画素の解像度（画素毎のビットにおける）によって決定される。各画素の値の範囲は、通常、変換係数の大半の値に対して大きく、すなわち、大半の係数は、ゼロが先行する大きな数を有している。例えば、数値９は、８ビット表現で４個のゼロが先行し、１６ビット表現では１２個のゼロが先行する。本実施形態では、効率的な方法で、係数のブロックに対して、これらの先行するゼロを表現する（又は符号化）するための方法及び装置を提供する。残りのビットと数値の符号は変更なしに直接符号化される。
【００５２】
説明を簡略化して本発明を不必要に不明瞭にしないために、以下、変換係数は、符号なし二進数の形で符号１ビットをつけて表現するものとする。つまり、十進数−９及び９は、同じビット列、すなわち１００１で表現され、前者は等しい符号ビットで負の値であることを表現し、後者は、０に等しい符号ビットで正の値を表現する。先行するゼロの個数は、変換係数の範囲によって決定する。整数表現を用いる場合において、当該係数は、すでに暗黙のうちに最も近い整数値へ量子化されているが、本実施形態においては、必ずしも要しない。さらに、圧縮目的で、少数点以下のビットに含まれる何らかの情報は通常無視される。
【００５３】
タイルは、一組の連続した画像係数で構成される。係数という術語は、以下、画素と相互交換可能に用いられるが、当業者によって十分に理解されるように、前者は、通常、変換領域（例えば、ＤＷＴ領域）における画素を表すために用いられる。
【００５４】
図７は、本実施形態によるエントロピー符号化方法を図示したフロー図である。ステップ７０２では、タイルを用いて処理が開始する。ステップ７０６では、絶対値が最大の変換係数の最上位ビット（ＭＳＢ）が、タイルのヘッダ情報から決定され、パラメータ「maxBitNumber」が、この係数値にセットされる。例えば、最大の変換係数が二進数の値００００１００１（十進数で９）の場合、パラメータ「maxBitNumber」は３にセットされる。これは、そのＭＳＢがビット番号３だからである。これ以外に、パラメータ「maxBitNumber」は、絶対値が最大の変換係数のＭＳＢよりも大きな値をセットしてもよい。タイル三つ組のために当該三つ組における各々のタイルが別々にエントロピー符号化されるが、当該タイル三つ組のための「maxBitNumber」は利用される。実際に、タイル三つ組における３つのタイルはその後いっしょに復号されるため、共通の「maxBitNumber」の利用はタイル三つ組と当該タイル三つ組における各々のタイルとを関連付ける。問題となるタイル全体に対して各々初期領域をセットすることにより、各々のタイルは、別々に処理されることができる。
【００５５】
更に、ステップ７０６では、符号化パラメータ、「minBitNumber」が、符号化画像品質を指定するようにセットされる。さらに詳しくは、この符号化パラメータは、変換される画像の全ての係数の精度を指定し、必要に応じて変更できる。例えば、「minBitNumber」が３であれば、１の場合よりも、元の画像の再現がより粗くなる。
【００５６】
「minBitNumber」は、通常、ビットストリーム５００のヘッダー情報に記録され、画像全体の圧縮の品質を定義する。
【００５７】
ステップ７１２において開始されて、各々のタイルは、タイル全体として初期領域をセットすることにより符号化される。ステップ７１４において、領域は、パラメータとしての「maxBitNumber」及び「minBitNumber」と共に符号化される。ステップ７１６において処理が終了する。
【００５８】
図８は、各々の領域を符号化するための、図７のステップ７１４において呼び出される手順、「Code region(currentBitNumber，minBitNumber）」のフロー図を詳細に示したものであり、ここでは「maxbitNumber」は、「currentBitNumber」として与えられる。ステップ８０２では、処理が開始する。図８の領域符号化処理への入力は、「currentBitNumber」及び「minBitNumber」のパラメータを含む。当該方法は、再帰的技術、すなわち、処理が、選択された領域又はサブ領域と共にそれ自身を呼び出すことができる技術、として実行されことが好ましい。しかしながら、その処理は、本発明の範囲及び要旨から逸脱することなく、非再帰的な手法において実行してもよい。
【００５９】
決定ブロック８０４では、「currentBitNumber」パラメータが「minBitNumber」パラメータよりも小さいかどうかを決定するためのチェックが行われる。決定ブロック８０４が真（ｙｅｓ）を返したらならば、何も行われず、ステップ８０６における呼び出し手順（又は親処理）へ戻る。この条件は、選択領域のあらゆる係数が「minBitNumber」よりも小さいＭＳＢ番号を有することを表している。そうではなく、決定ブロック８０４が偽（ｎｏ）を返した場合は、処理は決定ブロック８０８に進む。
【００６０】
決定ブロック８０８では、選択された領域が、１×１画素かどうかを決定するためのチェックが行われる。本実施形態では、１×１画素の所定のサイズで説明しているが、当業者であれば、本発明の範囲及び要旨を逸脱することなく、他の異なるサイズを用いることができることが明らかである。所定のサイズは、Ｍ×Ｎ画素とすることができ、この場合、Ｍ及びＮは共に正の整数である。例えば、所定のサイズは２×２の画素又は係数よりも小さいか同じサイズであってもよい。決定ブロック８０８が、真（ｙｅｓ）を返したならば、処理はステップ８１０へ進む。ステップ８１０では、１×１画素が符号化される。ここでも、当業者にとって、異なる所定のサイズ（Ｍ×Ｎ画素）を用いることができることは明らかである。更に、所定のサイズは、２×２の画素又は係数より小さいか同じサイズであってもよい。好ましくは、このステップ８１０は、符号化表現に「minBitNumber」より上の残りのビットを直接出力することを伴う。ステップ８１２では、処理は、呼び出し手順へ戻る。そうではなく、決定ブロック８０８が偽（ｎｏ）を返した場合、領域は一以上の係数より構成されており、処理は決定ブロック８１４へ進む。
【００６１】
決定ブロック８１４では、有意か否かを決定するために選択領域がチェックされる。すなわち、その領域の有意性を調べる。領域内で各々の係数のＭＳＢが「currentBitNumber」パラメータの値よりも小さい場合には当該領域は有意でないとされる。領域有意性の考え方を明確にするため、式（１）に数学的定義を掲載する。任意のビット番号で、仮にcurrentBitNumber＝ｎで、領域は次のような場合に有意でないとされる：
【００６２】
【数１】
2006304345.tif 000003
【００６３】
ここで、Ｒは領域、ｃｉｊは当該領域内の係数（ｉ，ｊ）を表す。
【００６４】
決定ブロック８１４が偽（ｎｏ）を返した場合は、処理はステップ８１６へ進む。ステップ８１６では、値０（すなわち第１のトークン：first token）が符号化表現ストリームに出力され、「currentBitNumber」が１つ減算されて、サブルーチン「Code region(currentBitNumber−１、minBitNumber）」に対して、再帰的な呼び出しがステップ８１７においてされる。すなわち、次に、領域のより低いビット平面が処理のために選択される。処理はその後、決定ブロック８０４へ進み、領域は、パラメータ「currentBitNumber−１」及び「minBitNumber」により再び処理される。そうではなく、決定ブロック８１４が真（ｙｅｓ）を返した場合は、その領域は有意であり、処理はステップ８１８へ進む。代わりに、再帰的な関数の呼び出し数を減ずるため、ステップ８１４を、「currentBitNumber−ｎゼロ」を出力させる工程に変更することもできる。ここでのｎは有意な領域の最大の整数である。もし、ｎが「minBitNumber」よりも小さくない場合は、処理はステップ８１８へ進み、その他の場合は関数が終了する。
【００６５】
ステップ８１８では、値１（すなわち第２のトークン：second token)が符号化表現ストリームに出力される。ステップ８２０では、選択された領域が所定の数（好ましくは４）のサブ領域に、指定された分割アルゴリズム又は処理を用いることにより分割される。用いられる分割処理にデコーダは対応している。
【００６６】
本実施形態においては、正方形領域が用いられ、各々の正方形領域は、４分木方式により分割される。すなわち、領域は、４つの同じサイズ（正方形）の領域に分割されるのが好ましい。サブ領域は、その後、再帰的に選択され、再び４つの同じサイズ（正方形）のサブ領域に分割される。再帰的な分割のためのサブ領域の選択は、実質的にサブ領域の係数の値に依存し、所望のサイズのサブ領域に至るか又はサブ領域の全ての係数がゼロになったときに再帰はストップする。この４分木形式の分割は、当初の領域のサイズ及び形状に依存しており、常に可能とは限らない。もし、可能でないならば、当初の領域は、２のべき乗(power)である次元を有するいくつかの正方形領域に分割することができ、これらの区分は、別々に符号化することができる。いずれにしても、インテリジェントな形式でなされれば、この初期化がもたらす影響は最小である。他の実施形態では、ブロック単位のコーダに適している異なる分割が用いられる。
【００６７】
ステップ８２２では、各々のサブ領域が同じ「currentBitNumber」及び「minBitNumber」パラメータにより符号化される。好ましくは、これは、図８の処理「Code region（currentBitNumber、minBitNumber）」を再帰的に呼び出すことによりなされる。サブ領域のこの符号化は並行して若しくは連続して実行され得る。
【００６８】
符号化表現において、変換係数は「currentBitNumber」から「minBitNumber」へ画素ビットを単に出力することによって符号化される。好ましくは、約束事にしたがって、いくつかの係数ビットがゼロでない場合にのみ、符号が出力される。例えば、もし「currentBitNumber」＝３で、「minBitNumber」＝１であれば、−９（００００１００１）は、符号ビット「１」に続く「１００」として符号化される。
【００６９】
＜圧縮符号化の例＞
本実施形態のエントロピー符号化方法は、大半の変換係数の先行するゼロを効率的に符号化する一方で、最上位ビットから所定の最下位のビットへ、パラメータ「minBitNumber」によって指定されるビットを符号化し、符号は単純にそのままとする。すなわち、本実施形態は、先行するゼロをうまく表現する。この方法は、ある状況で、すなわち、所定の手法でゆがめられた配列された係数を符号化する場合にはとても効果的であり、通常、広いダイナミックレンジが示される。通常、いくつかの係数がとても大きな値を持つ一方で、大半はとても小さな値をもつ。係数の大きさは、最も大きな大きさの係数から実質的に降順に配置されるような配列において配置される。
【００７０】
４×４係数からなる２次元領域を符号化する例を、図１１Ａ乃至１１Ｄを参照して説明する。図１１Ａの４×４領域１１００の処理は「maxBitNumber」を７にセットして開始さる。これが、全ての係数の中で最も大きなビット番号（ビット平面）だからである。
【００７１】
【数２】
2006304345.tif 000004
【００７２】
説明のため、「minBitNumber」は３にセットされる。タイルのヘッダー（情報）は、「maxbitNumber」を含む符号化表現に出力されるのが好ましい。領域１１００を符号化する処理は以下のとおりである。
【００７３】
「currentBitNumber」＝７で、（１）が出力される。領域１１００はビット番号７に対して有意だからである（決定ブロック８０４、８０８及び８１４、及び、図８のステップ８１８を参照）。領域１１００は、その後、４つのサブ領域、図１１Ａの左上の領域１１１０、右上の領域１１１２、左下の領域１１１４及び右下の領域１１１６、に分割される（図８のステップ８２０を参照）。各々のサブ領域は２×２係数からなる。
【００７４】
図１１Ａのサブ領域１１１０、１１１２、１１１４及び１１１６は、図１１Ｂに示した予め定義された処理シーケンスにおいて順に符号化され、領域１１５０は４つのサブ領域１１５０Ａ乃至１１５０Ｄから構成される。図に示された３本の矢印は、処理の順番又はシーケンス、すなわち、左上のサブ領域１１５０Ａ、右上のサブ領域１１５０Ｂ、左下のサブ領域１１５０Ｃ及び右下のサブ領域１１５０Ｄ、をそれぞれ示している。
【００７５】
図１１Ａのサブ領域１１１０は、最初に符号化される（図８のステップ８２２を参照）。「currentBitNumber」が７に等しい場合、（１）が符号化表現に出力される。サブ領域１１１０は、その後、４つの１×１画素（十進数値２００、１３、−１３、及び３を有する）に分割される。これらの係数の各々は、「currentBitNumber」＝７から「minBitNumber」＝３までの各係数のビットをへ出力することで符号化される（図８の決定ブロック８０８及びステップ８１０を参照）。符号ビットは、その後必要に応じて出力される。このようにして、十進数での値が２００なら符号ビット０に続けて１１００１と符号化される。係数値１３は、符号ビット０付きで００００１として符号化される。係数値−１３は、符号ビット１の付いた００００１に符号化される。最後に、係数値３は、０００００（符号ビットなし）に符号化される。各係数の符号化表現は、「currentBitNumber」と「minBitNumber」との間に、係数「２００」のビットに先行する２個の「１」ビットを含む。これで、左上のサブ領域１１１０の符号化が完了する。この段階での符号化出力は次のようになる：
【００７６】
【数３】
2006304345.tif 000005
【００７７】
タイルヘッダー情報は、上記表現には示していない。
【００７８】
右上のサブ領域１１１２は、その後、符号化される（図１１Ｂ毎に）。各「currentBitNumber」が７、６、５及び４について、領域１１１２は、これらのビット番号に対して有意でないため、（０）が出力される。「currentBitNumber」＝３で、（１）が出力される。このビット平面はビット番号３に対して有意だからである。サブ領域１１１２は、値−１１、−８、−４及び−３を有する４つの１×１画素に分割される。これらの十進数の値は、それぞれ、符号ビット１が付されたビット値１、符号ビット１が付されたビット値１、符号ビットなしのビット値０同じくビット値０として符号化される。すなわち、この段階では、符号化表現は、次の通りである。
【００７９】
【数４】
2006304345.tif 000006
【００８０】
その後、左下のサブ領域１１１４が符号化される。（０）が各「currentBitNumber」が７、６、５及び４のために出力される。領域１１１４はこれらのビット番号に対して有意ではないからである。「currentBitNumber」が３で、（１）が出力される。このビット平面は、ビット番号３に対して有意だからである。サブ領域１１１４は、その後、値８、１、２及び−１を有する４つの１×１画素に分割される。これらは、各々、符号ビット０の２進数の値１、符号ビットなしの２進数の値０、０及び０として符号化される。
【００８１】
最後に、値−２、−２、−３及び−３を有する右下のサブ領域１１１６が符号化される。各「currentBitNumber」が７，６，５，４及び３のために、（０）が出力される。サブ領域１１１６は、これらのビット番号に対して有意でないためである。符号ビットは出力されない。すなわち、符号化表現は、以下の通りである。
111100100000100000110000000001111100000011000000000
エントロピーデコーダは、単純にエントロピー符号化処理にならって、図１１Ｃに図示したように符号化表現から領域を再構成する。
【００８２】
復号処理は、多数の方法で"よりスマート"に行うことができる。このような「よりスマート」な手法の一つを図１１Ｄに示す。この場合、各々の非ゼロ係数の大きさは２の「minBitNumber」のべき乗の半分ずつ増加する。これを図１１Ｄに示す。このようにすると、「スマート」な復号処理は、復号した係数と元の係数の間の平均二乗誤差を一般的に減少できる。更に、符号器はこれ以外にもこの（種の）演算を実行でき、これによってデコーダに図１１Ｃに図示した最も簡単な方法を利用させる。
【００８３】
＜エントロピー復号処理＞
図９は、本実施形態のエントロピー符号化処理によりエントロピー符号化されたタイルを復号する手法を図示したフロー図である。ステップ９０２では、符号化表現を用いて処理が開始する。ステップ９０６では、選択されたタイルの復号が、領域を選択されたタイル全体に対してセットすることによって開始される。ステップ９０８では、選択された領域が「maxBitNunber」及び「minBitNumber」パラメータを用いて復号される。処理は、ステップ９１２で終了する。
【００８４】
図１０は、「Decode region（currentBitNumber，minBitNumber）」を呼び出す手順を用いることにより各領域を復号するための、図９のステップ９０８の詳細なフロー図を示している。ここで「maxBitNumber」は「currentBitNumber」として与えられる。ステップ１００２では、処理が開始する。図１０の領域復号処理に対する入力は、「currentBitNumber」及び「minBitNumber」パラメータである。再び、再帰的技術として好適な方法が実行される。しかしながら、本発明の範囲及び要旨から逸脱することなく、当該処理は非再帰的技術で実行されてもよい。
【００８５】
決定ブロック１００４では、「currentBitNumber」が「minBitNumber」より小さいか否かを決定するためのチェックが行われる。決定ブロック１００４が真（ｙｅｓ）を返した場合は、処理はステップ１００６へ進み、処理が、呼び出し手順へ戻る。そうではなく、決定ブロック１００４が偽（ｎｏ）を返した場合は、処理は、決定ブロック９０８へ進む。
【００８６】
決定ブロック１００８では、選択された領域が、１×１画素サイズを有するか否かを決定するチェックが行われる。決定ブロック１００８が真（ｙｅｓ）を返した場合は、処理はステップ１０１０へ進む。ステップ１０１０では、１×１領域が復号される。なお、サイズは予め決定してもよく、Ｍ×Ｎ画素と等しくてもよい。この場合、ＭとＮは正の整数である。例えば、サイズは２×２の画素又は係数と等しいか若しくは小さくしてもよい。処理は、その後、ステップ１０１０における呼び出し手順へ戻る。決定ブロック１００８が、偽（ｎｏ）を返した場合は、処理はステップ１０１４へ進む。ステップ１０１４では、ビットが符号化表現から入力される。
【００８７】
決定ブロック１０１６では、ビットが１に等しいか、すなわち、領域が有意か否かを決定するために、入力がチェックされる。決定ブロック１０１６が偽（ｎｏ）を返した場合は、処理はステップ１０１８へ進む。ステップ１０１７では、「currentBitNumber」が１つ減算されて、サブルーチン「Decode Region（currentBitNumber−１，minBitNumber）」に対して再帰的呼び出しが成され、処理は決定ブロック１００４へ進む。そうではなく、決定ブロック１０１６が真（ｙｅｓ）を返した場合は、処理はステップ１０２０へ進む。ステップ１０２０では、領域が、所定の数（好ましくは４）のサブ領域に分割される。ステップ１０２２では、各サブ領域は「currentBitNumber」及び「minBitNumber」を用いて復号される。本実施形態では、この処理は、図１０に示した処理を再帰的に呼び出すことによりなされる。ステップ１０２４では、処理が呼び出し手順へ戻る。
【００８８】
このように、エンコーダでの有意性の決定から出力されたビットが処理のどのパスを取るかデコーダに指示し、こうしてエンコーダに倣う。
【００８９】
画素とおそらくは符号も適当なビット数（currentBitNumberからminBitNumberまで、及び、それらに非ゼロがある場合には符号ビット）で単純に読み出すことにより復号される。
【００９０】
符号化及び復号処理は、図１２に示されるような従来の汎用コンピュータを用いて実行することがこのましく、図１乃至１１に示した処理は、コンピュータ上で実行されるソフトウエアとして行われる。特に、符号化及び／又は復号処理の工程は、コンピュータによって実行されるソフトウエアにおける指示により達成される。ソフトウエアは２つの部分に分割されてもよく、一つは、符号化及び／又は復号方法を実行するための部分であり、もう一つは、後者とユーザとの間のユーザインターフェースを取り扱う部分である。ソフトウエアは、コンピュータ可読媒体、例えば、後述する記憶装置に格納されてもよい。ソフトウエアはコンピュータ可読媒体からコンピュータにロードされ、その後、コンピュータにより実行される。そのようなソフトウエア又はコンピュータプログラムを有するコンピュータ可読媒体は、コンピュータプログラム製品である。コンピュータ内でそのようなコンピュータプログラム製品を使用することは、本実施形態に関連して、デジタル画像の符号化及びデジタル画像の符号化表現の復号に有利な装置には、むしろ効果的である。システムは、デジタル画像の符号化のため及び対応する画像の符号化表現を復号するため、若しくはその逆のための専用システムとされ得る。
【００９１】
コンピュータシステム１２００は、コンピュータ１２０２と、ビデオディスプレイ１２１６と、入力装置１２１８及び１２２０とを備える。更に、コンピュータシステム１２００は、ラインプリンタ、レーザプリンタ、プロッタ及びコンピュータ１２０１に接続される他の記録装置を含むいくつかの出力装置を有することもできる。コンピュータシステム１２００は、一又は複数の他のコンピュータと、モデム通信経路、コンピュータネットワーク等の適当な通信チャネル１２３０を利用した通信インターフェース１２０８ｃを介して接続することもできる。コンピュータネットワークとしは、ローカルエリアネットワーク（ＬＡＮ），ワイドエリアネットワーク（ＷＡＮ）、イントラネット、及び／又はインターネットが含まれる。
【００９２】
コンピュータ１２０２は、それ自体、中央処理ユニット１２０４と、ランダムアクセスメモリ（ＲＡＭ）及びリードオンリーメモリ（ＲＯＭ）等を含むメモリ１２０６と、入力／出力（ＩＯ）インターフェース１２０８ａ及び１２０８ｂと、ビデオインターフェース１２１０と、一又は複数の記憶装置（概して、図１２のブロック１２１２で示される。）と、を備える。記憶装置１２１２は、一又は複数の、フロッピー（登録商標）ディスク、ハードディスクドライブ、光磁気ディスクドライブ、ＣＤ−ＲＯＭ、磁気テープの他、当業者に公知の不揮発性記憶装置のうちの１又は２以上のものから構成することができる。各々の構成１２０４乃至１２１２は、通常、順にデータバス、アドレスバス、コントロールバスから構成され得るバス１１４を介して相互に接続される。
【００９３】
ビデオインターフェース１２１０は、ビデオディスプレイ１２１６に接続され、コンピュータ１２０２からの表示のためのビデオ信号をビデオディスプレイ１２１６へ供給する。コンピュータ１２０２を操作するためのユーザの入力は、１又は複数の入力装置によってもたらされる。例えば、オペレータは、キーボード１２１８及び／又はマウス１２２０のようなポインティングデバイスを、コンピュータ１２０２への入力のために利用することができる。
【００９４】
システム１２００は、単なる一例であり、本発明の範囲及び要旨から逸脱することなく、他の形式も採用し得る。本実施形態を実施できる典型的なコンピュータには、ＩＢＭ−ＰＣ／ＡＴ又は互換機、マッキントッシュ（ＴＭ）ファミリのコンピュータ、サンマイクロシステムズのSparctation（ＴＭ）等が含まれる。これらは、本実施形態が実行しえるコンピュータの形式の単なる例示に過ぎない。概して、本実施形態の以下の処理は、ソフトウエア又はコンピュータ可読媒体としてのハードディスクドライブ（概して図１２のブロック１２１２に示される）に記録されたプログラムとして備わっており、また、プロセッサ１０４を用いて読取られ、また、制御される。プログラム、画素データ及びネットワークから取りこまれたデータの中間記録は、ハードディスクドライブ１２１２と協同可能な半導体メモリ１２０６を用いることにより実行することができる。
【００９５】
いくつかの場合、プログラムは、ＣＤ−ＲＯＭ又はフロッピー（登録商標）ディスク（共に概してブロック１２１２によって示される）に符号化されてユーザに供給することができ、また、代わりに、例えば、コンピュータに接続されたモデム装置を介してネットワークからユーザによって読取られることもできる。更に、ソフトウエアも、磁気テープ、ＲＯＭ、集積回路、光磁気ディスク、コンピュータと他の装置との間における電波又は赤外線伝送路、ＰＣＭＣＩＡカードのようなコンピュータ可読カード、を含む他のコンピュータ可読媒体から、または、Ｅ−ｍａｉｌ通信及びウェブサイトに記録された情報を含むインターネットおよびイントラネット等から、コンピュータシステム１２００へロードすることもできる。これらは、適切なコンピュータ可読媒体を例示したに過ぎない。他のコンピュータ可読媒体も本発明の範囲及び要旨を逸脱することなく用いることができる。
【００９６】
符号化及び／又は復号の方法は、この他に、符号化及び復号の機能又は補助機能を実行する一又は複数の集積回路のような専用のハードウエアにおいて実行することもできる。そのような専用のハードウエアは、グラフィックプロセッサ、デジタルシグナルプロセッサ、又は、一又は複数のマイクロプロセッサ及び関連するメモリを含むことができる。
【００９７】
システムの一般的な処理において、ユーザは、上述した１又は複数のコンピュータ可読媒体に記録されたデジタル画像を符号化／復号するであろう。その他に、ユーザは、通信チャネル１２３０を介して当該デジタルを取得することもできる。そのような環境では、復号処理は、遠隔のコンピュータ（図示しない）で実行され、また、復号処理はコンピュータ１２０２で実行される。
【００９８】
＜他の実施形態＞
他の実施形態は、上述した実施形態として実質的に説明されるが、画像の複数レベルサブバンド分解によって提供される全ての複数解像度が、効率的にビットストリームへ符号化されるのではなく、予め選択された数のレベル（解像度）のみが、上記実施形態に従って効率的な符号化のために選択される。
【００９９】
すなわち、例えば、図２及び図３に記載された４つの解像度の３つが所望の解像度として選択される。例えば、最も高い解像度ならば、次に高い解像度及び最も低い解像度だけが所望の解像度であり、その後、図１の符号化処理に対するマイナーな修正を伴って、２つの解像度レベルが、効率的に、単一の符号化された解像度を提供するために符号化処理において結合（combine)される。
【０１００】
図１において説明した符号化処理において２つの解像度を結合することにより、効率的に符号化された解像度の合計数は１つづつ減る。解像度レベルの結合により、結合の効果的な解像度は、結合における最も高い解像度と同等になる。
【０１０１】
非冗長的な階層化表現においては、一つの解像度を復号するためには、通常、全ての先のより低い解像度レベルの情報を必要とする。すなわち、結合は、複数解像度の２つ又はそれ以上の隣接するレベルの結合であることが好ましい。この実施形態では、ビットストリームは、例えば、図３により説明したレベル３及びレベル２のサブバンドのタイルを、単一の解像度へ結合したビットストリームを有し、次のように表現される。
【０１０２】
ＤＣ（０、０）、ＤＣ（０、１）、ＤＣ（１、０）、ＤＣ（１、１）、ＨＬ３（０、０）、ＬＨ３（０、０）、ＨＨ３（０、０）、ＨＬ２（０、０）、ＬＨ２（０、０）、ＨＨ２（０、０）、ＨＬ３（０、１）、ＬＨ３（０、１）、ＨＨ３（０、１）、ＨＬ２（０、１）、ＬＨ２（０、１）、ＨＨ２（０、１）、ＨＬ３（１、０）、ＬＨ３（１、０）、ＨＨ３（１、０）、ＨＬ２（１、０）、ＬＨ２（１、０）、ＨＨ２（１、０）、ＨＬ３（１，１）、ＬＨ３（１、１）、ＨＨ３（１，１）．．．．ＨＬ１（１，１）、ＬＨ１（１，１）、ＨＨ１（１、１）
上記表現には、ヘッダ情報は示していない。
【０１０３】
上記実施形態のビットストリームの配置によれば、有利なことに、所定の解像度における画像の局所部分を表現する１又はそれ以上のタイルへ効率的にアクセスできる。しかしながら、アクセスタイム中に、他の実施形態として説明したように解像度レベルの結合においてより低い解像度レベルをほどくために、追加の負担があっても本発明の実施形態によるビットストリームから、画像のサブバンド分解によって得られた全ての解像度は、常に取り出せる。
【０１０４】
本発明の実施形態のビットストリームの配置は、ランダムアクセスのためのアクセス時間が比較的遅い記憶装置へビットストリームを格納し、また、そこから読み出す点で有利である。
【０１０５】
本実施形態において説明したビットストリームの更に有利な点は、デジタル画像の一部にアクセスするために、解像度レベル毎のタイルの行（row）毎のビットストリームへのポインタアクセスが、せいぜい一つし要求されないことにある。
【０１０６】
ポインタ及びサイズ（各々のタイルの係数の数）から決定され得るオフセットは、行（row）におけるタイルをアドレスするために用いることができる。その他に、ビットストリーム中に順番に（連続的に）配置され、（所望の）解像度レベル毎に、空間的に関連のあるタイル毎のポインタがせいぜい要求される。
【０１０７】
本実施形態では、いくつかの例について説明したが、これが全てではない。当業者であれば、ビットストリームの配置のいくつかが、インテリジェントな手法で解像度（サブバンドのレベル）をビットストリーム中へ結合することによってなしえることが理解されるであろう。例えば、ＮレベルＤＷＴ表現で単に最大及び最小の解像度において画像の一部に効率的にアクセスするために、最も小さい解像度以外の解像度を与えるサブバンドにおけるタイルが、上記他の実施形態において説明されたように実質的にビットストリーム中へ結合され得る。
【０１０８】
上述した説明は、本発明の一部の実施形態にのみ関するものであるが、当業者であれば、本発明の範囲及び要旨を逸脱することなく、修正及び／又は変更を行うことができる。
【図面の簡単な説明】
【０１０９】
【図１】本発明の好適な実施の形態による画像符号化処理のブロック図である。
【図２】本発明の好適な実施の形態による符号化された表現の概略図である。
【図３】図２におけるコード表現をタイル化表現した図である。
【図４】図３に示したタイルにオーダーリングしたものを示した図である。
【図５】本発明の好適な実施の形態におけるビットストリームを表した図である。
【図６】本発明の好適な実施の形態における復号処理のブロック図である。
【図７】本発明の好適な実施の形態による画像の表現又は符号化の方法を表したフロー図である。
【図８】図７のある領域を符号化する工程を表した詳細なフロー図である。
【図９】図７に示す方法により生成された画像のコード表記を復号する方法を示すフロー図である。
【図１０】図９のある領域を復号する工程を示すフロー図である。
【図１１Ａ】図７乃至図１０の符号化及び復号方法による２次元、８係数領域の処理を示した図である。
【図１１Ｂ】図７乃至図１０の符号化及び復号方法による２次元、８係数領域の処理を示した図である。
【図１１Ｃ】図７乃至図１０の符号化及び復号方法による２次元、８係数領域の処理を示した図である。
【図１１Ｄ】図７乃至図１０の符号化及び復号方法による２次元、８係数領域の処理を示した図である。
【図１２】本発明の好適な実施形態を実行するためのコンピュータを示した図である。
【図１】
2006304345.tif 000007
【図２】
2006304345.tif 000008
【図３】
2006304345.tif 000009
【図４】
2006304345.tif 000010
【図５】
2006304345.tif 000011
【図６】
2006304345.tif 000012
【図７】
2006304345.tif 000013
【図８】
2006304345.tif 000014
【図９】
2006304345.tif 000015
【図１０】
2006304345.tif 000016
【図１１Ａ】
2006304345.tif 000017
【図１１Ｂ】
2006304345.tif 000018
【図１１Ｃ】
2006304345.tif 000019
【図１１Ｄ】
2006304345.tif 000020
【図１２】
2006304345.tif 000021