WO2012020629A1 - 量子化装置、閾値マトリクス生成方法及び閾値マトリクス - Google Patents
量子化装置、閾値マトリクス生成方法及び閾値マトリクス Download PDFInfo
- Publication number
- WO2012020629A1 WO2012020629A1 PCT/JP2011/066528 JP2011066528W WO2012020629A1 WO 2012020629 A1 WO2012020629 A1 WO 2012020629A1 JP 2011066528 W JP2011066528 W JP 2011066528W WO 2012020629 A1 WO2012020629 A1 WO 2012020629A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- dot
- dots
- dot pattern
- pattern
- value
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/135—Nozzles
- B41J2/145—Arrangement thereof
- B41J2/155—Arrangement thereof for line printing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/23—Reproducing arrangements
- H04N1/2307—Circuits or arrangements for the control thereof, e.g. using a programmed control device, according to a measured quantity
- H04N1/233—Circuits or arrangements for the control thereof, e.g. using a programmed control device, according to a measured quantity according to characteristics of the data to be reproduced, e.g. number of lines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/405—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels
- H04N1/4051—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size
Definitions
- the present invention relates to a quantization device, a threshold matrix generation method, and a threshold matrix.
- quantization processing represents an image similar to the multi-gradation image with gradations smaller than the gradation of the input image, so that each pixel of the output image is represented according to each pixel of the input image. This is a process for determining the dot formation state.
- the error diffusion method has a problem that the calculation process is complicated and processing time is required.
- the dither method is a method of performing quantization based on the comparison result between the pixel value of the pixel of the input image and the threshold value corresponding to the pixel, and the calculation time is very short compared to the error diffusion method.
- the threshold value used for comparison with the pixel value of each pixel in the dither processing is prepared in advance as matrix data corresponding to a predetermined number of pixels.
- matrix data corresponding to the predetermined number of pixels is referred to as a “threshold matrix”.
- the threshold matrix is, for example, matrix data corresponding to a pixel region in which a plurality of pixels are arranged in a square shape, and the size thereof can be represented by “the number of vertical pixels ⁇ the number of horizontal pixels” (for example, Patent Document 1). .
- the threshold value matrix generally corresponds to the number of pixels smaller than the number of vertical and horizontal pixels of a multi-tone image subjected to dither processing. In the dither processing, a multi-tone image having a larger image size than the threshold matrix is quantized by repeatedly applying a threshold matrix to the multi-tone image subjected to dither processing in a tile shape.
- a threshold matrix generating method under a stacking constraint condition As a method for generating a threshold matrix used for dither processing, for example, a threshold matrix generating method under a stacking constraint condition is known (for example, Patent Document 2).
- a threshold matrix generation method under the Stacking Constraint condition will be described with reference to an image diagram of the threshold matrix generation process illustrated in FIG. 36 and a flowchart illustrated in FIG.
- a threshold value matrix is generated by software processing by a computer having a CPU, RAM, ROM, and the like is illustrated.
- the CPU determines the number of dots necessary for realizing the dot pattern of the next gradation value (output pattern 102 in FIG. 36) and adds it to the input dot pattern 101. (Step S201).
- the required number of dots is determined according to the difference in dot rate of the next gradation value pattern with respect to the dot rate of the input pattern 101.
- the dot rate is the ratio of the number of pixels in which dots are arranged to the total number of pixels in the pattern.
- the CPU applies a spatial filter prepared in advance to the input dot pattern to which the required number of dots is added (step S202).
- the CPU refers to the dot pattern to which the spatial filter is applied, and rearranges the dot positions added to the input dot pattern 101 (step S203). Then, the CPU calculates the evaluation value of each pattern before and after the rearrangement of additional dots in step S203, compares the two calculated evaluation values (step S204), and the evaluation value of the dot pattern after rearrangement is It is determined whether or not the evaluation value of the dot pattern before rearrangement is equal to or higher (step S205). That is, the CPU determines whether the evaluation value calculated in step S204 has not decreased due to the rearrangement of dots.
- step S205 If the evaluation value of the dot pattern after the rearrangement is equal to or higher than the evaluation value of the dot pattern before the rearrangement (step S205: YES), the input value is input based on the output pattern 103 immediately before performing the final rearrangement in step S203.
- the dot pattern 102 having the next gradation value after the dot pattern 101 is created (step S206), and the process ends. If the evaluation value of the dot pattern after rearrangement is less than the evaluation value of the dot pattern before rearrangement in step S205 (step S205: NO), the process returns to step S202. By repeating this process, a dot pattern at each dot rate is created to obtain a threshold matrix.
- FIGS. 36 and 37 shows a case where the output pattern 102 having a large dot rate is created while the dot position of the input pattern 101 is maintained, that is, a case where the number of dots increases.
- the same processing is performed with the output pattern 102 as the input pattern 101.
- the dot rate of the output pattern 102 is smaller than that of the input pattern 101, that is, when the number of dots decreases, the CPU similarly processes pixels for which dots are deleted from the dot positions already arranged in the input pattern 101.
- the dot pattern creation method for creating dot patterns at each dot rate obtained under such Stacking Constraint conditions patterns with various dot rates can be obtained based on one input pattern.
- a threshold value matrix is created using the dot patterns of the dot rates created in this way.
- the threshold matrix generation method under the Stacking Constraint condition described with reference to FIGS. 36 and 37 is referred to as a “spatial filter method”.
- Japanese Patent No. 4168033 Japanese Patent No. 2622529 JP 63-308473 A JP 2000-78405 A JP 2002-16803 A
- the positional deviation of the dots may occur due to movement so that adjacent dots attract each other.
- Misalignment of dots caused by movement so that adjacent dots attract each other is likely to occur in a recording medium that requires time for ink penetration or a recording medium that does not penetrate at all.
- a recording medium that requires time for ink permeation there are printing book paper such as art paper and coated paper, glossy paper, and the like.
- Examples of recording media that do not penetrate at all include pet films and polyvinyl chloride sheets.
- the positional deviation of dots caused by movement so that adjacent dots attract each other causes streaks in the printed image.
- a streak that causes a dot misalignment will be described with reference to FIGS. 39A and 39B.
- the print image shown in FIG. 39B is obtained.
- dot positions are shifted such that the dots forming the dot rows L1 to L3 attract each other, and the dots forming the dot rows L4 and L5 attract each other.
- a dot position shift has occurred. For this reason, streaks L that are continuous gaps are generated between the dot rows L3 and L4 separated by the positional deviation of the dots.
- An object of the present invention is to better reduce the occurrence of streaks due to dot misalignment.
- the acquisition unit acquires the image data, and a threshold having a threshold for determining whether or not to form dots for each pixel constituting a predetermined pixel region
- a storage unit that stores a matrix; and a quantization processing unit that performs quantization of the image data based on the acquired image data and the threshold matrix, and the threshold matrix forms the predetermined pixel region
- the number of dots with respect to the total number of pixels is composed of a plurality of dot patterns that differ from each other according to the gradation value, and the plurality of dot patterns are relatively The dot pattern with a large number of dots to be satisfied satisfies the condition that includes all the dots arranged at the positions of the dots arranged with the dot pattern having a relatively small number
- the direction in which the pixels in which dots are arranged is continuously arranged is the conveyance direction of the recording medium or It has the dot pattern comprised by the dot arrangement
- a threshold value matrix generation method for generating a recording media threshold value matrix used for quantizing image data to be used wherein a first dot having a predetermined number of dots corresponding to a first gradation value in a predetermined pixel region
- repeating the new dot pattern generation step and the rearrangement step using the third dot pattern as the first dot pattern, and the rearrangement step is pre
- the dot positions are determined so that the direction in which the pixels in which the dots are arranged is continuously arranged becomes a dot arrangement arranged only in the conveyance direction of the recording medium or in a direction orthogonal to the conveyance direction. To do.
- the invention according to claim 3 is the threshold value matrix generation method according to claim 2, wherein the new dot pattern generation step has a gradation in which the number of dots is higher than a gradation range corresponding to the low density region.
- the second dot pattern is created by increasing the number of dots of the first dot pattern for the second dot pattern within the second gradation value range having a value.
- a threshold value matrix used for quantizing image data to be used wherein the threshold value matrix is composed of a plurality of dot patterns in which the number of dots with respect to the total number of pixels constituting a predetermined pixel region is different according to the gradation value.
- the plurality of dot patterns include dots arranged with a dot pattern having a relatively large number of dots relative to the total number of pixels and a dot pattern having a relatively small number of dots relative to the total number of pixels than the dot pattern.
- a dot pattern constituted by a dot arrangement in which the direction in which the pixels in which dots are arranged is continuously arranged is arranged only in the conveyance direction of the recording medium or in a direction orthogonal to the conveyance direction It is characterized by having.
- the generation of streaks due to dot misalignment can be reduced more favorably.
- FIG. 2 is a perspective view illustrating an example of a configuration in the vicinity of a print head of an image forming apparatus in which a print head that performs relative movement with respect to a recording medium includes a plurality of recording elements in a direction substantially orthogonal to at least the direction of relative movement.
- FIG. 3 is a diagram illustrating an example of an array of recording elements provided in a print head.
- FIG. 4 is a diagram illustrating a state in which the print head H1 forms dots on a sheet.
- FIG. 4 is a diagram illustrating a state in which the print head H2 forms dots on a sheet.
- FIG. 4 is a diagram illustrating a state in which the print head H2 forms dots on a sheet.
- It is a block diagram which shows an example of a structure of a threshold value matrix production
- It is a figure which shows an example of the correspondence of a dot pattern and a matrix value.
- It is a figure which shows the example of the production
- FIG. 12B It is a figure which shows an example when the dot formation by the print head H2 located relatively downstream with respect to the paper shown to FIG. 12B was performed. It is a figure which shows an example of the state which moved so that a part of dot formed by the print head H2 located relatively downstream might each attract an adjacent dot, and formed the ellipse. It is a figure which shows an example of the dot pattern in which the some pixel in which a dot is not formed continues along an x direction. It is a figure which shows an example of the paper in which the dot formation by the print head H1 located relatively upstream was performed based on the dot pattern of FIG. 13A. FIG.
- FIG. 13B is a diagram illustrating an example when dot formation is performed by the print head H2 positioned relatively downstream with respect to the paper illustrated in FIG. 13B. It is a figure which shows an example of the state which moved so that a part of dot formed by the print head H2 located relatively downstream might each attract an adjacent dot, and formed the ellipse. It is a figure which shows an example of the correspondence of the gradation value at the time of performing a quantization process using the threshold value matrix based on the dot pattern produced
- FIG. 39B is a diagram showing an example in which streaks are generated due to positional deviation of dots hit on the paper so as to have the assumed dot arrangement shown in FIG. 39A.
- FIG. 1 shows a quantization apparatus 200 according to an embodiment of the present invention.
- the quantization device 200 includes an acquisition unit 201, a storage unit 202, a quantization processing unit 203, an output unit 204, and a threshold matrix generation device 1.
- the acquisition unit 201 acquires image data to be subjected to quantization processing and inputs the image data to the quantization processing unit 203.
- the storage unit 202 stores a threshold value matrix.
- FIG. 2 shows an example of a part of the threshold matrix.
- the threshold matrix of the present embodiment is data in which a threshold is set for each pixel corresponding to a predetermined pixel region (for example, 256 ⁇ 256 [pixel]).
- the threshold value of each pixel is a threshold value for determining whether or not to perform dot formation for each pixel in the pixel region corresponding to the predetermined pixel region among the pixel regions constituting the image data.
- the quantization processing unit 203 quantizes the image data based on the image data input from the acquisition unit 201 and the threshold value matrix stored in the storage unit 202. Specifically, when image data is input from the acquisition unit 201, the quantization processing unit 203 reads a threshold value matrix from the storage unit 202. Next, the quantization processing unit 203 sets the pixel value of each pixel in a predetermined pixel region (for example, 256 ⁇ 256 [pixel]) in the pixel region of the image data, and the threshold value of each pixel set in the threshold value matrix. Are compared with each other.
- a predetermined pixel region for example, 256 ⁇ 256 [pixel]
- the quantization processing unit 203 determines the formation / non-formation of the dot of each pixel in the predetermined pixel area based on the comparison result, thereby generating image data after quantization (quantized image data). .
- the quantization processing unit 203 of the present embodiment forms dots for pixels whose pixel values of image data before quantization processing are equal to or greater than the threshold values set in the threshold matrix, and the pixel values of image data before quantization processing are A determination is made not to form dots for pixels that are less than the threshold set in the threshold matrix.
- the image area of the image data When the pixel area of the image data has a pixel area larger than a predetermined pixel area (for example, 256 ⁇ 256 [pixel]), the image area of the image data is divided in units of the pixel area, and a quantum is applied to each divided pixel area. Do.
- the output unit 204 outputs the quantized image data generated by the quantization processing unit 203.
- the quantization apparatus 200 uses image data used for image formation by an image forming apparatus in which a print head that moves relative to a recording medium has a plurality of recording elements in a direction substantially perpendicular to the direction of relative movement. It is a quantization device used for quantization.
- FIG. 3 shows an example of a configuration in the vicinity of a print head of an image forming apparatus in which a print head that moves relative to a recording medium has a plurality of recording elements in a direction substantially orthogonal to the direction of relative movement.
- the image forming apparatus shown in FIG. 3 forms an image on a recording medium by forming dots on a recording medium (for example, paper P or the like) conveyed along a predetermined direction (y direction) by the conveying belt B.
- the image forming apparatus includes a print head H having a plurality of recording elements (for example, nozzles N) that form dots on a recording medium.
- FIG. 4 shows an example of the arrangement of recording elements provided in the print head.
- each print head H for example, print heads H1, H2, etc.
- the nozzle N is a plurality of discharge ports.
- the nozzles N of the respective print heads do not line up with the nozzles N of the adjacent print heads H on the same line (for example, the one-dot broken line N1 shown in FIG. 4) along a predetermined direction (y direction). It is provided as follows.
- the nozzles N provided in each print head H are provided at an interval (interval N2 shown in FIG. 4) at which dots formed by adjacent nozzles N provided in the same print head do not attract each other.
- the print head H (print head H1 shown in FIG. 5) located upstream in the transport direction V1 of the paper P forms dots on the paper P.
- the dots formed on the paper P are moved so that a plurality of dots formed by the same nozzle N are attracted to form a coalescence of the dots.
- the print head H (print head H2 shown in FIG. 5) positioned relatively downstream with respect to the transport direction V1 of the paper P moves relative to the paper P. To form dots.
- the threshold value matrix generation device generates a threshold value matrix.
- the generated threshold matrix is stored in the storage unit 202.
- FIG. 6 shows an example of the configuration of the threshold value matrix generation device 1.
- the threshold matrix generating apparatus 1 includes a CPU 11, a RAM 12, a ROM 13, a storage device 14, and an interface 15, and these components are connected by a bus 16.
- the CPU 11 cooperates with a program stored in the ROM 13 or the storage device 14 and controls the operation of the threshold value matrix generation device 1 in accordance with the program or data developed in the RAM 12.
- the RAM 12 stores data expanded by the processing of the CPU 11, data temporarily generated by the processing, and the like.
- the ROM 13 stores programs and data read by the CPU 11.
- the storage device 14 stores programs and data read by the CPU 11.
- the storage device 14 is a storage device that can rewrite programs and data.
- the storage device 14 is configured by, for example, a flash memory, a hard disk drive, another rewritable storage device, or a combination of these storage devices.
- the interface 15 connects the threshold matrix generation device 1 and an external device so as to enable data transmission between the threshold matrix generation device 1 and the external device.
- the interface 15 of the present embodiment connects the threshold matrix generation device 1 and the storage unit 202 of the quantization device 200.
- the threshold value matrix generated by the threshold value matrix generating device 1 is transferred to the storage unit 202 via the interface 15 and stored therein.
- an interface that enables serial bus connection such as USB (Universal Serial Bus) or IEEE 3394 can be adopted.
- data transmission via the interface 15 and the interface 15 is not limited to wired / wireless.
- the conditions regarding the protocol and other connection formats may be used.
- the threshold value matrix generation device 1 is a computer having the CPU 11, the RAM 12, the ROM 13, and the like as described above, and generates a threshold value matrix by software processing.
- the ROM 13 or the storage device 14 stores the threshold matrix generation program 17, and the CPU 11 reads and executes the threshold matrix generation program 17 to generate the threshold matrix.
- various data read out along with the execution of the threshold matrix generation program such as a low-pass filter described later is stored in the ROM 13 or the storage device 14.
- FIG. 7 shows an example of the correspondence between dot patterns and matrix values.
- FIG. 8 illustrates a threshold matrix generation mechanism by adding 0/1 matrix values according to the dot pattern of each gradation value.
- the threshold value of each pixel set in the threshold value matrix is determined based on 0/1 integration according to a plurality of dot patterns having different gradation values.
- “Different gradation values” indicate that the number of pixels in which dots are arranged (the number of dots) is different in the total number of pixels constituting a predetermined pixel region (for example, 256 ⁇ 256 [pixels]). In other words, the number of dots included in a predetermined pixel region (for example, 256 ⁇ 256 [pixel]) corresponds to the gradation value.
- matrix data (for example, set values of the matrix, etc.) is generated that indicates the presence or absence of dots in the dot pattern of each gradation value as 0 (no dots) / 1 (with dots) as shown in FIG.
- the set value of the matrix corresponds to a matrix that numerically indicates the presence / absence of dots of each pixel constituting a predetermined pixel region.
- the dots are arranged in both of the two matrices “1”. These pixels are added to become “2”.
- the pixel in which the dot is arranged in only one of the two matrices is “1”.
- a pixel of “0” where no dot is arranged in both of the two matrices is “0” even after addition.
- the threshold value becomes relatively larger as a result of integration for pixels in which dots are arranged for many gradation values.
- the threshold value is relatively set for pixels in which dots are not arranged for many gradation values. Get smaller.
- the threshold value of each pixel set in the threshold value matrix is based on the set value of the matrix determined by the integration of 0/1 according to the dot pattern of each gradation value.
- the threshold value of each pixel is obtained by inverting the set value of the matrix determined by the integration of 0/1 according to the dot pattern of each gradation value.
- the CPU 11 uses a plurality of dot patterns corresponding to each gradation value, that is, matrix data corresponding to a plurality of dot patterns having different numbers of dots with respect to the total number of pixels constituting a predetermined pixel area (for example, matrix setting). Value).
- matrix data corresponding to a plurality of dot patterns having different numbers of dots with respect to the total number of pixels constituting a predetermined pixel area (for example, matrix setting). Value.
- FIG. 9 shows a schematic diagram of a plurality of dot patterns corresponding to each gradation value.
- the threshold value matrix generation device 1 has an image formation in which a print head that moves relative to a recording medium has a plurality of discharge ports that discharge ink that is a color material in a direction substantially perpendicular to at least the direction of relative movement.
- a threshold matrix used to quantize image data used by the apparatus for image formation is generated.
- the y direction shown in FIG. 9 corresponds to “the direction in which the print head moves relative to the recording medium”, and the x direction shown in FIG. 9 “substantially orthogonal to the direction of relative movement”. Corresponds to "direction”.
- the minimum value of the gradation value g is set to 0 and the maximum value is set to 1, and the CPU 11 generates a dot pattern corresponding to each gradation value of 0 to 1.
- the dot pattern having the minimum gradation value (0) is a pattern in which no dots are arranged.
- the dot pattern having the maximum gradation value (1) is a pattern in which dots are arranged for all pixels.
- the CPU 11 generates a dot pattern of each gradation value under a stacking constraint condition.
- the dot pattern of each gradation value excluding 0 generated by the CPU 11 is a dot pattern corresponding to a gradation value having a relatively high gradation value, and a dot pattern corresponding to a gradation value having a relatively low gradation value. All dots arranged at the positions of the dots arranged in the pattern are included.
- FIG. 10 shows a correspondence relationship between the tone value of each dot pattern and the addition or deletion of dots in a plurality of dot pattern generation processes.
- three predetermined values g 1 , g 2 , g 3 ) are set for the gradation value g taking a value from 0 to 1, and the predetermined gradation value g divided by the three predetermined values is set.
- a different dot pattern generation method is used for each range.
- the CPU 11 When generating a plurality of dot patterns corresponding to each gradation value, the CPU 11 generates a dot pattern of 0 to g2 by sequentially adding dots to a dot pattern having a gradation value of 0. On the other hand, when generating a plurality of dot patterns corresponding to each gradation value, the CPU 11 generates dot patterns of g2 to 1 by sequentially deleting dots from the dot pattern with gradation value 1.
- a dot pattern (e.g., a dot shown in FIG. 9) is in a range of g 1 ⁇ g ⁇ g 2 which is a tone range corresponding to a low density region of image data whose tone value g is quantized.
- a plurality of pixels in which dots are arranged are continuous along the x direction or the y direction.
- the CPU 11 determines that the direction in which the pixels in which dots are arranged is continuously arranged is the conveyance direction of the recording medium (y direction) or A dot pattern is generated that is a dot arrangement that is arranged only in a direction (x direction) orthogonal to the transport direction.
- FIG. 11 shows a comparative example of a dot pattern in which pixels in which dots are arranged are continuous in the x direction or the y direction and other dot patterns.
- Dot Diameter Reflection is an image forming apparatus for “dot pattern” with a dot. Shows an example reflecting the diameter of the dots formed by ⁇ Impact landing deviation and droplet unity reflection '' is a case where a part of dots formed when an image based on a ⁇ dot pattern '' is formed An example of the result of moving to attract each other is shown.
- Dot Diameter Reflection indicates an example of “ideal dot arrangement” that indicates a case in which a dot formed by the image forming apparatus does not move without attracting other adjacent dots.
- Displacement and reflection of droplets indicates an example of “actual dot arrangement” when image formation based on a dot pattern is performed.
- a dot pattern by normal error diffusion or a dot pattern in which dots are arranged obliquely with respect to the x direction and the y direction is a pattern of “reflecting landing deviation and droplet coalescence”, That is, streaks along the y direction occur in the “actual dot arrangement”.
- This is due to a problem in the prior art that occurs as a result of the landing deviation due to the ejection angle error of the droplet ejected from the head and the movement to attract each adjacent dot.
- a dot pattern whose tone value g is in the range of g 3 ⁇ g ⁇ 1, which is the tone range corresponding to the high density region of the image data to be quantized (for example, the dots shown in FIG. 9).
- Pattern D2 or the like) is a dot arrangement in which pixels in which dots are not arranged are continuously arranged in a direction (x direction) orthogonal to the transport direction.
- the CPU 11 is arranged only in a direction (x direction) in which the direction in which pixels in which dots are not arranged is continuously arranged is orthogonal to the transport direction with respect to a dot pattern whose gradation value g is in the range of g 3 ⁇ g ⁇ 1.
- a dot pattern with a dot arrangement is generated.
- FIGS. 12A to 12D and FIGS. 13A to 13D show an effect at the time of image formation by a dot pattern in which a plurality of pixels in which dots are not arranged are continuous in the x direction.
- FIG. 12B and FIG. As shown in FIG. 5, dots are formed in order from the print head H1 positioned relatively upstream with respect to the transport direction V1 of the paper P in the same manner as described with reference to FIGS. 5A to 5C.
- a unity between the dots is formed.
- gaps such as the gap E1 provided in the dot pattern are filled in due to the positional displacement of the dots during image formation, and it is impossible to see as gaps or is extremely difficult. Become.
- FIGS. 13B and 13C when image formation is performed using a dot pattern in which a plurality of pixels in which dots are not arranged as shown in FIG. 13A are continuous in the x direction and a gap such as the gap E2 is provided, FIGS. 13B and 13C.
- dots are formed in order from the print head H1 positioned relatively upstream with respect to the transport direction V1 of the paper P in the same manner as described with reference to FIGS. 5A to 5C.
- a unity between the dots is formed. Further, as shown in FIG.
- the dots formed by the print head H2 positioned relatively downstream, and the dots formed by the print head H2 as shown in FIG. 13D are also moved so as to attract other dots. Form a unity of dots.
- gaps corresponding to a plurality of pixels in which continuous dots are not formed along the x direction for example, gaps corresponding to the gap E2 of the dot pattern). E3 etc.
- the gap can be clearly visually recognized.
- a dot pattern in which a plurality of pixels in which dots are not formed is continuous along the x direction can generate good gaps corresponding to a plurality of pixels in which the dots are not formed during image formation.
- no dots are arranged in a plurality of dot patterns in which the tone value g is in the range of g 2 ⁇ g ⁇ g 3 that is the tone range corresponding to the medium density region of the image data to be quantized.
- the tone value g is in the range of g 2 ⁇ g ⁇ g 3 that is the tone range corresponding to the medium density region of the image data to be quantized.
- the CPU 11 determines the previous gradation pattern already created (in this case, based on the dot rate of the dot pattern currently being processed). In other words, a dot pattern having a dot arrangement in which the pixels in which dots are not arranged is continuously arranged only in the y direction and the x direction is generated around a position where no dots are arranged in the gradation pattern having a higher dot rate.
- the dot pattern of each gradation value is a dot pattern having a gradation value lower than a certain dot pattern, that is, It always includes dots arranged at the same positions as all the dots arranged in the dot pattern in which the number of dots with respect to the total number of pixels is smaller than the number of dots with respect to the total number of pixels of a certain dot pattern.
- the process of determining pixels in which dots are not arranged so as to satisfy both the condition that the pixels in the x direction are continuous along the x direction it is impossible to arrange a plurality of pixels in which continuous dots are not arranged along the x direction, or May be severely limited. Under such conditions, if a pattern including a plurality of pixels in which continuous dots are not arranged along the x direction is forcibly generated, dispersion of dots in the dot pattern may be impaired.
- a plurality of pixels on which dots are not arranged may be continued not only in the x direction but also only in the y direction.
- a pixel in which a dot is not newly placed adjacent to a pixel in which a dot is not placed, which has been generated in the previous gradation pattern, is selected so that a pixel in which no dot is placed is not generated alone.
- the dot pattern of the quantized image is based on the dot pattern used for generating the threshold matrix. Therefore, the dot pattern used to generate the threshold matrix is a dot pattern in which the pixels where the dots are arranged are continuous in the x or y direction, so that some of the dots move so as to attract each adjacent dot. It is possible to reduce the occurrence of streaks due to this.
- the dot pattern used for generating the threshold matrix is a dot pattern in which a plurality of pixels in which dots are not arranged are continuous in the x direction, the x direction, or the y direction. Good gaps corresponding to the pixels can be generated.
- the dot pattern corresponding to the gradation value g in the range of 0 to g1 is generated by the dot pattern generation process under the same Stacking Constraint condition as in the prior art.
- FIG. 14 shows an example of a correspondence relationship between the gradation value g and the quantized image when the quantization process is performed using a threshold matrix based on a dot pattern generated by a normal error diffusion process.
- FIG. 15 shows an example of the correspondence relationship between the gradation value g and the noise index ratio. For example, as shown in FIG. 14, in a quantization process using a threshold matrix based on a dot pattern generated by a normal error diffusion process, stripes tend to be more visible as the gradation value increases.
- One method for quantitatively evaluating such a tendency to make streaks visible is to calculate a noise index ratio of a quantized image corresponding to each gradation value.
- a two-dimensional fast Fourier transform (FFT) is applied to the quantized image of each gradation value, and a predetermined visual characteristic filter is applied.
- an integrated value of frequency components of components in predetermined two directions orthogonal to each other is calculated as the noise index in the predetermined two directions, and the two The ratio of the noise figure in the direction is calculated as the noise figure ratio.
- g 1 is determined based on the above noise figure ratio.
- the value of the noise index ratio for visually recognizing streaks is 1 ⁇ 0.2.
- the noise figure ratio exceeds 1.2.
- g 1 0.1 is adopted in the present embodiment.
- the principal frequency of the obtained dot pattern is preferably 20 [cycle / mm] or more.
- the Principal Frequency is a binary pattern (whether or not to form dots) and calculates the two-dimensional spatial frequency distribution when attention is paid to the smaller number of dots formed or not formed, The spatial frequency distribution (two-dimensional power spectrum distribution) is averaged in the radial direction, and the frequency value corresponding to the peak of the obtained spectrum component is indicated.
- g 2 good closer to 1 greater than 0.5.
- the following dot pattern dot x-direction are designed so as to be connected in the y-direction, which takes into account the landing deviation. Therefore better to represent most of the tone values of the image using a g 2 following the dot pattern are preferred.
- the reason why it is better to be close to 1 is to prevent the gradation value connecting portion from being noticeable. If the tone value exceeds a certain level, a slight pattern discomfort can be ignored.
- the gradation value that can ignore the discomfort of the pattern is obtained from the relationship between the minimum dot distance (one side of the pixel) determined from the resolution and the dot diameter.
- This embodiment assumes a minimum dot distance of 17.6 [ ⁇ m] (1440 ⁇ 1440 [dpi]) and a dot diameter of 35 [ ⁇ m].
- the gradation value g indicates 0.65 or more.
- the value of g 2 and g 3 are set close values. This is because the region between g 2 and g 3 (medium concentration region) is merely a connection between the high concentration region and the low concentration region. However, when g 2 and g 3 are too close, the discontinuity of the pattern becomes remarkable.
- g 3 g 2 +0.1 was used as a guide. Further, g 3 is preferably 0.9 or less.
- the Principal Frequency at the spatial frequency of the pattern in which pixels with no 2-pixel dots are evenly distributed in the x direction is approximately 0.2 [cycle / pixel], and the resolution is 1440 ⁇ 1440 [dpi]. For example, it corresponds to approximately 57 [cycle / mm], and at a 30 [cm] observation distance, the frequency is hardly perceptible to the human eye. By doing so, it is possible also to obscure the switching of patterns and boundary g 3. Furthermore, the following Principal Frequency relationships are established for the respective dot patterns having the gradation values g 2 and g 3 .
- the threshold matrix generation includes an initial dot pattern generation process and a threshold matrix generation process based on the initial dot pattern generated by the initial dot pattern generation process.
- the CPU 11 determines the size of the threshold matrix (step S1).
- 256 ⁇ 256 [pixels] which is a rectangular matrix size in which 256 pixels are arranged in the x direction and 256 pixels are arranged in the y direction.
- the size of the threshold matrix is not limited to 256 ⁇ 256 [pixels], and any M ⁇ N [pixels] (M and N are natural numbers) can be set.
- M and N are preferably 64 or more.
- M and N may be the same natural number or different natural numbers.
- the CPU 11 determines the size of the small section (step S2).
- 256 ⁇ 256 [pixel] which is the matrix size of the threshold matrix
- FIG. 17 is an image diagram illustrating an example of a threshold matrix divided by small sections. As shown in FIG. 17, the 256 ⁇ 256 [pixel] threshold matrix is divided into 16 small sections (64 ⁇ 64 [pixel]).
- the size of the small section is not limited to 64 ⁇ 64 [pixel], and an arbitrary size smaller than M ⁇ N [pixel] which is the size of the threshold matrix can be set.
- the CPU 11 selects and determines a pixel on which dot arrangement is performed in the threshold value matrix.
- the ratio of the pixels selected and determined as the pixels for dot arrangement to all the pixels in the threshold matrix is indicated by a gradation value g.
- the gradation value g 1 when all the pixels in the threshold matrix are selected and determined as pixels that perform dot arrangement, and the gradation value when any pixel in the threshold matrix is not selected and determined as a pixel that performs dot arrangement.
- Let g 0.
- the gradation value g 0.5, half of all the pixels in the threshold value matrix are selected and determined as pixels for dot arrangement.
- the case where the gradation value g is handled with 8 bits is illustrated.
- the gradation value g can be handled with 16 bits, for example.
- the gradation value g of the initial dot pattern is 1/255, but the gradation value g of the initial dot pattern can be set arbitrarily.
- p (x, y, g) is a matrix indicating the matrix pattern p of the gradation value g, where x is a coordinate in the x direction and y is a coordinate in the y direction.
- the CPU 11 sets all initial values of the matrix BAN init (x, y) to 0 (step S4).
- the value of the matrix BAN init (x, y) is used as the initial value of the exchange prohibition matrix BAN (x, y).
- the exchange prohibition matrix BAN (x, y) is used in a dot arrangement changing process described later.
- the CPU 11 performs filter processing and pattern optimization processing based on the average value of the small sections (step S5).
- the filter optimization process and the pattern optimization process based on the average value of the small sections will be described with reference to the subflow of FIG.
- the CPU 11 sets a variable n with an initial value 0 (step S11).
- the CPU 11 calculates a spatial frequency pattern P (u, v, g) obtained by applying Fourier transform to the dot pattern p (x, y, g) (step S12).
- u and v indicate frequency spaces in the x and y directions, respectively.
- the CPU 11 calculates a pattern P2 (u, v, g) obtained by performing filter processing on the pattern P (u, v, g) (step S13).
- filters used in the filter processing in step S13 include low-pass filters such as a filter for obtaining blue noise (hereinafter referred to as blue noise filter) and a filter for obtaining green noise (hereinafter referred to as green noise filter).
- the blue noise filter and the green noise filter are frequency filters that pass at least a low frequency component.
- FIG. 19 shows an example of a blue noise filter
- FIG. 20 shows an example of a green noise filter.
- a low-pass filter such as a blue noise filter or a green noise filter is applied as an isotropic filter independent of direction. 19 and 20, the unit of frequency in the radial direction is [cycle / pixel].
- the CPU 11 calculates the real space pattern p2 (x, y, g) by applying inverse Fourier transform to the spatial frequency pattern P2 (u, v, g) (step S14).
- the real space pattern p2 (x, y, g) is not a binary data described only by 0 and 1 like the dot pattern p (x, y, g), but is continuous including an intermediate value between 0 and 1. Value distribution.
- the CPU 11 calculates an error matrix ERR (x, y, g) indicating a deviation from the gradation value g by the following equation (1) (step S15).
- the error matrix ERR (x, y, g) functions as a dot pattern evaluation value based on an error between the pattern p2 (x, y, g) and the dot pattern of the gradation value g.
- Each value included in the matrix of the error matrix ERR (x, y, g) corresponds to each pixel position of the pattern P2 (u, v, g) that is a dot pattern for generating a threshold matrix. That is, the CPU 11 calculates the error matrix ERR (x, y, g) corresponding to each position in the threshold matrix.
- MSE (n) is a pattern deviation value of the pattern p2 (x, y, g), and functions as a dot dispersibility evaluation value.
- step S17 determines whether n is not 0 (step S17). If n is not 0 (step S17: YES), the CPU 11 determines whether MSE (n) is smaller than MSE (n-1) (step S18).
- step S17 If n is 0 in step S17 (step S17: NO) or if MSE (n) is smaller than MSE (n-1) in step S18 (step S18: YES), the CPU 11 performs a dot arrangement conversion process (step S18: YES). Step S19).
- the dot arrangement changing process will be described with reference to the subflow of FIG.
- the CPU 11 sets a variable SWAPNUM for managing the number of exchanged pixels with a predetermined initial value (step S31).
- the predetermined initial value is an integer of 1 or more.
- the CPU 11 sets the exchange prohibition matrix BAN (x, y) and copies the value of BAN init (x, y) as the value (step S32).
- step S33 determines whether or not the value of the variable SWAPNUM exceeds 0 (step S33).
- step S33 determines whether or not the value of the variable SWAPNUM exceeds 0 (step S33).
- step S33: YES the CPU 11 performs a process of determining a position where a dot is newly arranged and a position where a dot is deleted.
- ERR (x, y, g) is minimum indicates that there is a gap (void) where dots are not arranged at the peripheral position including the pixel.
- ERR (x, y, g) is maximum indicates that there is a cluster of dots (Cluster) at the peripheral position including the pixel.
- the CPU 11 performs processing for prohibiting further rearrangement of the pixels on which the dots have been rearranged. Specifically, the CPU 11 sets the values of BAN (x1, y1) and BAN (x2, y2) to 1 (step S36).
- step S37 the CPU 11 subtracts 1 from the value of the variable SWAPNUM (step S37). After the process of step S37, the process returns to the determination of step S33.
- step S33 when the value of the variable SWAPNUM does not exceed 0 (step S33: NO), the CPU 11 ends the dot arrangement conversion process shown in step S19 of FIG. 18 and the subflow of FIG.
- the CPU 11 is permitted to perform dot rearrangement for the pixel, with no dots arranged for that pixel, the number of times set as the initial value of the variable SWAPNUM, and A pixel having a void (void) where no dot is arranged at a peripheral position including the pixel, a dot is arranged at the pixel, and the dot is allowed to be rearranged, and the pixel is included.
- the dot arrangement is exchanged with a pixel having a cluster of dots at the peripheral position. In determining the dots to be replaced, correction is performed based on the excess or deficiency of the number of dots in each small section. Further, further rearrangement is prohibited for the dots that have been rearranged.
- step S19 of the subflow of FIG. 21 and the subflow of FIG. 18 the CPU 11 adds 1 to the value of the variable n (step S20). Thereafter, the process returns to step S13.
- step S12 By returning to step S12 after the process of step S20, the application of the Fourier transform of step S12, the filtering process of step S13, the application of the inverse Fourier transform of step S14 to the matrix pattern after the dot arrangement conversion process, Error matrix calculation and MSE calculation in step S16 are performed.
- the dot arrangement conversion process is performed once or more, the variable n becomes 1 or more, so this corresponds to the case where n is not 0 in the determination in step S17 (step S17: YES), and the determination in step S18, that is, MSE ( A determination is made whether n) is less than MSE (n-1). Since the initial value of n is 0, the dot arrangement conversion process is performed at least once.
- step S18 the process from step S13 is repeated until MSE (n) becomes equal to or greater than MSE (n-1) (step S18: YES).
- step S18 when MSE (n) is greater than or equal to MSE (n-1) (step S18: NO), the CPU 11 is based on the filtering process shown in step S5 of FIG. 16 and the subflow of FIG. The pattern optimization process ends, and the initial dot pattern creation process shown in FIG. 16 ends.
- the initial dot pattern is generated as p init (x, y) and stored in the storage device 14.
- threshold value matrix generation processing based on the initial dot pattern generated by the initial dot pattern generation processing will be described.
- the threshold value matrix generation process is performed under a stacking constraint condition. Specifically, based on the gradation value g of the initial dot pattern, the number of dots is increased or decreased according to the gradation value change amount ⁇ g to be changed. At this time, when the gradation value becomes large due to the gradation value change amount ⁇ g, the dot arrangement in the original initial dot pattern is not changed. That is, when increasing the number of dots, the original initial dot pattern is maintained and additional dots are added.
- the threshold value matrix generation device 1 generates each dot pattern composed of 256 ⁇ 256 [pixels] corresponding to each dot rate.
- the dot pattern of gradation value g + ⁇ g is generated.
- the dot pattern of the gradation value g + ⁇ g generated immediately before is treated as the initial dot pattern.
- the gradation value change amount ⁇ g is 1/255, but the gradation value change amount ⁇ g can be set arbitrarily.
- the threshold matrix is generated as a matrix Th (x, y) and stored in the storage device 14.
- threshold value matrix generation processing based on the initial dot pattern generated by the initial dot pattern generation processing will be described with reference to the flowchart of FIG.
- the CPU 11 reads the initial dot pattern p init (x, y) (step S41).
- the gradation value g init of the initial dot pattern p init (x, y) in this embodiment is 1/255.
- the initial value of the gradation value g to be used hereinafter is g init .
- the gradation value g init of the initial dot pattern p init (x, y) is 1/255, but any value from 0 to 1 may be used.
- an initial dot pattern having an arbitrary gradation value g between 0 and 1 can be generated and used for the threshold matrix generation process.
- the CPU 11 sets a matrix q (x, y, g) indicating a matrix pattern for generating a threshold matrix, and sets the value of the initial dot pattern p init (x, y) to q (x, y, g). Is copied (step S42).
- the CPU 11 sets a matrix Th (x, y) indicating a threshold matrix and a matrix ban init (x, y) set as an initial value of the exchange prohibition matrix ban (step S43), and ban init (x, y). ) Is copied to q (x, y, g) (step S44).
- the CPU 11 performs a dot growth process in the extremely low density region (step S45).
- the dot growth processing in the extremely low density region will be described with reference to the subflow of FIG.
- Add to (x, y, g) step S61).
- the dot pattern after the dot addition is stored in the RAM 12 or the storage device 14 as a new q (x, y, g).
- the addition of dots is performed based on a predetermined random number process from coordinates where dots are not arranged in q (x, y, g).
- the CPU 11 performs pattern optimization processing in the extremely low density region (step S62).
- the pattern optimization process in the extremely low density region will be described with reference to the subflow of FIG.
- the CPU 11 sets a variable n with an initial value 0 (step S71).
- the CPU 11 calculates a spatial frequency pattern Q (u, v, g) obtained by applying Fourier transform to the dot pattern q (x, y, g) (step S72).
- u and v indicate frequency spaces in the x and y directions, respectively.
- the CPU 11 calculates a pattern Q2 (u, v, g) obtained by performing filter processing on the pattern Q (u, v, g) (step S73).
- the filtering process is the same as the filtering process in step S13 described above (see FIGS. 19 and 20).
- the CPU 11 calculates the real space pattern q2 (x, y, g) by applying inverse Fourier transform to the spatial frequency pattern Q2 (u, v, g) (step S74).
- the real space pattern q2 (x, y, g) is not a binary data described only by 0 and 1 like the dot pattern q (x, y, g), but is continuous including an intermediate value between 0 and 1. Value distribution.
- the CPU 11 calculates an error matrix ERR2 (x, y, g) indicating a deviation from the gradation value g by the following equation (3) (step S75).
- the CPU 11 calculates an evaluation value MSE2 (n) (Mean Square Error) by the following equation (4) (step S76).
- step S77 determines whether n is not 0 (step S77).
- step S77: YES the CPU 11 determines whether MSE2 (n) is smaller than MSE2 (n-1) (step S78).
- step S77 When n is 0 in step S77 (step S77: NO) or when MSE2 (n) is smaller than MSE2 (n-1) in step S78 (step S78: YES), the CPU 11 performs dot arrangement in the extremely low density region. A conversion process is performed (step S79).
- the CPU 11 sets a variable SWAPNUM for managing the number of exchanged pixels with a predetermined initial value (step S81).
- the predetermined initial value is an integer of 1 or more.
- the CPU 11 sets an exchange prohibition matrix ban (x, y) and copies the value of ban init (x, y) as its value (step S82).
- the CPU 11 determines whether or not the value of the variable SWAPNUM exceeds 0 (step S83).
- step S83 YES
- the CPU 11 performs processing for prohibiting further rearrangement of the pixels on which the dots have been rearranged. Specifically, the CPU 11 sets the values of ban (x1, y1) and ban (x2, y2) to 1 (step S86).
- step S87 the CPU 11 subtracts 1 from the value of the variable SWAPNUM (step S87). After the process of step S87, the process returns to the determination of step S83. In step S83, if the value of the variable SWAPNUM does not exceed 0 (step S83: NO), the CPU 11 ends the process.
- step S80 the CPU 11 adds 1 to the value of the variable n (step S80). Thereafter, the process returns to step S72.
- step S78 the process from step S72 is repeated until MSE2 (n) becomes equal to or greater than MSE2 (n-1) (step S78: YES).
- step S78 if MSE2 (n) is greater than or equal to MSE2 (n-1) (step S78: NO), the CPU 11 ends the process.
- step S78 if MSE2 (n) is greater than or equal to MSE2 (n-1) (step S78: NO), the CPU 11 ends the process.
- the CPU 11 ends the dot growth process in the extremely low density area.
- step S45 of the sub-flow of FIG. 23 and the flowchart of FIG. 22 the CPU 11 converts the optimized matrix q (x, y) into the matrix Th (x, y) indicating the threshold matrix.
- y, g) is added (step S46).
- step S47 the CPU 11 determines whether g is less than g 1 (step S47). If g is smaller than g 1 (step S47: YES), the process returns to step S44, and repeats the dot growth process in very low concentration region in the laminated binding (Stacking Constraint) conditions.
- step S47 if g is not less than g 1 (step S47: NO), the CPU 11 copies the value of q (x, y, g) to the matrix ban init (x, y) (step S48). Thereafter, the CPU 11 performs dot growth processing in the low density region (step S49).
- step S62 pattern optimization process in the extremely low density area
- step S91 pattern optimization process in the extremely low density area
- the pattern optimization process in the low density region will be described using the subflow of FIG.
- the pattern optimization process in the low density area is the same as the process in step S79 (dot arrangement conversion process in the extremely low density area) in the pattern optimization process (see FIG. 24) in the extremely low density area. Except for the replacement with (Step S92), the process is the same as the pattern optimization process in the extremely low density region.
- the dot arrangement changing process in the low density region will be described with reference to the subflow of FIG. 28 and FIG.
- the dot arrangement changing process in the low density area is the dot arrangement in the extremely low density area except that the process in step S84 in the arrangement changing process in the extremely low density area (see FIG. 25) is replaced with the following process in step S93. This is the same as the conversion process.
- FIG. 29 schematically illustrates a pixel (x, y) and four pixels adjacent to the pixel.
- y1) means that no dot is arranged at the pixel, and it is allowed to rearrange the dots for the pixel, and the dot is arranged at any one of the four pixels adjacent to the pixel.
- step S85 in the dot arrangement conversion process in the low density region dots are arranged at the coordinates (x1, y1) of the pixels that satisfy these conditions, and the dots are deleted from the coordinates (x2, y2) of the pixels. Make a conversion.
- the CPU 11 After the pattern optimization process in the low density area shown in the subflow of FIG. 27 and step S91 in FIG. 26, the CPU 11 ends the dot growth process in the low density area. After the dot growth process in the low density region shown in step S49 in the sub-flow of FIG. 26 and the flowchart of FIG. 22, the CPU 11 applies q (x, y) after the optimization process to the matrix Th (x, y) indicating the threshold matrix. , G) is added (step S50). Next, the CPU 11 determines whether or not g is less than g 2 (step S51). If g is smaller than g 2 (step S51: YES), the process returns to step S48, the repeated dot growth process in the low concentration region in the laminated binding (Stacking Constraint) conditions.
- FIG. 30 shows an example of a dot pattern generated by the dot growth process in the low density region and the spatial frequency of each dot pattern.
- the u direction shown in FIG. 30 corresponds to the x direction
- the v direction corresponds to the y direction.
- a dot pattern including pixels in which dots are continuously arranged along one of two predetermined directions (x direction and y direction) can get.
- This process is for recording the pixels that are determined not to form dots in the high density area or medium density area in step S56.
- the reason for discriminating between the pixel selected in the extremely low density region and the low density region and the pixel selected in the medium density or high density region is that the gap where no dot is arranged in the middle density region This is because it is generated adjacent to the gap determined by the pattern. By doing so, the gap generated in the high concentration region is grown in the medium concentration region, and the gap can be maintained more stably.
- the CPU 11 performs a dot pattern creation process in the medium / high density region (step S56).
- the dot pattern creation process in the medium / high density region will be described with reference to the subflow of FIG.
- the CPU 11 subtracts the gradation value change amount ⁇ g to be changed from the gradation value g, and deletes the number of dots corresponding to ⁇ g (step S101).
- the process of determining the number of dots corresponding to ⁇ g from q (x, y, g) that satisfies the condition is performed based on a predetermined random number process.
- the value of q (x, y, g) corresponding to the pixel from which the dot has been deleted is 0.
- the CPU 11 performs pattern optimization processing in the medium / high density region (step S102).
- the pattern optimization process in the middle / high density region will be described with reference to the subflow of FIG.
- the CPU 11 sets a variable n with an initial value 0 (step S111).
- the CPU 11 calculates a spatial frequency pattern Q (u, v, g) obtained by applying Fourier transform to the dot pattern q (x, y, g) (step S112).
- u and v indicate frequency spaces in the x and y directions, respectively.
- the CPU 11 calculates a pattern Q2 (u, v, g) obtained by performing filter processing on the pattern Q (u, v, g) (step S113).
- the filtering process is the same as the filtering process in step S13 described above (see FIGS. 19 and 20).
- the CPU 11 calculates the real space pattern q2 (x, y, g) by applying inverse Fourier transform to the spatial frequency pattern Q2 (u, v, g) (step S114).
- the real space pattern q2 (x, y, g) is not a binary data described only by 0 and 1 like the dot pattern q (x, y, g), but is continuous including an intermediate value between 0 and 1. Value distribution.
- the CPU 11 calculates an error matrix ERR2 (x, y, g) indicating a deviation from the gradation value g by the above equation (3) (step S115).
- the CPU 11 calculates the evaluation value MSE2 (n) (Mean Square Error) by the above equation (4), similarly to the processing of step S16 (step S116).
- step S117 determines whether n is not 0 (step S117).
- step S77 determines whether MSE2 (n) is smaller than MSE2 (n-1) (step S118).
- step S117 When n is 0 in step S117: If (step S117 NO), or in step S118 MSE2 (n) is smaller than MSE2 (n-1) (step S118: YES), or CPU11 is g exceeds g 3 Determination is made (step S119). If g is greater than g 3 (step S119: YES), CPU11 performs arrangement conversion processing in the high concentration region (step S120). On the other hand, if g does not exceed the g 3 (step S119: NO), CPU 11 performs dot arrangement conversion processing in the medium density area (step S121).
- the CPU 11 sets a variable SWAPNUM for managing the number of exchanged pixels with a predetermined initial value (step S131).
- the predetermined initial value is an integer of 1 or more.
- the CPU 11 sets the exchange prohibition matrix ban (x, y) and copies the value of ban init (x, y) as its value (step S132).
- step S133 determines whether or not the value of the variable SWAPNUM exceeds 0 (step S133).
- step S133 determines whether or not the value of the variable SWAPNUM exceeds 0 (step S133).
- step S133: YES the CPU 11 performs a process of determining a position where a dot is newly arranged and a position where a dot is deleted.
- No dot is arranged for two consecutive pixels, and both pixels are pixels that are permitted to perform dot rearrangement.
- Both dots are arranged for two consecutive pixels, and both pixels are pixels that are permitted to perform dot rearrangement.
- the CPU 11 performs processing for prohibiting further rearrangement of the pixels on which the dots have been rearranged. Specifically, the CPU 11 sets the values of ban (x1, y1), ban (x1 + 1, y1), (x2, y2), and ban (x2 + 1, y2) to 2 (step S136).
- step S137 the CPU 11 subtracts 2 from the value of the variable SWAPNUM (step S137). After the process of step S137, the process returns to the determination of step S133. If the value of the variable SWAPNUM does not exceed 0 in step S133 (step S133: NO), the CPU 11 ends the process.
- the CPU 11 sets a variable SWAPNUM for managing the number of exchanged pixels with a predetermined initial value (step S141).
- the predetermined initial value is an integer of 1 or more.
- the CPU 11 sets the exchange prohibition matrix ban (x, y) and copies the value of ban init (x, y) as the value (step S142).
- the CPU 11 determines whether or not the value of the variable SWAPNUM exceeds 0 (step S143).
- step S143 YES
- ERR2 (x, y, g) is the minimum pixel coordinate (x1, y1) , A pixel in which dots are not arranged for two consecutive pixels in the x direction or the y direction and a plurality of dots arranged so as to be continuous by the dot arrangement changing process in the high density region are not arranged, and includes the pixels This indicates that there is a gap (void) where dots are not arranged at the peripheral position.
- the CPU 11 performs processing for prohibiting further rearrangement of the pixels on which the dots have been rearranged. Specifically, the CPU 11 sets the values of ban (x1, y1) and (x2, y2) to 2 (step S146).
- step S147 the CPU 11 subtracts 1 from the value of the variable SWAPNUM (step S147). After the process of step S147, the process returns to the determination of step S143. If the value of the variable SWAPNUM does not exceed 0 in step S143 (step S143: NO), the CPU 11 ends the process.
- FIG. 35 shows an example of the dot pattern generated by the dot pattern creation process in the medium / high density region and the spatial frequency of each dot pattern.
- the dot value is generated by deleting the dot from the dot pattern in which the gradation value is 1, that is, the dot is arranged for all pixels, and generating the dot pattern in which the dot is not arranged To do. Therefore, a dot pattern value of gradation values g managed in the threshold matrix generation process based on the initial dot pattern generated by the generation process of the initial dot pattern shown in the flowchart of FIG. 22 is generated toward g 3 1 The dot rate decreases. When the gradation value g is g 3 below, it switched to the dot arrangement conversion process in the medium density area from the dot arrangement conversion treatment in the high density region.
- step S52 the value of q (x, y, g) is copied to the matrix ban init (x, y) until the gradation value g is equal to or greater than g 2 under the Stacking Constraint condition. This is for prohibiting the rearrangement of the dots arranged at.
- the dot addition and dot deletion may be performed based on a method other than the predetermined random number processing.
- Another method includes, for example, a method using error diffusion.
- step S122 After completion of the dot arrangement conversion process in the medium density area shown in the subflow shown in FIG. 33 and step S120 in FIG. 32 or after completion of the dot arrangement conversion process in the medium density area shown in step S121 in FIG. Adds 1 to the value of the variable n (step S122). Thereafter, the process returns to step S112. In step S118, the process from step S112 is repeated until MSE2 (n) becomes equal to or greater than MSE2 (n-1) (step S118: YES). In step S118, when MSE2 (n) is greater than or equal to MSE2 (n-1) (step S118: NO), the CPU 11 ends the process.
- the CPU 11 After the pattern optimization process in the high density area shown in the subflow of FIG. 32 and step S102 in FIG. 31, the CPU 11 ends the dot pattern creation process in the medium / high density area.
- the CPU 11 applies q (x after optimization) to the matrix Th (x, y) indicating the threshold matrix. , Y, g) are added (step S57).
- the CPU 11 determines whether or not the gradation value g is g 2 or less (step S58). If g is not g 2 or less (step S58: NO), the process returns to step S55, and repeats the dot pattern creation processing in medium and high density area in the stacked binding (Stacking Constraint) conditions.
- step S57 the case g is g 2 below (step S58: YES), CPU11 terminates the generation process of the threshold matrix based on the initial dot pattern generated by the generation process of the initial dot pattern.
- the threshold matrix creating process of the present embodiment includes Generate a second dot pattern (q (x, y, g)) by increasing or decreasing the number of dots of the first dot pattern based on the first dot pattern having a predetermined number of dots in an image of a predetermined size
- a new dot pattern generation step step S61, step S101
- a rearrangement step step S79, step S92, step S120, step S121) for obtaining a third dot pattern in which dots included in the second dot pattern are rearranged, and a dot pattern having the number of dots based on a desired dot rate Repetitive steps (steps S44 to S47, steps S48 to S51, steps S54 to S58) that repeat the new dot pattern generation step and the rearrangement step using the third dot pattern as the first dot pattern until obtaining,
- the relocation process An error matrix ERR (x, y, g) that functions as a dot pattern evaluation value based on an error for realizing a pattern obtained by applying
- Step S145) A dot dispersibility evaluation value calculating step (step S76, step S116) for calculating MSE2 (n) or MSE2 (n) that functions as a dot dispersibility evaluation value for the rearranged third dot pattern; Relocation that repeats the dot pattern evaluation value calculation step, the dot relocation position determination step, the relocation pattern generation step, and the dot dispersibility evaluation value calculation step based on the dot dispersibility evaluation value of the rearranged third dot pattern Repetitive determination step (step S78, step S118); If it is determined to repeat in the rearrangement repeat determination step, the rearranged third dot pattern is a second pattern (q (x, y, g)) (steps S72 and S122 after step S80). And later step S112).
- the dot pattern in which the gradation value g is in the range of g 1 ⁇ g ⁇ g 2 is a dot arrangement in which a plurality of pixels in which dots are arranged are continuous only in the x direction or the y direction.
- Have Quantization processing using a threshold matrix generated using such a dot pattern results in good landing shift due to the emission angle error and streak generation due to part of the dot moving so as to attract each other. Can be reduced.
- the CPU 11 creates a dot pattern by increasing the number of dots from the original dot pattern in the new dot pattern generation process for the dot pattern whose gradation value g is in the range of g 1 ⁇ g ⁇ g 2 . Thereby, it is possible to easily perform the rearrangement of the dots in which the plurality of pixels in which the dots are arranged are continuous.
- the dot pattern in which the gradation value g is in the range of g 3 ⁇ g ⁇ 1 is a dot arrangement in which a plurality of pixels in which no dot is arranged are continuous only in the x direction.
- the dot pattern whose gradation value is within the range of g 2 ⁇ g ⁇ g 3 has a dot pattern in which a plurality of pixels on which dots are not arranged are continuous along the x direction and the y direction.
- the dot pattern for each gradation value has a gradation value higher than that of the dot pattern without impairing the dispersion of the dots in the dot pattern. It is possible to satisfy both the condition that a dot arranged at the same position as all the dots arranged in the low dot pattern and the condition that a plurality of pixels where no dot is arranged are continued.
- the CPU 11 performs a new dot pattern generation process on the dot pattern whose gradation value g is in the range of g 3 ⁇ g ⁇ 1 and the dot pattern whose gradation value is in the range of g 2 ⁇ g ⁇ g 3 .
- a dot pattern is created by reducing the number of dots from the original dot pattern. Thereby, it is possible to easily perform the rearrangement of dots in which a plurality of pixels in which dots are not arranged are continuous.
- dot misalignment caused by movement so that adjacent dots attract each other is more likely to occur in recording media that require time for ink penetration (for example, printing paper such as art paper or coated paper, glossy paper, etc.). Therefore, when image formation is performed on such a recording medium that requires time for ink permeation, if a quantization process using the present invention, such as the present embodiment, is performed, a part of the dots are adjacent to the adjacent dots. It is possible to significantly reduce the generation of streaks due to the movement so as to attract each other.
- the error matrix value is predetermined. It is also possible to determine a pixel to be subjected to dot arrangement change by adding correction using the coefficient.
- the threshold value matrix generation device 1 is included in the configuration of the quantization device 200, but the quantization device may not include the threshold value matrix generation device.
- a threshold value matrix generated by a threshold value matrix generation device provided separately from the quantization device is stored in a recording medium or a storage device, and the threshold value matrix is copied or copied from the recording medium or the storage device to the storage unit of the quantization device. Data may be moved.
- the threshold matrix generation processing is performed by software processing by a computer, but may be performed by a dedicated device. Further, a computer that performs threshold matrix generation processing can also perform processing other than threshold matrix generation processing. For example, a threshold matrix may be generated by a general-purpose computer such as a personal computer, or threshold matrix generation processing may be performed as one processing performed by a CPU or the like provided in a device such as an MFP (Multifunction Peripheral). .
- MFP Multifunction Peripheral
- the dot arrangement exchange is terminated when the noise value satisfies a predetermined condition (for example, less than a predetermined value). Also good.
- the quantized image generated using the present invention may be an image forming apparatus in which a print head that moves relative to a recording medium has a plurality of recording elements in a direction substantially orthogonal to the direction of the relative movement.
- a print head that moves relative to a recording medium has a plurality of recording elements in a direction substantially orthogonal to the direction of the relative movement.
- the dot pattern along the nozzle row direction The pixel width is divided into a plurality of regions, and the quantized image used for the microweave image forming apparatus that forms each of the divided regions by moving the print head H or the medium along the nozzle array direction is generated. Even in this case, the present invention can be applied.
- Threshold Matrix Generation Device 11 CPU 12 RAM 13 ROM 14 Storage device 15 Interface 200 Quantization apparatus 201 Acquisition unit 202 Storage unit 203 Quantization processing unit 204 Output unit
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Color, Gradation (AREA)
- Ink Jet (AREA)
- Particle Formation And Scattering Control In Inkjet Printers (AREA)
- Fax Reproducing Arrangements (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
記録メディアに対してy方向に相対移動を行うプリントヘッドHが少なくともy方向に直交するx方向に沿って設けられた複数のノズルNを有する画像形成装置の画像形成に用いる画像データを量子化する量子化装置200であって、画像データを取得する取得部201と、閾値マトリクスを記憶する記憶部202と、画像データ及び閾値マトリクスに基づいて画像データの量子化を行う量子化処理部203と、を備え、閾値マトリクスは、所定の画素領域に対応し、積層束縛条件下で作成され、かつ、階調値gの値がそれぞれ異なる複数のドットパターンのそれぞれのドットの有無を示す複数の行列値に基づいて生成され、階調値がg1≦g<g2の範囲内であるドットパターンは、ドットを形成される複数の画素がX方向又はY方向に沿って連続する。
Description
本発明は、量子化装置、閾値マトリクス生成方法及び閾値マトリクスに関する。
多階調画像に基づく画像を用紙等の印刷媒体上に出力形成(印刷)するに際して、多階調画像に対して量子化処理を施して出力画像を得ることが広く行われている。ここでいう「量子化処理」とは、入力画像の階調よりも少ない階調で当該多階調画像と同様の画像を表現するため、入力画像の各画素に応じて出力画像の各画素のドットの形成状態を決定する処理である。
量子化処理の方法として、誤差拡散法とディザ法が知られている。このうち、誤差拡散法は、演算過程が煩雑であり処理時間がかかるという問題点がある。これに対し、ディザ法は入力画像の画素の画素値とその画素に対応した閾値との比較結果に基づいて量子化を行う方法であり、誤差拡散法に比して非常に演算時間が短いという利点がある。
ディザ処理において各画素の画素値との比較に用いられる閾値は、所定の画素数に対応するマトリクスデータとして予め用意されている。以下、当該所定の画素数に対応するマトリクスデータを「閾値マトリクス」と記載する。
ディザ処理において各画素の画素値との比較に用いられる閾値は、所定の画素数に対応するマトリクスデータとして予め用意されている。以下、当該所定の画素数に対応するマトリクスデータを「閾値マトリクス」と記載する。
閾値マトリクスは、例えば、複数の画素を方形状に配置した画素領域に対応するマトリクスデータであり、そのサイズは「縦の画素数×横の画素数」で表すことができる(例えば特許文献1)。
閾値マトリクスは、一般的に、ディザ処理を施される多階調画像の縦横画素数よりも小さな画素数に対応する。ディザ処理では、ディザ処理を施される多階調画像に対して閾値マトリクスをタイル状に繰り返し適用することで閾値マトリクスよりも大きな画像サイズの多階調画像を量子化する。
閾値マトリクスは、一般的に、ディザ処理を施される多階調画像の縦横画素数よりも小さな画素数に対応する。ディザ処理では、ディザ処理を施される多階調画像に対して閾値マトリクスをタイル状に繰り返し適用することで閾値マトリクスよりも大きな画像サイズの多階調画像を量子化する。
ディザ処理に用いる閾値マトリクスを生成する方法として、例えば積層束縛(StackingConstraint)条件下での閾値マトリクス生成方法が知られている(例えば特許文献2)。
図36に示す閾値マトリクス生成処理のイメージ図と、図37に示すフローチャートと、を用いて、Stacking Constraint条件下での閾値マトリクス生成方法について説明する。ここでは、CPU、RAM、ROM等を有するコンピュータによるソフトウェア処理で閾値マトリクスを生成する場合を例示する。
図36に示す閾値マトリクス生成処理のイメージ図と、図37に示すフローチャートと、を用いて、Stacking Constraint条件下での閾値マトリクス生成方法について説明する。ここでは、CPU、RAM、ROM等を有するコンピュータによるソフトウェア処理で閾値マトリクスを生成する場合を例示する。
まず、CPUは、図36に示す入力パターン101に対して、次の階調値のドットパターン(図36の出力パターン102)を実現するために必要なドット数を決定し入力ドットパターン101に追加する(ステップS201)。必要なドット数とは、入力パターン101のドット率について次の階調値のパターンのドット率の差に応じて決定される。ドット率とは、パターンの全画素数に対するドットが配置される画素の数の割合である。
次に、CPUは、予め用意された空間フィルタを必要なドット数が追加された入力ドットパターンに対して適用する(ステップS202)。次に、CPUは、空間フィルタを適用されたドットパターンを参照し、入力ドットパターン101に追加されたドット位置の再配置を行う(ステップS203)。そして、CPUは、ステップS203による追加ドットの再配置前後の各パターンの評価値をそれぞれ算出し、算出された二の評価値を比較し(ステップS204)、再配置後のドットパターンの評価値が再配置前のドットパターンの評価値以上であるか否かを判定する(ステップS205)。つまり、CPUは、ステップS204で算出した評価値がドットの再配置によって減少しなかったかどうかを判定する。再配置後のドットパターンの評価値の方が再配置前のドットパターンの評価値以上である場合(ステップS205:YES)、ステップS203で最後の再配置を行う直前の出力パターン103に基づいて入力ドットパターン101の次の階調値のドットパターン102を作成し(ステップS206)、処理を終了する。ステップS205において、再配置後のドットパターンの評価値の方が再配置前のドットパターンの評価値未満の場合(ステップS205:NO)、ステップS202の処理に戻る。この処理を繰り返すことで各ドット率でのドットパターンを作成し閾値マトリクスを得る。
次に、CPUは、予め用意された空間フィルタを必要なドット数が追加された入力ドットパターンに対して適用する(ステップS202)。次に、CPUは、空間フィルタを適用されたドットパターンを参照し、入力ドットパターン101に追加されたドット位置の再配置を行う(ステップS203)。そして、CPUは、ステップS203による追加ドットの再配置前後の各パターンの評価値をそれぞれ算出し、算出された二の評価値を比較し(ステップS204)、再配置後のドットパターンの評価値が再配置前のドットパターンの評価値以上であるか否かを判定する(ステップS205)。つまり、CPUは、ステップS204で算出した評価値がドットの再配置によって減少しなかったかどうかを判定する。再配置後のドットパターンの評価値の方が再配置前のドットパターンの評価値以上である場合(ステップS205:YES)、ステップS203で最後の再配置を行う直前の出力パターン103に基づいて入力ドットパターン101の次の階調値のドットパターン102を作成し(ステップS206)、処理を終了する。ステップS205において、再配置後のドットパターンの評価値の方が再配置前のドットパターンの評価値未満の場合(ステップS205:NO)、ステップS202の処理に戻る。この処理を繰り返すことで各ドット率でのドットパターンを作成し閾値マトリクスを得る。
図36及び図37を用いた上記の説明では、入力パターン101のドット位置を保持しながら、ドット率が大きい出力パターン102を作成する場合、即ちドットが増える場合を示している。出力パターン102よりもさらにドット率が大きいパターンを生成する場合、出力パターン102を入力パターン101として同様の処理を行う。入力パターン101に対して出力パターン102のドット率が小さい、即ちドットが減る場合、CPUは入力パターン101ですでに配置されているドット位置からドットを削除する画素について同様に処理する。このようなStacking Constraint条件下で得られた各ドット率でのドットパターンを作成するドットパターン作成方法により、一の入力パターンに基づいて様々なドット率のパターンを得ることができる。このようにして作成した各ドット率のドットパターンを用いて閾値マトリクスを作成する。
以下、図36及び図37を用いて説明したStacking Constraint条件下での閾値マトリクス生成方法を「空間フィルタ法」と記載する。
以下、図36及び図37を用いて説明したStacking Constraint条件下での閾値マトリクス生成方法を「空間フィルタ法」と記載する。
空間フィルタ法によって生成された閾値マトリクスを用いたディザ処理に限らず、ディザ処理では当該処理を施された画像データのドット配置を分散させることが重要であり、そのための様々な方法が開示されている(例えば特許文献3、4、5等)。ドット配置の分散が不十分である場合、ドット配置の偏りによるムラ等の画質低下を生じるためである。
ところで、画像データをインクジェットプリンタで印刷する場合、隣接するドット同士が引き合うように移動することによってドットの位置ずれを生じることがある。
図38A、Bを用いて、隣接するドット同士が引き合うように移動することによって生じるドットの位置ずれについて説明する。
図38Aに示すように、記録メディア(例えば用紙P)に対して着弾したインク(インクP1)が当該記録メディアに浸透しきっていない状態で、先に着弾したインクP1に隣接するように新たなインク(インクP2)が着弾すると、インクP1とインクP2とが互いに引き寄せられるように移動する。このとき、図38Bに示すように、後に着弾した新たなインクP2が、インクP1に対してより大きく引き寄せられる。このように、着弾したインク同士が引き合うように移動することによって、各インクが本来浸透すべき位置からずれた位置へ移動する位置ずれを生じる。
図38Aに示すように、記録メディア(例えば用紙P)に対して着弾したインク(インクP1)が当該記録メディアに浸透しきっていない状態で、先に着弾したインクP1に隣接するように新たなインク(インクP2)が着弾すると、インクP1とインクP2とが互いに引き寄せられるように移動する。このとき、図38Bに示すように、後に着弾した新たなインクP2が、インクP1に対してより大きく引き寄せられる。このように、着弾したインク同士が引き合うように移動することによって、各インクが本来浸透すべき位置からずれた位置へ移動する位置ずれを生じる。
隣接するドット同士が引き合うように移動することによって生じるドットの位置ずれは、インクの浸透に時間を要する記録メディア、もしくはまったく浸透をしない記録メディアで生じやすい。インクの浸透に時間を要する記録メディアの一例として、アート紙やコート紙等の印刷本用紙や光沢紙等がある。また、まったく浸透をしない記録メディアの例として、ペットフィルム、ポリ塩化ビニルシート等がある。
隣接するドット同士が引き合うように移動することによって生じるドットの位置ずれは、印刷画像にスジを生じさせる。
図39A、Bを用いて、ドットの位置ずれが生じさせるスジについて説明する。
図39Aに示すドット配置を行うことを想定した印刷画像を構成するドットが位置ずれを生じた場合、例えば図39Bに示す印刷画像となる。図39Bに示す印刷画像は、ドット列L1~L5のうち、ドット列L1~L3を形成するドットが互いに引き合うようにドット位置ずれを生じ、ドット列L4、L5を形成するドットが互いに引き合うようにドット位置ずれを生じている。このため、ドットの位置ずれによって離隔されたドット列L3とドット列L4との間に、連続した隙間であるスジLを生じている。
図39A、Bを用いて、ドットの位置ずれが生じさせるスジについて説明する。
図39Aに示すドット配置を行うことを想定した印刷画像を構成するドットが位置ずれを生じた場合、例えば図39Bに示す印刷画像となる。図39Bに示す印刷画像は、ドット列L1~L5のうち、ドット列L1~L3を形成するドットが互いに引き合うようにドット位置ずれを生じ、ドット列L4、L5を形成するドットが互いに引き合うようにドット位置ずれを生じている。このため、ドットの位置ずれによって離隔されたドット列L3とドット列L4との間に、連続した隙間であるスジLを生じている。
このように、隣接するドット同士が引き合うように移動することによって生じるドットの位置ずれによるスジは、印刷された画像の画質低下をもたらす。従来より知られているドット配置を分散させるための方法では、ドットの位置ずれによるスジの発生を良好に低減させることができなかった。
本発明の課題は、ドットの位置ずれによるスジの発生をより良好に低減させることである。
請求項1に記載の発明は、記録メディアの搬送方向に対し直交する方向に沿って配列された色材を吐出する複数の吐出口を有するプリントヘッドにより、記録媒体上に画像を形成する際に用いる画像データを量子化する量子化装置であって、前記画像データを取得する取得部と、所定の画素領域を構成する各画素についてドット形成を行うか否かを判定するための閾値を有する閾値マトリクスを記憶する記憶部と、取得した前記画像データ及び前記閾値マトリクスに基づいて当該画像データの量子化を行う量子化処理部と、を備え、前記閾値マトリクスは、前記所定の画素領域を構成する全画素数に対するドット数が階調値に応じて各々異なる複数のドットパターンで構成されると共に、前記複数のドットパターンは、相対的に全画素数に対するドット数が多いドットパターンが、相対的に当該ドットパターンよりも全画素数に対するドット数が少ないドットパターンで配置されたドットの位置に配置された全てのドットを含んで構成される条件を満足し、且つ低濃度領域に対応する階調範囲内の階調値に対応する前記複数のドットパターンの中には、ドットが配置される画素が連続して並ぶ方向が前記記録メディアの搬送方向又は前記搬送方向とは直交する方向にのみ配置されるドット配置で構成されるドットパターンを有することを特徴とする。
請求項2に記載の発明は、記録メディアの搬送方向に対し直交する方向に沿って配列された色材を吐出する複数の吐出口を有するプリントヘッドにより、記録媒体上に画像を形成する際に用いる画像データを量子化するために用いられる記録メディア閾値マトリクスを生成する閾値マトリクス生成方法であって、所定の画素領域において第1の階調値に対応する所定のドット数を有する第一のドットパターンに基づいて前記第一のドットパターンのドット数を増加又は減少させた前記第1の階調値とは異なる第2の階調値に対応する第二のドットパターンを生成する新ドットパターン生成工程と、前記第二のドットパターンに含まれるドットを再配置した第三のドットパターンを得る再配置工程と、所望のドット数のドットパターンを得るまで前記第三のドットパターンを前記第一のドットパターンとして前記新ドットパターン生成工程及び前記再配置工程を繰り返す繰り返し工程と、を有し、前記再配置工程は、前記第二のドットパターンに所定の空間フィルタを適用したパターンに対して所望の空間周波数分布に対応するドットパターンを実現するための誤差に基づくドットパターン評価値を前記閾値マトリクス内の各位置に対応させて算出するドットパターン評価値算出工程と、前記ドットパターン評価値に基づいて、ドットの再配置において新たにドットを配置する位置及びドットを削除する位置を決定するドット再配置位置決定工程と、前記ドット再配置位置決定工程により決定された新たにドットを配置する位置及びドットを削除する位置に基づいて前記第三のドットパターンのドットを再配置する再配置パターン生成工程と、再配置された前記第三のドットパターンに対するドット分散性評価値を算出するドット分散性評価値算出工程と、再配置された前記第三のドットパターンのドット分散性評価値に基づいて前記ドットパターン評価値算出工程、前記ドット再配置位置決定工程、前記再配置パターン生成工程及び前記ドット分散性評価値算出工程を繰り返すか否かを判定する再配置繰り返し判定工程と、前記再配置繰り返し判定工程において繰り返すと判定された場合、再配置された前記第三のドットパターンを前記第二のパターンとする工程と、を有し、前記ドット再配置位置決定工程は、前記ドット数が低濃度領域に対応する階調範囲内の階調値に対応する前記第二のドットパターンについて、ドットが配置される画素が連続して並ぶ方向が前記記録メディアの搬送方向又は当該搬送方向とは直交する方向にのみ配置されるドット配置となるようにドットの位置を決定する事を特徴とする。
請求項3に記載の発明は、請求項2に記載の閾値マトリクス生成方法であって、前記新ドットパターン生成工程は、前記ドット数が前記低濃度領域に対応する階調範囲よりも高い階調値を有する第2の階調値範囲内である前記第二のドットパターンについて、前記第一のドットパターンのドット数を増加させて前記第二のドットパターンを作成することを特徴とする。
請求項4に記載の発明は、記録メディアの搬送方向に対し直交する方向に沿って配列された色材を吐出する複数の吐出口を有するプリントヘッドにより、記録媒体上に画像を形成する際に用いる画像データを量子化するために用いられる閾値マトリクスであって、前記閾値マトリクスは、所定の画素領域を構成する全画素数に対するドット数が階調値に応じて各々異なる複数のドットパターンで構成されると共に、前記複数のドットパターンは、相対的に全画素数に対するドット数が多いドットパターンが、相対的に当該ドットパターンよりも全画素数に対するドット数が少ないドットパターンで配置されたドットの位置に配置された全てのドットを含んで構成される条件を満足し、且つ低濃度領域に対応する階調範囲内の階調値に対応する前記複数のドットパターンの中には、ドットが配置される画素が連続して並ぶ方向が前記記録メディアの搬送方向又は当該搬送方向に直交する方向にのみ配置されるドット配置で構成されるドットパターンを有することを特徴とする。
本発明によれば、ドットの位置ずれによるスジの発生をより良好に低減させることができる。
以下、図を参照して本発明の実施の形態の例を詳細に説明する。
図1に、本発明の一実施形態による量子化装置200を示す。
量子化装置200は、取得部201、記憶部202、量子化処理部203、出力部204及び閾値マトリクス生成装置1を有する。
取得部201は、量子化処理を施す対象となる画像データを取得して量子化処理部203へ入力する。
記憶部202は、閾値マトリクスを記憶する。
取得部201は、量子化処理を施す対象となる画像データを取得して量子化処理部203へ入力する。
記憶部202は、閾値マトリクスを記憶する。
図2に、閾値マトリクスの一部の一例を示す。
本実施形態の閾値マトリクスは、所定の画素領域(例えば256×256[画素])に対応する各画素に閾値が設定されたデータである。各画素の閾値は、画像データを構成する画素領域のうち、当該所定の画素領域に対応する画素領域の各画素についてドット形成を行うか否かを判定するための閾値である。
本実施形態の閾値マトリクスは、所定の画素領域(例えば256×256[画素])に対応する各画素に閾値が設定されたデータである。各画素の閾値は、画像データを構成する画素領域のうち、当該所定の画素領域に対応する画素領域の各画素についてドット形成を行うか否かを判定するための閾値である。
量子化処理部203は、取得部201から入力された画像データと、記憶部202に記憶された閾値マトリクスと、に基づいて、画像データの量子化を行う。
具体的には、量子化処理部203は、取得部201から画像データが入力されると、記憶部202から閾値マトリクスを読み出す。次に、量子化処理部203は、画像データの画素領域のうち所定の画素領域(例えば256×256[画素])の範囲の各画素の画素値と、閾値マトリクスに設定された各画素の閾値とをそれぞれ比較する。そして、量子化処理部203は、比較結果に基づいて当該所定の画素領域における各画素のドットの形成/非形成を決定することで量子化処理後の画像データ(量子化画像データ)を生成する。
本実施形態の量子化処理部203は、量子化処理前の画像データの画素値が閾値マトリクスに設定された閾値以上である画素についてドットを形成し、量子化処理前の画像データの画素値が閾値マトリクスに設定された閾値未満である画素についてドットを形成しない決定を行う。画像データの画素領域が所定の画素領域(例えば256×256[画素])より大きな画素領域を有する場合、画像データの画像領域を当該画素領域単位で区切り、区切られた各画素領域に対して量子化を行う。
出力部204は、量子化処理部203により生成された量子化画像データを出力する。
具体的には、量子化処理部203は、取得部201から画像データが入力されると、記憶部202から閾値マトリクスを読み出す。次に、量子化処理部203は、画像データの画素領域のうち所定の画素領域(例えば256×256[画素])の範囲の各画素の画素値と、閾値マトリクスに設定された各画素の閾値とをそれぞれ比較する。そして、量子化処理部203は、比較結果に基づいて当該所定の画素領域における各画素のドットの形成/非形成を決定することで量子化処理後の画像データ(量子化画像データ)を生成する。
本実施形態の量子化処理部203は、量子化処理前の画像データの画素値が閾値マトリクスに設定された閾値以上である画素についてドットを形成し、量子化処理前の画像データの画素値が閾値マトリクスに設定された閾値未満である画素についてドットを形成しない決定を行う。画像データの画素領域が所定の画素領域(例えば256×256[画素])より大きな画素領域を有する場合、画像データの画像領域を当該画素領域単位で区切り、区切られた各画素領域に対して量子化を行う。
出力部204は、量子化処理部203により生成された量子化画像データを出力する。
本実施形態の量子化装置200は、記録メディアに対して相対移動を行うプリントヘッドが少なくとも相対移動の方向に略直交する方向に複数の記録素子を有する画像形成装置が画像形成に用いる画像データを量子化するために用いられる量子化装置である。
図3に、記録メディアに対して相対移動を行うプリントヘッドが少なくとも相対移動の方向に略直交する方向に複数の記録素子を有する画像形成装置のプリントヘッド付近の構成の一例を示す。
図3に示す画像形成装置は、搬送ベルトBによって所定の一方向(y方向)に沿って搬送される記録メディア(例えば用紙P等)に対してドットを形成することで記録メディアに画像を形成する画像形成装置である。画像形成装置は、記録メディアに対してドットを形成する複数の記録素子(例えばノズルN等)を有するプリントヘッドHを備える。
図3に示す画像形成装置は、搬送ベルトBによって所定の一方向(y方向)に沿って搬送される記録メディア(例えば用紙P等)に対してドットを形成することで記録メディアに画像を形成する画像形成装置である。画像形成装置は、記録メディアに対してドットを形成する複数の記録素子(例えばノズルN等)を有するプリントヘッドHを備える。
図4に、プリントヘッドに設けられた記録素子の並びの一例を示す。
各プリントヘッドH(例えばプリントヘッドH1、H2等)は、図4に示すように、所定の一方向(y方向)に直交する他方向(x方向)に沿って色材としてのインクを吐出する複数の吐出口であるノズルNを有する。各プリントヘッドのノズルNは、図4に示すように、隣接するプリントヘッドHのノズルNと所定の一方向(y方向)に沿った同一線上(例えば図4に示す一点破線N1)に並ばないように設けられている。各プリントヘッドHにそれぞれ設けられるノズルNは、同一プリントヘッドに設けられて隣接するノズルNによって形成されたドット同士が引き合わない間隔(図4に示す間隔N2)で設けられている。
各プリントヘッドH(例えばプリントヘッドH1、H2等)は、図4に示すように、所定の一方向(y方向)に直交する他方向(x方向)に沿って色材としてのインクを吐出する複数の吐出口であるノズルNを有する。各プリントヘッドのノズルNは、図4に示すように、隣接するプリントヘッドHのノズルNと所定の一方向(y方向)に沿った同一線上(例えば図4に示す一点破線N1)に並ばないように設けられている。各プリントヘッドHにそれぞれ設けられるノズルNは、同一プリントヘッドに設けられて隣接するノズルNによって形成されたドット同士が引き合わない間隔(図4に示す間隔N2)で設けられている。
図5A~Cを用いて、画像形成装置によるドットの形成の一例を示す。
まず、図5Aに示すように、複数のプリントヘッドの内、用紙Pの搬送方向V1でみて上流側に位置するプリントヘッドH(図5に示すプリントヘッドH1)が用紙Pに対してドットを形成する。用紙Pに形成されたドットは、図5Bに示すように、同一のノズルNによって形成された複数のドットがそれぞれ引き合うように移動してドット同士の合一を形成する。その後、用紙Pが搬送されると、図5Cに示すように、用紙Pの搬送方向V1に対して相対的に下流に位置するプリントヘッドH(図5に示すプリントヘッドH2)が用紙Pに対してドットを形成する。
まず、図5Aに示すように、複数のプリントヘッドの内、用紙Pの搬送方向V1でみて上流側に位置するプリントヘッドH(図5に示すプリントヘッドH1)が用紙Pに対してドットを形成する。用紙Pに形成されたドットは、図5Bに示すように、同一のノズルNによって形成された複数のドットがそれぞれ引き合うように移動してドット同士の合一を形成する。その後、用紙Pが搬送されると、図5Cに示すように、用紙Pの搬送方向V1に対して相対的に下流に位置するプリントヘッドH(図5に示すプリントヘッドH2)が用紙Pに対してドットを形成する。
閾値マトリクス生成装置は、閾値マトリクスを生成する。生成された閾値マトリクスは、記憶部202に記憶される。
図6に、閾値マトリクス生成装置1の構成の一例を示す。
閾値マトリクス生成装置1は、CPU11、RAM12、ROM13、ストレージデバイス14及びインタフェース15を備え、これらの各構成はバス16によって接続される。
図6に、閾値マトリクス生成装置1の構成の一例を示す。
閾値マトリクス生成装置1は、CPU11、RAM12、ROM13、ストレージデバイス14及びインタフェース15を備え、これらの各構成はバス16によって接続される。
CPU11は、ROM13やストレージデバイス14に記憶されたプログラムと協働し、RAM12に展開されたプログラムやデータ等に従って閾値マトリクス生成装置1の動作制御を行う。
RAM12は、CPU11の処理によって展開されたデータや、当該処理によって一時的に生じたデータ等を格納する。
ROM13は、CPU11によって読み出されるプログラムやデータ等を記憶する。
RAM12は、CPU11の処理によって展開されたデータや、当該処理によって一時的に生じたデータ等を格納する。
ROM13は、CPU11によって読み出されるプログラムやデータ等を記憶する。
ストレージデバイス14は、CPU11によって読み出されるプログラムやデータ等を記憶する。ストレージデバイス14は、プログラムやデータ等を書き換え可能な記憶装置である。ストレージデバイス14は、例えばフラッシュメモリやハードディスクドライブ、その他の書き換え可能な記憶装置又はそれらの記憶装置の組合せ等によって構成される。
インタフェース15は、閾値マトリクス生成装置1と外部の機器との間におけるデータ伝送を可能とするよう閾値マトリクス生成装置1と外部の機器とを接続する。本実施形態のインタフェース15は、閾値マトリクス生成装置1と量子化装置200の記憶部202とを接続する。閾値マトリクス生成装置1により生成された閾値マトリクスは、インタフェース15を介して記憶部202へ転送され、記憶される。
インタフェース15として、例えばUSB(Universal Serial Bus)やIEEE3394等のシリアルバス接続を可能とするインタフェースを採用することができるが、インタフェース15及びインタフェース15を介したデータ伝送は、有線/無線を問わず、またそのプロトコルやその他の接続形式に関する条件(例えば規格等)を問わない。
インタフェース15として、例えばUSB(Universal Serial Bus)やIEEE3394等のシリアルバス接続を可能とするインタフェースを採用することができるが、インタフェース15及びインタフェース15を介したデータ伝送は、有線/無線を問わず、またそのプロトコルやその他の接続形式に関する条件(例えば規格等)を問わない。
閾値マトリクス生成装置1は、上述のようにCPU11、RAM12、ROM13等を有するコンピュータであり、ソフトウェア処理により閾値マトリクスを生成する。本実施形態では、ROM13又はストレージデバイス14が閾値マトリクス生成プログラム17を記憶し、CPU11が閾値マトリクス生成プログラム17を読み出して実行することにより閾値マトリクスの生成が行われる。なお、後述するローパスフィルタ等、閾値マトリクス生成プログラムの実行に伴い読み出される各種のデータはROM13又はストレージデバイス14に記憶されている。
次に、閾値マトリクスの生成について説明する。
図7に、ドットパターンと行列値との対応関係の一例を示す。
図8に、各階調値のドットパターンに応じた行列値の0/1の加算による閾値マトリクスの生成メカニズムを例示する。
閾値マトリクスに設定された各画素の閾値は、階調値が異なる複数のドットパターンに応じた0/1の積算に基づいて決定されている。「階調値が異なる」とは、所定の画素領域(例えば256×256[画素])を構成する全画素数においてドットが配置される画素の数(ドット数)が異なることを示す。言い換えれば、所定の画素領域(例えば256×256[画素])に含まれるドット数は階調値に対応する。
図7に、ドットパターンと行列値との対応関係の一例を示す。
図8に、各階調値のドットパターンに応じた行列値の0/1の加算による閾値マトリクスの生成メカニズムを例示する。
閾値マトリクスに設定された各画素の閾値は、階調値が異なる複数のドットパターンに応じた0/1の積算に基づいて決定されている。「階調値が異なる」とは、所定の画素領域(例えば256×256[画素])を構成する全画素数においてドットが配置される画素の数(ドット数)が異なることを示す。言い換えれば、所定の画素領域(例えば256×256[画素])に含まれるドット数は階調値に対応する。
積算にあたり、まず各階調値のドットパターンにおけるドットの有無を図7に示すように0(ドットなし)/1(ドットあり)で表すマトリクスデータ(例えば行列の設定値等)が生成される。当該行列の設定値は、所定の画素領域を構成する各画素のドットの有無を数値で示したマトリクスに対応する。ここで 図8に示すように、それぞれ異なる二の階調値に応じたドットパターンを示す0/1の行列の設定値を加算すると、当該二の行列の双方においてドットが配置される「1」の画素は、加算されることによって「2」になる。同様に、二の行列の一方のみにおいてドットが配置される画素は「1」になる。また、当該二の行列の双方においてドットが配置されない「0」の画素は、加算後も「0」である。このように、多くの階調値においてドットが配置される画素ほど、その閾値は積算によって相対的に大きくなり、逆に多くの階調値においてドットが配置されない画素ほど、その閾値は相対的に小さくなる。このように、閾値マトリクスに設定された各画素の閾値は、各階調値のドットパターンに応じた0/1の積算によって決定された行列の設定値に基づく。本実施形態では、各画素の閾値は、各階調値のドットパターンに応じた0/1の積算によって決定された行列の設定値を反転して得られる。
閾値マトリクスの生成に際し、CPU11は各階調値に対応した複数のドットパターン、即ち所定の画素領域を構成する全画素数に対するドット数がそれぞれ異なる複数のドットパターンに対応するマトリクスデータ(例えば行列の設定値等)を生成する。以下、各マトリクスデータに基づくドットパターンにおけるドットの有無を視覚化する目的で、ドットパターンを用いて説明を行う。
図9に、各階調値に対応した複数のドットパターンの模式図を示す。
本実施形態の閾値マトリクス生成装置1は、記録メディアに対して相対移動を行うプリントヘッドが少なくとも相対移動の方向に略直交する方向に色材であるインクを吐出する複数の吐出口を有する画像形成装置が画像形成に用いる画像データを量子化するために用いられる閾値マトリクスを生成する。図9に示す例の場合、図9に示すy方向が「プリントヘッドが記録メディアに対して相対移動を行う方向」に対応し、図9に示すx方向が「相対移動の方向に略直交する方向」に対応する。
本実施形態では、階調値gの最小値を0、最大値を1として設定しており、CPU11は0~1の各階調値に対応するドットパターンを生成する。本実施形態において、階調値が最小(0)であるドットパターンは、ドットが全く配置されないパターンである。階調値が最大(1)であるドットパターンは、全ての画素についてドットが配置されるパターンである。
本実施形態の閾値マトリクス生成装置1は、記録メディアに対して相対移動を行うプリントヘッドが少なくとも相対移動の方向に略直交する方向に色材であるインクを吐出する複数の吐出口を有する画像形成装置が画像形成に用いる画像データを量子化するために用いられる閾値マトリクスを生成する。図9に示す例の場合、図9に示すy方向が「プリントヘッドが記録メディアに対して相対移動を行う方向」に対応し、図9に示すx方向が「相対移動の方向に略直交する方向」に対応する。
本実施形態では、階調値gの最小値を0、最大値を1として設定しており、CPU11は0~1の各階調値に対応するドットパターンを生成する。本実施形態において、階調値が最小(0)であるドットパターンは、ドットが全く配置されないパターンである。階調値が最大(1)であるドットパターンは、全ての画素についてドットが配置されるパターンである。
また、CPU11は、積層束縛(Stacking Constraint)条件下で各階調値のドットパターンを生成する。つまり、CPU11により生成された0を除く各階調値のドットパターンは、相対的に階調値の高い階調値に対応するドットパターンが相対的に階調値の低い階調値に対応するドットパターンで配置されたドットの位置に配置された全てのドットを含んでいる。
図10に、複数のドットパターンの生成処理における各ドットパターンの階調値とドットの追加又は削除との対応関係を示す。
本実施形態では、0~1の値をとる階調値gに、三つの所定値(g1、g2、g3)を設定し、当該三つの所定値により区切られる階調値gの所定の範囲ごとに異なるドットパターンの生成方法を用いる。
本実施形態では、0~1の値をとる階調値gに、三つの所定値(g1、g2、g3)を設定し、当該三つの所定値により区切られる階調値gの所定の範囲ごとに異なるドットパターンの生成方法を用いる。
CPU11は、各階調値に対応した複数のドットパターンを生成するに際し、階調値0のドットパターンに対してドットを順次追加することにより0~g2のドットパターンを生成する。一方、CPU11は、各階調値に対応した複数のドットパターンを生成するに際し、階調値1のドットパターンからドットを順次削除ことによりg2~1のドットパターンを生成する。
複数のドットパターンのうち階調値gが量子化される画像データの低濃度領域に対応する階調範囲であるg1≦g<g2の範囲内であるドットパターン(例えば図9に示すドットパターンD1等)は、ドットを配置される複数の画素がx方向又はy方向に沿って連続する。CPU11は、ドット数が階調値gがg1≦g<g2の範囲内であるドットパターンについて、ドットが配置される画素が連続して並ぶ方向が記録メディアの搬送方向(y方向)又は当該搬送方向に直交する方向(x方向)にのみ配置されるドット配置であるドットパターンを生成する。
図11に、ドットを配置される画素がx方向又はy方向に沿って連続するドットパターンとその他のドットパターンとの比較例を示す。図11に示す「ドットパターン」はマトリクスの0(ドットなし)/1(ドットあり)を可視化した一例を示し、「ドット径反映」は、「ドットパターン」のドットあり画素に対して画像形成装置により形成されるドットの径を反映させた一例を示し、「着弾ズレ及び液滴合一反映」は「ドットパターン」に基づく画像を形成した場合に形成されたドットの一部が隣接するドットとそれぞれ引き合うように移動した結果の一例を示す。言い換えれば、「ドット径反映」は、画像形成装置により形成されたドットが全く他の隣接するドットと引き合わずに移動しなかった場合を示す「理想的なドット配置」の一例を示し、「着弾ズレ及び液滴合一反映」はドットパターンに基づく画像形成を行った場合の「実際のドット配置」の一例を示す。
図11に、ドットを配置される画素がx方向又はy方向に沿って連続するドットパターンとその他のドットパターンとの比較例を示す。図11に示す「ドットパターン」はマトリクスの0(ドットなし)/1(ドットあり)を可視化した一例を示し、「ドット径反映」は、「ドットパターン」のドットあり画素に対して画像形成装置により形成されるドットの径を反映させた一例を示し、「着弾ズレ及び液滴合一反映」は「ドットパターン」に基づく画像を形成した場合に形成されたドットの一部が隣接するドットとそれぞれ引き合うように移動した結果の一例を示す。言い換えれば、「ドット径反映」は、画像形成装置により形成されたドットが全く他の隣接するドットと引き合わずに移動しなかった場合を示す「理想的なドット配置」の一例を示し、「着弾ズレ及び液滴合一反映」はドットパターンに基づく画像形成を行った場合の「実際のドット配置」の一例を示す。
図11に示すように、通常の誤差拡散によるドットパターンや、x方向及びy方向に対してドットを斜めに連続させて配置したドットパターンは、「着弾ズレ及び液滴合一反映」のパターン、即ち「実際のドット配置」においてy方向に沿ったスジを生じる。これは、ヘッドから射出される液滴の射出角度誤差による着弾ズレや隣接するドットとそれぞれ引き合うように移動した結果生じる従来技術の問題点によるものである。
一方、ドットを配置される画素が連続して並ぶ方向がx方向又はy方向にのみ配置されるドット配置のドットパターンの場合、「着弾ズレ及び液滴合一反映」のパターンにおいてもスジを生じない。つまり、ドットを配置される画素がx方向又はy方向に沿って連続するドットパターンを用いることによって、ヘッドから射出される液滴の射出角度誤差による着弾ズレやドットの一部が隣接するドットとそれぞれ引き合うように移動することによるスジの発生を低減させることができる。
一方、ドットを配置される画素が連続して並ぶ方向がx方向又はy方向にのみ配置されるドット配置のドットパターンの場合、「着弾ズレ及び液滴合一反映」のパターンにおいてもスジを生じない。つまり、ドットを配置される画素がx方向又はy方向に沿って連続するドットパターンを用いることによって、ヘッドから射出される液滴の射出角度誤差による着弾ズレやドットの一部が隣接するドットとそれぞれ引き合うように移動することによるスジの発生を低減させることができる。
複数のドットパターンのうち階調値gが、量子化される画像データの高濃度領域に対応する階調範囲であるg3<g<1の範囲内であるドットパターン(例えば図9に示すドットパターンD2等)は、ドットが配置されない画素が連続して並ぶ方向が前記搬送方向に直交する方向(x方向)にのみ配置されるドット配置である。CPU11は、階調値gがg3<g<1の範囲内であるドットパターンについて、ドットが配置されない画素が連続して並ぶ方向が前記搬送方向に直交する方向(x方向)にのみ配置されるドット配置のドットパターンを生成する。
図12A~D及び図13A~Dを用いて、ドットを配置されない複数の画素がx方向に沿って連続するドットパターンによる画像形成時の効果を示す。
例えば、図12Aに示すような、ドットを配置されない複数の画素がy方向に沿って連続することで隙間E1等の隙間が設けられているドットパターンによる画像形成を行う場合、図12B、図12Cに示すように、図5A~Cを用いた説明の記載と同様に用紙Pの搬送方向V1に対して相対的に上流に位置するプリントヘッドH1から順にドットの形成が行われる。まず、図12Bに示す相対的に上流に位置するプリントヘッドH1によるドット形成の後そのドット同士の合一が形成される。その上に、図12Cに示すように、相対的に下流に位置するプリントヘッドH2により形成され、図12Dに示すようにプリントヘッドH2で形成したドットもそのほかのドットとそれぞれ引き合うように移動してドットの合一を形成する。このとき、図12Dに示すように、ドットパターンにおいて設けられていた隙間E1等の隙間は、画像形成時にはドットの位置ずれを生じることによって塗りつぶされてしまい、隙間として視認が不可能又は著しく困難となる。
一方、図13Aに示すような、ドットを配置されない複数の画素がx方向に沿って連続することで隙間E2等の隙間が設けられているドットパターンによる画像形成を行う場合、図13B、図13Cに示すように、図5A~Cを用いた説明の記載と同様に用紙Pの搬送方向V1に対して相対的に上流に位置するプリントヘッドH1から順にドットの形成が行われる。まず、図13Bに示す相対的に上流に位置するプリントヘッドH1によるドット形成の後そのドット同士の合一が形成される。その上に、図13Cに示すように、相対的に下流に位置するプリントヘッドH2により形成され、図13Dに示すようにプリントヘッドH2で形成したドットもそのほかのドットとそれぞれ引き合うように移動してドットの合一を形成する。このとき、図13Dに示すように、用紙Pに形成された画像には、x方向に沿って連続するドットを形成されない複数の画素に対応する隙間(例えば、ドットパターンの隙間E2に対応する隙間E3等)が生じ、隙間を明確に視認可能となる。このように、ドットを形成されない複数の画素がx方向に沿って連続するドットパターンは、画像形成時に当該ドットを形成されない複数の画素に対応する良好な隙間を生じさせることができる。
また、階調値gが、量子化される画像データの中濃度領域に対応する階調範囲であるg2≦g≦g3の範囲内である複数のドットパターンの中にはドットが配置されない画素が連続して並ぶ方向が前記搬送方向(y方向)及び前記搬送方向とは直交する方向(x方向)にのみ配置されるドット配置のドットパターンがある(例えば図9に示すドットパターンD3等)。CPU11は、ドット数に対応する階調値gがg2≦g≦g3の範囲内であるドットパターンについて、すでに作成した前の階調パターン(この場合現在処理中のドットパターンのドット率よりも高いドット率の階調パターン)においてドットを配置しない位置を中心に、ドットが配置されない画素が連続して並ぶ方向がy方向及びx方向にのみ配置されるドット配置のドットパターンを生成する。
CPU11は、積層束縛(Stacking Constraint)条件下で上記のような各階調値のドットパターンを生成するので、各階調値のドットパターンは、あるドットパターンよりも階調値の低いドットパターン、即ち、あるドットパターンの全画素数に対するドット数よりも、全画素数に対するドット数が少ないドットパターンにおいて配置されている全てのドットと同じ位置に配置されたドットを必ず含むようになる。ここで、各階調値のドットパターンがそのドットパターンよりも階調値の低いドットパターンにおいて配置されている全てのドットと同じ位置に配置されたドットを必ず含むという条件と、ドットを配置されない複数の画素をx方向に沿って連続させるという条件と、を共に満たすようにドットを配置されない画素を決定する処理において、x方向に沿って連続するドットを配置されない複数の画素の配置が不可能又は著しく制限されることがある。このような条件下でx方向に沿って連続するドットを配置されない複数の画素を含むパターンを無理に生成すると、ドットパターンにおけるドットの分散が損なわれてしまうことがある。そこで、本実施形態では、階調値がg2≦g≦g3の範囲内については、ドットを配置されない複数の画素を、x方向のみに限らず、y方向のみに沿って連続させることも許可した条件下でドットパターンを生成する。ただし、ドット配置されない画素が単独で生じないように、すでに作成した前の階調パターンで発生した、ドットが配置されない画素に隣接させて新たにドットが配置されない画素を選択する。ドットを配置されない複数の連続して並ぶ画素の方向がx方向及びy方向にのみ配置される配置を許容することにより、単一の画素についてドットが形成されない場合に比して、ドットの一部が隣接するドットとそれぞれ引き合うように移動することによってドットが形成されない画素に対応する隙間が潰れてしまう可能性を大幅に低減させることができ、画像形成時に当該ドットを形成されない複数の画素に対応する良好な隙間を生じさせることができる。
CPU11は、積層束縛(Stacking Constraint)条件下で上記のような各階調値のドットパターンを生成するので、各階調値のドットパターンは、あるドットパターンよりも階調値の低いドットパターン、即ち、あるドットパターンの全画素数に対するドット数よりも、全画素数に対するドット数が少ないドットパターンにおいて配置されている全てのドットと同じ位置に配置されたドットを必ず含むようになる。ここで、各階調値のドットパターンがそのドットパターンよりも階調値の低いドットパターンにおいて配置されている全てのドットと同じ位置に配置されたドットを必ず含むという条件と、ドットを配置されない複数の画素をx方向に沿って連続させるという条件と、を共に満たすようにドットを配置されない画素を決定する処理において、x方向に沿って連続するドットを配置されない複数の画素の配置が不可能又は著しく制限されることがある。このような条件下でx方向に沿って連続するドットを配置されない複数の画素を含むパターンを無理に生成すると、ドットパターンにおけるドットの分散が損なわれてしまうことがある。そこで、本実施形態では、階調値がg2≦g≦g3の範囲内については、ドットを配置されない複数の画素を、x方向のみに限らず、y方向のみに沿って連続させることも許可した条件下でドットパターンを生成する。ただし、ドット配置されない画素が単独で生じないように、すでに作成した前の階調パターンで発生した、ドットが配置されない画素に隣接させて新たにドットが配置されない画素を選択する。ドットを配置されない複数の連続して並ぶ画素の方向がx方向及びy方向にのみ配置される配置を許容することにより、単一の画素についてドットが形成されない場合に比して、ドットの一部が隣接するドットとそれぞれ引き合うように移動することによってドットが形成されない画素に対応する隙間が潰れてしまう可能性を大幅に低減させることができ、画像形成時に当該ドットを形成されない複数の画素に対応する良好な隙間を生じさせることができる。
量子化画像のドットパターンは、閾値マトリクスの生成に用いられるドットパターンに基づく。よって、閾値マトリクスの生成に用いるドットパターンを、ドットを配置される画素がx方向又はy方向に沿って連続するドットパターンとすることにより、ドットの一部が隣接するドットとそれぞれ引き合うように移動することによるスジの発生を低減させることができる。また、閾値マトリクスの生成に用いるドットパターンを、ドットを配置されない複数の画素がx方向またはx方向もしくはy方向に沿って連続するドットパターンとすることにより、画像形成時に当該ドットを形成されない複数の画素に対応する良好な隙間を生じさせることができる。
なお、階調値gが0~g1の範囲内に対応するドットパターンは、従来と同様の積層束縛(Stacking Constraint)条件下でのドットパターンの生成処理により生成される。
三つの所定値(g1、g2、g3)は、予め決定されている。
図14及び図15を用いて、g1の決定方法の一例を示す。
図14に、通常の誤差拡散処理により生成されたドットパターンに基づく閾値マトリクスを用いて量子化処理を行った場合の階調値gと量子化画像との対応関係の一例を示す。
図15に、階調値gとノイズ指数比との対応関係の一例を示す。
例えば、図14に示すように、通常の誤差拡散処理により生成されたドットパターンに基づく閾値マトリクスを用いた量子化処理では、階調値が大きくなるほどスジが見えやすくなる傾向がある。このような、スジが見えやすくなる傾向を定量的に評価する方法の一つとして各階調値に対応する量子化画像のノイズ指数比を算出する方法がある。ノイズ指数を算出する方法として、本実施形態では、量子化した各階調値の画像に2次元高速フーリエ変換(Fast Fourier Transform:FFT)を適用し、さらに所定の視覚特性フィルタを適用したものに対して、互いに直交する所定の二方向(例えば図14に示すx方向及びy方向に対応する二方向等)の成分の周波数成分の積算値を当該所定の二方向のノイズ指数として算出し、当該二方向のノイズ指数の比をノイズ指数比として算出している。
本実施形態において、g1は上記のノイズ指数比に基づいて決定されている。具体的には、スジを視覚的に認識するノイズ指数比に達しない最大の階調値をg1としている。図15に示す例では、スジを視覚的に認識するノイズ指数比の値を1±0.2としている。そして、図15に示す例では、階調値が0.10を超えるとノイズ指数比が1.2を上回っている。このことから、本実施形態ではg1=0.1を採用している。
なお、1200[dpi]以上の場合はこの基準のみでも良いが、低解像度の画像形成装置の場合は、この評価値に加えて周波数の絶対値を基準としたノイズ評価を加えると良い。望ましくは、得られるドットパターンのPrincipal Frequencyが20[cycle/mm]以上となることが好ましい。Principal Frequencyがこの程度まで高周波になっていれば視覚的にノイズを感じない程度となる。Principal Frequencyとはある2値(ドットを形成するか否か)のドットパターンにおいて、ドットを形成する、もしくは形成しないのどちらか数が少ない方に注目したときの2次元空間周波数分布を算出し、その空間周波数分布(2次元パワースペクトル分布)を半径方向に平均化し、得られたスペクトル成分のピークに対応する周波数値をさす。
図14及び図15を用いて、g1の決定方法の一例を示す。
図14に、通常の誤差拡散処理により生成されたドットパターンに基づく閾値マトリクスを用いて量子化処理を行った場合の階調値gと量子化画像との対応関係の一例を示す。
図15に、階調値gとノイズ指数比との対応関係の一例を示す。
例えば、図14に示すように、通常の誤差拡散処理により生成されたドットパターンに基づく閾値マトリクスを用いた量子化処理では、階調値が大きくなるほどスジが見えやすくなる傾向がある。このような、スジが見えやすくなる傾向を定量的に評価する方法の一つとして各階調値に対応する量子化画像のノイズ指数比を算出する方法がある。ノイズ指数を算出する方法として、本実施形態では、量子化した各階調値の画像に2次元高速フーリエ変換(Fast Fourier Transform:FFT)を適用し、さらに所定の視覚特性フィルタを適用したものに対して、互いに直交する所定の二方向(例えば図14に示すx方向及びy方向に対応する二方向等)の成分の周波数成分の積算値を当該所定の二方向のノイズ指数として算出し、当該二方向のノイズ指数の比をノイズ指数比として算出している。
本実施形態において、g1は上記のノイズ指数比に基づいて決定されている。具体的には、スジを視覚的に認識するノイズ指数比に達しない最大の階調値をg1としている。図15に示す例では、スジを視覚的に認識するノイズ指数比の値を1±0.2としている。そして、図15に示す例では、階調値が0.10を超えるとノイズ指数比が1.2を上回っている。このことから、本実施形態ではg1=0.1を採用している。
なお、1200[dpi]以上の場合はこの基準のみでも良いが、低解像度の画像形成装置の場合は、この評価値に加えて周波数の絶対値を基準としたノイズ評価を加えると良い。望ましくは、得られるドットパターンのPrincipal Frequencyが20[cycle/mm]以上となることが好ましい。Principal Frequencyがこの程度まで高周波になっていれば視覚的にノイズを感じない程度となる。Principal Frequencyとはある2値(ドットを形成するか否か)のドットパターンにおいて、ドットを形成する、もしくは形成しないのどちらか数が少ない方に注目したときの2次元空間周波数分布を算出し、その空間周波数分布(2次元パワースペクトル分布)を半径方向に平均化し、得られたスペクトル成分のピークに対応する周波数値をさす。
また、g2は0.5より大きく1に近ければ近いほど良い。g2以下のドットパターンはドットをx方向、y方向につながるように設計されているが、これは着弾ズレを考慮したものである。したがってg2以下のドットパターンを用いて画像のほとんどの階調値を表現するほうが好ましい。また、1に近いほうが良い理由は、階調値の繋ぎ部が目立たないようにするためである。ある階調値以上になればわずかなパターン違和感を無視できる。パターンの違和感を無視できる階調値は解像度から決まる最小ドット間距離(画素の1辺)とドット径の関係から求められる。本実施形態は、最小ドット間距離17.6[μm](1440×1440[dpi])で、ドット径が35[μm]を想定している。この場合であれば、上記階調値gは0.65以上を指す。
また、g2とg3の値は近い値を設定する。なぜならば、g2とg3の間の領域(中濃度領域)はあくまで、高濃度領域と低濃度領域のつなぎでしかないためである。ただし、g2とg3があまり近すぎるとパターンの不連続が著しく顕在化する。本実施形態ではg3=g2+0.1を目安として作成をした。さらにg3は0.9以下が好ましい。g=0.9のとき、x方向に2画素ドットを配置しない画素を均等に分散させたパターンの空間周波数におけるPrincipal Frequencyは略0.2[cycle/pixel]で1440×1440[dpi]の解像度であれば略57[cycle/mm]に相当し、30[cm]観察距離であれば人間の目にはほとんど感知できない程度の周波数となる。こうすることによって、やはりg3を境としたパターンの切り替わりを目立たなくすることができる。さらに、階調値がg2、g3であるそれぞれのドットパターンは次のようなPrincipal Frequencyの関係が成り立つ。
階調値がg2であるドットパターンのPrincipal Frequencyよりも階調値g3であるドットパターンのPrincipal Frequencyが高い場合であっても、閾値マトリクス生成処理におけるドットパターン成長処理の繋ぎ目を挟んだドットパターン間で階調の不連続を生じることがある。具体的には、階調値がg2付近のドットパターンで擬似輪郭を生じることがある。このような階調の不連続を低減させるため、本実施形態では、階調値が1のドットパターンから階調値がg2のドットパターンまでの各階調値のドットパターンにおいて、それぞれのPrincipal Frequencyが、階調値g2のドットパターンにおけるPrincipal Frequencyを超えないようにドットパターンを作成していくほうが好ましい。
また、g2とg3の値は近い値を設定する。なぜならば、g2とg3の間の領域(中濃度領域)はあくまで、高濃度領域と低濃度領域のつなぎでしかないためである。ただし、g2とg3があまり近すぎるとパターンの不連続が著しく顕在化する。本実施形態ではg3=g2+0.1を目安として作成をした。さらにg3は0.9以下が好ましい。g=0.9のとき、x方向に2画素ドットを配置しない画素を均等に分散させたパターンの空間周波数におけるPrincipal Frequencyは略0.2[cycle/pixel]で1440×1440[dpi]の解像度であれば略57[cycle/mm]に相当し、30[cm]観察距離であれば人間の目にはほとんど感知できない程度の周波数となる。こうすることによって、やはりg3を境としたパターンの切り替わりを目立たなくすることができる。さらに、階調値がg2、g3であるそれぞれのドットパターンは次のようなPrincipal Frequencyの関係が成り立つ。
階調値がg2であるドットパターンのPrincipal Frequencyよりも階調値g3であるドットパターンのPrincipal Frequencyが高い場合であっても、閾値マトリクス生成処理におけるドットパターン成長処理の繋ぎ目を挟んだドットパターン間で階調の不連続を生じることがある。具体的には、階調値がg2付近のドットパターンで擬似輪郭を生じることがある。このような階調の不連続を低減させるため、本実施形態では、階調値が1のドットパターンから階調値がg2のドットパターンまでの各階調値のドットパターンにおいて、それぞれのPrincipal Frequencyが、階調値g2のドットパターンにおけるPrincipal Frequencyを超えないようにドットパターンを作成していくほうが好ましい。
次に、閾値マトリクスの生成処理の流れについて説明する。
閾値マトリクスの生成は、初期ドットパターンの生成処理と、当該初期ドットパターンの生成処理によって生成された初期ドットパターンに基づく閾値マトリクスの生成処理とを含む。
閾値マトリクスの生成は、初期ドットパターンの生成処理と、当該初期ドットパターンの生成処理によって生成された初期ドットパターンに基づく閾値マトリクスの生成処理とを含む。
まず、初期ドットパターンの生成処理について、図16のフローチャートを用いて説明する。
まず、CPU11は閾値マトリクスのサイズを決定する(ステップS1)。本実施形態では、直交する二方向(x方向及びy方向)について、x方向に256画素、y方向に256画素を並べた方形状のマトリクスサイズである256×256[画素]を、決定された閾値マトリクスのサイズとして用いる。x方向は記録素子配列方向に対応し、y方向は搬送方向に対応する。閾値マトリクスのサイズは、256×256[画素]に限らず、任意のM×N[画素] (M、Nは自然数)を設定することができる。M、N は、64以上であることが望ましい。MとNは同一の自然数であってもよいし、異なる自然数であってもよい。
まず、CPU11は閾値マトリクスのサイズを決定する(ステップS1)。本実施形態では、直交する二方向(x方向及びy方向)について、x方向に256画素、y方向に256画素を並べた方形状のマトリクスサイズである256×256[画素]を、決定された閾値マトリクスのサイズとして用いる。x方向は記録素子配列方向に対応し、y方向は搬送方向に対応する。閾値マトリクスのサイズは、256×256[画素]に限らず、任意のM×N[画素] (M、Nは自然数)を設定することができる。M、N は、64以上であることが望ましい。MとNは同一の自然数であってもよいし、異なる自然数であってもよい。
次に、CPU11は小区画のサイズを決定する(ステップS2)。本実施形態では、閾値マトリクスのマトリクスサイズである256×256[画素]を、64×64[画素]の小区画に区切る。
図17に、小区画によって区切られた閾値マトリクスの一例をイメージ図で示す。図17に示すように、256×256[画素]の閾値マトリクスは、16個の小区画(64×64[画素])に区切られる。小区画のサイズは、64×64[画素] に限らず、閾値マトリクスのサイズであるM×N[画素]より小さい任意のサイズを設定することができる。
図17に、小区画によって区切られた閾値マトリクスの一例をイメージ図で示す。図17に示すように、256×256[画素]の閾値マトリクスは、16個の小区画(64×64[画素])に区切られる。小区画のサイズは、64×64[画素] に限らず、閾値マトリクスのサイズであるM×N[画素]より小さい任意のサイズを設定することができる。
次に、CPU11は、閾値マトリクス内においてドット配置を行う画素を選択決定する。本実施形態では、ドット配置を行う画素として選択決定された画素の、閾値マトリクス内の全画素に対する割合を階調値gで示す。そして、閾値マトリクス内の全画素がドット配置を行う画素として選択決定される場合を階調値g=1、閾値マトリクス内のいずれの画素もドット配置を行う画素として選択決定されない場合を階調値g=0とする。例えば、階調値g=0.5の場合、閾値マトリクス内の全画素のうち半分の画素がドット配置を行う画素として選択決定される。
本実施形態では8ビットで階調値gを取り扱った場合を例示する。例えば、階調値g=0.5は、127/255である。同様にして、たとえば階調値gを16ビットで取り扱うことができる。この場合、g=0.5は32767/65535となる。
本実施形態では、初期ドットパターンの階調値gを1/255としているが、初期ドットパターンの階調値gは任意に設定することができる。
本実施形態では8ビットで階調値gを取り扱った場合を例示する。例えば、階調値g=0.5は、127/255である。同様にして、たとえば階調値gを16ビットで取り扱うことができる。この場合、g=0.5は32767/65535となる。
本実施形態では、初期ドットパターンの階調値gを1/255としているが、初期ドットパターンの階調値gは任意に設定することができる。
そして、CPU11は、ドット配置を行う画素として選択決定された画素を1、ドット配置を行う画素として選択決定されなかった画素を0として表すマトリクスパターンp(x,y,g)を生成する(ステップS3)。p(x,y,g)は、階調値gのマトリクスパターンpを示す行列であり、xはx方向の座標、yはy方向の座標を示す。
次に、CPU11は、行列BANinit(x,y)の初期値を全て0に設定する(ステップS4)。行列BANinit(x,y)の値は、交換禁止行列BAN(x,y)の初期値として用いるものである。交換禁止行列BAN(x,y)は、後述するドット配置転換処理において用いる。
次に、CPU11はフィルタ処理及び小区画の平均値に基づくパターンの最適化処理を行う(ステップS5)。
フィルタ処理及び小区画の平均値に基づくパターンの最適化処理について、図18のサブフローを用いて説明する。
フィルタ処理及び小区画の平均値に基づくパターンの最適化処理について、図18のサブフローを用いて説明する。
まず、CPU11は変数nを初期値0で設定する(ステップS11)。
次に、CPU11は、ドットパターンp(x,y,g)に対してフーリエ変換を適用した空間周波数パターンP(u,v,g)を算出する(ステップS12)。u,vはそれぞれx方向、y方向の周波数空間を示す。
次に、CPU11は、ドットパターンp(x,y,g)に対してフーリエ変換を適用した空間周波数パターンP(u,v,g)を算出する(ステップS12)。u,vはそれぞれx方向、y方向の周波数空間を示す。
次に、CPU11は、パターンP(u,v,g)に対してフィルタ処理を施したパターンP2(u,v,g)を算出する(ステップS13)。ステップS13においてフィルタ処理に用いられるフィルタは例えばブルーノイズを得るためのフィルタ(以下ブルーノイズフィルタ)やグリーンノイズを得るためのフィルタ(以下グリーンノイズフィルタ)等のローパスフィルタがある。ブルーノイズフィルタやグリーンノイズフィルタは、少なくとも低周波成分を通過させる周波数フィルタである。
図19にブルーノイズフィルタの一例を、図20にグリーンノイズフィルタの一例を示す。
ブルーノイズフィルタやグリーンノイズフィルタ等のローパスフィルタは、方向に依存しない等方フィルタとして適用される。図19、図20において、半径方向の周波数の単位を[cycle/pixel]としている。
図19にブルーノイズフィルタの一例を、図20にグリーンノイズフィルタの一例を示す。
ブルーノイズフィルタやグリーンノイズフィルタ等のローパスフィルタは、方向に依存しない等方フィルタとして適用される。図19、図20において、半径方向の周波数の単位を[cycle/pixel]としている。
次に、CPU11は、空間周波数パターンP2(u,v,g)に対して逆フーリエ変換を適用して実空間パターンp2(x,y,g)を算出する(ステップS14)。実空間パターンp2(x,y,g)はドットパターンp(x,y,g)のような0と1のみで記述される2値データではなく0と1の間の中間の値を含む連続的な値の分布となる。
次に、CPU11は、下記の式(1)により、階調値gからのズレを示す誤差行列ERR(x,y,g)を算出する(ステップS15)。
誤差行列ERR(x,y,g)は、パターンp2(x,y,g)と階調値gのドットパターンとの誤差に基づくドットパターン評価値として機能する。誤差行列ERR(x,y,g)の行列に含まれる各値は、閾値マトリクスを生成するためのドットパターンであるパターンP2(u,v,g)の各画素位置に対応する。つまり、CPU11は、誤差行列ERR(x,y,g)を閾値マトリクス内の各位置に対応させて算出する。
誤差行列ERR(x,y,g)は、パターンp2(x,y,g)と階調値gのドットパターンとの誤差に基づくドットパターン評価値として機能する。誤差行列ERR(x,y,g)の行列に含まれる各値は、閾値マトリクスを生成するためのドットパターンであるパターンP2(u,v,g)の各画素位置に対応する。つまり、CPU11は、誤差行列ERR(x,y,g)を閾値マトリクス内の各位置に対応させて算出する。
次に、CPU11は、下記の式(2)により、評価値MSE(n)(Mean Square Error)を算出する(ステップS16)。
MSE(n)は、パターンp2(x,y,g)のパターン偏差値であり、ドット分散性評価値として機能する。
MSE(n)は、パターンp2(x,y,g)のパターン偏差値であり、ドット分散性評価値として機能する。
次に、CPU11は、nが0でないか否かを判定する(ステップS17)。nが0でない場合(ステップS17:YES)、CPU11はMSE(n)がMSE(n-1)よりも小さいか否かを判定する(ステップS18)。
ステップS17においてnが0である場合(ステップS17:NO)又はステップS18においてMSE(n)がMSE(n-1)よりも小さい場合(ステップS18:YES)、CPU11はドット配置転換処理を行う(ステップS19)。
ドット配置転換処理について、図21のサブフローを用いて説明する。
ドット配置転換処理について、図21のサブフローを用いて説明する。
まず、CPU11は、交換画素数を管理するための変数SWAPNUMを所定の初期値で設定する(ステップS31)。所定の初期値は、1以上の整数である。
次に、CPU11は交換禁止行列BAN(x,y)を設定し、その値としてBANinit(x,y)の値をコピーする(ステップS32)。
次に、CPU11は交換禁止行列BAN(x,y)を設定し、その値としてBANinit(x,y)の値をコピーする(ステップS32)。
次に、CPU11は、変数SWAPNUMの値が0を超えるか否か判定する(ステップS33)。変数SWAPNUMの値が0を超える場合(ステップS33:YES)、CPU11は、新たにドットを配置する位置及びドットを削除する位置を決定する処理を行う。
具体的には、CPU11は、p(x,y,g)=0でBAN(x,y)=0を満たし、かつ、その中でERR(x,y,g)が最小となる画素の座標(x1,y1)と、p(x,y,g)=1でBAN(x,y)=0を満たし、かつ、その中でERR(x,y,g)が最大となる画素の座標(x2,y2)とを検出する(ステップS34)。
ここで、p(x,y,g)=0であるということは、その画素ではドットが配置されないことを示す。対して、p(x,y,g)=1であるということは、その画素ではドットが配置されることを示す。
また、BAN(x,y)=0を満たすということは、その画素はドットの再配置を行うことが許可されていることを示す。対して、BAN(x,y)=1の場合、その画素はドットの再配置を行うことが許可されていないことを示す。
また、ERR(x,y,g)が最小であるということは、その画素を含む周辺位置にドットが配置されない隙間(void)があることを示す。対して、ERR(x,y,g)が最大であるということは、その画素を含む周辺位置にドットの集合(Cluster)があることを示す。
また、BAN(x,y)=0を満たすということは、その画素はドットの再配置を行うことが許可されていることを示す。対して、BAN(x,y)=1の場合、その画素はドットの再配置を行うことが許可されていないことを示す。
また、ERR(x,y,g)が最小であるということは、その画素を含む周辺位置にドットが配置されない隙間(void)があることを示す。対して、ERR(x,y,g)が最大であるということは、その画素を含む周辺位置にドットの集合(Cluster)があることを示す。
つまり、p(x,y,g)=0でBAN(x,y)=0を満たし、かつ、その中でERR(x,y,g)が最小となる画素の座標(x1,y1)であるということは、その画素でドットが配置されず、その画素についてドットの再配置を行うことが許可されており、かつ、その画素を含む周辺位置にドットが配置されない隙間(void)があることを示す。
一方、p(x,y,g)=1でBAN(x,y)=0を満たし、かつ、その中でERR(x,y,g)が最大となる画素の座標(x2,y2)であるということは、その画素でドットが配置され、その画素についてドットの再配置を行うことが許可されており、かつ、その画素を含む周辺位置にドットの集合(Cluster)があることを示す。
一方、p(x,y,g)=1でBAN(x,y)=0を満たし、かつ、その中でERR(x,y,g)が最大となる画素の座標(x2,y2)であるということは、その画素でドットが配置され、その画素についてドットの再配置を行うことが許可されており、かつ、その画素を含む周辺位置にドットの集合(Cluster)があることを示す。
特定された画素(x1,y1)及び画素(x2,y2)に対して、CPU11は、p(x1,y1,g)=1、p(x2,y2,g)=0とすることでドットの配置交換を行う(ステップS35)。つまり、再配置前にその画素でドットが配置されず、その画素についてドットの再配置を行うことが許可されており、かつ、その画素を含む周辺位置にドットが配置されない隙間(void)があった画素(x1,y1)にドットが配置され、再配置前にその画素でドットが配置され、その画素についてドットの再配置を行うことが許可されており、かつ、その画素を含む周辺位置にドットの集合(Cluster)があった画素(x2,y2)からドットが削除される。
次に、CPU11は、ドットの再配置が行われた画素について、さらなる再配置を行うことを禁止する処理を行う。具体的には、CPU11は、BAN(x1,y1)及びBAN(x2,y2)の値を1とする(ステップS36)。
次に、CPU11は、変数SWAPNUMの値から1を減算する(ステップS37)。ステップS37の処理後、ステップS33の判定に戻る。
ステップS33において、変数SWAPNUMの値が0を超えない場合(ステップS33:NO)、CPU11は図18のステップS19及び図21のサブフローにより示すドット配置転換処理を終了する。
ステップS33において、変数SWAPNUMの値が0を超えない場合(ステップS33:NO)、CPU11は図18のステップS19及び図21のサブフローにより示すドット配置転換処理を終了する。
つまり、ドット配置転換処理において、CPU11は、変数SWAPNUMの初期値として設定された回数だけ、その画素でドットが配置されず、その画素についてドットの再配置を行うことが許可されており、かつ、その画素を含む周辺位置にドットが配置されない隙間(void)がある画素と、その画素でドットが配置され、その画素についてドットの再配置を行うことが許可されており、かつ、その画素を含む周辺位置にドットの集合(Cluster)がある画素との間でドットの配置交換を行う。配置交換を行うドットの決定においては、各小区画のドット数の過不足分に基づく補正が行われる。そして、再配置が行われたドットについては更なる再配置が禁止される。
図21のサブフロー及び図18のサブフローのステップS19に示すドット配置転換処理の終了後、CPU11は変数nの値に1を加算する(ステップS20)。その後、ステップS13の処理に戻る。
ステップS20の処理後にステップS12に戻ることで、ドット配置転換処理後のマトリクスパターンに対して、ステップS12のフーリエ変換の適用、ステップS13のフィルタ処理、ステップS14の逆フーリエ変換の適用、ステップS15の誤差行列の算出、ステップS16のMSEの算出が行われる。そして、一度以上ドット配置転換処理が行われると、変数nは1以上となるので、ステップS17の判定においてnが0でない場合に該当し(ステップS17:YES)、ステップS18の判定、即ちMSE(n)がMSE(n-1)よりも小さいか否かの判定が行われる。なお、nの初期値は0なので、最低一度はドット配置転換処理が行われる。
ステップS18において、MSE(n)がMSE(n-1)以上となるまで、ステップS13からの処理が繰り返される(ステップS18:YES)。
ステップS18において、MSE(n)がMSE(n-1)以上である場合(ステップS18:NO)、CPU11は図16のステップS5及び図18のサブフローにより示すフィルタ処理及び小区画の平均値に基づくパターンの最適化処理を終了し、図16に示す初期ドットパターンの作成処理を終了する。初期ドットパターンは、pinit(x,y)として生成され、ストレージデバイス14に記憶される。
ステップS18において、MSE(n)がMSE(n-1)以上である場合(ステップS18:NO)、CPU11は図16のステップS5及び図18のサブフローにより示すフィルタ処理及び小区画の平均値に基づくパターンの最適化処理を終了し、図16に示す初期ドットパターンの作成処理を終了する。初期ドットパターンは、pinit(x,y)として生成され、ストレージデバイス14に記憶される。
次に、初期ドットパターンの生成処理によって生成された初期ドットパターンに基づく閾値マトリクスの生成処理について説明する。
閾値マトリクスの生成処理は、積層束縛(Stacking Constraint)条件下で行う。具体的には、初期ドットパターンの階調値gに基づいて、変化させる階調値変化量δgに応じたドットの増減を施す。このとき、階調値変化量δgによって階調値が大きくなる場合、元の初期ドットパターンにあるドット配置については変更しない。即ち、ドットを増やす場合、元の初期ドットパターンを維持し、かつ、追加のドットを付加する。また、階調値変化量δgによって階調値が小さくなる場合、元の初期ドットパターンにあるドットが配置されない画素の配置については変更しない。即ち、ドットを減らす場合、元の初期ドットパターンにおいてドットが配置されない画素についてはドットが配置されないままとし、ドットを削除してドットが配置されない画素を増やす。このようにして、閾値マトリクス生成装置1は、各々のドット率に対応した256×256[画素]で構成された各々のドットパターンを生成する。
閾値マトリクスの生成処理は、積層束縛(Stacking Constraint)条件下で行う。具体的には、初期ドットパターンの階調値gに基づいて、変化させる階調値変化量δgに応じたドットの増減を施す。このとき、階調値変化量δgによって階調値が大きくなる場合、元の初期ドットパターンにあるドット配置については変更しない。即ち、ドットを増やす場合、元の初期ドットパターンを維持し、かつ、追加のドットを付加する。また、階調値変化量δgによって階調値が小さくなる場合、元の初期ドットパターンにあるドットが配置されない画素の配置については変更しない。即ち、ドットを減らす場合、元の初期ドットパターンにおいてドットが配置されない画素についてはドットが配置されないままとし、ドットを削除してドットが配置されない画素を増やす。このようにして、閾値マトリクス生成装置1は、各々のドット率に対応した256×256[画素]で構成された各々のドットパターンを生成する。
また、初期ドットパターンの階調値gに基づいて、変化させる階調値変化量δgに応じたドットの増減を施した階調値g+δgのドットパターンを生成した後、階調値g+δgのドットパターンに基づいてさらに階調値変化量δgに応じたドットの増減を施す場合には、その直前に生成された階調値g+δgのドットパターンを初期ドットパターンとして扱う。
本実施形態では、階調値変化量δgを1/255としているが、階調値変化量δgは任意に設定することができる。
閾値マトリクスは、行列Th(x,y)として生成され、ストレージデバイス14に記憶される。
本実施形態では、階調値変化量δgを1/255としているが、階調値変化量δgは任意に設定することができる。
閾値マトリクスは、行列Th(x,y)として生成され、ストレージデバイス14に記憶される。
以下、初期ドットパターンの生成処理によって生成された初期ドットパターンに基づく閾値マトリクスの生成処理について、図22のフローチャートを用いて説明する。
まず、CPU11は、初期ドットパターンpinit(x,y)を読み出す(ステップS41)。本実施形態における初期ドットパターンpinit(x,y)の階調値ginitは1/255である。ここで、以後用いる階調値gの初期値をginitとする。
本実施形態では、初期ドットパターンpinit(x,y)の階調値ginitは1/255であるが、0~1のどの値であってもよい。初期ドットパターンの生成処理において、0~1の間の任意の階調値gの初期ドットパターンを生成し、閾値マトリクスの生成処理に用いることができる。
本実施形態では、初期ドットパターンpinit(x,y)の階調値ginitは1/255であるが、0~1のどの値であってもよい。初期ドットパターンの生成処理において、0~1の間の任意の階調値gの初期ドットパターンを生成し、閾値マトリクスの生成処理に用いることができる。
次に、CPU11は閾値マトリクスを生成するためのマトリクスパターンを示す行列q(x,y,g)を設定し、q(x,y,g)に初期ドットパターンpinit(x,y)の値をコピーする(ステップS42)。
次に、CPU11は閾値マトリクスを示す行列Th(x,y)及び交換禁止行列banの初期値として設定される行列baninit(x,y)を設定し(ステップS43)、baninit(x,y)にq(x,y,g)の値をコピーする(ステップS44)。
次に、CPU11は、極低濃度領域におけるドット成長処理を行う(ステップS45)。
ここで、極低濃度領域におけるドット成長処理について、図23のサブフローを用いて説明する。
CPU11は、階調値gに対して変化させる階調値変化量δgを加算し、変化させる階調値変化量δgに応じた数のドットをbaninit(x,y)=0に対応するq(x,y,g)に対して追加する(ステップS61)。ドット追加後のドットパターンは新たなq(x,y,g)としてRAM12又はストレージデバイス14に格納される。ドットの追加はq(x、y、g)においてドットが配置されていない座標の中から所定の乱数処理に基づいて行われる。
ここで、極低濃度領域におけるドット成長処理について、図23のサブフローを用いて説明する。
CPU11は、階調値gに対して変化させる階調値変化量δgを加算し、変化させる階調値変化量δgに応じた数のドットをbaninit(x,y)=0に対応するq(x,y,g)に対して追加する(ステップS61)。ドット追加後のドットパターンは新たなq(x,y,g)としてRAM12又はストレージデバイス14に格納される。ドットの追加はq(x、y、g)においてドットが配置されていない座標の中から所定の乱数処理に基づいて行われる。
次に、CPU11は、極低濃度領域におけるパターン最適化処理を行う(ステップS62)。
ここで、極低濃度領域におけるパターン最適化処理について、図24のサブフローを用いて説明する。
CPU11は変数nを初期値0で設定する(ステップS71)。
次に、CPU11は、ドットパターンq(x,y,g)に対してフーリエ変換を適用した空間周波数パターンQ(u,v,g)を算出する(ステップS72)。u,vはそれぞれx方向、y方向の周波数空間を示す。
ここで、極低濃度領域におけるパターン最適化処理について、図24のサブフローを用いて説明する。
CPU11は変数nを初期値0で設定する(ステップS71)。
次に、CPU11は、ドットパターンq(x,y,g)に対してフーリエ変換を適用した空間周波数パターンQ(u,v,g)を算出する(ステップS72)。u,vはそれぞれx方向、y方向の周波数空間を示す。
次に、CPU11は、パターンQ(u,v,g)に対してフィルタ処理を施したパターンQ2(u,v,g)を算出する(ステップS73)。フィルタ処理は、上述のステップS13のフィルタ処理と同様である(図19、図20参照)。
次に、CPU11は、空間周波数パターンQ2(u,v,g)に対して逆フーリエ変換を適用して実空間パターンq2(x,y,g)を算出する(ステップS74)。実空間パターンq2(x,y,g)はドットパターンq(x,y,g)のような0と1のみで記述される2値データではなく0と1の間の中間の値を含む連続的な値の分布となる。
次に、CPU11は、nが0でないか否かを判定する(ステップS77)。nが0でない場合(ステップS77:YES)、CPU11はMSE2(n)がMSE2(n-1)よりも小さいか否かを判定する(ステップS78)。
ステップS77においてnが0である場合(ステップS77:NO)又はステップS78においてMSE2(n)がMSE2(n-1)よりも小さい場合(ステップS78:YES)、CPU11は極低濃度領域におけるドット配置転換処理を行う(ステップS79)。
極低濃度領域におけるドット配置転換処理について、図25のサブフローを用いて説明する。
まず、CPU11は、交換画素数を管理するための変数SWAPNUMを所定の初期値で設定する(ステップS81)。所定の初期値は、1以上の整数である。
次に、CPU11は交換禁止行列ban(x,y)を設定し、その値としてbaninit(x,y)の値をコピーする(ステップS82)。ここで、交換禁止行列banの値は、交換禁止行列BANと同様に機能する。つまり、ban(x,y)=1の場合、ドットの再配置を行うことが許可されていないことを示す。ここで、交換禁止行列ban(x,y)にはq(x,y,g)の値がコピーされたbaninit(x,y)の値がコピーされるので、ドットが配置される画素(値=1)に対応する交換禁止行列ban(x,y)の値には1が設定されることとなり、初期ドットパターンで既にドットがある画素についてはドットの再配置が禁止され、その画素からドットが削除されることはない。
まず、CPU11は、交換画素数を管理するための変数SWAPNUMを所定の初期値で設定する(ステップS81)。所定の初期値は、1以上の整数である。
次に、CPU11は交換禁止行列ban(x,y)を設定し、その値としてbaninit(x,y)の値をコピーする(ステップS82)。ここで、交換禁止行列banの値は、交換禁止行列BANと同様に機能する。つまり、ban(x,y)=1の場合、ドットの再配置を行うことが許可されていないことを示す。ここで、交換禁止行列ban(x,y)にはq(x,y,g)の値がコピーされたbaninit(x,y)の値がコピーされるので、ドットが配置される画素(値=1)に対応する交換禁止行列ban(x,y)の値には1が設定されることとなり、初期ドットパターンで既にドットがある画素についてはドットの再配置が禁止され、その画素からドットが削除されることはない。
次に、CPU11は、変数SWAPNUMの値が0を超えるか否か判定する(ステップS83)。変数SWAPNUMの値が0を超える場合(ステップS83:YES)、CPU11は、新たにドットを配置する位置及びドットを削除する位置を決定する処理を行う。
具体的には、CPU11は、q(x,y,g)=0でban(x,y)=0を満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1でban(x,y)=0を満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する(ステップS84)。
具体的には、CPU11は、q(x,y,g)=0でban(x,y)=0を満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1でban(x,y)=0を満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する(ステップS84)。
特定された画素(x1,y1)及び画素(x2,y2)に対して、CPU11は、p(x1,y1,g)=1、p(x2,y2,g)=0とすることでドットの配置交換を行う(ステップS85)。
次に、CPU11は、ドットの再配置が行われた画素について、さらなる再配置を行うことを禁止する処理を行う。具体的には、CPU11は、ban(x1,y1)及びban(x2,y2)の値を1とする(ステップS86)。
次に、CPU11は、変数SWAPNUMの値から1を減算する(ステップS87)。ステップS87の処理後、ステップS83の判定に戻る。
ステップS83において、変数SWAPNUMの値が0を超えない場合(ステップS83:NO)、CPU11は処理を終了する。
ステップS83において、変数SWAPNUMの値が0を超えない場合(ステップS83:NO)、CPU11は処理を終了する。
図25のサブフロー及び図24サブフローのステップS79に示す極低濃度領域におけるドット配置転換処理の終了後、CPU11は変数nの値に1を加算する(ステップS80)。その後、ステップS72の処理に戻る。
ステップS78において、MSE2(n)がMSE2(n-1)以上となるまで、ステップS72からの処理が繰り返される(ステップS78:YES)。
ステップS78において、MSE2(n)がMSE2(n-1)以上である場合(ステップS78:NO)、CPU11は処理を終了する。
図24のサブフロー及び図23のステップS62に示す極低濃度領域におけるパターン最適化処理の終了後、CPU11は極低濃度領域におけるドット成長処理を終了する。
ステップS78において、MSE2(n)がMSE2(n-1)以上となるまで、ステップS72からの処理が繰り返される(ステップS78:YES)。
ステップS78において、MSE2(n)がMSE2(n-1)以上である場合(ステップS78:NO)、CPU11は処理を終了する。
図24のサブフロー及び図23のステップS62に示す極低濃度領域におけるパターン最適化処理の終了後、CPU11は極低濃度領域におけるドット成長処理を終了する。
図23のサブフロー及び図22のフローチャートのステップS45に示す極低濃度領域におけるドット成長処理の処理後、CPU11は、閾値マトリクスを示す行列Th(x,y)に最適化処理後のq(x,y,g)を加える(ステップS46)。
次に、CPU11は、gがg1未満であるか否かを判定する(ステップS47)。
gがg1未満である場合(ステップS47:YES)、ステップS44の処理に戻り、積層束縛(Stacking Constraint)条件下における極低濃度領域におけるドット成長処理を繰り返す。
次に、CPU11は、gがg1未満であるか否かを判定する(ステップS47)。
gがg1未満である場合(ステップS47:YES)、ステップS44の処理に戻り、積層束縛(Stacking Constraint)条件下における極低濃度領域におけるドット成長処理を繰り返す。
ステップS47において、gがg1未満でない場合(ステップS47:NO)、CPU11は行列baninit(x,y)にq(x,y,g)の値をコピーする(ステップS48)。その後、CPU11は、低濃度領域におけるドット成長処理を行う(ステップS49)。
ここで、低濃度領域におけるドット成長処理について、図26のサブフローを用いて説明する。
低濃度領域におけるドット成長処理は、極低濃度領域におけるドット成長処理(図23参照)におけるステップS62の処理(極低濃度領域におけるパターン最適化処理)を、低濃度領域におけるパターン最適化処理(ステップS91)に置き換える点を除いて、極低濃度領域におけるドット成長処理と同様である。
低濃度領域におけるドット成長処理は、極低濃度領域におけるドット成長処理(図23参照)におけるステップS62の処理(極低濃度領域におけるパターン最適化処理)を、低濃度領域におけるパターン最適化処理(ステップS91)に置き換える点を除いて、極低濃度領域におけるドット成長処理と同様である。
低濃度領域におけるパターン最適化処理について、図27のサブフローを用いて説明する。
低濃度領域におけるパターン最適化処理は、極低濃度領域におけるパターン最適化処理(図24参照)におけるステップS79の処理(極低濃度領域におけるドット配置転換処理)を、低濃度領域におけるドット配置転換処理(ステップS92)に置き換える点を除いて、極低濃度領域におけるパターン最適化処理と同様である。
低濃度領域におけるパターン最適化処理は、極低濃度領域におけるパターン最適化処理(図24参照)におけるステップS79の処理(極低濃度領域におけるドット配置転換処理)を、低濃度領域におけるドット配置転換処理(ステップS92)に置き換える点を除いて、極低濃度領域におけるパターン最適化処理と同様である。
低濃度領域におけるドット配置転換処理について、図28のサブフロー及び図29を用いて説明する。
低濃度領域におけるドット配置転換処理は、極低濃度領域における配置転換処理(図25参照)におけるステップS84の処理を、以下のステップS93の処理に置き換える点を除いて、極低濃度領域におけるドット配置転換処理と同様である。
ステップS93の処理では、CPU11は、q(x,y,g)=0でban(x,y)=0を満たし、q(x+1,y,g)=1、q(x-1,y,g)=1、q(x,y+1,g)=1又はq(x,y-1,g)=1のいずれかを満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1でban(x,y)=0を満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する。
低濃度領域におけるドット配置転換処理は、極低濃度領域における配置転換処理(図25参照)におけるステップS84の処理を、以下のステップS93の処理に置き換える点を除いて、極低濃度領域におけるドット配置転換処理と同様である。
ステップS93の処理では、CPU11は、q(x,y,g)=0でban(x,y)=0を満たし、q(x+1,y,g)=1、q(x-1,y,g)=1、q(x,y+1,g)=1又はq(x,y-1,g)=1のいずれかを満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1でban(x,y)=0を満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する。
図29に、画素(x,y)と当該画素に隣接する4画素を模式図で示す。
ここで、q(x+1,y,g)=1、q(x-1,y,g)=1、q(x,y+1,g)=1又はq(x,y-1,g)=1のいずれかを満たすということは、q(x,y,g)に対応する画素(例えば図29に示すx,y)に隣接する4画素のうちいずれか一つにドットが配置されていることを示す。
ここで、q(x+1,y,g)=1、q(x-1,y,g)=1、q(x,y+1,g)=1又はq(x,y-1,g)=1のいずれかを満たすということは、q(x,y,g)に対応する画素(例えば図29に示すx,y)に隣接する4画素のうちいずれか一つにドットが配置されていることを示す。
つまり、q(x,y,g)=0でban(x,y)=0を満たし、q(x+1,y,g)=1、q(x-1,y,g)=1、q(x,y+1,g)=1又はq(x,y-1,g)=1のいずれかを満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)であるということは、その画素でドットが配置されず、その画素についてドットの再配置を行うことが許可されており、その画素に隣接する4画素のうちいずれか一つにドットが配置されており、かつ、その画素を含む周辺位置にドットが配置されない隙間(void)があることを示す。低濃度領域におけるドット配置転換処理におけるステップS85の処理では、これらの条件を満たす画素の座標(x1,y1)にドットを配置し、画素の座標(x2,y2)からドットを削除するドットの配置転換を行う。これによって、座標(x1,y1)と、当該座標に隣接し、かつ、ドットが配置されているq(x+1,y,g)=1、q(x-1,y,g)=1、q(x,y+1,g)=1又はq(x,y-1,g)=1のいずれかに対応する画素と、は共にドットが配置される隣接する2画素となる。
図27のサブフロー及び図26のステップS91に示す低濃度領域におけるパターン最適化処理の終了後、CPU11は低濃度領域におけるドット成長処理を終了する。
図26のサブフロー及び図22のフローチャートのステップS49に示す低濃度領域におけるドット成長処理の処理後、CPU11は、閾値マトリクスを示す行列Th(x,y)に最適化処理後のq(x,y,g)を加える(ステップS50)。
次に、CPU11は、gがg2未満であるか否かを判定する(ステップS51)。
gがg2未満である場合(ステップS51:YES)、ステップS48の処理に戻り、積層束縛(Stacking Constraint)条件下における低濃度領域におけるドット成長処理を繰り返す。
図26のサブフロー及び図22のフローチャートのステップS49に示す低濃度領域におけるドット成長処理の処理後、CPU11は、閾値マトリクスを示す行列Th(x,y)に最適化処理後のq(x,y,g)を加える(ステップS50)。
次に、CPU11は、gがg2未満であるか否かを判定する(ステップS51)。
gがg2未満である場合(ステップS51:YES)、ステップS48の処理に戻り、積層束縛(Stacking Constraint)条件下における低濃度領域におけるドット成長処理を繰り返す。
図30に、低濃度領域におけるドット成長処理により生成されるドットパターンの一例及び各ドットパターンの空間周波数を示す。図30に示すu方向はx方向に対応し、v方向はy方向に対応する。
図30に示すように、低濃度領域におけるドット成長処理を繰り返すことにより、所定の二方向(x方向、y方向)のいずれかに沿って連続してドットが配置される画素を含むドットパターンを得られる。
図30に示すように、低濃度領域におけるドット成長処理を繰り返すことにより、所定の二方向(x方向、y方向)のいずれかに沿って連続してドットが配置される画素を含むドットパターンを得られる。
ステップS51において、gがg2未満でない場合(ステップS51:NO)、CPU11は行列baninit(x,y)にq(x,y,g)の値をコピーする(ステップS52)。その後、CPU11は、q(x,y,g)の値を全て1とする(ステップS53)。さらにg=1とする(ステップS54)。
次に、CPU11は、baninit(x,y)=0であって、かつ、q(x,y,g)=0である画素に対応するbaninit(x,y)の値を2とする(ステップS55)。この処理は、ステップS56において高濃度領域もしくは中濃度領域でドットを形成しないと判断した画素を記録するためのもので後述するステップS56の処理をするたびにbaninit(x,y)=2は増加する。つまり、baninit(x,y)=2の意味するところは、極低濃度、低濃度領域では選択されなかったが、高濃度領域、もしくは中濃度領域で選択された画素を表している。このように極低濃度領域、低濃度領域で選択された画素と、中濃度もしくは高濃度領域で選択された画素とを識別する理由は、中濃度領域においてドットが配置されない隙間をその前のドットパターンで決定されている隙間に隣接させて発生させるためである。このようにすることで、中濃度領域では高濃度領域で生成した隙間を成長させていく形となり、より安定的に隙間を維持できる。
その後、CPU11は、中・高濃度領域におけるドットパターン作成処理を行う(ステップS56)。
中・高濃度領域におけるドットパターン作成処理について、図31のサブフローを用いて説明する。
まず、CPU11は、階調値gに対して変化させる階調値変化量δgを減算し、δgに応じた数のドットを削除する(ステップS101)。ステップS101の処理により削除されるドットは、baninit(x,y)=0かつbaninit(x+1,y)=0の条件を満たすx、yに対応するq(x,y,g)かつq(x+1,y,g)である。条件を満たすq(x,y,g)の中からδgに応じた数のドットを決定する処理は、所定の乱数処理に基づいて行われる。ドットを削除された画素に対応するq(x,y,g)の値は0となる。
次に、CPU11は、中・高濃度領域におけるパターン最適化処理を行う(ステップS102)。
中・高濃度領域におけるパターン最適化処理について、図32のサブフローを用いて説明する。
CPU11は変数nを初期値0で設定する(ステップS111)。
次に、CPU11は、ドットパターンq(x,y,g)に対してフーリエ変換を適用した空間周波数パターンQ(u,v,g)を算出する(ステップS112)。u,vはそれぞれx方向、y方向の周波数空間を示す。
中・高濃度領域におけるドットパターン作成処理について、図31のサブフローを用いて説明する。
まず、CPU11は、階調値gに対して変化させる階調値変化量δgを減算し、δgに応じた数のドットを削除する(ステップS101)。ステップS101の処理により削除されるドットは、baninit(x,y)=0かつbaninit(x+1,y)=0の条件を満たすx、yに対応するq(x,y,g)かつq(x+1,y,g)である。条件を満たすq(x,y,g)の中からδgに応じた数のドットを決定する処理は、所定の乱数処理に基づいて行われる。ドットを削除された画素に対応するq(x,y,g)の値は0となる。
次に、CPU11は、中・高濃度領域におけるパターン最適化処理を行う(ステップS102)。
中・高濃度領域におけるパターン最適化処理について、図32のサブフローを用いて説明する。
CPU11は変数nを初期値0で設定する(ステップS111)。
次に、CPU11は、ドットパターンq(x,y,g)に対してフーリエ変換を適用した空間周波数パターンQ(u,v,g)を算出する(ステップS112)。u,vはそれぞれx方向、y方向の周波数空間を示す。
次に、CPU11は、パターンQ(u,v,g)に対してフィルタ処理を施したパターンQ2(u,v,g)を算出する(ステップS113)。フィルタ処理は、上述のステップS13のフィルタ処理と同様である(図19、図20参照)。
次に、CPU11は、空間周波数パターンQ2(u,v,g)に対して逆フーリエ変換を適用して実空間パターンq2(x,y,g)を算出する(ステップS114)。実空間パターンq2(x,y,g)はドットパターンq(x,y,g)のような0と1のみで記述される2値データではなく0と1の間の中間の値を含む連続的な値の分布となる。
次に、CPU11は、上記の式(3)により、階調値gからのズレを示す誤差行列ERR2(x,y,g)を算出する(ステップS115)。
次に、CPU11は、上記のステップS16の処理と同様に、上記の式(4)により、評価値MSE2(n)(Mean Square Error)を算出する(ステップS116)。
次に、CPU11は、nが0でないか否かを判定する(ステップS117)。nが0でない場合(ステップS77:YES)、CPU11はMSE2(n)がMSE2(n-1)よりも小さいか否かを判定する(ステップS118)。
ステップS117においてnが0である場合(ステップS117:NO)又はステップS118においてMSE2(n)がMSE2(n-1)よりも小さい場合(ステップS118:YES)、CPU11はgがg3を上回るか判定する(ステップS119)。
gがg3を上回る場合(ステップS119:YES)、CPU11は高濃度領域における配置転換処理を行う(ステップS120)。一方、gがg3を上回らない場合(ステップS119:NO)、CPU11は中濃度領域におけるドット配置転換処理を行う(ステップS121)。
gがg3を上回る場合(ステップS119:YES)、CPU11は高濃度領域における配置転換処理を行う(ステップS120)。一方、gがg3を上回らない場合(ステップS119:NO)、CPU11は中濃度領域におけるドット配置転換処理を行う(ステップS121)。
高濃度領域におけるドット配置転換処理について、図33のサブフローを用いて説明する。
まず、CPU11は、交換画素数を管理するための変数SWAPNUMを所定の初期値で設定する(ステップS131)。所定の初期値は、1以上の整数である。
次に、CPU11は交換禁止行列ban(x,y)を設定し、その値としてbaninit(x,y)の値をコピーする(ステップS132)。
まず、CPU11は、交換画素数を管理するための変数SWAPNUMを所定の初期値で設定する(ステップS131)。所定の初期値は、1以上の整数である。
次に、CPU11は交換禁止行列ban(x,y)を設定し、その値としてbaninit(x,y)の値をコピーする(ステップS132)。
次に、CPU11は、変数SWAPNUMの値が0を超えるか否か判定する(ステップS133)。変数SWAPNUMの値が0を超える場合(ステップS133:YES)、CPU11は、新たにドットを配置する位置及びドットを削除する位置を決定する処理を行う。
具体的には、CPU11は、q(x,y,g)=0、ban(x,y)=0、q(x+1,y,g)=0、ban(x+1,y)=0を満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1、ban(x,y)=0、q(x+1,y,g)=1、ban(x+1,y)=0を満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する(ステップS134)。
具体的には、CPU11は、q(x,y,g)=0、ban(x,y)=0、q(x+1,y,g)=0、ban(x+1,y)=0を満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1、ban(x,y)=0、q(x+1,y,g)=1、ban(x+1,y)=0を満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する(ステップS134)。
ここで、q(x,y,g)=0、ban(x,y)=0、q(x+1,y,g)=0、ban(x+1,y)=0を満たすということは、x方向に連続する2画素について共にドットが配置されず、かつ、2画素ともドットの再配置を行うことが許可されている画素であることを示す。また、q(x,y,g)=1、ban(x,y)=0、q(x+1,y,g)=1、ban(x+1,y)=0を満たすということは、x方向に連続する2画素について共にドットが配置され、かつ、2画素ともドットの再配置を行うことが許可されている画素であることを示す。
つまり、q(x,y,g)=0、ban(x,y)=0、q(x+1,y,g)=0、ban(x+1,y)=0を満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)であるということは、x方向に連続する2画素について共にドットが配置されず、かつ、2画素ともドットの再配置を行うことが許可されている画素であり、かつ、その画素を含む周辺位置にドットが配置されない隙間(void)があることを示す。また、q(x,y,g)=1、ban(x,y)=0、q(x+1,y,g)=1、ban(x+1,y)=0を満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)であるということは、x方向に連続する2画素について共にドットが配置され、かつ、2画素ともドットの再配置を行うことが許可されている画素であり、かつ、その画素を含む周辺位置にドットが配置されない隙間(void)があることを示す。
特定された画素(x1,y1)及び画素(x2,y2)に対して、CPU11は、p(x1,y1,g)=1、p(x1+1,y1,g)=1、p(x2,y2,g)=0、p(x2+1,y2,g)=0とすることで2画素分のドットの配置交換を行う(ステップS125)。
次に、CPU11は、ドットの再配置が行われた画素について、さらなる再配置を行うことを禁止する処理を行う。具体的には、CPU11は、ban(x1,y1)、ban(x1+1,y1)、(x2,y2)及びban(x2+1,y2)の値を2とする(ステップS136)。
次に、CPU11は、変数SWAPNUMの値から2を減算する(ステップS137)。ステップS137の処理後、ステップS133の判定に戻る。
ステップS133において、変数SWAPNUMの値が0を超えない場合(ステップS133:NO)、CPU11は処理を終了する。
ステップS133において、変数SWAPNUMの値が0を超えない場合(ステップS133:NO)、CPU11は処理を終了する。
中濃度領域におけるドット配置転換処理について、図34のサブフローを用いて説明する。
まず、CPU11は、交換画素数を管理するための変数SWAPNUMを所定の初期値で設定する(ステップS141)。所定の初期値は、1以上の整数である。
次に、CPU11は交換禁止行列ban(x,y)を設定し、その値としてbaninit(x,y)の値をコピーする(ステップS142)。
まず、CPU11は、交換画素数を管理するための変数SWAPNUMを所定の初期値で設定する(ステップS141)。所定の初期値は、1以上の整数である。
次に、CPU11は交換禁止行列ban(x,y)を設定し、その値としてbaninit(x,y)の値をコピーする(ステップS142)。
次に、CPU11は、変数SWAPNUMの値が0を超えるか否か判定する(ステップS143)。変数SWAPNUMの値が0を超える場合(ステップS143:YES)、CPU11は、新たにドットを配置する位置及びドットを削除する位置を決定する処理を行う。
具体的には、CPU11は、q(x,y,g)=0、ban(x,y)=0であって、ban(x-1,y)=2、ban(x+1,y)=2、ban(x,y-1)=2又はban(x,y+1)=2のいずれかを満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1、ban(x,y)=0であって、ban(x-1,y)=2、ban(x+1,y)=2、ban(x,y-1)=2又はban(x,y+1)=2のいずれかを満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する(ステップS144)。
具体的には、CPU11は、q(x,y,g)=0、ban(x,y)=0であって、ban(x-1,y)=2、ban(x+1,y)=2、ban(x,y-1)=2又はban(x,y+1)=2のいずれかを満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)と、q(x,y,g)=1、ban(x,y)=0であって、ban(x-1,y)=2、ban(x+1,y)=2、ban(x,y-1)=2又はban(x,y+1)=2のいずれかを満たし、かつ、その中でERR2(x,y,g)が最大となる画素の座標(x2,y2)とを検出する(ステップS144)。
ここで、ban(x-1,y)=2、ban(x+1,y)=2、ban(x,y-1)=2又はban(x,y+1)=2のいずれかを満たすということは、(x、y)とその隣接画素が、高濃度領域におけるドット配置転換処理により、連続する複数のドットを配置されない画素となっていることを示す。
つまり、q(x,y,g)=0、ban(x,y)=0であって、ban(x-1,y)=2、ban(x+1,y)=2、ban(x,y-1)=2又はban(x,y+1)=2のいずれかを満たし、かつ、その中でERR2(x,y,g)が最小となる画素の座標(x1,y1)であるということは、x方向又はy方向に連続する2画素について共にドットが配置されず、高濃度領域におけるドット配置転換処理により連続するよう配置された複数のドットを配置されない画素であり、かつ、その画素を含む周辺位置にドットが配置されない隙間(void)があることを示す。
特定された画素(x1,y1)及び画素(x2,y2)に対して、CPU11は、p(x1,y1,g)=1、p(x2,y2,g)=0、とすることでドットの配置交換を行う(ステップS145)。
次に、CPU11は、ドットの再配置が行われた画素について、さらなる再配置を行うことを禁止する処理を行う。具体的には、CPU11は、ban(x1,y1)及び(x2,y2)の値を2とする(ステップS146)。
次に、CPU11は、変数SWAPNUMの値から1を減算する(ステップS147)。ステップS147の処理後、ステップS143の判定に戻る。
ステップS143において、変数SWAPNUMの値が0を超えない場合(ステップS143:NO)、CPU11は処理を終了する。
ステップS143において、変数SWAPNUMの値が0を超えない場合(ステップS143:NO)、CPU11は処理を終了する。
図35に、中・高濃度領域におけるドットパターン作成処理により生成されるドットパターンの一例及び各ドットパターンの空間周波数を示す。
中・高濃度領域におけるドットパターン作成処理では、階調値が1である即ち全ての画素についてドットが配置されるドットパターンからドットを削除してドットが配置されない画素を配置されたドットパターンを生成する。このため、図22のフローチャートに示す初期ドットパターンの生成処理によって生成された初期ドットパターンに基づく閾値マトリクスの生成処理において管理される階調値gの値が1からg3にかけて生成されるドットパターンのドット率は下がる。そして、階調値gがg3以下になると、高濃度領域におけるドット配置転換処理から中濃度領域におけるドット配置転換処理に切り替わる。
中・高濃度領域におけるドットパターン作成処理では、階調値が1である即ち全ての画素についてドットが配置されるドットパターンからドットを削除してドットが配置されない画素を配置されたドットパターンを生成する。このため、図22のフローチャートに示す初期ドットパターンの生成処理によって生成された初期ドットパターンに基づく閾値マトリクスの生成処理において管理される階調値gの値が1からg3にかけて生成されるドットパターンのドット率は下がる。そして、階調値gがg3以下になると、高濃度領域におけるドット配置転換処理から中濃度領域におけるドット配置転換処理に切り替わる。
ステップS52において、行列baninit(x,y)にq(x,y,g)の値をコピーするのは、積層束縛(Stacking Constraint)条件下において、階調値gがg2以上となるまでに配置されたドットの再配置を禁止するためである。
ステップS54において、CPU11は、baninit(x,y)=0であって、かつ、q(x,y,g)=0である画素に対応するbaninit(x,y)の値を1とするのは、積層束縛(Stacking Constraint)条件下において、ドットを配置しない画素として決定した画素に対してドットの再配置を行わないためである。
ステップS54において、CPU11は、baninit(x,y)=0であって、かつ、q(x,y,g)=0である画素に対応するbaninit(x,y)の値を1とするのは、積層束縛(Stacking Constraint)条件下において、ドットを配置しない画素として決定した画素に対してドットの再配置を行わないためである。
ドットの追加及びドットの削除は、所定の乱数処理以外の方法に基づいて行ってもよい。他の方法として、例えば、誤差拡散を用いる方法が挙げられる。このとき、追加又は削除された後のドットパターンのドットの分布が所望のパターンに近いほどフィルタ処理及び小区画の平均値に基づくパターンの最適化処理及びドット配置転換処理の繰り返しを早く終えることができる。
図33に示すサブフロー及び図32のステップS120に示す中濃度領域におけるドット配置転換処理の終了後又は図34のサブフロー及び図32のステップS121に示す中濃度領域におけるドット配置転換処理の終了後、CPU11は変数nの値に1を加算する(ステップS122)。その後、ステップS112の処理に戻る。
ステップS118において、MSE2(n)がMSE2(n-1)以上となるまで、ステップS112からの処理が繰り返される(ステップS118:YES)。
ステップS118において、MSE2(n)がMSE2(n-1)以上である場合(ステップS118:NO)、CPU11は処理を終了する。
ステップS118において、MSE2(n)がMSE2(n-1)以上となるまで、ステップS112からの処理が繰り返される(ステップS118:YES)。
ステップS118において、MSE2(n)がMSE2(n-1)以上である場合(ステップS118:NO)、CPU11は処理を終了する。
図32のサブフロー及び図31のステップS102に示す高濃度領域におけるパターン最適化処理の終了後、CPU11は中・高濃度領域におけるドットパターン作成処理を終了する。
図31のサブフロー及び図22のフローチャートのステップS56に示す中・高濃度領域におけるドットパターン作成処理の後、CPU11は、閾値マトリクスを示す行列Th(x,y)に最適化処理後のq(x,y,g)を加える(ステップS57)。
次に、CPU11は、階調値gがg2以下であるか否かを判定する(ステップS58)。
gがg2以下でない場合(ステップS58:NO)、ステップS55の処理に戻り、積層束縛(Stacking Constraint)条件下における中・高濃度領域におけるドットパターン作成処理を繰り返す。
図31のサブフロー及び図22のフローチャートのステップS56に示す中・高濃度領域におけるドットパターン作成処理の後、CPU11は、閾値マトリクスを示す行列Th(x,y)に最適化処理後のq(x,y,g)を加える(ステップS57)。
次に、CPU11は、階調値gがg2以下であるか否かを判定する(ステップS58)。
gがg2以下でない場合(ステップS58:NO)、ステップS55の処理に戻り、積層束縛(Stacking Constraint)条件下における中・高濃度領域におけるドットパターン作成処理を繰り返す。
ステップS57において、gがg2以下の場合(ステップS58:YES)、CPU11は初期ドットパターンの生成処理によって生成された初期ドットパターンに基づく閾値マトリクスの生成処理を終了する。
このように、本実施形態の閾値マトリクス作成処理の工程は、
所定サイズの画像において所定のドット数を有する第一のドットパターンに基づいて第一のドットパターンのドット数を増加又は減少させた第二のドットパターン(q(x,y,g))を生成する新ドットパターン生成工程(ステップS61、ステップS101)と、
第二のドットパターンに含まれるドットを再配置した第三のドットパターンを得る再配置工程(ステップS79、ステップS92、ステップS120、ステップS121)と、 所望のドット率に基づくドット数のドットパターンを得るまで第三のドットパターンを第一のドットパターンとして新ドットパターン生成工程及び再配置工程を繰り返す繰り返し工程(ステップS44~S47、ステップS48~S51、ステップS54~S58)と、を有し、
再配置工程は、
第二のドットパターンに所定の空間フィルタを適用したパターンと所望の空間周波数分布に対応するドットパターンを実現するための誤差に基づくドットパターン評価値として機能する誤差行列ERR(x,y,g)を算出するドットパターン評価値算出工程(ステップS72~S75、ステップS112~S115)と、
ドットパターン評価値に基づいて、ドットの再配置において新たにドットを配置する位置及びドットを削除する位置を決定するドット再配置位置決定工程(ステップS84、ステップS93、ステップS134、ステップS144)と、
ドット再配置位置決定工程により決定された新たにドットを配置する位置及びドットを削除する位置に基づいて前記第三のドットパターンのドットを再配置する再配置パターン生成工程(ステップS85、ステップS135、ステップS145)と、
再配置された前記第三のドットパターンに対するドット分散性評価値として機能するMSE2(n)又はMSE2(n)を算出するドット分散性評価値算出工程(ステップS76、ステップS116)と、
再配置された前記第三のドットパターンのドット分散性評価値に基づいてドットパターン評価値算出工程、ドット再配置位置決定工程、再配置パターン生成工程及びドット分散性評価値算出工程を繰り返す再配置繰り返し判定工程(ステップS78、ステップS118)と、
再配置繰り返し判定工程において繰り返すと判定された場合、再配置された第三のドットパターンを第二のパターン(q(x,y,g))とする工程(ステップS80後のステップS72、ステップS122後のステップS112)と、を有する。
所定サイズの画像において所定のドット数を有する第一のドットパターンに基づいて第一のドットパターンのドット数を増加又は減少させた第二のドットパターン(q(x,y,g))を生成する新ドットパターン生成工程(ステップS61、ステップS101)と、
第二のドットパターンに含まれるドットを再配置した第三のドットパターンを得る再配置工程(ステップS79、ステップS92、ステップS120、ステップS121)と、 所望のドット率に基づくドット数のドットパターンを得るまで第三のドットパターンを第一のドットパターンとして新ドットパターン生成工程及び再配置工程を繰り返す繰り返し工程(ステップS44~S47、ステップS48~S51、ステップS54~S58)と、を有し、
再配置工程は、
第二のドットパターンに所定の空間フィルタを適用したパターンと所望の空間周波数分布に対応するドットパターンを実現するための誤差に基づくドットパターン評価値として機能する誤差行列ERR(x,y,g)を算出するドットパターン評価値算出工程(ステップS72~S75、ステップS112~S115)と、
ドットパターン評価値に基づいて、ドットの再配置において新たにドットを配置する位置及びドットを削除する位置を決定するドット再配置位置決定工程(ステップS84、ステップS93、ステップS134、ステップS144)と、
ドット再配置位置決定工程により決定された新たにドットを配置する位置及びドットを削除する位置に基づいて前記第三のドットパターンのドットを再配置する再配置パターン生成工程(ステップS85、ステップS135、ステップS145)と、
再配置された前記第三のドットパターンに対するドット分散性評価値として機能するMSE2(n)又はMSE2(n)を算出するドット分散性評価値算出工程(ステップS76、ステップS116)と、
再配置された前記第三のドットパターンのドット分散性評価値に基づいてドットパターン評価値算出工程、ドット再配置位置決定工程、再配置パターン生成工程及びドット分散性評価値算出工程を繰り返す再配置繰り返し判定工程(ステップS78、ステップS118)と、
再配置繰り返し判定工程において繰り返すと判定された場合、再配置された第三のドットパターンを第二のパターン(q(x,y,g))とする工程(ステップS80後のステップS72、ステップS122後のステップS112)と、を有する。
以上、本実施形態によれば、階調値gがg1≦g<g2の範囲内であるドットパターンは、ドットを配置される複数の画素がx方向又はy方向にのみ連続するドット配置を有する。このようなドットパターンを用いて生成された閾値マトリクスによる量子化処理によって、射出角度誤差に起因する着弾ズレやドットの一部が隣接するドットとそれぞれ引き合うように移動することによるスジの発生を良好に低減させることができる。
さらに、CPU11は、階調値gがg1≦g<g2の範囲内であるドットパターンについて、新ドットパターン生成工程において元となるドットパターンからドット数を増加させてドットパターンを作成する。これによって、ドットを配置される複数の画素を連続させるドットの再配置を容易に行うことができる。
さらに、階調値gがg3<g<1の範囲内であるドットパターンは、ドットを配置されない複数の画素がx方向にのみ連続するようなドット配置である。このようなドットパターンを用いて生成された閾値マトリクスによる量子化処理によって量子化画像を用いて形成された画像には、x方向に沿って連続するドットを配置されない複数の画素に対応する隙間が生じる。つまり、量子化画像を用いた画像形成時に当該ドットを配置されない複数の画素に対応する良好な隙間を生じさせることができる。よって、従来技術において生じていた、各ドット間の隙間の一部が塗りつぶされ、印刷画像の粒状感が悪化する問題の発生を良好に低減させることができる。
さらに、階調値がg2≦g≦g3の範囲内であるドットパターンは、ドットを配置されない複数の画素がx方向及びy方向に沿って連続するようなドット配置のドットパターンを有する。これによって、積層束縛(Stacking Constraint)条件下での各階調値のドットパターンの生成処理において、ドットパターンにおけるドットの分散を損なうことなく、各階調値のドットパターンがそのドットパターンよりも階調値の低いドットパターンにおいて配置されている全てのドットと同じ位置に配置されたドットを必ず含むという条件と、ドットを配置されない複数の画素を連続させるという条件と、を共に満たすことができる。このようなドットパターンを用いて生成された閾値マトリクスによる量子化処理によって、ドットの一部が隣接するドットとそれぞれ引き合うように移動することによってドットが配置されない画素に対応する隙間が潰れてしまう可能性を大幅に低減させることができ、画像形成時に当該ドットを配置されない複数の画素に対応する良好な隙間を生じさせることができる。よって、従来技術において生じていた、各ドット間の隙間の一部が塗りつぶされ、印刷画像の粒状感が悪化する問題の発生を良好に低減させることができる。
さらに、CPU11は、階調値gがg3<g<1の範囲内であるドットパターン及び階調値がg2≦g≦g3の範囲内であるドットパターンについて、新ドットパターン生成工程において元となるドットパターンからドット数を減少させてドットパターンを作成する。これによって、ドットを配置されない複数の画素を連続させるドットの再配置を容易に行うことができる。
また、隣接するドット同士が引き合うように移動することによって生じるドットの位置ずれは、インクの浸透に時間を要する記録メディア(例えばアート紙やコート紙等の印刷本用紙や光沢紙等)ほど生じやすいので、このようなインクの浸透に時間を要する記録メディアに対して画像形成を行う場合に、本実施形態等、本発明を用いた量子化処理を行うと、ドットの一部が隣接するドットとそれぞれ引き合うように移動することによるスジの発生を顕著に低減させることができる。
なお、誤差行列の値(例えばERR(x,y,g)やERR2(x,y,g)等)に基づいてドット配置転換の対象となる画素を決定する処理において、誤差行列の値に所定の係数による補正を加えてドット配置転換の対象となる画素を決定してもよい。
なお、本発明の実施の形態は、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
上記の実施形態では、閾値マトリクス生成装置1が量子化装置200の構成に含まれているが、量子化装置は閾値マトリクス生成装置を備えていなくてもよい。例えば、量子化装置と別個に設けられた閾値マトリクス生成装置により生成された閾値マトリクスを記録媒体又は記憶装置に記憶させ、この記録媒体又は記憶装置から量子化装置の記憶部に閾値マトリクスを複製又はデータ移動させるようにしてもよい。
上記の実施形態ではコンピュータによるソフトウェア処理によって閾値マトリクスの生成処理を行っているが、専用の装置により行ってもよい。
また、閾値マトリクスの生成処理を行うコンピュータは、閾値マトリクスの生成処理以外の処理を行うこともできる。例えば、パーソナルコンピュータ等の汎用コンピュータにより閾値マトリクスを生成してもよいし、MFP(Multifunction Peripheral)等の機器が備えているCPU等が行う一処理として閾値マトリクスの生成処理を行うようにしてもよい。
また、閾値マトリクスの生成処理を行うコンピュータは、閾値マトリクスの生成処理以外の処理を行うこともできる。例えば、パーソナルコンピュータ等の汎用コンピュータにより閾値マトリクスを生成してもよいし、MFP(Multifunction Peripheral)等の機器が備えているCPU等が行う一処理として閾値マトリクスの生成処理を行うようにしてもよい。
また、ドット分散性評価値にMSE以外を用いてもよい。例えば、RAPSDに視覚感度曲線を掛け合わせ、周波数で積分したノイズ値を算出し、そのノイズ値が所定条件を満たす(例えば所定値未満となる等)場合にドットの配置交換を終了させるようにしてもよい。
また、本発明を用いて生成された量子化画像は、記録メディアに対して相対移動を行うプリントヘッドが少なくとも前記相対移動の方向に略直交する方向に複数の記録素子を有する画像形成装置であれば用いることができる。例えば、ワンパス印画方式の画像形成装置や、ノズル列方向に沿ったドットパターンの画素幅に満たない記録素子を有するプリントヘッドHを用いてドットパターンを形成するに際して、ノズル列方向に沿ったドットパターンの画素幅を複数の領域に分解し、プリントヘッドH又は媒体をノズル列方向に沿って移動させて複数に分解された各領域を形成するマイクロウィーブ方式の画像形成装置に用いる量子化画像を生成する場合においても本発明を適用することができる。
多階調画像に基づく画像形成を行う分野において利用可能性がある。
1 閾値マトリクス生成装置
11 CPU
12 RAM
13 ROM
14 ストレージデバイス
15 インタフェース
200 量子化装置
201 取得部
202 記憶部
203 量子化処理部
204 出力部
11 CPU
12 RAM
13 ROM
14 ストレージデバイス
15 インタフェース
200 量子化装置
201 取得部
202 記憶部
203 量子化処理部
204 出力部
Claims (4)
- 記録メディアの搬送方向に対し直交する方向に沿って配列された色材を吐出する複数の吐出口を有するプリントヘッドにより、記録媒体上に画像を形成する際に用いる画像データを量子化する量子化装置であって、
前記画像データを取得する取得部と、
所定の画素領域を構成する各画素についてドット形成を行うか否かを判定するための閾値を有する閾値マトリクスを記憶する記憶部と、
取得した前記画像データ及び前記閾値マトリクスに基づいて当該画像データの量子化を行う量子化処理部と、を備え、
前記閾値マトリクスは、前記所定の画素領域を構成する全画素数に対するドット数が階調値に応じて各々異なる複数のドットパターンで構成されると共に、前記複数のドットパターンは、相対的に全画素数に対するドット数が多いドットパターンが、相対的に当該ドットパターンよりも全画素数に対するドット数が少ないドットパターンで配置されたドットの位置に配置された全てのドットを含んで構成される条件を満足し、且つ低濃度領域に対応する階調範囲内の階調値に対応する前記複数のドットパターンの中には、ドットが配置される画素が連続して並ぶ方向が前記記録メディアの搬送方向又は前記搬送方向とは直交する方向にのみ配置されるドット配置で構成されるドットパターンを有することを特徴とする量子化装置。 - 記録メディアの搬送方向に対し直交する方向に沿って配列された色材を吐出する複数の吐出口を有するプリントヘッドにより、記録媒体上に画像を形成する際に用いる画像データを量子化するために用いられる記録メディア閾値マトリクスを生成する閾値マトリクス生成方法であって、
所定の画素領域において第1の階調値に対応する所定のドット数を有する第一のドットパターンに基づいて前記第一のドットパターンのドット数を増加又は減少させた前記第1の階調値とは異なる第2の階調値に対応する第二のドットパターンを生成する新ドットパターン生成工程と、
前記第二のドットパターンに含まれるドットを再配置した第三のドットパターンを得る再配置工程と、
所望のドット数のドットパターンを得るまで前記第三のドットパターンを前記第一のドットパターンとして前記新ドットパターン生成工程及び前記再配置工程を繰り返す繰り返し工程と、を有し、
前記再配置工程は、
前記第二のドットパターンに所定の空間フィルタを適用したパターンに対して所望の空間周波数分布に対応するドットパターンを実現するための誤差に基づくドットパターン評価値を前記閾値マトリクス内の各位置に対応させて算出するドットパターン評価値算出工程と、
前記ドットパターン評価値に基づいて、ドットの再配置において新たにドットを配置する位置及びドットを削除する位置を決定するドット再配置位置決定工程と、
前記ドット再配置位置決定工程により決定された新たにドットを配置する位置及びドットを削除する位置に基づいて前記第三のドットパターンのドットを再配置する再配置パターン生成工程と、
再配置された前記第三のドットパターンに対するドット分散性評価値を算出するドット分散性評価値算出工程と、
再配置された前記第三のドットパターンのドット分散性評価値に基づいて前記ドットパターン評価値算出工程、前記ドット再配置位置決定工程、前記再配置パターン生成工程及び前記ドット分散性評価値算出工程を繰り返すか否かを判定する再配置繰り返し判定工程と、前記再配置繰り返し判定工程において繰り返すと判定された場合、再配置された前記第三のドットパターンを前記第二のパターンとする工程と、を有し、 前記ドット再配置位置決定工程は、前記ドット数が低濃度領域に対応する階調範囲内の階調値に対応する前記第二のドットパターンについて、ドットが配置される画素が連続して並ぶ方向が前記記録メディアの搬送方向又は当該搬送方向とは直交する方向にのみ配置されるドット配置となるようにドットの位置を決定する事を特徴とする閾値マトリックス生成方法。 - 前記新ドットパターン生成工程は、前記ドット数が前記低濃度領域に対応する階調範囲よりも高い階調値を有する第2の階調値範囲内である前記第二のドットパターンについて、前記第一のドットパターンのドット数を増加させて前記第二のドットパターンを作成することを特徴とする請求項2に記載の閾値マトリクス生成方法。
- 記録メディアの搬送方向に対し直交する方向に沿って配列された色材を吐出する複数の吐出口を有するプリントヘッドにより、記録媒体上に画像を形成する際に用いる画像データを量子化するために用いられる閾値マトリクスであって、
前記閾値マトリクスは、所定の画素領域を構成する全画素数に対するドット数が階調値に応じて各々異なる複数のドットパターンで構成されると共に、前記複数のドットパターンは、相対的に全画素数に対するドット数が多いドットパターンが、相対的に当該ドットパターンよりも全画素数に対するドット数が少ないドットパターンで配置されたドットの位置に配置された全てのドットを含んで構成される条件を満足し、且つ低濃度領域に対応する階調範囲内の階調値に対応する前記複数のドットパターンの中には、ドットが配置される画素が連続して並ぶ方向が前記記録メディアの搬送方向又は当該搬送方向に直交する方向にのみ配置されるドット配置で構成されるドットパターンを有することを特徴とする閾値マトリクス。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010-180702 | 2010-08-12 | ||
JP2010180702A JP2013223924A (ja) | 2010-08-12 | 2010-08-12 | 量子化装置、閾値マトリクス生成方法及び閾値マトリクス |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012020629A1 true WO2012020629A1 (ja) | 2012-02-16 |
Family
ID=45567598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2011/066528 WO2012020629A1 (ja) | 2010-08-12 | 2011-07-21 | 量子化装置、閾値マトリクス生成方法及び閾値マトリクス |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2013223924A (ja) |
WO (1) | WO2012020629A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008130003A (ja) * | 2006-11-24 | 2008-06-05 | Seiko Epson Corp | ドットの形成順序に基づくインク吐出量の制御 |
JP2008162151A (ja) * | 2006-12-28 | 2008-07-17 | Seiko Epson Corp | 同一色のインクを吐出する複数のノズルグループを備える印刷装置及び印刷方法 |
JP2009279933A (ja) * | 2008-04-25 | 2009-12-03 | Konica Minolta Holdings Inc | 画像記録方法および画像記録装置 |
-
2010
- 2010-08-12 JP JP2010180702A patent/JP2013223924A/ja active Pending
-
2011
- 2011-07-21 WO PCT/JP2011/066528 patent/WO2012020629A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008130003A (ja) * | 2006-11-24 | 2008-06-05 | Seiko Epson Corp | ドットの形成順序に基づくインク吐出量の制御 |
JP2008162151A (ja) * | 2006-12-28 | 2008-07-17 | Seiko Epson Corp | 同一色のインクを吐出する複数のノズルグループを備える印刷装置及び印刷方法 |
JP2009279933A (ja) * | 2008-04-25 | 2009-12-03 | Konica Minolta Holdings Inc | 画像記録方法および画像記録装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2013223924A (ja) | 2013-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4975002B2 (ja) | 画像処理装置、画像形成装置および画像処理方法 | |
JP4574470B2 (ja) | データ処理装置およびディザパターン製造方法 | |
JP4669249B2 (ja) | インクジェット記録方法およびインクジェット記録システムおよびインクジェット記録装置 | |
US20110316911A1 (en) | Image processor, image processing method and inkjet printer | |
US8514454B2 (en) | Image processing apparatus and method for selecting a processing mode based on number of relative movements of a recording head | |
JP4586712B2 (ja) | 印刷装置 | |
JP4519876B2 (ja) | データ処理装置、データ処理方法およびプログラム | |
WO2008075729A1 (ja) | 画像処理装置および画像処理方法 | |
US8001720B2 (en) | Data processing apparatus, printing apparatus and method of creating mask pattern | |
JP5137558B2 (ja) | 画像処理装置および画像処理方法 | |
JP5188533B2 (ja) | データ処理方法、データ処理装置およびディザパターン | |
JP4564979B2 (ja) | データ処理装置、記録装置およびマスクパターンの製造方法 | |
US8998367B2 (en) | Image processing apparatus and image processing method | |
JP2006264301A (ja) | 印刷装置、印刷プログラム、印刷方法、および画像処理装置、画像処理プログラム、画像処理方法、ならびに前記プログラムを記録した記録媒体 | |
JP5672839B2 (ja) | 量子化装置及び閾値マトリクス生成方法 | |
JP5183688B2 (ja) | データ処理装置およびデータ生成方法 | |
CN101791912A (zh) | 图像处理设备、打印设备和图像处理方法 | |
JP2009166491A (ja) | 画像形成装置および画像形成方法 | |
JP6238744B2 (ja) | 記録制御装置、記録装置および記録制御方法 | |
JP5901584B2 (ja) | 量子化方法及び画像処理装置 | |
WO2012020629A1 (ja) | 量子化装置、閾値マトリクス生成方法及び閾値マトリクス | |
JP2010140090A (ja) | 画像データ処理装置、画像形成装置および画像データ処理方法 | |
KR20060074890A (ko) | 인쇄장치, 인쇄 프로그램을 기록한 기록매체, 인쇄방법,화상 처리 장치, 화상 처리 프로그램을 기록한 기록매체 및화상 처리 방법 | |
JP2001008035A (ja) | 量子化方法および該量子化方法を用いた記録システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11816295 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 11816295 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |