JP2009020617A - Image processor, image processing method, and ink jet recording device - Google Patents

Image processor, image processing method, and ink jet recording device Download PDF

Info

Publication number
JP2009020617A
JP2009020617A JP2007181441A JP2007181441A JP2009020617A JP 2009020617 A JP2009020617 A JP 2009020617A JP 2007181441 A JP2007181441 A JP 2007181441A JP 2007181441 A JP2007181441 A JP 2007181441A JP 2009020617 A JP2009020617 A JP 2009020617A
Authority
JP
Japan
Prior art keywords
data
pixel
quantized
gradation
color
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.)
Granted
Application number
JP2007181441A
Other languages
Japanese (ja)
Other versions
JP4838769B2 (en
Inventor
Tomokazu Yanagiuchi
智和 柳内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2007181441A priority Critical patent/JP4838769B2/en
Publication of JP2009020617A publication Critical patent/JP2009020617A/en
Application granted granted Critical
Publication of JP4838769B2 publication Critical patent/JP4838769B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology for forming an image of high picture quality while reducing the complexity of processing. <P>SOLUTION: This image processor is provided with a means for converting the respective pixels of data expressed with the total value of the respective pixels of n pieces of i gradation data into the quantized value of n+1 gradation, and for generating the first quantized data; a means for discriminating the n pieces of color components into a first color group in which k pieces of colors are included and a second color group in which residual n-k pieces of colors are included, and for converting the data expressed with difference quantity between the respective pixels of the data expressed with the total value of the respective pixels of the (n-k) pieces of i gradation data and the respective pixels of the first quantized data into the quantized value of the (k+1) gradation, and for generating second quantized data; a means for generating the data expressed with the difference quantity between the respective pixels of the first quantized data and the respective pixels of the second quantized data as third quantized data; and a control means for recursively executing the means, and for controlling the generation of n pieces of two gradation data. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、カラー画像データに基づいて各色2階調の画像データを生成する画像処理技術に関するものである。   The present invention relates to an image processing technique for generating image data of two gradations for each color based on color image data.

ワードプロセッサ、パーソナルコンピュータ、ファクシミリ等に於ける情報出力装置として、所望される文字や画像等の情報を用紙やフィルム等のシート状の記録媒体に記録を行う記録装置が用いられている。このような記録装置には様々な記録方式のものがあるが、記録媒体に記録剤を付着させることで記録媒体上にテキストや画像を形成する方式が広く実用化されている。このような方式の代表例として、インクジェット記録装置がある。   2. Description of the Related Art As information output devices in word processors, personal computers, facsimiles, and the like, recording devices that record information such as desired characters and images on a sheet-like recording medium such as paper or film are used. Such recording apparatuses include various recording systems, and a system for forming text and images on a recording medium by attaching a recording agent to the recording medium has been widely put into practical use. A typical example of such a system is an ink jet recording apparatus.

インクジェット記録装置では、記録速度の向上や高画質化等のために、同一色同一濃度のインクを吐出可能な複数のインク吐出口(ノズル)を集積配列したノズル群を有する記録ヘッドを用いる。さらに、画質を向上するために、同一色相で濃度の異なるインクを用いるものや、同一色かつ同一濃度のインクの1回あたりの吐出量を複数段階に制御可能としたノズル群が設けられる場合もある。このような画像形成装置においては、1画素が多値で表現される入力画像データをドットの記録信号に対応させた2値画像(入力階調数よりは少ない階調数を有する画像)に変換し記録を行う。   In an ink jet recording apparatus, a recording head having a nozzle group in which a plurality of ink discharge ports (nozzles) capable of discharging ink of the same color and the same density are integrated is used in order to improve the recording speed and improve the image quality. Furthermore, in order to improve the image quality, there may be provided a nozzle group that uses ink of the same hue and different density, or a nozzle group that can control the discharge amount of ink of the same color and the same density per time in a plurality of stages. is there. In such an image forming apparatus, input image data in which one pixel is expressed in multiple values is converted into a binary image (an image having a smaller number of gradations than the number of input gradations) corresponding to a dot recording signal. Record.

2値画像に変換する方法として、R.Floydらによる誤差拡散法(非特許文献1)がある。この誤差拡散法は、ある画素で生じた二値化誤差を以降の複数画素へ拡散することにより、擬似的に階調表現を行うものである。そのため、同一色相で濃度の異なるインク、あるいは、異なる色相のインクのドット配置を制御するために誤差拡散法を用いる画像処理技術が提案されている。例えば、特許文献1には複数種類のドットが重ならないようにドットを配置する手法が開示されている。
特開2004−336570号公報 R.Floyd他、“An adaptive algorithm for spatial gray scale", SID International Symposium Digest of Technical Papers, vol4.3, 1975, pp.36-37
As a method for converting to a binary image, R.I. There is an error diffusion method by Floyd et al. In this error diffusion method, pseudo gradation expression is performed by diffusing a binarization error generated in a certain pixel to a plurality of subsequent pixels. Therefore, an image processing technique using an error diffusion method has been proposed in order to control the dot arrangement of inks having the same hue and different densities or inks having different hues. For example, Patent Document 1 discloses a method of arranging dots so that a plurality of types of dots do not overlap.
JP 2004-336570 A R. Floyd et al., “An adaptive algorithm for spatial gray scale”, SID International Symposium Digest of Technical Papers, vol4.3, 1975, pp.36-37

しかしながら、上述の特許文献1による手法では、LUT(LookUp Table)を用いることにより複数のインクプレーンに関して互いの配置に制約を持ちながらそれぞれの擬似階調出力値が決定される。そのため、濃度の高いマゼンタドットは視認されやすくなるが、濃度の低いイエロードットは視認されにくくなる。上記処理結果として、ドット配置に制約を持ちながら打たれたマゼンタドットのみ視認されやすくなるため、粒状感が悪化してしまうことになる。   However, in the method according to Patent Document 1 described above, by using an LUT (LookUp Table), each pseudo gradation output value is determined while restricting the arrangement of a plurality of ink planes. For this reason, magenta dots having a high density are easily visually recognized, but yellow dots having a low density are hardly visually recognized. As a result of the above processing, only the magenta dots that have been struck with restrictions on the dot arrangement are likely to be visually recognized, and the graininess is deteriorated.

さらに、特許文献1による手法では、インクプレーンの数が増加した場合、処理が複雑化する。たとえば、4種類のインクプレーンを対象とする場合、4次元LUTが必要となる。近年のインクジェットプリンタではシアン(C)、マゼンタ(M)、イエロー(Y)の基本インクに、レッド(R)、グリーン(G)、ブルー(B)の特色インクが追加されることがある。そのため、特色インクを含めたドット配置制御を考えると、処理の複雑度の観点から特許文献1の手法は実用的でない。   Furthermore, in the method according to Patent Document 1, when the number of ink planes increases, the processing becomes complicated. For example, when targeting four types of ink planes, a four-dimensional LUT is required. In recent inkjet printers, special inks of red (R), green (G), and blue (B) may be added to the basic inks of cyan (C), magenta (M), and yellow (Y). Therefore, considering the dot arrangement control including spot color ink, the method of Patent Document 1 is not practical from the viewpoint of processing complexity.

本発明は上述の問題点に鑑みなされたものであり、処理の複雑度を低減しつつより高画質な画像形成を可能とする技術を提供することを目的とする。   The present invention has been made in view of the above-described problems, and an object of the present invention is to provide a technique that enables image formation with higher image quality while reducing processing complexity.

上述の問題点の1つ以上を解決するために、本発明の画像処理装置は以下の構成を備える。すなわち、画像データを構成するn個(nは2以上の正整数)の色成分の各々に対応するn個のi階調(iは2以上の正整数)データからn個の2階調データを生成する画像処理装置であって、前記n個のi階調データの各画素の合計値により表現されるデータの各画素を誤差拡散処理によりn+1階調の量子化値に変換し、n個合計のn+1階調データに対応する第1の量子化データを生成する第1の量子化データ生成手段と、前記n個の色成分を、相対的に視認性の高いk個(k<nの正整数)の色が含まれる第1の色グループと相対的に視認性の低いn−k個の色が含まれる第2の色グループとに区分し、該第2の色グループに対応するn−k個のi階調データの各画素の合計値により表現されるデータの各画素と前記第1の量子化データの各画素との差分量により表現されるデータを誤差拡散処理によりk+1階調の量子化値に変換し、前記第1の色グループに対応するk個合計のk+1階調データに対応する第2の量子化データを生成する第2の量子化データ生成手段と、前記第1の量子化データの各画素と前記第2の量子化データの各画素との差分量により表現されるデータを前記第2の色グループに対応するn−k個合計に対応する第3の量子化データとして生成する第3の量子化データ生成手段と、前記kまたは前記n−kの少なくとも一方が1より大きい場合、前記第1の色グループまたは前記第2の色グループの少なくとも一方について、前記第1の量子化データ生成手段、前記第2の量子化データ生成手段および前記第3の量子化データ生成手段を再帰的に実行することにより前記n個の2階調データを生成するよう制御する制御手段と、を備える。   In order to solve one or more of the problems described above, the image processing apparatus of the present invention has the following configuration. That is, n pieces of two gradation data from n pieces of i gradation (i is a positive integer of 2 or more) data corresponding to each of n (n is a positive integer of 2 or more) color components constituting the image data. Each pixel of data represented by the total value of each pixel of the n i gradation data is converted into a quantized value of n + 1 gradation by error diffusion processing, and n First quantized data generating means for generating first quantized data corresponding to the total n + 1 gradation data, and k color components having relatively high visibility (k <n A first color group containing a positive integer color) and a second color group containing n−k colors having relatively low visibility, and n corresponding to the second color group Each pixel of data represented by the total value of each pixel of k i-gradation data and the first quantization data; The data represented by the difference amount from each pixel of the data is converted into k + 1 grayscale quantization values by error diffusion processing, and the kth grayscale data corresponding to the k total grayscale data corresponding to the first color group is converted. 2nd quantized data generating means for generating 2 quantized data, and data expressed by a difference amount between each pixel of the first quantized data and each pixel of the second quantized data A third quantized data generating means for generating third quantized data corresponding to a total of n−k corresponding to the second color group, and at least one of k or n−k is greater than 1 The first quantized data generating means, the second quantized data generating means, and the third quantized data generating means are recursively for at least one of the first color group and the second color group. In And a control means for controlling to generate the n 2 gradation data by rows.

上述の問題点の1つ以上を解決するために、本発明の画像処理方法は以下の構成を備える。すなわち、画像データを構成するn個(nは2以上の正整数)の色成分の各々に対応するn個のi階調(iは2以上の正整数)データからn個の2階調データを生成する画像処理方法であって、前記n個のi階調データの各画素の合計値により表現されるデータの各画素を誤差拡散処理によりn+1階調の量子化値に変換し、n個合計のn+1階調データに対応する第1の量子化データを生成する第1の量子化データ生成工程と、前記n個の色成分を、相対的に視認性の高いk個(k<nの正整数)の色が含まれる第1の色グループと相対的に視認性の低いn−k個の色が含まれる第2の色グループとに区分し、該第2の色グループに対応するn−k個のi階調データの各画素の合計値により表現されるデータの各画素と前記第1の量子化データの各画素との差分量により表現されるデータを誤差拡散処理によりk+1階調の量子化値に変換し、前記第1の色グループに対応するk個合計のk+1階調データに対応する第2の量子化データを生成する第2の量子化データ生成工程と、前記第1の量子化データの各画素と前記第2の量子化データの各画素との差分量により表現されるデータを前記第2の色グループに対応するn−k個合計に対応する第3の量子化データとして生成する第3の量子化データ生成工程と、前記kまたは前記n−kの少なくとも一方が1より大きい場合、前記第1の色グループまたは前記第2の色グループの少なくとも一方について、前記第1の量子化データ生成工程、前記第2の量子化データ生成工程および前記第3の量子化データ生成工程を再帰的に実行することにより前記n個の2階調データを生成するよう制御する制御工程と、を備える。   In order to solve one or more of the problems described above, the image processing method of the present invention comprises the following arrangement. That is, n pieces of two gradation data from n pieces of i gradation (i is a positive integer of 2 or more) data corresponding to each of n (n is a positive integer of 2 or more) color components constituting the image data. Is generated by converting each pixel of data represented by the total value of each pixel of the n i-gradation data into a quantized value of n + 1 gradations by error diffusion processing. A first quantized data generating step for generating first quantized data corresponding to the total n + 1 gradation data, and k color components having relatively high visibility (k <n A first color group containing a positive integer color) and a second color group containing n−k colors having relatively low visibility, and n corresponding to the second color group Each pixel of data represented by the total value of each pixel of k i-gradation data and the first quantization data; The data represented by the difference amount from each pixel of the data is converted into k + 1 grayscale quantization values by error diffusion processing, and the kth grayscale data corresponding to the k total grayscale data corresponding to the first color group is converted. A second quantized data generating step for generating two quantized data, and data expressed by a difference amount between each pixel of the first quantized data and each pixel of the second quantized data A third quantized data generating step for generating third quantized data corresponding to the total of n−k corresponding to the second color group, and at least one of k or n−k is greater than 1 The first quantized data generating step, the second quantized data generating step, and the third quantized data generating step are recursively performed on at least one of the first color group and the second color group. In And a control step of controlling to generate the n 2 gradation data by rows.

本発明によれば、処理の複雑度を低減しつつより高画質な画像形成を可能とする技術を提供することができる。   According to the present invention, it is possible to provide a technique that enables image formation with higher image quality while reducing processing complexity.

以下に、図面を参照して、この発明の好適な実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。   Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings. The following embodiments are merely examples, and are not intended to limit the scope of the present invention.

(第1実施形態)
本発明に係る画像処理装置の第1実施形態として、画像形成システムを例に挙げて以下に説明する。
(First embodiment)
The first embodiment of the image processing apparatus according to the present invention will be described below by taking an image forming system as an example.

<システム構成>
図1は、第1実施形態による画像形成装置を含む画像形成システムの構成を示したブロック図である。1は画像処理装置を、2はプリンタを示す。なお、画像処理装置1は例えば一般的なパーソナルコンピュータ(PC)にインストールされたプリンタドライバによって実現され得る。その場合、以下に説明する画像処理装置1の各部は、PC内部のCPUがのプリンタドライバを構成するプログラムを実行することにより実現されることになる。なお、ここでは、画像処理装置1とプリンタ2と別体構成である例について説明するが、プリンタ内部に画像処理装置1に相当する画像処理部を含むような構成であってもよい。
<System configuration>
FIG. 1 is a block diagram showing a configuration of an image forming system including an image forming apparatus according to the first embodiment. Reference numeral 1 denotes an image processing apparatus, and 2 denotes a printer. The image processing apparatus 1 can be realized by a printer driver installed in a general personal computer (PC), for example. In this case, each unit of the image processing apparatus 1 described below is realized by executing a program constituting a printer driver by a CPU in the PC. Here, an example in which the image processing apparatus 1 and the printer 2 are separately configured will be described. However, a configuration in which an image processing unit corresponding to the image processing apparatus 1 is included in the printer may be employed.

画像処理装置1とプリンタ2とは、プリンタインタフェース又はネットワークインタフェースによって接続されている。画像処理装置1は、データ入力部101より印刷対象の画像データを入力し、画像バッファ102にその入力画像データを格納する。色分解処理部103は、入力されたカラー画像をプリンタ2が備えるインク色へ色分解する。この色分解処理に際しては、色分解用ルックアップテーブル(LUT)104が参照される。   The image processing apparatus 1 and the printer 2 are connected by a printer interface or a network interface. The image processing apparatus 1 inputs image data to be printed from the data input unit 101 and stores the input image data in the image buffer 102. The color separation processing unit 103 separates the input color image into ink colors provided in the printer 2. In this color separation process, a color separation lookup table (LUT) 104 is referred to.

ハーフトーン処理部105は、色分解処理部103によって得られた各色の多階調(3階調以上)の画像データを2値画像データに変換する。得られた各色の2値画像データはハーフトーン画像格納メモリ106に格納される。ハーフトーン画像格納メモリ106に格納された2値画像データはデータ出力部107よりプリンタ2へ出力される。   The halftone processing unit 105 converts multi-tone (three or more gradations) image data of each color obtained by the color separation processing unit 103 into binary image data. The obtained binary image data of each color is stored in the halftone image storage memory 106. The binary image data stored in the halftone image storage memory 106 is output from the data output unit 107 to the printer 2.

プリンタ2は、記録ヘッド201を記録媒体202に対して相対的に縦横に移動することにより、記録媒体上に画像を形成する。記録ヘッドはワイヤードット方式、感熱方式、熱転写方式、インクジェット方式等の方式のものを用いることができ、いずれも一つ以上の記録素子(インクジェット方式であればノズル)を有する。移動部203は、ヘッド制御部204の制御下で、記録ヘッド201を移動する。搬送部205は、ヘッド制御部204の制御下で、記録媒体を搬送する。また、インク色及び吐出量選択部206は、画像処理装置1により形成された各色の2値画像データに基づいて、記録ヘッド201に搭載されるインク色と該ヘッドが吐出可能なインク吐出量の中から、インク色と吐出量を選択する。   The printer 2 forms an image on the recording medium by moving the recording head 201 vertically and horizontally relative to the recording medium 202. As the recording head, a wire dot method, a thermal method, a thermal transfer method, an ink jet method, or the like can be used, and each has one or more recording elements (a nozzle in the case of an ink jet method). The moving unit 203 moves the recording head 201 under the control of the head control unit 204. The transport unit 205 transports the recording medium under the control of the head control unit 204. Further, the ink color and ejection amount selection unit 206 determines the ink color mounted on the recording head 201 and the ink ejection amount that the head can eject based on the binary image data of each color formed by the image processing apparatus 1. Select the ink color and discharge amount from the list.

図2は、プリンタ2に搭載される記録ヘッド201の構成例を示す図である。ここでは、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)の4色のインクに加え、レッド(R)、グリーン(G)、ブルー(B)の3色を含めた計7色のインクを使用する場合を例示している。   FIG. 2 is a diagram illustrating a configuration example of the recording head 201 mounted on the printer 2. Here, in addition to four inks of cyan (C), magenta (M), yellow (Y), and black (K), three colors of red (R), green (G), and blue (B) are included. The case where a total of seven colors of ink are used is illustrated.

なお、図2においては、説明を簡単にするため用紙搬送方向にノズルが一列に配置された構成を有する記録ヘッドを示している。ただし、ノズルの数、配置はこれに限られるものではない。例えば、同一インク色に対しノズル列が複数あっても良いし、同一インク色に対し複数のノズルがジグザグに配置されているような構成であっても良い。また、図2では各インク色のノズル列がヘッドの移動方向に配置されているが、用紙搬送方向に一列に配置する構成であっても良い。   Note that FIG. 2 shows a recording head having a configuration in which nozzles are arranged in a line in the paper transport direction for the sake of simplicity. However, the number and arrangement of nozzles are not limited to this. For example, there may be a plurality of nozzle rows for the same ink color, or a configuration in which a plurality of nozzles are arranged in a zigzag manner for the same ink color. In FIG. 2, the nozzle rows for each ink color are arranged in the moving direction of the head, but may be arranged in a row in the paper transport direction.

<装置の動作>
以下では、画像処理装置1がRGBの3色(各色8ビット)で表現される入力画像データに基づいて、CMYKRGBの7色(各色1ビット)で表現される印刷データを生成する処理について説明する。なお、色成分は2以上の正整数である任意のn個に対して適用可能である。つまり、n個のi階調(iは2以上の正整数)データからn個の2階調データを生成するような構成であってもよい。
<Operation of the device>
In the following, a process for generating print data expressed by 7 colors of CMYKRGB (1 bit of each color) based on input image data expressed by 3 colors of RGB (8 bits of each color) will be described. . It should be noted that the color component can be applied to an arbitrary n that is a positive integer of 2 or more. In other words, the configuration may be such that n pieces of two gradation data are generated from n pieces of i gradation (i is a positive integer of 2 or more) data.

図3は、第1実施形態の画像処理装置1の動作フローチャートである。   FIG. 3 is an operation flowchart of the image processing apparatus 1 according to the first embodiment.

ステップS101では、多階調のカラー入力画像データがデータ入力部101より入力され、画像バッファ102に格納される。なお、ここでは、入力画像データは、レッド(R_in)、グリーン(G_in)、ブルー(B_in)の3つの色成分によって表現され、各色256階調(8ビット)であるとする。   In step S 101, multi-tone color input image data is input from the data input unit 101 and stored in the image buffer 102. Here, it is assumed that the input image data is represented by three color components of red (R_in), green (G_in), and blue (B_in), and each color has 256 gradations (8 bits).

ステップS102では、色分解処理部103は、色分解用LUT104のLUTを用いて、画像バッファ102に格納された多階調のカラー入力画像データの色分解処理を行なう。この色分解処理では、カラー入力画像データをRGBからCMYK及びRGBのインク色プレーンへ色分解する。   In step S102, the color separation processing unit 103 performs color separation processing of multi-tone color input image data stored in the image buffer 102 using the LUT of the color separation LUT 104. In this color separation processing, color input image data is color-separated from RGB into CMYK and RGB ink color planes.

前述のように記録ヘッド201は、7種類の各インク色に対応するノズル列を利用して、記録媒体上にドットを形成する。そのため、画像処理装置1に入力されるRGBのカラー入力画像データは、CMYKRGBの各プレーンの7プレーンの画像データへ変換されプリンタ2に出力される。即ち、7種類の記録態様に対応した7種類のプレーンの画像データが生成される。なお、色分解処理の詳細については後述する。   As described above, the recording head 201 forms dots on the recording medium using the nozzle rows corresponding to the seven types of ink colors. Therefore, RGB color input image data input to the image processing apparatus 1 is converted into image data of 7 planes of CMYKRGB planes and output to the printer 2. That is, seven types of plane image data corresponding to the seven types of recording modes are generated. Details of the color separation process will be described later.

ステップS103では、ハーフトーン処理部105はハーフトーン処理のための画素位置選択処理を行う。   In step S103, the halftone processing unit 105 performs pixel position selection processing for halftone processing.

ステップS104では、少ない階調数に変換するハーフトーン処理を実施する。本実施形態では、色分解処理部103によって入力画像の各画素データを8ビットの階調値のプレーンへ分解する。そして、ハーフトーン処理部105は色分解処理部103によって得られたプレーンを2レベルの階調値のデータ(2値データ)に変換する。なお、第1実施形態のハーフトーン処理は、多値の入力画像データを2値画像(または2値以上で入力階調数より少ない階調数の画像)に変換する処理として、例えばR.Floydらによる誤差拡散法を用いる。なお、本実施形態のハーフトーン処理部105の詳細については後述する。   In step S104, halftone processing for converting to a small number of gradations is performed. In this embodiment, the color separation processing unit 103 separates each pixel data of the input image into a plane having an 8-bit gradation value. Then, the halftone processing unit 105 converts the plane obtained by the color separation processing unit 103 into two-level gradation value data (binary data). The halftone process according to the first embodiment is a process for converting multi-valued input image data into a binary image (or an image having two or more values and a smaller number of gradations than the number of input gradations). The error diffusion method by Floyd et al. Is used. Details of the halftone processing unit 105 of the present embodiment will be described later.

ステップS105では、ハーフトーン処理後の2値画像データはハーフトーン画像格納メモリ106に格納する。   In step S <b> 105, the binary image data after the halftone process is stored in the halftone image storage memory 106.

図4は、ハーフトーン処理部105に入力される各色のプレーン61と、2値画像データ62の構成例を示した図である。色分解処理部103は、入力画像の横画素数Wと縦画素数Hと同数の二次元的な記憶領域I(x、y)に多値(8ビット)のデータが配置されたプレーン61(多値画像データ)の各画素値を生成する。ハーフトーン処理部105は、プレーン61に階調変換処理を施して各色のプレーンの各画素位置の2値データを生成する。ハーフトーン画像格納メモリ106は、入力画像の横画素数Wと縦画素数Hと同数の二次元的な記憶領域O(x、y)を有し、各画素位置に対応する2値画像データを格納する。   FIG. 4 is a diagram illustrating a configuration example of each color plane 61 and binary image data 62 input to the halftone processing unit 105. The color separation processing unit 103 has a plane 61 (8 bits) in which multivalued (8 bits) data is arranged in a two-dimensional storage area I (x, y) equal to the number of horizontal pixels W and the number of vertical pixels H of the input image. Multi-valued image data) is generated. The halftone processing unit 105 performs gradation conversion processing on the plane 61 to generate binary data at each pixel position of each color plane. The halftone image storage memory 106 has a two-dimensional storage area O (x, y) equal to the number of horizontal pixels W and the number of vertical pixels H of the input image, and stores binary image data corresponding to each pixel position. Store.

なお、本実施形態では、各プレーンの対応する画素を順次に入力して各記録態様に対応した2値画像データを生成していく。したがって、多値画像のプレーン61全体を保持するメモリ空間を用意する必要はない。また、ハーフトーン画像格納メモリ106にしても、例えばバンド単位の記録動作に必要なサイズのメモリ空間を用意したものであっても良い。   In the present embodiment, the corresponding pixels of each plane are sequentially input to generate binary image data corresponding to each recording mode. Therefore, it is not necessary to prepare a memory space for holding the entire multi-value image plane 61. Further, the halftone image storage memory 106 may be prepared with a memory space having a size necessary for recording operation in units of bands, for example.

ステップS106では、処理対象の全画素についてハーフトーン画像を生成したか否かを判定する。   In step S106, it is determined whether halftone images have been generated for all pixels to be processed.

ステップS107では、ハーフトーン画像格納メモリ106に格納されたハーフトーン処理後の画像データを出力ドットパターンとしてデータ出力部107により出力する。   In step S107, the data output unit 107 outputs the image data after halftone processing stored in the halftone image storage memory 106 as an output dot pattern.

ステップS108では、プリンタ2は、データ出力部107より出力された画像データを受信し、該画像データに従ってインク色及び吐出量を選択して画像形成を行う。画像の形成において、プリンタ2は、例えば、記録ヘッド201を記録媒体に対して左から右に移動しながら一定の駆動間隔で各ノズルを駆動(つまりインクの吐出のオン/オフを制御)して記録媒体上に画像を記録していく。一回の走査が終了すると、記録ヘッドを左端に戻すと同時に、記録媒体202を一定量搬送する。以上の処理を繰り返すことにより画像の形成が行われる。   In step S108, the printer 2 receives the image data output from the data output unit 107, selects an ink color and an ejection amount according to the image data, and forms an image. In image formation, for example, the printer 2 drives each nozzle at a fixed driving interval (that is, controls on / off of ink ejection) while moving the recording head 201 from the left to the right with respect to the recording medium. Images are recorded on the recording medium. When one scan is completed, the recording head is returned to the left end and the recording medium 202 is conveyed by a certain amount. By repeating the above processing, an image is formed.

<色分解処理の詳細>
図5は、画像処理装置1における色分解処理部103の構成を示す図である。501は輝度濃度変換部、502はUCR(Under Color removal:下色除去)/BG(Black Generation:黒生成)処理部である。また、503はBG量設定部、504はUCR量設定部、505は特色インク分解処理部、特色インク分解処理用LUT506である。
<Details of color separation processing>
FIG. 5 is a diagram illustrating a configuration of the color separation processing unit 103 in the image processing apparatus 1. Reference numeral 501 denotes a luminance density conversion unit, and reference numeral 502 denotes a UCR (Under Color removal) / BG (Black Generation) processing unit. Reference numeral 503 denotes a BG amount setting unit, 504 denotes a UCR amount setting unit, 505 denotes a special color ink separation processing unit, and a special color ink separation processing LUT 506.

まず、輝度濃度変換部501において入力された輝度情報8ビットの画像データR_in、G_in、B_inは次式に基づきCMYへ変換される。
C=−αlog(R_in/255) ・・・(1)
M=−αlog(G_in/255) ・・・(2)
Y=−αlog(B_in/255) ・・・(3)
但し、αは任意の実数である。
First, 8-bit luminance information image data R_in, G_in, and B_in input in the luminance density conversion unit 501 are converted into CMY based on the following equation.
C = −αlog (R_in / 255) (1)
M = −αlog (G_in / 255) (2)
Y = −αlog (B_in / 255) (3)
Here, α is an arbitrary real number.

次に、CMYデータはBG量設定部503に設定されたβ(Min(C,M,Y),μ)、及びUCR量設定部504に設定された値μにより、
C’=C−(μ/100)×Min(C,M,Y) ・・・(4)
M’=M−(μ/100)×Min(C,M,Y) ・・・(5)
Y’=Y−(μ/100)×Min(C,M,Y) ・・・(6)
K’= β(Min(C,M,Y),μ)×(μ/100)×Min(C,M,Y) ・・・(7)
と変換される。ここで、β(Min(C,M,Y),μ)は、Min(C,M,Y)及びμによって変動する実数であり、この値によってKインクの使用方法を設定することができる。
Next, the CMY data is obtained by β (Min (C, M, Y), μ) set in the BG amount setting unit 503 and a value μ set in the UCR amount setting unit 504.
C ′ = C− (μ / 100) × Min (C, M, Y) (4)
M ′ = M− (μ / 100) × Min (C, M, Y) (5)
Y ′ = Y− (μ / 100) × Min (C, M, Y) (6)
K ′ = β (Min (C, M, Y), μ) × (μ / 100) × Min (C, M, Y) (7)
Is converted. Here, β (Min (C, M, Y), μ) is a real number that varies depending on Min (C, M, Y) and μ, and the usage method of K ink can be set by this value.

続いて、レッド、グリーン及びブルーの色域を構成する色成分であるC’M’Y’の3色については、特色インク分解処理部505にて、特色インク分解処理用LUT506を参照し、次式の通り特色インク分解を実施する。   Subsequently, for the three colors C′M′Y ′ that are color components constituting the color gamuts of red, green, and blue, the spot color ink separation processing unit 505 refers to the spot color ink separation processing LUT 506, and Carry out spot color ink decomposition according to the formula.

C”=Lut(C’,M’,Y’) ・・・(8)
M”=Lut(C’,M’,Y’) ・・・(9)
Y”=Lut(C’,M’,Y’) ・・・(10)
R’=Lut(M’,Y’) ・・・(11)
G’=Lut(C’,Y’) ・・・(12)
B’=Lut(C’,M’) ・・・(13)
なお、C”、M”、Y”、R’、G’、B’は、特色インク分解後のシアン、マゼンタ、イエロー、レッド、グリーン及びブルーの出力データ値をそれぞれ示している。式(8)から式(13)の右辺に定義される関数が特色インク分解処理用LUTに該当する。
C ″ = Lut (C ′, M ′, Y ′) (8)
M ″ = Lut (C ′, M ′, Y ′) (9)
Y ″ = Lut (C ′, M ′, Y ′) (10)
R ′ = Lut (M ′, Y ′) (11)
G ′ = Lut (C ′, Y ′) (12)
B ′ = Lut (C ′, M ′) (13)
C ″, M ″, Y ″, R ′, G ′, and B ′ indicate output data values of cyan, magenta, yellow, red, green, and blue after the special color ink separation, respectively. ) To the right side of the equation (13) corresponds to the spot color ink separation processing LUT.

図6は、特色インク分解処理用LUTの一例を示す図である。具体的には、CMYの入力値に応じてRGB及びCMYのインク分解量が決定される構成である。なお、本LUTの作成に際しては、予めCMYRGBの6色の組み合わせによって構成される色票を印刷し、目標色に対応するインク分解量を定めている。本実施形態1では、前記インク分解量を定める手段は画像形成装置と別個に設けられており、結果のみを特色インク分解処理用LUTに保持する構成である。   FIG. 6 is a diagram illustrating an example of the spot color ink separation processing LUT. Specifically, RGB and CMY ink decomposition amounts are determined according to CMY input values. When creating this LUT, a color chart composed of a combination of six colors of CMYRGB is printed in advance, and an ink separation amount corresponding to the target color is determined. In the first embodiment, the means for determining the amount of ink separation is provided separately from the image forming apparatus, and only the result is held in the spot color ink separation processing LUT.

<ハーフトーン処理の詳細>
次に、ハーフトーン処理部105において用いられる誤差拡散法について説明する。なお、上述したように、色分解処理後のCMYRGBの各プレーン画像は0〜255の8ビット画像とする。一般にはi階調データ(iは2以上の正整数)として表される。ここでは説明を簡略化するため、マゼンタ、レッド、イエローのドットプレーン、M”、R’、Y”における誤差拡散処理による擬似階調処理を例として説明する。なお以下の処理は、入力された画像データにおける1画素を注目画素として、全画素について順次実行される。
<Details of halftone processing>
Next, an error diffusion method used in the halftone processing unit 105 will be described. As described above, each CMYRGB plane image after color separation processing is an 8-bit image from 0 to 255. Generally, it is expressed as i gradation data (i is a positive integer of 2 or more). Here, in order to simplify the description, a pseudo gradation process using an error diffusion process in magenta, red, and yellow dot planes, M ″, R ′, and Y ″ will be described as an example. The following processing is sequentially executed for all pixels with one pixel in the input image data as a target pixel.

図7は、ハーフトーン処理部105の動作を説明するフローチャートである。ただし、あらかじめ優先されるべきドットのグループ化が設定されているとする。ここで、グループ化とは、該グループ単位でドットの重なりを制御できるように分けられていることである。   FIG. 7 is a flowchart for explaining the operation of the halftone processing unit 105. However, it is assumed that dot grouping that should be prioritized is set in advance. Here, the grouping means that the dot overlap is controlled in units of groups.

そして、階層1グループとしてGr1、Gr2が設定された場合、Gr1とGr2の単位でドットの重なりを制御可能なことを示す。また、階層2グループとしてGrx_1、Grx_2が設定された場合、Grx_1、Grx_2単位でドットの重なりを制御可能なことを示す。   When Gr1 and Gr2 are set as the hierarchy 1 group, it indicates that dot overlap can be controlled in units of Gr1 and Gr2. In addition, when Grx_1 and Grx_2 are set as the layer 2 group, it indicates that dot overlap can be controlled in units of Grx_1 and Grx_2.

図9は、M”、R’、Y”の3プレーンを2つのグループにグループ化する例を示す図である。なお、グループ化は、例えば、相対的に視認性の高い(濃度の高い)色をより高い優先度にするよう予め決定しておくとよい。たとえば、M”、R’、Y”の3色を比較すると、視認性の高い順にM”、R’、Y”となる。ただし、M”とR’はR’とY”に比較し視認性の差が小さい。そこで、階層1グループとして、Gr1:M”R’、Gr2:Y”が設定されている。さらに、階層2グループとしてGr1_1:M”、Gr1_2:R’が設定されている。また、図10は、CMYKRGBの7プレーンを5つのグループにグループ化する例を示している。一般には、n個の色成分を相対的に視認性の高いk個(k<nの正整数)の色が含まれる第1の色グループと、相対的に視認性の低いn−k個の色が含まれる第2の色グループとに区分する。以下では、説明を簡単にするために、図9に示されるM”、R’、Y”の3プレーンに対する処理について説明する。   FIG. 9 is a diagram illustrating an example in which three planes M ″, R ′, and Y ″ are grouped into two groups. The grouping may be determined in advance so that, for example, a color with relatively high visibility (high density) has a higher priority. For example, when the three colors M ″, R ′, and Y ″ are compared, they become M ″, R ′, and Y ″ in descending order of visibility. However, the difference in visibility between M ″ and R ′ is smaller than that between R ′ and Y ″. Therefore, Gr1: M ″ R ′, Gr2: Y ″ are set as the hierarchy 1 group. Furthermore, Gr1_1: M ″ and Gr1_2: R ′ are set as the hierarchy 2 group. FIG. 10 shows an example in which 7 planes of CMYKRGB are grouped into 5 groups. The first color group including k (k <n positive integers) colors with relatively high visibility and the nk colors with relatively low visibility. In order to simplify the description, processing for the three planes M ″, R ′, and Y ″ shown in FIG.

ステップS1では、階層1グループ、Gr1_data(第1の色グループのk個合計のデータに相当)をそれぞれ算出する。そして、Gr2_data(第2の色グループのn−k個合計のデータに相当)、および、階層2グループGr1_1data、Gr1_2dataについても同様に算出する。   In step S1, a hierarchical level 1 group and Gr1_data (corresponding to k total data of the first color group) are respectively calculated. Then, Gr2_data (corresponding to nk total data of the second color group) and the hierarchy 2 groups Gr1_1data and Gr1_2data are similarly calculated.

階層1グループ:
Gr1_data = M”+ R’
Gr2_data = Y” ・・・(14)
階層2グループ:
Gr1_1data = M”
Gr1_2data = R’ ・・・(15)
ステップS2では、Gr2_dataが、あらかじめ指定された値kよりも大きいか、小さいかの判断を行う。Gr2_data>= kの場合ステップS3に進み、Gr2_data<kの場合ステップS5に進む。
Tier 1 group:
Gr1_data = M ″ + R ′
Gr2_data = Y "(14)
Tier 2 group:
Gr1_1data = M "
Gr1_2data = R ′ (15)
In step S2, it is determined whether Gr2_data is larger or smaller than a value k designated in advance. If Gr2_data> = k, the process proceeds to step S3, and if Gr2_data <k, the process proceeds to step S5.

ステップS3では、Gr1、Gr2の各プレーン間でドット位置の重なりを許可しないよう配置制御を行う。配置制御の詳細については以下(処理1)で説明する。   In step S3, arrangement control is performed so that dot position overlap is not permitted between the Gr1 and Gr2 planes. Details of the arrangement control will be described below (Process 1).

ステップS4では、Gr1、Gr2の各プレーン間でドット位置の重なりを許可する配置制御を行う。配置制御の詳細については以下(処理2)で説明する。   In step S4, arrangement control is performed to allow overlapping of dot positions between the Gr1 and Gr2 planes. Details of the placement control will be described below (Process 2).

ステップS5では、画像データ中の全画素について上述のステップS1〜S4の処理を実行完了したか否かを判定する。完了していなければ、注目画素を移動し、ステップS1〜S4を再度実行する。完了した場合は処理を終了する。   In step S5, it is determined whether or not the processing in steps S1 to S4 described above has been completed for all the pixels in the image data. If not completed, the target pixel is moved, and steps S1 to S4 are executed again. If completed, the process is terminated.

<処理1(ステップS3)>
ステップS3の処理は、上述のように各プレーン間でドット位置の重なりを許可しないよう、配置を決定する処理である。具体的には、まず、階層1グループ、つまり、Gr1data(マゼンタ、レッド)とGr2data(イエロー)との間でドットが重ならないように制御する。続いて、階層2グループ、つまり、Gr1_1data(マゼンタ)とGr1_2data(レッド)との間でドットが重ならないように制御する。このようにする事により、Gr1_1data(マゼンタ)、Gr1_2data(レッド)およびGr2data(イエロー)の間でドットが重ならないようにする。以下、当該処理の実現方法について詳細に説明する。
<Process 1 (Step S3)>
The process of step S3 is a process of determining an arrangement so as not to allow overlapping of dot positions between the planes as described above. Specifically, first, control is performed so that dots do not overlap between the first layer, that is, Gr1data (magenta, red) and Gr2data (yellow). Subsequently, control is performed so that dots do not overlap between the hierarchical two groups, that is, Gr1_1 data (magenta) and Gr1_2 data (red). In this way, dots are prevented from overlapping between Gr1_1 data (magenta), Gr1_2 data (red), and Gr2 data (yellow). Hereinafter, a method for realizing the processing will be described in detail.

図8(a)は、ステップS3の処理の詳細を説明する図である。なお、図8(a)に示す各機能構成部はハードウェアにより実現しても良いし一部或いは全てをソフトウエアにより実現してもよい。また、図11は、ステップS3の処理の詳細フローチャートである。なお、第一量子化部601は第1の量子化データ生成手段に、第二量子化部602は第2の量子化データ生成手段および第3の量子化データ生成手段に相当する。   FIG. 8A is a diagram for explaining the details of the processing in step S3. Note that each functional component shown in FIG. 8A may be realized by hardware, or a part or all of it may be realized by software. FIG. 11 is a detailed flowchart of the process in step S3. The first quantizing unit 601 corresponds to a first quantized data generating unit, and the second quantizing unit 602 corresponds to a second quantized data generating unit and a third quantized data generating unit.

ステップS3の処理にて、マゼンタ、レッド、イエローの3つのドットプレーンデータ(各プレーンは0〜255の値をとる)に対して2値化(量子化値は0または255)を行う。その場合、第一量子化部601は、Gr1_data、Gr2_dataデータの対応画素の合計データI_mryを入力する。すなわち、マゼンタ、レッド、イエローの各々のプレーンにおける対応する画素値の合計をI_mryに入力する。より一般的には、n個の色成分のn個合計のデータを入力する。そして、入力されたI_mryに対して誤差拡散処理を施し、第1の量子化データに相当する4値化(量子化値は0,255,510,765の何れか)を行う。なお、一般にはn個の色成分の場合にn+1階調データを生成する。   In the process of step S3, binarization (quantization value is 0 or 255) is performed on the three dot plane data of magenta, red, and yellow (each plane takes a value of 0 to 255). In that case, the first quantization unit 601 receives the total data I_mry of the corresponding pixels of the Gr1_data and Gr2_data data. That is, the sum of the corresponding pixel values in each of the magenta, red, and yellow planes is input to I_mry. More generally, n total data of n color components are input. Then, error diffusion processing is performed on the input I_mry to perform quaternization corresponding to the first quantized data (quantized value is 0, 255, 510, or 765). In general, n + 1 gradation data is generated in the case of n color components.

より具体的に説明すると、まずステップS201において、Gr1_data + Gr2_data(マゼンタ,レッド,イエロードットプレーンの画素値の合計データ)I_mryを第一量子化部601に入力する。ここで、I_mryは次式のように算出される。   More specifically, first, in step S201, Gr1_data + Gr2_data (total data of magenta, red, and yellow dot plane pixel values) I_mry is input to the first quantization unit 601. Here, I_mry is calculated as follows.

I_mry =Gr1_data + Gr2_data ・・・(16)
図12は、誤差拡散処理における注目画素周辺の誤差拡散係数(K1〜K4の4つの係数)を説明する図である。例えば、K1=7/16、K2=3/16、K3=5/16、K4=1/16とする。このような誤差拡散係数により誤差を拡散、累積するために、第一量子化部601における累積誤差ラインバッファ604には、図13の(a)に示す記憶領域をゆうする。つまり、1個の記憶領域E_mry0と、入力画像の横画素数Wと同数の記憶領域E_mry(x)(x=1〜W)とを有し、後述する方法で量子化誤差が格納されていく。なお、累積誤差ラインバッファ604は処理開始前に全て初期値0で初期化されていてもよいし、ランダム値で初期化されてもよい。
I_mry = Gr1_data + Gr2_data (16)
FIG. 12 is a diagram for explaining error diffusion coefficients (four coefficients K1 to K4) around the target pixel in the error diffusion processing. For example, K1 = 7/16, K2 = 3/16, K3 = 5/16, and K4 = 1/16. In order to diffuse and accumulate errors using such error diffusion coefficients, the accumulated error line buffer 604 in the first quantization unit 601 has a storage area shown in FIG. That is, it has one storage area E_mry0 and the same number of storage areas E_mry (x) (x = 1 to W) as the number of horizontal pixels W of the input image, and the quantization error is stored by a method described later. . Note that the accumulated error line buffer 604 may be initialized with an initial value of 0 before starting the process, or may be initialized with a random value.

ステップS202において、累積誤差加算部605は、注目画素の横画素位置xに対応する誤差E_mry(x)を累積誤差ラインバッファ604より読み出し、加算する。即ち、入力された合計データをI_mry、累積誤差加算後のデータをI_mry’とすると、
I_mry’= I_mry + E_mry(x) ・・・(17)
となる。
In step S202, the accumulated error adding unit 605 reads the error E_mry (x) corresponding to the horizontal pixel position x of the target pixel from the accumulated error line buffer 604 and adds it. That is, if the input total data is I_mry and the data after adding the accumulated error is I_mry ′,
I_mry ′ = I_mry + E_mry (x) (17)
It becomes.

次に、ステップS203において、閾値選択部606は閾値T_mryを選択する。閾値T_mryは、例えば、入力画素データI_mryに応じて、
T_mry(I_mry)=128 (0≦I_mry≦255) ・・・(18)
T_mry(I_mry)=384 (255<I_mry≦510) ・・・(19)
T_mry(I_mry)=640 (510<I_mry ≦765) ・・・(20)
と設定される。或いは、ドット生成遅延を回避するために、平均量子化誤差が小さくなるように閾値T_mryを入力画素データI_mryに応じて細かく変更しても良い。
Next, in step S203, the threshold selection unit 606 selects a threshold T_mry. The threshold T_mry is, for example, according to the input pixel data I_mry,
T_mry (I_mry) = 128 (0 ≦ I_mry ≦ 255) (18)
T_mry (I_mry) = 384 (255 <I_mry ≦ 510) (19)
T_mry (I_mry) = 640 (510 <I_mry ≦ 765) (20)
Is set. Alternatively, in order to avoid dot generation delay, the threshold T_mry may be finely changed according to the input pixel data I_mry so that the average quantization error is reduced.

次に、ステップS204において、量子化部607は、誤差加算後の画素データI_mry’と閾値T(I_mry)とを比較し、出力画素値Out_mryを決定する。その規則は次の通りである。   Next, in step S <b> 204, the quantization unit 607 compares the pixel data I_mry ′ after the error addition and the threshold value T (I_mry) to determine an output pixel value Out_mry. The rules are as follows:

Out_mry=0 ・・・(21)
(0≦I_mry≦255,I_mry’<T(I_mry))
Out_mry=255 ・・・(22)
(0≦I_mry≦255,I_mry’≧T(I_mry))又は
(255<I_mry≦510,I_mry’<T(I_mry))
Out_mry=510 ・・・(23)
(255≦I_mry≦510,I_mry’≧T(I_mry))又は
(510<I_mry≦765,I_mry’<T(I_mry))
Out_mry=765 ・・・(24)
(510<I_mry≦765,I_mry’≧T(I_mry))
ここでGr1_data + Gr2_data(マゼンタ,レッド,イエロードットプレーンの画素値の合計データ)I_mryを4値化することの意味を説明する。例えば式(22)に示すようにOut_mry=255となることは、その場所に、マゼンタ、レッド、イエローいずれかのドットが1つ打たれることを意味する。すなわち、Out_mry=255とは、その場所にマゼンタドットが確定するわけでなく、レッドドット、イエロードットも確定しない。この時点で確定していることは、マゼンタかレッドかイエローの、どのドットが打たれるかわからないが、少なくともどれか一つは打たれることである。
Out_mry = 0 (21)
(0 ≦ I_mry ≦ 255, I_mry ′ <T (I_mry))
Out_mry = 255 (22)
(0 ≦ I_mry ≦ 255, I_mry ′ ≧ T (I_mry)) or
(255 <I_mry ≦ 510, I_mry ′ <T (I_mry))
Out_mry = 510 (23)
(255 ≦ I_mry ≦ 510, I_mry ′ ≧ T (I_mry)) or
(510 <I_mry ≦ 765, I_mry ′ <T (I_mry))
Out_mry = 765 (24)
(510 <I_mry ≦ 765, I_mry ′ ≧ T (I_mry))
Here, the meaning of quaternizing Gr1_data + Gr2_data (total data of magenta, red, and yellow dot plane pixel values) I_mry will be described. For example, as shown in Expression (22), Out_mry = 255 means that one of magenta, red, and yellow dots is hit at that location. In other words, Out_mry = 255 does not determine magenta dots at that location, and neither red dots nor yellow dots. What is fixed at this point is that it is not known which dot, magenta, red or yellow, will be hit, but at least one will be hit.

同様にOut_mry=510となることは、その場所に、マゼンタ、レッド、イエローいずれかのドットが2つ打たれることを意味する。この時点で確定していることは、マゼンタドットかレッドドットかイエロードットか打たれるかわからないが、少なくともどれか2つは打たれることである。ただし、同じドットは最大でも1つしか打つことができない。   Similarly, Out_mry = 510 means that two dots of magenta, red, and yellow are hit at the place. What is determined at this point is that it is not known whether magenta dots, red dots, or yellow dots will be hit, but at least any two will be hit. However, only the same dot can be hit at most.

すなわち、Out_mryにより各画素の以下の特徴が表現される。   That is, the following features of each pixel are expressed by Out_mry.

Out_mry=0 ・・・マゼンタ、レッド、イエロードットのいずれも打たれない。
Out_mry=255 ・・・マゼンタ、レッド、イエロードットのいずれか1つが打たれる。
Out_mry=510 ・・・マゼンタ、レッド、イエロードットのいずれか2つが打たれる。
Out_mry = 0... Neither magenta, red nor yellow dots are hit.
Out_mry = 255... One of magenta, red, and yellow dots is hit.
Out_mry = 510... Two of magenta, red, and yellow dots are hit.

Out_mry=765 ・・・マゼンタ、レッド、イエロードットが打たれる。         Out_mry = 765... Magenta, red, and yellow dots are shot.

次に、ステップS205において、誤差演算部608で注目画素の合計値I_mryに誤差を加算した後の画素データI_mry’と出力画素値Out_mryとの差分量Err_mryを、次のようにして計算する。   Next, in step S205, a difference amount Err_mry between the pixel data I_mry ′ after the error is added to the total value I_mry of the target pixel by the error calculation unit 608 and the output pixel value Out_mry is calculated as follows.

Err_mry(x)=I_mry’− Out_mry ・・・(25)
そして、ステップS206において、誤差拡散部609は、横画素位置xに応じて、累積誤差ラインバッファ604において、以下の様に誤差Err_mry(x)の拡散処理を行う。
Err_mry (x) = I_mry′−Out_mry (25)
In step S206, the error diffusion unit 609 performs the error Err_mry (x) diffusion process in the accumulated error line buffer 604 according to the horizontal pixel position x as follows.

E_mry(x+1) ← E_mry(x+1)+Err_mry(x)×7/16 (x<W)
E_mry(x−1) ← E_mry(x−1)+Err_mry(x)×3/16 (x>1)
E_mry(x) ← E_mry0+Err_mry(x)×5/16 (1<x<W)
E_mry(x) ← E_mry0+Err_mry(x)×8/16 (x=1)
E_mry(x) ← E_mry0+Err_mry(x)×13/16 (x=W)
E_mry0 ← E_mry×1/16 (x<W)
E_mry0 ← 0 (x=W)
・・・(26)
以上で、Gr1_data+Gr2_data(マゼンタ,レッド,イエロードットプレーンの画素値の合計データ)の1画素分の3プレーン合計データに対して第1の量子化データに相当する4値化が完了する。
E_mry (x + 1) ← E_mry (x + 1) + Err_mry (x) × 7/16 (x <W)
E_mry (x-1) <-E_mry (x-1) + Err_mry (x) × 3/16 (x> 1)
E_mry (x) ← E_mry0 + Err_mry (x) × 5/16 (1 <x <W)
E_mry (x) ← E_mry0 + Err_mry (x) × 8/16 (x = 1)
E_mry (x) ← E_mry0 + Err_mry (x) × 13/16 (x = W)
E_mry0 ← E_mry × 1/16 (x <W)
E_mry0 ← 0 (x = W)
... (26)
As described above, the four-value quantization corresponding to the first quantized data is completed for the three-plane total data for one pixel of Gr1_data + Gr2_data (total data of pixel values of magenta, red, and yellow dot planes).

このようにして得られる3つのドットプレーンの合計データの4値化処理により、少なくとも3プレーントータルで、好適な配置が確保されることになる。ただし、この時点では3つのドットプレーンのどのドットが打たれるかは決定していない。   By the quaternarization processing of the total data of the three dot planes obtained in this way, a suitable arrangement is ensured for at least a total of three planes. However, at this time, it is not determined which dot of the three dot planes is hit.

次に、第二量子化部602において、Gr1_data(すなわち、マゼンタ、レッドの2つのドットプレーンの注目画素の画素値の合計データ)I_mrに対して誤差拡散処理を施し3値化(量子化値0,255,510)を行う。   Next, in the second quantization unit 602, error diffusion processing is performed on Gr1_data (that is, total data of pixel values of the target pixel of the two magenta and red dot planes) I_mr to obtain a ternary value (quantized value 0). , 255, 510).

まずステップS207において、合計データI_mrを第二量子化部602に入力する。なおI_mrは以下のように算出される。   First, in step S207, the total data I_mr is input to the second quantization unit 602. I_mr is calculated as follows.

I_mr =Gr1_data ・・・(27)
図8(a)の第二量子化部602における累積誤差ラインバッファ610は、累積誤差ラインバッファ604と同様の構成を有する。すなわち、累積誤差ラインバッファ610は図13の(b)に示されるように、1個の記憶領域E_mr0と入力画像の横画素数Wと同数の記憶領域E_mr(x)(x=1〜W)とを有し、後述する方法で量子化誤差を格納している。なお、累積誤差ラインバッファ610は処理開始前に全て初期値0で初期化されていてもよいし、ランダム値で初期化されてもよい。
I_mr = Gr1_data (27)
The accumulated error line buffer 610 in the second quantization unit 602 in FIG. 8A has the same configuration as the accumulated error line buffer 604. That is, as shown in FIG. 13B, the cumulative error line buffer 610 has one storage area E_mr0 and the same number of storage areas E_mr (x) (x = 1 to W) as the number of horizontal pixels W of the input image. The quantization error is stored by a method described later. Note that the accumulated error line buffer 610 may be initialized with an initial value of 0 before starting the process, or may be initialized with a random value.

次に、ステップS208において、累積誤差加算部611で、注目画素の横画素位置xに対応する誤差E_mr(x)が加算される。即ち、入力された注目画素の合計値をI_mr、累積誤差加算後のデータをI_mr’とすると、
I_mr’=I_mr+E_mr(x) ・・・(28)
となる。
Next, in step S208, the error E_mr (x) corresponding to the horizontal pixel position x of the target pixel is added by the cumulative error addition unit 611. That is, if the total value of the input pixels of interest is I_mr and the data after accumulated error addition is I_mr ′,
I_mr ′ = I_mr + E_mr (x) (28)
It becomes.

次に、ステップS209において、閾値選択部612で閾値T_mrを選択する。閾値T_mrの選択において、
t_mr=I_mr−I_mr ・・・(29)
とおくと、閾値T_mrは、
T_mr(t_mr)=128 (0≦t_mr≦255) ・・・(30)
と設定される。なお、ドット生成遅延を回避するため、平均量子化誤差が小さくなるよう、閾値T_mr(t_mr)をt_mrに応じて細かく変更しても良い。なお、ここでは、I_mry−I_mrは常に255以下となるので、T_mr(t_mr)=128をとる。
Next, in step S209, the threshold selection unit 612 selects a threshold T_mr. In selecting the threshold T_mr,
t_mr = I_mr-I_mr (29)
The threshold T_mr is
T_mr (t_mr) = 128 (0 ≦ t_mr ≦ 255) (30)
Is set. In order to avoid dot generation delay, the threshold T_mr (t_mr) may be finely changed according to t_mr so that the average quantization error is reduced. Here, since I_mry-I_mr is always 255 or less, T_mr (t_mr) = 128 is taken.

次に、ステップS210において、量子化部613は、誤差加算後の画素データI_mr’と閾値T(t_mr)と前述のGr1_data + Gr2_data(3ドットプレーンの多値化結果Out_mry)とを比較する。そして、出力画素値Out_mr(3値化の値)とGr2_data(すなわちイエロードット最終結果Out_y)を決定する。その規則は次の通りである。   Next, in step S210, the quantization unit 613 compares the pixel data I_mr 'after the error addition with the threshold T (t_mr) and the aforementioned Gr1_data + Gr2_data (3-dot plane multi-value quantization result Out_mry). Then, the output pixel value Out_mr (trinary value) and Gr2_data (that is, the yellow dot final result Out_y) are determined. The rules are as follows:

Out_mry−I_mr’≧T(t_mr)のとき: ・・・(31)
Out_mr=Out_mry−255 ・・・(32)
Out_y=255 ・・・(33)
Out_mry−I_mr’<T(t_mr)のとき: ・・・(34)
Out_mr=Out_mry ・・・(35)
Out_y=0 ・・・(36)
例えば、Out_mry=765の時、Out_mry − I_mr’≧T(t_mr)となるため、式(31)の条件が成立し、Out_mr=510となる。このようにして、式(31)〜(36)で、Gr1_data(すなわちマゼンタ、レッドの2つのドットプレーンの合計データ)の第2の量子化データに相当する3値化(量子化値0,255,510)が決定する。また、それに伴い、Gr1_data(すなわちイエロードットプレーン)(Out_y)の2値化(量子化値0,255)が決定する。つまり、この時点でGr1_dataの2値データが確定することになる。なお、式(33)はGr1_data(イエロードット)が打たれることを意味し、式(36)はイエロードットが打たれないことを意味する。
When Out_mry−I_mr ′ ≧ T (t_mr): (31)
Out_mr = Out_mry-255 (32)
Out_y = 255 (33)
When Out_mry−I_mr ′ <T (t_mr): (34)
Out_mr = Out_mry (35)
Out_y = 0 (36)
For example, when Out_mry = 765, since Out_mry−I_mr ′ ≧ T (t_mr), the condition of Expression (31) is satisfied, and Out_mr = 510. In this way, ternarization (quantization values 0, 255) corresponding to the second quantization data of Gr1_data (that is, the total data of the two dot planes of magenta and red) is expressed by the equations (31) to (36). , 510) is determined. Along with this, binarization (quantization value 0, 255) of Gr1_data (that is, yellow dot plane) (Out_y) is determined. That is, at this time, the binary data of Gr1_data is determined. Expression (33) means that Gr1_data (yellow dot) is shot, and Expression (36) means that yellow dot is not shot.

ここでGr1_data(マゼンタ、レッドの2つのドットプレーンの合計データ)の3値化の意味を説明する。例えばOut_mr=255とは、その場所に、マゼンタ、レッドいずれかのドットが1つ打たれることを意味する。すなわち、Out_mr=255とは、その場所にマゼンタドットが確定するわけでなく、レッドドットも確定しない。この時点で確定していることは、マゼンタかレッドの、いずれのドットが打たれるかわからないが、少なくともどれか一つは打たれることである。   Here, the meaning of the ternarization of Gr1_data (total data of two magenta and red dot planes) will be described. For example, Out_mr = 255 means that one dot of magenta or red is hit at that place. In other words, Out_mr = 255 does not determine a magenta dot at that location, and does not determine a red dot. What is fixed at this point is that it is not known which dot, magenta or red, will be hit, but at least one will be hit.

さらに、Out_mry=510とは、その場所に、マゼンタ、レッドいずれかのドットが2つ打たれることを意味する。同色のドットは最大でも1つしか打つことができないという前提上、マゼンタ、レッドのどちらも打たれることを意味する。   Further, Out_mry = 510 means that two dots of either magenta or red are hit at the place. This means that both magenta and red can be hit on the premise that only one dot of the same color can be hit at most.

以上をまとめると次のようになる。   The above is summarized as follows.

Out_mr=0 ・・・マゼンタ、レッドドットのいずれも打たれない。
Out_mr=255 ・・・マゼンタ、レッドドットのいずれか1つが打たれる。
Out_mr=510 ・・・マゼンタ、レッドドットが打たれる。
Out_mr = 0 ... Neither magenta nor red dot is hit.
Out_mr = 255 One of magenta and red dots is hit.
Out_mr = 510... Magenta and red dots are hit.

ステップS211において、誤差演算部614は注目画素I_mrに誤差加算後の画素データI_mr’と出力画素値Out_mrとの差分量Err_mrを、次の式(37)ようにして計算する。   In step S211, the error calculation unit 614 calculates a difference amount Err_mr between the pixel data I_mr ′ after the error addition to the target pixel I_mr and the output pixel value Out_mr by the following equation (37).

Err_mr(x)=I_mr’−Out_mr ・・・(37)
ステップS212において、誤差拡散部615は、誤差拡散部609と同様に、注目画素の横画素位置xに応じて、累積誤差ラインバッファ610を用いて以下の様に誤差Err_mr(x)を拡散する。
Err_mr (x) = I_mr′−Out_mr (37)
In step S212, similarly to the error diffusion unit 609, the error diffusion unit 615 diffuses the error Err_mr (x) as follows using the accumulated error line buffer 610 according to the horizontal pixel position x of the target pixel.

E_mr(x+1) ← E_mr(x+1)+Err_mr(x)×7/16 (x<W)
E_mr(x−1) ← E_lm(x−1)+Err_lm(x)×3/16 (x>1)
E_mr(x) ← E_mr0+Err_mr(x)×5/16 (1<x<W)
E_mr(x) ← E_mr0+Err_mr(x)×8/16 (x=1)
E_mr(x) ← E_mr0+Err_mr(x)×13/16 (x=W)
E_mr0 ← E_mr×1/16 (x<W)
E_mr0 ← 0 (x=W)
・・・(38)
以上で、1画素分のGr1_data(マゼンタ、レッドドット、M”、R’の2プレーンの合計データ)に対して第2の量子化データに相当する3値化(量子化値0,255,510)が完了する。また、同時に、Gr2_data(イエロードットY”)の第3の量子化データに相当する2値化(量子化値0,255)結果が確定する。
E_mr (x + 1) ← E_mr (x + 1) + Err_mr (x) × 7/16 (x <W)
E_mr (x−1) ← E_lm (x−1) + Err_lm (x) × 3/16 (x> 1)
E_mr (x) ← E_mr0 + Err_mr (x) × 5/16 (1 <x <W)
E_mr (x) ← E_mr0 + Err_mr (x) × 8/16 (x = 1)
E_mr (x) ← E_mr0 + Err_mr (x) × 13/16 (x = W)
E_mr0 ← E_mr × 1/16 (x <W)
E_mr0 ← 0 (x = W)
... (38)
As described above, Gr1_data for one pixel (total data of two planes of magenta, red dot, M ″, and R ′) is ternary (quantized values 0, 255, 510) corresponding to the second quantized data. At the same time, a binarization (quantized value 0, 255) result corresponding to the third quantized data of Gr2_data (yellow dot Y ″) is determined.

つまり、Gr1_dataの3値化は、Gr1_data(マゼンタ、レッド2プレーントータル)に対して、より好適な配置を確保することに目的がある。そして、確保された配置の残りの配置として、Gr2_data(イエロードットY”)の2値化結果が確定するわけである。すなわち、優先度が相対的に高く設定されたGr1_dataはより好適な配置となり、優先度が相対的に低く設定されたGr2_dataはGr1_dataが配置された後の余りの位置に配置される。これにより、Gr1_dataと、Gr2_dataのドットの重なりを許可しない制御が実現する。   That is, the ternarization of Gr1_data has the purpose of ensuring a more suitable arrangement with respect to Gr1_data (magenta and red 2 plane total). Then, the binarization result of Gr2_data (yellow dot Y ″) is determined as the remaining arrangement of the reserved arrangement. That is, Gr1_data having a relatively high priority is a more preferable arrangement. The Gr2_data whose priority is set to be relatively low is arranged at a surplus position after the Gr1_data is arranged, thereby realizing a control that does not allow overlapping of dots of Gr1_data and Gr2_data.

次に、Gr1_1data(すなわちマゼンタドットのプレーンデータ)に対して誤差拡散処理を施し2値化を行う。まずステップS213において、Gr1_1data(マゼンタドットの注目画素のデータ)I_mを第三量子化部603に入力する。なおI_mは以下のように算出される。   Next, error diffusion processing is performed on Gr1_1data (that is, magenta dot plane data) to perform binarization. First, in step S <b> 213, Gr <b> 1 </ b> _ <b> 1 data (magenta dot target pixel data) I_m is input to the third quantization unit 603. I_m is calculated as follows.

I_m=Gr1_1data ・・・(39)
図8の第三量子化部603における累積誤差ラインバッファ616は、累積誤差ラインバッファ604と同様の構成を有する。即ち、累積誤差ラインバッファ616は、図13の(c)に示すように、1個の記憶領域E_m0と入力画像の横画素数Wと同数の記憶領域E_m(x)(x=1〜W)とを有し、後述する方法で量子化誤差を格納している。なお、累積誤差ラインバッファ616は処理開始前に全て初期値0で初期化されていてもよいし、ランダム値で初期化されてもよい。
I_m = Gr1_1data (39)
The accumulated error line buffer 616 in the third quantization unit 603 in FIG. 8 has the same configuration as the accumulated error line buffer 604. That is, as shown in FIG. 13C, the cumulative error line buffer 616 has one storage area E_m0 and the same number of storage areas E_m (x) (x = 1 to W) as the number of horizontal pixels W of the input image. The quantization error is stored by a method described later. Note that the accumulated error line buffer 616 may be initialized with an initial value of 0 before starting the process, or may be initialized with a random value.

次に、ステップS214において、累積誤差加算部617で入力画素データの横画素位置xに対応する誤差E_m(x)が加算される。つまり、分散させて反映されることに相当する。即ち、入力された注目画素データをI_m、累積誤差加算後のデータをI_m’とすると、
I_m’=I_m+E_m(x) ・・・(40)
となる。
Next, in step S214, an error E_m (x) corresponding to the horizontal pixel position x of the input pixel data is added by the cumulative error addition unit 617. That is, it is equivalent to being reflected and reflected. That is, if the input pixel-of-interest data is I_m, and the data after adding the cumulative error is I_m ′,
I_m ′ = I_m + E_m (x) (40)
It becomes.

次にステップS215において、閾値選択部618は、閾値T_mを選択する。閾値T_mの選択においては、例えば、
t_m=I_mr−I_m ・・・(41A)
とおくと、閾値T_mは、
T_m(t_m)=128 (0≦t_m≦255) ・・・(41B)
と設定される。或いは、ドット生成遅延を回避するため、平均量子化誤差が小さくなるよう、t_mに応じて細かく閾値T_mを変更しても良い。なお、I_mr−I_mは255以下となるので、本実施形態では必ずT_m(t_mr)=128をとる。
次に、ステップS216において、量子化部619は、誤差加算後の画素データI_m’と閾値T_m(t_m)とOut_mr(量子化値0,255,510)とを比較する。なお、Out_mr(量子化値0,255,510)は、前述のGr1_data(マゼンタ、レッドの2つのドットプレーンの合計データ)の多値化結果である。そして、Gr1_2data(レッドドット)の最終2値化結果Out_r、とGr1_1data(マゼンタドット)の最終2値化結果Out_mを決定する。その規則は次の通りである。
Next, in step S215, the threshold selection unit 618 selects a threshold T_m. In the selection of the threshold T_m, for example,
t_m = I_mr-I_m (41A)
The threshold T_m is
T_m (t_m) = 128 (0 ≦ t_m ≦ 255) (41B)
Is set. Alternatively, in order to avoid dot generation delay, the threshold value T_m may be finely changed according to t_m so that the average quantization error becomes small. Since I_mr-I_m is 255 or less, T_m (t_mr) = 128 is always used in this embodiment.
Next, in step S216, the quantization unit 619 compares the pixel data I_m ′ after the error addition, the threshold T_m (t_m), and Out_mr (quantized values 0, 255, 510). Out_mr (quantized value 0, 255, 510) is a multi-valued result of the aforementioned Gr1_data (total data of two dot planes of magenta and red). Then, the final binarization result Out_r of Gr1_2 data (red dot) and the final binarization result Out_m of Gr1_1 data (magenta dot) are determined. The rules are as follows:

Out_mr−I_m’≧T(t_m)のとき、 ・・・(42)
Out_m = Out_mr−255 ・・・(43)
Out_r = 255 ・・・(44)
Out_mr−I_m’<T(t_m)のとき ・・・(45)
Out_m = Out_mr ・・・(46)
Out_r = 0 ・・・(47)
例えば、Out_mr=510の時、 Out_mr − I_m’≧T(t_m)となるため、式(42)の条件となり、Out_m=255となる。このため、式(42)〜(47)で、Gr1_1data(マゼンタデータ)Out_mの2値化が決定すると同時にGr1_2data(レッドデータ)Out_rの2値化が決定する。すなわち、レッドドット最終結果Out_rとマゼンタドット最終結果Out_mが同時に確定する。なお、式(44)はレッドドットが打たれることを意味し、式(47)はレッドドットが打たれないことを意味する。
When Out_mr-I_m ′ ≧ T (t_m), (42)
Out_m = Out_mr-255 (43)
Out_r = 255 (44)
When Out_mr-I_m ′ <T (t_m) (45)
Out_m = Out_mr (46)
Out_r = 0 (47)
For example, when Out_mr = 510, since Out_mr−I_m ′ ≧ T (t_m), the condition of Expression (42) is satisfied, and Out_m = 255. For this reason, the binarization of Gr1_1data (magenta data) Out_m is determined at the same time as the binarization of Gr1_2data (red data) Out_r is determined by equations (42) to (47). That is, the final red dot result Out_r and the final magenta dot result Out_m are determined simultaneously. Equation (44) means that a red dot is hit, and equation (47) means that a red dot is not hit.

次に、ステップS217において、誤差演算部620で注目画素I_mに誤差加算後の画素データI_m’と出力画素値Out_mとの差分量Err_mを、次のようにして計算する。   Next, in step S217, the error calculation unit 620 calculates the difference amount Err_m between the pixel data I_m ′ after the error addition to the target pixel I_m and the output pixel value Out_m as follows.

Err_m(x)=I_m’− Out_m ・・・(47)
次に、ステップS218において、誤差拡散部621は、誤差演算部608,615と同様に、誤差を拡散する。即ち、累積誤差ラインバッファ616を用いて、横画素位置xに応じて以下の様に誤差Err_m(x)の拡散処理が行われる。
Err_m (x) = I_m′−Out_m (47)
Next, in step S218, the error diffusion unit 621 diffuses the error similarly to the error calculation units 608 and 615. That is, using the accumulated error line buffer 616, the error Err_m (x) is diffused as follows according to the horizontal pixel position x.

E_m(x+1) ← E_m(x+1)+Err_m(x)×7/16 (x<W)
E_m(x−1) ← E_m(x−1)+Err_m(x)×3/16 (x>1)
E_m(x) ← E_m0+Err_m(x)×5/16 (1<x<W)
E_m(x) ← E_m0+Err_m(x)×8/16 (x=1)
E_m(x) ← E_m0+Err_m(x)×13/16 (x=W)
E_m0 ← E_m×1/16 (x<W)
E_m0 ← 0 (x=W)
・・・(48)
以上で、1画素分のGr1_1data(マゼンタデータM”)に対して2値化(量子化値0,255)が完了する。同時に、Gr1_2data(レッドデータR’)の2値化(量子化値0,255)結果も確定する。
E_m (x + 1) ← E_m (x + 1) + Err_m (x) × 7/16 (x <W)
E_m (x-1) <-E_m (x-1) + Err_m (x) * 3/16 (x> 1)
E_m (x) ← E_m0 + Err_m (x) × 5/16 (1 <x <W)
E_m (x) ← E_m0 + Err_m (x) × 8/16 (x = 1)
E_m (x) ← E_m0 + Err_m (x) × 13/16 (x = W)
E_m0 ← E_m × 1/16 (x <W)
E_m0 ← 0 (x = W)
... (48)
This completes binarization (quantization value 0, 255) for one pixel of Gr1_1data (magenta data M ″). Simultaneously, binarization (quantization value 0) of Gr1_2data (red data R ′) 255) The result is also confirmed.

つまり、Gr1_1data(マゼンタデータ)の2値化は、Gr1_1dataに対して、より好適な配置を確保することに目的がある。そして、Gr1_1dataに対して確保された配置の残りの配置として、Gr1_2data(レッドデータ)の2値化結果が確定するわけである。すなわち、優先度が相対的に高く設定されたGr1_1data(マゼンタデータ)はより好適な配置となり、優先度が相対的に低く設定されたGr1_2data(レッドデータ)はGr1_1dataが配置された後の余りの位置に配置される。これにより、Gr1_dataと、Gr2_dataのドットの重なりを許可しない制御が実現する。   In other words, the binarization of Gr1_1 data (magenta data) has the purpose of ensuring a more favorable arrangement with respect to Gr1_1 data. Then, the binarization result of Gr1_2 data (red data) is determined as the remaining arrangement of the arrangement secured for Gr1_1 data. That is, Gr1_1data (magenta data) set with a relatively high priority is more suitable, and Gr1_2data (red data) set with a relatively low priority is the remaining position after Gr1_1data is arranged. Placed in. Thereby, control which does not permit the overlap of dots of Gr1_data and Gr2_data is realized.

また、以上で説明したように、第1実施形態では2階層のグループ化を行い、階層ごとに再帰的に同様の演算を行うことにより、最終的にここの色成分に対応する2値化データ(2階調データ)を決定している。同様にして、より多いn個の色成分で表現されていた場合であっても、階層化されたグループ化を行うことにより、再帰的な誤差拡散の演算を行うことにより2階調データを決定可能であることが分かる。なお、再帰的に演算実行の有無の判定方法としては、各グループ(第1の色グループと第2の色グループ)に含まれる色成分の数の少なくとも一方が1より大きいか否かを判定するようにすればよい。   Further, as described above, in the first embodiment, the binarized data corresponding to the color component here is finally obtained by performing grouping of two hierarchies and performing the same operation recursively for each hierarchy. (2 gradation data) is determined. Similarly, even if it is expressed by a larger number n of color components, two gradation data is determined by performing recursive error diffusion calculation by performing hierarchical grouping. It turns out that it is possible. As a method for recursively determining whether or not an operation has been performed, it is determined whether at least one of the number of color components included in each group (first color group and second color group) is greater than one. What should I do?

<処理2(ステップS4)>
上述の処理1では(ステップS3)ドット重なりが起こらないよう配置を決定することができる。しかし、ドット打ち込み数が少ない領域(ハイライト領域)では、イエローのドット打ち込み数が少ない。また、イエロードットは視認性が低いため、ドットが抜けたような画像となって、粒状感が悪化してしまう。そこで、以下では、イエローのドット抜けによる粒状感悪化の顕在化を防ぐ処理を行う。
<Process 2 (Step S4)>
In the process 1 described above (step S3), the arrangement can be determined so that dot overlap does not occur. However, in the area where the number of dot shots is small (highlight area), the number of yellow dot shots is small. Further, since the yellow dots have low visibility, the image looks as if the dots are missing, and the graininess deteriorates. Therefore, in the following, processing for preventing the appearance of graininess deterioration due to missing yellow dots is performed.

以下、ステップS4の処理の詳細を、機能構成を説明する図8(b)、フローチャート図14と共に説明する。なお、図8(b)の内部構成は601〜621は図8(a)と同じ構成である。   Hereinafter, details of the processing in step S4 will be described with reference to FIG. The internal configuration of FIG. 8B is the same as that of FIG.

まず、マゼンタ、レッド、イエローの3つのドットプレーンのデータ(各プレーンは0〜255の値をとる)に対して2値化(量子化値0,255)を行う。その場合、まず第一量子化部601は、Gr2_data(イエローのドットプレーンの対応画素のデータI_y)を入力する。そして、入力されたGr2_dataに対して誤差拡散処理を施し、2値化(量子化値0,255)を行う。   First, binarization (quantized values 0, 255) is performed on data of three dot planes of magenta, red, and yellow (each plane takes a value of 0 to 255). In that case, the first quantization unit 601 first receives Gr2_data (data I_y of the corresponding pixel of the yellow dot plane). Then, error diffusion processing is performed on the input Gr2_data, and binarization (quantized values 0, 255) is performed.

より具体的に説明すると、まずステップS301において、Gr2_data(イエロードットプレーンの対応する画素データI_y)を第一量子化部601に入力する。ここで、I_yは次式のように算出される。   More specifically, first, in step S301, Gr2_data (pixel data I_y corresponding to the yellow dot plane) is input to the first quantization unit 601. Here, I_y is calculated as follows.

I_y = Gr2_data ・・・(49)
ステップS302において、累積誤差加算部605は、注目画素の横画素位置xに対応する誤差E_mry(x)を累積誤差ラインバッファ604より読み出し、加算する。即ち、入力された合計データをI_y、累積誤差加算後のデータをI_y’とすると、
I_y’= I_y + E_mry(x) …(50)
となる。
I_y = Gr2_data (49)
In step S302, the accumulated error adding unit 605 reads the error E_mry (x) corresponding to the horizontal pixel position x of the target pixel from the accumulated error line buffer 604 and adds it. That is, if the input total data is I_y and the data after adding the cumulative error is I_y ′,
I_y ′ = I_y + E_mry (x) (50)
It becomes.

次に、ステップS303において、閾値選択部606は閾値T_yを選択する。閾値T_yは、例えば、
T_y(I_y)=128 (0≦I_y≦255) ・・・(51)
と設定される。或いは、ドット生成遅延を回避するために、平均量子化誤差が小さくなるように閾値T_yを入力画素データI_yに応じて細かく変更しても良い。
Next, in step S303, the threshold selection unit 606 selects a threshold T_y. The threshold T_y is, for example,
T_y (I_y) = 128 (0 ≦ I_y ≦ 255) (51)
Is set. Alternatively, in order to avoid dot generation delay, the threshold value T_y may be finely changed according to the input pixel data I_y so that the average quantization error is reduced.

次に、ステップS304において、量子化部607は、誤差加算後の画素データI_y’と閾値T(I_y)とを比較し、出力画素値Out_yを決定する。その規則は次の通りである。   Next, in step S304, the quantization unit 607 compares the pixel data I_y ′ after the error addition and the threshold value T (I_y) to determine the output pixel value Out_y. The rules are as follows:

Out_y=0 ・・・(51)
(0≦I_y≦255,I_y’<T(I_y))
Out_y=255 ・・・(52)
(0≦I_y≦255,I_y’≧T(I_y))
Out_y=0 ・・・イエロードットは打たれない。
Out_y=255 ・・・イエロードットは打たれる。
次に、ステップS305において、誤差演算部608で注目画素のI_yに誤差を加算した後の画素データI_y’と出力画素値Out_yとの差分量Err_mryを、次のようにして計算する。
Out_y = 0 (51)
(0 ≦ I_y ≦ 255, I_y ′ <T (I_y))
Out_y = 255 (52)
(0 ≦ I_y ≦ 255, I_y ′ ≧ T (I_y))
Out_y = 0... Yellow dot is not hit.
Out_y = 255... Yellow dots are hit.
Next, in step S305, a difference amount Err_mry between the pixel data I_y ′ after the error is added to I_y of the target pixel by the error calculation unit 608 and the output pixel value Out_y is calculated as follows.

Err_mry(x)=I_y’− Out_y ・・・(53)
そして、ステップS306において、誤差拡散部609は、横画素位置xに応じて、累積誤差ラインバッファ604において、以下の様に誤差Err_mry(x)の拡散処理を行う。
Err_mry (x) = I_y′−Out_y (53)
In step S306, the error diffusion unit 609 performs diffusion processing of the error Err_mry (x) in the accumulated error line buffer 604 as follows according to the horizontal pixel position x.

E_mry(x+1) ← E_mry(x+1)+Err_mry(x)×7/16 (x<W)
E_mry(x−1) ← E_mry(x−1)+Err_mry(x)×3/16 (x>1)
E_mry(x) ← E_mry0+Err_mry(x)×5/16 (1<x<W)
E_mry(x) ← E_mry0+Err_mry(x)×8/16 (x=1)
E_mry(x) ← E_mry0+Err_mry(x)×13/16 (x=W)
E_mry0 ← E_mry×1/16 (x<W)
E_mry0 ← 0 (x=W)
・・・(54)
以上で、Gr2_data(イエロードットY”)の1画素分の2値化が完了する。
E_mry (x + 1) ← E_mry (x + 1) + Err_mry (x) × 7/16 (x <W)
E_mry (x-1) <-E_mry (x-1) + Err_mry (x) × 3/16 (x> 1)
E_mry (x) ← E_mry0 + Err_mry (x) × 5/16 (1 <x <W)
E_mry (x) ← E_mry0 + Err_mry (x) × 8/16 (x = 1)
E_mry (x) ← E_mry0 + Err_mry (x) × 13/16 (x = W)
E_mry0 ← E_mry × 1/16 (x <W)
E_mry0 ← 0 (x = W)
... (54)
This completes binarization of one pixel of Gr2_data (yellow dot Y ″).

次に、第二量子化部602において、Gr1_data(マゼンタ、レッドの2つのドットプレーンの注目画素の画素値の合計データ)に対して誤差拡散処理を施し3値化(量子化値0,255,510)を行う。   Next, in the second quantizing unit 602, error diffusion processing is performed on Gr1_data (total data of the pixel values of the target pixel of the two magenta and red dot planes) to obtain ternary values (quantized values 0, 255, and 255). 510).

まずステップS307において、Gr1_dataを第二量子化部602に入力する。なおI_mrは以下のように算出される。   First, in step S307, Gr1_data is input to the second quantization unit 602. I_mr is calculated as follows.

I_mr =Gr1_data・・・(55)
図8(b)の第二量子化部602における累積誤差ラインバッファ610は、累積誤差ラインバッファ604と同様の構成を有する。すなわち、累積誤差ラインバッファ610は図13の(b)に示されるように、1個の記憶領域E_mr0と入力画像の横画素数Wと同数の記憶領域E_mr(x)(x=1〜W)とを有し、後述する方法で量子化誤差を格納している。なお、累積誤差ラインバッファ610は処理開始前に全て初期値0で初期化されていてもよいし、ランダム値で初期化されてもよい。
I_mr = Gr1_data (55)
The accumulated error line buffer 610 in the second quantization unit 602 in FIG. 8B has the same configuration as the accumulated error line buffer 604. That is, as shown in FIG. 13B, the cumulative error line buffer 610 has one storage area E_mr0 and the same number of storage areas E_mr (x) (x = 1 to W) as the number of horizontal pixels W of the input image. The quantization error is stored by a method described later. Note that the accumulated error line buffer 610 may be initialized with an initial value of 0 before starting the process, or may be initialized with a random value.

次に、ステップS308において、累積誤差加算部611で、注目画素の横画素位置xに対応する誤差E_mr(x)が加算される。即ち、入力された注目画素の合計値をI_mr、累積誤差加算後のデータをI_mr’とすると、
I_mr’=I_mr+E_mr(x) ・・・(56)
となる。
Next, in step S308, the accumulated error adder 611 adds an error E_mr (x) corresponding to the horizontal pixel position x of the target pixel. That is, if the total value of the input pixels of interest is I_mr and the data after accumulated error addition is I_mr ′,
I_mr ′ = I_mr + E_mr (x) (56)
It becomes.

次に、ステップS309において、閾値選択部606は閾値T_mryを選択する。閾値T_mryは、例えば、入力画素データI_mryに応じて、
T_mr(I_mr)=128 (0≦I_mr≦255) ・・・(57)
T_mr(I_mr)=384 (255<I_mr≦510) ・・・(58)
と設定される。或いは、ドット生成遅延を回避するために、平均量子化誤差が小さくなるように閾値T_mrを入力画素データI_mrに応じて細かく変更しても良い。
Next, in step S309, the threshold selection unit 606 selects a threshold T_mry. The threshold T_mry is, for example, according to the input pixel data I_mry,
T_mr (I_mr) = 128 (0 ≦ I_mr ≦ 255) (57)
T_mr (I_mr) = 384 (255 <I_mr ≦ 510) (58)
Is set. Alternatively, in order to avoid dot generation delay, the threshold T_mr may be finely changed according to the input pixel data I_mr so that the average quantization error is reduced.

次に、ステップS310において、量子化部607は、誤差加算後の画素データI_mr’と閾値T(I_mr)とを比較し、出力画素値Out_mrを決定する。その規則は次の通りである。   Next, in step S310, the quantization unit 607 compares the pixel data I_mr 'after the error addition and the threshold value T (I_mr) to determine the output pixel value Out_mr. The rules are as follows:

Out_mr=0 ・・・(59)
(0≦I_mr≦255,I_mr’<T(I_mr))
Out_mr=255 ・・・(60)
(0≦I_mr≦255,I_mr’≧T(I_mr))又は
(255<I_mr≦510,I_mr’<T(I_mr))
Out_mr=510 ・・・(61)
(255≦I_mr≦510,I_mr’≧T(I_mr))又は
(510<I_mr≦765,I_mr’<T(I_mr))

ここでGr1_data(マゼンタ、レッドの2つのドットプレーンの合計データ)の3値化(I_mr’)の意味を説明する。例えばOut_mr=255とは、その場所に、マゼンタ、レッドいずれかのドットが1つ打たれることを意味する。すなわち、Out_mr=255とは、その場所にマゼンタドットが確定するわけでなく、レッドドットも確定しない。この時点で確定していることは、マゼンタかレッドの、いずれのドットが打たれるかわからないが、少なくともどれか一つは打たれることである。
Out_mr = 0 (59)
(0 ≦ I_mr ≦ 255, I_mr ′ <T (I_mr))
Out_mr = 255 (60)
(0 ≦ I_mr ≦ 255, I_mr ′ ≧ T (I_mr)) or
(255 <I_mr ≦ 510, I_mr ′ <T (I_mr))
Out_mr = 510 (61)
(255 ≦ I_mr ≦ 510, I_mr ′ ≧ T (I_mr)) or
(510 <I_mr ≦ 765, I_mr ′ <T (I_mr))

Here, the meaning of ternarization (I_mr ′) of Gr1_data (total data of two dot planes of magenta and red) will be described. For example, Out_mr = 255 means that one dot of magenta or red is hit at that place. In other words, Out_mr = 255 does not determine a magenta dot at that location, and does not determine a red dot. What is fixed at this point is that it is not known which dot, magenta or red, will be hit, but at least one will be hit.

さらに、Out_mr=510とは、その場所に、マゼンタ、レッドいずれかのドットが2つ打たれることを意味する。同じドットは最大でも1つしか打つことができないという前提上、マゼンタ、レッドのどちらも打たれることを意味する。   Further, Out_mr = 510 means that two dots of either magenta or red are hit at the place. This means that both magenta and red are hit on the premise that only one dot can be hit at most.

以上をまとめると次のようになる。   The above is summarized as follows.

Out_mr=0 ・・・マゼンタ、レッドドットのいずれも打たれない。
Out_mr=255 ・・・マゼンタ、レッドドットのいずれか1つが打たれる。
Out_mr=510 ・・・マゼンタ、レッドドットが打たれる。
Out_mr = 0 ... Neither magenta nor red dot is hit.
Out_mr = 255 One of magenta and red dots is hit.
Out_mr = 510... Magenta and red dots are hit.

ステップS311において、誤差演算部614は注目画素I_mrに誤差加算後の画素データI_mr’と出力画素値Out_mrとの差分量Err_mrを、次の式(62)ようにして計算する。   In step S311, the error calculation unit 614 calculates a difference amount Err_mr between the pixel data I_mr ′ after the error addition to the target pixel I_mr and the output pixel value Out_mr by the following equation (62).

Err_mr(x)=I_mr’−Out_mr ・・・(62)
ステップS312において、誤差拡散部615は、誤差拡散部609と同様に、注目画素の横画素位置xに応じて、累積誤差ラインバッファ610を用いて以下の様に誤差Err_mr(x)を拡散する。
Err_mr (x) = I_mr′−Out_mr (62)
In step S312, similarly to the error diffusion unit 609, the error diffusion unit 615 diffuses the error Err_mr (x) using the accumulated error line buffer 610 according to the horizontal pixel position x of the target pixel as follows.

E_mr(x+1) ← E_mr(x+1)+Err_mr(x)×7/16 (x<W)
E_mr(x−1) ← E_lm(x−1)+Err_lm(x)×3/16 (x>1)
E_mr(x) ← E_mr0+Err_mr(x)×5/16 (1<x<W)
E_mr(x) ← E_mr0+Err_mr(x)×8/16 (x=1)
E_mr(x) ← E_mr0+Err_mr(x)×13/16 (x=W)
E_mr0 ← E_mr×1/16 (x<W)
E_mr0 ← 0 (x=W)
・・・(63)
以上で、1画素分のGr1_data(マゼンタ、レッドドット、M”、R’の2プレーンの合計データ)に対して3値化(量子化値0,255,510)が完了する。
E_mr (x + 1) ← E_mr (x + 1) + Err_mr (x) × 7/16 (x <W)
E_mr (x−1) ← E_lm (x−1) + Err_lm (x) × 3/16 (x> 1)
E_mr (x) ← E_mr0 + Err_mr (x) × 5/16 (1 <x <W)
E_mr (x) ← E_mr0 + Err_mr (x) × 8/16 (x = 1)
E_mr (x) ← E_mr0 + Err_mr (x) × 13/16 (x = W)
E_mr0 ← E_mr × 1/16 (x <W)
E_mr0 ← 0 (x = W)
... (63)
As described above, ternarization (quantized values 0, 255, 510) is completed for Gr1_data (total data of two planes of magenta, red dot, M ″, and R ′) for one pixel.

Gr1_data(マゼンタ、レッドドットの2つのドットプレーンの合計データ)の3値化は、当該2つのドットプレーンのどのドットが打たれるかわからないが、少なくとも2プレーントータルで、より好適な配置を確保することに目的がある。   Although ternarization of Gr1_data (total data of two dot planes of magenta and red dots) does not know which dot of the two dot planes will be hit, at least two planes in total ensure a more favorable arrangement. There is a purpose.

次に、Gr1_1data(マゼンタドットのプレーンデータ)に対して誤差拡散処理を施し2値化を行う。まずステップS313において、マゼンタドットの注目画素のデータI_mを第三量子化部603に入力する。なおI_mは以下のように算出される。   Next, error diffusion processing is performed on Gr1_1data (plane data of magenta dots) to perform binarization. First, in step S 313, the magenta dot target pixel data I_m is input to the third quantization unit 603. I_m is calculated as follows.

I_m=Gr1_1data ・・・(64)
図8(b)の第三量子化部603における累積誤差ラインバッファ616は、累積誤差ラインバッファ604と同様の構成を有する。即ち、累積誤差ラインバッファ616は、図13の(c)に示すように、1個の記憶領域E_m0と入力画像の横画素数Wと同数の記憶領域E_m(x)(x=1〜W)とを有し、後述する方法で量子化誤差を格納している。なお、累積誤差ラインバッファ616は処理開始前に全て初期値0で初期化されていてもよいし、ランダム値で初期化されてもよい。
I_m = Gr1_1data (64)
The accumulated error line buffer 616 in the third quantization unit 603 in FIG. 8B has the same configuration as the accumulated error line buffer 604. That is, as shown in FIG. 13C, the cumulative error line buffer 616 has one storage area E_m0 and the same number of storage areas E_m (x) (x = 1 to W) as the number of horizontal pixels W of the input image. The quantization error is stored by a method described later. Note that the accumulated error line buffer 616 may be initialized with an initial value of 0 before starting the process, or may be initialized with a random value.

次に、ステップS314において、累積誤差加算部617で入力画素データの横画素位置xに対応する誤差E_m(x)が加算される。即ち、入力された注目画素データをI_m、累積誤差加算後のデータをI_m’とすると、
I_m’=I_m+E_m(x) ・・・(65)
となる。
Next, in step S314, the error E_m (x) corresponding to the horizontal pixel position x of the input pixel data is added by the cumulative error addition unit 617. That is, if the input pixel-of-interest data is I_m, and the data after adding the cumulative error is I_m ′,
I_m ′ = I_m + E_m (x) (65)
It becomes.

次にステップS315において、閾値選択部618は、閾値T_mを選択する。閾値T_mの選択においては、例えば、
t_m=I_mr−I_m ・・・(66A)
とおくと、閾値T_mは、
T_m(t_m)=128 (0≦t_m≦255) ・・・(66B)
と設定される。或いは、ドット生成遅延を回避するため、平均量子化誤差が小さくなるよう、t_mに応じて細かく閾値T_mを変更しても良い。なお、I_mr−I_mは255以下となるので、本実施形態では必ずT_m(t_mr)=128をとる。
Next, in step S315, the threshold selection unit 618 selects a threshold T_m. In the selection of the threshold T_m, for example,
t_m = I_mr-I_m (66A)
The threshold T_m is
T_m (t_m) = 128 (0 ≦ t_m ≦ 255) (66B)
Is set. Alternatively, in order to avoid dot generation delay, the threshold value T_m may be finely changed according to t_m so that the average quantization error becomes small. Since I_mr-I_m is 255 or less, T_m (t_mr) = 128 is always used in this embodiment.

次に、ステップS316において、量子化部619は、誤差加算後の画素データI_m’と閾値T_m(t_m)とOut_mr(量子化値0,255,510)とを比較する。なお、Out_mr(量子化値0,255,510)は、前述のGr1_data(マゼンタ、レッドの2つのドットプレーンの合計データ)の多値化結果である。そして、Gr1_2data(レッドドット)の最終2値化結果Out_r、とGr1_2data(マゼンタドット)の最終2値化結果Out_mを決定する。その規則は次の通りである。   Next, in step S316, the quantization unit 619 compares the pixel data I_m ′ after the error addition, the threshold T_m (t_m), and Out_mr (quantized values 0, 255, 510). Out_mr (quantized value 0, 255, 510) is a multi-valued result of the aforementioned Gr1_data (total data of two dot planes of magenta and red). Then, the final binarization result Out_r of Gr1_2 data (red dot) and the final binarization result Out_m of Gr1_2 data (magenta dot) are determined. The rules are as follows:

Out_mr−I_m’≧T(t_m)のとき、 ・・・(67)
Out_m = Out_mr−255 ・・・(68)
Out_r = 255 ・・・(69)
Out_mr−I_m’<T(t_m)のとき ・・・(70)
Out_m = Out_mr ・・・(71)
Out_r = 0 ・・・(72)
例えば、Out_mr=510の時、 Out_mr − I_m’≧T(t_m)となるため、式(69)の条件となり、Out_m=255となる。このため、式(67)〜(72)で、マゼンタプレーンデータOut_mの2値化が決定すると同時にレッドプレーンデータOut_rの2値化が決定する。すなわち、レッドドット最終結果Out_rとマゼンタドット最終結果Out_mが同時に確定する。なお、式(69)はレッドドットが打たれることを意味し、式(72)はレッドドットが打たれないことを意味する。
When Out_mr-I_m ′ ≧ T (t_m), (67)
Out_m = Out_mr-255 (68)
Out_r = 255 (69)
When Out_mr-I_m ′ <T (t_m) (70)
Out_m = Out_mr (71)
Out_r = 0 (72)
For example, when Out_mr = 510, since Out_mr−I_m ′ ≧ T (t_m), the condition of Expression (69) is satisfied and Out_m = 255. Therefore, the binarization of the red plane data Out_r is determined at the same time as the binarization of the magenta plane data Out_m is determined by the equations (67) to (72). That is, the final red dot result Out_r and the final magenta dot result Out_m are determined simultaneously. Equation (69) means that a red dot is hit, and equation (72) means that a red dot is not hit.

次に、ステップS317において、誤差演算部620で注目画素I_mに誤差加算後の画素データI_m’と出力画素値Out_mとの差分量Err_mを、次のようにして計算する。   Next, in step S317, the error calculation unit 620 calculates the difference amount Err_m between the pixel data I_m ′ after the error addition to the target pixel I_m and the output pixel value Out_m as follows.

Err_m(x)=I_m’− Out_m ・・・(73)
次に、ステップS318において、誤差拡散部621は、誤差演算部608,615と同様に、誤差を拡散する。即ち、累積誤差ラインバッファ616を用いて、横画素位置xに応じて以下の様に誤差Err_m(x)の拡散処理が行われる。
Err_m (x) = I_m′−Out_m (73)
Next, in step S318, the error diffusion unit 621 diffuses the error in the same manner as the error calculation units 608 and 615. That is, using the accumulated error line buffer 616, the error Err_m (x) is diffused as follows according to the horizontal pixel position x.

E_m(x+1) ← E_m(x+1)+Err_m(x)×7/16 (x<W)
E_m(x−1) ← E_m(x−1)+Err_m(x)×3/16 (x>1)
E_m(x) ← E_m0+Err_m(x)×5/16 (1<x<W)
E_m(x) ← E_m0+Err_m(x)×8/16 (x=1)
E_m(x) ← E_m0+Err_m(x)×13/16 (x=W)
E_m0 ← E_m×1/16 (x<W)
E_m0 ← 0 (x=W)
・・・(74)
以上で、1画素分のGr1_1data(マゼンタドットプレーンデータM”)に対して2値化(量子化値0,255)が完了する。同時に、Gr1_2data(レッドドットプレーンデータR’)の2値化(量子化値0,255)結果も確定する。
E_m (x + 1) ← E_m (x + 1) + Err_m (x) × 7/16 (x <W)
E_m (x-1) <-E_m (x-1) + Err_m (x) * 3/16 (x> 1)
E_m (x) ← E_m0 + Err_m (x) × 5/16 (1 <x <W)
E_m (x) ← E_m0 + Err_m (x) × 8/16 (x = 1)
E_m (x) ← E_m0 + Err_m (x) × 13/16 (x = W)
E_m0 ← E_m × 1/16 (x <W)
E_m0 ← 0 (x = W)
... (74)
This completes binarization (quantization values 0, 255) for Gr1_1 data (magenta dot plane data M ″) for one pixel. At the same time, binarization of Gr1_2 data (red dot plane data R ′) ( Quantization value 0, 255) The result is also determined.

つまり、Gr1_1data(マゼンタプレーンデータ)の2値化は、Gr1_1dataに対して、より好適な配置を確保することに目的がある。そして、Gr1_1dataに対して確保された配置の余りの配置として、Gr1_2data(レッドドット)の2値化結果が確定するわけである。すなわち、優先度が相対的に高く設定されたGr1_1data(マゼンタドット)はより好適な配置となり、優先度が相対的に低く設定されたGr1_2data(レッドドット)はGr1_1data(マゼンタドット)が配置された後の余りの位置に配置される。つまり、レッドドットに比べて視覚的に目立つマゼンタドットをより好適な位置に配置したほうが、視覚的に良好な画像が得られるからである。   In other words, the binarization of Gr1_1 data (magenta plane data) has the purpose of ensuring a more favorable arrangement with respect to Gr1_1 data. Then, the binarization result of Gr1_2 data (red dot) is determined as the remaining arrangement of the arrangement secured for Gr1_1 data. That is, Gr1_1data (magenta dot) with a relatively high priority is arranged more suitably, and Gr1_2data (red dot) with a relatively low priority is arranged after Gr1_1data (magenta dot) is arranged. It is arranged at the remaining position. In other words, it is possible to obtain a visually good image by arranging magenta dots that are visually conspicuous as compared with red dots at a more suitable position.

以上をまとめると、ステップS4の処理では、まずGr2_dataに対し独立に誤差拡散処理を行い、次にGr1_1dataと、Gr1_2dataのドットが重ならない制御が実現する。   In summary, in the process of step S4, first, error diffusion processing is performed independently on Gr2_data, and then control is performed so that the dots of Gr1_1data and Gr1_2data do not overlap.

ステップS3(処理1)およびステップS4(処理2)において説明したグループ化を用いる処理を実行することにより、処理の複雑度を低減することが可能となる。また、601、602、603の各量子化部で実行される演算処理は共通であるため、物理的には同一の量子化部を時分割で動作させることにより機器構成も単純化可能となる。また、濃度の低いドットが目立たなくなることで、粒状感悪化が顕在化することを防ぐことも可能となる。そのため、より高画質な画像形成が可能となる。   By executing the process using the grouping described in step S3 (process 1) and step S4 (process 2), it is possible to reduce the complexity of the process. In addition, since the arithmetic processing executed by each of the quantization units 601, 602, and 603 is common, the device configuration can be simplified by operating the physically same quantization unit in a time division manner. Moreover, it becomes possible to prevent the deterioration of graininess from becoming obvious by making dots with low density inconspicuous. Therefore, image formation with higher image quality is possible.

以上説明したように、第1実施形態に係る画像処理装置により、処理の複雑度を低減しつつより高画質な画像形成を可能とする技術を提供することができる。   As described above, the image processing apparatus according to the first embodiment can provide a technique that enables image formation with higher image quality while reducing processing complexity.

(変形例)
第1実施形態では、プリンタ2に出力するデータとして各色2値(1ビット)のデータを生成した。しかし、吐出されるインク滴の大きさが可変であるマルチドット記録を行うインクジェットプリンタを対象として、より多値(例えば各色3ビット)のデータを生成しても良い。つまり、インク滴の大きさに対応する値のデータを出力するよう構成してもよい。
(Modification)
In the first embodiment, binary data (1 bit) is generated as data to be output to the printer 2. However, multi-value data (for example, 3 bits for each color) may be generated for an inkjet printer that performs multi-dot recording in which the size of ejected ink droplets is variable. That is, data having a value corresponding to the size of the ink droplet may be output.

また、上述の説明では、当該画像処理をプリンタ2の外部の画像処理装置1により生成するよう構成したが、プリンタ内部に当該処理を実行する処理回路を設けるようにしてもよい。さらに、記録ヘッドに設けられた電子回路により実現しても良い。   In the above description, the image processing is generated by the image processing apparatus 1 outside the printer 2, but a processing circuit for executing the processing may be provided inside the printer. Further, it may be realized by an electronic circuit provided in the recording head.

また、本発明は、例えば記録媒体の記録幅に対応する長さの記録ヘッドを有し、記録ヘッドに対して記録媒体を移動させて記録を行う、いわゆるフルライン型の記録装置など記録装置にも適用できる。すなわち、シリアル型の記録装置(プリンタ)以外の、記録ヘッドを記録媒体に対して相対的に移動させて記録を行う記録装置に対しても適用することができる。   The present invention also relates to a recording apparatus such as a so-called full-line type recording apparatus that has a recording head having a length corresponding to the recording width of the recording medium and performs recording by moving the recording medium relative to the recording head. Is also applicable. That is, the present invention can be applied to a recording apparatus that performs recording by moving a recording head relative to a recording medium, other than a serial type recording apparatus (printer).

(他の実施形態)
なお、本発明は、前述した実施形態の機能を実現するプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置が、供給されたプログラムコードを読み出して実行することによっても達成される。従って、本発明の機能処理をコンピュータで実現するために、コンピュータにインストールされるプログラムコード自体も本発明の技術的範囲に含まれる。
(Other embodiments)
The present invention can also be achieved by supplying a program that realizes the functions of the above-described embodiments directly or remotely to a system or apparatus, and the system or apparatus reads and executes the supplied program code. The Accordingly, the program code itself installed in the computer in order to realize the functional processing of the present invention by the computer is also included in the technical scope of the present invention.

その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。   In this case, the program may be in any form as long as it has a program function, such as an object code, a program executed by an interpreter, or script data supplied to the OS.

プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク(CD、DVD)、光磁気ディスク、磁気テープ、不揮発性のメモリカード、ROMなどがある。   Examples of the recording medium for supplying the program include a floppy (registered trademark) disk, a hard disk, an optical disk (CD, DVD), a magneto-optical disk, a magnetic tape, a nonvolatile memory card, and a ROM.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。   Further, the functions of the above-described embodiments are realized by the computer executing the read program. In addition, based on the instructions of the program, an OS or the like running on the computer performs part or all of the actual processing, and the functions of the above-described embodiments can also be realized by the processing.

さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。   Further, the program read from the recording medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. Thereafter, the CPU of the function expansion board or function expansion unit performs part or all of the actual processing based on the instructions of the program, and the functions of the above-described embodiments are realized by the processing.

第1実施形態による画像形成装置を含む画像形成システムの構成を示したブロック図である。1 is a block diagram illustrating a configuration of an image forming system including an image forming apparatus according to a first embodiment. プリンタ2に搭載される記録ヘッド201の構成例を示す図である。2 is a diagram illustrating a configuration example of a recording head 201 mounted on a printer 2. FIG. 第1実施形態の画像処理装置1の動作フローチャートである。It is an operation | movement flowchart of the image processing apparatus 1 of 1st Embodiment. ハーフトーン処理部105に入力される各色のプレーン61と、2値画像データ62の構成例を示した図である。6 is a diagram illustrating a configuration example of each color plane 61 and binary image data 62 input to a halftone processing unit 105. FIG. 画像処理装置1における色分解処理部103の構成を示す図である。2 is a diagram illustrating a configuration of a color separation processing unit 103 in the image processing apparatus 1. FIG. 特色インク分解処理用LUTの一例を示す図である。FIG. 6 is a diagram illustrating an example of a spot color ink separation processing LUT. ハーフトーン処理部105の動作フローチャートである。6 is an operation flowchart of the halftone processing unit 105. ハーフトーン処理部105の動作の詳細を説明する機能ブロック図である。6 is a functional block diagram illustrating details of an operation of a halftone processing unit 105. FIG. M”、R’、Y”の3プレーンを2つのグループにグループ化する例を示す図である。FIG. 10 is a diagram illustrating an example in which three planes M ″, R ′, and Y ″ are grouped into two groups. CMYKRGBの7プレーンを5つのグループにグループ化する例を示す図である。It is a figure which shows the example which groups 7 planes of CMYKRGB into five groups. ステップS3の処理(処理1)の詳細フローチャートである。It is a detailed flowchart of the process (process 1) of step S3. 誤差拡散処理における注目画素周辺の誤差拡散係数を説明する図である。It is a figure explaining the error diffusion coefficient around the pixel of interest in error diffusion processing. 累積誤差ラインバッファに格納されるデータを示す図である。It is a figure which shows the data stored in an accumulation error line buffer. ステップS4の処理(処理2)の詳細フローチャートである。It is a detailed flowchart of the process (process 2) of step S4.

Claims (5)

画像データを構成するn個(nは2以上の正整数)の色成分の各々に対応するn個のi階調(iは2以上の正整数)データからn個の2階調データを生成する画像処理装置であって、
前記n個のi階調データの各画素の合計値により表現されるデータの各画素を誤差拡散処理によりn+1階調の量子化値に変換し、n個合計のn+1階調データに対応する第1の量子化データを生成する第1の量子化データ生成手段と、
前記n個の色成分を、相対的に視認性の高いk個(k<nの正整数)の色が含まれる第1の色グループと相対的に視認性の低いn−k個の色が含まれる第2の色グループとに区分し、該第2の色グループに対応するn−k個のi階調データの各画素の合計値により表現されるデータの各画素と前記第1の量子化データの各画素との差分量により表現されるデータを誤差拡散処理によりk+1階調の量子化値に変換し、前記第1の色グループに対応するk個合計のk+1階調データに対応する第2の量子化データを生成する第2の量子化データ生成手段と、
前記第1の量子化データの各画素と前記第2の量子化データの各画素との差分量により表現されるデータを前記第2の色グループに対応するn−k個合計に対応する第3の量子化データとして生成する第3の量子化データ生成手段と、
前記kまたは前記n−kの少なくとも一方が1より大きい場合、前記第1の色グループまたは前記第2の色グループの少なくとも一方について、前記第1の量子化データ生成手段、前記第2の量子化データ生成手段および前記第3の量子化データ生成手段を再帰的に実行することにより前記n個の2階調データを生成するよう制御する制御手段と、
を備えることを特徴とする画像処理装置。
Generates n 2 gradation data from n i gradation (i is a positive integer of 2 or more) data corresponding to each of n (n is a positive integer of 2 or more) color components constituting the image data. An image processing apparatus that
Each pixel of the data expressed by the total value of each pixel of the n number of i gradation data is converted into a quantization value of n + 1 gradation by error diffusion processing, and the nth gradation data corresponding to the total of n + 1 gradation data. First quantized data generating means for generating one quantized data;
The n color components are classified into the first color group including k colors (positive integers of k <n) having relatively high visibility and nk colors having relatively low visibility. Each pixel of data represented by a total value of each pixel of nk i gradation data corresponding to the second color group, and the first quantum The data represented by the difference between each pixel of the quantized data is converted into k + 1 gradation quantized values by error diffusion processing, and corresponds to k total k + 1 gradation data corresponding to the first color group. Second quantized data generating means for generating second quantized data;
The data expressed by the difference amount between each pixel of the first quantized data and each pixel of the second quantized data is a third corresponding to the nk total corresponding to the second color group. Third quantized data generating means for generating as quantized data of
When at least one of k or nk is greater than 1, the first quantized data generating means and the second quantizing for at least one of the first color group or the second color group Control means for controlling to generate the n number of two gradation data by recursively executing the data generation means and the third quantized data generation means;
An image processing apparatus comprising:
前記制御手段は、さらに、
前記第1の色グループに対応するk個のi階調データの各画素の合計値により表現されるデータの各画素から生成される量子化データの各画素と前記第3の量子化データ生成手段により生成される第3の量子化データとの差分量により表現されるデータを、前記第2の量子化データ生成手段で用いられる前記各画素の合計値により表現されるデータの各画素に分散させて反映させることを特徴とする請求項1に記載の画像処理装置。
The control means further includes
Each pixel of quantized data generated from each pixel of data represented by the total value of each pixel of k i gradation data corresponding to the first color group and the third quantized data generating means The data expressed by the difference amount from the third quantized data generated by the step is distributed to each pixel of the data expressed by the total value of the pixels used by the second quantized data generating means. The image processing apparatus according to claim 1, wherein the image processing apparatus is reflected.
画像データを構成するn個(nは2以上の正整数)の色成分の各々に対応するn個のi階調(iは2以上の正整数)データからn個の2階調データを生成する画像処理方法であって、
前記n個のi階調データの各画素の合計値により表現されるデータの各画素を誤差拡散処理によりn+1階調の量子化値に変換し、n個合計のn+1階調データに対応する第1の量子化データを生成する第1の量子化データ生成工程と、
前記n個の色成分を、相対的に視認性の高いk個(k<nの正整数)の色が含まれる第1の色グループと相対的に視認性の低いn−k個の色が含まれる第2の色グループとに区分し、該第2の色グループに対応するn−k個のi階調データの各画素の合計値により表現されるデータの各画素と前記第1の量子化データの各画素との差分量により表現されるデータを誤差拡散処理によりk+1階調の量子化値に変換し、前記第1の色グループに対応するk個合計のk+1階調データに対応する第2の量子化データを生成する第2の量子化データ生成工程と、
前記第1の量子化データの各画素と前記第2の量子化データの各画素との差分量により表現されるデータを前記第2の色グループに対応するn−k個合計に対応する第3の量子化データとして生成する第3の量子化データ生成工程と、
前記kまたは前記n−kの少なくとも一方が1より大きい場合、前記第1の色グループまたは前記第2の色グループの少なくとも一方について、前記第1の量子化データ生成工程、前記第2の量子化データ生成工程および前記第3の量子化データ生成工程を再帰的に実行することにより前記n個の2階調データを生成するよう制御する制御工程と、
を備えることを特徴とする画像処理方法。
Generates n 2 gradation data from n i gradation (i is a positive integer of 2 or more) data corresponding to each of n (n is a positive integer of 2 or more) color components constituting the image data. An image processing method for
Each pixel of the data expressed by the total value of each pixel of the n number of i gradation data is converted into a quantized value of n + 1 gradation by error diffusion processing, and the nth gradation data corresponding to the total of n + 1 gradation data. A first quantized data generating step for generating one quantized data;
The n color components are classified into the first color group including k colors (positive integers of k <n) having relatively high visibility and nk colors having relatively low visibility. Each pixel of data represented by a total value of each pixel of n−k i gradation data corresponding to the second color group, and the first quantum The data expressed by the difference between each pixel of the quantized data is converted into k + 1 gradation quantized values by error diffusion processing, and corresponds to k total k + 1 gradation data corresponding to the first color group. A second quantized data generating step for generating second quantized data;
The data expressed by the difference amount between each pixel of the first quantized data and each pixel of the second quantized data is a third corresponding to the nk total corresponding to the second color group. A third quantized data generating step for generating the quantized data of
When at least one of k or nk is greater than 1, the first quantized data generation step, the second quantization for at least one of the first color group or the second color group A control step of controlling to generate the n number of two gradation data by recursively executing a data generation step and the third quantized data generation step;
An image processing method comprising:
請求項3に記載の画像処理方法をコンピュータに実行させるためのプログラム。   A program for causing a computer to execute the image processing method according to claim 3. 請求項2に記載の画像処理方法により生成される前記n個の2階調データをインクの吐出のオン/オフに対応させて記録することを特徴とするインクジェット記録装置。   An inkjet recording apparatus that records the n number of two gradation data generated by the image processing method according to claim 2 in correspondence with on / off of ink ejection.
JP2007181441A 2007-07-10 2007-07-10 Image processing apparatus, image processing method, and ink jet recording apparatus Expired - Fee Related JP4838769B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007181441A JP4838769B2 (en) 2007-07-10 2007-07-10 Image processing apparatus, image processing method, and ink jet recording apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007181441A JP4838769B2 (en) 2007-07-10 2007-07-10 Image processing apparatus, image processing method, and ink jet recording apparatus

Publications (2)

Publication Number Publication Date
JP2009020617A true JP2009020617A (en) 2009-01-29
JP4838769B2 JP4838769B2 (en) 2011-12-14

Family

ID=40360225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007181441A Expired - Fee Related JP4838769B2 (en) 2007-07-10 2007-07-10 Image processing apparatus, image processing method, and ink jet recording apparatus

Country Status (1)

Country Link
JP (1) JP4838769B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010246119A (en) * 2009-04-08 2010-10-28 Xerox Corp METHOD FOR PERFORMING CMYK-CMYKKpRGB COLOR TRANSFORM
JP2011023984A (en) * 2009-07-15 2011-02-03 Canon Inc Image processing apparatus
JP2017184275A (en) * 2017-06-08 2017-10-05 株式会社リコー Image processing apparatus, image processing method, program, and storage medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000067246A (en) * 1998-08-18 2000-03-03 Hajime Matsuoka Area division of image based on line segment on color space
JP2000354172A (en) * 1999-05-07 2000-12-19 Hewlett Packard Co <Hp> Error diffusion halftone method
JP2002171415A (en) * 2000-11-30 2002-06-14 Canon Inc Image processing apparatus and image processing method
JP2004112696A (en) * 2002-09-20 2004-04-08 Canon Inc Image processing device and method therefor
JP2005055824A (en) * 2003-08-07 2005-03-03 Seiko Epson Corp Image display device, image display method and image display program
JP2005277657A (en) * 2004-03-24 2005-10-06 Fuji Xerox Co Ltd Image processor, image forming device, and its control method
JP2006067510A (en) * 2004-08-30 2006-03-09 Canon Inc Image processor, and image processing method
JP2006148334A (en) * 2004-11-17 2006-06-08 Canon Inc Image processing apparatus and recording system
JP2007088847A (en) * 2005-09-22 2007-04-05 Konica Minolta Ij Technologies Inc Image forming apparatus, method and program

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000067246A (en) * 1998-08-18 2000-03-03 Hajime Matsuoka Area division of image based on line segment on color space
JP2000354172A (en) * 1999-05-07 2000-12-19 Hewlett Packard Co <Hp> Error diffusion halftone method
JP2002171415A (en) * 2000-11-30 2002-06-14 Canon Inc Image processing apparatus and image processing method
JP2004112696A (en) * 2002-09-20 2004-04-08 Canon Inc Image processing device and method therefor
JP2005055824A (en) * 2003-08-07 2005-03-03 Seiko Epson Corp Image display device, image display method and image display program
JP2005277657A (en) * 2004-03-24 2005-10-06 Fuji Xerox Co Ltd Image processor, image forming device, and its control method
JP2006067510A (en) * 2004-08-30 2006-03-09 Canon Inc Image processor, and image processing method
JP2006148334A (en) * 2004-11-17 2006-06-08 Canon Inc Image processing apparatus and recording system
JP2007088847A (en) * 2005-09-22 2007-04-05 Konica Minolta Ij Technologies Inc Image forming apparatus, method and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010246119A (en) * 2009-04-08 2010-10-28 Xerox Corp METHOD FOR PERFORMING CMYK-CMYKKpRGB COLOR TRANSFORM
JP2011023984A (en) * 2009-07-15 2011-02-03 Canon Inc Image processing apparatus
JP2017184275A (en) * 2017-06-08 2017-10-05 株式会社リコー Image processing apparatus, image processing method, program, and storage medium

Also Published As

Publication number Publication date
JP4838769B2 (en) 2011-12-14

Similar Documents

Publication Publication Date Title
US8922856B2 (en) Image processing apparatus, image forming apparatus, and control method thereof for printing based on constraining condition information
US7798589B2 (en) Image forming apparatus, image processing apparatus, and control method therefor
JP5921110B2 (en) Image processing apparatus and control method thereof
JP3885310B2 (en) Halftone image generation apparatus and method for reducing defects in printed images
JPH11314383A (en) Manufacture of print driver and color print system
EP1267565A2 (en) Method for multilevel printing of digital images using reduced colorant amounts
JP2009262455A (en) Image forming apparatus, control means for the same, and computer program
JP4599239B2 (en) Image processing method and image processing apparatus
JP2008087382A (en) High-image-quality halftone processing
JP4838769B2 (en) Image processing apparatus, image processing method, and ink jet recording apparatus
JP2005041041A (en) Edge treatment for inkjet printing
JP2011025658A (en) Image forming apparatus and method
JP2004188980A (en) Digital image printing in which reduced amount of colorant is used while maintaining sensed color
JPH115298A (en) Method and device for edge interpolation for image forming device
JP2010120185A (en) Image processing apparatus and image processing method
JP2006115431A (en) Intermediate tone processor, printer, information processing apparatus, intermediate tone processing method and program
US6249354B1 (en) Image processing apparatus and method
JP2005280276A (en) Ink-jet recording method and ink-jet recording system
JP4251492B2 (en) Image processing apparatus, image recording apparatus, program, and recording medium
JP2005053147A (en) Edge processing for inkjet printing
US20030081230A1 (en) Delayed decision dot placement for plane-dependent CMYK error diffusion
JP2005059499A (en) Image forming apparatus and method, recording head, computer program, and recording medium
JP2005295131A (en) Apparatus, method, and program for processing image
JP4561414B2 (en) Print control apparatus, print control method, and print control program
JP2007129559A (en) Image processor and image processing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110829

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: 20110902

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: 20110930

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

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees