JPH08317225A - Image data compression and expansion device - Google Patents
Image data compression and expansion deviceInfo
- Publication number
- JPH08317225A JPH08317225A JP11959995A JP11959995A JPH08317225A JP H08317225 A JPH08317225 A JP H08317225A JP 11959995 A JP11959995 A JP 11959995A JP 11959995 A JP11959995 A JP 11959995A JP H08317225 A JPH08317225 A JP H08317225A
- Authority
- JP
- Japan
- Prior art keywords
- image data
- compression
- pixels
- block
- position information
- 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.)
- Pending
Links
Landscapes
- Image Processing (AREA)
- Storing Facsimile Image Data (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、画像データ圧縮・伸張
装置に係わり、たとえば、プリンタや画像ファイリング
装置など、画像データを圧縮して記憶する画像データ圧
縮・伸張装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image data compression / expansion device, and more particularly to an image data compression / expansion device such as a printer or an image filing device for compressing and storing image data.
【0002】[0002]
【従来の技術】プリンタや表示ディスプレイ装置あるい
は画像ファイリング装置など、画像データを取り扱う装
置には、画像データを蓄積するためのページメモリある
いはフレームメモリと呼ばれるメモリが設けられてい
る。このような装置を、画像データがそのままページメ
モリに格納されるように構成した場合には、ページメモ
リとして大容量のメモリが必要とされることになり、装
置の製造コストが上昇してしまう。また、装置の動作時
には、その大容量のページメモリに対して、全てのデー
タを読み出す処理や、書き込む処理が行われることにな
るので、動作速度が遅いといった問題が生じていた。2. Description of the Related Art An apparatus for handling image data, such as a printer, a display device or an image filing apparatus, is provided with a memory called a page memory or a frame memory for storing image data. If such an apparatus is configured so that the image data is stored in the page memory as it is, a large-capacity memory is required as the page memory, which increases the manufacturing cost of the apparatus. Further, when the device is in operation, a process of reading all data and a process of writing all data are performed on the large-capacity page memory, which causes a problem that the operation speed is slow.
【0003】このような問題に対処するために、従来よ
り、画像データを圧縮して格納するといった方法が採用
されている。たとえば、2値で構成される画像データに
対しては、通常、ランレングス圧縮(MH、MR、MM
R)を採用して、画像データの圧縮を行うことにより、
メモリ容量の低減と、メモリアクセスの高速化が図られ
ている。In order to deal with such a problem, a method of compressing and storing image data has been conventionally used. For example, run-length compression (MH, MR, MM) is normally applied to binary image data.
R) is adopted and the image data is compressed,
A reduction in memory capacity and an increase in speed of memory access have been achieved.
【0004】[0004]
【発明が解決しようとする課題】上述のように、画像デ
ータを圧縮して格納する装置では、メモリ容量の低減
と、メモリアクセスの高速化を実現することができるも
のの、たとえば、記憶されている画像データを出力する
場合、出力すべき画像が記憶されている画像の一部分だ
けであっても、圧縮コードを順次伸張して、各ラインに
対する画像データを得てから、出力が要求されている部
分に相当する画像データを抽出して出力するといった処
理が必要とされていた。As described above, in the apparatus for compressing and storing the image data, although the memory capacity can be reduced and the memory access can be speeded up, for example, it is stored. When outputting image data, even if the image to be output is only a part of the stored image, the compression code is sequentially expanded to obtain the image data for each line, and then the part that is requested to be output There is a need for a process of extracting and outputting image data corresponding to.
【0005】このように、従来の技術では、記憶されて
いる画像のうちの一領域を出力させるのにも、全領域を
出力させるのに必要とされる時間とほぼ同等の時間が必
要とされれるという問題があった。As described above, in the conventional technique, it is necessary to output one area of the stored image to a time substantially equal to the time required to output the entire area. There was a problem that
【0006】また、画像データを90度回転させて出力
する場合には、出力すべき画像データの最初の1ラスタ
のデータを得るために、全ての圧縮コードを伸張しなけ
ればならないため、回転して出力させるのに多くの時間
が必要とされるといった問題が生じていた。Further, when the image data is rotated by 90 degrees and outputted, all the compression codes must be expanded in order to obtain the first raster data of the image data to be outputted. There was a problem that it took a lot of time to output the output.
【0007】なお、特開昭60−16767号公報に
は、上記問題を解決するために、画像データを、通常に
圧縮した圧縮コードと、画像データを90度回転させた
形で圧縮した圧縮コードとを蓄積するといった方法を用
いた技術が開示されているが、この方法では、2倍の容
量のメモリを備えることが必要となってしまう。すなわ
ち、この技術では、画像データを回転して出力する際に
要する時間は短縮できるものの、メモリ容量の低減とい
う本来の目的が達成されなくなってしまうことになる。In order to solve the above-mentioned problem, Japanese Patent Laid-Open No. 60-16767 discloses a compression code in which image data is normally compressed and a compression code in which the image data is compressed by rotating 90 degrees. Although a technique using a method of storing and is disclosed, this method requires the provision of a memory having a double capacity. That is, with this technique, although the time required for rotating and outputting the image data can be shortened, the original purpose of reducing the memory capacity will not be achieved.
【0008】そこで、本発明の目的は、画像データの圧
縮によるメモリ容量の低減効果を減ずることなく、画像
の一領域を抽出して出力することや、回転して出力する
ことが高速に行える画像データ圧縮・伸張装置を提供す
ることにある。Therefore, an object of the present invention is to extract an area of an image and output the image, or rotate and output the image at high speed without reducing the effect of reducing the memory capacity by compressing the image data. It is to provide a data compression / decompression device.
【0009】[0009]
【課題を解決するための手段】請求項1記載の発明は、
(イ)ラスタ形式で入力されるa画素×b画素分の画像
データを、n画素×n画素分の画像データを1単位とし
た複数個の矩形ブロックに分割するとともに、各矩形ブ
ロックにa画素×b画素分の画像データ内での位置を示
すブロック位置情報を割り当てる分割・割当手段と、
(ロ)この分割手段によって分割された各矩形ブロック
内のn画素×n画素分の画像データを、所定の規則に従
って、1ライン分のデータ列に変換するとともに、変換
したデータ列を圧縮して圧縮コードを生成する圧縮手段
と、(ハ)この圧縮手段によって生成された圧縮コード
を記憶する圧縮コード記憶手段と、(ニ)この圧縮コー
ド記憶手段に記憶された各圧縮コードの記憶位置を示す
記憶位置情報と、各圧縮コードの元となった矩形ブロッ
クに対して分割・割当手段によって割り当てられている
ブロック位置情報との対応関係を記憶する対応関係記憶
手段と、(ホ)出力を行う画像データの範囲を指定する
範囲指定手段と、(ヘ)この範囲指定手段で指定された
範囲の画像データに対応する矩形ブロックのブロック位
置情報を求め、求めたブロック位置情報と対応関係記憶
手段に記憶された対応関係を基に、各矩形ブロックに関
する圧縮コードに対する記憶位置情報を特定する特定手
段と、(ト)圧縮コード記憶手段から、特定手段で特定
された記憶位置情報に応じた記憶位置に記憶された各圧
縮コードを読みだして伸張する伸張手段と、(チ)この
伸張手段の伸張結果に対して、所定の規則による変換の
逆変換を施すことによって作成したn画素×n画素分の
画像データを、その元となった矩形ブロックのブロック
位置情報に応じて並べて、ラスタ形式の画像データとし
て出力する出力手段とを具備する。According to the first aspect of the present invention,
(B) The image data of a pixels x b pixels input in the raster format is divided into a plurality of rectangular blocks each having n pixels x n pixels of image data as one unit, and each rectangular block has a pixels of a pixels. Dividing / allocating means for allocating block position information indicating a position in the image data of × b pixels,
(B) The image data for n pixels × n pixels in each rectangular block divided by the dividing means is converted into a data line for one line according to a predetermined rule, and the converted data line is compressed. A compression means for generating a compression code, (c) a compression code storage means for storing the compression code generated by this compression means, and (d) a storage position of each compression code stored in this compression code storage means are shown. Correspondence storage means for storing the correspondence between the storage position information and the block position information assigned by the dividing / assigning means to the rectangular block that is the source of each compressed code, and (e) an image to be output A range designating means for designating a range of data and (f) block position information of a rectangular block corresponding to the image data of the range designated by the range designating means is obtained and obtained. Based on the block position information and the correspondence relationship stored in the correspondence relationship storage means, the specification means for specifying the storage position information for the compression code for each rectangular block, and the specification means from the (g) compression code storage means. Decompression means for decompressing and decompressing each compressed code stored in the memory location corresponding to the memory location information, and (h) performing inverse conversion of conversion according to a predetermined rule on the decompression result of this decompression means. The image data for n pixels × n pixels created by is arranged according to the block position information of the original rectangular block and is output as image data in a raster format.
【0010】すなわち、請求項1記載の発明では、a画
素×b画素分の画像データが、n画素×n画素分の画像
データを1単位とした複数個の矩形ブロックに分割され
て、各矩形ブロック単位で圧縮コードの生成・記憶が行
われるように、画像データ圧縮・伸張装置を構成する。
これにより、必要な圧縮コードだけを読み出して伸張す
るといった処理が可能となり、その結果として、1ペー
ジ分の画像の1領域だけを出力するといった処理が高速
に行えることになる。That is, according to the first aspect of the present invention, the image data for a pixel × b pixel is divided into a plurality of rectangular blocks each having image data for n pixels × n pixels as one unit, and each rectangular block is divided into a plurality of rectangular blocks. The image data compression / decompression device is configured so that the compression code is generated / stored in block units.
As a result, it becomes possible to perform processing such as reading out only the necessary compressed code and expanding it, and as a result, processing such as outputting only one area of the image for one page can be performed at high speed.
【0011】請求項2記載の発明は、(イ)ラスタ形式
で入力されるa画素×b画素分の画像データを、n画素
×n画素分の画像データを1単位とした複数個の矩形ブ
ロックに分割するとともに、各矩形ブロックにa画素×
b画素分の画像データ内での位置を示すブロック位置情
報を割り当てる分割・割当手段と、(ロ)この分割手段
によって分割された各矩形ブロック内のn画素×n画素
分の画像データを、所定の規則に従って、1ライン分の
データ列に変換するとともに、変換したデータ列を、幾
つかの圧縮方法から択一的に選択された圧縮方法を用い
て圧縮して圧縮コードを生成する圧縮手段と、(ハ)こ
の圧縮手段によって生成された圧縮コードを記憶する圧
縮コード記憶手段と、(ニ)この圧縮コード記憶手段に
記憶された各圧縮コードの記憶位置を示す記憶位置情報
と、各圧縮コードの生成の際に用いられた圧縮方法を識
別するための情報である圧縮属性と、各圧縮コードの元
となった矩形ブロックに対して分割・割当手段によって
割り当てられているブロック位置情報との対応関係を記
憶する対応関係記憶手段と、(ヘ)出力を行う画像デー
タの範囲を指定する範囲指定手段と、(ト)この範囲指
定手段で指定された範囲の画像データに対応する矩形ブ
ロックのブロック位置情報を求め、求めたブロック位置
情報と対応関係記憶手段に記憶された対応関係を基に、
各矩形ブロックに関する圧縮コードに対する記憶位置情
報と圧縮属性とを特定する特定手段と、(チ)圧縮コー
ド記憶手段から、特定手段で特定された記憶位置情報に
応じた記憶位置に記憶された各圧縮コードを読みだし
て、読みだした圧縮コードを特定手段で特定された圧縮
属性に応じて伸張する伸張手段と、(リ)この伸張手段
の伸張結果に対して、所定の規則による変換の逆変換を
施すことによって作成したn画素×n画素分の画像デー
タを、その元となった矩形ブロックのブロック位置情報
に応じて並べて、ラスタ形式の画像データとして出力す
る出力手段とを具備する。According to a second aspect of the present invention, (a) a plurality of rectangular blocks in which image data for a pixels × b pixels input in a raster format is used as one unit for image data for n pixels × n pixels And each rectangular block has a pixel ×
A dividing / assigning means for assigning block position information indicating a position in the image data for b pixels, and (b) a predetermined number of image data for n pixels × n pixels in each rectangular block divided by this dividing means. And a conversion means for converting the converted data string into a data string for one line and compressing the converted data string using a compression method selected from several compression methods to generate a compressed code. (C) Compressed code storage means for storing the compressed code generated by this compression means, (d) Storage position information indicating the storage position of each compressed code stored in this compressed code storage means, and each compressed code. The compression attribute, which is information for identifying the compression method used when generating, and the division / allocation means assigned to the rectangular block that is the source of each compression code. Correspondence storage means for storing the correspondence relationship with the block position information, (f) range designation means for designating the range of image data to be output, and (g) image data within the range designated by this range designation means. Obtaining the block position information of the corresponding rectangular block, based on the obtained block position information and the correspondence stored in the correspondence storage unit,
Specifying means for specifying the storage position information and compression attribute for the compression code for each rectangular block; and (h) each compression stored from the compression code storage means at the storage position corresponding to the storage position information specified by the specifying means. Decompressing means for reading the code and decompressing the read compressed code according to the compression attribute specified by the specifying means; and (i) inverse conversion of the decompression result of this decompressing means according to a predetermined rule. The image data for n pixels × n pixels created by performing the above process is arranged according to the block position information of the original rectangular block and is output as raster-format image data.
【0012】すなわち、請求項2記載の発明では、a画
素×b画素分の画像データが、n画素×n画素分の画像
データを1単位とした複数個の矩形ブロックに分割され
て、各矩形ブロック単位で圧縮コードの生成・記憶が行
われるようにするとともに、矩形ブロックごとに異なっ
た圧縮方法が選択できるように、画像データ圧縮・伸張
装置を構成する。これにより、1ページ分の画像の1領
域だけを出力するといった処理が高速に行えることにな
り、また、圧縮コードの記憶に必要とされる記憶容量の
低減が図れることになる。That is, according to the second aspect of the present invention, the image data of a pixel × b pixel is divided into a plurality of rectangular blocks each having image data of n pixels × n pixels as one unit, and each rectangular block is divided. An image data compression / expansion device is configured so that a compression code is generated / stored in block units and a different compression method can be selected for each rectangular block. As a result, the processing of outputting only one area of the image for one page can be performed at high speed, and the storage capacity required for storing the compressed code can be reduced.
【0013】請求項3記載の発明は、(イ)ラスタ形式
で入力されるa画素×b画素分の画像データを、n画素
×n画素分の画像データを1単位とした複数個の矩形ブ
ロックに分割するとともに、各矩形ブロックにa画素×
b画素分の画像データ内での位置を示すブロック位置情
報を割り当てる分割・割当手段と、(ロ)この分割手段
によって分割された各矩形ブロック内のn画素×n画素
分の画像データを、所定の規則に従って、1ライン分の
データ列に変換するとともに、変換したデータ列を圧縮
して圧縮コードを生成する圧縮手段と、(ハ)この圧縮
手段によって生成された圧縮コードを記憶する圧縮コー
ド記憶手段と、(ニ)この圧縮コード記憶手段に記憶さ
れた各圧縮コードの記憶位置を示す記憶位置情報と、各
圧縮コードの元となった矩形ブロックに対して分割・割
当手段によって割り当てられているブロック位置情報と
の対応関係を記憶する対応関係記憶手段と、(ホ)出力
を行う画像データの範囲と出力時に回転させる角度とを
指定する範囲・角度指定手段と、(ヘ)この範囲・角度
指定手段で指定された範囲の画像データに対応する矩形
ブロックのブロック位置情報を求め、求めたブロック位
置情報と対応関係記憶手段に記憶された対応関係を基
に、各矩形ブロックに関する圧縮コードに対する記憶位
置情報を特定する特定手段と、(ト)圧縮コード記憶手
段から、特定手段で特定された記憶位置情報に応じた記
憶位置に記憶された各圧縮コードを読みだして伸張する
伸張手段と、(チ)この伸張手段の伸張結果に対して、
所定の規則による変換の逆変換を施すことによって作成
したn画素×n画素分の画像データに範囲・角度指定手
段によって指定された角度の回転を施し、回転を施した
画像データを、その元となった矩形ブロックのブロック
位置情報に応じて並べて、ラスタ形式の画像データとし
て出力する出力手段とを具備する。According to a third aspect of the present invention, (a) a plurality of rectangular blocks in which image data for a pixels × b pixels input in a raster format are image data for n pixels × n pixels as one unit And each rectangular block has a pixel ×
A dividing / assigning means for assigning block position information indicating a position in the image data for b pixels, and (b) a predetermined number of image data for n pixels × n pixels in each rectangular block divided by this dividing means. According to the rule of (1), a compression means for converting a data string for one line and compressing the converted data string to generate a compression code, and (c) a compression code storage for storing the compression code generated by this compression means. Means, and (d) storage position information indicating the storage position of each compressed code stored in the compressed code storage means, and the rectangular block that is the source of each compressed code is assigned by the dividing / assigning means. Correspondence storage means for storing the correspondence with the block position information, and (e) Range / angle that specifies the range of image data to be output and the angle to rotate at the time of output. (F) The block position information of the rectangular block corresponding to the image data in the range specified by the range / angle specifying means is obtained, and the obtained block position information and the correspondence relationship stored in the correspondence storage means are obtained. Based on the above, specifying means for specifying storage position information for the compressed code for each rectangular block, and (g) each compression code stored in the storage position corresponding to the storage position information specified by the specifying means from the compression code storage means. Decompression means for reading and decompressing, and (h) for the decompression result of this decompression means,
The image data for n pixels × n pixels created by performing the inverse conversion of the conversion according to the predetermined rule is rotated by the angle designated by the range / angle designating unit, and the rotated image data is used as the original. And output means for arranging the rectangular blocks according to the block position information and outputting as image data in a raster format.
【0014】すなわち、請求項3記載の発明では、a画
素×b画素分の画像データが、n画素×n画素分の画像
データを1単位とした複数個の矩形ブロックに分割され
て、各矩形ブロック単位で圧縮コードの生成・記憶が行
われるようにするとともに、矩形ブロックに対して回転
処理が行えるように、画像データ圧縮・伸張装置を構成
する。これにより、回転処理用のメモリを使用すること
なく、画像データの回転出力が行えることになる。That is, according to the third aspect of the present invention, the image data of a pixel × b pixel is divided into a plurality of rectangular blocks each having image data of n pixels × n pixels as one unit, and each rectangular block is divided. An image data compression / expansion device is configured so that a compression code is generated / stored in block units and a rotation process can be performed on a rectangular block. Thereby, the rotation output of the image data can be performed without using the memory for the rotation processing.
【0015】[0015]
【実施例】以下、実施例につき本発明を詳細に説明す
る。EXAMPLES The present invention will be described in detail below with reference to examples.
【0016】図1に、本発明の一実施例による画像デー
タ圧縮・伸張装置の構成を示す。図示したように、実施
例の画像データ圧縮・伸張装置は、スイッチ51と2つ
の画像データ展開部521 、522 とスイッチ54とバ
イトパック&スワップ55と圧縮・伸長回路56と圧縮
コードバッファ57と圧縮コードテーブル58とブロッ
クスキャン発生器59とクリッピングローテートカウン
ト回路60とから構成されている。FIG. 1 shows the arrangement of an image data compression / decompression device according to an embodiment of the present invention. As shown in the figure, the image data compression / expansion device of the embodiment has a switch 51, two image data expansion units 52 1 and 52 2 , a switch 54, a byte pack & swap 55, a compression / expansion circuit 56, and a compression code buffer 57. It comprises a compression code table 58, a block scan generator 59 and a clipping rotate count circuit 60.
【0017】スイッチ51は、画像データを取り扱う外
部装置と、2つの画像データ展開部52のいずれか一方
とを接続する回路であり、スイッチ51の制御は、クリ
ッピングローテートカウント回路60によって行われて
いる。各画像データ展開部52は、圧縮時(画像データ
の入力時)には、入力された画像データをnドット×n
ラインの矩形状の画像データ(以下、矩形ブロックと表
記する)に分割して、各矩形ブロック内のデータを1次
元のデータ列に変換して出力する回路であり、伸長時に
は、その逆の処理を行う回路として機能する。実施例の
画像データ圧縮・伸張装置では、画像データ展開部52
として、画像データを、n=64の矩形ブロックに分割
するものを用いている。The switch 51 is a circuit that connects an external device that handles image data to either one of the two image data expansion units 52. The control of the switch 51 is performed by the clipping rotate count circuit 60. . Each image data decompression unit 52 compresses the input image data (n dots × n) during compression (when inputting image data).
This is a circuit that divides into line rectangular image data (hereinafter referred to as a rectangular block), converts the data in each rectangular block into a one-dimensional data string, and outputs the data string. Function as a circuit for performing. In the image data compression / expansion apparatus of the embodiment, the image data expansion unit 52
Is used to divide the image data into rectangular blocks of n = 64.
【0018】たとえば、図2に模式的に示したような、
13248ドット×18688ライン分の画像データ1
00は、この画像データ展開部52によって、64ドッ
ト×64ライン分の画像データを含む、60444(2
07×292)個の矩形ブロック200に分割される。
なお、図2において、各枠が、1個の矩形ブロックを示
しており、各枠内に表記された“0”から“6044
3”という数値は、画像データの矩形ブロックへの展開
時に、各矩形ブロックに対して付与されるブロック番号
を示している。For example, as schematically shown in FIG.
Image data 1 for 13248 dots x 18688 lines
00 indicates 60444 (2) including image data of 64 dots × 64 lines by the image data developing unit 52.
(07 × 292) rectangular blocks 200 are divided.
Note that, in FIG. 2, each frame shows one rectangular block, and “0” to “6044” described in each frame.
The numerical value “3” indicates the block number given to each rectangular block when the image data is expanded into the rectangular block.
【0019】また、各画像データ展開部52は、各矩形
ブロック内の64×64画素分のデータを、1次元のデ
ータ列に変換する際に、4つの異なる展開方法を使用で
きるようになっている。各展開方法は、それぞれ、画像
データを、0、90、180、270度(回転方向は、
反時計回り)回転させた形で、圧縮・記憶する際に使用
されるものであり、たとえば、0度、90度変換して圧
縮・記憶する際には、以下のような展開方法が用いられ
る。Further, each image data expansion unit 52 can use four different expansion methods when converting the data of 64 × 64 pixels in each rectangular block into a one-dimensional data string. There is. In each expansion method, the image data is converted into 0, 90, 180, 270 degrees (rotational direction:
It is used when compressing / storing in a rotated form (counterclockwise). For example, when compressing / storing by converting 0 ° or 90 °, the following expansion method is used. .
【0020】図3に、画像データ展開部が、矩形ブロッ
ク内のデータを、通常の圧縮時にスキャンする際に使用
する展開方法と、入力された画像データを90度回転さ
せた状態で、圧縮・記憶させる際に用いられる展開方法
を示す。In FIG. 3, the image data decompression unit uses the decompression method used when scanning the data in the rectangular block at the time of normal compression and the compression / compression of the input image data rotated by 90 degrees. The expansion method used when storing is shown.
【0021】図3(a)に示したように、通常の圧縮時
(回転させることなくデータを記憶させる時)には、矩
形ブロック200内の各画素に関するデータは、矢印で
示したように左から右へのスキャンを上から下へ繰り返
す形で、1次元のデータ列に変換される。そして、図3
(b)に示したように、入力された画像データを90度
回転させた状態で、圧縮・記憶させる際には、矩形ブロ
ック200内の各画素に関するデータは、矢印で示した
ように、下から上へのスキャンを左から右へ繰り返す形
で(変換した一次元のデータ列に対して、図3(a)に
示した変換の逆変換を施した場合に、90度回転した画
像が得られるような形で)、1次元のデータ列に変換さ
れる。As shown in FIG. 3A, during normal compression (when data is stored without being rotated), data regarding each pixel in the rectangular block 200 is left as indicated by an arrow. Is converted into a one-dimensional data string by repeating the scan from the top to the bottom. And FIG.
As shown in (b), when compressing and storing the input image data in a state of being rotated by 90 degrees, the data regarding each pixel in the rectangular block 200 is displayed as indicated by an arrow. From the left to the right in the form of repeating the scan from top to bottom (when the inverse transformation of the transformation shown in FIG. 3A is applied to the transformed one-dimensional data string, an image rotated by 90 degrees is obtained. It is converted into a one-dimensional data string.
【0022】また、180、270度回転時には、図4
に示したような、展開方法300c300d が用いられ
る。なお、この図には、図3に示した、0度、90度回
転時にそれぞれ用いられる展開方法300a 、300b
も併せて示してある。Further, when rotating 180 degrees and 270 degrees, FIG.
The deployment method 300 c 300 d , as shown in FIG. It should be noted that in this figure, the unfolding methods 300 a and 300 b shown in FIG.
Is also shown.
【0023】図1に戻って、実施例の画像データ圧縮・
伸張装置の構成の説明を続ける。Returning to FIG. 1, the image data compression and
The description of the structure of the extension device will be continued.
【0024】2つの画像データ展開部52は、それぞ
れ、スイッチ54とも接続されており、スイッチ54
は、いずれか一方の画像データ展開部52とバイトパッ
ク&スワップ55とを接続するように、クリッピングロ
ーテートカウント回路60によって制御されている。The two image data expansion units 52 are also connected to a switch 54, respectively.
Is controlled by the clipping rotate count circuit 60 so as to connect either one of the image data expanding section 52 and the byte pack & swap 55.
【0025】バイトパック&スワップ55は、図5に示
したように、複数のフリップ・フロップ(F/F)から
構成された、データをバイト単位にパックする回路であ
り、図6に模式的に示したように、データ入力順序(実
線枠内に表記した数値)とデータ出力順序400(図の
右側に“バイト0”、“バイト1”と表記)を違えるこ
とにより、回転時にデータのスワップが行えるようにも
なっている。As shown in FIG. 5, the byte pack & swap 55 is a circuit which is composed of a plurality of flip-flops (F / F) and packs data in byte units, and is schematically shown in FIG. As shown, by swapping the data input order (numerical values in the solid line frame) and the data output order 400 (expressed as "byte 0" and "byte 1" on the right side of the figure), the data can be swapped during rotation. It can also be done.
【0026】圧縮・伸長回路56は、画像データの圧縮
と伸長とを行う回路であり、実施例の画像データ圧縮・
伸張装置では、圧縮・伸張回路56として、MH(Modif
iedHuffman)と呼ばれる1次元圧縮(伸張)を行う回路
を用いている。The compression / decompression circuit 56 is a circuit for compressing and decompressing image data.
In the decompression device, the compression / decompression circuit 56 uses the MH (Modif
A circuit called one-dimensional compression (expansion) called ied Huffman) is used.
【0027】圧縮コードバッファ57は、圧縮・伸長回
路56によって圧縮された矩形ブロックデータを蓄積す
るバッファであり、圧縮コードテーブル58は、圧縮コ
ードバッファ57のどの部分に、どの矩形ブロックが蓄
積されているかを記憶するためのテーブルである。圧縮
コードバッファ57と圧縮コードテーブル58には、以
下のような形で情報記憶が行われる。The compression code buffer 57 is a buffer for storing the rectangular block data compressed by the compression / expansion circuit 56, and the compression code table 58 stores which rectangular block is stored in which part of the compression code buffer 57. It is a table for storing whether or not. Information is stored in the compressed code buffer 57 and the compressed code table 58 in the following manner.
【0028】図7に、圧縮コードバッファと圧縮コード
テーブルに記憶される情報の対応関係を示す。図示して
あるように、圧縮コードテーブル58は、画像データ圧
縮・伸張装置が処理対象とする画像データの最大ブロッ
ク数分のデータ(“block 0”、“block 1 ”、…、“b
lock 60443 ”)が記憶できるメモリから構成されてお
り、圧縮コードテーブル57内の各ブロックに対するデ
ータは、そのブロックに関する圧縮コード(“code
0”、“code 1”、…、“code 60443”)が記憶されて
いる、圧縮コードバッファ57内の記憶領域の先頭アド
レスを示すものとなっている。FIG. 7 shows the correspondence relationship between the compressed code buffer and the information stored in the compressed code table. As shown in the figure, the compression code table 58 has data (“block 0”, “block 1”, ..., “b” corresponding to the maximum number of blocks of image data to be processed by the image data compression / decompression device.
lock 60443 ") is composed of a memory that can store the data for each block in the compressed code table 57.
"0", "code 1", ..., "Code 60443") are stored in the compressed code buffer 57 and indicate the start address of the storage area.
【0029】圧縮コードバッファ57および圧縮コード
テーブル58の読み出し、書き込み制御は、クリッピン
グローテートカウント回路60によって行われ、画像デ
ータ展開部52、バイトパック&スワップ55の制御
は、ブロックスキャン発生器59によって行われる。The reading / writing control of the compressed code buffer 57 and the compressed code table 58 is performed by the clipping rotate count circuit 60, and the control of the image data expansion unit 52 and the byte pack & swap 55 is performed by the block scan generator 59. Be seen.
【0030】以下、図を参照して、実施例の画像データ
圧縮・伸張装置の動作を具体的に説明する。まず、図2
を用いて、回転することなく画像データを圧縮して記憶
する場合の動作を説明する。The operation of the image data compression / decompression device of the embodiment will be specifically described below with reference to the drawings. First, FIG.
The operation in the case of compressing and storing the image data without rotating will be described using.
【0031】図2のような画像データを圧縮して記憶す
る場合、画像データ圧縮・伸張装置には、スイッチ51
を介して、いずれか一方の画像データ展開部52(説明
の便宜上、画像データ展開部521 に入力されるものと
する)に対して、ブロック0の1番上のラインに関する
画像データ、ブロック1の1番上のラインに関する画像
データ、…、ブロック207の2番目のラインに関する
画像データといった順で、データが入力されていくこと
になる。When compressing and storing the image data as shown in FIG. 2, the image data compression / expansion device has a switch 51.
To one of the image data developing units 52 (for convenience of explanation, the image data developing unit 52 1 is input), the image data relating to the top line of the block 0, the block 1 The data is input in the order of the image data for the first line of ..., The image data for the second line of the block 207.
【0032】画像データ展開部521 は、64ライン分
のデータ、すなわち、ブロック0からブロック206ま
での207ブロック分のデータが揃った段階で、各ブロ
ック内の64×64ドット分の画像データを、ブロック
0,1、…、206といった順でスイッチ54に対して
出力していく。この際、各ブロック内の64×64ドッ
ト分の画像データは、図3(a)に示したように、矩形
ブロック内の左上の画素に関するデータを始点として、
各画素に関するデータをラスタスキャンする形で出力さ
れる。The image data development unit 52 1 obtains 64 × 64 dots of image data in each block when 64 lines of data, that is, 207 blocks of data from block 0 to block 206 are gathered. , Blocks 0, 1, ..., 206 in this order to the switch 54. At this time, as shown in FIG. 3A, the image data for 64 × 64 dots in each block is, as shown in FIG.
The data regarding each pixel is output in the form of raster scan.
【0033】画像データ展開部521 が出力する各ブロ
ックに対する64×64ドット分のデータ列は、圧縮・
伸張回路56によって圧縮され、各ブロックに対する圧
縮コードが生成される。そして、クリッピングローテー
トカウント回路60の制御の下に、ブロック0に対する
圧縮コード“code 0”が圧縮コードバッファ57に格納
され、圧縮コードテーブル58のブロック番号0に対応
する記憶領域に、“code 0”が記憶された圧縮コードバ
ッファ57の先頭アドレス“block 0 ”が記憶されるこ
とになる(図7参照)。次いで、ブロック1に対する圧
縮コード“code1”が圧縮コードバッファ57の、圧縮
コード“code 0”の記憶領域に続く記憶領域に格納さ
れ、圧縮コードテーブル58のブロック番号1に対応す
る記憶領域に、“code 1”が記憶された圧縮コードバッ
ファ57の先頭アドレス“block 1”が記憶される。The data string of 64 × 64 dots for each block output from the image data expansion unit 52 1 is compressed / compressed.
The decompression circuit 56 compresses the compressed code to generate a compressed code for each block. Then, under the control of the clipping rotate count circuit 60, the compression code “code 0” for the block 0 is stored in the compression code buffer 57, and “code 0” is stored in the storage area corresponding to the block number 0 of the compression code table 58. The head address "block 0" of the compressed code buffer 57 in which is stored is stored (see FIG. 7). Next, the compression code “code1” for the block 1 is stored in the storage area of the compression code buffer 57 subsequent to the storage area of the compression code “code 0”, and is stored in the storage area corresponding to the block number 1 of the compression code table 58. The head address "block 1" of the compressed code buffer 57 in which "code 1" is stored is stored.
【0034】なお、64ライン分のデータが画像データ
展開部521 内に供給された段階で、スイッチ51の切
り替えが行われており、これらの圧縮処理は、65ライ
ン目以降の画像データの画像データ展開部522 への入
力処理と並行して進められることになる。It should be noted that the switch 51 is switched when 64 lines of data are supplied to the image data decompression unit 52 1 , and these compression processes are performed on the image data of the 65th and subsequent lines. This will proceed in parallel with the input processing to the data expansion unit 52 2 .
【0035】そして、ブロック206に関する圧縮コー
ドの格納が終了した段階で、スイッチ54およびスイッ
チ51の切り替えが行われ、画像データ展開部522 に
記憶された65ライン目から128ライン目までの画像
データに対する圧縮および圧縮データの格納が開始され
るとともに、画像データ展開部521 への129ライン
目からの画像データの供給が開始されることになる。When the storage of the compressed code relating to the block 206 is completed, the switch 54 and the switch 51 are switched, and the image data from the 65th line to the 128th line stored in the image data decompression unit 52 2. The compression and the storage of the compressed data are started, and the supply of the image data from the 129th line to the image data expansion unit 52 1 is started.
【0036】このような処理が、ブロック60243ま
で繰り返されることによって、1ページ分の画像データ
の圧縮・格納が完了する。By repeating such processing up to block 60243, compression / storing of image data for one page is completed.
【0037】次に、図8および図9を用いて、このよう
にして圧縮・格納された画像データの一部を出力する場
合の動作を説明する。なお、図8は、説明に用いる画像
データの矩形ブロックへの分割状態と、各矩形ブロック
に与えられたブロック番号を示した図であり、ここで
は、図7の右上に示してあるブロック203からブロッ
ク1033までの20ブロック分の画像データ範囲40
0を、そのまま(回転処理を施すことなく)外部装置に
対して出力するものとする。また、図9は、この出力処
理の際に画像データ展開部によって行われる処理の概要
を示した図である。Next, the operation of outputting a part of the image data compressed and stored in this way will be described with reference to FIGS. 8 and 9. Note that FIG. 8 is a diagram showing a division state of the image data used for the description into rectangular blocks and a block number given to each rectangular block. Here, from the block 203 shown in the upper right of FIG. Image data range 40 for 20 blocks up to block 1033
It is assumed that 0 is output as it is (without performing the rotation process) to the external device. Further, FIG. 9 is a diagram showing an outline of a process performed by the image data expanding unit in the output process.
【0038】この場合、まず、圧縮コードテーブル58
の内容を基に、ブロック203に関する圧縮コードが記
憶された記憶領域の先頭アドレスが特定され、その先頭
アドレス“block 203 ”からの圧縮コードバッファ57
内のデータが、圧縮・伸張回路56に供給され、そこ
で、伸張が施されることになる。そして、伸張されたブ
ロック203に関するデータ列は、バイトパック&スワ
ップ55を通り、ブロックスキャン発生器59からのア
ドレスに従って、画像データ展開部521 に書き込まれ
る。なお、各1次元のデータ列の、n×nの矩形ブロッ
クへの変換には、図8に模式的に示したように、0度回
転用の展開方法300a が用いられる。In this case, first, the compression code table 58
The start address of the storage area in which the compressed code for the block 203 is stored is specified based on the content of the block 203, and the compressed code buffer 57 from the start address "block 203" is specified.
The data within is supplied to the compression / expansion circuit 56, where it is expanded. Then, the decompressed data string relating to the block 203 passes through the byte pack & swap 55 and is written in the image data expanding unit 52 1 according to the address from the block scan generator 59. For the conversion of each one-dimensional data string into an n × n rectangular block, a development method 300 a for 0 ° rotation is used, as schematically shown in FIG.
【0039】このような処理が、ブロック206まで繰
り返されて、図8に示したように、画像データ展開部5
2内に、4ブロック分のデータが揃った後に、画像デー
タ展開部521 は、内部に蓄積されたデータをラスタ単
位で、スイッチ51を介して外部に対して出力する処理
を開始する。Such processing is repeated up to the block 206, and as shown in FIG.
After 4 blocks of data have been collected in 2, the image data rasterizing unit 52 1 starts the process of outputting the internally stored data in raster units to the outside via the switch 51.
【0040】また、画像データ展開部521 に、ブロッ
ク206までのデータが入力された段階で、スイッチ5
4の切り替えが行われ、同様の手順で、ブロック410
ないし413に関する圧縮コードの伸張結果が、順次、
画像データ展開部522 に供給され、ブロック413ま
でのデータが内部に揃った段階で、画像データ展開部5
22 は、それらのデータをラスタ単位で、スイッチ51
を介して外部に対して出力する処理を開始する。そし
て、同様の処理が、ブロック1033まで繰り返される
ことによって、20ブロック分の出力が完了する。When the data up to the block 206 is input to the image data expansion unit 52 1 , the switch 5 is activated.
4 is performed, and block 410 is executed in the same procedure.
Through 413, the decompression result of the compressed code is
When the data up to the block 413 is supplied to the image data expansion unit 52 2 and is internally stored, the image data expansion unit 5
2 2 is a switch 51 for those data in raster units.
The process of outputting to the outside via the. Then, the same processing is repeated up to the block 1033, so that the output for 20 blocks is completed.
【0041】このように、実施例の画像データ圧縮・伸
張装置では、全てのデータに対して伸張処理を行わこと
なく、一領域分の画像が出力できるようになっている。As described above, the image data compression / decompression device of the embodiment is capable of outputting an image for one area without performing decompression processing on all data.
【0042】次に、図8に示した範囲の画像データ領域
400を、90度回転させて出力させる場合の動作を説
明する。Next, the operation when the image data area 400 in the range shown in FIG. 8 is rotated by 90 degrees and output is described.
【0043】この場合、画像データ領域400に含まれ
ている矩形ブロックのうち、最初に処理すべき矩形ブロ
ックは、ブロック206、413、620、827、1
033という5つのブロックでなるので、クリッピング
ローテートカウント回路60は、圧縮・伸張回路56
に、始めに、ブロック206に関する圧縮コードの伸張
処理を実行させ、次いで、ブロック413、620、8
27、1033に関する圧縮コードの伸張を実行させ
る。In this case, of the rectangular blocks included in the image data area 400, the rectangular blocks to be processed first are blocks 206, 413, 620, 827, and 1.
Since it is composed of 5 blocks 033, the clipping rotate count circuit 60 includes the compression / expansion circuit 56.
First to perform decompression processing of the compressed code for block 206, and then blocks 413, 620, 8
Decompress the compressed code for 27 and 1033.
【0044】各矩形ブロックに関する伸張結果は、図9
に示したように、90度回転用の展開方法300b に従
って、画像データ展開部52に書き込まれていき、画像
データ展開部52は、5ブロック分のデータが揃った段
階で、それらのデータのラスタ単位での出力を実行す
る。The decompression result for each rectangular block is shown in FIG.
As shown in FIG. 6, the image data is written in the image data developing unit 52 according to the 90-degree rotation developing method 300 b . Output in raster units.
【0045】そして、このような処理が、2つの画像デ
ータ展開部52を交互に使用して実行されて、90度回
転された20ブロック分の画像が出力されることにな
る。Then, such processing is executed by alternately using the two image data developing units 52, and the image of 20 blocks rotated by 90 degrees is output.
【0046】180度回転、270度回転出力時の動作
も同様のものであり、図11に示したように、180度
回転出力を行う際には、ブロック1033、1032、
1031、1030といった順で圧縮コードの伸張が行
われ、各伸張結果は、180度用の展開方法300c に
従って、画像データ展開部52に書き込まれていき、画
像データ展開部52に4ブロック分のデータが揃った段
階で、ラスタ単位の出力が開始される。The operation at the time of 180-degree rotation and 270-degree rotation output is the same, and as shown in FIG. 11, when performing 180-degree rotation output, blocks 1033, 1032,
The compressed code is decompressed in the order of 1031 and 1030, and each decompression result is written in the image data decompression unit 52 in accordance with the decompression method 300 c for 180 degrees, and the image data decompression unit 52 stores four blocks. When all the data are collected, output in raster units is started.
【0047】また、270度回転を行って出力させる場
合には、図12に示したように、ブロック1030、8
24、617、410、203といった順で圧縮コード
の伸張が行われ、各伸張結果は、270度用の展開方法
300d に従って、画像データ展開部52に書き込まれ
ていく。そして、画像データ展開部52は、5ブロック
分のデータが揃った段階で、ラスタ単位の出力を開始す
る。Further, in the case of performing the rotation by 270 degrees and outputting the data, as shown in FIG.
The compressed code is decompressed in the order of 24, 617, 410, 203, and each decompression result is written in the image data decompression unit 52 according to the decompression method 300 d for 270 degrees. Then, the image data rasterization unit 52 starts outputting in raster units when the data for 5 blocks are gathered.
【0048】このように、実施例の画像データ圧縮・伸
張装置では、圧縮コードが矩形ブロック単位で生成さ
れ、記憶されているため、必要とする矩形ブロックに関
する圧縮コードだけを読み出して伸張するといった処理
が行える。このため、従来の圧縮を行って画像データを
記憶する装置に比して、1部分だけの画像データを伸張
する処理や、1部分あるいは全部の画像データを回転さ
せつつ伸張するといった処理が高速に行えることにな
る。As described above, in the image data compression / expansion device of the embodiment, since the compression code is generated and stored in the unit of rectangular block, only the compression code relating to the required rectangular block is read and expanded. Can be done. Therefore, as compared with a conventional apparatus that stores image data by performing compression, a process of expanding image data of only one part or a process of expanding while rotating one or all image data is faster. You can do it.
【0049】変形例 Modification
【0050】実施例の画像データ圧縮・伸張装置は、2
つの画像データ展開部を交互に動作させる構成となって
いるが、1つ画像データ展開部だけを有するように装置
を構成しても、従来の装置よりは、平均的な動作速度が
早い装置を得ることができる。また、実施例の画像デー
タ圧縮・伸張装置では、1つのブロックを1次元として
扱って圧縮を行っているが、1つのブロックを2次元の
圧縮領域として、MR、MMR等の2次元圧縮を行うよ
うに装置を構成することもできる。The image data compression / decompression device of the embodiment is 2
Although the configuration is such that two image data rasterizing sections are operated alternately, even if the apparatus is configured to have only one image data rasterizing section, an apparatus having an average operating speed higher than that of the conventional apparatus can be used. Obtainable. Further, in the image data compression / decompression device of the embodiment, one block is treated as one-dimensional and compressed, but two-dimensional compression such as MR and MMR is performed using one block as a two-dimensional compressed area. The device can also be configured as follows.
【0051】また、圧縮・伸張回路として複数の方式に
よる圧縮が行えるものを用いるとともに、圧縮コードテ
ーブルに、各ブロックがどの圧縮方式により圧縮が行わ
れたものを示す属性情報の記憶領域を設けておけば、各
矩形ブロックから生成される圧縮コードの総量をさらに
小さいものとすることができるようになる。A compression / expansion circuit that can perform compression by a plurality of methods is used, and a storage area for attribute information indicating which compression method is used for each block is provided in the compression code table. In this case, the total amount of compressed code generated from each rectangular block can be further reduced.
【0052】たとえば、ハーフトーン画像などでは、圧
縮データの方が、元の画像データより大きくなってしま
うことがあるが、上記のように、矩形ブロック毎に圧縮
方法が選択できるように画像データ圧縮・伸張装置を構
成しておけば、ハーフトーン画像部分だけは、圧縮を行
わずに記憶させるといったことができることになり、そ
の結果として、画像データの記憶に必要とされる記憶容
量が低減できることになる。For example, in a halftone image or the like, the compressed data may be larger than the original image data. However, as described above, the image data is compressed so that the compression method can be selected for each rectangular block. -By configuring the decompression device, only the halftone image part can be stored without compression, and as a result, the storage capacity required for storing image data can be reduced. Become.
【0053】また、実施例の画像データ圧縮・伸張装置
は、画像データに対する回転処理だけが行えるものとし
て構成したが、画像データ展開部の動作内容を僅かに変
更するだけで、鏡像処理(ミラー)が行えるようにする
こともできる。Further, the image data compression / expansion apparatus of the embodiment is configured so that only the rotation processing for the image data can be carried out, but the mirror image processing (mirror) is performed only by slightly changing the operation contents of the image data expansion section. It can also be made possible.
【0054】[0054]
【発明の効果】以上説明したように、請求項1ないし請
求項3記載の発明では、圧縮コードが、矩形ブロック単
位で生成・記憶される構成となっているので、必要な圧
縮コードだけを読み出して伸張できることになり、その
結果として、1ページ分の画像の1領域だけを出力する
といった処理が高速に行えることになる。As described above, in the inventions according to claims 1 to 3, the compressed code is generated and stored in units of rectangular blocks, so that only the necessary compressed code is read out. As a result, the processing of outputting only one area of the image for one page can be performed at high speed.
【0055】また、請求項2記載の発明のように、各矩
形ブロックに対して、異なる圧縮方法による圧縮が行え
るように画像データ圧縮・伸張装置を構成した場合に
は、圧縮コードの格納に必要とされるメモリ容量を低減
することもできる。When the image data compression / expansion device is configured so that each rectangular block can be compressed by a different compression method as in the second aspect of the invention, it is necessary to store the compression code. It is also possible to reduce the required memory capacity.
【0056】そして、請求項3記載の発明のように、各
矩形ブロックに対して、回転処理を行う機能を付加した
場合には、回転処理用のメモリを使用することなく、画
像データの回転出力が行える画像データ圧縮・伸張装置
が得られることになる。When the function of performing rotation processing is added to each rectangular block as in the third aspect of the invention, the rotation output of image data is performed without using a memory for rotation processing. An image data compression / decompression device capable of performing the above is obtained.
【図1】 本発明の一実施例による画像データ圧縮・伸
張装置の構成を示すブロック図である。FIG. 1 is a block diagram showing a configuration of an image data compression / decompression device according to an embodiment of the present invention.
【図2】 実施例の画像データ圧縮・伸張装置による画
像データの矩形ブロックへの分割手順を示した説明図で
ある。FIG. 2 is an explanatory diagram showing a procedure of dividing image data into rectangular blocks by the image data compression / decompression device according to the embodiment.
【図3】 実施例の画像データ圧縮・伸張装置内に設け
られている画像データ展開部が、画像データ展開時に使
用する0度回転用、90度回転用展開方法の概要を示し
た説明図である。FIG. 3 is an explanatory diagram showing an outline of an expansion method for 0 ° rotation and 90 ° rotation used by an image data decompression unit provided in the image data compression / decompression device of the embodiment for image data decompression. is there.
【図4】 実施例の画像データ圧縮・伸張装置内に設け
られている画像データ展開部が、画像データ展開時に使
用する4種の展開方法の概要を示した説明図である。FIG. 4 is an explanatory diagram showing an outline of four types of decompression methods used by an image data decompression unit provided in the image data compression / decompression device according to the embodiment.
【図5】 実施例の画像データ圧縮・伸張装置内に設け
られているバイトパック&スワップの構成を示すブロッ
ク図である。FIG. 5 is a block diagram showing a configuration of a byte pack & swap provided in the image data compression / decompression device according to the embodiment.
【図6】 実施例の画像データ圧縮・伸張装置内に設け
られているバイトパック&スワップの動作の一例を示す
説明図である。FIG. 6 is an explanatory diagram showing an example of a byte pack & swap operation provided in the image data compression / decompression device of the embodiment.
【図7】 実施例の画像データ圧縮・伸張装置内に設け
られる圧縮コードバッファと圧縮コードテーブルとに記
憶される情報を模式的に示した説明図である。FIG. 7 is an explanatory diagram schematically showing information stored in a compression code buffer and a compression code table provided in the image data compression / decompression device of the embodiment.
【図8】 実施例の画像データ圧縮・伸張装置の動作を
説明するために用いた画像データの概要を示す説明図で
ある。FIG. 8 is an explanatory diagram showing an outline of image data used for explaining the operation of the image data compression / decompression device of the embodiment.
【図9】 実施例の画像データ圧縮・伸張装置におい
て、画像データの一領域の出力を行う際の画像データ圧
縮部の動作内容を示した説明図である。FIG. 9 is an explanatory diagram showing the operation content of the image data compression unit when outputting one area of image data in the image data compression / decompression device of the embodiment.
【図10】 実施例の画像データ圧縮・伸張装置におい
て、画像データの一領域を90度回転させて出力する際
の画像データ圧縮部の動作内容を示した説明図である。FIG. 10 is an explanatory diagram showing the operation content of the image data compression unit when rotating one region of image data by 90 degrees and outputting the image data in the image data compression / decompression device according to the embodiment.
【図11】 実施例の画像データ圧縮・伸張装置におい
て、画像データの一領域を180度回転させて出力する
際の画像データ圧縮部の動作内容を示した説明図であ
る。FIG. 11 is an explanatory diagram showing the operation content of the image data compression unit when rotating one region of image data by 180 degrees and outputting the image data in the image data compression / decompression device of the embodiment.
【図12】 実施例の画像データ圧縮・伸張装置におい
て、画像データの一領域を270度回転させて出力する
際の画像データ圧縮部の動作内容を示した説明図であ
る。FIG. 12 is an explanatory diagram showing the operation content of the image data compression unit when rotating one region of image data by 270 degrees and outputting the image data in the image data compression / decompression device according to the embodiment.
51、53…スイッチ、52…画像データ展開部、55
…バイトパック&スワップ、56…圧縮・伸張回路、5
7…圧縮コードバッファ、58…圧縮コードテーブル、
59…ブロックスキャン発生器、60…クリッピングロ
ーテートカウント回路51, 53 ... Switch, 52 ... Image data expansion section, 55
… Byte pack & swap, 56… Compression / expansion circuit, 5
7 ... compressed code buffer, 58 ... compressed code table,
59 ... Block scan generator, 60 ... Clipping rotate count circuit
Claims (3)
分の画像データを、n画素×n画素分の画像データを1
単位とした複数個の矩形ブロックに分割するとともに、
各矩形ブロックに前記a画素×b画素分の画像データ内
での位置を示すブロック位置情報を割り当てる分割・割
当手段と、 この分割手段によって分割された各矩形ブロック内のn
画素×n画素分の画像データを、所定の規則に従って、
1ライン分のデータ列に変換するとともに、変換したデ
ータ列を圧縮して圧縮コードを生成する圧縮手段と、 この圧縮手段によって生成された圧縮コードを記憶する
圧縮コード記憶手段と、 この圧縮コード記憶手段に記憶された各圧縮コードの記
憶位置を示す記憶位置情報と、各圧縮コードの元となっ
た矩形ブロックに対して前記分割・割当手段によって割
り当てられているブロック位置情報との対応関係を記憶
する対応関係記憶手段と、 出力を行う画像データの範囲を指定する範囲指定手段
と、 この範囲指定手段で指定された範囲の画像データに対応
する前記矩形ブロックの前記ブロック位置情報を求め、
求めたブロック位置情報と前記対応関係記憶手段に記憶
された対応関係を基に、各矩形ブロックに関する圧縮コ
ードに対する記憶位置情報を特定する特定手段と、 前記圧縮コード記憶手段から、前記特定手段で特定され
た記憶位置情報に応じた記憶位置に記憶された各圧縮コ
ードを読みだして伸張する伸張手段と、 この伸張手段の伸張結果に対して、前記所定の規則によ
る変換の逆変換を施すことによって作成したn画素×n
画素分の画像データを、その元となった矩形ブロックの
ブロック位置情報に応じて並べて、ラスタ形式の画像デ
ータとして出力する出力手段とを具備することを特徴と
する画像データ圧縮・伸張装置。1. Image data for a pixels × b pixels, which is input in a raster format, and image data for n pixels × n pixels is 1
While dividing into a plurality of rectangular blocks as a unit,
Dividing / assigning means for allocating block position information indicating a position in the image data of a pixels × b pixels to each rectangular block, and n in each rectangular block divided by this dividing means.
The image data of pixels × n pixels is converted according to a predetermined rule.
A compression unit that converts the data string for one line and compresses the converted data string to generate a compression code, a compression code storage unit that stores the compression code generated by the compression unit, and a compression code storage unit. The correspondence relationship between the storage position information indicating the storage position of each compressed code stored in the means and the block position information assigned by the dividing / assigning means to the rectangular block that is the source of each compressed code is stored. Corresponding correspondence storage means, range specifying means for specifying the range of image data to be output, and the block position information of the rectangular block corresponding to the image data in the range specified by the range specifying means,
Based on the obtained block position information and the correspondence relationship stored in the correspondence relationship storage means, specifying means for specifying storage position information for the compressed code for each rectangular block, and from the compression code storage means by the specifying means Decompressing means for decompressing and decompressing each compressed code stored in the memory location corresponding to the stored memory location information, and decompressing the decompressed result of this decompressing means by performing inverse conversion of conversion according to the predetermined rule. Created n pixels x n
An image data compression / expansion device, comprising: an output unit configured to arrange image data for pixels in accordance with block position information of a rectangular block which is a source of the image data and output the image data in a raster format.
分の画像データを、n画素×n画素分の画像データを1
単位とした複数個の矩形ブロックに分割するとともに、
各矩形ブロックに前記a画素×b画素分の画像データ内
での位置を示すブロック位置情報を割り当てる分割・割
当手段と、 この分割手段によって分割された各矩形ブロック内のn
画素×n画素分の画像データを、所定の規則に従って、
1ライン分のデータ列に変換するとともに、変換したデ
ータ列を、幾つかの圧縮方法から択一的に選択された圧
縮方法を用いて圧縮して圧縮コードを生成する圧縮手段
と、 この圧縮手段によって生成された圧縮コードを記憶する
圧縮コード記憶手段と、 この圧縮コード記憶手段に記憶された各圧縮コードの記
憶位置を示す記憶位置情報と、各圧縮コードの生成の際
に用いられた圧縮方法を識別するための情報である圧縮
属性と、各圧縮コードの元となった矩形ブロックに対し
て前記分割・割当手段によって割り当てられているブロ
ック位置情報との対応関係を記憶する対応関係記憶手段
と、 出力を行う画像データの範囲を指定する範囲指定手段
と、 この範囲指定手段で指定された範囲の画像データに対応
する前記矩形ブロックの前記ブロック位置情報を求め、
求めたブロック位置情報と前記対応関係記憶手段に記憶
された対応関係を基に、各矩形ブロックに関する圧縮コ
ードに対する記憶位置情報と圧縮属性とを特定する特定
手段と、 前記圧縮コード記憶手段から、前記特定手段で特定され
た記憶位置情報に応じた記憶位置に記憶された各圧縮コ
ードを読みだして、読みだした圧縮コードを前記特定手
段で特定された圧縮属性に応じて伸張する伸張手段と、 この伸張手段の伸張結果に対して、前記所定の規則によ
る変換の逆変換を施すことによって作成したn画素×n
画素分の画像データを、その元となった矩形ブロックの
ブロック位置情報に応じて並べて、ラスタ形式の画像デ
ータとして出力する出力手段とを具備することを特徴と
する画像データ圧縮・伸張装置。2. Image data for a pixels × b pixels input in a raster format, and image data for n pixels × n pixels is 1
While dividing into a plurality of rectangular blocks as a unit,
Dividing / assigning means for allocating block position information indicating a position in the image data of a pixels × b pixels to each rectangular block, and n in each rectangular block divided by this dividing means.
The image data of pixels × n pixels is converted according to a predetermined rule.
A compression unit for converting the data string into one line and compressing the converted data string using a compression method selected from several compression methods to generate a compression code, and the compression unit. Compression code storage means for storing the compressed code generated by the compression code storage means, storage location information indicating the storage location of each compression code stored in the compression code storage means, and the compression method used when generating each compression code. And a correspondence storage unit that stores the correspondence between the compression attribute that is information for identifying the block and the block position information that is assigned to the rectangular block that is the source of each compression code by the dividing / assigning unit. , Range specifying means for specifying a range of image data to be output, and the block of the rectangular block corresponding to the image data in the range specified by the range specifying means. Seek position information,
Based on the obtained block position information and the correspondence relationship stored in the correspondence relationship storage means, specifying means for specifying the storage position information and the compression attribute for the compression code for each rectangular block, and from the compression code storage means, Decompression means for reading each compression code stored in the storage position corresponding to the storage position information specified by the specifying means, and expanding the read compression code in accordance with the compression attribute specified by the specifying means, The decompression result of the decompression means is subjected to an inverse conversion of the conversion according to the predetermined rule to create n pixels × n.
An image data compression / expansion device, comprising: an output unit configured to arrange image data for pixels in accordance with block position information of a rectangular block which is a source of the image data and output the image data in a raster format.
分の画像データを、n画素×n画素分の画像データを1
単位とした複数個の矩形ブロックに分割するとともに、
各矩形ブロックに前記a画素×b画素分の画像データ内
での位置を示すブロック位置情報を割り当てる分割・割
当手段と、 この分割手段によって分割された各矩形ブロック内のn
画素×n画素分の画像データを、所定の規則に従って、
1ライン分のデータ列に変換するとともに、変換したデ
ータ列を圧縮して圧縮コードを生成する圧縮手段と、 この圧縮手段によって生成された圧縮コードを記憶する
圧縮コード記憶手段と、 この圧縮コード記憶手段に記憶された各圧縮コードの記
憶位置を示す記憶位置情報と、各圧縮コードの元となっ
た矩形ブロックに対して前記分割・割当手段によって割
り当てられているブロック位置情報との対応関係を記憶
する対応関係記憶手段と、 出力を行う画像データの範囲と出力時に回転させる角度
とを指定する範囲・角度指定手段と、 この範囲・角度指定手段で指定された範囲の画像データ
に対応する前記矩形ブロックの前記ブロック位置情報を
求め、求めたブロック位置情報と前記対応関係記憶手段
に記憶された対応関係を基に、各矩形ブロックに関する
圧縮コードに対する記憶位置情報を特定する特定手段
と、 前記圧縮コード記憶手段から、前記特定手段で特定され
た記憶位置情報に応じた記憶位置に記憶された各圧縮コ
ードを読みだして伸張する伸張手段と、 この伸張手段の伸張結果に対して、前記所定の規則によ
る変換の逆変換を施すことによって作成したn画素×n
画素分の画像データに前記範囲・角度指定手段によって
指定された角度の回転を施し、回転を施した画像データ
を、その元となった矩形ブロックのブロック位置情報に
応じて並べて、ラスタ形式の画像データとして出力する
出力手段とを具備することを特徴とする画像データ圧縮
・伸張装置。3. Image data for a pixels × b pixels, which is input in a raster format, and image data for n pixels × n pixels is 1
While dividing into a plurality of rectangular blocks as a unit,
Dividing / assigning means for allocating block position information indicating a position in the image data of a pixels × b pixels to each rectangular block, and n in each rectangular block divided by this dividing means.
The image data of pixels × n pixels is converted according to a predetermined rule.
A compression unit that converts the data string for one line and compresses the converted data string to generate a compression code, a compression code storage unit that stores the compression code generated by the compression unit, and a compression code storage unit. The correspondence relationship between the storage position information indicating the storage position of each compressed code stored in the means and the block position information assigned by the dividing / assigning means to the rectangular block that is the source of each compressed code is stored. Corresponding correspondence storage means, a range / angle designating means for designating a range of image data to be output and an angle to be rotated at the time of output, and the rectangle corresponding to the image data in the range designated by the range / angle designating means. The block position information of the block is obtained, and each rectangular block is calculated based on the obtained block position information and the correspondence relationship stored in the correspondence relationship storage means. Specifying means for specifying storage position information for the compressed code relating to the lock; and reading and expanding each compression code stored in the storage position corresponding to the storage position information specified by the specifying means from the compression code storage means. Decompression means and n pixels × n created by subjecting the decompression result of this decompression means to inverse conversion of the conversion according to the predetermined rule.
Image data in pixels is rotated by the angle designated by the range / angle designating means, and the rotated image data is arranged in accordance with the block position information of the original rectangular block to form a raster format image. An image data compression / decompression device, comprising: an output unit for outputting as data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11959995A JPH08317225A (en) | 1995-05-18 | 1995-05-18 | Image data compression and expansion device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11959995A JPH08317225A (en) | 1995-05-18 | 1995-05-18 | Image data compression and expansion device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08317225A true JPH08317225A (en) | 1996-11-29 |
Family
ID=14765384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11959995A Pending JPH08317225A (en) | 1995-05-18 | 1995-05-18 | Image data compression and expansion device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08317225A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7352494B2 (en) | 2002-06-28 | 2008-04-01 | Matsushita Electric Industrial Co., Ltd. | Pixel block data generating device and pixel block data generating method |
US7734103B2 (en) | 2005-08-04 | 2010-06-08 | Ricoh Company, Ltd. | Image processing apparatus and image processing method |
US7742199B2 (en) | 2004-10-06 | 2010-06-22 | Kabushiki Kaisha Toshiba | System and method for compressing and rotating image data |
US8384972B2 (en) * | 2001-01-24 | 2013-02-26 | Canon Kabushiki Kaisha | Image input/output control apparatus, image processing apparatus, image processing method, data communication apparatus, and data communication method |
US8587807B2 (en) | 2008-11-05 | 2013-11-19 | Seiko Epson Corporation | Image processing apparatus with mechanism for rotating image |
US8817346B2 (en) | 2010-03-18 | 2014-08-26 | Ricoh Company, Limited | Image processing apparatus, image processing method, and image forming apparatus for reading code data rotated at 180 degrees |
-
1995
- 1995-05-18 JP JP11959995A patent/JPH08317225A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8384972B2 (en) * | 2001-01-24 | 2013-02-26 | Canon Kabushiki Kaisha | Image input/output control apparatus, image processing apparatus, image processing method, data communication apparatus, and data communication method |
US7352494B2 (en) | 2002-06-28 | 2008-04-01 | Matsushita Electric Industrial Co., Ltd. | Pixel block data generating device and pixel block data generating method |
US7742199B2 (en) | 2004-10-06 | 2010-06-22 | Kabushiki Kaisha Toshiba | System and method for compressing and rotating image data |
US7734103B2 (en) | 2005-08-04 | 2010-06-08 | Ricoh Company, Ltd. | Image processing apparatus and image processing method |
US8587807B2 (en) | 2008-11-05 | 2013-11-19 | Seiko Epson Corporation | Image processing apparatus with mechanism for rotating image |
US8817346B2 (en) | 2010-03-18 | 2014-08-26 | Ricoh Company, Limited | Image processing apparatus, image processing method, and image forming apparatus for reading code data rotated at 180 degrees |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4124871A (en) | Image data resolution change apparatus and process utilizing boundary compression coding of objects | |
JP2922680B2 (en) | Compressed image storage method for high-resolution computer graphics | |
JPH02288984A (en) | Bit map changing method | |
JPH08317225A (en) | Image data compression and expansion device | |
JPH08194812A (en) | Picture processor | |
JP3023215B2 (en) | Image processing device | |
JPH09331434A (en) | Image forming device | |
JP3559419B2 (en) | Method and apparatus for decompressing compressed image data | |
JP2001169120A (en) | Method, device, and system for image processing | |
JP3690102B2 (en) | Image processing apparatus and image processing method | |
JP3520166B2 (en) | Image processing device | |
JP3292574B2 (en) | Image processing apparatus and image processing method using the apparatus | |
JPH01130957A (en) | Character controlling apparatus | |
JPH06113145A (en) | Image processor | |
JPH06291987A (en) | Picture output device | |
JP2945553B2 (en) | High-speed restoration of image data | |
JP3757297B2 (en) | Printing device | |
JP3436656B2 (en) | Print processing system | |
WO1996031974A1 (en) | Signal processor | |
JPH05304613A (en) | Compressing/expanding method and device for picture data | |
JPH0774923A (en) | Image output device | |
JPH0239380A (en) | Image processor | |
JP3702675B2 (en) | Image processing apparatus and image processing method | |
JPH10181117A (en) | Image processing device and control method | |
JPH09138677A (en) | Character data storage device and character output device |