JP2006060490A - Image compressor and image compression program - Google Patents
Image compressor and image compression program Download PDFInfo
- Publication number
- JP2006060490A JP2006060490A JP2004239719A JP2004239719A JP2006060490A JP 2006060490 A JP2006060490 A JP 2006060490A JP 2004239719 A JP2004239719 A JP 2004239719A JP 2004239719 A JP2004239719 A JP 2004239719A JP 2006060490 A JP2006060490 A JP 2006060490A
- Authority
- JP
- Japan
- Prior art keywords
- compression
- image
- unit
- data
- image compression
- 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.)
- Withdrawn
Links
Images
Landscapes
- Image Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
Description
本発明は、画像データにデータ圧縮処理を施す画像圧縮装置、およびコンピュータ等の情報処理装置を画像圧縮装置として動作させる画像圧縮プログラムに関する。 The present invention relates to an image compression apparatus that performs data compression processing on image data, and an image compression program that causes an information processing apparatus such as a computer to operate as an image compression apparatus.
従来より、記憶容量の低減化や通信量の低減化等のために、画像データにデータ圧縮処理を施す技術が広く採用されている。 2. Description of the Related Art Conventionally, a technique for performing data compression processing on image data has been widely adopted in order to reduce storage capacity and communication volume.
例えば、特許文献1には、原画像から代表色を選定しCLUT(カラールックアップテーブル)を構成する際に、連続する色番号が近い値の色データを持つように色番号を割り当て、次にCLUTに対応したビットマップを作成して隣接画素間の色番号の差分を求め、差分が大きな値を取る場合、画質劣化を起こさない範囲でビットマップの色番号を変更し、差分を小さな値に偏らせ、差分データに対してランレングス符号化を施すという技術が開示されている。
For example, in
また、特許文献2には、各色に対応してそれぞれ割り当てられたデータが複数集まって構成される画像用データを非可逆圧縮して符号化し、そして、データの1つを透明色に割り当てると共に、その透明色を可逆とし、画像用データを即値(差分符号化の際の最初の値)とその即値に続く複数の差分値(差分符号化の際の前の値)とで構成し、それらの値を非可逆圧縮して符号化等する際、透明色を表す即値と差分値とを可逆とし、さらに、透明色を表す即値を、各一色のデータ値の中間の値としたり、透明色を表す差分値を「0」としたりするという技術が提案されている。
Further,
また、特許文献3には、数を予測された数(s’(j))と実際の数(s(j))との差分によって符号化することが提案されている。
さらに、特許文献4には、n列目の画素データ列に対して、副走査方向の同一画素データの分布状況を認識するとともに、主走査方向の同ー画素データの分布状況を認識し、これらの認識結果を基に、副走査方向に連続する同ー画素データを圧縮処理するか、あるいは主走査方向に連続する同一画素データを圧縮処理するかを決定する画像圧縮装置が提案されている。 Further, Patent Document 4 recognizes the distribution status of the same pixel data in the sub-scanning direction and the distribution status of the same pixel data in the main scanning direction with respect to the n-th pixel data column. Based on this recognition result, there has been proposed an image compression device that determines whether to compress the same pixel data continuous in the sub-scanning direction or to compress the same pixel data continuous in the main scanning direction.
また、特許文献5には、画像データを予め小ブロックに分割し、注目領域が各小ブロックに含まれているかどうかを判断することにより注目領域とそれ以外の領域とで圧縮率を可変する技術が開示されている。 Japanese Patent Application Laid-Open No. 2005-228561 discloses a technique for dividing the image data into small blocks in advance, and determining whether or not the attention area is included in each small block, thereby changing the compression rate between the attention area and the other areas. Is disclosed.
さらに、特許文献6には、前段側の処理の結果を利用して画像データを複数のプレーンに分離し、複数のプレーンに分離された画像データに対して、前段側の処理の結果を利用して後段側の処理を行なうという多段階の処理により画像データを圧縮する技術が開示されている。 Further, in Patent Document 6, the image data is separated into a plurality of planes using the result of the process on the preceding stage, and the result of the process on the preceding stage is used for the image data separated into the plurality of planes. Thus, there is disclosed a technique for compressing image data by a multi-stage process in which a subsequent process is performed.
さらに、特許文献7には、入力された動画像データを1フレームごとにビットプレーンに分解し、その分解により生成された各プレーン群のデータをフレーム間、フレーム間双方で相関を用いて領域分割を行なうことによって符号化する技術が開示されている。
Further,
ここで、データ圧縮技術を適用した1つのシステムを紹介する。 Here, one system to which the data compression technology is applied is introduced.
図1は、データ圧縮技術が適用されたプリントシステムの一例を示す図、図2は、プリントシステムにおけるデータ処理の流れを示す図である。 FIG. 1 is a diagram illustrating an example of a print system to which a data compression technique is applied, and FIG. 2 is a diagram illustrating a flow of data processing in the print system.
このプリントシステムは、図1に示すように、ホストコントローラ100と、インターフェース機器200と、プリンタ300とで構成されており、ホストコントローラ100とインターフェース機器200との間はSCSI等の汎用インターフェースケーブル150で接続され、さらにインターフェース機器200とプリンタ300との間は専用インターフェースケーブル250で接続されている。
As shown in FIG. 1, the print system includes a
ホストコントローラ100の内部では、図2に示すように、PDF,PS,TIFF等、様々な言語やフォーマットで記述された文字や画像のデータ11が、画像(CT;Continuous Tone)データと文字やライン等(LW;Line Work)のデータとに分けられて、それぞれについてRIP(Raster Image Processing)を行なうことによりビットマップデータ12A,13Aが生成され、さらにそれぞれについてデータ圧縮処理が行なわれて、CTについては非可逆の圧縮データ14、LWについては可逆の圧縮データ15が生成される。これらの圧縮データ14,15は、図1に示す汎用インターフェースケーブル150を経由して、ホストコントローラ100からインターフェース機器200に転送される。インターフェース機器200では、転送されてきた圧縮データ14,15にデータ伸長処理を施して、ホストコントローラ100でデータ圧縮処理を行なう前の状態のビットマップデータ12A,13Aに対応するビットマップデータ12B,13Bを生成する。ここで、CTデータについてはホストコントローラ100でのデータ圧縮の際非可逆圧縮処理が行なわれているため、データ伸長後のCTデータ(ビットマップデータ12B)は完全にはデータ圧縮前のCTデータ(ビットマップデータ12A)には戻らないが、ほぼ同一のビットマップデータが復元される。LWデータについては、ホストコントローラ100でのデータ圧縮の際可逆圧縮処理が行なわれているため、データ伸長後のLWデータ(ビットマップデータ13B)は、データ圧縮前のLWデータ(ビットマップデータ13A)と同一のデータに復元される。
In the
インターフェース機器200では、データ伸長後のCTデータ(ビットマップデータ12B)とLWデータ(ビットマップデータ13B)とが合成され、さらに網点情報等がタグとして付加されてプリンタ300に送られる。プリンタ300では、インターフェース機器200から受け取ったビットマップデータとそれに付加されたタグ情報とに従って画像がプリント出力される。
In the
ホストコントローラ100とインターフェース機器200とが例えば相互に離れている場合、あるいは、インターフェース機器200が複数台のホストコントローラから画像データを受信するシステムの場合など、ホストコントローラ100とインターフェース機器200を別々の装置として構成する必要がある場合には、図2に示すような、ホストコントローラ100でデータ圧縮を行なってインターフェース機器200にデータ転送しインターフェース機器でデータ伸長するように構成することにより、ホストコントローラ100からインターフェース機器200へのデータ転送時間を短縮することができ、プリントの生産性が向上する。
For example, when the
ここで、一般的には、CTデータについては、非可逆ではあるが圧縮率の高いJPEG等の圧縮方式が採用され、LWデータについてはPackBits等の可逆圧縮方式が採用される。
図2に示すデータ圧縮方式の場合、CT画像とLW画像とに分離してそれぞれに別々の圧縮処理方式を適用しているためCT画像とLW画像との双方に適した画像圧縮処理が行なわれる反面、2系統の圧縮処理を行なう必要があるためその処理が複雑であるという問題がある。これを改善するには、CT画像であってもLW画像であっても同一の圧縮処理を行なうことが望ましいが、単純に同一の圧縮処理を適用すると、画質の維持と圧縮率の向上との相反する要求を同時に満たすことができないという問題がある。 In the case of the data compression method shown in FIG. 2, since the CT image and the LW image are separated and different compression processing methods are applied to each, an image compression process suitable for both the CT image and the LW image is performed. On the other hand, since it is necessary to perform two systems of compression processing, there is a problem that the processing is complicated. In order to improve this, it is desirable to perform the same compression processing for both CT images and LW images. However, simply applying the same compression processing can improve image quality and improve the compression rate. There is a problem that conflicting requirements cannot be satisfied at the same time.
本発明は、上記事情に鑑み、画像データに、画質の維持と圧縮率の向上との双方を高度に両立させたデータ圧縮処理を施す画像圧縮装置、およびコンピュータをそのような画像圧縮装置として動作させることのできる画像圧縮プログラムを提供することを目的とする。 SUMMARY OF THE INVENTION In view of the above circumstances, the present invention provides an image compression apparatus that performs a data compression process that highly balances both image quality maintenance and compression ratio improvement on image data, and operates the computer as such an image compression apparatus. An object of the present invention is to provide an image compression program that can be executed.
上記目的を達成する本発明の画像圧縮装置は、画像データにデータ圧縮処理を施す画像圧縮装置において、
画像データに非可逆圧縮処理を施すことにより第1の圧縮データを生成する第1の画像圧縮部と、
第1の画像圧縮部で得られた第1の圧縮データを解凍することにより解凍データを生成する画像解凍部と、
第1の画像圧縮部による非可逆圧縮処理前の画像データと画像解凍部により得られた解凍データとの差分演算により差分データを求める差分演算部と、
差分演算部で得られた差分データに非可逆圧縮処理を施すことにより第2の圧縮データを生成する第2の画像圧縮部とを備えたことを特徴とする。
An image compression apparatus of the present invention that achieves the above object is an image compression apparatus that performs data compression processing on image data.
A first image compression unit that generates first compressed data by performing irreversible compression processing on the image data;
An image decompression unit that generates decompressed data by decompressing the first compressed data obtained by the first image compression unit;
A difference calculation unit that obtains difference data by calculating a difference between the image data before irreversible compression processing by the first image compression unit and the decompressed data obtained by the image decompression unit;
And a second image compression unit that generates second compressed data by performing irreversible compression processing on the difference data obtained by the difference calculation unit.
本発明の画像圧縮装置は、第1の画像圧縮部で一旦非可逆圧縮処理を行ない、再度解凍処理を行なって、非可逆圧縮処理前の画像データと解凍処理により得られた解凍データとの差分演算により差分データを求め、第2の非可逆圧縮部でその差分データに非可逆圧縮処理を行なうようにしたものであり、第1の画像圧縮部で非可逆圧縮処理を行なって得た圧縮データを解凍して得たデータによる画像よりも画質が向上し、かつ、第2の画像圧縮部でも非可逆圧縮処理を行なうことにより高い圧縮率を実現することができる。 The image compression apparatus of the present invention performs a lossy compression process once in the first image compression unit, performs a decompression process again, and a difference between the image data before the lossy compression process and the decompressed data obtained by the decompression process Compressed data obtained by calculating difference data by calculation and performing lossy compression processing on the difference data by the second lossy compression unit, and performing lossy compression processing by the first image compression unit. The image quality is improved as compared with the image obtained by decompressing the image, and a high compression ratio can be realized by performing the irreversible compression process in the second image compression unit.
ここで、本発明の画像圧縮装置において、第1の画像圧縮部は、画像データにJPEG規格に準拠した非可逆圧縮処理を施すものであってもよい。 Here, in the image compression apparatus of the present invention, the first image compression unit may perform irreversible compression processing conforming to the JPEG standard on the image data.
画像データに施す圧縮処理としては一般的にJPEG圧縮が適している。 In general, JPEG compression is suitable as a compression process applied to image data.
また、本発明の画像圧縮装置において、上記第2の画像圧縮部は、上記差分データに量子化処理を含む圧縮処理を施すものである。 In the image compression apparatus of the present invention, the second image compression unit performs a compression process including a quantization process on the difference data.
量子化処理により、上記差分データに対し高い圧縮率を実現できる。 By the quantization process, a high compression rate can be realized for the difference data.
また、上記第2の画像圧縮部は、被圧縮データ中、1つもしくは複数の所定の圧縮対象数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する符号化処理を含む圧縮処理を施すものであってもよく、この場合に、
上記第2の画像圧縮部は、上記符号化処理として、同一の圧縮対象数値の連続数が所定数以下のときはその連続数を1単位ビット数で表現し、その連続数が所定数を越えるときは連続数を2単位ビットで表現するものであることが好ましい。
The second image compression unit outputs one or a plurality of predetermined compression target numerical values as they are in the compressed data, and for the compression target numerical value, the compression target numerical value, the compression target numerical value, A compression process including an encoding process of encoding and outputting a numerical value representing a continuous number of the same numerical value to be compressed may be performed.
In the encoding process, the second image compression unit expresses the continuous number as a unit bit number when the number of consecutive compression target numerical values is equal to or less than a predetermined number, and the continuous number exceeds the predetermined number. In some cases, the continuous number is preferably expressed by 2 unit bits.
また、上記本発明の画像圧縮装置において、画像データに可逆圧縮処理を施すことにより第3の圧縮データを生成する第3の画像圧縮部と、
第3の画像圧縮部で得られた第3の圧縮データの圧縮率が所定の圧縮率以上であるか否かを判定する圧縮率判定部とを備え、
上記第1の画像圧縮部、上記画像解凍部、上記差分演算部、および上記第2の画像圧縮部は、圧縮率判定部による、第3の圧縮データが所定の圧縮率に満たない圧縮率であるとの判定結果を受けて作用するものであることが好ましい。
In the image compression apparatus of the present invention, a third image compression unit that generates third compressed data by performing lossless compression processing on the image data;
A compression rate determination unit that determines whether or not the compression rate of the third compressed data obtained by the third image compression unit is equal to or higher than a predetermined compression rate,
The first image compression unit, the image decompression unit, the difference calculation unit, and the second image compression unit are compression rates at which the third compressed data by the compression rate determination unit is less than a predetermined compression rate. It is preferable to act upon receiving the determination result.
可逆圧縮処理で所望の圧縮率を満足している場合、画質の劣化を生じさせずに所望の圧縮率を達成しているのであるから、これ以上処理する必要はない。したがって、この可逆圧縮処理では所望の圧縮率を満足しない場合にのみ、上記の第1の画像圧縮部、圧縮解凍部、差分演算部、および第2の画像圧縮装置による処理を行なうことが好ましい。 When the reversible compression process satisfies the desired compression ratio, the desired compression ratio is achieved without causing deterioration in image quality, and no further processing is necessary. Therefore, it is preferable to perform the processing by the first image compression unit, the compression / decompression unit, the difference calculation unit, and the second image compression device only when the desired compression rate is not satisfied in the lossless compression process.
ここで、上記第3の画像圧縮部が、被圧縮データ中、1つもしくは複数の所定の圧縮対象数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する符号化処理を含む可逆圧縮処理を施すものであることが好ましく、この場合に、
上記第3の画像圧縮部は、上記符号化処理として、同一の圧縮対象数値の連続数が所定数以下のときはその連続数を1単位ビット数で表現し、その連続数が所定数を越えるときはその連続数を2単位ビット数で表現するものであることが好ましい。
Here, the third image compression unit directly outputs one or a plurality of predetermined compression target numerical values in the data to be compressed, and for the compression target numerical value, the compression target numerical value and the compression target numerical value. It is preferable to perform a reversible compression process including an encoding process that encodes and outputs a numerical value that represents the number of consecutive compression target numerical values,
As the encoding process, the third image compression unit expresses the continuous number as a unit bit number when the number of consecutive compression target numerical values is less than a predetermined number, and the continuous number exceeds the predetermined number. In some cases, it is preferable that the continuous number is expressed by 2 unit bits.
また、上記目的を達成する本発明の画像圧縮プログラムは、プログラムを実行する情報処理装置内で実行され、その情報処理装置を画像データにデータ圧縮処理を施す画像圧縮装置として動作させる画像圧縮プログラムであって、
上記情報処理装置を、
画像データに非可逆圧縮処理を施すことにより第1の圧縮データを生成する第1の画像圧縮部と、
第1の画像圧縮部で得られた第1の圧縮データを解凍することにより解凍データを生成する画像解凍部と、
第1の画像圧縮部による非可逆圧縮処理前の画像データと画像解凍部により得られた解凍データとの差分演算により差分データを求める差分演算部と、
差分演算部で得られた差分データに非可逆圧縮処理を施すことにより第2の圧縮データを生成する第2の画像圧縮部とを備えた画像圧縮装置として動作させることを特徴とする。
The image compression program of the present invention that achieves the above object is an image compression program that is executed in an information processing apparatus that executes the program and that operates the information processing apparatus as an image compression apparatus that performs data compression processing on image data. There,
The information processing apparatus is
A first image compression unit that generates first compressed data by performing irreversible compression processing on the image data;
An image decompression unit that generates decompressed data by decompressing the first compressed data obtained by the first image compression unit;
A difference calculation unit that obtains difference data by calculating a difference between the image data before irreversible compression processing by the first image compression unit and the decompressed data obtained by the image decompression unit;
The image processing apparatus is operated as an image compression apparatus including a second image compression unit that generates second compressed data by performing irreversible compression processing on the difference data obtained by the difference calculation unit.
ここで、本発明の画像圧縮装置においても、上記第1の画像圧縮部は、画像データにJPEG規格に準拠した非可逆圧縮処理を施すものであることが好ましく、
上記第2の画像圧縮部は、上記差分データに量子化処理を含む圧縮処理を施すものであることが好ましい。
Here, also in the image compression apparatus of the present invention, it is preferable that the first image compression unit performs irreversible compression processing conforming to the JPEG standard on image data,
The second image compression unit preferably performs a compression process including a quantization process on the difference data.
また、本発明の画像圧縮プログラムにおいて、上記第2の画像圧縮部は、被圧縮データ中、1つもしくは複数の所定の圧縮対象数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する符号化処理を含む圧縮処理を施すものであることが好ましく、この場合に、
上記第2の画像圧縮部は、上記符号化処理として、同一の圧縮対象数値の連続数が所定数以下のときはその連続数を1単位ビット数で表現し、その連続数が所定数を越えるときはその連続数を2単位ビットで表現するものであることが好ましい。
In the image compression program of the present invention, the second image compression unit outputs one or a plurality of predetermined compression target numerical values as they are in the data to be compressed, and the compression target numerical values for the compression target. It is preferable to perform compression processing including encoding processing that encodes and outputs a numerical value and a numerical value that represents the number of consecutive compression target numerical values that are the same as the compression target numerical value.
In the encoding process, the second image compression unit expresses the continuous number as a unit bit number when the number of consecutive compression target numerical values is equal to or less than a predetermined number, and the continuous number exceeds the predetermined number. In some cases, the continuous number is preferably expressed by 2 unit bits.
さらに、本発明の画像圧縮プログラムは、上記情報処理装置を、
画像データに可逆圧縮処理を施すことにより第3の圧縮データを生成する第3の画像圧縮部と、
第3の画像圧縮部で得られた第3の圧縮データの圧縮率が所定の圧縮率以上であるか否かを判定する圧縮率判定部とをさらに備え、
上記第1の画像圧縮部、上記画像解凍部、上記差分演算部、および上記第2の画像圧縮部は、圧縮率判定部による、第3の圧縮データが所定の圧縮率に満たない圧縮率であるとの判定結果を受けて作用するものである画像圧縮装置として動作させることが好ましい。
Furthermore, the image compression program of the present invention provides the information processing apparatus,
A third image compression unit that generates third compressed data by performing reversible compression processing on the image data;
A compression rate determination unit that determines whether or not the compression rate of the third compressed data obtained by the third image compression unit is equal to or higher than a predetermined compression rate;
The first image compression unit, the image decompression unit, the difference calculation unit, and the second image compression unit are compression rates at which the third compressed data by the compression rate determination unit is less than a predetermined compression rate. It is preferable to operate as an image compression apparatus that acts upon receiving the determination result.
この場合、上記第3の画像圧縮部が、被圧縮データ中、1つもしくは複数の所定の圧縮対象数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する符号化処理を含む可逆圧縮処理を施すものであることが好ましく、この場合にさらに、
上記第3の画像圧縮部は、上記符号化処理として、同一の圧縮対象数値の連続数が所定数以下のときはその連続数を1単位ビット数で表現し、その連続数が所定数を越えるときはその連続数を2単位ビット数で表現するものであることが好ましい。
In this case, the third image compression unit directly outputs one or a plurality of predetermined compression target numerical values in the compressed data, and for the compression target numerical value, the compression target numerical value and the compression target numerical value It is preferable to perform a reversible compression process including an encoding process that encodes and outputs a numerical value that represents the number of consecutive compression target numerical values, and in this case,
As the encoding process, the third image compression unit expresses the continuous number as a unit bit number when the number of consecutive compression target numerical values is less than a predetermined number, and the continuous number exceeds the predetermined number. In some cases, it is preferable that the continuous number is expressed by 2 unit bits.
以上、説明したように、本発明によれば、画質の維持と高い圧縮率を高度に両立させることができる。 As described above, according to the present invention, it is possible to achieve both high image quality maintenance and high compression ratio.
以下において説明する実施形態は、図1に示す全体システムの中のホストコントローラに組み込まれる画像圧縮装置であり、さらに具体的には、図2に示すホストコントローラ内のCTのビットマップデータ12AとLWのビットマップデータ13Aとの双方を区別せずにデータ圧縮を行なう処理に関するものである。したがって、ここでは、図1,図2を参照して説明したCTデータおよびLWデータについてのデータ圧縮処理が以下に説明する本発明の実施形態としてのデータ圧縮処理に置き換わり、インターフェース機器内でのデータ伸長(解凍)処理もその本発明の実施形態としてのデータ圧縮処理に対応したデータ伸長(解凍)処理に置き換わるものと理解し、図1に示す全体システムおよび図2に示す処理の流れについて重複した図示および重複説明は省略する。
The embodiment described below is an image compression apparatus incorporated in a host controller in the entire system shown in FIG. 1, and more specifically,
図3は、本発明の画像圧縮装置の一実施形態を示すブロック構成図である。 FIG. 3 is a block diagram showing an embodiment of the image compression apparatus of the present invention.
この図3に示す画像圧縮装置500は、第1の画像圧縮部510、画像解凍部520、差分演算部530、第2の画像圧縮部540、第3の画像圧縮部550、および圧縮率判定部560を備えている。各部510〜560の詳細は後述するが、この画像圧縮装置500内での画像データの流れは以下のとおりである。
The
入力画像ファイル(本実施形態では、図2に示すように、ビットマップに展開されたCTデータ12AあるいはLWデータ13Aが格納されているファイル)は、図3に示す画像圧縮装置500の、第1の画像圧縮部510、差分演算部530、および第3の画像圧縮部550に入力される。
An input image file (in this embodiment, a file storing
第3の画像圧縮部550では、今回入力されてきた入力画像ファイル中の画像データに可逆圧縮処理が施される。
In the third
本実施形態では、この第3の画像圧縮部550において、被圧縮データ中、1つもしくは複数の所定の圧縮対象数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する符号化処理を含む可逆圧縮処理が施される。この符号化処理では同一の圧縮対象数値の連続数が所定数以下のときはその連続数を1単位ビット数で表現し、その連続数が所定数を越えるときはその連続数を2単位ビット数で表現するという処理が行なわれる。ここでは第1の画像圧縮部510で行なわれるJPEG圧縮処理(後述する)と合致させるために、入力画像の8ライン分を1単位として圧縮処理が施される。この可逆圧縮処理が施された後の圧縮データ(本発明にいう第3の圧縮データ)は、圧縮率判定部560に入力される。この圧縮率判定部560にはあらかじめ要求圧縮率が通知されており、圧縮率判定部560では、第3の画像圧縮部550から入力されてきた圧縮データがその要求圧縮率を満たすレベルにまで圧縮されたデータであるか否かが判定される。この判定も入力画像8ライン分を一単位として行なわれる。8ライン分の圧縮データがその要求圧縮率を満たすデータがあったときは、この可逆圧縮処理の段階で圧縮率が満足され、これ以上圧縮する必要がなく、そのまま出力される。この圧縮データの出力にあたっては、その圧縮データの入力画像上の位置や、後の伸長処理に必要な情報等が記述されたヘッダが付されて出力される。
In the present embodiment, the third
圧縮率判定部560において、第3の画像圧縮部550から今回送られてきた圧縮データが要求圧縮率を満足しないデータであると判定されると、その判定結果が第1の画像圧縮部510に通知され、その第1の画像圧縮部510では、元々入力されてきた入力画像ファイル中の画像データに非可逆圧縮処理が施される。本実施形態では、この第1の画像圧縮部510では、JPEG圧縮処理が採用されている。
When the compression
この第1の画像圧縮部510でJPEG圧縮処理により得られたJPEG圧縮データ(本発明にいう第1の圧縮データの一例に相当する)は、画像解凍部520に入力され、この画像解凍部520では、その入力されてきたJPEG圧縮データに解凍処理が施されて、元々の入力画像ファイル中の画像データに近似した解凍データが生成される。この解凍データは、元々の入力画像ファイル中の画像データに近似したデータではあるが、第1の画像圧縮部510では非可逆圧縮処理(JPEG圧縮処理は非可逆圧縮処理の一種)が施されているため、この解凍データは、元々の入力画像ファイル中の画像データと同一ではない。
JPEG compressed data (corresponding to an example of the first compressed data referred to in the present invention) obtained by JPEG compression processing in the first
この画像解凍部520での解凍処理により得られた解凍データは元々の入力画像ファイル中の画像データとともに差分演算部530に入力され、差分演算部530では入力されてきた画像データと解凍データとの間で画像の一画素ごとに差分演算が行なわれ差分データが求められる。この差分データは第2の画像圧縮部540に入力される。
The decompressed data obtained by the decompressing process in the
第2の画像圧縮部540では、その入力されてきた差分データに非可逆圧縮処理が施される。本実施形態では、この第2の画像圧縮部540における圧縮処理として、量子化処理と、被圧縮データ中、1つもしくは複数の所定の圧縮対象数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する符号化処理とを含む圧縮処理が採用されている。ここでの符号化処理では、同一の圧縮対象数値の連続数が所定数以下のときはその連続数が1単位ビット数で表現され、その連続数が所定数を越えるときはその連続数が2単位ビットで表現される。ここで、その符号化処理は可逆圧縮処理であるが量子化処理が非可逆圧縮処理であるため、第2の画像圧縮部540で行なわれる圧縮処理は全体として非可逆圧縮処理となる。
In the second
このようにして、第2の画像圧縮部で生成された圧縮データは、第1の画像圧縮部510で得られた圧縮データのヘッダに、その圧縮データを伸長するために必要なデータとともに記録される。
In this way, the compressed data generated by the second image compression unit is recorded in the header of the compressed data obtained by the first
図3に示す画像圧縮装置500において以上のようにして得られた圧縮データは、図1に示すSCSI等の汎用インターフェース150を経由してインターフェース機器200に転送される。インターフェース機器200では、その受け取った圧縮データにデータ伸長処理が施され、元々の入力画像ファイル中の画像データと比べ高度に近似した画像データに復元される。
The compressed data obtained as described above in the
図4は、図1に示すホストコントローラのハードウェア構成図である。 FIG. 4 is a hardware configuration diagram of the host controller shown in FIG.
図1に示すホストコントローラ100は、図4に示す構成のコンピュータシステムで構成されている。
The
この図4に示す、コンピュータシステムで構成されたホストコントローラ100には、CPU111、RAM112、通信インターフェース113、ハードディスクコントローラ114、FDドライブ115、CDROMドライブ116、マウスコントローラ117、キーボードコントローラ118、ディスプレイコントローラ119、および通信用ボード120が備えられており、これらはバス110で相互に接続されている。
4 includes a
ハードディスクコントローラ114は、このホストコントローラ100に内蔵されているハードディスク104のアクセスを制御するものであり、FDドライブ115、CDROMドライブ116は、このホストコントローラ100に取出し自在に装填されるフレキシブルディスク(FD)130、CDROM140のアクセスを制御するものである。また、マウスコントローラ117、キーボードコントローラ118は、このホストコントローラ100に備えられたマウス107、キーボード108の操作を検出してCPU111に伝達する役割を担っている。さらに、ディスプレイコントローラ119は、このCPU111の指示に基づいて、ホストコントローラ100に備えられた画像ディスプレイ109の表示画面上に画像を表示する役割を担っている。
The
通信用ボード120は、SCSI等の汎用インターフェースプロトコルに準拠した通信を担っており、圧縮後の画像データをインターフェースケーブル150を介してインターフェース機器200(図1参照)に転送する役割を担っている。
The
さらに、通信用インターフェース113は、インターネット等の汎用の通信を担っており、このホストコントローラ100は、この通信用インターフェース113を経由して画像データを取り込むこともできる。
Further, the
RAM112には、ハードディスク104に格納されているプログラムが読み出されてCPU111での実行のために展開され、CPU111では、そのRAM112に展開されたプログラムが読み出されて実行される。
A program stored in the
図5は、本発明の画像圧縮処理プログラムの模式構成図である。 FIG. 5 is a schematic configuration diagram of an image compression processing program of the present invention.
ここでは、この画像圧縮プログラム600は、CDROM140に記憶されている。
Here, the
この画像圧縮プログラム600は、第1の画像圧縮部610、画像解凍部620、差分演算部630、第2の画像圧縮部640、第3の画像圧縮部650、および圧縮率判定部660から構成されている。このCDROM140には、ここに示す画像圧縮プログラム600のほか、図1に示すホストコントローラ100における一連の処理を実行するための各種プログラムが記憶されているが、それらについては従来と同様であるため図示および説明は省略する。
The
この図5に示すCDROM140が、図4に示すホストコントローラ100に装填されCDROMドライブ116でアクセスされてそのCDROM140に記憶されているプログラムがこのホストコントローラ100にアップロードされ、ハードディスク104に記憶される。このハードディスク104に記憶されたプログラムがそのハードディスク104から読み出されてRAM112に展開されCPU111で実行されると、このホストコントローラ100は、図3に示す画像圧縮装置500としての処理を含む、ホストコントローラとしての各種処理を実行する装置として動作する。
The
ここで、図5に示す画像圧縮プログラム600は、ホストコントローラ100にインストールされてCPU111で実行されることにより、そのホストコントローラ100内に図3に示す画像圧縮装置500を実現するものであり、第1の画像圧縮部610、画像解凍部620、差分演算部630、第2の画像圧縮部640、第3の画像圧縮部650、および圧縮率判定部660は、CPU111で実行されることにより、そのホストコントローラ100を、図3に示す画像圧縮装置500を構成する、それぞれ、第1の画像圧縮部510、画像解凍部520、差分演算部530、第2の画像圧縮部540、第3の画像圧縮部550、および圧縮率判定部560として動作させるプログラム部品である。
Here, the
図5の画像圧縮プログラム600を構成する各部610〜660の、CPU111で実行されたときの作用は、それぞれ、図3の画像圧縮装置500を構成する各部510〜560の作用そのものである。したがって、図3の画像圧縮装置500の各部510〜560に関する、これまでの説明、および、以下に説明する詳細説明をもって、図5の画像圧縮プログラム600を構成する各部610〜660の説明を兼ねるものとする。
The operations of the
図6は、図3に示す画像圧縮装置500の第1の画像圧縮部510におけるJPEG圧縮処理を示す説明図である。
FIG. 6 is an explanatory diagram showing JPEG compression processing in the first
ここでは、8×8画素の画素ブロックごとに以下のデータ圧縮処理が行なわれる。 Here, the following data compression processing is performed for each pixel block of 8 × 8 pixels.
8×8画素の画素ブロックのうちの1行分の画素列A(水平方向の1×8画素)が1次元DCT処理部511に入力される。1次元DCT処理部511は、入力された1行分の画素列Aについての1次元DCT(離散コサイン変換)処理を行なって、1行分の画素列Aを構成する各画素ごとの1次元DCT係数A’を求め、これら1次元DCT係数A’を、64ワード構成のメモリ512の1行目に書き込む。以下、同様にして、8×8画素の画素ブロックの残りの7行分の画素列それぞれについて1次元DCT処理を行なって各行分ごとに1次元DCT係数を求めて、それら1次元DCT係数をメモリ512の各行に書き込む。
A pixel column A (1 × 8 pixels in the horizontal direction) for one row in the 8 × 8 pixel block is input to the one-dimensional
次いで、メモリ512に書き込まれた1列分の1次元DCT係数B(垂直方向の8×1の1次元DCT係数列)が読み出されて1次元DCT処理部513に入力される。1次元DCT処理部513は、その1列分の1次元DCT係数Bについての1次元DCT処理を行なって2次元DCT係数Cを求めて、64ワード構成のメモリ514の1列目に書き込む。以下、同様にして、メモリ512に書き込まれた2〜8列分の1次元DCT係数についての1次元DCT処理を行方向に順次に行なって2次元DCT係数をメモリ514に書き込む。
Next, the one-dimensional DCT coefficient B (vertical 8 × 1 one-dimensional DCT coefficient string) written in the
さらに、メモリ514に書き込まれた2次元DCT係数に対して、いわゆるジグザク読出しが行なわれる。ここで、メモリ514に書き込まれた2次元DCT係数のマトリックスは、通常の画像ではその画像の低空間周波数成分に対応する左上側に‘0’以外の値を持ち、高空間周波数成分に対応する右下側に‘0’が現れる確率が高い。そこで、低周波側から高周波側に向かって、即ち、左上端から右下端に向かって順次斜めにスキャンすることによりジグザグ読出しが行なわれる。具体的には、メモリ514のアドレスが、図3に示す番号0,1,2,3,…の順にスキャニングされて、そのスキャニングされた順に2次元DCT係数が読み出される。このようにして読み出された64ワードのデータストリームDを構成する2次元DCT係数が量子化部515に入力される。
Further, so-called zigzag reading is performed on the two-dimensional DCT coefficient written in the
量子化部515は、入力された2次元DCT係数を、予め用意された量子化テーブルTの、対応する係数で割り算して、ゼロランレングスカウンタ516に向けて出力する。ゼロランレングスカウンタ516は、量子化部515からの、割り算された2次元DCT係数の値が‘0’となっている無効係数の連続する長さをカウントする。このカウント値はハフマンエンコーダ517に入力される。
The
ハフマンエンコーダ517は、ハフマン符号化方式によるエントロピィ符号化処理を行なう。このようにして、JPEG画像圧縮が行なわれる。 The Huffman encoder 517 performs entropy encoding processing by the Huffman encoding method. In this way, JPEG image compression is performed.
このようにして得られたJPEG圧縮データは図3に示す画像解凍部520に入力されて、図6を参照して説明したJPEG圧縮処理とは逆の演算を行なうことによりJPEG圧縮データを解凍し解凍データを生成する。この解凍データは、差分演算部530に入力され、元々の入力画像ファイル中の画像データとこの解凍データとの間で対応する画素ごとに差分演算が行なわれて差分データが求められ、その差分データが第2の画像圧縮部540に入力される。
The JPEG compressed data obtained in this way is input to the
図7は、図3に示す画像圧縮装置500の第2の画像圧縮部540の構成を示すブロック図である。
FIG. 7 is a block diagram showing the configuration of the second
この第2の画像圧縮部540は、差分符号化部541、量子化処理部542、ランレングス符号化部543、およびハフマン符号化部544から構成される。
The second
図8は、図7の第2の画像圧縮部540に入力される入力画像ファイル中の差分データのデータ構造および差分符号化の概念を示す図である。
FIG. 8 is a diagram illustrating the data structure of difference data in the input image file input to the second
図8に示すように、図7に示す第2の画像圧縮部540に入力される差分データは、所定の主走査方向に画素がM個並んでいる。その主走査方向とは直角な副走査方向に教えていったときのN番目のラインについて、主走査方向に並ぶ各画素の画素値は、その並び順に、
Dn,1,Dn,2,…,Dn,m-2,Dn,m-1,Dn,m
と表現される。
As shown in FIG. 8, the difference data input to the second
Dn , 1 , Dn , 2 ,..., Dn , m-2 , Dn , m-1 , Dn , m
It is expressed.
これと同様に、副走査方向の(N+1)番目のラインについて、主走査方向に並ぶ各画素の画素値は、その並びの順に、
Dn+1,1,Dn+1,2,…,Dn+1,m-2,Dn+1,m-1,Dn+1,m
と表現される。
Similarly, for the (N + 1) th line in the sub-scanning direction, the pixel values of the pixels arranged in the main scanning direction are as follows:
Dn + 1,1 , Dn + 1,2 ,..., Dn + 1, m-2 , Dn + 1, m-1 , Dn + 1, m
It is expressed.
ここで、図7に示す第2の画像圧縮部540を構成する差分符号化部541では、上記のような画像データを入力し、副走査方向に隣接する画素どうしの差分が求められる。すなわち、N番目のラインと(N+1)番目のラインとの差分であって、主走査方向に並ぶj番目の画素の差分をSn,jとすると、この差分Sn,jは、
Sn,j=Dn+1,j−Dn,j (j=1〜m)
と表現される。
Here, the difference encoding unit 541 constituting the second
S n, j = D n + 1, j −D n, j (j = 1 to m )
It is expressed.
この差分演算を具体的に説明する。 This difference calculation will be specifically described.
図9は、図7の第2の画像圧縮部540を構成する差分符号化部541における差分符号化処理を例示して示す図である。
FIG. 9 is a diagram illustrating a differential encoding process in the differential encoding unit 541 constituting the second
ここでは、図8に示す副走査方向に並ぶある縦一列の画素値が、図9の「画像データ」
の欄に示すように、
「12 01 02 FF 64 … 40 40 3F …」
であったとする。尚、ここでは、各画素値は、16進2桁(1バイト=8ビット)で表現されている。ここでは「ライン」は主走査方向に並ぶ画素を指している。
Here, the pixel values in one vertical line arranged in the sub-scanning direction shown in FIG. 8 are “image data” in FIG.
As shown in the column
"12 01 02
Suppose that Here, each pixel value is represented by two hexadecimal digits (1 byte = 8 bits). Here, “line” indicates pixels arranged in the main scanning direction.
先ず、1ライン目の画素値「12」については、そのまま出力する。 First, the pixel value “12” on the first line is output as it is.
次に、2ライン目の画素値「01」から1ライン目の画素値「12」を引き算し、その結果を出力する。ここで、「01」から「12」を引き算した結果は負の数となり、9ビットで「1EF」と表わされるが、MSBの1ビットである「1」は省略し、下位8ビットである「EF」のみを出力する。 Next, the pixel value “12” of the first line is subtracted from the pixel value “01” of the second line, and the result is output. Here, the result of subtracting “12” from “01” is a negative number and is expressed as “1EF” by 9 bits, but “1” that is 1 bit of the MSB is omitted and “8” is the lower 8 bits. Only “EF” is output.
次に、3ライン目の画素値「02」から2ライン目の画素値「01」を引き算し、その結果の値「01」を出力する。 Next, the pixel value “01” of the second line is subtracted from the pixel value “02” of the third line, and the resultant value “01” is output.
次に、4ライン目の画素値「FF」から3ライン目の画素値「02」を引き算し、その結果の値「FD」を出力する。 Next, the pixel value “02” of the third line is subtracted from the pixel value “FF” of the fourth line, and the resultant value “FD” is output.
次に、5ライン目の画素値「64」から4ライン目の画素値「FF」を引き算し、その結果の値から、MSBの1ビットである「1」を省略し、下位8ビットである「65」を出力する。 Next, the pixel value “FF” of the fourth line is subtracted from the pixel value “64” of the fifth line, and “1” that is 1 bit of the MSB is omitted from the resulting value, and the lower 8 bits. “65” is output.
以下、これと同じ演算を繰り返すことにより、図9の「差分エンコード(下位8ビット)」の欄に表わされている。 Hereinafter, by repeating the same operation, it is represented in the column of “differential encoding (lower 8 bits)” in FIG.
「(12) EF 01 FD 65 … C0 00 FF …」
が出力される。
"(12)
Is output.
図1に示すインターフェース機器200では、この差分符号化されたデータを復号化するにあたり、図9の右側に示す演算が行なわれる。
In decoding the differentially encoded data, the
先ず1ライン目の画素値は「12」のそのままである。 First, the pixel value of the first line remains “12”.
2ライン目の画素値は、差分値「EF」に1ライン目の画素値「12」を足し算した結果のうちの下位8ビットで表わされる「01」である。 The pixel value of the second line is “01” represented by the lower 8 bits of the result of adding the pixel value “12” of the first line to the difference value “EF”.
3ライン目の画素値は、差分値「01」に、上記で求めた2ライン目の画素値「01」を足し算することにより求められる「02」である。 The pixel value of the third line is “02” obtained by adding the pixel value “01” of the second line obtained above to the difference value “01”.
4ライン目の画素値は、差分値「FD」に、上記で求めた3ライン目の画素値「02」を足し算することにより求められる「FF」である。 The pixel value of the fourth line is “FF” obtained by adding the pixel value “02” of the third line obtained above to the difference value “FD”.
5ライン目の画素値は差分値「65」に、上記で求めた4ライン目の画素値「FF」を足し算した結果のうちの下位8ビットで表わされる「64」である。 The pixel value of the fifth line is “64” represented by the lower 8 bits of the result obtained by adding the pixel value “FF” of the fourth line obtained above to the difference value “65”.
以下これと同様の演算を繰り返すことにより、差分符号化を行なう前のデータと同一のデータに復号化される。 Thereafter, the same calculation is repeated, whereby the same data as the data before differential encoding is decoded.
図10は、差分符号化による作用説明図である。 FIG. 10 is a diagram for explaining the operation by differential encoding.
図10(A)は、画像の概念を表わしており、ここでは、図の縦方向を主走査方向、横方向を副走査方向とし、副走査方向(横方向)に引いた矢印A上の各画素の画素値に着目している。 FIG. 10A shows the concept of an image. Here, the vertical direction in the figure is the main scanning direction, the horizontal direction is the sub-scanning direction, and each of the arrows A drawn in the sub-scanning direction (horizontal direction) is shown in FIG. Focus is on the pixel value of the pixel.
この画像上には、主走査方向に延びる画素値「63」の濃度を持つ直線L1と、画素値「FF」の濃度を持つ直線L2が描かれており、その右側には、CT画像があて嵌められるCT画像領域が存在する。CT画像があて嵌められる領域は、画素値「00」で表わされている。 On this image, a straight line L1 having a density of pixel value “63” extending in the main scanning direction and a straight line L2 having a density of pixel value “FF” are drawn. There is a CT image area to be fitted. A region to which a CT image is fitted is represented by a pixel value “00”.
図10(A)の矢印A上に並ぶ画素の画素値は、図10(B)示すように、左側から順に、最初は「01」が続き直線L1上では「63」が続き、再度「01」が続き、直線L2上では「FF」となり、再度「01」に戻り、CT画像があて嵌められる領域では「00」が続き、CT画像領域が終わるともう一度「01」が続く。ここで、画素値「01」は、何も描かれていない領域(用紙の地の領域)であることを表わしている。 As shown in FIG. 10B, the pixel values of the pixels arranged on the arrow A in FIG. 10A are, in order from the left, first “01”, followed by “63” on the straight line L1, and again “01 ”Continues to“ FF ”on the straight line L2, returns to“ 01 ”again,“ 00 ”continues in the area where the CT image is fitted, and“ 01 ”continues again when the CT image area ends. Here, the pixel value “01” represents an area in which nothing is drawn (paper area).
図10(B)に示す元データに対し、差分演算を行なうと図10(C)に示す差分後データとなり、「00」の出現確率が大きく増加する。図9を参照して説明した、図7の差分符号化部541では、MSBの1ビット(符号ビット)は省略するため、その差分符号化部541から出力されるデータは、図10(D)のようになる。この場合であっても、図9を参照して説明したように、最初の画素値(図8の場合の1ライン目の画素値「12」)をそのまま伝えることによって、元データを順次復元することができる。 When the difference calculation is performed on the original data shown in FIG. 10B, the difference data shown in FIG. 10C is obtained, and the appearance probability of “00” is greatly increased. In the differential encoding unit 541 shown in FIG. 7 described with reference to FIG. 9, one bit (code bit) of the MSB is omitted, and the data output from the differential encoding unit 541 is shown in FIG. become that way. Even in this case, as described with reference to FIG. 9, the original data is sequentially restored by transmitting the first pixel value (the pixel value “12” in the first line in the case of FIG. 8) as it is. be able to.
図7に示す第2の画像圧縮部540の量子化処理部542では、差分符号化部541で以上のようにして求めた差分後データについて量子化処理が行なわれる。この量子化処理では、差分後データを構成する各画素の値が量子化係数で割り算されて商が求められ余りは捨て去られる。すなわち、例えばこの量子化係数として8を使用するとき、−7〜+7は0、+8〜+15は1、−7〜−15は−1、……となる。このような量子化処理を行なうと、同一の値の出現確率がさらに増え、その後の画像圧縮処理の圧縮率をさらに向上させることができる。
In the
量子化処理部542で量子化処理の行なわれた後の量子化後データは次に図7に示す第2の画像圧縮部540を構成するランレングス符号化部543に入力される。
The quantized data that has been quantized by the
ランレングス符号化部543では、量子化処理部542から受け取ったデータを構成する複数の数値のうちの特定の数値についてのみ符号化処理が行なわれる。このため、このランレングス符号化部543では、受け取ったデータの中から、符号化処理を行なう数値(ここでは、この数値を「圧縮対象数値」と称する)と、その圧縮対象数値の連続数が検出される。
The run-
本実施形態では、一例として、「01」、「FF」および「00」の3つの数値を圧縮対象数値としている。 In this embodiment, as an example, three numerical values “01”, “FF”, and “00” are set as compression target numerical values.
図11は、図7に示すランレングス符号化部543での符号化の説明図である。図11の上のラインは、量子化処理部542から受け取ったデータ、下のラインは、ランレングス符号化部543での符号化処理を行なった後のデータである。
FIG. 11 is an explanatory diagram of encoding in the run-
ここでは、図11の上のラインに示すように、量子化処理部542からは、
「06 02 02 02 01 01 01 01 04 05 00 … 」
なるデータが入力されたものとする。このとき、図7のランレングス符号化部543では、先頭の「06」は圧縮対象数値ではなく、次に続く「02 02 02」も圧縮対象数値ではなく、次に、圧縮対象数値である「01」が4つ連続していること、次に、圧縮対象数値ではない「04」、「05」を間に置いて、圧縮対象数値である「00」が32767個連続していることが検出される。
Here, as shown in the upper line of FIG. 11, from the
"06 02 02 02 01 01 01 01 01 04 05 00 ..."
It is assumed that the following data is input. At this time, in the run-
図12は、ランレングス符号化部における、圧縮対象数値を対象にした符号化のアルゴリズムを示す図である。 FIG. 12 is a diagram illustrating an encoding algorithm for a numerical value to be compressed in the run-length encoding unit.
この図12中、Zは同一の圧縮対象数値の連続数、例えば図11の上のラインの「01」についてはZ=4、「00」についてはZ=32767である。 In FIG. 12, Z is a continuous number of the same numerical values to be compressed, for example, Z = 4 for “01” in the upper line of FIG. 11, and Z = 32767 for “00”.
また、図12中、「YY」は、16進2桁で表わされた圧縮対象数値自体を表わしている。その「YY」に続く、「0」又は「1」は1ビットで表現された「0」又は「1」であり、さらにそれに続く「画像圧縮装置…」は、1つの「X」が1ビットを表わしており、この「画像圧縮装置…」でZの値を表現している。 In FIG. 12, “YY” represents the numerical value to be compressed itself represented by two hexadecimal digits. “0” or “1” following “YY” is “0” or “1” expressed by 1 bit, and “image compression apparatus ...” following the “YY” is one bit of “X”. This “image compression apparatus...” Expresses the value of Z.
すなわち、図12は、圧縮対象数値「YY」がZ<128連続するときは、1バイト目で圧縮対象数値「YY」を表現し、それに続く1バイトで、先頭ビットが「0」、それに続く7ビットでZの値を表現すること、また、圧縮対象数値「YY」がZ≧128連続するときは、1バイト目で圧縮対象数値「YY」を表現し、それに続く2バイト(16ビット)のうちの先頭の1ビットを「1」とすることで2バイトに跨って表現されていることを表現し、それに続く15ビットで、Zの値を表現することを意味している。 That is, FIG. 12 shows that when the compression target numerical value “YY” continues for Z <128, the compression target numerical value “YY” is expressed by the first byte, the first bit is “0”, and the subsequent byte is the subsequent one. Express the value of Z with 7 bits, and when the compression target numerical value “YY” continues Z ≧ 128, express the compression target numerical value “YY” with the first byte, followed by 2 bytes (16 bits) The first 1 bit of “1” is expressed as “1” to express that it is expressed over 2 bytes, and the subsequent 15 bits indicate that the value of Z is expressed.
この図12に示す規則に従って図11に示す符号化の例について説明する。 An example of the encoding shown in FIG. 11 will be described in accordance with the rules shown in FIG.
図7の量子化処理部542から入力されてきたデータ(上のライン)を構成する先頭の数値「06」は圧縮対象数値ではないため、その「06」のまま出力される。また、それに続く「02 02 02」も、「02」は圧縮対象数値ではなく、これら3つの「02」もそのまま出力される。次に、圧縮対象数値である「01」が4個連続するため、「01 04」に符号化される。次の「04」及び「05」は圧縮対象数値ではないため、そのまま「04 05」が出力される。
Since the first numerical value “06” constituting the data (upper line) input from the
次に「00」が32767個連続しているため、「00」を置き、次の1バイトのうちの先頭の1ビットを「1」とし、次いで15ビットで32767−128を表現することにより、「00 FF 7F」の3バイトで「00」が32767個連続していることを表現する。すなわち、連続数128は、最初のビット「1」を除き、「00 00」と表現される。
Next, since there are 32767 consecutive “00s”, “00” is placed, the first 1 bit of the next 1 byte is set to “1”, and then 32767-128 is expressed by 15 bits. It represents that 32767 “00” s are consecutive in 3 bytes of “00
図13は、図7のランレングス符号化部543における、連続数に応じた符号化処理の例を示す図である。
・「00」が127個連続するときは、2バイトを用いて「00 7F」に符号化され、
・「00」が32767個連続するときは、3バイトを用いて「00 FF 7E」に符号化され、
・「00」が32895個連続するときは、3バイトを用いて「00 FF FF」に符号化され、
・「00」が128個連続するときは、3バイトを用いて「00 80 00」に符号化され、
・「FF」が4096個連続するときは、3バイトを用いて「FF 8F 80」に符号化される。
FIG. 13 is a diagram illustrating an example of an encoding process according to the number of consecutive steps in the run-
When “00” is 127 consecutive, it is encoded into “00 7F” using 2 bytes,
When “00” is 32767 consecutive, it is encoded into “00
When “00” is 32895 consecutive, it is encoded into “00 FF FF” using 3 bytes,
When “00” is 128 consecutive, it is encoded to “00 80 00” using 3 bytes,
-When 4096 "FFs" are contiguous, they are encoded into "
図7に示すランレングス符号化部543では、上記のような符号化処理が行なわれる。
The run-
本実施形態によるランレングス符号化部543によれば、最大圧縮率は、3/32895=1/10,965にまで向上する。
According to the run-
図7のランレングス符号化部543で上記の符号化処理の行なわれた後のデータは、次に図7のハフマン符号化部544に入力される。
The data after the above-described encoding process is performed by the run-
ハフマン符号化部544では、先ず1枚の画像全体を構成する画素について画素値の出現頻度が求められる。
In the
ここでは、「A1」の出現頻度が最も強く、以下順に、「A2」、「A3」、「A4」、…の順であるとする。尚、これら「A1」、「A2」等は数値を直接表わしている訳ではなく、数値を表わす符号である。すなわち、「A1」は例えば数値「00」、「A2」は数値「FF」等である。また、ここでは、簡単のため、図4のランレングス符号化部543から送られてくるデータは全ての画素が「A1」〜「A16」の16個の数値のうちのいずれかの数値で表わされるものとする。
Here, the appearance frequency of “A1” is the strongest, and it is assumed that “A2”, “A3”, “A4”,. These “A1”, “A2” and the like do not directly represent numerical values, but are symbols representing numerical values. That is, “A1” is, for example, a numerical value “00”, “A2” is a numerical value “FF”, and the like. Here, for simplicity, the data sent from the run-
図14は、図7に示すハフマン符号化部544における符号化処理を例示した図である。
FIG. 14 is a diagram illustrating an encoding process in the
ここでは、出現頻度の最も高い「A1」は、2ビットで表わされた「00」に置き換えられ、次の「A2」は、やはり2ビットで表わされた「01」に置き換えられ、次の「A3」、さらに次の「A4」は、3ビットで表わされる、それぞれ、「100」、「101」に置き換えられ、次の「A5」〜「A8」は、5ビットで表わされる各数値に置き換えられ、以下同様に、出現頻度が低い数値ほど多くのビット数で表わされた数値に置き換えられる。 Here, “A1” having the highest appearance frequency is replaced with “00” represented by 2 bits, and the next “A2” is replaced with “01” also represented by 2 bits. "A3" and further "A4" are replaced by "100" and "101", respectively, and the following "A5" to "A8" are numerical values expressed by 5 bits. In the same manner, a numerical value with a lower appearance frequency is replaced with a numerical value represented by a larger number of bits.
図15は、ハフマンテーブルの一例を示す図である。 FIG. 15 is a diagram illustrating an example of the Huffman table.
このハフマンテーブルは、図14と一致させてあり、出現頻度が高いほど短かいビット数で表わされた数値に置き換えられるように並べた、符号化前(置き換え前)の数値と符号化後(置き換え後)の数値との対応テーブルである。 This Huffman table is the same as that in FIG. 14 and is arranged so that it is replaced with a numerical value represented by a shorter number of bits as the appearance frequency is higher, and the numerical value before encoding (before replacement) and after encoding ( It is a correspondence table with numerical values after replacement.
図1に示すインターフェース機器200では、このハフマンテーブルを参照することにより、ハフマン符号化に対する復号化が行なわれる。
The
第2の画像圧縮部540では以上の画像圧縮処理が行なわれ、図3に示す画像データ(B)のヘッダ部に、第2の画像圧縮部540で得た圧縮データ自体や、ハフマン符号化部544(図7参照)で用いたハフマンテーブル(図15参照)や、さらに量子化処理部542(図7参照)で用いた量子化係数など、データ伸長処理に必要な情報が書き込まれる。
The second
図3に示す画像データファイル(B)のヘッダには、さらに、第1の画像圧縮部510でのJPEG圧縮処理で用いられた量子化テーブル(図6参照)も書き込まれ、以上のようにしてデータ伸長処理に必要な情報が書き込まれたヘッダと、第1の画像圧縮部510で得たJPEG圧縮データとが組となって画像データファイル(B)を構成し、図1に示すインターフェース機器200に送信される。インターフェース機器200は、送信されてきた画像データファイル(B)のヘッダを参照しながらJPEG圧縮データを解凍し、元々の入力画像ファイル(図3参照)中の画像データに十分に近似した画像データが再生される。
In the header of the image data file (B) shown in FIG. 3, the quantization table (see FIG. 6) used in the JPEG compression processing in the first
本実施形態では、以上説明した、図3に示す画像圧縮装置500での、第1の画像圧縮部510、画像解凍部520、差分演算部530、および第2の画像圧縮部540での画像圧縮処理は、図3に示す画像圧縮装置500の第3の画像圧縮部550での可逆圧縮処理の結果、要求圧縮率を満足しなかった場合のみ実行される。そこで、次に、第3の画像圧縮部550での可逆圧縮処理について説明する。
In the present embodiment, the image compression performed by the first
図16は、第3の画像圧縮部の構成を示すブロック図である。 FIG. 16 is a block diagram illustrating a configuration of the third image compression unit.
この第3の画像圧縮部550は、差分符号化部551、ランレングス符号化部552、およびハフマン符号化部553から構成されている。
The third
この図16に示す第3の画像圧縮部550を、図7に示す画像圧縮部540と比べると図16に示す第3の画像圧縮部550は、図7に示す第2の画像圧縮部540の量子化処理部542を省き、差分符号化部541で得られた差分後データを直接にランレングス符号化部543に入力した構成と同一の構成である。すなわち、図16に示す第3の画像圧縮部550の差分符号化部551、ランレングス符号化部552、およびハフマン符号化部553は、図7に示す第2の画像圧縮部540における、差分符号化部541、ランレングス符号化部543、およびハフマン符号化部544の各処理とそれぞれ同一である。したがって、ここでの重複説明は省略する。
When the third
図3に示す画像圧縮装置500の構成する圧縮率判定部560では、図16に示す構成の第3の画像圧縮部550で8ラインずつについて得られた圧縮データが各8ラインごとに要求圧縮率を満たすか否かが判定され、その要求圧縮率を満たさない場合には、その8ライン分の画像データについて、前述した、第1の画像圧縮部510、画像解凍部520、差分演算部530、および第2の画像圧縮部540における圧縮処理が行なわれる。
In the compression
圧縮率判定部560で要求圧縮率を満たすと判定された8ラインについては、第3の画像圧縮部550で得られた圧縮データに、その圧縮データを解凍するに必要な情報、例えば図16に示すハフマン符号化部で用いたハフマンテーブル等が書き込まれるヘッダが付加された画像データファイル(A)が生成されて図1に示すインターフェース機器200に送信される。インターフェース機器では送信されてきた画像データファイル(A)のヘッダを参照しながらその画像データファイル(A)の中の圧縮データを解凍し、元々の入力画像ファイル(図3参照)中の画像データと同一の画像データが再生される。
For the 8 lines determined to satisfy the required compression rate by the compression
次に図3に示す第1の画像圧縮部510、画像解凍部520、差分演算部530、および第2の画像圧縮部540における処理例について説明する。
Next, processing examples in the first
図17は8×8画素の画像の一例を示す図、図18は図17に示す8×8画素の各画素値を示す図である。 FIG. 17 is a diagram illustrating an example of an 8 × 8 pixel image, and FIG. 18 is a diagram illustrating each pixel value of 8 × 8 pixels illustrated in FIG. 17.
ここでは、白は16進数でFF,黒は16進数で00、その途中の数値は、その数値に応じた灰色を示している。 Here, white is FF in hexadecimal, black is 00 in hexadecimal, and a numerical value in the middle indicates gray corresponding to the numerical value.
図19は、図18の画素値を持つ8×8画素の画像についてJPEG圧縮処理を行ない、さらにそのJPEG圧縮処理後のデータを解凍して得た8×8画素の画像の各画素値を表わす図である。 FIG. 19 shows pixel values of an 8 × 8 pixel image obtained by performing JPEG compression processing on the 8 × 8 pixel image having the pixel values of FIG. 18 and further decompressing the data after the JPEG compression processing. FIG.
図20は、図18の8×8画素の画像値と図19の8×8画素の画像値について対応する画素ごとに差分演算を行なって得た差分画像の画素値を示す図、図21は、図20の8×8画素の差分画像の画素値を量子化係数8で割り算して得た後の量子化データを示す図、図22は、図19に示すJPEG解凍データを図21に示す量子化データで補正して得た画像データを示す図である。この補正では、図19に示すJPEG解凍データと図2に示す量子化データが対応する画素ごとに加算される。 FIG. 20 is a diagram illustrating pixel values of a difference image obtained by performing a difference operation for each pixel corresponding to the image value of 8 × 8 pixels in FIG. 18 and the image value of 8 × 8 pixels in FIG. 19. FIG. 22 is a diagram illustrating quantized data obtained by dividing the pixel value of the difference image of 8 × 8 pixels in FIG. 20 by the quantization coefficient 8; FIG. 22 is a diagram illustrating the JPEG decompressed data illustrated in FIG. It is a figure which shows the image data obtained by correct | amending with quantization data. In this correction, the JPEG decompressed data shown in FIG. 19 and the quantized data shown in FIG. 2 are added for each corresponding pixel.
但し、図20において、10進数での0〜127は16進数の00〜7Fで表現し、10進数での−1〜−127は16進数のFF〜81で表現している。10進数で−127未満および+128以上はそれぞれ−127および+127にクリップしてある。 However, in FIG. 20, 0 to 127 in decimal notation is represented by 00 to 7F in hexadecimal notation, and −1 to −127 in decimal notation is represented by FF to 81 in hexadecimal notation. Decimal numbers less than -127 and +128 or more are clipped to -127 and +127, respectively.
図23は、図19のJPEG解凍画像の、図18に示すオリジナルの画像に対する誤差分布を示す図、図24は、図22に示すJPEG解凍画像を図21の量子化データで補正した画像の、図18に示すオリジナルの画像に対する誤差分布を示す図である。 FIG. 23 is a diagram showing an error distribution of the JPEG decompressed image of FIG. 19 with respect to the original image shown in FIG. 18, and FIG. 24 is an image obtained by correcting the JPEG decompressed image shown in FIG. 22 with the quantized data of FIG. It is a figure which shows the error distribution with respect to the original image shown in FIG.
図23と図24とを比べると明らかなとおり、単にJPEG圧縮および解凍を行なった画像よりも本実施形態の解凍画像の方が誤差が大幅に低減され画質が向上していることが分かる。 As is apparent from a comparison between FIG. 23 and FIG. 24, it can be seen that the decompressed image of the present embodiment has a greatly reduced error and improved image quality than the image simply subjected to JPEG compression and decompression.
ここで、図21は、上述のとおり量子化係数8で割り算して求めた量子化データであり、この場合3値以上の数値が表われているが、この量子化係数としてさらに大きな値(例えば量子化係数16)を採用すると2値のみ表われる量子化データを得ることができる。量子化係数として大きな値を採用するとオリジナルの画像からの誤差は増えるが、量子化データに2値のみ表われる量子化係数を採用すると、図7に示す量子化処理部542とランレングス符号化部543との間に、以下に説明する、2値符号化処理部を配置することにより、第2の画像圧縮部540でのデータの圧縮率をさらに向上させることができる。
Here, FIG. 21 shows quantized data obtained by dividing by the quantization coefficient 8 as described above. In this case, a numerical value of three or more values is shown, but a larger value (for example, this quantization coefficient) If the quantization coefficient 16) is employed, quantized data that only shows two values can be obtained. If a large value is used as the quantization coefficient, an error from the original image increases. However, if a quantization coefficient that is expressed only in binary is used in the quantized data, the
すなわち、その2値符号化処理部では、その量子化データを構成する2値がどのような値(例えば16進数で「01」と「FF」など)であっても、その2値のうちの一方の値を16進数で「00」もう一方の値を16進数で「80」に変換し、その後、この2値符号化処理部では、先ずは、図9に示す差分符号化処理と同じ差分符号化処理が再度実行される。 In other words, in the binary encoding processing unit, whatever value is included in the quantized data (for example, “01” and “FF” in hexadecimal numbers), One value is converted to “00” in hexadecimal, and the other value is converted to “80” in hexadecimal. Then, in this binary encoding processing unit, first, the same difference as the differential encoding processing shown in FIG. The encoding process is executed again.
図25は、00と80からなる2値データのときの差分符号化処理を示す図である。 FIG. 25 is a diagram showing a differential encoding process for binary data consisting of 00 and 80.
ここでは一列に並ぶ画素値が図10の「2値画像データ」欄に示すように、
「00 80 80 00 00 80 00 00 80 …」
であったとする。図9の場合と同様、ここでも、各画像値は、16進数2桁(1バイト=8ビット)で表現されている。先ず、1ライン目の画素値「00」については、そのまま出力する。
Here, as shown in the “binary image data” column of FIG.
"00 80 80 00 00 80 00 00 80 ..."
Suppose that Similarly to the case of FIG. 9, here, each image value is expressed by two hexadecimal digits (1 byte = 8 bits). First, the pixel value “00” on the first line is output as it is.
次に、2ライン目の画素値「80」から1ライン目の画素値「00」を引き算し、その結果の値「80」を出力する。 Next, the pixel value “00” of the first line is subtracted from the pixel value “80” of the second line, and the resultant value “80” is output.
次に、3ライン目の画素値「80」から2ライン目の画素値「80」を引き算し、その結果の値「00」を出力する。 Next, the pixel value “80” of the second line is subtracted from the pixel value “80” of the third line, and the resulting value “00” is output.
次に、4ライン目の画素値「00」から3ライン目の画素値「80」を引き算し、その結果の値を出力する。ここで、「00」から「80」を引き算した結果は負の数となり、9ビットで「180」と表わされるが、MSBの1ビットである「1」は省略し、下位ビット8である「80」のみ出力する。 Next, the pixel value “80” of the third line is subtracted from the pixel value “00” of the fourth line, and the resultant value is output. Here, the result of subtracting “80” from “00” is a negative number and is expressed as “180” with 9 bits, but “1”, which is 1 bit of the MSB, is omitted, and the lower bit 8 is “ Only 80 "is output.
次に、5ライン目の画素値「00」から4ライン目の画素値「00」を引き算し、その結果の「00」を出力する。 Next, the pixel value “00” of the fourth line is subtracted from the pixel value “00” of the fifth line, and the result “00” is output.
以下、これと同じ演算を繰り返すことにより、図9の「差分エンコード」の欄に表わされている、
「(00) 80 00 80 00 80 80 00 80…」
が出力される。
Hereinafter, by repeating the same calculation, it is represented in the “difference encoding” column of FIG.
"(00) 80 00 80 00 80 80 00 80 ..."
Is output.
図1に示すインターフェース機器200では、この差分符号化されたデータを復号化するにあたり、図10の右側に示す演算が行なわれる。
In decoding the differentially encoded data, the
この復号化演算は、取り扱う数値が「00」と「80」との2値であることを除き、図9を参照して説明した復号化演算と同一であり、ここでは重複説明は省略する。 This decoding operation is the same as the decoding operation described with reference to FIG. 9 except that the numerical values to be handled are binary values “00” and “80”, and redundant description is omitted here.
尚、上述したように2値符号化処理部では、2値データの場合、その2値データを構成する2値がどのような値(例えば「01」と「FF」など)であっても「00」と「80」とに変換したが、図1に示すホストコントローラ100からインターフェース機器200に送信される圧縮情報には、どの値(例えば「01」と「FF」)をそれぞれ「00」と「80」に割り当てたか(例えば「01」を「00」に割り当て、「FF」を「80」に割り当てたなど)という情報を含ませておき、インターフェース機器では、図25の「デコード結果」の欄に示す、「00」と「80」とからなる2値データに復号化した後、それら「00」と「80」がそれら「00」と「80」に割り当てられたもともとの値に戻される(例えば「00」が「01」に戻され、「80」が「FF」に戻される)。
As described above, in the binary encoding processing unit, in the case of binary data, any value (for example, “01” and “FF”) constituting the binary data is “ Although converted into “00” and “80”, the compression information transmitted from the
図26は、2値符号化処理の説明図である。 FIG. 26 is an explanatory diagram of binary encoding processing.
この2値符号化処理部では、上記のようにして2値データについて差分符号化処理が行なわれた後の、「00」と「80」とからなる2値の画像データについて2値符号化処理が行なわれる。 In this binary encoding processing unit, binary encoding processing is performed on binary image data composed of “00” and “80” after the differential encoding processing is performed on the binary data as described above. Is done.
上記のようにして差分符号化された画像データが、図26の「差分符号化された画像データ」の欄に示すように、
「00 00 00 00 00 80 80 80 …」
であったとする。
As shown in the column of “difference-encoded image data” in FIG. 26, the image data differentially encoded as described above is as follows.
"00 00 00 00 00 80 80 80 ..."
Suppose that
ここでは、これら「00」と「80」の2種類の数値が1ビットで識別される。ここでは、「00」が1ビットで「0」、「80」が1ビットで「1」で識別され、図26の「差分符号化された画像データ」の欄に示す、
「00 00 00 00 00 80 80 80 …」
の数値列が、図11の「2値符号化されたビットストリーム」の欄に示すように、
「0 0 0 0 0 1 1 1 …」
に変換され、さらにこのビットストリームを8ビットずつまとめて、「バイトパッキング化されたバイトストリーム」の欄に示すように、
「07 C0 03 81 …」
の数値列に変換される。この変換後の数値列は、図7のランレングス符号化部543に入力される。
Here, these two types of numerical values “00” and “80” are identified by one bit. Here, “00” is identified by 1 bit “0”, “80” is identified by 1 bit “1”, and is shown in the “differential encoded image data” column of FIG.
"00 00 00 00 00 80 80 80 ..."
As shown in the column of “binary encoded bitstream” in FIG.
"0 0 0 0 0 1 1 1 ..."
In addition, as shown in the “byte packed byte stream” column, the bit stream is grouped in units of 8 bits.
"07
Converted to a numeric column. The converted numeric string is input to the run-
2値データの場合、上記の2値符号化処理を行なうことにより、データ量を大幅に削減することができる。 In the case of binary data, the amount of data can be greatly reduced by performing the above binary encoding process.
11 画像のデータ
12A,12B,13A,13B ビットマップデータ
14 非可逆の圧縮データ
15 可逆の圧縮データ
100 ホストコントローラ
140 CDROM
150 汎用インターフェースケーブル
200 インターフェース機器
250 専用インターフェースケーブル
300 プリンタ
500 画像圧縮装置
510 第1の画像圧縮部
520 画像解凍部
530 差分演算部
540 第2の画像圧縮部
541 差分符号化部
542 量子化処理部
543 ランレングス符号化部
544 ハフマン符号化部
550 第3の画像圧縮部
551 差分符号化部
552 ランレングス符号化部
553 ハフマン符号化部
560 圧縮率判定部
600 画像圧縮プログラム
610 第1の画像圧縮部
620 画像解凍部
630 差分演算部
640 第2の画像圧縮部
650 第3の画像圧縮部
660 圧縮率判定部
11
DESCRIPTION OF
Claims (16)
画像データに非可逆圧縮処理を施すことにより第1の圧縮データを生成する第1の画像圧縮部と、
前記第1の画像圧縮部で得られた第1の圧縮データを解凍することにより解凍データを生成する画像解凍部と、
前記第1の画像圧縮部による非可逆圧縮処理前の画像データと前記画像解凍部により得られた解凍データとの差分演算により差分データを求める差分演算部と、
前記差分演算部で得られた差分データに非可逆圧縮処理を施すことにより第2の圧縮データを生成する第2の画像圧縮部とを備えたことを特徴とする画像圧縮装置。 In an image compression apparatus that performs data compression processing on image data,
A first image compression unit that generates first compressed data by performing irreversible compression processing on the image data;
An image decompression unit that generates decompressed data by decompressing the first compressed data obtained by the first image compression unit;
A difference calculation unit for obtaining difference data by calculating a difference between the image data before irreversible compression processing by the first image compression unit and the decompressed data obtained by the image decompression unit;
An image compression apparatus comprising: a second image compression unit that generates second compressed data by performing irreversible compression processing on the difference data obtained by the difference calculation unit.
前記第3の画像圧縮部で得られた第3の圧縮データの圧縮率が所定の圧縮率以上であるか否かを判定する圧縮率判定部とを備え、
前記第1の画像圧縮部、前記画像解凍部、前記差分演算部、および前記第2の画像圧縮部は、前記圧縮率判定部による、前記第3の圧縮データが所定の圧縮率に満たない圧縮率であるとの判定結果を受けて作用するものであることを特徴とする請求項1記載の画像圧縮装置。 A third image compression unit that generates third compressed data by performing reversible compression processing on the image data;
A compression rate determination unit that determines whether or not the compression rate of the third compressed data obtained by the third image compression unit is equal to or higher than a predetermined compression rate;
The first image compression unit, the image decompression unit, the difference calculation unit, and the second image compression unit are compressed by the compression rate determination unit so that the third compressed data does not reach a predetermined compression rate. The image compression apparatus according to claim 1, wherein the image compression apparatus operates upon receiving a determination result that the ratio is a rate.
前記情報処理装置を、
画像データに非可逆圧縮処理を施すことにより第1の圧縮データを生成する第1の画像圧縮部と、
前記第1の画像圧縮部で得られた第1の圧縮データを解凍することにより解凍データを生成する画像解凍部と、
前記第1の画像圧縮部による非可逆圧縮処理前の画像データと前記画像解凍部により得られた解凍データとの差分演算により差分データを求める差分演算部と、
前記差分演算部で得られた差分データに非可逆圧縮処理を施すことにより第2の圧縮データを生成する第2の画像圧縮部とを備えた画像圧縮装置として動作させることを特徴とする画像圧縮プログラム。 An image compression program that is executed in an information processing apparatus that executes a program and causes the information processing apparatus to operate as an image compression apparatus that performs data compression processing on image data,
The information processing apparatus;
A first image compression unit that generates first compressed data by performing irreversible compression processing on the image data;
An image decompression unit that generates decompressed data by decompressing the first compressed data obtained by the first image compression unit;
A difference calculation unit for obtaining difference data by calculating a difference between the image data before irreversible compression processing by the first image compression unit and the decompressed data obtained by the image decompression unit;
Image compression characterized by operating as an image compression apparatus including a second image compression unit that generates second compressed data by performing lossy compression processing on the difference data obtained by the difference calculation unit program.
画像データに可逆圧縮処理を施すことにより第3の圧縮データを生成する第3の画像圧縮部と、
前記第3の画像圧縮部で得られた第3の圧縮データの圧縮率が所定の圧縮率以上であるか否かを判定する圧縮率判定部とをさらに備え、
前記第1の画像圧縮部、前記画像解凍部、前記差分演算部、および前記第2の画像圧縮部は、前記圧縮率判定部による、前記第3の圧縮データが所定の圧縮率に満たない圧縮率であるとの判定結果を受けて作用するものである画像圧縮装置として動作させることを特徴とする請求項9記載の画像圧縮プログラム。 The information processing apparatus;
A third image compression unit that generates third compressed data by performing reversible compression processing on the image data;
A compression rate determination unit that determines whether or not the compression rate of the third compressed data obtained by the third image compression unit is equal to or higher than a predetermined compression rate;
The first image compression unit, the image decompression unit, the difference calculation unit, and the second image compression unit are compressed by the compression rate determination unit so that the third compressed data does not reach a predetermined compression rate. The image compression program according to claim 9, wherein the image compression program is operated as an image compression apparatus that operates upon receiving a determination result that the ratio is a rate.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004239719A JP2006060490A (en) | 2004-08-19 | 2004-08-19 | Image compressor and image compression program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004239719A JP2006060490A (en) | 2004-08-19 | 2004-08-19 | Image compressor and image compression program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006060490A true JP2006060490A (en) | 2006-03-02 |
Family
ID=36107610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004239719A Withdrawn JP2006060490A (en) | 2004-08-19 | 2004-08-19 | Image compressor and image compression program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006060490A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008017115A (en) * | 2006-07-05 | 2008-01-24 | Fujifilm Corp | Data compression apparatus and data compression program |
JP2008035066A (en) * | 2006-07-27 | 2008-02-14 | Fujifilm Corp | Data compression apparatus and data compression program |
JP2008235966A (en) * | 2007-03-16 | 2008-10-02 | Kyocera Mita Corp | Image compression apparatus, image forming apparatus, and still image compression method |
CN112165588A (en) * | 2020-09-28 | 2021-01-01 | 成都微光集电科技有限公司 | Screen superposition display system and method and picture compression method |
-
2004
- 2004-08-19 JP JP2004239719A patent/JP2006060490A/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008017115A (en) * | 2006-07-05 | 2008-01-24 | Fujifilm Corp | Data compression apparatus and data compression program |
JP4689545B2 (en) * | 2006-07-05 | 2011-05-25 | 富士フイルム株式会社 | Data compression apparatus and data compression program |
JP2008035066A (en) * | 2006-07-27 | 2008-02-14 | Fujifilm Corp | Data compression apparatus and data compression program |
JP4699307B2 (en) * | 2006-07-27 | 2011-06-08 | 富士フイルム株式会社 | Data compression apparatus and data compression program |
JP2008235966A (en) * | 2007-03-16 | 2008-10-02 | Kyocera Mita Corp | Image compression apparatus, image forming apparatus, and still image compression method |
CN112165588A (en) * | 2020-09-28 | 2021-01-01 | 成都微光集电科技有限公司 | Screen superposition display system and method and picture compression method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7899262B2 (en) | Data compression apparatus and data compressing program storage medium | |
US7826670B2 (en) | Data compression apparatus and data compression program storage medium | |
US6658146B1 (en) | Fixed-rate block-based image compression with inferred pixel values | |
US8213727B2 (en) | Image encoding apparatus and image decoding apparatus, and control method thereof | |
JP3461309B2 (en) | Huffman coded data compression device | |
JP2006121645A (en) | Image compression apparatus and image compression program | |
JP2000138836A (en) | Compressor for digital image including background pixels | |
JP4633576B2 (en) | Data compression apparatus and data compression program | |
JP2006060490A (en) | Image compressor and image compression program | |
US20080025620A1 (en) | Data compression apparatus and data compressing program storage medium | |
JP4173498B2 (en) | Data compression apparatus and data compression program | |
JP2005277932A (en) | Device and program for compressing data | |
JP4377351B2 (en) | Data compression apparatus and data compression program | |
JP2005260408A (en) | Data compression apparatus and data compression program | |
JP4131969B2 (en) | Data compression apparatus and data compression program | |
JP4435586B2 (en) | Data compression apparatus and data compression program | |
JP2005252531A (en) | Device and program for compressing data | |
JP4131970B2 (en) | Data compression apparatus and data compression program | |
JP4699307B2 (en) | Data compression apparatus and data compression program | |
JP4629512B2 (en) | Data compression apparatus and data compression program | |
JP4181147B2 (en) | Data compression apparatus and data compression program | |
JP4377352B2 (en) | Data compression apparatus and data compression program | |
JPH1098620A (en) | Picture processor | |
JP3361177B2 (en) | Encoding / decoding method and encoding / decoding device | |
JP2005260420A (en) | Data compression apparatus and data compression program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20061213 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071106 |