JP2002135780A - フィルタ処理装置及びその方法 - Google Patents

フィルタ処理装置及びその方法

Info

Publication number
JP2002135780A
JP2002135780A JP2000323040A JP2000323040A JP2002135780A JP 2002135780 A JP2002135780 A JP 2002135780A JP 2000323040 A JP2000323040 A JP 2000323040A JP 2000323040 A JP2000323040 A JP 2000323040A JP 2002135780 A JP2002135780 A JP 2002135780A
Authority
JP
Japan
Prior art keywords
data
multiplication
input data
input
filter processing
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.)
Granted
Application number
JP2000323040A
Other languages
English (en)
Other versions
JP4444480B2 (ja
JP2002135780A5 (ja
Inventor
Tadayoshi Nakayama
忠義 中山
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 JP2000323040A priority Critical patent/JP4444480B2/ja
Priority to US09/982,916 priority patent/US6996593B2/en
Publication of JP2002135780A publication Critical patent/JP2002135780A/ja
Publication of JP2002135780A5 publication Critical patent/JP2002135780A5/ja
Application granted granted Critical
Publication of JP4444480B2 publication Critical patent/JP4444480B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

(57)【要約】 【課題】 乗算と加算を行う演算ユニットを複数用い
て、フィルタ処理を行うことで、回路規模の増大を押さ
えると共に、回路の構造を簡単化すること。 【解決手段】 処理する画像データYn+2,Yn+3,Yn+
4を読み出し(S2901)、3つの格子点データd’n
+1,S’n、dn-1の夫々を格納する、ラインバッファに
相当する配列H1,H2,H3から読み出す(S290
3)。そして、d’n+3=Yn+3+α・(Yn+2+Yn+4)
を演算し(S2905)、d’n+3を配列H1に格納す
る(S2907)。次に、S'n+2+β・(d'n+1+d'n
+3)を演算し(S2909)、S'n+2を配列H2に格納
する(S2911)。次に、d'n+1=d'n+1+γ・
(S'n+2+S'n)を演算し(S2913)、dn+1を配
列H3に格納する(S2915)。次に、Sn=S'n+
δ・(dn-1+dn+1)を演算し(S2917)、Snと
dn+1を次の処理ステージへ出力する(S2919)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、外部入力データに
対してフィルタ処理を行うフィルタ処理装置及びその方
法に関するものである。
【0002】
【従来の技術】画像、特に多値画像は非常に多くの情報
を含んでおり、その画像を蓄積・伝送する際にはデータ
量が膨大になってしまうという問題がある。このため画
像の蓄積・伝送に際しては、画像の持つ冗長性を除く、
或いは画質の劣化が視覚的に認識し難い程度で画像の内
容を変更することによってデータ量を削減する高能率符
号化が用いられる。
【0003】例えば、静止画像の国際標準符号化方式と
してISOとITU−Tにより勧告されたJPEGで
は、画像データをブロックごと(8画素×8画素)に離
散コサイン変換(DCT)でDCT係数に変換した後
に、各係数を各々量子化し、さらにエントロピー符号化
することにより画像データを圧縮している。ブロックご
とにDCT、量子化を行なっているので、復号画像の各
ブロックの境界で、所謂ブロック歪みが見える場合があ
る。
【0004】一方、新しい静止画像の国際標準符号化方
式としてJPEG2000が検討されているが、JPE
G2000では、量子化の前に行う前処理の一つとし
て、ウェーブレット変換が提案されている。ウェーブレ
ット変換は、現行JPEGのようにブロック単位で処理
を行うのではなく、入力データを連続的に処理するの
で、復号画像の劣化が視覚的に見えにくいという特徴が
ある。
【0005】図1は、変換用メモリ101と離散ウェー
ブレット変換部102の動作を説明する図である。
【0006】図2(a)は、離散ウェーブレット変換部
102の基本構成を示すブロックである。同図左は、順
方向の離散ウェーブレット変換(以下、DWT)を行う
装置(離散ウェーブレット変換部102)の基本構成で
あり、H0は低域通過特性を持つフィルタ、H1は高域
通過特性を持つフィルタである。同図右は逆方向の離散
ウェーブレット変換(逆離散ウェーブレット変換)を行
う装置の基本構成を示す図である。フィルタの係数の一
例を図5に示す。以下、説明を簡略化するため、同図に
示す、5×3構成(低域5タップ・高域3タップ)の順
方向のフィルタ係数を元に説明を行う。
【0007】図2(b)に示す入力画像が、左上から主
走査方向に離散ウェーブレット変換部102に順次入力
されてくる場合を例にとり説明する。画像の大きさはN
×Mとする。
【0008】図2(a)の左側より入力された画像デー
タは、低域通過特性を持つフィルタH0及び、高域通過
特性を持つフィルタH1によりフィルタリングされた
後、その各々の結果が2:1にダウンサンプリングさ
れ、最終的に入力と同数(N×M)のウェーブレット係数
として出力される。
【0009】垂直方向に上述のフィルタリング処理をす
るために、画像データを変換用メモリ101に格納し、
垂直方向M画素に対して垂直フィルタリング処理を施し
ながら、水平方向にスキャンする。その結果、図2
(c)に示すとおり、低域側のウェーブレット係数Lと
高域側のウェーブレット係数Hとの2つのサブバンドを
生成する。
【0010】さらにサブバンドに分割し、水平方向のウ
ェーブレット係数を得るために、ウェーブレット係数
L、Hは変換用メモリ101にいったん全て格納され
る。
【0011】変換用メモリ101に格納されたウェーブ
レット係数は水平方向に読み出され、離散ウェーブレッ
ト変換部102により、水平方向N個の係数に対してH
0及びH1によりフィルタリングを施し、結果は2:1
にダウンサンプリングされる。図2(d)に示すよう
に、係数LにH0を施したものがLL、H1を施したも
のがLHであり、HにH0を施したものがHL、H1を
施したものがHHである。LL、LH、HL、HHのそ
れぞれの大きさは((N/2)×(M/2))である。
【0012】以上説明した離散ウェーブレット変換方法
とは異なる構成方法である、Lifting Sche
meと呼ばれる方法が知られている。図3に順方向のL
ifting Scheme,図4に逆方向のLift
ing Schemeの基本構成を示す。図中のp,u
はLifting係数と呼ばれるもので、図6に5×3
フィルターと同一の出力を生成するためのLiftin
g係数の例を示す。
【0013】図6に示すLifting係数 p=(−1,−1)/2 u=( 1, 1)/4 を元に、以下、図3に示した順方向のLifting
Schemeの動作について説明する。
【0014】Xは入力画像であり、同図に示すように
(X0,X1,X2,X3,X4,X5...)であ
る。入力画像は各々、偶数番目の画素、奇数番目の画素
に分類される。入力画像のうち、偶数番目の画素をX
e、奇数番目の画素をXoとする。分類された画素は、
Lifting係数を乗ぜられた後に加算処理をなさ
れ、低域側の係数と、高域側の係数に変換される。具体
的に式で示すと、 (高域側の係数) X'o=Xo+p・Xe (低域側の係数) X'e=Xe+u・X'o となる。なお、X'o、X'eは、夫々低域側、高域側の
係数である。また図中のkは、ウェーブレット係数を正
規化するものであるが、ここで説明する内容の趣旨から
外れるので、説明を省く。
【0015】図4の逆方向のLifting Sche
meの出力である画素の生成を具体的に式で示すと、 (偶数番目の画素) Xe=X'e−u・X'o (奇数番目の画素) Xo=X'o−p・Xe となる。
【0016】図3,4より、フィルタの構成が変われ
ば、Lifting係数、ならびに対象となる処理画素
が異なることになるが、同様にして、順方向、逆方向の
係数への変換を行うことができる。
【0017】このLifting Schemeを用い
ると、量子化しない(あるいは量子化ステップ1で量子
化する)場合、量子化後の情報のロスが無ければ圧縮符
号化・復号化して復元されるデータが元のデータとまっ
たく同じになる可逆的な変換を行なうことが出来る。J
PEG2000では、Lifting Schemeを
採用して可逆的変換を実現している。
【0018】Lifting Schemeには、その
他にフィルタ処理に要する演算量を少なくすることが出
来るという特徴もあり、JPEG2000の9×7構成
(低域9タップ・高域7タップ)のフィルタにも用いら
れている。
【0019】しかしながら、Lifting Sche
meを用いてフィルタ処理の演算量を少なくすることが
出来るのは、フィルタの方向と処理のスキャン方向が同
じ場合、すなわち、画像データを水平方向にスキャンし
ながら水平方向のフィルタ処理を行なうといった場合で
ある。これは、前のサンプル点で高域と低域側の変換係
数を出力するために演算した途中の結果を、次のサンプ
ル点で再利用できるためである。
【0020】図7に示したLifting Latti
ceを用いて、Lifting Schemeにおける
処理について説明する。
【0021】水平方向の画素の系列X0,X1,X2,
X3,X4...があり、これらの画素の系列に対して
水平方向のDWT変換を行うと共に、右方向にスキャン
する場合について考える。既に、黒丸で示した位置に対
応する変換係数s4とd5が求められているものとす
る。
【0022】s4は9×7構成DWTフィルタの低域側
の変換係数で、d5は高域側の変換係数である。このs
4とd5を求めるために、図7における灰色の丸で示し
た8つの変換データも既に計算されている。例えば、変
換データの1つであるd’1は以下のように計算され
る。
【0023】d’1=X1+α・(X0+X2) 他の変換データも入力と乗算係数等が変わるだけで、演
算式は同じである。ちなみに、JPEG2000では以
下のように係数が定義されている。
【0024】 α = −1.586134342 β = −0.052980118 γ = 0.882911075 δ = 0.443506852 同図において、灰色の丸が全部計算されている場合、次
に求めるべき変換係数はs6とd7であり、先に計算し
た変換データや変換係数を再利用すれば、新たに計算し
なければならないのは、変換データとしてd’9とs’
8の2つ、変換係数としてs6とd7の2つの計4つだ
けで済む。1変換係数当たりではわずか2つの計算で済
むことになる。
【0025】1つの計算の内訳は、3つの入力の両端を
足し合わせる加算1回、該加算結果にα或いはβ、γ、
δ等の係数を掛ける乗算1回、該乗算結果を真中の入力
に加算する加算1回(2回目の加算演算)である。以下
ではこの計算を格子点演算と呼ぶことにする。
【0026】再利用する変換係数・データは、d5,
s’6,d’7の3つで、計算した値をレジスタに保持
するだけで特別な制御も必要なく、簡単に再利用できる
ことが図7のLifting Latticeから容易
に理解できる。
【0027】
【発明が解決しようとする課題】従来は、コーデックの
一部の処理として、ウェーブレット変換等のフィルタ処
理が必要な場合、順方向変換用のフィルタ処理部と逆方
向変換用のフィルタ処理部といった2種類のフィルタ処
理部を用意する必要があり、その結果回路規模が増大す
ることとなった。また、フィルタが階層設計に適した構
成になっておらず、回路の構造が複雑となり、開発やデ
バッグに要する時間もかかり、該機能を搭載した製品の
コストアップの要因にもなっていた。
【0028】本発明は以上の問題点に対して鑑みてなさ
れたものであり、乗算と加算を行う演算ユニットを複数
用いて、フィルタ処理を行うことで、回路規模の増大を
押さえると共に、回路の構造を簡単化することを目的と
する。
【0029】
【課題を解決するための手段】本発明の目的を達成する
ために、例えば本発明のフィルタ処理装置は以下の構成
を備える。すなわち、入力されたデータに対して所定の
係数を乗算する乗算手段と、前記乗算手段による乗算結
果と前記入力データの一部を含む複数のデータの加算を
行う加算手段と、与えられたデータ群を格納すると共
に、当該与えられたデータ群のうち、所望のデータを所
定データ分遅延した遅延データを出力する格納手段とを
備える演算ユニットを複数備え、前記複数の演算ユニッ
トを用いて、外部入力データに対してフィルタ処理を行
う。
【0030】本発明の目的を達成するために、例えば本
発明のフィルタ処理装置は以下の構成を備える。すなわ
ち、入力されたデータに対して所定の係数を乗算する乗
算手段と、前記乗算手段による乗算結果と前記入力デー
タの一部を含む複数のデータの加算を行う加算手段とを
備える複数の演算ユニットと、各演算ユニットからのデ
ータを入力、格納すると共に、当該データに対して遅延
を行った遅延データを出力する格納手段とを備え、外部
入力データに対してフィルタ処理を行う。
【0031】
【発明の実施の形態】以下添付図面に従って、本発明を
好適な実施形態に従って詳細に説明する。
【0032】[第1の実施形態]前記従来例の説明で
は、水平方向の画素系列:X0,X1,X2,X3,X
4,...を図7のフィルタ処理への入力画素として説
明したが、以下の実施形態では、図8に示すとおり、9
ライン分のデータのうち、縦一列の9画素のデータ(Y
0,Y1,Y2,Y3,Y4,...,Y8)を入力す
るものとする。
【0033】以下では、垂直方向のフィルタ処理をしな
がら水平方向にスキャンをするといった処理についてま
ず考える。
【0034】垂直方向のフィルタ処理をしながら水平方
向にスキャンをすると、9つの入力画素が次に処理する
列の9画素に全面的に切り替わるため、1列前の変換係
数を演算する時に計算した途中の演算結果を用いること
ができない。そのため、水平方向にスキャンして列が切
り替わるごとに、図8における灰色の丸に対応する変換
データをすべて計算する必要がある。黒丸に対応するの
は変換係数(低域側の変換係数と高域側の変換係数)で
あるため、これは元々計算する必要がある。
【0035】よって、列が切り替わる度に10回の計
算、1つの係数当たり5回の計算が必要になる。これは
途中の計算結果を再利用できる場合の2.5倍の演算量
になる。
【0036】この問題を解決するために、図9に示す構
成を備えるフィルタ処理装置としての本実施形態におけ
る離散ウェーブレット変換を行う演算処理部について説
明する。
【0037】図9において、901、903、905
は、ラインデータY8、Y9、Y10を入力する端子、
911、913、915は、夫々のラインにおける変換
係数もしくは変換データを格納し、与えられた変換係数
もしくは変換データを遅延時間(遅延ライン分)遅延
し、遅延時間分前のラインで、同じ列の変換係数もしく
は変換データを出力するラインバッファ、921、92
3、925、927は、演算された格子点データが得ら
れる端子(格子点とも言う)を表わす。例えば、格子点
921には以下の計算で求められる格子点データd’9
が得られる。
【0038】d’9=Y9+α・(Y8+Y10)図9
において、上記の式に基づいて計算されたd’9をライ
ンバッファ911に格納し、格納したd’9をラインバ
ッファ911により2ライン分遅延し、2ライン前の同
じ列の変換データd’7を得る。このd’7とd’9を
用いてs’8を計算する。又、計算した変換データs’
8をラインバッファ913に格納する。以下、d7,s
6も同様にしてラインバッファ913、915を用いて
求める。そして、同様に、求めたd7をラインバッファ
915に格納する。
【0039】各ラインバッファ911,913,915
は、水平方向にスキャンする長さに相当する容量を持
ち、遅延時間は2ラインとなる。これは、同じ列のデー
タを用いた垂直方向フィルタ処理が、タイミング上2ラ
イン毎に行なわれるからである。
【0040】もう少し詳しく説明すると、夫々のライン
バッファから出力される変換係数d5や変換データs’
6、d’7を求めるには、Y0からY8までの入力画素
で計算できたが、変換係数s6,d7を得るには、Y1
0の入力を待たねばならないからである。
【0041】そして、次の垂直フィルタ処理のサイクル
では、水平方向に1列シフトして同様の計算が行なわれ
計算結果が夫々のラインに応じたラインバッファに送ら
れる。
【0042】このように、水平方向にスキャンしながら
垂直方向フィルタ処理をして変換係数や変換データを次
々とラインバッファに入力して蓄える。この時用いたラ
インデータ(入力画素)Y8と新たなラインデータY
9、Y10を用いて次の水平スキャンを行なう。
【0043】この時、上記ラインデータに加え、3つの
ラインバッファ915,913,911から出力される
d5,s’6,d’7を用いることで、4回の格子点演
算を行なうことで、2つの変換係数s6,d7を求める
ことができる。もちろん、次の水平スキャンに備え、上
述の通り変換係数d7と変換データs’8、d’9を夫
々のラインバッファ915,913,911に再入力す
る。
【0044】さらに次の水平スキャンでは、ラインデー
タY10,Y11,Y12と、ラインバッファの出力d
7,s’8、d’9を用いることで2つの変換係数s
8,d9を求めることができる。
【0045】このようにして、垂直方向フィルタ処理を
しながら水平方向へスキャンする場合にも、格子点演算
2回につき1変換係数を求めることができる。
【0046】以上説明した図9の構成はフィルタ処理後
の変換係数を元の値に戻すための逆変換処理にも用いる
ことができて、その場合の構成は図10に示すものとな
る。これは、Lifting Latticeを用いた
フィルタ処理の類似性から明らかなことなので、ここで
の説明を省略する。
【0047】上記図9の構成と同じ機能のものは、図1
1の構成でも実現できる。ラインデータY8を、新たに
設けたラインバッファ1101に蓄えて、次の水平スキ
ャンでは、新たなラインデータY9とY10のみを外部
から入力し、既に入力済みのラインデータY8はライン
バッファ1101から、Y10を2ライン分遅延させる
ことで供給するようにしたものである。
【0048】<変形例1>本変形例1では、図12に示
す格子点データ演算ユニットを図13のように複数接続
することによって、フィルタ演算処理部を形成し、前記
垂直方向のフィルタ処理を行なうものである。
【0049】図12に示す格子点データ演算ユニット
は、図11において4つの格子点各々に対応するデータ
を演算する演算部の内、1つの格子点のデータを演算す
る部分と該演算に要するデータの入力元となるラインバ
ッファ1つを取り出したものである。よって、演算機能
等はすでに説明した内容と同様である。
【0050】一方、図13における、1301、130
3、1305、1307は、それぞれ図12に示した格
子点データ演算ユニットであり、各ユニット毎に乗算係
数が異なるが、基本的な構成は同じである。図13に示
したフィルタ演算処理部の構成は、前記図11に示した
演算処理部の構成を上記ユニット4つに置き換えただけ
であるため、機能的には図11とまったく同じである。
【0051】逆変換用(逆方向のフィルタ処理)のフィ
ルタ演算処理部も同一ユニットを用いて、図14のよう
に構成できる。図13との違いは、各ユニット内の乗算
係数が上下で入れ替わって正負の符号が反転しているこ
とである。
【0052】本変形例で示した格子点データ演算ユニッ
トを用いた上述のフィルタ演算処理部、及び逆変換のフ
ィルタ演算処理部は、夫々のパラメータ(α、β、γ、
δ)を調節した図12に示した格子点データ演算ユニッ
トを用いて実現可能である。つまり、共通のハードウェ
ア(ソフトウェアでも良いが)である格子点データ演算
ユニットを用いることで、その両方のフィルタ処理(順
方向、逆方向のフィルタ処理)が実現できる。
【0053】また、上述の格子点データ演算ユニット
は、遅延部がラインバッファに限定されるものではな
く、n個のレジスタからなる遅延部であってもよい。
【0054】一例として、図15にn=2の場合を示
す。
【0055】一方、前記遅延部を格子点データ演算ユニ
ット内に持たず、外部に共通にアクセスできるメモリを
持ち、該メモリで遅延を実現することも可能である。そ
の場合の格子点データ演算ユニットの構成を図16、図
16に示した格子点データ演算ユニットを用いたフィル
タ演算処理部の構成を図17に示す。
【0056】これ以降の説明に用いる格子点データ演算
ユニットは、図の簡略化のため、該格子点データ演算ユ
ニット内に遅延部を持っているものとして話を進める
が、遅延部を外部に持つ場合にも適用できることは、こ
れまでの説明により明らかである。
【0057】また、各格子点データ演算ユニット内の乗
算演算の係数は定数であるため、汎用の乗算器を用いる
必要は無く、被乗数の足し合わせ方が決まっている定数
乗算器を用いることができる。
【0058】また、本変形例で示した上述のフィルタ演
算処理部の構成は、ウェーブレット変換などの特定のフ
ィルタ処理に限定されるものではなく、一般のフィルタ
処理にも適用可能であると同時に、以下の変形例におい
ても同様であることは後述の説明により明らかである。
【0059】<変形例2>第1の実施形態における変形
例2は、前述の各格子点データ演算ユニットの入力側に
該ユニットへの入力を選択するセレクタを配し、該セレ
クタで選択するデータを順方向変換か逆方向変換かで切
り替えることにより、共通のユニットを使用して、順方
向と逆方向の両方の変換を実現するものである。
【0060】本変形例におけるフィルタ演算処理部の構
成を図18に示す。図18において、1800は、変換
の種類(順方向/逆方向)を指定する制御信号を入力す
る端子である。
【0061】1801〜1804は、それぞれパラメー
タα、β、γ、δを有し、定数乗算器と該乗算結果を加
減算する機能を持つ格子点データ演算ユニットである。
【0062】1811〜1814は、端子1800を介
して入力される前記変換の種類を指定する制御信号に基
づいて、出力を入力画素データか変換係数(もしくは係
数データ)かを切り替える4入力2出力のセレクタであ
る。
【0063】1821、1823は、変換前の画像デー
タを入力する端子、1825、1827は、変換後の係
数データを入力する端子 1831、1833は、順方向変換処理によって求めら
れたデータ(変換係数)を出力する端子、1841、1
843は、逆方向変換処理によって求められたデータ
(入力画素データ)を出力する端子、である。
【0064】端子1800から入力される変換の種類を
指定する制御信号に基づいて、各セレクタ1811〜1
814は選択出力するデータを切り替えると共に、各格
子点データ演算ユニット1801〜1804では順方向
変換時には加算、逆方向変換時には減算を行なう。
【0065】そのため各格子点データ演算ユニット18
01〜1804は、定数を乗算した結果を加減算できる
ように図19に示す構成に変更した。回路構成上の実質
的な違いは、加算器を加減算器1901に置き換えたこ
とである。
【0066】端子1800に順方向変換を指定する制御
信号が入力されると、各セレクタ1811〜1814は
左側の2入力(同図のセレクタ1811ではY9,Y1
0)を選択して出力すると共に、各格子点データ演算ユ
ニット1801〜1804は、前記定数乗算結果を加算
するモード(各格子点データ演算ユニットの反転回路1
901が加算モード)となり、図13と等価な構成とな
る。
【0067】一方、端子1800に逆方向変換を指定す
る制御信号が入力されると、各セレクタ1811〜18
14は右側の2入力(同図では一段下の格子点データ演
算ユニットの2出力。ただし、セレクタ1814に関し
ては、s10,d11の2入力)を選択して出力すると
共に、各格子点データ演算ユニット1811〜1814
は前記定数乗算結果を減算するモード(各格子点データ
演算ユニットの加減算器1901は減算モード)とな
り、図14と等価な構成となる。
【0068】図10からも分かるとおり、Y7はC=−
αとなるときのユニット(1801)から、Y8はC=
−βとなるときのユニット(1802)から出力される
ので、端子1841の方からY7が、端子1843の方
からY8が出力されることになる。
【0069】上記4入力2出力のセレクタ1811〜1
814では、順方向変換時と逆方向変換時では変換出力
が別々の端子になってしまうが、セレクタ1812、1
813を図20(a),(b)に示すクロススイッチ2
001,2003に置き換えると、図21に示すとお
り、順方向変換時も逆方向変換時も同じ端子2101,
2103から変換出力を取り出せる。
【0070】<変形例3>本変形例のフィルタ演算処理
部は、Lifting Schemeによるフィルタ処
理の最後に行なうスケーリングのための乗算処理を、順
方向変換と逆方向変換とで同一の乗算器を用いて処理す
る構成に関する。
【0071】スケーリングパラメータをKとすると、J
PEG2000では、最終的な高域変換係数を得るため
に、前記Lifting演算後の高域変換係数にKを乗
算し、最終的な低域変換係数を得るために、前記Lif
ting演算後の低域変換係数に1/Kを乗算する。
【0072】図13に示したフィルタ演算処理部として
の本変形例の垂直9/7−DWT演算処理部に、スケー
リングのための乗算器(2201,2203)を付加す
ると、図22に示す構成となる。同図において2201
が高域変換データにKを乗算する乗算器、2203が低
域変換データに1/Kを乗算する乗算器である。
【0073】また、図18に示した垂直9/7−DWT
/IDWT演算処理部にスケーリングのための乗算器
(2301,2303、2311、2313)を付加す
ると、図23に示す構成となる。図23から分かるよう
に、DWT演算スケーリング用に2個の乗算器230
1、2303、IDWT演算スケーリング用に2個の乗
算器2311、2313が必要である。
【0074】同時に4つの乗算器を使うことは無く、あ
る時点で使用するのはどちらか一方の2個の乗算器だけ
である。
【0075】本変形例は、前記変形例2の規則性をなる
べく踏襲して、両変換モードで同じ2つの乗算器を使う
ようにした。
【0076】図24に本変形例の垂直9/7−DWT/
IDWT演算処理部の構成を示す。セレクタ2401を
格子点データ演算ユニット1804の出力段に設け、該
セレクタ2401の出力段に、共通に用いる2つの乗算
器2411、2413を設けた。その他の構成並びに構
成要素は前記変形例2で示した図18と同じである。
【0077】<変形例4>本変形例では、図9に示した
演算処理部の変形例として、図25に示す演算処理部を
示す。図9に示した演算処理部では、ラインバッファ9
15にはd7を入力していたが、変変形例では、d7に
予めパラメータδが乗算されているδ・d7を入力す
る。そしてδ・d7を入力したラインバッファ915は
同様にパラメータδが乗算されている出力値δ・d5を
出力する。それ以外の構成及び動作は、図9に示した演
算処理部と同じである。
【0078】この構成で、図9に示した演算処理部が行
う演算の量に比べて演算量の増減はない。なお本変形例
ではd7を例として説明したが、これに限定されずに他
のd’9やs’8のうちのいくつか、もしくは全部であ
っても良い。その場合、d’9を例に取り説明すると、
ラインバッファ911にはβ・d’9が入力され、その
出力はβ・d’7で、s’8の演算の際には、このβ・
d’7にβの乗算は行わない。
【0079】<変形例5>本変形例では、図9に示した
演算処理部の変形例として、図26に示す演算処理部を
示す。図9に示した演算処理部では、ラインバッファ9
15にはd7を入力していたが、本変形例では(δ・d
7+s’8)を入力し、更に、このラインバッファ91
5に入力する(δ・d7+s’8)を生成するために、
δ・d7に、s’8を加算する加算器2601が備わっ
ている。
【0080】図26では、加算器の数が増えてはいる
が、変換係数s6の演算に必要な加算処理が、例えば変
形例4では3つの項の加算であったが、本変形例では2
つの項の加算になっており、全体としての演算量は、例
えば変形例4と同じである。
【0081】<変形例6>上述の変形例では、1ライン
前の同一列データをから計算した3つの変換データをそ
れぞれ3つの遅延部で遅延させたが、本変形例では、1
ライン前の同一列データをから計算した1つの変換係数
と格子上の変換データを計算する途中の演算結果をそれ
ぞれ第1、第2の遅延部で遅延させ、新たな変換係数の
計算に用いる。
【0082】本変形例の演算処理部の概略構成を図27
に示す。図9に示した演算処理部において、遅延部91
3,915の2つを用いている。ラインバッファ915
には、第1の実施形態と同様に、変換係数d7を格納す
るが、ラインバッファ913には、β・(d’7+d’
9)を格納し、このβ・(d’7+d’9)を計算する
ために必要となるラインデータY6,Y7,Y8,Y
9,Y10は、図27の上部にある5つの端子から入力
し、変換係数d7を計算するのに必要なその他のデータ
β・(d’5+d’7)はラインバッファ913から与
えられる。水平方向にスキャンしながら垂直フィルタ処
理をするタイミング等は前記第1の実施形態とまったく
同じであるため、これ以上の細かい説明は省略する。
【0083】本変形例では演算量が増えるが、遅延部の
数は前記第1の実施形態より少なくて済む。具体的に
は、1係数当たり3回の格子点演算が必要になり(前記
第1の実施形態では2回)、遅延部は第1、第2の2つ
で済む。Lifting Schemeを用いた変換で
は、逆方向の変換は格子点演算で用いる係数の順序と負
号を逆に変換するだけで、まったく同様の構成で処理で
きる。すなわち、上述した各種実施形態を、図28に示
すLifting Latticeに適用した構成で、
逆変換処理が行なえる。
【0084】[第2の実施形態]第1の実施形態及びそ
の変形例における離散ウェーブレット変換は、すべてハ
ードウェアに関するもののみであったが、演算処理をそ
のまま数式化し、ラインバッファとして配列を確保する
ことで、ほとんどそのままソフトウェア処理に応用でき
る。よって、ウェーブレット係数変換装置のみならずウ
ェーブレット係数変換方式としてもよい。
【0085】以下、図29のフローチャートを用いて説
明する。処理すべき画像データは不図示の入力デバイス
から入力され、このフローチャートに従ったプログラム
コードは不図示のCPUがアクセス可能なメモリ上に格
納されているものとする。なお、以下で用いるインデッ
クスnはn>1とする。
【0086】ステップS2901では、処理する画像デ
ータ3つ(Yn+2,Yn+3,Yn+4)を不図示のメモリか
ら読み出す。
【0087】ステップS2903では、3つの格子点デ
ータd’n+1,S’n、dn-1の夫々を格納している、ラ
インバッファに相当する配列H1,H2,H3から読み
出す。
【0088】ステップS2905では、d’n+3=Yn+3
+α・(Yn+2+Yn+4)を演算する。
【0089】ステップS2907では、上記格子点デー
タd’n+3を配列H1に格納する。
【0090】ステップS2909は、S'n+2+β・
(d'n+1+d'n+3)を演算するステップ、ステップS2
911では、上記格子点データS'n+2を配列H2に格納
する。
【0091】ステップS2913では、d'n+1=d'n+1
+γ・(S'n+2+S'n)を演算する。
【0092】ステップS2915では、上記変換係数d
n+1を配列H3に格納するステップ、ステップS291
7では、Sn=S'n+δ・(dn-1+dn+1)を演算す
る。
【0093】ステップS2919では、上記変換係数S
nとdn+1を次の処理ステージへ出力する。
【0094】各ステップの処理内容や全体の処理につい
ては、既に説明した実施形態から明白であるのでその説
明は省略する。また、演算した格子点データや変換係数
の格納先として、上記配列では無く、単なる変換あるい
はレジスタ等も考えられる。 [他の実施形態]なお、本発明は、複数の機器(例えば
ホストコンピュータ、インタフェイス機器、リーダ、プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機、ファクシミリ
装置など)に適用してもよい。
【0095】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体(または記録媒体)を、システムあるい
は装置に供給し、そのシステムあるいは装置のコンピュ
ータ(またはCPUやMPU)が記憶媒体に格納されたプログ
ラムコードを読み出し実行することによっても、達成さ
れることは言うまでもない。この場合、記憶媒体から読
み出されたプログラムコード自体が前述した実施形態の
機能を実現することになり、そのプログラムコードを記
憶した記憶媒体は本発明を構成することになる。また、
コンピュータが読み出したプログラムコードを実行する
ことにより、前述した実施形態の機能が実現されるだけ
でなく、そのプログラムコードの指示に基づき、コンピ
ュータ上で稼働しているオペレーティングシステム(OS)
などが実際の処理の一部または全部を行い、その処理に
よって前述した実施形態の機能が実現される場合も含ま
れることは言うまでもない。
【0096】さらに、記憶媒体から読み出されたプログ
ラムコードが、コンピュータに挿入された機能拡張カー
ドやコンピュータに接続された機能拡張ユニットに備わ
るメモリに書込まれた後、そのプログラムコードの指示
に基づき、その機能拡張カードや機能拡張ユニットに備
わるCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
【0097】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明した(図29に示す)フロー
チャートに対応するプログラムコードが格納されること
になる。
【0098】
【発明の効果】以上の説明により、本発明によれば、乗
算と加算を行う演算ユニットを複数用いて、フィルタ処
理を行うことで、回路規模の増大を押さえると共に、回
路の構造を簡単化することができた。
【図面の簡単な説明】
【図1】従来例における変換用メモリ101と離散ウェ
ーブレット変換部102の動作を説明する図である。
【図2】(a)は、離散ウェーブレット変換部102の
基本構成を示すブロック図、(b)は入力画像を示す
図、(c)は生成されたLサブバンド、Hサブバンドを
示す図、(d)はHH、HL、LH、LLサブバンドを
示す図である。
【図3】順方向のLifting Schemeの基本
構成を示す図である。
【図4】逆方向のLifting Schemeの基本
構成を示す図である。
【図5】フィルタ係数を示す図である。
【図6】Lifting係数を示す図である。
【図7】Lifting Latticeの構成を示す
図である。
【図8】Lifting Latticeの構成を示す
図である。
【図9】本発明の第1の実施形態における順方向の演算
ユニットの構成を示す図である。
【図10】本発明の第1の実施形態における逆方向の演
算ユニットの構成を示す図である。
【図11】図9に示された演算ユニットと同じ機能を有
し、他の構成をとる演算ユニットの構成を示す図であ
る。
【図12】本発明の第1の実施形態における変形例1で
用いる格子点データ演算ユニットの構成を示す図であ
る。
【図13】図12に示したユニットを複数接続すること
で形成されるフィルタ演算処理部の構成を示す図であ
る。
【図14】本発明の第1の実施形態における変形例1で
用いる逆変換用のフィルタ演算処理部の構成を示す図で
ある。
【図15】格子点データ演算ユニットをn個のレジスタ
からなる遅延部で構成した場合、一例として、n=2と
した場合の構成を示す。
【図16】外部に共通にアクセスできるメモリを持ち、
該メモリで遅延を実現する場合の格子点データ演算ユニ
ットの構成を示す図である。
【図17】図16に示した格子点データ演算ユニットを
用いたフィルタ演算処理部の全体の構成を示す図であ
る。
【図18】本発明の第1の実施形態における変形例2に
おけるフィルタ演算処理部の構成を示す図である。
【図19】図18に示した格子点データ演算ユニットを
変更した場合の構成を示す図である。
【図20】クロススイッチを示す図である。
【図21】本発明の第1の実施形態における変形例2の
フィルタ演算処理部の構成を示す図である。
【図22】図13に示した垂直9/7−DWT演算処理
部にスケーリングのための乗算器を付加した構成を示す
図である。
【図23】図18に示した垂直9/7−DWT/IDW
T演算処理部にスケーリングのための乗算器を付加した
構成を示す図である。
【図24】本発明の第1の実施形態における変形例3の
垂直9/7−DWT/IDWT演算処理部の構成を示す
図である。
【図25】本発明の第1の実施形態における変形例4の
演算ユニットの構成を示す図である。
【図26】本発明の第1の実施形態における変形例5の
演算ユニットの構成を示す図である。
【図27】本発明の第1の実施形態における変形例6の
演算ユニットの構成を示す図である。
【図28】逆変換のLifting Latticeを
示す図である。
【図29】本発明の第2の実施形態である離散ウェーブ
レット変換処理方式のフローチャートである。
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B022 AA01 BA00 CA01 CA03 DA02 FA03 5B057 CA08 CA16 CB08 CB16 CE06 CG05 CG07 CH02 CH09 CH11 CH18 5C059 KK07 MA00 MA24 SS06 SS11 UA11 UA38 UA39 5C078 AA04 BA53 CA25

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 入力されたデータに対して所定の係数を
    乗算する乗算手段と、 前記乗算手段による乗算結果と前記入力データの一部を
    含む複数のデータの加算を行う加算手段と、 与えられたデータ群を格納すると共に、当該与えられた
    データ群のうち、所望のデータを所定データ分遅延した
    遅延データを出力する格納手段とを備える演算ユニット
    を複数備え、 前記複数の演算ユニットを用いて、外部入力データに対
    してフィルタ処理を行うことを特徴とするフィルタ処理
    装置。
  2. 【請求項2】 入力されたデータに対して所定の係数を
    乗算する乗算手段と、 前記乗算手段による乗算結果と前記入力データの一部を
    含む複数のデータの加算を行う加算手段とを備える複数
    の演算ユニットと、 各演算ユニットからのデータを入力、格納すると共に、
    当該データに対して遅延を行った遅延データを出力する
    格納手段とを備え、 外部入力データに対してフィルタ処理を行うことを特徴
    とするフィルタ処理装置。
  3. 【請求項3】 更に、前記演算ユニットに入力されるデ
    ータの切り替えを行う切り替え手段を備え、 前記切り替え手段は外部からの制御信号により、前記演
    算ユニットに入力されるデータの切り替えを行うことを
    特徴とする請求項1又は2に記載のフィルタ処理装置。
  4. 【請求項4】 前記切り替え手段の切り替えにより、前
    記演算ユニットは、順方向、逆方向のフィルタ処理の切
    り替えを行うことを特徴とする請求項3に記載のフィル
    タ処理装置。
  5. 【請求項5】 前記外部からの制御信号は、前記所定の
    係数の正負の符号を制御することを特徴とする請求項3
    に記載のフィルタ処理装置。
  6. 【請求項6】 更に、前記演算ユニットによるフィルタ
    処理結果に対してスケーリング処理を行うスケーリング
    手段を備えることを特徴とする請求項1又は2に記載の
    フィルタ処理装置。
  7. 【請求項7】 前記入力されたデータは、前記外部入力
    データ、前記加算手段による加算結果、前記遅延データ
    を含むことを特徴とする請求項1乃至6のいずれか1項
    に記載のフィルタ処理装置。
  8. 【請求項8】 前記複数のデータは更に、前記外部入力
    データ、前記遅延データを含むことを特徴とする請求項
    1乃至6のいずれか1項に記載のフィルタ処理装置。
  9. 【請求項9】 前記外部入力データは、画像を構成する
    各画素データであることを特徴とする請求項1乃至8の
    いずれか1項に記載のフィルタ装置。
  10. 【請求項10】 前記フィルタ処理は離散ウェーブレッ
    ト変換を含むことを特徴とする請求項1又は2に記載の
    フィルタ処理装置。
  11. 【請求項11】 前記フィルタ処理は、Lifting
    Schemeで示される方法に従うことを特徴とする
    請求項10に記載のフィルタ装置。
  12. 【請求項12】 入力されたデータに対して所定の係数
    を乗算する乗算工程と、 前記乗算工程による乗算結果と前記入力データの一部を
    含む複数のデータの加算を行う加算工程と、 与えられたデータ群を所定の格納手段に格納すると共
    に、当該与えられたデータ群のうち、所望のデータを所
    定データ分遅延した遅延データを当該所定の格納手段か
    ら出力する格納工程とを備える演算ユニットの制御方法
    を複数備え、 前記複数の演算ユニットの制御方法を用いて、外部入力
    データに対してフィルタ処理を行うことを特徴とするフ
    ィルタ処理装置の制御方法。
  13. 【請求項13】 入力されたデータに対して所定の係数
    を乗算する乗算工程と、 前記乗算工程による乗算結果と前記入力データの一部を
    含む複数のデータの加算を行う加算工程とを備える複数
    の演算ユニットの制御方法と、 各演算ユニットからのデータを所定の格納手段に入力、
    格納すると共に、当該データに対して遅延を行った遅延
    データを当該所定の格納手段から出力する格納工程とを
    備え、 外部入力データに対してフィルタ処理を行うことを特徴
    とするフィルタ処理装置の制御方法。
  14. 【請求項14】 更に、前記演算ユニットに入力される
    データの切り替えを行う切り替え工程を備え、 前記切り替え工程は外部からの制御信号により、前記演
    算ユニットに入力されるデータの切り替えを行うことを
    特徴とする請求項12又は13に記載のフィルタ処理装
    置の制御方法。
  15. 【請求項15】 更に、前記演算ユニットによるフィル
    タ処理結果に対してスケーリング処理を行うスケーリン
    グ工程を備えることを特徴とする請求項12又は13に
    記載のフィルタ処理装置の制御方法。
  16. 【請求項16】 コンピュータに読み込ませることでフ
    ィルタ処理装置として機能するプログラムコードを格納
    する記憶媒体であって、 入力されたデータに対して所定の係数を乗算する乗算工
    程のプログラムコードと、 前記乗算工程による乗算結果と前記入力データの一部を
    含む複数のデータの加算を行う加算工程のプログラムコ
    ードと、 与えられたデータ群を所定の格納手段に格納すると共
    に、当該与えられたデータ群のうち、所望のデータを所
    定データ分遅延した遅延データを当該所定の格納手段か
    ら出力する格納工程のプログラムコードとを備える、演
    算ユニットとして機能するプログラムコードを備え、 前記演算ユニットとして機能するプログラムコードを複
    数回用いて、外部入力データに対してフィルタ処理を行
    うことを特徴とする記憶媒体。
  17. 【請求項17】 コンピュータに読み込ませることでフ
    ィルタ処理装置として機能するプログラムコードを格納
    する記憶媒体であって、 入力されたデータに対して所定の係数を乗算する乗算工
    程のプログラムコードと、 前記乗算工程による乗算結果と前記入力データの一部を
    含む複数のデータの加算を行う加算工程のプログラムコ
    ードとを備える、演算ユニットとして機能するプログラ
    ムコードと、 各演算ユニットからのデータを所定の格納手段に入力、
    格納すると共に、当該データに対して遅延を行った遅延
    データを所定の格納手段から出力する格納工程のプログ
    ラムコードとを備え、 外部入力データに対してフィルタ処理を行うことを特徴
    とする記憶媒体。
JP2000323040A 2000-10-23 2000-10-23 フィルタ処理装置 Expired - Fee Related JP4444480B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000323040A JP4444480B2 (ja) 2000-10-23 2000-10-23 フィルタ処理装置
US09/982,916 US6996593B2 (en) 2000-10-23 2001-10-22 Filter processing apparatus and its control method, program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000323040A JP4444480B2 (ja) 2000-10-23 2000-10-23 フィルタ処理装置

Publications (3)

Publication Number Publication Date
JP2002135780A true JP2002135780A (ja) 2002-05-10
JP2002135780A5 JP2002135780A5 (ja) 2007-11-01
JP4444480B2 JP4444480B2 (ja) 2010-03-31

Family

ID=18800807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000323040A Expired - Fee Related JP4444480B2 (ja) 2000-10-23 2000-10-23 フィルタ処理装置

Country Status (1)

Country Link
JP (1) JP4444480B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7197191B2 (en) 2002-03-19 2007-03-27 Sanyo Electric Co., Ltd. Image transformation apparatus and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7197191B2 (en) 2002-03-19 2007-03-27 Sanyo Electric Co., Ltd. Image transformation apparatus and method

Also Published As

Publication number Publication date
JP4444480B2 (ja) 2010-03-31

Similar Documents

Publication Publication Date Title
RU2512130C2 (ru) Устройство и способ получения изображений с более высоким разрешением во встроенном устройстве
US6996593B2 (en) Filter processing apparatus and its control method, program, and storage medium
US20040005006A1 (en) Image processing apparatus, image processing program and image processing method
JP2002304624A (ja) フィルタ処理装置及び撮像装置
JP3796432B2 (ja) フィルタ処理装置およびフィルタ処理方法
JPWO2007072644A1 (ja) 2次元フィルタ演算装置及び方法
JP4514169B2 (ja) デジタル信号変換装置及び方法
JP4024649B2 (ja) 画像処理装置及び画像処理方法
US6938105B2 (en) Data apparatus and method having DMA circuitry to efficiently transfer multivalued bit-plane data
US7940991B2 (en) Image signal processing apparatus
JP2002135780A (ja) フィルタ処理装置及びその方法
JP2009232454A (ja) 高域係数用符号化ブロックパターン生成方法及び装置
JP3695451B2 (ja) 画像サイズの変更方法及装置
JP2000165861A (ja) 動画像復号装置
JP4266512B2 (ja) データ処理装置
JP2001285643A (ja) 画像変換装置及び方法
JP2002101310A (ja) フィルタ処理装置及び方法
JP3709106B2 (ja) 画像圧縮および伸張装置
JP4700838B2 (ja) フィルタ処理装置
JPH1155668A (ja) 画像符号化装置
JP3385866B2 (ja) 逆量子化・逆dct回路
JP3818484B2 (ja) 符号化動画像データの復号装置および記録媒体
JP3371481B2 (ja) ディジタル演算装置
WO2009095959A1 (ja) 直交変換装置および集積回路
JP2001128182A (ja) 画像符号化方法および画像符号化プログラムを格納したコンピュータで読取可能な記録媒体

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070907

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070907

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070907

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080825

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090814

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090821

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091102

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091208

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: 20100112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100114

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140122

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees