JP4442525B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP4442525B2
JP4442525B2 JP2005208256A JP2005208256A JP4442525B2 JP 4442525 B2 JP4442525 B2 JP 4442525B2 JP 2005208256 A JP2005208256 A JP 2005208256A JP 2005208256 A JP2005208256 A JP 2005208256A JP 4442525 B2 JP4442525 B2 JP 4442525B2
Authority
JP
Japan
Prior art keywords
data
pixel
dot
block
dots
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005208256A
Other languages
Japanese (ja)
Other versions
JP2007028262A (en
Inventor
淳也 矢田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005208256A priority Critical patent/JP4442525B2/en
Priority to US11/484,508 priority patent/US20070115506A1/en
Publication of JP2007028262A publication Critical patent/JP2007028262A/en
Application granted granted Critical
Publication of JP4442525B2 publication Critical patent/JP4442525B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、所定解像度で多階調の画像を表す画像データを入力し、該画像データを変換して、前記所定解像度以上の出力解像度で印刷媒体上にドットを形成可能なドット形成用データを生成する画像処理装置に関する。   The present invention inputs image data representing a multi-tone image at a predetermined resolution, converts the image data, and generates dot formation data capable of forming dots on a print medium at an output resolution higher than the predetermined resolution. The present invention relates to an image processing apparatus to be generated.

プリンタなどの印刷装置の印刷解像度は年々高くなっており、デジタルカメラなどで撮影した画像の解像度を上回ることも少なくない。こうした場合には、印刷しようとする画像データの1画素が、印刷上の単位であるピクセルの複数の集合に対応することになる。例えば、印刷しようとする画像の解像度が360dpi×360dpiで、印刷解像度が1440dpi×720dpiの場合には、画像データ側の1画素は、印刷装置側の4×2のピクセルの集合に対応していることになる。   The printing resolution of printing apparatuses such as printers is increasing year by year, and often exceeds the resolution of images taken with a digital camera or the like. In such a case, one pixel of image data to be printed corresponds to a plurality of sets of pixels that are units for printing. For example, when the resolution of an image to be printed is 360 dpi × 360 dpi and the print resolution is 1440 dpi × 720 dpi, one pixel on the image data side corresponds to a set of 4 × 2 pixels on the printing device side. It will be.

そこで、こうした場合に、1画素の階調値を4×2のピクセル群に形成するドットの個数および配置により多値化しようとする手法が考えられる。この場合の最も単純な手法は、4×2のピクセルの集合に対して面積階調の考え方を適用し、全てのピクセルにドットが形成されていない状態から全てのピクセルにドットが形成されている状態まで、9階調を表現する手法である(濃度パターン法ともいう)。これに対して、出願人は、組織的ディザ法の考え方を4×2ピクセルの集合に、いわば局所的に適用し、組織的ディザ法による画質を維持したまま高速な処理を実現する手法を提案している(下記特許文献1参照)。かかる手法は、極めて高速なハーフトーン処理を実現し、かつ従来の組織的ディザ法と比べても遜色ない画質を実現する画期的なものである。   Therefore, in such a case, a method is conceivable in which the gradation value of one pixel is multivalued by the number and arrangement of dots formed in a 4 × 2 pixel group. The simplest method in this case applies the concept of area gradation to a set of 4 × 2 pixels, and dots are formed on all pixels from a state where dots are not formed on all pixels. This is a technique for expressing nine gradations up to a state (also called a density pattern method). On the other hand, the applicant proposes a method that realizes high-speed processing while maintaining the image quality by the systematic dither method by applying the concept of the systematic dither method locally to a set of 4x2 pixels, so to speak. (See Patent Document 1 below). Such a technique is an epoch-making technique that realizes extremely high-speed halftone processing and realizes an image quality comparable to that of the conventional systematic dither method.

国際公開第2004/086750号パンフレットInternational Publication No. 2004/086750 Pamphlet

ところで、画像に文字等が含まれている場合には、自然画像と比べると、文字のエッジ部分についてシャープな再現性を要求されることが多い。上記の手法は、処理速度と画質に優れた手法であるが、文字等のエッジを再現性よく印刷しようとすると、結局、入力画像の解像度を高くするほかはなく、入力画像の解像度を高くすれば、他の手法と同様、処理時間の長期化を招く場合がある。   By the way, when a character or the like is included in an image, sharp reproducibility is often required for the edge portion of the character as compared with a natural image. The above method is excellent in processing speed and image quality, but if you try to print the edges of characters, etc. with good reproducibility, the resolution of the input image must be increased. For example, as with other methods, the processing time may be prolonged.

このような状況に鑑み、本発明が解決しようとする課題は、画像データ中に文字等のエッジ部分が存在する場合において処理速度を向上させることにある。   In view of such a situation, the problem to be solved by the present invention is to improve the processing speed when an edge portion such as a character exists in image data.

上記課題を解決するため、本発明を画像処理装置として次のように構成した。すなわち、
所定解像度の画像データを構成する複数の画素の画素データをそれぞれ変換して、前記所定解像度以上の出力解像度で印刷媒体上にドットを形成可能なドット形成用データを生成する画像処理装置であって、
前記所定解像度の画像データを構成する各画素を、前記出力解像度と前記所定解像度との相違に従って前記印刷媒体上の複数のドットの集合であるブロックに対応させ、前記各画素の画素データを、複数の閾値からなるディザマトリックスに由来する複数種類のテーブルを参照しながら、前記ブロック内のドットの配置を表すドット形成用データに変換する第1のハーフトーン処理部と、
前記画素データの前記ドット形成用データへの変換に先立ち、一様な所定色で表され前記ディザマトリックスに対応する大きさを有する所定色画像データを構成する各画素データを、それぞれ前記第1のハーフトーン処理部に入力して前記所定色画像データ全体を前記ドット形成用データに変換することで、前記所定色画像データを前記画像データに繰り返し当て嵌めたと想定した場合における前記所定色の画素データの配置位置に応じて該所定色の画素データから前記ドット形成用データを直接的に求めるための所定色変換テーブルを予め生成する所定色変換テーブル生成部と、
前記所定解像度の画像データを取得する画像データ取得部と、
前記取得した画像データが有する複数の画素を処理用の画素群としてとりまとめ、該画素群内に、前記所定色により構成されるエッジが存在するか否かを判断する判断部と、
前記判断部により、前記画素群内に前記エッジが存在しないと判断した場合には、前記画素群を代表する一の画素データを前記第1のハーフトーン処理部に入力して該画素データを前記ドット形成用データに変換する非エッジ処理部と、
前記判断部により、前記画素群内に前記エッジが存在すると判断した場合には、該エッジを構成する所定色の画素の配置位置に応じたドット形成用データを、予め生成された前記所定色変換テーブルから取得することで、前記画素群内の前記所定色の画素データをドット形成用データに直接的に変換する第2のハーフトーン処理部とを備え
前記第1のハーフトーン処理部は、
前記ディザマトリックスを前記ブロックのサイズに応じて分割した複数のブロックのそれぞれについて、画素データを当該画素データが取り得る範囲において昇順に該ブロック内の前記閾値と順次比較した場合に順次得られる該ブロック内のドットの配置パターンを示す量子化データが、前記各画素データおよび前記各ブロックにそれぞれ対応付けられて記録されている量子化テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する量子化テーブル記憶部と、
前記各ブロック内に配置するドットの種類と数の組み合わせを一意に示す第1ドット個数データが、前記各量子化データおよび前記各ブロックに対応付けて記録されている第1ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する第1ドット個数テーブル記憶部と、
前記第1ドット個数データ毎に、該第1ドット個数データが示す前記ドットの種類と数の組み合わせが記録されている第2ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する第2ドット個数テーブル記憶部と、
前記所定解像度の画像データを構成する前記各画素の画素データを取得する取得部と、
前記各画素は、それぞれ前記複数のブロックのうちの一のブロックに対応しており、前記画像データ内に前記ディザマトリックスを構成する複数のブロックを繰り返し当て嵌めることにより、前記取得した画素データに位置的に対応するブロックを、前記複数のブロックの中から判別するブロック判別部と、
前記取得した画素データと前記判別されたブロックとに対応する量子化データを、前記量子化テーブルから取得するエンコード部と、
前記エンコード部によって取得された前記量子化データと、前記ブロック判別部によって判別されたブロックとに基づき、前記第1ドット個数テーブルを参照して、該量子化データと該ブロックとに対応する前記第1ドット個数データを取得するとともに、前記第2ドット個数テーブルを参照して、該取得された第1ドット個数データに対応する前記ドットの種類と数の組み合わせを取得し、該取得されたドットの種類と数の組み合わせに基づいて、前記判別されたブロック内に発生させるドットの配置を決定し、前記ドット形成用データを生成するデコード部と、を備えることを要旨とする。

In order to solve the above problems, the present invention is configured as follows as an image processing apparatus. That is,
An image processing device that converts pixel data of a plurality of pixels constituting image data of a predetermined resolution , and generates dot formation data capable of forming dots on a print medium at an output resolution equal to or higher than the predetermined resolution. ,
Each pixel constituting the image data of the predetermined resolution, in accordance with the difference between the and the output resolution predetermined resolution so as to correspond to the block which is a set of multiple dots on the printing medium, prior SL of each pixel A first halftone processing unit that converts pixel data into dot formation data representing the arrangement of dots in the block while referring to a plurality of types of tables derived from a dither matrix composed of a plurality of threshold values;
Prior to the conversion of the pixel data into the dot formation data, each pixel data constituting predetermined color image data represented by a uniform predetermined color and having a size corresponding to the dither matrix is respectively set in the first data . The pixel data of the predetermined color when it is assumed that the predetermined color image data is repeatedly applied to the image data by converting the entire predetermined color image data into the dot formation data by inputting to the halftone processing unit A predetermined color conversion table generating unit for generating in advance a predetermined color conversion table for directly obtaining the dot formation data from the pixel data of the predetermined color according to the arrangement position of
An image data acquisition unit for acquiring image data of the predetermined resolution;
A determination unit that collects a plurality of pixels included in the acquired image data as a processing pixel group, and determines whether an edge constituted by the predetermined color exists in the pixel group;
By the determination unit, when the edges in the pixel group is determined not to exist, enter one of the pixel data representing the pixel group in the first half-tone processing unit, the pixel data A non-edge processing unit for converting into the dot formation data;
By the determination unit, when it is determined that the edge in the pixel group is present, the dot formation data corresponding to the position of the predetermined color of the pixels constituting the edge, previously generated said predetermined color conversion A second halftone processing unit that directly converts pixel data of the predetermined color in the pixel group into dot formation data by obtaining from the table ,
The first halftone processing unit includes:
For each of a plurality of blocks obtained by dividing the dither matrix according to the block size, the blocks obtained sequentially when pixel data is sequentially compared with the threshold values in the block in ascending order within the range that the pixel data can take. A quantization table in which quantization data indicating an arrangement pattern of dots is recorded in association with each pixel data and each block is stored as one of the plurality of types of tables. A quantization table storage unit;
A first dot number table in which first dot number data uniquely indicating a combination of types and numbers of dots arranged in each block is recorded in association with each quantized data and each block, A first dot number table storage unit that stores the table as one of a plurality of types of tables;
For each of the first dot number data, a second dot number table in which a combination of the type and number of dots indicated by the first dot number data is recorded is stored as one table among the plurality of types of tables. A second dot number table storage unit,
An acquisition unit for acquiring pixel data of each pixel constituting the image data of the predetermined resolution;
Each of the pixels corresponds to one block of the plurality of blocks, and is positioned in the acquired pixel data by repeatedly fitting a plurality of blocks constituting the dither matrix in the image data. And a block discriminating unit for discriminating corresponding blocks from among the plurality of blocks,
An encoding unit that acquires quantization data corresponding to the acquired pixel data and the determined block from the quantization table;
Based on the quantized data acquired by the encoding unit and the block determined by the block determining unit, the first dot number table is referred to and the quantized data and the block corresponding to the block are referred to. Acquire 1 dot number data and refer to the second dot number table to acquire a combination of the type and number of dots corresponding to the acquired first dot number data. A gist is provided with a decoding unit that determines the arrangement of dots to be generated in the determined block based on a combination of type and number, and generates the dot formation data .

本発明の画像処理装置は、入力した画像データを第1のハーフトーン処理部によってドット形成用データに変換するのに先立ち、所定色で表された所定サイズの同一色画像データを第1のハーフトーン処理部に入力することにより前記所定色の画素をドット形成用データに変換するための所定色変換テーブルを生成する。そして、入力した画像データが有する複数の画素をとりまとめた処理用の画素群内に、前記所定色の画素によって構成されているエッジが存在すると判断すれば、事前に作成された所定色変換テーブルを用いてドット形成用データへの変換を行う。一方、処理用の画素群内に、エッジが存在しないと判断すれば、第1のハーフトーン処理部によって通常のハーフトーン処理を行い、ドット形成用データへの変換を行う。   The image processing apparatus according to the present invention converts the input image data into the first halftone processing unit using the first halftone processing unit to convert the same color image data of a predetermined size represented by a predetermined color into the first halftone image data. A predetermined color conversion table for converting the pixels of the predetermined color into dot formation data is generated by inputting to the tone processing unit. If it is determined that an edge constituted by the pixels of the predetermined color exists in a processing pixel group in which a plurality of pixels included in the input image data are collected, a predetermined color conversion table created in advance is stored. To convert to dot formation data. On the other hand, if it is determined that no edge exists in the processing pixel group, the normal halftone processing is performed by the first halftone processing unit to convert the data into dot formation data.

このような画像処理装置によれば、所定色の画素によって構成された文字等のエッジ部分については事前に作成された所定色変換テーブルを用いて即座にドット形成用データへの変換を行うことができるので、全体として処理の高速化を図ることができる。   According to such an image processing apparatus, an edge portion such as a character constituted by pixels of a predetermined color can be immediately converted into dot formation data using a predetermined color conversion table created in advance. As a result, the overall processing speed can be increased.

上記構成の画像処理装置において、
前記判断部は、前記画素群内に、前記所定色の画素と白色の画素とが混在した場合に、前記エッジが存在すると判断するものとすることができる。
In the image processing apparatus having the above configuration,
The determination unit may determine that the edge is present when the pixel of the predetermined color and the white pixel are mixed in the pixel group.

このような構成によれば、白色の画素は、印刷媒体上にドットを形成することが不要な画素であるため、所定色の画素についてのみドット形成用データへの変換を行えばよく、処理速度を向上させることができる。   According to such a configuration, since the white pixel is a pixel that does not need to form dots on the print medium, only the pixel of the predetermined color needs to be converted into dot formation data, and the processing speed Can be improved.

上記構成の画像処理装置において、
前記判断部は、前記エッジが存在すると判断した場合に、前記画素群内における前記所定色の画素と前記白色の画素との配置に応じて、該画素群内の画像データを二値化し、該二値化した画素群の画像データを前記第2のハーフトーン処理部に入力する手段を備え、
前記第2のハーフトーン処理部は、前記判断部から受け取った前記二値化された画像データのうち、前記所定色を表す画素について前記所定色変換テーブルから、該画素の位置に応じて前記ドット形成用データを取得するものとしてもよい。
In the image processing apparatus having the above configuration,
When the determination unit determines that the edge exists, the image data in the pixel group is binarized according to the arrangement of the pixel of the predetermined color and the white pixel in the pixel group, and Means for inputting binarized pixel group image data to the second halftone processing unit;
The second halftone processing unit receives the dot from the predetermined color conversion table for the pixel representing the predetermined color in the binarized image data received from the determination unit according to the position of the pixel. The formation data may be acquired.

このような構成によれば、エッジ部分のデータを二値化することにより、判断部から第2のハーフトーン処理部に転送するデータ量を大幅に削減することができる。例えば、画素群が2×2のサイズであり、4つの画素がそれぞれRGB毎に256階調を有するデータであれば、96ビット(=4画素×3色×8ビット)のデータ量が必要であるのに対し、これを二値化すれば、4ビット(=4画素×1ビット)のデータ量に削減されることになる。   According to such a configuration, the amount of data transferred from the determination unit to the second halftone processing unit can be significantly reduced by binarizing the edge portion data. For example, if the pixel group has a size of 2 × 2 and the four pixels each have 256 gradations for each RGB, a data amount of 96 bits (= 4 pixels × 3 colors × 8 bits) is required. On the other hand, if this is binarized, the data amount is reduced to 4 bits (= 4 pixels × 1 bit).

上記構成の画像処理装置において、
前記所定色変換テーブル生成部は、前記画像処理装置の起動時に、前記所定色変換テーブルを生成するものとしてもよい。
In the image processing apparatus having the above configuration,
The predetermined color conversion table generation unit may generate the predetermined color conversion table when the image processing apparatus is activated.

このような構成であれば、画像データの入力の度に所定色変換テーブルを生成する必要がないため、処理速度を向上させることができる。   With such a configuration, it is not necessary to generate a predetermined color conversion table every time image data is input, so that the processing speed can be improved.

上記構成の画像処理装置において、
前記所定色変換テーブル生成部は、前記画像処理装置が前記画像データを入力した際に、前記所定色変換テーブルを生成するものとしてもよい。
In the image processing apparatus having the above configuration,
The predetermined color conversion table generation unit may generate the predetermined color conversion table when the image processing apparatus inputs the image data.

このような構成によれば、入力した画像データの印刷態様に応じて所定色変換テーブルを作成することができる。例えば、画像データを印刷しようとする印刷媒体の色や用紙種別が指定された場合に、これらの条件に応じて異なるハーフトーン特性を有する所定色変換テーブルを作成することが可能になる。   According to such a configuration, the predetermined color conversion table can be created according to the printing mode of the input image data. For example, when a color of a print medium on which image data is to be printed and a paper type are designated, it is possible to create a predetermined color conversion table having different halftone characteristics according to these conditions.

上記構成の画像処理装置において、
前記非エッジ処理部は、前記画素群を一つの画素とする解像度変換を行って、該画素を前記第1のハーフトーン処理部に入力するものとしてもよい。
In the image processing apparatus having the above configuration,
The non-edge processing unit may perform resolution conversion using the pixel group as one pixel, and input the pixel to the first halftone processing unit.

このような構成によれば、エッジを有しない画素群について画像データの容量を大幅に削減することができるため、処理速度を向上させることができる。   According to such a configuration, the capacity of the image data can be greatly reduced for a pixel group that does not have an edge, so that the processing speed can be improved.

上記構成の画像処理装置において、
前記非エッジ処理部は、前記画素群内の画素の階調値を平均化することにより、前記解像度変換を行うものとしてもよい。
In the image processing apparatus having the above configuration,
The non-edge processing unit may perform the resolution conversion by averaging the gradation values of the pixels in the pixel group.

このような構成であれば、単純な演算により高速に解像度の低減を行って第1のハーフトーン処理部に画像データを入力することができる。   With such a configuration, it is possible to input the image data to the first halftone processing unit by reducing the resolution at high speed by a simple calculation.

上記構成の画像処理装置において、
前記第1のハーフトーン処理部は、
画素の階調値に基づいて、該画素に対応する前記ピクセル群を構成する各ピクセルについての多値化の結果を少ない情報量で表したコード値を取得するためのエンコード用対応関係を、予め複数種類準備するエンコード準備手段と、
前記画像データから順次取り出した前記画素毎に、その階調値を用いて、前記複数種類のエンコード用対応関係のうち前記ピクセル群に割り当てられているいずれか一つの前記エンコード用対応関係を参照することにより、前記コード値を取得するエンコード手段と、
所定の範囲の値をとるコード値から、前記ピクセル群内の各ピクセルについてのドット形成の有無を表す出力ドット配置を取得するためのデコード用対応関係を予め複数種類準備するデコード準備手段と、
前記画素毎に、前記取得された前記コード値を受け取り、該受け取ったコード値に基づいて、前記画素に割り当てられた前記エンコード用対応関係に対応する前記デコード用対応関係を参照して、前記出力ドット配置を取得するデコード手段とを備えるものとしてもよい。
In the image processing apparatus having the above configuration,
The first halftone processing unit includes:
Based on the gradation value of a pixel, an encoding correspondence relationship for acquiring a code value representing a result of multi-leveling for each pixel constituting the pixel group corresponding to the pixel with a small amount of information is obtained in advance. Encoding preparation means to prepare multiple types,
For each of the pixels sequentially extracted from the image data, the gradation value is used to refer to any one of the plurality of types of encoding correspondences assigned to the pixel group. Encoding means for obtaining the code value;
Decoding preparation means for preparing in advance a plurality of types of decoding correspondences for obtaining an output dot arrangement representing the presence or absence of dot formation for each pixel in the pixel group from a code value taking a value in a predetermined range;
For each pixel, the acquired code value is received, and based on the received code value, the decoding correspondence relationship corresponding to the encoding correspondence relationship assigned to the pixel is referred to, and the output Decoding means for acquiring the dot arrangement may be provided.

かかる構成の画像処理装置では、まず、画素の階調値をエンコード用対応関係に基づきコード値に変換し、更に、このコード値をデコード用対応関係に基づき出力ドット配置に変換することで、容易に画像データをドット形成用データに変換することができる。このような構成によれば、従来の誤差拡散法のように、着目画素と所定の閾値との誤差を周囲の画素の階調値に分散させていく複雑な演算を行う必要がなく、また、従来の組織的ディザ法のように、着目画素の階調値と所定の閾値との大小関係を比較する条件分岐処理を行う必要がない。従って、極めて高速にハーフトーン処理を行うことが可能になる。   In the image processing apparatus having such a configuration, first, the gradation value of the pixel is converted into a code value based on the correspondence for encoding, and further, the code value is converted into an output dot arrangement based on the correspondence for decoding. The image data can be converted into dot formation data. According to such a configuration, unlike the conventional error diffusion method, there is no need to perform a complicated calculation for distributing the error between the target pixel and the predetermined threshold value to the gradation values of the surrounding pixels, and Unlike the conventional systematic dither method, there is no need to perform conditional branch processing for comparing the magnitude relationship between the gradation value of the pixel of interest and a predetermined threshold value. Therefore, halftone processing can be performed at extremely high speed.

上記構成の画像処理装置において、
前記デコード準備手段は、前記デコード用対応関係として、前記コード値から前記ピクセル群内に形成するドットの個数を表す個数データを取得するための個数テーブルと、前記ピクセル群内についてのドットの形成順序が予め定義された順序値マトリクスとを準備し、
前記デコード手段は、前記コード値に基づいて、前記画素に割り当てられた前記エンコード用対応関係に対応する前記デコード用対応関係を参照して、前記個数テーブルから前記コード値に対応する前記個数データを取得し、更に、前記個数データ分の個数のドットを、前記順序値マトリクスに定義されたドットの形成順序に基づき配置することにより、前記出力ドット配置を生成するものとしてもよい。
In the image processing apparatus having the above configuration,
The decoding preparation means includes, as the decoding correspondence, a number table for obtaining number data representing the number of dots formed in the pixel group from the code value, and a dot formation order in the pixel group Prepare a predefined order value matrix,
The decoding means refers to the decoding correspondence corresponding to the encoding correspondence assigned to the pixel based on the code value, and obtains the number data corresponding to the code value from the number table. Further, the output dot arrangement may be generated by arranging the number of dots corresponding to the number data based on the dot formation order defined in the order value matrix.

このような構成では、階調値をコード値に変換して、更に、このコード値をドットの個数を表す個数データに変換する。そして、この個数分のドットを、順序値マトリクスに基づき配置することで、出力ドット配置を生成する。かかる構成によれば、順序値マトリクスに定義されたドットの形成順に従い、必要な数のドットを配置するだけで容易に画像データからドット形成用データへの変換を行うことができる。   In such a configuration, the gradation value is converted into a code value, and this code value is further converted into number data representing the number of dots. Then, an output dot arrangement is generated by arranging this number of dots based on the order value matrix. According to this configuration, it is possible to easily convert image data to dot formation data by arranging a required number of dots in accordance with the dot formation order defined in the order value matrix.

上記構成の画像処理装置において、
前記デコード準備手段は、前記個数テーブルとして、前記印刷媒体上に形成可能なドットのサイズ毎に前記個数データが設定された個数テーブルを準備するものとしてもよい。
In the image processing apparatus having the above configuration,
The decoding preparation unit may prepare a number table in which the number data is set for each size of dots that can be formed on the print medium, as the number table.

このような構成であれば、印刷媒体上に複数種類のサイズのドットを形成可能なドット形成用データを生成することができる。   With such a configuration, it is possible to generate dot formation data that can form dots of a plurality of types on the print medium.

上記構成の画像処理装置において、
前記デコード手段は、前記出力ドット配置の生成にあたり、前記印刷媒体上に形成可能なドットのサイズのうち、大きなサイズのドットから順に前記ドットの配置を行うものとしてもよい。
In the image processing apparatus having the above configuration,
In the generation of the output dot arrangement, the decoding unit may arrange the dots in order from the dot having the largest size among the dot sizes that can be formed on the print medium.

かかる構成によれば、大きなサイズのドットを、小さなサイズのドットに優先して分散して配置することができる。そのため、大きなサイズのドットが隣接して配置することを抑制することができるため、画質を向上させることができる。   According to such a configuration, it is possible to disperse and arrange large sized dots in preference to small sized dots. Therefore, it is possible to suppress the arrangement of large-sized dots adjacent to each other, so that the image quality can be improved.

上記構成の画像処理装置において、
更に、前記判断部による判断結果に対応して前記第1のハーフトーン処理部または前記第2のハーフトーン処理部から前記ドット形成用データを受け取り、該ドット形成用データに基づき、前記印刷媒体上に前記ドットを形成するドット形成手段を備えるものとしてもよい。
In the image processing apparatus having the above configuration,
Further, the dot formation data is received from the first halftone processing unit or the second halftone processing unit in response to the determination result by the determination unit, and on the print medium based on the dot formation data It is good also as a thing provided with the dot formation means which forms the said dot.

このような構成によれば、本発明の画像処理装置を印刷装置として適用することができる。   According to such a configuration, the image processing apparatus of the present invention can be applied as a printing apparatus.

上記構成の画像処理装置において、
前記ドット形成手段は、1種類のインクにつき、インク滴を吐出するノズルを前記印刷媒体の送り方向に所定のピッチ間隔で複数個備え、前記ピッチ間隔は、該ドット形成手段によって最終的に前記印刷媒体上に形成される隣接したラスタ間のピッチの整数倍であり、
前記第1のハーフトーン処理部は、前記ドット形成手段による前記ラスタの形成にあたり、一度に形成されるラスタに対応するドット形成用データのみを生成するものとしてもよい。
In the image processing apparatus having the above configuration,
The dot forming means includes a plurality of nozzles for ejecting ink droplets for one type of ink at a predetermined pitch interval in the feeding direction of the print medium, and the pitch interval is finally determined by the dot forming means. An integer multiple of the pitch between adjacent rasters formed on the medium,
The first halftone processing unit may generate only dot formation data corresponding to a raster formed at a time when the raster is formed by the dot forming unit.

このような構成では、第1のハーフトーン処理は、ハーフトーン処理の処理単位のピクセル群のうち、形成しようとするラスタに属するピクセルのみを用いてドット形成用データを生成することができる。従って、印刷媒体上に1回の主走査で形成されるラスタのピッチ間に属し、印刷が行われないラスタについてのドット形成用データは生成する必要がないため、データ容量を削減することができる。この点で、必要なラスタ以外のラスタにも階調値の誤差を分配する必要のある従来の誤差拡散法よりも、データを記憶しておくメモリ容量を削減することができる。   In such a configuration, the first halftone process can generate dot formation data using only the pixels belonging to the raster to be formed out of the pixel group of the halftone process unit. Accordingly, since it is not necessary to generate dot formation data for rasters that belong to the raster pitch formed by one main scan on the print medium and are not printed, the data capacity can be reduced. . In this respect, the memory capacity for storing data can be reduced as compared with the conventional error diffusion method in which the gradation value error needs to be distributed to rasters other than the necessary raster.

なお、本発明は、上述した画像処理装置としての構成のほか、画像処理方法や、コンピュータプログラムとしても構成することができる。コンピュータプログラムは、例えば、フレキシブルディスクやCD−ROM、光磁気ディスク、メモリカード、ハードディスクなどの記録媒体に記録されていてもよい。また、このコンピュータプログラムは、データ信号として搬送波内に具現化されていてもよい。   The present invention can be configured as an image processing method or a computer program in addition to the configuration as the image processing apparatus described above. The computer program may be recorded on a recording medium such as a flexible disk, a CD-ROM, a magneto-optical disk, a memory card, or a hard disk. The computer program may be embodied in a carrier wave as a data signal.

以下、上述した本発明の作用・効果を一層明らかにするため、本発明の実施の形態を実施例に基づき次の順序で説明する。
A.印刷装置の概略構成:
B.印刷装置の内部構成:
C.画像処理ユニットの詳細な構成:
C−1.色変換回路(白黒エッジエンコード等):
C−2.ハーフトーン回路(白黒エッジデコード、ハーフトーン処理等):
C−3.ヘッド駆動用データ変換回路:
D.実施例の効果:
E.1×1モード時におけるハーフトーン回路内でのデータの流れ:
F.黒データテーブルの作成方法:
G.他の出力解像度モードの例:
H.変形例:
Hereinafter, in order to further clarify the operations and effects of the present invention described above, embodiments of the present invention will be described based on examples in the following order.
A. General configuration of printing device:
B. Internal configuration of the printing device:
C. Detailed configuration of the image processing unit:
C-1. Color conversion circuit (monochrome edge encoding, etc.):
C-2. Halftone circuit (monochrome edge decoding, halftone processing, etc.):
C-3. Head drive data conversion circuit:
D. Effects of the embodiment:
E. Data flow in the halftone circuit in 1 × 1 mode:
F. How to create a black data table:
G. Examples of other output resolution modes:
H. Variations:

A.印刷装置の概略構成:
図1は、実施例としての印刷装置100の概略構成を示す説明図である。この印刷装置100は本発明の画像処理装置に相当する。図示するように、本実施例の印刷装置100は、USBケーブル135等によってコンピュータ900と接続され、コンピュータ900から出力される画像や文書などのデータを印刷する装置である。コンピュータ900は、これらのデータの印刷にあたり、印刷装置100に対して印刷媒体Sの種類やサイズの指定、出力解像度の指定等、様々な印刷設定を行うことができる。また、印刷装置100には、操作パネル140が備えられており、同様の設定を、印刷装置100本体からも行うことができる。なお、印刷装置100とコンピュータ900とを併せて、広義の画像処理装置と呼ぶこともできる。
A. General configuration of printing device:
FIG. 1 is an explanatory diagram illustrating a schematic configuration of a printing apparatus 100 as an embodiment. The printing apparatus 100 corresponds to the image processing apparatus of the present invention. As illustrated, the printing apparatus 100 according to the present exemplary embodiment is an apparatus that is connected to a computer 900 via a USB cable 135 or the like and prints data such as images and documents output from the computer 900. When printing these data, the computer 900 can perform various print settings such as designation of the type and size of the print medium S and designation of output resolution for the printing apparatus 100. In addition, the printing apparatus 100 includes an operation panel 140, and the same setting can be performed from the printing apparatus 100 main body. The printing apparatus 100 and the computer 900 may be collectively referred to as an image processing apparatus in a broad sense.

本実施例の印刷装置100は、いわゆる複合機タイプの印刷装置であり、その上部には、スキャナ110が設けられている。このスキャナ110を用いれば、コンピュータ900との接続の有無を問わず、印刷装置100単体で画像を取り込み、取り込んだ画像を印刷することができる。また、印刷装置100の前面にはメモリカードを挿入するためのメモリカードスロット120が設けられている。印刷装置100は、コンピュータ900との接続の有無を問わず、このメモリカードスロット120に挿入されたメモリカードから画像を入力して印刷を行うこともできる。   The printing apparatus 100 according to the present embodiment is a so-called multifunction machine type printing apparatus, and a scanner 110 is provided on an upper portion thereof. If this scanner 110 is used, it is possible to capture an image with the printing apparatus 100 alone and print the captured image regardless of whether the computer 900 is connected or not. A memory card slot 120 for inserting a memory card is provided on the front surface of the printing apparatus 100. The printing apparatus 100 can also input and print an image from a memory card inserted into the memory card slot 120 regardless of whether or not the computer 900 is connected.

図の下部には、本実施例の印刷装置100の動作の概要を示した。本実施例の印刷装置100は、コンピュータ900やスキャナ110から720dpi×720dpiの解像度で画像データを入力し、印刷媒体S上に720dpi×720dpiの解像度で印刷を行う。かかる印刷処理において、印刷装置100は、入力画像の中に白色と黒色の組み合わせのみで構成される部分(以下、このような部分を「白黒エッジ」と呼ぶ)が存在するか否かを判断する。その結果、白黒エッジが存在しない部分については、一旦、解像度を360dpi×360dpiに落として量子化テーブルや個数テーブル、順序値マトリクスと呼ばれる種々のテーブルを参照して第1のハーフトーン処理を行う。一方、白黒エッジが存在する部分については、事前に作成しておいた黒データテーブル(本願の所定色変換テーブルに相当する)と呼ばれるテーブルを参照しつつ720dpi×720dpiの解像度を保ったまま第2のハーフトーン処理を行う。そして、最終的に両部分を合成し、720dpi×720dpiの出力解像度で印刷を行う。こうすることで、白色と黒色の組み合わせによって構成される文字や記号等については、高解像度のまま明瞭な印刷を行うことができ、その他の背景部分については、データ量を削減しつつ印刷を行うことができる。以下、かかる印刷装置100の詳細な構成について説明する。   The outline of the operation of the printing apparatus 100 of the present embodiment is shown in the lower part of the figure. The printing apparatus 100 according to the present exemplary embodiment inputs image data with a resolution of 720 dpi × 720 dpi from the computer 900 or the scanner 110, and performs printing on the print medium S with a resolution of 720 dpi × 720 dpi. In such a printing process, the printing apparatus 100 determines whether or not a portion (hereinafter, such a portion is referred to as a “monochrome edge”) configured only by a combination of white and black in the input image. . As a result, the first halftone process is performed on the portion where the black and white edge does not exist by referring to various tables called a quantization table, a number table, and an order value matrix once the resolution is reduced to 360 dpi × 360 dpi. On the other hand, with respect to a portion where a black and white edge exists, while referring to a table called a black data table (corresponding to the predetermined color conversion table of the present application) prepared in advance, the second is maintained with a resolution of 720 dpi × 720 dpi. Perform halftone processing. Finally, both parts are combined and printing is performed at an output resolution of 720 dpi × 720 dpi. By doing this, it is possible to print clearly with high resolution for characters and symbols composed of a combination of white and black, and for other background portions, while reducing the amount of data. be able to. Hereinafter, a detailed configuration of the printing apparatus 100 will be described.

B.印刷装置の内部構成:
図2は、印刷装置100の内部構成を示す説明図である。図示するように、印刷装置100は、印刷媒体Sに印刷を行う機構として、インクカートリッジ212を搭載したキャリッジ210や、キャリッジ210を主走査方向に駆動するキャリッジモータ220、印刷媒体Sを副走査方向に搬送する紙送りモータ230等を備えている。
B. Internal configuration of the printing device:
FIG. 2 is an explanatory diagram illustrating an internal configuration of the printing apparatus 100. As shown in the figure, the printing apparatus 100 serves as a mechanism for printing on the print medium S, a carriage 210 having an ink cartridge 212 mounted thereon, a carriage motor 220 that drives the carriage 210 in the main scanning direction, and the print medium S in the sub-scanning direction. And a paper feed motor 230 for conveying the paper.

キャリッジ210は、プラテン270と並行に設置された摺動軸280に移動自在に保持されている。キャリッジモータ220は、制御ユニット150からの指令に応じて駆動ベルト260を回転させることで、この摺動軸280に沿って、キャリッジ210を主走査方向に往復運動させることができる。   The carriage 210 is movably held on a sliding shaft 280 installed in parallel with the platen 270. The carriage motor 220 can reciprocate the carriage 210 in the main scanning direction along the sliding shaft 280 by rotating the drive belt 260 in accordance with a command from the control unit 150.

紙送りモータ230は、プラテン270を回転させることで、プラテン270と垂直方向に印刷媒体Sを搬送する。つまり、紙送りモータ230は、キャリッジ210を相対的に副走査方向に移動させることができる。   The paper feed motor 230 rotates the platen 270 to convey the print medium S in the direction perpendicular to the platen 270. That is, the paper feed motor 230 can relatively move the carriage 210 in the sub-scanning direction.

キャリッジ210には、シアン(C)、マゼンタ(M)、イエロ(Y)、ブラック(K)、ライトシアン(lc)、ライトマゼンタ(lm)、ダークイエロ(dy)、透明(cr)、の計8色のインクを収容したインクカートリッジ212が装着される(図中には、便宜上、4種類のインクカートリッジのみを示している)。インクカートリッジ212がキャリッジ210に装着されると、インクカートリッジ212内のインクは、図示しないインク通路を通じて、キャリッジ210の下面に設けられたインクヘッド211に供給される。なお、本実施例では、8色のインクを用いるものとするが、ライトシアンやライトマゼンタ、ダークイエロ、透明、の各色については使用しないものとしてもよい。なお、透明インクは、主に、他のインクが吐出されない白紙部分について吐出されるインクである。この透明インクによれば、色が印刷されない部分についても他のインクと同様の光沢感を与えることができる。   The carriage 210 has a total of eight colors: cyan (C), magenta (M), yellow (Y), black (K), light cyan (lc), light magenta (lm), dark yellow (dy), and transparent (cr). The ink cartridge 212 containing the ink is mounted (in the drawing, only four types of ink cartridges are shown for convenience). When the ink cartridge 212 is mounted on the carriage 210, the ink in the ink cartridge 212 is supplied to the ink head 211 provided on the lower surface of the carriage 210 through an ink passage (not shown). In this embodiment, eight colors of ink are used, but light cyan, light magenta, dark yellow, and transparent colors may not be used. The transparent ink is ink that is mainly ejected on a blank paper portion on which other ink is not ejected. According to this transparent ink, the same glossiness as that of other inks can be imparted to the portion where no color is printed.

インクヘッド211には、インクの種類毎に8組のノズル列が副走査方向に配列されている。1組のノズル列には、90個のノズルが一定のピッチ(例えば、120分の1インチ=0.21mm)で配列されている。つまり、キャリッジが1回、主走査されると最大90本のラスタラインが一定のピッチ間隔を空けて同時に印刷媒体S上に形成されることになる。このピッチ間隔は、最終的に印刷媒体上に形成される隣接したラスタ間のピッチの整数倍である。ここで、ノズル列の副走査方向に配列されるノズル数をN[個](Nは正の整数)、およびノズル間のドットピッチをk[個](kはNと互いに素の関係にある整数)、ノズル密度をD[個/インチ]とした場合、主走査の度に、N/(D・k)相当の一定の距離だけ副走査方向へ印刷媒体を搬送すると、副走査方向において隣接するラスタが異なるノズルによって形成されることになる。そのため、個々のノズルの特性やピッチにばらつきが多少ある場合でも、このようなばらつきによるバンディングの発生を抑えることができ、高画質の印刷を行なうことができる。このような印刷方法をインタレース印刷という。   In the ink head 211, eight sets of nozzle rows are arranged in the sub-scanning direction for each ink type. In one set of nozzle rows, 90 nozzles are arranged at a constant pitch (for example, 1/120 inch = 0.21 mm). That is, when the carriage is main-scanned once, a maximum of 90 raster lines are simultaneously formed on the print medium S with a certain pitch interval. This pitch spacing is an integer multiple of the pitch between adjacent rasters that are ultimately formed on the print medium. Here, the number of nozzles arranged in the sub-scanning direction of the nozzle row is N [numbers] (N is a positive integer), and the dot pitch between nozzles is k [numbers] (k is relatively prime to N. (Integer), assuming that the nozzle density is D [pieces / inch], each time the main scanning is performed, if the print medium is conveyed in the sub-scanning direction by a fixed distance corresponding to N / (D · k), it is adjacent in the sub-scanning direction. The raster to be formed is formed by different nozzles. Therefore, even when there are some variations in the characteristics and pitches of individual nozzles, banding due to such variations can be suppressed, and high-quality printing can be performed. Such a printing method is called interlaced printing.

インクヘッド211は、制御ユニット150による制御に応じて、吐出するインク滴の大きさを調整することができる。これにより、大ドット、中ドット、小ドットという3種類の大きさのドットを印刷媒体S上に形成することができる。   The ink head 211 can adjust the size of the ink droplets to be ejected according to control by the control unit 150. As a result, three types of sizes of large dots, medium dots, and small dots can be formed on the print medium S.

図3は、インクヘッド211から異なる大きさのインク滴が吐出される原理を示す説明図である。図の上部に示した電圧波形において、破線で示した波形が通常のドットを吐出する際の波形である。この電圧波形中に示した区間d2において、一旦、マイナスの電圧をピエゾ素子PEに印加すると、インク通路68の断面積を増大する方向にピエゾ素子PEが変形する。インクカートリッジ212のインク通路からのインクの供給速度には限界があるため、インク通路68の拡大に対してインクの供給量が不足する。この結果、図3下部の状態Aに示した通り、ノズルNz先端のインクの界面Meは、ノズルNz内側に凹んだ状態となる。   FIG. 3 is an explanatory diagram showing the principle by which ink droplets of different sizes are ejected from the ink head 211. In the voltage waveform shown in the upper part of the figure, the waveform indicated by a broken line is a waveform when a normal dot is ejected. In a section d2 shown in the voltage waveform, once a negative voltage is applied to the piezo element PE, the piezo element PE is deformed in a direction in which the cross-sectional area of the ink passage 68 is increased. Since the ink supply speed from the ink passage of the ink cartridge 212 is limited, the ink supply amount is insufficient for the expansion of the ink passage 68. As a result, as shown in the state A in the lower part of FIG. 3, the ink interface Me at the tip of the nozzle Nz is indented inside the nozzle Nz.

一方、実線で示す電圧波形を用い、区間d1に示すようにマイナス電圧をピエゾ素子PEに急激に印加すると、インクカートリッジ212からのインクの供給量はさらに不足した状態となる。従って、状態aで示す通りインク界面Meは状態Aに比べて更に内側に凹んだ状態となる。次に、ピエゾ素子PEに正の電圧が印加されると(区間d3)、インク通路68が狭められ、インクが吐出される。このとき、インク界面Meがあまり内側に凹んでいない状態(状態A)からは状態Bおよび状態Cに示すごとく大きなインク滴が吐出される。一方、インク界面Meが大きく内側に凹んだ状態(状態a)からは状態bおよび状態cに示すごとく小さなインク滴が吐出される。インクヘッド211からは、このようにして大きさの異なるインクが吐出されることになる。   On the other hand, if a negative voltage is suddenly applied to the piezo element PE as shown in the section d1 using the voltage waveform indicated by the solid line, the amount of ink supplied from the ink cartridge 212 is further insufficient. Therefore, the ink interface Me is further indented as compared with the state A as indicated by the state a. Next, when a positive voltage is applied to the piezo element PE (section d3), the ink passage 68 is narrowed and ink is ejected. At this time, large ink droplets are ejected from the state (state A) where the ink interface Me is not recessed inward so much as shown in the state B and the state C. On the other hand, small ink droplets are ejected from the state (state a) where the ink interface Me is greatly recessed inward as shown in the state b and the state c. Thus, inks having different sizes are ejected from the ink head 211.

説明を図2に戻す。印刷装置100は、上述した印刷機構を制御するための制御ユニット150を備えている。制御ユニット150には、印刷対象の画像データを入力するためのUSBインタフェース130や、スキャナ110、メモリカードスロット120が接続されている。また、制御ユニット150には、ユーザによる操作を受け付けるための操作パネル140が接続されている。   Returning to FIG. The printing apparatus 100 includes a control unit 150 for controlling the printing mechanism described above. Connected to the control unit 150 are a USB interface 130 for inputting image data to be printed, a scanner 110, and a memory card slot 120. Further, the control unit 150 is connected with an operation panel 140 for receiving an operation by a user.

制御ユニット150は、USBインタフェース130やスキャナ110、メモリカードスロット120から入力した画像データに対して、所定の画像処理を施し、印刷機構を制御して印刷を行う機能を備える。制御ユニット150は、かかる機能を実現するため、CPU151やSDRAM152、ROM153、EEPROM154、画像処理ユニット155、ヘッドコントロールユニット156等を備えている。これらの各デバイスは、所定のバスを介して相互に接続されている。   The control unit 150 has a function of performing predetermined image processing on image data input from the USB interface 130, the scanner 110, and the memory card slot 120, and controlling the printing mechanism to perform printing. The control unit 150 includes a CPU 151, an SDRAM 152, a ROM 153, an EEPROM 154, an image processing unit 155, a head control unit 156, and the like in order to realize such functions. Each of these devices is connected to each other via a predetermined bus.

ROM153には、印刷装置100の動作全体を制御するためのプログラムとしてファームウェアが記録されている。CPU151は、印刷装置100の電源投入時に、このファームウェアをSDRAM152の所定のワークエリアにロードして実行する。   In the ROM 153, firmware is recorded as a program for controlling the entire operation of the printing apparatus 100. When the printing apparatus 100 is powered on, the CPU 151 loads this firmware into a predetermined work area of the SDRAM 152 and executes it.

図4は、SDRAM152のメモリマップを示す説明図である。図示するように、SDRAM152には、ファームウェアFWのほか、様々なデータがCPU151によってROM153から読み出されて展開される。展開されるデータとしては、例えば、白黒エッジテーブルET、色変換テーブルLUT、量子化テーブルQT、第1ドット個数テーブルDT1、第2ドット個数テーブルDT2、順序値マトリクスOM、黒データテーブルBTなどがある。また、SDRAM152には、画像処理時に生成される様々な中間データを一時的に記憶するための様々なバッファ領域が確保されている。このバッファ領域としては、例えば、ラインバッファLB、エンコードデータバッファEB、ドット形成用データバッファDB、ヘッド駆動用データバッファHBなどがある。なお、ここに挙げたデータやバッファの働きについては、必要に応じてその都度説明する。なお、SDRAM152は、本発明の「データ記憶手段」に相当する。   FIG. 4 is an explanatory diagram showing a memory map of the SDRAM 152. As shown in the drawing, in the SDRAM 152, various data in addition to the firmware FW are read from the ROM 153 by the CPU 151 and expanded. Examples of data to be developed include a monochrome edge table ET, a color conversion table LUT, a quantization table QT, a first dot number table DT1, a second dot number table DT2, an order value matrix OM, and a black data table BT. . Also, the SDRAM 152 has various buffer areas for temporarily storing various intermediate data generated during image processing. Examples of the buffer area include a line buffer LB, an encode data buffer EB, a dot formation data buffer DB, and a head drive data buffer HB. The functions of the data and buffers listed here will be described as needed. The SDRAM 152 corresponds to the “data storage unit” of the present invention.

説明を図2に戻す。EEPROM154には、印刷装置100の製造工程で検出された各個体に固有の特性を補正するためのデータが記録されている。かかる補正データとしては、例えば、インクヘッド211の各ノズルから吐出されるインクの量や、各ノズルから吐出されるインクの吐出方向を補正するためのデータが含まれる。これらの補正データは、後述する画像処理ユニット155によって色調を補正する際に用いられる。   Returning to FIG. In the EEPROM 154, data for correcting the characteristic unique to each individual detected in the manufacturing process of the printing apparatus 100 is recorded. Such correction data includes, for example, data for correcting the amount of ink ejected from each nozzle of the ink head 211 and the ejection direction of ink ejected from each nozzle. These correction data are used when the color tone is corrected by an image processing unit 155 described later.

画像処理ユニット155は、印刷に関する画像処理機能に特化したカスタムLSIであり、内部は、大きく分けて、色変換回路300と、ハーフトーン回路400と、ヘッド駆動用データ変換回路500とによって構成されている。色変換回路300は、RGB形式のデータをCMYK形式のデータに変換する回路である。ハーフトーン回路400は、CMYK形式のデータに対してハーフトーン処理を施す回路である。また、ヘッド駆動用データ変換回路500は、ハーフトーン処理のなされたデータを、インクヘッド211を駆動するためのデータに変換するための回路である。なお、色変換回路300は、本発明の「判断部」に相当し、ハーフトーン回路400は、本発明の「非エッジ処理部」と「第1のハーフトーン処理部」と「第2のハーフトーン処理部」に相当する。   The image processing unit 155 is a custom LSI specializing in image processing functions related to printing, and the interior is roughly divided into a color conversion circuit 300, a halftone circuit 400, and a head drive data conversion circuit 500. ing. The color conversion circuit 300 is a circuit that converts RGB format data into CMYK format data. The halftone circuit 400 is a circuit that performs halftone processing on CMYK format data. The head driving data conversion circuit 500 is a circuit for converting the data subjected to the halftone process into data for driving the ink head 211. The color conversion circuit 300 corresponds to the “determination unit” of the present invention, and the halftone circuit 400 corresponds to the “non-edge processing unit”, “first halftone processing unit”, and “second half” of the present invention. It corresponds to a “tone processing unit”.

画像処理ユニット155は、画像処理に必要な種々の設定情報をセットするためのレジスタを備えている(図示せず)。印刷を行おうとする画像データの解像度や印刷媒体のサイズ、出力解像度のモードなど、コンピュータ900や操作パネル140によってユーザから設定された様々な設定情報は、CPU151によってこのレジスタに対して書き込まれる。画像処理ユニット155は、レジスタに書き込まれた設定情報に応じて種々の画像処理を行う。   The image processing unit 155 includes a register (not shown) for setting various setting information necessary for image processing. Various setting information set by the user by the computer 900 or the operation panel 140, such as the resolution of image data to be printed, the size of the print medium, and the output resolution mode, is written into this register by the CPU 151. The image processing unit 155 performs various image processing according to the setting information written in the register.

ヘッドコントロールユニット156は、画像処理ユニット155によって最終的に生成されたヘッド駆動用データをSDRAM152のヘッド駆動用データバッファHBから取得し、かかるヘッド駆動用データに基づき、紙送りモータ230とキャリッジモータ220を制御しつつ、各ノズルから適切なタイミングでインク滴を吐出する。こうすることで、印刷媒体S上の適切な位置に各色のドットが形成され、カラー印刷が行われる。   The head control unit 156 acquires the head driving data finally generated by the image processing unit 155 from the head driving data buffer HB of the SDRAM 152, and based on the head driving data, the paper feed motor 230 and the carriage motor 220 are acquired. Ink droplets are ejected from each nozzle at an appropriate timing. In this way, dots of each color are formed at appropriate positions on the print medium S, and color printing is performed.

C.画像処理ユニットの詳細な構成:
次に、画像処理ユニット155の詳細な構成について説明する。上述したように画像処理ユニット155は、色変換回路300とハーフトーン回路400とヘッド駆動用データ変換回路500とを備えているため、以下ではこれらの回路について順に説明する。
C. Detailed configuration of the image processing unit:
Next, a detailed configuration of the image processing unit 155 will be described. As described above, the image processing unit 155 includes the color conversion circuit 300, the halftone circuit 400, and the head driving data conversion circuit 500. Therefore, these circuits will be described in order below.

C−1.色変換回路:
図5は、色変換回路300の詳細な構成を示すブロック図である。この色変換回路300は、RGB形式で表された画像データ(以下、「RGB画像データ」と呼ぶ)をCMYK形式の画像データ(以下、「CMYK画像データ」と呼ぶ)に変換する機能や、CMYK画像データに対して画質を向上させるための種々の補正を行う機能、入力したRGB画像データから白黒エッジ部分を抽出する機能等を有している。
C-1. Color conversion circuit:
FIG. 5 is a block diagram showing a detailed configuration of the color conversion circuit 300. The color conversion circuit 300 has a function of converting image data expressed in RGB format (hereinafter referred to as “RGB image data”) into image data in CMYK format (hereinafter referred to as “CMYK image data”), and CMYK. The image data has a function of performing various corrections for improving the image quality, a function of extracting a monochrome edge portion from the input RGB image data, and the like.

色変換回路300は、図示するように、ライン入力ユニット310と、白黒エッジ処理ユニット320と、色変換ユニット330と、インク量補正ユニット340と、印刷縞抑制ユニット350と、ビット減縮ユニット360と、透明インク後処理ユニット370と、ブロック内平滑化ユニット380とを備えている。以下、図の上段に位置するこれらのユニットをまとめてメインユニットと呼ぶ。   As shown in the figure, the color conversion circuit 300 includes a line input unit 310, a monochrome edge processing unit 320, a color conversion unit 330, an ink amount correction unit 340, a print fringe suppression unit 350, a bit reduction unit 360, A transparent ink post-processing unit 370 and an in-block smoothing unit 380 are provided. Hereinafter, these units located in the upper part of the figure are collectively referred to as a main unit.

メインユニットは、データ線(data)、リクエスト線(req)、アクノリッジ線(ack)の3種類の信号線によって上述した順に直列に接続されている。各ユニットは、これらの信号線を用いてreq信号とack信号とをやりとりすることで、データの受け渡しを行っている。詳しくは、データを送信する側のユニットは、受信側のユニットに対してデータを送信すると、データを送信したことを知らせるreq信号を送信する。受信側は、req信号を受信すると、データが送信されてきていることがわかるので、データの読み込み処理を開始し、データを受信していることを示すack信号を返信する。そして、受信側のユニットが、読み込み処理を完了してack信号を元に戻すと、送信側はデータが確実に受信されたことが確認できる。そして、送信側のユニットは、req信号を元に戻し、次のデータの送信に移行する。   The main unit is connected in series in the order described above by three types of signal lines: a data line (data), a request line (req), and an acknowledge line (ack). Each unit exchanges data by exchanging a req signal and an ack signal using these signal lines. Specifically, when the data transmitting unit transmits data to the receiving unit, it transmits a req signal notifying that the data has been transmitted. When the receiving side receives the req signal, it knows that the data has been transmitted, so it starts the data reading process and returns an ack signal indicating that the data is being received. When the receiving unit completes the reading process and restores the ack signal, the transmitting side can confirm that the data has been reliably received. Then, the transmission-side unit returns the req signal to the original, and shifts to transmission of the next data.

色変換回路300には、色変換ユニット330からブロック内平滑化ユニット380までのメインユニットに対応するように、第1パスユニット390aから第6パスユニット390fまでの計6つのパスユニット390a〜390fが直列に設けられている。これらのパスユニット390a〜390fは、白黒エッジ処理ユニット320から出力されたデータを、後述するハーフトーン回路400に伝達すると共に、色変換ユニット330から出力される種々の情報をブロック内平滑化ユニット380まで伝達するために設けられたユニットである。   The color conversion circuit 300 includes a total of six pass units 390a to 390f from the first pass unit 390a to the sixth pass unit 390f so as to correspond to the main units from the color conversion unit 330 to the in-block smoothing unit 380. It is provided in series. These pass units 390a to 390f transmit the data output from the monochrome edge processing unit 320 to the halftone circuit 400 described later, and also output various information output from the color conversion unit 330 to the in-block smoothing unit 380. It is a unit provided to transmit up to.

各パスユニット390a〜390fは、そのパスユニットに対応して設けられたメインユニットが前段のメインユニットに送信するack信号を分岐して入力すると、前段のパスユニットからデータを取り込む。そして、対応して設けられたメインユニットが後段のメインユニットから受信したack信号を分岐して入力すると、後段のパスユニットに対してデータを転送する。つまり、メインユニットにデータが伝達するのと同期して、パスユニット390a〜390fにもデータが順次伝達していくことになる。このような構成によれば、パスユニットを転送されている種々のデータを、対応するメインユニットに容易に取り込むことができ、回路の拡張性を高めることができる。また、取り扱うデータの容量が増加し、メインユニット間のバス幅が不足した場合にも、パスユニットを利用することでより多くのデータを扱うことが可能になる。   When each of the pass units 390a to 390f branches and inputs an ack signal transmitted from the main unit provided corresponding to the pass unit to the main unit in the previous stage, the path units 390a to 390f take in data from the previous pass unit. Then, when the main unit provided correspondingly branches and inputs the ack signal received from the subsequent main unit, the data is transferred to the subsequent pass unit. That is, data is sequentially transmitted to the pass units 390a to 390f in synchronization with the data being transmitted to the main unit. According to such a configuration, various data transferred through the pass unit can be easily taken into the corresponding main unit, and the expandability of the circuit can be improved. Further, even when the volume of data to be handled increases and the bus width between the main units is insufficient, more data can be handled by using the path unit.

図6は、パスユニット390a〜390fの内部構成を示す説明図である。図示するようにパスユニット390a〜390fは、8ビット16段のFIFOメモリとして構成されている。このFIFOメモリには、前段のパスユニットから転送された8ビットのデータが順次蓄積される。そして、後段のパスユニットに対して、蓄積された順序が古い順にデータが出力される。この8ビットのデータは、5ビットの白黒エッジデータと2ビットのエッジデータと1ビットのノイズデータとから構成される。   FIG. 6 is an explanatory diagram showing the internal configuration of the pass units 390a to 390f. As shown in the drawing, the path units 390a to 390f are configured as 8-bit 16-stage FIFO memories. In this FIFO memory, 8-bit data transferred from the previous pass unit is sequentially stored. Then, data is output to the subsequent pass unit in the order in which the accumulated order is old. The 8-bit data includes 5-bit monochrome edge data, 2-bit edge data, and 1-bit noise data.

(C−1−1)ライン入力ユニット:
ここで、説明を図5に戻し、メインユニットを構成する各ユニットの詳細について説明する。
ライン入力ユニット310は、USBインタフェース130やスキャナ110、メモリカードスロット120から720dpi×720dpiの解像度を有するRGB画像データを入力し、入力したRGB画像データをラインバッファLBに蓄積する。そして、このラインバッファLBからRGB画像データを2ラインずつ読み込み、読み込んだ2ライン分のデータを白黒エッジ処理ユニット320に転送する。なお、ライン入力ユニット310は、入力したRGB画像データの解像度が360dpi×360dpiの時に、1ラインずつ画像データを転送する機能も備えている。
(C-1-1) Line input unit:
Here, the description returns to FIG. 5, and details of each unit constituting the main unit will be described.
The line input unit 310 inputs RGB image data having a resolution of 720 dpi × 720 dpi from the USB interface 130, the scanner 110, and the memory card slot 120, and accumulates the input RGB image data in the line buffer LB. Then, the RGB image data is read from the line buffer LB two lines at a time, and the read two lines of data are transferred to the monochrome edge processing unit 320. The line input unit 310 also has a function of transferring image data line by line when the resolution of the input RGB image data is 360 dpi × 360 dpi.

(C−1−2)白黒エッジ処理ユニット:
図7は、図5に示した白黒エッジ処理ユニット320の内部構成を示す説明図である。図示するように、白黒エッジ処理ユニット320は、ライン入力ユニット310に接続された白黒エッジ判定回路321と、白黒エッジ判定回路321の出力を受けて階調値の平均化処理を行う平均化回路322と、白黒エッジ判定回路321の出力を受けて、白黒エッジ部分のエンコードを行う白黒エッジエンコード回路323と、ライン入力ユニット310と平均化回路322からの出力を受けて、色変換ユニット330に出力するデータの選択を行うセレクタ回路324とを備えている。
(C-1-2) Monochrome edge processing unit:
FIG. 7 is an explanatory diagram showing the internal configuration of the monochrome edge processing unit 320 shown in FIG. As illustrated, the monochrome edge processing unit 320 includes a monochrome edge determination circuit 321 connected to the line input unit 310, and an averaging circuit 322 that receives the output of the monochrome edge determination circuit 321 and performs gradation value averaging processing. In response to the output from the monochrome edge determination circuit 321, the output from the monochrome edge encoding circuit 323 that encodes the monochrome edge portion, the line input unit 310, and the averaging circuit 322 is received and output to the color conversion unit 330. And a selector circuit 324 for selecting data.

(C−1−2−1)白黒エッジ判定回路:
白黒エッジ判定回路321は、入力した画素が白黒エッジに該当するか否かを判定する回路である。具体的には、白黒エッジ判定回路321は、ライン入力ユニット310から入力した1ライン目と2ライン目の画像データから、2×2個の画素(図中のA,B,C,D)を順次抽出し、この4つの画素が白黒エッジパターンであるか否かを判別する。白黒エッジパターンとは、4つの画素が、白(RGB=(255,255,255))と黒(RGB=(0,0,0))のみの色で構成されているパターンのうち、全画素白および全画素黒のパターンを除いたパターンのことをいう。白黒エッジ判定回路321は、抽出した4つの画素が白黒エッジパターンであれば、白黒エッジ判定フラグに「1」をセットし、白黒エッジパターンでなければ、白黒エッジ判定フラグに「0」をセットする。白黒エッジ判定回路321は、白黒エッジパターンの判別が終了すると、判定対象となった4つの画素のRGBデータを、平均化回路322と白黒エッジエンコード回路323との両者に出力する。このとき、白黒エッジエンコード回路323に対しては、上述した白黒エッジ判定フラグの値も出力する。
(C-1-2-1) Monochrome edge determination circuit:
The monochrome edge determination circuit 321 is a circuit that determines whether or not an input pixel corresponds to a monochrome edge. Specifically, the monochrome edge determination circuit 321 calculates 2 × 2 pixels (A, B, C, and D in the figure) from the image data of the first line and the second line input from the line input unit 310. Extraction is performed sequentially to determine whether or not these four pixels are monochrome edge patterns. A monochrome edge pattern is a pattern in which four pixels are composed of only white (RGB = (255, 255, 255)) and black (RGB = (0, 0, 0)). A pattern excluding a white pattern and a black pattern for all pixels. The monochrome edge determination circuit 321 sets “1” to the monochrome edge determination flag if the extracted four pixels are the monochrome edge pattern, and sets “0” to the monochrome edge determination flag if it is not the monochrome edge pattern. . When the black and white edge pattern determination is completed, the black and white edge determination circuit 321 outputs the RGB data of the four pixels to be determined to both the averaging circuit 322 and the black and white edge encoding circuit 323. At this time, the value of the above-described monochrome edge determination flag is also output to the monochrome edge encoding circuit 323.

(C−1−2−2)白黒エッジエンコード回路:
白黒エッジエンコード回路323は、白黒エッジパターンのデータを二値化して、5ビットのデータにエンコードする回路である。具体的には、白黒エッジ判定回路321から入力した白黒エッジ判定フラグに「1」がセットされていれば、白黒エッジ判定回路321から転送された4つの画素のRGBデータについて、白黒エッジテーブルETを参照してデータ変換を行い、5ビットの白黒エッジデータを生成する。
(C-1-2-2) Monochrome edge encoding circuit:
The monochrome edge encoding circuit 323 is a circuit that binarizes monochrome edge pattern data and encodes it into 5-bit data. Specifically, if the monochrome edge determination flag input from the monochrome edge determination circuit 321 is set to “1”, the monochrome edge table ET is stored for the RGB data of the four pixels transferred from the monochrome edge determination circuit 321. Data conversion is performed with reference to generate 5-bit monochrome edge data.

図8は、白黒エッジテーブルETの一例を示す説明図である。図示するように、白黒エッジテーブルETには、4つの画素のパターンに応じて、4ビットのエンコードデータが対応づけられて記憶されている。この白黒エッジテーブルETは、図4に示したようにSDRAM152に記憶されている。図の上部に示すように、4つの画素の左上の画素をA、右上をB、左下をC、右下をDとすると、例えば、白黒エッジエンコード回路323は、4つの画素のRGBデータが、(A,B,C,D)=(0,0,0,255)であれば、「0001」という4ビットデータに変換し、(A,B,C,D)=(0,0,255,0)であれば、「0010」という4ビットデータに変換する。なお、この白黒エッジテーブルETは、比較的、データ容量が少量であるため、白黒エッジエンコード回路323内に回路として組み込まれていてもよい。また、白黒エッジテーブルETを用いなくとも、各画素の階調値を255で除算し、その商の部分を結合してエンコードデータを動的に生成してもよい。   FIG. 8 is an explanatory diagram showing an example of the black and white edge table ET. As shown in the figure, the monochrome edge table ET stores 4-bit encoded data in association with the pattern of four pixels. This monochrome edge table ET is stored in the SDRAM 152 as shown in FIG. As shown in the upper part of the figure, assuming that the upper left pixel of the four pixels is A, the upper right is B, the lower left is C, and the lower right is D, for example, the monochrome edge encoding circuit 323 has four pixels of RGB data, If (A, B, C, D) = (0, 0, 0, 255), it is converted into 4-bit data “0001”, and (A, B, C, D) = (0, 0, 255). , 0), it is converted into 4-bit data “0010”. The black and white edge table ET has a relatively small data capacity and may be incorporated as a circuit in the black and white edge encoding circuit 323. Even if the monochrome edge table ET is not used, the gradation value of each pixel may be divided by 255 and the quotient portion may be combined to dynamically generate encoded data.

説明を図7に戻す。一方、白黒エッジエンコード回路323は、白黒エッジ判定回路321から受信した白黒エッジ判定フラグに「0」がセットされていれば、白黒エッジテーブルETとは無関係に、白黒エッジ判定回路321から転送された4つの画素のRGBデータを、「0000」という4ビットデータにエンコードする。   Returning to FIG. On the other hand, if the monochrome edge determination flag received from the monochrome edge determination circuit 321 is set to “0”, the monochrome edge encoding circuit 323 is transferred from the monochrome edge determination circuit 321 regardless of the monochrome edge table ET. The RGB data of the four pixels is encoded into 4-bit data “0000”.

白黒エッジエンコード回路323は、以上のように、4つの画素のRGBデータを4ビットのデータに変換すると、エンコードした結果の4ビットデータの最上位ビットに、白黒エッジ判定フラグの内容を付加し、最終的に5ビットの白黒エッジデータを生成する。例えば、4つの画素をエンコードした結果が「0001」であれば、最終的に得られるデータは、「10001」となる。なお、4つの画素が白黒エッジパターンでない場合には、最終的に得られるデータは、「00000」となる。この「00000」となるデータは、白黒エッジデータとは区別してダミーデータと呼ぶ場合がある。   As described above, the monochrome edge encoding circuit 323 converts the RGB data of the four pixels into 4-bit data, adds the content of the monochrome edge determination flag to the most significant bit of the encoded 4-bit data, Finally, 5-bit monochrome edge data is generated. For example, if the result of encoding four pixels is “0001”, the finally obtained data is “10001”. If the four pixels are not monochrome edge patterns, the finally obtained data is “00000”. The data “00000” may be called dummy data in distinction from the monochrome edge data.

白黒エッジエンコード回路323は、こうしてエンコードされた5ビットの白黒エッジデータを、第1パスユニット390aに転送する。そのため、パスユニット390a〜390fには、処理対象の4つの画素が白黒エッジパターンである場合には、白黒エッジデータが順次転送され、白黒エッジパターンでない場合には、ダミーデータが順次転送されることになる。   The monochrome edge encoding circuit 323 transfers the 5-bit monochrome edge data thus encoded to the first pass unit 390a. Therefore, when the four pixels to be processed are monochrome edge patterns, monochrome edge data is sequentially transferred to the pass units 390a to 390f, and when the pixels to be processed are not monochrome edge patterns, dummy data is sequentially transferred. become.

(C−1−2−3)平均化回路:
次に、平均化回路322について説明する。平均化回路322は、4つの画素の階調値を平均化して解像度を低減する回路である。つまり、平均化回路322は、白黒エッジ判定回路321から入力した4つの画素のRGBデータに対して、4つの画素の階調値を平均化することで、720dpi×720dpiの画像データを360dpi×360dpi相当のデータに変換する。なお、白黒エッジ判定回路321から出力された4つの画素のRGBデータは、白黒エッジパターンに該当するか否かにかかわらず、平均化回路322にも入力されため、結果的に、白黒エッジパターンに該当する4つの画素も平均化されることになる。
(C-1-2-3) Averaging circuit:
Next, the averaging circuit 322 will be described. The averaging circuit 322 is a circuit that averages the gradation values of four pixels and reduces the resolution. That is, the averaging circuit 322 averages the gradation values of the four pixels with respect to the RGB data of the four pixels input from the black and white edge determination circuit 321, thereby converting the image data of 720 dpi × 720 dpi into 360 dpi × 360 dpi. Convert to equivalent data. Note that the RGB data of the four pixels output from the monochrome edge determination circuit 321 is also input to the averaging circuit 322 regardless of whether or not it corresponds to the monochrome edge pattern. The corresponding four pixels are also averaged.

4つの画素の階調値の平均化は、次の演算によって行うことができる。すなわち、4つの画素A,B,C,Dの階調値をそれぞれ、
A=(Ra,Ga,Ba)
B=(Rb,Gb,Bb)
C=(Rc,Gc,Bc)
D=(Rd,Gd,Bd)
とすると、変換後の1画素の階調値(R,G,B)は、
R=(Ra+Rb+Rc+Rd)/4
G=(Ga+Gb+Gc+Gd)/4
B=(Ba+Bb+Bc+Bd)/4
となる。もちろん、4で除する際には、2ビット分、値を右方向へビットシフトすることで容易に演算を行うことができる。こうして平均化されたRGBデータは、360dpi×360dpiの解像度に変換された1×1の新たな画素の階調値としてセレクタ回路324に出力される。
The averaging of the gradation values of the four pixels can be performed by the following calculation. That is, the gradation values of the four pixels A, B, C, and D are respectively set.
A = (Ra, Ga, Ba)
B = (Rb, Gb, Bb)
C = (Rc, Gc, Bc)
D = (Rd, Gd, Bd)
Then, the gradation value (R, G, B) of one pixel after conversion is
R = (Ra + Rb + Rc + Rd) / 4
G = (Ga + Gb + Gc + Gd) / 4
B = (Ba + Bb + Bc + Bd) / 4
It becomes. Of course, when dividing by 4, the calculation can be easily performed by bit-shifting the value to the right by 2 bits. The averaged RGB data is output to the selector circuit 324 as the gradation value of a new 1 × 1 pixel converted to a resolution of 360 dpi × 360 dpi.

(C−1−2−4)セレクタ回路:
セレクタ回路324は、平均化回路322から出力された360dpi×360dpiのRGBデータと、ライン入力ユニット310から出力されたRGBデータとを入力する。そして、画像処理ユニット155が入力した原画像データの解像度が720dpi×720dpiの場合には、平均化回路322から入力したRGBデータを選択して、これを後段の色変換ユニット330に転送する。一方、画像処理ユニット155が入力した原画像データの解像度が360dpi×360dpiの場合には、ライン入力ユニット310から直接入力したRGBデータを選択して、これを後段の色変換ユニット330に転送する。つまり、印刷対象の画像データの入力解像度が低解像度(360dpi×360dpi)の場合には、白黒エッジ部分について高解像度(720dpi×720dpi)で処理することはできないから、白黒エッジ処理ユニット320は、ライン入力ユニット310から入力したRGBデータをスルーして出力するのである。
(C-1-2-4) Selector circuit:
The selector circuit 324 receives the 360 dpi × 360 dpi RGB data output from the averaging circuit 322 and the RGB data output from the line input unit 310. When the resolution of the original image data input by the image processing unit 155 is 720 dpi × 720 dpi, the RGB data input from the averaging circuit 322 is selected and transferred to the subsequent color conversion unit 330. On the other hand, when the resolution of the original image data input by the image processing unit 155 is 360 dpi × 360 dpi, the RGB data directly input from the line input unit 310 is selected and transferred to the subsequent color conversion unit 330. That is, when the input resolution of the image data to be printed is low resolution (360 dpi × 360 dpi), the black and white edge portion cannot be processed at high resolution (720 dpi × 720 dpi). The RGB data input from the input unit 310 is output through.

以上で説明したように、白黒エッジ処理ユニット320は、ライン入力ユニット310から入力した画像データが、白黒エッジパターンからなるデータであれば、第1パスユニット390aに対して720dpi×720dpiの解像度を保ちつつ5ビット化した白黒エッジデータを出力し、更に、色変換ユニット330に対して、4画素の階調値を平均化した360dpi×360dpiのRGBデータを出力する。一方、ライン入力ユニット310から入力した画像データが、白黒エッジパターン以外の通常のデータであれば、第1パスユニットに対しては、5ビットのダミーデータを出力し、更に、色変換ユニット330に対して4画素の階調値を平均化した360dpi×360dpiのRGBデータを出力することになる。   As described above, the monochrome edge processing unit 320 maintains a resolution of 720 dpi × 720 dpi with respect to the first pass unit 390a if the image data input from the line input unit 310 is data having a monochrome edge pattern. The monochrome edge data converted to 5 bits is output, and further, the RGB data of 360 dpi × 360 dpi obtained by averaging the gradation values of the four pixels is output to the color conversion unit 330. On the other hand, if the image data input from the line input unit 310 is normal data other than the monochrome edge pattern, 5-bit dummy data is output to the first pass unit, and the color conversion unit 330 is further output. On the other hand, RGB data of 360 dpi × 360 dpi obtained by averaging the gradation values of four pixels is output.

(C−1−3)色変換ユニット:
図9は、図5に示した色変換ユニット330の内部構成を示す説明図である。色変換ユニット330は、白黒エッジ処理ユニット320から入力したRGBデータに対して色変換を施し、CMYKデータを生成するユニットである。図示するように、色変換ユニット330は、白黒エッジ処理ユニット320と接続され、RGB形式のデータをCMYK形式のデータに変換する変換回路331と、白黒エッジ処理ユニット320と接続され、2画素間のエッジを判定する標準エッジ判定回路332と、1ビットのノイズを発生するノイズ発生回路333と、変換回路331と標準エッジ判定回路332とノイズ発生回路333とに接続され、これらの回路から出力されたデータを用いて階調値の平滑化を行うスムージング回路334とを備えている。
(C-1-3) Color conversion unit:
FIG. 9 is an explanatory diagram showing an internal configuration of the color conversion unit 330 shown in FIG. The color conversion unit 330 is a unit that performs color conversion on the RGB data input from the monochrome edge processing unit 320 and generates CMYK data. As shown in the figure, the color conversion unit 330 is connected to the monochrome edge processing unit 320, and is connected to the conversion circuit 331 for converting RGB format data into CMYK format data, and the monochrome edge processing unit 320, and is connected between two pixels. A standard edge determination circuit 332 that determines an edge, a noise generation circuit 333 that generates 1-bit noise, a conversion circuit 331, a standard edge determination circuit 332, and a noise generation circuit 333 are connected to and output from these circuits. And a smoothing circuit 334 that smoothes gradation values using data.

(C−1−3−1)変換回路:
変換回路331は、SDRAM152に記憶された色変換テーブルLUTを参照して、白黒エッジ処理ユニット320から入力したRGBデータをCMYKデータに変換する回路である。色変換テーブルLUTには、RGB形式で表される色と、C(シアン),M(マゼンタ),Y(イエロ),K(黒),lc(ライトシアン),lm(ライトマゼンタ),dy(ダークイエロ),cr(透明インク)の計8色の組み合わせによって表される色とが、対応づけられて記録されている。変換回路331は、白黒エッジ処理ユニット320から入力したRGBデータに対応するCMYKデータを、この色変換テーブルLUTを参照して導き出すことで、色変換を行うことができる。
(C-1-3-1) Conversion circuit:
The conversion circuit 331 refers to the color conversion table LUT stored in the SDRAM 152 and converts the RGB data input from the monochrome edge processing unit 320 into CMYK data. The color conversion table LUT includes colors represented in RGB format, C (cyan), M (magenta), Y (yellow), K (black), lc (light cyan), lm (light magenta), and dy (dark yellow). ), Cr (transparent ink), and colors represented by a combination of a total of eight colors are recorded in association with each other. The conversion circuit 331 can perform color conversion by deriving CMYK data corresponding to RGB data input from the monochrome edge processing unit 320 with reference to the color conversion table LUT.

(C−1−3−2)標準エッジ判定回路:
標準エッジ判定回路332は、白黒エッジ処理ユニット320から2画素分のRGBデータを入力すると、これらの画素間の水平方向への勾配(エッジ)を求め、その強度を、0から2までの度合いで表し、2ビットの標準エッジデータを生成する。かかる標準エッジデータは、白黒エッジデータとは全く異なるデータである。
(C-1-3-2) Standard edge determination circuit:
When the standard edge determination circuit 332 receives RGB data for two pixels from the monochrome edge processing unit 320, the standard edge determination circuit 332 obtains a horizontal gradient (edge) between these pixels, and the intensity is in a degree from 0 to 2. 2 bits of standard edge data is generated. Such standard edge data is completely different from the monochrome edge data.

エッジの判定手順は、概ね次の通りである。まず、標準エッジ判定回路332は、水平方向の2つの画素のRGB階調値の差分Rdiff,Gdiff,Bdiffを、次のように計算する。なお、エッジを判定する対象画素のRGB値をR,G,Bと表し、その左側に位置する画素のRGB値をRp,Gp,Bpと表す。
Rdiff=|R−Rp|
Gdiff=|G−Gp|
Bdiff=|BーGp|
The edge determination procedure is generally as follows. First, the standard edge determination circuit 332 calculates the differences Rdiff, Gdiff, and Bdiff between the RGB gradation values of two pixels in the horizontal direction as follows. The RGB values of the target pixel for determining the edge are represented as R, G, and B, and the RGB values of the pixel located on the left side thereof are represented as Rp, Gp, and Bp.
Rdiff = | R−Rp |
Gdiff = | G-Gp |
Bdiff = | B-Gp |

次に、以下の式によって、RGB毎に重み付けを行う。なお、TR、TG、TBは、所定の閾値であり、例えば、TR=10、TG=8、TB=14とすることができる。
Rdiff=Rdiff−(TR−TG)
Gdiff=Gdiff
Bdiff=Bdiff−(TB−TG)
Next, weighting is performed for each RGB by the following formula. Note that TR, TG, and TB are predetermined threshold values, for example, TR = 10, TG = 8, and TB = 14.
Rdiff = Rdiff− (TR-TG)
Gdiff = Gdiff
Bdiff = Bdiff− (TB−TG)

そして、Rdiff、Gdiff、Bdiffのうち、最大値となる値を、最大差分DiffMaxとして次のように選択する。
DiffMax=max(Rdiff,Gdiff,Bdiff)
Then, the maximum value among Rdiff, Gdiff, and Bdiff is selected as the maximum difference DiffMax as follows.
DiffMax = max (Rdiff, Gdiff, Bdiff)

最後に、最大差分DiffMaxが、閾値TGよりも小さければ、エッジなしと判定し、標準エッジデータを「0」とする。また、最大差分DiffMaxが、閾値TGよりも大きく、閾値TGに所定のオフセット値(例えば8)を加えた値よりも小さければ、弱いエッジがあると判定し、標準エッジデータを「1」とする。また、最大差分DiffMaxが、閾値TGに所定のオフセット値をよりも大きければ、強いエッジありと判定し、標準エッジデータを「2」とする。なお、白黒エッジ処理ユニット320から入力した白黒エッジ判定フラグの状態が、「1」であれば、最大差分DiffMaxの値に関係なく、その画素の標準エッジデータは、最も強いエッジを表す「2」とする。標準エッジ判定回路332は、このようにして判定された標準エッジデータをスムージング回路334と第2パスユニット390bとに対して出力する。第2パスユニット390bに出力された標準エッジデータは、後述するブロック内平滑化ユニット380まで転送されることになる。   Finally, if the maximum difference DiffMax is smaller than the threshold TG, it is determined that there is no edge, and the standard edge data is set to “0”. If the maximum difference DiffMax is larger than the threshold TG and smaller than a value obtained by adding a predetermined offset value (for example, 8) to the threshold TG, it is determined that there is a weak edge, and the standard edge data is set to “1”. . If the maximum difference DiffMax is larger than the predetermined offset value in the threshold TG, it is determined that there is a strong edge, and the standard edge data is set to “2”. If the state of the monochrome edge determination flag input from the monochrome edge processing unit 320 is “1”, the standard edge data of the pixel is “2” representing the strongest edge regardless of the value of the maximum difference DiffMax. And The standard edge determination circuit 332 outputs the standard edge data determined in this way to the smoothing circuit 334 and the second path unit 390b. The standard edge data output to the second pass unit 390b is transferred to an intra-block smoothing unit 380 described later.

(C−1−3−3)ノイズ発生回路:
ノイズ発生回路333は、「0」か「1」かの値を表す1ビットのノイズデータ(乱数)をランダムに発生する回路である。ノイズ発生回路333は、異なる2つのノイズデータを生成し、一方をスムージング回路334に出力し、他方を、第2パスユニット390bに出力する。第2パスユニット390bに出力されたノイズデータは、後述するブロック内平滑化ユニット380まで転送されることになる。
(C-1-3-3) Noise generation circuit:
The noise generation circuit 333 is a circuit that randomly generates 1-bit noise data (random number) representing a value of “0” or “1”. The noise generation circuit 333 generates two different noise data, outputs one to the smoothing circuit 334, and outputs the other to the second path unit 390b. The noise data output to the second pass unit 390b is transferred to an intra-block smoothing unit 380 described later.

(C−1−3−4)スムージング回路:
スムージング回路334は、標準エッジ判定回路332から入力した標準エッジデータと、ノイズ発生回路333から入力したノイズデータとに基づき、変換回路331から出力されたCMYKデータに対して階調値の平滑化を行う。平滑化の手順は、概ね次の通りである。
(C-1-3-4) Smoothing circuit:
The smoothing circuit 334 smoothes gradation values for the CMYK data output from the conversion circuit 331 based on the standard edge data input from the standard edge determination circuit 332 and the noise data input from the noise generation circuit 333. Do. The smoothing procedure is generally as follows.

まず、スムージング回路334は、標準エッジデータの値を判定し、標準エッジデータの値が、0または1であれば、以下の演算により、水平方向の2画素についてCMYK各色の平滑化を行う。なお、下記演算式において、Cは、スムージング対象の画素の階調値を表し、Cpは、スムージング対象の画素の左側に位置する画素の階調値を表す。また、SP0およびSP1は、所定の重み付けパラメータ(例えば、SP0=4,SP1=2)を表し、Nは、ノイズデータの値(0または1)を表す。   First, the smoothing circuit 334 determines the value of the standard edge data. If the value of the standard edge data is 0 or 1, the smoothing circuit 334 smoothes CMYK colors for two horizontal pixels by the following calculation. In the following arithmetic expression, C represents a gradation value of a pixel to be smoothed, and Cp represents a gradation value of a pixel located on the left side of the pixel to be smoothed. SP0 and SP1 represent predetermined weighting parameters (for example, SP0 = 4, SP1 = 2), and N represents the value of noise data (0 or 1).

(1)標準エッジデータが0の場合:
C=(C+Cp×(SP0−1)+N×(SP0−1))/SP0
(2)標準エッジデータが1の場合:
C=(C+Cp×(SP1−1)+N×(SP1−1))/SP1
(1) When standard edge data is 0:
C = (C + Cp × (SP0-1) + N × (SP0-1)) / SP0
(2) When the standard edge data is 1:
C = (C + Cp × (SP1-1) + N × (SP1-1)) / SP1

一方、スムージング回路334は、標準エッジデータの値が2であれば、その画素が強いエッジを有していると判断し、平滑化を行わない。こうすることにより、出力画像の明瞭度が低下することを抑制することができる。スムージング回路334は、こうして平滑化処理を行ったCMYKデータをインク量補正ユニット340に出力する。   On the other hand, if the value of the standard edge data is 2, the smoothing circuit 334 determines that the pixel has a strong edge and does not perform smoothing. By doing so, it is possible to suppress a decrease in the clarity of the output image. The smoothing circuit 334 outputs the CMYK data thus smoothed to the ink amount correction unit 340.

(C−1−4)インク量補正ユニット:
説明を図5に戻す。インク量補正ユニット340は、色変換ユニット330から出力されたCMYKデータを入力し、かかるCMYKデータの階調値を補正することで、各ノズルから吐出されるインク量の補正を行うためのユニットである。インクの種類毎に用意されたインクヘッド211内のノズル列は、製造誤差に起因してその内径やピエゾ素子の変形度が異なることがあり、同じ階調値でインクを吐出したとしても、吐出されるインクの量がノズル列毎に異なることがある。そのため、印刷装置100の製造工程において、各ノズル列から吐出されるインクの量が予め検査され、その量の相違を解消するための補正データがEEPROM154に記録されている。
(C-1-4) Ink amount correction unit:
Returning to FIG. The ink amount correction unit 340 is a unit for correcting the ink amount discharged from each nozzle by inputting the CMYK data output from the color conversion unit 330 and correcting the gradation value of the CMYK data. is there. The nozzle rows in the ink head 211 prepared for each type of ink may have different inner diameters and deformation degrees of the piezo elements due to manufacturing errors. Even if ink is ejected at the same gradation value, ejection The amount of ink applied may vary from nozzle row to nozzle row. Therefore, in the manufacturing process of the printing apparatus 100, the amount of ink ejected from each nozzle row is inspected in advance, and correction data for eliminating the difference in the amount is recorded in the EEPROM 154.

インク量補正ユニット340は、EEPROM154に記録された補正データを読み込み、かかる補正データに基づいて、CMYK形式の各色の階調値を補正する。例えば、シアンのノズル列から吐出されるインクの量が、他の色のノズル列から吐出されるインクの量よりも多ければ、シアンの階調値が他の色の階調値よりも低くなるようにその階調値が補正されることなる。こうすることで、各ノズル列から吐出されるインクの量を均一化することができる。   The ink amount correction unit 340 reads the correction data recorded in the EEPROM 154, and corrects the gradation value of each color in the CMYK format based on the correction data. For example, if the amount of ink ejected from the cyan nozzle row is larger than the amount of ink ejected from the nozzle row of other colors, the cyan tone value becomes lower than the tone values of other colors. Thus, the gradation value is corrected. By doing so, the amount of ink ejected from each nozzle row can be made uniform.

インク量補正ユニット340は、補正の精度を向上させるため、入力された8ビットのデータを内部で12ビットのデータに拡張した上で補正を行なう。つまり、通常256階調で表されるCMYKの階調値を4096階調まで拡張して補正を行う。12ビットへの拡張は、入力したCMYKデータを左に4ビット分だけビットシフトすることにより行うことができる。インク量補正ユニット340は、上述した補正を行うと、各色12ビットのCMYKデータを印刷縞抑制ユニット350に転送する。   The ink amount correction unit 340 performs correction after extending the input 8-bit data to 12-bit data internally in order to improve the correction accuracy. That is, the correction is performed by extending the CMYK gradation value normally expressed by 256 gradations to 4096 gradations. The extension to 12 bits can be performed by shifting the input CMYK data to the left by 4 bits. When the above-described correction is performed, the ink amount correction unit 340 transfers the 12-bit CMYK data of each color to the print fringe suppression unit 350.

(C−1−5)印刷縞抑制ユニット:
印刷縞抑制ユニット350は、インク量補正ユニット340から各色12ビットのCMYKデータの転送を受けると、かかるデータに対して、印刷縞を抑制するための補正を行う。インクヘッド211内のノズル列は、一定のピッチで副走査方向に配列されているが、全てのノズルから垂直にインクが吐出されるとは限らず、ノズルの製造誤差によってインクが傾いて吐出される場合がある。このような場合に印刷媒体に画像を印刷すると、この傾きによって、主走査方向に印刷縞が現れる場合がある。そのため、印刷装置100の製造工程において、各ノズルの傾きが検査され、その傾きを解消するための補正データが予めEEPROM154に記録されている。
(C-1-5) Print stripe suppression unit:
When receiving the transfer of 12-bit CMYK data of each color from the ink amount correction unit 340, the print fringe suppression unit 350 performs correction for suppressing the print fringes on the data. The nozzle rows in the ink head 211 are arranged in the sub-scanning direction at a constant pitch, but ink is not ejected vertically from all nozzles, and ink is inclined and ejected due to nozzle manufacturing errors. There is a case. When an image is printed on the printing medium in such a case, a print stripe may appear in the main scanning direction due to this inclination. Therefore, in the manufacturing process of the printing apparatus 100, the inclination of each nozzle is inspected, and correction data for eliminating the inclination is recorded in the EEPROM 154 in advance.

印刷縞抑制ユニット350は、EEPROM154に記録された補正データを読み込み、かかる補正データに基づいてCMYK形式の各色の階調値を補正する。例えば、現在入力したCMYKデータが、印刷縞が発生するラスタラインに属するデータであれば、階調値を高めることで、インクの吐出数が多くなるように補正を行う。また、ノズルの傾きによってドットが重なってしまうラスタラインに属するCMYKデータであれば、階調値を低減することで、インクの吐出数が少なくなるように補正を行う。こうすることで、印刷縞の発生を抑制することができる。なお、この印刷縞抑制ユニット350においても、補正の精度を向上させるため、12ビットに拡張されたCMYKデータに対して補正を行う。印刷縞抑制ユニット350は、上述した補正を行うと、各色12ビットのCMYKデータをビット減縮ユニット360に転送する。   The print fringe suppression unit 350 reads the correction data recorded in the EEPROM 154 and corrects the gradation value of each color in the CMYK format based on the correction data. For example, if the currently input CMYK data is data belonging to a raster line in which print stripes occur, correction is performed so that the number of ink ejections is increased by increasing the gradation value. Further, in the case of CMYK data belonging to a raster line in which dots overlap due to the tilt of the nozzle, correction is performed so that the number of ink ejections is reduced by reducing the gradation value. By doing so, it is possible to suppress the occurrence of printing stripes. Note that this print fringe suppression unit 350 also performs correction on CMYK data expanded to 12 bits in order to improve correction accuracy. When the above-described correction is performed, the print fringe suppression unit 350 transfers the 12-bit CMYK data of each color to the bit reduction unit 360.

なお、上述したインク量補正ユニット340および印刷縞抑制ユニット350は、それぞれEEPROM154から補正データを入力するものとしたが、補正データは、印刷装置100の電源投入時にEEPROM154からSDRAM152にロードして、SDRAM152から入力するものとしてもよい。こうすることにより、高速に補正を行うことができる。   The ink amount correction unit 340 and the print fringe suppression unit 350 described above each receive correction data from the EEPROM 154. However, the correction data is loaded from the EEPROM 154 to the SDRAM 152 when the printing apparatus 100 is turned on, and the SDRAM 152 It is good also as what inputs from. In this way, correction can be performed at high speed.

(C−1−6)ビット減縮ユニット:
ビット減縮ユニット360は、印刷縞抑制ユニット350から12ビットのCMYKデータを受信すると、データ量を削減するため、かかるデータを減縮して8ビットのデータに戻す。具体的には、12ビットのCMYKデータに対して4ビットのノイズを加算した後に、12ビット中の下位4ビットを切り落とすことで8ビットのデータを生成する。もちろん、12ビットのデータを4ビット分、右にビットシフトしてから上位4ビットを切り落とすものとしてもよい。上述のようにノイズを加算するものとすれば、単純に下位4ビットを切り落とす場合よりも、連続して同じデータが生成されることが抑制され、画質が低下してしまうことを抑制することができる。なお、本実施例では、前記ノイズは、ビット減縮ユニット360が内部にノイズ発生回路を備えることで生成するものとする。ただし、色変換ユニット330から転送されてきたノイズデータを第3パスユニット390cから分岐して入力してもよい。ビット減縮ユニット360は、こうして8ビットのデータにCMYKデータを変換すると、かかるデータを透明インク後処理ユニット370に転送する。
(C-1-6) Bit reduction unit:
When the bit reduction unit 360 receives the 12-bit CMYK data from the print fringe suppression unit 350, the bit reduction unit 360 reduces the data and returns it to 8-bit data in order to reduce the data amount. Specifically, after adding 4 bits of noise to 12 bits of CMYK data, 8 bits of data are generated by cutting off the lower 4 bits of 12 bits. Of course, 12 bits of data may be shifted to the right by 4 bits and then the upper 4 bits may be cut off. If noise is added as described above, it is possible to suppress the generation of the same data continuously and to prevent the image quality from being deteriorated, compared to the case where the lower 4 bits are simply cut off. it can. In this embodiment, the noise is generated when the bit reduction unit 360 includes a noise generation circuit inside. However, the noise data transferred from the color conversion unit 330 may be branched and input from the third pass unit 390c. When the bit reduction unit 360 thus converts the CMYK data into 8-bit data, the bit reduction unit 360 transfers the data to the transparent ink post-processing unit 370.

(C−1−7)透明インク後処理ユニット:
透明インク後処理ユニット370は、ビット減縮ユニット360から8ビットのCMYKデータを入力すると、かかるCMYKデータのうち、cr(透明インク)のデータについて、印刷媒体Sよりもはみ出す部分にインクが吐出されないように階調値を0とする補正を行う。画像処理ユニット155のレジスタには、印刷媒体Sのサイズ情報がCPU151によってセットされるため、かかるレジスタを参照することで、現在入力したCMYKデータのドット形成位置が印刷媒体Sの外に該当するか否かを判断することができる。
(C-1-7) Transparent ink post-processing unit:
When the transparent ink post-processing unit 370 receives 8-bit CMYK data from the bit reduction unit 360, the ink (cr) of the CMYK data is prevented from being ejected to a portion that protrudes beyond the print medium S. Correction for setting the gradation value to 0 is performed. Since the size information of the print medium S is set in the register of the image processing unit 155 by the CPU 151, whether the dot formation position of the currently input CMYK data falls outside the print medium S by referring to the register. It can be determined whether or not.

印刷装置100は、いわゆる縁なし印刷時には、印刷媒体Sよりも大きな印刷面に対してインクを吐出し、余分なインクを印刷媒体Sの外に捨てることで印刷媒体Sの全面に亘って印刷を行うが、透明インクは、顔料(あるいは染料)を含まない分、他のインクに比べて樹脂成分が多く含まれており、印刷媒体外にインクを捨てると、廃棄されたインクを吸収するための廃インク吸収体(スポンジ等)の表面に樹脂が固着して他のインクの吸収が妨げられるおそれがある。そのため、透明インク後処理ユニット370により、印刷媒体からはみ出す印刷領域について透明インクの階調値をゼロとすれば、このような現象を抑制することが可能になる。   During so-called borderless printing, the printing apparatus 100 ejects ink onto a printing surface larger than the printing medium S, and discards excess ink outside the printing medium S to perform printing over the entire surface of the printing medium S. Although transparent ink does not contain pigments (or dyes), it contains more resin components than other inks. If the ink is discarded outside the printing medium, it will absorb the discarded ink. There is a possibility that the resin adheres to the surface of the waste ink absorber (sponge etc.) and the absorption of other inks is hindered. For this reason, if the transparent ink post-processing unit 370 sets the gradation value of the transparent ink to zero in the print region that protrudes from the print medium, such a phenomenon can be suppressed.

