JP3808241B2 - Data compression method and apparatus, and recording medium - Google Patents

Data compression method and apparatus, and recording medium Download PDF

Info

Publication number
JP3808241B2
JP3808241B2 JP20140999A JP20140999A JP3808241B2 JP 3808241 B2 JP3808241 B2 JP 3808241B2 JP 20140999 A JP20140999 A JP 20140999A JP 20140999 A JP20140999 A JP 20140999A JP 3808241 B2 JP3808241 B2 JP 3808241B2
Authority
JP
Japan
Prior art keywords
data
encoding
classification
value
quantized
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
JP20140999A
Other languages
Japanese (ja)
Other versions
JP2000232366A (en
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.)
Fujifilm Holdings Corp
Original Assignee
Fuji Photo Film Co Ltd
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 Fuji Photo Film Co Ltd filed Critical Fuji Photo Film Co Ltd
Priority to JP20140999A priority Critical patent/JP3808241B2/en
Publication of JP2000232366A publication Critical patent/JP2000232366A/en
Application granted granted Critical
Publication of JP3808241B2 publication Critical patent/JP3808241B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、オリジナルデータを符号化して圧縮するデータ圧縮方法および装置並びにデータ圧縮方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体に関するものである。
【0002】
【従来の技術】
メディカルネットワークの画像サーバにおける画像データ圧縮や、通信やファイリング等の一般的なデータ圧縮の分野において、種々の圧縮アルゴリズムが提案されている。例えば、非常に効率のよい圧縮アルゴリズムとしてWTCQ方式(P.Sriram and M.W.Marcellin, "Image coding using wavelet transforms and entropy-constrained trellis-coded quantization", IEEE Transactions on Image Processing, vol.4, pp.725-733, June 1995)、あるいはSPIHT方式(A.Said and W.A.Pearlman, "A New Fast and Efficient Image Codec Based on Set Partitioning in Hierarchical Trees", IEEE Transactions on Circuits and Systems for Video Tech., vol.6, pp.243-250, June 1996)が提案されている。図11はWTCQ方式およびSPIHT方式の圧縮アルゴリズムを説明するための図である。まず、原画像を表すオリジナル画像データSをウェーブレット変換し、変換後のサブバンド毎のデータをクラス分けするとともにビット配分を決定し、この決定されたビット配分によりTCQ方式を用いて量子化を行って量子化データRSを得る。そして量子化データRSをエントロピーコーディングして符号化データを得るものである。ここで、エントロピーコーディングの方式として、WTCQ方式においては、ビットプレーンバイナリ算術符号化を用いる。このビットプレーンバイナリ算術符号化は、量子化されたデータを複数のビットプレーンに分解して2値化し、各ビットプレーンのデータに対して2値の算術符号化を行ってそれぞれの出力をコード化するものである。一方、SPIHT方式においては、エントロピーコーディングとして多値の算術符号化を用いている。そして、このようにしてオリジナル画像データSを圧縮することにより、非常に少ないビットレートにより効率よく符号化を行うことができる。
【0003】
また、一般的なJPEG圧縮の分野においては、図12に示すように算術符号化方式およびベースライン方式を用いることができる。JPEG圧縮の場合、オリジナル画像データSを離散コサイン変換(DCT)し、ビット配分を決定して量子化を行い、算術符号化方式の場合は量子化データRSを多値から2値に変換した後にバイナリ算術符号化を行って符号化データを得る。一方、ベースライン方式の場合は量子化データRSをハフマン符号化により符号化して符号化データを得る。
【0004】
【発明が解決しようとする課題】
上述したSPIHT方式においては、多値の算術符号化を行っているため、従来のハフマン符号化等よりも圧縮効率は高い。しかしながら、多値の算術符号化は演算が非常に複雑であるため演算に長時間を要するものとなる。一方、WTCQ方式においては2値の算術符号化を行っているため、SPIHT方式よりも高速に演算を行うことができる。しかしながら、WTCQ方式においては、エントロピーコーディングの際に、量子化されたデータを複数のビットプレーン(実際には14程度)に分解して2値化した後に、1つのビットプレーンに対してそれぞれ2値の算術符号化を施す必要があるため、トータルとして演算量が増大して演算に長時間を要するものとなる。
【0005】
一方、上述したJPEG圧縮における算術符号化方式は、WTCQ方式と同様に2値化を行うため、トータルとしての演算量が増大し、その結果演算に長時間を要するものとなる。また、ベースライン方式は、ハフマン符号化を用いているため、上述したWTCQ方式等と比較して圧縮効率が低いという問題がある。
【0006】
本発明は上記事情に鑑みなされたものであり、効率よくかつ高速にデータを圧縮できるデータ圧縮方法および装置並びにデータ圧縮方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体を提供することを目的とするものである。
【0007】
【課題を解決するための手段】
本発明によるデータ圧縮方法は、オリジナルデータを量子化して量子化データを得、該量子化データを符号化して前記オリジナルデータを圧縮した符号化データを得るデータ圧縮方法において、
前記量子化データを、該量子化データの代表値を表す代表値データと、該代表値以外のデータ値を表す少なくとも1つの分類データとに分類するとともに、前記分類の情報を表す分類情報データを得、
前記分類情報データを第1の符号化方式により符号化し、
前記代表値データおよび前記分類データのうち少なくとも前記分類データを第2の符号化方式により符号化して前記符号化データを得ることを特徴とするものである。
【0008】
なお、本発明によるデータ圧縮方法においては、前記第2の符号化方式が、前記代表値データおよび前記分類データ毎に異なる符号化方式であることが好ましい。
【0009】
また、本発明によるデータ圧縮方法においては、前記オリジナルデータをウェーブレット変換した後に前記量子化を行って前記量子化データを得ることが好ましく、また、前記オリジナルデータをDCT変換した後に前記量子化を行って前記量子化データを得ることが好ましい。
【0010】
なお、ウェーブレット変換した後に量子化データを得る場合には、ウェーブレット変換後の各サブバンド毎のウェーブレット変換データに対して量子化および符号化が行われる。
【0011】
さらに、前記代表値データが前記量子化データの0値を表す0値データであり、前記分類データが前記量子化データの非0値を表す非0値データであることが好ましい。
【0012】
ここで、「量子化データの代表値」とは、データ値の平均値、量子化データ中に最も多く現れる値、0値等種々の値を用いることができる。また、量子化データを代表値とそれ以外の分類データに分類する方法としては、種々の分類方法を採用することができる。例えば、量子化データを単純に代表値と非代表値に分類する方法、代表値と代表値以上の値と代表値以下の値とに分類する方法、代表値と代表値を基準としたデータ値の絶対値が所定閾値以下の値と所定閾値以上の値とに分類する方法等種々の方法が挙げられる。
【0013】
また、「分類情報データ」は、分類数に応じた値を有するものであり、例えば量子化データを代表値とそれ以外の値とに分類した場合は2値データとなり、代表値と代表値以上の値と代表値以下の値とに分類した場合は3値データとなる。
【0014】
さらに、「少なくとも分類データを第2の符号化方式により符号化する」としたのは、例えば代表値を0値とした場合のように、代表値データを符号化しない場合があるからである。
【0015】
また、「代表値データおよび分類データ毎に異なる」とは、代表値データおよび分類データとでそれぞれ符号化方式が異なる場合の他、分類データが複数ある場合は、各分類データ毎に符号化方式が異なる場合も含むものである。
【0016】
なお、第1の符号化方式としては、ハフマン符号化、ランレングス符号化、B1符号化、B2符号化、Wyle符号化、Golomb符号化、Golomb-Rice符号化、およびバイナリ算術符号化のいずれかを用いることができる。
【0017】
また、第2の符号化方式としては、ハフマン符号化、ユニバーサル符号化、および多値算術符号化のいずれかを用いることができる。
【0018】
なお、本発明によるデータ圧縮方法において、前記符号化データの情報量が前記オリジナルデータに基づいて定められる所定の情報量よりも大きい場合は、前記分類情報データおよび/または前記代表値データと前記分類データとのうち少なくとも前記分類データを第3の符号化方式により符号化して前記符号化データを得ることが好ましい。
【0019】
ここで、第3の符号化方式としては、ハフマン符号化、算術符号化、および何ら符号化を行わないPCM(パレスコードモジュレーション)符号化のいずれかであることが好ましい。
【0020】
また、「オリジナルデータに基づいて定められる所定の情報量」としては、オリジナルデータの情報量としてもよく、オリジナルデータの情報量よりは小さいものの、分類情報データおよび/または代表値データと分類データとのうち少なくとも分類データを、第3の符号化方式により符号化した方が情報量が少なくなるような情報量とすることが好ましい。
【0021】
本発明によるデータ圧縮装置は、オリジナルデータを量子化して量子化データを得、該量子化データを符号化して前記オリジナルデータを圧縮した符号化データを得るデータ圧縮装置において、
前記量子化データを、該量子化データの代表値を表す代表値データと、該代表値以外のデータ値を表す少なくとも1つの分類データとに分類するとともに、前記分類の情報を表す分類情報データを得る分類手段と、
前記分類情報データを第1の符号化方式により符号化する第1の符号化手段と、
前記代表値データおよび前記分類データのうち少なくとも前記分類データを第2の符号化方式により符号化する第2の符号化手段とを備えたことを特徴とするものである。
【0022】
なお、前記第2の符号化手段において行われる前記第2の符号化方式が、前記代表値データおよび前記分類データ毎に異なる符号化方式であることが好ましい。
【0023】
また、本発明によるデータ圧縮装置においては、前記オリジナルデータをウェーブレット変換した後に前記量子化を行って前記量子化データを得るウェーブレット変換手段、あるいは前記オリジナルデータをDCT変換した後に前記量子化を行って前記量子化データを得るDCT手段をさらに備えることが好ましい。
【0024】
さらに、前記分類手段は、前記代表値データを前記量子化データの0値を表す0値データとし、前記分類データを前記量子化データの非0値を表す非0値データとして、前記量子化データを分類する手段であることが好ましい。
【0025】
さらにまた、本発明によるデータ圧縮装置においては、前記符号化データの情報量が前記オリジナルデータに基づいて定められる所定の情報量よりも大きいか否かを判断する判断手段と、
該判断手段により前記符号化データの情報量が前記所定の情報量よりも大きいと判断された場合に、前記分類情報データおよび/または前記代表値データと前記分類データとのうち少なくとも前記分類データを第3の符号化方式により符号化して前記符号化データを得る第3の符号化手段とをさらに備えることが好ましい。
【0026】
なお、上記データ圧縮方法において行われる処理をコンピュータに実行させるプログラムとして、コンピュータ読取り可能な記録媒体に記録して提供してもよい。
【0027】
【発明の効果】
本発明によれば、オリジナルデータを量子化して得られた量子化データをデータ値に応じて分類して代表値データ、分類データおよび分類結果を表す分類情報データを得る。ここで、分類情報データは分類の仕方にもよるが、上述したように2値あるいは3値という比較的情報量が少ないデータとなるため、シンプルな符号化方式により少ない演算量かつ高い圧縮率により符号化を行うことができる。また、代表値データは1つの値のみからなるデータであり、少ない演算量で比較的高い圧縮率により符号化を行うことができる。さらに、代表値以外の分類データは多値ではあるものの、代表値が除かれているため、全量子化データ中の割合としては比較的低いものとなる。例えば、0.5bit/pixel(10bitデータに対して1/20圧縮をする場合)においては、0値を代表値とした場合、非0値の割合は13%程度となる。このため、多値ではあるものの演算の対象となるデータ量は少ないものとなる。
【0028】
したがって、本発明においては多値データの符号化を行ってはいるものの、その演算量は上述した従来の圧縮アルゴリズムと比較して少なくなり、また、代表値データおよび分類情報データは少ない演算量で高い圧縮率により圧縮することができることとなる。これにより、オリジナルデータを高い圧縮率により効率よく、かつ高速に圧縮することができることとなる。
【0029】
また、量子化データを0値と非0値とに分類することにより、その分類が容易となり、また0値の分類データは圧縮する必要もなくなるため、一層演算量を低減してより高速にオリジナルデータの圧縮を行うことができる。
【0030】
さらに、分類情報データは2値あるいは3値等比較的情報量が少ないデータであることから、演算が比較的シンプルなハフマン符号化、ランレングス符号化、B1/B2符号化、Wyle符号化、Golomb符号化、Golomb-Rice符号化およびバイナリ算術符号化のいずれかの符号化方法により、効率よくかつ高速に分類情報データを符号化することができる。
【0031】
また、分類データにおける多値データは全量子化データにおける割合が少ないため、演算が複雑ではあるものの高圧縮率で符号化を行うことができるハフマン符号化、ユニバーサル符号化、および多値算術符号化のいずれかの符号化方法により、効率よく符号化を行うことができる。
【0032】
なお、本発明によれば、オリジナルデータを高い圧縮率により圧縮することができるが、例えばオリジナルデータが、信号値が平坦な背景画像を表す画像データである場合、上述したようにオリジナルデータを量子化して、代表値データおよび分類データに分類すると、代表値データおよび分類データのいずれか一方のみが情報を有するものとなることから、分類情報データのデータ量がかえって大きくなって、符号化データの情報量がオリジナルデータの情報量よりも大きくなってしまうおそれがある。このような場合には符号化データの情報量をオリジナルデータに基づいて定められる所定の情報量と比較し、前者が後者よりも大きい場合には、分類情報データおよび/または代表値データと分類データとのうち少なくとも分類データを第3の符号化方式により符号化することにより、オリジナルデータよりも情報量が増加することなくオリジナルデータを符号化することができる。
【0033】
【発明の実施の形態】
以下図面を参照して本発明の実施形態について説明する。
【0034】
図1は本発明の第1の実施形態によるデータ圧縮装置の構成を示す概略ブロック図である。図1に示すように第1の実施形態によるデータ圧縮装置は、オリジナル画像データSをウェーブレット変換して各解像度におけるサブバンド毎のウェーブレット変換データWSを得るウェーブレット変換手段1と、ウェーブレット変換データWSをクラス分けするとともに各クラスのビット配分を決定するクラス分け・ビット配分手段2と、クラス分け・ビット配分手段2により決定されたビット配分に基づいてウェーブレット変換データWSを量子化して量子化データRSを得る量子化手段3と、量子化データRSを0値と非0値とに分類して0値データS0、非0値データNSおよびこの分類結果を表す分類情報データBを得る分類手段4と、分類情報データBを第1の符号化方式により符号化する第1の符号化手段5と、非0値データNSを第2の符号化方式により符号化する第2の符号化手段6と、符号化により得られる符号化データFを記録媒体に記録する記録手段7とを備える。
【0035】
ウェーブレット変換手段1は下記のようにしてオリジナル画像データSに対してウェーブレット変換を施す。まず図2(a)に示すように、オリジナル画像データSがウェーブレット変換されて複数の解像度毎の4つのデータLL1、HL0、LH0およびHH0に分解される。ここで、データLL1は画像の縦横を1/2に縮小した画像を表し、データHL0、LH0およびHH0はそれぞれ縦エッジ、横エッジおよび斜めエッジ成分の画像を表すものとなる。そして、図2(b)に示すようにデータLL1をさらにウェーブレット変換して4つのデータLL2、HL1、LH1およびHH1を得る。ここで、データLL2はデータLL1の縦横をさらに1/2に縮小した画像を表すものとなり、データHL1、LH1およびHH1はそれぞれデータLL1の縦エッジ、横エッジおよび斜めエッジ成分の画像を表すものとなる。そして、ウェーブレット変換を行う毎に得られるデータLLに対してウェーブレット変換を所望とする回数繰り返して、複数の解像度毎のデータを得る。例えば、ウェーブレット変換を3回行った場合は、図2(c)に示すように3段階の各解像度毎にデータが得られることとなる。なお、本実施形態においては、各解像度毎における個々の、すなわち各サブバンド毎のデータを総称してウェーブレット変換データWSと呼ぶこととする。
【0036】
クラス分け・ビット配分手段2は、下記のようにしてウェーブレット変換データWSのクラス分けおよびビット配分を決定する。例えば、図2(c)に示すようにウェーブレット変換を行うことにより得られた各サブバンド毎のウェーブレット変換データWSに対しては、データLL2、データHHn(n=0〜2)、データHLn(n=0〜2)、およびデータLHn(n=0〜2)の4つのクラスにクラス分けを行う。このようにクラス分けを行うのは、各クラスのデータが統計的に類似した信号値を有するものであるからである。そして、各クラスのデータについて、例えばデータ値の2乗誤差を算出して、その2乗誤差の大きさに応じて量子化のビット配分を決定する。例えば、2乗誤差が大きければデータを保存するために大きなビット数を割り当て、2乗誤差が小さければデータは多少欠落してもよいため割り当てるビット数を小さくする。
【0037】
量子化手段3はクラス分け・ビット配分手段2において決定されたビット配分に基づいてTCQ(Trellis Coded Quantization)方式によりウェーブレット変換データWSの量子化を行う。ここで、TCQ方式とは、信号通信や音声符号化等の分野において開発されたTCM(Trellis Coded Modulation)をベースとしてこれを画像の符号化に拡張したものである。TCQ方式は理論的には無限長のベクトル量子化と同じ意味と見なすことができ、rate-distortion理論の観点からも従来のスカラー量子化と比較して数dBのS/Nを向上することができる。このTCQ方式はベクトル量子化の1つの方式であり、複数個の信号(b1,b2…bn)の入力に対して同数の量子化値(q1,q2…qn)を出力する。ここでの量子化値の決定はビダビアルゴリズムを用いて行われ、入力ベクトルに対して量子化誤差のトータルが最小となるパスを探索することによって決定される。なお、本実施形態では個々の量子化誤差の2乗をパスのコストとしてビダビアルゴリズムを適用するものとする。ここで、TCQ方式においては、複数の量子化代表値の組を定義しており、状態毎にこの組を使い分けて量子化を行っている。例えば、クラス分け・ビット配分手段2において決定されたビット配分が4ビットであり、量子化後のインデックス(詳細は後述する)を4ビット以下で表現する場合を考えると、16点の量子化代表値を使用すれば量子化を簡易に行うことができるが、TCQ方式では16点の量子化代表値の組を2つ(例えばQ1とQ2)を有し、状態S0ではQ1、状態S1ではQ2というように、状態毎に使用する量子化代表値の組を定義している。そして、予め量子化および逆量子化共通の状態遷移規則を定めておき、1画素について量子化を行う毎に状態遷移しながら量子化を進めていく。このように、量子化処理を行うことにより、見かけ上量子化代表値は倍の32点(但し0を重複させた場合は31点)を使用可能となり、量子化誤差を小さくするパスの選択肢を広げることができる。以下、TCQ方式の具体的方法について説明する。
【0038】
図3はD0〜D3の4つのスカラー量子化器を示す図、図4は2つのスカラー量子化器のサムセット(和集合的な量子化器)を示す図、図5は4状態のトレリス(Trellis)遷移図である。なお、図3においてΔは量子化ビット配分によって決定される量子化ステップサイズであり、本実施形態においてはΔ=0.5とする。また、図4においてはスカラー量子化器D0,D2のサムセット量子化器D0&D2(=A0)およびスカラー量子化器D1,D3のサムセット量子化器D1&D3(=A1)を示す。さらに、本実施形態においては、入力信号としてのウェーブレット変換データWSとして5つの要素からなる信号を使用し、これをWS=(0.5,−3,−3,0.25,−2.5)とする。そして、図5はこの5つの要素を有する信号を一度に量子化する際の最適な量子化器の選択状態を遷移状態として示すものであり、選択された量子化器により遷移状態を示すものとする。すなわち、ここではサムセット量子化器D0&D2が選択された状態を「状態D0&D2」として説明する。まず、量子化方法について説明する。
【0039】
TCQ方式による量子化方法は、図5に示すように定義されたトレリス遷移の全てのパスをチェックして、入力信号の全ての要素の量子化後の2乗誤差(以下MSEとする)が最小となるパスを検出することにある。具体的には、WSの最初の要素である0.5をD0〜D3のうち量子化器D2により量子化すると、そのMSEは(0.5−Δ)2=0.0と最小となる。また、次の要素−3に対しては同様に量子化器D2により量子化するとMSEは(−3−(−6Δ)2=0.0と最小となる。
【0040】
一方、トレリス遷移の制限として、サムセット量子化器D0&D2については次の量子化器はD0(状態はD0&D2に移行)もしくはD2(状態はD1&D3に移行)を、サムセット量子化器D2&D0については次の量子化器はD2(状態はD0&D2に移行)もしくはD0(状態はD1&D3に移行)を、サムセット量子化器D1&D3については次の量子化器はD1(状態はD2&D0に移行)もしくはD3(状態はD3&D1に移行)を、サムセット量子化器D3&D1については次の量子化器はD3(状態はD2&D0に移行)もしくはD1(状態はD3&D1に移行)を選択するというようにパスが制限されている。なお、この制限は、予め設定されているものであり、サムセット量子化器D0&D2については次の量子化器のD0は状態D0&D2、D2は状態D1&D3に、サムセット量子化器D2&D0については次の量子化器のD2は状態D0&D2、D0は状態D1&D3に、サムセット量子化器D1&D3については次の量子化器のD1は状態D2&D0、D3は状態D3&D1に、サムセット量子化器D3&D1については次の量子化器のD3は状態D2&D0、D1は状態D3&D1に対応するものとなっている。
【0041】
そして、遷移状態の拘束長を信号の要素数に対応させ(本実施形態においては5つの要素を有するため拘束長を5とする)、トレリス遷移の全ての組み合わせにおいてMSEをコストとして算出し、コストの和が最小となるパスを選択し、そのパスにより量子化器が選択されて量子化がなされる。なお、コストは基本的には全てのパスについて算出するが、現在コストを算出しているパスの累積コストの値がそれまでに算出されたパスにおける最小のコストを上回っている場合には、そこでコストの算出を打ち切って次のパスにおけるコストの算出に移行する等することにより、演算の高速化を図ることができる。なお、図5には全てのパスにおけるコストを示してあり、コストが最小であったパス(図中太線で示す)は、初期状態として量子化器D2&D0(=A0)が選択された後、順にD2(状態D0&D2=A0)、D2(状態D1&D3=A1)、D3(状態D3&D1=A1)、D1(状態D3&D1=A1)、D3(状態D2&D0=A0)と量子化器の選択のパスが移行し、信号はWS′=(0.5,−3,3,0,−2.5)に量子化される。なお、信号WSの要素0.5,−3,3,−2.5については、MSE=0となるが、要素0.25については量子化器D1が選択された場合に最小となりMSE=0.0625となる。したがって、この際のコストは、
(0.5-Δ)2+(-3-(-6Δ))2+(3-6Δ)2+(0.25-0)2+(-2.5-(-5Δ))2=0.0625
となる。
【0042】
ここで、量子化器のインデックスは図4に示すように定義されており、本実施形態においては、量子化値ではなくこのインデックスを出力とする。さらに、サムセット量子化器D0&D2を00、D2&D0を01、D1&D3を10、D3&D1を11というように2ビットのコード値にコード化しておく。したがって、ここで求められる量子化データRSは、WS′=(0.5,−3,3,0,−2.5)と図4に示す量子化器のインデックスとを対応させて、
(1,−3,3,0,−3)および初期状態を表すコード01
となる。なお、8状態トレリス遷移の場合は初期状態を表す情報は3ビットとなる。
【0043】
次に、TCQ方式における逆量子化方法について説明する。逆量子化方法は、インデックスの最初の値から順に要素を逆量子化することにより行われる。上述したように、インデックスが(1,−3,3,0,−3)の場合、インデックスの最初の値が1であるため、図4に示す2つのサムセット量子化器A0,A1を比較すると、要素の最初の値はΔ(=0.5)または−Δ(=−0.5)が考えられるが、初期状態が01すなわち状態D2&D0(=A0)であることから、図5に示すトレリス遷移の規則に従うと量子化器D2が選択されるため、量子化器D2のΔすなわち0.5に逆量子化される。そして遷移状態がD2(D0&D2=A0)に変化する。同様にしてインデックスの次の値が−3であるため、2つのサムセット量子化器A0,A1を比較すると、これに対応する要素は−6Δ(=−3)または−5Δ(=−2.5)が考えられるが、トレリス遷移の規則に従うと量子化器D2が選択されるため、量子化器D2の−6Δすなわち−3に逆量子化される。そして遷移状態がD2(D1&D3=A1)に変化する。
【0044】
同様にしてインデックスの次の値が3であるため、2つのサムセット量子化器A0,A1を比較すると、これに対応する要素は5Δ(=2.5)または6Δ(=3)が考えられるが、トレリス遷移の規則に従うと量子化器D3が選択されるため、量子化器D3の6Δすなわち3に逆量子化される。そして遷移状態がD3(D3&D1=A1)に変化する。さらに、これの次の値が0であるため、2つのサムセット量子化器A0,A1を比較すると、これに対応する要素はともに0であり、トレリス遷移の規則に従うと量子化器D1が選択されるため、量子化器D1の0に逆量子化される。そして、ここでは遷移状態がD1(D3&D1=A1)のまま移行する。最後のインデックスの値は−3であるため、2つのサムセット量子化器A0,A1を比較すると、これに対応する要素は−6Δ(=−3)または−5Δ(=−2.5)が考えられるが、トレリス遷移の規則に従うと量子化器D3が選択されるため、量子化器D3の−5Δすなわち−2.5に逆量子化される。そしてこれにより、(0.5,−3,3,0,−2.5)の信号が復元される。
【0045】
このように、トレリス遷移を定義してこれの規則に基づいて最適な量子化器を選択することにより、量子化を行うことができる。なおTCQ方式の詳細については、上述したP.Sriramらの文献に記載されている。
【0046】
分類手段4は量子化データRSをそのデータ値に応じて分類する。この際、量子化データRSを代表値と代表値以外のデータ値とに分類するものとする。例えば、本実施形態においては、量子化データRSの0値を代表値とし、量子化データRSを0値データS0と非0値データNSの2つに分類する。ここで、オリジナル画像データSに対してウェーブレット変換を施して量子化を行うと、量子化データRSにおける0値の割合が非常に大きくなり、例えば0.5bit/pixel(10bitオリジナル画像データSに対して1/20圧縮)に圧縮を行う場合は、非0値データNSの割合は全データの約13%程度となる。このように、量子化データRSを0値と非0値とに分類して0値データS0と非0値データNSとを得るとともに、この分類に関する情報を表す分類情報データBを得る。ここで、分類情報データBは量子化データRSを0値と非0値とに分類した結果を表す2値データとなる。
【0047】
第1の符号化手段5は分類情報データBを符号化するためのものであり、ここで行われる符号化方式としては、演算が比較的にシンプルなハフマン符号化、ランレングス符号化、B1符号化、B2符号化、Wyle符号化、Golomb符号化、Golomb-Rice符号化およびバイナリ算術符号化のいずれかを採用することができる。
【0048】
ハフマン符号化は、瞬時に復号可能なコンパクト符号の一般的構成方法として広く知られている。ハフマン符号化において、情報源アルファベットの確率分布が与えられると、簡単なアルゴリズムを実行することにより常に瞬時に復号可能なコンパクト符号が得られるため、極めて有効な符号化アルゴリズムとなっている。
【0049】
ランレングス符号化は、2値情報において記号「0」の出現確率が大きく略1に近い場合、または長い「0」の連あるいは「1」の連が交互に出現する場合に、記号「0」、「1」の長さを符号化したり「0」と「1」との出現確率の隔たりを考慮した特定のパターンを符号化する方法である。
【0050】
B1符号化、B2符号化はランレングス符号化の1つの手法であり、その詳細については、「画像のディジタル信号処理,吹抜敬彦,日刊工業新聞社,昭和56年5月25日」に記載されている。
【0051】
Wyle符号化はランレングス符号化の1つの手法であり、「0」および「1」の系列で表現された各記号の連の確率分布を測定し、確率の大きな連には短い符号を、確率の小さな連には長い符号を割り当てることにより、平均符号長を短くするという原理に基づいて提案された手法である。
【0052】
Golomb符号化は、幾何学分布情報源に対する効率的なエントロピー符号化用符号として古くから知られている。この符号は必ずしもコンパクト符号にはなり得ないが、とくに次数が2のべき乗である場合にGolomb−Rice符号と呼ばれ、簡単な構成による符号化および復号化が可能となるものである。
【0053】
算術符号化は、一意に復号可能なコンパクト符号を用いるものである。この符号化はハフマン符号化を包含する極めて一般性に富む符号化である。符号化および復号化は算術演算を施すことにより実行することができ、1回のアルゴリズムの実行により情報源記号系列の1つの記号が符号化される。算術符号化は単位区間[0,1)を下記の2つの条件を満足するように順次部分区間に分割する過程と考えることができる。
【0054】
(1)各符号語はそれに先行する情報源記号の出現確率の和(累積確率)になる。
【0055】
(2)各符号語の右にある部分区間の幅はその記号の確率となる。
【0056】
なお、バイナリ算術符号化はバイナリデータに対して適したものである。
【0057】
なお、上述したランレングス符号化、B1符号化、B2符号化、Wyle符号化、Golomb符号化、Golomb-Rice符号化、およびバイナリ算術符号化は2値データを符号化するのに適した符号化方式である。
【0058】
第2の符号化手段6は非0値データNSを符号化するためのものであり、ここで行われる符号化方式としては、ハフマン符号化、ユニバーサル符号化、および多値算術符号化のいずれかを採用することができる。これらの符号化方式は、演算は複雑であるものの、効率よく、すなわち高い圧縮率によりデータを符号化することができるものである。
【0059】
ユニバーサル符号化は、そのパラメータが未知であるような情報源に対する漸近的に最適なブロック符号化法であり、下記の2つの条件を満足するものである。
【0060】
(1)符号化は観測した情報源メッセージブロックの統計量にのみ依存して遂行され、過去や未来のブロックには依存しない、すなわちブロック毎に無記憶に遂行される。
【0061】
(2)ブロック長が無限に長くなるにつれて、種々の測度で表現した最適符号の特性が任意の近似度で達成される。
【0062】
なお、ユニバーサル符号化としては、Lynch-Davission符号化やLawrence符号化等がよく知られている。
【0063】
多値算術符号化は上述した算術符号化において、多値データに対して適したものである。
【0064】
なお、上述した第1および第2の符号化手段5,6において行われる符号化方式については、「ディジタル通信工学,笠原ら,昭晃堂,平成4年2月25日」に詳細が記載されている。
【0065】
次いで、第1の実施形態の動作について説明する。図6は第1の実施形態によるデータ圧縮装置において行われる処理を示すフローチャートである。
【0066】
まず、ウェーブレット変換手段1においてオリジナル画像データSに対してウェーブレットが施され、上述したようにウェーブレット変換データWSが得られる(ステップS1)。次いで、クラス分け・ビット配分手段2において、ウェーブレット変換データWSのクラス分けおよび各クラスのビット配分が決定され(ステップS2)、量子化手段3において各クラスのウェーブレット変換データWSが決定されたビット配分に基づいて量子化されて量子化データRSが得られる(ステップS3)。量子化データRSは分類手段4において0値データS0と非0値データNSとに分類されるとともに、0値データS0と非0値データNSとの分類を表す分類情報データBが得られる(ステップS4)。
【0067】
分類情報データBは第1の符号化手段5において、上述したハフマン符号化、ランレングス符号化、B1符号化、B2符号化、Wyle符号化、Golomb符号化、Golomb-Rice符号化、およびバイナリ算術符号化のいずれかの符号化方式により符号化される(ステップS5)。一方、非0値データNSは第2の符号化手段6において上述したハフマン符号化、ユニバーサル符号化、および多値算術符号化のいずれかの符号化方式により符号化される(ステップS6)。なお、ステップS5,S6の処理は逆であってもよく、また並列に行ってもよい。そして、符号化された分類情報データBおよび非0値データNSを符号化データFとして記録手段7において記録媒体に記録して(ステップS7)処理を終了する。
【0068】
なお、符号化データFを復号化するためには、図6に示すフローチャートと逆の処理を行えばよい。すなわち、符号化データFに含まれる符号化された分類情報データBおよび非0値データNSをその符号化方式に対応する復号化方式により復号化して分類情報データBおよび非0値データNSを得、分類情報データBおよび非0値データNSに基づいて0値データS0を求めて量子化データRSを得る。そして、量子化データRSを逆量子化してウェーブレット変換データWSを得、このウェーブレット変換データWSを逆ウェーブレット変換することによりオリジナル画像データSが得られることとなる。
【0069】
ここで、第1の実施形態において得られる分類情報データBは2値データであり、情報量としては比較的少ないものである。したがって、上述した第1の符号化手段5において行われるシンプルな符号化方式により、少ない演算量かつ高い圧縮率により符号化を行うことができる。また、0値データS0は元々情報を有さないものであるから、符号化しなくとも0値と非0値との分類情報のみを有していれば復号化することができるものである。さらに、非0値データNSは多値ではあるものの、その割合は上述したように全量子化データRSの13%程度に過ぎないため、上述した第2の符号化手段6において行われる効率はよいが演算が複雑な符号化方式により符号化を行っても、演算量を少なくすることができることとなる。
【0070】
したがって、本実施形態においては多値の非0値データNSの符号化を行ってはいるものの、その演算量は上述した従来の圧縮アルゴリズムと比較して少なくなり、また、分類情報データBは少ない演算量で高い圧縮率により圧縮することができることとなる。これにより、オリジナル画像データSを高い圧縮率により効率よく、かつ高速に圧縮することができる。
【0071】
また、本実施形態においては、量子化データRSを0値データS0と非0値データNSとに分類しているためその分類が容易となり、また0値データS0は圧縮する必要もなくなるため、一層演算量を低減してより高速にオリジナル画像データSの圧縮を行うことができる。
【0072】
なお、上述した従来のWTCQ方式によりオリジナル画像データSを1/20に圧縮した場合と、本実施形態による符号化方式によりオリジナル画像データSを1/17に圧縮した場合とで、圧縮効率および演算量は略等しいものとなり、本実施形態による符号化方式においては、WTCQ方式と比較して性能劣化の程度は比較的小さいものであることが、本出願人の実験により確認されている。
【0073】
次いで、本発明の第2の実施形態について説明する。図7は本発明の第2の実施形態によるデータ圧縮装置の構成を示す概略ブロック図である。第2の実施形態においては、ウェーブレット変換ではなく、離散コサイン変換(DCT)によりオリジナル画像データSを変換するためのDCT手段10を備え、ウェーブレット変換を行った場合のようにデータのクラス分けを行わない点が第1の実施形態と異なるものである。なお、第2の実施形態において、DCT、ビット配分および量子化はJPEG規格に沿った標準化された量子化方法である。
【0074】
このように、JPEG規格に沿った標準化された手法において、本発明を適用することによっても、第1の実施形態と同様に、効率よくかつ高速にオリジナル画像データSを符号化することができる。
【0075】
なお、上記第1および第2の実施形態によれば、オリジナル画像データSを高い圧縮率により圧縮することができるが、例えばオリジナル画像データSが、信号値が平坦な背景画像を表すものである場合、上述したようにオリジナル画像データSを量子化して、0値データS0および非0値データNSに分類すると、非0値データNSにのみ情報が分類されることから、分類情報データBのデータ量が大きくなって、符号化データFの情報量がオリジナル画像データSの情報量よりも大きくなってしまうおそれがある。以下この問題を解決するための実施形態を第3の実施形態として説明する。
【0076】
図8は本発明の第3の実施形態によるデータ圧縮装置の構成を示す概略ブロック図である。なお、第3の実施形態において第1の実施形態と同一の構成については同一の参照番号を付し詳細な説明は省略する。第3の実施形態においては、上記第1の実施形態において得られた符号化データFにおける、各サブバンド毎の符号化データF1の情報量をウェーブレット変換データWSの情報量と比較する比較手段12と、比較手段12による比較結果に基づいて、各サブバンドの符号化データF1の情報量がウェーブレット変換データWSの情報量よりも大きい場合に、量子化データRSを第3の符号化方式により符号化して符号化データF2を得る第3の符号化手段13とを備えた点が第1の実施形態と異なるものである。
【0077】
比較手段12においては、各サブバンドの符号化データF1の情報量がウェーブレット変換データWSの情報量と比較される。ここで、ウェーブレット変換データWSの情報量としては、上述したTCQ方式の場合、オリジナルのビット数は例えば16ビットであるため、量子化データRSにおける信号系列の長さ×16ビットがウェーブレット変換データWSの情報量とされる。そして、符号化データF1の符号量がウェーブレット変換データWSの符号量よりも大きい場合に、第3の符号化手段13において量子化データRSを第3の符号化方式により符号化して符号化データF2を得るものである。なお、符号化データF1のデータ量がウェーブレット変換データWSのデータ量よりも小さい場合には、符号化データF1がそのまま符号化データFとして記録手段7に入力されることとなる。
【0078】
第3の符号化手段13において行われる符号化方式としては、ハフマン符号化あるいは多値算術符号化のように、演算は複雑であるものの、効率よく、すなわち高い圧縮率によりデータを符号化することができる方式が採用されるが、全く符号化しないPCM符号化であってもよい。なお、第3の符号化手段13において行われる符号化方式についても、上述した笠原らの文献にその詳細が記載されている。
【0079】
次いで、第3の実施形態の動作について説明する。図9は第3の実施形態の動作を示すフローチャートである。図9に示すフローチャートにおいて、ステップS11〜S16の処理は、図6に示すフローチャートのステップS1〜S6の処理と同一であるため、詳細な説明は省略する。ステップS16において非0値データNSが第2の符号化方式により符号化されてサブバンド毎の符号化データF1が得られると、符号化データF1は比較手段12に入力されてサブバンド毎に符号化データF1がウェーブレット変換データWSと比較される(ステップS17)。そして、各サブバンドにおける符号化データF1の情報量がウェーブレット変換データWSの情報量よりも大きい場合か否かが判断され(ステップS18)、符号化データF1の情報量がウェーブレット変換データWSの情報量よりも大きい場合には、第3の符号化手段13においてそのサブバンドの量子化データRSが第3の符号化方式により符号化されて符号化データF2が得られる(ステップS19)。一方、ステップS18が否定された場合は、そのサブバンドについては符号化データF1がそのまま最終的な符号化データFとされる。そして、各サブバンド毎にステップS17からステップS19の処理が行われ、サブバンド毎に得られる符号化データF1あるいは符号化データF2を最終的な符号化データFとして記録手段7において記録媒体に記録して(ステップS20)処理を終了する。
【0080】
このように、第3の実施形態においては、あるサブバンドにおいて符号化データF1の情報量とウェーブレット変換データWSの情報量とを比較し、前者が後者よりも大きい場合には、そのサブバンドにおける量子化データRSを上述したハフマン符号化などの第3の符号化方式により符号化するようにしたため、最終的に得られる符号化データFの情報量がウェーブレット変換データWSの情報量よりも増加することがなくなり、これにより効率よくオリジナル画像データSを符号化することができる。
【0081】
なお、第3の実施形態において得られた符号化データFを復号化するためには、図9に示すフローチャートと逆の処理を行えばよい。すなわち、符号化データFに含まれるサブバンド毎の符号化データF1,F2の符号化方式を判別し、符号化方式に対応する復号化方式により復号化して非0値データNSおよび分類情報データBの組と量子化データRSを得る。そして、分類情報データBおよび非0値データNSの組については、これらに基づいて0値データS0を求めて量子化データRSを得る。そして、量子化データRSを逆量子化してウェーブレット変換データWSを得、このウェーブレット変換データWSを逆ウェーブレット変換することによりオリジナル画像データSが得られることとなる。
【0082】
次いで、本発明の第4の実施形態について説明する。図10は本発明の第4の実施形態によるデータ圧縮装置の構成を示す概略ブロック図である。第4の実施形態においては、第3の実施形態においてウェーブレット変換ではなく、離散コサイン変換(DCT)によりオリジナル画像データSを変換するためのDCT手段10を備え、ウェーブレット変換を行った場合のようにデータのクラス分けを行わない点が第3の実施形態と異なるものである。なお、第4の実施形態においては第2の実施形態と同様に、DCT、ビット配分および量子化はJPEG規格に沿った標準化された量子化方法である。
【0083】
第4の実施形態においては、第2の実施形態において得られた符号化データFの情報量をオリジナル画像データSの情報量と比較し、前者が後者よりも大きい場合には、第3の符号化手段13において第3の符号化方式により量子化データRSを符号化して符号化データF3を得、これを最終的な符号化データFとして記録手段7において記録媒体に記録するものである。
【0084】
このように、JPEG規格に沿った標準化された手法において、第3の実施形態と同様に、符号化データFの情報量をオリジナル画像データSの情報量と比較し、符号化データFの情報量がオリジナル画像データSの情報量よりも大きくなる場合に、量子化データRSを第3の符号化方式により符号化することによっても、第3の実施形態と同様に効率よくかつ高速にオリジナル画像データSを符号化することができる。
【0085】
なお、上記実施形態においては、0値を代表値として量子化データRSを0値データS0と非0値データNSとに分類しているが、0値、0値から所定閾値未満の値および所定閾値以上の値の3つに分類してもよい。ここで、所定閾値未満の値については、上記実施形態と同様の符号化を行い、所定閾値以上の値については、統計的に発生する確率が非常に少ないため、効率を重視した符号化により符号化することが好ましい。また、代表値としては0値に限定されるものではなく、量子化データRSの平均値を用いてもよい。この場合、平均値とそれ以外の値、平均値とそれより大きいの値とそれ未満の値、平均値を基準として平均値とデータ値の絶対値が所定閾値未満の値と所定閾値以上の値とに分類する等種々の方法により分類を行うことができる。
【0086】
また、上記実施形態においては、本発明によるデータ圧縮方法および装置により画像データを符号化しているが、音声データ、動画データ等種々のデータを符号化することができるものである。
【0087】
さらに、上記第3および第4の実施形態においては、符号化データF1の情報量をウェーブレット変換データWSあるいはオリジナル画像データSの情報量と比較しているが、ウェーブレット変換データWSあるいはオリジナル画像データSの情報量よりは小さいものの、量子化データRSを第3の符号化方式により符号化した方が情報量が少なくなるような所定の閾値と比較するようにしてもよい。
【図面の簡単な説明】
【図1】本発明の第1の実施形態によるデータ圧縮装置の構成を示す概略ブロック図
【図2】ウェーブレット変換を説明するための図
【図3】スカラー量子化器を示す図
【図4】2つのスカラー量子化器のサムセットを示す図
【図5】4状態のトレリス(Trellis)遷移図
【図6】第1の実施形態において行われる処理を示すフローチャート
【図7】本発明の第2の実施形態によるデータ圧縮装置の構成を示す概略ブロック図
【図8】本発明の第3の実施形態によるデータ圧縮装置の構成を示す概略ブロック図
【図9】第3の実施形態において行われる処理を示すフローチャート
【図10】本発明の第4の実施形態によるデータ圧縮装置の構成を示す概略ブロック図
【図11】従来のデータ圧縮装置の構成を示す概略ブロック図(その1)
【図12】従来のデータ圧縮装置の構成を示す概略ブロック図(その2)
【符号の説明】
1 ウェーブレット変換手段
2 クラス分け・ビット配分手段
3 量子化手段
4 分類手段
5 第1の符号化手段
6 第2の符号化手段
7 記録手段
10 DCT手段
12 比較手段
13 第3の符号化手段
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data compression method and apparatus for encoding and compressing original data, and a computer-readable recording medium on which a program for causing a computer to execute the data compression method is recorded.
[0002]
[Prior art]
Various compression algorithms have been proposed in the fields of image data compression in a medical network image server and general data compression such as communication and filing. For example, as a very efficient compression algorithm, the WTCQ method (P. Sriram and MW Marcellin, “Image coding using wavelet transforms and entropy-constrained trellis-coded quantization”, IEEE Transactions on Image Processing, vol.4, pp.725-733 , June 1995) or SPIHT (A. Said and WAPearlman, "A New Fast and Efficient Image Codec Based on Set Partitioning in Hierarchical Trees", IEEE Transactions on Circuits and Systems for Video Tech., Vol.6, pp.243 -250, June 1996). FIG. 11 is a diagram for explaining compression algorithms of the WTCQ method and the SPIHT method. First, the original image data S representing the original image is subjected to wavelet transform, the data for each subband after the classification is classified and the bit allocation is determined, and the TCQ method is used for quantization based on the determined bit allocation. To obtain the quantized data RS. The quantized data RS is entropy-coded to obtain encoded data. Here, as an entropy coding scheme, bit-plane binary arithmetic coding is used in the WTCQ scheme. In this bit-plane binary arithmetic coding, the quantized data is divided into a plurality of bit planes to be binarized, and binary arithmetic coding is performed on the data of each bit plane to encode each output. To do. On the other hand, in the SPIHT method, multivalued arithmetic coding is used as entropy coding. Then, by compressing the original image data S in this way, it is possible to efficiently perform encoding with a very small bit rate.
[0003]
In the general field of JPEG compression, an arithmetic coding scheme and a baseline scheme can be used as shown in FIG. In the case of JPEG compression, the original image data S is subjected to discrete cosine transform (DCT), bit allocation is determined and quantization is performed, and in the case of an arithmetic coding method, the quantized data RS is converted from multivalue to binary. Binary arithmetic encoding is performed to obtain encoded data. On the other hand, in the case of the baseline method, the quantized data RS is encoded by Huffman encoding to obtain encoded data.
[0004]
[Problems to be solved by the invention]
In the SPIHT method described above, since multi-value arithmetic coding is performed, the compression efficiency is higher than conventional Huffman coding. However, multi-valued arithmetic coding requires a long time for the operation because the operation is very complicated. On the other hand, since the binary arithmetic coding is performed in the WTCQ method, the calculation can be performed at a higher speed than in the SPIHT method. However, in the WTCQ system, at the time of entropy coding, the quantized data is decomposed into a plurality of bit planes (actually about 14) and binarized, and then binary for each bit plane. Therefore, the amount of calculation increases as a total, and the calculation takes a long time.
[0005]
On the other hand, since the arithmetic coding method in the JPEG compression described above performs binarization in the same manner as the WTCQ method, the total calculation amount increases, and as a result, the calculation takes a long time. In addition, since the baseline method uses Huffman coding, there is a problem that the compression efficiency is lower than that of the WTCQ method described above.
[0006]
The present invention has been made in view of the above circumstances, and provides a data compression method and apparatus capable of compressing data efficiently and at high speed, and a computer-readable recording medium on which a program for causing a computer to execute the data compression method is recorded. It is intended to do.
[0007]
[Means for Solving the Problems]
In the data compression method according to the present invention, the original data is quantized to obtain quantized data, and the quantized data is encoded to obtain encoded data obtained by compressing the original data.
The quantized data is classified into representative value data representing a representative value of the quantized data and at least one classification data representing a data value other than the representative value, and classification information data representing information of the classification Get
The classification information data is encoded by a first encoding method,
Of the representative value data and the classification data, at least the classification data is encoded by a second encoding method to obtain the encoded data.
[0008]
In the data compression method according to the present invention, it is preferable that the second encoding method is a different encoding method for each of the representative value data and the classification data.
[0009]
In the data compression method according to the present invention, it is preferable to obtain the quantized data by performing the quantization after wavelet transform of the original data, and to perform the quantization after DCT transform of the original data. It is preferable to obtain the quantized data.
[0010]
In addition, when obtaining quantized data after wavelet transform, quantization and encoding are performed on the wavelet transform data for each subband after wavelet transform.
[0011]
Furthermore, it is preferable that the representative value data is 0-value data representing a 0 value of the quantized data, and the classification data is non-zero value data representing a non-zero value of the quantized data.
[0012]
Here, as the “representative value of quantized data”, various values such as an average value of data values, a value that appears most frequently in quantized data, and a zero value can be used. As a method for classifying quantized data into representative values and other classification data, various classification methods can be employed. For example, a method of simply classifying quantized data into representative values and non-representative values, a method of classifying quantized data into representative values, values greater than or equal to representative values, and values less than or equal to representative values, data values based on representative values and representative values There are various methods such as a method of classifying the absolute value into a value equal to or smaller than a predetermined threshold and a value equal to or larger than a predetermined threshold.
[0013]
Further, “classification information data” has a value corresponding to the number of classifications. For example, when quantized data is classified into a representative value and other values, it becomes binary data, and the representative value and the representative value or more. If it is classified into a value of less than or equal to the representative value, it becomes ternary data.
[0014]
Furthermore, the reason that “at least the classification data is encoded by the second encoding method” is that the representative value data may not be encoded, for example, when the representative value is 0.
[0015]
“Different for each representative value data and classified data” means that the representative value data and the classified data have different encoding methods, and if there are a plurality of classified data, the encoding method for each classified data This includes cases where are different.
[0016]
The first encoding method is any one of Huffman encoding, run length encoding, B1 encoding, B2 encoding, Wyle encoding, Golomb encoding, Golomb-Rice encoding, and binary arithmetic encoding. Can be used.
[0017]
In addition, as the second encoding method, any of Huffman encoding, universal encoding, and multilevel arithmetic encoding can be used.
[0018]
In the data compression method according to the present invention, when the information amount of the encoded data is larger than a predetermined information amount determined based on the original data, the classification information data and / or the representative value data and the classification It is preferable that at least the classification data among the data is encoded by a third encoding method to obtain the encoded data.
[0019]
Here, the third encoding method is preferably any one of Huffman encoding, arithmetic encoding, and PCM (Palace Code Modulation) encoding without any encoding.
[0020]
The “predetermined amount of information determined based on the original data” may be the amount of information of the original data, which is smaller than the amount of information of the original data, but the classification information data and / or the representative value data and the classification data. Among them, it is preferable to set the information amount so that the amount of information is reduced when at least the classification data is encoded by the third encoding method.
[0021]
In the data compression apparatus according to the present invention, the original data is quantized to obtain quantized data, and the quantized data is encoded to obtain encoded data obtained by compressing the original data.
The quantized data is classified into representative value data representing a representative value of the quantized data and at least one classification data representing a data value other than the representative value, and classification information data representing information of the classification Classification means to obtain;
First encoding means for encoding the classification information data by a first encoding method;
And a second encoding unit that encodes at least the classification data of the representative value data and the classification data by a second encoding method.
[0022]
In addition, it is preferable that the second encoding method performed in the second encoding unit is an encoding method that is different for each of the representative value data and the classification data.
[0023]
In the data compression device according to the present invention, wavelet transform means for obtaining the quantized data by performing the quantization after wavelet transform of the original data, or performing the quantization after DCT transform of the original data. It is preferable to further comprise DCT means for obtaining the quantized data.
[0024]
Further, the classification means uses the representative value data as zero-value data representing zero values of the quantized data, and the classification data as non-zero value data representing non-zero values of the quantized data. It is preferable that it is a means to classify | categorize.
[0025]
Furthermore, in the data compression device according to the present invention, a determination means for determining whether or not the information amount of the encoded data is larger than a predetermined information amount determined based on the original data;
When the determination means determines that the information amount of the encoded data is larger than the predetermined information amount, at least the classification data among the classification information data and / or the representative value data and the classification data is determined. It is preferable that the apparatus further includes third encoding means for encoding the third encoding method to obtain the encoded data.
[0026]
In addition, you may record and provide on a computer-readable recording medium as a program which makes a computer perform the process performed in the said data compression method.
[0027]
【The invention's effect】
According to the present invention, the quantized data obtained by quantizing the original data is classified according to the data value to obtain representative value data, classification data, and classification information data representing the classification result. Here, although the classification information data depends on the classification method, as described above, it becomes data with a relatively small amount of information such as binary or ternary value, and therefore, with a simple encoding method, the calculation amount is small and the compression rate is high. Encoding can be performed. The representative value data is data consisting of only one value, and can be encoded with a relatively high compression rate with a small amount of calculation. Furthermore, although the classification data other than the representative value is multi-valued, the representative value is excluded, so that the ratio in the total quantized data is relatively low. For example, in the case of 0.5 bit / pixel (when 1/20 compression is applied to 10-bit data), the non-zero value ratio is about 13% when the zero value is used as a representative value. For this reason, although it is multi-valued, the amount of data to be calculated is small.
[0028]
Therefore, although the present invention encodes multilevel data, the amount of calculation is smaller than that of the conventional compression algorithm described above, and the representative value data and the classification information data have a small amount of calculation. It can be compressed with a high compression rate. As a result, the original data can be efficiently compressed at a high speed with a high compression rate.
[0029]
In addition, by classifying quantized data into 0 values and non-zero values, the classification becomes easy, and it is not necessary to compress 0-value classified data. Data compression can be performed.
[0030]
Furthermore, since the classification information data is data with a relatively small amount of information such as binary or ternary values, the operations are relatively simple, such as Huffman coding, run length coding, B1 / B2 coding, Wyle coding, Golomb The classification information data can be encoded efficiently and at high speed by any one of encoding, Golomb-Rice encoding, and binary arithmetic encoding.
[0031]
In addition, since multivalued data in classification data has a small ratio in all quantized data, Huffman coding, universal coding, and multivalued arithmetic coding, which can perform coding at a high compression rate even though the operation is complicated The encoding can be efficiently performed by any of the encoding methods.
[0032]
According to the present invention, the original data can be compressed with a high compression ratio. For example, when the original data is image data representing a background image with a flat signal value, the original data is quantized as described above. When the data is classified into the representative value data and the classification data, only one of the representative value data and the classification data has information, so the data amount of the classification information data is increased and the encoded data There is a possibility that the information amount becomes larger than the information amount of the original data. In such a case, the information amount of the encoded data is compared with a predetermined information amount determined based on the original data. If the former is larger than the latter, the classification information data and / or the representative value data and the classification data By encoding at least the classification data by the third encoding method, it is possible to encode the original data without increasing the amount of information compared to the original data.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
[0034]
FIG. 1 is a schematic block diagram showing the configuration of a data compression apparatus according to the first embodiment of the present invention. As shown in FIG. 1, the data compression apparatus according to the first embodiment includes wavelet transform means 1 for obtaining wavelet transform data WS for each subband at each resolution by wavelet transforming original image data S, and wavelet transform data WS. Classification and bit allocation means 2 for classifying and determining bit allocation for each class, and quantizing the wavelet transform data WS based on the bit allocation determined by the classification and bit allocation means 2 to obtain quantized data RS A quantizing means 3 to be obtained; a classifying means 4 for classifying the quantized data RS into 0 value and non-zero value to obtain zero-value data S0, non-zero value data NS and classification information data B representing the classification result; First encoding means 5 for encoding the classification information data B by the first encoding method, and non-zero value data It comprises a second encoding means (6) for coding by the second coding scheme S, a recording unit 7 for recording on a recording medium encoded data F obtained by the encoding.
[0035]
The wavelet transform unit 1 performs wavelet transform on the original image data S as follows. First, as shown in FIG. 2A, the original image data S is wavelet transformed to be decomposed into four data LL1, HL0, LH0 and HH0 for each of a plurality of resolutions. Here, the data LL1 represents an image obtained by reducing the length and width of the image to ½, and the data HL0, LH0, and HH0 represent images of vertical edges, horizontal edges, and oblique edge components, respectively. Then, as shown in FIG. 2B, the data LL1 is further wavelet transformed to obtain four data LL2, HL1, LH1, and HH1. Here, the data LL2 represents an image obtained by further reducing the length and width of the data LL1 to ½, and the data HL1, LH1, and HH1 represent images of the vertical edge, the horizontal edge, and the diagonal edge component of the data LL1, respectively. Become. Then, the wavelet transformation is repeated as many times as desired for the data LL obtained each time the wavelet transformation is performed, thereby obtaining data for a plurality of resolutions. For example, when wavelet transformation is performed three times, data is obtained for each of the three levels of resolution as shown in FIG. In the present embodiment, the data for each resolution, that is, for each subband, is collectively referred to as wavelet transform data WS.
[0036]
The classification / bit allocation means 2 determines the classification and bit allocation of the wavelet transform data WS as follows. For example, as shown in FIG. 2C, for the wavelet transform data WS for each subband obtained by performing the wavelet transform, data LL2, data HHn (n = 0 to 2), data HLn ( Classification is performed into four classes of n = 0 to 2) and data LHn (n = 0 to 2). The reason for classifying in this way is that the data of each class has statistically similar signal values. For each class of data, for example, the square error of the data value is calculated, and the quantization bit distribution is determined according to the magnitude of the square error. For example, if the square error is large, a large number of bits is allocated to store the data, and if the square error is small, the data may be somewhat lost, so the number of allocated bits is decreased.
[0037]
The quantizing unit 3 quantizes the wavelet transform data WS by the TCQ (Trellis Coded Quantization) method based on the bit allocation determined by the classification / bit allocation unit 2. Here, the TCQ method is an extension of image coding based on TCM (Trellis Coded Modulation) developed in the field of signal communication and voice coding. The TCQ method can theoretically be regarded as the same meaning as infinite-length vector quantization, and from the viewpoint of rate-distortion theory, the S / N of several dB can be improved compared to the conventional scalar quantization. it can. This TCQ method is one method of vector quantization, and outputs the same number of quantized values (q1, q2... Qn) with respect to the input of a plurality of signals (b1, b2... Bn). The quantization value here is determined using the Viterbi algorithm, and is determined by searching for a path that minimizes the total quantization error with respect to the input vector. In this embodiment, the Viterbi algorithm is applied with the square of each quantization error as the path cost. Here, in the TCQ method, a set of a plurality of quantized representative values is defined, and quantization is performed by properly using this set for each state. For example, considering the case where the bit allocation determined by the classification / bit allocation means 2 is 4 bits and an index after quantization (details will be described later) is expressed by 4 bits or less, 16 points of quantization representatives If the value is used, the quantization can be easily performed. However, the TCQ system has two sets of 16 representative quantization values (for example, Q1 and Q2), Q1 in the state S0, and Q2 in the state S1. Thus, a set of quantized representative values used for each state is defined. Then, a state transition rule common to quantization and inverse quantization is determined in advance, and quantization is advanced while state transition is performed for each pixel. In this way, by performing the quantization process, the apparent quantization representative value can be used as 32 double points (however, 31 points when 0 is overlapped), and the path options for reducing the quantization error can be selected. Can be spread. Hereinafter, a specific method of the TCQ method will be described.
[0038]
FIG. 3 is a diagram showing four scalar quantizers D0 to D3, FIG. 4 is a diagram showing a sum set (summing quantizer) of two scalar quantizers, and FIG. Trellis) Transition diagram. In FIG. 3, Δ is a quantization step size determined by quantization bit allocation, and in this embodiment, Δ = 0.5. FIG. 4 shows thumb set quantizers D0 & D2 (= A0) of scalar quantizers D0 and D2 and thumb set quantizers D1 & D3 (= A1) of scalar quantizers D1 and D3. Further, in the present embodiment, a signal composed of five elements is used as wavelet transform data WS as an input signal, and this is used as WS = (0.5, −3, −3, 0.25, −2.5). ). FIG. 5 shows, as a transition state, the optimal quantizer selection state when a signal having these five elements is quantized at once, and shows the transition state by the selected quantizer. To do. That is, here, the state in which the thumb set quantizer D0 & D2 is selected will be described as “state D0 & D2.” First, the quantization method will be described.
[0039]
The quantization method by the TCQ method checks all paths of trellis transitions defined as shown in FIG. 5, and minimizes the square error (hereinafter referred to as MSE) after quantization of all elements of the input signal. Is to detect the path. Specifically, when 0.5 which is the first element of WS is quantized by the quantizer D2 among D0 to D3, the MSE is (0.5−Δ). 2 = 0.0 and the minimum. Similarly, when the next element-3 is quantized by the quantizer D2, the MSE becomes (−3 − (− 6Δ). 2 = 0.0 and the minimum.
[0040]
On the other hand, as a restriction on the trellis transition, for the thumb set quantizer D0 & D2, the next quantizer is D0 (state shifts to D0 & D2) or D2 (state shifts to D1 & D3), and for the thumb set quantizer D2 & D0 The quantizer of D2 (state shifts to D0 & D2) or D0 (state shifts to D1 & D3), the next quantizer for the thumb set quantizer D1 & D3 is D1 (state shifts to D2 & D0) or D3 (state The path is restricted such that the next quantizer selects D3 (the state moves to D2 & D0) or D1 (the state moves to D3 & D1) for the thumb set quantizer D3 & D1. . This limit is set in advance. For the thumb set quantizer D0 & D2, the next quantizer D0 is in state D0 & D2, D2 is in state D1 & D3, and the thumb set quantizer D2 & D0 is The quantizer D2 is in the state D0 & D2, D0 is in the state D1 & D3, the thumbset quantizer D1 & D3 is in the next quantizer D1 is in the state D2 & D0, D3 is in the state D3 & D1, and the thumbset quantizer D3 & D1 is in the next The quantizer D3 corresponds to the states D2 & D0, and D1 corresponds to the states D3 & D1.
[0041]
Then, the transition length constraint length is made to correspond to the number of signal elements (in this embodiment, the constraint length is set to 5 because it has five elements), and the MSE is calculated as the cost for all combinations of trellis transitions. The path that minimizes the sum of the two is selected, and the quantizer is selected by the path to be quantized. Note that the cost is basically calculated for all paths, but if the cumulative cost value of the path for which the current cost is calculated exceeds the minimum cost for the path calculated so far, By ending the calculation of the cost and shifting to the calculation of the cost in the next pass, the calculation speed can be increased. FIG. 5 shows the costs for all the paths. The paths with the lowest costs (indicated by bold lines in the figure) are sequentially selected after the quantizers D2 & D0 (= A0) are selected as initial states. D2 (states D0 & D2 = A0), D2 (states D1 & D3 = A1), D3 (states D3 & D1 = A1), D1 (states D3 & D1 = A1), D3 (states D2 & D0 = A0) and the quantizer selection path shift , The signal is quantized to WS ′ = (0.5, −3, 3, 0, −2.5). Note that MSE = 0 for the elements 0.5, -3, 3, and -2.5 of the signal WS, but the element 0.25 is minimum when the quantizer D1 is selected, and MSE = 0. 0.0625. Therefore, the cost at this time is
(0.5-Δ) 2 + (-3-(-6Δ)) 2 + (3-6Δ) 2 + (0.25-0) 2 + (-2.5-(-5Δ)) 2 = 0.0625
It becomes.
[0042]
Here, the index of the quantizer is defined as shown in FIG. 4, and in the present embodiment, this index is output instead of the quantized value. Further, the sum set quantizer D0 & D2 is coded into a 2-bit code value such as 00, D2 & D0 is 01, D1 & D3 is 10, D3 & D1 is 11, and so on. Accordingly, the quantized data RS obtained here corresponds to WS ′ = (0.5, −3, 3, 0, −2.5) and the index of the quantizer shown in FIG.
(01,3,3,0, -3) and code 01 representing the initial state
It becomes. In the case of 8-state trellis transition, the information indicating the initial state is 3 bits.
[0043]
Next, the inverse quantization method in the TCQ method will be described. The inverse quantization method is performed by dequantizing elements in order from the first value of the index. As described above, when the index is (1, -3, 3, 0, -3), since the first value of the index is 1, the two thumbset quantizers A0 and A1 shown in FIG. 4 are compared. Then, the initial value of the element may be Δ (= 0.5) or −Δ (= −0.5), but since the initial state is 01, that is, the state D2 & D0 (= A0), it is shown in FIG. Since the quantizer D2 is selected according to the rule of trellis transition, it is inversely quantized to Δ of the quantizer D2, that is, 0.5. Then, the transition state changes to D2 (D0 & D2 = A0). Similarly, since the next value of the index is −3, when the two thumbset quantizers A0 and A1 are compared, the corresponding element is −6Δ (= −3) or −5Δ (= −2. 5) is conceivable. Since the quantizer D2 is selected according to the rule of trellis transition, it is inversely quantized to −6Δ of the quantizer D2, that is, −3. Then, the transition state changes to D2 (D1 & D3 = A1).
[0044]
Similarly, since the next value of the index is 3, when two thumbset quantizers A0 and A1 are compared, 5Δ (= 2.5) or 6Δ (= 3) can be considered as the corresponding element. However, since the quantizer D3 is selected according to the rule of trellis transition, it is inversely quantized to 6Δ of the quantizer D3, that is, 3. Then, the transition state changes to D3 (D3 & D1 = A1). Furthermore, since the next value is 0, when the two thumbset quantizers A0 and A1 are compared, the corresponding elements are both 0, and the quantizer D1 is selected according to the rule of trellis transition. Therefore, the quantizer D1 is dequantized to 0. In this case, the transition state remains D1 (D3 & D1 = A1). Since the value of the last index is -3, when the two thumbset quantizers A0 and A1 are compared, the corresponding element is -6Δ (= -3) or -5Δ (= -2.5). Though conceivable, since the quantizer D3 is selected according to the rule of trellis transition, the quantizer D3 is dequantized to −5Δ, that is, −2.5. As a result, a signal of (0.5, -3, 3, 0, -2.5) is restored.
[0045]
Thus, quantization can be performed by defining a trellis transition and selecting an optimal quantizer based on the rule. The details of the TCQ method are described in the above-mentioned P. Sriram et al.
[0046]
The classifying means 4 classifies the quantized data RS according to the data value. At this time, the quantized data RS is classified into a representative value and a data value other than the representative value. For example, in the present embodiment, the 0 value of the quantized data RS is used as a representative value, and the quantized data RS is classified into two values: 0 value data S0 and non-zero value data NS. Here, when wavelet transform is applied to the original image data S and quantization is performed, the ratio of the 0 value in the quantized data RS becomes very large. For example, 0.5 bit / pixel (for 10 bit original image data S) In the case of compression to 1/20 compression, the ratio of non-zero value data NS is about 13% of all data. In this way, the quantized data RS is classified into 0 value and non-zero value to obtain zero-value data S0 and non-zero value data NS, and classification information data B representing information related to this classification. Here, the classification information data B is binary data representing the result of classifying the quantized data RS into 0 value and non-zero value.
[0047]
The first encoding means 5 is for encoding the classification information data B. As the encoding method performed here, Huffman encoding, run-length encoding, B1 code with relatively simple operations are used. , B2 encoding, Wyle encoding, Golomb encoding, Golomb-Rice encoding, and binary arithmetic encoding can be employed.
[0048]
Huffman coding is widely known as a general method for composing compact codes that can be decoded instantaneously. In Huffman coding, if a probability distribution of the information source alphabet is given, a compact code that can always be instantaneously decoded can be obtained by executing a simple algorithm, which is an extremely effective coding algorithm.
[0049]
In the run length coding, when the appearance probability of the symbol “0” is large and close to about 1 in the binary information, or when long “0” sequences or “1” sequences appear alternately, the symbol “0” , A method of encoding a specific pattern in consideration of a difference in appearance probability between “0” and “1”.
[0050]
B1 encoding and B2 encoding are one method of run-length encoding, and details thereof are described in “Digital signal processing of images, Takahiko Fukiuki, Nikkan Kogyo Shimbun, May 25, 1981”. ing.
[0051]
Wyle coding is a method of run-length coding, which measures the probability distribution of a series of symbols represented by a sequence of “0” and “1”, and uses a short code for a series with a large probability. This is a method proposed based on the principle that an average code length is shortened by assigning a long code to a small series of codes.
[0052]
Golomb coding has long been known as an efficient entropy coding code for geometric distribution information sources. Although this code cannot necessarily be a compact code, it is called a Golomb-Rice code especially when the degree is a power of 2, and can be encoded and decoded with a simple configuration.
[0053]
Arithmetic coding uses a compact code that can be uniquely decoded. This encoding is very general encoding including Huffman encoding. Encoding and decoding can be performed by performing arithmetic operations, and one symbol of the information source symbol sequence is encoded by executing one algorithm. Arithmetic coding can be considered as a process of sequentially dividing the unit interval [0, 1) into partial intervals so as to satisfy the following two conditions.
[0054]
(1) Each code word becomes the sum (cumulative probability) of appearance probabilities of information source symbols preceding it.
[0055]
(2) The width of the partial section to the right of each code word is the probability of that symbol.
[0056]
Note that binary arithmetic coding is suitable for binary data.
[0057]
Note that the above-described run length coding, B1 coding, B2 coding, Wyle coding, Golomb coding, Golomb-Rice coding, and binary arithmetic coding are suitable for coding binary data. It is a method.
[0058]
The second encoding means 6 is for encoding the non-zero value data NS. The encoding method performed here is any one of Huffman encoding, universal encoding, and multi-value arithmetic encoding. Can be adopted. These encoding methods are capable of encoding data efficiently, that is, with a high compression rate, although the operation is complicated.
[0059]
Universal encoding is an asymptotically optimal block encoding method for an information source whose parameters are unknown, and satisfies the following two conditions.
[0060]
(1) Encoding is performed only depending on the observed statistics of the information source message block, and is not dependent on past or future blocks, that is, performed without memory for each block.
[0061]
(2) As the block length becomes infinitely long, the characteristics of the optimum code expressed by various measures are achieved with an arbitrary degree of approximation.
[0062]
As universal encoding, Lynch-Davission encoding, Lawrence encoding, and the like are well known.
[0063]
Multi-level arithmetic coding is suitable for multi-level data in the above-described arithmetic coding.
[0064]
The details of the encoding methods performed in the first and second encoding means 5 and 6 described above are described in "Digital Communication Engineering, Kasahara et al., Shosodo, February 25, 1992". ing.
[0065]
Next, the operation of the first embodiment will be described. FIG. 6 is a flowchart showing processing performed in the data compression apparatus according to the first embodiment.
[0066]
First, wavelet transformation is performed on the original image data S in the wavelet transformation means 1, and the wavelet transformation data WS is obtained as described above (step S1). Next, the classification / bit distribution unit 2 determines the classification of the wavelet transform data WS and the bit distribution of each class (step S2), and the quantization unit 3 determines the bit distribution of the wavelet transform data WS of each class. Quantized data RS is obtained based on (step S3). The quantized data RS is classified into 0-value data S0 and non-zero value data NS by the classification means 4, and classification information data B representing the classification of the zero-value data S0 and the non-zero value data NS is obtained (step). S4).
[0067]
The classification information data B is processed in the first encoding means 5 by the above-mentioned Huffman encoding, run length encoding, B1 encoding, B2 encoding, Wyle encoding, Golomb encoding, Golomb-Rice encoding, and binary arithmetic. Encoding is performed by one of the encoding methods (step S5). On the other hand, the non-zero value data NS is encoded by the second encoding means 6 by any one of the encoding methods described above, Huffman encoding, universal encoding, and multilevel arithmetic encoding (step S6). In addition, the process of step S5, S6 may be reverse and may be performed in parallel. Then, the encoded classification information data B and non-zero value data NS are recorded as encoded data F on the recording medium in the recording means 7 (step S7), and the process is terminated.
[0068]
Note that in order to decode the encoded data F, a process reverse to the flowchart shown in FIG. 6 may be performed. That is, the encoded classification information data B and the non-zero value data NS included in the encoded data F are decoded by a decoding method corresponding to the encoding method to obtain the classification information data B and the non-zero value data NS. Based on the classification information data B and the non-zero value data NS, the zero value data S0 is obtained to obtain the quantized data RS. Then, the quantized data RS is inversely quantized to obtain wavelet transform data WS, and the original image data S is obtained by performing inverse wavelet transform on the wavelet transform data WS.
[0069]
Here, the classification information data B obtained in the first embodiment is binary data, and the information amount is relatively small. Therefore, encoding can be performed with a small amount of computation and a high compression rate by the simple encoding method performed in the first encoding means 5 described above. Also, since the zero value data S0 originally has no information, it can be decoded if it has only classification information of 0 value and non-zero value without encoding. Furthermore, although the non-zero value data NS is multi-valued, the ratio thereof is only about 13% of the total quantized data RS as described above, so that the efficiency performed in the second encoding means 6 described above is good. However, the amount of calculation can be reduced even if encoding is performed by an encoding method with complicated calculation.
[0070]
Therefore, in the present embodiment, although the multi-value non-zero value data NS is encoded, the amount of calculation is smaller than that of the conventional compression algorithm described above, and the classification information data B is small. It is possible to perform compression at a high compression rate with a large amount of calculation. Thereby, the original image data S can be efficiently compressed at a high speed with a high compression rate.
[0071]
In the present embodiment, since the quantized data RS is classified into 0-value data S0 and non-zero-value data NS, the classification becomes easy, and the 0-value data S0 does not need to be compressed. The amount of calculation can be reduced and the original image data S can be compressed at a higher speed.
[0072]
It should be noted that the compression efficiency and calculation are the same when the original image data S is compressed to 1/20 by the conventional WTCQ method described above and when the original image data S is compressed to 1/17 by the encoding method according to the present embodiment. The amount is substantially equal, and it has been confirmed by experiments of the present applicant that the degree of performance degradation is relatively small in the encoding system according to the present embodiment as compared with the WTCQ system.
[0073]
Next, a second embodiment of the present invention will be described. FIG. 7 is a schematic block diagram showing the configuration of the data compression apparatus according to the second embodiment of the present invention. In the second embodiment, DCT means 10 for converting the original image data S by discrete cosine transform (DCT) instead of wavelet transform is provided, and data classification is performed as in the case of performing wavelet transform. This is different from the first embodiment. In the second embodiment, DCT, bit allocation, and quantization are standardized quantization methods according to the JPEG standard.
[0074]
As described above, by applying the present invention in a standardized method in accordance with the JPEG standard, the original image data S can be encoded efficiently and at high speed as in the first embodiment.
[0075]
According to the first and second embodiments, the original image data S can be compressed with a high compression rate. For example, the original image data S represents a background image with a flat signal value. In this case, if the original image data S is quantized and classified into the zero-value data S0 and the non-zero value data NS as described above, the information is classified only into the non-zero value data NS. As the amount increases, the information amount of the encoded data F may become larger than the information amount of the original image data S. Hereinafter, an embodiment for solving this problem will be described as a third embodiment.
[0076]
FIG. 8 is a schematic block diagram showing the configuration of the data compression apparatus according to the third embodiment of the present invention. Note that in the third embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and detailed description thereof is omitted. In the third embodiment, the comparison unit 12 compares the information amount of the encoded data F1 for each subband with the information amount of the wavelet transform data WS in the encoded data F obtained in the first embodiment. Based on the comparison result by the comparison means 12, when the information amount of the encoded data F1 of each subband is larger than the information amount of the wavelet transform data WS, the quantized data RS is encoded by the third encoding method. The third embodiment is different from the first embodiment in that it includes third encoding means 13 that obtains encoded data F2.
[0077]
In the comparison means 12, the information amount of the encoded data F1 of each subband is compared with the information amount of the wavelet transform data WS. Here, as the information amount of the wavelet transform data WS, in the case of the TCQ method described above, since the original number of bits is 16 bits, for example, the length of the signal sequence in the quantized data RS × 16 bits is the wavelet transform data WS. The amount of information. Then, when the code amount of the encoded data F1 is larger than the code amount of the wavelet transform data WS, the third encoding means 13 encodes the quantized data RS by the third encoding method to generate the encoded data F2. Is what you get. When the data amount of the encoded data F1 is smaller than the data amount of the wavelet transform data WS, the encoded data F1 is input to the recording means 7 as the encoded data F as it is.
[0078]
The encoding method performed by the third encoding means 13 is to encode data efficiently, that is, with a high compression ratio, although the operation is complicated like Huffman encoding or multi-value arithmetic encoding. However, PCM encoding that does not encode at all may be used. The details of the encoding method performed in the third encoding means 13 are also described in the above-mentioned document of Kasahara et al.
[0079]
Next, the operation of the third embodiment will be described. FIG. 9 is a flowchart showing the operation of the third embodiment. In the flowchart shown in FIG. 9, the processing in steps S11 to S16 is the same as the processing in steps S1 to S6 in the flowchart shown in FIG. In step S16, when the non-zero value data NS is encoded by the second encoding method to obtain the encoded data F1 for each subband, the encoded data F1 is input to the comparison unit 12 and is encoded for each subband. The converted data F1 is compared with the wavelet transform data WS (step S17). Then, it is determined whether or not the information amount of the encoded data F1 in each subband is larger than the information amount of the wavelet transform data WS (step S18), and the information amount of the encoded data F1 is the information of the wavelet transform data WS. If larger than the amount, the third encoding means 13 encodes the sub-band quantized data RS by the third encoding method to obtain encoded data F2 (step S19). On the other hand, when step S18 is negative, the encoded data F1 is used as the final encoded data F as it is for the subband. Then, the processing from step S17 to step S19 is performed for each subband, and the encoded data F1 or the encoded data F2 obtained for each subband is recorded on the recording medium in the recording means 7 as the final encoded data F. (Step S20) and the process ends.
[0080]
As described above, in the third embodiment, the information amount of the encoded data F1 is compared with the information amount of the wavelet transform data WS in a certain subband, and when the former is larger than the latter, Since the quantized data RS is encoded by the third encoding method such as the Huffman encoding described above, the information amount of the finally obtained encoded data F is larger than the information amount of the wavelet transform data WS. Thus, the original image data S can be efficiently encoded.
[0081]
Note that in order to decode the encoded data F obtained in the third embodiment, a process reverse to the flowchart shown in FIG. 9 may be performed. That is, the encoding method of the encoded data F1 and F2 for each subband included in the encoded data F is determined, and is decoded by a decoding method corresponding to the encoding method, so that the non-zero value data NS and the classification information data B And the quantized data RS are obtained. And about the group of classification | category information data B and non-zero value data NS, 0 value data S0 is calculated | required based on these, and quantization data RS is obtained. Then, the quantized data RS is inversely quantized to obtain wavelet transform data WS, and the original image data S is obtained by performing inverse wavelet transform on the wavelet transform data WS.
[0082]
Next, a fourth embodiment of the present invention will be described. FIG. 10 is a schematic block diagram showing the configuration of the data compression apparatus according to the fourth embodiment of the present invention. In the fourth embodiment, the DCT means 10 for converting the original image data S by discrete cosine transform (DCT) instead of wavelet transform in the third embodiment is provided, and the wavelet transform is performed. This is different from the third embodiment in that data classification is not performed. In the fourth embodiment, as in the second embodiment, DCT, bit allocation, and quantization are standardized quantization methods according to the JPEG standard.
[0083]
In the fourth embodiment, the information amount of the encoded data F obtained in the second embodiment is compared with the information amount of the original image data S. If the former is larger than the latter, the third code The encoding means 13 encodes the quantized data RS by the third encoding method to obtain the encoded data F3, which is recorded as final encoded data F on the recording medium by the recording means 7.
[0084]
In this way, in the standardized method in accordance with the JPEG standard, the information amount of the encoded data F is compared with the information amount of the original image data S, as in the third embodiment, and the information amount of the encoded data F is compared. Is larger than the information amount of the original image data S, the original image data can be efficiently and at high speed similarly to the third embodiment by encoding the quantized data RS by the third encoding method. S can be encoded.
[0085]
In the above-described embodiment, the quantized data RS is classified into 0-value data S0 and non-zero-value data NS with the 0 value as a representative value. You may classify | categorize into three of the value more than a threshold value. Here, for values less than the predetermined threshold value, encoding is performed in the same manner as in the above embodiment, and for values greater than the predetermined threshold value, the probability of statistical occurrence is very small. Is preferable. Further, the representative value is not limited to 0 value, and an average value of the quantized data RS may be used. In this case, the average value and other values, the average value, a value greater than and less than the average value, and the average value and the absolute value of the data value based on the average value and a value that is greater than or equal to the predetermined threshold value It can classify | categorize by various methods, such as classifying.
[0086]
In the above embodiment, image data is encoded by the data compression method and apparatus according to the present invention, but various data such as audio data and moving image data can be encoded.
[0087]
Further, in the third and fourth embodiments, the information amount of the encoded data F1 is compared with the information amount of the wavelet transform data WS or the original image data S. However, the wavelet transform data WS or the original image data S is compared. Although it is smaller than the information amount, the quantized data RS may be compared with a predetermined threshold value such that the amount of information is smaller when the quantized data RS is encoded by the third encoding method.
[Brief description of the drawings]
FIG. 1 is a schematic block diagram showing the configuration of a data compression apparatus according to a first embodiment of the present invention.
FIG. 2 is a diagram for explaining wavelet transform
FIG. 3 shows a scalar quantizer.
FIG. 4 shows a thumb set of two scalar quantizers.
FIG. 5: Trellis transition diagram of 4 states
FIG. 6 is a flowchart showing processing performed in the first embodiment.
FIG. 7 is a schematic block diagram showing the configuration of a data compression apparatus according to a second embodiment of the present invention.
FIG. 8 is a schematic block diagram showing the configuration of a data compression apparatus according to a third embodiment of the present invention.
FIG. 9 is a flowchart showing processing performed in the third embodiment.
FIG. 10 is a schematic block diagram showing the configuration of a data compression apparatus according to a fourth embodiment of the present invention.
FIG. 11 is a schematic block diagram showing the configuration of a conventional data compression apparatus (part 1).
FIG. 12 is a schematic block diagram showing the configuration of a conventional data compression apparatus (part 2).
[Explanation of symbols]
1 Wavelet transform means
2 Classification and bit allocation means
3 Quantization means
4 classification means
5 First encoding means
6 Second encoding means
7 Recording means
10 DCT means
12 Comparison means
13 Third encoding means

Claims (17)

オリジナルデータをウェーブレット変換した後に量子化して量子化データを得、該量子化データを符号化して前記オリジナルデータを圧縮した符号化データを得るデータ圧縮方法において、
前記量子化データを、該量子化データの代表値を表す代表値データと、該代表値以外のデータ値を表す少なくとも1つの分類データとに分類するとともに、前記代表値データおよび前記分類データの数に応じた値を有する分類情報データを得、
前記分類情報データを第1の符号化方式であるGolomb-Rice符号化により符号化し、
前記代表値データおよび前記分類データのうち少なくとも前記分類データを第2の符号化方式により符号化して前記符号化データを得ることを特徴とするデータ圧縮方法。
In a data compression method for obtaining quantized data by quantizing original data after wavelet transform, encoding the quantized data and obtaining encoded data obtained by compressing the original data,
The quantized data is classified into representative value data representing a representative value of the quantized data and at least one classification data representing a data value other than the representative value, and the number of the representative value data and the classified data To obtain classification information data having a value according to
The classification information data is encoded by Golomb-Rice encoding which is a first encoding method,
A data compression method characterized in that at least the classification data among the representative value data and the classification data is encoded by a second encoding method to obtain the encoded data.
前記第2の符号化方式が、前記代表値データと前記分類データとで異なる符号化方式であることを特徴とする請求項1記載のデータ圧縮方法。  The data compression method according to claim 1, wherein the second encoding method is an encoding method different between the representative value data and the classification data. 前記分類データが複数ある場合、前記第2の符号化方式が前記分類データ毎に異なる符号化方式であることを特徴とする請求項1または2記載のデータ圧縮方法。  3. The data compression method according to claim 1, wherein when there are a plurality of classification data, the second encoding method is an encoding method that is different for each classification data. 4. 前記代表値データが前記量子化データの0値を表す0値データであり、前記分類データが前記量子化データの非0値を表す非0値データであることを特徴とする請求項1から3のいずれか1項記載のデータ圧縮方法。  4. The representative value data is zero-value data representing a zero value of the quantized data, and the classification data is non-zero value data representing a non-zero value of the quantized data. The data compression method according to any one of the above. 前記第2の符号化方式が、ハフマン符号化、ユニバーサル符号化、および多値算術符号化のいずれかであることを特徴とする請求項1から4のいずれか1項記載のデータ圧縮方法。  5. The data compression method according to claim 1, wherein the second encoding method is any one of Huffman encoding, universal encoding, and multilevel arithmetic encoding. 前記符号化データの情報量が前記オリジナルデータに基づいて定められる所定の情報量よりも大きい場合は、前記分類情報データおよび前記代表値データと前記分類データとのうち少なくとも前記分類データを第3の符号化方式により符号化して前記符号化データを得ることを特徴とする請求項1から5のいずれか1項記載のデータ圧縮方法。  When the information amount of the encoded data is larger than a predetermined information amount determined based on the original data, at least the classification data among the classification information data, the representative value data, and the classification data 6. The data compression method according to claim 1, wherein the encoded data is obtained by encoding using an encoding method. 前記第3の符号化方式が、ハフマン符号化、算術符号化、およびPCM符号化のいずれかであることを特徴とする請求項6記載のデータ圧縮方法。  7. The data compression method according to claim 6, wherein the third encoding method is any one of Huffman encoding, arithmetic encoding, and PCM encoding. オリジナルデータをウェーブレット変換した後に量子化して量子化データを得、該量子化データを符号化して前記オリジナルデータを圧縮した符号化データを得るデータ圧縮装置において、
前記量子化データを、該量子化データの代表値を表す代表値データと、該代表値以外のデータ値を表す少なくとも1つの分類データとに分類するとともに、前記代表値データおよび前記分類データの数に応じた値を有する分類情報データを得る分類手段と、
前記分類情報データを第1の符号化方式であるGolomb-Rice符号化により符号化する第1の符号化手段と、
前記代表値データおよび前記分類データのうち少なくとも前記分類データを第2の符号化方式により符号化する第2の符号化手段とを備えたことを特徴とするデータ圧縮装置。
In a data compression apparatus for obtaining encoded data obtained by compressing the original data by encoding the quantized data by quantizing the original data after wavelet transform,
The quantized data is classified into representative value data representing a representative value of the quantized data and at least one classification data representing a data value other than the representative value, and the number of the representative value data and the classified data Classification means for obtaining classification information data having a value according to
First encoding means for encoding the classification information data by Golomb-Rice encoding which is a first encoding method;
A data compression apparatus comprising: a second encoding unit that encodes at least the classification data of the representative value data and the classification data by a second encoding method.
前記第2の符号化手段において行われる前記第2の符号化方式が、前記代表値データと前記分類データとで異なる符号化方式であることを特徴とする請求項8記載のデータ圧縮装置。  9. The data compression apparatus according to claim 8, wherein the second encoding method performed by the second encoding unit is an encoding method different between the representative value data and the classification data. 前記分類データが複数ある場合、前記第2の符号化方式が前記分類データ毎に異なる符号化方式であることを特徴とする請求項8または9記載のデータ圧縮装置。  10. The data compression apparatus according to claim 8, wherein when there are a plurality of classification data, the second encoding method is an encoding method different for each of the classification data. 前記分類手段は、前記代表値データを前記量子化データの0値を表す0値データとし、前記分類データを前記量子化データの非0値を表す非0値データとして、前記量子化データを分類する手段であることを特徴とする請求項8から10のいずれか1項記載のデータ圧縮装置。  The classification means classifies the quantized data using the representative value data as 0-value data representing a zero value of the quantized data and the classified data as non-zero value data representing a non-zero value of the quantized data. The data compression apparatus according to claim 8, wherein the data compression apparatus is a means for performing the processing. 前記符号化データの情報量が前記オリジナルデータに基づいて定められる所定の情報量よりも大きいか否かを判断する判断手段と、
該判断手段により前記符号化データの情報量が前記所定の情報量よりも大きいと判断された場合に、前記分類情報データおよび前記代表値データと前記分類データとのうち少なくとも前記分類データを第3の符号化方式により符号化して前記符号化データを得る第3の符号化手段とをさらに備えたことを特徴とする請求項8から11のいずれか1項記載のデータ圧縮装置。
Determining means for determining whether an information amount of the encoded data is larger than a predetermined information amount determined based on the original data;
When the determination means determines that the information amount of the encoded data is larger than the predetermined information amount, at least the classification data among the classification information data, the representative value data, and the classification data is a third The data compression apparatus according to any one of claims 8 to 11, further comprising third encoding means for obtaining the encoded data by encoding according to the encoding method.
オリジナルデータをウェーブレット変換した後に量子化して量子化データを得、該量子化データを符号化して前記オリジナルデータを圧縮した符号化データを得るデータ圧縮方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体において、
前記プログラムは、前記量子化データを、該量子化データの代表値を表す代表値データと、該代表値以外のデータ値を表す少なくとも1つの分類データとに分類するとともに、前記代表値データおよび前記分類データの数に応じた値を有する分類情報データを得る手順と、
前記分類情報データを第1の符号化方式であるGolomb-Rice符号化により符号化する手順と、
前記代表値データおよび前記分類データのうち少なくとも前記分類データを第2の符号化方式により符号化する手順とを有することを特徴とするコンピュータ読取り可能な記録媒体。
A computer having recorded a program for causing a computer to execute a data compression method of obtaining quantized data by quantizing the original data after wavelet transform and encoding the quantized data and compressing the original data In a readable recording medium,
The program classifies the quantized data into representative value data representing a representative value of the quantized data and at least one classification data representing a data value other than the representative value, and the representative value data and the A procedure for obtaining classification information data having a value corresponding to the number of classification data ;
A procedure for encoding the classification information data by Golomb-Rice encoding which is a first encoding method;
A computer-readable recording medium comprising: a procedure for encoding at least the classification data of the representative value data and the classification data by a second encoding method.
前記第2の符号化方式が、前記代表値データと前記分類データとで異なる符号化方式であることを特徴とする請求項13記載のコンピュータ読取り可能な記録媒体。  14. The computer-readable recording medium according to claim 13, wherein the second encoding method is an encoding method that is different between the representative value data and the classification data. 前記分類データが複数ある場合、前記第2の符号化方式が前記分類データ毎に異なる符号化方式であることを特徴とする請求項13または14記載のコンピュータ読取り可能な記録媒体。  15. The computer-readable recording medium according to claim 13, wherein when there are a plurality of classification data, the second encoding method is an encoding method that differs for each classification data. 前記分類する手順は、前記代表値データを前記量子化データの0値を表す0値データとし、前記分類データを前記量子化データの非0値を表す非0値データとして、前記量子化データを分類する手順であることを特徴とする請求項13から15のいずれか1項記載のコンピュータ読取り可能な記録媒体。  In the classification step, the representative value data is set to 0 value data representing a zero value of the quantized data, the classification data is set to non-zero value data representing a non-zero value of the quantized data, and the quantized data is The computer-readable recording medium according to any one of claims 13 to 15, which is a classification procedure. 前記符号化データの情報量が前記オリジナルデータに基づいて定められる所定の情報量よりも大きいか否かを判断する手順と、
前記符号化データの情報量が前記所定の情報量よりも大きいと判断された場合に、前記分類情報データおよび前記代表値データと前記分類データとのうち少なくとも前記分類データを第3の符号化方式により符号化して前記符号化データを得る手順とをさらに有することを特徴とする請求項13から16のいずれか1項記載のコンピュータ読取り可能な記録媒体。
A procedure for determining whether an information amount of the encoded data is larger than a predetermined information amount determined based on the original data;
When it is determined that the information amount of the encoded data is larger than the predetermined information amount, at least the classification data among the classification information data, the representative value data, and the classification data is converted into a third encoding method. The computer-readable recording medium according to any one of claims 13 to 16, further comprising a step of obtaining the encoded data by encoding according to the above.
JP20140999A 1998-07-17 1999-07-15 Data compression method and apparatus, and recording medium Expired - Fee Related JP3808241B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20140999A JP3808241B2 (en) 1998-07-17 1999-07-15 Data compression method and apparatus, and recording medium

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP20250198 1998-07-17
JP10-202501 1998-12-09
JP10-350159 1998-12-09
JP35015998 1998-12-09
JP20140999A JP3808241B2 (en) 1998-07-17 1999-07-15 Data compression method and apparatus, and recording medium

Publications (2)

Publication Number Publication Date
JP2000232366A JP2000232366A (en) 2000-08-22
JP3808241B2 true JP3808241B2 (en) 2006-08-09

Family

ID=27327945

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20140999A Expired - Fee Related JP3808241B2 (en) 1998-07-17 1999-07-15 Data compression method and apparatus, and recording medium

Country Status (1)

Country Link
JP (1) JP3808241B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7328150B2 (en) * 2002-09-04 2008-02-05 Microsoft Corporation Innovations in pure lossless audio compression
US7536305B2 (en) 2002-09-04 2009-05-19 Microsoft Corporation Mixed lossless audio compression
US8824553B2 (en) * 2003-05-12 2014-09-02 Google Inc. Video compression method
JP2005151391A (en) 2003-11-19 2005-06-09 Toshiba Corp Method and apparatus for coding moving image, and program
US8386271B2 (en) 2008-03-25 2013-02-26 Microsoft Corporation Lossless and near lossless scalable audio codec
JP5345977B2 (en) * 2010-06-14 2013-11-20 日本電信電話株式会社 Adaptive quantization method, adaptive quantization apparatus, and adaptive quantization program
CN111968656B (en) * 2014-07-28 2023-11-10 三星电子株式会社 Signal encoding method and device and signal decoding method and device

Also Published As

Publication number Publication date
JP2000232366A (en) 2000-08-22

Similar Documents

Publication Publication Date Title
Said et al. A new, fast, and efficient image codec based on set partitioning in hierarchical trees
Shapiro An embedded hierarchical image coder using zerotrees of wavelet coefficients
US6141446A (en) Compression and decompression system with reversible wavelets and lossy reconstruction
US5241395A (en) Adaptive transform coding using variable block size
US7602982B2 (en) Method for image coding by rate-distortion adaptive zerotree-based residual vector quantization and system for effecting same
Malvar Fast progressive wavelet coding
Yu et al. Bit-plane Golomb coding for sources with Laplacian distributions
US8116373B2 (en) Context-sensitive encoding and decoding of a video data stream
US7003171B1 (en) Method, apparatus and recording medium for data compression
JP3808241B2 (en) Data compression method and apparatus, and recording medium
KR100733949B1 (en) Lossless adaptive encoding of finite alphabet data
US7532763B2 (en) Method and a device for processing bit symbols generated by a data source; a computer readable medium; a computer program element
Lalitha et al. Image compression of MRI image using planar coding
Al-Hashemi et al. A Grayscale Semi-Lossless Image Compression Technique Using RLE.
Ramaswamy et al. Context-based lossless image coding using EZW framework
JP4054430B2 (en) Image processing apparatus and method, and storage medium
JP2001223593A (en) Data coding method and system, and recording medium
JP2000184207A (en) Data compression method, system and recoding medium
JP2002290743A (en) Image information coding method, coding apparatus, digital copying machine, digital facsimile machine, and digital filing apparatus
Saraswat et al. Improved Image Compression by Set Partitioning Block Coding by Modifying SPIHT
US7720300B1 (en) System and method for effectively performing an adaptive quantization procedure
Muzaffar et al. Simplified EZW image coder with residual data transmission
Krivoulets Efficient entropy coding for image compression
Chen et al. Highly efficient entropy coding of multilevel images using a modified arithmetic code
Muzaffar et al. Simplified Wavelet based image compression using fixed length residual value

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040823

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060123

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060207

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060403

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060418

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060517

R150 Certificate of patent or registration of utility model

Ref document number: 3808241

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090526

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20090526

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090526

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100526

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110526

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110526

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120526

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130526

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20140526

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees