(57)【特許請求の範囲】
【請求項１】
画像データをウェーブレット変換して、ＳＳ係数（水平方向低域−垂直方向低域係数）、ＳＤ係数（水平方向低域−垂直方向高域係数）、ＤＳ係数（水平方向高域−垂直方向低域係数）、ＤＤ係数（水平方向高域−垂直方向高域係数）を複数レベル（以下、Ｎレベル）について生成するウェーブレット変換装置であって、
各レベルに対応したＮ個のメモリ要素からなり、各メモリ要素は独立してアクセス可能な複数のメモリから構成されたメモリ部と、少なくとも低域通過フィルタと高域通過フィルタの両方の機能を備えた２組のフィルタ（以下、第１フィルタ、第２フィルタ）及び低域通過フィルタの機能のみ備えたフィルタ（以下、第３フィルタ）からなるフィルタ部と、制御部とを具備し、
前記制御部は、
（１）前記画像データを、偶数ラインの偶数画素、偶数ラインの奇数画素、奇数ラインの偶数画素、奇数ラインの奇数画素に分けて、レベル１のメモリ要素のそれぞれのメモリに書き込み、
（２）前記レベル１のメモリ要素のそれぞれのメモリから画像データを読出し、前記第３のフィルタによってレベル１のＳＳ係数を計算し、該レベル１のＳＳ係数データを、偶数ラインの偶数画素、偶数ラインの奇数画素、奇数ラインの偶数画素、奇数ラインの奇数画素に分けて、レベル２のメモリ要素のそれぞれのメモリに書き込み、
（３）以下同様に、レベルｍ（ｍ＝２，…，Ｎ−１）のメモリ要素のそれぞれのメモリからレベルｍ−１のＳＳ係数を読出し、前記第３のフィルタによってレベルｍのＳＳ係数を計算し、該レベルｍのＳＳ係数データを、偶数ラインの偶数画素、偶数ラインの奇数画素、奇数ラインの偶数画素、奇数ラインの奇数画素に分けて、レベルｍ＋１のメモリ要素のそれぞれのメモリに書き込み、
（４）前記レベル１のメモリ要素のそれぞれのメモリに書き込まれた画像データについて、前記第１フィルタと前記第２フィルタとによって、偶数ライン、偶数画素のウェーブレット変換と奇数ライン、奇数画素のウェーブレット変換とを並列に実行し、得られたレベル１のＳＳ係数、ＳＤ係数、ＤＳ係数、ＤＤ係数を当該レベル１のメモリ要素のそれぞれのメモリに書き込み、
（５）以下、同様に、レベルｍ（ｍ＝２，…，Ｎ）のメモリ要素のそれぞれのメモリに書き込まれたレベルｍ−１のＳＳ係数データについて、前記第１フィルタと前記第２フィルタとによって、偶数ライン、偶数画素のウェーブレット変換と奇数ライン、奇数画素のウェーブレット変換とを並列に実行し、得られたレベルｍのＳＳ係数、ＳＤ係数、ＤＳ係数、ＤＤ係数を当該レベルｍのメモリ要素のそれぞれのメモリに書き込む、
ことを特徴とするウェーブレット変換装置。
【請求項２】
請求項１記載のウェーブレット変換装置において、
前記フィルタ部は、前記第３のフィルタをＮ−１個有し、
前記制御部は、前記画像データをレベル１のメモリ要素に書き込む動作と平行して、前記Ｎ−１個の第３フィルタにより、それぞれレベル１〜Ｎ−１のＳＳ係数を計算して、レベル２〜Ｎのメモリ要素に書き込むことを特徴とするウェーブレット変換装置。
【請求項３】
請求項１記載のウェーブレット変換装置において、
前記フィルタ部は前記第１フィルタ及び前記第２フィルタを各レベルごとに有し、
前記制御部は、レベル１のメモリ要素に画像データが書き込まれた時点、レベルｍ（ｍ＝２，…，Ｎ）のメモリ要素にレベルｍ−１のＳＳ係数データが書き込まれた時点で、それぞれ独立に、当該レベルの前記第１フィルタ及び前記第２フィルタにより、当該レベルのウェーブレット変換処理を開始することを特徴とするウェーブレット変換装置。
【請求項４】
請求項１記載のウェーブレット変換装置において、
前記フィルタ部は、前記第１フィルタ及び前記第２フィルタを各レベルごとに有し、前記第３フィルタをＮ−１個有し、
前記制御部は、
前記画像データをレベル１のメモリ要素に書き込む動作と平行して、前記Ｎ−1個の第３フィルタにより、それぞれレベル１〜Ｎ−１のＳＳ係数を計算して、レベル２〜Ｎのメモリ要素に書き込むと共に、
レベル１のメモリ要素に画像データが書き込まれた時点、レベルｍ（ｍ＝２，…，Ｎ）のメモリ要素にレベルｍ−１のＳＳ係数が書き込まれた時点で、それぞれ独立に、当該レベルの前記第１フィルタ及び前記第２フィルタにより、当該レベルのウェーブレツト変換処理を開始することを特徴とするウェーブレット変換装置。
【請求項５】
請求項１乃至４のいずれか１項に記載のウェーブレット変換装置と、該ウェーブレット変換装置で生成されたウェーブレット変換係数データの符号化及びその符号化データの復号化を行う符号化復号化部とを具備することを特徴とする符号化復号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データ等の圧縮・伸長の分野に係り、特に、ウェーブレット変換装置と、ウェーブレット変換を利用する符号化復号化装置に関する。
【０００２】
【従来の技術】
ウェーブレット変換は、周波数領域と時間領域を同時に表現できるという、フーリエ変換等には無い特長を有することで注目され、近年応用分野が広がりつつある。特に、データ圧縮ヘの応用は、大量のデータの蓄積及び伝送のために非常に有用である。例えば、文書のファクシミリ伝送、あるいはワールドワイドウエブのような画像の伝送に要する時間は、圧縮を使ってその画像の再生に必要とされるビット数を滅らすと、飛躍的に短縮される。
【０００３】
従来より、多くの様々なデータ圧縮手法が存在している。最も広く普及している圧縮方式としてＪＰＥＧ（Joint  Photographic  Experts  Group）がある。ＪＰＥＧにおいては、入力シンボルまたは輝度データは量子化されてから出力符号語ヘ変換される。量子化は、データの重要な特徴量を保存する一方、重要でない特徴量を除去することを目的としている。量子化に先立ち、エネルギー集中のために変換が用いられるが、この変換として採用されているのがＤＣＴ（Discrete  Cosine  Transform）である。ところが、このＤＣＴを用いているＪＰＥＧに対して、さまざまな欠点が指摘されている。例えば、ブロックノイズやモスキートノイズが発生する問題である。画像信号処理の応用においては、これらの欠点を解消する、効率的かつ高精度のデータ圧縮符号化方式を追求することに関心が集中している。その方式の中に、ウェーブレット（waveletｅ）処理方式がある。
【０００４】
２次元信号にウェーブレット変換を適用する場合には、水平方向低域通過型フィルタＨＬ（Horizontal  Low）及び水平方向高域通過型フィルタＨＨ（Horizon−tal  High）を使用して水平方向低域信号（Ｓ（Smooth）係数）及び水平方向高域信号（Ｄ(Detail)係数）に分離し、さらに各々のＳ係数及びＤ係数に対して垂直方向低域通過型フィルタＶＬ（Vertical  Low）及び垂直方向高域通過型フィルタＶＨ（Vertical  High）を使用して水平方向低域−垂直方向低域信号（ＳＳ係数）、水平方向低域−垂直方向高域信号（ＳＤ係数）、水平方向高域−垂直方向低域信号（ＤＳ係数）、及び水平方向高域−垂直方向高域信号（ＤＤ係数）に分離する。水平処理と垂直処理を１回行った出力をレベル１の出力と呼ぶ。また、上記の４種類の信号を周波数帯信号と呼ぶ。レベル２以上の出カを希望するのであれば、この処理をＳＳ係数に対して再帰的に行えばよい。レベル２ではＳＳ係数と、１ＳＤ係数及び２ＳＤ係数、１ＤＳ係数及び２ＤＳ係数、１ＤＤ係数及び２ＤＤ係数、の７つの周波数帯信号が得られる。最初に水平方向にフィルタを用い、次に垂直方向にフィルタを用いる場合について説明したが、この順序は逆でもよい。
【０００５】
ウェーブレット変換を利用する符号化復号化装置においては、以上の過程を経て得られた各周波数帯信号が符号化復号化部で圧縮される。圧縮は周波数帯信号毎にビット単位で行われる。ある周波数帯信号の、一番最初の画素のＭＳＢが処理の対象となる。この画素自身の状態と、周辺の画素の状態及び１つ上のレベルの状態が参照され、出カが決定される。次は、２番目の画素のＭＳＢが処理の対象となるのであるが、この際は一番最初に処理された画素の状態も参照される。以下、符号化されるべき領域に対しての一連の処理が終了すると、一番最初の画素の１つ下位の（ＭＳＢ―１）ビットが処理の対象となる。この際は同じビット深さの周辺画素の状態に加えて、ＭＳＢの状態も参照される。このようにして、符号化されるべき領域に対してＬＳＢまで符号化が行われる。復号化もほぼ同じ手順を経て行われる。
【０００６】
従来のウェーブレット変換装置は、タイルメモリ、制御部及びフィルタから構成される。符号化復号化装置においては、さらに符号化復号化部が付加された構成となる。フィルタにはどのような構成のものを用いてもよいが、ここでは低域通過型フィルタとしては、２組のデータを用いて演算を行う２タップのフィルタを使用するものとする。また、高域通過型フィルタとしては、低域通過型フィルタの出力であるＳ係数のうち、現在の位置と１つ前及び１つ後の合計３組のデータを用いて演算を行う６タップのフィルタを使用するものとする。
【０００７】
図１５に、上記フィルタを用いた場合のウェーブレット変換の処理の例を示す。（ａ）が水平方向の処理を示し、（ｂ）が垂直方向の処理を示す。同図（ａ）において、例えば００は０ライン目の０画素目のデータを意味し、１２は１ライン目の２画素目のデータを意味する（ライン、画素とも０番目から数えるものとする）。水平処理においては、同図（ａ）に示すように、水平方向低域通通型フィルタＨＬの０画素目の出力Ｓ００は、データ００と０１から求められ、１画素目の出力Ｓ０１はデータ０２と０３から求められる。また、水平方向高城通通型フィルタＨＨの０画素目の出力Ｄ００は、データ００の２つ前と１つ前のデータ（実在しない）、データ００と０１、データ０２と０３から求められる。また、垂直処理においては、同図（ｂ）に示すように、垂直方向低域通過型フィルタＶＬの出力ＳＳ００は、データＳ００とＳ１０から求められる。垂直方向高域通過型フィルタＶＨの出力ＳＤ００は、データＳ００の２つ前と１つ前のデータ（実在しない）、データＳ００とＳ１０、データＳ２０とＳ３０から求められる。
【０００８】
図１６は、ウェーブレット変換が施される前のデータの状態を示している。このデータに対し、初めに水平方向の処理が施される。具体的には、データ００の２つ前及び１つ前のデータに、図１７に示すようなマッピングでＳ係数及びＤ係数を書き込んでいく。図中、例えば１Ｓ００はレベル１のアドレス００のＳ係数を意味する。図１８は、垂直処理を行った後の各係数を書き込む際のマッビングの例である。ここまでがレベル１の各係数の格納方法である。
【０００９】
図１９は、レベル２の水平方向の各係数の格納方法の例である。レベル２の処理は１ＳＳ係数に対してのみ行われるため、斜線で示した部分のデータは用いられないことに注意されたい。次いで、図２０に示すようなマッピングでレベル２の各係数が格納され、レベル２の処理が終丁する。以下、所望レベルの周波数帯信号が得られるまで順次処理が施される。
【００１０】
図２１に、従来の一般的なウェーブレット変換装置のタイミングチャ‐トを示す。データのサイズを、Ｘ方向（画素方向）が１２８、Ｙ方向（ライン方向）が１２８、トー夕ル１６ｋＢ（ただし、１ｋ＝１０２４）とし、レベル４までの処理を行う場合の処理時間について、図２１のタイミングチャートを参照しながら説明する。
【００１１】
時刻ｔ０でデータの入力が開始し、同時にレベル１の水平処理（１Ｈ）が開始する。時刻ｔ１まで１Ｈの処理が行われるのであるが、ｔ０からｔ１の期間ではデータの読み込みと、フィルタリング処理及びタイルメモリヘの書込みを並行して行うことができるため、この期間でのクロック数（１個のデータを入カするのに要する時間を１クロックとする）は１６ｋクロック（１ｋ＝１０２４）となる。次に、時刻ｔ１からｔ２まではレベル１の垂直処理（１Ｖ）が行われるのであるが、ここではタイルメモリに対して読み出し及び書込みが行われるため、ｔ０からｔ１の期間の２倍の時間を必要とする。従って、ｔ１からｔ２の期間で８２ｋクロックを要する。レベル２の水平処理（２Ｈ）と垂直処理（２Ｖ）では、１Ｖの処理と同様にタイルメモリに対して入出力が行われるが、データ数は１／４となっている。従って、ｔ２からｔ３の期間は１６ｋクロックとなる。同様に、ｔ３からｔ４の期間は４ｋクロック、ｔ４からｔ５の期間は１ｋクロックとなる。したがって、４レベルのウェーブレット変換のためのトータル時間は６９ｋクロックとなる。
【００１２】
符号化復号化装置においては、ウェーブレット変換の終了後、タイルメモリに書き込まれた各周波数帯信号が符号化復号化部によって符号化される。画像信号は、隣接画素の相関、特に同一ビットプレ‐ン内での相関が高いという特性を活かして圧縮率を上げている。このため、まとまった領域のデータをビット単位で扱っている。復号化は以上述べた動作のほぼ逆順で得られる。
【００１３】
なお、本発明に関連する符号化復号化装置、ウェーブレット変換装置、ウェーブレット変換のためのフィル夕に関するより詳細な情報は、特開平８−１３９９３５号公報などに見られる。また、符号化復号化部については、特開平９−１２１１６８号公報に詳しい。更に、類似のウェーブレット変換装置に関する公知文献としては、特開平３−２７６８７号公報、特開平５−１６７９９７号公報、特開平５−１８３８８６号公報などがある。
【００１４】
【発明が解決しようとする課題】
以上に述べたような従来技術では、ウェーブレット変換に時間がかかるという問題があった。上に述べたように、例えばデータ数が１２８×１２８＝１６ｋＢの場合でも、レベル４までの処理を行うためには６９ｋクロック（データを単純に読み出すために必要な時間の約４．３倍）もかかっていた。また、ウェーブレット変換を、低いレベルから高いレベルへ向かって順次に行うため、符号化復号化部が高いレベルの周波数帯信号を先に要求する場合でも、そのレベルまでウェーブレット変換がほぼ終了するまで符号化復号化部は処理を開始できず、符号化復号化部における待ち時間が長いという問題があった。
【００１５】
よって、本発明の１つの目的は、高速処理が可能で、かつ、任意のレベルの周波数帯信号を任意の順で得ることができるウェーブレット変換装置及びウェーブレット変換処理方法を提供することにある。本発明のもう一つの目的は、高いレベルの周波数帯信号ほど早い時点で生成できる、高速処理が可能なウェーブレット変換装置及びウェーブレット変換処理方法を提供することにある。本発明の他の目的は、符号化復号化部のウェーブレット変換のための待ち時間を減らし、高速処理が可能な符号化復号化装置を提供することにある。
【００１６】
【課題を解決するための手段】
上記目的を達成するための本発明の符号化復号化装置及びウェーブレット変換装置の主要な特徴は、ウェーブレット変換装置に、ウェーブレット変換の対応したレベルのデータを記憶するための、独立してアクセス可能な複数のメモリ要素と、ウェーブレット変換の水平処理及び垂直処理のためのフィルタと、ウェーブレット変換のＳＳ係数の計算のためのフィルタとを具備させることである。もう１つの特徴は、ＳＳ係数データの計算のためのフィルタを複数個具備させることである。他の特徴は、水平処理及び垂直処理のためのフィルタを複数個具備させることである。もう一つの特徴は、各メモリ要素を、独立してアクセス可能な４個のメモリに分割した構成とすることである。
【００１７】
本発明のさらなる特徴と、その動作については、以下の実施の形態において詳細に説明する。
【００１８】
【発明の実施の形態】
以下、添付図面を参照し、本発明の実施の形態について説明する。なお、説明を簡略にするため、添付図面中の複数の図面において同一部分又は対応部分には同一又は同様の参照番号を用いる。
【００１９】
図１は、本発明による符号化復号化装置の全体的構成の一例を示すブロック図である。この符号化復号化装置は、本発明によるウェーブレット変換装置１００と、符号化復号化部１０４とからなる。本発明のウェーブレット変換装置１００は、外部から入力するデータｄａｔａを周波数帯信号に変換するウェーブレット変換と、符号化復号化部１０４により復号された周波数帯信号からデータｄａｔａを復元する逆ウェーブレット変換を行うもので、メモリ部１０１とフィルタ部１０２と制御部１０３とから構成される。符号化復号化部１０４は、ウェーブレット変換装置１００のメモリ部１０１を制御部１０３を介してアクセス可能であり、メモリ部１０１に得られた周波数帯信号を符号化し、符号化データｃｏｄｅを出力し、また、外部から入力する符号化データｃｏｄｅを復号化してウェーブレット変換の周波数帯信号を復元するものである。符号化復号化部１０４は、この種符号化復号化装置における従来の符号化復号化部と同様の構成でよい。
【００２０】
本発明の符号化復号化装置及びウェーブレット変換装置の第１の実施例によれば、図１に示した全体的構成において、ウェーブレット変換装置１００が図２に示すような構成とされる。
【００２１】
図２に見られるように、メモリ部１０１は、所望のウェーブレット変換のレベル数と等しい個数の独立したメモリ要素から構成されている。ここでは、レベル数を４としているため、メモリ部１０１は、４個のメモリ要素、すなわちレベル１に対応したメモリ要素（Ｌ１）２０１、レベル２に対応したメモリ要素（Ｌ２）２０２、レベル３に対応したメモリ要素（Ｌ３）２０３、レベル４に対応したメモリ要素（Ｌ４）２０４から構成されている。また、これらの各メモリ要素２０１〜２０４は、図中にＳＳ、ＤＳ、ＳＤ及びＤＤと記された、独立してアクセス可能な４個のメモリから構成されている。各メモリ要素内のＳＳ〜ＤＳの４個のメモリのワード数は等しいが、そのビット深さはフィルタの構成によって異なることがある。また、メモリ要素２０１〜２０４のワード数、すなわち、それを構成するＳＳ〜ＤＤの４個のメモリの総ワ−ド数は、レベルによって異なる。すなわち、レベル１のメモリ要素（Ｌ１）２０１のワード数は、入力される総データ数と等しい。レベル２のメモリ要素（Ｌ２）２０２のワード数は、レベル１のメモリ要素（Ｌ１）２０１のワ‐ド数の１／４であり、同様に、レベル３のメモリ要素（Ｌ３）のワード数はレベル２のメモリ要素（Ｌ２）２０２のワード数の１／４で、レベル４のメモリ要素（Ｌ４）２０４のワード数は、レベル３のメモリ要素（Ｌ３）２０３のワード数の１／４である。レベル５以上が存在する場合も、同様のルールが適用される。以上に述べたメモリ部１０１の構成は、後述の他の実施例においても同様とする。
【００２２】
フィルタ部１０２は、低域通過型フィルタ及び高域通過型フィルタの両方を備えた２組のフィルタ、すなわちフィルタ（Ａ）２５０及びフィルタ（Ｂ）２５１と、低域通過型フィルタであるフィルタ（ＳＳ）２５２から構成される。フィルタ（Ａ）２５０とフィルタ（Ｂ）２５１は同一の構成のもので、ウェーブレット変換の水平処理、垂直処理のいずれにも使用可能である。フィルタ（ＳＳ）２５２は、外部から入力された生データ又は前レベルのＳＳ係数データからＳＳ係数データを生成するために利用されるものである。
【００２３】
制御部１０３は、メモリ部１０１の各メモリ要素２０１〜２０４を構成する各メモリのアクセスや、メモリ部１０１、フィルタ部１０２、入力データのソース及び符号化復号化部１０４の相互間のデータ転送などを制御する部分である。符号化復号化部１０４は、制御部１０４を介してメモリ部１０１の各メモリ要素２０１〜２０４の構成メモリをアクセス可能である。
【００２４】
図３は、本実施例のウェーブレット変換装置１００のタイミングチャートの一例を示す。図３の時刻ｔ０からｔ１の間で、データｄａｔａが順次入力され、これがメモリ要素（Ｌ１）２０１に書込まれる（“Ｗ”は書き込みを意味する）。この際、入力データは、図４のメモリマップに示すような規則に従って、メモリ要素（Ｌ１）２０１を構成するＳＳ、ＤＳ、ＳＤ、ＤＤの各メモリに振り分けて書き込まれる。この振り分けの規則は次の通りである。ＳＳメモリの０ライン目の０画素目には０ライン目の０画素目のデータが書き込まれ、ＳＤメモリの０ライン目の０画素目には０ライン目の１画素目のデータが書き込まれる。また、ＤＳメモリの０ライン目の０画素目には１ライン目の０画素目のデータが書き込まれ、ＤＤメモリの０ライン目の０画素目には１ライン目の１画素目のデータが書き込まれる。すなわち、偶数ライン目（０ライン目も偶数と数える）の偶数画素目（０画素目も偶数と数える）がＳＳメモリに書き込まれ、偶数ライン目の奇数画素目がＳＤメモリに書き込まれ、奇数ライン目の偶数画素目がＤＳメモリに書き込まれ、奇数ライン目の奇数画素目がＤＤメモリに書き込まれるのである。
【００２５】
続いて、時刻ｔ１からｔ２の間で、メモリ要素（Ｌ１）２０１からデータ（外部からの入力データそのもの）が読み出され（”Ｒ”は読み出しを意味する）、フィルタ（ＳＳ）２５２に入力されてレベル１のＳＳ係数が計算され、得られたＳＳ係数データが、図４に関連して説明した規則と同様の規則に従って、メモリ要素（Ｌ２）２０２の４個のメモリに振り分けられて書き込まれる（“Ｗ”は書き込みを意味する）。次の時刻ｔ２からｔ３の期間に、メモリ要素（Ｌ２）２０２からデータ（レベル１のＳＳ係数データ）が読み出されてフィルタ（ＳＳ）２５２へ入力され、レベル２のＳＳ係数が計算され、このＳＳ係数データも同様な規則に従って、レベル３のメモリ要素（Ｌ３）２０３の４個のメモリに振り分けられて書き込まれる。次の時刻ｔ３からｔ４の期間に、メモリ要素（Ｌ３）２０３からデータ（レベル２のＳＳ係数データ）が読み出されてフィルタ（ＳＳ）２５２へ入力され、レベル３のＳＳ係数が計算され、このＳＳ係数データも同様な規則に従って、レベル４のメモリ要素（Ｌ４）２０４の４個のメモリに振り分けられて書き込まれる。
【００２６】
時刻ｔ４からウェーブレット変換が開始する。まず、時刻ｔ４からｔ５の期間に、メモリ要素（Ｌ１）２０１に格納されているデータに対するレベル１の水平処理（”Ｈ”は水平処理を意味する）が行われ、続いて垂直処理（”Ｖ”は垂直処理を意味する）が行われる。ここでは、入力データのサイズが１２８（画素方向）×１２８（ライン方向）＝１６ｋＢ（１ｋ＝１０２４）で、低域通過型フィルタには従来技術で説明した２タップのフィルタ、高域通過型フィルタには同様に６タップのフィルタを用いるものとして説明する。
【００２７】
水平処理の場合、メモリ要素（Ｌ１）のＳＳ，ＳＤの各メモリとフィルタ（Ａ）２５０、ＤＳ，ＤＤの各メモリとフィルタ（Ｂ）２５１とが、それぞれ図５に示すように接続されて、２組のフィルタによる処理が並行して行われる。すなわち、偶数ライン目をフィルタ（Ａ）２５０で、奇数ライン目をフィルタ（Ｂ）２５１で並列に処理し、その結果をそれぞれのメモリに書き込むのである。このような処理が可能であるのは、ＳＳ〜ＤＤの４つのメモリが各々独立しており、同時刻に読み出し又は書き込みを行うことが可能であるからである。なお、フィルタ（Ａ）２５０とフィルタ（Ｂ）２５１を入れ替えて接続してもよい。
【００２８】
次の垂直処理の場合には、メモリ要素（Ｌ１）のＳＳ，ＤＳの各メモリとフィルタ（Ａ）２５０、ＳＤ，ＤＤの各メモリとフィルタ（Ｂ）２５１とが、それぞれ図６に示すように接続されて、２組のフィルタによる処理が並行して行われる。すなわち、偶数画素目をフィルタ（Ａ）２５０で処理し、奇数画素目をフィルタ（Ｂ）２５１で処理し、結果を各々のメモリに同時に書き込むのである。
【００２９】
続いて、時刻ｔ５からｔ６の期間で、メモリ要素（Ｌ２）２０２上のデータに対しレベル２の水平処理と垂直処理が２つのフィルタ（Ａ）２５０及びフィルタ（Ｂ）２５１を使用して実行され、続いて時刻ｔ６からｔ７の期間にレベル３の処理が同様に行われ、続いて時刻ｔ７からｔ８の期間にレベル４の処理が同様に行われる。
【００３０】
ここでは、レベル１〜レベル４まで、この順でウェーブレット変換が行われたが、これは一例であって、任意の順序で各レベルのウェーブレット変換を行うことができる。また、全てのレベルのウェーブレット変換を行う必要はなく、任意に選択したレベルのウェーブレット変換だけを行うこともできる。このようなことが可能であるのは、時刻ｔ４までに、各レベルのウェーブレット変換処理の対象となるデータ（入力されたデータ又は直前レベルのＳＳ係数データ）が、対応したメモリ要素２０１〜２０４上に既に準備されているため、時刻ｔ４以降のどの時点でも、各レベルのウェーブレット変換を、他のレベルのウェーブレット変換とは無関係に開始できるからである。ただし、本実施例ではウェーブレット変換のためのフィルタが、フィルタ（Ａ）２５０とフィルタ（Ｂ）２５１の２組しかないため、複数のレベルの処理を同時に行うことはできない。
【００３１】
さて、本実施例のウェーブレット変換装置の処理時間について述べる。ＳＳ係数の計算及びデータの振り分けにかかる時間は、時刻ｔ０からｔ１が１２８×１２８＝１６ｋクロック、時刻ｔ１からｔ２が６４×６４＝４ｋクロック、時刻ｔ２からｔ３が３２×３２＝１ｋクロック、時刻ｔ３からｔ４が１６×１６＝０．２５ｋクロックで、合計２１．２５ｋクロックとなる。−方、ウェーブレット変換にかかる時間は、時刻ｔ４からｔ５が６４×６４×２＝８ｋクロック、時刻ｔ５からｔ６が３２×３２×２＝２ｋクロック、時刻ｔ６からｔ７が１６×１６×２＝０．５ｋクロック、時刻ｔ７からｔ８が８×８×２＝０．１２５ｋクロックで、合計１０．６２５ｋクロックである。トータルの処理時間は３１．８７５ｋクロックとなり、これは前述の従来技術の処理時間６９ｋクロックの約４６％であるから、ウェーブレット変換処理の大幅な高速化を達成できる。また、一部レベルの周波数帯信号が不要な場合には、そのレベルのためのウェーブレット変換処理を省くことができるから、処理時間はさらに短縮される。
【００３２】
さて、上に述べたように、任意に選んだレベルのウェーブレット変換だけを、任意の順序で実行することが可能であることは、符号化復号化部１０４で符号化又は復号化を行う上で大きな利益をもたらす。以下、これについて説明する。
【００３３】
図１３は、ウェーブレット変換により得られた各レベルの各周波数帯信号が重要度により並べ替えられる「アライメント（alignment）」と呼ばれる概念を表している。図１３において、１つの長方形が、あるレベルのある周波数帯信号を示し、その大きさがビット深さを表している。ビット深さは、フィルタの構成により異なってくるが、ここではＳＤ係数及びＤＳ係数が同じビット深さを有し、ＤＤ係数はＳＤ係数及びＤＳ係数より１ビットだけビット深さが深いものとして描かれている。
【００３４】
符号化復号化部１０４では、重要度の高いレベル及び周波数帯信号から符号化又は復号化を行う。例えば、図１３のような重要度が各レベル及び各周波数帯信号に割り当てられたとすると、レベル４のＳＤ係数が一番最初に符号化又は復号化される。また、符号化復号化部１０４においては、例えば画像を扱うような場合は、圧縮率を上げるためにデータの切り捨てを行うことがある。アライメントは、その切り捨て方を決めるための１つの手段として用いられ、重要度の低いビットのデータが切り捨てられる。
【００３５】
図１４はビットプレーンと呼ばれる概念を表す図である。データが例えば画像データであれば、ある画素（ｐｉｘｅｌ）は（ｘ、ｙ）で表されるアドレス空間と、ビット深さを持っている。図中、斜線で示した部分（例えば、ＭＳＢの部分）のような、あるビット位置の全画素のビットの集合をビットプレーンと呼ぶ。符号化復号化部１０４では、ビットプレーン単位で、何画素かのかたまりで処理が行われる。これは、画像データは、ある画素に着目した場合、その周辺の画素との相関が高いことを利用して、圧縮率を高めるためである。
【００３６】
さて、ウェーブレット変換を利用する符号化復号化装置においては、一般的に、高レベルの周波数帯信号から先に符号化もしくは復号化が行われ、また、データの切り捨てが行われる場合は低レベルの周波数帯信号から先に切り捨てが行われる。しかるに、従来技術では、ウェーブレット変換は低いレベルから順に行われ、高いレベルの周波数帯信号は、それより下位のほぼ全てのレベルのウェーブレット変換が終了するまで得られなかったため、高レベルのウェーブレット変換が終了するまで符号化を開始できず、そのための待ち時間が長いという問題があった。また、あるレベル以下の周波数帯信号が切り捨てられると分かっている場含でも、全レベルについてウェーブレット変換を行う必要があるという無駄があった。
【００３７】
これに対し、本実施例のウェーブレット変換装置１００は、前述のように、ウェーブレット変換を実行するレベルと、その順序を任意に選ぶことが可能であるから、符号化復号化部１０４で必要なレベルとその処理の順序を指定することにより、必要なレベルの周波数帯信号を必要な順序で最短の時間で得ることができ、したがって従来技術に比べ待ち時間を大幅に減らすことができる。さらに、あるレベル以下の全データを切り捨てる場合は、それらのレベルのウェーブレット変換を行わせないようにすることで、無駄な処理時間を省くことができる。かくして、本実施例によれば、従来の符号化復号化装置に比べ高速の処理が可能となる。
【００３８】
本発明の符号化復号化装置及びウェーブレット変換装置の第２の実施例によれば、図１に示す全体構成の符号化復号化装置において、ウェーブレット変換装置１００のフィルタ部１０２が図７に示すような構成とされる。ウェーブレット変換装置１００のそれ以外の構成は前記第１実施例と同一である。
【００３９】
図７に見られるように、本実施例によれば、ウェーブレット変換装置１００のフィルタ部１０２は、（メモリ要素個数−１）個のＳＳ係数計算専用のフィルタ、すなわち、フィルタ（ＳＳ２）２５２＿２、フィルタ（ＳＳ３）２５２＿３、及びフィルタ（ＳＳ４）２５２＿４を備え、また、前記第１実施例と同様の低域通過型フィルタ及び高域通過型フィルタの両方を備えたフィルタ（Ａ）２５０とフィルタ（Ｂ）２５１を備えた構成とされる。
【００４０】
図８は、本実施例のウェーブレット変換装置１００のタイミングチャートである。図８のタイミングチャ−トを参照して動作を説明すれば、時刻ｔ０からｔ１の間で、入力データがメモリ要素（Ｌ１）２０１に書込まれるが、これ並行して、入力データがフィルタ（ＳＳ２）２５２＿２，フィルタ（ＳＳ３）２５２＿３及びフィルタ（ＳＳ４）２５２＿４に入力され、それぞれによりレベル１のＳＳ係数、レベル２のＳＳ係数及びレベル３のＳＳ係数が計算され、得られたレベル１、レベル２及びレベル３のＳＳ係数データがそれぞれメモリ要素（Ｌ２）２０２、メモリ要素（Ｌ３）２０２及びメモリ要素（Ｌ４）２０４に書き込まれる。この書き込みの際に、前記第１実施例で説明したと同様の規則により、データは各メモリ要素を構成する４個のメモリに振り分けられる。このように、レベル対応のＳＳ係数計算専用の、独立して動作する３個のフィルタ２５２＿２，２５２＿３，２５２＿４をフィルタ部１０２に備えるため、入力データのメモリ要素２０１への書き込みと同時にメモリ要素２０２，２０３，２０４へのＳＳ係数データの書き込みが可能であり、時刻ｔ１から直ちに通常のウェーブレット変換処理を開始できる。
【００４１】
時刻ｔ１の時点で、各レベルに対応したメモリ要素２０１〜２０４には既にウェーブレット処理をいつでも実行できるよう必要なデータが準備されているので、前記第１実施例の場合と同様に、ウェーブレット変換を行うレベルの順番を任意に選択することができるが、図８のフローチャートではレベル１からレベル４へと順に処理が行われる場合の動作が示されている。すなわち、時刻ｔ１からｔ２の期間に、図５に示すようなメモリ要素（Ｌ１）のＳＳ，ＳＤ，ＤＳ，ＤＤの各メモリとフィルタ（Ａ）２５０及びフィルタ（Ｂ）２５１が接続されて、レベル１のウェーブレット変換の水平処理が行われ、次に図６の様な接続で垂直処理が行われる。続いて時刻ｔ２からｔ３の期間にレベル２のウェーブレット変換が行われ、次に時刻ｔ３からｔ４の期間にレベル３のウェーブレット変換が行われ、時刻ｔ４からｔ５の期間にレベル４のウェーブレット変換が行われる。
【００４２】
本実施例におけるウェーブレット変換装置１００の処理時間であるが、ＳＳ係数の計算及びＳＳ係数データの振り分けにかかる時間は、時刻ｔ０からｔ１が１２８×１２８＝１６ｋクロックである。一方、ウェーブレット変換にかかる時間は、前記第１実施例の場合と同様で、時刻ｔ１からｔ２が６４×６４×２＝８ｋクロック、時刻ｔ２からｔ３がＳ２×３２×２＝２ｋクロック、時刻ｔ３からｔ４が１６×１６ｘ２＝０．５ｋクロック、時刻ｔ４からｔ５が８×８×２＝０．１２５ｋクロックで、合計１０．６２５ｋクロックである。ト−タルでの処理時間は２６．６２５ｋクロックとなる。すなわち、従来技術の６９ｋクロックの約３９％の処理時間で済むため、従来技術より大幅な処理の高速化が可能であるが、さらに前記第１実施例１に比べても約８５％の処理時間で済むため、より高速の処理が可能である。
【００４３】
また、本実施例のウェーブレット変換装置１００は、ウェーブレット変換を実行するレベルと、その順序を任意に選ぶことが可能であるから、前記第１実施例に関連して説明したように、符号化復号化部１０４で必要なレベルとその処理の順序を指定することにより、必要なレベルの周波数帯信号を必要な順に最短の時間で得ることができ、したがって従来技術に比べ待ち時間を大幅に減らすことができ、また、あるレベル以下の全データを切り捨てる場合は、それらのレベルのウェーブレット変換を行わせないようにすることで、無駄な処理時間を省くことができる。
【００４４】
本発明の符号化復号化装置及びウェーブレット変換装置の第３の実施例によれば、図１に示す全体的構成において、ウェーブレット変換装置１００のフィルタ部１０２が図９に示すような構成とされる。ウェーブレット変換装置１００のそれ以外の構成は前記第１実施例と同一である。
【００４５】
図９に見られるように、本実施例によれば、フィルタ部１０２は、低域通過型フィルタと高域通過型フィルタの両方を備えた水平、垂直処理用のフィルタとして、レベル１専用のフィルタ（Ａ１）２５０＿１とフィルタ（Ｂ１）２５１＿１、レベル２専用のフィルタ（Ａ２）２５０＿２とフィルタ（Ｂ２）２５１＿２、レベル３専用のフィルタ（Ａ３）２５０＿３とフィルタ（Ｂ３）２５１＿３、レベル４専用のフィルタ（Ａ４）２５０＿４とフィルタ（Ｂ４）２５１＿４を具備し、また、ＳＳ係数計算のための低域通過型フィルタであるフィルタ（ＳＳ）２５２を具備する構成とされる。
【００４６】
図１０は、本実施例によるウェーブレット変換装置１００のタイミングチャートである。このタイミングチャートに示したように、時刻ｔ０からｔ１の間で、入カデータがメモリ要素（Ｌ１）２０１の４つのメモリに、前記第１実施例と同様な規則で振り分けられて書込まれる。時刻ｔ１からｔ２の期間では、メモリ要素（Ｌ１）２０１からデータが読み出され、フィルタ（ＳＳ）２５２によりレベル１のＳＳ係数が計算され、得られたＳＳ係数データはメモリ要素（Ｌ２）２０２を構成する４つのメモリに前述の規則に従い振り分けられて書込まれる。時刻ｔ２でこの処理が終了すると、直ちにフィルタ（Ａ１）２５０＿１及びフィルタ（Ｂ１）を使用してレベル１のウェーブレット変換の処理が開始する。同時に、メモリ要素（Ｌ２）２０２からＳＳ係数データが読み出され、フィルタ（ＳＳ）２５２でレベル２のＳＳ係数が計算され、得られたＳＳ係数データがメモリ要素（Ｌ３）２０３を構成する４つのメモリに振り分けられて書込まれる。この処理が時刻ｔ３で終了すると、フィルタ（Ａ２）２５０＿２及びフィルタ（Ｂ２）２５０＿２を使用してレベル２のウェーブレット変換の処理が開始する。同時に、メモリ要素（Ｌ３）２０３からＳＳ係数データが読み出されてフィルタ（ＳＳ）２５２によりレベル３のＳＳ係数が計算され、そのＳＳ係数データがメモリ要素（Ｌ４）２０４の構成メモリに振り分けられて書き込まれる。この処理が終了すると、フィルタ（Ａ３）２５０＿３とフィルタ（Ｂ３）２５１＿３を使用したレベル３のウェーブレット変換処理と、フィルタ（Ａ４）２５０＿４とフィルタ（Ｂ４）２５１＿４を使用したレベル４のウェーブレット変換処理が同時に開始する。データ数が小さいレベル４のウェーブレット変換処理が最も早い時刻ｔ４で終了し、続いてレベル３のウェーブレット変換処理が時刻ｔ５に終了する。続いて時刻ｔ６でレベル２のウェーブレット変換処理が終わり、最後に時刻ｔ７でレベル１のウェーブレット変換処理が終了する。このように、本実施例では、データ数の少ない最も高いレベルから、順にウェーブレット変換が終了していく。
【００４７】
本実施例のウェーブレット変換装置１００の処理時間であるが、レベル１のデータ数が最も多いので、全体の処理時間もレベル１の処理に要する時間で決まる。データの読み込み時間が時刻ｔ０からｔ１の１２８×１２８＝１６ｋクロック、レベル２のＳＳの計算及び振り分けにかかる時間が、時刻ｔ１からｔ２の６４×６４＝４ｋクロック、ウェーブレット変換にかかる時間が時刻ｔ２からｔ７の６４×６４×２＝８ｋクロックである。ト‐タルの処理時間は２８ｋクロックとなり、従来技術の６９ｋクロックの約４１％の処理時間で済み、高速処理が可能である。
【００４８】
前記第１実施例に関連して説明したように、符号化復号化装置の符号化復号化部１０４は、一般に、高レベルの周波数帯信号から先に符号化もしくは復号化を行い、切り捨てが行われる場合は低レベルの周波数帯信号から先に切り捨てを行う。本実施例のウェーブレット変換装置１００は、上に述べたように高レベルのウェーブレット変換ほど早く処理が終わるため、符号化符号化部１０４において、高いレベルの周波数帯信号ほど早く得ることができるため、待ち時間が少なくなる。また、あるレベル以下の周波数帯信号が切り捨てられると分かっている場合は、全レベルについてウェーブレット変換を行う無駄を省くことができる。
【００４９】
本発明の符号化復号化装置及びウェーブレット変換装置の第４の実施例によれば、図１に示す全体的構成において、ウェーブレット変換装置１００のフィルタ部１０２が図１１に示すような構成とされる。ウェーブレット変換装置１００のこれ以外の構成は前記第１実施例と同一である。
【００５０】
図１１に見られるように、本実施例によれば、フィルタ部１０２は、前記第３実施例と同様に、低域通過型フィルタと高域通過型フィルタの両方を備えた水平、垂直処理用のフィルタとして、レベル１専用のフィルタ（Ａ１）２５０＿１とフィルタ（Ｂ１）２５１＿１、レベル２専用のフィルタ（Ａ２）２５０＿２とフィルタ（Ｂ２）２５１＿２、レベル３専用のフィルタ（Ａ３）２５０＿３とフィルタ（Ｂ３）２５１＿３、レベル４専用のフィルタ（Ａ４）２５０＿４とフィルタ（Ｂ４）２５１＿４を具備し、また、前記第２実施例と同様に、ＳＳ係数計算専用のフィルタとして、フィルタ（ＳＳ２）２５２＿２、フィルタ（ＳＳ３）２５２＿３、及びフィルタ（ＳＳ４）２５２＿４を具備する構成とされる。
【００５１】
図１２は、本実施例のウェーブレット変換装置１００のタイミングチャートである。このタイミングチャートに示すように、時刻ｔ０からｔ１の期間で、前記第２実施例の場合と同様に、入力データのメモリ要素（Ｌ１）２０１への書き込みと、フィルタ（ＳＳ２）２５２＿２，フィルタ（ＳＳ３）２５２＿３及びフィルタ（ＳＳ４）２５２＿４によるレベル１、レベル２及びレベル３のＳＳ係数の計算と、そのＳＳ係数データのメモリ要素（Ｌ２）２０２、メモリ要素（Ｌ３）２０２及びメモリ要素（Ｌ４）２０４への書き込みとが並行して行われる。
【００５２】
この処理が終了した時刻ｔ１から、フィルタ（Ａ１）２５０＿１とフィルタ（Ｂ１）２５１＿１を使用したレベル１のウェーブレット変換、フィルタ（Ａ２）２５０＿２とフィルタ（Ｂ２）２５１＿２を使用したレベル２のウェーブレット変換、フィルタ（Ａ３）２５０＿３とフィルタ（Ｂ３）２５１＿３を使用したレベル３のウェーブレット変換、フィルタ（Ａ４）２５０＿４とフィルタ（Ｂ４）２５１＿４を使用したレベル４のウェーブレット変換が開始する。そして、データ数が最も少ないレベル４の処理が最も早い時刻ｔ２で終了し、その次にデータ数が少ないレベル３の処理が時刻ｔ３で終わり、その次にデータ数が少ないレベル２の処理が時刻ｔ４で終了し、最後に最もデータ数の多いレベル１の処理が時刻ｔ５で終了する。このように、データ数の少ない高いレベルから、ウェーブレット変換が順次終了していく。
【００５３】
本実施例のウェーブレット変換装置１００の処理時間であるが、レベル１のデータ数が最も多いので、全体の処理時間もレベル１の処理に要する時間で決まる。データの読み込み時間が時刻ｔ０からｔ１の１２８×１２８＝１６ｋクロック、レベル１のウェーブレット変換にかかる時間が時刻ｔ１からｔ５の６４×６４×２＝８ｋクロックであるから、トータルの処理時間は２４ｋクロックとなる。この処理時間は従来技術の６９ｋクロックの約３５％の処理時間で済むから、従来技術に比べ非常に高速なウェーブレット変換処理が可能であるが、さらに前記第３実施例に比べても約８６％の処理時聞で済み、より一層の高速処理が可能である。
【００５４】
本実施例による符号化復号化装置は、前記第３実施例と同様に、符号化符号化部１０４において、高いレベルの周波数帯信号ほど先に得ることができるため、待ち時間が少なくなり、従来技術のものより高速な処理が可能である。
【００５５】
本発明のウェーブレット変換装置の構成は、前記各実施例の構成のみに限定されるものではなく、それを様々に変形した構成もとり得る。
【００５６】
例えば、前記第１又は第２実施例において、フィルタ部１０２の水平処理及び垂直処理のためのフィルタを１個のみにした変形構成も可能である。この場合、各メモリ要素２０１〜２０４を必ずしも独立した４個のメモリに分割しなくてもよい。このような変形構成では、各レベルのウェーブレット変換において、図５及び図６に示すような接続による並列処理は不可能であるため、その分だけ処理時間は増加するが、この点を除けば前述したような前記第１又は第２実施例と同様の効果を奏することができる。
【００５７】
同様に、前記第３又は第４実施例において、フィルタ部１０２の水平処理及び垂直処理のためのフィルタの個数を半減し、各レベルのウェーブレット変換の水平処理及び垂直処理を１つのフィルタを使用して実行させるような変形構成も可能である。この場合、各メモリ要素２０１〜２０４を必ずしも独立した４個のメモリに分割しなくてもよい。このような変形構成によれば、各レベルのウェーブレット変換処理の時間は増加するが、それ以外は前記第３又は第４実施例と同様の効果を奏することができる。
【００５８】
図２２は、本発明のウェーブレット変換処理方法の第１の実施例を示すフローチャートである。本実施例の処理は、デジタル信号処理専用プロセッサ（ＤＳＰ）又は汎用プロセッサを用いても実行可能であるが、図２のブロック図に示したような構成の専用のハードウェアを用いれば、図３のタイミングチャートに関連して説明したように極めて高速な実行が可能である。
【００５９】
図２２において、まず処理ブロック３００で外部からデータを取り込み記憶手段に保存する。次に、処理ブロック３１０において、ウェーブレット変換の各レベルのＳＳ係数データを順次計算し記憶手段に保存する。ここでは、レベル数を４とすると、処理ブロック３００で取り込まれた入力データを用いたフィルタ演算によりレベル１のＳＳ係数データを計算して保存し（ステップ３１０＿１）、次に、このレベル１のＳＳ係数データを用いたフィルタ演算によりレベル２のＳＳ係数データを計算して保存し（ステップ３１０＿２）、最後に、レベル２のＳＳ係数データを用いたフィルタ演算によりレベル３のＳＳ係数データを計算して保存する（ステップ３１０＿３）。このようなＳＳ係数データの計算と保存の処理が終わると、次の処理ブロック３２０において、保存されている入力データを用いたレベル１のウェーブレット変換と、予め計算して保存してあるレベル１，２，３のＳＳ係数データを用いたレベル２，３，４のウェーブレット変換を行う。いずれのレベルのウェーブレット変換を行うためのデータも予め保存されているため、各レベルのウェーブレット変換を実行する順序は任意に選ぶことができ、また、任意に選択したレベルのウェーブレット変換だけを行うことができる。このことは、図１３及び図１４に関連して説明したように、ウェーブレット変換を利用する符号化復号化装置において大きな利益をもたらすものである。
【００６０】
図２３は、本発明のウェーブレット変換処理方法の第２の実施例を示すフローチャートである。本実施例の処理は、デジタル信号処理専用プロセッサ（ＤＳＰ）又は汎用プロセッサを用いても実行可能であるが、図７又は図１１のブロック図に示したようなＳＳ係数データ計算用フィルタを複数個備える構成の専用のハードウェアを用いれば、図８又は図１２のタイミングチャートに関連して説明したような極めて高速な実行が可能である。
【００６１】
図２３において、まず処理ブロック３３０で外部からデータを取り込み記憶手段に保存する。この入力処理と並行して、処理ブロック３４０で、入力データを用いたフィルタ演算によりレベル１，２，３（ここではレベル数を４とする）のＳＳ係数データが計算されて記憶手段に保存される。この各レベルのＳＳ係数データの計算を並列に行うためには、前述のように図７又は図１１のブロック図に示したような構成のハードウェアを利用するのが有利である訳である。ただし、処理時間は増加するが、各レベルのＳＳ係数データの計算を順次に行うことも可能である。
【００６２】
このようなデータの入力とＳＳ係数データの計算の処理が終わると、次の処理ブロック３５０において、保存されている入力データを用いたレベル１のウェーブレット変換と、予め計算して保存してあるレベル１，２，３のＳＳ係数データを用いたレベル２，３，４のウェーブレット変換を行う。いずれのレベルのウェーブレット変換を行うためのデータも予め保存されているため、各レベルのウェーブレット変換を実行する順序は任意に選ぶことができ、また、任意に選択したレベルのウェーブレット変換だけを行うことができる。このことは、図１３及び図１４に関連して説明したように、ウェーブレット変換を利用する符号化復号化装置において大きな利益をもたらすものである。また、図１１のブロック図に示したような各レベルに対応した複数の水平／垂直処理用のフィルタを備えた構成のハードウェアを利用し、全レベル又は複数レベルのウェーブレット変換を同時に開始し並列的に実行すれば、高いレベルの周波数帯信号ほど早い時点で生成することができ、これは前述のように符号化復号化装置において大きな利益をもたらすものである。
【００６３】
図２４は、本発明のウェーブレット変換処理方法の第３の実施例を示すフローチャートである。本実施例の処理も、デジタル信号処理専用プロセッサ（ＤＳＰ）又は汎用プロセッサを用いても実行可能であるが、図９のブロック図に示したような構成のハードウェアを用いれば、図１０のタイミングチャートに関連して説明したように極めて高速に実行可能である。
【００６４】
図２４において、まず処理ブロック３６０で外部からデータを取り込み記憶手段に保存する。データ入力の処理が終了すると、処理ブロック３７０で、図２２の処理ブロック３１０と同様にレベル１，２，３（ここではレベル数を４とする）のＳＳ係数データの計算と保存を順次行う。このＳＳ係数データの計算処理と並行して処理ブロックでレベル１，２，３，４のウェーブレット変換を実行する。すなわち、処理ブロック３８０においては、レベル１のＳＳ係数データの計算が終了すると、入力データを用いてレベル１のウェーブレット変換（ステップ３８０＿１）を開始する。続いて、レベル２のＳＳ係数データの計算が終わると、保存されているレベル１のＳＳ係数データを用いたレベル２のウェーブレット変換（ステップ３８０＿２）を開始する。そして、レベル３のＳＳ係数データの計算が終了すると、保存されているレベル２のＳＳ係数データを用いたレベル３のウェーブレット変換（ステップ３８０＿３）と、保存されているレベル３のＳＳ係数データを用いたウェーブレット変換（３８０＿４）とを同時に開始する。高いレベルほど処理対象データ数が少ないため、レベル４のウェーブレット変換（ステップ３８０＿４）が最初に終了し、次にレベル３のウェーブレット変換（ステップ３８０＿３）が終了し、次にレベル２のウェーブレット変換（ステップ３８０＿２）が終了し、最後にレベル１のウェーブレット変換（３８０＿１）が終了する。このように、高いレベルの周波数帯信号ほど早い時点で生成されることは、図１３及び図１４に関連して説明したように、符号化復号化装置において大きな利益をもたらすものである。
【００６５】
なお、図２２、図２３又は図２４の各処理ブロックを一般的なコンピュータに実行させるためのプログラムが記録されたフロッピーディスク、ＣＤ−ＲＯＭ等の各種の記録媒体も、本発明に包含される。
【００６６】
【発明の効果】
本発明のウェーブレット変換装置及び符号化復号化装置によれば、以下のような効果が得られる。
（１）高速のウェーブレット変換処理が可能になるとともに、ウェーブレット変換処理を任意のレベルについて任意の順序で実行することが可能になる。
【００６７】
（２）複数レベルのＳＳ係数データの計算を並列に行うことにより、さらに高速の処理が可能になり、また、ウェーブレット変換処理を任意のレベルについて任意の順序で実行することが可能になる。
【００６８】
（３）装置が処理可能な全レベルのＳＳ係数データの計算を並列に行うことにより、全レベルのウェーブレット変換処理を高速に行うことが可能になり、また、任意のレベルについて任意の順序でウェーブレット変換処理を実行することが可能になる。
【００６９】
（４）複数のレベルのウェーブレット変換処理を並列化することにより処理の一層の高速化が可能になり、複数レベルのウェーブレット変換処理を並行して実行して高いレベルの周波数帯信号ほど早い時点で生成することが可能になる。
【００７０】
（５）複数レベルのＳＳ係数データの計算の並列化と、複数レベルのウェーブレット変換処理の並列化により、処理の一層の高速化が可能になり、複数レベルのウェーブレット変換処理を並行して実行し、高いレベルの周波数帯信号ほど早い時点で生成することが可能になる。
【００７１】
（６）ウェーブレット変換装置において、ウェーブレット変換の高速処理が可能であり、かつ、任意に選択したレベルについて任意に指定した順序でウェーブレット変換を実行させることが可能であり、あるいは、複数のレベルのウェーブレット変換処理を並行して実行して高いレベルから周波数帯信号を順に生成させることが可能であるため、符号化復号化部におけるウェーブレット変換のための待ち時間を減らすることでき、また、周波数帯信号の切り捨てを行う場合には不要なレベルのウェーブレット変換を行う無駄を省くことができ、したがって、高速の符号化復号化処理が可能になる。
【図面の簡単な説明】
【図１】  本発明による符号化復号化装置の全体的構成の一例を示すブロック図である。
【図２】  本発明の符号化復号化装置及びウェーブレット変換装置の第１実施例におけるウェーブレット変換装置の構成を示すブロック図である。
【図３】  第１実施例におけるウェーブレット変換装置のタイミングチャートである。
【図４】  メモリ要素を構成する４つのメモリへのデータの振り分けを示す図である。
【図５】  水平方向処理時のフィルタとメモリの接続方法を示す図である。
【図６】  垂直方向処理時のフィルタとメモリの接続方法を示す図である。
【図７】  本発明の符号化復号化装置及びウェーブレット変換装置の第２実施例におけるウェーブレット変換装置のフィルタ部の構成を示すブロック図である。
【図８】  第２実施例におけるウェーブレット変換装置のタイミングチャートである。
【図９】  本発明の符号化復号化装置及びウェーブレット変換装置の第３実施例におけるウェーブレット変換装置のフィルタ部の構成を示すブロック図である。
【図１０】  第３実施例におけるウェーブレット変換装置のタイミングチャートである。
【図１１】  本発明の符号化復号化装置及びウェーブレット変換装置の第４実施例におけるウェーブレット変換装置のフィルタ部の構成を示すブロック図である。
【図１２】  第４実施例におけるウェーブレット変換装置のタイミングチャートである。
【図１３】  周波数帯信号のアライメントの説明図である。
【図１４】  ビットプレーンの説明図である。
【図１５】  ウェーブレット変換の水平処理及び垂直処理のためのフィルタ演算の説明図である。
【図１６】  ウェーブレット変換前のイメージデータのメモリマップの一例を示す図である。
【図１７】  １Ｓ係数及び１Ｄ係数のためのメモリマップの一例を示す図である。
【図１８】  １ＳＳ係数、１ＳＤ係数、１ＤＳ係数及び１ＤＤ係数のためのメモリマップの一例を示す図である。
【図１９】  ２Ｓ係数及び２Ｄ係数のためのメモリマッブの一例を示す図である。
【図２０】  ２ＳＳ係数、２ＳＤ係数、２ＤＳ係数及び２ＤＤ係数のためのメモリマップの一例を示す図である。
【図２１】  従来の一般的なウェーブレット変換装置のタイミングチャートである。
【図２２】  本発明のウェーブレット変換処理方法の一実施例を説明するためのフローチャートである。
【図２３】  本発明のウェーブレット変換処理方法の他の実施例を説明するためのフローチャートである。
【図２４】  本発明のウェーブレット変換処理方法のもう一つの実施例を説明するためのフローチャートである。
【符号の説明】
１００  ウェーブレット変換装置
１０１  メモリ部
１０２  フィルタ部
１０３  制御部
１０４  符号化復号化部
２０１，２０２，２０３，２０４  メモリ要素
２５０，２５１  水平処理及び垂直処理用のフィルタ
２５２  ＳＳ係数データ計算用のフィルタ
【図１】
0004097108.tif 000002
【図２】
0004097108.tif 000003
【図３】
0004097108.tif 000004
【図４】
0004097108.tif 000005
【図５】
0004097108.tif 000006
【図６】
0004097108.tif 000007
【図７】
0004097108.tif 000008
【図８】
0004097108.tif 000009
【図９】
0004097108.tif 000010
【図１０】
0004097108.tif 000011
【図１１】
0004097108.tif 000012
【図１２】
0004097108.tif 000013
【図１３】
0004097108.tif 000014
【図１４】
0004097108.tif 000015
【図１５】
0004097108.tif 000016
【図１６】
0004097108.tif 000017
【図１７】
0004097108.tif 000018
【図１８】
0004097108.tif 000019
【図１９】
0004097108.tif 000020
【図２０】
0004097108.tif 000021
【図２１】
0004097108.tif 000022
【図２２】
0004097108.tif 000023
【図２３】
0004097108.tif 000024
【図２４】
0004097108.tif 000025