JP2001216290A - 逆離散ウェーブレット変換方法およびその装置 - Google Patents

逆離散ウェーブレット変換方法およびその装置

Info

Publication number
JP2001216290A
JP2001216290A JP2000376262A JP2000376262A JP2001216290A JP 2001216290 A JP2001216290 A JP 2001216290A JP 2000376262 A JP2000376262 A JP 2000376262A JP 2000376262 A JP2000376262 A JP 2000376262A JP 2001216290 A JP2001216290 A JP 2001216290A
Authority
JP
Japan
Prior art keywords
level
data
filter
subband
sub
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.)
Withdrawn
Application number
JP2000376262A
Other languages
English (en)
Other versions
JP2001216290A5 (ja
Inventor
John Rindokisu Timothy
ジョン リンドキス ティモシー
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Publication of JP2001216290A publication Critical patent/JP2001216290A/ja
Publication of JP2001216290A5 publication Critical patent/JP2001216290A5/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/148Wavelet transforms

Abstract

(57)【要約】 (修正有) 【課題】 逆変換演算中に生成された中間結果を格納す
るために大容量のメモリが必要である。中間メモリに加
される要求を軽減しつつ、伸張出力データを走査線、す
なわちバンド順に生成するために、DWTデータの複数
のレベルを処理するのに必要な計算プロセスを実行する
方法を提供する。 【解決手段】 逆離散ウェーブレット変換を実行する方
法は、指定のフィルタ幅を有するフィルタ(706〜7
10)を使用して、関連する第1のサブバンドレベルの
サブバンドからのデータを逆変換して、第2のサブバン
ドレベルの対応するサブバンドで処理済データを形成す
ることから成る。更に、同じ対応する関連フィルタ幅を
有する第2のフィルタ(712〜716)を使用して、第
2のサブバンドレベルの関連するサブバンドからの対応
するデータと関連して処理済データをパイプライン方式
で逆変換する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般に逆変換の分野
に関し、特に逆離散ウェーブレット変換(IDWT)に関
する。
【0002】
【従来の技術】ウェーブレット技法を使用するデータ圧
縮は典型的には2段階のプロセスであり、データセット
のウェーブレット変換を計算する変換段階と、それに引
続き、変換演算から得られたデータセットを2つのセグ
メントに分割し、特定の符号器を使用してそれらのセグ
メントを符号化する符号化段階とを含む。データ伸張に
おいてはこれとは逆のプロセスが起こり、まず、符号化
されたブロックを復号し、その後、最終伸張出力を生成
するために、逆ウェーブレット変換を適用する。
【0003】逆離散ウェーブレット変換(IDWT)は集
中的な計算を要する演算であり、現在の実現形態では、
逆変換演算中に生成された中間結果を格納するために大
容量のメモリが必要である。IDWTプロセスが実行さ
れるにつれ、この中間データは繰り返し生成され、読み
取られる。
【0004】
【発明が解決しようとする課題】本発明は、従来の方法
に代わり、中間メモリに加される要求を軽減しつつ、伸
張出力データを走査線、すなわちバンド順に生成するた
めに、DWTデータの複数のレベルを処理するのに必要
な計算プロセスを実行する方法である。
【0005】
【課題を解決するための手段】本発明の第1の面によれ
ば、Nレベルの離散ウェーブレット変換における第1の
サブバンドレベル及び第2のサブバンドレベルに対し
て、(i) 関連するフィルタ幅を有するフィルタを使用し
て、第1のサブバンドレベルの関連するサブバンドから
のデータを逆変換することによって、第2のサブバンド
レベルの対応するサブバンドで処理済データを形成する
ステップと、(ii) 同じ対応する関連フィルタ幅を有す
る第2のフィルタを使用して、前記処理済データを、第
2のサブバンドレベルの関連するサブバンドからの対応
するデータと関連させて逆変換するステップと、を有
し、ステップ(i)及び(ii)をパイプライン方式で実行す
ることを特徴とする逆離散ウェーブレット変換(IDW
T)方法が提供される。
【0006】本発明の別の面によれば、Nレベルの離散
ウェーブレット変換に関連してIDWTを実行する方法
であって、(i) 第1のサブバンドレベルの関連するサブ
バンドからのデータに第1のセットのM×Mフィルタを
適用することによって、第2のサブバンドレベルの対応
するサブバンドのM×M個の処理済データポイントを形
成するステップと、(ii) N−1個の連続するサブバン
ドレベルに関してパイプライン方式で、N−1セットの
対応するM×Mフィルタを、それぞれ先行のサブバンド
レベルからのM×M個の処理済データポイントに、後続
のサブバンドレベルの関連するサブバンドからの対応す
るデータと関連させて適用することによって、パイプラ
イン方式でM×M個の出力データポイントのセットを形
成するステップと、を有することを特徴とする逆離散ウ
ェーブレット変換方法が提供される。
【0007】本発明の別の面によれば、Nレベルの離散
ウェーブレット変換における第1のサブバンドレベル及
び第2のサブバンドレベルに対して、関連するフィルタ
幅を有し、第1のサブバンドレベルの関連するサブバン
ドからのデータを逆変換して、第2のサブバンドレベル
の対応するサブバンドで処理済データを形成するフィル
タと、同じ対応する関連フィルタ幅を有し、前記処理済
データを、第2のサブバンドレベルの関連するサブバン
ドからの対応するデータと関連させて逆変換する第2の
フィルタと、を有し、前記フィルタ及び前記第2のフィ
ルタはパイプライン方式で配列されていることを特徴と
する逆離散ウェーブレット変換(IDWT)装置が提供
される。
【0008】本発明の別の面によれば、Nレベルの離散
ウェーブレット変換に関連してIDWTを実行する装置
であって、第1のサブバンドレベルの関連するサブバン
ドからのデータに適用されることによって、第2のサブ
バンドレベルの対応するサブバンドのM×M個の処理済
データポイントを形成する第1のセットのM×Mフィル
タと、N−1個の連続するサブバンドレベルに関してパ
イプライン方式で、先行のサブバンドレベルからのM×
M個の処理済データポイントに、後続のサブバンドレベ
ルの関連するサブバンドからの対応するデータと関連さ
せてそれぞれ適用されることにより、パイプライン方式
でM×M個の出力データポイントのセットを形成するN
−1セットの対応するM×Mフィルタと、を有すること
を特徴とする逆離散ウェーブレット変換装置が提供され
る。
【0009】本発明の別の面によれば、逆離散ウェーブ
レット変換(IDWT)を実行する装置用のプログラムを
格納した、コンピュータ可読の記憶媒体であって、該プ
ログラムは、Nレベルの離散ウェーブレット変換におけ
る第1のサブバンドレベル及び第2のサブバンドレベル
に対して、関連するフィルタ幅を有するフィルタを使用
して、第1のサブバンドレベルの関連するサブバンドか
らのデータを逆変換することによって、第2のサブバン
ドレベルの対応するサブバンドで処理済データを形成す
る第1の逆変換ステップのためのコードと、同じ対応す
る関連フィルタ幅を有する第2のフィルタを使用して、
前記処理済データを、第2のサブバンドレベルの関連す
るサブバンドからの対応するデータと関連させて逆変換
する第2の逆変換ステップのためのコードと、を有し、
第1の逆変換ステップのためのコード及び第2の逆変換
ステップのためのコードはパイプライン方式で実行され
ることを特徴とするコンピュータ可読の記憶媒体が提供
される。
【0010】本発明の別の面によれば、IDWTを実行
する装置用のプログラムを格納したコンピュータ可読の
記憶媒体であって、該プログラムは、(i) 第1のサブバ
ンドレベルの関連するサブバンドからのデータに第1の
セットのM×Mフィルタを適用することによって、第2
のサブバンドレベルの対応するサブバンドのM×M個の
処理済データポイントを形成する適用ステップのための
第1のコードと、(ii) N−1個の連続するサブバンド
レベルに関してパイプライン方式で、N−1セットの対
応するM×Mフィルタを、それぞれ先行のサブバンドレ
ベルからのM×M個の処理済データポイントに、後続の
サブバンドレベルの関連するサブバンドからの対応する
データと関連させて適用することによって、パイプライ
ン方式でM×M個の出力データポイントのセットを形成
する適用ステップのための第2のコードと、を有するこ
とを特徴とするコンピュータ可読の記憶媒体が提供され
る。
【0011】本発明の別の面によれば、Nレベルの離散
ウェーブレット変換に関連してIDWTを実行する方法
であって、それぞれが第1のデータ次元を有する、第1
のサブバンドレベルの関連するサブバンドからの第1の
データポイントのセットと、第2のサブバンドレベルか
らの第2のデータポイントのセットとに対して、(i) 前
記第1のデータ次元を有する第1の計算ブロックを使用
して、前記第1のデータポイントのセットを逆変換する
ことによって、第2のサブバンドレベルの対応するサブ
バンドで前記第1のデータ次元を有する処理済データポ
イントのセットを形成するステップと、(ii) 前記第1
のデータ次元を有する第2の計算ブロックを使用して、
前記処理済データポイントのセットを、第2のサブバン
ドレベルの関連するサブバンドからの対応するデータポ
イントのセットと関連させて逆変換するステップと、を
有し、ステップ(i)及び(ii)をパイプライン方式で実行
することによって前記第1のデータ次元を有する出力デ
ータポイントのセットを形成することを特徴とする逆離
散ウェーブレット変換方法が提供される。
【0012】本発明の別の面によれば、NレベルのDW
Tと関連してIDWTを実行する装置であって、現在の
サブバンドレベル及び後続のサブバンドレベルに関し
て、それぞれが複数の出力データチャネルを有し、且つ
前記現在のサブバンドレベルの対応するサブバンドから
のデータを受信する第1の複数の並列コンボルバと、そ
れぞれが前記出力データチャネルの対応するチャネルか
らのデータを受信し、且つ後続のサブバンドレベルの低
−低周波サブバンドに対しデータを生成する第2の複数
の直列コンボルバと、を有することを特徴とする逆離散
ウェーブレット変換装置が提供される。
【0013】本発明の別の面によれば、NレベルのDW
Tと関連してIDWTを実行する方法であって、現在の
サブバンドレベル及び後続のサブバンドレベルに関し
て、前記現在のサブバンドレベルの対応するサブバンド
からのデータを、それぞれが複数の出力データチャネル
を有する第1の複数の並列コンボルバに提供するステッ
プと、前記出力データチャネルの対応するチャネルから
のデータを、それぞれが後続のサブバンドレベルの低−
低周波サブバンドに対しデータを生成する第2の複数の
直列コンボルバに提供するステップと、を有することを
特徴とする逆離散ウェーブレット変換方法が提供され
る。
【0014】
【発明の実施の形態】以下の説明中、添付の図面のいず
れか1つ又は2つ以上において同じ図中符号を付された
ステップ及び/又は特徴を参照する場合、特に指示のな
い限り、便宜上、それらのステップ及び/又は特徴は同
じ機能又は動作を有するものとする。
【0015】ここで説明する好ましい方法の原理は、通
常、任意の次元の逆離散ウェーブレット変換に適用され
る。しかし、説明をわかりやすくするため、好ましい方
法の過程は主に1次元データセット及び2次元データセ
ットに関して説明される。ただし、本発明はそのような
方法にのみ限定されるわけではない。
【0016】図1は、1次元データセット100に関す
る順方向及び逆方向の3レベル離散的ウェーブレット変
換プロセスを示す。データセット100は「ゼロ」レベ
ルにあると指定され、これは図中符号102により示さ
れている。同様に、図中符号108は第1レベル変換済
みデータを示し、図中符号110及び112は第2レベ
ルと第3レベルの変換済みデータをそれぞれ示す。逆変
換方向においては、第3レベルデータ112は逆変換さ
れて、第2レベルデータ120を形成し、その後、逆変
換されて第1レベルデータ122を形成し、最終的には
逆変換されて、ゼロレベルの当初のデータ124を再構
成する。順変換方向においては、データセット100は
変換されて第1レベルの2つのサブバンド104及び1
06を形成し、その一方のサブバンド106は更に変換
されて、第2レベルの2つのサブバンド126及び12
8を形成する。サブバンド128は更に変換されてサブ
バンド114及び116を形成し、これは第3レベルの
変換を表す。逆変換方向では、第3レベルサブバンド1
14、116は逆変換されて第2レベルサブバンド11
8を生成し、この第2レベルサブバンド118は、メモ
リにその時点で保持されているサブバンド130と共に
逆変換されて、第1レベルサブバンド132を形成す
る。逆IDWTプロセスにおいては、通常、第3データ
レベル112で見られるように、Hサブバンドはバッフ
ァメモリに格納されており、この場合、H1、H2及び
H3が利用可能であることがわかる。順方向DWTプロ
セスで全てのHサブバンドが形成されているため、ID
WTプロセスの次の段階が起こるまで、特定のLサブバ
ンドを中間記憶装置に保持しておかなければならないと
いう事態は望ましくない。IDWT計算の間に中間メモ
リを必要とするのは、中間Lサブバンドの生成である。
すなわち、例えば、H3とL3(すなわち、114と1
16)はL2(すなわち、118)を生成し、L1(すなわ
ち、132)を生成するためには、H2(すなわち、13
0)と共に処理されるべきL2を中間記憶装置に保持(す
なわち、格納)しておく必要がある。最後に、前述のサ
ブバンド132をその時点でメモリに保持されているサ
ブバンド134と共に逆変換して、厳密に又は近似デー
タとして当初のデータ124を再構成する。
【0017】既存の方法はDWTを一度に1レベル処理
し、中間結果をメモリに書き込む。IDWTプロセスに
ついても同じことが言える。例えば、第2レベル120
から第1レベル122に逆変換を実行する場合、中間メ
モリに保持されているサブバンド118をバッファメモ
リに保持されているサブバンド130と共に逆変換す
る。同様に、第1のサブバンドレベルから第0のサブバ
ンドレベルへ進む場合にも、これも中間メモリに保持さ
れているサブバンド132をバッファメモリに保持され
ているサブバンド134と共に逆変換することになる。
Hサブバンドが利用可能であるときにも先に述べたこと
と同じことが言えるが、Lサブバンドは中間メモリを必
要とする。
【0018】IDWTプロセスを考えるとき、データは
連続するIDWTレベルでそれぞれアップサンプリング
されるので、要求される中間メモリの量はレベルごとに
増加する。第3レベル112でサブバンド114及び1
16に対し要求されるメモリを、それらのサブバンドを
表現するために使用される線分の長さと直観的に関連付
けることができる。次の(すなわち、第2)レベルでは、
その時点で記憶装置に保持されているサブバンド130
を表現する線分の長さはサブバンド114、116を表
現する各々の線分の長さの2倍であり、これは、サブバ
ンドごとに、サブバンドレベル120においてメモリに
要求される記憶量が先の(すなわち、第3)サブバンドレ
ベル112におけるメモリの量の2倍であることを示し
ている。各々のレベルで、そのレベルと関連する出力を
格納するために、十分なメモリを利用できなければなら
ず、プロセスが各レベルを通って進行するにつれて、メ
モリに要求される量はレベルごとに倍増して行く(1次
元の場合)。例えば、2次元の場合には、メモリに要求
される量はレベル単位では4倍となる。このように、メ
モリの量は増加する。
【0019】図2は、順方向の、すなわち、DWTプロ
セス(「順方向」であることは矢印226により指示さ
れている)の単一レベルの実施例を幾分詳細に示す。矢
印210及び208に従ってそれぞれ中心の位置を定め
られている低域フィルタ204と高域フィルタ206が
データセット200にそれぞれ適用される。すなわち、
各フィルタはデータセット200のデータを畳込み、低
域フィルタ及び高域フィルタの出力はそれぞれ矢印21
4及び216により示されている。低域フィルタ204
と高域フィルタ206はデータセット200においてそ
れぞれ点2nと2n+1を中心としており、それぞれの
サブバンド218及び220においてデータポイント
「n」を生成する。更に、データセット200の長さ2
02はそれぞれのサブバンド218及び220の長さ2
22、224の2倍であることに注意する。このデータ
長さの「半減」はDWTプロセスに固有のダウンサンプ
リングに由来するものである。フィルタ204及び20
6はデータポイント2つ分の増分をもってデータセット
200に沿って「スライド」する。この2ポイントの増
分は矢印212により指示される方向へのダウンサンプ
リングプロセスを示している。
【0020】図3は、IDWTプロセス、すなわち、逆
変換プロセスの単一レベルの実施例を示す。尚、変換プ
ロセスが逆方向であることは、矢印312により指示さ
れている。この場合、低域フィルタ306及び高域フィ
ルタ304は、それぞれ、サブバンド302及び300
のビット「n」及び「n−1」を中心位置としている。
これらのフィルタの中心に関するデータの畳込みの結果
(詳細については図4を参照)は、それぞれ矢印316
及び314により示すように、加算器318における加
算の後、逆変換済みデータセット310の出力データポ
イント「2n」として現れる。フィルタ306、304
は矢印308により示す方向に1ずつのデータポイント
増分でスライドする。
【0021】図4は、図3に関連して説明した単一レベ
ル逆変換動作を幾分詳細に示す。低域フィルタ414を
考えてみると、このフィルタの長さはデータポイント7
つ分であることがわかる。同様に、高域フィルタ416
はデータポイント9つ分の長さを有することがわかる。
逆DWTでは、本来、アップサンプリングプロセスが実
行されるため、低域フィルタ414により要求される7
ビットは導出される。すなわち、フィルタは4つのアッ
プサンプリングビット(400として示されている)によ
り「充填」され、アップサンプリングプロセスはデータ
のセット400のポイントの間に「0」を挿入して、低
域フィルタ414に必要な7ビットを生成するのであ
る。このアップサンプリングプロセスは点線の矢印42
0により指示されている。同様に、高域フィルタ416
を「充填」するため、データセット402は点線の矢印
418により示すようにアップサンプリングされる。こ
れら各々のフィルタは対応するアップサンプリング済み
データセットを畳込み、2回の畳込みの結果は加算器4
06で加算されて、出力ポイント408となる。畳込み
の計算は図15に関連して式(1)に数学的に表されて
いる。
【0022】図5では、1つの出力ポイントを生成する
ために必要である変換データの各レベルにおけるIDW
Tデータ条件を考える。レベル0の1つの出力ポイント
524は、第1レベルサブバンドから、IDWTプロセ
スのカーネルの必要条件を満たすために、すなわち、関
連するフィルタを「充填」するために十分なデータを要
求する。9つのタップを有する低域フィルタを使用して
いるこの実施例を考えてみると、出力ポイント524
は、526として表されているフィルタが9つのデータ
ポイントで充填されることを要求する。フィルタ526
はデータポイント522を中心としている。「X」によ
り示されるデータポイント、例えば、データポイント5
16は「実」データポイントであるが、「0」により表
されるデータポイントは実データポイントではなく、ア
ップサンプリングプロセスにより挿入された0である。
従って、フィルタ526は出力ポイント524を生成す
るために合わせて9つのポイントを必要としているので
あるが、実際には「X」によって示すように5つの実デ
ータポイントがあれば良い。別の見方をすれば、フィル
タ中心ポイント522を中心とする出力ポイント524
はフィルタ中心ポイント522の両側に4つのデータポ
イントから成るセット520を必要としているのであ
る。従って、レベル2のデータポイント518を中心と
するレベル1のデータポイント516は、フィルタ中心
のデータポイント518の右側に4つのデータポイント
から成るセット512を必要とする。1レベル上がっ
て、レベル3のデータポイント508を中心とするレベ
ル2の最も右側のデータポイント510は、フィルタの
中心ポイント508で4つのデータポイントから成るセ
ット506が利用可能であることを要求する。更に1レ
ベル上がって、レベル4のデータポイント504を中心
とするレベル3の最も右側の実データポイント528
は、レベル4のデータポイント504で4つのデータポ
イント502が利用可能であることを要求する。このよ
うに、レベル4まで考えたところで、当初の出力ポイン
ト524を支援するために必要とされる全データセット
の幅はそれ以上大きくならないことがわかる。実際、レ
ベル5を見てみると、中心データポイント530はレベ
ル0の最終出力ポイント524の生成を満足させるため
に両側に7つのデータポイントを必要とすることがわか
る。更に、データポイント530は両側に3つの実デー
タポイントを要求するのみである。すなわち、合わせて
7つの実データポイントがあれば良いのである。レベル
5を越えた後続の全てのレベルについても同じことが言
える。パイプラインプロセス及びデータ幅固定フィルタ
を使用して、ラスタ又はバンド方式で出力ポイントを生
成するために、要求されるデータセットの幅があるポイ
ント又はあるレベルで制限されるというこの事実をマル
チレベルIDWTで活用することができる。これを図6
及び図7を参照して説明する。
【0023】図6においては、図5のレベル1を超える
全てのレベルについて、7つの実データポイントが要求
されているため、レベル1を含めた全てのレベルでこの
ポイント数を標準化することが急がれる。データセット
の末端部の0は先行するレベルからの実データを必要と
せずにアップサンプリングプロセスにより挿入されたも
のであるので、図2に関連して説明したようにフィルタ
がデータセットに沿って「スライド」しない静止状況に
おいては、各レベルで7つの実データポイントを使用す
ると、データポイント600を中心として、7つの出力
ポイント610から602を生成できることがわかる。
しかし、各レベルで8つのポイントを使用することによ
り8つの出力ポイントを生成することによって、この構
成を改善できることが判明している。データポイント8
つの構成を使用する場合、要求されるフィルタのサイズ
は一定である。すなわち、フィルタが問題のデータポイ
ントに沿ってスライドされるときに、先行レベルから一
定の数の実データポイントを必要とするのである。しか
し、データポイント7つの構成を使用すると、様々なレ
ベルのフィルタが通常はほぼ実データポイント1つ分の
大きさで変動するので、実現の形態が複雑になる。従っ
て、先に説明した特定のフィルタ及びアップサンプリン
グプロセスであることを考慮に入れると、レベルの数が
どのようなものであっても、各レベルで8つのデータポ
イントを取り出すことにより、8つの出力ポイントを生
成できると結論づけられる(図7を参照)。
【0024】レベルの数がハードウェアで実現される容
量を越えると、計算を折りたたむことができる。すなわ
ち、多段パイプラインを使用することができる。このこ
とについては図20及び図21を参照して後に更に詳細
に説明する。
【0025】図7は、同様に1次元データセットと関連
させて、3レベルIDWTプロセスを示す。8つの出力
ポイントから成る第1のセット724を考えると、レベ
ル1、レベル2及びレベル3のそれぞれで、フィルタ7
18、712及び710は適切な8つの実データポイン
トと、対応するアップサンプリングされた0とで充填さ
れていることがわかる。これら3つのフィルタの縦列の
畳込み出力は出力ポイントのセット724である。その
後、レベル1のフィルタ718は720により示される
位置まで右へスライドする。レベル2のフィルタ712
も同様に714により示すように右へスライドし、レベ
ル3のフィルタ710は706により示すように右へス
ライドする。フィルタのセットの当初の横方向位置は点
線700で示されており、スライド動作が終了した後の
横方向位置は点線702により示されている。3つのフ
ィルタ706、714及び720は、データポイントの
畳込みにより、8つの出力ポイントから成る第2のセッ
ト726を生成する。それぞれのフィルタを点線704
により示される整列位置までスライドさせることによ
り、8つの出力ポイントから成る第3のセット728が
生成される。図7に示す実施例が示唆することを要約す
ると、マルチレベルIDWTデータセットの各バンドご
とに固定幅フィルタを使用した結果、レベル0で1つの
データのバンドが生成されるということになる。実際に
は、レベルごとにIDWTを実行する従来の方法を利用
することに代えて、パイプラインプロセスを実現するこ
とができ、それにより、固定データ幅のパイプラインプ
ロセスを使用して、ラスタ又はバンド方式で出力データ
を生成することが可能になる。
【0026】図8は、計算ブロック850、852及び
854のタンデム配列により出力ポイント830がどの
ようにして生成されるかを示すブロック図である。計算
ブロック850は2つの計算サブブロック808及び8
16を含み、各々のサブブロックはサブバンド804及
び806からの対応するデータポイントのアップサンプ
リングと畳込みを実行する。アップサンプリングされた
畳込みデータポイントは加算器810で加算され、サブ
バンド802からの対応するデータと共に次のレベルの
計算ブロック852に提供される。計算ブロック852
の出力は、矢印822により指示するように、矢印85
6により示す次のサブバンドレベル800からのデータ
と共に最終計算ブロック854に提供され、計算ブロッ
ク854は出力ポイント830を生成する。各計算サブ
ブロック808はアップサンプリング/畳込みプロセス
を実行する。例えば、図7に示す畳込みは適切なIDW
T合成フィルタにより実行される。アップサンプリング
プロセスは、実データポイントの間に0を適宜挿入する
ことにより容易に実行される。各計算サブブロック80
8は、図7に示した例と同様に、矢印848により指示
するように右へスライドする。全ての計算ブロック82
6、818、816及び808について、矢印840、
842、846及び848によりそれぞれ指示するよう
に、これと同じスライド動作が実行される。各計算ブロ
ック850の出力は次のレベルの計算ブロック852へ
並列カスケード方式で送り出される。以下の動作も同様
である。従って、一対のレベルごとに、例えば、レベル
3(すなわち、832)とレベル2(すなわち、834)に
ついて、サブバンド804、806のセットは計算ブロ
ック850により逆変換されて、矢印812により示す
ように第2のサブバンドレベル812のデータを形成
し、このデータは関連するサブバンドデータ802と共
に計算ブロック852が実行するIDWTプロセスによ
り再び処理される。
【0027】図9は、図8の構成のブロック表現を示
す。この場合、計算ブロック906はブロックバッファ
900から入力サブバンドデータ902及び904を受
信する。計算ブロック906は出力918を次のレベル
の計算ブロック922へ送り出し、計算ブロック922
はブロックバッファ900からの入力920と共に次の
サブバンド層に対しデータ924を生成する。同様にデ
ータを生成し、最終的に、出力データ916が生成され
る。図9の構成は、906のような計算ブロックが各レ
ベルと関連していることを示している。図6からわかる
ように、IDWTではアップサンプリングプロセスを実
行するため、所定の1つのレベルにおける1つのデータ
ポイントは次に低いレベルの2つのデータポイントと等
価である。従って、計算という面から見れば、レベル1
の計算ブロック914は1レベル上、すなわち、レベル
2の等価の計算ブロック908と比較して、単位時間当
たり2倍の量の計算を実行するのである。この原理を一
般化すると、計算ブロック914を時間の100%を使
って計算を実行すると定義すれば、レベル2の計算ブロ
ックは時間の50%のみを使用して計算を実行し、レベ
ル3の計算ブロックは時間の25%のみを使用して計算
を実行するということになる。そこで、jレベル変換を
考えてみると、レベル2からレベルjの計算ブロック
は、数学的に以下の数列により表現できる総時間の間
は、「計算中」である。1/2 + 1/4 + 1/8 + 1/16 +...+
(1/2)j-1上記の数列は「1」に収束するので、レベル
1の処理には1つの計算ブロックが必要であり、レベル
2からレベルjまでの他の全てのレベルについては第2
の計算ブロックを共用できると結論づけられる。この結
論は、各レベルにおける計算ブロックの相対的な「計算
中」時間を考慮することのみに基づいている。従って、
実際には、レベル間で計算ブロックを切り替えるために
要する時間などの他の要因を考慮に入れるために、上記
の最小限2つという数より多い数の計算ブロックを使用
する実現形態もありうる。
【0028】以上説明した原理は図10に示すように利
用される。この場合、レベル1では計算ブロック100
0が必要であり、第2の計算ブロック1002は残る全
てのレベルで共用される。計算ブロック1002は、例
えば、点線のブロック1006により示すような「仮
想」計算ブロックとして動作するように、レベル間で切
り替えられる。これは、レベル間でブロック1002を
切り替えるために必要な切り替えハードウェアや、10
06のような別のレベルで使用されている間に各計算ブ
ロック1002からの状態情報をセーブしておくために
おそらくは使用されると思われる小型メモリ1004を
考慮しても、計算ハードウェアの大幅な節約につなが
る。
【0029】図11は、2次元データの単一レベルDW
Tを示す。まず、矢印1102により示すようにデータ
セット1100を「行変換」する。高域フィルタ及び低
域フィルタは図2に関連して説明したように一度にデー
タポイント2つ分スライドし、データの各行1102が
変換された後、戻り矢印1104により示すように次の
行1106へ移動する。点線の矢印1108により示す
ようにデータセット1100が完全に変換された時点
で、データセットは、それぞれダウンサンプリングされ
た行変換データ1114及び1116を有する2つのデ
ータセット1110及び1116により表現されること
になる。それらの変換済データセット1110及び11
12は、その後、矢印1118により示すように、矢印
1120で示す列データ変換を受け、各列が完全に変換
されたならば、変換フィルタはやじるし1122により
示すように別の列1124へ移動する。列変換プロセス
の終了時に、データは点線の矢印1130により示すよ
うに4つのサブバンドから成るデータセット1132に
変換されている。
【0030】jレベルの変換を考えると、j以外の各レ
ベルで、LLサブバンド1138のデータは先行レベル
でIDWTを適用することにより生成され、先行のサブ
バンドのデータは、図9に1次元の場合として示したブ
ロックバッファ900に類似するメモリに保持されてい
る関連する復号ブロックから検索される。
【0031】図12は、これ以降の説明の基礎として、
2次元データに対する従来のメモリ利用方式の特定のレ
ベルにおけるIDWTプロセスを示す。処理はいくつか
の段階を経て実行される。段階Aは特定のレベルの4つ
のサブバンド1200を示す。全てのサブバンド120
0は次のような演算により処理される。すなわち、例え
ば、計算ブロック1204による2ずつのアップサンプ
リングと、図示されるような垂直方向へのフィルタリン
グ(すなわち、畳込み)である。サブバンド1200ごと
の全ての結果が1208、1210などのメモリに書き
込まれた時点で、段階Aは完了する。段階Bは先行のサ
ブバンド1200と関連する結果をメモリ1210、1
208から検索し、それらの結果は1212などの加算
器において対ごとに加算され、その結果はメモリ121
4に格納される。段階Cは、データセットごとの全ての
結果がメモリ1216及び1224に書き込まれた時点
で完了する。段階Dは各データセットと関連する結果を
メモリ1216、224から検索し、それらの結果は加
算器1218で加算されて、最終データセット1220
を形成する。この段階で、次のレベルのLLサブバンド
のデータが生成されており、次のレベルではこれと全く
同じプロセスが繰り返される。全てのレベルが処理され
終わり、最終出力データが生成されるまで、以上述べた
プロセスがレベルごとに繰り返し実行される。
【0032】図6に戻り、1次元の概念をこの2次元の
ケースに利用すると、1つのレベルにおける8×8
「実」データポイントの領域は次のレベルの必要条件を
満たしていると思われ、そのため、次のレベルでは8×
8「実」データポイントを生成する。この原理は全ての
レベルに当てはまる。従って、各レベルで8×8領域が
与えられるのであれば、レベル0において8×8出力デ
ータが生成されることになる。
【0033】図13は、上記の特徴を利用した、2次元
の場合に好ましい一実施例を示す。図13は、レベル
1、すなわち、レベル0で出力データを生成するレベル
におけるIDWT計算ブロックを説明している。しか
し、各レベルで計算ブロックは同一の形態をとる。更
に、前述のように、資源の共用が可能であるので、レベ
ル間で計算ブロックを共用することができる。
【0034】図13の実施例は7×7ポイントの計算に
関連して説明されるが、本発明はこれに限定されない。
この実施例では、例えば、1302のような入力データ
の1つの列が1304のような並列コンボルバにクロッ
ク入力され、1316のような直列コンボルバがデータ
で充填されるたびに、7つの出力画素から成る画素列1
324を生成する。点線のボックス1370に入ってい
る並列コンボルバ1304、関連する加算器1332及
び関連する直列コンボルバ(例えば、1316)の組み合
わせを2次元分離可能IDWT変換器という。この変換
器と、図13には明示されていないアップ変換を実行す
る補間器機能については、図14から図16を参照して
以下に更に詳細に説明する。
【0035】垂直方向に演算を実行するため、サブバン
ドごとに1つずつ、合わせて4つの並列コンボルバ(例
えば、1304)を使用する。各コンボルバ1304
は、7つの入力「実」データポイントに別個に適用され
た垂直カーネル(すなわち、フィルタ)の結果を同時に生
成する。すなわち、図7に示すようにフィルタを「スラ
イド」させるのではなく、データを並列に並列コンボル
バにロードするのである。ポイント1302を中心とし
て7つの出力1340を生成するために必要なポイント
1302の総数は15、すなわち、実ポイント7つと、
データのアップサンプリングの結果である8個の0であ
る。これらの0はメモリから読み出される必要はなく、
コンボルバ自体を適切に実現することにより挿入されて
も良い。
【0036】このように、サブバンドごとに、7つのデ
ータポイントから成る列1302が入力される。例え
ば、1306及び1308のようなLLサブバンド及び
LHサブバンドの対応する中間ポイントは加算器133
2で加算される。加算器1332の出力は水平方向に動
作する直列コンボルバ1316へ送られる。並列コンボ
ルバ1304により出力されるデータセット1340の
出力ポイントごとに1つの直列コンボルバ1316が必
要である。データが1316のような水平コンボルバに
段階的に入力されるにつれて、出力データ1318の行
が徐々に生成されて行く。左右の水平直列コンボルバ1
316及び1336からの対応するデータ1318及び
1334は、最終的に、加算器1338で加算される。
その結果、完全に畳込まれたデータの7つの行1342
が逐次積み重ねられたデータが生成される。すなわち、
全ての行は、例えば、1316のような直列コンボルバ
がデータを送り込まれる速度で、ラスタ順に一度に1ポ
イントずつ、同時に並列に生成されるのである(すなわ
ち、1324)。最終加算器段1338の出力は実際に
は次のレベルにより要求されるLLサブバンドデータで
ある。
【0037】図13に示す計算ブロックをレベル2など
の他のレベルに適用する場合、レベル2などのレベルが
次に低いレベル、例えば、レベル1に対しLLデータの
7つの行1324を生成した後、レベル2からの別のL
Lデータ1324は次のレベル、すなわち、レベル1に
より要求されるときにのみ生成されることに注意する。
これはレベル間で行われるアップサンプリングと、その
結果としての各レベルにおける必要計算速度の相違に関
連している。
【0038】図13を参照して説明したような2次元の
実施例は、水平方向に左から右へ1ステップのデータポ
イント増分で処理を実行し、それにより、ラスタ順に1
324のようなデータのバンドを生成する。このバンド
はデータポイント7つ分の幅を有する。水平方向にサブ
バンドを走査し終わったとき、プロセスは垂直方向に7
行下り、右から左へ再び走査して、逆変換プロセスを継
続する。
【0039】図14は、逆2次元分離可能DWT変換器
の一部の概略図である。この構成1600は、加算器1
606及び補間器1608を介して水平フィルタ160
4にデータを供給する垂直フィルタ1602を含む。
【0040】説明を容易にするため、複数の行r及び列
sを成して配列された複数の変換係数xr,sを有する1
つのウェーブレット変換サブバンドに関連して図14の
構成の動作を説明する。垂直フィルタ1602は複数の
並列入力1601と、1つの出力チャネル1605とを
有する。この特定の例では、垂直フィルタ1602は9
つのタップと、9つの並列入力1601を有するが、本
発明はそれに限定されない。同様に、水平フィルタ16
04も9つのタップを有するが、本発明はそれに限定さ
れるものではない。
【0041】任意のクロックサイクルで、垂直フィルタ
1602はウェーブレット変換サブバンドの9つの変換
係数{xi-4,j,xi-3,j,xi-2,j,xi-1,j,xi,j
i+1 ,j,xi+2,j,xi+3,j,xi+4,j}を入力として取
り入れる。次に、垂直フィルタ1602はそれらの入力
変換係数に基づいて1つの中間変換係数yi,jを計算
し、出力する。すなわち、垂直フィルタ1602は係数
{xi-4,j,xi-3,j,x i-2,j,xi-1,j,xi,j,x
i+1,j,xi+2,j,xi+3,j,xi+4,j}の垂直方向の1次
元逆変換を実行するのである。そこで、得られる中間係
数yi,jは位置i,jにおける画像の水平方向の1次元
変換係数である。
【0042】次のクロックサイクルでは、垂直フィルタ
1602はウェーブレット変換サブバンドの9つの変換
係数{xi-4,j+1,xi-3,j+1,xi-2,j+1,xi-1,j+1
i, j+1,xi+1,j+1,xi+2,j+1,xi+3,j+1,x
i+4,j+1}を入力として取り入れ、別の中間変換係数y
i,j+1を出力する。次のクロックサイクルでは、垂直フ
ィルタ1602はウェーブレット変換サブバンドの9つ
の変換係数{xi-4,j+2,xi -3,j+2,xi-2,j+2,x
i-1,j+2,xi,j+2,xi+1,j+2,xi+2,j+2
i+3,j+2,xi+4,j+2}を入力として取り入れ、別の中
間変換係数yi,j+2を計算する。このようにして、垂直
フィルタ1602は行iの終わりに至るまでクロックサ
イクルごとに演算を継続する。次に、垂直フィルタは9
つの変換係数{xi-3,0,xi-2 ,0,xi-1,0,xi,0,x
i+1,0,xi+2,0,xi+3,j,xi+4,0,xi+5,0}を入力
として取り入れ、先行する行と同様にして演算を継続す
る。図からわかるように、垂直フィルタ1602は入力
として複数の係数群を順次受信する。各係数群{x
i-4,j,xi-3,j,xi-2,j,xi-1,j,xi,j,xi+1,j
i+2,j,xi+3,j,x i+4,j}は、中心の変換係数xi,j
の垂直方向の両側に4つの係数を含み、画像の垂直方向
に配列された9つの隣接する係数から構成されている。
垂直フィルタ1602は「ラスタ」型走査の順に係数群
を受信する。すなわち、中心変換係数がラスタ走査順に
順次入力されるのである。従って、各変換係数xi,j
垂直フィルタ1602に何度も入力する必要はない。
【0043】中間変換係数yi,j,yi,j+1等は加算器1
606にパイプライン方式で供給され、別の垂直ライン
フィルタ(図示せず)からのそれぞれ対応する中間変換係
数y'i,j,y'i,j+1に加算される。その後、加算された
変換係数は補間器1608により水平方向に補間(アッ
プサンプリング)される。補間後の変換係数y''i,jは水
平ラインフィルタ1604に供給される。
【0044】任意のクロックサイクルで、水平フィルタ
1604は1つの補間係数y''i,jを入力として取り入
れる。そこで、水平フィルタ1604は、その時点では
水平フィルタ1604に格納されている入力変換係数
{y''i,j,y''i,j-1,y''i, j-2,y''i,j-3,y''
i,j-4,y''i,j-5,y''i,j-6,y''i,j-7
y''i,j-8}に基づいて、1つの係数zi,j-4を計算し、
出力する(1610)。すなわち、フィルタ1604は係
数{y''i,j,y''i,j-1,y''i,j-2,y''i,j-3,y''
i,j- 4,y''i,j-5,y''i,j-6,y''i,j-7
y''i,j-8}に基づいて、1つの係数を計算し、出力す
る(1610)。すなわち、水平方向の1次元逆変換を実
行するのである。
【0045】次のクロックサイクルで、水平フィルタ1
604は次の補間係数y''i,j+1を入力として取り込
み、その時点で格納されている係数{y''i,j+1,y''
i,j,y''i,j-1,y''i,j-2,y''i,j-3,y''i,j-4
y''i,j-5,y''i,j-6,y''i,j- 7}に基づいて逆変換
係数を計算し、出力する(1610)。このように、水平
フィルタはシフトレジスタ構造として機能する。水平フ
ィルタ1604は行iの終わりに至るまでこのようにし
て動作を継続し、その後、次の行を処理し、以降も動作
を続ける。図からわかるように、水平フィルタ1604
は、逆変換係数を計算するに際して実質的にはデータポ
イント4つ分垂直フィルタより遅れている。この構成
は、逆変換係数がラスタ走査順に計算されるようなもの
である。
【0046】サブバンドのエッジで逆変換係数を計算す
る場合の問題を克服するためにエッジミラリングを使用
するのが好ましい。例えば、第1のクロックサイクル
で、垂直フィルタ1602は9つの変換係数{x-4,0
-3,j,x-2,0,x-1,0,x0, 0,x1,0,x2,j
3,0,x4,0}を入力として取り込むが、その最初の
(及び最後の)4つのサンプルを垂直フィルタ1602に
読み込むときにミラーリングするのである。あるいは、
最初の4つのサンプルを0に設定しても良い。先に述べ
た通り、水平フィルタ1604は逆変換係数を計算する
に際して実質的にはデータポイント4つ分遅れている。
従って、最初の(及び最後の)4つのサンプルをミラリン
グした上で各行の第5のサンプルから始まるようにクロ
ッキングすることが可能である。
【0047】このように、この構成は、フィルタリング
済出力データを高速で1つの直線方向に生成できるよう
に2次元分離可能畳込みカーネルを処理する。
【0048】次に図15を参照すると、図14に示す垂
直フィルタ1602として使用するのに適する並列コン
ボルバのブロック線図が示されている。垂直フィルタ1
602は、ウェーブレット変換サブバンドの9つの変換
係数{xi-4,j,xi-3,j,x i-2,j,xi-1,j,xi,j
i+1,j,xi+2,j,xi+3,j,xi+4,j}を入力1601
として受信する(図14を参照)メモリアレイ1802か
ら構成されている。垂直フィルタ1602は、メモリア
レイ1802に格納されている変換係数を加算する加算
器1804、1806、1808、及び1810を更に
具備する。この点を更に詳細にいえば、加算器1804
は変換係数xi-4,j及びxi+4,jを加算し、加算器180
6は変換係数xi-3,j及びxi+3,jを加算し、加算器18
08は変換係数xi-2,j及びxi+2,jを加算し、加算器1
810は変換係数xi-1,j及びxi +1,jを加算する。これ
に加えて、垂直フィルタ1602はフィルタ係数h8
7、h6、h5及びh4を格納する5つのメモリストア1
812、1814、1816、1818及び1820を
具備する。また、垂直フィルタは、加算器1804、1
806、1808及び1810により出力された加算済
み変換係数をメモリストア1812、1814、181
6及び1818に格納されているフィルタ係数h8
7、h6及びh5とそれぞれ乗算する乗算器1822、
1824、1826及び1828を具備する。更に、垂
直フィルタ1602はメモリアレイ1802に格納され
ている中心変換係数xi,jをメモリ1820に格納され
ている中心フィルタ係数h4と乗算する別の乗算器18
30を具備する。乗算器1822、1824、182
6、1828及び1830による乗算の結果は加算器1
832に供給され、加算器1832は乗算の結果を加算
し、加算結果を垂直フィルタ1602の出力チャネル1
605へ送り出す。このように、垂直フィルタ1602
はクロックサイクルごとに中間変換係数yi,jを出力す
る。
【0049】畳込み計算の典型的な表現を数学的に表す
と次のようになる。
【0050】
【数1】
【0051】ここで、y(n)はn番目の出力ポイント、
h(n−k)はk番目のフィルタタップ係数、x(k)はk
番目の入力ポイント、である。
【0052】図15に示す並列コンボルバ1602は、
逆ウェーブレットカーネルの対称性が乗算器の数を最小
限に抑えるという利点を活用している。コンボルバ16
02は、フィルタにより乗算を適用する前に、フィルタ
の中心フィルタ係数を中心とする変換係数の鏡面対称画
像部分を加算する。これは、式(1)に示す畳込み計算を
次のように再配列することにより取り出されても良い。
【0053】 yi,j=h0i-c,j+h1i-c+1,j+....h2ci+c,j (2) ここで、c=(N−1)/2であり、Nは奇数である(こ
の特定の例においては、N=9)。
【0054】ウェーブレットは対称であるので、hc+k
=hc-k....(k<c)となり、畳込み計算(式(2))を次
のように再配列することが可能になる。
【0055】 yi,j=hcI,j+hc+1(xi+1,j+xi-1,j)+hc+2(xi+2,j+xi-2,j) +....h2c(xi+c,j+xi-c,j) (3) 次に図16を参照すると、図14に示す水平フィルタ1
604として使用するのに適する直列コンボルバのブロ
ック線図が示されている。水平フィルタ1604の構造
は垂直フィルタ1602の構造とほぼ同じであるが、フ
ィルタの入力配列と、フィルタ係数hiの値は異なる。
先に述べた通り、中間変換係数は、シフトレジスタのよ
うに機能する水平フィルタ1604に一度に1つずつ入
力される。水平フィルタ1604は9つの中間変換係数
{y''i,j,y''i,j-1,y''i,j- 2,y''i,j-3,y''
i,j-4,y''i,j-5,y''i,j-6,y''i,j-7
y''i,j-8}を順次受信するメモリアレイ1902を具
備する。水平フィルタ1604は、メモリアレイ190
2に格納されている変換係数を加算する4つの加算器1
904、1906、1908及び1910を更に具備す
る。すなわち、加算器1904は変換係数y''i,j及び
y''i,j-8を加算し、加算器1906は変換係数y''
i,j-1及びy''i,j-7を加算し、加算器1908は変換係
数y''i,j-2及びy''i,j-6を加算し、加算器1910は
変換係数y''i,j-3及びy''i,j-5を加算する。これに加
えて、水平フィルタ1604は、フィルタ係数h8
7、h6、h5及びh4を格納する5つのメモリストア1
912、1914、1916、1918及び1920を
具備する。水平フィルタ1604は、加算器1904、
1906、1908及び1910により出力された加算
済み変換係数をメモリストア1912、1914、19
16及び1918に格納されているフィルタ係数h8
7、h6及びh5とそれぞれ乗算する4つの乗算器19
22、1924、1926及び1928を更に具備す
る。更に、水平フィルタ1604は、メモリアレイ19
02に格納されている中心変換係数y''i,j-4をメモリ
1920に格納されている中心フィルタ係数h4と乗算
する別の乗算器1930を具備する。乗算器1922、
1924、1926、1928及び1930による乗算
の結果は加算器1932に供給され、加算器1932は
乗算の結果を加算し、その結果を水平フィルタ1604
の出力チャネル1610へ送り出す。このように、水平
フィルタ1604はクロックサイクルごとに逆変換係数
を1つずつ出力する。
【0056】次に図17を参照すると、サブバンドの複
数の行及び複数の出力係数を同時にアクセスするという
利点を有する点を除いて、図14に示す構成に類似して
いる逆2次元分離可能DWT変換器の一部の構成200
0が示されている。この利点は、複数の並列コンボルバ
(2001−1、2001−2)と、複数の直列コンボル
バ(2104−1、2104−2)(図18を参照)とを並
列に配列することにより実現される。すなわち、この構
成2000は共通する1つのメモリアレイ2002を有
する複数の垂直フィルタ(2001−1、2001−2)
と、対応する複数の水平フィルタ(2104−1、21
04−2)とを並列に具備している。
【0057】説明を容易にするため、2つの並列な水平
/垂直フィルタ経路のみを示すが、この実施例はそれに
限定されるものではない。構成2000は数多くの並列
垂直/水平フィルタ経路を含むことができる。更に、垂
直フィルタ1602と水平フィルタ1604(図14を
参照)は共に9つのタップを有するが、タップの数も9
に限定されない。
【0058】構成2000は、共通のメモリアレイ20
02を有する2つの垂直フィルタ2001−1及び20
01−2を具備する。メモリアレイ2002はウェーブ
レット変換サブバンドの10個の変換係数{xi-5,j
i-4,j,xi-3,j,xi-2,j,xi-1,j,xi,j
i+1,j,xi+2,j,xi+3,j,xi+4,j}を入力1601
として受信する(図14を参照)メモリを入力として受信
する並列入力端子を有する。その後、9つの変換係数
{xi-4,j,xi-3,j,xi-2,j,xi-1,j,xi,j,x
i+1,j,xi+2,j,xi+3,j,xi+4,j}は垂直フィルタ2
001−1に入力され、9つの変換係数{xi-5,j,x
i-4,j,xi-3,j,xi-2,j,xi-1,j,xi,j,xi+1,j
i+2,j,xi+3,j}は垂直フィルタ2001−2に入力
される。すなわち、係数xi+4,jは1を介して加算器2
004−1に入力され、係数xi+3,jは2を介して加算
器2006−1及び2004−2に入力され、係数x
i+2,jは3を介して加算器2008−1及び2006−
2に入力される等となっている。このように、垂直フィ
ルタ2001−1及び2001−2は場所i,j及びi
−1,jに関わる中間変換係数を同時に計算する。
【0059】垂直フィルタ2001−1及び2001−
2は共にほぼ同じであるので、ここではフィルタ200
1−のみを詳細に説明する。垂直フィルタ2001−1
は、メモリアレイ2002に格納されている変換係数を
加算する4つの加算器2004−1、2006−1、2
008−1及び2010−1を更に具備する。すなわ
ち、加算器2004−1は変換係数xi-4,j及びxi+4,j
を加算し、加算器2006−1は変換係数xi-3,j及び
i+3,jを加算し、加算器2008−1は変換係数x
i-2,j及びxi+2,jを加算し、加算器2010−1は変換
係数xi-1,j及びxi+1 ,jを加算する。更に、垂直フィル
タ2001−1は、フィルタ係数h8、h7、h 6、h5
びh4を格納する5つのメモリストア2012−1、2
014−1、2016−1、2018−1及び2020
−1を具備する。また、垂直フィルタは、加算器200
4−1、2006−1、2008−1及び2010−1
により出力された加算済み変換係数をメモリストア20
12−1、2014−1、2016−1及び2018−
1に格納されているフィルタ係数h8、h7、h6及びh5
とそれぞれ乗算する4つの乗算器2022−1、202
4−1、2026−1及び2028−1を具備する。更
に、垂直フィルタ2001−1は、メモリアレイ200
2に格納されている中心変換係数xi,jをメモリ202
0−1に格納されている中心フィルタ係数h4と乗算す
る別の乗算器2030−1を具備する。乗算器2022
−1、2024−1、2026−1、2028−1及び
2030−1による乗算の結果は加算器2032−1に
供給され、加算器2032−1は乗算の結果を加算し、
その結果を垂直フィルタ2001−1の出力チャネル2
005−1へ送り出す。このように、垂直フィルタ20
01−1及び2001−2は中間変換係数yi,j及びy
i-1,jをクロックサイクルごとに1つずつ出力する。
【0060】垂直フィルタ2001−1及び2001−
2は加算器2140及び2142と、補間器2144及
び2146とを介して水平フィルタ2104−1及び2
104−2にそれぞれ結合している(図18を参照)。中
間変換係数yi,j、yi-1,jはそれぞれ対応する加算器2
140及び2142にパイプライン方式で供給され、他
の垂直ラインフィルタ(図示せず)からの中間変換係数
y'i,j、y'i-1,jに加算される。加算済み変換係数は、
この後、補間器2144及び2146により水平方向に
補間(アップサンプリング)される。
【0061】補間済み変換係数y''i,j、y''i-1,jはそ
れぞれ対応する水平ラインフィルタ2104−1及び2
104−2に供給される。水平ラインフィルタ2104
−1及び2104−2は、それぞれ、図16を参照して
説明した種類の直列コンボルバである。水平フィルタ2
104−1及び2104−2は逆変換画像係数2110
−1、2110−2をパイプライン方式で出力する。こ
の構成は、逆変換係数2110−1、2110−2が一
度に2行ずつ、ラスタ順に計算されるようなものであ
る。
【0062】次に、ハードウェアモジュールを再利用し
たいくつかの異なる実現形態を説明する。この再利用
は、IDWTの連続するレベルの間で固有のアップサン
プリングによって可能になる。この結果、最終逆変換レ
ベルと関連する計算ブロックは最高の速度で動作し、先
行するレベルと関連する計算ブロックは徐々に長い「ア
イドル時間」を有することになる。
【0063】図19は、このアイドル時間を利用してい
る。構造はレベルごとに図13に関連して説明した構造
をそのまま用いており、レベルjの計算回路1408は
LLデータをレベルj−1の同一の計算回路1406へ
送り出す。これがカスケード配列で続いている。点線で
示すブロックは、様々なレベルでの「実」計算ブロック
1402の時分割の結果、仮想計算ブロックになってい
ることを示すように、計算ブロック1408及び140
6を表すために使用されている。1からjまでの全ての
レベルの一連の計算ブロックは計算パイプラインを形成
する。
【0064】所定のレベルj−1で1つの出力ポイント
を生成するために、9個のタップを有する低域フィルタ
を想定すると、先行レベルjではサブバンドごとに最小
限5×5個のポイントが必要であり、それらのポイント
はフィルタリング前にアップサンプリングされる。レベ
ル間の均一な実現形態と、フィルタが「スライド」する
間の適切なフィルタサイズを確保するため、先行するレ
ベルではサブバンドごとに8×8個のポイントが必要で
あると定義されている。図6に示すように、1次元の場
合、これは、レベルj−1で何らかの演算が実行可能と
なる前に、先行レベルjからサブバンドごとに8×8個
のポイント全てが利用可能な状態になっていなければな
らないということを示唆している。すなわち、パイプラ
インを満たすためには、レベルjについてLLサブバン
ドデータを生成し、次にレベルj−1についてLLサブ
バンドデータを生成し、その後、レベル1までのレベル
ごとにLLサブバンドデータを生成することによって、
完全な計算パイプラインが完成するのである。
【0065】図13を参照すると、このプロセスは、1
304のような垂直並列コンボルバを通って各々の入力
サブバンドからの1列分のデータ、例えば、データ13
02をステッピングすることによりLLデータが生成さ
れ、その後、例えば、加算器1332において必要な加
算が実行された後に、サイクルごとに直列コンボルバ1
316等に送り出される間に順次進行する。7つずつ7
組のポイント1324が1316のような直列コンボル
バからの出力として生成されて、加算器1338で加算
されるまで、サイクルごとにデータは回路にクロッキン
グされる。このLLデータは一度に1列ずつ生成され、
各列の生成時、次のレベルの計算回路はこれを受け入れ
ると共に、それと関連するLH、HL及びHHの各列を
検索して、垂直並列畳込みステップを実行するように報
知される。1つのレベルが7列分の出力LLデータ13
24を生成したならば、次のレベルが別の列のデータを
要求したときに、サブバンドごとの別の列の入力データ
を1304などの並列コンボルバにクロッキングするだ
けで良い。パイプラインが満たされた後、各レベルは次
のレベルの速度の1/2の速度で動作する。すなわち、
レベルjはレベルj−1の1/2の速度で動作する。
【0066】レベル1では、計算回路はクロックサイク
ルごとに1列分の出力データ、例えば、データ1324
を生成することができる。しかし、コンボルバ内部にお
ける入力データのアップサンプリングの結果、このレベ
ルに入力されるサブバンドデータの列ごとに、出力では
2つの列が生成される。従って、レベル1は、出力を生
成する速度の1/2の速度で、LL,LH,HL及びHH
サブバンドからの列の形態をとる入力データを要求す
る。1次元の場合に関連して説明したのと同様に、これ
は全てのレベルで起こるので、4つ1組の垂直並列コン
ボルバがレベル1を超える全てのレベルの必要条件を満
たすことができる、すなわち、レベル2からレベルjの
条件を満たすことができるのは明白である。
【0067】例えば、1304等の垂直並列コンボルバ
には状態情報は必要ではないので、4つ1組の垂直並列
コンボルバはレベル2からレベルjで共有される。各コ
ンボルバの入力側のマルチプレクサは、適切な時刻に必
要なレベルからサブバンドデータを供給する。
【0068】このことが図20に示されている。図20
では、7ポイントの幅を有するサブバンドデータ150
0がマルチプレクサ1502に供給され、その後、(共
用)垂直コンボルバ1504に選択的に供給される。こ
のコンボルバ1504は7つの出力ポイント1510を
生成し、それらの出力ポイントは出力マルチプレクサ1
506に供給される。出力マルチプレクサ1506はサ
ブバンドデータ1508を適切な水平コンボルバに供給
する。並列コンボルバからの出力は、現時点でその入力
を供給しているレベルにフィードバックされる。
【0069】各レベルと関連する1316のような直列
コンボルバにも同じ方式を適用できる。しかし、直列コ
ンボルバは維持しておかなければならない状態情報を含
んでいるため、この方式を採用する場合、水平コンボル
バに関連して、各直列コンボルバが別のレベルで使用さ
れている間に、特定のレベルでその直列コンボルバ(例
えば、1316)に関する状態情報を格納する1404
のようなコンテキストストア(図19を参照)が設けられ
ることに注意する。
【0070】水平直列コンボルバの状態を格納しておく
ことによって、更に計算パイプラインを多段で実現する
ことが可能になる。この技法は、ハードウェアのコスト
が重大な要因であり、しかも、更に別の変換層が要求さ
れる場合に有用である。図19に関連して、先に説明し
たように、レベルj−2と関連するアイドル時間中に1
406のような仮想計算ブロックを形成するために、実
計算ブロック1402が共用される。図21に示すよう
に、多段の実施例では、この仮想計算ブロックを更に1
ステップ利用する。計算パイプラインを多段で実現する
ためにコンテキストを格納しておくのは、計算パイプラ
インの直列コンボルバごとに設けられるレジスタストア
であっても良い。これは図22に示されており、この場
合、コンテキストストア2308は各水平コンボルバ2
306と関連している。各パイプライン段で、水平コン
ボルバ2306ごとに1つのそのようなストア2308
が必要である。すなわち、2段パイプラインが要求され
るのであれば、水平コンボルバ2306ごとに2つのス
トア2308が必要である。これにより、計算パイプラ
インにメモリを追加するためのコストは必要となるが、
レベル1、すなわち、レベル2300と関連するハード
ウェアを他のレベル2302、2304へ論理的にマッ
ピングすることが可能になる。この構成は、計算パイプ
ラインの完全な1段に対し1つのコンテキストストアを
形成する。支援できる段の数は、設計における各直列コ
ンボルバ2306と関連するコンテキストストア230
8の数によって決まる。
【0071】IDWTの方法は、図23に示すような従
来の汎用コンピュータシステム1700を使用して実施
できる。この場合、IDWTのプロセスは、コンピュー
タシステム1700内部で実行されるアプリケーション
プログラムなどのソフトウェアとして実現可能である。
すなわち、IDWTの方法の各ステップは、コンピュー
タにより実行されるソフトウェアの命令によって実行さ
れるのである。ソフトウェアを、IDWT方法を実行す
るための部分と、ユーザとの間のユーザインターフェス
を管理するための部分という2つの別個の部分に分割す
ることができる。ソフトウェアは、例えば、以下に記載
する記憶装置を含めたコンピュータ読み取り可能媒体に
格納できる。ソフトウェアはコンピュータ読み取り可能
媒体からコンピュータにロードされた後、コンピュータ
により実行される。そのようなソフトウェア又はコンピ
ュータプログラムが記録されているコンピュータ読み取
り可能媒体はコンピュータプログラム製品である。コン
ピュータにおいてコンピュータプログラム製品を使用す
ることにより、上述の構成に従ってIDWTを実行する
のに有利な装置が得られるのが好ましい。
【0072】コンピュータシステム1700はコンピュ
ータモジュール1701と、キーボード1702及びマ
ウス1703などの入力装置と、プリンタ1715及び
表示装置1714を含む出力装置とを具備する。変復調
器(モデム)トランシーバ装置1716は、例えば、電話
回線1721又はその他の機能媒体を介して接続可能で
ある通信ネットワーク1720との間で通信を行うため
にコンピュータモジュール1701により使用される。
モデム1716はインターネットや、ローカルエリアネ
ットワーク(LAN)又はワイドエリアネットワーク(W
AN)などの他のネットワークシステムに対するアクセ
スを獲得するために使用できる。
【0073】コンピュータモジュール1701は、典型
的には、少なくとも1つのプロセッサユニット1705
と、例えば、半導体ランダムアクセスメモリ(RAM)及
び読み取り専用メモリ(ROM)から形成されるメモリユ
ニット1706と、ビデオインターフェス1707、キ
ーボード1702及びマウス1703、更にはオプショ
ンであるジョイスティック(図示せず)に対応する入出力
インターフェス1713及びモデム1716に対応する
インターフェス1708を含む入出力(I/O)インター
フェスとを含む。記憶装置1709は典型的にはハード
ディスクドライブ1710と、フロッピー(登録商標)
ディスクドライブ1711とを含む。磁気テープドライ
ブ(図示せず)を使用しても良い。不揮発性データ源とし
て、典型的には、CD−ROMドライブ1712が設け
られる。コンピュータモジュール1701のこれらの構
成要素1705から1713は典型的には相互接続バス
1704を介して、関連技術分野の当業者には知られて
いる従来のコンピュータシステム1700の動作モード
をもたらすように互いに通信する。本発明の実施例を実
施できるコンピュータの例としては、IBM−PC及び
そのコンパチブル、Sun Sparcstations又はそこから派
生した類似のコンピュータシステムなどがある。
【0074】通常、好ましい実施例のアプリケーション
プログラムはハードディスクドライブ1710に常駐し
ており、その実行はプロセッサ1705により制御され
る。プログラム及びネットワーク1720から取り出さ
れるデータの中間記憶は、可能であればハードディスク
ドライブ1710と協調して、半導体メモリ1706を
使用して行われれば良い。場合によっては、アプリケー
ションプログラムをCD−ROM又はフロッピーディス
クに符号化した形態でユーザに提供し、適切なドライブ
1712又は1711によりプログラムを読み取るよう
にしても良いし、あるいは、ユーザがモデム装置171
6を介してネットワーク1720からプログラムを読み
取っても良い。更に、磁気テープ、ROM又は集積回
路、光磁気ディスク、コンピュータモジュール1701
と別の装置との間の無線送信チャネル又は赤外線送信チ
ャネル、PCMCIAカードなどのコンピュータ読み取
り可能なカード、Eメール通信及びウェブサイトに記録
された情報を含めたインターネット及びイントラネット
などを含む他のコンピュータ読み取り可能な媒体からコ
ンピュータシステム1700にソフトウェアをロードす
ることも可能である。以上挙げた媒体は関連するコンピ
ュータ読み取り可能な媒体のいくつかの例であるにすぎ
ない。他のコンピュータ読み取り可能な媒体を実施して
も、本発明の趣旨から逸脱することにはならない。
【0075】あるいは、IDWTの機能又は部分機能を
実行する1つ又は複数の集積回路などの専用ハードウェ
アにおいてIDWTの方法を実現することもできる。そ
のような専用ハードウェアはデジタルシグナルプロセッ
サ、又は1つ又は複数のマイクロプロセッサ及び関連メ
モリを含むと考えられる。
【0076】[産業上の適用可能性]以上の説明から、本
発明の実施例はコンピュータ及びデータ処理の分野に適
用可能であることが明白である。
【0077】以上、本発明のいくつかの実施例のみを説
明したが、実施例は単なる例示であって、限定的な意味
をもたず、本発明の趣旨から逸脱せずに実施例に対し変
形及び/又は変更を実施することは可能である。
【0078】上述の通り、本発明は中間メモリに加され
る要求を軽減しつつ、走査線又はバンドの順に伸張出力
データを生成するために複数のレベルのDWTデータを
処理するのに必要な計算プロセスを実行する、従来に代
わる方法を提供する。
【図面の簡単な説明】
【図1】1次元データセットに対して実行される3レベ
ルDWT/IDWTプロセスを表す図、
【図2】図1のDWTプロセスをデータビットレベルで
示す図、
【図3】図1のIDWTプロセスをデータビットレベル
で示す図、
【図4】図1のIDWTプロセスで使用されるアップサ
ンプリング/畳込みプロセスを示す図、
【図5】IDWTプロセスにおける様々に異なるレベル
でのデータ要求を示す図、
【図6】本発明の好ましい実施例におけるデータ要求を
示す図、
【図7】図6に関連して使用されるフィルタの「スライ
ド」を示す図、
【図8】図6に従ったマルチレベルIDWTプロセスを
示す図、
【図9】図6のIDWTプロセスのタンデム性を示す
図、
【図10】好ましい実施例における「仮想」計算ブロッ
クの使用を示す図、
【図11】2次元データの場合の1レベルDWTプロセ
スを示す図、
【図12】図11に関連して2次元IDWTを実行する
ための従来の実施例を示す図、
【図13】本発明に従って2次元IDWTを実行するた
めの好ましい実施例を示す図、
【図14】第1の好ましい実施例による逆2次元分離可
能DWT変換器の一部の構成を示す図、
【図15】図14で使用できる垂直フィルタ構成を示す
図、
【図16】図14で使用できる水平フィルタ構成を示す
図、
【図17】データの複数の行をアクセスし且つ出力する
ために配列されたIDWT変換器を示す図、
【図18】図17で使用するのに適する水平フィルタ構
成を示す図、
【図19】図13に関連して「仮想」計算ブロックの使
用を示す図、
【図20】図19において仮想ブロックを形成するため
に使用されるマルチプレクサを示す図、
【図21】図13に関連して適用できる多段パイプライ
ンを示す図、
【図22】図21の構成で使用するためのコンテキスト
ストアを示す図、
【図23】本発明の好ましい実施例を実施できる汎用コ
ンピュータの概略ブロック線図、である。

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 Nレベルの離散ウェーブレット変換にお
    ける第1のサブバンドレベル及び第2のサブバンドレベ
    ルに対して、 (i) 関連するフィルタ幅を有するフィルタを使用して、
    第1のサブバンドレベルの関連するサブバンドからのデ
    ータを逆変換することによって、第2のサブバンドレベ
    ルの対応するサブバンドで処理済データを形成するステ
    ップと、 (ii) 同じ対応する関連フィルタ幅を有する第2のフィ
    ルタを使用して、前記処理済データを、第2のサブバン
    ドレベルの関連するサブバンドからの対応するデータと
    関連させて逆変換するステップと、を有し、 ステップ(i)及び(ii)をパイプライン方式で実行するこ
    とを特徴とする逆離散ウェーブレット変換(IDWT)
    方法。
  2. 【請求項2】 前記フィルタはレベルNに関連して使用
    され、且つ前記第2のフィルタは他のN−1対の連続す
    るレベルN−1及びN−2、...、1及び0の全てによ
    り時分割され、該第2のフィルタは実質的に所定の時点
    で一対のレベルにのみ適用されることを特徴とする請求
    項1記載の逆離散ウェーブレット変換方法。
  3. 【請求項3】 時分割は、複数対のレベルからのデータ
    を前記第2のフィルタへ多重化するタイムマルチプレク
    サを利用して実行されることを特徴とする請求項2記載
    の逆離散ウェーブレット変換方法。
  4. 【請求項4】 前記第2のフィルタと関連する、一対の
    サブバンドレベルに関連するデータは、該第2のフィル
    タが別の一対のサブバンドレベルに適用されている間に
    格納されることを特徴とする請求項2記載の逆離散ウェ
    ーブレット変換方法。
  5. 【請求項5】 前記フィルタ及び前記第2のフィルタ
    は、N次元分離可能IDWT変換器であることを特徴と
    する請求項1乃至4のいずれかに記載の逆離散ウェーブ
    レット変換方法。
  6. 【請求項6】 Nレベルの離散ウェーブレット変換に関
    連してIDWTを実行する方法であって、 (i) 第1のサブバンドレベルの関連するサブバンドから
    のデータに第1のセットのM×Mフィルタを適用するこ
    とによって、第2のサブバンドレベルの対応するサブバ
    ンドのM×M個の処理済データポイントを形成するステ
    ップと、 (ii) N−1個の連続するサブバンドレベルに関してパ
    イプライン方式で、N−1セットの対応するM×Mフィ
    ルタを、それぞれ先行のサブバンドレベルからのM×M
    個の処理済データポイントに、後続のサブバンドレベル
    の関連するサブバンドからの対応するデータと関連させ
    て適用することによって、パイプライン方式でM×M個
    の出力データポイントのセットを形成するステップと、
    を有することを特徴とする逆離散ウェーブレット変換方
    法。
  7. 【請求項7】 Nレベルの離散ウェーブレット変換にお
    ける第1のサブバンドレベル及び第2のサブバンドレベ
    ルに対して、 関連するフィルタ幅を有し、第1のサブバンドレベルの
    関連するサブバンドからのデータを逆変換して、第2の
    サブバンドレベルの対応するサブバンドで処理済データ
    を形成するフィルタと、 同じ対応する関連フィルタ幅を有し、前記処理済データ
    を、第2のサブバンドレベルの関連するサブバンドから
    の対応するデータと関連させて逆変換する第2のフィル
    タと、を有し、 前記フィルタ及び前記第2のフィルタはパイプライン方
    式で配列されていることを特徴とする逆離散ウェーブレ
    ット変換(IDWT)装置。
  8. 【請求項8】 前記フィルタはレベルNに関連して使用
    され、且つ前記第2のフィルタは他のN−1対の連続す
    るレベルN−1及びN−2、...、1及び0の全てによ
    り時分割され、該第2のフィルタは実質的に所定の時点
    で一対のレベルにのみ適用されることを特徴とする請求
    項7記載の逆離散ウェーブレット変換装置。
  9. 【請求項9】 更に、複数対のレベルからのデータを前
    記第2のフィルタへ多重化して時分割を実行するタイム
    マルチプレクサを有することを特徴とする請求項8記載
    の逆離散ウェーブレット変換装置。
  10. 【請求項10】 更に、前記第2のフィルタと関連する
    一対のサブバンドレベルと関連するデータを、前記第2
    のフィルタが別の一対のサブバンドレベルに適用されて
    いる間に格納する記憶手段を有することを特徴とする請
    求項8記載の逆離散ウェーブレット変換装置。
  11. 【請求項11】 前記フィルタ及び前記第2のフィルタ
    は、N次元分離可能IDWT変換器であることを特徴と
    する請求項7から10のいずれかに記載の逆離散ウェー
    ブレット変換装置。
  12. 【請求項12】 Nレベルの離散ウェーブレット変換に
    関連してIDWTを実行する装置であって、 第1のサブバンドレベルの関連するサブバンドからのデ
    ータに適用されることによって、第2のサブバンドレベ
    ルの対応するサブバンドのM×M個の処理済データポイ
    ントを形成する第1のセットのM×Mフィルタと、 N−1個の連続するサブバンドレベルに関してパイプラ
    イン方式で、先行のサブバンドレベルからのM×M個の
    処理済データポイントに、後続のサブバンドレベルの関
    連するサブバンドからの対応するデータと関連させてそ
    れぞれ適用されることにより、パイプライン方式でM×
    M個の出力データポイントのセットを形成するN−1セ
    ットの対応するM×Mフィルタと、を有することを特徴
    とする逆離散ウェーブレット変換装置。
  13. 【請求項13】 逆離散ウェーブレット変換(IDWT)
    を実行する装置用のプログラムを格納した、コンピュー
    タ可読の記憶媒体であって、 該プログラムは、Nレベルの離散ウェーブレット変換に
    おける第1のサブバンドレベル及び第2のサブバンドレ
    ベルに対して、 関連するフィルタ幅を有するフィルタを使用して、第1
    のサブバンドレベルの関連するサブバンドからのデータ
    を逆変換することによって、第2のサブバンドレベルの
    対応するサブバンドで処理済データを形成する第1の逆
    変換ステップのためのコードと、 同じ対応する関連フィルタ幅を有する第2のフィルタを
    使用して、前記処理済データを、第2のサブバンドレベ
    ルの関連するサブバンドからの対応するデータと関連さ
    せて逆変換する第2の逆変換ステップのためのコード
    と、を有し、 第1の逆変換ステップのためのコード及び第2の逆変換
    ステップのためのコードはパイプライン方式で実行され
    ることを特徴とするコンピュータ可読の記憶媒体。
  14. 【請求項14】 IDWTを実行する装置用のプログラ
    ムを格納したコンピュータ可読の記憶媒体であって、該
    プログラムは、 (i) 第1のサブバンドレベルの関連するサブバンドから
    のデータに第1のセットのM×Mフィルタを適用するこ
    とによって、第2のサブバンドレベルの対応するサブバ
    ンドのM×M個の処理済データポイントを形成する適用
    ステップのための第1のコードと、 (ii) N−1個の連続するサブバンドレベルに関してパ
    イプライン方式で、N−1セットの対応するM×Mフィ
    ルタを、それぞれ先行のサブバンドレベルからのM×M
    個の処理済データポイントに、後続のサブバンドレベル
    の関連するサブバンドからの対応するデータと関連させ
    て適用することによって、パイプライン方式でM×M個
    の出力データポイントのセットを形成する適用ステップ
    のための第2のコードと、を有することを特徴とするコ
    ンピュータ可読の記憶媒体。
  15. 【請求項15】 Nレベルの離散ウェーブレット変換に
    関連してIDWTを実行する方法であって、 それぞれが第1のデータ次元を有する、第1のサブバン
    ドレベルの関連するサブバンドからの第1のデータポイ
    ントのセットと、第2のサブバンドレベルからの第2の
    データポイントのセットとに対して、 (i) 前記第1のデータ次元を有する第1の計算ブロック
    を使用して、前記第1のデータポイントのセットを逆変
    換することによって、第2のサブバンドレベルの対応す
    るサブバンドで前記第1のデータ次元を有する処理済デ
    ータポイントのセットを形成するステップと、 (ii) 前記第1のデータ次元を有する第2の計算ブロッ
    クを使用して、前記処理済データポイントのセットを、
    第2のサブバンドレベルの関連するサブバンドからの対
    応するデータポイントのセットと関連させて逆変換する
    ステップと、を有し、 ステップ(i)及び(ii)をパイプライン方式で実行するこ
    とによって前記第1のデータ次元を有する出力データポ
    イントのセットを形成することを特徴とする逆離散ウェ
    ーブレット変換方法。
  16. 【請求項16】 NレベルのDWTと関連してIDWT
    を実行する装置であって、現在のサブバンドレベル及び
    後続のサブバンドレベルに関して、 それぞれが複数の出力データチャネルを有し、且つ前記
    現在のサブバンドレベルの対応するサブバンドからのデ
    ータを受信する第1の複数の並列コンボルバと、 それぞれが前記出力データチャネルの対応するチャネル
    からのデータを受信し、且つ後続のサブバンドレベルの
    低−低周波サブバンドに対しデータを生成する第2の複
    数の直列コンボルバと、を有することを特徴とする逆離
    散ウェーブレット変換装置。
  17. 【請求項17】 NレベルのDWTと関連してIDWT
    を実行する方法であって、現在のサブバンドレベル及び
    後続のサブバンドレベルに関して、 前記現在のサブバンドレベルの対応するサブバンドから
    のデータを、それぞれが複数の出力データチャネルを有
    する第1の複数の並列コンボルバに提供するステップ
    と、 前記出力データチャネルの対応するチャネルからのデー
    タを、それぞれが後続のサブバンドレベルの低−低周波
    サブバンドに対しデータを生成する第2の複数の直列コ
    ンボルバに提供するステップと、を有することを特徴と
    する逆離散ウェーブレット変換方法。
JP2000376262A 1999-12-10 2000-12-11 逆離散ウェーブレット変換方法およびその装置 Withdrawn JP2001216290A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AU4572 1999-12-10
AUPQ4572A AUPQ457299A0 (en) 1999-12-10 1999-12-10 Inverse dwt method and apparatus

Publications (2)

Publication Number Publication Date
JP2001216290A true JP2001216290A (ja) 2001-08-10
JP2001216290A5 JP2001216290A5 (ja) 2008-01-31

Family

ID=3818713

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000376262A Withdrawn JP2001216290A (ja) 1999-12-10 2000-12-11 逆離散ウェーブレット変換方法およびその装置

Country Status (3)

Country Link
US (1) US7031404B2 (ja)
JP (1) JP2001216290A (ja)
AU (1) AUPQ457299A0 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003283839A (ja) * 2002-03-19 2003-10-03 Sanyo Electric Co Ltd 画像変換方法および装置
US7743085B2 (en) * 2004-11-08 2010-06-22 Tabula, Inc. Configurable IC with large carry chains
US7577203B2 (en) * 2005-03-24 2009-08-18 Dell Products L.P. Minimizing non-deterministic noise by using wavelet transform
US7929753B2 (en) * 2006-11-29 2011-04-19 Kwe International Inc. Image processing including, but not limited to, logarithimic coding in color coordinate systems including systems with a coordinate defined by a square root of a quadratic polynomial in tristimulus values and, possibly, by a sign of a function of one or more of tristimulus values
US8019150B2 (en) * 2007-10-11 2011-09-13 Kwe International, Inc. Color quantization based on desired upper bound for relative quantization step
US8270710B2 (en) * 2007-10-11 2012-09-18 Unified Color Technologies, Llc Representation and quantization of digital images and evaluation of color differences

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5321776A (en) * 1992-02-26 1994-06-14 General Electric Company Data compression system including successive approximation quantizer
CA2184541A1 (en) * 1996-08-30 1998-03-01 Tet Hin Yeap Method and apparatus for wavelet modulation of signals for transmission and/or storage
WO1999016234A2 (en) * 1997-09-26 1999-04-01 Trident Systems Inc. System, method and medium for increasing compression of an image while minimizing image degradation
US6154493A (en) * 1998-05-21 2000-11-28 Intel Corporation Compression of color images based on a 2-dimensional discrete wavelet transform yielding a perceptually lossless image
US6124811A (en) * 1998-07-02 2000-09-26 Intel Corporation Real time algorithms and architectures for coding images compressed by DWT-based techniques
KR100280497B1 (ko) * 1998-09-04 2001-02-01 김영환 격자구조의 이산 웨이브렛 변환 장치
US6628716B1 (en) * 1999-06-29 2003-09-30 Intel Corporation Hardware efficient wavelet-based video compression scheme

Also Published As

Publication number Publication date
AUPQ457299A0 (en) 2000-01-13
US7031404B2 (en) 2006-04-18
US20010014118A1 (en) 2001-08-16

Similar Documents

Publication Publication Date Title
US5838377A (en) Video compressed circuit using recursive wavelet filtering
Oraintara et al. Integer fast Fourier transform
US5859788A (en) Modulated lapped transform method
US5984514A (en) Method and apparatus for using minimal and optimal amount of SRAM delay line storage in the calculation of an X Y separable mallat wavelet transform
JP4425561B2 (ja) イメージおよびビデオ符号化のための2−d変換
US5867602A (en) Reversible wavelet transform and embedded codestream manipulation
US7129962B1 (en) Efficient video processing method and system
JP3302229B2 (ja) 符号化方法、符号化/復号方法及び復号方法
JP2005148274A (ja) 複素指数変調フィルタバンクの信号分析方法、信号合成方法、そのプログラム及びその記録媒体
JP2005304055A (ja) 符号化方法及び装置
JPH11505640A (ja) ビット・スライス式テーブル・ルックアップ・デジタルたたみ込み
Alam et al. Efficient distributed arithmetic based DWT architecture for multimedia applications
US20060228031A1 (en) Fast adaptive lifting lossless wavelet transform
JP3747067B2 (ja) 信号の符号化及び復号化方法及び装置
JP2001216290A (ja) 逆離散ウェーブレット変換方法およびその装置
Chang et al. A high speed VLSI architecture of discrete wavelet transform for MPEG-4
Park et al. Low power reconfigurable DCT design based on sharing multiplication
Shahbahrami Algorithms and architectures for 2D discrete wavelet transform
US6182102B1 (en) System and method for implementation of inverse wavelet transforms
JP2002158588A (ja) 並行する逆離散ウェーブレット変換
US8989278B2 (en) Method and device for coding a multi dimensional digital signal comprising original samples to form coded stream
Yang et al. A block-based architecture for lifting scheme discrete wavelet transform
JP2003509748A (ja) データ圧縮のための3次スプライン補間の高速で効率のよい計算方法
Bhanu et al. A detailed survey on VLSI architectures for lifting based DWT for efficient hardware implementation
AU752288B2 (en) Inverse DWT method and apparatus

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071206

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071206

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071206

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20071213