(57)【要約】【課題】画像データを高速に伸長することを可能とする画像データ圧縮方法、画像データ伸長方法、および画像データ伸長回路を提供すること。【解決手段】圧縮の過程では、圧縮すべき画像データを複数のブロックに分割してブロック毎にウェーブレット変換して符号化する。伸長の過程では、復号化器１０、加算演算器２０、逆量子化器３０により１ライン分の画像データを復号化して垂直方向にウェーブレット逆変換処理部５１，５２，５３によりウェーブレット逆変換処理を施し、１ブロック分の画像データをバッファ６１Ａ，６１Ｂ，６２Ａ，６２Ｂ，６３Ａ，６３Ｂに格納する。バッファに格納された画像データに対して水平方向にウェーブレット逆変換処理部７１，７２，７３によりウェーブレット逆変換処理を施し、色表示系変換部８０により色表示系をＹＵＶ系に変換して、メモリ９０に格納する。【選択図】　　　図６
2004007474.tif 000002
【特許請求の範囲】
【請求項１】
圧縮すべき画像データを複数のブロックに分割し、ブロック毎に前記画像データをウェーブレット変換するステップと、
前記ウェーブレット変換された各ブロックの画像データを、０値を示す画像データがいくつ連続したかを表す０ランレングスの第１のデータおよび非０値を示す画像データの値自体を表す第２のデータに変換する際の対応関係を規定する所定のフォーマットに従って、前記各ブロックの画像データを前記第１または第２のデータに置き換えて符号化するステップと、
を含む画像データ圧縮方法。
【請求項２】
前記ウェーブレット変換の前に前記画像データをＲＧＢ系からＹＵＶ系に変換するステップをさらに含むことを特徴とする請求項１に記載された画像データ圧縮方法。
【請求項３】
前記ウェーブレット変換された画像データを量子化した上で、隣接する画素間の画像データの差分を演算するステップをさらに含むことを特徴とする請求項１または２に記載された画像データの圧縮方法。
【請求項４】
請求項３に記載された画像データ圧縮方法を用いて圧縮された画像データを伸長する画像データ伸長方法であって、
前記圧縮された各ブロックの画像データを前記所定のフォーマットに従って復号化するステップと、
前記復号化された各ブロックの画像データをウェーブレット逆変換して１つの画像データに合成するステップと、
を含む画像データ伸長方法。
【請求項５】
前記ウェーブレット逆変換前に、前記画像データの差分を加算した上で、前記量子化された画像データを逆量子化するステップをさらに含むことを特徴とする請求項４に記載された画像データ伸長方法。
【請求項６】
前記ウェーブレット逆変換された画像データをＹＵＶ系からＲＧＢ系に変換するステップをさらに含むことを特徴とする請求項４に記載された画像データ伸長方法。
【請求項７】
請求項３に記載された画像データ圧縮方法を用いて圧縮された各ブロックの画像データを伸長する画像データ伸長回路であって、
前記所定のフォーマットに従って、前記圧縮された各ブロックの画像データを水平方向または垂直方向の一方のライン毎に復号化する復号化器と、
前記復号化器により復号化された各ラインの画像データを交互に記憶する第１および第２のレジスタと、
前記第１および第２のレジスタから各ラインの画像データを交互に読み出してウェーブレット逆変換処理を施す第１のウェーブレット逆変換処理部と、
前記第１のウェーブレット逆変換処理部により変換された各ラインの画像データを１ブロック分だけ格納するバッファと、
水平方向または垂直方向の他方の方向に関して、前記バッファに格納された画像データに対しウェーブレット逆変換処理を施す第２のウェーブレット逆変換処理部と、
前記第２のウェーブレット逆変換処理部により変換して得られた全ブロックの画像データを記憶するメモリと、
を備えた画像データ伸長回路。
【請求項８】
前記復号化器により復号化された画像データを加算する加算器と、
前記加算器の加算結果を逆量子化し、該逆量子化により得られた画像データを前記復号化器により復号化された画像データとして前記第１および第２のレジスタに与える逆量子化器と、
を更に備えたことを特徴とする請求項７に記載された画像データ伸長回路。
【請求項９】
前記第２のウェーブレット変換処理部により変換された画像データをＹＵＶ系からＲＧＢ系の画像データに変換して前記メモリに与える色表示系変換部を更に備えたことを特徴とする請求項７または８に記載された画像データ伸長回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ウェーブレット変換を用いた画像データの圧縮／伸長技術に関し、特に高速な伸長処理を可能とする画像データ圧縮方法、画像データ伸長方法、および画像データ伸長回路に関する。
【０００２】
【従来の技術】
ＪＰＥＧ（Ｊｏｉｎｔ　Ｐｈｏｔｏｇｒａｐｈｉｃ　Ｐｉｃｔｕｒｅ　Ｅｘｐｅｒｔｓ　Ｇｒｏｕｐ）により標準化された画像圧縮技術として、ＤＣＴ変換（離散コサイン変換）とハフマン符号化とを組み合わせた技術が知られている。この画像圧縮技術では、視覚に鈍感な周波数帯については画像データの量子化の精度を粗くすると共に、出現頻度の高い画像データには短いコードを割り付けることにより、全体のデータ量を削減している（非特許文献１参照）。
また、ＪＰＥＧ２０００では、ウェーブレット変換と算術符号化を組み合わせた画像圧縮技術が採用されており、この技術によれば、上述のＪＰＥＧで標準化された画像圧縮技術と比較して、高い圧縮率を実現しながらも画像の劣化を小さく抑えることができる（非特許文献２参照）。
【０００３】
【非特許文献１】
藤原洋監修「最新ＭＰＥＧ教科書」アスキー出版、１９９４年８月１日初版、ｐ．５３−６７
【非特許文献２】
ｂｉｔ−ｄｒｉｖｅ［ブロードバンド事典］、［平成１５年３月１０日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｂｉｔ−ｄｒｉｖｅ．ｅ−ｗｏｒｄｓ．ｎｅ．ｊｐ／ｗ／ＪＰＥＧ２０００．ｈｔｍｌ＞
【０００４】
【発明が解決しようとする課題】
ところで、上述のＪＰＥＧで標準化された画像圧縮技術によれば、８×８画素サイズのブロックを単位としてＤＣＴ変換を行うため、圧縮率を高くするとブロック単位で歪みが目立つようになる。しかも、ＤＣＴ変換によれば、正弦波を用いて画像を近似するため、アニメ画像のようにエッジが強く空間周波数が高い場合には近似の精度が低下し、いわゆるモスキートノイズが発生する場合がある。加えて、ハフマン符号化によれば、画像データと符号化コードとを対応づけるためのテーブルを必要とする。一般に、テーブルを参照する手法はソフトウェアとの親和性が高く、ハードウェア化には適していないため、符号化（圧縮）および復号化（伸長）の各処理に時間を要するという問題がある。
【０００５】
また、上述のＪＰＥＧ２０００で標準化された画像圧縮技術によれば、２次元平面上でウェーブレット変換を行うためには、画面の画素サイズと同等の大容量を有するメモリをバッファとして準備しなければならない。従ってハードウェア化に適しておらず、ソフトウェア上での処理が主体となるため、復号化処理に時間を要するという問題がある。しかも、算術符号化は複雑な演算処理を要し、特にＪＰＥＧ２０００のようにビットプレーン単位で符号化すると、復号化処理に多大な時間を要するという問題がある。
【０００６】
この発明は、上記事情に鑑みてなされたもので、画質に与える影響を抑えながら画像データを高速に伸長することを可能とすると共に、ハードウェア化を容易とする画像データ圧縮方法、画像データ伸長方法、および画像データ伸長回路を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記課題を解決するため、この発明は以下の構成を有する。
即ち、請求項１に記載された画像データ圧縮方法は、圧縮すべき画像データを複数のブロックに分割し、ブロック毎に前記画像データをウェーブレット変換するステップと、前記ウェーブレット変換された各ブロックの画像データを、０値を示す画像データがいくつ連続したかを表す０ランレングスの第１のデータおよび非０値を示す画像データの値自体を表す第２のデータに変換する際の対応関係を規定する所定のフォーマットに従って、前記各ブロックの画像データを前記第１または第２のデータに置き換えて符号化するステップと、を含む。
【０００８】
この構成によれば、ブロック分割された画像データは、ウェーブレット変換され、視覚的に敏感な低域成分と鈍感な高域成分とに分離される。この周波数帯域が分離された画像データは符号化されて、０値を示す画像データがいくつ連続するかを表す０ランレングスのデータ、または、非０値を示す画像データの値そのものを表すデータに置き換えられる。ここで、ウェーブレット変換によれば、高域成分の画像データの値が小さくなるという性質があり、画像データの値として「０」の出現頻度が高くなる傾向を示す。このため、符号化の際に０ランレングスを表すデータに置き換えられる頻度が高まり、これによりデータの圧縮がなされる。したがって、この構成によれば、圧縮する際には画像データの０ランレングスまたはビット列を表すデータを処理すれば足り、複雑な演算を行う必要がないので、高速な圧縮が可能になると共に、伸長の際にも同様に複雑な演算を行う必要がないので高速な伸長が可能になる。
【０００９】
請求項２に記載された画像データ圧縮方法は、請求項１に記載された画像データ圧縮方法において、前記ウェーブレット変換の前に前記画像データをＲＧＢ系からＹＵＶ系に変換するステップをさらに含むことを特徴とする。
請求項３に記載された画像データ圧縮方法は、請求項１または２に記載された画像データの圧縮方法において、前記ウェーブレット変換された画像データを量子化した上で、隣接する画素間の画像データの差分を演算するステップをさらに含むことを特徴とする。
【００１０】
請求項４に記載された画像データ伸長方法は、請求項３に記載された画像データ圧縮方法を用いて圧縮された画像データを伸長する画像データ伸長方法であって、前記圧縮された各ブロックの画像データを前記所定のフォーマットに従って復号化するステップと、前記復号化された各ブロックの画像データをウェーブレット逆変換して１つの画像データに合成するステップと、を含む。
この構成によれば、０ランレングスを表すデータまたは画像データの値そのものを復号化処理の対象とすればよい。従って、複雑な演算を行うことなく復号化することができ、高速な復号が可能になる。
【００１１】
請求項５に記載された画像データ伸長方法は、請求項４に記載された画像データ伸長方法において、前記ウェーブレット逆変換前に、前記画像データの差分を加算した上で、前記量子化された画像データを逆量子化するステップをさらに含むことを特徴とする。
請求項６に記載された画像データ伸長方法は、請求項４に記載された画像データ伸長方法において、前記ウェーブレット逆変換された画像データをＹＵＶ系からＲＧＢ系に変換することを特徴とする。
【００１２】
請求項７に記載された画像データ伸長回路は、請求項３に記載された画像データ圧縮方法を用いて圧縮された各ブロックの画像データを伸長する画像データ伸長回路（例えば後述する図６に示す画像データ伸長回路）であって、前記所定のフォーマットに従って、前記圧縮された各ブロックの画像データを水平方向または垂直方向の一方のライン毎に復号化する復号化器と、前記復号化器により復号化された各ラインの画像データを交互に記憶する第１および第２のレジスタと、前記第１および第２のレジスタから各ラインの画像データを交互に読み出してウェーブレット逆変換処理を施す第１のウェーブレット逆変換処理部と、前記第１のウェーブレット逆変換処理部により変換された各ラインの画像データを１ブロック分だけ格納するバッファと、水平方向または垂直方向の他方の方向に関して、前記バッファに格納された画像データに対しウェーブレット逆変換処理を施す第２のウェーブレット逆変換処理部と、前記第２のウェーブレット逆変換処理部により変換して得られた全ブロックの画像データを記憶するメモリとを備える。
【００１３】
請求項８に記載された画像データ伸長回路は、請求項７に記載された画像データ伸長回路において、前記復号化器により復号化された画像データを加算する加算器と、前記加算器の加算結果を逆量子化し、該逆量子化により得られた画像データを前記復号化器により復号化された画像データとして前記第１および第２のレジスタに与える逆量子化器と、を更に備えたことを特徴とする。
請求項９に記載された画像データ伸長回路は、請求項７または８に記載された画像データ伸長回路において、前記第２のウェーブレット変換処理部により変換された画像データをＹＵＶ系からＲＧＢ系の画像データに変換して前記メモリに与える色表示系変換部を更に備えたことを特徴とする。
【００１４】
【発明の実施の形態】
以下、図面を参照して、この発明の実施の形態に係る画像データの圧縮方法、伸長方法および画像データ伸長回路を順に説明する。
Ａ．画像データの圧縮方法
図１に示すフローに沿って、図２ないし図４を参照しながらこの実施の形態に係る画像データ圧縮方法を説明する。この画像データの圧縮方法は、圧縮すべき原画像データのうち、人間の視覚に鈍感な成分の値を「０」に置き換え、「０」」の出現頻度を高めることにより、画像データを圧縮するものである。
【００１５】
具体的に説明する。
まず、図２に示すように、圧縮すべき原画像データＰをブロックＢ０〜ブロックＢ１１の１２個のブロックに分割する（ステップＳ１１）。この実施の形態では、原画像データＰは、ＲＧＢ系の画像データであるものとする。この後、以下に説明するようにブロック毎に一連の圧縮処理を行う。
即ち、最初のブロックＢ０の画像データの色表示系をＲＧＢ系からＹＵＶ系に変換する（ステップＳ１２）。ここで、ＹＵＶ系の色差成分（ｕ，ｖ）は、人間の視覚に対して鈍感な成分であり、間引いても画質に与える影響が少ないため、後述するように圧縮する際には、色差成分を間引くことによって処理の高速化と伝送または記憶するデータ量の削減を図っている。
【００１６】
続いて、上述のステップＳ１２で色表示系が変換されたブロックＢ０の画像データに対して、ブロックＢ０の水平方向にウェーブレット変換処理を施し、水平方向成分の変換係数を得る（ステップＳ１３）。その後、ブロックＢ０の垂直方向にウェーブレット変換処理を施し、垂直方向成分の変換係数を得る（ステップＳ１４）。ここで、ウェーブレット変換は、画像の特徴を抽出できるという特質を有する。即ち、ウェーブレット変換によれば、画像データが、人間の視覚に敏感な低域成分と鈍感な高域成分とに分離される。このうち、高域成分については、変換の精度を落とし、絶対値の小さなデータを無視しても、画質に与える影響は小さい。しかも、ウェーブレット変換された高域成分の値は小さくなる傾向を示すため、圧縮の過程において「０」の出現頻度がさらに高まる。
【００１７】
続いて、上述のステップＳ１３，Ｓ１４で得られたブロックＢ０の画像データの水平方向および垂直方向の各変換係数を量子化する（ステップＳ１５）。具体的には、各変換係数を適当な精度で量子化することによりまるめて、その有効ビット長を短くする。この後、変換係数を大きい順に並べて、所定のしきい値以下の変換係数を「０」とする（しきい値制御）。上述の量子化の精度や所定のしきい値は、必要とされる画質と圧縮率との関係から事前に実験的に決定される。また、このしきい値は変更可能なパラメータとして設定され、任意に変更することが可能となっている。
【００１８】
続いて、水平ラインを単位として、上述のステップＳ１５で量子化された画像データの変換係数をスキャンし、隣接する画素間の画像データの変換係数の差分を演算する（ステップＳ１６）。即ち、各画素の画像データとして、その前にスキャンの対象とされた隣の画素のデータに対する差分を用いる。ただし、最初の画素の変換係数の値については、その画素について得られた変換係数そのものを用いる。ここで、一般に画像の場合、空間周波数が連続している頻度が高いため、隣接した画素の値が互いに似たような値をとり、その差分が小さくなる傾向を示す。このため、各画素の変換係数の絶対値を用いるよりも、差分を用いた方が、データのビット数を小さく抑え、データ量を削減することが可能になる。
【００１９】
続いて、所定のフォーマットに従って、ステップＳ１６で得られたブロックＢ０の画像データの差分を符号化する（ステップＳ１７）。このフォーマットは、ウェーブレット変換された各ブロックの画像データを、０値を示す画像データがいくつ連続するかを表す０ランレングス（第１のデータ）および非０値を示す画像データの値自体（第２のデータ）に変換する際の対応関係を規定するものである。図３に、ステップＳ１７における符号化で使用されるフォーマットの一例を示す。この実施の形態では、画像データの０ランレングスを表す第１のデータのフォーマット（以下、第１フォーマットと称す）と、画像データの値そのものを表す第２のデータのフォーマット（以下、第２フォーマットと称す）とに大別され、各フォーマットは、さらに、短いビット長を表現するのに適した短フォーマットと、長いビット長を表現するのに適した長フォーマットとに分類される。
【００２０】
図３（ａ）は、第１フォーマットの短フォーマットを示し、２ビットのヘッダー部とｎ（ｎは自然数）ビットのコード部とから構成される。この例では、ヘッダー部に「００」が設定され、このヘッダー部から、第１フォーマットの短フォーマットを用いて符号化されたデータを識別することが可能となる。図３（ｂ）は、第１フォーマットの長フォーマットを示し、２ビットのヘッダー部とｍビット（ｍ＞ｎ）のコード部とから構成される。この例では、ヘッダー部に「０１」が設定され、このヘッダー部から、第１フォーマットの長フォーマットを用いて符号化されたデータを識別することが可能となる。
【００２１】
図３（ｃ）は、第２フォーマットの短フォーマットを示し、２ビットのヘッダー部とｋ（ｋは自然数）ビットのコード部とから構成される。この例では、ヘッダー部に「１０」が設定され、このヘッダー部から、第２フォーマットの短フォーマットを用いて符号化されたデータを識別することが可能となる。図３（ｄ）は、第２フォーマットの長フォーマットを示し、２ビットのヘッダー部とｈビット（ｈ＞ｋ）のコード部とから構成される。この例では、ヘッダー部に「１１」が設定され、このヘッダー部から、第２フォーマットの長フォーマットを用いて符号化されたデータを識別することが可能となる。
【００２２】
さらに、この実施の形態では、上述の第１フォーマットの変形として、残りのビット（現在着目するビットから最終ビットまでの全ビット）がすべて「０」であることを表す第３フォーマットを設定する。図３（ｅ）に、第３フォーマットの一例を示す。この第３フォーマットは、上述の第１フォーマットの短フォーマットと同じヘッダー部を有するが、コード部としてｎビットの「０」からなるコード（オール０）を有する。伸長の過程でこの第３フォーマットのデータが検出された場合には、それ以降のビットはすべて「０」として復号化が行われる。
【００２３】
ここで、図４を参照して、上述の図３に示すフォーマットを用いた符号化を説明する。ただし、図３に示すフォーマット中のビット数ｎ，ｍ，ｋ，ｈについては、ｎ＝３，ｍ＝５，ｋ＝４，ｈ＝８とする。ｎ，ｍ，ｋ，ｈの各値は、いろいろな組み合わせに従って実際に圧縮処理を行い、最も圧縮率が高かった各値を使用すればよい。
図４（ａ）は、圧縮処理の過程で符号化の対象とされるデータ列の一例を示す。このデータ列は、上述のステップＳ１６で得られたブロックＢ０における各画素の変換係数の差分（１６進表示）を配列したものである。図４（ｂ）に、上述の図４（ａ）に示すデータ列を符号化して得られるデータの一例を示す。この例では、▲１▼で示すデータ部分「１２」に対しては、第２フォーマットの長フォーマットが適用され、２ビットのヘッダー部「１１」と、データ列「１２」そのものを表す８ビットのコード部「００００１１００」とから構成されるデータに符号化される。
【００２４】
その次の▲２▼で示すデータ部分「０」に対しては、第１フォーマットの短フォーマットが適用され、２ビットのヘッダー部「００」と、０ランレングスが“１”であることを示す３ビットのコード部「００１」とから構成されるデータに符号化される。その次の▲３▼で示すデータ部分「ｆｅ」（＝−２）に対しては、第２フォーマットの短フォーマットが適用され、２ビットのヘッダー部「１０」と、データ「ｆｅ」そのものを表す４ビットのコード部「１１１０」とから構成されるデータに符号化される。その次の▲４▼で示すデータ部分「ｆｆ」（＝−１）に対しては、第２フォーマットの短フォーマットが適用され、２ビットのヘッダー部「１０」と、データ「ｆｆ」そのものを表す４ビットのコード部「１１１１」とから構成されるデータに符号化される。その次の▲５▼で示すデータ部分「０００００００」に対しては、第１フォーマットの短フォーマットが適用され、２ビットのヘッダー部「００」と、０ランレングスが“７”であることを表す３ビットのコード部「１１１」とから構成されるデータに符号化される。
【００２５】
その次の▲６▼で示すデータ部分「１」に対しては、第２フォーマットの短フォーマットが適用され、２ビットのヘッダー部「１０」と、データ「１」そのものを表す４ビットのコード部「０００１」とから構成されるデータに符号化される。その次の▲７▼で示す残りのデータ部分「０・・・」に対しては、第３フォーマットが適用され、２ビットのヘッダー部「００」と３ビットのコード部「０００」とから構成されるデータに符号化される。この例では、図４（ａ）に示すデータ列が、図４（ｂ）に示す合計４３ビットのビット列に置き換えられて、画像データが符号化される。
以上により、ブロックＢ０の画像データの圧縮が行われ、他のブロックＢ１〜Ｂ１１についても同様に画像データの圧縮が順次行われる。
【００２６】
Ｂ．画像データの伸長方法
以下、図５に示すフローに沿って、上述の圧縮方法を用いて圧縮された画像データを伸長する方法（画像データ伸長方法）を説明する。
上述の圧縮方法を用いて圧縮された各ブロックの画像データは、圧縮処理で用いられた図３に示すフォーマットに従って復号化される（ステップＳ２１）。
【００２７】
ここで、図４（ｂ）に示すビット列を含む画像データを例として復号化を具体的に説明する。同図に示すビット列を復号化する場合、そのビット列に含まれるヘッダー部からフォーマットの種類を逐次判別して適応的に復号化する。この例では、最初に受信する図４（ｂ）の最上段のデータ「１２」に対応するビット列「１１００００１１００」のうち、先頭の２ビット「１１」をヘッダー部として抽出する。ここで、図３（ｄ）に示すように、ヘッダー部「１１」は第２フォーマットの長フォーマットを表すので、このヘッダー部「１１」に後続する８ビットのビット列「００００１１００」からなるコード部を画像データのビット列そのものとして抽出し、図４（ａ）の▲１▼で示すデータ部分「１２」を得る。
【００２８】
続いて、図４（ｂ）の上から２段目に示されたデータ「０」に対応するビット列「００００１」のうち、先頭の２ビット「００」をヘッダー部として抽出する。図３（ａ）に示すように、ヘッダー部「００」は第１フォーマットの短フォーマットを表すので、このヘッダー部「００」に後続する３ビットのビット列「００１」からなるコード部を画像データの０ランレングスを表すデータとして抽出し、図４（ａ）の▲２▼で示すデータ「０」を得る。
【００２９】
以下、同様にして、順次ヘッダー部を抽出し、そのヘッダー部で特定されるフォーマットを参照することによりコード部を特定して復号化する。このようにして復号化されたデータは、図１に示すステップＳ１５で量子化した後にステップＳ１６で差分演算して得た画像データの変換係数の差分に相当するものとなる。ただし、最初の画素のデータについては差分ではなく、変換係数そのものに相当する。なお、上述の復号化の処理は、圧縮（符号化）された最初のデータから時系列順に行われ、復号化されたデータについてはヘッダー部とコード部とが把握される。従って、仮にコード部をなすビット列とヘッダー部とが一致していても、それまでのデータに対する復号化の履歴から、次に復号化すべきデータのヘッダー部の位置を特定することができ、復号化の処理に支障をきたすことはない。
【００３０】
次に、復号化により得られた画像データの変換係数の差分を加算して各画素に対応する画像データを生成する（ステップＳ２２）。即ち、復号化された変換係数の差分を累積的に加算し、水平ラインを単位として変換係数を生成する。このとき、水平方向の最初の画素の変換係数については、復号化された変換係数をそのまま用いるが、それ以降の各画素の変換係数については、各画素について復号化された値（差分）をその前の画素の値に加算して得られる値を用いる。続いて、ステップＳ２２で加算して得られた画像データを逆量子化する（ステップＳ２３）。即ち、水平ラインを単位として、ステップＳ２２で加算して得られた変換係数に量子化された値を掛けて、圧縮の過程で量子化される前の元のビット長に戻す。
【００３１】
続いて、上述のようにして復号化され逆量子化された各ブロックの画像データを垂直方向にウェーブレット逆変換し（ステップＳ２４）、その後、水平方向にウェーブレット逆変換する（ステップＳ２５）。そして、ウェーブレット逆変換された画像データの色表示系をＹＵＶ系からＲＧＢ系に変換し（ステップＳ２６）、このＲＧＢ系に変換された各ブロックの画像データを１つの画像として合成する（ステップＳ２７）。以上により画像データが伸長されて、１つの画像が再生可能となる。
【００３２】
Ｃ．画像データ伸長回路
次に、上述の伸長方法に従って画像データを伸長する画像データ伸長回路を説明する。図６に、この画像データ伸長回路の構成を示す。同図において、復号化器１０は、上述の伸長処理におけるステップＳ２１を実行するものであり、前述のステップＳ１１〜Ｓ１７の各ステップを経て圧縮された画像データ（伸長前の画像データ）を入力する。加算演算器２０は、上述の伸長処理におけるステップＳ２２を実行するものである。逆量子化器３０は、上述の伸長処理におけるステップＳ２３を実行するものである。
【００３３】
レジスタ４１，４２，４３Ａ，４３Ｂは、逆量子化された変換係数を格納するものである。このうち、レジスタ４１は、ブロック内の垂直方向の１ライン分の色差成分ｕの変換係数を格納するものである。また、レジスタ４２は、ブロック内の垂直方向の１ライン分の色差成分ｖの変換係数を格納するものである。さらに、レジスタ４３Ａ，４３Ｂのそれぞれは、１ライン分の変換係数を格納するものである。即ち、これらレジスタには、１ライン分の色差成分ｕ，ｖの変換係数と２ライン分の輝度成分Ｙの変換係数とが格納可能となっている。
なお、色差成分ｕ，ｖについては、水平、垂直方向にそれぞれ２分の１にデータが間引かれているので、１ライン分の色差成分ｕ，ｖのデータ量は、１ライン分の輝度成分Ｙのデータ量の半分となっている。
【００３４】
ウェーブレット逆変換処理部５１，５２，５３は、上述の伸長処理におけるステップＳ２４を実行するものであり、レジスタ４１，４２，４３Ａ，４３Ｂにそれぞれ格納された垂直方向の１ライン分の変換係数に対してウェーブレット逆変換処理を施す。バッファ６１Ａ，６１Ｂ，６２Ａ，６２Ｂ，６３Ａ，６３Ｂのそれぞれは、ウェーブレット逆変換された１ブロック分の変換係数を格納するものである。また、ウェーブレット逆変換処理部７１，７２，７３は、上述の伸長処理におけるステップＳ２５を実行するものであり、バッファ６１Ａ，６１Ｂ，６２Ａ，６２Ｂ，６３Ａ，６３Ｂにそれぞれ格納された１ブロック分の変換係数に対して水平方向にウェーブレット逆変換処理を施す。
【００３５】
色表示系変換部８０は、上述の伸長処理におけるステップＳ２６を実行するものであり、ウェーブレット逆変換により得られた画像データの色表示系をＹＵＶ系からＲＧＢ系に変換する。メモリ９０は、上述の伸長処理におけるステップＳ２７を実行するために使用されるものであり、伸長された各ブロックの画像データを、圧縮前の各ブロックの位置に対応させて記憶するものである。このメモリ９０から、最終的に伸長された１つの画像の画像データが出力される。
【００３６】
以下、図７および図８を参照して、この画像データ伸長回路の動作（伸長方法）を説明する。なお、図６に示す復号化器１０、加算演算器２０、逆量子化器３０、色表示系変換部８０、およびメモリ９０の各動作については、上述のステップＳ２１，Ｓ２２，Ｓ２３，Ｓ２６，Ｓ２７の各処理の内容と同一であるから、これらの動作についての説明は省略することとし、ここでは、レジスタ４１，４２，４３Ａ，４３Ｂ、ウェーブレット逆変換処理部５１，５２，５３、バッファ６１Ａ，６１Ｂ，６２Ａ，６２Ｂ，６３Ａ，６３Ｂ、ウェーブレット逆変換処理部７１，７２，７３の各動作について説明する。
【００３７】
図７は、図６において伸長前のブロックＢ０の画像データＰ０がレジスタ４１，４２，４３Ａ，４３Ｂに格納されるまでのタイミングと、これらのレジスタに格納されたデータがバッファ６１Ａ，６１Ｂ，６２Ａ，６２Ｂ，６３Ａ，６３Ｂに格納されるまでのタイミングを示すものである。
上述の復号化器１０、加算演算器２０、および逆量子化器３０により得られた画像データＰｎの１ライン分の変換係数のうち、色差成分ｕがレジスタ４１に格納され、色差成分ｖがレジスタ４２に格納される。また、これら色差成分と同一ラインの輝度成分Ｙは、レジスタ４３Ａまたはレジスタ４３Ｂに格納される。この実施の形態では、色差成分ｕ，ｖが、水平、垂直それぞれの方向のライン毎に間引かれているので、輝度成分Ｙの２ライン分が色差成分ｕ，ｖの１ライン分に対応する。
【００３８】
すなわち、図７に示す画像データＰ０は、最初の第１ライン目のデータとして色差成分ｕ０，ｖ０と輝度成分Ｙ０とを有し、第２ライン目のデータとして輝度成分Ｙ１しか有しておらず、以下、偶数番目のラインについては色差成分を有していない。即ち、偶数番目の色差成分が間引かれている。これは、人間の視覚に鈍感な色差成分を間引いたとしても画質に与える影響が少ないことに着目したものである。即ち、人間の視覚に鈍感な色差成分を間引くことにより伝送または記憶すべきデータ量を削減している。
【００３９】
次に、レジスタ４１，４２，４３Ａ，４３Ｂから変換係数がそれぞれ読み出されて第１ライン目の垂直方向のウェーブレット逆変換が行われる。具体的に説明すると、レジスタ４１，４２に第１ライン目の色差成分ｕ０，ｖ０が書き込まれ、レジスタ４３Ａに同ラインの輝度成分Ｙ０が書き込まれると、これらのレジスタから画像データがウェーブレット逆変換処理部５１，５２，５３に順次読み出されて、第１ライン目の垂直方向のウェーブレット逆変換処理が各成分に施される。このとき、第１ライン目の輝度成分Ｙ０に対するウェーブレット逆変換処理は、第２ライン目の輝度成分Ｙ１をレジスタ４３Ｂに書き込む処理と並行して行われるが、ウェーブレット逆変換処理部５３はレジスタ４３Ａから第１ライン目のデータを読み込んで処理を行うので、これらの処理が不都合なく並行して行われる。ウェーブレット逆変換処理を施して得られた第１ライン目の色差成分ｕ０，ｖ０および輝度成分Ｙ０は、画像データＹｕｖ０としてバッファ６１Ａ，６２Ａ，６３Ａに格納される。
【００４０】
続いて、レジスタ４３Ｂから第２ライン目の輝度成分Ｙ１が読み出されて、ウェーブレット逆変換処理部５３によりウェーブレット逆変換処理が施されるが、この場合の色差成分はレジスタ４１，４２に格納された第１ライン目の色差成分ｕ０，ｖ０が流用され、これら色差成分ｕ０，ｖ０に対してウェーブレット逆変換処理部５１，５２によりウェーブレット逆変換処理が施される。色差成分ｕ０，ｖ０および輝度成分Ｙ１に対してウェーブレット逆変換処理を施して得られた各データは、第２ライン目の画像データＹｕｖ１としてバッファ６１Ａ，６２Ａ，６３Ａにそれぞれ格納される。以下、同様にして第３ライン目以降の奇数番目および偶数番目の画像データが水平方向にウェーブレット逆変換され、バッファ６１Ａ，６２Ａ，６３ＡにブロックＢ０の画像データが蓄積される。
【００４１】
次に、図８を参照して、バッファ６１Ａ，６２Ａ，６３Ａに蓄積された１ブロック分の画像データを読み出して水平方向のウェーブレット逆変換処理を施し、１つの画像に合成するまでの動作を説明する。バッファ６１Ａ〜６３Ａに格納されたブロックＢ０の画像データは、ウェーブレット逆変換処理部７１〜７３に読み出されて水平方向のウェーブレット逆変換処理が施された後、色表示系変換部８０によりＲＧＢ系に変換されてメモリ９０に格納される。また、ウェーブレット逆変換処理部７１〜７３がブロックＢ０の画像データに対してウェーブレット逆変換処理を行っている間に、上述の復号化器１０、加算演算器２０、逆量子化器３０、レジスタ４１，４２，４３Ａ，４３Ｂ、ウェーブレット逆変換処理部５１，５２，５３が前述のステップＳ２１〜Ｓ２４を実行し、バッファ６１Ｂ〜６３ＢにブロックＢ１の画像データが書き込まれる。
【００４２】
バッファ６１Ｂ〜６３Ｂに書き込まれた画像データは、バッファ６１Ａ〜６３Ａに格納された画像データに対する水平方向のウェーブレット逆変換処理が終了した後、ウェーブレット逆変換処理部７１〜７３に読み込まれて水平方向のウェーブレット逆変換処理が施される。そして、同様に色表示系の変換が行われてメモリ９０に格納される。以下、同様にして、奇数番目および偶数番目の各ブロックの画像データが、バッファ６１Ａ〜６３Ａとバッファ６１Ｂ〜６３Ｂとから交互に読み出されて垂直方向のウェーブレット逆変換が行われ、色表示系が変換されてメモリ９０に格納される。以上で全ブロックの画像データが伸長された。
【００４３】
この画像データ伸長回路によれば、ウェーブレット逆変換処理部５３の前段に合計２ライン分の輝度成分Ｙを格納する２つのレジスタ４３Ａ，４３Ｂを備えているので、同一ブロック内で各ラインの輝度成分Ｙに対する垂直方向のウェーブレット逆変換処理をパイプライン化することができる。また、ウェーブレット逆変換処理部７１，７２，７３の前段に２系統のバッファ６１Ａ，６２Ａ，６３Ａとバッファ６１Ｂ，６２Ｂ，６３Ｂと備えているので、各ブロックに対する水平方向のウェーブレット逆変換処理をパイプライン化することができる。従って、復号化の処理を高速化することが可能になる。以上で図６に示す画像データ伸長回路を説明した。
【００４４】
以下、この実施の形態の構成上の特徴を述べる。
（１）画像データはウェーブレット変換を用いて変換すると、その画像の特徴を抽出できるという性質がある。
（２）ウェーブレット変換されたデータの精度を落としたり絶対値の小さい値を無視しても、画質に与える影響が小さいので、画像データのビット数を減らしたり０が連続したデータに置き換えることができる。これにより０ランレングスが改善され、圧縮率が向上する。加えて、画像データの色表示系をＹＵＶ系とすれば、圧縮率が一層向上する。
（３）また、画質を犠牲にしても圧縮率を優先させたい場合には、ウェーブレット変換されたデータの精度を調整することによって、大幅な圧縮が可能となる。
【００４５】
（４）符号化では、隣り合った画素のデータの差分を演算することにより、０の出現頻度をさらに一層高めて圧縮率を向上させる手法を用いている。また、復号化では、差分を加算すればよく、複雑な演算を要しないので、復号化処理を高速化することができる。
（５）画像データ伸長回路はパイプライン処理を行うものとしている。そのために、垂直方向（水平方向）のウェーブレット逆変換にあたって１ラインを単位として画像データを保持するレジスタと、水平方向（垂直方向）のウェーブレット逆変換にあたって１ブロック分のデータを保持するバッファとを、それぞれ２重に備えている。さらに多重化してパイプラインの段数を増してもよい。
【００４６】
また、以下にこの実施の形態による効果を述べる。
（１）２種類の有効ビット長のフォーマットと２種類の０ランレングスのフォーマットを用いて符号化するので、テーブルや複雑な演算を必要とせず、簡単な回路構成で圧縮／画像データ伸長回路を実現することができる。
（２）１つの画像の全画素についてウェーブレット変換を行うものとした場合、大容量のバッファを必要とするが、この実施の形態によれば、画像を適当なサイズの複数のブロックに分割して処理するので、１ブロック分の画像データを格納するためのバッファの容量を減らすことができる。しかも、分割することによりパイプライン処理が可能となり、復号化処理を高速化することができる。
【００４７】
以上、この発明の実施の形態を説明したが、この発明は、上述の実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。たとえば、上述の実施の形態では、圧縮の過程において水平方向のウェーブレット変換した後に垂直方向のウェーブレット変換するものとしたが、逆に垂直方向の変換処理を行った後に水平方向の処理を行うようにしてもよく、復号化の処理においても同様に垂直方向の変換処理と水平方向の変換処理の順番を入れ替えてもよい。また、原画像データＰの色表示系をＲＧＢ系としたが、これをＹＵＶ系としてもよい。この場合には、圧縮処理および伸長処理において色表示系の変換処理が不要となる。さらに、必要な圧縮率が得られるのであれば、量子化／逆量子化、しきい値制御、および差分演算／加算演算の各処理を省略してもよい。
【００４８】
【発明の効果】
以上説明したように、この発明によれば、圧縮処理において、圧縮すべき画像データを複数のブロックに分割してウェーブレット変換し、前記ウェーブレット変換された各ブロックの画像データを所定のフォーマットに従って符号化し、また、伸長処理においては、前記圧縮された各ブロックの画像データを前記所定のフォーマットに従って復号化してウェーブレット逆変換するようにしたので、画質に与える影響を抑えながら画像データを高速に伸長することが可能になると共に、ハードウェア化が容易になる。
【図面の簡単な説明】
【図１】この発明の実施の形態に係る画像データの圧縮処理の流れを示すフローチャートである。
【図２】この発明の実施の形態に係る画像データのブロック分割の一例を示す図である。
【図３】この発明の実施の形態に係る圧縮および伸長処理で用いられるデータのフォーマットを説明するための図ある。
【図４】この発明の実施の形態に係る符号化の一例を示す図である。
【図５】この発明の実施の形態に係る画像データの伸長処理の流れを示すフローチャートである。
【図６】この発明の実施の形態に係る画像データ伸長回路の構成を示すブロック図である。
【図７】この発明の実施の形態に係る画像データ伸長回路の動作（各ブロックの画像データの生成過程）を説明するための図である。
【図８】この発明の実施の形態に係る画像データ伸長回路の動作（各ブロックの画像データの合成過程）を説明するための図である。
【符号の説明】
Ｓ１１〜Ｓ１７；ステップ（圧縮処理）、Ｓ２１〜Ｓ２７；ステップ（伸長処理）、１０；復号化器、２０；加算演算器、３０；逆量子化器、４１，４２，４３Ａ，４３Ｂ；レジスタ、５１，５２，５３；ウェーブレット逆変換処理部（垂直方向）、６１Ａ，６１Ｂ，６２Ａ，６２Ｂ，６３Ａ，６３Ｂ；バッファ、７１，７２，７３；ウェーブレット逆変換処理部（水平方向）、８０；色表示系変換部、９０；メモリ。
【図１】
2004007474.tif 000003
【図２】
2004007474.tif 000004
【図３】
2004007474.tif 000005
【図４】
2004007474.tif 000006
【図５】
2004007474.tif 000007
【図６】
2004007474.tif 000008
【図７】
2004007474.tif 000009
【図８】
2004007474.tif 000010