JP3984886B2 - データ変換装置、データ変換方法、コンピュータプログラム、記憶媒体 - Google Patents

データ変換装置、データ変換方法、コンピュータプログラム、記憶媒体 Download PDF

Info

Publication number
JP3984886B2
JP3984886B2 JP2002230327A JP2002230327A JP3984886B2 JP 3984886 B2 JP3984886 B2 JP 3984886B2 JP 2002230327 A JP2002230327 A JP 2002230327A JP 2002230327 A JP2002230327 A JP 2002230327A JP 3984886 B2 JP3984886 B2 JP 3984886B2
Authority
JP
Japan
Prior art keywords
wavelet transform
data
signal
storage
line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002230327A
Other languages
English (en)
Other versions
JP2003196261A (ja
Inventor
浩 梶原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Priority to JP2002230327A priority Critical patent/JP3984886B2/ja
Priority to US10/255,699 priority patent/US7031536B2/en
Publication of JP2003196261A publication Critical patent/JP2003196261A/ja
Application granted granted Critical
Publication of JP3984886B2 publication Critical patent/JP3984886B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は信号処理装置、及び信号処理方法、並びにプログラム、記憶媒体に関するものである。
【0002】
【従来の技術】
近年、ディジタル信号の解析、圧縮、認識といった画像処理の様々な分野で離散ウェーブレット変換が注目を集めている。特に画像圧縮の分野においては、離散ウェーブレット変換による信号のエントロピー低減効果が高いことや、サブバンド分解の過程が画像の段階的伝送に適していることなどから、離散ウェーブレット変換を用いた画像圧縮方式の検討が盛んである。ITU-T T.800|ISO/IEC 15444として国際標準勧告予定の新しい静止画像符号化方式JPEG2000においても離散ウェーブレット変換の採用が決定している。
【0003】
従来、画像の離散ウェーブレット変換はメモリコストの問題や計算の複雑さなどから実装が困難であるとされてきたが、I.Daubechies, W.Sweldenらにより、全ての離散ウェーブレット変換を簡単なフィルタリフティングステップに分解できることが示されて以降、リフティング方式を用いた簡易実装の検討が進められている。
【0004】
離散ウェーブレット変換の一例として、1次元のディジタル信号系列x(n)に対する5×3フィルタによる離散ウェーブレット変換の式を以下に示す。
【0005】
r(n)=-x(2n-2)/8+x(2n-1)/4+3x(2n)/4+x(2n+1)/4-x(2n+2)/8 (1)
d(n)=-x(2n)/2+x(2n+1)-x(2n+2)/2 (2)
この5x3フィルタをリフティング方式により構成した場合、式(1),(2)は次式(3),(4)のように変形される。
【0006】
r(n)=x(2n)+(d(n-1)+d(n))/4 (3)
d(n)=x(2n+1)-(x(2n)+x(2n+2))/2 (4)
式(3),(4)では式(1),(2)と比較して演算回数の削減、必要なデータアクセス数の削減がなされていることが分かる。
【0007】
画像信号など、2次元の信号系列に対して離散ウェーブレット変換を行う場合には、上述の1次元信号に対する変換処理を水平・垂直方向にそれぞれ適用する。画像信号は多くの場合、ラスタースキャン順に送受される。このような場合、垂直方向の変換を行うためには画像信号または演算の中間値を必要ライン数分格納する必要がある。
【0008】
図3に従来方式により上記の5x3フィルタを用いた2次元の離散ウェーブレット変換を実現する装置(信号処理装置)のブロック図を示す。同図において300は画像信号を入力する信号入力部、301は入力した画像信号をライン毎にバッファ302に格納する制御を行う信号格納処理部、302は画像信号をライン毎に格納するバッファ、303ではバッファ302に格納された複数のラインの画像信号に対して垂直方向に離散ウェーブレット変換を行う垂直方向離散ウェーブレット変換部、304はバッファ302に格納された各ラインの先頭のアドレスを格納する先頭番地格納部、305は垂直方向離散ウェーブレット変換部303により得られるLサブバンドの変換係数に対して水平方向に離散ウェーブレット変換を行う水平方向離散ウェーブレット変換部、306は垂直方向離散ウェーブレット変換部303により得られるHサブバンドの変換係数に対して水平方向に離散ウェーブレット変換を行う水平方向離散ウェーブレット変換部である。
【0009】
同図の信号処理装置は、水平方向サンプル数X、垂直方向サンプル数Y、各サンプル(画素)が8ビットで表現された2次元信号を変換するものとする。図3の離散ウェーブレット変換装置は2次元信号に対して1段階の離散ウェーブレット変換を施し、LL,LH,HL,HHの4つのサブバンドの係数を生成するものである。LLサブバンドをさらに繰り返してサブバンド分解することが一般的であるが、このような場合、図3に示す構成を備える装置を複数用意し、直列につなげて動作させるか、あるいは入力データを切り替えることにより、ひとつの装置を使い分けるといった方法が取られる。
【0010】
装置を直列に接続して動作させる場合も考慮して、各装置に入力される信号の水平方向サンプル数をSxで表す。例えば、装置を2つ直列に動作させる場合を例に取ると、1段階目の装置に入力される信号の水平方向サンプル数SxはXであり、2段階目の装置に入力される信号の水平方向サンプル数Sxはfloor{(X+1)/2}となる。ここでfloor{R}は実数Rを超えない最大の整数を得る関数である。図3のバッファ302には5x3フィルタを実施するために必要なライン数の信号および演算の中間値が格納される。リフティングなしで実装する場合には式(1),(2)から明らかなようにx(2n-2)からx(2n+2)までの5つの信号(垂直方向の5つの信号)を得るために垂直方向の5ラインが必要である。一方、リフティング方式を用いるならば式(3),(4)の演算は図2に示すように表現でき、図中のx(2n),x(2n+1),x(2n+2)およびd(n-1)があればr(n)とd(n)が求められる。
【0011】
従って3ライン分の信号(x(2n)〜x(2n+2)に相当)と1ライン分の中間値(d(n-1)に相当)の4ライン分のデータの格納が必要であることが分かる。ここではリフティングを用いる場合を例に説明する。したがって、バッファ302には4ライン分のデータを格納できる容量、すなわち4×Sxの容量のメモリを用意する。図11にバッファ302の構成例を示す。
【0012】
先頭番地格納部304はバッファ302に格納する4ライン分のデータについて各ラインの先頭番地AD[L](Lは0から3まで)を格納する。ラインの先頭番地は変換処理の過程で随時入れ替えられるが、その初期状態ではAD[0],AD[1],AD[2],AD[3]はそれぞれ0,Sx,2×Sx,3×Sxとする(図11参照)。以下、図3を用いて従来方式による2次元離散ウェーブレット変換装置の動作を説明する。
【0013】
信号入力部300から変換対象となる2次元信号がラスタースキャン順に入力される。離散ウェーブレット変換を行う場合、水平方向、垂直方向ともに信号の両端で信号を折り返して拡張することが一般的であるが、ここでは説明を簡単にするためにこれら信号の折り返し処理は装置外部で行われているものとし、考慮しないものとする。この場合、生成するサブバンドの係数の周囲(水平方向の両端、および垂直方向の両端)に無駄な係数が出力されるが、有効な係数のみを選別するものとする。
【0014】
信号格納処理部301は信号入力部300からラスタースキャン順に入力される信号をライン単位でバッファ302に格納する。信号格納処理部301は受け取ったラインデータを格納する際のラインの先頭番地を取得するためのインデックス値Lを内部に保持しておく。図4に信号格納処理部301の処理の流れを示す。同図に於いてステップS401はインデックスLを1に初期化するステップ、ステップS402はバッファ302におけるラインデータの先頭番地AD[L]を取得するステップ、ステップS403はラインデータをバッファ302に格納するステップ、ステップS404はインデックスLを更新するステップ、ステップS405,S406、S407,S408はインデックスLが2であれば垂直方向離散ウェーブレット変換部303に対して垂直方向離散ウェーブレット変換を行うように指示し、それ以外であればインデックスLを更新するステップ、ステップS409は最終ラインを判別するステップである。
【0015】
まず、変換処理の開始時にインデックスLを1に初期化する(ステップS401)。次に先頭番地格納部304からラインデータを格納する先頭番地AD[L]を取得する(ステップS402)。続いて、信号入力部300から入力される1ライン分の信号をバッファ302の番地AD[L]から順に格納する(ステップS403)。1ライン分の信号を格納するとインデックスLに1を加え、インデックスの更新を行う(ステップS404)。インデックスLが4になった場合には2に設定しなおす(ステップS405およびステップS406)。次に、インデックスLが2であるか否かを判別し(ステップS407)、L=2の場合、垂直方向離散ウェーブレット変換部303に対して垂直方向離散ウェーブレット変換を行うように指示する(ステップS408)。そして、格納した1ライン分の信号が変換対象となる2次元信号の最終ラインであるか否かを判定し(ステップS409)、最終ラインでないならばステップS402から処理を継続し、最終ラインならば処理を終了する。
【0016】
垂直方向離散ウェーブレット変換部303はバッファ302に必要なデータが揃うと垂直方向の離散ウェーブレット変換を行い、1ライン分の低周波成分の係数と高周波成分の係数を生成し、低周波成分の係数を信号線307に、高周波成分の係数を信号線308に出力する。バッファ302に必要なデータが揃うタイミングは信号格納処理部301のインデックス値Lが2に設定された時である。
【0017】
図5に垂直方向離散ウェーブレット変換部303において1ライン分の低周波成分と高周波成分を生成する変換処理の流れを図示する。同図においてステップS501は各ラインの先頭番地AD[0]からAD[3]を取得するステップ、ステップS502は変数iに0を代入するステップ、ステップS503は1つの組のデータに対して垂直方向の離散ウェーブレット変換を施し、1つの低周波成分の係数と1つの高周波成分の係数を生成するステップ、ステップS504は変数iに1を加えるステップ、ステップS505は変数iと水平方向のサンプル数Sxを比較するステップ、ステップS506は各ラインの先頭番地を更新するステップである。以下、同図を用いて垂直方向離散ウェーブレット変換部303の処理の流れについて説明する。
【0018】
まずステップS501では、先頭番地格納部304からAD[0],AD[1],AD[2],AD[3]を読み出す。次にステップS502では、変数iに0を代入する。次にステップS503では、バッファ302に格納される、垂直方向に連続するデータの組のi列目を読み出す。垂直方向に連続するデータの組のi列目とはAD[0]+i, AD[1]+i, AD[2]+i, AD[3]+iの4つの番地から読み出されるデータ列であり、各番地から読み出すデータは式(3),(4)に示した1次元の離散ウェーブレット変換式に於いてd[n-1],x(2n),x(2n+1),x(2n+2)にそれぞれ相当する。更にステップS503では、式(3),(4)に基づき低周波成分r[n]と高周波成分d[n]を求め、低周波成分の係数r[n]を信号線307に、高周波成分の係数d[n]を信号線308に出力する。このとき、x(2n+1)の格納されていた番地(すなわちAD[2]+i)には求めた高周波成分d[n]を格納しておく。
【0019】
次にステップS504では、iに1を加えて更新し、ステップS505でiをSxと比較し、i<SxならばステップS503に戻る。i=0〜Sx-1までステップS503による垂直方向離散ウェーブレット変換処理を終えると、ステップS506でAD[0]とAD[2]、AD[1]とAD[3]をそれぞれ入れ替えて先頭番地格納部304に格納する。
【0020】
水平方向離散ウェーブレット変換部305、306はそれぞれ信号線307、信号線308から入力される1ライン分のデータ(低周波成分または高周波成分の係数)に対して式(3)、(4)に基づく変換処理を行い、低周波成分と高周波成分の係数を生成して出力する。
【0021】
以上述べた処理を信号入力部300から入力される全ラインに対して行い、2次元離散ウェーブレット変換を行う。
【0022】
【発明が解決しようとする課題】
上述のように、画像データなどの2次元信号をサブバンド分解する場合、垂直方向の変換に際し、縦方向に連続する複数のデータを取りだして処理する。しかしながら、高解像度画像データなど画像の水平方向画素数が極端に大きい場合などでは縦方向に連続するデータは離れてメモリに格納されることとなるため、データの取り出しに時間がかかる場合がある。例えば、中央処理装置と主記憶メモリの間に高速で読み書きできるキャッシュメモリを備えたコンピュータシステムにおいて、ソフトウェアにより画像データの離散ウェーブレット変換を行う場合、水平方向の変換の際にはメモリから連続してデータを取り出すためにキャッシュのヒット率が高く、データの取り出しに要する時間は少なくて済むが、垂直方向の変換に必要とするデータの取り出しにはメモリキャッシュのヒット率が低下し、結果として変換処理に時間がかかるという問題が生じる。
【0023】
本発明は以上の問題に鑑みてなされたものであり、ウェーブレット変換でアクセスするデータの取り出しに要する時間を削減し、高速のウェーブレット変換を行うことを目的とする。
【0024】
【課題を解決するための手段】
本発明の目的を達成するために、例えば本発明のデータ変換装置は以下の構成を備える。
【0025】
すなわち、2次元配列データを周波数帯域に分解するデータ変換装置であって、
変換対象となる2次元配列データライン単位で入力する入力手段と、
前記入力手段から入力される2次元配列データに対して第1の方向にウェーブレット変換を施して低周波帯域と高周波帯域のそれぞれの係数を生成する第1のウェーブレット変換手段と、
前記第1のウェーブレット変換手段により生成された係数に対してさらに第1の方向とは異なる第2の方向にウェーブレット変換を行う第2のウェーブレット変換手段と、
垂直方向のウェーブレット変換に必要な2次元配列データ、または2次元配列データと中間値データ、垂直方向のウェーブレット変換に適用するフィルタの種類に応じて定まるnライン分格納する格納手段とを具備し、
前記第1または第2のウェーブレット変換手段のいずれかが、前記格納手段に格納されたデータを読み出して垂直方向にウェーブレット変換を行い、
前記格納手段は、格納対象ラインの格納開始番地として、当該格納対象ラインの直前に格納したラインの格納開始番地から1個ずらした番地を設定する設定処理と、前記格納対象ラインを構成する各データを、前記格納対象ラインについて設定された格納開始番地からn個おきの番地に格納する格納処理とを、格納対象の各ラインについて行うことで、垂直方向のウェーブレット変換に必要な列毎の1次元配列データを構成する各データを連続した番地に格納させる
ことを特徴とする。
【0026】
本発明の目的を達成するために、例えば、本発明のデータ変換方法は以下の構成を備える。
【0027】
すなわち、2次元配列データを周波数帯域に分解するデータ変換方法であって、
変換対象となる2次元配列データライン単位で入力する入力工程と、
前記入力工程入力される2次元配列データに対して第1の方向にウェーブレット変換を施して低周波帯域と高周波帯域のそれぞれの係数を生成する第1のウェーブレット変換工程と、
前記第1のウェーブレット変換工程生成された係数に対してさらに第1の方向とは異なる第2の方向にウェーブレット変換を行う第2のウェーブレット変換工程と、
垂直方向のウェーブレット変換に必要な2次元配列データ、または2次元配列データと中間値データ、垂直方向のウェーブレット変換に適用するフィルタの種類に応じて定まるnライン分、メモリに格納する格納工程とを具備し、
前記第1または第2のウェーブレット変換工程のいずれかが、前記メモリに格納されたデータを読み出して垂直方向にウェーブレット変換を行い、
前記格納工程、格納対象ラインの格納開始番地として、当該格納対象ラインの直前に格納したラインの格納開始番地から1個ずらした番地を設定する設定処理と、前記格納対象ラインを構成する各データを、前記格納対象ラインについて設定された格納開始番地からn個おきの番地に格納する格納処理とを、格納対象の各ラインについて行うことで、垂直方向のウェーブレット変換に必要な列毎の1次元配列データを構成する各データを連続した番地に格納させる
ことを特徴とする。
【0032】
【発明の実施の形態】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【0033】
[第1の実施形態]
図1は本実施形態における信号処理装置の基本構成を示すブロック図である。、同図に於いて100は信号入力部、101は信号格納処理部、102はバッファ、103は垂直方向離散ウェーブレット変換部、105、106は水平方向離散ウェーブレット変換部、107,108は信号線である。
【0034】
本実施形態の信号処理装置は先に述べた従来方式と同様に、水平方向サンプル数X、垂直方向サンプル数Y、各サンプル(画素)が8ビットで表現された2次元信号に対して離散ウェーブレット変換を施すものとする。また、本装置に入力する信号の水平方向サンプル数をSxとする。そしてバッファ102には5x3フィルタを実施するために必要なライン数の信号および演算の中間値が格納される。先に述べたとおり、リフティングなしで実装する場合には5ライン分の信号が必要であり、リフティング方式を用いるならば3ライン分の信号と1ライン分の中間値が必要である。本実施形態ではリフティングを用いることととする。したがってバッファ102には図11に示すとおり、4ライン分のデータ(4×Sx)を格納するだけの容量を用意する。
【0035】
以下図1を用いて本実施形態の信号処理装置の動作について説明する。
【0036】
まず、信号入力部100から変換対象となる2次元信号がラスタースキャン順に入力される。先に述べた従来方式と同様に信号の端点で行う信号の折り返しによる拡張は装置外部で行われているものとし、ここでは考慮しない。
【0037】
信号格納処理部101は信号入力部100からラスタースキャン順に入力される信号をライン単位にバッファ102に格納する。図12に信号処理部101における処理を示す。同図に於いてステップS1201はインデックスL(図4に示したインデックス値L)を初期化するステップ、S1202はラインデータを格納するステップ、ステップS1203はインデックス値Lを更新するステップ、ステップS1204,S1205、S1206,S1207はインデックスLが2,4のいずれかであれば垂直方向離散ウェーブレット変換部803に対して垂直方向離散ウェーブレット変換を行うように指示し、Lが4であれば0に設定しなおすステップ、S1208は最終ラインを判別するステップである。
【0038】
まず、変換処理の開始時にインデックスLを1に初期化する(ステップS1201)。次に信号入力部100から入力される1ライン分の信号をバッファ102の番地Lから4番地間隔に順に格納する(ステップS1202)。1ライン分の信号を格納するとインデックスLに1を加え、インデックスの更新を行う(ステップS1203)。次に、インデックス値Lが2,4のいずれかであった場合(ステップS1204)、垂直方向離散ウェーブレット変換部103に対して垂直方向離散ウェーブレット変換を行うように指示する(ステップS1205)。インデックスが4になった場合には0を設定しなおす(ステップS1206、S1207)。バッファ102に格納した1ライン分の信号が変換対象となる2次元信号の最終ラインであるか否かを判定し、最終ラインでないならばステップS1202から処理を継続し、最終ラインならば処理を終了する(ステップS1208)。
【0039】
図6に垂直方向離散ウェーブレット変換部103において1ライン分の低周波成分と高周波成分を生成する変換処理の流れを図示する。同図においてステップS701はインデックス値L(図4に示したインデックス値L)を取得するステップ、ステップS702はインデックス値Lから基準番地Bを求めるステップ、ステップS703は変数iに0を代入するステップ、ステップS704は1つの組のデータに対して垂直方向の離散ウェーブレット変換を施し、1つの低周波成分の係数と1つの高周波成分の係数を生成するステップ、ステップS705は変数iに1を加えるステップ、ステップS706は変数iと水平方向のサンプル数Sxを比較するステップである。
【0040】
以下、同図を用いて垂直方向離散ウェーブレット変換部103の処理の流れについて説明する。まずステップS701では、信号格納処理部101からインデックス値Lを読み出す。次にステップS702では、インデックス値Lの値から基準番地Bを求める。インデックス値Lがの場合には基準番地Bは2、またインデックス値Lがの場合には基準番地Bは0である。次にステップS703では、変数iに0を代入する。次にステップS704では、バッファS302に格納されている、垂直方向に連続するデータの組のi列目を読み出す。垂直方向に連続するデータの組のi列目とはi×4+B, i×4+mod((B+1),4), i×4+mod((B+2),4), i×4+mod((B+3),4)の4つの番地(バッファ302における番地)から読み出されるデータであり、各番地から読み出すデータは式(3),(4)に示した1次元の離散ウェーブレット変換式に於いてd(n-1),x(2n),x(2n+1),x(2n+2)にそれぞれ相当する。ここでmod(a,b)はaをbで割った余りを返す関数である。
【0041】
そしてステップS704では更に、式(3),(4)に基づき低周波成分r[n]と高周波成分d[n]を求め、低周波成分の係数r[n]を信号線307に、高周波成分の係数d[n]を信号線308に出力する。このとき、x(2n+1)の格納されていた番地(すなわちi×4+mod((B+),4))には求めた高周波成分d[n]を格納しておく。次にステップS705でiに1を加えて更新し、ステップS706でiをSxと比較し、i<SxならばステップS704に戻る。また、i=0〜Sx-1までステップS704,S705の処理(iを更新しながら、i列目のデータ組に対して垂直方向の離散ウェーブレット変換を施す処理)を繰り返す。
【0042】
水平方向離散ウェーブレット変換部105、106はそれぞれ信号線107、信号線108から入力される1ライン分のデータ(低周波成分または高周波成分の係数)に対して式(3)、(4)に基づく変換処理を行い、低周波成分と高周波成分の係数を生成して出力する。
【0043】
以上述べた処理を信号入力部100から入力される全ラインに対して行うことで、2次元信号に対して2次元離散ウェーブレット変換を行うことができる。
【0044】
[第2の実施形態]
図7は本実施形態における信号処理装置の基本構成を示すブロック図である。同図に於いて800は信号入力部、801は信号格納処理部、802はバッファ、803は垂直方向離散ウェーブレット変換部、805、806は水平方向離散ウェーブレット変換部、807,808は信号線である。このブロック図は第1の実施形態における信号処理装置の基本構成(図1に図示)と同じであるが、本実施形態における信号処理装置の各部において行われる処理が、第1の実施形態の信号処理装置の各部で行われる処理と異なる。以下、本実施形態における信号処理装置の各部における処理について説明する。
【0045】
本実施形態の信号処理装置は第1の実施形態の信号処理装置と同様に、水平方向サンプル数X、垂直方向サンプル数Y、各サンプル(画素)が8ビットで表現された2次元信号を変換するものとする。第1の実施形態ではウェーブレット変換を実施するために式(3)、式(4)による5x3フィルタを使用したが、本実施形態では以下に示す(5)から(10)に示すリフティングステップにより実施される9x7のフィルタを使用する。
【0046】
d”(n)=x(2n+1)+α(x(2n)+x(2n+2)) (5)
r”(n)=x(2n)+β(d''(n-1)+d''(n)) (6)
d'(n)=d''(n)+γ(r''(n)+r''(n+1)) (7)
r'(n)=r''(n)+δ(d'(n-1)+d'(n)) (8)
d(n) =Kd'(n) (9)
r(n) =r'(n)/K (10)
ここでα=-1.586134, β=-0.052980, γ=0.882911, δ=0.443507, K=1.230174であり、d''(n), d'(n), r''(n),r'(n)はd(n),r(n)を導出するための中間値である。
【0047】
バッファ802には9x7フィルタを実施するために必要なライン数の信号および演算の中間値が格納される。前述のリフティングによればx(2n+2),x(2n+3),x(2n+4)とd''(n),r''(n),d'(n)があればr(n),d(n)を算出することができるので、本実施形態では3ライン分の信号(x(2n+2)〜x(2n+4)に相当)と3ライン分の中間値(d''(n),r''(n),d'(n)に相当)をバッファ802に格納する。したがってバッファ802には6ライン分のデータ(6×Sx)を格納するだけの容量を用意する。
【0048】
以下図7を用いて本実施形態の信号処理装置の動作について説明する。
【0049】
まず、信号入力部800から変換対象となる2次元信号がラスタースキャン順に入力される。信号格納処理部801は信号入力部800からラスタースキャン順に入力される信号をライン単位にバッファ802に格納する。図8に信号格納処理部801の処理の流れを示す。同図に於いてステップS901はインデックスL(図4に示したインデックス値L)を初期化するステップ、S902はラインデータを格納するステップ、ステップS903はインデックス値Lを更新ステップ、ステップS904,S905、S906,S907はインデックスLが2,4、6のいずれかであれば垂直方向離散ウェーブレット変換部803に対して垂直方向離散ウェーブレット変換を行うように指示し、それ以外であればインデックスLを更新するステップ、S908は最終ラインを判別するステップである。
【0050】
まず、変換処理の開始時にインデックスLを1に初期化する(ステップS901)。次に信号入力部800から入力される1ライン分の信号をバッファ802の番地Lから6番地間隔に順に格納する(ステップS902)。1ライン分の信号を格納するとインデックスLに1を加え、インデックスの更新を行う(ステップS903)。次に、インデックス値Lが2,4,6のいずれかであった場合(ステップS904)、垂直方向離散ウェーブレット変換部803に対して垂直方向離散ウェーブレット変換を行うように指示する(ステップS905)。インデックスが6になった場合には0を設定しなおす(ステップS906、S907)。バッファ802に格納した1ライン分の信号が変換対象となる2次元信号の最終ラインであるか否かを判定し、最終ラインでないならばステップS902から処理を継続し、最終ラインならば処理を終了する(ステップS908)。
【0051】
垂直方向離散ウェーブレット変換部803はバッファ802に必要なデータが揃うと垂直方向の離散ウェーブレット変換を行い、1ライン分の低周波成分の係数と高周波成分の係数を生成し、低周波成分の係数を信号線807に、高周波成分の係数を信号線808に出力する。バッファ802に必要なデータが揃うタイミングとは、信号格納処理部801の保持するインデックス値Lが偶数値に更新された時、すなわちLが2,4,6のいずれかに更新された時である。
【0052】
垂直方向離散ウェーブレット変換部803における変換処理のフローチャートを図9に示す。同図においてステップS1001はインデックス値Lを取得するステップ、ステップS1003は変数iに0を代入するステップ、ステップS1004は1つの組のデータに対して垂直方向の離散ウェーブレット変換を施し、1つの低周波成分の係数と1つの高周波成分の係数を生成するステップ、ステップS1005は変数iに1を加えるステップ、ステップS1006は変数iと水平方向のサンプル数Sxを比較するステップである。
【0053】
以下、同図を用いて垂直方向離散ウェーブレット変換部803の処理の流れについて説明する。まずステップS1001では、信号格納処理部802からインデックス値Lを読み出す。次にステップS1003では、変数iに0を代入する。次にステップS1004では、バッファ802に格納される、垂直方向に連続するデータの組のi列目を読み出す。垂直方向に連続するデータの組のi列目とはi×6+mod(L,6), i×6+mod((L+1),6), i×6+mod((L+2),6), i×6+mod((L+3),6), i×6+mod((L+4),6), i×6+mod((L+5),6)の6つの番地から読み出されるデータであり、各番地から読み出すデータは式(5)〜(10)に示したリフティングステップに於いてd'(n),r''(n),d''(n),x(2n+2),x(2n+3),x(2n+4)にそれぞれ相当する。
【0054】
更にステップS1004では、式(5)〜(10)に基づき低周波成分r[n]と高周波成分d[n]を求め、低周波成分の係数r[n]を信号線807に、高周波成分の係数d[n]を信号線808に出力する。このとき、x(2n+3)の格納されていた番地(すなわちi×6+mod((L+4),6))には求めた中間値d''(n+1)を格納し、x(2n+2)の格納されていた番地(すなわちi×6+mod((L+3),6))には求めた中間値r''(n+1)を格納し、さらにd''(n)の格納されていた番地(すなわちi×6+mod((L+2),6))には求めた中間値d'(n+1)を格納しておく。次にステップS1005ではiに1を加えて更新し、ステップS1006ではiをSxと比較し、i<SxならばステップS1004に戻る。i=0〜Sx-1までステップS1004,S1005による処理(iを更新しながら、i列目のデータ組に対して垂直方向の離散ウェーブレット変換を施す処理)を繰り返す。
【0055】
水平方向離散ウェーブレット変換部805、806はそれぞれ信号線807、信号線808から入力される1ライン分のデータ(低周波成分または高周波成分の係数)に対して式(5)〜(10)に基づく変換処理を行い、低周波成分と高周波成分の係数を生成して出力する。
【0056】
以上述べた処理を信号入力部800から入力される全ラインに対して行うことで、2次元信号に対して2次元離散ウェーブレット変換を行うことができる。
【0057】
以上の処理により、局所的にメモリアクセスを行う効率の良い2次元離散ウェーブレット変換を実現できる。
【0058】
[第3の実施形態]
図10は本実施形態における信号処理装置の基本構成を示す図である。同図に於いて800は信号入力部、801は信号格納処理部、1001は垂直方向離散ウェーブレット変換部、1002は水平方向離散ウェーブレット変換部、1003,1004は信号線である。第2の実施形態と動作が同じ部分については同一の番号を用いた。上述の第1、第2の実施形態では2つの水平方向離散ウェーブレット変換部を備え、垂直方向離散ウェーブレット変換部から出力される低周波成分、高周波成分の各係数をそれぞれ水平方向に離散ウェーブレット変換する構成としたが、本実施形態では水平方向離散ウェーブレット変換部を1つだけ使用する構成とした。
【0059】
以下、図10を用いて本実施形態の各部の動作について説明する。
【0060】
本実施形態のディジタル信号処理装置は先に述べた第1、第2の実施形態と同様に、水平方向サンプル数X、垂直方向サンプル数Y、各サンプル(画素)が8ビットで表現された2次元信号を変換するものとする。本信号処理装置の入力となる信号の水平方向サンプル数をSxとする。バッファ802は第2の実施形態で述べたように6ライン分のデータ(6×Sx)を格納するだけの容量を用意する。
【0061】
まず、信号入力部800から変換対象となる2次元信号がラスタースキャン順に入力される。信号格納処理部801は信号入力部800からラスタースキャン順に入力される信号をライン単位にバッファ802に格納する。信号処理部801の信号格納手順は第2の実施形態で述べた通りである。
【0062】
垂直方向離散ウェーブレット変換部1001はバッファ802に必要なデータが揃うと垂直方向の離散ウェーブレット変換を行い、1ライン分の低周波成分の係数と高周波成分の係数を生成し、バッファ802に格納する。バッファ802に必要なデータが揃うタイミングとは、信号格納処理部801の保持するインデックス値Lが偶数値に更新された時、すなわちLが2,4,6のいずれかに更新された時である。
【0063】
垂直方向離散ウェーブレット変換部1001の基本的な処理の流れは第2の実施形態における垂直方向離散ウェーブレット変換部803の処理の流れを示した図9に同じである。但し、ステップS100のみ異なる。ステップS100では、まず、バッファ802に格納される、垂直方向に連続するデータの組のi列目を読み出す。垂直方向に連続するデータの組のi列目とはi×6+mod(L,6),i×6+mod((L+1),6),i×6+mod((L+2),6),i×6+mod((L+3),6),i×6+mod((L+4),6),i×6+mod((L+5),6)の6つの番地から読み出されるデータであり、各番地から読み出すデータは式(5)〜(10)に示したリフティングステップに於いてd'(n),r”(n),d”(n),x(2n+2),x(2n+3),x(2n+4)にそれぞれ相当する。次に、式(5)〜(10)に基づき低周波成分r(n)と高周波成分d(n)を求める。このとき、x(2n+3)の格納されていた番地(すなわちi×6+mod((L+4),6))には求めた中間値d”(n+1)を格納し、x(2n+2)の格納されていた番地(すなわちi×6+mod((L+3),6))には求めた中間値r”(n+1)を格納し、さらにd”(n)の格納されていた番地(すなわちi×6+mod((L+2),6))には求めた中間値d'(n+1)を格納しておく。また、r”(n)の格納されていた番地(すなわちi×6+mod((L+1),6))にはd(n)を、d'(n)の格納されていた番地(すなわちi×6+mod(L,6))にはr(n)を格納する。この他の各ステップの処理は図9の説明で述べた通りである。
【0064】
水平方向離散ウェーブレット変換部1002は、垂直方向離散ウェーブレット変換部1001で求めてバッファ802に格納したr(n)の1ライン分とd(n)の1ライン分をそれぞれ1次元の信号と見なして、式(5)〜(10)に基づく変換処理を行い、低周波成分と高周波成分の係数を生成して出力する。
【0065】
以上述べた処理を信号入力部800から入力される全ラインに対して行い、2次元離散ウェーブレット変換を行う。
【0066】
以上の処理により、必要メモリ量を少なくし、且つ局所的にメモリアクセスを行う効率の良い2次元離散ウェーブレット変換を実現できる。
【0067】
[第4の実施形態]
図13は本実施形態における信号処理装置の基本構成を示す図である。同図に於いて1300は信号入力部、1301は信号格納処理部、1302はバッファ、1303はフィルタ選択信号入力部、1304は垂直方向離散ウェーブレット変換部、1305,1306は水平方向離散ウェーブレット変換部、1307は垂直方向離散ウェーブレット変換部、1308,1309は水平方向離散ウェーブレット変換部である。
【0068】
本実施形態のディジタル信号処理装置は先に述べた第1から第3の実施形態と同様に、水平方向サンプル数X、垂直方向サンプル数Y、各サンプル(画素)が8ビットで表現された2次元信号を変換するものとする。本信号処理装置の入力となる信号の水平方向サンプル数をSxとする。バッファ1302は第2の実施形態で述べたように6ライン分のデータ(6×Sx)を格納するだけの容量を用意する。
【0069】
以下図13を用いて本実施形態の信号処理装置の動作について説明する。
【0070】
信号入力部1300からの変換対象の2次元信号の入力に先立ち、フィルタ選択信号入力部1303から離散ウェーブレット変換の方式を指定するフィルタ選択信号Fが入力される。本実施形態の信号処理装置は、フィルタ選択信号Fが”0”である場合には垂直方向離散ウェーブレット変換部1304、水平方向離散ウェーブレット変換部1305、および水平方向離散ウェーブレット変換部1306により可逆の5x3フィルタを用いた2次元離散ウェーブレット変換を実施し、フィルタ選択信号Fが”1”である場合には垂直方向離散ウェーブレット変換部1307、水平方向離散ウェーブレット変換部1308、および水平方向離散ウェーブレット変換部1309により非可逆の9x7フィルタを用いた2次元離散ウェーブレット変換を実施する。5x3フィルタとして第1の実施形態では式(3)、式(4)によるフィルタを使用したが、本実施形態では以下の式(11)、(12)のフィルタを使用することにより完全に元の信号を再現可能な可逆の離散ウェーブレット変換を行う。また、9x7フィルタは第2の実施形態で説明した9x7フィルタと同一のものを使用する。
【0071】
r(n)=x(2n)
+floor{(d(n−1)+d(n)+2)/4} (11)
d(n)=x(2n+1)
−floor{(x(2n)+x(2n+2))/2} (12)
ここで、floor{R}は実数Rを超えない最大の整数値を表す。
【0072】
フィルタ選択信号入力部1303からフィルタ選択信号が入力された後、信号入力部1300から変換対象となる2次元信号がラスタースキャン順に入力される。先に述べた従来方式、および第1から第3の実施形態と同様に、水平方向、垂直方向での信号の端点で行う信号の折り返しによる拡張は装置外部で行われているものとし、ここでは考慮しない。
【0073】
信号格納処理部1301は信号入力部1300からラスタースキャン順に入力される信号をライン単位にバッファ1302に格納する。図14に信号格納処理部1301の処理の流れを示す。同図に於いてステップS1401はインデックス値Lを初期化するステップ、S1402はラインデータを格納するステップ、ステップS1403はインデックス値Lを更新するステップ、ステップS1404,S1405はインデックス値Lが2,4、6のいずれかであれば垂直方向離散ウェーブレット変換部1304または垂直方向離散ウェーブレット変換部1307に対して垂直方向離散ウェーブレット変換を行うように指示するステップ、ステップS1406、S1407、S1408、S1409はインデックス値Lが所定の値を超えたら0に置き換えるステップ、S1410は最終ラインを判別するステップである。
【0074】
まず、変換処理の開始時にインデックスLを1に初期化する(ステップS1401)。次に信号入力部1300から入力される1ライン分の信号をバッファ1302の番地Lから4番地間隔、または6番地間隔に順に格納する(ステップS1402)。信号配置の間隔はフィルタ選択信号入力部1303から入力されるフィルタ選択信号Fによって定まり、フィルタ選択信号Fが”0”である場合には4番地間隔、フィルタ選択信号Fが”1”である場合には6番地間隔に信号を格納する。1ライン分の信号を格納するとインデックスLに1を加え、インデックスの更新を行う(ステップS1403)。次に、インデックス値Lが2,4,6のいずれかであった場合(ステップS1404)、垂直方向離散ウェーブレット変換部1304、または垂直方向離散ウェーブレット変換部1307に対して垂直方向離散ウェーブレット変換を行うように指示する(ステップS1405)。フィルタ選択信号Fが”0”である場合、すなわち、可逆の5x3フィルタにより2次元離散ウェーブレット変換を行う場合には垂直方向離散ウェーブレット変換部1304に対して指示を出し、フィルタ選択信号Fが”1”である場合、すなわち、非可逆の9x7フィルタにより2次元離散ウェーブレット変換を行う場合には垂直方向離散ウェーブレット変換部1307に対して指示を出す。フィルタ選択信号が”0”の場合、インデックスLが4になった場合には0を設定しなおす(ステップS1406,S1407,S1409)。また、フィルタ選択信号が”1”の場合、インデックス値Lが6になった場合には0に設定しなおす(ステップS1406,S1408,S1409)。バッファ1302に格納した1ライン分の信号が変換対象となる2次元信号の最終ラインであるか否かを判定し、最終ラインでないならばステップS1402から処理を継続し、最終ラインならば処理を終了する(ステップS1410)。
【0075】
垂直方向離散ウェーブレット変換部1304は、フィルタ選択信号Fが”0”である場合、すなわち可逆5x3フィルタによる2次元離散ウェーブレット変換が選択されている場合、バッファ1302に必要なデータが揃った時点で垂直方向の離散ウェーブレット変換を行って、1ライン分の低周波成分の係数と高周波成分の係数を生成し、それぞれを水平方向離散ウェーブレット変換部1305、水平方向離散ウェーブレット変換部1306に出力する。バッファ1302に必要なデータが揃うタイミングとは、信号格納処理部1301の保持するインデックス値Lが偶数値に更新された時、すなわちLが2,4のいずれかに更新された時である。可逆5x3フィルタが選択されている場合には、インデックス値Lが更新されて4となるとすぐに0に設定しなおされるのでインデックス値Lの取りうる実質的な範囲は0から3までである。垂直方向離散ウェーブレット変換部1304の変換処理の流れは第1の実施形態で説明した垂直方向離散ウェーブレット変換部103における変換処理と同様であるが、フィルタ選択信号Fが”0”の場合にのみ動作する点と、変換処理に適用されるフィルタが式(11)、(12)となっている点が異なる。
【0076】
水平方向離散ウェーブレット変換部1305、1306はそれぞれ垂直方向離散ウェーブレット変換部1304から入力される1ライン分のデータ(低周波成分または高周波成分の係数)に対して式(11)、(12)に基づく変換処理を行い、低周波成分と高周波成分の係数を生成して出力する。
【0077】
一方、垂直方向離散ウェーブレット変換部1307は、フィルタ選択信号Fが”1”である場合、すなわち非可逆9x7フィルタによる2次元離散ウェーブレット変換が選択されている場合に、バッファ1302に必要なデータが揃った時点で垂直方向の離散ウェーブレット変換を行って、1ライン分の低周波成分の係数と高周波成分の係数を生成し、それぞれを水平方向離散ウェーブレット変換部1308、水平方向離散ウェーブレット変換部1309に出力する。バッファ1302に必要なデータが揃うタイミングとは、信号格納処理部1301の保持するインデックス値Lが偶数値に更新された時、すなわちLが2,4,6のいずれかに更新された時である。垂直方向離散ウェーブレット変換部1307の変換処理の流れは第2の実施形態で説明した垂直方向離散ウェーブレット変換部803における変換処理と同様であるが、フィルタ選択信号Fが”1”の場合にのみ動作する点が異なる。
【0078】
水平方向離散ウェーブレット変換部1308、1309はそれぞれ垂直方向離散ウェーブレット変換部1307から入力される1ライン分のデータ(低周波成分または高周波成分の係数)に対して式(5)〜(10)に基づく変換処理を行い、低周波成分と高周波成分の係数を生成して出力する。
【0079】
以上述べた処理を信号入力部1300から入力される全ラインに対して行うことで、2次元信号に対して2次元離散ウェーブレット変換を行うことができる。
【0080】
以上の処理により、局所的にメモリアクセスを行う効率の良い2次元離散ウェーブレット変換を実現できる。また、さらに本実施形態の場合には、複数のフィルタを選択的に使用することができる。
【0081】
また、上述の実施形態では、5x3や9x7のフィルタを用いて離散ウェーブレット変換を示したが、離散ウェーブレット変換については本実施形態で使用したものに限定されるものではなく、2x10や2x6などフィルタの種類を変えても構わない。さらに上述の実施形態に於いては水平、垂直方向に同一のフィルタを適用する例を示したが、それぞれに別のフィルタを適用しても構わない。
【0082】
又、上述の実施形態では離散ウェーブレット変換を垂直方向、水平方向の順に行ったが、これに限定されるものではなく、逆でも良い。
【0083】
また、上述の実施形態では垂直方向のサンプル(列サンプル)に対して固定のメモリ領域を割り当てたが、列サンプルに対するメモリ割り当てをライン毎に変更するような構成としてもよい。
【0084】
[その他の実施形態]
なお、本発明は複数の機器(例えばホストコンピュータ、インターフェース機器、リーダ、プリンタ等)から構成されるシステムの一部として適用しても、1つの機器(例えば複写機、ファクシミリ装置、デジタルカメラ等)からなる装置の1部に適用してもよい。
【0085】
また、本発明は上記実施の形態を実現するための装置及び方法のみに限定されるものではなく、上記システム又は装置内のコンピュータ(CPUあるいはMPU)に、上記実施の形態を実現するためのソフトウエアのプログラムコードを供給し、このプログラムコードに従って上記システムあるいは装置のコンピュータが上記各種デバイスを動作させることにより上記実施の形態を実現する場合も本発明の範疇に含まれる。
【0086】
またこの場合、前記ソフトウエアのプログラムコード自体が上記実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、具体的には上記プログラムコードを格納した記憶媒体は本発明の範疇に含まれる。
【0087】
この様なプログラムコードを格納する記憶媒体としては、例えばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0088】
また、上記コンピュータが、供給されたプログラムコードのみに従って各種デバイスを制御することにより、上記実施の形態の機能が実現される場合だけではなく、上記プログラムコードがコンピュータ上で稼動しているOS(オペレーティングシステム)、あるいは他のアプリケーションソフト等と共同して上記実施の形態が実現される場合にもかかるプログラムコードは本発明の範疇に含まれる。更に、この供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上記実施の形態が実現される場合も本発明の範疇に含まれる。
【0089】
【発明の効果】
以上の説明により、本発明によれば、ウェーブレット変換でアクセスするデータの取り出しに要する時間を削減し、高速のウェーブレット変換を行うことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態における信号処理装置の基本構成を示すブロック図である。
【図2】リフティング方式を説明する図である。
【図3】従来方式により5×3フィルタを用いた2次元の離散ウェーブレット変換を実現する装置(信号処理装置)のブロック図である。
【図4】信号処理部302の処理の流れを示すフローチャートである。
【図5】垂直方向離散ウェーブレット変換部303において1ライン分の低周波数成分と高周波数成分を生成する処理の流れを示すフローチャートである。
【図6】垂直方向離散ウェーブレット変換部103において1ライン分の低周波数成分と高周波数成分とを生成する変換処理の流れを示すフローチャートである。
【図7】本発明の第2の実施形態における信号処理装置の基本構成を示すブロック図である。
【図8】信号格納処理部801の処理の流れを示すフローチャートである。
【図9】垂直方向離散ウェーブレット変換部803における変換処理のフローチャートである。
【図10】本発明の第3の実施形態における信号処理装置の基本構成を示す図である。
【図11】バッファ302の構成例を示す図である。
【図12】信号処理部101の処理の流れを示すフローチャートである。
【図13】本発明の第4の実施形態における信号処理装置の基本構成を示す図である。
【図14】信号格納部1301の処理の流れを示すフローチャートである。

