JPH10200757A - Image processing unit, its method, and image processing system - Google Patents

Image processing unit, its method, and image processing system

Info

Publication number
JPH10200757A
JPH10200757A JP210097A JP210097A JPH10200757A JP H10200757 A JPH10200757 A JP H10200757A JP 210097 A JP210097 A JP 210097A JP 210097 A JP210097 A JP 210097A JP H10200757 A JPH10200757 A JP H10200757A
Authority
JP
Japan
Prior art keywords
image data
image
image processing
color
unit
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
Application number
JP210097A
Other languages
Japanese (ja)
Inventor
Atsuyuki Shoji
篤之 庄司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP210097A priority Critical patent/JPH10200757A/en
Publication of JPH10200757A publication Critical patent/JPH10200757A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To attain the compression by which decoding with a higher compression rate, at a higher speed, at a lower cost and with high quality is attained in the case of compressing multi-value image data. SOLUTION: A difference value calculation section 200 assigns a code in response to a frequency of incidence to a difference value between each picture element of multi-value image data and its preceding picture element so as to code the data and the result is stored in a page memory 100. Then a density value calculation section 400 decodes sequentially code data in the page memory 100 and integrates obtained differences to decode the multi-value image data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は画像処理装置及びそ
の方法及び画像処理システムに関し、例えば多値画像情
報を格納保持、あるいは転送する画像処理装置及びその
方法及び画像処理システムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image processing apparatus, an image processing method, and an image processing system, for example, an image processing apparatus for storing, transferring, or transferring multi-valued image information, and a method and an image processing system.

【0002】[0002]

【従来の技術】一般にレーザプリンタ等の画像処理装置
は、該装置自身にひとつのコンピュータを内蔵してい
る。そして、ホストコンピュータ等の外部機器と通信を
行い、ホストコンピュータ側からコマンドや印刷データ
等を受け取って、画像処理装置内部のビットマップメモ
リ上に描画展開を行って印刷出力を行う。
2. Description of the Related Art Generally, an image processing apparatus such as a laser printer has one computer built therein. The image processing apparatus communicates with an external device such as a host computer, receives commands and print data from the host computer, performs drawing development on a bitmap memory inside the image processing apparatus, and performs print output.

【0003】近年の画像処理装置においては、より高い
印刷品質の要求に伴って、出力解像度の向上や、カラー
化等の高機能化が実施されてきている。
In recent image processing apparatuses, improvements in output resolution and advanced functions such as colorization have been implemented in accordance with the demand for higher print quality.

【0004】また、文字以外に階調を伴った画像の形成
・出力も要求されるようになってきた。これに伴い、画
像処理装置内における出力画像情報の格納形態として、
従来は各画素の情報を印字/非印字の2値として蓄える
方式で十分であったものが、一画素毎に階調性を持たせ
て、多値の階調情報として蓄える必要が生じてきた。こ
のために、一画素に必要な記憶容量が飛躍的に増加し、
全体としても膨大な容量分の記憶素子が必要となってき
ている。
[0004] Further, formation and output of an image with gradation other than characters have been required. Along with this, as a storage form of output image information in the image processing device,
Conventionally, a method of storing the information of each pixel as a binary value of printing / non-printing was sufficient. However, it has become necessary to provide gradation for each pixel and store it as multi-valued gradation information. . For this reason, the storage capacity required for one pixel increases dramatically,
As a whole, a storage element for an enormous capacity is required.

【0005】従って、多階調記録を行う画像処理装置
は、画像形成部において膨大な容量分の記憶素子を必要
とするために高価なものとなってしまう。
Therefore, an image processing apparatus that performs multi-tone printing requires an enormous amount of storage elements in the image forming section, and is therefore expensive.

【0006】そこで、多階調記録を行う画像処理装置を
低価格で実現するためには、階調数や解像度を落とすこ
とによって所要メモリ量を下げることが考えられるが、
これでは出力画像の画質が劣化してしまう。
In order to realize an image processing apparatus that performs multi-tone printing at low cost, it is conceivable to reduce the required memory amount by reducing the number of tones and resolution.
This degrades the image quality of the output image.

【0007】従って、画像処理装置の低価格化を画質を
維持しつつ実現するためには、限られたメモリを効率的
に使用するための省メモリ技術が必要となる。
[0007] Therefore, in order to reduce the price of the image processing apparatus while maintaining the image quality, a memory saving technique for efficiently using a limited memory is required.

【0008】省メモリ技術の一つとして、画像データの
圧縮技術が知られている。圧縮技術を用いることによっ
て、例えば即座に使用されない画像データを圧縮形式で
格納することにより、該画像データによるメモリの占有
量を低減させることができる。そして、このように圧縮
格納された画像データは、必要に応じて伸張されること
により、元の形式に戻されて使用される。
As one of the memory-saving techniques, a technique for compressing image data is known. By using a compression technique, for example, by storing image data that is not used immediately in a compressed format, the occupation amount of the memory by the image data can be reduced. Then, the image data compressed and stored in this way is returned to the original format by being expanded as necessary, and used.

【0009】また、カラー画像処理機能を備えた画像処
理装置の普及も目覚ましい。このようなカラー画像処理
を行う画像処理装置においては、多種多様なカラー画像
処理方式が採用されている。画像処理方式の多くは、複
数色の色素顔料を個別に格納しており、記録媒体上への
画像形成時に、該複数色の色素顔料の重畳比率を変える
ことによって、任意色を表現している。
[0009] The spread of image processing apparatuses having a color image processing function has been remarkable. In an image processing apparatus that performs such color image processing, various color image processing methods are employed. Many image processing methods individually store a plurality of color pigments, and express an arbitrary color by changing the overlapping ratio of the plurality of color pigments when forming an image on a recording medium. .

【0010】従って、モノクロ画像処理の場合には、装
置内に画像データを格納する際に、1ドットの記録の有
無のみを管理すれば良かったのに対し、カラー画像処理
を行う場合には、複数色の画像イメージ、及び各色毎の
階調情報を格納する必要がある。従って、カラー画像処
理を行う画像処理装置においては、例えば1画素を各色
共に8ビットで表現する場合、画像データ格納に要する
メモリ容量として、モノクロ2値の場合の約30倍が必
要となる。
Accordingly, in the case of monochrome image processing, it is sufficient to manage only the presence or absence of one dot when storing image data in the apparatus. On the other hand, in the case of performing color image processing, It is necessary to store image images of a plurality of colors and gradation information for each color. Therefore, in an image processing apparatus that performs color image processing, for example, when one pixel is represented by 8 bits for each color, a memory capacity required for storing image data needs to be about 30 times that of a monochrome binary image.

【0011】このように、複数の原色色素を重畳して任
意色を表現する画像処理装置は、記録媒体上に色素を置
く手順によって、構成上分類される。大別すると、一画
素ないしは小領域毎に、各色素顔料を順次重ねていく逐
次方式と、記録媒体全体にまず特定の色素顔料を置き、
色順次で各色素顔料を重ねて行く面順次方式とに分けら
れる。逐次方式を採用する画像処理装置の具体例として
は、インクジェットプリンタ、ドットインパクトプリン
タ、インクリボン方式の昇華型プリンタ等が挙げられ、
面順次方式を採用する画像処理装置の具体例としては、
通常の印刷機、電子写真方式のプリンタ、フィルムシー
ト方式の昇華型プリンタ等に代表される。
As described above, an image processing apparatus that expresses an arbitrary color by superimposing a plurality of primary color dyes is classified in terms of configuration according to a procedure of placing a dye on a recording medium. When roughly classified, one pixel or a small area, for each pixel color pigment is sequentially stacked, and first, a specific pigment pigment is placed on the entire recording medium,
Each of the color pigments is superimposed in a color sequential manner, and is classified into a plane sequential method. Specific examples of the image processing apparatus employing the sequential method include an ink jet printer, a dot impact printer, an ink ribbon type sublimation printer, and the like.
As a specific example of the image processing apparatus adopting the frame sequential method,
Typical printing machines, electrophotographic printers, film sheet type sublimation printers, and the like.

【0012】一般に、逐次処理方式による画像処理装置
よりも面順次方式による画像処理装置の方がコスト高と
なる。これは即ち、面順次方式の方が、各色毎の格納す
べき画像データ量がはるかに大きいからである。従っ
て、特に面順次方式の多値カラー画像処理装置において
は、画像データを格納するために膨大なメモリ容量を必
要とする。
In general, the cost of an image processing apparatus of the frame sequential method is higher than that of an image processing apparatus of the sequential processing method. This is because the frame sequential method requires a much larger amount of image data to be stored for each color. Therefore, in particular, a multivalued color image processing apparatus of the frame sequential type requires a huge memory capacity for storing image data.

【0013】従って、特に面順次処理を行う多値カラー
画像処理装置においては、様々な省メモリ機構を備える
ことによって、コスト低減が図られている。代表的な省
メモリ機構として、やはり画像データの圧縮を行う圧縮
機構が知られている。該圧縮機構によって該圧縮データ
を格納することによって、使用メモリ量を削減してい
た。同時に、画像形成の際に該圧縮データを参照するた
めに、伸張を行う伸張機構も備えていた。
Therefore, in a multi-valued color image processing apparatus which performs frame sequential processing, the cost is reduced by providing various memory saving mechanisms. As a typical memory saving mechanism, a compression mechanism for compressing image data is also known. Storing the compressed data by the compression mechanism reduces the amount of memory used. At the same time, a decompression mechanism for decompression is provided to refer to the compressed data at the time of image formation.

【0014】また、ホストコンピュータ等の外部装置か
らデジタル形式の画像データを受信してカラー多値画像
を形成し、記録媒体上に出力するような画像処理装置に
おいては、処理対象となる画像データとして、文字コー
ドやグラフィックス描画の出力コマンドよりも、ビット
マップ等のイメージ情報が転送されてくる場合が多い。
従って、ホストコンピュータから転送される画像データ
量も膨大となるため、モノクロの場合よりも転送時間が
かかってしまい、操作性が悪化する。
In an image processing apparatus which receives digital image data from an external device such as a host computer to form a color multi-valued image and outputs it on a recording medium, the image data to be processed is In many cases, image information such as a bitmap is transferred rather than a character code or a graphics drawing output command.
Therefore, since the amount of image data transferred from the host computer is enormous, the transfer time is longer than in the case of monochrome, and the operability is deteriorated.

【0015】尚、従来のカラー多値画像処理装置におい
ては、たとえ同じ画像形成機構を備えていても、微妙な
発色は装置によって異なる。従って、微妙な色調整処理
は、個々の装置側において行った方が、ホストコンピュ
ータ側におけるデータ送出のアルゴリズムを共通化でき
る。
Incidentally, in the conventional color multi-value image processing apparatus, even if the same image forming mechanism is provided, the delicate color development differs depending on the apparatus. Therefore, when the subtle color adjustment processing is performed on each device side, the data transmission algorithm on the host computer side can be shared.

【0016】例えば、ホストコンピュータ側における原
画像データは多値であるが、画像処理装置の印刷部は2
値記録を行う構成である場合には、ホストコンピュータ
側で多値画像データを2値化して、画像処理装置側に2
値データを転送した方が、転送時間は短くなる。しかし
ながら、ホストコンピュータ側のプリンタドライバにお
いて、転送先の画像処理装置の色再現性に応じて適切に
調整して2値化することは困難である。従って実際に
は、最適な発色バランス調整を行うために、ホストコン
ピュータから画像処理装置へ多値データを転送し、画像
処理装置側において、自身の色再現特性に応じた調整を
行うことが多い。
For example, while the original image data on the host computer side is multi-valued, the printing unit of the image processing apparatus has two values.
In the case of a configuration in which value recording is performed, the multivalued image data is binarized on the host computer side, and the binary
The transfer time is shorter when the value data is transferred. However, it is difficult for the printer driver on the host computer side to appropriately adjust and binarize according to the color reproducibility of the image processing apparatus of the transfer destination. Therefore, in practice, in order to perform optimal color balance adjustment, multivalued data is transferred from the host computer to the image processing apparatus, and the image processing apparatus often makes adjustments according to its own color reproduction characteristics.

【0017】このように、原画像データが多値である場
合、転送データも多値となってしまうため、どうしても
転送時間が長くなっていた。従って、ホストコンピュー
タにおいて画像データの圧縮を行うことが有効である。
転送すべき画像データを圧縮してデータ量を削減するこ
とにより、転送時間の短縮を図ることができる。
As described above, when the original image data is multi-valued, the transfer data also becomes multi-valued, so that the transfer time is inevitably long. Therefore, it is effective to compress the image data in the host computer.
By compressing the image data to be transferred and reducing the data amount, the transfer time can be reduced.

【0018】以上のように、従来の画像処理装置におい
て画像データの圧縮技術は欠かせないものとなってい
る。
As described above, in the conventional image processing apparatus, the technique of compressing image data is indispensable.

【0019】[0019]

【発明が解決しようとする課題】しかしながら、上記従
来の画像処理装置において画像データの圧縮技術を適用
する場合、例えばページメモリに保持される画像情報の
様に、書き換えが頻繁に行われる情報を圧縮して保存す
ると、圧縮及び伸長に要する演算時間が長くなってしま
い、印刷出力までの画像生成時間も非常に長くなってし
まう。
However, when applying the image data compression technique to the above-mentioned conventional image processing apparatus, information which is frequently rewritten, such as image information held in a page memory, is compressed. If the data is saved, the calculation time required for compression and decompression becomes long, and the image generation time until print output becomes very long.

【0020】また、メモリ上において圧縮データを格納
するための領域と、画像イメージを生成展開するための
領域とを別個に用意する必要があるため、省メモリ効果
はさほど上がらない。
Further, since it is necessary to separately prepare an area for storing the compressed data and an area for generating and expanding the image on the memory, the memory saving effect is not significantly improved.

【0021】また、圧縮の手法として、原画像情報の一
部を切り捨てることによってより高い圧縮効果を安定し
て得る方法がある。この方法によれば、さらなる省メモ
リ効果が得られるが、出力画像品質に影響を及ぼすよう
な劣化は望ましくない。
As a compression technique, there is a method of stably obtaining a higher compression effect by truncating a part of the original image information. According to this method, a further memory saving effect can be obtained, but deterioration that affects the output image quality is undesirable.

【0022】本発明は上述した問題を解決するためにな
されたものであり、多値画像データに対して省メモリ効
果の高い圧縮を高速、かつ低コストに可能とする画像処
理装置及びその方法を提供することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problem, and an image processing apparatus and a method thereof capable of performing high-speed and low-cost compression with high memory saving effect on multi-valued image data are provided. The purpose is to provide.

【0023】また、カラー画像データの転送量を削減す
ることによって、画像データの転送時間を短縮可能な画
像処理システム及びその方法を提供することを目的とす
る。
It is another object of the present invention to provide an image processing system and method capable of reducing the transfer time of image data by reducing the transfer amount of color image data.

【0024】[0024]

【課題を解決するための手段】上述した目的を達成する
ための一手段として、本発明の画像処理装置は以下の構
成を備える。
As one means for achieving the above object, the image processing apparatus of the present invention has the following arrangement.

【0025】即ち、多値画像データを入力する入力手段
と、前記入力手段により入力された多値画像データ、お
よび、その予測値との差分値を符号化する符号化手段
と、前記符号化手段による符号データを保持する保持手
段と、前記保持手段に保持された符号データを復号して
多値画像データを復元する復元手段と、前記復元手段に
より復元された多値画像データを所定の画像形成手段へ
出力する出力手段と、を有することを特徴とする。
That is, input means for inputting multi-valued image data, coding means for coding multi-valued image data input by the input means, and a difference value between the predicted value and the multi-valued image data, and the coding means Holding means for holding the code data by the decoding means, decoding means for decoding the code data held by the holding means to restore multi-valued image data, and forming the multi-valued image data restored by the Output means for outputting to the means.

【0026】また、上述した目的を達成するために、本
発明の画像処理システムは以下の構成を備える。
Further, in order to achieve the above object, the image processing system of the present invention has the following arrangement.

【0027】即ち、外部装置と画像処理装置とが接続さ
れた画像処理システムであって、外部装置側において、
多値画像データの差分値情報を算出する差分値算出手段
と、前記算出された差分値情報を符号化する符号化手段
と、前記符号化された画像データを送信する送信手段と
を有し、画像処理装置側において、符号化された画像デ
ータを受信する受信手段と、前記受信した画像データを
復号して差分値情報を得る復号手段と、前記復号された
差分値情報に基づいて画像データを復元する復元手段
と、前記復元された画像データに基づいて画像を形成す
る画像形成手段とを有することを特徴とする。
That is, in an image processing system in which an external device and an image processing device are connected,
Difference value calculation means for calculating difference value information of multi-valued image data, encoding means for encoding the calculated difference value information, and transmission means for transmitting the encoded image data, On the image processing device side, receiving means for receiving the encoded image data, decoding means for decoding the received image data to obtain difference value information, and image data based on the decoded difference value information. The image processing apparatus further includes a restoration unit for restoring, and an image forming unit for forming an image based on the restored image data.

【0028】[0028]

【発明の実施の形態】以下、本発明に係る一実施形態に
ついて図面を参照して詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment according to the present invention will be described below in detail with reference to the drawings.

【0029】<第1実施形態>図1は本実施例が適用さ
れる画像処理装置であるレーザビームプリンタ(LB
P)1000の内部構造を示す断面図で、このLBP1
000は不図示のデータ源(ホストコンピュータ等)か
ら文字パターンの登録や定型書式(フォームデータ)等
の登録が行えるように構成されている。
<First Embodiment> FIG. 1 shows a laser beam printer (LB) as an image processing apparatus to which this embodiment is applied.
P) is a cross-sectional view showing the internal structure of 1000,
Reference numeral 000 is configured to allow registration of a character pattern and registration of a fixed format (form data) from a data source (not shown) (a host computer or the like).

【0030】図1において、1000はLBP本体を示
し、外部に接続されているホストコンピュータ等から入
力I/F1013を介して供給されるイメージデータを
始め、文字情報(文字コード)やフォーム情報或いはマ
クロ命令等を入力して記憶するとともに、それらの情報
に従って対応する文字パターンやフォームパターン等を
作成し、記録媒体である記録紙上に像を形成する。以
降、LBP1000において画像形成対象となる情報を
総じて画像情報と称する。
In FIG. 1, reference numeral 1000 denotes an LBP main body, including image data supplied from an externally connected host computer or the like via an input I / F 1013, character information (character code), form information, or a macro. A command or the like is input and stored, and a corresponding character pattern, form pattern, or the like is created according to the information, and an image is formed on a recording sheet as a recording medium. Hereinafter, information to be subjected to image formation in the LBP 1000 is generally referred to as image information.

【0031】1012は操作のための各種スイッチ及び
LED表示器等が配されている操作パネル、1001は
LBP1000全体の制御及びホストコンピュータから
供給される文字情報等を解析する他、本実施形態の特徴
である画像データの圧縮処理を実行するプリンタ制御ユ
ニットである。このプリンタ制御ユニット1001は、
例えば文字情報を対応する文字パターンの画像信号に変
換してレーザドライバ1002に出力する。
Reference numeral 1012 denotes an operation panel on which various switches and LED indicators for operation are arranged. Reference numeral 1001 denotes control of the entire LBP 1000 and analysis of character information supplied from the host computer. Is a printer control unit that executes compression processing of image data. This printer control unit 1001
For example, character information is converted into an image signal of a corresponding character pattern and output to the laser driver 1002.

【0032】レーザドライバ1002は半導体レーザ1
003を駆動するための回路であり、入力されたビデオ
信号に応じて半導体レーザをオン・オフ切替している。
レーザ光1004は回転多面鏡1005で左右方向に振
られて静電ドラム1006上を走査する。これにより、
静電ドラム1006上には文字パターンの静電潜像が形
成される。この潜像は静電ドラム1006の周囲の現像
ユニット1007により現像された後、記録紙に転写さ
れる。この記録紙にはカットシートを用い、カセット記
録紙はLBP1000に装着した用紙カセットに収納さ
れ、給紙ローラ1009及び搬送ローラ1010と10
11とにより装置内に取り込まれて、静電ドラム100
6に供給される。
The laser driver 1002 is the semiconductor laser 1
003 is a circuit for driving the semiconductor laser on / off according to an input video signal.
The laser beam 1004 is swung right and left by the rotary polygon mirror 1005 to scan on the electrostatic drum 1006. This allows
An electrostatic latent image of a character pattern is formed on the electrostatic drum 1006. This latent image is developed by a developing unit 1007 around the electrostatic drum 1006 and then transferred to a recording sheet. A cut sheet is used as the recording paper, and the cassette recording paper is stored in a paper cassette mounted on the LBP1000, and is supplied with a paper feed roller 1009 and transport rollers 1010 and 1010.
11 and the electrostatic drum 100
6.

【0033】本実施形態においては、プリンタ制御ユニ
ット1001内において、画像データが圧縮されてペー
ジメモリに保持される。尚、本実施形態のLBP100
0においては、8ビットの階調表現を行うとする。
In this embodiment, image data is compressed and held in the page memory in the printer control unit 1001. Note that the LBP 100 of the present embodiment
At 0, 8-bit gradation expression is performed.

【0034】図2に、プリンタ制御ユニット1001に
おいて、特に本実施形態における圧縮処理を実現するた
めの基本構成のブロック図を示す。
FIG. 2 is a block diagram showing the basic configuration of the printer control unit 1001 for implementing the compression processing in this embodiment.

【0035】図2において、入力I/F1013を介し
て入力された画像データは、まず差分値算出部200に
おいて、各画素毎にその前画素との濃度値の差分情報が
算出される。算出された差分情報はページメモリ100
に格納されるが、この時、各画素毎にアドレス制御部3
00の制御に従ってページメモリ100上のアドレスが
決定される。
In FIG. 2, image data input via the input I / F 1013 is first calculated by a difference value calculation unit 200 for each pixel in the form of difference information of the density value from the previous pixel. The calculated difference information is stored in the page memory 100.
At this time, the address control unit 3
00, the address on the page memory 100 is determined.

【0036】又、1014はプリンタ部であり、上述し
た図1に示す構成において、レーザドライバ1002以
降の画像形成処理を行う構成を包括するものである。ペ
ージメモリ100に格納された差分値情報を読み出し
て、プリンタ部1014で画像形成を行う際には、濃度
値算出部400においてページメモリ100に格納され
た差分値情報より元の濃度値を再現してから、プリンタ
部1014に送出する。尚、ページメモリ100からの
差分値情報の読み出しは、アドレス制御部300によっ
て制御される。
Reference numeral 1014 denotes a printer unit, which includes a configuration for performing image forming processing after the laser driver 1002 in the configuration shown in FIG. When the difference value information stored in the page memory 100 is read and an image is formed by the printer unit 1014, the density value calculation unit 400 reproduces the original density value from the difference value information stored in the page memory 100. Then, it is sent to the printer unit 1014. The reading of the difference value information from the page memory 100 is controlled by the address control unit 300.

【0037】尚、例えば入力I/F1013より、ペー
ジメモリ100に既に格納されている画像データの一部
を書き換えるべく画像データが入力されてきた場合、ペ
ージメモリ100に既に格納されている差分情報の特定
領域のみを更新する必要がある。この場合、該アドレス
情報に基づいて濃度値算出部400においてページメモ
リ100から差分情報を読み出し、その濃度値を算出し
て差分値算出部200に渡す。これにより、差分値算出
部200において新たに格納すべき差分情報を得、ペー
ジメモリ100の当該アドレスの差分情報を更新するこ
とができる。
For example, when image data is input from the input I / F 1013 to rewrite a part of the image data already stored in the page memory 100, the difference information of the difference information already stored in the page memory 100 is input. Only specific areas need to be updated. In this case, the density value calculation unit 400 reads the difference information from the page memory 100 based on the address information, calculates the density value, and transfers the density value to the difference value calculation unit 200. Thereby, the difference information to be newly stored in the difference value calculation unit 200 can be obtained, and the difference information of the corresponding address in the page memory 100 can be updated.

【0038】又、500はCPUであり、プリンタ制御
ユニット1001内の各構成を、ROM600に保持さ
れた制御プログラムに従って統括的に制御する。700
はRAMであり、CPU500の作業領域として使用さ
れる。
Reference numeral 500 denotes a CPU, which controls the components in the printer control unit 1001 according to a control program stored in the ROM 600. 700
Is a RAM, which is used as a work area of the CPU 500.

【0039】このように本実施形態においては、生成画
像を展開するページメモリ100への画像データの圧縮
格納方式として、個々の画素情報は直接濃度値を表さ
ず、前画素との濃度値の差分情報として表現することを
特徴とする。
As described above, in the present embodiment, as a method of compressing and storing image data in the page memory 100 for expanding a generated image, individual pixel information does not directly represent a density value, It is characterized by being expressed as difference information.

【0040】本実施形態において1画素は8ビットで表
されるため、その取りうる濃度値は「0」〜「255」
である。従って、それに対する差分情報としては「±2
55」の範囲の値を取り得る。従って、差分を表現する
ためには符号を含めて9ビットが必要となる。しかしな
がら本実施形態では、演算時のオーバーフローを無視す
ることによって、符号範囲を濃度情報と同じ8ビットと
して扱える。即ち、本実施形態においては差分情報を2
の補数としてページメモリ100に格納することによっ
て、濃度算出部400において、差分値より濃度値を再
現する際のハードウェア上の減算機構及びデータ情報の
負数処理が不要になる。
In this embodiment, since one pixel is represented by 8 bits, possible density values are "0" to "255".
It is. Therefore, the difference information corresponding thereto is “± 2
55 ". Therefore, in order to express the difference, 9 bits including the sign are required. However, in the present embodiment, the code range can be treated as the same 8 bits as the density information by ignoring the overflow at the time of calculation. That is, in the present embodiment, the difference information is 2
Is stored in the page memory 100 as the complement of the above. In the density calculating section 400, a hardware subtraction mechanism and negative number processing of data information when reproducing a density value from a difference value are not required.

【0041】以下、濃度値算出部400において濃度値
を復元する処理について詳細に説明するが、説明の簡便
のため、その構成を3段階(図3,図4,図7)に分け
て順次説明する。尚、差分値算出部200の詳細構成に
ついては、濃度値算出部400の構成と対象をなす構成
となるため説明を省略する。
Hereinafter, the process of restoring the density value in the density value calculating section 400 will be described in detail. For the sake of simplicity, the configuration is described in three stages (FIGS. 3, 4, and 7). I do. The detailed configuration of the difference value calculation unit 200 is the same as the configuration of the density value calculation unit 400 and will not be described.

【0042】まず図3に、プリンタ部1014への画像
データ出力時に、差分情報から濃度情報を復元出力する
ための濃度値算出部400、及びアドレス制御部300
の詳細構成を示す。
First, FIG. 3 shows a density value calculating section 400 for restoring and outputting density information from difference information when outputting image data to the printer section 1014, and an address control section 300.
The detailed configuration of is shown.

【0043】図3において濃度値算出部400は、加算
器401、前画素の濃度値を保持するレジスタ402か
らなる。又、アドレス制御部300は、ページメモリ1
00の読み出しアドレスを決定するカウンタ301、濃
度値算出部400による加算のタイミングを制御する遅
延部302からなる。
In FIG. 3, the density value calculation unit 400 includes an adder 401 and a register 402 for holding the density value of the previous pixel. Further, the address control unit 300 controls the page memory 1
A counter 301 for determining a read address of 00 and a delay unit 302 for controlling the timing of addition by the density value calculation unit 400.

【0044】尚、図3においてアドレス制御部300へ
入力される制御信号501,502,503は、CPU
500より入力されるものである。
In FIG. 3, the control signals 501, 502 and 503 input to the address control unit 300 are
This is input from 500.

【0045】ページメモリ103には、既に画素毎の濃
度差分値が格納されている。以下、該差分値を読み出し
て画素毎の濃度値を復元し、印刷出力する動作、即ち、
濃度読み出し動作について説明する。
The page memory 103 already stores a density difference value for each pixel. Hereinafter, the operation of reading the difference value, restoring the density value of each pixel, and printing out, that is,
The density reading operation will be described.

【0046】まず、プリンタ制御ユニット1001とプ
リンタ部1014とのタイミングを調整するための不図
示のタイミング調停部によって、プリンタ部1014へ
のデータ送出タイミングが決定される。すると、アドレ
ス制御部300のカウンタ301に、CPU500から
の制御信号503によって送出画素列の先頭アドレスの
設定を指示する。同時に、先頭アドレスを設定する制御
信号503はまた、濃度値算出部400のレジスタ40
2を「0」にクリアする。即ち、本実施形態において
は、実際には存在しない端画素の直前画素の濃度を
「0」と仮定する。画素列の先頭アドレスは、前記タイ
ミング調停部からのタイミング信号に応じて、CPU5
00において起動されたプログラムより、CPUバス5
02を介してカウンタ301に設定される。
First, the timing of data transmission to the printer unit 1014 is determined by a timing arbitration unit (not shown) for adjusting the timing between the printer control unit 1001 and the printer unit 1014. Then, the counter 301 of the address control unit 300 is instructed by the control signal 503 from the CPU 500 to set the head address of the transmission pixel row. At the same time, the control signal 503 for setting the start address is also transmitted to the register 40 of the density value calculation unit 400.
Clear 2 to "0". That is, in the present embodiment, it is assumed that the density of the pixel immediately before the end pixel that does not actually exist is “0”. The head address of the pixel column is determined by the CPU 5 according to a timing signal from the timing arbitration unit.
00, the CPU bus 5
02 is set to the counter 301 via the counter 02.

【0047】ここで、ページメモリ100に格納される
画像データの符号長(画素毎のデータ長)が一定(この
場合8ビット)であり、画素列の長さが全て等しい場合
には、各画素列をメモリ空間上で連続して並べ、一列目
のアドレスを設定するだけで、全ての画素のアドレスを
得ることができる。即ち、一画像の出力に対して、プリ
ンタ部1014からの出力開始信号に応じて、前記CP
Uバス502を介して1列目の先頭アドレスのみが設定
される。
Here, if the code length (data length for each pixel) of the image data stored in the page memory 100 is constant (8 bits in this case) and the lengths of the pixel columns are all equal, each pixel By arranging the columns continuously in the memory space and setting the addresses of the first column, the addresses of all the pixels can be obtained. That is, in response to the output start signal from the printer unit 1014 for one image output, the CP
Only the first address of the first column is set via the U bus 502.

【0048】尚、このようなアドレス設定を行う構成は
ハードウェアでも実現可能である。例えば、ページメモ
リ100の開始アドレスを保存しておくためのレジスタ
を一つ用意し、プリンタ部1014からの出力開始信号
に応じて、該レジスタの保存値がカウンタ301にロー
ドされるような回路構成とすればよい。
It should be noted that such a configuration for performing address setting can be realized by hardware. For example, a circuit configuration is provided in which one register for storing the start address of the page memory 100 is prepared, and the stored value of the register is loaded into the counter 301 in response to an output start signal from the printer unit 1014. And it is sufficient.

【0049】ページメモリ103へのアクセス時間分の
遅延として時間T1が経過すると、ページメモリ100
から画像データ(差分値)が読み出され、濃度算出部4
00の加算器401においてレジスタ402に保存され
ていた前画素の濃度値に加算される。尚、この時に発生
するオーバーフローは無視される。そして加算のための
遅延時間T2が経過後、プリンタ部1014に再現され
た濃度情報が出力される。
When the time T1 elapses as a delay corresponding to the access time to the page memory 103, the page memory 100
Image data (difference value) is read from the
The adder 401 of 00 adds the density value of the previous pixel stored in the register 402. The overflow that occurs at this time is ignored. After the delay time T2 for addition has elapsed, the reproduced density information is output to the printer unit 1014.

【0050】アドレス制御部300における遅延部30
2は、単純な遅延機構、あるいはタイミング生成機構で
あり、CPU500から入力される制御信号501に基
づいて、適切に遅延されたレベル信号、又はラッチパル
スを生成して、制御信号311,312を出力する。制
御信号312は、新規アドレスの決定からT1+T2の遅
延時間を見込んだタイミングで、プリンタ部1014に
データの有効を報知する。そして更に、プリンタ部10
14がデータを読みとるために必要な時間T3が経過
後、レジスタ402に加算器401から出力された1画
素の濃度情報をラッチするためのタイミングパルスとし
て、制御信号311を出力する。尚ここでは、加算器4
01で生じる遅延時間T2よりも、レジスタ402のラ
ッチ時間は十分短いものとする。
Delay unit 30 in address control unit 300
Reference numeral 2 denotes a simple delay mechanism or a timing generation mechanism that generates an appropriately delayed level signal or latch pulse based on a control signal 501 input from the CPU 500 and outputs the control signals 311 and 312. I do. The control signal 312 notifies the printer unit 1014 of the validity of the data at a timing that allows a delay time of T1 + T2 from the determination of the new address. Further, the printer unit 10
After the elapse of the time T3 required for the data to be read by the memory 14, the control signal 311 is output to the register 402 as a timing pulse for latching the density information of one pixel output from the adder 401. Here, the adder 4
01, the latch time of the register 402 is sufficiently shorter than the delay time T2.

【0051】ここで、もしもレジスタ402のラッチ時
間に対して加算器401における遅延時間T2が大き
く、安定した値をフィードバックできない場合には、必
要に応じて、加算器401より出力された濃度情報をレ
ジスタ402にフィードバックするためのラッチを、加
算器401の出力にもう一段追加すれば良い。
Here, if the delay time T2 in the adder 401 is larger than the latch time of the register 402 and a stable value cannot be fed back, the density information output from the adder 401 is replaced with the density information as necessary. It is only necessary to add another stage to the output of the adder 401 of a latch for feeding back to the register 402.

【0052】501はCPU500によって制御される
アドレス更新信号である。ここで、ページメモリ100
に格納される差分値の符号長は一定であり、かつ、ペー
ジメモリ100からの読み出しデータ量とプリンタ部1
014への出力データ量とは等しい。そのため、単純に
画素クロックと同じタイミングで、ページメモリ100
の読み出しタイミングを生成する。
Reference numeral 501 denotes an address update signal controlled by the CPU 500. Here, the page memory 100
The code length of the difference value stored in the page unit 100 is constant, and the amount of data read from the page memory 100 and the printer unit 1
014 is equal to the output data amount. Therefore, the page memory 100 is simply set at the same timing as the pixel clock.
Is generated.

【0053】以上、ページメモリ100に格納された差
分値を読み出して濃度情報を再現し、プリンタ部101
4へ出力する処理について説明した。次に、ページメモ
リ100に格納された差分値を一部更新するための動
作、即ち更新処理について説明する。
As described above, the difference value stored in the page memory 100 is read to reproduce the density information, and the printer unit 101
4 has been described. Next, an operation for partially updating the difference value stored in the page memory 100, that is, an update process will be described.

【0054】ページメモリ100に格納された画像デー
タの一部更新を行う際には、ページメモリ100に既に
格納されている対象画素の差分値を読み出すことが必要
となる。ここで、ページメモリ100において更新対象
画素まで画素列を走査し、該画素の濃度情報を求める処
理をソフトウェアによって行うと演算時間が非常にかか
ってしまうため、本実施形態では該処理をハードウェア
によって実現する。
To partially update the image data stored in the page memory 100, it is necessary to read the difference value of the target pixel already stored in the page memory 100. Here, if the process of scanning the pixel array up to the pixel to be updated in the page memory 100 and obtaining the density information of the pixel is performed by software, it takes an extremely long calculation time. In this embodiment, the process is performed by hardware. Realize.

【0055】図4に、上述した図3に示す構成に加え
て、更に上記ページメモリ100の更新処理を実現する
ための構成を示す。図4には、アドレス制御部300に
おいて、上述した図3の構成にアドレス制御部のオン/
オフを制御するフリップフロップ(F/F)303、書
き込み画素の位置情報を保持するレジスタ304、アド
レス更新信号501を制御するANDゲート305が加
わった構成を示す。尚、ページメモリ100の更新処理
も、CPU500によって実行される制御プログラムに
従って制御される。
FIG. 4 shows a configuration for realizing the updating process of the page memory 100 in addition to the configuration shown in FIG. FIG. 4 shows that the address control unit 300 is turned on / off of the address control unit in the configuration of FIG.
This figure shows a configuration in which a flip-flop (F / F) 303 for controlling off, a register 304 for holding position information of a writing pixel, and an AND gate 305 for controlling an address update signal 501 are added. The updating process of the page memory 100 is also controlled according to a control program executed by the CPU 500.

【0056】ページメモリ100の一部更新を行う場
合、まずCPU500によって、算出対象となる画素列
の先頭アドレスをCPUバス502よりカウンタ301
に設定し、該画素列の何番目の画素の濃度を求めたい
か、即ち、アクセスしたい画素の位置情報を制御信号5
05よりレジスタ304に設定し、制御信号504をア
クティブにする。これにより、設定された画素のアクセ
ス準備を完了し、アドレス制御部300が駆動される。
When partially updating the page memory 100, the CPU 500 first determines the start address of the pixel row to be calculated from the CPU bus 502 through the counter 301.
Is set, and the position information of the pixel of the pixel column in which the density is to be obtained, that is, the position information of the pixel to be accessed is indicated by the control signal 5.
05, the register 304 is set, and the control signal 504 is activated. Thereby, the access preparation of the set pixel is completed, and the address control unit 300 is driven.

【0057】CPU500によって制御されるアドレス
更新信号501はANDゲート305でゲートされてい
るので、F/F303によってアドレス更新動作が制御
される。このアドレス更新信号501によって、カウン
タ301を介してページメモリ100の新たなアドレス
が供給され、ページメモリ100の該アドレスにおける
値が加算器401に入力される。そして加算器401に
おいてレジスタ402に保持された値と加算されること
により濃度値が再現され、濃度情報410として出力さ
れる。遅延部302においては、アドレス更新信号50
1に基づいて、濃度情報410をレジスタ402にフィ
ードバックするタイミング信号311を生成する。
Since the address update signal 501 controlled by the CPU 500 is gated by the AND gate 305, the address update operation is controlled by the F / F 303. A new address of the page memory 100 is supplied via the counter 301 by the address update signal 501, and the value at the address of the page memory 100 is input to the adder 401. Then, the adder 401 adds the value stored in the register 402 to reproduce the density value, and outputs the density value as density information 410. In delay section 302, address update signal 50
1, a timing signal 311 for feeding back the density information 410 to the register 402 is generated.

【0058】カウンタ301はページメモリ100の読
み出しアドレスを決定するカウンタであり、対象画素列
の先頭アドレスを格納する。また、レジスタ304は対
象画素列において何番目の画素が更新対象であるかをカ
ウントするためのレジスタである。従って、レジスタ3
04の保持値を順次カウントダウンし、該保持値が
「0」になるまで、濃度値算出部400において対象画
素列の先頭アドレスからの加算処理を行うことにより、
更新対象画素の濃度情報410を得ることができる。
The counter 301 determines the read address of the page memory 100, and stores the head address of the target pixel column. The register 304 is a register for counting the number of the pixel in the target pixel column to be updated. Therefore, register 3
By sequentially counting down the held value of “04” and performing an adding process from the head address of the target pixel column in the density value calculating unit 400 until the held value becomes “0”,
The density information 410 of the pixel to be updated can be obtained.

【0059】更新対象画素の再現された濃度情報410
は、CPU500によって差分値算出部200に入力さ
れる。これにより、差分値算出部200では入力I/F
1013から入力される更新対象画素の新たな濃度値よ
り、ページメモリ100に格納すべき新たな差分値を求
めることができる。更に、ページメモリ100内の差分
情報の整合性を保つために、該濃度情報410に基づい
て、更新対象画素列の次画素の差分値も調整される。
The reproduced density information 410 of the pixel to be updated
Is input to the difference value calculation unit 200 by the CPU 500. As a result, the difference I / F
A new difference value to be stored in the page memory 100 can be obtained from the new density value of the pixel to be updated input from 1013. Furthermore, in order to maintain the consistency of the difference information in the page memory 100, the difference value of the next pixel of the pixel row to be updated is also adjusted based on the density information 410.

【0060】尚、差分値算出部200においては、濃度
値算出部400において算出された更新対象画素の濃度
情報410と、該更新対象画素に新たに設定された濃度
値との差分値を、既に格納されていた差分値情報に加え
ることによって、更新対象画素の新たな差分値情報とし
て格納する。そして更新対象画素列の後画素には、更新
対象の最終画素の新たな濃度値と、該画素の濃度情報4
10との差分値を格納する。
The difference value calculating section 200 calculates the difference between the density information 410 of the pixel to be updated calculated by the density value calculating section 400 and the density value newly set for the pixel to be updated. By adding to the stored difference value information, it is stored as new difference value information of the update target pixel. Then, a new density value of the last pixel to be updated and density information 4
The difference value from 10 is stored.

【0061】尚、ページメモリ100に対する通常の更
新処理においては、一画素のみの更新を行うことは稀で
あり、連続した領域の画素が更新される。従って本実施
形態では、ページメモリ100を所定長の画素列に分割
し、濃度値算出部400において該画素列の先頭画素の
濃度値のみを算出することにより、該画素列全ての更新
が差分値算出部200において可能となる。即ち、濃度
値算出部400における濃度算出の演算回数を最小限に
押さえることができる。
In the normal updating process for the page memory 100, it is rare that only one pixel is updated, and pixels in a continuous area are updated. Therefore, in this embodiment, the page memory 100 is divided into pixel rows of a predetermined length, and only the density value of the first pixel of the pixel row is calculated by the density value calculation unit 400. This becomes possible in the calculation unit 200. That is, it is possible to minimize the number of calculations of the density calculation in the density value calculation unit 400.

【0062】尚、上述した図3,図4に示すように、ペ
ージメモリ100はCPU500からアクセスされる
が、不図示のアクセス調停部によって、本実施形態の各
ハードウェアに対するアクセス競合は回避される。
As shown in FIGS. 3 and 4 described above, the page memory 100 is accessed by the CPU 500. However, an access arbitration unit (not shown) avoids access conflicts with the hardware of this embodiment. .

【0063】図5にページメモリ100の更新処理を行
うためのアドレス制御のフローチャートを示し、以下簡
単に説明する。上述した様に、該フローチャートに示す
処理はCPU500によって実行される。
FIG. 5 shows a flowchart of address control for updating the page memory 100, which will be briefly described below. As described above, the processing shown in the flowchart is executed by the CPU 500.

【0064】該フローチャートにおいては、ページメモ
リ100のアドレスをX,Y座標によって表し、Y座標
が等しい値を1画素列として扱う。そして、各画素に対
してPは旧濃度情報、Qは新濃度情報(更新濃度情
報)、Aはページメモリ100上のアドレス、Dは当該
画素と前画素との差分値、即ちページメモリ100に実
際に格納されている値を示す。
In the flowchart, the address of the page memory 100 is represented by X and Y coordinates, and a value having the same Y coordinate is treated as one pixel row. For each pixel, P is old density information, Q is new density information (updated density information), A is an address on the page memory 100, D is a difference value between the pixel and the previous pixel, that is, Indicates the value actually stored.

【0065】まず、更新対象オブジェクトとして、更新
対象となる画素範囲を得る(S101)。例えば、更新
対象画素範囲が矩形であり、その左上画素のアドレスが
(Xa,Ya)、右下画素のアドレスが(Xb,Yb)である
とすると、更新対象オブジェクトは(Xa,Ya)−(X
b,Yb)の範囲となる。
First, a pixel range to be updated is obtained as an object to be updated (S101). For example, if the pixel range to be updated is rectangular, and the address of the upper left pixel is (Xa, Ya) and the address of the lower right pixel is (Xb, Yb), the object to be updated is (Xa, Ya)-( X
b, Yb).

【0066】そして、本実施形態ではページメモリ10
0の更新処理を画素列毎に行うため、該更新対象オブジ
ェクトを列毎に分割し、Y座標がYaである列(Ya列)
からYb列まで、順次更新処理を行う(S102,S1
03,S118)。
In this embodiment, the page memory 10
In order to perform the update process of 0 for each pixel column, the object to be updated is divided for each column, and the column whose Y coordinate is Ya (the Ya column)
The update process is performed sequentially from column to Yb column (S102, S1)
03, S118).

【0067】Yi列(a≦i≦b)における具体的な更新処
理としては、まずi列上の更新範囲を求める。即ち、i列
上の更新範囲Xa〜Xbのうち、Xaを更新対象の先頭画
素Xi1とし、Xbを終端画素Xikとする(S104)。
そして、Yi列の先頭アドレスAiを求め(S106)、
該AiをCPUバス502に、Xi1を制御信号505に
出力し、制御信号504をアクティブとする(S10
7)。これにより、更新対象先頭画素Xi1のアクセス準
備を完了し、アドレス制御部300が駆動される。
As a specific update process in the Yi column (a ≦ i ≦ b), first, an update range on the i column is obtained. That is, in the update range Xa to Xb on the i-th column, Xa is set as the start pixel Xi1 to be updated, and Xb is set as the end pixel Xik (S104).
Then, the start address Ai of the Yi column is obtained (S106),
Ai is output to the CPU bus 502, Xi1 is output to the control signal 505, and the control signal 504 is activated (S10
7). Thus, the access preparation for the update target top pixel Xi1 is completed, and the address control unit 300 is driven.

【0068】次に、Xi1のアドレスAi1を求め(S10
8)、所定時間経過後に濃度値算出部400において該
Ai1における濃度情報410(旧濃度Pi1)が得られる
(S109,S110)。即ち、Yi列において更新対
象の先頭画素の濃度値が得られたことになる。
Next, the address Ai1 of Xi1 is obtained (S10
8) After the lapse of a predetermined time, the density value calculation section 400 obtains the density information 410 (old density Pi1) for Ai1 (S109, S110). That is, the density value of the first pixel to be updated is obtained in the Yi column.

【0069】そして差分値算出部200において、上記
更新対象先頭画素Xi1の濃度値Pi1に基づいて、更新対
象終端画素Xikまでの全更新画素の新たな差分値(Qij
−Pij+Dij)を順次算出し、ページメモリ100の対
応アドレスに格納する(S111〜S116)。
Then, in the difference value calculating section 200, based on the density value Pi1 of the first pixel Xi1 to be updated, a new difference value (Qij
-Pij + Dij) are sequentially calculated and stored in corresponding addresses of the page memory 100 (S111 to S116).

【0070】そしてXikまでの差分値の格納が終了する
と、Xikの後画素の差分値を更に更新することにより、
新旧濃度の整合を取る(S117)。これにより、Yi
列における更新処理が終了する。
When the storage of the difference value up to Xik is completed, the difference value of the pixel after Xik is further updated, whereby
The old and new densities are matched (S117). This allows Yi
The update process in the column ends.

【0071】以上のアドレス制御により、本実施形態に
おけるページメモリ100の一部更新処理が実現され
る。
With the above address control, a process of partially updating the page memory 100 in the present embodiment is realized.

【0072】上述した図3及び図4の構成においては、
本実施形態の基本概念として、画像データを前画素との
差分値として保持すること(差分値ページメモリ)につ
いて説明を行なった。しかしながら、このように画像デ
ータを前画素との差分値としてページメモリ100に保
持したとしても、該差分値情報が濃度値情報と同じデー
タ長(この場合8ビット)であるため、特に省メモリ効
果が得られるわけではない。
In the configuration of FIGS. 3 and 4 described above,
As a basic concept of the present embodiment, holding image data as a difference value from a previous pixel (difference value page memory) has been described. However, even if the image data is held in the page memory 100 as a difference value from the previous pixel in this way, the difference value information has the same data length as the density value information (8 bits in this case). Is not obtained.

【0073】通常、画像処理装置において処理される画
像は、大部分の領域において近傍画素間に濃度相関性を
有する画像である。これは即ち、扱われる画像が、画素
毎に不規則に濃度が変化するような画像ではなく、一画
素と比較してはるかに大きな領域において、その明暗が
徐々に変化するという性質を有することを示している。
Normally, an image processed by the image processing apparatus is an image having a density correlation between neighboring pixels in most areas. This means that the image to be treated is not an image in which the density changes irregularly for each pixel, but has the property that its brightness gradually changes in a region much larger than one pixel. Is shown.

【0074】このため、上述した様に画像情報を前画素
との濃度値の差分情報に変換した場合、近傍画素の濃度
相関性によって、ほとんどの差分値が比較的小さな値に
集中する。この傾向は、解像度が上昇するほど顕著なも
のとなる。
For this reason, when the image information is converted into the difference information of the density value with the previous pixel as described above, most of the difference values concentrate on a relatively small value due to the density correlation of the neighboring pixels. This tendency becomes more pronounced as the resolution increases.

【0075】よって、差分情報をより短いデータ長から
なる符号に置き換えることで、占有メモリ量を効果的に
低減させることができる。
Therefore, by replacing the difference information with a code having a shorter data length, the occupied memory amount can be effectively reduced.

【0076】更に、上述したような、差分値の出現頻度
はその値(変異値)が小さいほど高いという傾向は特定
の画像に依存するものではなく、通常の画像において安
定した性質である。従って、差分値を符号に置き換える
際に、符号の動的割り当てを必要とせず、固定割り当て
でその圧縮効果を十分に上げることができる。また、こ
のように差分値と符号との対応を固定とすることによっ
て、符号化及び復号化処理等が比較的簡単となり、より
単純な構成で実現することができる。
Further, as described above, the tendency that the appearance frequency of the difference value is higher as the value (mutation value) is smaller does not depend on a specific image, but is a stable property in a normal image. Therefore, when replacing the difference value with a code, dynamic allocation of the code is not required, and the compression effect can be sufficiently improved by the fixed allocation. In addition, by fixing the correspondence between the difference value and the code in this way, the encoding and decoding processes and the like become relatively simple, and can be realized with a simpler configuration.

【0077】従って本実施形態では、画素毎の差分値に
対して符号の固定割り当てを行い、ページメモリ100
に該符号を格納すること特徴とする。
Therefore, in this embodiment, a fixed code is assigned to the difference value for each pixel, and the page memory 100
Is stored.

【0078】本実施形態においては、階調表現として8
ビット表現を行う画像処理装置において、ハードウェア
上の回路の簡便化、処理速度の確保が容易な形式とし
て、差分情報を4ビット符号として格納する例について
以下説明する。
In the present embodiment, 8 is used as the gradation expression.
An example in which difference information is stored as a 4-bit code in an image processing apparatus that performs bit representation as a format that simplifies hardware circuits and ensures processing speed will be described below.

【0079】まず、本実施形態における差分値の符号化
方式について説明する。
First, the encoding method of the difference value in the present embodiment will be described.

【0080】本実施形態においては、差分値算出部20
0において符号化部を備え、該符号化部において算出さ
れた差分値を所定の符号に変換する。本実施形態では、
出現頻度の比較的高い、+7〜−7の差分値を、それぞ
れ4ビットの2の補数表現によって示される符号に変換
する。また、それ以外の差分値、即ち出現頻度の低い濃
度変換領域については、4ビットの例外コード+8ビッ
ト差分情報、即ち12ビット表現とする。従って、本実
施形態においては高頻度領域と低頻度領域とでその符号
長が異なるが、濃度値算出部400においては、低濃度
領域の4ビット情報は符号拡張され、8ビット差分情報
として加算器401に入力される。
In the present embodiment, the difference value calculating section 20
At 0, an encoding unit is provided, and the difference value calculated by the encoding unit is converted into a predetermined code. In this embodiment,
The difference values of +7 to -7, which have relatively high appearance frequencies, are converted into codes represented by 4-bit two's complement expressions. The other difference values, that is, the density conversion area having a low appearance frequency, are represented by a 4-bit exception code + 8-bit difference information, that is, a 12-bit representation. Therefore, in the present embodiment, the code lengths of the high-frequency area and the low-frequency area are different, but in the density value calculation unit 400, the 4-bit information of the low-density area is sign-extended and added as 8-bit difference information. It is input to 401.

【0081】尚、本実施形態においては、2の補数表現
による8ビット濃度情報の差分値を算出する際に、オー
バーフローを無視することによって、特に文字(テキス
ト)画像において出現頻度の高い白と黒の変化、即ち濃
度値0と濃度値255間の濃度変位(差分値)を±1と
みなせる。ここで、差分値±1とは即ち、自然画像にお
いて出現頻度の高い差分値である。従って本実施形態に
おいては、テキスト画像とグラフィック画像に対する符
号処理において、いずれも出現頻度の高い差分値はより
小さな値となるため、いずれの画像においても共通の符
号化処理によって高効率な符号化が行える。
In the present embodiment, when calculating the difference value of the 8-bit density information in the two's complement representation, by ignoring the overflow, white and black, which appear frequently in a character (text) image, are particularly high. , That is, the density change (difference value) between the density value 0 and the density value 255 can be regarded as ± 1. Here, the difference value ± 1 is a difference value having a high appearance frequency in a natural image. Therefore, in the present embodiment, in the encoding process for the text image and the graphic image, the difference value having a high appearance frequency becomes a smaller value in each case. I can do it.

【0082】また、差分値を2の補数表現とすることに
より、上記濃度値0と255以外の大きな濃度変位も、
同様に小さな差分値として見なされる。例えば、濃度変
位+254は、濃度変位−2と同様に扱われる。一般に
大きな濃度変異に比べて微小な濃度変位の出現頻度はは
るかに大きいため、このような表現形式をとっても、統
計的な微小変位の出現頻度には実用上影響を及ぼさな
い。
Further, by expressing the difference value in a two's complement expression, a large density displacement other than the density values 0 and 255 can be obtained.
Similarly, it is regarded as a small difference value. For example, the density shift +254 is treated in the same way as the density shift -2. In general, the frequency of occurrence of minute concentration changes is much higher than that of large concentration variations, and therefore, even if such an expression is used, the frequency of occurrence of statistical minute changes has no practical effect.

【0083】また、本実施形態のディジタル演算回路は
繰り上がりを無視しているので、復元された差分値が、
大きな変位と小さな変位とのいずれとして復元されるべ
きかを区別しない。つまり、例えば、テキスト画像処理
を行うのか、グラフィック画像処理を行うのかを区別し
ない。
Since the digital arithmetic circuit of this embodiment ignores carry, the restored difference value is
No distinction is made whether to be restored as a large displacement or a small displacement. That is, for example, it does not distinguish whether to perform text image processing or graphic image processing.

【0084】図6に、本実施形態における符号割り当て
を定義するコードテーブルを示す。図6によれば、差分
値0〜±7までの各値毎に、4ビットの符号が割り当て
られている。又、±7を超える差分値については、例外
コードとして「1000」が割り当てられている。この
ように各差分値に固定長符号を割り当てることにより、
ハードウェアによる符号化処理が容易となる。該コード
テーブルは装置内のROM600に予め保持されている
が、RAM700内に保持して更新可能としても良い。
FIG. 6 shows a code table defining code assignment in the present embodiment. According to FIG. 6, a 4-bit code is assigned to each of the difference values 0 to ± 7. For the difference value exceeding ± 7, “1000” is assigned as an exception code. By assigning a fixed-length code to each difference value in this way,
Encoding processing by hardware becomes easy. The code table is stored in the ROM 600 in the apparatus in advance, but may be stored in the RAM 700 and updated.

【0085】ページメモリ100に該コードテーブルに
基づいた符号を格納する際には、出現頻度の高い0〜±
7の差分値については、割り当てられた4ビットを格納
し、出現頻度の低い±7を超える差分値については、上
記例外コード4ビットに続けて、8ビットの該差分値そ
のものを格納する。即ち、例外コードである場合、12
ビットで1差分値を示すことになる。
When a code based on the code table is stored in the page memory 100, 0 to ±
For the difference value of 7, the assigned 4 bits are stored, and for the difference value of low occurrence frequency exceeding ± 7, the 8-bit difference value itself is stored after the exception code 4 bits. That is, if it is an exception code, 12
A bit indicates one difference value.

【0086】このような符号化を行うことにより、例え
ば全画素の濃度情報の90%が、隣接画素に対して±7
レベルの濃度変位しか出現しないような画像を処理する
場合について考えると、該符号のページメモリ100に
おける占有メモリ量は、上記符号化を行なわない場合の
60%で済む。従って、このような90%の4ビット符
号化を想定した場合、装置実装時には各画素列を格納す
るメモリとして、濃度値を格納するページメモリ容量の
6割を標準的に割り当てるようにすれば良い。尚、想定
以上に差分値の大きい符号が出現する画素列が生じた場
合には、上記標準的に割り当てられたメモリ量では足り
ないため、ページメモリ100の割り当てを変更して、
符号画素列を格納するための記憶容量がより大きくなる
ように制御すれば良い。従って本実施形態においては、
ページメモリ100の割り当てを効率的に行うために、
差分処理を行う画素列に割り当てる記憶容量の大きさの
変更手段を用意する。
By performing such encoding, for example, 90% of the density information of all the pixels is
Considering the case of processing an image in which only a level of density displacement appears, the occupied memory amount of the code in the page memory 100 is only 60% of the case where the above coding is not performed. Therefore, assuming such 90% 4-bit encoding, 60% of the page memory capacity for storing density values should be allocated as a memory for storing each pixel column when the device is mounted. . If a pixel row in which a sign having a difference value larger than expected appears occurs, the memory amount normally allocated is not enough, and the allocation of the page memory 100 is changed.
What is necessary is just to control so that the storage capacity for storing the code pixel sequence becomes larger. Therefore, in this embodiment,
In order to efficiently allocate the page memory 100,
A means for changing the size of the storage capacity allocated to the pixel column to be subjected to the difference processing is prepared.

【0087】図7に、上述した図4に示す構成に加え
て、ページメモリ100に画素毎の差分値として上述し
た符号割り当てによる符号データを格納した場合に、濃
度情報を復元出力するための濃度値算出部400、及び
アドレス制御部300の詳細構成を示す。図7におい
て、上述した図4と同様の構成については同一番号を付
し、説明を省略する。
FIG. 7 shows, in addition to the configuration shown in FIG. 4, the density for restoring and outputting density information when code data by the above-mentioned code allocation is stored in the page memory 100 as a difference value for each pixel. 2 shows a detailed configuration of a value calculation unit 400 and an address control unit 300. 7, the same components as those in FIG. 4 described above are denoted by the same reference numerals, and description thereof will be omitted.

【0088】本実施形態においてページメモリ100に
格納される符号長は4ビット単位であるため、図7にお
いてはハードウェア構成を単純にするために、一語4ビ
ットによってページメモリ100をアクセスする構成を
示す。
In this embodiment, since the code length stored in the page memory 100 is in units of 4 bits, in FIG. 7, in order to simplify the hardware configuration, the page memory 100 is accessed with 4 bits per word. Is shown.

【0089】本実施形態においては、例外コード発生時
に符号長が4ビットから12ビットへ変化するため、ペ
ージメモリ100のメモリアドレスのアクセス回数と、
ページメモリ100からの読み出し画素数とが一致しな
い。従って本実施形態の濃度情報復元時においては、ペ
ージメモリ100のアドレス更新信号として、画素信号
の3倍のクロックが必要になる。これにより、1画素に
つきページメモリ100からの4ビット読み出しを3回
行うことができ、即ち1画素につき12ビットの読み出
しが保証される。もちろん、例外コードでない通常の4
ビット読み出しを行う際には、ページメモリの3回の読
み出し中、2回はマスクされる。
In this embodiment, when the exception code occurs, the code length changes from 4 bits to 12 bits.
The number of pixels read from the page memory 100 does not match. Therefore, at the time of restoring density information of the present embodiment, a clock three times as large as a pixel signal is required as an address update signal of the page memory 100. Thus, four bits can be read from the page memory 100 three times per pixel, that is, 12 bits can be read per pixel. Of course, the normal 4
At the time of performing bit reading, masking is performed twice during three readings of the page memory.

【0090】図7には上述したメモリアクセス制御を行
うために、アドレス制御部300においてANDゲート
306が備えられている。該ANDゲート306は、後
述するシーケンサ403からの制御信号によって、レジ
スタ304に保持される読み出し対象画素番号の更新を
制御する。
In FIG. 7, an AND gate 306 is provided in the address control unit 300 to perform the above-described memory access control. The AND gate 306 controls updating of the readout target pixel number held in the register 304 by a control signal from the sequencer 403 described later.

【0091】尚、ページメモリ100からワード単位で
符号データを読み出すように、メモリアクセスと読み出
しとが完全に非同期となるような構成とすることによ
り、ページメモリ100へのアクセス時間を更に短くす
ることができる。
The time required to access the page memory 100 can be further reduced by using a configuration in which the memory access and the reading are completely asynchronous so that the code data is read from the page memory 100 in word units. Can be.

【0092】図7に示す濃度値算出部400において
は、通常、ページメモリ100から読み出した4ビット
符号を8ビットの差分値データに拡張して加算器401
へ入力する。この符号拡張時において、±7以上の差分
値を示す例外コード発生時には、ページメモリ100か
らは例外コード4ビットに加えて8ビットの差分値デー
タが読み出されるため、この例外処理を行うためにシー
ケンサ403が備えられている。また、例外処理におけ
る8ビットデータを処理するために、上位下位4ビット
データを保持するラッチ404,405が備えられてい
る。尚、上述した符号拡張処理は、ラッチ404におい
て実現される。
In the density value calculation section 400 shown in FIG. 7, the 4-bit code read from the page memory 100 is normally expanded to 8-bit difference value data, and the adder 401 is added.
Enter At the time of sign extension, when an exception code indicating a difference value of ± 7 or more occurs, 8-bit difference value data is read from the page memory 100 in addition to the 4 bits of the exception code. 403 are provided. In order to process 8-bit data in exception processing, latches 404 and 405 for holding upper and lower 4-bit data are provided. Note that the above-described sign extension processing is realized by the latch 404.

【0093】符号拡張時において、拡張された上位4ビ
ット分の出力は、シーケンサ403からの制御信号41
2によって制御される。尚、該制御信号412は、ペー
ジメモリ100から読み出された差分値が4ビットでな
い場合にはディスエーブルとなる。
At the time of sign extension, the output of the extended upper 4 bits is output from the control signal 41 from the sequencer 403.
2 is controlled. The control signal 412 is disabled when the difference value read from the page memory 100 is not 4 bits.

【0094】以下、本実施形態における符号拡張処理、
及び例外処理の制御について詳細に説明する。
Hereinafter, the sign extension processing in the present embodiment will be described.
The control of exception processing will be described in detail.

【0095】シーケンサ403から出力される制御信号
411によって、ページメモリ100から読み出された
4ビット符号データを符号拡張して得られる8ビット差
分値出力の上位4ビットとして、ラッチ404における
符号拡張による上位4ビット出力を利用するか、ラッチ
405の4ビット出力を使用するかが決定される。又、
ページメモリ100から読み出されたデータバス上のデ
ータの、ラッチ404,405へのラッチが制御信号4
12,413によって制御される。
The control signal 411 output from the sequencer 403 causes the 4-bit code data read from the page memory 100 to be sign-extended as upper 4 bits of an 8-bit differential value output, which is obtained by sign extension in the latch 404. It is determined whether to use the upper 4-bit output or the 4-bit output of the latch 405. or,
The latch of the data on the data bus read from the page memory 100 into the latches 404 and 405 is the control signal 4
12, 413.

【0096】シーケンサ403は、ページメモリ100
から読み出された4ビットコードのパターン検出機能を
有している。例えば、4ビットコードとして「100
0」の例外コードが認識された場合には、ラッチ404
における上位4ビットの符号拡張出力を制御信号411
によってディスエーブルとする。そして更に、ゲート3
06への制御信号312によって、レジスタ304に対
する次の2回のアドレス更新クロック入力をマスクし、
正しい画素数がカウントされるようにする。尚、例外処
理時において、ページメモリ100から上位下位のそれ
ぞれ4ビットが読み出されるまで、ゲート406と制御
信号414とによってレジスタ402の濃度値の更新は
マスクされる。
The sequencer 403 includes the page memory 100
Has a function of detecting the pattern of the 4-bit code read from the. For example, as a 4-bit code, "100
When the exception code “0” is recognized, the latch 404
Is output to the control signal 411
To disable. And furthermore, Gate 3
The next two address update clock inputs to register 304 are masked by control signal 312 to 06,
The correct number of pixels is counted. In the exception processing, the update of the density value of the register 402 is masked by the gate 406 and the control signal 414 until the upper and lower 4 bits are read from the page memory 100.

【0097】尚、上述した符号拡張処理も、CPU50
0によって実行される制御プログラムに従って制御され
る。
The above-described sign extension processing is also performed by the CPU 50.
0 is controlled according to the control program executed by the control program.

【0098】以上説明したシーケンサ403における符
号拡張制御の詳細を、図8のフローチャートに示す。
The details of the sign extension control in the sequencer 403 described above are shown in the flowchart of FIG.

【0099】図8において、まず制御信号312をイネ
ーブルとし(S501)、クロック信号が入力されると
(S502)、該クロック信号のページメモリ100ア
クセス時間分遅延した後、シーケンサ403はページメ
モリ100からのデータバス上の4ビット符号データを
読み込む(S503)。そして、該4ビットデータがビ
ットパターンが「1000」でなければ、通常符号拡張
処理を行う。即ち、シーケンサ403は制御信号312
をディセーブルとして、以降の画素クロックによる画素
カウントをマスクする。また、制御信号414をイネー
ブルとし、レジスタ402の更新を許可する。また、制
御信号411をイネーブルとし、ラッチ404による符
号拡張を行うことを指示する(S505)。そして、制
御信号412をイネーブルとし(S506)、ラッチ4
04による符号拡張結果として得られる8ビットの差分
値データを、加算器401へ出力する。そして、2クロ
ック分の経過を待つ(S507,S508)ち、ステッ
プS501へ戻って次の画素の処理を開始する。
In FIG. 8, first, the control signal 312 is enabled (S501). When a clock signal is input (S502), the sequencer 403 sends the clock signal from the page memory 100 after delaying the clock signal by the page memory 100 access time. The 4-bit code data on the data bus is read (S503). Then, if the bit pattern of the 4-bit data is not "1000", normal sign extension processing is performed. That is, the sequencer 403 outputs the control signal 312
Is disabled, and the subsequent pixel count by the pixel clock is masked. Further, the control signal 414 is enabled, and the updating of the register 402 is permitted. Also, the control signal 411 is enabled, and an instruction is given to perform sign extension by the latch 404 (S505). Then, the control signal 412 is enabled (S506), and the latch 4
The 8-bit difference value data obtained as a result of the sign extension by the code number 04 is output to the adder 401. After waiting for two clocks to elapse (S507, S508), the process returns to step S501 to start processing the next pixel.

【0100】一方、読み込んだ4ビット符号データが
「1000」の例外コードであった場合、例外処理を行
う。即ち、シーケンサ403は制御信号414をディセ
ーブルとして、レジスタ402の更新を禁止する。ま
た、制御信号411をディセーブルとして、拡張符号出
力としてラッチ405を使用することを指示する(S5
09)。そして1クロックの経過後(S510)、該ク
ロック信号のページメモリ100アクセス時間分遅延し
た後、シーケンサ403は制御信号412をイネーブル
とし、ラッチ404に保持された4ビットが8ビット差
分値の下位4ビットとして出力される(S511)。そ
して更に1クロック経過後(S512)、該クロック信
号のページメモリ100アクセス時間分遅延した後、シ
ーケンサ403は制御信号413をイネーブルとし、ラ
ッチ405に保持された4ビットが8ビット差分値の上
位4ビットとして出力される(S513)。そして、制
御信号414をイネーブルとしてレジスタ402の更新
を許可し(S514)、ステップS501へ戻り、次の
画素の処理を開始する。
On the other hand, if the read 4-bit code data is an exception code of "1000", exception processing is performed. That is, the sequencer 403 disables the control signal 414 and prohibits updating of the register 402. In addition, the control signal 411 is disabled, and an instruction is given to use the latch 405 as the extension code output (S5).
09). After a lapse of one clock (S510), the sequencer 403 enables the control signal 412 after delaying the clock signal by the page memory 100 access time, and the four bits held in the latch 404 become the lower four bits of the 8-bit difference value. It is output as a bit (S511). Then, after a lapse of one more clock (S512), the sequencer 403 enables the control signal 413 after delaying the clock signal by the page memory 100 access time, and the four bits held in the latch 405 become the upper four bits of the 8-bit difference value. It is output as a bit (S513). Then, the control signal 414 is enabled to allow the update of the register 402 (S514), and the process returns to step S501 to start the processing of the next pixel.

【0101】以上のようにして、シーケンサ403が各
制御信号を制御することにより、本実施形態の符号拡張
処理、及び例外処理が制御される。
As described above, the sign extension processing and the exception processing of the present embodiment are controlled by the sequencer 403 controlling each control signal.

【0102】尚、本実施形態においてはページメモリ1
00に格納される符号長が固定でないため、ページメモ
リ100において読み出し対象となる画素の格納位置を
決定するために、格納された画素列を走査する必要があ
る。この動作は図7に示す構成によって実現されるが、
CPU500が書き込み位置のアドレスを得るために、
カウンタ301の値を読み出す。このため、図7におい
てCPUバス502は双方向となる。
In this embodiment, the page memory 1
Since the code length stored in 00 is not fixed, it is necessary to scan the stored pixel column in order to determine the storage position of the pixel to be read in the page memory 100. This operation is realized by the configuration shown in FIG.
In order for the CPU 500 to obtain the address of the writing position,
The value of the counter 301 is read. Therefore, the CPU bus 502 is bidirectional in FIG.

【0103】また、図7において101は記憶容量変更
部であり、上述した様に、差分値算出部200において
多値画像データの符号化を行ってページメモリ100に
格納する際に、ページメモリ100の割り当てを効率的
に行うために、差分処理を行う画素列に割り当てる記憶
容量の大きさの変更をCPU500からの指示に基づい
て制御する。記憶容量変更部101においては、単純に
追加領域を割り当てるか、あるいは大きさの異なる幾つ
かの記憶容量の領域を予め用意し、使用量に応じて再割
り当てを行う。
In FIG. 7, reference numeral 101 denotes a storage capacity changing unit. As described above, when the multivalued image data is encoded by the difference value calculating unit 200 and stored in the page memory 100, the page memory 100 is changed. In order to efficiently perform the allocation, the change in the size of the storage capacity allocated to the pixel column on which the difference processing is performed is controlled based on an instruction from the CPU 500. In the storage capacity changing unit 101, an additional area is simply allocated, or areas of several storage capacities having different sizes are prepared in advance, and reallocated according to the used amount.

【0104】記憶容量変更部101における最も単純な
再割り当て方式としては、処理単位となる全ての画素列
に対して、最小の記憶領域を予め用意しておき、ページ
メモリ100において割り当てられた記憶領域の残りが
所定値に足りなくなった際に、より大きな記憶領域を割
り当てる方式である。あるいは、符号化した差分符号列
が短かい場合には小さい記憶領域を割り当て、長くなれ
ばより大きな記憶領域を割り当てるようにすれば、より
効率的に再割り当てを行うことができる。尚、上記記憶
容量の残りが足りないか否かの判断は、例えば、(記憶
容量の残りサイズ/最長符号長)を未処理画素数と比較
することによって行なえば良い。尚、このような再割り
当て方式においては、ハードウェア上では連続したアド
レスなので処理機構は単純で済むが、再割り当て後に既
存データを新領域に転送するのに時間がかかる。
The simplest reallocation method in the storage capacity changing unit 101 is that a minimum storage area is prepared in advance for all pixel columns as processing units, and a storage area allocated in the page memory 100 is prepared. Is a method of allocating a larger storage area when the remainder of the data becomes short of a predetermined value. Alternatively, if the encoded difference code string is short, a small storage area is allocated, and if it is long, a larger storage area is allocated, so that the reallocation can be performed more efficiently. The determination as to whether or not the remaining storage capacity is insufficient may be made, for example, by comparing (remaining storage capacity size / longest code length) with the number of unprocessed pixels. In such a reallocation method, the processing mechanism is simple because the addresses are continuous on hardware, but it takes time to transfer the existing data to the new area after the reallocation.

【0105】一方、追加割り当て方式とは、規定領域を
越えた場合に、単純に別の予備領域をアクセスする方法
である。従って、追加割り当て後に既存データを移動さ
せる必要は無いが、画像データ列の途中でアドレスを切
り替える必要がある。従って、ソフトウェアによって差
分値の積算を行っている場合には読み出しアドレスの変
更処理で済むが、本実施形態の様に差分値の積算処理を
ハードウェアによって実現している場合には、アドレス
の記憶レジスタ等の構成の追加が必要となり、より複雑
な回路構成となってしまう。
On the other hand, the additional allocation method is a method of simply accessing another spare area when the area exceeds the specified area. Therefore, it is not necessary to move the existing data after the additional assignment, but it is necessary to switch the address in the middle of the image data sequence. Therefore, when the difference value is integrated by software, the read address change processing is sufficient. However, when the difference value integration processing is realized by hardware as in the present embodiment, the address storage is performed. An additional configuration such as a register is required, resulting in a more complicated circuit configuration.

【0106】従って本実施形態の記憶容量変更部101
においては、再割り当て方式を採用している。
Therefore, the storage capacity changing unit 101 of the present embodiment
Adopts a reallocation method.

【0107】尚、記憶容量変更部101も、制御信号5
08によってCPU500から制御される。
Incidentally, the storage capacity changing section 101 also controls the control signal 5
08 is controlled by the CPU 500.

【0108】ここで、図7に示す構成においては、ペー
ジメモリ100に保持された符号データの更新時に、例
外コード「1000」の発生又は消失に伴い、ページメ
モリ100内における画素列データの格納位置の移動の
可能性を考慮する必要がある。従って、上述した図5に
示したページメモリ100のアクセスのためのアドレス
制御のフローチャートは、図9,図10に示すように変
化する。以下、図7の構成におけるページメモリ100
の更新処理について説明する。
In the configuration shown in FIG. 7, when the code data held in the page memory 100 is updated, the storage location of the pixel column data in the page memory 100 due to the occurrence or disappearance of the exception code "1000" It is necessary to consider the possibility of movement. Accordingly, the flowchart of the address control for accessing the page memory 100 shown in FIG. 5 described above changes as shown in FIGS. Hereinafter, the page memory 100 in the configuration of FIG.
Update processing will be described.

【0109】図9,図10において、上述した図5と同
様の処理には同一ステップ番号を付し、説明を省略す
る。尚、該フローチャートにおいては、ページメモリ1
00のアドレスをX,Y座標によって表し、Y座標が等
しい値を1画素列として扱う。そして、各画素に対して
Pは旧濃度情報、Qは新濃度情報(更新濃度情報)、A
はページメモリ100上のアドレス、Dは当該画素と前
画素との差分値、即ちページメモリ100に実際に格納
されている値を示す。
9 and 10, the same processes as those in FIG. 5 described above are denoted by the same step numbers, and description thereof is omitted. In the flowchart, the page memory 1
The address of 00 is represented by X and Y coordinates, and a value having the same Y coordinate is treated as one pixel column. For each pixel, P is old density information, Q is new density information (updated density information), A
Indicates an address on the page memory 100, and D indicates a difference value between the pixel and the previous pixel, that is, a value actually stored in the page memory 100.

【0110】また、符号長が動的に変化するために、画
素単位の処理を行っていると、例外コードの発生・消失
毎に、ページメモリ100上の画素列列情報を動的に移
動させる必要が生じる場合がある。この画素列処理を画
素単位よりも効率良く行うために、4ビットラインバッ
ファ群LB0〜LBnを用意する。
In addition, if processing is performed on a pixel-by-pixel basis because the code length dynamically changes, the pixel column information on the page memory 100 is dynamically moved each time an exception code occurs or disappears. May be necessary. In order to perform this pixel column processing more efficiently than in pixel units, 4-bit line buffer groups LB0 to LBn are prepared.

【0111】図9,図10に示す更新処理においては、
まず、上述した図5と同様に更新対象オブジェクト(X
a,Ya)−(Xb,Yb)を得、i列上の更新範囲Xi1〜Xi
kを得た後、更新対象先頭画素Xi1のアクセス準備を完
了し、アドレス制御部300を駆動する(S101〜S
107)。
In the updating process shown in FIGS. 9 and 10,
First, similarly to FIG. 5 described above, the update target object (X
a, Ya)-(Xb, Yb), and the update range Xi1 to Xi on column i
After obtaining k, the access preparation of the update target top pixel Xi1 is completed, and the address control unit 300 is driven (S101 to S101).
107).

【0112】そして、更新濃度情報Qi1〜Qikを差分値
変換して、新たに格納すべき先頭及び終端以外の差分値
D'i2〜D'ik-1を求め、符号化した後にLB3以降のラ
インバッファに格納する。即ち、先頭画素の差分値は更
新濃度情報Qのみからは算出できないため、ラインバッ
ファ先頭に12ビット分の空き(LB0〜LB2)を用意
しておく。そして、ラインバッファ群において最終デー
タが格納された次アドレスをLBPeとする(S60
1)。尚、この処理は、ハードウェアによって上記アド
レス制御部300の駆動準備処理が行われている間に、
CPU500によって行うようにすれば効率的である。
The updated density information Qi1 to Qik is converted to a difference value to obtain difference values D'i2 to D'ik-1 other than the first and last to be newly stored. Store in buffer. That is, since the difference value of the first pixel cannot be calculated only from the updated density information Q, a 12-bit space (LB0 to LB2) is prepared at the head of the line buffer. Then, the next address where the last data is stored in the line buffer group is set as LBPe (S60).
1). Note that this processing is performed while the drive preparation processing of the address control unit 300 is performed by hardware.
It is efficient if performed by the CPU 500.

【0113】そして、CPU500はページメモリ10
0から読み出されて復元された濃度情報410より更新
対象先頭画素Xi1の旧濃度Pi1を得、CPUバス502
を介してカウンタ301よりページメモリ100の当該
アドレスAi1を得る(S602)。
Then, the CPU 500 stores the page memory 10
The old density Pi1 of the first pixel Xi1 to be updated is obtained from the density information 410 read and restored from 0, and the CPU bus 502
, The address Ai1 of the page memory 100 is obtained from the counter 301 via the counter 301 (S602).

【0114】続いて、ページメモリ100より2クロッ
ク分前、即ち8ビット前のアドレスAi1-8の値を読み出
し、該データが例外コード「1000」であれば、アド
レスAi1-8を更新対象先頭アドレスAi1とする(S60
3,S604)。
Subsequently, the value of the address Ai1-8 two clocks before, that is, eight bits before, is read from the page memory 100. If the data is the exception code "1000", the address Ai1-8 is updated to the start address of the update target. Ai1 (S60
3, S604).

【0115】そして、ページメモリ100上のアドレス
Ai1より原差分値Di1を得(S605)、Xik+1を制御
信号505に出力し、制御信号504をアクティブとす
る(S606)。これにより、更新対象終端画素の次画
素Xik+1のアクセス準備を完了し、アドレス制御部30
0が駆動される。
Then, the original difference value Di1 is obtained from the address Ai1 on the page memory 100 (S605), Xik + 1 is output to the control signal 505, and the control signal 504 is activated (S606). As a result, the access preparation for the next pixel Xik + 1 of the update target terminal pixel is completed, and the address control unit 30
0 is driven.

【0116】そしてその間に、先頭画素の新たに格納す
べき差分値としてDi1+Qi1-Pi1を算出し、符号化す
る。そして、その符号化結果が例外コード、即ち格納す
べきデータが全12ビットになるのであれば、LB0の
先頭アドレスをラインバッファの先頭データ格納アドレ
スLBPsとし、例外コードでない通常の4ビットコー
ドであれば、LB2の先頭アドレスをLBPsとする(S
607〜S609)。そして、得られた先頭画素の符号
化結果を、上記LBPsよりラインバッファに格納する
(S610)。これにより、ラインバッファ上の更新デ
ータ長が、LBPs−LBPeによって得られることが
分かる。
In the meantime, Di1 + Qi1-Pi1 is calculated and encoded as a difference value to be newly stored for the first pixel. If the encoding result is an exception code, that is, if the data to be stored has all 12 bits, the head address of LB0 is set as the head data storage address LBPs of the line buffer, and the normal address is a normal 4-bit code that is not an exception code. For example, the head address of LB2 is set to LBPs (S
607-S609). Then, the obtained encoding result of the first pixel is stored in the line buffer from the LBPs (S610). This indicates that the update data length on the line buffer can be obtained by LBPs-LBPe.

【0117】次に、CPU500はページメモリ100
から読み出されて復元された濃度情報410より更新対
象終端次画素Xik+1の旧濃度Pik+1を得、CPUバス5
02を介してカウンタ301よりページメモリ100の
当該アドレスAik+1を得る(S612)。
Next, the CPU 500 sets the page memory 100
The old density Pik + 1 of the terminal next pixel Xik + 1 to be updated is obtained from the density information 410 read out and restored from the CPU bus 5.
The corresponding address Aik + 1 of the page memory 100 is obtained from the counter 301 via the counter 02 (S612).

【0118】そして、更新対象終端画素の更新値を得る
ために、Qik−Pik+1を求めて符号化した後、ラインバ
ッファのアドレスLBPeに格納し、LBPeを更新する
(S613)。
Then, in order to obtain an updated value of the terminal pixel to be updated, Qik-Pik + 1 is obtained and encoded, and then stored in the address LBPe of the line buffer to update LBPe (S613).

【0119】そして、ページメモリ100上のデータ更
新に伴って、後続の既存画素列をずらすか否かを決定す
る。即ち、ラインバッファ上の更新データ長と、ページ
メモリ100から実際に読み出したデータ長とを比較
し、一致しなければ例外コードの発生又は消失による画
素列のずれが発生したとして、後続画素列の移動処理を
行う。具体的には、後続ビット列の移動量をMvとする
と、Mvは下式で表せる。
Then, it is determined whether or not to shift the subsequent existing pixel row in accordance with the update of the data on the page memory 100. That is, the update data length on the line buffer is compared with the data length actually read from the page memory 100, and if they do not match, it is determined that a shift in the pixel column due to the occurrence or disappearance of the exception code has occurred, and Perform a move process. Specifically, assuming that the moving amount of the subsequent bit string is Mv, Mv can be expressed by the following equation.

【0120】 Mv=(LBPe−LBPs)−(Aik+1−Ai1) 該Mvが「0」であればずれの発生はないとし、ライン
バッファ上のLBPs〜LBPeのデータをそのままペー
ジメモリ100上のアドレスAi1に転送する。一方、M
vが「0」でなければずれが発生したとして、ページメ
モリ100のアドレスAik+2以降のビット列を、アドレ
スAik+2+Mvに移動した後、ラインバッファ上のLB
Ps〜LBPeのデータをページメモリ100上のアドレ
スAi1に転送する(S614〜S617)。
Mv = (LBPe−LBPs) − (Aik + 1−Ai1) If the Mv is “0”, there is no shift. Transfer to address Ai1. On the other hand, M
If v is not “0”, it is determined that a deviation has occurred, and the bit string after address Aik + 2 of the page memory 100 is moved to address Aik + 2 + Mv, and then LB on the line buffer is read.
The data of Ps to LBPe is transferred to the address Ai1 on the page memory 100 (S614 to S617).

【0121】以上でYi列の更新処理を終了し、次のYi
+1列の処理を開始する(S618)。
Thus, the updating process of the Yi column is completed, and the next Yi column is updated.
The process for the +1 column is started (S618).

【0122】以上説明した様に、図9,図10のフロー
チャートに従えば、ページメモリ100における更新対
象画素列上の連続する書き換えを一括で行うことができ
る。これにより、ページメモリ100内の既存画素列情
報の移動の必要が発生した場合でも、該移動処理は更新
単位となる1画素列につき1度のみとなるため、画素単
位の処理と比べてはるかに少ない処理回数で済む。
As described above, according to the flowcharts of FIGS. 9 and 10, continuous rewriting on the pixel column to be updated in the page memory 100 can be performed collectively. As a result, even when it is necessary to move the existing pixel column information in the page memory 100, the moving process is performed only once for each pixel column serving as an update unit, which is far more than the pixel unit process. Only a small number of processings are required.

【0123】尚、上述した図9,図10のフローチャー
トに示す処理を含む、図7に示す構成における動作は、
CPU500によって実行される制御プログラムに従っ
て制御される。
The operation in the configuration shown in FIG. 7, including the processing shown in the flowcharts of FIGS.
Control is performed according to a control program executed by CPU 500.

【0124】以上説明した様に本実施形態によれば、多
値画像データを符号化してページメモリ100に保持す
る際に、前画素との差分情報として扱うことによってそ
の発生頻度偏向を一定とし、該差分情報の対してその発
生頻度に応じた符号を静的に割り当てることにより、省
メモリ効果の高い圧縮を可能とする。
As described above, according to the present embodiment, when the multi-valued image data is encoded and stored in the page memory 100, the occurrence frequency deviation is made constant by treating it as difference information from the previous pixel. By statically assigning a code corresponding to the frequency of occurrence to the difference information, compression with a high memory saving effect can be performed.

【0125】また、該ページメモリ100に保持された
画像データの復元、及び更新も高速に行うことができ
る。
Further, the restoration and updating of the image data held in the page memory 100 can be performed at high speed.

【0126】<第2実施形態>以下、本発明に係る第2
実施形態について説明する。
<Second Embodiment> Hereinafter, a second embodiment according to the present invention will be described.
An embodiment will be described.

【0127】上述した第1実施形態においては、出現頻
度の高い差分値を固定長符号に割り当て、それ以外の差
分値を固定長の例外コードとしてページメモリに格納す
る例について説明した。第2実施形態においては、例え
ばハフマン符号のように、差分値の出現頻度と符号長と
が反比例するように、差分値を可変長符号に割り当てる
例について説明する。
In the above-described first embodiment, an example has been described in which a difference value having a high appearance frequency is assigned to a fixed-length code, and the other difference values are stored in the page memory as fixed-length exception codes. In the second embodiment, an example will be described in which a difference value is assigned to a variable-length code such that the appearance frequency of the difference value is inversely proportional to the code length, such as a Huffman code.

【0128】図11に、第2実施形態における符号割り
当てを定義するコードテーブルを示す。図11では、図
中中央の分布傾向を有する4ビットの各差分値に対し
て、その分布数に反比例する符号長のハフマン符号を割
り当てた例である。この例においては、符号長が1ビッ
トから10ビットまで変化しており、最も出現頻度の高
い差分値「0」に割り当てられる符号長が1ビットと最
小になっている。尚、該差分値は2の補数表現であるた
め、差分値+1,+2…は−15,−14…をそれぞれ
含む。該コードテーブルは装置内のROM600に予め
保持されているが、RAM700内に保持して更新可能
としても良い。
FIG. 11 shows a code table for defining code assignment in the second embodiment. FIG. 11 shows an example in which a Huffman code having a code length inversely proportional to the number of distributions is assigned to each 4-bit difference value having a distribution tendency in the center of the figure. In this example, the code length changes from 1 bit to 10 bits, and the code length assigned to the difference value “0” having the highest appearance frequency is as short as 1 bit. Since the difference values are expressed in two's complement, the difference values +1, +2,... Include -15, -14,. The code table is stored in the ROM 600 in the apparatus in advance, but may be stored in the RAM 700 and updated.

【0129】該コードテーブルに基づいた符号化を所定
画像に対して施すことによって、ページメモリ100に
格納されるデータサイズは、原画像データの41%とな
った。またこの時、1画素あたりの平均符号長は1.6
4ビットであった。即ち、ページメモリ100の占有領
域を高効率に抑制することができる。
By performing encoding based on the code table on a predetermined image, the data size stored in the page memory 100 becomes 41% of the original image data. At this time, the average code length per pixel is 1.6.
4 bits. That is, the area occupied by the page memory 100 can be suppressed with high efficiency.

【0130】もちろん、想定した出力画像の形式及び画
像特徴によって、差分値の出現頻度は異なるため、コー
ドテーブルにおいて割り当てられる最適な符号は異な
る。
Of course, the appearance frequency of the difference value varies depending on the assumed format and image characteristics of the output image, and therefore the optimal code assigned in the code table differs.

【0131】第2実施形態における画像処理装置の装置
構成は上述した第1実施形態における図1,図2と同様
であるため、説明を省略する。図12に、第2実施形態
におけるアドレス制御部300及び濃度値算出部400
の詳細構成を示す。図12において、上述した図7と同
様の構成については同一番号を付し、説明を省略する。
The configuration of the image processing apparatus according to the second embodiment is the same as that shown in FIGS. 1 and 2 according to the first embodiment, and a description thereof will be omitted. FIG. 12 shows an address control unit 300 and a density value calculation unit 400 according to the second embodiment.
The detailed configuration of is shown. 12, the same components as those in FIG. 7 described above are denoted by the same reference numerals, and description thereof will be omitted.

【0132】第2実施形態では、ページメモリ100に
格納された符号長が各差分値毎に異なるので、濃度算出
部400において、ページメモリ100から読み出した
可変長符号を差分値に変換するための構成が必要とな
る。また、可変長符号を扱うため、完全にビット単位で
の処理が必要となる。従って、16ビット、又は32ビ
ット等の区切られた語長による、ページメモリ100の
読み出し機構等との調停を行うことが必要になる。即
ち、ページメモリ100において処理対象となるビット
位置を認識するために、該ビット位置をページメモリ1
00内の語単位のアドレス情報、及び一語内におけるビ
ット位置情報との2情報に変換するための構成を備える
必要がある。
In the second embodiment, since the code length stored in the page memory 100 differs for each difference value, the density calculator 400 converts the variable length code read from the page memory 100 into a difference value. Configuration is required. Further, since variable-length codes are handled, processing must be performed completely in bit units. Therefore, it is necessary to perform arbitration with the reading mechanism or the like of the page memory 100 based on the segmented word length such as 16 bits or 32 bits. That is, in order to recognize a bit position to be processed in the page memory 100, the bit position is stored in the page memory 1
It is necessary to provide a configuration for converting into two pieces of information, that is, address information in word units within 00 and bit position information in one word.

【0133】図12に示す構成では、濃度値算出部40
0において加算器401の前段に、ページメモリ100
から所定長のビット列を読み出し、該ビット列からハフ
マン記号を切り出すための読み出し機構、及び切り出さ
れたハフマン符号を差分値情報に変換する変換機構とが
加わる。これらの構成が即ち、符号変換部407であ
る。
In the configuration shown in FIG.
0, before the adder 401, the page memory 100
, A reading mechanism for reading a bit string of a predetermined length from the bit string and extracting a Huffman symbol from the bit string, and a converting mechanism for converting the extracted Huffman code into difference value information are added. These components are the code conversion unit 407.

【0134】図12に示す構成によって、書き込み対象
画素の濃度値及び語単位のアドレス位置、そして、処理
中の1語内でのビット位置とを得ることができる。ま
た、CPU500によってROM600内の制御プログ
ラムを実行することにより、ページメモリ100の書き
込み位置における差分情報の符号書き換え、又、該書き
換えによって後続画素符号の格納位置にずれが発生する
場合には、ページメモリ100上においてデータのビッ
トシフト処理を行う。
With the configuration shown in FIG. 12, the density value of the pixel to be written, the address position in word units, and the bit position in one word being processed can be obtained. When the CPU 500 executes the control program in the ROM 600, the code of the difference information at the write position of the page memory 100 is rewritten. Data bit shift processing is performed on 100.

【0135】更に、ページメモリ100におけるアドレ
ス指定による語単位の読み出しと、プリンタ部1014
へのデータ出力とは、全く非同期になる。
Further, reading out the word unit by address designation in the page memory 100 and the printer unit 1014
Is completely asynchronous with the output of data.

【0136】図12の構成において、ページメモリ10
0からのアドレス単位の読み出しは、ビット列から符号
を切り出して差分値に変換するす符号変換部407が管
理する。符号変換部407において、701は例えば1
語長の容量を有するバッファであり、ページメモリ10
0から読み出した1語の符号データを一時保持する。そ
して、レジスタ702で複数語に亙る所定長のビット列
を蓄える。CPU500は、レジスタ702に蓄えられ
たビット列が後述する処理において不足した場合、又は
レジスタ702に一語以上の空きがある場合、又は出力
符号値が一列分の画素数を満たさない場合、又はページ
メモリ100における書き込み対象画素に到達していな
い場合に、バッファ701に保持されているデータを読
み出す。
In the configuration shown in FIG.
Reading from an address unit from 0 is managed by a code conversion unit 407 that extracts a code from a bit string and converts it into a difference value. In the code conversion unit 407, 701 is, for example, 1
A buffer having a word-length capacity, and a page memory 10
The code data of one word read from 0 is temporarily stored. Then, the register 702 stores a bit string of a predetermined length over a plurality of words. The CPU 500 determines whether the bit string stored in the register 702 is insufficient in a process to be described later, if the register 702 has an empty space of one or more words, if the output code value does not satisfy the number of pixels for one row, or if the page memory If the write target pixel in 100 has not been reached, the data held in the buffer 701 is read.

【0137】符号変換部407においては、ページメモ
リ100から読み出した符号データをレジスタ702上
にビット列として蓄え、パターン検出部705がレジス
タ702上のビット列のパターン検出を行うことによ
り、符号が認識される。パターン検出部705は、レジ
スタ702上のビット列から、検出した符号パターンに
相当する部分を切り出して空きスペースを作り、取り除
いた符号パターンに対応する差分値を加算器401に出
力する。
In the code conversion section 407, the code data read from the page memory 100 is stored in the register 702 as a bit string, and the pattern is detected by the pattern detection section 705 detecting the pattern of the bit string in the register 702. . The pattern detection unit 705 cuts out a portion corresponding to the detected code pattern from the bit string on the register 702 to create an empty space, and outputs a difference value corresponding to the removed code pattern to the adder 401.

【0138】パターン検出部705は1画素のパターン
が検出される毎に、制御信号415を出力する。該制御
信号415は、レジスタ402に積算値の更新許可を与
えると同時に、アドレス制御部300のレジスタ304
にも入力される。レジスタ304では切り出された画素
数を計数し、目的画素に到達したか否かを確認する。
尚、ここで目的画素とは、ページメモリ100に対して
書き込みを開始すべき画素である。
The pattern detector 705 outputs a control signal 415 every time a pattern of one pixel is detected. The control signal 415 gives the register 402 permission to update the integrated value and, at the same time, the register 304 of the address control unit 300.
Is also entered. The register 304 counts the number of cut-out pixels and checks whether the target pixel has been reached.
Here, the target pixel is a pixel at which writing to the page memory 100 is to be started.

【0139】また、レジスタ304への書き込みに応じ
てアドレス制御部300が駆動され、符号変換部416
の動作の開始/停止を制御する制御信号313をイネー
ブルとし、濃度値算出処理を開始させる。そして、レジ
スタ304において目的画素に到達したと判断される時
点で制御信号314をディセーブルとして濃度値算出部
400の動作を停止する。CPU500は、割込み又は
制御信号313をモニタすることによって、符号変換部
407における動作状況を把握することができる。
The address control unit 300 is driven in response to the writing to the register 304, and the code conversion unit 416
The control signal 313 for controlling start / stop of the operation is enabled to start the density value calculation processing. When the register 304 determines that the target pixel has been reached, the control signal 314 is disabled and the operation of the density value calculation unit 400 is stopped. By monitoring the interrupt or control signal 313, the CPU 500 can grasp the operation status of the code conversion unit 407.

【0140】また符号変換部407においては、ページ
メモリ100から読み出した1語内において処理対象で
ある符号の開始位置を認識するために、1語内の処理対
象ビット位置の確認機構を有する。以下、1語内のビッ
ト位置を確認するための構成について説明する。
The code conversion section 407 has a mechanism for confirming the position of the bit to be processed in one word in order to recognize the start position of the code to be processed in one word read from the page memory 100. Hereinafter, a configuration for confirming a bit position in one word will be described.

【0141】ページメモリ100から読み出されたデー
タは、レジスタ702のビット列上に発生した空き領域
に連続して格納される。バッファ701に複数語分の読
み出しデータを保持することによってビット位置調整が
可能となり、レジスタ702上に隙間無くデータを格納
することができる。
The data read from the page memory 100 is continuously stored in a free area generated on the bit string of the register 702. By holding the read data for a plurality of words in the buffer 701, the bit position can be adjusted, and the data can be stored on the register 702 without any gap.

【0142】カウンタ704には、パターン検出部70
5が認識した符号長710が入力されることにより、レ
ジスタ702におけるビットシフト量の計数が行われ
る。CPU500は、カウンタ704によってビットシ
フト位置情報506を得ることにより、ページメモリ1
00上の書き込み対象画素と、レジスタ702上の符号
位置との対応をとることができる。
The counter 704 has a pattern detection unit 70
When the code length 710 recognized by 5 is input, the bit shift amount in the register 702 is counted. The CPU 500 obtains the bit shift position information 506 by the counter 704, and thereby obtains the page memory 1
The correspondence between the pixel to be written on 00 and the code position on the register 702 can be obtained.

【0143】又、アドレス生成部703にも符号長71
0が入力されることにより、レジスタ702上の有効デ
ータ量をモニタし、アドレス要求信号416を発生す
る。アドレス要求信号416がアドレス制御部300内
のカウンタ301へ入力されることにより、カウンタ3
01はカウントアップし、ページメモリ100上の次ア
ドレス情報、即ち次の語長分の読み出しを要求する。ま
た、アドレス生成部703では初期設定アドレス値に対
して何回新規アドレスを生成したかを計数し、該計数値
507はカウンタ704におけるビットシフト位置情報
506と共にCPU500によって参照され、レジスタ
702上の対象画素の符号位置を認識するために使用さ
れる。
The code length 71 is also stored in the address generator 703.
When 0 is input, the effective data amount on the register 702 is monitored, and the address request signal 416 is generated. When the address request signal 416 is input to the counter 301 in the address control unit 300, the counter 3
01 counts up and requests reading of the next address information on the page memory 100, that is, the next word length. The address generation unit 703 counts how many times a new address has been generated with respect to the initially set address value. The counted value 507 is referred to by the CPU 500 together with the bit shift position information 506 in the counter 704, and Used to recognize the code position of a pixel.

【0144】上述した様に、ページメモリ100から読
み出された画素毎の符号は符号変換部407においてそ
れぞれの差分値に変換される。そして、画素毎に得られ
た差分値は、第1実施形態と同様に加算器401でレジ
スタ402に保持された前画素の濃度値と加算され、濃
度情報410が復元される。
As described above, the code for each pixel read from the page memory 100 is converted by the code conversion unit 407 into each difference value. Then, the difference value obtained for each pixel is added to the density value of the previous pixel held in the register 402 by the adder 401 as in the first embodiment, and the density information 410 is restored.

【0145】以下、第2実施形態におけるページメモリ
100の一部更新処理について説明する。
Hereinafter, a process of partially updating the page memory 100 according to the second embodiment will be described.

【0146】図12に示す構成によって、ページメモリ
100における書き込み対象の画素位置(アドレス)及
び濃度値が確定し、CPU500によって、変更したい
濃度になるように対象画素の差分値を決定する。同時
に、対象画素の次画素の濃度が変化しないように、次画
素の差分値も再計算して決定する必要がある。そして、
得られた対象画素及び次画素の差分値を符号変換し、ペ
ージメモリ100上における書き換えを行う。
With the configuration shown in FIG. 12, the pixel position (address) and the density value of the writing target in the page memory 100 are determined, and the CPU 500 determines the difference value of the target pixel so as to obtain the density to be changed. At the same time, it is necessary to recalculate and determine the difference value of the next pixel so that the density of the next pixel of the target pixel does not change. And
The obtained difference value between the target pixel and the next pixel is sign-converted and rewritten on the page memory 100.

【0147】ページメモリ100において連続した画素
列を書き換える際には、必要に応じて、以下の様に各構
成を動作させる。
When a continuous pixel row is rewritten in the page memory 100, the respective components are operated as described below as necessary.

【0148】例えば、ページメモリ100上における更
新開始位置を求めた後、更に更新終了位置を求めてお
く。そして、更新処理による新たな符号長の総和が、既
存の更新対象画素及び次画素の差分符号の符号長の総和
から変化した場合には、CPU500がアドレス生成部
703,カウンタ704によりページメモリ100上の
語単位のアドレス、及び処理中の語におけるビット位置
とを確認し、後続画素列をビットシフトする。
For example, after the update start position on the page memory 100 is determined, the update end position is further determined. If the total sum of the new code lengths due to the update processing has changed from the existing sum total of the code lengths of the difference codes of the pixel to be updated and the next pixel, the CPU 500 causes the address generation unit 703 and the counter 704 to store the new code length on the page memory 100. , And the bit position in the word being processed, and the subsequent pixel row is bit-shifted.

【0149】以下、第2実施形態におけるページメモリ
100の更新処理について、図13,図14のフローチ
ャートを参照して説明する。
Hereinafter, the updating process of the page memory 100 according to the second embodiment will be described with reference to the flowcharts of FIGS.

【0150】図13,図14において、第1実施形態の
図9,図10と同様の処理には同一ステップ番号を付
し、説明を省略する。尚、該フローチャートにおいて
は、ページメモリ100のアドレスをX,Y座標によっ
て表し、Y座標が等しい値を1画素列として扱う。そし
て、各画素に対してPは旧濃度情報、Qは新濃度情報
(更新濃度情報)、Aはページメモリ100上の語単位
のアドレス(語アドレス)、Hは当該画素と前画素との
差分値を示す符号ビット列、即ちページメモリ100に
実際に格納されている値を示す。また、BPはレジスタ
702における1語内のビット位置情報を示す。また、
画素列更新処理を効率良く行うために、1画素列分の符
号を保持するに十分なサイズのビット列バッファBTを
用意する。
In FIGS. 13 and 14, the same processes as those in FIGS. 9 and 10 of the first embodiment are denoted by the same step numbers, and description thereof will be omitted. In the flowchart, the address of the page memory 100 is represented by X and Y coordinates, and a value having the same Y coordinate is treated as one pixel column. For each pixel, P is the old density information, Q is the new density information (updated density information), A is the word address (word address) on the page memory 100, and H is the difference between the pixel and the previous pixel. A sign bit string indicating a value, that is, a value actually stored in the page memory 100 is shown. BP indicates bit position information within one word in the register 702. Also,
In order to efficiently perform the pixel column updating process, a bit string buffer BT having a size sufficient to hold a code for one pixel column is prepared.

【0151】図13,図14に示す更新処理において
は、まず、上述した図9と同様に更新対象オブジェクト
(Xa,Ya)−(Xb,Yb)を得、i列上の更新範囲Xi1
〜Xikを得た後、更新対象先頭画素Xi1のアクセス準
備を完了し、アドレス制御部300を駆動する(S10
1〜S106,S801)。
In the update processing shown in FIGS. 13 and 14, first, the update target object (Xa, Ya)-(Xb, Yb) is obtained in the same manner as in FIG. 9 described above, and the update range Xi1 on the i-th column is obtained.
~ Xik, the access preparation for the update target top pixel Xi1 is completed, and the address control unit 300 is driven (S10).
1 to S106, S801).

【0152】そして、更新濃度情報Qi1〜Qikを差分値
変換して符号化し、新たに格納すべき先頭及び終端以外
の符号H'i2〜H'ik-1を求め、ビット列バッファBT上
の先頭から1画素の最大符号長分を空けたBTcmax以降
に格納する。即ち、先頭画素の差分値は更新濃度情報Q
のみからは算出できないため、ビット列バッファBT先
頭に最大符号長分の空きを用意しておく。そして、BT
において最終データが格納された次アドレスをBTeと
する(S802)。尚、この処理は、ハードウェアによ
って上記アドレス制御部300の駆動準備処理が行われ
ている間に、CPU500によって行うようにすれば効
率的である。
Then, the update density information Qi1 to Qik is converted by a difference value and encoded to obtain codes H'i2 to H'ik-1 other than the head and end to be newly stored, and from the head on the bit string buffer BT, It is stored after the maximum code length of one pixel and after BTcmax. That is, the difference value of the first pixel is the updated density information Q
Since it cannot be calculated only from the above, a space for the maximum code length is prepared at the head of the bit string buffer BT. And BT
, The next address where the last data is stored is set to BTe (S802). This process is efficient if the CPU 500 performs the process while the drive preparation process of the address control unit 300 is performed by hardware.

【0153】そして、CPU500はページメモリ10
0から読み出されて復元された濃度情報410より更新
対象先頭画素Xi1の旧濃度Pi1を得、CPUバス502
を介してカウンタ301よりページメモリ100の当該
語アドレスAi1を得、更に、ビットシフト位置情報50
6よりビット位置情報BPi1を得る(S803)。この
BPi1より現符号値Hi1を得ることができるが、この
時、レジスタ702に蓄えられたビット列が符号値Hi1
を得るに不足していれば、バッファ701によりビット
位置調整を行う。(S804)。
Then, the CPU 500 stores the page memory 10
The old density Pi1 of the first pixel Xi1 to be updated is obtained from the density information 410 read and restored from 0, and the CPU bus 502
The word address Ai1 of the page memory 100 is obtained from the counter 301 via the counter 301, and the bit shift position information 50
6 to obtain bit position information BPi1 (S803). The current code value Hi1 can be obtained from this BPi1. At this time, the bit string stored in the register 702 is the code value Hi1.
If it is not enough to obtain, the bit position is adjusted by the buffer 701. (S804).

【0154】そして、現符号値Hi1より原差分値Di1を
得(S805)、Xik+1を制御信号505に出力し、制
御信号313をアクティブとする(S806)。これに
より、更新対象終端画素の次画素Xik+1のアクセス準備
を完了し、アドレス制御部300が駆動される。
Then, the original difference value Di1 is obtained from the current code value Hi1 (S805), Xik + 1 is output to the control signal 505, and the control signal 313 is activated (S806). Thereby, the access preparation of the next pixel Xik + 1 of the update target terminal pixel is completed, and the address control unit 300 is driven.

【0155】そしてその間に、先頭画素の新たに格納す
べき差分値としてDi1+Qi1-Pi1を算出して符号化し、
該符号化結果をビット列バッファBTの先頭に格納す
る。尚、BTへの先頭符号の格納は、上記BTcmax以降
に格納された符号に連続するように行う。即ち、先頭画
素の符号が最大符号長に満たない場合には、BT先頭に
該最大符号長と先頭画素符号長との差に相当する空きエ
リアが発生する。そして、BTにおける有効データ開始
位置、即ち、先頭符号の格納アドレスをBTsとする。
(S807〜S809)。これにより、ビット列バッフ
ァBT上の更新データ長が、BTs−BTeによって得
られることが分かる。
In the meantime, Di1 + Qi1-Pi1 is calculated and encoded as a difference value to be newly stored for the first pixel,
The encoding result is stored at the head of the bit string buffer BT. Note that the head code is stored in the BT so as to be continuous with the code stored after BTcmax. That is, when the code of the first pixel is less than the maximum code length, a free area corresponding to the difference between the maximum code length and the code length of the first pixel is generated at the BT head. Then, the effective data start position in the BT, that is, the storage address of the leading code is BTs.
(S807-S809). This indicates that the update data length on the bit string buffer BT can be obtained by BTs-BTe.

【0156】次に、CPU500はページメモリ100
から読み出されて復元された濃度情報410より更新対
象終端次画素Xik+1の旧濃度Pik+1を得、CPUバス5
02を介してカウンタ301よりページメモリ100の
当該語アドレスAik+1を得、更に、ビットシフト位置情
報506よりビット位置情報BPik+1を得る(S81
1)。
Next, the CPU 500 sets the page memory 100
The old density Pik + 1 of the terminal next pixel Xik + 1 to be updated is obtained from the density information 410 read out and restored from the CPU bus 5.
02, the word address Aik + 1 of the page memory 100 is obtained from the counter 301 through the counter 301, and the bit position information BPik + 1 is obtained from the bit shift position information 506 (S81).
1).

【0157】そして、更新対象終端画素の更新値を得る
ために、Qik−Pik+1を求めて符号化した後、ビット列
バッファBTのアドレスBTeに格納し、BTeを更新す
る(S812)。
Then, in order to obtain the updated value of the last pixel to be updated, Qik−Pik + 1 is obtained and coded, then stored in the address BTe of the bit string buffer BT, and BTe is updated (S812).

【0158】そして、ページメモリ100上のデータ更
新に伴って、後続の既存画素列をずらすか否かを決定す
る。即ち、ラインバッファ上の更新データ長と、ページ
メモリ100から実際に読み出したデータ長とを比較
し、一致しなければ更新により画素列のずれが発生した
として、後続画素列の移動処理を行う。具体的には、後
続ビット列の移動量をBMvとすると、BMvは下式で
表せる。
Then, it is determined whether or not to shift the subsequent existing pixel row in accordance with the update of the data on the page memory 100. That is, the update data length on the line buffer is compared with the data length actually read from the page memory 100, and if they do not match, it is determined that a pixel column shift has occurred due to the update, and the subsequent pixel column moving process is performed. Specifically, assuming that the moving amount of the subsequent bit string is BMv, BMv can be expressed by the following equation.

【0159】BMv=(BTe−BTs)−((Aik+1+
1)−Ai1)×語長−(BPik+1−BPi1) 該BMvが「0」であれば、ずれの発生はないとし、ビ
ット列バッファBT上のBTs〜BTeのデータをそのま
まページメモリ100上の語アドレスAi1のビット位置
BPi1に転送するが、「0」でなければずれが発生した
として、ページメモリ100の符号列Hik+2以降のビッ
ト列をBMv分だけシフトした後、ビット列バッファB
T上のBTs〜BTeのデータをページメモリ100上の
アドレスAi1のビット位置BPi1に転送する(S813
〜S816)。
BMv = (BTe−BTs) − ((Aik + 1 +
1)-Ai1) x word length-(BPik + 1-BPi1) If the BMv is "0", no deviation occurs, and the data of BTs to BTe on the bit string buffer BT is directly stored on the page memory 100. The data is transferred to the bit position BPi1 of the word address Ai1, but if it is not "0", it is determined that a shift has occurred, and the bit string after the code string Hik + 2 of the page memory 100 is shifted by BMv, and the bit string buffer B
The data of BTs to BTe on T is transferred to bit position BPi1 of address Ai1 on page memory 100 (S813).
To S816).

【0160】以上でYi列の更新処理を終了し、次のYi
+1列の処理を開始する(S817)。
Thus, the updating process of the Yi column is completed, and the next Yi column is updated.
The processing for the +1 column is started (S817).

【0161】以上説明した様に、図13,図14のフロ
ーチャートに従えば、ページメモリ100における更新
対象画素列上の連続する書き換えを一括で行うことがで
きる。これにより、ページメモリ100内の既存ビット
列情報の移動の必要が発生した場合でも、該移動処理は
更新単位となる1画素列につき1度のみとなるため、画
素単位の処理と比べてはるかに少ない処理回数で済む。
As described above, according to the flowcharts of FIGS. 13 and 14, continuous rewriting on the pixel column to be updated in the page memory 100 can be performed collectively. As a result, even if it is necessary to move the existing bit string information in the page memory 100, the movement processing is performed only once for each pixel row as an update unit, which is far less than the processing in pixel units. Only the number of processes is required.

【0162】尚、上述した図13,図14のフローチャ
ートに示す処理を含む、図12に示す構成における動作
は、CPU500によって実行される制御プログラムに
従って制御される。
The operations in the configuration shown in FIG. 12, including the processes shown in the flowcharts in FIGS. 13 and 14, are controlled according to a control program executed by the CPU 500.

【0163】以上説明した様に本実施形態によれば、多
値画像データを符号化してページメモリ100に保持す
る際に、前画素との差分値に対して、その発生頻度が高
い程少ないビット数の符号を割り当てることにより、更
に省メモリ効果の高い圧縮を可能とする。
As described above, according to the present embodiment, when multi-valued image data is encoded and stored in the page memory 100, the smaller the number of bits, the higher the frequency of occurrence of the difference value from the previous pixel. By allocating a number of codes, it is possible to perform compression with higher memory saving effect.

【0164】また、該ページメモリ100に保持された
画像データの復元、及び更新も高速に行うことができ
る。
Further, the restoration and updating of the image data held in the page memory 100 can be performed at high speed.

【0165】尚、第2実施形態においては、画像データ
の画素毎の差分値の出現頻度に応じて符号を固定的に割
り当てる例について説明を行なった。通常、差分値の出
現頻度は画像によって多少の偏りがあるため、画像に応
じて割り当てる符号長を置き換えれば、より効率的な圧
縮が実現可能である。しかし、出現頻度の高い符号域は
個々の画像によって異なるため、処理する画像毎に、符
号を動的に割り当てる必要がある。特に、ページメモリ
100において書き換えが頻繁に行われる場合には、各
濃度の出現頻度も頻繁に変化し、出現頻度が安定しな
い。従って、ページメモリ100の書き換え毎に符号の
割り当てを変更し、再格納することは実用的ではない。
In the second embodiment, an example has been described in which a code is fixedly assigned according to the appearance frequency of a difference value for each pixel of image data. Normally, the appearance frequency of the difference value is slightly biased depending on the image. Therefore, by replacing the code length assigned according to the image, more efficient compression can be realized. However, since a code range having a high frequency of appearance differs for each image, it is necessary to dynamically assign a code to each image to be processed. In particular, when the page memory 100 is frequently rewritten, the appearance frequency of each density changes frequently, and the appearance frequency is not stable. Therefore, it is not practical to change the code assignment every time the page memory 100 is rewritten and store the code again.

【0166】<第3実施形態>以下、本発明に係る第3
実施形態について説明する。
<Third Embodiment> Hereinafter, a third embodiment according to the present invention will be described.
An embodiment will be described.

【0167】上述した第2実施形態においては、符号長
が完全に可変であるため、ページメモリ100に格納さ
れた符号を参照する際に、画像端から符号変換及び差分
値積算処理を行う必要があった。従って、たとえハード
ウェアによる支援があっても、第1実施形態に示したよ
うな単純な差分値を格納する方式よりも処理処理がかか
ってしまう。
In the above-described second embodiment, since the code length is completely variable, it is necessary to perform code conversion and difference value accumulation processing from the end of the image when referring to the code stored in the page memory 100. there were. Therefore, even if there is support by hardware, processing takes longer than the method of storing a simple difference value as shown in the first embodiment.

【0168】そこで第3実施形態では、ページメモリ1
00において、上記第2実施形態で示した符号に加え
て、更に画像データの濃度情報そのものを離散的に保持
することを特徴とする。
Therefore, in the third embodiment, the page memory 1
00 is characterized in that the density information itself of the image data is discretely held in addition to the codes shown in the second embodiment.

【0169】即ち、第3実施形態においては、概念的に
一枚の画像を分割して画像端を増やし、画素列方向(主
走査方向)の一度に処理すべき画素数を少なくしたこと
になる。図15にその概念図を示す。図15において
は、各画素列毎に濃度点を3ヵ所ずつ加えることによ
り、ページメモリ110が論理的に点線部91,92,
93で4分割された例を示す。以下、該濃度点を離散濃
度点と称し、論理的に分割された領域を分割領域と称す
る。即ち、ページメモリ100の構成として、画素列方
向が短くなった複数の論理ページメモリ(図15の場合
4つ)が分割領域として存在することになる。
That is, in the third embodiment, one image is conceptually divided to increase the number of image edges, and the number of pixels to be processed at one time in the pixel column direction (main scanning direction) is reduced. . FIG. 15 shows a conceptual diagram thereof. In FIG. 15, by adding three density points to each pixel column, the page memory 110 logically has dotted lines 91, 92,
An example in which the image is divided into four by 93 is shown. Hereinafter, the density point is referred to as a discrete density point, and the area logically divided is referred to as a divided area. That is, as the configuration of the page memory 100, a plurality of logical page memories (four in FIG. 15) in which the pixel column direction is shortened exist as divided areas.

【0170】第3実施形態においては、このようにペー
ジメモリ100を論理的に分割することによって、ソフ
トウェア上は、前処理として分割領域毎に処理対象画像
を分割する処理、又は、濃度情報復元時に離散濃度点で
示された濃度値と一致しているかを逐次確認し、一致し
ない場合には処理に応じて、読み出した濃度情報又は格
納されている濃度情報のいずれかを適宜変更する処理を
加える必要がある。
In the third embodiment, by logically dividing the page memory 100 in this way, software can divide the processing target image for each divided region as pre-processing, or perform restoration when density information is restored. It is sequentially checked whether the density value matches the density value indicated by the discrete density point, and if not, processing for appropriately changing either the read density information or the stored density information is added according to the processing. There is a need.

【0171】例えば、前処理として分割領域毎に処理対
象画像をソフトウェアによって分割した場合、ハードウ
ェアは上述した第2実施形態の図12に示した構成のま
まで済む。しかしながら、ページメモリ100における
格納位置自体も物理的に分割されるため、復元濃度情報
410を出力する際に、符号変換部407に対して各画
素列毎に複数回のアドレス設定が必要となる。
For example, when an image to be processed is divided for each divided area by software as pre-processing, the hardware may have the same configuration as that shown in FIG. 12 of the second embodiment. However, since the storage position itself in the page memory 100 is also physically divided, when the restored density information 410 is output, it is necessary for the code conversion unit 407 to set an address a plurality of times for each pixel column.

【0172】一方、濃度情報復元時における逐次比較を
行う場合には、ページメモリ100上では画素列が連続
するために、例えば単純に全濃度値を出力する印刷出力
時等には、画素列の先頭アドレスを一度設定すれば良
い。しかしながら、ページメモリ100の一部更新時に
は、符号変換部407において途中画素の濃度、アドレ
ス、座標、ビット位置等の情報を設定する必要があるた
め、図12に示す構成において、CPU500に対する
ビットシフト位置情報506、アドレス計数値507等
を双方向にする必要がある。
On the other hand, in the case of performing the successive comparison at the time of restoring the density information, the pixel rows are continuous on the page memory 100. The start address only needs to be set once. However, when the page memory 100 is partially updated, information such as the density, address, coordinates, and bit position of intermediate pixels needs to be set in the code conversion unit 407. Therefore, in the configuration shown in FIG. It is necessary to make the information 506, the address count value 507, and the like bidirectional.

【0173】以下、第3実施形態におけるページメモリ
100の更新処理について、図16,図17のフローチ
ャートを参照して説明する。
Hereinafter, the update processing of the page memory 100 in the third embodiment will be described with reference to the flowcharts of FIGS.

【0174】図16,図17において、第2実施形態の
図13,図14と同様の処理には同一ステップ番号を付
し、説明を省略する。該フローチャートにおいては、単
純に更新対象オブジェクトを事前に分割する方法を示
す。
In FIGS. 16 and 17, the same processes as those in FIGS. 13 and 14 of the second embodiment are denoted by the same step numbers, and description thereof is omitted. In the flowchart, a method of simply dividing the object to be updated in advance is shown.

【0175】尚、該フローチャートにおいては、ページ
メモリ100のアドレスをX,Y座標によって表し、Y
座標が等しい値を1画素列として扱う。そして、各画素
に対してPは旧濃度情報、Qは新濃度情報(更新濃度情
報)、Aはページメモリ100上の語単位のアドレス
(語アドレス)、Hは当該画素と前画素との差分値を示
す符号ビット列、即ちページメモリ100に実際に格納
されている値を示す。また、BPはレジスタ702にお
ける1語内のビット位置情報を示す。また、画素列更新
処理を効率良く行うために、1画素列分の符号を保持す
るに十分なサイズのビット列バッファBTを用意する。
In the flowchart, the address of the page memory 100 is represented by X and Y coordinates,
A value having the same coordinates is treated as one pixel row. For each pixel, P is the old density information, Q is the new density information (updated density information), A is the word address (word address) on the page memory 100, and H is the difference between the pixel and the previous pixel. A sign bit string indicating a value, that is, a value actually stored in the page memory 100 is shown. BP indicates bit position information within one word in the register 702. In addition, in order to efficiently perform the pixel row updating process, a bit string buffer BT having a size sufficient to hold a code for one pixel row is prepared.

【0176】また、該フローチャートでは図15の様に
3つの離散濃度点を有する場合について説明を行うた
め、該離散濃度点の座標を、画素列の先頭アドレスを含
めてS0〜S3とする。即ち、S0は本来の画像端であ
る。また、画素列の終端座標をS4とする。更に、各分
割領域内の更新画素列における開始点及び終了点をそれ
ぞれWs,Weとする。その他、分割領域の各先頭及び最
終位置を、添字s,eによって示す。
In the flowchart, the case of having three discrete density points as shown in FIG. 15 will be described, and the coordinates of the discrete density points are set to S0 to S3 including the head address of the pixel row. That is, S0 is the original image end. Also, let S4 be the end coordinate of the pixel row. Further, the start point and the end point in the updated pixel sequence in each divided region are set to Ws and We, respectively. In addition, the start and end positions of each divided area are indicated by subscripts s and e.

【0177】図16,図17に示す更新処理において
は、まず、上述した図13と同様に更新対象オブジェク
ト(Xa,Ya)−(Xb,Yb)を得、i列上の更新範囲Xi
1〜Xikを得る(S101〜S104)。
In the update processing shown in FIGS. 16 and 17, first, the update target object (Xa, Ya)-(Xb, Yb) is obtained in the same manner as in FIG.
1 to Xik are obtained (S101 to S104).

【0178】そして、分割領域番号jを「1」に初期化
し(S901)、更新範囲Xi1〜Xikの一部でも分割領
域j内に存在するか否かを判定する(S902)。更新
範囲が分割領域内になければ、次の分割領域について処
理を開始する(S927,S928)。
Then, the division area number j is initialized to "1" (S901), and it is determined whether or not even a part of the update range Xi1 to Xik exists in the division area j (S902). If the update range is not within the divided area, the processing is started for the next divided area (S927, S928).

【0179】更新範囲が分割領域内にあれば、更新範囲
の開始位置Xi1と分割領域先頭Sj-1とを比較し、実際
にページメモリ100上において更新を行う、分割領域
内の更新画素列先頭Wsにセットする。即ち、更新範囲
の開始位置Xi1が分割領域先頭Sj-1よりも前にあれば
Sj-1が更新画素列先頭Wsとなり、後であればXi1がW
sとなる(S903〜S905)。
If the update range is within the divided region, the start position Xi1 of the update range is compared with the start of the divided region Sj-1, and the update is actually performed on the page memory 100. Set to Ws. That is, if the start position Xi1 of the update range is before the division region head Sj-1, Sj-1 is the update pixel column head Ws.
s (S903 to S905).

【0180】次に、同様に更新範囲の終了位置Xikと分
割領域終端Sjとを比較し、分割領域内の更新画素列終
端Weにセットする。即ち、更新範囲の終了位置Xikが
分割領域終端Sjよりも前にあればXikが更新画素列終
端Weとなり、後であればSjがWeとなる(S906〜
S908)。
Next, similarly, the end position Xik of the update range is compared with the end of the divided area Sj, and set to the updated pixel column end We in the divided area. That is, if the end position Xik of the update range is before the end of the divided region Sj, Xik is the end of the updated pixel column We, and if it is after, the end of Sj is We (S906 to S906).
S908).

【0181】以上の処理により、分割領域内における更
新範囲Ws〜Weが決定される。そして以降のステップS
909〜S926においては、第2実施形態の図13,
図14に示すステップS106〜S816までの処理
を、分割領域内における更新範囲Ws〜Weについて同様
に行う。
With the above processing, the update range Ws-We in the divided area is determined. And subsequent steps S
In steps 909 to S926, FIG.
The processing of steps S106 to S816 shown in FIG. 14 is similarly performed for the update ranges Ws to We in the divided area.

【0182】そして、ステップS927で分割領域番号
jをインクリメントし、全ての分割領域(この場合4領
域)について更新処理が終了するまで、上記分割領域単
位の画素列更新処理を繰り返す(S928)。そして全
分割領域についての更新処理が終了すれば、次の画素列
の処理を開始する(S929)。
Then, in step S927, the division area number j is incremented, and the above-described pixel row update processing in units of division areas is repeated until the update processing is completed for all the division areas (in this case, four areas) (S928). Then, when the update process for all the divided regions is completed, the process for the next pixel row is started (S929).

【0183】以上により、第3実施形態における分割領
域処理が実現される。
As described above, the divided area processing in the third embodiment is realized.

【0184】尚、上記分割領域処理を実現するために
は、第2実施形態の図12に示した構成において、ペー
ジメモリ100上における各分割領域の開始位置、具体
的にはアドレス情報とビット位置開始情報上記アドレス
情報とビット位置開始情報とを格納するためのメモリ領
域が新たに必要となる。
In order to realize the divided area processing, in the configuration shown in FIG. 12 of the second embodiment, the start position of each divided area on the page memory 100, specifically, the address information and the bit position Start information A new memory area is required to store the address information and the bit position start information.

【0185】また、上記フローチャートにおいては更新
対象オブジェクトを事前に分割する方法について説明を
行ったが、濃度情報復元時における逐次比較処理を行う
場合には、図12に示す構成において、各離散濃度点が
示す濃度情報を格納するためのメモリ領域が更に必要と
なる。
In the above flowchart, the method of dividing the object to be updated in advance has been described. However, when performing the successive approximation processing at the time of restoring the density information, in the configuration shown in FIG. Further requires a memory area for storing the density information indicated by.

【0186】但し、ページメモリ100を物理的にも分
割した場合には、ビット位置情報と離散濃度情報とは、
ハードウェアに依存する初期値として省略される。
However, when the page memory 100 is physically divided, the bit position information and the discrete density information are
Omitted as a hardware-dependent initial value.

【0187】以上説明した様に第3実施形態によれば、
画像データの差分値をその出現頻度に応じた可変長符号
としてページメモリに保持する際に、所定数の濃度情報
を離散的に保持することにより、特にページメモリ更新
処理時の処理速度を向上させることができる。
As described above, according to the third embodiment,
When a difference value of image data is stored in a page memory as a variable-length code corresponding to the frequency of appearance, a predetermined number of pieces of density information are stored discretely, thereby particularly improving the processing speed in a page memory update process. be able to.

【0188】尚、上述した第1乃至第3実施形態におい
ては、画像データの一次濃度差分をとって符号化し、ペ
ージメモリ100に格納する例について説明を行なっ
た。しかしながら、本発明の濃度差分計算における次数
は一次に限らず、何次でも良い。
In the first to third embodiments described above, an example has been described in which the primary density difference of the image data is encoded and stored in the page memory 100. However, the order in the density difference calculation of the present invention is not limited to the first order, and may be any order.

【0189】一般に、次数を上げるほどn次差分値の出
現頻度は偏向するため、符号置き換えによってより高い
省メモリ効果を得ることができる。しかしながら、差分
計算における次数が増加すると、処理系が複雑化してし
まう。例えば、上述したような一次差分値の場合のペー
ジメモリ100の更新処理においては、更新対象画素及
びその次画素の差分値調整を行えば良いが、二次差分ま
で取った場合には、更にその次の隣接画素まで影響を及
ぼしてしまう。また、S/N比の悪い画像においては、
差分の次数を上げても符号化時の圧縮の効果はさほど得
られない。従って各実施形態においては、一次差分の例
のみを示した。
In general, as the order increases, the appearance frequency of the n-th difference value deviates, so that a higher memory saving effect can be obtained by code replacement. However, when the order in the difference calculation increases, the processing system becomes complicated. For example, in the update process of the page memory 100 in the case of the primary difference value as described above, the difference value between the pixel to be updated and the next pixel may be adjusted. This affects the next adjacent pixel. In an image having a poor S / N ratio,
Even if the order of the difference is increased, the effect of compression at the time of encoding cannot be obtained so much. Therefore, in each embodiment, only an example of the primary difference is shown.

【0190】尚、上述した第1乃至第3実施形態におい
ては、ページメモリ100に保持する多値画像データが
入力I/F1013を介して外部装置から入力される例
について説明したが、もちろん装置内にスキャナ等を備
え、原稿画像を光学的に読み取ることによって、多値画
像データを入力しても良い。
In the first to third embodiments described above, an example has been described in which the multi-valued image data held in the page memory 100 is input from an external device via the input I / F 1013. A multi-valued image data may be input by optically reading a document image.

【0191】また、ページメモリ100を1つ備える構
成を例として説明を行ったが、ページメモリ100を各
色毎に備えることにより、カラー画像処理に適用するこ
とも可能である。
In the above description, the configuration having one page memory 100 has been described as an example. However, by providing the page memory 100 for each color, the present invention can be applied to color image processing.

【0192】<第4実施形態>以下、本発明に係る第4
実施形態について説明する。
<Fourth Embodiment> Hereinafter, a fourth embodiment according to the present invention will be described.
An embodiment will be described.

【0193】上述した第1乃至第3実施形態において
は、入力された多値画像について、各画素毎に前画素と
の差分を符号化してページメモリ100に保持する例に
ついて説明を行なった。この例は、もちろんモノクロの
画像処理装置のみでなく、ページメモリを複数備えるこ
とによって面順次に画像形成を行うカラー画像処理装置
にも適用することができる。
In the above-described first to third embodiments, an example has been described in which the difference between the input multi-valued image and the previous pixel is encoded and stored in the page memory 100 for each pixel. This example can be applied not only to a monochrome image processing apparatus but also to a color image processing apparatus having a plurality of page memories and performing image formation in a frame-sequential manner.

【0194】しかしながら、上記第1乃至第3実施形態
においては、外部のホストコンピュータから入力I/F
1013を介して多値画像データを受信しているため、
特にカラー画像データを受信する場合、転送時間が長く
なってしまうという問題があった。従って第4実施形態
においては、外部のホストコンピュータからカラー画像
データを転送する際に、転送データを符号化することに
よって転送データ量を削減し、転送時間をより短縮する
ことが可能な画像処理システムについて説明する。
However, in the first to third embodiments, the input I / F from the external host computer is
Since multi-value image data is received via 1013,
In particular, when color image data is received, there is a problem that the transfer time becomes long. Therefore, in the fourth embodiment, when color image data is transferred from an external host computer, the amount of transfer data can be reduced by encoding the transfer data and the transfer time can be further reduced. Will be described.

【0195】まず、第4実施形態における転送データの
符号化の基本的概念について説明する。
First, the basic concept of encoding the transfer data in the fourth embodiment will be described.

【0196】通常の自然物やそれを取り込んだ画像、あ
るいは人間にとって認識可能な画像においては、明暗は
激しく変化することがあっても、色変化は比較的緩やか
である。即ち、通常取り扱う画像データにおいては、各
画素間の濃度軸変動よりも、色軸変動の方が緩やかであ
る。一般に、変動が緩やかであるデータにおいては、隣
接データ間の差分値の出現率は小さい差分値に集中す
る。従って、第2実施形態に示した様に出現頻度の高い
差分値毎により短い符号長の符号を割り当てた場合、高
い圧縮効率が得られる。
In a normal natural object, an image obtained by taking it in, or an image recognizable by humans, the color change is relatively gradual even though the brightness may change drastically. That is, in the image data normally handled, the color axis fluctuation is more gradual than the density axis fluctuation between pixels. Generally, in data having a gradual change, the appearance rate of the difference value between adjacent data concentrates on a small difference value. Therefore, when a code having a shorter code length is assigned to each difference value having a higher appearance frequency as shown in the second embodiment, high compression efficiency can be obtained.

【0197】従って第4実施形態では、人間が通常扱う
画像データは、近傍画素間において濃度相関よりも色相
関の方が高いという特徴を利用して、より圧縮効果の高
いデータ転送方法を実現することを特徴とする。
Therefore, in the fourth embodiment, a data transfer method with a higher compression effect is realized by utilizing the feature that image data normally handled by humans has a higher color correlation than a density correlation between neighboring pixels. It is characterized by the following.

【0198】しかしながら、通常のカラー画像処理装置
は、複数の原色色素を使用する、例えばCMYK等の原
色分解系である。このような原色分解系においては、即
ち各単色毎の画像データを有するため、単色内の濃度情
報は、上述したように近傍画素間の相関性が低い。即
ち、原色分解系のままでは濃度相関に対する色相関の高
さを効率的に利用することができない。隣接画素間の色
相関を効率的に利用するためには、原色分解系の画像デ
ータを、色差、彩度等の論理的な、人間の認識系を直結
した表色系に変換する必要がある。しかしながら、画像
処理装置における印刷機構は通常原色分解系である以
上、かような変換を行うことは、コスト的、処理速度的
にも不都合である。
However, an ordinary color image processing apparatus is a primary color separation system such as CMYK that uses a plurality of primary color dyes. Since such a primary color separation system has image data for each single color, the density information in a single color has low correlation between neighboring pixels as described above. That is, if the primary color separation system is used as it is, it is not possible to efficiently utilize the high color correlation with respect to the density correlation. In order to efficiently use the color correlation between adjacent pixels, it is necessary to convert image data of a primary color separation system into a logical color system such as color difference and saturation, which is directly connected to a human recognition system. . However, since the printing mechanism in the image processing apparatus is usually a primary color separation system, performing such conversion is inconvenient in terms of cost and processing speed.

【0199】そこで第4実施形態においては、フルカラ
ー画像データを色差、彩度等に変換することなく、色相
関度を高めたデータを高速に生成する。以下、具体的に
説明する。
Therefore, in the fourth embodiment, data with an increased color correlation is generated at high speed without converting full-color image data into color difference, saturation, and the like. Hereinafter, a specific description will be given.

【0200】即ち、原色分解系における各原色間での差
分を取ることによって、各原色情報に含まれる濃度要素
を相殺させる。これにより、色相、彩度等の変動が緩や
かな要素を残すことができ、圧縮効果の高い情報への変
換が行えるため、効率的なデータ転送が図れる。
That is, by taking the difference between each primary color in the primary color separation system, the density element included in each primary color information is canceled. As a result, it is possible to leave elements with gentle fluctuations in hue, saturation, and the like, and to perform conversion into information having a high compression effect, thereby achieving efficient data transfer.

【0201】尚、各原色間の差分データは、正確な色
相、彩度情報を示すものではないが、該差分データは単
純な加減算機構でリアルタイムに生成することが可能で
あり、かつ、濃度情報を正確に復元することができる。
Although the difference data between the primary colors does not indicate accurate hue and saturation information, the difference data can be generated in real time by a simple addition / subtraction mechanism, and the density information can be obtained. Can be accurately restored.

【0202】以下、第4実施形態における符号化及び復
号について、より具体的に説明する。
Hereinafter, encoding and decoding in the fourth embodiment will be described more specifically.

【0203】図18に、第4実施形態におけるカラーL
BP(レーザビームプリンタ)の構成を示す。図18に
おいて、給紙部2101から給紙された転写紙Pは搬送
路2102を介してその先端をグリッパ2103fによ
り挾持されて、転写ドラム2103の外周に保持され
る。光学ユニット2107により感光ドラム2100上
に各色毎に形成された潜像は、各色現像器Dy,Dc,
Db,Dmにより現像されて、転写ドラム2103の外
周の用紙2102に複数回転写されることにより、多色
画像が形成される。その後、転写紙Pは分離爪2113
により転写ドラム2103から分離されて、定着ユニッ
ト2104で定着され、排紙トレー2115に排出され
る。
FIG. 18 shows a color L according to the fourth embodiment.
1 shows a configuration of a BP (laser beam printer). In FIG. 18, a transfer sheet P fed from a sheet feeding unit 2101 is held on the outer periphery of the transfer drum 2103 with a leading end held by a gripper 2103f via a conveyance path 2102. The latent images formed for each color on the photosensitive drum 2100 by the optical unit 2107 are stored in the respective color developing units Dy, Dc,
The image is developed by Db and Dm and is transferred to the paper 2102 on the outer periphery of the transfer drum 2103 a plurality of times to form a multicolor image. After that, the transfer paper P is separated from the separation claw 2113.
Then, the sheet is separated from the transfer drum 2103 by the fixing unit 2104, and is discharged to a discharge tray 2115.

【0204】各色の現像器Dy,Dm,Dc,Dbは、
それぞれの両端に回転軸を有し、各々が該軸を中心に回
転可能となるように現像器選択機構部2108に保持さ
れている。各色現像器Dy,Dm,Dc,Dbはその姿
勢を一定に維持した状態で現像器選択のための回転がな
される。そして選択された現像器が現像位置に移動後、
現像器選択機構部2108は選択機構保持フレーム21
09と一体で、ソレノイド2109aにより支点210
9bを中心として感光ドラム2100方向に移動位置を
決定される。
The developing units Dy, Dm, Dc, Db of the respective colors are:
Each end has a rotating shaft, and each is held by the developing device selection mechanism 2108 so as to be rotatable about the shaft. Each color developing device Dy, Dm, Dc, Db is rotated for selecting a developing device while keeping its posture constant. And after the selected developing device moves to the developing position,
The developing device selecting mechanism 2108 is provided with the selecting mechanism holding frame 21.
09 and the fulcrum 210 by the solenoid 2109a.
The moving position is determined in the direction of the photosensitive drum 2100 around 9b.

【0205】次に、上記構成のカラーLBPの動作につ
いて具体的に説明する。
Next, the operation of the color LBP having the above configuration will be specifically described.

【0206】2105は操作のための各種スイッチ及び
LED表示器等が配されている操作パネル、2114は
外部に接続されているホストコンピュータ等から画像デ
ータを入力する入力I/Fである。2130はLBP2
000全体の制御及び入力I/F2114を介して転送
されてきた圧縮画像データを復元するプリンタ制御ユニ
ットである。このプリンタ制御ユニット2130は、色
毎の画像データに基づいて面順次にレーザ駆動信号を発
生し、レーザドライバ2106に出力する。これによ
り、レーザドライバ2106は画像信号に応じたレーザ
ビーム光Lを発射する。
Reference numeral 2105 denotes an operation panel on which various switches for operation and an LED display are arranged. Reference numeral 2114 denotes an input I / F for inputting image data from an externally connected host computer or the like. 2130 is LBP2
000 is a printer control unit for restoring the compressed image data transferred via the input I / F 2114 and control of the whole. The printer control unit 2130 generates laser drive signals on a plane-by-plane basis based on image data for each color, and outputs the laser drive signals to the laser driver 2106. Thereby, the laser driver 2106 emits the laser beam L according to the image signal.

【0207】一方、帯電器2111によって感光ドラム
2100が所定の極性に均一に帯電され、レーザビーム
光Lによる露光によって、感光ドラム2100上に例え
ば、Y(イエロー)色の潜像がY色の現像器Dyにより
現像され、感光体ドラム2100上にY色の第1のトナ
ー像が形成される。一方、所定のタイミングで転写紙P
が給紙され、トナーと反対極性の転写バイアス電圧が転
写ドラム2103に印加され、感光体ドラム2100上
の第1トナー像が転写紙Pに転写されると共に、転写紙
Pが転写ドラム2103の表面に静電吸着される。その
後、感光ドラム2100はクリーナ112によって残留
するY色トナーが除去され、次の色の潜像形成及び現像
行程に備える。
On the other hand, the photosensitive drum 2100 is uniformly charged to a predetermined polarity by the charger 2111, and a latent image of, for example, Y (yellow) color is developed on the photosensitive drum 2100 by exposure with the laser beam L. The first toner image of Y color is formed on the photosensitive drum 2100 by development by the container Dy. On the other hand, the transfer paper P
Is fed, a transfer bias voltage having a polarity opposite to that of the toner is applied to the transfer drum 2103, the first toner image on the photosensitive drum 2100 is transferred to the transfer paper P, and the transfer paper P is transferred to the surface of the transfer drum 2103. Is electrostatically attracted. Thereafter, the remaining Y toner is removed from the photosensitive drum 2100 by the cleaner 112, and the photosensitive drum 2100 prepares for the next color latent image formation and development process.

【0208】次に、前記感光体ドラム2100上にレー
ザビーム光LによりM(マゼンタ)色の第2の潜像が形
成され、次いでM色の現像器Dmにより感光体ドラム2
100上の第2の潜像が現像されてM色の第2のトナー
像が形成される。そして、このM色の第2のトナー像
は、先に転写紙Pに転写されたY色の第1のトナー像の
位置に合わせて転写紙Pに転写される。この2色目のト
ナー像の転写においては、転写紙が転写部に達する直前
に、転写ドラム2103に第1のトナー像の転写時より
も高いバイアス電圧が印加される。同様にして、C(シ
アン)色,K(ブラック)色の第3,第4の潜像が感光
体ドラム2100上に順次形成され、それぞれが現像器
Dc,Dbによって順次現像され、転写紙Pに先に転写
されたトナー像と位置合わせされてC色,K色の第3,
第4の各トナー像が順次転写される。以上説明したよう
にして、転写紙P上に4色のトナー像が重なった状態で
形成されることになる。これら3色目,4色目のトナー
像の転写においても、転写紙が転写部に達する直前に転
写ドラム2103に第2のトナー像の転写時よりも高い
バイアス電圧がそれぞれ印加される。
Next, an M (magenta) second latent image is formed on the photosensitive drum 2100 by the laser beam L, and then the photosensitive drum 2
The second latent image on 100 is developed to form a second toner image of M color. The M-color second toner image is transferred onto the transfer paper P in accordance with the position of the Y-color first toner image previously transferred onto the transfer paper P. In the transfer of the second color toner image, a bias voltage higher than that during the transfer of the first toner image is applied to the transfer drum 2103 immediately before the transfer paper reaches the transfer portion. Similarly, third and fourth latent images of C (cyan) color and K (black) color are sequentially formed on the photosensitive drum 2100, and are respectively sequentially developed by the developing units Dc and Db. Are aligned with the previously transferred toner image,
The fourth toner images are sequentially transferred. As described above, four color toner images are formed on the transfer paper P in an overlapping state. In the transfer of the third and fourth color toner images, a bias voltage higher than that at the time of transfer of the second toner image is applied to the transfer drum 2103 immediately before the transfer paper reaches the transfer portion.

【0209】この後、4色のトナー像が重畳転写された
転写紙Pの先端部が分離位置に近づくと、分離爪211
3が接近してその先端が転写ドラム2103の表面に接
触し、転写紙Pを転写ドラム2103から分離させる。
分離爪2113の先端は転写ドラム表面との接触状態を
保ち、その後転写ドラム2103から離れて元の位置に
戻る。
Thereafter, when the leading end of the transfer paper P on which the toner images of the four colors are superimposed and transferred approaches the separation position, the separation claw 211 is moved.
3, the leading edge thereof comes into contact with the surface of the transfer drum 2103, and the transfer paper P is separated from the transfer drum 2103.
The tip of the separation claw 2113 keeps contact with the surface of the transfer drum, and then separates from the transfer drum 2103 and returns to the original position.

【0210】そして、分離された転写紙Pは定着器21
04に搬送され、ここで転写紙上のトナー像が定着され
て排紙トレイ2115上に排出される。以上が第4実施
形態が適用されるカラーLBPにおける印刷行程であ
る。
Then, the separated transfer paper P is fed to the fixing device 21.
04, where the toner image on the transfer paper is fixed and discharged onto the discharge tray 2115. The above is the printing process in the color LBP to which the fourth embodiment is applied.

【0211】第4実施形態においては、ホストコンピュ
ータよりフルカラーの画像データを面順次にLBP20
00に転送することを前提としている。この時、第1色
目の画像データはそのまま転送し、2色目以降の画像デ
ータを転送する際に、前色の画像データに対する濃度差
分情報を算出、符号化して送出することを特徴とする。
もちろん、LBP2000側で受信された2色目以降の
符号は、復号、積算されることにより復元される。
In the fourth embodiment, full-color image data is sequentially read out of the LBP 20 by the host computer.
00 is assumed. At this time, the image data of the first color is transferred as it is, and when transferring the image data of the second and subsequent colors, the density difference information for the image data of the previous color is calculated, encoded and transmitted.
Of course, the codes of the second and subsequent colors received on the LBP2000 side are restored by decoding and integrating.

【0212】第4実施形態の画像処理システム構成とし
ては、上述したLBP2000がホストコンピュータと
接続されており、ホストコンピュータにおいて、LBP
2000とのデータ転送時に機能するのがプリンタドラ
イバである。該画像処理システムのブロック構成を図1
9に示す。
In the image processing system configuration of the fourth embodiment, the above-described LBP2000 is connected to a host computer, and the host computer uses the LBP2000.
The function of the printer driver at the time of data transfer with the 2000 is the printer driver. FIG. 1 shows a block configuration of the image processing system.
9

【0213】図19において、3000がホストコンピ
ュータ内のプリンタドライバであり、ホストコンピュー
タ内において生成されたフルカラーの多値画像データ
を、LBP2000へ転送する際の制御を行う。尚、プ
リンタドライバ3000は、LBP2000側からの受
信要求発生時に、データ送出を行う。
In FIG. 19, reference numeral 3000 denotes a printer driver in the host computer, which controls the transfer of full-color multivalued image data generated in the host computer to the LBP2000. Note that the printer driver 3000 sends out data when a reception request is issued from the LBP 2000 side.

【0214】プリンタドライバ3000において、60
1は色分離部であり、入力されたフルカラーの多値画像
データを、LBP1000で処理可能な色成分に分離す
る。第4実施形態においては、Y(イエロー),M(マ
ゼンタ),C(シアン),K(ブラック)の4色に分離
するとする。そして、差分値演算部602において送出
する順に応じた色間の差分値が算出される。該差分値は
符号化部603で該差分値の出現頻度に応じた適当な符
号長の符号が割り当てられた後に、通常のデータ転送時
において使用される転送符号化が施される。符号化され
た画像データは、画像メモリ604に一時保持される。
In the printer driver 3000, 60
A color separation unit 1 separates the input full-color multivalued image data into color components that can be processed by the LBP 1000. In the fourth embodiment, it is assumed that the light is separated into four colors of Y (yellow), M (magenta), C (cyan), and K (black). Then, a difference value calculator 602 calculates a difference value between the colors according to the order of transmission. After the encoding unit 603 assigns a code having an appropriate code length according to the frequency of appearance of the difference value to the difference value, the difference unit is subjected to transfer encoding used during normal data transfer. The encoded image data is temporarily stored in the image memory 604.

【0215】差分値演算部602及び符号化部603に
おいては、上述した様に第1色目については差分演算を
行なわずに原濃度情報の転送符号化のみを行い、第2色
目以降については、差分値を算出して該差分値の符号
化、及び転送符号化を行う。例えば、第4実施形態にお
いてはY,M,C,Kの順に面順次で画像データを転送
するとすると、Y画像データは濃度値が転送符号化され
て出力され、次にM画像データとY画像データとの各画
素毎の差分(M−Y)が算出され、符号化及び転送符号
化される。そして、同様に各差分C−M,K−Cが順次
算出され、符号化される。尚、符号化部603における
差分値の符号化方法としては、例えば上述した第1乃至
第3実施形態で示した様な符号割り当てを行なえば良
い。
In the difference value calculating section 602 and the coding section 603, as described above, only the transfer coding of the original density information is performed without performing the difference calculation for the first color, and the difference coding is performed for the second and subsequent colors. A value is calculated, and the difference value is encoded and transfer-encoded. For example, in the fourth embodiment, if image data is transferred in the order of Y, M, C, and K, the density value of the Y image data is transferred and output, and then the M image data and the Y image The difference (M−Y) for each pixel from the data is calculated, encoded, and transfer encoded. Then, similarly, the differences CM and KC are sequentially calculated and coded. As a method of encoding the difference value in the encoding unit 603, for example, the code assignment as described in the above-described first to third embodiments may be performed.

【0216】以上のようにして画像メモリ604に保持
された符号化データは、出力I/F605を介して、プ
リンタドライバ3000よりLBP2000へY,M−
Y,C−M,K−Cの順で送出される。
The coded data held in the image memory 604 as described above is sent from the printer driver 3000 to the LBP 2000 via the output I / F 605 to the Y, M-
It is transmitted in the order of Y, CM, and KC.

【0217】尚、プリンタドライバ3000において6
06はCPUであり、ドライバ内の各構成をROM60
7に保持された制御プログラムに従って統括的に制御す
る。608はRAMであり、CPU606の作業領域と
して使用される。
In the printer driver 3000, 6
Reference numeral 06 denotes a CPU, which stores components in the driver in a ROM 60
7 is controlled overall according to the control program stored in the control program 7. Reference numeral 608 denotes a RAM, which is used as a work area of the CPU 606.

【0218】次に、上述したような画像データを受信す
るLBP2000におけるプリンタ制御ユニット213
0の構成を図20に示し、説明する。
Next, the printer control unit 213 in the LBP2000 for receiving the image data as described above.
0 is shown in FIG. 20 and will be described.

【0219】図20において2140はプリンタ部であ
り、上述した図18に示す構成において、レーザドライ
バ2106以降の画像形成処理を行う構成を包括するも
のである。
In FIG. 20, reference numeral 2140 denotes a printer unit, which includes a configuration for performing image forming processing after the laser driver 2106 in the configuration shown in FIG.

【0220】また、プリンタ制御ユニット2130にお
いて、810は転送されてきた画像データを格納する画
像メモリであり、単色分の階調画像データを十分に格納
できるだけの容量を有する。804はプリンタ部214
0の生成するタイミング信号に応じて、画像メモリ81
0上の画像データのプリンタ部2140への出力を制御
するプリントシーケンサである。また、801は受信デ
ータを一次格納する受信バッファであり、802は転送
に伴う通常の手法により圧縮された受信データを伸張す
る伸張部である。803は色復元部であり、伸張部80
2によって得られた差分値情報と画像メモリ810上の
対応画素の濃度値情報とに基づいて演算を行うことによ
り、次色の濃度情報を復元し、画像メモリ810上に書
き戻す。
In the printer control unit 2130, reference numeral 810 denotes an image memory for storing the transferred image data, and has a capacity enough to store gradation image data of a single color. Reference numeral 804 denotes a printer unit 214
0 according to the timing signal generated by the image memory 81.
The print sequencer controls output of image data on the printer unit 2140 to the printer unit 2140. Reference numeral 801 denotes a reception buffer for temporarily storing received data, and 802 denotes an expansion unit for expanding received data compressed by a normal method associated with transfer. Reference numeral 803 denotes a color restoration unit,
The density information of the next color is restored by performing an operation based on the difference value information obtained in step 2 and the density value information of the corresponding pixel on the image memory 810, and written back to the image memory 810.

【0221】又、800はプリンタ制御ユニット213
0全体の動作を制御するシステムシーケンサである。シ
ステムシーケンサ800は、第1色データを受信してい
る場合には伸張部色復元部803の動作を止め、単純に
伸張部802において伸張された濃度データが画像メモ
リ810に書き込まれるように制御する。そして、2色
目以降の画像データを受信した場合には、伸張部802
において差分情報が出力されるため、色復元部803を
動作させるように制御する。
Reference numeral 800 denotes a printer control unit 213.
0 is a system sequencer that controls the entire operation. The system sequencer 800 stops the operation of the expansion unit color restoration unit 803 when the first color data is received, and controls the density data simply expanded by the expansion unit 802 to be written to the image memory 810. . When the image data of the second and subsequent colors is received, the decompression unit 802
, The difference information is output, so that the color restoration unit 803 is controlled to operate.

【0222】更にシステムシーケンサ800は、受信バ
ッファ801の使用率やプリンタ部2140における紙
移動量等の情報に基づき、プリンタドライバ3000か
らの受信データ量、即ち、プリンタドライバ3000に
対する受信要求を制御する。例えば、受信バッファ80
1が一杯になっている場合には受信要求を停止し、受信
バッファ801に空きがある場合には受信要求を送出す
る。
Further, the system sequencer 800 controls the amount of data received from the printer driver 3000, that is, a reception request to the printer driver 3000, based on information such as the usage rate of the reception buffer 801 and the amount of paper movement in the printer unit 2140. For example, the reception buffer 80
When 1 is full, the reception request is stopped, and when there is free space in the reception buffer 801, the reception request is sent.

【0223】尚、図20において210はプリンタドラ
イバ3000から転送されてきた画像データを示し、2
11は受信要求の制御信号、212は受信バッファ80
1内のデータ量をモニタするための制御信号、213は
色復元部803の演算制御信号、214はプリントシー
ケンサ804から出力された、画像メモリのアドレス情
報を示す。また、図中太矢印が画像データの流れを示
す。
In FIG. 20, reference numeral 210 denotes image data transferred from the printer driver 3000.
11 is a control signal for a reception request, 212 is a reception buffer 80
Reference numeral 213 denotes a control signal for monitoring the amount of data in 1, reference numeral 213 denotes an operation control signal of the color restoration unit 803, and reference numeral 214 denotes address information of an image memory output from the print sequencer 804. Also, thick arrows in the figure indicate the flow of image data.

【0224】次に、色復元部803における色復元処理
について説明する。画像メモリ810において、既にプ
リンタ部2140に送出されたメモリ領域上にある画像
データは、色復元部803で順次伸張部802から入力
されてくる差分値と加算演算されることにより、次色の
濃度データが復元される。例えば、第4実施形態におい
てはまず第1色情報として、Y色情報が画像メモリ81
0上に展開される。そして、このY色情報を順次プリン
タ部2140に出力すると同時に、色復元部803にお
いてM−Yの差分データを利用して、既に出力の終った
領域のY色データをM色データに置き換える。このよう
に、画像メモリ810上のY色データは、プリンタ部2
140への出力に応じて順次M色データに置き換えられ
るため、画像メモリ810の容量は1色分あれば良い。
Next, the color restoration processing in the color restoration unit 803 will be described. In the image memory 810, the image data already in the memory area that has been sent to the printer unit 2140 is added to the difference value sequentially input from the decompression unit 802 by the color restoration unit 803 to obtain the density of the next color. The data is restored. For example, in the fourth embodiment, first, the Y color information is stored in the image memory 81 as the first color information.
Expands to zero. Then, the Y color information is sequentially output to the printer unit 2140, and at the same time, the color restoration unit 803 uses the MY difference data to replace the Y color data of the already output area with the M color data. As described above, the Y color data on the image memory 810 is stored in the printer unit 2.
Since the data is sequentially replaced with M color data in accordance with the output to 140, the capacity of the image memory 810 may be one color.

【0225】尚、色復元部803における次色データ復
元の対象領域が、画像メモリ810からプリンタ部21
40への送出領域に追いつきそうな場合には、システム
シーケンサ800によって、色復元部803における差
分データと前色濃度データとの演算及び書き戻し処理を
停止させ、追い越しを防ぐ必要がある。このために、画
像メモリ810に保持される画像領域に対して、プリン
タ部2140への送出点を指示するアドレス指定のポイ
ンタ(送出点ポインタ)と、色復元部803における次
色復元点のアドレス指定のポインタ(復元点ポインタ)
とが必要になる。送出点ポインタはプリントシーケンサ
804において必然的に備えられるため、該送出点ポイ
ンタに応じて画像メモリ810を読み出す読み出し手段
を用意しておけば良い。同様に、復元点ポインタは色復
元部に必然的に備えられる。
The target area for the next color data restoration in the color restoration section 803 is stored in the image memory 810 from the printer section 21.
If it is almost impossible to catch up with the transmission area to 40, the system sequencer 800 needs to stop the calculation and write-back processing of the difference data and the previous color density data in the color restoration unit 803 to prevent overtaking. For this purpose, for the image area held in the image memory 810, an address designation pointer (sending point pointer) indicating a sending point to the printer unit 2140, and an address designation of the next color restoring point in the color restoring unit 803. Pointer (restoration point pointer)
Is required. Since the sending point pointer is inevitably provided in the print sequencer 804, a reading means for reading the image memory 810 according to the sending point pointer may be prepared. Similarly, a restoration point pointer is necessarily provided in the color restoration unit.

【0226】ここで、図21のフローチャートにプリン
タドライバ3000における画像送出手順を示し、以下
に説明する。
Here, an image transmission procedure in the printer driver 3000 is shown in the flowchart of FIG. 21 and will be described below.

【0227】ホストコンピュータにおいて生成されたカ
ラー画像データは色分離部601で色分離され、差分値
演算部602において、次に送出する色順に応じて色間
の差分値が算出される(S201〜S203)。そし
て、算出された色差分値は、符号化部603で更に圧縮
された(S204)後、LBP2000へ送出される
(S205〜S207)。
The color image data generated by the host computer is color-separated by the color separation unit 601, and the difference value calculation unit 602 calculates a difference value between colors according to the color order to be transmitted next (S 201 to S 203). ). Then, the calculated color difference value is further compressed by the encoding unit 603 (S204), and then sent to the LBP2000 (S205 to S207).

【0228】尚、LBP2000においては、上述した
様にY,M,C,Kの順に画像データが必要となるた
め、プリンタドライバ3000は画像メモリ604から
Y色の圧縮データ、M−Yの濃度差分値の圧縮データ、
C−Mの濃度差分値の圧縮データ、K−Cの濃度差分値
の圧縮データの順番で送出する。
Since the LBP2000 needs image data in the order of Y, M, C, and K as described above, the printer driver 3000 sends the compressed data of Y color and the density difference of MY from the image memory 604. Value compressed data,
The compressed data of the CM density difference value and the compressed data of the KC density difference value are transmitted in this order.

【0229】尚、符号化部603における転送符号化の
形式としては、LBP2000側の入力I/F部211
4において受信データのフロー制御を行う都合上、部分
的に逐次解凍できる形式を使用することが望ましい。部
分的なデータ復元ができない圧縮形式を採用した場合に
は、1ページの画像データを更に小領域に分割し、該小
領域毎の圧縮を行なわないと、LBP2000がわにお
いて受信データのフロー制御が困難となる。
The format of the transfer encoding in the encoding unit 603 is as follows: the input I / F unit 211 on the LBP2000 side.
For convenience of controlling the flow of received data in step 4, it is desirable to use a format that can be partially decompressed sequentially. When a compression format that cannot partially restore data is employed, one page of image data is further divided into small areas, and compression of each small area is not performed. It will be difficult.

【0230】尚、第4実施形態においては、転送される
第1色データについては、濃度情報をそのまま転送符号
化する例について説明を行ったが、例えば、第1色デー
タよりも前に、全画素値が「0」である第0色データを
仮定することによって、全色成分の画像データが色毎の
差分情報によって表せる。これにより、より転送データ
量を削減することができる。そしてこの場合、LBP側
において転送開始時に画像メモリ810を0クリアして
おけば、色復元部803の動作を色データ順に応じて制
御する必要がなくなる。
In the fourth embodiment, an example has been described in which density information is directly transferred and coded for the first color data to be transferred. By assuming the 0th color data having a pixel value of “0”, image data of all color components can be represented by difference information for each color. As a result, the amount of transfer data can be further reduced. In this case, if the image memory 810 is cleared to 0 at the start of the transfer on the LBP side, it is not necessary to control the operation of the color restoration unit 803 according to the order of the color data.

【0231】以上説明した様に第4実施形態によれば、
カラー画像の面順次処理を行う画像処理システムにおい
て、各色間の差分値を符号化して転送することにより高
圧縮率が得られ、即ち転送データ量を低減することがで
き、転送時間の短縮が実現される。
As described above, according to the fourth embodiment,
In an image processing system that performs frame sequential processing of a color image, a high compression rate can be obtained by encoding and transferring a difference value between each color, that is, a transfer data amount can be reduced and a transfer time can be reduced. Is done.

【0232】また、プリンタ側において転送されてきた
差分データ展開時に、1色分のメモリ容量を用意するの
みで済む。
Further, when developing the differential data transferred on the printer side, it is only necessary to prepare a memory capacity for one color.

【0233】<第5実施形態>以下、本発明に係る第5
実施形態について説明する。
<Fifth Embodiment> Hereinafter, a fifth embodiment according to the present invention will be described.
An embodiment will be described.

【0234】第5実施形態においては、上述した第4実
施形態におけるプリンタ制御ユニット2130の動作
を、主にソフトウェアによって実現する例について説明
する。
In the fifth embodiment, an example will be described in which the operation of the printer control unit 2130 in the above-described fourth embodiment is realized mainly by software.

【0235】第5実施形態の画像処理システムにおける
画像処理装置は、上述した図18に示すLBP2000
と同様であるとし、図22に、第5実施形態におけるプ
リンタ制御ユニット2130のブロック構成を示す。
尚、第5実施形態のLBP2000においては、ホスト
コンピュータから受信した描画コマンド、文字コード等
の展開出力が可能であるとする。
The image processing apparatus in the image processing system according to the fifth embodiment employs the LBP2000 shown in FIG.
FIG. 22 shows a block configuration of a printer control unit 2130 in the fifth embodiment.
In the LBP2000 of the fifth embodiment, it is assumed that a drawing command and a character code received from the host computer can be developed and output.

【0236】図22において、550はCPUであり、
上述した第4実施形態に示したプリンタ制御ユニット2
130における動作を、ROM650に格納された制御
プログラムに従って実行する。尚、CPU550は、性
能の向上を目的として各種ハードウェアを含むこともあ
る。750はRAMであり、CPU550の作業領域と
して、例えば第4実施形態で示した画像メモリ810と
して使用される。尚、805はCPU550と他の構成
を連結するバスラインである。
Referring to FIG. 22, reference numeral 550 denotes a CPU.
Printer control unit 2 shown in the fourth embodiment described above
The operation in 130 is executed according to a control program stored in ROM 650. Note that the CPU 550 may include various hardware for the purpose of improving performance. A RAM 750 is used as a work area of the CPU 550, for example, as the image memory 810 described in the fourth embodiment. A bus line 805 connects the CPU 550 and other components.

【0237】尚、図22に示す構成は、プリンタ制御ユ
ニット2130における動作をソフトウェアのみによっ
て実現することを目的としているが、もちろん、ソフト
ウェア処理では時間のかかる処理を適切なハードウェア
によって代替することにより、より高速な処理が可能と
なる。
Although the configuration shown in FIG. 22 is intended to realize the operation in the printer control unit 2130 only by software, it is needless to say that software processing is performed by replacing time-consuming processing with appropriate hardware. , Faster processing becomes possible.

【0238】第5実施形態のLBP2000において処
理可能な、文字やグラフィックス等の描画コマンドによ
って生成される画像イメージは、データサイズが小さ
く、また、生成色の予想が困難で複数色に亙って影響を
及ぼす。従って、上述した第4実施形態に示すような色
毎の差分値を算出する方法では、描画コマンドに基づい
て形成される画像イメージを鮮明に再現することが困難
である。第5実施形態においては、これら描画コマンド
と単純な画像データとを区別して処理する例について説
明する。
The image which can be processed by the LBP2000 of the fifth embodiment and is generated by a drawing command such as a character or graphics has a small data size, and it is difficult to predict a generated color, and the image is generated over a plurality of colors. affect. Therefore, in the method of calculating the difference value for each color as described in the above-described fourth embodiment, it is difficult to clearly reproduce an image formed based on a drawing command. In the fifth embodiment, an example in which these drawing commands and simple image data are processed separately will be described.

【0239】まず、ホストコンピュータ側のプリンタド
ライバ3000において、単純な画像データと、各種描
画コマンドとを分離し、その送出順序を制御する必要が
ある。以下、その制御方法について説明する。
First, in the printer driver 3000 on the host computer side, it is necessary to separate simple image data and various drawing commands, and control the transmission order. Hereinafter, the control method will be described.

【0240】プリンタドライバ3000において単純画
像データと描画コマンドとを分離して送出する第1の方
法として、描画コマンドも色別に分解し、各色毎に描画
コマンドを送出する方法がある。この方法においては、
各色毎に、送出する描画コマンドの影響する描画範囲と
単純なイメージ領域との重なりをチェックする必要があ
る。重なりが生じている場合には、どちらが最終的に上
書きされ、出力画像上に残るかを判断し、残る方が後に
なるようにソートした後に、送出する。
As a first method of separating the simple image data and the drawing command in the printer driver 3000 and sending them, there is a method of separating the drawing commands for each color and sending the drawing commands for each color. In this method,
For each color, it is necessary to check the overlap between the drawing range affected by the drawing command to be sent and the simple image area. If there is an overlap, it is determined which is ultimately overwritten and remains on the output image, and the remaining is sorted so that it is later and then sent.

【0241】この方法では即ち、各色について、 1.画像データによって一部上書きされる描画コマンド 2.画像データ 3.画像データの一部を上書きする描画コマンド の順に送出される。尚、画像データと干渉しない描画コ
マンドについては、画像データの後に送出しても先に送
出しても良い。
In this method, that is, for each color: Drawing command partially overwritten by image data Image data 3. Sent in the order of the drawing commands that overwrite part of the image data. The drawing command that does not interfere with the image data may be sent after the image data or before it.

【0242】この方法によれは、1つの描画コマンドを
例えば4色それぞれについて送出するため、描画コマン
ドの転送量が4倍となる。しかしながら、一般に描画コ
マンドのデータサイズは画像データサイズと比較して微
少であるため、画像データを主として扱うような処理系
においては画像データの圧縮効果の方が高く、描画コマ
ンドのデータ量の増加分は無視できる。但し、LBP2
000のような電子写真方式による画像処理装置におい
ては、画像形成動作が一旦開始されると、全色の展開を
規定時間以内に遂行しなければならないため、描画コマ
ンドの処理が十分高速に実施できる程度の処理性能が必
要となる。
According to this method, one drawing command is transmitted for, for example, each of four colors, so that the transfer amount of the drawing command is quadrupled. However, since the data size of the drawing command is generally smaller than the image data size, the compression effect of the image data is higher in a processing system which mainly handles the image data, and the data amount of the drawing command is increased. Can be ignored. However, LBP2
In an image processing apparatus based on the electrophotographic method such as 000, once the image forming operation is started, the development of all the colors must be performed within a specified time, so that the processing of the drawing command can be executed at a sufficiently high speed. Some processing performance is required.

【0243】また、プリンタドライバ3000において
単純画像データと描画コマンドとを分離して送出する第
2の方法として、まず描画コマンドを全て送出し、その
後に画像データを色毎に送出する方法がある。この場
合、全ての描画コマンドに対して、描画領域と画像デー
タとの干渉具合に応じたフラグを付加する。即ち、LB
P2000側においては、該フラグによって、受信した
描画コマンドを画像データの処理前に展開するか、処理
後に展開するかの判断を行う。
As a second method of transmitting the simple image data and the drawing command separately in the printer driver 3000, there is a method of transmitting all the drawing commands first, and then transmitting the image data for each color. In this case, a flag according to the degree of interference between the drawing area and the image data is added to all drawing commands. That is, LB
On the P2000 side, it is determined based on the flag whether the received drawing command is developed before processing the image data or after processing.

【0244】この方法においては、LBP2000にお
いて前もって描画コマンドを得ることができるため、例
えば最後に描画すべき描画コマンドであっても、プリン
タ部2140で高速に処理可能な単純形式に予め変換し
ておくことが可能となる。従って、定搬送速度のプリン
タ部2140に対して、CPU550の処理性能が比較
的低い場合においても、プリンタ部2140への画像デ
ータ出力を間に合わせることができる。
In this method, since a drawing command can be obtained in advance in the LBP2000, for example, even the last drawing command to be drawn is converted in advance to a simple format that can be processed at high speed by the printer unit 2140. It becomes possible. Therefore, even when the processing performance of the CPU 550 is relatively low with respect to the printer unit 2140 at a constant transport speed, image data output to the printer unit 2140 can be completed in time.

【0245】上述した第1及び第2のいずれの方法にお
いても、画像データの画像領域と、描画コマンドによる
画像領域との重なりを検出する必要がある。以下、この
重なり領域の判別方法について説明する。
In both the first and second methods described above, it is necessary to detect the overlap between the image area of the image data and the image area by the drawing command. Hereinafter, a method of determining the overlapping area will be described.

【0246】最も単純な判別方法としては、両方を描画
展開した際に、各画像領域が内包される座標の最大値と
最小値を算出し、画像データによる領域群と、描画コマ
ンドによる画像データの領域群との間で比較を行う方法
がある。即ち、画像データが描画される2次元空間を
x,y座標で表わすとすると、両画像領域においてx方
向、y方向共に共通する範囲が存在する場合、即ち内包
領域が重複している場合には、両領域が重なっている可
能性がある。一方、x方向又はy方向のいずれかに共通
値が無い場合には、重なりの可能性はないと判断され
る。尚、例えば斜線(ハッチング)の描画コマンドのよ
うに、実際にその内包領域のほとんどが画像データと重
なる可能性のないような描画コマンドを処理する場合に
は、更に正確かつ効率の良い重なり判定を行うために、
描画コマンド毎に個別の判定ルーチンを用意すると良
い。
The simplest determination method is to calculate the maximum value and the minimum value of the coordinates in which each image area is included when both are drawn and developed, and to calculate the area group based on the image data and the image data based on the drawing command. There is a method of performing a comparison with a region group. That is, assuming that a two-dimensional space in which image data is drawn is represented by x and y coordinates, if there is a common range in both the x and y directions in both image areas, that is, if the inclusion areas overlap, , There is a possibility that both areas overlap. On the other hand, when there is no common value in either the x direction or the y direction, it is determined that there is no possibility of overlapping. In the case of processing a drawing command such as a hatched drawing command in which most of its included region does not actually overlap with image data, a more accurate and efficient overlap determination is performed. To do
It is preferable to prepare an individual determination routine for each drawing command.

【0247】図23,図24のフローチャートに,上述
した第2の方法、即ち画像データの前に描画コマンドを
送出する処理系を実現する際のプリンタドライバ300
0側における、画像生成およびデータ送出の手順を示
す。
The flowcharts of FIGS. 23 and 24 show the printer driver 300 for implementing the second method described above, that is, a processing system for transmitting a drawing command before image data.
The procedure of image generation and data transmission on the 0 side is shown.

【0248】該フローチャートにおいては、ホストコン
ピュータにおいてアプリケーションから出力された描画
オブジェクトを、プリンタドライバ3000においてそ
の出力順の情報を保存しつつ、画像データと描画コマン
ドとに分類し、全ての描画コマンドに対して、描画領域
と画像データとの干渉具合に応じたフラグを付加する。
尚、該フローチャートに示す処理は制御プログラムとし
てプリンタドライバ3000内のROM607に保持さ
れており、CPU606によって実行される。
In the flowchart, the drawing objects output from the application in the host computer are classified into image data and drawing commands while the output order information is stored in the printer driver 3000. Then, a flag corresponding to the degree of interference between the drawing area and the image data is added.
The processing shown in the flowchart is stored in the ROM 607 in the printer driver 3000 as a control program, and is executed by the CPU 606.

【0249】まず、オブジェクトの順番を示す変数iを
「0」に初期化する(S301)。そして、オブジェク
トiが画像データであるか否かを判断し、該判断に応じ
た識別が可能となるように、オブジェクトiをRAM6
08等の作業メモリの所定領域に一旦格納する(S30
2〜S304)。以下、画像データであると判断された
オブジェクトをイメージオブジェクト、描画コマンドで
あると判断されたオブジェクトをコマンドオブジェクト
と称する。尚、一時格納用メモリとして画像メモリ60
4を使用しても良い。
First, a variable i indicating the order of objects is initialized to “0” (S301). Then, it is determined whether or not the object i is image data, and the object i is stored in the RAM 6 so that identification according to the determination is possible.
08 in a predetermined area of the working memory (S30).
2 to S304). Hereinafter, an object determined to be image data is referred to as an image object, and an object determined to be a drawing command is referred to as a command object. The image memory 60 is used as a temporary storage memory.
4 may be used.

【0250】そして変数iをインクリメントし、処理す
べきオブジェクトが残っていなければ、後段のフラグ付
加処理を開始する(S305,S306)。
Then, the variable i is incremented, and if there are no more objects to be processed, the subsequent flag addition processing is started (S305, S306).

【0251】以下、フラグ付加処理について説明する。
まず、変数iを再び「0」に初期化(S307)した
後、オブジェクトiがコマンドオブジェクトであれば、
該コマンドオブジェクトの描画領域について、各イメー
ジオブジェクトの描画領域と重複している部分があるか
を判断する(S308,S309)。重複があれば、重
複したイメージオブジェクトの順番jと、当該コマンド
オブジェクトの順番iとを比較し、コマンドオブジェク
トが後に出力されている(i>j)のであれば、コマン
ドオブジェクトiに対して、該描画コマンドが画像デー
タよりも後に展開される、即ち、形成される画像におい
て、該描画コマンドによる描画が画像データによる描画
よりも前面に載せられることを示す「前置フラグ」を付
加する。一方、コマンドオブジェクトが先に出力されて
いるのであれば、コマンドオブジェクトiに対して、該
描画コマンドが画像データよりも先に展開される、即
ち、形成される画像において、該描画コマンドによる描
画が画像データによる描画よりも後面に載せられること
を示す「後置フラグ」を付加する(S310〜S31
4)。尚、重複がなければコマンドオブジェクトiに対
してフラグは付加されず、描画順序は任意となる。
Hereinafter, the flag adding process will be described.
First, after the variable i is initialized to “0” again (S307), if the object i is a command object,
It is determined whether or not the drawing area of the command object overlaps with the drawing area of each image object (S308, S309). If there is an overlap, the order j of the duplicated image object is compared with the order i of the command object. If the command object is output later (i> j), the command object i A "prefix flag" indicating that the drawing command is developed after the image data, that is, in the formed image, that the drawing by the drawing command is placed on the front side than the drawing by the image data is added. On the other hand, if the command object is output first, the drawing command is expanded before the image data for the command object i, that is, the drawing by the drawing command is performed in the formed image. A “postfix flag” indicating that the image is to be placed on the rear side of the drawing by the image data is added (S310 to S31)
4). If there is no overlap, no flag is added to the command object i, and the drawing order is arbitrary.

【0252】そして変数iをインクリメントし、全ての
コマンドオブジェクトについて上記フラグ付加処理を施
す(S315,S316)。
Then, the variable i is incremented, and the flag adding process is performed on all command objects (S315, S316).

【0253】そして、上記処理によってフラグ付加処理
が施された全描画コマンドを、LBP2000側へ送信
する(S317〜S319)。
Then, all the drawing commands subjected to the flag addition processing by the above processing are transmitted to the LBP2000 side (S317 to S319).

【0254】描画コマンドの送信が終了すると、次に、
全画像データを上述した第4実施形態において図21で
示した手順と同様に色毎の差分圧縮を行なった後、LB
P2000へ送信する(S320〜S325)。
When transmission of the drawing command is completed, next,
After all the image data is subjected to difference compression for each color in the same manner as the procedure shown in FIG.
The message is transmitted to P2000 (S320 to S325).

【0255】以上説明した様にして、プリンタドライバ
3000からフラグが付加された描画コマンド群、及び
画像データ群がLBP2000へ送出される。
As described above, the drawing command group to which the flag is added and the image data group are sent from the printer driver 3000 to the LBP 2000.

【0256】そしてLBP2000においては、特にプ
リンタ部2140が低速の紙搬送を行う場合には、プリ
ンタ制御ユニット2130において画像データよりも先
に受信した描画コマンドを、プリンタ部2140の動作
に対して遅延時間を生じない程度に単純な形式まで予め
展開しておく。
In the LBP2000, especially when the printer unit 2140 performs low-speed paper conveyance, the drawing command received before the image data in the printer control unit 2130 is delayed by a delay time with respect to the operation of the printer unit 2140. Is developed in advance to a simple form that does not cause the

【0257】そして、後置フラグの付加された描画コマ
ンドを描画した後、画像データを受信、展開し、その後
に前置フラグの付加された描画コマンドを描画する。こ
れによりプリンタ制御ユニット2130において各色画
像が形成され、プリンタ部2140へ各色毎に面順次に
出力される。
Then, after drawing the drawing command to which the post-flag is added, image data is received and expanded, and thereafter, the drawing command to which the pre-flag is added is drawn. As a result, an image of each color is formed in the printer control unit 2130, and is output to the printer unit 2140 on a color-by-color basis.

【0258】尚、前置フラグが付加された描画コマンド
によって上書きされた領域の画像データについては、色
毎の差分値に基づいて元の色濃度値を忠実に復元するこ
とはできないが、各色についてそれぞれ上書きされてい
るため、元の画像データに忠実な濃度値が復元されなく
ても、実際に形成されるカラー画像において問題はな
い。しかし、後置フラグが付加された描画コマンドによ
って、次色を復元するための差分値を受信する前に濃度
情報が書き換えられてしまい、正確な色が表現できなく
なる場合が起こりうる。従って、後置フラグが付加され
た描画コマンドを処理する場合には、2色目以降に対し
てはクリッピング処理を行い、画像データによる描画領
域に対して描画コマンドによる書き込みが行われないよ
うに制御する必要がある。
For image data in an area overwritten by a drawing command to which a prefix flag has been added, the original color density value cannot be faithfully restored based on the difference value for each color. Since each is overwritten, there is no problem in the actually formed color image even if the density value faithful to the original image data is not restored. However, a density command may be rewritten before receiving a difference value for restoring a next color by a drawing command to which a postfix flag has been added, and a correct color may not be expressed. Accordingly, when processing a drawing command to which a post-fix flag is added, clipping processing is performed for the second and subsequent colors, and control is performed so that writing by the drawing command is not performed in a drawing area based on image data. There is a need.

【0259】以上説明した様に第5実施形態によれば、
カラー画像の面順次処理を行う画像処理システムにおい
て、文字やグラフィックス等の描画コマンドを単純な画
像データと分離して処理することにより、描画コマンド
による描画データ情報を鮮明に保ちつつ、第4実施形態
と同様の高圧縮率による画像データ転送を実現すること
ができる。
As explained above, according to the fifth embodiment,
In an image processing system that performs frame-sequential processing of a color image, a drawing command such as characters and graphics is separated from simple image data and processed, so that the drawing data information based on the drawing command is kept clear and the fourth embodiment is performed. Image data transfer with a high compression ratio similar to that of the embodiment can be realized.

【0260】尚、上述した第1〜第3実施形態において
画像処理装置内のページメモリに符号データを保持する
例について説明し、第4及び第5実施形態において外部
装置と画像処理装置間において多値画像データを転送す
る例について説明を行なった。本発明は、もちろんこれ
ら各実施形態を組み合わせて実現することも可能であ
る。例えば、画像処理装置内において多値カラー画像デ
ータの色毎の差分値に基づいた符号をページメモリに格
納しても良いし、また、画像処理システムにおいて多値
画像データを前画素との差分値情報を符号化してデータ
転送しても良い。
In the above-described first to third embodiments, an example in which code data is held in the page memory in the image processing apparatus will be described. In the fourth and fifth embodiments, a number of operations between an external device and the image processing apparatus will be described. The example of transferring the value image data has been described. The present invention can, of course, be realized by combining these embodiments. For example, the code based on the difference value for each color of the multi-valued color image data may be stored in the page memory in the image processing apparatus, or the multi-valued image data may be stored in the image processing system by the difference value from the previous pixel. Information may be encoded and transferred.

【0261】また、以上の実施形態で用いた前画素との
差分値を符号化する方法について、本発明はこれに限定
されるものではなく、例えば、近接する複数の周辺画素
を用いて符号化する公知の周辺予測方法を用いてもよ
い。
The present invention is not limited to the method of encoding the difference value from the previous pixel used in the above embodiments. For example, the encoding method may be performed by using a plurality of adjacent peripheral pixels. A known peripheral prediction method may be used.

【0262】[0262]

【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ,インタフェイス機器,リーダ,プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機,ファクシミリ
装置など)に適用してもよい。
[Other Embodiments] Even if the present invention is applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), an apparatus (for example, a copying machine) Machine, facsimile machine, etc.).

【0263】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることは言う
までもない。
Further, an object of the present invention is to provide a storage medium storing a program code of software for realizing the functions of the above-described embodiments to a system or an apparatus, and to provide a computer (or CPU) of the system or apparatus.
And MPU) read and execute the program code stored in the storage medium.

【0264】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
In this case, the program code itself read from the storage medium implements the functions of the above-described embodiment, and the storage medium storing the program code constitutes the present invention.

【0265】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク,ハードディス
ク,光ディスク,光磁気ディスク,CD−ROM,CD
−R,磁気テープ,不揮発性のメモリカード,ROMな
どを用いることができる。
As a storage medium for supplying the program code, for example, a floppy disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD
-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.

【0266】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
When the computer executes the readout program codes, not only the functions of the above-described embodiments are realized, but also the OS (Operating System) running on the computer based on the instructions of the program codes. ) May perform some or all of the actual processing, and the processing may realize the functions of the above-described embodiments.

【0267】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張カード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張カードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
Further, after the program code read from the storage medium is written into the memory provided in the function expansion card inserted into the computer or the function expansion unit connected to the computer, based on the instruction of the program code, It goes without saying that a CPU or the like provided in the function expansion card or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.

【0268】[0268]

【発明の効果】以上説明した様に本発明によれば、多値
画像情報の画素毎に前画素との差分情報を符号化して格
納することにより、省メモリ効果が高く、かつ高速に復
元可能な圧縮が可能となる。従って、低価格かつ高品質
な画像形成が高速に可能となる画像処理装置を提供する
ことが可能となる。
As described above, according to the present invention, the difference information from the previous pixel is encoded and stored for each pixel of the multi-valued image information, so that the memory saving effect is high and the restoration can be performed at high speed. Compression is possible. Therefore, it is possible to provide an image processing apparatus capable of forming a low-cost and high-quality image at a high speed.

【0269】更に、カラー画像データを転送する画像処
理システムにおいて、各色間の差分値を符号化して転送
することにより、データ転送量を低減させ、転送時間を
短縮することができる。
Further, in the image processing system for transferring color image data, by encoding and transferring the difference value between each color, the data transfer amount can be reduced and the transfer time can be shortened.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明に係る一実施形態における画像処理装置
(LBP)の側断面図である。
FIG. 1 is a side sectional view of an image processing apparatus (LBP) according to an embodiment of the present invention.

【図2】本実施形態における圧縮処理を実現するための
基本構成を示すブロック図である。
FIG. 2 is a block diagram showing a basic configuration for realizing compression processing in the embodiment.

【図3】本実施形態においてページメモリからの濃度情
報復元を行う際の濃度値算出部及びアドレス制御部の詳
細構成を示すブロック図である。
FIG. 3 is a block diagram illustrating a detailed configuration of a density value calculation unit and an address control unit when density information is restored from a page memory in the embodiment.

【図4】本実施形態におけるページメモリの更新処理を
実現するための構成を示すブロック図である。
FIG. 4 is a block diagram illustrating a configuration for realizing a page memory update process according to the embodiment;

【図5】本実施形態のページメモリ更新処理におけるア
ドレス制御のフローチャートである。
FIG. 5 is a flowchart of address control in a page memory update process according to the embodiment.

【図6】本実施形態における符号割り当てを定義するコ
ードテーブル例を示す図である。
FIG. 6 is a diagram illustrating an example of a code table that defines code assignment in the present embodiment.

【図7】本実施形態における符号割り当てに基づいて濃
度情報を復元出力するための構成を示すブロック図であ
る。
FIG. 7 is a block diagram illustrating a configuration for restoring and outputting density information based on code assignment according to the present embodiment.

【図8】本実施形態のシーケンサにおける符号拡張制御
を示すフローチャートである。
FIG. 8 is a flowchart showing sign extension control in the sequencer of the embodiment.

【図9】本実施形態におけるページメモリ更新処理にお
けるアドレス制御のフローチャートである。
FIG. 9 is a flowchart of address control in a page memory update process according to the embodiment.

【図10】本実施形態におけるページメモリ更新処理に
おけるアドレス制御のフローチャートである。
FIG. 10 is a flowchart of address control in a page memory update process according to the embodiment.

【図11】本発明に係る第2実施形態における符号割り
当てを定義するコードテーブル例を示す図である。
FIG. 11 is a diagram illustrating an example of a code table that defines code assignment according to the second embodiment of the present invention.

【図12】第2実施形態におけるアドレス制御部及び濃
度値算出部の詳細構成を示すブロック図である。
FIG. 12 is a block diagram illustrating a detailed configuration of an address control unit and a density value calculation unit according to a second embodiment.

【図13】第2実施形態におけるページメモリ更新処理
におけるアドレス制御のフローチャートである。
FIG. 13 is a flowchart of address control in a page memory update process according to the second embodiment.

【図14】第2実施形態におけるページメモリ更新処理
におけるアドレス制御のフローチャートである。
FIG. 14 is a flowchart of address control in a page memory update process according to the second embodiment.

【図15】本発明に係る第3実施形態におけるメモリ分
割の概念を示す図である。
FIG. 15 is a diagram showing a concept of memory division in a third embodiment according to the present invention.

【図16】第3実施形態におけるページメモリ更新処理
におけるアドレス制御のフローチャートである。
FIG. 16 is a flowchart of address control in a page memory update process according to the third embodiment.

【図17】第3実施形態におけるページメモリ更新処理
におけるアドレス制御のフローチャートである。
FIG. 17 is a flowchart of address control in a page memory update process according to the third embodiment.

【図18】本発明に係る第4実施形態における画像処理
装置(LBP)の側断面図である。
FIG. 18 is a side sectional view of an image processing apparatus (LBP) according to a fourth embodiment of the present invention.

【図19】第4実施形態における画像処理システムのブ
ロック構成を示す図である。
FIG. 19 is a diagram illustrating a block configuration of an image processing system according to a fourth embodiment.

【図20】第4実施形態におけるプリンタ制御ユニット
2130の詳細構成を示す図である。
FIG. 20 is a diagram illustrating a detailed configuration of a printer control unit 2130 according to the fourth embodiment.

【図21】第4実施形態のプリンタドライバ3000に
おける画像送出手順を示すフローチャートである。
FIG. 21 is a flowchart illustrating an image transmission procedure in a printer driver 3000 according to the fourth embodiment.

【図22】本発明に係る第5実施形態におけるプリンタ
制御ユニット2130の詳細構成を示すブロック図であ
る。
FIG. 22 is a block diagram illustrating a detailed configuration of a printer control unit 2130 according to a fifth embodiment of the invention.

【図23】第5実施形態において画像データの前に描画
コマンドを送出する際の画像生成およびデータ送出の手
順を示すフローチャートである。
FIG. 23 is a flowchart illustrating a procedure of image generation and data transmission when a drawing command is transmitted before image data in the fifth embodiment.

【図24】第5実施形態において画像データの前に描画
コマンドを送出する際の画像生成およびデータ送出の手
順を示すフローチャートである。
FIG. 24 is a flowchart illustrating a procedure of image generation and data transmission when a drawing command is transmitted before image data in the fifth embodiment.

【符号の説明】[Explanation of symbols]

100 ページメモリ 101 記憶容量変更部 200 差分値算出部 300 アドレス制御部 301 カウンタ 302 遅延部 303 フリップフロップ(F/F) 304,402 レジスタ 305,406 ANDゲート 400 濃度値算出部 401 加算器 403 シーケンサ 404,405 ラッチ 500 CPU 601 色分離部 602 差分値演算部 603 符号化部 604,810 画像メモリ 800 システムシーケンサ 801 受信バッファ 802 伸張部 803 色復元部 804 プリントシーケンサ 2000 レーザビームプリンタ(LBP) 2130 プリンタ制御ユニット 2140 プリンタ部 3000 プリンタドライバ 100 page memory 101 storage capacity change unit 200 difference value calculation unit 300 address control unit 301 counter 302 delay unit 303 flip-flop (F / F) 304, 402 register 305, 406 AND gate 400 density value calculation unit 401 adder 403 sequencer 404 , 405 Latch 500 CPU 601 Color separation unit 602 Difference value calculation unit 603 Encoding unit 604,810 Image memory 800 System sequencer 801 Receive buffer 802 Decompression unit 803 Color restoration unit 804 Print sequencer 2000 Laser beam printer (LBP) 2130 Printer control unit 2140 Printer section 3000 Printer driver

Claims (36)

【特許請求の範囲】[Claims] 【請求項1】 多値画像データを入力する入力手段と、 前記入力手段により入力された多値画像データ、およ
び、その予測値との差分値を符号化する符号化手段と、 前記符号化手段による符号データを保持する保持手段
と、 前記保持手段に保持された符号データを復号して多値画
像データを復元する復元手段と、 前記復元手段により復元された多値画像データを所定の
画像形成手段へ出力する出力手段と、 を有することを特徴とする画像処理装置。
An input unit for inputting multi-valued image data; an encoding unit for encoding the multi-valued image data input by the input unit, and a difference value between the multi-valued image data and a predicted value thereof; Holding means for holding the code data according to the above, decoding means for decoding the code data held by the holding means to restore multi-valued image data, and forming the multi-valued image data restored by the restoration means into a predetermined image. An image processing apparatus, comprising: output means for outputting to an output means.
【請求項2】 前記符号化手段は、前記多値画像データ
の各画素毎に、前記予測値である前画素に対する濃度情
報との差分情報を符号化することを特徴とする請求項1
記載の画像処理装置。
2. The method according to claim 1, wherein the encoding unit encodes, for each pixel of the multi-valued image data, difference information from density information for a previous pixel, which is the predicted value.
The image processing apparatus according to any one of the preceding claims.
【請求項3】 前記前画素とは、前記画像形成手段の主
走査方向において隣接する直前画素であることを特徴と
する請求項2記載の画像処理装置。
3. The image processing apparatus according to claim 2, wherein the previous pixel is a immediately preceding pixel adjacent to the image forming unit in the main scanning direction.
【請求項4】 前記符号化手段は、前記多値画像データ
の各画素毎に、前画素に対する濃度情報の1次差分情報
に基づいて符号化することを特徴とする請求項3記載の
画像処理装置。
4. The image processing apparatus according to claim 3, wherein the encoding unit encodes each pixel of the multi-valued image data based on first-order difference information of density information with respect to a previous pixel. apparatus.
【請求項5】 前記予測値は周辺画素を用いた予測によ
り得られる値であることを特徴とする請求項1記載の画
像処理装置。
5. The image processing apparatus according to claim 1, wherein the prediction value is a value obtained by prediction using peripheral pixels.
【請求項6】 前記符号化手段は、前記差分情報を演算
する際に発生するオーバーフローを無視することを特徴
とする請求項1記載の画像処理装置。
6. The image processing apparatus according to claim 1, wherein the encoding unit ignores an overflow that occurs when calculating the difference information.
【請求項7】 前記符号化手段は、前記多値画像データ
の各画素毎に、そのの差分情報を2の補数表現とするこ
とを特徴とする請求項6記載の画像処理装置。
7. The image processing apparatus according to claim 6, wherein said encoding means uses, for each pixel of said multi-valued image data, difference information thereof in a two's complement representation.
【請求項8】 前記復元手段は、前記保持手段に保持さ
れた符号データを画素毎の差分情報に復号し、差分情報
を積算することによって多値画像データを復元すること
を特徴とする請求項2記載の画像処理装置。
8. The multi-valued image data is decoded by decoding the code data held in the holding unit into difference information for each pixel, and integrating the difference information. 3. The image processing device according to 2.
【請求項9】 前記符号化手段は、先頭画素の前画素の
濃度情報が特定値であると仮定して、該先頭画素の差分
値を算出することを特徴とする請求項2記載の画像処理
装置。
9. The image processing apparatus according to claim 2, wherein the encoding unit calculates a difference value of the first pixel, assuming that density information of a pixel preceding the first pixel is a specific value. apparatus.
【請求項10】 前記符号化手段は、前記多値画像デー
タの画素列毎に、該画素列における先頭画素の前画素の
濃度情報を特定値であると仮定して、該先頭画素の差分
値を算出することを特徴とする請求項9記載の画像処理
装置。
10. The encoding unit, for each pixel column of the multi-valued image data, assuming that density information of a pixel preceding the first pixel in the pixel column is a specific value, and The image processing apparatus according to claim 9, wherein is calculated.
【請求項11】 前記特定値は0であることを特徴とす
る請求項9又は10記載の画像処理装置。
11. The image processing apparatus according to claim 9, wherein the specific value is 0.
【請求項12】 前記符号化手段は、前記差分情報の出
現頻度に応じて符号化することを特徴とする請求項2乃
至11のいずれかに記載の画像処理装置。
12. The image processing apparatus according to claim 2, wherein said encoding unit performs encoding in accordance with an appearance frequency of said difference information.
【請求項13】 前記符号化手段は、前記差分情報の出
現頻度に応じて固定長符号を割り当てることを特徴とす
る請求項12記載の画像処理装置。
13. The image processing apparatus according to claim 12, wherein said encoding means assigns a fixed-length code according to an appearance frequency of said difference information.
【請求項14】 前記符号化手段は、出現頻度の低い差
分情報には例外的な符号を割り当てることを特徴とする
請求項13記載の画像処理装置。
14. The image processing apparatus according to claim 13, wherein the encoding unit assigns an exceptional code to difference information having a low appearance frequency.
【請求項15】 前記符号化手段は、出現頻度が高い差
分情報程、短い符号長の符号を割り当てることを特徴と
する請求項12記載の画像処理装置。
15. The image processing apparatus according to claim 12, wherein the encoding unit assigns a code having a shorter code length to the difference information having a higher appearance frequency.
【請求項16】 前記符号化手段は、前記多値画像デー
タにおいて離散的に濃度情報を保ったまま前記保持手段
に保持することを特徴とする請求項15記載の画像処理
装置。
16. The image processing apparatus according to claim 15, wherein the encoding unit holds the density information in the multi-valued image data while holding the density information discretely.
【請求項17】 前記復元手段は、前記保持手段におい
て離散的に保持された濃度情報を始点として、差分情報
を積算することを特徴とする請求項16記載の画像処理
装置
17. The image processing apparatus according to claim 16, wherein the restoration unit integrates the difference information with the density information discretely held by the holding unit as a starting point.
【請求項18】 更に、前記保持手段において前記符号
化手段による符号データを保持する領域を制御する保持
領域制御手段を有することを特徴とする請求項1乃至1
7のいずれかに記載の画像処理装置。
18. The apparatus according to claim 1, further comprising a holding area control means for controlling an area for holding the code data by said encoding means in said holding means.
8. The image processing apparatus according to any one of 7.
【請求項19】 カラー画像データを入力する入力手段
と、 前記入力手段により入力されるカラー画像データの色成
分間の差分値を符号化する符号化手段と、 前記符号化手段により得られる符号データを保持する保
持手段と、 前記保持手段により保持される符号データを復号してカ
ラー画像データを復元する復元手段と、 前記復元手段により復元されるカラー画像データを所定
の画像形成手段へ出力する出力手段とを有することを特
徴とする画像処理装置。
19. An input unit for inputting color image data, an encoding unit for encoding a difference value between color components of the color image data input by the input unit, and code data obtained by the encoding unit Holding means for holding the image data; decoding means for decoding the code data held by the holding means to restore color image data; and output for outputting the color image data restored by the decoding means to a predetermined image forming means. And an image processing apparatus.
【請求項20】 外部装置と画像処理装置とが接続され
た画像処理システムであって、 外部装置側において、 多値画像データの差分値情報を算出する差分値算出手段
と、 前記算出された差分値情報を符号化する符号化手段と、 前記符号化された画像データを送信する送信手段と、を
有し、 画像処理装置側において、 符号化された画像データを受信する受信手段と、 前記受信した画像データを復号して差分値情報を得る復
号手段と、 前記復号された差分値情報に基づいて画像データを復元
する復元手段と、 前記復元された画像データに基づいて画像を形成する画
像形成手段と、 を有することを特徴とする画像処理システム。
20. An image processing system in which an external device and an image processing device are connected, wherein, on the external device side, difference value calculating means for calculating difference value information of multi-valued image data; An encoding unit that encodes the value information; a transmission unit that transmits the encoded image data; a receiving unit that receives the encoded image data on the image processing apparatus side; Decoding means for decoding the decoded image data to obtain difference value information; restoration means for restoring image data based on the decoded difference value information; and image formation for forming an image based on the restored image data. Means, and an image processing system comprising:
【請求項21】 前記外部装置側において、 前記多値画像データは複数色成分からなるカラー画像デ
ータであり、 更に多値カラー画像データを各色毎に分離する色分離手
段を有し、 前記差分値算出手段は、前記各色毎に分離された画像デ
ータの各色間の差分情報を算出し、 前記送信手段は、前記符号化手段によって符号化された
各色毎の画像データを面順次に送信し、 前記画像処理装置側において、 前記受信手段は、符号化された各色毎の画像データを面
順次に受信し、 前記復元手段は、前記復号手段によって復号された差分
値情報に基づいて各色毎の画像データを復元し、 前記画像形成手段は、前記復元された各色毎の画像デー
タに基づいて面順次に画像を形成することを特徴とする
請求項20記載の画像処理システム。
21. The external device, wherein the multi-valued image data is color image data composed of a plurality of color components, further comprising a color separation unit that separates the multi-valued color image data for each color, The calculating means calculates difference information between each color of the image data separated for each color, and the transmitting means transmits the image data for each color encoded by the encoding means in a frame-sequential manner, On the image processing apparatus side, the receiving unit receives the encoded image data for each color in a frame-sequential manner, and the restoring unit sets the image data for each color based on the difference value information decoded by the decoding unit. 21. The image processing system according to claim 20, wherein the image forming unit forms an image in a frame-sequential manner based on the restored image data for each color.
【請求項22】 前記送信手段における各色毎の送信順
序は、前記画像形成手段における画像形成順序と同様で
あることを特徴とする請求項21記載の画像処理システ
ム。
22. The image processing system according to claim 21, wherein the transmission order of each color in the transmission unit is the same as the image formation order in the image forming unit.
【請求項23】 前記差分値算出手段は、第2色目以降
の画像データについて、前色の画像データに対する差分
値を算出することを特徴とする請求項21記載の画像処
理システム。
23. The image processing system according to claim 21, wherein said difference value calculating means calculates a difference value with respect to image data of a previous color for image data of a second color and thereafter.
【請求項24】 前記差分値算出手段は、第1色目の画
像データについては差分値算出を行なわず、そのまま出
力することを特徴とする請求項23記載の画像処理シス
テム。
24. The image processing system according to claim 23, wherein said difference value calculating means does not calculate a difference value for the image data of the first color and outputs the image data as it is.
【請求項25】 前記色復元手段は、第2色目以降の画
像データについて、前記復号手段によって復号された差
分値情報を前色の画像データに加算することによって画
像データを復元することを特徴とする請求項24記載の
画像処理システム。
25. The image processing apparatus according to claim 25, wherein the color restoring unit restores the image data of the second and subsequent colors by adding the difference value information decoded by the decoding unit to the image data of the previous color. The image processing system according to claim 24, wherein:
【請求項26】 画像処理装置側において、更に前記画
像形成部に出力される画像データを保持する保持手段を
有し、該保持手段は1色分の画像データを保持可能なサ
イズであることを特徴とする請求項25記載の画像処理
システム。
26. The image processing apparatus further includes a holding unit for holding image data output to the image forming unit, wherein the holding unit has a size capable of holding image data for one color. 26. The image processing system according to claim 25, wherein:
【請求項27】 前記色復元手段は、第2色目以降の画
像データを前記保持手段に出力する際に、前記保持手段
に既に保持されている画像データを順次更新することを
特徴とする請求項26記載の画像処理システム。
27. The image processing apparatus according to claim 27, wherein the color restoring unit sequentially updates the image data already held in the holding unit when outputting the image data of the second and subsequent colors to the holding unit. 27. The image processing system according to 26.
【請求項28】 外部装置側において、描画コマンドと
画像データとを分離し、各描画コマンドと画像データと
の描画領域の重複の有無に応じて、各描画コマンドと画
像データとの描画順を決定する描画コマンド制御手段を
更に有することを特徴とする請求項20乃至27のいず
れかに記載の画像処理システム。
28. The external device separates a drawing command and image data, and determines a drawing order of each drawing command and image data according to whether or not a drawing area of each drawing command and image data overlaps. The image processing system according to any one of claims 20 to 27, further comprising a drawing command control unit that performs the drawing command.
【請求項29】 前記描画コマンドは、文字コードやグ
ラフィックの描画コマンドであることを特徴とする請求
項28記載の画像処理システム。
29. The image processing system according to claim 28, wherein the drawing command is a character code or graphic drawing command.
【請求項30】 前記描画コマンド制御手段は、前記描
画コマンドに対して前記画像データとの描画順を示すフ
ラグを付加することを特徴とする請求項29記載の画像
処理システム。
30. The image processing system according to claim 29, wherein said drawing command control means adds a flag indicating a drawing order with said image data to said drawing command.
【請求項31】 前記送信手段は、前記フラグが付加さ
れた前記描画コマンドをまず送信し、続いて画像データ
を面順次に送信することを特徴とする請求項30記載の
画像処理システム。
31. The image processing system according to claim 30, wherein the transmitting unit transmits the drawing command to which the flag is added first, and subsequently transmits image data in a frame-sequential manner.
【請求項32】 画像処理装置側において、受信した描
画コマンドに付加されたフラグを参照して、前記画像形
成手段への出力前に、画像データとの描画順を考慮して
展開する展開制御手段を更に有することを特徴とする請
求項31記載の画像処理システム。
32. An image processing apparatus, comprising: a development control unit for performing development by considering a drawing order with image data before output to the image forming unit by referring to a flag added to a received drawing command. The image processing system according to claim 31, further comprising:
【請求項33】 前記外部装置は、ホストコンピュータ
であることを特徴とする請求項20乃至32のいずれか
に記載の画像処理システム。
33. The image processing system according to claim 20, wherein the external device is a host computer.
【請求項34】 前記画像形成手段は、電子写真方式に
よる画像形成を行うことを特徴とする請求項33記載の
画像処理システム。
34. The image processing system according to claim 33, wherein said image forming means forms an image by an electrophotographic method.
【請求項35】 多値画像データを入力する入力工程
と、 前記入力された多値画像データをその差分値に基づいて
符号化する符号化工程と、 前記符号化工程による符号データを保持手段に保持する
保持工程と、 前記保持手段に保持された符号データを復号して多値画
像データを復元する復号工程と、 前記復元された多値画像データに基づいて多値画像を形
成して出力する画像形成工程と、 を有することを特徴とする画像処理方法。
35. An inputting step of inputting multi-valued image data, an encoding step of encoding the input multi-valued image data based on a difference value thereof, A holding step of holding; a decoding step of decoding code data held by the holding unit to restore multi-valued image data; and forming and outputting a multi-valued image based on the restored multi-valued image data. An image processing method, comprising: an image forming step.
【請求項36】 外部装置と画像処理装置とが接続され
た画像処理システムにおける画像処理方法であって、 外部装置側において、 多値画像データの差分値情報を算出する差分値算出工程
と、 前記算出された差分値情報を符号化する符号化工程と、 前記符号化された画像データを送信する送信工程と、を
有し、 画像処理装置側において、 符号化された画像データを受信する受信工程と、 前記受信した画像データを復号して差分値情報を得る復
号工程と、 前記復号された差分値情報に基づいて画像データを復元
する復元工程と、 前記復元された画像データに基づいて画像を形成する画
像形成工程と、 を有することを特徴とする画像処理方法。
36. An image processing method in an image processing system in which an external device and an image processing device are connected, wherein, on the external device side, a difference value calculating step of calculating difference value information of multi-valued image data; An encoding step of encoding the calculated difference value information; and a transmitting step of transmitting the encoded image data, wherein the image processing apparatus side receives the encoded image data. A decoding step of decoding the received image data to obtain difference value information; a restoration step of restoring image data based on the decoded difference value information; and An image processing method, comprising: forming an image.
JP210097A 1997-01-09 1997-01-09 Image processing unit, its method, and image processing system Pending JPH10200757A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP210097A JPH10200757A (en) 1997-01-09 1997-01-09 Image processing unit, its method, and image processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP210097A JPH10200757A (en) 1997-01-09 1997-01-09 Image processing unit, its method, and image processing system

Publications (1)

Publication Number Publication Date
JPH10200757A true JPH10200757A (en) 1998-07-31

Family

ID=11519935

Family Applications (1)

Application Number Title Priority Date Filing Date
JP210097A Pending JPH10200757A (en) 1997-01-09 1997-01-09 Image processing unit, its method, and image processing system

Country Status (1)

Country Link
JP (1) JPH10200757A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009060593A (en) * 2007-08-03 2009-03-19 Canon Inc Image reader and image reading method
JP2009145932A (en) * 2007-12-11 2009-07-02 Toshiba Corp Program, method and image processing device for detecting update of image information,
US8601105B2 (en) 2008-01-31 2013-12-03 Kabushiki Kaisha Toshiba Apparatus, method and computer program product for faciliating communication with virtual machine

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009060593A (en) * 2007-08-03 2009-03-19 Canon Inc Image reader and image reading method
JP2009145932A (en) * 2007-12-11 2009-07-02 Toshiba Corp Program, method and image processing device for detecting update of image information,
US8416253B2 (en) 2007-12-11 2013-04-09 Kabushiki Kaisha Toshiba Apparatus, method, and recording medium for detecting update of image information
US8601105B2 (en) 2008-01-31 2013-12-03 Kabushiki Kaisha Toshiba Apparatus, method and computer program product for faciliating communication with virtual machine

Similar Documents

Publication Publication Date Title
JP5369982B2 (en) Image processing apparatus and image processing method
US5465173A (en) Image processing apparatus
EP0817111B1 (en) Image forming method and apparatus
JP2001047670A (en) Printing apparatus, method for resolution convert printing by printing apparatus, and memory medium with computer readable program recorded therein
US5812169A (en) Combined storage of data for two printheads
JP4006333B2 (en) Image compression method, image processing apparatus, computer program, and computer-readable storage medium
JPH10200757A (en) Image processing unit, its method, and image processing system
JP2005349755A (en) Color printer
JP4115294B2 (en) Image processing apparatus and method
JP2001199135A (en) Apparatus and method for controlling printing and memory medium
JP5740991B2 (en) Image processing apparatus and image processing method
JP2001157062A (en) Image processor
JP5267147B2 (en) Image processing apparatus, image processing method, and computer program
US20080240611A1 (en) Image forming apparatus and image forming method
JP3679586B2 (en) Encoding and decoding apparatus and encoding and decoding method thereof
JP2006171940A (en) Printing system
JP2007180607A (en) Image processing apparatus and image processing method
JPH1188699A (en) Image data coder, its method, and image-processing unit, its method and storage medium
JP2002237952A (en) Imaging device, imaging system, coding control method and storage medium
JP3220188B2 (en) Image editing apparatus and image editing method
JPS63166543A (en) Image forming device
JPH08149282A (en) Image processing unit and its method
JPH10207665A (en) Printing control device, method therefor and printer
JP2004230742A (en) Image processor and image processing method
JP2006159458A (en) Image output device

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20021206