Information processing apparatus, information processing method, and program

The information processing apparatus addresses color degeneration issues by determining scanned images and adjusting conversion parameters in the gamut mapping process, ensuring minimal color conversion and accurate color reproduction within the printer's gamut, thus enhancing color distinction and tone preservation.

JP2026006916APending Publication Date: 2026-01-16CANON KK
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2024106277
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-01
Publication Date
2026-01-16

AI Technical Summary

Technical Problem

Existing color mapping technologies, such as 'perceptual' and 'absolute colorimetric' mapping, can result in reduced saturation or color degeneration when converting colors outside a printer's reproduction color gamut, failing to meet user-specific requirements for preserving color tones and reducing color degeneration effectively.

Method used

An information processing apparatus determines if an input image is a scanned image and performs color conversion by correcting conversion parameters to increase the color difference between colors, using a gamut mapping process that includes a three-dimensional lookup table to ensure appropriate color mapping within the printer's color gamut, thereby reducing color degeneration.

Benefits of technology

The solution effectively minimizes color conversion impact and ensures accurate color mapping, even when printing scanned documents, by enhancing color distinction and maintaining color tones according to user preferences and environmental conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026006916000001_ABST
    Figure 2026006916000001_ABST
Patent Text Reader

Abstract

To perform color mapping to a printing color gamut so as to reduce the degree Iga of color conversion caused by color conversion, and to perform appropriate mapping even when a printing original is a read original.SOLUTION: It is determined whether the first image is an image obtained by scanning a print image. When the first image is an image obtained by scanning a print image, color conversion processing for converting a first color and a second color included in the first image and defined by a first color gamut into a third color and a fourth color defined by a second color gamut different from the first color gamut is executed. When a color difference between the third color and the fourth color is smaller than a predetermined threshold, a conversion parameter in the color conversion processing is corrected so that a color obtained by converting the first color becomes a fifth color different from the third color, in which a color difference from the fourth color is larger than the color difference between the third color and the fourth color.SELECTED DRAWING: Figure 21
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing device, an information processing method, and a program. [Background technology]

[0002] There is known an information processing device that receives a digital document described in a predetermined color space, maps each color in that color space to a color gamut that can be reproduced by a printer, and outputs the result. Patent Document 1 describes "perceptual" mapping and "absolute colorimetric" mapping. Patent Document 2 also describes determining whether or not to perform color space compression and the direction of compression for an input color image signal. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2020-27948 [Patent Document 2] Japanese Patent Application Publication No. 07-203234 Summary of the Invention [Problem to be solved by the invention]

[0004] When performing the "perceptual" mapping described in Patent Document 1, saturation may be reduced even for colors that the printer can reproduce in the color space of the digital document. Furthermore, when performing "absolute colorimetric" mapping, color degeneration may occur between multiple colors contained in the digital document that are outside the printer's reproduction color gamut. Furthermore, Patent Document 2 performs unique compression in the saturation direction on the input color image signal, which raises concerns about the effectiveness of reducing the degree of color degeneration. There are multiple requirements for color mapping, such as reducing color degeneration and preserving color tones, depending on the user and environment, but these patent documents only satisfy some of these requirements.

[0005] The present invention aims to perform color mapping to a print color gamut so as to reduce the degree of color conversion caused by color conversion, and to perform appropriate mapping even when the printed document is a scanned document. [Means for solving the problem]

[0006] To achieve the object of the present invention, for example, an information processing apparatus according to one embodiment includes the following configuration: a first determination unit that determines whether a first image is a scanned image of a print image, a conversion unit that, if the first image is a scanned image of the print image, executes color conversion processing to convert a first color and a second color that are defined in a first color gamut and are included in the first image into a third color and a fourth color that are defined in a second color gamut that is different from the first color gamut, respectively, and a first correction unit that, if the color difference between the third color and the fourth color is smaller than a predetermined threshold, corrects conversion parameters in the color conversion processing so that the color obtained by converting the first color becomes a fifth color that is different from the third color and has a color difference from the fourth color that is larger than the color difference between the third color and the fourth color. [Effects of the Invention]

[0007] To perform color mapping to a print color gamut so that the degree of color conversion caused by color conversion is small, and also to perform appropriate mapping even when a print document is a read document. [Brief explanation of the drawings]

[0008] [Figure 1] FIG. 1 is a block diagram showing an example of the configuration of a system including an information processing apparatus. [Figure 2] 4 is a flowchart showing an example of the overall processing according to the first embodiment. [Figure 3] 10 is a flowchart showing an example of a process for creating a post-degeneration correction table according to the first embodiment. [Figure 4] 5A to 5C are diagrams illustrating a color degeneration correction process according to the first embodiment. [Figure 5] FIG. 10 is a diagram for explaining blocking for each hue according to the second embodiment. [Figure 6] 10A to 10C are diagrams for explaining color degeneration correction processing in the lightness direction according to the second embodiment. [Figure 7] FIG. 10 is a diagram for explaining a brightness conversion table according to the second embodiment. [Figure 8] 10A to 10C are diagrams for explaining color degeneration correction according to the third embodiment. [Figure 9] 10 is a flowchart showing an example of the overall processing according to the fourth embodiment. [Figure 10] FIG. 10 is a diagram for explaining manuscript data according to the fourth embodiment. [Figure 11] 10 is a flowchart showing an example of partial region setting processing according to the fourth embodiment. [Figure 12] FIG. 13 is a diagram for explaining a unit tile in manuscript data according to the fourth embodiment. [Figure 13] FIG. 10 is a diagram showing a partial region set by the setting process according to the fourth embodiment. [Figure 14] FIG. 1 is a diagram illustrating a configuration of an image forming apparatus. [Figure 15] FIG. 10 is a diagram for explaining a selection UI by a user. [Figure 16] FIG. 10 is a diagram for explaining saturation of an example digital manuscript. [Figure 17] FIG. 10 is a diagram for explaining saturation at each position when printing an example digital manuscript. [Figure 18] FIG. 10 is a diagram for explaining saturation at each position in an example of a read image. [Figure 19] 10A and 10B are diagrams for explaining changes in color when an example of a scanned image is printed. [Figure 20] FIG. 10 is a diagram for explaining an example of human-perceived saturation of prints when averaging is not performed. [Figure 21] 10A and 10B are diagrams for explaining examples of saturation perceived by a person when averaging is performed; [Figure 22] FIG. 10 is a diagram for explaining saturation of another example of a digital manuscript. [Figure 23] FIG. 10 is a diagram for explaining saturation at each position when printing another example of a digital manuscript. [Figure 24] FIG. 10 is a diagram for explaining averaging in another example of a digital manuscript. [Figure 25] 10A and 10B are diagrams for explaining changes in the color gamut during subcopying. [Figure 26] 10A and 10B are diagrams for explaining the effect of area division in color degeneration correction. DETAILED DESCRIPTION OF THE INVENTION

[0009] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention claimed. Although multiple features are described in the embodiments, not all of these multiple features are necessarily essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same reference numerals are used to designate the same or similar components, and redundant explanations will be omitted.

[0010] [Embodiment 1] The terms used in this specification are defined as follows.

[0011] [Color gamut] The color reproduction gamut according to this embodiment refers to the range of colors that can be reproduced in an arbitrary color space. Hereinafter, the color reproduction gamut is also referred to as the color reproduction range, color gamut, or gamut. The color gamut volume is an index that represents the width of this color reproduction gamut. The color gamut volume is a three-dimensional volume in an arbitrary color space.

[0012] There may be cases where the chromaticity points constituting the color gamut are discrete. For example, a specific color gamut may be represented by 729 points on the CIE-L*a*b* scale, and points between them may be calculated using known interpolation methods such as tetrahedral interpolation or cubic interpolation. In such cases, the corresponding color gamut volume may be calculated and accumulated by calculating the volume of a tetrahedron or cube on the CIE-L*a*b* scale that constitutes the color gamut, depending on the interpolation method used.

[0013] The color gamut and color region according to this embodiment will be described using an example in which the color gamut in the CIE-L*a*b* space is used, but they are not particularly limited to this and a different color gamut may be used as long as similar processing is possible.Similarly, the numerical values ​​of the color gamut according to this embodiment indicate the volume when cumulatively calculated in the CIE-L*a*b* space on the premise of tetrahedral interpolation, but they are not particularly limited to this.

[0014] [Gamut Mapping] Gamut mapping according to this embodiment refers to the process of converting colors in one color gamut into colors in a different color gamut. For example, mapping colors in an input color gamut to an output color gamut is called gamut mapping, but conversion within the same color gamut is not called gamut mapping. In gamut mapping, maps such as Perceptual, Saturation, or Colorimetric in an ICC profile may be used. Hereinafter, the term "mapping process" will refer to the mapping process in gamut mapping.

[0015] The mapping process may be performed using a single 3DLUT (lookup table). The mapping process may also be performed after color space conversion to a standard color space. For example, if the input color space is sRGB, the input color may be converted to a color in the CIE-L*a*b* color space, and then the input color may be mapped to the output color gamut in the CIE-L*a*b* color space. This mapping process may be a 3DLUT process or a process using a conversion formula. The mapping process and the conversion process from the input color space to the output color space may also be performed simultaneously. For example, the input color space may be sRGB, and the output color may be converted to RGB values ​​or CMYK values ​​specific to the image forming device.

[0016] [Manuscript data] The original data in this embodiment refers to the entire input digital data to be processed, and is assumed to consist of one to multiple pages. Single-page original data may be held as image data or expressed as drawing commands. If the original data is expressed as drawing commands, it may be rendered and converted into image data before being processed. Image data is made up of multiple pixels arranged two-dimensionally. The pixels hold information representing colors in a color space. Information representing colors may include RGB values, CMYK values, K values, CIE-L*a*b* values, HSV values, or HLS values.

[0017] [Color difference reduction, color degeneration] In this embodiment, when gamut mapping is performed on any two colors, the phenomenon in which the distance between the colors after mapping in a specified color space becomes smaller than the distance between the colors before mapping is simply referred to as "color difference reduction." When color difference reduction occurs, it is possible that colors that were recognized as different before mapping will be recognized as the same color after mapping due to the reduced color difference after mapping. Hereinafter, such a phenomenon in which color difference reduction occurs and the color difference after conversion falls below a predetermined threshold will be referred to as "color degeneration." The threshold used here will be described later.

[0018] Color degeneration will be described below using a specific example. Assume that a digital document contains colors A and B, and that mapping these colors to the printer's color gamut converts color A to color C and color B to color D. In this case, color degeneration is defined as occurring when the distance between colors C and D is smaller than the distance between colors A and B, and the color difference between colors C and D is less than a predetermined threshold. When color degeneration occurs, colors that were perceived as different in the digital document are perceived as the same color when printed. For example, when printing a graph in which different colors are used to indicate different items, if the different colors are perceived as the same color due to color degeneration, different items may be mistakenly recognized as the same item.

[0019] In this embodiment, any color space may be used as the predetermined color space for calculating the distance between colors. For example, the sRGB color space, Adobe RGB color space, CIE-L*a*b* color space, CIE-LUV color space, XYZ color system color space, xyY color system color space, HSV color space, or HLS color space may be used to calculate the color difference.

[0020] [Information processing device] 1 is a block diagram showing an example of the configuration of an information processing apparatus and an image forming apparatus according to this embodiment. In this embodiment, a PC, a tablet, a server, or an image forming apparatus can be used as the information processing apparatus 101. The information processing apparatus 101 includes a CPU 102, a RAM 103, a storage medium 104, an accelerator 105, and a transfer I / F 106.

[0021] The CPU 102 is a central processing unit that executes various processes by loading programs stored in a storage medium 104, such as a HDD or ROM, into a RAM 103 serving as a work area and executing the programs. For example, the CPU 102 acquires commands based on user input acquired via a HID (Human Interface Device) I / F (not shown). The CPU 102 then executes various processes in accordance with the acquired commands or programs stored in the storage medium 104. The CPU 102 also performs predetermined processing on manuscript data acquired via a transfer I / F 106 in accordance with the programs stored in the storage medium 104. The CPU 102 then displays the results of such processing and various information on a display (not shown) and transmits the results to an external device via the transfer I / F 106.

[0022] The accelerator 105 is hardware capable of executing information processing faster than the CPU 102. The accelerator 105 is activated when the CPU 102 writes parameters and data required for information processing to a predetermined address in the RAM 103. After reading the parameters and data, the accelerator 105 executes information processing on the data. The accelerator 105 according to this embodiment is not an essential element, and equivalent processing may be executed by the CPU 102. Specifically, the accelerator is a GPU or a specially designed electric circuit. The parameters may be stored in the storage medium 104 or may be acquired from outside via the transfer I / F 106.

[0023] The image forming apparatus 108 is an apparatus that forms an image on a print medium. The image forming apparatus 108 according to this embodiment includes an accelerator 109, a transfer I / F 110, a CPU 111, a RAM 112, a storage medium 113, a print head controller 114, and a print head 115.

[0024] The CPU 111 is a central processing unit that performs overall control of the image forming apparatus 108 by reading out programs stored in a storage medium 113 into a RAM 112 that serves as a work area and executing the programs. The accelerator 109 is hardware that can execute information processing faster than the CPU 111. The accelerator 109 is activated when the CPU 111 writes parameters and data required for information processing to a predetermined address in the RAM 112. After reading the parameters and data, the accelerator 109 executes information processing on the data. The accelerator 109 according to this embodiment is not an essential element, and equivalent processing may be executed by the CPU 111. The parameters may be stored in the storage medium 113, or may be stored in storage (not shown) such as a flash memory or a HDD.

[0025] Here, we will explain the information processing performed by the CPU 111 or the accelerator 109. The information processing performed by the CPU 111 or the accelerator 109 according to this embodiment is, for example, processing to generate data indicating the ink dot formation positions in each scan by the recording head 115 based on the acquired print data.

[0026] In the present embodiment, the information processing device 101 performs each process including the color conversion process and quantization process described below, and the image forming device 108 performs image formation process based on print data generated by these processes. However, as long as similar functions can be implemented, the processes performed by the information processing device 101 and the image forming device 108 are not limited to this, and some or all of the processes described as being performed by the information processing device 101 may be executed by the image forming device 108. For example, the color conversion process and quantization process may be performed by the image forming device 108.

[0027] When input image data is determined to be a scanned image of a print image, the information processing device 101 according to this embodiment converts colors expressed in a first color gamut contained in the image data into colors expressed in a second color gamut different from the first color gamut. Hereinafter, the term "color conversion processing" will refer to such color conversion processing between color gamuts performed by the information processing device 101. In this embodiment, the color conversion processing performed by the information processing device 101 converts the input image data into data (ink data) indicating the color and density of ink for each pixel to be printed by the image forming device 108.

[0028] For example, the acquired print data includes image data representing an image. If the image data represents an image in color space coordinates (here, sRGB) that are the representation colors of the monitor, the data representing the image in those color coordinates (R, G, B) is converted by color conversion processing into ink data (here, CMYK) handled by the image forming device 108. The color conversion method according to this embodiment is realized by known conversion processing, such as matrix calculation processing, or processing using a three-dimensional LUT or a four-dimensional LUT.

[0029] The image forming apparatus 108 according to this embodiment uses, as an example, black (K), cyan (C), magenta (M), and yellow (Y) inks. Therefore, image data of RGB signals is converted into image data consisting of 8-bit color signals for K, C, M, and Y, respectively. Each color signal corresponds to the amount of ink to be applied. While the following description uses an example in which four ink colors, K, C, M, and Y, are used, other ink colors, such as light-density light cyan (Lc), light magenta (Lm), or gray (Gy), may be used to improve image quality. In this case, ink signals corresponding to the colors are generated.

[0030] After color conversion processing, the information processing device 101 performs quantization processing on the ink data. The quantization processing according to this embodiment is processing to reduce the number of gradation levels of the ink data. The information processing device 101 according to this embodiment performs quantization using a dither matrix in which threshold values ​​for comparison with the ink data value for each pixel are arranged. After quantization processing, binary data is ultimately generated that indicates whether or not a dot will be formed at each dot formation position.

[0031] After the binary data to be used for printing is generated, the binary data is transferred to the printhead 115 by the printhead controller 114. At the same time, the CPU 111 performs printing control via the printhead controller 114 to operate a carriage motor that operates the printhead 115 and also to operate a transport motor that transports the print medium. The printhead 115 scans over the print medium and simultaneously ejects ink droplets onto the print medium to form an image.

[0032] The information processing device 101 and the image forming device 108 are connected via a communication line 107. In this embodiment, a local area network is used as the communication line 107, but the communication line 107 is not particularly limited to this as long as it can connect the information processing device 101 and the image forming device 108 so that they can communicate with each other. The communication line 107 may be, for example, a USB hub, a wireless communication network using a wireless access point, or a connection using a Wi-Fi Direct (registered trademark) communication function.

[0033] The following description will be given assuming that the print head 115 has print nozzle arrays for four color inks: cyan (C), magenta (M), yellow (Y), and black (K). Figure 14 is a diagram for explaining the print head 115 according to this embodiment. In the image forming process according to this embodiment, an image is formed in a unit area for one nozzle array by multiple scans N times.

[0034] The print head 115 includes a carriage 116, nozzle arrays 115k, 115c, 115m, and 115y, and an optical sensor 118. The carriage 116, which carries the four nozzle arrays 115k, 115c, 115m, and 115y and the optical sensor 118, can move back and forth along the X direction (main scanning direction) in the figure by the driving force of a carriage motor transmitted via a belt 117. As the carriage 116 moves in the X direction relative to the print medium, ink droplets are ejected from each nozzle of the nozzle array in the direction of gravity (-Z direction in the figure) based on print data. This forms an image corresponding to 1 / N main scans on the print medium placed on a platen 119. After one main scan is completed, the print medium is transported along a transport direction (-y direction in the figure) intersecting the main scanning direction by a distance corresponding to the width of 1 / N main scans. Through these operations, an image corresponding to the width of one nozzle array is formed over N scans. By alternately repeating such main scanning and transporting operations, an image is gradually formed on the printing medium, and in this way, it is possible to control the image formation in a predetermined area so as to be completed.

[0035] The color degeneration described above may occur not only when printing a digital document created on a PC or the like, but also when printing image data obtained by scanning a printed image on paper (hereinafter, such scanned data may be referred to as a "read image") as a document. For example, color degeneration may occur when a scanned image of a document printed on paper with relatively high brightness / saturation, such as photo paper, is printed on paper with relatively low brightness / saturation, such as plain paper. Color degeneration may also occur when a scanned image of a document printed on plain paper with a relatively high brightness / saturation, such as electrophotography or offset printing, is printed on plain paper with a relatively low brightness / saturation, such as inkjet printing. In such cases, the information processing device 101 according to this embodiment can perform a mapping process (color conversion process) described below with reference to FIG. 4 as a color conversion process to reduce the degree of color degeneration.

[0036] On the other hand, if a scanned image is generated using a paper document that has been mapped to the printer's color gamut and then printed, it is possible that the colors in the scanned image are already contained within the printer's color gamut. In such a situation, it is possible that a satisfactory conversion result can be obtained without repeatedly performing the same mapping process. Priorities when printing vary depending on the user and conditions, such as when emphasizing color distinctiveness after printing (reducing the degree of color degeneration) or when preserving the color tones in printing as much as possible, and it is desirable to be able to perform appropriate processing.

[0037] The information processing device 101 according to this embodiment determines whether an input image is a scanned image (an image obtained by scanning a printed image), and selectively changes the color conversion process depending on the determination. In particular, when the information processing device determines that the input image is a scanned image, it performs a mapping process (color conversion process) as the color conversion process, which will be described later with reference to FIG. 4 etc.

[0038] Furthermore, the information processing device 101 according to this embodiment determines whether the input image contains a predetermined threshold or more of colors outside the first color gamut, and can selectively change the color conversion process according to the determination.

[0039] 2 is a flowchart showing an example of the overall processing performed by the information processing device 101 according to this embodiment. For color combinations that cause color degeneration due to color conversion processing, the information processing device 101 according to this embodiment can reduce the degree of color degeneration by increasing the distance between colors in the color space after color conversion. The processing of FIG. 2 is realized, for example, by the CPU 102 reading a program stored in the storage medium 104 into the RAM 103 and executing it. The processing of FIG. 2 may also be executed by the accelerator 105. It is assumed that the processing of FIG. 2 is executed in response to input of image data.

[0040] In S101, the CPU 102 acquires manuscript data to be used for printing. In this embodiment, it is assumed that the manuscript data stored in the storage medium 104 is acquired, but manuscript data may also be input from an external device via the transfer I / F 106. Next, the CPU 102 acquires image data including color information from the acquired manuscript data. The CPU 102 according to this embodiment acquires values ​​representing colors expressed in a predetermined color space, which are included in the image data. Examples of values ​​representing colors include sRGB data, Adobe RGB data, CIE-L*a*b* data, CIE-LUV data, XYZ color system data, xyY color system data, HSV data, and HLS data.

[0041] The original data used here is an image including pixels containing color information of a first color and pixels containing color information of a second color, and the color information of such an image is obtained as the original data. In the following, such first and second colors are used in each process as unique colors described later with reference to Figure 4, etc., but the colors used in the process are not limited to these two, and three or more colors may be used.

[0042] In S102, the CPU 102 determines whether the document data acquired in S101 is a read image. If it is a read image, the process proceeds to S103, and if not, the process proceeds to S109.

[0043] The process of determining whether the document data is a scanned image will be described below. CPU 102 can determine whether the document data is a scanned image, for example, based on information attached to the document data. For example, when document data is acquired from a scanner device (not shown) or a camera device (not shown) via transfer I / F 106, the device name or device class of the image acquisition source may be acquired during the communication, and the above-mentioned determination may be made based on the device name or device class. Also, for example, when image forming apparatus 108 is an MFP (Multi Function Printer) equipped with a scanner device, when an operation indicating acquisition of a scanned image (e.g., pressing a copy button) is performed on a UI (not shown), the document data may be determined to be a scanned image.

[0044] The generation of a read image by scanning can be performed, for example, by a scanner-type reading device that reads a paper document by moving a one-dimensional optical line sensor relative to the paper document in a direction approximately perpendicular to the sensor, or a camera-type reading device that reads information on the paper document by reducing and projecting it onto a two-dimensional optical sensor using a lens. When acquiring document data from such a reading device, the CPU 102 can also acquire the device name or device class of the reading device as described above, as information indicating that the document data is a read image.

[0045] In S103, CPU 102 determines whether the input image data includes a predetermined threshold number or more (here, 1 or more) of colors outside the first color gamut. Here, information indicating the output color gamut of image forming device 108 is stored in advance in storage medium 104 as the first color gamut, and it is determined whether the image data includes such colors outside the first color gamut. For example, CPU 102 can check each pixel value of the input image data and determine whether any of the pixel values ​​includes a color outside the first color gamut. Here, the information indicating the output color gamut of image forming device 108 can be a three-dimensional lookup table (LUT) that receives RGB input pixel values ​​(Rin, Gin, Bin) as input and outputs 0 if the pixel value is within the first color gamut and 1 if the pixel value is outside the first color gamut. In this case, if the input values ​​Rin, Gin, and Bin each have 256 gradations, a table with 256 x 256 x 256 output values, totaling 16,777,216 sets, is used (hereinafter, such a table may be referred to as Table1

[0256]

[0256]

[0256] ).

[0046] In S104, the CPU 102 determines whether the determination in S103 is YES or NO. If the determination is YES, the process proceeds to S105, and if the determination is NO, the process proceeds to S109.

[0047] In S105, the CPU 102 performs averaging processing on the input image data. Such averaging processing will be described below with reference to FIGS.

[0048] First, an example of digital manuscript data used to print a paper manuscript scanned when generating a read manuscript will be described with reference to Fig. 16. In Figs. 16 to 24, an example will be described in which a read manuscript is generated by scanning a printout of digital manuscript data (solid manuscript) that is entirely in one color.

[0049] Saturation example 1603 is a diagram showing the evaluation of color saturation for each position of a line cut in the conveyance direction of printing on such a solid original. In FIGS. 16 to 24, saturation examples including saturation example 1603 show saturation values ​​when the maximum value of saturation expressed in the color gamut of image forming device 108 (for example, the C value in the L*C*h* color space) is set to 100%. Hereinafter, when an expression such as "saturation is XX%" is used, it refers to an evaluation value when the maximum value of such saturation is set to 100%. In this case, since the solid original is a single color all over, the evaluation of saturation is the same at every position, and saturation is 50% at every position.

[0050] 17 is a diagram illustrating the ink density at each actual position when the digital manuscript data shown in saturation example 1603 is printed. Saturation example 1701 shows ink saturation information for each position on the printed image when printing is performed on paper using the ink ejection pattern shown in pixel group 1601. Here, ink is ejected alternately for each printing dot unit, and the saturation at the ink ejection points is 100%. "Saturation information" is defined as information that indicates an evaluation of the saturation (i.e., information corresponding to the amount of ink present) recognized at that pixel position (here, for each position of a line cut in the conveyance direction during printing).

[0051] In the printing example described with reference to FIG. 17, ink is not ejected at a density corresponding to the saturation (print saturation) of the document to be printed, but rather the intervals at which ink is ejected are adjusted (providing dots that eject ink and do not eject ink), thereby adjusting the overall saturation. In the example of FIG. 16, the saturation of the digital document data is 50%, so ink is ejected at 50% of the dot units to be printed. Pixel group 1601 is a diagram illustrating an example of the intervals at which ink is ejected by a certain nozzle. As described above, since the saturation of the digital document data is 50%, ink ejection is alternately switched on and off in dot units. Furthermore, since ejection is switched on and off in the same way for all nozzles included in the nozzle array, there are rows where ink is ejected and rows where ink is not ejected for each printed line. In FIGS. 16 to 24, the pixel group 1601 and reading interval 1602 are the same. The reading interval 1602 will be described later.

[0052] FIG. 18 is a diagram illustrating a problem that occurs when an image is generated by scanning an actual printed image such as the saturation example 1701 as a document. The scanning interval 1602 is a diagram illustrating the width of one pixel, which is the minimum unit of scanning when creating a scanned document, and is written so that the horizontal scale on the print medium corresponds to the pixel group 1601. In the example of FIG. 18, the width of one scanned pixel is larger than one dot of the pixel group 1601. Therefore, even when scanning a document in which ejection is alternately turned on and off as in the saturation example 1701, the ejection cycle unit and the scanning unit may not match, resulting in a problem that the saturation of each pixel in the generated document data may differ from the intended value. The saturation example 1801 in FIG. 18 illustrates saturation information for each position in the scanned image when the saturation of each pixel in the scanned image varies due to such a mismatch between the ejection cycle unit and the scanning unit.

[0053] Such a mismatch between the ejection cycle unit and the scanning unit can occur even when the assumed resolutions of the printing device and the scanning device are the same. For example, this can occur when the angle of the scanner sensor array during printing differs from the angle of the halftone screen used on the electrophotographic side, or when the angle of the document placed on the scanner table differs from the angle of the scanner sensor array. This can also occur when, for example, the paper being fed or transported during scanning is skewed, when the camera capturing the document during scanning is tilted, or when the document is tilted relative to the orientation of the camera during scanning.

[0054] 19 and 20 are diagrams illustrating an example of color changes that occur when a scanned image having saturation information such as that shown in saturation example 1801 is printed. In the example of FIG. 19, the image forming apparatus 108, which performs printing using an inkjet method, is assumed to be capable of representing colors with a saturation of up to 60%. In this case, when a scanned document corresponding to saturation example 1801 is printed, the saturation at some positions will exceed the range that can be represented by the image forming apparatus 108. In saturation example 1901, the range that can be represented by the image forming apparatus 108 in the scanned image is indicated by hatching, and the range that cannot be represented is indicated by a white rectangle.

[0055] 20 is a diagram illustrating the saturation perceived by a user who actually visually views an image scanned according to the saturation example 1801 when it is printed by the image forming apparatus 108. Saturation example 2001 simulates the saturation perceived by the user at each position when printing is performed with the saturation of the hatched range shown in saturation example 1901. Here, the saturation Out[x] perceived by the user at position x is expressed as Out[x] = (In[x] + In[x+1]) ÷ 2. In[x] is the saturation at position x in saturation example 1901.

[0056] The digital manuscript data shown in the saturation example 1603 is image data with a uniform saturation of 50% throughout. On the other hand, in the saturation example 2001 in Figure 20, the saturation is not uniform across positions, resulting in a difference of approximately 20% between the positions where the saturation is maximum and minimum. This is due to the mismatch between the ejection cycle unit and the scanning unit used when generating the scanned image, as described above. It is undesirable that, even though the original digital manuscript had the same color, the scanned image produced from that digital manuscript exhibits significant color variations for each scanned pixel. In particular, when performing color reduction correction (described later) using an image with such color variations, gamut mapping may result in unnecessary color reduction correction.

[0057] From this perspective, the information processing device 101 applies filter processing to the image. Next, the information processing device 101 uses the image that has been subjected to such filter processing as input image data in Fig. 4 (described later), and similarly corrects the conversion parameters used in the color conversion processing so that the color difference between color 403 and color 404 after color conversion becomes larger (details of this processing will be described later). In other words, the colors 403 and 404 within the color gamut 401 shown in Fig. 4 (described later) are assumed to be the colors of the image averaged by the filter processing.

[0058] FIG. 21 is a diagram illustrating such filtering. Here, a filtered scanned image, such as that shown in saturation example 2101, is generated by filtering the scanned image shown in saturation example 1801. The filtering process according to this embodiment averages the saturations of multiple adjacent pixels. Here, for a given pixel of interest, averaging is performed so that the average value of the saturations of that pixel and its neighboring pixel in the transport direction becomes the saturation of the pixel of interest. Note that this averaging is merely an example; for example, three or more neighboring pixels may be averaged, or a weighted average may be performed according to the distance from the pixel of interest. While the averaging of pixels arranged in a straight line, such as that shown in saturation example 1801, may be performed within any range commonly used in filtering, such as adjacent pixels on an actual scanned document or a 3×3 pixel range.

[0059] In the saturation example 2101, the averaging process reduces the amount of change in saturation from position to position compared to the saturation example 2001, and the difference in saturation between the position where saturation is maximum and the position where saturation is minimum is reduced from 20% to 10%. Furthermore, the saturation of all pixels is kept below 60%, which is within the range that can be represented by the image forming device 108. In this way, by performing the averaging process on pixel values, it is possible to prevent a color that was within the printer's color gamut from becoming a color outside the printer's color gamut in the scanned image due to a saturation deviation that occurs in the process of generating the scanned image.

[0060] It is possible that the stronger the averaging process, the lower the contrast will be as a result of averaging the edges of characters and the like. Taking into consideration such a decrease in contrast and the improvement in the quality of the scanned image as described above by the averaging process, it is possible to set the averaging strength to any strength. For example, the averaging strength can be lowered by increasing the weight of the pixel of interest in the averaging process, and the averaging strength can be raised by increasing the weight of pixels other than the pixel of interest (pixels adjacent to the pixel of interest when averaging two adjacent pixels).

[0061] 22 is a diagram illustrating a printing pattern for a solid document in which all pixels of the digital document have a saturation of 100%. Saturation example 2202 shows ink saturation information for each position in the printed image when printing is performed on paper using an ink ejection pattern such as that shown in pixel group 2201. In this example, ink is ejected in all printing dot units, and the saturation is 100% at the ink ejection locations (all locations in this case).

[0062] 23 is a diagram for explaining a read image that generates a printed image as an original, such as the saturation example 2202. Here, scanning is performed at the read interval 1602, as in the example of the saturation example 1801, but since there is no change in saturation from position to position in the saturation example 2202, there is no fluctuation in saturation from position to position, unlike in the saturation example 1801.

[0063] Fig. 24 is a diagram illustrating an example of color changes that occur when printing a scanned image having saturation information such as that shown in saturation example 2202. As explained in Fig. 19, the image forming device 108 can express colors up to a saturation of 60%, and in this case, the saturation is 100% at all pixel positions, so the scanned image is printed with a saturation of 60% at all pixel positions.

[0064] In this way, the averaging process can prevent colors that were originally within the printer's color gamut from becoming colors outside the color gamut in a scanned document such as that shown in saturation example 1801. Furthermore, even when a scanned document such as that shown in saturation example 2202 is used, the averaging process does not result in a decrease in quality, such as an increase in colors that fall outside the color gamut.

[0065] Although the filtering process (averaging process) is described here as being performed in S105, such averaging process does not need to be performed at this timing, and may be performed, for example, between S102 and S103.

[0066] In S106, the CPU 102 performs color conversion on the image data that has been averaged, using conversion parameters previously stored in the storage medium 104. In this embodiment, the conversion parameters are a gamut mapping table, and gamut mapping is performed on the color information of each pixel of the image data using the gamut mapping table as the color conversion process. The image data after gamut mapping is stored in the RAM 103 or the storage medium 104.

[0067] The CPU 102 according to this embodiment uses a three-dimensional LUT as a gamut mapping table. By referencing the gamut mapping table, the CPU 102 can calculate a combination of output pixel values ​​(Rout, Gout, Bout) resulting from gamut mapping for a combination of input pixel values ​​(Rin, Gin, Bin). When the input values ​​Rin, Gin, and Bin each have 256 gradations, the gamut mapping table can be Table 1

[0256]

[0256]

[0256] [3], which has a total of 16,777,216 sets of output values ​​(256 x 256 x 256). The color conversion process may be realized, for example, by performing the processes shown in the following equations (1) to (3) on each pixel of an image composed of RGB pixel values ​​of the image data input in S101. Rout = Table1[Rin][Gin][Bin][0]...(Formula 1) Gout = Table1[Rin][Gin][Bin][1]...(Formula 2) Bout = Table1[Rin][Gin][Bin][2]...(Formula 3)

[0068] The number of grids in the gamut mapping table is not limited to 256. For example, the number of grids may be reduced from 256 (to 16, for example) so that table values ​​for multiple grids are stored and output values ​​are determined. In this way, known processes performed when using an LUT table, such as reducing the table size, may be optionally performed.

[0069] In S107, the CPU 102 creates a color degeneration corrected table based on the image data input in S101 and the image data and gamut mapping table after gamut mapping performed in S106. The format of the color degeneration corrected table is the same as the format of the gamut mapping table. The processing performed in S107 and the color degeneration corrected table will be described later with reference to FIGS. 3 and 4.

[0070] In S108, the CPU 102 receives the image data input in S101 and generates color-reduction-corrected image data that has been subjected to color-reduction correction using the color-reduction-corrected table created in S107. The generated color-reduction-corrected image data is stored in the RAM 103 or the storage medium 104. When S108 is completed, the process proceeds to S110.

[0071] In S109, the CPU 102 performs color conversion on the image data input in S101 using conversion parameters previously stored in the storage medium 104, and stores the generated converted image data in the RAM 103 or the storage medium 104. When S109 is completed, the process proceeds to S110. The process in S109 is performed in the same manner as S106, except that the image data to be color converted is the image data input in S101.

[0072] In S107, the CPU 102 outputs the corrected image data stored in S108 or S109 from the information processing device via the transfer I / F 106, and the processing in Fig. 2 ends. Note that the color conversion processing in gamut mapping may be mapping from colors in the sRGB color space to colors in the color reproduction color gamut of printing by the image forming device 108. This type of processing makes it possible to suppress a decrease in saturation and color difference due to gamut mapping into the color reproduction color gamut of the image forming device 108. Furthermore, parameters may be selected in gamut mapping that emphasize tone reproduction.

[0073] In the above description, the condition for determining in S103 that an image does not contain a predetermined number of colors outside the first color gamut or more is that not even one pixel contains a color outside the first color gamut (i.e., the predetermined threshold number is one pixel). However, this determination is not particularly limited as long as it can be determined that the input image does not generally contain such colors outside the first color gamut. For example, this predetermined threshold may be a fixed number or may be set as a predetermined percentage of the total number of pixels in the image. By determining that an image does not contain colors outside the first color gamut when the number of colors outside the first color gamut is negligibly small, the influence of erroneous determination due to dust or other impurities in the image can be reduced. Furthermore, although the number of such impurities is likely to increase as the image size increases, the influence of such dust or impurities due to image size can be reduced by setting the threshold number used in this determination as a predetermined percentage of the total number of pixels in the image.

[0074] Furthermore, while the above-mentioned example table, Table 1

[0256]

[0256]

[0256] , has been described as outputting 1 when an out-of-gamut color is input, it may instead output a color difference ΔE from the color with the smallest color difference among the colors within the gamut, and determine that the image does not contain a first out-of-gamut color if the largest ΔE among the outputs for each pixel of the input image is equal to or less than a predetermined threshold. This determination can also be achieved by creating an LUT so that the output in Table 1

[0256]

[0256]

[0256] is 1 when the color difference ΔE between the input color and the color with the smallest color difference among the colors within the gamut exceeds a predetermined threshold. Note that Euclidean distance is used here as the color difference.

[0075] The color degeneration corrected table created in S107 will be described below with reference to Fig. 3. Fig. 3 is a flowchart showing an example of the process of creating the color degeneration corrected table in S107. The process in Fig. 3 is realized, for example, by the CPU 102 reading a program stored in the storage medium 104 into the RAM 103 and executing it. The process in Fig. 3 may also be executed by the accelerator 105.

[0076] In S201, the CPU 102 detects all unique colors contained in the image data input in S101. Here, a unique color refers to a color detected in the image data, and colors with different pixel values ​​are detected as different unique colors. The unique color detection results are stored as a unique color list in the RAM 103 or the storage medium 104. While unique colors are specified by components such as RGB, a single unique color may have a range for each RGB component, and the content of the unique color may vary depending on the color detection method. The unique color list is initialized at the start of S201. The CPU 102 repeats the unique color detection process for each pixel in the image data, determining whether the color of each pixel is different from any unique colors previously detected for all pixels included in the image data. Colors determined to be unique through this process are stored as unique colors in the unique color list.

[0077] If the input image data is sRGB, each pixel has 256 gradations, resulting in a total of 16,777,216 unique colors (256 x 256 x 256). Detecting all of these colors as unique colors and storing them in a unique color list would result in an enormous number of colors, slowing down processing speed. From this perspective, CPU 102 may perform unique color detection discretely. For example, CPU 102 may detect unique colors after reducing the number of 256 gradations to 16 gradations. In such a case, CPU 102 may group adjacent 16 colors from the 256 gradations into 16 gradations. This type of color reduction processing allows unique colors to be detected from a total of 4,096 colors (16 x 16 x 16), thereby improving processing speed.

[0078] In S202, the CPU 102 detects, based on the unique color list detected in S201, color combinations that cause color degeneration among the combinations of unique colors contained in the image data. The processing performed in S202 will be described using the schematic diagram of FIG. 4. In FIG. 4, the color gamut of the input image data before color conversion processing is shown as color gamut 401, and the color gamut after conversion by gamut mapping is shown as color gamut 402, on a plane using two axes, the L* axis and the C* axis, in the CIE-L*a*b* color space. The input image data includes color 403 (first color) and color 404 (second color), which are shown in the color gamut 401. Color 405 and color 406 are colors in the color gamut 402. Color 405 is the color obtained when gamut mapping is performed on color 403, and color 406 is the color obtained when gamut mapping is performed on color 404.

[0079] The CPU 102 according to this embodiment determines that color degeneration has occurred when the color difference 408 between colors 405 and 406 is smaller than a predetermined threshold. Here, it is assumed that color degeneration has occurred when the color difference 408 between colors 405 and 406 is smaller than the predetermined threshold and also when the color difference 408 is smaller than the color difference 407 between colors 403 and 404. The threshold used here can be set arbitrarily according to user-specified conditions. This threshold may be a fixed value or may vary depending on the color combination. For example, the CPU 102 may use the color difference between the combined colors before conversion (here, the color difference 407 between colors 403 and 404) as the predetermined threshold. The CPU 102 repeats this determination process for all color combinations in the unique color list.

[0080] In this embodiment, the color difference between two colors is calculated as the Euclidean distance in the color space. Because the CIE-L*a*b* color space is a visually uniform color space, the Euclidean distance can be approximated as the amount of color change. Therefore, humans tend to perceive colors as closer when the Euclidean distance in the CIE-L*a*b* color space is small, and as the Euclidean distance is large, they tend to perceive colors as farther apart. Below, we will explain the case where the Euclidean distance in the CIE-L*a*b* color space (hereinafter referred to as color difference ΔE) is used as the color difference. Color information in the CIE-L*a*b* color space is represented in a color space with three axes: L*, a*, and b*. Color 403 is represented by L403, a403, and b403. Color 404 is represented by L404, a404, and b404. Color 405 is represented by L405, a405, and b405. Color 406 is represented by L406, a406, and b406. If the input image data is represented in another color space, it may be converted to the CIE-L*a*b* color space using a known color space conversion technique, or subsequent processing may be performed in that color space as is. The formulas for calculating color difference ΔE407 and color difference ΔE408 are as follows:

number

[0081] The CPU 102 determines that color degeneration has occurred if the color difference ΔE408 is smaller than a threshold value. Based on human color difference identification, if the converted color difference ΔE408 is such that different colors can be distinguished, it can be determined that color degeneration has not occurred and that color difference correction is not necessary. From this perspective, the threshold value used here can be, for example, 2.0. As described above, this threshold value may also be the same as ΔE407. The CPU 102 may also determine that color degeneration has occurred if the color difference ΔE408 is smaller than 2.0 and smaller than the color difference ΔE407.

[0082] In S203, the CPU 102 determines whether the number of color combinations determined in S202 to cause color degeneration is zero. If the number is zero, the process proceeds to S204; if not, the process proceeds to S205. In S204, the CPU 102 determines that the input image data is an image that does not require color degeneration correction, and ends the process of FIG. 2.

[0083] Note that, in the above description, it has been assumed that an image is determined to not require color degeneration correction if the number of colors determined to cause color degeneration is zero, but the processing is not particularly limited to this. For example, the CPU 102 may determine whether an image does not require color degeneration based on the number of color combinations that cause color degeneration relative to the total number of unique color combinations. In this case, the CPU 102 may determine that an image requires color degeneration correction if, for example, the number of color combinations that cause color degeneration is more than half of the total number of unique color combinations. This processing allows a setting to be made so that color degeneration correction is performed only when it is determined that color degeneration correction is more necessary.

[0084] In S205, the CPU 102 performs color degeneration correction on the color combination that is subject to color degeneration, based on the input image data and the post-degeneration correction table.

[0085] The color degeneration correction performed by the CPU 102 according to this embodiment will be described in detail with reference to FIG. 4. In FIG. 4, it is determined that color degeneration will occur in the color combination of color 403 and color 404. Therefore, the CPU 102 according to this embodiment corrects the conversion parameters used in the color conversion process so that the color difference between color 403 and color 404 after color conversion becomes larger. That is, the CPU 102 can correct the conversion parameters so as to increase the inter-color distance in a predetermined color space after color conversion. This correction can reduce the degree of color degeneration. Here, the CPU 102 sets an inter-color distance (discriminable inter-color distance) at which colors can be distinguished as different based on human visual characteristics, and corrects the conversion parameters of the color conversion process so that the post-conversion color difference between the two colors will be that inter-color distance.

[0086] Here, the CPU 102 sets the above-mentioned discriminable color distance as the color distance at which the color difference ΔE is 2.0 or more. The conversion parameters may also be corrected so that the color difference between the two converted colors is approximately the same as the color difference Δ407 between the colors 403 and 404 before conversion.

[0087] The color degeneration correction process is repeated for all color combinations that will cause color degeneration. The results of the color degeneration correction for all color combinations are stored in a table in S206, which will be described later, in which the pre-correction color information and the post-correction color information are associated with each other. The table in which the corresponding parameters have been corrected in this manner is referred to as the post-color degeneration correction table. In the example shown in FIG. 4, the color information is expressed as color information in the CIE-L*a*b* color space. Therefore, the CPU 102 may convert the color information to be stored in the post-color degeneration correction table into color information in the color spaces of the input image data and the image data at the time of output before storing the information. In this case, the pre-correction color information is converted into color information in the color space of the input image data, and the post-correction color information is converted into color information in the color space of the output image data, before being stored in the post-color degeneration correction table.

[0088] Next, such color degeneration correction processing will be described in detail. The CPU 102 calculates the color difference correction amount 409 necessary to make the converted color difference ΔE 408 a discriminable color distance. In this embodiment, the discriminable color distance is set to a color difference ΔE of 2.0, and the difference between this value 2.0 and the color difference ΔE 408 is calculated as the color difference correction amount 409. Alternatively, the CPU 102 may calculate the color difference correction amount 409 as the difference between the color difference ΔE 407 and the color difference ΔE 408.

[0089] In FIG. 4 , color 410 is shown as a color obtained by correcting color 405 by color difference correction amount 409 on an extension line from color 406 to color 405 in the CIE-L*a*b* color space. In this embodiment, the color 410 calculated by the color conversion process after color degeneration correction is described as a color existing on an extension line from color 406 to color 405. However, this is not particularly limited as long as the color difference from color 406 to color 410 is equal to or greater than the sum of color difference ΔE 408 and color difference correction amount 409. For example, color 410 may be a color located at a distance from color 406 in the CIE-L*a*b* color space that is equal to the sum of color difference ΔE 408 and color difference correction amount 409 in any one of the lightness direction, saturation direction, and hue angle direction. Furthermore, color 410 may be a color that is separated from color 406 by the sum of color difference ΔE 408 and color difference correction amount 409, taking into consideration not only one direction but also the lightness direction, saturation direction, and hue angle direction.

[0090] In the example of FIG. 4, the color conversion parameters were corrected so that the converted color of color 403 would change from color 405 to color 410. However, as long as the color difference between the two converted colors is the discriminable color distance as described above, for example, the converted color of color 404 may be different from color 405, or the converted colors of both colors 403 and 404 may be different from their pre-correction colors. In the example of FIG. 4, if color 406 were to be corrected by color difference correction amount 409 on the extension line from color 405 to color 406 in the CIE-L*a*b* color space, it would fall outside the color gamut 402, making such correction impossible. Therefore, when the converted color of color 404 is changed by correcting the conversion parameters, the color is set to be on the boundary surface of the color gamut 402 and so that the color distance from color 405 is the discriminable color distance. Here, if the inter-color distance between the two converted colors does not reach the discriminable inter-color distance simply by changing the converted color of color 404, the shortfall in the inter-color distance may be compensated for by correcting the conversion parameters so as to change the converted color of color 403.

[0091] In S206, the CPU 102 corrects the gamut mapping table using the result of the color degeneration correction in S205 to create a table after color degeneration correction. Here, the gamut mapping table before correction is a table that converts the input color 403 into the output color 405, and the table after color degeneration correction is a table that converts the input color 403 into the output color 410. Based on the result of S205, the table is changed to one that converts the input color 403 into the output color 410. The correction of the gamut mapping table is repeatedly performed for all color combinations that cause color degeneration. Through this processing, the table after color degeneration correction is created.

[0092] 3, by creating a post-color-degeneration-correction table and then converting the input image using that table, it is possible to increase the distance between the colors of the unique color combinations in the input image that would cause color degeneration after conversion. Therefore, it is possible to reduce the degree of color degeneration in color combinations that would cause color degeneration after conversion.

[0093] When the input image data is sRGB data, the gamut mapping table is created on the assumption that the input image data has 16,777,216 colors. A gamut mapping table created based on this assumption takes into account color degeneration and saturation for all colors not included in the actual input image data. According to the processing shown in this embodiment, a degeneration-corrected table that is adaptive to the input image data can be created by correcting the conversion parameters only for colors detected in the input image data that will experience color degeneration after conversion. Therefore, gamut mapping appropriate for the input image data can be used to perform color conversion processing with reduced color degeneration.

[0094] In this embodiment, the processing when the input image data is a one-page image has been described, but the number of pages of the input image data is not particularly limited. If the input image data is a multiple-page image, the flow shown in FIG. 2 may be performed for all pages, or may be performed for each page. With this processing, even if the input image data is a multiple-page image, it is possible to selectively change the color conversion processing in the same way, and if color degeneration occurs, it is possible to reduce the degree of color degeneration.

[0095] In this embodiment, the post-degeneration-correction table was created by correcting the gamut mapping table, but this process is not limited to this, as long as the color difference after conversion remains the same. For example, a similar conversion may be performed by performing color conversion using a different gamut mapping table on post-gamut-mapped image data that uses the pre-color-degeneration-correction gamut mapping table as is. In this case, in S205, a post-gamut-mapped correction table is created that converts color information converted using the pre-correction gamut mapping data into color information after color degeneration correction. The post-gamut-mapped correction table created here is a table that converts color 405 in FIG. 4 into color 410 as input. In this case, in S108, the color conversion process is performed by applying the post-gamut-mapped correction table to the post-gamut-mapped image data.

[0096] 2 and 3 are assumed to be initiated (automatically) upon receiving input of image data, but may be configured to be executed based on a user instruction. For example, the CPU 102 may receive a user input regarding whether or not to execute each information processing according to this embodiment on a UI screen such as that shown in FIG. 15 (described later). The UI screen of FIG. 15 displays a toggle button for selecting the type of color correction. The UI screen of FIG. 15 also displays a toggle button for selecting, by ON or OFF, whether or not to execute gamut mapping using an adaptive post-degeneration correction table. This configuration allows the user to switch whether or not to execute adaptive gamut mapping in accordance with their instruction. As a result, adaptive gamut mapping can be executed when the user wishes to reduce the degree of color degeneration.

[0097] [Embodiment 2] [Same hue repulsion correction] The information processing device 101 according to the first embodiment detects the number of color combinations that cause color degeneration for all unique color combinations included in image data, and performs color degeneration correction processing for each of them. On the other hand, there may be cases where color degeneration can be assumed not to occur without determining whether color degeneration will occur, such as color combinations with significantly different hues. Therefore, the information processing device 101 according to the second embodiment groups a portion of the detected multiple unique colors according to their hue ranges into a single color group, and performs color degeneration correction processing within the group. Hereinafter, when simply referred to as a "group," it refers to a group of unique colors grouped into a single color group.

[0098] The information processing device 101 according to this embodiment can group the detected unique colors by a predetermined hue angle, for example, and perform the same color degeneration correction process within each group as in embodiment 1. In this way, by grouping not all of the detected unique colors but a portion of them into a single color group and performing color degeneration correction processing only on that portion, it is possible to reduce the number of combinations to be calculated, thereby reducing the processing load and processing time.

[0099] Furthermore, in this embodiment, when performing color reduction correction, the color reduction correction may be performed so that the change in the converted color due to the color reduction correction is limited to the lightness direction. By changing the color after color conversion by correcting the conversion parameters only in the lightness direction, it is possible to suppress changes in color tone due to the conversion parameter correction. In this embodiment, for example, as shown in FIG. 7 described later, the conversion parameters may be corrected so that the lightness after conversion by the color conversion process after the conversion parameters are corrected is determined based on the lightness of the input color, and the saturation does not change from before the correction.

[0100] If the color difference ΔE before gamut mapping is larger than the smallest distinguishable color difference, the color difference ΔE to be maintained should be larger than the smallest distinguishable color difference ΔE. In such cases, it is possible to set conversion parameters in color conversion using gamut mapping so that the color difference between two converted colors approaches the color difference before conversion. From this perspective, the information processing device 101 according to this embodiment may correct the conversion parameters so that the converted color is determined based on the converted color and the color difference between the combined colors before conversion. By correcting color degeneration, the color difference between two colors after gamut mapping becomes the same as the color difference before gamut mapping, thereby reproducing the ease of discrimination before gamut mapping even after color conversion. Note that the color difference after gamut mapping after such color degeneration correction may be larger than the color difference before gamut mapping. In this case, discrimination between two colors after color conversion can be made easier than before gamut mapping. Such conversion parameter correction processing is described below.

[0101] An example of the process for determining whether color degeneration occurs, performed in step S202 by the information processing device 101 according to this embodiment, will be described below with reference to FIG. 5. FIG. 5 is a diagram showing a plane representing two axes, the a* axis and the b* axis, in the CIE-L*a*b* color space, and plotting multiple unique colors. As described above, in this embodiment, unique colors within a predetermined hue angle are grouped into a single color group. The hue range 501 represents a range in which multiple unique colors within a predetermined hue angle are grouped into a single color group. In FIG. 5, a 360-degree hue angle is divided into six equal parts, and the hue range 501 represents a range from 0 degrees to 60 degrees. The hue range used for grouping is preferably a hue range that can be recognized as the same color, and can be arbitrarily set by the user. For example, in the CIE-L*A*B* color space, the hue range to be grouped into a single color group may be set to a range from 30 degrees to 60 degrees. If this angle is set to 60 degrees, the colors can be grouped into six groups: red, green, blue, cyan, magenta, and yellow. If this angle is set to 30 degrees, the colors can also be grouped into groups of 60 degrees and separated by the colors between them.

[0102] As shown in Fig. 5, the hue range for grouping may be set at a fixed angle, or the hue range may be set according to the unique colors included in the image data. For example, the hue angle range may be determined as a range that is set so that the colors appear visually uniform (the same color), and the unique colors may be grouped within each of the set hue angle ranges.

[0103] In addition, in this embodiment, the color degeneration correction process is described as being performed using unique colors within one group grouped by hue angle. However, the calculation process for the number of combinations that will cause color degeneration (described later) may also be performed using unique colors within two groups with adjacent hue angle ranges. By detecting such combinations across adjacent hue ranges, it is possible to suppress a sudden change in the number of color combinations that will cause color degeneration when the area in which combination detection is performed is shifted by one. In this case, if the range in which colors are easily recognized as the same (in the CIE-L*A*B* color space) is 30 degrees, setting the hue angle range for one grouping to 15 degrees will result in a hue angle of 30 degrees when the two hue ranges are combined. Therefore, it is possible to detect combinations from within a hue angle range in which colors are easily recognized as the same.

[0104] The CPU 102 calculates the number of color combinations that will cause color degeneration for unique color combinations within the hue range 501. In FIG. 5, colors 504, 505, 506, and 507 are shown as colors included in the hue range 501. The CPU 102 according to this embodiment determines whether color degeneration will occur as a result of the color conversion process for each of the four color combinations, colors 504, 505, 506, and 507. This determination process is repeated for all hue ranges. This process detects color combinations that will cause color degeneration for each hue range, and the number of such combinations can be calculated. In FIG. 5, there are a total of six color combinations within the hue range 501. The detection of color combinations that will cause color degeneration can be performed in the same manner as in the first embodiment. Hereinafter, when describing color combinations (two colors), unless otherwise specified, it is assumed that the description refers to a combination within one hue range.

[0105] The CPU 102 according to this embodiment selects a reference color (reference color) from among the unique colors included in the grouped colors, and corrects the conversion parameters in the color conversion process so that the converted colors of the other colors are determined based on the color difference between the reference color and the other colors. Furthermore, the CPU 102 according to this embodiment can generate a function (brightness conversion function) that calculates the lightness of the output color from the lightness of the input color in the color conversion process after the conversion parameters have been corrected, based on the lightness of the reference color and the lightness of a color different from the reference color (hereinafter referred to as a scale color). In this embodiment, two scale colors are set for the reference color: one color with a higher lightness and one color with a lower lightness. The lightness conversion function is generated based on the reference color and the two scale colors. The lightness conversion function will be described later as Equation (8). Here, color 603 (and its converted color 607) in FIG. 6 (described later) is the reference color, and color 601 (and its converted color 605) is the scale color, and color 612 (or color 614) is calculated after conversion of color 601 by gamut mapping after degeneration correction based on color 605, color 607, and the color difference between color 603 and color 601; this type of processing will also be described later.

[0106] An example of the color degeneration correction processing performed in S205 by the information processing apparatus 101 according to this embodiment will be described below with reference to FIG. 6. In FIG. 6, the color gamut of the input image data before color conversion processing is shown as color gamut 617, and the color gamut after conversion by gamut mapping is shown as color gamut 616, on a plane using two axes, the L* and C* axes, in the CIE-L*a*b* color space. L* represents lightness, and C* represents saturation. Furthermore, colors 504 to 507 included in the hue range 501 before color conversion processing are plotted as colors 601 to 604, respectively, within the color gamut 617. Furthermore, colors 605 to 607 are colors in the color gamut 616 after colors 601 to 603 have been converted by gamut mapping, respectively. It should be noted that color 604 here remains the same color after color conversion by gamut mapping.

[0107] The CPU 102 according to this embodiment can calculate a correction factor, which is a reflection factor of the correction of the conversion parameters in the color degeneration correction, based on the ratio of the number of color combinations that cause color degeneration to the number of color combinations included in the group. For example, the CPU 102 according to this embodiment calculates the correction factor R for a certain group as follows: R = Number of color combinations that cause color degeneracy / Number of color combinations in the group

[0108] The correction factor R described above decreases as the proportion of color combinations that cause color degeneration within the group decreases, and increases as the proportion increases. For example, in the examples of Figures 5 and 6, if there are six color combinations within the group and it is determined that four of these combinations will cause color degeneration, the correction factor R is calculated as 0.667. By correcting the conversion parameters using such a correction factor, the degree of correction of color degeneration can be increased as the proportion of color combinations that cause color degeneration within the group increases.

[0109] The CPU 102 according to this embodiment can set the above-mentioned reference color from among the unique colors included in the group. In this embodiment, the color with the highest saturation (maximum saturation color) among the unique colors included in the group is set as the reference color. The CPU 102 also sets the color with the highest lightness (maximum lightness color) and the color with the lowest lightness (minimum lightness color) relative to the reference color as scale colors. In the example of FIG. 6, color 601 is the maximum lightness color, color 602 is the minimum lightness color, and color 603 is the maximum saturation color.

[0110] In color degeneration correction, the CPU 102 according to this embodiment generates corresponding lightness conversion functions for unique colors (light color group) whose lightness is equal to or greater than that of the maximum saturation color and unique colors (dark color group) whose lightness is less than that of the maximum saturation color. Below, we will explain the calculation process of the correction amount based on the correction rate R, the maximum lightness color, the minimum lightness color, and the maximum saturation color, performed by the CPU 102 according to this embodiment.

[0111] The CPU 102 separately calculates a correction amount Mh for the light color group and a correction amount Ml for the dark color group (the use of these correction amounts will be described in detail later). Hereinafter, the color 601, which is the maximum lightness color, is represented by L601, a601, and b601. The color 602, which is the minimum lightness color, is represented by L602, a602, and b602. The color 603, which is the maximum saturation color, is represented by L603, a603, and b603. Here, the CPU 102 may determine the correction amount Mh by multiplying the color difference ΔE between the maximum lightness color and the maximum saturation color by a correction factor R. The CPU 102 may also determine the correction amount Ml by multiplying the color difference ΔE between the maximum saturation color and the minimum lightness color by the correction factor R. The following formulas (6) and (7) show examples of calculation formulas for the correction amounts Mh and Ml.

number

[0112] 6, the color difference between the color 601 and the color 603 is indicated by the color difference ΔE608, and the color difference between the color 602 and the color 603 is indicated by the color difference ΔE609. Therefore, the correction amounts Mh and Ml are values ​​obtained by multiplying the color difference ΔE608 and the color difference ΔE609 by R, respectively.

[0113] The CPU 102 according to this embodiment generates a brightness conversion table for each hue range. The brightness conversion table according to this embodiment is a table that indicates the brightness of an output pixel (converted brightness) by gamut mapping after color degeneration correction, relative to the brightness of an input pixel. A method for creating such a brightness correction table will be described below.

[0114] The brightness conversion table according to this embodiment is a single DLUT. Such a single DLUT requires less space than a three-DLUT, which requires a larger number of items, and is expected to reduce the processing time required for transfer. The converted brightness values ​​stored in the brightness conversion table are calculated based on the brightness of the reference color, the brightness of the input color, the brightness of the maximum-lightness color (or the minimum-lightness color), and the brightness and correction amount of the color obtained by converting the reference color using gamut mapping (separately for the light color group and the dark color group in this embodiment). The following description will be given assuming that the input color is a color from the light color group. However, if a color from the dark color group is used, similar processing can be performed using the minimum-lightness color instead of the maximum-lightness color.

[0115] Fig. 7 is a graph showing an example of components of a lightness conversion table according to this embodiment. In Fig. 7, the horizontal axis represents the lightness of the input color in the lightness conversion table, and the vertical axis represents the output lightness. L605 to L611 in Fig. 7 correspond to lightnesses 605 to 611 in Fig. 6. That is, in Fig. 7, the lightnesses of the maximum lightness color, reference color, and minimum lightness color after conversion by gamut mapping are shown as L605, L607, and L606, respectively. In the following, only lightnesses L607 to L605 in the lightness group range will be described in the graph of Fig. 7.

[0116] L610 is the value output when L605 is input into the lightness conversion table, and is the value obtained by adding the correction amount Mh to L607. In Figure 6, the color obtained by shifting color 607 in the lightness direction by the correction amount Mh is shown as color 610.

[0117] First, we will explain color 610 and colors 612 and 614 set based on color 610. Color 610 has the color difference between colors 603 and 601 in the lightness direction as a color difference with color 607. Color 612 is obtained by shifting color 605, a result of converting color 601, in the lightness direction so that it has lightness L610. By performing color degeneration correction so that the color after conversion of color 601 becomes color 612, the color after conversion changes only in the lightness direction, thereby suppressing changes in color tone due to correction of the conversion parameters. Furthermore, because visual sensitivity is high for lightness differences, converting color differences including saturation into lightness differences can provide colors that are perceived as having larger color differences after conversion, even if the lightness difference is small visually. Furthermore, due to the relationship between the sRGB color gamut and the color gamut of an image forming device, lightness differences tend to be smaller than saturation differences. Therefore, converting color differences including saturation into lightness differences makes it possible to effectively utilize a narrow color gamut.

[0118] On the other hand, as illustrated in Fig. 7, it is possible that the color 612 converted in this manner will fall outside the color gamut 616. In such a case, the color 612 may be moved by color difference minimum mapping to become a color 614 within the color gamut 616, and such color 614 may become the color after conversion of the color 601 after color degeneration correction. The color difference minimum mapping will be described later with reference to equations (10) to (14).

[0119] In this embodiment, as shown in FIG. 7, when the reference color L607 is input into the lightness conversion table, the output value remains L607. As described above, L610 is the output value when the lightness L605 of the converted maximum lightness color is input into the lightness conversion table. In this embodiment, when a lightness value greater than L607 but less than L605 is input into the lightness conversion table, the value is calculated based on L607 and L610. For example, as shown in the graph in FIG. 7, when a lightness L1 greater than L607 but less than L605 is input into the lightness conversion table, the output value L2 can be calculated using the following equation (8), which serves as a lightness conversion function. L2=L607+(L610-L607)×(L1-L607) / (L605-L607) Formula (8)

[0120] A table that takes L1 as input and outputs this value L2 is calculated as the lightness conversion table for the light color group. The lightness of each color converted by gamut mapping is converted using the lightness conversion table, and for colors that need to be shifted, such as color 614 for color 612, the shifted color becomes the color converted by gamut mapping after color degeneration correction in this embodiment.

[0121] Although the brightness conversion function is generated based on two points as shown in Equation (8), it is not limited to this as long as the corresponding brightness output can be calculated. For example, the brightness conversion function may be a quadratic function, and the parameters of the brightness conversion function may be calculated from three points.

[0122] In this embodiment, as described above, the reference color L607 does not change when it is input to the lightness conversion table. This process allows color differences to be corrected while maintaining the saturation by maintaining the converted color for the most saturated color. Furthermore, the output value when a lightness greater than L605 or less than L606 is input to the lightness conversion table is indefinite here because it is not included in the input image data. However, even in this case, it may be calculated by applying equation (8).

[0123] Furthermore, if the lightness value output from the lightness conversion table for a maximum lightness color exceeds the maximum lightness of the gamut 616 after gamut mapping, the CPU 102 may perform maximum value clipping. The maximum value clipping process according to this embodiment subtracts the difference between the output lightness value and the maximum lightness of the gamut 616 after gamut mapping from the overall output of the lightness conversion table. In this case, the lightness of the maximum saturation color after gamut mapping also shifts toward lower lightness. This process allows for overall correction to utilize lightness gradations on the lower lightness side, even if the unique colors in the input image data are biased toward higher lightness. Similar processing can also be performed for minimum lightness colors when the minimum lightness after correction is below the minimum lightness of the gamut 616 after gamut mapping, or when the lightness value output from the lightness conversion table exceeds the minimum lightness of the gamut 616 after gamut mapping.

[0124] The CPU 102 according to this embodiment creates a degeneration-corrected table for each hue range by correcting the gamut mapping table using the values ​​of the brightness conversion table calculated in this way. Here, for each corresponding input, the output brightness value of the gamut mapping table is corrected to the output value of the brightness conversion table, thereby creating a degeneration-corrected table.

[0125] In this embodiment, a lightness conversion table is created for each hue range. However, when processing is performed using a different table for each hue range, abrupt changes in output values ​​may occur depending on whether the boundary between the hue ranges is crossed. From this perspective, when performing gamut mapping of a color in a certain hue range, CPU 102 may perform color conversion processing using an additional lightness conversion table for an adjacent hue range. CPU 102 may calculate the gamut-mapped lightness of a color by weighting the lightness of the color in a certain hue range converted using the lightness conversion table for that hue range and the lightness of the color converted using the lightness conversion table for that hue range. For example, when performing color conversion of color C located at a hue angle Hn degrees (here, assumed to be an angle within the hue range 501 in FIG. 5), CPU 102 can calculate the lightness value Lc after color conversion using the following equation (9):

number

[0126] Here, H 501 is the intermediate hue angle of the hue range 501, and H 502 is the intermediate hue angle of the hue range 502. 501 is the value obtained by converting the lightness of color C using the lightness conversion table in the hue range 501, and Lc 502 is the value obtained by converting the lightness of color C using the lightness conversion table in hue range 502. By performing lightness conversion taking into account the lightness conversion tables of adjacent hue ranges, this processing makes it possible to suppress abrupt changes in output values ​​at the boundaries of the hue ranges due to gamut mapping.

[0127] As described above, the CPU 102 according to this embodiment converts the converted value of a color, such as color 612, that falls outside the color gamut 616 when color degeneration correction is performed using the output lightness of the lightness conversion table as is, into a value within the color gamut using minimum color difference mapping. In the example of Fig. 6, color 612 is converted to color 614 using minimum color difference mapping as described above. Such minimum color difference mapping will be described below.

[0128] For example, the CPU 102 can use color difference minimum mapping to convert the color 612 to the color closest to the color 612 among the colors in the color gamut 616 that are located in a predetermined direction from the color 612. The relationship between the weight for setting such a predetermined direction and the distance ΔEw from the color 612 to the color after conversion (614 in this case) can be expressed by the following equations (10) to (14).

number

[0129] Here, the color before conversion by color difference minimum mapping is (Ls, as, bs), and the color after conversion is (Lt, at, bt). Furthermore, as weights for setting the above-mentioned predetermined directions, the weight in the lightness direction is represented as Wl, the weight in the saturation direction as Wc, and the weight in the hue angle as Wh (Wh+Wl+Wc=1). The color converted by color difference minimum mapping is determined by searching for (Lt, at, bt) that satisfies equation (14).

[0130] Here, the values ​​of Wl, Wc, and Wh can be set arbitrarily by the user. In the second embodiment, the post-degeneration correction table is created so that the change in the converted color due to color degeneration correction occurs only in the lightness direction. Therefore, if it is desired to maintain such an effect as much as possible, it is possible to increase the weight in the lightness direction compared to the other weights. Furthermore, since hue has a large influence on color, it is possible to suppress the change in color before and after color degeneration correction by increasing the weight of the hue angle (for example, compared to the weight in the lightness direction and the weight in the saturation direction). For example, color difference minimum mapping can be performed by setting the relationship of these weights as Wh>Wl>Wc.

[0131] In the description of minimum color difference mapping, it has been assumed that color 614 is searched for among colors located in a predetermined direction from color 612. However, the process of converting a color that has fallen outside the color gamut after degeneration correction, such as color 612, into the color gamut is not particularly limited to this. For example, color 612 may be moved into color gamut 616 by the minimum movement distance so as to maintain its distance from color 607, and the resulting color may be used as color 614, which becomes the converted color of color 601 after color degeneration correction.

[0132] In this embodiment, an example of color degeneration correction has been described in which the change in the converted color due to color degeneration correction is limited to the lightness direction. Here, as a visual characteristic, sensitivity to lightness differences varies depending on saturation. For example, sensitivity to lightness differences between low-saturation colors is more likely to be higher than sensitivity to lightness differences between high-saturation colors. From this perspective, the CPU 102 according to this embodiment may control the amount of change in lightness of the converted color due to color degeneration correction so that it further varies depending on the saturation value. Here, colors are classified into low-saturation colors and high-saturation colors, and processing is performed for high-saturation colors as described with reference to FIG. 6 and the like, while processing is performed for low-saturation colors so that the amount of change in lightness of the converted color is smaller. Below, we will describe color degeneration correction performed to reduce the amount of change in lightness for colors determined to have low saturation.

[0133] When correcting the lightness value of the output of the gamut mapping table to the output value of the lightness conversion table, CPU 102 sets Lc', which is obtained by internally dividing the pre-correction lightness value Ln and the post-correction lightness value Lc by the saturation correction rate S, as the lightness value of the output of the table after degeneration correction. The saturation correction rate S is calculated using the saturation value Sn of the output value of the gamut mapping and the maximum saturation value Sm of the color gamut after gamut mapping at the hue angle of the output value of the gamut mapping, using the following equation (15). Furthermore, Lc' is calculated using the following equation (16). S=Sn / Sm formula (15) Lc'=S×Lc+(1-S)×Ln Equation (16)

[0134] Here, the conditions for classifying colors into low saturation and high saturation are not particularly limited and can be set arbitrarily depending on the user and the environment. For example, a predetermined threshold value may be set for saturation, and saturation equal to or greater than the threshold may be considered high saturation, and saturation less than the threshold may be considered low saturation. Alternatively, the bottom half of the detected saturation may be considered low saturation, and the rest may be considered high saturation. Furthermore, the CPU 102 may perform color degeneration correction on low saturation colors so that the amount of change in color after conversion is zero.

[0135] This type of processing makes it possible to perform color degeneration correction in accordance with visual sensitivity and prevent the degree of correction from being too strong. For example, it is possible to prevent changes in the color of the gray axis, etc., due to color degeneration correction.

[0136] [Embodiment 3] [Different color repulsion] Even if colors exist within different hue ranges, if the difference in brightness becomes small after gamut mapping, it may be difficult to distinguish between them. From this perspective, the information processing device 101 according to this embodiment can perform color degeneration correction so as to increase the brightness difference if the difference in brightness between two colors after gamut mapping falls below a predetermined threshold (color difference ΔE).

[0137] The information processing device 101 according to this embodiment can perform the same color degeneration correction process as in embodiment 1. Below, the differences between the color degeneration correction process performed by the information processing device 101 in this embodiment and embodiment 1 will be described.

[0138] An example of the process of determining whether or not lightness degeneration occurs, performed in S202 by the information processing device 101 according to this embodiment, will be described below with reference to Fig. 8. In this embodiment, as described above, a reduction in the lightness difference between two colors after gamut mapping to a predetermined color difference ΔE or less is referred to as lightness degeneration. Furthermore, the CPU 102 according to this embodiment determines that color degeneration has occurred when lightness degeneration has occurred.

[0139] In S202, the CPU 102 detects color combinations that will cause lightness degeneration among the unique color combinations included in the image data, based on the unique color list detected in S201. In FIG. 8, the color gamut of the input image data before color conversion processing is shown as color gamut 801, and the color gamut after conversion by gamut mapping is shown as color gamut 802, on a plane using two axes, the L* axis and the C* axis, in the CIE-L*a*b* color space. The input image data includes color 803 (first color) and color 804 (second color), which are shown on the color gamut 801. Color 805 and color 806 are colors in the color gamut 802. Color 805 is the color obtained when gamut mapping is performed on color 803, and color 806 is the color obtained when gamut mapping is performed on color 804. The processing described below is repeated for all unique color combinations included in the image data.

[0140] Here, the CPU 102 determines that the lightness difference has decreased if the lightness difference 808 between colors 805 and 806 is smaller than the lightness difference 807 between colors 803 and 804. Note that it is assumed here that the lightness difference is calculated in the CIE-L*a*b* color space. Color information in the CIE-L*a*b* color space is represented in a color space with three axes, L*, a*, and b*. Color 803 is represented by L803, a803, and b803. Color 804 is represented by L804, a804, and b804. Color 805 is represented by L805, a805, and b805. Color 806 is represented by L806, a806, and b806. If the input image data is expressed in another color space, it may be converted to the CIE-L*a*b* color space using a known color space conversion technique, or the subsequent processing may be performed in that color space as is. The lightness difference ΔL807 and the lightness difference ΔL808 are calculated, for example, by the following equations (17) and (18).

number

[0141] The CPU 102 determines that the lightness difference has decreased when the lightness difference ΔL808 is smaller than the lightness difference ΔE807. Furthermore, when the lightness difference ΔL808 is equal to or smaller than a predetermined threshold, the CPU 102 determines that the colors are not different enough to distinguish the color difference, and that lightness degeneration has occurred.

[0142] If the difference in lightness between color 805 and color 806 is large enough to be distinguished as different colors based on human visual characteristics, it can be determined that there is no need to correct the lightness difference. From this perspective, the threshold value used here can be set to, for example, 0.5. The CPU 102 may determine that lightness degeneration has occurred if the lightness difference ΔL808 is smaller than the lightness difference ΔL807 and if the lightness difference ΔL808 is smaller than 0.5.

[0143] Next, the color degeneration correction process performed in S205 according to this embodiment will be described with reference to FIG.

[0144] The CPU 102 according to this embodiment can calculate a correction factor T, which is a reflection factor of the correction of the conversion parameters in the color degeneration correction, based on the ratio of the number of color combinations that cause lightness degeneration to the total number of color combinations in the unique color list. For example, the CPU 102 according to this embodiment calculates the correction factor T as follows. T = Number of color combinations that cause brightness degeneration / Number of color combinations in the unique color list

[0145] The correction factor T decreases as the proportion of color combinations in the unique color list that cause lightness degeneration decreases, and increases as the proportion increases. By correcting the conversion parameters using such a correction factor, the degree of correction of color degeneration can be strengthened as the proportion of color combinations that cause lightness degeneration increases.

[0146] Next, CPU 102 performs lightness difference correction based on the correction rate T and the lightness before gamut mapping. The lightness Lc after lightness difference correction can be calculated by dividing the difference between the lightness Lm before gamut mapping and the lightness Ln after gamut mapping by the correction rate T, for example, using the following equation (19): Lc=T×(Lm-Ln)+Ln Equation (19)

[0147] This type of brightness difference correction is repeated for all unique colors in the input image data. In FIG. 8, brightness difference correction is performed on the brightness L805 of color 805 using correction factor T, and the result of this correction is shown as color 809. In the example of FIG. 8, color 809 is outside the color gamut 802 after gamut mapping, so it is mapped into color gamut 802 and becomes color 810. A similar process is performed on color 804. This process allows gamut mapping that widens the brightness difference for colors included in the image data, and reduces the degree of brightness degeneration, if any. Therefore, by preventing the brightness difference from becoming too small after gamut mapping, it is possible to reduce the deterioration of distinguishability.

[0148] The lightness degeneration reduction process according to this embodiment may be performed simultaneously with the process according to the second embodiment. In this case, the lightness difference correction process is performed on the reference color of the color degeneration correction process. By correcting the lightness difference of the reference color, lightness difference correction of other colors can also be performed. With this configuration, when performing color degeneration correction, the degree of lightness degeneration can be reduced in addition to the degree of color degeneration.

[0149] [Embodiment 4] [Area Settings] In the first to third embodiments, color degeneration correction processing is performed on all unique colors contained in the input image data. However, in some cases, different priorities are set for different areas within the input image data, and it may be preferable to perform different gamut mapping for each of these areas.

[0150] For example, colors used in a graph and colors used as part of a gradation may have different meanings in terms of discrimination. For example, for colors used in a graph, distinguishability from other colors in the graph is important, so a strong degree of color reduction correction may be performed. On the other hand, for colors used as part of a gradation, gradation with the colors of surrounding pixels is important, so a weak degree of color reduction correction may be performed. If these two colors are the same and are included in the same input image data, it is preferable to perform a relatively strong degree of color reduction correction on the color of the graph and a relatively weak degree of color reduction correction on the color used as part of the gradation. This situation may particularly occur when input document data contains image data for multiple pages and color reduction correction is performed on those multiple pages.

[0151] The information processing device 101 according to this embodiment sets multiple partial regions within image data and performs the processes from S102 onward in the first embodiment for each partial region. That is, the information processing device 101 according to this embodiment selectively changes the color conversion process for each partial region. In particular, when multiple images exist, multiple partial regions may be set from among those images.

[0152] Fig. 9 is a flowchart showing an example of the overall processing performed by the information processing device 101 according to this embodiment. The processing shown in Fig. 9 is performed in the same manner as the flow shown in Fig. 3 of the first embodiment, except that S301 following S101 and S302 following S108 or S109 are additionally performed, and therefore a duplicated description will be omitted.

[0153] In S301 following S101, CPU 102 sets partial areas in the manuscript data acquired in S101. Here, it is assumed that at least two partial areas are set. The partial areas according to this embodiment may be set based on information contained in the manuscript data, based on an image of the manuscript data (for example, as an area whose pixel values ​​satisfy a predetermined condition), or based on user input for setting the partial area. When S301 ends, CPU 102 selects one of the set partial areas as the processing target and proceeds to S102.

[0154] S102 to S109 shown in Fig. 9 and the subsequent S302 are loop processes in which one partial area set in S301 is processed. In S102 to S109 shown in Fig. 9, the same process as shown in Fig. 3 is performed on the processing object set in S301.

[0155] In S302 following S108 or S109, the CPU 102 determines whether all of the partial regions set in S301 have been processed. If all of the partial regions have been processed, the process proceeds to S110; if not, a partial region that has not yet been processed is set as a new processing target, and the process returns to S102.

[0156] The process of setting a partial area in S301 will now be described in detail. Fig. 10 is a diagram illustrating an example of a page of digital manuscript data that is the scanned source of manuscript data, which is the scanned image input in S301 of Fig. 9, in this embodiment. Here, it is assumed that the document data included in the digital manuscript data is described in PDL. PDL stands for Page Description Language, and is composed of a set of drawing commands for each page. The type of drawing command is defined for each PDL specification, and any type can be used, but in this embodiment, the following three types of commands 1 to 3 are used as an example. Command 1) TEXT drawing command (X1, Y1, color, font information, string information) Command 2) BOX drawing command (X1, Y1, X2, Y2, color, fill shape) Command 3) IMAGE drawing command (X1, Y1, X2, Y2, image file information)

[0157] Other types of drawing commands may be used depending on the application, such as a DOT drawing command for drawing a point, a LINE drawing command for drawing a line, or a CIRCLE drawing command for drawing an arc. For example, a general PDL such as PDF (Portable Document Format) proposed by Adobe, XPS proposed by Microsoft, or HP-GL / 2 (registered trademark) proposed by HP may be used.

[0158] An original page 1000 in Fig. 10 represents one page of document data. As an example, this document data has a pixel count of 600 pixels horizontally and 800 pixels vertically. An example of a PDL corresponding to the document data of the original page 1000 in Fig. 10 is shown below.

[0159] <PAGE=001> <text>50,50,550,100,BLACK,STD-18,"ABCDE FGHIJKLMNOPQR”< / text> <text>50,100,550,150,BLACK,STD-18,"abcd efghijklmnopqrstuv”< / text> <text>50,150,550,200,BLACK,STD-18,"1234 567890123456789”< / text> <box> 50,350,200,550,SPOT1,STRIPE< / box> 250,300,580,700,“PORTRAIT.jpg” < / IMAGE>

[0160] Below, this<PAGE=001> The descriptions from (line 1) to (line 11) will be explained. Here, each description describes objects including text, figures (boxes, rectangles), and image data contained in the digital manuscript data. Here, the description will be given assuming that three types of objects are used: text, figures, and image data; however, other types of objects may also be used. For example, an object of a type indicating that the object is a partial area where spot color printing is to be performed may also be used.

[0161] First line<PAGE=001> is a tag that indicates the number of pages of the digital manuscript data according to this embodiment. Normally, PDL is designed to be able to describe multiple pages, so tags indicating page boundaries are described in the PDL. In this example, up to indicates that this is the first page. In this embodiment, this corresponds to manuscript page 1000 in FIG. 10. If there is a second page, the PDL is followed by<PAGE=002> will be described.

[0162] The second line <text> From the third line< / text> The above is drawing command 1 (first TEXT command) that describes text as an object, and corresponds to the first line of area 1001 in Figure 10. The first two coordinates indicate the coordinates (X1, Y1) of the upper left corner of the drawing area, and the next two coordinates indicate the coordinates (X2, Y2) of the lower right corner of the drawing area. Next, it is written that the text color is BLACK (black: R=0, G=0, B=0), the text font is "STD" (standard), the text size is 18 points, and the string to be described is "ABCDEFGHIJKLMNOPQR".

[0163] The fourth line <text> From the 5th line< / text>The above is drawing command 2 (second TEXT command) that describes text as an object, and corresponds to the second line of area 1001 in Fig. 10. The first four coordinates and two character strings represent the drawing area, character color, and character font, respectively, just like command 1, and describe that the character string to be described is "abcdefghijklmnopqrstuv".

[0164] On the sixth line <text> From the 7th line< / text> The lines up to this point are drawing command 3 (third TEXT command) that describes text as an object, and correspond to the third line of area 1001 in FIG. 10. The first four coordinates and two character strings represent the drawing area, character color, and character font, respectively, just like drawing command 1 and drawing command 2, and describe that the character string to be described is "1234567890123456789".

[0165] On the 8th line <box> from< / box> The first two coordinates indicate the upper left coordinates (X1, Y1) of the drawing start point, and the next two coordinates indicate the lower right coordinates (X2, Y2) of the drawing end point. Next, the fill color of the area is SPOT1 (spot color 1: R=R01, G=G01, B=B01), and the fill shape is specified as a striped pattern, STRIPE. In this embodiment, the stripe direction is a line extending downward and to the right, but the angle and period of the line may also be specified in the BOX command. Unlike drawing commands 1 to 3, drawing command 4 uses the line color SPOT1. In this embodiment, this indicates that the color is the first registered spot color (SPOT COLOR), which is assumed to be "C Red," the first color registered in FIG. 16. However, since the spot colors are already recognized and used as industry standards in the printing industry, they may be described using the names of the industry standards (such as Pantone color chart names).

[0166] The IMAGE command on lines 9 and 10 is drawing command 1 (IMAGE command) that describes the specification of image data as an object, and corresponds to area 1003 in Figure 10. Here, it is written that the file name of the image existing in that area is "PORTRAIT.jpg", which indicates that the image data is a JPEG file, a commonly used image compression format. The statement on line 11 indicates that drawing of the page is complete.

[0167] In actual PDL files, in addition to the above group of drawing commands, there are cases where "STD" font data and a "PORTRAIT.jpg" image file are included as a single file. This is because if the font data and image file are managed separately, the character and image portions cannot be formed with drawing commands alone, and there is insufficient information to form the image shown in Figure 10. Also, area 1004 in Figure 10 is an area where no drawing commands exist, and is blank.

[0168] As described above, the CPU 102 according to this embodiment may set a partial area based on information contained in the manuscript data, based on an image of the manuscript data (for example, as an area whose pixel values ​​satisfy a predetermined condition), or based on user input for setting the partial area. When a partial area is set based on information contained in the manuscript data, for example, for a manuscript page described in PDL such as manuscript page 1000 in FIG. 10, the partial area can be extracted by analyzing the PDL. Specifically, each drawing command is written so that the start and end points of the Y coordinates of the object are as follows: The objects of each TEXT command are contiguous in area. Furthermore, the BOX command and the IMAGE command are both separated from the TEXT command by 100 pixels or more in the Y direction. Drawing command Y start point Y end point First TEXT command 50 100 Second TEXT instruction 100 150 Third TEXT instruction 150 200 BOX instruction 350 550 IMAGE instruction 300 700

[0169] Next, the BOX and IMAGE commands are written so that the start and end X coordinates of each object are as follows: The X coordinates of each TEXT command object are the same for both the viewpoint and end point. Also, the objects drawn with the BOX and IMAGE commands are spaced 50 pixels apart in the X direction. Drawing command X start point X end point BOX instruction 50 200 IMAGE instruction 250 580

[0170] From the above, in the example of FIG. 10, the CPU 102 can set the following three regions as partial regions. Area X start point Y start point X end point Y end point First area 50 50 550 200 Second area 50 350 200 550 Third area 250 300 580 700

[0171] In this way, CPU 102 can set partial regions based on descriptions related to drawing of objects included in the document data. In addition to the configuration of setting partial regions by analyzing the PDL as described above, CPU 102 can also divide an image into a plurality of partitioned regions and set partial regions based on such partitioned regions. Here, for example, an image may be divided into unit tiles (described later) and one or more such unit tiles may be set as partial regions.

[0172] On the other hand, the information processing device 101 may use a scanned image as document data rather than a digital document as is. In such cases, the scanned image loses various pieces of information that were attached to the digital document data, such as the coordinate information of the PDL described above, and it is difficult to set a partial area for such a scanned image by analyzing the PDL. Therefore, the information processing device 101 sets a partial area by analyzing the scanned image. A configuration for executing such processing will be described below.

[0173] FIG. 11 is a flowchart showing an example of detailed processing when the partial area setting process in S301 is performed on a tile-by-tile basis. In S401, CPU 102 sets unit tiles (hereinafter, sometimes simply referred to as "tiles") on a manuscript page and divides the manuscript page into such tiles. In this embodiment, the unit tiles on a manuscript page are set to tiles of 30 pixels in both the vertical and horizontal directions. As described above, this manuscript page has 600 x 800 pixels, so there are 20 tiles in the X direction and 27 tiles in the Y direction, each consisting of 30 pixels in both the vertical and horizontal directions (tiles that cannot be drawn are counted as one). In order to set such unit tiles, a variable for setting an area number for each tile is set as Area_number

[20]

[27] .

[0174] Fig. 12 is a diagram showing an image of tile settings for a manuscript page in this embodiment. In Fig. 12, manuscript page 1200 represents the entire manuscript page. Furthermore, area 1201 is an area where text is drawn, area 1202 is an area where graphics are drawn, area 1203 is an area where image data is drawn, and area 1204 is an area where no objects are drawn. Hereinafter, when specifying tiles to be arranged on a manuscript page in this manner, the xth tile from the left and the yth tile from the top may be referred to as tile (x, y).

[0175] In S402, the CPU 102 determines for each tile whether it is a blank tile. If the document page is digital data, the CPU 102 may perform the determination in step S402 based on the start and end points of the XY coordinates described in the drawing command, as described above. Alternatively, the CPU 102 may detect a tile in which all pixel values ​​within the actual unit tile satisfy R=G=B=255 as a blank tile. However, if the document data is a scanned image, it is possible that even the brightest color in the image will not satisfy R=G=B=255. From this perspective, the information processing device 101 may set a color threshold (blank threshold) used to determine a tile as a blank tile, and detect a tile in which all pixel values ​​within the actual unit tile satisfy R>blank threshold, G>blank threshold, or B>blank threshold as a blank tile. Note that the condition for determining a tile as a blank tile does not require that all pixel values ​​within the tile exceed the blank threshold. For example, a tile may be considered blank if the average or median of the pixel values ​​(R, G, and B) within the tile exceeds the blank threshold. Although the blank threshold has been described as being common to all three colors (RGB), a separate blank threshold may be set for each of the RGB colors.

[0176] In steps S403 to S410, an area number is set for each tile. In step S403, the CPU 102 sets the initial values ​​of each value including the area number for each tile as follows. Set the area number "0" for tiles determined as blank tiles in S402 -Set the area number "-1" for tiles other than the above (non-blank). - Set the maximum area number to "0"

[0177] Specifically, the initial values ​​of each value are set as follows: Blank tile (x1,y1) area_number[x1][y1]=0 Non-blank tile (x2,y2) area_number[x1][y1]=-1 Maximum area number max_area_number=0

[0178] Therefore, when the process of S402 is completed, all tiles are set to "0" or "-1".

[0179] In S404, CPU 102 detects a tile with area number "-1". Here, CPU 102 makes the following determination for tiles (x, y) in the range of x = 0 to 19 and y = 0 to 26. When the first tile with area number "-1" is detected, or when the detection process has been completed for all tiles, the detected tile becomes the processing target and the process proceeds to S405. if(area_number[x][y]=-1) → detected else → not detected

[0180] In S405, the CPU 102 determines whether or not a tile with area number "-1" was detected in S404. If it was detected, the process proceeds to S406, and if not, the process proceeds to S410.

[0181] In S406, the CPU 102 increments the maximum region number value by +1 and sets the region number of the tile detected as region number "-1" to the updated maximum region number value. Specifically, the CPU 102 processes the detected tile (x3, y3) as follows: max_area_number=max_area_number+1 area_number[x3][y3]=max_area_number

[0182] For example, in this case, if a tile is detected for the first time by the detection process of S404 and for the first time for which the process of S406 is executed, the maximum area number value after updating will be "1", and therefore the area number of that tile will also be "1". Thereafter, each time S406 is executed again, the maximum area number value will increase by 1.

[0183] Next, in S407 to S409, a process is performed to expand consecutive non-blank areas as the same area. In S407, CPU 102 detects a tile whose area number is "-1" that is adjacent to the tile with the maximum area number. Specifically, the following determination is made for tiles (x, y) in the range of x = 0 to 19, y = 0 to 26. When the first tile with area number "-1" is detected, or when the detection process has been completed for all tiles, the detected tile becomes the processing target and the process proceeds to S408. if (area_number[x][y]=max_area_number) if((area_number[x-1][y]=-1)or (area_number[x+1][y]=-1)or (area_number[x][y-1]=-1)or (area_number[x][y+1]=-1)) → Detected else → not detected

[0184] In S408, the CPU 102 determines whether or not a tile with area number "-1" was detected in S407. If it was detected, the process proceeds to S409, and if not, the process returns to S404.

[0185] In S409, the CPU 102 updates the area number of the tile that is an adjacent tile and has area number "-1" to the maximum area number at that time. Specifically, this is achieved by processing the detected adjacent tile as follows, with the tile position of interest set to (x4, y4). if((area_number[x4-1][y4]=-1) area_number[x4-1][y4]=max_area_number if((area_number[x4+1][y4]=-1) area_number[x4+1][y4]=max_area_number if((area_number[x4][y4-1]=-1) area_number[x4][y4-1]=max_area_number if((area_number[x4][y4+1]=-1) area_number[x4][y4+1]=max_area_number

[0186] Once the area number of the adjacent tile has been updated in S409, the process returns to S407, and the search for other adjacent non-blank tiles continues. When there are no undetected non-blank adjacent tiles, that is, when there are no more tiles to be assigned the maximum area number, the process returns to S404. When the area numbers of all tiles are not "-1," that is, when all tiles are blank tiles or all tiles have area numbers of 0 or greater set, it is determined in S405 that no tile with area number "-1" exists.

[0187] In S410, the CPU 102 sets the maximum value of the area number as the number of areas, and ends the processing in Fig. 11. That is, the maximum value of the area number set so far becomes the number of areas present on the document page.

[0188] Figure 13 shows each tile area after area setting has been completed. Original page 1300 in Figure 13 represents the entire original page corresponding to original page 1200. Area 1301 in Figure 13 is an area where text is drawn, area 1302 is an area where graphics are drawn, area 1303 is an area where image data is drawn, and area 1304 is an area where no objects are drawn. In this case, the results of area setting are as follows: ·Number of areas=3 ·Area number=0 Blank area 1304 Area number = 1 Text area 1301 Area number = 2 Box area 1302 Area number = 3 Image area 1303

[0189] Human vision has the characteristic that it is relatively easy to perceive the difference between two colors that are spatially adjacent or very close, but relatively difficult to perceive the difference between two colors that are spatially distant. In other words, the above-mentioned result of "outputting in a different color" is easily perceptible when it is performed on the same color that is spatially adjacent or very close, but is difficult to perceive when it is performed on the same color that is spatially distant.

[0190] In the processing according to this embodiment, areas considered to be different areas must be separated by a predetermined minimum distance on the paper. This also means that pixel positions considered to be the same area exist within that minimum distance across a background color (e.g., white, black, or gray). The background color, for example, is a color with a saturation below a predetermined threshold. This minimum distance is determined by the size of the unit tile and can be set arbitrarily depending on the size of the paper on which printing is performed or the user's expected viewing distance. In this embodiment, printing on A4-size paper is assumed, and the minimum distance is set to 0.7 mm or more. Even if such objects are not separated by the minimum distance on the paper, they may be considered different areas if they are set as different objects. For example, if an image area and a box area exist that are not separated by a predetermined distance, they may be set as different areas because they are different object types. Furthermore, an area surrounded by an area of ​​the background color may be set as a single area.

[0191] This configuration allows multiple partial regions to be defined in the image data, and color conversion processing can be selected for each of them. In particular, the color conversion processing can be selectively changed not only depending on whether the partial regions contain predetermined color information, but also depending on whether the partial regions are of a specific type. This processing also allows similar color reduction correction to be performed on distant objects as long as they have the same color distribution and are the same type. Furthermore, by performing color reduction correction processing on a partial region-by-region basis in this way, the number of color combinations that are subject to color reduction correction processing can be limited, thereby improving processing speed.

[0192] In addition, in this embodiment, the description has been given assuming that a partial area in the manuscript data is set in S301. Here, as described above, the manuscript data may have image data of multiple pages, and a partial area may be set from these multiple pages. In particular, the entire image data of one (or more) page of image data of multiple pages may be set as a partial area for the entire manuscript data. Below, an example will be described in which such image data for one page is set as a partial area (partial page).

[0193] As described above, the manuscript data to be printed here is document data consisting of multiple pages. A "partial page" is information for grouping one or more pages from the multiple pages included in the document data together and using them as the target for creating the above-described post-degeneration-correction gamut mapping table. For example, assume that the document data consists of pages 1 through 3. If each page is to be used to create a separate mapping table, then pages 1, 2, and 3 are each partial pages. Furthermore, if pages 1 and 2 and page 3 are each used to create a mapping table, then "pages 1 and 2" and "page 3" are partial pages. In other words, CPU 102 can selectively change the color conversion process for each partial page and each partial area.

[0194] Note that the "partial page" used here is not limited to a group of pages included in the document data. For example, a partial area of ​​the first page may be defined as a "partial page." In this case, in S301, the CPU 102 sets the manuscript data into a plurality of "partial pages" in accordance with a predetermined group of "partial pages." Note that the group of "partial pages" may be specified by the user.

[0195] Hereinafter, other effects that can be obtained by performing color degeneration correction processing when a scanned image is used as input document data will be described.

[0196] FIG. 25 is a diagram illustrating the results of a copy process or a grandchild copy process according to the present invention. The grandchild copy according to this embodiment is a result output by further scanning a copy original, which is the output product of copying. Color gamut 2501 indicates the color space that defines the colors of the digital original data in the example of FIG. 25. Color gamut 2502 indicates the electrophotographic print color gamut, and color gamut 2503 indicates the inkjet print color gamut. When attempting to copy and output electrophotographic original data using an inkjet printer, a gamut mapping process is performed to map the colors defined in color gamut 2502 to the colors defined in color gamut 2503 while maintaining the gradation. Thus, if a copy original that has already been gamut mapped and printed is further scanned to print a grandchild copy, performing the same gamut mapping again may further reduce the color gamut of the grandchild copy original, resulting in a result similar to color gamut 2504 shown in FIG. 25, for example.

[0197] From this perspective, when a copy of a document that has been gamut mapped and then printed as described above is further scanned to print a second copy (for example, when it is assumed that the image does not contain colors outside the printer's color gamut), it is possible to avoid unnecessary color compression by performing gamut mapping that maintains the colors without performing color degeneration correction on such document data. In the example of Figure 25, it is possible to print using colors defined in gamut 2503 without compressing the color gamut of the second copy to gamut 2404. [Table 1]

[0198] Table 1 shows examples of corresponding colors expressed in digital original data, the result of a first copy using that digital original data, and the result of a second copy (grandchild copy) using a scanned image of the copy result as the original. Here, color 2505 is a color defined in color gamut 2502, color 2506 is a color defined in color gamut 2503, and color 2507 is a color defined in color gamut 2504. As shown in Table 1, by selectively performing color degeneration correction processing and performing gamut mapping when the scanned original contains colors outside the color gamut, it is possible to avoid unnecessary color compression in the grandchild copy (and ultimately in the great-grandchild copy, etc.).

[0199] Next, the effect of the region segmentation processing according to the present invention will be described with reference to Fig. 26. Here, an example will be described in which a solid image of color 2603 is used as the first image, and a solid image of color 2604 is used as the second image. In the example of Fig. 26, color 2603 is the most saturated color within color gamut 2602, which is the inkjet printing color gamut, and color 2604 is a color within color gamut 2602 that is less bright than color 2603. Here, color gamut 2602 is included in color gamut 2601, which defines the colors of the digital original data.

[0200] Here, two pages are prepared as output 1, with the first image and the second image printed on separate pages (1-in-1 setting), and output 2 is prepared as output 2, with the first image and the second image printed on the same page (2-in-1 setting). In this embodiment, N-in-1 setting (N is a natural number) refers to a setting in which N digital documents are printed on one page (as one document), and when N is 2 or more, each image is reduced and arranged within the document.

[0201] Next, two pages of the above-mentioned output 1 and one page of output 2, a total of three pages, are scanned to create read images, and each read image is used as an original to be printed (final printing) by inkjet. Table 2 below shows examples of what colors will be printed in the final printing for such first and second images, both when area division is performed and when area division is not performed (particularly for originals with a 2-in-1 setting). [Table 2]

[0202] In Table 2, the first image, which is a solid image of color 2603, is output as an image of color 2603 in the final print in both the 1-in-1 setting and the 2-in-2 setting. The second image, which is a solid image of color 2604, is finally printed as an image of color 2604 in the 1-in-1 setting, regardless of whether area segmentation is performed. Meanwhile, in the 2-in-1 setting, the second image changes color and is finally printed as an image of color 2605 when area segmentation is not performed, but maintains its color and is finally printed as an image of color 2604 when area segmentation is performed. Color 2605 is within the color gamut 2602, but is farther from color 2603 than color 2604. Here, color 2604 is converted to color 2604 because, due to the simultaneous existence of colors 2603 and 2604 in one document, it is determined that the color difference between these colors is small after gamut mapping, resulting in color degeneration, and color degeneration correction is performed, with the result that the converted color of color 2604 is corrected to a color that is farther away from color 2603.

[0203] In this way, by setting multiple partial areas for the entire document and performing the processing according to this embodiment on each of them, it is possible to prevent unnecessary color compression even when copying 2-in-1 document data.

[0204] In the example of Fig. 9, when partial regions are set for an input image, the partial regions are set and then averaging processing is performed on each partial region. However, the timing of performing the averaging processing is not particularly limited, and the averaging processing may be performed before the partial regions are set, for example, immediately before S301, and the partial regions may be set on the image data that has undergone the averaging processing. Also, for example, the averaging processing may be performed between S102 and S103 as described in Fig. 2.

[0205] The disclosure of this specification includes the following information processing device, information processing method, and program. (Item 1) a first determination means for determining whether the first image is an image obtained by scanning a printed image; a conversion means for performing color conversion processing to convert a first color and a second color defined in a first color gamut included in the first image into a third color and a fourth color defined in a second color gamut different from the first color gamut, when the first image is an image obtained by scanning the printed image; a first correction means for correcting a conversion parameter in the color conversion process so that, when the color difference between the third color and the fourth color is smaller than a predetermined threshold value, the color obtained by converting the first color becomes a fifth color different from the third color and whose color difference from the fourth color is larger than the color difference between the third color and the fourth color; An information processing device comprising: (Item 2) a filter processing unit that performs a filter process to average colors included in the first image when the first image is an image obtained by scanning the printed image; 2. The information processing device according to item 1, wherein the first color and the second color are colors averaged by the filtering means. (Item 3) 3. The information processing device according to item 2, wherein the first color and the second color are each an average color of colors of adjacent pixels in the first image. (Item 4) The information processing device described in item 2 or 3, characterized in that the filter processing means averages the colors contained in the first image when the first image is an image obtained by scanning the printed image and the first image contains a predetermined threshold number or more of colors outside the second color gamut. (Item 5) a second determination unit that determines whether the first image includes a predetermined threshold number or more of colors outside the second color gamut; The information processing device described in any one of items 1 to 4 is characterized in that, when it is determined that the first image is an image obtained by scanning the printed image and that the first image contains a predetermined threshold number or more of colors outside the second color gamut, the conversion means performs conversion of the first color and the second color to the third color and the fourth color. (Item 6) 6. The information processing device according to any one of items 1 to 5, wherein the predetermined threshold is smaller than a color difference between the first color and the second color. (Item 7) 7. The information processing device according to any one of items 1 to 6, wherein the predetermined threshold is a Euclidean distance ΔE of 2.0. (Item 8) 8. The information processing device according to item 6 or 7, wherein the first color and the second color are colors expressed in any one of the color spaces CIE-L*a*b*, RGB, HLS, and HSV. (Item 9) 9. The information processing device according to any one of items 1 to 8, wherein the second color gamut is a color reproduction color gamut for printing by an image forming device. (Item 10) further comprising a grouping means for grouping colors included in the first image according to a hue range; The information processing device described in items 1 to 9, characterized in that the first color information, which is color information of the first image including the first color and the second color, is color information of a hue range grouped by the grouping means. (Item 11) Item 11. The information processing device according to item 10, wherein the fifth color is a color calculated based on the third color, the fourth color, and the color difference between the first color and the second color. (Item 12) Item 12. The information processing device according to item 11, wherein the fifth color is a color obtained by correcting the brightness of the third color based on the color difference between the first color and the second color. (Item 13) The information processing device described in item 12, characterized in that the fifth color is a color whose brightness is the value of the third color obtained by adding the color difference between the first color and the second color to the brightness of the fourth color. (Item 14) The information processing device described in item 11 is characterized in that the fifth color is a color obtained by mapping within the second color gamut a color whose brightness is the value obtained by adding the color difference between the first color and the second color to the brightness of the fourth color. (Item 15) the corrected conversion parameter is a conversion parameter for converting a sixth color, which is included in the first color information and is different from the first color and the second color, into a seventh color defined in the second color gamut, The information processing device described in item 11, characterized in that the seventh color is a color calculated based on the fifth color, the third color, and an eighth color which is the color obtained when the sixth color is converted by the color conversion process using the conversion parameters before being corrected. (Item 16) Item 12. The information processing device according to item 11, wherein the second color is the most saturated color among the colors included in the first color information. (Item 17) Item 17. The information processing device according to item 16, wherein the first color is the color with the greatest brightness or the color with the least brightness among the colors included in the first color information. (Item 18) a third determination means for determining whether the two colors are recognized as the same color based on a hue range; 18. The information processing device according to any one of items 10 to 17, wherein the grouping means groups colors that are determined to be the same color by the third determination means. (Item 19) Item 19. The information processing device according to item 18, wherein the third determination means recognizes colors within a hue range of 30 degrees to 60 degrees as the same color. (Item 20) 19. The information processing device according to any one of items 1 to 19, further comprising a second correction means for correcting the correction amount of the conversion parameter by the first correction means based on the ratio between the total number of color combinations included in first color information, which is color information of the first image including the first color and the second color, and the number of color combinations included in the first color information, whose color difference after conversion by the color conversion process is smaller than the predetermined threshold. (Item 21) determining whether the first image is a scanned image of a printed image; a step of performing color conversion processing in which, when the first image is an image obtained by scanning the printed image, a first color and a second color defined in a first color gamut included in the first image are converted into a third color and a fourth color defined in a second color gamut different from the first color gamut, respectively; correcting a conversion parameter in the color conversion process so that, when the color difference between the third color and the fourth color is smaller than a predetermined threshold, the color obtained by converting the first color becomes a fifth color different from the third color and whose color difference from the fourth color is larger than the color difference between the third color and the fourth color; An information processing method comprising: (Item 22) A program for causing a computer to function as each means of the information processing device described in any one of items 1 to 20.

[0206] (Other Examples) The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program. It can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.

[0207] The invention is not limited to the above-described embodiments, and various changes and modifications can be made without departing from the spirit and scope of the invention. Accordingly, the following claims are appended to apprise the public of the scope of the invention. [Explanation of symbols]

[0208] 101: Information processing device, 108: Image forming device

Claims

1. a first determination means for determining whether the first image is an image obtained by scanning a printed image; a conversion means for executing color conversion processing to convert a first color and a second color defined in a first color gamut included in the first image into a third color and a fourth color defined in a second color gamut different from the first color gamut, when the first image is an image obtained by scanning the printed image; a first correcting means for correcting a conversion parameter in the color conversion process so that, when the color difference between the third color and the fourth color is smaller than a predetermined threshold value, the color obtained by converting the first color becomes a fifth color different from the third color and whose color difference from the fourth color is larger than the color difference between the third color and the fourth color; An information processing device comprising:

2. a filter processing unit that performs a filter process to average colors included in the first image when the first image is an image obtained by scanning the printed image; 2. The information processing apparatus according to claim 1, wherein the first color and the second color are colors averaged by the filtering means.

3. 3. The information processing apparatus according to claim 2, wherein the first color and the second color are each an average color of colors of adjacent pixels in the first image.

4. 3. The information processing device according to claim 2, wherein the filtering means averages the colors contained in the first image when the first image is a scanned image of the printed image and the first image contains a predetermined threshold number or more of colors outside the second color gamut.

5. a second determination unit that determines whether the first image includes a predetermined threshold number or more of colors outside the second color gamut; 2. The information processing device according to claim 1, characterized in that the conversion means, when it is determined that the first image is an image obtained by scanning the printed image and that the first image contains a predetermined threshold number or more of colors outside the second color gamut, converts the first color and the second color to the third color and the fourth color.

6. The information processing apparatus according to claim 1 , wherein the predetermined threshold value is smaller than a color difference between the first color and the second color.

7. 2. The information processing apparatus according to claim 1, wherein the predetermined threshold value is a Euclidean distance ΔE of 2.

0.

8. 7. The information processing device according to claim 6, wherein the first color and the second color are colors expressed in any one of the color spaces CIE-L*a*b*, RGB, HLS, and HSV.

9. 2. The information processing apparatus according to claim 1, wherein the second color gamut is a color reproduction color gamut for printing by an image forming apparatus.

10. further comprising a grouping means for grouping the colors included in the first image according to a hue range; 2. The information processing device according to claim 1, wherein the first color information, which is color information of the first image including the first color and the second color, is color information of a hue range grouped by the grouping means.

11. 11. The information processing device according to claim 10, wherein the fifth color is a color calculated based on the third color, the fourth color, and a color difference between the first color and the second color.

12. 12. The information processing apparatus according to claim 11, wherein the fifth color is a color obtained by correcting the brightness of the third color based on a color difference between the first color and the second color.

13. 13. The information processing device according to claim 12, wherein the fifth color is a color whose brightness is a value obtained by adding the color difference between the first color and the second color to the brightness of the fourth color.

14. 12. The information processing device according to claim 11, wherein the fifth color is a color obtained by mapping within the second color gamut a color whose brightness is the value obtained by adding the color difference between the first color and the second color to the brightness of the fourth color.

15. the corrected conversion parameter is a conversion parameter that converts a sixth color that is included in the first color information and is different from the first color and the second color into a seventh color that is defined in the second color gamut, 12. The information processing device according to claim 11, wherein the seventh color is a color calculated based on the fifth color, the third color, and an eighth color which is the color obtained when the sixth color is converted by the color conversion process using conversion parameters before the sixth color is corrected.

16. 12. The information processing apparatus according to claim 11, wherein the second color is the color with the highest saturation among the colors included in the first color information.

17. 17. The information processing apparatus according to claim 16, wherein the first color is the color with the greatest brightness or the color with the least brightness among the colors included in the first color information.

18. a third determination means for determining whether the two colors are recognized as the same color based on the hue range; 11. The information processing apparatus according to claim 10, wherein said grouping means groups colors that are determined to be the same color by said third determination means.

19. 19. The information processing apparatus according to claim 18, wherein said third determining means recognizes colors within a hue range of 30 degrees to 60 degrees as the same color.

20. 2. The information processing device according to claim 1, further comprising: a second correction means for correcting the amount of correction of the conversion parameters by the first correction means based on a ratio between the total number of color combinations included in first color information, which is color information of the first image including the first color and the second color, and the number of color combinations included in the first color information, whose color difference after conversion by the color conversion process is smaller than the predetermined threshold value.

21. determining whether the first image is a scanned image of a printed image; a step of performing color conversion processing in which, when the first image is an image obtained by scanning the printed image, a first color and a second color defined in a first color gamut included in the first image are converted into a third color and a fourth color defined in a second color gamut different from the first color gamut, respectively; correcting a conversion parameter in the color conversion process so that, when the color difference between the third color and the fourth color is smaller than a predetermined threshold, the color obtained by converting the first color becomes a fifth color different from the third color and whose color difference from the fourth color is larger than the color difference between the third color and the fourth color; An information processing method comprising:

22. A program for causing a computer to function as each of the means of the information processing device according to any one of claims 1 to 20.

Citation Information

Patent Citations

  • Color picture converter

    JP1995203234A

  • Profile adjustment method, profile adjustment device, profile adjustment program, color conversion method, color conversion device, and color conversion program

    JP2020027948A