Information processing system and program
The processor-based system addresses the issue of uneven image density in binary image correction by using randomly determined threshold values for each pixel, ensuring consistent image quality and reducing false images.
Patent Information
- Application Number
- JP2023146656
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-11
- Publication Date
- 2025-03-24
AI Technical Summary
Existing methods for correcting pixels of interest in binary images based on the number of colored pixels in surrounding regions lead to significant changes in image density when using certain pixel values as boundaries, resulting in uneven image quality.
A processor-based system that corrects the pixel of interest by adjusting the threshold value for each pixel in the image data, where the threshold value differs for each pixel and is determined based on a random number, to prevent significant changes in image density.
The system effectively prevents significant changes in image density after correction, reduces the likelihood of false images, and maintains image quality similar to uniform threshold correction, while allowing for better granularity in image processing.
Smart Images

Figure 2025040018000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to an information processing system and a program. [Background technology]
[0002] Patent Document 1 discloses a method for obtaining an output image with good graininess when converting a binary image into an image with higher resolution. In this method, the ratio of colored dots to white dots assigned to a colored pixel of interest (hereinafter referred to as the pixel of interest) is changed according to the proportion of colored pixels in a predetermined area including the pixel of interest.
[0003] In the method of Patent Document 1, when a second region larger than a predetermined region (called a first region) is viewed, even if the number of colored pixels in the second region is almost the same, whether or not the pixel of interest is corrected may change depending on the number of colored pixels in the first region, which may cause uneven density.
[0004] In response to this, the method disclosed in Patent Document 2 checks the number of colored pixels in a second region that is larger than the first region when the number of colored pixels in the first region centered on the pixel of interest is equal to or less than a predetermined value, and corrects the pixel of interest if the number is equal to or less than a threshold. If the number is greater than the threshold, the pixel of interest is not corrected. The correction performed here is called isolated point correction, and is a correction that reduces the density of the pixel of interest. In other words, in this method, if the number of colored pixels in the first region is equal to or less than a predetermined value and the number of colored pixels in the second region is equal to or less than a threshold, the pixel of interest is determined to be an isolated point, and the density of the isolated point is reduced.
[0005] In order to apply the techniques of Patent Documents 1 and 2, a multi-valued image is binarized as a pre-processing step by a method such as a dither method or an error diffusion method. [Prior art documents] [Patent documents]
[0006] [Patent Document 1] JP 2019-149786 A [Patent Document 2] JP 2021-114662 A Summary of the Invention [Problem to be solved by the invention]
[0007] In a method that determines whether or not to correct a pixel of interest (i.e., a color pixel of interest) in a binary image depending on whether the number of color pixels in an area including the pixel of interest is equal to or less than a predetermined value, whether or not the pixel of interest is corrected is switched at a certain pixel value in the multi-value image before binarization. This results in a large difference in density of the image after correction processing between when the pixel value of the multi-value image is the pixel value at the boundary and when it is 1 greater than that pixel value. This problem will be described with reference to Figs. 11, 12, and 13.
[0008] Here, an example will be described in which a multi-value image is binarized using the ordered dither method. In the dither method, each pixel of a multi-value image is binarized according to its magnitude relationship with a threshold value. The ordered dither method is a type of dither method in which a multi-value image is divided into small blocks, and each block is compared with a threshold matrix of the same size as the block, thereby binarizing the multi-value image. Figure 11 shows an example of a threshold matrix, which is composed of threshold values of 8 rows and 8 columns.
[0009] Here, we consider performing isolated point correction on the binary image obtained by binarization. For example, if the number of colored pixels in the area surrounding a pixel of interest in the binary image is equal to or less than a threshold, the pixel of interest is determined to be an isolated point, and isolated point correction is performed. Note that, below, the threshold used for binarization using the dither method is referred to as the dither threshold, and the threshold used to determine isolated point correction is referred to as the correction threshold.
[0010] Figures 12 and 13 show a state in which the threshold matrix shown in Figure 11 is repeatedly applied two vertically and two horizontally to a 16 x 16 pixel image portion 100 of the multi-value image that is the source of the binary image. Of these, Figure 12 shows a case in which the image portion of the multi-value image is made up entirely of pixels with a pixel value of 7, while Figure 13 shows a case in which the image portion 100 is made up entirely of pixels with a pixel value of 8. Here, it is assumed that if a pixel's value (i.e., pixel value) is equal to or greater than the dither threshold value, the pixel is binarized to one of the two values, i.e., a color pixel, and that if the pixel value is less than the dither threshold value, the pixel is binarized to one of the two values, i.e., a white pixel.
[0011] In Fig. 12, pixels with a gray background color (e.g., pixels 102 and 104) are pixels that become colored pixels through binarization, and other pixels with a white background color (e.g., pixel 106) are pixels that become white pixels through binarization. For example, the dither threshold corresponding to pixel 102 is 6 as shown in Fig. 2, and the pixel values of all pixels in Fig. 12 are 7. Therefore, the pixel value of pixel 102, 7, is greater than the dither threshold value of 6, and pixel 102 is binarized to a colored pixel.
[0012] Here, a 5×5 pixel region 110 surrounded by a thick dashed line in the figure is a region used for determining an isolated point. If the number of colored pixels in this region 110 is equal to or less than the correction threshold, the pixel of interest is determined to be an isolated point, and isolated point correction is performed on the pixel of interest. Here, the correction threshold is assumed to be 3. The region 110 is a region used for determining the pixel of interest when the pixel of interest is a colored pixel 108. There are three colored pixels in the region 110 (this is the number of colored pixels excluding the pixel of interest itself), and this number, 3, is equal to or less than the correction threshold, 3, so the pixel of interest, the colored pixel 108, is determined to be an isolated point, and isolated point correction is performed to reduce the density. In FIG. 12, among the colored pixels shown with a gray background, those to which isolated point correction is to be performed (for example, the colored pixel 108) are shown by being surrounded by a thick frame. In the example of FIG. 12, 16 of the 30 colored pixels in the image portion 100 have their density reduced by isolated point correction.
[0013] 13, on the other hand, since the pixel value of all pixels in image portion 100 is 8, there are 32 pixels in image portion 100 that will become colored pixels through binarization. If colored pixel 108 among these is taken as the pixel of interest, the number of colored pixels in a surrounding 5×5 pixel region 110 is 4, and this number, 4, is greater than the correction threshold value, 3, so that pixel of interest is not subject to isolated point correction. In the example of FIG. 13, since all colored pixels in image portion 100 have four or more colored pixels in their surrounding 5×5 pixel regions, there are no colored pixels in image portion 100 that are subject to isolated point correction.
[0014] Thus, in the example of FIG. 12 where the pixel value is 7, there are 16 colored pixels whose density decreases due to isolated point correction, whereas in the example of FIG. 13 where the pixel value is 1 larger, there are 0 colored pixels whose density decreases due to isolated point correction.
[0015] 12 and 13, the density difference in the corrected output image becomes significantly larger when the pixel value of the multivalued image that was the basis of the binary image is 7 and when it is 8. In contrast, there is no such large difference between other pixel value boundaries, for example, between pixel values 9 and 10.
[0016] Although the above description has been given taking an example of the use of the ordered dither method, the same problem arises when other binarization techniques, such as other types of dither method and error diffusion method, are used.
[0017] An object of the present invention is to prevent a large change in density of a corrected binary image from occurring at a certain pixel value in the multi-valued image that is the basis of the binary image. [Means for solving the problem]
[0018] The invention of claim 1 is an information processing system comprising a processor, which corrects a pixel of interest, which is a color pixel of interest in image data including white pixels and color pixels, when the sum of the values of the color pixels surrounding a pixel of interest in a predetermined area including the pixel of interest is less than or equal to a threshold value, the threshold value being different for each pixel of the image data.
[0019] An invention according to claim 2 is the information processing system according to claim 1, wherein the threshold value is determined for each pixel based on a random number.
[0020] The invention according to claim 3 is the information processing system according to claim 2, wherein the threshold value is a predetermined reference value changed for each pixel of the image data by a random number.
[0021] The invention according to claim 4 is the information processing system according to claim 3, wherein an average of the threshold values for each pixel of the image data is equal to the reference value.
[0022] The invention of claim 5 is an information processing system as described in claim 1, wherein the value of each of the colored pixels surrounding the pixel of interest is 1, and the sum represents the total number of the colored pixels surrounding the pixel of interest in the region.
[0023] The invention according to claim 6 is the information processing system according to claim 1, wherein the value of each of the color pixels surrounding the pixel of interest has a larger weight the closer the color pixel is to the pixel of interest.
[0024] The invention of claim 7 is a program that causes a computer to execute a process to correct a pixel of interest, which is a colored pixel of interest, when the sum of the values of the colored pixels surrounding a pixel of interest in a predetermined area including the pixel of interest, which is a colored pixel of interest, is less than or equal to a threshold value, in image data including white pixels and colored pixels, the threshold value being different for each pixel of the image data. Effect of the Invention
[0025] According to the invention of claim 1, 5 or 7, it is possible to prevent a large change in density of a corrected binary image from occurring at a certain pixel value in the multi-valued image that is the basis for the binary image.
[0026] According to the invention as defined in claim 2, it is possible to make it difficult for a false image to appear in the corrected image.
[0027] According to the invention of claim 3, it is possible to prevent a large change in density of a corrected binary image at a certain pixel value in the original multi-value image, while obtaining results similar to those obtained when correction is performed using the same reference value as a threshold for all pixels.
[0028] According to the invention as set forth in claim 4, the overall density of the image resulting from the correction can be made close to that obtained when correction is performed using the same reference value as a threshold value for all pixels.
[0029] According to the invention as set forth in claim 6, an image with a better graininess can be obtained than with a method of controlling whether or not to correct a pixel of interest based on the number of colored pixels in a predetermined area. [Brief description of the drawings]
[0030] [Figure 1] FIG. 1 is a diagram illustrating an example of an overall functional configuration of an image processing device. [Diagram 2] 4 is a diagram illustrating an example of a functional configuration of a resolution conversion unit; [Diagram 3] 11 is a diagram illustrating a processing procedure of a resolution conversion unit. [Figure 4] 13 is a diagram illustrating a distribution of correction threshold values that are different for each pixel due to application of random numbers; [Diagram 5] 5 is a diagram showing pixels for which isolated point correction is performed when the distribution of correction threshold values exemplified in FIG. 4 is applied to the binarization result of a multi-value input image with a pixel value of 7. FIG. [Figure 6] 5 is a diagram showing pixels for which isolated point correction is performed when the distribution of correction thresholds exemplified in FIG. 4 is applied to the binarization result of a multi-value input image with a pixel value of 8. FIG. [Figure 7] FIG. 13 is a diagram illustrating an example of a weight distribution. [Figure 8] 13 is a diagram illustrating an example of a functional configuration of a resolution conversion unit according to a modified example. [Figure 9]FIG. 13 is a diagram illustrating a processing procedure of a resolution conversion unit according to a modified example. [Figure 10] FIG. 2 is a diagram illustrating an example of a hardware configuration of a computer on which the information processing system is implemented. [Figure 11] FIG. 13 is a diagram showing an example of a threshold matrix used in the ordered dither method. [Figure 12] 12 is a diagram showing isolated point correction performed on a large number of pixels when a uniform correction threshold value of 3 is used for the binarized result of a multi-value input image with pixel value 7 using the threshold matrix of FIG. 11. FIG. [Figure 13] 12 is a diagram showing that no pixels undergo isolated point correction when a uniform correction threshold value of 3 is used for the binarized result of a multi-value input image with a pixel value of 8 using the threshold matrix of FIG. 11. FIG. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0031] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[0032] <Overall device configuration> 1 illustrates an example of the overall functional configuration of an image processing device 10. The image processing device 10 is a device having a printing function, such as a printer, a copier, or a multifunction device (i.e., a multifunction device having functions of a printer, a scanner, a copier, a facsimile, etc.). The image processing device 10 includes an information processing system 11 and an image output unit 18. The information processing system 11 is a functional module that executes information processing, such as image processing, on input image data. The image output unit 18 is a printing device that prints out the input image data on a recording medium such as paper (hereinafter referred to as "paper"). The printing method of the image output unit 18 is not particularly limited, and may be, for example, an electrophotographic method or an inkjet method.
[0033] The information processing system 11 includes an image input unit 12 , an error diffusion processing unit 14 , and a resolution conversion unit 16 .
[0034] The image input unit 12 accepts input of target image data. The image input unit 12 is, for example, a scanner that optically reads an original document and converts it into electronic image data. The image input unit 12 may also receive an image data file that is generated by an external device such as a personal computer and transmitted via a network or the like. When receiving an image data file, the image input unit 12 converts the image data included in the file into a bitmap image.
[0035] Furthermore, when the color space of the image data input to the image input unit 12 differs from that of the image output unit 1, the image input unit 12 performs color conversion on the input image data to match the color space of the image output unit 18. For example, when the input image data is in RGB format and the image output unit 18 handles CMYK format, the image input unit 12 performs conversion from RGB to CMYK.
[0036] Therefore, the image data passed from the image input unit 12 to the error diffusion processing unit 14 is multi-value (for example, 8 bits per color) bitmap image data expressed in the color space of the image output unit 18.
[0037] The error diffusion processing unit 14 converts the multi-value image data input from the image input unit 12 into binary image data by applying a known error diffusion process to the multi-value image data. For example, if the input image data is CMYK multi-value image data, the error diffusion processing unit 14 converts the multi-value images of each color of CMYK into binary image data. The binary image data of each color is an image represented by white pixels with a density of 0 and color pixels with a predetermined density.
[0038] The resolution conversion unit 16 converts the binary image data for each color output from the error diffusion processing unit 14 into image data with the resolution of the image output unit 18. The resolution of the binary image data for each color output from the error diffusion processing unit 14 is the same as the resolution of the image data input to the image input unit 12. On the other hand, the resolution of the image output unit 18 that performs printing may be higher than the resolution of the input image data. Therefore, the resolution conversion unit 16 converts the resolution of the binary image data after error diffusion.
[0039] In the following, the resolution of the image data input to the resolution conversion unit 16, i.e., the binary image data output by the error diffusion processing unit 14, is referred to as the input resolution, and the resolution of the image data output from the resolution conversion unit 16 is referred to as the output resolution. The input resolution is the same as the resolution of the image data input to the image input unit 12. Moreover, the output resolution is the same as the resolution of the image output unit 18. Moreover, in the following, the image data input to the resolution conversion unit 16 is referred to as the input image data, and the image data output from the resolution conversion unit 16 is referred to as the output image data. Moreover, the pixels of the input image data are referred to as the input pixels, and the pixels of the output image data are referred to as the output pixels.
[0040] Furthermore, when converting the resolution, the resolution conversion unit 16 also performs isolated point correction. Isolated point correction is a correction that reduces the density of a color pixel that is isolated by a single pixel. That is, when the resolution conversion unit 16 finds a color pixel that corresponds to an isolated point in the input image data, it performs a correction that reduces the density of the color pixel.
[0041] The isolated point correction in the resolution conversion unit 16 is carried out, for example, as follows.
[0042] Consider the case where the resolution conversion unit 16 converts one input pixel into a matrix of m×n output pixels (m and n are integers equal to or greater than 1). The area of the output pixel is 1 / (m×n) of the area of the input pixel. If at least one of m and n is 2 or greater, the resolution of the output image data will be higher than the resolution of the input image data. For example, when one input pixel is resolution-converted into a group of output pixels with 2 rows and 4 columns, the number of pixels in the output image data will be 8 times the number of pixels in the input image data.
[0043] For input pixels other than isolated points, the resolution conversion unit 16 converts the input pixel into a group of m rows and n columns of output pixels having the same value as the input pixel. For example, if an input pixel that is not an isolated point is a white pixel, the resolution conversion unit 16 converts the input pixel into a group of m×n white output pixels. On the other hand, if an input pixel that is not an isolated point is a colored pixel, the resolution conversion unit 16 converts the input pixel into a group of m×n colored output pixels. The density of each colored output pixel is the same as the density of the colored pixel that is the input pixel. Therefore, for input pixels that are not isolated points, the density does not change during resolution conversion.
[0044] On the other hand, when it is determined that the input pixel is an isolated point (i.e., an isolated colored pixel), the resolution conversion unit 16 changes one or more output pixels of the output pixel group of m rows and n columns to white pixels to reduce the density. That is, if the input pixel is a colored pixel that is not an isolated point, it is converted to a colored output pixel group of m rows and n columns, but if the input pixel is a colored pixel that is an isolated point, one or more of the colored output pixel group of m rows and n columns is replaced with a white pixel, so that the density is reduced. In the isolated point correction, which pixel of the output pixel group of m rows and n columns is replaced with a white pixel may be determined according to a predetermined rule. Also, the method of determining an isolated point in this embodiment will be described in detail later.
[0045] The output image data output from the resolution conversion unit 16 is supplied to the image output unit 18. The image output unit 18 outputs an image on a sheet of paper in accordance with the output image data.
[0046] <Example of resolution conversion part> Conventional isolated point correction is performed based on whether the number of colored pixels within a region of a predetermined size surrounding the pixel of interest is equal to or less than a predetermined correction threshold, and the correction threshold used here is the same value for all pixels.
[0047] In contrast, in this embodiment, the correction threshold is set to a different value for each pixel. As an example, in the following, a uniform correction threshold applied to all pixels in the conventional method is set as a reference value, and a correction threshold for each pixel is generated by varying the reference value by a random number for each pixel.
[0048] FIG. 2 shows an example of the configuration of the resolution conversion unit 16 having such a threshold variable function.
[0049] The resolution conversion unit 16 illustrated in FIG. 2 includes a counter unit 162, a threshold processing unit 164, a storage unit 165, a random number generation unit 166, and a random number application unit 168.
[0050] The counting section 162 counts, for each pixel of interest in the binary image data input from the error diffusion processing section 14, the number of colored pixels within an area of a predetermined size surrounding the pixel of interest.
[0051] The threshold processing unit 164 compares the total number of colored pixels in the region found by the counting unit 162 with a correction threshold to determine whether or not to perform isolated point correction on the pixel of interest, and generates an output corresponding to the pixel of interest according to the determination. When generating this output, the threshold processing unit 164 converts one pixel of interest into a matrix of multiple output pixels. This action converts the input image data into output image data with a higher resolution.
[0052] In this conversion, for a pixel of interest that is not subjected to isolated point correction, the threshold processing unit 164 outputs an output pixel group of m×n pixels having the same value as the value of the pixel of interest (i.e., 0 or 1). That is, if the pixel of interest is a white pixel, the threshold processing unit 164 outputs a group of m×n white output pixels, and if the pixel of interest is a colored pixel, it outputs a group of m×n colored output pixels. Furthermore, for a pixel of interest that is subjected to isolated point correction, the threshold processing unit 164 outputs some of the output pixel groups changed to white pixels according to a predetermined rule.
[0053] The threshold processing unit 164 uses a threshold supplied from the random number application unit 168 for each pixel as a threshold used in the above-mentioned threshold comparison.
[0054] The reference value of the correction threshold value is stored in the storage unit 165. This reference value is a predetermined fixed value.
[0055] The random number generation unit 166 generates a random number for each pixel. The random number application unit 168 generates a correction threshold for each pixel by applying the random number generated by the random number generation unit 166 for each pixel to the reference value acquired from the storage unit 165. As a result, a different correction threshold is obtained for each pixel.
[0056] The random number application unit 168 may apply the random number to the reference value by, for example, adding the random number to the reference value. In this case, for example, if the reference value is 3 and the random number generation unit 166 randomly generates three values, -1, 0, and 1, for each pixel, the random number application unit 168 randomly outputs 2, 3, or 4 for each pixel. In this specific example, the correction threshold value for each pixel randomly output by the random number application unit 168 is substantially equal to the reference value when averaged over a sufficiently large number of pixels (for example, all pixels of the input image data). By making the average of the correction threshold values equal to the reference value, the number of pixels in the entire image on which isolated point correction is performed can be made close to the number in the case where isolated point correction is performed on all pixels using the reference value as the correction threshold value.
[0057] As another example, the random number application unit 168 may multiply the random number generated by the random number generation unit 166 by a reference value. For example, the random number generation unit 166 randomly outputs five real numbers, 0.5, 0.8, 1, 1.2, and 1.5, for each pixel. The random number application unit 168 then multiplies the output value of the random number generation unit 166 by a reference value (for example, 4) and rounds the multiplication result to an integer to obtain a correction threshold for each pixel. In this specific example, the correction threshold for each pixel output by the random number application unit 168 becomes approximately equal to the reference value when averaged over a sufficiently large number of pixels.
[0058] An example of a processing procedure executed by the resolution conversion unit 16 is shown in FIG.
[0059] 3, the counting unit 162 selects one pixel from the input image data in a predetermined order (S10). Next, the counting unit 162 determines whether the selected pixel is a dot (i.e., a colored pixel) or not (S12). If the selected pixel is not a dot, that is, if the pixel is a white pixel, the threshold processing unit 164 outputs a white pixel group of m×n pixels as an output pixel group corresponding to the pixel (S24).
[0060] If the pixel is determined to be a dot in S12, the counting unit 162 counts the colored pixels in a region of a predetermined size around the pixel (which is a colored pixel and is the pixel of interest in the following procedure) and determines the total number of colored pixels in that region (excluding the pixel of interest itself) (S14). This region may be a range of k×k pixels (k is an odd number equal to or greater than 3) centered on the pixel of interest, such as region 110 shown in Fig. 12.
[0061] In this case, threshold processing unit 164 requests random number generation unit 166 to generate a random number for the pixel of interest. Random number application unit 168 applies the random number generated by random number generation unit 166 in response to this request to the reference value stored in storage unit 165, thereby generating a correction threshold for the pixel of interest (S16).
[0062] Next, the threshold processing unit 164 judges whether the received counting result, i.e., the total number of colored pixels in the area surrounding the pixel of interest, is equal to or less than the correction threshold generated by the random number application unit 168 for the pixel of interest (S18). If the counting result is equal to or less than the correction threshold (the judgment result of S18 is Yes), the threshold processing unit 164 outputs a group of dots to which isolated point correction has been applied as an output pixel group corresponding to the pixel of interest (S20). That is, in this case, the threshold processing unit 164 judges that the pixel of interest is an isolated point and applies isolated point correction. In the case where S20 is performed, the pixel of interest is a dot (i.e., a colored pixel), so if isolated point correction is not applied, the threshold processing unit 164 outputs a group of dots of m×n pixels as a result of resolution conversion. However, since isolated point correction is applied in S20, the threshold processing unit 164 converts one or more dots determined by the rules of isolated point correction among the group of dots of m×n pixels into white pixels and outputs them. As a result, the density of the output pixel group corresponding to the pixel of interest becomes lower than in the case where isolated point correction is not performed.
[0063] In S20, the strength of the isolated point correction may be changed depending on the counting result. In other words, the smaller the final counting result, the lower the density around the pixel of interest, so that the isolated point correction may be performed to lower the density of the pixel of interest by increasing the number of pixels in the output pixel group that are converted to white pixels.
[0064] If the result of the determination in S18 is No, that is, if the count result is equal to or greater than the correction threshold value, the threshold processing unit 164 outputs the dot group of m×n pixels corresponding to the pixel of interest as it is as the result of the resolution conversion (S22). That is, in this case, the isolated point correction is not performed on the pixel of interest.
[0065] After S20, S22, or S24, the resolution conversion unit 16 judges whether the processes of S10 to S26 have been completed for all pixels of the input image data (S26). If the result of this judgment is No, the resolution conversion unit 16 returns to S10, selects the next pixel of interest from the input image data, and executes the processes from S12 onwards for the next pixel of interest.
[0066] If the determination result in S26 is Yes, the resolution conversion unit 16 completes the resolution conversion process for the input image data.
[0067] As described above, in this embodiment, the correction threshold value used to determine whether or not to perform isolated point correction on colored pixels is made to differ for each pixel using a random number, thereby mitigating the problem of the density of the correction result differing significantly at the boundary between pixel values, which are stages in a multi-value image.
[0068] As a specific example, the case where the correction threshold is made different for each pixel by the method of this embodiment in the example described above with reference to Figures 11 to 13 will be shown below. In the following example, the reference value of the correction threshold is set to 3, the same as the correction threshold in the examples of Figures 12 and 13. Also, the random number generation unit 166 randomly generates three types of values, -1, 0, and 1, for each pixel, and the random number application unit 168 adds the randomly generated value to the reference value of 3.
[0069] In this case, the correction threshold for each pixel is distributed as shown in Fig. 4. In Fig. 4, the pixels with a gray background color are pixels classified as colored pixels by binarization, with a gray background color applied in the examples of Fig. 12 and Fig. 13. As shown in Fig. 4, the correction threshold differs for each colored pixel.
[0070] Fig. 5 shows the result of binarizing an image portion in which all pixel values of 16 × 16 pixels are 7 (this is the same case as in Fig. 12) using the threshold matrix in Fig. 11, and determining whether or not isolated point correction is required for each colored pixel of the binarized result using the correction threshold value for that pixel shown in Fig. 4. In the example in Fig. 5, the group of pixels surrounded by a thick frame such as pixel 120 are the pixels to be subjected to isolated point correction, and there are a total of 14 of them.
[0071] On the other hand, Fig. 6 shows the result of performing a determination as to whether or not binarization and isolated point correction are required for an image portion in which all pixel values of the 16 × 16 pixels are 8 (this is the same case as in Fig. 13), similar to the example in Fig. 5. In the example in Fig. 6, the total number of pixels to be subjected to isolated point correction, enclosed in a thick-line frame, is 11.
[0072] 12 and 13, where a uniform correction threshold value of 3 is used for all pixels, when the pixel value changes from 7 to 8, the number of pixels to which isolated point correction is applied changes suddenly from 16 to 0. In contrast, in the examples of FIGS. 5 and 6, where the method of this embodiment is used, under the same conditions, the number of pixels to which isolated point correction is applied only changes from 14 to 11, a much smaller amount of change. In this way, it can be seen that the problem of a large change in density as a result of isolated point correction between pixel values 7 and 8 is solved by this embodiment.
[0073] As described above, in this embodiment, the correction threshold is made different for each pixel, thereby reducing the situation in which the density after isolated point correction changes significantly at a certain pixel value in the multi-value image stage before binarization, which occurs when a uniform correction threshold is used for all pixels.
[0074] In addition, in this embodiment, the correction threshold value is changed for each pixel by a random number, so there is no regularity in the arrangement of the correction threshold values. Therefore, artifacts are less likely to appear in the image after isolated point correction output from the resolution conversion unit 16.
[0075] <Modification> In the embodiment described above, isolated point correction is controlled based on the number of colored pixels in the area surrounding the pixel of interest. With this method, whether the colored pixels are concentrated close to the pixel of interest or far away from the pixel of interest, the result of the determination as to whether or not to perform isolated point correction is the same as long as the number of colored pixels is the same.
[0076] However, if the distance of a color pixel from a pixel of interest varies, the dot created by printing the color pixel may or may not overlap with the dot created by printing the pixel of interest. If the dots do not overlap, the pixel of interest can be said to be isolated, but if the dots overlap, it is difficult to say that the pixel of interest is isolated. For this reason, it is considered better to take into account the distance of the color pixel from the pixel of interest (in other words, how far or close it is) when controlling isolated point correction. Below, a modified example that takes the distance into account will be described.
[0077] In this modification, weights are assigned to the colored pixels surrounding the pixel of interest, with the weights decreasing the further the pixel is from the pixel of interest, and the sum of the weights of the colored pixels surrounding the pixel of interest is used to determine whether the pixel of interest is an isolated point. Here, the weights have a value of 0 or more.
[0078] More specifically, in this modified example, if the sum of the weights of the colored pixels surrounding the pixel of interest is less than a predetermined threshold, the pixel of interest is determined to be an isolated point. Since the weight of a colored pixel farther from the pixel of interest is smaller, in other words, the weight of a colored pixel closer to the pixel of interest is larger, the more colored pixels there are near the pixel of interest, the larger the sum of the weights is likely to be, and therefore the pixel of interest is less likely to be determined to be an isolated point.
[0079] Conversely, if there are no colored pixels near the pixel of interest, the pixel of interest is likely to be determined to be an isolated point. For example, even if there are many colored pixels far from the pixel of interest, if there are no colored pixels near it, the dots of the pixel of interest may not overlap at all with the dots of the surrounding colored pixels in the printed result. In such cases, the pixel of interest is likely to stand out as an isolated point, so it is desirable to subject it to isolated point correction.
[0080] Based on this concept, in this modified example, the sum of the weights of the colored pixels surrounding the pixel of interest is calculated, and this sum is compared with a threshold value to determine whether or not isolated point correction should be performed on the pixel of interest.
[0081] An example of weighting for pixels around a pixel of interest is shown in Figure 7. Figure 7 shows the weights for each pixel position 210, 220, etc. in a 7x7 pixel region 300 centered on a pixel of interest 200. In this example, the weight W ij is calculated by the following formula: (Number 1) W ij =1 / (i 2 +j 2 ) 1 / 2 ×3
[0082] Here, i and j are the x and y coordinates of each pixel position when the position of the pixel of interest 200 is the origin (0,0). For example, the x coordinate is positive on the right side of the origin and negative on the left side, and the y coordinate is positive above the origin and negative below. In this formula, the weight W ij is inversely proportional to the distance from the pixel of interest, and the proportionality constant is 3. Note that the relationship in which the weight is inversely proportional to the distance, and the proportionality constant of 3, are merely examples.
[0083] 7, since pixel of interest 200 is not subject to the sum of weights, the weight of the position of pixel of interest 200 is 0, the weight of pixel position 210 of the adjacent pixel below pixel of interest 200 is 3.0000, and the weight of pixel position 220 of the adjacent pixel to the lower right is 2.1213. Furthermore, the weight of pixel position 230 of the pixel in the lower left corner of region 300, which is the farthest from pixel of interest 200 within region 300, is 0.7071.
[0084] The overall configuration of the image processing device 10 in this modified example is the same as that shown in Fig. 1, but the internal configuration of the resolution conversion unit 16 is different from that of the above embodiment shown in Fig. 2. Fig. 8 shows an example of the internal configuration of the resolution conversion unit 16 in this modified example. In Fig. 8, components similar to those shown in Fig. 2 are given the same reference numerals, and duplicated explanations will be omitted.
[0085] The resolution conversion unit 16 illustrated in FIG. 8 includes a multi-value unit 161, a weight accumulator 163, a threshold processor 164A, a storage unit 165A, a random number generator 166, and a random number application unit 168.
[0086] The multi-value conversion unit 161 converts the value of each pixel of the binary image data input from the error diffusion processing unit 14 into a multi-value. This conversion is for converting the pixel value into a real value equal to the weight so that the weight can be multiplied by the weight in the weight accumulating unit 163. For example, when converting a binary image into an 8-bit multi-value, the multi-value conversion unit 161 converts the value of a white pixel (i.e., value 0) of the binary image into an 8-bit value representing the real value 0.0, and the value of a color pixel (i.e., value 1) of the binary image into an 8-bit value representing the real value 1.0. In other words, the multi-value conversion unit 161 converts a binary image of 0 and 1 into a multi-bit binary image of 0.0 and 1.0 in substance.
[0087] The weight accumulator 163 regards each pixel of the multi-value image data output from the multi-value converter 161 as a pixel of interest, and calculates, for each pixel of interest, the sum of the weights of the colored pixels surrounding the pixel of interest.
[0088] The threshold processing unit 164A compares the sum of the weights calculated by the weight accumulating unit 163 with a threshold to determine whether or not to perform isolated point correction on the pixel of interest, and generates an output corresponding to the pixel of interest according to the determination. When generating this output, the threshold processing unit 164A converts one pixel of interest into a matrix of multiple output pixels. This action converts the input image data into output image data with a higher resolution.
[0089] In this conversion, for a pixel of interest that is not subjected to isolated point correction, the threshold processing unit 164A outputs an output pixel group of m×n pixels having the same value as the value of the pixel of interest (i.e., 0 or 1). That is, if the pixel of interest is a white pixel, the threshold processing unit 164A outputs an output pixel group of m×n white pixels, and if the pixel of interest is a colored pixel, it outputs an output pixel group of m×n colored pixels. Furthermore, for a pixel of interest that is subjected to isolated point correction, the threshold processing unit 164A outputs some of the output pixel groups that have been changed to white pixels according to a predetermined rule.
[0090] The procedure of the process executed by the weight accumulator 163 and the threshold processor 164A is illustrated in Fig. 9. In Fig. 9, the same steps as those in the process procedure of the above embodiment shown in Fig. 3 are denoted by the same reference numerals. In addition, Fig. 8 is also referred to in this description.
[0091] 9, the weight accumulator 163 selects one pixel from the input image data in a predetermined order (S10). Next, the weight accumulator 163 determines whether the selected pixel is a dot (i.e., a colored pixel) (S12). If the pixel selected by the weight accumulator 163 is not a dot, that is, if the pixel is a white pixel, the threshold processor 164A outputs a white pixel group of m×n pixels as an output pixel group corresponding to the pixel (S24).
[0092] If it is determined in S12 that the selected pixel is a dot (i.e., a colored pixel), the weight accumulator 163 clears the value of the accumulation result held as an internal variable to 0 (S140). Next, the weight accumulator 163 checks the pixels in an area 300 (see FIG. 7) of a predetermined size around the pixel, i.e., the pixel of interest 200, in a predetermined order, and when it finds a colored pixel, it obtains the weight of the position of the colored pixel from a weight distribution (e.g., FIG. 7). Then, the weight accumulator 163 multiplies the value of the colored pixel by its weight, and adds the obtained multiplication result to the accumulation result (S142). Next, the weight accumulator 163 determines whether all pixels in the area 300 have been checked (S144), and if there are any pixels that have not been checked, the process returns to S142 and processes the unchecked pixels.
[0093] When weight accumulator 163 determines in S144 that investigation of all pixels has finished, the sum of the multiplication results of the values of the colored pixels in region 300 and the weights of those colored pixels is held in the internal variable, accumulator result. Because the value of a colored pixel is a real value of 1.0, the final accumulator result ultimately represents the sum of the weights of the colored pixels in region 300. Weight accumulator 163 passes this final accumulator result to threshold processor 164A.
[0094] When the threshold processing unit 164A receives the final integration result for the pixel of interest from the weight integrating unit 163, it performs processing to obtain a correction threshold used to determine the pixel of interest (S16A). That is, the threshold processing unit 164A requests the random number generating unit 166 to generate a random number for the pixel of interest. The random number applying unit 168 applies the random number generated by the random number generating unit 166 in response to this request to a reference value stored in the storage unit 165A, thereby generating a correction threshold for the pixel of interest. Note that the reference value stored in the storage unit 165A is a reference value of the correction threshold to be compared with the integration result of the weights. This reference value is a value different from the reference value of the threshold to be compared with the total number of colored pixels in the region, which is stored in the storage unit 165 of FIG. 2.
[0095] Next, the threshold processing unit 164A determines whether the final accumulation result received, i.e., the sum of the weights of the colored pixels in the area surrounding the pixel of interest, is less than or equal to the correction threshold for the pixel of interest generated by the random number application unit 168 (S18A).
[0096] If the sum is equal to or smaller than the correction threshold (YES in S18A), the threshold processor 164A outputs the dot group that has been subjected to the isolated point correction as the output pixel group corresponding to the pixel of interest (S20). If the sum is greater than the correction threshold, the threshold processor 164A outputs the dot group of m×n pixels corresponding to the pixel of interest as it is as the result of the resolution conversion (S22).
[0097] After S20, S22, or S24, the resolution conversion unit 16 judges whether the processes of S10 to S26 have been completed for all pixels of the input image data (S26). If the result of this judgment is No, the resolution conversion unit 16 returns to S10, selects the next pixel of interest from the input image data, and executes the processes from S12 onwards for the next pixel of interest.
[0098] If the determination result in S26 is Yes, the resolution conversion unit 16 completes the resolution conversion process for the input image data.
[0099] As explained above, in this modified example, a weight that decreases with increasing distance from a pixel of interest is assigned to a color pixel, and isolated point correction is performed on the pixel of interest if the sum of the weights of the color pixels surrounding the pixel of interest is less than a threshold value. This method allows for more precise determination compared to the above embodiment, in which the need for isolated point correction is determined based on the number of color pixels.
[0100] The above-described embodiment is merely illustrative, and various modifications are possible within the scope of the technical concept of the present invention. For example, the above-described image processing device 10 binarizes the input multi-value image data by error diffusion, but the binarization method is not limited to this. Of course, binarization may be performed by other methods such as dithering.
[0101] 1, the image processing device 10 has the image output unit 18, but may have a configuration without the image output unit 18. In this case, the image processing device 10 may receive an image to be printed by an external printer from a host, perform binarization and resolution conversion (including isolated point correction) on the image by the method of this embodiment, and supply the resulting image to the printer.
[0102] The information processing system 11 of the image processing device 10 described above is configured using, for example, a general-purpose computer. As shown in FIG. 12, the computer has a circuit configuration in which a processor 1002, a memory (main storage device) 1004 such as a random access memory (RAM), a controller for controlling an auxiliary storage device 1006 which is a non-volatile storage device such as a flash memory, an SSD (solid state drive), or an HDD (hard disk drive), an interface with various input / output devices 1008, a network interface 1010 for controlling connection to a network such as a local area network, and the like are connected via a data transmission path such as a bus 1012. A program in which the contents of the processing of the above embodiment are described is installed in the computer via a network or the like and stored in the auxiliary storage device 1006. The program stored in the auxiliary storage device 1006 is executed by the processor 1002 using the memory 1004, thereby configuring the information processing mechanism of the present embodiment. The information processing system 11 may also include an image processing processor for performing general-purpose or specific-purpose image processing at high speed.
[0103] The information processing system 11 may be configured with a single computer or multiple computers. For example, some of the functions of the information processing system 11 may be provided in another computer outside the image processing device 10.
[0104] In each of the above embodiments, the term "processor" refers to a processor in a broad sense, including general-purpose processors (e.g., CPU: Central Processing Unit, etc.) and dedicated processors (e.g., GPU: Graphics Processing Unit, ASIC: Application Specific Integrated Circuit, FPGA: Field Programmable Gate Array, programmable logic device, etc.).
[0105] In addition, the operations of the processor in each of the above embodiments may be performed not only by one processor, but also by multiple processors located at physically separate locations working together. Furthermore, the order of the operations of the processor is not limited to the order described in each of the above embodiments, and may be changed as appropriate.
[0106] (Additional Note) (((1))) A processor is provided. The processor, correcting a pixel of interest, which is a color pixel of interest, when a sum of values of color pixels surrounding the pixel of interest in a predetermined region including the pixel of interest in image data including white pixels and color pixels is equal to or less than a threshold value; The threshold value varies for each pixel of the image data. Information processing system. (((2))) The threshold value is determined for each pixel based on a random number. An information processing system according to (((1))). (((3))) The threshold value is a predetermined reference value changed for each pixel of the image data by a random number. The information processing system according to (((2))). (((4))) The information processing system according to (((3))), wherein an average of the threshold values for each pixel of the image data is equal to the reference value. (((5))) An information processing system according to any one of (((1))) to (((4))), wherein the value of each of the colored pixels surrounding the pixel of interest is 1, and the sum represents the total number of the colored pixels surrounding the pixel of interest in the region. (((6))) The information processing system according to any one of ((1))) to ((4))), wherein the value of each of the color pixels surrounding the pixel of interest has a larger weight the closer the color pixel is to the pixel of interest. (((7))) On the computer, correcting a pixel of interest, which is a color pixel of interest in image data including white pixels and color pixels, when a sum of values of color pixels surrounding a pixel of interest in a predetermined region including the pixel of interest is equal to or less than a threshold value; Execute the process, The threshold value varies for each pixel of the image data. A program characterized by:
[0107] According to the information processing system described in (((1))) or (((5))) and the program described in (((7))), it is possible to prevent a large change in density of an image after correction processing of a binary image from occurring at a certain pixel value in the multi-value image that is the source of the binary image. According to the information processing system described in (((2))), it is possible to make it difficult for artifacts to appear in the corrected image. According to the information processing system described in (((3))), it is possible to prevent a large change in density of a corrected binary image from occurring at a certain pixel value in the original multi-value image, while obtaining results similar to those obtained when correction is performed using the same reference value as a threshold for all pixels. According to the information processing system described in (((4))), the overall density of the image resulting from the correction can be made close to that obtained when the correction is performed using the same reference value as a threshold value for all pixels. According to the information processing system described in (((6))), it is possible to obtain an image with a better graininess than a method that controls whether or not to correct a pixel of interest based on the number of colored pixels in a predetermined area. [Explanation of symbols]
[0108] 10 image processing device, 11 information processing system, 12 image input unit, 14 error diffusion processing unit, 16 resolution conversion unit, 18 image output unit, 161 multi-value unit, 162 counting unit, 163 weighted integration unit, 164, 164A threshold processing unit, 165, 165A memory unit, 166 random number generation unit, 168 random number application unit.
Claims
1. A processor is provided. The processor, correcting a pixel of interest, which is a color pixel of interest, when a sum of values of color pixels surrounding the pixel of interest in a predetermined region including the pixel of interest in image data including white pixels and color pixels is equal to or less than a threshold value; The threshold value varies for each pixel of the image data. Information processing system.
2. The threshold value is determined for each pixel based on a random number. The information processing system according to claim 1 .
3. The threshold value is a predetermined reference value changed for each pixel of the image data by a random number. The information processing system according to claim 2 .
4. The information processing system of claim 3 , wherein an average of the threshold values for each pixel of the image data is equal to the reference value.
5. 2 . The information processing system of claim 1 , wherein the value of each of the colored pixels surrounding the pixel of interest is 1, and the sum represents a total number of the colored pixels surrounding the pixel of interest in the region.
6. The information processing system according to claim 1 , wherein the value of each of the color pixels surrounding the pixel of interest has a weight that is larger the closer the color pixel is to the pixel of interest.
7. On the computer, correcting a pixel of interest, which is a color pixel of interest in image data including white pixels and color pixels, when a sum of values of color pixels surrounding a pixel of interest in a predetermined region including the pixel of interest is equal to or less than a threshold value; Execute the process, The threshold value varies for each pixel of the image data. A program characterized by:
Citation Information
Patent Citations
Image processing apparatus, image forming apparatus, and program
JP2019149786A
Image processing apparatus, image forming apparatus, and image processing program
JP2021114662A