Claims (8)

  1. 2次元配列データを周波数帯域に分解するデータ変換装置であって、
    変換対象となる2次元配列データライン単位で入力する入力手段と、
    前記入力手段から入力される2次元配列データに対して第1の方向にウェーブレット変換を施して低周波帯域と高周波帯域のそれぞれの係数を生成する第1のウェーブレット変換手段と、
    前記第1のウェーブレット変換手段により生成された係数に対してさらに第1の方向とは異なる第2の方向にウェーブレット変換を行う第2のウェーブレット変換手段と、
    垂直方向のウェーブレット変換に必要な2次元配列データ、または2次元配列データと中間値データ、垂直方向のウェーブレット変換に適用するフィルタの種類に応じて定まるnライン分格納する格納手段とを具備し、
    前記第1または第2のウェーブレット変換手段のいずれかが、前記格納手段に格納されたデータを読み出して垂直方向にウェーブレット変換を行い、
    前記格納手段は、格納対象ラインの格納開始番地として、当該格納対象ラインの直前に格納したラインの格納開始番地から1個ずらした番地を設定する設定処理と、前記格納対象ラインを構成する各データを、前記格納対象ラインについて設定された格納開始番地からn個おきの番地に格納する格納処理とを、格納対象の各ラインについて行うことで、垂直方向のウェーブレット変換に必要な列毎の1次元配列データを構成する各データを連続した番地に格納させる
    ことを特徴とするデータ変換装置。
  2. 垂直方向に適用するフィルタ5×3フィルタであり、前記は、4以上であることを特徴とする請求項に記載のデータ変換装置。
  3. 垂直方向に適用するフィルタ9×7フィルタであり、前記は、6以上であることを特徴とする請求項に記載のデータ変換装置。
  4. さらに前記第1のウェーブレット変換手段、および前記第2のウェーブレット変換手段で用いるフィルタを選択するフィルタ選択手段を具備し、
    選択されたフィルタに応じて前記nを変更することを特徴とする請求項1に記載のデータ変換装置。
  5. 前記フィルタ選択手段により選択可能なフィルタは3フィルタと97フィルタであることを特徴とする請求項4に記載のデータ変換装置。
  6. 2次元配列データを周波数帯域に分解するデータ変換方法であって、
    変換対象となる2次元配列データライン単位で入力する入力工程と、
    前記入力工程入力される2次元配列データに対して第1の方向にウェーブレット変換を施して低周波帯域と高周波帯域のそれぞれの係数を生成する第1のウェーブレット変換工程と、
    前記第1のウェーブレット変換工程生成された係数に対してさらに第1の方向とは異なる第2の方向にウェーブレット変換を行う第2のウェーブレット変換工程と、
    垂直方向のウェーブレット変換に必要な2次元配列データ、または2次元配列データと中間値データ、垂直方向のウェーブレット変換に適用するフィルタの種類に応じて定まるnライン分、メモリに格納する格納工程とを具備し、
    前記第1または第2のウェーブレット変換工程のいずれかが、前記メモリに格納されたデータを読み出して垂直方向にウェーブレット変換を行い、
    前記格納工程、格納対象ラインの格納開始番地として、当該格納対象ラインの直前に格納したラインの格納開始番地から1個ずらした番地を設定する設定処理と、前記格納 対象ラインを構成する各データを、前記格納対象ラインについて設定された格納開始番地からn個おきの番地に格納する格納処理とを、格納対象の各ラインについて行うことで、垂直方向のウェーブレット変換に必要な列毎の1次元配列データを構成する各データを連続した番地に格納させる
    ことを特徴とするデータ変換方法。
  7. コンピュータに請求項に記載のデータ変換方法を実行させるためのコンピュータプログラム。
  8. 請求項に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ読み取り可能な記憶媒体。
JP2002230327A 2001-09-28 2002-08-07 データ変換装置、データ変換方法、コンピュータプログラム、記憶媒体 Expired - Fee Related JP3984886B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002230327A JP3984886B2 (ja) 2001-09-28 2002-08-07 データ変換装置、データ変換方法、コンピュータプログラム、記憶媒体
US10/255,699 US7031536B2 (en) 2001-09-28 2002-09-27 Signal processing apparatus and method, program, and storage medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001301218 2001-09-28
JP2001-301218 2001-09-28
JP2002230327A JP3984886B2 (ja) 2001-09-28 2002-08-07 データ変換装置、データ変換方法、コンピュータプログラム、記憶媒体

Publications (2)

Publication Number Publication Date
JP2003196261A JP2003196261A (ja) 2003-07-11
JP3984886B2 true JP3984886B2 (ja) 2007-10-03

Family

ID=26623298

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002230327A Expired - Fee Related JP3984886B2 (ja) 2001-09-28 2002-08-07 データ変換装置、データ変換方法、コンピュータプログラム、記憶媒体

Country Status (2)

Country Link
US (1) US7031536B2 (ja)
JP (1) JP3984886B2 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7680324B2 (en) 2000-11-06 2010-03-16 Evryx Technologies, Inc. Use of image-derived information as search criteria for internet and other search engines
US8224078B2 (en) 2000-11-06 2012-07-17 Nant Holdings Ip, Llc Image capture and identification system and process
US7565008B2 (en) 2000-11-06 2009-07-21 Evryx Technologies, Inc. Data capture and identification system and process
US8218873B2 (en) 2000-11-06 2012-07-10 Nant Holdings Ip, Llc Object information derived from object images
US7899243B2 (en) 2000-11-06 2011-03-01 Evryx Technologies, Inc. Image capture and identification system and process
US9310892B2 (en) 2000-11-06 2016-04-12 Nant Holdings Ip, Llc Object information derived from object images
JP2003283839A (ja) * 2002-03-19 2003-10-03 Sanyo Electric Co Ltd 画像変換方法および装置
US7302105B2 (en) * 2002-07-22 2007-11-27 Canon Kabushiki Kaisha Moving image coding apparatus, moving image decoding apparatus, and methods therefor
US7903734B2 (en) * 2003-04-24 2011-03-08 Canon Kabushiki Kaisha Moving image decoding apparatus, moving image decoding method, image decoding method, and image decoding apparatus
US7574063B2 (en) * 2003-07-23 2009-08-11 Canon Kabushiki Kaisha Image coding method and apparatus
JP4418762B2 (ja) 2004-05-07 2010-02-24 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
US20080089413A1 (en) * 2004-06-28 2008-04-17 Canon Kabushiki Kaisha Moving Image Encoding Apparatus And Moving Image Encoding Method
US7529417B2 (en) * 2004-07-09 2009-05-05 Canon Kabushiki Kaisha Apparatus, method and storage medium for image encoding/decoding using shape-based coefficient interpolation
JP4533035B2 (ja) * 2004-08-02 2010-08-25 キヤノン株式会社 画像符号化装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4533043B2 (ja) * 2004-08-25 2010-08-25 キヤノン株式会社 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4440051B2 (ja) * 2004-09-08 2010-03-24 キヤノン株式会社 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4393319B2 (ja) * 2004-09-08 2010-01-06 キヤノン株式会社 画像符号化装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4693603B2 (ja) * 2004-11-15 2011-06-01 キヤノン株式会社 画像符号化装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
US7650039B2 (en) 2005-03-03 2010-01-19 Canon Kabushiki Kaisha Image encoding apparatus, image decoding apparatus, control method therefor, computer program, and computer-readable storage medium
JP4587175B2 (ja) * 2005-05-19 2010-11-24 キヤノン株式会社 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4732203B2 (ja) * 2006-03-17 2011-07-27 キヤノン株式会社 画像符号化装置及び復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
EP1978749B1 (en) * 2007-04-06 2017-08-30 Canon Kabushiki Kaisha Compression of multidimensional look-up tables for colour space conversion
JP4356032B2 (ja) * 2007-05-17 2009-11-04 ソニー株式会社 情報処理装置および方法
JP4979655B2 (ja) * 2008-08-07 2012-07-18 キヤノン株式会社 画像符号化装置及びその制御方法
JP5158000B2 (ja) * 2009-04-07 2013-03-06 ソニー株式会社 情報処理装置および方法
US8842940B1 (en) * 2009-10-02 2014-09-23 Rockwell Collins, Inc. Multiprocessor discrete wavelet transform
CN110113619B (zh) * 2019-04-17 2021-06-15 浙江大华技术股份有限公司 一种编码方法、装置、电子设备及存储介质

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08130649A (ja) 1994-11-01 1996-05-21 Canon Inc データ処理装置
US6031938A (en) 1995-04-26 2000-02-29 Canon Kabushiki Kaisha Image encoding apparatus with selective Markov and predictive coding
US6101282A (en) 1995-06-22 2000-08-08 Canon Kabushiki Kaisha Apparatus and method for image data encoding
EP0763943A3 (en) * 1995-09-12 1999-07-14 Matsushita Electric Industrial Co., Ltd. Coding method and wavelet transform apparatus
US6873738B2 (en) * 1995-10-02 2005-03-29 Sony Corporation Hierarchical image processor for encoding or decoding, and memory on the same chip
US6028963A (en) 1996-06-17 2000-02-22 Canon Kabushiki Kaisha Image encoding based on judgement on prediction error
JPH10336682A (ja) 1997-04-02 1998-12-18 Canon Inc 符号化装置及び方法及び方法を記憶した記憶媒体
JP4420415B2 (ja) * 1998-07-03 2010-02-24 キヤノン株式会社 符号化方法及び符号化装置
EP0971482A1 (en) * 1998-07-09 2000-01-12 Canon Kabushiki Kaisha Digital signal transformation device and method
JP2000069292A (ja) 1998-08-24 2000-03-03 Canon Inc 画像処理装置及び方法及び記憶媒体
JP3839974B2 (ja) * 1998-10-06 2006-11-01 キヤノン株式会社 符号化装置
JP2000115783A (ja) * 1998-10-06 2000-04-21 Canon Inc 復号化装置及び方法
JP2000115782A (ja) * 1998-10-06 2000-04-21 Canon Inc 符号化装置及び方法及び記憶媒体
US6665444B1 (en) * 1999-04-28 2003-12-16 Canon Kabushiki Kaisha Image processing apparatus and method, and storage medium
JP4365957B2 (ja) * 1999-11-05 2009-11-18 キヤノン株式会社 画像処理方法及びその装置及び記憶媒体
JP2002281444A (ja) * 2000-03-03 2002-09-27 Canon Inc 画像処理方法及び装置及び記憶媒体
JP4208378B2 (ja) * 2000-03-10 2009-01-14 キヤノン株式会社 画像処理装置及び方法及び記録媒体
US6847736B2 (en) * 2000-03-28 2005-01-25 Canon Kabushiki Kaisha In image compression, selecting field or frame discrete wavelet transformation based on entropy, power, or variances from the high frequency subbands
JP4480119B2 (ja) * 2000-03-30 2010-06-16 キヤノン株式会社 画像処理装置及び画像処理方法
US6678422B1 (en) * 2000-08-30 2004-01-13 National Semiconductor Corporation Method and apparatus for image data compression with low memory requirement
JP4612782B2 (ja) * 2000-09-27 2011-01-12 キヤノン株式会社 画像処理装置、及びその方法、並びにプログラム、記憶媒体
US6888970B2 (en) * 2001-01-18 2005-05-03 Lightsurf Technologies, Inc. Wavelet transformation engine
US7013050B2 (en) * 2001-06-26 2006-03-14 Canon Kabushiki Kaisha Image encoding apparatus and method, program code, and storage medium
US6917717B2 (en) * 2002-03-26 2005-07-12 Microsoft Corporation System and method for image compression using wavelet coding of masked images