(C−1−8)ブロック内平滑化ユニット:
ブロック内平滑化ユニット380は、透明インク後処理ユニット370から、隣接する2画素分のCMYKデータを入力し、更に、第5パスユニット390eを介して色変換ユニット330から出力された2ビットの標準エッジデータと1ビットのノイズデータとを入力する。そして、色変換ユニット330から出力された2ビットの標準エッジデータと1ビットのノイズデータとを利用して、透明インク後処理ユニット370から入力した2画素の階調値の平滑化を行う。平滑化は、2画素間の標準エッジデータが設定値(例えば0もしくは1)以下となる場合に、2画素のCMYKデータを加算し、更に、1ビットのノイズデータの値をこれに加算して、その加算値を2で除算することで行う。つまり、新たな階調値は、2画素とも同じ値となる。画素間でエッジの強度が低い場合には、後述する2×2モード時の順序値マトリクスに基づく1ブロック内のドットの配置の結果、印刷媒体上にドットが隣接して形成されてしまう場合があり、画質が低下するおそれがある。そのため、ハーフトーン処理を行う前に予め、エッジの強度の低い画素同士の階調値を平均化して同じ値とすることで、ドットが隣接して形成されないようにしている。この結果、画質を向上させることができる。なお、本実施例では、色変換ユニット330から出力された標準エッジデータとノイズデータとを利用するものとしたため、ブロック内平滑化ユニット380でこれらのデータを生成する必要がなく、重複した処理を省略することができる。
(C-1-8) In-block smoothing unit:
The in-block smoothing unit 380 receives the CMYK data for two adjacent pixels from the transparent ink post-processing unit 370, and further outputs a 2-bit standard output from the color conversion unit 330 via the fifth pass unit 390e. Edge data and 1-bit noise data are input. Then, using the 2-bit standard edge data and 1-bit noise data output from the color conversion unit 330, the gradation values of the two pixels input from the transparent ink post-processing unit 370 are smoothed. Smoothing is performed by adding CMYK data of 2 pixels when the standard edge data between 2 pixels is equal to or less than a set value (for example, 0 or 1), and further adding 1-bit noise data value thereto. The added value is divided by two. That is, the new gradation value is the same value for both pixels. When the edge strength is low between pixels, dots may be formed adjacent to each other on the print medium as a result of the arrangement of dots within one block based on the order value matrix in the 2 × 2 mode described later. Yes, the image quality may be degraded. For this reason, the dots are not formed adjacent to each other by averaging the gradation values of pixels having low edge strength before the halftone process. As a result, the image quality can be improved. In this embodiment, since the standard edge data and noise data output from the color conversion unit 330 are used, it is not necessary to generate these data in the in-block smoothing unit 380, and duplicate processing is performed. Can be omitted.

以上で色変換回路300の詳細な構成について説明した。かかる色変換回路300によれば、ハーフトーン回路400に対して、360dpi×360dpi相当の解像度を有する各色8ビットのCMYKデータと、720dpi×720dpi相当の解像度を有する5ビットの白黒エッジデータとが出力されることになる。   The detailed configuration of the color conversion circuit 300 has been described above. According to the color conversion circuit 300, 8-bit CMYK data having a resolution equivalent to 360 dpi × 360 dpi and 5-bit monochrome edge data having a resolution equivalent to 720 dpi × 720 dpi are output to the halftone circuit 400. Will be.

C−2.ハーフトーン回路:
図10は、ハーフトーン回路400とヘッド駆動用データ変換回路500の詳細な構成を示すブロック図である。以下では、まず、ハーフトーン回路400について説明する。ハーフトーン回路400は、0から255までの階調値で色の濃淡が表現されたCMYKデータを、印刷媒体上に形成すべきドットの粗密を表すドット形成用データに変換する回路である。印刷装置100は、基本的に、印刷媒体Sに対してインクを打つか打たないかのいずれかの状態をとり得るにすぎず、インクの吐出により形成されるドットの分布によって色の濃淡を表す必要があるからである。ハーフトーン処理の一般的な手法としては、誤差拡散法や組織的ディザ法などの周知の手法が存在するが、本実施例では組織的ディザ法を発展させた独自の手法によりハーフトーン処理を行う。
C-2. Halftone circuit:
FIG. 10 is a block diagram showing a detailed configuration of the halftone circuit 400 and the head driving data conversion circuit 500. In the following, first, the halftone circuit 400 will be described. The halftone circuit 400 is a circuit that converts CMYK data in which color shades are expressed by gradation values from 0 to 255 into dot formation data representing the density of dots to be formed on a print medium. Basically, the printing apparatus 100 can only be in a state where ink is applied or not applied to the printing medium S, and the color density is changed by the distribution of dots formed by ink ejection. It is necessary to express. As a general method of halftone processing, there are known methods such as an error diffusion method and a systematic dither method. In this embodiment, the halftone processing is performed by a unique method developed from the systematic dither method. .

<ハーフトーン処理の概念>
ここで、本実施例のハーフトーン処理の概念を従来の組織的ディザ法と比較して説明する。
図11は、従来の組織的ディザ法によるハーフトーン処理の概要を示す説明図である。従来の組織的ディザ法では、図の上部に示すように、所定の大きさ(ここでは128×64とする)のディザマトリクスに対して、1から255までの閾値が万遍なく分散されて配置されている。かかるディザマトリクスを用いてハーフトーン処理を行うには、図の下部に示すように、CMYK画像データを構成する各画素の階調値と、ディザマトリクス上でその画素に対応する位置に存在する閾値とを比較し、その閾値を超える階調値である場合には、その位置にドットを形成し、閾値を超えない場合には、その位置にはドットを形成しないと判定する。こうすることで、256階調のCMYKデータを、ドットの有無を表すドット形成用データに変換することができる。図11の下欄のディザマトリクスにおいて、横4個縦2個の閾値を枠線RGで囲んでいる。本実施例では、図11上欄に示した128画素×64画素といった大きなディザマトリクスから閾値を順次取り出して、ハーフトーン処理を行なうのではなく、128画素×64画素のディザマトリクスから、その左上を原点として4×2を単位とする閾値群を取り出し、これにその位置に応じてブロック番号を付与しておく。そして、ブロック番号毎に、4×2の閾値群を用いて、エンコード用対応関係を作り、準備している。つまり、本実施例では、4×2を単位として、ハーフトーン処理を行なうのである。この点について、以下説明する。
<Concept of halftone processing>
Here, the concept of the halftone process of the present embodiment will be described in comparison with the conventional systematic dither method.
FIG. 11 is an explanatory diagram showing an outline of halftone processing by a conventional systematic dither method. In the conventional systematic dither method, as shown in the upper part of the figure, threshold values from 1 to 255 are uniformly distributed with respect to a dither matrix having a predetermined size (here, 128 × 64). Has been. In order to perform halftone processing using such a dither matrix, as shown in the lower part of the figure, the gradation value of each pixel constituting the CMYK image data and the threshold value present at the position corresponding to that pixel on the dither matrix If the gradation value exceeds the threshold value, a dot is formed at that position, and if the threshold value is not exceeded, it is determined that no dot is formed at that position. By doing so, it is possible to convert 256-tone CMYK data into dot formation data indicating the presence or absence of dots. In the dither matrix in the lower column of FIG. 11, four horizontal and two vertical thresholds are surrounded by a frame line RG. In this embodiment, threshold values are sequentially extracted from a large dither matrix of 128 pixels × 64 pixels shown in the upper column of FIG. 11 and halftone processing is not performed, but the upper left of the dither matrix of 128 pixels × 64 pixels is displayed. A threshold value group having a unit of 4 × 2 is taken out as an origin, and a block number is given to this based on the position. Then, for each block number, a correspondence relationship for encoding is created and prepared using a threshold group of 4 × 2. That is, in this embodiment, halftone processing is performed in units of 4 × 2. This point will be described below.

エンコード用対応関係とは、次のように定められたものである。図11に示した大域的なディザマトリクスから取り出された4×2の大きさの閾値群は全て異なる閾値の組み合わせになっている。従って、4×2の大きさに対応する4×2の画素群の階調値が全て同じであると仮定して、その画素群の階調値が0から255まで段階的に上昇していくと、4×2の閾値群に含まれる8つの閾値に応じたところで、ドットのオン・オフが変化することになる。図12は、この関係を示すグラフである。図12(a)に示した閾値群を例に取ると、図12(b)に示すように、階調値が1,42,58,109,170,177,212,255の8カ所で、それぞれドットが0から1個、1個から2個・・・7個から8個に変化する。もとより、閾値群が異なれば、発生するドットの個数が変化する階調値は異なる。このため、画像データにおいて同じ階調値が続いても、異なる閾値群を順次適用していれば、図11の大きなディザマトリクスを用いるのと同じ結果が得られることになる。   The encoding correspondence is defined as follows. The threshold groups having a size of 4 × 2 extracted from the global dither matrix shown in FIG. 11 are all combinations of different threshold values. Therefore, assuming that the gradation values of the 4 × 2 pixel group corresponding to the size of 4 × 2 are all the same, the gradation value of the pixel group gradually increases from 0 to 255. And the dot on / off changes according to the eight threshold values included in the 4 × 2 threshold value group. FIG. 12 is a graph showing this relationship. Taking the threshold value group shown in FIG. 12 (a) as an example, as shown in FIG. 12 (b), the gradation values are eight places of 1,42,58,109,170,177,212,255, Each dot changes from 0 to 1, 1 to 2,... 7 to 8. Of course, if the threshold value group is different, the gradation value at which the number of generated dots changes is different. For this reason, even if the same gradation value continues in the image data, the same result as using the large dither matrix of FIG. 11 can be obtained if different threshold groups are sequentially applied.

図12(b)の関係は、閾値群毎に異なるので、予め閾値群毎にこの対応関係を求めて対応表にしておく。この対応表を以下、量子化テーブルと言う。かかる量子化テーブルが準備されていれば、画像データ中のある画素の階調値が与えられたとき、その画素に対して適用すべき閾値群をブロック番号を用いて特定し、そのブロック番号とその画素の階調値とを用いて量子化テーブルを参照すれば、発生すべきドットの個数を取得することができる。また、閾値群が決まれば、その閾値群内の閾値の小さいところから順にドットを形成すればよいから、ドット形成の順序も閾値群毎に定まることになる。この関係を図13に示した。画像データ内に配列された画素の解像度と、印刷装置側で形成するドットに対応したピクセルの解像度とが等しい場合、画像データを4×2個の画素群全体の階調値が127だとすると、その画素群に適用させる閾値群のブロック番号と階調値127とから、量子化テーブルを参照することにより、形成すべきドットの個数(この例では4個)を得ることができる。他方、閾値群に属する閾値の大小関係から、ドットを形成すべき順番である順序値マトリクスもブロック番号毎に定まる。そこで、この二つを合わせることにより、図13の下欄右端に示したように、4個のドットの配置を決定することができる。本実施例のハーフトーン処理では、画像データにおける4×2個の画素に適用する階調値の情報(8ビット)を、ハーフトーン処理に利用する閾値群が有するドット発生の変化点の情報と、どの順序でドットが発生されるかという情報とに分けてコード化し、その後これを復号して、ドットの発生位置を決定するという処理を行なっているということができる。   Since the relationship shown in FIG. 12B is different for each threshold group, this correspondence is obtained in advance for each threshold group and is set in a correspondence table. Hereinafter, this correspondence table is referred to as a quantization table. If such a quantization table is prepared, when a gradation value of a certain pixel in image data is given, a threshold group to be applied to the pixel is specified using a block number, and the block number and By referring to the quantization table using the gradation value of the pixel, the number of dots to be generated can be acquired. If a threshold group is determined, dots need only be formed in order from the smallest threshold in the threshold group, so the dot formation order is also determined for each threshold group. This relationship is shown in FIG. If the resolution of the pixels arranged in the image data is equal to the resolution of the pixels corresponding to the dots formed on the printing apparatus side, if the gradation value of the entire 4 × 2 pixel group is 127, The number of dots to be formed (four in this example) can be obtained by referring to the quantization table from the block number of the threshold group applied to the pixel group and the gradation value 127. On the other hand, the order value matrix, which is the order in which dots are to be formed, is also determined for each block number from the magnitude relationship of the threshold values belonging to the threshold value group. Therefore, by combining these two, it is possible to determine the arrangement of the four dots as shown at the right end of the lower column of FIG. In the halftone processing of the present embodiment, information on gradation values (8 bits) to be applied to 4 × 2 pixels in image data is used as information on change points of dot generation included in threshold groups used for halftone processing. It can be said that processing is performed in which the information is divided into information indicating in which order the dots are generated, and then decoded, and the dot generation position is determined.

ここまでは、印刷媒体上に形成されるドットは1種類であるとして説明した。図11、図12、図13は、単一種類のドットのオン・オフを決める場合についての例示に過ぎない。実際の印刷装置では、大中小ドット、あるいは濃淡ドットなど、複数種類のドットを同一の画素に形成可能なので、ディザマトリクスを用いたドットのオン・オフの決定は、もう少し複雑である。そこで、次にこの点について説明する。図14は、本実施例の印刷装置100のように大中小のドットを形成可能な場合に、上記の考え方を拡張する手法を示している。大中小ドットのように複数のドットを形成可能な場合には、図14(a)に示すように、まず、画像データの階調値に対して、各階調値で、小ドット、中ドット、大ドットを形成する密度のデータに変換する。図14(a)の関係は印刷装置毎に、更には印刷の品質や用紙の種類などに応じて予め設定されている。従って、ある階調値が与えられると、小ドットの密度データ、中ドットの密度データ、大ドットの密度データが得られることになる。いま、4×2の画素群に対して、階調値127が与えられ、図14(a)に示した関係から、小ドット密度データが32、中ドット密度データが90,大ドット密度データが2、と得られたとする。大中小の各ドットのオン・オフは、図14(b)に示したように、大中小のドット密度データをこの順に、4×2の閾値群と比較して定めることになる。先ず、大ドット密度データ2と、各閾値とを比較すると、図14(c)に示したように、閾値「1」の画素について大ドットがオンになる。この閾値「1」以外の画素で、オンになるところはない。そこで、次に中ドットについて判定する。中ドットについて判定する場合には、中ドット密度データに大ドット密度データを加えて(90+2=92)、これと閾値群との比較を行なう。この結果、図14(d)に示したように、閾値が「58」と「42」の画素において、中ドットがオンになる。更に、小ドットについて判定するが、この場合には、小ドット密度データに中および大ドット密度データを加え(32+90+2=124)、これと閾値群との比較を行なう。この結果、図14(e)に示したように、閾値「109」の画素において、小ドットがオンとなる。   Up to this point, it has been described that there is only one type of dot formed on the print medium. 11, 12, and 13 are merely examples for determining on / off of a single type of dot. Since an actual printing apparatus can form a plurality of types of dots such as large, medium, small and light dots or dark and light dots in the same pixel, the determination of dot on / off using a dither matrix is a little more complicated. Therefore, this point will be described next. FIG. 14 shows a method for extending the above-described concept when large, medium, and small dots can be formed as in the printing apparatus 100 of the present embodiment. When a plurality of dots such as large, medium, and small dots can be formed, first, as shown in FIG. 14A, for each gradation value, small dots, medium dots, Convert to density data to form large dots. The relationship shown in FIG. 14A is preset for each printing apparatus, and further according to the printing quality, paper type, and the like. Therefore, given a certain gradation value, density data for small dots, density data for medium dots, and density data for large dots are obtained. Now, a gradation value 127 is given to the 4 × 2 pixel group, and from the relationship shown in FIG. 14A, the small dot density data is 32, the medium dot density data is 90, and the large dot density data is 2 is obtained. As shown in FIG. 14B, the large / medium / small dots are turned on / off by comparing the large / medium / small dot density data with a 4 × 2 threshold value group in this order. First, when the large dot density data 2 is compared with each threshold value, as shown in FIG. 14C, the large dot is turned on for the pixel having the threshold value “1”. There is no place where pixels other than the threshold value “1” are turned on. Therefore, next, the medium dot is determined. When determining the medium dot, the large dot density data is added to the medium dot density data (90 + 2 = 92), and this is compared with the threshold value group. As a result, as shown in FIG. 14D, medium dots are turned on in the pixels having the threshold values “58” and “42”. Further, a small dot is determined. In this case, medium and large dot density data are added to the small dot density data (32 + 90 + 2 = 124), and this is compared with a threshold group. As a result, as shown in FIG. 14E, the small dot is turned on in the pixel having the threshold value “109”.

上述した手法によれば、大中小ドットが形成可能な場合でも、各閾値群が決まれば、大中小ドットの形成個数(図14の例では、大1,中2,小1)は、一意に決定される。そこで、図12を用いて説明したのと全く同じように、予め用意した大域的なディザマトリクスから4×2の閾値群を取り出して、これにブロック番号を付け、対応する画素群の階調値が最小値から最大値まで(この実施例では、0から255まで)変化した場合の大中小のドットの形成個数を調べて、対応関係として準備しておくことができる。この関係を調べて大中小ドットの場合の量子化データとして示したのが、図15である。閾値群の組み合わせが異なれば、つまりブロック番号が異なれば、図12を用いて説明したのと同様に、大中小のドットの組み合わせが変化する階調値は異なる。図15は、ブロック番号N1からN5までの、5つのブロックについて、画像データの階調値が0から255まで変化する際に、大中小ドットの組み合わせにより、印刷媒体上で表現される階調値がどのように変化するかを示している。なお、理解の便を図って、各ブロック番号での階調の変化は、縦軸をずらして描いてある。   According to the above-described method, even when large, medium, and small dots can be formed, if each threshold group is determined, the number of large, medium, and small dots (large, medium 2, and small 1 in the example of FIG. 14) is uniquely determined. It is determined. Therefore, in exactly the same manner as described with reference to FIG. 12, a 4 × 2 threshold value group is extracted from a global dither matrix prepared in advance, and a block number is assigned to it, and the gradation value of the corresponding pixel group is obtained. Can be prepared as a correspondence by examining the number of large, medium, and small dots formed when the value changes from the minimum value to the maximum value (from 0 to 255 in this embodiment). FIG. 15 shows this relationship as quantization data in the case of large, medium, and small dots. If the combinations of threshold groups are different, that is, if the block numbers are different, the gradation values at which the combinations of large, medium, and small dots change are different as described with reference to FIG. FIG. 15 shows the gradation values expressed on the print medium by the combination of large, medium, and small dots when the gradation values of the image data change from 0 to 255 for the five blocks of block numbers N1 to N5. Shows how changes occur. For convenience of understanding, the change in gradation at each block number is drawn with the vertical axis shifted.

単一のドットを形成する場合について図12(a)および図12(b)で示したのと同様に、大中小ドットの場合でも、画像データの階調値と形成されるドットの対応関係を予め求めておくことができる。これを対応表にしたのが、図16の量子化テーブルQTである。従って、ハーフトーン処理を行なうとする画素の階調値が与えられると、その画素に適用する閾値群をブロック番号を用いて特定し、そのブロック番号とCMYKの階調値とで、図16の量子化テーブルQTを参照すると、直ちに量子化データを取得することができる。なお、図16の量子化テーブルQTで、その最大値が必ずしも同一となっていないのは、閾値の組み合わせによっては、大中小ドットの組み合わせの変化が生じる回数が異なるからである。しかし、この最大回数が32を越えることはなく、図16に示した量子化データは、少なくとも5ビットあれば表現することができる。図16に示した量子化テーブルQTが、本願におけるエンコード用対応関係に相当する。   In the case of forming a single dot, as shown in FIG. 12A and FIG. 12B, the correspondence between the gradation value of the image data and the dot to be formed, even in the case of large, medium, and small dots. It can be obtained in advance. The quantization table QT in FIG. 16 is a correspondence table. Accordingly, when a gradation value of a pixel to be subjected to halftone processing is given, a threshold group to be applied to the pixel is specified using a block number, and the block number and the CMYK gradation value are used to determine the threshold value group of FIG. Referring to the quantization table QT, the quantized data can be acquired immediately. The reason why the maximum values are not necessarily the same in the quantization table QT in FIG. 16 is that the number of times that the combination of large, medium, and small dots occurs varies depending on the combination of threshold values. However, this maximum number does not exceed 32, and the quantized data shown in FIG. 16 can be expressed with at least 5 bits. The quantization table QT shown in FIG. 16 corresponds to the encoding correspondence in the present application.

次に、本実施例におけるデコード側の処理について説明する。デコード(複合)の仕組みについては、単一種類のドットが形成可能な場合を例にして既に説明した(図13参照)。本実施例のハーフトーン処理では、上述した通り、実際には、大中小の3種類の大きさのインク滴を印刷媒体上に吐出して大中小ドットを形成しているが、デコード処理の仕組みは、図13を用いて説明した場合と異ならない。即ち、CMYK画像データを構成する各画素の階調値を、量子化テーブルQT(図16)を用いてコード化して量子化データを求め、次に、この量子化データを、第1ドット個数テーブルDT1(図22)と第2ドット個数テーブルDT2(図23)とを用いて目的の領域に形成するドットの数を表すドット個数データにデコード(復号)するのである。そして、このドット個数データが表す個数のドットを図13の上部に示した順序値マトリクスOMを参照して、ピクセル群内に配置する。こうすることで、CMYK画像データを、ドットの有無を表すドット形成用データに変換することができる。各ブロック番号の順序値マトリクスは、4×2の大きさを有し、上述したディザマトリクスから生成されるものである。なお、量子化テーブルQTが、本発明の「エンコード用対応関係」に相当することは既に説明した。他方、第1ドット個数テーブルDT1と第2ドット個数テーブルDT2と順序値マトリクスOMとが、本発明の「デコード用対応関係」に相当する。   Next, processing on the decoding side in the present embodiment will be described. The decoding (composite) mechanism has already been described by taking as an example the case where a single type of dot can be formed (see FIG. 13). In the halftone processing of this embodiment, as described above, actually, large, medium, and small ink droplets are ejected onto the print medium to form large, medium, and small dots. Is not different from the case described with reference to FIG. That is, the gradation value of each pixel constituting the CMYK image data is encoded using the quantization table QT (FIG. 16) to obtain the quantized data, and then this quantized data is stored in the first dot number table. Using DT1 (FIG. 22) and the second dot number table DT2 (FIG. 23), it is decoded (decoded) into dot number data representing the number of dots formed in the target area. Then, the number of dots represented by the dot number data is arranged in the pixel group with reference to the order value matrix OM shown in the upper part of FIG. By doing so, it is possible to convert the CMYK image data into dot formation data indicating the presence or absence of dots. The order value matrix of each block number has a size of 4 × 2, and is generated from the above-described dither matrix. It has already been described that the quantization table QT corresponds to the “encoding correspondence” of the present invention. On the other hand, the first dot number table DT1, the second dot number table DT2, and the order value matrix OM correspond to the “decoding correspondence” of the present invention.

以上説明したように、本実施例のハーフトーン処理では、ある画素の階調値が与えられたとき、その画素が属しているブロック番号と階調値から量子化テーブルQTを参照するだけでエンコードを行なって量子化データが得られ、この量子化データを用いて、図22,図23のドット個数テーブルを参照するだけで、ピクセル群内に形成すべき大中小ドットの個数を得ることができ、順序値マトリクスを参照して、ドットの配置を定めることができる。このため、その順序通りに必要な数の大中小ドットを配置すればハーフトーン処理が完了する。そのため、従来の組織的ディザ法のように、階調値と閾値の大小を比較する条件分岐処理が不要となり、処理スピードを向上させることができる。   As described above, in the halftone processing of this embodiment, when a gradation value of a certain pixel is given, encoding is performed simply by referring to the quantization table QT from the block number and gradation value to which the pixel belongs. To obtain quantized data, and by using this quantized data, the number of large, medium, and small dots to be formed in the pixel group can be obtained simply by referring to the dot number tables in FIGS. The arrangement of dots can be determined with reference to the order value matrix. For this reason, halftone processing is completed when the necessary number of large, medium, and small dots are arranged in that order. Therefore, unlike the conventional systematic dither method, conditional branch processing for comparing the gradation value and the threshold value becomes unnecessary, and the processing speed can be improved.

<ハーフトーン回路の詳細>
ここで、説明を図10に戻し、ハーフトーン回路400を構成する各ユニットについて詳細に説明する。図10に示すように、ハーフトーン回路400は、ブロック内平滑化ユニット380と接続され、CMYKデータのエンコードを行うエンコーダ410と、エンコーダ410および第7パスユニット390gに接続され、これらから出力されたデータを選択するデータセレクタ420と、データセレクタ420と接続され、データセレクタ420から出力されたデータをエンコードデータバッファEBに対して蓄積するEB制御ユニット440と、エンコードデータバッファEBと接続され、エンコードデータバッファEBに蓄積されたエンコードデータのデコードを行うデコーダ430とを備えている。
<Details of halftone circuit>
Here, the description returns to FIG. 10 and each unit constituting the halftone circuit 400 will be described in detail. As shown in FIG. 10, the halftone circuit 400 is connected to the in-block smoothing unit 380, connected to the encoder 410 that encodes CMYK data, the encoder 410, and the seventh pass unit 390g, and output from these. A data selector 420 that selects data and an EB control unit 440 that is connected to the data selector 420 and stores the data output from the data selector 420 in the encoded data buffer EB. The encoded data buffer EB is connected to the encoded data. A decoder 430 that decodes the encoded data stored in the buffer EB.

データセレクタ420の前段に接続された第7パスユニット390gは、色変換回路300中の第6パスユニット390fに直列に接続されている。第7パスユニット390gに対応するメインユニットは、エンコーダ410である。例えば、第7パスユニット390gに白黒エッジデータが到達した場合には、その白黒エッジデータのエンコード元となった4つの画素を平均化したCMYKデータがエンコーダ410に到達することになる。そして、これらのデータ(白黒エッジデータとCMYKデータ)は、同時にデータセレクタ420に入力される。   The seventh pass unit 390g connected to the previous stage of the data selector 420 is connected in series to the sixth pass unit 390f in the color conversion circuit 300. The main unit corresponding to the seventh pass unit 390g is the encoder 410. For example, when monochrome edge data arrives at the seventh pass unit 390g, CMYK data obtained by averaging four pixels that are the encoding source of the monochrome edge data reaches the encoder 410. These data (monochrome edge data and CMYK data) are simultaneously input to the data selector 420.

(C−2−1)エンコーダ:
エンコーダ410は、色変換回路300から入力した各色8ビットのCMYKデータを、5ビットの量子化データにエンコードするユニットである。図10に示すように、エンコーダ410は、ブロック番号判別回路411と、量子化回路412とを備えている。
(C-2-1) Encoder:
The encoder 410 is a unit that encodes 8-bit CMYK data of each color input from the color conversion circuit 300 into 5-bit quantized data. As shown in FIG. 10, the encoder 410 includes a block number determination circuit 411 and a quantization circuit 412.

(C−2−1−1)ブロック番号判別回路:
ブロック番号判別回路411は、色変換回路300から入力したCMYKデータによって表される画素が、図12に示した順序値マトリクスOMの、どのブロック番号に属するかを判別する回路である。ブロック番号の判別方法は、画像を印刷する際の出力解像度のモードによって異なる。かかるモードとしては、概ね以下に示す7種類のモードがある。本実施例では、色変換回路300からは、360dpi×360dpiのCMYKデータを入力し、これを720dpi×720dpiの解像度で印刷を行うため、これらのモードうち、2×2モードに基づくブロック番号の判別を行う。なお、画像処理ユニット155の所定のレジスタには、印刷開始に先立ち、CPU151によって出力解像度のモードが設定されているため、かかるレジスタを参照することにより、現在のモードを判別することができる。
(C-2-1-1) Block number discrimination circuit:
The block number determination circuit 411 is a circuit that determines to which block number the pixel represented by the CMYK data input from the color conversion circuit 300 belongs in the order value matrix OM shown in FIG. The block number discrimination method differs depending on the output resolution mode when printing an image. As such modes, there are roughly the following seven types of modes. In this embodiment, 360 dpi × 360 dpi CMYK data is input from the color conversion circuit 300, and this is printed at a resolution of 720 dpi × 720 dpi. Therefore, among these modes, the block number is determined based on the 2 × 2 mode. I do. Note that since the output resolution mode is set in the predetermined register of the image processing unit 155 by the CPU 151 prior to the start of printing, the current mode can be determined by referring to the register.

モード名 入力解像度(dpi) 出力解像度(dpi)
1×1モード・・・360×360 360×360
1×2モード・・・360×360 360×720
2×1モード・・・360×360 720×360
2×2モード・・・360×360 720×720
2×4モード・・・360×360 720×1440
4×2モード・・・360×360 1440×720
4×4モード・・・360×360 1440×1440
Mode name Input resolution (dpi) Output resolution (dpi)
1x1 mode ... 360x360 360x360
1 × 2 mode: 360 × 360 360 × 720
2 × 1 mode: 360 × 360 720 × 360
2 × 2 mode: 360 × 360 720 × 720
2 × 4 mode: 360 × 360 720 × 1440
4x2 mode ... 360x360 1440x720
4x4 mode ... 360x360 1440x1440

図17は、2×2モードにおけるブロック番号の判別方法を示す説明図である。2×2モードは、エンコーダ410が入力したCMYK画像データの解像度(360dpi×360dpi)を縦横2倍の解像度(720dpi×720dpi)で出力するモードである。つまり、図の下部に示した順序値マトリクスOMにおいて、1つのブロック番号が割り当てられている4×2の単位ブロックの大きさは、2×2モードで出力しようとするCMYK画像データ内では、その2分の1である2画素×1画素の大きさに相当する。従って、図示するように、2×2モードの場合には、エンコーダ410は、CMYK画像データを構成する画素のうち、横方向に隣接する2つの画素が同一のブロック番号であると判別する。   FIG. 17 is an explanatory diagram showing a block number discrimination method in the 2 × 2 mode. The 2 × 2 mode is a mode in which the resolution (360 dpi × 360 dpi) of the CMYK image data input by the encoder 410 is output at a double resolution (720 dpi × 720 dpi). That is, in the order value matrix OM shown in the lower part of the figure, the size of the 4 × 2 unit block to which one block number is assigned is the size of the CMYK image data to be output in the 2 × 2 mode. This corresponds to a size of 2 pixels × 1 pixel which is a half. Therefore, as illustrated, in the 2 × 2 mode, the encoder 410 determines that two pixels adjacent in the horizontal direction among the pixels constituting the CMYK image data have the same block number.

かかる判別方法によれば、エンコーダ410は、例えば、同図に示すように、CMYK画像データの左上隅に位置する2つの画素は、ブロック番号「1」に該当すると判別し、ブロック番号「1」が設定された2つの画素の右隣りの2つの画素については、ブロック番号「2」に該当すると判別する。さらに、ブロック番号「1」が設定された2つの画素の下側に隣接する2つの画素については、例えば、ブロック番号「33」に該当すると判別する。このようにして、エンコーダ410は、他の画素についても同様に、隣接する2つの画素を1つの単位としてそれぞれブロック番号を判別する。   According to such a determination method, for example, as shown in the figure, the encoder 410 determines that the two pixels located in the upper left corner of the CMYK image data correspond to the block number “1”, and the block number “1”. It is determined that the two pixels adjacent to the right of the two pixels for which “” is set correspond to the block number “2”. Furthermore, it is determined that the two pixels adjacent to the lower side of the two pixels set with the block number “1” correspond to the block number “33”, for example. In this way, the encoder 410 also determines the block number for each of the other pixels, using two adjacent pixels as one unit.

図18は、ブロック番号の実際の判別例を示す説明図である。コンピュータ900やスキャナ110から入力する画像データのサイズは、128画素×64画素よりも大きいことが一般的なため、CMYK画像データ全体が一つの順序値マトリクスOM内に収まりきることはまれである。そのため、図14のように、順序値マトリクスOMが繰り返して適用されることの方が多い。このとき、エンコーダ410は、例えば、横方向が640画素のCMYK画像データを入力したとすると、まず、最も上部に位置するラインに対して2画素ずつ1から32までのブロック番号を計10回(=640/(32*2))繰り返して判別し、続いて、2本目のラインに対して2画素ずつ33から64までのブロック番号を計10回繰り返して判別することになる。   FIG. 18 is an explanatory diagram of an actual discrimination example of block numbers. Since the size of image data input from the computer 900 or the scanner 110 is generally larger than 128 pixels × 64 pixels, it is rare that the entire CMYK image data fits in one order value matrix OM. Therefore, as shown in FIG. 14, the order value matrix OM is often applied repeatedly. At this time, for example, if the CMYK image data having 640 pixels in the horizontal direction is input, the encoder 410 first assigns block numbers from 1 to 32 to 2 pixels for a line positioned at the top for a total of 10 times ( = 640 / (32 * 2)) The determination is repeated, and then the block number from 33 to 64 is determined 10 times for each second pixel for the second line.

(C−2−1−2)量子化回路:
説明を図10に戻す。量子化回路412は、ブロック番号判別回路411によって、ブロック番号を判別した画素から順に、図16に示した量子化テーブルQTを参照して、そのCMYKデータを量子化データにエンコードする回路である。この量子化テーブルQTは、図4に示したようにSDRAM152に記憶されている。
(C-2-1-2) Quantization circuit:
Returning to FIG. The quantization circuit 412 is a circuit that encodes the CMYK data into quantized data with reference to the quantization table QT shown in FIG. 16 in order from the pixel whose block number is determined by the block number determination circuit 411. The quantization table QT is stored in the SDRAM 152 as shown in FIG.

図16に示したように、量子化テーブルQTには、CMYKデータの階調値(最小0〜最大255)と、ブロック番号(最小1〜最大1024)とに応じて、量子化データが0から31までの値をとるように設定されている。量子化回路412は、エンコードを行おうとする画素のCMYKデータとブロック番号判別回路411とからこの量子化テーブルQTを参照してその画素に対応する1つの量子化データを取得する。   As shown in FIG. 16, in the quantization table QT, the quantized data starts from 0 according to the gradation value (minimum 0 to maximum 255) of CMYK data and the block number (minimum 1 to maximum 1024). It is set to take a value up to 31. The quantization circuit 412 refers to this quantization table QT from the CMYK data of the pixel to be encoded and the block number determination circuit 411 and acquires one quantization data corresponding to the pixel.

図15に示したように、量子化データは、階調値が増加するほど大きくなるように設定されており、ブロック番号に応じてその増加度合いが異なっている。図15中のブロック番号N1〜N5は、それぞれ異なるブロック番号を表しており、これらのブロック番号N1〜N5に対応する5つの画素についてエンコードした結果を示している。なお、図15では、各ブロック番号N1〜N5の折れ線が重なって判別し難くなることを避けるために、量子化データの原点位置をそれぞれ縦軸方向に少しずつずらして表示している。   As shown in FIG. 15, the quantized data is set so as to increase as the gradation value increases, and the degree of increase differs depending on the block number. Block numbers N1 to N5 in FIG. 15 represent different block numbers, respectively, and indicate the results of encoding for five pixels corresponding to these block numbers N1 to N5. In FIG. 15, the origin positions of the quantized data are displayed while being shifted little by little in the vertical axis direction in order to prevent the broken lines of the block numbers N1 to N5 from being overlapped and difficult to discriminate.

図中、太い実線で示したブロック番号N1について説明する。このブロック番号N1では、画素の階調値が「0」〜「4」の範囲では、量子化データは、「0」であるが、画素の階調値が「5」〜「20」の範囲では、量子化データは、「1」に増加する。また、画素の階調値が「21」〜「42」の範囲では、量子化データは「2」に増加する。また、画素の階調値が「43」〜「69」の範囲では、量子化データは「3」に増加する。このように、画素の階調値が増加するに従って、量子化データも段階的に増加する。そして、最終的には、量子化データは「15」まで増加する。すなわち、ブロック番号N1については、0から255までの値をとる画素の階調値を、0から15までの16段階に量子化していることになる。   In the figure, a block number N1 indicated by a thick solid line will be described. In this block number N1, the quantization data is “0” in the range where the pixel gradation value is “0” to “4”, but the pixel gradation value is in the range “5” to “20”. Then, the quantized data increases to “1”. In addition, in the range where the gradation value of the pixel is “21” to “42”, the quantized data increases to “2”. In addition, in the range where the gradation value of the pixel is “43” to “69”, the quantized data increases to “3”. Thus, the quantized data also increases step by step as the gradation value of the pixel increases. Finally, the quantized data increases to “15”. That is, for the block number N1, the gradation value of the pixel having a value from 0 to 255 is quantized into 16 levels from 0 to 15.

同様に、図中に太い破線で示したブロック番号N2や、太い一点鎖線で示したブロック番号N3については、0から255までの値をとる画素の階調値を、0から17までの18段階に量子化している。更に、細い実線で示したブロック番号N4および細い一点鎖線で示したブロック番号N5については、画素の階調値を0から20までの21段階に量子化していることになる。量子化データの最大段数は、ブロック番号に応じて概ね15〜22程度となっている。このように、量子化テーブルQTには、ブロック番号に応じて固有の段数で量子化データが定義されている。また、量子化データの増加度合いもブロック番号に応じて固有に定義されている。そのため、同じ階調値を量子化した場合でも、その画素が属するブロック番号が異なれば、異なる量子化データに変換されることになる   Similarly, for the block number N2 indicated by a thick broken line in the figure and the block number N3 indicated by a thick dashed line, the gradation value of a pixel having a value from 0 to 255 is set to 18 levels from 0 to 17. It is quantized to. Further, for the block number N4 indicated by a thin solid line and the block number N5 indicated by a thin one-dot chain line, the gradation value of the pixel is quantized in 21 steps from 0 to 20. The maximum number of stages of quantized data is approximately 15 to 22 depending on the block number. In this way, in the quantization table QT, quantized data is defined with a unique number of stages according to the block number. Also, the degree of increase in the quantized data is uniquely defined according to the block number. Therefore, even when the same gradation value is quantized, if the block number to which the pixel belongs is different, it is converted into different quantized data.

以上で説明したように、量子化回路412は、画素のCMYK階調値を量子化データに変換することで、通常、256階調を有するCMYKデータの値を、最大で32段の量子化データに変換する。こうすることにより、8ビットのデータ量が必要であったCMYKデータを、ドットの発生に必要な情報を表す5ビットのデータに変換することができ、データ容量を削減することができる。   As described above, the quantization circuit 412 converts the CMYK gradation value of a pixel into quantized data, thereby converting the value of CMYK data having 256 gradations into a maximum of 32 stages of quantized data. Convert to By doing this, CMYK data that required an 8-bit data amount can be converted into 5-bit data representing information necessary for generating dots, and the data capacity can be reduced.

最終的に、エンコーダ410は、量子化回路412によってエンコードした量子化データを、1画素毎、データセレクタ420に対して出力する。なお、この量子化データは、CMYKの各色毎に出力される。   Finally, the encoder 410 outputs the quantized data encoded by the quantization circuit 412 to the data selector 420 pixel by pixel. The quantized data is output for each color of CMYK.

(C−2−2)データセレクタ:
図19は、図10に示したデータセレクタ420の詳細な構成を示す説明図である。データセレクタ420は、印刷装置100が備えるインクの種類に対応した8つのセレクタ素子411a〜411hを備えている。各セレクタ素子411a〜411hは、そのセレクタ素子に対応する色の5ビットの量子化データをエンコーダ410から入力するとともに、第7パスユニット390gから5ビットの白黒エッジデータを入力する。また、各セレクタ素子411a〜411hは、セレクト信号として白黒エッジデータの最上位ビット、すなわち、白黒エッジ判定フラグの内容を表すデータを入力する。
(C-2-2) Data selector:
FIG. 19 is an explanatory diagram showing a detailed configuration of the data selector 420 shown in FIG. The data selector 420 includes eight selector elements 411a to 411h corresponding to the types of ink included in the printing apparatus 100. Each selector element 411a to 411h receives 5-bit quantized data of a color corresponding to the selector element from the encoder 410 and 5-bit monochrome edge data from the seventh path unit 390g. Each of the selector elements 411a to 411h inputs the most significant bit of the monochrome edge data, that is, data representing the contents of the monochrome edge determination flag as a select signal.

各セレクタ素子411a〜411hは、エンコーダ410と第7パスユニット390gとからそれぞれデータを入力すると、セレクト信号として入力された白黒エッジ判定フラグの値をチェックする。その結果、白黒エッジ判定フラグが「1」であれば、白黒エッジデータを選択して出力し、「0」であれば、量子化データを選択して出力する。各セレクタ素子411a〜411hの後段には、それぞれビット付加器412a〜412hが接続されている。ビット付加器412a〜412hは、セレクタ素子411a〜411hから出力されたデータの最上位ビットに、白黒エッジ判定フラグの値を付加する。そのため、最終的にデータセレクタ420から出力されるデータは、量子化データの場合にも白黒エッジデータの場合にも、6ビットのデータとなる。データセレクタ420は、以上の処理によって選択したいずれかのデータを、EB制御ユニット440に出力する。なお、データセレクタ420への入力時の5ビットの白黒エッジデータには、色変換回路300内の白黒エッジ処理ユニット320によって既に最上位ビットに白黒エッジ判定フラグの値が付加されているため、6ビット化された白黒エッジデータの上位2ビットには、白黒エッジ判定フラグの値が重複して記録されることになる。しかし、このように同じ内容のデータが重複して記録されたとしても、量子化データのデータ長と白黒エッジデータのデータ長とを揃えることができるため、これらのデータを記憶するエンコードデータバッファEBに対するアドレス管理が容易となり、ハードウェアの複雑化を抑制し、処理スピードを向上させることができる。   When the selector elements 411a to 411h receive data from the encoder 410 and the seventh pass unit 390g, the selector elements 411a to 411h check the value of the monochrome edge determination flag input as the select signal. As a result, if the monochrome edge determination flag is “1”, monochrome edge data is selected and output, and if it is “0”, quantized data is selected and output. Bit adders 412a to 412h are connected to the subsequent stages of the selector elements 411a to 411h, respectively. Bit adders 412a to 412h add the value of the monochrome edge determination flag to the most significant bit of the data output from selector elements 411a to 411h. Therefore, the data finally output from the data selector 420 is 6-bit data in both cases of quantized data and monochrome edge data. The data selector 420 outputs any data selected by the above processing to the EB control unit 440. Note that the monochrome edge determination flag value is added to the most significant bit by the monochrome edge processing unit 320 in the color conversion circuit 300 in the 5-bit monochrome edge data at the time of input to the data selector 420. In the upper 2 bits of the black and white edge data converted into bits, the value of the black and white edge determination flag is recorded redundantly. However, even if data having the same contents are recorded in duplicate, the data length of the quantized data and the data length of the monochrome edge data can be made uniform, so that the encoded data buffer EB for storing these data is used. Address management can be facilitated, hardware complexity can be suppressed, and processing speed can be improved.

(C−2−3)EB制御ユニット:
説明を図10に戻す。EB制御ユニット440は、データセレクタ420から6ビットの白黒エッジデータまたは6ビットの量子化データを択一的に入力すると、これらのデータをエンコードデータバッファEBに格納する。なお、以下の説明では、量子化データと白黒エッジデータとをまとめて「エンコードデータ」と呼ぶ場合がある。
(C-2-3) EB control unit:
Returning to FIG. When 6-bit monochrome edge data or 6-bit quantized data is alternatively input from the data selector 420, the EB control unit 440 stores these data in the encoded data buffer EB. In the following description, the quantized data and the monochrome edge data may be collectively referred to as “encoded data”.

図20は、EB制御ユニット440が、エンコードデータバッファEBにエンコードデータを格納するまでの過程を概念的に示す説明図である。図示するように、データセレクタ420は、エンコーダ410から量子化データを入力するとともに、第7パスユニット390gから白黒エッジデータを入力する。そして、白黒エッジ判定フラグの値を用いて、これらのエンコードデータのうち、ダミーデータ(000000)を除く白黒エッジデータを量子化データに優先して出力する。そして、EB制御ユニット440は、データセレクタ420から出力されたエンコードデータを順にエンコードデータバッファEBに格納する。エンコードデータバッファEBに格納されたエンコードデータは、図10に示したデコーダ430によって順次読み出されることになる。   FIG. 20 is an explanatory diagram conceptually showing the process until the EB control unit 440 stores the encoded data in the encoded data buffer EB. As shown in the figure, the data selector 420 receives the quantized data from the encoder 410 and black and white edge data from the seventh pass unit 390g. Then, using the value of the black and white edge determination flag, black and white edge data excluding the dummy data (000000) among these encoded data is output with priority over the quantized data. Then, the EB control unit 440 sequentially stores the encoded data output from the data selector 420 in the encoded data buffer EB. The encoded data stored in the encoded data buffer EB is sequentially read out by the decoder 430 shown in FIG.

(C−2−4)デコーダ:
図21は、図10に示したデコーダ430の詳細な構成を示す説明図である。デコーダ430は、白黒エッジデータと量子化データとをそれぞれ個別にデコードし、ドット形成用データを生成するためのユニットである。図示するように、デコーダ430は、エンコードデータバッファEBに接続され、エンコードデータを入力するデータ判定回路431と、データ判定回路431からの出力を受けて白黒エッジデータをデコードする白黒エッジデータデコード回路432と、データ判定回路431からの出力を受けて量子化データをデコードする量子化データデコード回路433とを備えている。
(C-2-4) Decoder:
FIG. 21 is an explanatory diagram showing a detailed configuration of the decoder 430 shown in FIG. The decoder 430 is a unit for individually decoding monochrome edge data and quantized data and generating dot formation data. As shown in the figure, the decoder 430 is connected to the encode data buffer EB, and receives a data determination circuit 431 that inputs the encode data, and a black and white edge data decode circuit 432 that receives the output from the data determination circuit 431 and decodes the black and white edge data. And a quantized data decoding circuit 433 that receives the output from the data determination circuit 431 and decodes the quantized data.

(C−2−4−1)データ判定回路:
データ判定回路431は、エンコードデータバッファEBから順次エンコードデータを読み出し、読み出したエンコードデータのブロック番号を判別する。エンコードデータバッファEBには、図13および図14に示したブロック番号順にエンコードデータが格納されているから、その格納順にエンコードデータを読み出せば、自ずとそのエンコードデータに対応するブロック番号を判別することができる。つまり、出力解像度が2×2モードの場合には、隣接する2つの画素に同一のブロック番号が付されているから、1つ目と2つ目に読み出したエンコードデータのブロック番号は、「1」となり、3つ目と4つ目に読み出したエンコードデータのブロック番号は「2」になる。また、例えば、横方向が640画素のCMYK画像データについてエンコードデータが生成されている場合には、最初に、2画素ずつ1から32までのブロック番号が計10回(=640/(32*2))繰り返して判別され、続いて、2画素ずつ33から64のブロック番号が計10回繰り返して判別されることになる。画像処理ユニット155のレジスタには、CPU151によって出力解像度のモードや、画像のサイズに関する情報がセットされているため、データ判定回路431は、かかるレジスタを参照することにより、出力解像度のモードや画像のサイズに応じたブロック番号の判別を行うことができる。
(C-2-4-1) Data determination circuit:
The data determination circuit 431 sequentially reads the encoded data from the encoded data buffer EB, and determines the block number of the read encoded data. Since the encoded data is stored in the encoded data buffer EB in the order of the block numbers shown in FIG. 13 and FIG. 14, if the encoded data is read in the stored order, the block number corresponding to the encoded data is automatically determined. Can do. That is, when the output resolution is 2 × 2 mode, the same block number is assigned to two adjacent pixels, and the block number of the encoded data read out in the first and second is “1”. The block number of the encoded data read out in the third and fourth is “2”. Also, for example, when encoded data is generated for CMYK image data having 640 pixels in the horizontal direction, first, the block numbers from 1 to 32 for each two pixels are generated 10 times (= 640 / (32 * 2). )) Discrimination is repeated, and then the block numbers 33 to 64 for each two pixels are repeatedly discriminated a total of 10 times. Since the CPU 151 sets information relating to the output resolution mode and the image size in the register of the image processing unit 155, the data determination circuit 431 refers to such a register so that the output resolution mode and the image The block number can be determined according to the size.

データ判定回路431は、ブロック番号の判別が終了すると、読み出した6ビットのエンコードデータの最上位ビットをチェックする。最上位ビットには、データセレクタ420によって白黒エッジデータであるか否かを表す白黒エッジ判定フラグの値が付加されている。そのため、エンコードデータの最上位ビットが「0」であれば、そのエンコードデータが量子化データであると判別し、かかる最上位ビットを切り捨てた上で、量子化データデコード回路433に5ビットの量子化データとブロック番号の値とを転送する。一方、最上位ビットが「1」であれば、読み出したエンコードデータが白黒エッジデータであると判別し、白黒エッジ判定フラグの値が記録された上位2ビットを切り捨てた上で、白黒エッジデータデコード回路432に4ビットの白黒エッジデータとブロック番号の値とを転送する。   When the determination of the block number is completed, the data determination circuit 431 checks the most significant bit of the read 6-bit encoded data. The most significant bit is added with the value of the monochrome edge determination flag indicating whether or not the data is monochrome edge data by the data selector 420. Therefore, if the most significant bit of the encoded data is “0”, it is determined that the encoded data is quantized data, and after the most significant bit is discarded, the quantized data decoding circuit 433 receives the 5-bit quantum data. The data and the block number value are transferred. On the other hand, if the most significant bit is “1”, it is determined that the read encoded data is black and white edge data, and the upper 2 bits in which the value of the black and white edge determination flag is recorded are discarded, and then the black and white edge data decoding is performed. The 4-bit monochrome edge data and the block number value are transferred to the circuit 432.

(C−2−4−2)量子化データデコード回路:
量子化データデコード回路433は、データ判定回路431から転送された5ビットの量子化データをデコードし、ドット形成用データを生成する回路である。ドット形成用データは、形成しようとするドットのサイズを「11」「10」「01」「00」の4値によって表し、これらの値の分布によって印刷画像を表したデータである。ドット形成用データを生成するには、まず、SDRAM152に記憶された第1ドット個数テーブルDT1および第2ドット個数テーブルDT2を参照して、量子化データを大中小の各サイズのドットの個数を表すドット個数データに変換し、更に、このドット個数データとSDRAM152に記憶された順序値マトリクスOMとに基づきドットの配置を行う。以下、かかる処理の詳細について説明する。
(C-2-4-2) Quantized data decoding circuit:
The quantized data decoding circuit 433 is a circuit that decodes the 5-bit quantized data transferred from the data determination circuit 431 and generates dot formation data. The dot formation data is data representing the size of a dot to be formed by four values “11”, “10”, “01”, and “00”, and a print image by the distribution of these values. In order to generate dot formation data, first, referring to the first dot number table DT1 and the second dot number table DT2 stored in the SDRAM 152, the quantized data represents the number of dots of large, medium, and small sizes. Conversion to dot number data is performed, and further, dot arrangement is performed based on the dot number data and the order value matrix OM stored in the SDRAM 152. The details of such processing will be described below.

<量子化データのドット個数データへの変換>
図22は、第1ドット個数テーブルDT1の一例を示す説明図である。図示するように、この第1ドット個数テーブルDT1には、ブロック番号と量子化データとに応じて第1ドット個数データが定義されている。第1ドット個数データは、その量子化データが表す画素に、どの程度の数のドットを形成するかを表すデータである。なお、この第1ドット個数データは、ドットの数を正確に表しているわけではなく、後述するように、大中小の各ドットの数がエンコードされた値となっている。第1ドット個数データは、0から164までの値をとる。すなわち、この第1ドット個数テーブルDT1によれば、5ビットの量子化データが8ビットの第1ドット個数データに変換されることになる。
<Conversion of quantized data into dot count data>
FIG. 22 is an explanatory diagram showing an example of the first dot number table DT1. As shown in the drawing, in the first dot number table DT1, first dot number data is defined according to the block number and the quantized data. The first dot number data is data representing how many dots are formed in the pixel represented by the quantized data. The first dot number data does not accurately represent the number of dots, and is a value obtained by encoding the number of large, medium, and small dots as will be described later. The first dot number data takes values from 0 to 164. That is, according to the first dot number table DT1, 5-bit quantized data is converted into 8-bit first dot number data.

ここで、第1ドット個数データが164までの値に収まる理由について説明すると、1つのブロックを構成する8つの画素についてみれば、各画素について、「大ドットを形成する」、「中ドットを形成する」、「小ドットを形成する」、「ドットを形成しない」の4つの状態を取り得る。従って、ドット個数の組合せは、これら4つの状態を、重複を許容して8回選択した時の組合せの数に等しくなるから、(=4+8−1)によって求めることができる。このことから、最大でも165通り(0〜164)の組合せしか出現しないことになる。なお、は、n個の物の中から重複を許してr回選択するときの重複組合せ数を求める演算子である。また、は、n個の物の中から重複を許さずにr回選択するときの組合せ数を求める演算子である。 Here, the reason why the first dot number data falls within a value up to 164 will be described. As for eight pixels constituting one block, “large dot formation” and “medium dot formation” are performed for each pixel. Four states are possible: “Yes”, “Form a small dot”, and “No dot”. Therefore, the combination of the number of dots can be obtained by 4 H 8 (= 4 + 8-1 C 8 ) because these four states are equal to the number of combinations when eight times are selected while allowing overlap. For this reason, only 165 combinations (0 to 164) appear at most. Note that n H r is an operator that determines the number of overlapping combinations when r is selected r times from among n objects. N C r is an operator for obtaining the number of combinations when selecting r times from n objects without allowing duplication.

量子化データデコード回路433は、図22に示した第1ドット個数テーブルDT1を参照することにより、データ判定回路431から入力した量子化データとブロック番号とに対応する第1ドット個数データを取得する。例えば、入力した量子化データが「0」であり、そのブロック番号が「1」であれば、図示するように、第1ドット個数データは、「0」となる。また、入力した量子化データの値が「3」であり、そのブロック番号が「2」であれば、第1ドット個数データは、「4」となる。   The quantized data decoding circuit 433 acquires the first dot number data corresponding to the quantized data and the block number input from the data determination circuit 431 by referring to the first dot number table DT1 shown in FIG. . For example, if the input quantized data is “0” and the block number is “1”, the first dot number data is “0” as illustrated. If the value of the input quantized data is “3” and the block number is “2”, the first dot number data is “4”.

次に、量子化データデコード回路433は、第2ドット個数テーブルDT2を参照して、第1ドット個数データを大中小の各サイズのドットの個数を表す第2ドット個数データに変換する。   Next, the quantized data decoding circuit 433 refers to the second dot number table DT2, and converts the first dot number data into second dot number data representing the number of large, medium, and small dots.

図23は、第2ドット個数テーブルDT2の一例を説明したものである。図示するように、この第2ドット個数テーブルDT2には、第1ドット個数データと、各サイズのドットの個数を表す第2ドット個数データとが対応づけて記憶されている。なお、図の右側の表は、第2ドット個数データが表す各サイズのドットの個数の内訳を詳細に示した参考図である。第1ドット個数データは、前述したように、0から164までのデータ、すなわち8ビットのデータであり、第2ドット個数データは、16ビットのデータとなっている。この16ビットのデータは、2ビットを1組としており、各組の値がドットのサイズを表している。   FIG. 23 illustrates an example of the second dot number table DT2. As shown in the drawing, the second dot number table DT2 stores the first dot number data and the second dot number data representing the number of dots of each size in association with each other. The table on the right side of the figure is a reference diagram showing in detail the breakdown of the number of dots of each size represented by the second dot number data. As described above, the first dot number data is data from 0 to 164, that is, 8-bit data, and the second dot number data is 16-bit data. In this 16-bit data, 2 bits are set as one set, and the value of each set represents the dot size.

図24は、第2ドット個数データの一例を示す説明図である。図中に示す第2ドット個数データは、「0001011010111111」であるが、これを2ビットずつ1組に区切ると、左から、「00」「01」「01」「10」「10」「11」「11」「11」となる。各組の2ビットの内容は、ドットのサイズを表しており、「11」が大ドット、「10」が中ドット、「01」が小ドット、「00」がドットなしを表す。すなわち、図示した第2ドット個数データは、大ドットを3つ、中ドットを2つ、小ドットを2つ形成することを表している。図示するように、この第2ドット個数データには、大きいドットを表すデータから順に右詰めで格納されている。   FIG. 24 is an explanatory diagram showing an example of second dot number data. The second dot number data shown in the figure is “0001011010111111”. When this is divided into sets of 2 bits each, “00” “01” “01” “10” “10” “11” from the left. “11” and “11”. The contents of each set of 2 bits represent the size of the dot, with “11” representing a large dot, “10” representing a medium dot, “01” representing a small dot, and “00” representing no dot. That is, the illustrated second dot number data indicates that three large dots, two medium dots, and two small dots are formed. As shown in the figure, the second dot number data is stored in the right-aligned order starting from the data representing the large dots.

ここで、説明を図23に戻す。図23に示した第2ドット個数テーブルDT2によれば、例えば、第1ドット個数データ「0」に対応する第2ドット個数データは、「0000000000000000」であり、「大ドット」、「中ドット」、「小ドット」のいずれも形成しないことを表わす。また、第1ドット個数データ「2」に対応する第2ドット個数データは、「0000000000000101」であり、「小ドット」のみを2個形成することを表す。また、第1ドット個数データ「160」に対応する第2ドット個数データは、「1010111111111111」であり、「大ドット」を6つ、「中ドット」を2つ形成することを表す。   Here, the description returns to FIG. According to the second dot number table DT2 shown in FIG. 23, for example, the second dot number data corresponding to the first dot number data “0” is “0000000000000”, “large dot”, “medium dot”. , “Small dot” is not formed. The second dot number data corresponding to the first dot number data “2” is “0000000000000101”, which indicates that only two “small dots” are formed. The second dot number data corresponding to the first dot number data “160” is “1010111111111111”, which indicates that six “large dots” and two “medium dots” are formed.

図23の下部には、この第2ドット個数データによって表されるドットサイズの遷移を示している。図示するように、形成されるドットのサイズは、第1ドット個数データが増加するにつれ、大きなドットの占める割合が大きくなる。つまり、第1ドット個数データは図22に示したように量子化データに比例して大きくなり、量子化データは図15に示したようにCMYKデータの階調値に比例して大きくなることから、CMYKの階調値が大きくなるにつれ、サイズの大きなドットが占める割合が徐々に多くなり、印刷媒体上に形成されるドットの密度が高くなることになる。   The lower part of FIG. 23 shows the transition of the dot size represented by the second dot number data. As shown in the figure, the size of the dots formed increases as the first dot number data increases, and the proportion of large dots increases. That is, the first dot number data increases in proportion to the quantized data as shown in FIG. 22, and the quantized data increases in proportion to the gradation value of the CMYK data as shown in FIG. As the gradation value of CMYK increases, the proportion of large size dots gradually increases, and the density of dots formed on the print medium increases.

<順序値マトリクスに基づくドットの配置>
量子化データデコード回路433は、第1ドット個数データを第2ドット個数データに変換すると、SDRAM152に記憶された順序値マトリクスOMを参照して、第2ドット個数データとブロック番号とに基づき各サイズのドットを配置する。
<Dot arrangement based on order value matrix>
When the quantized data decoding circuit 433 converts the first dot number data into the second dot number data, the quantized data decoding circuit 433 refers to the order value matrix OM stored in the SDRAM 152 and determines each size based on the second dot number data and the block number. Place dots.

図25は、図13に示した順序値マトリクスOMの一部を拡大した図である。既に説明したように、順序値マトリクスOMには、4×2の単位ブロック内の各要素についてそれぞれドットが形成されるべき順番を表す順序値が予め設定されている。ドットの形成順は、ブロック毎にそれぞれ個別に設定されており、順序値は、8つの要素についてそれぞれ異なる値が設定されるため1から8の値が設定されている。かかる図を参照すれば、例えば、ブロック番号1に対応する順序値マトリクスOMには、8つの要素のうち、左上隅にある画素に対して順序値「1」が設定されているため、ブロック番号1では、画像の左上隅に1番最初にドットが形成されることになる。また、ブロック番号1では、8つの要素の中の右下隅の画素に順序値「2」が設定されているため、2番目のドットは、右下隅に形成されることになる。   FIG. 25 is an enlarged view of a part of the order value matrix OM shown in FIG. As already described, the order value matrix OM is preset with order values representing the order in which dots should be formed for each element in the 4 × 2 unit block. The dot formation order is individually set for each block, and the order value is set to a value from 1 to 8 because different values are set for the eight elements. Referring to this figure, for example, in the order value matrix OM corresponding to block number 1, among the eight elements, the order value “1” is set for the pixel in the upper left corner. In 1, the first dot is formed at the upper left corner of the image. In block number 1, since the order value “2” is set for the pixel in the lower right corner of the eight elements, the second dot is formed in the lower right corner.

また、例えば、ブロック番号2に対応する順序値マトリクスOMにおいて、順序値「1」は、下段の左から2番目の要素に設定され、順序値「2」は、右下隅の要素に設定されている。また、ブロック番号3に対応する順序値マトリクスOMにおいて、順序値「1」は、上段の右から2番目の要素に設定され、順序値「2」は、左下隅の要素に設定されている。このように、ドットの形成順は、ブロック番号毎に異なる順序で設定されている。   For example, in the order value matrix OM corresponding to the block number 2, the order value “1” is set to the second element from the left in the lower row, and the order value “2” is set to the element in the lower right corner. Yes. Further, in the order value matrix OM corresponding to the block number 3, the order value “1” is set as the second element from the upper right, and the order value “2” is set as the element in the lower left corner. Thus, the dot formation order is set in a different order for each block number.

図26は、第2ドット個数データと順序値マトリクスOMとに基づき、8つの画素についてそれぞれドットを配置する手順を概念的に示す説明図である。ここでは、第2ドット個数データが、大ドットを3個、中ドットを2個、小ドットを2個、それぞれ形成すべきデータであり、適用する順序値マトリクスOMが、図25に示したブロック番号「1」に対応する順序値マトリクスOMであるものとする。   FIG. 26 is an explanatory diagram conceptually showing a procedure for arranging dots for eight pixels based on the second dot number data and the order value matrix OM. Here, the second dot number data is data that should be formed with three large dots, two medium dots, and two small dots, and the applied order value matrix OM is the block shown in FIG. It is assumed that the order value matrix OM corresponds to the number “1”.

量子化データデコード回路433は、図26に示すように、最初に、順序値マトリクスOMの順序値「1」に対応する画素に対して、第2ドット個数データの右端に位置する2ビットのデータを取得する。次に、順序値マトリクスOMの順序値「2」に対応する画素に対して、第2ドット個数データの右から2番目に位置する2ビットのデータを取得する。このように、順序値マトリクスOMの各順序値に対して、第2ドット個数データの右端から順番に2ビットのデータを適用していけば、図の中段に示すように、4画素×2画素の中間ドットデータが生成される。この中間ドットデータによって形成されるドットのイメージを「ドットイメージ」と称して図の下段に示した。   As shown in FIG. 26, the quantized data decoding circuit 433 first generates 2-bit data located at the right end of the second dot number data for the pixel corresponding to the order value “1” of the order value matrix OM. To get. Next, for the pixel corresponding to the order value “2” in the order value matrix OM, 2-bit data that is located second from the right of the second dot number data is acquired. In this way, if 2-bit data is applied in order from the right end of the second dot number data to each order value in the order value matrix OM, 4 pixels × 2 pixels as shown in the middle of the figure. Intermediate dot data is generated. The dot image formed by the intermediate dot data is referred to as “dot image” and is shown in the lower part of the figure.

このように、順序値マトリクスOMに設定された順序値に応じて、第2ドット個数データの右端から順に2ビットのデータを適用していけば、第2ドット個数データには右詰めで大きいドットから順にデータが記録されていることから、順序値マトリクスOM内には、大きいドットから順に配置されていくことになる。サイズが大きいドットは隣接して配置されると、その存在が目立ってしまうが、上述のように大きいドットから順にドットを配置すれば、大きなドットが優先的に分散されることになり、その存在を目立たなくすることができる。この結果、画質を向上させることが可能になる。   In this way, if 2-bit data is applied in order from the right end of the second dot number data in accordance with the order value set in the order value matrix OM, the second dot number data has a right-justified large dot. Since the data are recorded in order, the dots are arranged in order from the largest dot in the order value matrix OM. If large dots are placed next to each other, their presence will be noticeable. However, if dots are placed in order from the largest dots as described above, the larger dots will be distributed preferentially, and their presence. Can be made inconspicuous. As a result, the image quality can be improved.

<中間ドットデータの振り分けによる出力解像度の調整>
以上で説明した処理によれば、量子化データデコード回路433によって、1つの量子化データから、4×2画素の中間ドットデータが生成されることになる。1つの量子化データは、ハーフトーン回路400に入力されたCMYK画像データの1画素に対応することから、すべての量子化データについて中間ドットデータを生成すると、360dpi×360dpiの入力解像度が、1440dpi×720dpiの出力解像度となってしまい、2×2モードで目標とする720dpi×720dpiとは異なる出力解像度を有することになる。
<Adjustment of output resolution by distributing intermediate dot data>
According to the processing described above, the quantized data decoding circuit 433 generates 4 × 2 pixel intermediate dot data from one quantized data. Since one quantized data corresponds to one pixel of CMYK image data input to the halftone circuit 400, when intermediate dot data is generated for all quantized data, an input resolution of 360 dpi × 360 dpi is 1440 dpi × The output resolution is 720 dpi, and the output resolution is different from the target 720 dpi × 720 dpi in the 2 × 2 mode.

そこで、量子化データデコード回路433は、量子化データを中間ドットデータに変換しつつ、中間ドットデータ内の画素を分割して、適宜、振り分けを行い、出力解像度の調整を行う。具体的には、2×2モードでは、隣接した2つの画素は、同じブロック番号が割り当てられていることから、左側に位置する画素については、中間ドットデータ内の左側の2×2画素をドット形成用データに振り分け、右側に位置する画素については、中間ドットデータ内の右側の2×2画素をドット形成用データとして振り分ける。こうすることで、360dpi×360dpiの入力解像度が、720dpi×720dpiの出力解像度に正常に変換されることになる。   Therefore, the quantized data decoding circuit 433 divides the pixels in the intermediate dot data while converting the quantized data to the intermediate dot data, performs appropriate distribution, and adjusts the output resolution. Specifically, in the 2 × 2 mode, the same block number is assigned to two adjacent pixels. Therefore, for the pixel located on the left side, the left 2 × 2 pixel in the intermediate dot data is doted. For the pixels located on the right side, the 2 × 2 pixels on the right side in the intermediate dot data are assigned as the dot formation data. By doing so, the input resolution of 360 dpi × 360 dpi is normally converted to the output resolution of 720 dpi × 720 dpi.

図27は、2×2モードにおいて中間ドットデータの振り分けを行う具体例を示す説明図である。図示するように、量子化データデコード回路433は、同一のブロック番号に属する隣接した2つ画素の量子化データを入力すると、各量子化データを、それぞれ、第1ドット個数データおよび第2ドット個数データに変換し、順序値マトリクスに基づき中間ドットデータを生成する。中間ドットデータは、それぞれ8画素分生成されるため、1つ目の中間ドットデータのうち、左側に位置する4つの画素(図中「L」と示した部分)をドット形成用データとして採用する。そして、2つ目の中間ドットデータのうち、右側に位置する4つの画素(図中「R」と示した部分)を次のドット形成用データとして採用する。量子化データデコード回路433は、同一ブロック番号に属する中間ドットデータについて、このような処理を繰り返して行うことにより、図の下部に示すようなドット形成用データを生成することができる。最終的に、ドット形成用データには、大ドット、中ドット、小ドット、ドットなしを表すデータ「11」「10」「01」「00」が記録されることになる。   FIG. 27 is an explanatory diagram showing a specific example in which intermediate dot data is distributed in the 2 × 2 mode. As shown in the figure, when the quantized data decoding circuit 433 receives the quantized data of two adjacent pixels belonging to the same block number, the quantized data is converted into the first dot number data and the second dot number, respectively. Data is converted into intermediate dot data based on the order value matrix. Since the intermediate dot data is generated for 8 pixels each, among the first intermediate dot data, the four pixels located on the left side (the portion indicated by “L” in the figure) are adopted as the dot formation data. . Of the second intermediate dot data, the four pixels located on the right side (the portion indicated by “R” in the figure) are employed as the next dot formation data. The quantized data decoding circuit 433 can generate dot formation data as shown in the lower part of the figure by repeating such processing for intermediate dot data belonging to the same block number. Finally, data “11”, “10”, “01”, and “00” representing large dots, medium dots, small dots, and no dots are recorded in the dot formation data.

以上で説明した処理によれば、量子化データデコード回路433は、エンコードデータバッファEBから入力した1つの量子化データに対して、それぞれ、2画素×2画素のドット形成用データを生成することになる。こうして生成したドット形成用データは、ドット形成用データバッファDBに順次格納する。以上で、量子化データデコード回路433によるデコード処理が完了する。   According to the processing described above, the quantized data decoding circuit 433 generates 2 pixel × 2 pixel dot formation data for each quantized data input from the encoded data buffer EB. Become. The dot formation data generated in this way is sequentially stored in the dot formation data buffer DB. Thus, the decoding process by the quantized data decoding circuit 433 is completed.

なお、本実施例では、図26や図27に示したように、中間ドットデータを8画素分全て生成してから、その中間ドットデータを2分割して、いずれか一方をドット形成用データに振り分けるものとした。これに対して、次のような振り分けを行うこともできる。すなわち、図27に示すように、中間ドットデータの中で、ドット形成用データに振り分けられる部分は、「L」や「R」に示すように既に決まっているため、その振り分けられる部分に対応した順序値マトリクスOM内の順序値を用いれば、中間ドットデータ内の8画素全部について生成することなくドット形成用データを生成することができる。例えば、図27のドット形成用データの最も左上の「L」部分については、図26に示したブロック番号1の順序値マトリクスOMの左側半分の順序値1,6,8,4に該当するビットのみを第2ドット個数データから取得すれば、かかる部分のドット形成用データを生成することができる。また、その隣の「R」の部分については、図26に示したブロック番号1の順序値マトリクスOMの右側半分の順序値3,5,7,2に該当するビットのみを第2ドット個数データから取得すれば、かかる部分のドット形成用データを生成することができる。このような振り分け方法によれば、中間ドットデータを8画素分全部について生成する必要がないため、処理スピードを向上させることができるとともに、使用するメモリ容量を削減することができる。   In this embodiment, as shown in FIGS. 26 and 27, intermediate dot data for all 8 pixels is generated, and then the intermediate dot data is divided into two, and either one is used as dot formation data. It was supposed to be distributed. On the other hand, the following distribution can also be performed. That is, as shown in FIG. 27, in the intermediate dot data, the portion to be distributed to the dot formation data has already been determined as indicated by “L” and “R”, and therefore corresponds to the portion to be distributed. If the order values in the order value matrix OM are used, the dot formation data can be generated without generating all eight pixels in the intermediate dot data. For example, for the “L” portion at the upper left of the dot formation data in FIG. 27, the bits corresponding to the order values 1, 6, 8, and 4 in the left half of the order value matrix OM of block number 1 shown in FIG. If only this is acquired from the second dot number data, the dot formation data for such a portion can be generated. For the adjacent “R” portion, only the bits corresponding to the order values 3, 5, 7, and 2 in the right half of the order value matrix OM of the block number 1 shown in FIG. Can be used to generate dot formation data for such a portion. According to such a distribution method, it is not necessary to generate intermediate dot data for all eight pixels, so that the processing speed can be improved and the memory capacity to be used can be reduced.

(C−2−4−3)白黒エッジデータデコード回路:
次に、図21に示した白黒エッジデータデコード回路432について説明する。白黒エッジデータデコード回路432は、白黒エッジデータについてハーフトーン処理を行うための回路である。白黒エッジデータデコード回路432は、データ判定回路431から4ビットの白黒エッジデータとともに、そのブロック番号の値を入力すると、図8に示した白黒エッジテーブルETを逆引きし、2×2の各画素について色を決定する。例えば、データ判定回路431から入力した白黒エッジデータが「1110」であれば、(A,B,C,D)=(1,1,1,0)となる。「1」は白を表し、「0」は、黒を表すから、色としては、(A,B,C,D)=(白,白,白,黒)となる。
(C-2-4-3) Monochrome edge data decoding circuit:
Next, the monochrome edge data decoding circuit 432 shown in FIG. 21 will be described. The monochrome edge data decoding circuit 432 is a circuit for performing halftone processing on monochrome edge data. When the black / white edge data decoding circuit 432 receives the 4-bit monochrome edge data and the block number value from the data determination circuit 431, the monochrome edge table ET shown in FIG. Determine the color. For example, if the monochrome edge data input from the data determination circuit 431 is “1110”, (A, B, C, D) = (1, 1, 1, 0). Since “1” represents white and “0” represents black, the colors are (A, B, C, D) = (white, white, white, black).

白黒エッジデータデコード回路432は、2×2画素内の白色の部分については、インクが吐出されない色であるため、2ビットで表されるドット形成用データは、ドットなしを表す「00」となる。つまり、白色部分については、ハーフトーン処理は実行せず、直接、ドット形成用データを「00」とする。こうすることにより、処理速度を向上させることができる。なお、透明インクを用いるときは、透明インクのドット形成用データのみを「11」とし、他のインクのドット形成用データを「00」とすることができる。   Since the black and white edge data decoding circuit 432 is a color in which ink is not ejected in the white portion in the 2 × 2 pixel, the dot formation data represented by 2 bits is “00” representing no dot. . That is, for the white portion, the halftone process is not executed, and the dot formation data is set directly to “00”. By doing so, the processing speed can be improved. When transparent ink is used, only the dot formation data for transparent ink can be set to “11”, and the dot formation data for other inks can be set to “00”.

一方、2×2画素内の黒色の部分については、(R,G,B)=(0,0,0)となり、RGB形式では発色しない色となるが、インクによる色表現時にはC,M,Y等の複数のインクを組み合わせて発色する色であるため、白黒エッジデータデコード回路432は、SDRAM152に記憶された黒データテーブルBTに基づき2×2画素内の黒の部分についてドット形成用データへ変換する処理を行う。白黒エッジは、白色の画素と黒色の画素とによって構成されるものであるため、このうち、実際にドットを形成する必要のある色は黒色のみである。従って、黒色だけについてハーフトーン処理を行う専用のテーブルを黒データテーブルBTとして予め用意しておくことで、白黒エッジ内の黒色の画素について、即座にドット形成用データへの変換を行うことができる。黒データテーブルBTは、黒色のみの画素によって構成された所定サイズの画像データを、色変換回路300およびハーフトーン回路400に入力してハーフトーン処理を施すことで作成することができる。かかる黒データテーブルBTの詳細な作成方法は後述する。なお、黒色は、Kインクのみによって表すことも可能であるが、印刷用紙の種類や、ノズルの傾き等に応じてその色調を微調整する場合があるため、本実施例では、C,M,Y等の複数のインクの組み合わせによって発色を行うものとする。   On the other hand, for the black portion in 2 × 2 pixels, (R, G, B) = (0, 0, 0), which is a color that does not develop color in the RGB format, but C, M, Since the color is a color generated by combining a plurality of inks such as Y, the black and white edge data decoding circuit 432 converts the black portion in the 2 × 2 pixel to the dot formation data based on the black data table BT stored in the SDRAM 152. Perform the conversion process. Since the black and white edge is composed of white pixels and black pixels, black is the only color in which dots need to be actually formed. Therefore, by preparing in advance as a black data table BT a dedicated table for halftone processing only for black, it is possible to immediately convert black pixels in the black and white edge into dot formation data. . The black data table BT can be created by inputting halftone processing by inputting image data of a predetermined size constituted by only black pixels to the color conversion circuit 300 and the halftone circuit 400. A detailed method for creating the black data table BT will be described later. Note that black can be represented only by K ink, but since the color tone may be finely adjusted depending on the type of printing paper, the inclination of the nozzle, and the like, in this embodiment, C, M, It is assumed that coloring is performed by a combination of a plurality of inks such as Y.

図28は、黒データテーブルBTの一例を示す説明図である。図示するように、黒データテーブルBTは、順序値マトリクスOMと同じサイズである128×64のサイズを有しており、4×2の大きさを単位とする複数のブロックに全体が分割されている。各ブロックには、順序値マトリクスOMと同一のブロック番号が割り当てられている。黒データテーブルBTは、インクの色毎に計8色分のプレーンを有しており、各要素には、ドットのサイズを表す2ビットのドット形成用データが記録されている。白黒エッジデータデコード回路432は、この黒データテーブルBTを参照することにより、白黒エッジデータに含まれる黒の部分について、その位置に対応したドット形成用データを取得することができる。   FIG. 28 is an explanatory diagram showing an example of the black data table BT. As shown in the figure, the black data table BT has a size of 128 × 64, which is the same size as the order value matrix OM, and is entirely divided into a plurality of blocks each having a size of 4 × 2. Yes. Each block is assigned the same block number as the order value matrix OM. The black data table BT has planes for a total of eight colors for each ink color, and 2-bit dot formation data representing the dot size is recorded in each element. By referring to the black data table BT, the monochrome edge data decoding circuit 432 can acquire dot formation data corresponding to the position of the black portion included in the monochrome edge data.

ここで、変換しようとする黒データが、黒データテーブルBTのどの位置に対応するかについては、入力した白黒エッジデータのブロック番号、データ判定回路431がその白黒エッジデータを入力した順番、2×2の白黒エッジデータ中における黒データの位置から判別することができる。例えば、変換対象の黒データを含む白黒エッジデータ(図28の下部参照)のブロック番号が「1」で、その白黒エッジデータがエンコードデータバッファEBから2番目に入力したデータであり、その黒データが、2×2の白黒エッジデータ中、右下(「D」の部分)に存在する場合について考えると、ブロック番号「1」のブロックのうち、最も右下に設定されているドット形成用データが取得されることになる。   Here, as to which position in the black data table BT the black data to be converted corresponds, the block number of the input black-and-white edge data, the order in which the data determination circuit 431 inputs the black-and-white edge data, 2 × It can be determined from the position of black data in the black and white edge data. For example, the black and white edge data including the black data to be converted (see the lower part of FIG. 28) has the block number “1”, and the black and white edge data is the second input from the encode data buffer EB. Considering the case in which 2 × 2 black and white edge data exists in the lower right (“D” portion), the dot formation data set at the lower right in the block with the block number “1” Will be acquired.

以上で説明した黒データテーブルBTを用いれば、白黒エッジデータデコード回路432は、黒データをCMYK形式や量子化データ等に変換することなく、ダイレクトにドット形成用データに変換することが可能になり、処理速度を向上させることができる。また、720dpi×720dpiの解像度を有する白黒エッジデータを、720dpi×720dpiのドット形成用データに変換することができるため、入力解像度が360dpi×360dpiの量子化データデコード回路433よりも、再現性よくハーフトーン処理を行うことができる。なお、本実施例では、黒データテーブルBTを用いることによって黒データをダイレクトにドット形成用データに変換するものとしたが、黒データテーブルBTを用いることなく、黒データを一旦、RGBデータからCMYKデータに変換した上で量子化し、更に、第1ドット個数データ、第2ドット個数データに変換して順序値マトリクスOMに基づきドットを配置することによっても、ドット形成用データに変換することができる。   By using the black data table BT described above, the black and white edge data decoding circuit 432 can directly convert the black data into dot formation data without converting into the CMYK format, quantized data, or the like. , Processing speed can be improved. In addition, since monochrome edge data having a resolution of 720 dpi × 720 dpi can be converted into dot formation data of 720 dpi × 720 dpi, the half resolution is more reproducible than the quantized data decoding circuit 433 having an input resolution of 360 dpi × 360 dpi. Tone processing can be performed. In this embodiment, the black data is directly converted into dot formation data by using the black data table BT. However, the black data is temporarily converted from RGB data to CMYK without using the black data table BT. Data can be converted into dot formation data by quantizing the data and then converting the data into first dot number data and second dot number data and arranging dots based on the order value matrix OM. .

白黒エッジデータデコード回路432は、上述した処理によって、白黒エッジデータを、4画素分のドット形成用データに変換すると、生成したドット形成用データを、ドット形成用データバッファDBに順次格納する。そうすると、ドット形成用データバッファDBには、量子化データデコード回路433と白黒エッジデータデコード回路432とから出力された720dpi×720dpiの解像度を有する2×2画素のドット形成データが順次蓄積されることになる。つまり、この時点で、文字等を表す画像データと背景等を表す画像データが合成されて、一つの出力画像が構成されることになる。デコーダ430(図21)は、ドット形成用データの蓄積が完了すれば、ヘッド駆動用データ変換回路500に対して、ドット形成用データの蓄積が完了したことを示すレディ信号を出力する。   When the monochrome edge data decoding circuit 432 converts the monochrome edge data into dot formation data for four pixels by the above-described processing, the dot formation data buffer DB sequentially stores the generated dot formation data. Then, 2 × 2 pixel dot formation data having a resolution of 720 dpi × 720 dpi output from the quantized data decoding circuit 433 and the monochrome edge data decoding circuit 432 is sequentially stored in the dot formation data buffer DB. become. That is, at this point, image data representing characters and the like and image data representing the background and the like are combined to form one output image. When the accumulation of dot formation data is completed, the decoder 430 (FIG. 21) outputs a ready signal indicating that the accumulation of dot formation data is completed to the head driving data conversion circuit 500.

なお、デコーダ430は、ドット形成用データバッファDBに対して、インクヘッド211が1回の主走査で印刷可能なだけのドット形成用データを最終的に蓄積するものとする。つまり、ノズルピッチ間に位置し、1回の主走査で印刷されない部分のドット形成用データを間引いた上で、ドット形成用データバッファDBへの蓄積を行う。このような間引き処理は、デコーダ430が量子化データや白黒エッジデータのデコードを行う際に、実際にインクを吐出するラスタラインに該当するデータのみをデコードすることによって行うものとすることができる。具体的には、例えば、量子化データのデコード時には、順序値マトリクス内の必要な順序値(例えば、図26に示した順序値マトリクスの順序値1,6,3,5)に対してのみ第2ドット個数データからドットデータを取得し、白黒エッジデータのデコード時には、白黒エッジデータ内の必要な部分(例えば、図28の下部に示した「A」と「B」の部分)のみに対して黒データテーブルBTからドットデータを取得することにより行うことができる。従来の誤差拡散法では、着目画素の階調値の誤差を周囲の画素の階調値に徐々に分散させる処理を行う必要があるため、必要なラスタラインに属するドット形成用データのみを生成することは困難であるが、本実施例のハーフトーン処理では、上述したような処理により、実際にインクを吐出するラスタライン上のドット形成用データのみを容易に生成することができる。   Note that the decoder 430 finally accumulates dot formation data that can be printed by the ink head 211 in one main scan in the dot formation data buffer DB. That is, the dot formation data buffer DB is accumulated after thinning out the dot formation data that is located between the nozzle pitches and is not printed in one main scan. Such a thinning-out process can be performed by decoding only data corresponding to a raster line that actually ejects ink when the decoder 430 decodes quantized data and monochrome edge data. Specifically, for example, when decoding quantized data, only the necessary order values in the order value matrix (for example, order values 1, 6, 3, and 5 of the order value matrix shown in FIG. 26) When dot data is acquired from 2-dot count data and monochrome edge data is decoded, only necessary portions (for example, “A” and “B” shown in the lower part of FIG. 28) in the monochrome edge data are decoded. This can be done by obtaining dot data from the black data table BT. In the conventional error diffusion method, it is necessary to perform a process of gradually dispersing the gradation value error of the pixel of interest to the gradation values of surrounding pixels, so only the dot formation data belonging to the necessary raster line is generated. Although it is difficult, in the halftone process of this embodiment, only the dot formation data on the raster line for actually ejecting ink can be easily generated by the process as described above.

C−3.ヘッド駆動用データ変換回路:
次に、図10に示したヘッド駆動用データ変換回路500について説明する。ヘッド駆動用データ変換回路500は、ドット形成用データバッファDBに蓄積されたドット形成用データを、インクヘッドを駆動するためのヘッド駆動用データに変換する回路である。図示するようにヘッド駆動用データ変換回路500は、ドット形成用データバッファDBに接続されたデータ回転ユニット510と、データ回転ユニット510に接続されたHB制御ユニット520とを備えている。
C-3. Head drive data conversion circuit:
Next, the head drive data conversion circuit 500 shown in FIG. 10 will be described. The head drive data conversion circuit 500 is a circuit that converts the dot formation data stored in the dot formation data buffer DB into head drive data for driving the ink head. As shown, the head drive data conversion circuit 500 includes a data rotation unit 510 connected to the dot formation data buffer DB, and an HB control unit 520 connected to the data rotation unit 510.

(C−3−1)データ回転ユニット:
データ回転ユニット510は、ハーフトーン回路400のデコーダ430からレディ信号を受信すると、ドット形成用データバッファDBからデータ形成用データを読み出し、ヘッド駆動用データへの変換をおこなう。かかる変換処理が完了するまでは、ビジー信号をハーフトーン回路のデコーダ430に送信する。デコーダ430は、ビジー信号が停止されるまで、各種デコード処理を停止する。こうすることで、ドット形成用データバッファDBがオーバーフローしてしまうことを防止することができる。
(C-3-1) Data rotation unit:
When the data rotation unit 510 receives a ready signal from the decoder 430 of the halftone circuit 400, the data rotation unit 510 reads the data formation data from the dot formation data buffer DB and converts it into head drive data. Until the conversion process is completed, the busy signal is transmitted to the decoder 430 of the halftone circuit. The decoder 430 stops various decoding processes until the busy signal is stopped. By doing so, it is possible to prevent the dot formation data buffer DB from overflowing.

図29は、データ回転ユニット510によるデータの並べ直しの概念を示す説明図である。ドット形成用データバッファDBには、図の上部に示すように、間引き処理済みのドット形成用データが主走査方向に整列して格納されているが、インクヘッド211には1色につき複数のノズルが副走査方向に設けられており、そのノズルの数だけラスタラインが同時に印刷される。そこで、データ回転ユニット510は、ノズルの上部から順にデータが割り当てられるように、ドット形成用データを縦方向に読み出す。すると、図の下部に示すように、データが並べ直され、ヘッド駆動用データに変換されることになる。   FIG. 29 is an explanatory diagram showing the concept of data rearrangement by the data rotation unit 510. In the dot formation data buffer DB, as shown in the upper part of the figure, the dot formation data that has been subjected to the thinning process is stored in alignment in the main scanning direction, but the ink head 211 has a plurality of nozzles for each color. Are provided in the sub-scanning direction, and raster lines are simultaneously printed by the number of the nozzles. Therefore, the data rotation unit 510 reads the dot formation data in the vertical direction so that the data is assigned in order from the top of the nozzle. Then, as shown in the lower part of the figure, the data is rearranged and converted to head driving data.

(C−3−2)HB制御ユニット:
図10のHB制御ユニット520は、ヘッド駆動用データバッファHBへのデータの出力を制御するユニットである。HB制御ユニット520は、データ回転ユニット510からヘッド駆動用データを入力し、これをヘッド駆動用データバッファHBに順次格納する。ヘッド駆動用データバッファHBに記憶されたヘッド駆動用データは、図2に示した制御ユニット150内のヘッドコントロールユニット156に読み取られ、インクの吐出制御に供されることになる。ヘッドコントロールユニット156は、キャリッジ210の主走査および副走査を繰り返しつつ、ヘッド駆動用データバッファHBから入力したデータが「11」であれば、大ドット形成用の電圧波形をピエゾ素子に印加し、「10」であれば、中ドット形成用の電圧波形をピエゾ素子に印加する。また、「01」であれば、小ドット形成用の電圧波形をピエゾ素子に印加する。このようにして、印刷装置100は、印刷媒体Sに対してカラー印刷を行う。
(C-3-2) HB control unit:
The HB control unit 520 in FIG. 10 is a unit that controls the output of data to the head driving data buffer HB. The HB control unit 520 receives head driving data from the data rotation unit 510 and sequentially stores it in the head driving data buffer HB. The head driving data stored in the head driving data buffer HB is read by the head control unit 156 in the control unit 150 shown in FIG. 2 and used for ink ejection control. The head control unit 156 applies the voltage waveform for forming a large dot to the piezo element if the data input from the head driving data buffer HB is “11” while repeating the main scanning and the sub scanning of the carriage 210. If “10”, a voltage waveform for forming a medium dot is applied to the piezo element. If “01”, a voltage waveform for forming a small dot is applied to the piezo element. In this way, the printing apparatus 100 performs color printing on the print medium S.

D.実施例の効果:
以上、本発明の実施の形態を実施例に基づき説明した。本実施例の印刷装置100によれば、高解像度(720dpi×720dpi)の画像を入力し、その画像のうち、白色と黒色の組み合わせのみによって表される文字や記号の部分(白黒エッジ)については、高解像度(720dpi×720dpi)のままハーフトーン処理を行い、その他の背景画像等については、一旦、解像度を半分(360dpi×360dpi)に減じてハーフトーン処理を行う。そのため、全ての画像領域について、高解像度のままハーフトーン処理を行うよりも、格段に少ないメモリ容量でハーフトーン処理を行うことができる。
D. Effects of the embodiment:
The embodiments of the present invention have been described based on the examples. According to the printing apparatus 100 of the present embodiment, a high-resolution (720 dpi × 720 dpi) image is input, and a portion of a character or a symbol (monochrome edge) represented by only a combination of white and black is included in the image. Then, halftone processing is performed with the high resolution (720 dpi × 720 dpi), and for other background images and the like, the halftone processing is performed by once reducing the resolution to half (360 dpi × 360 dpi). For this reason, halftone processing can be performed with a much smaller memory capacity than with halftone processing with high resolution for all image regions.

また、文字や記号等を表す白黒エッジ部分については、入力した画像の解像度を保ったままハーフトーン処理を行うので、明瞭な画質を保ったまま印刷を行うことができる。なお、背景画像等については、最終的には、その解像度を元の解像度(720dpi×720dpi)に上げて、文字等の部分と合成を行う。そのため、印刷媒体S上に形成された画像は、すべての領域で同じ解像度となる。背景画像等は、文字等に比べて、エッジ部分が少ないので、ハーフトーン処理の過程で解像度を減じても、最終的に出力される画像の画質に影響を与えることは少ない。むしろ、4つの画素の階調値の平均をとって解像度を減ずる処理により、ノイズなどの成分が丸められ、画質が向上した印象を与える場合もある。従って、本実施例によれば、全体として、画質が向上した印象を利用者に与えることができる。   In addition, since black and white edge portions representing characters and symbols are subjected to halftone processing while maintaining the resolution of the input image, printing can be performed while maintaining clear image quality. For the background image and the like, the resolution is finally raised to the original resolution (720 dpi × 720 dpi) and is combined with the character portion and the like. For this reason, the image formed on the print medium S has the same resolution in all areas. Background images and the like have fewer edge portions than characters and the like, so even if the resolution is reduced during the halftone process, the image quality of the final output image is hardly affected. Rather, the process of taking the average of the gradation values of the four pixels and reducing the resolution may round off components such as noise and give the impression of improved image quality. Therefore, according to the present embodiment, the impression that the image quality is improved as a whole can be given to the user.

また、本実施例では、白黒エッジ以外の部分のハーフトーン処理時には、CMYK画像データを構成する各色8ビットの階調値を5ビットの量子化データにエンコードするため、40%程度のデータ容量を削減できる。更に、白黒エッジデータについては、4画素分のRGBデータを表す計96ビット(=4画素×8ビット×3色)のデータを二値化して、白黒エッジ判定ビットを含めて5ビットの白黒エッジデータにエンコードできるため、白黒エッジのみによって構成される文字等の部分については、95%程度のデータ容量を削減できる。   In this embodiment, when halftone processing is performed on a portion other than the black and white edge, the 8-bit gradation value of each color constituting the CMYK image data is encoded into 5-bit quantized data. Can be reduced. Furthermore, for monochrome edge data, a total of 96 bits (= 4 pixels × 8 bits × 3 colors) representing RGB data for 4 pixels is binarized, and a monochrome edge of 5 bits including monochrome edge determination bits is obtained. Since the data can be encoded, the data capacity of about 95% can be reduced for a portion such as a character composed only of black and white edges.

また、出願人の試算によれば本実施例による画像処理によって、標準的な360dpi×360dpiの画像にハーフトーン処理を行うのに必要なメモリ容量の20%増し程度のメモリ容量で、720dpi×720dpiの画像データを扱うことが可能になった。これは、白黒エッジに関する処理や白黒エッジ以外の部分について解像度の低減を行わず、単純に720dpi×720dpiの画像データをハーフトーン処理するのに必要なメモリ容量が360dpi×360dpi時の4倍必要であるのに対して格段に少ない容量である。   Further, according to the applicant's estimation, the image processing according to the present embodiment has a memory capacity of about 720 dpi × 720 dpi, which is about 20% of the memory capacity required to perform halftone processing on a standard 360 dpi × 360 dpi image. It became possible to handle image data. This does not reduce the resolution for black and white edges and other portions than black and white edges, and simply requires four times the memory capacity required for halftone processing of 720 dpi × 720 dpi image data at 360 dpi × 360 dpi. The capacity is much less than that.

また、本実施例では、量子化テーブルQTや、第1ドット個数テーブルDT1、第2ドット個数テーブルDT2、順序値マトリクスOMなど、さまざまなテーブルを参照してハーフトーン処理を行うが、基本的に、ハーフトーン処理の過程では、これらのテーブルを参照するだけでドットの有無が決定される。従って、従来の組織的ディザ法のように、閾値と階調値の大小を比較するための処理を行う必要がなく、また、従来の誤差拡散法のように、各画素に発生する誤差を他の画素に分配するような処理を行う必要がない。従って、従来の方法に比べて、極めて高速にハーフトーン処理を行うことができる。   In this embodiment, halftone processing is performed by referring to various tables such as the quantization table QT, the first dot number table DT1, the second dot number table DT2, and the order value matrix OM. In the halftone process, the presence / absence of dots is determined simply by referring to these tables. Therefore, it is not necessary to perform processing for comparing the threshold value and the gradation value as in the conventional systematic dither method, and the error generated in each pixel is different from that in the conventional error diffusion method. It is not necessary to perform a process of distributing to the pixels. Therefore, halftone processing can be performed at a very high speed as compared with the conventional method.

また、印刷装置100は、白色部分についてはドットを形成する必要がないため、本実施例では、白黒エッジを構成する各画素のうち、白色部分についてはハーフトーン処理を行わないものとした。そのため、処理速度を向上させることができる。   In addition, since the printing apparatus 100 does not need to form dots for the white portion, in this embodiment, the halftone process is not performed for the white portion among the pixels constituting the monochrome edge. Therefore, the processing speed can be improved.

E.1×1モード時におけるハーフトーン回路内でのデータの流れ:
ところで、図10には、1×1モード時において用いられる信号線を破線にて示している。1×1モードは、入力解像度と出力解像度とが共に360dpi×360dpiのモードであるため、720dpi×720dpiの解像度を必要とする白黒エッジに関する処理は行われない。従って、1×1モード時には、以下に説明するように、他のモード時とは異なる手順でハーフトーン処理を行うものとした。
E. Data flow in the halftone circuit in 1 × 1 mode:
Incidentally, in FIG. 10, signal lines used in the 1 × 1 mode are indicated by broken lines. The 1 × 1 mode is a mode in which both the input resolution and the output resolution are 360 dpi × 360 dpi, and thus processing related to a monochrome edge that requires a resolution of 720 dpi × 720 dpi is not performed. Therefore, in the 1 × 1 mode, as will be described below, halftone processing is performed in a different procedure from that in other modes.

図10に示すように、1×1モードでは、エンコーダ410は、色変換回路300から入力したCMYKデータを他のモード時と同様に5ビットの量子化データにエンコードすると、データセレクタ420ではなく、デコーダ430に直接、量子化データを出力する。デコーダ430は、エンコーダ410から量子化データを入力すると、かかる量子化データを、第1ドット個数テーブルDT1、第2ドット個数テーブルDT2および順序値マトリクスOMを用いて2ビットのドット形成用データに変換する。そして、このドット形成用データを、ドット形成用データバッファDBではなく、EB制御ユニット440を介して、エンコードデータバッファEBに蓄積する。すなわち、他のモード時には、エンコードデータバッファEBには、6ビットの量子化データもしくは6ビットの白黒エッジデータが蓄積されることになるが、1×1モード時には、2ビットのドット形成用データが蓄積される。   As shown in FIG. 10, in the 1 × 1 mode, the encoder 410 encodes CMYK data input from the color conversion circuit 300 into 5-bit quantized data as in other modes, not the data selector 420, The quantized data is output directly to the decoder 430. When the quantized data is input from the encoder 410, the decoder 430 converts the quantized data into 2-bit dot formation data using the first dot number table DT1, the second dot number table DT2, and the order value matrix OM. To do. The dot formation data is stored in the encoded data buffer EB via the EB control unit 440, not the dot formation data buffer DB. That is, in other modes, 6-bit quantized data or 6-bit black and white edge data is stored in the encode data buffer EB, but in the 1 × 1 mode, 2-bit dot formation data is stored. Accumulated.

エンコードデータバッファEBに蓄積されたドット形成用データは、データ回転ユニット510に読み込まれ、ヘッド駆動用データに変換される。なお、1×1モードでは、ノズルピッチ間に位置するラスタライン上のドット形成用データは、デコーダ430ではなく、データ回転ユニット510によって間引き処理(インターレース処理)される。   The dot formation data stored in the encode data buffer EB is read into the data rotation unit 510 and converted into head driving data. In the 1 × 1 mode, the dot formation data on the raster line located between the nozzle pitches is thinned out (interlaced) by the data rotation unit 510 instead of the decoder 430.

以上のような構成によれば、1×1モード時には、データセレクタ420やドット形成用データバッファDBが用いられずにドット形成用データがデータ回転ユニット510まで出力されることになるため、印刷速度を向上させることができる。すなわち、画質よりもスピードを優先させた印刷を行うことができる。   According to the above configuration, in the 1 × 1 mode, since the data selector 420 and the dot formation data buffer DB are not used and the dot formation data is output to the data rotation unit 510, the printing speed is increased. Can be improved. That is, it is possible to perform printing with priority given to speed over image quality.

F.黒データテーブルの作成方法:
図10に示したハーフトーン回路400のデコーダ430が、白黒エッジデータのデコード時に用いる黒データテーブルBT(図28参照)は、予めROM153に記録しておき、印刷処理開始時や印刷装置100の起動時に、これをSDRAM152上にロードするものとすることができる。しかし、黒データテーブルBTは、順序値マトリクスOMと同等の容量を有しているため、ROM153の記憶領域を大きく消費することになる。そこで、上記実施例では、印刷装置100は、黒データテーブルBTを以下に説明する方法により動的に生成するものとする。
F. How to create a black data table:
The black data table BT (see FIG. 28) used when the decoder 430 of the halftone circuit 400 shown in FIG. 10 decodes monochrome edge data is recorded in the ROM 153 in advance, and when the printing process is started or the printing apparatus 100 is started. Sometimes this can be loaded onto the SDRAM 152. However, since the black data table BT has the same capacity as the order value matrix OM, the storage area of the ROM 153 is consumed greatly. Therefore, in the above embodiment, the printing apparatus 100 dynamically generates the black data table BT by the method described below.

図30は、制御ユニット150のCPU151が実行する黒データテーブル作成処理のフローチャートである。図示するように、CPU151は、印刷対象のRGB画像データをコンピュータ900やスキャナ110から入力すると(ステップS100)、かかるRGB画像データの画像処理に先立ち、画像処理ユニット155を1×1モードに設定し(ステップS110)、全画素が黒、すなわち、全画素のRGB値が(0,0,0)となる128画素×64画素のRGB画像データを画像処理ユニット155に出力する(ステップS120)。1×1モードとは、入力画像の解像度と出力画像の解像度とを1対1で対応させるモードである。   FIG. 30 is a flowchart of black data table creation processing executed by the CPU 151 of the control unit 150. As shown in the figure, when the RGB image data to be printed is input from the computer 900 or the scanner 110 (step S100), the CPU 151 sets the image processing unit 155 to the 1 × 1 mode prior to image processing of the RGB image data. (Step S110), all pixels are black, that is, RGB image data of 128 pixels × 64 pixels in which the RGB values of all pixels are (0, 0, 0) is output to the image processing unit 155 (Step S120). The 1 × 1 mode is a mode in which the resolution of the input image and the resolution of the output image are made to correspond one-to-one.

画像処理ユニット155に128画素×64画素のRGB画像データが入力されると、上述した画像処理ユニット155の働きにより、SDRAM152のエンコードデータバッファEB上に、128×64のサイズを有する全画素が黒のドット形成用データが生成される。すると、CPU151は、このドット形成用データを、SDRAM152内の黒データテーブルBTを格納する領域に転送して記憶させる(ステップS130)。   When RGB image data of 128 pixels × 64 pixels is input to the image processing unit 155, all the pixels having a size of 128 × 64 are black on the encoded data buffer EB of the SDRAM 152 by the operation of the image processing unit 155 described above. The dot formation data is generated. Then, the CPU 151 transfers and stores the dot formation data to an area for storing the black data table BT in the SDRAM 152 (step S130).

以上の処理により、SDRAM152の所定の領域に黒データテーブルBTが作成されたため、CPU151は、画像処理ユニット155を2×2モードに設定し(ステップS140)、ステップS100で入力したRGB画像データを、画像処理ユニット155に出力する(ステップS150)。   As a result of the above processing, the black data table BT is created in a predetermined area of the SDRAM 152. Therefore, the CPU 151 sets the image processing unit 155 to the 2 × 2 mode (step S140), and the RGB image data input in step S100 is The image is output to the image processing unit 155 (step S150).

以上で説明した処理によれば、128画素×64画素分の黒色を表すRGBデータを画像処理ユニット155に出力するだけで、SDRAM152上に黒データテーブルBTが生成される。そのため、予めROM153に黒データテーブルBTを記憶させる必要がなく、ROM153の記憶容量を削減することができる。また、画像処理ユニット155の色変換回路300では、印刷装置100の個体に応じたインク量の補正や印刷縞の補正が行われるため、その個体に応じて最適な黒データテーブルBTが作成されることになる。従って、画質の向上を図ることが可能になる。   According to the processing described above, the black data table BT is generated on the SDRAM 152 only by outputting RGB data representing black of 128 pixels × 64 pixels to the image processing unit 155. Therefore, it is not necessary to store the black data table BT in the ROM 153 in advance, and the storage capacity of the ROM 153 can be reduced. In addition, since the color conversion circuit 300 of the image processing unit 155 performs ink amount correction and print stripe correction according to the individual printing apparatus 100, an optimal black data table BT is created according to the individual. It will be. Therefore, the image quality can be improved.

また、上述した黒データテーブルBTの作成処理では、印刷データを入力する毎に、黒データテーブルBTを作成するものとしたため、例えば、印刷用紙の種類やセットされているインクの種類、印刷画質の設定に応じて、その設定に適した黒データテーブルBTを作成することができる。もちろん、このような必要がないときは、印刷装置100の起動時に、図30のステップS110〜S130の処理を実行するものとしてもよい。このようにすれば、印刷実行毎に黒データテーブルBTを作成する必要がないため、印刷速度を向上させることができる。   Further, since the black data table BT is created every time print data is input in the above-described creation process of the black data table BT, for example, the type of printing paper, the type of ink set, and the print image quality Depending on the setting, a black data table BT suitable for the setting can be created. Of course, when such a necessity is not necessary, the processing in steps S110 to S130 of FIG. 30 may be executed when the printing apparatus 100 is activated. In this way, it is not necessary to create the black data table BT every time printing is performed, so that the printing speed can be improved.

G.他の出力解像度モードの例:
以上で説明した印刷装置100では、2×2モードによって各種画像処理が行われる場合について説明した。ここで、参考のために、他の出力解像度のモードにおけるブロック番号の判別方法と、中間ドットデータの振り分け方法について説明する。
G. Examples of other output resolution modes:
In the printing apparatus 100 described above, the case where various image processes are performed in the 2 × 2 mode has been described. Here, for reference, a block number determination method and an intermediate dot data distribution method in other output resolution modes will be described.

<各モードにおけるブロック番号の判別方法>
図31は、1×1モードにおけるブロック番号の判別方法を示す説明図である。1×1モードは、エンコーダ410が入力したCMYK画像データの解像度(360dpi×360dpi)を等倍の解像度(360dpi×360dpi)で出力するモードである。そのため、順序値マトリクスOMにおいて、1つのブロック番号が割り振られている4×2の単位ブロックの大きさは、1×1モードで出力しようとするとCMYK画像データ内でも、4画素×2画素の大きさに相当する。従って、ハーフトーン回路400は、かかる4×2の画素が同一のブロック番号であると判別する。
<Determination method of block number in each mode>
FIG. 31 is an explanatory diagram showing a block number discrimination method in the 1 × 1 mode. The 1 × 1 mode is a mode in which the resolution (360 dpi × 360 dpi) of the CMYK image data input by the encoder 410 is output at an equal resolution (360 dpi × 360 dpi). Therefore, the size of the 4 × 2 unit block to which one block number is assigned in the order value matrix OM is 4 × 2 pixels even in the CMYK image data if it is output in the 1 × 1 mode. It corresponds to. Therefore, the halftone circuit 400 determines that the 4 × 2 pixels have the same block number.

図32は、1×2モードにおけるブロック番号の判別方法を示す説明図である。1×2モードは、エンコーダ410が入力したCMYK画像データの解像度(360dpi×360dpi)を縦方向に2倍の解像度(360dpi×720dpi)にして出力するモードである。そのため、順序値マトリクスOM内の1つのブロック番号が割り振られている4×2の単位ブロックの大きさは、1×2モードで出力しようとするCMYK画像データ内では、4画素×1画素の大きさに相当する。従って、ハーフトーン回路400は、かかる4×1の画素が同一のブロック番号であると判別する。   FIG. 32 is an explanatory diagram showing a block number discrimination method in the 1 × 2 mode. The 1 × 2 mode is a mode in which the resolution of CMYK image data input by the encoder 410 (360 dpi × 360 dpi) is doubled in the vertical direction (360 dpi × 720 dpi) and output. Therefore, the size of a 4 × 2 unit block to which one block number is assigned in the order value matrix OM is 4 × 1 pixel in CMYK image data to be output in the 1 × 2 mode. It corresponds to. Therefore, the halftone circuit 400 determines that the 4 × 1 pixels have the same block number.

図33は、2×1モードにおけるブロック番号の判別方法を示す説明図である。2×1モードは、エンコーダ410が入力したCMYK画像データの解像度(360dpi×360dpi)を横方向に2倍の解像度(720dpi×360dpi)にするモードである。そのため、順序値マトリクスOM内の1つのブロック番号が割り振られている4×2の単位ブロックの大きさは、2×1モードで出力しようとするCMYK画像データ内では、2画素×2画素の大きさに相当する。従って、ハーフトーン回路400は、かかる2×2の画素が同一のブロック番号であると判別する。   FIG. 33 is an explanatory diagram showing a block number discrimination method in the 2 × 1 mode. The 2 × 1 mode is a mode in which the resolution (360 dpi × 360 dpi) of CMYK image data input by the encoder 410 is doubled in the horizontal direction (720 dpi × 360 dpi). Therefore, the size of the 4 × 2 unit block to which one block number is assigned in the order value matrix OM is 2 × 2 pixels in the CMYK image data to be output in the 2 × 1 mode. It corresponds to. Therefore, the halftone circuit 400 determines that the 2 × 2 pixels have the same block number.

図34は、4×2モードにおけるブロック番号の判別方法を示す説明図である。4×2モードは、エンコーダ410が入力したCMYK画像データの解像度(360dpi×360dpi)を横方向に4倍、縦方向に2倍の解像度(1440dpi×720dpi)にするモードである。そのため、順序値マトリクスOM内の1つのブロック番号が割り振られている4×2の単位ブロックの大きさは、4×2モードで出力しようとするCMYK画像データ内では、1画素×1画素の大きさに相当する。従って、ハーフトーン回路400は、かかる1×1の画素が同一のブロック番号であると判別する。   FIG. 34 is an explanatory diagram showing a block number discrimination method in the 4 × 2 mode. The 4 × 2 mode is a mode in which the resolution (360 dpi × 360 dpi) of CMYK image data input by the encoder 410 is four times in the horizontal direction and doubled in the vertical direction (1440 dpi × 720 dpi). Therefore, the size of the 4 × 2 unit block to which one block number in the order value matrix OM is assigned is 1 pixel × 1 pixel in the CMYK image data to be output in the 4 × 2 mode. It corresponds to. Therefore, the halftone circuit 400 determines that such 1 × 1 pixels have the same block number.

<各モードにおける中間ドットデータの振り分け>
図26に示したように、1つの量子化データからは、出力解像度のモードにかかわらず、4画素×2画素の中間ドットデータが生成される。1つの量子化データは、CMYK画像データの1画素に対応することから、すべての量子化データについて中間ドットデータを生成すると、360dpi×360dpiの入力解像度が、1440dpi×720dpiの出力解像度となってしまい、各モード(4×2モードを除く)が目標とする出力解像度とは異なる解像度を有することになる。そこで、デコーダ430内の量子化データデコード回路433は、中間ドットデータを構成する各画素を、出力解像度のモードに応じて、適宜、振り分けを行い、出力解像度の調整を行う。
<Distribution of intermediate dot data in each mode>
As shown in FIG. 26, 4 × 2 intermediate dot data is generated from one quantized data regardless of the output resolution mode. Since one quantized data corresponds to one pixel of CMYK image data, when intermediate dot data is generated for all quantized data, an input resolution of 360 dpi × 360 dpi becomes an output resolution of 1440 dpi × 720 dpi. Each mode (excluding the 4 × 2 mode) has a resolution different from the target output resolution. Therefore, the quantized data decoding circuit 433 in the decoder 430 appropriately distributes the pixels constituting the intermediate dot data according to the output resolution mode and adjusts the output resolution.

<1×1モードの場合>
図35は、1×1モードにおける中間ドットデータの振り分け方法を示す説明図である。図31で示したように、1×1モードの場合には、4画素×2画素の計8画素が同一のブロック番号を有する。従って、図35のように、かかる8画素からそれぞれ生成される横に4つ、縦に2つ分の計8つの中間ドットデータから、それぞれ異なる位置の画素を1つずつ抽出し、これを4画素×2画素のドット形成用データとして振り分ける。こうすることで、360dpi×360dpiの入力解像度が、目標とする360dpi×360dpiの出力解像度に変換される。
<1x1 mode>
FIG. 35 is an explanatory diagram showing a method for distributing intermediate dot data in the 1 × 1 mode. As shown in FIG. 31, in the 1 × 1 mode, a total of 8 pixels of 4 × 2 pixels have the same block number. Accordingly, as shown in FIG. 35, pixels at different positions are extracted one by one from a total of eight intermediate dot data, each of which is generated from the eight pixels, four in the horizontal direction and two in the vertical direction. This is distributed as dot formation data of pixel × 2 pixels. By doing so, the input resolution of 360 dpi × 360 dpi is converted to the target output resolution of 360 dpi × 360 dpi.

<1×2モードの場合>
図36は、1×2モードにおける中間ドットデータの振り分け方法を示す説明図である。図32で示したように、1×2モードの場合には、4画素×1画素の計4画素が同一のブロック番号を有する。従って、図36のように、かかる4画素からそれぞれ生成される横方向に4つ分の中間ドットデータから、それぞれ異なる位置の画素を縦方向に2つずつ抽出し、これを4画素×2画素のドット形成用データとして振り分ける。こうすることで、360dpi×360dpiの入力解像度が、目標とする360dpi×720dpiの出力解像度に変換される。
<1x2 mode>
FIG. 36 is an explanatory diagram showing a method for distributing intermediate dot data in the 1 × 2 mode. As shown in FIG. 32, in the 1 × 2 mode, a total of 4 pixels of 4 pixels × 1 pixel have the same block number. Therefore, as shown in FIG. 36, two pixels at different positions are extracted in the vertical direction from four intermediate dot data in the horizontal direction generated from the four pixels, and these are extracted as 4 pixels × 2 pixels. Is distributed as dot formation data. By doing so, the input resolution of 360 dpi × 360 dpi is converted to the target output resolution of 360 dpi × 720 dpi.

<2×1モードの場合>
図37は、2×1モードにおける中間ドットデータの振り分け方法を示す説明図である。図33で示したように、2×1モードの場合には、2画素×2画素の計4画素が同一のブロック番号を有する。従って、図37のように、かかる4画素からそれぞれ生成される横方向に2つ、縦方向に2つ分の計4つの中間ドットデータから、それぞれ異なる位置の画素を横方向に2つずつ抽出し、これを4画素×2画素のドット形成用データとして振り分ける。こうすることで、360dpi×360dpiの入力解像度が、目標とする720dpi×360dpiの出力解像度に変換されることになる。
<In the case of 2 × 1 mode>
FIG. 37 is an explanatory diagram showing a method for distributing intermediate dot data in the 2 × 1 mode. As shown in FIG. 33, in the 2 × 1 mode, a total of 4 pixels of 2 × 2 pixels have the same block number. Therefore, as shown in FIG. 37, two pixels at different positions are extracted from each of the four intermediate dot data generated from the four pixels, two in the horizontal direction and two in the vertical direction. This is distributed as dot formation data of 4 pixels × 2 pixels. By doing so, the input resolution of 360 dpi × 360 dpi is converted to the target output resolution of 720 dpi × 360 dpi.

<4×2モードの場合>
図38は、4×2モードにおける中間ドットデータの振り分け方法を示す説明図である。図34で示したように、4×2モードの場合には、1画素がそれぞれ1つのブロック番号を有する。従って、図38のように、かかる1画素から生成される1つの中間ドットデータから、すべての画素を抽出し、これを4画素×2画素のドット形成用データとしてそのまま適用する。こうすることで、360dpi×360dpiの入力解像度が、目標とする1440dpi×720dpiの出力解像度に変換されることになる。
<4x2 mode>
FIG. 38 is an explanatory diagram showing a method for distributing intermediate dot data in the 4 × 2 mode. As shown in FIG. 34, in the 4 × 2 mode, each pixel has one block number. Therefore, as shown in FIG. 38, all pixels are extracted from one intermediate dot data generated from one pixel, and this is applied as it is as dot formation data of 4 pixels × 2 pixels. By doing so, the input resolution of 360 dpi × 360 dpi is converted to the target output resolution of 1440 dpi × 720 dpi.

<その他のモード>
出力解像度のモードとしては、そのほかに、出力解像度が720dpi×1440dpiとなる2×4モードや、出力解像度が1440dpi×1440dpiとなる4×4モードも存在するが、これらのモードでは、図22や図23で示した第1ドット個数テーブルDT1や第2ドット個数テーブルDT2の内容が異なっており、他のモードとはハーフトーン処理の態様が異なるため、本実施例では詳細な説明を省略する。
<Other modes>
Other output resolution modes include a 2 × 4 mode with an output resolution of 720 dpi × 1440 dpi and a 4 × 4 mode with an output resolution of 1440 dpi × 1440 dpi. In these modes, FIG. 22 and FIG. Since the contents of the first dot number table DT1 and the second dot number table DT2 shown in FIG. 23 are different and the mode of the halftone process is different from the other modes, detailed description is omitted in this embodiment.

H.変形例:
以上、本発明の種々の実施例について説明したが、本発明はこのような実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、ハードウェアで実現した機能をCPU151が所定のプログラムを実行することによりソフトウェア的によって実現するものとしてもよい。そのほか、以下のような変形が可能である。
H. Variations:
Although various embodiments of the present invention have been described above, the present invention is not limited to such embodiments, and it goes without saying that various configurations can be adopted without departing from the spirit of the present invention. For example, a function realized by hardware may be realized by software by the CPU 151 executing a predetermined program. In addition, the following modifications are possible.

(H−1)変形例1:
上記実施例では、印刷装置100単体で、色変換処理や量子化データのエンコード/デコードを行うものとした。これに対して、例えば、エンコードデータバッファEBよりも前段に位置する各デバイス、すなわち、色変換回路300やエンコーダ410、データセレクタ420を、印刷装置100とは異なる装置に組み込み、印刷装置100とかかる装置とを所定の通信路で接続するものとしてもよい。このような装置としては、例えば、コンピュータ900を用いることができる。コンピュータ900を用いる場合には、色変換回路300やエンコーダ410、データセレクタ420が実施する処理に相当する処理を、例えば、プリンタドライバなどによりソフトウェア的に実現することができる。こうすることにより、印刷装置100の処理負担を軽減することができる。また、エンコーダ410によってエンコードされた量子化データや、白黒エッジ処理ユニット320によってエンコードされた白黒エッジデータは、もとのRGBデータに対してデータ容量が大幅に削減されているため、通信データの容量が削減されることになる。
(H-1) Modification 1:
In the above embodiment, the color conversion process and the encoding / decoding of the quantized data are performed by the printing apparatus 100 alone. On the other hand, for example, each device located before the encoded data buffer EB, that is, the color conversion circuit 300, the encoder 410, and the data selector 420 are incorporated in a device different from the printing device 100, and the printing device 100 is used. It is good also as what connects an apparatus with a predetermined | prescribed communication path. As such a device, for example, a computer 900 can be used. When the computer 900 is used, processing corresponding to the processing performed by the color conversion circuit 300, the encoder 410, and the data selector 420 can be realized by software using, for example, a printer driver. By doing so, the processing burden on the printing apparatus 100 can be reduced. In addition, the quantized data encoded by the encoder 410 and the black and white edge data encoded by the black and white edge processing unit 320 are greatly reduced in data capacity compared to the original RGB data. Will be reduced.

(H−2)変形例2:
上記実施例では、順序値マトリクスのサイズを、128×64であるものとした。しかし、順序値マトリクスは、かかるサイズに限定されるものではなく、例えば、より大きなサイズ(例えば、512×256)とすることができる。大きなサイズの順序値マトリクスを用いれば、入力した画像のサイズが大きい場合であっても効率的にハーフトーン処理を行うことができる。
(H-2) Modification 2:
In the above embodiment, the size of the order value matrix is 128 × 64. However, the order value matrix is not limited to such a size, and may be a larger size (for example, 512 × 256). If an order value matrix having a large size is used, halftone processing can be efficiently performed even when the size of the input image is large.

図39および図40は、512×256の順序値マトリクスの一例を示す説明図である。図39には、実施例に示した128×64のサイズの順序値マトリクス(図中のハッチング部分)を、横方向に64画素分、オフセットさせつつタイル状に当てはめて構成した例を示している。また、図40には、実施例で示した128×64の順序値マトリクスを、縦方向に32画素分、オフセットさせつつタイル状に当てはめて構成した例を示している。このように、通常のサイズの順序値マトリクスを繰り返して適用することにより、容易に大きなサイズの順序値マトリクスを生成することができる。   39 and 40 are explanatory diagrams illustrating an example of an order value matrix of 512 × 256. FIG. 39 shows an example in which the 128 × 64 size order value matrix (hatched portion in the figure) shown in the embodiment is applied in a tile shape while offset by 64 pixels in the horizontal direction. . FIG. 40 shows an example in which the 128 × 64 order value matrix shown in the embodiment is applied in a tile shape while being offset by 32 pixels in the vertical direction. In this way, by repeatedly applying a normal size order value matrix, it is possible to easily generate a large size order value matrix.

大きなサイズの順序値マトリクスは、予めその全体をROM153に記録させておいてもよいが、ROM153には、通常の128×64のサイズの順序値マトリクスを記憶させておき、印刷装置100の起動時に、CPU151が、この小さなサイズの順序値マトリクスをロードして、図39や図40に示した配置に構成した上で、SDRAM152に展開するものとしてもよい。こうすることで、ROM153の記憶容量を削減することが可能になる。なお、順序値マトリクスを大きなサイズにする場合には、それに対応して黒データテーブルBTも大きなサイズにするものとする。   The order value matrix having a large size may be recorded in advance in the ROM 153, but the normal order value matrix of 128 × 64 size is stored in the ROM 153 so that the printing apparatus 100 is started up. The CPU 151 may load the small order value matrix, configure the arrangement shown in FIG. 39 or FIG. In this way, the storage capacity of the ROM 153 can be reduced. When the order value matrix is increased in size, the black data table BT is also increased in size accordingly.

(H−3)変形例3:
上記実施例では、白色と黒色の組み合わせのみによって構成される部分について高解像度のままハーフトーン処理を行うものとしたが、色の組み合わせはこれに限られることはない。例えば、白色と青色、あるいは白色と緑色などとすることもできる。この場合、例えば、ユーザがコンピュータ900や操作パネル140を用いて色の組み合わせを設定できるものとしてもよい。こうすることにより、文字等の色を黒色以外の色で表した場合などにも、その文字を高解像度のまま印刷することができる。なお、ユーザによって色の指定がされた場合には、黒データテーブルBTに換え、その色に応じたテーブルを作成するものとすることができる。この場合であっても、上述した黒データテーブルの作成方法に従えば、指定された色に応じたテーブルを容易に生成することが可能である。
(H-3) Modification 3:
In the above embodiment, the halftone process is performed with the high resolution for the portion constituted only by the combination of white and black, but the combination of colors is not limited to this. For example, white and blue or white and green can be used. In this case, for example, the user may be able to set a color combination using the computer 900 or the operation panel 140. In this way, even when the color of a character or the like is expressed by a color other than black, the character can be printed with a high resolution. When the user designates a color, a table corresponding to the color can be created instead of the black data table BT. Even in this case, if the black data table creation method described above is followed, a table corresponding to the designated color can be easily generated.

(H−4)変形例4:
上記実施例では、入力解像度が720dpi×720dpiで、出力解像度も720dpi×720dpiの場合における画像処理について説明したが、解像度はこれに限られることはない。例えば、両解像度は、600dpi×600dpiでもよいし、1200dpi×1200dpiでもよい。また、1440dpi×1440dpiでもよい。
(H-4) Modification 4:
In the above embodiment, the image processing in the case where the input resolution is 720 dpi × 720 dpi and the output resolution is 720 dpi × 720 dpi has been described, but the resolution is not limited to this. For example, both resolutions may be 600 dpi × 600 dpi, or 1200 dpi × 1200 dpi. Further, it may be 1440 dpi × 1440 dpi.

実施例としての印刷装置100の概略構成を示す説明図である。It is explanatory drawing which shows schematic structure of the printing apparatus 100 as an Example. 印刷装置100の内部構成を示す説明図である。2 is an explanatory diagram illustrating an internal configuration of the printing apparatus 100. FIG. インクヘッド211から異なる大きさのインク滴が吐出される原理を示す説明図である。FIG. 5 is an explanatory diagram illustrating a principle of ejecting ink droplets of different sizes from the ink head 211. SDRAM152のメモリマップを示す説明図である。3 is an explanatory diagram showing a memory map of an SDRAM 152. FIG. 色変換回路300の詳細な構成を示すブロック図である。2 is a block diagram showing a detailed configuration of a color conversion circuit 300. FIG. パスユニット390a〜390fの内部構成を示す説明図である。It is explanatory drawing which shows the internal structure of the pass units 390a-390f. 図5に示した白黒エッジ処理ユニット320の内部構成を示す説明図である。It is explanatory drawing which shows the internal structure of the monochrome edge processing unit 320 shown in FIG. 白黒エッジテーブルETの一例を示す説明図である。It is explanatory drawing which shows an example of the monochrome edge table ET. 図5に示した色変換ユニット330の内部構成を示す説明図である。FIG. 6 is an explanatory diagram showing an internal configuration of the color conversion unit 330 shown in FIG. 5. ハーフトーン回路400とヘッド駆動用データ変換回路500の詳細な構成を示すブロック図である。2 is a block diagram showing detailed configurations of a halftone circuit 400 and a head drive data conversion circuit 500. FIG. 従来の組織的ディザ法によるハーフトーン処理の概要を示す説明図である。It is explanatory drawing which shows the outline | summary of the halftone process by the conventional systematic dither method. 4×2の画素群についてドット数が変化する様子を示すグラフである。It is a graph which shows a mode that the number of dots changes about a 4x2 pixel group. 階調値とドット個数とその配置の関係を示す説明図である。It is explanatory drawing which shows the relationship between a gradation value, the number of dots, and its arrangement | positioning. 大中小のドットを形成可能な場合におけるドットのオン・オフの決定方法を示す説明図である。It is explanatory drawing which shows the determination method of ON / OFF of a dot in case large, medium, and small dots can be formed. 大中小ドットの配置の組み合わせを表す量子化データが階調値に応じて変化する様子を示す説明図である。It is explanatory drawing which shows a mode that the quantization data showing the combination of arrangement | positioning of a large / medium / small dot change according to a gradation value. 量子化テーブルQTの一例を示す説明図である。It is explanatory drawing which shows an example of the quantization table QT. 2×2モードにおけるブロック番号の判別方法を示す説明図である。It is explanatory drawing which shows the discrimination method of the block number in 2 * 2 mode. ブロック番号の実際の判別例を示す説明図である。It is explanatory drawing which shows the example of an actual discrimination | determination of a block number. 図10に示したデータセレクタ420の詳細な構成を示す説明図である。FIG. 11 is an explanatory diagram showing a detailed configuration of a data selector 420 shown in FIG. 10. エンコードデータバッファEBにエンコードデータを格納するまでの過程を概念的に示す説明図である。It is explanatory drawing which shows notionally the process until it stores encoded data in the encoded data buffer EB. 図10に示したデコーダ430の詳細な構成を示す説明図である。FIG. 11 is an explanatory diagram illustrating a detailed configuration of a decoder 430 illustrated in FIG. 10. 第1ドット個数テーブルDT1の一例を示す説明図である。It is explanatory drawing which shows an example of 1st dot number table DT1. 第2ドット個数テーブルDT2の一例を説明したものである。An example of the second dot number table DT2 will be described. 第2ドット個数データの一例を示す説明図である。It is explanatory drawing which shows an example of 2nd dot number data. 図13に示した順序値マトリクスOMの一部を拡大した図である。It is the figure which expanded a part of order value matrix OM shown in FIG. 第2ドット個数データと順序値マトリクスOMとに基づき8つの画素についてそれぞれドットを配置する手順を概念的に示す説明図である。It is explanatory drawing which shows notionally the procedure which arrange | positions a dot, respectively about eight pixels based on 2nd dot number data and order value matrix OM. 2×2モードにおいて中間ドットデータの振り分けを行う具体例を示す説明図である。It is explanatory drawing which shows the specific example which distributes intermediate dot data in 2 * 2 mode. 黒データテーブルBTの一例を示す説明図である。It is explanatory drawing which shows an example of the black data table BT. データ回転ユニット510によるデータの並べ直しの概念を示す説明図である。It is explanatory drawing which shows the concept of the rearrangement of the data by the data rotation unit. 黒データテーブル作成処理のフローチャートである。It is a flowchart of a black data table creation process. 1×1モードにおけるブロック番号の判別方法を示す説明図である。It is explanatory drawing which shows the discrimination method of the block number in 1 * 1 mode. 1×2モードにおけるブロック番号の判別方法を示す説明図である。It is explanatory drawing which shows the discrimination method of the block number in 1 * 2 mode. 2×1モードにおけるブロック番号の判別方法を示す説明図である。It is explanatory drawing which shows the discrimination method of the block number in 2 * 1 mode. 4×2モードにおけるブロック番号の判別方法を示す説明図である。It is explanatory drawing which shows the discrimination method of the block number in 4x2 mode. 1×1モードにおける中間ドットデータの振り分け方法を示す説明図である。It is explanatory drawing which shows the distribution method of the intermediate dot data in 1x1 mode. 1×2モードにおける中間ドットデータの振り分け方法を示す説明図である。It is explanatory drawing which shows the distribution method of the intermediate dot data in 1x2 mode. 2×1モードにおける中間ドットデータの振り分け方法を示す説明図である。It is explanatory drawing which shows the distribution method of the intermediate dot data in 2 * 1 mode. 4×2モードにおける中間ドットデータの振り分け方法を示す説明図である。It is explanatory drawing which shows the distribution method of the intermediate dot data in 4x2 mode. 512×256の順序値マトリクスの一例を示す説明図である。It is explanatory drawing which shows an example of the order value matrix of 512x256. 512×256の順序値マトリクスの一例を示す説明図である。It is explanatory drawing which shows an example of the order value matrix of 512x256.

符号の説明Explanation of symbols

100...印刷装置
110...スキャナ
120...メモリカードスロット
130...USBインタフェース
140...操作パネル
150...制御ユニット
151...CPU
152...SDRAM
153...ROM
154...EEPROM
155...画像処理ユニット
156...ヘッドコントロールユニット
160...印刷機構
200...プリンタ
210...キャリッジ
211...インクヘッド
212...インクカートリッジ
220...キャリッジモータ
230...紙送りモータ
260...駆動ベルト
270...プラテン
280...摺動軸
300...色変換回路
310...ライン入力ユニット
320...白黒エッジ処理ユニット
321...白黒エッジ判定回路
322...平均化回路
323...白黒エッジエンコード回路
324...セレクタ回路
330...色変換ユニット
331...変換回路
332...標準エッジ判定回路
333...ノイズ発生回路
334...スムージング回路
340...インク量補正ユニット
350...印刷縞抑制ユニット
360...ビット減縮ユニット
370...透明インク後処理ユニット
380...ブロック内平滑化ユニット
390a〜g...パスユニット
400...ハーフトーン回路
410...エンコーダ
411...ブロック番号判別回路
412...量子化回路
420...データセレクタ
430...デコーダ
431...データ判定回路
432...白黒エッジデータデコード回路
433...量子化データデコード回路
440...EB制御ユニット
500...ヘッド駆動用データ変換回路
510...データ回転ユニット
520...HB制御ユニット
900...コンピュータ
DESCRIPTION OF SYMBOLS 100 ... Printing apparatus 110 ... Scanner 120 ... Memory card slot 130 ... USB interface 140 ... Operation panel 150 ... Control unit 151 ... CPU
152 ... SDRAM
153 ... ROM
154 ... EEPROM
155 ... Image processing unit 156 ... Head control unit 160 ... Printing mechanism 200 ... Printer 210 ... Carriage 211 ... Ink head 212 ... Ink cartridge 220 ... Carriage motor 230. ..Paper feed motor 260 ... drive belt 270 ... platen 280 ... sliding shaft 300 ... color conversion circuit 310 ... line input unit 320 ... monochrome edge processing unit 321 ... monochrome Edge determination circuit 322 ... Averaging circuit 323 ... Monochrome edge encoding circuit 324 ... Selector circuit 330 ... Color conversion unit 331 ... Conversion circuit 332 ... Standard edge determination circuit 333 ... Noise Generating circuit 334 ... Smoothing circuit 340 ... Ink amount correction unit 350 ... Print stripe suppression unit 360 ... Bit reduction unit 370 ... Transparent ink post-processing unit 380 ... Smoothing unit in lock 390a to g ... pass unit 400 ... halftone circuit 410 ... encoder 411 ... block number discrimination circuit 412 ... quantization circuit 420 ... data selector 430 ... Decoder 431 ... Data determination circuit 432 ... Monochrome edge data decode circuit 433 ... Quantized data decode circuit 440 ... EB control unit 500 ... Head drive data conversion circuit 510 ... Data rotation unit 520 ... HB control unit 900 ... Computer

Claims (14)

所定解像度の画像データを構成する複数の画素の画素データをそれぞれ変換して、前記所定解像度以上の出力解像度で印刷媒体上にドットを形成可能なドット形成用データを生成する画像処理装置であって、
前記所定解像度の画像データを構成する各画素を、前記出力解像度と前記所定解像度との相違に従って前記印刷媒体上の複数のドットの集合であるブロックに対応させ、前記各画素の画素データを、複数の閾値からなるディザマトリックスに由来する複数種類のテーブルを参照しながら、前記ブロック内のドットの配置を表すドット形成用データに変換する第1のハーフトーン処理部と、
前記画素データの前記ドット形成用データへの変換に先立ち、一様な所定色で表され前記ディザマトリックスに対応する大きさを有する所定色画像データを構成する各画素データを、それぞれ前記第1のハーフトーン処理部に入力して前記所定色画像データ全体を前記ドット形成用データに変換することで、前記所定色画像データを前記画像データに繰り返し当て嵌めたと想定した場合における前記所定色の画素データの配置位置に応じて該所定色の画素データから前記ドット形成用データを直接的に求めるための所定色変換テーブルを予め生成する所定色変換テーブル生成部と、
前記所定解像度の画像データを取得する画像データ取得部と、
前記取得した画像データが有する複数の画素を処理用の画素群としてとりまとめ、該画素群内に、前記所定色により構成されるエッジが存在するか否かを判断する判断部と、
前記判断部により、前記画素群内に前記エッジが存在しないと判断した場合には、前記画素群を代表する一の画素データを前記第1のハーフトーン処理部に入力して該画素データを前記ドット形成用データに変換する非エッジ処理部と、
前記判断部により、前記画素群内に前記エッジが存在すると判断した場合には、該エッジを構成する所定色の画素の配置位置に応じたドット形成用データを、予め生成された前記所定色変換テーブルから取得することで、前記画素群内の前記所定色の画素データをドット形成用データに直接的に変換する第2のハーフトーン処理部とを備え
前記第1のハーフトーン処理部は、
前記ディザマトリックスを前記ブロックのサイズに応じて分割した複数のブロックのそれぞれについて、画素データを当該画素データが取り得る範囲において昇順に該ブロック内の前記閾値と順次比較した場合に順次得られる該ブロック内のドットの配置パターンを示す量子化データが、前記各画素データおよび前記各ブロックにそれぞれ対応付けられて記録されている量子化テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する量子化テーブル記憶部と、
前記各ブロック内に配置するドットの種類と数の組み合わせを一意に示す第1ドット個数データが、前記各量子化データおよび前記各ブロックに対応付けて記録されている第1ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する第1ドット個数テーブル記憶部と、
前記第1ドット個数データ毎に、該第1ドット個数データが示す前記ドットの種類と数の組み合わせが記録されている第2ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する第2ドット個数テーブル記憶部と、
前記所定解像度の画像データを構成する前記各画素の画素データを取得する取得部と、
前記各画素は、それぞれ前記複数のブロックのうちの一のブロックに対応しており、前記画像データ内に前記ディザマトリックスを構成する複数のブロックを繰り返し当て嵌めることにより、前記取得した画素データに位置的に対応するブロックを、前記複数のブロックの中から判別するブロック判別部と、
前記取得した画素データと前記判別されたブロックとに対応する量子化データを、前記量子化テーブルから取得するエンコード部と、
前記エンコード部によって取得された前記量子化データと、前記ブロック判別部によって判別されたブロックとに基づき、前記第1ドット個数テーブルを参照して、該量子化データと該ブロックとに対応する前記第1ドット個数データを取得するとともに、前記第2ドット個数テーブルを参照して、該取得された第1ドット個数データに対応する前記ドットの種類と数の組み合わせを取得し、該取得されたドットの種類と数の組み合わせに基づいて、前記判別されたブロック内に発生させるドットの配置を決定し、前記ドット形成用データを生成するデコード部と、を備える、
画像処理装置。
An image processing device that converts pixel data of a plurality of pixels constituting image data of a predetermined resolution , and generates dot formation data capable of forming dots on a print medium at an output resolution equal to or higher than the predetermined resolution. ,
Each pixel constituting the image data of the predetermined resolution, in accordance with the difference between the and the output resolution predetermined resolution so as to correspond to the block which is a set of multiple dots on the printing medium, prior SL of each pixel A first halftone processing unit that converts pixel data into dot formation data representing the arrangement of dots in the block while referring to a plurality of types of tables derived from a dither matrix composed of a plurality of threshold values;
Prior to the conversion of the pixel data into the dot formation data, each pixel data constituting predetermined color image data represented by a uniform predetermined color and having a size corresponding to the dither matrix is respectively set in the first data . The pixel data of the predetermined color when it is assumed that the predetermined color image data is repeatedly applied to the image data by converting the entire predetermined color image data into the dot formation data by inputting to the halftone processing unit A predetermined color conversion table generating unit for generating in advance a predetermined color conversion table for directly obtaining the dot formation data from the pixel data of the predetermined color according to the arrangement position of
An image data acquisition unit for acquiring image data of the predetermined resolution;
A determination unit that collects a plurality of pixels included in the acquired image data as a processing pixel group, and determines whether an edge constituted by the predetermined color exists in the pixel group;
By the determination unit, when the edges in the pixel group is determined not to exist, enter one of the pixel data representing the pixel group in the first half-tone processing unit, the pixel data A non-edge processing unit for converting into the dot formation data;
By the determination unit, when it is determined that the edge in the pixel group is present, the dot formation data corresponding to the position of the predetermined color of the pixels constituting the edge, previously generated said predetermined color conversion A second halftone processing unit that directly converts pixel data of the predetermined color in the pixel group into dot formation data by obtaining from the table ,
The first halftone processing unit includes:
For each of a plurality of blocks obtained by dividing the dither matrix according to the block size, the blocks obtained sequentially when pixel data is sequentially compared with the threshold values in the block in ascending order within the range that the pixel data can take. A quantization table in which quantization data indicating an arrangement pattern of dots is recorded in association with each pixel data and each block is stored as one of the plurality of types of tables. A quantization table storage unit;
A first dot number table in which first dot number data uniquely indicating a combination of types and numbers of dots arranged in each block is recorded in association with each quantized data and each block, A first dot number table storage unit that stores the table as one of a plurality of types of tables;
For each of the first dot number data, a second dot number table in which a combination of the type and number of dots indicated by the first dot number data is recorded is stored as one table among the plurality of types of tables. A second dot number table storage unit,
An acquisition unit for acquiring pixel data of each pixel constituting the image data of the predetermined resolution;
Each of the pixels corresponds to one block of the plurality of blocks, and is positioned in the acquired pixel data by repeatedly fitting a plurality of blocks constituting the dither matrix in the image data. And a block discriminating unit for discriminating corresponding blocks from among the plurality of blocks,
An encoding unit that acquires quantization data corresponding to the acquired pixel data and the determined block from the quantization table;
Based on the quantized data acquired by the encoding unit and the block determined by the block determining unit, the first dot number table is referred to and the quantized data and the block corresponding to the block are referred to. Acquire 1 dot number data and refer to the second dot number table to acquire a combination of the type and number of dots corresponding to the acquired first dot number data. A decoding unit that determines the arrangement of dots to be generated in the determined block based on a combination of type and number, and generates the dot formation data;
Image processing device.
請求項1に記載の画像処理装置であって、
前記判断部は、前記画素群内に、前記所定色の画素と白色の画素とが混在した場合に、前記エッジが存在すると判断する
画像処理装置。
The image processing apparatus according to claim 1,
The determination unit determines that the edge is present when the predetermined color pixel and the white pixel are mixed in the pixel group.
請求項2に記載の画像処理装置であって、
前記判断部は、前記エッジが存在すると判断した場合に、前記画素群内における前記所定色の画素と前記白色の画素との配置に応じて、該画素群内の各画素が所定色の画素であるか白色の画素であるかを示す二値データを生成し、該二値データを前記第2のハーフトーン処理部に入力する手段を備え、
前記第2のハーフトーン処理部は、前記判断部から受け取った前記二値データに基づいて、前記画素群内の前記所定色を表す画素について前記所定色変換テーブルから、該画素の位置に応じ前記ドット形成用データを取得する
画像処理装置。
The image processing apparatus according to claim 2,
When the determination unit determines that the edge is present, each pixel in the pixel group is a pixel of a predetermined color according to the arrangement of the pixel of the predetermined color and the white pixel in the pixel group. Means for generating binary data indicating whether the pixel is a white pixel or not, and inputting the binary data to the second halftone processing unit;
The second halftone processing unit responds to the position of the pixel from the predetermined color conversion table for the pixel representing the predetermined color in the pixel group based on the binary data received from the determination unit . An image processing apparatus that acquires the dot formation data.
請求項1ないし3のいずれか一項に記載の画像処理装置であって、
前記所定色変換テーブル生成部は、前記画像処理装置の起動時に、前記所定色変換テーブルを生成する
画像処理装置。
The image processing apparatus according to any one of claims 1 to 3 ,
The predetermined color conversion table generation unit generates the predetermined color conversion table when the image processing apparatus is activated.
請求項1ないし3のいずれか一項に記載の画像処理装置であって、
前記所定色変換テーブル生成部は、前記画像処理装置が前記画像データを取得した際に、前記所定色変換テーブルを生成する
画像処理装置。
The image processing apparatus according to any one of claims 1 to 3 ,
The predetermined color conversion table generation unit generates the predetermined color conversion table when the image processing apparatus acquires the image data.
請求項1ないし5のいずれか一項に記載の画像処理装置であって、
前記非エッジ処理部は、前記画素群を一つの画素とする解像度変換を行って、前記画素群を代表する一の画素データを生成し、該画素データを前記第1のハーフトーン処理部に入力する
画像処理装置。
An image processing apparatus according to any one of claims 1 to 5 ,
The non-edge processing unit performs resolution conversion using the pixel group as one pixel, generates one pixel data representing the pixel group, and inputs the pixel data to the first halftone processing unit. Image processing device.
請求項6に記載の画像処理装置であって、
前記非エッジ処理部は、前記画素群内の画素の階調値を平均化することにより、前記解像度変換を行う
画像処理装置。
The image processing apparatus according to claim 6,
The non-edge processing unit performs the resolution conversion by averaging gradation values of pixels in the pixel group.
請求項1ないし7のいずれか一項に記載の画像処理装置であって、  An image processing apparatus according to any one of claims 1 to 7,
前記第1のハーフトーン処理部は、更に、前記ブロック内の閾値の序列に基づいて該ブロック内にドットを発生させる順序が前記ブロック毎に規定された順序値マトリクスを記憶する順序値マトリクス記憶部を備え、  The first halftone processing unit further stores an order value matrix storing an order value matrix in which the order of generating dots in the block is defined for each block based on an order of thresholds in the block With
前記デコード部は、前記判別されたブロックに対応する前記順序値マトリクスに基づき、前記ドットの配置を行う  The decoding unit arranges the dots based on the order value matrix corresponding to the determined block.
画像処理装置。  Image processing device.
請求項に記載の画像処理装置であって、
前記デコードは、前記ドットの種類のうち、大きなサイズのドットから前記順序値マトリクスに規定された順序に従って前記判別されたブロック内に配置を行う
画像処理装置。
The image processing apparatus according to claim 8 ,
The image processing apparatus, wherein the decoding unit performs arrangement in the determined block in accordance with an order defined in the order value matrix from a dot of a large size among the types of dots.
請求項1ないしのいずれか一項に記載の画像処理装置であって、
更に、前記判断部による判断結果に対応して前記第1のハーフトーン処理部または前記第2のハーフトーン処理部から前記ドット形成用データを受け取り、該ドット形成用データに基づき、前記印刷媒体上に前記ドットを形成するドット形成手段を備える
画像処理装置。
An image processing apparatus according to any one of claims 1 to 9,
Further, the dot formation data is received from the first halftone processing unit or the second halftone processing unit in response to the determination result by the determination unit, and on the print medium based on the dot formation data An image processing apparatus comprising dot forming means for forming the dots.
請求項10に記載の画像処理装置であって、
前記ドット形成手段は、1種類のインクにつき、インク滴を吐出するノズルを前記印刷媒体の送り方向に所定のピッチ間隔で複数個備え、前記ピッチ間隔は、該ドット形成手段によって最終的に前記印刷媒体上に形成される隣接したラスタ間のピッチの整数倍であり、
前記第1のハーフトーン処理部は、前記ドット形成手段による前記ラスタの形成にあたり、一度に形成されるラスタに対応するドット形成用データのみを生成する
画像処理装置。
The image processing apparatus according to claim 10 ,
The dot forming means includes a plurality of nozzles for ejecting ink droplets for one type of ink at a predetermined pitch interval in the feeding direction of the print medium, and the pitch interval is finally determined by the dot forming means. An integer multiple of the pitch between adjacent rasters formed on the medium,
The first halftone processing unit generates only dot formation data corresponding to a raster formed at a time when the raster is formed by the dot forming unit.
所定解像度の画像データを構成する複数の画素の画素データをそれぞれ変換して、前記所定解像度以上の出力解像度で印刷媒体上にドットを形成可能なドット形成用データを生成する画像処理方法であって、
(a)前記所定解像度の画像データを構成する各画素を、前記出力解像度と前記所定解像度との相違に従って前記印刷媒体上の複数のドットの集合であるブロックに対応させ、前記各画素の画素データを、複数の閾値からなるディザマトリックスに由来する複数種類のテーブルを参照しながら、前記ブロック内のドットの配置を表すドット形成用データに変換する工程と、
(b)前記画素データの前記ドット形成用データへの変換に先立ち、一様な所定色で表され前記ディザマトリックスに対応する大きさを有する所定色画像データを構成する各画素データ全体を、それぞれ前記工程(a)により前記ドット形成用データに変換することで、前記所定色画像データを前記画像データに繰り返し当て嵌めたと想定した場合における前記所定色の画素データの配置位置に応じて該所定色の画素データから前記ドット形成用データを直接的に求めるための所定色変換テーブルを予め生成する工程と、
(c)前記所定解像度の画像データを取得する工程と、
(d)前記取得した画像データが有する複数の画素を処理用の画素群としてとりまとめ、該画素群内に、前記所定色により構成されるエッジが存在するか否かを判断する工程と、
(e)前記工程(d)により、前記画素群内に前記エッジが存在しないと判断された場合には、前記画素群を代表する一の画素データを前記工程(a)により前記ドット形成用データに変換する工程と、
(f)前記工程(d)により、前記画素群内に前記エッジが存在すると判断された場合には、該エッジを構成する所定色の画素の配置位置に応じたドット形成用データを、予め生成された前記所定色変換テーブルから取得することで、前記画素群内の前記所定色の画素データをドット形成用データに直接的に変換する工程とを備え
前記工程(a)は、
(a−1)前記ディザマトリックスを前記ブロックのサイズに応じて分割した複数のブロックのそれぞれについて、画素データを当該画素データが取り得る範囲において昇順に該ブロック内の前記閾値と順次比較した場合に順次得られる該ブロック内のドットの配置パターンを示す量子化データが、前記各画素データおよび前記各ブロックにそれぞれ対応付けられて記録されている量子化テーブルを、前記複数種類のテーブルのうちの一のテーブルとして用意する工程と、
(a−2)前記各ブロック内に配置するドットの種類と数の組み合わせを一意に示す第1ドット個数データが、前記各量子化データおよび前記各ブロックに対応付けて記録されている第1ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして用意する工程と、
(a−3)前記第1ドット個数データ毎に、該第1ドット個数データが示す前記ドットの種類と数の組み合わせが記録されている第2ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして用意する工程と、
(a−4)前記所定解像度の画像データを構成する前記各画素の画素データを取得する工程と、
(a−5)前記各画素は、それぞれ前記複数のブロックのうちの一のブロックに対応しており、前記画像データ内に前記ディザマトリックスを構成する複数のブロックを繰り返し当て嵌めることにより、前記取得した画素データに位置的に対応するブロックを、前記複数のブロックの中から判別する工程と、
(a−6)前記取得した画素データと前記判別されたブロックとに対応する量子化データを、前記量子化テーブルから取得する工程と、
(a−7)前記工程(a−6)によって取得された前記量子化データと、前記工程(a−5)によって判別されたブロックとに基づき、前記第1ドット個数テーブルを参照して、該量子化データと該ブロックとに対応する前記第1ドット個数データを取得するとともに、前記第2ドット個数テーブルを参照して、該取得された第1ドット個数データに対応する前記ドットの種類と数の組み合わせを取得し、該取得されたドットの種類と数の組み合わせに基づいて、前記判別されたブロック内に発生させるドットの配置を決定し、前記ドット形成用データを生成する工程と、を備える、
画像処理方法。
An image processing method for generating dot formation data capable of forming dots on a printing medium at an output resolution equal to or higher than the predetermined resolution by converting pixel data of a plurality of pixels constituting image data of a predetermined resolution. ,
(A) the pixels constituting the image data of the predetermined resolution, in accordance with the difference between the and the output resolution predetermined resolution so as to correspond to the block which is a set of a plurality of dots on the print medium, before Symbol each a step of converting the pixel data of the pixel, with reference to the plurality of types of tables derived from the dither matrix composed of a plurality of threshold values, the dot formation data representing the dot arrangement in the block,
(B) Prior to the conversion of the pixel data into the dot formation data, the entire pixel data constituting the predetermined color image data represented by a uniform predetermined color and having a size corresponding to the dither matrix, The predetermined color is converted according to the arrangement position of the pixel data of the predetermined color when it is assumed that the predetermined color image data is repeatedly applied to the image data by converting into the dot formation data in the step (a). a step of previously generating a predetermined color conversion table from the pixel data for obtaining directly the data the dot formation,
(C) obtaining image data of the predetermined resolution;
(D) collecting a plurality of pixels included in the acquired image data as a processing pixel group, and determining whether an edge constituted by the predetermined color exists in the pixel group;
(E) by the step (d), when the edges in the pixel group is determined not exist, the dot formation data to one pixel data representing the pixel group by the step (a) Converting to
The (f) said step (d), when the edges in the pixel group is determined to exist, the dot formation data corresponding to the position of the predetermined color of the pixels constituting the edge, preformed A step of directly converting pixel data of the predetermined color in the pixel group into dot formation data by obtaining the predetermined color conversion table .
The step (a)
(A-1) For each of a plurality of blocks obtained by dividing the dither matrix according to the block size, when pixel data is sequentially compared with the threshold value in the block in ascending order within the range that the pixel data can take. A quantization table in which the quantization data indicating the dot arrangement pattern in the block sequentially obtained is recorded in association with each of the pixel data and each of the blocks is recorded as one of the plurality of types of tables. Preparing as a table,
(A-2) First dots in which first dot number data uniquely indicating a combination of types and numbers of dots arranged in each block is recorded in association with each quantized data and each block Preparing a number table as one of the plurality of types of tables;
(A-3) For each of the first dot number data, a second dot number table in which a combination of the type and number of dots indicated by the first dot number data is recorded is selected from the plurality of types of tables. Preparing as one table,
(A-4) obtaining pixel data of each pixel constituting the image data of the predetermined resolution;
(A-5) Each of the pixels corresponds to one block of the plurality of blocks, and the plurality of blocks constituting the dither matrix are repeatedly applied to the image data to obtain the acquisition Determining a block corresponding to the pixel data from among the plurality of blocks;
(A-6) acquiring quantized data corresponding to the acquired pixel data and the determined block from the quantization table;
(A-7) Based on the quantized data acquired in the step (a-6) and the blocks determined in the step (a-5), referring to the first dot number table, The first dot number data corresponding to the quantized data and the block is acquired, and referring to the second dot number table, the type and number of the dots corresponding to the acquired first dot number data And a step of determining a dot arrangement to be generated in the determined block based on the combination of the acquired dot type and number, and generating the dot formation data. ,
Image processing method.
所定解像度の画像データを構成する複数の画素の画素データをそれぞれ変換して、前記所定解像度以上の出力解像度で印刷媒体上にドットを形成可能なドット形成用データを生成するためのコンピュータプログラムであって、
前記所定解像度の画像データを構成する各画素を、前記出力解像度と前記所定解像度との相違に従って前記印刷媒体上の複数のドットの集合であるブロックに対応させ、前記各画素の画素データを、複数の閾値からなるディザマトリックスに由来する複数種類のテーブルを参照しながら、前記ブロック内のドットの配置を表すドット形成用データに変換する第1のハーフトーン処理機能と、
前記画素データの前記ドット形成用データへの変換に先立ち、一様な所定色で表され前記ディザマトリックスに対応する大きさを有する所定色画像データを構成する各画素データを、それぞれ前記第1のハーフトーン処理機能に入力して前記所定色画像データ全体を前記ドット形成用データに変換することで、前記所定色画像データを前記画像データに繰り返し当て嵌めたと想定した場合における前記所定色の画素データの配置位置に応じて該所定色の画素データから前記ドット形成用データを直接的に求めるための所定色変換テーブルを予め生成する所定色変換テーブル生成機能と、
前記所定解像度の画像データを取得する画像データ取得機能と、
前記取得した画像データが有する複数の画素を処理用の画素群としてとりまとめ、該画素群内に、前記所定色により構成されるエッジが存在するか否かを判断する判断機能と、
前記判断機能により、前記画素群内に前記エッジが存在しないと判断した場合には、前記画素群を代表する一の画素データを前記第1のハーフトーン処理機能に入力して該画素データを前記ドット形成用データに変換する非エッジ処理機能と、
前記判断機能により、前記画素群内に前記エッジが存在すると判断した場合には、該エッジを構成する所定色の画素の配置位置に応じたドット形成用データを、予め生成された前記所定色変換テーブルから取得することで、前記画素群内の前記所定色の画素データをドット形成用データに直接的に変換する第2のハーフトーン処理機能と、をコンピュータに実現させるためのコンピュータプログラムであり、
前記第1のハーフトーン処理機能は、
前記ディザマトリックスを前記ブロックのサイズに応じて分割した複数のブロックのそれぞれについて、画素データを当該画素データが取り得る範囲において昇順に該ブロック内の前記閾値と順次比較した場合に順次得られる該ブロック内のドットの配置パターンを示す量子化データが、前記各画素データおよび前記各ブロックにそれぞれ対応付けられて記録されている量子化テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する量子化テーブル記憶機能と、
前記各ブロック内に配置するドットの種類と数の組み合わせを一意に示す第1ドット個数データが、前記各量子化データおよび前記各ブロックに対応付けて記録されている第1ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する第1ドット個数テーブル記憶機能と、
前記第1ドット個数データ毎に、該第1ドット個数データが示す前記ドットの種類と数の組み合わせが記録されている第2ドット個数テーブルを、前記複数種類のテーブルのうちの一のテーブルとして記憶する第2ドット個数テーブル記憶機能と、
前記所定解像度の画像データを構成する前記各画素の画素データを取得する取得機能と、
前記各画素は、それぞれ前記複数のブロックのうちの一のブロックに対応しており、前記画像データ内に前記ディザマトリックスを構成する複数のブロックを繰り返し当て嵌めることにより、前記取得した画素データに位置的に対応するブロックを、前記複数のブロックの中から判別するブロック判別機能と、
前記取得した画素データと前記判別されたブロックとに対応する量子化データを、前記量子化テーブルから取得するエンコード機能と、
前記エンコード機能によって取得された前記量子化データと、前記ブロック判別機能によって判別されたブロックとに基づき、前記第1ドット個数テーブルを参照して、該量子化データと該ブロックとに対応する前記第1ドット個数データを取得するとともに、前記第2ドット個数テーブルを参照して、該取得された第1ドット個数データに対応する前記ドットの種類と数の組み合わせを取得し、該取得されたドットの種類と数の組み合わせに基づいて、前記判別されたブロック内に発生させるドットの配置を決定し、前記ドット形成用データを生成するデコード機能と、を含む、
コンピュータプログラム。
A computer program for converting pixel data of a plurality of pixels constituting image data of a predetermined resolution to generate dot formation data capable of forming dots on a print medium at an output resolution higher than the predetermined resolution. And
Each pixel constituting the image data of the predetermined resolution, in accordance with the difference between the and the output resolution predetermined resolution so as to correspond to the block which is a set of multiple dots on the printing medium, prior SL of each pixel A first halftone processing function for converting pixel data into dot formation data representing an arrangement of dots in the block while referring to a plurality of types of tables derived from a dither matrix composed of a plurality of threshold values;
Prior to the conversion of the pixel data into the dot formation data, each pixel data constituting predetermined color image data represented by a uniform predetermined color and having a size corresponding to the dither matrix is respectively set in the first data . The pixel data of the predetermined color when it is assumed that the predetermined color image data is repeatedly applied to the image data by converting the entire predetermined color image data into the dot formation data by inputting to the halftone processing function A predetermined color conversion table generating function for generating in advance a predetermined color conversion table for directly obtaining the dot formation data from the pixel data of the predetermined color according to the arrangement position of
An image data acquisition function for acquiring image data of the predetermined resolution;
A determination function for collecting a plurality of pixels included in the acquired image data as a pixel group for processing and determining whether or not an edge constituted by the predetermined color exists in the pixel group;
By the determining function, when the edge in the pixel group is determined not to exist, enter one of the pixel data representing the pixel group in the first half-tone processing function, the pixel data A non-edge processing function for converting into the dot formation data;
By the determining function, if it is determined that the edge in the pixel group is present, the dot formation data corresponding to the position of the predetermined color of the pixels constituting the edge, previously generated said predetermined color conversion A computer program for causing a computer to realize a second halftone processing function for directly converting pixel data of the predetermined color in the pixel group into dot formation data by obtaining from a table ,
The first halftone processing function is:
For each of a plurality of blocks obtained by dividing the dither matrix according to the block size, the blocks obtained sequentially when pixel data is sequentially compared with the threshold values in the block in ascending order within the range that the pixel data can take. A quantization table in which quantization data indicating an arrangement pattern of dots is recorded in association with each pixel data and each block is stored as one of the plurality of types of tables. A quantization table storage function;
A first dot number table in which first dot number data uniquely indicating a combination of types and numbers of dots arranged in each block is recorded in association with each quantized data and each block, A first dot number table storage function for storing as one of a plurality of types of tables;
For each of the first dot number data, a second dot number table in which a combination of the type and number of dots indicated by the first dot number data is recorded is stored as one table among the plurality of types of tables. A second dot number table storage function,
An acquisition function for acquiring pixel data of each pixel constituting the image data of the predetermined resolution;
Each of the pixels corresponds to one block of the plurality of blocks, and is positioned in the acquired pixel data by repeatedly fitting a plurality of blocks constituting the dither matrix in the image data. And a block discrimination function for discriminating corresponding blocks from the plurality of blocks,
An encoding function for acquiring quantized data corresponding to the acquired pixel data and the determined block from the quantization table;
Based on the quantized data acquired by the encoding function and the block determined by the block determining function, the first dot number table is referred to and the quantized data and the block corresponding to the block are referred to. Acquire 1 dot number data and refer to the second dot number table to acquire a combination of the type and number of dots corresponding to the acquired first dot number data. A decoding function that determines the arrangement of dots to be generated in the determined block based on a combination of type and number, and generates the dot formation data;
Computer program.
請求項13に記載のコンピュータプログラムを記録したコンピュータ読取可能な記録媒体。 A computer-readable recording medium on which the computer program according to claim 13 is recorded.
JP2005208256A 2005-07-11 2005-07-19 Image processing device Expired - Fee Related JP4442525B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005208256A JP4442525B2 (en) 2005-07-19 2005-07-19 Image processing device
US11/484,508 US20070115506A1 (en) 2005-07-11 2006-07-10 Image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005208256A JP4442525B2 (en) 2005-07-19 2005-07-19 Image processing device

Publications (2)

Publication Number Publication Date
JP2007028262A JP2007028262A (en) 2007-02-01
JP4442525B2 true JP4442525B2 (en) 2010-03-31

Family

ID=37788426

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005208256A Expired - Fee Related JP4442525B2 (en) 2005-07-11 2005-07-19 Image processing device

Country Status (1)

Country Link
JP (1) JP4442525B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6711003B2 (en) * 2016-02-22 2020-06-17 富士ゼロックス株式会社 Data processing device and program
JP7381211B2 (en) * 2019-03-18 2023-11-15 セイコーエプソン株式会社 Image processing device and image processing method

Also Published As

Publication number Publication date
JP2007028262A (en) 2007-02-01

Similar Documents

Publication Publication Date Title
US20070115506A1 (en) Image processing apparatus
US7532360B2 (en) Image output apparatus
US20150092240A1 (en) Image processing apparatus and image processing method
JP4696804B2 (en) Image output device
JP2008162094A (en) Image forming apparatus, its control method, and image forming system
US8462387B2 (en) Image processing device, printing apparatus, and image processing method
JP5994919B2 (en) Printing apparatus, printing method, and computer program
JP4513702B2 (en) Image output device
WO2004084540A1 (en) Image processing device and image processing method for performing conversion of color image data
JP6252003B2 (en) Printing apparatus, printing method, image processing apparatus, and program
JP6193594B2 (en) Image processing apparatus, image processing method, image processing system, and program
JP4475189B2 (en) Image processing device
JP4626473B2 (en) Image processing apparatus, image output apparatus and method
US20110116115A1 (en) Image processor and image processing method
JP2011259121A (en) Image processing apparatus and program
JP6390405B2 (en) Printing apparatus, printing method, program, and image processing apparatus
JP4442525B2 (en) Image processing device
JP2005088342A (en) Color reduction process of improvement ink
JP2010137536A (en) Printer, and printing method
JP2010130303A (en) Print controller, printing apparatus, print control method, and computer program
JP6307939B2 (en) Image forming apparatus and image forming method
JP2005067054A (en) Discharge control of improved ink
JP2014069534A (en) Image processing apparatus and image processing method
JP2011031548A (en) Image processor
JP2011020408A (en) Image processing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090811

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091009

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091222

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100104

R150 Certificate of patent or registration of utility model

Ref document number: 4442525

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140122

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees