JP2006067510A - Image processor, and image processing method - Google Patents
Image processor, and image processing method Download PDFInfo
- Publication number
- JP2006067510A JP2006067510A JP2004250935A JP2004250935A JP2006067510A JP 2006067510 A JP2006067510 A JP 2006067510A JP 2004250935 A JP2004250935 A JP 2004250935A JP 2004250935 A JP2004250935 A JP 2004250935A JP 2006067510 A JP2006067510 A JP 2006067510A
- Authority
- JP
- Japan
- Prior art keywords
- value
- pixel
- data
- color component
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Abstract
Description
本発明は、誤差拡散処理のための技術に関するものである。 The present invention relates to a technique for error diffusion processing.
従来、多値データを2値で表現する疑似中間調処理として誤差拡散法が知られている(”An Adaptive Algorithm for Spatial Gray Scale” in society for Information Display 1975 Symposium Digest of Technical Papers, 1975, 36)。この方法は、着目画素をp、その濃度をv、着目画素pの周辺に位置する画素p0,p1,p2,p3の濃度をそれぞれv0,v1,v2,v3、2値化のための閾値をTとすると、先ず、着目画素pにおける2値化誤差Eを周辺画素p0,p1,p2,p3について経験的に求めた重み係数W0,W1,W2,W3で振り分けてマクロ的に平均濃度を元画像の濃度と等しくする方法である。このとき、着目画素を2値化した結果の出力2値データをoとすると、出力2値データは以下のようにして求める。 Conventionally, an error diffusion method is known as pseudo-halftone processing for expressing multilevel data in binary ("An Adaptive Algorithm for Spatial Gray Scale" in society for Information Display 1975 Symposium Digest of Technical Papers, 1975, 36). . In this method, the pixel of interest is p, its density is v, and the densities of pixels p0, p1, p2, and p3 located around the pixel of interest p are v0, v1, v2, v3, and threshold values for binarization. Assuming T, first, the binarization error E at the target pixel p is distributed by weight coefficients W0, W1, W2, and W3 empirically obtained for the surrounding pixels p0, p1, p2, and p3, and the average density is obtained in a macro manner. This is a method of equalizing the image density. At this time, if the output binary data obtained by binarizing the pixel of interest is o, the output binary data is obtained as follows.
v≧T ならば o=1,E=v−Vmax (1)
v<T ならば o=0,E=v−Vmin
(ただし、Vmax:最大濃度、Vmin:最小濃度)
v0=v0+E×W0 (2)
v1=v1+E×W1 (3)
v2=v2+E×W2 (4)
v3=v3+E×W3 (5)
(重み係数の例:W0=7/16,W1=1/16,W2=5/16,W3=3/16 )
従来ではこのような方法により、多色、例えば、カラーインクジェットプリンタ等で用いられるシアン、マゼンタ、イエロー、ブラックの4色を擬似中間調処理する場合には各色独立に上記誤差拡散法等を用いて処理を行っていたため、1色について見た場合には視覚特性が優れていても、2色以上が重なると必ずしも良好な視覚特性が得られなかった。
If v ≧ T, o = 1, E = v−Vmax (1)
If v <T, o = 0, E = v-Vmin
(However, Vmax: maximum density, Vmin: minimum density)
v0 = v0 + E × W0 (2)
v1 = v1 + E × W1 (3)
v2 = v2 + E × W2 (4)
v3 = v3 + E × W3 (5)
(Examples of weighting factors: W0 = 7/16, W1 = 1/16, W2 = 5/16, W3 = 3/16)
Conventionally, when such a method is used to perform pseudo-halftone processing of multiple colors, for example, cyan, magenta, yellow, and black, which are used in color ink jet printers, etc., the above error diffusion method is used independently for each color. Since the processing was performed, when one color was seen, even if the visual characteristics were excellent, good visual characteristics could not always be obtained when two or more colors overlapped.
この欠点を改良するために、従来技術としては、2色以上を組み合わせて誤差拡散法を用いることにより、2色以上が重なり合う場合においても良好な視覚特性の得られる擬似中間調処理技術が開示されている(特許文献1,2を参照)。
In order to improve this drawback, as a conventional technique, there is disclosed a pseudo halftone processing technique capable of obtaining good visual characteristics even when two or more colors overlap by using an error diffusion method by combining two or more colors. (See
しかしながらこれらの方法では入力画素に対応する出力を決定する際に、比較器等によりその出力値を決定しているために、例えば出力階調数を変更する場合などにおいてはハードウェアにより実装されている場合には回路を、あるいはソフトウェアにより実装されている場合にはプログラムを大きく変更しなければならなかった。 However, in these methods, when the output corresponding to the input pixel is determined, the output value is determined by a comparator or the like. For example, when the number of output gradations is changed, it is implemented by hardware. If so, the circuit had to be changed significantly, or if implemented by software, the program had to be changed significantly.
また、2色のそれぞれの色の出力階調数が異なる場合、例えばシアンの出力階調は4値であるが、マゼンタは2値であるような場合、あるいは出力色数を3色以上に対応させようとした場合にも、同様に回路あるいはプログラムに大きな変更を加えなければ対応ができなかった。 Also, when the number of output gradations of each of the two colors is different, for example, the output gradation of cyan has four values, but magenta has two values, or the number of output colors corresponds to three or more colors. Similarly, even if it was attempted to do so, it could not be dealt with unless the circuit or program was significantly changed.
そのような問題を回避するための方法として、2色以上の多値画像信号を入力とし、各色に対して既に擬似階調処理が済んだ画素からの誤差信号を色毎にそれぞれ加算する加算手段と、各々の加算手段からの出力を入力としてLUT(ルックアップテーブル)を参照することにより色毎の疑似階調出力を決定する出力決定手段と、同出力決定手段からの色毎の出力と色毎の加算手段からの出力に基づいて着目画素における誤差を計算する色毎の誤差計算手段とを設けて処理を行う方法も従来考えられている。この構成によれば、2色以上を組み合わせて誤差拡散法を行う場合においても容易に複数の出力階調数に対応したり、色毎に異なる出力階調数を採用したりすることが可能な柔軟な処理を行うことが可能となる。 As a method for avoiding such a problem, adding means for inputting multi-value image signals of two or more colors and adding error signals from pixels that have already undergone pseudo-gradation processing for each color for each color. Output determining means for determining the pseudo gradation output for each color by referring to the LUT (Look Up Table) with the output from each adding means as input, and the output and color for each color from the output determining means A method of performing processing by providing an error calculation unit for each color that calculates an error in a pixel of interest based on an output from each addition unit has also been considered. According to this configuration, even when the error diffusion method is performed by combining two or more colors, it is possible to easily cope with a plurality of output gradation numbers or adopt different output gradation numbers for each color. Flexible processing can be performed.
しかし、この技術では組み合わせて処理する色数が3色、4色と増えるとLUTを3次元、4次元とするため、LUTのサイズが指数倍に大きくなる。そのため印刷装置の記憶容量もそれに従い大きくしなければならない。それは印刷装置の設計時において欠点となる。大きな記憶容量の記憶装置を積むためにコストもかかる。 However, in this technique, when the number of colors processed in combination increases to three colors and four colors, the LUT becomes three-dimensional and four-dimensional, so the LUT size increases exponentially. Therefore, the storage capacity of the printing apparatus must be increased accordingly. This is a drawback when designing a printing device. It is also expensive to load a storage device with a large storage capacity.
実際のインク色構成を見ると、特にグレーのような色で、シアンやマゼンタ、ブラック、イエロー、ライトシアン、ライトマゼンタ、ライトブラックなど多数色から構成される場合が多い。そして、シアンとマゼンタや、シアンとマゼンタとブラック、ブラックとライトブラックなどのドットが重なり合い、2色や3色、4色のドットが重なって発生するカラーのドットパターンが発生している場合が従来多く見られた。ドットが重なって発生するドットパターンにより粒状的なノイズとなったり、色の階調に滑らかさが失われたりする。ここで、上記の方法を用いると、2色までは良好であるが、3色の場合や4色の場合のLUTのサイズが2色の時よりずっと大きく、印刷装置にかける負担が増大したり、コストがかかったりするのである。
本発明は以上の問題に鑑みてなされたものであり、複数の色成分それぞれを組み合わせて誤差拡散法を行う場合であっても、出力階調数の変更や、色成分毎の出力階調数の変更を容易にするための技術を提供することを目的とする。 The present invention has been made in view of the above problems. Even when the error diffusion method is performed by combining a plurality of color components, the number of output gradations can be changed or the number of output gradations for each color component can be changed. It is an object of the present invention to provide a technique for facilitating the change of the system.
また、本発明の別の目的は、誤差拡散処理を行う際に要するメモリ量を従来よりも軽減させることを目的とする。 Another object of the present invention is to reduce the amount of memory required for performing error diffusion processing as compared with the prior art.
本発明の目的を達成するために、例えば本発明の画像処理方法は以下の構成を備える。 In order to achieve the object of the present invention, for example, an image processing method of the present invention comprises the following arrangement.
即ち、画像処理方法であって、
画素Pの色成分毎の画素値を入力する入力工程と、
前記入力工程で入力された色成分毎の画素値を、複数のグループに分割する分割工程と、
注目グループ内のそれぞれの色成分について従前に計算された誤差値を、当該注目グループ内のそれぞれの色成分の画素値に加算する加算工程と、
前記加算工程による加算処理後のそれぞれの色成分の画素値の組み合わせに応じて、前記分割時における前記注目グループ内のそれぞれの色成分の画素値をN値化(N≧2)するN値化工程と
前記N値化工程によりN値化された結果を出力する出力工程と、
前記N値化工程によりN値化されたそれぞれの色成分の画素値を、前記分割時における前記注目グループ内のそれぞれの色成分の画素値が取りうる範囲内に正規化する正規化工程と、
前記加算工程で加算処理後の前記注目グループ内のそれぞれの色成分の画素値と、前記正規化工程で正規化処理後の前記注目グループ内のそれぞれの色成分の画素値との差分値を計算する差分計算工程と、
前記差分計算工程でそれぞれの色成分について求めた差分値を、前記入力工程で前記画素Pの次に入力する画素Rにおいて前記注目グループに対応するグループ内のそれぞれの色成分に前記加算工程で加算すべき誤差値として保持する保持工程と、
前記加算工程、前記N値化工程、前記出力工程、前記正規化工程、前記差分計算工程、前記保持工程を前記分割工程で分割されたそれぞれのグループについて繰り返す繰り返し工程と
を備えることを特徴とする。
That is, an image processing method,
An input step of inputting a pixel value for each color component of the pixel P;
A division step of dividing the pixel values for each color component input in the input step into a plurality of groups;
An adding step of adding the error value previously calculated for each color component in the group of interest to the pixel value of each color component in the group of interest;
N-value conversion for converting the pixel values of the respective color components in the group of interest into N-values (N ≧ 2) according to the combination of the pixel values of the respective color components after the addition processing in the addition step. A process and an output process for outputting the result of N-value conversion by the N-value conversion process;
A normalization step of normalizing the pixel values of the respective color components that have been N-valued by the N-value conversion step within a range that can be taken by the pixel values of the respective color components in the group of interest at the time of the division;
The difference value between the pixel value of each color component in the target group after addition processing in the addition step and the pixel value of each color component in the target group after normalization processing in the normalization step is calculated. Differential calculation process to
The difference value obtained for each color component in the difference calculation step is added in the addition step to each color component in the group corresponding to the group of interest in the pixel R input next to the pixel P in the input step. Holding process to hold as an error value to be
A repetition step of repeating the addition step, the N-value conversion step, the output step, the normalization step, the difference calculation step, and the holding step for each group divided in the division step. .
本発明の目的を達成するために、例えば本発明の画像処理装置は以下の構成を備える。 In order to achieve the object of the present invention, for example, an image processing apparatus of the present invention comprises the following arrangement.
即ち、画像処理装置であって、
画素Pの色成分毎の画素値を入力する入力手段と、
前記入力手段が入力した色成分毎の画素値を、複数のグループに分割する分割手段と、
注目グループ内のそれぞれの色成分について従前に計算された誤差値を、当該注目グループ内のそれぞれの色成分の画素値に加算する加算手段と、
前記加算手段による加算処理後のそれぞれの色成分の画素値の組み合わせに応じて、前記分割時における前記注目グループ内のそれぞれの色成分の画素値をN値化(N≧2)するN値化手段と
前記N値化手段によりN値化された結果を出力する出力手段と、
前記N値化手段によりN値化されたそれぞれの色成分の画素値を、前記分割時における前記注目グループ内のそれぞれの色成分の画素値が取りうる範囲内に正規化する正規化手段と、
前記加算手段による加算処理後の前記注目グループ内のそれぞれの色成分の画素値と、前記正規化手段による正規化処理後の前記注目グループ内のそれぞれの色成分の画素値との差分値を計算する差分計算手段と、
前記差分計算手段がそれぞれの色成分について求めた差分値を、前記入力手段が前記画素Pの次に入力する画素Rにおいて前記注目グループに対応するグループ内のそれぞれの色成分に前記加算手段によって加算すべき誤差値として保持する保持手段と、
前記加算手段、前記N値化手段、前記出力手段、前記正規化手段、前記差分計算手段、前記保持手段による処理を前記分割手段で分割されたそれぞれのグループについて繰り返す繰り返し手段と
を備えることを特徴とする。
That is, an image processing apparatus,
Input means for inputting a pixel value for each color component of the pixel P;
A dividing unit that divides pixel values for each color component input by the input unit into a plurality of groups;
Adding means for adding the error value previously calculated for each color component in the group of interest to the pixel value of each color component in the group of interest;
N-value conversion for converting the pixel values of the respective color components in the group of interest into N-values (N ≧ 2) according to the combination of the pixel values of the respective color components after the addition processing by the addition means Means and output means for outputting the result of the N-value conversion by the N-value conversion means;
Normalizing means for normalizing the pixel values of the respective color components that have been N-valued by the N-value converting means within a range that can be taken by the pixel values of the respective color components in the group of interest at the time of the division;
The difference value between the pixel value of each color component in the group of interest after the addition process by the adding unit and the pixel value of each color component in the group of attention after the normalization process by the normalization unit is calculated. Difference calculation means to
The addition means adds the difference value obtained for each color component by the difference calculation means to each color component in the group corresponding to the group of interest in the pixel R that is input next to the pixel P by the input means. Holding means for holding as an error value to be
A repeating means for repeating the processing by the adding means, the N-value converting means, the output means, the normalizing means, the difference calculating means, and the holding means for each group divided by the dividing means. And
本発明の構成により、複数の色成分それぞれを組み合わせて誤差拡散法を行う場合であっても、出力階調数の変更や、色成分毎の出力階調数の変更を容易にすることができる。また、誤差拡散処理を行う際に要するメモリ量を従来よりも軽減させることができる。 According to the configuration of the present invention, even when the error diffusion method is performed by combining a plurality of color components, it is possible to easily change the number of output gradations and the number of output gradations for each color component. . In addition, the amount of memory required for performing error diffusion processing can be reduced as compared with the prior art.
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。 Hereinafter, the present invention will be described in detail according to preferred embodiments with reference to the accompanying drawings.
[第1の実施形態]
図1は、本実施形態に係る画像処理装置の基本構成を示すブロック図である。本実施形態に係る画像処理装置は、8ビットの多値画素データを入力し、これに誤差拡散処理を行うことで2値データ(階調数=2)に変換する処理を行う。
[First Embodiment]
FIG. 1 is a block diagram showing a basic configuration of an image processing apparatus according to the present embodiment. The image processing apparatus according to the present embodiment inputs 8-bit multi-value pixel data and performs error diffusion processing on the data to convert it into binary data (number of gradations = 2).
同図においてI0,I1はそれぞれ入力画素の色0(例えばシアン)の画素データ、色1(例えばマゼンタ)の画素データである。それぞれの画素データは8ビットで表現されるため、1つの画素について各色成分の画素値は0〜255の値を取ることになる。入力画素データI0、I1はそれぞれ加算器1a、1bに入力される。
In the figure, I0 and I1 are pixel data of color 0 (for example, cyan) and pixel data of color 1 (for example, magenta), respectively. Since each pixel data is expressed by 8 bits, the pixel value of each color component takes a value of 0 to 255 for one pixel. Input pixel data I0 and I1 are input to
加算器1aは、入力画素データI0が示す画素値に、既に擬似階調処理が済んだ画素からの誤差データE0が示す誤差値を加算し、画素データI’0を生成する(I’0=I0+E0)。生成した画素データI’0は出力決定部2,及び誤差計算部3aに出力する。一方、加算器1bは、入力画素データI1が示す画素値に、既に擬似階調処理が済んだ画素からの誤差データE1が示す誤差値を加算し(I’1=I1+E1)、画素データI’1を生成する。生成した画素データI’1は出力決定部2,及び誤差計算部3bに出力する。誤差データE0、E1については後述する。
The
尚、加算器1a、1bに最初の入力画素データI0、I1が入力された場合、誤差データE0(E1)は存在しないので、何もせずに、入力画素データI0(I1)を入力画素データI’0(I’1)として出力決定部2、誤差計算部3a(3b)に出力する、もしくは、E0=E1=0として上記処理を行う。
When the first input pixel data I0 and I1 are input to the
ここで、出力決定部2について説明する。図2は、出力決定部2の基本構成を示すブロック図である。
Here, the
同図において7a、7bは図10に示すような構成を有するLUT(ルックアップテーブル)で、それぞれ画素データI’0、I’1を受け、対応する値g0,g1を出力する。
In the figure,
図10はLUT(7a、7b)の構成例を示す図である。同図に示す如く、LUT(7a、7b)は、画素データ(I’0、I’1)を0〜8の整数値に正規化する為のものである。よって、LUT7aに画素データI’0が入力されると、図10に示すテーブルにおいてこの画素データI’0に対応する出力データg0が出力される。また、LUT7bに画素データI’1が入力されると、図10に示すテーブルにおいてこの画素データI’1に対応する出力データg1が出力される。出力データg0,g1はそれぞれLUT4に入力される。
FIG. 10 is a diagram illustrating a configuration example of the LUT (7a, 7b). As shown in the figure, the LUT (7a, 7b) is for normalizing the pixel data (I'0, I'1) to an integer value of 0-8. Therefore, when the pixel data I'0 is input to the
LUT4は、入力されたデータg0が示す値、データg1が示す値の組み合わせにより、データg0に対応する2値データo0、データg1に対応する2値データo1を出力する。
The
図3はLUT4について示した図である。以下、同図を用いてLUT4について説明する。図3(a)に示す如く、0≦g0≦8,0≦g1≦8(LUT7a、7bによる正規化範囲内)で、且つg0を一方の軸(同図では横軸)、g1を他方の軸(同図では縦軸)とする平面内には、出力データg0,g1のそれぞれのデータが示す値の組み合わせに応じて決まる2値データo0,o1が取りうる値の分布が配置されている。図3(a)において黒丸、白丸、黒三角、黒四角の記号が意味するところは図3(b)に示す。
FIG. 3 is a diagram showing the
よって、例えばデータg0の値が「5」、データg1の値が「2」である場合には図3(a)に示す平面を参照すると黒三角であるので、図3(b)のテーブルを参照すると、o0=1,o1=0となっている。即ち、データg0の値が「5」である場合にはデータg0は「1」のデータo0に2値化され、データg1の値が「2」である場合にはデータg1は「0」のデータo1に2値化される。 Therefore, for example, when the value of the data g0 is “5” and the value of the data g1 is “2”, referring to the plane shown in FIG. 3A, it is a black triangle, so the table of FIG. Referring to it, o0 = 1 and o1 = 0. That is, when the value of the data g0 is “5”, the data g0 is binarized to the data o0 of “1”, and when the value of the data g1 is “2”, the data g1 is “0”. The data o1 is binarized.
このようにして出力決定部2は、画素データI’0、I’1をそれぞれ2値化し、2値データo0、o1を出力する。2値データo0、o1は本装置に入力された入力画素データI0、I1に対する誤差拡散処理結果として外部に出力される。
In this way, the
また、次の画素データI0、I1が加算器1a、1bに入力された場合に、画素データI0、I1に加算される誤差データE0,E1を誤差計算部3a、3bが計算するために、2値データo0、o1はそれぞれ誤差計算部3a、3bに入力される。
Further, when the next pixel data I0 and I1 are input to the
図4は、誤差計算部3a、3bの基本構成を示すブロック図である。2値データo0(o1)はLUT5に入力され、ここで、入力画素データ(I0、I1)が示す値の範囲内の整数値に正規化される。図5はLUT5の構成例を示す図である。
FIG. 4 is a block diagram showing a basic configuration of the
LUT5は同図に示す如く、2値データo0(o1)の値が0であれば「0」に変換し、2値データo0(o1)の値が1であれば「255」に変換する為のテーブルである。よってLUT5からは、2値データo0(o1)を入力画素データ(I0、I1)が示す値の範囲内の整数値(0〜255)に正規化した結果o’0(o’1)が出力される。正規化結果のデータo’0(o’1)は減算機6に入力される。
The
減算機6には、正規化結果のデータo’0(o’1)と共に、加算器1a(1b)から出力された画素データI’0(I’1)が入力されるので、それぞれの差分を以下のようにして計算し、これを誤差データとして求める。
Since the pixel data I′0 (I′1) output from the
E0=I’0−o’0
E1=I’1−o’1
よって誤差計算部3aは上述のようにして誤差データE0を求めて保持し、誤差計算部3bは上述のようにして誤差データE1を求めて保持する。そして誤差計算部3aは求めた誤差データE0を加算器1aに出力し、誤差計算部3bは求めた誤差データE1を加算器1bに出力する。この誤差データE0、E1は、加算器1a、1bに次の入力画素データI0、I1が入力された場合に、それぞれに加算するためのものである。
E0 = I'0-o'0
E1 = I'1-o'1
Therefore, the error calculation unit 3a obtains and holds the error data E0 as described above, and the
そして以降、順次本画像処理装置に入力画素データI0、I1を入力すると、入力された入力画素データI0、I1に対する2値データo0、o1を求めて出力すると共に、次に入力される入力画素データI0、I1に加算すべき誤差データE0、E1の計算を行う。 Thereafter, when the input pixel data I0 and I1 are sequentially input to the image processing apparatus, binary data o0 and o1 corresponding to the input pixel data I0 and I1 are obtained and output, and the next input pixel data is input. Error data E0 and E1 to be added to I0 and I1 are calculated.
図17は、本実施形態に係る上記処理のフローチャートである。各ステップにおける処理については上述の通りであるので、ここでは簡単に行う。 FIG. 17 is a flowchart of the above processing according to the present embodiment. Since the processing in each step is as described above, it is simply performed here.
先ず入力画素データI0(I1)を加算器1a(1b)に入力すると(ステップS1701)、加算器1a(1b)は入力画素データI0(I1)が示す値に誤差データE0(E1)が示す値を加算して画素データI’0(I’1)を生成し、出力決定部2に出力する(ステップS1702)。尚、本ステップにおける処理が最初に行われる場合には、誤差データE0(E1)は存在しないので、本ステップにおける処理は行わずに処理をステップS1703に進めるか、E0=E1=0として本ステップにおける処理を行う。
First, when the input pixel data I0 (I1) is input to the
出力決定部2のLUT7a(7b)は、画素データI’0(I’1)の値を所定の範囲内の整数値に正規化したデータg0(g1)を生成し、そしてデータg0,g1の組み合わせによって2値データo0、o1を求める(ステップS1703)。
The
そして出力決定部2は、この2つの2値データo0、o1をそれぞれ入力画素データI0、I1に対する誤差拡散結果として外部に出力される(ステップS1704)。
Then, the
一方、この2値データo0、o1はそれぞれ誤差計算部3a、3bに入力される。誤差計算部3a(3b)は入力された2値データo0(o1)の値を入力画素データ(I0、I1)の値が取りうる範囲内の整数値に正規化したデータo’0(o’1)を生成し(ステップS1705)、これと加算器1a(1b)からの画素データI’0(I’1)との差分を誤差データE0(E1)として求める(ステップS1706)。
On the other hand, the binary data o0 and o1 are input to the
そして処理をステップS1701に戻し、以降の処理を入力画素データの入力が無くなるまで行う。即ち以上の構成により、1つの画素に対する処理が完了するので、以上の処理を処理方向に1画素づつずらして繰り返すことにより1ライン分の処理を行い、さらに1ラスタづつずらして同様の処理をくり返すことにより画像全体に対する疑似階調処理が可能となる。 Then, the process returns to step S1701, and the subsequent processes are performed until there is no input pixel data input. In other words, the processing for one pixel is completed with the above configuration, so that the above processing is repeated by shifting one pixel at a time in the processing direction to perform processing for one line, and then the same processing is performed by shifting by one raster. By returning, pseudo gradation processing can be performed on the entire image.
また、LUT4、5は図3、図5に示す如く構成を有するので、例えば特開平8−279920号公報や特開平11−10918号公報等に開示されているような、2色を組み合わせて誤差拡散法を行うのと同じ効果が得られる。
Further, since the
なお、本実施形態ではN番目に入力された入力画素データに基づいて求めた誤差データを(N+1)番目に入力された入力画素データに重み付け無しに加算しているが、前回求めた誤差データに所定の重み付けを行って、今回入力された画素データに加算するようにしても良い。 In this embodiment, the error data obtained based on the Nth input pixel data is added to the (N + 1) th input pixel data without weighting, but the previously obtained error data is added. A predetermined weighting may be performed and added to the pixel data input this time.
また、本実施形態では入力画素データが8ビットの場合について説明したが、入力画素データがnビット(本実施形態ではn=8)である場合には、上記「255」なる数値は「2n」となる。また、上記正規化処理における正規化範囲は上記範囲に限定するものではない。 In this embodiment, the case where the input pixel data is 8 bits has been described. However, when the input pixel data is n bits (n = 8 in this embodiment), the numerical value “255” is “2 n. " Further, the normalization range in the normalization process is not limited to the above range.
[第2の実施形態]
第1の実施形態では、入力画素データを2値化して出力していたが、本実施形態では3値化して出力する。即ち、出力するデータは3階調のものとなる。以下、入力画素データを3値化して出力する為の処理について説明するが、本実施形態に係る画像処理装置の構成については以下説明する点以外については第1の実施形態と同じである。
[Second Embodiment]
In the first embodiment, input pixel data is binarized and output, but in the present embodiment, it is binarized and output. That is, the data to be output has three gradations. Hereinafter, the process for ternizing the input pixel data and outputting it will be described. The configuration of the image processing apparatus according to this embodiment is the same as that of the first embodiment except for the points described below.
先ず、本実施形態では、出力を3値データとすべく、LUT7a、7bの構成が第1の実施形態とは異なる。図11は、本実施形態に係るLUT7a、7bの構成例を示す図である。LUT7a、7bの構成が第1の実施形態とは異なっても、その使用方法については第1の実施形態と同じである。
First, in the present embodiment, the configurations of the
また本実施形態では、出力を3値データとすべく、LUT4の構成についても第1の実施形態とは異なる。図6は、本実施形態に係るLUT4について示した図である。図6(a)に示す如く、0≦g0≦6,0≦g1≦6(LUT7a、7bによる正規化範囲内)で、且つg0を一方の軸(同図では横軸)、g1を他方の軸(同図では縦軸)とする平面内には、出力データg0,g1のそれぞれのデータが示す値の組み合わせに応じて決まる2値データo0,o1が取りうる値の分布が配置されている。図6(a)において白丸、黒丸、白三角、黒三角、白四角、黒四角、白星、黒星、二重丸の記号が意味するところは図6(b)に示す。
In this embodiment, the configuration of the
よって、例えばデータg0の値が「1」、データg1の値が「1」である場合には図6(a)に示す平面を参照すると白丸であるので、図6(b)のテーブルを参照すると、o0=0,o1=0となっている。即ち、データg0の値が「1」である場合にはデータg0は「0」のデータo0に3値化され、データg1の値が「1」である場合にはデータg1は「0」のデータo1に3値化される。 Therefore, for example, when the value of the data g0 is “1” and the value of the data g1 is “1”, the plane shown in FIG. 6A is a white circle, so refer to the table of FIG. 6B. Then, o0 = 0 and o1 = 0. That is, when the value of the data g0 is “1”, the data g0 is ternarized to the data o0 of “0”, and when the value of the data g1 is “1”, the data g1 is “0”. The data o1 is ternarized.
このようにして出力決定部2は、画素データI’0、I’1をそれぞれ3値化し、3値データo0、o1を出力する。3値データo0、o1は本装置に入力された入力画素データI0、I1に対する誤差拡散処理結果として外部に出力されると共に、それぞれ誤差計算部3a、3bに入力される。
In this way, the
また、LUT5の構成についても、出力を3値データとすべく、第1の実施形態とは異なる。図7は、本実施形態に係るLUT5の構成例を示す図である。LUT5は同図に示す如く、3値データo0(o1)の値が0であれば「0」に変換し、3値データo0(o1)の値が1であれば「128」に変換し、3値データo0(o1)の値が2であれば「255」に変換する為のテーブルである。よってLUT5からは、3値データo0(o1)を入力画素データ(I0、I1)が示す値の範囲内の整数値(0〜255)に正規化した結果o’0(o’1)が出力される。正規化結果のデータo’0(o’1)は減算機6に入力される。
The configuration of the
即ち、第1,2の実施形態を比べても分かるように、出力階調数を変更しても、LUTの構成を変更するのみで、基本的な装置の構成、及び処理内容については変更しなくても良い。従って出力階調を変更した場合の基本処理のフローチャートについては図17に示したフローチャートと同じである(ステップS1704では「3値データ出力」とする点以外については)。 That is, as can be seen from the comparison between the first and second embodiments, even if the number of output gradations is changed, only the configuration of the LUT is changed, and the basic device configuration and processing contents are changed. It is not necessary. Accordingly, the flowchart of the basic process when the output gradation is changed is the same as the flowchart shown in FIG. 17 (except for the point that “ternary data output” is set in step S1704).
[第3の実施形態]
第1,2の実施形態では、出力決定部2から出力されるデータo0、o1は共に同じ階調数のものであったが(第1の実施形態では共に2階調、第2の実施形態では共に3階調)、本実施形態ではそれぞれの階調数を異ならせる。以下の説明ではo0を3階調(即ちo0は3値データ)、o1を2階調(即ちo1は2値データ)で出力する場合について説明する。尚、本実施形態に係る画像処理装置の構成については以下説明する点以外については第1の実施形態と同じである。
[Third Embodiment]
In the first and second embodiments, the data o0 and o1 output from the
本実施形態に係るLUT7aは、出力が3階調であるために、図11に示した構成を備える。また、本実施形態に係るLUT7bは、出力が2階調であるために、図10に示した構成を備える。従って、本実施形態では、データg0,g1はそれぞれ異なる正規化範囲内でもって正規化されたものであり、データg0は画素データI’0を0〜6の整数値に正規化したものであり、データg1は画素データI’1を0〜8の整数値に正規化したものである。
The
図8は、本実施形態に係るLUT4について示した図である。図8(a)に示す如く、0≦g0≦6,0≦g1≦8(LUT7a、7bによる正規化範囲内)で、且つg0を一方の軸(同図では横軸)、g1を他方の軸(同図では縦軸)とする平面内には、出力データg0,g1のそれぞれのデータが示す値の組み合わせに応じて決まる2値データo0,o1が取りうる値の分布が配置されている。図8(a)において白丸、黒丸、白三角、黒三角、白四角、黒四角の記号が意味するところは図8(b)に示す。
FIG. 8 is a diagram showing the
よって、例えばデータg0の値が「2」、データg1の値が「5」である場合には図8(a)に示す平面を参照すると白三角であるので、図8(b)のテーブルを参照すると、o0=0,o1=1となっている。即ち、データg0の値が「2」である場合にはデータg0は「0」のデータo0に3値化され、データg1の値が「5」である場合にはデータg1は「1」のデータo1に2値化される。 Therefore, for example, when the value of the data g0 is “2” and the value of the data g1 is “5”, referring to the plane shown in FIG. 8A, it is a white triangle, so the table of FIG. Referring to it, o0 = 0 and o1 = 1. That is, when the value of the data g0 is “2”, the data g0 is ternarized to the data o0 of “0”, and when the value of the data g1 is “5”, the data g1 is “1”. The data o1 is binarized.
このようにして出力決定部2は、画素データI’0を3値化すると共に、画素データI’1を2値化し、3値データo0、2値データo1を出力する。3値データo0、2値データo1は本装置に入力された入力画素データI0、I1に対する誤差拡散処理結果として外部に出力されると共に、それぞれ誤差計算部3a、3bに入力される。
In this way, the
図9は、本実施形態に係るLUT5の構成例を示す図である。同図に示す如く、本実施形態に係るLUT5には、テーブル901のデータとテーブル902のデータとが含まれる。テーブル901の構成は第2の実施形態と同じ、即ち図7に示したものと同じであり、テーブル902の構成は第1の実施形態と同じ、即ち図5に示したものと同じである。このように、LUT5には、データo0、o1が示す階調数に応じたテーブルが登録されている。
FIG. 9 is a diagram illustrating a configuration example of the
よってテーブル901は同図に示す如く、3値データo0の値が0であれば「0」に変換し、3値データo0の値が1であれば「128」に変換し、3値データo0の値が2であれば「255」に変換する為のテーブルである。一方、テーブル902は同図に示す如く、2値データo1の値が0であれば「0」に変換し、2値データo1の値が1であれば「255」に変換する為のテーブルである。 Therefore, the table 901 is converted to “0” if the value of the ternary data o0 is 0, and is converted to “128” if the value of the ternary data o0 is 1, as shown in FIG. If the value of 2 is 2, this is a table for conversion to “255”. On the other hand, the table 902 is a table for conversion to “0” if the value of the binary data o1 is 0, and to “255” if the value of the binary data o1 is 1, as shown in FIG. is there.
よってLUT5からは、3値データo0を入力画素データ(I0、I1)が示す値の範囲内の整数値(0〜255)に正規化した結果o’0、2値データo1を入力画素データ(I0、I1)が示す値の範囲内の整数値(0〜255)に正規化した結果o’1が出力される。正規化結果のデータo’0(o’1)は減算機6に入力される。
Therefore, from the
このように、出力のデータの階調数を互いに異ならせる場合には、上述のように、その階調数にあわせてLUTの構成をあわせればよいので、出力のデータの階調数は上記に限定するものではない。 In this way, when the number of gradations of the output data is different from each other, the LUT configuration may be adjusted according to the number of gradations as described above. It is not limited.
また、第1から3の実施形態のそれぞれについては入力画素データはI0,I1の2つである(2つの色成分)であるが、3以上としても良く、その場合には、入力数(上記実施形態では「2」)に応じて加算器を設け、更にそれぞれの加算器からの画素データを正規化するためのテーブル(上記実施形態ではLUT7a、7bに相当)を入力数に応じて設ける。当然それぞれのLUTの構成は、出力するデータの階調数にあわせて構成する。そして、これらのLUTからの出力の組み合わせに応じて、出力値を求めるためのLUT(上記実施形態ではLUT4に相当)を設ける。更に、各出力値を、入力画素データが取りうる値の範囲内の整数値に正規化するためのLUT(上記実施形態ではLUT5に相当)を設ける。
In each of the first to third embodiments, the input pixel data is two (two color components) I0 and I1, but may be three or more. In the embodiment, an adder is provided according to “2”), and a table for normalizing pixel data from each adder (corresponding to
[第4の実施形態]
上記実施形態ではLUT7a(7b)によって、画素データI’0(I’1)の値を、この値が取りうる範囲よりもかなり狭い範囲(第1の実施形態では0〜8)内の整数値g0(g1)に正規化していたが、実際にはこの正規化処理後のg0(g1)は整数値ではなく、実数値となるはずであり、上記実施形態ではこの実数値と整数値との差分を考慮していなかった。本実施形態では、この差分を考慮する。
[Fourth Embodiment]
In the above embodiment, the
図12は、本実施形態に係る出力決定部2の基本構成を示す図である。1201a(120b)は画素データI’0(I’1)に基づいてg0(g1)、dp0(dp1),dm0(dm1)を出力するLUTである。図14は、LUT1201a(1201b)の構成例を示す図である。同図に示す如く、LUT1201a(1201b)は、上記実施形態と同様に画素データI’0(I’1)の値を所定の範囲内(同図では0〜8)の整数値に正規化してg0(g1)を得るためのものであると共に、画素データI’0(I’1)の値に応じたdp0(dp1),dm0(dm1)を得るためのものである。
FIG. 12 is a diagram illustrating a basic configuration of the
図13は、画素データI’0(I’1)の値を実際に所定の範囲内に正規化した場合に、近傍の整数値との距離dp0、dp1,dm0、dm1を示す図である。 FIG. 13 is a diagram illustrating distances dp0, dp1, dm0, and dm1 with neighboring integer values when the value of the pixel data I′0 (I′1) is actually normalized within a predetermined range.
同図において1351〜1354はそれぞれ、横軸にg0の値,縦軸にg1の値をとったグラフ上のg0,g1共に整数値となる格子点の位置を示す。また、1300は、このグラフ上において、座標(入力画素データI’0の値に対応するg0、I’1の値に対応するg1)における点の位置を示す。同図に示す如く、dp0、dm0はそれぞれ、軸g0方向で点1300に隣接する格子点1351(1354),1352(1353)のg0軸上の値を0〜255に正規化したときの値と、点1300のg0軸上の値を0〜255に正規化したときの値との距離を示すものであり、dp1、dm1はそれぞれ、軸g1方向で点1300に隣接する格子点1351(1352),(1353)1354のg1軸上の値を0〜255に正規化したときの値と、点1300のg1軸上の値を0〜255に正規化したときの値との距離を示すものである。このようなdp0、dp1,dm0、dm1が図14に示すテーブルには画素データI’0(I’1)毎に予め登録されている。
In the figure,
格子点選択及び重み決定部9は、LUT1201aからg0,dp0,dm0を受けると共に、LUT1201bからはg1,dp1,dm1を受ける。そして先ず、これらのデータから、図13に示したようなg0−g1平面上で座標(入力画素データI’0の値に対応するg0、I’1の値に対応するg1)に近い3点の格子点を特定する。特定方法については例えば、図13を用いて説明すると、dp0>dm0であれば、格子点1352,1353を候補とし、更にdp1>dm1であれば、格子点1353,1354が候補となる。この時点で候補になっていないのは格子点1354のみであるので、これ以外の格子点、即ち1351〜1353が候補となる。このようにしてg0,dp0,dm0、g1,dp1,dm1を用いれば、座標(入力画素データI’0の値に対応するg0、I’1の値に対応するg1)に近い3つの格子点を求めることができる。
The grid point selection and
また、格子点選択及び重み決定部9は、この3つの格子点に対する重み値wを計算するのであるが、これについては様々なものが考えられるが、例えば格子点1351と点1300との距離を格子点1351に対する重み、格子点1352と点1300との距離を格子点1352に対する重み、格子点1353と点1300との距離を格子点1353に対する重みとして求める。距離は、dp0、dp1,dm0、dm1を用いれば幾何学的に求めることができる。
The grid point selection and
そして格子点選択及び重み決定部9は、この3つの格子点のg0,g1の値をLUT4に出力するので、LUT4からはそれぞれの格子点についてのo0、o1が出力されるので補間部10はこの3つの格子点について求めたo0、o1とそれぞれの格子点について求めた重みwを用いて入力画素データI0、I1に対する出力値を求める。
Since the grid point selection and
ここで、o0−o1平面上において、3つの格子点のそれぞれの位置(o0、o1)と1つの点(入力画素データについて求めた出力データ)の位置(o0、o1)とが求まっており、且つそれぞれの格子点に対する重みwが求まっている場合に、この1つの点に対する値を計算する処理については周知のものであるので、これに関する説明は省略する。 Here, on the o0-o1 plane, the positions (o0, o1) of the three lattice points and the positions (o0, o1) of one point (output data obtained for the input pixel data) are obtained. In addition, when the weight w for each lattice point has been obtained, the process for calculating the value for this one point is well known, and a description thereof will be omitted.
これにより、3つの格子点との位置関係に応じて、入力画素データI0、I1に対する出力データo0、o1を求めることができる。なお、近傍の格子点の数を4にしても基本的に行うべき処理は同じである。 Accordingly, output data o0 and o1 for the input pixel data I0 and I1 can be obtained according to the positional relationship with the three lattice points. Even if the number of neighboring grid points is four, the processing to be basically performed is the same.
また、本実施形態に入力される入力画素データの数は2であるが、3以上であっても良い。 The number of input pixel data input in this embodiment is 2, but it may be 3 or more.
[第5の実施形態]
図15は、本実施形態に係る画像処理装置の基本構成を示す図である。本実施形態では、4以上の色を有する画像を扱う画像処理装置について説明する。実際に印刷装置では、シアン、マゼンタ、ブラック、ライトブラックの4色を用いて印刷するので、当然、印刷する画像のデータを構成する各画素にはこの4色の画像データが存在する。
[Fifth Embodiment]
FIG. 15 is a diagram illustrating a basic configuration of the image processing apparatus according to the present embodiment. In the present embodiment, an image processing apparatus that handles an image having four or more colors will be described. Actually, the printing apparatus prints using four colors of cyan, magenta, black, and light black, and naturally, the four colors of image data exist in each pixel constituting the image data to be printed.
同図に示したように、本実施形態に係る画像処理装置の構成は、図1に示した構成を2つ並列に並べたものとなる。そして一方の構成でもって入力画素データI0、I1に対する出力データo0、o1を出力し、他方の構成でもって入力画素データI2、I3に対する出力データo2、o3を出力する。それぞれの構成の装置は独立して動作する。また、同図においてI0、I1、I2、I3はそれぞれ色0(例えばシアン)の画素データ、色1(例えばマゼンタ)の画素データ、色2(例えばブラック)の画素データ、色3(例えばライトブラック)の画素データである。 As shown in the figure, the configuration of the image processing apparatus according to the present embodiment is obtained by arranging two configurations shown in FIG. 1 in parallel. The output data o0 and o1 for the input pixel data I0 and I1 is output with one configuration, and the output data o2 and o3 for the input pixel data I2 and I3 is output with the other configuration. Each configured device operates independently. In the figure, I0, I1, I2, and I3 are pixel data for color 0 (for example, cyan), pixel data for color 1 (for example, magenta), pixel data for color 2 (for example, black), and color 3 (for example, light black). ) Pixel data.
このような構成により、4色を処理する場合には、第1の実施形態と比べてもLUTの数、サイズは2倍となる。ここで例えば、4色の組み合わせで4次元のLUTを作れば、第1の実施形態と比べてもLUTの数は変わらないが、LUTのサイズは第1の実施形態と比べても2倍となる。このサイズの増加は、扱う色の数に応じて指数関数的に増加する。 With this configuration, when four colors are processed, the number and size of LUTs are doubled compared to the first embodiment. Here, for example, if a four-dimensional LUT is created with a combination of four colors, the number of LUTs does not change compared to the first embodiment, but the size of the LUT is twice that of the first embodiment. Become. This increase in size increases exponentially with the number of colors handled.
従って、第1の実施形態に係る装置を複数並列に並べた装置でもって複数色を扱うようにすれば、LUTのサイズの増加を抑えることができるので、結果として使用するメモリ量を従来よりも軽減させることができる。 Therefore, if a plurality of colors are handled by a device in which a plurality of devices according to the first embodiment are arranged in parallel, an increase in the size of the LUT can be suppressed. It can be reduced.
[第6の実施形態]
本実施形態では、7色のインクで構成される印刷装置で、7色のインクを用いて表現するカラー部分のデータを持つ画像を印刷することを想定している。
[Sixth Embodiment]
In the present embodiment, it is assumed that an image having data of a color portion expressed using seven colors of ink is printed by a printing apparatus configured with seven colors of ink.
7色のインク色を、濃度が近いものや、色相が近いものなど、ドットが重なった時の影響が大きいもの同士、2色、3色、2色の3組に分ける。このそれぞれに、第1の実施形態に係る装置を割り当て、それぞれの装置を独立に動作させれば、LUT数は3倍、LUTサイズは約3倍で、7色の処理を行うことができる。7色を1組として処理した場合は7次元のLUTを作ることとなり、LUTのサイズは膨大になる。 The seven ink colors are divided into three groups of two colors, three colors, and two colors that have a large influence when dots overlap, such as those with close densities and hues. If a device according to the first embodiment is assigned to each of these devices and each device is operated independently, the number of LUTs is three times, the LUT size is about three times, and seven color processing can be performed. When 7 colors are processed as one set, a 7-dimensional LUT is created, and the size of the LUT becomes enormous.
このようにして、扱う色の数が多くなっても、2色や3色といった小さい色数の組み合わせに分解することで、2色の場合の整数倍程度のLUTサイズで多色の処理ができる。 In this way, even when the number of colors to be handled increases, multi-color processing can be performed with an LUT size that is an integral multiple of the case of two colors by decomposing it into a combination of small colors such as two or three colors. .
[第7の実施形態]
シアン、マゼンタ、ブラック、ライトブラックの色のインクを含む印刷装置において、a*=b*=0となる領域では、ブラックとライトブラックの2色に対して、第1の実施形態に係る処理を行う。そして、a*=b*=0近辺でa*=b*=0を除く領域ではブラック・ライトブラックの2色とシアン・マゼンタの2色の2組に対して、第1の実施形態に係る処理を行う。図16は、本実施形態に係る処理内容を示す図である。同図に示すように、それぞれの色のパワーと色味を考慮し、印刷装置に負荷の少ない形で、誤差拡散処理を行うことができる。
[Seventh Embodiment]
In a printing apparatus that includes inks of cyan, magenta, black, and light black, in the region where a * = b * = 0, the process according to the first embodiment is performed for two colors of black and light black. Do. In the region near a * = b * = 0 and excluding a * = b * = 0, two sets of black and light black and two sets of cyan and magenta are used according to the first embodiment. Process. FIG. 16 is a diagram showing processing contents according to the present embodiment. As shown in the figure, the error diffusion process can be performed with less load on the printing apparatus in consideration of the power and color of each color.
[第8の実施形態]
図1に示した各部は、専用のハードウェアでもって構成するようにしても良いし、プログラムでもって実装するようにしても良い。
[Eighth Embodiment]
Each unit shown in FIG. 1 may be configured with dedicated hardware, or may be implemented with a program.
前者の場合にはLUTについてはROMで構成し、このROMには対応するテーブルのデータを格納する。そして図1に示した構成を有する画像処理装置を印刷装置等に組み込むようにすればよい。 In the former case, the LUT is composed of a ROM, and the corresponding table data is stored in this ROM. The image processing apparatus having the configuration shown in FIG. 1 may be incorporated into a printing apparatus or the like.
一方、後者の場合には、図1に示した各部は、印刷装置やコンピュータのCPUに、図1に示した各部が行うべき処理を実行させるためのプログラム(図17に示したフローチャートに従った処理をCPUに実行させるためのプログラム)の機能構成とすることができる。このようなプログラムは印刷装置内のROMに格納しておき、CPUがこれを実行するようにしても良いし、コンピュータのハードディスクドライブ装置に保存させておき、必要に応じてこれをRAMにロードし、CPUがこれを実行するようもしても良い。 On the other hand, in the latter case, each unit shown in FIG. 1 is a program (in accordance with the flowchart shown in FIG. 17) for causing the CPU of the printing apparatus or computer to execute processing to be performed by each unit shown in FIG. The functional configuration of a program for causing the CPU to execute processing may be employed. Such a program may be stored in the ROM in the printing device and executed by the CPU, or may be stored in the hard disk drive of the computer and loaded into the RAM as necessary. The CPU may execute this.
図18は、このようなコンピュータの基本構成を示すブロック図である。 FIG. 18 is a block diagram showing the basic configuration of such a computer.
1801はCPUで、RAM1802やROM1803に格納されているプログラムやデータを用いて本コンピュータ全体の制御を行うと共に、例えば上記各実施形態に係る処理を行う。
1802はRAMで、外部記憶装置186からロードされたプログラムやデータを一時的に記憶する為のエリアを備えると共に、CPU1801が各種の処理を行うために使用するワークエリアを備える。
1803はROMで、本コンピュータの設定データや、ブートプログラムを格納する。
1804は操作部で、マウスやキーボードなどにより構成されており、各種の指示をCPU1801に対して入力することができる。
An
1805は表示部で、CRTや液晶画面などにより構成されており、CPU1801による処理結果を画像や文字などでもって表示することができる。
A
1806は外部記憶装置で、ハードディスクドライブ装置などに代表される大容量情報記憶装置であって、ここにOS(オペレーティングシステム)や、CPU1801に上記各実施形態に係る処理を実行させるために必要なプログラムやデータが保存されており、これらの一部、もしくは全部はCPU1801の制御によりRAM1802にロードされ、CPU1801の処理対象となる。なお、処理対象の画像のデータをここに保存するようにしても良い。
1807はI/Fで、外部機器とのデータ通信を行うためのものであり、例えば処理対象の画像のデータを外部機器から入力することができる。
An I /
1808は上述の各部を繋ぐバスである。
同図に示した構成は、例えば一般のPC(パーソナルコンピュータ)やWS(ワークステーション)の基本構成としても良いし、印刷装置のプリント処理部分以外の制御系、操作系、表示系の基本構成とするようにしても良い。 The configuration shown in the figure may be, for example, a basic configuration of a general PC (personal computer) or WS (workstation), or a basic configuration of a control system, an operation system, or a display system other than the print processing portion of the printing apparatus. You may make it do.
[その他の実施形態]
本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
[Other Embodiments]
The present invention can take an embodiment as, for example, a system, apparatus, method, program, or storage medium. Specifically, the present invention may be applied to a system including a plurality of devices, Moreover, you may apply to the apparatus which consists of one apparatus.
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。 In the present invention, a software program (in the embodiment, a program corresponding to the flowchart shown in the figure) that realizes the functions of the above-described embodiment is directly or remotely supplied to the system or apparatus, and the computer of the system or apparatus Is also achieved by reading and executing the supplied program code.
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。 Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. In other words, the present invention includes a computer program itself for realizing the functional processing of the present invention.
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。 In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, or the like.
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。 As a recording medium for supplying the program, for example, floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card ROM, DVD (DVD-ROM, DVD-R) and the like.
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。 As another program supply method, a client computer browser is used to connect to an Internet homepage, and the computer program of the present invention itself or a compressed file including an automatic installation function is downloaded from the homepage to a recording medium such as a hard disk. Can also be supplied. It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the present invention.
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。 In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and key information for decryption is downloaded from a homepage via the Internet to users who have cleared predetermined conditions. It is also possible to execute the encrypted program by using the key information and install the program on a computer.
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。 In addition to the functions of the above-described embodiments being realized by the computer executing the read program, the OS running on the computer based on the instruction of the program is a part of the actual processing. Alternatively, the functions of the above-described embodiment can be realized by performing all of them and performing the processing.
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。 Furthermore, after 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, the function expansion board or The CPU or the like provided in the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
Claims (7)
画素Pの色成分毎の画素値を入力する入力工程と、
前記入力工程で入力された色成分毎の画素値を、複数のグループに分割する分割工程と、
注目グループ内のそれぞれの色成分について従前に計算された誤差値を、当該注目グループ内のそれぞれの色成分の画素値に加算する加算工程と、
前記加算工程による加算処理後のそれぞれの色成分の画素値の組み合わせに応じて、前記分割時における前記注目グループ内のそれぞれの色成分の画素値をN値化(N≧2)するN値化工程と
前記N値化工程によりN値化された結果を出力する出力工程と、
前記N値化工程によりN値化されたそれぞれの色成分の画素値を、前記分割時における前記注目グループ内のそれぞれの色成分の画素値が取りうる範囲内に正規化する正規化工程と、
前記加算工程で加算処理後の前記注目グループ内のそれぞれの色成分の画素値と、前記正規化工程で正規化処理後の前記注目グループ内のそれぞれの色成分の画素値との差分値を計算する差分計算工程と、
前記差分計算工程でそれぞれの色成分について求めた差分値を、前記入力工程で前記画素Pの次に入力する画素Rにおいて前記注目グループに対応するグループ内のそれぞれの色成分に前記加算工程で加算すべき誤差値として保持する保持工程と、
前記加算工程、前記N値化工程、前記出力工程、前記正規化工程、前記差分計算工程、前記保持工程を前記分割工程で分割されたそれぞれのグループについて繰り返す繰り返し工程と
を備えることを特徴とする画像処理方法。 An image processing method comprising:
An input step of inputting a pixel value for each color component of the pixel P;
A division step of dividing the pixel values for each color component input in the input step into a plurality of groups;
An adding step of adding the error value previously calculated for each color component in the group of interest to the pixel value of each color component in the group of interest;
N-value conversion for converting the pixel values of the respective color components in the group of interest into N-values (N ≧ 2) according to the combination of the pixel values of the respective color components after the addition processing in the addition step. A process and an output process for outputting the result of N-value conversion by the N-value conversion process;
A normalization step of normalizing the pixel values of the respective color components that have been N-valued by the N-value conversion step within a range that can be taken by the pixel values of the respective color components in the group of interest at the time of the division;
The difference value between the pixel value of each color component in the target group after addition processing in the addition step and the pixel value of each color component in the target group after normalization processing in the normalization step is calculated. Difference calculation step to
The difference value obtained for each color component in the difference calculation step is added in the addition step to each color component in the group corresponding to the group of interest in the pixel R input next to the pixel P in the input step. Holding process to hold as an error value to be
A repetition step of repeating the addition step, the N-value conversion step, the output step, the normalization step, the difference calculation step, and the holding step for each group divided in the division step. Image processing method.
画素Pの色成分毎の画素値を入力する入力手段と、
前記入力手段が入力した色成分毎の画素値を、複数のグループに分割する分割手段と、
注目グループ内のそれぞれの色成分について従前に計算された誤差値を、当該注目グループ内のそれぞれの色成分の画素値に加算する加算手段と、
前記加算手段による加算処理後のそれぞれの色成分の画素値の組み合わせに応じて、前記分割時における前記注目グループ内のそれぞれの色成分の画素値をN値化(N≧2)するN値化手段と
前記N値化手段によりN値化された結果を出力する出力手段と、
前記N値化手段によりN値化されたそれぞれの色成分の画素値を、前記分割時における前記注目グループ内のそれぞれの色成分の画素値が取りうる範囲内に正規化する正規化手段と、
前記加算手段による加算処理後の前記注目グループ内のそれぞれの色成分の画素値と、前記正規化手段による正規化処理後の前記注目グループ内のそれぞれの色成分の画素値との差分値を計算する差分計算手段と、
前記差分計算手段がそれぞれの色成分について求めた差分値を、前記入力手段が前記画素Pの次に入力する画素Rにおいて前記注目グループに対応するグループ内のそれぞれの色成分に前記加算手段によって加算すべき誤差値として保持する保持手段と、
前記加算手段、前記N値化手段、前記出力手段、前記正規化手段、前記差分計算手段、前記保持手段による処理を前記分割手段で分割されたそれぞれのグループについて繰り返す繰り返し手段と
を備えることを特徴とする画像処理装置。 An image processing apparatus,
Input means for inputting a pixel value for each color component of the pixel P;
A dividing unit that divides pixel values for each color component input by the input unit into a plurality of groups;
Adding means for adding the error value previously calculated for each color component in the group of interest to the pixel value of each color component in the group of interest;
N-value conversion for converting the pixel values of the respective color components in the group of interest into N-values (N ≧ 2) according to the combination of the pixel values of the respective color components after the addition processing by the addition means Means and output means for outputting the result of the N-value conversion by the N-value conversion means;
Normalizing means for normalizing the pixel values of the respective color components that have been N-valued by the N-value converting means within a range that can be taken by the pixel values of the respective color components in the group of interest at the time of the division;
The difference value between the pixel value of each color component in the group of interest after the addition process by the addition unit and the pixel value of each color component in the group of interest after the normalization process by the normalization unit is calculated. Difference calculation means to
The addition means adds the difference value obtained for each color component by the difference calculation means to each color component in the group corresponding to the group of interest in the pixel R that is input next to the pixel P by the input means. Holding means for holding as an error value to be
A repeating means for repeating the processing by the adding means, the N-value converting means, the output means, the normalizing means, the difference calculating means, and the holding means for each group divided by the dividing means. An image processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004250935A JP2006067510A (en) | 2004-08-30 | 2004-08-30 | Image processor, and image processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004250935A JP2006067510A (en) | 2004-08-30 | 2004-08-30 | Image processor, and image processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006067510A true JP2006067510A (en) | 2006-03-09 |
Family
ID=36113539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004250935A Withdrawn JP2006067510A (en) | 2004-08-30 | 2004-08-30 | Image processor, and image processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006067510A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009020617A (en) * | 2007-07-10 | 2009-01-29 | Canon Inc | Image processor, image processing method, and ink jet recording device |
-
2004
- 2004-08-30 JP JP2004250935A patent/JP2006067510A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009020617A (en) * | 2007-07-10 | 2009-01-29 | Canon Inc | Image processor, image processing method, and ink jet recording device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4533218B2 (en) | Image processing apparatus, image processing method, and image processing program | |
JP4243854B2 (en) | Image processing apparatus, image processing method, image processing program, and storage medium | |
JP7005314B2 (en) | Image processing equipment, image processing methods, and programs | |
US7889394B2 (en) | Image processing apparatus and method | |
JP3992789B2 (en) | Input image conversion method and pixel value quantization method | |
JP2010103861A (en) | Image processing apparatus and image processing method | |
JP2009071831A (en) | Image processor, image processing method, and image forming apparatus | |
US20060197989A1 (en) | Multi-configured halftone system | |
JP2006067510A (en) | Image processor, and image processing method | |
JP2003069819A (en) | Image processor and image processing method | |
JP4525916B2 (en) | Image forming apparatus, image forming method, image processing apparatus, and image processing method | |
JP3870056B2 (en) | Image processing apparatus and method, computer program, and computer-readable storage medium | |
JPH10229501A (en) | Image processing device and method | |
JP4208583B2 (en) | Image processing apparatus and method and program thereof | |
JP2004282344A (en) | Image processing method | |
JP2012028953A (en) | Image processor and image processing method | |
JPH11339032A (en) | Image processing method and device therefor | |
JP2006261764A (en) | Image processing method and apparatus, and image forming apparatus | |
JPH0556263A (en) | Printer | |
JP4541181B2 (en) | Color image processing device | |
US6765694B1 (en) | Color image processor | |
JP2005341142A (en) | Image processor, processing method and program, and recording medium with the program stored | |
JP3937645B2 (en) | Image processing apparatus and image processing method | |
US20070058200A1 (en) | System and method for generating multi-bit halftones using horizontal buildup | |
JPH09270931A (en) | Image processor and its method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071106 |