Also Published As

Publication number Publication date
US20030063811A1 (en) 2003-04-03
US7031536B2 (en) 2006-04-18
JP2003196261A (ja) 2003-07-11

Similar Documents

Publication Publication Date Title
JP3984886B2 (ja) データ変換装置、データ変換方法、コンピュータプログラム、記憶媒体
US6665444B1 (en) Image processing apparatus and method, and storage medium
US5710835A (en) Storage and retrieval of large digital images
US6996593B2 (en) Filter processing apparatus and its control method, program, and storage medium
EP0859335A2 (en) Thumbnail image manipulation using aspect ratio zooming, compression and scaling
JP4371457B2 (ja) 画像処理装置、方法及びコンピュータ読み取り可能な記憶媒体
US7302105B2 (en) Moving image coding apparatus, moving image decoding apparatus, and methods therefor
JPH09284798A (ja) 信号処理装置
JPH11154228A (ja) 画像処理装置および方法
JP2000341689A (ja) ウェーブレット逆変換装置及び方法、並びにウェーブレット復号装置及び方法
JP4097108B2 (ja) ウェーブレット変換装置及び符号化復号化装置
KR102064581B1 (ko) 이미지 자동 회귀 보간 장치 및 방법
US6891975B2 (en) Image encoding device, image decoding device, electronic camera and recording medium
JP2001285643A (ja) 画像変換装置及び方法
KR100771153B1 (ko) 이산 웨이블릿 변환 장치 및 그 방법
JPH1063643A (ja) 画像変換方法
KR100723043B1 (ko) 이미지 데이터의 이산 웨이블릿 변환 방법 및 그 장치
JP3719699B2 (ja) 符号化装置及び復号化装置
JP4688164B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
KR100854726B1 (ko) 역 이산 웨이블릿 변환을 이용한 이미지 복원 방법 및 장치
JP4444480B2 (ja) フィルタ処理装置
JP4194311B2 (ja) 動画像符号化装置及び動画像復号装置並びにそれらの方法
CA2236943C (en) Storage and retrieval of large digital images
Mateos et al. Lossless implementation in VHDL of an image wavelet transform
JPH04280377A (ja) 画像表示装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050609

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070221

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070709

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

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3984886

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130713

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees