JP2003142989A - フィルタ処理装置およびフィルタ処理方法 - Google Patents

フィルタ処理装置およびフィルタ処理方法

Info

Publication number
JP2003142989A
JP2003142989A JP2001335185A JP2001335185A JP2003142989A JP 2003142989 A JP2003142989 A JP 2003142989A JP 2001335185 A JP2001335185 A JP 2001335185A JP 2001335185 A JP2001335185 A JP 2001335185A JP 2003142989 A JP2003142989 A JP 2003142989A
Authority
JP
Japan
Prior art keywords
filter
data
integer
processing
real number
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
JP2001335185A
Other languages
English (en)
Other versions
JP3796432B2 (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 JP2001335185A priority Critical patent/JP3796432B2/ja
Priority to US10/278,941 priority patent/US7236997B2/en
Publication of JP2003142989A publication Critical patent/JP2003142989A/ja
Application granted granted Critical
Publication of JP3796432B2 publication Critical patent/JP3796432B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)
  • Picture Signal Circuits (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 JPEG2000におけるウェーブレット変
換等に適用でき、可逆性を有しながらも畳み込み演算に
より実装することを可能にする。 【解決手段】 図28(a)に示す2段の整数型Liftin
g演算の構成を、同図(b)、同図(c)の順に分解し
ていって、最終的に同図(d)に示すように実数演算処
理部と整数化演算処理部とに分離させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はフィルタ処理装置及
びその制御方法に関するものである。
【0002】
【従来の技術】画像、特に多値画像は非常に多くの情報
を含んでおり、その画像を蓄積・伝送する際にはデータ
量が膨大になってしまうという問題がある。このため画
像の蓄積・伝送に際しては、画像の持つ冗長性を除く、
或いは画質の劣化が視覚的に認識し難い程度で画像の内
容を変更することによってデータ量を削減する高能率符
号化が用いられる。
【0003】例えば、静止画像の国際標準符号化方式と
してISOとITU−Tにより勧告されたJEPGで
は、画像データをブロックごと(8画素×8画素)に離
散コサイン変換(DCT)でDCT係数に変換した後
に、各係数を各々量子化し、さらにエントロピー符号化
することにより画像データを圧縮している。ブロックご
とにDCT、量子化を行なっているので、復号画像の各
ブロックの境界で、所謂ブロック歪みが見える場合があ
る。
【0004】一方、新しい静止画像の国際標準符号化方
式としてJPEG2000が検討されているが、JPE
G2000では、量子化の前に行う前処理の1つとし
て、ウェーブレット変換が提案されている。ウェーブレ
ット変換は、現行JPEGのようにブロック単位で処理
を行うのではなく、入力データを連続的に処理するの
で、復号画像の劣化が視覚的に見えにくいといった特徴
がある。
【0005】JPEG2000で用いられる離散ウェー
ブレット変換は、画像データを低域周波数成分と高域周
波数成分とに分けるフィルタ処理として位置付けられ
る。通常、フィルタ処理は、フィルタ係数と画像データ
とのコンボリューション(畳み込み)演算によって行な
われるが、JPEG2000で用いられる下記の離散ウ
ェーブレット変換は、前記畳み込み演算の他に、Lif
ting Schemeによる方法が適用できる。 ・Daubecheis 9/7 Filter (以下、9×7
フィルタと称す) ・ 〃 5/3 Filter (以下、5×3
フィルタと称す) 以下、Lifting Schemeについて説明す
る。
【0006】<Lifting Schemeの説明>
図1に順方向のLifting Scheme、 図2
に逆方向のLifting Schemeの基本構成を
示す。図の中のp, uはLifting係数と呼ばれる
もので、図3に、5×3フィルタのフィルタ係数を、図
4に該5×3フィルタのLifting係数を示す。
【0007】図4に示すLifting係数 p=(−1,−1)/2 u=( 1, 1)/4 を元に、以下、図1の動作について説明する。
【0008】Xは入力画像データであり、同図に示すよ
うに、X0, X1, X2, X3, X4, X5 ...の順に
入力される。入力画像の先頭から、偶数系列の画素デー
タと奇数系列の画素データとに分類される。
【0009】奇数系列の画素データ(X1,X3,X
5,X7...)は、間引きユニット105にて入力画
像データを先頭から1つおきに間引いて(ダウンサンプ
リングして)生成する。
【0010】偶数系列の画素データ(X0,X2,X
4,X6...)は、遅延ユニット101にて画像デー
タを1画素遅延させ、その後、間引きユニット103に
て1画素遅延後の画像データを1つおきに間引いて(ダ
ウンサンプリングして)生成する。
【0011】2つの間引きユニットは同じタイミングで
動作しているため、前記遅延ユニット101で1画素遅
延させたデータと、遅延させない入力画像データを各々
間引くことによって、間引き位相の異なる前記2つの系
列の画素データが生成できるわけである。
【0012】乗算器107にて、偶数系列の画素データ
に、Lifting係数pを乗算し、乗算結果を加算器
109にて、奇数系列の画素データに加算して、高域側
の変換係数X'o(X'1,X'3,X'5,X'
7...)を演算する。
【0013】Lifting係数の乗算と該乗算結果の
加算処理は、Lifting Schemeにおいて1
つの単位となる処理で、これをLifting演算ステ
ップと言う。
【0014】Lifting係数pは2つの成分を持つ
ベクトルデータであり、連続する2つの偶数系列の画素
データに、各成分(係数値)を乗算し、2つの乗算結果
の和がLifting係数pの乗算結果となる。
【0015】乗算器111におけるLifting係数
uの乗算も同様に行なう。乗算対象は演算したばかりの
高域側の変換係数X'oである。該乗算結果を、加算器
113にて偶数系列の画素データに加算して、低域側の
変換係数X'e(X'0,X'2,X'4,X'8...)
を求める。
【0016】上述した処理を具体的に式で示すと、 (高域側の変換係数): X'2n+1=X2n+1+(−X2n−X2n+2)/2 (1) (低域側の変換係数): X'2n =X2n +(X'2n−1+X'2n+1)/4 (2) となる。
【0017】上記の処理は水平方向に1回、垂直方向に
1回の併せて2回行うことを1セットとし、低域成分に
ついてこれを数セット繰り返すことで離散ウェーブレッ
ト変換が行われる。この後は、量子化、エントロピー符
号化を行い、最終的に符号化された画像データを生成す
ることになる。一方、復号化する側では、この処理を逆
に行うことで、元の画像に復元することになる。
【0018】ここで、符号化側からび復号化側への一連
の処理を想定すると、次の様になる。なお、説明を簡単
にするため、量子化、エントロピー符号化は省略する。
また、入力画像データをD、離散ウェーブレット変換を
DWT、その逆変換をIDWTとする。
【0019】D→DWT→IDWT→D このように元の画像Dを復元できることを意味する。す
なわち、上記の変換過程は、数学的に見た場合に可逆で
あると言える。しかしながら、回路、或いはソフトウェ
アでこれを実装する場合、「可逆」にはなりずらい。理
由は次の通りである。
【0020】元の画像データは一般的に整数値である
が、上記のフィルタ処理を1回行なうと浮動小数点型の
データになり、小数部が例えば3ビット発生する。2次
元フィルタ処理では、先に説明したように、水平方向に
1回と垂直方向に1回の合わせて2回、上記フィルタ処
理を行なうので、途中で小数部の丸め処理を行なわなけ
れば、最終的に6ビットの小数部が発生する。さらに、
該フィルタ処理を再帰的に何度も行なえば、それに比例
して小数部は増加する。
【0021】6ビット以上もあるような小数部をそのま
まにしておくと、データ量が増えてしまうので、通常
は、丸め処理をして整数化をした後に保存する。画像デ
ータ圧縮時には、整数化、或いは量子化を行ない、フィ
ルタ処理した後のデータをさらに削減する。
【0022】フィルタ処理した結果を、丸め処理したり
量子化したりすると、情報を失うことになるので、逆方
向のフィルタ処理(復号化する側での処理になる)をし
ても、元の画像データと同じデータに戻ることはない。
したがって、回路やソフトウェアとして実装した場合に
は、「可逆」にはならない。
【0023】以上が順方向のフィルタ処理であるが、次
に逆方向の処理について簡単に説明する。
【0024】図2に示す、逆方向のLifting S
chemeにおける処理も順方向の処理と似た処理を行
なう。処理内容を式で示すと、 (偶数系列の画素): X2n =X2n−(X'2n−1+X'2n+1)/4 (3) (奇数系列の画素): X2n+1=X’2n+1−(−X2n−X2n+2)/2 (4) となる。順方向の処理と異なるのは、以下の3点であ
る。 ・2回のLifting演算ステップで使用するLif
ting係数の順序を逆にする。 ・Lifting係数を乗算した結果を加算ではなく減
算する。 ・間引きユニットの替わりに、ゼロ挿入ユニットをLi
fting演算後に使用する。
【0025】図2におけるユニット209と213が上
記減算を行なう減算器であり、ユニット203と205
がゼロ挿入ユニットである。
【0026】あとは、位相合わせのために、遅延ユニッ
ト201にてゼロ挿入された奇数系列の画素データを1
画素分遅延させる。この結果、ゼロでない有効な画素デ
ータが偶数系列側と奇数系列側から交互に得られるよう
になる。それを1系列に合成することにより、元の画像
データを順方向フィルタ処理と逆方向フィルタ処理した
データを得ることができる。
【0027】フィルタのタップ数が変われば、Lift
ing係数、Lifting演算ステップの回数が変わ
ってくる。例えば、前記9×7フィルタでは、Lift
ing演算ステップの回数が4回になる。
【0028】Lifting Schemeを用いる
と、積和演算が畳み込み演算処理に比べて少ない回数で
実現できるため、インプリメントが効率化される上、さ
らに、後述する整数型の可逆変換が可能になる。
【0029】<可逆変換の説明>先に説明したように、
数学的可逆であっても、実装した場合には可逆(以下、
実装可逆という)になるとは限らない。以下、より詳し
く説明する。
【0030】広義の可逆変換とは順方向にフィルタ処理
(変換処理)した変換係数データを、逆方向にフィルタ
処理すると完全に元のデータに戻すことができる変換で
ある。可逆変換のこの性質を可逆性、或いは可逆的と言
う。数学的に可逆変換と言われるものがこの範疇に入
る。具体的には、DCT変換等のように変換行列が正規
直交行列で表わされるようなものや、上記Liftin
g Schemeで演算されるフィルタ等がある。広義
の可逆変換では、実数演算時の誤差が大きい場合、繰り
返し処理で誤差が累積することにより、逆変換しても元
に戻らないことがある。そのため演算ビット長に配慮す
る必要がある。その意味と以下に説明する整数型と対比
するため、広義の可逆変換を以下では実数型の可逆変換
と言う。
【0031】実数型の可逆変換は、可逆性を保つために
保持しなければならない総データ量(データ数×ビット
長)が増える。変換を再帰的に何度も行なう場合、該デ
ータ量は元データの何倍にも増える。よって、データの
圧縮が目的で変換処理をする場合、可逆性を犠牲にし
て、非可逆の圧縮を行なうのが一般的である。画像デー
タ(静止画、動画)圧縮に用いられるJPEG,H26
1,MPEG1/2/4等はその代表である。
【0032】それに対して、整数型の可逆変換は、フィ
ルタ処理後のデータが入力データと同じ整数(入力が固
定小数点データなら出力も同じ固定小数点データという
ケースもある)でありながら、逆変換処理で元のデータ
に戻る変換処理である。該可逆変換は、上記実数型の可
逆変換結果を単純に丸め処理して整数化すれば実現でき
ると言ったものでは無く、後述するように各Lifti
ng演算ステップにおいて、整数化のための丸め処理を
行なうことによって実現できる。これを狭義の可逆変換
と言い、これ以降、単に可逆変換(可逆フィルタ)と言
えば、狭義の可逆変換、すなわち、整数型の可逆変換の
ことをさす。
【0033】ある変換が可逆的であることを示すには、
順方向の可逆変換とそれに対応する逆方向の可逆変換を
対で示す必要がある。
【0034】Lifting Schemeを用いて可
逆フィルタ処理を実現するには、前述したように各Li
fting演算ステップにおいて丸め処理を行なうわけ
だが、さらに詳しく言うと、各Lifting演算ステ
ップにおいて、Lifting係数乗算後の結果を加減
算する前に丸め処理を行なう、ということである。
【0035】以下では、可逆変換可能な5×3フィルタ
(以下、可逆5×3フィルタと言う)を例にとり、可逆
性について説明する。そのために、順方向可逆変換の
後、直ちに逆方向可逆変換を行なう処理系を図5に示
す。
【0036】同図において、501、503,505、
507は入力データを超えない最大の整数値を取り出す
floor関数演算ユニット、502と504はLif
ting係数を乗算したデータに0.5を加算する加算
ユニットである。その他のユニットは、前記図1及び図
2で用いていた同一番号ユニットとまったく同じであ
る。同図における加算器と減算器には、整数データのみ
しか入力されず、出力も当然整数データとなる。このよ
うなLifting演算を整数型Lifting演算と
言い、可逆変換を実現するために用いられる。
【0037】図5の左側から入力した画像データ(整数
値)を、順方向フィルタ処理部540で処理し、次に逆
方向フィルタ処理部550で処理した結果が、元の入力
とまったく同じになることを説明することによって、該
フィルタ処理(変換処理)が可逆的であることを示す。
【0038】まず、図5における4つの加算器と減算器
の入力は全て整数値であり、その出力も整数値にである
ことに注目してもらいたい。
【0039】説明の方針として、以下の性質(a)
(b)が成り立つことを説明した後、性質(c)を用い
て、フィルタ処理前後の偶数画素系列・奇数画素系列が
それぞれ等しいことを示す。 (a)順方向フィルタ処理部540内のfloor関数
演算ユニット503の出力と、逆方向フィルタ処理部5
50内のfloor関数演算ユニット505の出力とが
等しい。 (b)順方向フィルタ処理部540内のfloor関数
演算ユニット501の出力と、逆方向フィルタ処理部5
50内のfloor関数演算ユニット507の出力とが
等しい。 (c)加算した値と同じ値を減算すれば、加算前の元の
値に戻る。
【0040】乗算器111と211は同じLiftin
g係数uを乗算するものであり、乗算対象となるデータ
系列も同じ高域側の変換係数X'oである。よって、該
2つの乗算器の出力は等しい。該出力をそれぞれ加算ユ
ニット502、504において0.5を加算し、flo
or関数演算ユニット503、505を経由して得られ
る結果も当然等しくなる。これで性質(a)が成り立つ
ことが言える。これに性質(c)を利用すると、加算器
113に入力される偶数画素系列Xeと減算器213か
ら出力される偶数画素系列も等しいことが言える。
【0041】次に、乗算器107と207も同じLif
ting係数pを乗算するものであり、乗算対象となる
データ系列も上述の偶数画素系列Xeである。よって、
該2つの乗算器の出力も等しいことが言える。該出力を
それぞれ同じ機能のfloor関数演算ユニット50
1、507で処理した結果も当然等しくなる。これで性
質(b)も成り立つことが言えた。これに性質(c)を
利用すると、加算器109に入力される奇数画素系列X
oと減算器209から出力される奇数画素系列も等しい
ことが言える。よって、図5に示す順方向フィルタ処理
部540と逆方向フィルタ処理部550は、それぞれ可
逆的であると言える。
【0042】順方向フィルタ処理部540の出力は、整
数値であるため整数化のための丸め処理は不要であり、
該整数値の出力を直接、逆方向フィルタ処理部550に
入力することが出来る。データ圧縮時に用いる量子化処
理で量子化ステップを“1”に設定すれば、該量子化処
理で情報が欠損しないので、可逆の圧縮を行なうことが
できる。一方、量子化ステップを“1”より大きく設定
すれば、情報の欠損が生じるので、圧縮率は高くなるが
可逆では無くなる。
【0043】上述したように、Lifting Sch
emeを用いることにより、可逆変換が可能になる。こ
こで、フィルタの種類とそれを実現する演算手法との関
係を整理すると以下のようになる。 ・インパルス応答が有限なフィルタ処理は畳み込み演算
で実現可能 ・一部のフィルタ処理はLifting Scheme
で実現可能(一部は不可) ・Lifting Schemeで実現できる実数型の
フィルタは可逆変換可能・上記実数型の可逆フィルタに
おいてLifting演算を整数型にすることで、整数
型の可逆フィルタ処理を実現することが可能 よって、ほとんどのフィルタ処理は畳み込み演算で実現
できるのに、整数型の可逆フィルタ処理は畳み込み演算
を用いては実現できない。これでは、Lifting
Schemeでは実現できない(畳み込み演算でしか実
現できない)フィルタ処理と整数型の可逆フィルタ処理
の両機能が必要な場合、別々の処理部(回路)で実現し
なければならない。
【0044】また、整数型の可逆フィルタ処理を行なう
際には、整数型のLifting演算を行なう必要があ
るため、実数型のフィルタ処理を同時に行なうことが出
来ず、整数型と実数型の両方のフィルタ処理結果を同時
に得ることも出来ない。
【0045】
【発明が解決しようとする課題】以上の如く、これまで
は可逆フィルタ処理を畳み込み演算で実現することがで
きなかったので、畳み込み演算でしか実現できないフィ
ルタ処理と可逆フィルタ処理の両機能が必要な場合、別
々の処理部(回路)で実現しなければならず、フィルタ
処理装置の規模が大きくなり、安価なコストでフィルタ
処理装置を構成することができない、と言った問題があ
った。
【0046】また、整数型の可逆フィルタ処理と実数型
のフィルタ処理を同時に行なうことが出来ず、整数型と
実数型の両方のフィルタ処理結果を同時に得ることが出
来ず、例えばこれらを備えるチップを製造するには、2
種類のフィルタを実装しなければならなかった。
【0047】本発明はかかる問題点に鑑みなされたもの
であり、特に、JPEG2000におけるウェーブレッ
ト変換等に適用でき、可逆性を有しながらも畳み込み演
算により実現しうるフィルタ演算装置及び方法、並びに
コンピュータプログラム及び記憶媒体を提供しようとす
るものである。
【0048】
【課題を解決するための手段】この課題を解決するた
め、例えば本発明のフィルタ処理装置は以下の構成を備
える。すなわち、本発明では、可逆変換が可能な実数型
のフィルタ演算を行なうフィルタ処理手段と、補正デー
タを生成する手段と、整数化する丸め手段とを有し、整
数型の可逆フィルタ処理装置を実現する。
【0049】また、可逆変換が可能な実数型のフィルタ
演算を行なうフィルタ処理工程と、補正データを生成す
る工程と、整数化を行なう丸め処理工程とを有し、整数
型の可逆フィルタ処理を実現する。
【0050】可逆変換が可能な実数型のフィルタ演算を
行なう第1のLifting演算手段と、該演算手段か
ら出力される実数データを整数データに変換する第2の
Lifting演算手段とを有し、整数型の可逆フィル
タ処理装置を実現する。
【0051】可逆変換が可能な実数型のフィルタ演算を
行なう第1のLifting演算工程と、該演算工程に
より得られる実数データを整数データに変換する第2の
Lifting演算工程とを有し、整数型の可逆フィル
タ処理を実現する。
【0052】
【発明の実施の形態】以下、添付図面に従って本発明に
係る実施形態を説明するが、先ず、基本部分について説
明する。
【0053】先ず、本発明の基礎概念について説明す
る。
【0054】図27は、整数型Lifting演算部の
符号化側及び復号化側の概念図(整数化Liftin
g)である。なお、ここでは説明を簡単にするため、図
示では量子化ステップを“1”とし(量子化が存在しな
い場合と等価)、エントロピー符号化及び復号化にかか
る構成については省略して示している。
【0055】図示において、X2n、X2n+1は多値画像
(例えば8ビットの整数値の画素データ)である。入力
される水平方向の画素データをX0,X1,X2,X3,X4
と表現したとき、X2nはX0,X2,X4…と偶数番目の画
素データを示し、この順序で入力されるものである。ま
た、X2n+1はX1,X3,X5…と奇数番目の画素データを
示し、やはりこの順序で入力されるものである。かかる
入力はダウンサンプリング処理で生成される。
【0056】さて、図示の符号化側の出力θbに着目し
てみる。このθbの或る値θbnは、次のようにして演
算されたものと等価となる。
【0057】 θbn=θ'b+整数化(k0×(θa2n-1+θa2n+1)) ここで、注目したいのは、θ'bも同様の丸め演算によっ
て算出されたものであるので整数になっている点であ
る。すなわち、図示のようにLighting係数が何
でもあっても、その後に丸め演算(整数化)を施すこと
によって、値は整数として保持されることになる。
【0058】一方、復号化側では、符号化側における処
理とちょうど逆順に処理することになる。ここで、復号
化側におけるθ''bに着目すると、このθ''bは、Liftin
g演算K’によって算出された値をθbから減じた値であ
る。しかるに、このLifting演算K’は、符号化側のLif
ting演算Kと全く同様に、共通のθaに対する演算値を
有する。すなわち、加算したものを減算しているだけで
あるので、符号化側でのθ'bと、復号化側でのθ''bと
は完全に等しいことがわかる。これはLifting演算係数
2が如何なるものであっても成立することが理解でき
よう。
【0059】上記では、θbについて説明したが、θa
についても全く同様なことが言える。より細かくは、1
つのLifting演算によって生成された出力データ(整
数)は、必ず可逆にすることができる。以上が整数型L
ifting演算によるフィルタの構成である。
【0060】次に、整数型Lifting演算のモデルとし
て、図28(a)のよう構成について考察してみる。図
示では、2つのLighting演算部(2段のLifting演算
部)で構成される例を示している。ここでは入力される
信号(データ)系列をXe、Xoとし、2つの演算結果に
より出力される信号(データ)系列をX'e、X'oと表現
する。言うまでもないが、これら信号系列Xe、Xo、
X'e及びX'oの各データは整数である。
【0061】また、Lifting演算係数p、uであるが、
JPEG2000におけるフィルタタイプとして5×3
フィルタを例にして説明する。よって、Lifting演算係
数pは−(p0,p1)=−(1/2、1/2)、演算係
数uは(u0,u1)=(1/4、1/4)であるとして
説明する。
【0062】さて、同図(a)であるが、その意味する
ところを式で示すと次の通りである。すなわち、 X'on=Xon−floor(p0・Xen-1+p1・Xen+1) X'en=Xen+floor(u0・X'on-1+u1・X'o
n+1+0.5) ここで、floor(x)はxを越えない最大整数を返す関数
(もしくは回路)である。
【0063】さて、図28(b)は同図(a)の等価な
回路構成である。図示でceiling(x)とは、x
を越える最小整数を返す関数(もしくは回路)である。
等価である理由は次の通りである。
【0064】先ず、演算器1の出力について考察する。
【0065】同図(a)におけるX'oは、XeにLiftin
g演算係数pによる乗算結果に対してfloor演算し
た結果を、入力されるデータXo(整数であることに注
目されたい)から減じることを示しているわけであるか
ら、floor演算は、データXoから減じる値を小さ
くする方向に作用していることになる。換言すれば、こ
の場合のfloor演算は、その減算結果(演算器1の
出力)を大きくするように作用していることに他ならな
い。
【0066】したがって、同図(b)におけるceil
ing演算(及びその位置)によって、その演算内容は
同図(a)と等価となる。
【0067】なお、上記の点は、同図(a)と同図
(b)の関係が、 整数−floor(実数)=ceiling(整数−実数) となっていると言えば、より分かりやすい。
【0068】次に、図28(a)の演算器2の出力につ
いて考察する。演算器2における演算内容を簡単に表現
すると次の通りである。 整数+floor(実数+0.5) これは、次のように表現できるものである。 floor((整数+実数)+0.5) 図28(b)はまさにこれを表している。
【0069】以上の通りであるから、図28(a)と同
図(b)とは等価な回路構成であることがわかる。
【0070】次に、図28(b)におけるceilin
gを実装する場合について考察する。
【0071】ceilingは小数点以下を切り上げる
ものであるが、この場合小数点以下の情報は小数点第1
位の1ビットしかなく、該1ビットは演算器1からの出
力の最下位ビットである。よって、該最下位の1ビット
を演算器1の出力値に加算すれば良い。或いは、それを
最下位ビットを除く値(上位乃整数)に足しても同じ結
果を得ることができる。
【0072】これを表現したのが同図(c)である。す
なわち、同図(c)は同図(b)、さらには同図(a)
と等価となる。
【0073】更に、同図(c)の演算係数uについて考
察すると、分配法則に則って、同図(d)のように変更
できることがわかる。
【0074】同図(d)に着目すると、破線左側は実数
演算処理、すなわち、実数型Lifting演算そのものであ
り、破線右側では整数化処理を行っていることになる。
すなわち、同図(d)の構成にすることで、整数型Lift
ing演算を用いないで済み、実数型Lifting演算(丸め無
し演算)と整数化演算で実現できることになる。
【0075】図28(d)の構成をまとめると次の様に
なる。なお、実数型Lifting演算部における出力値(一
時的な出力値)を図示の如くXet、Xotと表現する。
【0076】先ず、実数型Lifting演算部では、次のよ
うな処理を行っていることになる。すなわち、 Xot2n+1=Xo−(Xe2n+X2n+1)×1/2 Xet2n=Xe2n+(Xot2n-1+Xot2n+1)×1/4 上記式は、図28(a)の基本構成における整数化(fl
oor)を除いた実数型Lifting演算に他ならない。そして
後続する整数化演算での処理は、上記式の演算結果を整
数化するものであるが、分かりやすく説明するのであれ
ば、上記算出結果に対して、あたかもそれぞれの式の右
辺第2項の「(Xe2n+X2n+1)×1/2」及び「(Xo
t2n-1+Xot2n+1)×1/4」を整数化させたものと等
価になるように補正していることに他ならない。
【0077】図28(d)に示すように実数型Lifting
演算は畳み込み演算で実現(実装)でき、その後に整数
化演算を行えば良いので、非常に簡単な構成で実現でき
ることになる。
【0078】上記例では2段の整数型Lifting演算を、
2段の実数型Lifting演算と後続する整数化演算に分け
る例を示した。例えば4段の整数型Lifting演算は図2
9に示すように表現できるが、同図を見ると、2つの2
段の整数型Lifting演算A,Bを数珠つなぎ(カスケー
ド接続)にしたものとも考えられるので、それぞれにつ
いて上記の構成に分離させることができるのは明らかで
ある。また、6段、8段についても同様である。
【0079】また、復号化側でも整数型Lifting演算に
ついても、同様の思想で実数型Lifting演算と整数化演
算に分けることができるのは容易に理解でるであろう
し、それが4段、6段、…となっていても同様である。
以下、本実施形態における具体的な例を説明する。
【0080】<第1の実施形態>本発明の第1の実施形
態では、可逆変換が可能な実数型のフィルタ演算を畳み
込み演算で行なう。
【0081】前記5×3フィルタを畳み込み演算で実現
するハード構成は、図7のようになる。この図7の構成
は、5×3フィルタが出力する高域変換係数と低域変換
係数とを交互に出力するものであるため、構成が少し複
雑になる。そこで、高域変換係数のみを演算する構成を
図6(a)に、低域変換係数のみを演算する構成を図6
(b)に示し、それについて説明した後に図7の構成に
ついて説明する。
【0082】図6(a)、(b)の構成は、図3に示す
フィルタ係数から容易に構成できる公知の技術内容であ
るため、簡単に説明する。
【0083】同図において、601はフィルタ処理する
ためのデータを並列に5つ取り出すためのシフトレジス
タ、603、613、615、617、633は加算
器、605、623、625、627は係数を乗算する
乗算器(係数が2のべき乗なので実際はビットシフトの
みで実現できる)、そして、607、635は、減算器
である。
【0084】シフトレジスタ601への入力は8ビット
の整数データ(画素データ)とする。
【0085】図6(a)では、シフトレジスタから出力
される5つのデータの内、3つのみを用いて高域変換係
数を演算する。フィルタ係数が−1/2である2つのデ
ータを、まず加算器603で加算して、それから乗算器
605にて1/2を乗算し減算器607に入力する。一
方、フィルタ係数が1の中央のデータは直接減算器60
7に入力する。該構成によりフィルタ係数[−1/2,
1,−1/2]のフィルタ演算が実現される。
【0086】図6(b)では、シフトレジスタから出力
される5つのデータすべてを演算に用いる。フィルタ係
数が3/4である中央のデータは、乗算器623にて1
/2を乗算した結果と加算器615を経由して乗算器6
25にて1/4を乗算した結果を加算器633で加算す
ることにより、3/4の乗算を実現している。フィルタ
係数が1/4である2つのデータは、加算器613で加
算し、加算器715をとおって前記乗算器625にて1
/4を乗算している。フィルタ係数が−1/8である2
つのデータは、加算器617にて加算して、乗算器62
7にて係数1/8を乗算した後、減算器635に入力し
ている。以上の演算により、フィルタ係数[−1/8,
1/4,3/4,1/4,−1/8]のフィルタ演算が
実現される。上記演算後の出力データは、正のレンジが
広がる上に、負の値になることがあるため、符号1ビッ
トと符号を除く整数部1ビットが増えると供に小数点以
下に3ビットの情報が付く。
【0087】図7の構成は図6(a)と(b)を統合し
て、1サイクル毎に交互に高域変換係数と低域変換係数
を出力するようにしたものである。よって、図7を構成
するユニットは基本的に図6(a)(b)の構成ユニッ
トと同じであり、一部が共用され、一部が追加される。
追加されるユニットは、セレクタ711と713であ
り、共用されるユニットは、加算器603と613、減
算器607と635であり、加算器613と減算器63
5を用いている。
【0088】セレクタ711と713には、画像データ
の入力用のクロック(2分周することで論理highとlow
を偶数、奇数画素データに割り当てることができる)が
それぞれ供給され、各々H側の端子に切り換わると高域
変換係数が出力され、L側の端子に切り換わると低域変
換係数が出力される。出力データの形式は、符号+整数
部10ビット、小数部3ビットである。
【0089】可逆変換可能な実数型のフィルタ演算を行
なう1つの形態である上記構成から得られるデータに対
し、図9に示す補正データ生成部と整数化丸め部とで、
可逆変換可能な整数型のフィルタ処理結果に変換するこ
とで、図28(d)と等価回路が構成できる。
【0090】前記図7の説明と同様、図9の説明も高域
変換係数の処理と低域変換係数の処理に分けて説明す
る。図8(a)が高域変換係数の処理を表わし、(b)
が低域変換係数の処理を表わす。
【0091】図8では、符号+整数部10ビット、小数
部3ビットの3つのデータを並列に3つ取り出すための
シフトレジスタ801を用いる。図8(a)に示す高域
変換係数の処理は、シフトレジスタ801から出力され
る3つデータの中央が高域変換係数(実数値)になるタ
イミングで行なう。
【0092】該中央のデータのみに対して、803の加
算ユニットにて0.5を加算し、805のfloor関
数演算ユニットにて該加算結果を超えない最大の整数値
を求め出力する。この出力は整数化された高域変換係数
である。
【0093】図8(b)に示す低域変換係数の処理は、
シフトレジスタ801から出力される3つデータの中央
が低域変換係数(実数値)になるタイミングで行なう。
【0094】低域変換係数の両側の高域変換係数各々か
ら小数点第1位のビットのみを取り出し、それを加算器
813にて正の値として加算する。結果は、整数部1ビ
ットと小数部1ビットの正の数である。該結果に係数1
/4を乗算器815にて乗算し、小数点第2位と第3位
のデータに変換する。このデータは補正データとして加
算器817にて、低域変換係数(実数値)に加算する。
該加算結果に、加算ユニット819にて0.5を加算
し、floor関数演算ユニット821にて該加算結果
を超えない最大の整数値を求め出力する。これが整数化
された低域変換係数である。
【0095】図9の構成は、図8(a)と(b)の機能
を統合したものであって、1サイクル毎に交互に整数値
の高域変換係数と低域変換係数を出力するようにしたも
のである。よって、図9を構成するユニットは基本的に
図8(a)(b)の構成ユニットと同じであり、一部が
共用され、一部が追加される。共用されるユニットは、
加算ユニット803と819、floor関数演算ユニ
ット805と821であり、追加されるユニットは、ゲ
ートユニット831である。低域変換係数出力時には前
記補正データを有効にし、高域変換係数出力時には前記
補正データをマスクして無効化するように制御する。
【0096】以上説明したように、可逆変換が可能な実
数型のフィルタ演算処理部(図7)と、該演算結果から
補正データを生成し、該補正データを加算後、整数化の
ための丸め処理を行なう処理部(図9)とによって、整
数型Lifting演算を用いずに、可逆変換が可能な整数型
のフィルタ演算処理装置を構成することができる。
【0097】上記構成で、可逆変換可能なフィルタ処理
ができる理由は、次の第2の実施形態で明らかになる。
【0098】<第2の実施形態>第2の実施形態では、
Lifting Schemeを用いて、可逆変換が可
能な実数型のフィルタ演算を行なう。本実施形態では、
前記第1の実施形態を含めた可逆性の説明をするため、
図5に示した順方向フィルタ処理部540から出発し、
構成を少しずつ変形して、本実施形態の構成法を導き出
す。なお、一部図28の説明と重複するが、改めて説明
することとする。
【0099】図5の順方向フィルタ処理部540から遅
延ユニットと間引きユニットを除き、Lifting演
算部のみを残した構成を図10(a)に示す。図10
(a)からfloor関数演算ユニット501、503
と加算ユニット502を、それぞれ減算器109、加算
器113の入力側から出力側に移動すると、図10
(b)のようになる。同図において、1001は、入力
データに等しいかそれ以上の最小の整数値を出力するc
eiling関数演算ユニットである。
【0100】図10(a)から図10(b)への変換に
際し、以下の関係式を利用する。 N+floor(R+0.5)=floor(N+R+0.5) (5) N−floor(R)=ceiling(N−R) (6) 上記式においてNは整数値、Rは実数値である。(5)
(6)式の関係は、最初に説明した内容から容易に理解
できよう。
【0101】Lifting係数pの要素は−1/2で
あるため、上記(5)式における実際の実数値は、小数
点以下が1ビットしかない。よって、celing関数
演算ユニットに入力されるデータは整数値か、整数値+
0.5のいずれかである。入力データが整数値の場合に
は該入力データがそのまま出力データとなり、入力デー
タが整数値+0.5の場合には該入力データに0.5を
加算した値が出力データとなる。どちらの場合も、入力
データの小数点第1位のビットのみを、該入力データに
加算して得られる結果と同じである。
【0102】そこで、図10(b)は、図10(c)の
ように変形できる。図10(c)において1003は、
減算器109の出力データに、該データの最下位ビット
(以下、LSBと称す)である小数点第1位のビットの
みを加算する1ビット加算器である。乗算器111は、
該加算結果に対してLifting係数を乗算するの
で、ここに四則演算に関する分配則を適用して、図10
(c)を図11(a)のように変形することができる。
【0103】分配法則を適用することにより、新たな乗
算器1103と加算器1105が必要となる。これら乗
算器と加算器は、減算器109の出力データのLSBデ
ータのみに対してLifting演算を行なうものであ
る。この図11(a)において、実数型のLiftin
g演算部と、整数化のためのその他の演算に分離でき
た。破線1101の左側が実数型のLifting演算
部で、右側が整数化のための演算部である。実数型のL
ifting演算結果は同図の減算器109と加算器1
13から出力される。図11(a)は第2の実施形態の
1つの構成である。
【0104】前記実数型のLifting演算部を、前
記畳み込み演算処理部並びに変換係数を高域変換係数と
低域変換係数とに分ける変換係数分離部に置き換えて
も、図10(a)と同じ機能を実現できる。図11
(a)のままでは、前記第1の実施形態との関係が不明
確である。そこで図11(a)を図11(b)に変形す
る。
【0105】1102は502と同じ0.5を加算する
加算ユニット、1103は503と同じfloor関数
演算ユニットである。小数点第2位以下の情報がない実
数値の場合、実数値の小数点第1位のビットを該実数に
加算するということは、該実数値に0.5を加算してf
loor関数を求めることと等価である。よって、この
ように変形できる。
【0106】図11(b)の構成は、実数型の可逆フィ
ルタ処理を行なう第1のLifting演算部(破線の
左側)と、該演算結果の一部のビットデータのみをLi
fting演算処理する第2のLifting演算とか
ら成ると考えることが出来る。
【0107】図11(b)の破線の左側の機能は、前記
第1の実施形態における図7の機能と同じで、実数型の
5×3フィルタの演算を行なう。高域変換係数と低域変
換係数を分けて出力するか、1サイクル毎に交互に出力
するかの違いはあるが、出力する演算結果は同じであ
る。
【0108】図11(b)の破線の右側の機能は、前記
第1の実施形態における図9の機能と同じで、2つの高
域変換係数(実数値)の小数点第1位のビットを1/4
倍して低域変換係数に加算した後、該低域変換係数と高
域変換係数それぞれに0.5を加算してfloor関数
を求め出力する。
【0109】この図11(b)の構成は、整数型の可逆
フィルタ処理が可能な図10(a)を等価に変形したも
のであるから、図11(b)の構成で整数型の可逆フィ
ルタ処理が可能なのは言うまでもない。また、第1の実
施形態における2つの処理部(図7、図9)によって実
現される機能は、この図11(b)の機能と同じである
ため、第1の実施形態で整数型の可逆フィルタ処理が可
能であることが示せた。
【0110】<図9の変形例>第1の実施形態における
2つの処理部(図7、図9)の機能が、図11(b)の
機能と同じであることが言えたので、図9をさらに簡易
な構成に変形することが出来る。
【0111】図9における加算ユニット819の入力デ
ータは、図11(b)における2つの加算ユニット50
2と1102の両方の入力データを多重化したものであ
る。加算ユニット1102の入力データは、Lifti
ng係数p=(−1/2、−1/2)であることから、
小数点以下は1ビットしかないことが容易に分かる。
【0112】しかし、加算ユニット502の方は、図1
1(b)の構成を見る限り、小数点以下に3ビットの情
報を持つデータが入力されてくると考えられる。図9の
構成を見ても同様である(小数点以下1ビットの実数デ
ータに1/4を掛けると小数点以下3ビットの実数デー
タになるため)。
【0113】ところで、図11(b)は、図10(b)
と等価であり、加算ユニット502に入力されるデータ
は、どちらの図でも同じである。その図10(b)で
は、整数値に1/4を掛けたデータと他の整数値の和
が、該加算ユニット502に入力されるので、小数点以
下2ビットのデータとなる。
【0114】よって、図11(b)の加算ユニット50
2に入力されるデータの小数点第3位のビットはいつも
“0”である。この小数点第3位のビットを“1”に変
えても演算結果にはまったく影響は無い。なぜなら、f
loor関数演算ユニット503によって、必ず切り捨
てられるからである。よって、加算ユニット502の前
段の加算器1105において1/8を自由に加算するこ
とが許される。
【0115】そこで、高域変換係数の小数点第1位のビ
ットに対するLifting係数を(1/4,1/4)
から(1/4,1/2)あるいは(1/2,1/4)に
変更することを考えてみる。この場合問題になるのは、
係数1/2に対応する小数点データが“1”になった時
である。本来の計算結果1/2(小数第1位の値)×1
/4(係数)=1/8が1/2×1/2=1/4となっ
て、結果が1/8大きくなる。これは1/8を加算した
ことと同じである。
【0116】整理すると、係数1/2に対応する小数点
データが“0”の時は、係数変更前と同じ計算結果とな
り、係数1/2に対応する小数点データが“1”の時
は、係数変更前の計算結果に1/8を加算した結果とな
る。この1/8は前述した自由に加算することが許され
る値であるので、結局、上記Lifting係数の変更
は問題無いことが分かる。
【0117】これにより、図9は、図12のように変更
することが可能となる。
【0118】シフトレジスタ801から出力される3つ
データの中央が低域変換係数の時に、左右から出力され
る高域変換係数の小数点第1位のビットの一方を1/2
倍し、もう一方を1/4倍する。それぞれ重みが異な
り、前者は小数点第2位、後者は小数点第3位のビット
データとなるので、加算器を用いずとも前記2つのビッ
トを並べるだけで加算したことになる。この2ビットの
信号をゲートユニット831に入力し、低域変換係数出
力時には該入力信号を有効にし、高域変換係数出力時に
はマスクして無効化する。このゲートユニットの出力
に、図9の加算ユニット803で加算していた0.5を
小数点第1位のビットとして付加して3ビットにした
後、加算器817に入力して、シフトレジスタ801の
中央から出力される低域変換係数(実数値)に加算す
る。そして、floor関数演算ユニットにて整数に変
換し出力する。この構成で図9と同じ出力結果が得られ
る。
【0119】<第3の実施形態>第3の実施形態では、
前記第2の実施形態と対をなす逆変換側の構成を示す。
第2の実施形態と同様、図5における逆方向フィルタ処
理部550から遅延ユニットとゼロ挿入ユニットを除
き、Lifting演算部のみを残した構成を図13
(a)に示す。図13(a)からfloor関数演算ユ
ニット505、507と加算ユニット504を、それぞ
れ減算器213、加算器209の入力側から出力側に移
動すると、図13(b)のようになる。同図において、
1301は、減算器213の出力から0.5を減算する
減算ユニット、1303は、celing関数演算ユニ
ットである。
【0120】図13(a)から図13(b)への変換に
際し、以下の関係式を利用する。 N−floor(R+0.5)=ceiling((N−R)−0.5) (7) N+floor(R)=floor(N+R) (8) 上記式においてNは整数値、Rは実数値である。(7)
(8)式の関係は、どちらも自明の関係にあることはこ
れまでの説明から明らかであろう。
【0121】Lifting係数pの要素は1/4であ
るため、上記(7)式における実数値とは、小数点以下
が2ビットの実数である。よって、減算器213から出
力されるデータを2進表示の小数部と整数値で表わす
と、整数値+0.002、整数値+0.012、整数値+
0.102、整数値+0.112 のいずれかである。そ
れぞれの出力に対して、減算ユニット1301の出力、
celing関数演算ユニット1303の出力の小数部
がどのように変化するかを小数部2桁のみ以下に示す。 小数部 演算ユニット出力 celing関数出力 00 → 10 → 00 (±0.00) 01 → 11 → 00 (−0.01) 10 → 00 → 00 (−0.10) 11 → 01 → 00 (+0.01) 上記かっこ内の値は、減算ユニットとceling関数
演算ユニットを通すことによって増減する値を2進表現
したものである。
【0122】該増減値は、減算器213から出力される
データの小数部2ビットの2の補数を求めその上位ビッ
トをサインビットに拡張することで得られる。各ビット
パターンに対してどうなるかを以下に示す。 00 → 00(2の補数) → 000 (±0.00) 01 → 11(2の補数) → 111 (−0.01) 10 → 10(2の補数) → 110 (−0.10) 11 → 01(2の補数) → 001 (+0.01) サインビット拡張した3ビットデータの最上位をサイン
ビット、下位2ビットを小数部のデータとして解釈する
とかっこ内に示す値と一致する。
【0123】よって、図13(b)における減算ユニッ
ト1301とceiling関数演算ユニット1303
によって変化する数値(上記増減値)は、2の補数演算
とサインビット付加処理よって生成することが可能であ
り、減算器213の出力に該生成値を加算することによ
り、図13(b)におけるceiling関数演算ユニ
ットの出力値と同じ値と得ることが可能である。その構
成を図13(c)に示す。
【0124】同図において、1311は減算器213か
ら出力される実数値の小数点以下2ビットを入力とし、
該2ビットの2の補数を演算する補数演算ユニット、1
313は該補数演算ユニットから出力される2ビットデ
ータの上位ビットをサインビットとして付加するサイン
ビット付加ユニット、1315は前記サインビット付加
ユニットの出力を減算器213の出力値に加算する加算
器である。
【0125】このような変換をする理由は、1段目の整
数型のLifting演算を、実数型のLifting
演算と補正値の演算とに分解するためである。そして、
次のLifting演算との間に四則演算に関する分配
則を適用して図14(a)のように変形する。
【0126】この図14(a)において、実数型のLi
fting演算部と、整数化のための演算に分離でき
た。同図における破線1401の左側が実数型のLif
ting演算部になり、右側が整数化のための演算部に
なる。実数型のLifting演算結果は同図の減算器
213と加算器209から出力される。
【0127】図14(a)は第3の実施形態の構成の1
つである。実数型のLifting演算部は、畳み込み
演算を用いたフィルタ演算部に置き換えることが可能で
ある。
【0128】ここで、図14(a)の加算器1315の
出力を、同じ出力値である図13(b)のceilin
g関数演算ユニットの出力に戻って考える。小数点以下
2ビットの実数値から0.5を減算してそのceili
ng関数を求めるということは、該実数値に0.25を
加算してfloor関数を求めるのと等価である。どち
らも小数部が0.75の時のみ整数部の値が1つ増加す
るが、小数部が0.00,0.25,0.50の場合は
整数部の値が変わらない。
【0129】よって、図14(a)を図14(b)のよ
うに変形することができる。図14(b)において、1
411は、0.25を加算する加算ユニット、1313
はfloor関数演算ユニットである。図14(a)で
はLifting演算構成とは言えなかった整数化演算
部を、図14(b)のように変形することによって、L
ifting演算構成の整数化演算部にすることができ
た。これも本実施形態の1つの構成である。
【0130】また、整数化演算部Lifting演算の
歩数演算ユニット1311とサインビット付加ユニット
1313を、小数点以下2ビットのデータを入力とする
デコーダ1421に置き換えた図14(c)の構成も考
えられる。該デコーダの変換機能は補数演算ユニット1
311とサインビット付加ユニット1313によるデー
タ変換機能と同一であるのが基本であるが、以下に説明
するように、必ずしも同一である必要は無い。
【0131】前記図12の構成で説明したように、整数
化演算部のLifting演算加算器1405には余分
に加算しても無視される値があるため、図14(c)の
デコーダの出力も若干の自由度がある。具体的には、2
段目のLifting係数が(1/2、1/2)である
ため、0.375を余分に加算してもfloor関数演
算時に切り捨てられて無視される。この任意に加算が許
される値を利用して、例えば一例として下記のような入
力と出力のデコーダを使うことができる。 ・入力(2ビット) ・出力 10進表示(2進補数表示の小数データ) 00 +0.25(0.01) 01 −0.25(1.11) 10 −0.25(1.11) 11 +0.25(0.01) 上記出力は、前述の補数ユニットとサインビット付加ユ
ニットを用いて求められる値に対して、“00”入力と
“10”入力時に0.25(10進表示)を加算したも
のである。上記デコーダは出力値が2種類しかなく、入
力2ビットの排他的論理和演算の結果に依存するのみな
ので極めてシンプルなデコーダにすることができる。
【0132】<第4の実施形態>第4の実施形態は、前
記第1の実施形態に対応する逆変換フィルタ演算部の構
成を示す。逆変換フィルタのフィルタ係数は図3に示し
てある。G0係数のフィルタ構成は図15(a)に示す
構成となり、G1係数のフィルタ構成は図15(b)に
示す構成となる。図15(a)(b)2つのフィルタ機
能を1サイクル毎に切り替えて実現するフィルタ構成は
図16のようになる。これらのフィルタ構成は、対応す
るフィルタ構成である図6(a)(b)、図7とフィル
タ係数が異なるだけで、動作はまったく同じなので、説
明は省略する。
【0133】図16の構成で実数演算した逆変換フィル
タ結果は、図17に示す整数化演算部にて整数化する。
【0134】図17において、1701は、図16の実
数型の逆変換フィルタ処理したデータを並列に3つ取り
出すためのシフトレジスタ、1703、1705は小数
点以下2ビットのデータから補正データの一部を生成す
るデコーダ、1707は上記2つのデコーダ出力を加算
する加算器、1709は上記加算器の出力にLifti
ng係数を乗算する乗算器である。また、1711は処
理するフィルタ係数がG0の時に右側を選択し、G1の
時に左側を選択するセレクタ、1713は実数型の逆変
換フィルタ処理したデータに補正データを加算する加算
器、1715はfloor関数演算ユニットである。
【0135】前記フィルタ係数G0に対応する演算の時
には、セレクタ1711にて4ビットデータ0.010
(十進表示では0.25)を選択して、加算器1713
にてシフトレジスタ1701の中央出力データに加算す
る。
【0136】前記フィルタ係数G1に対応する演算の時
には、シフトレジスタ1701の両端出力データの各々
の小数点以下2ビットのデータをデコーダ1703,1
705に入力し、サインビット付きの小数点以下2ビッ
トデータ0.01か1.11を各々のデコーダから出力
する。これを加算器1707にて足し合わせた後、乗算
器1709にてLifting係数1/2を乗算し、セ
レクタ1711にて選択して、加算器1713にてシフ
トレジスタ1701の中央の出力データに加算する。
【0137】この構成は、Lifting演算形式の図
14(c)の整数化演算部を畳み込み演算形式に変形し
たものであり、機能的に図14(c)と同じである。よ
って、図14(c)が持つ、逆変換としての可逆性を当
然もっており、図17から出力される整数値は元のデー
タと完全に一致する。
【0138】<第5の実施形態>上記第1〜第4の実施
形態では、実数型の可逆フィルタ演算を行なった後、そ
れを整数化することで、整数型の可逆フィルタ演算を行
なっていたが、第5の実施形態では、実数型の可逆フィ
ルタ演算を経ないで、直接、整数型の可逆フィルタ演算
を行なう。
【0139】言い方を変えると、第1〜第4の実施形態
では実数型の可逆フィルタを前段に配し、該フィルタ出
力を整数型の可逆フィルタに変換する変換部を後段に配
した縦続接続の構成であった。それに対し、第5の実施
形態では実数型の可逆フィルタの演算と並行して整数化
のための補正データを生成する並列処理型の構成とな
る。
【0140】本実施形態の構成を図18と図19に示
す。図18は順方向変換のフィルタ構成で、図19は逆
方向変換のフィルタ構成である。
【0141】図18の構成は、ある関係を利用して前記
図12の構成を図7に合体したものである。ある関係と
は、“高域変換係数の小数点第1位のビットは該変換係
数位置の両側の入力データ(整数)のLSB間の排他的
論理和に等しい”である。この関係は、5×3フィルタ
の高域変換係数の定義式から明らかである。図18にお
ける1801と1803は、前記LSB間の排他的論理
和を演算する論理演算ユニットである。
【0142】これにより、前記補正データ(実数型の可
逆フィルタ演算結果を整数化するために加算するデー
タ)を入力データから直接演算することが出来るので、
前記第1の実施形態のように(シフトレジスタを2個使
用した)2段構成にすることなく、図18のように1段
で構成できる。
【0143】補正データの小数点第2位と第3位の演算
方法は他にもある。シフトレジスタ601の両端のデー
タのLSB間で排他的論理和演算した結果を小数点第3
位とし、該2つのLSBのどちらか一方とシフトレジス
タ601の中央のデータのLSB間で排他的論理和演算
し、該演算結果が"1"かつ前記小数点第3位が"0"の時
に小数点第2位を"1"にする論理回路を設ける構成でも
よい。この構成による補正データは余分な値を加算しな
いので、図18の補正データとは少し異なる。さらなる
変形も考えられるが、これ以上は省略する。ようするに
補正データの生成方法だけに着目しても、何通りもの方
法があるということである。
【0144】本構成においても、減算器635の出力を
取り出すことで、実数型の可逆フィルタ演算結果を得る
ことができる。
【0145】図19の構成は、図16の構成に図17の
構成を合体したものである。ここでは、G1フィルタ処
理時に図17のデコーダに入力する2ビットの小数点デ
ータ2組を演算するため、2ビット加算器1903と1
905を用いる。
【0146】G0フィルタ処理位置の小数点以下2ビッ
トのデータは、該G0フィルタ処理位置の両側2サンプ
ル、すなわち、G1フィルタ処理位置データ2つの下位
2ビットから演算できる。具体的には、該2つの下位2
ビットデータを加算して、キャリーを出力を除いた下位
2ビット出力の2の補数が、前記G0フィルタ処理位置
の小数点以下2ビットのデータとなる。この2ビットの
データは、先の図14(a)(b)(c)によるとさら
に2の補数に変換されるので、また元の値に戻ることに
なる。よって、加算器1903と1905出力の下位2
ビットは、前記図14(a)(b)(c)において2の
補数変換した値と同じになる。該下位2ビットと補正値
(10進表示)の間には、以下の関係がある。 ・下位2ビット ・補正値 ・下記修正後 00 → ±0.00 → +0.25 01 → +0.25 → +0.25 10 → −0.50 → −0.25 11 → −0.25 → −0.25 ここで、前記任意に加算できる値の範囲で補正値を修正
する。具体的には、下位2ビットが“00”と“10”
の場合に、それぞれ0.25をプラスする。そうする
と、下位2ビットの上位ビットのみによって、修正後の
補正値を決定できることになる。具体的には、下位2ビ
ットの上位ビットの値が"0"の時の補正値を+0.25
とし、"1"の時の補正値を−0.25とする。
【0147】よって、加算器1903、1905から出
力するデータからキャリーとLSBを除いた、LSBか
ら2番目のビットのみをデコーダ1901に入力するだ
けでよい。この他に処理するフィルタの種類(G0/G
1)を表わす制御信号を入力すれば、該3ビットのデー
タから合算補正データをデコードして生成することがで
きる。
【0148】フィルタの種類を表わす制御信号とLSB
から2番目のビット×2個から生成する合算補正データ
を以下に示す。 ・G0/G1 ・LSBから2番目のビット×2 ・合算補正データ G0 任意 +0.25 G1 00 +0.25 G1 01 ±0.00 G1 10 ±0.00 G1 11 −0.25 上記補正データは、デコーダ後段のLifting係数
乗算用の乗算器を省略するため、Lifting係数込
み(1/2乗算済み)の補正データとした。例えばフィ
ルタの種類がG1で、LSBから2番目のビットが2つ
とも"0"の場合、2つの補正値はそれぞれ+0.25と
なり、それを足し合わせて1/2倍した値は+0.25
となる。該合算補正データを、実数演算したフィルタ処
理結果である減算器1535の出力に加算した後、小数
点以下を取り除いたfloor関数値を出力すれば、変
換前の元のデータが復元される。
【0149】以上で説明したフィルタ処理装置、逆フィ
ルタ処理装置における各処理の内容は、コンピュータ上
のソフトウェア処理でも実現できるものである。以下に
ソフトウェア処理で実現する場合について説明する。
【0150】<第6の実施形態>前記第1〜第5の実施
形態はハードウェアによるフィルタ処理装置に関するも
のであった。これ以降は、フィルタ処理をソフトウェア
で実装する例を説明する。
【0151】従来は、整数型の可逆フィルタ演算処理を
実現するには、整数型のLifting演算を用いる必
要があった。本発明では、整数型のLifting演算
を用いずに、固定小数点型のフィルタ演算処理と整数化
丸め演算処理とを用いて、整数型の可逆フィルタ処理を
実現するものである。
【0152】図20に示すフローチャートは、固定小数
点型のフィルタ演算処理として畳み込み演算を用いたも
ので、各ステップで処理対象となるデータをすべて一括
処理する場合のフローチャートである。処理するデータ
は、X0,X1,,,XM-2,XM-1のM個(偶数)のデー
タとする。
【0153】同図において、ステップ2001にてパデ
ィング処理を行なう。パディング処理とは、データが無
い(定義されていない)X-2、X-1、XM、XM+1といっ
たデータにあるデータを代入する処理である。
【0154】一般的に行なわれる方法では、全データの
両端のデータを単純にコピーしてデータの拡張を行なう
ことにより、演算上必要な座標位置のデータを生成す
る。少し工夫した方法として、データの両端の境界部で
データを折り返しコピー(鏡像)する方法もある。
【0155】次のステップ2003では、偶数系列のデ
ータに対応する低域変換係数を図3に示すフィルタ係数
H0を用いて固定小数点演算する。この演算におけるL
SBの重みは0.125となる。ステップ2005で
は、奇数系列のデータとn=−1に対応する高域変換係
数を同じく図3に示すフィルタ係数H1を用いて固定小
数点演算する。この演算におけるLSBの重みは0.5
となる。
【0156】ステップ2007において、上記演算した
高域変換係数のLSBデータのみを取り出し、ステップ
2009において、該LSBデータを補正データとして
加算すると共に0.5を加算して3ビット右シフトす
る。該シフト処理は、小数点を右端に移動して固定小数
点を整数化するものである。
【0157】ステップ2011において、固定小数点の
高域変換係数に0.5を加算した後、1ビット右シフト
して整数化を行なう。以上の計算で得られた整数の低域
変換係数と高域変換係数は、整数型の可逆フィルタ処理
した結果となる。
【0158】<第7の実施形態>図20は、各ステップ
で処理対象となるデータをすべて一括処理する場合のフ
ローチャートであったが、各ステップでの処理を式1つ
の演算のみにして、ステップ2003〜2011をルー
プ状に何度も繰り返し処理することで全データを処理す
るようにした場合は、図21に示すフローチャートにな
る。
【0159】同図において、ステップ2101は、前記
図20におけるステップ2001と同じパディング処理
を行なう。ステップ2103は初期設定処理でn=0に
設定する。ステップ2105にて、1つ目の低域変換係
数を演算するのに必要な2つのLSBデータの一方をあ
らかじめ計算しておく。
【0160】ステップ2107、2109、2111、
2113,2115,2117、2119からなるルー
プ処理をn=0からn=M/2−1まで行なう。ステッ
プ2107は低域変換係数の固定小数点演算、ステップ
2109は高域変換係数の固定小数点演算、ステップ2
111は高域変換係数のLSBデータの取り出し、ステ
ップ2113は固定小数点の低域変換係数を整数化、ス
テップ2115は固定小数点の高域域変換係数を整数
化、するものである。
【0161】ステップ2117にて全データの変換が終
了したかどうかをnの値から判定して、終了していなけ
れば、ステップ2119にてnの値を1つ大きくして、
上記演算処理を繰り返し行なう。ステップ2117にて
全データの変換が終了したと判定されれば、変換処理は
終了(ステップ2121)する。
【0162】<第8の実施形態>図22に示すフローチ
ャートは、前記図21における固定小数点型の畳み込み
演算フィルタ処理を、固定小数点型のLifting演
算フィルタ処理に置き換えたものである。よって、前記
図21における大部分の処理ステップをそのまま引き継
ぎ、ステップ2107のみをLifting演算に対応
する処理に置き換える。
【0163】新たなステップ2201はLifting
演算に基づいて低域変換係数を固定小数点演算するもの
で、ステップ2109で演算する固定小数点の高域変換
係数を利用するため、ステップ2201はステップ21
09の後で処理を行なう。その他は前記図21と同じな
ので説明を省略する。
【0164】前記図20における固定小数点型の畳み込
み演算フィルタ処理を、固定小数点型のLifting
演算フィルタ処理に置き換えたものは容易に類推でき
る。以下では、ループ処理のみについて各種処理のフロ
ーチャートを示す。
【0165】<第9の実施形態>固定小数点型の畳み込
み演算フィルタ処理を行ない、入力データの一部のビッ
ト情報に基づいて補正データを生成する場合のフローチ
ャートを図23に示す。このフローチャートの処理は前
記図18に対応するが若干の相違がある。その相違と
は、図18における2つの排他的論理和ユニットから出
力する信号に乗算する係数を、本フローチャートでは同
じ係数値(1/8)にそろえたということである。
【0166】ハードウェアでは、乗算係数を変えること
によりビットの重みが異なると加算演算が不要になると
いうメリットがあるが、ソフト処理ではかえって処理が
増加することになるので、本来の乗算係数である1/8
を用いる。
【0167】本フローチャートも大枠は図21のフロー
チャートと同じである。図21から変更となる演算ステ
ップは、ステップ2105、2111,2113の3つ
であり、該3つのステップをそれぞれ、ステップ230
1、2303、2305に置き換える。
【0168】ステップ2301では、補正データの演算
に必要な偶数系列データのLSBをあらかじめ2つ取り
出しておく。ステップ2303で該LSBデータをさら
に1つ取り出し、ステップ2305で、計3つのLSB
データを用いてビット間の排他的論理和演算を行なって
補正データを演算し、固定小数点の低域変換係数に加算
する。補正データの演算に用いる3つのLSBデータの
内、2つのLSBデータは次の処理ループでも使用す
る。その他の処理は図21と同じである。
【0169】<第10の実施形態>上述した順方向の可
逆フィルタ処理に対して、それぞれ逆フィルタ処理が存
在する。図21に対応する逆フィルタ処理のフローチャ
ートを図24に示す。
【0170】同図において、ステップ2401のパディ
ング処理では、未定義の変換係数H -1、LM、HM+1に他
の変換係数を代入する。ステップ2403ではテーブル
設定を行なう。このテーブルは、前記第4の実施形態
(図17)におけるデコーダに対応する機能をソフトウ
ェアで実現するものである。Lifting演算係数を
あらかじめ乗算し、固定小数点演算の小数点位置を考慮
した値をテーブルに格納しておく。
【0171】ステップ2405にて、最初の奇数系列サ
ンプルを演算するのに必要な2つのLSB側2ビットデ
ータ(LSBT)の一方をあらかじめ計算しておく。前
記計算の途中演算結果を用いて、ステップ2407にて
0のみを先行して計算する。
【0172】ステップ2411、2413、2415、
2417、2419、2117、2119からなるルー
プ処理をn=0からn=M/2−1まで行なう。ステッ
プ2411は奇数系列サンプルの固定小数点演算、ステ
ップ2413は偶数系列サンプルの固定小数点演算、ス
テップ2415は偶数系列サンプルのLSB2ビットデ
ータの取り出し、ステップ2417はテーブルを用いて
固定小数点の奇数系列サンプルデータを整数化、ステッ
プ2419は固定小数点の偶数系列サンプルデータを整
数化、するものである。
【0173】<第11の実施形態>図25に示すフロー
チャートは、前記図24における固定小数点型の畳み込
み演算フィルタ処理を、固定小数点型のLifting
演算フィルタ処理に置き換えたものである。よって、前
記図24における大部分の処理ステップをそのまま引き
継ぎ、ステップ2411のみをLifting演算に対
応する処理に置き換える。
【0174】新たなステップ2501はLifting
演算に基づいて奇数系列サンプルデータを固定小数点演
算するもので、ステップ2413で演算する固定小数点
の偶数系列サンプルデータを利用するため、ステップ2
501はステップ2413の後で処理を行なう。その他
は前記図24と同じなので説明を省略する。
【0175】<第12の実施形態>固定小数点型の畳み
込み演算フィルタ処理を行ない、変換係数入力データの
一部のビット情報に基づいて補正データを生成する場合
のフローチャートを図26に示す。このフローチャート
の処理は前記図19に対応するが若干の相違がある。そ
の相違とは、図19における2つの加算器1903、1
905から出力する2つの信号を1つのデコーダに入力
しているが、本フローチャートではテーブルで2つの信
号を独立に変換するということである。
【0176】ハードウェアでは、ビットの連結処理は配
線のみで実現できるが、ソフト処理ではビットの重み
(位置)をずらして論理和ビット演算を行なう必要があ
るため、各々の2ビットデータからテーブルを参照する
ようにした。
【0177】また、本実施形態におけるテーブルの内容
は、前記第10、第11の実施形態におけるテーブルの
内容とも少し異なり、添え字が補数の関係にある。
【0178】本フローチャートも大枠は図24のフロー
チャートと同じである。図24から変更となる演算ステ
ップは、ステップ2405とステップ2415のみであ
り、該ステップがステップ2601とステップ2603
に置き換わる。ステップ2601及び2603では、補
正データの演算に必要な2ビットデータを、入力データ
中の2つの高域変換係数あるいはパディング処理した高
域変換係数を加算して下位2ビットを論理積ビット演算
で取り出す。
【0179】第6〜12の実施形態において、正確に演
算内容を理解されるように、浮動小数点演算を用いず、
固定小数点演算で記述したが、これらの固定小数点演算
は浮動店小数演算に置き換えることが可能であることは
容易に想像がつく。一般的に浮動小数点演算で心配され
るのは、10進の小数で表わされたデータを2進数表示
に変換する際に発生する変換誤差と、演算の繰り返しに
よる前記誤差の蓄積である。上記実施形態においては、
そのような変換誤差は発生しないので、固定小数点演算
と同じ結果を得ることが出来る。
【0180】以上で説明した各種フィルタ処理装置とフ
ィルタ処理方式は、1次元データに対する処理であった
が、該処理を2次元の画像データに対して、水平方向と
垂直方向に2回処理することにより、2次元フィルタ処
理を行なうフィルタ処理装置及びフィルタ処理方式も当
然本発明の範疇に属するものである。
【0181】以上説明したように本実施形態によれば、
可逆変換が可能な実数型のフィルタ演算を行なうフィル
タ処理手段と、補正データを生成する手段と、整数化す
る丸め手段とを有することにより、整数型の可逆フィル
タ処理装置を実現することが可能になると共に、実数型
のフィルタ演算結果と整数型の可逆フィルタ演算結果を
同時に得ることが可能となった。
【0182】また、可逆変換が可能な実数型のフィルタ
演算を行なうフィルタ処理工程と、補正データを生成す
る工程と、整数化を行なう丸め処理工程とを有すること
により、整数型の可逆フィルタ処理方法を実現すること
が可能になると共に、実数型のフィルタ演算結果と整数
型の可逆フィルタ演算結果を同時に得ることが可能とな
った。
【0183】更に、可逆変換が可能な実数型のフィルタ
演算を行なう第1のLifting演算手段と、該演算
手段から出力される実数データを整数データに変換する
第2のLifting演算手段とを有することにより、
整数型の可逆フィルタ処理装置を実現することが可能に
なると共に、実数型のフィルタ演算結果と整数型の可逆
フィルタ演算結果を同時に得ることが可能となった。
【0184】可逆変換が可能な実数型のフィルタ演算を
行なう第1のLifting演算工程と、該演算工程に
より得られる実数データを整数データに変換する第2の
Lifting演算工程とを有することにより、整数型
の可逆フィルタ処理方法を実現することが可能になると
共に、実数型のフィルタ演算結果と整数型の可逆フィル
タ演算結果を同時に得ることが可能となった。
【0185】なお、上記実施形態での説明から明らかな
ように、本発明はパーソナルコンピュータ等の汎用の情
報処理装置で実行するコンピュータプログラムとしても
実装できる。また、コンピュータプログラムを装置に組
み込むには、フロッピー(登録商標)ディスクやCDR
OM等のコンピュータ可読記憶媒体をセットし、装置内
(ハードディスク等)にコピーもしくはインストールす
ることで実現できるものであるから、本発明はかかるコ
ンピュータ可読記憶媒体をもその範疇とするものであ
る。
【0186】
【発明の効果】以上説明したように本発明によれば、J
PEG2000におけるウェーブレット変換等に適用で
き、可逆性を有しながらも畳み込み演算により実装する
ことが可能になる。
【図面の簡単な説明】
【図1】順方向のLifting Schemeを表現
した図である。
【図2】逆方向のLifting Schemeを表現
した図である。
【図3】5×3フィルタの係数を示す図である。
【図4】5×3フィルタのLifting係数を示す図
である。
【図5】可逆の順方向フィルタ処理部と逆方向フィルタ
処理部の構成を示す図である。
【図6】畳み込み演算で高域変換係数を演算する構成と
低域変換係数を演算する構成を示す図である。
【図7】畳み込み演算で高域変換係数と低域変換係数を
選択的に演算する構成を示す図である。
【図8】固定小数点演算された高域変換係数を整数化す
る構成と低域変換係数を整数化処理する構成を示す図で
ある。
【図9】本発明の第1の実施形態の構成を示した図であ
る。
【図10】整数型可逆5×3フィルタのLifting
演算部の構成と該構成の等価な変形例を示した図であ
る。
【図11】本発明の第2の実施形態の構成と変形例を示
した図である。
【図12】本発明の第1の実施形態の変形例を示した図
である。
【図13】整数型可逆5×3フィルタの逆変換フィルタ
のLifting演算部の構成と該構成の等価な変形例
を示した図である。
【図14】本発明の第3の実施形態の構成と変形例を示
した図である。
【図15】低域変換係数の逆フィルタ演算を行なう構成
と、高域変換係数の逆フィルタ演算を行なう構成を示す
図である。
【図16】低域変換係数と高域変換係数の逆フィルタ演
算を交互に行なう構成を示す図である。
【図17】本発明の第4の実施形態の構成を示した図で
ある。
【図18】本発明の第5の実施形態の1つの構成を示し
た図である。
【図19】本発明の第5の実施形態のもう1つの構成を
示した図である。
【図20】本発明の第6の実施形態であるフローチャー
トを示した図である。
【図21】本発明の第7の実施形態であるフローチャー
トを示した図である。
【図22】本発明の第8の実施形態であるフローチャー
トを示した図である。
【図23】本発明の第9の実施形態であるフローチャー
トを示した図である。
【図24】本発明の第10の実施形態であるフローチャ
ートを示した図である。
【図25】本発明の第11の実施形態であるフローチャ
ートを示した図である。
【図26】本発明の第12の実施形態であるフローチャ
ートを示した図である。
【図27】整数型Lifting演算のブロック図である。
【図28】図27の整数型Lifting演算を、本発明の構
成に導くための遷移図である。
【図29】4段Liftingの構成を示す図である。
【図30】実施形態における画像符号化装置と復号化装
置のブロック構成図である。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04N 7/30 H04N 7/133 Z Fターム(参考) 5B057 CE06 CG01 CH08 CH09 5C021 PA32 PA66 PA67 PA73 PA87 XB11 YC08 YC09 5C059 MA00 MA24 MC11 SS20 UA02 UA11 UA17 5C078 AA04 BA53 CA25 DA00 DA01

Claims (35)

    【特許請求の範囲】
  1. 【請求項1】 可逆変換が可能な実数型のフィルタ演算
    を行なうフィルタ演算処理手段と、該演算結果を整数化
    するための丸め処理手段とを有し、可逆変換可能な整数
    型のフィルタ演算処理を実現することを特徴とするフィ
    ルタ処理装置。
  2. 【請求項2】 前記可逆変換が可能な実数型のフィルタ
    演算を行なうフィルタ演算処理手段において、畳み込み
    演算を用いることを特徴とする請求項第1項記載のフィ
    ルタ処理装置。
  3. 【請求項3】 前記可逆変換が可能な実数型のフィルタ
    演算を行なうフィルタ演算処理手段において、Lift
    ing演算を用いることを特徴とする請求項第1項記載
    のフィルタ処理装置。
  4. 【請求項4】 前記演算結果を整数化するための丸め処
    理手段において、該演算結果の一部のビット情報に基づ
    いて補正データを生成することを特徴とする請求項第1
    項乃至第3項のいずれか1項に記載のフィルタ処理装
    置。
  5. 【請求項5】 前記演算結果の一部のビット情報は小数
    点以下のビット情報であることを特徴とする請求項第4
    項記載のフィルタ処理装置。
  6. 【請求項6】 前記演算結果を整数化するための丸め処
    理手段において、入力データの一部のビット情報に基づ
    いて補正データを生成することを特徴とする請求項第1
    項乃至第3項のいずれか1項に記載のフィルタ処理装
    置。
  7. 【請求項7】 可逆変換が可能な実数型のフィルタ処理
    を行なう第1のLifting演算手段と、該演算結果
    の一部のビットデータのみをLifting処理する第
    2のLifting演算手段とを有し、可逆変換が可能
    な整数型のフィルタ演算処理を実現することを特徴とす
    るフィルタ処理装置。
  8. 【請求項8】 可逆変換可能な整数型のフィルタ処理を
    施されたデータを、実数型のフィルタ演算処理を行なう
    フィルタ演算処理手段と、該演算結果を整数化するため
    の丸め処理手段とを用いて、元のデータを復元する逆フ
    ィルタ処理装置。
  9. 【請求項9】 前記実数型のフィルタ演算を行なうフィ
    ルタ演算処理手段において、畳み込み演算を用いること
    を特徴とする請求項第8項記載の逆フィルタ処理装置。
  10. 【請求項10】 前記実数型のフィルタ演算を行なうフ
    ィルタ演算処理手段において、Lifting演算を用
    いることを特徴とする請求項第8項記載の逆フィルタ処
    理装置。
  11. 【請求項11】 前記演算結果を整数化するための丸め
    処理手段において、該演算結果の一部のビット情報に基
    づいて補正データを生成することを特徴とする請求項第
    8項乃至第10項のいずれか1項に記載の逆フィルタ処
    理装置。
  12. 【請求項12】 前記演算結果の一部のビット情報は小
    数点以下のビット情報であることを特徴とする請求項第
    11項記載の逆フィルタ処理装置。
  13. 【請求項13】 前記演算結果を整数化するための丸め
    処理手段において、入力データの一部のビット情報に基
    づいて補正データを生成することを特徴とする請求項第
    8項乃至第10項のいずれか1項に記載の逆フィルタ処
    理装置。
  14. 【請求項14】 可逆変換可能な整数型のフィルタ処理
    を施されたデータを、実数型のフィルタ処理を行なう第
    1のLifting演算手段と、該演算結果の一部のビ
    ットデータのみをLifting処理する第2のLif
    ting演算手段とで処理し、元のデータを復元するこ
    とを特徴とする逆フィルタ処理装置。
  15. 【請求項15】 可逆変換が可能な実数型あるいは固定
    小数点型のフィルタ演算を行なうフィルタ演算処理ステ
    ップと、該演算結果を整数化するための丸め処理ステッ
    プとを用いて、可逆変換可能な整数型のフィルタ演算を
    実現することを特徴とするフィルタ処理方法。
  16. 【請求項16】 前記可逆変換が可能な実数型あるいは
    固定小数点型のフィルタ演算を行なうフィルタ演算処理
    ステップにおいて、畳み込み演算を用いることを特徴と
    する請求項第15項記載のフィルタ処理方法。
  17. 【請求項17】 前記可逆変換が可能な実数型あるいは
    固定小数点型のフィルタ演算を行なうフィルタ演算処理
    ステップにおいて、Lifting演算を用いることを
    特徴とする請求項第15項記載のフィルタ処理方法。
  18. 【請求項18】 前記演算結果を整数化するための丸め
    処理ステップにおいて、該演算結果の一部のビット情報
    に基づいて補正データを生成することを特徴とする請求
    項第15項乃至第17項のいずれか1項に記載のフィル
    タ処理方法。
  19. 【請求項19】 前記演算結果の一部のビット情報は小
    数点以下のビット情報であることを特徴とする請求項第
    18項記載のフィルタ処理方法。
  20. 【請求項20】 前記演算結果を整数化するための丸め
    処理ステップにおいて、入力データの一部のビット情報
    に基づいて補正データを生成することを特徴とする請求
    項第15項乃至第17項のいずれか1項に記載のフィル
    タ処理方法。
  21. 【請求項21】 可逆変換が可能な実数型或いは固定小
    数点型のフィルタ処理を行なう第1のLifting演
    算ステップと、該演算結果の一部のビットデータのみを
    Lifting処理する第2のLifting演算処理
    ステップとを用いて、可逆変換が可能な整数型のフィル
    タ演算処理を実現することを特徴とするフィルタ処理方
    法。
  22. 【請求項22】 可逆変換可能な整数型のフィルタ処理
    を施されたデータを、実数型或いは固定小数点型のフィ
    ルタ演算を行なうフィルタ演算処理ステップと、該演算
    結果を整数化するための丸め処理ステップとを用いて、
    元のデータを復元する逆フィルタ処理方法。
  23. 【請求項23】 前記実数型或いは固定小数点型のフィ
    ルタ演算を行なうフィルタ演算処理ステップにおいて、
    畳み込み演算を用いることを特徴とする請求項第22項
    記載の逆フィルタ処理方法。
  24. 【請求項24】 前記実数型或いは固定小数点型のフィ
    ルタ演算を行なうフィルタ演算処理ステップにおいて、
    Lifting演算を用いることを特徴とする請求項第
    22項記載の逆フィルタ処理方法。
  25. 【請求項25】 前記演算結果を整数化するための丸め
    処理ステップにおいて、該演算結果の一部のビット情報
    に基づいて補正データを生成することを特徴とする請求
    項第22項乃至第24項のいずれか1項に記載の逆フィ
    ルタ処理方法。
  26. 【請求項26】 前記演算結果の一部のビット情報は小
    数点以下のビット情報であることを特徴とする請求項第
    25項記載の逆フィルタ処理方法。
  27. 【請求項27】 前記演算結果を整数化するための丸め
    処理ステップにおいて、入力データの一部のビット情報
    に基づいて補正データを生成することを特徴とする請求
    項第22項乃至第24項のいずれか1項に記載の逆フィ
    ルタ処理方法。
  28. 【請求項28】 可逆変換可能な整数型のフィルタ処理
    を施されたデータを、実数型或いは固定小数点型のフィ
    ルタ処理を行なう第1のLifting演算ステップ
    と、該演算結果の一部のビットデータのみをLifti
    ng処理する第2のLifting演算ステップとで用
    いて、元のデータを復元することを特徴とする逆フィル
    タ処理方法。
  29. 【請求項29】 空間的に隣接し、整数で表現されるデ
    ータD1、D2、D3、…、Dn、…を入力し、 実数係数をp、qとした場合に、 X2n=D2n+p×(D2n-1+D2n+1) Y2n+1=D2n+1+q×(X2n+X2n+2) として算出し、得られた成分データX、Yを出力する画
    像データ用のフィルタ処理装置であって、 前記X2n及びY2n+1を可逆的に実数演算する実数演算手
    段と、 該実数演算手段の2つの演算結果に対して、それぞれ整
    数化し出力する整数化演算手段とを備え、 該整数化演算手段による整数化は、前記p×(D2n-1+
    D2n+1)及び前記q×(X2n+X2n+2)の丸め演算とし
    て作用することを特徴とするフィルタ処理装置。
  30. 【請求項30】 入力されるデータは画素データであっ
    て、ウェーブレット変換用の5×3フィルタとして用い
    ることを特徴とする請求項第29項に記載のフィルタ処
    理装置。
  31. 【請求項31】 請求項第30項に記載のウェーブレッ
    ト変換用フィルタを用いて、入力された画像データを変
    換する変換手段と、 変換して得られたデータを量子化する量子化手段と、 量子化されたデータを符号化する符号化手段を備えるこ
    とを特徴とする画像符号化装置。
  32. 【請求項32】 空間的に隣接し、整数で表現されるデ
    ータD1、D2、D3、…、Dn、…を入力し、 実数係数をp、qとした場合に、 X2n=D2n+p×(D2n-1+D2n+1) Y2n+1=D2n+1+q×(X2n+X2n+2) として算出し、得られた成分データX、Yを出力する画
    像データ用のフィルタ処理方法であって、 前記X2n及びY2n+1を可逆的に実数演算する実数演算工
    程と、 該実数演算工程の2つの演算結果に対して、それぞれ整
    数化し、出力する整数化演算工程とを備え、 該整数化演算工程による整数化は、前記p×(D2n-1+
    D2n+1)及び前記q×(X2n+X2n+2)の丸め演算とし
    て作用することを特徴とするフィルタ処理方法。
  33. 【請求項33】 入力されるデータは画素データであっ
    て、ウェーブレット変換用の5×3フィルタとして作用
    することを特徴とする請求項第32項に記載のフィルタ
    処理方法。
  34. 【請求項34】 空間的に隣接し、整数で表現されるデ
    ータD1、D2、D3、…、Dn、…を入力し、 実数係数をp、qとした場合に、 X2n=D2n+p×(D2n-1+D2n+1) Y2n+1=D2n+1+q×(X2n+X2n+2) として算出し、得られた成分データX、Yを出力する画
    像データのためのフィルタ処理用のコンピュータプログ
    ラムであって、 前記X2n及びY2n+1を可逆的に実数演算する実数演算工
    程のプログラムコードと、 該実数演算工程の2つの演算結果に対して、それぞれ整
    数化し出力する整数化演算工程のプログラムとを備え、 該整数化演算工程による整数化は、前記p×(D2n-1+
    D2n+1)及び前記q×(X2n+X2n+2)の丸め演算とし
    て作用することを特徴とするコンピュータプログラム。
  35. 【請求項35】 請求項第34項に記載のコンピュータ
    プログラムを格納することを特徴とするコンピュータ可
    読記憶媒体。
JP2001335185A 2001-10-31 2001-10-31 フィルタ処理装置およびフィルタ処理方法 Expired - Fee Related JP3796432B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001335185A JP3796432B2 (ja) 2001-10-31 2001-10-31 フィルタ処理装置およびフィルタ処理方法
US10/278,941 US7236997B2 (en) 2001-10-31 2002-10-24 Filter processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001335185A JP3796432B2 (ja) 2001-10-31 2001-10-31 フィルタ処理装置およびフィルタ処理方法

Publications (2)

Publication Number Publication Date
JP2003142989A true JP2003142989A (ja) 2003-05-16
JP3796432B2 JP3796432B2 (ja) 2006-07-12

Family

ID=19150199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001335185A Expired - Fee Related JP3796432B2 (ja) 2001-10-31 2001-10-31 フィルタ処理装置およびフィルタ処理方法

Country Status (2)

Country Link
US (1) US7236997B2 (ja)
JP (1) JP3796432B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005268908A (ja) * 2004-03-16 2005-09-29 Fuji Film Microdevices Co Ltd ウェーブレット変換装置
JP2007511119A (ja) * 2003-10-24 2007-04-26 ソニー エレクトロニクス インク 正規直交空間−時間変換のリフティングベースの実現

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7227998B2 (en) 2002-06-11 2007-06-05 Canon Kabushiki Kaisha Image processing apparatus, control method of the same, computer program, and computer-readable storage medium
JP4366250B2 (ja) 2003-06-23 2009-11-18 キヤノン株式会社 データ変換処理装置及びプログラム
EP1668534A4 (en) * 2003-09-29 2013-08-21 Agency Science Tech & Res METHOD FOR TRANSFORMING A DIGITAL TIME DOMAIN SIGNAL IN THE DOMAIN FREQUENCY AND INVERSE
JP4273996B2 (ja) * 2004-02-23 2009-06-03 ソニー株式会社 画像符号化装置及び方法、並びに画像復号装置及び方法
JP4378245B2 (ja) * 2004-08-23 2009-12-02 キヤノン株式会社 データ変換装置及び方法
JP2007037049A (ja) * 2005-07-29 2007-02-08 Canon Inc 画像符号化装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4697967B2 (ja) * 2006-03-02 2011-06-08 キヤノン株式会社 画像符号化装置及びその制御方法
US7738713B2 (en) * 2006-08-31 2010-06-15 Ching-Wei Yeh Method for processing digital image with discrete wavelet transform and apparatus for the same
JP2008072624A (ja) * 2006-09-15 2008-03-27 Canon Inc 画像符号化装置及びその制御方法
JP4311759B2 (ja) * 2007-10-29 2009-08-12 キヤノン株式会社 データ変換装置及びその制御方法
JP4933405B2 (ja) * 2007-11-13 2012-05-16 キヤノン株式会社 データ変換装置及びその制御方法
IT201800002401A1 (it) * 2018-02-05 2019-08-05 St Microelectronics Srl Procedimento di filtraggio digitale, circuito e dispositivo corrispondenti

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5818970A (en) * 1991-04-26 1998-10-06 Canon Kabushiki Kaisha Image encoding apparatus
JP3149271B2 (ja) * 1992-06-19 2001-03-26 キヤノン株式会社 画像通信装置
JP3227292B2 (ja) * 1993-12-20 2001-11-12 キヤノン株式会社 符号化装置、符号化方法、復号化装置、復号化方法、符号化復号化装置及び符号化復号化方法
US6408102B1 (en) * 1993-12-20 2002-06-18 Canon Kabushiki Kaisha Encoding/decoding device
EP1126705B1 (en) * 1994-07-08 2009-06-24 Sony Corporation Receiving controlled - access broadcast signals
US5748786A (en) * 1994-09-21 1998-05-05 Ricoh Company, Ltd. Apparatus for compression using reversible embedded wavelets
US6141446A (en) * 1994-09-21 2000-10-31 Ricoh Company, Ltd. Compression and decompression system with reversible wavelets and lossy reconstruction
US6195465B1 (en) * 1994-09-21 2001-02-27 Ricoh Company, Ltd. Method and apparatus for compression using reversible wavelet transforms and an embedded codestream
US5966465A (en) * 1994-09-21 1999-10-12 Ricoh Corporation Compression/decompression using reversible embedded wavelets
US6549666B1 (en) * 1994-09-21 2003-04-15 Ricoh Company, Ltd Reversible embedded wavelet system implementation
US5867602A (en) 1994-09-21 1999-02-02 Ricoh Corporation Reversible wavelet transform and embedded codestream manipulation
US5881176A (en) * 1994-09-21 1999-03-09 Ricoh Corporation Compression and decompression with wavelet style and binary style including quantization by device-dependent parser
US6229927B1 (en) * 1994-09-21 2001-05-08 Ricoh Company, Ltd. Reversible embedded wavelet system implementation
JP3332619B2 (ja) * 1994-11-29 2002-10-07 キヤノン株式会社 復号装置およびその方法
JPH1093827A (ja) * 1996-09-11 1998-04-10 Canon Inc 画像処理方法とその装置
JP3653180B2 (ja) 1998-08-14 2005-05-25 株式会社リコー 2次元逆ウェーブレット変換装置
JP3710342B2 (ja) 1999-09-07 2005-10-26 キヤノン株式会社 ディジタル信号処理装置および方法および記憶媒体
US6895120B2 (en) * 2001-03-30 2005-05-17 Ricoh Co., Ltd. 5,3 wavelet filter having three high pair and low pair filter elements with two pairs of cascaded delays

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007511119A (ja) * 2003-10-24 2007-04-26 ソニー エレクトロニクス インク 正規直交空間−時間変換のリフティングベースの実現
JP2005268908A (ja) * 2004-03-16 2005-09-29 Fuji Film Microdevices Co Ltd ウェーブレット変換装置
US7602983B2 (en) 2004-03-16 2009-10-13 Fujifilm Corporation Wavelet transformation apparatus

Also Published As

Publication number Publication date
JP3796432B2 (ja) 2006-07-12
US7236997B2 (en) 2007-06-26
US20030088598A1 (en) 2003-05-08

Similar Documents

Publication Publication Date Title
Gao et al. Neural image compression via attentional multi-scale back projection and frequency decomposition
JP5507077B2 (ja) バタフライプロセッサを使用して離散コサイン変換をエンコードしそして計算するための装置及び方法
CN100412907C (zh) 视频编码的低复杂性和统一标准的变换
JP5004987B2 (ja) データ変換装置及びその制御方法
JP3796432B2 (ja) フィルタ処理装置およびフィルタ処理方法
US6996593B2 (en) Filter processing apparatus and its control method, program, and storage medium
CN114615507B (zh) 一种图像编码方法、解码方法及相关装置
WO2005122590A1 (ja) 画像符号化装置および画像復号化装置、ならびにそれらで用いられる集積回路
Nagabushanam et al. Design and implementation of parallel and pipelined distributive arithmetic based discrete wavelet transform IP core
JP2003283840A (ja) フィルタ処理装置およびフィルタ処理方法
JP6684229B2 (ja) ウェーブレット変換行列に適応可能な高精度化及び量子化方法
Nagabushanam et al. FPGA implementation of 1D and 2D DWT architecture using modified lifting scheme
Al-Sulaifanie et al. Very large scale integration architecture for integer wavelet transform
TWI382768B (zh) 具有執行重疊濾波以及核心轉換的運算方法及其裝置
JP2003283841A (ja) フィルタ処理装置およびフィルタ処理方法
Masoudnia et al. Design and performance of a pixel-level pipelined-parallel architecture for high speed wavelet-based image compression
CN116260969B (zh) 一种自适应的通道渐进式编解码方法、装置、终端及介质
Bracamonte et al. A multiplierless implementation scheme for the JPEG image coding algorithm
JP2002152045A (ja) 画像データ用フィルタ処理装置及びその制御方法
Rekha et al. Design of high speed lifting based DWT using 9/7 wavelet transform for image compression
JP2007079972A (ja) 逆変換回路
JP5451171B2 (ja) データ変換処理装置およびデータ変換処理方法
JP2002197075A (ja) データ処理装置及びその制御方法、データ処理方法、コンピュータ可読メモリ
Dang et al. Discrete wavelet transform for image compression: a hardware approach
Chetan et al. Performance Analysis of Modified Architecture of DA-DWT and Lifting based Scheme DWT for Image Compression.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040611

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051003

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060131

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060417

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100421

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110421

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120421

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130421

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130421

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140421

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees