JP3781012B2 - Image data compression method, image data expansion method, and image data expansion circuit - Google Patents

Image data compression method, image data expansion method, and image data expansion circuit Download PDF

Info

Publication number
JP3781012B2
JP3781012B2 JP2003070231A JP2003070231A JP3781012B2 JP 3781012 B2 JP3781012 B2 JP 3781012B2 JP 2003070231 A JP2003070231 A JP 2003070231A JP 2003070231 A JP2003070231 A JP 2003070231A JP 3781012 B2 JP3781012 B2 JP 3781012B2
Authority
JP
Japan
Prior art keywords
image data
format
data
wavelet
block
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
JP2003070231A
Other languages
Japanese (ja)
Other versions
JP2004007474A (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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2003070231A priority Critical patent/JP3781012B2/en
Publication of JP2004007474A publication Critical patent/JP2004007474A/en
Application granted granted Critical
Publication of JP3781012B2 publication Critical patent/JP3781012B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、ウェーブレット変換を用いた画像データの圧縮/伸長技術に関し、特に高速な伸長処理を可能とする画像データ圧縮方法、画像データ伸長方法、および画像データ伸長回路に関する。
【0002】
【従来の技術】
JPEG(Joint Photographic Picture Experts Group)により標準化された画像圧縮技術として、DCT変換(離散コサイン変換)とハフマン符号化とを組み合わせた技術が知られている。この画像圧縮技術では、視覚に鈍感な周波数帯については画像データの量子化の精度を粗くすると共に、出現頻度の高い画像データには短いコードを割り付けることにより、全体のデータ量を削減している(非特許文献1参照)。
また、JPEG2000では、ウェーブレット変換と算術符号化を組み合わせた画像圧縮技術が採用されており、この技術によれば、上述のJPEGで標準化された画像圧縮技術と比較して、高い圧縮率を実現しながらも画像の劣化を小さく抑えることができる(非特許文献2参照)。
【0003】
【非特許文献1】
藤原洋監修「最新MPEG教科書」アスキー出版、1994年8月1日初版、p.53−67
【非特許文献2】
bit-drive[ブロードバンド事典]、[平成15年3月10日検索]、インターネット<URL:http://bit-drive.e-words.ne.jp/w/JPEG2000.html>
【0004】
【発明が解決しようとする課題】
ところで、上述のJPEGで標準化された画像圧縮技術によれば、8×8画素サイズのブロックを単位としてDCT変換を行うため、圧縮率を高くするとブロック単位で歪みが目立つようになる。しかも、DCT変換によれば、正弦波を用いて画像を近似するため、アニメ画像のようにエッジが強く空間周波数が高い場合には近似の精度が低下し、いわゆるモスキートノイズが発生する場合がある。加えて、ハフマン符号化によれば、画像データと符号化コードとを対応づけるためのテーブルを必要とする。一般に、テーブルを参照する手法はソフトウェアとの親和性が高く、ハードウェア化には適していないため、符号化(圧縮)および復号化(伸長)の各処理に時間を要するという問題がある。
【0005】
また、上述のJPEG2000で標準化された画像圧縮技術によれば、2次元平面上でウェーブレット変換を行うためには、画面の画素サイズと同等の大容量を有するメモリをバッファとして準備しなければならない。従ってハードウェア化に適しておらず、ソフトウェア上での処理が主体となるため、復号化処理に時間を要するという問題がある。しかも、算術符号化は複雑な演算処理を要し、特にJPEG2000のようにビットプレーン単位で符号化すると、復号化処理に多大な時間を要するという問題がある。
【0006】
この発明は、上記事情に鑑みてなされたもので、画質に与える影響を抑えながら画像データを高速に伸長することを可能とすると共に、ハードウェア化を容易とする画像データ圧縮方法、画像データ伸長方法、および画像データ伸長回路を提供することを目的とする。
【0007】
【課題を解決するための手段】
上記課題を解決するため、この発明は以下の構成を有する。
本発明に係る画像データ圧縮方法は、圧縮すべき画像データを複数のブロックに分割し、ブロック毎に前記画像データをウェーブレット変換するステップと、前記ウェーブレット変換された各ブロックの画像データを、0値を示す画像データがいくつ連続したかを表す0ランレングスの第1のデータおよび非0値を示す画像データの値自体を表す第2のデータに変換する際の対応関係を規定する所定のフォーマットに従って、前記各ブロックの画像データを前記第1または第2のデータに置き換えて符号化するステップと、を含む。
【0008】
この構成によれば、ブロック分割された画像データは、ウェーブレット変換され、視覚的に敏感な低域成分と鈍感な高域成分とに分離される。この周波数帯域が分離された画像データは符号化されて、0値を示す画像データがいくつ連続するかを表す0ランレングスのデータ、または、非0値を示す画像データの値そのものを表すデータに置き換えられる。ここで、ウェーブレット変換によれば、高域成分の画像データの値が小さくなるという性質があり、画像データの値として「0」の出現頻度が高くなる傾向を示す。このため、符号化の際に0ランレングスを表すデータに置き換えられる頻度が高まり、これによりデータの圧縮がなされる。したがって、この構成によれば、圧縮する際には画像データの0ランレングスまたはビット列を表すデータを処理すれば足り、複雑な演算を行う必要がないので、高速な圧縮が可能になると共に、伸長の際にも同様に複雑な演算を行う必要がないので高速な伸長が可能になる。
【0009】
上記画像データ圧縮方法において、前記ウェーブレット変換の前に前記画像データをRGB系からYUV系に変換するステップをさらに含む。
上記画像データの圧縮方法において、前記ウェーブレット変換された画像データを量子化した上で、隣接する画素間の画像データの差分を演算するステップをさらに含む。
即ち、本発明に係る画像データ圧縮方法は、圧縮すべき画像データを複数のブロックに分割する第1ステップと、前記分割された画像データをRGB系からYUV系に変換する第2ステップと、前記YUV系に変換された画像データをブロック毎にウェーブレット変換すると共に、その際に色差成分を間引く第3ステップと、前記ウェーブレット変換により得られた画像データの変換係数を量子化する第4ステップと、前記量子化された変換係数であって隣接する画素間の変換係数の差分を演算する第5ステップと、前記変換係数の差分からなる画像データを、所定のフォーマットのデータであって、0値を示す画像データがいくつ連続したかを表す第1のデータまたは非0値を示す画像データの値自体を表す第2のデータに変換して符号化する第6ステップとを含み、前記所定のフォーマットは、前記変換係数の差分からなる画像データを前記第1のデータに変換する際に適用される第1フォーマットと、前記変換係数の差分からなる画像データを前記第2のデータに変換する際に適用される第2フォーマットとを含み、前記第1フォーマットおよび前記第2フォーマットのそれぞれは、短いビット長を表現するのに適した短フォーマットと、長いビット長を表現するのに適した長フォーマットとを含み、前記第1フォーマットに含まれる短フォーマット及び長フォーマットは0ランレングスを示すコード部を含み、前記第2フォーマットに含まれる短フォーマット及び長フォーマットはデータそのものをあらわすコード部を含み、前記各コード部のビット数の組み合わせを変えて繰り返し圧縮処理を行い、圧縮率が最大になる組み合わせを選択することを特徴とする。
【0010】
本発明に係る画像データ伸長方法は、上記画像データ圧縮方法を用いて圧縮された画像データを伸長する画像データ伸長方法であって、前記圧縮された各ブロックの画像データを前記所定のフォーマットに従って復号化するステップと、前記復号化された各ブロックの画像データをウェーブレット逆変換して1つの画像データに合成するステップと、を含む。
この構成によれば、0ランレングスを表すデータまたは画像データの値そのものを復号化処理の対象とすればよい。従って、複雑な演算を行うことなく復号化することができ、高速な復号が可能になる。
【0011】
上記画像データ伸長方法において、前記ウェーブレット逆変換前に、前記画像データの差分を加算した上で、前記量子化された画像データを逆量子化する。
上記画像データ伸長方法において、前記ウェーブレット逆変換された画像データをYUV系からRGB系に変換する。
即ち、本発明に係る画像データ伸長方法は、上記画像データ圧縮方法を用いて圧縮された画像データを伸長する画像データ伸長方法であって、前記符号化された各ブロックの画像データのフォーマットを判別して該画像データを前記変換係数の差分からなる画像データに復号化するステップと、前記復号化された前記画像データの変換係数の差分を加算するステップと、前記変換係数の差分を加算して得られた各ブロックの画像データを逆量子化するステップと、前記逆量子化された各ブロックの画像データをウェーブレット逆変換するステップと、前記ウェーブレット逆変換された各ブロックの画像データをYUV系からRGB系に変換するステップと、前記RGB系に変換された各ブロックの画像データを1つの画像データに合成するステップと、を含む。
【0012】
本発明に係る画像データ伸長回路は、上記画像データ圧縮方法を用いて圧縮された各ブロックの画像データを伸長する画像データ伸長回路(例えば後述する図6に示す画像データ伸長回路)であって、前記所定のフォーマットに従って、前記圧縮された各ブロックの画像データを水平方向または垂直方向の一方のライン毎に復号化する復号化器と、前記復号化器により復号化された各ラインの画像データを交互に記憶する第1および第2のレジスタと、前記第1および第2のレジスタから各ラインの画像データを交互に読み出してウェーブレット逆変換処理を施す第1のウェーブレット逆変換処理部と、前記第1のウェーブレット逆変換処理部により変換された各ラインの画像データを1ブロック分だけ格納するバッファと、水平方向または垂直方向の他方の方向に関して、前記バッファに格納された画像データに対しウェーブレット逆変換処理を施す第2のウェーブレット逆変換処理部と、前記第2のウェーブレット逆変換処理部により変換して得られた全ブロックの画像データを記憶するメモリとを備える。
【0013】
上記画像データ伸長回路において、前記復号化器により復号化された画像データを加算する加算器と、前記加算器の加算結果を逆量子化し、該逆量子化により得られた画像データを前記復号化器により復号化された画像データとして前記第1および第2のレジスタに与える逆量子化器と、を更に備える。
上記画像データ伸長回路において、前記第2のウェーブレット変換処理部により変換された画像データをYUV系からRGB系の画像データに変換して前記メモリに与える色表示系変換部を更に備える。
即ち、本発明に係る画像データ伸長回路は、上記画像データ圧縮方法を用いて圧縮された各ブロックの画像データを伸長する画像データ伸長回路であって、前記符号化された各ブロックの画像データのフォーマットを判別して該画像データを水平方向または垂直方向の一方のライン毎に復号化し、前記変換係数の差分からなる画像データを得る復号化器と、前記復号化器により得られた画像データをなす変換係数の差分を加算する加算器と、前記加算器の加算結果として得られた画像データを逆量子化する逆量子化器と、前記逆量子化器により得られた各ラインの画像データを交互に記憶する第1および第2のレジスタと、前記第1および第2のレジスタから前記各ラインの画像データを交互に読み出してウェーブレット逆変換処理を施す第1のウェーブレット逆変換処理部と、前記第1のウェーブレット逆変換処理部により変換された各ラインの画像データを1ブロック分だけ格納するバッファと、水平方向または垂直方向の他方の方向に関して、前記バッファに格納された画像データに対しウェーブレット逆変換処理を施す第2のウェーブレット逆変換処理部と、前記第2のウェーブレット変換処理部により変換された画像データをYUV系からRGB系に変換する色表示系変換部と、前記色表示系変換部により変換して得られた画像データを記憶するメモリと、を備える。
【0014】
【発明の実施の形態】
以下、図面を参照して、この発明の実施の形態に係る画像データの圧縮方法、伸長方法および画像データ伸長回路を順に説明する。
A.画像データの圧縮方法
図1に示すフローに沿って、図2ないし図4を参照しながらこの実施の形態に係る画像データ圧縮方法を説明する。この画像データの圧縮方法は、圧縮すべき原画像データのうち、人間の視覚に鈍感な成分の値を「0」に置き換え、「0」」の出現頻度を高めることにより、画像データを圧縮するものである。
【0015】
具体的に説明する。
まず、図2に示すように、圧縮すべき原画像データPをブロックB0〜ブロックB11の12個のブロックに分割する(ステップS11)。この実施の形態では、原画像データPは、RGB系の画像データであるものとする。この後、以下に説明するようにブロック毎に一連の圧縮処理を行う。
即ち、最初のブロックB0の画像データの色表示系をRGB系からYUV系に変換する(ステップS12)。ここで、YUV系の色差成分(u,v)は、人間の視覚に対して鈍感な成分であり、間引いても画質に与える影響が少ないため、後述するように圧縮する際には、色差成分を間引くことによって処理の高速化と伝送または記憶するデータ量の削減を図っている。
【0016】
続いて、上述のステップS12で色表示系が変換されたブロックB0の画像データに対して、ブロックB0の水平方向にウェーブレット変換処理を施し、水平方向成分の変換係数を得る(ステップS13)。その後、ブロックB0の垂直方向にウェーブレット変換処理を施し、垂直方向成分の変換係数を得る(ステップS14)。ここで、ウェーブレット変換は、画像の特徴を抽出できるという特質を有する。即ち、ウェーブレット変換によれば、画像データが、人間の視覚に敏感な低域成分と鈍感な高域成分とに分離される。このうち、高域成分については、変換の精度を落とし、絶対値の小さなデータを無視しても、画質に与える影響は小さい。しかも、ウェーブレット変換された高域成分の値は小さくなる傾向を示すため、圧縮の過程において「0」の出現頻度がさらに高まる。
【0017】
続いて、上述のステップS13,S14で得られたブロックB0の画像データの水平方向および垂直方向の各変換係数を量子化する(ステップS15)。具体的には、各変換係数を適当な精度で量子化することによりまるめて、その有効ビット長を短くする。この後、変換係数を大きい順に並べて、所定のしきい値以下の変換係数を「0」とする(しきい値制御)。上述の量子化の精度や所定のしきい値は、必要とされる画質と圧縮率との関係から事前に実験的に決定される。また、このしきい値は変更可能なパラメータとして設定され、任意に変更することが可能となっている。
【0018】
続いて、水平ラインを単位として、上述のステップS15で量子化された画像データの変換係数をスキャンし、隣接する画素間の画像データの変換係数の差分を演算する(ステップS16)。即ち、各画素の画像データとして、その前にスキャンの対象とされた隣の画素のデータに対する差分を用いる。ただし、最初の画素の変換係数の値については、その画素について得られた変換係数そのものを用いる。ここで、一般に画像の場合、空間周波数が連続している頻度が高いため、隣接した画素の値が互いに似たような値をとり、その差分が小さくなる傾向を示す。このため、各画素の変換係数の絶対値を用いるよりも、差分を用いた方が、データのビット数を小さく抑え、データ量を削減することが可能になる。
【0019】
続いて、所定のフォーマットに従って、ステップS16で得られたブロックB0の画像データの差分を符号化する(ステップS17)。このフォーマットは、ウェーブレット変換された各ブロックの画像データを、0値を示す画像データがいくつ連続するかを表す0ランレングス(第1のデータ)および非0値を示す画像データの値自体(第2のデータ)に変換する際の対応関係を規定するものである。図3に、ステップS17における符号化で使用されるフォーマットの一例を示す。この実施の形態では、画像データの0ランレングスを表す第1のデータのフォーマット(以下、第1フォーマットと称す)と、画像データの値そのものを表す第2のデータのフォーマット(以下、第2フォーマットと称す)とに大別され、各フォーマットは、さらに、短いビット長を表現するのに適した短フォーマットと、長いビット長を表現するのに適した長フォーマットとに分類される。
【0020】
図3(a)は、第1フォーマットの短フォーマットを示し、2ビットのヘッダー部とn(nは自然数)ビットのコード部とから構成される。この例では、ヘッダー部に「00」が設定され、このヘッダー部から、第1フォーマットの短フォーマットを用いて符号化されたデータを識別することが可能となる。図3(b)は、第1フォーマットの長フォーマットを示し、2ビットのヘッダー部とmビット(m>n)のコード部とから構成される。この例では、ヘッダー部に「01」が設定され、このヘッダー部から、第1フォーマットの長フォーマットを用いて符号化されたデータを識別することが可能となる。
【0021】
図3(c)は、第2フォーマットの短フォーマットを示し、2ビットのヘッダー部とk(kは自然数)ビットのコード部とから構成される。この例では、ヘッダー部に「10」が設定され、このヘッダー部から、第2フォーマットの短フォーマットを用いて符号化されたデータを識別することが可能となる。図3(d)は、第2フォーマットの長フォーマットを示し、2ビットのヘッダー部とhビット(h>k)のコード部とから構成される。この例では、ヘッダー部に「11」が設定され、このヘッダー部から、第2フォーマットの長フォーマットを用いて符号化されたデータを識別することが可能となる。
【0022】
さらに、この実施の形態では、上述の第1フォーマットの変形として、残りのビット(現在着目するビットから最終ビットまでの全ビット)がすべて「0」であることを表す第3フォーマットを設定する。図3(e)に、第3フォーマットの一例を示す。この第3フォーマットは、上述の第1フォーマットの短フォーマットと同じヘッダー部を有するが、コード部としてnビットの「0」からなるコード(オール0)を有する。伸長の過程でこの第3フォーマットのデータが検出された場合には、それ以降のビットはすべて「0」として復号化が行われる。
【0023】
ここで、図4を参照して、上述の図3に示すフォーマットを用いた符号化を説明する。ただし、図3に示すフォーマット中のビット数n,m,k,hについては、n=3,m=5,k=4,h=8とする。n,m,k,hの各値は、いろいろな組み合わせに従って実際に圧縮処理を行い、最も圧縮率が高かった各値を使用すればよい。
図4(a)は、圧縮処理の過程で符号化の対象とされるデータ列の一例を示す。このデータ列は、上述のステップS16で得られたブロックB0における各画素の変換係数の差分(16進表示)を配列したものである。図4(b)に、上述の図4(a)に示すデータ列を符号化して得られるデータの一例を示す。この例では、▲1▼で示すデータ部分「12」に対しては、第2フォーマットの長フォーマットが適用され、2ビットのヘッダー部「11」と、データ列「12」そのものを表す8ビットのコード部「00001100」とから構成されるデータに符号化される。
【0024】
その次の▲2▼で示すデータ部分「0」に対しては、第1フォーマットの短フォーマットが適用され、2ビットのヘッダー部「00」と、0ランレングスが“1”であることを示す3ビットのコード部「001」とから構成されるデータに符号化される。その次の▲3▼で示すデータ部分「fe」(=−2)に対しては、第2フォーマットの短フォーマットが適用され、2ビットのヘッダー部「10」と、データ「fe」そのものを表す4ビットのコード部「1110」とから構成されるデータに符号化される。その次の▲4▼で示すデータ部分「ff」(=−1)に対しては、第2フォーマットの短フォーマットが適用され、2ビットのヘッダー部「10」と、データ「ff」そのものを表す4ビットのコード部「1111」とから構成されるデータに符号化される。その次の▲5▼で示すデータ部分「0 0 0 0 0 0 0」に対しては、第1フォーマットの短フォーマットが適用され、2ビットのヘッダー部「00」と、0ランレングスが“7”であることを表す3ビットのコード部「111」とから構成されるデータに符号化される。
【0025】
その次の▲6▼で示すデータ部分「1」に対しては、第2フォーマットの短フォーマットが適用され、2ビットのヘッダー部「10」と、データ「1」そのものを表す4ビットのコード部「0001」とから構成されるデータに符号化される。その次の▲7▼で示す残りのデータ部分「0・・・」に対しては、第3フォーマットが適用され、2ビットのヘッダー部「00」と3ビットのコード部「000」とから構成されるデータに符号化される。この例では、図4(a)に示すデータ列が、図4(b)に示す合計43ビットのビット列に置き換えられて、画像データが符号化される。
以上により、ブロックB0の画像データの圧縮が行われ、他のブロックB1〜B11についても同様に画像データの圧縮が順次行われる。
【0026】
B.画像データの伸長方法
以下、図5に示すフローに沿って、上述の圧縮方法を用いて圧縮された画像データを伸長する方法(画像データ伸長方法)を説明する。
上述の圧縮方法を用いて圧縮された各ブロックの画像データは、圧縮処理で用いられた図3に示すフォーマットに従って復号化される(ステップS21)。
【0027】
ここで、図4(b)に示すビット列を含む画像データを例として復号化を具体的に説明する。同図に示すビット列を復号化する場合、そのビット列に含まれるヘッダー部からフォーマットの種類を逐次判別して適応的に復号化する。この例では、最初に受信する図4(b)の最上段のデータ「12」に対応するビット列「1100001100」のうち、先頭の2ビット「11」をヘッダー部として抽出する。ここで、図3(d)に示すように、ヘッダー部「11」は第2フォーマットの長フォーマットを表すので、このヘッダー部「11」に後続する8ビットのビット列「00001100」からなるコード部を画像データのビット列そのものとして抽出し、図4(a)の▲1▼で示すデータ部分「12」を得る。
【0028】
続いて、図4(b)の上から2段目に示されたデータ「0」に対応するビット列「00001」のうち、先頭の2ビット「00」をヘッダー部として抽出する。図3(a)に示すように、ヘッダー部「00」は第1フォーマットの短フォーマットを表すので、このヘッダー部「00」に後続する3ビットのビット列「001」からなるコード部を画像データの0ランレングスを表すデータとして抽出し、図4(a)の▲2▼で示すデータ「0」を得る。
【0029】
以下、同様にして、順次ヘッダー部を抽出し、そのヘッダー部で特定されるフォーマットを参照することによりコード部を特定して復号化する。このようにして復号化されたデータは、図1に示すステップS15で量子化した後にステップS16で差分演算して得た画像データの変換係数の差分に相当するものとなる。ただし、最初の画素のデータについては差分ではなく、変換係数そのものに相当する。なお、上述の復号化の処理は、圧縮(符号化)された最初のデータから時系列順に行われ、復号化されたデータについてはヘッダー部とコード部とが把握される。従って、仮にコード部をなすビット列とヘッダー部とが一致していても、それまでのデータに対する復号化の履歴から、次に復号化すべきデータのヘッダー部の位置を特定することができ、復号化の処理に支障をきたすことはない。
【0030】
次に、復号化により得られた画像データの変換係数の差分を加算して各画素に対応する画像データを生成する(ステップS22)。即ち、復号化された変換係数の差分を累積的に加算し、水平ラインを単位として変換係数を生成する。このとき、水平方向の最初の画素の変換係数については、復号化された変換係数をそのまま用いるが、それ以降の各画素の変換係数については、各画素について復号化された値(差分)をその前の画素の値に加算して得られる値を用いる。続いて、ステップS22で加算して得られた画像データを逆量子化する(ステップS23)。即ち、水平ラインを単位として、ステップS22で加算して得られた変換係数に量子化された値を掛けて、圧縮の過程で量子化される前の元のビット長に戻す。
【0031】
続いて、上述のようにして復号化され逆量子化された各ブロックの画像データを垂直方向にウェーブレット逆変換し(ステップS24)、その後、水平方向にウェーブレット逆変換する(ステップS25)。そして、ウェーブレット逆変換された画像データの色表示系をYUV系からRGB系に変換し(ステップS26)、このRGB系に変換された各ブロックの画像データを1つの画像として合成する(ステップS27)。以上により画像データが伸長されて、1つの画像が再生可能となる。
【0032】
C.画像データ伸長回路
次に、上述の伸長方法に従って画像データを伸長する画像データ伸長回路を説明する。図6に、この画像データ伸長回路の構成を示す。同図において、復号化器10は、上述の伸長処理におけるステップS21を実行するものであり、前述のステップS11〜S17の各ステップを経て圧縮された画像データ(伸長前の画像データ)を入力する。加算演算器20は、上述の伸長処理におけるステップS22を実行するものである。逆量子化器30は、上述の伸長処理におけるステップS23を実行するものである。
【0033】
レジスタ41,42,43A,43Bは、逆量子化された変換係数を格納するものである。このうち、レジスタ41は、ブロック内の垂直方向の1ライン分の色差成分uの変換係数を格納するものである。また、レジスタ42は、ブロック内の垂直方向の1ライン分の色差成分vの変換係数を格納するものである。さらに、レジスタ43A,43Bのそれぞれは、1ライン分の変換係数を格納するものである。即ち、これらレジスタには、1ライン分の色差成分u,vの変換係数と2ライン分の輝度成分Yの変換係数とが格納可能となっている。
なお、色差成分u,vについては、水平、垂直方向にそれぞれ2分の1にデータが間引かれているので、1ライン分の色差成分u,vのデータ量は、1ライン分の輝度成分Yのデータ量の半分となっている。
【0034】
ウェーブレット逆変換処理部51,52,53は、上述の伸長処理におけるステップS24を実行するものであり、レジスタ41,42,43A,43Bにそれぞれ格納された垂直方向の1ライン分の変換係数に対してウェーブレット逆変換処理を施す。バッファ61A,61B,62A,62B,63A,63Bのそれぞれは、ウェーブレット逆変換された1ブロック分の変換係数を格納するものである。また、ウェーブレット逆変換処理部71,72,73は、上述の伸長処理におけるステップS25を実行するものであり、バッファ61A,61B,62A,62B,63A,63Bにそれぞれ格納された1ブロック分の変換係数に対して水平方向にウェーブレット逆変換処理を施す。
【0035】
色表示系変換部80は、上述の伸長処理におけるステップS26を実行するものであり、ウェーブレット逆変換により得られた画像データの色表示系をYUV系からRGB系に変換する。メモリ90は、上述の伸長処理におけるステップS27を実行するために使用されるものであり、伸長された各ブロックの画像データを、圧縮前の各ブロックの位置に対応させて記憶するものである。このメモリ90から、最終的に伸長された1つの画像の画像データが出力される。
【0036】
以下、図7および図8を参照して、この画像データ伸長回路の動作(伸長方法)を説明する。なお、図6に示す復号化器10、加算演算器20、逆量子化器30、色表示系変換部80、およびメモリ90の各動作については、上述のステップS21,S22,S23,S26,S27の各処理の内容と同一であるから、これらの動作についての説明は省略することとし、ここでは、レジスタ41,42,43A,43B、ウェーブレット逆変換処理部51,52,53、バッファ61A,61B,62A,62B,63A,63B、ウェーブレット逆変換処理部71,72,73の各動作について説明する。
【0037】
図7は、図6において伸長前のブロックB0の画像データP0がレジスタ41,42,43A,43Bに格納されるまでのタイミングと、これらのレジスタに格納されたデータがバッファ61A,61B,62A,62B,63A,63Bに格納されるまでのタイミングを示すものである。
上述の復号化器10、加算演算器20、および逆量子化器30により得られた画像データPnの1ライン分の変換係数のうち、色差成分uがレジスタ41に格納され、色差成分vがレジスタ42に格納される。また、これら色差成分と同一ラインの輝度成分Yは、レジスタ43Aまたはレジスタ43Bに格納される。この実施の形態では、色差成分u,vが、水平、垂直それぞれの方向のライン毎に間引かれているので、輝度成分Yの2ライン分が色差成分u,vの1ライン分に対応する。
【0038】
すなわち、図7に示す画像データP0は、最初の第1ライン目のデータとして色差成分u0,v0と輝度成分Y0とを有し、第2ライン目のデータとして輝度成分Y1しか有しておらず、以下、偶数番目のラインについては色差成分を有していない。即ち、偶数番目の色差成分が間引かれている。これは、人間の視覚に鈍感な色差成分を間引いたとしても画質に与える影響が少ないことに着目したものである。即ち、人間の視覚に鈍感な色差成分を間引くことにより伝送または記憶すべきデータ量を削減している。
【0039】
次に、レジスタ41,42,43A,43Bから変換係数がそれぞれ読み出されて第1ライン目の垂直方向のウェーブレット逆変換が行われる。具体的に説明すると、レジスタ41,42に第1ライン目の色差成分u0,v0が書き込まれ、レジスタ43Aに同ラインの輝度成分Y0が書き込まれると、これらのレジスタから画像データがウェーブレット逆変換処理部51,52,53に順次読み出されて、第1ライン目の垂直方向のウェーブレット逆変換処理が各成分に施される。このとき、第1ライン目の輝度成分Y0に対するウェーブレット逆変換処理は、第2ライン目の輝度成分Y1をレジスタ43Bに書き込む処理と並行して行われるが、ウェーブレット逆変換処理部53はレジスタ43Aから第1ライン目のデータを読み込んで処理を行うので、これらの処理が不都合なく並行して行われる。ウェーブレット逆変換処理を施して得られた第1ライン目の色差成分u0,v0および輝度成分Y0は、画像データYuv0としてバッファ61A,62A,63Aに格納される。
【0040】
続いて、レジスタ43Bから第2ライン目の輝度成分Y1が読み出されて、ウェーブレット逆変換処理部53によりウェーブレット逆変換処理が施されるが、この場合の色差成分はレジスタ41,42に格納された第1ライン目の色差成分u0,v0が流用され、これら色差成分u0,v0に対してウェーブレット逆変換処理部51,52によりウェーブレット逆変換処理が施される。色差成分u0,v0および輝度成分Y1に対してウェーブレット逆変換処理を施して得られた各データは、第2ライン目の画像データYuv1としてバッファ61A,62A,63Aにそれぞれ格納される。以下、同様にして第3ライン目以降の奇数番目および偶数番目の画像データが水平方向にウェーブレット逆変換され、バッファ61A,62A,63AにブロックB0の画像データが蓄積される。
【0041】
次に、図8を参照して、バッファ61A,62A,63Aに蓄積された1ブロック分の画像データを読み出して水平方向のウェーブレット逆変換処理を施し、1つの画像に合成するまでの動作を説明する。バッファ61A〜63Aに格納されたブロックB0の画像データは、ウェーブレット逆変換処理部71〜73に読み出されて水平方向のウェーブレット逆変換処理が施された後、色表示系変換部80によりRGB系に変換されてメモリ90に格納される。また、ウェーブレット逆変換処理部71〜73がブロックB0の画像データに対してウェーブレット逆変換処理を行っている間に、上述の復号化器10、加算演算器20、逆量子化器30、レジスタ41,42,43A,43B、ウェーブレット逆変換処理部51,52,53が前述のステップS21〜S24を実行し、バッファ61B〜63BにブロックB1の画像データが書き込まれる。
【0042】
バッファ61B〜63Bに書き込まれた画像データは、バッファ61A〜63Aに格納された画像データに対する水平方向のウェーブレット逆変換処理が終了した後、ウェーブレット逆変換処理部71〜73に読み込まれて水平方向のウェーブレット逆変換処理が施される。そして、同様に色表示系の変換が行われてメモリ90に格納される。以下、同様にして、奇数番目および偶数番目の各ブロックの画像データが、バッファ61A〜63Aとバッファ61B〜63Bとから交互に読み出されて垂直方向のウェーブレット逆変換が行われ、色表示系が変換されてメモリ90に格納される。以上で全ブロックの画像データが伸長された。
【0043】
この画像データ伸長回路によれば、ウェーブレット逆変換処理部53の前段に合計2ライン分の輝度成分Yを格納する2つのレジスタ43A,43Bを備えているので、同一ブロック内で各ラインの輝度成分Yに対する垂直方向のウェーブレット逆変換処理をパイプライン化することができる。また、ウェーブレット逆変換処理部71,72,73の前段に2系統のバッファ61A,62A,63Aとバッファ61B,62B,63Bと備えているので、各ブロックに対する水平方向のウェーブレット逆変換処理をパイプライン化することができる。従って、復号化の処理を高速化することが可能になる。以上で図6に示す画像データ伸長回路を説明した。
【0044】
以下、この実施の形態の構成上の特徴を述べる。
(1)画像データはウェーブレット変換を用いて変換すると、その画像の特徴を抽出できるという性質がある。
(2)ウェーブレット変換されたデータの精度を落としたり絶対値の小さい値を無視しても、画質に与える影響が小さいので、画像データのビット数を減らしたり0が連続したデータに置き換えることができる。これにより0ランレングスが改善され、圧縮率が向上する。加えて、画像データの色表示系をYUV系とすれば、圧縮率が一層向上する。
(3)また、画質を犠牲にしても圧縮率を優先させたい場合には、ウェーブレット変換されたデータの精度を調整することによって、大幅な圧縮が可能となる。
【0045】
(4)符号化では、隣り合った画素のデータの差分を演算することにより、0の出現頻度をさらに一層高めて圧縮率を向上させる手法を用いている。また、復号化では、差分を加算すればよく、複雑な演算を要しないので、復号化処理を高速化することができる。
(5)画像データ伸長回路はパイプライン処理を行うものとしている。そのために、垂直方向(水平方向)のウェーブレット逆変換にあたって1ラインを単位として画像データを保持するレジスタと、水平方向(垂直方向)のウェーブレット逆変換にあたって1ブロック分のデータを保持するバッファとを、それぞれ2重に備えている。さらに多重化してパイプラインの段数を増してもよい。
【0046】
また、以下にこの実施の形態による効果を述べる。
(1)2種類の有効ビット長のフォーマットと2種類の0ランレングスのフォーマットを用いて符号化するので、テーブルや複雑な演算を必要とせず、簡単な回路構成で圧縮/画像データ伸長回路を実現することができる。
(2)1つの画像の全画素についてウェーブレット変換を行うものとした場合、大容量のバッファを必要とするが、この実施の形態によれば、画像を適当なサイズの複数のブロックに分割して処理するので、1ブロック分の画像データを格納するためのバッファの容量を減らすことができる。しかも、分割することによりパイプライン処理が可能となり、復号化処理を高速化することができる。
【0047】
以上、この発明の実施の形態を説明したが、この発明は、上述の実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。たとえば、上述の実施の形態では、圧縮の過程において水平方向のウェーブレット変換した後に垂直方向のウェーブレット変換するものとしたが、逆に垂直方向の変換処理を行った後に水平方向の処理を行うようにしてもよく、復号化の処理においても同様に垂直方向の変換処理と水平方向の変換処理の順番を入れ替えてもよい。また、原画像データPの色表示系をRGB系としたが、これをYUV系としてもよい。この場合には、圧縮処理および伸長処理において色表示系の変換処理が不要となる。さらに、必要な圧縮率が得られるのであれば、量子化/逆量子化、しきい値制御、および差分演算/加算演算の各処理を省略してもよい。
【0048】
【発明の効果】
以上説明したように、この発明によれば、圧縮処理において、圧縮すべき画像データを複数のブロックに分割してウェーブレット変換し、前記ウェーブレット変換された各ブロックの画像データを所定のフォーマットに従って符号化し、また、伸長処理においては、前記圧縮された各ブロックの画像データを前記所定のフォーマットに従って復号化してウェーブレット逆変換するようにしたので、画質に与える影響を抑えながら画像データを高速に伸長することが可能になると共に、ハードウェア化が容易になる。
【図面の簡単な説明】
【図1】 この発明の実施の形態に係る画像データの圧縮処理の流れを示すフローチャートである。
【図2】 この発明の実施の形態に係る画像データのブロック分割の一例を示す図である。
【図3】 この発明の実施の形態に係る圧縮および伸長処理で用いられるデータのフォーマットを説明するための図ある。
【図4】 この発明の実施の形態に係る符号化の一例を示す図である。
【図5】 この発明の実施の形態に係る画像データの伸長処理の流れを示すフローチャートである。
【図6】 この発明の実施の形態に係る画像データ伸長回路の構成を示すブロック図である。
【図7】 この発明の実施の形態に係る画像データ伸長回路の動作(各ブロックの画像データの生成過程)を説明するための図である。
【図8】 この発明の実施の形態に係る画像データ伸長回路の動作(各ブロックの画像データの合成過程)を説明するための図である。
【符号の説明】
S11〜S17;ステップ(圧縮処理)、S21〜S27;ステップ(伸長処理)、10;復号化器、20;加算演算器、30;逆量子化器、41,42,43A,43B;レジスタ、51,52,53;ウェーブレット逆変換処理部(垂直方向)、61A,61B,62A,62B,63A,63B;バッファ、71,72,73;ウェーブレット逆変換処理部(水平方向)、80;色表示系変換部、90;メモリ。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to image data compression / decompression technology using wavelet transform, and particularly to an image data compression method, image data expansion method, and image data expansion circuit that enable high-speed expansion processing.
[0002]
[Prior art]
As an image compression technique standardized by JPEG (Joint Photographic Picture Experts Group), a technique combining DCT transform (discrete cosine transform) and Huffman coding is known. In this image compression technique, the accuracy of quantization of image data is coarsened in a frequency band that is insensitive to vision, and a short code is assigned to image data having a high appearance frequency, thereby reducing the total amount of data. (Refer nonpatent literature 1).
JPEG2000 employs an image compression technique that combines wavelet transform and arithmetic coding. According to this technique, a higher compression ratio is achieved compared to the image compression technique standardized by JPEG described above. However, image degradation can be suppressed to a small level (see Non-Patent Document 2).
[0003]
[Non-Patent Document 1]
“Latest MPEG Textbook”, ASCII Publishing, first published August 1, 1994, p. 53-67
[Non-Patent Document 2]
bit-drive [Broadband encyclopedia], [March 10, 2003 search], Internet <URL: http: //bit-drive.e-words.ne.jp/w/JPEG2000.html>
[0004]
[Problems to be solved by the invention]
By the way, according to the above-described image compression technique standardized by JPEG, DCT conversion is performed in units of 8 × 8 pixel size blocks. Therefore, when the compression rate is increased, distortion becomes conspicuous in units of blocks. Moreover, according to the DCT transform, an image is approximated using a sine wave, and therefore, when an edge is strong and a spatial frequency is high as in an animation image, the approximation accuracy is lowered, and so-called mosquito noise may occur. . In addition, according to Huffman coding, a table for associating the image data with the coded code is required. In general, a method of referring to a table has a high affinity with software and is not suitable for hardware implementation, and therefore has a problem that each process of encoding (compression) and decoding (decompression) takes time.
[0005]
In addition, according to the image compression technique standardized by the above-described JPEG2000, in order to perform wavelet transform on a two-dimensional plane, a memory having a large capacity equivalent to the pixel size of the screen must be prepared as a buffer. Therefore, it is not suitable for hardware implementation, and the processing on software is the main, so that there is a problem that it takes time for the decryption processing. Moreover, arithmetic coding requires complicated arithmetic processing, and particularly when encoding is performed in units of bit planes as in JPEG2000, there is a problem that it takes a long time for decoding processing.
[0006]
The present invention has been made in view of the above circumstances, and enables image data compression method and image data decompression that enable image data to be decompressed at a high speed while suppressing the influence on the image quality, and that facilitate hardware implementation. It is an object to provide a method and an image data decompression circuit.
[0007]
[Means for Solving the Problems]
  In order to solve the above problems, the present invention has the following configuration.
  According to the present inventionIn the image data compression method, the image data to be compressed is divided into a plurality of blocks, the image data is subjected to wavelet transform for each block, and the image data of each block subjected to the wavelet transform is image data indicating a zero value. Each block in accordance with a predetermined format that defines a correspondence relationship when converting the first data of 0 run length indicating how many consecutive to the second data representing the value of the image data itself indicating the non-zero value. Replacing the image data with the first or second data, and encoding.
[0008]
According to this configuration, the block-divided image data is subjected to wavelet transform and separated into a visually sensitive low frequency component and an insensitive high frequency component. The image data from which the frequency band has been separated is encoded into 0 run-length data indicating how many consecutive image data indicating 0 values, or data indicating the value of image data indicating non-zero values. Replaced. Here, according to the wavelet transform, there is a property that the value of the image data of the high frequency component becomes small, and the appearance frequency of “0” as the value of the image data tends to increase. For this reason, the frequency of replacement with data representing 0 run length at the time of encoding increases, thereby compressing the data. Therefore, according to this configuration, it is sufficient to process the data representing the 0 run length or bit string of the image data when compressing, and it is not necessary to perform complicated operations. In this case, it is not necessary to perform a complicated operation in the same manner, so that high-speed expansion is possible.
[0009]
  The image data compression method further includes the step of converting the image data from an RGB system to a YUV system before the wavelet transform.
  The image data compression method further includes the step of calculating the difference of the image data between adjacent pixels after quantizing the wavelet-transformed image data.
  That is, the image data compression method according to the present invention includes a first step of dividing image data to be compressed into a plurality of blocks, a second step of converting the divided image data from an RGB system to a YUV system, A wavelet transform of the image data converted into the YUV system for each block, a third step of thinning out the color difference component at that time, and a fourth step of quantizing the transform coefficient of the image data obtained by the wavelet transform; A fifth step of calculating the difference between the quantized transform coefficients and the transform coefficients between adjacent pixels, and image data including the difference between the transform coefficients are data in a predetermined format, and have a zero value. Converted into first data representing how many consecutive image data to be displayed or second data representing the value itself of image data representing a non-zero value and encoded The predetermined format is a first format applied when converting image data consisting of the difference between the conversion coefficients into the first data, and an image consisting of the difference between the conversion coefficients. A second format applied when converting data to the second data, each of the first format and the second format being a short format suitable for expressing a short bit length and a long Long format suitable for expressing bit lengthThe short format and the long format included in the first format include a code portion indicating 0 run length, and the short format and the long format included in the second format include a code portion representing the data itself. It is characterized in that the combination of the number of bits of the part is changed and the compression process is repeatedly performed, and the combination that maximizes the compression rate is selected.
[0010]
  According to the present inventionImage data decompression method isthe aboveAn image data decompression method for decompressing image data compressed using an image data compression method, comprising: decoding the compressed image data of each block according to the predetermined format; and And inversely wavelet transforming the block image data into one image data.
  According to this configuration, the data representing the 0 run length or the value of the image data itself may be the target of the decoding process. Therefore, decoding can be performed without performing complicated operations, and high-speed decoding is possible.
[0011]
  the aboveIn the image data decompression method, before the wavelet inverse transform, the difference between the image data is added, and then the quantized image data is inversely quantized.The
  the aboveIn the image data decompression method, the wavelet inversely transformed image data is converted from a YUV system to an RGB system.The
That is, an image data decompression method according to the present invention is an image data decompression method for decompressing image data compressed using the above image data compression method, and determines the format of the image data of each encoded block. And decoding the image data into image data comprising the difference between the transform coefficients, adding the difference between the transform coefficients of the decoded image data, and adding the difference between the transform coefficients. A step of inversely quantizing the obtained image data of each block, a step of inversely transforming the image data of each of the inversely quantized blocks, and image data of each of the blocks subjected to the inverse wavelet transform from the YUV system A step of converting to the RGB system, and a step of combining the image data of each block converted to the RGB system into one image data. Tsu including and up, the.
[0012]
  According to the present inventionThe image data decompression circuitthe aboveAn image data decompression circuit (e.g., an image data decompression circuit shown in FIG. 6 to be described later) that decompresses image data of each block compressed using an image data compression method. A decoder for decoding the image data of the block for each line in the horizontal direction or the vertical direction, and first and second registers for alternately storing the image data of each line decoded by the decoder A first wavelet inverse transform processing unit that alternately reads out image data of each line from the first and second registers and performs wavelet inverse transform processing; and the first wavelet inverse transform processing unit A buffer for storing image data of each line for one block, and the buffer in the other direction of the horizontal direction or the vertical direction. A second wavelet inverse transform processing unit for performing wavelet inverse transform processing on the image data stored in the memory, and a memory for storing image data of all blocks obtained by the conversion by the second wavelet inverse transform processing unit With.
[0013]
  the aboveIn an image data decompression circuit, an adder for adding the image data decoded by the decoder; and an addition result of the adder is dequantized, and the image data obtained by the inverse quantization is converted to the decoder An inverse quantizer for supplying the first and second registers as image data decoded byThe
  the aboveThe image data expansion circuit further includes a color display system conversion unit that converts the image data converted by the second wavelet conversion processing unit from YUV to RGB image data and supplies the image data to the memory.The
That is, an image data decompression circuit according to the present invention is an image data decompression circuit that decompresses image data of each block compressed using the above-described image data compression method. Decoding the image data for each line in the horizontal direction or the vertical direction by discriminating the format, and obtaining the image data consisting of the difference between the transform coefficients, and the image data obtained by the decoder An adder for adding a difference between transform coefficients formed, an inverse quantizer for inversely quantizing image data obtained as a result of the addition by the adder, and image data of each line obtained by the inverse quantizer. First and second registers that are alternately stored, and image data of each line are alternately read from the first and second registers, and wavelet inverse transform processing is performed. A wavelet inverse transform processing unit, a buffer for storing one line of image data of each line transformed by the first wavelet inverse transform processing unit, and the other direction of the horizontal direction or the vertical direction in the buffer A second wavelet inverse transformation processing unit for performing wavelet inverse transformation processing on the stored image data, and a color display system transformation for converting the image data converted by the second wavelet transformation processing unit from a YUV system to an RGB system And a memory for storing the image data obtained by the conversion by the color display system conversion unit.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an image data compression method, decompression method, and image data decompression circuit according to embodiments of the present invention will be described in order with reference to the drawings.
A. Image data compression method
The image data compression method according to this embodiment will be described along the flow shown in FIG. 1 with reference to FIGS. In this image data compression method, the value of a component insensitive to human vision in the original image data to be compressed is replaced with “0”, and the appearance frequency of “0” is increased, thereby compressing the image data. Is.
[0015]
This will be specifically described.
First, as shown in FIG. 2, the original image data P to be compressed is divided into 12 blocks, block B0 to block B11 (step S11). In this embodiment, the original image data P is assumed to be RGB image data. Thereafter, as described below, a series of compression processing is performed for each block.
That is, the color display system of the image data of the first block B0 is converted from the RGB system to the YUV system (step S12). Here, the YUV color difference components (u, v) are components that are insensitive to human vision and have little effect on image quality even if they are thinned out. By thinning out, the processing speed is increased and the amount of data to be transmitted or stored is reduced.
[0016]
Subsequently, a wavelet transform process is performed in the horizontal direction of the block B0 on the image data of the block B0 whose color display system has been converted in the above-described step S12, and a horizontal direction component conversion coefficient is obtained (step S13). Thereafter, a wavelet transform process is performed in the vertical direction of the block B0 to obtain a transform coefficient of the vertical component (step S14). Here, the wavelet transform has a characteristic that it can extract image features. That is, according to the wavelet transform, the image data is separated into a low-frequency component sensitive to human vision and an insensitive high-frequency component. Among these, for the high frequency component, even if the conversion accuracy is lowered and data having a small absolute value is ignored, the influence on the image quality is small. In addition, since the value of the high frequency component subjected to the wavelet transform tends to be small, the appearance frequency of “0” further increases in the compression process.
[0017]
Subsequently, the horizontal and vertical transform coefficients of the image data of the block B0 obtained in the above steps S13 and S14 are quantized (step S15). Specifically, the effective bit length is shortened by rounding each transform coefficient by quantizing with appropriate accuracy. Thereafter, the conversion coefficients are arranged in descending order, and a conversion coefficient equal to or less than a predetermined threshold is set to “0” (threshold control). The above-described quantization accuracy and the predetermined threshold are experimentally determined in advance from the relationship between the required image quality and the compression rate. This threshold value is set as a changeable parameter, and can be arbitrarily changed.
[0018]
Subsequently, using the horizontal line as a unit, the conversion coefficient of the image data quantized in step S15 described above is scanned, and the difference in the conversion coefficient of the image data between adjacent pixels is calculated (step S16). That is, as the image data of each pixel, a difference with respect to the data of the adjacent pixel that was previously scanned is used. However, as the value of the conversion coefficient of the first pixel, the conversion coefficient obtained for that pixel is used. Here, in general, in the case of an image, since the frequency with which the spatial frequency is continuous is high, the values of adjacent pixels take values similar to each other, and the difference tends to decrease. For this reason, it is possible to suppress the number of data bits and reduce the amount of data by using the difference rather than using the absolute value of the conversion coefficient of each pixel.
[0019]
Subsequently, according to a predetermined format, the difference between the image data of the block B0 obtained in step S16 is encoded (step S17). In this format, the wavelet-transformed image data of each block includes 0 run length (first data) indicating how many consecutive image data indicating 0 value and image data value indicating non-zero value itself (first data). 2) is defined. FIG. 3 shows an example of a format used for encoding in step S17. In this embodiment, the format of the first data representing the 0 run length of the image data (hereinafter referred to as the first format) and the format of the second data representing the value of the image data itself (hereinafter referred to as the second format). Each format is further classified into a short format suitable for expressing a short bit length and a long format suitable for expressing a long bit length.
[0020]
FIG. 3A shows a short format of the first format, which is composed of a 2-bit header part and a code part of n (n is a natural number) bits. In this example, “00” is set in the header portion, and data encoded using the short format of the first format can be identified from the header portion. FIG. 3B shows a long format of the first format, which is composed of a 2-bit header part and an m-bit (m> n) code part. In this example, “01” is set in the header portion, and data encoded using the long format of the first format can be identified from the header portion.
[0021]
FIG. 3C shows a short format of the second format, which is composed of a 2-bit header portion and a k-bit (k is a natural number) bit code portion. In this example, “10” is set in the header portion, and from this header portion, data encoded using the short format of the second format can be identified. FIG. 3 (d) shows a long format of the second format, which is composed of a 2-bit header portion and an h-bit (h> k) code portion. In this example, “11” is set in the header portion, and from this header portion, data encoded using the long format of the second format can be identified.
[0022]
Furthermore, in this embodiment, as a modification of the first format described above, a third format indicating that all the remaining bits (all bits from the current focused bit to the last bit) are “0” is set. FIG. 3E shows an example of the third format. This third format has the same header portion as the short format of the first format described above, but has a code (all 0) consisting of n-bit “0” as the code portion. When data in the third format is detected during the decompression process, all subsequent bits are decoded as “0”.
[0023]
Here, the encoding using the format shown in FIG. 3 will be described with reference to FIG. However, the number of bits n, m, k, h in the format shown in FIG. 3 is n = 3, m = 5, k = 4, and h = 8. As the values of n, m, k, and h, the compression processing is actually performed according to various combinations, and the values having the highest compression rate may be used.
FIG. 4A shows an example of a data string to be encoded during the compression process. This data string is an array of the differences (hexadecimal display) of the conversion coefficients of each pixel in the block B0 obtained in step S16 described above. FIG. 4B shows an example of data obtained by encoding the data sequence shown in FIG. In this example, the long format of the second format is applied to the data portion “12” indicated by (1), and a 2-bit header part “11” and an 8-bit data string “12” itself are represented. It is encoded into data composed of a code part “00001100”.
[0024]
For the data portion “0” indicated by {circle around (2)} below, the short format of the first format is applied, indicating that the 2-bit header portion “00” and the 0 run length is “1”. It is encoded into data composed of a 3-bit code part “001”. The next short format of the second format is applied to the data portion “fe” (= −2) indicated by (3), and represents the 2-bit header portion “10” and the data “fe” itself. It is encoded into data composed of a 4-bit code part “1110”. For the data portion “ff” (= −1) shown in the next item (4), the short format of the second format is applied to represent the 2-bit header portion “10” and the data “ff” itself. It is encoded into data composed of a 4-bit code part “1111”. For the data portion “0 0 0 0 0 0 0 0” shown in the next item (5), the short format of the first format is applied, and the 2-bit header part “00” and the 0 run length are “7”. "Is encoded into data composed of a 3-bit code part" 111 "representing" ".
[0025]
The next short format of the second format is applied to the data portion “1” indicated by {circle around (6)}, a 2-bit header portion “10”, and a 4-bit code portion representing the data “1” itself. It is encoded into data composed of “0001”. The third data format is applied to the remaining data portion “0...” Shown in the next item (7), and is composed of a 2-bit header portion “00” and a 3-bit code portion “000”. Is encoded into the data to be processed. In this example, the data string shown in FIG. 4A is replaced with a bit string of 43 bits in total shown in FIG. 4B, and the image data is encoded.
As described above, the image data of the block B0 is compressed, and the image data is also sequentially compressed for the other blocks B1 to B11.
[0026]
B. Image data decompression method
In the following, a method (image data decompression method) for decompressing image data compressed using the above-described compression method will be described along the flow shown in FIG.
The image data of each block compressed using the compression method described above is decoded in accordance with the format shown in FIG. 3 used in the compression process (step S21).
[0027]
Here, decoding will be specifically described by taking image data including the bit string shown in FIG. 4B as an example. When decoding the bit string shown in the figure, the type of format is sequentially discriminated from the header part included in the bit string and adaptively decoded. In this example, the first two bits “11” of the bit string “1100001100” corresponding to the uppermost data “12” in FIG. 4B received first are extracted as a header part. Here, as shown in FIG. 3D, since the header part “11” represents the long format of the second format, the code part composed of the 8-bit bit string “00001100” following the header part “11” is displayed. Extracted as a bit string of the image data itself, a data portion “12” indicated by (1) in FIG.
[0028]
Subsequently, in the bit string “00001” corresponding to the data “0” shown in the second row from the top in FIG. 4B, the first 2 bits “00” are extracted as the header part. As shown in FIG. 3A, since the header part “00” represents the short format of the first format, the code part composed of the 3-bit bit string “001” following the header part “00” is used as the image data. Extracted as data representing 0 run length, data “0” indicated by (2) in FIG. 4A is obtained.
[0029]
Thereafter, similarly, the header part is sequentially extracted, and the code part is specified and decoded by referring to the format specified by the header part. The data decoded in this way corresponds to the difference between the transform coefficients of the image data obtained by performing the difference calculation in step S16 after being quantized in step S15 shown in FIG. However, the data of the first pixel corresponds to the conversion coefficient itself, not the difference. Note that the decoding process described above is performed in chronological order from the first compressed (encoded) data, and the header part and the code part are grasped for the decoded data. Therefore, even if the bit string forming the code portion matches the header portion, the position of the header portion of the data to be decoded next can be specified from the history of decoding of the data so far, and the decoding is performed. Will not interfere with the processing.
[0030]
Next, the difference between the conversion coefficients of the image data obtained by decoding is added to generate image data corresponding to each pixel (step S22). That is, the difference between the decoded transform coefficients is cumulatively added to generate a transform coefficient in units of horizontal lines. At this time, the decoded conversion coefficient is used as it is for the conversion coefficient of the first pixel in the horizontal direction, but the decoded value (difference) for each pixel is used as the conversion coefficient of each pixel thereafter. A value obtained by adding to the value of the previous pixel is used. Subsequently, the image data obtained by the addition in step S22 is inversely quantized (step S23). That is, with the horizontal line as a unit, the quantized value is multiplied by the transform coefficient obtained by addition in step S22 to return to the original bit length before being quantized in the compression process.
[0031]
Subsequently, the image data of each block decoded and inversely quantized as described above is subjected to wavelet inverse transform in the vertical direction (step S24), and then wavelet inverse transform is performed in the horizontal direction (step S25). Then, the color display system of the image data subjected to inverse wavelet conversion is converted from the YUV system to the RGB system (step S26), and the image data of each block converted to the RGB system is synthesized as one image (step S27). . Thus, the image data is expanded and one image can be reproduced.
[0032]
C. Image data decompression circuit
Next, an image data decompression circuit that decompresses image data according to the decompression method described above will be described. FIG. 6 shows the configuration of this image data decompression circuit. In the figure, the decoder 10 executes step S21 in the above-described decompression process, and inputs the image data (image data before decompression) compressed through the above-described steps S11 to S17. . The addition computing unit 20 executes step S22 in the above-described decompression process. The inverse quantizer 30 executes step S23 in the expansion process described above.
[0033]
The registers 41, 42, 43A and 43B store the inversely quantized transform coefficients. Among these, the register 41 stores the conversion coefficient of the color difference component u for one line in the vertical direction in the block. The register 42 stores the conversion coefficient of the color difference component v for one line in the vertical direction in the block. Further, each of the registers 43A and 43B stores a conversion coefficient for one line. That is, these registers can store the conversion coefficients of the color difference components u and v for one line and the conversion coefficient of the luminance component Y for two lines.
The color difference components u and v are thinned out in half in the horizontal and vertical directions, so the data amount of the color difference components u and v for one line is the luminance component for one line. It is half the data amount of Y.
[0034]
The wavelet inverse transform processing units 51, 52, and 53 execute step S24 in the above-described decompression process, and the conversion coefficients for one line in the vertical direction stored in the registers 41, 42, 43A, and 43B, respectively. Apply wavelet inverse transformation. Each of the buffers 61A, 61B, 62A, 62B, 63A, and 63B stores conversion coefficients for one block subjected to inverse wavelet transform. The wavelet inverse transform processing units 71, 72, 73 execute step S25 in the above-described decompression process, and transform one block stored in the buffers 61A, 61B, 62A, 62B, 63A, 63B, respectively. Wavelet inverse transform processing is applied to the coefficients in the horizontal direction.
[0035]
The color display system conversion unit 80 executes step S26 in the above-described decompression process, and converts the color display system of the image data obtained by the wavelet inverse transform from the YUV system to the RGB system. The memory 90 is used to execute step S27 in the above-described decompression process, and stores the decompressed image data of each block in association with the position of each block before compression. The memory 90 outputs image data of one finally expanded image.
[0036]
The operation (decompression method) of the image data decompression circuit will be described below with reference to FIGS. Note that the operations of the decoder 10, the adder 20, the inverse quantizer 30, the color display system converter 80, and the memory 90 shown in FIG. 6 are performed in the above-described steps S 21, S 22, S 23, S 26, S 27. Therefore, the description of these operations will be omitted. Here, the registers 41, 42, 43A, 43B, the wavelet inverse transform processing units 51, 52, 53, and the buffers 61A, 61B are omitted. , 62A, 62B, 63A, 63B, and each operation of the wavelet inverse transform processing units 71, 72, 73 will be described.
[0037]
7 shows the timing until the image data P0 of the block B0 before decompression in FIG. 6 is stored in the registers 41, 42, 43A, 43B, and the data stored in these registers is the buffers 61A, 61B, 62A, The timing until the data is stored in 62B, 63A, 63B is shown.
Of the conversion coefficients for one line of the image data Pn obtained by the decoder 10, the adder 20 and the inverse quantizer 30, the color difference component u is stored in the register 41, and the color difference component v is stored in the register. 42 is stored. The luminance component Y of the same line as these color difference components is stored in the register 43A or the register 43B. In this embodiment, since the color difference components u and v are thinned out for each line in the horizontal and vertical directions, two lines of the luminance component Y correspond to one line of the color difference components u and v. .
[0038]
That is, the image data P0 shown in FIG. 7 has the color difference components u0, v0 and the luminance component Y0 as the first line data, and only the luminance component Y1 as the second line data. Hereinafter, even-numbered lines have no color difference component. That is, even-numbered color difference components are thinned out. This is because attention is paid to the fact that even if a color difference component insensitive to human vision is thinned out, the influence on the image quality is small. That is, the amount of data to be transmitted or stored is reduced by thinning out color difference components that are insensitive to human vision.
[0039]
Next, the transform coefficients are read from the registers 41, 42, 43A, and 43B, respectively, and the vertical wavelet inverse transform of the first line is performed. More specifically, when the color difference components u0 and v0 of the first line are written in the registers 41 and 42 and the luminance component Y0 of the same line is written in the register 43A, the image data from these registers is subjected to wavelet inverse transform processing. The data are sequentially read by the units 51, 52, and 53, and the wavelet inverse transform process in the vertical direction of the first line is performed on each component. At this time, the wavelet inverse transformation process for the luminance component Y0 of the first line is performed in parallel with the process of writing the luminance component Y1 of the second line into the register 43B. Since the first line of data is read and processed, these processes are performed in parallel without any inconvenience. The color difference components u0, v0 and the luminance component Y0 of the first line obtained by performing the wavelet inverse transformation process are stored in the buffers 61A, 62A, 63A as image data Yuv0.
[0040]
Subsequently, the luminance component Y1 of the second line is read from the register 43B and subjected to wavelet inverse transformation processing by the wavelet inverse transformation processing unit 53. In this case, the color difference components are stored in the registers 41 and 42. The color difference components u0 and v0 in the first line are also used, and the wavelet inverse transform processing units 51 and 52 perform wavelet inverse transform processing on the color difference components u0 and v0. Each data obtained by performing wavelet inverse transform processing on the color difference components u0, v0 and the luminance component Y1 is stored in the buffers 61A, 62A, 63A as the image data Yuv1 of the second line. Similarly, the odd-numbered and even-numbered image data on and after the third line are inversely wavelet transformed in the horizontal direction, and the image data of the block B0 is stored in the buffers 61A, 62A, and 63A.
[0041]
Next, with reference to FIG. 8, the operation from reading out image data for one block stored in the buffers 61A, 62A, and 63A to performing horizontal wavelet inverse transformation processing and combining them into one image will be described. To do. The image data of the block B0 stored in the buffers 61A to 63A is read by the wavelet inverse transform processing units 71 to 73 and subjected to horizontal wavelet inverse transform processing, and then the RGB display is performed by the color display system transforming unit 80. And stored in the memory 90. Further, while the wavelet inverse transform processing units 71 to 73 are performing the wavelet inverse transform processing on the image data of the block B0, the above-described decoder 10, addition calculator 20, inverse quantizer 30, register 41 , 42, 43A, 43B, and the wavelet inverse transform processing units 51, 52, 53 execute the above-described steps S21 to S24, and the image data of the block B1 is written into the buffers 61B to 63B.
[0042]
The image data written in the buffers 61B to 63B is read into the wavelet inverse transform processing units 71 to 73 after the horizontal wavelet inverse transform processing for the image data stored in the buffers 61A to 63A is completed. Wavelet inverse transform processing is performed. Similarly, the color display system is converted and stored in the memory 90. Similarly, the image data of the odd-numbered and even-numbered blocks are alternately read out from the buffers 61A to 63A and the buffers 61B to 63B, and the wavelet inverse transformation in the vertical direction is performed, so that the color display system is It is converted and stored in the memory 90. Thus, the image data of all blocks has been expanded.
[0043]
According to this image data decompression circuit, two registers 43A and 43B for storing a total of two lines of luminance components Y are provided in the preceding stage of the wavelet inverse transform processing unit 53, so that the luminance components of each line within the same block. The wavelet inverse transform process in the vertical direction with respect to Y can be pipelined. Further, since two systems of buffers 61A, 62A, 63A and buffers 61B, 62B, 63B are provided in the previous stage of the wavelet inverse transform processing units 71, 72, 73, the horizontal wavelet inverse transform processing for each block is pipelined. Can be Therefore, it is possible to speed up the decoding process. The image data decompression circuit shown in FIG. 6 has been described above.
[0044]
The structural features of this embodiment will be described below.
(1) When image data is converted using wavelet transform, the characteristics of the image can be extracted.
(2) Even if the accuracy of wavelet-transformed data is reduced or a small absolute value is ignored, the influence on the image quality is small, so the number of bits of image data can be reduced or 0 can be replaced with continuous data. . Thereby, 0 run length is improved and a compression rate improves. In addition, if the color display system of the image data is a YUV system, the compression rate is further improved.
(3) If it is desired to prioritize the compression rate even at the expense of image quality, significant compression is possible by adjusting the accuracy of the wavelet transformed data.
[0045]
(4) In encoding, a method is used in which the difference between data of adjacent pixels is calculated to further increase the appearance frequency of 0 and improve the compression rate. Further, in decoding, the difference only needs to be added, and no complicated calculation is required, so that the decoding process can be speeded up.
(5) The image data decompression circuit performs pipeline processing. For this purpose, a register that holds image data in units of one line in the inverse wavelet transform in the vertical direction (horizontal direction) and a buffer that holds data for one block in the wavelet inverse transform in the horizontal direction (vertical direction) Each has a double. Further, the number of pipeline stages may be increased by multiplexing.
[0046]
The effects of this embodiment will be described below.
(1) Since encoding is performed using two types of effective bit length formats and two types of 0-run length formats, a compression / image data expansion circuit can be provided with a simple circuit configuration without requiring a table or complicated calculation. Can be realized.
(2) When wavelet transform is performed for all pixels of one image, a large-capacity buffer is required. According to this embodiment, an image is divided into a plurality of blocks of an appropriate size. Since processing is performed, the capacity of the buffer for storing image data for one block can be reduced. Moreover, by dividing, pipeline processing becomes possible, and the decoding process can be speeded up.
[0047]
Although the embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments, and design changes and the like within a scope not departing from the gist of the present invention are included in the present invention. . For example, in the above-described embodiment, the wavelet transform in the horizontal direction is performed after the wavelet transform in the horizontal direction in the compression process. Conversely, the process in the horizontal direction is performed after performing the conversion process in the vertical direction. In the decoding process, the order of the conversion process in the vertical direction and the conversion process in the horizontal direction may be interchanged. Further, although the color display system of the original image data P is an RGB system, it may be a YUV system. In this case, color display conversion processing is not required in the compression processing and decompression processing. Furthermore, as long as the required compression rate can be obtained, the quantization / inverse quantization, threshold control, and difference / addition operations may be omitted.
[0048]
【The invention's effect】
As described above, according to the present invention, in the compression process, the image data to be compressed is divided into a plurality of blocks, subjected to wavelet transform, and the image data of each block subjected to the wavelet transform is encoded according to a predetermined format. In the decompression process, the compressed image data of each block is decoded according to the predetermined format and inverse wavelet transform is performed, so that the image data is decompressed at high speed while suppressing the influence on the image quality. Can be realized, and hardware implementation becomes easy.
[Brief description of the drawings]
FIG. 1 is a flowchart showing a flow of image data compression processing according to an embodiment of the present invention.
FIG. 2 is a diagram showing an example of block division of image data according to the embodiment of the present invention.
FIG. 3 is a diagram for explaining a data format used in compression and decompression processing according to the embodiment of the present invention;
FIG. 4 is a diagram showing an example of encoding according to the embodiment of the present invention.
FIG. 5 is a flowchart showing a flow of image data decompression processing according to the embodiment of the present invention.
FIG. 6 is a block diagram showing a configuration of an image data expansion circuit according to the embodiment of the present invention.
FIG. 7 is a diagram for explaining the operation of the image data decompression circuit according to the embodiment of the present invention (the image data generation process of each block).
FIG. 8 is a diagram for explaining the operation of the image data expansion circuit according to the embodiment of the present invention (the process of synthesizing the image data of each block).
[Explanation of symbols]
S11 to S17; Step (compression processing), S21 to S27; Step (decompression processing), 10; Decoder, 20; Addition calculator, 30; Inverse quantizer, 41, 42, 43A, 43B; Register, 51 , 52, 53; Wavelet inverse transformation processing unit (vertical direction), 61A, 61B, 62A, 62B, 63A, 63B; Buffer, 71, 72, 73; Wavelet inverse transformation processing unit (horizontal direction), 80; Color display system Conversion unit, 90; memory.

Claims (6)

圧縮すべき画像データを複数のブロックに分割する第1ステップと、
前記分割された画像データをRGB系からYUV系に変換する第2ステップと、
前記YUV系に変換された画像データをブロック毎にウェーブレット変換すると共に、その際に色差成分を間引く第3ステップと、
前記ウェーブレット変換により得られた画像データの変換係数を量子化する第4ステップと、
前記量子化された変換係数であって隣接する画素間の変換係数の差分を演算する第5ステップと、
前記変換係数の差分からなる画像データを、所定のフォーマットのデータであって、0値を示す画像データがいくつ連続したかを表す第1のデータまたは非0値を示す画像データの値自体を表す第2のデータに変換して符号化する第6ステップとを含み、
前記所定のフォーマットは、
前記変換係数の差分からなる画像データを前記第1のデータに変換する際に適用される第1フォーマットと、前記変換係数の差分からなる画像データを前記第2のデータに変換する際に適用される第2フォーマットとを含み、
前記第1フォーマットおよび前記第2フォーマットのそれぞれは、短いビット長を表現するのに適した短フォーマットと、長いビット長を表現するのに適した長フォーマットとを含み、前記第1フォーマットに含まれる短フォーマット及び長フォーマットは0ランレングスを示すコード部を含み、前記第2フォーマットに含まれる短フォーマット及び長フォーマットはデータそのものをあらわすコード部を含み、前記各コード部のビット数の組み合わせを変えて繰り返し圧縮処理を行い、圧縮率が最大になる組み合わせを選択することを特徴とする画像データ圧縮方法。
A first step of dividing image data to be compressed into a plurality of blocks;
A second step of converting the divided image data from an RGB system to a YUV system;
A third step of wavelet transforming the image data converted into the YUV system for each block, and thinning out the color difference component at that time
A fourth step of quantizing the transform coefficient of the image data obtained by the wavelet transform;
A fifth step of calculating a difference between the quantized transform coefficients and transform coefficients between adjacent pixels;
The image data composed of the difference between the conversion coefficients is data of a predetermined format, and represents the first data indicating how many consecutive image data indicating 0 value or the value of image data indicating non-zero value itself. A sixth step of converting and encoding the second data,
The predetermined format is:
The first format applied when converting the image data consisting of the difference between the conversion coefficients into the first data, and applied when converting the image data consisting of the difference between the conversion coefficients into the second data. Second format,
Said first respective format and the second format, and short format suitable for representing a short bit length, viewed it contains a long format suitable for representing bit length, included in the first format The short format and the long format include a code part indicating 0 run length, the short format and the long format included in the second format include a code part representing the data itself, and the combination of the number of bits of each code part is changed. An image data compression method comprising: repeatedly performing compression processing and selecting a combination that maximizes the compression rate .
前記第3ステップでは、前記ウェーブレット変換の際に色差成分を間引くことを特徴とする請求項1に記載された画像データ圧縮方法。  2. The image data compression method according to claim 1, wherein, in the third step, color difference components are thinned out during the wavelet transform. 前記第4ステップでは、所定のしきい値以下の変換係数を0値とすることを特徴とする請求項1または2の何れか1項に記載された画像データ圧縮方法。  3. The image data compression method according to claim 1, wherein in the fourth step, a conversion coefficient equal to or less than a predetermined threshold value is set to 0 value. 4. 前記短フォーマットおよび前記長フォーマットのそれぞれは、前記第6ステップにおいて符号化されたデータのフォーマットを識別するための2ビットのヘッダー部を備えたことを特徴とする請求項1ないし3の何れか1項に記載された画像データ圧縮方法。  4. Each of the short format and the long format includes a 2-bit header portion for identifying the format of the data encoded in the sixth step. The image data compression method described in the item. 請求項1に記載された画像データ圧縮方法を用いて圧縮された画像データを伸長する画像データ伸長方法であって、
前記符号化された各ブロックの画像データのフォーマットを判別して該画像データを前記変換係数の差分からなる画像データに復号化するステップと、
前記復号化された前記画像データの変換係数の差分を加算するステップと、
前記変換係数の差分を加算して得られた各ブロックの画像データを逆量子化するステップと、
前記逆量子化された各ブロックの画像データをウェーブレット逆変換するステップと、
前記ウェーブレット逆変換された各ブロックの画像データをYUV系からRGB系に変換するステップと、
前記RGB系に変換された各ブロックの画像データを1つの画像データに合成するステップと、
を含む画像データ伸長方法。
An image data decompression method for decompressing image data compressed using the image data compression method according to claim 1,
Determining the format of the encoded image data of each block and decoding the image data into image data comprising the difference of the transform coefficients;
Adding a difference of transform coefficients of the decoded image data;
Dequantizing the image data of each block obtained by adding the difference of the transform coefficients;
Wavelet inverse transform of the inverse quantized image data of each block;
Converting the wavelet inversely transformed image data of each block from YUV system to RGB system;
Combining the image data of each block converted into the RGB system into one image data;
A method for decompressing image data.
請求項1に記載された画像データ圧縮方法を用いて圧縮された各ブロックの画像データを伸長する画像データ伸長回路であって、
前記符号化された各ブロックの画像データのフォーマットを判別して該画像データを水平方向または垂直方向の一方のライン毎に復号化し、前記変換係数の差分からなる画像データを得る復号化器と、
前記復号化器により得られた画像データをなす変換係数の差分を加算する加算器と、
前記加算器の加算結果として得られた画像データを逆量子化する逆量子化器と、
前記逆量子化器により得られた各ラインの画像データを交互に記憶する第1および第2のレジスタと、
前記第1および第2のレジスタから前記各ラインの画像データを交互に読み出してウェーブレット逆変換処理を施す第1のウェーブレット逆変換処理部と、
前記第1のウェーブレット逆変換処理部により変換された各ラインの画像データを1ブロック分だけ格納するバッファと、
水平方向または垂直方向の他方の方向に関して、前記バッファに格納された画像データに対しウェーブレット逆変換処理を施す第2のウェーブレット逆変換処理部と、
前記第2のウェーブレット変換処理部により変換された画像データをYUV系からRGB系に変換する色表示系変換部と、
前記色表示系変換部により変換して得られた画像データを記憶するメモリと、
を備えた画像データ伸長回路。
An image data decompression circuit that decompresses image data of each block compressed using the image data compression method according to claim 1,
A decoder that determines the format of the image data of each of the encoded blocks, decodes the image data for each line in the horizontal direction or the vertical direction, and obtains image data including a difference between the transform coefficients;
An adder for adding a difference of transform coefficients forming the image data obtained by the decoder;
An inverse quantizer that inversely quantizes image data obtained as a result of the addition by the adder;
First and second registers for alternately storing image data of each line obtained by the inverse quantizer;
A first wavelet inverse transform processing unit that alternately reads out image data of each line from the first and second registers and performs wavelet inverse transform processing;
A buffer for storing the image data of each line converted by the first wavelet inverse transform processing unit for one block;
A second wavelet inverse transform processing unit for performing wavelet inverse transform processing on the image data stored in the buffer with respect to the other of the horizontal direction and the vertical direction;
A color display system conversion unit for converting the image data converted by the second wavelet conversion processing unit from a YUV system to an RGB system;
A memory for storing image data obtained by conversion by the color display system conversion unit;
An image data decompression circuit.
JP2003070231A 2002-04-12 2003-03-14 Image data compression method, image data expansion method, and image data expansion circuit Expired - Fee Related JP3781012B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003070231A JP3781012B2 (en) 2002-04-12 2003-03-14 Image data compression method, image data expansion method, and image data expansion circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002110907 2002-04-12
JP2003070231A JP3781012B2 (en) 2002-04-12 2003-03-14 Image data compression method, image data expansion method, and image data expansion circuit

Publications (2)

Publication Number Publication Date
JP2004007474A JP2004007474A (en) 2004-01-08
JP3781012B2 true JP3781012B2 (en) 2006-05-31

Family

ID=30446971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003070231A Expired - Fee Related JP3781012B2 (en) 2002-04-12 2003-03-14 Image data compression method, image data expansion method, and image data expansion circuit

Country Status (1)

Country Link
JP (1) JP3781012B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102300092A (en) * 2011-08-25 2011-12-28 北京航空航天大学 Lifting scheme-based 9/7 wavelet inverse transformation image decompressing method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115348432B (en) * 2022-08-15 2024-05-07 上海壁仞科技股份有限公司 Data processing method and device, image processing method, electronic equipment and medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102300092A (en) * 2011-08-25 2011-12-28 北京航空航天大学 Lifting scheme-based 9/7 wavelet inverse transformation image decompressing method
CN102300092B (en) * 2011-08-25 2013-04-24 北京航空航天大学 Lifting scheme-based 9/7 wavelet inverse transformation image decompressing method

Also Published As

Publication number Publication date
JP2004007474A (en) 2004-01-08

Similar Documents

Publication Publication Date Title
JP6195997B2 (en) Data source encoding / decoding method and apparatus with symbol compression
JP3978478B2 (en) Apparatus and method for performing fixed-speed block-unit image compression with estimated pixel values
KR101266577B1 (en) The method and apparatus of processing an image
JP5399416B2 (en) Video coding system with reference frame compression
US20020106019A1 (en) Method and apparatus for implementing motion detection in video compression
US20070076971A1 (en) Compression of images for computer graphics
US8213727B2 (en) Image encoding apparatus and image decoding apparatus, and control method thereof
JP2017507590A5 (en)
US8908982B2 (en) Image encoding device and image encoding method
JP5073004B2 (en) Image coding apparatus, image coding method, image decoding apparatus, and image decoding method
US20060067582A1 (en) Progressive JPEG decoding system
US8682091B2 (en) Real-time image compression
KR20040005962A (en) Apparatus and method for encoding and computing a discrete cosine transform using a butterfly processor
JPH1098731A (en) Device and method for decoding digital image
JP3781012B2 (en) Image data compression method, image data expansion method, and image data expansion circuit
JP3700976B2 (en) Image processing apparatus and image processing method
JP2002064821A (en) Method for compressing dynamic image information and its system
JP3774201B2 (en) Image processing device
US8385664B2 (en) Method for progressive JPEG image decoding
JPH08275153A (en) Image compressor and image decoder
JP4957572B2 (en) Image processing apparatus, image processing system, image processing method, and image processing program
JP2009111821A (en) Image encoding apparatus, image decoding apparatus, image data processing apparatus, image encoding method, and image decoding method
JP2003087573A (en) Image compressing device and image expanding device
JP2000175061A (en) Color transformation processing method and device
JP2004104624A (en) Image encoding device, image decoding device and their methods

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051115

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060116

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060227

R150 Certificate of patent or registration of utility model

Ref document number: 3781012

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100317

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120317

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130317

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140317

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees